@charset "UTF-8";
:root{--night:#0b171e;--panel:#132730;--cream:#fff3d9;--gold:#e5c37a;--muted:#b6c5cc;--line:rgba(229,195,122,.22);color-scheme:dark;font-family:Inter,"Avenir Next",Avenir,system-ui,sans-serif;color:var(--cream);background:var(--night)}

*{box-sizing:border-box}

html{scroll-behavior:smooth;scroll-padding-top:100px}

body{margin:0;line-height:1.7}
a{color:inherit;text-underline-offset:5px}
button,a{-webkit-tap-highlight-color:transparent}
button{font:inherit}
button,a,summary{touch-action:manipulation}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
img{max-width:100%;display:block}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.13}
h1{font-size:clamp(3.3rem,6.4vw,6rem);letter-spacing:-.055em}
h2{font-size:clamp(2.2rem,4vw,3.65rem);letter-spacing:-.035em}
h3{font-size:1.65rem}
p{color:var(--muted)}
.wrap{width:min(1152px,calc(100% - 64px));margin-inline:auto}
.skip{position:absolute;top:-80px;left:16px;z-index:20;background:var(--cream);color:var(--night);padding:12px}
.skip:focus{top:12px}
.topbar{position:relative;z-index:5;border-bottom:1px solid var(--line);background:#0b171ef2}
.topbar .wrap{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:1.2rem;font-weight:650;letter-spacing:-.04em}
.brand svg{width:30px;height:30px;fill:var(--cream)}
.topnav{display:flex;align-items:center;gap:30px;font-size:.8rem}
.topnav a{text-decoration:none;color:var(--muted)}
.topnav a:hover,.topnav a[aria-current]{color:var(--gold)}
.hero{position:relative;overflow:hidden;padding:72px 0 80px}
.hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 85% 35%,#2f526c33,transparent 55%)}
.hero-grid{position:relative;display:grid;grid-template-columns:1.03fr 1fr;align-items:center;gap:70px}
.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.65rem;color:var(--gold);font-weight:600}
.wordmark{font-size:1.65rem;font-weight:300;letter-spacing:.46em;margin:28px 0 24px}
.hero h1 em{font-weight:400;color:var(--gold)}
.hero-copy>p{font-size:1rem;max-width:430px;margin-top:24px;line-height:1.85}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px;align-items:center}
.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:50px;padding:12px 24px;background:var(--cream);color:var(--night);text-decoration:none;border-radius:3px;border:1px solid var(--cream);font-size:.82rem;font-weight:600;cursor:pointer}
.button.secondary{background:transparent;color:var(--cream);border-color:#fff3d94d}
.button:hover{background:var(--gold);border-color:var(--gold);color:var(--night)}
.availability{display:flex;gap:18px;flex-wrap:wrap;margin-top:30px;color:var(--muted);font-size:.7rem}
.availability span+span{border-left:1px solid var(--line);padding-left:18px}
.preview-scene{max-width:420px;width:100%;justify-self:end;position:relative;border:1px solid #adc1d43b;border-radius:180px 180px 14px 14px;background:linear-gradient(#0b172350,#0b1723bd),url('assets/lantern-lake.jpg') center/cover;padding:42px 32px 25px;box-shadow:0 24px 80px #0005;overflow:hidden}
.preview-heading{text-align:center;font-size:1.25rem;letter-spacing:.36em;font-weight:300;margin:4px 0}
.preview-sub{text-align:center;letter-spacing:.23em;font-size:.5rem;color:var(--cream);margin-bottom:30px}
.board-meta{display:flex;justify-content:space-between;font-size:.63rem;letter-spacing:.09em;color:var(--cream);margin-bottom:15px}
.board{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}
.cell{position:relative;aspect-ratio:1;border-radius:9px;border:1px solid #fff9;background:linear-gradient(145deg,#fff3dd,#c9c0ae);box-shadow:inset -3px -4px 7px #6d6a6536,0 3px 5px #0003;padding:0;cursor:pointer;color:#15232c}
.cell:hover:not(:disabled){background:#fff7e5;outline:2px solid var(--gold);outline-offset:1px}
.cell:disabled{cursor:default}
.cell.wall{background:linear-gradient(140deg,#4e5660,#262e38);border-color:#66717b;box-shadow:inset 1px 1px 5px #bbc6ca30}
.cell.wall:after{content:"";position:absolute;width:70%;height:1px;background:#111c26;transform:rotate(-43deg);left:12%;top:48%}
.cell.stone:before{content:"";position:absolute;inset:13%;border-radius:50%;background:radial-gradient(circle at 28% 23%,#899099 0,#566170 22%,#1c2938 70%);box-shadow:2px 4px 6px #0006,inset 1px 1px 2px #fff6}
.cell.dock:after{content:"";position:absolute;inset:15%;border:3px solid #ffdc83;border-radius:50%;background:#dcb55e33;box-shadow:0 0 9px #eeb954,inset 0 0 10px #ffe6a7}
.cell.delivered{background:#bba673}
.cell.delivered:before{content:"✧";position:absolute;inset:0;display:grid;place-items:center;color:#fff2c8;font-size:2rem;text-shadow:0 0 14px #ffd15c}
.preview-controls{display:flex;justify-content:center;gap:24px;margin-top:16px}
.text-button{background:none;border:0;color:var(--cream);cursor:pointer;font-size:.68rem;text-decoration:underline;text-underline-offset:4px;padding:6px}
.text-button:disabled{opacity:.45;cursor:default}
.preview-note{font-size:.66rem;text-align:center;color:var(--cream);min-height:3.3em;line-height:1.6;margin-top:10px}
.preview-label{text-align:center;font-size:.57rem;text-transform:uppercase;letter-spacing:.17em;color:#e2d9c3;margin-top:18px}
.intro{padding:36px 0 76px;border-bottom:1px solid var(--line)}
.intro .wrap{display:flex;align-items:center;justify-content:space-between;gap:25px}
.intro p{max-width:560px;font-family:Georgia,serif;font-size:1.35rem;color:var(--cream)}
.quiet-tags{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;display:flex;gap:20px;color:var(--gold)}
.section{padding:96px 0}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:44px}
.section-head .eyebrow{margin-bottom:16px}
.section-head>p{max-width:330px;font-size:.9rem}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}
.step{border-top:1px solid var(--line);padding-top:24px}
.step-number{color:var(--gold);font-size:.7rem;letter-spacing:.15em;display:block;margin-bottom:24px}
.step h3{margin-bottom:16px}
.step p{font-size:.87rem}
.world{display:grid;grid-template-columns:1fr 1fr;min-height:610px;background:#11252a}
.world-art{margin:0;position:relative;min-height:540px;overflow:hidden}
.world-art img{width:100%;height:100%;object-fit:cover;position:absolute;object-position:center 57%}
.world-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#071a2390,transparent 40%)}
.world-art figcaption{position:absolute;bottom:22px;left:32px;font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;z-index:1;color:#fff5e3}
.world-copy{align-self:center;padding:72px 64px;max-width:620px}
.world-copy .eyebrow{margin-bottom:22px}
.world-copy h2{margin-bottom:24px}
.world-copy p{font-size:.92rem}
.world-copy p+p{margin-top:18px}
.line{width:68px;height:1px;background:var(--gold);margin-top:32px}
.upgrade-section{border-bottom:1px solid var(--line)}
.upgrades{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:5px;overflow:hidden}
.upgrade{padding:32px}
.upgrade+.upgrade{border-left:1px solid var(--line)}
.upgrade-symbol{font-size:1.6rem;color:var(--gold);display:block;margin-bottom:22px}
.upgrade h3{font-size:1.5rem;margin-bottom:14px}
.upgrade p{font-size:.84rem}
.purchase-note{font-size:.75rem!important;margin-top:24px;max-width:760px}
.purchase-note a{color:var(--gold)}
.endcap{padding:86px 24px;text-align:center;position:relative;overflow:hidden}
.endcap>img{width:116px;height:116px;object-fit:contain;margin:0 auto 24px}
.endcap h2{font-size:clamp(2.3rem,4vw,3.7rem)}
.endcap p{margin:18px auto 26px;max-width:460px;font-size:.9rem}
.platforms{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.platform{border:1px solid var(--line);padding:13px 23px;text-align:left;border-radius:5px;min-width:165px}
.platform small{display:block;font-size:.6rem;color:var(--muted)}
.platform strong{font-weight:500;font-size:1rem}
.footer{border-top:1px solid var(--line);padding:32px 0}
.footer .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:22px}
.footer nav{display:flex;gap:22px;font-size:.72rem;color:var(--muted)}
.footer small{font-size:.65rem;color:var(--muted)}
.doc-hero{padding:64px 0 46px;border-bottom:1px solid var(--line)}
.doc-hero .eyebrow{margin-bottom:20px}
.doc-hero h1{font-size:clamp(2.8rem,6vw,4.7rem)}
.doc-hero p{font-size:.8rem;margin-top:20px}
.doc-grid{display:grid;grid-template-columns:210px minmax(0,1fr);gap:64px;padding-block:56px 96px}
.toc{position:sticky;top:32px;align-self:start;font-size:.75rem}
.toc summary{color:var(--gold);cursor:pointer;font-weight:600}
.toc ol{list-style:none;padding:12px 0;margin:0}
.toc li{margin:10px 0}
.toc a{color:var(--muted);text-decoration:none}
.toc a:hover{color:var(--cream)}
.prose{max-width:760px;color:var(--muted);font-size:.92rem}
.prose h2{font-size:1.65rem;color:var(--cream);letter-spacing:-.02em;margin:42px 0 16px}
.prose h3{font-size:1.25rem;color:var(--cream);margin:24px 0 12px}
.prose p+p{margin-top:14px}
.prose li{margin-bottom:10px}
.prose a{color:var(--gold);overflow-wrap:anywhere}
.prose strong{color:var(--cream);font-weight:550}
.summary-box{border-left:2px solid var(--gold);background:#142933;padding:24px 28px;margin-bottom:35px}
.summary-box p{color:var(--cream)}
.summary-box ul{padding-left:20px;margin-bottom:0}
.legal-table{width:100%;border-collapse:collapse;margin:20px 0;font-size:.84rem}
.legal-table th,.legal-table td{text-align:left;border-bottom:1px solid var(--line);padding:12px 10px;vertical-align:top}
.legal-table th{color:var(--cream)}
.legal-table td:first-child{min-width:120px;color:var(--cream)}

@media(min-width:1500px){.hero{padding-block:90px}
.hero-grid{gap:100px}
}
@media(max-width:900px){.hero-grid{gap:35px}
.hero h1{font-size:3.6rem}
.preview-scene{padding:35px 20px 22px}
.hero{padding-top:44px}
.world-copy{padding:48px 32px}
.steps{gap:25px}
.doc-grid{gap:32px;grid-template-columns:170px minmax(0,1fr)}
}
@media(max-width:680px){.wrap{width:calc(100% - 40px)}
.topbar .wrap{min-height:76px;gap:16px;flex-wrap:wrap;padding-block:16px}
.topnav{gap:19px;font-size:.72rem}
.brand{font-size:1.05rem}
.brand svg{width:24px;height:24px}
.hero{padding:44px 0 54px}
.hero-grid{grid-template-columns:1fr;gap:42px}
.hero h1{font-size:clamp(3.4rem,13vw,4.8rem)}
.hero-copy>p{font-size:.93rem}
.wordmark{margin-top:24px}
.preview-scene{max-width:390px;width:100%;margin:auto;padding:38px 26px 22px}
.intro{padding:12px 0 42px}
.intro .wrap{display:block}
.intro p{font-size:1.18rem}
.quiet-tags{margin-top:22px;font-size:.58rem;gap:18px}
.section{padding:64px 0}
.section-head{display:block;margin-bottom:32px}
.section-head>p{margin-top:22px}
.steps{grid-template-columns:1fr;gap:32px}
.step-number{margin-bottom:16px}
.world{grid-template-columns:1fr}
.world-art{min-height:460px;margin:0}
.world-copy{padding:44px 24px 52px}
.upgrades{grid-template-columns:1fr}
.upgrade+.upgrade{border-left:0;border-top:1px solid var(--line)}
.upgrade{padding:28px}
.upgrade-symbol{float:right;margin:0}
.endcap{padding:64px 20px}
.footer .wrap{display:block}
.footer nav{margin:22px 0;gap:22px}
.doc-hero{padding:44px 0 32px}
.doc-grid{display:block;padding-top:30px}
.toc{position:static;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:32px}
.toc ol{columns:2;gap:24px}
.prose{font-size:.9rem}
.summary-box{padding:20px}
.legal-table{font-size:.75rem}
.legal-table td:first-child{min-width:90px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*:before,*:after{animation:none!important;transition:none!important}
}

