body.studio {
  margin: 0;
  background: var(--lp-page);
  color: var(--lp-text);
}

html:has(body.studio) {
  scroll-behavior: smooth;
  scroll-padding-top: var(--lp-space-8);
}

.landing-page,
.landing-page *,
.landing-page *::before,
.landing-page *::after {
  box-sizing: border-box;
}

.landing-page {
  min-width: 0;
  background: var(--lp-page);
  color: var(--lp-text);
  font: var(--lp-weight-regular) 100%/1.5 var(--lp-font-sans);
  overflow-wrap: anywhere;
  -webkit-font-smoothing: antialiased;
}

.landing-page :where(h1, h2, h3, p, figure) {
  margin: 0;
}

.landing-page :where(h1, h2, h3) {
  color: var(--lp-text);
  font-weight: var(--lp-weight-semibold);
  text-wrap: balance;
  overflow-wrap: break-word;
}

.landing-page h1 {
  font-size: clamp(2.625rem, 6.2vw, 5.375rem);
  line-height: 1.06;
  letter-spacing: -0.05em;
}

.landing-page h2 {
  font-size: clamp(2.25rem, 4.2vw, 3.75rem);
  line-height: 1.1;
  letter-spacing: -0.04em;
}

.landing-page h3 {
  font-size: clamp(1.875rem, 3vw, 2.625rem);
  line-height: 1.15;
  letter-spacing: -0.03em;
}

.landing-page p {
  color: var(--lp-text-secondary);
  font-size: 1rem;
  line-height: 1.6;
  text-wrap: pretty;
}

.landing-page a {
  color: inherit;
  text-decoration: none;
}

.landing-page :where(h1, h2, h3, p, a, button, summary, strong) {
  overflow-wrap: anywhere;
}

.landing-page button,
.landing-page select {
  color: inherit;
  font: inherit;
}

.landing-page :where(a, button, select, summary) {
  -webkit-tap-highlight-color: transparent;
}

.landing-page :where(a, button, select, summary):focus-visible {
  outline: 3px solid var(--lp-focus);
  outline-offset: 3px;
}

.wrap {
  width: min(var(--lp-content-max), calc(100% - 2 * var(--lp-gutter)));
  margin-inline: auto;
}

.site-nav {
  display: flex;
  min-height: 5.625rem;
  align-items: center;
  gap: var(--lp-space-5);
  padding-block: var(--lp-space-3);
}

.brand {
  display: inline-flex;
  flex: none;
  align-items: center;
  gap: var(--lp-space-2);
  font-size: 1.4375rem;
  font-weight: var(--lp-weight-semibold);
  line-height: 1.2;
  letter-spacing: -0.04em;
  white-space: nowrap;
}

.brand svg {
  width: 1.8125rem;
  height: 1.8125rem;
}

.site-nav nav {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: var(--lp-space-6);
  margin-left: auto;
  font-size: 0.875rem;
  font-weight: var(--lp-weight-medium);
  line-height: 1.4;
}

.site-login {
  display: inline-flex;
  min-height: var(--lp-target-min);
  align-items: center;
  padding-inline: var(--lp-space-2);
  font-size: 0.875rem;
  font-weight: var(--lp-weight-medium);
  white-space: nowrap;
}

.site-nav nav a,
.footer nav a,
.text-link {
  text-underline-offset: 0.3em;
  transition: color var(--lp-duration-state) ease;
}

.button {
  display: inline-flex;
  min-height: var(--lp-control-height-large);
  align-items: center;
  justify-content: center;
  gap: var(--lp-space-2);
  padding: var(--lp-space-3) var(--lp-space-6);
  border: 0;
  border-radius: var(--lp-radius-pill);
  background: var(--lp-brand);
  color: var(--lp-on-brand) !important;
  font-size: 0.9375rem;
  font-weight: var(--lp-weight-semibold);
  line-height: 1.3;
  text-align: center;
  touch-action: manipulation;
  transition:
    background-color var(--lp-duration-state) ease,
    transform var(--lp-duration-press) var(--lp-ease-out);
}

.button.small {
  min-height: var(--lp-target-min);
  padding: var(--lp-space-2) var(--lp-space-4);
}

