/* Public page refinements */

/* Pricing has its own dedicated route, so keep it off the main sales page. */
.ax-home .ax-pricing-tease {
  display: none !important;
}

/* Remove decorative grid backgrounds from public-facing pages. */
.ax-home .ax-hero::before,
div[class*="min-h-screen"] > div[aria-hidden="true"][style*="linear-gradient"] {
  display: none !important;
  background-image: none !important;
}

/* Keep the main landing-page heading and supporting paragraph aligned from the top. */
.ax-home .ax-section-heading {
  align-items: start !important;
}

.ax-home .ax-section-heading > p {
  margin-top: 0.55rem !important;
}

/* Clean up the small pale square count badges in the homepage product preview. */
.ax-home .ax-pipeline__heading span {
  min-width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 7px;
  border-radius: 999px;
  background: #e7f2ed;
  color: #16725e;
  font-weight: 700;
}

.ax-home .ax-preview__actions span {
  border-radius: 4px;
  background: #f4f6f2;
}

html,
body,
#root {
  max-width: 100%;
  overflow-x: hidden;
}

#axion-main {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

.axion-route-surface,
.axion-route-settings,
.axion-route-settings > main,
.axion-route-settings > main > div {
  box-sizing: border-box;
  min-width: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
}

.axion-route-settings {
  overflow-x: hidden !important;
}

/* The migration route surface itself is spanning the viewport beneath the
   desktop sidebar. Offset the wrapper, not the inner page. */
@media (min-width: 768px) {
  .axion-route-settings {
    padding-left: 260px !important;
  }

  .axion-route-settings > main {
    margin-left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Lift only the sign-in page's left-hand sales panel on desktop. */
@media (min-width: 1024px) {
  main[class*="lg:grid-cols-[0.95fr_0.78fr]"] > section:first-child {
    transform: translateY(-5rem);
  }
}

/* Homepage hero polish: keep the message at the top and let the product support it,
   rather than letting the preview dictate the full height of the opening screen. */
@media (min-width: 981px) {
  .ax-ja-hero {
    padding: 24px 0 24px !important;
  }

  .ax-ja-hero > .ax-ja-shell {
    grid-template-columns: minmax(360px,.86fr) minmax(560px,1.14fr) !important;
    align-items: start !important;
    gap: 42px !important;
  }

  .ax-ja-hero__intro {
    align-self: start !important;
    max-width: 465px !important;
    padding-top: 7px !important;
  }

  .ax-ja-hero h1 {
    max-width: 450px !important;
    font-size: clamp(40px, 3.3vw, 50px) !important;
    line-height: 1.02 !important;
  }

  .ax-ja-hero__lead {
    max-width: 360px !important;
    margin-top: 13px !important;
    line-height: 1.62 !important;
  }

  .ax-ja-actions {
    margin-top: 17px !important;
  }

  .ax-ja-hero__scope {
    display:flex;
    flex-wrap:wrap;
    gap:0;
    max-width:390px;
    margin-top:26px;
    padding-top:15px;
    border-top:1px solid rgba(255,255,255,.12);
  }

  .ax-ja-hero__scope span {
    position:relative;
    padding-right:14px;
    margin-right:13px;
    color:#879991;
    font-size:9px;
    font-weight:600;
  }

  .ax-ja-hero__scope span:not(:last-child)::after {
    content:'·';
    position:absolute;
    right:0;
    color:#526962;
  }

  .ax-ja-hero__product {
    width: 96% !important;
    height: 408px !important;
    justify-self: end !important;
  }

  .ax-ja-hero__proof span {
    min-height: 46px !important;
  }
}

@media (min-width: 981px) and (max-width: 1120px) {
  .ax-ja-hero > .ax-ja-shell {
    grid-template-columns:minmax(330px,.84fr) minmax(520px,1.16fr) !important;
    gap: 30px !important;
  }

  .ax-ja-hero__product {
    width: 100% !important;
    height: 396px !important;
  }
}

@media (max-width: 980px) {
  .ax-ja-hero__scope {
    display:none;
  }
}
