/* A stronger navigation rhythm and a focused mechanism presentation. */
.site-header{background:#fff;border-bottom:1px solid #e7e8e7;box-shadow:0 3px 18px #17212b05}
.site-header .header-inner{height:90px;gap:30px}
.site-header .wordmark{font-size:2.08rem;font-weight:770;letter-spacing:-.065em}
.site-header .wordmark>span:first-child{font-weight:560}
.site-header nav{gap:7px;font-size:1rem;font-weight:640}
.site-header nav a{padding:13px 15px;border-radius:7px;transition:background .15s,color .15s}
.site-header nav a:hover,.site-header nav a[aria-current=location]{background:#fff0e8;color:#993d15}
.site-header .header-tools{gap:20px}
.site-header .header-contact{font-size:.9rem;min-height:48px;padding-inline:22px;border-radius:7px}
.language-switch{gap:7px;border:1px solid #e9e9e7;border-radius:6px;padding:2px 5px;background:#f6f6f4}
.language-switch button{font-size:.8rem;padding:8px 4px}
.assembly-stage{height:clamp(340px,34vw,430px)}
.assembly-caption{font-size:.875rem}
.assembly-caption>div{max-width:650px}
.assembly-degree{font-size:.875rem;font-weight:650}
.assembly-toggle{font-size:.8rem}
.flow-module{border-color:#39474f;border-radius:12px;box-shadow:0 16px 45px #17212b0b}
.flow-tablist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:9px;gap:7px;background:#1b2329;border-bottom:1px solid #39454d}
.flow-tab{display:flex;align-items:center;gap:13px;min-height:78px;padding:14px 18px;border:1px solid transparent;border-radius:7px;color:#bac7cf}
.flow-tab-number{display:inline-flex;align-items:center;justify-content:center;width:31px;height:31px;flex:none;margin:0;border:1px solid #56656d;border-radius:50%;font-size:.78rem;font-weight:650;color:#b5c2ca}
.flow-tab-label{font-size:1.1rem;font-weight:650;line-height:1.4}
.flow-tab-subtitle{display:block;margin:2px 0 0;font-size:.82rem;font-weight:450;color:#a7b8c1}
.flow-tab[aria-selected=true]{background:#35434c;border-color:#52616a;color:#fff;box-shadow:inset 0 -3px #ff995e}
.flow-tab[aria-selected=true] .flow-tab-number{background:#ff9b65;border-color:#ff9b65;color:#19232a}
.flow-tab[aria-selected=true] .flow-tab-subtitle{color:#d0dbe1}
.flow-tab:hover{background:#2b3942}
.flow-panel{grid-template-columns:1.65fr 1fr;gap:30px;padding:28px;align-items:center}
.flow-media{aspect-ratio:8 / 5;border-radius:7px;overflow:hidden;isolation:isolate}
#flow-panel-engage .flow-media img,#flow-panel-engage .flow-media video{transform:none;transform-origin:center}
.flow-copy{padding:0}
.flow-copy .flow-kicker{font-size:.8rem;letter-spacing:.09em;margin-bottom:15px}
.flow-copy h3{font-size:clamp(25px,2.2vw,34px);line-height:1.18;letter-spacing:-.035em;margin-bottom:17px}
.flow-copy .flow-summary{font-size:1rem;line-height:1.7;color:#c2ced6}
.flow-facts{display:grid;gap:9px;list-style:none;padding:0;margin-top:23px;border:0}
.flow-facts li{padding:12px 15px;background:#29353d;border:1px solid #3b4a53;border-left:3px solid #89cbd3;border-radius:5px;font-size:.875rem;line-height:1.6;color:#d5dfe5}
.flow-facts li:before{display:none}
.flow-facts li:nth-child(2){border-left-color:#ece5d7}
.flow-facts li:nth-child(3){border-left-color:#ff9b65}
.flow-toolbar{min-height:46px;padding:2px 0;border:0;margin-top:8px}
.flow-toolbar .flow-scene-state{font-size:.8rem;color:#b7c4cc}
.flow-toolbar .flow-image-play,.flow-toolbar .flow-image-play.is-compact{width:44px;height:44px;padding:12px;border:0;background:transparent;box-shadow:none;border-radius:50%;color:#c0ccd4}
.flow-toolbar .flow-image-play:hover{background:#ffffff0c;color:white}
.flow-image-play svg{width:20px;height:20px;fill:currentColor;display:block}
.flow-image-play .control-pause,.flow-image-play.is-playing .control-play{display:none}
.flow-image-play.is-playing .control-pause{display:block}
.flow-legend{font-size:.8rem;padding-top:2px;line-height:1.6}
.flow-cutaway{font-size:.75rem;margin-top:8px;color:#9bacb7}
.flow-footer{padding:13px 28px;background:#1d272f;border-color:#3c4a54}
.flow-footer .flow-status{font-size:.75rem;color:#bcc9d2}
.flow-footer .flow-caption{font-size:.75rem;color:#a4b5c0}
.flow-wheel-leaders,.flow-wire-anchor{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;fill:none;stroke:#86cbd2;stroke-width:1.5;vector-effect:non-scaling-stroke}
.flow-wheel-leaders line:last-child{stroke:#e9e1d2}
.flow-wire-anchor{stroke:#b4eef1;stroke-width:2}
.flow-wire-anchor circle{fill:#20272d}
.flow-wheel-labels{position:absolute;inset:0;z-index:2;pointer-events:none}
.flow-wheel-label{position:absolute;right:3%;top:35%;transform:translateY(-50%);width:30.5%;display:flex;align-items:center;gap:8px;padding:8px 10px;background:#24333bf0;border:1px solid #536771;border-radius:5px;color:#dfebef;font-size:14px;font-weight:550;line-height:1.5}
.flow-wheel-label:last-child{top:66%}
.flow-wheel-label:before{content:'';width:8px;height:8px;border-radius:50%;background:#86cbd2;flex:none}
.flow-wheel-label:last-child:before{background:#e9e1d2}
@media(max-width:1100px){
.site-header .header-inner{gap:15px}
.site-header .wordmark{font-size:1.95rem}
.site-header nav{font-size:.92rem;gap:2px}
.site-header nav a{padding-inline:10px}
.site-header .header-tools{gap:12px}
.flow-panel{padding:23px;gap:23px;grid-template-columns:1.5fr 1fr}
.flow-copy h3{font-size:26px}
.flow-facts li{padding:10px 12px}
}
@media(max-width:900px){
.site-header .header-inner{height:78px;position:relative}
.site-header .header-tools{margin-left:auto}
.site-header .header-contact{display:none}
.site-header nav{display:none;position:absolute;top:78px;left:-36px;right:-36px;margin:0;padding:12px 25px 18px;background:white;border-bottom:1px solid #e3e4e2;box-shadow:0 12px 20px #1823300a}
.site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:4px}
.site-header nav a{padding:14px 15px;font-size:1rem;min-height:48px}
.site-header .menu-button{display:block;border:1px solid #dcdedc;border-radius:6px;background:#f6f6f3;padding:10px 14px;min-height:44px;font-size:.875rem;font-weight:600}
nav .mobile-contact-link{display:block}
.flow-panel{grid-template-columns:1fr;padding:24px;gap:26px}
.flow-copy{max-width:none}
.flow-facts{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:20px}
.flow-facts li{font-size:.875rem}
.flow-wheel-label{font-size:14px}
}
@media(max-width:700px){
html{scroll-padding-top:90px}
.site-header .header-inner{height:74px}
.site-header .wordmark{font-size:1.86rem}
.site-header nav{top:74px;left:-20px;right:-20px;padding:10px 16px 15px}
.site-header .header-tools{gap:10px}
.language-switch{gap:4px;padding:1px 3px}
.language-switch button{font-size:.76rem;padding:8px 3px}
.site-header .menu-button{padding-inline:11px;font-size:.82rem}
.assembly-stage{height:270px}
.assembly-caption{font-size:.8rem;gap:12px}
.assembly-caption>div{max-width:230px;align-items:baseline;padding-top:8px}
.assembly-toggle{max-width:100px;font-size:.78rem}
.flow-module{border-radius:9px}
.flow-tablist{padding:6px;gap:4px}
.flow-tab{padding:11px 6px;min-height:62px;gap:7px;justify-content:center}
.flow-tab-number{width:24px;height:24px;font-size:.7rem}
.flow-tab-label{font-size:.9rem}
.flow-tab-subtitle{display:none}
.flow-panel{padding:16px 15px 23px;gap:20px}
.flow-copy h3{font-size:27px}
.flow-copy .flow-summary{font-size:1rem}
.flow-facts{grid-template-columns:1fr;gap:8px}
.flow-facts li{padding:11px 12px}
.flow-toolbar .flow-scene-state{font-size:.78rem;flex-basis:auto}
.flow-toolbar{flex-wrap:nowrap;padding-top:0}
.flow-legend{font-size:.78rem;gap:10px}
.flow-footer{padding:11px 15px;gap:5px}
.flow-footer .flow-status,.flow-footer .flow-caption{font-size:.75rem}
.flow-wheel-label{font-size:14px;padding:5px 6px;gap:5px}
}
@media(prefers-reduced-motion:reduce){.site-header nav a{transition:none}}
