:root{--green-50:#E6E6E2;--green-100:#E6E5DA;--green-200:#D6D6C9;--green-300:#B7B9AC;--green-400:#8C9086;--green-500:#636A61;--green-600:#464E47;--green-700:#2E3630;--green-800:#1B221D;--green-850:#161F1A;--green-900:#101711;--green-950:#0A0F0B;--spring-100:#E4F3EA;--spring-200:#C3E7D1;--spring-300:#94D6AF;--spring-400:#4FC488;--spring-500:#1FB56B;--spring-600:#12A657;--spring-700:#0D7E43;--clover-100:#D7E8DD;--clover-300:#A6CCB3;--clover-500:#2F8F5B;--forest-500:#2F8F5B;--forest-600:#2A8152;--forest-700:#1F653F;--forest-800:#175132;--forest-900:#123F27;--forest-950:#0C2D1B;--brand-text:#287A4D;--honey-100:#FBEACB;--honey-200:#F6D79B;--honey-300:#F0C97D;--honey-400:#E8A23A;--honey-500:#D9891C;--honey-600:#B26E12;--honey-700:#8C5A0C;--ochre-400:#D9A441;--ochre-600:#A57620;--ochre-700:#8A6420;--ochre-800:#7A5719;--tint-peach:#FBE3D6;--tint-sky:#D9E8EF;--tint-sage:#DDE9DC;--tint-lilac:#E4DEF2;--tint-butter:#F7EEC8;--paper:#F3F2EE;--paper-2:#E9E9E4;--white:#FFFFFF;--ink-900:#16211C;--ink-800:#232E27;--ink-700:#3B463F;--ink-600:#55605A;--ink-500:#5C665D;--ink-400:#99A198;--ink-300:#C3C7BD;--line:#DCDDD9;--line-strong:#CECFCB;--line-onDark:rgba(255,255,255,0.14);--success:#12A657;--success-bg:#E2F3EA;--warning:#B7862B;--warning-bg:#F5EAD3;--danger:#C0472F;--danger-bg:#F9E6E0;--info:#2C6B7A;--info-bg:#E0EDF0;--brand:var(--forest-600);--brand-hover:var(--forest-700);--brand-active:var(--forest-800);--brand-contrast:#FFFFFF;--accent:var(--forest-600);--accent-strong:var(--forest-700);--accent-soft:#E9F3EC;--bg-canvas:var(--paper);--bg-sunken:var(--paper-2);--surface-card:var(--white);--surface-inverse:var(--green-950);--surface-accent:var(--honey-100);--text-heading:var(--ink-900);--text-body:var(--ink-700);--text-muted:var(--ink-500);--text-faint:var(--ink-400);--text-onBrand:#FFFFFF;--text-link:var(--brand-text);--text-link-hover:var(--forest-800);--surface-bar:#FAFAF8;--shadow-warm-rgb:22,33,28;--border-default:var(--line);--border-strong:var(--line-strong);--focus-ring:rgba(42,129,82,0.35);--clover-100:#DCE6F4;--clover-300:color-mix(in oklab,#0F3C78 45%,#fff);--clover-500:#0F3C78;--forest-500:#0F3C78;--forest-600:#0F3C78;--forest-700:#0A2C5A;--forest-800:#0A2C5A;--forest-900:#0F3C78;--forest-950:#0A2C5A;--brand-text:#1F4F96;--text-link:#1F4F96;--brand:#0F3C78;--brand-hover:#0A2C5A;--accent:#0F3C78;--accent-strong:#0A2C5A;--accent-soft:#DCE6F4;--spring-100:#DCE6F4;--spring-400:#FFD23F;--spring-500:#0F3C78;--spring-600:#1F4F96;--spring-700:#1F4F96;--success:#0F3C78;--success-bg:#DCE6F4;--info:#1F4F96;--info-bg:#DCE6F4;--ochre-400:#FFD23F;--ochre-600:#7A5C00;--ochre-700:#7A5C00;--ochre-800:#7A5C00;--honey-400:#FFD23F;--paper:#EEF3FA;--paper-2:#E2EAF5;--ink-900:#0B1E3F;--ink-800:#0B1E3F;--bp-grid-light:linear-gradient(rgba(15,60,120,0.07) 1px,transparent 0) 0 0 /120px 120px,linear-gradient(90deg,rgba(15,60,120,0.07) 1px,transparent 0) 0 0 /120px 120px,linear-gradient(rgba(15,60,120,0.035) 1px,transparent 0) 0 0 /24px 24px,linear-gradient(90deg,rgba(15,60,120,0.035) 1px,transparent 0) 0 0 /24px 24px;--bp-grid-dark:linear-gradient(rgba(255,255,255,0.1) 1px,transparent 0) 0 0 /120px 120px,linear-gradient(90deg,rgba(255,255,255,0.1) 1px,transparent 0) 0 0 /120px 120px,linear-gradient(rgba(255,255,255,0.045) 1px,transparent 0) 0 0 /24px 24px,linear-gradient(90deg,rgba(255,255,255,0.045) 1px,transparent 0) 0 0 /24px 24px;--font-sans:var(--font-hanken),ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-display:var(--font-bricolage),var(--font-hanken),ui-sans-serif,system-ui,sans-serif;--font-mono:var(--font-jetbrains),ui-monospace,"SF Mono",Menlo,monospace;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-black:700;--fw-display:700;--fs-display:6rem;--fs-h1:3.5rem;--fs-h2:2.85rem;--fs-h3:1.75rem;--fs-h4:1.375rem;--fs-title:1.125rem;--fs-body-lg:1.1875rem;--fs-body:1rem;--fs-body-sm:0.875rem;--fs-caption:0.8125rem;--fs-eyebrow:0.78125rem;--lh-tight:1.02;--lh-snug:1.08;--lh-heading:1.12;--lh-body:1.6;--lh-relaxed:1.7;--ls-display:-0.03em;--ls-heading:-0.024em;--ls-tight:-0.006em;--ls-normal:0;--ls-eyebrow:0.16em;--ls-label:0.02em;--space-0:0;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;--container-max:1200px;--container-narrow:760px;--gutter:var(--space-6);--section-y:var(--space-24);--radius-xs:6px;--radius-sm:10px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px;--radius-2xl:28px;--radius-pill:999px;--shadow-xs:0 1px 2px rgba(20,32,27,0.05);--shadow-sm:0 2px 8px rgba(20,32,27,0.06);--shadow-md:0 12px 32px -10px rgba(20,32,27,0.12);--shadow-lg:0 20px 60px -14px rgba(20,32,27,0.16);--shadow-xl:0 34px 80px -22px rgba(20,32,27,0.20);--shadow-focus:0 0 0 3px var(--focus-ring);--shadow-inset:inset 0 1px 2px rgba(20,32,27,0.05);--dur-fast:140ms;--dur-base:220ms;--dur-slow:380ms;--ease-out:cubic-bezier(0.33,1,0.68,1);--ease-inout:cubic-bezier(0.65,0,0.35,1);--ease-spring:cubic-bezier(0.34,1.35,0.5,1);--transition-base:all var(--dur-base) var(--ease-out)}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}@media (min-width:1441px){html{font-size:clamp(100%,calc(.68rem + .357vw),125%)}}body{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-body);background:var(--bg-canvas);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body,h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--font-sans)}h1,h2,h3,h4,h5,h6{color:var(--text-heading);font-weight:var(--fw-semibold);line-height:var(--lh-heading);letter-spacing:var(--ls-heading);text-wrap:balance}p{margin:0;text-wrap:pretty}a{color:var(--text-link);text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}a:hover{color:var(--text-link-hover)}strong{font-weight:var(--fw-semibold)}::selection{background:var(--spring-300);color:var(--green-950)}:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-xs)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field-label{font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);color:var(--text-heading);letter-spacing:var(--ls-label)}.field-label .req{color:var(--danger);margin-left:2px}.input,.select,.textarea{font-family:var(--font-sans);font-size:var(--fs-body);line-height:1.4;color:var(--text-heading);background:var(--white);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:12px 14px;width:100%;transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out);-webkit-appearance:none;appearance:none}.textarea{min-height:128px;resize:vertical}.input::placeholder,.textarea::placeholder{color:var(--text-faint)}.input:hover,.select:hover,.textarea:hover{border-color:var(--green-400)}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--accent-strong);box-shadow:var(--shadow-focus)}.select{padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%236E786F' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}.field-help{color:var(--text-muted)}.field-error,.field-help{font-size:var(--fs-caption)}.field-error{color:var(--danger);display:none}.field.is-error .input,.field.is-error .select,.field.is-error .textarea{border-color:var(--danger)}.field.is-error .input:focus,.field.is-error .select:focus,.field.is-error .textarea:focus{box-shadow:0 0 0 3px var(--danger-bg)}.field.is-error .field-error{display:block}.input:disabled,.select:disabled,.textarea:disabled{background:var(--paper-2);color:var(--text-faint);cursor:not-allowed;border-color:var(--line)}.check{display:inline-flex;align-items:center;gap:var(--space-3);font-size:var(--fs-body-sm);color:var(--text-body);cursor:pointer}.check input{position:absolute;opacity:0;width:0;height:0}.check .box{width:20px;height:20px;border:1px solid var(--border-strong);border-radius:var(--radius-xs);background:var(--white);display:inline-flex;align-items:center;justify-content:center;transition:var(--transition-base);flex-shrink:0}.check .box.round{border-radius:var(--radius-pill)}.check input:checked+.box{background:var(--accent-strong);border-color:var(--accent-strong)}.check .box svg{opacity:0;transform:scale(.6);transition:var(--transition-base)}.check input:checked+.box svg{opacity:1;transform:scale(1)}.check input:focus-visible+.box{box-shadow:var(--shadow-focus)}.badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:var(--fs-caption);font-weight:500;letter-spacing:var(--ls-label);padding:4px 10px;border-radius:var(--radius-pill);line-height:1}.badge-neutral{background:var(--green-100);color:var(--ink-700)}.badge-success{background:var(--success-bg);color:var(--success)}.badge-warning{background:var(--warning-bg);color:var(--warning)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.badge-info{background:var(--info-bg);color:var(--info)}.badge-accent{background:var(--accent-soft);color:var(--spring-700)}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 32px}@media (max-width:640px){.container{padding:0 20px}}.section{padding:var(--space-24) 0}@media (max-width:768px){.section{padding:var(--space-16) 0}}.surface-paper{background:var(--paper)}.surface-white{background:var(--white)}.surface-pine{background:var(--green-900);color:rgba(255,255,255,.78);position:relative}.surface-pine h1,.surface-pine h2,.surface-pine h3,.surface-pine h4{color:#fff}.band-top{border-top:1px solid var(--line)}.band-bottom{border-bottom:1px solid var(--line)}.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:var(--fs-eyebrow);font-weight:500;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted)}.eyebrow:before{content:"";width:22px;height:2px;background:var(--accent);border-radius:2px}.surface-pine .eyebrow{color:rgba(255,255,255,.62)}.display{font-size:clamp(3.4rem,8vw,7rem);letter-spacing:var(--ls-display);line-height:.98;font-optical-sizing:auto}.display,.h2{font-family:var(--font-display);font-weight:var(--fw-display)}.h2{font-size:clamp(2.3rem,4.8vw,3.7rem);letter-spacing:var(--ls-heading);line-height:1.02;font-optical-sizing:auto}.h3{font-family:var(--font-sans);font-size:var(--fs-h3);font-weight:600;letter-spacing:-.008em}.accent-word.it,.display .it,.h2 .it{font-style:normal}.lead{font-size:clamp(1.05rem,1.7vw,1.24rem);line-height:1.6;color:var(--text-body)}.surface-pine .lead{color:rgba(255,255,255,.72)}.accent-word{color:var(--honey-400);font-style:normal}.hero .accent-word,.surface-paper .accent-word,.surface-white .accent-word{color:var(--forest-600)}.section-head{max-width:720px}.section-head .h2{margin-top:16px}.section-head .lead{margin-top:18px}.btn{display:inline-flex;align-items:center;gap:12px;font-family:var(--font-sans);font-weight:600;font-size:1rem;line-height:1;padding:15px 24px;border-radius:var(--radius-pill);border:1px solid transparent;cursor:pointer;transition:var(--transition-base);white-space:nowrap;text-decoration:none}.btn:focus-visible{box-shadow:var(--shadow-focus)}.btn-lg{padding:18px 28px;font-size:1.05rem}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-hover);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-accent{background:var(--accent);color:#fff}.btn-accent:hover{background:var(--accent-strong);color:#fff;transform:translateY(-2px);box-shadow:0 12px 30px -10px color-mix(in srgb,var(--forest-600) 55%,transparent)}.btn-secondary{background:transparent;color:var(--brand);border-color:var(--line-strong)}.btn-secondary:hover{background:var(--green-50);color:var(--brand);border-color:var(--green-300)}.btn-ghost{background:transparent;color:var(--text-link);padding-left:4px;padding-right:4px}.btn-ghost:hover{color:var(--text-link-hover);gap:16px}.on-dark.btn-secondary,.surface-pine .btn-secondary{color:#fff;border-color:var(--line-onDark)}.on-dark.btn-secondary:hover,.surface-pine .btn-secondary:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.28)}.btn .arrow-badge{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;background:rgba(255,255,255,.16);margin:-4px -8px -4px 0;transition:transform var(--dur-base) var(--ease-out)}.btn-accent .arrow-badge{background:rgba(255,255,255,.18)}.btn-secondary .arrow-badge{background:var(--green-50)}.surface-pine .btn-secondary .arrow-badge{background:rgba(255,255,255,.14)}.btn:hover .arrow-badge{transform:translateX(3px)}.contact-band .btn-accent,.surface-pine .btn-accent{background:#fff;color:var(--forest-600)}.contact-band .btn-accent:hover,.surface-pine .btn-accent:hover{background:var(--accent-soft);color:var(--forest-700)}.contact-band .btn-accent .arrow-badge,.surface-pine .btn-accent .arrow-badge{background:var(--accent-soft)}.card{background:var(--surface-card);border:1px solid var(--line);border-radius:var(--radius-lg);transition:var(--transition-base)}.card-hover:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--line-strong)}.chip{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:13px;background:var(--green-50);color:var(--brand);flex-shrink:0}.surface-pine .chip{background:rgba(255,255,255,.08);color:var(--spring-400)}.tile{display:flex;flex-direction:column;padding:30px 28px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);height:100%;transition:var(--transition-base)}.tile:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--line-strong)}.tile h3{margin:20px 0 0;font-size:1.24rem;font-weight:700;letter-spacing:-.015em}.tile p{margin:10px 0 0;font-size:.97rem;line-height:1.55;color:var(--text-body)}.tile-dark{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.09);color:rgba(255,255,255,.72)}.tile-dark:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.2);box-shadow:none}.tile-dark h3{color:#fff}.tile-dark p{color:rgba(255,255,255,.66)}.case-grid{display:flex;flex-direction:column;gap:112px;margin-top:64px}.case-study{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}.case-study.flip{grid-template-columns:.95fr 1.05fr}.case-study.flip .case-copy{order:2}@media (max-width:940px){.case-study,.case-study.flip{grid-template-columns:1fr;gap:28px}.case-study.flip .case-copy{order:0}}.case-title{margin-top:16px;font-family:var(--font-display);font-optical-sizing:auto;font-weight:var(--fw-display);font-size:clamp(1.6rem,2.6vw,2.2rem);letter-spacing:-.02em;line-height:1.08;color:var(--ink-900)}.case-copy .lead{margin-top:14px}.case-features{list-style:none;margin:24px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.case-features li{position:relative;padding-left:20px;font-size:.96rem;line-height:1.5;color:var(--ink-700)}.case-features li:before{content:"";position:absolute;left:0;top:.55em;width:7px;height:7px;border-radius:999px;background:var(--forest-600)}.case-frame{background:#fff;border-radius:16px 16px 8px 8px;overflow:hidden;box-shadow:var(--shadow-xl);border:1px solid var(--line)}.case-frame-bar{display:flex;align-items:center;gap:8px;padding:11px 16px;background:var(--surface-bar);border-bottom:1px solid var(--line)}.case-frame-dots{display:inline-flex;gap:6px}.case-frame-dots i{width:9px;height:9px;border-radius:999px;background:var(--line-strong);display:block}.case-frame-viewport{position:relative;width:100%;aspect-ratio:16/10;background:var(--paper-2);overflow:hidden}.case-frame-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.case-frame-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:32px;background:linear-gradient(155deg,var(--paper) 0,var(--paper-2) 100%)}.case-frame-placeholder-name{font-family:var(--font-display);font-weight:var(--fw-display);font-optical-sizing:auto;font-size:clamp(1.3rem,2.4vw,1.9rem);letter-spacing:-.02em;color:var(--ink-400)}.grain{position:fixed;inset:0;z-index:60;pointer-events:none;opacity:.28;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px}.hero:before,.surface-paper:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.55;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.012 0.018' numOctaves='3' seed='7'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23p)' opacity='0.05'/%3E%3C/svg%3E")}.surface-paper{position:relative}.surface-paper>.container{position:relative;z-index:1}@media (prefers-reduced-motion:reduce){.grain{opacity:.35}}.reveal{will-change:opacity,transform}.reveal,.reveal[data-stagger]>*{opacity:0}@media (prefers-reduced-motion:reduce){.reveal,.reveal[data-stagger]>*{opacity:1!important;transform:none!important;filter:none!important}.btn:hover,.card-hover:hover,.tile:hover{transform:none}}.case-frame-demo{display:none}@media (min-width:900px){.case-frame-demo{display:block}.case-frame-bar.has-demo,.case-frame-viewport.has-demo{display:none}}.demo-window{background:#fff}.demo-inline:empty{aspect-ratio:1280/846;background:#fff}.demo-bar{display:flex;align-items:center;gap:12px;padding:8px 10px 8px 16px;background:var(--surface-bar);border-bottom:1px solid var(--line)}.demo-task{display:inline-flex;align-items:center;gap:8px;min-width:0;font-size:.8rem;font-weight:600;color:var(--ink-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.demo-task i{flex:none;width:7px;height:7px;border-radius:999px;background:var(--brand);box-shadow:0 0 0 0 color-mix(in srgb,var(--brand) 45%,transparent);animation:demo-pulse 1.8s infinite}.demo-actions{margin-left:auto;display:inline-flex;gap:6px;flex:none}.demo-btn{padding:5px 11px;border-radius:999px;font:inherit;font-size:.76rem;font-weight:600;background:#fff;color:var(--ink-900);border:1px solid var(--line);cursor:pointer}.demo-btn:hover{border-color:var(--line-strong)}.demo-btn-strong{background:var(--forest-600);color:#fff;border-color:var(--forest-600)}.demo-btn-strong:hover{background:var(--forest-700);border-color:var(--forest-700)}.demo-btn:focus-visible{outline:2px solid var(--forest-600);outline-offset:2px}.demo-stage{position:relative;width:100%;aspect-ratio:16/10}.demo-canvas,.demo-stage{overflow:hidden;background:#fff}.demo-canvas{position:absolute;top:0;left:0;transform-origin:0 0;isolation:isolate;font-family:var(--font-sans)}.demo-overlay{display:none}.demo-overlay.is-open{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center}.demo-backdrop{position:absolute;inset:0;background:rgba(16,22,18,.72);backdrop-filter:blur(4px)}.demo-overlay-slot{position:relative;width:min(94vw,calc((92vh - 46px) * 1.6));border-radius:14px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.35)}@keyframes demo-pulse{70%{box-shadow:0 0 0 7px transparent}to{box-shadow:0 0 0 0 transparent}}@media (prefers-reduced-motion:reduce){.demo-task i{animation:none}}a[href^="mailto:"]{overflow-wrap:anywhere}