:root{
  /* Tokens oficiais em riow-tokens.css (carregado antes). Aqui só os apelidos da série. */
  --bg:var(--green-950);--bg-2:var(--green-900);--bg-deep:#051610;
  --ink:var(--text-light);--ink-2:rgba(247,245,237,.72);--ink-3:rgba(247,245,237,.52);
  --line:rgba(247,245,237,.14);--line-2:rgba(247,245,237,.26);
  --serif:'Newsreader','Iowan Old Style','Times New Roman',serif;
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --gutter:clamp(20px,6.4vw,96px);
  --header:84px;
  --ease:cubic-bezier(.22,.61,.36,1);
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:var(--header)}
html.has-modal{overflow:hidden}
body{margin:0;min-width:320px;background:var(--bg);color:var(--ink);font:400 16px/1.55 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:100;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
img{display:block;max-width:100%}
button{font:inherit;color:inherit;cursor:pointer}
button:disabled{cursor:not-allowed}
a{color:inherit}
em{font-style:italic}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.sprite{position:absolute;overflow:hidden}
.icon{width:18px;height:18px;flex:none}
.icon-play{width:15px;height:15px}
.skip{position:absolute;left:12px;top:-60px;z-index:200;padding:10px 14px;background:var(--cta-bg);color:var(--cta-text);border-radius:6px;text-decoration:none}
.skip:focus{top:12px}
[hidden]{display:none!important}

/* ---------- Tipografia base ---------- */
.eyebrow{display:flex;align-items:center;gap:14px;margin:0;font:500 11.5px/1.3 var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--ink-2)}
.eyebrow-rule{display:inline-block;width:36px;height:1px;background:var(--accent);flex:none}
.line{display:block;white-space:nowrap}

