/* Division hub page layout — canonical spacing, FAQ, connect form reserve */

.page-content--hub-standard-order {
  --hub-main-gap: 38px;
  --hub-map-stack-gap: 26px;
}

@media (min-width: 768px) {
  .page-content--hub-standard-order {
    --hub-main-gap: 51px;
  }
}

/* One rhythm: flex gap between direct main blocks (no margin collapse) */
.page-content--hub-standard-order > .container {
  display: flex;
  flex-direction: column;
  gap: var(--hub-main-gap);
}

.page-content--hub-standard-order > .container > * {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  max-width: 100%;
}

/* Hub-only inserts (e.g. JUCO directory filters) participate in the same gap */
.page-content--hub-standard-order .recruit-hub-interlude {
  margin: 0;
  padding: 0;
}

/* School map sits inside recruit-map-section on hub standard order */
body.recruit-premium-body .page-content--hub-standard-order .recruit-map-section .recruit-leaflet-section {
  margin-top: 0 !important;
  padding-top: var(--hub-map-stack-gap) !important;
}

body.recruit-premium-body .page-content--hub-standard-order .division-hub-quick-answer {
  opacity: 1;
  transform: none;
  margin: 0 !important;
}

/* Neutralize global `section { padding: 2rem 0 }` on hub blocks */
body.recruit-premium-body .page-content--hub-standard-order > .container > section,
body.recruit-premium-body .page-content--hub-standard-order section.recruit-leaflet-section,
body.recruit-premium-body .page-content--hub-standard-order section.recruit-division-related-guides,
body.recruit-premium-body .page-content--hub-standard-order section.recruit-faq-block {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Main H2s: spacing comes from flex gap, not recruit-section-title top margin */
.page-content--hub-standard-order .recruit-section-title,
.page-content--hub-standard-order .division-hub-quick-answer > h2,
.page-content--hub-standard-order .recruit-map-section > h2,
.page-content--hub-standard-order .recruit-bottom-cta > h2 {
  margin-top: 0 !important;
}

.page-content--hub-standard-order .recruit-map-section {
  margin: 0 !important;
}

.page-content--hub-standard-order .recruit-division-guide-sections {
  margin: 0 !important;
}

.page-content--hub-standard-order .division-fcp-commits--compact.division-fcp-commits--hub-r3 {
  margin: 0 !important;
}

body.recruit-premium-body .page-content--hub-standard-order .recruit-bottom-cta {
  margin: 0 !important;
}

/* FAQ → related guides spacing (hub standard order) */
body.recruit-premium-body .page-content--hub-standard-order .recruit-faq-block {
  margin: 0 !important;
  padding: 0 !important;
}

body.recruit-premium-body .page-content--hub-standard-order .recruit-faq-block > .recruit-section-title {
  margin-top: 0;
}

.page-content--hub-standard-order .program-faq details:not([open]) .faq-answer {
  display: none !important;
  max-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
}

.page-content--hub-standard-order .program-faq details:last-child {
  padding-bottom: 0;
  border-bottom: none;
}

.page-content--hub-standard-order .recruit-division-related-guides {
  margin-top: 0;
}

.page-content--hub-standard-order .recruit-division-related-guides > .recruit-section-title {
  margin-top: 0;
  margin-bottom: 0.75rem;
}

body.recruit-premium-body .connect-form-wrapper {
  min-height: 120px;
  background: #f8fafc;
}

body.recruit-premium-body .connect-form-wrapper iframe {
  min-height: 320px;
  height: min(75vh, 720px);
}

@media (max-width: 480px) {
  body.recruit-premium-body .connect-form-wrapper {
    min-height: 80px;
  }

  body.recruit-premium-body .connect-form-wrapper iframe {
    min-height: 380px;
    height: 380px;
  }
}
