/* Celestial redesign: all screens share the same night palette. */
:root{--paper:#141321;--ink:#f2e9dc;--blue:#242236;--muted:#b8afc7;--line:#454053;--white:#1d1b2c;--accent:#d9b87c;--soft:#232033;--gold:#d9b87c;--night:#141321;--serif:Georgia,'Times New Roman',serif}
body{background-color:var(--night);background-image:radial-gradient(ellipse at 82% 5%,#3c314544,transparent 48%);color-scheme:dark}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background-image:radial-gradient(circle at 8% 20%,#d9b87c80 .8px,transparent 1.6px),radial-gradient(circle at 29% 70%,#eee4e660 .6px,transparent 1.4px),radial-gradient(circle at 73% 12%,#d9b87c90 .8px,transparent 1.7px),radial-gradient(circle at 92% 58%,#eee4e650 .7px,transparent 1.5px);background-size:347px 419px,491px 557px,613px 379px,433px 659px}
::selection{background:var(--gold);color:var(--night)}
.reviewbar{background:#0c0b14;color:#b8afc7;border-bottom:1px solid #302b3d}
.reviewnav button[aria-current=page]{background:#332b3f;color:#f2e9dc}
.nav{border-bottom:1px solid #d9b87c25;height:102px}
.wordmark{color:var(--gold);font-size:32px;letter-spacing:-.8px}
.wordmark:before{content:"☾";font-family:Georgia,serif;display:inline-block;margin-right:12px;font-size:29px;vertical-align:1px}
.navlinks{color:#e0d4db}.navlinks a:hover,.linkbutton:hover{color:var(--gold)}
.eyebrow,.statuslabel{color:var(--gold);letter-spacing:2.4px}
h1,h2,h3{color:#f2e9dc}h1 em{color:#e1c48f}
.btn{color:#211b26;background:var(--gold);border-color:var(--gold);border-radius:2px;font-weight:600;transition:background .18s ease}
.btn:hover{background:#ead2a5;border-color:#ead2a5}.btn.secondary{color:var(--gold);border-color:#8b765c;background:transparent}.btn.secondary:hover{background:#d9b87c12}
button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline-color:#ead2a5}
.hero{padding:38px 0 70px;grid-template-columns:1.08fr 1fr;gap:80px}
.hero h1{font-size:clamp(50px,5.8vw,82px);line-height:1.1}
.hero p{color:#c9c0cf;font-size:17px;max-width:390px;line-height:1.8}
.heroimg{padding:12px;border:1px solid #d9b87c65;border-radius:250px 250px 4px 4px;isolation:isolate}
.heroimg:before{content:"";position:absolute;inset:-11px;border:1px solid #d9b87c22;border-radius:260px 260px 4px 4px;pointer-events:none}
.heroimg img{border-radius:240px 240px 0 0;max-height:510px;aspect-ratio:4/5;object-fit:cover}
.heroimg figcaption{background:#15131fd9;color:#dccaa9;left:25px;bottom:24px;font-size:9px;letter-spacing:.4px}
.lunar-divider{display:flex;justify-content:center;align-items:center;gap:28px;padding:25px 0 55px;color:var(--gold)}
.lunar-divider:before,.lunar-divider:after{content:"";height:1px;width:110px;background:linear-gradient(90deg,transparent,#d9b87c65)}
.lunar-divider:after{transform:rotate(180deg)}
.moon{display:block;width:16px;height:16px;border:1px solid #d9b87ca6;border-radius:50%}
.moon.waxing{background:linear-gradient(90deg,transparent 50%,#d9b87c 50%)}
.moon.full{background:#d9b87c;width:22px;height:22px;box-shadow:0 0 0 6px #d9b87c08}
.moon.waning{background:linear-gradient(90deg,#d9b87c 50%,transparent 50%)}
.section{border-color:#d9b87c30;padding:80px 0}
.intro h2{font-size:clamp(34px,4.2vw,56px)}.intro p{color:var(--muted)}
.step .number{color:var(--gold);font-style:italic}.step p{color:#c7bece}.step h3{font-size:29px}
.portrait-slot{background:radial-gradient(circle at center,#393044 0,#252132 48%,#1b1929 78%);border:1px solid #d9b87c40;position:relative;overflow:hidden;border-radius:220px 220px 3px 3px;min-height:400px}
.portrait-slot:before,.portrait-slot:after{content:"";position:absolute;left:50%;top:45%;width:235px;height:235px;transform:translate(-50%,-50%);border:1px solid #d9b87c35;border-radius:50%;pointer-events:none}
.portrait-slot:after{width:275px;height:275px;border-style:dashed;border-color:#d9b87c20}
.portrait-slot .initial{color:var(--gold);position:relative}.portrait-slot p{z-index:1;margin-top:25px;color:#c8bece}
.promise{color:var(--gold)}.jolene p:not(.promise){color:#c7bece}
.pricechoice{background:#1e1b2d;border-color:#514556;color:var(--ink)}
.pricechoice.selected{background:#302735;border-color:var(--gold)}
.pricechoice b{color:var(--gold)}
.order{background:#211d30;border:1px solid #5b4c5f;box-shadow:0 12px 45px #00000016}
.order .pricechoice{background:#181522}.order .pricechoice.selected{background:#332936}
.total,.emailpreview .subject{border-color:var(--line)}
.annotation{background:#292337;color:#d1c1d6;border-color:#bda179}
.field input,.field select{background:#1c192a;border-color:#51485d;color:var(--ink)}
.field input::placeholder{color:#998fa9;opacity:1}.field input:focus{border-color:var(--gold)}
input[type=checkbox]{accent-color:var(--gold)}
.payment-slot{background:#211c30;color:#c9bfd4}
.lettercard{background:#221e30;border-color:#635069;box-shadow:0 12px 36px #00000015}
.lettercard h3,.address{color:var(--gold)}.prompts li:before{color:var(--gold)}
.accountcard{background:#1f1b2d;border-color:#51455b}.emailpreview,.pausebox{background:#2a2338;border:1px solid #5b4963}
.pausebox h3,.emailpreview h3{color:var(--gold)}
.flownode{background:#231e31}.upselltable th{background:#30253d}.swatch i{border-color:#7b6882}
.toast{background:#d9b87c;color:#211b26}.footer{border-color:#d9b87c30}
@media(max-width:900px){.hero{gap:42px}.lunar-divider{padding-bottom:40px}}
@media(max-width:650px){.nav{height:80px}.wordmark{font-size:27px}.wordmark:before{font-size:25px;margin-right:8px}.hero{grid-template-columns:1fr;gap:40px;padding-top:32px}.hero h1{font-size:56px}.heroimg{max-width:410px;width:100%;margin:0 auto}.heroimg img{aspect-ratio:4/4.2;max-height:440px;object-position:center}.hero .eyebrow{font-size:10px}.lunar-divider{gap:20px;padding:0 0 38px}.lunar-divider:before,.lunar-divider:after{width:55px}.section{padding:50px 0}.portrait-slot{min-height:330px}.heroimg figcaption{font-size:8px}}
@media(prefers-reduced-motion:reduce){.btn{transition:none}}
