@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500&display=swap');
:root{--bg:#090c10;--panel:#11161d;--line:#252b34;--blue:#63b1ff;--text:#f1f4f7;--muted:#939ca9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--bg);color:var(--text);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--blue);outline-offset:5px}header{height:90px;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid var(--line);padding:0 4%;position:sticky;top:0;z-index:20;background:#090c10e8;backdrop-filter:blur(18px)}.brand{font-size:23px;font-weight:800;letter-spacing:.12em;display:flex;align-items:center;gap:12px}.brand-icon{color:var(--blue);font-size:30px;letter-spacing:-.12em;border:1px solid #3e5a73;line-height:1;padding:5px 10px 6px 5px;transform:skew(-12deg)}.brand-dot{font-size:12px;align-self:flex-start;margin-top:10px;letter-spacing:0}nav{display:flex;gap:32px;font-size:14px;color:#adb5c0}nav a:hover{color:white}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 24px;border:1px solid var(--text);border-radius:30px;background:var(--text);color:#10151b;font-size:14px;font-weight:700;transition:transform .25s,background .25s}.button:hover{background:var(--blue);border-color:var(--blue);transform:translateY(-3px)}.button.outline{background:transparent;color:var(--text);border-color:#39414d}.button.outline:hover{background:#1c2734}.button.small{min-height:44px;padding:10px 20px}.menu{display:none;background:none;border:0;color:white;font-size:26px}.hero{position:relative;min-height:780px;height:calc(100svh - 90px);max-height:1050px;display:grid;grid-template-columns:1.1fr 1fr;padding:80px 4% 100px;overflow:hidden;background:radial-gradient(ellipse at 85% 45%,#16263866,transparent 55%)}.hero-copy{position:relative;z-index:2}.eyebrow{font-family:'IBM Plex Mono',monospace;letter-spacing:.14em;font-size:12px;color:var(--muted);margin:0 0 28px;display:flex;align-items:center;gap:12px}.eyebrow span{height:6px;width:6px;background:var(--blue)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(60px,6.7vw,106px);line-height:1.02;letter-spacing:-.065em;font-weight:500;margin-bottom:32px}h1 span,h2 span{color:var(--muted)}.lead{font-size:18px;line-height:1.7;color:#b8c0cb;margin-bottom:30px}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-note{font-size:13px;color:#75808e;margin-top:24px}.hero-art{position:relative;min-width:0;margin-left:-55px}canvas{width:100%;height:100%;display:block;touch-action:pan-y}.art-label{position:absolute;bottom:82px;left:9%;right:0;display:flex;justify-content:space-between;font:11px 'IBM Plex Mono',monospace;color:#78889a;letter-spacing:.08em;border-top:1px solid #2b3947;padding-top:16px}.art-controls{position:absolute;bottom:32px;left:9%;right:0;display:flex;justify-content:space-between;gap:10px;color:#7e8b9b;font-size:12px}.art-controls button{background:transparent;border:0;border-bottom:1px solid #657586;color:#c8d0d9;padding:0;font-size:12px}.hero-bottom{position:absolute;bottom:25px;left:4%;right:4%;display:flex;align-items:center;gap:22px;font:11px 'IBM Plex Mono',monospace;letter-spacing:.12em;color:#74808e}.scroll-line{height:1px;background:#34404d;flex:1}.ticker{padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;background:#0f141b}.ticker div{width:max-content;animation:ticker 40s linear infinite;letter-spacing:.06em;font-size:19px}.ticker b{color:var(--blue);padding:0 38px;font-weight:400}@keyframes ticker{to{transform:translateX(-35%)}}.section{padding:120px 6%;scroll-margin-top:20px}.section-head{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:20px}.section-head .eyebrow{grid-column:1/-1}.section-head h2{margin:0}.section-head>p:last-child{justify-self:end;color:var(--muted);font-size:16px}h2{font-size:clamp(36px,4.25vw,66px);font-weight:500;line-height:1.1;letter-spacing:-.055em}.services{margin-top:65px;border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:80px 1fr 60px;gap:30px;border-bottom:1px solid var(--line);padding:42px 0;transition:padding .4s,background .4s}.service:hover{padding-left:20px;background:#111821}.number{font:14px 'IBM Plex Mono',monospace;color:#6d7d8f;padding-top:7px}.service>div{display:grid;grid-template-columns:1fr 1fr;column-gap:60px}.service h3{font-size:28px;line-height:1.35;letter-spacing:-.025em;font-weight:500;margin-bottom:0}.service p{color:var(--muted);font-size:15px;max-width:450px;margin-bottom:20px}.tags{grid-column:2;display:flex;gap:7px;flex-wrap:wrap}.tags span{font-size:12px;padding:5px 12px;border:1px solid #29323d;border-radius:20px;color:#adb8c5}.service-plus{font-size:38px;font-weight:400;color:var(--blue)}.work-section{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;padding:35px 6% 100px}.work-image{position:relative;height:630px;overflow:hidden;border-radius:4px}.work-image img{height:100%;width:100%;object-fit:cover;filter:saturate(.65);transition:transform 1s}.work-image:hover img{transform:scale(1.04)}.photo-caption{position:absolute;bottom:0;left:0;right:0;padding:18px 24px;background:#070b10cc;font:11px 'IBM Plex Mono',monospace;color:#c3cedb;letter-spacing:.08em}.work-copy p:not(.eyebrow){color:var(--muted);max-width:410px;margin:30px 0}.text-link{border-bottom:1px solid var(--blue);padding-bottom:5px;color:var(--blue);font-size:14px}.process{background:#10151b;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:65px;gap:35px}.process-grid article{border-top:1px solid #3a4552;padding-top:25px}.process-grid article>span{color:var(--blue);font:13px 'IBM Plex Mono',monospace}.process-grid h3{font-size:21px;font-weight:500;margin:40px 0 16px}.process-grid p{font-size:15px;color:var(--muted)}.about-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:12%}.about-grid>div{color:var(--muted);padding-top:10px}.about-lead{font-size:24px;line-height:1.5;color:#d2d9e2}.about-detail{display:flex;gap:35px;border-top:1px solid var(--line);padding-top:25px;margin-top:40px;font:11px 'IBM Plex Mono',monospace;color:#7d8da0}.contact{background:radial-gradient(ellipse at 10% 80%,#17364f55,transparent 65%),#0f151d;display:grid;grid-template-columns:1.7fr 1fr;gap:10%;border-top:1px solid var(--line)}.contact h2{font-size:clamp(40px,4.5vw,70px)}.contact p{color:var(--muted)}.contact-email{display:block;color:var(--blue);font-size:clamp(23px,3vw,42px);letter-spacing:-.04em;margin:35px 0 25px}.contact-actions{display:flex;gap:10px;flex-wrap:wrap}.copy-status{min-height:24px;font-size:13px;margin-top:10px}.contact-details{padding-top:70px}.contact-details>div{padding:22px 0;border-bottom:1px solid #2a3442}.contact-details span{display:block;font:11px 'IBM Plex Mono',monospace;color:#7c8a9a;letter-spacing:.1em;margin-bottom:9px}.contact-details a{font-size:24px}.contact-details p{font-size:16px;color:#ced6e0;margin:0}footer{padding:35px 4%;display:flex;align-items:center;justify-content:space-between;gap:30px}footer>span{font:11px 'IBM Plex Mono',monospace;color:#718092;letter-spacing:.12em}footer>a:last-child{font-size:13px;color:#9ca8b8}.reveal{opacity:1;transform:none}.js-motion .reveal{opacity:0;transform:translateY(35px);transition:opacity .8s,transform .8s}.js-motion .reveal.visible{opacity:1;transform:translateY(0)}#fallback{position:absolute;inset:0;display:grid;place-items:center}#fallback[hidden]{display:none}#fallback img{width:90%;border-radius:15px}
@media(min-width:1600px){main{max-width:1900px;margin:auto}}@media(max-width:1050px){nav{gap:18px}.hero{padding-top:70px;min-height:740px}.hero-art{margin-left:-100px}.art-label{flex-direction:column;gap:8px}.section{padding:90px 5%}.work-section{padding:20px 5% 80px;gap:5%}.work-image{height:540px}.service>div{column-gap:30px}.process-grid{gap:20px}.contact{gap:6%}}@media(max-width:760px){header{height:76px;gap:12px;padding:0 5%}.brand{font-size:18px;gap:8px}.brand-icon{font-size:24px}.brand-dot{display:none}header .button{font-size:11px;padding:9px 13px;min-height:38px}nav{display:none;position:absolute;top:76px;left:0;right:0;background:#10151b;padding:24px;flex-direction:column;border-bottom:1px solid var(--line)}nav.open{display:flex}.menu{display:block}.hero{height:auto;max-height:none;min-height:0;grid-template-columns:1fr;padding:55px 6% 65px}.eyebrow{font-size:10px;letter-spacing:.1em}h1{font-size:clamp(58px,12vw,90px)}.lead{font-size:16px}.hero-note{font-size:12px}.hero-art{height:400px;margin:10px -15px 0}.art-label{left:5%;right:5%;bottom:60px;flex-direction:row;font-size:9px}.art-controls{left:5%;right:5%;bottom:20px;font-size:10px}.hero-bottom{font-size:9px;gap:12px}.hero-bottom>span:last-child{display:none}.ticker{padding:18px 0}.ticker div{font-size:14px}.ticker b{padding:0 24px}.section{padding:75px 6%}.section-head{display:block}.section-head>p:last-child{margin:25px 0 0}.services{margin-top:40px}.service{grid-template-columns:30px 1fr 20px;gap:14px;padding:30px 0}.service>div{display:block}.service h3{font-size:23px;margin-bottom:16px}.service p{font-size:14px}.service-plus{font-size:28px}.work-section{grid-template-columns:1fr;padding:0 6% 75px;gap:40px}.work-image{height:450px}.work-copy h2{font-size:43px}.process-grid{grid-template-columns:1fr 1fr;gap:35px 20px}.process-grid h3{margin-top:25px;font-size:19px}.process-grid p{font-size:14px}.about-grid{grid-template-columns:1fr;gap:15px}.about-lead{font-size:21px}.about-detail{font-size:9px}.contact{grid-template-columns:1fr;gap:0}.contact-details{padding-top:25px}.contact-actions .button{font-size:12px;padding:12px 18px}footer{flex-wrap:wrap;padding:30px 6%;gap:20px}footer>span{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker div{animation:none}.js-motion .reveal{opacity:1;transform:none;transition:none}.button{transition:none}}
/* Scroll-controlled assembly stories */
.animation-intro{padding-bottom:65px;border-top:1px solid var(--line)}.animation-intro>p:last-child{color:var(--muted);font-size:18px;line-height:1.6;max-width:620px;margin-top:25px}.assembly-story{height:470svh;position:relative;border-top:1px solid var(--line);background:#0b1016}.assembly-story[data-model=cabinet]{background:#0c1118}.assembly-sticky{position:sticky;top:90px;height:calc(100svh - 90px);min-height:620px;max-height:1100px;padding:24px 4% 18px;display:flex;flex-direction:column;overflow:hidden}.assembly-heading{display:grid;grid-template-columns:220px 1fr 290px;gap:25px;align-items:start}.assembly-heading .eyebrow{font-size:12px;margin:8px 0}.assembly-heading h2{font-size:clamp(30px,3vw,47px);line-height:1.12;margin:0;letter-spacing:-.035em}.assembly-heading>p:last-child{color:#a8b4c1;font-size:16px;line-height:1.5;margin:6px 0}.assembly-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:40px;flex:1;min-height:0;margin-top:18px}.assembly-view{position:relative;min-height:0;background:radial-gradient(ellipse at 45% 45%,#18273766,transparent 68%);border:1px solid #24313d;border-radius:4px}.assembly-view canvas{position:absolute;inset:0;width:100%;height:100%}.assembly-view-label{position:absolute;bottom:18px;left:22px;right:22px;display:flex;justify-content:space-between;color:#98acc0;font:12px 'IBM Plex Mono',monospace;pointer-events:none}.assembly-panel{display:flex;flex-direction:column;justify-content:center;gap:17px;min-height:0}.assembly-steps{display:flex;flex-direction:column}.assembly-step{display:flex;align-items:center;gap:15px;border:0;border-bottom:1px solid #26313c;padding:10px 2px;color:#99a9b9;background:transparent;text-align:left;font:14px Manrope,Arial,sans-serif;cursor:pointer;line-height:1.4;transition:color .2s,background .2s}.assembly-step>span:first-child{font:12px 'IBM Plex Mono',monospace;color:#6b8096;width:25px;flex-shrink:0}.assembly-step[aria-pressed=true]{color:#e8f4ff;background:#63b1ff0a}.assembly-step[aria-pressed=true]>span:first-child{color:#63b1ff}.assembly-step:focus-visible,.assembly-scroll:focus-visible{outline:2px solid #63b1ff;outline-offset:3px}.assembly-caption{min-height:117px}.assembly-count{font:12px 'IBM Plex Mono',monospace;color:#63b1ff}.assembly-caption h3{font-size:19px;margin:8px 0;line-height:1.35}.assembly-caption p{font-size:14px;color:#a8b4c1;margin:0;line-height:1.55}.assembly-range-label{display:flex;flex-direction:column;gap:8px;color:#a8b4c1;font-size:14px}.assembly-range{width:100%;accent-color:#63b1ff;cursor:pointer;min-height:22px}.assembly-scroll{background:transparent;border:0;border-bottom:1px solid #53687c;color:#bcd4ea;font:12px Manrope,sans-serif;padding:4px 0;cursor:pointer;text-align:left;width:fit-content}.assembly-scroll[hidden]{display:none}.assembly-foot{display:flex;justify-content:space-between;gap:30px;padding-top:16px;color:#889aac;font-size:12px;line-height:1.5}.assembly-foot>span:last-child{text-align:right;max-width:350px}.assembly-progress{height:2px;background:#243340;margin-top:15px}.assembly-progress span{display:block;height:100%;width:0;background:#63b1ff}.assembly-unavailable{position:absolute;inset:0;display:grid;place-items:center;padding:35px;color:#a8b4c1;font-size:16px;line-height:1.6}.assembly-unavailable[hidden]{display:none}
@media(max-height:800px) and (min-width:901px){.assembly-sticky{min-height:530px}.assembly-heading h2{font-size:32px}.assembly-step{padding:7px 2px}.assembly-panel{gap:10px}.assembly-caption{min-height:100px}.assembly-caption h3{font-size:17px}.assembly-foot{padding-top:10px}}
@media(max-width:1100px){.assembly-heading{grid-template-columns:160px 1fr}.assembly-heading>p:last-child{display:none}.assembly-layout{grid-template-columns:minmax(0,1fr) 275px;gap:24px}}
@media(max-width:760px){.assembly-story{height:430svh}.assembly-sticky{top:76px;height:calc(100svh - 76px);min-height:560px;padding:15px 5% 12px}.assembly-heading{display:block}.assembly-heading .eyebrow{margin:0 0 9px}.assembly-heading h2{font-size:27px}.assembly-heading h2 br{display:none}.assembly-layout{display:flex;flex-direction:column;gap:13px;margin-top:12px}.assembly-view{height:auto;min-height:190px;flex:1}.assembly-panel{gap:7px;flex:0;min-height:225px}.assembly-steps{flex-direction:row;gap:5px}.assembly-step{width:calc(100% / 6);padding:8px 0;justify-content:center;border:1px solid #26313c;min-height:36px}.assembly-step>span:first-child{width:auto;font-size:13px}.assembly-step>span:last-child{display:none}.assembly-caption{min-height:90px}.assembly-caption h3{font-size:18px;margin:5px 0}.assembly-caption p{font-size:14px}.assembly-range-label{font-size:12px;gap:2px}.assembly-foot{padding-top:8px;font-size:12px}.assembly-foot>span:last-child{display:none}.assembly-view-label{font-size:10px;bottom:10px;left:10px;right:10px}.assembly-progress{margin-top:8px}.assembly-scroll{font-size:12px}.animation-intro h2{font-size:43px}}
@media(prefers-reduced-motion:reduce){.assembly-story{height:auto}.assembly-sticky{position:relative;top:0;height:850px}.assembly-step{transition:none}}
.assembly-story[data-model=harness]{height:650svh}.assembly-story[data-model=cabinet]{height:520svh}.assembly-step{padding:7px 2px}.assembly-panel{gap:12px}.assembly-caption{min-height:130px}.assembly-view{background:#0d141c}.assembly-view-label{color:#b3bcc6}.assembly-heading>p:last-child{color:#aeb7c0}
@media(max-width:760px){.assembly-story[data-model=harness]{height:650svh}.assembly-step{width:auto;flex:1;padding:7px 0;min-width:0}.assembly-steps{gap:3px}.assembly-step>span:first-child{font-size:12px}.assembly-panel{gap:5px;min-height:255px}.assembly-caption{min-height:110px}.assembly-sticky{min-height:590px}.assembly-view{min-height:160px}.assembly-foot{font-size:12px}}
@media(max-height:800px) and (min-width:761px){.assembly-step{padding:5px 2px;font-size:13px}.assembly-caption{min-height:110px}.assembly-panel{gap:9px}}
@media(prefers-reduced-motion:reduce){.assembly-story[data-model]{height:auto}}
@media(max-width:760px){.assembly-sticky{min-height:0}.assembly-caption p{line-height:1.4}.assembly-panel{min-height:235px}}
@media(max-width:760px) and (max-height:700px){.assembly-heading h2{font-size:23px}.assembly-heading .eyebrow{font-size:12px;margin-bottom:5px}.assembly-view{min-height:120px}.assembly-panel{min-height:220px}.assembly-caption{min-height:95px}.assembly-caption h3{font-size:16px}.assembly-foot{display:none}}
.assembly-story[data-model=harness]{height:310svh}.assembly-story[data-model=cabinet]{height:290svh}.assembly-step{padding:6px 2px;font-size:13px}.assembly-steps{gap:0}
@media(max-width:760px){.assembly-story[data-model=harness]{height:310svh}.assembly-story[data-model=cabinet]{height:290svh}.assembly-steps{gap:2px}.assembly-step{padding:7px 0}.assembly-step>span:first-child{font-size:12px}.assembly-heading h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){.assembly-story[data-model]{height:auto}}
.assembly-step{padding:4px 2px;font-size:12px}.assembly-panel{gap:9px}.assembly-caption{min-height:110px}
@media(max-width:760px){.assembly-steps{flex-wrap:wrap}.assembly-step{flex:1 0 14%;padding:5px 0;min-height:29px}.assembly-panel{min-height:265px}.assembly-view{min-height:145px}.assembly-caption{min-height:105px}}
@media(max-width:760px) and (max-height:700px){.assembly-panel{min-height:235px}.assembly-view{min-height:95px}.assembly-caption{min-height:85px}}

.brand-logo{width:230px;max-width:100%;height:auto;display:block;filter:brightness(0) invert(1)}.brand{letter-spacing:0;flex-shrink:0}footer{flex-wrap:wrap}.company-legal{flex:0 0 100%;display:block;font-size:12px;line-height:1.7;color:#8c96a3;padding-top:20px;border-top:1px solid #252b34;letter-spacing:0}.connector-labels{position:absolute;inset:6% 0 10%;display:flex;flex-direction:column;justify-content:space-around;pointer-events:none;z-index:2;padding-left:18px;align-items:flex-start}.connector-labels span{font:12px 'IBM Plex Mono',monospace;color:#9dabb8;transform:translateY(-65px);background:#0d141cb0;padding:3px 7px;border-left:2px solid #5da8d3}.assembly-story[data-model=harness]{height:280svh}
@media(max-width:760px){.brand-logo{width:166px}.connector-labels{padding-left:6px;inset:0 0 8%}.connector-labels span{font-size:10px;transform:translateY(-18px);padding:1px 3px}.company-legal{font-size:12px}.assembly-story[data-model=harness]{height:300svh}}

.connector-views{display:flex;flex-wrap:wrap;gap:5px}.connector-views button{padding:5px 9px;background:transparent;border:1px solid #354351;color:#a7bacb;border-radius:5px;font-size:12px}.connector-views button[aria-pressed=true]{background:#263b4b;color:#fff;border-color:#74aed0}.connector-views button:focus-visible{outline:2px solid #63b1ff;outline-offset:2px}.connector-labels{inset:3% 0 7%}.connector-labels span{transform:translateY(-35px)}.assembly-story[data-model=harness]{height:320svh}.assembly-panel{gap:8px}
@media(max-width:760px){.connector-views button{padding:3px 6px;font-size:12px}.connector-labels span{transform:translateY(-8px);font-size:10px}.assembly-panel{min-height:285px}.assembly-steps .assembly-step{flex-basis:17%}}

/* Service carousel links and larger brand */
.ticker .ticker-track{display:flex;animation:ticker-links 44s linear infinite}
.ticker-group{display:flex;align-items:center;flex-shrink:0;white-space:nowrap}
.ticker a{display:inline-block;padding:6px 0;transition:color .2s}
.ticker a:hover{color:var(--blue)}
.ticker:hover .ticker-track,.ticker:focus-within .ticker-track{animation-play-state:paused}
@keyframes ticker-links{to{transform:translateX(-50%)}}
.service{scroll-margin-top:110px}
.brand-logo{width:290px}
.company-legal{text-align:center}
@media(min-width:761px) and (max-width:1200px){header{gap:18px}header .brand-logo{width:240px}nav{gap:16px;font-size:13px}}
@media(max-width:760px){.brand-logo{width:205px}header .brand{min-width:0;flex-shrink:1}header .brand-logo{width:205px}header .button.small{display:none}.service{scroll-margin-top:95px}}
@media(prefers-reduced-motion:reduce){.ticker .ticker-track{animation:none;flex-wrap:wrap;width:100%;padding:0 6%}.ticker-group{flex-wrap:wrap;white-space:normal}.ticker-group+ .ticker-group{display:none}.ticker b{padding:0 15px}}

.assembly-story[data-model=harness]{height:340svh}.connector-labels{padding:0 18px;align-items:flex-end;inset:2% 0 8%}.connector-labels span{transform:none;font-size:11px}.connector-views{flex-wrap:wrap}@media(max-width:760px){.assembly-story[data-model=harness]{height:360svh}.connector-labels{padding:0 5px}.connector-labels span{font-size:9px}}

/* Keep the complete assembly surface within the visible viewport. */
.assembly-sticky{height:calc(100dvh - 90px);min-height:0;max-height:none;padding:14px 3% 10px}
.assembly-heading{grid-template-columns:170px 1fr 280px;gap:15px;flex-shrink:0}.assembly-heading h2{font-size:clamp(24px,2.4vw,36px)}
.assembly-layout{margin-top:10px;gap:20px;min-height:0}.assembly-panel{min-height:0;gap:6px;overflow:auto}.assembly-caption{min-height:0}.assembly-caption p{font-size:13px}.assembly-caption h3{font-size:17px;margin:4px 0}.assembly-step{padding:4px 2px}.assembly-foot{flex-shrink:0;padding-top:8px}.assembly-progress{flex-shrink:0;margin-top:7px}
.assembly-story[data-model=harness]{height:460svh}.connector-labels span{font-size:10px;background:#0d141cdd}.connector-labels{inset:2% 0 8%;justify-content:space-around}
@media(max-height:720px) and (min-width:761px){.assembly-heading .eyebrow,.assembly-heading>p:last-child,.assembly-foot{display:none}.assembly-heading{display:block}.assembly-heading h2{font-size:25px}.assembly-heading h2 br{display:none}.assembly-panel{gap:4px}.assembly-caption p{font-size:12px}.assembly-steps{display:grid;grid-template-columns:1fr 1fr}.assembly-step{font-size:11px;gap:5px}.assembly-range-label{font-size:12px}}
@media(max-width:760px){.assembly-sticky{top:76px;height:calc(100dvh - 76px);min-height:0;padding:10px 4%}.assembly-heading{display:block}.assembly-heading .eyebrow,.assembly-heading>p:last-child,.assembly-foot{display:none}.assembly-heading h2{font-size:21px}.assembly-layout{display:grid;grid-template-columns:1fr;grid-template-rows:minmax(100px,1fr) auto;gap:7px}.assembly-view{min-height:0;height:100%}.assembly-panel{min-height:0;gap:4px;overflow:visible}.assembly-steps{flex-wrap:nowrap}.assembly-step{min-height:25px}.assembly-caption p{font-size:12px;line-height:1.3}.assembly-caption h3{font-size:15px}.assembly-count{display:none}.assembly-range-label{font-size:12px}.connector-views button{padding:3px 5px;font-size:11px}.connector-labels{display:none}.assembly-view-label{font-size:9px}.assembly-story[data-model=harness]{height:470svh}}
@media(prefers-reduced-motion:reduce){.assembly-story[data-model=harness]{height:auto}.assembly-sticky{position:relative;top:0;height:calc(100dvh - 90px)}}

.hero-connector-options{position:absolute;top:0;left:9%;right:0;z-index:4;display:flex;flex-wrap:wrap;gap:7px}.hero-connector-options button{font:13px Manrope,Arial,sans-serif;min-height:36px;padding:7px 12px;color:#b7c4d1;background:#101923d9;border:1px solid #344556;border-radius:6px;cursor:pointer}.hero-connector-options button[aria-pressed=true]{color:#fff;background:#263e53;border-color:#63b1ff}.hero-connector-options button:hover{border-color:#63b1ff}.hero-connector-options button:focus-visible{outline:2px solid #63b1ff;outline-offset:3px}@media(max-width:760px){.hero-connector-options{left:5%;right:5%;top:5px;gap:5px}.hero-connector-options button{font-size:12px;padding:5px 8px;min-height:32px}}

.location-map{width:100%;margin-top:60px;background:#101820;border-top:1px solid #263340}.location-map-heading{max-width:1440px;margin:auto;padding:42px 5vw;display:flex;align-items:center;justify-content:space-between;gap:24px}.location-map-heading h2{font-size:clamp(28px,4vw,46px);margin:8px 0 14px}.location-map-heading p:not(.eyebrow){color:#aab8c5;line-height:1.7}.location-map iframe{display:block;width:100%;height:440px;border:0}.location-map-heading .button{flex-shrink:0}@media(max-width:640px){.location-map-heading{align-items:flex-start;flex-direction:column;padding:30px 6vw}.location-map iframe{height:340px}}
