/* NetSpektor public-site baseline override */

/* Keep internal pages clean after removing repeated dashboard */
.hero-internal {
  min-height: auto !important;
  padding-top: 72px !important;
  padding-bottom: 56px !important;
}

.hero-internal .hero-inner {
  display: block !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding-top: 72px !important;
  padding-bottom: 40px !important;
}

.hero-internal .hero-copy {
  max-width: 980px !important;
}

.hero-internal .hero-copy h1 {
  max-width: 980px !important;
}

.hero-internal .hero-dashboard {
  display: none !important;
}

.hero-internal + .page-content {
  padding-top: 56px !important;
}

/* Fix content alignment on internal pages */
.page-content .container,
.prose.prose-wide {
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.prose {
  max-width: 980px !important;
}

/* Footer alignment */
.site-footer .footer-grid {
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Mobile spacing cleanup */
@media (max-width: 720px) {
  .hero-internal {
    padding-top: 48px !important;
    padding-bottom: 36px !important;
  }

  .hero-internal .hero-inner {
    padding-top: 48px !important;
  }

  .hero-internal + .page-content {
    padding-top: 36px !important;
  }
}

/* =========================================================
   HOMEPAGE ALIGNMENT FINAL
   Scope: homepage only. Internal pages remain untouched.
   ========================================================= */

.home-page .hero-home:not(.hero-internal) {
  min-height: auto !important;
  padding-top: 96px !important;
  padding-bottom: 110px !important;
}

.home-page .hero-home:not(.hero-internal) .hero-inner {
  display: grid !important;
  grid-template-columns: 560px 620px !important;
  gap: 72px !important;
  align-items: center !important;
  justify-content: center !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-top: 48px !important;
  padding-bottom: 48px !important;
}

.home-page .hero-home:not(.hero-internal) .hero-copy {
  max-width: 560px !important;
  padding-top: 0 !important;
}

.home-page .hero-home:not(.hero-internal) .hero-copy h1 {
  max-width: 9ch !important;
}

.home-page .hero-home:not(.hero-internal) .hero-dashboard {
  max-width: 620px !important;
  width: 100% !important;
  margin: 0 !important;
}

/* Align all homepage lower sections with the hero */
.home-page .content-wide,
.home-page .two-col,
.home-page .final-cta-inner,
.home-page .section-deep > .container {
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.home-page .section-deep {
  padding-top: 96px !important;
  padding-bottom: 96px !important;
}

.home-page .section-deep h2,
.home-page .section-deep .eyebrow,
.home-page .section-deep p {
  max-width: 760px;
}

/* Stop the lower homepage sections from looking like a narrow left-indent column */
.home-page .content-wide,
.home-page .two-col {
  display: grid !important;
  grid-template-columns: minmax(360px, 560px) minmax(420px, 620px) !important;
  gap: 72px !important;
  align-items: start !important;
  justify-content: center !important;
}

/* Mobile homepage stays single-column */
@media (max-width: 980px) {
  .home-page .hero-home:not(.hero-internal) .hero-inner,
  .home-page .content-wide,
  .home-page .two-col {
    grid-template-columns: 1fr !important;
    max-width: 760px !important;
    gap: 42px !important;
  }

  .home-page .hero-home:not(.hero-internal) {
    padding-top: 72px !important;
    padding-bottom: 72px !important;
  }

  .home-page .section-deep {
    padding-top: 64px !important;
    padding-bottom: 64px !important;
  }
}
