/* MNOVAIS — construído sobre o design system Viresta-style (../viresta-kit/DESIGN-SYSTEM.md). */

/* ---------- 1. TOKENS ---------- */
:root{
  --black:#000000;        /* texto, botões escuros, footer */
  --white:#ffffff;        /* cards, botões claros, texto sobre foto */
  --page:#f8f8f8;         /* fundo da página e do header rolado */
  --line:#e3e3e3;         /* divisores */
  --text-2:#2e2e2e;       /* parágrafos (Satoshi) */
  --text-3:#545454;       /* texto terciário */
  --veil:#0000001a;       /* bordas/sombras sutis (preto 10%) */
  --glass:#ffffff1a;      /* branco 10% sobre foto */
  --ov-hero:rgba(0,0,0,.75);   /* overlay do hero (a partir de gradiente, ver .hero::after) */
  --ov-card:rgba(0,0,0,.4);    /* overlay das fotos de projeto */
  /* sombra “vidro” dos botões (exata) */
  --btn-shadow:
    rgba(255,255,255,.18) 0 .71px .71px -.63px inset, rgba(255,255,255,.17) 0 1.81px 1.81px -1.25px inset,
    rgba(255,255,255,.17) 0 3.62px 3.62px -1.88px inset, rgba(255,255,255,.15) 0 6.87px 6.87px -2.5px inset,
    rgba(255,255,255,.13) 0 13.65px 13.65px -3.13px inset, rgba(255,255,255,.06) 0 30px 30px -3.75px inset,
    rgba(0,0,0,.02) 0 .6px .6px 0, rgba(0,0,0,.06) 0 2.29px 2.29px 0, rgba(0,0,0,.25) 0 10px 10px 0;
  --display:"Zalando Sans","Inter",system-ui,sans-serif;   /* títulos */
  --text:"Satoshi","Inter",system-ui,sans-serif;          /* corpo e UI */
  --num:"Inter",system-ui,sans-serif;                     /* números grandes (Inter Display no original) */
  --wrap:1200px; --pad-x:24px; --sec-y:120px;
  --ease:cubic-bezier(.22,1,.36,1);
}

/* ---------- 2. BASE ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html.lenis,html.lenis body{height:auto}
body{background:var(--page);color:var(--black);font-family:var(--text);font-weight:500;font-size:16px;line-height:1.4;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
ul{list-style:none}

/* ---------- 3. TIPOGRAFIA (presets do Framer) ---------- */
.t-h2{font-family:var(--display);font-weight:400;font-size:46px;line-height:1.3;letter-spacing:-.035em}      /* títulos de seção */
.t-h3{font-family:var(--display);font-weight:400;font-size:32px;line-height:1.3;letter-spacing:-.03em}       /* nomes de projeto, passos */
.t-h4{font-family:var(--display);font-weight:500;font-size:24px;line-height:1.3;letter-spacing:.0035em;text-transform:capitalize}  /* títulos de card */
.t-lead{font-weight:500;font-size:20px;line-height:1.2;letter-spacing:-.02em}
.t-body{font-weight:500;font-size:18px;line-height:1.4;letter-spacing:-.02em;color:var(--text-2)}
.t-small{font-weight:500;font-size:16px;line-height:1.4;color:var(--text-2)}
.t-ui{font-weight:500;font-size:16px;line-height:1;letter-spacing:-.02em;text-transform:uppercase}

/* ---------- 4. LAYOUT ---------- */
.sec{padding:var(--sec-y) var(--pad-x) 0}
.wrap{max-width:var(--wrap);margin:0 auto}
/* rótulo “/02 — INTRO” */
.label{display:flex;align-items:center;gap:8px;margin-bottom:20px}
.label span:first-child{font-family:var(--num);font-weight:300;font-size:16px;color:var(--text-3)}
.label::after{content:"";width:40px;height:1.5px;background:var(--black)}
.shead{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:48px}
.shead > :last-child{justify-self:end;max-width:420px;display:flex;flex-direction:column;gap:16px;align-items:flex-start}

