/* =========================================================
   ANDRÉ PADILHA — Consultoria de Imagem Masculina
   Reach Marketing · 2026
   ========================================================= */

/* ---------- FONTES (self-hosted, subset latin) ---------- */
@font-face{font-family:"Instrument Serif";src:url("../fonts/instrumentserif-latin.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url("../fonts/instrumentserif-italic-latin.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Archivo";src:url("../fonts/archivo-var-latin.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
/* fallbacks com métricas ajustadas (medidos no browser) — matam o CLS do swap */
@font-face{font-family:"Instrument Fallback";src:local("Georgia"),local("Times New Roman");size-adjust:95.5%;ascent-override:90%;descent-override:22%;line-gap-override:0%}
@font-face{font-family:"Archivo Fallback";src:local("Arial");size-adjust:97.5%;ascent-override:92%;descent-override:24%;line-gap-override:0%}

/* ---------- TOKENS ---------- */
:root{
  --ink:#14161A;
  --ink-2:#1D2026;
  --ink-3:#2A2E36;
  --paper:#F4F0E9;
  --paper-2:#FBF9F5;
  --sand:#E7DFD2;
  --sand-2:#DCD1BF;
  --clay:#A2502F;
  --clay-d:#8A4226;
  --clay-l:#C27A55;
  --txt:#14161A;
  --txt-2:#55514B;
  --on-ink:#EFEAE1;
  --on-ink-2:#A8A29A;
  --line:#C9C0B1;
  --wrap:1180px;
  --pad:clamp(20px,5vw,48px);
  --sec-y:clamp(64px,8.5vw,120px);
  --display:"Instrument Serif","Instrument Fallback",Georgia,serif;
  --body:"Archivo","Archivo Fallback",Arial,sans-serif;
  --r:4px;
}

/* ---------- RESET ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;overflow-x:hidden;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--txt);font-family:var(--body);font-size:clamp(16px,1.05vw,17px);line-height:1.65;font-weight:400;-webkit-font-smoothing:antialiased;overflow-x:hidden}
figure{margin:0}                       /* reset obrigatório: o browser aplica 1em 40px */
img,video{max-width:100%;height:auto;display:block}
svg.ic{display:inline-block;vertical-align:middle;width:1.15em;height:1.15em;flex:none}
h1,h2,h3{margin:0;font-family:var(--display);font-weight:400;letter-spacing:-.01em;line-height:1.04;text-wrap:balance;hyphens:manual}
p{margin:0 0 1em}
ul,ol{margin:0;padding:0;list-style:none}
a{color:inherit}
button{font:inherit;color:inherit}
iframe{border:0;display:block}
::selection{background:var(--clay);color:#fff}
:focus-visible{outline:2px solid var(--clay);outline-offset:3px;border-radius:2px}
.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:12px 18px;z-index:200}
.skip:focus{left:8px;top:8px}

.wrap{width:min(100% - (var(--pad) * 2),var(--wrap));margin-inline:auto}

/* ---------- BARRA DE PROGRESSO ---------- */
.progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:120;pointer-events:none;background:transparent}
.progress i{display:block;height:100%;width:100%;background:var(--clay);transform:scaleX(0);transform-origin:0 50%}

/* ---------- BOTÕES ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--body);font-size:1rem;font-weight:600;line-height:1.2;
  letter-spacing:.005em;text-decoration:none;cursor:pointer;
  padding:.82em 1.4em;border:0;border-radius:var(--r);
  width:auto;max-width:min(100%,330px);position:relative;overflow:hidden;
  transition:background-color .25s ease,color .25s ease,transform .25s ease,box-shadow .25s ease;
}
.btn .lbl{display:inline;text-wrap:balance;text-align:center}
.btn .ic{width:19px;height:19px;margin-left:.5em;position:relative;top:-1px}
.btn::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.28) 50%,transparent 65%);transform:translateX(-120%);transition:transform .7s ease}
.btn:hover::after{transform:translateX(120%)}
.btn:hover{transform:translateY(-1px)}
.btn-wa{background:var(--ink);color:#fff}
.btn-wa:hover{background:#000}
.btn-clay{background:var(--clay);color:#fff}
.btn-clay:hover{background:var(--clay-d)}
.btn-lg{font-size:1.02rem;padding:.9em 1.6em}
.sec-ink .btn-wa,.sec-clay .btn-wa{background:var(--paper);color:var(--ink)}
.sec-ink .btn-wa:hover,.sec-clay .btn-wa:hover{background:#fff}
.sec-clay .btn-clay{background:var(--ink);color:#fff}

/* ---------- HEADER ---------- */
.hdr{position:fixed;top:0;left:0;right:0;z-index:100;background:var(--ink);transition:transform .35s ease}
.hdr.up{transform:translateY(-100%)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:74px}
.hdr-logo{display:block;line-height:0}
.hdr-logo img{width:190px;height:auto}
.nav{display:flex;align-items:center;gap:clamp(16px,2vw,30px)}
.nav>a{font-size:.87rem;font-weight:500;letter-spacing:.03em;text-decoration:none;color:var(--on-ink);opacity:.86;transition:opacity .2s,color .2s;white-space:nowrap}
.nav>a:hover{opacity:1;color:#fff}
.nav-cta{margin-left:6px;padding:.62em 1.05em;font-size:.86rem;background:var(--clay);color:#fff}
.nav-cta:hover{background:var(--clay-d);color:#fff}
.nav-cta .ic{width:16px;height:16px}
.burger{display:none;width:44px;height:44px;background:none;border:0;padding:10px;cursor:pointer;flex-direction:column;justify-content:center;gap:5px}
.burger span{display:block;height:2px;width:100%;background:var(--on-ink);transition:transform .3s,opacity .2s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- HERO (estático, sem animação) ---------- */
.hero{padding:calc(74px + clamp(34px,5vw,64px)) 0 clamp(34px,5vw,64px);background:var(--paper);position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;top:0;right:0;width:46%;height:100%;z-index:0;background:linear-gradient(90deg,rgba(231,223,210,0) 0%,rgba(231,223,210,.62) 26%,rgba(231,223,210,.62) 100%)}
.hero-in{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.85fr);gap:clamp(28px,4vw,64px);align-items:center;position:relative;z-index:1}
.kicker{font-size:.76rem;font-weight:600;letter-spacing:.17em;text-transform:uppercase;color:var(--clay);margin:0 0 1.1em}
.hero h1{font-size:clamp(2.55rem,5.6vw,4.55rem);margin:0 0 .42em;letter-spacing:-.02em}
.hero h1 em{font-style:italic;color:var(--clay)}
.hero-sub{font-size:clamp(1rem,1.15vw,1.08rem);color:var(--txt-2);max-width:46ch;margin-bottom:1.9em}
.btn-hero{margin-bottom:1.5em}
.hero-local{display:flex;align-items:center;font-size:.85rem;color:var(--txt-2);margin:0;letter-spacing:.01em}
.hero-local .ic{width:17px;height:17px;margin-right:.5em;color:var(--clay)}
.hero-fig{position:relative}
.hero-fig::before{content:"";position:absolute;inset:14px -14px -14px 14px;border:1px solid var(--line);z-index:0}
.hero-fig img{position:relative;z-index:1;width:100%;aspect-ratio:750/1000;object-fit:cover;object-position:50% 22%;border-radius:var(--r)}

/* ---------- FAIXA DE PREMISSA ---------- */
.strip{background:var(--ink);color:var(--on-ink);padding:22px 0}
.strip-p{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0;margin:0;font-family:var(--display);font-size:clamp(1.05rem,2.1vw,1.55rem);letter-spacing:.01em}
.strip-p span{padding:0 clamp(14px,2.4vw,34px);position:relative}
.strip-p span+span::before{content:"";position:absolute;left:0;top:50%;width:4px;height:4px;border-radius:50%;background:var(--clay-l);transform:translateY(-50%)}

/* ---------- SEÇÕES ---------- */
.sec{padding:var(--sec-y) 0;position:relative}
.sec-paper{background:var(--paper)}
.sec-sand{background:var(--sand)}
.sec-ink{background:var(--ink);color:var(--on-ink);overflow:hidden}
.sec-clay{background:var(--clay);color:#fff;overflow:hidden}
.sec-ink .kicker{color:var(--clay-l)}
.sec-clay .kicker{color:#F3D9CB}
.sec-ink h2 em,.sec-clay h2 em{color:#fff}
.sec-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.13;filter:grayscale(.35);z-index:0;pointer-events:none}
.sec-ink .wrap,.sec-clay .wrap{position:relative;z-index:1}

.sec-head{max-width:24ch;margin:0 0 clamp(32px,4vw,52px)}
.sec-head h2{font-size:clamp(1.95rem,3.9vw,3.2rem)}
.sec-head h2 em{font-style:italic;color:var(--clay)}
.sec-lead{margin:1.2em 0 0;color:var(--txt-2);font-size:1rem;max-width:56ch}
.sec-head{max-width:none}
.sec-head h2{max-width:20ch}
.sec-ink .sec-lead,.sec-clay .sec-lead{color:rgba(255,255,255,.78)}

/* ---------- A CONSULTORIA ---------- */
.cons{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(30px,5vw,72px);align-items:start}
.cons-txt p{font-size:clamp(1.02rem,1.2vw,1.12rem);color:var(--txt-2)}
.cons-note{border-left:2px solid var(--clay);padding-left:18px;color:var(--txt)!important;font-weight:500;margin-top:1.6em}
.eixos-t{font-size:.76rem;font-weight:600;letter-spacing:.17em;text-transform:uppercase;color:var(--txt-2);margin:0 0 1.4em;padding-bottom:1em;border-bottom:1px solid var(--line)}
.eixos li{display:flex;align-items:baseline;padding:.82em 0;border-bottom:1px solid var(--line)}
.eixos i{font-style:normal;font-family:var(--body);font-size:.72rem;font-weight:700;letter-spacing:.08em;color:var(--clay);margin-right:1.1em;flex:none;min-width:2ch}
.eixos span{font-size:1.02rem;font-weight:500}

/* ---------- MÉTODO ---------- */
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,2.4vw,34px)}
.step{padding-top:24px;border-top:1px solid rgba(255,255,255,.22);position:relative}
.step::after{content:"";position:absolute;top:-1px;left:0;width:100%;height:1px;background:var(--clay-l);transform:scaleX(0);transform-origin:0 50%;transition:transform .8s cubic-bezier(.22,1,.36,1)}
.step.in::after{transform:scaleX(1)}
.step i{font-style:normal;font-size:.72rem;font-weight:700;letter-spacing:.14em;color:var(--clay-l);display:block;margin-bottom:1.5em}
.step h3{font-size:clamp(1.5rem,2.3vw,1.95rem);margin-bottom:.45em}
.step p{font-size:.95rem;color:var(--on-ink-2);margin:0}
.metodo-cta{margin:clamp(34px,4.5vw,56px) 0 0}

/* ---------- MODALIDADES ---------- */
.mods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,1.8vw,24px);align-items:stretch}
.mod{background:var(--paper-2);border:1px solid var(--sand-2);border-radius:var(--r);padding:clamp(22px,2.2vw,30px);display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.mod:hover{transform:translateY(-4px);box-shadow:0 14px 34px -22px rgba(20,22,26,.5);border-color:var(--clay-l)}
.mod-n{font-size:.7rem;font-weight:600;letter-spacing:.19em;text-transform:uppercase;color:var(--txt-2);margin:0 0 .5em}
.mod h3{font-size:clamp(1.65rem,2.4vw,2.05rem);margin-bottom:.55em;color:var(--clay)}
.mod-d{font-size:.93rem;color:var(--txt-2);margin-bottom:1.5em}
.mod-in{margin-bottom:1.5em;border-top:1px solid var(--sand-2);padding-top:1.2em}
.mod-in li{display:flex;align-items:flex-start;font-size:.9rem;font-weight:500;margin-bottom:.62em}
.mod-in .ic{width:16px;height:16px;color:var(--clay);margin-right:.6em;margin-top:.28em}
.mod-t{display:flex;align-items:center;font-size:.82rem;font-weight:600;letter-spacing:.02em;color:var(--txt-2);margin:auto 0 1.25em}
.mod-t .ic{width:16px;height:16px;margin-right:.5em;color:var(--clay)}
.mod-cta{display:inline-flex;align-items:center;align-self:flex-start;font-size:.88rem;font-weight:600;text-decoration:none;color:var(--clay);border-bottom:1px solid transparent;transition:border-color .25s,gap .25s}
.mod-cta .ic{width:16px;height:16px;margin-left:.45em;transition:transform .25s ease}
.mod-cta:hover{border-bottom-color:var(--clay)}
.mod-cta:hover .ic{transform:translateX(4px)}
.mod-top{background:var(--ink);border-color:var(--ink)}
.mod-top .mod-n,.mod-top .mod-d,.mod-top .mod-t{color:var(--on-ink-2)}
.mod-top h3{color:#fff}
.mod-top .mod-in{border-top-color:rgba(255,255,255,.2)}
.mod-top .mod-in li{color:var(--on-ink)}
.mod-top .mod-in .ic,.mod-top .mod-t .ic{color:var(--clay-l)}
.mod-top .mod-cta{color:var(--clay-l)}
.mod-top .mod-cta:hover{border-bottom-color:var(--clay-l)}
.mods-help{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:18px;margin:clamp(30px,3.6vw,46px) 0 0;text-align:center}
.mods-help p{margin:0;font-size:.98rem;color:var(--txt-2);max-width:48ch}

/* ---------- ARTISTAS ---------- */
.artistas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.8vw,24px)}
.artistas .ph{display:block;overflow:hidden;border-radius:var(--r);background:rgba(0,0,0,.18)}
.artistas img{width:100%;aspect-ratio:412/300;object-fit:cover;transition:transform .8s cubic-bezier(.22,1,.36,1)}
.artistas figure:hover img{transform:scale(1.045)}
.artistas figcaption{margin-top:.85em;font-size:.82rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:#fff}
.artistas-nota{margin:clamp(30px,3.6vw,44px) 0 0;max-width:62ch;font-size:.97rem;color:rgba(255,255,255,.8);border-left:2px solid rgba(255,255,255,.4);padding-left:18px}

/* ---------- CONSULTORIA EM AÇÃO ---------- */
.acao{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.8vw,22px)}
.acao .ph{display:block;overflow:hidden;border-radius:var(--r);background:var(--sand)}
.acao img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .8s cubic-bezier(.22,1,.36,1)}
.acao figure:hover img{transform:scale(1.045)}
.acao figcaption{margin-top:.8em;font-size:.84rem;color:var(--txt-2)}

/* ---------- ANTES E DEPOIS ---------- */
.ad-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(30px,5vw,68px);align-items:center}
/* respiro entre titulo e texto nas dobras sem .sec-head */
.ad-copy h2,.ct-copy h2{margin-bottom:.5em}
.ad-copy p{color:var(--on-ink-2);max-width:44ch}
.ad-copy .btn{margin-top:1.1em}
.ad-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ad-pair .ph{display:block;overflow:hidden;border-radius:var(--r);background:var(--ink-3)}
.ad-pair img{width:100%;aspect-ratio:540/765;object-fit:cover}
.ad-pair figcaption{margin-top:.8em;font-size:.74rem;font-weight:700;letter-spacing:.19em;text-transform:uppercase;color:var(--clay-l)}

