/* Geist (SIL OFL 1.1, Vercel) servida daqui mesmo: nenhuma fonte de terceiro em runtime. */
@font-face{font-family:"Geist";src:url(fonts/geist-latin.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Geist Mono";src:url(fonts/geist-mono-latin.woff2) format("woff2");font-weight:100 900;font-display:swap}

:root{
  --ink:#121110;
  --ink-2:#5C5850;
  --paper:#EDEAE3;
  --paper-2:#E3DFD6;
  --line:#CFC9BD;
  --red:#DE3A16;
  --red-2:#FF6A45;
  --fog:#A39E94;
  --display:"Geist",ui-sans-serif,system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --mono:"Geist Mono",ui-monospace,"Cascadia Mono",Consolas,Menlo,monospace;
  --gut:clamp(16px,4.5vw,64px);
  --barra:52px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--ink);color:var(--paper);
  font-family:var(--display);font-size:17px;line-height:1.55;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3{margin:0;font-weight:650;letter-spacing:-.03em;line-height:1.04}
p{margin:0}
.eb,.cat{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.eb{color:var(--red-2);display:flex;align-items:center;gap:10px}
.claro .eb,.areia .eb{color:var(--red)}
.cat{color:var(--fog);display:block;margin-bottom:12px}
.claro .cat,.areia .cat{color:var(--ink-2)}
.nota{font-family:var(--mono);font-size:11.5px;color:var(--fog);max-width:70ch}
.claro .nota,.areia .nota{color:var(--ink-2)}
.tri{width:10px;height:9px;background:currentColor;clip-path:polygon(50% 0,100% 100%,0 100%);display:inline-block}

.escuro{background:var(--ink);color:var(--paper)}
.claro{background:var(--paper);color:var(--ink)}
.areia{background:var(--paper-2);color:var(--ink)}

/* ---------- barra fixa ---------- */
.barra{
  position:fixed;inset:0 0 auto 0;height:var(--barra);z-index:50;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:0 var(--gut);color:var(--paper);mix-blend-mode:difference;
  font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;
}
.barra__nome{text-decoration:none}
.barra__cap{opacity:.8;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:55vw}
.barra__prog{position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform-origin:0 50%;transform:scaleX(0)}
html:not(.motion) .barra__prog{display:none}

/* ================= BASE ESTÁTICA (modo reduzido e sem JS) ================= */
.cena{position:relative;padding:calc(var(--barra) + 48px) var(--gut) 72px}
.cena h2{font-size:clamp(34px,6vw,76px);max-width:16ch}
.lead,.op__lead,.so__lead{font-size:clamp(17px,1.6vw,21px);max-width:52ch;color:inherit;opacity:.82}

/* 1 abertura */
.abertura{min-height:100svh;padding:0;overflow:hidden;display:flex;align-items:flex-end}
.ab__foto{position:absolute;inset:0}
.ab__foto img{width:100%;height:100%;object-fit:cover;object-position:50% 42%}
.ab__veu{position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(18,17,16,.82) 0%,rgba(18,17,16,.35) 55%,rgba(18,17,16,0) 80%),
  linear-gradient(0deg,rgba(18,17,16,.9) 0%,rgba(18,17,16,0) 55%)}
.ab__txt{position:relative;z-index:2;padding:0 var(--gut) clamp(40px,9vh,96px);max-width:1100px}
.ab__h1{font-size:clamp(40px,7.4vw,112px);line-height:.98;letter-spacing:-.045em;margin:18px 0 22px;max-width:13ch}
.ab__h1 em{font-style:normal;color:var(--red-2)}
.m{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.w{display:inline-block}
.ab__sub{font-size:clamp(16px,1.5vw,20px);max-width:54ch;color:#D9D4CB}
.ab__sub b{color:var(--paper);font-weight:600}
.ab__dica{display:none}
.motion .abertura::after{content:"";position:absolute;inset:0;background:var(--ink);z-index:4;pointer-events:none;animation:abre 1.6s .1s cubic-bezier(.4,0,.2,1) both}
@keyframes abre{from{opacity:1}to{opacity:0}}

/* 2 números */
.nu__palco{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:28px}
.nu__item b{display:block;font-size:clamp(64px,10vw,140px);font-weight:700;letter-spacing:-.05em;line-height:1;font-variant-numeric:tabular-nums}
.nu__item span{font-family:var(--mono);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--fog)}
.nu__trilho{display:none}

/* 3 sistemas */
.hz__trilho{display:flex;flex-direction:column;gap:64px}
.hz__painel--abre h2{margin:14px 0 18px}
.hz__tela{border-radius:14px;overflow:hidden;background:#1d1b19;box-shadow:0 30px 80px -30px rgba(0,0,0,.7);aspect-ratio:16/10}
.hz__tela img{width:100%;height:100%;object-fit:cover;object-position:50% 0}
.hz__txt{margin-top:26px;max-width:62ch}
.hz__id{display:block;font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--red-2);margin-bottom:12px}
.hz__txt h3{font-size:clamp(26px,3vw,42px);margin-bottom:16px;max-width:20ch}
.hz__txt p{color:#CFC9BD;margin-bottom:12px}
.hz__txt .forte{color:var(--paper);font-size:1.08em;font-weight:500}
.dados{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:8px;font-family:var(--mono);font-size:12px;color:var(--fog)}
.dados li{border-top:1px solid #2c2926;padding-top:8px}
.dados b{display:block;color:var(--paper);font-weight:500}
.hz__contador{display:none}

/* 4 engenharia */
.en__palco{margin-bottom:56px}
.en__frase{font-size:clamp(30px,4.6vw,68px);line-height:1.08;letter-spacing:-.035em;font-weight:600;max-width:22ch;margin-top:18px}
.en__cabo-wrap{position:relative;padding-left:44px;max-width:900px}
.en__cabo{position:absolute;left:9px;top:8px;bottom:0;width:2px;background:var(--red);transform-origin:50% 0}
.en__item{position:relative;padding:0 0 48px}
.en__item .no{position:absolute;left:-44px;top:2px;width:20px;height:20px;border-radius:50%;background:var(--paper);border:2px solid var(--red)}
.en__item h3{font-size:clamp(24px,2.8vw,38px);margin-bottom:12px}
.en__item p{max-width:60ch;color:#3a3732}
.en__selos,.fe__selos{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.en__selos li,.fe__selos li{border-top:1px solid currentColor;padding-top:12px}
.en__selos b,.fe__selos b{display:block;font-weight:600;font-size:15px}
.en__selos span,.fe__selos span{font-size:14px;opacity:.7}

/* 5 operação */
.op__cab{max-width:900px}
.op__lead{margin-top:18px}
.op__ordem{display:flex;flex-wrap:wrap;gap:6px 18px;margin:26px 0 40px;font-size:clamp(20px,2.6vw,34px);font-weight:600;letter-spacing:-.02em}
.op__ordem span{color:var(--ink)}
.op__ordem span+span::before{content:"";display:inline-block;width:18px;height:2px;background:var(--red);vertical-align:middle;margin-right:18px}
.op__caps{display:grid;gap:56px}
.op__cap h3{font-size:clamp(28px,4.2vw,60px);max-width:18ch;margin-bottom:22px}
.op__cap p{max-width:58ch;color:#3a3732}
.bar{position:relative;height:clamp(46px,7vh,70px);margin:8px 0 22px;max-width:980px}
.bar i{position:absolute;inset:0 auto 0 0;border-radius:6px}
.bar__fantasma{width:calc(var(--de)*100%);border:1.5px dashed #9c958a}
.bar__cheia{width:100%;background:var(--ink);transform-origin:0 50%;transform:scaleX(var(--para))}
.bar span{position:absolute;top:calc(100% + 6px);font-family:var(--mono);font-size:12px;letter-spacing:.06em}
.bar__de{left:0;color:var(--ink-2)}
.bar__para{right:0;color:var(--red);font-weight:500}
.op__risco .riscado{color:var(--ink-2);background:linear-gradient(var(--red),var(--red)) no-repeat 0 58%/100% .08em}
.op__depois{color:var(--red);display:inline-block}
.operacao .nota{margin-top:40px}

/* 6 solar */
.so__palco{display:grid;gap:40px}
.so__lead{margin-top:18px}
.so__rot{position:relative;margin:36px 0 14px;font-size:clamp(32px,4.6vw,64px);font-weight:650;letter-spacing:-.04em;line-height:1.02}
.so__rot b{display:block;font-weight:inherit}
.so__de{display:none!important}
.so__leg{color:#CFC9BD;max-width:48ch;margin-bottom:12px}
.so__leg2{color:var(--paper)}
.pt{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--red-2);margin-right:6px}
.so__grade{display:grid;grid-template-columns:repeat(10,1fr);gap:clamp(6px,1vw,12px);max-width:560px;align-self:center}
.so__grade i{aspect-ratio:1;border-radius:50%;background:var(--paper)}
.so__grade i.fora{opacity:.12;transform:scale(.45)}
.so__grade i.rap{background:var(--red-2)}
.so__vba{margin-top:72px;max-width:760px;border-top:1px solid #2c2926;padding-top:28px}
.so__vba h3{font-size:clamp(24px,2.8vw,38px);margin-bottom:12px}
.so__vba p{color:#CFC9BD;margin-bottom:16px}

/* 7 rotinas */
.ro__cab p{max-width:58ch;color:#CFC9BD;margin-top:18px}
.ro__tela{margin-top:36px;border-radius:14px;overflow:hidden;background:#0e1014;position:relative}
.ro__tela img{width:100%;margin:0 auto}
.ro__leg{font-family:var(--mono);font-size:11.5px;color:var(--fog);padding:14px 18px}

/* 8 diferenciais */
.di__cab p{max-width:60ch;color:#3a3732;margin-top:18px}
.di__corpo{margin-top:48px;display:grid;gap:28px}
.di__odo{display:none}
.di__cartas{display:grid;gap:40px}
.di__carta h3{font-size:clamp(28px,3.8vw,54px);max-width:18ch;margin-bottom:16px}
.di__carta p{max-width:56ch;color:#3a3732}
.di__pe{margin:56px 0 0;max-width:72ch;color:var(--ink-2);font-size:clamp(16px,1.4vw,19px)}

/* 9 acervo */
.acervo{overflow:hidden;padding-bottom:120px}
.ac__cab p{color:#CFC9BD;margin-top:18px;max-width:52ch}
.ac__faixa{margin-top:36px;white-space:nowrap}
.ac__linha{display:inline-flex;gap:0;flex-wrap:wrap}
.ac__linha span{font-size:clamp(34px,6vw,88px);font-weight:650;letter-spacing:-.04em;line-height:1.1;padding-right:.6em}
.ac__linha span::after{content:"";display:inline-block;width:.18em;height:.18em;border-radius:50%;background:var(--red-2);margin-left:.6em;vertical-align:middle}
.ac__faixa--b .ac__linha span{color:transparent;-webkit-text-stroke:1.2px var(--fog)}
html:not(.motion) .ac__linha{white-space:normal}

/* 10 sobre */
.sb__grade{display:grid;gap:40px}
.sb__foto{position:relative;aspect-ratio:928/984;max-width:460px;border-radius:18px;overflow:hidden;background:#d8d3c9}
.sb__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0}
.sb__img.on{opacity:1}
.sb__txt{max-width:66ch}
.sb__txt h2{margin-bottom:24px}
.sb__txt .abre{font-size:clamp(19px,1.8vw,24px);line-height:1.4;font-weight:500;margin-bottom:12px}
.sb__cap h3{font-size:clamp(22px,2.2vw,30px);margin:44px 0 14px}
.sb__cap p{color:#34312c;margin-bottom:14px}
.sb__linha{margin:56px 0 0}
.sb__linha div{display:grid;grid-template-columns:120px 1fr;gap:16px;padding:14px 0;position:relative;border-top:1px solid var(--line)}
.sb__linha dt{font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--red);padding-top:3px}
.sb__linha dd{margin:0;font-size:15px;color:#34312c}

/* 11 fechamento */
.fecho{background:var(--ink);color:var(--paper)}
.fe__palco{min-height:70svh;display:flex;align-items:center}
.fe__frase{font-size:clamp(36px,6.4vw,100px);font-weight:650;letter-spacing:-.04em;line-height:1.02;max-width:16ch}
.fe__base{margin-top:48px}
.fe__selos{margin-bottom:56px}
.fe__contato{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:26px 40px;margin:0}
.fe__contato dt{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--red-2);margin-bottom:6px}
.fe__contato dd{margin:0;color:#D9D4CB;overflow-wrap:anywhere}
.fecho footer{margin-top:72px;padding-top:20px;border-top:1px solid #2c2926;font-family:var(--mono);font-size:12px;color:var(--fog)}

@media (min-width:900px){
  .hz__painel:not(.hz__painel--abre){display:grid;grid-template-columns:1.25fr 1fr;gap:48px;align-items:center}
  .hz__txt{margin-top:0}
  .so__palco{grid-template-columns:1fr 1fr;align-items:center}
  .sb__grade{grid-template-columns:minmax(280px,.8fr) 1.2fr;gap:64px;align-items:start}
  .sb__foto{position:sticky;top:calc(var(--barra) + 32px)}
  .motion .di__corpo{grid-template-columns:220px 1fr}
}

/* ================= MODO MOVIMENTO ================= */
/* Cada palco preso ocupa exatamente a tela; a sequência dentro dele é da timeline. */
.motion .abertura,
.motion .numeros,
.motion .sistemas,
.motion .en__palco,
.motion .op__palco,
.motion .so__palco,
.motion .rotinas,
.motion .di__palco,
.motion .fe__palco{height:100vh;height:100svh}

/* 1 */
.motion .ab__foto{will-change:transform}
.motion .ab__foto img{transform-origin:50% 40%}
.motion .ab__dica{display:block;position:absolute;left:50%;bottom:22px;width:1px;height:52px;background:rgba(237,234,227,.25);overflow:hidden;z-index:3}
.motion .ab__dica i{position:absolute;left:0;top:0;width:1px;height:18px;background:var(--paper);animation:desce 1.8s cubic-bezier(.65,0,.35,1) infinite}
@keyframes desce{0%{transform:translateY(-20px)}100%{transform:translateY(56px)}}

/* 2 */
.motion .numeros{padding:0;overflow:hidden}
.motion .nu__palco{position:absolute;inset:0;display:block}
.motion .nu__item{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 var(--gut)}
.motion .nu__item b{font-size:clamp(120px,30vw,380px);line-height:.9}
.motion .nu__item span{font-size:clamp(13px,1.3vw,16px);margin-top:18px;color:#CFC9BD}
.motion .nu__trilho{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(8px,2vw,28px);position:absolute;left:var(--gut);right:var(--gut);bottom:clamp(24px,6vh,56px);margin:0;padding:0;list-style:none}
.motion .nu__trilho li{position:relative;padding-top:14px;opacity:.28}
.motion .nu__trilho b{display:block;font-size:clamp(20px,2.4vw,32px);font-weight:650;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.motion .nu__trilho span{font-family:var(--mono);font-size:clamp(9px,1vw,12px);letter-spacing:.08em;text-transform:uppercase;color:var(--fog)}
.motion .nu__trilho i{position:absolute;left:0;right:0;top:0;height:2px;background:var(--red-2);transform-origin:0 50%;transform:scaleX(0)}
.motion .nu__trilho li::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:#2c2926}

/* 3 */
.motion .sistemas{padding:0;overflow:hidden}
.motion .hz__trilho{flex-direction:row;gap:0;height:100%;width:max-content;will-change:transform}
.motion .hz__painel{flex:0 0 100vw;width:100vw;height:100%;padding:calc(var(--barra) + 20px) var(--gut) 64px}
.motion .hz__painel--abre{flex-basis:min(100vw,760px);width:min(100vw,760px);display:flex;flex-direction:column;justify-content:center}
.motion .hz__painel--abre h2{font-size:clamp(44px,7vw,104px)}
.motion .hz__tela{position:relative}
.motion .hz__tela img{position:absolute;top:0;left:-7%;width:114%;max-width:none;height:100%}
.motion .hz__contador{display:flex;align-items:center;gap:12px;position:absolute;left:var(--gut);bottom:24px;font-family:var(--mono);font-size:12px;letter-spacing:.12em;color:var(--fog)}
.motion .hz__contador span{color:var(--paper)}
.motion .hz__contador i{display:block;width:120px;height:1px;background:#2c2926}
.motion .hz__contador i b{display:block;height:100%;background:var(--red-2);transform-origin:0 50%;transform:scaleX(0)}

/* 4 */
.motion .en__palco{display:flex;flex-direction:column;justify-content:center;margin:0 calc(var(--gut)*-1);padding:0 var(--gut)}
.motion .engenharia{padding-top:0}
.motion .en__frase .w{opacity:.14}
.motion .en__item{opacity:.22}
.motion .en__item .no{transform:scale(.55)}
.motion .en__cabo{transform:scaleY(0)}

/* 5 */
.motion .operacao{padding:0}
.motion .op__palco{position:relative;padding:calc(var(--barra) + 24px) var(--gut) 40px;display:flex;flex-direction:column}
.motion .op__lead{font-size:clamp(15px,1.3vw,18px)}
.motion .op__ordem{margin:18px 0 0}
.motion .op__ordem span{color:#b5aea3}
.motion .op__caps{position:relative;flex:1;display:block}
.motion .op__cap{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center}
.motion .operacao .nota{margin-top:0}

/* 6 */
.motion .solar{padding:0}
.motion .so__palco{padding:calc(var(--barra) + 24px) var(--gut) 32px;align-content:center}
.motion .so__rot{height:2.1em}
.motion .so__rot b{position:absolute;left:0;top:0}
.motion .so__de{display:block!important}
.motion .so__leg2{opacity:0}
.motion .so__grade i.fora{opacity:1;transform:none}
.motion .so__grade i.rap{background:var(--paper)}
.motion .so__vba{margin:0 var(--gut);padding-bottom:96px}

/* 7 */
.motion .rotinas{padding:0;overflow:hidden}
.motion .ro__cab{position:absolute;left:var(--gut);right:var(--gut);top:calc(var(--barra) + 24px);z-index:2}
.motion .ro__tela{position:absolute;inset:0;margin:0;border-radius:0;will-change:transform}
.motion .ro__tela img{max-width:1180px;will-change:transform}
.motion .ro__leg{position:absolute;left:0;right:0;bottom:0;padding:48px var(--gut) 22px;background:linear-gradient(0deg,#0e1014 45%,rgba(14,16,20,0))}

/* 8 */
.motion .difer{padding:0}
.motion .di__palco{padding:calc(var(--barra) + 24px) var(--gut) 40px;display:flex;flex-direction:column}
.motion .di__corpo{flex:1;margin-top:28px;align-items:center}
.motion .di__odo{display:flex;font-size:clamp(90px,16vw,220px);font-weight:700;letter-spacing:-.06em;line-height:1;height:1em;overflow:hidden;color:var(--red)}
.motion .di__col{display:flex;flex-direction:column}
.motion .di__cartas{position:relative;display:block;height:clamp(300px,46svh,440px)}
.motion .di__carta{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;background:var(--paper)}
.motion .di__pe{padding:0 var(--gut) 96px;margin-top:0}

/* 9 */
.motion .ac__linha{flex-wrap:nowrap;will-change:transform}
.motion .ac__faixa{margin-top:28px}

/* 10 */
.motion .sb__img{transition:none}

/* 11 */
.motion .fecho{padding:0;background:var(--paper);color:var(--ink)}
.motion .fe__frase{perspective:900px}
.motion .fe__frase .w{transform-origin:50% 100%}
.motion .fe__palco{padding:0 var(--gut)}
.motion .fe__base{margin:0;padding:0 var(--gut) 40px}

@media (max-width:899px){
  .motion .hz__painel:not(.hz__painel--abre){display:flex;flex-direction:column;justify-content:center;gap:18px}
  .motion .hz__tela{flex:0 0 auto;height:30svh;aspect-ratio:auto}
  .motion .hz__txt{margin-top:0}
  .motion .hz__txt h3{font-size:24px;margin-bottom:10px}
  .motion .hz__txt p{font-size:14.5px;line-height:1.45;margin-bottom:8px}
  .motion .hz__txt .forte{font-size:15.5px}
  .motion .dados{font-size:10.5px;gap:5px;margin-top:10px}
  .motion .dados li{padding-top:5px}
  .motion .op__cap h3{font-size:clamp(26px,7.4vw,40px);margin-bottom:14px}
  .motion .op__cap p{font-size:15px}
  .motion .op__ordem{font-size:18px;gap:4px 12px}
  .motion .op__ordem span+span::before{width:10px;margin-right:12px}
  .motion .so__palco{gap:20px}
  .motion .so__rot{margin:18px 0 10px;font-size:30px}
  .motion .so__lead{font-size:15px}
  .motion .so__leg{font-size:14.5px}
  .motion .so__grade{gap:7px;max-width:300px;justify-self:start}
  .motion .ro__tela img{width:175vw;max-width:none}
  .motion .di__corpo{grid-template-columns:1fr;align-items:stretch}
  .motion .di__odo{font-size:72px}
  .motion .di__cab p{font-size:15px}
  /* no celular o retrato vira uma faixa presa no topo e o texto corre por baixo dela */
  /* a borda de papel em cima esconde o texto que passaria por trás da barra */
  .motion .sb__foto{position:sticky;top:0;z-index:2;max-width:none;aspect-ratio:auto;height:calc(30svh + var(--barra));border-top:var(--barra) solid var(--paper);border-radius:0;margin:0 calc(var(--gut)*-1);background:var(--paper)}
  .motion .sb__img{object-position:50% 35%}
}
@media (max-width:899px) and (max-height:700px){
  .motion .dados{display:none}
}

/* =====================================================================================
   SITE FINAL (24/09): o que a versão A não tinha e a página aprovada tem. O texto vem do
   ferramentas/monta_home.py, que copia da fonte-texto/; aqui só o desenho no mesmo idioma da A.
   ===================================================================================== */

/* barra: menu no meio, com o seletor de idioma (a bandeira vem do estilo.css das outras páginas) */
/* sem inversão de cor (ela inverteria a bandeira): a cor troca pela seção que está sob a barra */
.barra{mix-blend-mode:normal;color:var(--paper);transition:color .3s}
.barra.no-claro{color:var(--ink)}
html:not(.motion) .barra{mix-blend-mode:difference}   /* sem JS não há quem troque a cor: vale a inversão da A */
.barra.no-claro .barra__nav a.idioma::before{box-shadow:0 0 0 1px rgba(18,17,16,.25)}
.barra__nav{display:flex;gap:20px;align-items:center;font-family:var(--mono);font-size:11.5px;letter-spacing:.12em}
.barra__nav a{text-decoration:none;opacity:.78}
.barra__nav a:hover{opacity:1;color:var(--red-2)}
.barra__nav a.idioma{display:inline-flex;align-items:center;gap:6px;opacity:1}
.barra__nav a.idioma::before{content:"";display:inline-block;width:18px;height:12px;flex:none;background-size:100% 100%;box-shadow:0 0 0 1px rgba(237,234,227,.3)}
.barra__nav a.idioma[hreflang="en"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1235 650'%3E%3Crect width='1235' height='650' fill='%23fff'/%3E%3Cg fill='%23B22234'%3E%3Crect y='0' width='1235' height='50'/%3E%3Crect y='100' width='1235' height='50'/%3E%3Crect y='200' width='1235' height='50'/%3E%3Crect y='300' width='1235' height='50'/%3E%3Crect y='400' width='1235' height='50'/%3E%3Crect y='500' width='1235' height='50'/%3E%3Crect y='600' width='1235' height='50'/%3E%3C/g%3E%3Crect width='494' height='350' fill='%233C3B6E'/%3E%3C/svg%3E")}
.barra__nav a.idioma[hreflang="pt-br"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 14'%3E%3Crect width='20' height='14' fill='%23009C3B'/%3E%3Cpolygon points='10,1.6 18.4,7 10,12.4 1.6,7' fill='%23FFDF00'/%3E%3Ccircle cx='10' cy='7' r='3.4' fill='%23002776'/%3E%3C/svg%3E")}
.barra__cap{min-width:0}
@media (max-width:1100px){.barra__cap{display:none}}
@media (max-width:899px){
  .barra__nav a:not(.idioma){display:none}
}
a:focus-visible{outline:2px solid var(--red-2);outline-offset:3px}

/* 1 abertura: o ▲ original e os dois botões */
.eb .pin{color:var(--red-2)}
.claro .eb .pin,.areia .eb .pin{color:var(--red)}
.ab__acoes{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{font-family:var(--mono);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;padding:14px 22px;text-decoration:none;border:1px solid var(--paper);display:inline-block;color:var(--paper)}
.btn--cheio{background:var(--paper);color:var(--ink)}
.btn:hover{background:var(--red-2);border-color:var(--red-2);color:var(--ink)}

/* 3 sistemas: título com link e "Ler o caso completo" */
.hz__txt h3 a{text-decoration:none}
.hz__txt h3 a:hover{color:var(--red-2)}
.hz__txt .ler{display:inline-block;margin-top:18px;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid var(--red-2);padding-bottom:3px}
.hz__txt .ler:hover{color:var(--red-2)}
.hz__painel--abre h2{max-width:14ch}

/* 4 engenharia: o título da seção no papel de sobretítulo */
.cena h2.eb{font-size:12px;font-weight:400;line-height:1.4;letter-spacing:.14em;max-width:none}

/* 5 operação: capítulos de subtítulo, ordem acesa e número riscado */
.op__cap--sub h3{font-size:clamp(26px,3.4vw,48px);max-width:22ch}
.op__cap--sub p{font-size:clamp(17px,1.6vw,21px)}
.op__ordem{font-size:clamp(28px,4.2vw,60px);display:block;margin:0 0 22px}
.op__ordem::before,.op__ordem span+span::before{content:none}
.motion .op__ordem .w{color:#b5aea3}
.op__risco .riscado{color:var(--ink-2);background:linear-gradient(var(--red),var(--red)) no-repeat 0 58%/100% .08em}
.op__risco .op__depois{color:var(--red)}
.motion .op__risco .riscado{background-size:0% .08em}
.motion .op__caps{min-height:0}

/* 6 solar: o problema, depois os 90 dias, depois o VBA */
.so__prob{margin-top:36px;max-width:56ch;border-top:1px solid #2c2926;padding-top:22px}
.so__prob h3{font-size:clamp(24px,2.8vw,38px);margin-bottom:12px}
.so__prob p{color:#CFC9BD}
.so__palco--dias{margin-top:56px}
.so__palco--dias .cat{color:var(--red-2)}
.so__palco--dias .so__rot{margin-top:6px}
.motion .so__palco:not(.so__palco--dias){height:auto;min-height:100svh;display:flex;flex-direction:column;justify-content:center}
.motion .so__palco--dias{margin-top:0}
.motion .so__palco--dias .so__rot{height:auto}
.motion .so__palco--dias .so__rot b{position:static}

/* 9 acervo: as faixas são decoração; os cartões e a lista trazem o texto */
.ac__grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px;margin-top:48px}
.ac__item{background:#1a1816;border:1px solid #2c2926;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;padding-bottom:18px}
.ac__mini{height:160px;background:#24211e;overflow:hidden;margin-bottom:16px}
.ac__mini img{width:100%;height:100%;object-fit:cover;object-position:top center}
.ac__item--sem .ac__mini{display:flex;align-items:center;justify-content:center}
.ac__mini span{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--fog)}
.ac__item .cat,.ac__item h3,.ac__item p,.ac__item .pe{padding:0 18px}
.ac__item .cat{color:var(--red-2);margin-bottom:8px}
.ac__item h3{font-size:20px;letter-spacing:-.02em;margin-bottom:8px}
.ac__item p{color:#CFC9BD;font-size:14.5px;line-height:1.5}
.ac__item .pe{margin-top:auto;padding-top:12px;font-family:var(--mono);font-size:11.5px;color:var(--fog)}
.ac__lista{margin-top:40px;border-top:1px solid var(--paper)}
.ac__linha2{display:grid;grid-template-columns:1.1fr 2fr .8fr;gap:20px;padding:16px 4px;border-bottom:1px solid #2c2926;align-items:baseline}
.ac__linha2 b{font-weight:600}
.ac__linha2 span{color:#CFC9BD;font-size:15px}
.ac__linha2 i{font-style:normal;font-family:var(--mono);font-size:12px;color:var(--fog);text-align:right}
@media (max-width:760px){.ac__linha2{grid-template-columns:1fr;gap:4px}.ac__linha2 i{text-align:left}}

/* 8 diferenciais: a coluna do odômetro tem a altura dos 3 algarismos. Sem isto o flex a esticava
   para a altura de UM, o yPercent andava 1/3 de algarismo e a contagem parava no 2 (medido 24/09). */
.motion .di__col{align-self:flex-start}

/* 10 sobre */
.sb__sub{color:var(--ink-2);margin:-12px 0 28px}

/* 11 fecho: resto da frase, selos com links e os dois blocos */
.fe__resto{font-size:clamp(18px,1.8vw,24px);max-width:48ch;margin:0 0 48px;opacity:.85}
.fe__selos a{color:var(--red-2)}
.fe__blocos{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:48px}
.fe__bloco h3{font-size:clamp(24px,2.6vw,34px);margin-bottom:22px}
.fe__bloco .fe__contato{grid-template-columns:1fr;gap:18px}
.fe__contato dd a{color:inherit}
