/* Density pass for the international public experience.
   Loaded after keystone-landing-intl.css so layout-only refinements stay isolated. */
body.ksl .ks-nav {
  height: 68px;
}

body.ksl .ks-nav-links a {
  padding-block: 8px;
}

body.ksl .ks-theme,
body.ksl .ks-menu {
  width: 34px;
  height: 34px;
}

body.ksl .ks-button-small {
  min-height: 34px;
  padding: 7px 14px;
}

body.ksl .ks-main [id],
body.ksl :is(section,[id="how-it-works"],[id="html-templates"],[id="ready-websites"]) {
  scroll-margin-top: 84px;
}

/* Keep the end of the hero informative without leaving a large dead band
   before the proof/statistics row. */
body.ksl .ks-hero {
  padding-bottom: 28px;
}

body.ksl .ks-connections {
  margin-top: 34px;
}

body.ksl .ks-connection-items > span {
  gap: 10px;
}

body.ksl .ks-connection-items i {
  width: 42px;
  height: 42px;
}

/* Compact proof row: labels and values remain easy to scan, but the block no
   longer behaves like a full content section. */
body.ksl .ks-top-stats {
  padding: 16px 0 24px;
}

body.ksl .ks-top-stats .ks-stats {
  padding-block: 14px;
}

body.ksl .ks-top-stats .ks-stats strong {
  margin-top: 4px;
  font-size: clamp(30px, 3vw, 44px);
  line-height: 1.08;
}

body.ksl .ks-domain-strip {
  padding-block: 14px;
}

/* The landing used section-sized whitespace between relatively compact
   modules. Tighten those gaps while preserving the editorial rhythm. */
body.ksl .ks-section {
  padding-block: 84px;
}

body.ksl .ks-section-heading {
  margin-bottom: 48px;
}

body.ksl .ks-story {
  padding-block: 36px;
}

body.ksl .ks-second-shelf {
  margin-top: 70px;
}

body.ksl .ks-reviews {
  margin-top: 38px;
}

@media (max-width: 1180px) {
  body.ksl .ks-nav-links {
    max-height: calc(100dvh - 84px);
  }
}

@media (max-width: 900px) {
  body.ksl .ks-section {
    padding-block: 64px;
  }

  body.ksl .ks-story {
    padding-block: 30px;
  }
}

@media (max-width: 640px) {
  body.ksl .ks-nav {
    height: 64px;
  }

  body.ksl .ks-main [id],
  body.ksl :is(section,[id="how-it-works"],[id="html-templates"],[id="ready-websites"]) {
    scroll-margin-top: 76px;
  }

  body.ksl .ks-hero {
    padding-bottom: 20px;
  }

  body.ksl .ks-connections {
    margin-top: 28px;
  }

  body.ksl .ks-top-stats {
    padding: 12px 0 18px;
  }

  body.ksl .ks-top-stats .ks-stats {
    gap: 16px;
    padding-block: 12px;
  }

  body.ksl .ks-top-stats .ks-stats strong {
    font-size: 34px;
  }

  body.ksl .ks-domain-strip {
    padding-block: 12px;
  }

  body.ksl .ks-section {
    padding-block: 52px;
  }

  body.ksl .ks-section-heading {
    margin-bottom: 36px;
  }

  body.ksl .ks-story {
    padding-block: 26px;
  }

  body.ksl .ks-second-shelf {
    margin-top: 52px;
  }
}