@import url('https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=Geist+Mono:wght@400;500&family=Inter:wght@600&display=swap');
:root{--bg:#FBFBFC;--bg-subtle:#F0F1F2;--surface:#FFFFFF;--surface-2:#F5F6F7;--overlay:rgba(19, 20, 21, 0.55);--text:#131415;--text-muted:#5A5B5C;--text-subtle:#7A7A7B;--text-on-accent:#FDFDFE;--border:#D8D9DA;--border-strong:#949495;--accent:#232426;--accent-strong:#0D0D0F;--accent-soft:#EEEEEF;--focus:#232426;--secondary:#0064B5;--secondary-soft:#E3F0FF;--positive:#33724C;--positive-soft:#E1F4E7;--negative:#9D3533;--negative-soft:#FFE9E6;--warning:#976200;--warning-soft:#FFEBD3;--shadow-color:#131415;--shadow-1-c:rgba(19, 20, 21, 0.05);--shadow-2-c:rgba(19, 20, 21, 0.07);--shadow-3-c:rgba(19, 20, 21, 0.1);color-scheme:light;}
[data-theme=dark]{--bg:#0C0C0D;--bg-subtle:#050506;--surface:#171718;--surface-2:#232325;--overlay:rgba(12, 12, 13, 0.68);--text:#F6F7F8;--text-muted:#A8A9AB;--text-subtle:#8D8D8F;--text-on-accent:#0C0D10;--border:#2E2F31;--border-strong:#646467;--accent:#E7E8EB;--accent-strong:#FFFFFF;--accent-soft:#252526;--focus:#E7E8EB;--secondary:#57A8FF;--secondary-soft:#00254A;--positive:#78B98F;--positive-soft:#0E2C1A;--negative:#E5756E;--negative-soft:#431211;--warning:#EAA950;--warning-soft:#362000;--shadow-color:#0C0C0D;--shadow-1-c:rgba(12, 12, 13, 0.32);--shadow-2-c:rgba(12, 12, 13, 0.42);--shadow-3-c:rgba(12, 12, 13, 0.58);color-scheme:dark;}
:root{--radius-sm:2px;--radius-md:2px;--radius-lg:3px;--radius-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--pad-card:16px;--font-display:'Geist', system-ui, sans-serif;--font-body:'Geist', system-ui, sans-serif;--font-mono:'Geist Mono', ui-monospace, monospace;--text-xs:14.2px;--text-sm:15.1px;--text-base:16px;--text-lg:18.0px;--text-xl:20.2px;--text-2xl:22.8px;--text-3xl:25.6px;--leading-tight:1.15;--leading-normal:1.5;--leading-relaxed:1.7;--tracking-display:-0.030em;--weight-body:400;--weight-medium:500;--weight-bold:600;--weight-display:700;--shadow-1:0 1px 2px var(--shadow-1-c);--shadow-2:0 2px 8px var(--shadow-2-c), 0 1px 2px var(--shadow-1-c);--shadow-3:0 14px 36px var(--shadow-3-c), 0 3px 10px var(--shadow-2-c);--dur-fast:120ms;--dur-base:220ms;--ease:cubic-bezier(.2,.8,.2,1);}

*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--bg);color:var(--text);font:400 16px/var(--leading-normal) var(--font-body)}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--focus);outline-offset:4px}::selection{background:var(--accent);color:var(--text-on-accent)}.wrap{max-width:1120px;margin:auto;padding:0 var(--space-6)}header{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);border-bottom:1px solid var(--border)}.brand{display:flex;gap:12px;align-items:center;font-family:Inter,system-ui,sans-serif;font-size:21px;letter-spacing:-.8px;font-weight:600}.mark{width:27px;height:27px;flex-shrink:0;border:6px solid #146FB4;border-right-color:transparent;border-radius:50%;transform:rotate(-35deg)}[data-theme=dark] .mark{border-color:#3E9BDE;border-right-color:transparent}nav{display:flex;gap:var(--space-5);align-items:center;font-size:var(--text-xs)}nav a{color:var(--secondary)}nav a:hover{text-decoration:underline}.theme{min-width:44px;min-height:44px;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);background:var(--surface);cursor:pointer;font-size:20px}.theme:hover{background:var(--surface-2)}.eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:400;color:var(--text-muted)}.hero{padding:var(--space-8) 0;max-width:660px}.hero h1{font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--text-3xl);line-height:var(--leading-tight);letter-spacing:var(--tracking-display);margin:var(--space-5) 0 var(--space-4)}.hero h1 em{font-style:normal;font-weight:inherit;color:inherit}.intro{max-width:520px;color:var(--text-muted);font-size:var(--text-base);line-height:var(--leading-relaxed);margin:0}.cta{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-4);background:var(--accent);color:var(--text-on-accent);min-height:48px;padding:var(--space-3) var(--space-4);border:1px solid var(--accent);border-radius:var(--radius-sm);font-size:var(--text-base);font-weight:600;margin-top:var(--space-6)}.cta:hover{background:var(--accent-strong)}.statement{padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);display:grid;grid-template-columns:1fr 2fr;gap:var(--space-6)}.statement p{font-size:var(--text-base);margin:0}.section{padding:var(--space-7) 0}.section-head{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-6);margin-bottom:var(--space-5)}.section h2{font:600 var(--text-2xl)/var(--leading-tight) var(--font-display);letter-spacing:var(--tracking-display);margin:0}.section-head p{color:var(--text-muted);max-width:600px;margin:var(--space-3) 0 0}.product{display:grid;grid-template-columns:1fr 2fr;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background:var(--surface)}.product-visual{background:var(--surface-2);padding:var(--space-6);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;border-right:1px solid var(--border)}.oikos-name{font:700 var(--text-3xl)/var(--leading-tight) var(--font-display);letter-spacing:var(--tracking-display);color:var(--text)}.oikos-rule{width:32px;height:1px;background:var(--border-strong);margin:var(--space-4) 0}.product-visual p{margin:0;color:var(--text-muted);font-size:var(--text-xs)}.product-copy{padding:var(--space-5)}.tag{display:inline-block;border:1px solid var(--border);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);color:var(--text-muted);background:var(--surface-2);font-family:var(--font-mono);font-size:var(--text-xs)}.product-copy h3{font-size:var(--text-xl);font-weight:600;line-height:var(--leading-tight);letter-spacing:var(--tracking-display);margin:var(--space-4) 0 var(--space-3)}.product-copy p{color:var(--text-muted);margin:0}.product-copy .footnote{font-size:var(--text-xs);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border)}.process{border-top:1px solid var(--border)}.steps{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4);margin-top:var(--space-6)}.step{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:var(--space-4)}.number{font:400 var(--text-xs)/var(--leading-normal) var(--font-mono);color:var(--text-muted)}.step h3{font-size:var(--text-lg);letter-spacing:var(--tracking-display);font-weight:600;margin:var(--space-5) 0 var(--space-3)}.step p{color:var(--text-muted);margin:0;font-size:var(--text-base)}.philosophy{background:var(--surface);border:1px solid var(--border);color:var(--text);padding:var(--space-5);border-radius:var(--radius-sm);display:grid;grid-template-columns:1fr 2fr;gap:var(--space-6)}.philosophy blockquote{font:600 var(--text-2xl)/var(--leading-tight) var(--font-display);letter-spacing:var(--tracking-display);margin:0}.philosophy p{font-size:var(--text-base);line-height:var(--leading-relaxed);max-width:600px;color:var(--text-muted);margin:var(--space-4) 0 0}footer{display:flex;justify-content:space-between;align-items:center;padding:var(--space-6) 0;gap:var(--space-5);font-size:var(--text-xs);color:var(--text-muted)}footer .brand{font-size:17px;color:var(--text)}.skip{position:absolute;top:-80px;padding:12px;background:var(--surface)}.skip:focus{top:0}
@media(max-width:720px){.wrap{padding:0 var(--space-5)}header{gap:var(--space-3);flex-wrap:wrap;padding:var(--space-4) 0}nav{gap:var(--space-4)}.hero{padding:var(--space-7) 0}.section-head,.statement,.philosophy{grid-template-columns:1fr;gap:var(--space-4)}.steps{grid-template-columns:1fr}.step h3{margin-top:var(--space-4)}.product{grid-template-columns:1fr}.product-visual{border-right:0;border-bottom:1px solid var(--border);padding:var(--space-5)}.product-copy{padding:var(--space-4)}footer{align-items:flex-start;flex-direction:column;gap:var(--space-3)}footer p{margin:0}.section{padding:var(--space-6) 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
