
:root{--pink:#C2185B;--black:#090909;--cream:#fbfaf8;--line:#e9e5e2;--serif:Georgia,serif;--sans:Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;font-family:var(--sans);color:#111;line-height:1.6}a{text-decoration:none;color:inherit}
.site-header{height:112px;padding:10px 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:20}
.brand img{width:105px}.nav{display:flex;gap:24px;align-items:center;font-family:"Helvetica Neue","Avenir Next",Arial,sans-serif;font-size:.78rem;font-weight:500;text-transform:uppercase;letter-spacing:.055em}.nav-cta{background:var(--pink);color:#fff;padding:.8rem 1rem}
.menu{display:none;background:none;border:0}.menu span{display:block;width:26px;height:2px;background:#111;margin:5px}
.hero{min-height:680px;display:grid;grid-template-columns:1.05fr .95fr;background:#090909;color:#fff}.hero-copy{padding:90px 6vw;align-self:center}.issue,.eyebrow{color:#C2185B;font-size:.75rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
h1,h2,h3{font-family:var(--serif)}h1{font-size:clamp(4rem,8vw,8rem);line-height:.82;letter-spacing:-.07em;margin:.2em 0}.vs{display:block;color:var(--pink);font-size:.5em;letter-spacing:.04em}
.standfirst{font-size:clamp(1.2rem,2vw,1.8rem);max-width:720px;color:#eee}.micro{color:#bbb;max-width:700px}
.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-block;padding:1rem 1.25rem;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.primary{background:var(--pink);color:#fff}.secondary{background:#fff;color:#111}.dark{background:#111;color:#fff}
.stage{position:relative;margin:0;overflow:hidden;background:#111}.stage img{width:100%;height:100%;min-height:680px;display:block;object-fit:cover;object-position:70% center}.stage-grid{width:86%;display:grid;grid-template-columns:1fr .7fr 1fr;gap:18px;align-items:center}.screen{aspect-ratio:4/5;border:6px solid #fff;background:linear-gradient(145deg,#333,#111);display:grid;place-items:center;text-align:center;font:700 clamp(1.8rem,3vw,3.2rem)/.9 var(--serif)}.presenter{aspect-ratio:1/1.2;border-radius:50%;border:6px solid #fff;background:var(--pink);display:grid;place-items:center;text-align:center;font-weight:800;text-transform:uppercase}.score{position:absolute;bottom:35px;left:50%;transform:translateX(-50%);display:flex;gap:12px}.score span{background:#fff;color:#111;padding:.65rem .85rem;font-weight:800}.score .live{background:var(--pink);color:#fff}
.fast{display:grid;grid-template-columns:repeat(4,1fr);background:var(--pink);color:#fff}.fast div{padding:22px;text-align:center;font-weight:800;text-transform:uppercase;letter-spacing:.08em;border-right:1px solid rgba(255,255,255,.35)}
.section{padding:90px 6vw}.copy{max-width:1000px;margin:auto}.copy h2,.heading h2,.poll h2,.faq h2{font-size:clamp(2.5rem,4.5vw,5rem);line-height:1;letter-spacing:-.04em;margin:.2em 0}.lead{font:1.8rem/1.35 var(--serif)}
.rules{background:var(--cream)}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{border:1px solid var(--line);padding:28px;background:#fff}.card h3{font-size:1.8rem;margin:.2em 0}.card p{color:#666}
.rounds{background:#0b0b0b;color:#fff}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.round{border:1px solid #333;padding:26px;background:#111}.round h3{font-size:2rem;margin:.2em 0}.round p{color:#c5c5c5}
.poll{display:grid;grid-template-columns:.85fr 1.15fr;background:linear-gradient(100deg,#f8e3eb,#fff)}.poll-visual{min-height:450px;background:var(--pink);color:#fff;display:grid;place-items:center}.count{width:240px;height:240px;border:18px solid #fff;border-radius:50%;display:grid;place-items:center;font:700 6rem var(--serif)}.poll-copy{padding:70px 6vw}.choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choices div{border:2px solid #111;padding:18px;text-align:center;font-weight:800;text-transform:uppercase}
.prize{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}.badge{width:230px;height:230px;border-radius:50%;background:var(--pink);color:#fff;display:grid;place-items:center;text-align:center;font:700 2.2rem/1 var(--serif)}
.apply{background:var(--cream)}.apply-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.apply-card{padding:38px;background:#fff;border:1px solid var(--line)}.apply-card h3{font-size:2.4rem;margin:.15em 0}.apply-card:first-child{border-top:8px solid #111}.apply-card:last-child{border-top:8px solid var(--pink)}
.banner{background:var(--pink);color:#fff;text-align:center;padding:35px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.banner strong{display:block;font:700 clamp(2rem,3vw,3.3rem) var(--serif);text-transform:none;letter-spacing:-.03em}
.faq{background:var(--cream)}details{max-width:980px;border-top:1px solid #d8d4d1;padding:22px 0}details:last-child{border-bottom:1px solid #d8d4d1}summary{font-weight:700;cursor:pointer}
footer{padding:60px 6vw;display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:45px;background:#090909;color:#fff}footer img{width:100px;filter:invert(1) grayscale(1) brightness(10)}footer nav,footer .contact{display:grid;gap:10px;align-content:start}footer p{color:#aaa}
@media(max-width:950px){.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:25px 6vw;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.menu{display:block}.hero,.poll{grid-template-columns:1fr}.stage{min-height:520px}.stage img{min-height:520px}.grid3{grid-template-columns:1fr}.fast{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.site-header{height:96px}.brand img{width:85px}.stage-grid{grid-template-columns:1fr 1fr}.presenter{grid-column:1/-1;grid-row:1;width:130px;justify-self:center}.grid2,.apply-grid,.fast,footer,.prize{grid-template-columns:1fr}.choices{grid-template-columns:1fr}}

/* Publication text alignment rule */
body,main,section,.hero-copy,.heading,.section-heading{text-align:left}

/* Approved Brand vs Superfan hero image: people only, no embedded page text */
.stage{background:#f7f7f5}
.stage img{width:100%;height:100%;min-height:680px;object-fit:cover;object-position:center top}
@media(max-width:950px){.stage img{min-height:520px;object-position:center top}}


/* Unapproved Visuals Removed */
.poll,.prize{display:block !important}
.poll-copy,.prize>div{max-width:none !important;margin-left:0 !important;margin-right:0 !important}
