:root{color-scheme:dark;--ink:#eff1df;--muted:#a7b3a1;--faint:#6f8177;--deep:#0d1e26;--deep-soft:#132c32;--surface:#183438d1;--surface-light:#365552bd;--line:#d6e2be29;--gold:#e7bd79;--gold-soft:#f1d99f;--mint:#b4c895;--shadow:0 28px 90px #020b0f52;font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;color:var(--ink);background:radial-gradient(circle at 78% 4%,#6a917e24,#0000 28rem),linear-gradient(145deg,#0b1a22 0%,#10262c 52%,#173439 100%);margin:0}body:before{z-index:-1;pointer-events:none;content:"";opacity:.16;background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:64px 64px;position:fixed;inset:0;mask-image:linear-gradient(#000,#0000 86%)}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.page-shell{width:min(1180px,100% - 48px);margin:0 auto}.site-header{justify-content:space-between;align-items:center;width:min(1180px,100% - 48px);margin:0 auto;padding:28px 0;display:flex}.site-header.compact{padding-bottom:12px}.brand,.site-header nav,.play-toolbar{align-items:center;display:flex}.brand{letter-spacing:.02em;gap:11px;font-size:.86rem;font-weight:680}.brand-mark{border:1px solid #e7bd7973;border-radius:50%;place-items:center;width:25px;height:25px;display:grid}.brand-mark span{background:var(--gold);width:8px;height:8px;box-shadow:0 0 16px var(--gold);border-radius:50%}.site-header nav{color:var(--muted);gap:26px;font-size:.78rem}.site-header nav a{transition:color .16s}.site-header nav a:hover{color:var(--ink)}.hero-section{grid-template-columns:.92fr 1.08fr;align-items:center;gap:5rem;min-height:650px;padding-top:45px;padding-bottom:82px;display:grid}.hero-copy{z-index:1;position:relative}.eyebrow{color:var(--gold);letter-spacing:.18em;text-transform:uppercase;margin:0 0 15px;font-size:.69rem;font-weight:750;line-height:1.3}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.04em;font-weight:480}.hero-copy h1{max-width:620px;margin-bottom:25px;font-size:clamp(3.8rem,7vw,6.8rem);line-height:.91}h1 em,h2 em{color:var(--gold-soft);font-family:Georgia,serif;font-weight:400}.hero-description{max-width:435px;color:var(--muted);margin-bottom:32px;font-size:1.03rem;line-height:1.72}.button{letter-spacing:.01em;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:12px;min-height:48px;padding:0 20px;font-size:.78rem;font-weight:720;transition:transform .16s,border-color .16s,background .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{color:#17272b;background:var(--gold-soft);box-shadow:0 10px 24px #e7bd7929}.button-primary:hover{background:#f8e7bc}.button-quiet{border-color:var(--line);color:var(--muted);background:#ffffff05}.button-quiet:hover{color:var(--ink);border-color:#e7bd7975}.button-disabled{cursor:not-allowed;color:var(--faint);border-color:var(--line);background:#ffffff08}.hero-visual{border:1px solid var(--line);min-height:510px;box-shadow:var(--shadow);isolation:isolate;background:linear-gradient(155deg,#16323a,#365d5e 62%,#b1895f);border-radius:42% 42% 24px 24px;position:relative;overflow:hidden}.hero-visual:after{content:"";background:linear-gradient(#0000 44%,#071418ad);position:absolute;inset:0}.hero-glow{background:radial-gradient(circle,#ffefb166,#0000 70%);border-radius:50%;width:260px;height:260px;position:absolute;top:65px;left:50%;transform:translate(-50%)}.hero-hill{border-radius:50% 50% 0 0;position:absolute;left:-10%;right:-10%;transform:rotate(-4deg)}.hill-back{background:#50766a;height:205px;bottom:56px}.hill-front{background:#163c40;height:220px;bottom:-40px}.hero-tower{z-index:2;width:145px;height:280px;position:absolute;bottom:110px;left:50%;transform:translate(-50%)}.tower-light{background:#ffedac;border-radius:50%;width:46px;height:46px;position:absolute;top:-9px;left:50%;transform:translate(-50%);box-shadow:0 0 26px 12px #ffedac42}.tower-cap{clip-path:polygon(50% 0,100% 100%,0 100%);background:#dcae68;border-radius:50% 50% 9px 9px;width:82px;height:60px;position:absolute;top:27px;left:50%;transform:translate(-50%)}.tower-body{background:repeating-linear-gradient(#0000 0 37px,#e7bd79b3 38px 44px);border-left:7px solid #173b41;border-right:7px solid #173b41;justify-content:space-around;width:74px;height:188px;padding:24px 10px 0;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.tower-base{background:#132d34;border-radius:50%;width:122px;height:25px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.hero-spark{z-index:3;background:var(--gold-soft);border-radius:50%;width:7px;height:7px;animation:4s ease-in-out infinite drift;position:absolute;box-shadow:0 0 15px 4px #f1d99f70}.spark-one{top:34%;left:27%}.spark-two{animation-delay:1s;top:23%;right:24%}.spark-three{animation-delay:2.3s;top:48%;right:18%}@keyframes drift{0%,to{opacity:.45;transform:translateY(0)}50%{opacity:1;transform:translateY(-14px)}}.collection-section{padding:82px 0 95px}.section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px;display:flex}.section-heading h2,.about-card h2{margin-bottom:0;font-size:clamp(2.2rem,4vw,3.4rem);line-height:.98}.section-heading>p{max-width:220px;color:var(--muted);text-align:right;margin-bottom:5px;font-size:.88rem;line-height:1.5}.game-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.game-card{border:1px solid var(--line);background:#122e32b3;border-radius:22px;transition:transform .18s,border-color .18s;overflow:hidden;box-shadow:0 18px 50px #040f1224}.game-card.playable:hover{border-color:#e7bd7994;transform:translateY(-4px)}.game-card-art{aspect-ratio:1.52;position:relative;overflow:hidden}.game-card-art img{object-fit:cover;width:100%;height:100%;transition:transform .3s;display:block}.game-card.playable:hover img{transform:scale(1.03)}.status-pill{color:var(--gold-soft);letter-spacing:.1em;text-transform:uppercase;backdrop-filter:blur(10px);background:#0d1e26b8;border:1px solid #ffffff24;border-radius:999px;padding:7px 10px;font-size:.62rem;font-weight:750;position:absolute;top:15px;left:15px}.game-card-copy{padding:23px 23px 25px}.game-card-copy .eyebrow{color:var(--faint);margin-bottom:11px;font-size:.61rem}.game-card-copy h3{margin-bottom:11px;font-size:1.52rem;line-height:1}.game-card-copy>p:not(.eyebrow){min-height:50px;color:var(--muted);margin-bottom:19px;font-size:.83rem;line-height:1.55}.text-link{color:var(--gold-soft);font-size:.77rem;font-weight:720}.text-link span{margin-left:5px;transition:transform .16s;display:inline-block}.text-link:hover span{transform:translate(3px,-2px)}.muted-label{color:var(--faint);font-size:.72rem;font-weight:650}.about-section{grid-template-columns:1.25fr .75fr;gap:18px;padding-bottom:92px;display:grid}.about-card{border:1px solid var(--line);background:linear-gradient(140deg,#375c568f,#183438b8);border-radius:25px;padding:43px 44px}.about-card h2{max-width:480px;margin-bottom:19px}.about-card>p:last-child{max-width:520px;color:var(--muted);margin-bottom:0;line-height:1.7}.about-note{min-height:200px;color:var(--gold-soft);text-align:center;border:1px dashed #e7bd7952;border-radius:25px;justify-content:center;align-items:center;padding:30px;display:flex}.about-note p{margin:13px 0 0;font-family:Georgia,serif;font-size:1.35rem;line-height:1.3}.note-mark{color:var(--gold);font-size:1.4rem;display:block}.site-footer{color:var(--faint);letter-spacing:.03em;justify-content:space-between;padding:0 0 30px;font-size:.7rem;display:flex}.launcher-page{padding-top:25px;padding-bottom:85px}.back-link{color:var(--muted);font-size:.78rem;transition:color .16s}.back-link:hover{color:var(--gold-soft)}.launcher-panel{grid-template-columns:1fr .85fr;align-items:center;gap:clamp(34px,7vw,100px);padding-top:37px;display:grid}.launcher-art{aspect-ratio:1.18;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:28px;position:relative;overflow:hidden}.launcher-art img{object-fit:cover;width:100%;height:100%;display:block}.launcher-art:after{content:"";background:linear-gradient(#0000 40%,#05121580);position:absolute;inset:0}.signal-orbit{z-index:2;border:1px solid #f1d99f80;border-radius:50%;position:absolute;left:50%;transform:translate(-50%)}.orbit-one{width:46%;height:23%;bottom:18%}.orbit-two{opacity:.45;width:67%;height:33%;bottom:12%}.launcher-copy h1{margin-bottom:19px;font-size:clamp(3.2rem,6vw,5.7rem);line-height:.88}.launcher-description{max-width:440px;color:var(--muted);margin-bottom:26px;font-size:1rem;line-height:1.7}.launcher-actions{flex-wrap:wrap;gap:10px;margin-bottom:50px;display:flex}.controls-block{border-top:1px solid var(--line);padding-top:23px}.controls-block .eyebrow{color:var(--faint);margin-bottom:14px}.control-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 22px;margin:0;padding:0;list-style:none;display:grid}.control-list li{color:var(--muted);flex-direction:column;gap:3px;font-size:.72rem;display:flex}.control-list strong{color:var(--ink);font-size:.75rem}.play-page{padding-top:20px;padding-bottom:54px}.play-toolbar{justify-content:space-between;margin-bottom:16px}.play-label{color:var(--ink);font-size:.8rem;font-weight:700}.text-button{color:var(--gold-soft);cursor:pointer;font:inherit;background:0 0;border:0;font-size:.74rem}.game-stage{border:1px solid var(--line);min-height:min(72vh,780px);box-shadow:var(--shadow);background:#08171c;border-radius:24px;place-items:center;display:grid;position:relative;overflow:hidden}.game-stage:fullscreen{border:0;border-radius:0}.game-stage-loading,.game-stage-error{text-align:center;max-width:430px;padding:34px}.game-stage-loading p{color:var(--muted);font-size:.85rem}.loading-pulse{border:2px solid #e7bd7938;border-top-color:var(--gold);border-radius:50%;width:34px;height:34px;margin:0 auto 19px;animation:.9s linear infinite spin;display:block}@keyframes spin{to{transform:rotate(360deg)}}.game-stage-error h1,.not-ready-panel h1{margin-bottom:14px;font-size:clamp(2rem,4vw,3.5rem);line-height:.95}.game-stage-error>p:not(.eyebrow),.not-ready-panel>p:not(.eyebrow){color:var(--muted);margin-bottom:24px;line-height:1.65}.game-canvas-wrap{width:100%;height:100%}.game-canvas-wrap canvas{width:100%;height:100%;display:block}.not-ready-panel{text-align:center;min-height:540px;padding:100px 30px}.not-ready-panel>p:not(.eyebrow){max-width:420px;margin-left:auto;margin-right:auto}@media (width<=800px){.hero-section,.launcher-panel,.about-section{grid-template-columns:1fr}.hero-section{gap:25px;padding-top:32px}.hero-visual{min-height:420px}.game-grid{grid-template-columns:1fr}.game-card-art{aspect-ratio:1.75}.about-note{min-height:170px}.launcher-panel{gap:44px}.launcher-copy{max-width:620px}.site-footer{gap:20px}}@media (width<=520px){.page-shell,.site-header{width:min(100% - 30px,1180px)}.site-header{padding-top:20px}.site-header nav{gap:13px}.site-header nav a{font-size:.7rem}.hero-copy h1{font-size:3.5rem}.hero-section{min-height:auto;padding-top:55px;padding-bottom:65px}.hero-visual{border-radius:35% 35% 18px 18px;min-height:350px}.hero-tower{transform-origin:bottom;transform:translate(-50%)scale(.8)}.section-heading{flex-direction:column;align-items:start}.section-heading>p{text-align:left;margin:0}.collection-section{padding:65px 0}.about-card{padding:31px 27px}.site-footer{flex-direction:column;padding-bottom:22px}.launcher-page{padding-top:20px}.launcher-actions{flex-direction:column;align-items:stretch}.launcher-actions .button{width:100%}.control-list{grid-template-columns:1fr 1fr}.play-toolbar .play-label{display:none}.game-stage{min-height:70vh}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}}
