.op-page--how-build{overflow-x:clip;background:var(--color-paper);color:var(--color-copy)}.op-page--how-build :is(h1,h2,h3){color:inherit;text-wrap:pretty}.how-build-reading-progress{--how-build-reading-progress: 0;position:fixed;top:calc(4.75rem + 1.5px);right:0;left:0;z-index:1190;height:2px;overflow:hidden;pointer-events:none;background:color-mix(in srgb,var(--color-accent-soft) 12%,transparent)}.how-build-reading-progress span{display:block;width:100%;height:100%;background:var(--color-accent);opacity:.88;transform:scaleX(var(--how-build-reading-progress));transform-origin:left center;transition:transform 90ms linear;will-change:transform}.op-page--how-build .how-build-hero{min-height:clamp(39rem,62vh,46rem);padding-block:clamp(3.5rem,5.5vw,5.25rem);isolation:isolate;background:var(--color-ink);background-image:none}.op-page--how-build .how-build-hero:after{display:none}.op-page--how-build .how-build-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.94fr) minmax(28rem,1.06fr);gap:clamp(2.5rem,5vw,5rem);align-items:center}.op-page--how-build .op-hero-copy{display:grid;max-width:none;gap:0}.op-page--how-build .op-brand-mark{margin:0 0 clamp(1.25rem,2vw,1.75rem)}.op-page--how-build .op-hero h1{max-width:13ch;margin:0 0 clamp(1.25rem,2vw,1.75rem);font-size:clamp(3.35rem,4.6vw,5.7rem);line-height:.98;letter-spacing:-.052em}.op-page--how-build .op-hero .op-lede{width:100%;max-width:52rem;margin:0 0 clamp(1.25rem,2vw,1.75rem);color:var(--color-shell-copy);font-size:clamp(1.08rem,1.45vw,1.3rem);line-height:1.62}.op-page--how-build .op-hero .button-row{margin-bottom:clamp(1.25rem,2vw,1.75rem)}.op-page--how-build .op-hero-note{width:100%;max-width:52rem;margin:0;padding-top:var(--spacing-md);color:var(--color-shell-muted)}.op-page--how-build .how-build-hero-media{position:relative;width:100%;margin:0;overflow:hidden;aspect-ratio:16 / 10;border:1px solid var(--color-shell-rule-strong);background:var(--color-shell-panel)}.op-page--how-build .how-build-hero-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.op-page--how-build .op-section{padding-block:clamp(3rem,5vw,4.75rem)}.op-page--how-build .how-build-section-head{display:grid;width:100%;gap:clamp(.85rem,1.4vw,1.25rem);margin-bottom:clamp(2rem,3.5vw,3rem)}.op-page--how-build .how-build-section-head h2,.op-page--how-build .how-build-cta h2{width:100%;max-width:none;margin:0;font-size:clamp(2.55rem,3.5vw,3.75rem);line-height:1.05;letter-spacing:-.045em}.op-page--how-build .how-build-section-head>p:not(.op-kicker){width:100%;max-width:none;margin:0;color:var(--color-mute);font-size:clamp(1.05rem,1.25vw,1.18rem);line-height:1.65}.op-page--how-build .op-kicker{color:var(--color-accent)}.op-page--how-build .how-build-method{background:var(--color-paper)}.op-page--how-build .how-build-path-board{position:relative;overflow:hidden;padding:clamp(1.25rem,2.5vw,2.25rem);border:1px solid var(--color-rule);background-color:var(--color-blue-wash)}.op-page--how-build .how-build-route{position:absolute;inset:clamp(1.25rem,2.5vw,2.25rem);z-index:0;width:calc(100% - (clamp(1.25rem,2.5vw,2.25rem)*2));height:calc(100% - (clamp(1.25rem,2.5vw,2.25rem)*2));overflow:visible;pointer-events:none}.op-page--how-build :is(.how-build-route-rail,.how-build-route-line){fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.op-page--how-build .how-build-route-rail{stroke:var(--color-rule);stroke-width:12}.op-page--how-build .how-build-route-line{stroke:var(--color-accent);stroke-width:3;stroke-dasharray:1;stroke-dashoffset:0}.op-page--how-build .how-build-path-steps{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(14rem,1fr));column-gap:clamp(8rem,12vw,14rem);row-gap:clamp(4.5rem,6vw,6rem);margin:0;padding:0;list-style:none}.op-page--how-build .how-build-path-step{position:relative;display:flex;min-width:0;min-height:14rem}.op-page--how-build .how-build-path-step:nth-child(1){grid-area:1 / 1}.op-page--how-build .how-build-path-step:nth-child(2){grid-area:1 / 2}.op-page--how-build .how-build-path-step:nth-child(3){grid-area:2 / 2}.op-page--how-build .how-build-path-step:nth-child(4){grid-area:2 / 1}.op-page--how-build .how-build-path-step:nth-child(5){grid-area:3 / 1}.op-page--how-build .how-build-path-step:nth-child(6){grid-area:3 / 2}.op-page--how-build .how-build-step-card{display:grid;width:100%;height:100%;min-height:14rem;padding:clamp(1rem,1.65vw,1.4rem);align-content:start;gap:.5rem;color:var(--color-shell-bright);border:1px solid var(--color-shell-rule-emphasis);border-top:3px solid var(--color-accent);background:#001a33f5;box-shadow:none;transition:border-color .22s ease,background-color .22s ease,transform .26s ease}.op-page--how-build .how-build-step-card:is(:hover,:focus-within){border-color:var(--color-accent);background:#003366f7;transform:translateY(-.2rem)}.op-page--how-build .how-build-step-heading,.op-page--how-build .how-build-handover-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.op-page--how-build :is(.how-build-step-heading,.how-build-handover-heading) svg{width:1.75rem;height:1.75rem;flex:0 0 auto;color:var(--color-ink-soft)}.op-page--how-build .how-build-step-heading svg{color:var(--color-accent)}.op-page--how-build .how-build-step-heading .op-number{color:var(--color-shell-muted)}.op-page--how-build .how-build-step-card h3,.op-page--how-build .how-build-handover-card h3{margin:.1rem 0 0;font-size:clamp(1.55rem,2.1vw,2rem);line-height:1.12}.op-page--how-build .how-build-step-card>p:not(.how-build-step-output),.op-page--how-build .how-build-handover-card>p{margin:0;color:var(--color-mute);font-size:clamp(1rem,1.15vw,1.1rem);line-height:1.55}.op-page--how-build .how-build-step-card>p:not(.how-build-step-output){color:var(--color-shell-copy)}.op-page--how-build .how-build-step-output{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.75rem;margin:.1rem 0 0;padding-top:.8rem;color:var(--color-shell-copy);font-size:clamp(.94rem,1.05vw,1.02rem);line-height:1.5;border-top:1px solid var(--color-shell-rule)}.op-page--how-build .how-build-step-output b{color:var(--color-accent);font-family:var(--font-mono);font-size:.7rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.op-page--how-build .how-build-rhythm{color:var(--color-shell-bright);background:var(--color-shell-panel)}.op-page--how-build .how-build-rhythm .how-build-section-head>p{color:var(--color-shell-copy)}.op-page--how-build .how-build-stage-switcher{position:relative}.op-page--how-build .how-build-stage-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.op-page--how-build .how-build-stage-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:.75rem}.op-page--how-build .how-build-stage-label{display:grid;min-height:7rem;padding:clamp(1rem,1.6vw,1.35rem);align-content:space-between;gap:1.25rem;color:var(--color-shell-copy);border:1px solid var(--color-shell-rule-strong);background:var(--color-ink);cursor:pointer;transition:border-color .22s ease,background-color .22s ease,color .22s ease}.op-page--how-build .how-build-stage-label:is(:hover,:focus-visible){color:var(--color-shell-bright);border-color:var(--color-accent);background:#123553}.op-page--how-build .how-build-stage-label strong{font-size:clamp(1.2rem,1.6vw,1.55rem);line-height:1.15}.op-page--how-build #how-build-stage-0:checked~.how-build-stage-track label[for=how-build-stage-0],.op-page--how-build #how-build-stage-1:checked~.how-build-stage-track label[for=how-build-stage-1],.op-page--how-build #how-build-stage-2:checked~.how-build-stage-track label[for=how-build-stage-2],.op-page--how-build #how-build-stage-3:checked~.how-build-stage-track label[for=how-build-stage-3]{color:var(--color-shell-bright);border-color:var(--color-accent);background:var(--color-ink-soft)}.op-page--how-build #how-build-stage-0:focus-visible~.how-build-stage-track label[for=how-build-stage-0],.op-page--how-build #how-build-stage-1:focus-visible~.how-build-stage-track label[for=how-build-stage-1],.op-page--how-build #how-build-stage-2:focus-visible~.how-build-stage-track label[for=how-build-stage-2],.op-page--how-build #how-build-stage-3:focus-visible~.how-build-stage-track label[for=how-build-stage-3]{outline:2px solid var(--color-accent);outline-offset:3px}.op-page--how-build .how-build-stage-panels{min-height:22rem}.op-page--how-build .how-build-stage-panel{display:none;grid-template-columns:minmax(15rem,.58fr) minmax(0,1.42fr);min-height:22rem;border:1px solid var(--color-shell-rule-strong);background:var(--color-ink)}.op-page--how-build #how-build-stage-0:checked~.how-build-stage-panels [data-stage-panel="0"],.op-page--how-build #how-build-stage-1:checked~.how-build-stage-panels [data-stage-panel="1"],.op-page--how-build #how-build-stage-2:checked~.how-build-stage-panels [data-stage-panel="2"],.op-page--how-build #how-build-stage-3:checked~.how-build-stage-panels [data-stage-panel="3"]{display:grid}.op-page--how-build .how-build-stage-intro{display:grid;padding:clamp(1.5rem,3vw,2.5rem);align-content:center;gap:1rem;border-right:1px solid var(--color-shell-rule-strong)}.op-page--how-build .how-build-stage-intro h3{margin:0;color:var(--color-shell-bright);font-size:clamp(2.2rem,3.5vw,3.6rem);line-height:1;letter-spacing:-.045em}.op-page--how-build .how-build-stage-intro>p:last-child{margin:0;color:var(--color-shell-copy);font-size:clamp(1.02rem,1.2vw,1.14rem);line-height:1.6}.op-page--how-build .how-build-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.op-page--how-build .how-build-role{display:grid;min-height:11rem;padding:clamp(1.25rem,2.2vw,2rem);align-content:center;gap:.75rem;border-bottom:1px solid var(--color-shell-rule-strong);border-left:1px solid var(--color-shell-rule-strong);background:#17334b}.op-page--how-build .how-build-role:nth-child(n+3){border-bottom:0}.op-page--how-build .how-build-role.is-output{background:var(--color-ink-soft)}.op-page--how-build .how-build-role>p:last-child{margin:0;color:var(--color-shell-copy);font-size:clamp(.98rem,1.1vw,1.08rem);line-height:1.55}.op-page--how-build .how-build-handover{background:var(--color-paper-warm)}.op-page--how-build .how-build-handover-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none}.op-page--how-build .how-build-handover-card{display:grid;grid-column:span 2;min-height:14rem;padding:clamp(1.25rem,2vw,1.75rem);align-content:start;gap:.8rem;border:1px solid var(--color-rule);background:var(--color-paper);box-shadow:none;transition:border-color .22s ease,transform .26s ease}.op-page--how-build .how-build-handover-card:nth-child(n+4){grid-column:span 3}.op-page--how-build .how-build-handover-card:is(:hover,:focus-within){border-color:var(--color-accent);transform:translateY(-.2rem)}.op-page--how-build .how-build-handover-card>p{margin-top:auto}.op-page--how-build .how-build-cta{color:var(--color-shell-bright);background:var(--color-ink-soft)}.op-page--how-build .how-build-cta-inner{display:grid;justify-items:center;gap:clamp(1.25rem,2vw,1.75rem);text-align:center}.op-page--how-build .how-build-cta h2{max-width:29ch}.op-page--how-build .how-build-cta-inner>p{width:100%;max-width:62rem;margin:0;color:var(--color-shell-copy);font-size:clamp(1.05rem,1.25vw,1.18rem);line-height:1.65}.op-page--how-build .how-build-cta .btn-secondary{color:var(--color-shell-bright);border-color:var(--color-shell-rule-emphasis)}.op-page--how-build .how-build-cta .btn-secondary:is(:hover,:focus-visible){color:var(--color-paper);border-color:var(--color-accent)}@media(prefers-reduced-motion:no-preference){html.how-build-motion-ready [data-how-build-route-state=pending] .how-build-route-line{--how-build-route-offset: 1;stroke-dashoffset:var(--how-build-route-offset);will-change:stroke-dashoffset}html.how-build-motion-ready [data-how-build-route-state=pending][data-how-build-route-direction=up] .how-build-route-line{--how-build-route-offset: -1}html.how-build-motion-ready [data-how-build-route-state=visible] .how-build-route-line{stroke-dashoffset:0;transition:stroke-dashoffset 1.45s cubic-bezier(.22,1,.36,1);will-change:stroke-dashoffset}html.how-build-motion-ready [data-how-build-reveal=visible]{transition:opacity .64s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);transition-delay:var(--how-build-reveal-delay, 0ms)}html.how-build-motion-ready [data-how-build-reveal=pending]{--how-build-reveal-distance: clamp(1.45rem, 2.25vw, 2rem);--how-build-reveal-y: var(--how-build-reveal-distance);opacity:0;transform:translate3d(0,var(--how-build-reveal-y),0) scale(.994);will-change:opacity,transform}html.how-build-motion-ready [data-how-build-reveal=pending][data-how-build-reveal-direction=up]{--how-build-reveal-y: calc(-1 * var(--how-build-reveal-distance))}html.how-build-motion-ready [data-how-build-reveal=visible]{opacity:1;transform:translateZ(0) scale(1)}html.how-build-motion-ready :is(.how-build-step-card,.how-build-stage-label,.how-build-handover-card)[data-how-build-reveal=pending]{--how-build-reveal-distance: clamp(.9rem, 1.4vw, 1.2rem)}}@media(max-width:64rem){.op-page--how-build .how-build-hero-grid{grid-template-columns:1fr}.op-page--how-build .op-hero-copy{width:min(100%,54rem)}.op-page--how-build .op-hero h1{max-width:16ch}.op-page--how-build .how-build-hero-media{width:min(100%,54rem);margin-inline:auto}.op-page--how-build .how-build-path-steps{grid-template-rows:repeat(3,minmax(16rem,1fr));column-gap:clamp(5rem,9vw,7rem);row-gap:clamp(3.5rem,5vw,4.5rem)}.op-page--how-build .how-build-stage-panel{grid-template-columns:1fr}.op-page--how-build .how-build-stage-intro{border-right:0;border-bottom:1px solid var(--color-shell-rule-strong)}.op-page--how-build .how-build-handover-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.op-page--how-build .how-build-handover-card,.op-page--how-build .how-build-handover-card:nth-child(n+4){grid-column:auto}.op-page--how-build .how-build-handover-card:last-child{grid-column:1 / -1}}@media(max-width:52rem){.op-page--how-build .how-build-path-board{--how-build-mobile-content-left: 3.5rem;--how-build-mobile-route-center: 2.0625rem;overflow:visible;padding:1rem 1rem 1rem 3.5rem}.op-page--how-build .how-build-path-board:before,.op-page--how-build .how-build-path-board:after{content:"";position:absolute;top:1rem;bottom:1rem;left:1.75rem;border-radius:999px}.op-page--how-build .how-build-path-board:before{width:10px;background:var(--color-rule)}.op-page--how-build .how-build-path-board:after{left:calc(1.75rem + 3.5px);width:3px;background:var(--color-accent)}.op-page--how-build .how-build-route{display:none}.op-page--how-build .how-build-path-steps{grid-template-columns:1fr;grid-template-rows:none;gap:1rem}.op-page--how-build .how-build-path-step,.op-page--how-build .how-build-path-step:nth-child(n){grid-area:auto;min-height:0}.op-page--how-build .how-build-path-step:before{content:"";position:absolute;top:1.55rem;left:calc(var(--how-build-mobile-route-center) - var(--how-build-mobile-content-left) - .45rem);z-index:2;width:.9rem;height:.9rem;border:2px solid var(--color-paper);border-radius:50%;background:var(--color-accent)}.op-page--how-build .how-build-path-step:after{content:"";position:absolute;top:1.95rem;left:calc(var(--how-build-mobile-route-center) - var(--how-build-mobile-content-left));width:calc(var(--how-build-mobile-content-left) - var(--how-build-mobile-route-center));height:2px;background:var(--color-accent)}.op-page--how-build .how-build-step-card{height:auto;min-height:0;border-top:1px solid var(--color-shell-rule-emphasis);border-left:3px solid var(--color-accent)}.op-page--how-build .how-build-stage-track{grid-template-columns:repeat(2,minmax(0,1fr))}.op-page--how-build .how-build-role-grid{grid-template-columns:1fr}.op-page--how-build .how-build-role,.op-page--how-build .how-build-role:nth-child(n+3){min-height:0;border-bottom:1px solid var(--color-shell-rule-strong);border-left:0}.op-page--how-build .how-build-role:last-child{border-bottom:0}}@media(max-width:52rem)and (prefers-reduced-motion:no-preference){html.how-build-motion-ready [data-how-build-route-state=pending]:after{transform:scaleY(0);transform-origin:50% 0;will-change:transform}html.how-build-motion-ready [data-how-build-route-state=pending][data-how-build-route-direction=up]:after{transform-origin:50% 100%}html.how-build-motion-ready [data-how-build-route-state=visible]:after{transform:scaleY(1);transition:transform 1.45s cubic-bezier(.22,1,.36,1);will-change:transform}}@media(max-width:45rem){.how-build-reading-progress{top:calc(4.45rem + 1.5px)}.op-page--how-build .how-build-hero{min-height:auto;padding-block:var(--spacing-2xl)}.op-page--how-build .op-hero h1{max-width:100%;font-size:clamp(2.65rem,11.5vw,3.65rem)}.op-page--how-build .op-hero .button-row,.op-page--how-build .how-build-cta .button-row{display:grid;grid-template-columns:1fr;width:100%}.op-page--how-build :is(.op-hero,.how-build-cta) :is(.btn-primary,.btn-secondary){width:100%;min-width:0;white-space:normal;text-align:center}.op-page--how-build .op-section{padding-block:clamp(2.5rem,10vw,3.5rem)}.op-page--how-build .how-build-section-head h2,.op-page--how-build .how-build-cta h2{font-size:clamp(2.3rem,10vw,3rem)}.op-page--how-build .how-build-path-board{--how-build-mobile-content-left: 3.25rem;padding:.75rem .75rem .75rem 3.25rem}.op-page--how-build .how-build-step-card{width:100%;background:#001a33f0}.op-page--how-build .how-build-path-step .how-build-step-card{border-right:1px solid var(--color-shell-rule-emphasis);border-left:3px solid var(--color-accent)}.op-page--how-build .how-build-step-output{grid-template-columns:1fr;gap:.35rem}.op-page--how-build .how-build-stage-track{gap:.5rem}.op-page--how-build .how-build-stage-label{min-height:6rem;padding:.9rem}.op-page--how-build .how-build-stage-label strong{font-size:1.08rem}.op-page--how-build .how-build-stage-panels,.op-page--how-build .how-build-stage-panel{min-height:0}.op-page--how-build .how-build-handover-grid{grid-template-columns:1fr}.op-page--how-build .how-build-handover-card,.op-page--how-build .how-build-handover-card:last-child{grid-column:auto;min-height:0}}@media(prefers-reduced-motion:reduce){.how-build-reading-progress{display:none}.op-page--how-build .how-build-route-line{stroke-dashoffset:0}.op-page--how-build .how-build-path-board:after{transform:scaleY(1)}.op-page--how-build :is(.how-build-step-card,.how-build-stage-label,.how-build-handover-card){transition:none}}
