/* A continuous spatial loop, rather than independent bouncing objects. */
.home-story {background:var(--card);}
.home-story .opening {grid-template-columns:1.06fr 1fr;column-gap:60px;row-gap:30px;padding-block:140px 38px;}
.home-story .opening::after {display:none;}
.home-story .opening-copy {position:relative;z-index:2;}
.home-story .opening h1 {font-size:clamp(42px,4.3vw,62px);}
.home-story .network-loop {max-width:550px;width:100%;margin:0;}
.network-orbit {position:relative;width:100%;aspect-ratio:1;isolation:isolate;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--accent-soft) 17%,transparent),transparent 66%);}
.orbit-track {position:absolute;inset:15% 8%;border:1px solid color-mix(in srgb,var(--line) 80%,transparent);border-radius:50%;}
.orbit-track-inner {inset:22% 18%;border-style:dashed;opacity:.5;}
.local-core {position:absolute;left:50%;top:50%;width:146px;height:146px;transform:translate(-50%,-50%);z-index:1;border:1px solid var(--line);border-radius:27px;background:linear-gradient(145deg,var(--card),var(--ground));box-shadow:0 8px 0 var(--line),0 24px 40px -15px color-mix(in srgb,var(--accent-deep) 22%,transparent),inset 0 2px 2px var(--card);display:grid;grid-template-rows:1fr 30px;}
.core-top {display:grid;place-items:center;position:relative;}
.core-top > img {width:55px;height:55px;filter:brightness(.7) saturate(1.5);}
.core-vents {position:absolute;right:13px;top:15px;display:flex;gap:3px;}
.core-vents i {width:2px;height:11px;background:var(--line);border-radius:2px;}
.core-status {display:flex;justify-content:center;align-items:center;gap:7px;border-top:1px solid var(--line);font-size:7px;letter-spacing:.1em;color:var(--muted);}
.core-status i {width:4px;height:4px;background:var(--accent);border-radius:50%;box-shadow:0 0 7px var(--accent-soft);}
.orbit-item {position:absolute;left:0;top:0;width:140px;height:132px;offset-path:ellipse(42% 35% at 50% 50%);offset-rotate:0deg;offset-anchor:50% 50%;display:flex;align-items:center;flex-direction:column;gap:12px;z-index:2;}
.orbit-item > span {font-size:11px;color:var(--muted);letter-spacing:.02em;}
.orbit-tile {width:140px;height:104px;display:grid;place-items:center;background:linear-gradient(150deg,var(--card),var(--ground));border:1px solid color-mix(in srgb,var(--line) 80%,transparent);border-radius:20px;box-shadow:0 3px 0 color-mix(in srgb,var(--line) 65%,transparent),0 16px 30px -14px color-mix(in srgb,var(--ink) 24%,transparent);}
.orbit-server {offset-distance:0%;}
.orbit-access {offset-distance:25%;}
.orbit-switch {offset-distance:50%;}
.orbit-laptop {offset-distance:75%;}
.orbit-tile .server-object {height:70px;width:63px;gap:5px;}
.orbit-tile .server-object i {height:18px;}
.orbit-tile .server-object i:after {top:6px;}
.orbit-tile .access-object {height:70px;width:70px;border-radius:19px;box-shadow:0 4px 0 var(--line);}
.orbit-tile .access-object svg {width:46px;}
.orbit-tile .switch-object {width:115px;height:42px;padding:9px;gap:8px;border-radius:6px;box-shadow:0 4px 0 var(--line);}
.orbit-tile .switch-jacks {gap:3px;}.orbit-tile .switch-jacks i {height:6px;}
.orbit-tile .laptop-object {width:98px;}.orbit-tile .laptop-screen {width:82px;height:57px;padding:12px;gap:5px;border-width:3px;}.orbit-tile .laptop-base {width:98px;height:6px;}
.home-story .network-loop figcaption {display:flex;justify-content:center;align-items:center;gap:16px;margin-top:5px;font-size:11px;color:var(--muted);}
.network-loop figcaption button {font-size:11px;color:var(--muted);padding:0;border:0;border-bottom:1px solid var(--line);border-radius:0;min-height:32px;background:transparent;}
.home-story .hero-systems {grid-column:1/-1;background:transparent;color:var(--muted);border-top:1px solid var(--line);padding-block:22px 0;margin-top:15px;min-width:0;}
.hero-systems .marquee-head {margin-bottom:12px;}
.hero-systems .marquee-head h2 {color:var(--muted);font-weight:400;font-size:12px;}
.hero-systems .marquee-track img {filter:grayscale(1) brightness(0);opacity:.48;height:25px;width:100px;}
.hero-systems .marquee-pause {color:var(--muted);border:0;border-radius:0;padding:0;min-height:28px;font-size:11px;}
.hero-systems .marquee-pause:hover {color:var(--ink);}
#product {scroll-margin-top:0;}
#platform {scroll-margin-top:30px;}
@media(prefers-reduced-motion:no-preference) {
 .orbit-item {animation:network-orbit 24s linear infinite,network-depth 24s linear infinite;}
 .orbit-access {animation-delay:-6s;}.orbit-switch {animation-delay:-12s;}.orbit-laptop {animation-delay:-18s;}
 .core-status i {animation:core-alive 4s ease-in-out infinite;}
 .network-loop[data-paused] * {animation-play-state:paused!important;}
}
@keyframes network-orbit {from {offset-distance:0%;}to {offset-distance:100%;}}
@keyframes network-depth {0%,100% {scale:.9;opacity:.85;}25% {scale:1.06;opacity:1;}50% {scale:.9;opacity:.85;}75% {scale:.78;opacity:.55;}}
@keyframes core-alive {0%,100% {opacity:.45;}50% {opacity:1;}}
@supports not (offset-path:ellipse(42% 35% at 50% 50%)) {
 .orbit-item {animation:none;}.orbit-server {left:70%;top:40%;}.orbit-access {left:36%;top:75%;}.orbit-switch {left:0;top:40%;}.orbit-laptop {left:36%;top:0;}
}
@media(max-width:900px) {
 .home-story .opening {grid-template-columns:1fr;gap:24px;padding-block:135px 32px;}
 .home-story .opening-copy {max-width:630px;}.home-story .network-loop {max-width:490px;}
 .home-story .hero-systems {margin-top:8px;}
}
@media(max-width:520px) {
 .home-story .opening {padding-top:120px;}.home-story .opening h1 {font-size:42px;}
 .network-orbit {width:100%;}.orbit-item {width:110px;height:112px;}.orbit-tile {width:110px;height:88px;border-radius:16px;}
 .orbit-tile .switch-object {width:98px;}.local-core {width:115px;height:115px;border-radius:22px;}.core-top > img {width:43px;height:43px;}.core-status {font-size:6px;}
 .home-story .network-loop figcaption {font-size:10px;gap:10px;}.orbit-item > span {font-size:10px;}
 .hero-systems .marquee-track img {width:80px;height:22px;}
}
.home-story main {overflow-x:clip;}
.local-core {background:linear-gradient(145deg,var(--card) 25%,color-mix(in srgb,var(--accent-soft) 22%,var(--ground)));}
@keyframes network-depth {0%,100% {scale:.94;opacity:1;}25% {scale:1.06;opacity:1;}50% {scale:.94;opacity:1;}75% {scale:.84;opacity:.8;}}
@media(max-width:520px) {.orbit-item {offset-path:ellipse(36% 34% at 50% 50%);}.orbit-track {inset:16% 14%;}}

