.business-hero { min-height: calc(100svh - 68px); display: grid; align-items: center; padding: 78px 0 58px; overflow: hidden; background: radial-gradient(circle at 78% 46%,rgba(239,202,113,.13),transparent 28rem); }
.business-hero__grid { display: grid; gap: 44px; align-items: center; }
.business-hero h1 { margin: 0; font-size: clamp(44px,11vw,104px); font-weight: 340; line-height: .9; letter-spacing: -.06em; }
.business-hero h1 em { color: var(--gold-bright); font-family: Georgia,"Times New Roman",serif; font-weight: 400; }
.business-hero p:not(.eyebrow) { max-width: 680px; margin: 20px 0 0; color: #aeb4bf; font-size: clamp(15px,4vw,20px); }
.business-hero__system { position: relative; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 6px; width: min(100%,470px); min-height: 260px; margin-inline: auto; padding: 18px; align-content: end; overflow: hidden; border: 1px solid var(--gold-line); border-radius: 28px; background: radial-gradient(circle at 50% 42%,rgba(239,202,113,.15),transparent 26%),linear-gradient(160deg,#0b111b,#03050a); }
.business-hero__system::before,.business-hero__system::after { position: absolute; top: 50%; left: 50%; width: 78%; aspect-ratio: 1; transform: translate(-50%,-50%) scaleY(.34) rotate(-12deg); border: 1px solid rgba(239,202,113,.2); border-radius: 50%; content: ""; }
.business-hero__system::after { width: 55%; transform: translate(-50%,-50%) scaleY(.5) rotate(19deg); border-color: rgba(120,163,185,.18); }
.business-hero__system > span { position: relative; z-index: 2; padding-top: 9px; border-top: 1px solid rgba(255,255,255,.12); color: #8d95a2; font-size: 8px; text-align: center; text-transform: uppercase; letter-spacing: .08em; }
.business-hero__system > i { display: none; }
.business-hero__system > div { position: absolute; z-index: 3; top: 50%; left: 50%; display: grid; width: 92px; aspect-ratio: 1; transform: translate(-50%,-50%); place-items: center; border: 1px solid var(--gold-line); border-radius: 50%; background: radial-gradient(circle at 32% 28%,#aa8b57,#171a21 24%,#05070b 68%); box-shadow: 0 0 70px rgba(239,202,113,.18); }
.business-hero__system img { width: 48%; border-radius: 50%; }

.route-lab { padding: 74px 0 90px; scroll-margin-top: 68px; }
.route-lab__head { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 16px; align-items: end; }
.route-lab__head h2 { max-width: 760px; margin: 0; font-size: clamp(34px,8vw,66px); font-weight: 380; line-height: .96; letter-spacing: -.045em; }
.route-lab__counter { display: grid; grid-template-columns: auto auto; align-items: baseline; color: #7f8794; }
.route-lab__counter strong { color: var(--gold-bright); font-size: 24px; font-weight: 450; }.route-lab__counter span { font-size: 10px; }
.route-lab__counter i { grid-column: 1/-1; width: 68px; height: 1px; margin-top: 8px; overflow: hidden; background: rgba(255,255,255,.12); }
.route-lab__counter b { display: block; width: 25%; height: 100%; background: var(--gold-bright); transition: width .45s ease; }

.route-lab__choices { display: flex; gap: 7px; margin: 28px 0 14px; padding: 2px 0; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: none; }
.route-lab__choices::-webkit-scrollbar { display: none; }
.route-lab__choices button { flex: 0 0 min(47vw,214px); min-height: 86px; padding: 12px; scroll-snap-align: center; border: 1px solid rgba(255,255,255,.09); border-radius: 15px; background: rgba(8,12,20,.76); color: #d4d7dd; text-align: left; cursor: pointer; }
.route-lab__choices button[aria-selected="true"] { border-color: var(--gold-line); background: linear-gradient(145deg,rgba(239,202,113,.12),rgba(9,13,21,.94)); }
.route-lab__choices span { float: right; color: #67717f; font-size: 8px; }.route-lab__choices b,.route-lab__choices small { display: block; }.route-lab__choices b { margin-top: 15px; font-size: 13px; }.route-lab__choices small { margin-top: 3px; color: #818a98; font-size: 8px; }
.route-lab__stage { min-height: 930px; overflow: hidden; border: 1px solid rgba(255,255,255,.09); border-radius: 26px; background: radial-gradient(circle at 20% 18%,rgba(78,121,142,.12),transparent 30rem),linear-gradient(160deg,#0a0f19,#03050a 68%); box-shadow: 0 42px 100px rgba(0,0,0,.36); touch-action: pan-y; }
.route-lab-ready .route-state:not(.is-active) { display: none; }
.route-state.is-active { animation: route-state-in .45s ease both; }
@keyframes route-state-in { from { opacity: 0; transform: translateX(16px); } to { opacity: 1; transform: none; } }
.route-state__visual { position: relative; height: 360px; overflow: hidden; background: #071018; isolation: isolate; }
.route-state__visual::before { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px); background-size: 48px 48px; content: ""; }
.route-state__visual::after { position: absolute; z-index: 1; inset: auto 0 0; height: 38%; background: linear-gradient(transparent,rgba(3,5,9,.85)); content: ""; }
.route-signal { position: absolute; z-index: 4; top: 18px; right: 18px; left: 18px; padding: 13px 14px; border: 1px solid rgba(255,255,255,.11); border-radius: 14px; background: rgba(5,8,13,.84); backdrop-filter: blur(12px); }
.route-signal small,.route-signal strong { display: block; }.route-signal small { color: #7e8794; font-size: 7px; text-transform: uppercase; letter-spacing: .12em; }.route-signal strong { margin-top: 5px; font-size: 12px; }
.route-output { position: absolute; z-index: 4; right: 18px; bottom: 18px; left: 18px; display: flex; justify-content: space-between; gap: 12px; padding: 11px 13px; border: 1px solid var(--gold-line); border-radius: 13px; background: rgba(5,8,13,.9); }
.route-output span { color: #7f8794; font-size: 8px; }.route-output b { color: var(--gold-bright); font-size: 9px; text-align: right; }
.route-radar { position: absolute; top: 52%; left: 50%; width: 180px; aspect-ratio: 1; transform: translate(-50%,-50%); border: 1px solid rgba(239,202,113,.22); border-radius: 50%; background: repeating-radial-gradient(circle,transparent 0 28px,rgba(255,255,255,.055) 29px 30px); }
.route-radar::after { position: absolute; inset: 50% 50% auto auto; width: 50%; height: 1px; transform-origin: left; background: linear-gradient(90deg,var(--gold),transparent); content: ""; animation: radar-turn 5s linear infinite; }
@keyframes radar-turn { to { transform: rotate(1turn); } }
.route-radar b { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); color: var(--gold-bright); font-size: 42px; font-weight: 350; }
.route-radar i { position: absolute; width: 6px; aspect-ratio: 1; border-radius: 50%; background: #dcb970; box-shadow: 0 0 14px #dcb970; }.route-radar i:nth-child(1){top:22%;left:32%}.route-radar i:nth-child(2){right:20%;bottom:30%}.route-radar i:nth-child(3){bottom:16%;left:38%}
.asset-stack { position: absolute; top: 50%; left: 50%; display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; transform: translate(-50%,-45%); }
.asset-stack b { display: grid; width: 68px; aspect-ratio: 1; place-items: center; border: 1px solid rgba(255,255,255,.12); border-radius: 17px; background: linear-gradient(145deg,#151c27,#080b11); color: var(--gold-bright); font-size: 12px; box-shadow: 0 18px 40px rgba(0,0,0,.3); }.asset-stack b:nth-child(2){transform:translateY(-20px)}.asset-stack span{position:absolute;right:-13px;bottom:-13px;color:var(--gold);font-size:28px}
.loss-flow { position: absolute; top: 52%; right: 18px; left: 18px; display: flex; align-items: center; justify-content: center; }
.loss-flow span { flex: 0 0 auto; display: grid; width: 58px; aspect-ratio: 1; place-items: center; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; background: #0b111b; color: #c7cbd2; font-size: 8px; }.loss-flow i { width: 22px; height: 1px; background: var(--gold-line); }.loss-flow i.is-broken { background: repeating-linear-gradient(90deg,#c96f5d 0 5px,transparent 5px 9px); }
.module-core { position: absolute; top: 53%; left: 50%; width: 230px; aspect-ratio: 1; transform: translate(-50%,-50%); border: 1px solid rgba(239,202,113,.2); border-radius: 50%; }
.module-core b { position: absolute; top: 50%; left: 50%; display: grid; width: 88px; aspect-ratio: 1; transform: translate(-50%,-50%); place-items: center; border: 1px solid var(--gold-line); border-radius: 50%; background: radial-gradient(circle at 35% 30%,#8e734d,#121721 30%,#05070b); color: var(--gold-bright); font-size: 11px; }
.module-core span { position: absolute; padding: 7px 9px; border: 1px solid rgba(255,255,255,.11); border-radius: 999px; background: #090d15; color: #aab1bc; font-size: 8px; }.module-core span:nth-of-type(1){top:4%;left:41%}.module-core span:nth-of-type(2){top:42%;right:-8%}.module-core span:nth-of-type(3){bottom:5%;left:38%}.module-core span:nth-of-type(4){top:42%;left:-10%}

.route-state__content { padding: 25px 20px 30px; }
.route-state__type { margin: 0; color: var(--gold); font-size: 9px; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.route-state__content h3 { margin: 10px 0 13px; font-size: clamp(31px,8vw,58px); font-weight: 390; line-height: .96; letter-spacing: -.045em; }
.route-state__content > p:not(.route-state__type) { max-width: 650px; margin: 0; color: #aeb4bf; font-size: 13px; }
.route-sequence { display: grid; margin-top: 22px; }
.route-sequence div { position: relative; padding: 13px 0 13px 18px; border-left: 1px solid rgba(239,202,113,.3); }.route-sequence div::before { position: absolute; top: 18px; left: -4px; width: 7px; aspect-ratio:1; border-radius:50%; background:var(--gold);box-shadow:0 0 12px rgba(239,202,113,.65);content:""; }
.route-sequence span,.route-sequence b { display:block; }.route-sequence span{color:#747e8d;font-size:8px;text-transform:uppercase;letter-spacing:.11em}.route-sequence b{margin-top:4px;font-size:12px}.route-sequence>i{display:none}
.route-state__links { display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;margin-top:22px }.route-state__links>a:not(.button){color:var(--gold-bright);font-size:10px;font-weight:800;text-decoration:none}
.route-lab__controls{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:9px;align-items:center;margin-top:12px}.route-lab__controls button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:rgba(255,255,255,.035);color:var(--text);cursor:pointer}.route-lab__controls span{color:#737c89;font-size:9px;text-align:center;text-transform:uppercase;letter-spacing:.1em}

.business-contract { padding: 88px 0 110px; }
.business-contract__grid { display:grid;gap:38px;align-items:center }.business-contract h2{margin:0;font-size:clamp(38px,9vw,78px);font-weight:360;line-height:.93;letter-spacing:-.05em}.business-contract p:not(.eyebrow){max-width:650px;color:#9da5b1;font-size:13px}.contract-stack{position:relative;display:grid;gap:8px;padding:18px;border:1px solid var(--gold-line);border-radius:22px;background:linear-gradient(150deg,#0b1019,#04060a)}.contract-stack div{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;padding:13px;border-bottom:1px solid rgba(255,255,255,.08)}.contract-stack div:last-child{border-bottom:0}.contract-stack span{color:var(--gold);font-size:8px}.contract-stack b{font-size:12px}

@media(min-width:880px){.business-hero__grid{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr)}.route-lab__choices button{flex:1 1 0}.route-lab__stage{min-height:680px}.route-state{grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);min-height:680px}.route-state.is-active{display:grid}.route-state__visual{height:100%;min-height:680px}.route-state__content{display:flex;flex-direction:column;justify-content:center;padding:48px clamp(34px,5vw,72px)}.route-sequence{grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr);align-items:center}.route-sequence div{min-height:105px;padding:14px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.025)}.route-sequence div::before{display:none}.route-sequence>i{display:block;color:var(--gold);font-size:11px;text-align:center}.business-contract__grid{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr)}}
@media(max-width:520px){.route-lab__stage{min-height:1000px}.route-lab__head h2{font-size:31px}.loss-flow span{width:52px}.loss-flow i{width:15px}}
@media(prefers-reduced-motion:reduce){.route-state.is-active{animation:none}.route-radar::after{animation:none}}