.button-icon {
  width: 1rem;
  height: 1rem;
  flex: none;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.button:active {
  background: var(--lp-brand-pressed);
  transform: scale(0.97);
}

.button[aria-disabled="true"],
.button:disabled {
  background: var(--lp-disabled-bg);
  color: var(--lp-disabled-text) !important;
  cursor: default;
  transform: none;
}

.text-link {
  display: inline-flex;
  min-height: var(--lp-target-min);
  align-items: center;
  gap: var(--lp-space-2);
  font-size: 0.9375rem;
  font-weight: var(--lp-weight-semibold);
}

.eyebrow {
  display: block;
  color: var(--lp-text-secondary);
  font-size: 0.75rem;
  font-weight: var(--lp-weight-semibold);
  line-height: 1.4;
  letter-spacing: 0.08em;
}

.language-switch {
  position: relative;
  display: inline-flex;
  min-width: 4rem;
  min-height: var(--lp-target-min);
  flex: none;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  border-radius: var(--lp-radius-pill);
  font-size: 0.875rem;
  font-weight: var(--lp-weight-medium);
  transition: background-color var(--lp-duration-state) ease;
}

.language-switch > svg {
  width: 1.125rem;
  height: 1.125rem;
  flex: none;
}

.language-switch select {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  opacity: 0;
  cursor: pointer;
  font-size: 1rem;
}

.language-switch:focus-within {
  outline: 3px solid var(--lp-focus);
  outline-offset: 3px;
}

.studio-hero {
  padding-top: var(--lp-space-12);
  text-align: center;
}

.studio-hero .eyebrow {
  margin-bottom: var(--lp-space-5);
}

.studio-hero h1 span,
.campaign-heading h2 span {
  color: #848589;
}

.studio-hero > p {
  max-width: 43.125rem;
  margin: var(--lp-space-6) auto 0;
  font-size: 1.1875rem;
  line-height: 1.5;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: var(--lp-space-3);
  margin-top: var(--lp-space-6);
}

.device-image {
  min-width: 0;
  overflow: hidden;
}

.device-image img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.studio-devices {
  width: min(60rem, 100%);
  aspect-ratio: 3 / 2;
  margin: var(--lp-space-6) auto 0;
}

.platforms {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: var(--lp-space-6);
  margin-top: var(--lp-space-5);
  color: var(--lp-text-secondary);
  font-size: 0.875rem;
  line-height: 1.4;
}

.platforms > span {
  display: inline-flex;
  align-items: center;
  gap: var(--lp-space-2);
  white-space: nowrap;
}

.wallet-icon,
.google-g {
  color: var(--lp-text);
  line-height: 1;
}

.wallet-icon {
  font-size: 1.5625rem;
}

.google-g {
  font:
    var(--lp-weight-semibold) 1.25rem/1 Arial,
    sans-serif;
}

.campaigns {
  padding-block: calc(var(--lp-section-space) + var(--lp-space-4)) var(--lp-section-space);
}

.campaign-heading {
  max-width: 47.5rem;
  margin-inline: auto;
  text-align: center;
}

.campaign-heading p {
  margin-top: var(--lp-space-6);
  font-size: 1.125rem;
}

.campaign-tabs {
  display: flex;
  width: max-content;
  max-width: 100%;
  margin: var(--lp-space-8) auto;
  padding: var(--lp-space-1);
  gap: var(--lp-space-1);
  border-radius: var(--lp-radius-pill);
  background: var(--lp-tab-track);
}

.campaign-tabs button {
  min-width: 0;
  min-height: var(--lp-target-min);
  padding: var(--lp-space-3) var(--lp-space-6);
  border: 0;
  border-radius: var(--lp-radius-pill);
  background: transparent;
  color: #626861;
  cursor: pointer;
  font-size: 0.875rem;
  font-weight: var(--lp-weight-medium);
  line-height: 1.4;
  white-space: nowrap;
  transition:
    background-color var(--lp-duration-state) ease,
    color var(--lp-duration-state) ease;
}

.campaign-tabs button[aria-selected="true"] {
  background: var(--lp-page);
  box-shadow: var(--lp-shadow-selected);
  color: #1d3327;
}

.campaign-tabs button:active {
  transform: none;
}

.campaign-tabs button:disabled {
  color: var(--lp-disabled-text);
  cursor: default;
}

.campaign-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: stretch;
  overflow: hidden;
  border-radius: var(--lp-card-radius);
  background: var(--lp-surface-campaign);
}

.campaign-description {
  min-width: 0;
  align-self: center;
  padding: var(--lp-space-12);
}

