/* TrustDePIN homepage. Single maintained stylesheet for layout, scene,
 * evidence, responsive behavior and motion. Edit these rules directly.
 */

@font-face { font-family: LandingInter; src: url("/assets/fonts/InterVariable.woff2") format("woff2"); font-weight: 100 900; font-style: normal; font-display: optional; }

.home-page-shell {
  --landing-surface: #061b29;
  --landing-text: #f3f7fb;
  --landing-blue: #16aff0;
  --landing-cyan: #00d2f2;
  --landing-radius: 12px;
  --landing-gap: 14px;
  --landing-space: 32px;
  background: var(--landing-bg);
  color: var(--landing-text);
}

.home-page-shell .container {
  margin-inline: auto;
}

.home-page-shell {
  --font-body: LandingInter,Inter,"Segoe UI",sans-serif;
  --font-heading: LandingInter,Inter,"Segoe UI",sans-serif;
  font-family: var(--font-body);
  font-optical-sizing: auto;
}

.home-page-shell .landing-page .icon, .home-page-shell .landing-header .landing-button .icon {
  color: inherit;
}

.home-page-shell .page {
  padding: 0px;
}

.landing-page {
  position: relative;
  font-family: var(--font-body);
  isolation: isolate;
}

.landing-page h1, .landing-page h2, .landing-page h3 {
  font-family: var(--font-body);
  color: var(--landing-text);
  letter-spacing: -0.035em;
  margin: 0px;
  overflow-wrap: normal;
}

.landing-page h3 {
  font-size: 16px;
  line-height: 1.3;
  letter-spacing: -0.02em;
}

.landing-page p {
  color: var(--landing-muted);
  font-size: 15px;
  line-height: 1.55;
  margin: 0px;
}

.landing-eyebrow {
  display: block;
  line-height: 1.5;
}

.home-page-shell .landing-button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  line-height: 1.35;
  letter-spacing: 0px;
  white-space: normal;
  text-align: center;
  cursor: pointer;
}

.home-page-shell .landing-button svg {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
}

.home-page-shell .landing-primary {
  border: 1px solid rgb(30, 192, 252);
}

.home-page-shell .landing-primary:hover {
  border-color: rgb(128, 219, 255);
  box-shadow: rgba(11, 186, 250, 0.208) 0px 5px 20px;
}

.home-page-shell .landing-secondary {
  border: 1px solid rgb(20, 138, 188);
}

.home-page-shell .landing-secondary:hover {
  border-color: rgb(38, 207, 255);
  background: rgb(8, 46, 70);
}

.landing-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 44px;
  font-size: 13px;
  font-weight: 550;
  color: var(--landing-cyan);
}

.landing-link:hover {
  color: rgb(157, 246, 255);
}

.landing-link svg {
  width: 15px;
  height: 15px;
}

.home-page-shell .landing-header {
  border: 0px;
}

.home-page-shell .header-inner {
  padding: 0px;
  gap: 24px;
  flex-wrap: nowrap;
}

.home-page-shell .brand {
  gap: 10px;
}

.home-page-shell .brand-mark {
  width: 29px;
  height: 34px;
  filter: none;
}

.home-page-shell .brand-check {
  left: 8px;
  top: 11px;
  width: 13px;
  height: 8px;
}

.home-page-shell .brand-name {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.04em;
}

.home-page-shell .brand-sub {
  display: none;
}

.home-page-shell .header-actions {
  margin-left: auto;
  gap: 14px;
}

.home-page-shell .site-header .session-link {
  min-height: 44px;
  border-radius: 11px;
  font-size: 12px;
  padding: 10px 19px;
  border-color: rgb(20, 96, 138);
  background: rgba(3, 21, 35, 0.8);
  color: var(--landing-text);
  white-space: nowrap;
}

.home-page-shell .landing-signup {
  white-space: nowrap;
  font-size: 12px;
  padding: 10px 20px;
  border-radius: 11px !important;
}

.landing-search {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  color: rgb(216, 236, 246);
}

.landing-search svg {
  width: 19px;
  height: 19px;
}

@media (min-width: 961px) {
  .home-page-shell .site-header .nav {
    display: flex;
    position: static;
    gap: 6px;
    margin: 0px;
    padding: 0px;
    width: auto;
    overflow: visible;
    max-height: none;
    border: 0px;
    border-radius: 0px;
    background: none;
    box-shadow: none;
  }

  .home-page-shell .site-header .nav-link {
    padding: 10px 9px;
    font-size: 12px;
    font-weight: 500;
    color: rgb(216, 229, 238);
    white-space: nowrap;
    min-height: 44px;
    display: flex;
    align-items: center;
  }

  .home-page-shell .site-header .nav-session-link, .home-page-shell .site-header .menu-toggle {
    display: none;
  }
}

.landing-hero {
  position: relative;
  isolation: isolate;
}

.landing-hero-inner {
  position: relative;
}

.landing-hero-copy {
  position: relative;
  z-index: 3;
}

.landing-hero h1 > span {
  display: block;
}

.landing-title-blue {
  background: linear-gradient(100deg, rgb(120, 187, 242) 8%, rgb(167, 213, 251) 60%, rgb(244, 247, 255)) text;
  white-space: nowrap;
  color: transparent !important;
}

.landing-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.landing-assurances {
  display: flex;
  align-items: center;
}

.landing-assurances > span {
  display: flex;
  align-items: center;
  gap: 7px;
  white-space: nowrap;
}

.landing-assurances svg {
  flex: 0 0 auto;
}

.landing-scene {
  position: absolute;
  z-index: 1;
  container-type: inline-size;
  pointer-events: none;
}

.scene-art {
  position: absolute;
  inset: 0px;
}

.scene-earth {
  width: 100%;
  height: 100%;
  object-fit: contain;
  max-width: none;
}

.scene-art picture {
  display: block;
  width: 100%;
  height: 100%;
}

.scene-lights {
  position: absolute;
  inset: 0px;
  width: 100%;
  height: 100%;
}

.city-light {
  animation: city-glow var(--light-duration) ease-in-out var(--light-delay) infinite alternate;
}

@keyframes city-glow { 
  0% { opacity: 0.65; }
  100% { opacity: 1; }
}

.scene-still .city-light {
  animation-play-state: paused;
}

.scene-panel {
  position: absolute;
  grid-template-columns: 20% 80%;
  transform-origin: 50% 65%;
  color: rgb(234, 246, 255);
}

.scene-world {
  position: absolute;
}

.scene-world span {
  display: block;
  height: 1px;
}

.scene-cubes {
  position: absolute;
  gap: 0.7cqw;
}

.scene-cubes > span {
  display: grid;
  place-items: center;
  width: 4.5cqw;
  height: 4cqw;
  border: 1px solid rgb(34, 124, 193);
  background: linear-gradient(130deg, rgba(18, 122, 202, 0.5), rgb(4, 29, 56));
  box-shadow: rgb(9, 45, 78) 8px -4px 0px, rgb(31, 93, 135) 9px -5px 0px;
  color: rgb(122, 202, 255);
}

.scene-cubes > span:nth-child(2) {
  margin-left: 1.6cqw;
}

.scene-cubes svg {
  width: 2.2cqw;
  height: 2.2cqw;
}

.scene-caption {
  position: absolute;
}

.scene-pause {
  position: absolute;
  display: grid;
  place-items: center;
  border: 1px solid rgb(50, 103, 134);
  border-radius: 50%;
  color: rgb(185, 215, 232);
  pointer-events: auto;
  cursor: pointer;
}

.scene-pause[hidden] {
  display: none;
}

.scene-pause svg {
  width: 17px;
  height: 17px;
  stroke: currentcolor;
  fill: none;
}

.landing-section {
  position: relative;
  border-top: 1px solid rgb(19, 51, 71);
  padding: 24px 0px;
}

.landing-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0px, 1fr));
}

.landing-card {
  position: relative;
  min-width: 0px;
  overflow: hidden;
}

.landing-feature {
  grid-template-columns: 62px 1fr;
  align-items: start;
}

.landing-access {
  padding: 20px 0px 28px;
}

.landing-plan {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  isolation: isolate;
}

.landing-plan::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: -50px;
  bottom: -58px;
  width: 200px;
  height: 130px;
  transform: rotate(-30deg) skewX(20deg);
  background: repeating-linear-gradient(0deg, transparent 0px, transparent 31px, rgba(20, 115, 173, 0.22) 32px, rgba(20, 115, 173, 0.22) 33px), repeating-linear-gradient(90deg, transparent 0px, transparent 35px, rgba(20, 115, 173, 0.22) 36px, rgba(20, 115, 173, 0.22) 37px), linear-gradient(140deg, transparent, rgba(4, 74, 113, 0.35));
  mask-image: linear-gradient(110deg, transparent, rgb(0, 0, 0));
}

.landing-plan ul {
  display: grid;
  margin: 0px 0px 17px;
  padding: 0px;
  list-style: none;
  color: rgb(196, 217, 232);
}

.landing-plan li {
  display: flex;
  gap: 8px;
  align-items: flex-start;
}

.landing-plan li svg {
  color: rgb(0, 232, 177);
  width: 17px;
  height: 17px;
  flex: 0 0 auto;
}

.landing-plan .landing-button {
  margin-top: auto;
  border-radius: 6px;
  font-size: 12px;
  padding-inline: 22px;
}

.landing-premium .landing-plan-label {
  color: rgb(0, 215, 244);
}

.landing-plan-badge {
  position: absolute;
  border: 1px solid rgb(11, 101, 128);
  border-radius: 20px;
  line-height: 1.4;
  padding: 2px 8px;
}

.landing-unavailable {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 10px 20px;
  border: 1px solid rgb(45, 114, 149);
  border-radius: 6px;
  font-size: 12px;
  margin-top: auto;
}

.landing-footer-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
}

.landing-footer .brand-name {
  font-size: 15px;
}

.landing-footer .brand-mark {
  width: 29px;
  height: 34px;
}

.landing-footer nav {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 20px;
}

.landing-footer nav a, .landing-footer nav button {
  color: rgb(178, 203, 220);
  font-size: 11px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  line-height: 1.4;
}

.landing-footer nav button {
  padding: 0px;
  background: none;
  border: 0px;
  cursor: pointer;
}

.landing-footer nav a:hover, .landing-footer nav button:hover {
  color: rgb(56, 217, 255);
}

.landing-footer p {
  font-size: 11px;
  line-height: 1.5;
  color: rgb(171, 197, 216);
  max-width: 135px;
  margin: 0px;
}

@media (min-width: 1440px) {
  .landing-hero-inner {
    min-height: 565px;
  }

  .landing-hero-copy {
    padding-top: 72px;
  }

  .landing-page .landing-lead {
    font-size: 17px;
    max-width: 450px;
  }

  .landing-assurances {
    font-size: 12px;
  }

  .landing-feature {
    padding: 20px;
    min-height: 168px;
  }

  .landing-feature h3 {
    font-size: 17px;
  }

  .landing-feature p {
    font-size: 15px;
  }

  .landing-section {
    padding-block: 32px;
  }

  .landing-plan {
    min-height: 220px;
    padding: 22px;
  }

  .landing-plan h3 {
    font-size: 19px;
  }

  .landing-plan ul {
    font-size: 15px;
  }

  .landing-footer nav a, .landing-footer nav button, .landing-footer p {
    font-size: 12px;
  }
}

@media (max-width: 1100px) and (min-width: 961px) {
  .home-page-shell .header-inner {
    gap: 20px;
  }

  .home-page-shell .header-actions {
    gap: 10px;
  }

  .home-page-shell .brand-name {
    font-size: 17px;
  }

  .home-page-shell .site-header .nav-link {
    font-size: 11px;
    padding-inline: 8px;
  }

  .landing-search {
    width: 28px;
  }

  .landing-feature {
    gap: 14px;
    grid-template-columns: 58px 1fr;
  }

  .landing-plan h3 {
    font-size: 16px;
  }

  .landing-plan ul {
    font-size: 12px;
  }
}

@media (max-width: 960px) {
  .home-page-shell .header-inner {
    gap: 14px;
  }

  .home-page-shell .site-header .nav {
    top: calc(100% - 3px);
    right: 0px;
    left: auto;
    width: min(360px, 100%);
    padding: 12px;
    background: rgb(3, 23, 36);
    border-color: rgb(39, 105, 135);
    z-index: 20;
  }

  .home-page-shell .site-header .nav.open {
    display: grid;
  }

  .home-page-shell .site-header .nav-link {
    font-size: 15px;
    min-height: 44px;
    color: rgb(214, 232, 243);
  }

  .home-page-shell .site-header .menu-toggle {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    display: grid;
    place-items: center;
    padding: 0px;
  }

  .landing-hero-copy {
    padding-top: 42px;
  }

  .landing-assurances {
    gap: 12px;
    flex-wrap: wrap;
  }

  .landing-scene::after {
    position: absolute;
    content: "";
    inset: 0px;
    background: linear-gradient(90deg, rgb(2, 13, 24) 2%, transparent 38%);
    pointer-events: none;
  }

  .scene-panel {
    height: 58%;
  }

  .scene-world {
    display: none;
  }

  .scene-caption {
    font-size: 9px;
  }

  .landing-page h2 {
    font-size: 28px;
  }

  .landing-feature {
    display: flex;
    flex-direction: column;
  }

  .landing-feature .landing-link {
    font-size: 13px;
  }

  .landing-plan h3 {
    margin-top: 5px;
  }

  .landing-premium .landing-plan-label {
    margin-top: 0px;
  }

  .landing-plan-label {
    min-height: 14px;
  }

  .landing-footer-inner {
    flex-wrap: wrap;
  }

  .landing-footer nav {
    order: 3;
    width: 100%;
    gap: 12px 24px;
  }

  .landing-footer p {
    max-width: 180px;
  }

  .landing-footer nav a, .landing-footer nav button {
    font-size: 13px;
  }
}

@media (max-width: 700px) {
  .home-page-shell .landing-header, .home-page-shell .header-inner {
    height: 68px;
    min-height: 68px;
  }

  .home-page-shell .brand-name {
    font-size: 16px;
  }

  .home-page-shell .header-actions {
    gap: 8px;
  }

  .home-page-shell .landing-search, .home-page-shell .site-header .session-link {
    display: none;
  }

  .home-page-shell .landing-signup {
    padding-inline: 13px;
  }

  .home-page-shell .brand {
    gap: 7px;
  }

  .landing-hero {
    margin-top: -68px;
    padding-top: 68px;
  }

  .landing-hero-inner {
    min-height: 0px;
    display: flex;
    flex-direction: column;
  }

  .landing-hero-copy {
    width: 100%;
    padding-bottom: 4px;
  }

  .landing-page .landing-lead {
    max-width: 540px;
  }

  .landing-title-blue {
    white-space: normal;
  }

  .home-page-shell .landing-button {
    font-size: 13px;
    padding: 12px 19px;
    min-height: 46px;
  }

  .landing-assurances {
    max-width: none;
  }

  .landing-scene {
    position: relative;
    right: auto;
    align-self: center;
    bottom: auto;
  }

  .scene-art {
    mask-image: linear-gradient(0deg, rgb(0, 0, 0) 92%, transparent);
  }

  .scene-panel {
    border-radius: 3cqw;
  }

  .scene-pause {
    right: 13%;
    bottom: 1%;
  }

  .scene-cubes {
    opacity: 0.7;
  }

  .landing-scene::after {
    display: none;
  }

  .landing-section {
    padding: 28px 0px;
  }

  .landing-page h2 {
    font-size: 28px;
    line-height: 1.2;
  }

  .landing-feature {
    display: grid;
    grid-template-columns: 58px 1fr;
  }

  .landing-feature h3 {
    margin-top: 5px;
  }

  .landing-access .landing-eyebrow {
    font-size: 10px;
  }

  .landing-access h2 {
    margin-top: 6px;
  }

  .landing-plan h3 {
    margin-top: 0px;
  }

  .landing-plan ul {
    gap: 7px;
  }

  .landing-plan-label {
    font-size: 11px;
  }

  .landing-plan-badge {
    order: 0;
  }

  .landing-plan .landing-button, .landing-unavailable {
    font-size: 13px;
  }

  .landing-footer-inner {
    gap: 20px;
  }

  .landing-footer p {
    font-size: 11px;
    max-width: 135px;
  }

  .landing-footer nav {
    gap: 0px 19px;
  }
}

@media (max-width: 360px) {
  .home-page-shell .brand-name {
    font-size: 14px;
  }

  .home-page-shell .header-actions {
    gap: 5px;
  }

  .landing-page h1 {
    letter-spacing: -0.04em;
  }

  .landing-actions {
    grid-template-columns: 1fr;
  }

  .landing-assurances {
    gap: 10px;
  }

  .landing-feature {
    grid-template-columns: 48px 1fr;
    gap: 13px;
    padding: 15px;
  }

  .landing-footer p {
    max-width: 105px;
    font-size: 10px;
  }

  .landing-plan-badge {
    font-size: 9px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-page-shell * {
    scroll-behavior: auto !important;
  }

  .home-page-shell .landing-button {
    transition: none;
  }
}

@media (min-width: 961px) {
  .scene-panel {
    top: 21%;
    height: 68%;
  }

  .landing-hero-copy {
    padding-bottom: 44px;
  }

  .landing-feature {
    padding-top: 14px;
    padding-bottom: 4px;
  }

  .landing-feature h3 {
    margin-top: 6px;
    margin-bottom: 8px;
  }

  .landing-feature p {
    line-height: 1.55;
  }

  .landing-section {
    padding-block: 22px;
  }

  .landing-core-section h2 {
    margin-bottom: 14px;
  }

  .landing-plan {
    min-height: 190px;
  }

  .landing-access {
    padding-bottom: 26px;
  }

  .landing-access h2 {
    font-size: 25px;
  }
}

.landing-feature > div {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.landing-feature .landing-link {
  margin-top: auto;
}

@media (min-width: 961px) {
  .landing-feature p {
    font-size: 12px;
  }

  .landing-feature .landing-link {
    min-height: 36px;
  }

  .landing-feature {
    min-height: 148px;
  }

  .landing-core-section {
    padding-block: 20px;
  }

  .landing-core-section .landing-eyebrow {
    margin-bottom: 6px;
  }

  .landing-plan {
    padding-top: 14px;
    padding-bottom: 14px;
  }

  .landing-footer {
    min-height: 96px;
  }
}

@media (min-width: 701px) and (max-width: 960px) {
  .landing-scene {
    right: -3%;
    width: 96vw;
  }

  .landing-assurances {
    max-width: 340px;
  }

  .scene-caption {
    font-size: 9px;
    right: 11%;
  }

  .scene-cubes {
    right: 1%;
  }
}

@media (max-width: 700px) {
  .landing-scene {
    margin-top: 14px;
  }

  .scene-art {
    inset: 0px -8% 5%;
  }
}

@media (max-width: 700px) {
  .scene-panel {
    padding-bottom: 1.8cqw;
  }

  .scene-art {
    bottom: 0px;
  }
}

@media (min-width: 701px) and (max-width: 960px) {
  .landing-hero-copy {
    width: 45%;
  }
}

.home-page-shell .polish-icon {
  stroke-width: var(--icon-stroke, 2);
}

.home-page-shell .polish-icon .icon-face, .scene-cube-vector .icon-face {
  fill: currentcolor;
  fill-opacity: 0.08;
  stroke: none;
}

.scene-coordinate {
  position: absolute;
  width: 100%;
  aspect-ratio: 1672 / 941;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.scene-art .scene-foreground {
  position: absolute;
  inset: 0px;
}

.scene-foreground img {
  display: block;
  width: 100%;
  height: 100%;
}

.scene-planet {
  position: absolute;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  isolation: isolate;
}

.scene-planet::before {
  content: "";
  position: absolute;
  border-radius: 50%;
}

.scene-planet picture {
  position: relative;
  border-radius: 50%;
  mask-image: radial-gradient(circle closest-side, rgb(0, 0, 0) 93%, rgb(0, 0, 0) 95%, transparent 99%);
}

.scene-earth {
  display: block;
  border-radius: 50%;
}

.scene-planet-shade {
  position: absolute;
  inset: 3%;
  border-radius: 50%;
  pointer-events: none;
}

.scene-lights {
  pointer-events: none;
}

.city-light {
  opacity: 0.55;
  animation-name: polished-city-glow;
}

@keyframes polished-city-glow { 
  0% { opacity: 0.32; }
  100% { opacity: 0.85; }
}

.scene-panel {
  min-height: 0px;
  display: block;
  padding: 0px;
  border: 0px;
  border-radius: 0px;
  background: none;
  box-shadow: none;
  transform: none;
  z-index: 2;
}

.scene-panel::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 3%;
  right: 5%;
}

.scene-cubes {
  display: block;
  transform: none;
}

.scene-cubes .scene-cube-vector {
  display: block;
  width: 100%;
  height: auto;
}

.scene-world span {
  background: linear-gradient(90deg, rgb(64, 180, 221), rgba(20, 151, 197, 0.19));
}

.scene-pause {
  box-shadow: rgba(149, 219, 255, 0.043) 0px 1px 0px inset;
}

.scene-pause svg {
  stroke-width: var(--icon-stroke, 2);
}

.landing-card::before {
  content: "";
  pointer-events: none;
  position: absolute;
  height: 1px;
  top: 0px;
}

.home-page-shell .landing-primary:hover {
  background: linear-gradient(125deg, rgb(82, 204, 251), rgb(47, 188, 246));
}

.home-page-shell .landing-button:focus-visible, .scene-pause:focus-visible {
  outline: rgb(165, 229, 255) solid 2px;
  outline-offset: 4px;
}

@media (min-width: 701px) and (max-width: 960px) {
  .scene-panel {
    left: 43%;
    top: 27%;
    width: 51%;
    height: auto;
  }
}

@media (max-width: 700px) {
  .scene-panel {
    height: auto;
    min-height: 0px;
    padding: 0px;
  }

  .scene-cubes {
    right: 0px;
    width: 11%;
    bottom: 20%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .city-light {
    animation: auto ease 0s 1 normal none running none;
    opacity: 0.5;
  }
}

.home-page-shell {
  --landing-line: #214357;
  --landing-ease: 220ms cubic-bezier(.2,.7,.3,1);
}

.home-page-shell .page {
  overflow: visible;
}

.landing-page {
  overflow: clip;
}

.home-page-shell .landing-header {
  position: sticky;
  top: 0px;
  height: 76px;
  min-height: 76px;
  border-bottom: 1px solid rgba(110, 181, 218, 0.08);
  z-index: 30;
}

.home-page-shell .header-inner {
  height: 76px;
  min-height: 76px;
}

.home-page-shell .site-header .nav-link {
  color: rgb(172, 191, 206);
  transition: color 180ms;
}

.home-page-shell .site-header .nav-link:hover {
  color: rgb(240, 250, 255);
}

.landing-reading-progress {
  position: fixed;
  top: 76px;
  left: 0px;
  right: 0px;
  height: 1px;
  z-index: 31;
  pointer-events: none;
}

.landing-reading-progress i {
  display: block;
  height: 100%;
  background: rgb(105, 201, 235);
  transform: scaleX(0);
  transform-origin: left center;
}

.landing-page h2 {
  font-size: clamp(32px, 3.1vw, 46px);
  line-height: 1.15;
  letter-spacing: -0.043em;
  text-wrap: balance;
}

.landing-page h3 {
  font-weight: 570;
}

.landing-eyebrow {
  font-size: 10px;
  font-weight: 550;
  letter-spacing: 0.15em;
  color: rgb(119, 204, 232);
  margin-bottom: 22px;
}

.chapter-number {
  letter-spacing: 0.06em;
  margin-right: 16px;
  font-variant-numeric: tabular-nums;
}

.home-page-shell .landing-button {
  padding: 13px 22px;
  font-size: 13px;
  font-weight: 600;
}

.home-page-shell .landing-secondary {
  color: rgb(232, 243, 251);
}

.home-page-shell .landing-button .icon, .landing-link .icon {
  transition: transform 220ms;
}

.home-page-shell .landing-button:hover .icon, .landing-link:hover .icon {
  transform: translateX(3px);
}

.home-page-shell .landing-button:active {
  box-shadow: rgba(0, 18, 35, 0.208) 0px 2px 6px inset;
}

.home-page-shell :is(a, button):focus-visible {
  outline: rgb(164, 233, 255) solid 2px;
  outline-offset: 5px;
}

.landing-hero {
  margin-top: -76px;
  padding-top: 76px;
}

.landing-hero::before {
  content: "";
  position: absolute;
  inset: 0px;
  pointer-events: none;
  background-image: radial-gradient(circle at 22% 22%, rgba(124, 172, 216, 0.26) 0.65px, transparent 1px), radial-gradient(circle at 70% 14%, rgba(132, 199, 230, 0.18) 0.65px, transparent 1px);
  background-size: 173px 197px, 259px 311px;
  mask-image: linear-gradient(transparent, rgb(0, 0, 0) 30%, transparent 95%);
}

.landing-hero .landing-eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
}

.landing-hero .landing-eyebrow::before {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgb(122, 214, 244);
  box-shadow: rgba(98, 202, 255, 0.376) 0px 0px 12px;
}

:lang(ja) .landing-page h1 {
  font-size: clamp(32px, 3.5vw, 56px);
  letter-spacing: -0.035em;
}

:lang(ja) .landing-title-blue {
  white-space: normal;
}

.landing-actions {
  margin-top: 32px;
  gap: 12px;
}

.landing-assurances {
  font-size: 10px;
  flex-wrap: wrap;
}

.landing-assurances svg {
  width: 14px;
  height: 14px;
  color: rgb(116, 183, 215) !important;
}

.landing-scene {
  aspect-ratio: 1672 / 941;
}

.scene-world {
  line-height: 1.7;
}

.scene-caption {
  z-index: 4;
  color: rgb(157, 184, 202);
  text-shadow: none;
  font-size: 9px;
}

.scene-pause {
  right: 3%;
  bottom: -1%;
  width: 40px;
  height: 40px;
  border-color: rgba(58, 101, 124, 0.44);
  background: rgba(7, 26, 39, 0.85);
}

.hero-bottom {
  position: relative;
  z-index: 4;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  border-top: 1px solid rgba(107, 161, 194, 0.145);
  color: rgb(129, 160, 181);
  font-size: 11px;
  letter-spacing: 0.015em;
}

.hero-scroll {
  display: inline-flex;
  align-items: center;
  gap: 22px;
  min-height: 44px;
  color: rgb(195, 214, 227);
}

.hero-scroll .icon {
  transform: rotate(90deg);
  color: rgb(133, 198, 233) !important;
}

.landing-story {
  --story-progress: 1;
  position: relative;
  border-top: 1px solid rgba(127, 175, 209, 0.08);
  padding-block: 65px 45px;
  background: radial-gradient(at 80% 48%, rgba(11, 51, 81, 0.23), transparent 55%);
}

.story-layout {
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  column-gap: 7%;
  align-items: start;
}

.story-chapter {
  grid-column: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.story-problem {
  grid-row: 1;
}

.story-solution {
  grid-row: 2;
}

.story-chapter h2 span {
  display: block;
}

.story-chapter p {
  font-size: 15px;
  line-height: 1.8;
  margin-top: 25px;
  max-width: 420px;
}

.story-fragments {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 26px;
}

.story-fragments > span {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 7px 9px;
  border: 1px solid rgba(87, 125, 149, 0.12);
  border-radius: 5px;
  color: rgb(147, 169, 188);
  font-size: 10px;
}

.story-fragments .icon {
  width: 12px;
  height: 12px;
  color: rgb(123, 154, 177) !important;
}

.story-solution .landing-link {
  margin-block: 18px 23px;
  font-size: 13px;
  color: rgb(142, 214, 245);
}

.story-principles {
  display: grid;
  gap: 11px;
  font-size: 12px;
  color: rgb(189, 208, 222);
}

.story-principles > span {
  display: flex;
  align-items: center;
  gap: 10px;
}

.story-principles .icon {
  width: 15px;
  height: 15px;
  color: rgb(119, 200, 206) !important;
}

.story-visual {
  grid-area: 1 / 2 / 3;
  position: sticky;
  top: max(108px, -255px + 50vh);
  height: 510px;
  width: 100%;
  align-self: start;
  margin-top: 50px;
  isolation: isolate;
}

.story-grid {
  position: absolute;
  inset: -50px -20px;
  z-index: -2;
  background: linear-gradient(rgba(58, 123, 158, 0.07) 1px, transparent 1px) 0% 0% / 44px 44px, linear-gradient(90deg, rgba(58, 123, 158, 0.07) 1px, transparent 1px);
  mask-image: radial-gradient(rgb(0, 0, 0), transparent 70%);
  transform: perspective(700px) rotateX(22deg);
}

.story-orbit {
  position: absolute;
  z-index: -1;
  width: 88%;
  aspect-ratio: 1 / 1;
  top: 7%;
  left: 6%;
  border: 1px solid rgba(59, 134, 167, 0.125);
  border-radius: 50%;
  transform: perspective(900px) rotateY(-25deg) rotateX(35deg);
}

.orbit-two {
  inset: 17% 16% auto;
  width: 68%;
  transform: perspective(900px) rotateY(25deg) rotateX(-25deg);
}

.story-system-frame {
  position: absolute;
  inset: 20px 5% 38px;
  border: 1px solid rgba(115, 193, 226, 0.29);
  border-radius: 18px;
  opacity: var(--story-progress);
  transform: perspective(1000px) rotateY(calc((1 - var(--story-progress)) * -12deg));
}

.story-core {
  position: absolute;
  left: 14%;
  top: 44px;
  right: 14%;
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 17px;
  color: rgb(210, 233, 246);
  opacity: calc(.4 + var(--story-progress) * .6);
}

.story-core > .icon {
  width: 29px;
  height: 29px;
  color: rgb(121, 213, 245) !important;
}

.story-core b {
  color: rgb(113, 196, 232);
  font-weight: 550;
}

.story-core-line {
  height: 1px;
  margin-left: 14px;
  flex: 1 1 0%;
  background: linear-gradient(90deg, rgba(69, 148, 189, 0.5), transparent);
}

.story-source {
  --scatter-x: -34px;
  --scatter-y: -14px;
  --scatter-r: -8deg;
  position: absolute;
  top: calc(107px + var(--row) * 80px);
  left: 50%;
  width: calc(62% + var(--story-progress) * 14%);
  min-height: 65px;
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 13px 16px;
  border: 1px solid rgba(83, 139, 170, 0.36);
  border-radius: 9px;
  transform: translateX(calc(-50% + (1 - var(--story-progress)) * var(--scatter-x))) translateY(calc((1 - var(--story-progress)) * var(--scatter-y))) rotate(calc((1 - var(--story-progress)) * var(--scatter-r)));
}

.story-source-1 {
  --scatter-x: 55px;
  --scatter-y: -5px;
  --scatter-r: 7deg;
}

.story-source-2 {
  --scatter-x: -42px;
  --scatter-y: 14px;
  --scatter-r: -5deg;
}

.story-source-3 {
  --scatter-x: 48px;
  --scatter-y: 28px;
  --scatter-r: 6deg;
}

.story-source-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 7px;
  flex: 0 0 auto;
}

.story-source-icon .icon {
  width: 20px;
  height: 20px;
}

.story-source strong {
  display: block;
  font-size: 12px;
  font-weight: 550;
  color: rgb(220, 235, 246);
  margin-bottom: 4px;
}

.story-source div > span {
  display: block;
  font-size: 10px;
  line-height: 1.4;
  color: rgb(142, 172, 191);
}

.story-source-check {
  opacity: var(--story-progress);
  margin-left: auto;
  display: flex;
}

.story-source-check .icon {
  width: 15px;
  height: 15px;
}

.story-status {
  position: absolute;
  left: 0px;
  right: 0px;
  bottom: 2px;
  text-align: center;
  font-size: 10px;
  color: rgb(129, 172, 196);
}

.story-status-before {
  display: block;
  opacity: clamp(0,calc(1 - var(--story-progress) * 3),1);
}

.story-status-after {
  position: absolute;
  inset: 0px 0px auto;
  opacity: clamp(0,calc(var(--story-progress) * 3 - 2),1);
}

.story-progress {
  display: block;
  width: 80px;
  height: 2px;
  margin: 15px auto 0px;
  background: rgba(71, 114, 141, 0.2);
}

.story-progress i {
  display: block;
  height: 100%;
  background: rgb(129, 204, 231);
  transform: scaleX(var(--story-progress));
  transform-origin: left center;
}

.landing-section {
  border-color: rgba(107, 154, 178, 0.14);
  scroll-margin-top: 96px;
  background: none;
}

#perspective {
  scroll-margin-top: 76px;
}

.landing-grid {
  gap: 20px;
}

.landing-feature {
  display: flex;
  flex-direction: column;
  gap: 24px;
  min-height: 380px;
  padding: 28px 28px 14px;
}

.landing-feature > div {
  width: 100%;
  flex: 1 1 0%;
}

.landing-feature h3 {
  font-size: 19px;
  margin: 0px 0px 14px;
}

.landing-feature p {
  font-size: 14px;
  line-height: 1.75;
}

.landing-feature .landing-link {
  min-height: 44px;
  font-size: 12px;
  color: rgb(148, 207, 233);
}

.feature-detail {
  position: relative;
  width: 100%;
  height: 100px;
  margin-block: 22px 14px;
  overflow: hidden;
}

.feature-timeline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 22px 8px 0px;
}

