:root {
  --black: #030303;
  --charcoal: #090909;
  --ink: #101010;
  --white: #f7f7f1;
  --muted: #b8b8b1;
  --hot: #ff0048;
  --magenta: #d650aa;
  --blue: #3196d5;
  --yellow: #ffd315;
  --green: #12c957;
  --acid: #cbff00;
  --line: rgba(247, 247, 241, .2);
  --block: Impact, Haettenschweiler, "Arial Black", "Franklin Gothic Heavy", sans-serif;
  --copy: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --mono: "Arial Narrow", "Roboto Condensed", "Helvetica Neue Condensed", sans-serif;
  color-scheme: dark;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--black);
  color: var(--white);
  font-family: var(--copy);
  line-height: 1.45;
  overflow-x: hidden;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 9999;
  opacity: .12;
  background:
    radial-gradient(circle at 20% 30%, rgba(255,255,255,.12), transparent 16%),
    radial-gradient(circle at 80% 10%, rgba(255,255,255,.09), transparent 18%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.025), rgba(255,255,255,.025) 1px, transparent 1px, transparent 5px);
  mix-blend-mode: screen;
}
img { display: block; max-width: 100%; }
figure { margin: 0; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
::selection { background: var(--hot); color: var(--black); }

.skip-link {
  position: fixed;
  left: 1rem;
  top: -6rem;
  z-index: 10000;
  background: var(--yellow);
  color: var(--black);
  padding: .75rem 1rem;
  font-weight: 900;
  transition: top .2s ease;
}
.skip-link:focus { top: 1rem; }

.splash {
  position: fixed;
  inset: 0;
  z-index: 9000;
  display: grid;
  place-items: end center;
  min-height: 100vh;
  background: #000;
  transition: opacity .7s ease, visibility .7s ease, transform .7s ease;
}
.splash.is-gone {
  opacity: 0;
  visibility: hidden;
  transform: translateY(-4vh) scale(1.02);
}
.splash__image {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(to bottom, rgba(0,0,0,.15), rgba(0,0,0,.25) 62%, rgba(255,0,72,1) 63%), url('assets/frame_newsroom.webp');
  background-size: cover;
  background-position: center;
  filter: grayscale(1) contrast(1.06);
}
.splash__bar {
  position: relative;
  z-index: 2;
  width: 100%;
  min-height: 23vh;
  background: var(--hot);
  color: var(--black);
  display: grid;
  grid-template-columns: minmax(180px, 360px) 1fr auto;
  gap: clamp(1rem, 3vw, 3rem);
  align-items: center;
  padding: clamp(1rem, 3vw, 2rem) clamp(1rem, 8vw, 10rem);
}
.splash__logo { width: min(34vw, 420px); min-width: 210px; }
.splash__line {
  font-family: var(--block);
  text-transform: uppercase;
  letter-spacing: .02em;
  font-size: clamp(1.2rem, 2.2vw, 2.6rem);
  max-width: 820px;
}
.splash__enter {
  appearance: none;
  border: 0;
  background: transparent;
  color: var(--white);
  cursor: pointer;
  font-family: var(--block);
  text-transform: lowercase;
  font-size: clamp(1rem, 1.4vw, 1.5rem);
  padding: 1rem 1.25rem;
  position: relative;
}
.splash__enter::before {
  content: "↻";
  position: absolute;
  left: -3rem;
  top: 50%;
  color: var(--black);
  font-size: 3.5rem;
  transform: translateY(-50%) rotate(-20deg);
}
.splash__enter:focus-visible,
.nav a:focus-visible,
.btn:focus-visible,
.tab-button:focus-visible,
.shuffle:focus-visible {
  outline: 3px solid var(--yellow);
  outline-offset: 4px;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  min-height: 62px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .55rem clamp(1rem, 3vw, 2.5rem);
  background: rgba(0,0,0,.78);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(255,255,255,.09);
}
.brand { display: inline-flex; align-items: center; gap: .75rem; min-width: 150px; }
.brand img { height: 36px; width: auto; }
.brand__stamp {
  font-family: var(--block);
  font-size: .85rem;
  line-height: .9;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--white);
  opacity: .85;
}
.nav { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: clamp(.65rem, 2vw, 1.45rem); }
.nav a {
  font-family: var(--block);
  text-transform: uppercase;
  font-size: clamp(.72rem, .78vw, .9rem);
  letter-spacing: .035em;
  opacity: .88;
  position: relative;
}
.nav a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -.45rem;
  width: 0;
  height: 3px;
  background: var(--hot);
  transition: width .2s ease;
}
.nav a:hover::after, .nav a.is-active::after { width: 100%; }
.nav .nav-submit {
  color: var(--hot);
}
.menu-button { display: none; }