/* ---------- Botões ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:0 22px;border-radius:7px;border:1px solid transparent;font:500 15px/1 var(--sans);letter-spacing:.005em;text-decoration:none;white-space:nowrap;transition:background-color .25s var(--ease),border-color .25s var(--ease),color .25s var(--ease),transform .25s var(--ease)}
.btn-primary{background:var(--cta-bg);color:var(--cta-text);border-color:var(--cta-border);box-shadow:var(--cta-shadow)}
.btn-primary:hover{background:var(--cta-bg-hover)}
.btn-primary:active{transform:translateY(1px)}
.btn-primary:disabled{opacity:.72}
.btn-lg{min-height:58px;padding:0 26px;gap:16px;font-size:15.5px}
.btn-lg .icon:last-child{margin-left:18px}
.btn-outline{background:transparent;border-color:rgba(248,246,239,.35);color:var(--white-soft)}
.btn-outline:hover{border-color:var(--accent);color:var(--accent)}
.btn-ghost{background:transparent;border-color:var(--line);color:var(--ink-2)}
.btn-ghost:hover:not(:disabled){color:var(--ink);border-color:var(--line-2)}
.btn-ghost:disabled{opacity:.35}
.btn-sm{min-height:44px;padding:0 20px;font-size:14.5px}
.btn-pill{border-radius:999px;min-height:46px;padding:0 24px;font-size:14.5px}
.btn-link{display:inline-flex;align-items:center;gap:10px;padding:8px 0;background:none;border:0;color:var(--ink-2);font:500 14px/1.2 var(--sans);text-decoration:none;transition:color .2s}
.btn-link:hover{color:var(--accent)}
.icon-btn{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:transparent;border:1px solid var(--line);color:var(--ink-2);transition:color .2s,border-color .2s}
.icon-btn:hover{color:var(--ink);border-color:var(--line-2)}

/* ---------- Header ---------- */
.topbar{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;height:var(--header);padding:0 var(--gutter);background:linear-gradient(180deg,#081F17,#071C15);border-bottom:1px solid var(--line)}
.topbar-brand{display:flex;align-items:center;gap:22px;min-width:0}
.brand img{width:132px;height:auto}
.brand-rule{width:1px;height:30px;background:var(--line-2)}
.brand-label{font:500 11px/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--ink-2);white-space:nowrap}
.topbar-nav{display:flex;align-items:center;gap:32px}
.nav-link{font:500 14.5px/1 var(--sans);text-decoration:none;color:var(--ink);transition:color .2s}
.nav-link:hover{color:var(--accent)}
.topbar .btn-outline{min-width:168px;justify-content:space-between;gap:28px}

/* ---------- Stage (Section 1) ---------- */
.stage{position:relative;isolation:isolate;display:grid;min-height:clamp(640px,calc(100svh - var(--header)),1000px);overflow:hidden;background:var(--bg-deep);border-bottom:1px solid var(--line)}
.stage-media{position:absolute;inset:0;z-index:-3}
.stage-media img{width:100%;height:100%;object-fit:cover;object-position:62% 30%;transform-origin:70% 35%;transform:scale(1.001);transition:transform 1.2s var(--ease),filter .8s var(--ease)}
.stage-shade{position:absolute;inset:0;z-index:-2;pointer-events:none;background:
  linear-gradient(90deg,rgba(5,22,16,.94) 0%,rgba(5,22,16,.82) 24%,rgba(5,22,16,.42) 44%,rgba(5,22,16,.06) 62%,rgba(5,22,16,0) 76%,rgba(5,22,16,.28) 100%),
  linear-gradient(180deg,rgba(5,22,16,.55) 0%,rgba(5,22,16,0) 22%,rgba(5,22,16,0) 62%,rgba(5,22,16,.78) 100%),
  radial-gradient(120% 90% at 60% 45%,transparent 55%,rgba(3,14,10,.55) 100%)}
.stage-dim{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;background:
  radial-gradient(90% 70% at 50% 40%,rgba(14,39,29,.78),rgba(5,22,16,.96) 70%),rgba(5,22,16,.5);transition:opacity .55s var(--ease)}
.stage:not([data-mode="hero"]) .stage-dim{opacity:1}
.stage:not([data-mode="hero"]) .stage-media img{transform:scale(1.05);filter:saturate(.7)}

.hero{grid-area:1/1;position:relative;display:flex;align-items:center;padding:clamp(56px,8vh,110px) var(--gutter) clamp(64px,9vh,120px);transition:opacity .32s var(--ease),transform .32s var(--ease)}
.stage[data-mode="leaving"] .hero{opacity:0;transform:translateY(-10px)}
.stage[data-mode="hero"] .hero{animation:fadeUp .6s var(--ease) both}
.hero-copy{max-width:600px}
.hero-copy>*{animation:fadeUp .8s var(--ease) both}
.hero-copy>:nth-child(2){animation-delay:.06s}.hero-copy>:nth-child(3){animation-delay:.12s}.hero-copy>:nth-child(4),.hero-copy>:nth-child(5){animation-delay:.18s}
.hero-title{margin:28px 0 26px;font:400 clamp(56px,6.3vw,98px)/.98 var(--serif);letter-spacing:-.025em;font-optical-sizing:auto;text-wrap:balance}
.hero-title em{color:var(--accent);font-weight:400;letter-spacing:-.03em}
.hero-desc{max-width:470px;margin:0;font-size:clamp(17px,1.35vw,19.5px);line-height:1.6;color:rgba(247,245,237,.86)}
.hero-micro{margin:34px 0 20px;font-size:14.5px;color:var(--ink-2)}
.hero-note{position:absolute;right:var(--gutter);bottom:clamp(40px,7vh,84px);width:262px;padding:0 0 0 30px}
.hero-arcs{position:absolute;left:0;bottom:calc(-1 * clamp(40px,7vh,84px));width:330px;height:auto;fill:none;stroke:var(--deco-line);stroke-width:1;pointer-events:none}
.note-label{position:relative;display:flex;align-items:center;gap:10px;margin:0 0 12px;font:500 10.5px/1.3 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--ink-2)}
.note-label .eyebrow-rule{width:18px}
.note-text{position:relative;margin:0;font-size:15px;line-height:1.5;color:var(--ink)}
.note-line{position:relative;display:block;width:42px;height:2px;margin-top:18px;background:var(--accent)}