.feature-timeline > span {
  position: relative;
  z-index: 1;
  width: 7px;
  height: 7px;
  border: 1px solid rgb(88, 147, 181);
  background: rgb(16, 44, 64);
  border-radius: 50%;
}

.feature-timeline > span:nth-child(3) {
  border-color: rgb(156, 230, 252);
  background: rgb(117, 195, 224);
  box-shadow: rgba(101, 198, 248, 0.333) 0px 0px 15px;
}

.feature-timeline > i {
  position: absolute;
  top: 25px;
  left: 8px;
  right: 8px;
  height: 1px;
  background: linear-gradient(90deg, rgb(56, 87, 112), rgb(123, 182, 213) 70%, rgb(56, 87, 112));
}

.feature-timeline > div {
  position: absolute;
  left: 0px;
  right: 0px;
  top: 43px;
  min-height: 43px;
  border: 1px solid rgba(79, 130, 156, 0.25);
  border-radius: 6px;
  background: rgba(13, 40, 59, 0.48);
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 10px;
  font-size: 10px;
  color: rgb(157, 186, 205);
}

.feature-detail .icon {
  width: 15px;
  height: 15px;
  color: rgb(124, 186, 217) !important;
}

.feature-diff > div {
  border: 1px solid rgba(91, 121, 140, 0.16);
  border-radius: 5px;
  height: 28px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font-size: 12px;
  color: rgb(132, 149, 174);
  background: rgba(36, 51, 74, 0.25);
}

.feature-diff > div + div {
  margin-top: 6px;
  background: rgba(13, 76, 76, 0.208);
  border-color: rgba(84, 180, 180, 0.2);
  color: rgb(155, 213, 207);
}

.feature-diff i {
  width: 38%;
  height: 3px;
  background: currentcolor;
  opacity: 0.35;
  border-radius: 2px;
}

.feature-diff i + i {
  width: 23%;
  opacity: 0.2;
}

.feature-detail-label {
  display: flex;
  align-items: center;
  gap: 7px;
  margin-top: 10px;
  font-size: 10px;
  color: rgb(137, 174, 197);
}

.feature-sources {
  padding-top: 2px;
}

.feature-sources > span {
  position: absolute;
  top: 6px;
  left: 8%;
  width: 80%;
  height: 43px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 11px;
  border: 1px solid rgba(71, 120, 146, 0.333);
  border-radius: 6px;
  background: rgb(12, 38, 57);
  transform: rotate(-5deg);
}

.feature-sources > span:nth-child(2) {
  top: 26px;
  left: 13%;
  transform: rotate(2deg);
}

.feature-sources > span:nth-child(3) {
  top: 49px;
  left: 3%;
  transform: rotate(-1deg);
}

.feature-sources i {
  height: 3px;
  background: rgba(138, 174, 192, 0.29);
  flex: 1 1 0%;
  border-radius: 2px;
}

.feature-sources .icon:last-child {
  color: rgb(129, 197, 200) !important;
}

.landing-core-section {
  padding-block: 90px;
}

.landing-core-section h2 {
  margin-bottom: 38px;
}

.landing-access {
  padding-block: 90px;
}

.landing-access .landing-eyebrow {
  font-size: 10px;
  margin-bottom: 22px;
}

.landing-access h2 {
  font-size: clamp(32px, 3.1vw, 44px);
  margin-bottom: 36px;
}

.landing-plan-label {
  font-size: 10px;
  margin-bottom: 20px;
  color: rgb(145, 172, 189);
}

.landing-plan h3 {
  font-size: 20px;
  margin-bottom: 20px;
}

.landing-plan ul {
  font-size: 13px;
  line-height: 1.6;
  gap: 8px;
  margin-bottom: 24px;
}

.landing-plan .landing-button, .landing-unavailable {
  border-radius: 8px;
  font-size: 12px;
}

.landing-plan-badge {
  right: 22px;
  top: 22px;
  font-size: 9px;
  color: rgb(170, 214, 229);
  border-color: rgb(57, 112, 139);
}

.landing-plan::after {
  opacity: 0.35;
}

.landing-unavailable {
  background: rgba(21, 53, 72, 0.44);
  border-color: rgb(48, 85, 107);
  color: rgb(156, 187, 206);
}

.landing-page .landing-plan li .icon {
  color: rgb(139, 191, 196);
  width: 15px;
  height: 15px;
  margin-top: 3px;
}

.landing-closing {
  position: relative;
  padding: 130px 0px 110px;
  border-top: 1px solid rgba(77, 141, 175, 0.17);
  background: radial-gradient(at 50% 42%, rgba(11, 62, 96, 0.23), transparent 65%);
  isolation: isolate;
  overflow: clip;
}

.closing-inner {
  position: relative;
  text-align: center;
}

.closing-inner .landing-eyebrow {
  margin-bottom: 24px;
}

.closing-inner h2 {
  font-size: clamp(32px, 3.5vw, 50px);
  font-weight: 560;
  line-height: 1.2;
}

.closing-inner > p {
  max-width: 480px;
  margin: 25px auto 0px;
  font-size: 15px;
  line-height: 1.8;
}

.closing-inner .landing-actions {
  justify-content: center;
  gap: 28px;
  margin-top: 30px;
}

.closing-inner .landing-link {
  color: rgb(176, 207, 223);
  font-size: 12px;
}

.closing-note {
  margin-top: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-size: 10px;
  color: rgb(133, 163, 185);
}

.closing-note .icon {
  width: 13px;
  height: 13px;
  color: rgb(132, 180, 203) !important;
}

.closing-orbits {
  position: absolute;
  width: 1100px;
  height: 650px;
  left: 50%;
  top: 30%;
  transform: translate(-50%, -50%);
  z-index: -1;
  pointer-events: none;
}

.closing-orbits i {
  position: absolute;
  inset: 0px;
  border: 1px solid rgba(97, 160, 192, 0.098);
  border-radius: 50%;
  transform: rotate(-14deg);
}

.closing-orbits i:nth-child(2) {
  inset: 40px 70px;
  transform: rotate(14deg);
}

.closing-orbits i:nth-child(3) {
  inset: 90px 135px;
  transform: rotate(-14deg);
}

.closing-orbits > span {
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  position: absolute;
  top: 145px;
  left: calc(50% - 28px);
  border: 1px solid rgba(108, 171, 199, 0.27);
  border-radius: 14px;
  background: linear-gradient(145deg, rgb(20, 57, 76), rgb(6, 27, 43));
  box-shadow: rgba(52, 194, 227, 0.08) 0px 0px 40px;
  color: rgb(153, 214, 238);
}

.closing-orbits .icon {
  width: 31px;
  height: 31px;
}

.home-page-shell .landing-footer {
  padding-block: 36px;
  border-color: rgba(78, 129, 155, 0.19);
}

.landing-footer nav a, .landing-footer nav button, .landing-footer p {
  color: rgb(146, 174, 191);
  font-size: 11px;
}

.depth-motion .landing-grid > :nth-child(2) {
  animation-delay: 70ms;
}

.depth-motion .landing-grid > :nth-child(3) {
  animation-delay: 140ms;
}

.depth-paused [data-reveal] {
  opacity: 1 !important;
  transform: none !important;
  animation: auto ease 0s 1 normal none running none !important;
}

.depth-paused .city-light {
  animation-play-state: paused;
}

@keyframes depth-reveal { 
  0% { opacity: 0; transform: translateY(20px); }
  100% { opacity: 1; transform: none; }
}

@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .landing-feature {
    transition: border-color 250ms, box-shadow 250ms;
  }
}

@media (min-width: 1680px) {
  .home-page-shell .container {
    width: min(100% - 160px, 1400px);
  }
}

@media (min-width: 961px) and (max-width: 1190px) {
  .home-page-shell .container {
    width: calc(100% - 72px);
  }

  .landing-page .landing-lead {
    max-width: 350px;
    font-size: 15px;
  }

  .landing-assurances {
    max-width: 340px;
  }

  .landing-actions {
    gap: 10px;
  }

  .home-page-shell .landing-hero .landing-button {
    padding-inline: 15px;
    font-size: 12px;
  }

  .landing-feature, .landing-plan {
    padding: 22px;
  }

  .landing-plan h3 {
    font-size: 18px;
  }

  .landing-plan-badge {
    right: 15px;
    top: 18px;
    font-size: 8px;
  }

  .landing-plan ul {
    font-size: 12px;
  }

  .story-layout {
    column-gap: 5%;
  }

  .story-source {
    padding-inline: 11px;
    gap: 9px;
  }

  .story-source div > span {
    font-size: 9px;
  }
}

@media (max-width: 960px) {
  .home-page-shell .landing-header, .home-page-shell .header-inner {
    height: 68px;
    min-height: 68px;
  }

  .landing-reading-progress {
    top: 68px;
  }

  .landing-hero {
    margin-top: -68px;
    padding-top: 68px;
  }

  .landing-hero-inner {
    display: flex;
    flex-direction: column;
  }

  .landing-hero-copy {
    max-width: 620px;
  }

  .landing-title-blue {
    white-space: normal;
  }

  .landing-page .landing-lead {
    max-width: 540px;
    font-size: 16px;
  }

  .landing-assurances {
    max-width: none;
    font-size: 11px;
  }

  .landing-scene {
    position: relative;
    align-self: center;
  }

  .scene-art {
    inset: 0px;
  }

  .scene-cubes {
    right: 4%;
    bottom: 12%;
  }

  .scene-caption {
    left: auto;
  }

  .scene-pause {
    display: none;
  }

  .city-light {
    animation: auto ease 0s 1 normal none running none;
    opacity: 0.55;
  }

  .landing-scene::after {
    display: none;
  }

  .hero-bottom {
    font-size: 10px;
  }

  .landing-story {
    padding-block: 45px 65px;
  }

  .story-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 25px;
    max-width: 650px;
  }

  .story-chapter {
    grid-column: 1;
  }

  .story-chapter h2 {
    max-width: 550px;
  }

  .story-chapter p {
    max-width: 550px;
  }

  .story-problem {
    grid-row: 1;
  }

  .story-visual {
    grid-area: 2 / 1;
    position: relative;
    top: auto;
    height: 500px;
    max-width: 620px;
    margin: 0px auto;
  }

  .story-solution {
    grid-row: 3;
  }

  .story-source {
    transform: translateX(-50%);
    width: 76%;
  }

  .story-system-frame, .story-source-check, .story-core, .story-status-after {
    opacity: 1;
  }

  .story-status-before {
    opacity: 0;
  }

  .landing-section {
    scroll-margin-top: 88px;
  }

  .landing-feature {
    padding: 23px 19px 12px;
    gap: 23px;
    min-height: 370px;
  }

  .landing-feature h3 {
    font-size: 17px;
  }

  .landing-feature p {
    font-size: 13px;
  }

  .landing-grid {
    gap: 12px;
  }

  .landing-plan {
    padding: 22px 18px;
  }

  .landing-plan h3 {
    font-size: 19px;
  }

  .landing-plan ul {
    font-size: 12px;
  }

  .landing-plan-badge {
    position: static;
    order: 0;
    margin-top: -8px;
    margin-bottom: 14px;
  }

  .landing-plan-label {
    margin-bottom: 14px;
  }

  .closing-orbits {
    width: 850px;
    height: 620px;
  }
}

@media (max-width: 700px) {
  .home-page-shell .landing-signup {
    font-size: 11px;
    padding: 10px 12px;
  }

  .landing-page h1 {
    font-weight: 620;
  }

  .landing-actions {
    margin-top: 25px;
    flex-wrap: wrap;
    gap: 10px;
  }

  .home-page-shell .landing-hero .landing-button {
    font-size: 12px;
  }

  .scene-coordinate {
    top: 47%;
  }

  .scene-cubes {
    display: none;
  }

  .hero-bottom > span {
    max-width: 47%;
    line-height: 1.7;
  }

  .landing-page h2, .landing-access h2 {
    font-size: clamp(29px, 7.2vw, 38px);
    line-height: 1.18;
  }

  .landing-eyebrow {
    font-size: 9px;
    letter-spacing: 0.12em;
    margin-bottom: 18px;
  }

  .chapter-number {
    margin-right: 10px;
  }

  .landing-story {
    padding-block: 22px 32px;
  }

  .story-layout {
    gap: 14px;
  }

  .story-chapter {
    padding-block: 35px;
  }

  .story-chapter p {
    font-size: 14px;
    line-height: 1.8;
    margin-top: 20px;
  }

  .story-fragments {
    gap: 6px;
    margin-top: 22px;
  }

  .story-fragments > span {
    font-size: 9px;
    padding: 7px;
  }

  .story-visual {
    height: 460px;
  }

  .story-system-frame {
    inset: 8px 0px 38px;
  }

  .story-core {
    top: 30px;
    left: 8%;
    right: 8%;
    font-size: 17px;
  }

  .story-source {
    left: 50%;
    width: 86%;
    top: calc(86px + var(--row) * 76px);
    min-height: 62px;
    padding: 12px;
    gap: 10px;
  }

  .story-source strong {
    font-size: 12px;
  }

  .story-source div > span {
    font-size: 10px;
  }

  .story-status {
    font-size: 9px;
  }

  .story-principles {
    font-size: 12px;
  }

  .landing-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .landing-feature {
    min-height: 300px;
    padding: 25px 25px 14px;
    gap: 20px;
  }

  .landing-feature h3 {
    font-size: 20px;
  }

  .landing-feature p {
    font-size: 14px;
  }

  .feature-detail {
    height: 94px;
    max-width: 350px;
    margin-block: 16px 6px;
  }

  .landing-feature .landing-link {
    font-size: 12px;
  }

  .landing-core-section h2 {
    margin-bottom: 30px;
  }

  .landing-plan h3 {
    font-size: 22px;
  }

  .landing-plan ul {
    font-size: 14px;
  }

  .landing-plan-badge {
    position: absolute;
    top: 25px;
    right: 23px;
    margin: 0px;
    font-size: 9px;
  }

  .landing-access h2 {
    margin-bottom: 28px;
  }

  .closing-inner h2 {
    font-size: clamp(28px, 7.2vw, 38px);
  }

  .closing-inner > p {
    font-size: 14px;
  }

  .closing-inner .landing-actions {
    flex-direction: column;
    gap: 10px;
    align-items: center;
  }

  .closing-note {
    font-size: 9px;
    line-height: 1.6;
    align-items: flex-start;
  }

  .closing-note .icon {
    flex: 0 0 auto;
  }

  .closing-orbits {
    width: 620px;
    height: 700px;
    top: 32%;
  }

  .closing-orbits > span {
    top: 140px;
    width: 44px;
    height: 44px;
    left: calc(50% - 22px);
    border-radius: 12px;
  }

  .closing-orbits .icon {
    width: 25px;
    height: 25px;
  }

  .home-page-shell .landing-footer {
    padding-block: 28px;
  }

  .landing-footer nav a, .landing-footer nav button {
    font-size: 12px;
  }
}

@media (max-width: 360px) {
  .home-page-shell .container {
    width: calc(100% - 32px);
  }

  .home-page-shell .landing-signup {
    font-size: 10px;
    padding-inline: 9px;
  }

  .landing-actions {
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }

  .landing-assurances {
    font-size: 9px;
  }

  .story-source {
    padding: 10px;
    gap: 8px;
  }

  .story-source div > span {
    font-size: 9px;
  }

  .story-source-icon {
    width: 29px;
    height: 29px;
  }

  .landing-plan {
    padding: 24px 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .landing-page *, .landing-page ::before, .landing-page ::after {
    scroll-behavior: auto !important;
  }

  .landing-page [data-reveal] {
    opacity: 1 !important;
    transform: none !important;
  }

  .landing-page .scene-planet, .landing-page .scene-panel, .landing-page .scene-cubes {
    transform: none !important;
  }

  .landing-story {
    --story-progress: 1 !important;
  }

  .scene-pause {
    display: none;
  }
}

.landing-atmosphere {
  position: absolute;
  inset: 0px;
  z-index: -1;
  pointer-events: none;
  overflow: clip;
}

.landing-atmosphere::before {
  content: "";
  position: absolute;
  inset: 0px;
  background: radial-gradient(65% 11% at 94% 8%, rgba(17, 98, 150, 0.333), transparent 80%), radial-gradient(70% 13% at 7% 28%, rgba(19, 88, 136, 0.224), transparent 80%), radial-gradient(66% 15% at 96% 48%, rgba(16, 90, 151, 0.235), transparent 80%), radial-gradient(75% 14% at 0% 68%, rgba(22, 91, 145, 0.208), transparent 80%), radial-gradient(70% 12% at 78% 91%, rgba(19, 94, 147, 0.25), transparent 80%);
}

.atmosphere-camera {
  position: sticky;
  top: 0px;
  height: min(100svh, 1100px);
  width: 100%;
  isolation: isolate;
}

.atmosphere-far, .atmosphere-near {
  position: absolute;
  inset: -12% -8%;
}

.atmosphere-far {
  background: radial-gradient(56% 80% at 90% 45%, rgba(37, 136, 200, 0.094), transparent 74%), radial-gradient(64% 65% at 10% 78%, rgba(18, 99, 164, 0.1), transparent 78%);
}

.atmosphere-near {
  background: radial-gradient(80% 20% at 78% 70%, rgba(57, 142, 184, 0.063), transparent 85%), linear-gradient(116deg, transparent 22%, rgba(57, 155, 204, 0.016) 42%, rgba(57, 155, 204, 0.043) 48%, transparent 64%);
}

.depth-motion .atmosphere-far {
  transform: translate3d(var(--atmosphere-x,0px),var(--atmosphere-y,0px),0);
}

.depth-motion .atmosphere-near {
  transform: translate3d(calc(var(--atmosphere-x,0px) * -.55),calc(var(--atmosphere-y,0px) * -.6),0);
}

.landing-hero {
  overflow: visible;
}

.landing-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
}

.scene-art .scene-foreground {
  mask-image: linear-gradient(0deg, transparent, rgb(0, 0, 0) 13%, rgb(0, 0, 0) 18%, transparent 31%);
}

.landing-story, .landing-section, .landing-closing {
  --light-x: 80%;
  --light-color: #1676b32e;
  --fill-x: 12%;
  --fill-color: #1046751a;
  isolation: isolate;
  background: transparent;
  border-top-color: transparent;
}

.landing-story::before, .landing-section::before, .landing-closing::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -150px -8%;
  pointer-events: none;
  background: radial-gradient(ellipse 55% 57% at var(--light-x) 48%,var(--light-color),transparent 80%),
    radial-gradient(ellipse 64% 50% at var(--fill-x) 66%,var(--fill-color),transparent 84%);
}

.depth-motion :is(.landing-story, .landing-section, .landing-closing)::before {
  transform: translate3d(0,var(--section-light-y,0px),0);
}

.landing-story {
  --light-x: 79%;
  --light-color: #1283aa2a;
  --fill-x: 6%;
  --fill-color: #0e438421;
}

