/* =========================================================
   MaxLink Tecnologia — estilos do site
   ========================================================= */
:root{
  --verde:        #8bc53f;
  --verde-escuro: #79b22f;
  --verde-claro:  #a3d65c;
  --escuro:       #2b2b2b;
  --escuro-2:     #242424;
  --hero:         #1c1c1c;
  --cinza-texto:  #555;
  --cinza-claro:  #f4f4f4;
  --azul-link:    #2f8be0;
  --serif: "PT Serif", Georgia, "Times New Roman", serif;
  --sans:  "Open Sans", Arial, Helvetica, sans-serif;
}

*{box-sizing:border-box;}
body{
  font-family:var(--sans);
  color:#333;
  font-size:15px;
  line-height:1.6;
  margin:0;
}
a{text-decoration:none;}
img{max-width:100%;}

/* ===================== TOPO / CONTATOS ===================== */
.barra-topo{
  font-size:14px;
  padding:8px 0;
  color:#555;
}
.barra-topo a{color:#555;}
.barra-topo a:hover{color:var(--verde);}
.barra-topo .item{display:inline-flex;align-items:center;gap:6px;margin-left:22px;white-space:nowrap;}
.barra-topo .item i{color:var(--verde);}
.barra-topo .sep{color:#ccc;margin-left:22px;}
/* telefones à esquerda: o primeiro item encosta na borda */
.barra-topo-fones .item:first-child{margin-left:0;}
/* redes sociais à direita */
.social-topo{display:inline-flex;align-items:center;gap:14px;margin-left:18px;}
.social-topo a{display:inline-flex;align-items:center;justify-content:center;
  width:24px;height:24px;font-size:15px;line-height:1;color:#777;transition:color .2s ease;}
.social-topo a:hover{color:var(--verde);}

/* ===================== NAVBAR ===================== */
.navbar-maxlink{
  padding-top:6px;padding-bottom:6px;
  background-color:#ffffff;
  background-repeat:repeat-x;
  background-size:contain;
  background-attachment:scroll;
  background-position:center top;
  background-image:url(../img/bg-topo-3.png);
  color:#777777;
  position:relative;            /* cria contexto p/ ficar ACIMA do hero */
  z-index:10;                   /* impede o banner (margin-top:-30px) de cobrir a logo */
}
/* logo e menu sempre no MESMO eixo vertical, sem hacks de margin negativa */
.navbar-maxlink > .container{
  display:flex;
  align-items:center;           /* centraliza logo + menu na mesma linha */
  flex-wrap:nowrap;
  min-height:96px;              /* altura base reservada p/ a logo */
}
.navbar-maxlink .navbar-brand{display:flex;align-items:center;margin-right:.5rem;padding:0;}
.navbar-maxlink .navbar-brand img{
  height:74px;
  width:auto;max-width:100%;
  object-fit:contain;           /* mantem proporcao, nunca corta */
  display:block;
}
.navbar-maxlink .navbar-nav{align-items:center;}
.navbar-maxlink .nav-link{
  color:#3a3a3a !important;
  font-weight:700;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.3px;
  white-space:nowrap;           /* cada item nunca quebra no meio */
  padding:.55rem .8rem !important;
}
.navbar-maxlink .nav-link:hover{color:var(--verde) !important;}
.navbar-maxlink .nav-item.active .nav-link,
.navbar-maxlink .nav-link.ativo{
  background:var(--escuro);
  color:#fff !important;
  border-radius:3px;
}
.navbar-maxlink .dropdown-menu{font-size:13px;border:0;box-shadow:0 6px 18px rgba(0,0,0,.12);}

/* ===== AJUSTE FLUIDO DA NAVBAR POR FAIXA DE TELA ===== */
/* Telas grandes (full HD+) — versao completa */
@media (min-width:1400px){
  .navbar-maxlink > .container{min-height:100px;}
  .navbar-maxlink .navbar-brand img{height:80px;}
}
/* Notebooks comuns 1280px (1280x600 / 1280x864 etc.) — container ~1140px */
@media (min-width:1200px) and (max-width:1399.98px){
  .navbar-maxlink > .container{min-height:88px;}
  .navbar-maxlink .navbar-brand img{height:66px;}
  .navbar-maxlink .nav-link{
    font-size:12px;
    letter-spacing:.2px;
    padding:.5rem .62rem !important;
  }
}
/* Telas medias 1024px / 1152px (1024x768, 1152x864) — container ~960px, faixa mais apertada */
@media (min-width:992px) and (max-width:1199.98px){
  .navbar-maxlink > .container{min-height:78px;}
  .navbar-maxlink .navbar-brand img{height:56px;}
  .navbar-maxlink .nav-link{
    font-size:11px;
    letter-spacing:.1px;
    padding:.45rem .5rem !important;
  }
  .navbar-maxlink .dropdown-menu{font-size:12px;}
  /* barra de contato tambem encolhe um pouco p/ caber numa linha */
  .barra-topo{font-size:13px;}
  .barra-topo .item{margin-left:16px;}
  .barra-topo .sep{margin-left:16px;}
  .social-topo{margin-left:14px;gap:12px;}
}

/* Dropdown abrindo ao passar o mouse (desktop) */
@media (min-width:992px){
  .navbar-maxlink .nav-item.dropdown > .dropdown-menu{
    display:block;
    margin-top:0;
    opacity:0;visibility:hidden;
    transform:translateY(10px);
    pointer-events:none;
    transition:opacity .18s ease, transform .18s ease;
  }
  .navbar-maxlink .nav-item.dropdown:hover > .dropdown-menu{
    opacity:1;visibility:visible;
    transform:translateY(0);
    pointer-events:auto;
  }
}

/* ===================== MENU LATERAL (mobile) ===================== */
.menu-offcanvas .offcanvas-header{
  background:var(--escuro);
  padding:16px 20px;
  border-bottom:3px solid var(--verde);
}
.menu-offcanvas .offcanvas-logo{height:46px;}
.menu-offcanvas .btn-close{
  filter:invert(1) brightness(2);
  opacity:.85;
}
@media (max-width:991.98px){
  .menu-offcanvas{
    width:300px;max-width:84vw;
    box-shadow:-10px 0 40px rgba(0,0,0,.18);
  }
  .menu-offcanvas .offcanvas-body{padding:6px 0 24px;}
  .menu-offcanvas .navbar-nav .nav-link{
    padding:15px 22px !important;
    border-bottom:1px solid #f1f1f1;
    border-radius:0 !important;
    display:flex;align-items:center;
  }
  .menu-offcanvas .navbar-nav .nav-link.ativo{
    background:var(--verde);color:#fff !important;
  }
  .menu-offcanvas .navbar-nav .nav-link:not(.ativo):hover{
    background:#f6faef;color:var(--verde) !important;
  }
  .menu-offcanvas .dropdown-menu{
    border:0;box-shadow:none;background:#fafafa;
    margin:0;padding:0;
  }
  .menu-offcanvas .dropdown-item{padding:12px 22px 12px 38px;}
}
.linha-secundaria{
  font-size:13px;font-weight:700;text-transform:uppercase;color:#ffffff;
}
.linha-secundaria a{color:#3a3a3a;}
.linha-secundaria a:hover{color:var(--verde);}
.linha-secundaria .social a{
  display:inline-flex;width:26px;height:26px;align-items:center;justify-content:center;
  color:#3a3a3a;font-size:15px;margin-left:6px;
}
.linha-secundaria .social a:hover{color:var(--verde);}

/* ===================== HERO ===================== */
.hero{
  background:var(--hero) url('../img/hexagonos.svg');
  background-blend-mode:lighten;
  color:#fff;
  overflow:hidden;
  position:relative;
}
.hero .vantagens{padding:48px 0;}
.hero .vantagem{
  display:flex;align-items:center;gap:16px;
  margin-bottom:18px;
  font-size:22px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;
}
.hero .vantagem .check{
  flex:0 0 34px;width:34px;height:34px;border-radius:50%;
  border:2px solid var(--verde);
  display:flex;align-items:center;justify-content:center;
  color:var(--verde);font-size:16px;
}
.hero .foto-homem{
  align-self:flex-end;
  position:relative;z-index:2;
  max-height:420px;
}
.hero .chamada{
  font-weight:800;text-transform:uppercase;line-height:1;
  font-size:52px;text-align:right;
}
.hero .chamada small{display:block;font-size:54px;}
.hero .chamada .destaque{color:var(--verde);font-size:66px;}
.hero .logo-hero{height:54px;opacity:.95;}

/* ===================== PLANOS ===================== */
.secao{padding:60px 0;}
.titulo-secao{
  font-family:var(--serif);
  font-size:30px;
  color:#333;
  display:flex;align-items:center;gap:14px;
  margin-bottom:42px;
}
.titulo-secao i{color:#333;font-size:26px;}

.card-plano{
  border:1px solid #e9e9e9;
  background:#fff;
  height:100%;
  display:flex;flex-direction:column;
  transition:transform .2s ease, box-shadow .2s ease;
}
.card-plano:hover{transform:translateY(-6px);box-shadow:0 14px 30px rgba(0,0,0,.12);}
.card-plano .topo{
  background:var(--escuro);
  color:#fff;
  text-align:center;
  padding:26px 18px 22px;
  display:flex;flex-direction:column;align-items:center;justify-content:flex-start;
  min-height:230px;
}
.card-plano .topo .icone img{height:34px;margin-bottom:16px;}
.card-plano .topo h3{
  font-family:var(--serif);font-weight:400;font-size:30px;line-height:1.12;
  margin:0 0 12px;min-height:66px;display:flex;align-items:center;justify-content:center;
}
.card-plano .topo .badge-plano{
  display:inline-block;
  font-family:var(--sans);font-weight:800;font-size:12px;
  letter-spacing:1.2px;text-transform:uppercase;
  color:#fff;background:var(--verde);
  padding:5px 16px;border-radius:30px;margin-bottom:14px;
  box-shadow:0 4px 12px rgba(139,197,63,.35);
}
.card-plano .topo .consultor{color:#c7c7c7;font-size:12.5px;margin:0;line-height:1.3;}
.card-plano .recursos{
  list-style:none;margin:0;padding:14px 22px 22px;
  flex:1 1 auto;
}
.card-plano .recursos li{
  text-align:center;color:#555;font-size:14px;
  padding:13px 0;border-bottom:1px dotted #d6d6d6;
}
.card-plano .recursos li:last-child{border-bottom:0;}
.btn-consultar{
  display:block;background:var(--verde);color:#fff;
  text-align:center;padding:13px;font-size:16px;
  border:0;width:100%;
  transition:background .2s;
}
.btn-consultar:hover{background:var(--verde-escuro);color:#fff;}

/* ===================== FAIXA CORPORATIVO ===================== */
.faixa-corp{
  position:relative;
  background:#2b2b2b;
  color:#fff;
  padding:28px 30px;
  border-radius:14px;
  margin-top:6px;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 10px 28px rgba(0,0,0,.18);
}
.corp-list{
  position:relative;z-index:1;
  list-style:none;margin:0;padding:0;
  display:flex;flex-wrap:wrap;
  gap:14px;
  align-items:stretch;justify-content:center;
}
.corp-list li{
  display:flex;align-items:center;gap:14px;
  font-size:14px;font-weight:600;
  line-height:1.35;color:#f0f0f0;
  flex:1 1 210px;max-width:270px;
  padding:16px 18px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;
  transition:border-color .2s ease, background .2s ease, transform .2s ease;
}
.corp-list li:hover{
  transform:translateY(-2px);
  border-color:rgba(139,197,63,.45);
  background:rgba(255,255,255,.06);
}
.corp-list li i{
  flex:0 0 auto;font-size:16px;color:#fff;
  width:36px;height:36px;border-radius:50%;
  background:var(--verde);
  display:flex;align-items:center;justify-content:center;
}

/* ===================== DEPOIMENTOS ===================== */
.bloco-depo{
  background:var(--escuro) url('../img/hexagonos.svg');
  background-blend-mode:lighten;
  border-radius:4px;
  padding:48px 50px;
  color:#fff;
  display:flex;align-items:center;gap:40px;flex-wrap:wrap;
}
.bloco-depo .avatar{position:relative;flex:0 0 auto;}
.bloco-depo .avatar img{
  width:150px;height:150px;border-radius:50%;
  border:6px solid var(--verde);object-fit:cover;
}
.bloco-depo .avatar .wpp{
  position:absolute;right:6px;bottom:6px;
  width:42px;height:42px;border-radius:50%;
  background:#25d366;color:#fff;font-size:22px;
  display:flex;align-items:center;justify-content:center;
  border:3px solid var(--escuro);
}
.bloco-depo .conteudo{flex:1 1 320px;}
.bloco-depo .nome{
  font-family:var(--serif);color:var(--verde);font-size:28px;margin:0 0 10px;
}
.bloco-depo .texto{font-style:italic;font-size:21px;color:#dcdcdc;line-height:1.4;margin:0 0 12px;}
.bloco-depo .hashtag{color:var(--verde);font-style:italic;font-weight:700;font-size:18px;}
.depo-dots{display:flex;gap:8px;justify-content:center;margin-top:22px;}
.depo-dots span{width:10px;height:10px;border-radius:50%;background:#777;cursor:pointer;}
.depo-dots span.ativo{background:var(--verde);}

/* ===================== RODAPÉ ===================== */
.rodape{background:var(--escuro);color:#bdbdbd;padding:54px 0 40px;font-size:14px;}
.rodape h5{
  color:#fff;font-size:16px;font-weight:700;margin-bottom:18px;
}
.rodape p,.rodape li{margin:0 0 8px;}
.rodape .lista{list-style:none;padding:0;margin:0;}
.rodape .lista li{display:flex;align-items:center;gap:8px;}
.rodape .lista li i{color:var(--verde);width:16px;}
.rodape a{color:#bdbdbd;}
.rodape a:hover{color:var(--verde);}
.rodape .anatel{border-radius:4px;padding:8px 10px;display:inline-block;margin-top:6px; height:30px;}
.rodape .destaque{color:#fff;font-weight:600;}

.copy{background:#1b1b1b;color:#9a9a9a;padding:16px 0;font-size:13px;}
.copy img{height:38px;}
.copy .destaque{color:#fff;font-weight:700;}

/* ===================== WHATSAPP FLUTUANTE ===================== */
.wpp-float{
  position:fixed;right:22px;bottom:22px;z-index:999;
  width:58px;height:58px;border-radius:50%;
  background:#25d366;color:#fff;font-size:30px;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 18px rgba(0,0,0,.3);
  transition:transform .2s;
}
.wpp-float:hover{transform:scale(1.08);color:#fff;}

/* ===================== RESPONSIVO ===================== */
@media (max-width:991px){
  .hero .chamada{text-align:center;font-size:40px;margin-top:20px;}
  .hero .chamada small{font-size:42px;}
  .hero .chamada .destaque{font-size:50px;}
  .hero .foto-homem{margin:0 auto;display:block;}
  /* Barra de contatos organizada no celular */
  .barra-topo{padding:10px 0;}
  .barra-topo-fones{text-align:center !important;}
  .barra-topo .sep{display:none;}
  .barra-topo .item{
    display:inline-flex;justify-content:center;
    margin:0;padding:5px 10px;font-weight:600;
  }
  .barra-topo-fones .item:first-child{margin-left:0;}
  .linha-secundaria{justify-content:center !important;}
}
@media (max-width:575px){
  /* Telefones empilhados e centralizados em telas bem pequenas */
  .barra-topo-fones{
    display:flex;flex-direction:column;align-items:center;gap:2px;
  }
  .barra-topo .item{
    width:100%;max-width:280px;justify-content:center;
    border-bottom:1px solid rgba(0,0,0,.06);padding:7px 10px;
  }
  .barra-topo .item:last-child{border-bottom:0;}
}
@media (max-width:767px){
  .hero .vantagem{font-size:17px;}
  .titulo-secao{font-size:24px;}
  .faixa-corp{padding:22px 18px;}
  .corp-list{flex-direction:column;align-items:stretch;gap:12px;}
  .corp-list li{flex:1 1 auto;max-width:none;font-size:13.5px;}
  .bloco-depo{padding:30px 24px;justify-content:center;text-align:center;}
  .bloco-depo .texto{font-size:18px;}
}

/* =========================================================
   SLIDER DO BANNER (carrossel moderno)
   ========================================================= */
.hero-slider{position:relative;}
.hero-slider .slide{
 
  min-height:440px;
  display:flex;align-items:center;
  color:#fff;
}
.hero-slider .slide.hero{display:block;align-items:initial;}
/* Banner de imagem: o Bootstrap usa a classe .slide na RAIZ do carousel.
   Removemos a altura fixa p/ o slider acompanhar a imagem em qualquer tela
   (sem faixas brancas) e os indicadores ficarem sempre no mesmo ponto. */
.hero-slider .carousel.slide{min-height:0;display:block;}
.hero-slider .slide.hero .vantagens{padding:48px 0;}

/* slides promocionais */
.slide-promo{position:relative;overflow:hidden;}
.slide-promo::before{
  content:"";position:absolute;right:-120px;top:-120px;
  width:460px;height:460px;border-radius:50%;
  background:radial-gradient(circle, rgba(139,197,63,.22), transparent 70%);
}
.slide-promo .eyebrow{
  display:inline-block;background:rgba(139,197,63,.16);
  color:var(--verde);font-weight:700;text-transform:uppercase;
  font-size:13px;letter-spacing:1px;padding:6px 14px;border-radius:30px;margin-bottom:18px;
}
.slide-titulo{
  font-family:var(--sans);font-weight:800;font-size:48px;line-height:1.05;margin:0 0 18px;
  text-transform:uppercase;
}
.slide-titulo .destaque{color:var(--verde);}
.slide-sub{font-size:18px;color:#cfcfcf;max-width:560px;margin:0 0 28px;}
.slide-cta{display:flex;gap:14px;flex-wrap:wrap;}
.btn-slide{
  background:var(--verde);color:#fff;font-weight:700;
  padding:13px 28px;border-radius:6px;display:inline-flex;align-items:center;
  transition:background .2s, transform .2s;
}
.btn-slide:hover{background:var(--verde-escuro);color:#fff;transform:translateY(-2px);}
.btn-slide-outline{
  border:2px solid rgba(255,255,255,.5);color:#fff;font-weight:700;
  padding:11px 26px;border-radius:6px;display:inline-flex;align-items:center;
  transition:.2s;
}
.btn-slide-outline:hover{border-color:var(--verde);color:var(--verde);}

/* velocímetro / ícone decorativo */
.velocimetro{
  width:240px;height:240px;border-radius:50%;
  border:8px solid rgba(139,197,63,.25);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  margin:0 auto;position:relative;z-index:2;
  box-shadow:0 0 60px rgba(139,197,63,.15);
}
.velocimetro .num{font-size:74px;font-weight:800;color:var(--verde);line-height:1;}
.velocimetro .uni{font-size:24px;text-transform:uppercase;letter-spacing:3px;color:#fff;}
.icone-slide{font-size:170px;color:rgba(139,197,63,.35);position:relative;z-index:2;}

/* indicadores e setas */
.hero-slider .carousel-indicators{
  margin:0 !important;          /* anula qualquer margin-top inline e mantem fixo */
  top:auto;                     /* ancorado SO pela base, em qualquer tela */
  bottom:32px;
  left:50%;right:auto;
  transform:translateX(-50%);
  width:max-content;
  display:flex;align-items:center;gap:9px;
  padding:8px 14px;
  background:rgba(20,20,20,.34);
  backdrop-filter:blur(4px);
  border-radius:30px;
  box-shadow:0 4px 14px rgba(0,0,0,.18);
}
.hero-slider .carousel-indicators [data-bs-target]{
  width:10px;height:10px;border-radius:50%;border:0;margin:0;
  background:rgba(255,255,255,.6);
  opacity:1;transition:.3s;
}
.hero-slider .carousel-indicators .active{background:var(--verde);width:26px;border-radius:6px;}
.hero-slider .carousel-control-prev,
.hero-slider .carousel-control-next{width:60px;opacity:1;}
.hero-slider .seta{
  width:46px;height:46px;border-radius:50%;
  background:rgba(0,0,0,.35);backdrop-filter:blur(2px);
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-size:18px;transition:.2s;
}
.hero-slider .seta:hover{background:var(--verde);}

/* =========================================================
   AVALIAÇÕES ESTILO GOOGLE
   ========================================================= */
.google-resumo{
  text-align:center;
  border:1px solid #ececec;border-radius:14px;
  padding:26px 20px;margin-bottom:8px;
  box-shadow:0 6px 20px rgba(0,0,0,.04);
  background:#fff;
}
.google-resumo .g-logo{display:flex;align-items:center;justify-content:center;gap:8px;font-size:20px;font-weight:600;color:#5f6368;margin-bottom:8px;}
.google-resumo .g-nota{display:flex;align-items:center;justify-content:center;gap:12px;}
.google-resumo .g-nota strong{font-size:42px;color:#fbbc05;font-weight:700;line-height:1;}
.google-resumo .estrelas{color:#fbbc05;font-size:22px;}
.google-resumo .g-base{color:#70757a;font-size:14px;margin:8px 0 16px;}
.btn-google-review{
  display:inline-flex;align-items:center;
  border:1px solid #dadce0;border-radius:24px;
  padding:9px 22px;color:#1a73e8;font-weight:600;font-size:14px;
  transition:.2s;
}
.btn-google-review:hover{background:#f1f6ff;color:#1a73e8;border-color:#1a73e8;}

.review-card{
  background:#fff;border:1px solid #ececec;border-radius:14px;
  padding:24px;height:100%;
  box-shadow:0 6px 20px rgba(0,0,0,.04);
  transition:transform .2s, box-shadow .2s;
}
.review-card:hover{transform:translateY(-5px);box-shadow:0 14px 30px rgba(0,0,0,.1);}
.review-top{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.review-avatar{
  width:46px;height:46px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-weight:700;font-size:20px;flex:0 0 auto;
}
.review-id{display:flex;flex-direction:column;line-height:1.2;}
.review-nome{font-weight:600;color:#202124;font-size:15px;display:flex;align-items:center;gap:6px;}
.review-nome .g-badge{width:15px;height:15px;}
.review-data{color:#70757a;font-size:13px;}
.review-stars{color:#fbbc05;font-size:15px;margin-bottom:10px;}
.review-texto{color:#3c4043;font-size:14.5px;line-height:1.6;margin:0;}

@media (max-width:991px){
  .slide-titulo{font-size:34px;}
  .slide-sub{font-size:16px;}
  .hero-slider .slide{min-height:auto;padding:30px 0;}
  .hero-slider .carousel-indicators{bottom:16px;}
}

/* =========================================================
   PÁGINAS INTERNAS (Sobre Nós / Cobertura)
   ========================================================= */
.page-hero{
  position:relative;overflow:hidden;
  background:linear-gradient(135deg,#1c1c1c 0%,#272727 60%,#191919 100%);
  color:#fff;padding:54px 0 50px;
}
.page-hero::before{
  content:"";position:absolute;left:0;top:0;right:0;height:3px;
  background:linear-gradient(90deg,transparent,var(--verde),var(--verde-claro),var(--verde),transparent);
}
.page-hero::after{
  content:"";position:absolute;inset:0;
  background:url('../img/hexagonos.svg');opacity:.06;pointer-events:none;
}
.page-hero .container{position:relative;z-index:1;}
.page-hero .eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(139,197,63,.14);color:var(--verde);
  font-weight:700;text-transform:uppercase;letter-spacing:1.2px;
  font-size:12px;padding:7px 16px;border-radius:30px;margin-bottom:16px;
}
.page-hero h1{
  font-family:var(--serif);font-weight:700;font-size:42px;
  line-height:1.1;margin:0 0 12px;
}
.page-hero h1 .destaque{color:var(--verde);}
.page-hero .crumbs{font-size:13.5px;color:#bdbdbd;text-transform:uppercase;letter-spacing:.6px;}
.page-hero .crumbs a{color:#bdbdbd;}
.page-hero .crumbs a:hover{color:var(--verde);}
.page-hero .crumbs span{color:var(--verde);}

/* ---- Conteúdo Sobre Nós ---- */
.bloco-conteudo{padding:64px 0;}
.texto-rico{font-size:16px;line-height:1.85;color:#444;max-width:880px;}
.texto-rico p{margin:0 0 20px;}
.texto-rico p:first-of-type{font-size:18px;color:#2b2b2b;}
.texto-rico .frase-final{
  font-family:var(--serif);font-style:italic;font-size:20px;
  color:var(--verde-escuro);border-left:4px solid var(--verde);
  padding-left:20px;margin-top:8px;
}
.titulo-bloco{
  font-family:var(--serif);font-size:30px;color:#2b2b2b;margin:0 0 10px;
}
.titulo-bloco .destaque{color:var(--verde-escuro);}
.subtitulo-bloco{
  display:inline-flex;align-items:center;gap:8px;
  color:var(--verde-escuro);font-weight:700;text-transform:uppercase;
  letter-spacing:1px;font-size:13px;margin-bottom:14px;
}
.linha-sep{width:64px;height:4px;background:var(--verde);border-radius:4px;margin:18px 0 30px;}

/* ---- Missão / Visão / Valores ---- */
.bloco-mvv{background:var(--cinza-claro);padding:64px 0;}
.card-mvv{
  background:#fff;border:1px solid #ececec;border-radius:14px;
  padding:34px 30px;height:100%;
  box-shadow:0 8px 26px rgba(0,0,0,.05);
  transition:transform .2s ease, box-shadow .2s ease;
}
.card-mvv:hover{transform:translateY(-6px);box-shadow:0 16px 36px rgba(0,0,0,.1);}
.card-mvv .ico{
  width:60px;height:60px;border-radius:14px;
  background:linear-gradient(135deg,var(--verde),var(--verde-escuro));
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-size:24px;margin-bottom:20px;
  box-shadow:0 8px 18px rgba(139,197,63,.32);
}
.card-mvv h3{font-family:var(--serif);font-size:24px;color:#2b2b2b;margin:0 0 12px;}
.card-mvv p{color:#555;font-size:15px;line-height:1.7;margin:0;}
.lista-valores{list-style:none;padding:0;margin:0;}
.lista-valores li{
  display:flex;align-items:center;gap:12px;
  padding:11px 0;border-bottom:1px dotted #e2e2e2;
  color:#444;font-weight:600;font-size:15.5px;
}
.lista-valores li:last-child{border-bottom:0;}
.lista-valores li i{color:var(--verde);font-size:16px;}

/* ---- Cobertura ---- */
.bloco-cobertura{padding:64px 0;}
.grid-bairros{
  list-style:none;padding:0;margin:28px 0 0;
  display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
  gap:12px;
}
.grid-bairros li{
  display:flex;align-items:center;gap:12px;
  background:#fff;border:1px solid #eaeaea;border-radius:10px;
  padding:14px 16px;color:#3a3a3a;font-weight:600;font-size:14.5px;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.grid-bairros li:hover{
  transform:translateY(-3px);border-color:var(--verde);
  box-shadow:0 10px 22px rgba(0,0,0,.07);
}
.grid-bairros li i{
  flex:0 0 auto;width:34px;height:34px;border-radius:50%;
  background:rgba(139,197,63,.12);color:var(--verde-escuro);
  display:flex;align-items:center;justify-content:center;font-size:14px;
}
.nota-mapa{
  display:flex;align-items:flex-start;gap:10px;
  background:#fff7e6;border:1px solid #ffe2a8;border-radius:10px;
  padding:14px 18px;margin-top:30px;
  color:#7a5a12;font-size:13.5px;line-height:1.5;
}
.nota-mapa i{color:#e0a106;font-size:16px;margin-top:2px;}
.mapa-frame{
  margin-top:36px;border-radius:14px;overflow:hidden;
  border:1px solid #e6e6e6;box-shadow:0 14px 36px rgba(0,0,0,.1);
  line-height:0;
}
.mapa-frame iframe{display:block;border:0;width:100%;}
.cta-cobertura{
  margin-top:36px;text-align:center;
  background:linear-gradient(135deg,#1c1c1c,#262626);
  border-radius:14px;padding:38px 26px;color:#fff;
}
.cta-cobertura h3{font-family:var(--serif);font-size:26px;margin:0 0 10px;}
.cta-cobertura p{color:#cfcfcf;margin:0 0 22px;}
.btn-cobertura{
  display:inline-flex;align-items:center;gap:10px;
  background:#25d366;color:#fff;font-weight:700;
  padding:14px 30px;border-radius:8px;font-size:16px;
  transition:transform .2s ease, background .2s ease;
}
.btn-cobertura:hover{transform:translateY(-2px);background:#1fb855;color:#fff;}

@media (max-width:767px){
  .page-hero{padding:40px 0 36px;}
  .page-hero h1{font-size:32px;}
  .bloco-conteudo,.bloco-mvv,.bloco-cobertura{padding:44px 0;}
  .texto-rico,.texto-rico p:first-of-type{font-size:15.5px;}
}

/* =========================================================
   CARROSSEL DE AVALIAÇÕES (Google)
   ========================================================= */
.depo-carousel{position:relative;padding:0 8px 56px;}
.depo-carousel .carousel-item{padding:6px 4px;}
.depo-carousel .review-card{height:100%;}
.depo-indicators{margin-bottom:6px;bottom:14px;}
.depo-indicators [data-bs-target]{
  width:11px;height:11px;border-radius:50%;border:0;
  background:#cfcfcf;opacity:1;margin:0 5px;transition:.3s;
}
.depo-indicators .active{background:var(--verde);width:28px;border-radius:6px;}
.depo-seta{width:42px;opacity:1;top:auto;bottom:0;height:46px;}
.depo-carousel .carousel-control-prev.depo-seta{left:calc(50% - 90px);}
.depo-carousel .carousel-control-next.depo-seta{right:calc(50% - 90px);}
.depo-seta .seta{
  width:42px;height:42px;border-radius:50%;
  background:var(--escuro);color:#fff;font-size:15px;
  display:flex;align-items:center;justify-content:center;transition:.2s;
}
.depo-seta:hover .seta{background:var(--verde);}

/* =========================================================
   PÁGINA FIBRA ÓPTICA
   ========================================================= */
.fibra-intro{padding:64px 0 30px;}
.fibra-intro .texto-rico{margin:0 auto;text-align:center;}
.bloco-planos{padding:20px 0 64px;}
.bloco-diferenciais{background:var(--cinza-claro);padding:64px 0;}
.dif-card{
  background:#fff;border:1px solid #ececec;border-radius:14px;
  padding:30px 26px;height:100%;text-align:center;
  box-shadow:0 8px 24px rgba(0,0,0,.05);
  transition:transform .2s ease, box-shadow .2s ease;
}
.dif-card:hover{transform:translateY(-6px);box-shadow:0 16px 34px rgba(0,0,0,.1);}
.dif-card .ico{
  width:66px;height:66px;border-radius:50%;margin:0 auto 18px;
  background:rgba(139,197,63,.12);border:1px solid rgba(139,197,63,.3);
  display:flex;align-items:center;justify-content:center;
  color:var(--verde-escuro);font-size:26px;
}
.dif-card h3{font-size:18px;color:#2b2b2b;font-weight:700;margin:0 0 8px;}
.dif-card p{color:#666;font-size:14px;line-height:1.6;margin:0;}
.faixa-cta{
  background:linear-gradient(135deg,#1c1c1c,#262626);
  color:#fff;text-align:center;padding:56px 24px;
}
.faixa-cta h2{font-family:var(--serif);font-size:32px;margin:0 0 12px;}
.faixa-cta h2 .destaque{color:var(--verde);}
.faixa-cta p{color:#cfcfcf;font-size:17px;margin:0 0 26px;}
.btn-cta-verde{
  display:inline-flex;align-items:center;gap:10px;
  background:#25d366;color:#fff;font-weight:700;
  padding:15px 34px;border-radius:8px;font-size:17px;
  transition:transform .2s ease, background .2s ease;
}
.btn-cta-verde:hover{transform:translateY(-2px);background:#1fb855;color:#fff;}

/* =========================================================
   PÁGINA FALE CONOSCO
   ========================================================= */
.bloco-contato{padding:64px 0;}
.contato-card{
  display:flex;align-items:flex-start;gap:16px;
  background:#fff;border:1px solid #ececec;border-radius:12px;
  padding:20px 22px;margin-bottom:16px;
  box-shadow:0 6px 18px rgba(0,0,0,.04);
  transition:transform .18s ease, border-color .18s ease;
}
.contato-card:hover{transform:translateY(-3px);border-color:var(--verde);}
.contato-card .ico{
  flex:0 0 auto;width:50px;height:50px;border-radius:12px;
  background:linear-gradient(135deg,var(--verde),var(--verde-escuro));
  color:#fff;font-size:20px;display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 14px rgba(139,197,63,.3);
}
.contato-card h4{font-size:15px;font-weight:700;color:#2b2b2b;margin:0 0 4px;text-transform:uppercase;letter-spacing:.4px;}
.contato-card p{margin:0;color:#555;font-size:15px;line-height:1.5;}
.contato-card a{color:#555;}
.contato-card a:hover{color:var(--verde-escuro);}
.form-contato{
  background:#fff;border:1px solid #ececec;border-radius:14px;
  padding:32px 30px;box-shadow:0 10px 30px rgba(0,0,0,.06);
}
.form-contato label{font-weight:600;font-size:14px;color:#333;margin-bottom:6px;display:block;}
.form-contato .form-control{
  border:1px solid #dcdcdc;border-radius:8px;padding:12px 14px;font-size:15px;margin-bottom:18px;
}
.form-contato .form-control:focus{
  border-color:var(--verde);box-shadow:0 0 0 .2rem rgba(139,197,63,.18);
}
.btn-enviar{
  display:inline-flex;align-items:center;gap:10px;
  background:#25d366;color:#fff;font-weight:700;border:0;
  padding:14px 30px;border-radius:8px;font-size:16px;width:100%;justify-content:center;
  transition:background .2s ease, transform .2s ease;
}
.btn-enviar:hover{background:#1fb855;color:#fff;transform:translateY(-2px);}

@media (max-width:767px){
  .fibra-intro{padding:44px 0 20px;}
  .bloco-contato,.bloco-diferenciais{padding:44px 0;}
  .faixa-cta h2{font-size:26px;}
  .depo-carousel .carousel-control-prev.depo-seta{left:10px;}
  .depo-carousel .carousel-control-next.depo-seta{right:10px;}
}

/* =========================================================
   DESTAQUE COBERTURA TOTAL (toda Anápolis-GO)
   ========================================================= */
.destaque-cobertura{
  position:relative;overflow:hidden;
  background:linear-gradient(135deg,var(--verde) 0%,var(--verde-escuro) 100%);
  color:#fff;border-radius:16px;
  padding:30px 34px;margin-bottom:8px;
  display:flex;align-items:center;gap:24px;flex-wrap:wrap;
  box-shadow:0 16px 36px rgba(139,197,63,.32);
}
.destaque-cobertura::after{
  content:"";position:absolute;right:-60px;top:-60px;
  width:240px;height:240px;border-radius:50%;
  background:rgba(255,255,255,.12);pointer-events:none;
}
.destaque-cobertura .dc-ico{
  flex:0 0 auto;width:74px;height:74px;border-radius:50%;
  background:rgba(255,255,255,.18);border:2px solid rgba(255,255,255,.5);
  display:flex;align-items:center;justify-content:center;
  font-size:32px;color:#fff;position:relative;z-index:1;
}
.destaque-cobertura .dc-txt{flex:1 1 280px;position:relative;z-index:1;}
.destaque-cobertura .dc-tag{
  display:inline-block;background:rgba(255,255,255,.22);
  font-weight:800;text-transform:uppercase;letter-spacing:1px;
  font-size:12px;padding:5px 14px;border-radius:30px;margin-bottom:10px;
}
.destaque-cobertura h2{
  font-family:var(--serif);font-size:28px;font-weight:700;
  margin:0 0 6px;line-height:1.15;color:#fff;
}
.destaque-cobertura p{margin:0;font-size:15.5px;color:#f3ffe3;line-height:1.5;}

/* card "toda a cidade" dentro da grade de bairros */
.grid-bairros li.todos{
  background:linear-gradient(135deg,#1c1c1c,#2b2b2b);
  border-color:#2b2b2b;color:#fff;font-weight:700;
}
.grid-bairros li.todos:hover{border-color:var(--verde);}
.grid-bairros li.todos i{
  background:rgba(139,197,63,.2);color:var(--verde);
}

@media (max-width:575px){
  .destaque-cobertura{padding:24px 22px;text-align:center;justify-content:center;}
  .destaque-cobertura h2{font-size:23px;}
}

/* ===================================================================
   ATENDIMENTO FLUTUANTE (WhatsApp + Telegram) - lado ESQUERDO
   =================================================================== */
.chat-flutuante{
  position:fixed; left:24px; bottom:16px; z-index:1050;
  display:flex; flex-direction:column; align-items:flex-start; gap:14px;
  transition:bottom .3s ease;
}
/* botão principal */
.chat-botao{
  position:relative; border:0; cursor:pointer;
  width:62px; height:62px; border-radius:50%;
  background:linear-gradient(135deg,var(--verde),var(--verde-escuro));
  color:#fff; box-shadow:0 8px 22px rgba(0,0,0,.28);
  display:flex; align-items:center; justify-content:center;
  transition:transform .25s, box-shadow .25s;
}
.chat-botao:hover{ transform:scale(1.07); box-shadow:0 10px 26px rgba(0,0,0,.34); }
.chat-botao i{ position:absolute; font-size:28px; transition:transform .3s, opacity .25s; }
.chat-botao .chat-ic-fechar{ opacity:0; transform:rotate(-90deg) scale(.4); }
.chat-flutuante.aberto .chat-botao{ background:linear-gradient(135deg,#444,#2b2b2b); }
.chat-flutuante.aberto .chat-ic-abrir{ opacity:0; transform:rotate(90deg) scale(.4); }
.chat-flutuante.aberto .chat-ic-fechar{ opacity:1; transform:rotate(0) scale(1); }
/* pulso de atenção */
.chat-botao::after{
  content:""; position:absolute; inset:0; border-radius:50%;
  box-shadow:0 0 0 0 rgba(139,197,63,.55); animation:chatPulso 2.4s infinite;
}
.chat-flutuante.aberto .chat-botao::after{ animation:none; }
@keyframes chatPulso{ 0%{box-shadow:0 0 0 0 rgba(139,197,63,.55);} 70%{box-shadow:0 0 0 16px rgba(139,197,63,0);} 100%{box-shadow:0 0 0 0 rgba(139,197,63,0);} }

/* balão "Posso ajudar?" (à DIREITA do botão) */
.chat-balao{
  position:absolute; left:74px; top:50%; transform:translateY(-50%);
  background:#fff; color:#2b2b2b; font-size:14px; font-weight:600;
  padding:9px 14px; border-radius:24px; white-space:nowrap;
  box-shadow:0 6px 18px rgba(0,0,0,.16);
  opacity:0; pointer-events:none; transition:opacity .3s, transform .3s;
}
.chat-balao::after{
  content:""; position:absolute; left:-7px; top:50%; transform:translateY(-50%);
  border:7px solid transparent; border-right-color:#fff;
}
.chat-balao.visivel{ opacity:1; }
.chat-flutuante.aberto .chat-balao{ opacity:0 !important; }

/* opções */
.chat-opcoes{
  display:flex; flex-direction:column; gap:12px;
  opacity:0; visibility:hidden; transform:translateY(14px) scale(.96);
  transform-origin:bottom left; transition:opacity .25s, transform .25s, visibility .25s;
}
.chat-flutuante.aberto .chat-opcoes{ opacity:1; visibility:visible; transform:translateY(0) scale(1); }
.chat-opcao{
  display:flex; align-items:center; gap:12px; text-decoration:none;
  background:#fff; padding:10px 16px 10px 12px; border-radius:50px;
  box-shadow:0 6px 18px rgba(0,0,0,.15); min-width:212px;
  transition:transform .2s, box-shadow .2s;
}
.chat-opcao:hover{ transform:translateX(4px); box-shadow:0 10px 24px rgba(0,0,0,.22); }
.chat-opcao-ic{
  width:42px; height:42px; flex:0 0 42px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  color:#fff; font-size:21px;
}
.chat-whatsapp .chat-opcao-ic{ background:#25d366; }
.chat-telegram .chat-opcao-ic{ background:#229ed9; }
.chat-opcao-tx{ display:flex; flex-direction:column; line-height:1.15; }
.chat-opcao-tx strong{ color:#2b2b2b; font-size:15px; font-weight:700; }
.chat-opcao-tx small{ color:#888; font-size:12px; }

/* ===================================================================
   BOTÃO VOLTAR AO TOPO - lado DIREITO
   =================================================================== */
.voltar-topo{
  position:fixed; right:24px; bottom:16px; z-index:1050;
  width:50px; height:50px; border:0; cursor:pointer; border-radius:50%;
  background:linear-gradient(135deg,var(--verde),var(--verde-escuro));
  color:#fff; font-size:20px; line-height:1;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 8px 22px rgba(0,0,0,.28);
  opacity:0; visibility:hidden; transform:translateY(16px) scale(.85);
  transition:opacity .3s, transform .3s, visibility .3s, bottom .3s ease, box-shadow .25s;
}
.voltar-topo.visivel{ opacity:1; visibility:visible; transform:translateY(0) scale(1); }
.voltar-topo:hover{ transform:translateY(-3px) scale(1.07); color:#fff; box-shadow:0 12px 26px rgba(0,0,0,.34); }
.voltar-topo:active{ transform:scale(.96); }

@media (max-width:575px){
  .chat-flutuante{ left:16px; bottom:12px; }
  .chat-opcao{ min-width:196px; }
  .chat-balao{ display:none; }
  .voltar-topo{ right:16px; bottom:12px; width:46px; height:46px; font-size:18px; }
}

/* link "LF-System" no copyright */
.copy a.destaque{ text-decoration:none; transition:color .2s; }
.copy a.destaque:hover{ color:var(--verde); text-decoration:underline; }
