@keyframes process-draw{0%{transform:scale(var(--draw-from-x, 0),var(--draw-from-y, 1))}
to{transform:scale(1,1)}
}
@keyframes btn-spin{to{transform:rotate(360deg)}
}
@font-face{font-family:"Archivo";font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/archivo-latin-wght-normal.woff2)format("woff2-variations")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:100 700;font-display:swap;src:url(../fonts/ibm-plex-sans-latin-wght-normal.woff2)format("woff2-variations")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/ibm-plex-mono-latin-400.woff2)format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/ibm-plex-mono-latin-500.woff2)format("woff2")}
:root{--c-ink:#111111;--c-black:#000000;--c-surface:#FFFFFF;--c-tint:#F5F5F5;--c-accent:#111111;--c-accent-ink:#FFFFFF;--c-accent-hover:#333333;--c-muted:#6B6B6B;--c-rule:rgb(0 0 0 / 0.10);--c-rule-strong:rgb(0 0 0 / 0.18);--c-rule-ink:rgb(255 255 255 / 0.14);--c-on-ink:#F4F4F4;--c-on-ink-muted:#A6A6A6;--c-field-border:#7A7A7A;--status-negative:#C62828;--icon-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2 8h11M9 4l4 4-4 4' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--radius:2px;--font-display:"Archivo", "Arial Narrow", system-ui, sans-serif;--font-body:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", "Cascadia Code", Consolas, monospace;--fs-h2:clamp(1.75rem, 1vw + 1.25rem, 2.5rem);--lh-h2:1.15;--fs-h3:clamp(1.2rem, 0.6vw + 1rem, 1.5rem);--lh-h3:1.2;--fs-lead:clamp(1.0625rem, 0.4vw + 1rem, 1.25rem);--fs-body:1rem;--lh-body:1.55;--fs-dense:clamp(0.875rem, 0.25vw + 0.8rem, 0.9375rem);--lh-dense:1.45;--fs-small:0.8125rem;--fs-label:0.75rem;--tracking-label:0.06em;--fs-stat:clamp(1.75rem, 1.5vw + 1.25rem, 2.75rem);--fs-ghost:clamp(4rem, 9vw, 7.5rem);--measure:65ch;--measure-legal:70ch;--measure-sub:28ch;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:2rem;--space-xl:4rem;--space-2xl:8rem;--section-pad-block:clamp(3rem, 6vw, 5.5rem);--section-pad-block-tight:clamp(2rem, 4vw, 3.5rem);--gut:var(--container-padding-inline);--header-h:clamp(58px, 7vw, 74px);--seam-w:2px;--grid-cell:24px;scrollbar-width:thin;scrollbar-color:var(--c-ink) var(--c-tint)}
:root[data-motion=rugged]{--ease-reveal:cubic-bezier(0.4, 0, 0.2, 1);--ease-hover:cubic-bezier(0.4, 0, 0.2, 1);--dur-reveal:200ms;--dur-hover:150ms;--dur-draw:600ms;--dist-reveal:32px;--stagger:30ms;--hover-lift:-2px}
:root[data-layout=dashboard-density]{--container-max:1200px;--container-padding-inline:clamp(1rem, 3vw, 2rem);--row-height:48px;--row-height-compact:40px;--row-padding-block:clamp(0.5rem, 0.5vw, 0.75rem);--row-padding-inline:clamp(0.75rem, 1vw, 1rem);--section-gap:clamp(2rem, 3vw, 3rem);--hero-min-height:25vh;--hero-max-height:35vh;--footer-columns:5}
:root[data-decor=crisp-vector]{--grid-dot-color:rgb(0 0 0 / 0.06);--icon-stroke:1.5px;--icon-corner:round;--hairline:1px}
@media (min-resolution:2dppx){:root[data-decor=crisp-vector]{--hairline:0.5px}
}
[data-hero=oversized-portrait]{--hero-corner-pad:clamp(1.5rem, 4vw, 4rem);--hero-headline-size:clamp(1.5rem, 3.5vw, 2.75rem);--hero-headline-leading:1.15;--hero-sub-size:0.9375rem;--hero-sub-max:60ch;--hero-fg:#ffffff}
@media (max-width:767px){[data-hero=oversized-portrait]{--hero-headline-size:clamp(1.25rem, 5vw, 2rem)}
}
*,::after,::before{box-sizing:border-box;margin:0;padding:0}
img,video{max-width:100%;height:auto}
.page-hero__title span,.svc-hero__title span,.title-xl span,img,svg,video{display:block}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4,p{overflow-wrap:break-word}
address{font-style:normal}
:root{interpolate-size:allow-keywords}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}
}
body,html{overflow-x:clip}
body{display:flex;flex-direction:column;min-height:100svh;background:var(--c-surface);color:var(--c-ink);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);text-rendering:optimizeSpeed;-webkit-font-smoothing:antialiased}
body>main{flex:1 0 auto}
.site-footer{flex-shrink:0}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:800;line-height:var(--lh-h2);letter-spacing:-.01em;text-wrap:balance}
h3{font-size:var(--fs-h3);line-height:var(--lh-h3)}
h1,h2{font-size:var(--fs-h2)}
h4{font-size:1.0625rem}
dd,li,p{text-wrap:pretty}
p{max-width:var(--measure)}
a{color:inherit}
a:not(.btn):not(.link-arrow):not(.nav__link):not(.footer a){text-decoration-thickness:1px;text-underline-offset:.15em}
b,strong{font-weight:600}
ol,ul{list-style:none}
::selection{background:var(--c-accent);color:var(--c-accent-ink)}
:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px}
.hero :focus-visible,.page-hero :focus-visible,.section--ink :focus-visible,.site-footer :focus-visible{outline-color:var(--c-surface)}
.sr-only,.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:var(--space-sm);top:-3rem;z-index:200;background:var(--c-ink);color:var(--c-surface);padding:.6rem 1rem;border-radius:var(--radius);font-family:var(--font-mono);font-size:var(--fs-small);transition:top var(--dur-hover) var(--ease-hover)}
.skip-link:focus{top:var(--space-sm)}
.container{width:min(100% - (2*var(--gut)),var(--container-max));margin-inline:auto}
.flow>*+*{margin-top:var(--space-md)}
.stack-sm>*+*{margin-top:var(--space-sm)}
.stack-md>*+*{margin-top:var(--space-md)}
.stack-lg>*+*{margin-top:var(--space-lg)}
.text-muted{color:var(--c-muted)}
.text-left{text-align:left}
.text-center{text-align:center}
.fw-600{font-weight:600}
.fw-800{font-weight:800}
.fs-sm{font-size:var(--fs-small)}
.fs-lead{font-size:var(--fs-lead)}
.label,.mono{font-family:var(--font-mono)}
.mono{font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum"1,"lnum"1}
.label{font-size:var(--fs-label);font-weight:500;text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--c-muted)}
.max-ch{max-width:var(--measure)}
.max-ch-sub{max-width:var(--measure-sub)}
.band-caption,.unconstrained,p.text-center{max-width:none}
.mt-md{margin-top:var(--space-md)}
.mt-lg{margin-top:var(--space-lg)}
.mt-xl{margin-top:var(--space-xl)}
.mb-md{margin-bottom:var(--space-md)}
.mb-lg{margin-bottom:var(--space-lg)}
.btn-group{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-md);align-items:center}
.btn-group--center{justify-content:center}
.btn-group--end{justify-content:flex-end}
.section-index{font-family:var(--font-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--fs-label);letter-spacing:.05em;color:var(--c-muted)}
.hr-hairline{border:0;border-top:var(--hairline, 1px) solid var(--c-rule)}
.dot-grid{background-image:radial-gradient(circle,var(--grid-dot-color) 1px,transparent 1px);background-size:var(--grid-cell) var(--grid-cell)}
.map-link__placeholder{display:inline-block;font-family:var(--font-mono);font-size:var(--fs-small);color:var(--c-muted)}
.section{position:relative;padding-block:var(--section-pad-block)}
.section--tight{padding-block:var(--section-pad-block-tight)}
.section--paper{background:var(--c-surface);color:var(--c-ink)}
.section--tint{background:var(--c-tint);color:var(--c-ink)}
.section--ink{background:var(--c-black)}
.section--ink h1,.section--ink h2,.section--ink h3,.section--ink h4{color:var(--c-surface)}
.section--ink,.section--ink dd,.section--ink li,.section--ink p{color:var(--c-on-ink)}
.section--ink .label,.section--ink .section-index,.section--ink .text-muted{color:var(--c-on-ink-muted)}
.section--ink a:not(.btn):not(.link-arrow){color:var(--c-surface)}
.section--ink .hr-hairline{border-top-color:var(--c-rule-ink)}
.site-header{position:sticky;top:0;z-index:100;background:var(--c-surface);border-bottom:1px solid var(--c-rule);transition:background-color var(--dur-hover) var(--ease-hover),border-color var(--dur-hover) var(--ease-hover)}
.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);min-height:var(--header-h);width:min(100% - (2*var(--gut)),var(--container-max));margin-inline:auto}
.brand{display:inline-flex;align-items:center;flex-shrink:0;min-width:0;line-height:0}
.brand img{height:44px;width:auto}
.brand__knockout{display:none}
.header-actions,.site-nav{display:flex;align-items:center;gap:clamp(.75rem,2vw,1.75rem)}
.nav__link{font-family:var(--font-display);font-weight:700;font-size:.9375rem;color:var(--c-ink);text-decoration:none;padding:.35rem 0;border-bottom:2px solid transparent;transition:border-color var(--dur-hover) var(--ease-hover),color var(--dur-hover) var(--ease-hover)}
.nav__link:hover,.nav__link[aria-current=page]{border-bottom-color:var(--c-accent)}
.nav-toggle,.nav__phone{align-items:center;flex-shrink:0}
.nav__phone{display:inline-flex;gap:.4em;font-family:var(--font-mono);font-size:.9375rem;color:var(--c-ink);text-decoration:none;white-space:nowrap}
.nav__phone:hover{color:var(--c-accent-hover)}
.nav-toggle{display:none;position:relative;z-index:120;flex-direction:column;justify-content:center;gap:8px;width:auto;min-width:44px;min-height:44px;padding:5px 8px;background:0 0;border:1px solid var(--c-rule-strong);border-radius:var(--radius);cursor:pointer}
.nav-toggle__bars,.nav-toggle__bars::after,.nav-toggle__bars::before{content:"";display:block;width:20px;height:2px;background:var(--c-ink);transition:transform var(--dur-hover) var(--ease-hover),opacity var(--dur-hover) var(--ease-hover)}
.nav-toggle__bars::before{transform:translateY(-6px)}
.nav-toggle__bars::after{transform:translateY(4px)}
.nav-toggle__label{font-family:var(--font-mono);font-size:.5625rem;line-height:1;text-transform:uppercase;letter-spacing:.1em;color:var(--c-ink)}
[data-hero=oversized-portrait] .site-header:not(.is-scrolled){background:linear-gradient(180deg,rgba(0,0,0,.8)0,rgba(0,0,0,.6) 78%,transparent 100%);border-bottom-color:transparent}
[data-hero=oversized-portrait] .hero{margin-top:calc(-1*var(--header-h))}
[data-hero=oversized-portrait] .site-header:not(.is-scrolled) .brand__original,html:not(.js) .picker__controls .presets,html:not(.js) .picker__controls .swatches{display:none}
[data-hero=oversized-portrait] .site-header:not(.is-scrolled) .brand__knockout{display:inline}
[data-hero=oversized-portrait] .site-header:not(.is-scrolled) .nav__link,[data-hero=oversized-portrait] .site-header:not(.is-scrolled) .nav__phone{color:var(--hero-fg)}
[data-hero=oversized-portrait] .site-header:not(.is-scrolled) .nav-toggle{border-color:rgb(255 255 255/.5)}
[data-hero=oversized-portrait] .site-header:not(.is-scrolled) .nav-toggle__bars,[data-hero=oversized-portrait] .site-header:not(.is-scrolled) .nav-toggle__bars::after,[data-hero=oversized-portrait] .site-header:not(.is-scrolled) .nav-toggle__bars::before{background:var(--hero-fg)}
[data-hero=oversized-portrait] .site-header:not(.is-scrolled) .nav-toggle__label{color:var(--hero-fg)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;font-family:var(--font-display);font-weight:700;font-size:.9375rem;line-height:1.1;text-align:center;text-decoration:none;padding:.7rem 1.25rem;min-height:44px;border:1px solid transparent;border-radius:var(--radius);cursor:pointer;transition:background-color var(--dur-hover) var(--ease-hover),color var(--dur-hover) var(--ease-hover),border-color var(--dur-hover) var(--ease-hover)}
.btn:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px}
.btn--primary{background:var(--c-accent);color:var(--c-accent-ink)}
.btn--primary:hover{background:var(--c-accent-hover);background:color-mix(in oklch,var(--c-accent) 82%,white)}
.btn--primary:focus-visible{outline-color:var(--c-ink);outline-offset:3px}
.btn--secondary{background:0 0;color:var(--c-ink);border-color:var(--c-ink)}
.btn--secondary:hover{background:var(--c-ink);color:var(--c-surface)}
.btn--secondary.btn--on-ink,.section--ink .btn--secondary{color:var(--c-surface);border-color:var(--c-surface)}
.btn--secondary.btn--on-ink:hover,.section--ink .btn--secondary:hover{background:var(--c-surface);color:var(--c-ink)}
.btn--secondary.btn--on-ink:focus-visible,.section--ink .btn--secondary:focus-visible{outline-color:var(--c-surface)}
.hero .btn--primary,.section--ink .btn--primary,.site-footer .btn--primary,[data-hero=oversized-portrait] .site-header:not(.is-scrolled) .btn--primary{background:var(--c-surface);color:var(--c-ink)}
.hero .btn--primary:hover,.section--ink .btn--primary:hover,.site-footer .btn--primary:hover,[data-hero=oversized-portrait] .site-header:not(.is-scrolled) .btn--primary:hover{background:rgb(255 255 255/.85);color:var(--c-ink)}
.hero .btn--primary:focus-visible,.section--ink .btn--primary:focus-visible,.site-footer .btn--primary:focus-visible,[data-hero=oversized-portrait] .site-header:not(.is-scrolled) .btn--primary:focus-visible{outline-color:var(--c-surface)}
.btn--full{width:100%}
.btn--lg{min-height:56px;font-size:1rem}
.link-arrow{display:inline-flex;align-items:center;gap:.4em;font-family:var(--font-display);font-weight:700;color:var(--c-ink);text-decoration:none;transition:gap var(--dur-hover) var(--ease-hover),color var(--dur-hover) var(--ease-hover)}
.link-arrow::after{content:"→"}
.link-arrow:hover,.section--ink .link-arrow:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.2em}
.link-arrow:hover{gap:.65em;text-decoration-color:var(--c-accent)}
.section--ink .link-arrow{color:var(--c-surface)}
.section--ink .link-arrow:hover{color:var(--c-surface);text-decoration-color:var(--c-surface)}
.hero{position:relative;background:var(--c-black);color:var(--hero-fg);text-align:center;overflow:clip;isolation:isolate;padding-top:calc(var(--header-h) + clamp(1.25rem,3vw,2.5rem));padding-bottom:clamp(2.5rem,5vw,4.5rem)}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgb(255 255 255/.06)0,transparent 60%),radial-gradient(circle at 20% 80%,rgb(255 255 255/.04)0,transparent 40%);pointer-events:none}
.hero__inner,.logo-stage{display:flex;align-items:center}
.hero__inner{position:relative;width:min(100% - (2*var(--gut)),var(--container-max));margin-inline:auto;flex-direction:column;gap:clamp(1.5rem,1rem + 2.5vw,2.5rem)}
.logo-stage{justify-content:center;padding-block:clamp(.5rem,2vw,1.5rem)}
.logo-stage__img{width:clamp(220px,34vw,340px);height:auto;user-select:none;-webkit-user-drag:none}
.hero__eyebrow{position:relative;display:inline-flex;align-items:center;gap:.5em;font-family:var(--font-mono);font-size:var(--fs-label);font-weight:500;text-transform:uppercase;letter-spacing:var(--tracking-label);color:rgb(255 255 255/.85);text-decoration:none;margin-bottom:var(--space-md);transition:gap var(--dur-hover) var(--ease-hover)}
.hero__eyebrow::before{content:"";position:absolute;inset:-13px 0}
.hero__eyebrow::after{content:"";display:inline-block;width:.8em;height:.8em;background-color:currentColor;-webkit-mask:var(--icon-chevron) center/contain no-repeat;mask:var(--icon-chevron) center/contain no-repeat}
.hero__eyebrow:hover{color:var(--hero-fg);text-decoration:underline;text-underline-offset:.25em;gap:.75em}
.hero__title{font-family:var(--font-display);font-weight:800;font-size:var(--hero-headline-size);line-height:var(--hero-headline-leading);color:var(--hero-fg);text-wrap:balance;max-width:24ch;margin-inline:auto}
.hero__sub{font-size:var(--hero-sub-size);line-height:1.55;max-width:var(--hero-sub-max);margin-inline:auto;margin-top:var(--space-md);color:rgb(255 255 255/.85)}
.hero__cta-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-md) var(--space-lg);margin-top:var(--space-lg)}
.hero__cta,.hero__phone{position:relative;display:inline-flex;align-items:center;color:var(--hero-fg);text-decoration:none}
.hero__cta{gap:.4em;font-family:var(--font-display);font-weight:700;font-size:1.0625rem;transition:gap var(--dur-hover) var(--ease-hover)}
.hero__cta::before{content:"";position:absolute;inset:-9px 0}
.hero__cta::after{content:"";display:inline-block;width:.8em;height:.8em;background-color:currentColor;-webkit-mask:var(--icon-chevron) center/contain no-repeat;mask:var(--icon-chevron) center/contain no-repeat}
.hero__cta:hover{gap:.65em}
.hero__phone{gap:.45em;font-family:var(--font-mono);font-size:.9375rem}
.hero__phone::before{content:"";position:absolute;inset:-11px 0}
.hero__cta:hover,.hero__phone:hover{text-decoration:underline;text-underline-offset:.2em}
[data-hero=oversized-portrait] .hero__cta:focus-visible,[data-hero=oversized-portrait] .hero__phone:focus-visible{outline:2.5px solid #fff;outline-offset:2px;border-radius:2px}
.title-xl{font-size:clamp(2rem,2.2vw + 1.25rem,3.25rem);letter-spacing:-.015em;max-width:18ch}
.why{display:grid;gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.why__media{position:relative;min-width:0}
.why__media img{width:100%;aspect-ratio:4/5;object-fit:cover;border:1px solid var(--c-rule);border-radius:var(--radius)}
.why__swap{position:absolute;inset:0;height:100%;opacity:0;transition:opacity var(--dur-hover) var(--ease-hover);pointer-events:none}
@supports selector(:has(a)){.why:has(.benefit:nth-of-type(2):focus-within) .why__swap--2,.why:has(.benefit:nth-of-type(2):hover) .why__swap--2,.why:has(.benefit:nth-of-type(3):focus-within) .why__swap--3,.why:has(.benefit:nth-of-type(3):hover) .why__swap--3{opacity:1}
}
.why__body{min-width:0}
.why__lead{margin-top:var(--space-md);font-size:var(--fs-lead)}
.benefits{display:grid;margin-top:var(--space-lg)}
.benefit{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:clamp(1rem,2.5vw,2rem);align-items:baseline;padding-block:clamp(1rem,2.2vw,1.5rem);border-top:1px solid var(--c-rule-strong)}
.benefit:last-child{border-bottom:1px solid var(--c-rule-strong)}
.benefit__index{font-family:var(--font-mono);font-variant-numeric:tabular-nums lining-nums;font-size:1rem;color:var(--c-muted)}
.benefit__title{font-family:var(--font-display);font-weight:800;font-size:var(--fs-h3);line-height:var(--lh-h3)}
.benefit__desc{color:var(--c-muted);margin-top:.3rem;max-width:48ch}
@media (min-width:860px){.why{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
}
.panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.75rem,1.5vw,1.25rem);margin-top:var(--space-lg)}
.panel{position:relative;display:flex;flex-direction:column;justify-content:flex-end;aspect-ratio:3/2;overflow:clip;border-radius:var(--radius);background:var(--c-black);text-decoration:none;isolation:isolate}
.panel::after,.panel__img{position:absolute;inset:0;z-index:-1}
.panel__img{width:100%;height:100%;object-fit:cover;filter:brightness(.62) grayscale(.25);transition:transform var(--dur-reveal) var(--ease-hover),filter var(--dur-reveal) var(--ease-hover)}
.panel::after{content:"";background:linear-gradient(180deg,rgb(0 0 0/.15) 35%,rgb(0 0 0/.78) 100%)}
.panel:focus-visible .panel__img,.panel:hover .panel__img{transform:scale(1.035);filter:brightness(.72) grayscale(0)}
.panel__index{position:absolute;top:0;right:clamp(.5rem,2vw,1.25rem);font-family:var(--font-display);font-weight:200;font-size:var(--fs-ghost);line-height:1.1;color:rgb(255 255 255/.16);pointer-events:none;user-select:none}
.panel__body{display:block;position:relative;padding:clamp(1rem,2.5vw,1.75rem)}
.panel__name{display:block;font-family:var(--font-display);font-weight:800;font-size:clamp(1.2rem,1.4vw + .75rem,1.75rem);line-height:1.15;color:#fff}
.panel__desc{display:block;color:rgb(255 255 255/.85);font-size:var(--fs-dense);line-height:var(--lh-dense);max-width:40ch;margin-top:.4rem;opacity:0;transform:translateY(6px);transition:opacity var(--dur-reveal) var(--ease-hover),transform var(--dur-reveal) var(--ease-hover)}
.panel:focus-visible .panel__desc,.panel:hover .panel__desc{opacity:1;transform:none}
.panel:focus-visible{outline:2px solid var(--c-surface);outline-offset:-5px;box-shadow:inset 0 0 0 7px rgb(0 0 0/.6)}
@media (hover:none){.panel__desc{opacity:1;transform:none}
}
.process{margin-top:var(--space-xl);position:relative}
.process__track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1rem,2.5vw,2rem);position:relative}
.approach__list li::before,.process__track::before{content:"";position:absolute;left:0;height:var(--seam-w)}
.process__track::before{top:calc(.5*var(--fs-stat)*1.1);right:0;background:currentColor;transform:scaleX(1);transform-origin:left center}
.process__step{position:relative;min-width:0}
.process__num{position:relative;display:inline-block;font-family:var(--font-mono);font-variant-numeric:tabular-nums lining-nums;font-size:var(--fs-stat);font-weight:500;line-height:1.1;background:var(--c-surface);padding-right:.4em}
.section--tint .process__num{background:var(--c-tint)}
.section--ink .process__num{background:var(--c-black)}
.process__title{font-family:var(--font-display);font-weight:800;font-size:1.0625rem;letter-spacing:.02em;text-transform:uppercase;margin-top:var(--space-sm)}
.process__desc{color:var(--c-muted);font-size:var(--fs-dense);line-height:var(--lh-dense);margin-top:.3rem;max-width:30ch}
@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){html.has-anim .process__track::before{animation:process-draw linear both;animation-timeline:view();animation-range:entry 20%cover 55%}
}
@supports not (animation-timeline:view()){html.has-anim .process__track::before{transform:scaleX(0);transition:transform var(--dur-draw) var(--ease-reveal)}
html.has-anim .process__track.is-visible::before{transform:scaleX(1)}
}
}
@media (max-width:700px){.process__track{grid-template-columns:1fr;gap:var(--space-lg);--draw-from-x:1;--draw-from-y:0}
.process__track::before{top:0;bottom:0;left:0;right:auto;width:var(--seam-w);height:auto;transform-origin:top center}
.process__step{padding-left:clamp(1.5rem,6vw,2.5rem)}
.process__num{background:0 0;padding-right:0}
}
@media (max-width:700px) and (prefers-reduced-motion:no-preference){@supports not (animation-timeline:view()){html.has-anim .process__track::before{transform:scaleY(0) scaleX(1)}
html.has-anim .process__track.is-visible::before{transform:scaleY(1) scaleX(1)}
}
}
.split{display:grid;gap:clamp(1.5rem,4vw,3.5rem);align-items:center}
.split__media img,.split__media video{width:100%;border:1px solid var(--c-rule);border-radius:var(--radius)}
.split__media--capped img{aspect-ratio:4/3;object-fit:cover;max-height:clamp(320px,46vh,520px)}
.split__body{min-width:0}
.approach__lead p,.split__body>*+*{margin-top:var(--space-md)}
@media (min-width:860px){.split{grid-template-columns:1fr 1fr}
.split--media-right .split__media{order:2}
}
.approach{display:grid;gap:clamp(1.5rem,4vw,3rem)}
.approach__lead{max-width:46ch}
.approach__lead p{color:var(--c-on-ink)}
.approach__list{display:grid}
.approach__list li{position:relative;padding:var(--space-md)0 var(--space-md) 1.5rem;border-top:1px solid var(--c-rule-ink);color:var(--c-on-ink)}
.approach__list li::before{top:calc(var(--space-md) + .55em);width:.85rem;background:var(--c-surface)}
.approach__list li b,.approach__list li strong{color:var(--c-surface);font-weight:600}
@media (min-width:860px){.approach{grid-template-columns:1fr 1fr;align-items:start}
}
.cta-band__inner{display:grid;gap:var(--space-lg);align-items:center}
.cta-band__title{max-width:20ch}
@media (min-width:760px){.cta-band__inner{grid-template-columns:1fr auto}
.cta-band__actions{justify-self:end}
}
.title-band{padding-block:clamp(1.5rem,3vw,2.5rem)}
.title-band__inner{display:grid;gap:var(--space-md);align-items:end}
.title-band__intro{font-size:var(--fs-lead);color:var(--c-muted);max-width:var(--measure)}
.title-band__meta{font-family:var(--font-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--c-muted)}
.title-band__actions{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-md)}
@media (min-width:760px){.title-band__inner{grid-template-columns:minmax(0,1fr) auto}
.title-band__actions{justify-self:end;align-self:center}
}
.runbook__closing{margin-top:var(--space-lg);font-size:var(--fs-lead)}
.faq{display:grid;max-width:72ch}
.faq__item{padding-block:clamp(1rem,2.4vw,1.5rem);border-top:1px solid var(--c-rule)}
.faq__item:last-child{border-bottom:1px solid var(--c-rule)}
.faq dt{font-family:var(--font-display);font-weight:700;font-size:var(--fs-h3);line-height:var(--lh-h3)}
.faq dd{margin-top:var(--space-sm);color:var(--c-muted)}
.faq--center,h2.section-head--center{margin-inline:auto}
.section-head--center{text-align:center}
.svc-hero{position:relative;display:grid;background:var(--c-black);color:var(--c-on-ink);--hero-fg:#ffffff}
.svc-hero__intro{display:flex;flex-direction:column;justify-content:center;padding:clamp(2.5rem,6vw,5rem) clamp(1rem,3vw,2.5rem);padding-left:max(var(--gut),calc((100vw - var(--container-max))/2))}
.svc-hero__title{font-size:clamp(2.25rem,4.2vw,4rem);line-height:1.05;color:var(--hero-fg);letter-spacing:-.015em}
.svc-hero__sub{margin-top:var(--space-md);max-width:44ch;color:var(--c-on-ink)}
.svc-hero__cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-md) var(--space-lg);margin-top:var(--space-lg)}
.svc-hero :focus-visible{outline-color:var(--c-surface)}
.svc-strips{display:flex;flex-direction:column;min-height:100%}
.strip{position:relative;flex:1 1 0;display:flex;align-items:center;gap:clamp(.75rem,1.5vw,1.25rem);min-height:clamp(96px,16vh,170px);padding-inline:clamp(1.25rem,3vw,2.5rem);overflow:clip;text-decoration:none;isolation:isolate;border-top:1px solid var(--c-rule-ink);transition:flex-grow var(--dur-reveal) var(--ease-hover)}
.strip::after,.strip__img{position:absolute;inset:0;z-index:-1}
.strip__img{width:100%;height:100%;object-fit:cover;filter:grayscale(.7) brightness(.45);transition:filter var(--dur-reveal) var(--ease-hover),transform var(--dur-reveal) var(--ease-hover)}
.strip::after{content:"";background:linear-gradient(90deg,rgb(0 0 0/.74)0,rgb(0 0 0/.28) 70%,rgb(0 0 0/.15) 100%)}
.strip__ghost{position:absolute;right:clamp(.75rem,2vw,2rem);top:50%;transform:translateY(-50%);font-family:var(--font-display);font-weight:200;font-size:clamp(3.25rem,6vw,5.5rem);line-height:1;color:rgb(255 255 255/.15);pointer-events:none;user-select:none;z-index:0}
.strip__text{position:relative;z-index:1;min-width:0}
.strip__label{display:block;font-family:var(--font-mono);font-size:var(--fs-label);font-weight:500;letter-spacing:var(--tracking-label);color:rgb(255 255 255/.75)}
.strip__name{display:block;font-family:var(--font-display);font-weight:800;font-size:clamp(1.1rem,1.5vw,1.6rem);line-height:1.15;color:#fff}
.strip__arrow,.strip__desc{opacity:0;transition:opacity var(--dur-reveal) var(--ease-hover),transform var(--dur-reveal) var(--ease-hover)}
.strip__desc{display:block;color:rgb(255 255 255/.85);font-size:var(--fs-dense);line-height:var(--lh-dense);margin-top:.3rem;max-width:44ch;transform:translateY(5px)}
.strip__arrow{position:relative;z-index:1;margin-left:auto;font-family:var(--font-display);font-weight:700;font-size:1.25rem;color:#fff;transform:translateX(-8px)}
.strip:focus-visible,.strip:hover{flex-grow:1.3}
.strip:focus-visible .strip__img,.strip:hover .strip__img{filter:grayscale(0) brightness(.8);transform:scale(1.02)}
.strip:focus-visible .strip__arrow,.strip:focus-visible .strip__desc,.strip:hover .strip__arrow,.strip:hover .strip__desc{opacity:1;transform:none}
.strip:focus-visible{outline-offset:-3px}
@media (hover:none){.strip__arrow,.strip__desc{opacity:1;transform:none}
}
.svc-hero__explore{grid-column:1/-1;display:block;text-align:center;padding:clamp(.75rem,1.5vw,1.1rem);font-family:var(--font-mono);font-size:var(--fs-label);font-weight:500;text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--c-on-ink-muted);text-decoration:none;border-top:1px solid var(--c-rule-ink)}
.svc-hero__explore::after{content:"";display:inline-block;width:.7em;height:.7em;margin-inline-start:.4em;vertical-align:-.08em;background-color:currentColor;transform:rotate(90deg);-webkit-mask:var(--icon-chevron) center/contain no-repeat;mask:var(--icon-chevron) center/contain no-repeat}
.svc-hero__explore:hover{color:var(--hero-fg);text-decoration:underline;text-underline-offset:.25em}
@media (min-width:900px){.svc-hero{grid-template-columns:minmax(0,.44fr) minmax(0,.56fr)}
.svc-hero__intro{min-height:clamp(560px,78vh,860px)}
}
@media (max-width:899px){.strip{min-height:88px}
.strip__desc{display:none}
.strip__ghost{font-size:3rem}
}
.page-hero{display:grid;background:var(--c-black);color:var(--c-on-ink);--hero-fg:#ffffff}
.page-hero__panel{display:flex;flex-direction:column;justify-content:center;padding:clamp(2.5rem,6vw,5rem) clamp(1rem,3vw,2.5rem);padding-left:max(var(--gut),calc((100vw - var(--container-max))/2));color:var(--c-on-ink)}
.page-hero__title{font-family:var(--font-display);font-weight:800;font-size:clamp(1.85rem,1.1vw + 1.4rem,2.5rem);line-height:1.08;letter-spacing:-.015em;color:var(--hero-fg);max-width:16ch}
.page-hero__sub{font-size:var(--fs-lead);line-height:1.55;color:var(--c-on-ink);max-width:42ch;margin-top:var(--space-md)}
.page-hero__media{position:relative;overflow:clip;background:var(--c-black)}
.page-hero__img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.page-hero__img--offset{object-position:20% 40%}
.page-hero__proof{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem 0;margin-top:var(--space-lg);font-family:var(--font-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--c-on-ink-muted)}
.page-hero__proof li:not(:last-child)::after{content:"·";margin-inline:.55em;color:rgb(255 255 255/.4)}
.page-hero__proof strong{color:var(--c-surface);font-weight:500}
.page-hero__cta-row,.panel-link{align-items:center;margin-top:var(--space-lg)}
.panel-link{position:relative;display:inline-flex;gap:.5em;font-family:var(--font-mono);font-size:var(--fs-label);font-weight:500;text-transform:uppercase;letter-spacing:var(--tracking-label);color:rgb(255 255 255/.85);text-decoration:none;transition:gap var(--dur-hover) var(--ease-hover)}
.panel-link::before{content:"";position:absolute;inset:-13px 0}
.panel-link::after{content:"";display:inline-block;width:.8em;height:.8em;background-color:currentColor;-webkit-mask:var(--icon-chevron) center/contain no-repeat;mask:var(--icon-chevron) center/contain no-repeat}
.panel-link:hover{color:var(--hero-fg);text-decoration:underline;text-underline-offset:.25em;gap:.75em}
.page-hero__cta-row{display:flex;flex-wrap:wrap;gap:var(--space-md) var(--space-lg)}
@media (min-width:900px){.page-hero{grid-template-columns:minmax(0,.45fr) minmax(0,.55fr);min-height:clamp(440px,64vh,600px);align-items:stretch;align-content:stretch}
.page-hero__img{position:absolute;inset:0}
}
@media (max-width:899px){.page-hero__media{aspect-ratio:3/2}
}
.size-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg);margin-top:var(--space-lg);border-top:1px solid var(--c-rule-strong);padding-top:var(--space-lg)}
.size-compare__cal,.size-compare__label{font-family:var(--font-mono);font-weight:500}
.size-compare__cal{font-size:var(--fs-stat);line-height:1;display:inline-block;padding-bottom:.15em;border-bottom:var(--seam-w) solid var(--c-ink)}
.size-compare__label{font-size:var(--fs-label);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--c-muted);margin-top:.5rem}
.size-compare__desc{margin-top:.5rem;color:var(--c-ink);max-width:34ch}
@media (max-width:560px){.size-compare{grid-template-columns:1fr;gap:var(--space-md)}
}
.repair-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--space-lg);margin-top:var(--space-md)}
.picker__note strong,.repair-list li{font-family:var(--font-display);font-weight:700}
.repair-list li{position:relative;padding:var(--space-md)0 var(--space-md) 1.5rem;border-top:1px solid var(--c-rule)}
.proof-list li::before,.repair-list li::before{content:"";position:absolute;left:0;top:calc(var(--space-md) + .55em);width:.85rem;height:var(--seam-w);background:var(--c-ink)}
@media (max-width:560px){.repair-list{grid-template-columns:1fr}
}
.picker{display:grid;gap:clamp(1.5rem,4vw,3.5rem);align-items:center;margin-top:var(--space-lg)}
.picker__stage{border:1px solid var(--c-rule);border-radius:var(--radius);overflow:clip;background:#e8ecef}
.picker__stage img{display:block;width:100%;height:auto}
.picker__controls{min-width:0}
.swatches{display:flex;flex-wrap:wrap;gap:var(--space-md) clamp(1rem,2vw,1.5rem);margin-top:var(--space-md)}
.swatch{display:grid;justify-items:center;gap:.45rem;background:0 0;border:0;cursor:pointer;font-family:var(--font-mono);font-size:var(--fs-label);font-weight:500;text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--c-muted)}
.swatch__chip{width:clamp(44px,4.5vw,54px);aspect-ratio:1;border-radius:50%;border:1px solid var(--c-rule-strong);background:var(--chip);transition:outline-color var(--dur-hover) var(--ease-hover)}
.swatch:hover .swatch__chip{outline:1px solid var(--c-muted);outline-offset:3px}
.swatch[aria-pressed=true]{color:var(--c-ink)}
.swatch[aria-pressed=true] .swatch__chip{outline:2px solid var(--c-ink);outline-offset:3px}
.presets{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-lg)}
.preset,.preset__dot{border:1px solid var(--c-rule-strong)}
.preset{display:inline-flex;align-items:center;gap:.5em;padding:.5rem .9rem;min-height:44px;background:var(--c-surface);border-radius:var(--radius);cursor:pointer;font-size:var(--fs-small);color:var(--c-ink);transition:border-color var(--dur-hover) var(--ease-hover)}
.preset:hover{border-color:var(--c-ink)}
.preset[aria-pressed=true]{border-color:var(--c-ink);box-shadow:inset 0 0 0 1px var(--c-ink)}
.preset__dot{width:14px;aspect-ratio:1;border-radius:50%;background:var(--dot)}
.picker__note{margin-top:var(--space-lg)}
.picker__note strong{display:block}
@media (min-width:900px){.picker{grid-template-columns:1.15fr .85fr}
}
.ns-band{position:relative;overflow:clip}
.ns-band__outline{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}
.ns-band__outline svg{width:min(94%,920px);height:92%}
.ns-band__content{position:relative;z-index:1}
.ns-route{display:flex;flex-wrap:wrap;align-items:center;gap:.5em 0;margin-top:var(--space-lg);font-family:var(--font-mono);font-size:clamp(.9375rem,1.3vw,1.25rem);font-weight:500;text-transform:uppercase;letter-spacing:.04em;color:var(--c-surface)}
.ns-route li{display:inline-flex;align-items:center}
.ns-route li:not(:last-child)::after{content:"";display:inline-block;width:.7em;height:.7em;margin-inline:.6em;vertical-align:-.08em;background-color:var(--c-on-ink-muted);-webkit-mask:var(--icon-chevron) center/contain no-repeat;mask:var(--icon-chevron) center/contain no-repeat}
.ns-band__base,.num-rows{margin-top:var(--space-lg)}
.ns-band__base{font-size:var(--fs-lead)}
.num-rows{display:grid}
.num-row{position:relative;padding:clamp(1.5rem,3vw,2.25rem)0;padding-left:clamp(4.75rem,11vw,9rem);border-top:1px solid var(--c-rule)}
.num-row:last-child,.proof-list li:last-child{border-bottom:1px solid var(--c-rule)}
.section--ink .num-row{border-top-color:var(--c-rule-ink)}
.section--ink .num-row:last-child{border-bottom-color:var(--c-rule-ink)}
.num-row__index{position:absolute;left:0;top:50%;transform:translateY(-50%);font-family:var(--font-display);font-weight:200;font-size:var(--fs-ghost);line-height:1;color:rgb(0 0 0/.07);pointer-events:none;user-select:none}
.section--ink .num-row__index{color:rgb(255 255 255/.1)}
.num-row__title{font-family:var(--font-display);font-weight:800;font-size:var(--fs-h3);line-height:var(--lh-h3)}
.num-row__desc{margin-top:.45rem;color:var(--c-muted);max-width:60ch}
.section--ink .num-row__desc{color:var(--c-on-ink)}
@media (max-width:560px){.num-row{padding-left:0}
.num-row__index{position:static;display:block;transform:none;font-size:3rem;margin-bottom:.35rem;color:rgb(0 0 0/.2)}
.section--ink .num-row__index{color:rgb(255 255 255/.3)}
}
.section-lead{max-width:48ch}
@media (min-width:900px){.section-lead--right{text-align:right;margin-left:auto}
.num-rows--left{max-width:62%}
.num-rows--right{max-width:62%;margin-left:auto}
}
.proof-list{display:grid;margin-top:var(--space-lg)}
.proof-list li{position:relative;padding:var(--space-md)0 var(--space-md) 1.5rem;border-top:1px solid var(--c-rule)}
.proof-list li strong{font-weight:600}
.video-frame{position:relative;max-width:300px;margin-inline:auto;border:1px solid var(--c-rule);border-radius:var(--radius);overflow:clip;background:var(--c-tint)}
.video-frame video,.video-frame__poster{width:100%;aspect-ratio:9/16;object-fit:cover;display:block}
.video-frame__poster{display:none}
.video-frame[data-static] video{display:none}
.video-frame[data-static] .video-frame__poster{display:block}
.video-frame__caption{font-family:var(--font-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--c-muted);text-align:center;padding:.5rem}
.contact-grid{display:grid;gap:clamp(2rem,5vw,3.5rem)}
@media (min-width:900px){.contact-grid{grid-template-columns:1.15fr .85fr;align-items:start}
}
.form__status{font-family:var(--font-mono);font-size:var(--fs-small);padding:.75rem 1rem;border:1px solid var(--c-rule);border-radius:var(--radius);margin-bottom:var(--space-md)}
.form__status:empty{display:none}
.field{display:grid;gap:.4rem;margin-bottom:var(--space-md);min-width:0}
.field>label{font-family:var(--font-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--c-ink);font-weight:500}
.field__req{color:var(--c-accent)}
.field input,.field select,.field textarea{width:100%;min-height:48px;padding:.6rem .75rem;font-family:var(--font-body);font-size:var(--fs-body);background:var(--c-surface);color:var(--c-ink);border:1px solid var(--c-field-border);border-radius:var(--radius);transition:border-color var(--dur-hover) var(--ease-hover)}
.field select{min-height:44px;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 5.5l4.5 4.5 4.5-4.5' fill='none' stroke='%23111111' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:12px;padding-right:2.25rem}
.field textarea{min-height:calc(4*1lh + 1.2rem);field-sizing:content;resize:vertical}
.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:2px solid var(--c-accent);outline-offset:1px;border-color:var(--c-ink)}
.field input[aria-invalid=true],.field select[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--status-negative)}
.field__hint,.form__error{font-size:var(--fs-small);color:var(--c-muted)}
.form__error{color:var(--status-negative);min-height:1em}
.form__error:empty{min-height:0}
.honeypot{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;left:-9999px}
.form__submit{margin-top:var(--space-sm)}
.btn:disabled,.btn[aria-disabled=true],.form.is-sending .btn--primary{opacity:.6;cursor:progress}
.btn__spinner{width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:none}
.form.is-sending .btn__spinner{display:inline-block;animation:btn-spin var(--dur-reveal) linear infinite}
.form__success{border:1px solid var(--c-accent);border-radius:var(--radius);padding:clamp(1.25rem,4vw,2rem)}
.form__success h2,.info-panel h2{font-size:var(--fs-h3)}
.contact-details{display:grid;gap:var(--space-md)}
.contact-details dt{font-family:var(--font-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--c-muted);margin-bottom:.2rem}
.contact-details dd{min-width:0;overflow-wrap:anywhere}
.contact-details__item+.contact-details__item,.legal h2{padding-top:var(--space-md);border-top:1px solid var(--c-rule)}
.reach-band{background:var(--c-tint);color:var(--c-ink);padding-block:clamp(1rem,2.5vw,1.5rem);border-block:1px solid var(--c-rule)}
.reach-band__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--c-rule)}
.reach-band__item{background:var(--c-tint);padding:clamp(.6rem,1.5vw,.9rem) clamp(.9rem,2vw,1.5rem)}
.reach-band__label{font-family:var(--font-mono);font-size:var(--fs-label);font-weight:500;text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--c-muted);margin-bottom:.2rem}
.reach-band__value{font-size:var(--fs-dense);overflow-wrap:anywhere}
.reach-band__value a{display:inline-flex;align-items:center;min-height:44px;color:var(--c-ink);text-decoration:none}
.reach-band__value a:hover{text-decoration:underline;text-underline-offset:.15em}
@media (max-width:640px){.reach-band__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.info-panel{background:var(--c-tint);border:1px solid var(--c-rule-strong);border-radius:var(--radius);padding:clamp(1.5rem,4vw,2rem)}
.info-panel .contact-details{margin-top:var(--space-md)}
.info-panel__note,.mobile-cta-bar{border-top:1px solid var(--c-rule-strong)}
.info-panel__note{margin-top:var(--space-lg);padding-top:var(--space-lg);font-size:var(--fs-dense);color:var(--c-muted)}
.quote-form .field{gap:.5rem;margin-bottom:clamp(1.25rem,3vw,1.75rem)}
.quote-form .field input,.quote-form .field select,.quote-form .field textarea{min-height:52px;padding:.75rem .9rem}
.quote-form .field textarea{min-height:calc(4*1lh + 1.5rem)}
.mobile-cta-bar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:90;grid-template-columns:1fr 1fr;gap:var(--space-sm);padding:var(--space-sm);padding-bottom:calc(var(--space-sm) + env(safe-area-inset-bottom));background:var(--c-surface);transform:translateY(110%);transition:transform var(--dur-reveal) var(--ease-reveal)}
.mobile-cta-bar.is-visible{transform:translateY(0)}
.mobile-cta-bar .btn{min-height:56px}
@media (max-width:640px){.mobile-cta-bar{display:grid}
}
.legal{max-width:var(--measure-legal)}
.legal h2{font-size:var(--fs-h3);margin-top:var(--space-xl);padding-top:var(--space-lg)}
.legal h2:first-of-type{margin-top:0;padding-top:0;border-top:0}
.legal li,.legal p{margin-top:var(--space-md);color:var(--c-ink)}
.legal ul{padding-left:1.25rem;list-style:disc}
.notfound__quicklinks{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-md);align-items:center;margin-top:var(--space-lg)}
.site-footer{background:var(--c-black);color:var(--c-on-ink);padding-block:clamp(2.5rem,5vw,4rem)}
.footer__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,4vw,2.5rem) clamp(1.25rem,3vw,2rem)}
.footer__brand{grid-column:1/-1}
.footer__brand img{height:40px;width:auto}
.footer__tagline{color:var(--c-on-ink-muted);font-size:var(--fs-small);margin-top:var(--space-sm);max-width:40ch}
.footer__col-head{font-family:var(--font-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--c-on-ink-muted);margin-bottom:var(--space-sm);white-space:nowrap}
.footer__col ul{display:grid;gap:.55rem}
.footer__col a,.footer__nap a{color:var(--c-on-ink);text-decoration:none}
.footer__col a{font-size:var(--fs-dense)}
.footer__col a:hover{color:var(--c-surface);text-decoration:underline;text-underline-offset:.2em}
.footer__col--reach{grid-column:1/-1}
.footer__nap{font-size:var(--fs-dense);font-style:normal;display:grid;gap:.4rem}
.footer__nap a{overflow-wrap:anywhere}
.footer__cta{margin-top:var(--space-sm)}
.footer__bottom{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-md);justify-content:space-between;align-items:center;margin-top:clamp(2rem,4vw,3rem);padding-top:var(--space-md);border-top:1px solid var(--c-rule-ink);font-size:var(--fs-small);color:var(--c-on-ink-muted)}
.site-footer__credit{display:block;font-size:10.5px;text-transform:none;opacity:.7}
.site-footer__credit a{color:inherit;text-decoration:underline}
@media (min-width:720px){.footer__grid{grid-template-columns:1.4fr repeat(var(--footer-columns),minmax(0,1fr))}
.footer__brand{grid-column:1}
.footer__col--reach{grid-column:auto}
}
@media (max-width:768px){.nav-toggle{display:inline-flex}
.brand{position:relative;z-index:120}
.site-nav{position:fixed;inset:0;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:calc(var(--header-h) + var(--space-lg)) var(--space-lg) var(--space-lg);background:#fff;transform:translateX(100%);opacity:0;visibility:hidden;transition:transform var(--dur-reveal) var(--ease-reveal),opacity var(--dur-reveal) var(--ease-reveal),visibility 0s linear var(--dur-reveal);overflow-y:auto;overscroll-behavior:contain;z-index:110}
html.is-menu-open .site-nav{transform:translateX(0);opacity:1;visibility:visible;transition:transform var(--dur-reveal) var(--ease-reveal),opacity var(--dur-reveal) var(--ease-reveal)}
html.is-menu-open{overflow:hidden}
.site-nav .nav__link{font-size:1.25rem;padding:var(--space-md)0;border-bottom:1px solid var(--c-rule)}
.site-nav .nav__link:hover,.site-nav .nav__link[aria-current=page]{border-bottom-color:var(--c-accent)}
.site-nav .nav__phone{padding:var(--space-md)0;font-size:1.05rem}
.site-nav .btn{margin-top:var(--space-md)}
[data-hero=oversized-portrait] .site-header:not(.is-scrolled) .site-nav .nav__link,[data-hero=oversized-portrait] .site-header:not(.is-scrolled) .site-nav .nav__phone{color:var(--c-ink)}
html.is-menu-open [data-hero=oversized-portrait] .site-header:not(.is-scrolled) .nav-toggle{border-color:var(--c-rule-strong)}
html.is-menu-open [data-hero=oversized-portrait] .site-header:not(.is-scrolled) .nav-toggle__bars,html.is-menu-open [data-hero=oversized-portrait] .site-header:not(.is-scrolled) .nav-toggle__bars::after,html.is-menu-open [data-hero=oversized-portrait] .site-header:not(.is-scrolled) .nav-toggle__bars::before{background:var(--c-ink)}
html.is-menu-open [data-hero=oversized-portrait] .site-header:not(.is-scrolled) .nav-toggle__label{color:var(--c-ink)}
html.is-menu-open [data-hero=oversized-portrait] .site-header:not(.is-scrolled) .brand__original{display:inline}
html.is-menu-open [data-hero=oversized-portrait] .site-header:not(.is-scrolled) .brand__knockout{display:none}
}
@media (min-width:769px){.nav-toggle{display:none}
}
@media (max-width:700px){.panels{grid-template-columns:1fr}
.panel{aspect-ratio:16/10}
}
@media (max-width:640px){.site-footer{padding-bottom:calc(56px + var(--space-md) + env(safe-area-inset-bottom))}
}
.reveal,html.has-anim .reveal.is-visible{opacity:1;transform:none}
html.has-anim .reveal{opacity:0;transform:translateY(var(--dist-reveal));transition:opacity var(--dur-reveal) var(--ease-reveal),transform var(--dur-reveal) var(--ease-reveal);transition-delay:var(--delay, calc(var(--i, 0) * var(--stagger)))}
html.has-anim .reveal--left{transform:translateX(calc(-1*var(--dist-reveal)))}
html.has-anim .reveal--right{transform:translateX(var(--dist-reveal))}
html.has-anim .reveal--left.is-visible,html.has-anim .reveal--right.is-visible{transform:none}
@media (max-width:768px){html.has-anim .reveal--left,html.has-anim .reveal--right{transform:translateY(var(--dist-reveal))}
html.has-anim .reveal--left.is-visible,html.has-anim .reveal--right.is-visible{transform:none}
}
@supports (animation-timeline:view()){html.has-anim .reveal{animation:reveal-in linear both;animation-timeline:view();animation-range:entry 5%cover 28%;transition:none}
html.has-anim .reveal.is-visible{animation:none}
@keyframes reveal-in{0%{opacity:0;transform:translateY(var(--dist-reveal))}
to{opacity:1;transform:none}
}
}
html.has-pointer-effects,html.has-pointer-effects a,html.has-pointer-effects button{cursor:none}
#custom-cursor,#gutter-trail{position:fixed;pointer-events:none;mix-blend-mode:difference}
#gutter-trail{inset:0;z-index:9997;width:100%;height:100%}
#custom-cursor{top:0;left:0;z-index:9999;width:40px;height:40px;opacity:0;color:#fff;transform:translate3d(-100px,-100px,0);transition:opacity var(--dur-hover) var(--ease-hover);will-change:transform}
#custom-cursor.is-visible{opacity:1}
.cursor-ring{width:14px;height:14px;border:1px solid rgb(255 255 255/.85);border-radius:50%;transform:translate(-50%,-50%);transition:width var(--dur-hover) var(--ease-hover),height var(--dur-hover) var(--ease-hover),background-color var(--dur-hover) var(--ease-hover)}
.cursor-dot,.cursor-icon,.cursor-ring{position:absolute;top:50%;left:50%}
.cursor-dot{width:3px;height:3px;border-radius:50%;background:#fff;transform:translate(-50%,-50%);transition:opacity var(--dur-hover) var(--ease-hover)}
.cursor-icon{width:18px;height:18px;opacity:0;transform:translate(-50%,-50%) scale(.6);transition:opacity var(--dur-hover) var(--ease-hover),transform var(--dur-hover) var(--ease-hover)}
#custom-cursor.is-interactive .cursor-ring{width:32px;height:32px;background:rgb(255 255 255/.08)}
#custom-cursor.is-interactive .cursor-dot{opacity:0}
#custom-cursor.is-phone .cursor-phone,#custom-cursor.is-quote .cursor-house{opacity:1;transform:translate(-50%,-50%) scale(1)}
@media (hover:none),(pointer:coarse){#custom-cursor,#gutter-trail{display:none}
}
@media (forced-colors:active){#custom-cursor,#gutter-trail{display:none}
html.has-pointer-effects,html.has-pointer-effects a,html.has-pointer-effects button{cursor:auto}
}
@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
html.has-anim .reveal,html.has-anim .reveal--left,html.has-anim .reveal--right{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}
#custom-cursor,#gutter-trail{display:none!important}
html.has-pointer-effects,html.has-pointer-effects a,html.has-pointer-effects button{cursor:auto!important}
}
@media (forced-colors:active){.ns-band__outline,.num-row__index,.panel__index,.strip__ghost{display:none}
.btn--primary{border-color:ButtonText}
}
::-webkit-scrollbar{width:12px;height:12px}
::-webkit-scrollbar-track{background:var(--c-tint)}
::-webkit-scrollbar-thumb{background:var(--c-ink);border:3px solid var(--c-tint);border-radius:var(--radius)}
::-webkit-scrollbar-thumb:hover{background:var(--c-accent-hover)}
@media print{.hero__cta,.mobile-cta-bar,.nav-toggle,.ns-band__outline,.num-row__index,.panel__index,.site-header,.skip-link,.strip__ghost{display:none!important}
.section--ink,.site-footer,[class*=section--]{background:#fff!important;color:#000!important}
.footer__col a,.footer__nap a,.section--ink h1,.section--ink h2,.section--ink h3,.section--ink li,.section--ink p{color:#000!important}
body{padding-bottom:0!important}
a[href^=http]::after{content:" ("attr(href)")";font-size:.85em;color:#555}
}
