/* Inner page hero shared by the inner pages (Understand Yourself, Resources).
   Set the photo with style="--hero-img:url(...)" on the section. */
.page-hero {
    position: relative;
    padding: 150px 0;
    background:
        linear-gradient(90deg, rgba(6, 24, 14, 0.85) 0%, rgba(8, 30, 17, 0.6) 50%, rgba(10, 36, 20, 0.35) 100%),
        var(--hero-img) center / cover no-repeat,
        #0c2416;
}

.page-hero-info {
    max-width: 640px;
}

.page-hero-title {
    margin: 0;
    color: #fff;
    font-family: var(--font-heading);
    font-size: 70px;
    font-weight: 400;
    line-height: 70px;
}

.page-hero-tagline {
    margin: 18px 0 0;
    color: rgba(255, 255, 255, 0.88);
    font-size: 20px;
    line-height: 28px;
}

.page-hero-crumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin: 16px 0 0;
    padding: 0;
    list-style: none;
    color: #fff;
    font-size: 16px;
    font-weight: 500;
}

.page-hero-crumbs a {
    color: #fff;
    text-decoration: none;
    transition: color 0.3s ease;
}

.page-hero-crumbs a:hover {
    color: var(--brand-lime);
}

.page-hero-crumbs .bi {
    font-size: 13px;
    -webkit-text-stroke: 0.6px;
}

/* Centred variant with a wavy white bottom edge (Resources). The wave's colour should match the next section. */
.page-hero-wave {
    padding-bottom: 190px;
}

/* Centred text: the wave variant, or .page-hero-center on its own for a plain centred hero (About Us). */
.page-hero-wave,
.page-hero-center {
    text-align: center;
}

.page-hero-wave .page-hero-info,
.page-hero-center .page-hero-info {
    margin: 0 auto;
}

.page-hero-wave .page-hero-crumbs,
.page-hero-center .page-hero-crumbs {
    justify-content: center;
}

.page-hero-wave::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 90px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'%3E%3Cpath d='M0 90V40C240 0 480 0 720 40S1200 80 1440 40V90Z' fill='%23fff'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
}

@media (max-width: 991.98px) {
    .page-hero {
        padding: 110px 0;
    }

    .page-hero-wave {
        padding-bottom: 150px;
    }

    .page-hero-wave::after {
        height: 60px;
    }

    .page-hero-title {
        font-size: 54px;
        line-height: 60px;
    }
}

@media (max-width: 575.98px) {
    .page-hero {
        padding: 80px 0;
    }

    .page-hero-wave {
        padding-bottom: 110px;
    }

    .page-hero-wave::after {
        height: 40px;
    }

    .page-hero-title {
        font-size: 40px;
        line-height: 46px;
    }

    .page-hero-tagline {
        font-size: 17px;
    }
}