/* ---------- ESPAÇO ---------- */
.esp{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1fr);gap:clamp(28px,4.4vw,64px);align-items:start;margin-bottom:clamp(32px,4vw,52px)}
.esp-video video{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 42%;border-radius:var(--r);background:var(--sand)}
.esp-video-c{margin:.85em 0 0;font-size:.84rem;color:var(--txt-2)}
.esp-dif .eixos-t{margin-bottom:1.5em}
.esp-nota{margin:1.6em 0 1.4em;padding-left:18px;border-left:2px solid var(--clay);font-size:.97rem;color:var(--txt-2);max-width:52ch}
.checks li{display:flex;align-items:flex-start;padding:.62em 0;font-size:1.02rem;font-weight:500}
.checks .ic{width:17px;height:17px;color:var(--clay);margin-right:.7em;margin-top:.3em}
.galeria{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,20px)}
.galeria .ph{display:block;overflow:hidden;border-radius:var(--r);background:var(--sand)}
.galeria img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .8s cubic-bezier(.22,1,.36,1)}
.galeria li:hover img{transform:scale(1.045)}

/* ---------- DÚVIDAS / ACORDEÃO ---------- */
.faq-in{max-width:860px}
.acc details{border-bottom:1px solid var(--sand-2)}
.acc details:first-child{border-top:1px solid var(--sand-2)}
.acc summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:1.15em 0;cursor:pointer;font-size:1.04rem;font-weight:600;list-style:none;transition:color .2s}
.acc summary::-webkit-details-marker{display:none}
.acc summary:hover{color:var(--clay)}
.acc summary .ic{width:19px;height:19px;color:var(--clay);transition:transform .3s ease}
.acc details[open] summary .ic{transform:rotate(45deg)}
.acc-b{padding:0 0 1.5em;max-width:68ch}
.acc-b p{font-size:.97rem;color:var(--txt-2)}
.acc-b p:last-child{margin-bottom:0}
.acc-b a{color:var(--clay);font-weight:600}
.acc-lgpd{background:rgba(162,80,47,.07);border-left:2px solid var(--clay);margin-top:16px}
.acc-lgpd summary,.acc-lgpd .acc-b{padding-left:18px;padding-right:18px}
.acc-note{font-size:.84rem!important;opacity:.8}

