/* Premium editorial rhythm for the GoSEQ public landing page. */
.landing .stage {
  overflow: hidden;
  background:
    radial-gradient(ellipse at 72% 46%, #26372c66, transparent 47%),
    radial-gradient(ellipse at 8% 80%, #29312855, transparent 43%);
}
.landing .stage-grid {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
  align-items: center;
  gap: clamp(36px, 5vw, 88px);
  max-width: 1480px;
  min-height: min(760px, calc(100svh - 112px));
  padding-top: clamp(48px, 7vh, 92px);
  padding-bottom: clamp(54px, 7vh, 92px);
}
.landing .stage-copy { width: 100%; text-align: left; }
.landing .kicker { justify-content: flex-start; margin: 0 0 24px !important; }
.landing h1 { max-width: 690px; font-size: clamp(54px, 5.6vw, 86px); line-height: .99; letter-spacing: -.075em; }
.landing h1 .hero-line:first-child { white-space: normal; }
.landing .beat .lede { max-width: 440px; margin: 0 0 27px; font-size: 16px; line-height: 1.75; }
.landing .try { justify-content: flex-start; flex-wrap: wrap; gap: 18px 25px; }
.landing .trust { justify-content: flex-start; flex-wrap: wrap; row-gap: 9px; margin-top: 25px; }
.landing .trust li + li { margin-left: 16px; }
.landing .stage-right { min-width: 0; gap: 17px; }
.landing .stage-scene { min-height: clamp(500px, 58vw, 690px); --ph: clamp(440px, 48vw, 570px); border-radius: 26px; }
.landing .scene-word { font-size: clamp(90px, 12vw, 185px); }
.landing .departure { left: 5%; width: 238px; padding: 22px 24px 20px; }
.landing .departure strong { font-size: 58px; }
.landing .scene-caption { right: 4%; bottom: 46px; max-width: 190px; }
.landing .scene-caption p { font-size: 23px; }
.landing .phone { margin-left: 5%; }
.landing .story { width: min(100%, 590px); }
.landing .story-caps { margin-top: 3px; }
.landing .notes, .landing .why, .landing .tour, .landing .price, .landing .faq,
.landing .maker, .landing .android, .landing .closing { scroll-margin-top: 90px; }
.landing .notes, .landing .why, .landing .price, .landing .faq { border-top: 1px solid #24352212; }
.landing .notes-grid, .landing .why-grid { max-width: 1170px; margin-inline: auto; }
.landing .n-card, .landing .rel-card, .landing .plan, .landing .signup, .landing .tour-strip > li {
  box-shadow: 0 18px 55px #1822180a;
}
.landing .tour-strip > li { border-radius: 22px; }
.landing .also { max-width: 1170px; margin-inline: auto; }
.landing .closing-grid, .landing .maker-grid, .landing .price-grid { max-width: 1170px; margin-inline: auto; }
.landing .scene-particles { opacity: .34; }
.landing .travel-chip { animation-duration: 10s; box-shadow: 0 8px 24px #0002; }
@media (min-width: 1500px) {
  .landing .stage-grid { max-width: 1540px; }
}
@media (max-width: 1050px) and (min-width: 700px) {
  .landing .stage-grid { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 30px; }
  .landing h1 { font-size: clamp(46px, 5.5vw, 62px); }
  .landing .stage-scene { min-height: 560px; --ph: 470px; }
  .landing .departure { left: 4%; width: 190px; padding: 18px; }
  .landing .departure strong { font-size: 48px; }
  .landing .scene-caption { right: 4%; max-width: 145px; }
  .landing .scene-caption p { font-size: 19px; }
  .landing .f-note { display: none; }
}
@media (max-width: 699px) {
  .landing .stage { background: radial-gradient(ellipse at 50% 80%, #26372c66, transparent 58%); }
  .landing .stage-grid { display: flex; flex-direction: column; gap: 31px; min-height: 0; padding-top: 48px; padding-bottom: 25px; }
  .landing .stage-copy { text-align: center; }
  .landing .kicker { justify-content: center; margin: 0 auto 22px !important; }
  .landing h1 { max-width: none; font-size: clamp(39px, 8.7vw, 60px); line-height: 1.07; }
  .landing h1 .hero-line:first-child { white-space: normal; }
  .landing .beat .lede { max-width: 360px; margin: 0 auto 23px; font-size: 13px; }
  .landing .try { justify-content: center; gap: 18px; }
  .landing .trust { justify-content: center; }
  .landing .stage-scene { min-height: 490px; --ph: 355px; }
  .landing .departure { left: 5%; width: 160px; padding: 17px 15px; }
  .landing .departure strong { font-size: 41px; }
  .landing .scene-caption { left: 20px; right: auto; bottom: 18px; max-width: none; }
  .landing .scene-caption p { font-size: 17px; }
}
@media (prefers-reduced-motion: reduce) {
  .landing .travel-chip { animation: none; }
}