/* ---------- 5. BOTÃO (label com letras que rolam + ícone com seta que desliza) ---------- */
.btn{display:inline-flex;align-items:center;gap:12px;height:36px;padding:4px 4px 4px 8px;background:var(--black);color:var(--white);box-shadow:var(--btn-shadow);border-radius:0}
.btn--light{background:var(--white);color:var(--black)}
.btn__label{display:inline-flex;align-items:flex-start;overflow:hidden;height:16px;font-size:16px;line-height:16px;letter-spacing:-.02em;text-transform:uppercase}
.btn__label .col{display:inline-flex;flex-direction:column;transition:transform .5s var(--ease)}  /* coluna com a letra duplicada */
.btn__label .col span{flex:none;display:block;height:16px;white-space:pre}
.btn:hover .btn__label .col{transform:translateY(-50%)}
.btn__ic{width:28px;height:28px;padding:6px;background:var(--white);color:var(--black);overflow:hidden;position:relative}
.btn--light .btn__ic{background:var(--black);color:var(--white)}
.btn__ic svg{position:absolute;inset:6px;width:16px;height:16px;transition:transform .45s var(--ease)}
.btn__ic svg + svg{transform:translateX(-24px)}
.btn:hover .btn__ic svg:first-child{transform:translateX(24px)}
.btn:hover .btn__ic svg + svg{transform:none}

