:root{color-scheme:light;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}html{scroll-padding-top:env(safe-area-inset-top,0px)}body{margin:0;padding:0;font:14px -apple-system,BlinkMacSystemFont,sans-serif;background:#fff;color:#000}img{max-width:100%}[hidden]:not([hidden=until-found i]){display:none!important}

/* Layout: estrutura do acquired.fm — parede fixa de capas (sticky) que o pôster cobre ao rolar,
   depois faixa de pilares, episódio em destaque, patrocínio em 2 colunas e rodapé translúcido sobre a faixa final. */
/* Visual único: verde-escuro da marca com verde neon da logo (não alterna com o tema claro) */
:root {
  color-scheme: dark;
  --sand: #04110A;        /* fundo — verde quase preto */
  --ink: #E6F2E8;         /* texto */
  --ink-60: color-mix(in srgb, var(--ink) 62%, transparent);
  --ink-08: color-mix(in srgb, var(--ink) 10%, transparent);
  --ink-04: color-mix(in srgb, var(--ink) 5%, transparent);
  --panel: #071A0F;
  --surface: #0A2014;
  --green: #3BE35A;       /* verde neon da logo */
  --green-deep: #0B3A1C;
  --glow: rgb(59 227 90 / .45);
  --sun: #3BE35A;
  --night: #030D07;
  --night-green: #0B3A1C;
  --on-night: #E6F2E8;
  --pill-bg: #3BE35A;
  --pill-fg: #03100A;

  --f-serif: "Newsreader", "Iowan Old Style", Georgia, "Times New Roman", serif;
  --f-cond: "Barlow Condensed", "Arial Narrow", Tahoma, sans-serif;
  --f-ui: "Geist", "Helvetica Neue", Arial, sans-serif;

  --ease: cubic-bezier(.2,.8,.2,1);
  --nav-h: 80px;
  --gap: clamp(16px, 2vw, 28px);
  --r: 4px;
}
* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; background: var(--sand); }
body {
  margin: 0; color: var(--ink);
  background:
    radial-gradient(1400px 900px at 50% -15%, rgb(16 92 40 / .55), transparent 62%),
    radial-gradient(900px 700px at 100% 60%, rgb(11 58 28 / .45), transparent 70%),
    radial-gradient(900px 700px at 0% 85%, rgb(11 58 28 / .4), transparent 70%),
    var(--sand);
  background-attachment: fixed;
  font: 400 18px/1.45 var(--f-serif);
  padding-left: max(16px, env(safe-area-inset-left, 0px));
  padding-right: max(16px, env(safe-area-inset-right, 0px));
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
:focus-visible { outline: 2px solid var(--green); outline-offset: 3px; border-radius: 4px; }
h1, h2, h3 { text-wrap: balance; margin: 0; font-weight: 400; }
p { margin: 0; }
.cap { font-family: var(--f-cond); text-transform: uppercase; letter-spacing: .03em; font-weight: 500; }

/* ---------- Botões ---------- */
.btn {
  display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 18px;
  border-radius: 999px; border: 1px solid var(--ink-08); background: var(--ink-04);
  backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
  font: 500 15px/1 var(--f-cond); text-transform: uppercase; letter-spacing: .03em; color: inherit;
  cursor: pointer; transition: background .4s, color .4s, border-color .4s, transform .4s var(--ease);
}
.btn:hover { background: var(--ink-08); }
.btn .arr { transition: transform .4s var(--ease); }
.btn:hover .arr { transform: translateX(3px); }
.btn.solid { background: var(--pill-bg); color: var(--pill-fg); border-color: transparent; height: 46px; padding: 0 22px; }
.btn.solid { box-shadow: 0 0 0 0 var(--glow); font-weight: 600; }
.btn.solid:hover { background: color-mix(in srgb, var(--pill-bg) 85%, #FFFFFF); box-shadow: 0 0 28px 2px var(--glow); }
.btn.icon { width: 44px; padding: 0; justify-content: center; }
.btn svg { width: 16px; height: 16px; }

/* ---------- Nav ---------- */
body::before { content: ""; position: fixed; inset: 0 0 auto; height: env(safe-area-inset-top, 0px); z-index: 60; background: var(--sand); }
.nav {
  position: fixed; top: env(safe-area-inset-top, 0px); left: 0; right: 0; z-index: 50; height: var(--nav-h);
  display: grid; grid-template-columns: 1fr auto 1fr; align-items: center;
  padding-left: max(clamp(16px, 2.2vw, 40px), env(safe-area-inset-left, 0px));
  padding-right: max(clamp(16px, 2.2vw, 40px), env(safe-area-inset-right, 0px));
  transition: color .4s;
}
/* Logo: microfone + vela (vetor) e marca em duas linhas, como no original */
.logo { --lw: #F4F7F2; --lg: #46D96A; --lb: #7FA8EC; font-size: 25px; display: inline-flex; align-items: center; gap: .32em; justify-self: start; }
.logo .mark { width: 1.42em; height: 1.82em; flex: none; overflow: visible; filter: drop-shadow(0 0 .3em rgb(59 227 90 / .3)); transition: filter .4s; }
.logo .sail-g { transform-box: fill-box; transform-origin: 90% 95%; transition: transform .7s var(--ease); }
.logo .word { display: grid; gap: .02em; font-family: var(--f-cond); font-weight: 800; text-transform: uppercase; line-height: .84; }
.logo .ln { display: flex; align-items: flex-end; gap: .1em; }
.logo .big { font-size: 1em; letter-spacing: .005em; }
.logo .l1 { color: var(--lw); }
.logo .l2 { color: var(--lg); text-shadow: 0 0 .5em rgb(59 227 90 / .35); }
.logo .meu { font-size: .44em; font-weight: 700; color: var(--lw); letter-spacing: .04em; padding-bottom: .06em; }
.logo .pod { display: grid; font-size: .4em; font-weight: 800; line-height: .92; color: var(--lb); letter-spacing: .05em; padding-bottom: .04em; }
.logo:hover .mark { filter: drop-shadow(0 0 .45em rgb(59 227 90 / .6)); }
.logo:hover .sail-g { transform: rotate(-6deg); }
.logo:hover .l2 { text-shadow: 0 0 .6em rgb(59 227 90 / .6); }
.nav-right { justify-self: end; display: flex; gap: 8px; }
.search { position: relative; width: min(420px, 34vw); }
.search label { display: flex; align-items: center; gap: 8px; height: 44px; padding: 0 16px; border-radius: 12px;
  background: var(--ink-04); border: 1px solid var(--ink-08); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
  color: var(--ink-60); transition: background .4s, border-color .4s, color .4s; }
.search input { flex: 1; min-width: 0; border: 0; background: none; outline: none; font: 400 15px/1 var(--f-ui); color: var(--ink); }
.search input::placeholder { color: var(--ink-60); }
.search svg { width: 15px; height: 15px; flex: none; }
.results {
  position: absolute; top: calc(100% + 8px); left: 0; right: 0; background: var(--surface); color: var(--ink);
  border: 1px solid var(--ink-08); border-radius: 12px; padding: 8px; box-shadow: 0 24px 60px -24px rgb(0 0 0 / .35);
  display: grid; gap: 2px; max-height: 60vh; overflow: auto;
}
.results a, .results p { display: flex; align-items: center; gap: 12px; padding: 8px; border-radius: 8px; font: 400 15px/1.3 var(--f-ui); }
.results a:hover, .results a:focus-visible { background: var(--ink-04); }
.results .sw { width: 36px; height: 36px; border-radius: 4px; flex: none; display: grid; place-items: center; font: 600 12px/1 var(--f-cond); }
.results small { display: block; color: var(--ink-60); font: 500 12px/1.2 var(--f-cond); text-transform: uppercase; letter-spacing: .04em; }

.nav.on-dark { color: var(--on-night); }
.nav.on-dark .btn, .nav.on-dark .search label { background: rgb(255 255 255 / .1); border-color: rgb(255 255 255 / .16); color: var(--on-night); }
.nav.on-dark .search input, .nav.on-dark .search input::placeholder { color: var(--on-night); }

.pop {
  position: fixed; z-index: 55; top: calc(env(safe-area-inset-top, 0px) + var(--nav-h) - 6px);
  right: max(clamp(16px, 2.2vw, 40px), env(safe-area-inset-right, 0px));
  width: min(360px, calc(100vw - 32px)); background: var(--surface); color: var(--ink);
  border: 1px solid var(--ink-08); border-radius: 14px; padding: 10px; box-shadow: 0 30px 80px -30px rgb(0 0 0 / .4);
  transform-origin: top right; animation: pop .35s var(--ease);
}
@keyframes pop { from { opacity: 0; transform: translateY(-6px) scale(.98); } }
.pop a { display: flex; justify-content: space-between; align-items: center; padding: 12px; border-radius: 8px; font: 500 20px/1 var(--f-cond); text-transform: uppercase; letter-spacing: .03em; }
.pop a:hover { background: var(--ink-04); }
.pop a span { font: 400 14px/1 var(--f-serif); text-transform: none; letter-spacing: 0; color: var(--ink-60); }
.pop .search { width: 100%; margin-bottom: 6px; display: none; }

/* ---------- Parede de capas (hero) ---------- */
.wall-section { position: relative; height: 150svh; margin-inline: calc(-1 * max(16px, env(safe-area-inset-left, 0px))) calc(-1 * max(16px, env(safe-area-inset-right, 0px))); }
.wall-stage { position: sticky; top: 0; height: 100svh; overflow: hidden; padding: calc(var(--nav-h) + 4px) clamp(16px, 2.2vw, 40px) 0; }
.wall {
  --p: 0;
  display: grid; grid-template-columns: repeat(6, 1fr); gap: var(--gap);
  transform-origin: 50% 30%;
  transform: scale(calc(1 - var(--p) * .1)) translateY(calc(var(--p) * -24px));
}
.wall-stage::after { content: ""; position: absolute; inset: auto 0 0; height: 34%; pointer-events: none;
  background: linear-gradient(to bottom, transparent, var(--sand) 92%); }

.card { position: relative; aspect-ratio: 1; transition: opacity .3s; }
.card[data-edge] { opacity: calc(1 - var(--p) * .78); }
.card > a { position: absolute; inset: 0; display: block; z-index: 3; border-radius: var(--r); }
.card-inner { position: absolute; inset: 0; transition: opacity .24s; }
.cover {
  position: absolute; inset: 0; z-index: 2; border-radius: var(--r); overflow: hidden;
  background: var(--c); color: var(--t); container-type: inline-size;
  transition: transform .7s var(--ease), box-shadow .7s var(--ease);
  display: grid; place-items: center; text-align: center;
}
.chip { position: absolute; top: 6cqw; right: 6cqw; z-index: 2; padding: 2.4cqw 3.2cqw; border-radius: 3px;
  background: rgb(255 255 255 / .16); font: 500 max(9px, 4.4cqw)/1 var(--f-cond); letter-spacing: .05em; text-transform: uppercase; }
.cover.lite .chip { background: rgb(14 27 46 / .1); }
.face { position: relative; z-index: 1; padding: 0 9cqw; display: grid; gap: 3cqw; justify-items: center; }
.f-serif { font: italic 400 15cqw/.95 var(--f-serif); letter-spacing: -.01em; }
.f-cond { font: 600 17cqw/.88 var(--f-cond); text-transform: uppercase; letter-spacing: .01em; }
.f-caps { font: 400 13cqw/.95 var(--f-serif); text-transform: uppercase; letter-spacing: .02em; }
.f-num { font: 300 40cqw/.8 var(--f-serif); letter-spacing: -.04em; }
.f-sub { font: 500 5.4cqw/1.1 var(--f-cond); text-transform: uppercase; letter-spacing: .06em; opacity: .85; }
.motif { position: absolute; inset: 0; z-index: 0; pointer-events: none; }
.m-sun { background: radial-gradient(circle at 78% 82%, var(--a) 0 17%, transparent 17.4%); }
.m-waves { background: repeating-linear-gradient(170deg, transparent 0 9cqw, color-mix(in srgb, var(--a) 40%, transparent) 9cqw 9.8cqw); -webkit-mask-image: linear-gradient(to top, #000 0 38%, transparent 62%); mask-image: linear-gradient(to top, #000 0 38%, transparent 62%); }
.m-sail svg { position: absolute; left: 8%; bottom: 0; width: 46%; height: 70%; opacity: .22; }
.m-ring { background: radial-gradient(circle at 50% 50%, transparent 0 36%, color-mix(in srgb, var(--a) 55%, transparent) 36.4% 37.2%, transparent 37.6% 44%, color-mix(in srgb, var(--a) 35%, transparent) 44.4% 45%, transparent 45.4%); }

/* Microfone com raios que sai de trás da capa */
.mic { position: absolute; inset: 3%; z-index: 1; transition: transform .7s var(--ease); }
.mic-bg {
  position: absolute; inset: 0; border-radius: 50%;
  background:
    radial-gradient(circle at 73% 48%, rgb(214 255 140 / .55) 0 6%, transparent 30%),
    radial-gradient(circle at 70% 45%, #6FE7A8 0%, #1E8A5C 42%, #0F3D3A 78%, #082623 100%);
  box-shadow: 0 10px 34px -10px rgb(8 38 35 / .7), inset 0 0 0 1px rgb(255 255 255 / .08);
}
.mic svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.mic-body { transform-box: fill-box; transform-origin: 50% 85%; }
.bolt { fill: none; stroke-linecap: round; stroke-linejoin: round; opacity: 0;
  stroke-dasharray: 1; stroke-dashoffset: 1; }
.bolt.glow { stroke: #D9FF4F; stroke-width: 4.6; filter: blur(1.6px); }
.bolt.core { stroke: #FFFBD1; stroke-width: 1.6; filter: drop-shadow(0 0 1.5px #FFF27A) drop-shadow(0 0 4px #9CFF3A); }
@keyframes micIn {
  0% { transform: translateY(14%) scale(.55) rotate(-14deg); opacity: 0; }
  55% { transform: translateY(-3%) scale(1.1) rotate(5deg); opacity: 1; }
  75% { transform: scale(.97) rotate(-2deg); }
  100% { transform: scale(1) rotate(0); opacity: 1; }
}
@keyframes micBuzz {
  0%, 100% { transform: translate(0, 0) rotate(0); }
  20% { transform: translate(.4px, -.5px) rotate(.6deg); }
  40% { transform: translate(-.5px, .3px) rotate(-.5deg); }
  60% { transform: translate(.3px, .4px) rotate(.4deg); }
  80% { transform: translate(-.3px, -.3px) rotate(-.3deg); }
}
@keyframes zap {
  0% { stroke-dashoffset: 1; opacity: 1; }
  9% { stroke-dashoffset: 0; opacity: 1; }
  14% { opacity: .15; }
  19% { opacity: 1; }
  24% { opacity: .3; }
  30% { opacity: 1; }
  42%, 100% { stroke-dashoffset: 0; opacity: 0; }
}
@keyframes surge {
  0%, 100% { filter: brightness(1) saturate(1); }
  8% { filter: brightness(1.45) saturate(1.2); }
  16% { filter: brightness(1.05); }
  22% { filter: brightness(1.3); }
  34% { filter: brightness(1); }
}
@media (hover: hover) {
  .card:hover { z-index: 5; }
  .card:hover .cover { transform: translateX(-20%); box-shadow: 18px 0 40px -18px rgb(0 0 0 / .45); }
  .card:hover .mic { transform: translateX(34%); }
  .card:hover .mic-bg { animation: surge 1.4s .35s infinite; }
  .card:hover .mic-body { animation: micIn .6s var(--ease) both, micBuzz .18s .6s linear infinite; }
  .card:hover .bolt { animation: zap 1.4s linear infinite; }
  .card:hover .b1 { animation-delay: .35s; }
  .card:hover .b2 { animation-delay: .5s; }
  .card:hover .b3 { animation-delay: .62s; }
  .card:hover .b4 { animation-delay: .8s; }
  .card:hover .b5 { animation-delay: .95s; }
  .card:hover .b6 { animation-delay: 1.1s; }
  .wall:has(.card:hover) .card:not(:hover) .card-inner { opacity: .45; }
}
@media (prefers-reduced-motion: reduce) {
  .card:hover .bolt { animation: none !important; opacity: 1; stroke-dashoffset: 0; }
}
.explore { position: absolute; left: 50%; bottom: clamp(20px, 4svh, 40px); transform: translateX(-50%); z-index: 4; }
.explore .btn { background: var(--surface); box-shadow: 0 10px 30px -14px rgb(0 0 0 / .4); }

/* ---------- Pôster ---------- */
.poster {
  position: relative; z-index: 6; margin-top: -50svh; min-height: clamp(560px, 92svh, 980px);
  border-radius: 10px; overflow: hidden; color: var(--on-night); isolation: isolate;
  display: grid; place-items: center; text-align: center; padding: calc(var(--nav-h) + 24px) 20px 120px;
  /* Para usar uma foto do estúdio: defina --hero-photo: url(...) neste elemento */
  background:
    var(--hero-photo, none) center / cover,
    radial-gradient(55% 60% at 50% 42%, rgb(40 190 80 / .28) 0, transparent 70%),
    radial-gradient(40% 50% at 12% 100%, rgb(59 227 90 / .16) 0, transparent 70%),
    linear-gradient(170deg, #06180D 0%, #041209 55%, #020A05 100%);
  border: 1px solid rgb(59 227 90 / .12);
}
.poster .art { position: absolute; inset: 0; z-index: -1; pointer-events: none; overflow: hidden; }
/* anéis que pulsam a partir do centro, como o brilho em volta do microfone da logo */
.rings { position: absolute; left: 50%; top: 44%; width: 0; height: 0; }
.rings i { position: absolute; left: 50%; top: 50%; width: clamp(260px, 34vw, 560px); aspect-ratio: 1; border-radius: 50%;
  border: 1px solid rgb(59 227 90 / .35); transform: translate(-50%, -50%) scale(.4); opacity: 0;
  box-shadow: 0 0 22px rgb(59 227 90 / .18), inset 0 0 22px rgb(59 227 90 / .1);
  animation: ripple 6s cubic-bezier(.2,.6,.3,1) infinite; }
.rings i:nth-child(2) { animation-delay: 1.5s; }
.rings i:nth-child(3) { animation-delay: 3s; }
.rings i:nth-child(4) { animation-delay: 4.5s; }
@keyframes ripple { 0% { transform: translate(-50%, -50%) scale(.35); opacity: 0; } 15% { opacity: 1; } 100% { transform: translate(-50%, -50%) scale(2.2); opacity: 0; } }
.poster .art .sail { position: absolute; left: -3%; bottom: -2%; width: min(46vw, 640px); height: auto; color: #0C3A1C; opacity: .85;
  filter: drop-shadow(0 0 30px rgb(59 227 90 / .2)); }
.waves { position: absolute; inset: auto 0 0; height: 34%; width: 100%; }
.waves path { fill: none; stroke: var(--green); stroke-width: 1; vector-effect: non-scaling-stroke; }
.waves .w1 { opacity: .35; animation: drift 14s linear infinite; }
.waves .w2 { opacity: .22; animation: drift 20s linear infinite reverse; }
.waves .w3 { opacity: .14; animation: drift 26s linear infinite; }
.waves .w4 { opacity: .09; animation: drift 34s linear infinite reverse; }
@keyframes drift { to { transform: translateX(-1200px); } }
.scan { position: absolute; inset: 0; background: repeating-linear-gradient(0deg, rgb(255 255 255 / .018) 0 1px, transparent 1px 3px); mix-blend-mode: overlay; }
.poster .scrim { position: absolute; inset: 0; z-index: -1;
  background: radial-gradient(2400px min(58vh, 626px) at 50% calc(100% + min(8vh, 86px)), rgb(2 10 5 / .85) 0%, rgb(2 10 5 / .45) 34%, rgb(2 10 5 / .12) 64%, transparent 100%); }
.dot { display: inline-flex; align-items: center; gap: 10px; }
.dot::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--green); box-shadow: 0 0 10px var(--glow); animation: blink 2.4s ease-in-out infinite; }
@keyframes blink { 50% { opacity: .35; } }
.poster h1 { text-shadow: 0 0 40px rgb(59 227 90 / .25); }
.poster h1 em { color: var(--green); text-shadow: 0 0 24px var(--glow); }
.poster-copy { max-width: 760px; display: grid; gap: 22px; justify-items: center; }
.poster .eyebrow { font: 500 14px/1 var(--f-cond); letter-spacing: .1em; text-transform: uppercase; opacity: .85; }
.poster h1 { font: 400 clamp(42px, 6.2vw, 92px)/.96 var(--f-serif); text-transform: uppercase; letter-spacing: -.005em; }
.poster h1 em { font-style: italic; text-transform: none; }
.poster .lede { font-size: clamp(17px, 1.4vw, 21px); line-height: 1.4; max-width: 34ch; opacity: .95; }
.presented { position: absolute; left: clamp(18px, 2vw, 32px); bottom: clamp(18px, 2vw, 28px); text-align: left; display: grid; gap: 6px; }
.presented small { font: 600 11px/1 var(--f-cond); letter-spacing: .12em; text-transform: uppercase; opacity: .8; }
.presented a { font: 500 18px/1 var(--f-cond); letter-spacing: .08em; text-transform: uppercase; border-bottom: 1px solid rgb(255 255 255 / .35); padding-bottom: 3px; }
.credit { position: absolute; bottom: 26px; left: 50%; transform: translateX(-50%); font: 500 12px/1 var(--f-cond); letter-spacing: .08em; text-transform: uppercase; opacity: .6; white-space: nowrap; }

/* ---------- Pilares (faixa "imprensa") ---------- */
.pillars { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; max-width: 1240px; margin: 0 auto; padding-block: 64px 56px; text-align: center; }
.pillars blockquote { margin: 0; display: grid; gap: 16px; justify-items: center; color: var(--ink-60); font-size: 19px; line-height: 1.35; }
.pillars cite { font: 600 16px/1 var(--f-cond); font-style: normal; letter-spacing: .12em; text-transform: uppercase; color: var(--green); text-shadow: 0 0 12px var(--glow); }
.pillars blockquote { position: relative; padding-top: 22px; }
.pillars blockquote::before { content: ""; position: absolute; top: 0; left: 50%; width: 46px; height: 1px; transform: translateX(-50%); background: linear-gradient(90deg, transparent, var(--green), transparent); box-shadow: 0 0 10px var(--glow); }
.sec-head .it { color: var(--green); text-shadow: 0 0 22px var(--glow); }

/* ---------- Episódios ---------- */
.sec-head { display: grid; gap: 2px; margin-bottom: 28px; padding-left: clamp(4px, 1.2vw, 18px); }
.sec-head .it { font: italic 400 clamp(34px, 3.4vw, 48px)/1 var(--f-serif); }
.sec-head .up { font: 400 clamp(34px, 3.4vw, 48px)/1 var(--f-serif); text-transform: uppercase; }
.discover { padding-block: 40px 96px; max-width: 1920px; margin: 0 auto; }
.feature { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 52px; background: linear-gradient(135deg, rgb(59 227 90 / .06), rgb(59 227 90 / .015)); border: 1px solid rgb(59 227 90 / .1); border-radius: 8px; padding: 12px; }
.ep-cover { box-shadow: 0 0 0 1px rgb(59 227 90 / .1); }
.ep:hover .ep-cover { box-shadow: 0 0 0 1px rgb(59 227 90 / .5), 0 18px 50px -20px var(--glow); }
.feature-cover { position: relative; aspect-ratio: 1; max-height: 820px; border-radius: 6px; overflow: hidden; container-type: inline-size;
  background: radial-gradient(70% 70% at 50% 45%, #0E5A26 0%, #06240F 55%, #020B05 100%); color: var(--green); display: grid; place-items: center;
  border: 1px solid rgb(59 227 90 / .14); }
.feature-cover .num { font: 300 46cqw/.78 var(--f-serif); letter-spacing: -.05em; text-shadow: 0 0 6cqw rgb(59 227 90 / .55); }
.feature-cover .ttl { font: italic 400 7.4cqw/1 var(--f-serif); margin-top: 3cqw; color: var(--ink); }
.feature-cover .ring { position: absolute; width: 74%; aspect-ratio: 1; border-radius: 50%; border: 1px solid rgb(59 227 90 / .3); box-shadow: 0 0 30px rgb(59 227 90 / .12); }
.feature-cover .ring.r2 { width: 92%; border-style: dashed; animation: turn 40s linear infinite; }
@keyframes turn { to { transform: rotate(360deg); } }
.feature-bar { position: absolute; inset: auto 0 0; padding: 18px 22px; display: flex; align-items: center; gap: 14px;
  background: linear-gradient(to top, rgb(2 10 5 / .7), transparent); color: var(--ink); }
.feature-bar .play { width: 46px; height: 46px; border-radius: 50%; background: var(--green); color: #03100A; box-shadow: 0 0 22px var(--glow); display: grid; place-items: center; flex: none; transition: transform .4s var(--ease); }
.feature-bar .play:hover { transform: scale(1.06); }
.feature-bar .play svg { width: 16px; height: 16px; margin-left: 3px; }
.feature-bar span { font: 500 14px/1 var(--f-cond); letter-spacing: .06em; text-transform: uppercase; }
.feature-bar .dur { margin-left: auto; font-variant-numeric: tabular-nums; }
.feature-copy { display: grid; align-content: start; gap: 22px; padding: clamp(8px, 2.4vw, 40px) clamp(4px, 2vw, 32px) 24px 0; min-width: 0; }
.meta { font: 500 15px/1 var(--f-cond); letter-spacing: .05em; text-transform: uppercase; color: var(--ink-60); }
.feature-copy h3 { font: 400 clamp(40px, 4.2vw, 68px)/.95 var(--f-serif); text-transform: uppercase; }
.feature-copy p { font-size: 19px; line-height: 1.45; max-width: 60ch; }
.guests { font-size: 17px; color: var(--ink-60); }
.guests b { font-weight: 500; color: var(--ink); }
.row { display: flex; flex-wrap: wrap; gap: 10px; }
.structure { border-top: 1px solid var(--ink-08); padding-top: 18px; display: grid; gap: 10px; }
.structure ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; counter-reset: s; }
.structure li { counter-increment: s; font: 500 14px/1 var(--f-cond); letter-spacing: .04em; text-transform: uppercase; padding: 8px 10px; border-radius: 4px; background: var(--ink-04); }
.structure li::before { content: counter(s) " · "; color: var(--ink-60); }

.ep-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin-top: 28px; padding-inline: 12px; }
.ep { display: grid; gap: 14px; align-content: start; }
.ep-cover { aspect-ratio: 16 / 10; border-radius: 4px; overflow: hidden; position: relative; background: var(--c); color: var(--t); container-type: inline-size; display: grid; place-items: center; transition: transform .6s var(--ease); }
.ep:hover .ep-cover { transform: translateY(-4px); }
.ep-cover .wm { position: absolute; bottom: 5cqw; left: 50%; transform: translateX(-50%); font: 600 3.2cqw/1 var(--f-cond); letter-spacing: .14em; text-transform: uppercase; opacity: .7; white-space: nowrap; }
.ep-cover .big { font: italic 400 10cqw/.95 var(--f-serif); padding: 0 8cqw; text-align: center; }
.ep-cover .tag { position: absolute; top: 4cqw; left: 4cqw; font: 500 3.4cqw/1 var(--f-cond); letter-spacing: .06em; text-transform: uppercase; }
.ep h4 { margin: 0; font: 500 19px/1.1 var(--f-cond); letter-spacing: .03em; text-transform: uppercase; }
.ep p { font-size: 16px; line-height: 1.35; color: var(--ink-60); }
.center { display: flex; justify-content: center; margin-top: 44px; }

/* ---------- Patrocínio (layout "From Our Listeners") ---------- */
.sponsor { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(32px, 8vw, 140px); max-width: 1180px; margin: 0 auto; padding-block: 72px 140px; scroll-margin-top: var(--nav-h); }
.sponsor-head { position: sticky; top: calc(var(--nav-h) + 40px); align-self: start; display: grid; gap: 20px; }
.sponsor-head .lede { font-size: 20px; line-height: 1.35; max-width: 30ch; }
.personas { display: grid; gap: 8px; padding: 0; margin: 4px 0 0; list-style: none; }
.personas li { font: 500 14px/1 var(--f-cond); letter-spacing: .05em; text-transform: uppercase; color: var(--ink-60); display: flex; gap: 10px; align-items: center; }
.personas li::before { content: ""; width: 14px; height: 1px; background: currentColor; }
.tiers { display: grid; }
.tier { display: grid; gap: 16px; padding-block: 28px; border-bottom: 1px solid var(--ink-08); }
.tier:first-child { padding-top: 0; }
.tier-top { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.tier .badge { width: 40px; height: 40px; border-radius: 4px; display: grid; place-items: center; font: 600 15px/1 var(--f-cond); background: var(--c); color: var(--t); }
.tier .kind { font: 500 13px/1 var(--f-cond); letter-spacing: .08em; text-transform: uppercase; color: var(--ink-60); }
.reveal { --r: 1; font-size: 20px; line-height: 1.45;
  -webkit-mask-image: linear-gradient(90deg, #000 calc(var(--r) * 120% - 20%), rgb(0 0 0 / .22) calc(var(--r) * 120%));
  mask-image: linear-gradient(90deg, #000 calc(var(--r) * 120% - 20%), rgb(0 0 0 / .22) calc(var(--r) * 120%)); }
.tier h4 { margin: 0; font: 500 16px/1 var(--f-cond); letter-spacing: .05em; text-transform: uppercase; }
.tier .small { font-size: 16px; color: var(--ink-60); margin-top: -10px; }
.tiers .row { margin-top: 32px; }

/* ---------- Faixa final + rodapé ---------- */
.closing { position: relative; margin-inline: calc(-1 * max(16px, env(safe-area-inset-left, 0px))) calc(-1 * max(16px, env(safe-area-inset-right, 0px))); color: var(--on-night); isolation: isolate; overflow: hidden;
  background: radial-gradient(45% 55% at 50% 30%, rgb(40 190 80 / .3), transparent 70%), linear-gradient(180deg, #04110A 0%, #06200F 45%, #020A05 100%);
  border-top: 1px solid rgb(59 227 90 / .12); }
.closing .art { position: absolute; inset: 0; z-index: -1; pointer-events: none; overflow: hidden; }
.closing .art .sail { position: absolute; right: 2%; top: 4%; width: min(40vw, 540px); color: #0C3A1C; opacity: .8; }
.closing .rings { top: 30%; }
.closing .waves { top: 34%; bottom: auto; height: 30%; }
.cta h2 { text-shadow: 0 0 40px rgb(59 227 90 / .25); }
.cta { text-align: center; padding: 120px 20px 220px; display: grid; justify-items: center; gap: 20px; }
.cta .eyebrow { font: 500 15px/1 var(--f-cond); letter-spacing: .08em; text-transform: uppercase; opacity: .85; }
.cta h2 { font: 400 clamp(40px, 4.6vw, 70px)/1 var(--f-serif); }
.cta p { font-size: 19px; max-width: 36ch; opacity: .92; }
.footer {
  position: relative; margin: -160px clamp(12px, 1vw, 16px) clamp(12px, 1vw, 16px); border-radius: 10px;
  padding: clamp(32px, 4.4vw, 64px) clamp(20px, 5.6vw, 100px) 28px; display: grid; gap: 48px;
  background: linear-gradient(160deg, rgb(10 52 24 / .72), rgb(4 22 11 / .82)); backdrop-filter: blur(24px) saturate(1.2); -webkit-backdrop-filter: blur(24px) saturate(1.2);
  border: 1px solid rgb(59 227 90 / .16); box-shadow: 0 -20px 80px -40px var(--glow);
}
.foot-top { display: grid; grid-template-columns: minmax(0, 1.3fr) repeat(3, minmax(0, .7fr)); gap: 40px; }
.foot-news { display: grid; gap: 18px; align-content: start; padding-right: 40px; border-right: 1px solid rgb(255 255 255 / .14); }
.foot-news .cap { font-size: 15px; opacity: .8; }
.foot-news p { font-size: 20px; line-height: 1.35; }
.foot-news .wide { width: 100%; justify-content: center; border-radius: 8px; height: 50px; }
.contact { display: grid; gap: 6px; font: 400 15px/1.3 var(--f-ui); opacity: .9; }
.contact span { user-select: all; }
.col { display: grid; gap: 18px; align-content: start; }
.col h5 { margin: 0 0 6px; font: 500 15px/1 var(--f-cond); letter-spacing: .06em; text-transform: uppercase; color: var(--green); text-shadow: 0 0 10px var(--glow); }
.col a { font: 500 15px/1 var(--f-cond); letter-spacing: .05em; text-transform: uppercase; opacity: .9; display: inline-flex; gap: 6px; align-items: center; }
.col a:hover { opacity: 1; text-decoration: underline; text-underline-offset: 4px; }
.col a svg { width: 10px; height: 10px; }
.foot-bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; padding-top: 22px; border-top: 1px solid rgb(255 255 255 / .12); font: 500 13px/1 var(--f-cond); letter-spacing: .06em; text-transform: uppercase; opacity: .7; }

/* ---------- Partículas ---------- */
#dust { position: fixed; inset: 0; width: 100%; height: 100%; z-index: 35; pointer-events: none; }
.float { border-color: rgb(59 227 90 / .18); }

/* ---------- Card flutuante ---------- */
.float {
  position: fixed; z-index: 40; width: min(390px, calc(100vw - 32px));
  right: calc(max(16px, env(safe-area-inset-right, 0px)) + 6px); bottom: calc(env(safe-area-inset-bottom, 0px) + 22px);
  background: var(--surface); color: var(--ink); border: 1px solid var(--ink-08); border-radius: 12px;
  padding: 18px 20px; box-shadow: 0 24px 60px -28px rgb(0 0 0 / .35); display: grid; gap: 12px;
  transition: transform .5s var(--ease), opacity .5s;
}
.float-head { display: flex; justify-content: space-between; align-items: center; }
.float-head span { font: 500 14px/1 var(--f-cond); letter-spacing: .05em; text-transform: uppercase; color: var(--ink-60); }
.float-head button { border: 0; background: none; color: var(--ink-60); cursor: pointer; width: 28px; height: 28px; border-radius: 6px; font-size: 18px; line-height: 1; }
.float-head button:hover { background: var(--ink-04); }
.float p { font-size: 16px; line-height: 1.35; }
.float .go { display: flex; gap: 8px; }
.float .go .field { flex: 1; display: flex; align-items: center; padding: 0 14px; height: 48px; border-radius: 6px; background: var(--ink-04); font: 400 15px/1 var(--f-ui); color: var(--ink-60); min-width: 0; }
.float .go a { width: 52px; height: 48px; flex: none; border-radius: 6px; background: var(--green); color: #03100A; box-shadow: 0 0 18px var(--glow); display: grid; place-items: center; }
.float.min .body { display: none; }

/* ---------- Responsivo ---------- */
@media (max-width: 1100px) {
  .wall { grid-template-columns: repeat(4, 1fr); }
  .foot-top { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .foot-news { grid-column: 1 / -1; border-right: 0; padding-right: 0; padding-bottom: 32px; border-bottom: 1px solid rgb(255 255 255 / .14); }
}
@media (max-width: 860px) {
  .feature, .sponsor { grid-template-columns: minmax(0, 1fr); }
  .feature-copy { padding: 8px 10px 20px; }
  .sponsor-head { position: static; }
  .ep-grid { grid-template-columns: minmax(0, 1fr); padding-inline: 0; }
  .pillars { grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .nav .search { display: none; }
  .nav { grid-template-columns: 1fr auto; }
  .pop .search { display: block; }
  .credit { display: none; }
}
@media (max-width: 560px) {
  :root { --nav-h: 68px; }
  .wall { grid-template-columns: repeat(3, 1fr); }
  .logo { font-size: 20px; }
  .btn { height: 40px; padding: 0 14px; }
  .foot-top { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .presented { position: static; justify-items: center; text-align: center; margin-top: 18px; }
  .poster { padding-bottom: 40px; }
  .poster-copy { align-self: end; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition-duration: .01ms !important; animation: none !important; }
  .wall { transform: none !important; }
  .reveal { -webkit-mask-image: none; mask-image: none; }
  html { scroll-behavior: auto; }
}
