:root,[data-theme=light]{--bg: #f3f7f8;--surface: #ffffff;--ink: #0e1a21;--muted: #3d5360;--line: rgba(14, 26, 33, .12);--accent: #21a3c8;--accent-deep: #066e90;--accent-soft: #e5f5fa;--wing: #7fc6dc;--link: #066e90;--on-accent: #ffffff;--header: rgba(243, 247, 248, .9);--stage: #0e1a21;--stage-text: #f4fbfc;--stage-muted: #c5d4db;--band: #21a3c8;--band-ink: #062028;--shadow: 0 18px 50px rgba(14, 26, 33, .08);color-scheme:light}[data-theme=dark]{--bg: #0e1a21;--surface: #152833;--ink: #f4fbfc;--muted: #b7c8d0;--line: rgba(244, 251, 252, .14);--accent: #21a3c8;--accent-deep: #0a7ea3;--accent-soft: rgba(33, 163, 200, .16);--wing: #7fc6dc;--link: #8fd0e4;--on-accent: #ffffff;--header: rgba(14, 26, 33, .9);--stage: #071016;--stage-text: #f4fbfc;--stage-muted: #c5d4db;--band: #123844;--band-ink: #f4fbfc;--shadow: none;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font-family:Outfit,Avenir Next,Segoe UI,sans-serif;font-size:1.0625rem;line-height:1.55;text-rendering:optimizeLegibility}img{max-width:100%;display:block}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.18em}button,input,textarea{font:inherit;color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Bricolage Grotesque,Outfit,sans-serif;font-weight:720;letter-spacing:-.045em;line-height:.98}h1{font-size:clamp(2.8rem,6vw,5.15rem);max-width:11ch}h2{font-size:clamp(2.1rem,4vw,3.4rem);max-width:16em}h3{font-size:1.45rem;letter-spacing:-.03em;line-height:1.15}::selection{background:var(--wing);color:#0e1a21}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.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;left:1rem;top:-3rem;z-index:40;padding:.55rem .8rem;background:var(--ink);color:var(--bg);border-radius:8px}.skip-link:focus{top:.8rem}.eyebrow{margin:0 0 .85rem;color:var(--link);font-size:.78rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.lead{color:var(--muted);font-size:1.125rem;max-width:38rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:2.9rem;padding:.7rem 1.2rem;border:1px solid transparent;border-radius:999px;background:var(--accent-deep);color:var(--on-accent);font-size:.98rem;font-weight:600;line-height:1;text-decoration:none;cursor:pointer}.button:hover{background:#055977}.button-ghost{background:transparent;color:var(--ink);border-color:var(--line)}.button-ghost:hover{background:var(--accent-soft);border-color:transparent}.button-small{min-height:2.45rem;padding:.5rem .95rem;font-size:.92rem}.site-header{position:sticky;top:0;z-index:20;background:var(--header);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.header-bar,.section,.band-inner,.hero-inner,.site-footer,.page-contact,.page-missing{width:min(1120px,calc(100% - 2.5rem));margin-inline:auto}.header-bar{display:flex;align-items:center;gap:1rem;min-height:4.25rem}.brand{display:flex;align-items:center;text-decoration:none;margin-right:auto}.logo{width:auto;height:34px}.logo-footer{height:42px}.nav-desktop{display:none;align-items:center;gap:1.35rem}.nav-desktop a,.nav-mobile a:not(.button){color:var(--ink);font-size:.95rem;font-weight:500;text-decoration:none}.nav-desktop a:hover,.nav-mobile a:not(.button):hover,.nav-desktop a[aria-current=page],.nav-mobile a[aria-current=page]{color:var(--link)}.header-actions{display:flex;align-items:center;gap:.45rem}.icon-button{display:inline-grid;place-items:center;width:2.45rem;height:2.45rem;padding:0;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink);cursor:pointer}.icon-button:hover{background:var(--accent-soft)}.menu-glyph,.menu-glyph:before,.menu-glyph:after{background:transparent}.menu-glyph{position:relative;width:14px;height:10px}.menu-glyph:before,.menu-glyph:after{content:"";position:absolute;left:0;width:14px;height:1.5px;background:currentColor;transition:transform .2s ease}.menu-glyph:before{top:1px;box-shadow:0 4px 0 currentColor}.menu-glyph:after{bottom:1px}.menu-glyph.is-open:before{top:4px;box-shadow:none;transform:rotate(45deg)}.menu-glyph.is-open:after{bottom:4.5px;transform:rotate(-45deg)}.nav-mobile{display:none;padding:.25rem 0 1.1rem}.nav-mobile.is-open{display:grid;gap:.85rem;width:min(1120px,calc(100% - 2.5rem));margin:0 auto .4rem;padding-bottom:.85rem}.nav-mobile a:not(.button){font-size:1.2rem}.header-cta{display:none}.hero{background:radial-gradient(ellipse at 0% 50%,rgba(33,163,200,.22),transparent 42%),var(--stage);color:var(--stage-text)}.hero h1{max-width:16ch}.hero-inner{padding:3.5rem 0 4.5rem}.hero .eyebrow{color:var(--wing)}.hero-kicker{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem}.hero-kicker span{display:inline-flex;align-items:center;gap:.7rem}.hero-kicker span:before{content:"";width:.28rem;height:.28rem;border-radius:999px;background:currentColor}.hero .lead{color:var(--stage-muted);margin-top:1.15rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.6rem}.hero .button{background:#21a3c8;color:#062028}.hero .button:hover{background:#7fc6dc}.hero .button-ghost{color:#f4fbfc;border-color:#f4fbfc47;background:transparent}.hero .button-ghost:hover{background:#f4fbfc14;border-color:#f4fbfc47}.section{padding:4.75rem 0 .25rem;scroll-margin-top:5.25rem}.section-intro{margin-bottom:1.6rem}.section-intro .lead{margin-top:.85rem}.service-list{display:grid;gap:.9rem}.service{display:flex;flex-direction:column;gap:.7rem;min-height:100%;padding:1.35rem 1.25rem 1.15rem;border:1px solid var(--line);border-radius:1.1rem;background:var(--surface)}.service h3{font-size:1.35rem}.service p:not(.card-capability){color:var(--muted)}.card-capability{margin-top:auto;padding-top:.9rem;border-top:1px solid var(--line);color:var(--link);font-size:.92rem;font-weight:600}.work-band{margin-top:4.5rem;padding:3.4rem 0 3.6rem;background:var(--band);color:var(--band-ink);scroll-margin-top:4.25rem}.work-band .eyebrow{color:var(--band-ink);opacity:.72}.work-band h2{max-width:none}.work-list{display:grid;gap:.9rem;margin:1.6rem 0 0;padding:0;list-style:none}.work-card{padding:1.25rem 1.2rem;border-radius:1.1rem;background:#fff;color:#0e1a21}.work-card h3{margin-bottom:.85rem;font-size:1.25rem}.work-card p{margin:0;color:#3e5560}.work-card p+p{margin-top:.75rem}.work-card strong{display:block;margin-bottom:.2rem;color:#066e90;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}.steps{display:grid;gap:1.6rem;margin:0;padding:0;list-style:none}.step-n{display:grid;place-items:center;width:2.15rem;height:2.15rem;margin-bottom:.85rem;border-radius:999px;background:var(--accent);color:#062028;font-family:Outfit,sans-serif;font-size:.95rem;font-weight:700;letter-spacing:0}.steps h3{margin-bottom:.4rem}.steps p:last-child{color:var(--muted)}.section-contact,.page-contact{padding-bottom:4.5rem}.page-contact{padding-top:2.5rem}.contact-panel{display:grid;overflow:hidden;border:1px solid var(--line);border-radius:1.5rem;background:var(--surface)}.contact-copy{padding:1.7rem 1.4rem 1.5rem;background:var(--stage);color:var(--stage-text)}.contact-copy .eyebrow{color:var(--wing)}.contact-copy .lead{color:var(--stage-muted)}.contact-copy h1,.contact-copy h2{margin-bottom:.85rem;max-width:14ch}.contact-list{display:grid;gap:.9rem;margin:1.5rem 0 0;padding:0;list-style:none}.contact-list li{display:grid;gap:.1rem}.contact-list span:first-child{color:var(--wing);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.contact-list a,.contact-list li span:last-child{font-weight:600}.contact-list a{color:#fff;width:fit-content}.contact-form{display:grid;gap:.95rem;align-content:start;padding:1.5rem 1.4rem 1.6rem}.field{display:grid;gap:.35rem}.field label{font-size:.92rem;font-weight:600}.field input,.field textarea{width:100%;padding:.8rem .85rem;border:1px solid var(--line);border-radius:.8rem;background:var(--bg)}.field textarea{resize:vertical;min-height:8.5rem}.form-note{margin:0;color:var(--muted);font-size:.9rem}.form-status{margin:0}.form-status.is-sent{color:var(--link);font-weight:600}.form-status.is-error{color:#9f1239}.form-status a{color:inherit;font-weight:700}[data-theme=dark] .form-status.is-error{color:#ffb4b4}.button:disabled{opacity:.7;cursor:wait}.page-missing{padding:5rem 0 6rem}.page-missing h1{max-width:10ch;margin-bottom:1rem}.site-footer{padding:1.4rem 0 2rem;border-top:1px solid var(--line)}.footer-grid{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2rem}.footer-links{display:flex;flex-wrap:wrap;gap:.7rem 1.3rem;color:var(--muted)}.footer-links a{color:var(--link);font-weight:600}.footer-note{margin-top:1.1rem;color:var(--muted);font-size:.9rem}@media(min-width:720px){.service-list,.work-list{grid-template-columns:1fr 1fr}.steps{grid-template-columns:repeat(3,1fr);gap:1.5rem}}@media(min-width:900px){.nav-desktop,.header-cta{display:flex}.menu-button{display:none}.nav-mobile{display:none!important}.hero-inner{padding:5.5rem 0 6rem}.service-list,.work-list{grid-template-columns:repeat(3,1fr)}.contact-panel{grid-template-columns:.9fr 1.1fr}.contact-copy,.contact-form{padding:2.4rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
