/* ==========================================================================
   Home page only (pushed from pages/home.blade.php): section rhythm, heading
   consistency and the small blocks that have no stylesheet of their own.
   ========================================================================== */
.home-page {
    --home-section-y: clamp(56px, 7vw, 104px);
    --home-h2: clamp(1.9rem, 1.2rem + 2vw, 2.75rem);
}

/* --- Rhythm: every top-level section gets the same vertical padding ---- */
.home-page .modern-about-section,
.home-page .modern-course-section,
.home-page .modern-stats-section,
.home-page .reviews-section,
.home-page .modern-gallery-section,
.home-page .home-hired,
.home-page .modern-requirements-section,
.home-page .home-locations,
.home-page .modern-faq-section,
.home-page .modern-contact-section {
    padding-top: var(--home-section-y);
    padding-bottom: var(--home-section-y);
}

/* The service cards sit directly under the About block, which already provides the space above them. */
.home-page .service-section {
    padding-top: 0;
    padding-bottom: clamp(40px, 5vw, 72px);
}

.home-page .home-wings {
    padding-top: 0;
    padding-bottom: var(--home-section-y);
}

/* --- Headings: one scale and face for every section h2 ------------------ */
.home-page .stats-heading,
.home-page .faq-title,
.home-page .home-hired__title,
.home-page .home-locations h2 {
    font-family: "DM Serif Display", serif;
    font-size: var(--home-h2);
    font-weight: 400;
    line-height: 1.15;
    letter-spacing: -0.5px;
    color: #09212b;
}

.home-page .about-heading {
    font-size: clamp(2rem, 1.3rem + 2.2vw, 3rem);
}

.home-page .stats-heading {
    margin-bottom: 14px;
}

.home-page .section__head {
    max-width: 820px;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: clamp(28px, 4vw, 48px);
}

.home-page .section__head h2 {
    margin-bottom: 0;
}

/* --- Eyebrow (small uppercase accent label above a heading) -------------- */
.home-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 14px;
    padding: 6px 14px;
    border: 1px solid rgba(51, 189, 255, 0.25);
    border-radius: 999px;
    background: rgba(51, 189, 255, 0.08);
    color: #007fb8;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 1.5px;
    line-height: 1.3;
    text-transform: uppercase;
}

.home-eyebrow i {
    color: #33BDFF;
    font-size: 1rem;
}

/* --- Graduates hired: heading + airline logo strip on a soft band -------- */
.home-hired {
    background: #f6f9fc;
    border-top: 1px solid rgba(9, 33, 43, 0.05);
    border-bottom: 1px solid rgba(9, 33, 43, 0.05);
}

.home-page .home-hired {
    padding-top: clamp(44px, 5vw, 72px);
    padding-bottom: clamp(44px, 5vw, 72px);
}

.home-hired__title {
    margin-bottom: 0;
}

/* Every logo sits in the same box (logos are pre-trimmed), so wide and tall marks read at equal weight. */
.home-hired .client-slider__item img {
    display: block;
    width: 100%;
    max-width: 150px;
    height: 56px;
    margin-inline: auto;
    object-fit: contain;
}

@media (max-width: 991.98px) {
    .home-hired__title {
        text-align: center;
    }
}

/* --- Training locations map ---------------------------------------------- */
.home-locations {
    background: #fff;
}

.home-locations__map {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
}

/* Keep wide decorative children from causing sideways scroll on phones. */
.home-page {
    overflow-x: clip;
}
