@font-face{font-family:Inter;src:url(/fonts/InterVariable.woff2) format("woff2-variations"),url(/fonts/InterVariable.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Inter Fallback;src:local("Arial"),local("Liberation Sans"),local("Helvetica Neue");size-adjust:107.4%;ascent-override:90.2%;descent-override:22.48%;line-gap-override:0%}@font-face{font-family:JetBrains Mono Fallback;src:local("Menlo"),local("Consolas"),local("Courier New");size-adjust:96%;ascent-override:100%;descent-override:28%;line-gap-override:0%}:root{--color-bg: #fafbfc;--color-surface: #ffffff;--color-surface-alt: #eceff1;--color-surface-tint: #e3eaee;--color-surface-dark: #617d8a;--color-surface-deep: #455a64;--color-text: #0f1c2b;--color-text-on-dark: #f4f7fb;--color-muted: #455a64;--color-muted-on-dark: #cfd8dc;--color-border: #cfd8dc;--color-border-light: #eceff1;--color-border-dark: #455a64;--color-accent: #455a64;--color-accent-soft: #90a4ae;--color-ocean: #617d8a;--color-ocean-bright: #1565c0;--color-ocean-light: #5b9bd5;--color-ocean-pale: #a5c8e8;--color-deep-navy: #0d3b66;--font-body: "Inter", "Inter Fallback", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Helvetica", Arial, sans-serif;--font-heading: var(--font-body);--font-mono: "JetBrains Mono", "JetBrains Mono Fallback", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--font-size-base: 1.0625rem;--line-height-body: 1.6;--line-height-heading: 1.1;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--content-max: 65ch;--content-wide: 1100px;--content-bleed: 100%;--space-1: .5rem;--space-2: 1rem;--space-3: 1.5rem;--space-4: 2rem;--space-5: 3rem;--space-6: 4rem;--space-7: 6rem;--space-8: 8rem;--radius-sm: 4px;--radius-md: 8px;--transition-fast: .15s ease;--transition-medium: .25s ease}*,*:before,*:after{box-sizing:border-box}html{font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-body);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{margin:0;min-height:100vh}a{color:var(--color-accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,var(--color-accent) 40%,transparent);transition:color var(--transition-fast),text-decoration-color var(--transition-fast)}a:hover{color:var(--color-deep-navy);text-decoration-color:var(--color-deep-navy)}a:focus-visible{outline:2px solid var(--color-ocean-bright);outline-offset:3px;border-radius:2px}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);line-height:var(--line-height-heading);margin:0 0 var(--space-2) 0;font-weight:var(--font-weight-bold);color:var(--color-text)}h1{font-size:clamp(2.25rem,5vw + .5rem,3.25rem);font-weight:var(--font-weight-bold);letter-spacing:-.03em;line-height:1.05}h2{font-size:clamp(1.5rem,2.5vw + .5rem,1.75rem);font-weight:var(--font-weight-semibold);letter-spacing:-.02em}h3{font-size:1.15rem;font-weight:var(--font-weight-semibold);letter-spacing:-.005em}p{margin:0 0 var(--space-2) 0;max-width:var(--content-max)}img,svg{max-width:100%;height:auto;display:block}.container{max-width:var(--content-wide);margin:0 auto;padding:0 var(--space-3)}.prose{max-width:var(--content-max)}.muted{color:var(--color-muted)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}.section-label{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);font-family:var(--font-mono);font-size:.78rem;font-weight:var(--font-weight-medium);letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent)}.section-label:before{content:"";flex:0 0 2.5rem;height:2px;background:var(--color-ocean)}h2.section-label--heading,.section-label--heading{font-size:clamp(1.15rem,2vw + .5rem,1.4rem);letter-spacing:.08em;font-weight:var(--font-weight-semibold);margin-bottom:0}h2.section-label--heading:before,.section-label--heading:before{flex-basis:3rem;height:3px}.about-intro h1,.services-intro h1,.contact-intro h1,.privacy-intro h1,.work-intro h1{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}.about-intro .section-label,.services-intro .section-label,.contact-intro .section-label,.privacy-intro .section-label,.work-intro .section-label{font-size:clamp(1.5rem,3vw + .5rem,2rem);letter-spacing:.04em;margin-bottom:var(--space-3)}.accent-rule{display:block;width:3rem;height:2px;background:var(--color-ocean);margin:var(--space-3) 0;border:0}.accent-rule.wide{width:5rem}.surface-alt{background:var(--color-surface-alt)}.surface-tint{background:var(--color-surface-tint)}.surface-dark{background:var(--color-surface-deep);color:var(--color-text-on-dark)}.surface-dark h1,.surface-dark h2,.surface-dark h3,.surface-dark h4,.surface-dark h5,.surface-dark h6{color:var(--color-text-on-dark)}.surface-dark{--label-color: var(--color-muted-on-dark);--emphasis-text: var(--color-text-on-dark);--sep-color: var(--color-muted-on-dark);--rule-color: var(--color-ocean-pale)}.surface-dark .muted{color:var(--color-muted-on-dark)}.surface-dark .section-label{color:var(--color-muted-on-dark);background:transparent}.surface-dark .section-label:before,.surface-dark .accent-rule{background-color:var(--color-ocean-pale)}.surface-dark .client,.surface-dark .region,.surface-dark .meta-client{color:var(--color-text-on-dark)}.surface-dark .client-label,.surface-dark .footer-label,.surface-dark .card-label,.surface-dark .sep,.surface-dark .trailing{color:var(--color-muted-on-dark)}.surface-dark a{color:var(--color-text-on-dark);text-decoration-color:color-mix(in srgb,var(--color-text-on-dark) 40%,transparent)}.surface-dark a:hover{color:var(--color-ocean-light);text-decoration-color:var(--color-ocean-light)}.surface-dark a:focus-visible{outline-color:var(--color-ocean-light)}.full-bleed{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}input,select,button,textarea{font-family:inherit;font-size:1rem}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-ocean-bright);outline-offset:2px}@media(max-width:768px){:root{--space-7: 4.5rem;--space-8: 6rem}.container{padding:0 var(--space-2)}}@media(max-width:480px){html{font-size:1rem}.section-label:before{flex-basis:1.5rem}}.wordmark[data-astro-cid-hhuuaa7r]{display:inline-flex;align-items:center;gap:.6rem;color:var(--color-ocean);text-decoration:none;transition:color var(--transition-fast);line-height:1;padding:var(--space-1) 0;min-height:44px}.wordmark[data-astro-cid-hhuuaa7r]:hover{color:var(--color-ocean-bright)}.wordmark[data-astro-cid-hhuuaa7r]:focus-visible{outline:2px solid var(--color-ocean-bright);outline-offset:4px;border-radius:2px}.mark[data-astro-cid-hhuuaa7r]{width:1.75rem;height:1.75rem;flex-shrink:0}.wordmark-text[data-astro-cid-hhuuaa7r]{height:1.25rem;aspect-ratio:106 / 18;flex-shrink:0}.geography[data-astro-cid-jle3l4gz]{font-size:.95rem;letter-spacing:.01em;margin:0;line-height:1.7;color:var(--sep-color, var(--color-muted))}.region[data-astro-cid-jle3l4gz]{color:var(--emphasis-text, var(--color-accent));font-weight:var(--font-weight-medium)}.sep[data-astro-cid-jle3l4gz]{color:var(--sep-color, var(--color-muted));opacity:.6}.skip-link[data-astro-cid-jwirc66j]{position:absolute;left:-9999px;top:0;background:var(--color-surface-deep);color:var(--color-text-on-dark);padding:var(--space-1) var(--space-2);text-decoration:none;font-weight:var(--font-weight-medium);z-index:1000}.skip-link[data-astro-cid-jwirc66j]:focus{left:var(--space-2);top:var(--space-2)}.site-header[data-astro-cid-jwirc66j]{background:var(--color-bg);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:50;backdrop-filter:saturate(180%) blur(8px);-webkit-backdrop-filter:saturate(180%) blur(8px);background:color-mix(in srgb,var(--color-bg) 90%,transparent)}.site-header-inner[data-astro-cid-jwirc66j]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) var(--space-3);gap:var(--space-3);flex-wrap:wrap;min-height:56px}.site-header[data-astro-cid-jwirc66j] nav[data-astro-cid-jwirc66j] ul[data-astro-cid-jwirc66j]{list-style:none;margin:0;padding:0;display:flex;gap:var(--space-3);flex-wrap:wrap}.site-header[data-astro-cid-jwirc66j] nav[data-astro-cid-jwirc66j] a[data-astro-cid-jwirc66j]{color:var(--color-text);text-decoration:none;font-size:.95rem;font-weight:var(--font-weight-medium);padding:var(--space-1) 0;position:relative;transition:color var(--transition-fast);display:inline-block;min-height:44px;line-height:44px}.site-header[data-astro-cid-jwirc66j] nav[data-astro-cid-jwirc66j] a[data-astro-cid-jwirc66j]:after{content:"";position:absolute;left:0;right:0;bottom:10px;height:2px;background:var(--color-ocean);transform:scaleX(0);transform-origin:left center;transition:transform var(--transition-medium)}.site-header[data-astro-cid-jwirc66j] nav[data-astro-cid-jwirc66j] a[data-astro-cid-jwirc66j][aria-current=page]:after,.site-header[data-astro-cid-jwirc66j] nav[data-astro-cid-jwirc66j] a[data-astro-cid-jwirc66j]:hover:after{transform:scaleX(1)}.site-header[data-astro-cid-jwirc66j] nav[data-astro-cid-jwirc66j] a[data-astro-cid-jwirc66j]:hover{color:var(--color-deep-navy)}.site-header[data-astro-cid-jwirc66j] nav[data-astro-cid-jwirc66j] a[data-astro-cid-jwirc66j][aria-current=page]{color:var(--color-deep-navy)}main[data-astro-cid-jwirc66j]{display:block}.site-footer[data-astro-cid-jwirc66j]{margin-top:0;padding:var(--space-7) 0 var(--space-4)}.footer-grid[data-astro-cid-jwirc66j]{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(15rem,100%),1fr));gap:var(--space-5) var(--space-4);margin-bottom:var(--space-5)}.footer-label[data-astro-cid-jwirc66j]{font-family:var(--font-mono);font-size:.75rem;font-weight:var(--font-weight-medium);letter-spacing:.18em;text-transform:uppercase;color:var(--label-color, var(--color-ocean-pale));margin:0 0 var(--space-2)}.footer-text[data-astro-cid-jwirc66j]{margin:0;line-height:1.6;color:var(--color-muted-on-dark)}.footer-links[data-astro-cid-jwirc66j]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.footer-links[data-astro-cid-jwirc66j] a[data-astro-cid-jwirc66j]{display:inline-block;min-height:32px;line-height:32px}.footer-bottom[data-astro-cid-jwirc66j]{margin:0;padding-top:var(--space-3);border-top:1px solid var(--color-border-dark);color:var(--color-muted-on-dark);font-size:.85rem}@media(max-width:600px){.site-header-inner[data-astro-cid-jwirc66j]{flex-direction:column;align-items:flex-start;gap:var(--space-1);padding:var(--space-2) var(--space-3)}.site-header[data-astro-cid-jwirc66j] nav[data-astro-cid-jwirc66j] ul[data-astro-cid-jwirc66j]{gap:var(--space-3)}.site-header[data-astro-cid-jwirc66j] nav[data-astro-cid-jwirc66j] a[data-astro-cid-jwirc66j]{min-height:40px;line-height:40px}}@media(max-width:480px){.site-header[data-astro-cid-jwirc66j] nav[data-astro-cid-jwirc66j] ul[data-astro-cid-jwirc66j]{gap:var(--space-2)}}
