:root { --ink:#17372f; --forest:#244b3e; --sage:#dce5d8; --cream:#f7f3ea; --paper:#fffdf8; --rust:#c66743; --line:rgba(23,55,47,.16); --font-sans:'DM Sans'; --font-display:'Cormorant Garamond'; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--cream); color:var(--ink); font-family:var(--font-sans), sans-serif; }
a { color:inherit; text-decoration:none; }
button, a { -webkit-tap-highlight-color:transparent; }
.site-header { height:86px; padding:0 clamp(24px,5vw,76px); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); background:rgba(247,243,234,.92); backdrop-filter:blur(14px); position:relative; z-index:10; }
.brand { display:flex; gap:11px; align-items:center; font-weight:600; letter-spacing:-.03em; font-size:19px; }
.brand-mark { width:35px; height:35px; border:1px solid var(--ink); border-radius:50%; display:grid; place-items:center; font:600 11px/1 var(--font-sans); letter-spacing:.08em; }
nav { display:flex; gap:32px; align-items:center; font-size:13px; }
nav a { opacity:.75; transition:.2s; } nav a:hover { opacity:1; }
.nav-cta { border-bottom:1px solid var(--ink); padding:8px 0; font-size:13px; font-weight:600; }
.nav-cta span { margin-left:8px; }
.hero { min-height:700px; display:grid; grid-template-columns:1.12fr .88fr; gap:7vw; align-items:center; padding:78px clamp(24px,7vw,112px) 92px; overflow:hidden; }
.eyebrow { text-transform:uppercase; letter-spacing:.18em; font-size:10px; font-weight:600; display:flex; gap:10px; align-items:center; }
.eyebrow span { width:23px; height:1px; background:currentColor; display:inline-block; }
.hero h1, .section h2, .closing h2, .info-hero h1 { font:500 clamp(54px,6vw,93px)/.92 var(--font-display),serif; letter-spacing:-.045em; margin:27px 0; }
.hero h1 em { color:var(--rust); font-weight:500; }
.hero-lede { max-width:610px; font-size:17px; line-height:1.75; opacity:.76; }
.hero-actions { display:flex; gap:28px; align-items:center; margin-top:38px; }
.primary-button, .light-button { border:0; background:var(--forest); color:#fff; padding:17px 21px; font:600 13px var(--font-sans); display:inline-flex; gap:34px; align-items:center; cursor:pointer; }
.primary-button:disabled { opacity:1; }
.text-link { font-size:13px; border-bottom:1px solid var(--ink); padding:7px 0; }
.status { font-size:11px; opacity:.58; margin-top:13px; }
.trust-row { display:flex; flex-wrap:wrap; gap:25px; list-style:none; padding:0; margin:48px 0 0; font-size:11px; text-transform:uppercase; letter-spacing:.07em; }
.trust-row li:before { content:"✓"; color:var(--rust); margin-right:7px; }
.hero-card { background:var(--forest); color:white; min-height:520px; padding:28px 34px 34px; position:relative; box-shadow:22px 22px 0 var(--sage); }
.hero-card:before { content:""; position:absolute; width:190px; height:190px; border:1px solid rgba(255,255,255,.1); border-radius:50%; right:-35px; top:-45px; }
.card-topline { display:flex; justify-content:space-between; text-transform:uppercase; font-size:9px; letter-spacing:.15em; opacity:.66; }
.orb { width:140px; height:140px; border:1px solid rgba(255,255,255,.35); border-radius:50%; margin:48px auto 33px; display:flex; flex-direction:column; align-items:center; justify-content:center; position:relative; }
.orb:after { content:""; position:absolute; inset:9px; border:1px solid rgba(255,255,255,.12); border-radius:50%; }
.orb span { font:500 47px/1 var(--font-display); }.orb small { text-transform:uppercase; letter-spacing:.16em; font-size:8px; opacity:.65; }
.hero-card h2 { font:500 33px/1.05 var(--font-display); max-width:370px; margin:0 auto 26px; text-align:center; }
.preview-question { border-top:1px solid rgba(255,255,255,.2); padding-top:18px; }.preview-question p { font-size:11px; opacity:.7; }
.preview-options { display:flex; flex-wrap:wrap; gap:7px; }.preview-options span { border:1px solid rgba(255,255,255,.25); padding:7px 10px; font-size:10px; }
.card-note { font-size:10px; text-align:center; opacity:.55; margin-top:22px; }
.proof-strip { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:24px clamp(24px,7vw,112px); font-size:10px; letter-spacing:.12em; text-transform:uppercase; text-align:center; }
.proof-strip p:not(:last-child) { border-right:1px solid var(--line); }
.section { padding:120px clamp(24px,7vw,112px); }
.section-intro { max-width:730px; }.section h2 { font-size:clamp(44px,5vw,70px); }.section-intro>p:last-child { max-width:610px; line-height:1.8; opacity:.7; }
.steps { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); margin-top:76px; border:1px solid var(--line); }
.steps article { background:var(--cream); padding:36px; min-height:270px; }.steps b { color:var(--rust); font:500 34px var(--font-display); }.steps h3,.principle-grid h3 { font:500 28px/1.1 var(--font-display); margin:47px 0 15px; }.steps p,.principle-grid p { font-size:13px; line-height:1.75; opacity:.68; }
.profile-section { background:var(--forest); color:white; }.split-intro { max-width:none; display:grid; grid-template-columns:1.3fr .7fr; gap:12vw; align-items:end; }.split-intro p:last-child { opacity:.65; }.light { color:#dfe9dc; }
.profile-list { margin-top:65px; border-top:1px solid rgba(255,255,255,.2); }.profile-row { display:grid; grid-template-columns:60px 1fr 1.3fr 25px; gap:30px; align-items:center; min-height:105px; border-bottom:1px solid rgba(255,255,255,.2); transition:.2s; }.profile-row:hover { padding-left:8px; background:rgba(255,255,255,.025); }.profile-list span { font-size:10px; opacity:.45; }.profile-list h3 { font:500 25px var(--font-display); }.profile-list p { font-size:12px; opacity:.62; }.profile-list b { color:#dfe9dc; }
.standards { background:var(--paper); }.principle-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; margin:65px 0 48px; }.principle-grid article { border-top:1px solid var(--ink); padding-top:19px; }.principle-grid span { color:var(--rust); font-size:10px; }.principle-grid h3 { margin-top:44px; }.outline-button { border:1px solid var(--ink); padding:15px 19px; display:inline-block; font-size:12px; font-weight:600; }
.closing { padding:105px 24px; text-align:center; background:var(--rust); color:white; }.closing .eyebrow { justify-content:center; }.closing h2 { font-size:clamp(48px,6vw,80px); max-width:850px; margin:27px auto; }.closing>p:not(.eyebrow) { opacity:.75; }.light-button { background:white; color:var(--rust); margin-top:27px; }
footer { background:#102c25; color:white; padding:65px clamp(24px,7vw,112px) 28px; display:grid; grid-template-columns:1.3fr 1fr; gap:50px; }.footer-brand { display:flex; gap:16px; }.footer-brand strong { font-size:18px; }.footer-brand p { opacity:.52; font-size:12px; }.footer-links { display:grid; grid-template-columns:1fr 1fr; gap:40px; }.footer-links div { display:flex; flex-direction:column; gap:10px; font-size:11px; opacity:.75; }.footer-links b { text-transform:uppercase; letter-spacing:.12em; opacity:.55; margin-bottom:8px; }.fineprint { font-size:10px; line-height:1.6; opacity:.45; max-width:690px; }.copyright { font-size:10px; opacity:.4; text-align:right; align-self:end; }
.info-page { min-height:100vh; }.back-link { font-size:12px; }.info-hero { padding:110px clamp(24px,13vw,210px) 85px; border-bottom:1px solid var(--line); }.info-hero h1 { max-width:900px; }.info-hero>p:last-child { max-width:680px; line-height:1.8; opacity:.72; font-size:17px; }.info-sections { padding:40px clamp(24px,13vw,210px) 120px; }.info-sections article { display:grid; grid-template-columns:70px 1fr; gap:25px; padding:46px 0; border-bottom:1px solid var(--line); max-width:900px; }.info-sections article>span { color:var(--rust); font-size:11px; }.info-sections h2 { font:500 34px var(--font-display); margin:0 0 13px; }.info-sections p { margin:0; line-height:1.8; opacity:.7; font-size:14px; }.minimal-footer { display:flex; justify-content:space-between; padding:25px clamp(24px,7vw,112px); font-size:10px; }
.learn-grid,.blog-grid { padding:75px clamp(24px,7vw,112px) 110px; display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--line); }.learn-card,.blog-grid article { background:var(--cream); padding:38px; min-height:320px; }.learn-card>span,.blog-grid article>span { color:var(--rust); text-transform:uppercase; letter-spacing:.12em; font-size:9px; }.learn-card>p:first-of-type { text-transform:uppercase; letter-spacing:.1em; font-size:9px; margin-top:45px; opacity:.55; }.learn-card h2,.blog-grid h2 { font:500 38px var(--font-display); margin:12px 0; }.learn-card p,.blog-grid p { line-height:1.7; font-size:13px; opacity:.68; }.learn-card b,.blog-grid b { display:block; margin-top:32px; font-size:11px; }.learn-note,.disclosure-panel { background:var(--paper); padding:85px clamp(24px,13vw,210px); }.learn-note h2,.disclosure-panel h2 { font:500 48px/1 var(--font-display); max-width:700px; }.learn-note p,.disclosure-panel p { max-width:700px; line-height:1.8; opacity:.7; }.disclosure-panel a { display:inline-block; margin-top:22px; border-bottom:1px solid; font-size:12px; }
.profile-hero { padding:90px clamp(24px,10vw,160px); display:grid; grid-template-columns:100px 1fr; border-bottom:1px solid var(--line); }.profile-hero>span { color:var(--rust); font:500 40px var(--font-display); }.profile-hero h1 { font:500 clamp(60px,8vw,112px)/.9 var(--font-display); margin:22px 0; }.profile-hero>div>p:last-child { font-size:17px; opacity:.66; }.profile-story,.checkpoint { padding:90px clamp(24px,13vw,210px); }.profile-story h2,.checkpoint h2,.profile-cautions h2,.routine-grid h2 { font:500 42px/1.05 var(--font-display); }.large-copy { font:500 29px/1.35 var(--font-display); max-width:830px; }.profile-story>p:not(.large-copy),.checkpoint>p:last-child { line-height:1.8; opacity:.68; max-width:720px; }.signal-list { margin-top:50px; border-left:1px solid var(--rust); padding:5px 0 5px 30px; }.signal-list h3 { font:500 23px var(--font-display); }.signal-list p { font-size:13px; opacity:.68; }.routine-grid { display:grid; grid-template-columns:1fr 1fr; background:var(--paper); }.routine-grid>article { padding:80px clamp(24px,7vw,110px); }.routine-grid>article:first-child { border-right:1px solid var(--line); }.routine-step { display:grid; grid-template-columns:30px 1fr; gap:16px; padding:15px 0; border-bottom:1px solid var(--line); }.routine-step b { color:var(--rust); font:500 20px var(--font-display); }.routine-step p { font-size:13px; }.profile-cautions { padding:85px clamp(24px,10vw,160px); display:grid; grid-template-columns:1fr 1fr; gap:80px; background:var(--forest); color:white; }.profile-cautions>div:last-child { padding-top:35px; }.profile-cautions p { font-size:13px; opacity:.7; line-height:1.7; }.checkpoint h2 { max-width:850px; }.sources { padding:40px clamp(24px,13vw,210px) 80px; display:flex; flex-direction:column; gap:12px; border-top:1px solid var(--line); }.sources h2 { font:500 26px var(--font-display); }.sources a { font-size:11px; text-decoration:underline; text-underline-offset:4px; }
@media (max-width:900px) { nav { display:none; }.hero { grid-template-columns:1fr; padding-top:60px; }.hero h1 { font-size:clamp(52px,14vw,76px); }.hero-card { max-width:600px; }.proof-strip { grid-template-columns:1fr 1fr; gap:15px 0; }.proof-strip p:nth-child(2) { border-right:0; }.steps,.principle-grid,.learn-grid,.blog-grid { grid-template-columns:1fr; }.split-intro { grid-template-columns:1fr; gap:10px; }.profile-row { grid-template-columns:35px 1fr 25px; }.profile-list p { display:none; } .routine-grid,.profile-cautions { grid-template-columns:1fr; }.routine-grid>article:first-child { border-right:0; border-bottom:1px solid var(--line); } footer { grid-template-columns:1fr; }.copyright { text-align:left; } }
@media (max-width:560px) { .site-header { height:72px; }.nav-cta { display:none; }.hero { padding-left:20px; padding-right:20px; }.hero-actions { align-items:flex-start; flex-direction:column; gap:12px; }.trust-row { gap:12px; }.hero-card { min-height:500px; padding:24px; box-shadow:10px 10px 0 var(--sage); }.proof-strip { grid-template-columns:1fr; text-align:left; }.proof-strip p { border-right:0!important; }.section { padding:85px 20px; }.steps article { min-height:auto; }.profile-list h3 { font-size:22px; }.info-hero,.info-sections { padding-left:24px; padding-right:24px; }.minimal-footer { flex-direction:column; gap:12px; } }
