/* Midnight Sapphire. Shared by every public page; theme tokens live in nyza.css. */
:root { --sapphire:#277fe8; --ice:#83cfff; --nav-h:94px; }
:root[data-theme="light"] { --sapphire:#195caf; --ice:#2269a2; }
body { background:var(--bg); }
:focus-visible { outline:2px solid var(--gold); outline-offset:5px; }
.skip-link { position:fixed; top:10px; left:16px; z-index:2000; padding:12px 20px; color:var(--on-gold); background:var(--gold); transform:translateY(-160%); border-radius:6px; }
.skip-link:focus { transform:none; }
.glow-bg { display:none; }
.nav { background:color-mix(in srgb,var(--bg) 94%,transparent); border-bottom-color:var(--border); }
.nav-inner { gap:1.2rem; }
.nav-logo { width:154px; height:86px; object-fit:contain; border-radius:0; background:none; }
.nav-menu { gap:1.35rem; }
.nav-menu a { font-size:.8rem; letter-spacing:0; }
.nav-menu a[aria-current="page"] { color:var(--gold); }
.nav-menu a[aria-current="page"]::after { right:0; }
.nav-cta,.btn { text-transform:none; letter-spacing:0; font-size:.84rem; border-radius:6px; }
.nav-cta { padding:.7rem 1.1rem; }
.theme-toggle { border-radius:6px; }
.theme-toggle:hover { transform:none; }
.btn-grad { background:var(--gold); color:var(--on-gold); }
.btn-grad:hover,.btn-primary:hover { background:var(--gold-bright); box-shadow:none; transform:translateY(-1px); }
.display,.section-title,.detail-title { text-transform:none; letter-spacing:-.045em; line-height:1.07; font-weight:500; overflow-wrap:anywhere; }
.section-title { font-size:clamp(2.25rem,4.2vw,4rem); }
.detail-title { font-size:clamp(2.4rem,4.5vw,4.6rem); }
.display { font-size:clamp(3rem,7vw,6rem); }
.section-title em,.display em,.grad-text { font-style:normal; color:inherit; background:none; -webkit-text-fill-color:currentColor; }
.eyebrow { font-size:.82rem; text-transform:none; letter-spacing:.02em; color:var(--gold); margin-bottom:1rem; }
.eyebrow::before { display:none; }
.section { padding-block:clamp(3.5rem,7vw,6.5rem); }
.section-tight { padding-block:clamp(2rem,4vw,3.5rem); }
.section-intro { font-size:.97rem; max-width:64ch; }
.section-header { margin-bottom:2.6rem; }
.section-header.center { text-align:left; }
.section-header.center .section-intro { margin-inline:0; }
.section-header.row { align-items:center; }
.card { border:0; border-radius:0; background:transparent; overflow:visible; }
.card:hover,.card.card--glow:hover { transform:none; box-shadow:none; }
.card-media { border-radius:8px; border:1px solid var(--border); }
.card:hover .card-media img,.card:hover .card-media .bg-cover { transform:scale(1.025); filter:none; }
.card-body { padding:1.1rem 0 1.35rem; gap:.55rem; }
.card-title { font-weight:600; font-size:1rem; line-height:1.4; }
.card-meta,.card-eyebrow { text-transform:none; letter-spacing:0; font-size:.78rem; }
.card-excerpt { font-size:.87rem; line-height:1.65; }
.grid-auto { column-gap:clamp(1.2rem,2.5vw,2rem); row-gap:2rem; }
.grid-auto--sm { grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); }
#originalsGrid { grid-template-columns:repeat(4,minmax(0,1fr)); }
#playlistsGrid { grid-template-columns:repeat(4,minmax(0,1fr)); }
#storiesGrid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.brand-tile { padding:1.8rem; border-radius:10px; border:1px solid var(--border); background:var(--surface); }
.brand-tile:hover { border-color:var(--gold-deep); }
.brand-cat { text-transform:none; letter-spacing:0; font-size:.78rem; color:var(--text-muted); }
.brand-tile h3 { font-family:var(--font-display); font-size:1.7rem; font-weight:500; }
.brand-logo { width:56px; height:56px; }
.filters { gap:.5rem; justify-content:flex-start !important; }
.filter-btn { border-radius:5px; padding:.65rem 1rem; letter-spacing:0; }
.detail-hero { padding-top:calc(var(--nav-h) + 3.5rem); padding-bottom:3.5rem; background:var(--bg-2); border-bottom:1px solid var(--border); }
.detail-hero .backdrop { opacity:.2; }
.detail-hero-grid { grid-template-columns:minmax(240px,360px) minmax(0,1fr); gap:clamp(2rem,5vw,5rem); }
.detail-poster { border-radius:8px; box-shadow:0 18px 55px -22px #0008; }
.detail-sub { font-size:1rem; }
main.has-fixed-nav > .section:first-child { background:linear-gradient(145deg,var(--bg-2),var(--bg)); }
.prose { font-size:1.04rem; line-height:1.9; }
.prose h2 { text-transform:none; font-size:2.25rem; line-height:1.2; letter-spacing:-.025em; }
.prose blockquote { font-size:2rem; line-height:1.35; }
.track { border-radius:6px; padding:.85rem 1rem; background:var(--bg-2); }
.track:hover { transform:none; }
.field label,.footer-col h4,.stat-label { text-transform:none; letter-spacing:0; font-size:.86rem; }
.field input,.field textarea,.field select { border-color:var(--border-strong); }
.field input::placeholder,.field textarea::placeholder { opacity:1; }
.form-message.error { color:#ff9393; }
:root[data-theme="light"] .form-message.error { color:#b32727; }
.stat-number { font-size:3rem; }
.feature { border-radius:0; border:0; border-top:1px solid var(--border-strong); padding:1.6rem 0; background:transparent; }
.feature:hover { transform:none; }
.feature-num { display:none; }
.feature h3 { font-family:var(--font-display); font-size:1.7rem; font-weight:500; }
#services .grid-auto { gap:2rem 3rem; }
.site-footer { padding-top:4.5rem; background:var(--bg-2); border-top:1px solid var(--border-strong); }
.footer-brand img { width:196px; height:110px; border-radius:0; object-fit:contain; margin-bottom:1.3rem; }
.footer-col h4 { font-weight:700; color:var(--text); }
.footer-grid { grid-template-columns:1.5fr repeat(4,1fr); gap:2rem; }
.social-btn { border-radius:6px; }
.badge--live .dot,.live-dot { animation:none; }
/* The logo is the memorable object. The rest of the stage is deliberately quiet. */
.sapphire-hero { overflow:clip; position:relative; padding-top:var(--nav-h); background:#050a14; color:#f5f5f1; isolation:isolate; }
.sapphire-stage { display:grid; grid-template-columns:.88fr 1.12fr; align-items:center; min-height:620px; padding-block:5rem 4rem; gap:0; }
.sapphire-copy { position:relative; z-index:1; }
.hero-kicker { font-size:.84rem; color:#c4cfe0; margin-bottom:1.8rem; }
.sapphire-copy h1 { font-family:var(--font-display); font-weight:500; font-size:clamp(3.1rem,5.6vw,5.5rem); letter-spacing:-.045em; line-height:1.04; margin-bottom:1.6rem; color:#f5f5f1; }
.hero-description { max-width:44ch; color:#b4c2d7; font-size:1rem; line-height:1.8; margin-bottom:2rem; }
.sapphire-art { width:112%; margin-left:-7%; }
.sapphire-art img { width:100%; height:auto; object-fit:contain; }
.sapphire-actions { display:flex; align-items:center; gap:1.15rem; flex-wrap:wrap; }
.sapphire-hero .btn-primary { background:#e1ba75; color:#17130c; border-color:#e1ba75; }
.sapphire-hero .btn-outline { border-color:#486586; color:#e9f1ff; }
.hero-signoff { display:flex; flex-wrap:wrap; gap:1.1rem; margin-top:2.4rem; color:#9aacc4; font-size:.72rem; }
.hero-signoff span+span { border-left:1px solid #32435b; padding-left:1.1rem; }
.hero-channels { display:grid; grid-template-columns:repeat(4,1fr); position:relative; }
.hero-channels::before { content:""; position:absolute; height:1px; left:2.5rem; right:2.5rem; top:0; background:linear-gradient(90deg,#285799,#b89761,#285799); }
.hero-channels a { padding:1.8rem 0 2rem; font-size:.95rem; font-weight:600; color:#f1f4fb; }
.hero-channels a:hover { color:#e1ba75; }
.hero-channels span { display:block; font-size:.74rem; font-weight:400; color:#9aacc4; margin-top:.2rem; }
.hero-channels .live-dot { display:inline-block; width:6px; height:6px; margin-right:8px; background:#e1ba75; }
/* Light mode keeps the approved artwork in a deliberate dark-glass display. */
:root[data-theme="light"] .sapphire-hero { background:#e8f0f9; color:var(--text); }
:root[data-theme="light"] .sapphire-copy h1 { color:var(--text); }
:root[data-theme="light"] .hero-kicker,:root[data-theme="light"] .hero-description { color:#455c78; }
:root[data-theme="light"] .hero-signoff,:root[data-theme="light"] .hero-channels span { color:#526984; }
:root[data-theme="light"] .hero-channels a { color:#162f52; }
:root[data-theme="light"] .sapphire-hero .btn-outline { color:#163963; border-color:#8098b6; }
:root[data-theme="light"] .sapphire-art { width:100%; margin-left:0; padding:1.6rem; }
:root[data-theme="light"] .sapphire-art img { border-radius:12px; box-shadow:0 24px 55px -24px #0d376c70; }
:root[data-theme="light"] .hero-signoff span+span { border-color:#a3b4ca; }
.catalog-tools { display:flex; gap:1rem; align-items:center; justify-content:space-between; margin-bottom:2rem; flex-wrap:wrap; }
.catalog-search { min-width:230px; max-width:420px; flex:1; }
.catalog-search input { width:100%; border:1px solid var(--border-strong); border-radius:6px; background:var(--surface); color:var(--text); padding:.8rem 1rem; }
.catalog-status { color:var(--text-muted); font-size:.85rem; }
.catalog-empty { padding:3rem 0; color:var(--text-muted); }
#games .game-card { border-radius:10px; background:var(--surface); box-shadow:none; }
#games .game-title { font-size:1.8rem; }
@media(min-width:1101px) { .sapphire-art { transform:translateX(1rem); } }
@media(max-width:1100px) { :root { --nav-h:84px; } .nav-logo { width:132px; height:74px; } .sapphire-stage { min-height:560px; } .sapphire-copy h1 { font-size:clamp(2.7rem,5.6vw,4rem); } .nav-menu { max-height:calc(100dvh - var(--nav-h)); overflow-y:auto; } .footer-grid { grid-template-columns:repeat(4,1fr); } .footer-brand { grid-column:1/-1; } }
@media(max-width:760px) { .sapphire-stage { grid-template-columns:1fr; padding-block:1.5rem 2.2rem; gap:.5rem; } .sapphire-art { order:-1; width:100%; margin:0; max-width:620px; justify-self:center; } .sapphire-copy { text-align:center; } .sapphire-copy h1 { font-size:clamp(2.8rem,8.8vw,4rem); } .hero-description { margin-inline:auto; max-width:46ch; font-size:.93rem; } .hero-kicker { margin:0 0 1rem; font-size:.74rem; } .sapphire-actions,.hero-signoff { justify-content:center; } .hero-signoff { margin-top:1.5rem; } .hero-channels { grid-template-columns:1fr 1fr; gap:0 1rem; } .hero-channels a { padding:1.15rem 0; border-bottom:1px solid #29405b; } .hero-channels::before { left:1.25rem; right:1.25rem; } :root[data-theme="light"] .sapphire-art { padding:0 0 1rem; max-width:520px; } :root[data-theme="light"] .hero-channels a { border-bottom-color:#b9cadd; } #originalsGrid,#playlistsGrid { grid-template-columns:repeat(2,minmax(0,1fr)); } #storiesGrid { grid-template-columns:1fr; } .detail-hero-grid { grid-template-columns:1fr; } .detail-poster { width:100%; max-width:320px; } .detail-title { font-size:2.8rem; } .section-header.row .btn { padding:.6rem 1rem; } .footer-grid { grid-template-columns:1fr 1fr; } .grid-auto--sm { grid-template-columns:repeat(2,minmax(0,1fr)); } .card-title { font-size:.93rem; } }
@media(max-width:420px) { .sapphire-actions { gap:.65rem; } .sapphire-actions .btn { padding:.85rem 1rem; font-size:.82rem; } .hero-channels a { font-size:.85rem; } .hero-channels span { font-size:.67rem; } .grid-auto--md,.grid-auto--lg { grid-template-columns:1fr; } .form-row { grid-template-columns:1fr; } .section-title { font-size:2.35rem; } .section-header.row { align-items:flex-start; } .detail-title { font-size:2.4rem; } .nav-inner { padding-inline:1rem; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none !important; animation:none !important; } }

.catalog-genre select { width:100%; min-width:170px; border:1px solid var(--border-strong); border-radius:6px; padding:.8rem 2.2rem .8rem 1rem; color:var(--text); background:var(--surface); font:inherit; }
@media(max-width:600px) { .catalog-tools { gap:.75rem; } .catalog-search { min-width:100%; max-width:none; } .catalog-genre { flex:1; } }
