/* ============================================================
   MAÇAIX — Design System Web v1 (do brandbook 2025)
   70% neutros · 20% naturais · 10% acento — "presença, não atenção"
   Fonte: Montserrat (oficial digital). Troca futura p/ Parabolica: --font-brand.
   ============================================================ */
:root{
  --font-brand:'Montserrat',system-ui,sans-serif;
  --font-ui:'Montserrat',system-ui,sans-serif;
  --black:#000;--white:#fff;--gray:#9a9a9a;--line:rgba(255,255,255,.14);
  --green:#5A7350;--terra:#C6A15C;/* dourado (acento anterior: terracota #E07A5F) */
  --ease:cubic-bezier(.22,.61,.36,1);
  --pad:clamp(20px,5vw,72px);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--font-ui);background:var(--black);color:var(--white);-webkit-font-smoothing:antialiased;line-height:1.65;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3{font-family:var(--font-brand);letter-spacing:-.01em}
button{font-family:inherit;background:none;border:none;color:inherit;cursor:pointer}
.wrap{max-width:1180px;margin:0 auto;padding:0 var(--pad)}
.narrow{max-width:900px}
:focus-visible{outline:2px solid var(--terra);outline-offset:4px}
::selection{background:var(--terra);color:#000}

/* ---------- rótulos ---------- */
.kicker{font-size:12px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--white)}
.kicker.dim{color:var(--gray)}
.kicker.acc{display:inline-flex;align-items:center;gap:14px}
.kicker.acc::before{content:"";width:32px;height:1px;background:var(--terra)}
.eyebrow{margin-bottom:30px}