/* Keep the full opening, including the moving system marks, in one view. */
.home-story .opening {padding-block:112px 30px;row-gap:16px;}
.home-story .network-loop {max-width:min(480px,calc(100svh - 300px));}
.home-story .hero-systems {margin-top:8px;padding-top:18px;}
.home-story .network-loop figcaption {margin-top:0;}
@media(max-width:900px) {.home-story .network-loop {max-width:450px;}.home-story .opening {padding-top:112px;}}
@media(max-width:520px) {.home-story .network-loop {max-width:350px;}.home-story .opening {padding-top:105px;}}
/* The next section starts below the first screen, never as a dark bottom sliver. */
.home-story .opening {min-height:100svh;align-content:start;}

/* Reserve clearance below the full orbit, including its moving labels. */
.home-story .network-loop figcaption {margin-top:48px;}

/* One stable product illustration, composed to match the approved drawing. */
.home-story .network-loop {max-width:480px;}
.network-loop .orbit-item {offset-path:none;animation:none;scale:1;opacity:1;transform:translate(-50%,-50%);}
.network-loop .orbit-laptop {left:25%;top:20%;}
.network-loop .orbit-server {left:77%;top:29%;}
.network-loop .orbit-switch {left:19%;top:77%;}
.network-loop .orbit-access {left:77%;top:86%;}
.network-loop .core-status i {animation:none;}
.network-loop .orbit-track-inner {display:none;}
.home-story .network-loop figcaption {margin-top:32px;}
@media(max-width:520px) {
 .network-loop .orbit-switch {left:19%;top:77%;}
 .network-loop .orbit-access {left:79%;top:86%;}
 .home-story .network-loop {max-width:350px;}
}