.campaign-description h3 {
  max-width: 27.5rem;
}

.campaign-description p {
  max-width: 21.5625rem;
  margin-top: var(--lp-space-6);
}

.campaign-phone {
  width: 100%;
  min-width: 0;
  align-self: stretch;
}

.campaign-phone img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}

.nearby-visual {
  position: relative;
  min-width: 0;
  overflow: hidden;
  aspect-ratio: 1;
  background: #e9ede8;
}

.nearby-map {
  display: block;
  width: 100%;
  height: 100%;
}

.nearby-customer {
  transform: translate(309px, 255px);
}

.nearby-pass {
  position: absolute;
  right: 8%;
  bottom: 12%;
  left: 8%;
  display: flex;
  min-width: 0;
  align-items: center;
  gap: var(--lp-space-3);
  padding: var(--lp-space-5);
  border: 1px solid var(--lp-page);
  border-radius: var(--lp-radius-control);
  background: rgb(255 255 255 / 93%);
  box-shadow: var(--lp-shadow-floating);
}

.nearby-pass > div {
  min-width: 0;
}

.nearby-pass-icon {
  display: grid;
  width: 2.75rem;
  height: 2.75rem;
  flex: none;
  place-items: center;
  border-radius: var(--lp-radius-control);
  background: var(--lp-brand);
  color: var(--lp-on-brand);
}

.nearby-pass-icon svg {
  width: 1.75rem;
  height: 1.75rem;
}

.nearby-pass-meta {
  display: block;
  margin-bottom: var(--lp-space-1);
  color: #5d695f;
  font-size: 0.75rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
}

.nearby-pass strong {
  display: block;
  color: #23392a;
  font-size: 1rem;
  font-weight: var(--lp-weight-semibold);
  line-height: 1.3;
}

.nearby-pass p {
  margin-top: var(--lp-space-1);
  color: #4f5e51;
}

.replay-nearby,
.replay-growth {
  display: inline-flex;
  min-height: var(--lp-target-min);
  align-items: center;
  justify-content: center;
  gap: var(--lp-space-2);
  padding: var(--lp-space-2) var(--lp-space-4);
  border-radius: var(--lp-radius-pill);
  cursor: pointer;
  font-size: 0.875rem;
  font-weight: var(--lp-weight-medium);
  line-height: 1.4;
  transition:
    background-color var(--lp-duration-state) ease,
    border-color var(--lp-duration-state) ease;
}

.replay-nearby {
  position: absolute;
  top: var(--lp-space-5);
  right: var(--lp-space-5);
  border: 1px solid #b6c4b5;
  background: rgb(255 255 255 / 80%);
  color: #304c39;
}