/* ---------- 6. HEADER (transparente sobre o hero → claro depois) ---------- */
.hdr{position:fixed;top:0;left:0;right:0;z-index:8;height:74px;padding:0 var(--pad-x);color:var(--white);transition:background-color .4s,color .4s}
.hdr.light{background:var(--page);color:var(--black)}
.hdr__in{max-width:var(--wrap);height:100%;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
.logo{font-family:var(--display);font-weight:500;font-size:26px;letter-spacing:-.02em}
.nav{display:flex;gap:22px}
.nav a{font-size:14px;line-height:1;text-transform:uppercase;overflow:hidden;height:14px;display:block}
.nav a span{display:block;transition:transform .45s var(--ease)}
.nav a span::after{content:attr(data-t);display:block}
.nav a:hover span{transform:translateY(-100%)}                    /* [inventado] mesmo padrão de rolagem do botão */
.hdr .btn{justify-self:end}
.burger{width:36px;height:36px;display:none;flex-direction:column;justify-content:center;align-items:center;gap:6px}
.burger i{width:20px;height:1.5px;background:currentColor;transition:transform .4s var(--ease)}
.burger[aria-expanded="true"] i:first-child{transform:translateY(3.75px) rotate(45deg)}
.burger[aria-expanded="true"] i:last-child{transform:translateY(-3.75px) rotate(-45deg)}
.hdr:not(.light) .btn{background:var(--white);color:var(--black)}
.hdr:not(.light) .btn .btn__ic{background:var(--black);color:var(--white)}

/* ---------- 7. BLUR PROGRESSIVO NO RODAPÉ DA TELA (exato: 8 camadas, 240px) ---------- */
.pblur{position:fixed;left:0;right:0;bottom:0;height:240px;z-index:3;pointer-events:none}
.pblur i{position:absolute;inset:0}
.pblur i:nth-child(1){backdrop-filter:blur(.0625px);-webkit-backdrop-filter:blur(.0625px);mask:linear-gradient(transparent 0%,#000 12.5%,#000 25%,transparent 37.5%);-webkit-mask:linear-gradient(transparent 0%,#000 12.5%,#000 25%,transparent 37.5%)}
.pblur i:nth-child(2){backdrop-filter:blur(.125px);-webkit-backdrop-filter:blur(.125px);mask:linear-gradient(transparent 12.5%,#000 25%,#000 37.5%,transparent 50%);-webkit-mask:linear-gradient(transparent 12.5%,#000 25%,#000 37.5%,transparent 50%)}
.pblur i:nth-child(3){backdrop-filter:blur(.25px);-webkit-backdrop-filter:blur(.25px);mask:linear-gradient(transparent 25%,#000 37.5%,#000 50%,transparent 62.5%);-webkit-mask:linear-gradient(transparent 25%,#000 37.5%,#000 50%,transparent 62.5%)}
.pblur i:nth-child(4){backdrop-filter:blur(.5px);-webkit-backdrop-filter:blur(.5px);mask:linear-gradient(transparent 37.5%,#000 50%,#000 62.5%,transparent 75%);-webkit-mask:linear-gradient(transparent 37.5%,#000 50%,#000 62.5%,transparent 75%)}
.pblur i:nth-child(5){backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px);mask:linear-gradient(transparent 50%,#000 62.5%,#000 75%,transparent 87.5%);-webkit-mask:linear-gradient(transparent 50%,#000 62.5%,#000 75%,transparent 87.5%)}
.pblur i:nth-child(6){backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);mask:linear-gradient(transparent 62.5%,#000 75%,#000 87.5%,transparent 100%);-webkit-mask:linear-gradient(transparent 62.5%,#000 75%,#000 87.5%,transparent 100%)}
.pblur i:nth-child(7){backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);mask:linear-gradient(transparent 75%,#000 87.5%,#000 100%);-webkit-mask:linear-gradient(transparent 75%,#000 87.5%,#000 100%)}
.pblur i:nth-child(8){backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);mask:linear-gradient(transparent 87.5%,#000 100%);-webkit-mask:linear-gradient(transparent 87.5%,#000 100%)}

/* ---------- 8. HERO ---------- */
.hero{position:relative;height:100svh;min-height:640px;overflow:hidden;color:var(--white);padding:0 var(--pad-x)}
.hero__bg{position:absolute;inset:0;z-index:-1}
.hero__bg img{width:100%;height:115%;object-fit:cover;transform-origin:50% 0}
.hero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,.35) 50%,rgba(0,0,0,.75))}
.hero__in{max-width:var(--wrap);height:100%;margin:0 auto;display:flex;flex-direction:column;justify-content:space-between;padding:110px 0 36px}
.hero h1{font-family:var(--display);font-weight:500;font-size:clamp(80px,14.6vw,175px);line-height:.9;letter-spacing:-.03em}
.hero h1 small{display:block;font-weight:400;font-size:.57em;text-align:right;line-height:1;margin-top:.1em}
.hero h1 sup{font-size:.5em;vertical-align:.7em}
.hero__foot{display:flex;justify-content:space-between;align-items:flex-end;gap:32px}
.hero__year{font-family:var(--num);font-weight:300;font-size:48px;line-height:.8;letter-spacing:-.06em}
.hero__cta{max-width:360px;display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.hero__cta p{color:var(--white)}

/* ---------- 9. INTRO ---------- */
.intro__imgs{display:grid;grid-template-columns:784fr 400fr;gap:16px;height:565px}
.intro__imgs img{width:100%;height:100%;object-fit:cover}
.intro__imgs img:first-child{height:415px}

/* ---------- 10. PROJETOS (foto com moldura interna; hover: foto interna scale 1.1) ---------- */
.projects{display:flex;flex-direction:column;gap:16px}
.pcard{position:relative;display:block;height:546px;overflow:hidden;color:var(--white)}
.pcard > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pcard::before{content:"";position:absolute;inset:0;background:var(--ov-card);z-index:1}
.pcard__frame{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:66.6%;height:85%;z-index:2;background:var(--white);padding:5px}
.pcard__frame .in{position:relative;width:100%;height:100%;overflow:hidden}
.pcard__frame img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.pcard:hover .pcard__frame img{transform:scale(1.1)}
.pcard__frame .in::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,.45))}
.pcard__meta{position:absolute;left:calc(16.7% + 24px);right:calc(16.7% + 24px);bottom:calc(7.5% + 20px);z-index:2;display:grid;grid-template-columns:1fr auto 1fr;align-items:end}
.pcard__meta :last-child{text-align:right}

/* ---------- 11. SERVIÇOS (cards largos com número que rola) ---------- */
.svc{display:flex;flex-direction:column;gap:16px}
.scard{display:grid;grid-template-columns:1fr 433px;gap:24px;background:var(--white);padding:16px;min-height:300px}
.scard__l{display:flex;flex-direction:column;justify-content:space-between}
.scard__n{font-family:var(--num);font-weight:300;font-size:72px;line-height:72px;height:72px;overflow:hidden}
.scard__n span{display:block}
.scard__r{display:flex;flex-direction:column;gap:20px}
.scard__r img{width:100%;height:219px;object-fit:cover}

/* ---------- 12. PROCESSO ---------- */
.steps{display:flex;flex-direction:column;gap:10px}
.step{display:grid;grid-template-columns:120px 1fr 280px;align-items:center;gap:24px;background:var(--white);padding:22px 24px}
.step h4{font-family:var(--num);font-weight:500;font-size:20px}
.step p{font-size:16px}

/* ---------- 13. DEPOIMENTO ---------- */
.testi{position:relative;height:522px;overflow:hidden}
.testi > img{width:100%;height:100%;object-fit:cover}
.tcard{position:absolute;left:50%;top:0;transform:translateX(-50%);width:min(660px,90%);background:var(--white);padding:28px 24px;display:flex;flex-direction:column;gap:20px}
.stars{font-size:26px;letter-spacing:4px}
.who{display:flex;align-items:center;gap:12px}
.who img{width:57px;height:57px;object-fit:cover}
.who i{width:8px;height:8px;border-radius:50%;background:var(--black)}
.arrows{position:absolute;left:24px;bottom:24px;display:flex;gap:8px}
.arrows button{width:32px;height:32px;border-radius:99px;background:var(--white);display:grid;place-items:center}

/* ---------- 14. BLOG ---------- */
.posts{display:flex;flex-direction:column;gap:16px}
.post{display:grid;grid-template-columns:1fr 392px;gap:16px}
.post__txt{background:var(--white);padding:20px;display:flex;flex-direction:column;justify-content:space-between;min-height:267px}
.post__top,.post__bot{display:flex;justify-content:space-between;align-items:center;gap:16px}
.post img{width:100%;height:267px;object-fit:cover}

/* ---------- 15. FAQ ---------- */
.faq{display:grid;grid-template-columns:324px 1fr;gap:16px;align-items:start}
.faq__card{background:var(--white);padding:4px 4px 20px;display:flex;flex-direction:column;gap:14px}
.faq__card img{width:100%;height:202px;object-fit:cover;border-radius:4px}
.faq__card > *:not(img){margin:0 16px}
.faq__card .btn{align-self:flex-start}
.acc{display:flex;flex-direction:column;gap:10px}
.acc__item{background:var(--white);padding:0 20px}
.acc__q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;text-align:left}
.acc__q i{flex:none;width:28px;height:28px;background:var(--black);color:var(--white);display:grid;place-items:center;font-style:normal;font-size:20px;box-shadow:var(--btn-shadow);transition:transform .45s var(--ease)}
.acc__item.open .acc__q i{transform:rotate(45deg)}
.acc__a{height:0;overflow:hidden}
.acc__a p{padding-bottom:22px}

/* ---------- 16. CTA + FOOTER (foto de fundo sticky, card branco e footer preto por cima) ---------- */
.end{position:relative;margin-top:var(--sec-y);padding:0;display:flow-root}
.end__bg{position:absolute;inset:0;z-index:-1;overflow:hidden}
.end__bg img{width:100%;height:100%;object-fit:cover}
.cta{width:min(800px,calc(100% - 2 * var(--pad-x)));margin:clamp(80px,14vh,160px) auto;background:var(--white);padding:40px 8px 32px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}
.cta p.t-body{max-width:420px}
.ftr{background:var(--black);color:var(--white);padding:64px max(var(--pad-x),calc((100% - var(--wrap)) / 2)) 0;overflow:hidden}
.ftr__top{display:grid;grid-template-columns:1.6fr 1.2fr 1fr .8fr;gap:32px}
.ftr__top h4{font-family:var(--display);font-weight:500;font-size:24px;margin-bottom:14px}
.ftr__top p{color:var(--white);margin-bottom:16px;max-width:280px}
.ftr__top ul{display:flex;flex-direction:column;gap:10px;font-size:14px}
.ftr__top address{font-style:normal;line-height:1.5;color:#bdbdbd}
.ftr__word{font-family:var(--num);font-weight:400;font-size:clamp(90px,18vw,278px);line-height:1;letter-spacing:-.02em;text-align:center;margin:40px 0 -.12em}

/* ---------- 17. REVEAL ---------- */
.js .card-in{opacity:0;transform:scale(.98)}
.js [data-blur] .wd{opacity:0;filter:blur(5px);transform:translateY(10px)}
.wd{display:inline-block}

/* ---------- 18. RESPONSIVO (Framer: ≥1200 | 810–1199 | <810) ---------- */
@media (max-width:1199.98px){
  .t-h2{font-size:38px}.t-h3{font-size:26px}.t-h4{font-size:20px}
  .nav{display:none}.burger{display:flex}
  .hdr__in{grid-template-columns:1fr auto}
  /* [inventado] menu compacto em telas menores */
  .hdr.open{background:var(--page);color:var(--black)}
  .hdr.open .nav{display:flex;flex-direction:column;gap:18px;position:absolute;top:74px;left:0;right:0;background:var(--page);padding:24px var(--pad-x) 32px}
  .hdr.open .nav a{font-size:20px;height:20px}
  .scard{grid-template-columns:1fr 1fr}
}
@media (max-width:809.98px){
  :root{--sec-y:80px;--pad-x:16px}
  .t-h2{font-size:30px}.t-h3{font-size:24px}.t-h4{font-size:18px}
  .shead,.faq,.post,.scard,.intro__imgs{grid-template-columns:1fr}
  .shead > :last-child{justify-self:start}
  .intro__imgs{height:auto}.intro__imgs img,.intro__imgs img:first-child{height:260px}
  .hdr .btn{display:none}
  .hero__foot{flex-direction:column;align-items:flex-start}
  .pcard{height:420px}.pcard__frame{width:86%;height:78%}
  .pcard__meta{left:calc(7% + 16px);right:calc(7% + 16px);bottom:calc(11% + 14px);font-size:14px}.pcard__meta .t-h3{font-size:20px}
  .step{grid-template-columns:60px 1fr}.step p{grid-column:1/-1}
  .ftr__top{grid-template-columns:1fr 1fr}.ftr__top > div:first-child{grid-column:1/-1}
}
@media (prefers-reduced-motion:reduce){ .js .card-in,.js [data-blur] .wd{opacity:1;filter:none;transform:none} }

/* =========================================================
   MNOVAIS — extensões do sistema
   ========================================================= */
.skip{position:absolute;left:-999px;top:8px;z-index:20;background:var(--black);color:var(--white);padding:10px 14px}
.skip:focus{left:8px}
:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.hdr__r{justify-self:end;display:flex;gap:12px;align-items:center}
.pcard__meta .t-h3{color:var(--white);text-align:center}

/* hero */
.hero__year span{display:block;font-family:var(--text);font-weight:500;font-size:14px;letter-spacing:0;text-transform:uppercase;margin-bottom:14px;opacity:.7}
.btns{display:flex;flex-wrap:wrap;gap:8px}
.btn--ghost{background:var(--glass);color:var(--white);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.hdr .btn--ghost{background:var(--glass)}

/* números da intro */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:16px}
.stats > div{background:var(--white);padding:20px;display:flex;flex-direction:column-reverse;justify-content:space-between;gap:40px;min-height:180px}
.stat__n{font-family:var(--num);font-weight:300;font-size:64px;line-height:.9;letter-spacing:-.06em}
.stat__n--txt{font-family:var(--display);font-weight:400;font-size:32px;letter-spacing:-.03em;line-height:1.1}

/* financiamento */
.fin{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.fcard{background:var(--white);padding:20px;display:flex;flex-direction:column;gap:14px;min-height:280px}
.fcard__i{font-family:var(--num);font-weight:300;font-size:16px;color:var(--text-3);margin-bottom:auto}
.subhead{margin:96px 0 28px}
.note{margin-top:20px;color:var(--text-3);font-size:14px}

/* serviços: lista de itens */
.tags{display:flex;flex-direction:column;margin-top:18px;border-top:1px solid var(--line)}
.tags li{font-size:15px;line-height:1.35;color:var(--text-2);padding:9px 0;border-bottom:1px solid var(--line)}
.scard{min-height:380px}
.scard__l{gap:24px}

/* portfólio completo */
.pf{margin-top:64px}
.pf__bar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-bottom:20px;border-bottom:1.5px solid var(--black)}
.pf__count span{font-family:var(--num);font-weight:300}
.pf__filters{display:flex;gap:6px;flex-wrap:wrap}
.chip{height:32px;padding:0 12px;font-size:14px;text-transform:uppercase;letter-spacing:-.02em;background:var(--white);color:var(--black);transition:background-color .3s,color .3s}
.chip:hover{background:var(--line)}
.chip.is-on{background:var(--black);color:var(--white);box-shadow:var(--btn-shadow)}
.pf__list{list-style:none}
.pf__row{display:grid;grid-template-columns:64px 1.3fr 1fr 120px;gap:24px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--line);transition:padding .45s var(--ease),background-color .45s}
.pf__row:hover{background:var(--white);padding-left:12px;padding-right:12px}
.pf__row .n{font-family:var(--num);font-weight:300;color:var(--text-3)}
.pf__row .t{font-family:var(--display);font-size:22px;letter-spacing:-.02em;line-height:1.2}
.pf__row .t small{display:block;font-family:var(--text);font-size:13px;text-transform:uppercase;color:var(--text-3);letter-spacing:0;margin-top:4px}
.pf__row .l{color:var(--text-2)}
.pf__row .a{font-family:var(--num);font-weight:300;font-size:22px;text-align:right;letter-spacing:-.04em}
.pf__row[hidden]{display:none}

/* formulário */
.form{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:10px;text-align:left;padding:8px 24px 0}
.fld{display:flex;flex-direction:column;gap:6px;font-size:13px;text-transform:uppercase;color:var(--text-3)}
.fld--full{grid-column:1/-1}
.fld input,.fld select,.fld textarea{font:inherit;font-size:16px;text-transform:none;color:var(--black);background:var(--page);border:1px solid transparent;border-radius:0;padding:12px;outline:0;transition:border-color .3s,background-color .3s;appearance:none;-webkit-appearance:none}
.fld select{background-image:linear-gradient(45deg,transparent 50%,#000 50%),linear-gradient(-45deg,transparent 50%,#000 50%);background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:32px}
.fld textarea{resize:vertical;min-height:84px}
.fld :focus{border-color:var(--black);background:var(--white)}
.fld [aria-invalid="true"]{border-color:#b3261e}
.form__err{grid-column:1/-1;color:#b3261e;min-height:0}
.form__err:empty{display:none}
.form .btn{grid-column:1/-1;justify-self:center;margin-top:8px}

/* footer */
.ftr__top p.t-small{color:#bdbdbd}
.ftr__top a:hover{opacity:.6}
.ftr__bot{display:flex;justify-content:space-between;gap:16px;margin-top:48px;padding-top:20px;border-top:1px solid #2a2a2a;color:#8a8a8a;font-size:13px}

/* botão flutuante de WhatsApp */
.wa{position:fixed;right:20px;bottom:20px;z-index:9;width:52px;height:52px;display:grid;place-items:center;background:var(--black);color:var(--white);box-shadow:var(--btn-shadow);transition:transform .45s var(--ease)}
.wa svg{width:24px;height:24px}
.wa:hover{transform:translateY(-3px)}

@media (max-width:1199.98px){
  .fin,.stats{grid-template-columns:1fr 1fr}
  .ftr__top{grid-template-columns:1fr 1fr}
}
@media (max-width:809.98px){
  .hero h1{font-size:clamp(56px,17vw,120px)}
  .fin,.stats,.form{grid-template-columns:1fr}
  .stats > div,.fcard{min-height:0}
  .stat__n{font-size:52px}
  .form{padding:8px 8px 0}
  .pf__row{grid-template-columns:40px 1fr auto;gap:12px}
  .pf__row .l{grid-column:2/-1;grid-row:2;font-size:14px}
  .pf__row .t{font-size:18px}.pf__row .a{font-size:18px}
  .subhead{margin-top:64px}
  .ftr__bot{flex-direction:column}
  .wa{right:16px;bottom:16px}
}
@media (prefers-reduced-motion:reduce){ *{transition:none!important} }

/* logo monocromática: branca sobre o hero, preta no header claro */
.logo{display:block;height:44px}
.logo img{height:100%;width:auto;filter:brightness(0) invert(1);transition:filter .4s}
.hdr.light .logo img,.hdr.open .logo img{filter:brightness(0)}

