/* Split hero — Programme with Form template */
.apn-hero-split { position: relative; background-size: cover; background-position: center; padding: 80px 0 60px; min-height: 0; }
.apn-hero-split-overlay { position: absolute; inset: 0; background: rgba(0,0,0,0.55); }
.apn-hero-split-inner { display: flex; gap: 48px; align-items: center; position: relative; z-index: 2; }
.apn-hero-split-content { flex: 1; color: #fff; min-width: 0; }
.apn-hero-split-subheading { margin: 16px 0 28px; font-size: 18px; opacity: 0.9; }
.apn-hero-split .apn-hero-split-form { width: 650px; flex-shrink: 0; background: transparent; border-radius: 8px; }
.apn-hero-split .apn-hero-split-form iframe { border-radius: 8px; display: block; }
.apn-hero-split .apn-home-hero-ctas { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 24px; }
.apn-hero-split .apn-home-hero-ctas .apn-btn { padding: 10px 16px; font-size: 12px; letter-spacing: 0.05em; flex-shrink: 0; white-space: nowrap; }
@media (max-width: 1024px) {
  .apn-hero-split { padding: 48px 20px 40px; }
  .apn-hero-split-inner { flex-direction: column; gap: 32px; }
  .apn-hero-split .apn-hero-split-form { width: 100%; }
}
@media (max-width: 480px) {
  .apn-hero-split .apn-hero-split-form { margin: 0 16px; width: calc(100% - 32px); }
}

/* Hero heading legibility — applies to ALL split-hero pages (programme-with-form + APN/IOP Landing Page Form).
   Original Montserrat 300 (Light) washed out on bright background photos; bolden + soft shadow for contrast. */
.apn-hero-split .apn-hero-split-content h1 { color: #fff !important; font-weight: 600; letter-spacing: 0; text-shadow: 0 1px 6px rgba(0,0,0,0.45); }
.apn-hero-split .apn-hero-split-subheading { text-shadow: 0 1px 8px rgba(0,0,0,0.55); }

/* Intro CTA buttons (about-intro section) — even spacing on template pages */
.intro-btm .btn { display: flex; gap: 16px; flex-wrap: wrap; align-items: center; justify-content: center; }
.intro-btm .btn .button { margin: 0; }
