@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-base:1rem;--text-base--line-height: 1.5 ;--font-weight-normal:400;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-tight:-.025em;--tracking-wide:.025em;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer legacy{:root{--font-sans:"Blinker", "Avenir Next", "Segoe UI", "Noto Sans HK", system-ui, sans-serif;--font-display:"Tenor Sans", "Clarity City", "Avenir Next", "Segoe UI", "Noto Sans HK", system-ui, sans-serif;--font-mono:"Share Tech Mono", ui-monospace, monospace;--light-canvas:#f3f4f5;--light-surface:#fafaf8;--light-text:#242933;--light-muted:#5b6370;--light-border:#c3c8d0;--dark-canvas:#242933;--dark-surface:#2d333f;--dark-text:#f4f1ea;--dark-muted:#b8c0cd;--dark-border:#535d6e;--sage:#435440;--sage-deep:#263b2c;--sage-soft:#9ead98;--sage-muted:#c7d0c0;--orange:#eb6507;--orange-deep:var(--orange)}@supports (color:color-mix(in lab,red,red)){:root{--orange-deep:color-mix(in srgb, var(--orange) 70%, black)}}:root{--orange-soft:#ffa24c;--orange-muted:var(--orange)}@supports (color:color-mix(in lab,red,red)){:root{--orange-muted:color-mix(in srgb, var(--orange) 15%, var(--light-surface))}}:root{--yellow:#ffbe0b;--yellow-deep:var(--yellow)}@supports (color:color-mix(in lab,red,red)){:root{--yellow-deep:color-mix(in srgb, var(--yellow) 50%, black)}}:root{--yellow-soft:#ffd558;--yellow-muted:var(--yellow-soft)}@supports (color:color-mix(in lab,red,red)){:root{--yellow-muted:color-mix(in srgb, var(--yellow-soft) 9%, var(--light-surface))}}:root{--logo-sage-light:#5b956e;--logo-orange-light:#d96c00;--logo-sage-dark:#8fc9a0;--logo-yellow-dark:#ffd558;--lime:#ddeb83;--hero-ground-line:#536b47;--backdrop-scrim:#10141c94;--shadow-elevated:0 1.2rem 3rem #10141c2e;--space-015:.15rem;--space-025:.25rem;--space-030:.3rem;--space-035:.35rem;--space-045:.45rem;--space-050:.5rem;--space-055:.55rem;--space-060:.6rem;--space-065:.65rem;--space-070:.7rem;--space-075:.75rem;--space-080:.8rem;--space-090:.9rem;--space-100:1rem;--space-105:1.05rem;--space-115:1.15rem;--space-120:1.2rem;--space-125:1.25rem;--space-135:1.35rem;--space-150:1.5rem;--space-200:2rem;--space-240:2.4rem;--space-250:2.5rem;--space-300:3rem;--space-900:9rem;--space-fluid-nav:clamp(.75rem, 2vw, 1.6rem);--space-fluid-card:clamp(1.25rem, 4vw, 2rem);--space-fluid-section:clamp(4.2rem, 12vw, 9.6rem);--space-fluid-hero-top:clamp(2.5rem, 8vw, 6rem);--space-fluid-hero-gap:var(--space-250);--space-fluid-grid:var(--space-100);--space-fluid-process:var(--space-200);--font-size-xs:.75rem;--font-size-caption:.8rem;--font-size-sm:.875rem;--font-size-status:.9rem;--font-size-base:1rem;--font-size-wordmark:1.1rem;--font-size-dialog-title:1.35rem;--font-size-fluid-intro:clamp(1rem, 2.5vw, 1.18rem);--font-size-fluid-card-title:clamp(1.25rem, 3vw, 1.55rem);--font-size-fluid-section:clamp(2rem, 7vw, 2.7rem);--font-size-fluid-hero:clamp(2.9rem, 12vw, 5.8rem);--font-weight-regular:400;--font-weight-semibold:650;--font-weight-bold:700;--font-weight-heavy:750;--font-weight-extrabold:800;--font-weight-marker:850;--line-height-display:.98;--line-height-heading:1.05;--line-height-title:1.2;--line-height-label:1.4;--line-height-body:1.55;--tracking-tight:-.03em;--tracking-wide:.13em;--link-offset:.2em;--radius-050:.5rem;--radius-055:.55rem;--radius-060:.6rem;--radius-070:.7rem;--radius-100:1rem;--radius-round:50%;--border-width:1px;--border-width-emphasis:3px;--focus-ring-width:3px;--focus-ring-offset:3px;--document-min-width:320px;--content-width:1180px;--gutter-inline:20px;--header-min-height:76px;--touch-target-min:44px;--control-min-height:48px;--measure-dialog:28rem;--measure-prose:40rem;--measure-hero-copy:43rem;--hero-copy-width:43rem;--measure-biography:52rem;--measure-form:44rem;--measure-heading:14ch;--measure-display:12ch;--measure-status-line:1.55em;--aspect-wide:16 / 10;--aspect-portrait:4 / 3;--crop-frame:top;--z-skip-link:20;--z-header:10;--duration-none:.01ms;--duration-fast:.18s;--duration-base:.2s;--ease-standard:ease;--ease-smooth-out:cubic-bezier(.22, 1, .36, 1);--lift-hover:-1px;--offset-hidden:-180%;--resize-dur:.3s;--resize-ease:cubic-bezier(.22, 1, .36, 1);--dropdown-open-dur:.25s;--dropdown-close-dur:.15s;--dropdown-pre-scale:.97;--dropdown-closing-scale:.99;--dropdown-ease:cubic-bezier(.22, 1, .36, 1);--reveal-duration:.8s;--reveal-distance:20px;--marker-cell-step:50ms;--marker-cell-duration:.24s;--marker-morph-duration:.3s;--approach-step-stride:0s;--approach-rule-duration:.45s;--approach-pixel-offset:.25s;--approach-pixel-step:.1s;--approach-pixel-duration:.2s;--bubble-pop-duration:.55s;--bubble-pop-step:.26s;--ease-pop:cubic-bezier(.34, 1.56, .64, 1)}@media(min-width:768px){:root{--gutter-inline:32px;--space-fluid-section:clamp(6rem, 10.8vw, 10.2rem);--space-fluid-hero-gap:clamp(1.5rem, 4vw, 3rem);--space-fluid-grid:clamp(1.25rem, 3vw, 2rem);--space-fluid-process:clamp(1.25rem, 4vw, 3rem);--font-size-fluid-hero:clamp(3.4rem, 6.5vw, 4.4rem);--approach-step-stride:.3s;--grid-columns-cards:repeat(2, minmax(320px, 1fr))}}@media(min-width:1024px){:root{--gutter-inline:40px;--font-size-fluid-section:clamp(2.4rem, 4vw, 2.75rem);--font-size-fluid-hero:clamp(4.2rem, 7vw, 6.2rem);--grid-columns-contact:minmax(0, .85fr) minmax(400px, 1.15fr);--space-fluid-contact:clamp(2rem, 7vw, 6rem);--measure-form:var(--measure-prose);--measure-biography:min(50%, 38rem);--measure-hero-copy:none;--measure-display:none}}:root{color-scheme:light;--canvas:var(--light-canvas);--surface:var(--light-surface);--surface-raised:var(--surface);--text:var(--light-text);--muted-text:var(--light-muted);--border:var(--light-border);--primary-action:var(--sage-deep);--primary-action-text:var(--orange-soft);--action-hover:var(--sage-action-hover);--action-active:var(--sage-action-pressed);--surface-subtle:var(--sage-soft)}@supports (color:color-mix(in lab,red,red)){:root{--surface-subtle:color-mix(in srgb, var(--sage-soft) 20%, var(--light-surface))}}:root{--brand-surface:var(--sage-soft);--palette-hero-surface:var(--lime);--brand-text:var(--sage);--tick-colour:var(--orange);--warm-colour:var(--orange);--warm-colour-soft:var(--warm-colour)}@supports (color:color-mix(in lab,red,red)){:root{--warm-colour-soft:color-mix(in srgb, var(--warm-colour) 65%, var(--canvas))}}:root{--on-brand-heading:var(--light-text);--on-brand-body:var(--light-text);--on-brand-muted:var(--light-text);--on-brand-link:var(--light-text);--border-control:var(--sage);--family-text-sage:var(--sage);--family-text-orange:var(--orange-deep);--family-text-yellow:var(--yellow-deep);--on-warm-colour:var(--light-surface);--backdrop:var(--backdrop-scrim);--focus-ring-colour:var(--light-text);--sage-action:var(--sage-deep);--sage-action-hover:var(--sage-deep)}@supports (color:color-mix(in lab,red,red)){:root{--sage-action-hover:color-mix(in srgb, var(--sage-deep) 80%, var(--sage))}}:root{--sage-action-pressed:var(--sage-deep)}@supports (color:color-mix(in lab,red,red)){:root{--sage-action-pressed:color-mix(in srgb, var(--sage-deep) 85%, black)}}:root{--yellow-action-hover:var(--yellow-soft)}@supports (color:color-mix(in lab,red,red)){:root{--yellow-action-hover:color-mix(in srgb, var(--yellow-soft) 75%, white)}}html[data-theme=light]{color-scheme:light;--canvas:var(--light-canvas);--surface:var(--light-surface);--text:var(--light-text);--muted-text:var(--light-muted);--border:var(--light-border);--primary-action:var(--sage-action);--primary-action-text:var(--orange-soft);--action-hover:var(--sage-action-hover);--action-active:var(--sage-action-pressed)}html[data-theme=dark]{color-scheme:dark;--canvas:var(--dark-canvas);--surface:var(--dark-surface);--text:var(--dark-text);--muted-text:var(--dark-muted);--border:var(--dark-border);--primary-action:var(--yellow-soft);--primary-action-text:var(--sage-deep);--action-hover:var(--yellow-action-hover);--action-active:var(--yellow-soft);--surface-subtle:var(--dark-surface);--brand-surface:var(--sage);--palette-hero-surface:var(--lime);--brand-text:var(--logo-sage-dark);--tick-colour:var(--yellow-soft);--warm-colour:var(--yellow-soft);--warm-colour-soft:var(--warm-colour)}@supports (color:color-mix(in lab,red,red)){html[data-theme=dark]{--warm-colour-soft:color-mix(in srgb, var(--warm-colour) 80%, var(--canvas))}}html[data-theme=dark]{--on-brand-heading:var(--dark-text);--on-brand-body:var(--dark-text);--on-brand-muted:var(--sage-muted);--on-brand-link:var(--dark-text);--border-control:var(--sage-soft);--family-text-sage:var(--sage-soft);--family-text-orange:var(--orange-soft);--family-text-yellow:var(--yellow-soft);--orange-muted:var(--orange-soft)}@supports (color:color-mix(in lab,red,red)){html[data-theme=dark]{--orange-muted:color-mix(in srgb, var(--orange-soft) 22%, var(--dark-canvas))}}html[data-theme=dark]{--yellow-muted:var(--yellow-soft)}@supports (color:color-mix(in lab,red,red)){html[data-theme=dark]{--yellow-muted:color-mix(in srgb, var(--yellow-soft) 9%, var(--dark-canvas))}}html[data-theme=dark]{--on-warm-colour:var(--sage-deep);--focus-ring-colour:var(--dark-text)}:root{--shell-width:min(calc(100% - (var(--gutter-inline) * 2)), var(--content-width));--section-padding-block:var(--space-fluid-section);--layout-gap:var(--space-100);--section-stack-gap:var(--space-200);--section-heading-gap:var(--intro-gap);--section-heading-marker-cell-size:.625rem;--section-heading-marker-cell-gap:.1875rem;--section-heading-marker-inline-gap:.75rem;--section-heading-marker-offset:.5rem;--section-heading-marker-radius:0;--section-heading-marker-stroke:2px;--hero-entry-line:100vh;--header-height:var(--header-min-height);--header-z-index:var(--z-header);--section-scroll-margin:calc(var(--header-height) + var(--focus-ring-offset) + var(--focus-ring-width));--header-gap:var(--space-100);--header-actions-gap:var(--space-050);--nav-gap:var(--space-fluid-nav);--nav-link-colour:var(--muted-text);--nav-link-colour-hover:var(--text);--nav-link-size:var(--font-size-sm);--nav-link-weight:var(--font-weight-semibold);--nav-link-height:var(--touch-target-min);--nav-link-padding-block:var(--space-045);--wordmark-mark-height:1.75rem;--wordmark-lockup-gap:var(--space-050);--wordmark-name-gap:var(--space-035);--wordmark-owl-weight:var(--font-weight-extrabold);--wordmark-owl-tracking:var(--tracking-tight);--wordmark-studio-weight:var(--font-weight-semibold);--wordmark-studio-tracking:var(--tracking-wide);--wordmark-line-height:var(--line-height-label);--button-height:36px;--button-padding-block:var(--space-025);--button-padding-inline:var(--space-080);--button-radius:0;--button-border-width:2px;--button-weight:600;--button-line-height:var(--line-height-title);--button-stair-step:var(--space-050);--button-stair-duration:.22s;--button-press-duration:.11s;--button-press-scale:.97;--button-transition:background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), transform var(--duration-fast) var(--ease-standard);--button-solid-bg:var(--primary-action);--button-solid-colour:var(--primary-action-text);--button-solid-bg-hover:var(--action-hover);--button-solid-bg-active:var(--action-active);--button-solid-border:transparent;--button-outline-border:var(--border);--button-outline-colour:var(--text);--action-row-gap:var(--space-075);--control-height:var(--touch-target-min);--control-padding-block:var(--space-055);--control-padding-inline:var(--space-080);--control-radius:0;--control-border:var(--border);--control-colour:var(--text);--control-size:var(--font-size-sm);--control-weight:var(--font-weight-bold);--control-hover-border:var(--text);--control-hover-bg:var(--surface);--control-active-bg:var(--text)}@supports (color:color-mix(in lab,red,red)){:root{--control-active-bg:color-mix(in srgb, var(--text) 8%, var(--surface))}}:root{--control-press-nudge:1px;--link-height:var(--touch-target-min);--link-weight:600;--link-underline-offset:var(--link-offset);--card-bg:var(--surface);--card-border-colour:var(--border-control);--card-border-width:var(--border-width);--card-radius:0;--card-padding:var(--space-fluid-card);--card-title-size:var(--font-size-fluid-card-title);--card-title-line-height:var(--line-height-title);--panel-border-colour:var(--border-control);--panel-radius:0;--pane-sage:var(--brand-surface);--pane-sage-text:var(--on-brand-body);--pane-sage-muted:var(--on-brand-muted);--project-corner-step:var(--space-075);--panel-tint-biography:var(--surface-subtle);--panel-tint-form:var(--surface);--measure-about-block:var(--measure-biography);--approach-stage-gap:var(--space-fluid-process);--approach-title-size:clamp(1.125rem, 2.2vw, 1.35rem);--field-gap:var(--space-045);--field-label-colour:var(--text);--field-label-weight:600;--field-label-line-height:var(--line-height-label);--field-height:var(--control-min-height);--field-padding-block:var(--space-070);--field-padding-inline:var(--space-080);--field-bg:var(--surface);--field-colour:var(--text);--field-border-colour:var(--border-control);--field-radius:0;--field-placeholder-colour:var(--muted-text);--status-colour:var(--text);--status-size:var(--font-size-status);--status-weight:500;--status-min-height:var(--measure-status-line);--dialog-backdrop:var(--backdrop);--dialog-inset:var(--space-125);--dialog-panel-width:var(--measure-dialog);--dialog-panel-padding:var(--space-125);--dialog-panel-gap:var(--space-125);--dialog-panel-bg:var(--surface-raised);--dialog-panel-border-colour:var(--border);--dialog-panel-radius:0;--dialog-panel-shadow:var(--shadow-elevated);--dialog-title-size:var(--font-size-dialog-title);--kicker-colour:var(--muted-text);--kicker-size:var(--font-size-xs);--kicker-weight:var(--font-weight-extrabold);--kicker-tracking:var(--tracking-wide);--kicker-line-height:var(--line-height-title);--kicker-gap:var(--space-080);--heading-size:var(--font-size-fluid-section);--heading-weight:600;--heading-line-height:var(--line-height-heading);--heading-measure:var(--measure-heading);--display-size:var(--font-size-fluid-hero);--display-weight:var(--font-weight-extrabold);--display-line-height:var(--line-height-display);--display-measure:var(--measure-display);--intro-colour:var(--muted-text);--intro-size:var(--font-size-fluid-intro);--intro-measure:var(--measure-prose);--intro-gap:var(--space-150);--media-aspect:var(--aspect-wide);--media-radius-frame:0;--media-crop-frame:var(--crop-frame);--media-frame-bar:var(--space-135);--media-frame-bg:var(--canvas);--media-frame-bar-bg:var(--surface);--media-frame-border-colour:var(--border);--caption-colour:var(--muted-text);--caption-size:var(--font-size-caption);--caption-gap:var(--space-065);--portfolio-grid-gap:var(--space-fluid-grid);--portfolio-media-aspect:var(--media-aspect);--portfolio-page-media-aspect:var(--aspect-portrait);--portfolio-card-spacing:var(--space-150);--portfolio-status-colour:var(--muted-text);--portfolio-boundary-separation:var(--space-120);--portfolio-lead-aspect:2 / 1;--portfolio-lead-aspect-phone:4 / 5;--portfolio-lead-title-size:clamp(1.75rem, 4.6vw, 2.4rem);--portfolio-time-fade:.9s;--portfolio-phone-width:17%;--portfolio-phone-inset:4%;--pan-piece-length:150svh;--pan-piece-length-phone:120svh;--footer-gap:var(--space-100);--footer-padding-block:var(--space-200) var(--space-300);--footer-nav-gap:var(--space-035) var(--space-100);--footer-measure:var(--measure-prose);--footer-size:var(--font-size-sm);--footer-brand-weight:var(--font-weight-semibold);--footer-brand-colour:var(--text);--transition-theme:background-color var(--duration-base) var(--ease-standard), color var(--duration-base) var(--ease-standard);--transition-transform:transform var(--duration-fast) var(--ease-standard);--visually-hidden-size:1px;--visually-hidden-offset:-1px;--skip-link-z:var(--z-skip-link);--skip-link-top:var(--space-075);--skip-link-left:var(--space-100);--skip-link-padding:var(--space-065) var(--space-090);--skip-link-radius:0;--skip-link-bg:var(--primary-action);--skip-link-colour:var(--primary-action-text);--skip-link-weight:var(--font-weight-bold);--skip-link-hidden:var(--offset-hidden)}@supports (height:1svh){:root{--hero-entry-line:100svh}}@media(min-width:768px){:root{--section-heading-marker-cell-size:.75rem;--section-heading-marker-offset:.625rem}}@media(min-width:1200px){:root{--wordmark-mark-height:2rem;--hero-copy-width:28rem}}.palette-hero,.palette-contact,[data-palette-footer]{--text:var(--on-brand-body);--muted-text:var(--on-brand-muted)}.palette-hero,.palette-contact{--intro-colour:var(--on-brand-muted)}.palette-hero{--text:var(--sage-action);--muted-text:var(--sage);--intro-colour:var(--sage-deep);--button-solid-bg:var(--sage-action);--button-solid-colour:var(--lime);--button-solid-bg-hover:var(--sage-action-hover);--button-solid-bg-active:var(--sage-action-pressed);--button-outline-border:var(--sage-action);--button-outline-colour:var(--sage-action);--control-hover-bg:var(--sage-action)}@supports (color:color-mix(in lab,red,red)){.palette-hero{--control-hover-bg:color-mix(in srgb, var(--sage-action) 10%, transparent)}}.palette-hero{--control-active-bg:var(--sage-action)}@supports (color:color-mix(in lab,red,red)){.palette-hero{--control-active-bg:color-mix(in srgb, var(--sage-action) 20%, transparent)}}.palette-hero{--focus-ring-colour:var(--sage-action)}[data-palette-footer]{--text:var(--sage-action);--muted-text:var(--sage);--footer-brand-colour:var(--sage-action);--nav-link-colour:var(--sage);--nav-link-colour-hover:var(--sage-action)}.palette-neutral-panel{--text:var(--light-text);--muted-text:var(--light-muted);--surface:var(--light-surface);--panel-tint-form:var(--light-surface);--field-label-colour:var(--light-text);--field-colour:var(--light-text);--field-placeholder-colour:var(--light-muted)}html[data-theme=dark] .palette-neutral-panel{--text:var(--dark-text);--muted-text:var(--dark-muted);--surface:var(--dark-surface);--surface-subtle:var(--dark-surface);--panel-tint-form:var(--dark-surface);--field-label-colour:var(--dark-text);--field-colour:var(--dark-text);--field-placeholder-colour:var(--dark-muted)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:root{font-family:var(--font-sans)}html{background:var(--canvas);scroll-behavior:smooth}body{min-width:var(--document-min-width);background-color:var(--canvas);font-family:var(--font-sans);color:var(--text);line-height:var(--line-height-body);text-rendering:optimizelegibility;transition:var(--transition-theme);margin:0;overflow-x:clip}img{max-width:100%;display:block}a{color:inherit}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}:where(a,button,input,textarea,select,summary):focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-colour);outline-offset:var(--focus-ring-offset)}dialog{color:var(--text);background:0 0;border:0}dialog::backdrop{background:var(--backdrop)}body:has(dialog.sample-recommendation[open]){overflow:hidden}[data-menu-blocked]{pointer-events:none}}@layer components{.site-header{z-index:var(--header-z-index);border-bottom:var(--border-width) solid var(--border);background:var(--canvas);position:sticky;top:0}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.site-header[data-glass]{border-bottom-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.site-header[data-glass]{border-bottom-color:color-mix(in srgb,var(--border) 72%,transparent)}}.site-header[data-glass]{background:var(--canvas)}@supports (color:color-mix(in lab,red,red)){.site-header[data-glass]{background:color-mix(in srgb,var(--canvas) 60%,transparent)}}.site-header[data-glass]{-webkit-backdrop-filter:blur(10px)saturate(140%);backdrop-filter:blur(10px)saturate(140%);box-shadow:inset 0 1px 0 var(--surface),0 6px 20px var(--text)}@supports (color:color-mix(in lab,red,red)){.site-header[data-glass]{box-shadow:inset 0 1px color-mix(in srgb,var(--surface) 44%,transparent),0 6px 20px color-mix(in srgb,var(--text) 6%,transparent)}}}.section-shell{scroll-margin-block-start:var(--section-scroll-margin)}.visually-hidden{width:var(--visually-hidden-size);height:var(--visually-hidden-size);margin:var(--visually-hidden-offset);clip:rect(0,0,0,0);white-space:normal;border:0;padding:0;position:absolute;overflow:hidden}.section-heading-marker{color:var(--family-text-sage)}.section-heading-marker__cell{border:var(--section-heading-marker-stroke) solid currentColor;border-radius:var(--section-heading-marker-radius)}.section-heading-marker__cell[data-active=true]{border-color:var(--warm-colour);border-radius:var(--radius-round);background:var(--warm-colour)}@media(prefers-reduced-motion:no-preference){.section-heading-marker[data-reveal=pending] .section-heading-marker__cell{opacity:0;transform:scale(.6)}.section-heading-marker[data-reveal=pending] .section-heading-marker__cell[data-active=true]{border-radius:var(--section-heading-marker-radius);background-color:#0000;border-color:currentColor}.section-heading-marker[data-reveal=in] .section-heading-marker__cell{transition:opacity var(--marker-cell-duration) var(--ease-smooth-out) calc(var(--i) * var(--marker-cell-step)),transform var(--marker-cell-duration) var(--ease-smooth-out) calc(var(--i) * var(--marker-cell-step))}.section-heading-marker[data-reveal=in] .section-heading-marker__cell[data-active=true]{--marker-morph-delay:calc(5 * var(--marker-cell-step) + var(--marker-cell-duration));transition:opacity var(--marker-cell-duration) var(--ease-smooth-out) calc(var(--i) * var(--marker-cell-step)),transform var(--marker-cell-duration) var(--ease-smooth-out) calc(var(--i) * var(--marker-cell-step)),border-radius var(--marker-morph-duration) var(--ease-smooth-out) var(--marker-morph-delay),border-color var(--marker-morph-duration) var(--ease-smooth-out) var(--marker-morph-delay),background-color var(--marker-morph-duration) var(--ease-smooth-out) var(--marker-morph-delay)}}.approach-step-marker__pixel{background-color:var(--brand-text)}@supports (color:color-mix(in lab,red,red)){.approach-step-marker__pixel{background-color:color-mix(in srgb,var(--brand-text) 30%,transparent)}}.approach-step-marker__pixel[data-filled]{background-color:var(--warm-colour-soft)}@media(prefers-reduced-motion:no-preference){.approach-step-marker{--approach-step-delay:calc(var(--step) * var(--approach-step-stride))}.approach-step-marker[data-reveal=pending] .approach-step-marker__rule{transform:scaleX(0)}.approach-step-marker[data-reveal=pending] .approach-step-marker__pixel[data-filled]{background-color:var(--brand-text)}@supports (color:color-mix(in lab,red,red)){.approach-step-marker[data-reveal=pending] .approach-step-marker__pixel[data-filled]{background-color:color-mix(in srgb,var(--brand-text) 30%,transparent)}}.approach-step-marker__rule{transform-origin:0}.approach-step-marker[data-reveal=in] .approach-step-marker__rule{transition:transform var(--approach-rule-duration) var(--ease-smooth-out) var(--approach-step-delay)}.approach-step-marker[data-reveal=in] .approach-step-marker__pixel[data-filled]{transition:background-color var(--approach-pixel-duration) var(--ease-smooth-out) calc(var(--approach-step-delay) + var(--approach-pixel-offset) + var(--i) * var(--approach-pixel-step))}}.sample-recommendation::backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media(prefers-reduced-motion:no-preference){.sample-recommendation,.sample-recommendation::backdrop{opacity:0;transition:opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard),overlay var(--duration-fast) allow-discrete,display var(--duration-fast) allow-discrete}.sample-recommendation{transform:translateY(.75rem)scale(.98)}.sample-recommendation[open],.sample-recommendation[open]::backdrop{opacity:1;transition-duration:var(--duration-base);transition-timing-function:var(--ease-smooth-out)}.sample-recommendation[open]{transform:none}@starting-style{.sample-recommendation[open],.sample-recommendation[open]::backdrop{opacity:0}.sample-recommendation[open]{transform:translateY(.75rem)scale(.98)}}}.portfolio-card .browser-frame[data-image-position=shapeshift] img,.portfolio-card .browser-frame[data-image-position=wild-postcard] img,.portfolio-card .browser-frame[data-image-position=the-hours-are-ours] img{object-position:top}.portfolio-card .browser-frame[data-image-position=flap-ui] img{object-position:center}.time-frame{position:relative}.time-frame img,.time-phone img{opacity:0}.time-frame img[data-active=true],.time-phone img[data-active=true]{opacity:1}.time-frame>img,.time-phone{position:absolute;inset:0}@media(min-width:640px){.time-phone{inset:auto var(--portfolio-phone-inset) 0 auto;width:var(--portfolio-phone-width);aspect-ratio:440/933;border:var(--border-width-emphasis) solid var(--text);border-bottom-width:0}}.time-phone img{object-fit:cover;object-position:top;width:100%;height:100%;display:block;position:absolute;inset:0}.time-cell{border:var(--section-heading-marker-stroke) solid currentColor;border-radius:var(--section-heading-marker-radius)}.time-cell[data-active=true]{border-color:var(--warm-colour);background:var(--warm-colour)}@media(prefers-reduced-motion:no-preference){.time-frame img,.time-phone img{transition:opacity var(--portfolio-time-fade) var(--ease-smooth-out)}}.portfolio-showcase-card[data-lead=true]{--staircase-fill:var(--surface-subtle);color:var(--pane-sage-text);--portfolio-status-colour:var(--pane-sage-muted)}.pan-track{height:calc(var(--pan-pieces) * var(--pan-piece-length))}.pan-stage{top:calc(var(--header-height) + var(--space-100));gap:var(--space-150);height:calc(100svh - var(--header-height) - var(--space-300));grid-template-rows:minmax(0,1fr) auto;display:grid;position:sticky}.pan-frame{border:var(--border-width-emphasis) solid var(--border-control);flex-direction:column;min-height:0;display:flex}.pan-viewport{flex:1 1 0;min-height:0;position:relative;overflow:hidden;container-type:size}.pan-layer{opacity:0;position:absolute;inset:0}.pan-layer[data-active=true]{opacity:1}.pan-image{opacity:0;width:100%;height:auto;transform:translateY(calc(var(--pan,0) * (100cqh - 100%)));display:block;position:absolute;top:0;left:0}.pan-image[data-active=true]{opacity:1}.pan-rail{--staircase-fill:var(--pane-sage);color:var(--pane-sage-text);--portfolio-status-colour:var(--pane-sage-muted)}.pan-captions{display:grid}.pan-caption{gap:var(--space-200);visibility:hidden;opacity:0;grid-area:1/1;grid-template-columns:minmax(0,1fr) auto;align-content:start;display:grid}.pan-caption[data-active=true]{visibility:visible;opacity:1}.pan-jump{align-items:center;gap:var(--space-075);min-height:var(--control-height);color:var(--pane-sage-muted);font:inherit;font-size:var(--font-size-sm);cursor:pointer;background:0 0;border:0;padding:0;font-weight:400;display:inline-flex}.pan-jump:hover,.pan-jump[aria-current=true]{color:var(--pane-sage-text)}.pan-jump[aria-current=true]{font-weight:650}.pan-jumps{column-gap:var(--space-200);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.pan-track[data-phone]{height:calc(var(--pan-pieces) * var(--pan-piece-length-phone))}.pan-stage[data-phone]{--pan-rail-padding:var(--space-100);gap:var(--space-100);height:calc(100svh - var(--header-height) - var(--space-150))}.pan-stage[data-phone] .pan-summary,.pan-stage[data-phone] .pan-jump__title{display:none}.pan-stage[data-phone] .pan-caption{gap:var(--space-100)}.pan-stage[data-phone] .pan-jumps{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:0;display:grid}.pan-stage[data-phone] .pan-jump{justify-content:center;width:100%}@media(prefers-reduced-motion:no-preference){.pan-layer,.pan-image{transition:opacity var(--portfolio-time-fade) var(--ease-smooth-out)}.pan-caption{transition:opacity var(--duration-base) var(--ease-smooth-out),visibility 0s linear var(--duration-base)}.pan-caption[data-active=true]{transition-delay:0s}}.project-hero{gap:var(--space-150) var(--space-300);margin-bottom:var(--section-stack-gap);display:grid}.project-showcase{gap:var(--space-100);display:grid}.project-controls{align-items:center;gap:var(--space-075) var(--space-200);flex-wrap:wrap;display:flex}.project-hint{color:var(--muted-text);font-size:var(--font-size-caption);margin:0}.project-segment{border:var(--border-width) solid var(--border-control);display:inline-flex}.project-segment button{min-height:var(--control-height);padding-inline:var(--space-100);color:var(--text);font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard);background:0 0;border:0}.project-segment button[aria-label]{inline-size:var(--control-height);aspect-ratio:1;justify-content:center;align-items:center;padding-inline:0;display:inline-flex}.project-segment button+button{border-inline-start:var(--border-width) solid var(--border-control)}.project-segment button:hover{background:var(--sage-soft)}@supports (color:color-mix(in lab,red,red)){.project-segment button:hover{background:color-mix(in srgb,var(--sage-soft) 28%,transparent)}}.project-segment button[aria-pressed=true]{background:var(--primary-action);color:var(--primary-action-text)}.project-frame{border:var(--border-width-emphasis) solid var(--border-control);background:var(--media-frame-bg);width:100%;margin-inline:auto}.project-frame[data-device=phone]{width:min(100%,24rem)}.project-scroller{scrollbar-width:thin;scrollbar-color:var(--border-control) var(--surface);height:min(68svh,44rem);overflow:hidden auto}.project-frame[data-device=phone] .project-scroller{height:min(74svh,46rem)}.project-scroller img{width:100%;height:auto;display:block}.project-section{margin-top:clamp(3.5rem,9vw,7rem)}.project-section-grid{gap:var(--space-200) var(--space-300);display:grid}.project-roles li{padding-block:var(--space-075)}.project-decisions{margin:0;padding:0;list-style:none}.project-decision{gap:var(--space-075) var(--space-300);padding-block:var(--space-200);display:grid}.project-navigation{margin-top:clamp(3.5rem,9vw,7rem)}@media(min-width:768px){.project-hero{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:end}.project-decision{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}}@media(min-width:1024px){.project-section-grid{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}.project-section-grid[data-wide]{grid-template-columns:minmax(0,1fr)}}.hero-section{--hero-artwork-width:clamp(34rem, 165vw, 80rem);min-height:max-content;padding-bottom:var(--space-200)}.hero-copy{max-width:var(--hero-copy-width);padding-bottom:var(--space-050)}.hero-heading-lead{letter-spacing:-.025em;max-width:17ch;font-size:clamp(1.75rem,7vw,3.5rem);font-weight:600;line-height:1.08}.hero-clarity{margin-top:var(--space-035);letter-spacing:-.04em;white-space:nowrap;font-size:clamp(4rem,19vw,8rem);line-height:.9}.hero-artwork{width:100vw;height:clamp(22.667rem,110vw,53.333rem);margin-top:var(--space-100);pointer-events:none;margin-left:-50vw;position:relative;left:50%;overflow:clip}.hero-artwork__frame{width:var(--hero-artwork-width);aspect-ratio:3/2;position:absolute;bottom:0;left:0}.hero-artwork__frame img{z-index:1;width:100%;height:auto;position:relative;transform:scaleX(-1)}.hero-ground-line{z-index:0;background:var(--hero-ground-line);transform-origin:0;width:100%;height:2px;position:absolute;top:96.3907%;left:0}@keyframes hero-draw{0%{scale:0 1}}@keyframes hero-lift{0%{translate:0 8px}}@keyframes hero-rise{0%{opacity:0;translate:0 16px}}.hero-ground-line{animation:hero-draw .7s var(--ease-smooth-out) both}.hero-artwork__frame img{animation:hero-lift .8s var(--ease-smooth-out) .12s both}.hero-actions{animation:hero-rise .8s var(--ease-smooth-out) .48s both}@media(prefers-reduced-motion:reduce){.hero-ground-line,.hero-artwork__frame img,.hero-actions{animation:none}}@media(min-width:768px){.hero-section{--hero-artwork-width:clamp(56rem, 145vw, 80rem)}.hero-copy{max-width:var(--hero-copy-width)}.hero-heading-lead{font-size:clamp(2.75rem,5vw,3.75rem)}.hero-clarity{font-size:clamp(6rem,13vw,8rem)}}@media(min-width:1200px){.hero-section{--hero-artwork-width:clamp(48rem, 60vw, 66rem);min-height:clamp(42rem,calc(100svh - var(--header-height)),48rem);padding-bottom:var(--space-200)}.hero-copy{padding-bottom:var(--space-300)}.hero-heading-lead{max-width:none;font-size:clamp(2.5rem,3.2vw,3.35rem)}.hero-clarity{font-size:clamp(6.2rem,8.5vw,8.4rem)}.hero-artwork{height:auto;margin-top:0;position:absolute;top:0;bottom:0}.hero-artwork__frame{bottom:0;left:auto;right:0}.hero-ground-line{width:100vw;left:calc(100% - 100vw)}}@media(min-width:1440px){.hero-heading-lead{font-size:3rem}}@media(min-width:1024px)and (max-width:1199px){.site-header__inner{gap:var(--space-050)}.desktop-nav{min-width:0;margin-inline:var(--space-025);gap:var(--space-060);flex:auto}.desktop-nav a{font-size:var(--font-size-xs)}.wordmark,.wordmark-name{flex-shrink:0}.header-actions{gap:var(--space-035);flex:none}.header-actions .theme-toggle,.header-actions .button{font-size:var(--font-size-xs);display:inline-flex}.header-actions .theme-toggle{padding-inline:0}.header-actions .button{padding-inline:var(--space-070)}}}@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.top-0{top:0}.top-\[var\(--skip-link-top\)\]{top:var(--skip-link-top)}.left-\[var\(--skip-link-left\)\]{left:var(--skip-link-left)}.z-10{z-index:10}.z-\[2\]{z-index:2}.z-\[var\(--header-z-index\)\]{z-index:var(--header-z-index)}.z-\[var\(--skip-link-z\)\]{z-index:var(--skip-link-z)}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-0{margin:0}.m-auto{margin:auto}.mx-auto{margin-inline:auto}.my-\[var\(--section-padding-block\)\]{margin-block:var(--section-padding-block)}.-mt-\[var\(--space-075\)\]{margin-top:calc(var(--space-075) * -1)}.mt-0{margin-top:0}.mt-\[var\(--intro-gap\)\]{margin-top:var(--intro-gap)}.mt-\[var\(--portfolio-boundary-separation\)\]{margin-top:var(--portfolio-boundary-separation)}.mt-\[var\(--section-heading-gap\)\]{margin-top:var(--section-heading-gap)}.mt-\[var\(--section-heading-marker-offset\)\]{margin-top:var(--section-heading-marker-offset)}.mt-\[var\(--section-stack-gap\)\]{margin-top:var(--section-stack-gap)}.mt-\[var\(--space-050\)\]{margin-top:var(--space-050)}.mt-\[var\(--space-070\)\]{margin-top:var(--space-070)}.mt-\[var\(--space-080\)\]{margin-top:var(--space-080)}.mt-\[var\(--space-100\)\]{margin-top:var(--space-100)}.mt-\[var\(--space-120\)\]{margin-top:var(--space-120)}.mt-\[var\(--space-150\)\]{margin-top:var(--space-150)}.mt-\[var\(--space-200\)\]{margin-top:var(--space-200)}.mr-1{margin-right:var(--spacing)}.mr-\[var\(--section-heading-marker-inline-gap\)\]{margin-right:var(--section-heading-marker-inline-gap)}.mb-\[var\(--section-heading-gap\)\]{margin-bottom:var(--section-heading-gap)}.mb-\[var\(--section-padding-block\)\]{margin-bottom:var(--section-padding-block)}.mb-\[var\(--section-stack-gap\)\]{margin-bottom:var(--section-stack-gap)}.mb-\[var\(--space-050\)\]{margin-bottom:var(--space-050)}.mb-\[var\(--space-100\)\]{margin-bottom:var(--space-100)}.ml-\[var\(--space-070\)\]{margin-left:var(--space-070)}.box-border{box-sizing:border-box}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.aspect-\[var\(--portfolio-lead-aspect-phone\)\]{aspect-ratio:var(--portfolio-lead-aspect-phone)}.aspect-\[var\(--themed-image-aspect\)\]{aspect-ratio:var(--themed-image-aspect)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.h-5{height:calc(var(--spacing) * 5)}.h-\[var\(--border-width-emphasis\)\]{height:var(--border-width-emphasis)}.h-\[var\(--control-height\)\]{height:var(--control-height)}.h-\[var\(--section-heading-marker-cell-size\)\]{height:var(--section-heading-marker-cell-size)}.h-\[var\(--space-100\)\]{height:var(--space-100)}.h-\[var\(--wordmark-mark-height\)\]{height:var(--wordmark-mark-height)}.h-auto{height:auto}.h-full{height:100%}.max-h-\[calc\(100dvh-2rem\)\]{max-height:calc(100dvh - 2rem)}.min-h-\[var\(--button-height\)\]{min-height:var(--button-height)}.min-h-\[var\(--field-height\)\]{min-height:var(--field-height)}.min-h-\[var\(--header-height\)\]{min-height:var(--header-height)}.min-h-\[var\(--nav-link-height\)\]{min-height:var(--nav-link-height)}.min-h-\[var\(--status-min-height\)\]{min-height:var(--status-min-height)}.min-h-\[var\(--touch-target-min\)\]{min-height:var(--touch-target-min)}.w-\(--shell-width\){width:var(--shell-width)}.w-5{width:calc(var(--spacing) * 5)}.w-20{width:calc(var(--spacing) * 20)}.w-\[min\(56rem\,calc\(100vw-2rem\)\)\]{width:min(56rem,100vw - 2rem)}.w-\[min\(100\%\,var\(--dialog-panel-width\)\)\]{width:min(100%,var(--dialog-panel-width))}.w-\[var\(--control-height\)\]{width:var(--control-height)}.w-\[var\(--section-heading-marker-cell-size\)\]{width:var(--section-heading-marker-cell-size)}.w-\[var\(--shell-width\)\]{width:var(--shell-width)}.w-\[var\(--space-100\)\]{width:var(--space-100)}.w-auto{width:auto}.w-full{width:100%}.max-w-\(--footer-measure\){max-width:var(--footer-measure)}.max-w-\[var\(--heading-measure\)\]{max-width:var(--heading-measure)}.max-w-\[var\(--intro-measure\)\]{max-width:var(--intro-measure)}.max-w-\[var\(--measure-about-block\)\]{max-width:var(--measure-about-block)}.max-w-\[var\(--measure-prose\)\]{max-width:var(--measure-prose)}.max-w-none{max-width:none}.min-w-0{min-width:0}.flex-1{flex:1}.flex-none{flex:none}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.translate-y-\[var\(--skip-link-hidden\)\]{--tw-translate-y:var(--skip-link-hidden);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.resize-y{resize:vertical}.scroll-mt-\[var\(--section-scroll-margin\)\]{scroll-margin-top:var(--section-scroll-margin)}.list-none{list-style-type:none}.grid-cols-\[max-content_minmax\(0\,1fr\)\]{grid-template-columns:max-content minmax(0,1fr)}.grid-cols-\[repeat\(3\,var\(--section-heading-marker-cell-size\)\)\]{grid-template-columns:repeat(3,var(--section-heading-marker-cell-size))}.grid-rows-\[repeat\(2\,var\(--section-heading-marker-cell-size\)\)\]{grid-template-rows:repeat(2,var(--section-heading-marker-cell-size))}.flex-col{flex-direction:column}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.content-center{align-content:center}.content-start{align-content:flex-start}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-items-start{justify-items:start}.gap-\(--footer-gap\){gap:var(--footer-gap)}.gap-1{gap:var(--spacing)}.gap-\[var\(--action-row-gap\)\]{gap:var(--action-row-gap)}.gap-\[var\(--approach-stage-gap\)\]{gap:var(--approach-stage-gap)}.gap-\[var\(--dialog-panel-gap\)\]{gap:var(--dialog-panel-gap)}.gap-\[var\(--field-gap\)\]{gap:var(--field-gap)}.gap-\[var\(--header-actions-gap\)\]{gap:var(--header-actions-gap)}.gap-\[var\(--header-gap\)\]{gap:var(--header-gap)}.gap-\[var\(--layout-gap\)\]{gap:var(--layout-gap)}.gap-\[var\(--nav-gap\)\]{gap:var(--nav-gap)}.gap-\[var\(--portfolio-card-spacing\)\]{gap:var(--portfolio-card-spacing)}.gap-\[var\(--portfolio-grid-gap\)\]{gap:var(--portfolio-grid-gap)}.gap-\[var\(--section-heading-marker-cell-gap\)\]{gap:var(--section-heading-marker-cell-gap)}.gap-\[var\(--section-stack-gap\)\]{gap:var(--section-stack-gap)}.gap-\[var\(--space-015\)\]{gap:var(--space-015)}.gap-\[var\(--space-025\)\]{gap:var(--space-025)}.gap-\[var\(--space-030\)\]{gap:var(--space-030)}.gap-\[var\(--space-035\)\]{gap:var(--space-035)}.gap-\[var\(--space-050\)\]{gap:var(--space-050)}.gap-\[var\(--space-075\)\]{gap:var(--space-075)}.gap-\[var\(--space-080\)\]{gap:var(--space-080)}.gap-\[var\(--space-100\)\]{gap:var(--space-100)}.gap-\[var\(--space-150\)\]{gap:var(--space-150)}.gap-\[var\(--wordmark-lockup-gap\)\]{gap:var(--wordmark-lockup-gap)}.gap-\[var\(--wordmark-name-gap\)\]{gap:var(--wordmark-name-gap)}.gap-x-\[var\(--space-150\)\]{column-gap:var(--space-150)}.justify-self-end{justify-self:flex-end}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-\[var\(--button-radius\)\]{border-radius:var(--button-radius)}.rounded-\[var\(--card-radius\)\]{border-radius:var(--card-radius)}.rounded-\[var\(--control-radius\)\]{border-radius:var(--control-radius)}.rounded-\[var\(--dialog-panel-radius\)\]{border-radius:var(--dialog-panel-radius)}.rounded-\[var\(--field-radius\)\]{border-radius:var(--field-radius)}.rounded-\[var\(--media-radius-frame\)\]{border-radius:var(--media-radius-frame)}.rounded-\[var\(--skip-link-radius\)\]{border-radius:var(--skip-link-radius)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-\[var\(--border\)\]{border-color:var(--border)}.border-\[var\(--card-border-colour\)\]{border-color:var(--card-border-colour)}.border-\[var\(--control-border\)\]{border-color:var(--control-border)}.border-\[var\(--dialog-panel-border-colour\)\]{border-color:var(--dialog-panel-border-colour)}.border-\[var\(--field-border-colour\)\]{border-color:var(--field-border-colour)}.border-\[var\(--media-frame-border-colour\)\]{border-color:var(--media-frame-border-colour)}.border-transparent{border-color:#0000}.bg-\[var\(--card-bg\)\]{background-color:var(--card-bg)}.bg-\[var\(--card-border-colour\)\]{background-color:var(--card-border-colour)}.bg-\[var\(--dialog-panel-bg\)\]{background-color:var(--dialog-panel-bg)}.bg-\[var\(--field-bg\)\]{background-color:var(--field-bg)}.bg-\[var\(--media-frame-bg\)\]{background-color:var(--media-frame-bg)}.bg-\[var\(--pane-sage\)\]{background-color:var(--pane-sage)}.bg-\[var\(--surface\)\]{background-color:var(--surface)}.bg-action{background-color:var(--primary-action)}.bg-transparent{background-color:#0000}.object-cover{object-fit:cover}.\[object-position\:var\(--media-crop-frame\)\]{object-position:var(--media-crop-frame)}.object-top{object-position:top}.p-0{padding:0}.p-\[var\(--card-padding\)\]{padding:var(--card-padding)}.p-\[var\(--dialog-inset\)\]{padding:var(--dialog-inset)}.p-\[var\(--dialog-panel-padding\)\]{padding:var(--dialog-panel-padding)}.p-\[var\(--pan-rail-padding\,var\(--card-padding\)\)\]{padding:var(--pan-rail-padding,var(--card-padding))}.p-\[var\(--space-100\)\]{padding:var(--space-100)}.px-\[var\(--button-padding-inline\)\]{padding-inline:var(--button-padding-inline)}.px-\[var\(--field-padding-inline\)\]{padding-inline:var(--field-padding-inline)}.px-\[var\(--space-090\)\]{padding-inline:var(--space-090)}.px-\[var\(--space-100\)\]{padding-inline:var(--space-100)}.py-\(--footer-padding-block\){padding-block:var(--footer-padding-block)}.py-0{padding-block:0}.py-\[var\(--button-padding-block\)\]{padding-block:var(--button-padding-block)}.py-\[var\(--field-padding-block\)\]{padding-block:var(--field-padding-block)}.py-\[var\(--nav-link-padding-block\)\]{padding-block:var(--nav-link-padding-block)}.py-\[var\(--space-050\)\]{padding-block:var(--space-050)}.py-\[var\(--space-065\)\]{padding-block:var(--space-065)}.pt-\[var\(--space-100\)\]{padding-top:var(--space-100)}.pt-\[var\(--space-125\)\]{padding-top:var(--space-125)}.pt-\[var\(--space-fluid-hero-top\)\]{padding-top:var(--space-fluid-hero-top)}.text-left{text-align:left}.font-brand-display{font-family:var(--font-display)}.font-brand-mono{font-family:var(--font-mono)}.font-brand-sans{font-family:var(--font-sans)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-\[length\:var\(--approach-title-size\)\]{font-size:var(--approach-title-size)}.text-\[length\:var\(--card-title-size\)\]{font-size:var(--card-title-size)}.text-\[length\:var\(--control-size\)\]{font-size:var(--control-size)}.text-\[length\:var\(--dialog-title-size\)\]{font-size:var(--dialog-title-size)}.text-\[length\:var\(--display-size\)\]{font-size:var(--display-size)}.text-\[length\:var\(--font-size-fluid-card-title\)\]{font-size:var(--font-size-fluid-card-title)}.text-\[length\:var\(--font-size-fluid-intro\)\]{font-size:var(--font-size-fluid-intro)}.text-\[length\:var\(--font-size-sm\)\]{font-size:var(--font-size-sm)}.text-\[length\:var\(--heading-size\)\]{font-size:var(--heading-size)}.text-\[length\:var\(--intro-size\)\]{font-size:var(--intro-size)}.text-\[length\:var\(--nav-link-size\)\]{font-size:var(--nav-link-size)}.text-\[length\:var\(--portfolio-lead-title-size\)\]{font-size:var(--portfolio-lead-title-size)}.text-\[length\:var\(--status-size\)\]{font-size:var(--status-size)}.leading-\[var\(--button-line-height\)\]{--tw-leading:var(--button-line-height);line-height:var(--button-line-height)}.leading-\[var\(--card-title-line-height\)\]{--tw-leading:var(--card-title-line-height);line-height:var(--card-title-line-height)}.leading-\[var\(--display-line-height\)\]{--tw-leading:var(--display-line-height);line-height:var(--display-line-height)}.leading-\[var\(--field-label-line-height\)\]{--tw-leading:var(--field-label-line-height);line-height:var(--field-label-line-height)}.leading-\[var\(--heading-line-height\)\]{--tw-leading:var(--heading-line-height);line-height:var(--heading-line-height)}.leading-none{--tw-leading:1;line-height:1}.font-\(--footer-brand-weight\){--tw-font-weight:var(--footer-brand-weight);font-weight:var(--footer-brand-weight)}.font-\[600\]{--tw-font-weight:600;font-weight:600}.font-\[var\(--button-weight\)\]{--tw-font-weight:var(--button-weight);font-weight:var(--button-weight)}.font-\[var\(--control-weight\)\]{--tw-font-weight:var(--control-weight);font-weight:var(--control-weight)}.font-\[var\(--display-weight\)\]{--tw-font-weight:var(--display-weight);font-weight:var(--display-weight)}.font-\[var\(--field-label-weight\)\]{--tw-font-weight:var(--field-label-weight);font-weight:var(--field-label-weight)}.font-\[var\(--font-weight-extrabold\)\]{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-\[var\(--heading-weight\)\]{--tw-font-weight:var(--heading-weight);font-weight:var(--heading-weight)}.font-\[var\(--nav-link-weight\)\]{--tw-font-weight:var(--nav-link-weight);font-weight:var(--nav-link-weight)}.font-\[var\(--status-weight\)\]{--tw-font-weight:var(--status-weight);font-weight:var(--status-weight)}.font-\[var\(--wordmark-owl-weight\)\]{--tw-font-weight:var(--wordmark-owl-weight);font-weight:var(--wordmark-owl-weight)}.font-\[var\(--wordmark-studio-weight\)\]{--tw-font-weight:var(--wordmark-studio-weight);font-weight:var(--wordmark-studio-weight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.tracking-\[var\(--wordmark-owl-tracking\)\]{--tw-tracking:var(--wordmark-owl-tracking);letter-spacing:var(--wordmark-owl-tracking)}.tracking-\[var\(--wordmark-studio-tracking\)\]{--tw-tracking:var(--wordmark-studio-tracking);letter-spacing:var(--wordmark-studio-tracking)}.\[text-wrap\:balance\]{text-wrap:balance}.\[text-wrap\:pretty\],.text-pretty{text-wrap:pretty}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}.\[overflow-wrap\:break-word\]{overflow-wrap:break-word}.whitespace-nowrap{white-space:nowrap}.text-\(--footer-brand-colour\){color:var(--footer-brand-colour)}.text-\(--footer-size\){color:var(--footer-size)}.text-\[var\(--button-outline-colour\)\]{color:var(--button-outline-colour)}.text-\[var\(--button-solid-colour\)\]{color:var(--button-solid-colour)}.text-\[var\(--control-colour\)\]{color:var(--control-colour)}.text-\[var\(--field-colour\)\]{color:var(--field-colour)}.text-\[var\(--field-label-colour\)\]{color:var(--field-label-colour)}.text-\[var\(--intro-colour\)\]{color:var(--intro-colour)}.text-\[var\(--muted-text\)\]{color:var(--muted-text)}.text-\[var\(--nav-link-colour\)\]{color:var(--nav-link-colour)}.text-\[var\(--pane-sage-muted\)\]{color:var(--pane-sage-muted)}.text-\[var\(--pane-sage-text\)\]{color:var(--pane-sage-text)}.text-\[var\(--portfolio-status-colour\)\]{color:var(--portfolio-status-colour)}.text-\[var\(--status-colour\)\]{color:var(--status-colour)}.text-\[var\(--text\)\]{color:var(--text)}.text-action-text{color:var(--primary-action-text)}.text-inherit{color:inherit}.text-orange{color:var(--family-text-orange)}.text-sage{color:var(--family-text-sage)}.text-yellow{color:var(--family-text-yellow)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[var\(--dialog-panel-shadow\)\]{--tw-shadow:var(--dialog-panel-shadow);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[var\(--shadow-elevated\)\]{--tw-shadow:var(--shadow-elevated);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-\[var\(--duration-fast\)\]{--tw-duration:var(--duration-fast);transition-duration:var(--duration-fast)}.ease-\[var\(--ease-standard\)\]{--tw-ease:var(--ease-standard);transition-timing-function:var(--ease-standard)}.\[--staircase-fill\:var\(--panel-tint-biography\)\]{--staircase-fill:var(--panel-tint-biography)}.\[--staircase-fill\:var\(--panel-tint-form\)\]{--staircase-fill:var(--panel-tint-form)}.\[--themed-image-aspect\:var\(--portfolio-media-aspect\)\]{--themed-image-aspect:var(--portfolio-media-aspect)}.\[--themed-image-aspect\:var\(--portfolio-page-media-aspect\)\]{--themed-image-aspect:var(--portfolio-page-media-aspect)}.group-data-\[lead\=true\]\:font-brand-display:is(:where(.group)[data-lead=true] *){font-family:var(--font-display)}.group-data-\[lead\=true\]\:text-\[length\:var\(--portfolio-lead-title-size\)\]:is(:where(.group)[data-lead=true] *){font-size:var(--portfolio-lead-title-size)}.group-data-\[lead\=true\]\:leading-\[var\(--heading-line-height\)\]:is(:where(.group)[data-lead=true] *){--tw-leading:var(--heading-line-height);line-height:var(--heading-line-height)}.group-data-\[lead\=true\]\:font-\[var\(--heading-weight\)\]:is(:where(.group)[data-lead=true] *){--tw-font-weight:var(--heading-weight);font-weight:var(--heading-weight)}.placeholder\:text-\[var\(--field-placeholder-colour\)\]::placeholder{color:var(--field-placeholder-colour)}@media(hover:hover){.hover\:border-\[var\(--control-hover-border\)\]:hover{border-color:var(--control-hover-border)}.hover\:bg-\[var\(--control-hover-bg\)\]:hover{background-color:var(--control-hover-bg)}.hover\:text-\[var\(--nav-link-colour-hover\)\]:hover{color:var(--nav-link-colour-hover)}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:translate-y-0:focus-visible{--tw-translate-y:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[frame\]\:aspect-\[var\(--portfolio-page-media-aspect\)\][data-frame]{aspect-ratio:var(--portfolio-page-media-aspect)}.data-\[layer\]\:absolute[data-layer]{position:absolute}.data-\[layer\]\:inset-0[data-layer]{inset:0}.data-\[near-limit\]\:text-\[var\(--status-colour\)\][data-near-limit]{color:var(--status-colour)}@media not all and (min-width:64rem){.max-lg\:hidden{display:none}}@media not all and (min-width:40rem){.max-sm\:hidden{display:none}}@media(min-width:40rem){.sm\:aspect-\[var\(--portfolio-lead-aspect\)\]{aspect-ratio:var(--portfolio-lead-aspect)}.sm\:w-max{width:max-content}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:48rem){.md\:row-span-2{grid-row:span 2/span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-rows-\[auto_1fr\]{grid-template-rows:auto 1fr}.md\:grid-rows-subgrid{grid-template-rows:subgrid}.md\:justify-end{justify-content:flex-end}.md\:gap-0{gap:0}.md\:group-data-\[lead\=true\]\:grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,1fr\)\]:is(:where(.group)[data-lead=true] *){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.md\:group-data-\[lead\=true\]\:items-end:is(:where(.group)[data-lead=true] *){align-items:flex-end}.md\:group-data-\[lead\=true\]\:gap-\[var\(--space-300\)\]:is(:where(.group)[data-lead=true] *){gap:var(--space-300)}.md\:first\:col-span-2:first-child{grid-column:span 2/span 2}}@media(min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:mt-\[calc\(var\(--line-height-body\)\*1rem\+var\(--space-100\)\)\]{margin-top:calc(var(--line-height-body) * 1rem + var(--space-100))}.lg\:mt-auto{margin-top:auto}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:max-w-none{max-width:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-\[3fr_2fr\]{grid-template-columns:3fr 2fr}.lg\:grid-cols-\[var\(--grid-columns-contact\)\]{grid-template-columns:var(--grid-columns-contact)}.lg\:flex-col{flex-direction:column}.lg\:items-start{align-items:flex-start}.lg\:items-stretch{align-items:stretch}.lg\:gap-\[var\(--portfolio-grid-gap\)\]{gap:var(--portfolio-grid-gap)}.lg\:gap-\[var\(--space-250\)\]{gap:var(--space-250)}.lg\:gap-x-\[var\(--space-fluid-contact\)\]{column-gap:var(--space-fluid-contact)}.lg\:self-start{align-self:flex-start}}.\[\&_\.section-heading-marker\]\:mt-0 .section-heading-marker{margin-top:0}.frame-emphasis{border-width:var(--border-width-emphasis)}.pane-open,.pane-soft{border-width:0}.pane-soft{background:var(--surface-subtle)}.portfolio-card[data-portfolio-project=the-hours-are-ours]{background:var(--pane-sage);color:var(--pane-sage-text);--portfolio-status-colour:var(--pane-sage-muted)}.portfolio-card .browser-frame{border:var(--border-width) solid var(--media-frame-border-colour)}.portfolio-status{font-size:var(--font-size-caption);font-weight:var(--font-weight-regular)}.service-offer h3{margin-bottom:var(--space-100);font-weight:600}.service-prompts-column{--button-outline-border:var(--border-control)}.service-prompt-list{padding-bottom:var(--space-100)}.service-prompt:nth-child(2n){margin-inline-start:clamp(0rem,6vw,4rem)}.service-prompt__bubble{align-items:center;gap:var(--space-100);width:fit-content;max-width:min(38rem,100%);padding:var(--space-100) var(--space-120);border:2px solid var(--card-border-colour);border-radius:var(--card-radius);background:var(--card-bg);color:var(--text);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);display:flex;position:relative}.service-prompt__bubble:after{content:"";inset-inline-start:var(--space-120);bottom:calc(-1 * var(--space-100));width:var(--space-100);height:var(--space-100);background:var(--card-border-colour);clip-path:polygon(0 0,100% 0,100% 34%,67% 34%,67% 67%,34% 67%,34% 100%,0 100%);position:absolute}.service-prompt__bubble>span:last-child{text-wrap:pretty}.service-prompt:nth-child(2n) .service-prompt__bubble:after{inset-inline-start:auto;inset-inline-end:var(--space-120);transform:scaleX(-1)}@keyframes bubble-pop{0%{opacity:0;scale:.6}}@keyframes bubble-cta-rise{0%{opacity:0;translate:0 16px}}@media(prefers-reduced-motion:no-preference){.service-prompts-column[data-reveal=pending] .service-prompt__bubble,.service-prompts-column[data-reveal=pending]>:last-child{opacity:0}.service-prompts-column[data-reveal=in] .service-prompt__bubble{transform-origin:var(--space-120) 100%;animation:bubble-pop var(--bubble-pop-duration) var(--ease-pop) calc(var(--i) * var(--bubble-pop-step)) both}.service-prompts-column[data-reveal=in] .service-prompt:nth-child(2n) .service-prompt__bubble{transform-origin:calc(100% - var(--space-120)) 100%}.service-prompts-column[data-reveal=in]>:last-child{animation:bubble-cta-rise var(--reveal-duration) var(--ease-smooth-out) calc(var(--count) * var(--bubble-pop-step) + var(--bubble-pop-step)) both}}.service-prompt__bubble:hover{background:var(--surface-subtle);transform:translateY(-1px)}.service-prompt__bubble:has(input:checked){background:var(--surface-subtle)}.service-prompt__bubble:has(input:focus-visible){outline:var(--focus-ring-width) solid var(--focus-ring-colour);outline-offset:var(--focus-ring-offset)}.pixel-marker{flex:none;width:3rem;height:3rem;overflow:visible}.pixel-marker rect{transform-origin:0 0;transform:translate(var(--sx),var(--sy)) scale(var(--ss));fill:var(--fill);opacity:var(--so);transition:transform .32s cubic-bezier(.22,1,.36,1),opacity .32s var(--ease-standard),fill .32s var(--ease-standard)}.service-prompt__bubble:has(input:checked) .pixel-marker rect,.contact-situation:has(input:checked) .pixel-marker rect{transform:translate(var(--tx),var(--ty)) scale(var(--ts));fill:var(--tick-colour);opacity:1}.about-clarity-list strong{color:var(--brand-text);font-weight:600}.staircase-frame{--stair-tl:0px;--stair-tr:0px;--stair-br:0px;--stair-bl:0px;--stair-edge:var(--border-width-emphasis);--stair-outer:50% 0, calc(100% - 2 * var(--stair-tr)) 0, calc(100% - 2 * var(--stair-tr)) var(--stair-tr), calc(100% - var(--stair-tr)) var(--stair-tr), calc(100% - var(--stair-tr)) calc(2 * var(--stair-tr)), 100% calc(2 * var(--stair-tr)), 100% calc(100% - 2 * var(--stair-br)), calc(100% - var(--stair-br)) calc(100% - 2 * var(--stair-br)), calc(100% - var(--stair-br)) calc(100% - var(--stair-br)), calc(100% - 2 * var(--stair-br)) calc(100% - var(--stair-br)), calc(100% - 2 * var(--stair-br)) 100%, calc(2 * var(--stair-bl)) 100%, calc(2 * var(--stair-bl)) calc(100% - var(--stair-bl)), var(--stair-bl) calc(100% - var(--stair-bl)), var(--stair-bl) calc(100% - 2 * var(--stair-bl)), 0 calc(100% - 2 * var(--stair-bl)), 0 calc(2 * var(--stair-tl)), var(--stair-tl) calc(2 * var(--stair-tl)), var(--stair-tl) var(--stair-tl), calc(2 * var(--stair-tl)) var(--stair-tl), calc(2 * var(--stair-tl)) 0;--stair-inner:50% var(--stair-edge), calc(100% - 2 * var(--stair-tr) - var(--stair-edge)) var(--stair-edge), calc(100% - 2 * var(--stair-tr) - var(--stair-edge)) calc(var(--stair-edge) + var(--stair-tr)), calc(100% - var(--stair-tr) - var(--stair-edge)) calc(var(--stair-edge) + var(--stair-tr)), calc(100% - var(--stair-tr) - var(--stair-edge)) calc(var(--stair-edge) + 2 * var(--stair-tr)), calc(100% - var(--stair-edge)) calc(var(--stair-edge) + 2 * var(--stair-tr)), calc(100% - var(--stair-edge)) calc(100% - var(--stair-edge) - 2 * var(--stair-br)), calc(100% - var(--stair-edge) - var(--stair-br)) calc(100% - var(--stair-edge) - 2 * var(--stair-br)), calc(100% - var(--stair-edge) - var(--stair-br)) calc(100% - var(--stair-edge) - var(--stair-br)), calc(100% - var(--stair-edge) - 2 * var(--stair-br)) calc(100% - var(--stair-edge) - var(--stair-br)), calc(100% - var(--stair-edge) - 2 * var(--stair-br)) calc(100% - var(--stair-edge)), calc(var(--stair-edge) + 2 * var(--stair-bl)) calc(100% - var(--stair-edge)), calc(var(--stair-edge) + 2 * var(--stair-bl)) calc(100% - var(--stair-edge) - var(--stair-bl)), calc(var(--stair-edge) + var(--stair-bl)) calc(100% - var(--stair-edge) - var(--stair-bl)), calc(var(--stair-edge) + var(--stair-bl)) calc(100% - var(--stair-edge) - 2 * var(--stair-bl)), var(--stair-edge) calc(100% - var(--stair-edge) - 2 * var(--stair-bl)), var(--stair-edge) calc(var(--stair-edge) + 2 * var(--stair-tl)), calc(var(--stair-edge) + var(--stair-tl)) calc(var(--stair-edge) + 2 * var(--stair-tl)), calc(var(--stair-edge) + var(--stair-tl)) calc(var(--stair-edge) + var(--stair-tl)), calc(var(--stair-edge) + 2 * var(--stair-tl)) calc(var(--stair-edge) + var(--stair-tl)), calc(var(--stair-edge) + 2 * var(--stair-tl)) var(--stair-edge);isolation:isolate;border-width:0;position:relative}.staircase-frame.staircase-frame{background:0 0}.staircase-frame[data-staircase-corners~=top-left]{--stair-tl:var(--project-corner-step)}.staircase-frame[data-staircase-corners~=top-right]{--stair-tr:var(--project-corner-step)}.staircase-frame[data-staircase-corners~=bottom-right]{--stair-br:var(--project-corner-step)}.staircase-frame[data-staircase-corners~=bottom-left]{--stair-bl:var(--project-corner-step)}.staircase-frame:before,.staircase-frame:after{content:"";z-index:-1;pointer-events:none;position:absolute;inset:0}.staircase-frame:before{background:var(--staircase-fill,var(--card-bg));clip-path:polygon(var(--stair-outer))}.staircase-frame:after{background:var(--staircase-border,var(--card-border-colour));clip-path:polygon(evenodd,var(--stair-outer),50% 0,var(--stair-inner),50% var(--stair-edge))}.staircase-frame[data-filled=false]:before,.staircase-frame[data-bordered=false]:after{display:none}@media(min-width:768px){.about-person-copy{column-gap:var(--space-200);grid-template-columns:minmax(9rem,1fr) 3fr;align-items:start;display:grid}.about-person-copy>p:last-child{grid-area:1/2/span 2;margin:0}}.contact-situation{align-items:center;gap:var(--space-090);min-height:var(--control-min-height);padding:var(--space-075) var(--space-075);color:var(--text);cursor:pointer;text-wrap:pretty;transition:background-color var(--duration-fast) var(--ease-standard);grid-template-columns:2rem minmax(0,1fr);display:grid}.contact-situation .pixel-marker{width:2rem;height:2rem}.contact-situation:hover{background:var(--surface-subtle)}@supports (color:color-mix(in lab,red,red)){.contact-situation:hover{background:color-mix(in srgb,var(--surface-subtle) 40%,transparent)}}.contact-situation:has(input:checked){background:var(--surface-subtle)}.contact-situation:has(input:focus-visible),.contact-chip:has(input:focus-visible){outline:var(--focus-ring-width) solid var(--focus-ring-colour);outline-offset:var(--focus-ring-offset)}.contact-fit{padding-top:var(--space-090);border-top:var(--border-width-emphasis) solid var(--text);color:var(--text)}.contact-fit[data-empty]{border-top-width:1px}.contact-fit__label{letter-spacing:.13em;font-size:.75rem;font-weight:800;line-height:var(--line-height-label);text-transform:uppercase}.contact-fit__item strong{font-weight:600}.contact-panel{caret-color:var(--tick-colour)}.contact-cues li{gap:var(--space-050);display:flex}.contact-cues li:before{background:var(--tick-colour);content:"";flex:none;width:.375rem;height:.375rem;margin-top:.55em}.contact-chip-set{gap:var(--space-050);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media(min-width:640px){.contact-chip-set{flex-wrap:wrap;display:flex}}@media(min-width:1024px){.contact-context{top:calc(var(--header-height) + var(--space-200));position:sticky}}.contact-chip{align-items:center;gap:var(--space-060);min-height:44px;padding:var(--space-050) var(--space-090);border:1px solid var(--border-control);background:var(--surface);color:var(--text);font-size:var(--font-size-status);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard);line-height:1.25;display:inline-flex}.contact-chip:before{box-sizing:border-box;border:2px solid var(--border-control);content:"";width:.625rem;height:.625rem;transition:border-radius .32s cubic-bezier(.22,1,.36,1),background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard);flex:none}.contact-chip:hover{background:var(--surface-subtle)}.contact-chip:has(input:checked){background:var(--surface-subtle);box-shadow:inset 0 0 0 1px var(--border-control)}.contact-chip:has(input:checked):before{border-color:var(--tick-colour);background:var(--tick-colour);border-radius:50%}.t-resize{transition:width var(--resize-dur) var(--resize-ease),height var(--resize-dur) var(--resize-ease);will-change:width,height}@media(prefers-reduced-motion:reduce){.t-resize{transition:none!important}}.t-dropdown{transform-origin:0 0;transform:scale(var(--dropdown-pre-scale));opacity:0;pointer-events:none;transition:transform var(--dropdown-open-dur) var(--dropdown-ease),opacity var(--dropdown-open-dur) var(--dropdown-ease);will-change:transform,opacity}.t-dropdown[data-origin=top-right]{transform-origin:100% 0}.t-dropdown[data-origin=top-center]{transform-origin:top}.t-dropdown[data-origin=bottom-left]{transform-origin:0 100%}.t-dropdown[data-origin=bottom-center]{transform-origin:bottom}.t-dropdown[data-origin=bottom-right]{transform-origin:100% 100%}.t-dropdown.is-open{opacity:1;pointer-events:auto;transform:scale(1)}.t-dropdown.is-closing{transform:scale(var(--dropdown-closing-scale));opacity:0;pointer-events:none;transition:transform var(--dropdown-close-dur) var(--dropdown-ease),opacity var(--dropdown-close-dur) var(--dropdown-ease)}#site-menu::backdrop{opacity:0;transition:opacity var(--dropdown-close-dur) var(--dropdown-ease)}#site-menu:has(.t-dropdown.is-open)::backdrop{opacity:1;transition-duration:var(--dropdown-open-dur)}@media(prefers-reduced-motion:reduce){.t-dropdown,#site-menu::backdrop{transition:none!important}}.contact-panel{align-content:start}.contact-panel.is-resizing{overflow:clip}.contact-enter{animation:.26s cubic-bezier(.22,1,.36,1) contact-enter}@keyframes contact-enter{0%{opacity:0;transform:translateY(-.375rem)}}.palette-hero,.palette-contact,[data-palette-footer]{color:var(--on-brand-body)}.palette-contact,[data-palette-footer]{background-color:var(--brand-surface)}[data-palette-footer]{background-color:var(--lime);color:var(--sage-action)}.palette-hero{background-color:var(--palette-hero-surface);color:var(--sage-action)}.palette-hero,.palette-contact{isolation:isolate;position:relative}.palette-hero:before,.palette-contact:before,[data-palette-footer]:before{z-index:-1;content:"";width:100vw;position:absolute;inset:0 auto 0 50%;transform:translate(-50%)}.palette-contact:before,[data-palette-footer]:before{background:var(--brand-surface)}[data-palette-footer]:before{background:var(--lime)}.palette-hero:before{background:var(--palette-hero-surface)}.palette-contact:before{inset-block:calc(-.5 * var(--section-padding-block))}[data-palette-footer]{isolation:isolate;position:relative}.button{--button-fill:transparent;--button-ring:transparent;--stair-br:0px;--stair-bw:var(--button-border-width);--stair-outer:0 0, 100% 0, 100% calc(100% - var(--stair-br)), calc(100% - var(--stair-br)) calc(100% - var(--stair-br)), calc(100% - var(--stair-br)) 100%, 0 100%;--stair-inner:var(--stair-bw) var(--stair-bw), calc(100% - var(--stair-bw)) var(--stair-bw), calc(100% - var(--stair-bw)) calc(100% - var(--stair-br) - var(--stair-bw)), calc(100% - var(--stair-br) - var(--stair-bw)) calc(100% - var(--stair-br) - var(--stair-bw)), calc(100% - var(--stair-br) - var(--stair-bw)) calc(100% - var(--stair-bw)), var(--stair-bw) calc(100% - var(--stair-bw));isolation:isolate;transition:color var(--duration-fast) var(--ease-standard),transform var(--button-stair-duration) var(--ease-smooth-out);position:relative}.button:before,.button:after{content:"";inset:calc(-1 * var(--stair-bw));z-index:-1;pointer-events:none;transition:clip-path var(--button-stair-duration) var(--ease-smooth-out),background-color var(--duration-fast) var(--ease-standard);position:absolute}.button:before{background-color:var(--button-fill);clip-path:polygon(var(--stair-outer))}.button:after{background-color:var(--button-ring);clip-path:polygon(evenodd,var(--stair-outer),0 0,var(--stair-inner),var(--stair-bw) var(--stair-bw))}.button-dark{--button-fill:var(--button-solid-bg)}.button-outline{--button-ring:var(--button-outline-border)}@media(hover:hover){.button:not(:disabled):not([aria-disabled=true]):hover{--stair-br:var(--button-stair-step)}.button-dark:not(:disabled):not([aria-disabled=true]):hover{--button-fill:var(--button-solid-bg-hover)}.button-outline:not(:disabled):not([aria-disabled=true]):hover{--button-fill:var(--control-hover-bg)}}.button:not(:disabled):not([aria-disabled=true]):active{transform:scale(var(--button-press-scale));transition-duration:var(--duration-fast),var(--button-press-duration)}.button-dark:not(:disabled):not([aria-disabled=true]):active{--button-fill:var(--button-solid-bg-active)}.button-control__content{transition:transform var(--duration-fast) var(--ease-smooth-out);justify-content:center;align-items:center;display:inline-flex}.button-control:not(:disabled):not([aria-disabled=true]):active{border-color:var(--control-hover-border);background-color:var(--control-active-bg);transition-duration:var(--button-press-duration)}.button-control:not(:disabled):not([aria-disabled=true]):active .button-control__content{transform:translateY(var(--control-press-nudge));transition-duration:var(--button-press-duration)}.button-dark:focus-visible,.skip-link:focus-visible{outline:2px solid var(--focus-ring-colour);outline-offset:3px}.letter-sage{color:var(--family-text-sage)}.letter-orange{color:var(--family-text-orange)}.letter-yellow{color:var(--family-text-yellow)}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:var(--duration-none)!important;transition-duration:var(--duration-none)!important;animation-iteration-count:1!important}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
