:root {
  --ink:#070b14;--night:#0b1220;--panel:rgba(13,21,35,.84);--line:rgba(239,234,207,.42);--line-soft:rgba(210,223,233,.12);
  --ivory:#f0ead0;--white:#f5f7f4;--silver:#a8b5c0;--muted:#748596;--blue:#5db5ef;--danger:#ff9e9e;
  --serif:"Cormorant Garamond",Georgia,serif;--sans:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --page:min(1280px,calc(100% - 64px));
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden;background:var(--ink);color:var(--white);font-family:var(--sans);line-height:1.6;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;z-index:-3;background:radial-gradient(circle at 76% 8%,rgba(62,92,142,.2),transparent 28%),radial-gradient(circle at 15% 62%,rgba(77,58,116,.13),transparent 26%),linear-gradient(150deg,#070b14 0%,#0a101c 48%,#060910 100%)}
a{color:inherit}img{display:block;max-width:100%;height:auto}button,input,textarea{font:inherit}button{cursor:pointer}::selection{color:var(--ink);background:var(--ivory)}:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
#starfield{position:fixed;inset:0;width:100%;height:100%;z-index:-2;pointer-events:none;opacity:.68}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:1000;padding:.7rem 1rem;color:var(--ink);background:var(--ivory);border-radius:99px;text-decoration:none}.skip-link:focus{top:1rem}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:fixed;inset:0 0 auto;z-index:100;min-height:76px;padding:0 max(32px,calc((100vw - 1280px)/2));display:flex;align-items:center;justify-content:space-between;transition:background .3s,border-color .3s;border-bottom:1px solid transparent}.site-header.scrolled{background:rgba(7,11,20,.86);border-color:var(--line-soft);backdrop-filter:blur(18px)}
.brand,.footer-brand{display:flex;align-items:center;gap:.7rem;font:500 1.28rem/1 var(--serif);letter-spacing:.025em;text-decoration:none}.brand img,.footer-brand img{object-fit:contain}#site-nav{display:flex;align-items:center;gap:2rem}#site-nav a{color:var(--silver);font-size:.79rem;letter-spacing:.05em;text-decoration:none;transition:color .2s}#site-nav a:hover{color:var(--white)}#site-nav .nav-download{padding:.62rem 1.1rem;color:var(--ink);background:var(--ivory);border-radius:999px;font-weight:600}
.menu-button{display:none;width:42px;height:42px;padding:0;border:0;background:transparent;position:relative}.menu-button span{position:absolute;left:9px;right:9px;height:1px;background:var(--ivory);transition:.25s}.menu-button span:first-child{top:16px}.menu-button span:last-child{top:25px}.menu-button[aria-expanded=true] span:first-child{transform:translateY(4.5px) rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}
.hero{width:var(--page);min-height:100svh;margin:0 auto;padding:128px 0 68px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr);align-items:center;gap:clamp(2rem,7vw,7rem)}.hero-copy{position:relative;z-index:2;padding-bottom:3rem}
.kicker,.eyebrow,.section-number{margin:0;color:var(--ivory);font-size:.69rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase}.kicker{display:flex;align-items:center;gap:.75rem}.kicker span{width:28px;height:1px;background:var(--ivory)}
.hero h1,.manifesto h2,.chapter h2,.privacy-panel h2,.download h2,.contact h2{margin:1rem 0 1.35rem;font-family:var(--serif);font-weight:400;letter-spacing:-.04em;line-height:.84}.hero h1{font-size:clamp(4.5rem,8.4vw,8.2rem)}h1 em,h2 em{color:var(--ivory);font-weight:400}.hero-lede{max-width:34rem;margin:0;color:var(--silver);font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.75}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.6rem;margin-top:2rem}.store-link{display:inline-block;border-radius:8px;transition:transform .2s,opacity .2s}.store-link:hover{transform:translateY(-2px);opacity:.9}.text-link{color:var(--ivory);font-size:.83rem;letter-spacing:.03em;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:.2rem}.text-link span{margin-left:.35rem}.privacy-note{margin:1.7rem 0 0;color:var(--muted);font-size:.76rem}.privacy-note span{color:var(--blue);margin-right:.45rem}
.hero-art{min-height:820px;position:relative;display:grid;place-items:center}.hero-moon{position:absolute;width:min(38vw,500px);top:-1%;right:-4%;filter:drop-shadow(0 0 55px rgba(203,216,229,.16));opacity:.95}.orbit{position:absolute;border:1px solid rgba(239,234,207,.16);border-radius:50%;pointer-events:none}.orbit-one{width:620px;height:620px;top:0;right:-95px;transform:rotate(-18deg) scaleY(.42)}.orbit-two{width:780px;height:780px;top:-50px;right:-210px;transform:rotate(21deg) scaleY(.32)}
.phone{position:relative;overflow:hidden;background:#090d14;border:1.5px solid rgba(239,234,207,.8);border-radius:62px;box-shadow:0 50px 120px rgba(0,0,0,.56),0 0 0 7px rgba(255,255,255,.025)}.phone::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 3px rgba(255,255,255,.08);pointer-events:none}.phone img{width:100%}.phone-speaker{position:absolute;z-index:2;top:15px;left:50%;width:34%;height:28px;transform:translateX(-50%);border-radius:999px;background:#020305}.phone-hero{width:min(27vw,318px);margin:118px 0 0 -120px}.moon-caption{position:absolute;right:-4%;top:calc(min(38vw,500px) + 1rem);display:flex;flex-direction:column;align-items:flex-end;margin:0;text-align:right;font:400 1.65rem/1.1 var(--serif);color:var(--ivory)}.moon-caption::before{display:none}.moon-caption small{margin-top:.45rem;color:var(--muted);font:400 .61rem/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase}
.phase-marquee{border-block:1px solid var(--line-soft);background:rgba(11,18,32,.58);overflow:hidden}.phase-track{width:max-content;min-width:100%;padding:1.5rem max(2rem,calc((100vw - 1280px)/2));display:flex;align-items:center;justify-content:space-between;gap:clamp(2rem,4vw,5rem)}.phase-track figure{min-width:92px;margin:0;text-align:center}.phase-track img{width:54px;height:54px;margin:auto;object-fit:contain;filter:drop-shadow(0 0 12px rgba(229,237,244,.1))}.phase-track figcaption{margin-top:.55rem;color:var(--muted);font-size:.62rem;letter-spacing:.11em;text-transform:uppercase;white-space:nowrap}
.manifesto{width:min(980px,calc(100% - 64px));margin:0 auto;padding:clamp(8rem,14vw,13rem) 0;text-align:center}.manifesto h2{font-size:clamp(4rem,8vw,7.6rem)}.manifesto>p:last-child{max-width:47rem;margin:2.3rem auto 0;color:var(--silver);font-size:1.05rem;line-height:1.85}
.chapter{width:var(--page);min-height:930px;margin:0 auto;padding:clamp(6rem,10vw,10rem) 0;display:grid;align-items:center;gap:clamp(3rem,8vw,8rem);border-top:1px solid var(--line-soft)}.chapter-journal{grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr)}.chapter-copy{position:relative;z-index:2}.chapter h2,.privacy-panel h2,.download h2,.contact h2{font-size:clamp(3.6rem,6vw,6.2rem)}
.chapter-copy>p:not(.section-number),.patterns-heading>p:not(.section-number),.privacy-copy>p,.download-copy>p:not(.kicker),.contact-intro>p:not(.section-number){max-width:33rem;color:var(--silver);font-size:1rem;line-height:1.85}.chapter-visual{min-height:730px;position:relative}.editorial-word{position:absolute;left:-4vw;top:48%;transform:translateY(-50%) rotate(-90deg);color:transparent;-webkit-text-stroke:1px rgba(239,234,207,.15);font:400 clamp(7rem,15vw,14rem)/1 var(--serif);letter-spacing:.08em}
.listing-shot{position:relative;overflow:hidden;aspect-ratio:569/1237;border-radius:48px;box-shadow:none}.listing-shot>img{position:absolute;left:-3.866%;top:-1.778%;width:107.733%;max-width:none;height:auto}.listing-back{position:absolute;width:min(34vw,390px);left:1%;top:12%;transform:rotate(-8deg);opacity:.53}.listing-front{position:absolute;width:min(34vw,390px);right:2%;top:0;transform:rotate(3deg)}.quiet-list{list-style:none;padding:0;margin:2.5rem 0 0;border-top:1px solid var(--line-soft)}.quiet-list li{padding:.9rem 0;display:flex;gap:1rem;color:var(--silver);font-size:.85rem;border-bottom:1px solid var(--line-soft)}.quiet-list span{color:var(--ivory);font-size:.68rem}
.interlude{position:relative;min-height:560px;padding:8rem 32px;display:grid;place-content:center;text-align:center;overflow:hidden;border-block:1px solid var(--line-soft);background:rgba(11,18,32,.38)}.interlude-moon{position:absolute;left:50%;top:50%;width:min(68vw,730px);transform:translate(-50%,-50%);opacity:.18}.interlude-moon::after{content:"";position:absolute;inset:-15%;border:1px solid var(--line);border-radius:50%}.interlude blockquote{position:relative;margin:0;font:italic 400 clamp(2.6rem,5.8vw,5.6rem)/1.02 var(--serif);color:var(--white)}.interlude>p{position:relative;margin:2rem 0 0;color:var(--ivory);font-size:.67rem;letter-spacing:.2em;text-transform:uppercase}
.chapter-calendar{grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr)}.calendar-visual{min-height:780px}.calendar-shot{position:absolute;width:min(36vw,430px);left:50%;top:0;transform:translateX(-50%) rotate(-2deg)}.calendar-ring{position:absolute;width:650px;height:650px;top:6%;left:50%;transform:translateX(-50%);border:1px solid var(--line);border-radius:50%}.calendar-ring::before,.calendar-ring::after{content:"";position:absolute;inset:11%;border:1px solid var(--line-soft);border-radius:50%}.calendar-ring::after{inset:25%}.vertical-note{position:absolute;right:0;bottom:14%;margin:0;color:var(--muted);font-size:.6rem;letter-spacing:.2em;writing-mode:vertical-rl}
.fact-grid{max-width:500px;margin-top:2.8rem;display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line-soft)}.fact-grid div{padding:1.2rem .6rem;display:flex;flex-direction:column;border-right:1px solid var(--line-soft)}.fact-grid div:last-child{border-right:0}.fact-grid strong{color:var(--ivory);font:400 2.2rem/1 var(--serif)}.fact-grid span{margin-top:.35rem;color:var(--muted);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em}
.chapter-patterns{display:block;min-height:auto}.patterns-heading{max-width:800px;margin:0 auto 7rem;text-align:center}.patterns-heading h2{font-size:clamp(3.7rem,7vw,7rem)}.patterns-heading>p:last-child{margin:0 auto}.screen-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.2rem,3vw,3rem);align-items:start}.screen-gallery figure{min-width:0;margin:0}.screen-gallery figure>span{display:block;margin-bottom:.8rem;color:var(--ivory);font:400 1rem var(--serif)}.screen-gallery .listing-shot{width:100%;border-radius:clamp(24px,4vw,52px);box-shadow:none}.screen-gallery figcaption{margin-top:1rem;color:var(--muted);font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;text-align:center}.gallery-raised{transform:translateY(-3.5rem)}
.privacy-panel{width:var(--page);margin:clamp(4rem,9vw,9rem) auto;padding:clamp(3rem,6vw,6rem);display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;border:1px solid var(--line);border-radius:2px;background:linear-gradient(135deg,rgba(17,29,48,.83),rgba(7,11,20,.56));box-shadow:inset 0 0 80px rgba(104,122,160,.06)}.privacy-panel h2{margin-bottom:0}.privacy-copy .text-link{display:inline-block;margin-top:1rem}
.download{position:relative;min-height:auto;padding:clamp(8rem,12vw,11rem) max(32px,calc((100vw - 1280px)/2));display:flex;flex-direction:column;align-items:center;gap:clamp(3rem,6vw,5rem);overflow:hidden;text-align:center;border-block:1px solid var(--line-soft);background:linear-gradient(180deg,rgba(17,29,48,.36),rgba(7,11,20,.72))}.download-moon{position:absolute;width:min(62vw,760px);left:50%;top:48%;transform:translate(-50%,-50%);opacity:.12;filter:drop-shadow(0 0 60px rgba(203,216,229,.12));pointer-events:none}.download-copy{position:relative;z-index:2;max-width:880px;padding:0}.download-copy .kicker{justify-content:center}.download-copy>p:not(.kicker){margin-inline:auto}.download-copy .store-link{margin-top:1.6rem}.notify-card{position:relative;z-index:2;width:min(720px,100%);padding:2rem 2.4rem;text-align:left;background:rgba(7,11,20,.72);border-block:1px solid var(--line);backdrop-filter:blur(16px)}.notify-card h3{margin:.6rem 0 1.2rem;font:400 2.2rem/1.1 var(--serif)}.notify-row{display:grid;grid-template-columns:1fr auto;border-bottom:1px solid var(--line)}.notify-row input{min-width:0;padding:.9rem 0;border:0;color:var(--white);background:transparent;outline:0}.notify-row button{padding:.9rem 0 .9rem 1rem;border:0;color:var(--ivory);background:transparent}
.contact{position:relative;width:100%;padding:clamp(6rem,8vw,8rem) max(20px,calc((100vw - 1280px)/2)) clamp(2.5rem,4vw,4rem);text-align:center}.contact::before{content:"";position:absolute;left:50%;top:7%;width:min(50vw,600px);aspect-ratio:1;transform:translateX(-50%);border:1px solid var(--line-soft);border-radius:50%;mask-image:linear-gradient(to bottom,rgba(0,0,0,.45),transparent 55%);pointer-events:none}.contact-intro{position:relative;max-width:760px;margin:0 auto}.contact-intro h2{font-size:clamp(3.4rem,5.2vw,5rem)}.contact-intro>p:not(.section-number){margin-inline:auto}.contact-intro>a{display:inline-block;margin-top:.55rem;color:var(--ivory);font-size:.82rem;text-underline-offset:.25rem}.contact-form{position:relative;max-width:960px;margin:clamp(2.5rem,4vw,3.5rem) auto 0;padding:clamp(2rem,4vw,3.5rem);text-align:left;border-block:1px solid var(--line);background:linear-gradient(135deg,rgba(17,29,48,.54),rgba(7,11,20,.3));box-shadow:0 34px 90px rgba(0,0,0,.14),inset 0 0 70px rgba(104,122,160,.03)}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,5rem)}.form-row{position:relative;margin-bottom:1.7rem}.form-row label{display:block;margin-bottom:.5rem;color:var(--ivory);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}.form-row input,.form-row textarea{width:100%;padding:.9rem 0;border:0;border-bottom:1px solid rgba(239,234,207,.3);border-radius:0;color:var(--white);background:transparent;outline:none;transition:border-color .2s}.form-row textarea{min-height:105px;resize:vertical}.form-row input:focus,.form-row textarea:focus{border-color:var(--ivory)}.form-row input.invalid,.form-row textarea.invalid{border-color:var(--danger)}input::placeholder,textarea::placeholder{color:#718190}.character-count{position:absolute;right:0;bottom:-1.35rem;color:var(--muted);font-size:.65rem}.contact-form>.consent{text-align:center}.contact-form>.submit-button{display:block;margin:1rem auto 0}.contact-form>.form-result{text-align:center}
.consent{margin:.7rem 0 1.1rem;color:var(--muted);font-size:.67rem}.consent a{text-underline-offset:.15rem}.submit-button{min-width:190px;padding:.9rem 1.25rem;border:1px solid var(--ivory);border-radius:999px;color:var(--ink);background:var(--ivory);font-size:.82rem;font-weight:600;transition:transform .2s,opacity .2s}.submit-button:hover{transform:translateY(-2px)}.submit-button:disabled,.notify-row button:disabled{cursor:wait;opacity:.5}.submit-button span{margin-left:1.8rem}.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-result{display:none;margin-top:1rem;padding:.8rem 1rem;font-size:.78rem;border-left:2px solid}.form-result.show{display:block}.form-result.ok{padding:1rem 1.1rem;color:var(--ivory);border:1px solid rgba(93,181,239,.42);border-left:3px solid var(--blue);background:linear-gradient(90deg,rgba(93,181,239,.16),rgba(240,234,208,.06));box-shadow:0 14px 34px rgba(0,0,0,.16);font-size:.86rem;font-weight:600}.form-result.ok::before{content:"☾";margin-right:.55rem;color:var(--blue);font-size:1rem}.form-result.bad{color:#ffd0d0;border-color:var(--danger);background:rgba(255,100,100,.07)}.form-result a{color:inherit}
footer{width:100%;padding:2.8rem 20px 2.5rem;display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center;border-top:1px solid var(--line-soft)}footer>p{margin:0;color:var(--muted);font:italic 400 1.15rem var(--serif)}footer nav{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;margin-top:.55rem}footer nav a,footer small{color:var(--muted);font-size:.67rem;text-decoration:none}footer nav a:hover{color:var(--ivory)}footer small{margin-top:.4rem}.toast{position:fixed;z-index:200;right:1.5rem;bottom:1.5rem;max-width:390px;padding:1.05rem 1.25rem 1.05rem 3.4rem;color:var(--ink);background:var(--ivory);border:1px solid rgba(93,181,239,.72);box-shadow:0 24px 70px rgba(0,0,0,.38),inset 3px 0 0 var(--blue);font-size:.84rem;font-weight:650;opacity:0;transform:translateY(20px);pointer-events:none;transition:.25s}.toast::before{content:"☾";position:absolute;left:1.15rem;top:50%;transform:translateY(-52%);color:#2c79ad;font:600 1.45rem var(--serif)}.toast.show{opacity:1;transform:none}
.js .reveal-ready{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.8,.2,1)}.js .reveal-ready.revealed{opacity:1;transform:none}
@media(max-width:1040px){.hero{grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr);gap:2rem}.hero-art{min-height:780px}.phone-hero{width:300px;margin-left:-40px}.hero-moon{width:420px;right:-12%}.moon-caption{right:0}.chapter{min-height:800px;gap:3rem}.listing-back,.listing-front{width:min(37vw,360px)}.download-copy{padding-left:150px}}
@media(max-width:780px){:root{--page:min(100% - 40px,620px)}html,body{max-width:100%;overflow-x:hidden;overflow-x:clip}body{position:relative}.site-header{min-height:68px;padding:0 20px}.menu-button{display:block;z-index:2}#site-nav{position:fixed;inset:0;padding:7rem 2rem 3rem;display:flex;flex-direction:column;align-items:flex-start;gap:1.7rem;background:rgba(7,11,20,.98);visibility:hidden;opacity:0;transition:.25s}#site-nav.open{visibility:visible;opacity:1}#site-nav a{font:400 2.4rem/1 var(--serif);color:var(--white)}#site-nav .nav-download{font:600 .85rem/1 var(--sans)}
.hero{min-height:auto;padding-top:115px;grid-template-columns:1fr}.hero h1{font-size:clamp(4.5rem,22vw,7rem)}.hero-copy{padding-bottom:0}.hero-art{min-height:760px;margin-top:0}.hero-moon{width:390px;top:0;right:-25%}.orbit-one{right:-230px}.orbit-two{right:-350px}.phone-hero{width:min(72vw,277px);margin:125px auto 0 0}.moon-caption{right:0;top:405px}.phase-track{justify-content:flex-start;overflow-x:auto;scroll-snap-type:x proximity}.phase-track figure{scroll-snap-align:center}.manifesto{width:var(--page);text-align:left}.manifesto h2{font-size:clamp(4rem,18vw,6rem)}.manifesto>p:last-child{margin-left:0}
.chapter,.chapter-journal,.chapter-calendar{grid-template-columns:1fr;min-height:auto;padding-block:7rem}.chapter h2,.privacy-panel h2,.download h2,.contact h2{font-size:clamp(3.8rem,17vw,5.4rem)}.chapter-visual{min-height:640px}.listing-back,.listing-front{width:min(67vw,355px)}.listing-back{left:-5%}.listing-front{right:-5%}.chapter-copy{order:-1}.chapter-calendar .chapter-copy{order:initial}.calendar-visual{min-height:680px}.calendar-shot{width:min(76vw,400px)}.calendar-ring{width:540px;height:540px}.patterns-heading{text-align:left;margin-bottom:4rem}.patterns-heading>p:last-child{margin-left:0}.screen-gallery{margin-right:-20px;grid-template-columns:repeat(3,minmax(260px,72vw));overflow-x:auto;padding:3rem 20px 2rem 0;scroll-snap-type:x mandatory}.screen-gallery figure{scroll-snap-align:start}.gallery-raised{transform:none}
.privacy-panel{grid-template-columns:1fr;gap:1.5rem;padding:2rem}.download{padding:7rem 20px;gap:3rem}.download-moon{width:560px;left:50%;top:42%;transform:translate(-50%,-50%)}.download-copy{min-height:0;padding:0;display:block}.notify-card{max-width:620px;padding:1.7rem}.contact-form{padding:2rem}.contact::before{width:110vw}.form-pair{grid-template-columns:1fr;gap:0}footer nav{justify-content:center}}
@media(max-width:460px){:root{--page:calc(100% - 32px)}.hero h1{font-size:4.25rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:1rem}.hero-art{min-height:650px}.phone{border-radius:42px}.phone-speaker{top:10px;height:21px}.phone-hero{width:240px;margin-top:100px}.hero-moon{width:320px}.moon-caption{font-size:1.35rem}.manifesto{padding-block:7rem}.manifesto h2{font-size:3.8rem}.chapter h2,.privacy-panel h2,.download h2,.contact h2{font-size:3.65rem}.chapter-visual{min-height:540px}.listing-shot{border-radius:34px}.listing-back,.listing-front{width:275px}.interlude{min-height:460px}.calendar-visual{min-height:580px}.calendar-shot{width:300px}.calendar-ring{width:430px;height:430px}.fact-grid strong{font-size:1.8rem}.fact-grid span{font-size:.57rem}.download-copy{padding-left:0}.notify-card{padding:1.5rem}.notify-row{grid-template-columns:1fr}.notify-row button{padding-left:0;text-align:left}.toast{left:1rem;right:1rem;bottom:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.js .reveal-ready{opacity:1;transform:none}}
