.architecture-lab{background:#081f30;color:#d9eaf3;padding-top:90px;padding-bottom:55px;border-block:1px solid #284c64;scroll-margin-top:108px;isolation:isolate}.architecture-intro{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:70px;margin-bottom:45px}.architecture-intro .eyebrow{font-size:10px;color:#8bc7e2;letter-spacing:.16em}.architecture-intro h2{font-size:clamp(40px,4.5vw,68px);font-weight:400;letter-spacing:-.055em;line-height:1.07;color:#eff6fa;margin:0}.architecture-intro h2 em{font-style:normal;color:#87cde9}.architecture-intro>p{font-size:14px;line-height:1.9;color:#b4cddd;margin:0;max-width:46ch}.architecture-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:45px;align-items:start}.architecture-model{border:1px solid #39566d;background:#102c40;min-width:0;position:sticky;top:125px}.architecture-stage{height:610px;position:relative;overflow:hidden;touch-action:pan-y;outline:none;background:radial-gradient(ellipse at 50% 40%,#26465d 0%,#102c40 67%);cursor:grab}.architecture-stage.is-dragging{cursor:grabbing}.architecture-stage:focus-visible{box-shadow:inset 0 0 0 2px #9eddf4}.architecture-stage canvas{display:block;width:100%;height:100%;outline:none;touch-action:pan-y}.model-stamp{position:absolute;top:20px;left:20px;right:20px;display:flex;justify-content:space-between;gap:15px;pointer-events:none;font:8px/1.7 monospace;letter-spacing:.09em;color:#a8cada;z-index:2}.model-hotspots{position:absolute;inset:0;pointer-events:none}.model-hotspots button{position:absolute;left:0;top:0;display:flex;align-items:center;gap:7px;transform:translate(-50%,-50%);background:transparent;border:0;color:#e7f5fc;pointer-events:auto;padding:6px;min-height:40px;font:10px/1.3 Manrope,sans-serif;filter:drop-shadow(0 2px 5px #00111f)}.model-hotspots span{display:grid;place-items:center;width:30px;height:30px;border:1px solid #b6e9fd;background:#0a2a40e8;border-radius:50%;color:#c6edfc;font:10px monospace;box-shadow:0 0 0 5px #8fd3ee12}.model-hotspots b{font-weight:500;background:#08273de8;border:1px solid #56809b;border-radius:2px;padding:5px 7px}.model-hotspots button:hover span,.model-hotspots button[aria-pressed=true] span{background:#afe1f2;color:#062238}.model-dimension{position:absolute;font:9px/1.4 monospace;color:#a7d7ed;pointer-events:none;padding:4px 7px;border:1px solid #789db44d;background:#0a263ade;transform:translate(-50%,-50%)}.model-navigation-hint{position:absolute;bottom:77px;left:18px;right:18px;text-align:center;color:#a8c8dc;font:9px/1.6 Manrope,sans-serif;letter-spacing:.02em;pointer-events:none}.model-tools{position:absolute;bottom:19px;left:16px;right:16px;display:flex;justify-content:center;gap:4px;flex-wrap:wrap}.model-tools button{color:#d7eaf6;background:#0c293ce8;border:1px solid #60829a;padding:8px 12px;min-height:40px;font:11px Manrope,sans-serif}.model-tools button[aria-pressed=true],.model-tools button:hover{color:#08273c;background:#b5deef;border-color:#b5deef}.architecture-bottom{border-top:1px solid #39566d;padding:15px 18px;display:flex;justify-content:space-between;gap:16px;font:9px/1.8 Manrope,sans-serif;letter-spacing:.03em;color:#b1cbdc}.architecture-bottom i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#8dd9ee;margin-right:7px}.architecture-bottom>span:last-child{color:#94b8ce}.architecture-inspector{min-width:0}.architecture-phases{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-bottom:35px;border-bottom:1px solid #4a6c84}.architecture-phases button{padding:0 0 17px;text-align:left;border:0;border-bottom:2px solid transparent;background:none;color:#91afc4;font:13px/1.6 Manrope,sans-serif;min-height:68px}.architecture-phases small{display:block;font:9px monospace;color:#8fb9d0;margin-bottom:10px}.architecture-phases button[aria-selected=true]{color:#c4efff;border-color:#9adbf5}.architecture-phases button:hover{color:#e2f3fc}#architecture-panel .eyebrow{font:9px/1.7 monospace;letter-spacing:.1em;color:#8fbed8;margin-bottom:20px}#architecture-phase-title{font-size:clamp(29px,3vw,43px);line-height:1.15;color:#eef6fa;margin:0 0 22px;font-weight:400;letter-spacing:-.04em}#architecture-description{font-size:13px;line-height:1.9;color:#b6d0df}#architecture-checks{list-style:none;padding:0;margin:22px 0;font:12px/1.8 Manrope,sans-serif;color:#c5dce9}#architecture-checks li{padding:9px 0;border-top:1px solid #35556b}#architecture-checks li::before{content:'+';font-family:monospace;color:#87cce9;margin-right:11px}#architecture-service{display:inline-flex;font:12px/1.8 Manrope,sans-serif;color:#97d7f2;border-bottom:1px solid #6c97b1;padding-bottom:8px}.architecture-controls{margin-top:28px;padding-top:24px;border-top:1px solid #46677e}.architecture-controls label{display:flex;justify-content:space-between;font:12px/1.7 Manrope,sans-serif;color:#c9e3ef}.architecture-controls output{font:11px monospace;color:#98d8f0}.architecture-controls input[type=range]{width:100%;height:38px;accent-color:#8ad4f0;background:transparent;margin:8px 0;cursor:ew-resize}.architecture-toggles{display:flex;flex-wrap:wrap;gap:8px}.architecture-toggles button{min-height:39px;border:1px solid #557d96;background:transparent;color:#c9e4f2;padding:9px 12px;font:10px/1.4 Manrope,sans-serif}.architecture-toggles button[aria-pressed=true]{background:#b7dfee;color:#0b2b40}.architecture-detail{border-left:2px solid #86cde9;padding:1px 0 0 18px;margin-top:26px}.architecture-detail>span{color:#86b4cd;font:8px/1.6 monospace;letter-spacing:.1em}.architecture-detail h4{font-size:19px;letter-spacing:-.025em;font-weight:500;line-height:1.3;margin:10px 0}.architecture-detail p{font:12px/1.8 Manrope,sans-serif;color:#b5cedf;margin:0}.architecture-disclaimer{font:10px/1.9 Manrope,sans-serif;color:#a6c2d4;max-width:115ch;margin:30px 0 0}.architecture-loading{position:absolute;inset:0;display:grid;place-items:center;color:#cbe4f2;background:#102c40;z-index:5;font:12px Manrope,sans-serif}.architecture-loading[hidden]{display:none}.architecture-model.is-unavailable .architecture-loading{padding:50px;text-align:center;line-height:1.9}.architecture-model.is-unavailable canvas{display:none}.architecture-lab button:focus-visible{outline:2px solid #b5e8fc;outline-offset:4px}@media(max-width:1100px){.architecture-layout{gap:28px;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr)}.architecture-stage{height:560px}.model-hotspots b{display:none}.architecture-intro{gap:35px}}@media(max-width:850px){.architecture-lab{padding-top:60px}.architecture-intro{grid-template-columns:1fr;gap:25px}.architecture-layout{grid-template-columns:1fr}.architecture-model{position:relative;top:auto}.architecture-stage{height:540px}.architecture-phases{margin-bottom:26px}#architecture-phase-title{font-size:36px}.model-hotspots b{display:block}}@media(max-width:540px){.architecture-lab{padding-inline:20px}.architecture-stage{height:410px}.model-hotspots b{display:none}.model-stamp{font-size:6px;left:12px;right:12px;top:14px}.architecture-bottom{font-size:8px;padding:12px;display:block}.architecture-bottom>span{display:block}.model-tools{left:10px;right:10px}.model-tools button{padding:8px 10px;min-height:39px;font-size:10px}.model-navigation-hint{font-size:8px;bottom:70px}.architecture-phases button{font-size:12px}.architecture-disclaimer{font-size:9px}.architecture-intro>p{font-size:13px}}
.model-dimension{white-space:nowrap}
