/**
 * Mobile layout — all satellite domains (html.sat-site).
 * Loaded after satellite-theme.css on every tenant page.
 */
@media (max-width: 767px) {
  html.sat-site {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    overflow-x: clip;
  }

  html.sat-site body {
    overflow-x: clip;
    min-height: 100dvh;
    min-height: 100svh;
    padding-bottom: calc(4.5rem + env(safe-area-inset-bottom, 0px));
    touch-action: manipulation;
  }

  html.sat-site body.sat-menu-open {
    overflow: hidden;
    touch-action: none;
  }

  html.sat-site .sat-shell {
    min-width: 0;
  }

  html.sat-site .sat-topbar__inner {
    font-size: 0.72rem;
    padding: 0.4rem 0.65rem;
    gap: 0.35rem;
  }

  html.sat-site .sat-topbar__inner > span:not(.sat-topbar__badge) {
    max-width: 100%;
    line-height: 1.35;
  }

  html.sat-site .sat-header__inner,
  html.sat-site .sat-header__inner--wide {
    padding: 0.65rem 0.85rem;
    gap: 0.5rem;
    min-width: 0;
  }

  html.sat-site .sat-logo {
    font-size: 0.95rem;
    min-width: 0;
    flex: 1 1 auto;
  }

  html.sat-site .sat-logo span:last-child {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  html.sat-site .sat-header__actions .sat-btn--ghost,
  html.sat-site .sat-header__actions .js-sat-connect {
    display: none;
  }

  html.sat-site .sat-header--v2 .sat-nav {
    display: none;
  }

  html.sat-site .sat-header--v2 .sat-burger {
    display: flex;
  }

  html.sat-site .sat-hero,
  html.sat-site .sat-section {
    padding-left: 0.85rem;
    padding-right: 0.85rem;
  }

  html.sat-site .sat-hero h1 {
    font-size: clamp(1.55rem, 7vw, 2.15rem);
    word-wrap: break-word;
  }

  html.sat-site .sat-hero__lead {
    font-size: 0.95rem;
    max-width: 100%;
  }

  html.sat-site .sat-hero--split .sat-hero__inner,
  html.sat-site .sat-hero--cloud .sat-hero__inner {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  html.sat-site .sat-hero__copy {
    text-align: center;
  }

  html.sat-site .sat-hero__lead {
    margin-left: auto;
    margin-right: auto;
  }

  html.sat-site .sat-cta-row {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    max-width: 22rem;
    margin-left: auto;
    margin-right: auto;
  }

  html.sat-site .sat-cta-row .sat-btn {
    width: 100%;
    justify-content: center;
    min-height: 2.75rem;
  }

  html.sat-site #pricing .pricing-grid,
  html.sat-site .pricing-section__grid {
    grid-template-columns: 1fr !important;
    max-width: 24rem;
    margin-left: auto;
    margin-right: auto;
  }

  html.sat-site #pricing .pricing-card {
    min-height: 0;
    width: 100%;
  }

  html.sat-site .sat-seo-lf__grid {
    grid-template-columns: 1fr;
  }

  html.sat-site .sat-seo-lf__card {
    padding: 1rem 1.05rem;
  }

  html.sat-site .sat-seo-lf__card h3 {
    font-size: 1rem;
    overflow-wrap: anywhere;
  }

  html.sat-site .sat-footer {
    padding-bottom: calc(5rem + env(safe-area-inset-bottom, 0px));
  }

  html.sat-site .sat-mobile-bar {
    display: flex;
  }

  html.sat-site .sat-burger,
  html.sat-site .sat-mobile-bar .sat-btn {
    min-height: 2.75rem;
    min-width: 2.75rem;
  }

  html.sat-site .sat-dl-grid,
  html.sat-site .sat-grid--cloud,
  html.sat-site .sat-statbar--cloud {
    grid-template-columns: 1fr;
  }

  html.sat-site .sat-statbar--cloud {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html.sat-site img,
  html.sat-site svg,
  html.sat-site video {
    max-width: 100%;
    height: auto;
  }

  html.sat-site .sat-page-bg {
    overflow: hidden;
  }
}

@media (max-width: 380px) {
  html.sat-site .sat-topbar__buy {
    display: none;
  }
}
