/* Blue Cinema e TV. Uma sessão de cinema: barras, tipografia gigante, cenas. Dois temas: escuro (luz apagada) e claro (luz acesa). */
:root{
  --bg:#04070d; --bg2:#080e18; --bg3:#0e1726; --bg-rgb:4,7,13;
  --texto:#f2f6fb; --texto-rgb:242,246,251; --texto-fraco:rgba(255,255,255,.72); --suave:#93a4bb;
  --borda:rgba(255,255,255,.1); --borda-forte:rgba(255,255,255,.25); --placeholder:rgba(255,255,255,.28);
  --traco:rgba(255,255,255,.8); --traco-fraco:rgba(255,255,255,.55);
  --azul:#0070b0; --azul2:#1f9ae6; --ciano:#4fd1ff; --realce:#4fd1ff;
  --grad:linear-gradient(135deg,#0070b0 0%,#1f9ae6 55%,#4fd1ff 100%);
  --grad-texto-escuro:linear-gradient(90deg,#fff 0%,#a9ecff 45%,#4fd1ff 100%);
  --grad-texto:var(--grad-texto-escuro);
  --barra-cor:#000; --rodape-bg:#000; --form-bg:rgba(4,7,13,.55); --cursor:rgba(255,255,255,.7);
  --display:'Unbounded',system-ui,sans-serif; --titulo:'Sora',system-ui,sans-serif; --fonte:'Inter',system-ui,sans-serif;
  --barra:28px; --topo:72px; --caixa:1320px; --lado:max(24px,calc((100vw - var(--caixa)) / 2));
  color-scheme:dark;
}
html[data-tema="claro"]{
  --bg:#f7f8fa; --bg2:#eef1f5; --bg3:#e3e8ef; --bg-rgb:247,248,250;
  --texto:#0a1222; --texto-rgb:10,18,34; --texto-fraco:rgba(10,18,34,.62); --suave:#5b6b82;
  --borda:rgba(10,18,34,.12); --borda-forte:rgba(10,18,34,.3); --placeholder:rgba(10,18,34,.32);
  --traco:rgba(10,18,34,.8); --traco-fraco:rgba(10,18,34,.5);
  --realce:#0070b0;
  --grad-texto:linear-gradient(90deg,#0a1222 0%,#0070b0 50%,#1f9ae6 100%);
  --barra-cor:#0a1222; --rodape-bg:#eef1f5; --form-bg:rgba(255,255,255,.75); --cursor:rgba(10,18,34,.7);
  color-scheme:light;
}
html.trocando *,html.trocando *::before,html.trocando *::after{transition:background-color .5s,color .5s,border-color .5s,fill .5s,stroke .5s,-webkit-text-stroke-color .5s !important}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;background:var(--barra-cor)}
body{margin:0;background:var(--bg);color:var(--texto);font-family:var(--fonte);font-size:17px;line-height:1.6;overflow-x:hidden;padding:var(--barra) 0}
img,svg,video{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
h1,h2,h3{margin:0 0 .5em;line-height:1.1}
h3{font-family:var(--titulo);font-weight:600;font-size:1.15rem;letter-spacing:-.01em}
p{margin:0 0 1em}
ul,ol{margin:0;padding:0;list-style:none}
.caixa{width:min(var(--caixa),calc(100% - 48px));margin:0 auto}
.pular{position:absolute;left:-999px;top:0;background:var(--azul);color:#fff;padding:8px 14px;z-index:99}
.pular:focus{left:12px;top:40px}
.mel{position:absolute;left:-9999px;opacity:0;height:0;width:0}
html.cursor-ok body{cursor:none}
html.cursor-ok a,html.cursor-ok button,html.cursor-ok input,html.cursor-ok select,html.cursor-ok textarea,html.cursor-ok summary{cursor:none}

/* Tipos */
.overline{font-family:var(--titulo);font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--realce);margin:0 0 18px}
.overline a{color:var(--suave)}
.overline i{font-style:normal;opacity:.5;margin:0 8px}
.display{font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:-.02em;line-height:.98;font-size:clamp(2rem,5.2vw,4.6rem)}
.display--menor{font-size:clamp(1.5rem,3.2vw,2.6rem)}
em{font-style:normal;background:var(--grad-texto);-webkit-background-clip:text;background-clip:text;color:transparent}
.secao__cabeca{max-width:860px;margin-bottom:56px}
.secao__cabeca--linha{max-width:none;display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap}
.secao__cabeca--linha .secao__sub{max-width:440px;margin:0 0 8px}
.secao__sub{color:var(--suave);font-size:1.08rem;max-width:60ch}

/* Grão de filme */
.grao{position:absolute;inset:0;opacity:.14;pointer-events:none;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");animation:grao .6s steps(2) infinite}
@keyframes grao{0%{transform:translate(0,0)}50%{transform:translate(-6px,4px)}100%{transform:translate(3px,-5px)}}

/* Botões */
.botao{display:inline-flex;align-items:center;gap:10px;background:var(--grad);color:#fff;font-family:var(--titulo);font-weight:600;font-size:.92rem;letter-spacing:.02em;padding:14px 24px;border-radius:999px;border:0;box-shadow:0 10px 30px -10px rgba(31,154,230,.7);transition:transform .25s,box-shadow .25s,filter .25s;white-space:nowrap}
.botao:hover{transform:translateY(-2px);box-shadow:0 16px 40px -12px rgba(79,209,255,.8);filter:saturate(1.15)}
.botao i{font-style:normal;transition:transform .25s}
.botao:hover i{transform:translateX(4px)}
.botao--grande{padding:18px 30px;font-size:1rem}
.botao--mini{padding:10px 18px;font-size:.82rem}
.botao--vazado{background:rgba(var(--texto-rgb),.04);color:var(--texto);border:1px solid var(--borda-forte);box-shadow:none;backdrop-filter:blur(8px)}
.botao--vazado:hover{background:rgba(var(--texto-rgb),.09);box-shadow:none;filter:none;border-color:var(--realce)}

/* Barras de cinema */
.cine{position:fixed;left:0;right:0;height:var(--barra);background:var(--barra-cor);z-index:70;display:flex;align-items:center;justify-content:space-between;padding:0 18px;transition:height 1.4s cubic-bezier(.76,0,.24,1)}
.cine--cima{top:0}
.cine--baixo{bottom:0}
html.abrindo .cine--cima,html.abrindo .cine--baixo{height:50vh}
.cine__hud{font-family:var(--titulo);font-size:.62rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.55);white-space:nowrap}
.cine__hud i{font-style:normal;color:var(--ciano);margin:0 6px;font-size:.5rem}
.cine__hud b{font-weight:600;color:#fff;font-variant-numeric:tabular-nums}

/* Topo: sobre a tela escura o texto é branco; quando fica sólido, usa as cores do tema */
.topo{--cor-topo:#fff;--cor-menu:rgba(255,255,255,.72);--borda-topo:rgba(255,255,255,.28);position:fixed;left:0;right:0;top:var(--barra);z-index:50;transition:background .3s,border-color .3s;border-bottom:1px solid transparent}
.topo--solido{--cor-topo:var(--texto);--cor-menu:var(--suave);--borda-topo:var(--borda-forte);background:rgba(var(--bg-rgb),.8);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-color:var(--borda)}
.topo__faixa{width:min(var(--caixa),calc(100% - 48px));margin:0 auto;height:var(--topo);display:flex;align-items:center;gap:24px}
.logo{display:flex;align-items:baseline;gap:10px}
.logo img{width:auto;height:38px}
.logo__azul{display:none}
html[data-tema="claro"] .topo--solido .logo__branco{display:none}
html[data-tema="claro"] .topo--solido .logo__azul{display:block}
.logo__texto{font-family:var(--titulo);font-weight:600;font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:var(--cor-menu)}
.logo__texto i{font-style:normal;color:var(--realce)}
.menu{margin-left:auto;display:flex;align-items:center;gap:26px;font-family:var(--titulo);font-size:.84rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--cor-menu)}
.menu a:not(.botao){position:relative;padding:6px 0;transition:color .2s}
.menu a:not(.botao)::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--grad);transition:right .25s}
.menu a:not(.botao):hover{color:var(--cor-topo)}
.menu a:not(.botao):hover::after{right:0}
.topo__cta{display:none}
.hamburguer{display:none;margin-left:auto;background:none;border:0;width:44px;height:44px;flex-direction:column;justify-content:center;gap:6px;align-items:center}
.hamburguer span{display:block;width:24px;height:2px;background:var(--cor-topo);transition:transform .3s,opacity .3s,background .3s}
.hamburguer[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.hamburguer[aria-expanded="true"] span:nth-child(2){opacity:0}
.hamburguer[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}

/* Seletor de tema: luz apagada / luz acesa */
.tema{display:inline-flex;align-items:center;padding:3px;border:1px solid var(--borda-topo);border-radius:999px;gap:2px}
.tema__opcao{display:inline-flex;align-items:center;gap:6px;background:none;border:0;border-radius:999px;padding:6px 11px;font:inherit;font-family:var(--titulo);font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--cor-menu);transition:background .25s,color .25s}
.tema__opcao svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tema__opcao[aria-pressed="true"]{background:var(--cor-topo);color:var(--bg)}
.topo:not(.topo--solido) .tema__opcao[aria-pressed="true"]{color:#04070d}
.tema__opcao:hover:not([aria-pressed="true"]){color:var(--cor-topo)}

/* Abertura (herói): a tela do cinema, sempre escura */
.abertura{position:relative;min-height:calc(100svh - var(--barra) * 2);display:grid;align-items:end;padding:calc(var(--topo) + 48px) 0 96px;overflow:hidden;isolation:isolate;color:#fff}
.abertura__fundo{position:absolute;inset:0;z-index:-1;background:#02050a}
.abertura__video,.abertura__img{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.6s ease .4s}
html:not(.abrindo) .abertura__video,html:not(.abrindo) .abertura__img{opacity:.78}
.abertura__img{animation:kenburns 14s ease-out forwards}
@keyframes kenburns{from{transform:scale(1.14)}to{transform:scale(1.02)}}
.abertura__veu{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,7,13,.55) 0%,rgba(4,7,13,.15) 35%,rgba(4,7,13,.55) 70%,var(--bg) 100%),linear-gradient(90deg,rgba(4,7,13,.7) 0%,rgba(4,7,13,.2) 60%,transparent 100%)}
html[data-tema="claro"] .abertura__veu{background:linear-gradient(180deg,rgba(4,7,13,.55) 0%,rgba(4,7,13,.2) 40%,rgba(4,7,13,.75) 78%,var(--bg) 100%),linear-gradient(90deg,rgba(4,7,13,.7) 0%,rgba(4,7,13,.2) 60%,transparent 100%)}
.abertura__conteudo{position:relative}
.abertura__overline{margin-bottom:22px;color:var(--ciano)}
.abertura__overline a{color:rgba(255,255,255,.65)}
.abertura__titulo{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(2.5rem,7.4vw,7.2rem);line-height:.94;letter-spacing:-.025em;max-width:13ch;margin:0 0 .35em}
.abertura__titulo--cena{font-size:clamp(2.1rem,5.6vw,5.4rem);max-width:16ch}
.abertura em{background:var(--grad-texto-escuro);-webkit-background-clip:text;background-clip:text}
.abertura__titulo .p{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.08em;margin-bottom:-.08em}
.abertura__titulo .p>span{display:inline-block;transform:translateY(110%);transition:transform 1s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--k) * 70ms + .5s)}
html:not(.abrindo) .abertura__titulo .p>span{transform:none}
.abertura__base{display:grid;grid-template-columns:minmax(0,560px) auto;gap:40px;align-items:end;justify-content:space-between}
.abertura__sub{font-size:clamp(1rem,1.3vw,1.2rem);color:rgba(255,255,255,.78);max-width:56ch;margin:0}
.abertura__acoes{display:flex;flex-wrap:wrap;gap:14px}
.abertura .botao--vazado{color:#fff;background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.3)}
.abertura .botao--vazado:hover{background:rgba(255,255,255,.1);border-color:var(--ciano)}
.abertura__hud{position:absolute;left:0;right:0;bottom:30px;display:flex;justify-content:flex-start;align-items:center;gap:28px;padding:0 var(--lado);font-family:var(--titulo);font-size:.68rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.6);pointer-events:none}
.abertura__cue{position:absolute;left:50%;transform:translateX(-50%)}
.abertura__rec{display:inline-flex;align-items:center;gap:8px;color:#fff}
.abertura__rec i{width:9px;height:9px;border-radius:50%;background:#ff4d4d;box-shadow:0 0 12px #ff4d4d;animation:piscar 1.1s steps(2) infinite}
@keyframes piscar{to{opacity:.15}}
.abertura__cue b{display:inline-block;animation:cair 1.6s ease-in-out infinite;margin-left:6px}
@keyframes cair{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}

/* Letreiro gigante */
.letreiro{overflow:hidden;padding:30px 0;border-top:1px solid var(--borda);border-bottom:1px solid var(--borda);background:var(--bg2)}
.letreiro__linha{display:flex;align-items:center;width:max-content;white-space:nowrap;font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(2.2rem,6.4vw,6rem);line-height:1;animation:letreiro 70s linear infinite}
.letreiro__linha span{padding:0 .35em}
.letreiro__linha i{font-style:normal;color:var(--realce);font-size:.4em;-webkit-text-stroke:0}
.letreiro__linha--vazada{color:transparent;-webkit-text-stroke:1px var(--traco-fraco);font-size:clamp(1.6rem,4.4vw,4rem);margin-top:10px;animation-duration:90s;animation-direction:reverse}
@keyframes letreiro{to{transform:translateX(-50%)}}

/* Cenas (soluções) */
.cenas{padding:140px 0 100px}
.cenas__grade{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:start}
.cenas__quadro{position:sticky;top:calc(var(--barra) + var(--topo) + 24px)}
.quadro{position:relative;aspect-ratio:16/10;background:#000;overflow:hidden;border-radius:4px;box-shadow:0 40px 100px -40px rgba(0,0,0,.9)}
.quadro__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.1);transition:opacity .9s ease,transform 9s linear}
.quadro__img.ativa{opacity:1;transform:scale(1)}
.quadro::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(4,7,13,.75),transparent 45%);pointer-events:none}
.quadro__canto{position:absolute;width:22px;height:22px;border:2px solid rgba(255,255,255,.7);z-index:2}
.quadro__canto--1{left:16px;top:16px;border-right:0;border-bottom:0}
.quadro__canto--2{right:16px;top:16px;border-left:0;border-bottom:0}
.quadro__canto--3{left:16px;bottom:16px;border-right:0;border-top:0}
.quadro__canto--4{right:16px;bottom:16px;border-left:0;border-top:0}
.quadro__hud{position:absolute;left:28px;right:28px;bottom:26px;z-index:2;display:flex;justify-content:space-between;align-items:baseline;gap:16px;font-family:var(--titulo);font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.quadro__hud b{color:var(--ciano);font-weight:600}
.quadro__hud span:last-child{font-family:var(--display);font-size:.95rem;letter-spacing:0;text-transform:none;color:#fff}
.cenas__lista{border-bottom:1px solid var(--borda)}
.cena a{display:grid;grid-template-columns:56px minmax(0,1fr) 40px;gap:22px;align-items:center;padding:30px 0;border-top:1px solid var(--borda);transition:padding .35s}
.cena__n{font-family:var(--titulo);font-weight:600;font-size:.85rem;letter-spacing:.1em;color:var(--suave);transition:color .3s;align-self:start;padding-top:8px}
.cena h3{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(1.25rem,2vw,1.85rem);letter-spacing:-.02em;line-height:1.05;margin:0 0 8px;color:var(--texto-fraco);transition:color .3s,transform .4s}
.cena p{margin:0;color:var(--suave);font-size:.95rem;max-height:0;overflow:hidden;opacity:0;transition:max-height .5s ease,opacity .4s}
.cena__seta{font-size:1.5rem;color:var(--suave);transition:transform .35s,color .3s;justify-self:end}
.cena.ativa h3,.cena a:hover h3{color:var(--texto);transform:translateX(8px)}
.cena.ativa .cena__n{color:var(--realce)}
.cena.ativa p{max-height:120px;opacity:1}
.cena.ativa .cena__seta,.cena a:hover .cena__seta{transform:translateX(6px);color:var(--realce)}
.cena__img{display:none}

/* Números */
.numeros{padding:120px 0;overflow:hidden;border-top:1px solid var(--borda);border-bottom:1px solid var(--borda)}
.numeros__trilho{display:flex;gap:7vw;padding:0 var(--lado);white-space:nowrap;will-change:transform}
.numero{display:flex;flex-direction:column;gap:8px}
.numero strong{font-family:var(--display);font-weight:800;font-size:clamp(4rem,11vw,10rem);line-height:.9;letter-spacing:-.03em;color:transparent;-webkit-text-stroke:2px var(--traco);font-variant-numeric:tabular-nums}
.numero:nth-child(odd) strong{color:var(--texto);-webkit-text-stroke:0}
.numero>span{font-family:var(--titulo);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--suave)}

/* Sala de projeção */
.sala{padding:140px 0 110px;background:var(--bg2)}
.sala__dica{display:block;margin-top:10px;font-family:var(--titulo);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--realce)}
.sala__trilho{display:flex;gap:28px;overflow-x:auto;scroll-snap-type:x proximity;scroll-padding-left:var(--lado);padding:8px var(--lado) 28px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.sala__trilho::-webkit-scrollbar{display:none}
.sala__trilho.arrastando{scroll-snap-type:none;user-select:none}
.filme{flex:0 0 min(78vw,760px);scroll-snap-align:start;margin:0;display:block}
.filme--cena{flex-basis:min(70vw,460px)}
.filme__capa{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;padding:0;background:#000;overflow:hidden;border-radius:4px;box-shadow:0 30px 80px -30px rgba(0,0,0,.6)}
.filme__capa img{width:100%;height:100%;object-fit:cover;filter:saturate(.75) contrast(1.05);transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .6s}
.filme:hover .filme__capa img{transform:scale(1.06);filter:saturate(1.05) contrast(1.05)}
.filme__capa::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(4,7,13,.7),transparent 50%)}
.filme__hud{position:absolute;left:20px;right:20px;top:18px;z-index:2;display:flex;justify-content:space-between;font-family:var(--titulo);font-size:.68rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.8)}
.filme__hud i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#ff4d4d;box-shadow:0 0 10px #ff4d4d;margin-right:8px;vertical-align:middle}
.filme__play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;width:92px;height:92px;border-radius:50%;background:rgba(4,7,13,.45);border:1px solid rgba(255,255,255,.5);backdrop-filter:blur(8px);display:grid;place-items:center;font-family:var(--display);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:#fff;transition:transform .35s,background .35s}
.filme:hover .filme__play{transform:translate(-50%,-50%) scale(1.1);background:rgba(31,154,230,.55)}
html.cursor-ok .filme__play{opacity:0}
.filme figcaption,.filme__legenda{display:flex;flex-direction:column;gap:4px;padding:18px 4px 0}
.filme figcaption strong,.filme__legenda strong{font-family:var(--display);font-size:1rem;text-transform:uppercase;letter-spacing:-.01em;color:var(--texto)}
.filme figcaption span,.filme__legenda span{font-size:.9rem;color:var(--suave)}
.filme__capa--cta{display:grid;place-items:center;padding:40px;background:linear-gradient(135deg,rgba(0,112,176,.45),rgba(79,209,255,.1)),#06101c;border:1px solid rgba(79,209,255,.3);color:#fff;font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(1.3rem,2.4vw,2.2rem);line-height:1.05;text-align:center;letter-spacing:-.02em}
.filme__capa--cta em{background:var(--grad-texto-escuro);-webkit-background-clip:text;background-clip:text}
.filme__capa--cta::after{display:none}
.sala--outras{background:var(--bg);padding-top:110px}

/* Processo */
.processo{padding:150px 0 120px}
.processo__grade{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:80px;align-items:start}
.processo__fixo{position:sticky;top:calc(var(--barra) + var(--topo) + 40px)}
.processo__num{font-family:var(--display);font-weight:800;font-size:clamp(6rem,17vw,16rem);line-height:.85;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:2px var(--realce);font-variant-numeric:tabular-nums;transition:opacity .3s}
.processo__num.trocando{opacity:0}
.processo__barra{margin-top:36px;height:2px;background:var(--borda);max-width:360px;overflow:hidden}
.processo__barra i{display:block;height:100%;width:20%;background:var(--grad);transition:width .5s cubic-bezier(.2,.7,.2,1)}
.passo{padding:44px 0;border-top:1px solid var(--borda);opacity:.3;transition:opacity .5s;display:grid;grid-template-columns:72px minmax(0,1fr);gap:20px}
.passo:last-child{border-bottom:1px solid var(--borda)}
.passo.ativo{opacity:1}
.passo__n{grid-row:1 / span 2;font-family:var(--titulo);font-weight:600;font-size:.8rem;letter-spacing:.14em;color:var(--realce);padding-top:10px}
.passo h3{grid-column:2;font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(1.2rem,2.2vw,1.9rem);letter-spacing:-.02em;margin:0 0 10px}
.passo p{grid-column:2;margin:0;color:var(--suave);font-size:1rem;max-width:48ch}

/* Manifesto */
.manifesto{position:relative;padding:170px 0 130px;overflow:hidden;isolation:isolate}
.manifesto__fundo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.5}
html[data-tema="claro"] .manifesto__fundo{opacity:.35}
.manifesto::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,var(--bg) 0%,rgba(var(--bg-rgb),.55) 30%,rgba(var(--bg-rgb),.75) 100%)}
html[data-tema="claro"] .manifesto::before{background:linear-gradient(180deg,var(--bg) 0%,rgba(var(--bg-rgb),.78) 30%,rgba(var(--bg-rgb),.9) 100%)}
.manifesto__texto{font-family:var(--titulo);font-weight:600;font-size:clamp(1.55rem,3.7vw,3.5rem);line-height:1.2;letter-spacing:-.025em;max-width:24ch;margin:0 0 90px}
.manifesto__texto .palavra{opacity:.16;transition:opacity .35s}
.manifesto__texto .palavra.acesa{opacity:1}
.diferenciais{display:grid;grid-template-columns:repeat(4,1fr);gap:40px 32px;border-top:1px solid var(--borda-forte);padding-top:40px}
.diferenciais__n{display:block;font-family:var(--titulo);font-size:.75rem;letter-spacing:.2em;color:var(--realce);margin-bottom:14px}
.diferenciais h3{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:.95rem;letter-spacing:0;margin-bottom:10px;line-height:1.2}
.diferenciais p{margin:0;color:var(--suave);font-size:.92rem}

