@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700;800;900");

:root {
  --primary-color: #33a850;
  --white: #fff;
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, div
pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q,
s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li,
figure, header, nav, section, article, aside, footer, figcaption {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
}

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

.clearfix {
  display: inline-block;
}

html[xmlns] .clearfix {
  display: block;
}

* html .clearfix {
  height: 1%;
}

ul, li {
  padding: 0;
  margin: 0;
  list-style: none;
}

header, nav, section, article, aside, footer, hgroup {
  display: block;
}

* {
  box-sizing: border-box;
}

html, body {
  font-family: 'Poppins', sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a {
  text-decoration: none !important;
}

h1, h2, h3, h4, h5, h6 {
  color: #1e1e1e;
  margin-top: 0px;
  margin-bottom: 0px;
  font-weight: 700;
}

ul {
  margin-bottom: 0px;
}

p {
  font-size: 14px;
  line-height: 28px;
  color: #4a4a4a;
}

img {
  width: 100%;
  overflow: hidden;
}

/* 
---------------------------------------------
Global Styles
--------------------------------------------- 
*/
html,
body {
  font-family: 'Poppins', sans-serif;
}

::selection {
  background: #0071f8;
  color: var(--white);
}

::-moz-selection {
  background: #0071f8;
  color: var(--white);
}

.section {
  margin-top: 120px;
}

.section-heading {
  margin-bottom: 70px;
}

.section-heading h2 {
  font-size: 40px;
  font-weight: 700;
  text-transform: capitalize;
  margin-top: 20px;
  line-height: 56px;
}

.section-heading h2 em {
  font-style: normal;
  color: #0071f8;
}

.section-heading h6 {
  color: #ee626b;
  font-size: clamp(11px, 5vw, 15px);
  text-transform: uppercase;
  font-weight: 700;
}

.icon-button a {
  display: inline-block;
  background-color: #1e1e1e;
  color: #fff;
  font-size: clamp(10px, 5vw, 14px);
  font-weight: 400;
  height: 50px;
  line-height: 50px;
  padding: 0px 30px 0px 0px;
  border-radius: 25px;
  transition: all .3s;
}

.icon-button a i {
  background-color: var(--primary-color);
  height: 50px;
  width: 50px;
  text-align: center;
  border-radius: 50%;
  line-height: 50px;
  display: inline-block;
  margin-right: 15px;
  margin-left: -1px;
}

.icon-button a:hover {
  color: var(--primary-color);
}

.icon-button a:hover i {
  color: #fff;
}

.main-button a {
  display: inline-block;
  background-color: #1e1e1e;
  color: #fff;
  font-size: clamp(10px, 5vw, 14px);
  font-weight: 500;
  height: 40px;
  line-height: 40px;
  padding: 0px 30px;
  border-radius: 25px;
  transition: all .3s;
}

.main-button a:hover {
  background-color: var(--primary-color);
  color: #fff;
}


/* 
---------------------------------------------
Header Style
--------------------------------------------- 
*/
.navbar .logo h1 {
  font-size: clamp(24px, 5vw, 28px);
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 2px;
  display: inline-block;
  white-space: nowrap;
}

.navbar .logo span {
  color: var(--primary-color);
}

.navbar ul.navbar-nav {
  flex-basis: 100%;
  justify-content: right;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  position: relative;
  z-index: 999;
}

.navbar-nav li {
  padding-left: 10px;
  padding-right: 10px;
}

.navbar .navbar-nav li a {
  display: block;
  padding-left: 20px;
  padding-right: 20px;
  font-weight: 500;
  font-size: clamp(11px, 5vw, 15px);
  line-height: 40px;
  text-transform: capitalize;
  color: #1e1e1e;
  -webkit-transition: all 0.4s ease 0s;
  -moz-transition: all 0.4s ease 0s;
  -o-transition: all 0.4s ease 0s;
  transition: all 0.4s ease 0s;
  border: transparent;
  letter-spacing: .25px;
}

.navbar .navbar-nav li:hover a {
  color: var(--primary-color);
}

.navbar .navbar-nav li a.active {
  color: var(--primary-color);
}

.shadow-bottom {
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.telephone {
  position: relative;
  display: inline-flex;
  align-items: center;
}

/* Círculo verde do ícone */
.icon-circle {
  position: relative;
  z-index: 2;                /* fica à frente */
  background-color: var(--primary-color);
  color: #fff;
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  font-size: 1rem;
  transition: background-color 0.2s ease, transform 0.2s ease;
}

/* Faixa preta atrás do ícone */
.number-bg {
  position: relative;
  z-index: 1;                /* fica por trás */
  background-color: #1e1e1e;
  color: #fff;
  padding: 8px 12px 8px 35px;
  border-radius: 999px;
  margin-left: -35px;
  transition: background-color 0.2s ease;
}

.telephone:hover .icon-circle {
  background-color: #1aa33a; /* verde mais claro */
  transform: scale(1.05);    /* ligeiro aumento */
}

.telephone:hover .number-bg {
  background-color: #222;
  color: var(--primary-color);
}

.nav-link.telephone {
  white-space: nowrap;
  display: inline-flex; /* mantém ícone e número alinhados */
  align-items: center;  /* centra verticalmente o ícone e o número */
  gap: 0.5rem;          /* espaçamento entre ícone e número */
}


/* Esconde no desktop */
.phone-float {
  display: none;
}



/* 
---------------------------------------------
Banner Style
--------------------------------------------- 
*/

.main-banner .item {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

  /* Altura responsiva controlada */
  min-height: clamp(400px, 60vh, 900px);

  /* Padding vertical e horizontal adaptável */
  padding-top: clamp(120px, 20vh, 260px);
  padding-bottom: clamp(400px, 25vh, 350px);
  padding-left: clamp(5%, 10vw, 20%);
  padding-right: clamp(5%, 10vw, 20%);

  margin-top: 0;
}

.main-banner .item-1 {
  position: relative;
  background: url(../images/banner-1.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
}

.main-banner .item-1::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.155) 100%;
  z-index: 1; /* fica acima da imagem */
}

.main-banner .item-1 > * {
  position: relative;
  z-index: 2; /* garante que o texto fique acima da sombra */
}



.main-banner .item span.category {
  background-color: #fff;
  color: #1e1e1e;
  font-size: clamp(12px, 5vw, 16px);
  font-weight: 500;
  text-transform: capitalize;
  padding: 6px 15px;
  display: inline-block;
  margin-bottom: 30px;
}

.main-banner .item span.category em {
  font-style: normal;
}

.main-banner .item h2 {
  font-size: 62px;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 72px;
  width: 55%;
  margin-bottom: 0px;
  color: #fff;
  -webkit-text-stroke: 1px #ffffff;
}


/* 
---------------------------------------------
Featured Style
--------------------------------------------- 
*/

.featured .left-image {
  position: relative;
}

.featured .left-image img {
  padding-left: 55px;
}

.featured .left-image a {
  display: inline-block;
  width: 100px;
  height: 100px;
  line-height: 100px;
  background-color: var(--primary-color);
  border-radius: 50%;
  text-align: center;
  position: absolute;
  left: 0;
  bottom: -55px;
}

.featured .section-heading {
  margin-left: 10px;
  margin-right: 10px;
  margin-bottom: 60px;
}

.featured .section-heading h2 {
  width: 70%;
}

.featured .accordion {
  margin-left: 10px;
  margin-right: 10px;
  --bs-accordion-border-radius: 10px;
  --bs-accordion-inner-border-radius: 10px;
  --bs-accordion-bg: #fafafa;
  --bs-accordion-border-color: none;
  border: none !important;
}

.featured .accordion-header {
  border-bottom: 1px solid #eaeaea;
}

.featured .accordion-button {
  box-shadow: none;
  font-size: clamp(13px, 5vw, 17px);
  font-weight: 500;
  color: #1e1e1e;
}

.featured .accordion-button:not(.collapsed) {
  color: var(--primary-color);
  background-color: #fafafa;
  outline: none;
}

.featured .accordion-button::after {
  display: none;
}

.featured #headingThree {
  border-bottom: none;
}

.featured .accordion-item:last-of-type .accordion-collapse {
  border-top: 1px solid #eaeaea;
}

.featured .info-table {
  border-radius: 10px;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
  padding: 35px 30px;
}

.featured .info-table ul li {
  display: block;
  margin-bottom: 35px;
  padding-bottom: 35px;
  border-bottom: 1px solid #eee;
}

.featured .info-table ul li:last-child {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.featured .info-table ul li img {
  float: left;
  margin-right: 25px;
}

.featured .info-table ul li h4 {
  font-size: 22px;
  font-weight: 600;
}

.featured .info-table ul li h4 span {
  font-size: clamp(11px, 5vw, 15px);
  color: #aaa;
  font-weight: 400;
}

.featured .card {
  background-color: #ffeee9;
  position: relative;
  border-radius: 10px;
  width: 270px;
  padding: 20px 0px;
  display: inline-block;
}




/* 
---------------------------------------------
Video Style
--------------------------------------------- 
*/

.video {
  background-image: url(../images/video-section.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  padding: 100px 0px 250px 0px;
  position: relative;
}

.video-content {
  margin-top: -240px;
}

.video .section-heading h2 {
  color: #fff;
}

.video-content .video-frame {
  position: relative;
  overflow: hidden; /* evita que a imagem ultrapasse os limites */
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
  border-radius: 10px;
}

.video-content .video-frame img {
  width: 100%;         /* preenche toda a largura do container */
  height: 100%;        /* preenche toda a altura */
  object-fit: cover;   /* ajusta a imagem sem distorcer, cortando se necessário */
  border-radius: 10px; /* mantém os cantos arredondados */
  display: block;
}



.video-content .video-frame a {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-26px, -26px);
  width: 52px;
  height: 52px;
  background-color: #fff;
  border-radius: 50%;
  display: inline-block;
  text-align: center;
  line-height: 52px;
  color: var(--primary-color);
  outline: 15px solid rgba(254, 85, 37, 0.5);
  font-size: clamp(14px, 5vw, 18px);
}

/* 
---------------------------------------------
Fun Facts Style
--------------------------------------------- 
*/

.fun-facts {
  text-align: center;
  margin-top: 125px;
}

.fun-facts .counter {
  background-color: #ffeee9;
  position: relative;
  border-radius: 10px;
  width: 270px;
  padding: 20px 0px;
  display: inline-block;
}

.fun-facts .counter h2,
.fun-facts .counter p {
  display: inline-flex;
  vertical-align: middle;
}

.fun-facts .counter p {
  text-align: left;
  font-size: clamp(12px, 5vw, 16px);
  color: #1e1e1e;
  font-weight: 600;
  line-height: 28px;
}

.fun-facts .counter h2 {
  margin-right: 25px;
  font-size: clamp(30px, 5vw, 40px);
  color: var(--primary-color);
}

.fun-facts .counter:after {
  position: absolute;
  width: 50px;
  height: 50px;
  background-color: var(--primary-color);
  border-radius: 50%;
  content: '';
  right: -25px;
  top: -25px;
}


/* 
---------------------------------------------
Best Deal Style
--------------------------------------------- 
*/

.projects {
  background-color: #fafafa;
  padding: 100px 0px;
}

.projects .tab-content img {
  padding: 0px 45px;
  width: 100%;          /* ocupa toda a largura do container */
  height: auto;         /* mantém proporção original */
  max-height: 60vh;     /* não ultrapassa metade da altura da viewport */
  object-fit: cover;
}

.projects .tabs-content .nav-link {
  font-size: 16px;
  font-weight: 500;
  background-color: #1e1e1e !important;
  border-radius: 5px;
  height: 50px;
  line-height: 50px;
  display: inline-block;
  padding: 0px 25px;
  color: #fff;
}

.projects .tabs-content .nav-tabs .nav-link.active {
  background-color: var(--primary-color) !important;
  color: #fff;
}

.projects .tabs-content ul.nav-tabs {
  border-bottom: none !important;
  margin-bottom: 80px;
  align-items: end;
  justify-content: end;
  margin-top: -130px;
}

.projects .tabs-content ul.nav-tabs li {
  padding-right: 0px;
  border-right: none;
  margin-left: 20px;
}

.projects .info-table {
  border-radius: 10px;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
  padding: 35px 30px;
}

.projects .info-table ul li {
  display: block;
  margin-bottom: 24px;
  padding-bottom: 24px;
  border-bottom: 1px solid #eee;
  text-align: left;
  font-size: clamp(12px, 5vw, 16px);
  color: #aaa;
  font-weight: 400;
}

.projects .info-table ul li:last-child {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.projects .info-table ul li span {
  font-size: 20px;
  color: #1e1e1e;
  font-weight: 700;
  float: right;
  display: inline-block;
}

.projects .tabs-content {
  padding: 0px;
  background-color: transparent;
}

.projects .tabs-content h4 {
  font-size: clamp(13px, 5vw, 17px);
  font-weight: 600;
  margin-bottom: 30px;
}

.projects .icon-button {
  margin-top: 30px;
}


/* 
---------------------------------------------
testimonials Style
--------------------------------------------- 
*/

.testimonials .item {
  background-color: #fafafa;
  border-radius: 10px;
  padding: 30px;
  margin-bottom: 30px;
}

.testimonials .item video {
  display: block;
  width: 100%;      /* ocupa toda a largura do item */
  height: auto;     /* mantém proporção */
  border-radius: 10px;
}

.testimonials .item span.category {
  background-color: #fbd9cf;
  font-weight: 500;
  border-radius: 5px;
  font-size: clamp(10px, 5vw, 14px);
  color: #1e1e1e;
  padding: 5px 12px;
  display: inline-block;
  margin-top: 25px;
}

.testimonials .item h4 {
  font-size: 16px;
  margin: 25px 0px;
}

.testimonials .item h4 {
  color: #1e1e1e;
  font-weight: 500;
}

.testimonials .item h6 {
  font-size: 18px;
  color: var(--primary-color);
  margin-top: 6px;
  display: inline-block;
  float: right;
  margin-top: 30px;
}

.testimonials .item .main-button {
  text-align: center;
}


/* 
---------------------------------------------
Contact Style
--------------------------------------------- 
*/

.contact {
  background-image: url(../images/contact.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  padding: 100px 0px 250px 0px;
  position: relative;
}

.contact .section-heading h2 {
  color: #fff;
}

.contact-content {
  margin-top: -240px;
  position: relative;
  z-index: 1;
}

.contact-content #map {
  border-radius: 10px;
  margin-bottom: 60px;
}

.contact-content .item {
  border-radius: 10px;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
  padding: 35px 30px;
  background-color: #fff;
}

.contact-content .phone {
  margin-right: 15px;
}

.contact-content .email {
  margin-left: 15px;
}

.contact-content .item h6 {
  font-size: 20px;
  font-weight: 600;
  vertical-align: middle;
}

.contact-content .item h6 span {
  font-size: clamp(11px, 5vw, 15px);
  color: #aaaaaa;
  font-weight: 400;
}



/* 
---------------------------------------------
Footer Style
--------------------------------------------- 
*/

footer.footer-no-gap {
  margin-top: 0px;
}

footer {
  margin-top: 150px;
  background-color: #cfcfcf;
  min-height: 100px;
}

footer .logo-responsive {
  width: 70%;
}

footer ul li {
  display: inline-block;
}

footer ul.social-links {
  display: flex;        
  justify-content: end; 
  align-items: end;     
  gap: 2px;               
  list-style: none;        
  padding: 0;              
  margin: 0;               
}

footer ul.social-links li {
  margin-left: 8px;
}

footer ul.social-links li a {
  display: inline-block;
  width: 30px;
  height: 30px;
  background-color: #979797;
  border-radius: 50%;
  text-align: center;
  line-height: 30px;
  color: #fff;
  font-size: 14px;
  transition: all .3s;
}

footer ul.social-links li a:hover {
  background-color: var(--primary-color);
}


footer p {
  text-align: center;
  line-height: 100px;
  color: #fff;
  font-size: 16px;
  font-weight: 400;
}



/* 
---------------------------------------------
Page Header Style
--------------------------------------------- 
*/

.page-heading {
  background-image: url(../images/iontherm-setup.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  text-align: center;
  padding: 210px 0px;
}

.page-heading span {
  background-color: #fff;
  color: #1e1e1e;
  font-size: clamp(10px, 5vw, 14px);
  font-weight: 500;
  text-transform: uppercase;
  padding: 10px 25px;
  display: inline-block;
  margin-bottom: 30px;
}

.page-heading span a {
  color: #1e1e1e;
}

.page-heading h3 {
  font-size: 48px;
  font-weight: 900;
  text-transform: uppercase;
  color: #ffffff;
}



.page-ionthermbox {
  background-image: url(../images/ionthermbox-setup.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  text-align: center;
  padding: 210px 0px;
}

.page-ionthermbox span {
  background-color: #fff;
  color: #1e1e1e;
  font-size: clamp(10px, 5vw, 14px);
  font-weight: 500;
  text-transform: uppercase;
  padding: 10px 25px;
  display: inline-block;
  margin-bottom: 30px;
}

.page-ionthermbox span a {
  color: #1e1e1e;
}

.page-ionthermbox h3 {
  font-size: clamp(40px, 5vw, 48px);
  font-weight: 900;
  text-transform: uppercase;
  color: #ffffff;
}




/* 
---------------------------------------------
Single Page Style
--------------------------------------------- 
*/

.description-pompe .main-image img {
  max-width: 400px; 
  width: 100%;       
  height: auto;      
  display: block;    
  margin: 0 auto;    
}



.description-pompe .main-content h4 {
  font-size: clamp(21px, 5vw, 25px);
  margin-top: 25px;
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid #eee;
}

.description-pompe .main-content span.category {
  background-color: #fbd9cf;
  font-weight: 500;
  border-radius: 5px;
  font-size: clamp(10px, 5vw, 14px);
  color: #1e1e1e;
  padding: 5px 12px;
  display: inline-block;
  margin-top: 40px;
}

.description-pompe .accordion {
  margin-top: 60px;
  margin-left: 0px;
  margin-right: 0px;
  --bs-accordion-border-radius: 10px;
  --bs-accordion-inner-border-radius: 10px;
  --bs-accordion-bg: #fafafa;
  --bs-accordion-border-color: none;
  border: none !important;
}

.description-pompe .accordion-header {
  border-bottom: 1px solid #eaeaea;
}

.description-pompe .accordion-button {
  box-shadow: none;
  font-size: clamp(13px, 5vw, 17px);
  font-weight: 500;
  color: #1e1e1e;
}

.description-pompe .accordion-button:not(.collapsed) {
  color: var(--primary-color);
  background-color: #fafafa;
  outline: none;
}

.description-pompe .accordion-button::after {
  display: none;
}

.description-pompe #headingThree {
  border-bottom: none;
}

.description-pompe .accordion-item:last-of-type .accordion-collapse {
  border-top: 1px solid #eaeaea;
}

.description-pompe .info-table {
  border-radius: 10px;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
  padding: 35px 30px;
  margin-left: 60px;
}

.description-pompe .info-table ul li {
  display: block;
  margin-bottom: 35px;
  padding-bottom: 35px;
  border-bottom: 1px solid #eee;
}

.description-pompe .info-table ul li:last-child {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.description-pompe .info-table ul li img {
  float: left;
  margin-right: 25px;
}

.description-pompe .info-table ul li h4 {
  font-size: 22px;
  font-weight: 600;
}

.description-pompe .info-table ul li h4 span {
  font-size: 15px;
  color: #aaa;
  font-weight: 400;
}


.description-pompe .icons {
  display: inline-block;       
  max-width: 100%;             
  width: auto;                
}

.description-pompe .icons img {
  display: block;              
  max-width: 32px;             
  width: 100%;                 
  height: auto;               
  margin-top: 10px;
}


.description-pompe .accordion-body img {
  display: block;              
  max-width: 90px;             
  width: 100%;                 
  height: auto;               
  margin-top: 10px;
}



/* 
---------------------------------------------
Responsive Style
--------------------------------------------- 
*/

body {
  overflow-x: hidden;
}

@media (max-width: 480px) {
  .main-banner .item h2 {
    font-size: 50px;
  }

  .icons img {
    max-width: 25px;          
  }

  .section-heading h2 {
    font-size: 25px;
  }
}

@media (max-width: 768px) {
  .main-banner .item {
    height: 40vh;
  }
  .main-banner .item h2 {
    width: 100%;
  }

  .section-heading h2 {
    font-size: 30px;
  }

  .featured .left-image a {
    width: 80px;
    height: 80px;
    line-height: 80px;
  }
  .featured .info-table ul li img {
    max-width: 40px!important;
  }
  .featured .info-table ul li h4 {
    font-size: 15px;
  }

  .projects .tabs-content .nav-link {
    padding: 0px 15px;
    height: 44px;
    line-height: 44px;
    font-size: 12px;
  }
  .projects .tabs-content ul.nav-tabs li {
    margin: 0px 5px;
  }
  .projects .info-table ul li span {
    font-size: 15px;
  }
  .projects .info-table ul li {
    font-size: 14px;
  }
  .testimonials .item h6 {
    font-size: 15px;
  }
  .testimonials .item h4 {
    font-size: 14px;
  }
  
  .testimonials ul.testimonials-filter li a {
    padding: 10px 15px;
  }
  .testimonials ul.testimonials-filter li {
    margin: 5px;
  }
  
  footer .logo-responsive {
    max-width: 35%;       /* imagem menor */
    display: block;       /* necessário para centralizar */
    margin: 20px auto;    /* 20px em cima e embaixo, centraliza horizontalmente */
  }
  footer ul.social-links {
    justify-content: center; /* centraliza horizontalmente */
    align-items: center;  
  }
  footer p {
    font-size: 12px;
  }

  .contact-content .item h6 {
    font-size: 15px;
  }

  .page-heading {
    padding: 110px 0px;
  }
  .page-heading h3 {
    font-size: 37px;
  }
  .page-ionthermbox h3 {
    font-size: 34px;
  }
  .page-ionthermbox {
    padding: 110px 0px;
  }
  .icons img {
    max-width: 30px;        
  }

  .description-pompe .info-table ul li h4 {
    font-size: 16px;
  }
  .description-pompe .info-table ul li h4 span {
    font-size: 14px;
  }
}

@media (max-width: 991px) {
  /* Esconde o telefone dentro do menu */
  .desktop-phone {
    display: none !important;
  }

  /* Botão flutuante */
  .phone-float {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    top: 72px; /* ajusta conforme a altura da navbar */
    right: 16px;
    width: 46px;
    height: 46px;
    background-color: #2e8b57; /* verde da marca */
    color: #fff;
    border-radius: 50%;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.25);
    font-size: 20px;
    z-index: 9999;
    transition: all 0.3s ease;
  }

  /* Efeito hover */
  .phone-float:hover {
    background-color: #3fa868; /* tom mais claro */
    transform: scale(1.05);
  }

  /* Ícone centrado */
  .phone-float i {
    margin: 0;
  }
}

@media (max-width: 992px) {
  .featured .section-heading {
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 100px;
  }
  .featured .accordion {
    margin-left: 0px;
    margin-right: 0px;
  }
  .featured .info-table {
    margin-top: 45px;
  }

  .fun-facts .counter {
    margin-bottom: 45px;
  }
  .projects .section-heading {
    text-align: center;
  }
  .projects .tabs-content ul.nav-tabs {
    margin-top: 0px;
    justify-content: center;
  }
  .projects .info-table {
    margin-bottom: 45px;
  }
  .projects .tab-content img {
    padding: 0px;
  }
  .projects .tabs-content h4 {
    margin-top: 45px;
  }
  .testimonials .item h6 {
    text-align: center;
    margin-bottom: 15px;
  }
  .testimonials .item .main-button {
    text-align: center;
  }
  .testimonials .item ul li {
    margin-right: 10px;
  }
  .contact-content .phone {
    margin-right: 0px;
    margin-bottom: 20px;
  }
  .contact-content .email {
    margin-left: 0px;
    margin-bottom: 45px;
  }
  .contact-content #contact-form {
    margin-left: 0px;
  }
  .description-pompe .info-table {
    margin-left: 0px;
    margin-top: 45px;
  }
  .contact-page .section-heading {
    margin-right: 0px !important;
  }
  .projects .info-table ul li span {
    float: right !important;
    width: auto !important;
  }

  footer .logo-responsive {
    max-width: 33%;
    margin: 25px auto;     
  }
}



@media (max-width: 1200px) {
  .icon-circle {
    width: 35px;
    height: 35px;
    font-size: 0.8rem;
  }

  /* Faixa preta atrás do ícone */
  .number-bg {         
    padding: 8px 12px 8px 35px;
    border-radius: 999px;
    font-size: 12px;
  }
  .projects .info-table ul li span {
    float: none;
    width: 100%;
  }
  .contact-page .section-heading {
    margin-right: 100px;
  }
}