.section { position: relative; padding: clamp(4rem, 9vw, 8rem) clamp(1rem, 7vw, 8rem); }
.section--tight { padding-top: clamp(2rem, 5vw, 4rem); }
.section__bar {
  margin-inline: calc(-1 * clamp(1rem, 7vw, 8rem));
  padding: clamp(.9rem, 2.2vw, 1.6rem) clamp(1rem, 7vw, 8rem);
  color: var(--black);
  display: flex;
  align-items: baseline;
  gap: 1.5rem;
  flex-wrap: wrap;
  border-top: 1px solid rgba(0,0,0,.25);
  border-bottom: 1px solid rgba(0,0,0,.25);
}
.section__bar h2 {
  margin: 0;
  font-family: var(--block);
  text-transform: uppercase;
  font-size: clamp(2.1rem, 5vw, 5.7rem);
  line-height: .82;
  letter-spacing: -.035em;
}
.section__bar span {
  font-family: var(--block);
  text-transform: uppercase;
  letter-spacing: .02em;
  font-size: clamp(.95rem, 1.4vw, 1.35rem);
}
.bar-blue { background: var(--blue); }
.bar-yellow { background: var(--yellow); }
.bar-magenta { background: var(--magenta); }
.bar-green { background: var(--green); }

.hero {
  min-height: calc(100vh - 62px);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  padding: clamp(1rem, 3vw, 2.5rem) clamp(1rem, 6vw, 8rem) clamp(4rem, 9vw, 8rem);
  overflow: hidden;
}
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .22;
  background:
    radial-gradient(circle at 12% 15%, rgba(255,0,72,.65), transparent 20%),
    radial-gradient(circle at 88% 28%, rgba(49,150,213,.55), transparent 18%),
    radial-gradient(circle at 50% 86%, rgba(255,211,21,.35), transparent 20%);
  filter: blur(35px);
}
.hero__stage {
  position: relative;
  z-index: 1;
  width: min(1320px, 100%);
  margin-inline: auto;
}
.hero__mosaic {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(.45rem, 1vw, 1rem);
  min-height: clamp(330px, 56vw, 650px);
  align-items: stretch;
}
.hero__tile {
  position: relative;
  overflow: hidden;
  background: #111;
  min-height: 100%;
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--cut, 0px)), 0 100%);
}
.hero__tile img { width: 100%; height: 100%; object-fit: cover; object-position: center; filter: contrast(1.05) saturate(.9); transition: transform .8s cubic-bezier(.2,.8,.2,1), filter .4s ease; }
.hero__tile:nth-child(1) { margin-top: 14%; --cut: 18px; }
.hero__tile:nth-child(2) { margin-top: 0; --cut: 42px; }
.hero__tile:nth-child(3) { margin-top: 5%; --cut: 8px; }
.hero__tile:nth-child(4) { margin-top: 0; --cut: 28px; }
.hero__tile:hover img { transform: scale(1.08); filter: contrast(1.18) saturate(1.1); }
.hero__logo-card {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 3;
  width: min(34vw, 410px);
  min-width: 250px;
  background: var(--hot);
  padding: clamp(1rem, 2vw, 1.75rem);
  display: grid;
  place-items: center;
  aspect-ratio: 1.55;
  box-shadow: 0 0 0 1px rgba(0,0,0,.1), 10px 10px 0 var(--black);
}
.hero__logo-card img { width: 100%; }
.hero__headline {
  position: relative;
  z-index: 4;
  margin-top: -2.35rem;
  text-align: center;
}
.display-title,
.big-title,
.cta-title {
  font-family: var(--block);
  text-transform: uppercase;
  letter-spacing: -.04em;
  margin: 0;
  line-height: .78;
}
.display-title { font-size: clamp(3.3rem, 8.2vw, 8.9rem); text-shadow: .05em .055em 0 #000; }
.hero__subtitle { margin: .5rem auto 1.5rem; max-width: 980px; font-family: var(--block); font-size: clamp(1.25rem, 2.5vw, 3rem); line-height: 1; letter-spacing: -.015em; }
.hero__actions { display: flex; justify-content: center; flex-wrap: wrap; gap: .85rem; }
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: .8rem 1.15rem .65rem;
  border: 2px solid var(--white);
  background: var(--white);
  color: var(--black);
  font-family: var(--block);
  text-transform: uppercase;
  font-size: clamp(1rem, 1.3vw, 1.45rem);
  letter-spacing: .015em;
  box-shadow: 6px 6px 0 var(--hot);
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
}
.btn:hover { transform: translate(3px, 3px); box-shadow: 2px 2px 0 var(--hot); }
.btn--dark { background: var(--black); color: var(--white); box-shadow: 6px 6px 0 var(--blue); }
.btn--yellow { background: var(--yellow); color: var(--black); border-color: var(--yellow); box-shadow: 6px 6px 0 var(--magenta); }
.btn--magenta { background: var(--hot); color: var(--black); border-color: var(--hot); box-shadow: 6px 6px 0 var(--white); }

