:root{--navy:#142b5f;--navy-2:#1e3a73;--sage:#507a70;--sage-2:#73988e;--orange:#f5a04a;--orange-ink:#8a4a0d;--bg:#fafbf8;--surface:#fff;--ink:#16233d;--muted:#667085;--border:#e6eae7;--border-strong:#d3dad6;--danger:#b42318;--danger-bg:#fef3f2;--ok:#3f6b52;--ok-bg:#eef5f0;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--r-1:6px;--r-2:8px;--r-3:12px;--r-4:16px;--shadow-1:0 1px 2px #142b5f0f;--shadow-2:0 1px 2px #142b5f0d, 0 8px 24px -12px #142b5f2e;--sans:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--maxw:1120px;--measure:68ch}html[data-theme=dark]{--navy:#dce6f7;--navy-2:#b9cdf0;--sage:#9dc3b6;--sage-2:#7fa89b;--orange:#f0a95c;--orange-ink:#f6c98f;--bg:#0d1524;--surface:#131d30;--ink:#e8edf6;--muted:#9aa7bd;--border:#26324a;--border-strong:#35435e;--danger:#fda29b;--danger-bg:#2a1512;--ok:#9dc3b6;--ok-bg:#16241f;--shadow-1:0 1px 2px #0006;--shadow-2:0 1px 2px #0006, 0 8px 24px -12px #000000b3}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}h1,h2,h3,h4{letter-spacing:-.015em;margin:0;font-weight:600;line-height:1.2}h1{font-size:clamp(1.9rem,1.2rem + 2.6vw,3rem)}h2{font-size:clamp(1.4rem,1.1rem + 1.2vw,2rem)}h3{font-size:1.125rem}p{margin:0}a{color:var(--navy-2);text-underline-offset:2px;text-decoration-thickness:1px}a:hover{color:var(--sage)}ul,ol{margin:0;padding-left:1.15rem}li{margin:.25rem 0}img{max-width:100%;display:block}hr{border:0;border-top:1px solid var(--border);margin:var(--sp-8) 0}:focus-visible{outline:2px solid var(--sage);outline-offset:2px;border-radius:3px}.wrap{width:100%;max-width:var(--maxw);padding:0 var(--sp-5);margin:0 auto}.wrap-narrow{width:100%;max-width:760px;padding:0 var(--sp-5);margin:0 auto}.section{padding:var(--sp-16) 0}.section-tight{padding:var(--sp-12) 0}.stack{flex-direction:column;display:flex}.gap-1{gap:var(--sp-1)}.gap-2{gap:var(--sp-2)}.gap-3{gap:var(--sp-3)}.gap-4{gap:var(--sp-4)}.gap-5{gap:var(--sp-5)}.gap-6{gap:var(--sp-6)}.gap-8{gap:var(--sp-8)}.gap-10{gap:var(--sp-10)}.gap-12{gap:var(--sp-12)}.row{flex-wrap:wrap;align-items:center;display:flex}.between{justify-content:space-between}.grid-2,.grid-3{gap:var(--sp-6);grid-template-columns:1fr;display:grid}.grid-4{gap:var(--sp-4);grid-template-columns:repeat(2,1fr);display:grid}@media (width>=720px){.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}}.muted{color:var(--muted)}.small{font-size:.875rem}.tiny{font-size:.78rem}.mono{font-family:var(--mono)}.measure{max-width:var(--measure)}.center{text-align:center}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--sage);font-size:.72rem;font-weight:600}.divider{background:var(--border);border:0;height:1px}.site-header{z-index:40;background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);position:sticky;top:0}.site-header .wrap{align-items:center;gap:var(--sp-5);min-height:64px;display:flex}.brand{color:var(--ink);letter-spacing:-.01em;align-items:center;gap:10px;font-weight:650;text-decoration:none;display:inline-flex}.brand:hover{color:var(--ink)}.brand-mark{flex:none;width:22px;height:22px}.site-nav{gap:var(--sp-5);margin-left:var(--sp-4);display:none}.site-nav a{color:var(--muted);font-size:.92rem;text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--ink)}@media (width>=860px){.site-nav{display:flex}}.header-actions{align-items:center;gap:var(--sp-2);margin-left:auto;display:flex}.theme-toggle{border:1px solid var(--border);border-radius:var(--r-2);width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:inline-flex}.theme-toggle:hover{color:var(--ink);border-color:var(--border-strong)}.btn{min-height:44px;padding:0 var(--sp-5);font:inherit;border-radius:var(--r-2);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;font-size:.94rem;font-weight:550;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.btn-primary{background:var(--navy-2);color:#fff}html[data-theme=dark] .btn-primary{color:#0d1524}.btn-primary:hover{background:var(--navy);color:#fff}html[data-theme=dark] .btn-primary:hover{color:#0d1524}.btn-secondary{border-color:var(--border-strong);color:var(--ink);background:0 0}.btn-secondary:hover{border-color:var(--sage);color:var(--ink)}.btn-ghost{color:var(--muted);padding:0 var(--sp-3);background:0 0}.btn-ghost:hover{color:var(--ink)}.btn-accent{background:var(--orange);color:#3a2408}.btn-accent:hover{color:#3a2408;background:#e8923a}.btn-danger{border-color:var(--danger);color:var(--danger);background:0 0}.btn-danger:hover{background:var(--danger-bg)}.btn-sm{min-height:36px;padding:0 var(--sp-4);font-size:.875rem}.btn-block{width:100%}.btn[disabled],.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-3);padding:var(--sp-6)}.card-flat{border:1px solid var(--border);background:0 0}.card-quiet{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-3);padding:var(--sp-5)}.card-head{justify-content:space-between;align-items:baseline;gap:var(--sp-4);margin-bottom:var(--sp-4);display:flex}.pill{border:1px solid var(--border-strong);color:var(--muted);background:0 0;border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:.75rem;font-weight:550;display:inline-flex}.pill-sage{border-color:var(--sage);color:var(--sage)}.pill-orange{border-color:var(--orange);color:var(--orange-ink)}.pill-navy{border-color:var(--navy-2);color:var(--navy-2)}.field{flex-direction:column;gap:6px;display:flex}.field>label,.label{color:var(--ink);font-size:.875rem;font-weight:550}.hint{color:var(--muted);font-size:.8rem}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=time],select,textarea{width:100%;min-height:44px;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-2);padding:10px 12px;font-size:.95rem}textarea{resize:vertical;min-height:96px;line-height:1.55}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--sage)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.8}.choice-grid{gap:var(--sp-3);grid-template-columns:1fr;display:grid}@media (width>=640px){.choice-grid{grid-template-columns:repeat(2,1fr)}}.choice{gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--border-strong);border-radius:var(--r-2);background:var(--surface);cursor:pointer;align-items:flex-start;min-height:44px;display:flex}.choice:hover{border-color:var(--sage)}.choice input{accent-color:var(--sage);flex:none;margin-top:3px}.choice-body{flex-direction:column;gap:2px;display:flex}.choice-title{font-size:.95rem;font-weight:550}.choice:has(input:checked){border-color:var(--sage);background:var(--ok-bg)}.energy-row{gap:var(--sp-2);grid-template-columns:repeat(4,1fr);display:grid}.energy{min-height:60px;padding:var(--sp-2);border:1px solid var(--border-strong);border-radius:var(--r-2);background:var(--surface);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:.85rem;display:flex}.energy:has(input:checked){border-color:var(--orange);background:color-mix(in srgb, var(--orange) 14%, var(--surface))}.energy input{accent-color:var(--orange);margin:0}.alert{padding:var(--sp-3) var(--sp-4);border-radius:var(--r-2);border:1px solid;font-size:.9rem}.alert-error{color:var(--danger);border-color:var(--danger);background:var(--danger-bg)}.alert-ok{color:var(--ok);border-color:var(--ok);background:var(--ok-bg)}.alert-warn{color:var(--orange-ink);border-color:var(--orange);background:color-mix(in srgb, var(--orange) 12%, var(--surface))}.hero{padding:var(--sp-16) 0 var(--sp-12)}.hero h1{max-width:20ch}.hero-lede{color:var(--muted);max-width:56ch;margin-top:var(--sp-5);font-size:1.1rem}.hero-actions{gap:var(--sp-3);margin-top:var(--sp-8);flex-wrap:wrap;display:flex}.hero-grid{gap:var(--sp-10);grid-template-columns:1fr;align-items:start;display:grid}@media (width>=960px){.hero-grid{gap:var(--sp-12);grid-template-columns:1.05fr .95fr}}.band{background:var(--navy);color:#eef2fa}.band h2,.band h3{color:#fff}.band .muted{color:#b9c6de}.band a{color:#fff}.band-sage{background:var(--sage);color:#f2f7f5}.band-sage h2,.band-sage h3{color:#fff}.band-sage .muted{color:#dcece6}.band-sage a{color:#fff}.band-paper{background:color-mix(in srgb, var(--sage) 8%, var(--bg))}.step-list{counter-reset:step;gap:var(--sp-6);grid-template-columns:1fr;display:grid}@media (width>=720px){.step-list{grid-template-columns:repeat(5,1fr)}}.step{padding-top:var(--sp-6);border-top:2px solid var(--border-strong);position:relative}.step:before{counter-increment:step;content:counter(step, decimal-leading-zero);background:var(--bg);font-family:var(--mono);color:var(--sage);padding-right:8px;font-size:.75rem;position:absolute;top:-.85rem;left:0}.step h3{margin-bottom:4px}.feature{border-top:1px solid var(--border);padding-top:var(--sp-5)}.feature h3{margin-bottom:6px}.faq{border-top:1px solid var(--border);padding:var(--sp-5) 0}.faq summary{cursor:pointer;min-height:32px;font-weight:550}.faq summary::marker{color:var(--sage)}.faq p{margin-top:var(--sp-3);color:var(--muted);max-width:var(--measure)}.price-grid{gap:var(--sp-5);grid-template-columns:1fr;align-items:start;display:grid}@media (width>=860px){.price-grid{grid-template-columns:repeat(3,1fr)}}.price-card{gap:var(--sp-4);flex-direction:column;display:flex}.price-card .amount{letter-spacing:-.02em;font-size:2.25rem;font-weight:650}.price-card ul{flex-direction:column;gap:8px;padding:0;list-style:none;display:flex}.price-card li{align-items:flex-start;gap:10px;font-size:.92rem;display:flex}.price-card li:before{content:"";background:var(--sage);border-radius:50%;flex:none;width:6px;height:6px;margin-top:9px}.site-footer{border-top:1px solid var(--border);padding:var(--sp-12) 0 var(--sp-8);margin-top:var(--sp-16)}.footer-grid{gap:var(--sp-8);grid-template-columns:1fr;display:grid}@media (width>=720px){.footer-grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}.footer-col h4{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:var(--sp-3);font-size:.78rem}.footer-col a{color:var(--ink);padding:4px 0;font-size:.92rem;text-decoration:none;display:block}.footer-col a:hover{color:var(--sage)}.attribution{margin-top:var(--sp-8);padding-top:var(--sp-5);border-top:1px solid var(--border)}.attribution a{color:var(--muted)}.app-shell{grid-template-columns:1fr;min-height:100vh;display:grid}@media (width>=1024px){.app-shell{grid-template-columns:248px 1fr}}.app-side{border-right:1px solid var(--border);padding:var(--sp-6) var(--sp-5);display:none}@media (width>=1024px){.app-side{display:block}}.app-side nav{margin-top:var(--sp-6);flex-direction:column;gap:2px;display:flex}.app-side nav a{min-height:40px;padding:0 var(--sp-3);border-radius:var(--r-2);color:var(--muted);align-items:center;font-size:.94rem;text-decoration:none;display:flex}.app-side nav a:hover{background:color-mix(in srgb, var(--sage) 10%, transparent);color:var(--ink)}.app-side nav a[aria-current=page]{background:color-mix(in srgb, var(--sage) 16%, transparent);color:var(--ink);font-weight:550}.app-side .side-group{margin-top:var(--sp-6)}.app-side .side-group h4{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:var(--sp-2);font-size:.72rem}.app-main{padding:var(--sp-6) var(--sp-5) 96px}@media (width>=1024px){.app-main{padding:var(--sp-10) var(--sp-8) var(--sp-16)}}.app-main-inner{max-width:880px;margin:0 auto}.app-topbar{align-items:center;gap:var(--sp-4);margin-bottom:var(--sp-8);display:flex}.app-topbar .spacer{flex:1}.bottom-nav{z-index:40;background:var(--surface);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}@media (width>=1024px){.bottom-nav{display:none}}.bottom-nav a{min-height:56px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:.72rem;text-decoration:none;display:flex}.bottom-nav a[aria-current=page]{color:var(--navy-2);font-weight:550}.next-step{border:1px solid var(--border);border-left:3px solid var(--orange);border-radius:var(--r-3);background:var(--surface);padding:var(--sp-6)}.next-step .goal-line{color:var(--muted);font-size:.82rem}.next-step h2{margin-top:6px;font-size:clamp(1.3rem,1.1rem + .9vw,1.75rem)}.meta-row{gap:var(--sp-2);margin-top:var(--sp-4);flex-wrap:wrap;display:flex}.action-row{gap:var(--sp-3);margin-top:var(--sp-6);flex-wrap:wrap;display:flex}.momentum{gap:var(--sp-4);grid-template-columns:repeat(2,1fr);display:grid}@media (width>=640px){.momentum{grid-template-columns:repeat(4,1fr)}}.metric{border-top:2px solid var(--border-strong);padding-top:var(--sp-3)}.metric .num{letter-spacing:-.02em;font-size:1.6rem;font-weight:650}.metric .lbl{color:var(--muted);font-size:.8rem}.lattice-path{margin:var(--sp-5) 0;align-items:center;gap:0;display:flex}.node{border:2px solid var(--border-strong);background:var(--bg);border-radius:50%;flex:none;width:12px;height:12px}.node.done{background:var(--sage);border-color:var(--sage)}.node.current{background:var(--orange);border-color:var(--orange)}.link-line{background:var(--border-strong);flex:1;height:2px}.link-line.done{background:var(--sage)}.action-item{gap:var(--sp-4);padding:var(--sp-4) 0;border-bottom:1px solid var(--border);align-items:flex-start;display:flex}.action-item:last-child{border-bottom:0}.action-item .body{flex:1;min-width:0}.action-item .title{font-weight:550}.action-item.done .title{color:var(--muted);text-decoration:line-through}.action-item .controls{gap:var(--sp-2);flex-wrap:wrap;display:flex}.chat-scroll{gap:var(--sp-4);flex-direction:column;display:flex}.bubble{max-width:62ch;padding:var(--sp-4);border-radius:var(--r-3);white-space:pre-wrap;font-size:.95rem}.bubble-user{background:var(--navy-2);color:#fff;align-self:flex-end}html[data-theme=dark] .bubble-user{color:#0d1524}.bubble-coach{background:var(--surface);border:1px solid var(--border);align-self:flex-start}.composer{gap:var(--sp-3);margin-top:var(--sp-5);align-items:flex-end;display:flex}.composer textarea{min-height:52px}.quick-actions{gap:var(--sp-2);margin-top:var(--sp-3);flex-wrap:wrap;display:flex}.progress-track{background:var(--border);border-radius:999px;height:6px;overflow:hidden}.progress-fill{background:var(--sage);height:100%}.progress-fill.accent{background:var(--orange)}.empty{border:1px dashed var(--border-strong);border-radius:var(--r-3);padding:var(--sp-8);text-align:center}.skeleton{background:linear-gradient(90deg, var(--border) 25%, var(--border-strong) 37%, var(--border) 63%);border-radius:var(--r-1);background-size:400% 100%;height:14px;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}.progress-bar{z-index:60;background:var(--orange);transform-origin:0;height:3px;animation:linear both fill;animation-timeline:scroll(root);position:fixed;top:0;left:0;right:0;transform:scaleX(0)}@keyframes fill{to{transform:scaleX(1)}}.caret:after{content:"_";color:var(--orange);margin-left:2px;animation:1.1s step-end infinite blink}@keyframes blink{50%{opacity:0}}.reveal{animation:.5s both rise;animation-timeline:view();animation-range:entry cover 26%}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.progress-bar{animation:none;transform:scaleX(1)}.caret:after,.reveal,.skeleton{animation:none}*{transition-duration:.01ms!important}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mt-2{margin-top:var(--sp-2)}.mt-3{margin-top:var(--sp-3)}.mt-4{margin-top:var(--sp-4)}.mt-5{margin-top:var(--sp-5)}.mt-6{margin-top:var(--sp-6)}.mt-8{margin-top:var(--sp-8)}.mt-10{margin-top:var(--sp-10)}.mt-12{margin-top:var(--sp-12)}.mb-2{margin-bottom:var(--sp-2)}.mb-3{margin-bottom:var(--sp-3)}.mb-4{margin-bottom:var(--sp-4)}.mb-6{margin-bottom:var(--sp-6)}.mb-8{margin-bottom:var(--sp-8)}