.replay-icon {
  width: 1.25rem;
  height: 1.25rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.is-playing .nearby-customer {
  animation: lp-customer-arrives 3s var(--lp-ease-travel) both;
}

.is-playing .nearby-pass {
  animation: lp-pass-surfaces 650ms var(--lp-ease-out) 2.45s both;
}

@keyframes lp-customer-arrives {
  0% {
    transform: translate(76px, 382px);
  }
  42% {
    transform: translate(198px, 382px);
  }
  73% {
    transform: translate(198px, 255px);
  }
  100% {
    transform: translate(309px, 255px);
  }
}

@keyframes lp-pass-surfaces {
  from {
    opacity: 0;
    transform: translateY(16px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.referrals {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: var(--lp-space-10) var(--lp-space-20);
}

.referral-heading,
.referral-copy,
.referral-cosmos {
  min-width: 0;
}

.referral-heading h2 span {
  color: var(--lp-brand);
}

.referral-copy .lead {
  max-width: 28.125rem;
  color: var(--lp-text);
  font-size: 1.125rem;
  line-height: 1.6;
}

.referral-copy > p + p {
  max-width: 23.125rem;
  margin-top: var(--lp-space-4);
}

.referral-cosmos {
  position: relative;
  grid-column: 1 / -1;
  overflow: hidden;
  border-radius: var(--lp-card-radius);
  background: radial-gradient(ellipse at 50% 48%, #234638 0%, #13291f 44%, #0d1b15 100%);
  color: #eef5ee;
}

.cosmos-caption {
  position: absolute;
  z-index: 1;
  top: var(--lp-space-6);
  right: var(--lp-space-8);
}

.replay-growth {
  border: 1px solid rgb(143 165 144 / 34%);
  background: rgb(255 255 255 / 4%);
  color: #e0eddf;
}

.referral-network {
  display: block;
  width: 100%;
  height: auto;
  min-height: 26.25rem;
  margin-block: var(--lp-space-6);
}

.network-orbit {
  fill: none;
  stroke: rgb(169 201 179 / 8%);
  stroke-width: 1;
  stroke-dasharray: 3 8;
}

.network-link {
  fill: none;
  stroke: #a8d0ae;
  stroke-width: 1.15;
  opacity: 0.28;
}

.network-node {
  transform-box: fill-box;
  transform-origin: center;
  opacity: 1;
}

.network-node > rect {
  fill: #e4f0dc;
  stroke: #cce4c4;
  stroke-width: 1;
}

.network-node svg path {
  fill: #183b27;
}

.tier-0 > rect {
  fill: var(--lp-page);
  stroke: var(--lp-page);
  stroke-width: 2;
}

.tier-3 > rect {
  fill: #b4ceb7;
}

.network-center-label {
  fill: #c6d8c5;
  font: var(--lp-weight-regular) 0.875rem/1.4 var(--lp-font-sans);
  letter-spacing: 0.02em;
}

.motion-ready .network-node,
.motion-ready .network-link {
  opacity: 0;
}

.is-running .network-node {
  animation: lp-qr-spawn 720ms var(--lp-ease-out) both;
  animation-delay: var(--delay);
}

.is-running .network-link {
  animation: lp-qr-connect 350ms ease both;
  animation-delay: calc(var(--delay) + 150ms);
}

@keyframes lp-qr-spawn {
  from {
    opacity: 0;
    transform: translate(var(--from-x), var(--from-y)) scale(0.68);
  }
  to {
    opacity: 1;
    transform: translate(0, 0) scale(1);
  }
}

@keyframes lp-qr-connect {
  from {
    opacity: 0;
  }
  to {
    opacity: 0.28;
  }
}

.pricing {
  padding-block: var(--lp-section-space);
}

.pricing-intro {
  max-width: 48.75rem;
  margin: 0 auto var(--lp-space-10);
  text-align: center;
}

.pricing-intro .eyebrow {
  margin-bottom: var(--lp-space-5);
}

.pricing-intro h2 span {
  color: var(--lp-text-secondary);
}

.pricing-plans {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--lp-space-4);
  max-width: var(--lp-content-max);
  margin-inline: auto;
}

.price-panel {
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: var(--lp-space-8);
  border: 1px solid var(--lp-border);
  border-radius: var(--lp-card-radius);
}

.price-top {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: var(--lp-space-3);
  font-size: 0.875rem;
  font-weight: var(--lp-weight-semibold);
  line-height: 1.4;
}

.price-top span:last-child,
.price > span {
  color: var(--lp-text-secondary);
  font-weight: var(--lp-weight-regular);
}

.price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--lp-space-3);
  margin-top: var(--lp-space-5);
}

.price strong {
  font-size: 3.625rem;
  font-weight: var(--lp-weight-semibold);
  line-height: 1.15;
  letter-spacing: -0.04em;
}

.price > span {
  font-size: 1rem;
}

.custom-plan {
  background: var(--lp-surface);
}

.custom-price strong {
  font-size: 2.625rem;
}

.price-panel ul {
  display: grid;
  gap: var(--lp-space-3);
  margin: var(--lp-space-5) 0 var(--lp-space-6);
  padding: var(--lp-space-6) 0 0;
  border-top: 1px solid var(--lp-border);
  list-style: none;
}

.price-panel li {
  position: relative;
  padding-left: var(--lp-space-6);
  font-size: 1rem;
  line-height: 1.6;
}

.price-panel li::before {
  position: absolute;
  left: 0;
  color: var(--lp-brand);
  content: "✓";
}

.price-panel .button {
  width: 100%;
  justify-content: space-between;
  margin-top: auto;
}

.faq {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
  gap: var(--lp-space-20);
  padding-block: var(--lp-space-16) var(--lp-section-space);
  border-top: 1px solid var(--lp-border);
}

.questions details {
  border-bottom: 1px solid var(--lp-border);
}

.questions summary {
  display: flex;
  min-height: var(--lp-target-min);
  align-items: center;
  justify-content: space-between;
  gap: var(--lp-space-5);
  padding-block: var(--lp-space-6);
  cursor: pointer;
  font-size: 1rem;
  font-weight: var(--lp-weight-medium);
  line-height: 1.4;
  list-style: none;
}

.questions summary::-webkit-details-marker {
  display: none;
}

.faq-icon {
  display: grid;
  width: var(--lp-target-min);
  height: var(--lp-target-min);
  flex: none;
  place-items: center;
  transition: transform var(--lp-duration-disclosure) var(--lp-ease-out);
}

.faq-icon svg {
  width: 1.25rem;
  height: 1.25rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
  stroke-linecap: round;
}

.questions details[open] .faq-icon {
  transform: rotate(45deg);
}

.questions details p {
  padding: 0 var(--lp-space-8) var(--lp-space-6) 0;
}

.questions details p a {
  text-decoration: underline;
  text-underline-offset: 0.2em;
}

.closing {
  padding: var(--lp-space-20) var(--lp-space-8);
  border-radius: var(--lp-card-radius);
  background: var(--lp-surface);
  text-align: center;
}

.closing h2 {
  margin-bottom: var(--lp-space-8);
}

.footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--lp-space-5);
  padding-block: var(--lp-space-12) var(--lp-space-6);
  color: var(--lp-text-secondary);
  font-size: 0.75rem;
  line-height: 1.5;
}