/* Páginas de solução: blocos */
.bloco{padding:130px 0}
.duas-colunas{display:grid;grid-template-columns:1fr 1fr;gap:72px}
.lista-grande li{position:relative;padding:18px 0 18px 36px;border-top:1px solid var(--borda);font-size:1.08rem;color:var(--texto)}
.lista-grande li:last-child{border-bottom:1px solid var(--borda)}
.lista-grande li::before{content:"";position:absolute;left:4px;top:28px;width:10px;height:10px;border-radius:50%;background:var(--grad)}
.lista-grande--check li::before{width:14px;height:8px;border-radius:0;background:none;border-left:2px solid var(--realce);border-bottom:2px solid var(--realce);transform:rotate(-45deg);top:24px;left:2px}
.faq__lista{max-width:900px}
.faq details{border-top:1px solid var(--borda)}
.faq details:last-child{border-bottom:1px solid var(--borda)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;padding:26px 0;font-family:var(--display);font-weight:700;font-size:1.05rem;text-transform:uppercase;letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary i{font-style:normal;font-family:var(--titulo);font-size:1.6rem;color:var(--realce);transition:transform .3s;flex:none;line-height:1}
.faq details[open] summary i{transform:rotate(45deg)}
.faq details p{color:var(--suave);padding:0 0 26px;margin:0;max-width:70ch;font-size:1.02rem}

/* Corta (orçamento) */
.corta{position:relative;padding:150px 0 130px;overflow:hidden;isolation:isolate}
.corta__fundo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.45}
html[data-tema="claro"] .corta__fundo{opacity:.3}
.corta::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(var(--bg-rgb),.9) 0%,rgba(var(--bg-rgb),.75) 50%,rgba(var(--bg-rgb),.6) 100%),linear-gradient(180deg,var(--bg),transparent 30%,transparent 80%,var(--bg))}
.corta__grade{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:80px;align-items:start}
.corta__texto p{color:var(--suave);font-size:1.08rem;max-width:46ch}
.corta__texto .display{margin-bottom:.5em}
.corta__pontos{margin:30px 0 36px}
.corta__pontos li{padding:10px 0 10px 34px;position:relative;font-size:1rem}
.corta__pontos li::before{content:"";position:absolute;left:4px;top:17px;width:14px;height:8px;border-left:2px solid var(--realce);border-bottom:2px solid var(--realce);transform:rotate(-45deg)}
.formulario{display:flex;flex-direction:column;gap:22px;padding:40px;border:1px solid var(--borda-forte);background:var(--form-bg);backdrop-filter:blur(14px);border-radius:4px}
.campo{display:flex;flex-direction:column;gap:4px}
.campo--2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.campo--2>div{display:flex;flex-direction:column;gap:4px}
.campo label{font-family:var(--titulo);font-size:.68rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--suave)}
.campo input,.campo select,.campo textarea{width:100%;background:none;border:0;border-bottom:1px solid var(--borda-forte);border-radius:0;color:var(--texto);font:inherit;font-size:1.08rem;padding:12px 0;outline:0;transition:border-color .2s;-webkit-appearance:none;appearance:none}
.campo input::placeholder,.campo textarea::placeholder{color:var(--placeholder)}
.campo select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%231f9ae6' stroke-width='2'><path d='M4 6l4 4 4-4'/></svg>");background-repeat:no-repeat;background-position:right 4px center;padding-right:32px}
.campo select option{background:var(--bg3);color:var(--texto)}
.campo textarea{resize:vertical;min-height:70px}
.campo input:focus,.campo select:focus,.campo textarea:focus{border-color:var(--realce)}
.campo input.invalido{border-color:#ff6b6b}
.formulario .botao{justify-content:center;margin-top:6px}
.formulario__aviso{margin:0;font-size:.93rem;min-height:1.4em}
.formulario__aviso.ok{color:#1fa971}
html:not([data-tema="claro"]) .formulario__aviso.ok{color:#5cf0b0}
.formulario__aviso.erro{color:#e04848}
html:not([data-tema="claro"]) .formulario__aviso.erro{color:#ff8585}
.formulario__aviso a{color:var(--realce);text-decoration:underline}
.formulario__lgpd{font-size:.76rem;color:var(--suave);margin:0;text-align:center}
.formulario.enviando{opacity:.6;pointer-events:none}

/* Rodapé */
.rodape{border-top:1px solid var(--borda);padding:80px 0 36px;background:var(--rodape-bg);font-size:.93rem;overflow:hidden}
.rodape__fim{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(5rem,22vw,20rem);line-height:.8;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1px var(--traco-fraco);margin:0 0 60px;user-select:none}
.rodape__grade{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:48px;margin-bottom:56px}
.rodape__marca img{height:50px;width:auto;margin-bottom:16px}
.rodape__marca .logo__azul{display:none}
html[data-tema="claro"] .rodape__marca .logo__branco{display:none}
html[data-tema="claro"] .rodape__marca .logo__azul{display:block}
.rodape__marca p{color:var(--suave);max-width:40ch}
.rodape h3{font-family:var(--titulo);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--realce);margin-bottom:18px}
.rodape ul li{margin-bottom:9px;color:var(--suave)}
.rodape ul a:hover{color:var(--texto)}
.rodape__social{display:inline-flex;color:var(--suave);padding:8px 16px;border:1px solid var(--borda);border-radius:999px;font-size:.85rem}
.rodape__social:hover{color:var(--texto);border-color:var(--realce)}
.rodape__creditos{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:22px;border-top:1px solid var(--borda);color:var(--suave);font-family:var(--titulo);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase}

/* WhatsApp flutuante */
.zap{position:fixed;right:22px;bottom:calc(var(--barra) + 18px);width:56px;height:56px;border-radius:50%;background:#25d366;display:grid;place-items:center;z-index:45;box-shadow:0 14px 30px -8px rgba(37,211,102,.6);transition:transform .25s}
.zap:hover{transform:scale(1.08)}
.zap svg{width:30px;height:30px;fill:#fff}

/* Lightbox (sempre escuro: é a sala de projeção) */
.lightbox{position:fixed;inset:0;z-index:90;background:rgba(0,0,0,.94);display:grid;place-items:center;padding:40px}
.lightbox[hidden]{display:none}
.lightbox__quadro{width:min(1200px,100%);aspect-ratio:16/9;background:#000;box-shadow:0 60px 120px -40px rgba(0,0,0,1)}
.lightbox__quadro iframe{width:100%;height:100%;border:0;display:block}
.lightbox__fechar{position:absolute;right:28px;top:calc(var(--barra) + 16px);width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.06);color:#fff;font-size:1.1rem}

/* Cursor */
.cursor{position:fixed;left:0;top:0;z-index:100;pointer-events:none;display:none}
html.cursor-ok .cursor{display:block}
.cursor__ponto{position:absolute;left:0;top:0;width:8px;height:8px;border-radius:50%;background:var(--texto);transform:translate(-50%,-50%);transition:opacity .2s,background .3s}
.cursor__anel{position:absolute;left:0;top:0;width:40px;height:40px;border-radius:50%;border:1px solid var(--cursor);transform:translate(-50%,-50%);transition:width .3s,height .3s,background .3s,border-color .3s}
.cursor__rotulo{position:absolute;left:0;top:0;transform:translate(-50%,-50%);font-family:var(--display);font-size:.62rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#fff;opacity:0;transition:opacity .2s;white-space:nowrap}
.cursor.ativo .cursor__anel{width:88px;height:88px;background:rgba(31,154,230,.6);border-color:transparent;backdrop-filter:blur(4px)}
.cursor.ativo .cursor__ponto{opacity:0}
.cursor.ativo .cursor__rotulo{opacity:1}
.cursor.link .cursor__anel{width:56px;height:56px;border-color:var(--azul2)}

/* Revelar ao rolar */
html.js .revelar{opacity:0;transform:translateY(26px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i,0) * 80ms)}
html.js .revelar.visivel{opacity:1;transform:none}

/* 404 */
.erro404{min-height:70svh;display:grid;place-items:center;text-align:center;padding-top:var(--topo)}
.erro404 h1{font-size:clamp(4rem,16vw,12rem);margin:0;background:var(--grad-texto);-webkit-background-clip:text;background-clip:text;color:transparent}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  html.js .revelar{opacity:1;transform:none;transition:none}
  .letreiro__linha,.grao,.abertura__rec i,.abertura__cue b,.abertura__img{animation:none}
  .abertura__titulo .p>span{transition:none}
}

/* Responsivo */
@media (max-width:1100px){
  .cenas__grade{grid-template-columns:1fr;gap:0}
  .cenas__quadro{display:none}
  .cena a{grid-template-columns:44px minmax(0,1fr) 32px}
  .cena__img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:4px;margin-bottom:18px}
  .cena p{max-height:none;opacity:1}
  .cena h3{color:var(--texto)}
  .processo__grade{grid-template-columns:1fr;gap:40px}
  .processo__fixo{display:none}
  .corta__grade,.duas-colunas{grid-template-columns:1fr;gap:56px}
  .diferenciais{grid-template-columns:1fr 1fr}
  .rodape__grade{grid-template-columns:1fr 1fr}
  .abertura__base{grid-template-columns:1fr}
  .menu{gap:18px}
}
@media (max-width:820px){
  :root{--barra:16px;--topo:64px}
  body{font-size:16px}
  .cine{padding:0 12px}
  .cine__hud{font-size:.52rem;letter-spacing:.16em}
  .menu{position:fixed;inset:calc(var(--barra) + var(--topo)) 0 auto 0;flex-direction:column;align-items:stretch;gap:0;background:rgba(var(--bg-rgb),.97);border-bottom:1px solid var(--borda);padding:10px 24px 24px;transform:translateY(-12px);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;--cor-topo:var(--texto);--cor-menu:var(--suave);--borda-topo:var(--borda-forte);color:var(--suave)}
  .menu.aberto{opacity:1;transform:none;pointer-events:auto}
  .menu a:not(.botao){padding:16px 4px;border-bottom:1px solid var(--borda);font-size:1rem;color:var(--texto)}
  .menu .botao{margin-top:16px;justify-content:center}
  .menu .tema{margin-top:18px;align-self:flex-start}
  .menu .tema__opcao[aria-pressed="true"]{background:var(--texto);color:var(--bg)}
  .hamburguer{display:flex}
  .topo__cta{display:inline-flex;margin-left:auto}
  .abertura{padding:calc(var(--topo) + 32px) 0 84px}
  .abertura__acoes .botao{width:100%;justify-content:center}
  .abertura__hud{padding:0 24px;font-size:.6rem}
  .abertura__lente{display:none}
  .cenas{padding:96px 0 72px}
  .cena a{padding:22px 0}
  .numeros{padding:72px 0}
  .numeros__trilho{flex-wrap:wrap;gap:36px 28px;white-space:normal;padding:0 24px}
  .numero{flex:1 1 40%}
  .sala,.processo,.manifesto,.corta,.bloco{padding:90px 0 70px}
  .filme{flex-basis:84vw}
  .passo{grid-template-columns:48px minmax(0,1fr);padding:30px 0}
  .manifesto__texto{margin-bottom:60px}
  .diferenciais{grid-template-columns:1fr;gap:28px}
  .campo--2{grid-template-columns:1fr}
  .formulario{padding:26px 20px}
  .rodape__grade{grid-template-columns:1fr;gap:32px}
  .rodape__fim{margin-bottom:36px}
  .zap{right:16px;width:52px;height:52px}
  .lightbox{padding:16px}
}
@media (max-width:480px){
  .topo__cta{display:none}
}
