:root{--ink:#1C0A16;--cream:#FAF6F0;--paper:#fff;--cherry:#C2185B;--gold:#C9A84C;--muted:#725768;--border:rgba(28,10,22,.12);--font-display:'Playfair Display',Georgia,serif;--font-body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font-body);line-height:1.65}a{color:inherit}header{position:sticky;top:0;z-index:10;background:rgba(250,246,240,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}nav{max-width:1240px;margin:auto;display:flex;align-items:center;gap:18px;padding:13px 22px}.logo{text-decoration:none;min-width:max-content}.logo span{font:900 18px var(--font-display)}.logo em{color:var(--cherry)}.logo small{display:block;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--muted)}nav input,.filter,select{border:1px solid var(--border);border-radius:999px;padding:11px 15px;background:white;font:600 14px var(--font-body)}nav input{flex:1;min-width:170px}nav div{display:flex;gap:8px;flex-wrap:wrap}nav a,.btn{border-radius:999px;padding:9px 13px;text-decoration:none;font-weight:800;font-size:13px}.btn{background:var(--cherry);color:white;display:inline-flex}.btn.alt{background:transparent;border:1px solid rgba(255,255,255,.35)}.hero{background:radial-gradient(circle at 80% 20%,rgba(194,24,91,.24),transparent 35%),radial-gradient(circle at 20% 80%,rgba(201,168,76,.17),transparent 35%),var(--ink);color:white;display:grid;grid-template-columns:1fr minmax(220px,340px);gap:38px;align-items:center;padding:86px max(22px,calc((100vw - 1240px)/2))}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:2.5px;font-size:12px;font-weight:900}.hero h1,.article h1{font:900 clamp(42px,6vw,76px)/.98 var(--font-display);letter-spacing:-1px;margin:0 0 22px}.hero p{font-size:18px;color:rgba(255,255,255,.72);max-width:760px}.hero aside{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:28px;padding:28px;display:grid;gap:8px}.emoji{font-size:88px}.hero b{font:900 52px var(--font-display);color:var(--gold)}main>section,.article{max-width:1240px;margin:auto;padding:54px 22px}.answer,.source{max-width:1240px;margin:34px auto;background:white;border:1px solid var(--border);border-radius:24px;padding:28px;box-shadow:0 8px 34px rgba(28,10,22,.08)}.answer span,.card small{color:var(--cherry);font-weight:900;text-transform:uppercase;letter-spacing:2px;font-size:11px}.answer h2,section h2,article h2{font:900 34px var(--font-display);margin:6px 0 12px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:white;border:1px solid var(--border);border-radius:22px;padding:22px;text-decoration:none;box-shadow:0 4px 22px rgba(28,10,22,.06)}.card:hover{transform:translateY(-2px)}.card h3{font:900 25px var(--font-display);margin:6px 0}.card p{color:var(--muted)}.rank-list{background:white;border:1px solid var(--border);border-radius:24px;overflow:hidden}.rank-list a{display:grid;grid-template-columns:72px 1fr minmax(120px,260px);gap:16px;padding:16px 20px;border-bottom:1px solid var(--border);text-decoration:none}.rank-list b{font:900 24px var(--font-display)}.rank-list em{font-style:normal;color:var(--muted);font-size:13px}.two{max-width:1240px;margin:auto;padding:54px 22px;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px}.two article,.side,.compare{background:white;border:1px solid var(--border);border-radius:24px;padding:28px;box-shadow:0 4px 22px rgba(28,10,22,.06)}table{width:100%;border-collapse:collapse}td,th{border-bottom:1px solid var(--border);padding:12px;text-align:left;vertical-align:top}th{color:var(--muted);text-transform:uppercase;font-size:12px;letter-spacing:1.5px}.bars{display:grid;gap:10px}.bars div{background:linear-gradient(90deg,var(--cherry),var(--gold));color:white;border-radius:999px;padding:9px 14px;font-weight:900;min-width:max-content}details{background:white;border:1px solid var(--border);border-radius:16px;padding:15px 18px;margin:10px 0}summary{font-weight:900;cursor:pointer}.compare{display:grid;gap:18px}footer{background:var(--ink);color:white;margin-top:60px;padding:42px max(22px,calc((100vw - 1240px)/2));display:flex;justify-content:space-between;gap:30px}footer a{color:rgba(255,255,255,.72);margin-right:12px}@media(max-width:860px){nav,nav div{display:block}nav input{width:100%;margin:10px 0}.hero,.two{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.rank-list a{grid-template-columns:56px 1fr}.rank-list em{grid-column:2}footer{display:block}.hero{padding:58px 20px}.hero h1,.article h1{font-size:42px}}
.character-img,.hero-img,.card-img,.side-img{display:block;object-fit:contain}
.hero-img{width:min(100%,360px);height:auto;margin:auto;filter:drop-shadow(0 22px 32px rgba(0,0,0,.18))}
.card-img{width:100%;height:150px;margin:0 auto 12px;background:linear-gradient(135deg,#fff,var(--cream));border-radius:18px;padding:10px}
.side-img{width:100%;max-height:190px;margin:0 auto 18px}
.champion-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 10%,rgba(255,219,94,.38),transparent 30%),radial-gradient(circle at 18% 80%,rgba(194,24,91,.22),transparent 38%),linear-gradient(135deg,#2a1209,#1C0A16 54%,#4b1f00)}
.champion-hero:after{content:"2025 CHAMPION";position:absolute;right:-80px;bottom:30px;font:900 clamp(44px,9vw,130px)/1 var(--font-display);color:rgba(255,255,255,.055);letter-spacing:6px;pointer-events:none}
.winner-card{background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.07))!important;border-color:rgba(255,219,94,.46)!important;box-shadow:0 22px 70px rgba(201,168,76,.24)}
.winner-card:before{content:"🏆 2025 Winner";display:inline-flex;justify-content:center;background:var(--gold);color:#2a1209;border-radius:999px;padding:8px 13px;font-weight:900;width:max-content}
.champion-celebration{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;background:linear-gradient(135deg,#fff8dc,#fff,#fff0f5);border:1px solid rgba(201,168,76,.35);border-radius:30px;box-shadow:0 18px 54px rgba(201,168,76,.18);margin:34px auto;padding:34px}
.winner-stats{background:#1C0A16;color:white;border-radius:24px;padding:24px;display:grid;gap:6px}
.winner-stats strong{font:900 34px var(--font-display);color:var(--gold)}
.winner-stats span{color:rgba(255,255,255,.68);font-size:13px}
.confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.confetti span{position:absolute;top:-16px;left:calc(var(--x)*1%);width:9px;height:15px;border-radius:3px;background:hsl(calc(var(--i)*31),80%,62%);animation:confetti-fall 4.8s linear infinite;animation-delay:var(--d);opacity:.9}
.confetti span:nth-child(3n){width:7px;height:7px;border-radius:50%}.confetti span:nth-child(4n){background:var(--gold)}
@keyframes confetti-fall{0%{transform:translateY(-20px) rotate(0)}100%{transform:translateY(760px) rotate(720deg)}}
@media(max-width:860px){.champion-celebration{grid-template-columns:1fr;margin:22px}.card-img{height:130px}}