.landing-core-section {
  --light-x: 25%;
  --light-color: #2367ad35;
  --fill-x: 85%;
  --fill-color: #15558420;
}

.landing-access {
  --light-x: 80%;
  --light-color: #175d9729;
  --fill-x: 13%;
  --fill-color: #1b437620;
}

.landing-closing {
  --light-x: 52%;
  --light-color: #1685b341;
  --fill-x: 42%;
  --fill-color: #174e8136;
}

.landing-core-section::after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  height: 340px;
  border: 1px solid rgba(91, 157, 206, 0.086);
  border-radius: 50%;
  background: radial-gradient(at 50% 100%, rgba(21, 92, 149, 0.075), transparent 69%);
  mask-image: linear-gradient(90deg, transparent 5%, rgb(0, 0, 0) 36%, rgb(0, 0, 0) 72%, transparent 96%);
}

.landing-core-section::after {
  top: -140px;
  left: -30%;
  right: -30%;
  transform: rotate(6deg);
  border-color: rgba(89, 153, 202, 0.07);
}

.landing-card {
  border-color: rgba(84, 131, 164, 0.318);
}

.story-fragments > span {
  background: rgba(7, 26, 43, 0.27);
}

.closing-orbits i:nth-child(3) {
  border-color: rgba(116, 182, 213, 0.082);
}

.home-page-shell .landing-footer {
  border-top-color: rgba(101, 152, 179, 0.133);
}

.home-page-shell .landing-footer p {
  color: rgb(162, 187, 205);
}

@media (max-width: 960px) {
  .atmosphere-camera {
    display: none;
  }

  .landing-atmosphere::before {
    background: radial-gradient(110% 12% at 100% 8%, rgba(22, 110, 159, 0.25), transparent 80%), radial-gradient(120% 17% at 0% 33%, rgba(23, 89, 147, 0.176), transparent 80%), radial-gradient(115% 18% at 100% 59%, rgba(18, 107, 165, 0.17), transparent 80%), radial-gradient(130% 17% at 15% 87%, rgba(24, 91, 143, 0.19), transparent 80%);
  }

  .landing-story::before, .landing-section::before, .landing-closing::before {
    inset: -90px -20%;
  }

  .landing-core-section::after {
    height: 220px;
    top: -80px;
    opacity: 0.6;
  }
}

@media (prefers-reduced-motion: reduce) {
  .atmosphere-far, .atmosphere-near, .landing-story::before, .landing-section::before, .landing-closing::before {
    transform: none !important;
  }
}

.landing-page {
  --landing-gap: 20px;
  --story-progress: 1;
}

.landing-brand-original {
  display: block;
  width: 34px;
  height: 34px;
  flex: 0 0 auto;
}

.home-page-shell .landing-header {
  backdrop-filter: none;
}

.hero-bottom {
  border-top-color: rgba(91, 132, 155, 0.15);
}

.home-page-shell .landing-signup {
  min-height: 44px;
}

.scene-planet .scene-lights {
  clip-path: circle(47.6% at 50% 50%);
}

.scene-planet-highlight {
  position: absolute;
  inset: 2.4%;
  border-radius: 50%;
  pointer-events: none;
  opacity: 0.5;
  animation: 13s ease-in-out -4s infinite alternate none running globe-highlight;
}

@keyframes globe-highlight { 
  0% { opacity: 0.36; }
  100% { opacity: 0.62; }
}

.scene-still .scene-planet-highlight {
  animation-play-state: paused;
}

.city-light {
  animation-duration: var(--light-duration);
}

.scene-panel {
  container-type: inline-size;
  aspect-ratio: auto;
  height: auto;
}

.scene-panel::before {
  bottom: -3%;
}

.preview-window {
  position: relative;
  display: grid;
  grid-template-columns: 20% minmax(0px, 1fr);
  width: 100%;
  border: 1px solid rgb(81, 162, 199);
  color: rgb(229, 240, 249);
  transform-origin: 50% 50%;
  font-size: 1.75cqw;
  line-height: 1.4;
  overflow: hidden;
}

.preview-window .icon {
  width: 2.2cqw;
  height: 2.2cqw;
  flex: 0 0 auto;
  stroke-width: var(--icon-stroke, 2);
}

.preview-sidebar {
  border-right: 1px solid rgb(24, 62, 85);
  padding: 2.1cqw 1.25cqw;
  min-width: 0px;
}

.preview-brand {
  display: flex;
  align-items: center;
  gap: 0.55cqw;
  white-space: nowrap;
  font-size: 1.65cqw;
  letter-spacing: -0.04em;
}

.preview-brand img {
  width: 2.9cqw;
  height: 2.9cqw;
  flex: 0 0 auto;
}

.preview-brand strong {
  font-weight: 650;
}

.preview-nav {
  display: grid;
  gap: 0.55cqw;
}

.preview-nav > div {
  position: relative;
  min-height: 4.9cqw;
  display: flex;
  align-items: center;
  gap: 0.9cqw;
  padding: 0.75cqw;
  border-radius: 0.65cqw;
  color: rgb(164, 188, 205);
  font-size: 1.5cqw;
}

.preview-nav span {
  min-width: 0px;
  overflow-wrap: anywhere;
}

.preview-nav .selected {
  background: rgb(16, 51, 74);
  color: rgb(229, 244, 255);
}

.preview-nav .selected::before {
  position: absolute;
  content: "";
  top: 25%;
  bottom: 25%;
  left: 0px;
  width: 1px;
  background: rgb(115, 211, 255);
}

.preview-nav .icon {
  color: rgb(112, 181, 215);
  width: 1.95cqw;
  height: 1.95cqw;
}

.preview-sidebar-line {
  display: block;
  height: 1px;
  background: rgb(24, 62, 85);
  margin: 3cqw 0.8cqw;
}

.preview-workspace {
  min-width: 0px;
}

.preview-topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.6cqw 2.3cqw;
  border-bottom: 1px solid rgb(24, 62, 85);
  color: rgb(169, 194, 210);
  font-size: 1.4cqw;
}

.preview-topbar > span {
  display: flex;
  align-items: center;
  gap: 1.1cqw;
}

.preview-topbar i {
  display: grid;
  place-items: center;
  width: 3cqw;
  height: 3cqw;
  border-radius: 50%;
  border: 1px solid rgb(49, 86, 109);
  background: rgb(21, 55, 74);
  font-style: normal;
  color: rgb(226, 242, 251);
}

.preview-content {
  display: grid;
}

.preview-welcome {
  display: grid;
}

.preview-welcome strong {
  letter-spacing: -0.035em;
  line-height: 1.2;
}

.preview-welcome > span {
  font-size: 1.35cqw;
  letter-spacing: 0.035em;
}

.preview-core {
  border: 1px solid rgb(40, 97, 126);
  border-radius: 1.2cqw;
}

.preview-core-heading {
  display: flex;
  align-items: center;
  gap: 1.15cqw;
  margin-bottom: 1.3cqw;
  font-size: 2cqw;
}

.preview-core-heading > span {
  width: 3.6cqw;
  height: 3.6cqw;
  border: 1px solid rgb(40, 87, 115);
  border-radius: 0.9cqw;
  display: grid;
  place-items: center;
  color: rgb(112, 201, 245);
}

.preview-core-heading strong {
  font-weight: 600;
}

.preview-question {
  display: flex;
  align-items: center;
  gap: 1cqw;
  padding: 0.85cqw 1.1cqw;
  border: 1px solid rgb(38, 81, 108);
  border-radius: 0.7cqw;
  color: rgb(184, 204, 222);
  font-size: 1.6cqw;
}

.preview-question > span:first-child {
  min-width: 0px;
}

.preview-submit {
  display: grid;
  place-items: center;
  margin-left: auto;
  width: 3.8cqw;
  height: 3.8cqw;
  flex: 0 0 auto;
  border: 1px solid rgb(123, 214, 250);
  border-radius: 0.65cqw;
  color: rgb(4, 34, 55);
  background: linear-gradient(135deg, rgb(97, 209, 252), rgb(37, 174, 237));
}

.preview-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0px, 1fr));
  gap: 1.2cqw;
}

.preview-stats > div {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.85cqw;
  padding: 1.4cqw 1.1cqw;
  min-height: 7.3cqw;
  border: 1px solid rgb(36, 72, 94);
  border-radius: 0.9cqw;
}

.preview-stats .icon {
  color: rgb(130, 197, 233);
  width: 1.8cqw;
  height: 1.8cqw;
}

.preview-stats strong {
  font-size: 1.7cqw;
  font-weight: 550;
  overflow-wrap: anywhere;
}

.preview-stat-rule {
  position: absolute;
  left: 1.2cqw;
  bottom: 0.6cqw;
  height: 1px;
}

.preview-panels {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 1.3cqw;
}

.preview-module {
  padding: 1.3cqw;
  border: 1px solid rgb(40, 70, 91);
  border-radius: 0.95cqw;
  min-width: 0px;
}

.preview-module > strong {
  display: block;
  font-size: 1.7cqw;
  font-weight: 600;
  border-bottom: 1px solid rgb(35, 68, 86);
}

.preview-row {
  display: flex;
  align-items: center;
  gap: 0.9cqw;
  padding: 0.9cqw 0px;
  border-bottom: 1px solid rgba(36, 68, 88, 0.4);
}

.preview-row:last-child {
  border: 0px;
}

.preview-row > span:nth-child(2) {
  min-width: 0px;
}

.preview-row-icon {
  display: grid;
  place-items: center;
  width: 3.2cqw;
  height: 3.2cqw;
  flex: 0 0 auto;
  border: 1px solid rgba(71, 120, 149, 0.5);
  border-radius: 0.7cqw;
  color: rgb(143, 215, 237);
}

.preview-row-icon .icon {
  width: 2cqw;
  height: 2cqw;
}

.preview-row strong {
  display: block;
  font-size: 1.5cqw;
  line-height: 1.3;
  font-weight: 550;
  overflow-wrap: anywhere;
}

.preview-row small {
  display: block;
  font-size: 1.3cqw;
  line-height: 1.4;
  margin-top: 0.25cqw;
}

.preview-row-rule {
  flex: 0 0 auto;
  margin-left: auto;
}

.preview-reflection {
  position: absolute;
  inset: 0px;
  pointer-events: none;
  border-radius: inherit;
}

@media (min-width: 961px) and (max-width: 1190px) {
  .scene-world {
    display: none;
  }
}

@media (min-width: 1680px) {
  .scene-world {
    right: 5%;
  }
}

@media (max-width: 960px) {
  .scene-planet-highlight {
    animation: auto ease 0s 1 normal none running none;
  }
}

@media (max-width: 700px) {
  .preview-window {
    grid-template-columns: 11% minmax(0px, 1fr);
  }

  .preview-sidebar {
    padding: 2cqw 1cqw;
  }

  .preview-brand {
    justify-content: center;
  }

  .preview-brand img {
    width: 5.5cqw;
    height: 5.5cqw;
  }

  .preview-brand strong, .preview-nav span {
    display: none;
  }

  .preview-nav > div {
    min-height: 8cqw;
    justify-content: center;
  }

  .preview-nav .icon {
    width: 3.4cqw;
    height: 3.4cqw;
  }

  .preview-topbar {
    font-size: 2cqw;
    padding: 2cqw 3cqw;
  }

  .preview-topbar .icon {
    width: 3cqw;
    height: 3cqw;
  }

  .preview-topbar i {
    width: 4.5cqw;
    height: 4.5cqw;
  }

  .preview-welcome > span {
    font-size: 2cqw;
  }

  .preview-core-heading {
    font-size: 3cqw;
    gap: 2cqw;
  }

  .preview-core-heading > span {
    width: 5.5cqw;
    height: 5.5cqw;
  }

  .preview-core-heading .icon {
    width: 3.7cqw;
    height: 3.7cqw;
  }

  .preview-question {
    font-size: 2.5cqw;
    min-height: 8.5cqw;
    padding: 1.3cqw;
  }

  .preview-submit {
    width: 5.6cqw;
    height: 5.6cqw;
  }

  .preview-submit .icon {
    width: 3.5cqw;
    height: 3.5cqw;
  }

  .preview-stats > div {
    padding: 2cqw 1.3cqw;
    min-height: 10cqw;
  }

  .preview-stats strong {
    font-size: 2.35cqw;
  }

  .preview-stats .icon {
    display: none;
  }

  .preview-module {
    padding: 2cqw;
  }

  .preview-module > strong {
    font-size: 2.7cqw;
    padding-bottom: 1.9cqw;
  }

  .preview-row {
    gap: 1.5cqw;
    padding: 1.5cqw 0px;
  }

  .preview-row-icon {
    width: 4.5cqw;
    height: 4.5cqw;
  }

  .preview-row-icon .icon {
    width: 3.2cqw;
    height: 3.2cqw;
  }

  .preview-row strong {
    font-size: 2.35cqw;
  }

  .preview-row small {
    font-size: 1.95cqw;
  }

  .preview-row-rule, .preview-row:nth-of-type(3) {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .scene-planet-highlight {
    animation: auto ease 0s 1 normal none running none;
  }
}

.depth-motion .scene-foreground {
  transform: translate(0,var(--stone-scroll,0px));
}

.depth-motion > .scene-pause {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 45;
  width: 44px;
  height: 44px;
  border: 1px solid rgb(69, 107, 128);
  background: rgba(6, 23, 37, 0.96);
  box-shadow: rgba(0, 0, 0, 0.533) 0px 3px 12px;
  pointer-events: auto;
}

.depth-motion > .scene-pause[hidden] {
  display: none;
}

.story-chapter {
  min-height: 430px;
  padding-block: 50px;
}

.landing-page:not(.depth-motion) .story-visual {
  position: relative;
  top: auto;
  align-self: center;
  margin-block: 0px;
}

.chapter-number {
  color: rgb(155, 183, 201);
}

.story-core > img {
  width: 29px;
  height: 29px;
  flex: 0 0 auto;
}

.feature-question {
  padding: 10px 13px;
  border: 1px solid rgba(71, 120, 146, 0.4);
  border-radius: 8px;
  background: rgb(7, 27, 42);
}

.feature-question > span {
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 11px;
  color: rgb(169, 199, 217);
}

.feature-question > div {
  margin-top: 12px;
  display: flex;
  align-items: center;
  gap: 9px;
}

.feature-question i {
  display: block;
  width: 43%;
  height: 3px;
  background: rgba(120, 167, 189, 0.314);
}

.feature-question i + i {
  width: 21%;
}

.feature-question > div > .icon {
  margin-left: auto;
}

.feature-watch {
  display: grid;
  gap: 9px;
}

.feature-watch > span {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 9px 11px;
  border: 1px solid rgba(71, 120, 146, 0.333);
  background: rgb(7, 27, 42);
  border-radius: 6px;
  font-size: 11px;
  color: rgb(175, 203, 220);
}

.feature-watch > span > .icon:last-child {
  margin-left: auto;
}

.depth-motion [data-reveal]:not(.is-revealed) {
  opacity: 1;
  transform: none;
}

.depth-motion [data-reveal].is-revealed {
  animation: 550ms cubic-bezier(0.2, 0.65, 0.3, 1) 0s 1 normal backwards running scroll3d-reveal;
}

.depth-motion [data-reveal]:focus-within {
  animation: auto ease 0s 1 normal none running none;
}

@keyframes scroll3d-reveal { 
  0% { opacity: 0.65; transform: translateY(12px); }
  100% { opacity: 1; transform: none; }
}

@media (max-height: 720px) {
  .story-visual {
    position: relative;
    top: auto;
    align-self: center;
  }
}

@media (max-width: 960px) {
  .story-chapter {
    min-height: 0px;
    padding-block: 32px;
  }

  .landing-story::before, .landing-section::before, .landing-closing::before {
    opacity: 0.4;
  }

  .scene-foreground {
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .scene-foreground {
    transform: none !important;
  }

  .story-visual {
    position: relative;
    top: auto;
    align-self: center;
  }
}

.home-page-shell {
  --landing-bg: #030c18;
  --landing-muted: #b5cadb;
}

.landing-page {
  background: linear-gradient(rgb(3, 12, 24) 0%, rgb(5, 19, 37) 24%, rgb(4, 16, 32) 44%, rgb(6, 22, 42) 65%, rgb(4, 15, 32) 84%, rgb(4, 20, 38));
  --premium-edge: #75b4d544;
}

.landing-atmosphere::before {
  opacity: 0.72;
}

.atmosphere-camera {
  opacity: 0.78;
}

.home-page-shell .landing-header {
  background: rgba(3, 13, 27, 0.96);
  border-bottom-color: rgba(120, 187, 218, 0.11);
}

.landing-hero::before {
  opacity: 0.4;
}

.landing-hero::after {
  inset: 0px 0px -2px;
  background: linear-gradient(transparent 78%, rgb(4, 16, 32));
}

.landing-hero-inner {
  min-height: 738px;
}

.landing-hero-copy {
  width: 48%;
  padding-top: 130px;
  padding-bottom: 112px;
}

.landing-page h1 {
  font-size: clamp(52px, 5.05vw, 76px);
  line-height: 1.035;
  font-weight: 590;
  letter-spacing: -0.06em;
}

.landing-title-blue {
  background-image: linear-gradient(110deg, rgb(95, 183, 243) 5%, rgb(145, 217, 252) 48%, rgb(225, 246, 255) 100%);
}

.landing-hero .landing-eyebrow {
  font-size: 10px;
  letter-spacing: 0.2em;
  margin-bottom: 32px;
}

.landing-page .landing-lead {
  margin-top: 30px;
  max-width: 440px;
  color: rgb(183, 204, 222);
  font-size: 16px;
  line-height: 1.85;
}

.landing-hero .landing-actions {
  margin-top: 35px;
}

.landing-assurances {
  gap: 15px;
  margin-top: 29px;
  color: rgb(154, 180, 203);
}

.hero-bottom {
  border-image: linear-gradient(90deg, rgba(84, 139, 170, 0.19), rgba(139, 207, 227, 0.36) 68%, rgba(84, 139, 170, 0.094)) 1 / 1 / 0 stretch;
  padding-block: 18px 22px;
}

.hero-scroll .icon {
  border: 1px solid rgba(129, 199, 226, 0.275);
  width: 32px;
  height: 32px;
  padding: 8px;
  border-radius: 50%;
}

.landing-scene {
  width: min(79vw, 1110px);
  right: -8%;
  bottom: 37px;
}

.scene-art {
  mask-image: none;
}

.scene-aura {
  position: absolute;
  inset: -19% -6% -6% 23%;
  pointer-events: none;
  background: radial-gradient(at 59% 36%, rgba(22, 122, 201, 0.196), rgba(38, 178, 238, 0.055) 38%, transparent 68%);
}

.scene-horizon {
  position: absolute;
  left: 21%;
  right: 2%;
  bottom: 7%;
  height: 29%;
  border-radius: 50%;
  background: radial-gradient(rgba(51, 173, 240, 0.153), transparent 69%);
  transform: rotate(-6deg);
}

.scene-planet {
  left: 39%;
  top: -7%;
  width: 55%;
}

.scene-planet::before {
  inset: 2.8%;
  box-shadow: rgba(61, 185, 255, 0.26) -4px -7px 24px, rgba(23, 134, 235, 0.17) 8px 5px 46px, rgba(12, 122, 211, 0.094) 0px 0px 105px;
}

.scene-planet::after {
  content: "";
  position: absolute;
  inset: 2.6%;
  border-radius: 50%;
  border: 1px solid rgba(143, 227, 255, 0.42);
  mask-image: linear-gradient(125deg, rgb(0, 0, 0), transparent 55%);
  pointer-events: none;
}

.scene-planet-shade {
  background: linear-gradient(125deg, transparent 28%, rgba(1, 12, 27, 0.07) 52%, rgba(1, 10, 24, 0.49) 93%);
}

.scene-planet-highlight {
  background: radial-gradient(at 30% 13%, rgba(188, 241, 255, 0.16), transparent 57%);
}

.scene-orbit {
  position: absolute;
  left: 33%;
  top: 11%;
  width: 70%;
  aspect-ratio: 1 / 1;
  border: 1px solid rgba(108, 206, 248, 0.208);
  border-radius: 50%;
  transform: rotate(-22deg) scaleY(0.48);
  mask-image: linear-gradient(110deg, transparent 10%, rgb(0, 0, 0) 60%, transparent 95%);
}

.scene-orbit::after {
  content: "";
  position: absolute;
  inset: 14%;
  border: 1px solid rgba(101, 191, 230, 0.1);
  border-radius: 50%;
}

.scene-art .scene-foreground {
  opacity: 0.83;
}

.scene-world {
  top: 2%;
  right: 6%;
  font-size: 8px;
  letter-spacing: 0.17em;
  color: rgb(158, 190, 212);
}

.scene-world span {
  width: 70px;
  margin-top: 20px;
}

.scene-cubes {
  right: 3%;
  bottom: 2%;
  width: 8%;
  opacity: 0.7;
}

.scene-caption {
  bottom: -25px;
  right: 11%;
  padding: 4px 8px;
  border-radius: 4px;
  background: rgba(3, 16, 29, 0.8);
  letter-spacing: 0.02em;
}

.scene-panel {
  left: 31%;
  top: 23%;
  width: 59%;
}

.scene-panel::before {
  inset: 9% -5% -9%;
  height: auto;
  border-radius: 14%;
  background: radial-gradient(at 48% 85%, rgba(0, 107, 164, 0.216), transparent 64%);
  box-shadow: none;
}

.preview-window {
  min-height: 61cqw;
  border-radius: 2cqw;
  border-color: rgba(101, 182, 219, 0.7);
  background: linear-gradient(135deg, rgb(16, 43, 64), rgb(8, 27, 44) 58%, rgb(5, 19, 33));
  box-shadow: rgba(227, 248, 255, 0.4) 0px 1px 0px inset, rgba(156, 220, 241, 0.133) 1px 0px 0px inset, rgb(23, 72, 98) 1px 2px 0px, rgb(7, 20, 36) 2px 4px 0px, rgb(62, 120, 150) 3px 6px 0px, rgb(7, 19, 33) 4px 7px 0px, rgba(0, 6, 16, 0.6) 0px 24px 40px, rgba(17, 152, 206, 0.075) -6px -4px 30px;
  transform: matrix(1, 0.036, -0.026, 1, 0, 0);
}

.preview-sidebar {
  background: linear-gradient(rgb(6, 24, 40), rgb(4, 18, 31));
  border-right-color: rgba(52, 90, 115, 0.43);
}

.preview-brand {
  margin-bottom: 3.5cqw;
}

.preview-topbar {
  background: linear-gradient(90deg, rgba(25, 67, 99, 0.15), transparent);
  border-color: rgba(80, 125, 151, 0.24);
}

.preview-content {
  padding: 2.5cqw;
  gap: 1.8cqw;
}

.preview-welcome {
  gap: 0.6cqw;
}

.preview-welcome strong {
  font-size: 3.4cqw;
  font-weight: 550;
}

.preview-welcome > span {
  color: rgb(162, 191, 213);
}

.preview-core {
  position: relative;
  border-color: rgba(76, 149, 187, 0.65);
  background: radial-gradient(at 92% 0%, rgba(23, 100, 149, 0.25), transparent 75%), linear-gradient(125deg, rgb(16, 46, 69), rgb(8, 30, 48));
  box-shadow: rgba(209, 241, 255, 0.133) 0px 1px 0px inset, rgba(1, 9, 18, 0.25) 0px 4px 10px;
  padding: 2cqw;
}

.preview-core::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 10%;
  width: 65%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(152, 221, 255, 0.68), transparent);
}

.preview-core-heading > span {
  background: linear-gradient(135deg, rgb(26, 84, 120), rgb(11, 43, 68));
  border-color: rgba(109, 196, 242, 0.43);
  box-shadow: rgba(202, 242, 255, 0.157) 0px 1px 0px inset;
}

.preview-question {
  background: rgba(3, 19, 31, 0.9);
  border-color: rgb(57, 100, 125);
}

.preview-stats > div {
  background: linear-gradient(135deg, rgb(16, 42, 64), rgb(9, 28, 45));
  border-color: rgba(87, 139, 171, 0.3);
  box-shadow: rgba(184, 231, 255, 0.047) 0px 1px 0px inset;
}

.preview-stat-rule {
  width: 44%;
  background: linear-gradient(90deg, rgba(113, 197, 223, 0.61), rgba(53, 101, 138, 0.15));
}

.preview-module {
  border-color: rgba(85, 134, 162, 0.31);
  background: linear-gradient(150deg, rgba(17, 44, 65, 0.69), rgba(7, 26, 44, 0.85));
}

.preview-module > strong {
  padding-bottom: 1.4cqw;
  border-color: rgba(85, 134, 162, 0.224);
}

.preview-row {
  min-height: 5.4cqw;
  border-color: rgba(60, 98, 123, 0.27);
}

.preview-row-icon {
  background: linear-gradient(135deg, rgb(35, 75, 102), rgb(14, 46, 67));
  box-shadow: rgba(171, 228, 255, 0.094) 0px 1px 0px inset;
}

.preview-row small {
  color: rgb(171, 194, 212);
}

.preview-row-rule {
  width: 2.2cqw;
  height: 0.5cqw;
  border-radius: 2px;
  background: linear-gradient(90deg, rgba(83, 144, 166, 0.467), rgb(134, 200, 207));
}

.preview-reflection {
  background: linear-gradient(115deg, rgba(214, 242, 255, 0.027), transparent 28%, transparent 62%, rgba(159, 226, 255, 0.02));
  box-shadow: rgba(208, 239, 255, 0.047) 0px 0px 0px 1px inset;
}

.landing-story::before, .landing-section::before, .landing-closing::before {
  opacity: 0.82;
}

.landing-page h2 {
  font-weight: 550;
}

.depth-text {
  color: rgb(149, 205, 238);
}

.landing-section {
  padding-block: 104px;
}

