/* ===== Dados do cliente: troque aqui quando ele confirmar =====
   Nome no perfil do WhatsApp Business: "David Martelinho de Ouro"
   WhatsApp: (48) 99101-1401 -> 5548991011401 (variavel WA no script do fim)
   Endereco completo: NAO confirmado (so bairro Argentina, Criciuma)            */
:root{
  --fundo:#0b0b0c;--sup:#141416;--sup2:#1b1b1e;--linha:#2a2a2e;--linha2:#38383d;
  --txt:#f4f2ee;--txt2:#c3c0b8;--txt3:#8f8c85;
  --ouro:#d9a93c;--ouro2:#f0c862;--ouro-esc:#a87d1e;
  --wa:#25d366;
  --fh:'Archivo',system-ui,sans-serif;--fb:'Inter',system-ui,sans-serif;
  --raio:14px;--larg:1160px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--fundo);color:var(--txt);font-family:var(--fb);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--ouro2)}
h1,h2,h3{font-family:var(--fh);line-height:1.08;letter-spacing:-.02em;margin:0 0 16px}
h2{font-size:clamp(30px,4.4vw,46px);font-weight:800}
h3{font-size:21px;font-weight:700}
p{margin:0 0 16px}
.wrap{max-width:var(--larg);margin:0 auto;padding:0 20px}
.pular{position:absolute;left:-9999px;top:8px;background:var(--ouro);color:#111;padding:10px 16px;border-radius:8px;z-index:100;font-weight:700}
.pular:focus{left:12px}
:focus-visible{outline:3px solid var(--ouro2);outline-offset:3px;border-radius:6px}
.rotulo{display:inline-flex;align-items:center;gap:10px;font-family:var(--fh);font-weight:700;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--ouro2);margin-bottom:16px}
.rotulo::before{content:"";width:22px;height:2px;background:var(--ouro)}
.secao{padding:96px 0}
.secao-sup{background:var(--sup)}
.intro{max-width:720px;margin-bottom:44px}
.intro p{color:var(--txt2);font-size:18px}

/* botoes */
.botao{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 26px;border-radius:12px;font-family:var(--fh);font-weight:700;font-size:16.5px;text-decoration:none;border:2px solid transparent;cursor:pointer;position:relative;overflow:hidden;transition:transform .2s,background .2s,border-color .2s,box-shadow .2s,color .2s}
.botao-ouro{background:linear-gradient(180deg,var(--ouro2),var(--ouro));color:#16120a;box-shadow:0 1px 0 rgba(255,255,255,.35) inset}
.botao-ouro:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(217,169,60,.28),0 1px 0 rgba(255,255,255,.35) inset}
.botao-linha{background:transparent;color:var(--txt);border-color:var(--linha2)}
.botao-linha:hover{border-color:var(--ouro);color:var(--ouro2);transform:translateY(-2px)}
.botao::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.4),transparent);transform:skewX(-20deg);transition:left .6s ease;pointer-events:none}
.botao:hover::after{left:130%}
.botao svg{width:20px;height:20px;flex:0 0 20px}