.footer nav {
  display: flex;
  flex-wrap: wrap;
  gap: var(--lp-space-5);
}

.skip {
  position: fixed;
  z-index: 60;
  top: -6.25rem;
  left: var(--lp-space-5);
  padding: var(--lp-space-3);
  border-radius: var(--lp-radius-control);
  background: var(--lp-page);
  color: var(--lp-text);
}

.skip:focus {
  top: var(--lp-space-3);
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@media (hover: hover) and (pointer: fine) {
  .button:not(:disabled):not([aria-disabled="true"]):hover {
    background: var(--lp-brand-hover);
  }

  .site-nav nav a:hover,
  .footer nav a:hover,
  .text-link:hover {
    color: var(--lp-brand);
    text-decoration: underline;
  }

  .campaign-tabs button:not([aria-selected="true"]):not(:disabled):hover,
  .language-switch:hover,
  .replay-nearby:hover {
    background: var(--lp-surface);
  }

  .replay-growth:hover {
    border-color: rgb(180 206 183 / 70%);
    background: rgb(255 255 255 / 10%);
  }
}

@media (max-width: 68.75rem) {
  body.studio {
    --lp-gutter: 2rem;
  }
  .campaign-description {
    padding: var(--lp-space-8);
  }
  .faq {
    gap: var(--lp-space-10);
  }
}

@media (max-width: 50rem) {
  body.studio {
    --lp-section-space: 5rem;
  }
  .site-nav nav {
    gap: var(--lp-space-4);
  }
  .site-nav nav a[href="#referrals"] {
    display: none;
  }
  .campaign-panel {
    grid-template-columns: 1fr;
  }
  .campaign-description {
    padding: var(--lp-space-8);
  }
  .campaign-description :where(h3, p) {
    max-width: 30.625rem;
  }
  .referrals {
    column-gap: var(--lp-space-10);
  }
  .pricing-plans {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 40.625rem) {
  .site-nav nav {
    display: none;
  }
  .site-nav > .site-login {
    margin-left: auto;
  }
  .site-nav > .button.small {
    display: none;
  }
  .language-switch {
    margin-left: auto;
  }
}

@media (max-width: 37.5rem) {
  body.studio {
    --lp-gutter: 1.25rem;
    --lp-section-space: 4rem;
    --lp-card-radius: var(--lp-radius-card-mobile);
  }

  .landing-page h1 {
    font-size: clamp(2.5rem, 10vw, 3.75rem);
  }
  .landing-page h2 {
    font-size: 2.25rem;
  }
  .landing-page h3 {
    font-size: 1.875rem;
  }
  .site-nav {
    min-height: 4.8125rem;
    gap: var(--lp-space-2);
  }
  .brand {
    font-size: 1.25rem;
  }
  .brand svg {
    width: 1.5rem;
    height: 1.5rem;
  }
  .language-switch {
    min-width: 3.625rem;
  }
  .button {
    min-height: var(--lp-control-height);
  }
  .button.small {
    padding-inline: var(--lp-space-3);
  }
  .button.small .button-icon {
    display: none;
  }
  .studio-hero {
    padding-top: var(--lp-space-8);
  }
  .studio-hero > p {
    margin-top: var(--lp-space-4);
    font-size: 1rem;
  }
  .desktop {
    display: none;
  }
  .hero-actions {
    margin-top: var(--lp-space-6);
  }
  .text-link {
    font-size: 0.9375rem;
  }
  .studio-devices {
    width: calc(100% + 1.5rem);
    margin: var(--lp-space-6) -0.75rem 0;
  }
  .platforms {
    gap: var(--lp-space-5);
    margin-top: var(--lp-space-5);
  }
  .campaigns {
    padding-block: var(--lp-section-space);
  }
  .campaign-heading p {
    margin-top: var(--lp-space-4);
    font-size: 1rem;
  }
  .campaign-tabs {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-block: var(--lp-space-6);
    border-radius: var(--lp-radius-control);
  }
  .campaign-tabs button {
    padding-inline: var(--lp-space-3);
    border-radius: var(--lp-radius-small);
    white-space: normal;
  }
  .campaign-description {
    padding: var(--lp-space-6);
  }
  .nearby-pass {
    right: 6%;
    bottom: 8%;
    left: 6%;
    gap: var(--lp-space-2);
    padding: var(--lp-space-3);
  }
  .nearby-pass-icon {
    width: 2.125rem;
    height: 2.125rem;
  }
  .nearby-pass p {
    line-height: 1.4;
  }
  .replay-nearby {
    top: var(--lp-space-3);
    right: var(--lp-space-3);
  }
  .referrals {
    grid-template-columns: 1fr;
    gap: var(--lp-space-6);
  }
  .referral-cosmos {
    grid-column: auto;
  }
  .cosmos-caption {
    top: var(--lp-space-3);
    right: var(--lp-space-3);
  }
  .referral-network {
    width: 150%;
    min-height: 0;
    margin: var(--lp-space-8) -25% var(--lp-space-2);
  }
  .pricing-intro {
    margin-bottom: var(--lp-space-8);
    text-align: left;
  }
  .price-panel {
    padding: var(--lp-space-6);
  }
  .price strong {
    font-size: 3rem;
  }
  .faq {
    grid-template-columns: 1fr;
    gap: var(--lp-space-5);
    padding-block: var(--lp-space-10) var(--lp-section-space);
  }
  .questions summary {
    padding-block: var(--lp-space-5);
  }
  .questions details p {
    padding-bottom: var(--lp-space-5);
  }
  .closing {
    padding: var(--lp-space-16) var(--lp-space-6);
  }
  .footer {
    padding-top: var(--lp-space-8);
  }
  .footer nav {
    width: 100%;
  }
}

@media (max-width: 23.75rem) {
  .site-nav {
    flex-wrap: wrap;
  }
  .brand {
    font-size: 1.125rem;
    gap: var(--lp-space-1);
  }
  .brand svg {
    width: 1.375rem;
    height: 1.375rem;
  }
  .language-switch {
    min-width: 3.0625rem;
    gap: var(--lp-space-1);
  }
  .language-switch > svg {
    width: 1rem;
  }
  .button.small {
    width: 100%;
    padding-inline: var(--lp-space-2);
    font-size: 0.8125rem;
  }
  .campaign-tabs {
    grid-template-columns: 1fr;
  }
  .campaign-description {
    padding: var(--lp-space-3);
  }
  .nearby-pass {
    position: relative;
    inset: auto;
    display: block;
    margin: calc(-1 * var(--lp-space-20)) var(--lp-space-3) var(--lp-space-3);
  }
  .nearby-pass-icon {
    margin-bottom: var(--lp-space-2);
  }
  .referral-network {
    width: 100%;
    margin-inline: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  html:has(body.studio) {
    scroll-behavior: auto;
  }
  .landing-page :where(.button, .campaign-tabs button, .faq-icon) {
    transition: none;
  }
  .button:active {
    transform: none;
  }
  .motion-ready .network-node,
  .motion-ready .network-link,
  .is-playing .nearby-customer,
  .is-playing .nearby-pass {
    animation: none !important;
    transform: none;
  }
  .motion-ready .network-node {
    opacity: 1;
  }
  .motion-ready .network-link {
    opacity: 0.28;
  }
  .nearby-customer {
    transform: translate(309px, 255px) !important;
  }
  .nearby-pass {
    opacity: 1 !important;
  }
  .replay-growth,
  .replay-nearby {
    display: none;
  }
}