.logo-row {
  width: min(1120px, 100%);
  margin: clamp(3rem, 6vw, 6rem) auto 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: center;
  gap: clamp(2rem, 6vw, 6rem);
}
.logo-row img { width: 100%; max-height: 230px; object-fit: contain; opacity: .94; }
.logo-row img:nth-child(2) { max-height: 270px; }

.manifesto {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
  gap: clamp(2rem, 6vw, 6rem);
  align-items: start;
}
.kicker {
  display: inline-block;
  font-family: var(--block);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: .9rem;
  color: var(--black);
  background: var(--yellow);
  padding: .35rem .55rem .25rem;
  margin-bottom: 1.25rem;
}
.big-title { font-size: clamp(2.9rem, 7vw, 7rem); max-width: 980px; }
.lead { font-family: var(--block); font-size: clamp(1.35rem, 2.4vw, 2.45rem); line-height: 1.03; letter-spacing: -.02em; margin: 1rem 0 1.5rem; }
.copy-block p { max-width: 940px; color: #e6e6df; font-size: clamp(1rem, 1.2vw, 1.15rem); }
.copy-block p:first-of-type { color: var(--white); }
.stats-stack { display: grid; gap: .9rem; position: sticky; top: 95px; }
.stat-card {
  min-height: 138px;
  display: grid;
  align-content: space-between;
  padding: 1rem;
  background: var(--white);
  color: var(--black);
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 8px 8px 0 var(--hot);
  transform: rotate(var(--tilt, -1deg));
}
.stat-card:nth-child(2) { --tilt: 1deg; box-shadow: 8px 8px 0 var(--blue); }
.stat-card:nth-child(3) { --tilt: -.5deg; box-shadow: 8px 8px 0 var(--yellow); }
.stat-card:nth-child(4) { --tilt: 1.2deg; box-shadow: 8px 8px 0 var(--green); }
.stat-card b { font-family: var(--block); font-size: clamp(1.6rem, 3vw, 3.2rem); line-height: .8; text-transform: uppercase; }
.stat-card span { font-weight: 900; text-transform: uppercase; font-size: .84rem; }

.filmstrip { padding-inline: 0; overflow: hidden; border-block: 1px solid rgba(255,255,255,.08); background: #050505; }
.filmstrip__top { padding: 0 clamp(1rem, 7vw, 8rem) 1rem; display: flex; align-items: end; justify-content: space-between; gap: 1rem; }
.filmstrip h2 { margin: 0; font-family: var(--block); text-transform: uppercase; font-size: clamp(2rem, 5vw, 5rem); line-height: .82; }
.shuffle {
  border: 2px solid var(--white);
  background: transparent;
  color: var(--white);
  padding: .55rem .75rem .42rem;
  cursor: pointer;
  font-family: var(--block);
  text-transform: uppercase;
}
.rail { display: flex; gap: .75rem; width: max-content; animation: rail 58s linear infinite; }
.rail:hover { animation-play-state: paused; }
.rail__item {
  width: clamp(260px, 34vw, 520px);
  aspect-ratio: 2.35 / 1;
  overflow: hidden;
  background: #111;
  border: 1px solid rgba(255,255,255,.14);
}
.rail__item img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.rail__item:hover img { transform: scale(1.04); }
@keyframes rail { to { transform: translateX(-50%); } }

.how-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: clamp(2rem, 5vw, 5rem); align-items: start; }
.process { counter-reset: step; display: grid; gap: .8rem; }
.process-card {
  counter-increment: step;
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 1rem;
  padding: 1.1rem;
  border: 1px solid rgba(255,255,255,.15);
  background: linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.02));
}
.process-card::before {
  content: counter(step, decimal-leading-zero);
  font-family: var(--block);
  font-size: 2.7rem;
  line-height: .85;
  color: var(--hot);
}
.process-card h3 { margin: 0 0 .25rem; font-family: var(--block); text-transform: uppercase; font-size: 1.6rem; line-height: .9; }
.process-card p { margin: 0; color: #d9d9d1; }
.poster-card {
  position: relative;
  min-height: 620px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.16);
  background: var(--hot);
  display: grid;
  align-content: end;
}
.poster-card img.poster-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .62; filter: grayscale(.25) contrast(1.12); }
.poster-card__caption { position: relative; z-index: 2; padding: 1.25rem; background: var(--hot); color: var(--black); }
.poster-card__caption img { width: 72%; max-width: 360px; margin-bottom: 1rem; }
.poster-card__caption p { margin: 0; font-family: var(--block); text-transform: uppercase; font-size: clamp(1.3rem, 2.8vw, 3rem); line-height: .9; }

