:root{--bg:#0a0e1a;--bg-elev:#121826;--bg-elev2:#1a2234;--border:#24304a;--text:#e8eef8;--text-muted:#8ea0c2;--text-dim:#5f708f;--accent:#ff3d5a;--accent-hover:#ff5872;--floor:#ff3d5a;--online:#2ec4ff;--font-sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--maxw:1100px}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline}.container{max-width:var(--maxw);margin:0 auto;padding:0 1.25rem}.site-header{border-bottom:1px solid var(--border);background:linear-gradient(to bottom,var(--bg-elev),var(--bg))}.header-inner{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;gap:1rem;flex-wrap:wrap}.brand{display:flex;align-items:baseline;gap:.4rem;font-family:var(--font-mono);font-weight:700;color:var(--text);letter-spacing:-.02em}.brand,.brand:hover{text-decoration:none}.brand-mark{font-size:1.5rem;color:var(--accent)}.brand-year{font-size:1.3rem}.brand-tag{font-size:.7rem;padding:.15rem .4rem;background:var(--accent);color:#fff;border-radius:3px;letter-spacing:.1em;font-weight:700;margin-left:.3rem}.site-nav{display:flex;gap:1rem;font-family:var(--font-mono);font-size:.85rem;text-transform:uppercase;letter-spacing:.08em}.site-nav a{color:var(--text-muted)}.site-nav a:hover{color:var(--text);text-decoration:none}.hero{padding:2.5rem 0 1.5rem;border-bottom:1px solid var(--border);margin-bottom:2rem}.hero h1{font-size:clamp(1.6rem,4vw,2.5rem);margin:0 0 .5rem;font-weight:700;line-height:1.15;letter-spacing:-.015em}.hero .kicker{font-family:var(--font-mono);font-size:.8rem;color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.5rem}.hero p{color:var(--text-muted);max-width:40rem;margin:0}.story-list{display:grid;grid-gap:1.5rem;gap:1.5rem;padding:1rem 0 3rem}.story-card{display:block;padding:1.25rem 1.5rem;background:var(--bg-elev);border:1px solid var(--border);border-radius:8px;transition:border-color .15s,transform .15s}.story-card:hover{border-color:var(--accent);transform:translateY(-1px);text-decoration:none}.story-card h2{margin:0 0 .4rem;font-size:1.25rem;color:var(--text);line-height:1.3}.story-card:hover h2{color:var(--accent)}.story-meta{display:flex;gap:.8rem;align-items:center;font-family:var(--font-mono);font-size:.75rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.5rem}.badge{padding:.15rem .5rem;border-radius:3px;font-weight:700;letter-spacing:.08em}.badge-floor{background:rgba(255,61,90,.15);color:var(--floor);border:1px solid rgba(255,61,90,.3)}.badge-online{background:rgba(46,196,255,.15);color:var(--online);border:1px solid rgba(46,196,255,.3)}.story-card p{margin:0;color:var(--text-muted)}.tags{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.6rem}.tag{font-family:var(--font-mono);font-size:.7rem;color:var(--text-dim);padding:.1rem .45rem;border:1px solid var(--border);border-radius:3px;text-transform:uppercase;letter-spacing:.06em}.tag:hover{color:var(--text);border-color:var(--text-dim);text-decoration:none}.empty{text-align:center;padding:4rem 1rem;color:var(--text-muted)}.empty h2{color:var(--text);margin-bottom:.5rem}.story-detail{max-width:42rem;margin:0 auto;padding:2rem 0 4rem}.story-detail h1{font-size:clamp(1.6rem,4vw,2.3rem);line-height:1.2;margin:.75rem 0 1rem}.story-body{color:var(--text);font-size:1.05rem;line-height:1.7}.story-body p{margin:0 0 1.1rem}.story-body a{color:var(--accent)}.sources{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}.sources h3{font-family:var(--font-mono);font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin:0 0 .6rem}.sources ul{list-style:none;padding:0;margin:0}.sources li{margin:.3rem 0;word-break:break-all}.site-footer{border-top:1px solid var(--border);padding:2rem 0;margin-top:2rem;color:var(--text-muted);font-size:.9rem}.site-footer p{margin:.3rem 0}.muted{color:var(--text-dim);font-size:.82rem}.back-link{font-family:var(--font-mono);font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.hero-with-art{position:relative;overflow:hidden;border-radius:12px;padding:0;margin:1.5rem 0 2rem;border-bottom:none;min-height:280px;border:1px solid var(--border)}.hero-art{position:absolute;inset:0;z-index:0}.hero-inner{position:relative;z-index:1;padding:3rem 2.25rem 2.75rem;max-width:40rem}.hero-with-art h1{font-size:clamp(1.9rem,4.5vw,2.9rem);color:#fff;line-height:1.12;letter-spacing:-.02em;margin:.4rem 0 .85rem}.hero-with-art p{color:rgba(232,238,248,.78);max-width:32rem;font-size:1.02rem}.hero-with-art .kicker{color:#ff3d5a;letter-spacing:.14em}.brief{background:linear-gradient(135deg,rgba(255,61,90,.1),rgba(46,196,255,.06));border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:8px;padding:1.4rem 1.6rem 1.5rem;margin:0 0 2rem}.brief-head{display:flex;align-items:center;gap:1rem;margin-bottom:.6rem}.brief-label{font-size:.72rem;color:var(--accent);letter-spacing:.12em;font-weight:700;padding:.2rem .5rem;background:rgba(255,61,90,.18);border-radius:3px}.brief-date,.brief-label{font-family:var(--font-mono);text-transform:uppercase}.brief-date{font-size:.75rem;color:var(--text-dim);letter-spacing:.08em}.brief-title{font-size:clamp(1.2rem,2.5vw,1.5rem);margin:0 0 .8rem;line-height:1.3;letter-spacing:-.01em}.brief-body{color:var(--text);font-size:1rem;line-height:1.65}.brief-body p{margin:0 0 .9rem}.brief-body p:last-child{margin-bottom:0}.brief-body strong{color:var(--text);font-weight:600}.story-card-visual{padding:0;overflow:hidden}.story-card-visual .story-card-body{padding:1.1rem 1.4rem 1.3rem}.topic-art{width:100%;overflow:hidden;border-bottom:1px solid var(--border)}.topic-art svg{display:block}.topic-art-hero{margin-bottom:.5rem}.story-art,.topic-art-hero{border-radius:8px;border:1px solid var(--border)}.story-art{margin:1rem 0 .5rem;overflow:hidden;background:var(--bg-elev2);display:flex;flex-direction:column;align-items:center}.story-art img{display:block;max-width:100%;max-height:440px;width:auto;height:auto;object-fit:contain}.story-art-credit{width:100%;padding:.4rem .75rem;font-family:var(--font-mono);font-size:.72rem;color:var(--text-dim);background:rgba(0,0,0,.4);border-top:1px solid var(--border)}.event-strip-wrap{background:linear-gradient(90deg,rgba(46,196,255,.15),rgba(255,61,90,.15));border-bottom:1px solid var(--border)}.event-banner{display:flex;align-items:center;gap:.9rem;padding:.65rem 0;color:var(--text);font-size:.9rem;flex-wrap:wrap}.event-banner:hover{text-decoration:none;color:var(--text)}.event-banner:hover .event-banner-cta{color:var(--accent-hover);transform:translateX(3px)}.event-banner-label{font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--online);padding:.15rem .5rem;background:rgba(46,196,255,.18);border-radius:3px;font-weight:700}.event-banner-name{font-weight:700;letter-spacing:-.01em}.event-banner-meta{color:var(--text-muted);font-family:var(--font-mono);font-size:.78rem}.event-banner-cta{margin-left:auto;color:var(--accent);font-family:var(--font-mono);font-size:.8rem;letter-spacing:.05em;transition:transform .15s,color .15s}.promo-card-event{background:linear-gradient(135deg,rgba(46,196,255,.14),rgba(255,61,90,.1));border-color:rgba(46,196,255,.35)}.promo-event-link{display:block;color:var(--text)}.promo-event-link:hover{text-decoration:none;color:var(--text)}.promo-event-link .promo-hero-name{font-size:1.1rem}.promo-event-cta{display:inline-block;margin-top:.6rem;color:var(--online);font-family:var(--font-mono);font-size:.8rem;letter-spacing:.05em;font-weight:600}.promo-event-link:hover .promo-event-cta{color:var(--accent)}.promo-footer-event{background:linear-gradient(135deg,rgba(46,196,255,.18),rgba(255,61,90,.12));border-color:rgba(46,196,255,.4)}.page-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-gap:2rem;gap:2rem;align-items:start;padding-bottom:3rem}@media (max-width:860px){.page-grid{grid-template-columns:1fr}}.page-main{min-width:0}.promo-sidebar{display:flex;flex-direction:column;gap:1rem;position:-webkit-sticky;position:sticky;top:1.25rem}@media (max-width:860px){.promo-sidebar{position:static}}.promo-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:8px;padding:1rem 1.1rem}.promo-card-hero{background:linear-gradient(135deg,rgba(255,61,90,.12),rgba(46,196,255,.08));border-color:rgba(255,61,90,.3)}.promo-label{font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);margin-bottom:.6rem}.promo-hero-link{display:block;padding:.5rem 0;border-top:1px solid var(--border);color:var(--text)}.promo-hero-link:first-of-type{border-top:none;padding-top:0}.promo-hero-link:hover{text-decoration:none;color:var(--accent)}.promo-hero-name{display:block;font-weight:700;font-size:1.05rem;letter-spacing:-.01em}.promo-hero-tag{display:block;color:var(--text-muted);font-size:.82rem;margin-top:.2rem}.promo-list{list-style:none;padding:0;margin:0}.promo-list li{border-top:1px solid var(--border)}.promo-list li:first-child{border-top:none}.promo-list a{display:block;padding:.6rem 0;color:var(--text)}.promo-list a:hover{text-decoration:none;color:var(--accent)}.promo-list strong{display:block;font-size:.9rem;font-weight:600}.promo-list span{display:block;color:var(--text-muted);font-size:.78rem;margin-top:.15rem;line-height:1.4}.promo-footer{border-top:1px solid var(--border);padding:2rem 0 1rem;margin-top:1.5rem}.promo-footer-head{margin-bottom:1rem}.promo-footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:.75rem;gap:.75rem}.promo-footer-link{display:block;padding:.85rem 1rem;background:var(--bg-elev);border:1px solid var(--border);border-radius:6px;color:var(--text);transition:border-color .15s}.promo-footer-link:hover{border-color:var(--accent);text-decoration:none}.promo-footer-link strong{display:block;font-size:.92rem;font-weight:700}.promo-footer-link span{display:block;color:var(--text-muted);font-size:.78rem;margin-top:.2rem;line-height:1.4}