/* cabecalho */
.topo{position:sticky;top:0;z-index:60;background:rgba(11,11,12,.72);-webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4);border-bottom:1px solid transparent;transition:border-color .3s,background .3s}
.topo.rolado{border-bottom-color:var(--linha);background:rgba(11,11,12,.9)}
.topo-in{display:flex;align-items:center;justify-content:space-between;gap:16px;height:72px}
.marca{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--txt)}
.marca-sigla{width:42px;height:42px;border-radius:10px;border:2px solid var(--ouro);display:grid;place-items:center;font-family:var(--fh);font-weight:900;font-size:16px;color:var(--ouro2);letter-spacing:-.02em;flex:0 0 42px}
.marca-nome{font-family:var(--fh);font-weight:800;font-size:17px;line-height:1.1}
.marca-nome small{display:block;font-weight:600;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ouro2)}
.nav{display:flex;align-items:center;gap:4px}
.nav a{color:var(--txt2);text-decoration:none;font-weight:500;font-size:15.5px;padding:8px 12px;border-radius:8px;transition:color .2s}
.nav a:hover{color:var(--txt)}
.nav .botao{min-height:44px;padding:0 18px;font-size:15px;margin-left:10px;color:#16120a}
.menu-botao{display:none;background:var(--sup2);border:1px solid var(--linha2);color:var(--txt);font:600 15px var(--fb);min-height:44px;padding:0 16px;border-radius:10px;cursor:pointer}
@media (max-width:920px){
  .menu-botao{display:inline-flex;align-items:center;gap:8px}
  .nav{position:absolute;left:0;right:0;top:72px;flex-direction:column;align-items:stretch;gap:0;background:#0f0f11;border-bottom:1px solid var(--linha);padding:8px 20px 20px;display:none}
  .nav.aberto{display:flex}
  .nav a{padding:14px 4px;border-bottom:1px solid var(--linha);font-size:17px}
  .nav .botao{margin:16px 0 0;min-height:52px}
  .marca-nome{font-size:15.5px}
}

/* hero */
.hero{position:relative;isolation:isolate;overflow:hidden;min-height:min(86vh,760px);display:flex;align-items:center;padding:88px 0 96px}
.hero-foto{position:absolute;inset:0;z-index:-2}
.hero-foto img{width:100%;height:100%;object-fit:cover;object-position:60% 50%;animation:aproxima-hero 14s ease-out both}
@keyframes aproxima-hero{from{transform:scale(1.08)}to{transform:scale(1)}}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(11,11,12,.96) 0%,rgba(11,11,12,.88) 42%,rgba(11,11,12,.45) 75%,rgba(11,11,12,.3)),linear-gradient(0deg,var(--fundo),transparent 30%)}
.hero-luz{position:absolute;z-index:-1;width:640px;height:640px;left:var(--lx,70%);top:var(--ly,40%);transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(217,169,60,.16),transparent 62%);transition:left .6s ease-out,top .6s ease-out;pointer-events:none}
.hero-grade{position:absolute;inset:-60px;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(240,200,98,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(240,200,98,.06) 1px,transparent 1px);background-size:56px 56px;animation:grade 24s linear infinite;-webkit-mask-image:radial-gradient(ellipse 60% 70% at 20% 50%,#000 20%,transparent 70%);mask-image:radial-gradient(ellipse 60% 70% at 20% 50%,#000 20%,transparent 70%)}
@keyframes grade{to{transform:translate(56px,56px)}}
.hero-texto{max-width:660px}
.hero h1{font-size:clamp(38px,6vw,68px);font-weight:900;letter-spacing:-.03em;margin-bottom:22px}
.hero h1 em{font-style:normal;background:linear-gradient(90deg,var(--ouro),var(--ouro2) 40%,#fff1c4 50%,var(--ouro2) 60%,var(--ouro));background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:brilho 6s ease-in-out infinite}
@keyframes brilho{50%{background-position:100% 0}}
.hero .apoio{font-size:clamp(17px,2vw,20px);color:var(--txt2);max-width:560px;margin-bottom:32px}
.hero-botoes{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:34px}
.rapidas{display:flex;flex-wrap:wrap;gap:10px 26px;list-style:none;padding:0;margin:0;color:var(--txt2);font-size:15.5px}
.rapidas li{display:flex;align-items:center;gap:9px}
.rapidas li::before{content:"";width:8px;height:8px;transform:rotate(45deg);background:var(--ouro)}
.hero-texto>*{animation:entra .85s cubic-bezier(.2,.7,.2,1) both}
.hero-texto>*:nth-child(2){animation-delay:.08s}.hero-texto>*:nth-child(3){animation-delay:.18s}.hero-texto>*:nth-child(4){animation-delay:.28s}.hero-texto>*:nth-child(5){animation-delay:.38s}
@keyframes entra{from{opacity:0;transform:translateY(18px);filter:blur(6px)}}

/* faixa */
.faixa{border-block:1px solid var(--linha);background:var(--sup);overflow:hidden}
.faixa-trilho{display:flex;width:max-content;animation:rola 36s linear infinite}
.faixa ul{display:flex;list-style:none;margin:0;padding:15px 0}
.faixa li{display:flex;align-items:center;gap:28px;padding-right:28px;font-family:var(--fh);font-weight:700;font-size:14px;letter-spacing:.16em;text-transform:uppercase;color:var(--txt2);white-space:nowrap}
.faixa li::after{content:"";width:7px;height:7px;transform:rotate(45deg);background:var(--ouro)}
@keyframes rola{to{transform:translateX(-50%)}}

/* servicos */
.cartoes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cartao{position:relative;overflow:hidden;background:var(--sup2);border:1px solid var(--linha);border-radius:var(--raio);padding:34px 28px 28px;display:flex;flex-direction:column;transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .35s,box-shadow .35s}
.cartao::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .3s;background:radial-gradient(360px circle at var(--mx,50%) var(--my,0%),rgba(217,169,60,.13),transparent 60%)}
.cartao:hover{transform:translateY(-6px);border-color:#4a4130;box-shadow:0 22px 44px rgba(0,0,0,.4)}
.cartao:hover::before{opacity:1}
.cartao-num{font-family:var(--fh);font-weight:900;font-size:44px;line-height:1;color:transparent;-webkit-text-stroke:1.5px #4b4b52;margin-bottom:22px}
.cartao p{color:var(--txt2);flex:1}
.cartao .botao{margin-top:10px;min-height:48px;font-size:15.5px;width:100%}
.aviso{margin-top:24px;color:var(--txt3);font-size:15px;display:flex;gap:10px;align-items:flex-start}
.aviso::before{content:"i" / "";flex:0 0 20px;height:20px;border-radius:50%;border:1.5px solid var(--txt3);display:grid;place-items:center;font:700 12px var(--fb);margin-top:2px}

/* trabalhos */
.nota-previa{display:inline-block;background:rgba(217,169,60,.1);border:1px solid rgba(217,169,60,.35);color:var(--ouro2);font-size:14.5px;padding:8px 14px;border-radius:10px;margin-bottom:34px}
.galeria{display:grid;grid-template-columns:1.3fr 1fr;grid-template-rows:auto auto;gap:18px}
.trabalho{position:relative;margin:0;border-radius:var(--raio);overflow:hidden;border:1px solid var(--linha);background:var(--sup2)}
.trabalho:first-child{grid-row:span 2}
.trabalho img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.trabalho:first-child img{aspect-ratio:auto;min-height:100%}
.trabalho:hover img{transform:scale(1.05)}
.trabalho figcaption{position:absolute;left:0;right:0;bottom:0;padding:40px 22px 18px;background:linear-gradient(0deg,rgba(0,0,0,.85),transparent);font-family:var(--fh);font-weight:700;font-size:18px}
.trabalho figcaption small{display:block;font:500 13px var(--fb);letter-spacing:.14em;text-transform:uppercase;color:var(--ouro2);margin-bottom:4px}
@supports (animation-timeline:view()){
  .trabalho img{animation:zoom-scroll linear both;animation-timeline:view();animation-range:entry 0% cover 55%}
  @keyframes zoom-scroll{from{transform:scale(1.15)}to{transform:scale(1)}}
}
/* ANTES E DEPOIS (pronto para as fotos reais): troque um <figure class="trabalho"> por:
   <figure class="antes-depois" style="--pos:50%">
     <img src="img/depois.webp" alt="Depois do reparo"><img class="antes" src="img/antes.webp" alt="Antes do reparo">
     <input type="range" min="0" max="100" value="50" aria-label="Comparar antes e depois">
   </figure>  (o script do fim ja faz o controle funcionar) */
.antes-depois{position:relative;margin:0;border-radius:var(--raio);overflow:hidden;border:1px solid var(--linha)}
.antes-depois img{width:100%;aspect-ratio:4/3;object-fit:cover}
.antes-depois .antes{position:absolute;inset:0;height:100%;clip-path:inset(0 calc(100% - var(--pos)) 0 0)}
.antes-depois input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize}
.antes-depois::after{content:"";position:absolute;top:0;bottom:0;left:var(--pos);width:3px;background:var(--ouro2);transform:translateX(-50%);pointer-events:none}

/* como funciona */
.passos{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:passo;position:relative;list-style:none;padding:0;margin:0 0 40px}
.passo{background:var(--sup2);border:1px solid var(--linha);border-radius:var(--raio);padding:26px 22px;position:relative;z-index:1;transition:border-color .3s,transform .3s}
.passo:hover{border-color:#4a4130;transform:translateY(-4px)}
.passo::before{counter-increment:passo;content:counter(passo) / "";width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--fundo);border:2px solid var(--ouro);color:var(--ouro2);font-family:var(--fh);font-weight:800;font-size:18px;margin-bottom:18px}
.passo h3{font-size:19px}
.passo p{color:var(--txt2);font-size:16px;margin:0}
@media (min-width:921px){
  .passos::after{content:"";position:absolute;left:44px;right:44px;top:48px;height:2px;background:linear-gradient(90deg,var(--ouro),var(--ouro-esc));transform-origin:0 50%;transform:scaleX(0);z-index:0}
  @supports (animation-timeline:view()){.passos::after{animation:cresce linear both;animation-timeline:view();animation-range:entry 40% cover 55%}}
}
@keyframes cresce{to{transform:scaleX(1)}}

/* sobre */
.sobre{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.sobre-texto p{color:var(--txt2);font-size:18px}
.sobre-lista{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.sobre-lista li{background:var(--sup2);border:1px solid var(--linha);border-radius:12px;padding:18px 20px;display:flex;gap:14px;align-items:center;font-weight:600}
.sobre-lista li span::before{content:"";width:10px;height:10px;transform:rotate(45deg);background:var(--ouro)}
.sobre-lista li span{width:36px;height:36px;flex:0 0 36px;border-radius:9px;background:rgba(217,169,60,.12);display:grid;place-items:center;color:var(--ouro2);font-family:var(--fh);font-weight:800}

/* formulario */
.form-grade{display:grid;grid-template-columns:1fr 1.15fr;gap:40px;align-items:start}
.form{background:var(--sup2);border:1px solid var(--linha);border-radius:18px;padding:30px}
.campos{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.campo{display:flex;flex-direction:column;gap:7px}
.campo-todo{grid-column:1/-1}
.campo label{font-weight:600;font-size:15px}
.campo label small{color:var(--txt3);font-weight:400}
.campo input,.campo select,.campo textarea{width:100%;background:var(--fundo);border:1.5px solid var(--linha2);color:var(--txt);border-radius:10px;font:16px var(--fb);padding:13px 14px;min-height:50px;transition:border-color .2s,box-shadow .2s}
.campo textarea{min-height:96px;resize:vertical}
.campo select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--txt2) 50%),linear-gradient(135deg,var(--txt2) 50%,transparent 50%);background-position:calc(100% - 20px) 22px,calc(100% - 15px) 22px;background-size:5px 5px;background-repeat:no-repeat;padding-right:40px}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:none;border-color:var(--ouro);box-shadow:0 0 0 3px rgba(217,169,60,.22)}
.form .botao{width:100%;margin-top:22px}
.form-nota{color:var(--txt3);font-size:14px;margin:14px 0 0}
.previa-msg{margin-top:20px;background:var(--fundo);border:1px dashed var(--linha2);border-radius:12px;padding:16px 18px;font-size:15px;color:var(--txt2);white-space:pre-wrap}
.previa-msg[hidden]{display:none}
.previa-msg b{display:block;color:var(--ouro2);font-size:13px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}

/* faq */
.faq{max-width:820px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--linha)}
.faq-item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 2px;font-family:var(--fh);font-weight:700;font-size:19px}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";font-size:28px;font-weight:400;color:var(--ouro2);transition:transform .3s}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item summary:hover{color:var(--ouro2)}
.faq-item p{color:var(--txt2);padding:0 2px 22px;margin:0;animation:abre .35s ease}
@keyframes abre{from{opacity:0;transform:translateY(-6px)}}

/* chamada final */
.final{position:relative;overflow:hidden;text-align:center;padding:100px 0;background:radial-gradient(ellipse 60% 80% at 50% 120%,rgba(217,169,60,.22),transparent 70%),var(--sup);border-top:1px solid var(--linha)}
.final h2{max-width:720px;margin:0 auto 16px}
.final p{color:var(--txt2);font-size:19px;max-width:560px;margin:0 auto 32px}

/* rodape */
.rodape{padding:56px 0 30px;border-top:1px solid var(--linha);font-size:15.5px;color:var(--txt2)}
.rodape-grade{display:flex;flex-wrap:wrap;justify-content:space-between;gap:30px;margin-bottom:34px}
.rodape a{color:var(--txt2);text-decoration:none}
.rodape a:hover{color:var(--ouro2)}
.rodape-info{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:6px}
.rodape-base{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:24px;border-top:1px solid var(--linha);font-size:14px;color:var(--txt3)}
.credito{display:inline-flex;align-items:baseline;gap:7px;padding:7px 14px;border:1px solid var(--linha2);border-radius:999px;font-size:13.5px;transition:border-color .25s,color .25s}
.credito small{font-size:12.5px;color:var(--txt3)}
.credito b{font-family:var(--fh);color:var(--txt)}
.credito:hover{border-color:var(--ouro)}

/* whatsapp flutuante */
.wa-flutuante{position:fixed;right:18px;bottom:18px;z-index:70;width:60px;height:60px;border-radius:50%;background:var(--wa);display:grid;place-items:center;box-shadow:0 10px 26px rgba(0,0,0,.45);transition:transform .2s}
.wa-flutuante svg{width:30px;height:30px;fill:#fff}
.wa-flutuante:hover{transform:scale(1.08)}
.wa-flutuante::before{content:"";position:absolute;inset:0;border-radius:50%;background:var(--wa);z-index:-1;animation:pulso 2.8s ease-out infinite}
@keyframes pulso{0%{transform:scale(1);opacity:.5}80%,100%{transform:scale(1.6);opacity:0}}

/* progresso e entrada */
.progresso{position:fixed;top:0;left:0;right:0;height:3px;z-index:80;background:linear-gradient(90deg,var(--ouro-esc),var(--ouro2));transform-origin:0 50%;transform:scaleX(0);pointer-events:none}
@supports (animation-timeline:scroll()){.progresso{animation:cresce linear both;animation-timeline:scroll(root)}}
.js .revelar{opacity:0;transform:translateY(24px);filter:blur(4px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1),filter .7s;transition-delay:var(--d,0s)}
.js .revelar.visivel{opacity:1;transform:none;filter:none}

@media (max-width:920px){
  .cartoes,.passos{grid-template-columns:1fr 1fr}
  .sobre,.form-grade{grid-template-columns:1fr;gap:32px}
}
@media (max-width:640px){
  body{font-size:16.5px}
  .secao{padding:72px 0}
  .cartoes,.passos,.campos{grid-template-columns:1fr}
  .galeria{grid-template-columns:1fr}
  .trabalho:first-child{grid-row:auto}
  .trabalho:first-child img{aspect-ratio:4/3}
  .hero{min-height:auto;padding:64px 0 72px}
  .hero::before{background:linear-gradient(0deg,rgba(11,11,12,.97) 30%,rgba(11,11,12,.75) 70%,rgba(11,11,12,.55))}
  .hero-botoes .botao{width:100%}
  .form{padding:22px}
  .marca-nome small{display:none}
}
@media (max-width:380px){.botao{padding:0 16px;font-size:15.5px}}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .js .revelar{opacity:1;transform:none;filter:none}
  .progresso{display:none}
  .faixa-trilho{flex-wrap:wrap}
}

/* ===== Paginas internas ===== */
.nav a[aria-current="page"]{color:var(--ouro2)}
.pg-topo{position:relative;isolation:isolate;overflow:hidden;padding:84px 0 64px;border-bottom:1px solid var(--linha);background:radial-gradient(ellipse 70% 90% at 85% 0%,rgba(217,169,60,.12),transparent 60%),var(--fundo)}
.pg-topo h1{font-size:clamp(34px,5vw,58px);font-weight:900;letter-spacing:-.03em;max-width:860px;margin-bottom:18px}
.pg-topo h1 em{font-style:normal;background:linear-gradient(90deg,var(--ouro),var(--ouro2) 40%,#fff1c4 50%,var(--ouro2) 60%,var(--ouro));background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:brilho 6s ease-in-out infinite}
.pg-topo .apoio{color:var(--txt2);font-size:clamp(17px,2vw,19px);max-width:640px;margin:0}
.pg-topo .wrap>*{animation:entra .85s cubic-bezier(.2,.7,.2,1) both}
.pg-topo .wrap>*:nth-child(2){animation-delay:.06s}.pg-topo .wrap>*:nth-child(3){animation-delay:.14s}.pg-topo .wrap>*:nth-child(4){animation-delay:.22s}
.migalha{font-size:14px;color:var(--txt3);margin-bottom:22px}
.migalha a{color:var(--txt2);text-decoration:none}
.migalha a:hover{color:var(--ouro2)}
.migalha span{margin:0 6px}

.artigo-grade{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start}
.prosa{max-width:720px}
.prosa h2{font-size:clamp(26px,3.2vw,34px);margin-top:40px}
.prosa h2:first-child{margin-top:0}
.prosa p{color:var(--txt2);font-size:18px}
.prosa .trabalho{margin:28px 0}
.prosa .trabalho img{aspect-ratio:4/3}
.lado{position:sticky;top:96px;display:grid;gap:16px}
.lado img{border-radius:var(--raio);border:1px solid var(--linha);aspect-ratio:4/3;object-fit:cover}
.lado .botao{width:100%}
.caixa-lado{background:var(--sup2);border:1px solid var(--linha);border-radius:var(--raio);padding:22px}
.caixa-lado b{display:block;font-family:var(--fh);font-size:17px;margin-bottom:10px}
.caixa-lado ul{margin:0;padding-left:18px;display:grid;gap:8px}
.caixa-lado p{color:var(--txt2);font-size:15.5px;margin-bottom:10px}
.meta-artigo{font-size:14.5px!important;color:var(--txt3)!important;border-bottom:1px solid var(--linha);padding-bottom:16px;margin-bottom:24px}

.lacuna{border:1.5px dashed rgba(217,169,60,.45);background:rgba(217,169,60,.05);border-radius:12px;padding:18px 20px;margin:0 0 20px;color:var(--txt2);font-size:16px}
.lacuna b{display:block;color:var(--ouro2);font-family:var(--fh);font-size:13px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px}
.cta-artigo{margin-top:36px;background:var(--sup2);border:1px solid #4a4130;border-radius:var(--raio);padding:24px}
.cta-artigo p{color:var(--txt)!important}

.sobre-lista li span:empty{background:none}
.sobre-lista li span:empty::before{content:"";width:10px;height:10px;transform:rotate(45deg);background:var(--ouro)}

/* blog */
.nota-blog{background:linear-gradient(135deg,rgba(217,169,60,.10),rgba(217,169,60,.02));border:1px solid rgba(217,169,60,.35);border-radius:18px;padding:36px;margin-bottom:56px;max-width:900px}
.nota-blog h2{font-size:clamp(24px,3vw,32px)}
.nota-blog p{color:var(--txt2);font-size:17.5px}
.nota-blog .botao{margin-top:8px}
.grupo-temas{margin-bottom:44px}
.grupo-titulo{font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--txt3);padding-bottom:12px;border-bottom:1px solid var(--linha);margin-bottom:20px}
.temas{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tema{position:relative;overflow:hidden;background:var(--sup2);border:1px solid var(--linha);border-radius:var(--raio);padding:24px 22px 20px;transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .35s}
.tema::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .3s;background:radial-gradient(320px circle at var(--mx,50%) var(--my,0%),rgba(217,169,60,.12),transparent 60%)}
.tema:hover{transform:translateY(-4px);border-color:#4a4130}
.tema:hover::before{opacity:1}
.tema p{color:var(--txt2);font-size:15.5px;margin:0}
.tema .busca{display:flex;gap:10px;align-items:flex-start;color:var(--txt);font-family:var(--fh);font-weight:700;font-size:18px;line-height:1.3;margin:14px 0 10px}
.busca span{flex:0 0 26px;height:26px;border-radius:50%;background:#fff;color:#4285f4;display:grid;place-items:center;font:800 14px var(--fb)}
.em-breve{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ouro2);border:1px solid rgba(217,169,60,.4);border-radius:999px;padding:3px 10px}

/* Pit Stop: sigla em escudo (como o selo da marca) e selo ACIC */
.marca-sigla{border:0;border-radius:0;background:linear-gradient(160deg,var(--ouro2),var(--ouro) 55%,var(--ouro-esc));color:#0b0b0c;clip-path:polygon(50% 0,100% 13%,100% 60%,50% 100%,0 60%,0 13%);font-size:15px;padding-bottom:4px}
.selo-acic{display:flex;gap:16px;align-items:center;margin-top:26px;padding:16px 18px;border:1px solid rgba(217,169,60,.4);border-radius:14px;background:rgba(217,169,60,.06);max-width:520px}
.selo-acic b{display:block;font-family:var(--fh);color:var(--ouro2);font-size:16px}
.selo-acic small{color:var(--txt2);font-size:14.5px}
.selo-acic i{flex:0 0 44px;height:48px;background:linear-gradient(160deg,var(--ouro2),var(--ouro-esc));clip-path:polygon(50% 0,100% 13%,100% 60%,50% 100%,0 60%,0 13%);display:grid;place-items:center;font:900 13px var(--fh);color:#0b0b0c;font-style:normal}
.mapa-link{display:inline-block;margin-top:6px}
.form-grade>*,.sobre>*{min-width:0}
a[href^="mailto:"]{overflow-wrap:anywhere}

@media (max-width:920px){
  .artigo-grade{grid-template-columns:1fr;gap:36px}
  .lado{position:static}
  .temas{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .temas{grid-template-columns:1fr}
  .nota-blog{padding:24px}
  .pg-topo{padding:56px 0 48px}
}
.marca-logo{width:48px;height:48px;flex:0 0 48px;border-radius:10px;object-fit:cover;box-shadow:0 0 0 1px rgba(217,169,60,.45)}
.selo-logo{width:min(220px,60%);border-radius:18px;box-shadow:0 0 0 1px rgba(217,169,60,.35),0 20px 50px rgba(0,0,0,.45);margin-bottom:22px}

/* ===== Padrao agencia (Teles & Barbosa) com as cores do logo da Pit Stop: preto, cromado e o dourado claro das letras ===== */
:root{
  --fundo:#09090a;--sup:#111113;--sup2:#17171a;--linha:#26262a;--linha2:#37373d;
  --ouro:#e4c45e;--ouro2:#f6e7a6;--ouro-esc:#9e7c28;--cromo:#cfd1d6;
  --ouro-grad:linear-gradient(180deg,#fff6c9 0%,#f1d77c 38%,#d9b24a 64%,#9e7c28 100%);
  --cromo-grad:linear-gradient(180deg,#f4f5f7 0%,#b9bcc3 45%,#6d7078 55%,#d5d7dc 100%);
  --fh:'Inter Tight',system-ui,sans-serif;--fs:'Source Serif 4',Georgia,serif;--fb:'Inter',system-ui,sans-serif;
}
body{background:var(--fundo)}
h1,h2,h3{font-family:var(--fh)}
h1,h2{font-weight:600;letter-spacing:-.04em}
h2 em,.pg-topo h1 em{font-family:var(--fs);font-style:italic;font-weight:600;letter-spacing:-.02em;background:var(--ouro-grad);-webkit-background-clip:text;background-clip:text;color:transparent;animation:none}
.botao{border-radius:999px;font-weight:650}
.botao-ouro{background:var(--ouro-grad);color:#15120a;box-shadow:0 1px 0 rgba(255,255,255,.5) inset,0 10px 30px rgba(228,196,94,.18)}
.botao-linha{border-color:var(--linha2);background:rgba(255,255,255,.02)}
.rotulo::before{background:var(--cromo-grad)}
.cartao-num{-webkit-text-stroke:1.2px #55565c}

/* cabecalho: logo real recortado */
.marca-logo{width:auto;height:46px;flex:0 0 auto;border-radius:0;box-shadow:none;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(0,0,0,.5))}
.marca-nome{font-weight:700;letter-spacing:-.02em}
.marca-nome small{font-family:var(--fb);font-weight:600;font-size:10.5px;letter-spacing:.16em;color:var(--cromo)}

/* graos, cortina, preloader, cursor */
.grao{position:fixed;inset:0;z-index:9990;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.cortina{position:fixed;inset:0;z-index:9998;pointer-events:none;background:var(--fundo);transform:scaleY(0);transform-origin:50% 100%;transition:transform .42s cubic-bezier(.7,0,.3,1)}
.cortina::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--ouro-grad)}
.cort-out .cortina{transform:scaleY(1)}
.cort-in .cortina{transform:scaleY(1);transform-origin:50% 0;animation:cort-sai .7s .1s cubic-bezier(.7,0,.3,1) forwards}
@keyframes cort-sai{to{transform:scaleY(0)}}
.pre{display:none}
.pre-on .pre{display:flex;position:fixed;inset:0;z-index:10000;background:var(--fundo);flex-direction:column;align-items:center;justify-content:center;gap:22px;transition:transform .5s cubic-bezier(.7,0,.3,1)}
.pre img{width:150px;height:auto;animation:pre-logo .9s cubic-bezier(.2,.8,.2,1) both}
.pre-n{font:600 13px var(--fb);letter-spacing:.3em;color:var(--cromo);font-variant-numeric:tabular-nums}
.pre-sai .pre{transform:translateY(-100%)}
@keyframes pre-logo{from{opacity:0;transform:scale(.86) translateY(10px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
.cur{display:none}
.cur-on .cur{display:block;position:fixed;left:0;top:0;z-index:9995;pointer-events:none}
.cur span{position:absolute;left:-6px;top:-6px;width:12px;height:12px;border-radius:50%;background:var(--ouro);display:grid;place-items:center;font:700 0px var(--fb);color:#15120a;letter-spacing:.06em;text-transform:uppercase;transition:width .3s,height .3s,left .3s,top .3s,font-size .2s,background .3s}
.cur.big span{width:72px;height:72px;left:-36px;top:-36px;font-size:11px;background:var(--ouro-grad)}

/* hero: titulo + antes x depois */
.hero.hero-ag{min-height:auto;padding:72px 0 88px}
.hero-ag::before{background:radial-gradient(ellipse 60% 60% at 80% 30%,rgba(228,196,94,.10),transparent 60%),radial-gradient(ellipse 50% 50% at 10% 90%,rgba(207,209,214,.06),transparent 60%)}
.hero-ag .wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center}
.hero-ag .hero-texto{max-width:none}
.hero-ag h1{font-size:clamp(42px,6.4vw,86px);font-weight:600;line-height:.98;letter-spacing:-.05em;margin-bottom:26px}
.hero-ag h1 em{font-family:var(--fs);font-style:italic;font-weight:600;letter-spacing:-.03em;background:var(--ouro-grad);-webkit-background-clip:text;background-clip:text;color:transparent;animation:none;padding-right:.06em}
.mesh{position:absolute;inset:-10%;z-index:-1;pointer-events:none;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.mesh i{position:absolute;border-radius:50%;filter:blur(90px);opacity:.28;animation:flutua 18s ease-in-out infinite alternate}
.mesh i:nth-child(1){width:46vw;height:46vw;max-width:620px;max-height:620px;right:2%;top:-8%;background:#d9b24a}
.mesh i:nth-child(2){width:34vw;height:34vw;max-width:460px;max-height:460px;left:-6%;bottom:-14%;background:#8d9098;animation-duration:22s}
.mesh i:nth-child(3){width:22vw;height:22vw;max-width:300px;max-height:300px;left:42%;top:30%;background:#6b5520;animation-duration:26s}
@keyframes flutua{to{transform:translate3d(6%,8%,0) scale(1.12)}}

/* titulo cinetico */
.kin .w{display:inline-block;overflow:hidden;vertical-align:top;padding:.04em .02em .12em;margin:-.04em -.02em -.12em}
.kin .ch{display:inline-block;transform:translateY(115%);animation:sobe-ch .95s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(var(--d0,80ms) + var(--i)*42ms)}
.kin em{background:none!important;color:inherit!important;-webkit-text-fill-color:currentColor}
/* itálico passa da caixa da letra: folga lateral para a mascara e o degrade nao cortarem o "f" */
.kin em .w{padding-left:.18em;padding-right:.18em;margin-left:-.18em;margin-right:-.18em}
.kin em .ch{padding:0 .1em;margin:0 -.1em;background:var(--ouro-grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
@keyframes sobe-ch{to{transform:none}}

/* antes x depois */
.ba{position:relative;margin:0;border-radius:24px;overflow:hidden;border:1px solid var(--linha2);background:var(--sup2);aspect-ratio:4/3.2;box-shadow:0 40px 90px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.03) inset;--x:50%;isolation:isolate}
.ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 50%}
.ba .ba-antes{filter:grayscale(1) brightness(.6) contrast(.92) sepia(.12);clip-path:inset(0 calc(100% - var(--x)) 0 0)}
.ba-linha{position:absolute;top:0;bottom:0;left:var(--x);width:2px;margin-left:-1px;background:var(--ouro-grad);z-index:2;pointer-events:none}
.ba-linha::after{content:"";position:absolute;top:50%;left:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:rgba(9,9,10,.75);border:2px solid var(--ouro);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 8px 24px rgba(0,0,0,.5)}
.ba-linha::before{content:"\2039\00a0\203A";position:absolute;top:50%;left:50%;transform:translate(-50%,-52%);z-index:1;color:var(--ouro2);font:700 20px var(--fb);white-space:nowrap}
.ba input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:3;margin:0}
.ba-tag{position:absolute;top:16px;z-index:2;font:700 11.5px var(--fb);letter-spacing:.16em;text-transform:uppercase;padding:7px 12px;border-radius:999px;background:rgba(9,9,10,.7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12);pointer-events:none}
.ba-tag.a{left:16px;color:var(--cromo)}.ba-tag.d{right:16px;color:var(--ouro2)}
.ba-dica{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);z-index:2;font:600 12.5px var(--fb);color:#15120a;background:var(--ouro-grad);padding:7px 14px;border-radius:999px;pointer-events:none;transition:opacity .4s}
.ba.mexeu .ba-dica{opacity:0}
.ba-nota{font-size:13.5px;color:var(--txt3);margin:12px 4px 0;line-height:1.5}

/* marquee de palavras gigantes em outline */
.mq{overflow:hidden;padding:30px 0 26px;border-block:1px solid var(--linha);background:var(--sup)}
.mq-trilho{display:flex;width:max-content;animation:mq 38s linear infinite}
.mq span{font:700 clamp(54px,9vw,132px)/1 var(--fh);letter-spacing:-.04em;text-transform:uppercase;white-space:nowrap;padding-right:.45em;color:transparent;-webkit-text-stroke:1.2px rgba(207,209,214,.32)}
.mq span.cheio{-webkit-text-stroke:0;background:var(--ouro-grad);-webkit-background-clip:text;background-clip:text}
.mq span.serif{font-family:var(--fs);font-style:italic;font-weight:600;text-transform:none}
@keyframes mq{to{transform:translateX(-50%)}}

/* numeros com contador tipo caca-niquel */
.numeros{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.stat{background:var(--sup2);border:1px solid var(--linha);border-radius:20px;padding:30px 26px;position:relative;overflow:hidden}
.stat::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .3s;background:radial-gradient(300px circle at var(--mx,50%) var(--my,0%),rgba(228,196,94,.12),transparent 60%)}
.stat:hover::before{opacity:1}
.stat .n{display:flex;font:600 clamp(48px,5.6vw,72px)/1 var(--fh);letter-spacing:-.05em;background:var(--ouro-grad);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:14px;height:1em;overflow:hidden}
.stat p{color:var(--txt2);margin:0;font-size:16px}
.stat b{display:block;color:var(--txt);font-family:var(--fh);font-weight:600;font-size:18px;margin-bottom:4px}
.sl{display:inline-block;height:1em;overflow:hidden}
.stat .n:has(.sl){background:none}
.sl>span{display:block;line-height:1;background:var(--ouro-grad);background-size:100% 1em;-webkit-background-clip:text;background-clip:text;color:transparent;transform:translateY(0);transition:transform 1.7s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i)*.12s)}
.go .sl>span{transform:translateY(calc(var(--d)*-1em))}

/* tilt 3D + spotlight */
.tlt{transition:transform .5s cubic-bezier(.2,.8,.2,1),border-color .35s,box-shadow .35s}
.js .tlt.visivel:hover,.tlt:hover{transform:perspective(900px) rotateX(var(--ty,0deg)) rotateY(var(--tx,0deg)) translateY(-6px)}
.cartao{border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 40%),var(--sup2)}
.cartao::before{background:radial-gradient(360px circle at var(--mx,50%) var(--my,0%),rgba(228,196,94,.14),transparent 60%)}
.cartao-ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;border:1px solid var(--linha2);background:rgba(255,255,255,.02);color:var(--ouro);margin-bottom:22px}
.cartao-ic svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.cartao .cartao-num{position:absolute;top:22px;right:24px;font-size:38px;margin:0}

/* sobre: logo grande sem distorcer */
.selo-logo{display:block;width:min(280px,72%);height:auto!important;aspect-ratio:auto!important;object-fit:contain;border-radius:0;box-shadow:none;margin:0 0 26px;filter:drop-shadow(0 26px 40px rgba(0,0,0,.6))}

/* rodape com o nome gigante */
.foot-mega{display:block;text-align:center;font:800 clamp(64px,18.5vw,280px)/.82 var(--fh);letter-spacing:-.06em;white-space:nowrap;margin:10px 0 34px;color:transparent;-webkit-text-stroke:1px rgba(228,196,94,.38);background:var(--ouro-grad);-webkit-background-clip:text;background-clip:text;background-size:100% 0%;background-repeat:no-repeat;background-position:0 100%;transition:background-size 1.1s cubic-bezier(.2,.8,.2,1);user-select:none}
.rodape:hover .foot-mega,.foot-mega.cheio{background-size:100% 100%}
.rodape{overflow:hidden}

@media (max-width:920px){
  .hero-ag .wrap{grid-template-columns:1fr;gap:36px}
  .numeros{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .hero.hero-ag{padding:44px 0 64px}
  .numeros{gap:12px}
  .stat{padding:20px 16px;border-radius:16px}
  .stat .n{font-size:40px}
  .stat b{font-size:15px}
  .stat p{font-size:13.5px}
  .ba{aspect-ratio:4/3.6;border-radius:18px}
}
@media (prefers-reduced-motion:reduce){
  .mq-trilho,.mesh i{animation:none}
  .kin .ch{animation:none;transform:none}
  .cortina,.pre{display:none!important}
}