.awards-intro { max-width: 760px; margin: 2rem 0 2.5rem; font-size: 1.1rem; color: #e7e7df; }
.awards-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.award-card {
  border: 1px solid rgba(255,255,255,.15);
  background: #0b0b0b;
  min-height: 100%;
  padding: 1.15rem;
  position: relative;
  overflow: hidden;
}
.award-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 9px;
  background: var(--accent, var(--hot));
}
.award-card h3 {
  margin: 0 0 .85rem;
  font-family: var(--block);
  text-transform: uppercase;
  font-size: clamp(1.45rem, 2vw, 2.1rem);
  line-height: .9;
}
.award-card ul { margin: 0; padding-left: 1.15rem; color: #e7e7df; }
.award-card li { margin: .18rem 0; }
.award-card:nth-child(2n) { --accent: var(--blue); }
.award-card:nth-child(3n) { --accent: var(--yellow); }
.award-card:nth-child(4n) { --accent: var(--magenta); }
.award-card:nth-child(5n) { --accent: var(--green); }

.results-shell {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: 1rem;
  margin-top: 2rem;
}
.results-poster {
  min-height: 520px;
  background-image: linear-gradient(to top, rgba(0,0,0,.55), rgba(0,0,0,.1)), url('assets/frame_robot_field.webp');
  background-size: cover;
  background-position: center;
  border: 1px solid rgba(255,255,255,.16);
  display: grid;
  align-content: end;
  padding: 1rem;
}
.results-poster b { font-family: var(--block); text-transform: uppercase; font-size: clamp(2.4rem, 6vw, 6rem); line-height: .76; text-shadow: 6px 6px 0 #000; }
.results-list { display: grid; gap: 1rem; }
.result-card {
  border: 1px solid rgba(255,255,255,.14);
  background: #0c0c0c;
  padding: 1rem;
  min-height: 160px;
  display: grid;
  align-content: space-between;
}
.result-card small { font-family: var(--block); text-transform: uppercase; color: var(--magenta); }
.result-card h3 { margin: .4rem 0; font-family: var(--block); text-transform: uppercase; font-size: clamp(1.5rem, 2.5vw, 2.8rem); line-height: .82; }
.result-card p { margin: 0; color: #d7d7cf; }

.rules-wrap { margin-top: 2rem; }
.tab-controls { display: flex; flex-wrap: wrap; gap: .75rem; margin-bottom: 1rem; }
.tab-button {
  border: 2px solid var(--white);
  background: transparent;
  color: var(--white);
  font-family: var(--block);
  text-transform: uppercase;
  padding: .6rem .85rem .45rem;
  cursor: pointer;
}
.tab-button[aria-selected="true"] { background: var(--yellow); color: var(--black); border-color: var(--yellow); }
.rule-panel { display: none; }
.rule-panel.is-active { display: block; }
.rule-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
details {
  border: 1px solid rgba(255,255,255,.16);
  background: #0b0b0b;
  padding: 0;
}
summary {
  list-style: none;
  cursor: pointer;
  padding: 1rem 3rem 1rem 1rem;
  position: relative;
  font-family: var(--block);
  text-transform: uppercase;
  font-size: 1.15rem;
  line-height: 1;
}
summary::-webkit-details-marker { display: none; }
summary::after {
  content: "+";
  position: absolute;
  right: 1rem;
  top: .83rem;
  color: var(--yellow);
  font-size: 1.5rem;
}
details[open] summary::after { content: "–"; }
details p { margin: 0; padding: 0 1rem 1rem; color: #d9d9d1; }
.privacy-title { margin: 2rem 0 1rem; font-family: var(--block); text-transform: uppercase; font-size: clamp(2rem, 4vw, 4rem); line-height: .85; }

.submit-section { padding-bottom: clamp(5rem, 10vw, 10rem); }
.submit-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .7fr);
  gap: clamp(1.5rem, 5vw, 5rem);
  align-items: center;
  margin-top: 2rem;
}
.cta-title { font-size: clamp(3.8rem, 11vw, 11rem); color: var(--white); text-shadow: .055em .055em 0 var(--hot); }
.submit-copy { max-width: 760px; font-family: var(--block); font-size: clamp(1.3rem, 2.3vw, 2.6rem); line-height: 1.02; margin: 1rem 0 1.5rem; }
.contact-card {
  border: 1px solid rgba(255,255,255,.18);
  background: var(--white);
  color: var(--black);
  padding: clamp(1rem, 3vw, 2rem);
  box-shadow: 10px 10px 0 var(--green);
}
.contact-card img { width: min(360px, 100%); margin-bottom: 1.5rem; }
.contact-card h3 { margin: 0 0 .5rem; font-family: var(--block); text-transform: uppercase; font-size: clamp(2rem, 4vw, 4.4rem); line-height: .8; }
.contact-card p { margin: .25rem 0; font-weight: 800; }
.contact-card a { text-decoration: underline; text-decoration-thickness: 2px; }

.footer {
  padding: clamp(2rem, 5vw, 4rem) clamp(1rem, 7vw, 8rem);
  border-top: 1px solid rgba(255,255,255,.12);
  display: grid;
  grid-template-columns: minmax(180px, 360px) 1fr;
  gap: 2rem;
  align-items: end;
  color: #d2d2cb;
}
.footer img { width: min(300px, 100%); }
.footer__nav { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 1rem; font-family: var(--block); text-transform: uppercase; }
.footer p { margin: .5rem 0 0; text-align: right; }

.reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }

@media (max-width: 1000px) {
  .manifesto, .how-grid, .results-shell, .submit-grid { grid-template-columns: 1fr; }
  .stats-stack { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .awards-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rule-grid { grid-template-columns: 1fr; }
  .poster-card { min-height: 480px; }
}

@media (max-width: 760px) {
  .splash__bar { grid-template-columns: 1fr; place-items: start; min-height: 35vh; }
  .splash__enter::before { display: none; }
  .site-header { align-items: flex-start; }
  .menu-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,.35);
    background: transparent;
    color: var(--white);
    font-family: var(--block);
    text-transform: uppercase;
    padding: .45rem .65rem .35rem;
  }
  .nav { display: none; width: 100%; padding-top: .75rem; justify-content: flex-start; }
  .site-header.is-open { flex-wrap: wrap; }
  .site-header.is-open .nav { display: flex; }
  .brand img { height: 30px; }
  .hero__mosaic { grid-template-columns: repeat(2, minmax(0, 1fr)); min-height: 520px; }
  .hero__logo-card { min-width: 220px; width: 72vw; }
  .hero__headline { margin-top: 1.25rem; }
  .display-title { font-size: clamp(3rem, 16vw, 5rem); }
  .logo-row { grid-template-columns: 1fr; width: min(360px, 100%); }
  .stats-stack { grid-template-columns: 1fr; }
  .awards-grid { grid-template-columns: 1fr; }
  .process-card { grid-template-columns: 1fr; }
  .footer { grid-template-columns: 1fr; }
  .footer__nav { justify-content: flex-start; }
  .footer p { text-align: left; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .001ms !important; }
  .splash { position: static; min-height: 70vh; }
}

