@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/inter-400-latin.woff2") format("woff2");}@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url("/fonts/inter-500-latin.woff2") format("woff2");}@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url("/fonts/inter-600-latin.woff2") format("woff2");}@font-face{font-family:"Inter";font-style:normal;font-weight:700;font-display:swap;src:url("/fonts/inter-700-latin.woff2") format("woff2");}@font-face{font-family:"Inter";font-style:normal;font-weight:800;font-display:swap;src:url("/fonts/inter-800-latin.woff2") format("woff2");}:root{--brand-primary:#0F3D2E;--brand-primary-hover:#1A5C44;--brand-primary-deep:#07291F;--brand-primary-soft:#DCEAE2;--brand-primary-tint:rgba(15,61,46,0.08);--brand-primary-rim:rgba(15,61,46,0.18);--brand-accent:#B45309;--brand-accent-hover:#92400E;--brand-accent-tint:rgba(180,83,9,0.06);--brand-accent-soft:#FEF3C7;--brand-amber-300:#FCD34D;--brand-cyan:#0E7490;--warm-cream:#FAF7F2;--warm-stone:#EFEAE2;--warm-clay:#C8B6A3;--surface-product:#FFFFFF;--border-product:#E7E2DA;--slate-900:#0F172A;--slate-800:#1E293B;--slate-700:#334155;--slate-600:#475569;--slate-500:#64748B;--slate-400:#94A3B8;--slate-300:#CBD5E1;--slate-200:#E2E8F0;--slate-100:#F1F5F9;--slate-50:#F8FAFC;--white:#FFFFFF;--black:#000000;--surface-page:#FFFFFF;--surface-warm:#FAF7F2;--surface-panel:#F8FAFC;--surface-dark:#0F3D2E;--surface-dark-deep:#07291F;--surface-footer:var(--surface-dark-deep);--card-border:var(--border-product);--card-radius:0;--card-pad:var(--space-5);--card-pad-lg:var(--space-6);--grid-gap:var(--space-4);--grid-gap-lg:var(--space-6);--measure:65ch;--measure-heading:32ch;--text-primary:#0F3D2E;--text-secondary:#334155;--text-body-color:#334155;--text-muted:#475569;--text-ghost:#6B8378;--text-accent:#B45309;--text-inverse:#FFFFFF;--text-inverse-muted:rgba(255,255,255,0.78);--border-light:#E2E8F0;--border-medium:#CBD5E1;--border-dark:#0F3D2E;--border-accent:#B45309;--overlay-dark:rgba(15,23,42,0.55);--overlay-card:linear-gradient(to top,rgba(15,23,42,0.65) 0%,rgba(15,23,42,0) 55%);--overlay-hero:rgba(248,250,252,0.78);--grid-line:rgba(148,163,184,0.22);--status-green:#22C55E;--status-amber:#F59E0B;--status-error:#B42318;--status-error-tint:rgba(180,35,24,0.1);--status-error-soft:#FEF3F2;--status-error-border:#FECDCA;--font-display:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;--font-body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;--text-display-2xl:clamp(56px,9vw,128px);--text-display-xl:clamp(48px,7vw,96px);--text-display-lg:clamp(40px,6vw,80px);--text-display-md:clamp(32px,4.5vw,60px);--text-h1:clamp(36px,5vw,60px);--text-h2:clamp(28px,3.5vw,44px);--text-h3:clamp(22px,2.6vw,28px);--text-h4:clamp(18px,2vw,22px);--text-h5:16px;--text-h1-product:clamp(32px,3.6vw,48px);--text-h2-detail:clamp(24px,2.6vw,32px);--text-body-lg:18px;--text-body:16px;--text-body-sm:14px;--text-ui:12px;--text-caption:11px;--text-xs:10px;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;--leading-none:1;--leading-tight:1.1;--leading-snug:1.2;--leading-normal:1.5;--leading-relaxed:1.65;--tracking-monster:-0.04em;--tracking-display:-0.025em;--tracking-tight:-0.015em;--tracking-normal:0;--tracking-wide:0.05em;--tracking-wider:0.08em;--tracking-widest:0.12em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--space-40:160px;--space-48:192px;--section-py:96px;--section-py-tight:64px;--section-py-wide:128px;--section-py-feature:160px;--section-py-cta:96px;--pad-x:24px;--pad-x-lg:48px;--container-max:1400px;--card-gap:8px;--radius-square:0;--radius-sm:2px;--radius-md:4px;--radius-lg:8px;--radius-pill:9999px;--shadow-soft:0 4px 18px rgba(15,23,42,0.06);--shadow-md:0 6px 16px rgba(15,23,42,0.08);--shadow-lg:0 12px 32px rgba(15,23,42,0.12);--shadow-focus-ring:0 0 0 2px var(--white),0 0 0 4px var(--brand-accent);--ease:cubic-bezier(0.4,0,0.2,1);--ease-out:cubic-bezier(0.0,0,0.2,1);--dur-fast:200ms;--dur:300ms;--dur-slow:500ms;--z-base:0;--z-content:1;--z-floating:10;--z-header:50;--z-overlay:100;--z-modal:200;}::selection{background:var(--brand-accent);color:var(--white);}.bg-grid{background-image:repeating-linear-gradient( to right,var(--grid-line) 0,var(--grid-line) 1px,transparent 1px,transparent calc(100% / 12) );}@media (max-width:480px){.bg-grid{background-image:none;}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.001ms !important;animation-iteration-count:1 !important;transition-duration:0.001ms !important;scroll-behavior:auto !important;}}*,*::before,*::after{box-sizing:border-box;}[hidden]{display:none !important;}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;}body{margin:0;font-family:var(--font-body);font-size:var(--text-body);line-height:var(--leading-relaxed);color:var(--text-body-color);background:var(--surface-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}img,video,svg{max-width:100%;height:auto;display:block;}a{color:inherit;text-decoration:none;transition:color var(--dur-fast) var(--ease);}button{font-family:inherit;cursor:pointer;}input,textarea,select,button{font:inherit;color:inherit;}textarea{resize:vertical;}ul,ol{margin:0;padding:0;}p{margin:0 0 1em;}h1,h2,h3,h4,h5,h6{margin:0 0 0.5em;color:var(--text-primary);font-weight:var(--weight-bold);line-height:var(--leading-tight);}hr{border:none;border-top:1px solid var(--border-light);margin:var(--space-8) 0;}nav ul,nav ol{list-style:none;}.skip-link{position:absolute;top:-100px;left:var(--space-4);background:var(--surface-dark);color:var(--text-inverse);padding:var(--space-3) var(--space-5);font-size:var(--text-ui);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;z-index:var(--z-modal);transition:top var(--dur-fast) var(--ease);}.skip-link:focus{top:var(--space-4);}:focus{outline:none;}:focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px;border-radius:var(--radius-sm);}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding-inline:var(--pad-x);}@media (min-width:1024px){.container{padding-inline:var(--pad-x-lg);}}.section,.svc-section{padding-block:var(--section-py);position:relative;}@media (max-width:1023px){.section,.svc-section{padding-block:var(--space-20);}}@media (max-width:767px){.section,.svc-section{padding-block:var(--space-16);}}.section--tight{padding-block:var(--section-py-tight);}.section--wide{padding-block:var(--section-py-wide);}.section--feature{padding-block:var(--section-py-cta);}@media (max-width:1023px){.section--wide,.section--feature{padding-block:var(--space-20);}}@media (max-width:767px){.section--wide{padding-block:var(--space-16);}.section--feature{padding-block:var(--space-12);}}:is(.section,.svc-section):not([class*="surface-"]):not([class*="cta-band"]):not(.section--hero):not(.hero--home):not(.inquiry-tile-band) +:is(.section,.svc-section):not([class*="surface-"]):not([class*="cta-band"]):not(.inquiry-tile-band),:is(.section,.svc-section).surface-page:not(.section--hero) +:is(.section,.svc-section).surface-page,:is(.section,.svc-section):not([class*="surface-"]):not([class*="cta-band"]):not(.section--hero):not(.hero--home):not(.inquiry-tile-band) +:is(.section,.svc-section).surface-page,:is(.section,.svc-section).surface-page:not(.section--hero) +:is(.section,.svc-section):not([class*="surface-"]):not([class*="cta-band"]):not(.inquiry-tile-band),:is(.section,.svc-section).surface-warm:not(.section--hero) +:is(.section,.svc-section).surface-warm{border-top:1px solid var(--border-light);}:is(.section,.svc-section).section--group{border-top:0;padding-top:var(--space-8);}.section--hero{min-height:auto;padding-block:var(--space-16) var(--space-12);display:flex;align-items:center;background-color:var(--surface-warm);}.section--hero.surface-page{background-color:var(--surface-page);}@media (min-width:1024px){.section--hero{padding-block:var(--space-20) var(--space-16);}}@media (max-width:767px){.section--hero{padding-block:var(--space-12) var(--space-10);}}.surface-page{background-color:var(--surface-page);}.surface-warm{background-color:var(--surface-warm);}.surface-panel{background-color:var(--surface-panel);}:is(.section,.svc-section).surface-panel{background-color:var(--surface-warm);}.surface-dark{background:var(--surface-dark);color:var(--text-inverse);}.surface-dark h1,.surface-dark h2,.surface-dark h3{color:var(--text-inverse);}.bg-grid:not(.section--hero):not(.hero){background-image:none;}.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;}.show-mobile{display:block;}.show-desktop{display:none;}@media (min-width:1024px){.show-mobile{display:none;}.show-desktop{display:block;}}[inert]{pointer-events:none;user-select:none;}.eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-4);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--text-accent);}.eyebrow::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--brand-accent);flex-shrink:0;}.eyebrow--plain::before{display:none;}.h-page{font-size:clamp(40px,6vw,72px);font-weight:var(--weight-extrabold);line-height:1.02;letter-spacing:-0.022em;color:var(--text-primary);margin:0 0 var(--space-6);max-width:22ch;}@media (min-width:1024px){.h-page{font-size:clamp(56px,5.4vw,80px);letter-spacing:-0.024em;}}@media (min-width:1440px){.h-page{font-size:clamp(64px,5.4vw,88px);}}.h-page__line2,.h-page .muted{color:var(--text-ghost);display:block;font-weight:var(--weight-extrabold);}.h-cta{font-size:clamp(28px,4.5vw,60px);font-weight:var(--weight-extrabold);line-height:1.05;letter-spacing:-0.022em;color:var(--text-primary);margin:0 0 var(--space-4);max-width:18ch;text-wrap:balance;}.h-cta .muted{color:var(--text-ghost);display:block;}.cta-band--dark .h-cta .muted{color:rgba(255,255,255,0.62);}.h-section{font-size:var(--text-h2);font-weight:var(--weight-bold);line-height:1.15;letter-spacing:var(--tracking-tight);color:var(--text-primary);margin:0 0 var(--space-4);max-width:var(--measure-heading);text-wrap:balance;}.h-section .muted{color:var(--text-ghost);display:block;}.h-card{font-size:var(--text-h3);font-weight:var(--weight-semibold);line-height:1.2;color:var(--text-primary);margin:0 0 var(--space-2);}.h-card--lg{font-size:var(--text-h2);}.h-label{font-size:var(--text-h5);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-primary);margin:0 0 var(--space-3);}.body{font-size:var(--text-body);line-height:var(--leading-relaxed);color:var(--text-body-color);margin:0 0 1em;}.body-lg{font-size:var(--text-body-lg);line-height:var(--leading-normal);color:var(--text-body-color);margin:0 0 1em;}.body-sm{font-size:var(--text-body-sm);line-height:var(--leading-normal);color:var(--text-muted);margin:0 0 1em;}.body--lead{font-size:var(--text-body-lg);line-height:var(--leading-normal);color:var(--text-body-color);max-width:60ch;}.body--max{max-width:60ch;}.svc-section .body,.svc-section .section-head p,.split-2 p,.prose p{max-width:var(--measure);}.muted-text{color:var(--text-muted);}.text-accent{color:var(--text-accent);}.text-primary{color:var(--text-primary);}.stat-num{font-size:var(--text-display-md);font-weight:var(--weight-extrabold);line-height:1;letter-spacing:var(--tracking-display);color:var(--text-primary);margin:0;}.stat-label{font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--text-muted);margin-top:var(--space-2);}.watermark{position:absolute;font-size:clamp(96px,22vw,320px);font-weight:var(--weight-extrabold);letter-spacing:var(--tracking-monster);text-transform:uppercase;color:var(--text-ghost);opacity:0.14;pointer-events:none;user-select:none;z-index:0;white-space:nowrap;line-height:1;}@media (max-width:767px){.watermark{font-size:clamp(72px,28vw,140px);opacity:0.08;}}.link-inline,.process-step__body p a:not([class]),.process-summary--line a{font-size:inherit;font-weight:var(--weight-semibold);letter-spacing:inherit;text-transform:none;color:var(--brand-primary);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;}.link-inline:hover,.process-step__body p a:not([class]):hover,.process-summary--line a:hover{color:var(--brand-primary-hover);}.link-inline::after{content:none;}.cta-band--dark .link-inline,.surface-dark .link-inline{color:var(--white);}.card-link,.service-card__more,.self-select-tile__cta,.home-discovery-card__more,.product-card__more,.case-card__cta,.case-card__cta-link,.discovery-card__more{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-body-sm);font-weight:var(--weight-semibold);letter-spacing:0;text-transform:none;line-height:1.3;color:var(--text-accent);}.card-link .arrow,.service-card__more .arrow,.self-select-tile__cta .arrow,.home-discovery-card__more .arrow,.product-card__more .arrow,.case-card__cta .arrow,.case-card__cta-link .arrow{display:inline-block;transition:transform var(--dur-fast) var(--ease);}a:hover .card-link .arrow,a:hover>.arrow,.card-link:hover .arrow,a:hover .service-card__more .arrow,a:hover .self-select-tile__cta .arrow,a:hover .home-discovery-card__more .arrow,a:hover .product-card__more .arrow,a:hover .case-card__cta .arrow,a:hover .case-card__cta-link .arrow{transform:translateX(4px);}.case-card .card-link,.case-card__cta,.case-card__cta-link,.case-card--cta .card-link,.surface-dark .card-link,.cta-band--dark .card-link{color:var(--white);}.t-link{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-ui);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-accent);position:relative;padding-bottom:2px;}.t-link .arrow{display:inline-block;transition:transform var(--dur-fast) var(--ease);}.t-link:hover{color:var(--brand-accent-hover);}.t-link:hover .arrow{transform:translateX(4px);}.t-link::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:currentColor;transition:width var(--dur) var(--ease);}.t-link:hover::after{width:100%;}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:14px 28px;font-family:var(--font-display);font-size:var(--text-ui);font-weight:var(--weight-bold);line-height:1;letter-spacing:var(--tracking-wider);text-transform:uppercase;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease);user-select:none;white-space:nowrap;min-height:44px;}.btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--white),0 0 0 4px var(--brand-accent);}.btn:active{transform:translateY(1px);}.btn:disabled,.btn[aria-disabled="true"]{opacity:0.5;cursor:not-allowed;box-shadow:none;transform:none;}.btn[aria-disabled="true"]{pointer-events:none;}.btn--primary{background:var(--brand-accent);color:var(--white);border-color:var(--brand-accent);}.btn--primary:hover{background:var(--brand-accent-hover);border-color:var(--brand-accent-hover);box-shadow:var(--shadow-md);}.btn--brand{background:var(--brand-primary);color:var(--white);border-color:var(--brand-primary);}.btn--brand:hover{background:var(--brand-primary-hover);border-color:var(--brand-primary-hover);color:var(--white);box-shadow:var(--shadow-md);}.btn--outline{background:var(--white);color:var(--text-secondary);border-color:var(--border-light);}.btn--outline:hover{background:var(--brand-accent-tint);border-color:var(--brand-accent);color:var(--brand-accent);}.btn--outline-light{background:transparent;color:var(--white);border-color:var(--white);}.btn--outline-light:hover{background:rgba(255,255,255,0.08);}.btn--pill{padding:10px 18px;border-radius:var(--radius-sm);font-size:var(--text-ui);}.btn--floating{position:fixed;right:var(--space-4);bottom:var(--space-4);border-radius:var(--radius-pill);padding:14px 22px;min-height:48px;background:var(--brand-primary);border-color:rgba(255,255,255,0.85);color:var(--white);box-shadow:var(--shadow-lg);z-index:var(--z-floating);opacity:0;pointer-events:none;transform:translateY(8px);visibility:hidden;transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease),visibility 0s linear var(--dur);}.btn--floating.is-visible{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible;transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease),visibility 0s linear 0s;}.btn--floating:hover{background:var(--brand-primary-hover);color:var(--white);}@media (min-width:1024px){.btn--floating{display:none;}}.btn-cluster{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-8);}body.page-contact .header-cluster .btn{display:none !important;}@media (max-width:479px){.btn-cluster{flex-direction:column;align-items:stretch;}.btn-cluster .btn{width:100%;white-space:normal;text-align:center;}}.site-header{position:sticky;top:0;z-index:var(--z-header);background:rgba(255,255,255,0.0);backdrop-filter:blur(0);border-bottom:1px solid transparent;transition:background var(--dur) var(--ease),backdrop-filter var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);}.site-header.is-scrolled{background:rgba(255,255,255,0.92);backdrop-filter:blur(8px);border-bottom-color:var(--border-light);box-shadow:var(--shadow-soft);}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:var(--space-4) var(--pad-x);max-width:var(--container-max);margin:0 auto;}@media (min-width:1024px){.site-header__inner{padding:var(--space-5) var(--pad-x-lg);}}.brand{display:inline-flex;align-items:center;gap:var(--space-3);text-decoration:none;}.brand:hover{color:inherit;}.brand-logo{display:block;width:auto;height:38px;max-width:200px;flex-shrink:0;}@media (min-width:1024px){.brand-logo{height:44px;max-width:230px;}}.brand-logo--footer{height:56px;max-width:280px;}.brand__name{display:block;font-size:var(--text-body-sm);font-weight:var(--weight-bold);color:var(--text-primary);line-height:1.1;}.nav-list{display:none;align-items:center;gap:var(--space-6);list-style:none;}@media (min-width:1024px){.nav-list{display:flex;}}.nav-link{font-size:var(--text-ui);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-secondary);position:relative;padding:var(--space-2) 0;transition:color var(--dur-fast) var(--ease);}.nav-link::after{content:"";position:absolute;left:0;bottom:-2px;height:2px;width:0;background:var(--brand-accent);transition:width var(--dur) var(--ease);}.nav-link:hover,.nav-link[aria-current="page"]{color:var(--brand-accent);}.nav-link:hover::after,.nav-link[aria-current="page"]::after{width:100%;}.header-cluster{display:flex;align-items:center;gap:var(--space-3);}.header-cluster .show-desktop{display:none;}@media (min-width:1024px){.header-cluster .show-desktop{display:inline-flex;}}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:transparent;border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-primary);transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease);}.icon-btn:hover{background:var(--surface-panel);border-color:var(--border-medium);}.icon-btn svg{width:20px;height:20px;stroke-width:1.75;}.hamburger{display:inline-flex;}@media (min-width:1024px){.hamburger{display:none;}}.mobile-menu{position:fixed;inset:0;z-index:var(--z-modal);background:var(--surface-page);padding:var(--space-6) var(--pad-x);transform:translateY(-100%);visibility:hidden;transition:transform var(--dur) var(--ease),visibility 0s linear var(--dur);overflow-y:auto;}.mobile-menu.is-open{transform:translateY(0);visibility:visible;transition:transform var(--dur) var(--ease),visibility 0s linear 0s;}.mobile-menu__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-8);}.mobile-menu__list{list-style:none;display:flex;flex-direction:column;gap:0;margin-bottom:var(--space-8);}.mobile-menu__list>li>a,.mobile-menu__list>li>details>summary{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) 0;border-bottom:1px solid var(--border-light);font-size:var(--text-h4);font-weight:var(--weight-semibold);color:var(--text-primary);}.mobile-menu__list>li:last-child>a,.mobile-menu__list>li:last-child>details:not([open])>summary{border-bottom:0;}.mobile-menu__list a:hover{color:var(--brand-accent);}.mobile-menu__contact{display:flex;flex-direction:column;gap:var(--space-3);padding-bottom:var(--space-6);margin-bottom:var(--space-2);border-bottom:1px solid var(--border-light);}.hero{position:relative;}.hero__inner{position:relative;z-index:1;width:100%;max-width:var(--container-max);margin:0 auto;padding-inline:var(--pad-x);}@media (min-width:1024px){.hero__inner{padding-inline:var(--pad-x-lg);}}.grid-services,.proof-strip,.deliverables-grid,.trust-grid,.related-grid,.case-studies-grid,.featured-strip,.self-select-grid,.home-discovery-grid,.discovery-grid,.product-catalog-grid{gap:var(--card-gap);background:transparent;}.case-studies-grid>*,.featured-strip>*,.discovery-grid>*{box-shadow:0 0 0 1px var(--card-border);}.project-gallery__grid,.gallery-grid,.product-gallery-grid{gap:var(--card-gap);background:transparent;}.grid-services{display:grid;grid-template-columns:1fr;margin-top:var(--space-8);}@media (min-width:768px){.grid-services{grid-template-columns:repeat(2,1fr);}}@media (min-width:1024px){.grid-services{grid-template-columns:repeat(3,1fr);}}.proof-strip{display:grid;grid-template-columns:1fr;margin-bottom:var(--space-8);}@media (min-width:768px){.proof-strip{grid-template-columns:repeat(3,1fr);}}.proof-strip__item{margin:0;position:relative;background:var(--white);display:flex;flex-direction:column;border:1px solid var(--card-border);border-radius:var(--card-radius);overflow:hidden;}.proof-strip__item>.img-role{border-radius:0;}.proof-strip__item figcaption{padding:var(--space-3) var(--space-4);font-size:var(--text-body-sm);font-weight:var(--weight-semibold);color:var(--brand-primary);background:var(--white);}.deliverables-grid{display:grid;grid-template-columns:1fr;margin-top:var(--space-6);}@media (min-width:768px){.deliverables-grid{grid-template-columns:repeat(2,1fr);}}@media (min-width:1024px){.deliverables-grid{grid-template-columns:repeat(4,1fr);}.deliverables-grid:has(>:nth-child(3):last-child){grid-template-columns:repeat(3,1fr);}}.deliverable-card{display:flex;flex-direction:column;gap:var(--space-2);background:var(--white);padding:var(--card-pad);border:1px solid var(--card-border);border-radius:var(--card-radius);}@media (min-width:768px){.deliverable-card{padding:var(--card-pad-lg);}}.deliverable-card__title{margin:0;font-size:var(--text-h4);font-weight:var(--weight-bold);color:var(--brand-primary);}.deliverable-card__body{margin:0;font-size:var(--text-body-sm);line-height:1.55;color:var(--text-body-color);}.quick-facts{margin:var(--space-6) 0 0;padding:0;display:grid;grid-template-columns:1fr;gap:var(--space-3);}@media (min-width:768px){.quick-facts{grid-template-columns:repeat(2,1fr);}}.quick-facts__row{padding:var(--space-3) 0;border-top:1px solid var(--border-light);display:flex;flex-direction:column;gap:2px;}.quick-facts__row dt{font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-muted);}.quick-facts__row dd{margin:0;font-size:var(--text-body);font-weight:var(--weight-semibold);color:var(--brand-primary);}.quick-facts__row--note{grid-column:1 / -1;}.quick-facts__row--note dd{font-weight:var(--weight-regular);color:var(--text-body-color);font-style:italic;}.quick-facts__caveat{max-width:var(--measure);margin:var(--space-5) 0 0;font-size:var(--text-body-sm);color:var(--text-muted);font-style:italic;}.process-callout{margin-top:var(--space-10);padding:var(--space-6);background:var(--brand-primary-soft);border:1px solid var(--brand-primary-rim);border-radius:var(--card-radius);max-width:56ch;}.process-callout__title{margin:0 0 var(--space-2);font-size:var(--text-h4);font-weight:var(--weight-bold);color:var(--brand-primary);}.process-callout__body{margin:0;font-size:var(--text-body);line-height:1.55;color:var(--text-body-color);}.case-mid-cta{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-8);}.provenance-chip{position:absolute;top:var(--space-3);left:var(--space-3);z-index:3;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font-size:10px;font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;border-radius:var(--radius-pill);background:rgba(15,23,42,0.78);color:var(--white);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);}.provenance-chip--concept{background:rgba(180,83,9,0.92);}.provenance-chip--reference{background:rgba(15,23,42,0.78);}.provenance-chip--installed{background:rgba(15,61,46,0.92);}.service-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--card-pad-lg);background:var(--white);border:1px solid var(--card-border);border-radius:var(--card-radius);transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease);text-decoration:none;color:inherit;position:relative;}.service-card:hover{border-color:var(--border-medium);box-shadow:var(--shadow-md);transform:translateY(-2px);}.service-card__icon{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-panel);color:var(--text-accent);margin-bottom:var(--space-2);border-radius:var(--radius-sm);}.service-card__icon svg{width:22px;height:22px;stroke-width:1.75;}.service-card__title{font-size:var(--text-h3);font-weight:var(--weight-semibold);color:var(--text-primary);margin:0;line-height:1.2;}.service-card__body{font-size:var(--text-body-sm);color:var(--text-muted);margin:0;flex:1;}.service-card__more{margin-top:var(--space-3);}.service-card__more .arrow{transition:transform var(--dur-fast) var(--ease);display:inline-block;}.service-card:hover .service-card__more .arrow{transform:translateX(4px);}.service-card.service-card--cta{background:var(--brand-primary-soft);border-color:var(--brand-primary-rim);color:var(--brand-primary);}.service-card.service-card--cta .service-card__title,.service-card.service-card--cta .service-card__body,.service-card.service-card--cta .service-card__more{color:var(--brand-primary);opacity:1;}.service-card.service-card--cta:hover,.service-card.service-card--cta:focus-visible{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--white);}.service-card.service-card--cta:hover .service-card__title,.service-card.service-card--cta:hover .service-card__body,.service-card.service-card--cta:hover .service-card__more,.service-card.service-card--cta:focus-visible .service-card__title,.service-card.service-card--cta:focus-visible .service-card__body,.service-card.service-card--cta:focus-visible .service-card__more{color:var(--white);}.trust-grid{display:grid;grid-template-columns:1fr;margin-top:var(--space-8);}@media (min-width:1024px){.trust-grid{grid-template-columns:repeat(3,1fr);}.trust-grid--4{grid-template-columns:repeat(2,1fr);}}@media (min-width:1280px){.trust-grid--4{grid-template-columns:repeat(4,1fr);}}@media (min-width:1024px){.trust-grid:has(>:nth-child(4):last-child){grid-template-columns:repeat(2,1fr);}}@media (min-width:1280px){.trust-grid:has(>:nth-child(4):last-child){grid-template-columns:repeat(4,1fr);}}.trust-item{background:var(--white);padding:var(--card-pad-lg);border:1px solid var(--card-border);border-radius:var(--card-radius);}.trust-item h3{font-size:var(--text-h3);font-weight:var(--weight-semibold);margin:0 0 var(--space-3);}.trust-item p{margin:0;color:var(--text-body-color);font-size:var(--text-body);line-height:var(--leading-relaxed);}.card-image{position:relative;display:block;overflow:hidden;background:var(--slate-100);border:0;padding:0;text-decoration:none;color:inherit;cursor:pointer;width:100%;}.card-image{border-radius:var(--card-radius);}.card-image--captioned::after,.card-image:has(>.card-image__caption)::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(15,23,42,0.55) 0%,rgba(15,23,42,0) 60%);pointer-events:none;}.card-image__caption{position:absolute;left:var(--space-5);right:var(--space-5);bottom:var(--space-5);color:var(--white);font-size:var(--text-body);font-weight:var(--weight-semibold);z-index:2;line-height:1.2;text-shadow:0 1px 2px rgba(0,0,0,0.4);}.card-image__chip{position:absolute;top:var(--space-3);left:var(--space-3);background:var(--white);color:var(--text-primary);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;padding:4px 8px;border-radius:var(--radius-sm);z-index:2;}.img-role{position:relative;display:block;overflow:hidden;aspect-ratio:var(--ratio,var(--role-ratio,4 / 3));background:var(--role-canvas,var(--warm-stone));border-radius:var(--card-radius);}.img-role>img,.img-role>picture>img{display:block;width:100%;height:100%;object-fit:var(--role-fit,cover);object-position:var(--focal,var(--role-focal,50% 50%));transition:transform var(--dur-slow) var(--ease);}.media-label{position:absolute;inset-block-end:8px;inset-inline-start:50%;z-index:4;transform:translateX(-50%);color:var(--media-label-color,var(--white));font-family:var(--font-body);font-size:8px;font-weight:600;line-height:1.2;letter-spacing:0.08em;text-transform:uppercase;text-shadow:var(--media-label-shadow,0 1px 3px rgba(0,0,0,0.55));white-space:nowrap;pointer-events:none;}.consent-bar{position:fixed;inset-inline:0;inset-block-end:0;z-index:1200;padding:var(--space-3);color:var(--white);background:var(--surface-dark);border-block-start:1px solid rgba(255,255,255,0.24);box-shadow:0 -8px 24px rgba(0,0,0,0.18);}.consent-bar[hidden]{display:none;}.consent-bar__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);width:min(100%,var(--container-max));margin-inline:auto;}.consent-bar__copy{max-width:68ch;margin:0;}.consent-bar__copy .link-inline{color:inherit;}.consent-bar__actions{display:flex;flex:0 0 auto;gap:var(--space-2);}.gtm-noscript{position:absolute;width:0;height:0;border:0;visibility:hidden;}@media (max-width:600px){.consent-bar__inner{align-items:stretch;flex-direction:column;gap:var(--space-3);}.consent-bar__actions{display:grid;grid-template-columns:1fr 1fr;}}[data-label-tone="dark"]>.media-label{--media-label-color:#333;--media-label-shadow:0 1px 3px rgba(255,255,255,0.7);}[data-label-shadow="strong"]>.media-label{--media-label-shadow:0 0 1px rgba(0,0,0,0.9),0 0 2px rgba(0,0,0,0.85),0 0 4px rgba(0,0,0,0.7),0 1px 7px rgba(0,0,0,0.55);}[data-label-shadow="strong"][data-label-tone="dark"]>.media-label{--media-label-shadow:0 0 1px rgba(255,255,255,0.95),0 0 2px rgba(255,255,255,0.9),0 0 4px rgba(255,255,255,0.8),0 1px 7px rgba(255,255,255,0.65);}.img-role--product{--role-ratio:1 / 1;--role-fit:contain;--role-canvas:var(--surface-product);}.img-role--interior{--role-focal:50% 60%;}.img-role--interior.is-portrait{--role-ratio:4 / 5;}.img-role--project{--role-ratio:1 / 1;--role-focal:50% 55%;}.img-role--detail{--role-ratio:1 / 1;}.img-role--people{--role-focal:50% 35%;}.img-role--people.is-portrait{--role-ratio:4 / 5;}.img-role--drawing{--role-fit:contain;--role-canvas:var(--white);border:1px solid var(--border-light);}.img-role--drawing.is-portrait{--role-ratio:4 / 5;}.img-role--product>img,.img-role--drawing>img{object-position:50% 50%;transform:none !important;}.img-role--drawing::after{content:none !important;}.img-role.is-letterbox{--role-canvas:var(--white);}.img-role.is-letterbox>img{object-fit:contain;object-position:50% 50%;}:is(.img-role--interior,.img-role--project,.img-role--detail):not(.is-letterbox,.has-letterbox):is(a,.project-gallery__item):hover>img,.case-card:hover>img{transform:scale(1.04);}.img-role--captioned .img-role__caption{z-index:2;}.img-role.has-band{padding-bottom:var(--role-band,48px);}.img-role__band{position:absolute;inset:auto 0 0 0;min-height:var(--role-band,48px);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:0 var(--space-4);background:var(--white);border-top:1px solid var(--border-light);color:var(--text-primary);font-size:var(--text-body-sm);font-weight:var(--weight-semibold);line-height:1.3;}.img-role__band-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;}.img-role__band .img-role__full{flex:none;font-size:var(--text-body-sm);}.img-role-figure{margin:0;}.img-role-figure__caption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);margin-top:var(--space-2);font-size:var(--text-body-sm);color:var(--text-muted);}.img-role-figure__caption:empty{display:none;}.card-image--square{--ratio:1 / 1;}.case-lead:not(.is-portrait){--ratio:4 / 3;}@media (min-width:768px){.case-lead:not(.is-portrait){--ratio:16 / 9;}}.split-2 .img-role.is-portrait{max-inline-size:calc(80svh * 4 / 5);margin-inline:auto;}.featured-strip--n1>.img-role.is-portrait{max-inline-size:min(calc(80svh * 4 / 5),var(--strip-cap,100%));margin-inline:auto;}.split-2 .img-role-figure:has(>.img-role.is-portrait){max-inline-size:calc(80svh * 4 / 5);margin-inline:auto;}.split-2 .img-role-figure>.img-role.is-portrait{max-inline-size:none;}.featured-strip{container:strip / inline-size;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin-top:var(--space-8);}.featured-strip--flush{margin-top:0;}.featured-strip>*{grid-column:span 6;--ratio:1 / 1;align-self:start;min-width:0;}.featured-strip--n1>*,.featured-strip--n3>:first-child{--ratio:4 / 3;}.featured-strip--n1>.is-portrait{--ratio:4 / 5;}.featured-strip--n2>*{max-inline-size:var(--strip-cap,100%);}.featured-strip--n1>*{grid-column:1 / -1;justify-self:center;inline-size:100%;max-inline-size:var(--strip-cap,100%);}.featured-strip--n1>.img-role-figure>.img-role{max-inline-size:none;}.featured-strip--n3>.is-portrait:first-child{--ratio:1 / 1;}@container strip (min-width:400px){.featured-strip--n2>*{grid-column:span 3;}.featured-strip--n3>:first-child:not(.is-portrait){--ratio:3 / 2;}.featured-strip--n3>:nth-child(n+2){grid-column:span 3;}}@container strip (min-width:760px){.featured-strip--n3>:first-child,.featured-strip--n3>:first-child:not(.is-portrait){grid-column:span 4;grid-row:span 2;--ratio:1 / 1;}.featured-strip--n3>:nth-child(n+2){grid-column:span 2;}}.process-list{list-style:none;margin-top:var(--space-8);}.process-step{display:grid;grid-template-columns:80px 1fr;gap:var(--space-6);padding:var(--space-6) 0;border-top:1px solid var(--border-light);}.process-step:last-child{border-bottom:1px solid var(--border-light);}@media (max-width:767px){.process-step{grid-template-columns:56px 1fr;gap:var(--space-4);}}.process-step__num{font-family:var(--font-display);font-size:var(--text-display-md);font-weight:var(--weight-extrabold);color:var(--text-accent);line-height:1;letter-spacing:var(--tracking-display);}.process-step__body h3{font-size:var(--text-h3);font-weight:var(--weight-semibold);margin:0 0 var(--space-2);}.process-step__body p{margin:0;color:var(--text-body-color);font-size:var(--text-body);max-width:60ch;}.faq-list{list-style:none;}.faq-item{border-top:1px solid var(--border-light);}.faq-item__heading{margin:0;}.faq-item:last-child{border-bottom:1px solid var(--border-light);}.faq-item__btn{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);width:100%;background:transparent;border:0;text-align:left;padding:var(--space-5) 0;font-family:var(--font-display);font-size:var(--text-h4);font-weight:var(--weight-semibold);color:var(--text-primary);cursor:pointer;transition:color var(--dur-fast) var(--ease);}.faq-item__btn:hover{color:var(--brand-accent);}.faq-item__btn .chev{width:20px;height:20px;flex-shrink:0;transition:transform var(--dur) var(--ease);}.faq-item__btn[aria-expanded="true"] .chev{transform:rotate(180deg);}.faq-item__panel{padding:0 0 var(--space-5);}.faq-item__panel p{max-width:70ch;font-size:var(--text-body);line-height:var(--leading-relaxed);color:var(--text-body-color);margin:0;}.faq-item__panel[hidden]{display:none;}.faq-group + .faq-group{margin-top:var(--space-12);}.faq-group__title{font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--text-muted);margin:0 0 var(--space-2);}.form-error{font-size:var(--text-body-sm);color:var(--status-error);}.checkbox-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-3);}.honeypot,.form-honeypot{position:absolute !important;left:-10000px !important;top:auto !important;width:1px !important;height:1px !important;overflow:hidden !important;}.checklist{list-style:none;display:flex;flex-direction:column;gap:var(--space-2);}.checklist li{display:flex;align-items:flex-start;gap:var(--space-3);font-size:var(--text-body);color:var(--text-body-color);}.checklist li::before{content:"";flex-shrink:0;width:6px;height:6px;border-radius:50%;background:var(--brand-accent);margin-top:10px;}.cta-band{background:var(--surface-warm);border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);}.cta-band--dark{background:var(--surface-dark);color:var(--text-inverse);border-color:var(--surface-dark);}.cta-band--dark .h-page,.cta-band--dark .h-cta,.cta-band--dark .h-section,.cta-band--dark h1,.cta-band--dark h2,.cta-band--dark h3{color:var(--text-inverse);}.cta-band--dark .body{color:var(--text-inverse-muted);}@media (max-width:767px){.section.cta-band--dark,.section.cta-band{padding-block:var(--space-12) var(--space-12);}}.cta-band__body{max-width:38ch;}.cta-band__inner{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--space-12);align-items:end;}@media (max-width:767px){.cta-band__inner{grid-template-columns:1fr;gap:var(--space-6);}}.site-footer{background:var(--surface-footer);color:var(--text-inverse-muted);border-top:1px solid rgba(255,255,255,0.12);padding-block:var(--space-16) var(--space-8);}@media (max-width:1023px){.site-footer{padding-bottom:calc(var(--space-8) + 72px);}}.site-footer__inner{max-width:var(--container-max);margin:0 auto;padding-inline:var(--pad-x);}@media (min-width:1024px){.site-footer__inner{padding-inline:var(--pad-x-lg);}}.footer-grid{display:grid;grid-template-columns:minmax(0,2fr) repeat(4,minmax(0,1fr));gap:var(--space-12);margin-bottom:var(--space-12);}.footer-col{min-width:0;overflow-wrap:break-word;}@media (min-width:1024px) and (max-width:1279px){.footer-grid{gap:var(--space-8);}}@media (max-width:1023px){.footer-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-8);}}@media (max-width:1023px){.footer-grid>.footer-brand{grid-column:1 / -1;}}@media (max-width:639px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5) var(--space-5);margin-bottom:var(--space-5);}.site-footer{padding-top:var(--space-8);}.brand-logo--footer{height:36px;}.footer-col h4{margin-bottom:var(--space-2);}.footer-col ul{gap:var(--space-1);}.footer-col a{padding:0;line-height:1.3;}.footer-col li{line-height:1.3;}.footer-brand p,.footer-brand .contact-row{margin-top:var(--space-3);}.footer-brand .contact-row{gap:var(--space-1);}.footer-subbar{padding-top:var(--space-4);}}.footer-col li{font-size:var(--text-body-sm);color:var(--text-inverse-muted);line-height:var(--leading-normal);}.footer-brand .footer-address{margin-top:var(--space-4);font-size:var(--text-body-sm);color:var(--text-inverse-muted);}.footer-col h4{font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--white);margin:0 0 var(--space-4);}.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:var(--space-2);}.footer-col a{font-size:var(--text-body-sm);color:var(--text-inverse-muted);display:inline-block;padding:2px 0;}.footer-col a:hover{color:var(--white);}.footer-brand .brand__sub{color:rgba(255,255,255,0.6);}.footer-brand p{font-size:var(--text-body-sm);color:rgba(255,255,255,0.7);margin:var(--space-4) 0 0;}.footer-brand .brand-logo{filter:brightness(0) invert(1);}.footer-brand .contact-row{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-4);}.footer-brand .contact-row a{font-size:var(--text-body-sm);color:var(--text-inverse-muted);}.footer-brand .contact-row a:hover{color:var(--brand-amber-300);}.footer-subbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3);padding-top:var(--space-6);border-top:1px solid rgba(255,255,255,0.15);font-size:var(--text-body-sm);color:rgba(255,255,255,0.55);}.footer-subbar a{color:rgba(255,255,255,0.7);}.footer-subbar a:hover{color:var(--brand-amber-300);}.footer-credit{display:inline-flex;align-items:center;gap:8px;font-size:11px;letter-spacing:0.08em;text-transform:uppercase;opacity:0.7;transition:opacity 0.2s ease;}.footer-credit:hover,.footer-credit:focus-visible{opacity:1;}.footer-credit__logo{display:block;width:120px;height:24px;}.breadcrumbs{font-size:var(--text-ui);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-muted);display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;}.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;}.breadcrumbs li{display:flex;align-items:center;gap:var(--space-2);}.breadcrumbs li + li::before{content:"/";color:var(--text-muted);}.breadcrumbs a:hover{color:var(--brand-accent);}.breadcrumbs [aria-current="page"]{color:var(--text-primary);}@keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.5;}}.filter-chips{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:var(--space-8) 0;}.chip{background:var(--white);border:1px solid var(--border-light);padding:8px 16px;font-size:var(--text-ui);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);}.chip:hover{border-color:var(--brand-accent);color:var(--brand-accent);}.chip[aria-pressed="true"]{background:var(--brand-accent);border-color:var(--brand-accent);color:var(--white);}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);}@media (max-width:1023px){.gallery-grid{grid-template-columns:repeat(2,1fr);}}@media (max-width:559px){.gallery-grid{grid-template-columns:1fr;}}.section-head{max-width:none;margin-bottom:var(--space-8);}@media (max-width:767px){.section-head{margin-bottom:var(--space-6);}}.section-head--center{margin-inline:auto;text-align:center;}.section-head--center .eyebrow{justify-content:center;}.split-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-12);}@media (max-width:767px){.split-2{grid-template-columns:1fr;gap:var(--space-8);}}.split-2 ul{list-style:none;display:flex;flex-direction:column;gap:var(--space-2);}.split-2 ul li{display:flex;align-items:flex-start;gap:var(--space-3);font-size:var(--text-body);line-height:var(--leading-normal);color:var(--text-body-color);}.split-2 ul li::before{content:"";flex-shrink:0;width:6px;height:6px;border-radius:50%;background:var(--brand-accent);margin-top:10px;}.prose p{max-width:65ch;}.prose h2{margin-top:var(--space-8);}.prose h3{margin-top:var(--space-6);}.related-grid{display:grid;grid-template-columns:1fr;margin-top:var(--space-6);}@media (min-width:768px){.related-grid{grid-template-columns:repeat(2,1fr);}}@media (min-width:1024px){.related-grid:has(>:nth-child(3):last-child),.related-grid--3{grid-template-columns:repeat(3,1fr);}.related-grid:has(>:nth-child(4):last-child),.related-grid--4{grid-template-columns:repeat(4,1fr);}}.related-card{background:var(--white);padding:var(--card-pad);border:1px solid var(--card-border);border-radius:var(--card-radius);display:block;text-decoration:none;color:inherit;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease);}.related-card:hover{border-color:var(--border-medium);box-shadow:var(--shadow-md);transform:translateY(-2px);}.related-card:hover .h-card{color:var(--brand-accent);}.related-card .h-card{margin:0 0 var(--space-2);}.related-card .body-sm{color:var(--text-muted);margin:0;}.center-stack{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-4);max-width:50ch;margin:0 auto;}.nav-item--has-dropdown{position:relative;}.nav-link--has-dropdown{display:inline-flex;align-items:center;gap:var(--space-1);}.nav-caret{font-size:10px;opacity:.7;transition:transform var(--dur-fast) var(--ease);}.nav-item--has-dropdown:hover .nav-caret,.nav-item--has-dropdown:focus-within .nav-caret{transform:translateY(2px);}.nav-dropdown{position:absolute;top:calc(100% + var(--space-2));left:0;min-width:300px;background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-2);display:flex;flex-direction:column;gap:2px;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease),visibility 0s linear var(--dur-fast);z-index:var(--z-overlay);}.nav-item--has-dropdown:hover .nav-dropdown,.nav-item--has-dropdown:focus-within .nav-dropdown{opacity:1;visibility:visible;transform:translateY(0);transition-delay:0s;}.nav-dropdown__link{display:block;padding:var(--space-3) var(--space-3);font-size:var(--text-body-sm);font-weight:var(--weight-medium);color:var(--text-primary);border-radius:var(--radius-sm);text-transform:none;letter-spacing:0;}.nav-dropdown__link:hover,.nav-dropdown__link:focus-visible{background:var(--brand-accent-tint);color:var(--brand-accent);outline:none;}.nav-dropdown__link:focus-visible{outline:2px solid var(--brand-accent);outline-offset:-2px;}.nav-item--has-dropdown.is-dismissed .nav-dropdown{opacity:0;visibility:hidden;transform:translateY(-4px);}.nav-dropdown__link--all{color:var(--brand-accent);font-weight:var(--weight-semibold);}.nav-dropdown__divider{height:1px;background:var(--border-light);margin:var(--space-2) 0;}.mobile-menu__list details>summary{list-style:none;cursor:pointer;}.mobile-menu__list details>summary::-webkit-details-marker{display:none;}.mobile-menu__list details>summary .chev{width:20px;height:20px;flex-shrink:0;color:var(--text-primary);transition:transform var(--dur) var(--ease);}.mobile-menu__list details[open]>summary .chev{transform:rotate(180deg);}.mobile-menu__list details[open]>summary{border-bottom-color:transparent;}.mobile-menu__list>li:last-child .mobile-menu__sublist{border-bottom:0;}.mobile-menu__list details>summary:not(:has(.chev))::after{content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform var(--dur-fast) var(--ease);}.mobile-menu__list details[open]>summary:not(:has(.chev))::after{transform:rotate(225deg);}.mobile-menu__sublist{list-style:none;padding:var(--space-2) 0 var(--space-4) var(--space-4);margin:0;display:flex;flex-direction:column;gap:var(--space-1);border-bottom:1px solid var(--border-light);}.mobile-menu__sublist a{display:block;padding:var(--space-2) 0;border-bottom:0;font-size:var(--text-body);color:var(--text-secondary);font-weight:var(--weight-medium);}.mobile-menu__sublist a:hover{color:var(--brand-accent);}.mobile-menu__all{color:var(--brand-accent) !important;font-weight:var(--weight-semibold) !important;}.self-select-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:var(--space-8);}@media (min-width:1024px){.self-select-grid{grid-template-columns:repeat(4,1fr);}}.self-select-tile{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--card-pad-lg);background:var(--white);border:1px solid var(--card-border);border-radius:var(--card-radius);text-decoration:none;color:inherit;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease);}.self-select-tile:hover{border-color:var(--border-medium);box-shadow:var(--shadow-md);transform:translateY(-2px);}.self-select-tile__title{font-size:var(--text-h4);font-weight:var(--weight-bold);color:var(--text-primary);margin:0;}.self-select-tile__body{font-size:var(--text-body-sm);color:var(--text-muted);margin:0;flex-grow:1;}.self-select-tile__cta{margin-top:var(--space-3);}.home-discovery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));}.home-discovery-card{display:flex;flex-direction:column;overflow:hidden;background:var(--white);border:1px solid var(--card-border);border-radius:var(--card-radius);transition:transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease);}.home-discovery-card:hover,.home-discovery-card:focus-visible{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--border-medium);}.home-discovery-card:focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px;}.home-discovery-card__media{--role-canvas:var(--surface-product);border-radius:0;}.home-discovery-card__body{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5);min-height:190px;}.home-discovery-card__title{margin:0;font-size:var(--text-h4);line-height:var(--leading-tight);color:var(--text-primary);}.home-discovery-card__text{margin:0;font-size:var(--text-body-sm);color:var(--text-body-color);line-height:var(--leading-normal);}.home-discovery-card__more{margin-top:auto;}.home-discovery-card__more .arrow{display:inline-block;transition:transform var(--dur-fast) var(--ease);}.home-discovery-card:hover .home-discovery-card__more .arrow{transform:translateX(4px);}@media (max-width:1279px){.home-discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}@media (max-width:720px){.home-discovery-card__body{min-height:0;padding:var(--space-4);}}@media (max-width:599px){.home-discovery-grid{grid-template-columns:1fr;}}.offer-hero__grid{display:grid;gap:var(--space-8);align-items:center;}.offer-hero__copy{min-width:0;}.offer-hero__media{aspect-ratio:4 / 3;border-radius:0;}@media (min-width:901px){.offer-hero__grid{grid-template-columns:minmax(0,1fr) minmax(360px,0.88fr);gap:var(--space-12);}}@media (max-width:900px){.offer-hero__media{margin-top:var(--space-2);}}.case-card{position:relative;display:block;border-radius:var(--card-radius);overflow:hidden;isolation:isolate;transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease);}.case-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);}.case-card:focus-visible{outline:none;box-shadow:0 0 0 3px var(--brand-accent);}.case-card::after{display:none;}.case-card__overlay{position:absolute;inset:auto 0 0 0;display:flex;flex-direction:column;justify-content:flex-end;padding:var(--space-5);padding-top:32px;background:linear-gradient(to top,rgba(7,41,31,0.84) 0%,rgba(7,41,31,0.74) calc(100% - 32px),rgba(7,41,31,0) 100%);color:var(--white);pointer-events:none;z-index:2;}@media (min-width:1024px){.case-card__overlay{padding:var(--space-6);}}.case-card__text{display:flex;flex-direction:column;gap:var(--space-2);}.case-card__tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:var(--space-1);}.case-card__tag{display:inline-flex;align-items:center;background:rgba(255,255,255,0.15);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,0.32);color:var(--white);padding:3px 10px;font-size:10px;font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;border-radius:var(--radius-pill);white-space:nowrap;}.case-card__title{display:block;font-size:var(--text-h4);font-weight:var(--weight-bold);line-height:1.18;letter-spacing:-0.012em;color:var(--white);text-shadow:0 1px 3px rgba(0,0,0,0.35);}.case-card__summary{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:var(--text-body-sm);line-height:1.45;color:rgba(255,255,255,0.86);margin:0;}.case-card:not(.case-card--lead) .case-card__summary{display:none;}.case-card__cta{margin-top:var(--space-2);}.case-card__cta .arrow{transition:transform var(--dur-fast) var(--ease);}.case-card:hover .case-card__cta .arrow{transform:translateX(4px);}.case-card--cta{background:var(--brand-primary);color:var(--white);aspect-ratio:1 / 1;display:flex;align-items:stretch;justify-content:stretch;}.case-card--cta::after{display:none;}.case-card--cta .case-card__cta-inner{padding:var(--space-6);display:flex;flex-direction:column;justify-content:flex-end;gap:var(--space-2);width:100%;}.case-card--cta .case-card__cta-eyebrow{margin:0;font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--brand-amber-300);}.case-card--cta .case-card__cta-title{margin:0;font-size:var(--text-h3);font-weight:var(--weight-bold);line-height:1.18;color:var(--white);}.case-card--cta .case-card__cta-body{margin:0;font-size:var(--text-body-sm);color:rgba(255,255,255,0.86);line-height:1.45;}.case-card--cta .case-card__cta-link{margin-top:var(--space-2);}.case-card--cta:hover{background:var(--brand-primary-deep);}.case-card--cta:hover .case-card__cta-link .arrow{transform:translateX(4px);}.case-card--cta .arrow{transition:transform var(--dur-fast) var(--ease);}.case-studies-grid{display:grid;grid-template-columns:1fr;margin-top:var(--space-8);}@media (min-width:600px){.case-studies-grid{grid-template-columns:repeat(2,1fr);}.case-studies-grid>.case-card--cta{aspect-ratio:auto;min-height:240px;}.case-studies-grid>.case-card--cta:nth-child(odd){grid-column:span 2;}}@media (min-width:1024px){.case-studies-grid{grid-template-columns:repeat(3,1fr);}.case-studies-grid>.case-card--cta:nth-child(odd){grid-column:auto;}.case-studies-grid>.case-card--cta:nth-child(3n+1){grid-column:span 3;}.case-studies-grid>.case-card--cta:nth-child(3n+2){grid-column:span 2;}.case-studies-grid>.case-card--cta:nth-child(3n){grid-column:auto;aspect-ratio:1 / 1;}}.case-tags{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-6);}.case-tags .chip{background:var(--brand-primary-soft);color:var(--brand-primary);border:1px solid transparent;padding:6px 14px;border-radius:var(--radius-pill);font-size:11px;font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;}.chip-list{display:flex;flex-wrap:wrap;gap:var(--space-2);list-style:none;margin:var(--space-4) 0 0;padding:0;}.chip-list .chip--link{display:inline-block;padding:8px 16px;background:var(--brand-primary-soft);border:1px solid transparent;color:var(--brand-primary);border-radius:var(--radius-pill);font-size:var(--text-body-sm);font-weight:var(--weight-semibold);text-transform:none;letter-spacing:0;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);}.chip-list .chip--link:hover,.chip-list .chip--link:focus-visible{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--white);outline:none;}.build-list{list-style:none;padding:0;margin:var(--space-6) 0 0;display:flex;flex-direction:column;gap:var(--space-3);max-width:75ch;}.build-list li{position:relative;padding-left:var(--space-6);color:var(--text-body-color);}.build-list li::before{content:"";position:absolute;left:0;top:0.65em;width:6px;height:6px;border-radius:50%;background:var(--brand-accent);}.standards-list{list-style:none;padding:0;display:grid;grid-template-columns:1fr;gap:var(--space-3);margin-top:var(--space-6);max-width:75ch;}@media (min-width:768px){.standards-list{grid-template-columns:repeat(2,1fr);}}.standards-list li{padding:var(--space-3) 0 var(--space-3) var(--space-6);position:relative;color:var(--text-body-color);}.standards-list li::before{content:"✓";position:absolute;left:0;color:var(--brand-accent);font-weight:var(--weight-bold);}.contact-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-12);margin-top:var(--space-8);}@media (min-width:1024px){.contact-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;}}.contact-form{display:flex;flex-direction:column;gap:var(--space-8);}.form-section{border:1px solid var(--border-light);border-radius:var(--card-radius);padding:var(--space-6);background:var(--white);min-width:0;}@media (max-width:420px){.form-section{padding:var(--space-4);}}.form-section__title{font-size:var(--text-h4);font-weight:var(--weight-bold);color:var(--text-primary);padding:0 var(--space-2);}.form-section__hint{max-width:var(--measure);font-size:var(--text-body-sm);color:var(--text-muted);margin:var(--space-2) 0 var(--space-5);}.form-row{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4);}.form-label{font-size:var(--text-body-sm);font-weight:var(--weight-semibold);color:var(--text-primary);}.form-label__hint{font-size:var(--text-caption);color:var(--text-muted);font-weight:var(--weight-regular);margin-top:-2px;}.req{color:var(--brand-accent);margin-left:2px;}.optional{color:var(--text-muted);font-weight:var(--weight-regular);font-size:var(--text-caption);margin-left:2px;}.form-row input[type="text"],.form-row input[type="tel"],.form-row input[type="email"],.form-row input[type="number"],.form-row textarea,.form-row select{padding:var(--space-3) var(--space-4);font-family:var(--font-body);font-size:var(--text-body);color:var(--text-primary);background:var(--surface-panel);border:1px solid var(--border-medium);border-radius:var(--radius-md);width:100%;min-height:48px;}.form-row textarea{min-height:140px;}.form-row input:focus-visible,.form-row textarea:focus-visible,.form-row select:focus-visible{outline:none;border-color:var(--brand-accent);box-shadow:0 0 0 3px var(--brand-accent-tint);}.form-row input:disabled,.form-row textarea:disabled,.form-row select:disabled{color:var(--text-muted);background:var(--slate-100);border-color:var(--border-light);cursor:not-allowed;}.form-row input[type="file"]{max-width:100%;min-height:24px;font-size:var(--text-body-sm);color:var(--text-muted);}.form-row--checkbox,.form-row--radio{flex-direction:row;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);cursor:pointer;}.form-row--checkbox span,.form-row--radio span{font-size:var(--text-body-sm);color:var(--text-body-color);font-weight:var(--weight-regular);}.checkbox-group,.radio-group{margin-bottom:var(--space-5);}.checkbox-group__title{font-size:var(--text-caption);font-weight:var(--weight-bold);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wider);margin:var(--space-4) 0 var(--space-2);grid-column:1 / -1;}.btn--full{width:100%;padding:16px;font-size:var(--text-body-sm);white-space:normal;}.form-microcopy{font-size:var(--text-body-sm);color:var(--text-muted);text-align:center;margin-top:var(--space-3);}.form-prefill{background:var(--brand-primary-soft);color:var(--brand-primary);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-body-sm);margin-bottom:var(--space-4);}.form-status{margin:var(--space-4) 0 0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-panel);color:var(--text-secondary);font-size:var(--text-body-sm);border:1px solid var(--border-light);}.form-status--success{background:var(--brand-primary-soft);color:var(--brand-primary);border-color:transparent;}.form-status--error{background:var(--status-error-soft);color:var(--status-error);border-color:var(--status-error-border);}.form-row__upload-status{display:block;margin-top:var(--space-2);font-size:var(--text-body-sm);color:var(--text-muted);}.form-microcopy--alt{color:var(--text-secondary);margin-top:var(--space-2);}.form-microcopy--alt a{color:var(--brand-accent);}.form-row input[aria-invalid="true"],.form-row textarea[aria-invalid="true"],.form-row select[aria-invalid="true"]{border-color:var(--status-error);box-shadow:0 0 0 3px var(--status-error-tint);}.contact-side{display:flex;flex-direction:column;gap:var(--space-6);}@media (min-width:1024px){.contact-side{position:sticky;top:var(--space-24);}}.contact-side__block{background:var(--surface-warm);border:1px solid var(--card-border);border-radius:var(--card-radius);padding:var(--card-pad-lg);}.contact-side .btn{width:100%;}.contact-side__block a:not(.btn){font-weight:var(--weight-semibold);color:var(--brand-primary);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;font-size:inherit;letter-spacing:0;text-transform:none;}.contact-side__block h3{font-size:var(--text-h5);font-weight:var(--weight-bold);color:var(--text-primary);margin:0 0 var(--space-3);}.contact-side__block p{font-size:var(--text-body-sm);color:var(--text-body-color);margin:0;}.contact-side__block ul{font-size:var(--text-body-sm);color:var(--text-body-color);padding-left:var(--space-5);margin:0;}.contact-side__list{list-style:none;padding:0;display:flex;flex-direction:column;gap:var(--space-3);}.contact-side__list li{font-size:var(--text-body-sm);}.contact-side__list strong{color:var(--text-primary);}.product-subnav{border-block:1px solid var(--border-light);padding-block:var(--space-3);}.product-subnav ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:var(--space-2);}.product-subnav__chip{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1px solid var(--border-medium);border-radius:var(--radius-pill);font-size:var(--text-body-sm);font-weight:var(--weight-medium);color:var(--text-primary);background:var(--white);text-decoration:none;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);}.product-subnav__chip:hover,.product-subnav__chip:focus-visible{background:var(--brand-primary-soft);border-color:var(--brand-primary);color:var(--brand-primary);}.product-subnav__count{font-size:var(--text-caption);font-weight:var(--weight-semibold);color:var(--text-muted);background:var(--surface-panel);border-radius:var(--radius-pill);padding:1px var(--space-2);min-width:22px;text-align:center;}.section--subnav-band{padding-block:var(--space-6);}.section-head--row{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:var(--space-6);margin-bottom:var(--space-10);}.section-head--row .body--lead{margin-top:var(--space-3);max-width:60ch;}.product-catalog-section__count{font-size:var(--text-body-sm);font-weight:var(--weight-semibold);color:var(--text-muted);margin:0;letter-spacing:var(--tracking-wide);text-transform:uppercase;}.product-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));}.product-catalog-grid--related{grid-template-columns:repeat(4,minmax(0,1fr));}@media (max-width:1279px){.product-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.product-catalog-grid--related{grid-template-columns:repeat(2,minmax(0,1fr));}}@media (max-width:599px){.product-catalog-grid .product-card__desc,.product-catalog-grid .product-card__eyebrow{display:none;}.product-catalog-grid .product-card__body{padding:var(--space-3) var(--space-3) var(--space-4);gap:var(--space-1);}.product-catalog-grid .product-card__title{font-size:var(--text-h5);}.product-catalog-grid .product-card__more{margin-top:var(--space-2);}}@media (max-width:359px){.product-catalog-grid,.product-catalog-grid--related{grid-template-columns:1fr;}}.product-catalog-section .product-card__eyebrow{display:none;}.product-card{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--card-border);border-radius:var(--card-radius);text-decoration:none;color:inherit;overflow:hidden;transition:transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease);}.product-card:hover,.product-card:focus-visible{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--border-medium);}.product-card:focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px;}.product-card__media{aspect-ratio:1 / 1;background:var(--surface-product);overflow:hidden;display:flex;align-items:center;justify-content:center;padding:0;border-bottom:1px solid var(--border-product);}.product-card__media img{width:100%;height:100%;object-fit:contain;object-position:center;display:block;}.product-card__body{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--card-pad);flex:1;}.product-card__eyebrow{font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--brand-accent);margin:0;}.product-card__title{font-size:var(--text-h4);font-weight:var(--weight-bold);line-height:var(--leading-tight);color:var(--text-primary);margin:0;}.product-card__desc{font-size:var(--text-body-sm);color:var(--text-body-color);line-height:var(--leading-normal);margin:0;flex:1;}.product-card__more{margin-top:var(--space-3);}.product-hero{padding-block:var(--space-12);}.product-hero__layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:var(--space-12);align-items:center;margin-top:var(--space-6);}.product-hero__media{background:var(--surface-product);border:1px solid var(--border-product);border-radius:var(--card-radius);overflow:hidden;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;padding:0;}.product-hero__media img{width:100%;height:100%;object-fit:contain;object-position:center;display:block;}.product-hero__title{font-size:var(--text-h1-product);font-weight:var(--weight-extrabold);letter-spacing:-0.02em;line-height:var(--leading-tight);margin-block:var(--space-3) var(--space-4);text-wrap:balance;}.product-hero__body .body--lead{max-width:50ch;}.section--hero.product-hero{background-color:var(--surface-page);min-height:auto;}body.page-product-detail main .h-section,body.page-case-study main .h-section{font-size:var(--text-h2-detail);}body.page-product-detail main .h-cta{font-size:clamp(24px,2.6vw,38px);}@media (max-width:900px){.product-hero__layout{grid-template-columns:1fr;gap:var(--space-8);}}@media (min-width:600px) and (max-width:900px){.product-hero__media{max-width:520px;width:100%;margin-inline:auto;}}.product-tags{list-style:none;padding:0;margin:var(--space-5) 0 0;display:flex;flex-wrap:wrap;gap:var(--space-2);}.product-tag{display:inline-block;padding:var(--space-1) var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-pill);font-size:var(--text-caption);font-weight:var(--weight-medium);color:var(--text-secondary);background:var(--surface-warm);}.product-room-list{margin-top:var(--space-4);}.product-room-list .product-tags{margin-top:0;}.product-room-list__label{margin:0 0 var(--space-2);font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:0.08em;text-transform:uppercase;color:var(--text-muted);}.product-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5);}.product-gallery-grid__item{margin:0;border:1px solid var(--border-product);border-radius:var(--card-radius);overflow:hidden;background:var(--surface-product);aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;padding:0;}.product-gallery-grid__item img{width:100%;height:100%;object-fit:contain;object-position:center;display:block;}@media (max-width:720px){.product-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);}}@media (max-width:420px){.product-gallery-grid{grid-template-columns:1fr;}}.product-catalog-grid--featured{grid-template-columns:repeat(4,minmax(0,1fr));}@media (max-width:1279px){.product-catalog-grid--featured{grid-template-columns:repeat(2,minmax(0,1fr));}}@media (max-width:359px){.product-catalog-grid--featured{grid-template-columns:1fr;}}.discovery-grid{display:grid;}.discovery-grid--categories{grid-template-columns:repeat(4,minmax(0,1fr));}.discovery-grid--rooms{grid-template-columns:repeat(5,minmax(0,1fr));}@media (max-width:1279px){.discovery-grid--categories{grid-template-columns:repeat(3,minmax(0,1fr));}.discovery-grid--rooms{grid-template-columns:repeat(6,minmax(0,1fr));}.discovery-grid--rooms>*{grid-column:span 2;}.discovery-grid--rooms>:nth-child(4):nth-last-child(2),.discovery-grid--rooms>:nth-child(5):last-child{grid-column:span 3;aspect-ratio:1 / 1;}}@media (max-width:599px){.discovery-grid--categories{grid-template-columns:repeat(2,minmax(0,1fr));}.discovery-grid--rooms{grid-template-columns:repeat(2,minmax(0,1fr));}.discovery-grid--rooms>*,.discovery-grid--rooms>:nth-child(4):nth-last-child(2){grid-column:auto;aspect-ratio:3 / 4;}.discovery-grid--rooms>:nth-child(odd):last-child{grid-column:span 2;aspect-ratio:1 / 1;}}.discovery-card{position:relative;display:block;border-radius:var(--card-radius);overflow:hidden;background:var(--warm-stone);aspect-ratio:3 / 4;text-decoration:none;color:var(--white);transition:transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease);isolation:isolate;}.discovery-card:hover,.discovery-card:focus-visible{transform:translateY(-2px);box-shadow:var(--shadow-md);}.discovery-card:focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px;}.discovery-card__media{position:absolute;inset:0;z-index:-1;aspect-ratio:auto;border-radius:0;}.discovery-grid--categories .discovery-card{aspect-ratio:auto;display:flex;flex-direction:column;background:var(--surface-product);border:1px solid var(--card-border);color:var(--text-primary);}.discovery-grid--categories .discovery-card__media{position:static;z-index:auto;aspect-ratio:1 / 1;border-bottom:1px solid var(--border-product);}.discovery-grid--categories .discovery-card__overlay{position:static;padding:var(--space-4) var(--space-5) var(--space-5);background:none;display:flex;flex-direction:column;gap:var(--space-1);}.discovery-grid--categories .discovery-card__title{font-size:var(--text-h5);font-weight:var(--weight-bold);color:var(--text-primary);}.discovery-grid--categories .discovery-card__count{font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);}.discovery-grid--categories .discovery-card:hover .discovery-card__title,.discovery-grid--categories .discovery-card:focus-visible .discovery-card__title{text-decoration:underline;text-underline-offset:3px;}.discovery-card--contain{background:var(--surface-product);}.discovery-grid--rooms .discovery-card--contain .discovery-card__media img{object-fit:contain;padding:0;}.discovery-grid--rooms .discovery-card__overlay{position:absolute;inset:0;padding:var(--space-4) var(--space-5) calc(var(--space-5) + 1.25rem);background:linear-gradient( to top,rgba(15,23,42,0.82) 0%,rgba(15,23,42,0.62) 35%,rgba(15,23,42,0) 75% );display:flex;flex-direction:column;justify-content:flex-end;gap:var(--space-2);}.discovery-grid--rooms .discovery-card__media{z-index:0;}.discovery-grid--rooms .discovery-card__overlay{z-index:1;}.discovery-grid--rooms .discovery-card__title{font-size:clamp(17px,1.4vw,22px);line-height:1.15;font-weight:var(--weight-bold);color:var(--white);text-shadow:0 1px 2px rgba(0,0,0,0.45);margin:0;}.discovery-grid--rooms .discovery-card__count{font-size:var(--text-body-sm);line-height:1.35;color:rgba(255,255,255,0.92);font-weight:var(--weight-medium);text-shadow:0 1px 2px rgba(0,0,0,0.4);margin:0;min-height:calc(2 * 1.35em);}@media (max-width:720px){.discovery-grid--rooms .discovery-card__overlay{padding:var(--space-3) var(--space-4) var(--space-4);}}.inquiry-tile-band{padding-block:var(--space-12);}.inquiry-tile{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:var(--space-10);align-items:center;}.inquiry-tile__title{color:var(--white);margin-block:var(--space-3) var(--space-4);}.inquiry-tile__body{color:rgba(255,255,255,0.86);max-width:50ch;}.inquiry-tile__ctas{display:flex;flex-wrap:wrap;gap:var(--space-3);}.eyebrow--on-dark{color:var(--brand-amber-300);}.btn--accent-on-dark{background:var(--brand-accent);color:var(--white);border:1px solid var(--brand-accent);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-weight:var(--weight-semibold);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:background var(--dur-fast) var(--ease);}.btn--accent-on-dark:hover,.btn--accent-on-dark:focus-visible{background:var(--brand-accent-hover);border-color:var(--brand-accent-hover);}@media (max-width:900px){.inquiry-tile{grid-template-columns:1fr;gap:var(--space-6);}}.project-gallery{width:100%;}.project-gallery .section-head--row{align-items:end;margin-bottom:var(--space-6);}.project-gallery__count{font-size:var(--text-body-sm);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);margin:0;}.project-gallery__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));}@media (max-width:900px){.project-gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr));}}@media (max-width:480px){.project-gallery__grid{grid-template-columns:1fr;}}.project-gallery__item{margin:0;border-radius:var(--card-radius);}.project-gallery__item.img-role--drawing{padding-bottom:var(--role-band,48px);}.project-gallery__item.img-role--drawing .project-gallery__caption{height:var(--role-band,48px);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--white);color:var(--text-primary);border-top:1px solid var(--border-light);white-space:nowrap;}.project-gallery__item.img-role--drawing .project-gallery__caption>span{min-width:0;overflow:hidden;text-overflow:ellipsis;}.project-gallery__item.img-role--drawing .project-gallery__caption .img-role__full{flex:0 0 auto;}.project-gallery__caption{position:absolute;inset:auto 0 0 0;padding:var(--space-3) var(--space-4);background:linear-gradient(to top,rgba(15,23,42,0.78) 0%,rgba(15,23,42,0) 90%);color:var(--white);font-size:var(--text-body-sm);font-weight:var(--weight-semibold);text-shadow:0 1px 2px rgba(0,0,0,0.4);}.project-gallery__item[data-extra]{display:none;}.project-gallery__more{display:flex;justify-content:center;margin-top:var(--space-8);}.project-gallery__more .btn{min-width:220px;}.project-gallery__item{cursor:zoom-in;transition:transform var(--dur-fast) var(--ease);}.project-gallery__item:hover{transform:translateY(-2px);}.project-gallery__item:focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px;}.project-lightbox{position:fixed;inset:0;background:rgba(15,23,42,0.92);display:flex;align-items:center;justify-content:center;padding:var(--space-6);z-index:1100;opacity:0;pointer-events:none;visibility:hidden;transition:opacity var(--dur-fast) var(--ease),visibility 0s linear var(--dur-fast);}.project-lightbox.is-open{opacity:1;pointer-events:auto;visibility:visible;transition:opacity var(--dur-fast) var(--ease),visibility 0s linear 0s;}.project-lightbox__figure{margin:0;max-width:min(1200px,92vw);max-height:80vh;display:flex;flex-direction:column;align-items:center;gap:var(--space-3);}.project-lightbox__media{position:relative;display:inline-flex;max-width:100%;min-height:0;}.project-lightbox__img{display:block;max-width:100%;max-height:72vh;object-fit:contain;border-radius:var(--card-radius);background:var(--surface-panel);}.project-lightbox__caption{margin:0;padding:var(--space-2) var(--space-4);background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);border-radius:var(--radius-pill);color:var(--white);font-size:var(--text-body-sm);font-weight:var(--weight-medium);text-align:center;max-width:min(800px,90vw);}.project-lightbox__caption:empty{display:none;}.project-lightbox.is-drawing .project-lightbox__figure{max-height:none;}.project-lightbox.is-drawing .project-lightbox__img{max-height:calc(100vh - 230px);background:var(--white);}.project-lightbox__close,.project-lightbox__nav{position:absolute;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.18);color:var(--white);width:48px;height:48px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease);}.project-lightbox__close:hover,.project-lightbox__nav:hover,.project-lightbox__close:focus-visible,.project-lightbox__nav:focus-visible{background:rgba(255,255,255,0.16);border-color:rgba(255,255,255,0.3);outline:none;}.project-lightbox__close{top:var(--space-5);right:var(--space-5);}.project-lightbox__nav--prev{left:var(--space-5);top:50%;transform:translateY(-50%);}.project-lightbox__nav--next{right:var(--space-5);top:50%;transform:translateY(-50%);}.project-lightbox__counter{position:absolute;bottom:var(--space-5);left:50%;transform:translateX(-50%);margin:0;padding:var(--space-2) var(--space-4);background:rgba(255,255,255,0.06);border-radius:var(--radius-pill);color:rgba(255,255,255,0.8);font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);}@media (max-width:600px){.project-lightbox{padding:var(--space-3);}.project-lightbox__close,.project-lightbox__nav{width:40px;height:40px;}.project-lightbox__close{top:var(--space-3);right:var(--space-3);}.project-lightbox__nav--prev{left:var(--space-2);}.project-lightbox__nav--next{right:var(--space-2);}.project-lightbox__img{max-height:65vh;}.project-lightbox.is-drawing .project-lightbox__img{max-height:calc(100vh - 230px);}}.process-summary--line{max-width:var(--measure);margin:var(--space-6) 0 0;font-size:var(--text-body);line-height:var(--leading-relaxed);color:var(--text-body-color);}.process-summary--steps{margin-top:var(--space-8);}.process-summary__steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:var(--grid-gap);counter-reset:none;}@media (min-width:600px){.process-summary__steps{grid-template-columns:repeat(2,minmax(0,1fr));}}@media (min-width:1024px){.process-summary__steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gap-lg);}}.process-summary__step{display:flex;align-items:baseline;gap:var(--space-4);padding:var(--space-4) 0;border-top:1px solid var(--border-light);}.process-summary__num{flex-shrink:0;min-width:2.2ch;font-size:var(--text-h3);font-weight:var(--weight-extrabold);line-height:1;letter-spacing:var(--tracking-display);color:var(--text-accent);}.process-summary__title{font-size:var(--text-h5);font-weight:var(--weight-semibold);line-height:var(--leading-snug);color:var(--text-primary);}.process-summary__more{margin:var(--space-6) 0 0;}:is(.section,.svc-section).surface-warm:has(.product-catalog-grid,.discovery-grid--categories){background-color:var(--surface-page);}@media (max-width:479px){.self-select-tile{padding:var(--card-pad);gap:var(--space-2);}.self-select-tile .eyebrow,.self-select-tile__body{display:none;}.self-select-tile__title{font-size:var(--text-h5);line-height:var(--leading-snug);}.self-select-tile__cta{margin-top:auto;}}body.page-case-studies .watermark{display:none;}body.page-case-study .section--hero,body.page-product-detail .section--hero{background-color:var(--surface-page);}.svc-section.inquiry-tile-band{padding-block:var(--space-12);}@media (min-width:768px){.grid-services:has(>:nth-child(3):last-child){grid-template-columns:repeat(3,1fr);}.related-grid:has(>:nth-child(3):last-child),.related-grid--3{grid-template-columns:repeat(3,1fr);}}.discovery-grid--rooms:has(>:nth-child(4):last-child)>*{grid-column:auto;}@media (min-width:768px){.discovery-grid--rooms:has(>:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr));}}@media (max-width:767px){.discovery-grid--rooms:has(>:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr));}}@media (min-width:1280px){.home-discovery-grid--5,.home-discovery-grid:has(>:nth-child(5):last-child){grid-template-columns:repeat(5,minmax(0,1fr));}}@media (min-width:600px) and (max-width:1279px){.home-discovery-grid--5,.home-discovery-grid:has(>:nth-child(5):last-child){grid-template-columns:repeat(6,minmax(0,1fr));}.home-discovery-grid--5>*,.home-discovery-grid:has(>:nth-child(5):last-child)>*{grid-column:span 2;}.home-discovery-grid--5>:nth-child(n+4),.home-discovery-grid:has(>:nth-child(5):last-child)>:nth-child(n+4){grid-column:span 3;}}.split-2:has(>.case-lead.is-portrait:first-child){align-items:start;}@media (min-width:768px){.case-studies-grid:has(>:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr));}.trust-grid--2,.trust-grid:has(>:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr));}}.process-step__media{margin:var(--space-5) 0 0;max-width:360px;}.process-step__media-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-5);}.process-step__media-pair .process-step__media{margin:0;max-width:none;}.process-step__media figcaption{margin-top:var(--space-2);font-size:var(--text-body-sm);color:var(--text-muted);}@media (max-width:767px){.process-step__media{max-width:100%;}.process-step__media-pair{grid-template-columns:1fr;}}.facts-list{margin:0;padding:0;}.facts-list__row{display:grid;grid-template-columns:minmax(0,9rem) minmax(0,1fr);gap:var(--space-4);padding:var(--space-4) 0;border-top:1px solid var(--border-light);}.facts-list__row:last-child{border-bottom:1px solid var(--border-light);}.facts-list dt{font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-muted);padding-top:3px;}.facts-list dd{margin:0;font-size:var(--text-body);font-weight:var(--weight-semibold);color:var(--text-primary);}@media (max-width:479px){.facts-list__row{grid-template-columns:1fr;gap:var(--space-1);}}.contact-side__list .btn--full,.contact-side .btn--full{margin-top:var(--space-2);padding:14px 16px;font-size:var(--text-ui);}.team-photo{margin:var(--space-8) 0 0;}.service-compare__group + .service-compare__group{margin-top:var(--space-12);}.service-compare__group-title{font-size:var(--text-h4);font-weight:var(--weight-bold);color:var(--text-primary);margin:0 0 var(--space-4);}.service-compare__table{width:100%;border-collapse:collapse;font-size:var(--text-body-sm);color:var(--text-body-color);}.service-compare__table th,.service-compare__table td{text-align:left;vertical-align:top;padding:var(--space-4) var(--space-4) var(--space-4) 0;border-top:1px solid var(--border-light);}.service-compare__table thead th{font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-muted);border-top:0;padding-top:0;}.service-compare__table tbody tr:last-child>*{border-bottom:1px solid var(--border-light);}.service-compare__table th[scope="row"]{font-size:var(--text-body);font-weight:var(--weight-semibold);color:var(--text-primary);}.service-compare__table th[scope="row"] a{color:inherit;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;}@media (min-width:1024px){.service-compare__table th:nth-child(1){width:22%;}.service-compare__table th:nth-child(2),.service-compare__table th:nth-child(3){width:30%;}.service-compare__table th:nth-child(4){width:18%;}}@media (max-width:767px){.service-compare__table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}.service-compare__table,.service-compare__table tbody,.service-compare__table tr,.service-compare__table th,.service-compare__table td{display:block;width:100%;}.service-compare__table tr{background:var(--white);border:1px solid var(--card-border);border-radius:var(--card-radius);padding:var(--card-pad);margin-bottom:var(--grid-gap);}.service-compare__table th,.service-compare__table td{border:0 !important;padding:var(--space-1) 0;}.service-compare__table th[scope="row"]{padding-bottom:var(--space-2);}.service-compare__table td::before{content:attr(data-label);display:block;font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-muted);margin-top:var(--space-2);}}.btn-cluster + .body-sm,.btn-cluster + .body{margin-top:var(--space-4);}.section-head .body--lead + .body{margin-top:var(--space-3);}.chip,.chip-list .chip--link,.product-subnav__chip,.btn--accent-on-dark{min-height:44px;display:inline-flex;align-items:center;}.form-row--checkbox,.form-row--radio{min-height:44px;margin-bottom:0;}.t-link{min-height:44px;}.t-link::after{bottom:10px;}.brand{min-height:44px;}.mobile-menu__sublist a{min-height:44px;display:flex;align-items:center;padding-block:var(--space-1);}@media (max-width:600px){.project-lightbox__close,.project-lightbox__nav{width:44px;height:44px;}}.footer-col ul{gap:0;}.footer-col a,.footer-brand .contact-row a,.footer-subbar a{display:inline-flex;align-items:center;min-height:44px;padding-block:0;}.footer-brand .contact-row{gap:0;}@media (max-width:639px){.footer-col ul{gap:0;}.footer-col a{min-height:44px;padding:0;}.footer-brand .contact-row{gap:0;}}.footer-col li{line-height:1.3;}.footer-col ul>li:not(:has(a)){padding-block:var(--space-1);}.footer-col__title,.footer-col h2,.footer-col h4{font-size:var(--text-caption);font-weight:var(--weight-bold);line-height:var(--leading-normal);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--white);margin:0 0 var(--space-2);max-width:none;}@media (max-width:1023px){.site-footer{padding-bottom:calc(var(--space-8) + 80px);}}.site-footer{border-top:1px solid rgba(255,255,255,0.28);}a[href^="tel:"],[data-phone-display],.nowrap{white-space:nowrap;}h1,h2,h3,h4,.h-card,.faq-item__btn,.case-card__title,.discovery-card__title,.service-card__title,.product-card__title,.home-discovery-card__title,.self-select-tile__title,.deliverable-card__title{text-wrap:balance;}.breadcrumbs a{display:inline-flex;align-items:center;min-height:44px;}@media (max-width:599px){.breadcrumbs ol{flex-wrap:nowrap;min-width:0;}.breadcrumbs li{display:none;}.breadcrumbs li:nth-last-child(2){display:flex;min-width:0;}.breadcrumbs li:nth-last-child(2)::before{content:none;}.breadcrumbs li:nth-last-child(2)>a::before{content:"\2190";margin-right:var(--space-2);font-weight:var(--weight-bold);}.breadcrumbs li:nth-last-child(2)>a{display:block;line-height:44px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}}.split-2 .chip-list{flex-direction:row;gap:var(--space-2);}.split-2 .chip-list li{display:block;}.split-2 .chip-list li::before,.chip-list li::before{content:none;display:none;}.product-subnav ul{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scroll-padding-inline:var(--space-4);padding-block:4px;}.product-subnav li{flex:0 0 auto;scroll-snap-align:start;}.product-subnav__chip{white-space:nowrap;}@media (max-width:1439px){.product-subnav ul{-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 48px),transparent 100%);mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 48px),transparent 100%);padding-right:48px;}}@media (min-width:1024px){.product-subnav ul{gap:6px;}.product-subnav__chip{padding-inline:10px;gap:6px;}.product-subnav__count{padding-inline:6px;}}@media (min-width:1440px){.product-subnav ul{padding-right:0;overflow-x:visible;}}a.card-link{min-height:44px;}.project-gallery__caption{background:rgba(15,23,42,0.8);padding:var(--space-2) var(--space-4);line-height:1.35;text-shadow:none;}.card-image--captioned::after,.card-image:has(>.card-image__caption)::after{display:none;}.card-image__caption{left:0;right:0;bottom:0;padding:var(--space-3) var(--space-5);background:rgba(15,23,42,0.8);font-size:var(--text-body-sm);line-height:1.35;text-shadow:none;}.discovery-grid--rooms .discovery-card__overlay{inset:auto 0 0 0;padding-top:28px;background:linear-gradient( to top,rgba(15,23,42,0.7) 0%,rgba(15,23,42,0.64) calc(100% - 28px),rgba(15,23,42,0) 100% );}@media (min-width:1024px){.process-step--has-media .process-step__body{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,360px);column-gap:var(--space-12);align-items:start;}.process-step--has-media .process-step__body>:not(.process-step__media,.process-step__media-pair){grid-column:1;}.process-step--has-media .process-step__media,.process-step--has-media .process-step__media-pair{grid-column:2;grid-row:1 / span 6;margin:0;max-width:none;}.process-step--has-media .process-step__media-pair{grid-template-columns:1fr;gap:var(--space-4);}}@media (min-width:901px){.project-gallery__grid{grid-template-columns:repeat(6,minmax(0,1fr));}.project-gallery__item{grid-column:span 2;}.project-gallery__grid:has(>:nth-last-child(1 of:not([data-extra])):nth-child(3n+4 of:not([data-extra])))>:nth-last-child(-n+4 of:not([data-extra])){grid-column:span 3;}.project-gallery__grid:has(>:nth-last-child(1 of:not([data-extra])):nth-child(3n+2 of:not([data-extra])))>:nth-last-child(-n+2 of:not([data-extra])){grid-column:span 3;}.project-gallery__grid>.project-gallery__item:only-child{grid-column:1 / -1;}}@media (min-width:481px) and (max-width:900px){.project-gallery__grid:has(>:nth-last-child(1 of:not([data-extra])):nth-child(odd of:not([data-extra])))>:nth-last-child(1 of:not([data-extra])){grid-column:1 / -1;}}.project-gallery__item{--ratio:var(--r1,1 / 1);}@media (min-width:481px) and (max-width:900px){.project-gallery__item{--ratio:var(--r2,1 / 1);}.project-gallery:not(:has([data-extra])) .project-gallery__item{--ratio:var(--r2x,var(--r2,1 / 1));}}@media (min-width:901px){.project-gallery__item{--ratio:var(--r6,1 / 1);}.project-gallery:not(:has([data-extra])) .project-gallery__item{--ratio:var(--r6x,var(--r6,1 / 1));}}.project-gallery__item.has-letterbox{--role-canvas:var(--white);}@media (max-width:480px){.project-gallery__item:is(.lb-1,.lb-1x){--role-fit:contain;padding-bottom:var(--role-band,48px);}.project-gallery__item:is(.lb-1,.lb-1x) .project-gallery__caption{height:var(--role-band,48px);display:block;padding:var(--space-3) var(--space-4);background:var(--white);color:var(--text-primary);border-top:1px solid var(--border-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}}@media (min-width:481px) and (max-width:900px){.project-gallery:has([data-extra]) .project-gallery__item.lb-2,.project-gallery:not(:has([data-extra])) .project-gallery__item.lb-2x{--role-fit:contain;padding-bottom:var(--role-band,48px);}.project-gallery:has([data-extra]) .project-gallery__item.lb-2 .project-gallery__caption,.project-gallery:not(:has([data-extra])) .project-gallery__item.lb-2x .project-gallery__caption{height:var(--role-band,48px);display:block;padding:var(--space-3) var(--space-4);background:var(--white);color:var(--text-primary);border-top:1px solid var(--border-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}}@media (min-width:901px){.project-gallery:has([data-extra]) .project-gallery__item.lb-6,.project-gallery:not(:has([data-extra])) .project-gallery__item.lb-6x{--role-fit:contain;padding-bottom:var(--role-band,48px);}.project-gallery:has([data-extra]) .project-gallery__item.lb-6 .project-gallery__caption,.project-gallery:not(:has([data-extra])) .project-gallery__item.lb-6x .project-gallery__caption{height:var(--role-band,48px);display:block;padding:var(--space-3) var(--space-4);background:var(--white);color:var(--text-primary);border-top:1px solid var(--border-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}}.project-gallery__item.img-role--drawing .project-gallery__caption{display:flex;align-items:center;justify-content:space-between;}.product-card__more,.service-card__more{display:block;}.form-choice-group{min-width:0;margin:0;padding:0;border:0;}.form-choice-group>.form-label{margin:0 0 var(--space-2);padding:0;}@media (max-width:767px){.product-hero{padding-block:var(--space-2) var(--space-6);}.product-hero__layout{gap:var(--space-2);margin-top:var(--space-2);}.product-hero__media{aspect-ratio:5 / 2;max-height:200px;}.product-hero__media img{object-fit:contain;}.product-hero__title{margin-block:var(--space-1) var(--space-2);}.product-hero__actions{margin-top:var(--space-3);}}.project-gallery__open{position:absolute;inset:0;z-index:1;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:inherit;background:transparent;color:inherit;cursor:zoom-in;}.project-gallery__open:focus-visible{outline:3px solid var(--brand-accent);outline-offset:-4px;box-shadow:inset 0 0 0 1px var(--white);}.project-gallery__caption{z-index:2;pointer-events:none;}.project-gallery__caption a,.project-gallery__caption button{position:relative;z-index:3;pointer-events:auto;}.chip-list .chip--link:focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px;}.compare-table a.link-inline,.service-compare__table a.link-inline{display:inline-block;min-height:32px;padding-block:6px;}.case-study-inquiry-row{margin-top:var(--space-5);}.case-study-inquiry-link{display:inline-flex;align-items:center;min-height:44px;}.grid-services,.proof-strip,.deliverables-grid,.trust-grid,.related-grid,.case-studies-grid,.featured-strip,.self-select-grid,.home-discovery-grid,.discovery-grid,.product-catalog-grid,.project-gallery__grid,.gallery-grid,.product-gallery-grid{gap:var(--card-gap);}.product-catalog-grid>*,.grid-services>*,.home-discovery-grid>*,.related-grid>*,.deliverables-grid>*{border:0;box-shadow:0 0 0 1px var(--card-border);}.grid-services>:hover,.related-grid>:hover,.product-catalog-grid>:hover,.home-discovery-grid>:hover{box-shadow:0 0 0 1px var(--border-medium),var(--shadow-md);}.flex{display:flex;}.flex-col{display:flex;flex-direction:column;}.flex-wrap{flex-wrap:wrap;}.items-center{align-items:center;}.items-start{align-items:flex-start;}.items-end{align-items:flex-end;}.justify-between{justify-content:space-between;}.justify-center{justify-content:center;}.gap-2{gap:var(--space-2);}.gap-3{gap:var(--space-3);}.gap-4{gap:var(--space-4);}.gap-6{gap:var(--space-6);}.gap-8{gap:var(--space-8);}.gap-12{gap:var(--space-12);}.mt-2{margin-top:var(--space-2);}.mt-3{margin-top:var(--space-3);}.mt-4{margin-top:var(--space-4);}.mt-6{margin-top:var(--space-6);}.mt-8{margin-top:var(--space-8);}.mt-12{margin-top:var(--space-12);}.mt-16{margin-top:var(--space-16);}.mt-0{margin-top:0;}.mb-2{margin-bottom:var(--space-2);}.mb-3{margin-bottom:var(--space-3);}.mb-4{margin-bottom:var(--space-4);}.mb-6{margin-bottom:var(--space-6);}.mb-8{margin-bottom:var(--space-8);}.mb-12{margin-bottom:var(--space-12);}.mb-0{margin-bottom:0;}.text-center{text-align:center;}.text-right{text-align:right;}.full-width{width:100%;}.max-30{max-width:30em;}.max-40{max-width:40em;}.max-60ch{max-width:60ch;}.bord-top{border-top:1px solid var(--border-light);}.bord-bot{border-bottom:1px solid var(--border-light);}.uppercase{text-transform:uppercase;letter-spacing:var(--tracking-wider);}.relative{position:relative;}body.page-home .hero--home{container:hero / inline-size;--header-h:77px;--hero-edge:max(var(--pad-x),calc((100cqw - var(--container-max)) / 2 + var(--pad-x)));--hero-focal:50% 30%;position:relative;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;min-height:0;padding:0;background:var(--white);}@media (min-width:1024px){body.page-home .hero--home{--header-h:85px;}}body.page-home .hero__media{position:relative;overflow:hidden;flex:none;aspect-ratio:16 / 10;max-block-size:max(34svh,100cqw * 9 / 16);border-radius:0;background:var(--warm-stone);}body.page-home .hero__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--hero-focal);}@media (max-width:419px) and (max-height:700px){body.page-home .hero--home{--hero-focal:50% 18%;}body.page-home .hero__media{aspect-ratio:2 / 1;max-block-size:max(28svh,100cqw / 2);}}@media (min-width:600px){body.page-home .hero__media{aspect-ratio:3 / 2;max-block-size:max(50svh,100cqw * 9 / 16);}}body.page-home .hero--home .hero__inner{position:relative;width:100%;max-width:var(--container-max);margin:0 auto;padding-inline:var(--pad-x);padding-block:var(--space-4) var(--space-6);display:flex;flex-direction:column;}@media (min-width:600px){body.page-home .hero--home .hero__inner{padding:var(--space-8) var(--pad-x-lg) var(--space-10);}}body.page-home .hero__content{display:flex;flex-direction:column;gap:0;width:100%;max-width:100%;}@media (min-width:768px){body.page-home .hero__content{max-width:620px;}}@media (min-width:1024px){body.page-home .hero__content{max-width:760px;}}body.page-home .hero__eyebrow{display:inline-flex;align-items:center;gap:10px;padding:6px 14px;background:var(--brand-primary-soft);color:var(--brand-primary);font-family:var(--font-display);font-size:var(--text-caption);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;border-radius:var(--radius-pill);margin:0 0 var(--space-3);align-self:flex-start;}@media (min-width:600px){body.page-home .hero__eyebrow{margin:0 0 var(--space-6);}}body.page-home .hero__headline{font-family:var(--font-display);font-weight:var(--weight-extrabold);letter-spacing:-0.02em;line-height:1.02;color:var(--brand-primary);margin:0;font-size:clamp(30px,8.2vw,40px);}@media (min-width:420px){body.page-home .hero__headline{font-size:clamp(36px,7.6vw,48px);}}@media (min-width:600px){body.page-home .hero__headline{font-size:clamp(44px,6vw,64px);letter-spacing:-0.022em;}}@media (min-width:1024px){body.page-home .hero__headline{font-size:clamp(56px,5vw,72px);letter-spacing:-0.024em;}}@media (min-width:1280px){body.page-home .hero__headline{font-size:clamp(64px,4.8vw,80px);}}@media (min-width:1440px){body.page-home .hero__headline{font-size:clamp(72px,4.6vw,88px);}}body.page-home .hero__headline-line{display:block;}@media (min-width:600px){body.page-home .hero__headline-line{white-space:nowrap;}}body.page-home .hero__headline-line--accent{color:var(--brand-accent);font-style:italic;font-weight:var(--weight-extrabold);font-size:0.86em;letter-spacing:-0.022em;margin-top:0.06em;}body.page-home .hero__lede{margin:var(--space-3) 0 0;color:var(--slate-700);font-size:var(--text-body-sm);line-height:1.45;max-width:38ch;text-wrap:balance;}@media (min-width:420px){body.page-home .hero__lede{margin:var(--space-4) 0 0;max-width:42ch;}}@media (min-width:600px){body.page-home .hero__lede{margin:var(--space-5) 0 0;font-size:var(--text-body);line-height:1.5;}}@media (min-width:1024px){body.page-home .hero__lede{margin:var(--space-6) 0 0;font-size:var(--text-body-lg);line-height:1.5;max-width:46ch;}}body.page-home .hero__ctas{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-4);}@media (min-width:420px){body.page-home .hero__ctas{margin-top:var(--space-5);}}@media (min-width:600px){body.page-home .hero__ctas{margin-top:var(--space-6);}}@media (min-width:1024px){body.page-home .hero__ctas{margin-top:var(--space-8);}}body.page-home .hero__ctas .btn{padding:16px 28px;font-size:var(--text-ui);}body.page-home .hero__ctas .btn--primary{box-shadow:0 8px 22px rgba(180,83,9,0.22);}body.page-home .hero__ctas .btn--primary:hover{box-shadow:0 10px 28px rgba(180,83,9,0.28);transform:translateY(-1px);}body.page-home .hero__ctas .btn:focus-visible,body.page-home .hero__ctas .btn--primary:focus-visible{outline:none;box-shadow:0 0 0 2px var(--white),0 0 0 4px var(--brand-accent);}.btn--ghost-dark{background:transparent;color:var(--brand-primary);border:1px solid var(--brand-primary);display:inline-flex;align-items:center;gap:10px;}.btn--ghost-dark .arrow{transition:transform var(--dur-fast) var(--ease);}.btn--ghost-dark:hover{background:var(--brand-primary);color:var(--white);border-color:var(--brand-primary);}.btn--ghost-dark:hover .arrow{transform:translateX(3px);}@media (max-width:599px){body.page-home .hero__ctas{flex-direction:column;align-items:stretch;gap:var(--space-2);}body.page-home .hero__ctas .btn{width:100%;justify-content:center;padding:14px 22px;}}body.page-home .hero__trust{list-style:none;padding:0;margin:var(--space-5) 0 0;display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);font-size:var(--text-body-sm);color:var(--slate-700);}@media (min-width:1024px){body.page-home .hero__trust{margin:var(--space-8) 0 0;gap:var(--space-2) var(--space-5);}}@media (max-width:419px){body.page-home .hero__trust{display:none;}}body.page-home .hero__trust li{display:inline-flex;align-items:center;gap:8px;font-weight:var(--weight-medium);}body.page-home .hero__trust-dot{width:6px;height:6px;border-radius:50%;background:var(--brand-accent);display:inline-block;}body.page-home .hero__scroll{position:absolute;bottom:var(--space-6);left:50%;transform:translateX(-50%);z-index:2;display:none;flex-direction:column;align-items:center;gap:10px;text-decoration:none;color:var(--brand-primary);font-family:var(--font-display);font-size:10px;font-weight:var(--weight-bold);letter-spacing:var(--tracking-widest);text-transform:uppercase;opacity:0.72;transition:opacity var(--dur-fast) var(--ease);}body.page-home .hero__scroll:hover{opacity:1;}body.page-home .hero__scroll-line{display:block;width:1px;height:36px;background:linear-gradient(180deg,var(--brand-primary) 0%,transparent 100%);position:relative;overflow:hidden;}body.page-home .hero__scroll-line::after{content:"";position:absolute;top:0;left:0;width:100%;height:12px;background:var(--brand-primary);animation:scroll-cue 2.4s var(--ease) infinite;}@keyframes scroll-cue{0%{transform:translateY(-12px);opacity:0;}20%{opacity:1;}80%{opacity:1;}100%{transform:translateY(36px);opacity:0;}}body.page-home .hero__scroll{display:none !important;}body.page-home .hero__more{margin:var(--space-4) 0 0;}@media (prefers-reduced-motion:reduce){body.page-home .hero__scroll-line::after{animation:none;}}@media (min-width:1024px) and (min-aspect-ratio:5/4){body.page-home .hero--home{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:stretch;background:var(--surface-warm);}body.page-home .hero--home .hero__inner{--hero-text:clamp(400px,40cqw,680px);--hero-gutter:clamp(32px,3.5cqw,64px);grid-column:1;grid-row:1;container:herotext / inline-size;inline-size:calc(var(--hero-edge) + var(--hero-text) + var(--hero-gutter));max-width:none;margin:0;padding-inline:var(--hero-edge) var(--hero-gutter);padding-block:clamp(32px,7svh,88px);justify-content:center;background-color:var(--surface-warm);background-image:repeating-linear-gradient(to right,var(--grid-line) 0,var(--grid-line) 1px,transparent 1px,transparent calc(100cqw / 12));background-size:100cqw 100%;}body.page-home .hero__content{max-width:none;}body.page-home .hero__headline{font-size:clamp(40px,10.2cqi,88px);}body.page-home .hero__media{--hero-focal:50% 50%;grid-column:2;grid-row:1;align-self:center;aspect-ratio:4 / 3;width:100%;justify-self:center;max-block-size:none;max-inline-size:calc((100svh - var(--header-h) - 32px) * 4 / 3);}}body.page-about .section--hero .h-page{max-width:16ch;}body.page-thank-you .section--hero,body.page-404 .section--hero{min-height:70vh;text-align:center;}body.page-thank-you .h-page,body.page-404 .h-page{margin-inline:auto;}body.page-thank-you .section--hero .container,body.page-404 .section--hero .container{display:flex;flex-direction:column;align-items:center;}body.page-thank-you .btn-cluster,body.page-404 .btn-cluster{justify-content:center;}body.page-privacy .prose{max-width:60ch;}body.page-privacy h2{font-size:var(--text-h3);margin-top:var(--space-8);}body.page-contact .section--hero{padding-bottom:var(--space-10);}body.page-faqs .faq-list{max-width:56em;}
