:root{--model-line:#393939;--model-label:#a5a5a5}
.utility,.header{color:#f2f2f2;border-color:#333333}
.utility{color:#929292}
.utility:before,.header:before{background:#101010}
.header .brand-mark{mix-blend-mode:screen}
.header .brand-mark img{filter:grayscale(1)}
.main-nav a:hover{color:#b6b6b6}
.main-nav .contact-nav{border-color:#737373}
.hero-description{max-width:455px}
.hero-main{grid-template-columns:1fr 1.1fr;gap:24px}
.hero-art{width:112%;margin-left:-4%}
.hero-art .model-stage svg{height:min(55svh,620px);width:100%}
.model-stage{position:relative;min-width:0}
.model-stage svg{width:100%;height:auto;overflow:visible}
.model-stage [data-part]{transition:opacity .35s ease}
.model-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:5px 17px;padding:15px 0 12px;border-top:1px solid var(--model-line);font-family:var(--font)}
.model-toolbar-label{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--model-label);margin-right:7px}
.model-mode{font-family:var(--font);font-size:10px;line-height:1.5;color:#959595;background:none;border:0;border-bottom:1px solid transparent;padding:6px 0;cursor:pointer;white-space:nowrap}
.model-mode[aria-pressed=true]{color:#eeeeee;border-bottom-color:#aaaaaa}
.model-mode:hover{color:#f4f4f4}
.model-detail{font-size:11px;line-height:1.75;color:#999999;min-height:39px;max-width:610px;margin:0}
.model-footnote{display:flex;justify-content:space-between;gap:25px;font:8px/1.8 var(--font);letter-spacing:.04em;text-transform:uppercase;color:#777777;margin-top:13px}
.hero-art .model-toolbar{margin:0 5%;gap:5px 14px;padding-top:12px}
.hero-art .model-detail{margin:0 5%;font-size:10px;line-height:1.65}
.hero-art .model-toolbar-label{display:none}
.hero-art .model-mode{font-size:9px}
.factory-band{padding-block:clamp(45px,5svh,75px)}
.factory-heading{grid-template-columns:1fr 2.1fr}
.factory-heading .body-copy{max-width:700px}
.factory-rich-scene{width:min(100%,calc((100svh - 355px)*1.8421));margin:19px auto 4px}
.factory-rich-scene svg{width:100%;height:auto}
.factory-band .engineering-surface>.model-toolbar{justify-content:center}
.factory-band .model-detail{text-align:center;max-width:780px;margin-inline:auto;min-height:20px}
.factory-band .model-footnote{border-top:1px solid #333333;padding-top:14px}
.expertise{padding-block:clamp(50px,6svh,85px)}
.expertise .section-top h2{font-size:clamp(36px,3.7vw,60px)}
.expertise-content{margin-top:36px}
.expertise-row summary{padding:20px 0;align-items:center}
.expertise-row h3{font-size:clamp(24px,2.3vw,36px);line-height:1.22}
.expertise-body{padding-bottom:24px;gap:36px}
.expertise-body .body-copy{font-size:13px;line-height:1.85}
.expertise-tags{font-size:9px}
.spatial-band{min-height:100vh;min-height:100svh;padding-block:clamp(56px,7svh,100px);display:flex;align-items:center;background:#f7f7f7}
.spatial-layout{display:grid;grid-template-columns:.85fr 1.25fr;gap:65px;align-items:center}
.spatial-copy h2{font-family:var(--display);font-size:clamp(40px,4.3vw,71px);line-height:1.1;letter-spacing:-.025em;font-weight:400;margin:27px 0}
.spatial-copy .body-copy{font-size:14px;line-height:1.9;max-width:440px}
.spatial-topics{list-style:none;padding:0;margin:30px 0 0;max-width:365px}
.spatial-topics li{border-top:1px solid #d4d4d4;padding:13px 0;font-size:11px;line-height:1.8;display:flex;gap:17px;color:#6f6f6f}
.spatial-topics li span{font:9px/2 var(--font);color:#989898}
.spatial-model{min-width:0;--model-line:#d2d2d2;--model-label:#777777}
.spatial-model .model-stage{width:115%;margin-left:-7.5%}
.spatial-model .model-stage svg{width:100%;height:auto;max-height:65svh}
.spatial-model .model-mode,.system-graphic .model-mode{color:#777777}
.spatial-model .model-mode[aria-pressed=true],.system-graphic .model-mode[aria-pressed=true]{color:#161616;border-bottom-color:#555555}
.spatial-model .model-mode:hover,.system-graphic .model-mode:hover{color:#171717}
.spatial-model .model-detail,.system-graphic .model-detail{color:#727272;font-size:11px}
.spatial-model .model-footnote{color:#989898}
.system-band{background:#ebebeb;border-color:#d6d6d6}
.system-layout{grid-template-columns:.85fr 1.25fr;gap:60px}
.system-copy h2{font-size:clamp(43px,4.6vw,76px)}
.system-copy .body-copy{max-width:460px}
.system-graphic{max-width:none;width:100%;--model-line:#cacaca;--model-label:#777777}
.system-graphic .model-stage{width:106%;margin-left:-3%}
.system-graphic .model-stage svg{width:100%;height:auto;max-height:64svh}
.system-graphic .model-toolbar{gap:5px 15px}
.system-graphic .model-toolbar-label{display:none}
.system-graphic .model-mode{font-size:9px}
.system-graphic .model-detail{font-size:11px;min-height:42px}
.technology-line{display:flex;flex-wrap:wrap;gap:8px 23px;font-size:11px;line-height:1.7;color:#7b7b7b;margin-top:30px;padding-top:20px;border-top:1px solid #cacaca;max-width:440px}
@media(min-width:761px) and (max-height:760px){.hero-art .model-stage svg{height:48svh}.factory-rich-scene{width:min(100%,calc((100svh - 305px)*1.8421))}.hero-art .model-detail{font-size:9px;line-height:1.6}.hero-art .model-toolbar{gap:4px 12px}.expertise-row summary{padding:17px 0}.expertise-content{margin-top:28px}.spatial-model .model-stage svg,.system-graphic .model-stage svg{max-height:60svh}}
@media(max-width:1100px) and (min-width:761px){.hero-main{gap:10px;grid-template-columns:1fr 1fr}.hero-art{width:108%;margin-left:-4%}.hero-art .model-toolbar{gap:3px 11px}.hero-art .model-mode{font-size:8px}.spatial-layout,.system-layout{gap:35px;grid-template-columns:.9fr 1.1fr}.spatial-copy h2{font-size:46px}.system-copy h2{font-size:48px}.model-toolbar{gap:5px 13px}.expertise-row h3{font-size:27px}}
@media(max-width:760px){
 .header,.utility{border-color:#353535}.menu-button{color:#eeeeee;border-color:#444444}.main-nav{background:#171717;color:#eeeeee;border-color:#444444}.main-nav .contact-nav{border-color:#777777}
 .hero-main{gap:29px}.hero-art{width:100%;margin:0}.hero-art .model-stage{margin-inline:-20px}.hero-art .model-stage svg{width:100%;height:auto;max-height:none}.hero-art .model-toolbar{margin:0;gap:5px 17px}.hero-art .model-mode{font-size:10px}.hero-art .model-detail{font-size:11px;margin:0;min-height:42px}
 .model-toolbar{gap:6px 20px;padding:14px 0 12px}.model-mode{font-size:11px;padding:9px 0}.model-toolbar-label{font-size:8px;line-height:1.8}.model-detail{font-size:11px;line-height:1.85;min-height:45px}.model-footnote{font-size:7px;display:block;line-height:1.9}.model-footnote span{display:block;margin-top:6px}
 .factory-band{padding-block:48px}.factory-rich-scene{width:auto;max-width:none;margin:30px -22px 16px}.factory-band .engineering-surface>.model-toolbar{justify-content:flex-start}.factory-band .model-detail{text-align:left;min-height:45px}.factory-band .model-footnote{margin-top:20px}
 .expertise{padding-block:56px}.expertise .section-top h2{font-size:35px}.expertise-row summary{padding:22px 0;align-items:start}.expertise-row h3{font-size:25px}.expertise-content{margin-top:35px}.expertise-body .body-copy{font-size:13px}.expertise-body{gap:17px}
 .spatial-band{height:auto;padding-block:56px;overflow:visible}.spatial-layout,.system-layout{grid-template-columns:1fr;gap:32px}.spatial-copy h2{font-size:39px;line-height:1.14}.spatial-copy .body-copy{font-size:13px}.spatial-topics{margin-top:26px;max-width:none}.spatial-topics li{font-size:11px;padding:13px 0}.spatial-model .model-stage{width:auto;margin:0 -18px}.spatial-model .model-stage svg{width:100%;height:auto;max-height:none}.spatial-model .model-detail{min-height:45px}
 .system-layout{gap:30px}.system-copy h2{font-size:41px}.system-graphic .model-stage{width:auto;margin:0 -18px}.system-graphic .model-stage svg{width:100%;height:auto;max-height:none}.system-graphic .model-toolbar{gap:5px 18px}.system-graphic .model-mode{font-size:10px}.system-graphic .model-detail{font-size:11px;line-height:1.8}.technology-line{font-size:10px;gap:8px 19px;margin-top:25px}
}
@media(max-width:360px){.expertise-row h3{font-size:23px}.spatial-copy h2{font-size:35px}.system-copy h2{font-size:37px}.hero-art .model-toolbar{gap:5px 15px}.hero-art .model-mode{font-size:9px}}
@media(prefers-reduced-motion:reduce){.model-stage [data-part]{transition:none}}