/* ---------- reveal on scroll ---------- */
.rv{opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rv.in{opacity:1;transform:none}
.rv.d1{transition-delay:.1s}.rv.d2{transition-delay:.2s}.rv.d3{transition-delay:.3s}

/* ---------- texto ---------- */
.lead{font-size:clamp(17px,1.8vw,21px);font-weight:300;line-height:1.7;color:rgba(255,255,255,.86);max-width:60ch}
.lead b{font-weight:600;color:#fff}
.body{font-size:16px;font-weight:300;line-height:1.75;color:rgba(255,255,255,.74);max-width:58ch}
.body b{color:#fff;font-weight:500}
.prose{max-width:64ch}
.prose p{font-size:clamp(16px,1.6vw,18px);font-weight:300;line-height:1.85;color:rgba(255,255,255,.8)}
.prose p+p{margin-top:1.4em}
.prose b{color:#fff;font-weight:600}
.note{font-size:12px;color:var(--gray);letter-spacing:.03em}
.callout{border-left:2px solid var(--terra);padding-left:20px}

/* ---------- links & botões ---------- */
.link-more{display:inline-flex;align-items:center;gap:10px;margin-top:38px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--line);padding-bottom:8px;transition:border-color .35s,gap .35s var(--ease)}
.link-more:hover{border-color:#fff;gap:16px}
.link-more .ar{color:var(--terra)}
.actions{display:flex;flex-wrap:wrap;gap:16px}
.btn{display:inline-flex;align-items:center;gap:10px;padding:18px 32px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;transition:transform .4s var(--ease),background .35s,color .35s,border-color .35s}
.btn-fill{background:#fff;color:#000}
.btn-fill:hover{transform:translateY(-2px)}
.btn-ghost{border:1px solid rgba(255,255,255,.55)}
.btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.08)}

/* ---------- header + navegação ---------- */
header#hd{position:fixed;inset:0 0 auto 0;z-index:80;display:flex;align-items:center;gap:clamp(18px,3vw,44px);padding:24px var(--pad);transition:background .5s var(--ease),padding .5s var(--ease),backdrop-filter .5s}
header#hd.sc{background:rgba(0,0,0,.84);backdrop-filter:blur(12px);padding:14px var(--pad)}
.brand{font-family:var(--font-brand);font-size:20px;font-weight:700;letter-spacing:.42em;white-space:nowrap}
.brand sup{font-size:9px;letter-spacing:0;opacity:.6;vertical-align:super}
.nav-main{display:flex;gap:clamp(14px,2vw,30px);font-size:12px;font-weight:600;letter-spacing:.08em;margin-left:auto}
.nav-main a{padding:12px 2px;opacity:.6;transition:opacity .3s;border-bottom:1px solid transparent}
.nav-main a:hover,.nav-main a.on{opacity:1;border-color:var(--terra)}
.nav-r{display:flex;align-items:center;gap:22px}
.lang{display:flex;gap:2px;font-size:11px;font-weight:600;letter-spacing:.12em}
.lang a{padding:12px 7px;opacity:.5;transition:opacity .3s}
.lang a.on,.lang a:hover{opacity:1}
.cta-h{border:1px solid rgba(255,255,255,.5);padding:13px 22px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;transition:background .35s var(--ease),color .35s,border-color .35s}
.cta-h:hover{background:#fff;color:#000;border-color:#fff}
.menu-btn{display:none;flex-direction:column;gap:6px;padding:12px}
.menu-btn span{width:24px;height:1.6px;background:#fff;transition:transform .35s var(--ease),opacity .3s}
.menu-btn[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.menu-overlay{position:fixed;inset:0;z-index:70;background:rgba(0,0,0,.96);backdrop-filter:blur(8px);display:flex;flex-direction:column;justify-content:center;padding:0 var(--pad);opacity:0;pointer-events:none;transition:opacity .45s var(--ease)}
.menu-overlay.open{opacity:1;pointer-events:auto}
.menu-overlay a{font-family:var(--font-brand);font-size:clamp(24px,6vw,40px);font-weight:300;padding:14px 0;border-bottom:1px solid var(--line);transition:padding-left .35s var(--ease)}
.menu-overlay a:hover{padding-left:14px}
.menu-overlay a b{font-weight:700}
.menu-overlay .lang{margin-top:34px;gap:14px;font-size:13px}
@media(max-width:1080px){.nav-main{display:none}.menu-btn{display:flex}}
@media(max-width:760px){.lang,.cta-h{display:none}.menu-overlay .lang{display:flex}.brand{font-size:17px}}

/* ---------- heros ---------- */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden}
.hero-bg{position:absolute;inset:0;z-index:0;background:#000 center 42%/cover no-repeat;filter:contrast(1.04) saturate(.92) brightness(.68);transform:scale(1.08);animation:kb 24s ease-out forwards}
.hero-bg.bw{filter:grayscale(1) contrast(1.08) brightness(.6)}
.hero-video{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;filter:contrast(1.04) saturate(.92) brightness(.68)}
@keyframes kb{to{transform:scale(1)}}
.hero-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.5),rgba(0,0,0,.08) 34%,rgba(0,0,0,.6) 68%,rgba(0,0,0,.97))}
.hero-inner{position:relative;z-index:2;width:100%;padding:120px var(--pad) clamp(96px,15vh,160px)}
.hero .kicker{margin-bottom:26px}
.hero h1{font-weight:300;font-size:clamp(26px,3.8vw,54px);line-height:1.16;max-width:24ch}
.hero h1 b{font-weight:700}
.hero .sub{margin-top:26px;max-width:56ch;font-size:clamp(15px,1.45vw,18px);font-weight:300;color:rgba(255,255,255,.88)}
.hero .line{display:block}
.hero .line>span{display:block;opacity:0;transform:translateY(26px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.hero.ready .line>span{opacity:1;transform:none}
.hero .line:nth-child(2)>span{transition-delay:.18s}
.scroll-cue{position:absolute;left:50%;bottom:26px;z-index:2;transform:translateX(-50%);font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.55);display:flex;flex-direction:column;align-items:center;gap:10px}
.scroll-cue i{width:1px;height:38px;background:linear-gradient(rgba(255,255,255,.6),transparent);animation:cue 2.2s var(--ease) infinite}
@keyframes cue{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
/* hero tipográfico das páginas internas */
.page-hero{padding:clamp(150px,24vh,240px) 0 clamp(70px,10vh,120px)}
.page-hero h1{font-weight:300;font-size:clamp(30px,4.6vw,62px);line-height:1.1;max-width:18ch}
.page-hero h1 b{font-weight:700}
.page-hero .sub{margin-top:26px}

/* ---------- seções ---------- */
section.blk{padding:clamp(96px,15vh,180px) 0}
section.blk.tight{padding-top:0}
.hgrid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,80px);align-items:start}
.hgrid h2{font-weight:300;font-size:clamp(28px,4vw,50px);line-height:1.14}
.hgrid h2 b{font-weight:700}
@media(max-width:820px){.hgrid{grid-template-columns:1fr;gap:28px}}
.center{text-align:center}
.center h2{font-weight:300;font-size:clamp(28px,4.2vw,52px);line-height:1.16}
.center h2 b{font-weight:700}
.quote h2{font-weight:300;font-size:clamp(30px,5vw,64px);line-height:1.14;max-width:20ch;margin:0 auto}
.quote h2 b{font-weight:700}
.quote .sig{margin-top:34px;font-size:12px;letter-spacing:.26em;text-transform:uppercase;color:var(--gray)}

/* ---------- ilustrações Oráculo (line-draw) ---------- */
.ill{width:100%;height:auto;overflow:visible;display:block}
.ill .stroke{fill:none;stroke:rgba(255,255,255,.5);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.ill .thin{stroke:rgba(255,255,255,.28);stroke-width:1}
.ill .accent{stroke:var(--terra)}
.ill .green{stroke:var(--green)}
.ill .draw{stroke-dashoffset:var(--len,1600);stroke-dasharray:var(--len,1600);transition:stroke-dashoffset 2.1s var(--ease)}
.ill.in .draw{stroke-dashoffset:0}
.ill .node-t{fill:#fff;font-family:var(--font-ui);font-weight:700;font-size:15px;opacity:0;transition:opacity .7s var(--ease) .5s}
.ill .node-c{fill:var(--gray);font-family:var(--font-ui);font-weight:500;font-size:11px;letter-spacing:.02em;opacity:0;transition:opacity .7s var(--ease) .7s}
.ill .num{fill:var(--terra);font-family:var(--font-ui);font-weight:700;font-size:13px}
.ill .val{fill:#fff;font-family:var(--font-brand);font-weight:700}
.ill.in .node-t,.ill.in .node-c{opacity:1}
.scrollx{overflow-x:auto;-webkit-overflow-scrolling:touch}
.scrollx>.ill{min-width:880px}
.divider{margin:64px 0}

/* ---------- venn / pilares ---------- */
.vennwrap{display:flex;justify-content:center;margin-top:48px}
.venn{max-width:560px}
.venn .fillg{fill:var(--green);opacity:.14}
.venn .fillt{fill:var(--terra);opacity:.14}
.venn .fillw{fill:#fff;opacity:.10}
.venn .lab{fill:#fff;font-family:var(--font-brand);font-weight:700;font-size:17px}
.venn .cen{fill:var(--gray);font-family:var(--font-ui);font-weight:600;font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.pill-caps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,40px);margin-top:44px}
.pill-caps .c .h{font-family:var(--font-brand);font-weight:700;font-size:16px;display:flex;align-items:center;gap:10px}
.pill-caps .c .h i{width:9px;height:9px;border-radius:50%}
.pill-caps .c p{margin-top:12px;font-size:14px;font-weight:300;color:rgba(255,255,255,.68)}
@media(max-width:760px){.pill-caps{grid-template-columns:1fr;gap:24px}}
.dot-t{background:var(--terra)}.dot-g{background:var(--green)}.dot-w{background:#fff}

/* ---------- tabela comparativa ---------- */
.cmp{margin-top:56px;border-top:1px solid var(--line)}
.cmp .row{display:grid;grid-template-columns:1.4fr 1fr 1fr;border-bottom:1px solid var(--line);align-items:center}
.cmp .row>div{padding:22px clamp(10px,2vw,26px)}
.cmp .axis{font-size:13px;letter-spacing:.02em;color:var(--gray);font-weight:500}
.cmp .head .axis{color:#fff;font-weight:600;text-transform:uppercase;letter-spacing:.16em;font-size:11px}
.cmp .m{font-family:var(--font-brand);font-weight:700;font-size:clamp(16px,1.8vw,20px);color:#fff;background:rgba(255,255,255,.03);border-left:1px solid var(--line);border-right:1px solid var(--line)}
.cmp .co{font-weight:400;font-size:15px;color:var(--gray)}
.cmp+.note{margin-top:16px;display:block}
@media(max-width:640px){.cmp .row{grid-template-columns:1.2fr .9fr .9fr}.cmp .m{font-size:15px}.cmp .co{font-size:13px}}

/* ---------- credenciais ---------- */
.creds{display:flex;flex-wrap:wrap;gap:clamp(18px,4vw,44px);margin-top:56px}
.creds span{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gray)}
.creds span b{color:#fff;font-weight:700}
.cred-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1px;background:var(--line);border-block:1px solid var(--line);margin-top:56px}
.cred-grid .c{background:var(--black);padding:36px clamp(18px,2.5vw,32px)}
.cred-grid .c .t{font-family:var(--font-brand);font-weight:700;font-size:16px}
.cred-grid .c p{margin-top:10px;font-size:13px;font-weight:300;color:rgba(255,255,255,.66)}

/* ---------- etapas / processo ---------- */
.steps{margin-top:56px;border-top:1px solid var(--line);counter-reset:step}
.step{display:grid;grid-template-columns:80px 1fr 1.1fr;gap:clamp(18px,3vw,44px);padding:44px 4px;border-bottom:1px solid var(--line)}
.step .n{font-family:var(--font-brand);font-weight:700;font-size:clamp(24px,3vw,36px);color:var(--terra)}
.step h3{font-size:clamp(19px,2.2vw,26px);font-weight:700}
.step .where{margin-top:8px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gray)}
.step p{font-size:15px;font-weight:300;color:rgba(255,255,255,.72)}
@media(max-width:820px){.step{grid-template-columns:56px 1fr}.step p{grid-column:2}}

/* ---------- lista de tipos / índice de páginas ---------- */
.types{margin-top:56px;border-top:1px solid var(--line)}
.type{display:flex;align-items:baseline;gap:24px;padding:32px 4px;border-bottom:1px solid var(--line);transition:padding-left .4s var(--ease),background .4s}
.type:hover{padding-left:20px;background:rgba(255,255,255,.02)}
.type .idx{font-size:12px;color:var(--gray);width:34px;flex:none}
.type .nm{font-family:var(--font-brand);font-size:clamp(20px,2.6vw,30px);font-weight:600}
.type .nm em{font-style:normal;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--terra);margin-left:14px}
.type .ds{margin-left:auto;max-width:42ch;font-size:14px;color:rgba(255,255,255,.62);font-weight:300;text-align:right}
.type .ar{flex:none;color:var(--gray);transition:transform .4s var(--ease),color .4s}
.type:hover .ar{transform:translateX(6px);color:#fff}
@media(max-width:760px){.type .ds{display:none}}

/* ---------- tags ---------- */
.tags{display:flex;flex-wrap:wrap;gap:14px}
.tag{font-size:12px;letter-spacing:.06em;color:var(--gray);border:1px solid var(--line);padding:10px 18px;border-radius:40px}

/* ---------- FAQ ---------- */
.faq{margin-top:56px;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:26px 4px;font-family:var(--font-brand);font-weight:600;font-size:clamp(16px,1.8vw,19px)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-weight:300;font-size:24px;color:var(--gray);transition:transform .35s var(--ease)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .a{padding:0 4px 28px;font-size:15px;font-weight:300;color:rgba(255,255,255,.72);max-width:60ch}

/* ---------- formulário ---------- */
.form{margin-top:56px;max-width:760px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
@media(max-width:640px){.form-grid{grid-template-columns:1fr}}
.field{display:flex;flex-direction:column;gap:9px}
.field.full{grid-column:1/-1}
.field label{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gray)}
.field input,.field select,.field textarea{background:transparent;border:1px solid var(--line);color:#fff;padding:15px 16px;font-family:var(--font-ui);font-size:15px;font-weight:300;transition:border-color .3s}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:#fff}
.field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--gray) 50%),linear-gradient(135deg,var(--gray) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;background-size:5px 5px;background-repeat:no-repeat}
.field select option{background:#000;color:#fff}
.form .btn{margin-top:30px}
.form .note{margin-top:18px;display:block}

/* ---------- fecho / footer ---------- */
.close{position:relative;min-height:80vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}
.close-bg{position:absolute;inset:0;background:#000 center/cover no-repeat;filter:contrast(1.05) saturate(.9) brightness(.45)}
.close-bg.bw{filter:grayscale(1) contrast(1.06) brightness(.4)}
.close-scrim{position:absolute;inset:0;background:radial-gradient(60% 60% at 50% 50%,transparent,rgba(0,0,0,.55))}
.close .inner{position:relative;z-index:2;padding:0 var(--pad)}
.close h2{font-weight:300;font-size:clamp(30px,5.5vw,68px)}
.close h2 b{font-weight:700}
.close .actions{justify-content:center;margin-top:40px}
footer{border-top:1px solid var(--line);padding:64px 0 48px}
.foot-grid{display:flex;flex-wrap:wrap;justify-content:space-between;gap:40px}
.foot-nav{display:flex;flex-wrap:wrap;gap:26px;font-size:13px;color:var(--gray)}
.foot-nav a:hover{color:#fff}
.foot-meta{margin-top:48px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:12px;color:var(--gray)}

/* ---------- WhatsApp flutuante ---------- */
.whats{position:fixed;z-index:90;right:22px;bottom:22px;display:inline-flex;align-items:center;gap:9px;background:var(--green);color:#fff;padding:14px 22px;border-radius:40px;font-size:13px;font-weight:600;box-shadow:0 12px 30px rgba(0,0,0,.45);transition:transform .35s var(--ease)}
.whats:hover{transform:translateY(-3px)}
.whats i{width:8px;height:8px;border-radius:50%;background:#fff}

/* ---------- fotografia de cena ---------- */
.scene-img{width:100%;object-fit:cover;display:block;filter:contrast(1.03) saturate(1.05)}
.scene-img.tall{aspect-ratio:3/4}
.scene-img.wide{aspect-ratio:16/10}
.photo-band{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border-block:1px solid var(--line);margin-top:64px}
.photo-band figure{margin:0;background:var(--black);position:relative}
.photo-band img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/5;filter:contrast(1.03) saturate(.95)}
.photo-band figcaption{position:absolute;left:0;right:0;bottom:0;padding:18px 16px 14px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.85);background:linear-gradient(transparent,rgba(0,0,0,.72))}
@media(max-width:760px){.photo-band{grid-template-columns:1fr}}
.figure-note{margin-top:12px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gray)}

/* ============================================================
   v2 — sistema visual expandido (padrões To'ak/Onyx/Kin → brandbook)
   ============================================================ */

/* --- seção clara (respiro; fotos coloridas saltam) --- */
:root{--neve:#F4F1EA;--ink:#0a0a0a}
section.light{background:var(--neve);color:var(--ink)}
section.light .kicker{color:var(--ink)}
section.light .kicker.dim{color:#8a8578}
section.light .kicker.acc::before{background:var(--terra)}
section.light .body,section.light .lead,section.light .prose p{color:rgba(10,10,10,.78)}
section.light .body b,section.light .lead b,section.light .prose b{color:#000}
section.light .note,section.light .figure-note{color:#8a8578}
section.light .link-more{color:var(--ink);border-color:rgba(0,0,0,.25)}
section.light .link-more:hover{border-color:#000}
section.light .stat .lbl{color:#8a8578}
section.light .ill .stroke{stroke:rgba(0,0,0,.45)}
section.light .ill .thin{stroke:rgba(0,0,0,.22)}
section.light .ill .node-t{fill:#000}
section.light .ill .node-c{fill:#8a8578}

/* --- ticker / marquee (To'ak, Onyx) --- */
.ticker{overflow:hidden;border-block:1px solid var(--line);padding:20px 0;white-space:nowrap;position:relative}
.ticker .track{display:inline-flex;gap:0;animation:tick 46s linear infinite;will-change:transform}
.ticker.rev .track{animation-name:tick-rev;animation-duration:56s}
.ticker span{display:inline-flex;align-items:center;gap:18px;padding:0 28px;font-size:13px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.8)}
.ticker span i{width:6px;height:6px;border-radius:50%;background:var(--terra);flex:none}
.ticker span.g i{background:var(--green)}
@keyframes tick{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes tick-rev{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.ticker:hover .track{animation-play-state:paused}

/* --- wipe-in: revelação de foto em cortina (Onyx) --- */
.wipe{clip-path:inset(0 100% 0 0);transition:clip-path 1.3s var(--ease)}
.wipe.up{clip-path:inset(100% 0 0 0)}
.wipe.in{clip-path:inset(0 0 0 0)}

/* --- banda de foto full-bleed com parallax (Dom Pérignon/Kin) --- */
.band{position:relative;width:100vw;margin-left:calc(50% - 50vw);overflow:hidden;height:clamp(340px,62vh,640px)}
.band img{width:100%;height:120%;object-fit:cover;position:absolute;inset:0;filter:saturate(1.06) contrast(1.03);will-change:transform}
.band .cap{position:absolute;z-index:2;left:var(--pad);bottom:26px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.9);text-shadow:0 1px 12px rgba(0,0,0,.6)}
.band .cap b{display:block;font-family:var(--font-brand);font-size:clamp(20px,2.6vw,32px);font-weight:700;letter-spacing:0;text-transform:none;margin-bottom:6px}
.band::after{content:"";position:absolute;inset:auto 0 0 0;height:38%;background:linear-gradient(transparent,rgba(0,0,0,.45))}

/* --- cena dividida com foto sticky (Manukora) --- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px);align-items:start}
.split .stick{position:sticky;top:96px}
.split .stick img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:saturate(1.05) contrast(1.03)}
@media(max-width:860px){.split{grid-template-columns:1fr}.split .stick{position:static}}

/* --- unidades de conteúdo escaneável --- */
.stat{display:flex;flex-direction:column;gap:10px}
.stat .n{font-family:var(--font-brand);font-weight:700;font-size:clamp(34px,4.4vw,58px);line-height:1;letter-spacing:-.02em}
.stat .n u{text-decoration:none;font-size:.46em;color:var(--gray);font-weight:500}
.stat .lbl{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gray);max-width:24ch}
.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:clamp(24px,4vw,56px);margin-top:52px}
.fact{display:flex;gap:18px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--line)}
.fact .fx{font-family:var(--font-brand);font-weight:700;font-size:15px;color:var(--terra);flex:none;width:30px}
.fact .t{font-family:var(--font-brand);font-weight:600;font-size:clamp(17px,1.9vw,22px)}
.fact .d{margin-left:auto;font-size:14px;font-weight:300;color:rgba(255,255,255,.62);max-width:38ch;text-align:right}
@media(max-width:720px){.fact{flex-wrap:wrap}.fact .d{margin-left:46px;text-align:left;max-width:none}}
section.light .fact{border-color:rgba(0,0,0,.14)}
section.light .cred-grid{background:rgba(0,0,0,.14);border-color:rgba(0,0,0,.14)}
section.light .cred-grid .c{background:var(--neve)}
section.light .cred-grid .c .t{color:var(--ink)}
section.light .cred-grid .c p{color:rgba(10,10,10,.62)}
section.light .stat .n u{color:#8a8578}
section.light .fact .d{color:rgba(10,10,10,.6)}

/* --- timeline horizontal mínima --- */
.tl{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:56px;position:relative}
.tl::before{content:"";position:absolute;top:5px;left:0;right:0;height:1px;background:var(--line)}
.tl .t{padding:26px 18px 0 0;position:relative}
.tl .t::before{content:"";position:absolute;top:0;left:0;width:11px;height:11px;border-radius:50%;background:var(--black);border:1.5px solid rgba(255,255,255,.65)}
.tl .t.acc::before{background:var(--terra);border-color:var(--terra)}
.tl .y{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gray)}
.tl h3{margin-top:10px;font-size:clamp(15px,1.6vw,19px);font-weight:700}
.tl p{margin-top:8px;font-size:13px;font-weight:300;color:rgba(255,255,255,.62);max-width:26ch}
@media(max-width:760px){.tl{grid-template-columns:1fr;gap:8px}.tl::before{top:0;bottom:0;left:5px;right:auto;width:1px;height:auto}.tl .t{padding:0 0 18px 26px}.tl .t::before{left:0;top:4px}}
.tl.vert{grid-template-columns:1fr;gap:8px}
.tl.vert::before{top:0;bottom:0;left:5px;right:auto;width:1px;height:auto}
.tl.vert .t{padding:0 0 22px 26px}
.tl.vert .t::before{left:0;top:4px}

/* --- foto com legenda sobreposta (integrada, não emoldurada) --- */
.photo-hero{position:relative;overflow:hidden}
.photo-hero img{width:100%;display:block;object-fit:cover;filter:saturate(1.06) contrast(1.03);transition:transform 1.2s var(--ease)}
.photo-hero:hover img{transform:scale(1.025)}
.photo-hero .over{position:absolute;inset:auto 0 0 0;padding:26px 22px 20px;background:linear-gradient(transparent,rgba(0,0,0,.62));color:#fff}
.photo-hero .over .k{font-size:10px;letter-spacing:.22em;text-transform:uppercase;opacity:.85}
.photo-hero .over .t{font-family:var(--font-brand);font-weight:700;font-size:clamp(16px,1.8vw,22px);margin-top:4px}

/* ---------- acessibilidade / reduced motion ---------- */
@media(prefers-reduced-motion:reduce){
  *{animation:none!important}
  .rv,.hero .line>span{opacity:1!important;transform:none!important}
  .ill .draw{stroke-dashoffset:0!important}
  .ill .node-t,.ill .node-c{opacity:1!important}
  .hero-bg{transform:none!important}
  .wipe{clip-path:inset(0 0 0 0)!important}
  .ticker .track{animation:none!important}
  .band img{transform:none!important}
}
