:root{color-scheme:light;--bg:#f3f6f9;--surface:#fbfcfd;--text:#0c2744;--text-muted:#4a5d73;--muted:#4a5d73;--celeste:#74acdf;--celeste-hover:#5b9bd4;--primary:#74acdf;--primary-bright:#5b9bd4;--line:#d5e2ee;--border:#d5e2ee;--footer-bg:#e8f1f8;--focus:#5b9bd4;--font:system-ui, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, monospace;--max-width:70rem;--header-height:3.75rem}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;font-size:100%}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font);margin:0;line-height:1.6}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.skip{z-index:100;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:.375rem;padding:.625rem 1rem;font-weight:600;text-decoration:none;position:absolute;top:.5rem;left:.5rem;transform:translateY(-200%)}.skip:focus{transform:none}a{color:var(--celeste-hover)}a:hover{color:var(--text)}img{max-width:100%;height:auto}h1,h2,h3{letter-spacing:-.02em;font-weight:700;line-height:1.15}.container{width:min(100% - 2.5rem, var(--max-width));margin-inline:auto}.site-header{z-index:50;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0}.site-header__inner{min-height:var(--header-height);justify-content:space-between;align-items:center;gap:1rem;display:flex}.brand{color:var(--text);align-items:center;gap:.65rem;font-size:1.1rem;font-weight:700;text-decoration:none;display:inline-flex}.brand:hover{color:var(--text)}.brand span.accent,.brand .accent{color:var(--celeste-hover)}.nav-desktop{gap:1.25rem;display:none}.nav-desktop a{color:var(--muted);align-items:center;min-height:2.75rem;padding:.35rem 0;font-size:.9rem;font-weight:500;text-decoration:none;display:inline-flex}.nav-desktop a:hover{color:var(--text)}.nav-desktop a[aria-current=page]{color:var(--text);box-shadow:inset 0 -2px 0 var(--celeste)}.nav-mobile{position:relative}.nav-mobile summary{cursor:pointer;color:var(--muted);border:1px solid var(--line);background:var(--surface);border-radius:8px;justify-content:center;align-items:center;min-height:2.75rem;padding:.5rem .85rem;font-size:.875rem;font-weight:600;list-style:none;display:flex}.nav-mobile summary::-webkit-details-marker{display:none}.nav-mobile[open] summary{color:var(--text);border-color:var(--celeste)}.nav-mobile__panel{background:var(--surface);border:1px solid var(--line);border-radius:10px;min-width:13rem;padding:.5rem;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 12px 32px #0c27441f}.nav-mobile__panel a{color:var(--muted);border-radius:6px;min-height:2.75rem;padding:.7rem .85rem;text-decoration:none;display:block}.nav-mobile__panel a:hover,.nav-mobile__panel a[aria-current=page]{color:var(--text);background:var(--bg)}@media (width>=768px){.nav-desktop{display:flex}.nav-mobile{display:none}}main{padding-block:0 3rem}.hero-band{position:relative;overflow:hidden}.hero-band:before{content:"";background:radial-gradient(closest-side, color-mix(in oklab, var(--celeste) 28%, transparent), transparent 72%);pointer-events:none;height:22rem;animation:10s ease-in-out infinite wash;position:absolute;inset:-20% 20% auto -10%}.hero{gap:2.25rem;padding-block:3.5rem 2.75rem;display:grid;position:relative}.hero--home{text-align:left}@media (width>=840px){.hero--home{grid-template-columns:1.15fr .85fr;align-items:center;padding-block:4rem 3.25rem}}.hero--page{text-align:left;padding-block:2rem 1.25rem}.hero--page h1{max-width:24ch}.kicker,.hero__eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--celeste-hover);margin:0 0 .75rem;font-size:.75rem;font-weight:600}.hero h1{letter-spacing:-.03em;max-width:18ch;margin:0 0 1rem;font-size:clamp(2rem,4.2vw,3.1rem)}.hero__lead,.lead{color:var(--muted);max-width:36rem;margin:0 0 1.75rem;font-size:1.05rem}.hero__actions,.actions{flex-wrap:wrap;justify-content:flex-start;gap:.75rem;display:flex}.hero__art{justify-self:center;width:min(100%,22rem)}.hero__art svg{width:100%;height:auto;display:block}.draw{fill:none;stroke:var(--text);stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:420;stroke-dashoffset:420px;animation:1.25s .15s forwards draw}.draw--accent{stroke:var(--celeste-hover);stroke-width:2px;animation-delay:.45s}.draw--soft{stroke:var(--celeste);stroke-width:1.25px;opacity:.7;animation-delay:.7s}.in{animation:.45s both rise}.in-1{animation-delay:50ms}.in-2{animation-delay:.14s}.in-3{animation-delay:.24s}.in-4{animation-delay:.34s}.btn{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;min-height:2.75rem;padding:.55rem 1.2rem;font-size:.9375rem;font-weight:600;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex;position:relative;overflow:hidden}.btn-primary{background:var(--celeste);color:var(--text)}.btn-primary:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff73,#0000);width:40%;animation:2.4s .9s sheen;position:absolute;inset:0 auto 0 -40%}.btn-primary:hover{background:var(--celeste-hover);color:var(--text)}.btn-primary:hover:after{animation:.7s sheen}.btn-secondary{color:var(--text);border-color:var(--text);background:0 0}.btn-secondary:hover{border-color:var(--celeste-hover);color:var(--text)}.section{border-top:1px solid var(--line);padding-block:2.75rem}.section--flush-top{border-top:none;padding-top:.5rem}.section__header{text-align:left;margin-bottom:1.5rem}.section__header h2{letter-spacing:-.02em;margin:0 0 .5rem;font-size:1.5rem}.section__header p{color:var(--muted);max-width:40rem;margin:0;font-size:1rem}.row-list{margin:0}.row{border-top:1px solid var(--line);border-left:2px solid #0000;gap:.5rem 1.5rem;padding:1.15rem 0;transition:border-color .2s;display:grid}@media (width>=700px){.row{grid-template-columns:3rem 1fr}}.row:last-child{border-bottom:1px solid var(--line)}.row:hover{border-left-color:var(--celeste)}.row__n{color:var(--celeste-hover);font-size:.85rem;font-weight:700}.row h2,.row h3{margin:0 0 .25rem;font-size:1.05rem}.row p{color:var(--muted);margin:0;font-size:.95rem}.row__link{margin-top:.5rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-block}.service-row{scroll-margin-top:calc(var(--header-height) + 1rem)}.tag-list{flex-wrap:wrap;gap:.4rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.tag-list li{border:1px solid var(--line);background:var(--bg);color:var(--muted);border-radius:999px;padding:.28rem .65rem;font-size:.75rem}.cta-band,.band{background:var(--surface);border:1px solid var(--line);text-align:left;border-radius:10px;align-items:center;gap:1rem;margin-block:2.5rem 1rem;padding:2rem;display:grid}@media (width>=700px){.cta-band,.band{grid-template-columns:1fr auto}}.cta-band h2,.band h2{margin:0 0 .35rem;font-size:1.35rem}.cta-band p,.band p{color:var(--muted);max-width:none;margin:0}.cta-band .hero__actions{justify-content:flex-start}.prose{max-width:65ch;color:var(--muted)}.container>.prose{margin-inline:0}.page-story{border-bottom:1px solid var(--line);margin-top:.25rem;padding-block:0 2.5rem}.page-story .section__header{margin-bottom:1rem}.page-story .prose p:last-child{margin-bottom:0}.prose p{margin:0 0 1.05rem}.prose h1,.prose h2{color:var(--text)}.prose h1{margin:0 0 1.25rem;font-size:clamp(1.8rem,3vw + 1rem,2.5rem)}.prose h2{margin:2rem 0 .7rem;font-size:1.35rem}.prose ul{padding-left:1.25rem}.prose li{margin-bottom:.5rem}.prose code{font-family:var(--font-mono);background:var(--surface);border:1px solid var(--line);border-radius:.25rem;padding:.125rem .375rem;font-size:.9em}.split{gap:2rem;display:grid}@media (width>=860px){.split{grid-template-columns:1.05fr .95fr;align-items:start;gap:3rem}}.contact-panel{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:2rem}.contact-panel h2{margin:0 0 1.25rem;font-size:1.35rem}.contact-email-block{margin-bottom:0}.contact-email-block .label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.5rem;font-size:.8rem;font-weight:600;display:block}.contact-email-block a.email{color:var(--text);word-break:break-word;border:1px solid var(--line);border-left:3px solid var(--celeste);background:color-mix(in oklab, var(--celeste) 10%, var(--surface));border-radius:8px;padding:.85rem 1rem .85rem 1.1rem;font-size:clamp(1.15rem,2vw + .5rem,1.45rem);font-weight:700;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;display:inline-block}.contact-email-block a.email:hover{color:var(--text);background:color-mix(in oklab, var(--celeste) 18%, var(--surface));border-left-color:var(--celeste-hover)}.contact-email-block a.email:focus-visible{outline-offset:3px}.contact-note{color:var(--muted);max-width:28rem;margin:1.5rem 0 0;font-size:.8125rem;line-height:1.55}.contact-note a{text-underline-offset:.15em}.contact-aside h2{margin:0 0 1.25rem;font-size:1.35rem}.contact-info-list{margin:0;padding:0;list-style:none}.contact-info-list li{border-top:1px solid var(--line);color:var(--muted);padding:.85rem 0;font-size:.95rem}.contact-info-list li:last-child{border-bottom:1px solid var(--line)}.contact-info-list strong{color:var(--text);margin-bottom:.2rem;font-size:1rem;display:block}.site-footer{border-top:1px solid var(--line);background:var(--footer-bg);margin-top:1rem;padding-block:2.5rem 2rem}.footer-grid{gap:2rem;display:grid}@media (width>=768px){.footer-grid{grid-template-columns:2fr 1fr 1fr}}.site-footer h3{color:var(--text);margin:0 0 .85rem;font-size:.95rem}.site-footer .footer-blurb{color:var(--muted);max-width:28rem;margin:1rem 0 0;font-size:.9375rem}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin-bottom:.55rem}.site-footer a{color:var(--muted);font-size:.9375rem;text-decoration:none}.site-footer a:hover{color:var(--text)}.footer-meta{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:2rem;padding-top:1.5rem;font-size:.875rem;display:flex}.breadcrumb{color:var(--muted);padding-top:1.25rem;font-size:.8125rem}.breadcrumb a{color:var(--muted);text-decoration:none}.breadcrumb a:hover{color:var(--text)}.error-page{text-align:center;max-width:36rem;margin-inline:auto;padding-block:4rem 3rem}.error-page__code{color:var(--celeste-hover);letter-spacing:-.04em;margin:0;font-size:clamp(3.5rem,12vw,4.5rem);line-height:1}.error-page__heading{margin:.75rem 0 1rem;font-size:1.35rem}.error-page__message{color:var(--muted);margin:0 auto 2rem;font-size:1.02rem;line-height:1.6}.error-page .hero__actions{justify-content:center}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-center{text-align:center}.section-cta{border-top:none;padding-top:0}@keyframes draw{to{stroke-dashoffset:0}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes wash{0%,to{opacity:.55;transform:translate(0)}50%{opacity:1;transform:translate(6%,4%)}}@keyframes sheen{0%{transform:translate(0)}to{transform:translate(420%)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-band:before,.draw,.draw--accent,.draw--soft,.in,.btn-primary:after{animation:none!important}.draw,.draw--accent,.draw--soft{stroke-dashoffset:0}.in{opacity:1;transform:none}}
