/* One visual language for the public site, app and installed shell. Self-hosted. */
@font-face{font-family:Geist;font-style:normal;font-weight:300 900;font-display:swap;src:url(/fonts/Geist-latin.woff2) format('woff2')}
@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/InstrumentSerif-italic-latin.woff2) format('woff2')}
:root,:root[data-theme="light"]{
  --bg:#f5f2e9;--bg-2:#fffef8;--bg2:#eeeede;--surf:#fffef8;--surf2:#e8eddf;
  --ink:#19352c;--ink-2:#53665b;--ink-3:#53665b;--ink2:#53665b;--mute:#53665b;
  --line:#d5ddcf;--line2:#b6c4b3;--accent:#2e6450;--acc:#2e6450;--accent-ink:#fffef8;--acc-ink:#fffef8;
  --accent-soft:#dce8d6;--acc2:#2e6450;--mint:#2e6450;--mint-soft:#dce8d6;--good:#2e6450;
  --low:#af5e36;--low-ink:#914424;--high:#2e6450;--high-ink:#2e6450;--wedge:#c2cec0;--grid:#9aac9e;
  --navy:#19352c;--radius:20px;--r:20px;--radius-sm:12px;--shadow:0 6px 24px #19352c08;
  --font:Geist,system-ui,-apple-system,'Segoe UI',sans-serif;--serif:'Instrument Serif',Georgia,serif;
  color-scheme:light;
}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#10251f;--bg-2:#19352c;--bg2:#142c24;--surf:#19352c;--surf2:#243f32;
  --ink:#f3f4e9;--ink-2:#b7c6b8;--ink-3:#b7c6b8;--ink2:#b7c6b8;--mute:#b7c6b8;
  --line:#3d5547;--line2:#6b806d;--accent:#b4cf8c;--acc:#b4cf8c;--accent-ink:#10251f;--acc-ink:#10251f;
  --accent-soft:#2b4934;--acc2:#b4cf8c;--mint:#b4cf8c;--mint-soft:#2b4934;--good:#b4cf8c;
  --low:#d68b63;--low-ink:#f2b78e;--high:#b4cf8c;--high-ink:#b4cf8c;--wedge:#466151;--grid:#6b806d;color-scheme:dark;
}}
:root[data-theme="dark"]{
  --bg:#10251f;--bg-2:#19352c;--bg2:#142c24;--surf:#19352c;--surf2:#243f32;
  --ink:#f3f4e9;--ink-2:#b7c6b8;--ink-3:#b7c6b8;--ink2:#b7c6b8;--mute:#b7c6b8;
  --line:#3d5547;--line2:#6b806d;--accent:#b4cf8c;--acc:#b4cf8c;--accent-ink:#10251f;--acc-ink:#10251f;
  --accent-soft:#2b4934;--acc2:#b4cf8c;--mint:#b4cf8c;--mint-soft:#2b4934;--good:#b4cf8c;
  --low:#d68b63;--low-ink:#f2b78e;--high:#b4cf8c;--high-ink:#b4cf8c;--wedge:#466151;--grid:#6b806d;color-scheme:dark;
}
body{font-family:var(--font);background:var(--bg);color:var(--ink)}
.brand-image{display:block;width:36px;height:36px;flex:none;border-radius:10px}
.brand,.logo{font-size:19px;letter-spacing:-.035em;color:var(--ink)}
.btn{border-radius:12px;min-height:48px}
.btn-primary,.btn-acc{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.btn-primary:hover,.btn-acc:hover{background:var(--accent);color:var(--accent-ink);filter:brightness(.94);transform:none}
.btn-ghost{color:var(--ink);border-color:var(--line2);background:transparent}
.btn-ghost:hover{color:var(--ink);background:var(--accent-soft);border-color:var(--accent)}
a:hover{color:var(--accent)}
.btn:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.card{box-shadow:var(--shadow)}
.card::after{display:none}
.check-btn[aria-pressed="true"] span{border-color:var(--accent-ink)}
.pill,.chip{background:var(--surf);color:var(--ink-2);border-color:var(--line)}
.linklike,summary{min-height:44px}
.growth-scene{position:relative;overflow:hidden;border-radius:20px;background:#dce8d6;color:#19352c;margin:0 0 20px;border:1px solid #bdcdb4;isolation:isolate}
.growth-landscape{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 66%;z-index:-2}
.growth-scene::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#f5f2e9f2 0%,#f5f2e9df 40%,#f5f2e914 85%)}
.growth-copy{padding:24px;max-width:66%;position:relative}
.growth-eyebrow{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#365543;margin:0 0 6px;font-weight:650}
.growth-copy h2{font:italic 34px/1.05 var(--serif);letter-spacing:-.02em;color:#19352c;margin:0 0 10px;max-width:none}
.growth-copy p:last-child{font-size:13px;line-height:1.5;margin:0;color:#365543}
.growth-tree{position:absolute;right:3%;bottom:8px;width:32%;height:90%;filter:drop-shadow(0 6px 3px #26422a12)}
.growth-scene.growth-compact{min-height:128px;margin-bottom:16px}
.growth-compact .growth-copy{padding:18px 20px}
.growth-compact .growth-copy h2{font-size:28px}
.growth-compact .growth-copy p:last-child{font-size:12px}
.growth-full{min-height:250px}
.growth-full .growth-copy{padding-top:36px;padding-bottom:36px}
.growth-milestones{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0 0;padding:0;list-style:none}
.growth-milestones li{font-size:12px;border:1px solid #96aa8b;border-radius:999px;padding:4px 8px;color:#365543;background:#fffef8c9}
.growth-milestones li.reached{background:#2e6450;border-color:#2e6450;color:#fffef8}
.growth-note{font-size:13px;color:var(--ink-2);margin:-8px 0 24px;line-height:1.5}
@media(max-width:380px){.growth-copy{max-width:72%;padding-left:16px}.growth-copy h2{font-size:30px}.growth-tree{right:0;width:29%}.growth-compact .growth-copy{padding:16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.growth-landscape{display:none}.growth-scene{break-inside:avoid}.growth-scene::before{display:none}}
