/* LB hero: routes merge into the original mark, without a separate pedestal. */
.home #main-content { overflow: clip; }
.hero--strata { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 32px; min-height: 100vh; min-height: 100dvh; padding-top: calc(var(--header-height) + 64px); padding-bottom: 32px; }
.hero.hero--strata h1 { max-width: none; font-size: clamp(2.8rem, 4.2vw, 4.7rem); line-height: 1.04; letter-spacing: -.065em; text-wrap: initial; }
.hero--strata h1 span { color: var(--primary); }
html[data-theme="dark"] .hero--strata h1 span { color: var(--accent); }
.hero--strata .hero__lead { max-width: 540px; font-size: clamp(1rem, 1.25vw, 1.18rem); }
.hero--strata .hero__status { grid-column: 1 / -1; margin-top: 28px; }
.strata { min-width: 0; position: relative; width: 100%; }
.strata__scene { position: relative; width: 100%; aspect-ratio: 1; perspective: 1100px; }
.strata__world { position: absolute; inset: 0; transform-style: preserve-3d; transform: rotateY(var(--strata-y, -8deg)) rotateX(var(--strata-x, 0deg)); }
.strata__fabric { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; stroke: url(#lb-fabric); stroke-width: .8; transform: translateZ(-60px) rotateX(18deg); pointer-events: none; }
.strata__motion { display: block; margin: -12px auto 8px; position: relative; padding: 12px 16px; min-height: 44px; border: 0; background: transparent; color: var(--muted); font: 500 .68rem var(--font-mono); cursor: pointer; }
.strata__motion:focus-visible { outline: 2px solid var(--primary); outline-offset: 3px; }
.strata__world::before { content: ""; position: absolute; inset: 5% -10%; pointer-events: none; background: radial-gradient(ellipse, rgba(var(--primary-rgb), .17), transparent 65%); transform: translate3d(var(--network-light-x, 0px), var(--network-light-y, 0px), -10px); }
.strata__network { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; transform: translateZ(-12px); pointer-events: none; }
.strata__wire { stroke: url(#lb-route-fade); stroke-width: 1.15; }
.strata__signal { stroke: var(--primary); stroke-width: 1.8; stroke-linecap: round; stroke-dasharray: 3 97; opacity: .38; transition: opacity 300ms ease; }
html[data-theme="dark"] .strata__signal { stroke: var(--accent); }
.strata__junctions { fill: var(--primary); opacity: .55; }
.strata[data-engaged="true"] .strata__signal { opacity: .95; }
.strata__brand { position: absolute; width: 40%; aspect-ratio: 647 / 959; left: 30%; top: 12%; transform: translateZ(55px) rotateY(5deg); filter: drop-shadow(5px 7px 0 rgba(var(--primary-rgb), .18)) drop-shadow(0 22px 32px rgba(var(--primary-rgb), .2)); }
.strata__logo { position: absolute; width: 100%; height: 100%; object-fit: contain; }
.strata__logo--dark { visibility: hidden; }
html[data-theme="dark"] .strata__logo--dark { visibility: visible; }
html[data-theme="dark"] .strata__logo--light { visibility: hidden; }
@keyframes lb-signal { from { stroke-dashoffset: 100; } to { stroke-dashoffset: 0; } }
@keyframes lb-network-enter { from { opacity: 0; transform: translateY(28px) translateZ(-50px); } to { opacity: 1; transform: translateY(0) translateZ(-12px); } }
@media (prefers-reduced-motion: no-preference) {
 .strata__fabric { animation: lb-fabric-drift 10s ease-in-out infinite alternate; }
 .strata__brand { animation: lb-brand-float 8s ease-in-out infinite alternate; }
 .strata[data-active="false"] .strata__fabric, .strata[data-active="false"] .strata__brand { animation-play-state: paused; }
 .strata__signal { animation: lb-signal 6s linear infinite; animation-delay: var(--signal-delay); }
 .strata[data-ready="true"] .strata__network { animation: lb-network-enter 1.4s ease-out both; }
 .strata[data-active="false"] .strata__signal { animation-play-state: paused; }
}
@keyframes lb-fabric-drift { from { transform: translate3d(-8px, 12px, -65px) rotateX(18deg) rotateZ(-3deg); } to { transform: translate3d(8px, -12px, -35px) rotateX(28deg) rotateZ(3deg); } }
@keyframes lb-brand-float { from { transform: translate3d(0, 5px, 55px) rotateY(5deg); } to { transform: translate3d(0, -7px, 75px) rotateY(-3deg); } }
@media (max-width: 960px) { .hero--strata { grid-template-columns: 1fr; min-height: auto; } .hero.hero--strata h1 { font-size: clamp(3rem, 8vw, 5.2rem); } .strata { max-width: 580px; margin-inline: auto; } }
@media (max-width: 560px) { .hero--strata { padding-top: calc(var(--header-height) + 32px); gap: 12px; } .hero.hero--strata h1 { font-size: clamp(2.5rem, 10.5vw, 3.6rem); } .strata { overflow: clip; } .strata__network { overflow: hidden; } .hero--strata .hero__status { flex-wrap: wrap; } }
@media (prefers-reduced-motion: reduce) { .strata__world { transform: none; } .strata__signal { stroke-dasharray: none; opacity: .2; transition: none; } }
