@import "https://fonts.googleapis.com/css2?family=Bungee&family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans:wght@400;500;600&display=swap";:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand-blue:#5b6ffa;--brand-pink:#f266c8;--brand-cobalt:#034bae;--brand-violet:#a669e0;--brand-orchid:#c46be3;--surface:#f7f7fc;--surface-raised:#fff;--surface-sunken:#eceef8;--line:#d9dcef;--line-strong:#7c80a3;--ink:#12142b;--ink-muted:#51557a;--primary:#034bae;--primary-hover:#023c8c;--primary-soft:#e3e9ff;--on-primary:#fff;--accent:#b02489;--accent-soft:#fde6f5;--pass:#006b78;--pass-soft:#dcf4f6;--fail:#b93815;--fail-soft:#fde7e0;--warn:#855400;--warn-soft:#fbefd6;--link:var(--primary);--focus:var(--primary);--shadow-sm:0 1px 2px #12142b0f, 0 1px 3px #12142b14;--shadow-lg:0 4px 8px #12142b14, 0 16px 32px -4px #12142b29;--focus-ring:0 0 0 2px #f7f7fc, 0 0 0 4px #034bae}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--brand-blue:#5b6ffa;--brand-pink:#f266c8;--brand-cobalt:#034bae;--brand-violet:#a669e0;--brand-orchid:#c46be3;--surface:#0d0f22;--surface-raised:#161933;--surface-sunken:#08091a;--line:#2b2f55;--line-strong:#6e739c;--ink:#eceefb;--ink-muted:#a4a8c8;--primary:#94a4ff;--primary-hover:#b3bfff;--primary-soft:#1c2356;--on-primary:#0d0f22;--accent:#f58bd6;--accent-soft:#3a1433;--pass:#4fd0dc;--pass-soft:#0b2e33;--fail:#ff9b7a;--fail-soft:#3b170d;--warn:#f2b84b;--warn-soft:#33250a;--link:var(--primary);--focus:var(--primary);--shadow-sm:0 1px 3px #000000b3;--shadow-lg:0 16px 32px -4px #000c;--focus-ring:0 0 0 2px #0d0f22, 0 0 0 4px #94a4ff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--brand-blue:#5b6ffa;--brand-pink:#f266c8;--brand-cobalt:#034bae;--brand-violet:#a669e0;--brand-orchid:#c46be3;--surface:#0d0f22;--surface-raised:#161933;--surface-sunken:#08091a;--line:#2b2f55;--line-strong:#6e739c;--ink:#eceefb;--ink-muted:#a4a8c8;--primary:#94a4ff;--primary-hover:#b3bfff;--primary-soft:#1c2356;--on-primary:#0d0f22;--accent:#f58bd6;--accent-soft:#3a1433;--pass:#4fd0dc;--pass-soft:#0b2e33;--fail:#ff9b7a;--fail-soft:#3b170d;--warn:#f2b84b;--warn-soft:#33250a;--link:var(--primary);--focus:var(--primary);--shadow-sm:0 1px 3px #000000b3;--shadow-lg:0 16px 32px -4px #000c;--focus-ring:0 0 0 2px #0d0f22, 0 0 0 4px #94a4ff}}:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--radius-xs:2px;--radius-sm:4px;--radius-md:8px;--radius-full:9999px;--gradient-mark:linear-gradient(160deg, #5b6ffa, #a669e0 55%, #f266c8);--gradient-wordmark:linear-gradient(90deg, #034bae, #5357c3 45%, #c46be3);--font-display:Bungee, "Arial Black", system-ui, sans-serif;--font-sans:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace}.type-display-xl{font-family:var(--font-display);font-size:56px;font-weight:400;line-height:60px}.type-display-lg{font-family:var(--font-display);font-size:40px;font-weight:400;line-height:44px}.type-display-md{font-family:var(--font-display);font-size:28px;font-weight:400;line-height:32px}.type-title{font-family:var(--font-sans);letter-spacing:-.01em;font-size:24px;font-weight:600;line-height:32px}.type-heading{font-family:var(--font-sans);font-size:18px;font-weight:600;line-height:26px}.type-body{font-family:var(--font-sans);font-size:16px;font-weight:400;line-height:24px}.type-body-sm{font-family:var(--font-sans);font-size:14px;font-weight:400;line-height:20px}.type-label{font-family:var(--font-sans);letter-spacing:.02em;font-size:13px;font-weight:500;line-height:16px}.type-caption{font-family:var(--font-sans);font-size:12px;font-weight:400;line-height:16px}.type-code{font-family:var(--font-mono);font-size:14px;font-weight:400;line-height:20px}.type-code-sm{font-family:var(--font-mono);font-size:12px;font-weight:400;line-height:18px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--surface);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,p,ul,ol,dl,dd,pre{margin:0}img{max-width:100%;height:auto}a{color:var(--link)}.container{width:100%;max-width:1120px;padding-inline:var(--space-4);margin-inline:auto}.muted{color:var(--ink-muted)}.accent{color:var(--accent)}.list-reset{padding:0;list-style:none}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus{outline:none}:focus-visible{box-shadow:var(--focus-ring);outline:2px solid #0000}[tabindex="-1"]:focus{box-shadow:none}.skip-link{top:var(--space-2);left:var(--space-2);z-index:100;padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--primary);color:var(--on-primary);text-decoration:none;position:fixed;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.btn{min-height:var(--space-12);padding:var(--space-2) var(--space-6);border-radius:var(--radius-sm);font:500 16px/24px var(--font-sans);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{color:var(--primary);border-color:var(--primary);background:0 0}.btn-secondary:hover{background:var(--primary-soft)}.btn:disabled{opacity:.6;cursor:progress}.site-header{z-index:50;height:var(--space-16);background:var(--surface);border-bottom:1px solid var(--line);position:fixed;inset:0 0 auto}.header-inner{justify-content:space-between;align-items:center;gap:var(--space-6);height:100%;display:flex}.logo{border-radius:var(--radius-sm);align-items:center;display:inline-flex}.logo-mark{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .logo-wordmark{display:none}:root:not([data-theme=light]) .logo-mark{display:block}}[data-theme=dark] .logo-wordmark{display:none}[data-theme=dark] .logo-mark{display:block}.logo img{height:auto}.logo-mark{width:var(--space-12)}.header-actions{align-items:center;gap:var(--space-4);display:flex}.nav-desktop,.nav-cta{display:none}.nav-list{gap:var(--space-6);margin:0;padding:0;list-style:none;display:flex}.nav-link{min-height:var(--space-12);color:var(--ink);border-radius:var(--radius-sm);align-items:center;text-decoration:none;display:inline-flex;position:relative}.nav-link:hover,.nav-link[aria-current]{color:var(--primary)}.nav-indicator{left:0;right:0;bottom:var(--space-2);background:var(--primary);height:2px;position:absolute}.menu-button{min-height:var(--space-12);padding:var(--space-2) var(--space-4);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-sm);cursor:pointer;background:0 0}.theme-toggle{min-height:44px;padding:var(--space-2) 0;border-radius:var(--radius-full);cursor:pointer;background:0 0;border:0;align-items:center;display:inline-flex}.theme-track{background:var(--surface-sunken);border:1px solid var(--line-strong);border-radius:var(--radius-full);align-items:center;width:56px;height:32px;padding:3px;display:flex;position:relative}.theme-track[data-end=right]{justify-content:flex-end}.theme-track-icon{color:var(--ink-muted);margin-top:-7px;position:absolute;top:50%}.theme-track-sun{left:8px}.theme-track-moon{right:8px}.theme-thumb{z-index:1;border-radius:var(--radius-full);background:var(--primary);width:24px;height:24px;color:var(--on-primary);justify-content:center;align-items:center;display:flex;position:relative}.theme-thumb-icon{display:inline-flex}.text-button{min-height:var(--space-12);border-radius:var(--radius-sm);color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.theme-transition,.theme-transition *,.theme-transition :before,.theme-transition :after{transition:background-color .15s,color .15s,border-color .15s!important}.menu-backdrop{inset:var(--space-16) 0 0 0;z-index:40;position:fixed}.menu-panel{top:var(--space-16);z-index:60;width:min(320px,100%);padding:var(--space-6);gap:var(--space-6);background:var(--surface-raised);border-left:1px solid var(--line);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:fixed;bottom:0;right:0}.menu-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.menu-list .nav-link{width:100%}.menu-list .nav-indicator{top:var(--space-2);bottom:var(--space-2);width:2px;right:auto;left:calc(var(--space-3) * -1);height:auto}@media (width>=1024px){.nav-desktop,.nav-cta{display:flex}.menu-button,.menu-panel,.menu-backdrop{display:none}.logo-wordmark{width:120px}}@media (width<=1023px){.nav-cta{display:none}}@media (width<=400px){.header-actions{gap:var(--space-2)}}.scroll-progress{z-index:70;height:var(--space-1);background:var(--gradient-wordmark);transform-origin:0;position:fixed;top:0;left:0;right:0}.stage{z-index:0;pointer-events:none;position:fixed;inset:0}.stage canvas{display:block}@media (width>=1024px){.stage{-webkit-mask-image:linear-gradient(90deg,#0000 54%,#000 60%);mask-image:linear-gradient(90deg,#0000 54%,#000 60%)}}main{z-index:1;padding-top:var(--space-16);position:relative}.section{padding-block:var(--space-16);background:var(--surface);scroll-margin-top:var(--space-16);position:relative}.section:focus{outline:none}@media (width>=1024px){.section{background:0 0}}.section-grid{grid-template-columns:minmax(0,1fr);display:grid}@media (width>=1024px){.section-grid{column-gap:var(--space-6);grid-template-columns:repeat(12,minmax(0,1fr))}.col-main{grid-column:1/span 7}}.col-main{gap:var(--space-6);flex-direction:column;min-width:0;display:flex}.section-head{gap:var(--space-3);flex-direction:column;max-width:60ch;display:flex}.hero{background:0 0;padding-block:0}.hero-grid{padding-block:var(--space-6) var(--space-12)}.hero-art{justify-content:center;align-items:center;height:36svh;display:flex}.hero-fallback{width:auto;height:80%}.hero-copy{gap:var(--space-4);background:var(--surface);padding-block:var(--space-6)}.hero-title{overflow-wrap:anywhere}.hero-lede{max-width:56ch}.cta-row{gap:var(--space-3);padding-top:var(--space-2);flex-wrap:wrap;display:flex}@media (width>=1024px){.hero{min-height:calc(100svh - var(--space-16));align-items:center;display:flex}.hero-grid{width:100%}.hero-art{grid-area:1/8/auto/-1;height:auto;min-height:50svh}.hero-copy{background:0 0;grid-area:1/1/auto/span 7;padding-block:0}}@keyframes rise{0%{opacity:0;transform:translateY(var(--space-4))}to{opacity:1;transform:none}}.rise{animation:.5s ease-out both rise;animation-delay:calc(var(--i,0) * 80ms)}.card{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.card-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=640px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.card-grid>li{display:flex}.service-card{gap:var(--space-3);width:100%;padding:var(--space-6);flex-direction:column;transition:transform .2s,border-color .2s;display:flex;position:relative}.service-card:hover,.service-card:focus-within{border-color:var(--primary);transform:translateY(-2px)}.card-link{color:var(--ink);text-decoration:none}.card-link:after{content:"";border-radius:var(--radius-md);position:absolute;inset:0}.card-link:focus-visible{box-shadow:none}.card-link:focus-visible:after{box-shadow:var(--focus-ring)}.card-more{color:var(--primary);margin-top:auto}.icon-tile{width:var(--space-12);height:var(--space-12);padding:var(--space-2);color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-sm);flex:none;justify-content:center;align-items:center;display:inline-flex}.ai{width:100%;height:100%;display:block;overflow:visible}.ai *{transform-box:fill-box;transform-origin:50%}.ai-flow{animation:1.2s linear infinite ai-dash}.ai-packet{animation:2.4s ease-in-out infinite ai-packet}.ai-blink{animation:2s ease-in-out infinite ai-blink}.ai-d1{animation-delay:.5s}.ai-d2{animation-delay:1s}.ai-d3{animation-delay:1.5s}.ai-check{stroke-dasharray:1;animation:2.4s ease-in-out infinite ai-draw}.ai-draw{stroke-dasharray:1;animation:3s ease-in-out infinite ai-draw}.ai-ring{animation:14s linear infinite ai-spin}.ai-scan{animation:3s ease-in-out infinite ai-scan}.ai-spin{animation:8s linear infinite ai-spin}@keyframes ai-dash{to{stroke-dashoffset:-20px}}@keyframes ai-packet{0%,to{transform:translate(0)}50%{transform:translate(32px)}}@keyframes ai-blink{0%,to{opacity:1}50%{opacity:.25}}@keyframes ai-draw{0%{stroke-dashoffset:1px}50%,85%{stroke-dashoffset:0}to{stroke-dashoffset:0;opacity:0}}@keyframes ai-spin{to{transform:rotate(360deg)}}@keyframes ai-scan{0%,to{transform:translate(0)}50%{transform:translate(5px,4px)}}.pipeline{gap:var(--space-8);padding-top:var(--space-2);grid-template-columns:minmax(0,1fr);display:grid;position:relative}.pipeline-rail{display:none}.pipeline-step{gap:var(--space-2);flex-direction:column;align-items:flex-start;display:flex}.step-icon{margin-bottom:var(--space-2)}@media (width>=640px){.pipeline{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr))}.pipeline-rail{left:0;right:0;top:calc(var(--space-2) + var(--space-12) * .5);background:var(--line);z-index:0;height:2px;display:block;position:absolute}.pipeline-fill{background:var(--gradient-wordmark);transform-origin:0;height:100%;display:block}.pipeline-step{z-index:1;position:relative}.step-icon{outline:var(--space-2) solid var(--surface)}}.code-block{padding:var(--space-4);white-space:pre;background:var(--surface-sunken);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);margin:0;overflow-x:auto}.tok-comment{color:var(--ink-muted)}.tok-string{color:var(--pass)}.tok-regex{color:var(--warn)}.tok-keyword{color:var(--primary)}.expertise{gap:var(--space-8);flex-direction:column;display:flex}.ai-panel{padding:var(--space-6);gap:var(--space-6);flex-direction:column;display:flex;position:relative;overflow:hidden}.ai-panel-grid{z-index:0;pointer-events:none;opacity:.6;position:absolute;inset:0}.ai-panel-spot{z-index:0;pointer-events:none;position:absolute;inset:0}.ai-panel-line{background:var(--gradient-wordmark);z-index:1;height:2px;position:absolute;top:0;left:0;right:0}.ai-panel-body,.ai-footnote{z-index:1;position:relative}.ai-panel-body{gap:var(--space-8);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=900px){.ai-panel-body{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}.ai-panel-tools{gap:var(--space-4);flex-direction:column;display:flex}.ai-chip-group{gap:var(--space-2);flex-direction:column;display:flex}.ai-panel-flow{gap:var(--space-4);flex-direction:column;display:flex}.ai-tagline{color:var(--ink);font-weight:600}.chip-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);background:var(--surface-sunken);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-xs);display:inline-flex}.chip-ai{background:var(--surface-raised);border-color:var(--line-strong)}.chip-icon{color:var(--primary);flex:none}.flow{gap:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}.flow-step{align-items:flex-start;gap:var(--space-3);display:flex;position:relative}.flow-node-art{width:var(--space-12);flex:none;height:auto;overflow:visible}.flow-tri{fill:var(--surface);stroke:var(--line-strong);stroke-width:2px;stroke-linejoin:miter}.flow-tri-lit{fill:var(--primary-soft);stroke:var(--primary)}.flow-num{fill:var(--ink);font:600 12px/1 var(--font-mono)}.flow-copy{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.flow-link{left:calc(var(--space-6) - 1px);top:calc(var(--space-12) - var(--space-2));width:2px;height:calc(var(--space-4) + var(--space-4));background:var(--primary);position:absolute}@media (width>=640px){.flow{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr))}.flow-step{flex-direction:column}.flow-link{left:calc(var(--space-12) + var(--space-2));right:calc(var(--space-4) * -1);top:calc(var(--space-6));width:auto;height:2px}}@media (width>=900px) and (width<=1100px){.flow{grid-template-columns:repeat(2,minmax(0,1fr))}.flow-link{display:none}}.bento{gap:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}.bento-card{align-items:flex-start;gap:var(--space-3);padding:var(--space-6);flex-direction:column;min-width:0;transition:border-color .2s;display:flex}.bento-card:hover,.bento-card:focus-within{border-color:var(--primary)}.bento-card .chip-list{padding-top:var(--space-2);margin-top:auto}@media (width>=640px){.bento{grid-template-columns:repeat(2,minmax(0,1fr))}.bento-card.span-8,.bento-card.span-6{grid-column:1/-1}}@media (width>=1024px){.bento{grid-template-columns:repeat(12,minmax(0,1fr))}.bento-card.span-8{grid-column:span 8}.bento-card.span-6{grid-column:span 6}.bento-card.span-4{grid-column:span 4}.bento-card.span-3{grid-column:span 3}}.domains{gap:var(--space-3);flex-direction:column;display:flex}.marquee{align-items:center;gap:var(--space-3);border-top:1px solid var(--line);padding-top:var(--space-4);display:flex}.marquee-viewport{flex:1;min-width:0;overflow:hidden}.marquee-track{will-change:transform;width:max-content;display:flex}.marquee-list{flex:none;display:flex}.marquee-item{align-items:center;gap:var(--space-2);padding-inline:var(--space-4);color:var(--ink-muted);white-space:nowrap;display:inline-flex}.marquee-tri{width:var(--space-2);height:var(--space-2);background:var(--brand-violet);clip-path:polygon(50% 0,100% 100%,0 100%);flex:none}.marquee-toggle{flex:none}.placeholder-note{padding-top:var(--space-2)}.form-card{padding:var(--space-6);gap:var(--space-4);flex-direction:column;max-width:640px;display:flex}.field{gap:var(--space-1);flex-direction:column;display:flex}.input{width:100%;min-height:var(--space-12);padding:var(--space-2) var(--space-3);background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-sm)}textarea.input{resize:vertical}.input[aria-invalid=true]{border-color:var(--fail)}.field-error{color:var(--fail)}.form-card .btn{align-self:flex-start}.page{gap:var(--space-6);padding-block:var(--space-12) var(--space-16);flex-direction:column;max-width:800px;display:flex}.page-lede{max-width:60ch}.point-list{gap:var(--space-3);padding-left:var(--space-6);flex-direction:column;margin:0;display:flex}.text-link{color:var(--primary)}.site-footer{z-index:1;background:var(--surface);border-top:1px solid var(--line);padding-block:var(--space-8);position:relative}.footer-inner{gap:var(--space-6);flex-direction:column;display:flex}.footer-brand{align-items:center;gap:var(--space-4);display:flex}.footer-brand img{width:var(--space-16);height:auto}.footer-links{gap:var(--space-2) var(--space-6);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.footer-link{min-height:var(--space-12);color:var(--ink);align-items:center;display:inline-flex}.footer-legal{color:var(--ink-muted)}@media (width>=1024px){.footer-inner{flex-direction:row;justify-content:space-between;align-items:center}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.service-card:hover,.service-card:focus-within{transform:none}.ai-panel-spot{display:none}}.about{overflow:hidden}.about-grid{z-index:0;pointer-events:none;opacity:.5;position:absolute;inset:0;overflow:hidden}.about-grid-drift{width:calc(100% + var(--space-12));position:absolute;top:0;bottom:0;left:0}.about-grid-svg{display:block}.about-inner{z-index:1;row-gap:var(--space-12);position:relative}.about-story{gap:var(--space-6)}.about-photo-row{align-items:flex-end;gap:var(--space-6);display:flex}.about-heading{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.about-heading h2{overflow-wrap:anywhere}.word{margin-right:.3em;display:inline-block}.portrait{margin:calc(-1 * var(--space-6)) calc(-1 * var(--space-6)) 0}.portrait-stage{aspect-ratio:4/3;border-bottom:1px solid var(--line);position:relative}.portrait-frame{pointer-events:none;background:var(--surface-raised);position:absolute;inset:0;overflow:hidden}.portrait-grid{opacity:.8;display:block;position:absolute;inset:0}.portrait-tri{display:block;position:absolute}.portrait-tri-a{background:var(--gradient-mark);opacity:.55;clip-path:polygon(50% 0,100% 100%,0 100%);inset:14% 2% 0 22%}.portrait-tri-b{background:var(--brand-violet);opacity:.35;clip-path:polygon(0 100%,100% 100%,0 0);width:34%;height:56%;bottom:0;left:0}.portrait-tri-c{background:var(--gradient-mark);opacity:.3;clip-path:polygon(100% 0,100% 100%,0 100%);width:22%;height:30%;top:12%;right:0}.portrait-btn{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:0;margin:0;padding:0;display:block;position:absolute;inset:0}.portrait-clip{display:block;position:absolute;inset:0;overflow:hidden}.portrait-layers{display:block;position:absolute;inset:0}.portrait-grey,.portrait-colour{justify-content:center;align-items:flex-end;display:flex;position:absolute;inset:0}.portrait-layers picture{width:60%;display:block}.portrait-layers img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:auto;display:block}.portrait-grey{filter:grayscale()contrast(1.05)}.portrait-colour{-webkit-mask-image:radial-gradient(circle var(--reveal-r,.5px) at var(--reveal-x,50%) var(--reveal-y,50%), #000 98%, transparent 100%);-webkit-mask-image:radial-gradient(circle var(--reveal-r,.5px) at var(--reveal-x,50%) var(--reveal-y,50%), #000 98%, transparent 100%);mask-image:radial-gradient(circle var(--reveal-r,.5px) at var(--reveal-x,50%) var(--reveal-y,50%), #000 98%, transparent 100%)}.portrait-btn[data-reduced=true] .portrait-colour{-webkit-mask-image:none;mask-image:none}.portrait-btn[data-reduced=true][data-colour=false] .portrait-colour{visibility:hidden}@supports not ((-webkit-mask-image:radial-gradient(#000, #000)) or (mask-image:radial-gradient(#000, #000))){.portrait-grey{display:none}}.portrait-hint{left:var(--space-3);bottom:var(--space-3);align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);background:var(--surface-raised);color:var(--ink-muted);border:1px solid var(--line);border-radius:var(--radius-xs);pointer-events:none;display:inline-flex;position:absolute}.about-bio{max-width:68ch}.stat-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0;display:grid}.stat{gap:var(--space-1);padding-top:var(--space-3);border-top:1px solid var(--line);flex-direction:column;display:flex}.stat-num{color:var(--primary)}.stat-pair{align-items:center;gap:var(--space-2);display:inline-flex}.credential-list{gap:var(--space-2);flex-wrap:wrap;margin:0;display:flex}.credential{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--primary-soft);color:var(--primary);border-radius:var(--radius-xs);display:inline-flex}.about-side{min-width:0}@media (width>=1024px){.about-side{grid-column:8/-1}.about-inner{row-gap:0}}.card-wrap{gap:var(--space-4);perspective:900px;flex-direction:column;display:flex}.business-card{gap:var(--space-6);padding:var(--space-6);flex-direction:column;display:flex;position:relative;overflow:hidden}.card-hairline{background:var(--gradient-wordmark);background-size:200% 100%;height:2px;animation:12s linear infinite alternate hairline;position:absolute;top:0;left:0;right:0}@keyframes hairline{0%{background-position:0 0}to{background-position:100% 0}}.card-brand{align-items:center;gap:var(--space-4);padding-top:var(--space-2);display:flex}.card-brand img{width:var(--space-12);flex:none;height:auto}.detail-list{gap:var(--space-3);flex-direction:column;margin:0;display:flex}.detail-row{align-items:center;gap:var(--space-3);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.detail-icon{width:var(--space-12);height:var(--space-12);background:var(--primary-soft);color:var(--primary);border-radius:var(--radius-sm);justify-content:center;align-items:center;display:inline-flex}.detail-text{flex-direction:column;min-width:0;display:flex}.detail-value{overflow-wrap:anywhere}.detail-link{color:var(--primary);padding-block:var(--space-1);border-radius:var(--radius-xs);display:inline-block}.detail-text>.detail-value{color:var(--ink)}.icon-btn{width:var(--space-12);height:var(--space-12);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;background:0 0;justify-content:center;align-items:center;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-flex}.icon-btn:hover{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.btn-icon{margin-right:var(--space-2)}.social-row{gap:var(--space-3);display:flex}.tip{display:inline-flex;position:relative}.tip-bubble{bottom:calc(100% + var(--space-2));z-index:2;padding:var(--space-1) var(--space-2);white-space:nowrap;pointer-events:none;background:var(--ink);color:var(--surface);border-radius:var(--radius-xs);position:absolute;left:50%;transform:translate(-50%)}@media (width<=400px){.business-card{padding:var(--space-4)}.portrait{margin:calc(-1 * var(--space-4)) calc(-1 * var(--space-4)) 0}.photo-frame{display:none}}@media (prefers-reduced-motion:reduce){.card-hairline{animation:none}}.booking-dialog{width:min(1000px, calc(100vw - var(--space-8)));height:min(760px, calc(100dvh - var(--space-8)));max-height:calc(100dvh - var(--space-8));background:var(--surface-raised);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:0;overflow:hidden}.booking-dialog::backdrop{background:var(--surface-sunken);opacity:.8}.booking-dialog[open]{display:block}.booking-panel{flex-direction:column;height:100%;display:flex}.booking-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--line);display:flex}.booking-body{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.booking-body .calendly-inline-widget{min-width:0;height:100%}.booking-body .calendly-inline-widget iframe{border:0;width:100%;height:100%;display:block}.booking-fallback,.booking-success{padding:var(--space-8) var(--space-6);gap:var(--space-3);flex-direction:column;margin:0;display:flex}.booking-footer{gap:var(--space-2) var(--space-6);padding:var(--space-4) var(--space-6);border-top:1px solid var(--line);flex-wrap:wrap;display:flex}.booking-footer a{padding-block:var(--space-1)}