/* ---------- CONTATO ---------- */
.ct-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,4.6vw,64px);align-items:center}
.ct-copy p{color:var(--on-ink-2);max-width:46ch}
.ct-copy .btn-lg{margin:.6em 0 2em}
.ct-list li{display:flex;align-items:flex-start;padding:.62em 0;border-bottom:1px solid rgba(255,255,255,.14);font-size:.97rem}
.ct-list .ic{width:18px;height:18px;color:var(--clay-l);margin-right:.75em;margin-top:.3em}
.ct-list a{text-decoration:none;color:var(--on-ink);transition:color .2s}
.ct-list a:hover{color:#fff;text-decoration:underline}
.ct-note{margin:1.4em 0 0;font-size:.86rem;color:var(--on-ink-2)}
.ct-map{position:relative;border-radius:var(--r);overflow:hidden;background:var(--ink-3)}
.ct-map iframe{width:100%;height:clamp(330px,42vw,470px);filter:grayscale(.9) invert(.92) contrast(.86);pointer-events:none}
.ct-map-link{position:absolute;left:16px;bottom:16px;display:inline-flex;align-items:center;background:var(--paper);color:var(--ink);text-decoration:none;font-size:.86rem;font-weight:600;padding:.62em 1.05em;border-radius:var(--r);transition:background .25s}
.ct-map-link:hover{background:#fff}
.ct-map-link .ic{width:15px;height:15px;margin-left:.5em}

/* ---------- RODAPÉ ---------- */
.ft{background:var(--ink);color:var(--on-ink-2);padding:clamp(40px,5vw,60px) 0 clamp(34px,4vw,46px);border-top:1px solid rgba(255,255,255,.1)}
.ft-in{display:grid;gap:26px;justify-items:center;text-align:center}
.ft-brand{margin:0;line-height:0}
.ft-brand img{width:170px;height:auto}
.ft-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 24px}
.ft-nav a{font-size:.87rem;text-decoration:none;color:var(--on-ink-2);transition:color .2s}
.ft-nav a:hover{color:#fff}
.ft-legal{margin:0;font-size:.8rem;line-height:1.8;color:#7D786F}
.ft-legal a{color:var(--on-ink-2);text-decoration:underline;text-underline-offset:2px}
.ft-legal a:hover{color:#fff}

/* ---------- WHATSAPP FLUTUANTE ---------- */
.wa-float{position:fixed;right:18px;bottom:18px;z-index:95;width:54px;height:54px;border-radius:50%;background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px -8px rgba(0,0,0,.55);opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .3s,transform .3s,visibility .3s}
.wa-float.on{opacity:1;visibility:visible;transform:none}
.wa-float .ic{width:29px;height:29px}
.wa-float::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #25D366;animation:pulse 2.4s ease-out infinite}
@keyframes pulse{0%{transform:scale(1);opacity:.7}70%{transform:scale(1.5);opacity:0}100%{opacity:0}}

/* ---------- COOKIES ---------- */
.cookies{position:fixed;left:50%;bottom:16px;transform:translateX(-50%) translateY(14px);width:calc(100% - 32px);max-width:640px;z-index:110;background:var(--ink);color:var(--on-ink);border:1px solid rgba(255,255,255,.14);border-radius:var(--r);padding:18px 20px;box-shadow:0 18px 48px -20px rgba(0,0,0,.7);display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px;opacity:0;visibility:hidden;transition:opacity .3s,transform .3s,visibility .3s}
.cookies.on{opacity:1;visibility:visible;transform:translateX(-50%)}
.cookies p{margin:0;flex:1 1 280px;font-size:.87rem;line-height:1.55;color:var(--on-ink-2)}
.cookies a{color:var(--clay-l)}
.cookies-b{display:flex;align-items:center;gap:14px}
.cookies .btn{font-size:.88rem;padding:.6em 1.2em}
.ck-no{background:none;border:0;font-size:.84rem;color:var(--on-ink-2);text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:0}
.ck-no:hover{color:#fff}

/* =========================================================
   ANIMAÇÃO (keyframes + animation-delay — nunca transition-delay)
   ========================================================= */
@keyframes rvUp{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes rvWord{from{opacity:0;transform:translateY(.5em) rotate(1.5deg)}to{opacity:1;transform:none}}
@keyframes rvWipe{from{clip-path:inset(0 100% 0 0 round 4px);transform:scale(1.06)}to{clip-path:inset(0 round 4px);transform:none}}

.js .reveal{opacity:0}
.js .reveal.in{animation:rvUp .9s cubic-bezier(.22,1,.36,1) both;animation-delay:var(--d,0s)}
.js .reveal-stagger>*{opacity:0}
.js .reveal-stagger.in>*{animation:rvUp .85s cubic-bezier(.22,1,.36,1) both}
.js .reveal-stagger.in>*:nth-child(1){animation-delay:0s}
.js .reveal-stagger.in>*:nth-child(2){animation-delay:.07s}
.js .reveal-stagger.in>*:nth-child(3){animation-delay:.14s}
.js .reveal-stagger.in>*:nth-child(4){animation-delay:.21s}
.js .reveal-stagger.in>*:nth-child(5){animation-delay:.28s}
.js .reveal-stagger.in>*:nth-child(6){animation-delay:.35s}
.js .reveal-stagger.in>*:nth-child(7){animation-delay:.42s}
.js .reveal-stagger.in>*:nth-child(8){animation-delay:.49s}
/* título entrando palavra a palavra */
.js .split .w{display:inline-block;opacity:0}
.js .split.in .w{animation:rvWord .78s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--i) * .045s)}
/* foto revelada por wipe na direção da leitura */
.js .ph{clip-path:inset(0 100% 0 0 round 4px)}
.js .reveal.in .ph,.js .reveal-stagger.in>* .ph,.js .in>.ph{animation:rvWipe 1s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--d,0s) + .12s)}

/* ---------- RESPONSIVO ---------- */
@media (max-width:1080px){
  .steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,3vw,36px)}
  .mods{grid-template-columns:repeat(2,minmax(0,1fr))}
  .acao{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:880px){
  .nav{position:fixed;inset:74px 0 auto;flex-direction:column;align-items:stretch;gap:0;background:var(--ink);border-top:1px solid rgba(255,255,255,.1);padding:8px var(--pad) 26px;transform:translateY(-12px);opacity:0;visibility:hidden;transition:opacity .25s,transform .25s,visibility .25s;max-height:calc(100dvh - 74px);overflow-y:auto}
  .nav.open{opacity:1;visibility:visible;transform:none}
  .nav>a{padding:1.05em 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:1rem}
  .nav-cta{margin:20px 0 0;width:100%;max-width:none;justify-content:center;padding:.85em 1.2em;font-size:.95rem;border-bottom:0}
  .burger{display:flex}
  .hdr-logo img{width:158px}
  .hdr-in{min-height:74px}

  .hero{padding-top:calc(74px + 26px);padding-bottom:34px}
  .hero::before{display:none}
  .hero-in{grid-template-columns:minmax(0,1fr);gap:26px}
  .hero-copy{display:contents}
  .hero-copy .kicker{order:1}
  .hero h1{order:2;font-size:clamp(2.2rem,8.6vw,3rem)}
  .hero-sub{order:3;max-width:none;margin-bottom:1.5em}
  .btn-hero{order:4;margin-bottom:0;justify-self:start}
  .hero-fig{order:5}
  .hero-local{order:6}
  .hero-fig::before{display:none}
  .hero-fig img{aspect-ratio:4/3.3;object-position:50% 28%}

  .cons{grid-template-columns:minmax(0,1fr);gap:34px}
  .ad-in{grid-template-columns:minmax(0,1fr);gap:32px}
  .esp{grid-template-columns:minmax(0,1fr);gap:30px}
  .esp-video{max-width:380px}
  .ct-in{grid-template-columns:minmax(0,1fr);gap:32px}
  .artistas{grid-template-columns:repeat(2,minmax(0,1fr))}
  .galeria{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:620px){
  .sec-head h2{max-width:none}
  .hero{padding-top:calc(74px + 18px);padding-bottom:28px}
  .hero-in{gap:20px}
  .kicker{margin-bottom:.85em}
  .hero .kicker{font-size:.7rem;letter-spacing:.13em}
  .hero h1{font-size:clamp(1.92rem,8.4vw,2.7rem);margin-bottom:.34em}
  .hero-sub{font-size:.97rem;margin-bottom:1.15em}
  .strip-p{font-size:1.02rem}
  .strip-p span{padding:0 11px}
  .mods{grid-template-columns:minmax(0,1fr)}
  .steps{grid-template-columns:minmax(0,1fr)}
  .acao{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mods-help{flex-direction:column}
}
@media (max-width:480px){
  .btn{font-size:.95rem;padding:.92em 1.3em;max-width:min(100%,320px)}
  .btn .ic{width:17px;height:17px}
  .btn-lg{font-size:.98rem;padding:.98em 1.4em}
  .artistas{grid-template-columns:minmax(0,1fr)}
  .acao{grid-template-columns:minmax(0,1fr)}
  .galeria{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wa-float{right:14px;bottom:14px;width:50px;height:50px}
  .wa-float .ic{width:27px;height:27px}
  .cookies{padding:16px;bottom:12px}
  .cookies-b{width:100%;justify-content:space-between}
}

/* ---------- MOVIMENTO REDUZIDO ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js .reveal,.js .reveal-stagger>*,.js .split .w{opacity:1!important;animation:none!important}
  .js .ph{clip-path:none!important;animation:none!important}
  .step::after{transform:scaleX(1)!important;transition:none}
  .wa-float::before{animation:none}
  .btn::after{display:none}
  .artistas img,.acao img,.galeria img{transition:none}
}