/* ---------- Watch mode ---------- */
.watch{grid-area:1/1;display:flex;align-items:center;justify-content:center;padding:clamp(28px,4.5vh,56px) var(--gutter) clamp(32px,5vh,60px)}
.stage[data-mode="watch"] .watch{animation:watchIn .55s var(--ease) both}
.stage[data-mode="returning"] .watch{opacity:0;transform:translateY(8px);transition:opacity .28s var(--ease),transform .28s var(--ease)}
.watch-inner{width:min(100%,1180px,calc((100svh - var(--header) - 250px) * 16 / 9));min-width:min(100%,720px)}
.watch-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px;transition:opacity .18s}
.watch.is-swapping .watch-head{opacity:0}
.watch-title{margin:12px 0 0;font:400 clamp(28px,2.7vw,42px)/1.08 var(--serif);letter-spacing:-.018em;outline:none;text-wrap:balance}
.watch-head .btn-link{flex:none}
.player-frame{position:relative;aspect-ratio:16/9;width:100%;border-radius:10px;overflow:hidden;background:#020a07;border:1px solid var(--line);box-shadow:0 40px 90px -40px rgba(0,0,0,.85),0 0 0 1px rgba(0,0,0,.4)}
.player,.player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.player iframe{opacity:0;transition:opacity .45s var(--ease)}
.player iframe.is-ready{opacity:1}
.player-loading{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:16px;padding:24px;text-align:center;color:var(--ink-2);font-size:14px;background:radial-gradient(60% 60% at 50% 50%,rgba(14,39,29,.9),#030d09)}
.player-loading p{margin:0;max-width:360px}
.player-loading>span{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--line);border-top-color:var(--accent);animation:spin 1s linear infinite}
.watch-controls{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;margin-top:22px}
.series-progress{display:flex;gap:8px;justify-content:center;margin:0;padding:0;list-style:none}
.series-progress li{flex:0 1 72px}
.series-progress button{display:block;width:100%;padding:12px 0;background:none;border:0}
.series-progress button span{display:block;height:3px;border-radius:2px;background:rgba(248,246,239,.12);transition:background-color .3s}
.series-progress button.is-watched span{background:rgba(154,170,138,.45)}
.series-progress button.is-current span{background:var(--accent)}
.series-progress button:hover span{background:rgba(247,245,237,.45)}
.endcard{position:absolute;inset:0;z-index:2;display:grid;place-items:center;padding:24px;background:linear-gradient(180deg,rgba(5,22,16,.82),rgba(5,22,16,.94));backdrop-filter:blur(6px);animation:fadeIn .45s var(--ease) both}
.endcard-inner{max-width:560px;text-align:center}
.endcard .eyebrow{justify-content:center;color:var(--accent)}
.endcard-title{margin:14px 0 0;font:400 clamp(24px,2.6vw,36px)/1.15 var(--serif);letter-spacing:-.015em}
.endcard-text{margin:12px auto 0;max-width:420px;color:var(--ink-2)}
.endcard-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 24px;margin-top:26px}
.endcard-count{margin:18px 0 0;font-size:13.5px;color:var(--ink-3)}
.endcard-count b{color:var(--ink);font-weight:500}
.endcard-bar{display:block;height:2px;margin:12px auto 0;width:180px;background:var(--line);position:relative;overflow:hidden}
.endcard-bar::after{content:"";position:absolute;inset:0;background:var(--accent);transform-origin:left;animation:countdown var(--duration) linear both}

/* ---------- Episódios ---------- */
.episodes{position:relative;padding:clamp(56px,6vw,84px) var(--gutter) clamp(40px,5vw,56px);background:
  radial-gradient(60% 70% at 12% 0%,rgba(28,70,50,.45),transparent 70%),
  radial-gradient(50% 60% at 95% 30%,rgba(20,55,40,.35),transparent 70%),
  linear-gradient(180deg,#0A2419 0%,var(--bg) 100%)}
.episodes-head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:clamp(30px,3.4vw,44px)}
.section-title{margin:22px 0 0;font:400 clamp(42px,4.6vw,72px)/1.02 var(--serif);letter-spacing:-.022em}
.section-title em{color:var(--accent)}
.episodes-head .btn-pill{margin-bottom:6px;gap:18px}
.rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,1.7vw,24px)}
.card{display:flex;flex-direction:column;width:100%;height:100%;padding:0;background:none;border:0;text-align:left;color:inherit}
.card-art{position:relative;display:block;aspect-ratio:16/9;margin-bottom:22px;border-radius:9px;overflow:hidden;border:1px solid var(--line);background:var(--bg-2);box-shadow:0 22px 50px -30px rgba(0,0,0,.9);transition:border-color .3s var(--ease),box-shadow .3s var(--ease)}
.card-art img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease),filter .4s}
.card-art::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,22,16,.28),transparent 30%,transparent 62%,rgba(5,22,16,.45));pointer-events:none}
.card:hover .card-art img,.card:focus-visible .card-art img{transform:scale(1.035)}
.card:hover .card-art,.card:focus-visible .card-art{border-color:rgba(154,170,138,.6)}
.card:focus-visible{outline:none}
.card:focus-visible .card-art{outline:2px solid var(--accent);outline-offset:3px}
.card.is-playing .card-art{border-color:var(--accent)}
.card-chip{position:absolute;z-index:1;top:12px;left:12px;padding:7px 10px;border-radius:6px;border:1px solid rgba(247,245,237,.28);background:rgba(5,22,16,.72);backdrop-filter:blur(6px);font:500 11.5px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.card-status{position:absolute;z-index:1;top:12px;right:12px;padding:7px 10px;border-radius:6px;background:var(--cta-bg);color:var(--cta-text);font:600 10.5px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase}
.card-status.is-muted{background:rgba(5,22,16,.72);color:var(--ink-2);border:1px solid var(--line)}
.card-lock{position:absolute;z-index:1;right:12px;bottom:12px;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:rgba(5,22,16,.78);border:1px solid rgba(247,245,237,.26);backdrop-filter:blur(6px);transition:background-color .3s,color .3s,transform .3s var(--ease)}
[data-series="unlocked"] .card-lock{background:rgba(250,248,241,.94);color:var(--cta-text);border-color:transparent}
[data-series="unlocked"] .card-lock .icon-play{margin-left:2px}
.card:hover .card-lock{transform:scale(1.06)}
.card-title{display:block;font:500 clamp(17px,1.35vw,20px)/1.3 var(--sans);letter-spacing:-.01em;color:var(--ink);text-wrap:balance}
.card-text{display:block;margin-top:10px;font-size:14.5px;line-height:1.5;color:var(--ink-2)}
.episodes-note{display:flex;align-items:center;justify-content:center;gap:14px;margin:clamp(40px,4.5vw,56px) 0 0;padding-top:clamp(26px,3vw,34px);border-top:1px solid var(--line);font-size:14.5px;color:var(--ink-2);text-align:center}
.episodes-note .icon{color:var(--ink)}

/* ---------- Footer ---------- */
.footer{position:relative;isolation:isolate;overflow:hidden;padding:clamp(60px,7vw,92px) var(--gutter) 0;background:
  radial-gradient(40% 70% at 88% 92%,rgba(73,105,77,.30),transparent 70%),
  radial-gradient(60% 80% at 0% 0%,rgba(24,60,44,.55),transparent 70%),
  linear-gradient(180deg,#0A2219,var(--bg-deep));border-top:1px solid var(--line)}
.footer-art{position:absolute;inset:0;z-index:-1;pointer-events:none}
.footer-art span{position:absolute;border:1px solid rgba(247,245,237,.12);border-radius:50%}
.footer-art span:nth-child(1){width:560px;height:560px;right:6%;top:-300px}
.footer-art span:nth-child(2){width:760px;height:760px;right:-12%;top:-120px;border-color:rgba(154,170,138,.22)}
.footer-art span:nth-child(3){width:420px;height:760px;right:-4%;top:40px;border-radius:210px 210px 0 0;border-bottom:0;background:linear-gradient(180deg,transparent,rgba(91,118,95,.10))}
.footer-main{display:flex;align-items:center;gap:clamp(24px,3.4vw,48px);padding-bottom:clamp(56px,7vw,96px)}
.footer-logo{width:140px;height:auto}
.footer-links{display:flex;gap:clamp(20px,3vw,44px);padding-left:clamp(24px,3.4vw,48px);border-left:1px solid var(--line)}
.footer-links a{font-size:14.5px;text-decoration:none;color:var(--ink);transition:color .2s}
.footer-links a:hover{color:var(--accent)}
.footer-phrase{margin:0 0 0 auto;padding-left:clamp(24px,3.4vw,48px);border-left:1px solid var(--line);font:400 clamp(20px,1.7vw,25px)/1.2 var(--serif);letter-spacing:-.01em}
.footer-phrase em{display:block;color:var(--accent)}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:26px 0 calc(28px + env(safe-area-inset-bottom));border-top:1px solid var(--line);font:400 14px/1.4 var(--serif);color:var(--ink-2)}
.footer-bottom a{text-decoration:none}
.footer-bottom a:hover{color:var(--accent)}

/* ---------- Modal ---------- */
dialog{color:var(--ink)}
dialog::backdrop{background:rgba(2,10,7,.72);backdrop-filter:blur(6px)}
.lead-dialog{width:min(640px,calc(100% - 32px));max-height:min(860px,calc(100dvh - 40px));padding:0;border:1px solid var(--line-2);border-radius:14px;background:
  radial-gradient(90% 60% at 100% 0%,rgba(73,105,77,.22),transparent 60%),
  linear-gradient(180deg,#0C271C,#071C15);box-shadow:0 50px 120px -30px rgba(0,0,0,.9);overflow:hidden}
.lead-dialog[open]{display:flex;animation:modalIn .38s var(--ease) both}
.lead-dialog[open]::backdrop{animation:fadeIn .3s var(--ease) both}
.lead-form{display:flex;flex-direction:column;width:100%;min-height:0;max-height:inherit}
.lead-top{display:flex;align-items:center;justify-content:space-between;padding:22px 28px 0 36px}
.lead-brand{font:500 11px/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--ink-2)}
.lead-brand b{color:var(--ink);font-weight:600}
.lead-progress{padding:22px 36px 0}
.lead-step{display:flex;align-items:baseline;gap:14px;margin:0 0 12px;font:500 11.5px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-2)}
.lead-step span:first-child{color:var(--accent);letter-spacing:.08em}
.lead-bars{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.lead-bars span{height:3px;border-radius:2px;background:rgba(248,246,239,.12);transition:background-color .35s var(--ease)}
.lead-bars span.is-done{background:var(--accent)}
.lead-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:30px 36px 8px}
.lead-title{margin:0;font:400 clamp(30px,3.2vw,38px)/1.08 var(--serif);letter-spacing:-.018em}
.lead-help{margin:10px 0 0;color:var(--ink-2);font-size:15px}
.lead-fields{display:grid;gap:22px;margin-top:28px}
.field{display:grid;gap:9px}
.field label,.field-group legend{font:500 13px/1.2 var(--sans);letter-spacing:.02em;color:var(--ink-2)}
.field input{width:100%;height:56px;padding:0 18px;border-radius:8px;border:1px solid var(--line-2);background:rgba(3,14,10,.55);color:var(--ink);font:400 17px/1 var(--sans);transition:border-color .2s,background-color .2s}
.field input::placeholder{color:rgba(247,245,237,.34)}
.field input:focus{outline:none;border-color:var(--accent);background:rgba(3,14,10,.75)}
.field-group{margin:0;padding:0;border:0;min-width:0}
.field-group legend{padding:0;margin-bottom:10px}
.choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.field-group.is-wide .choices{grid-template-columns:repeat(2,minmax(0,1fr))}
.field-group.is-long .choices{grid-template-columns:repeat(2,minmax(0,1fr))}
.field-group.is-long .choice:last-child{grid-column:1/-1}
.choice{position:relative;display:block}
.choice input{position:absolute;opacity:0;pointer-events:none}
.choice span{display:flex;align-items:center;min-height:54px;height:100%;padding:12px 16px 12px 42px;border-radius:8px;border:1px solid var(--line-2);background:rgba(3,14,10,.4);font-size:15px;line-height:1.3;cursor:pointer;transition:border-color .2s,background-color .2s,color .2s}
.choice span::before{content:"";position:absolute;left:16px;top:50%;width:14px;height:14px;margin-top:-7px;border-radius:50%;border:1.5px solid rgba(247,245,237,.45);transition:border-color .2s,box-shadow .2s}
.choice:hover span{border-color:rgba(247,245,237,.42)}
.choice input:checked+span{border-color:rgba(154,170,138,.75);background:rgba(154,170,138,.08);color:var(--ink)}
.choice input:checked+span::before{border-color:var(--accent);box-shadow:inset 0 0 0 3px #0B2219,inset 0 0 0 7px var(--accent)}
.choice input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
.consent{position:relative;display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:8px;border:1px solid var(--line);background:rgba(3,14,10,.3);font-size:14.5px;line-height:1.5;color:var(--ink);cursor:pointer}
.consent input{position:absolute;opacity:0;pointer-events:none}
.consent-box{flex:none;width:20px;height:20px;margin-top:1px;border-radius:5px;border:1.5px solid rgba(247,245,237,.5);transition:background-color .2s,border-color .2s}
.consent input:checked+.consent-box{background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 10.5 3.2 3L15 6.5' fill='none' stroke='%23102B22' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat;border-color:var(--accent)}
.consent input:focus-visible+.consent-box{outline:2px solid var(--accent);outline-offset:2px}
.btn-inline{display:inline;padding:0;border:0;background:none;color:var(--white-soft);font-size:inherit;text-decoration:underline;text-underline-offset:3px}
.is-invalid input,.is-invalid .choice span,.consent.is-invalid{border-color:var(--error-line)}
.lead-error{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin:14px 36px 0;padding:14px 16px;border-radius:8px;border:1px solid var(--error-line);background:var(--error-bg);font-size:14px;line-height:1.5;color:var(--ink)}
.lead-error p{margin:0}
.lead-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px 36px calc(28px + env(safe-area-inset-bottom));border-top:1px solid transparent}
.lead-actions .btn-primary{margin-left:auto;min-width:200px;min-height:54px}
.spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(18,36,26,.3);border-top-color:var(--cta-text);animation:spin .8s linear infinite}
.honeypot{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.privacy-dialog{width:min(560px,calc(100% - 32px));padding:36px;border:1px solid var(--line-2);border-radius:14px;background:#0B2419;line-height:1.6}
.privacy-dialog[open]{animation:modalIn .3s var(--ease) both}
.privacy-dialog .icon-btn{float:right;margin:-12px -12px 0 12px}
.privacy-dialog h2{margin:12px 0 16px;font:400 30px/1.1 var(--serif)}
.privacy-dialog p:not(.eyebrow){color:var(--ink-2);font-size:15px}
.privacy-dialog a{color:var(--white-soft)}
.privacy-dialog a:hover,.btn-inline:hover{color:var(--accent)}
.noscript{position:fixed;left:16px;right:16px;bottom:16px;z-index:50;padding:14px;border-radius:8px;background:var(--bg-2);border:1px solid var(--line-2);text-align:center}

/* ---------- Motion ---------- */
@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes watchIn{from{opacity:0;transform:translateY(16px) scale(.99)}to{opacity:1;transform:none}}
@keyframes modalIn{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes countdown{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .endcard-bar{display:none}
}

/* ---------- Responsivo ---------- */
@media (max-width:1180px){
  .rail{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:40px}
  .hero-note{display:none}
  .footer-main{flex-wrap:wrap}
  .footer-phrase{margin-left:0;flex-basis:100%;padding:28px 0 0;border-left:0;border-top:1px solid var(--line)}
}
@media (max-width:900px){
  :root{--header:68px}
  .topbar-brand{gap:16px}
  .brand img{width:112px}
  .topbar-nav{gap:20px}
  .topbar .btn-outline{min-width:0;gap:12px}
  .stage-shade{background:
    linear-gradient(90deg,rgba(5,22,16,.92) 0%,rgba(5,22,16,.7) 40%,rgba(5,22,16,.15) 75%,rgba(5,22,16,.2) 100%),
    linear-gradient(180deg,rgba(5,22,16,.4) 0%,transparent 25%,transparent 60%,rgba(5,22,16,.85) 100%)}
  .watch-inner{width:100%;min-width:0}
  .watch-controls{grid-template-columns:1fr 1fr;gap:14px}
  .series-progress{grid-column:1/-1;grid-row:1}
  .watch-controls .btn{width:100%}
}
@media (max-width:760px){
  :root{--gutter:20px}
  .nav-link,.brand-label,.brand-rule{display:none}
  .brand img{width:104px}
  .topbar .btn-sm{min-height:40px;padding:0 14px;font-size:13.5px}
  .topbar .btn-sm .icon{width:16px;height:16px}

  .eyebrow{font-size:10.5px;letter-spacing:.22em;gap:12px}
  .eyebrow-rule{width:28px}

  .watch{align-items:flex-start;padding:24px 0 36px}
  .watch-head{flex-direction:column;align-items:flex-start;gap:10px;padding:0 var(--gutter);margin-bottom:18px}
  .watch-head .btn-link{order:-1;padding:0 0 6px}
  .watch-title{font-size:clamp(25px,7vw,32px)}
  .player-frame{border-radius:0;border-left:0;border-right:0}
  .watch-controls{padding:0 var(--gutter);margin-top:16px}
  .watch-controls .btn{padding:0 14px;font-size:14px}
  .endcard{padding:14px}
  .endcard-title{font-size:21px;margin-top:8px}
  .endcard-text{display:none}
  .endcard-actions{margin-top:14px;gap:6px 18px}
  .endcard-actions .btn{min-height:42px}
  .endcard-count{margin-top:8px}

  .episodes{padding-left:0;padding-right:0}
  .episodes-head{flex-direction:column;align-items:flex-start;gap:24px;padding:0 var(--gutter)}
  .section-title{font-size:clamp(38px,10.6vw,52px)}
  .rail{display:flex;gap:14px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding:0 var(--gutter);padding:0 var(--gutter) 6px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .rail::-webkit-scrollbar{display:none}
  .card-slot{flex:0 0 82vw;scroll-snap-align:start}
  .card-art{margin-bottom:18px}
  .episodes-note{margin:36px var(--gutter) 0;font-size:14px;text-align:left;justify-content:flex-start}

  .footer-main{flex-direction:column;align-items:flex-start;gap:28px;padding-bottom:48px}
  .footer-links{padding-left:0;border-left:0;flex-wrap:wrap;gap:14px 28px}
  .footer-phrase{font-size:23px}
  .footer-bottom{flex-direction:column;gap:8px}
  .footer-art span:nth-child(1){right:-60%}.footer-art span:nth-child(2){right:-120%}.footer-art span:nth-child(3){right:-40%;opacity:.7}

  .lead-dialog{width:100%;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0}
  .lead-dialog[open]{animation:fadeIn .3s var(--ease) both}
  .lead-top{padding:calc(14px + env(safe-area-inset-top)) 12px 0 var(--gutter)}
  .lead-progress{padding:14px var(--gutter) 0}
  .lead-body{padding:26px var(--gutter) 8px}
  .lead-title{font-size:30px}
  .lead-error{margin:12px var(--gutter) 0}
  .lead-actions{padding:14px var(--gutter) calc(16px + env(safe-area-inset-bottom));border-top-color:var(--line);background:#071C15}
  .lead-actions .btn-ghost{padding:0 16px}
  .lead-actions .btn-primary{flex:1;min-width:0}
  .choices{grid-template-columns:1fr}
  .field-group.is-long .choices{grid-template-columns:1fr}
  .field-group.is-wide .choices{grid-template-columns:repeat(auto-fit,minmax(172px,1fr))}
  .privacy-dialog{padding:28px 22px}
}
@media (max-width:760px),(max-width:1100px) and (orientation:portrait){
  .stage{min-height:0}
  .stage-media{bottom:auto;height:min(64svh,560px);min-height:400px}
  .stage-media img{object-position:74% 20%;-webkit-mask-image:linear-gradient(180deg,#000 62%,transparent 99%);mask-image:linear-gradient(180deg,#000 62%,transparent 99%)}
  .stage-shade{bottom:auto;height:min(64svh,560px);min-height:400px;background:
    linear-gradient(180deg,rgba(5,22,16,.35) 0%,transparent 18%,transparent 48%,rgba(5,22,16,.6) 76%,rgba(5,22,16,0) 100%),
    linear-gradient(90deg,rgba(5,22,16,.35),transparent 40%)}
  .hero{align-items:flex-end;padding:calc(max(min(64svh,560px),400px) - 150px) var(--gutter) 44px}
  .hero-copy{max-width:none;width:100%}
  .hero-title{margin:20px 0 18px;font-size:clamp(42px,12.2vw,60px);line-height:1}
  .hero-desc{font-size:16.5px}
  .hero-micro{margin:26px 0 14px;font-size:14px}
  .hero-copy .btn-lg{width:100%;justify-content:space-between}
  .hero-copy .btn-lg span{margin-right:auto}
  .hero-copy .btn-lg .icon:last-child{margin-left:0}
  .stage:not([data-mode="hero"]) .stage-media,.stage:not([data-mode="hero"]) .stage-shade{height:100%}
  .stage:not([data-mode="hero"]) .stage-media img{-webkit-mask-image:none;mask-image:none}
}
@media (min-width:761px) and (max-width:1100px) and (orientation:portrait){
  .hero-copy{max-width:620px}
  .hero-copy .btn-lg{width:auto}
}
@media (max-width:380px){
  .hero-title{font-size:40px}
  .section-title{font-size:36px}
}