/* Targeted refinements added for the locked Plot Twist build */
.brand img { height: 50px; width: auto; }

.splash { display: grid; grid-template-rows: minmax(0, 1fr) auto; place-items: stretch; }
.splash__image {
  position: relative;
  inset: auto;
  width: 100%;
  height: 100%;
  background-color: #000;
  background-image: url('assets/frame_newsroom.webp');
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center bottom;
  filter: grayscale(1) contrast(1.06);
}
.splash__image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0,0,0,.04), rgba(0,0,0,.18));
  pointer-events: none;
}

.hero__carousel {
  position: relative;
  overflow: hidden;
  min-height: clamp(360px, 52vw, 680px);
  background: #111;
}
.hero__carousel::after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  height: 28%;
  pointer-events: none;
  background: linear-gradient(to top, rgba(0,0,0,.38), rgba(0,0,0,0));
}
.hero__carousel-track {
  --hero-gap: clamp(.45rem, 1vw, 1rem);
  display: flex;
  gap: var(--hero-gap);
  width: max-content;
  animation: heroCarousel 62s linear infinite;
  align-items: start;
}
.hero__carousel:hover .hero__carousel-track { animation-play-state: paused; }
.hero__slide {
  width: clamp(640px, 82vw, 1460px);
  aspect-ratio: 2.35 / 1;
  overflow: hidden;
  background: #111;
}
.hero__slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: contrast(1.05) saturate(.92);
  transition: transform .7s cubic-bezier(.2,.8,.2,1), filter .4s ease;
}
.hero__slide:hover img { transform: scale(1.04); filter: contrast(1.14) saturate(1.03); }
.hero__slide:nth-child(1) img,
.hero__slide:nth-child(7) img { object-position: center 34%; }
.hero__slide:nth-child(3) img,
.hero__slide:nth-child(9) img { object-position: center 28%; }
.hero__slide:nth-child(4) img,
.hero__slide:nth-child(10) img { object-position: center 30%; }
@keyframes heroCarousel { to { transform: translateX(calc(-50% - (var(--hero-gap) / 2))); } }

