/* =========================================================
   TOKENS DE DESIGN
   ========================================================= */
:root {
  --brand-green: #2CD24A;
  --brand-green-d: #22a93b;
  --brand-yellow: #FFBE00;
  --brand-black: #000000;
  --brand-dark: #1E1D1C;
  --text: #5C5C5C;
  --text-dark: #222;
  --bg-soft: #F7F7F7;
  --bg-blue: #E0F0F7;
  --link-blue: #1E73BE;
  --overlay-dark: rgba(0, 0, 0, .6);
  --font-body: 'Barlow', sans-serif;
  --font-head: 'Montserrat', sans-serif;
  --radius: 4px;
  --maxw: 1170px;
  /* breakpoints (Geologix/Buildcon Pro):
     480 xs · 767 mobile · 990 tablet · 1168 desktop XL */
}

/* RESET */
*,*::before,*::after{box-sizing:border-box}
html{font-size:16px;scroll-behavior:smooth}
body{margin:0;font-family:var(--font-body);font-size:15px;line-height:1.6;color:var(--text);background:#fff}
img{max-width:100%;display:block}
a{color:var(--link-blue);text-decoration:none}
a:hover{opacity:.85}
h1,h2,h3,h5,h6{font-family:var(--font-head);color:var(--text-dark);margin:0 0 16px}
h1{font-size:48px;line-height:1.1;font-weight:800;text-transform:uppercase;letter-spacing:1px}
h2{font-size:34px;line-height:40px;font-weight:700;text-transform:uppercase}
h3{font-size:22px;font-weight:600}
h4{font-family:var(--font-body);font-size:18px;line-height:30px;font-weight:600;text-transform:uppercase;color:var(--brand-green);letter-spacing:1px;margin:0 0 8px}
p{margin:0 0 14px}
.container{max-width:var(--maxw);margin:0 auto;padding:0 20px}

/* BOTÕES */
.btn{display:inline-block;padding:14px 30px;font-family:var(--font-head);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:1px;border:2px solid transparent;border-radius:var(--radius);cursor:pointer;transition:all .25s ease}
.btn-primary{background:var(--brand-green);color:#fff;border-color:var(--brand-green)}
.btn-primary:hover{background:var(--brand-green-d);border-color:var(--brand-green-d);opacity:1}
.btn-outline{background:transparent;color:#fff;border-color:#fff}
.btn-outline:hover{background:#fff;color:var(--brand-dark)}

/* TOP BAR */
.topbar{background:var(--brand-yellow);color:var(--brand-black);font-family:var(--font-head);font-size:13px;font-weight:500}
.topbar .container{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;flex-wrap:wrap;gap:10px}
.topbar a{color:var(--brand-black)}
.topbar-info span{margin-right:18px}
.topbar-info i{margin-right:6px;color:var(--brand-black)}
.topbar-social a{margin-left:12px;font-size:15px}

/* HEADER */
.site-header{background:#fff;border-bottom:1px solid #eee;position:sticky;top:0;z-index:50}
.site-header .container{display:flex;align-items:center;justify-content:space-between;padding:18px 20px}
.logo{display:flex;align-items:center;gap:14px;font-family:var(--font-head)}
.logo-mark{width:54px;height:54px;background:var(--brand-green);display:flex;align-items:center;justify-content:center;border-radius:8px;color:#fff;font-weight:800;font-size:30px;font-family:var(--font-head)}
.logo-img{height:130px;width:auto;display:block}
.site-header .logo-img{height:63px}
.site-footer .logo-img{height:74px;filter:brightness(1.05)}
.logo-text{line-height:1.1;display:flex;flex-direction:column}
.logo-text strong{font-family:var(--font-head);font-size:19px;font-weight:700;color:var(--brand-green);text-transform:lowercase;letter-spacing:.5px}
.logo-text small{font-family:var(--font-head);font-size:11px;font-weight:600;color:var(--brand-yellow);letter-spacing:2.5px;text-transform:uppercase;margin-top:4px}
@media(max-width:990px){.site-header .logo-img{height:47px}.logo-img{height:90px}.logo-text strong{font-size:15px}.logo-text small{font-size:10px;letter-spacing:2px}}
@media(max-width:600px){.logo-text{display:none}}
@media(max-width:480px){.site-header .logo-img{height:37px}.logo-img{height:70px}}
.main-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:28px}
.main-nav a{font-family:var(--font-head);color:var(--text-dark);font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:.5px;position:relative;padding:6px 0}
.main-nav a:hover{color:var(--brand-green)}
.main-nav a.active::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--brand-green)}
.nav-toggle{display:none;background:none;border:0;color:var(--text-dark);font-size:22px;cursor:pointer}

/* HERO */
.hero{position:relative;min-height:560px;display:flex;align-items:center;justify-content:center;color:#fff;text-align:center;overflow:hidden}
.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1s ease}
.hero-slide.active{opacity:1}
.hero-slide::after{content:"";position:absolute;inset:0;background:var(--overlay-dark)}
.slide-1{background-image:url('https://images.unsplash.com/photo-1518709268805-4e9042af2176?w=1600')}
.slide-2{background-image:url('https://images.unsplash.com/photo-1503387762-592deb58ef4e?w=1600')}
.slide-3{background-image:url('https://images.unsplash.com/photo-1473773508845-188df298d2d1?w=1600')}
.hero-content{position:relative;z-index:2;max-width:780px;padding:60px 20px}
.hero-content h1{color:#fff;margin-bottom:18px}
.hero-content p.lead{font-size:18px;color:#fff;margin-bottom:28px}
.hero-arrows{position:absolute;top:50%;transform:translateY(-50%);width:100%;display:flex;justify-content:space-between;padding:0 20px;z-index:3}
.hero-arrows button{width:46px;height:46px;border-radius:50%;border:2px solid #fff;background:transparent;color:#fff;font-size:18px;cursor:pointer;transition:all .25s}
.hero-arrows button:hover{background:var(--brand-green);border-color:var(--brand-green)}

/* CAROUSEL (in-content, smaller than hero) */
.carousel{position:relative;width:100%;aspect-ratio:16/10;overflow:hidden;border-radius:var(--radius);margin-bottom:28px;background:#000}
.carousel-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .8s ease}
.carousel-slide.active{opacity:1}
.carousel-arrows{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);display:flex;justify-content:space-between;padding:0 14px;z-index:3;pointer-events:none}
.carousel-arrows button{pointer-events:auto;width:42px;height:42px;border-radius:50%;border:2px solid #fff;background:rgba(0,0,0,.35);color:#fff;font-size:14px;cursor:pointer;transition:all .25s;display:flex;align-items:center;justify-content:center}
.carousel-arrows button:hover{background:var(--brand-green);border-color:var(--brand-green)}
.carousel-dots{position:absolute;bottom:14px;left:0;right:0;display:flex;justify-content:center;gap:8px;z-index:3}
.carousel-dots button{width:10px;height:10px;border-radius:50%;border:0;background:rgba(255,255,255,.5);cursor:pointer;padding:0;transition:all .25s}
.carousel-dots button.active{background:var(--brand-green);width:26px;border-radius:5px}

/* BEFORE / AFTER SLIDER */
.ba-slider{position:relative;width:100%;max-width:1100px;margin:0 auto;aspect-ratio:16/9;overflow:hidden;border-radius:var(--radius);user-select:none;box-shadow:0 10px 30px rgba(0,0,0,.12);background:#000;--pos:50%}
.ba-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.ba-before-wrap{position:absolute;inset:0;width:100%;height:100%;clip-path:inset(0 calc(100% - var(--pos)) 0 0);will-change:clip-path}
.ba-handle{position:absolute;top:0;bottom:0;left:var(--pos);transform:translateX(-50%);width:4px;background:#fff;cursor:ew-resize;z-index:3;box-shadow:0 0 0 1px rgba(0,0,0,.15)}
.ba-handle::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;background:var(--brand-green);box-shadow:0 4px 14px rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center}
.ba-handle::after{content:"\f0dc";font-family:"Font Awesome 6 Free";font-weight:900;color:#fff;font-size:14px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(90deg);z-index:1}
.ba-label{position:absolute;top:18px;padding:6px 14px;background:rgba(0,0,0,.65);color:#fff;font-family:var(--font-head);font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:700;border-radius:var(--radius);pointer-events:none;z-index:2}
.ba-label.before{left:18px}
.ba-label.after{right:18px}
/* mobile: alça e labels menores */
@media(max-width:600px){
  .ba-slider{aspect-ratio:4/3}
  .ba-handle{width:3px}
  .ba-handle::before{width:36px;height:36px}
  .ba-handle::after{font-size:12px}
  .ba-label{top:10px;padding:4px 10px;font-size:9.5px;letter-spacing:1.5px}
  .ba-label.before{left:10px}
  .ba-label.after{right:10px}
}

/* SEÇÕES */
.section{padding:90px 0}
.section--soft{background:var(--bg-soft)}
.section--dark{background:var(--brand-dark);color:#fff}
.section--dark h2,.section--dark h3{color:#fff}
.section-head{text-align:center;margin-bottom:50px}
.section-head h4{justify-content:center}
.section-head h2{margin-bottom:14px}
.section-head p{max-width:680px;margin:0 auto;color:var(--text)}
.section--dark .section-head p{color:#ccc}

/* SPLIT */
.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.split img{border-radius:var(--radius)}

/* SERVIÇOS HOME */
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.service-card{position:relative;overflow:hidden;border-radius:var(--radius);min-height:280px;background-size:cover;background-position:center;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;transition:transform .3s}
.service-card::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.2) 0%,rgba(0,0,0,.85) 100%)}
.service-card>*{position:relative;z-index:2}
.service-card:hover{transform:translateY(-4px)}
.service-card h3{color:#fff;text-transform:uppercase;margin-bottom:6px;font-size:20px}
.service-card a.read-more{color:var(--brand-green);font-weight:700;font-family:var(--font-head);font-size:12px;letter-spacing:1px;text-transform:uppercase}
.service-card a.read-more i{margin-left:6px}
.svc-1{background-image:url('https://images.unsplash.com/photo-1581094794329-c8112a89af12?w=900')}
.svc-2{background-image:url('https://images.unsplash.com/photo-1500382017468-9049fed747ef?w=900')}
.svc-3{background-image:url('https://images.unsplash.com/photo-1547235001-d703406d3346?w=900')}
.svc-4{background-image:url('https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?w=900')}
.svc-5{background-image:url('https://images.unsplash.com/photo-1486325212027-8081e485255e?w=900')}
.svc-6{background-image:url('https://images.unsplash.com/photo-1581093588401-fbb62a02f120?w=900')}

/* CONTADORES */
.counters{background:linear-gradient(rgba(0,0,0,.75),rgba(0,0,0,.75)),url('https://images.unsplash.com/photo-1503387762-592deb58ef4e?w=1600') center/cover;color:#fff;padding:80px 0}
.counter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}
.counter-item .num{font-family:var(--font-head);font-size:46px;font-weight:800;color:var(--brand-green);display:block;margin-bottom:6px}
.counter-item .label{font-family:var(--font-head);text-transform:uppercase;letter-spacing:1px;font-size:13px;color:#fff}

/* EQUIPE */
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.team-card{text-align:center}
.team-card img{width:160px;height:160px;border-radius:50%;object-fit:cover;margin:0 auto 16px;border:4px solid var(--brand-green)}
.team-card h3{font-size:18px;margin-bottom:4px}
.team-card .role{color:var(--brand-green);font-family:var(--font-head);font-size:12px;text-transform:uppercase;letter-spacing:1px}

/* DEPOIMENTOS */
.testimonial{max-width:780px;margin:0 auto;text-align:center;padding:40px;background:#fff;border-radius:var(--radius);box-shadow:0 10px 30px rgba(0,0,0,.08)}
.testimonial i.fa-quote-left{color:var(--brand-green);font-size:34px;margin-bottom:18px}
.testimonial p{font-size:18px;font-style:italic;color:var(--text-dark)}
.testimonial .author{display:block;margin-top:18px;font-weight:700;font-family:var(--font-head);color:var(--brand-green);text-transform:uppercase;letter-spacing:1px;font-size:13px}

/* NOTÍCIAS */
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.news-card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:0 4px 14px rgba(0,0,0,.06)}
.news-card .thumb{height:200px;background-size:cover;background-position:center}
.news-card .body{padding:22px}
.news-card .date{color:var(--brand-green);font-family:var(--font-head);font-size:12px;text-transform:uppercase;letter-spacing:1px;font-weight:700;margin-bottom:8px;display:block}
.news-card h3{font-size:18px;margin-bottom:10px}
.news-card a.read-more{color:var(--brand-green);font-weight:700;font-family:var(--font-head);font-size:12px;letter-spacing:1px;text-transform:uppercase}

/* CTA */
.cta{background:var(--brand-green);color:#fff;text-align:center;padding:60px 0}
.cta h2{color:#fff;margin-bottom:18px}
.cta .btn-outline{border-color:#fff}

/* FOOTER */
.site-footer{background:var(--brand-dark);color:#bbb;padding:70px 0 0}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;margin-bottom:50px}
.site-footer h5{color:#fff;font-family:var(--font-head);font-size:14px;text-transform:uppercase;letter-spacing:1px;margin-bottom:18px;font-weight:700}
.site-footer ul{list-style:none;margin:0;padding:0}
.site-footer ul li{margin-bottom:8px}
.site-footer ul li a{color:#bbb;font-size:14px}
.site-footer ul li a:hover{color:var(--brand-green)}
.footer-bottom{border-top:1px solid #333;padding:20px 0;display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#888}
.footer-bottom .social a{color:#bbb;margin-left:14px;font-size:16px}
.footer-bottom .social a:hover{color:var(--brand-green)}

/* RESPONSIVO — breakpoints Geologix (990 tablet, 767 mobile, 480 xs) */
@media (max-width:990px){
  h1{font-size:34px}
  h2{font-size:26px;line-height:32px}
  .split,.services-grid,.team-grid,.news-grid,.counter-grid,.footer-grid{grid-template-columns:1fr 1fr;gap:24px}
  .main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-top:1px solid #eee;padding:18px 20px}
  .main-nav.open{display:block}
  .main-nav ul{flex-direction:column;gap:14px}
  .nav-toggle{display:block}
}
@media (max-width:767px){
  .services-grid,.team-grid,.news-grid,.counter-grid,.footer-grid,.split{grid-template-columns:1fr}
  .topbar{font-size:11px}
  .topbar .container{justify-content:center;text-align:center;padding:8px 14px;gap:6px}
  .topbar-info{display:flex;flex-direction:column;align-items:center;gap:2px;line-height:1.4}
  .topbar-info span{margin-right:0;display:block}
  .topbar-info i{margin-right:5px;font-size:11px}
}
@media (max-width:480px){
  h1{font-size:28px}
  h2{font-size:22px;line-height:28px}
  .section{padding:60px 0}
  .topbar{font-size:10.5px}
  .topbar-info span:nth-child(3){display:none} /* esconde "Seg-Sex: 08:00 - 17:00" em telas muito pequenas */
}

/* ===== ADD-ONS (páginas internas) ===== */

/* PAGE BANNER (hero secundário das páginas internas) */
.page-banner{
  position:relative;
  min-height:300px;
  background:linear-gradient(rgba(0,0,0,.65),rgba(0,0,0,.65)),
             url('https://images.unsplash.com/photo-1503387762-592deb58ef4e?w=1600') center/cover;
  display:flex;align-items:center;justify-content:center;
  color:#fff;text-align:center;
}
.page-banner h1{
  color:#fff;font-size:42px;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;
}
.breadcrumb{
  font-family:var(--font-head);font-size:13px;letter-spacing:1px;
  text-transform:uppercase;color:#ddd;
}
.breadcrumb a{color:var(--brand-green)}
.breadcrumb span{margin:0 8px;color:#888}

/* CARDS DE VALORES (sobre) */
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.value-card{
  background:#fff;padding:34px 26px;border-radius:var(--radius);
  text-align:center;box-shadow:0 6px 20px rgba(0,0,0,.06);
  border-top:4px solid var(--brand-green);
}
.value-card i{font-size:38px;color:var(--brand-green);margin-bottom:14px}
.value-card h3{font-size:18px;margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px}

/* LISTA DE SERVIÇOS DETALHADA */
.service-list{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}
.service-item{
  display:flex;gap:20px;padding:28px;background:#fff;border-radius:var(--radius);
  box-shadow:0 4px 14px rgba(0,0,0,.06);transition:transform .25s;
}
.service-item:hover{transform:translateY(-4px)}
.service-item .icon{
  flex:0 0 64px;height:64px;border-radius:50%;
  background:var(--brand-green);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:24px;
}
.service-item h3{font-size:18px;margin-bottom:8px;text-transform:uppercase}
.service-item p{margin-bottom:10px}
.service-item a{
  color:var(--brand-green);font-family:var(--font-head);font-weight:700;
  font-size:12px;letter-spacing:1px;text-transform:uppercase;
}

/* PÁGINA DE DETALHE DO SERVIÇO */
.detail-grid{display:grid;grid-template-columns:2fr 1fr;gap:40px}
.detail-grid img{border-radius:var(--radius);margin-bottom:24px}
.detail-grid ul.check{list-style:none;padding:0}
.detail-grid ul.check li{
  padding:10px 0 10px 30px;position:relative;border-bottom:1px solid #eee;
}
.detail-grid ul.check li::before{
  content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;
  color:var(--brand-green);position:absolute;left:0;top:10px;
}
.sidebar-box{
  background:var(--bg-soft);padding:26px;border-radius:var(--radius);margin-bottom:20px;
}
.sidebar-box h4{color:var(--brand-green);margin-bottom:14px}
.sidebar-box ul{list-style:none;padding:0;margin:0}
.sidebar-box ul li a{
  display:block;padding:10px 0;border-bottom:1px solid #ddd;color:var(--text-dark);
  font-family:var(--font-head);font-size:13px;text-transform:uppercase;letter-spacing:.5px;
}
.sidebar-box ul li a:hover{color:var(--brand-green)}

/* PAGINAÇÃO */
.pagination{display:flex;justify-content:center;gap:8px;margin-top:40px}
.pagination a{
  padding:10px 16px;border:1px solid #ddd;border-radius:var(--radius);
  font-family:var(--font-head);font-weight:700;font-size:13px;color:var(--text-dark);
}
.pagination a.active,.pagination a:hover{
  background:var(--brand-green);color:#fff;border-color:var(--brand-green);
}

/* ARTIGO INDIVIDUAL */
.article{max-width:820px;margin:0 auto}
.article .meta{
  font-family:var(--font-head);font-size:12px;text-transform:uppercase;
  letter-spacing:1px;color:var(--brand-green);margin-bottom:10px;
}
.article h1{font-size:36px;margin-bottom:20px;line-height:1.2}
.article img.cover{width:100%;border-radius:var(--radius);margin:20px 0 30px}
/* Banner de logos (TAP + Ambientech) - responsivo p/ todas resoluções */
.logo-banner{display:flex;align-items:center;justify-content:center;gap:6%;
  flex-wrap:nowrap;background:#fff;box-sizing:border-box}
.logo-banner img{width:auto;height:auto;max-width:42%;max-height:100%;object-fit:contain}
.logo-banner img.logo-banner__main{max-width:56%}
.article .cover.logo-banner{border-radius:var(--radius);margin:20px 0 30px;
  padding:clamp(20px,4vw,40px) clamp(16px,4vw,40px);border:1px solid var(--bg-soft)}
.article .cover.logo-banner img{max-height:clamp(80px,18vw,170px)}
.article .cover.logo-banner img.logo-banner__main{max-height:clamp(115px,26vw,250px)}
.news-card .thumb.logo-banner{padding:0 18px;gap:8%}
.news-card .thumb.logo-banner img{max-height:130px}
.news-card .thumb.logo-banner img.logo-banner__main{max-height:185px}
/* Selo de patrocinador oficial */
.sponsor-seal{margin:40px auto 0;text-align:center;max-width:212px}
.sponsor-seal img{width:100%;height:auto;border-radius:var(--radius);
  box-shadow:0 10px 30px rgba(0,0,0,.12)}
.sponsor-seal figcaption{margin-top:10px;font-family:var(--font-head);font-size:10px;
  text-transform:uppercase;letter-spacing:.5px;font-weight:700;color:var(--brand-green);
  line-height:1.4}
@media(max-width:480px){
  .news-card .thumb.logo-banner img{max-height:100px}
  .news-card .thumb.logo-banner img.logo-banner__main{max-height:145px}
}
.article p,.article li{font-size:16px;line-height:1.8}
.article blockquote{
  border-left:4px solid var(--brand-green);
  padding:16px 24px;font-style:italic;color:var(--text-dark);
  background:var(--bg-soft);margin:24px 0;
}

/* FORMULÁRIO DE CONTATO */
.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:40px}
.contact-info ul{list-style:none;padding:0;margin:0}
.contact-info li{
  display:flex;gap:14px;align-items:flex-start;
  padding:18px 0;border-bottom:1px solid #eee;
}
.contact-info i{
  flex:0 0 44px;height:44px;border-radius:50%;
  background:var(--brand-green);color:#fff;
  display:flex;align-items:center;justify-content:center;
}
.contact-info strong{display:block;color:var(--text-dark);font-family:var(--font-head)}
.form-group{margin-bottom:18px}
.form-group label{
  display:block;font-family:var(--font-head);font-size:12px;
  text-transform:uppercase;letter-spacing:1px;margin-bottom:6px;color:var(--text-dark);
}
.form-group input,.form-group select,.form-group textarea{
  width:100%;padding:12px 14px;border:1px solid #ddd;border-radius:var(--radius);
  font-family:var(--font-body);font-size:15px;background:#fff;transition:border .2s;
}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{
  outline:none;border-color:var(--brand-green);
}
.map-embed{margin-top:40px;border-radius:var(--radius);overflow:hidden;height:380px;border:1px solid #eee}

@media(max-width:990px){
  .values-grid,.service-list,.detail-grid,.contact-grid{grid-template-columns:1fr}
}

/* =========================================================
   COMPONENTES GEOLOGIX (Buildcon Pro)
   Portados do clone — usar nas páginas Ambientech
   ========================================================= */

/* SECTION HEAD — cabeçalho padrão de seção (título + subtítulo) */
.section_head{text-align:center;margin-bottom:50px}
.section_head .section_subtitle{
  display:inline-block;color:var(--brand-green);font-family:var(--font-head);
  font-size:13px;font-weight:600;letter-spacing:2px;text-transform:uppercase;margin-bottom:14px;
}
.section_head .section_title{
  font-family:var(--font-head);font-size:38px;font-weight:800;line-height:1.15;
  text-transform:uppercase;letter-spacing:1px;color:var(--text-dark);margin:0 0 16px;
}
.section_head .section_text{
  max-width:720px;margin:0 auto;color:var(--text);font-size:16px;line-height:1.7;
}
.section--dark .section_head .section_title{color:#fff}
.section--dark .section_head .section_text{color:#ddd}

/* SEC OVERLAY — seção com bg image + overlay escuro (Geologix `.sec-overlay`) */
.sec-overlay{position:relative;color:#fff;background-size:cover;background-position:center;padding:100px 0}
.sec-overlay::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.55)}
.sec-overlay>*{position:relative;z-index:2}
.sec-overlay h2,.sec-overlay h3,.sec-overlay .section_title{color:#fff}
.sec-overlay .section_text,.sec-overlay p{color:#e8e8e8}

/* GET-QUOTE — barra CTA horizontal entre hero e seções */
.get-quote{
  background:var(--brand-green);color:#fff;padding:28px 0;
}
.get-quote .container{
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;
}
.get-quote h3{
  color:#fff;font-family:var(--font-head);font-size:22px;font-weight:700;
  text-transform:uppercase;letter-spacing:1px;margin:0;
}
.get-quote .quote-cta{
  background:#fff;color:var(--brand-green);padding:14px 30px;
  font-family:var(--font-head);font-weight:700;font-size:13px;
  text-transform:uppercase;letter-spacing:1px;border-radius:var(--radius);
  display:inline-flex;align-items:center;gap:10px;transition:all .25s;
}
.get-quote .quote-cta:hover{background:var(--brand-dark);color:#fff;opacity:1}

/* READ MORE — botão padrão Geologix */
.ReadMore{
  display:inline-flex;align-items:center;gap:8px;
  color:var(--brand-green);font-family:var(--font-head);font-weight:700;
  font-size:13px;letter-spacing:1px;text-transform:uppercase;
  padding:0;margin-top:14px;
}
.ReadMore::after{content:"\f061";font-family:"Font Awesome 6 Free";font-weight:900;font-size:11px}
.ReadMore:hover{color:var(--brand-green-d);gap:14px;opacity:1}

/* SERVICES BOX — card de serviço (.ser-icon + .ser-content) */
.services-row{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.services-box{
  background:#fff;padding:36px 28px;border-radius:var(--radius);
  text-align:center;box-shadow:0 6px 22px rgba(0,0,0,.06);
  transition:transform .3s,box-shadow .3s;
}
.services-box:hover{transform:translateY(-6px);box-shadow:0 12px 30px rgba(0,0,0,.12)}
.services-box .ser-icon{
  width:84px;height:84px;border-radius:50%;
  background:var(--brand-green);color:#fff;
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 20px;font-size:34px;transition:background .25s;
}
.services-box:hover .ser-icon{background:var(--brand-dark)}
.services-box .ser-content h3{
  font-size:18px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;
}
.services-box .ser-content p{color:var(--text);font-size:14px;line-height:1.7}

/* TEAM MEMBER WRAP — card de membro do time (Geologix style) */
.team-row{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.team-member-wrap{
  background:#fff;border-radius:var(--radius);overflow:hidden;
  box-shadow:0 6px 22px rgba(0,0,0,.06);transition:transform .3s;
}
.team-member-wrap:hover{transform:translateY(-4px)}
.team-member-wrap .team-photo{
  position:relative;aspect-ratio:1/1;background-size:cover;background-position:center;
}
.team-member-wrap .team-photo::after{
  content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.6));
  opacity:0;transition:opacity .3s;
}
.team-member-wrap:hover .team-photo::after{opacity:1}
.team-member-wrap .team-content{
  padding:22px;text-align:center;background:#fff;
}
.team-member-wrap .team-content h3{font-size:17px;margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}
.team-member-wrap .team-content .role{
  color:var(--brand-green);font-family:var(--font-head);font-size:12px;
  letter-spacing:1px;text-transform:uppercase;font-weight:700;
}
.team-member-wrap .team-social{
  margin-top:12px;display:flex;justify-content:center;gap:10px;
}
.team-member-wrap .team-social a{
  width:34px;height:34px;border-radius:50%;background:var(--bg-soft);
  display:flex;align-items:center;justify-content:center;color:var(--text-dark);
  font-size:13px;transition:all .25s;
}
.team-member-wrap .team-social a:hover{background:var(--brand-green);color:#fff;opacity:1}

/* GRID Buildcon Pro — .one_third (3 colunas) */
.row{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.one_third{width:100%}
.last_column{grid-column-end:auto}

/* WOW / fadeInUp — Intersection Observer + classes utilitárias */
.wow{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}
.wow.is-visible{opacity:1;transform:none}
.wow.fadeInUp{}
.wow.delay-1{transition-delay:.15s}
.wow.delay-2{transition-delay:.3s}
.wow.delay-3{transition-delay:.45s}

/* AFFILIATIONS / parceiros */
.affiliations-row{
  display:grid;grid-template-columns:repeat(6,1fr);gap:30px;align-items:center;
}
.affiliations-row .aff-logo{
  display:flex;align-items:center;justify-content:center;
  min-height:80px;padding:10px;filter:grayscale(1);opacity:.6;
  transition:all .25s;
}
.affiliations-row .aff-logo img{max-height:60px;width:auto}
.affiliations-row .aff-logo:hover{filter:none;opacity:1}

/* PHOTO GALLERY (Geologix) */
.gallery-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.gallery-row .gallery-item{
  position:relative;aspect-ratio:1/1;overflow:hidden;border-radius:var(--radius);
  background-size:cover;background-position:center;
}
.gallery-row .gallery-item::after{
  content:"";position:absolute;inset:0;background:rgba(0,0,0,0);transition:background .3s;
}
.gallery-row .gallery-item:hover::after{background:rgba(0,0,0,.4)}

/* RESPONSIVE — colapsa Geologix grids em <=990 e <=767 */
@media(max-width:990px){
  .services-row,.team-row,.row{grid-template-columns:repeat(2,1fr)}
  .gallery-row{grid-template-columns:repeat(3,1fr)}
  .affiliations-row{grid-template-columns:repeat(3,1fr)}
  .section_head .section_title{font-size:30px}
  .get-quote .container{justify-content:center;text-align:center}
}
@media(max-width:767px){
  .services-row,.team-row,.row{grid-template-columns:1fr}
  .gallery-row{grid-template-columns:repeat(2,1fr)}
  .affiliations-row{grid-template-columns:repeat(2,1fr)}
  .section_head{margin-bottom:34px}
  .section_head .section_title{font-size:24px}
  .sec-overlay{padding:60px 0}
}