/* Transparent emblems stay separate from the surfaces of product cards. */
.mark,.brand .mark,.module-card .mark,.family-core .mark,.kinetic-tile .mark,.access-satellite .mark,.monument-logo .mark,.access-logo .mark,.feature-panel .mark,.related-grid .mark {background:none;border:0;border-radius:0;overflow:visible;box-shadow:none}
.mark img {position:static;display:block;width:100%;height:100%;max-width:100%;left:auto;top:auto;object-fit:contain;mix-blend-mode:normal}
.family-core .core-disc,.monument-logo,.access-logo,.access-satellite {background:none;border:0;box-shadow:none;backdrop-filter:none}
.family-core .core-disc .mark {position:static;width:100%;height:100%;left:auto;top:auto}
.monument-logo .mark,.access-logo .mark {position:static;width:100%;height:100%;inset:auto}
.brand .mark {width:46px;height:48px}
.module-card .mark {width:84px;height:86px}
.story-symbol .mark {width:155px;height:157px}
.gateway-switcher .mark {background:none;border-radius:0}

/* A viewport stage that releases its contents into the next native scroll scene. */
.hero-sequence {height:160svh;position:relative;z-index:1}
.hero-sequence .hero {position:sticky;top:86px;height:calc(100svh - 86px);min-height:0;overflow:clip;background:radial-gradient(ellipse at 18% 35%,#a0e8f778,transparent 48%),radial-gradient(ellipse at 30% 95%,#ced7ffad,transparent 51%),radial-gradient(ellipse at 100% 90%,#e8d5fc9c,transparent 45%),linear-gradient(120deg,#eefcff,#f7f9ff 52%,#f9f5ff)}
.hero:before {background:radial-gradient(ellipse at 50% 35%,#bdf3e748,transparent 45%);animation:skyDrift 18s ease-in-out infinite alternate}
.hero-layout {padding-block:20px 12px;flex:1;max-height:760px;gap:50px;grid-template-columns:1fr 1.13fr}
.hero-copy {position:relative;z-index:2;animation:none;will-change:transform,opacity}
.hero h1 {font-size:clamp(62px,5vw,92px)}
.hero-bottom {position:relative;z-index:9;padding-block:17px 23px;flex-shrink:0}
.hero-orb {pointer-events:none}
.kinetic-world {width:100%;max-width:670px;position:relative;z-index:3}
.kinetic-scene {height:clamp(440px,56svh,610px);position:relative}
.scene-overline {font-size:10px;letter-spacing:2px;position:relative;z-index:8;pointer-events:none}
.scene-aura {pointer-events:none}
.scene-selector {position:relative;z-index:8;gap:3px;flex-wrap:wrap;justify-content:center;padding-top:10px;margin-top:22px}
.scene-selector button {font-size:13px;padding:8px 12px;color:#526b95;border-radius:24px;white-space:nowrap;transition:background .2s,box-shadow .2s}
.scene-selector button b {font-size:9px;font-weight:500;opacity:.65}
.scene-selector button[aria-pressed=true] {background:#ffffffb8;box-shadow:0 4px 20px #608cc414;color:#224572}
.scene-selector button[data-shuffle] {font-size:24px;line-height:1;width:35px;padding:3px;color:#337893}
.flight-layer {position:absolute;inset:0;pointer-events:none;z-index:6;overflow:clip}
.flight-trails {position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.flight-trails path {opacity:0}
.flight-layer .kinetic-tile,.flight-layer .family-core {position:absolute;left:0;top:0;margin:0;opacity:0;will-change:transform,opacity;transform-origin:50% 50%}
.flight-layer .kinetic-tile {width:108px;height:131px;padding:0;background:none;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:3px;transition:filter .2s;z-index:2}
.flight-layer .kinetic-tile .mark {width:88px;height:91px;filter:drop-shadow(0 8px 8px #4270a416);margin:0;border:0;box-shadow:none;border-radius:0}
.flight-layer .kinetic-tile strong {font:700 13px var(--latin);color:#193a62;letter-spacing:-.4px;margin:0}
.flight-layer .kinetic-tile>span:last-child {font-size:11px;color:#647a9b;line-height:1.5;white-space:nowrap}
.flight-layer .kinetic-tile:hover {filter:brightness(1.07);background:none;box-shadow:none}
.flight-layer .kinetic-tile:focus-visible {outline-offset:7px;border-radius:18px}
.flight-layer .family-core {width:160px;text-align:center;z-index:3}
.flight-layer .family-core .core-disc {width:155px;height:158px;margin:0 auto 5px;background:none;box-shadow:none;filter:drop-shadow(0 14px 17px #477bd825)}
.flight-layer .family-core .wordmark {font-size:26px;color:#1c3960}
.flight-layer .family-core small {font:7px var(--latin);letter-spacing:1.4px;color:#7490b1;display:block;margin-top:7px;white-space:nowrap}
.journey {position:relative;z-index:8;margin-top:-60svh;border-radius:38px 38px 0 0;box-shadow:0 -25px 70px #6c85b511;background:radial-gradient(ellipse at 10% 30%,#ddf6ff75,transparent 45%),radial-gradient(ellipse at 90% 55%,#ece5ff75,transparent 50%),#f0f5ff}
.journey-sticky {border-radius:inherit;overflow:clip}
.story-product {box-shadow:0 25px 70px #6583b018,0 3px 12px #7998ba0b}
.story-product-top {color:var(--chapter)}
.story-symbol {margin:22px auto}
.story-layout {padding-block:45px}

/* Legal drafts use the same bright identity, with readable document navigation. */
.legal-page {padding-top:70px;max-width:1280px}
.legal-heading {max-width:780px}
.legal-heading h1 {font-size:clamp(43px,4.3vw,69px);line-height:1.4;color:#203957;letter-spacing:-1px}
.legal-heading>p {font-size:18px;color:var(--muted);max-width:650px;margin-top:24px;line-height:1.9}
.legal-draft {display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:15px 19px;border:1px solid #c9dbea;background:#eef8ff;margin-top:30px;border-radius:12px;color:#2c637e;font-size:13px}
.legal-draft>span:last-child {color:#657d92;margin-inline-start:auto;font-size:12px}
.draft-dot {width:7px;height:7px;flex-shrink:0;border-radius:50%;background:#409db4}
.legal-tabs {display:flex;gap:12px;flex-wrap:wrap;margin:40px 0 55px;border-bottom:1px solid #dce6ef;padding-bottom:18px}
.legal-tabs a {padding:11px 20px;border-radius:9px;color:#647992;display:flex;align-items:center;gap:24px;font-size:15px}
.legal-tabs a[aria-current=page] {background:#234573;color:#fff}
.legal-tabs a:hover {background:#e2eef9;color:#234573}
.legal-layout {display:grid;grid-template-columns:270px 1fr;gap:70px;align-items:start}
.legal-index {position:sticky;top:118px;display:flex;flex-direction:column;gap:6px}
.legal-index>span {font-size:12px;color:#2f809c;letter-spacing:.06em;padding:0 10px 13px}
.legal-index button {text-align:right;padding:9px 10px;color:#5b7089;font-size:13px;display:flex;align-items:baseline;gap:13px;border-radius:7px;line-height:1.8}
.legal-index button:hover {background:#e8f0fb;color:#1c3c67}
.legal-index b {font:10px var(--latin);color:#8da2b9;font-weight:400}
.legal-index>p {border-top:1px solid #e0e7ef;padding:22px 10px 0;margin-top:12px;font-size:12px;color:#7b8fa5;line-height:1.9}
.legal-content {max-width:820px}
.legal-document-title {font-size:28px;margin-bottom:12px;color:#204265}
.legal-content article {display:flex;gap:22px;padding:32px 0;border-bottom:1px solid #e0e7ef;scroll-margin-top:116px}
.legal-number {font:11px var(--latin);color:#5e98ae;padding-top:13px;flex-shrink:0}
.legal-content article h2 {font-size:22px;color:#1c3d61;margin-bottom:13px;line-height:1.6}
.legal-content article p {color:#63758c;font-size:16px;line-height:2.1}
.legal-end {padding-top:30px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#7c8fa7;font-size:13px}
.legal-end .text-link {font-size:13px}
.auth-policy-links {font-size:12px;line-height:1.9;color:#75879e;margin-top:16px}
.auth-policy-links a {text-decoration:underline;text-underline-offset:3px;color:#355d88}
.footer-row {flex-wrap:wrap;row-gap:22px}
.footer-links {flex-wrap:wrap;row-gap:12px}
.footer-row>.brand {flex-shrink:0}
.footer-row>span:last-child {white-space:nowrap}

@keyframes skyDrift {from{transform:translate(-2%,2%) scale(1)}to{transform:translate(3%,-3%) scale(1.12)}}
@media(min-width:1650px) {
  .wrap {width:min(1480px,calc(100% - 140px))}
  .kinetic-world {max-width:720px}
  .flight-layer .kinetic-tile {width:118px;height:143px}
  .flight-layer .kinetic-tile .mark {width:99px;height:102px}
  .flight-layer .kinetic-tile strong {font-size:14px}
  .flight-layer .kinetic-tile>span:last-child {font-size:12px}
  .flight-layer .family-core {width:178px}
  .flight-layer .family-core .core-disc {width:173px;height:176px}
}
@media(min-width:801px) and (max-height:800px) {
  .kinetic-scene {height:420px}
  .hero-layout {padding-block:8px;gap:30px}
  .hero h1 {font-size:63px;margin-bottom:18px}
  .hero-desc {font-size:16px}
  .hero-note {margin-top:20px}
  .hero-actions {margin-top:23px}
  .hero-signature {font-size:26px;margin-top:23px}
  .hero-bottom {padding-block:12px}
  .flight-layer .kinetic-tile {width:92px;height:112px}
  .flight-layer .kinetic-tile .mark {width:73px;height:76px}
  .flight-layer .family-core .core-disc {width:123px;height:126px}
}
@media(max-width:1100px) {
  .hero-layout {gap:20px}
  .scene-selector button {padding:7px 8px;font-size:12px}
  .flight-layer .kinetic-tile {width:82px;height:110px}
  .flight-layer .kinetic-tile .mark {width:70px;height:75px}
  .flight-layer .kinetic-tile strong {font-size:11px}
  .flight-layer .kinetic-tile>span:last-child {font-size:9px}
  .flight-layer .family-core {width:127px}
  .flight-layer .family-core .core-disc {width:123px;height:126px}
  .flight-layer .family-core .wordmark {font-size:22px}
  .legal-layout {gap:35px;grid-template-columns:225px 1fr}
}
@media(max-width:800px) {
  .hero-sequence {height:auto}
  .hero-sequence .hero {position:relative;top:0;height:auto;min-height:calc(100svh - 76px)}
  .hero-layout {grid-template-columns:1fr;padding-block:35px 15px;max-height:none;gap:10px}
  .hero h1 {font-size:clamp(44px,9vw,65px)}
  .kinetic-world {max-width:570px;margin-top:28px}
  .kinetic-scene {height:490px}
  .flight-layer .kinetic-tile {width:92px;height:114px}
  .flight-layer .kinetic-tile .mark {width:78px;height:81px}
  .scene-selector {padding-top:18px}
  .scene-selector button {font-size:11px;padding:7px 8px}
  .hero-bottom {padding-block:20px 25px}
  .journey {margin-top:0;border-radius:25px 25px 0 0}
  .story-layout {padding-block:28px}
  .story-symbol .mark {width:103px;height:107px}
  .story-symbol {margin:10px auto}
  .legal-page {padding-top:42px}
  .legal-heading>p {font-size:16px}
  .legal-layout {display:block}
  .legal-index {position:static;flex-direction:row;overflow-x:auto;margin-bottom:25px;padding:0 0 14px;border-bottom:1px solid #dce6ef;gap:10px}
  .legal-index>span,.legal-index>p {display:none}
  .legal-index button {min-width:180px;background:#edf4fc;font-size:12px}
  .legal-tabs {gap:4px;margin-block:25px;font-size:12px}
  .legal-tabs a {padding:10px;gap:7px;font-size:12px}
  .legal-content article {padding-block:25px;gap:15px}
  .legal-content article h2 {font-size:20px}
  .legal-content article p {font-size:15px}
  .legal-end {flex-direction:column;align-items:flex-start}
}
@media(max-width:520px) {
  .kinetic-scene {height:410px}
  .flight-layer .kinetic-tile {width:65px;height:89px}
  .flight-layer .kinetic-tile .mark {width:55px;height:57px}
  .flight-layer .kinetic-tile strong {font-size:9px}
  .flight-layer .kinetic-tile>span:last-child {font-size:8px}
  .flight-layer .family-core {width:102px}
  .flight-layer .family-core .core-disc {width:97px;height:100px}
  .flight-layer .family-core .wordmark {font-size:18px}
  .flight-layer .family-core small {font-size:5px;letter-spacing:1px}
  .scene-selector {gap:0}
  .scene-selector button b {display:none}
  .scene-overline {font-size:8px}
  .story-symbol .mark {width:93px;height:96px}
  .footer-links {font-size:12px;gap:10px 17px}
  .legal-draft {font-size:12px;padding:13px}
  .legal-draft>span:last-child {width:100%;margin-inline-start:17px}
}
@media(prefers-reduced-motion:reduce) {
  .hero:before {animation:none}
  .hero-sequence {height:auto}
  .hero-sequence .hero {position:relative;top:0;min-height:calc(100svh - 86px);height:auto}
  .journey {margin-top:0}
  .flight-trails {display:none}
}
.motion-paused .hero:before {animation-play-state:paused}
