/* Founder-directed Palace redesign: final composition layer. */
:root { --v3-gold:#ffd34e; --v3-blue:#168cff; --v3-sky:#65dcff; --v3-midnight:#020615; --v3-panel:#081426; --v3-silver:#b9c8dd; }
html { scroll-behavior:smooth; }
body { background:var(--v3-midnight); }
.site-header { background:rgba(2,6,21,.9); backdrop-filter:blur(16px); }
.nav-wrap { max-width:1280px; }
.brand,.brand-logo { width:86px; height:66px; }
.site-nav { gap:.15rem; }
.site-nav a { padding:.7rem .82rem; border-radius:4px; }
.site-nav a[aria-current="page"] { background:rgba(22,140,255,.13); }
.site-nav .nav-play { color:#071020; background:var(--v3-gold); border-color:var(--v3-gold); }
.page-hero { min-height:min(650px,75svh); background:radial-gradient(circle at 76% 34%,rgba(22,140,255,.22),transparent 30rem),linear-gradient(120deg,#020615,#071a3b 65%,#11114f); }
.page-hero .shell { padding-block:clamp(7rem,13vw,11rem) clamp(4rem,8vw,7rem); }
.page-hero h1 { max-width:12ch; font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif; font-size:clamp(3.5rem,8vw,8.2rem); font-style:normal; letter-spacing:-.025em; line-height:.87; text-transform:uppercase; }
.page-hero .lede { max-width:58ch; }
.section { padding-block:clamp(4rem,8vw,8rem); }
.section-heading { align-items:end; }
.section-heading h2,.home-page h2 { max-width:13ch; font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif; font-style:normal; font-size:clamp(2.8rem,6vw,6.2rem); letter-spacing:-.02em; line-height:.9; text-transform:uppercase; }
.home-page .palace-world { min-height:max(760px,calc(100svh - 66px)); }
.home-page .palace-world h1 { max-width:9ch; font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif; font-size:clamp(4.4rem,9vw,9.2rem); font-style:normal; letter-spacing:-.02em; line-height:.82; text-transform:uppercase; }
.home-page .palace-world h1 .gold { transform:skew(-4deg); }
.hero-game-name { color:var(--v3-gold); font-weight:950; letter-spacing:.22em; }
.transmission-badge { color:var(--v3-sky); }
.launch-countdown { max-width:720px; padding:1rem 0; }
.countdown-unit strong { min-width:2ch; font-variant-numeric:tabular-nums; }
.hero-status-line { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:.8rem; color:var(--v3-silver); font-size:.68rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.hero-status-line span { padding:.35rem .55rem; border:1px solid rgba(101,220,255,.28); background:rgba(2,6,21,.6); }
.story-chapter { position:relative; overflow:hidden; }
.story-chapter::before { position:absolute; inset:0; background:radial-gradient(circle at var(--chapter-x,80%) 50%,rgba(22,140,255,.15),transparent 34rem); content:""; pointer-events:none; }
.story-split { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,.82fr); gap:clamp(2rem,7vw,8rem); align-items:center; }
.story-copy { max-width:680px; }
.story-copy h2 { max-width:11ch; }
.story-copy .lede { max-width:48ch; }
.palace-levels { position:relative; min-height:520px; display:grid; place-items:center; perspective:1000px; }
.palace-level { position:absolute; width:min(90%,490px); min-height:190px; padding:2rem; border:1px solid rgba(101,220,255,.24); background:linear-gradient(150deg,rgba(13,34,67,.96),rgba(3,10,25,.96)); box-shadow:0 35px 70px rgba(0,0,0,.45); transform:translateY(var(--y)) rotateX(58deg) rotateZ(var(--r)); }
.palace-level:nth-child(1){--y:-100px;--r:-2deg}.palace-level:nth-child(2){--y:30px;--r:1deg}.palace-level:nth-child(3){--y:160px;--r:-1deg}
.palace-level b { display:block; color:var(--v3-gold); font-size:.7rem; letter-spacing:.18em; text-transform:uppercase; }
.palace-level strong { display:block; margin-top:.5rem; color:white; font-family:Impact,sans-serif; font-size:2rem; text-transform:uppercase; }
.rule-ribbon { display:grid; grid-template-columns:repeat(4,1fr); border-block:1px solid rgba(255,255,255,.14); }
.rule-ribbon article { min-height:270px; padding:clamp(1.5rem,3vw,3rem); border-right:1px solid rgba(255,255,255,.12); background:linear-gradient(180deg,rgba(10,28,57,.65),rgba(2,6,21,.8)); }
.rule-ribbon article:last-child{border-right:0}.rule-ribbon b{color:var(--v3-gold);font-family:Impact,sans-serif;font-size:clamp(3rem,6vw,6rem)}.rule-ribbon h3{font-size:1.3rem;text-transform:uppercase}.rule-ribbon p{color:var(--v3-silver)}
.quote-stage { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(2rem,7vw,8rem); align-items:center; }
.quote-mark { color:var(--v3-blue); font-family:Georgia,serif; font-size:clamp(8rem,18vw,17rem); line-height:.4; opacity:.38; }
.quote-stage blockquote { margin:0; color:white; font-family:Georgia,serif; font-size:clamp(2rem,4vw,4rem); font-style:italic; line-height:1.08; }
.quote-stage cite { display:block; margin-top:1.5rem; color:var(--v3-gold); font-family:system-ui,sans-serif; font-size:.75rem; font-style:normal; font-weight:900; letter-spacing:.16em; text-transform:uppercase; }
.family-story { background:radial-gradient(circle at 20% 40%,rgba(220,20,60,.13),transparent 23rem),radial-gradient(circle at 80% 50%,rgba(22,140,255,.12),transparent 28rem),#020615; }
.four-heart-line { display:flex; gap:clamp(.7rem,2vw,1.5rem); margin:2rem 0; }
.four-heart-line span { display:grid; width:clamp(55px,8vw,92px); aspect-ratio:1; place-items:center; border:1px solid currentColor; border-radius:50%; font-size:clamp(1.7rem,4vw,3rem); box-shadow:0 0 35px color-mix(in srgb,currentColor 20%,transparent); }
.four-heart-line span:nth-child(1){color:#e73636}.four-heart-line span:nth-child(2){color:#38bdf8}.four-heart-line span:nth-child(3){color:#9f64ff}.four-heart-line span:nth-child(4){color:#60c936}
.name-console { max-width:760px; padding:clamp(1.5rem,4vw,3rem); border:1px solid rgba(101,220,255,.28); background:rgba(4,15,36,.76); box-shadow:0 30px 80px rgba(0,0,0,.38); }
.name-options { display:flex; flex-wrap:wrap; gap:.7rem; margin:1.5rem 0 1rem; }
.name-options button { min-width:130px; min-height:48px; border:1px solid var(--v3-sky); color:white; background:transparent; font-weight:900; text-transform:uppercase; cursor:pointer; }
.name-options button[aria-pressed="true"] { color:#071020; background:var(--v3-sky); }
.name-secret { margin-top:1rem; padding:1rem; border-left:3px solid var(--v3-gold); color:var(--v3-gold); background:rgba(255,211,78,.08); }
.name-secret[hidden]{display:none}
.history-triad { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(255,255,255,.12); }
.history-triad article { min-height:430px; padding:clamp(1.5rem,3vw,3rem); background:#061023; }
.history-triad article:nth-child(2){background:#071830}.history-triad article:nth-child(3){background:#0c1231}.history-triad .eyebrow{color:var(--v3-gold)}.history-triad h2{font-size:clamp(2rem,4vw,3.8rem)}.history-triad p{color:var(--v3-silver)}
.privacy-dashboard { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:rgba(255,255,255,.12); }
.privacy-row { display:flex; min-height:120px; align-items:center; justify-content:space-between; gap:1rem; padding:1.4rem; background:#061023; }
.privacy-row b{color:white}.privacy-row span{color:#75ef9a;font-size:.75rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.privacy-row p{margin:.25rem 0 0;color:var(--v3-silver);font-size:.9rem}
.site-footer .footer-title::before { width:72px; height:58px; background:url("brand-mark-4oh.webp") center/contain no-repeat; content:""; }
.site-footer .footer-title span { display:none; }
.footer-links a[href="privacy.html"]::after { content:" · Privacy Choices"; color:var(--v3-sky); }
/* Palace product page: remove the rejected billboard-and-box rhythm. */
.palace-product .page-hero { min-height:760px; background:linear-gradient(90deg,rgba(2,6,21,.97),rgba(2,6,21,.28) 62%,rgba(2,6,21,.76)),url("palace-hero-1024.webp") 78% 45%/min(78vw,920px) no-repeat,#020615; }
.palace-product .page-hero h1 { max-width:8ch; }
.palace-product .page-hero .lede { max-width:45ch; }
.palace-product .product-manifesto { padding-block:clamp(5rem,10vw,10rem); }
.manifesto-line { display:grid; grid-template-columns:auto 1fr; gap:clamp(1rem,4vw,4rem); align-items:start; padding:clamp(1.5rem,3vw,3rem) 0; border-top:1px solid rgba(255,255,255,.15); }
.manifesto-line:last-child{border-bottom:1px solid rgba(255,255,255,.15)}.manifesto-line b{color:var(--v3-gold);font-family:Impact,sans-serif;font-size:clamp(3rem,7vw,7rem);line-height:.8}.manifesto-line h2{font-size:clamp(2rem,5vw,5rem)}.manifesto-line p{max-width:48ch;color:var(--v3-silver)}
/* Real Palace tutorial */
.palace-play-page .page-hero { min-height:520px; }
.palace-play-page .tutorial-stage { min-height:760px; overflow:hidden; padding:clamp(.8rem,2vw,1.5rem); border:1px solid rgba(101,220,255,.2); border-radius:0; background:radial-gradient(ellipse at 50% 48%,#123f4a 0%,#071a28 48%,#020615 82%); }
.palace-play-page .tutorial-stage:focus{outline:none}.palace-play-page .tutorial-stage:focus-visible{outline:3px solid var(--v3-sky);outline-offset:3px}
.v3-tutorial-head { display:flex; min-height:48px; align-items:center; justify-content:space-between; gap:1rem; padding:.5rem .8rem; border-bottom:1px solid rgba(255,255,255,.12); color:var(--v3-silver); font-size:.65rem; font-weight:900; letter-spacing:.14em; }
.live-dot { display:inline-block; width:7px; height:7px; margin-right:.55rem; border-radius:50%; background:#75ef9a; box-shadow:0 0 14px #75ef9a; }
.scene-rail { display:grid; grid-template-columns:repeat(5,1fr); gap:1px; margin:0; padding:0; list-style:none; background:rgba(255,255,255,.1); }
.scene-rail li { min-height:50px; display:flex; align-items:center; gap:.5rem; padding:.6rem; color:#8090a6; background:#061023; font-size:.65rem; font-weight:900; text-transform:uppercase; }
.scene-rail li span { display:grid; width:24px; height:24px; place-items:center; border:1px solid currentColor; border-radius:50%; }
.scene-rail li.current{color:var(--v3-gold);background:#10162d}.scene-rail li.done{color:#75ef9a}
.v3-intro,.v3-complete { min-height:640px; display:grid; place-content:center; justify-items:start; padding:clamp(1.5rem,7vw,7rem); background:radial-gradient(circle at 82% 45%,rgba(22,140,255,.2),transparent 25rem); }
.v3-intro h2,.v3-complete h2 { margin:.25rem 0 1rem; font-family:Impact,sans-serif; font-size:clamp(4rem,10vw,9rem); line-height:.78; text-transform:uppercase; }
.v3-intro h2 em { color:var(--v3-gold); font-style:normal; }
.v3-intro p,.v3-complete p{max-width:54ch;color:var(--v3-silver)}
.v3-table { min-height:570px; display:grid; grid-template-columns:1fr minmax(220px,.8fr) 1fr; grid-template-rows:1fr auto; gap:1rem; align-items:center; padding:clamp(1rem,4vw,3rem); }
.opponent-seat,.player-seat,.pile-seat{display:grid;justify-items:center;gap:.75rem}.opponent-seat{grid-column:2;grid-row:1;align-self:start}.pile-seat{grid-column:2;grid-row:1}.player-seat{grid-column:1/-1;grid-row:2}.opponent-seat>span,.player-seat>span,.pile-seat>span{color:var(--v3-sky);font-size:.62rem;font-weight:900;letter-spacing:.16em}.opponent-seat>div{display:flex}.opponent-seat .v3-card+.v3-card{margin-left:-3rem}
.v3-card { position:relative; width:clamp(72px,8vw,106px); min-height:clamp(104px,12vw,150px); padding:.7rem; border:2px solid #dce6f5; border-radius:10px; color:#0b1324; background:#f8fbff; box-shadow:0 18px 38px rgba(0,0,0,.42); font-family:Georgia,serif; cursor:default; transition:transform .25s ease,opacity .25s ease,filter .25s ease; }
button.v3-card{cursor:pointer}button.v3-card:hover:not(:disabled),button.v3-card:focus-visible{z-index:2;transform:translateY(-14px);outline:3px solid var(--v3-sky);outline-offset:3px}.v3-card.red{color:#bd1831}.v3-card strong{display:grid;height:100%;place-items:center;font-size:clamp(2rem,5vw,4rem)}.v3-card .corner{position:absolute;top:.45rem;left:.5rem;font-weight:900;line-height:.85}.v3-card .corner i{display:block;font-style:normal}.v3-card .suit{position:absolute;right:.5rem;bottom:.4rem;font-size:1.15rem}.v3-card.back{border-color:#ffd34e;color:#ffd34e;background:radial-gradient(circle,#1b4590,#07152f 70%);box-shadow:inset 0 0 0 5px #0c214b,0 18px 38px rgba(0,0,0,.42)}.v3-card.power{border-color:var(--v3-gold);box-shadow:0 0 0 2px rgba(255,211,78,.22),0 18px 38px rgba(0,0,0,.42)}
.v3-hand{display:flex;justify-content:center}.v3-hand .v3-card+.v3-card{margin-left:-.6rem}.v3-hand.compact .v3-card{width:65px;min-height:92px}.pile-depth{position:relative;min-height:165px;display:grid;place-items:center}.pile-depth .v3-card{grid-area:1/1}.pile-depth .v3-card:nth-child(1){transform:rotate(-5deg) translate(-7px,4px)}.pile-depth .v3-card:nth-child(2){transform:rotate(4deg) translate(5px,0)}.pile-depth .v3-card:nth-child(3){transform:rotate(-1deg) translate(0,-4px)}.pile-seat b{max-width:230px;color:var(--v3-gold);font-family:Impact,sans-serif;font-size:1.2rem;text-align:center;letter-spacing:.04em}.v3-feedback{min-height:54px;margin:0;padding:1rem;border-top:1px solid rgba(255,255,255,.12);color:var(--v3-silver);background:#030a18;text-align:center}.v3-feedback.good{color:#75ef9a}.v3-card.wrong{animation:v3-shake .35s}.v3-card.played{transform:translateY(-170px) scale(.86);opacity:0}.burn-target.burning .pile-depth{animation:v3-burn .75s forwards}.pickup-target.picked-up .pile-depth{animation:v3-pickup .9s forwards}.opponent-thinking.picking-up{filter:drop-shadow(0 0 18px rgba(255,211,78,.45))}
.power-stage,.levels-stage{grid-column:1/-1;grid-row:1/-1;display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,6rem);align-items:center}.power-stage h2,.levels-stage h2{font-family:Impact,sans-serif;font-size:clamp(3rem,7vw,7rem);line-height:.86;text-transform:uppercase}.power-grid{display:flex;justify-content:center}.power-grid .v3-card+.v3-card{margin-left:-.5rem}.power-grid .v3-card.seen{transform:translateY(-15px);box-shadow:0 0 0 4px #75ef9a,0 18px 38px rgba(0,0,0,.42)}.power-readout{grid-column:2;min-height:86px;padding:1rem;border-left:3px solid var(--v3-gold);background:rgba(2,6,21,.72)}.power-readout strong,.power-readout span{display:block}.power-readout strong{color:var(--v3-gold);font-size:1.2rem}.power-readout span{margin-top:.4rem;color:var(--v3-silver)}
.level-stack{text-align:center}.level-stack button{position:relative;width:min(100%,440px);min-height:360px;border:0;background:transparent;cursor:pointer}.level-stack button:focus-visible{outline:3px solid var(--v3-sky)}.level-stack .level{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;transition:transform .5s,opacity .5s}.level-stack .level .v3-card+.v3-card{margin-left:-2.4rem}.level-stack[data-layer="0"] .face-up{transform:translateY(40px) scale(.9);opacity:.45}.level-stack[data-layer="0"] .face-down{transform:translateY(80px) scale(.8);opacity:.25}.level-stack[data-layer="1"] .hand-level{transform:translateY(-100px);opacity:0}.level-stack[data-layer="1"] .face-down{transform:translateY(50px) scale(.88);opacity:.4}.level-stack[data-layer="2"] .hand-level,.level-stack[data-layer="2"] .face-up{transform:translateY(-100px);opacity:0}.level-stack strong,.level-stack small{display:block}.level-stack strong{color:var(--v3-gold);font-family:Impact,sans-serif;font-size:2rem;text-transform:uppercase}.level-stack small{color:var(--v3-silver)}.crown-burst{color:var(--v3-gold);font-size:clamp(5rem,12vw,10rem);filter:drop-shadow(0 0 30px rgba(255,211,78,.35))}.tutorial-controls{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}
@keyframes v3-shake{25%{transform:translateX(-9px)}75%{transform:translateX(9px)}}@keyframes v3-burn{50%{filter:brightness(2) sepia(1);transform:scale(.75) rotate(10deg)}100%{filter:blur(10px);transform:scale(.1) rotate(30deg);opacity:0}}@keyframes v3-pickup{to{transform:translate(-230px,-110px) scale(.55);opacity:0}}
@media(max-width:900px){.story-split,.quote-stage,.power-stage,.levels-stage{grid-template-columns:1fr}.palace-levels{min-height:440px}.rule-ribbon{grid-template-columns:repeat(2,1fr)}.history-triad{grid-template-columns:1fr}.history-triad article{min-height:0}.privacy-dashboard{grid-template-columns:1fr}.palace-product .page-hero{background-position:70% 35%;background-size:900px}.v3-table{grid-template-columns:1fr;grid-template-rows:auto 1fr auto}.opponent-seat{grid-column:1;grid-row:1}.pile-seat{grid-column:1;grid-row:2}.player-seat{grid-column:1;grid-row:3}.power-readout{grid-column:1}.scene-rail li{font-size:0;justify-content:center}}
@media(max-width:600px){.brand,.brand-logo{width:68px;height:56px}.home-page .palace-world{min-height:880px}.home-page .palace-world h1{font-size:clamp(3.8rem,18vw,5.8rem)}.launch-countdown{display:grid;grid-template-columns:repeat(4,1fr);align-items:end}.launch-countdown-label{grid-column:1/-1}.countdown-unit{min-width:0}.story-split{gap:1.5rem}.palace-levels{min-height:360px}.palace-level{min-height:150px;padding:1rem}.palace-level:nth-child(1){--y:-75px}.palace-level:nth-child(2){--y:25px}.palace-level:nth-child(3){--y:125px}.rule-ribbon{grid-template-columns:1fr}.rule-ribbon article{min-height:0;border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.four-heart-line{justify-content:space-between}.palace-product .page-hero{min-height:760px;background-position:54% 16%;background-size:620px}.palace-product .page-hero .shell{padding-top:22rem}.v3-tutorial-head{align-items:flex-start;flex-direction:column}.scene-rail{overflow:hidden}.scene-rail li{padding:.4rem}.palace-play-page .tutorial-stage{padding:.35rem}.v3-intro,.v3-complete{min-height:610px;padding:1.2rem}.v3-intro h2,.v3-complete h2{font-size:clamp(3.4rem,18vw,5.4rem)}.v3-table{min-height:610px;padding:.75rem}.v3-card{width:70px;min-height:102px}.v3-hand .v3-card+.v3-card{margin-left:-1.1rem}.power-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.power-grid .v3-card+.v3-card{margin-left:0}.power-grid .v3-card{width:100%;min-height:112px}.power-stage h2,.levels-stage h2{font-size:3.2rem}.level-stack button{min-height:290px}.privacy-row{align-items:flex-start;flex-direction:column}.manifesto-line{grid-template-columns:1fr}.manifesto-line b{font-size:3rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.v3-card,.level-stack .level{transition:none}.v3-card.wrong,.burn-target.burning .pile-depth,.pickup-target.picked-up .pile-depth{animation-duration:.001ms}.home-page .palace-world-art{animation:none}}