*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:6.5rem;-webkit-text-size-adjust:100%;text-size-adjust:100%}body,h1,h2,h3,p,blockquote{margin:0}body{min-width:20rem;min-height:100vh}img,svg{max-width:100%}button,input,select,textarea{font:inherit}button,input:not([type=checkbox]):not([type=radio]),select,textarea,details,summary,dialog{border-radius:var(--radius)}a{text-decoration:none}@font-face{font-family:Calibri;src:local("Calibri");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Calibri;src:local("Calibri Bold");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Calibri;src:local("Calibri Italic");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Calibri;src:local("Calibri Bold Italic");font-weight:700;font-style:italic;font-display:swap}:root{--font-primary: "Calibri", "Segoe UI", Arial, sans-serif;--font-heading: var(--font-primary);--font-body: var(--font-primary);--font-mono: var(--font-primary);--content-width: 90rem;--gutter: clamp(1.25rem, 4vw, 4rem);--section-space: clamp(4rem, 8vw, 7rem);--accent-soft: color-mix(in srgb, var(--accent) 9%, transparent);--identity-shadow: color-mix(in srgb, var(--brand-sand) 9%, transparent);--environment-duration: 1.8s;--radius: 12px;--layer-environment: 0;--layer-pointer: 1;--layer-content: 2;--layer-navigation: 50;--layer-controls: 60}:root,:root[data-theme=dark]{color-scheme:dark;--background: #181a19;--background-secondary: #202321;--surface: #292c29;--surface-elevated: #323532;--text-primary: #f5f2ec;--text-secondary: #bbb8b1;--brand-primary: #d8be95;--brand-secondary: #a99c8d;--brand-sand: #d8be95;--accent: #58b8b0;--accent-hover: #70cbc2;--border: #41433f;--border-color-strong: #72776f;--success: #74ad8c;--error: #df786a;--error-text: var(--error);--button-ink: #181a19;--grid-line: rgb(245 242 236 / .035);--footer-background: var(--background-secondary);--shadow: 0 1.5rem 4rem rgb(16 20 18 / .3);--aurora-strength: 1;--mist-strength: 1;--snow-colour: #f5f2ec;--sun-ray-colour: rgb(216 190 149 / .22)}:root[data-theme=light]{color-scheme:light;--background: #f8f5ef;--background-secondary: #eee5d6;--surface: #ffffff;--surface-elevated: #f5f0e8;--text-primary: #252422;--text-secondary: #6e6962;--brand-primary: #343331;--brand-secondary: #665c52;--brand-sand: #d4b88c;--accent: #795438;--accent-hover: #5f3e28;--border: #ded7cc;--border-color-strong: #8d8579;--success: #3f7d62;--error: #b85345;--error-text: #9e4034;--button-ink: #ffffff;--grid-line: rgb(52 51 49 / .04);--shadow: 0 1.5rem 4rem rgb(52 51 49 / .1);--aurora-strength: .3;--mist-strength: .65;--snow-colour: #7d9392;--sun-ray-colour: rgb(180 139 75 / .2)}:root{--season-motion: running;--extra-season-particles: block}:root,:root[data-season=summer]{--season-primary: #d4b88c;--season-secondary: #58b8b0;--season-glow: rgb(216 190 149 / .12);--hero-surface: color-mix(in srgb, var(--surface) 90%, transparent);--hero-frost: none}:root[data-season=autumn]{--season-primary: #b87952;--season-secondary: #665c52;--season-glow: rgb(154 103 72 / .1)}:root[data-season=winter]{--season-primary: #bbb8b1;--season-secondary: #58b8b0;--season-glow: rgb(88 184 176 / .08);--hero-surface: color-mix(in srgb, var(--surface) 85%, transparent);--hero-frost: none}:root[data-season=spring]{--season-primary: #7c9b83;--season-secondary: #d1949b;--season-glow: rgb(124 155 131 / .1)}body{color:var(--text-primary);font:400 1.0625rem/1.6 var(--font-primary);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-primary);font-weight:700;line-height:1.06;text-wrap:balance;letter-spacing:-.035em}p{text-wrap:pretty}button,input,select,textarea{font-family:var(--font-primary)}button,summary{cursor:pointer}.eyebrow{color:var(--text-secondary);font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.eyebrow span{color:var(--accent);margin-right:1rem}html,body{background:var(--background)}body{transition:background-color .2s,color .2s}.shell{width:min(100%,var(--content-width));margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:var(--section-space)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:0;left:var(--gutter);z-index:100;padding:.75rem 1rem;background:var(--accent);color:var(--button-ink);transform:translateY(-120%)}.skip-link:focus{transform:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}::selection{background:var(--accent);color:var(--button-ink)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}[data-reveal]{transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1),border-color .5s}[data-reveal].reveal-pending{opacity:0;transform:translateY(16px)}[data-reveal=fade].reveal-pending{transform:none}[data-reveal=slide].reveal-pending{transform:translate(-12px)}[data-reveal=scale].reveal-pending{transform:scale(.985)}[data-reveal].reveal-pending:focus-within{opacity:1;transform:none}[data-reveal=line-reveal].is-revealed,[data-reveal=technical-draw].is-revealed{border-color:var(--accent)}::view-transition-old(root),::view-transition-new(root){animation-duration:.24s;animation-timing-function:cubic-bezier(.22,1,.36,1)}[data-scroll-depth]{translate:0 var(--depth-offset, 0px)}@media(prefers-reduced-motion:reduce){[data-reveal]{transition:none}[data-reveal].reveal-pending{opacity:1;transform:none}[data-scroll-depth]{translate:none}::view-transition-old(root),::view-transition-new(root){animation:none}}@media(pointer:coarse){[data-scroll-depth]{translate:none}}app-button a,app-service-card mat-card,app-feature-card article,app-callout,app-hero-system .drawing,app-health-scan .inspection,app-problem-explorer .response,app-work-process li,app-contact-form .success,app-about-capabilities .group,app-about-capabilities .hub,app-about-principles .thinking,app-about-principles .principle,app-header .menu,app-header .mega,app-season-selector label,.capabilities article,.model,.model article,.note,.identity,.portrait-stage,.final-cta,app-contact-page aside{border-radius:var(--radius)}app-callout,.final-cta{background:color-mix(in srgb,var(--surface) 88%,transparent)}:root{--ice-edge: rgb(171 222 220 / .65);--ice-haze: rgb(164 213 217 / .22);--ice-corner: rgb(219 240 237 / .24)}:root[data-theme=light]{--ice-edge: rgb(104 149 157 / .6);--ice-haze: rgb(110 161 171 / .18);--ice-corner: rgb(116 165 173 / .18)}:root[data-season=winter] app-service-card mat-card,:root[data-season=winter] app-hero-system .drawing,:root[data-season=winter] .hero-art,:root[data-season=winter] .final-cta,:root[data-season=winter] app-header header{position:relative;border-color:var(--ice-edge);box-shadow:inset 0 1px 0 var(--ice-edge),inset 0 0 18px var(--ice-haze),0 8px 24px #2c53581a}:root[data-season=winter] app-service-card mat-card:after,:root[data-season=winter] app-hero-system .drawing:after,:root[data-season=winter] .hero-art:after,:root[data-season=winter] .final-cta:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:var(--radius);background:url(/assets/images/environment/frost.svg) center/100% 100%,radial-gradient(ellipse at top left,var(--ice-corner),transparent 35%),radial-gradient(ellipse at bottom right,var(--ice-corner),transparent 30%);-webkit-mask-image:radial-gradient(ellipse 100px 65px at top left,#000,transparent),radial-gradient(ellipse 100px 65px at bottom right,#000,transparent);mask-image:radial-gradient(ellipse 100px 65px at top left,#000,transparent),radial-gradient(ellipse 100px 65px at bottom right,#000,transparent)}:root[data-season=winter] app-hero-system .drawing:before,:root[data-season=winter] .hero-art:before{content:"";position:absolute;left:8%;top:calc(100% - 2px);width:140px;height:22px;pointer-events:none;background:linear-gradient(var(--ice-edge),transparent);clip-path:polygon(0 0,100% 0,94% 14%,87% 0,78% 75%,73% 0,59% 30%,53% 0,38% 100%,32% 0,20% 45%,15% 0,4% 70%)}:root[data-season=winter] app-header header{border-bottom:2px solid var(--ice-edge)}:root[data-season=summer] app-hero-system .drawing,:root[data-season=summer] .hero-art,:root[data-season=summer] .portrait-stage{box-shadow:inset 1px 1px #d8be9580,0 8px 32px #d4b88c14}@media(max-width:600px),(pointer:coarse){:root[data-season=winter]{--ice-corner: rgb(150 191 192 / .1)}}body:has(app-legal-page) app-seasonal-background,body:has(app-legal-page) app-seasonal-pointer-effect{opacity:.25}@media print{body:has(app-legal-page){background:#fff;color:#000}body:has(app-legal-page) app-header,body:has(app-legal-page) app-footer,body:has(app-legal-page) app-seasonal-background,body:has(app-legal-page) app-seasonal-pointer-effect,body:has(app-legal-page) app-season-selector,body:has(app-legal-page) app-loader,body:has(app-legal-page) .scroll-progress,body:has(app-legal-page) .skip-link{display:none!important}body:has(app-legal-page) *,body:has(app-legal-page) *:before,body:has(app-legal-page) *:after{animation:none!important;transition:none!important;box-shadow:none!important;text-shadow:none!important}body:has(app-legal-page) app-page-hero .page-hero{padding:0 0 1rem}body:has(app-legal-page) app-page-hero .eyebrow{display:none}body:has(app-legal-page) app-page-hero h1{color:#000;font-size:24pt}body:has(app-legal-page) app-page-hero .lead{color:#000;font-size:11pt;max-width:none}}html{--mat-sys-background: light-dark(#f7faf9, #101414);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#eff1f0, #2d3131);--mat-sys-inverse-primary: light-dark(#00dddd, #006a6a);--mat-sys-inverse-surface: light-dark(#2d3131, #e0e3e2);--mat-sys-on-background: light-dark(#191c1c, #e0e3e2);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #003737);--mat-sys-on-primary-container: light-dark(#004f4f, #00fbfb);--mat-sys-on-primary-fixed: light-dark(#002020, #002020);--mat-sys-on-primary-fixed-variant: light-dark(#004f4f, #004f4f);--mat-sys-on-secondary: light-dark(#ffffff, #1b3534);--mat-sys-on-secondary-container: light-dark(#324b4b, #cce8e7);--mat-sys-on-secondary-fixed: light-dark(#051f1f, #051f1f);--mat-sys-on-secondary-fixed-variant: light-dark(#324b4b, #324b4b);--mat-sys-on-surface: light-dark(#191c1c, #e0e3e2);--mat-sys-on-surface-variant: light-dark(#3f4948, #dae5e4);--mat-sys-on-tertiary: light-dark(#ffffff, #003737);--mat-sys-on-tertiary-container: light-dark(#004f4f, #00fbfb);--mat-sys-on-tertiary-fixed: light-dark(#002020, #002020);--mat-sys-on-tertiary-fixed-variant: light-dark(#004f4f, #004f4f);--mat-sys-outline: light-dark(#6f7979, #889392);--mat-sys-outline-variant: light-dark(#bec9c8, #3f4948);--mat-sys-primary: light-dark(#006a6a, #00dddd);--mat-sys-primary-container: light-dark(#00fbfb, #004f4f);--mat-sys-primary-fixed: light-dark(#00fbfb, #00fbfb);--mat-sys-primary-fixed-dim: light-dark(#00dddd, #00dddd);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#4a6363, #b0cccb);--mat-sys-secondary-container: light-dark(#cce8e7, #324b4b);--mat-sys-secondary-fixed: light-dark(#cce8e7, #cce8e7);--mat-sys-secondary-fixed-dim: light-dark(#b0cccb, #b0cccb);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#f7faf9, #101414);--mat-sys-surface-bright: light-dark(#f7faf9, #363a39);--mat-sys-surface-container: light-dark(#ebefed, #1c2020);--mat-sys-surface-container-high: light-dark(#e6e9e7, #272b2a);--mat-sys-surface-container-highest: light-dark(#e0e3e2, #313635);--mat-sys-surface-container-low: light-dark(#f1f4f3, #191c1c);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0b0f0e);--mat-sys-surface-dim: light-dark(#d7dbd9, #101414);--mat-sys-surface-tint: light-dark(#006a6a, #00dddd);--mat-sys-surface-variant: light-dark(#dae5e4, #3f4948);--mat-sys-tertiary: light-dark(#006a6a, #00dddd);--mat-sys-tertiary-container: light-dark(#00fbfb, #004f4f);--mat-sys-tertiary-fixed: light-dark(#00fbfb, #00fbfb);--mat-sys-tertiary-fixed-dim: light-dark(#00dddd, #00dddd);--mat-sys-neutral-variant20: #293232;--mat-sys-neutral10: #191c1c;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Calibri;--mat-sys-body-large-font: Calibri;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Calibri;--mat-sys-body-medium-font: Calibri;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Calibri;--mat-sys-body-small-font: Calibri;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Calibri;--mat-sys-display-large-font: Calibri;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Calibri;--mat-sys-display-medium-font: Calibri;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Calibri;--mat-sys-display-small-font: Calibri;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Calibri;--mat-sys-headline-large-font: Calibri;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Calibri;--mat-sys-headline-medium-font: Calibri;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Calibri;--mat-sys-headline-small-font: Calibri;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Calibri;--mat-sys-label-large-font: Calibri;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Calibri;--mat-sys-label-medium-font: Calibri;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Calibri;--mat-sys-label-small-font: Calibri;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Calibri;--mat-sys-title-large-font: Calibri;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Calibri;--mat-sys-title-medium-font: Calibri;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Calibri;--mat-sys-title-small-font: Calibri;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12;--mat-sys-primary: var(--accent);--mat-sys-on-primary: var(--button-ink);--mat-sys-primary-container: var(--background-secondary);--mat-sys-on-primary-container: var(--text-primary);--mat-sys-secondary: var(--brand-secondary);--mat-sys-on-secondary: var(--button-ink);--mat-sys-secondary-container: var(--background-secondary);--mat-sys-on-secondary-container: var(--text-primary);--mat-sys-surface: var(--surface);--mat-sys-surface-container: var(--surface);--mat-sys-surface-container-low: var(--background-secondary);--mat-sys-surface-container-high: var(--surface-elevated);--mat-sys-surface-container-highest: var(--surface-elevated);--mat-sys-on-surface: var(--text-primary);--mat-sys-on-surface-variant: var(--text-secondary);--mat-sys-outline: var(--border-color-strong);--mat-sys-outline-variant: var(--border);--mat-sys-error: var(--error-text);--mat-button-filled-container-shape: 12px;--mat-button-outlined-container-shape: 12px;--mat-button-text-container-shape: 12px;--mat-form-field-outlined-container-shape: 12px;--mat-card-outlined-container-shape: 12px;--mat-card-elevated-container-shape: 12px;--mat-expansion-container-shape: 12px}.cdk-overlay-container{z-index:100}mat-form-field{width:100%;min-width:0}mat-panel-title{line-height:1.4}mat-expansion-panel-header{min-height:64px;height:auto!important;padding-block:16px}@media(prefers-reduced-motion:reduce){.mat-ripple-element{display:none}}