.landing-card {
  border: 1px solid var(--premium-edge);
  border-radius: 16px;
  background: radial-gradient(at 8% 0%, rgba(29, 86, 130, 0.204), transparent 67%), linear-gradient(140deg, rgba(16, 38, 60, 0.85), rgba(6, 22, 41, 0.96) 78%);
  box-shadow: rgba(197, 236, 255, 0.047) 0px 1px 0px inset, rgba(1, 8, 23, 0.733) 0px -1px 0px inset, rgba(0, 7, 21, 0.2) 0px 16px 32px;
  transition: border-color 240ms, box-shadow 240ms, background-color 240ms;
}

.landing-card::before {
  left: 8%;
  right: 18%;
  background: linear-gradient(90deg, transparent, rgba(176, 229, 255, 0.39), transparent);
}

.story-source-icon {
  background: linear-gradient(140deg, rgb(40, 81, 110), rgb(17, 52, 78) 48%, rgb(9, 33, 52));
  border: 1px solid rgba(111, 179, 211, 0.396);
  color: rgb(161, 220, 250);
  box-shadow: rgba(211, 245, 255, 0.21) 0px 1px 0px inset, rgba(3, 15, 34, 0.5) 0px -2px 0px inset, rgb(4, 19, 35) 0px 4px 0px, rgba(0, 10, 32, 0.314) 0px 8px 18px;
}

.feature-question, .feature-watch > span, .feature-timeline > div, .feature-sources > span {
  border-color: rgba(96, 155, 187, 0.3);
  background: linear-gradient(125deg, rgb(18, 46, 69), rgb(8, 30, 49));
  box-shadow: rgba(207, 242, 255, 0.05) 0px 1px 0px inset;
}

.story-system-frame {
  border-color: rgba(119, 190, 221, 0.392);
  background: radial-gradient(at 0% 0%, rgba(34, 107, 147, 0.26), transparent 70%), linear-gradient(135deg, rgba(13, 41, 62, 0.92), rgba(6, 21, 37, 0.91));
  box-shadow: rgba(214, 244, 255, 0.165) 0px 1px 0px inset, rgb(10, 36, 55) 1px 3px 0px, rgba(49, 83, 107, 0.333) 2px 5px 0px, rgba(0, 7, 19, 0.4) 0px 30px 55px;
}

.story-source {
  border-color: rgba(106, 154, 186, 0.41);
  background: linear-gradient(125deg, rgba(22, 53, 77, 0.93), rgba(9, 29, 48, 0.96));
  box-shadow: rgba(221, 245, 255, 0.086) 0px 1px 0px inset, rgba(0, 9, 20, 0.376) 0px 9px 18px;
}

.story-source-check {
  color: rgb(153, 219, 221);
}

.story-orbit {
  border-color: rgba(84, 165, 214, 0.18);
}

.story-grid {
  opacity: 1;
}

.landing-plan {
  padding: 30px;
  min-height: 306px;
}

.landing-plan h3 {
  font-weight: 550;
}

.landing-plan-label {
  letter-spacing: 0.16em;
}

.landing-premium {
  border-color: rgba(133, 197, 226, 0.61);
  background: radial-gradient(at 48% 0%, rgba(40, 124, 184, 0.267), transparent 70%), linear-gradient(135deg, rgb(16, 44, 67), rgb(8, 26, 46));
  box-shadow: rgba(193, 240, 255, 0.27) 0px 1px 0px inset, rgba(0, 102, 154, 0.07) 0px 15px 45px;
}

.landing-closing {
  padding-block: 125px 116px;
}

.closing-orbits {
  opacity: 0.85;
}

.closing-orbits i {
  border-color: rgba(119, 183, 225, 0.19);
}

.home-page-shell .landing-button {
  min-height: 50px;
  border-radius: 10px;
  transition: border-color 200ms, box-shadow 200ms, background-color 200ms, transform 200ms;
}

.home-page-shell .landing-primary {
  color: rgb(3, 26, 44);
  border-color: rgba(167, 234, 255, 0.74);
  background: linear-gradient(125deg, rgb(123, 223, 254), rgb(55, 186, 243) 85%);
  box-shadow: rgba(230, 250, 255, 0.7) 0px 1px 0px inset, rgba(0, 127, 172, 0.21) 0px -2px 0px inset, rgba(10, 157, 218, 0.145) 0px 5px 22px;
}

.home-page-shell .landing-secondary {
  background: linear-gradient(130deg, rgba(18, 51, 76, 0.49), rgba(10, 28, 46, 0.79));
  border-color: rgba(99, 154, 181, 0.4);
  box-shadow: rgba(196, 237, 255, 0.075) 0px 1px 0px inset;
}

@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .landing-feature:hover {
    border-color: rgba(123, 182, 211, 0.43);
    box-shadow: rgba(209, 244, 255, 0.125) 0px 1px 0px inset, rgba(0, 7, 22, 0.267) 0px 16px 32px;
  }

  .home-page-shell .landing-primary:hover {
    background: linear-gradient(125deg, rgb(155, 234, 255), rgb(80, 203, 255));
    box-shadow: rgba(243, 253, 255, 0.74) 0px 1px 0px inset, rgba(37, 167, 225, 0.23) 0px 8px 30px;
    transform: translateY(-2px);
  }

  .home-page-shell .landing-secondary:hover {
    border-color: rgba(163, 216, 243, 0.55);
    box-shadow: rgba(209, 244, 255, 0.157) 0px 1px 0px inset, rgba(0, 12, 32, 0.25) 0px 6px 20px;
  }
}

.home-page-shell .landing-button:active {
  transform: translateY(1px);
}

.depth-motion .scene-planet {
  transform: translate(calc(var(--pointer-x,0px) * .4),calc(var(--globe-scroll,0px) + var(--pointer-y,0px) * .4));
}

.depth-motion .scene-panel {
  transform: translate(var(--pointer-x,0px),calc(var(--panel-scroll,0px) + var(--pointer-y,0px)));
}

.depth-motion .scene-cubes {
  transform: translate(calc(var(--pointer-x,0px) * 1.3),var(--cube-scroll,0px));
}

.depth-motion .scene-aura {
  transform: translate(calc(var(--pointer-x,0px) * -.6),calc(var(--globe-scroll,0px) * -.3));
}

.depth-motion .scene-orbit {
  transform: translateY(calc(var(--globe-scroll,0px) * -.35)) rotate(-22deg) scaleY(.48);
}

.depth-motion [data-reveal].is-revealed {
  animation-duration: 650ms;
  animation-delay: var(--reveal-delay,0ms);
}

.landing-feature:nth-child(2), .landing-feature:nth-child(4) {
  --reveal-delay: 70ms;
}

.landing-plan:nth-child(2) {
  --reveal-delay: 60ms;
}

.landing-plan:nth-child(3) {
  --reveal-delay: 120ms;
}

@media (min-width: 1680px) {
  .landing-hero-inner {
    min-height: 820px;
  }

  .landing-hero-copy {
    padding-top: 155px;
  }

  .landing-page h1 {
    font-size: 80px;
  }

  .landing-scene {
    width: 1190px;
    bottom: 47px;
    right: -7%;
  }

  .scene-planet {
    width: 52%;
  }
}

@media (min-width: 961px) and (max-width: 1190px) {
  .landing-hero-inner {
    min-height: 670px;
  }

  .landing-hero-copy {
    padding-top: 117px;
    width: 49%;
  }

  .landing-page h1 {
    font-size: 51px;
  }

  .landing-scene {
    width: 850px;
    right: -8%;
    bottom: 50px;
  }

  .scene-planet {
    left: 43%;
    top: -7%;
    width: 50%;
  }

  .scene-panel {
    left: 38%;
    top: 25%;
    width: 54%;
  }

  .landing-assurances {
    gap: 12px;
    font-size: 10px;
  }

  .landing-plan {
    padding: 24px;
  }
}

@media (max-width: 960px) {
  .landing-hero-inner {
    min-height: 0px;
  }

  .landing-hero-copy {
    width: 100%;
    padding: 65px 0px 0px;
  }

  .landing-page h1 {
    font-size: clamp(44px, 7vw, 64px);
  }

  .landing-scene {
    width: min(115%, 850px);
    right: auto;
    bottom: auto;
    margin: 35px -7.5% 25px;
    aspect-ratio: 1.5 / 1;
  }

  .scene-panel {
    left: 17%;
    top: 27%;
    width: 72%;
  }

  .scene-planet {
    left: 36%;
    top: -9%;
    width: 58%;
  }

  .scene-caption {
    bottom: -13px;
    right: 10%;
  }

  .scene-aura {
    inset: -10% -10% 0px;
  }

  .scene-cubes {
    display: none;
  }

  .landing-section {
    padding-block: 75px;
  }

  .landing-closing {
    padding-block: 100px;
  }
}

@media (max-width: 700px) {
  .home-page-shell .landing-signup {
    min-height: 44px;
  }

  .landing-hero-copy {
    padding-top: 44px;
  }

  .landing-page h1 {
    font-size: clamp(33px, 8.7vw, 57px);
    letter-spacing: -0.055em;
    line-height: 1.08;
  }

  .landing-hero .landing-eyebrow {
    font-size: 9px;
    letter-spacing: 0.15em;
    margin-bottom: 26px;
  }

  .landing-page .landing-lead {
    font-size: 15px;
    line-height: 1.8;
    margin-top: 23px;
  }

  .landing-hero .landing-actions {
    margin-top: 27px;
    gap: 10px;
  }

  .home-page-shell .landing-hero .landing-button {
    min-height: 48px;
    padding: 13px 15px;
  }

  .landing-assurances {
    font-size: 10px;
    gap: 12px;
    margin-top: 25px;
  }

  .landing-scene {
    width: 118%;
    aspect-ratio: 1.03 / 1;
    margin: 28px -9% 23px;
  }

  .scene-panel {
    left: 10%;
    top: 22%;
    width: 82%;
  }

  .scene-planet {
    left: 30%;
    top: -25%;
    width: 66%;
  }

  .scene-caption {
    left: 10%;
    right: auto;
    bottom: -16px;
    font-size: 9px;
  }

  .scene-orbit {
    top: -5%;
    left: 20%;
    width: 83%;
  }

  .scene-horizon {
    left: 0px;
    bottom: 3%;
  }

  .preview-window {
    min-height: 0px;
    border-radius: 2.5cqw;
    transform: matrix(1, 0.025, -0.012, 1, 0, 0);
  }

  .preview-content {
    padding: 3cqw;
    gap: 2cqw;
  }

  .preview-welcome strong {
    font-size: 4.2cqw;
  }

  .preview-core {
    padding: 2.4cqw;
  }

  .preview-row {
    min-height: 9cqw;
  }

  .hero-bottom {
    gap: 15px;
    padding-block: 17px;
  }

  .hero-bottom > span {
    font-size: 10px;
  }

  .hero-scroll {
    font-size: 10px;
    gap: 8px;
  }

  .hero-scroll .icon {
    width: 28px;
    height: 28px;
    padding: 7px;
  }

  .landing-section {
    padding-block: 60px;
  }

  .landing-plan {
    padding: 25px;
    min-height: 286px;
  }

  .landing-closing {
    padding-block: 90px 80px;
  }

  .landing-closing .landing-actions {
    gap: 22px;
  }
}

@media (max-width: 360px) {
  .landing-page h1 {
    font-size: 31px;
  }

  .landing-hero .landing-eyebrow {
    font-size: 8px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .landing-page *, .landing-page ::before, .landing-page ::after {
    animation: auto ease 0s 1 normal none running none !important;
    transition: none !important;
  }

  .scene-aura {
    transform: none !important;
  }
}

.landing-hero {
  background: radial-gradient(31% 42% at 80% 34%, rgba(8, 76, 112, 0.11), transparent 76%), linear-gradient(120deg, rgb(3, 12, 24) 35%, rgb(3, 14, 25) 80%, rgb(3, 12, 24));
}

.landing-hero .scene-aura {
  background: radial-gradient(55% 53% at 59% 36%, rgba(8, 122, 168, 0.106), transparent 72%);
}

.landing-hero .scene-horizon {
  background: radial-gradient(rgba(22, 154, 206, 0.043), transparent 62%);
}

.landing-hero .scene-planet::before {
  box-shadow: rgba(47, 182, 245, 0.21) -4px -5px 17px, rgba(20, 118, 197, 0.11) 5px 4px 26px;
}

.landing-hero .scene-panel::before {
  background: radial-gradient(at 48% 85%, rgba(0, 16, 28, 0.4), transparent 64%);
}

.landing-hero .preview-window {
  color: rgb(237, 247, 255);
  border-color: rgb(56, 195, 237);
  background: linear-gradient(135deg, rgb(6, 27, 41), rgb(3, 19, 31) 60%, rgb(7, 36, 57));
  box-shadow: rgba(160, 232, 255, 0.48) 0px 1px 0px inset, rgba(116, 221, 255, 0.22) 1px 0px 0px inset, rgb(10, 58, 83) 1px 2px 0px, rgb(1, 18, 31) 2px 4px 0px, rgb(22, 124, 162) 3px 6px 0px, rgb(3, 20, 33) 4px 7px 0px, rgba(0, 7, 17, 0.7) 0px 20px 30px, rgba(7, 185, 237, 0.22) 0px 0px 13px;
}

.landing-hero .preview-reflection {
  background: linear-gradient(118deg, rgba(40, 162, 209, 0.02), transparent 24%);
  box-shadow: rgba(67, 207, 255, 0.05) 0px 0px 0px 1px inset;
}

.landing-hero .preview-sidebar {
  background: rgb(3, 17, 28);
  border-right-color: rgb(27, 67, 90);
}

.landing-hero .preview-sidebar-line {
  background: linear-gradient(90deg, rgb(26, 83, 111), transparent);
}

.landing-hero .preview-brand {
  color: rgb(240, 248, 255);
}

.landing-hero .preview-nav > div {
  color: rgb(158, 190, 208);
}

.landing-hero .preview-nav .selected {
  color: rgb(237, 250, 255);
  background: linear-gradient(110deg, rgb(6, 64, 90), rgb(8, 41, 63));
  box-shadow: rgba(101, 214, 255, 0.082) 0px 1px 0px inset, rgba(1, 13, 27, 0.4) 0px -1px 0px inset;
}

.landing-hero .preview-nav .selected::before {
  background: rgb(45, 204, 255);
}

.landing-hero .preview-window .polish-icon {
  stroke-width: var(--icon-stroke, 2);
}

.landing-hero .preview-nav .polish-icon {
  color: rgb(105, 184, 220);
}

.landing-hero .preview-nav .selected .polish-icon {
  color: rgb(79, 212, 255);
}

.landing-hero .preview-topbar {
  color: rgb(154, 187, 207);
  background: rgb(4, 23, 36);
  border-bottom-color: rgb(25, 62, 84);
}

.landing-hero .preview-topbar .polish-icon {
  color: rgb(106, 183, 216);
}

.landing-hero .preview-topbar i {
  color: rgb(224, 246, 255);
  border-color: rgb(38, 120, 156);
  background: rgb(10, 53, 80);
}

.landing-hero .preview-welcome strong {
  color: rgb(241, 249, 255);
}

.landing-hero .preview-welcome > span {
  color: rgb(143, 180, 202);
}

.landing-hero .preview-core {
  border-color: rgb(19, 117, 156);
  background: linear-gradient(125deg, rgb(6, 35, 56), rgb(3, 23, 37) 80%);
  box-shadow: rgba(69, 202, 255, 0.12) 0px 1px 0px inset, rgba(1, 8, 18, 0.35) 0px 4px 10px;
}

.landing-hero .preview-core::before {
  background: linear-gradient(90deg, transparent, rgba(63, 211, 248, 0.475), transparent);
}

.landing-hero .preview-core-heading > span {
  color: rgb(73, 208, 255);
  border-color: rgba(37, 132, 167, 0.36);
  background: linear-gradient(135deg, rgb(7, 53, 74), rgb(3, 35, 53));
  box-shadow: rgba(121, 231, 255, 0.14) 0px 1px 0px inset;
}

.landing-hero .preview-core-heading strong {
  color: rgb(240, 248, 255);
}

.landing-hero .preview-question {
  color: rgb(190, 212, 227);
  border-color: rgb(32, 82, 108);
  background: rgb(2, 17, 30);
}

.landing-hero .preview-submit {
  color: rgb(3, 48, 76);
  border-color: rgb(111, 219, 255);
  background: linear-gradient(135deg, rgb(64, 202, 255), rgb(8, 163, 233));
  box-shadow: rgba(184, 240, 255, 0.36) 0px 1px 0px inset;
}

.landing-hero .preview-stats > div {
  border-color: rgb(31, 85, 115);
  background: linear-gradient(135deg, rgb(8, 35, 55), rgb(3, 22, 36));
  box-shadow: rgba(54, 185, 233, 0.094) 0px 1px 0px inset, rgba(1, 12, 24, 0.6) 0px -1px 0px inset;
}

.landing-hero .preview-stats .polish-icon {
  color: rgb(66, 202, 255);
}

.landing-hero .preview-stats strong {
  color: rgb(232, 245, 255);
}

.landing-hero .preview-stat-rule {
  background: linear-gradient(90deg, rgba(32, 199, 240, 0.65), rgba(20, 113, 160, 0.21));
}

.landing-hero .preview-module {
  border-color: rgb(39, 85, 111);
  background: linear-gradient(135deg, rgb(10, 36, 53), rgb(4, 23, 36));
  box-shadow: rgba(98, 202, 250, 0.063) 0px 1px 0px inset, rgba(0, 14, 25, 0.5) 0px -1px 0px inset;
}

.landing-hero .preview-module > strong {
  color: rgb(237, 248, 255);
  border-color: rgb(37, 72, 93);
}

.landing-hero .preview-row {
  border-color: rgba(33, 65, 88, 0.5);
}

.landing-hero .preview-row strong {
  color: rgb(232, 244, 253);
}

.landing-hero .preview-row small {
  color: rgb(150, 183, 204);
}

.landing-hero .preview-row-icon {
  color: rgb(244, 250, 255);
  border-radius: 50%;
  border-color: rgba(232, 244, 255, 0.25);
  box-shadow: rgba(243, 250, 255, 0.3) 0px 1px 0px inset, rgba(2, 11, 43, 0.2) 0px -2px 0px inset, rgba(0, 10, 23, 0.3) 0px 2px 4px;
}

.landing-hero .preview-row-wireless .preview-row-icon {
  background: linear-gradient(135deg, rgb(146, 122, 255), rgb(54, 49, 189));
}

.landing-hero .preview-row-compute .preview-row-icon {
  background: linear-gradient(135deg, rgb(244, 116, 102), rgb(174, 37, 34));
}

.landing-hero .preview-row-storage .preview-row-icon {
  background: linear-gradient(135deg, rgb(43, 199, 255), rgb(4, 125, 196));
}

.landing-hero .preview-row-maps .preview-row-icon {
  background: linear-gradient(135deg, rgb(172, 138, 250), rgb(88, 57, 188));
}

.landing-hero .preview-row-icon .polish-icon {
  color: rgb(244, 250, 255);
}

.landing-hero .preview-row-rule {
  height: 1px;
  border-radius: 0px;
  background: rgb(54, 184, 211);
}

.landing-hero .scene-cubes {
  opacity: 0.94;
}

.landing-hero .scene-cube-symbol {
  color: rgb(146, 222, 255);
  stroke: rgb(146, 222, 255);
}

.landing-page.lp-evidence .landing-assurances {
  flex-wrap: wrap;
  gap: 12px 22px;
}

.lp-plan-details {
  margin: 20px 0px 24px;
  font-size: 0.83rem;
  line-height: 1.6;
  color: rgb(167, 189, 207);
}

.lp-plan-details summary {
  cursor: pointer;
  color: rgb(158, 210, 235);
  padding: 8px 0px;
}

.lp-plan-details p {
  font-size: 0.81rem !important;
}

.lp-evidence .landing-plan .landing-unavailable {
  margin-top: auto;
}

.lp-evidence :is(a, button, summary):focus-visible {
  outline: rgb(130, 215, 247) solid 2px;
  outline-offset: 5px;
}

.lp-evidence .pe-updated {
  font-size: 0.72rem;
}

@media (prefers-reduced-motion: reduce) {
  .lp-evidence {
    scroll-behavior: auto;
  }

  .lp-evidence .lp-core-demo {
    animation: auto ease 0s 1 normal none running none;
    transition: none;
  }
}

.lp-core-section {
  padding-block: 46px;
  scroll-margin-top: 80px;
}

.lp-core-section > .container {
  max-width: 1040px;
}

.landing-page .lp-core-section h2 {
  max-width: 800px;
  font-size: clamp(26px, 2.8vw, 34px);
  line-height: 1.18;
  letter-spacing: -0.04em;
  text-wrap: balance;
  margin: 8px 0px 0px;
}

.lp-core-section .landing-eyebrow {
  font-size: 10px;
  letter-spacing: 0.17em;
  margin: 0px;
}

.landing-page .lp-core-intro {
  max-width: 65ch;
  font-size: 14px;
  line-height: 1.55;
  color: rgb(173, 195, 213);
  margin: 9px 0px 18px;
}

.lp-core-demo {
  position: relative;
  min-width: 0px;
  margin: 0px;
  border: 1px solid rgb(45, 88, 116);
  border-radius: 11px;
  background: linear-gradient(120deg, rgb(8, 30, 46), rgb(4, 21, 32));
  box-shadow: rgba(191, 223, 255, 0.04) 0px 1px 0px inset, rgba(0, 0, 0, 0.6) 0px 12px 38px -30px;
  overflow: hidden;
}

.lp-demo-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 12px 18px;
  border-bottom: 1px solid rgb(41, 72, 94);
  background: linear-gradient(115deg, rgba(16, 47, 68, 0.467), rgba(9, 29, 44, 0.267));
}

.lp-core-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0px;
  flex: 0 0 auto;
}

.lp-core-mark {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  flex: 0 0 auto;
  border: 1px solid rgb(59, 102, 134);
  border-radius: 8px;
  background: linear-gradient(145deg, rgba(27, 67, 98, 0.467), rgb(11, 39, 60));
  color: rgb(146, 206, 255);
}

.lp-core-mark svg {
  width: 23px;
  height: 23px;
}

.lp-core-brand > div {
  display: grid;
  gap: 1px;
}

.lp-core-brand > div > span {
  color: rgb(154, 190, 216);
  font-size: 8px;
  letter-spacing: 0.13em;
  font-weight: 650;
  line-height: 1.4;
}

.lp-core-brand strong {
  font-size: 18px;
  color: rgb(237, 246, 255);
  line-height: 1.2;
  letter-spacing: -0.025em;
  font-weight: 600;
}

.lp-example-context {
  display: grid;
  justify-items: end;
  gap: 3px;
  min-width: 0px;
  font-size: 10px;
  line-height: 1.4;
  color: rgb(165, 192, 212);
  text-align: right;
}

.lp-example-label {
  display: inline-flex;
  align-items: center;
  border: 1px solid rgb(51, 90, 114);
  border-radius: 4px;
  padding: 2px 8px;
  background: rgb(16, 43, 63);
  color: rgb(195, 219, 236);
  font-size: 10px;
  line-height: 1.4;
}

.lp-demo-body {
  padding: 12px 20px 0px;
}

.lp-question {
  display: grid;
  grid-template-columns: auto minmax(0px, 1fr);
  align-items: center;
  gap: 12px;
  padding: 0px;
  border: 0px;
}

.lp-field-label {
  color: rgb(198, 216, 229);
  font-size: 12px;
  font-weight: 550;
  line-height: 1.5;
}

.lp-query {
  display: grid;
  grid-template-columns: 16px minmax(0px, 1fr) 36px;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 4px 5px 4px 11px;
  border: 1px solid rgb(61, 105, 134);
  border-radius: 6px;
  background: linear-gradient(120deg, rgb(19, 53, 75), rgb(11, 34, 52));
  box-shadow: rgba(148, 203, 240, 0.075) 0px 1px 0px inset;
}

.lp-query-search {
  width: 16px;
  height: 16px;
  color: rgb(145, 185, 212);
}

.landing-page .lp-query h3 {
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0px;
  margin: 0px;
  color: rgb(224, 237, 246);
  overflow-wrap: anywhere;
}

.lp-query-open {
  display: grid;
  place-items: center;
  width: 36px;
  height: 34px;
  border: 1px solid rgba(151, 212, 255, 0.333);
  border-radius: 5px;
  background: linear-gradient(120deg, rgb(160, 214, 255), rgb(100, 178, 247));
  color: rgb(5, 26, 44);
  box-shadow: rgba(239, 249, 255, 0.267) 0px 1px 0px inset;
  text-decoration: none;
}

.lp-query-open svg {
  width: 18px;
  height: 18px;
}

.lp-query-open:hover {
  background: rgb(177, 223, 255);
  color: rgb(5, 26, 44);
}

.lp-answer {
  padding: 13px 0px 0px;
  min-width: 0px;
}

.lp-answer-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: rgb(216, 230, 239);
  line-height: 1.45;
  font-weight: 600;
}

.lp-answer-mark {
  display: inline-flex;
  color: rgb(145, 200, 237);
  flex: 0 0 auto;
}

.lp-answer-mark svg {
  width: 19px;
  height: 19px;
}

.lp-evidence-state {
  margin-inline-start: auto;
  color: rgb(221, 198, 143);
  font-size: 10px;
  line-height: 1.5;
  font-weight: 500;
  border: 1px solid rgba(147, 121, 68, 0.467);
  border-radius: 4px;
  padding: 2px 9px;
  background: rgba(163, 133, 64, 0.063);
}

.lp-claims {
  display: grid;
  gap: 3px;
  padding: 0px 0px 0px 27px;
  margin: 7px 0px 0px;
  list-style: none;
  color: rgb(190, 207, 222);
  font-size: 13px;
  line-height: 1.55;
}

.lp-claims li {
  display: flex;
  align-items: baseline;
  gap: 9px;
  min-width: 0px;
  margin: 0px;
  padding: 0px;
}

.lp-claims li::before {
  content: "";
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: rgb(147, 175, 195);
  flex: 0 0 auto;
  position: relative;
  top: -3px;
}

.lp-claims li > span {
  min-width: 0px;
  overflow-wrap: anywhere;
}

.lp-claims a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  min-height: 24px;
  color: rgb(143, 211, 252);
  font-size: 11px;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
  white-space: nowrap;
}

