@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--night:#111827;--ink:#18202c;--deep:#0d1220;--navy:#1b2436;--slate:#485261;--warm:#eee5d8;--cream:#f9f6ef;--rose:#e6a9a6;--gold:#edd3a3;--line:rgba(240,230,212,.15);--font:'DM Sans',Arial,sans-serif;--serif:'Libre Caslon Display',Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);font-size:16px;line-height:1.7;color:var(--ink);background:var(--cream)}a{color:inherit}img{max-width:100%}button,input,select{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ad7870;outline-offset:4px}button{cursor:pointer}h1,h2,h3,p{margin-top:0}.wrap{width:min(1160px,calc(100% - 48px));margin:0 auto}.skip-link{position:absolute;left:-9999px;top:12px;background:#fff;padding:10px 20px;z-index:200}.skip-link:focus{left:14px}
.site-header{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:27px min(6vw,78px);background:var(--deep);color:var(--cream);border-bottom:1px solid rgba(255,255,255,.10)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;white-space:nowrap;font-size:19px;letter-spacing:.05em;font-family:var(--serif)}.brand .mini-moon{width:29px;height:29px;position:relative;border-radius:50%;background:#e6bd80;box-shadow:0 0 24px #f6ba6c55}.mini-moon:after{content:'';position:absolute;width:24px;height:26px;left:11px;top:-4px;border-radius:50%;background:var(--deep)}nav{display:flex;align-items:center;gap:28px}nav a{text-decoration:none;font-size:13px;font-weight:600;letter-spacing:.045em;color:#ebebee}nav a:hover{color:var(--gold)}.top-action{border:1px solid rgba(241,223,191,.48);padding:10px 18px;border-radius:100px;font-size:13px}.mobile-nav{display:none}
.hero{position:relative;isolation:isolate;overflow:hidden;color:var(--cream);background:radial-gradient(circle at 76% 40%,#35415c 0,#151c2c 38%,#0c1220 82%);padding:99px 0 120px;min-height:645px}.hero:before{content:'';pointer-events:none;position:absolute;inset:0;opacity:.5;background-image:radial-gradient(circle at 10% 14%,#fff9 1px,transparent 2px),radial-gradient(circle at 85% 71%,#ffeabb8a 1px,transparent 2px),radial-gradient(circle at 55% 12%,#fff7 1px,transparent 2px);background-size:127px 129px,189px 173px,247px 213px}.hero:after{content:'';pointer-events:none;position:absolute;width:800px;height:800px;border-radius:50%;right:-400px;top:100px;border:1px solid #c7b79820;box-shadow:0 0 0 100px #fff1,0 0 0 200px #fff05,0 0 0 300px #fff04;z-index:-1}.hero-main{position:relative;max-width:740px;z-index:2}.eyebrow{text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.26em;color:#e8c49a;margin-bottom:24px}.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(62px,8.2vw,115px);line-height:.94;letter-spacing:-.035em;max-width:760px;margin-bottom:30px}.hero h1 em{font-weight:normal;font-style:italic;color:#dfb6b2}.hero-copy{font-size:18px;max-width:510px;color:#e1dfdd;line-height:1.85}.hero-buttons{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:38px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:11px;text-decoration:none;border-radius:60px;padding:15px 24px;font-size:13px;font-weight:700;letter-spacing:.02em;min-height:48px;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:#ecd4b6;color:#182234}.btn-primary:hover{background:#f9e3c7}.btn-outline{border:1px solid #fff5;color:#f8f5ef}.btn-outline:hover{background:#fff2}.moon-art{position:absolute;right:max(4vw,12px);top:80px;width:min(35vw,430px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 33% 35%,#fff0d2 0,#e5cda7 33%,#b6a48f 64%,#877c81 100%);box-shadow:0 0 50px #fff2b944,0 0 150px #f4ad6b1f;opacity:.82;filter:grayscale(.12);overflow:hidden}.moon-art:after{content:'';position:absolute;inset:-30%;opacity:.28;background:radial-gradient(circle at 27% 42%,#544838 0 4%,transparent 5%),radial-gradient(circle at 65% 45%,#4b473f 0 8%,transparent 9%),radial-gradient(circle at 39% 73%,#76695d 0 12%,transparent 13%),radial-gradient(circle at 56% 21%,#6b5e54 0 7%,transparent 8%)}
.metrics-strip{position:relative;z-index:2;background:#f2e9dd;border-bottom:1px solid #e5dbd1;padding:23px 0}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:center}.metrics .m-title{font-family:var(--serif);font-size:26px;color:#6a5160;margin-bottom:0}.metrics .m-description{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:#65616a;font-weight:700}
.section{padding:102px 0}.section-head{max-width:780px;margin-bottom:52px}.kicker{text-transform:uppercase;letter-spacing:.22em;color:#946c75;font-size:11px;font-weight:800;margin-bottom:19px}.section h2,.simple h1{font-family:var(--serif);font-size:clamp(40px,5.2vw,69px);font-weight:400;line-height:1.13;letter-spacing:-.02em;margin-bottom:22px}.section-head p,.lead{font-size:17px;color:#60636c;max-width:620px}.promise-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.promise{background:#fffcf7;padding:35px 32px;border:1px solid #ebdfd0;min-height:260px;box-shadow:0 10px 35px #675c4c0a}.promise .symbol{font-family:var(--serif);font-size:52px;color:#a68a9d;margin-bottom:18px;line-height:1}.promise h3{font-family:var(--serif);font-size:28px;font-weight:400;margin-bottom:11px}.promise p{font-size:14px;color:#64646e;line-height:1.85;margin-bottom:0}
.soft-section{background:#ece8e2}.dark-section{background:var(--night);color:#f4efe5}.dark-section .section-head p{color:#bfc3cd}.shelf-head{display:flex;gap:20px;align-items:end;justify-content:space-between}.story-toolbar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:35px;margin-bottom:28px}.story-toolbar[hidden]{display:none}.select-label{font-size:13px;color:#d8d2d1}.filter{background:#202b3f;border:1px solid #626576;color:#fcf2e9;padding:12px 18px;border-radius:5px;min-width:200px}.filter option{color:#fff}.shelf-empty{border:1px solid #5f596160;border-radius:8px;min-height:280px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:45px 25px;background:linear-gradient(135deg,#ffffff08,#ffffff01)}.shelf-empty[hidden]{display:none}.shelf-empty .mini-star{font-size:30px;color:#e3c193;margin-bottom:13px}.shelf-empty h3{font-family:var(--serif);font-size:33px;font-weight:400;margin-bottom:4px}.shelf-empty p{font-size:14px;color:#c7c2c7;max-width:490px;margin-bottom:0}.stories-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.story-card{border:1px solid #e4dacd;border-radius:8px;overflow:hidden;background:#fffdf9;color:var(--ink)}.story-image{height:210px;background:linear-gradient(140deg,#282e46,#a38b8e);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:54px;color:#f7dabb}.story-image img{height:100%;width:100%;object-fit:cover}.story-body{padding:24px}.story-body .meta{font-size:11px;letter-spacing:.09em;color:#a07784;text-transform:uppercase;font-weight:700}.story-body h3{font:400 28px/1.1 var(--serif);margin:13px 0}.story-body p{font-size:14px;color:#5e6070}.story-link{color:#75566a;font-size:13px;font-weight:700}
.how-grid{display:grid;grid-template-columns:1.04fr 1fr;align-items:center;gap:90px}.how-art{min-height:420px;border-radius:160px 160px 12px 12px;background:linear-gradient(165deg,#283447 7%,#495069 60%,#b2a297);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#f6ebe1;text-align:center;padding:45px;position:relative;overflow:hidden}.how-art:before{content:'☾';font-size:180px;line-height:1;font-family:Georgia;color:#f6dec3;opacity:.75}.how-art p{position:relative;z-index:2;font-family:var(--serif);font-size:30px;max-width:280px;margin-top:16px}.steps{display:flex;flex-direction:column;gap:20px}.step{display:flex;gap:22px;padding:0 0 23px;border-bottom:1px solid #ded4ce}.step .n{font-family:var(--serif);font-size:36px;line-height:1;color:#9b7580}.step h3{font-family:var(--serif);font-size:26px;font-weight:400;margin:0 0 5px}.step p{font-size:14px;color:#62626b;line-height:1.8;margin:0}
.closing{padding:90px 0;text-align:center;background:#eadbcf}.closing h2{font:400 clamp(44px,5vw,66px)/1.07 var(--serif);max-width:750px;margin:0 auto 18px}.closing p{max-width:610px;margin:0 auto 32px;color:#635c5c}.closing .btn{background:#232c40;color:white}
.site-footer{background:#111827;color:#ddd7d5;padding:75px 0 27px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:65px;padding-bottom:65px}.footer-brand{font:400 27px var(--serif);margin-bottom:16px}.footer-grid p{font-size:13px;color:#c1bdc1;max-width:350px}.footer-links{display:flex;flex-direction:column;gap:10px}.footer-links h3{color:#fff1d9;letter-spacing:.15em;text-transform:uppercase;font-size:11px}.footer-links a{font-size:13px;text-decoration:none;color:#c9c4c4}.footer-links a:hover{color:#f8d1b1}.copyright{border-top:1px solid #ffffff27;padding-top:24px;font-size:11px;letter-spacing:.03em;color:#a9a6ac}
.simple{padding:85px 0 115px;min-height:62vh}.simple .narrow{max-width:760px}.simple h1{margin-bottom:25px}.simple p,.simple li{color:#535661;font-size:16px;line-height:1.95}.simple h2{font-family:var(--serif);font-weight:400;font-size:34px;margin-top:45px}.note{padding:25px 28px;background:#f2e8dd;border-left:3px solid #b48c83;border-radius:4px;color:#514b51}.prose a{color:#806073}.crumb{font-size:13px;color:#8d7981;margin-bottom:24px}.crumb a{text-decoration:none}
@media (max-width:1000px){.moon-art{right:-180px;opacity:.25}.hero-main{max-width:800px}.how-grid{gap:35px}.site-header{padding-inline:35px}}
@media (max-width:740px){.wrap{width:min(100% - 36px,1160px)}.site-header{padding:21px 20px;flex-wrap:wrap}.brand{font-size:17px}.mobile-nav{display:block;border:1px solid #f8e8de55;background:transparent;color:white;border-radius:6px;padding:7px 14px}.main-nav{display:none;width:100%;flex-direction:column;align-items:flex-start;gap:15px;padding:15px 0 0}.main-nav.is-open{display:flex}.hero{padding:90px 0 98px;min-height:600px}.hero h1{font-size:clamp(58px,13vw,83px)}.hero-copy{font-size:16px}.moon-art{right:-200px;top:200px;width:430px}.section{padding:70px 0}.metrics{grid-template-columns:1fr;gap:15px}.metrics>div+div{border-top:1px solid #dfd2c8;padding-top:12px}.promise-cards,.stories-grid,.footer-grid{grid-template-columns:1fr}.how-grid{grid-template-columns:1fr}.how-art{min-height:280px;max-width:450px}.how-art:before{font-size:140px}.footer-grid{gap:28px}.closing{padding:65px 0}.shelf-head{display:block}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Real QA-cleared story pages only; no synthetic/placeholder products. */
.story-reading { padding: 4rem 0 6rem; }
.story-reading .story-feature {display:block;width:100%;max-width:680px;height:auto;border-radius:18px;margin:2rem auto 2.5rem;}
.story-reading .story-prose {font-size:1.17rem;line-height:1.9;letter-spacing:.008em;max-width:65ch;margin:0 auto 2.5rem;}
.story-reading .story-prose p {margin:0 0 1.15em;}
.story-reading .story-prose h2,.story-reading .story-prose h3 {margin:2rem 0 1rem;}
.story-reading .text-link{display:inline-block;margin:1rem 0 1.5rem;text-underline-offset:4px;}

/* Reused buyer/recovery forms: no parallel storefront CSS or missing /style.css. */
.commerce-page form{margin:25px 0 30px;max-width:550px}
.commerce-page label{display:block;color:#514b51;font-size:14px;font-weight:700;margin-bottom:6px}
.commerce-page input[type=email]{display:block;width:100%;background:#fffefb;border:1px solid #aca1a0;border-radius:5px;color:#182234;padding:13px 14px;min-height:48px;margin:8px 0 18px}
.commerce-page button:not(.mobile-nav){display:inline-flex;align-items:center;justify-content:center;min-height:48px;max-width:100%;background:#232c40;color:#fff;border:1px solid #232c40;border-radius:24px;padding:11px 21px;font-weight:700}
.commerce-page button:not(.mobile-nav):hover{background:#35405a}
.commerce-page .text-link{display:inline-block;margin:10px 0}

/* Published free-reader HTML is immutable and has no collapsible-menu button.
   Show its three plain navigation links on phones without requiring JS. */
@media (max-width:740px){
  .site-header nav.main-nav:not([id]){display:flex;width:100%;flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px 20px;padding:11px 0 0}
}