.rail__item { width: clamp(460px, 62vw, 1080px); }

.poster-card { display: flex; flex-direction: column; }
.poster-card img.poster-bg {
  position: relative;
  inset: auto;
  width: calc(100% - 2.2rem);
  margin: 1.1rem 1.1rem 0;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: contain;
  object-position: center;
  opacity: 1;
  filter: none;
}
.poster-card__caption { margin-top: auto; }

.results-tools {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  margin: 2rem 0 1rem;
}
.results-search {
  flex: 1 1 360px;
  display: grid;
  gap: .45rem;
  font-family: var(--block);
  text-transform: uppercase;
  letter-spacing: .03em;
}
.results-search input {
  width: 100%;
  border: 2px solid var(--white);
  background: #080808;
  color: var(--white);
  padding: .95rem 1rem .78rem;
  font: 900 1rem/1 var(--copy);
  text-transform: none;
  outline: 0;
}
.results-search input:focus-visible { border-color: var(--yellow); box-shadow: 0 0 0 3px rgba(255, 211, 21, .28); }
.results-count {
  font-family: var(--block);
  text-transform: uppercase;
  color: var(--black);
  background: var(--yellow);
  padding: .55rem .75rem .42rem;
}
.results-poster {
  min-height: 0;
  background: #050505;
  background-image: none !important;
  display: flex;
  flex-direction: column;
  align-content: start;
  justify-content: flex-start;
  gap: 1rem;
  padding: 1rem;
}
.results-poster img {
  width: 100%;
  height: auto;
  max-height: 520px;
  object-fit: contain;
  object-position: center;
  background: #000;
  border: 1px solid rgba(255,255,255,.16);
}
.results-poster b { display: block; margin-top: .25rem; }
.results-laurels {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: .25rem;
  padding: .8rem 1rem .65rem;
  background: var(--yellow);
  color: var(--black);
  font-family: var(--block);
  text-transform: uppercase;
  font-size: clamp(1.45rem, 3vw, 3.4rem);
  line-height: .85;
  letter-spacing: -.025em;
  box-shadow: 6px 6px 0 var(--hot);
  transition: transform .18s ease, box-shadow .18s ease;
}
.results-laurels:hover { transform: translate(3px, 3px); box-shadow: 2px 2px 0 var(--hot); }
.result-card { gap: .9rem; }
.result-card[hidden] { display: none; }
.result-card__winner em,
.nominee-list em {
  display: block;
  margin-top: .18rem;
  color: #aaa9a1;
  font-style: normal;
  font-weight: 800;
}
.nominee-list {
  margin: 0;
  padding: 0 1rem 1rem;
  list-style: none;
  display: grid;
  gap: .55rem;
}
.nominee-list li {
  padding: .65rem .75rem .55rem;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.035);
}
.nominee-list span { font-weight: 950; color: var(--white); }
.nominee-drawer p { padding: 0 1rem 1rem; }

@media (max-width: 760px) {
  .brand img { height: 38px; }
  .hero__carousel { min-height: 340px; }
  .hero__slide { width: 90vw; }
  .results-tools { align-items: stretch; }
  .results-count { width: 100%; }
}
