:root{--accent:#d8242c;--accent-hover:#b81d24;--accent-tint:#d8242c14;--bg:#fafafa;--card:#fff;--line:#e5e5e5;--ink:#000;--muted:#737373;--faint:#a3a3a3;--font-display:"Geist", "Segoe UI", system-ui, sans-serif;--font-body:"Inter", "Segoe UI", system-ui, sans-serif;--container:1200px;--gutter:24px;--z-header:30;--z-skip:50;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (width<=809px){:root{--gutter:20px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:120px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);letter-spacing:-.04em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:16px;font-weight:500;line-height:1.5;overflow-x:hidden}img,video{max-width:100%;height:auto;display:block}h1,h2,h3,h4{font-family:var(--font-display);text-transform:uppercase;text-wrap:balance;margin:0;font-weight:600;line-height:1.1}p{margin:0}ul,ol{margin:0;padding:0;list-style:none}a{color:inherit;text-decoration:none}address{font-style:normal}button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}::selection{background:var(--accent);color:#fff}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:80px}.label{font-family:var(--font-body);letter-spacing:.01em;text-transform:uppercase;font-size:16px;font-weight:500;line-height:1}.muted{color:var(--muted)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.skip-link{z-index:var(--z-skip);background:var(--ink);color:#fff;padding:10px 16px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:16px}.btn{white-space:nowrap;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:6px 18px;font-size:16px;font-weight:500;line-height:1.5;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.btn:disabled{opacity:.7;cursor:progress}.btn-block{width:100%}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-light{color:var(--accent);background:#fff}.btn-light:hover{background:#f1f1f1}.btn-secondary{border-color:var(--ink);background:0 0}.btn-secondary:hover{background:var(--ink);color:#fff}.site-header{z-index:var(--z-header);position:fixed;top:24px;left:24px;right:24px}.nav-bar{background:#fff;align-items:center;height:76px;padding:0 24px;transition:box-shadow .25s;display:flex;position:relative}.site-header.is-scrolled .nav-bar{box-shadow:0 10px 30px #00000014}.scroll-progress{background:var(--accent);transform-origin:0;pointer-events:none;height:2px;position:absolute;bottom:0;left:0;right:0}.brand{flex-shrink:0;display:inline-flex}.brand img{width:132px}.main-nav{margin-left:auto}.main-nav ul{gap:4px;display:flex}.main-nav a,.nav-trigger{cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;min-height:44px;padding-inline:10px;transition:color .2s;display:inline-flex}.main-nav a:hover,.nav-trigger:hover,.nav-trigger.is-active{color:var(--accent)}.nav-trigger svg{transition:transform .2s}.nav-trigger.is-active svg{transform:rotate(180deg)}.header-cta{margin-left:24px}.menu-toggle{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:44px;height:44px;margin-left:auto;display:none}.mega-panel{background:#fff;margin-top:8px;padding:28px;animation:.22s mega-in;box-shadow:0 24px 48px #0000001f}.mega-panel[hidden]{display:none}@keyframes mega-in{0%{opacity:0;transform:translateY(-6px)}}.mega-grid{grid-template-columns:1fr 340px;gap:28px;display:grid}.mega-grid--company{grid-template-columns:1fr 260px 300px}.mega-title{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;margin-bottom:14px;font-size:14px}.mega-services{grid-template-columns:1fr 1fr;gap:4px;display:grid}.mega-services a{align-items:center;gap:14px;padding:10px;transition:background-color .15s;display:flex}.mega-services a:hover,.mega-services a:focus-visible{background:var(--bg)}.mega-services img{object-fit:cover;flex-shrink:0;width:64px;height:64px}.mega-services strong,.mega-links strong{font-weight:500;transition:color .15s;display:block}.mega-services a:hover strong,.mega-links a:hover strong{color:var(--accent)}.mega-services span span,.mega-links span{-webkit-line-clamp:2;color:var(--muted);-webkit-box-orient:vertical;font-size:14px;display:-webkit-box;overflow:hidden}.mega-links a{border-bottom:1px solid var(--line);padding:10px 0;display:block}.mega-contact{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.mega-contact address span{display:block}.mega-contact a{color:var(--accent)}.mega-feature{color:#fff;background:#111;min-height:280px;display:block;position:relative;overflow:hidden}.mega-feature img{object-fit:cover;width:100%;height:100%;transition:transform .6s;position:absolute;inset:0}.mega-feature:hover img{transform:scale(1.04)}.mega-feature:after{content:"";background:linear-gradient(#0000001a 30%,#000000d9);position:absolute;inset:0}.mega-feature-body{z-index:1;flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:absolute;bottom:20px;left:20px;right:20px}.mega-feature-body strong{font-family:var(--font-display);letter-spacing:-.02em;text-transform:uppercase;font-size:22px;font-weight:600;line-height:1.15}.mega-feature-link{text-underline-offset:3px;align-items:center;gap:6px;text-decoration:underline;display:inline-flex}.mobile-menu{background:#fff;max-height:calc(100svh - 110px);margin-top:8px;padding:8px 20px 20px;overflow-y:auto}.mobile-menu[hidden]{display:none}.mobile-menu li a,.mobile-trigger{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;width:100%;min-height:56px;padding:0;font-size:18px;display:flex}.mobile-services{border-bottom:1px solid var(--line);padding:8px 0}.mobile-services[hidden]{display:none}.mobile-menu .mobile-services a{border:0;justify-content:flex-start;gap:12px;min-height:0;padding:6px 0;font-size:16px}.mobile-services img{object-fit:cover;width:44px;height:44px}.mobile-menu .btn{margin-top:20px}@media (width<=1023px){.site-header{top:16px;left:16px;right:16px}.nav-bar{height:66px;padding:0 12px 0 20px}.brand img{width:116px}.main-nav,.header-cta,.mega-panel{display:none}.menu-toggle{display:inline-flex}}@media (width>=1024px){.mobile-menu{display:none}}.hero{color:#fff;background:#111;position:relative;overflow:hidden}.hero-slides,.hero-shade{position:absolute;inset:0}.hero-slide{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity 1.4s;position:absolute;inset:0}.hero-slide.is-active{opacity:1;animation:8s ease-out both ken-burns}@keyframes ken-burns{0%{transform:scale(1.14)}to{transform:scale(1)}}.hero-shade{background:linear-gradient(90deg,#000000bf 0%,#00000059 55%,#0000001a 100%),linear-gradient(#0000 55%,#0009 100%)}.hero-inner{z-index:1;flex-direction:column;justify-content:space-between;gap:56px;min-height:max(100svh,700px);padding-top:200px;padding-bottom:32px;display:flex;position:relative}.hero-copy{max-width:760px}.hero h1{letter-spacing:-.045em;margin-top:16px;font-size:clamp(40px,6.2vw,76px);line-height:1}.hero-accent{background:linear-gradient(transparent 62%, var(--accent) 62%);padding:0 .12em;display:inline}.hero-sub{color:#fffc;letter-spacing:-.03em;max-width:580px;margin-top:20px;font-size:18px}.hero-actions{flex-wrap:wrap;gap:16px;margin-top:28px;display:flex}.hero-bottom{justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.hero-standards ul{grid-template-columns:repeat(3,auto);justify-content:start;gap:12px 28px;margin-top:18px;display:grid}.hero-standards li{color:#ffffffd9;font-family:var(--font-display);letter-spacing:.02em;align-items:center;gap:8px;font-weight:600;display:inline-flex}.hero-standards svg{color:var(--accent);background:#fff;padding:2px}.slide-panel{width:360px;color:var(--ink);background:#fff;flex-shrink:0;padding:16px}.slide-panel-top{align-items:center;gap:14px;display:flex}.slide-count{color:var(--muted);white-space:nowrap;font-size:14px}.slide-count strong{color:var(--ink);font-family:var(--font-display);font-size:22px}.slide-caption{flex:1;font-size:15px}.slide-buttons{gap:4px;display:flex}.slide-buttons button{border:1px solid var(--line);cursor:pointer;background:#fff;justify-content:center;align-items:center;width:36px;height:36px;transition:background-color .2s,color .2s;display:inline-flex}.slide-buttons button:hover{background:var(--ink);color:#fff}.slide-bars{grid-auto-flow:column;gap:6px;margin-top:14px;display:grid}.slide-bars button{cursor:pointer;background:0 0;border:0;height:16px;padding:6px 0}.slide-bars span{background:var(--line);height:3px;display:block;overflow:hidden}.slide-bars span:after{content:"";background:var(--accent);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.slide-bars .is-done span:after,.slide-bars .is-active span:after{transform:scaleX(1)}.slide-bars .is-playing span:after{animation:slide-progress var(--slide-ms) linear both}@keyframes slide-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (width<=899px){.hero-inner{min-height:max(100svh,660px);padding-top:150px}.hero-bottom{flex-direction:column;align-items:stretch}.slide-panel{width:auto}}.rise{animation:.8s cubic-bezier(.22,1,.36,1) both rise}.rise:nth-child(2){animation-delay:60ms}.rise:nth-child(3){animation-delay:.12s}.rise:nth-child(4){animation-delay:.18s}.hero-bottom.rise{animation-delay:.3s}@keyframes rise{0%{opacity:0;transform:translateY(28px)}}.page-hero{color:#fff;background:#111;align-items:flex-end;min-height:max(78svh,560px);display:flex;position:relative;overflow:hidden}.page-hero--compact{min-height:max(60svh,480px)}.page-hero-bg,.page-hero-shade,.band-bg,.band-shade,.cta-bg,.cta-shade{position:absolute;inset:0;overflow:hidden}.parallax-img{object-fit:cover;will-change:transform;width:100%;height:100%;transform:scale(1.12)}.page-hero-shade{background:linear-gradient(#00000059 0%,#0000004d 45%,#000000d1 100%),linear-gradient(90deg,#00000073,#0000 70%)}.page-hero-inner{z-index:1;padding-top:160px;padding-bottom:64px;position:relative}.page-hero h1{letter-spacing:-.045em;max-width:900px;margin-top:16px;font-size:clamp(40px,6.4vw,84px);line-height:.98}.page-hero-text{color:#fffc;max-width:620px;margin-top:20px;font-size:18px}.crumbs{margin-bottom:24px}.crumbs ol{color:#ffffffb3;flex-wrap:wrap;align-items:center;gap:6px;font-size:14px;display:flex}.crumbs li{align-items:center;gap:6px;display:inline-flex}.crumbs a:hover{color:#fff;text-decoration:underline}.crumbs [aria-current]{color:#fff}.sec-head{margin-bottom:56px}.sec-head .label{margin-bottom:16px}.sec-head-row{justify-content:space-between;align-items:flex-start;gap:24px 40px;display:flex}.sec-head h2{letter-spacing:-.02em;max-width:600px;font-size:clamp(34px,4.2vw,48px)}.sec-head-aside{max-width:400px;color:var(--muted);flex-direction:column;align-items:flex-start;gap:24px;padding-top:6px;display:flex}@media (width<=809px){.sec-head-row{flex-direction:column}}.intro-grid{gap:24px;display:grid}@media (width>=900px){.intro-grid{grid-template-columns:390px 1fr;gap:0}}.intro-text{font-family:var(--font-display);letter-spacing:-.02em;text-transform:uppercase;font-size:clamp(22px,2.4vw,28px);font-weight:600;line-height:1.5}.intro-text span[aria-hidden]{color:#c4c4c4;transition:color .25s}.intro-text span.is-lit{color:var(--ink)}.stat-grid{gap:20px;margin-top:64px;display:grid}@media (width>=560px){.stat-grid{grid-template-columns:1fr 1fr}}.stat-card{background:var(--card);flex-direction:column;justify-content:space-between;gap:64px;min-height:254px;padding:24px;display:flex}@media (width<=559px){.stat-card{gap:40px;min-height:0}}.stat-index{color:var(--accent)}.stat-value{font-family:var(--font-display);letter-spacing:-.02em;text-transform:uppercase;font-size:44px;font-weight:600;line-height:1.1}.stat-text{color:var(--muted);margin-top:8px}.svc-grid{gap:20px;display:grid}@media (width>=640px){.svc-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.svc-grid{grid-template-columns:repeat(3,1fr)}}.svc-card{aspect-ratio:1;color:#fff;text-align:left;cursor:pointer;background:#111;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}@media (width>=640px){.svc-card{aspect-ratio:4/5}}.svc-card img{object-fit:cover;width:100%;height:100%;transition:transform .6s;position:absolute;inset:0}.svc-card:after{content:"";background:linear-gradient(#0000001a 0%,#0003 50%,#000000d9 100%);position:absolute;inset:0}.svc-card:hover img{transform:scale(1.04)}.svc-card-arrow{z-index:1;transition:transform .2s;position:absolute;top:20px;right:20px}.svc-card:hover .svc-card-arrow{transform:translate(3px,-3px)}.svc-card-body{z-index:1;flex-direction:column;gap:8px;display:flex;position:absolute;bottom:24px;left:24px;right:24px}.svc-card-title{font-family:var(--font-display);letter-spacing:-.02em;text-transform:uppercase;font-size:26px;font-weight:600;line-height:1.1}.svc-card-text{color:#ffffffbf}.svc-dialog{background:var(--card);width:min(920px,100vw - 32px);max-width:none;max-height:calc(100vh - 32px);color:var(--ink);border:0;padding:0}.svc-dialog::backdrop{background:#0009}.svc-dialog[open]{animation:.3s dialog-in}@keyframes dialog-in{0%{opacity:0;transform:translateY(16px)}}body:has(.svc-dialog[open]){overflow:hidden}.svc-dialog-inner{position:relative}.dialog-close{z-index:1;cursor:pointer;background:#fff;border:0;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex;position:absolute;top:16px;right:16px}.svc-dialog-media{aspect-ratio:21/9;background:#111;overflow:hidden}.svc-dialog-media img{object-fit:cover;width:100%;height:100%}.svc-dialog-body{flex-direction:column;align-items:flex-start;gap:20px;padding:clamp(24px,4vw,40px);display:flex}.svc-dialog-body .label{color:var(--accent)}.svc-dialog-body h2{letter-spacing:-.02em;margin-top:-8px;font-size:clamp(26px,3.2vw,36px)}.feature-list{gap:10px 24px;width:100%;display:grid}@media (width>=640px){.feature-list{grid-template-columns:1fr 1fr}}.feature-list li{align-items:flex-start;gap:10px;display:flex}.feature-list svg{color:var(--accent);flex-shrink:0;margin-top:4px}.capability-grid{gap:24px;width:100%;padding-top:8px;display:grid}@media (width>=760px){.capability-grid{grid-template-columns:repeat(3,1fr)}}.capability-grid h3{font-family:var(--font-body);letter-spacing:.02em;font-size:14px;font-weight:600}.capability-grid ul{margin-top:10px}.capability-grid li{border-top:1px solid var(--line);color:var(--muted);padding:8px 0;font-size:15px}.why-list{border-top:1px solid var(--line)}.why-row{border-bottom:1px solid var(--line);gap:12px;padding:28px 0;display:grid}@media (width>=900px){.why-row{grid-template-columns:293px 1fr;gap:0}}.why-num{padding-top:4px}.why-main h3 button{width:100%;font-family:var(--font-display);letter-spacing:-.02em;text-align:left;text-transform:uppercase;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;padding:0;font-size:clamp(22px,2.4vw,26px);font-weight:600;line-height:1.2;display:flex}.why-main h3 button:hover{color:var(--accent)}.why-main h3 svg{flex-shrink:0}.why-panel{animation:.35s panel-in}@keyframes panel-in{0%{opacity:0;transform:translateY(10px)}}.why-panel p{max-width:460px;color:var(--muted);margin-top:16px}.why-images{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px;display:grid}.why-images img{aspect-ratio:3/2;object-fit:cover;width:100%}.process-grid{align-items:start;gap:20px;display:grid}@media (width>=1024px){.process-grid{grid-template-columns:420px 1fr}}.process-media{background:#111;height:min(620px,100vh - 160px);position:sticky;top:124px;overflow:hidden}.process-media img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .6s,transform 1.2s;position:absolute;inset:0;transform:scale(1.05)}.process-media img.is-active{opacity:1;transform:none}.process-media-label{text-transform:uppercase;background:#fff;padding:8px 12px;font-size:14px;position:absolute;bottom:16px;left:16px}.process-steps{gap:20px;display:grid}.process-card-inner{background:var(--card);border-left:3px solid #0000;flex-direction:column;justify-content:space-between;gap:40px;min-height:260px;padding:24px;transition:border-color .3s,opacity .3s;display:flex}.process-num{color:var(--accent)}.process-card h3{letter-spacing:-.02em;font-size:clamp(22px,2.2vw,28px);font-weight:500}.process-card p{max-width:520px;color:var(--muted);margin-top:12px}.process-card-img{aspect-ratio:16/10;object-fit:cover;width:100%;display:none}@media (width>=1024px){.process-card:not(.is-active) .process-card-inner{opacity:.55}.process-card.is-active .process-card-inner{border-left-color:var(--accent)}}@media (width<=1023px){.process-media{display:none}.process-card-img{margin-bottom:-16px;display:block}.process-card-inner{min-height:0}}.project-grid{gap:48px 20px;display:grid}@media (width>=900px){.project-grid{grid-template-columns:1fr 1fr}}.project-card{flex-direction:column;gap:12px;display:flex}.project-media{aspect-ratio:16/10;background:#111;margin-bottom:8px;overflow:hidden}.project-media img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.project-card:hover .project-media img{transform:scale(1.03)}.project-meta{letter-spacing:.01em;text-transform:uppercase;flex-wrap:wrap;gap:4px 20px;font-size:14px;display:flex}.project-meta span+span{color:var(--muted)}.project-card h3{letter-spacing:-.04em;font-size:clamp(24px,2.4vw,28px)}.faq-grid{align-items:start;gap:20px;display:grid}@media (width>=900px){.faq-grid{grid-template-columns:390px 1fr}}.help-card{background:var(--card);flex-direction:column;align-items:flex-start;gap:12px;padding:24px;display:flex}.help-card .label{margin-top:12px}.help-card a{color:var(--accent);overflow-wrap:anywhere}.help-card a:hover{text-decoration:underline}.icon-tile{background:var(--accent-tint);width:44px;height:44px;color:var(--accent);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.faq-list{flex-direction:column;gap:12px;display:flex}.faq-item{background:var(--card);padding:24px}.faq-item summary{font-family:var(--font-display);letter-spacing:.01em;text-transform:uppercase;cursor:pointer;justify-content:space-between;align-items:center;gap:16px;font-size:18px;font-weight:500;line-height:1.2;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-icon{flex-shrink:0;transition:transform .2s}.faq-item[open] .faq-icon{transform:rotate(45deg)}.faq-item p{color:var(--muted);margin-top:16px}.cta{color:#fff;background:#111;padding:300px 0 72px;position:relative;overflow:hidden}.cta-shade{background:linear-gradient(#00000026 0%,#00000059 40%,#000000d1 100%)}.cta-inner{z-index:1;position:relative}.cta h2{letter-spacing:-.04em;max-width:760px;margin-top:16px;font-size:clamp(36px,5.2vw,64px);line-height:1}.cta-sub{color:#ffffffc7;max-width:520px;margin-top:16px}@media (width<=809px){.cta{padding-top:200px}}.contact-grid{gap:40px;display:grid}@media (width>=960px){.contact-grid{grid-template-columns:390px 1fr;align-items:start;gap:20px}}.contact-list{gap:24px;display:grid}.contact-list li{align-items:flex-start;gap:16px;display:flex}.contact-list .label{color:var(--muted);margin-bottom:6px;font-size:14px;display:block}.contact-list a{overflow-wrap:anywhere;transition:color .2s}.contact-list a:hover{color:var(--accent)}.contact-list address span{display:block}.hours{margin:0}.hours div{justify-content:space-between;gap:16px;min-width:240px;display:flex}.hours dt{color:var(--muted)}.hours dd{margin:0}.form-card{background:var(--card);padding:clamp(24px,4vw,40px)}.form-title{letter-spacing:-.02em;margin-bottom:24px;font-size:24px}.field{gap:8px;margin-bottom:18px;display:grid}.field-row{gap:0 16px;display:grid}@media (width>=560px){.field-row{grid-template-columns:1fr 1fr}}.field label{color:var(--muted);font-size:14px}.optional{color:var(--faint)}.field input,.field select,.field textarea{border:1px solid var(--line);background:var(--bg);border-radius:0;width:100%;min-height:48px;padding:12px 14px;font-size:16px;transition:border-color .2s,box-shadow .2s}.field textarea{resize:vertical;min-height:132px}.field textarea::placeholder{color:var(--faint)}.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23737373' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:42px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #d8242c26}.field [aria-invalid=true]{border-color:var(--accent)}.field-error,.form-error{color:var(--accent);font-size:14px}.form-error{margin-bottom:16px}.form-error a{text-decoration:underline}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-success{justify-items:start;gap:14px;display:grid}.form-success:focus{outline:none}.form-success h3{font-size:24px}.form-success p{color:var(--muted)}.site-footer{border-top:1px solid var(--line);padding:80px 0 32px}.footer-grid{gap:40px;display:grid}@media (width>=640px){.footer-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.footer-grid{grid-template-columns:1.3fr 1fr 1fr 1.2fr}}.footer-brand img{width:152px}.footer-brand p{max-width:30ch;margin-top:20px}.site-footer .label{margin-bottom:18px}.site-footer ul{gap:6px;display:grid}.site-footer ul a{transition:color .2s}.site-footer ul a:hover{color:var(--accent)}.footer-contact ul+.label{margin-top:32px}.wordmark{font-family:var(--font-display);letter-spacing:-.03em;text-transform:uppercase;white-space:nowrap;margin-top:72px;font-size:clamp(36px,10vw,132px);font-weight:500;line-height:.85}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px 24px;margin-top:32px;padding-top:24px;font-size:14px;display:flex}.footer-bottom a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.about-grid{align-items:start;gap:56px 48px;display:grid}@media (width>=960px){.about-grid{grid-template-columns:1.1fr 1fr}}.about-collage{margin-bottom:40px;position:relative}.about-main{aspect-ratio:4/3;object-fit:cover;width:100%}.about-inset{aspect-ratio:16/10;object-fit:cover;border:8px solid var(--bg);width:46%;position:absolute;bottom:-40px;right:-12px}.about-pin{background:#fff;align-items:center;gap:6px;padding:8px 12px;font-size:14px;display:inline-flex;position:absolute;top:16px;left:16px}.about-pin svg{color:var(--accent)}.about-copy{flex-direction:column;gap:16px;display:flex}.about-lead{letter-spacing:-.02em;font-size:26px}.mv-grid{gap:16px;margin-top:8px;display:grid}@media (width>=560px){.mv-grid{grid-template-columns:1fr 1fr}}.mv-card{background:var(--card);border-left:3px solid var(--accent);flex-direction:column;gap:12px;padding:20px;display:flex}.mv-card .label{color:var(--accent);font-size:14px}.value-grid{gap:20px;margin-top:64px;display:grid}@media (width>=560px){.value-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.value-grid{grid-template-columns:repeat(4,1fr)}}.value-card{background:var(--card);padding:24px}.value-card h3{letter-spacing:-.02em;margin:28px 0 8px;font-size:22px}.svc-card-num{z-index:1;color:#fffc;font-size:14px;position:absolute;top:20px;left:24px}.svc-card-more{text-underline-offset:3px;align-items:center;gap:6px;margin-top:4px;font-size:14px;text-decoration:underline;transition:opacity .25s,transform .25s;display:inline-flex}@media (hover:hover){.svc-card-more{opacity:0;transform:translateY(6px)}.svc-card:hover .svc-card-more,.svc-card:focus-visible .svc-card-more{opacity:1;transform:none}}.dialog-faq{width:100%;padding-top:8px}.dialog-faq h3{font-family:var(--font-body);letter-spacing:.02em;margin-bottom:8px;font-size:14px;font-weight:600}.dialog-faq details{border-top:1px solid var(--line);padding:14px 0}.dialog-faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;list-style:none;display:flex}.dialog-faq summary::-webkit-details-marker{display:none}.dialog-faq details[open] .faq-icon{transform:rotate(45deg)}.dialog-faq p{color:var(--muted);margin-top:8px}.section--tint{background:#fff}.carousel-buttons{gap:8px;display:flex}.carousel-buttons button{border:1px solid var(--ink);cursor:pointer;background:0 0;justify-content:center;align-items:center;width:48px;height:48px;transition:background-color .2s,color .2s,opacity .2s;display:inline-flex}.carousel-buttons button:hover:not(:disabled){background:var(--ink);color:#fff}.carousel-buttons button:disabled{opacity:.25;cursor:default}.sector-track{--edge:max(var(--gutter), calc((100% - var(--container)) / 2 + var(--gutter)));padding:0 var(--edge) 16px;scroll-snap-type:x mandatory;scroll-padding-inline:var(--edge);scrollbar-width:thin;grid-auto-columns:min(380px,80vw);grid-auto-flow:column;gap:20px;display:grid;overflow-x:auto}.sector-card{scroll-snap-align:start}.sector-media{aspect-ratio:3/2;background:#111;position:relative;overflow:hidden}.sector-media img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.sector-card:hover .sector-media img{transform:scale(1.05)}.sector-num{background:#fff;padding:4px 8px;font-size:14px;position:absolute;top:12px;left:12px}.sector-card h3{letter-spacing:-.02em;margin-top:18px;font-size:22px}.sector-card p{margin-top:8px}.filter-bar{flex-wrap:wrap;gap:8px;margin-bottom:32px;display:flex}.filter-bar--scroll{scrollbar-width:thin;flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.filter-btn{border:1px solid var(--line);cursor:pointer;background:#fff;flex-shrink:0;align-items:center;gap:8px;min-height:44px;padding:8px 16px;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.filter-btn:hover{border-color:var(--ink)}.filter-btn span{color:var(--muted);font-size:13px}.filter-btn[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:#fff}.filter-btn[aria-pressed=true] span{color:#ffffffb3}.project-media{position:relative}.project-metric-badge{max-width:calc(100% - 32px);color:var(--muted);background:#fff;align-items:baseline;gap:8px;padding:10px 14px;font-size:14px;display:inline-flex;position:absolute;bottom:16px;left:16px}.project-metric-badge strong{color:var(--accent);font-family:var(--font-display);white-space:nowrap;font-size:22px;font-weight:600}.project-meta span{align-items:center;gap:4px;display:inline-flex}.scope-list{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.scope-list li{border:1px solid var(--line);background:#fff;padding:4px 10px;font-size:13px}.help-card .btn{margin-top:8px}.next-steps{border-top:1px solid var(--line);margin-top:40px;padding-top:32px}.next-steps ol{gap:18px;margin-top:20px;display:grid}.next-steps li{gap:14px;display:flex}.next-steps strong{font-weight:500;display:block}.map-card{background:#e5e5e5;margin-top:40px;position:relative}.map-card iframe{filter:grayscale()contrast(1.05);border:0;width:100%;height:380px;display:block}.map-link{background:#fff;align-items:center;gap:6px;padding:10px 14px;font-size:14px;display:inline-flex;position:absolute;bottom:16px;left:16px}.map-link svg,.map-link:hover{color:var(--accent)}.back-to-top{z-index:25;background:var(--ink);color:#fff;opacity:0;pointer-events:none;justify-content:center;align-items:center;width:48px;height:48px;transition:opacity .25s,transform .25s,background-color .2s;display:inline-flex;position:fixed;bottom:24px;right:24px;transform:translateY(12px)}.back-to-top.is-shown{opacity:1;pointer-events:auto;transform:none}.back-to-top:hover{background:var(--accent)}.main-nav a.active,.mobile-menu a.active{color:var(--accent)}.mega-all{color:var(--accent);text-underline-offset:3px;align-items:center;gap:6px;margin-top:16px;text-decoration:underline;display:inline-flex}.marquee{background:var(--accent);color:#fff;padding:22px 0;overflow:hidden}.marquee-track{width:max-content;animation:32s linear infinite marquee;display:flex}.marquee ul{flex-shrink:0;display:flex}.marquee li{font-family:var(--font-display);letter-spacing:-.02em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:36px;padding-right:36px;font-size:clamp(22px,3vw,36px);font-weight:600;display:inline-flex}.marquee-star{opacity:.8;font-size:.7em}@keyframes marquee{to{transform:translate(-50%)}}.marquee:hover .marquee-track{animation-play-state:paused}.band{color:#fff;background:#111;align-items:center;min-height:max(90svh,600px);display:flex;position:relative;overflow:hidden}.band-shade{background:linear-gradient(90deg,#000000b3 0%,#0003 70%),linear-gradient(#0000 50%,#00000073)}.band-inner{z-index:1;padding-block:120px;position:relative}.band-lines{font-family:var(--font-display);letter-spacing:-.05em;text-transform:uppercase;flex-direction:column;margin:20px 0 36px;font-size:clamp(48px,9.5vw,136px);font-weight:600;line-height:.92;display:flex}.band-lines .is-outline{color:#0000;-webkit-text-stroke:2px #fff}.gallery{gap:16px;display:grid}@media (width>=760px){.gallery{grid-template-columns:repeat(4,1fr);grid-auto-rows:240px}.gallery-item--1{grid-area:span 2/span 2}.gallery-item--2{grid-column:span 2}.gallery-item--3{grid-column:span 1}.gallery-item--4{grid-area:span 2/span 1}.gallery-item--5{grid-column:span 3}}.gallery-item button{cursor:zoom-in;background:#111;border:0;width:100%;height:100%;min-height:240px;padding:0;display:block;position:relative;overflow:hidden}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .7s;position:absolute;inset:0}.gallery-item button:hover img{transform:scale(1.06)}.gallery-caption{color:var(--ink);text-transform:uppercase;background:#fff;align-items:center;gap:10px;padding:8px 12px;font-size:14px;display:inline-flex;position:absolute;bottom:12px;left:12px}.gallery-caption svg{color:var(--accent)}.lightbox{color:#fff;background:#000000f0;border:0;width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:0}.lightbox::backdrop{background:#000c}.lightbox figure{flex-direction:column;justify-content:center;align-items:center;height:100%;margin:0;padding:72px 72px 32px;display:flex}.lightbox img{object-fit:contain;max-width:100%;max-height:calc(100vh - 160px)}.lightbox figcaption{text-transform:uppercase;gap:16px;margin-top:16px;display:flex}.lightbox figcaption span{color:#fff9}.lightbox-btn{width:52px;height:52px;color:var(--ink);cursor:pointer;background:#fff;border:0;justify-content:center;align-items:center;display:inline-flex;position:absolute}.lightbox-btn:hover{background:var(--accent);color:#fff}.lightbox-close{top:16px;right:16px}.lightbox-prev,.lightbox-next{top:50%;transform:translateY(-50%)}.lightbox-prev{left:16px}.lightbox-next{right:16px}@media (width<=640px){.lightbox figure{padding:72px 12px 96px}.lightbox-prev,.lightbox-next{top:auto;bottom:24px;transform:none}}.svc-rows{gap:96px;display:grid}.svc-row{align-items:center;gap:32px;display:grid}@media (width>=1024px){.svc-row{grid-template-columns:1.1fr 1fr;gap:64px}.svc-row--flip .svc-row-media{order:2}}.svc-row-media{aspect-ratio:4/3;background:#111;display:block;position:relative;overflow:hidden}.svc-row-media img{object-fit:cover;width:100%;height:100%;transition:transform .7s}.svc-row:hover .svc-row-media img{transform:scale(1.04)}.svc-row-num{color:#ffffffeb;font-family:var(--font-display);letter-spacing:-.06em;font-size:clamp(80px,12vw,160px);font-weight:600;line-height:1;position:absolute;bottom:-18px;right:16px}.svc-row-body{flex-direction:column;align-items:flex-start;gap:18px;display:flex}.svc-row-body .label{color:var(--accent);font-size:14px}.svc-row-body h2{letter-spacing:-.03em;font-size:clamp(32px,3.8vw,48px)}.svc-row-body h2 a:hover{color:var(--accent)}.overview-grid{align-items:center;gap:48px;display:grid}@media (width>=1024px){.overview-grid{grid-template-columns:1fr 1fr;gap:72px}}.overview-copy{flex-direction:column;gap:20px;display:flex}.overview-copy h2{letter-spacing:-.03em;font-size:clamp(30px,3.6vw,46px)}.overview-copy .label{color:var(--accent)}.fact-list{border-top:1px solid var(--line);margin:8px 0 0}.fact-list div{border-bottom:1px solid var(--line);grid-template-columns:140px 1fr;gap:16px;padding:14px 0;display:grid}.fact-list dt{color:var(--muted)}.fact-list dd{margin:0}.overview-media img{aspect-ratio:4/5;object-fit:cover;width:100%}.feature-cards{gap:20px;display:grid}@media (width>=640px){.feature-cards{grid-template-columns:1fr 1fr}}@media (width>=1024px){.feature-cards{grid-template-columns:repeat(4,1fr)}}.feature-card{background:var(--bg);border-top:3px solid var(--accent);flex-direction:column;gap:12px;min-height:260px;padding:24px;display:flex}.feature-num{color:var(--accent);font-family:var(--font-display);margin-bottom:auto;font-size:40px;font-weight:600;line-height:1}.feature-card h3{letter-spacing:-.02em;font-size:20px}.capability-panels{gap:20px;margin-top:20px;display:grid}@media (width>=900px){.capability-panels{grid-template-columns:repeat(3,1fr)}}.capability-panel{background:var(--ink);color:#fff;padding:28px}.capability-panel h3{letter-spacing:-.02em;margin-bottom:18px;font-size:20px}.capability-panel li{color:#ffffffd1;border-top:1px solid #ffffff24;gap:10px;padding:10px 0;font-size:15px;display:flex}.capability-panel svg{color:var(--accent);flex-shrink:0;margin-top:3px}.workflow{counter-reset:none;gap:20px;display:grid}@media (width>=640px){.workflow{grid-template-columns:1fr 1fr}}@media (width>=1024px){.workflow{grid-template-columns:repeat(4,1fr)}}.workflow li{background:var(--card);padding:28px 24px 24px;position:relative}.workflow li:after{content:"";background:linear-gradient(90deg, var(--accent), transparent);height:3px;position:absolute;top:0;left:24px;right:24px}.workflow-num{color:var(--accent)}.workflow h3{letter-spacing:-.02em;margin:36px 0 10px;font-size:22px;font-weight:500}.sector-mosaic{gap:16px;display:grid}@media (width>=760px){.sector-mosaic{grid-template-columns:repeat(6,1fr);grid-auto-rows:300px}.sector-tile--1{grid-area:span 2/span 4}.sector-tile--2,.sector-tile--3,.sector-tile--4,.sector-tile--5,.sector-tile--6{grid-column:span 2}.sector-tile--7{grid-column:span 6}}.sector-tile{color:#fff;background:#111;min-height:300px;position:relative;overflow:hidden}.sector-tile img{object-fit:cover;width:100%;height:100%;transition:transform .8s;position:absolute;inset:0}.sector-tile:hover img{transform:scale(1.06)}.sector-tile:after{content:"";background:linear-gradient(#0000000d 35%,#000000d9 100%);position:absolute;inset:0}.sector-tile-body{z-index:1;position:absolute;bottom:24px;left:24px;right:24px}.sector-tile-num{background:var(--accent);margin-bottom:12px;padding:4px 8px;font-size:14px;display:inline-block}.sector-tile h3{letter-spacing:-.03em;font-size:clamp(24px,2.6vw,34px)}.sector-tile p{color:#fffc;max-width:520px;margin-top:8px}.project-link{flex-direction:column;gap:12px;display:flex}.project-link:hover h3{color:var(--accent)}.project-view{background:var(--accent);color:#fff;opacity:0;align-items:center;gap:6px;padding:8px 12px;font-size:14px;transition:opacity .25s,transform .25s;display:inline-flex;position:absolute;top:16px;right:16px;transform:translateY(-6px)}.project-link:hover .project-view,.project-link:focus-visible .project-view{opacity:1;transform:none}.project-detail{align-items:start;gap:48px;display:grid}@media (width>=1024px){.project-detail{grid-template-columns:1fr 380px;gap:64px}}.project-detail-main{flex-direction:column;gap:20px;display:flex}.project-detail-main>.label{color:var(--accent)}.project-detail-main h2{letter-spacing:-.03em;font-size:clamp(30px,3.6vw,46px)}.project-lead{font-size:20px;line-height:1.5}.project-detail-main h3.label{font-family:var(--font-body);margin-top:16px;font-size:14px}.scope-steps{background:var(--line);border:1px solid var(--line);gap:1px;display:grid}@media (width>=640px){.scope-steps{grid-template-columns:1fr 1fr}}.scope-steps li{background:var(--card);align-items:center;gap:14px;padding:18px;display:flex}.scope-steps span{color:var(--accent);font-family:var(--font-display);font-weight:600}.project-figure{margin:16px 0 0}.project-figure img{aspect-ratio:16/10;object-fit:cover;width:100%}.project-facts{background:var(--card);flex-direction:column;gap:20px;padding:28px;display:flex;position:sticky;top:124px}.project-facts-metric{color:var(--muted);flex-direction:column;display:flex}.project-facts-metric strong{color:var(--accent);font-family:var(--font-display);letter-spacing:-.04em;font-size:56px;font-weight:600;line-height:1}.project-facts dl{border-top:1px solid var(--line);margin:0}.project-facts dl div{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:12px 0;display:flex}.project-facts dt{color:var(--muted)}.project-facts dd{text-align:right;margin:0}.project-facts dd a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.project-service-card{border:1px solid var(--line);align-items:center;gap:14px;padding:10px;display:flex}.project-service-card img{object-fit:cover;width:96px;height:72px}.project-service-card>span{flex-direction:column;gap:4px;display:flex}.project-service-card .label{color:var(--muted);font-size:12px}.project-service-link{color:var(--accent);align-items:center;gap:6px;font-size:14px;display:inline-flex}@media (width<=1023px){.project-facts{position:static}}@media (prefers-reduced-motion:no-preference){.reveal{transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}.reveal:not(.is-visible){opacity:0;transform:translateY(32px)}}
