@font-face{font-family:inter variable;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/InterVariable.woff2)format("woff2-variations"),url(/fonts/InterVariable.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:inter variable;font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/InterVariable-Italic.woff2)format("woff2-variations"),url(/fonts/InterVariable-Italic.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--fg:#0b0b0c;--fg-muted:#545560;--fg-subtle:#8a8b94;--bg:#ffffff;--bg-elev:#fafafa;--rule:#e7e7ea;--accent:#4f46e5;--accent-hover:#3730a3;--accent-soft:rgba(79, 70, 229, 0.10);--font-sans:"Inter Variable", "Inter", ui-sans-serif, system-ui,
    -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
    Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
    "Liberation Mono", monospace;--measure:64rem;--measure-wide:76rem;--measure-prose:48rem;--gap:clamp(1rem, 2vw, 1.5rem);--section-y:clamp(4rem, 9vw, 7rem);--radius:6px;--dur:180ms;--ease:cubic-bezier(0.2, 0, 0, 1)}:root[data-theme=dark]{--fg:#f2f2f3;--fg-muted:#a8a9b3;--fg-subtle:#6b6c76;--bg:#0b0b0c;--bg-elev:#111113;--rule:#1f1f22;--accent:#a5b4fc;--accent-hover:#c7d2fe;--accent-soft:rgba(165, 180, 252, 0.12)}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;font-feature-settings:"cv11","ss01","ss03";font-variation-settings:"opsz" 16}body{margin:0;font-family:var(--font-sans);font-size:1rem;line-height:1.65;color:var(--fg);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;transition:background-color var(--dur)var(--ease),color var(--dur)var(--ease)}img,svg{max-width:100%;display:block;height:auto}a{color:var(--accent);text-decoration-color:color-mix(in oklab,var(--accent) 35%,transparent);text-underline-offset:.2em;text-decoration-thickness:1px;transition:color var(--dur)var(--ease),text-decoration-color var(--dur)var(--ease)}a:hover{color:var(--accent-hover);text-decoration-color:initial}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}::selection{background:var(--accent-soft);color:var(--fg)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:.5rem;left:.5rem;padding:.5rem .9rem;background:var(--fg);color:var(--bg);border-radius:var(--radius);transform:translateY(-200%);transition:transform var(--dur)var(--ease);z-index:100}.skip-link:focus{transform:translateY(0)}.container{width:100%;max-width:var(--measure);margin-inline:auto;padding-inline:clamp(1.25rem,3vw,2.25rem)}.container--wide{max-width:var(--measure-wide)}.container--prose{max-width:var(--measure-prose)}.site-main{padding-bottom:var(--section-y)}.section{padding-block:var(--section-y);position:relative}.section+.section{border-top:1px solid var(--rule)}.section--alt{background:var(--bg-elev)}.section__eyebrow{display:inline-block;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 .9rem;font-weight:600;position:relative;padding-left:2rem}.section__eyebrow::before{content:"";position:absolute;left:0;top:50%;width:1.5rem;height:1px;background:var(--accent);transform:translateY(-50%)}.section__title{font-size:clamp(1.85rem,3.4vw,2.5rem);font-weight:600;letter-spacing:-.02em;margin:0 0 2.25rem;line-height:1.1}.section__lede{color:var(--fg-muted);font-size:1.05rem;margin:-1.25rem 0 2.25rem;max-width:40rem}.site-header{position:sticky;top:0;z-index:50;background:color-mix(in oklab,var(--bg) 88%,transparent);backdrop-filter:saturate(180%)blur(14px);-webkit-backdrop-filter:saturate(180%)blur(14px);border-bottom:1px solid var(--rule)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.85rem}.brand{font-weight:600;color:var(--fg);text-decoration:none;letter-spacing:-.005em;font-size:.98rem}.brand:hover{color:var(--fg)}.brand-dot{color:var(--accent)}.header-actions{display:flex;align-items:center;gap:.5rem}.site-nav{display:none;gap:.25rem;font-size:.92rem}.site-nav a{color:var(--fg-muted);text-decoration:none;padding:.35rem .7rem;border-radius:var(--radius);transition:color var(--dur)var(--ease),background-color var(--dur)var(--ease)}.site-nav a:hover{color:var(--fg);background:var(--accent-soft)}@media(min-width:720px){.site-nav{display:flex}}.theme-toggle{width:38px;height:38px;display:inline-grid;place-items:center;background:0 0;border:1px solid var(--rule);border-radius:var(--radius);color:var(--fg-muted);cursor:pointer;transition:color var(--dur)var(--ease),border-color var(--dur)var(--ease),background-color var(--dur)var(--ease)}.theme-toggle:hover{color:var(--fg);border-color:var(--fg-subtle)}.theme-toggle__icon{width:16px;height:16px;display:block}.theme-toggle__icon--sun{display:block}.theme-toggle__icon--moon{display:none}:root[data-theme=dark] .theme-toggle__icon--sun{display:none}:root[data-theme=dark] .theme-toggle__icon--moon{display:block}.hero{padding-block:clamp(5rem,12vw,9rem)var(--section-y);border-top:0;position:relative;overflow:hidden}.hero::before{content:"";position:absolute;pointer-events:none;z-index:0;top:-20%;right:-10%;width:55rem;height:55rem;background:radial-gradient(closest-side,color-mix(in oklab,var(--accent) 22%,transparent) 0%,transparent 70%);filter:blur(40px);opacity:.9}:root[data-theme=dark] .hero::before{opacity:.55}.hero>.container{position:relative;z-index:1}.hero__eyebrow{display:inline-flex;align-items:center;gap:.55rem;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-muted);margin:0 0 1.5rem;font-weight:500;padding:.35rem .85rem .35rem .6rem;border:1px solid var(--rule);border-radius:999px;background:color-mix(in oklab,var(--bg) 70%,transparent);backdrop-filter:blur(6px)}.hero__status{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px color-mix(in oklab,#22c55e 25%,transparent);animation:pulse 2.4s ease-in-out infinite}@keyframes pulse{0%,100%{box-shadow:0 0 0 3px color-mix(in oklab,#22c55e 25%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in oklab,#22c55e 12%,transparent)}}@media(prefers-reduced-motion:reduce){.hero__status{animation:none}}.hero__title{font-size:clamp(2.25rem,6.5vw,4.5rem);line-height:1.04;letter-spacing:-.028em;font-weight:600;margin:0 0 1.5rem;max-width:20ch}.hero__title .accent{color:var(--accent);background:linear-gradient(135deg,var(--accent) 0%,color-mix(in oklab,var(--accent) 55%,#ec4899) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-style:italic}.hero__lede{font-size:clamp(1.05rem,1.4vw,1.2rem);color:var(--fg-muted);max-width:44rem;margin:0 0 2.5rem;line-height:1.55}.hero__cta-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.1rem;border-radius:var(--radius);font-weight:500;font-size:.95rem;text-decoration:none;border:1px solid transparent;transition:background-color var(--dur)var(--ease),color var(--dur)var(--ease),border-color var(--dur)var(--ease),transform var(--dur)var(--ease);will-change:transform}.btn--primary{background:var(--fg);color:var(--bg)}.btn--primary:hover{background:var(--accent);color:#fff;transform:translateY(-1px)}:root[data-theme=dark] .btn--primary:hover{color:#0b0b0c}.btn--ghost{color:var(--fg);border-color:var(--rule)}.btn--ghost:hover{border-color:var(--fg-subtle);color:var(--fg);transform:translateY(-1px)}.btn__arrow{transition:transform var(--dur)var(--ease)}.btn:hover .btn__arrow{transform:translateX(2px)}.services-list{list-style:none;padding:0;margin:0;display:grid;gap:1.25rem}.service{display:grid;grid-template-columns:auto 1fr;gap:.75rem 1.5rem;align-items:start;padding:1.75rem;border:1px solid var(--rule);border-radius:calc(var(--radius) * 2);background:var(--bg);transition:border-color var(--dur)var(--ease),transform var(--dur)var(--ease),box-shadow var(--dur)var(--ease);position:relative;overflow:hidden}.service::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient( 600px circle at var(--mx,50%) var(--my,0%),color-mix(in oklab,var(--accent) 8%,transparent),transparent 45%);opacity:0;transition:opacity var(--dur)var(--ease)}.service:hover{border-color:color-mix(in oklab,var(--accent) 45%,var(--rule));transform:translateY(-2px);box-shadow:0 10px 30px -18px color-mix(in oklab,var(--accent) 40%,transparent)}.service:hover::after{opacity:1}.service__num{font-variant-numeric:tabular-nums;font-size:.78rem;letter-spacing:.08em;color:var(--accent);font-weight:600;padding:.35rem .6rem;border:1px solid color-mix(in oklab,var(--accent) 40%,var(--rule));border-radius:var(--radius);background:var(--accent-soft);min-width:2.75rem;text-align:center;line-height:1}.service__body h3{font-size:1.2rem;font-weight:600;letter-spacing:-.012em;margin:.1rem 0 .45rem}.service__body p{margin:0;color:var(--fg-muted);font-size:.98rem}@media(min-width:720px){.services-list{grid-template-columns:repeat(2,1fr);gap:1.5rem}}.notes{display:grid;gap:1.5rem}.note{padding:2rem;border:1px solid var(--rule);border-radius:calc(var(--radius) * 2);background:var(--bg);position:relative;transition:border-color var(--dur)var(--ease),transform var(--dur)var(--ease)}.note::before{content:"";position:absolute;left:-1px;top:2rem;bottom:2rem;width:3px;background:linear-gradient( to bottom,var(--accent),color-mix(in oklab,var(--accent) 30%,transparent));border-radius:3px;opacity:0;transition:opacity var(--dur)var(--ease)}.note:hover{border-color:color-mix(in oklab,var(--accent) 35%,var(--rule));transform:translateY(-2px)}.note:hover::before{opacity:1}.note__title{font-size:1.4rem;font-weight:600;letter-spacing:-.015em;margin:0 0 1.5rem;line-height:1.2;color:var(--fg)}.note dl{margin:0;display:grid;gap:.85rem}.note dt{font-size:.74rem;text-transform:uppercase;letter-spacing:.12em;color:var(--fg-subtle);font-weight:500}.note dd{margin:.2rem 0 0;color:var(--fg)}.note dd.muted{color:var(--fg-muted)}@media(min-width:720px){.note dl{grid-template-columns:10rem 1fr;gap:.75rem 2rem}.note dt{padding-top:.15rem}.note dd{margin-top:0}}.approach{list-style:none;padding:0;margin:0;display:grid;gap:1.75rem}.approach h3{font-size:1.02rem;font-weight:600;margin:0 0 .25rem;letter-spacing:-.005em}.approach p{margin:0;color:var(--fg-muted);max-width:44rem}.approach__marker{display:inline-block;width:1.25rem;height:1px;background:var(--accent);vertical-align:middle;margin-right:.6rem;transform:translateY(-4px)}.contact__lede{font-size:1.15rem;color:var(--fg);max-width:36rem;margin:0 0 2rem;line-height:1.5}.contact-links{list-style:none;padding:0;margin:0;display:grid;gap:.5rem;font-size:1rem}.contact-links a{display:inline-flex;align-items:center;gap:.6rem;padding:.35rem 0;color:var(--fg);text-decoration:none;border-bottom:1px solid transparent;transition:color var(--dur)var(--ease),border-color var(--dur)var(--ease);width:fit-content}.contact-links a:hover{color:var(--accent);border-bottom-color:initial}.contact-links__label{display:inline-block;min-width:5rem;color:var(--fg-subtle);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.site-footer{border-top:1px solid var(--rule);padding-block:2.5rem;color:var(--fg-muted);font-size:.9rem}.footer-inner{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between}.footer-inner p{margin:0}.footer-social{list-style:none;padding:0;margin:0;display:flex;gap:.25rem}.footer-social a{width:36px;height:36px;display:inline-grid;place-items:center;color:var(--fg-muted);border-radius:var(--radius);text-decoration:none;transition:color var(--dur)var(--ease),background-color var(--dur)var(--ease)}.footer-social a:hover{color:var(--fg);background:var(--accent-soft)}.footer-social svg{width:16px;height:16px;fill:currentColor}.reveal{opacity:0;transform:translateY(8px);transition:opacity 420ms var(--ease),transform 420ms var(--ease)}.reveal.is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.reveal{opacity:1;transform:none}}@media print{.site-header,.site-footer,.theme-toggle{display:none}a{color:inherit;text-decoration:underline}}