.lp-demo-limits {
  margin: 4px 0px 0px 27px;
  border: 0px;
  padding: 0px;
}

.lp-demo-limits summary {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  min-height: 29px;
  padding: 4px 0px;
  cursor: pointer;
  list-style: none;
  color: rgb(165, 191, 211);
  font-size: 11px;
  line-height: 1.5;
}

.lp-demo-limits summary::-webkit-details-marker {
  display: none;
}

.lp-demo-limits summary::marker {
  content: "";
}

.lp-demo-limits summary > svg {
  width: 13px;
  height: 13px;
  flex: 0 0 auto;
}

.lp-demo-limits[open] summary > svg {
  transform: rotate(180deg);
}

.lp-demo-limits summary:hover > span:first-child {
  color: rgb(228, 241, 250);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.lp-demo-limits .lp-review-label {
  color: rgb(193, 178, 142);
  margin-inline-start: auto;
}

.lp-demo-limits > div {
  padding: 5px 0px 15px;
  max-width: 76ch;
}

.lp-demo-limits p {
  font-size: 13px;
  line-height: 1.6;
  color: rgb(171, 192, 209);
  margin: 7px 0px 0px;
}

.lp-demo-limits strong {
  color: rgb(222, 200, 145);
  font-size: 11px;
  font-weight: 600;
}

.lp-demo-footer {
  display: block;
  padding: 9px 20px 0px;
  background: rgba(7, 29, 44, 0.314);
}

.lp-sources-heading {
  color: rgb(200, 217, 231);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 6px;
}

.lp-source-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0px, 1fr));
  gap: 12px;
  padding: 0px;
  margin: 0px;
  list-style: none;
}

.lp-source-links li {
  min-width: 0px;
}

.lp-source-links a {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 54px;
  height: 100%;
  padding: 8px 12px;
  border: 1px solid rgb(43, 80, 107);
  border-radius: 6px;
  background: linear-gradient(115deg, rgba(16, 48, 71, 0.44), rgba(11, 36, 55, 0.5));
  color: rgb(200, 221, 235);
  text-decoration: none;
  transition: border-color 0.15s, background 0.15s;
  overflow-wrap: anywhere;
}

.lp-source-links a:hover {
  background: rgb(22, 52, 74);
  border-color: rgb(100, 142, 169);
}

.lp-source-index {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 27px;
  height: 29px;
  border: 1px solid rgb(56, 94, 120);
  border-radius: 4px;
  color: rgb(151, 199, 232);
  background: rgb(10, 28, 42);
}

.lp-source-index svg {
  width: 17px;
  height: 17px;
}

.lp-source-copy {
  display: grid;
  gap: 2px;
  min-width: 0px;
  flex: 1 1 0%;
}

.lp-source-copy strong {
  font-size: 12px;
  line-height: 1.4;
  font-weight: 550;
  color: rgb(220, 235, 246);
}

.lp-source-number {
  font-size: 10px;
  color: rgb(157, 191, 213);
}

.lp-source-copy > span {
  font-size: 10px;
  line-height: 1.5;
  color: rgb(163, 191, 211);
}

.lp-source-links a > svg {
  width: 15px;
  height: 15px;
  color: rgb(148, 188, 214);
  flex: 0 0 auto;
}

.lp-demo-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 7px 20px;
  padding: 5px 0px 7px;
}

.lp-demo-bottom > span {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 10px;
  line-height: 1.5;
  color: rgb(162, 189, 209);
}

.lp-demo-bottom > span > svg {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  color: rgb(87, 187, 223);
}

.lp-demo-bottom > .landing-link {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-height: 32px;
  margin: 0px;
  font-size: 12px;
  line-height: 1.5;
  white-space: normal;
  color: rgb(113, 207, 240);
}

.lp-demo-bottom > .landing-link svg {
  width: 16px;
  height: 16px;
}

.lp-core-demo .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0px, 0px, 0px, 0px);
  white-space: nowrap;
  border: 0px;
}

.landing-page .lp-core-note {
  font-size: 11px;
  line-height: 1.6;
  color: rgb(156, 183, 203);
  margin: 9px 0px 0px;
}

.lp-core-demo :is(a, summary):focus-visible {
  outline: rgb(158, 216, 255) solid 2px;
  outline-offset: 3px;
}

.lp-empty {
  padding: 25px;
}

.home-transparency {
  position: relative;
  padding: 40px 0px 36px;
  background: radial-gradient(at 10% 50%, rgba(7, 54, 82, 0.15), transparent 55%), rgb(3, 19, 33);
}

.home-transparency-layout {
  display: grid;
  grid-template-columns: minmax(250px, 0.95fr) minmax(0px, 1.65fr);
  gap: 44px;
  align-items: center;
}

.home-transparency-heading {
  min-width: 0px;
}

.home-transparency .landing-eyebrow {
  display: block;
  margin: 0px 0px 12px;
  font-size: 10px;
  font-weight: 650;
  line-height: 1.5;
  letter-spacing: 0.14em;
  color: rgb(117, 200, 229);
  text-transform: uppercase;
}

.landing-page .home-transparency h2 {
  font-size: clamp(25px, 2.5vw, 33px);
  font-weight: 610;
  line-height: 1.2;
  letter-spacing: -0.035em;
  margin: 0px;
  color: rgb(237, 246, 255);
  text-wrap: balance;
}

.home-transparency-cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0px, 1fr));
  gap: 12px;
  min-width: 0px;
}

.home-transparency-card {
  min-width: 0px;
  border: 1px solid rgb(26, 67, 93);
  border-radius: 9px;
  padding: 17px 15px;
  background: linear-gradient(135deg, rgba(8, 36, 56, 0.376), rgba(3, 20, 35, 0.44));
  box-shadow: rgba(117, 180, 222, 0.04) 0px 1px 0px inset;
}

.home-transparency-card > svg {
  width: 31px;
  height: 31px;
  color: rgb(64, 195, 237);
  margin-bottom: 12px;
}

.landing-page .home-transparency-card h3 {
  font-size: 13px;
  font-weight: 620;
  line-height: 1.4;
  letter-spacing: -0.015em;
  color: rgb(228, 239, 248);
  margin: 0px 0px 7px;
  overflow-wrap: break-word;
  text-wrap: pretty;
}

.landing-page .home-transparency-card p {
  font-size: 12px;
  line-height: 1.6;
  color: rgb(166, 190, 209);
  margin: 0px;
  overflow-wrap: break-word;
  text-wrap: pretty;
}

.home-page-shell .landing-footer {
  padding: 16px 0px 20px;
  border-top: 1px solid rgb(23, 53, 76);
  background: rgb(3, 19, 33);
}

.home-page-shell .landing-footer .brand-name {
  font-size: 14px;
}

.home-page-shell .landing-footer .landing-brand-original {
  width: 27px;
  height: 27px;
}

.home-page-shell .landing-footer nav a, .home-page-shell .landing-footer nav button {
  font-size: 12px;
  min-height: 36px;
}

@media (max-width: 1100px) {
  .home-transparency-layout {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .home-transparency-card {
    padding: 18px;
  }

  .home-transparency-card > svg {
    margin-bottom: 11px;
  }

  .landing-page .home-transparency-card h3 {
    font-size: 14px;
  }

  .landing-page .home-transparency-card p {
    font-size: 13px;
  }
}

@media (max-width: 700px) {
  .lp-core-section {
    padding-block: 32px;
  }

  .lp-core-intro {
    font-size: 13px;
    margin-bottom: 16px;
  }

  .lp-demo-bar {
    padding: 11px 15px;
  }

  .lp-demo-body {
    padding: 12px 15px 0px;
  }

  .lp-question {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .lp-query {
    grid-template-columns: 16px minmax(0px, 1fr) 40px;
    gap: 9px;
    min-height: 50px;
    padding: 5px 5px 5px 10px;
  }

  .lp-query-open {
    width: 40px;
    height: 40px;
  }

  .landing-page .lp-query h3 {
    font-size: 13px;
    line-height: 1.5;
  }

  .lp-answer {
    padding-top: 15px;
  }

  .lp-answer-heading {
    font-size: 12px;
  }

  .lp-claims {
    font-size: 13px;
    line-height: 1.6;
    gap: 7px;
    padding-left: 0px;
    margin-top: 11px;
  }

  .lp-demo-limits {
    margin: 8px 0px 0px;
  }

  .lp-demo-limits summary {
    min-height: 34px;
  }

  .lp-demo-footer {
    padding: 10px 15px 0px;
  }

  .lp-source-links {
    gap: 8px;
  }

  .lp-source-links a {
    gap: 8px;
    padding: 10px;
    min-height: 64px;
  }

  .lp-source-index {
    display: none;
  }

  .lp-source-links a > svg {
    width: 13px;
    height: 13px;
  }

  .lp-source-copy strong {
    font-size: 11px;
  }

  .lp-source-copy > span {
    font-size: 10px;
  }

  .lp-demo-bottom {
    flex-wrap: wrap;
    gap: 0px 12px;
    padding: 9px 0px;
  }

  .lp-demo-bottom > .landing-link {
    min-height: 36px;
    font-size: 12px;
  }

  .lp-demo-bottom > span {
    font-size: 10px;
  }

  .lp-core-note {
    font-size: 11px;
  }

  .home-transparency {
    padding: 32px 0px 28px;
  }

  .home-transparency-cards {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
    gap: 10px;
  }

  .home-transparency-layout {
    gap: 21px;
  }

  .home-transparency-card {
    padding: 18px;
  }

  .home-page-shell .landing-footer {
    padding: 16px 0px 24px;
  }

  .home-page-shell .landing-footer-inner {
    gap: 9px;
  }

  .home-page-shell .landing-footer nav {
    gap: 0px 20px;
  }

  .home-page-shell .landing-footer nav a, .home-page-shell .landing-footer nav button {
    min-height: 40px;
  }
}

@media (max-width: 420px) {
  .lp-demo-bar {
    padding-inline: 13px;
    gap: 10px;
  }

  .lp-core-mark {
    width: 33px;
    height: 35px;
  }

  .lp-core-brand {
    gap: 8px;
  }

  .lp-example-context {
    max-width: 52%;
    font-size: 9px;
  }

  .lp-example-label {
    font-size: 9px;
  }

  .lp-demo-body {
    padding-inline: 13px;
  }

  .lp-query {
    grid-template-columns: minmax(0px, 1fr) 40px;
    padding-left: 10px;
  }

  .lp-query-search {
    display: none;
  }

  .lp-demo-footer {
    padding-inline: 13px;
  }

  .lp-source-links {
    grid-template-columns: 1fr;
    gap: 7px;
  }

  .lp-source-links a {
    min-height: 51px;
    gap: 10px;
    padding: 8px 10px;
  }

  .lp-source-index {
    display: grid;
    width: 25px;
    height: 27px;
  }

  .lp-source-copy strong {
    font-size: 12px;
  }

  .lp-demo-bottom > .landing-link {
    justify-content: space-between;
  }

  .home-transparency-card {
    padding: 16px 13px;
  }

  .landing-page .home-transparency-card h3 {
    font-size: 13px;
  }

  .landing-page .home-transparency-card p {
    font-size: 12px;
  }

  .home-transparency-card > svg {
    width: 29px;
    height: 29px;
  }

  .home-transparency .landing-eyebrow {
    font-size: 9px;
    max-width: 34ch;
  }

  .lp-demo-limits .lp-review-label {
    font-size: 10px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lp-core-demo * {
    animation: auto ease 0s 1 normal none running none;
    transition: none;
  }
}

@media (max-width: 420px) {
  .lp-question {
    gap: 0px;
  }

  .lp-field-label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0px, 0px, 0px, 0px);
  }

  .lp-demo-bottom {
    flex-direction: row;
    align-items: center;
    gap: 8px;
  }

  .lp-demo-bottom > .landing-link {
    width: auto;
    min-height: 36px;
  }

  .lp-demo-bottom > span {
    font-size: 10px;
  }
}

.lp-evidence {
  --hp-ink: #eff7fc;
  --hp-muted: #a7bfd0;
  --hp-line: #285168;
  --hp-cyan: #61d4f5;
  --hp-panel: #071c2b;
}

.hp-icon {
  display: inline-block;
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  vertical-align: middle;
  color: inherit;
}

.home-page-shell .container {
  width: min(100% - 96px, 1280px);
}

.lp-evidence :is(h1, h2, h3) {
  text-wrap: pretty;
}

.lp-evidence .landing-eyebrow {
  font-size: 11px;
  letter-spacing: 0.16em;
  line-height: 1.6;
  font-weight: 600;
  color: rgb(112, 199, 227);
}

.lp-evidence .landing-section {
  padding-block: 68px;
  border-top: 1px solid rgba(68, 114, 143, 0.133);
}

.lp-evidence .landing-hero-inner {
  min-height: 700px;
}

.lp-evidence .landing-hero-copy {
  width: 48%;
  padding-top: 134px;
  padding-bottom: 98px;
}

.lp-evidence h1 {
  font-size: clamp(48px, 4.9vw, 71px);
  font-weight: 610;
  letter-spacing: -0.06em;
  line-height: 1.05;
}

.lp-evidence .landing-lead {
  max-width: 450px;
  font-size: 17px;
  line-height: 1.8;
  margin-top: 26px;
}

.lp-evidence .landing-actions {
  gap: 12px;
  flex-wrap: wrap;
}

.home-page-shell .lp-evidence .landing-button {
  min-height: 48px;
  padding: 13px 20px;
  font-size: 13px;
  border-radius: 8px;
  gap: 13px;
}

.lp-evidence .landing-button .hp-icon {
  width: 17px;
  height: 17px;
}

.lp-evidence .landing-assurances {
  font-size: 12px;
  line-height: 1.5;
  gap: 12px 20px;
  margin-top: 26px;
}

.lp-evidence .landing-assurances .hp-icon {
  width: 16px;
  height: 16px;
  color: rgb(100, 190, 223);
}

.lp-evidence .hero-bottom {
  font-size: 12px;
  padding-block: 15px 21px;
}

.lp-evidence .landing-scene {
  width: min(81vw, 1090px);
  right: -8%;
  bottom: 34px;
  perspective: 1300px;
}

.lp-evidence .scene-planet {
  left: 47%;
  top: -3%;
  width: 49%;
  opacity: 0.76;
}

.lp-evidence .scene-panel {
  left: 37%;
  top: 24%;
  width: 56%;
  height: auto;
  aspect-ratio: auto;
}

.lp-evidence .scene-cubes {
  display: none;
  width: 7%;
  right: -1%;
  bottom: 6%;
}

.lp-evidence .scene-caption {
  bottom: -16px;
  right: 8%;
  font-size: 11px;
  padding: 4px 8px;
  border-radius: 5px;
  color: rgb(166, 197, 216);
}

.lp-evidence .scene-world {
  display: none;
}

.lp-evidence .scene-foreground {
  opacity: 0.65;
}

.lp-evidence .scene-aura {
  opacity: 0.55;
}

.lp-evidence .landing-story {
  padding: 70px 0px 40px;
  background: radial-gradient(at 87% 33%, rgba(10, 58, 83, 0.23), transparent 53%), linear-gradient(rgb(6, 24, 38), rgb(4, 19, 31));
}

.lp-evidence .story-layout {
  grid-template-columns: 0.95fr 0.95fr 1.5fr;
  gap: 36px;
  align-items: start;
}

.lp-evidence .story-chapter {
  grid-row: 1;
  min-height: 0px;
  padding: 50px 0px 0px;
  display: block;
}

.lp-evidence .story-problem {
  grid-column: 1;
}

.lp-evidence .story-solution {
  grid-column: 2;
}

.lp-evidence .story-chapter h2 {
  font-size: 29px;
  line-height: 1.19;
  letter-spacing: -0.045em;
}

.lp-evidence .story-chapter h2 .depth-text {
  color: rgb(193, 227, 244);
}

.lp-evidence .story-chapter p {
  font-size: 14px;
  line-height: 1.8;
  margin-top: 21px;
  max-width: 34ch;
  color: rgb(158, 184, 202);
}

.lp-evidence .story-chapter .landing-eyebrow {
  margin-bottom: 21px;
  font-size: 10px;
  letter-spacing: 0.12em;
}

.lp-evidence .chapter-number {
  margin-right: 9px;
}

.lp-evidence .story-fragments {
  gap: 7px;
  margin-top: 24px;
}

.lp-evidence .story-fragments > span {
  font-size: 10px;
  min-height: 37px;
  padding: 8px;
  color: rgb(162, 190, 208);
  background: rgb(6, 29, 44);
  border-color: rgba(51, 86, 108, 0.44);
}

.lp-evidence .story-fragments .icon {
  width: 15px;
  height: 15px;
}

.lp-evidence .story-principles {
  font-size: 12px;
  gap: 9px;
}

.lp-evidence .story-solution .landing-link {
  font-size: 13px;
  margin-block: 18px;
}

.lp-evidence .story-visual {
  top: auto;
  grid-area: 1 / 3;
  height: 445px;
  align-self: center;
  perspective: 1200px;
  position: relative !important;
  margin: 0px !important;
}

.lp-evidence .story-system-frame {
  inset: 25px 5% 42px;
  border-radius: 14px;
  background: linear-gradient(140deg, rgba(12, 48, 68, 0.314), rgba(7, 28, 44, 0.796));
  border-color: rgba(56, 129, 158, 0.38);
  box-shadow: rgba(181, 234, 255, 0.1) 0px 1px 0px inset, rgba(0, 8, 16, 0.376) 0px 20px 55px;
  opacity: calc(.55 + var(--story-progress)*.45);
}

.lp-evidence .story-core {
  top: 45px;
  left: 12%;
  right: 12%;
  font-size: 18px;
  opacity: 1;
}

.lp-evidence .story-core > img {
  width: 25px;
  height: 25px;
}

.lp-evidence .story-source {
  top: calc(99px + var(--row)*69px);
  left: 50%;
  width: 76%;
  min-height: 57px;
  padding: 11px 13px;
  gap: 11px;
  border-radius: 8px;
  background: linear-gradient(120deg, rgba(21, 54, 75, 0.92), rgba(7, 30, 45, 0.96));
  border-color: rgba(68, 124, 152, 0.36);
  transform: translate3d(calc(-50% + (1 - var(--story-progress))*var(--scatter-x)),calc((1 - var(--story-progress))*var(--scatter-y)),calc((1 - var(--story-progress))*16px)) rotate(calc((1 - var(--story-progress))*var(--scatter-r)));
}

.lp-evidence .story-source strong {
  font-size: 12px;
  line-height: 1.3;
  margin-bottom: 3px;
}

.lp-evidence .story-source div > span {
  font-size: 11px;
  color: rgb(158, 187, 207);
}

.lp-evidence .story-source-icon {
  width: 31px;
  height: 32px;
  border-radius: 6px;
}

.lp-evidence .story-source-icon .icon {
  width: 19px;
  height: 19px;
}

.lp-evidence .story-orbit {
  border-color: rgba(74, 162, 195, 0.325);
  width: 104%;
  left: -2%;
  top: -1%;
  box-shadow: rgba(86, 189, 211, 0.137) 3px 0px 0px inset;
  transform: perspective(900px) rotateY(-25deg) rotateX(35deg);
}

.lp-evidence .orbit-two {
  width: 89%;
  left: 5%;
  top: 13%;
  border-color: rgba(38, 97, 132, 0.396);
  box-shadow: none;
  transform: perspective(900px) rotateY(25deg) rotateX(-25deg);
}

.lp-evidence .story-status {
  font-size: 11px;
  bottom: 9px;
  color: rgb(147, 185, 205);
}

.lp-evidence .story-progress {
  margin-top: 10px;
}

.hp-flow {
  display: flex;
  align-items: center;
  gap: 33px;
  padding-block: 21px;
  border-top: 1px solid rgba(49, 91, 112, 0.24);
  margin-top: 32px !important;
}

.hp-flow-label {
  font-size: 10px;
  letter-spacing: 0.14em;
  color: rgb(112, 200, 227);
  white-space: nowrap;
}

.hp-flow ol {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin: 0px;
  padding: 0px;
  list-style: none;
  flex: 1 1 0%;
}

.hp-flow li {
  display: flex;
  align-items: center;
  gap: 9px;
  color: rgb(187, 208, 221);
  font-size: 12px;
}

.hp-flow li > span {
  font-size: 10px;
  color: rgb(102, 143, 168);
}

.hp-flow li + li::before {
  content: "→";
  font-size: 15px;
  color: rgb(76, 128, 155);
  margin-right: 12px;
}

.hp-section-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 40px;
  margin-bottom: 29px;
}

.hp-section-heading > div {
  max-width: 840px;
}

.hp-section-heading .landing-eyebrow {
  display: block;
  margin-bottom: 12px;
}

.lp-evidence .hp-section-heading h2 {
  font-size: clamp(29px, 3vw, 41px);
  line-height: 1.18;
  font-weight: 560;
  letter-spacing: -0.045em;
}

.lp-evidence .landing-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 44px;
  font-size: 13px;
  line-height: 1.4;
  color: rgb(143, 210, 237);
}

.hp-section-heading > .landing-link {
  flex: 0 0 auto;
}

.landing-link .hp-icon {
  width: 17px;
  height: 17px;
}

