:root{
  /* ---- CORES DA MARCA (altere aqui) ---- */
  --azul-escuro:  #0F2C4C;   /* cor principal - menu, rodapé, títulos */
  --azul-medio:   #1B4B7A;   /* cor secundária - degradês */
  --verde:        #16A075;   /* cor de destaque - botões, ícones */
  --verde-claro:  #E8F6F1;   /* fundo suave dos cards de destaque */
  --cinza-fundo:  #F5F7FA;   /* fundo das seções alternadas */
  --cinza-borda:  #E2E8F0;
  --texto:        #1F2937;
  --texto-suave:  #5B6B7F;
  --branco:       #FFFFFF;
  --sombra:       0 4px 20px rgba(15,44,76,.08);
  --sombra-forte: 0 12px 34px rgba(15,44,76,.16);
  --radius:       14px;
  --h:            92px;   /* altura do cabecalho */
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--h) + 8px)}
body{
  font-family:'Segoe UI',-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;
  color:var(--texto);background:var(--branco);line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.container{width:min(1180px,92%);margin-inline:auto}

/* ---------- BOTÕES ---------- */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:14px 30px;border-radius:8px;font-weight:600;font-size:.95rem;
  border:2px solid transparent;cursor:pointer;transition:.25s;
}
.btn-primario{background:var(--verde);color:#fff}
.btn-primario:hover{background:#118a63;transform:translateY(-2px);box-shadow:0 8px 20px rgba(22,160,117,.3)}
.btn-secundario{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.btn-secundario:hover{background:rgba(255,255,255,.12);border-color:#fff}
.btn-escuro{background:var(--azul-escuro);color:#fff}
.btn-escuro:hover{background:var(--azul-medio);transform:translateY(-2px)}

/* ---------- CABEÇALHO ---------- */
header{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  background:rgba(255,255,255,.97);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--cinza-borda);transition:.3s;
}
header.rolado{box-shadow:var(--sombra)}
.nav{display:flex;align-items:center;justify-content:space-between;height:var(--h)}

/* LOGO — substitua o bloco .logo-marca por: <img src="logo.png" alt="NL Engenharia"> */
.logo{display:flex;align-items:center;gap:12px}
.logo-marca{
  width:46px;height:46px;border-radius:10px;flex-shrink:0;
  background:linear-gradient(135deg,var(--azul-escuro),var(--verde));
  color:#fff;display:grid;place-items:center;font-weight:800;font-size:1.05rem;letter-spacing:.5px;
}
.logo-txt strong{display:block;color:var(--azul-escuro);font-size:1.22rem;line-height:1.2;letter-spacing:.3px}
.logo-txt span{font-size:.74rem;color:var(--texto-suave);letter-spacing:1.6px;text-transform:uppercase}

.menu{display:flex;align-items:center;gap:30px;list-style:none}
.menu a{font-size:.93rem;font-weight:500;color:var(--texto-suave);position:relative;padding:6px 0;transition:.2s}
.menu a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--verde);transition:.3s}
.menu a:hover{color:var(--azul-escuro)}
.menu a:hover::after{width:100%}
.menu .btn{padding:11px 22px}
.menu .btn-primario,.menu .btn-primario:hover{color:#fff}
.menu .btn-primario::after{display:none}

.hamburguer{display:none;background:none;border:0;cursor:pointer;padding:8px}
.hamburguer span{display:block;width:26px;height:2.5px;background:var(--azul-escuro);margin:5px 0;border-radius:2px;transition:.3s}
.hamburguer.ativo span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.hamburguer.ativo span:nth-child(2){opacity:0}
.hamburguer.ativo span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

/* ---------- HERO ---------- */
.hero{
  margin-top:var(--h);padding:100px 0 110px;color:#fff;position:relative;overflow:hidden;
  background:linear-gradient(135deg,var(--azul-escuro) 0%,var(--azul-medio) 60%,#166E5C 100%);
}
.hero::before{
  content:"";position:absolute;inset:0;opacity:.13;
  background-image:linear-gradient(rgba(255,255,255,.6) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.6) 1px,transparent 1px);
  background-size:56px 56px;
}
.hero .container{position:relative;z-index:2;max-width:900px}
.selo{
  display:inline-flex;align-items:center;gap:9px;background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.25);padding:8px 18px;border-radius:100px;
  font-size:.8rem;letter-spacing:.6px;margin-bottom:26px;text-transform:uppercase;font-weight:600;
}
.selo i{width:7px;height:7px;border-radius:50%;background:#4ADE80;box-shadow:0 0 0 4px rgba(74,222,128,.28)}
.hero h1{font-size:clamp(2rem,4.6vw,3.35rem);line-height:1.15;font-weight:800;letter-spacing:-.5px;margin-bottom:22px}
.hero h1 em{font-style:normal;color:#5EE0B0}
.hero p{font-size:clamp(1rem,1.6vw,1.16rem);color:rgba(255,255,255,.88);max-width:660px;margin-bottom:36px}
.hero-acoes{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:56px}
.hero-numeros{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:18px;max-width:760px}
.num{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);border-radius:12px;padding:20px 22px;backdrop-filter:blur(4px)}
.num strong{display:block;font-size:1.85rem;font-weight:800;color:#5EE0B0;line-height:1}
.num span{font-size:.82rem;color:rgba(255,255,255,.78);display:block;margin-top:7px}

/* ---------- BLOCOS GERAIS ---------- */
section{padding:92px 0}
.fundo-cinza{background:var(--cinza-fundo)}
.titulo{text-align:center;max-width:720px;margin:0 auto 58px}
.titulo .tag{
  display:inline-block;color:var(--verde);font-size:.78rem;font-weight:700;
  letter-spacing:2px;text-transform:uppercase;margin-bottom:14px;
}
.titulo h2{font-size:clamp(1.6rem,3.2vw,2.3rem);color:var(--azul-escuro);font-weight:800;letter-spacing:-.4px;margin-bottom:16px}
.titulo p{color:var(--texto-suave);font-size:1.02rem}
.titulo.esq{text-align:left;margin-inline:0}

/* ---------- SOBRE ---------- */
.sobre-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.sobre-txt p{color:var(--texto-suave);margin-bottom:18px}
.sobre-lista{list-style:none;margin-top:26px;display:grid;gap:14px}
.sobre-lista li{display:flex;gap:13px;align-items:flex-start;font-size:.96rem}
.check{
  width:23px;height:23px;border-radius:50%;background:var(--verde-claro);color:var(--verde);
  display:grid;place-items:center;font-size:.72rem;font-weight:900;flex-shrink:0;margin-top:3px;
}
/* PLACEHOLDER DE FOTO — troque a div .foto-placeholder por <img src="sua-foto.jpg"> */
.foto-placeholder{
  aspect-ratio:4/3;border-radius:var(--radius);border:2px dashed #B9C6D6;
  background:linear-gradient(135deg,#EEF3F8,#E1EAF3);
  display:grid;place-items:center;text-align:center;padding:30px;color:var(--texto-suave);
}
.foto-placeholder .icone{font-size:2.6rem;margin-bottom:10px;opacity:.55}
.foto-placeholder small{font-size:.8rem;display:block;margin-top:6px;opacity:.75}

/* ---------- SERVIÇOS ---------- */
.servicos{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:26px}
.card-servico{
  background:#fff;border:1px solid var(--cinza-borda);border-radius:var(--radius);
  padding:34px 30px;transition:.3s;position:relative;overflow:hidden;
}
.card-servico::before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:var(--verde);transform:scaleX(0);transform-origin:left;transition:.35s}
.card-servico:hover{transform:translateY(-6px);box-shadow:var(--sombra-forte);border-color:transparent}
.card-servico:hover::before{transform:scaleX(1)}
.card-ico{
  width:56px;height:56px;border-radius:13px;background:var(--verde-claro);
  display:grid;place-items:center;font-size:1.55rem;margin-bottom:20px;
}
.card-servico h3{color:var(--azul-escuro);font-size:1.16rem;margin-bottom:8px;font-weight:700}
.card-servico > p{color:var(--texto-suave);font-size:.9rem;margin-bottom:20px}
.card-servico ul{list-style:none;display:grid;gap:12px}
.card-servico li{font-size:.885rem;padding-left:18px;position:relative;color:var(--texto)}
.card-servico li::before{content:"";position:absolute;left:0;top:9px;width:7px;height:7px;border-radius:2px;background:var(--verde)}
.card-servico li b{color:var(--azul-escuro);font-weight:600}

/* ---------- CASES ---------- */
.cases{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:30px}
.case{background:#fff;border-radius:var(--radius);box-shadow:var(--sombra);overflow:hidden;display:flex;flex-direction:column}
.case-topo{background:linear-gradient(135deg,var(--azul-escuro),var(--azul-medio));color:#fff;padding:26px 30px}
.case-topo .setor{font-size:.7rem;letter-spacing:1.8px;text-transform:uppercase;color:#5EE0B0;font-weight:700;display:block;margin-bottom:8px}
.case-topo h3{font-size:1.2rem;font-weight:700;line-height:1.35}
.case-corpo{padding:28px 30px 32px;display:grid;gap:20px;flex:1}
.etapa{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:flex-start}
.etapa-num{
  width:30px;height:30px;border-radius:8px;background:var(--verde-claro);color:var(--verde);
  display:grid;place-items:center;font-size:.75rem;font-weight:800;flex-shrink:0;
}
.etapa h4{font-size:.76rem;letter-spacing:1.4px;text-transform:uppercase;color:var(--texto-suave);margin-bottom:4px;font-weight:700}
.etapa p{font-size:.92rem;color:var(--texto)}
.etapa.resultado .etapa-num{background:var(--verde);color:#fff}
.etapa.resultado p{font-weight:600;color:var(--azul-escuro)}

/* ---------- DEPOIMENTOS ---------- */
.depoimentos{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:26px}
.depoimento{
  background:#fff;border:1px solid var(--cinza-borda);border-radius:var(--radius);
  padding:32px 30px;display:flex;flex-direction:column;gap:18px;
}
.depoimento .aspas{font-size:2.2rem;color:var(--verde);line-height:1;font-weight:800}
.depoimento p{color:var(--texto);font-size:.94rem;flex:1}
.depoimento-autor{display:flex;align-items:center;gap:12px}
.depoimento-avatar{
  width:44px;height:44px;border-radius:50%;background:var(--verde-claro);color:var(--verde);
  display:grid;place-items:center;font-weight:800;font-size:.95rem;flex-shrink:0;
}
.depoimento-autor strong{display:block;color:var(--azul-escuro);font-size:.92rem}
.depoimento-autor span{font-size:.8rem;color:var(--texto-suave)}

/* ---------- DIFERENCIAIS ---------- */
.diferenciais{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:26px}
.dif{background:#fff;border-radius:var(--radius);padding:36px 32px;border:1px solid var(--cinza-borda);transition:.3s}
.dif:hover{transform:translateY(-5px);box-shadow:var(--sombra-forte)}
.dif-ico{width:54px;height:54px;border-radius:50%;background:var(--azul-escuro);color:#fff;display:grid;place-items:center;font-size:1.4rem;margin-bottom:20px}
.dif h3{color:var(--azul-escuro);font-size:1.1rem;margin-bottom:10px;font-weight:700}
.dif p{color:var(--texto-suave);font-size:.93rem}

/* ---------- FAQ ---------- */
.faq{max-width:820px;margin:0 auto;display:grid;gap:14px}
.faq details{
  background:#fff;border:1px solid var(--cinza-borda);border-radius:12px;
  padding:6px 26px;transition:.25s;
}
.faq details[open]{border-color:var(--verde);box-shadow:var(--sombra)}
.faq summary{
  padding:18px 0;font-weight:700;color:var(--azul-escuro);cursor:pointer;
  list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:.98rem;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"+";flex-shrink:0;font-size:1.3rem;font-weight:400;color:var(--verde);transition:.25s;
}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 0 20px;color:var(--texto-suave);font-size:.92rem}

/* ---------- FAIXA CTA ---------- */
.faixa-cta{
  background:linear-gradient(135deg,var(--azul-escuro),#14533F);color:#fff;
  padding:70px 0;text-align:center;
}
.faixa-cta h2{font-size:clamp(1.5rem,3vw,2.15rem);font-weight:800;margin-bottom:14px;letter-spacing:-.3px}
.faixa-cta p{color:rgba(255,255,255,.85);max-width:600px;margin:0 auto 32px}
.faixa-acoes{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ---------- CONTATO ---------- */
.contato-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:52px;align-items:start}
.contato-info{display:grid;gap:22px;margin-top:8px}
.info-item{display:flex;gap:16px;align-items:flex-start}
.info-ico{width:46px;height:46px;border-radius:11px;background:var(--verde-claro);color:var(--verde);display:grid;place-items:center;font-size:1.15rem;flex-shrink:0}
.info-item h4{font-size:.95rem;color:var(--azul-escuro);margin-bottom:3px;font-weight:700}
.info-item p{font-size:.92rem;color:var(--texto-suave)}
.preencher{color:#C2410C;background:#FFF4ED;padding:1px 7px;border-radius:5px;font-weight:600;font-size:.86rem;border:1px dashed #FDBA74}

form{background:#fff;border:1px solid var(--cinza-borda);border-radius:var(--radius);padding:36px;box-shadow:var(--sombra)}
.campo{margin-bottom:18px}
.campo label{display:block;font-size:.85rem;font-weight:600;color:var(--azul-escuro);margin-bottom:7px}
.campo input,.campo select,.campo textarea{
  width:100%;padding:13px 15px;border:1px solid var(--cinza-borda);border-radius:8px;
  font-family:inherit;font-size:.93rem;color:var(--texto);background:#FCFDFE;transition:.2s;
}
.campo input:focus,.campo select:focus,.campo textarea:focus{
  outline:0;border-color:var(--verde);background:#fff;box-shadow:0 0 0 3px rgba(22,160,117,.13);
}
.campo textarea{resize:vertical;min-height:110px}
.linha-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
form .btn{width:100%;justify-content:center;margin-top:6px}
.aviso-form{font-size:.78rem;color:var(--texto-suave);text-align:center;margin-top:14px}
.msg-ok{
  display:none;background:var(--verde-claro);border:1px solid var(--verde);color:#0F6B4F;
  padding:14px;border-radius:8px;font-size:.9rem;text-align:center;margin-top:16px;
}

/* ---------- RODAPÉ ---------- */
footer{background:var(--azul-escuro);color:rgba(255,255,255,.72);padding:64px 0 0}
.rodape-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:40px;padding-bottom:48px}
.rodape-col h4{color:#fff;font-size:.88rem;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:20px;font-weight:700}
.rodape-col ul{list-style:none;display:grid;gap:11px}
.rodape-col li{font-size:.9rem}
.rodape-col a{transition:.2s}
.rodape-col a:hover{color:#5EE0B0}
.rodape-sobre p{font-size:.9rem;margin-top:18px;max-width:300px}
.rodape-logo .logo-txt strong{color:#fff}
.rodape-logo .logo-txt span{color:rgba(255,255,255,.55)}
.rodape-base{
  border-top:1px solid rgba(255,255,255,.12);padding:24px 0;
  display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:.83rem;
}

/* ---------- WHATSAPP FLUTUANTE ---------- */
.zap{
  position:fixed;right:22px;bottom:84px;z-index:900;width:58px;height:58px;border-radius:50%;
  background:#25D366;color:#fff;display:grid;place-items:center;
  box-shadow:0 8px 24px rgba(37,211,102,.42);transition:.3s;
}
.zap:hover{transform:scale(1.09)}
.zap svg{width:30px;height:30px;fill:#fff}

/* ---------- CLIENTES ---------- */
.clientes-sec{padding:62px 0}
.clientes-titulo{text-align:center;margin-bottom:36px}
.clientes-titulo span{
  font-size:.78rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  color:var(--texto-suave);
}
.clientes-titulo h2{
  font-size:clamp(1.25rem,2.4vw,1.6rem);color:var(--azul-escuro);
  font-weight:800;margin-top:10px;letter-spacing:-.3px;
}
.clientes{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px}
.cliente{
  background:#fff;border:1px solid var(--cinza-borda);border-radius:var(--radius);
  min-height:118px;padding:22px 18px;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:9px;text-align:center;
  filter:grayscale(1);opacity:.72;transition:.3s;
}
.cliente:hover{filter:grayscale(0);opacity:1;transform:translateY(-4px);box-shadow:var(--sombra-forte);border-color:transparent}
/* Marca em texto — substitua por <img src="clientes/nome.png" alt="Nome" class="cliente-logo"> */
.cliente-marca{
  font-size:1.24rem;font-weight:800;letter-spacing:-.5px;color:var(--azul-escuro);line-height:1.15;
}
.cliente-logo{max-height:52px;width:auto;object-fit:contain}
.cliente-seg{font-size:.72rem;letter-spacing:1.2px;text-transform:uppercase;color:var(--texto-suave);font-weight:600}
.clientes-nota{
  text-align:center;font-size:.82rem;color:var(--texto-suave);margin-top:26px;
}

/* ---------- ANIMAÇÃO DE ENTRADA ---------- */
.revelar{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.revelar.visivel{opacity:1;transform:none}

/* ---------- RESPONSIVO ---------- */
@media(max-width:960px){
  .sobre-grid,.contato-grid{grid-template-columns:1fr;gap:40px}
  .rodape-grid{grid-template-columns:1fr 1fr;gap:34px}
}
@media(max-width:768px){
  .hamburguer{display:block}
  .menu{
    position:fixed;top:var(--h);left:0;right:0;background:#fff;flex-direction:column;
    align-items:stretch;gap:0;padding:10px 5% 26px;border-bottom:1px solid var(--cinza-borda);
    box-shadow:var(--sombra);transform:translateY(-130%);opacity:0;pointer-events:none;transition:.32s;
  }
  .menu.aberto{transform:translateY(0);opacity:1;pointer-events:auto}
  .menu li{border-bottom:1px solid var(--cinza-borda)}
  .menu li:last-child{border:0;margin-top:14px}
  .menu a{display:block;padding:15px 4px;font-size:1rem}
  .menu .btn{justify-content:center;padding:14px}
  section{padding:66px 0}
  .hero{padding:70px 0 80px}
  .linha-2{grid-template-columns:1fr}
  form{padding:26px}
  .rodape-grid{grid-template-columns:1fr}
  .rodape-base{flex-direction:column;text-align:center}
}

/* ---------- SOBRE (sem foto) ---------- */
.sobre-grid.unico{grid-template-columns:1fr;max-width:900px;margin-inline:auto}
.sobre-grid.unico .sobre-lista{grid-template-columns:1fr 1fr;gap:14px 30px}

/* ---------- LINK DOS CARDS DE SERVICO ---------- */
.card-servico{display:flex;flex-direction:column}
.card-servico ul{flex:1}
.card-link{display:inline-block;margin-top:22px;color:var(--verde);font-weight:700;font-size:.9rem}
.card-link:hover{text-decoration:underline}

/* ---------- PAGINAS DE SERVICO ---------- */
.pagina-topo{
  margin-top:var(--h);padding:68px 0 62px;color:#fff;position:relative;overflow:hidden;
  background:linear-gradient(135deg,var(--azul-escuro) 0%,var(--azul-medio) 60%,#166E5C 100%);
}
.pagina-topo::before{
  content:"";position:absolute;inset:0;opacity:.13;
  background-image:linear-gradient(rgba(255,255,255,.6) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.6) 1px,transparent 1px);
  background-size:56px 56px;
}
.pagina-topo .container{position:relative;z-index:2}
.migalhas{font-size:.82rem;color:rgba(255,255,255,.72);margin-bottom:20px}
.migalhas a:hover{color:#5EE0B0}
.migalhas span{margin:0 7px;opacity:.6}
.pagina-topo h1{max-width:860px;font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.15;font-weight:800;letter-spacing:-.4px;margin-bottom:18px}
.pagina-topo .lead{font-size:clamp(1rem,1.5vw,1.14rem);color:rgba(255,255,255,.88);max-width:680px;margin-bottom:30px}
.pagina-grid{display:grid;grid-template-columns:1.6fr .9fr;gap:52px;align-items:start}
.bloco{margin-bottom:40px}
.bloco h2{font-size:1.32rem;color:var(--azul-escuro);font-weight:800;margin-bottom:16px;letter-spacing:-.2px}
.bloco p{color:var(--texto-suave);margin-bottom:14px}
.bloco ul{list-style:none;display:grid;gap:12px}
.bloco li{font-size:.96rem;padding-left:22px;position:relative}
.bloco li::before{content:"";position:absolute;left:0;top:10px;width:8px;height:8px;border-radius:2px;background:var(--verde)}
.bloco li b{color:var(--azul-escuro);font-weight:600}
.destaque-beneficio{background:var(--verde-claro);border-left:4px solid var(--verde);padding:20px 24px;border-radius:10px;color:var(--azul-escuro);font-size:.96rem}
.normas{font-size:.86rem;color:var(--texto-suave);border-top:1px solid var(--cinza-borda);padding-top:18px}
.lateral{position:sticky;top:96px;background:var(--cinza-fundo);border:1px solid var(--cinza-borda);border-radius:var(--radius);padding:30px}
.lateral h3{color:var(--azul-escuro);font-size:1.1rem;margin-bottom:8px;font-weight:800}
.lateral p{color:var(--texto-suave);font-size:.9rem;margin-bottom:6px}
.lateral .btn{width:100%;justify-content:center;margin-top:12px}
.lateral .btn-contorno{background:transparent;color:var(--azul-escuro);border-color:var(--azul-escuro)}
.lateral .btn-contorno:hover{background:var(--azul-escuro);color:#fff}
.lateral .dados{margin-top:20px;padding-top:18px;border-top:1px solid var(--cinza-borda);font-size:.86rem;color:var(--texto-suave);display:grid;gap:6px}
@media(max-width:960px){
  .pagina-grid{grid-template-columns:1fr;gap:36px}
  .lateral{position:static}
  .sobre-grid.unico .sobre-lista{grid-template-columns:1fr}
}
@media(max-width:768px){
  .pagina-topo{padding:52px 0 48px}
}
/* ---------- LINKS DE CONTATO ---------- */
.info-item a,.lateral .dados a,.rodape-col li a{transition:.2s}
.info-item a:hover,.lateral .dados a:hover{color:var(--verde);text-decoration:underline}

/* ---------- FUNDO AMBIENTAL (floresta) ---------- */
.hero::after,.pagina-topo::after{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:url(imagens/floresta.svg) right bottom/max(100%,1100px) auto no-repeat;
}
.hero::after{background-size:max(130%,1500px) auto}

/* ---------- TOPO DA HOME COM FOTO AMBIENTAL ---------- */
.hero{
  background:
    linear-gradient(90deg,rgba(15,44,76,.93) 0%,rgba(15,44,76,.82) 42%,rgba(15,44,76,.35) 75%,rgba(15,44,76,.10) 100%),
    url(imagens/hero-ambiental.jpg) center bottom/cover no-repeat,
    var(--azul-escuro);
}
.hero::before{opacity:.06}
.hero::after{display:none}
@media(max-width:768px){
  .hero{
    background:
      linear-gradient(180deg,rgba(15,44,76,.92) 0%,rgba(15,44,76,.82) 60%,rgba(15,44,76,.55) 100%),
      url(imagens/hero-ambiental.jpg) 78% bottom/cover no-repeat,
      var(--azul-escuro);
  }
}
/* ---------- LOGO MAIOR ---------- */
.logo{gap:14px}
.logo-img{height:68px;width:auto;border-radius:8px;object-fit:contain;flex-shrink:0}
.rodape-logo .logo-img{height:60px;background:#fff;padding:4px;border-radius:10px}
@media(max-width:768px){:root{--h:76px}.logo-img{height:54px}.logo-txt strong{font-size:1.1rem}}
