
:root{
  --bg:#070707; --bg2:#0e0c08; --panel:#12100c; --ink:#f8f2e7; --muted:#bdb4a6;
  --gold:#d6ae55; --gold2:#f4d989; --line:rgba(230,190,100,.28); --soft:rgba(255,255,255,.06);
  --max:1240px; --serif:Georgia,"Times New Roman",serif; --sans:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background-color:#060606;background:radial-gradient(circle at 80% -10%,rgba(177,132,44,.12),transparent 30%),linear-gradient(180deg,#060606,#0a0907 55%,#060606);color:var(--ink);font-family:var(--sans);line-height:1.6;min-height:100vh}
a{color:inherit;text-decoration:none}button,input{font:inherit}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}
.topbar{position:sticky;top:0;z-index:50;background:rgba(7,7,7,.82);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav{height:72px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:13px;font-family:var(--serif);white-space:nowrap}.brandcopy{display:grid;gap:1px;line-height:1}.brandcopy strong{font-size:.83rem;letter-spacing:.16em;font-weight:500}.brandcopy small{font-family:var(--sans);font-size:.56rem;letter-spacing:.28em;color:var(--gold2)}.sigil{width:34px;height:34px;border:1px solid var(--gold);display:grid;place-items:center;transform:rotate(45deg);box-shadow:inset 0 0 0 4px rgba(214,174,85,.04)}.sigil span{transform:rotate(-45deg);color:var(--gold2);font-size:.78rem}.navlinks{margin-left:auto;display:flex;gap:22px;color:var(--muted);font-size:.88rem}.navlinks a:hover{color:var(--ink)}
.hero{min-height:calc(100vh - 72px);display:grid;grid-template-columns:1.05fr .95fr;gap:62px;align-items:center;padding:70px 0 76px}.eyebrow{color:var(--gold2);text-transform:uppercase;letter-spacing:.24em;font-size:.7rem;font-weight:700}.hero h1,.gamehero h1{font-family:var(--serif);font-weight:500;line-height:.98;margin:.18em 0 .35em;letter-spacing:-.035em}.hero h1{font-size:clamp(3.5rem,7.2vw,7rem)}.hero p{color:var(--muted);max-width:720px;font-size:1.06rem}.hero-art{position:relative;padding:20px}.hero-art:before,.hero-art:after{content:"";position:absolute;inset:0;border:1px solid var(--line);transform:translate(12px,12px);pointer-events:none}.hero-art:after{transform:translate(-12px,-12px);opacity:.5}.hero-art img{width:100%;display:block;aspect-ratio:1/1;object-fit:cover;position:relative;z-index:1;box-shadow:0 30px 90px rgba(0,0,0,.5)}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--gold);padding:12px 18px;min-height:48px;background:linear-gradient(135deg,rgba(214,174,85,.16),rgba(214,174,85,.04));color:var(--ink);cursor:pointer;transition:.25s}.btn:hover{transform:translateY(-2px);background:linear-gradient(135deg,rgba(214,174,85,.28),rgba(214,174,85,.08))}.btn.ghost{border-color:rgba(255,255,255,.16);background:transparent;color:var(--muted)}
.orn{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.55}.section{padding:86px 0}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:32px}.section h2{font-family:var(--serif);font-weight:500;font-size:clamp(2.1rem,4vw,4rem);line-height:1;margin:0}.section-head p{max-width:560px;color:var(--muted);margin:0}.catalog-tools{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-bottom:28px}.search{flex:1;min-width:260px;background:#0d0c09;color:var(--ink);border:1px solid var(--line);padding:13px 15px;outline:none}.search:focus{border-color:var(--gold)}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{border:1px solid rgba(255,255,255,.12);background:transparent;color:var(--muted);padding:9px 13px;cursor:pointer}.chip.active,.chip:hover{border-color:var(--gold);color:var(--ink);background:rgba(214,174,85,.08)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015));border:1px solid rgba(255,255,255,.1);overflow:hidden;transition:.3s;min-height:100%}.card:hover{transform:translateY(-6px);border-color:var(--line);box-shadow:0 24px 60px rgba(0,0,0,.35)}.card-media{aspect-ratio:1/1;overflow:hidden;background:#0a0907}.card-media img{width:100%;height:100%;object-fit:cover;transition:.55s}.card:hover .card-media img{transform:scale(1.035)}.card-body{padding:22px}.meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--gold2);font-size:.68rem;text-transform:uppercase;letter-spacing:.15em}.card h3{font-family:var(--serif);font-size:1.7rem;line-height:1.05;margin:10px 0 8px;font-weight:500}.edition{color:var(--muted);font-size:.9rem;margin-top:-3px}.card p{color:var(--muted);font-size:.92rem;min-height:88px}.card .go{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:14px;border-top:1px solid var(--soft);font-size:.84rem}.go b{font-weight:500;color:var(--gold2)}
.manifesto{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:start}.manifesto blockquote{font-family:var(--serif);font-size:clamp(2rem,4vw,3.8rem);line-height:1.06;margin:0}.manifesto p{color:var(--muted)}
.footer{border-top:1px solid var(--line);padding:34px 0 50px;color:var(--muted);font-size:.83rem}.footrow{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}.footer strong{color:var(--ink);font-family:var(--serif);font-weight:500;letter-spacing:.08em}
/* game pages */
.gamehero{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding:62px 0 72px}.gamehero h1{font-size:clamp(3.3rem,6.3vw,6.6rem)}.gamehero .sub{font-family:var(--serif);color:var(--gold2);font-size:clamp(1.35rem,2.2vw,2.1rem);margin-top:-18px;margin-bottom:24px}.lede{font-size:1.1rem;color:#ddd4c7;max-width:700px}.tagrow{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.tag{font-size:.72rem;letter-spacing:.08em;border:1px solid rgba(255,255,255,.12);padding:7px 10px;color:var(--muted)}.artframe{position:relative;padding:16px}.artframe:before{content:"";position:absolute;inset:0;border:1px solid var(--line)}.artframe img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;position:relative;z-index:1}.artframe.enterprise img,.artframe.reason img,.artframe.soiree img{object-position:50% 50%}
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:58px;align-items:start}.bigcopy{font-family:var(--serif);font-size:clamp(2rem,3.8vw,3.55rem);line-height:1.1;margin:0}.copy{color:var(--muted);font-size:1.02rem}.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}.pillar{border:1px solid var(--line);padding:24px;background:rgba(255,255,255,.018)}.pillar .num{color:var(--gold2);font-size:.7rem;letter-spacing:.2em}.pillar h3{font-family:var(--serif);font-size:1.45rem;font-weight:500;margin:12px 0 8px}.pillar p{color:var(--muted);font-size:.9rem;margin:0}
.sequence{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border:1px solid var(--line)}.step{padding:24px 18px;min-height:150px;border-right:1px solid var(--line);background:linear-gradient(180deg,rgba(214,174,85,.035),transparent)}.step:last-child{border-right:0}.step b{display:block;color:var(--gold2);font-family:var(--serif);font-size:1.5rem;font-weight:500;margin-bottom:24px}.step span{color:var(--muted);font-size:.85rem}
.experience{display:grid;grid-template-columns:.8fr 1.2fr;gap:34px}.choicebox{border:1px solid var(--line);padding:28px;background:rgba(255,255,255,.02)}.choice-buttons{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.choice{padding:10px 14px;border:1px solid rgba(255,255,255,.14);background:#0e0d0a;color:var(--muted);cursor:pointer}.choice.active,.choice:hover{border-color:var(--gold);color:var(--ink)}.outcome{min-height:110px;padding:20px;border-left:2px solid var(--gold);background:rgba(214,174,85,.055);color:#ddd4c7}.audience{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.aud{padding:20px;border:1px solid rgba(255,255,255,.1);color:var(--muted)}.aud strong{color:var(--ink);font-family:var(--serif);font-size:1.1rem;font-weight:500}.video-wrap{border:1px solid var(--line);padding:12px;background:#090807}.video-wrap video{width:100%;display:block;max-height:680px;background:#000}.notice{border:1px solid rgba(214,174,85,.28);background:rgba(214,174,85,.055);padding:15px 18px;color:#c8bdad;font-size:.86rem;margin-top:18px}.nextgames{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.mini{display:flex;gap:14px;border:1px solid rgba(255,255,255,.1);padding:12px;align-items:center;transition:.25s}.mini:hover{border-color:var(--gold);transform:translateY(-2px)}.mini img{width:84px;height:84px;object-fit:cover}.mini b{font-family:var(--serif);font-weight:500}.mini small{display:block;color:var(--muted)}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s,transform .7s}.reveal.in{opacity:1;transform:none}.count{font-family:var(--serif);font-size:clamp(5rem,14vw,12rem);line-height:.8;color:rgba(214,174,85,.08);position:absolute;right:3vw;top:92px;pointer-events:none}
@media(max-width:1000px){.hero,.gamehero,.split,.manifesto,.experience{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,1fr)}.hero{padding-top:44px}.hero-art{max-width:650px}.pillars{grid-template-columns:1fr}.sequence{grid-template-columns:1fr 1fr}.step{border-bottom:1px solid var(--line)}.navlinks a:not(:last-child){display:none}.audience,.nextgames{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.wrap{width:min(var(--max),calc(100% - 24px))}.nav{height:64px}.brandcopy strong{font-size:.68rem}.brandcopy small{font-size:.48rem}.navlinks{gap:10px}.hero h1,.gamehero h1{font-size:3.1rem}.grid{grid-template-columns:1fr}.section{padding:62px 0}.sequence,.audience,.nextgames{grid-template-columns:1fr}.step{border-right:0}.section-head{display:block}.section-head p{margin-top:14px}.card p{min-height:auto}.gamehero{padding-top:38px}.artframe{padding:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.reveal{opacity:1;transform:none}}


/* Quantum Excellium V6 - Versailles / high-tech frame */
body::before{content:"";position:fixed;inset:8px;z-index:9998;pointer-events:none;border:1px solid rgba(243,213,131,.72);box-shadow:0 0 0 3px rgba(5,5,5,.92),0 0 0 4px rgba(183,135,49,.44),inset 0 0 38px rgba(213,164,58,.05)}
body::after{content:"";position:fixed;inset:13px;z-index:9997;pointer-events:none;background:
radial-gradient(circle at 0 0,rgba(243,213,131,.74) 0 2px,transparent 3px),
radial-gradient(circle at 100% 0,rgba(243,213,131,.74) 0 2px,transparent 3px),
radial-gradient(circle at 0 100%,rgba(243,213,131,.74) 0 2px,transparent 3px),
radial-gradient(circle at 100% 100%,rgba(243,213,131,.74) 0 2px,transparent 3px);background-size:56px 56px;background-repeat:no-repeat;background-position:left top,right top,left bottom,right bottom;opacity:.86}
@media(max-width:700px){body::before{inset:4px}body::after{inset:8px;opacity:.55}}


/* ===== V7 robust demo rendering ===== */
html{background:#020202!important;color-scheme:dark}
body{background-color:#030303!important;background-image:radial-gradient(circle at 80% -10%,rgba(177,132,44,.12),transparent 30rem),linear-gradient(180deg,#030303,#0a0907 55%,#020202)!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
/* The hub must remain visible even if animation JavaScript is blocked. */
.reveal{opacity:1!important;transform:none!important}
html::before{content:"";position:fixed;inset:0;z-index:10000;pointer-events:none;border:6px solid #8d641f;box-shadow:inset 0 0 0 1px #f2d386,inset 0 0 0 4px #3d2a0d,inset 0 0 34px rgba(240,202,104,.14)}
html::after{content:"";position:fixed;inset:9px;z-index:9999;pointer-events:none;border:2px solid rgba(239,202,112,.82);box-shadow:inset 0 0 0 2px rgba(64,41,8,.92),inset 0 0 0 3px rgba(213,168,79,.34)}
body::before{content:"";position:fixed;inset:15px;z-index:9998;pointer-events:none;border:1px solid rgba(244,217,143,.62)}
body::after{content:"";position:fixed;inset:14px;z-index:9997;pointer-events:none;background:linear-gradient(135deg,rgba(243,217,143,.95),transparent 19px) left top/64px 64px no-repeat,linear-gradient(225deg,rgba(243,217,143,.95),transparent 19px) right top/64px 64px no-repeat,linear-gradient(45deg,rgba(243,217,143,.95),transparent 19px) left bottom/64px 64px no-repeat,linear-gradient(315deg,rgba(243,217,143,.95),transparent 19px) right bottom/64px 64px no-repeat;opacity:.7}
@media(max-width:600px){html::before{border-width:3px}html::after{inset:5px;border-width:1px}body::before{inset:9px}body::after{inset:8px;opacity:.5}}


/* ===== V8 final Versailles frame ===== */
html{background:#020202!important;color-scheme:dark}
body{background-color:#030303!important;min-height:100vh}
html::before{content:"";position:fixed;inset:0;z-index:10000;pointer-events:none;background:url('images/decor/versailles-frame.svg') center/100% 100% no-repeat;opacity:.96}
html::after{content:"";position:fixed;inset:18px;z-index:9999;pointer-events:none;border:1px solid rgba(244,218,151,.72);box-shadow:inset 0 0 0 2px rgba(60,38,8,.92),inset 0 0 0 3px rgba(213,168,79,.35)}
.demo-rules{width:min(1160px,calc(100% - 32px));margin:0 auto 28px;border:1px solid rgba(214,174,85,.34);background:linear-gradient(180deg,rgba(214,174,85,.075),rgba(255,255,255,.012));padding:24px;position:relative}
.demo-rules:after{content:"";position:absolute;inset:6px;border:1px solid rgba(244,217,137,.10);pointer-events:none}
.demo-rules-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:16px}.demo-rules h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;margin:0;font-size:clamp(1.7rem,3vw,2.5rem)}
.demo-rules ol{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 18px;padding:0;list-style:none;counter-reset:rule}.demo-rules li{counter-increment:rule;border:1px solid rgba(255,255,255,.10);padding:14px 14px 14px 48px;background:#0b0a08;color:var(--muted);position:relative;min-height:92px}.demo-rules li:before{content:counter(rule);position:absolute;left:13px;top:13px;width:25px;height:25px;border:1px solid var(--gold);color:var(--gold2);display:grid;place-items:center;font-size:.72rem}.demo-rules strong{color:var(--ink)}
.demo-start{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.demo-start-note{font-size:.8rem;color:var(--muted)}
@media(max-width:760px){.demo-rules ol{grid-template-columns:1fr}html::after{inset:9px}.demo-rules{width:min(100% - 20px,1160px);padding:18px}}


/* V9 mobile/tablet hardening */
html{-webkit-text-size-adjust:100%;overflow-x:hidden}body{overflow-x:hidden}.wrap,.hero,.gamehero,.split,.experience,.demo-rules,.demo-stage>*{min-width:0}img,video,svg,canvas{max-width:100%;height:auto}.btn,.demo-link,.demo-btn,.demo-choice,button,a{touch-action:manipulation}.demo-btn,.demo-choice,.demo-link{min-height:44px}input,select,textarea{font-size:16px}@media(max-width:820px){.nav{padding:0 14px}.hero h1,.gamehero h1{font-size:clamp(2.25rem,9vw,3.8rem)}.demo-stage{width:min(100% - 20px,1160px)}}@media(max-width:480px){.wrap{width:calc(100% - 18px)!important}.navlinks a:not(:last-child){display:none}.demo-rules{width:calc(100% - 16px);padding:16px}.demo-stage{width:calc(100% - 16px)}.demo-choice{padding:14px}.footer{padding-left:10px;padding-right:10px}html::before{opacity:.66}}