/* Intelligence chapter: one motion vocabulary, vector details, static-first. */
.hp-intelligence {
  --intelligence-ease: cubic-bezier(.22, .68, .3, 1);
  --intelligence-cycle: 8s;
  position: relative;
  isolation: isolate;
  padding-block: clamp(72px, 6.5vw, 112px);
  background: linear-gradient(180deg, rgba(5, 18, 35, .22), rgba(5, 19, 36, .74) 58%, rgba(5, 18, 35, .2));
}
.hp-intelligence > .container { position: relative; z-index: 1; }
.hp-intelligence-atmosphere { position: absolute; inset: 0; overflow: hidden; pointer-events: none; }
.hp-intelligence-haze {
  position: absolute; inset: 10% 8% -5%; opacity: .64;
  background: radial-gradient(ellipse at 52% 55%, rgba(32, 124, 162, .17), transparent 62%);
}
.hp-intelligence-orbits { position: absolute; width: 100%; height: 100%; stroke: #6aacce; stroke-opacity: .085; stroke-width: .8; }
.hp-intelligence-stars { fill: #8cd6ec; fill-opacity: .24; stroke: none; }
.hp-intelligence .hp-section-heading { gap: 40px; margin-bottom: 44px; }
.hp-intelligence .hp-section-heading > div { max-width: 850px; }
.hp-intelligence .hp-section-heading .landing-eyebrow {
  display: flex; align-items: center; gap: 12px; margin-bottom: 18px;
  font-size: 11px; letter-spacing: .17em; line-height: 1.6; color: #8ac9df;
}
.hp-intelligence .landing-eyebrow::before { content: ''; width: 25px; height: 1px; flex: 0 0 auto; background: #72c6e1; opacity: .65; }
.lp-evidence .hp-intelligence .hp-section-heading h2 {
  max-width: 25ch; font-size: clamp(36px, 3.3vw, 49px); line-height: 1.14;
  letter-spacing: -.042em; font-weight: 550; text-wrap: balance; color: #ecf3fc;
}
.hp-intelligence .landing-link { color: #a2d5e8; transition: color 240ms ease; }
.hp-intelligence .landing-link .hp-icon { flex: 0 0 auto; transition: transform 240ms var(--intelligence-ease); }
.hp-intelligence .hp-section-heading > .landing-link { margin-bottom: 4px; gap: 18px; }
.hp-intelligence .landing-link:focus-visible { outline: 2px solid #97d9ed; outline-offset: 6px; border-radius: 3px; }
.hp-intelligence-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; perspective: 1400px; }
.hp-insight {
  position: relative; isolation: isolate; display: flex; flex-direction: column; min-width: 0;
  padding: 28px 28px 20px; border: 1px solid rgba(98, 156, 192, .23); border-radius: 16px;
  background: radial-gradient(ellipse at 15% 0%, rgba(52, 102, 148, .14), transparent 60%), linear-gradient(150deg, rgba(14, 34, 56, .94), rgba(7, 22, 39, .96));
  box-shadow: inset 0 1px 0 rgba(188, 224, 249, .06), 0 16px 36px -20px rgba(0, 6, 19, .65);
  transition: transform 260ms var(--intelligence-ease), border-color 260ms ease, box-shadow 260ms ease;
}
.hp-insight::before {
  content: ''; position: absolute; inset: -1px 20% auto; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(160, 208, 237, .35), transparent);
  pointer-events: none;
}
.hp-insight-signals {
  border-color: rgba(101, 180, 211, .31);
  background: radial-gradient(ellipse at 50% 0%, rgba(39, 102, 142, .18), transparent 68%), linear-gradient(155deg, rgba(14, 37, 60, .95), rgba(7, 23, 40, .97));
}
.hp-insight-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 26px; }
.hp-insight-top > span:last-child { color: #83a2bb; font-size: 11px; font-variant-numeric: tabular-nums; letter-spacing: .14em; }
.hp-icon-tile {
  position: relative; display: grid; place-items: center; width: 46px; height: 46px;
  border: 1px solid rgba(104, 175, 216, .3); border-radius: 12px; color: #8dd9f1;
  background: linear-gradient(145deg, rgba(42, 83, 117, .5), rgba(15, 42, 67, .6));
  box-shadow: inset 0 1px 0 rgba(183, 233, 255, .14), 0 5px 14px -8px rgba(52, 154, 193, .4);
}
.hp-icon-tile .hp-icon { width: 25px; height: 25px; }
.lp-evidence .hp-insight h3 { font-size: clamp(20px, 1.5vw, 23px); font-weight: 560; letter-spacing: -.025em; line-height: 1.3; }
.lp-evidence .hp-insight > p { margin: 12px 0 0; font-size: 14px; line-height: 1.8; color: #b2c3d6; min-height: 76px; }
.hp-insight > .landing-link { margin-top: auto; border-top: 1px solid rgba(106, 157, 190, .16); padding-top: 16px; justify-content: space-between; gap: 14px; }
.hp-history-visual, .hp-signal-visual, .hp-context-visual {
  height: 157px; margin: 22px 0 24px; font-size: 12px; color: #bbcede;
}
.hp-visual-labels { display: flex; justify-content: space-between; gap: 6px; font-size: 11px; color: #b0c9dc; line-height: 1.5; }
.hp-history-visual .hp-visual-labels { display: grid; grid-template-columns: 1fr 1.5fr 1fr; }
.hp-history-visual .hp-visual-labels > :nth-child(2) { text-align: center; }
.hp-history-visual .hp-visual-labels > :last-child { text-align: end; }
.hp-history-visual > svg, .hp-signal-visual > svg { display: block; width: 100%; height: 94px; margin-block: 4px 6px; overflow: visible; }
.hp-history-visual svg :is(path, circle), .hp-signal-visual svg :is(path, circle) { vector-effect: non-scaling-stroke; }
.hp-visual-note { display: flex; align-items: center; gap: 7px; font-size: 10px; line-height: 1.6; color: #a3bbce; }
.hp-visual-note .hp-icon { width: 14px; height: 14px; flex: 0 0 auto; }
.hp-history-node { fill: #112c43; stroke: #8ed0e7; stroke-width: 1.25; }
.hp-history-node-saved { fill: #9ae2f6; stroke: #cbf3ff; }
.hp-history-breath { fill: #64ceef; fill-opacity: .075; stroke: #76d4ed; stroke-opacity: .16; }
.hp-history-echo { stroke: #8edcf1; opacity: 0; }
.hp-history-signal, .hp-signal-echo, .hp-signal-scan { opacity: 0; }
.hp-context-visual { padding: 0; list-style: none; display: grid; gap: 8px; }
.hp-context-visual > li {
  display: flex; align-items: center; gap: 10px; padding: 10px 12px;
  border: 1px solid rgba(97, 151, 185, .19); border-radius: 8px;
  background: linear-gradient(110deg, rgba(33, 62, 85, .32), rgba(10, 32, 51, .35));
  box-shadow: inset 0 1px 0 rgba(176, 223, 243, .035);
}
.hp-context-visual > li > .hp-icon { width: 17px; height: 17px; color: #8dbed5; flex: 0 0 auto; }
.hp-context-status {
  display: grid; place-items: center; margin-left: auto; width: 22px; height: 22px; flex: 0 0 auto;
  color: #9adfdc; border-radius: 50%; background: rgba(104, 204, 207, .05);
  box-shadow: 0 0 12px rgba(70, 183, 202, .045);
}
.hp-context-status .hp-icon { width: 13px; height: 13px; }
.hp-context-disclosure { color: #9ac9e2; background: rgba(100, 164, 211, .06); }

/* Only opt into motion after the observer is mounted. No-JS stays complete. */
.intelligence-ready .hp-intelligence-haze { animation: intelligence-haze 24s ease-in-out infinite alternate; }
.intelligence-ready .hp-history-signal { animation: intelligence-travel var(--intelligence-cycle) var(--intelligence-ease) infinite; }
.intelligence-ready .hp-history-breath { animation: intelligence-breathe 3.6s ease-in-out infinite; }
.intelligence-ready .hp-history-echo { animation: intelligence-node var(--intelligence-cycle) ease-out infinite; animation-delay: .64s; }
.intelligence-ready g[transform='translate(160 46)'] .hp-history-echo { animation-delay: 3.52s; }
.intelligence-ready g[transform='translate(300 46)'] .hp-history-echo { animation-delay: 6.4s; }
.intelligence-ready .hp-signal-echo { animation: intelligence-signal 3.6s ease-out infinite; }
.intelligence-ready .hp-signal-scan { animation: intelligence-scan 9s ease-in-out infinite; }
.intelligence-ready .hp-signal-visual.intelligence-seen .hp-signal-line { stroke-dasharray: 1; animation: intelligence-draw 650ms var(--intelligence-ease) 200ms backwards; }
.intelligence-ready .intelligence-seen.hp-insight { animation: intelligence-enter 600ms var(--intelligence-ease) var(--insight-delay, 0ms) backwards; }
.hp-insight-signals { --insight-delay: 100ms; }
.hp-insight-context { --insight-delay: 200ms; }
.intelligence-ready .intelligence-seen.hp-section-heading .landing-eyebrow { animation: intelligence-enter 500ms var(--intelligence-ease) backwards; }
.intelligence-ready .intelligence-seen.hp-section-heading h2 { animation: intelligence-enter 600ms var(--intelligence-ease) 70ms backwards; }
.intelligence-ready .hp-context-visual.intelligence-seen > li { animation: intelligence-row 500ms var(--intelligence-ease) 260ms backwards; }
.intelligence-ready .hp-context-visual.intelligence-seen > li:nth-child(2) { animation-delay: 400ms; }
.intelligence-ready .hp-context-visual.intelligence-seen > li:nth-child(3) { animation-delay: 540ms; }
.hp-intelligence:not(.intelligence-visible) .hp-intelligence-haze,
[data-intelligence-visual]:not(.intelligence-visible) .hp-loop,
.hp-intelligence.intelligence-paused *,
.depth-paused .hp-intelligence * { animation-play-state: paused !important; }
.landing-page.intelligence-pausable:not(.depth-motion) > .scene-pause:not([hidden]) {
  display: grid; position: fixed; right: 16px; bottom: max(16px, env(safe-area-inset-bottom));
  width: 44px; height: 44px; border-radius: 50%; z-index: 45;
  background: #0b2337; box-shadow: 0 3px 12px rgba(0, 0, 0, .35);
}
@keyframes intelligence-haze { from { transform: translate(-2%, 0) scale(.98); opacity: .5; } to { transform: translate(3%, -2%) scale(1.04); opacity: .85; } }
@keyframes intelligence-enter { from { opacity: .45; transform: translateY(7px); } to { opacity: 1; transform: none; } }
@keyframes intelligence-row { from { opacity: .35; transform: translateY(4px); } to { opacity: 1; transform: none; } }
@keyframes intelligence-travel {
  0%, 4% { transform: translateX(0); opacity: 0; }
  8%, 12% { transform: translateX(0); opacity: .85; }
  44%, 48% { transform: translateX(140px); opacity: .85; }
  80%, 86% { transform: translateX(280px); opacity: .85; }
  94%, 100% { transform: translateX(280px); opacity: 0; }
}
@keyframes intelligence-node { 0% { transform: scale(.7); opacity: .6; } 20%, 100% { transform: scale(1.8); opacity: 0; } }
@keyframes intelligence-breathe { 0%, 100% { transform: scale(1); opacity: .65; } 50% { transform: scale(1.06); opacity: 1; } }
@keyframes intelligence-signal { 0%, 12% { transform: scale(.85); opacity: .55; } 70%, 100% { transform: scale(1.9); opacity: 0; } }
@keyframes intelligence-scan { 0%, 8% { transform: translateX(0); opacity: 0; } 20% { opacity: .7; } 80% { opacity: .7; } 94%, 100% { transform: translateX(280px); opacity: 0; } }
@keyframes intelligence-draw { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }
@media (hover: hover) and (pointer: fine) {
  .hp-intelligence .hp-insight:hover { border-color: rgba(124, 197, 229, .45); box-shadow: inset 0 1px 0 rgba(196, 237, 255, .08), 0 20px 38px -20px rgba(0, 6, 19, .75), 0 0 26px -16px rgba(56, 158, 205, .3); }
  .hp-intelligence .landing-link:hover { color: #d0f3ff; }
  .hp-intelligence .landing-link:hover .hp-icon { transform: translateX(3px); }
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .hp-intelligence:not(.intelligence-paused) .hp-insight:hover { transform: translate3d(0, -3px, 2px); }
}
@media (min-width: 961px) and (max-width: 1100px) {
  .hp-intelligence-grid { gap: 14px; }
  .hp-insight { padding: 24px 19px 18px; }
  .lp-evidence .hp-insight h3 { font-size: 20px; }
  .hp-context-visual > li { padding-inline: 8px; gap: 7px; font-size: 11px; }
  .hp-visual-labels { font-size: 10px; }
  .hp-visual-note { font-size: 10px; }
}
@media (max-width: 960px) {
  .hp-intelligence { padding-block: 62px; }
  .hp-intelligence .hp-section-heading { display: block; margin-bottom: 28px; }
  .lp-evidence .hp-intelligence .hp-section-heading h2 { font-size: clamp(30px, 5.8vw, 39px); line-height: 1.2; max-width: 24ch; }
  .hp-intelligence .hp-section-heading .landing-eyebrow { font-size: 10px; letter-spacing: .13em; margin-bottom: 16px; gap: 9px; }
  .hp-intelligence .hp-section-heading > .landing-link { margin: 16px 0 0; }
  .hp-intelligence-grid { grid-template-columns: 1fr; gap: 18px; perspective: none; }
  .hp-insight { padding: 25px 24px 18px; }
  .hp-insight-top { margin-bottom: 21px; }
  .lp-evidence .hp-insight h3 { font-size: 22px; }
  .lp-evidence .hp-insight > p { min-height: 0; margin-top: 11px; font-size: 14px; }
  .hp-history-visual, .hp-signal-visual, .hp-context-visual { margin-block: 24px; height: auto; min-height: 148px; }
  .hp-context-visual { gap: 8px; }
  .hp-context-visual > li { min-height: 44px; }
  .hp-history-visual > svg, .hp-signal-visual > svg { height: auto; min-height: 88px; max-height: 116px; }
  .hp-insight > .landing-link { min-height: 50px; }
  .hp-intelligence-orbits { opacity: .4; }
  .intelligence-ready .hp-intelligence-haze { animation: none; opacity: .35; }
  .intelligence-ready .hp-signal-scan { display: none; }
  .intelligence-ready .hp-history-echo { stroke-opacity: .65; }
  .intelligence-ready .hp-signal-echo { stroke-opacity: .65; animation-duration: 4s; }
  .hp-insight { --insight-delay: 0ms; }
}
@media (max-width: 380px) {
  .hp-insight { padding-inline: 20px; }
  .hp-visual-labels { font-size: 10px; }
  .hp-context-visual > li { font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) {
  .hp-intelligence *, .hp-intelligence ::before { animation: none !important; transition: none !important; }
  .hp-intelligence .hp-signal-line { stroke-dashoffset: 0; }
  .hp-intelligence .hp-history-signal, .hp-intelligence .hp-history-echo, .hp-intelligence .hp-signal-echo, .hp-intelligence .hp-signal-scan { opacity: 0; }
}


.hp-projects {
  background: radial-gradient(at 75% 65%, rgba(13, 58, 84, 0.2), transparent 75%);
}

.lp-evidence .hp-category-filters {
  margin: -8px 0px 23px;
  gap: 10px;
}

.lp-evidence .hp-category-filters .front-category-chip {
  font-size: 11px;
  min-height: 38px;
  padding: 8px 12px;
  border-radius: 7px;
  background: rgb(9, 35, 51);
  border-color: rgba(49, 90, 112, 0.4);
}

.lp-evidence .hp-category-filters .front-category-chip[aria-pressed="true"] {
  background: rgb(12, 52, 70);
  border-color: rgb(60, 130, 155);
  color: rgb(201, 237, 249);
}

.lp-evidence .hp-project-count {
  font-size: 11px;
  line-height: 1.6;
  margin: 14px 0px 0px;
  color: rgb(133, 168, 188);
}

.hp-project-layout {
  display: grid;
  grid-template-columns: minmax(0px, 1.85fr) minmax(0px, 1fr);
  gap: 25px;
  align-items: stretch;
}

.hp-featured-list {
  display: grid;
  gap: 22px;
  min-width: 0px;
}

.hp-featured-project {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 391px;
  border: 1px solid rgb(51, 124, 156);
  border-radius: 12px;
  background: rgb(12, 38, 56);
  box-shadow: rgba(166, 231, 255, 0.125) 0px 1px 0px inset, rgba(0, 11, 20, 0.15) 0px 15px 35px;
}

.hp-station {
  position: absolute;
  inset: 0px;
  z-index: -2;
}

.hp-station img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 65% 0%;
}

.hp-weather::before {
  content: "";
  position: absolute;
  inset: 0px;
  z-index: -1;
  background: linear-gradient(90deg, rgba(3, 23, 37, 0.96) 0%, rgba(4, 26, 41, 0.79) 26%, rgba(6, 28, 40, 0.4) 47%, transparent 72%), linear-gradient(0deg, rgb(2, 21, 34) 0%, transparent 40%);
}

.hp-featured-copy {
  padding: 29px 30px 25px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  max-width: 56%;
  flex: 1 1 0%;
}

.hp-featured-category {
  display: flex;
  align-items: center;
  gap: 11px;
  font-size: 11px;
  color: rgb(192, 223, 236);
}

.hp-featured-category img {
  width: 33px;
  height: 33px;
  border: 1px solid rgba(137, 200, 224, 0.21);
  border-radius: 8px;
}

.lp-evidence .hp-featured-project h3 {
  font-size: 38px;
  letter-spacing: -0.045em;
  font-weight: 550;
  margin-top: 21px;
}

.lp-evidence .hp-featured-copy > p {
  font-size: 14px;
  line-height: 1.7;
  color: rgb(186, 208, 224);
  margin: 15px 0px 23px;
}

.hp-featured-copy .landing-button {
  margin-top: auto;
}

.hp-project-evidence {
  display: flex;
  align-items: center;
  gap: 25px;
  flex-wrap: wrap;
  padding: 17px 28px;
  border-top: 1px solid rgba(93, 151, 170, 0.184);
  background: rgba(3, 24, 39, 0.533);
  font-size: 11px;
  color: rgb(175, 209, 225);
}

.hp-project-evidence > span {
  display: flex;
  align-items: center;
  gap: 8px;
}

.hp-project-evidence .hp-icon {
  width: 17px;
  height: 17px;
  color: rgb(115, 189, 217);
}

.hp-evidence-dot::before {
  content: "";
  width: 5px;
  height: 5px;
  background: rgb(213, 193, 138);
  border-radius: 50%;
}

.hp-image-caption {
  position: absolute;
  right: 13px;
  bottom: 70px;
  font-size: 10px;
  color: rgb(208, 224, 233);
  background: rgba(3, 22, 35, 0.68);
  padding: 4px 7px;
  border-radius: 4px;
}

.hp-research-index {
  padding: 23px 24px 18px;
  min-width: 0px;
  background: linear-gradient(130deg, rgba(11, 41, 58, 0.533), rgba(4, 23, 34, 0.6));
  border: 1px solid rgb(37, 77, 100);
  border-radius: 12px;
  display: flex;
  flex-direction: column;
}

.hp-index-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: rgb(216, 236, 245);
  font-size: 16px;
  font-weight: 550;
}

.hp-index-heading .hp-icon {
  color: rgb(96, 186, 219);
}

.lp-evidence .hp-research-index > p {
  font-size: 13px;
  line-height: 1.7;
  color: rgb(157, 186, 206);
  margin: 12px 0px 18px;
  max-width: 33ch;
}

.hp-source-row {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0px -8px;
  padding: 14px 8px;
  border-bottom: 1px solid rgba(45, 80, 99, 0.28);
  text-decoration: none;
  color: rgb(199, 224, 239);
  border-radius: 5px;
}

.hp-source-row > span:nth-child(2) {
  min-width: 0px;
  display: grid;
  gap: 5px;
}

.hp-source-row strong {
  font-size: 12px;
  font-weight: 550;
  line-height: 1.4;
}

.hp-source-row small {
  font-size: 11px;
  color: rgb(142, 175, 195);
}

.hp-source-row > .hp-icon {
  margin-left: auto;
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  color: rgb(97, 177, 210);
}

.hp-source-symbol {
  width: 33px;
  height: 35px;
  display: grid;
  place-items: center;
  background: rgb(13, 53, 74);
  border: 1px solid rgba(44, 90, 113, 0.37);
  border-radius: 6px;
  color: rgb(119, 204, 230);
  flex: 0 0 auto;
}

.hp-source-symbol .hp-icon {
  width: 19px;
  height: 19px;
}

.hp-index-footer {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: auto;
  padding-top: 22px;
  font-size: 11px;
  line-height: 1.6;
  color: rgb(145, 178, 199);
}

.hp-index-footer .hp-icon {
  width: 17px;
  height: 17px;
  color: rgb(119, 186, 206);
}

.hp-empty {
  padding: 30px;
  border: 1px solid rgb(48, 86, 106);
  border-radius: 12px;
}

/* Core: a single saved-answer presentation, scoped to this chapter. */
#core {position:relative;isolation:isolate;padding-block:110px 104px;overflow:clip;background:radial-gradient(ellipse at 76% 32%,#2b78a644,transparent 58%),radial-gradient(ellipse at 15% 90%,#24477b20,transparent 48%),linear-gradient(140deg,#081c31c9,#041221c9);}
#core::before {content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#a1dfff03 1px,transparent 1px),linear-gradient(90deg,#a1dfff03 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(ellipse at 70% 45%,#000,transparent 70%);}
#core::after {content:"";position:absolute;z-index:-1;pointer-events:none;width:110%;height:600px;inset:10% auto auto 28%;border:1px solid #82cefa08;border-radius:50%;transform:rotate(-24deg);box-shadow:0 0 0 55px #80cafa03,0 0 0 110px #80cafa02;background:none;}
#core>.container {width:100%;max-width:1376px;padding-inline:48px;}
#core .hp-core-layout {display:grid;grid-template-columns:minmax(0,0.82fr) minmax(0,1.38fr);gap:clamp(40px,5vw,80px);align-items:start;}
#core .hp-core-layout>div {min-width:0;}
#core .hp-core-process {padding-top:24px;}
#core .landing-eyebrow {font-size:11px;letter-spacing:.16em;color:#79c9e6;}
#core h2>span {display:block;}
#core h2 {font-size:clamp(35px,3.15vw,46px);line-height:1.13;font-weight:560;letter-spacing:-.055em;max-width:10.5em;margin:19px 0 0;text-wrap:balance;}
#core .lp-core-intro {font-size:15px;line-height:1.8;color:#aac2d5;max-width:30ch;margin:22px 0 40px;}
#core .hp-core-process ol {display:grid;grid-template-columns:1fr;list-style:none;padding:0;margin:0;gap:0;}
#core .hp-core-process li {display:flex;position:relative;gap:20px;padding-bottom:30px;}
#core .hp-core-process li:last-child {padding-bottom:0;}
#core .hp-core-process li:not(:last-child)::after {content:"";position:absolute;top:46px;bottom:0;left:22px;width:1px;background:linear-gradient(#46738e80,#46738e35);}
#core .hp-process-number {display:grid;place-items:center;position:relative;z-index:1;flex:0 0 46px;width:46px;height:46px;border:1px solid #5793b23d;border-radius:50%;background:radial-gradient(ellipse at 30% 0%,#c5edff1c,transparent 65%),linear-gradient(160deg,#17364b,#091e32);color:#9bbbd1;font-size:12px;font-variant-numeric:tabular-nums;transition:color .45s,border-color .45s,box-shadow .45s;box-shadow:inset 0 1px #d9f4ff26,inset 0 -2px 4px #010b1b38,0 5px 12px #000b1c26;margin:0;}
#core .hp-process-number::before {content:"";position:absolute;inset:-6px;border:1px solid #5fd5ff40;border-radius:inherit;opacity:0;}
#core .is-active .hp-process-number {color:#a0eaff;border-color:#78dcff9e;box-shadow:0 0 27px #36b8f336,0 0 0 5px #4bcaff09,inset 0 1px #e8faff4a,inset 0 -2px 4px #010b1b38;}
#core .is-active .hp-process-number::before {animation:core-ring-breathe 2.6s ease-out infinite;}
#core .is-done .hp-process-number {border-color:#63c4e750;color:#91cde5;background:radial-gradient(ellipse at 30% 0%,#bcefff14,transparent 65%),linear-gradient(160deg,#16394d,#0a2237);}
#core .is-active:not(:last-child)::after {background:linear-gradient(#7bdcff80,#46738e35);}
#core .hp-core-process h3 {font-size:16px;line-height:1.45;font-weight:540;letter-spacing:-.025em;margin:1px 0 0;color:#bbcede;transition:color .4s;}
#core .hp-core-process .is-active h3 {color:#f0f7ff;}
#core .hp-core-process li p {font-size:13px;line-height:1.75;color:#91acc2;margin:6px 0 0;max-width:31ch;}
#core .hp-core-principle {display:flex;padding-top:24px;margin-top:29px;gap:13px;border-color:#73acd71f;}
#core .hp-core-principle p {font-size:13px;line-height:1.8;font-weight:400;color:#aac4d7;max-width:32ch;}
#core .hp-core-principle .hp-icon {width:19px;height:19px;color:#76c2df;}
#core .hp-core-process>.landing-link {margin:14px 0 0 32px;min-height:44px;font-size:12px;}
#core .lp-core-demo {position:relative;overflow:visible;border:1px solid #8acde854;border-radius:18px;background:radial-gradient(ellipse at 0% 0%,#99d5f21a,transparent 48%),linear-gradient(145deg,#102f45f5,#071b2cf7 62%,#0d2739f5);box-shadow:0 42px 90px -25px #00091db3,0 10px 25px -14px #000817b3,0 0 80px -32px #409dce38,inset 0 1px #d7f4ff38,inset 0 -1px #85b8d310;}
/* Static reflected light adds depth without moving or obscuring the content. */
#core .lp-core-demo::before {content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(120deg,#d1eeff04 0%,#d1eeff06 19%,transparent 42%);pointer-events:none;}
#core .lp-core-demo::after {content:"";position:absolute;top:-1px;left:22px;right:22px;height:1px;background:linear-gradient(90deg,transparent,#b5eaff99 20%,#edfaffb3 43%,#8ccdee3d 74%,transparent);box-shadow:0 1px 9px #96dcff33;pointer-events:none;}
#core .lp-demo-bar {padding:21px 24px;gap:20px;background:linear-gradient(115deg,#d8f5ff0e,transparent 54%),linear-gradient(180deg,#8ccbed0a,transparent);border-radius:18px 18px 0 0;border-bottom:1px solid #8fbedb2e;box-shadow:0 1px 0 #010b1829;}
#core .lp-core-mark {width:42px;height:42px;border:1px solid #addffd66;border-radius:10px;background:radial-gradient(ellipse at 25% 0%,#caefff22,transparent 70%),linear-gradient(145deg,#255573,#0c273f);color:#b4e7ff;box-shadow:inset 0 1px #e6f8ff42,inset 0 -2px 5px #000a1933,0 4px 12px #020c1b3d;}
#core .lp-core-mark svg {width:25px;height:25px;}
#core .lp-core-brand {gap:12px;}
#core .lp-core-brand>div>span {font-size:8px;letter-spacing:.12em;}
#core .lp-core-brand strong {font-size:20px;line-height:1.25;font-weight:580;}
#core .lp-example-context {max-width:55%;font-size:10px;line-height:1.5;gap:5px;color:#9fb9cc;}
#core .lp-example-label {font-size:10px;line-height:1.5;font-weight:450;color:#b6d6e8;padding:4px 8px;border:1px solid #70b9d533;border-radius:5px;background:#25475a29;}
#core .lp-demo-toolbar {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:5px 20px 0 24px;min-height:49px;}
#core .lp-demo-status {font-size:10px;line-height:1.5;color:#95bed2;display:flex;align-items:center;gap:7px;}
#core .lp-demo-status::before {content:"";width:4px;height:4px;flex:0 0 4px;border-radius:50%;background:#79bdd5;box-shadow:0 0 7px #78d3f22b;}
#core .lp-demo-control {display:flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:6px;background:transparent;color:#a6c5d8;min-height:44px;padding:0 7px;font:inherit;font-size:11px;white-space:nowrap;cursor:pointer;}
#core .lp-demo-control:hover {background:#7acffc0b;color:#def3ff;}
#core .lp-demo-control svg {width:15px;height:15px;}
#core [hidden] {display:none!important;}
#core .lp-demo-body {padding:9px 24px 0;}
#core .lp-question {gap:9px;grid-template-columns:1fr;}
#core .lp-field-label {display:block;position:static;width:auto;height:auto;overflow:visible;clip:auto;font-size:10px;letter-spacing:.075em;color:#8fb0c6;}
#core .lp-query {display:grid;grid-template-columns:17px minmax(0,1fr) 44px;gap:10px;min-height:66px;padding:8px 8px 8px 14px;border:1px solid #78c7e65c;border-radius:9px;background:linear-gradient(115deg,#12384ab3,#0a2639cc);box-shadow:inset 0 2px 6px #000a1826,inset 0 -1px #b5e7ff0f,0 1px 0 #b2e5ff08;transition:border-color .25s,box-shadow .25s;}
#core .lp-query:focus-within {border-color:#79dcff8c;box-shadow:0 0 0 3px #5cd6ff0e;}
#core .lp-query>.hp-icon {width:17px;height:17px;color:#8cbcd4;}
#core .lp-query h3 {position:relative;min-width:0;font-size:13px;line-height:1.7;font-weight:460;letter-spacing:-.01em;margin:0;color:#d2e4ef;}
#core .lp-query-open {display:grid;place-items:center;width:44px;height:44px;border:1px solid #d0f4ffa3;border-radius:7px;color:#063249;background:linear-gradient(150deg,#dbf7ff59,transparent 52%),linear-gradient(180deg,#98e5f7 0%,#70cfed 48%,#50b7df 100%);box-shadow:inset 0 1px #ffffff99,inset 0 -2px #197caa40,0 3px 9px #000d253d;transition:box-shadow .35s,transform .25s;}
#core .lp-query-open:hover {box-shadow:0 0 18px #66d5ff30;transform:translateY(-1px);}
#core .is-submitting .lp-query-open {box-shadow:0 0 22px #6bdbff4d;}
#core .lp-answer {position:relative;padding-top:26px;}
#core .lp-answer-placeholder {display:none;position:absolute;top:82px;left:22px;right:15px;gap:14px;pointer-events:none;}
#core .lp-answer-placeholder i {height:3px;border-radius:2px;background:#96c8e51c;width:93%;}
#core .lp-answer-placeholder i:nth-child(2n) {width:66%;margin-bottom:12px;}
#core.core-demo-ready [data-demo-state]:is([data-demo-state="idle"],[data-demo-state="question"],[data-demo-state="readingSource1"],[data-demo-state="readingSource2"]) .lp-answer-placeholder {display:grid;}
#core .lp-answer-heading {display:flex;flex-wrap:wrap;gap:8px;font-size:12px;align-items:center;}
#core .lp-answer-mark {color:#8ccce8;}
#core .lp-evidence-state {margin-inline-start:auto;font-size:9px;letter-spacing:.01em;padding:4px 7px;border-color:#b4a06940;background:#b4a06908;color:#d7c38e;}
#core .lp-claims {font-size:13px;line-height:1.85;gap:12px;margin:18px 0 12px;padding-left:20px;color:#bbd0df;}
#core .lp-claims li {padding-inline-start:2px;transition:opacity .5s,transform .5s;}
#core .lp-claims li::marker {font-size:9px;color:#689bb7;}
#core .lp-citation {display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;margin-block:-10px;vertical-align:middle;text-decoration:none;color:#8bd4f1;font-size:10px;font-weight:650;border-radius:5px;}
#core .lp-citation:hover {background:#7ad8ff10;text-decoration:underline;}
#core .lp-evidence-gap {display:flex;gap:10px;margin:15px 0 3px;padding:12px 13px;border:1px solid #87bce520;border-radius:8px;background:#0a1d2b50;transition:opacity .6s,transform .6s;}
#core .lp-evidence-gap>.hp-icon {width:17px;height:17px;flex:0 0 17px;color:#9dbbc8;margin-top:1px;}
#core .lp-evidence-gap strong {display:block;font-size:10px;line-height:1.5;font-weight:530;color:#c4d6e0;}
#core .lp-evidence-gap p {font-size:11px;line-height:1.7;color:#9db6c7;margin:3px 0 0;}
#core .lp-demo-limits summary {font-size:10px;min-height:44px;}
#core .lp-review-label {font-size:10px;color:#c8b98e;}
#core .lp-demo-footer {padding:6px 24px 0;background:none;}
#core .lp-sources-heading {display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px;font-size:11px;font-weight:500;}
#core .lp-source-count {margin-left:5px;font-size:9px;color:#8cacbf;}
#core .lp-sources-heading>span:last-child {color:#8fabbf;font-size:10px;font-weight:400;}
#core .lp-source-links {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
#core .lp-source-links a {min-height:72px;padding:12px 10px;gap:9px;border:1px solid #83c2e14d;border-radius:8px;background:linear-gradient(135deg,#bbdfff08,transparent 58%),linear-gradient(160deg,#1a3c52c9,#0b2439e6);box-shadow:inset 0 1px #c1eaff18,inset 0 -1px #010d203d,0 4px 10px -5px #00091d73;transition:border-color .35s,box-shadow .35s,background .35s;}
#core .lp-source-index {display:grid;width:29px;height:33px;border-radius:5px;border-color:#70afd233;background:#15394a70;transition:color .25s;}
#core .lp-source-index svg {width:17px;height:17px;}
#core .lp-source-copy strong {font-size:10px;line-height:1.6;font-weight:520;}
#core .lp-source-copy>span {font-size:9px;line-height:1.5;color:#97b1c3;}
#core .lp-source-arrow {display:grid;place-items:center;flex:0 0 13px;color:#80adca;transition:transform .25s;}
#core .lp-source-arrow svg {width:13px;height:13px;}
#core .lp-source-links a:is(:hover,:focus-visible,.is-reading,.is-referenced,.is-linked) {border-color:#9ee3f9a3;background:linear-gradient(135deg,#c8f1ff10,transparent 58%),linear-gradient(160deg,#214b61e0,#0d2b40eb);box-shadow:0 0 20px #50ccff13,inset 0 1px #e1f8ff2b,0 5px 12px -5px #00091d66;}
#core .lp-source-links a:hover .lp-source-arrow {transform:translateX(2px);}
#core .lp-source-links a:hover .lp-source-index {color:#b3edff;}
#core .is-processed .lp-source-index {border-color:#73c7de66;}
#core .lp-demo-cta {margin:22px -24px 0;padding:21px 24px 23px;border-top:1px solid #9bccdf33;border-radius:0 0 18px 18px;background:linear-gradient(115deg,#daf5ff06,transparent 55%),radial-gradient(ellipse at 85% 100%,#3875a32b,transparent 80%),#081e3099;box-shadow:inset 0 1px #d1f1ff07;transition:opacity .55s,transform .55s;}
#core .lp-cta-heading {display:flex;gap:12px;align-items:center;}
#core .lp-cta-lock {display:grid;place-items:center;width:34px;height:38px;flex:0 0 34px;color:#94c4dd;}
#core .lp-cta-lock svg {width:23px;height:23px;}
#core .lp-demo-cta h4 {font-size:18px;line-height:1.35;font-weight:540;letter-spacing:-.025em;margin:0;color:#e5f1f9;}
#core .lp-demo-cta p {font-size:11px;line-height:1.6;margin:4px 0 0;color:#9ab7cc;}
#core .lp-cta-actions {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:17px;}
#core .lp-cta-actions .landing-primary {min-height:46px;padding:11px 19px;gap:17px;border:1px solid #dcf7ff9e;border-radius:7px;background:linear-gradient(120deg,#f0fcff3d,transparent 55%),linear-gradient(180deg,#9be4f8,#73cdeb 50%,#53b6df);color:#062d43;font-size:12px;font-weight:600;box-shadow:inset 0 1px #ffffffa6,inset 0 -2px #1681b147,0 4px 14px #000d1833;transition:transform .25s,box-shadow .25s;}
#core .lp-cta-actions .landing-primary:hover {transform:translateY(-2px);box-shadow:inset 0 1px #ffffffa6,inset 0 -2px #1681b147,0 7px 25px #69d6ff40;}
#core .lp-cta-actions .landing-link {font-size:11px;min-height:44px;margin:0;gap:9px;text-align:end;}
#core .lp-cta-actions svg {width:16px;height:16px;}
#core .lp-core-note {font-size:11px;margin:15px 0 0 2px;line-height:1.6;color:#829fb5;}
#core.core-demo-ready .lp-claims li:not(.is-shown),#core.core-demo-ready .lp-evidence-gap:not(.is-shown),#core.core-demo-ready .lp-demo-cta:not(.is-shown) {opacity:0;transform:translateY(8px);pointer-events:none;}
#core .lp-source-reader {position:absolute;z-index:8;top:192px;right:-26px;width:min(350px,calc(100% - 24px));padding:17px;border:1px solid #a3d9f080;border-radius:14px;background:radial-gradient(ellipse at 0% 0%,#b5eaff1c,transparent 60%),linear-gradient(145deg,#173a50fa,#091f34fc);backdrop-filter:blur(16px);box-shadow:0 28px 65px -10px #000b24bd,0 6px 18px #00081b4d,inset 0 1px #e0f7ff42,inset 0 -1px #6596b21f;animation:core-reader-in .38s cubic-bezier(.2,.7,.3,1) both;}
#core .lp-source-reader header {display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:10px;}
#core .lp-reader-eyebrow {font-size:8px;letter-spacing:.12em;color:#8ab2c9;}
#core .lp-source-reader h4 {font-size:16px;font-weight:540;letter-spacing:-.025em;line-height:1.5;margin:2px 0 0;color:#ddecf8;}
#core .lp-source-reader button {font:inherit;color:inherit;cursor:pointer;}
#core [data-source-close] {display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border:1px solid #7db9de22;background:#74cafa06;border-radius:7px;}
#core [data-source-close]:hover {background:#74cafa12;}
#core [data-source-close] svg {width:17px;height:17px;color:#bbd5e6;}
#core .lp-reader-tabs {display:grid;gap:6px;}
#core .lp-reader-tabs button {display:flex;align-items:center;text-align:start;gap:10px;min-height:55px;padding:9px 11px;width:100%;border:1px solid transparent;border-radius:7px;background:transparent;font-size:11px;line-height:1.5;}
#core .lp-reader-tabs button>span:first-child {font-size:10px;color:#8ecee5;}
#core .lp-reader-tabs button>span:nth-child(2) {flex:1;min-width:0;}
#core .lp-reader-tabs small {display:block;margin-top:2px;font-size:9px;color:#98b2c6;}
#core .lp-reader-tabs button[aria-pressed="true"] {background:#2c577847;border-color:#70c3e650;}
#core .lp-reader-check {opacity:0;color:#8dcede;}
#core .lp-reader-check svg {width:14px;height:14px;}
#core .lp-reader-tabs .is-processed .lp-reader-check {opacity:1;}
#core .lp-reader-document {margin-top:14px;padding:12px 12px 0;border:1px solid #82b8d124;border-radius:8px;background:#081b2c70;}
#core .lp-reader-caption {display:flex;align-items:center;gap:7px;font-size:9px;line-height:1.5;color:#91afc3;margin-bottom:12px;}
#core .lp-reader-caption>.hp-icon {width:13px;height:13px;flex:0 0 13px;}
#core .lp-reader-caption>span:last-child {margin-inline-start:auto;font-variant-numeric:tabular-nums;color:#7293aa;}
#core .lp-document-scroll {height:113px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#4e799066 transparent;padding-right:13px;}
#core .lp-document-lines {padding:3px 0;transform:translateY(calc(var(--read-progress,0)*-112px));}
#core .lp-document-paragraph {margin-bottom:23px;display:grid;gap:7px;}
#core .lp-document-paragraph i {display:block;height:3px;width:91%;border-radius:2px;background:#7193ac2e;}
#core .lp-document-paragraph i:first-child {width:43%;height:4px;margin-bottom:3px;background:#8caec143;}
#core .lp-document-paragraph i:nth-child(3) {width:96%;}
#core .lp-document-paragraph i:last-child {width:65%;}
#core .is-reading .lp-document-paragraph:nth-child(2) i:nth-child(3),#core .is-reading .lp-document-paragraph:nth-child(3) i:nth-child(2) {background:#92cbdd6b;box-shadow:0 0 0 4px #88cff509;}
#core .lp-reader-progress {height:2px;background:#71adcf16;margin-top:10px;overflow:hidden;}
#core .lp-reader-progress i {display:block;height:100%;background:#81c4de9c;transform:scaleX(var(--read-progress,0));transform-origin:left;}
#core .lp-reader-bottom {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0 8px;min-height:44px;}
#core .lp-reader-reading {font-size:9px;color:#92b2c7;}
#core .lp-source-reader:not(.is-reading) .lp-reader-reading {display:none;}
#core .lp-reader-bottom>a {display:inline-flex;align-items:center;gap:6px;min-height:44px;margin-inline-start:auto;font-size:10px;color:#abd8ef;text-decoration:none;}
#core .lp-reader-bottom>a:hover {text-decoration:underline;}
#core .lp-reader-handle {display:none;}
#core :is(a,button,summary,[tabindex]):focus-visible {outline:2px solid #a2e3ff;outline-offset:4px;}
#core.core-demo-paused *,#core.core-demo-paused *::before {animation-play-state:paused!important;}
@keyframes core-ring-breathe {0%,100%{opacity:.2;transform:scale(.98)}50%{opacity:.65;transform:scale(1.06)}}
@keyframes core-reader-in {from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@media (max-width:1100px) {
 #core>.container {padding-inline:32px;}
 #core .hp-core-layout {grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px;}
 #core h2 {font-size:35px;}
 #core .lp-demo-bar {padding:18px;}
 #core .lp-demo-body {padding-inline:18px;}
 #core .lp-demo-footer {padding-inline:18px;}
 #core .lp-demo-toolbar {padding-inline:18px;}
 #core .lp-source-links {grid-template-columns:1fr;}
 #core .lp-source-links a {min-height:60px;}
 #core .lp-demo-cta {margin-inline:-18px;padding-inline:18px;}
 #core .lp-cta-actions {align-items:stretch;flex-direction:column;gap:4px;}
 #core .lp-cta-actions .landing-link {justify-content:center;}
}
@media (max-width:800px) {
 #core {padding-block:72px 64px;}
 #core>.container {padding-inline:28px;max-width:690px;}
 #core .hp-core-layout {grid-template-columns:1fr;gap:30px;}
 #core .hp-core-process {padding-top:0;}
 #core h2 {max-width:12em;font-size:clamp(32px,5.8vw,42px);margin-top:14px;text-wrap:initial;}
 #core .lp-core-intro {max-width:38ch;font-size:14px;line-height:1.75;margin:18px 0 27px;}
 #core .hp-core-process ol {grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
 #core .hp-core-process li {display:block;padding-bottom:0;}
 #core .hp-core-process li:not(:last-child)::after {top:21px;left:43px;right:-14px;bottom:auto;width:auto;height:1px;background:linear-gradient(90deg,#52799177,#52799133);}
 #core .hp-process-number {width:42px;height:42px;margin-bottom:13px;}
 #core .hp-core-process h3 {font-size:12px;line-height:1.6;max-width:15ch;}
 #core .hp-core-process li p {display:none;}
 #core .hp-core-principle {margin-top:21px;padding-top:17px;align-items:flex-start;}
 #core .hp-core-principle p {max-width:none;font-size:12px;line-height:1.75;}
 #core .hp-core-process>.landing-link {display:none;}
 #core .lp-source-links {grid-template-columns:repeat(2,minmax(0,1fr));}
 #core .lp-cta-actions {flex-direction:row;align-items:center;gap:10px;}
 #core .lp-source-reader {position:absolute;inset:170px 12px auto;width:auto;max-height:70svh;overflow:auto;overscroll-behavior:contain;border-radius:16px;padding:14px;box-shadow:0 16px 60px #000d24b0;}
 #core .lp-reader-handle {display:block;width:34px;height:3px;margin:-4px auto 12px;border-radius:3px;background:#83afc74d;}
 #core .lp-document-scroll {height:110px;}
}
@media (max-width:500px) {
 #core>.container {padding-inline:18px;}
 #core .hp-core-layout {gap:24px;}
 #core h2 {font-size:34px;max-width:10em;}
 #core .landing-eyebrow {font-size:10px;}
 #core .hp-core-process ol {gap:10px;}
 #core .hp-core-process li:not(:last-child)::after {right:-10px;}
 #core .hp-core-process h3 {font-size:11px;}
 #core .lp-core-demo {border-radius:14px;}
 #core .lp-demo-bar {padding:16px 14px;gap:10px;border-radius:14px 14px 0 0;}
 #core .lp-core-mark {width:35px;height:38px;border-radius:8px;}
 #core .lp-core-mark svg {width:23px;height:23px;}
 #core .lp-core-brand {gap:9px;}
 #core .lp-core-brand strong {font-size:18px;}
 #core .lp-example-context {max-width:52%;font-size:9px;}
 #core .lp-example-label {font-size:9px;padding:3px 6px;}
 #core .lp-demo-toolbar {padding:4px 10px 0 14px;gap:5px;}
 #core .lp-demo-status {font-size:9px;gap:6px;}
 #core .lp-demo-control {font-size:10px;padding-inline:5px;}
 #core .lp-demo-body {padding:7px 14px 0;}
 #core .lp-query {grid-template-columns:minmax(0,1fr) 44px;padding:9px 7px 9px 10px;gap:7px;}
 #core .lp-query>.hp-icon {display:none;}
 #core .lp-query h3 {font-size:12px;line-height:1.75;}
 #core .lp-answer {padding-top:23px;}
 #core .lp-answer-heading {font-size:11px;gap:6px;}
 #core .lp-evidence-state {font-size:8px;padding:3px 5px;}
 #core .lp-claims {font-size:12px;line-height:1.9;padding-left:15px;gap:13px;margin-top:17px;}
 #core .lp-citation {min-width:44px;}
 #core .lp-evidence-gap {padding:11px 10px;gap:8px;}
 #core .lp-evidence-gap strong {font-size:10px;}
 #core .lp-evidence-gap p {font-size:10px;}
 #core .lp-demo-footer {padding:7px 14px 0;}
 #core .lp-source-links {grid-template-columns:1fr;gap:8px;}
 #core .lp-source-links a {min-height:64px;padding:11px;}
 #core .lp-source-copy strong {font-size:11px;}
 #core .lp-source-copy>span {font-size:10px;}
 #core .lp-demo-cta {margin:19px -14px 0;padding:20px 14px 16px;border-radius:0 0 14px 14px;}
 #core .lp-demo-cta h4 {font-size:18px;}
 #core .lp-demo-cta p {font-size:11px;}
 #core .lp-cta-actions {flex-direction:column;align-items:stretch;gap:7px;}
 #core .lp-cta-actions .landing-link {justify-content:center;font-size:11px;}
 #core .lp-source-reader {inset:173px 8px auto;padding:12px;}
}
@media (prefers-reduced-motion:reduce) {
 #core *,#core *::before {animation:none!important;transition-duration:.01ms!important;}
 #core .lp-document-lines {transform:none;}
}

.lp-evidence .landing-access h2 {
  font-size: clamp(29px, 3vw, 41px);
  font-weight: 560;
  margin: 12px 0px 29px;
}

.lp-evidence .landing-plans {
  gap: 20px;
}

.lp-evidence .landing-plan {
  position: relative;
  min-height: 316px;
  padding: 28px;
  border-radius: 12px;
  background: linear-gradient(140deg, rgba(12, 40, 59, 0.79), rgb(5, 24, 35));
  border-color: rgba(45, 83, 107, 0.52);
}

.lp-evidence .landing-plan::after {
  opacity: 0.25;
}

.lp-evidence .landing-plan h3 {
  font-size: 22px;
  line-height: 1.25;
  letter-spacing: -0.025em;
  margin: 20px 0px 15px;
}

.lp-evidence .landing-plan > p {
  font-size: 14px;
  line-height: 1.75;
  margin: 0px 0px 22px;
  color: rgb(165, 191, 209);
}

.lp-evidence .landing-plan-label {
  font-size: 11px;
  letter-spacing: 0.12em;
  color: rgb(158, 186, 207);
}

.lp-evidence .landing-premium {
  border-color: rgba(82, 149, 179, 0.79);
  background: radial-gradient(at 50% 0px, rgba(39, 99, 131, 0.208), transparent 65%), linear-gradient(125deg, rgb(18, 52, 75), rgb(6, 25, 39));
  box-shadow: rgba(164, 223, 241, 0.208) 0px 1px 0px inset, rgba(3, 45, 68, 0.2) 0px 12px 36px;
}

.lp-evidence .landing-premium .landing-plan-label {
  color: rgb(101, 208, 241);
}

.lp-evidence .landing-plan-badge {
  position: absolute;
  right: 24px;
  top: 25px;
  font-size: 10px;
  color: rgb(189, 220, 233);
  background: rgba(24, 64, 89, 0.45);
  border-color: rgba(79, 124, 151, 0.31);
}

.lp-evidence .landing-unavailable {
  font-size: 12px;
  padding: 9px 12px;
  border: 1px solid rgba(54, 91, 114, 0.36);
  border-radius: 5px;
  min-height: 39px;
  color: rgb(154, 183, 202);
  background: rgba(16, 44, 60, 0.4);
  align-self: flex-start;
}

.lp-evidence .lp-plan-details {
  margin: 0px 0px 21px;
  font-size: 12px;
}

.lp-evidence .lp-plan-details summary {
  min-height: 44px;
}

.lp-evidence .lp-plan-details p {
  font-size: 13px !important;
}

.lp-evidence .landing-plan > .landing-button {
  margin-top: auto;
  align-self: flex-start;
}

.lp-evidence .home-transparency {
  padding: 43px 0px;
  background: linear-gradient(90deg, rgb(5, 27, 41), rgb(6, 24, 39));
}

.lp-evidence .home-transparency-layout {
  grid-template-columns: 0.8fr 1.65fr;
  gap: 40px;
}

.lp-evidence .home-transparency-cards {
  gap: 12px;
}

.lp-evidence .home-transparency-card {
  border-color: rgba(43, 82, 104, 0.45);
  padding: 18px 16px;
  background: rgba(5, 24, 36, 0.6);
}

.lp-evidence .home-transparency-card h3 {
  font-size: 13px;
  line-height: 1.45;
}

.lp-evidence .home-transparency-card p {
  font-size: 12px;
  line-height: 1.7;
}

.lp-evidence .home-transparency h2 {
  font-size: 30px;
}

.lp-evidence .home-transparency .landing-eyebrow {
  font-size: 10px;
}

.lp-evidence .home-transparency-card > svg {
  width: 27px;
  height: 27px;
}

.hp-closing {
  position: relative;
  padding: 47px 0px;
  background: radial-gradient(at 80% 120%, rgba(19, 68, 103, 0.376), transparent 65%), rgb(3, 19, 33);
  border-top: 1px solid rgba(48, 85, 105, 0.314);
}

.hp-closing > .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
}

.hp-closing .landing-eyebrow {
  font-size: 10px;
  margin-bottom: 11px;
}

.lp-evidence .hp-closing h2 {
  font-size: 30px;
  font-weight: 550;
  letter-spacing: -0.035em;
}

.lp-evidence .hp-closing p {
  font-size: 13px;
  color: rgb(149, 180, 201);
  margin: 12px 0px 0px;
}

.hp-closing .landing-actions {
  margin: 0px;
  flex: 0 0 auto;
  gap: 12px;
}

.home-page-shell .landing-footer nav :is(a, button) {
  min-height: 44px;
  font-size: 12px;
}

.hp-project-photo {
  margin: 0px;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(59, 115, 140, 0.52);
  border-radius: 12px;
  height: 200px;
  width: 300px;
  justify-self: end;
}

.hp-detail-station {
  display: block;
  width: 100%;
  height: 100%;
}

.hp-detail-station img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 67% 30%;
}

.hp-project-photo figcaption {
  position: absolute;
  bottom: 0px;
  inset-inline: 0px;
  padding: 12px;
  font-size: 10px;
  color: rgb(207, 223, 235);
  background: linear-gradient(transparent, rgb(3, 21, 33));
}

.pd-weather .pd-header {
  grid-template-columns: minmax(0px, 1fr) 300px;
}

.lp-evidence.depth-motion .scene-panel {
  transform: translate3d(var(--pointer-x,0px),calc(var(--panel-scroll,0px) + var(--pointer-y,0px)),0);
}

.lp-evidence.depth-motion .scene-cubes {
  transform: translate3d(calc(var(--pointer-x,0px)*1.3),var(--cube-scroll,0px),24px);
}

.lp-evidence.depth-motion .hp-station {
  transform: translate3d(0,calc(var(--section-depth,0px)*.24),0) scale(1.04);
}

.lp-evidence.depth-motion .story-orbit {
  transform: translate3d(0,calc(var(--section-depth,0px)*-.5),-15px) rotateY(-25deg) rotateX(35deg);
}

.lp-evidence.depth-motion .orbit-two {
  transform: translate3d(0,calc(var(--section-depth,0px)*.3),12px) rotateY(25deg) rotateX(-25deg);
}

@media (hover: hover) and (pointer: fine) {
.hp-source-row {
    transition: border-color 220ms, background-color 220ms;
  }

  .hp-source-row:hover {
    background: rgba(16, 55, 76, 0.533);
    color: rgb(239, 250, 255);
  }

  .hp-featured-project:focus-within {
    border-color: rgb(160, 227, 248);
  }

  .hp-source-row:hover > .hp-icon {
    color: rgb(188, 239, 255);
  }
}

@media (min-width: 1680px) {
  .lp-evidence .landing-hero-inner {
    min-height: 750px;
  }

  .lp-evidence .landing-hero-copy {
    padding-top: 151px;
  }

  .lp-evidence h1 {
    font-size: 74px;
  }

  .lp-evidence .landing-scene {
    width: 1140px;
    bottom: 37px;
    right: -8%;
  }

  .lp-evidence .scene-panel {
    left: 38%;
    width: 55%;
  }

  .lp-evidence .scene-cubes {
    display: block;
  }
}

@media (max-width: 1190px) and (min-width: 961px) {
  .home-page-shell .container {
    width: calc(100% - 64px);
  }

  .lp-evidence .landing-hero-inner {
    min-height: 650px;
  }

  .lp-evidence .landing-hero-copy {
    padding-top: 115px;
    width: 46%;
  }

  .lp-evidence h1 {
    font-size: 53px;
  }

  .lp-evidence .landing-lead {
    font-size: 15px;
    max-width: 355px;
  }

  .lp-evidence .landing-scene {
    width: 875px;
    right: -10%;
    bottom: 42px;
  }

  .lp-evidence .scene-panel {
    left: 39%;
    top: 25%;
    width: 56%;
  }

  .hp-core-layout {
    gap: 35px;
    grid-template-columns: 1fr 1.5fr;
  }

  .lp-evidence .story-layout {
    gap: 22px;
    grid-template-columns: 0.9fr 0.9fr 1.3fr;
  }

  .lp-evidence .story-chapter h2 {
    font-size: 25px;
  }

  .lp-evidence .story-source {
    width: 84%;
    padding: 10px;
    gap: 8px;
  }

  .lp-evidence .story-source strong {
    font-size: 11px;
  }

  .lp-evidence .story-source div > span {
    font-size: 10px;
  }

  .lp-evidence .story-core {
    left: 10%;
    font-size: 16px;
  }

  .lp-evidence .home-transparency-layout {
    grid-template-columns: 1fr;
    gap: 25px;
  }
}

@media (max-width: 960px) {
  .home-page-shell .container {
    width: calc(100% - 48px);
  }

  .lp-evidence .landing-section {
    padding-block: 52px;
  }

  .lp-evidence .landing-hero-inner {
    min-height: 0px;
  }

  .lp-evidence .landing-hero-copy {
    width: 100%;
    padding: 57px 0px 0px;
  }

  .lp-evidence h1 {
    font-size: 62px;
    max-width: 700px;
  }

  .lp-evidence .landing-lead {
    max-width: 560px;
  }

  .lp-evidence .landing-scene {
    position: relative;
    right: auto;
    bottom: auto;
    width: 100%;
    margin: 48px 0px 28px;
    max-width: 760px;
  }

  .lp-evidence .scene-planet {
    left: 39%;
    width: 59%;
    opacity: 0.6;
  }

  .lp-evidence .scene-panel {
    left: 11%;
    width: 80%;
  }

  .lp-evidence .scene-caption {
    right: 9%;
    bottom: 1px;
  }

  .lp-evidence .scene-cubes {
    display: none;
  }

  .lp-evidence .landing-story {
    padding-top: 40px;
  }

  .lp-evidence .story-layout {
    grid-template-columns: 1fr 1.15fr;
    gap: 12px 25px;
  }

  .lp-evidence .story-chapter {
    padding: 20px 0px;
  }

  .lp-evidence .story-problem {
    grid-area: 1 / 1;
  }

  .lp-evidence .story-solution {
    grid-area: 2 / 1;
  }

  .lp-evidence .story-chapter h2 {
    font-size: 28px;
  }

  .lp-evidence .story-visual {
    grid-area: 1 / 2 / 3;
    height: 455px;
    position: relative;
  }

  .lp-evidence .story-source {
    width: 84%;
  }

  .lp-evidence .story-source div > span {
    font-size: 10px;
  }

  .lp-evidence .story-system-frame {
    inset-inline: 0px;
  }

  .hp-flow {
    display: block;
    padding-block: 23px;
    margin-top: 19px !important;
  }

  .hp-flow-label {
    display: block;
    margin-bottom: 17px;
  }

  .hp-flow ol {
    gap: 10px;
  }

  .hp-flow li {
    font-size: 11px;
    gap: 6px;
  }

  .hp-flow li + li::before {
    margin-right: 5px;
  }

  .hp-section-heading {
    gap: 22px;
  }

  .hp-section-heading > .landing-link {
    font-size: 12px;
  }

  .lp-evidence .hp-section-heading h2 {
    font-size: 32px;
  }

  .hp-project-layout {
    grid-template-columns: 1.7fr 1fr;
    gap: 16px;
  }

  .hp-featured-project {
    min-height: 407px;
  }

  .hp-featured-copy {
    max-width: 65%;
    padding: 25px 24px;
  }

  .lp-evidence .hp-featured-project h3 {
    font-size: 33px;
  }

  .lp-evidence .hp-featured-copy > p {
    font-size: 13px;
  }

  .hp-research-index {
    padding: 21px 17px;
  }

  .hp-source-row {
    gap: 8px;
  }

  .hp-source-row strong {
    font-size: 11px;
  }

  .hp-source-row small {
    font-size: 10px;
  }

  .hp-source-symbol {
    width: 27px;
    height: 31px;
  }

  .hp-project-evidence {
    gap: 12px;
    padding-inline: 22px;
  }

  .hp-core-layout {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .hp-core-process ol {
    grid-template-columns: repeat(3, minmax(0px, 1fr));
    gap: 24px;
  }

  .hp-core-process li {
    display: block;
  }

  .hp-process-number {
    margin-bottom: 13px;
  }

  .lp-evidence .hp-core-process h3 {
    font-size: 16px;
  }

  .hp-core-principle {
    margin-top: 24px;
    align-items: center;
    padding-top: 16px;
  }

  .lp-evidence .hp-core-principle p {
    max-width: none;
    font-size: 13px;
  }

  .hp-core-process > .landing-link {
    margin: 5px 0px 0px 33px;
  }

  .lp-evidence .landing-plans {
    gap: 14px;
  }

  .lp-evidence .landing-plan {
    padding: 24px 20px;
  }

  .lp-evidence .landing-plan h3 {
    font-size: 20px;
  }

  .lp-evidence .landing-plan > p {
    font-size: 13px;
  }

  .lp-evidence .landing-plan-badge {
    right: 15px;
    top: 21px;
  }

  .lp-evidence .home-transparency-layout {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .hp-closing > .container {
    flex-wrap: wrap;
    gap: 25px;
  }

  .pd-weather .pd-header {
    grid-template-columns: 1fr 240px;
  }

  .hp-project-photo {
    width: 240px;
  }
}

@media (max-width: 700px) {
  .home-page-shell .container {
    width: calc(100% - 40px);
  }

  .lp-evidence .landing-hero-copy {
    padding-top: 43px;
  }

  .lp-evidence h1 {
    font-size: clamp(36px, 9vw, 56px);
    letter-spacing: -0.053em;
  }

  .lp-evidence .landing-hero .landing-eyebrow {
    font-size: 10px;
    letter-spacing: 0.12em;
    margin-bottom: 23px;
  }

  .lp-evidence .landing-lead {
    font-size: 15px;
    line-height: 1.8;
    max-width: 40ch;
  }

  .lp-evidence .landing-hero .landing-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    max-width: 430px;
    margin-top: 25px;
  }

  .home-page-shell .lp-evidence .landing-hero .landing-button {
    justify-content: space-between;
    padding: 14px 18px;
    min-height: 50px;
    font-size: 14px;
  }

  .lp-evidence .landing-assurances {
    font-size: 11px;
    gap: 10px 15px;
    margin-top: 21px;
  }

  .lp-evidence .landing-scene {
    width: 100%;
  }

  .lp-evidence .scene-panel {
    width: 100%;
    position: relative;
  }

  .lp-evidence .scene-foreground {
    opacity: 0.25;
  }

  .lp-evidence .scene-caption {
    bottom: -7px;
    left: 0px;
    right: auto;
    font-size: 10px;
    padding: 4px 0px;
    background: none;
  }

  .lp-evidence .hero-bottom {
    gap: 17px;
    padding: 19px 0px;
    font-size: 11px;
  }

  .lp-evidence .hero-bottom > span {
    font-size: 11px;
    max-width: 55%;
    line-height: 1.6;
  }

  .lp-evidence .hero-scroll {
    font-size: 11px;
  }

  .lp-evidence .landing-section {
    padding-block: 44px;
  }

  .lp-evidence .landing-story {
    padding: 29px 0px 15px;
  }

  .lp-evidence .story-layout {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .lp-evidence .story-problem {
    grid-area: 1 / 1;
  }

  .lp-evidence .story-solution {
    grid-area: 2 / 1;
    padding-top: 10px;
  }

  .lp-evidence .story-chapter h2 {
    font-size: 30px;
    max-width: 540px;
  }

  .lp-evidence .story-chapter p {
    font-size: 14px;
    max-width: 47ch;
    margin-top: 16px;
  }

  .lp-evidence .story-chapter .landing-eyebrow {
    font-size: 10px;
    margin-bottom: 14px;
  }

  .lp-evidence .story-fragments {
    margin-top: 20px;
    gap: 8px;
  }

  .lp-evidence .story-fragments > span {
    font-size: 11px;
  }

  .lp-evidence .story-principles {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    font-size: 11px;
  }

  .lp-evidence .story-visual {
    grid-area: 3 / 1;
    height: 430px;
    width: min(100%, 455px);
    justify-self: center;
    margin-top: 14px !important;
  }

  .lp-evidence .story-core {
    font-size: 19px;
    top: 43px;
    left: 11%;
  }

  .lp-evidence .story-source {
    width: 80%;
    padding: 12px 14px;
    min-height: 58px;
    gap: 12px;
    top: calc(97px + var(--row)*67px);
  }

  html:is([lang="sv"], [lang="en"]) .lp-evidence .story-source {
    height: 61px;
  }

  .lp-evidence .story-source strong {
    font-size: 13px;
  }

  .lp-evidence .story-source div > span {
    font-size: 11px;
  }

  .lp-evidence .story-system-frame {
    inset: 24px 3% 40px;
  }

  .lp-evidence .story-orbit {
    left: -1%;
    width: 102%;
    top: 3%;
  }

  .lp-evidence .orbit-two {
    width: 91%;
    left: 4%;
    top: 13%;
  }

  .lp-evidence .story-status {
    font-size: 11px;
  }

  .hp-flow {
    margin-top: 17px !important;
    padding-top: 20px;
  }

  .hp-flow-label {
    font-size: 10px;
    margin-bottom: 19px;
  }

  .hp-flow ol {
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 17px 20px;
  }

  .hp-flow li {
    font-size: 12px;
    gap: 8px;
  }

  .hp-flow li + li::before {
    display: none;
  }

  .hp-flow li > span {
    font-size: 10px;
    display: grid;
    place-items: center;
    width: 23px;
    height: 23px;
    border: 1px solid rgb(49, 81, 106);
    border-radius: 5px;
    color: rgb(126, 190, 215);
  }

  .hp-section-heading {
    display: block;
    margin-bottom: 25px;
  }

  .hp-section-heading > .landing-link {
    margin-top: 9px;
    font-size: 13px;
  }

  .lp-evidence .hp-section-heading h2 {
    font-size: 31px;
    max-width: 570px;
  }

  .hp-section-heading .landing-eyebrow {
    font-size: 10px;
    letter-spacing: 0.13em;
  }

  .hp-project-layout {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .hp-featured-project {
    min-height: 0px;
    padding-top: 230px;
  }

  .hp-station {
    height: 285px;
    bottom: auto;
  }

  .hp-station img {
    object-position: 67% 20%;
  }

  .hp-weather::before {
    background: linear-gradient(0deg, rgb(6, 28, 43) 0%, rgb(6, 28, 43) 40%, rgba(6, 28, 43, 0) 75%);
  }

  .hp-featured-copy {
    padding: 0px 25px 26px;
    max-width: 100%;
  }

  .hp-featured-category {
    font-size: 12px;
  }

  .hp-featured-category img {
    width: 35px;
    height: 35px;
  }

  .lp-evidence .hp-featured-project h3 {
    font-size: 35px;
    margin-top: 16px;
  }

  .lp-evidence .hp-featured-copy > p {
    font-size: 14px;
    max-width: 41ch;
    margin: 13px 0px 23px;
  }

  .hp-featured-copy .landing-button {
    width: 100%;
    justify-content: space-between;
    max-width: 430px;
  }

  .hp-project-evidence {
    font-size: 11px;
    gap: 12px 20px;
    padding: 17px 24px;
    line-height: 1.5;
  }

  .hp-image-caption {
    top: 12px;
    bottom: auto;
    font-size: 10px;
  }

  .hp-research-index {
    padding: 23px 25px;
  }

  .hp-index-heading {
    font-size: 17px;
  }

  .lp-evidence .hp-research-index > p {
    font-size: 14px;
    max-width: 40ch;
  }

  .hp-source-row {
    gap: 13px;
    min-height: 71px;
  }

  .hp-source-row strong {
    font-size: 13px;
  }

  .hp-source-row small {
    font-size: 12px;
  }

  .hp-source-symbol {
    width: 34px;
    height: 36px;
  }

  .hp-index-footer {
    font-size: 12px;
    padding-top: 20px;
  }

  .lp-evidence .lp-core-section h2 {
    font-size: 31px;
  }

  .lp-evidence .lp-core-intro {
    font-size: 14px;
    margin-bottom: 26px;
  }

  .hp-core-process ol {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .hp-core-process li {
    display: flex;
    gap: 15px;
  }

  .hp-process-number {
    margin-bottom: 0px;
    width: 38px;
    height: 40px;
  }

  .lp-evidence .hp-core-process h3 {
    font-size: 17px;
  }

  .lp-evidence .hp-core-process li p {
    font-size: 14px;
    max-width: 38ch;
  }

  .hp-core-principle {
    align-items: flex-start;
    padding-top: 20px;
    margin-top: 23px;
  }

  .lp-evidence .hp-core-principle p {
    font-size: 14px;
  }

  .hp-core-layout {
    gap: 24px;
  }

  .lp-evidence .lp-demo-bar {
    padding: 15px;
  }

  .lp-evidence .lp-demo-body {
    padding: 15px 16px 0px;
  }

  .lp-evidence .lp-example-context {
    font-size: 10px;
    max-width: 50%;
  }

  .lp-evidence .lp-example-label {
    font-size: 10px;
  }

  .lp-evidence .lp-core-mark {
    width: 34px;
    height: 36px;
  }

  .lp-evidence .lp-query {
    padding: 7px;
    grid-template-columns: minmax(0px, 1fr) 40px;
    gap: 8px;
  }

  .lp-evidence .lp-query-search {
    display: none;
  }

  .lp-evidence .lp-query h3 {
    font-size: 13px;
    line-height: 1.6;
  }

  .lp-evidence .lp-answer-heading {
    gap: 7px;
    font-size: 12px;
  }

  .lp-evidence .lp-evidence-state {
    font-size: 10px;
  }

  .lp-evidence .lp-claims {
    font-size: 14px;
    gap: 13px;
    line-height: 1.7;
  }

  .lp-evidence .lp-demo-footer {
    padding: 13px 16px 0px;
  }

  .lp-evidence .lp-source-links {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .lp-evidence .lp-source-links a {
    min-height: 62px;
    padding: 10px;
  }

  .lp-evidence .lp-source-index {
    display: grid;
    width: 29px;
    height: 31px;
  }

  .lp-evidence .lp-source-copy strong {
    font-size: 12px;
  }

  .lp-evidence .lp-source-copy > span {
    font-size: 11px;
  }

  .lp-evidence .lp-demo-bottom {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 5px;
  }

  .lp-evidence .lp-demo-bottom > .landing-link {
    font-size: 13px;
    justify-content: space-between;
    width: 100%;
  }

  .lp-evidence .lp-review-label {
    font-size: 10px;
  }

  .lp-evidence .lp-demo-limits summary {
    font-size: 12px;
  }

  .lp-evidence .lp-demo-limits > div {
    font-size: 13px;
    line-height: 1.7;
  }

  .lp-evidence .landing-access h2 {
    font-size: 31px;
  }

  .lp-evidence .landing-plans {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .lp-evidence .landing-plan {
    padding: 26px;
    min-height: 265px;
  }

  .lp-evidence .landing-plan h3 {
    font-size: 24px;
    margin-top: 21px;
  }

  .lp-evidence .landing-plan > p {
    font-size: 14px;
    max-width: 45ch;
    margin-bottom: 24px;
  }

  .lp-evidence .landing-plan-badge {
    top: 25px;
    right: 25px;
  }

  .lp-evidence .lp-plan-details {
    font-size: 13px;
  }

  .lp-evidence .home-transparency {
    padding: 34px 0px;
  }

  .lp-evidence .home-transparency-layout {
    gap: 25px;
  }

  .lp-evidence .home-transparency h2 {
    font-size: 29px;
  }

  .lp-evidence .home-transparency-cards {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
    gap: 11px;
  }

  .lp-evidence .home-transparency-card {
    padding: 19px 16px;
  }

  .lp-evidence .home-transparency-card h3 {
    font-size: 14px;
  }

  .lp-evidence .home-transparency-card p {
    font-size: 12px;
    line-height: 1.7;
  }

  .hp-closing {
    padding: 37px 0px;
  }

  .hp-closing > .container {
    display: block;
  }

  .lp-evidence .hp-closing h2 {
    font-size: 29px;
  }

  .hp-closing .landing-actions {
    display: grid;
    grid-template-columns: 1fr;
    margin-top: 24px;
    max-width: 430px;
  }

  .hp-closing .landing-button {
    justify-content: space-between;
  }

  .pd-weather .pd-header {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .hp-project-photo {
    width: 100%;
    height: 230px;
  }

  .hp-detail-station img {
    object-position: 66% 24%;
  }
}

@media (max-width: 370px) {
  .home-page-shell .container {
    width: calc(100% - 32px);
  }

  .lp-evidence h1 {
    font-size: 35px;
  }

  .lp-evidence .landing-assurances {
    gap: 8px;
    font-size: 10px;
  }

  .lp-evidence .landing-scene {
    height: 471px;
  }

  .lp-evidence .story-source {
    width: 82%;
    gap: 9px;
    padding: 11px;
  }

  html:is([lang="sv"], [lang="en"]) .lp-evidence .story-source {
    height: 58px;
  }

  .lp-evidence .story-source strong {
    font-size: 12px;
  }

  .lp-evidence .story-source div > span {
    font-size: 10px;
  }

  .lp-evidence .story-chapter h2 {
    font-size: 28px;
  }

  .hp-featured-copy {
    padding-inline: 22px;
  }

  .hp-featured-project {
    padding-top: 217px;
  }

  .hp-station {
    height: 270px;
  }

  .hp-project-evidence {
    padding-inline: 22px;
  }

  .lp-evidence .home-transparency-card {
    padding: 18px 13px;
  }

  .lp-evidence .home-transparency-card h3 {
    font-size: 13px;
  }

  .lp-evidence .home-transparency-card p {
    font-size: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lp-evidence *, .lp-evidence ::before, .lp-evidence ::after {
    animation: auto ease 0s 1 normal none running none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }

  .lp-evidence .story-source {
    transform: translateX(-50%);
  }
.lp-evidence .hp-station {
    transform: none !important;
  }
}

.lp-evidence .scene-caption {
  display: none;
}

.lp-evidence .hp-station {
  transform-origin: 50% 0px;
}

.lp-evidence .story-orbit {
  max-height: 430px;
}

@media (max-width: 700px) {
  .lp-evidence .hp-image-caption {
    left: 12px;
    right: auto;
  }

  .lp-evidence .hp-category-filters .front-category-chip {
    min-height: 44px;
  }
}

@media (min-width: 961px) {
  .lp-evidence .scene-panel {
    top: 18%;
  }
}

@media (min-width: 961px) and (max-width: 1190px) {
  .lp-evidence .landing-scene {
    right: -4%;
    bottom: 115px;
  }
}

@media (max-width: 960px) {
  .lp-evidence .landing-scene {
    height: auto;
    aspect-ratio: auto;
    padding: 85px 0px 24px;
  }

  .lp-evidence .scene-panel {
    position: relative;
    top: 0px;
    min-height: 0px;
  }

  .lp-evidence .scene-planet {
    top: -7%;
  }
}

@media (max-width: 700px) {
  .lp-evidence .landing-scene {
    height: auto;
    aspect-ratio: auto;
    padding: 35px 0px 20px;
    margin: 30px 0px 14px;
  }

  .lp-evidence .scene-panel {
    top: 0px;
    left: 0px;
    min-height: 0px;
  }

  .lp-evidence .scene-planet {
    top: -19%;
    left: 28%;
    width: 83%;
    opacity: 0.5;
  }
}

/* GEODNET public introduction, 2026-09-27. Decorative positioning rings. */
/* GEODNET reference card. All geometry is scoped to the homepage illustration. */
.hp-featured-project.hp-geodnet {
  container-type: inline-size;
  width: 100%;
  max-width: 1040px;
  margin-inline: auto;
  min-height: 0;
  padding: 0;
  border: 1px solid #2997b4;
  border-radius: 19px;
  background: #031a28;
  box-shadow: 0 1px 0 #a9edff12 inset, 0 22px 64px #00122040;
}
.hp-geodnet::before { content: none; }
.hp-geodnet-scene { position: relative; aspect-ratio: 1584 / 708; }
.hp-geodnet-picture { position: absolute; inset: 0; display: block; }
.hp-geodnet-picture img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.hp-geodnet-scene::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, #0016229c 0%, #00162254 35%, #00162200 60%);
}
.lp-evidence .hp-geodnet .hp-featured-copy {
  position: absolute;
  inset: 0;
  z-index: 1;
  padding: 0;
  max-width: none;
  display: block;
}
.hp-geodnet .hp-featured-category {
  position: absolute;
  top: 8.47%;
  left: 3.79%;
  gap: 1.52cqw;
  font-size: 1.4cqw;
  line-height: 1.3;
  font-weight: 500;
  color: #bbd8e9;
}
.hp-geodnet-symbol {
  display: grid;
  place-items: center;
  width: 4.3cqw;
  height: 4.3cqw;
  border-radius: 1cqw;
  background: linear-gradient(135deg, #105a79, #104460);
  box-shadow: inset 0 1px 0 #96eaff0a;
  color: #b3edff;
}
.hp-geodnet-symbol svg { width: 2.8cqw; height: 2.8cqw; overflow: visible; }
.lp-evidence .hp-geodnet h3 {
  position: absolute;
  top: 24.8%;
  left: 3.65%;
  margin: 0;
  font-size: 5.56cqw;
  line-height: 1.06;
  font-weight: 580;
  letter-spacing: -.05em;
  color: #fbfdff;
  text-shadow: 0 2px 18px #00132020;
}
.lp-evidence .hp-geodnet .hp-geodnet-description {
  position: absolute;
  top: 43.1%;
  left: 3.79%;
  width: 46%;
  max-width: none;
  margin: 0;
  font-size: 1.77cqw;
  line-height: 1.47;
  font-weight: 450;
  letter-spacing: -.025em;
  color: #b9d1e1;
  text-shadow: 0 1px 12px #00111c60;
}
.hp-geodnet-description span { display: block; }
.hp-geodnet .hp-featured-copy .landing-button {
  position: absolute;
  left: 3.79%;
  top: 70.9%;
  width: auto;
  max-width: none;
  min-width: 22.6%;
  min-height: 0;
  height: 13.84%;
  margin: 0;
  padding: 0 2.6cqw;
  gap: 2cqw;
  justify-content: space-between;
  border: 1.5px solid #a1eafa;
  border-radius: 1.06cqw;
  background: linear-gradient(105deg, #72ddf6 0%, #42cdf2 48%, #1db4e9 100%);
  box-shadow: 0 0 0 3px #bdf6ff27 inset, 0 12px 38px #09bde216;
  color: #002431;
  font-size: 1.78cqw;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -.02em;
  text-shadow: none;
}
.hp-geodnet .landing-button .icon { width: 2.2cqw; height: 2.2cqw; stroke-width: 1.8; }
.hp-geodnet .landing-button:hover { filter: brightness(1.08); transform: translateY(-1px); }
.hp-geodnet .landing-button:focus-visible { outline: 3px solid #e8fbff; outline-offset: 5px; }
.hp-geodnet .hp-image-caption {
  z-index: 2;
  left: auto;
  right: 2.14%;
  bottom: 4.24%;
  top: auto;
  padding: .76cqw 1.1cqw;
  border-radius: .8cqw;
  background: #0c1c28cf;
  color: #e1edf5;
  font-size: 1.28cqw;
  line-height: 1.35;
  font-weight: 500;
  letter-spacing: -.02em;
  backdrop-filter: blur(7px);
}
.hp-geodnet .hp-project-evidence {
  position: relative;
  min-height: 6.7cqw;
  padding: 1.7cqw 3.79cqw;
  gap: 3.4cqw;
  border-top: 1px solid #538ba045;
  background: linear-gradient(105deg, #001826, #031a28ed);
  color: #b7d5e7;
  font-size: 1.44cqw;
  line-height: 1.4;
  font-weight: 450;
  letter-spacing: -.015em;
}
.hp-geodnet .hp-project-evidence > span { gap: 1.2cqw; }
.hp-geodnet .hp-project-evidence .hp-icon { width: 1.9cqw; height: 1.9cqw; color: #64d9f8; }
.hp-geodnet .hp-evidence-dot::before { width: .58cqw; height: .58cqw; background: #f0d48d; }
@media (max-width: 899px) {
  .hp-featured-project.hp-geodnet { border-radius: 16px; }
  .hp-geodnet-scene { aspect-ratio: auto; padding-top: clamp(200px, 34vw, 280px); }
  .hp-geodnet-picture { bottom: auto; height: clamp(240px, 41vw, 330px); }
  .hp-geodnet-picture img { object-position: right center; }
  .hp-geodnet-scene::after { bottom: auto; height: clamp(240px, 41vw, 330px); background: linear-gradient(0deg, #031a28 0%, #031a2800 42%); }
  .lp-evidence .hp-geodnet .hp-featured-copy { position: relative; padding: 20px 26px 32px; }
  .hp-geodnet .hp-featured-category { position: static; gap: 14px; font-size: 15px; }
  .hp-geodnet-symbol { width: 46px; height: 46px; border-radius: 11px; }
  .hp-geodnet-symbol svg { width: 30px; height: 30px; }
  .lp-evidence .hp-geodnet h3 { position: static; margin: 24px 0 0; font-size: clamp(42px, 7vw, 60px); line-height: 1.08; }
  .lp-evidence .hp-geodnet .hp-geodnet-description { position: static; width: auto; margin: 20px 0 28px; font-size: 17px; line-height: 1.55; }
  .hp-geodnet-description span { display: inline; }
  .hp-geodnet-description span + span::before { content: " "; }
  .hp-geodnet .hp-featured-copy .landing-button { position: static; width: fit-content; min-width: 245px; max-width: 100%; height: auto; min-height: 58px; padding: 14px 24px; gap: 22px; border-radius: 11px; font-size: 18px; }
  .hp-geodnet .landing-button .icon { width: 27px; height: 27px; }
  .hp-geodnet .hp-image-caption { top: 18px; right: 16px; bottom: auto; padding: 7px 11px; font-size: 12px; border-radius: 7px; }
  .hp-geodnet .hp-project-evidence { min-height: 74px; padding: 20px 26px; gap: 12px 26px; font-size: 14px; }
  .hp-geodnet .hp-project-evidence > span { gap: 10px; }
  .hp-geodnet .hp-project-evidence .hp-icon { width: 22px; height: 22px; }
  .hp-geodnet .hp-evidence-dot::before { width: 7px; height: 7px; }
}
@media (max-width: 420px) {
  .lp-evidence .hp-geodnet .hp-featured-copy { padding-inline: 22px; }
  .hp-geodnet .hp-featured-copy .landing-button { width: 100%; min-width: 0; }
  .hp-geodnet .hp-project-evidence { padding-inline: 22px; font-size: 13px; gap: 12px 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .hp-geodnet .landing-button { transition: none; }
  .hp-geodnet .landing-button:hover { transform: none; }
}
/* Account journey: keep the existing artwork and align both navigation actions. */
.lp-evidence .hp-journey-copy { margin: 0 0 22px; line-height: 1.65; }
.lp-evidence .hp-journey-copy + .hp-category-filters { margin-top: 0; }
.hp-geodnet .project-journey { position: absolute; left: 3.79%; top: 70.9%; display: flex; align-items: center; gap: 2cqw; margin: 0; }
.hp-geodnet .project-journey .landing-button { position: static; height: auto; min-height: 6.18cqw; }
.hp-geodnet .project-journey .landing-link { position: static; font-size: max(13px,1.5cqw); white-space: nowrap; }
.project-journey a:focus-visible { outline: 2px solid #8bd5ff; outline-offset: 4px; }
@media(max-width:899px){.hp-geodnet .project-journey{position:static;flex-wrap:wrap;gap:16px}.hp-geodnet .project-journey .landing-link{font-size:16px}}
