/* ******************************** */
/*           HOMEPAGE BANNER         */
/* ******************************** */
.homepage-hero-banner {
    position: relative;
    background-image: url('/Content?applicationId=84e4b6cf-abf9-48a4-923a-206ef1e905e5&fileName=hero-banner-background');
    background-position: center top;
    background-size: cover;
    overflow: hidden;
    background-color: var(--dark-01);
}

    .homepage-hero-banner::after {
        content: "";
        background-color: rgb(60, 206, 203, .33);
        width: 100%;
        height: .5rem;
        display: block;
        position: absolute;
        bottom: 0;
    }

    .homepage-hero-banner .wrapper {
        padding: 2rem .75rem;
        display: flex;
        align-content: center;
        flex-wrap: wrap;
        text-align: center;
        justify-content: center;
        flex-direction: column-reverse;
        height: 100%;
        gap: 2rem;
    }

    .homepage-hero-banner h1 {
        color: var(--base-01);
        font-size: var(--text-6xl);
        text-wrap: balance;
        line-height: 1.3;
    }

    .homepage-hero-banner p {
        display: block;
        color: var(--tertiary);
        margin-top: 1rem;
        line-height: 1.5;
        text-wrap: balance;
    }

    .homepage-hero-banner .hero-search-form {
        margin-top: 1rem;
        background-color: var(--base-01);
        display: flex;
        padding: .325rem .325rem .325rem .5rem;
        height: 2.975rem;
        border-radius: 3.0rem;
        align-items: center;
        margin-left: auto;
        margin-right: auto;
        width: fit-content;
    }

    .homepage-hero-banner .hero-search-input {
        border: none;
        width: 12.5rem;
        font-size: 16px;
        background-color: transparent;
    }

    .homepage-hero-banner .hero-search-select {
        display: unset;
        border: none;
        margin-right: .5rem;
        text-align-last: right;
    }

        .homepage-hero-banner .hero-search-select option {
            direction: rtl;
        }

    .homepage-hero-banner .hero-search-button {
        background-color: var(--dark-01);
        border: none;
        color: var(--dark-content);
        height: 2.5rem;
        width: 2.5rem;
        border-radius: 100%;
    }

        .homepage-hero-banner .hero-search-button:hover, .homepage-hero-banner .hero-search-button:focus {
            background-color: var(--dark-focus);
        }

    .homepage-hero-banner .suggested-search-container {
        display: flex;
        gap: .5rem;
        flex-wrap: wrap;
        justify-content: center;
    }

        .homepage-hero-banner .suggested-search-container p {
            width: 100%;
        }

        .homepage-hero-banner .suggested-search-container a {
            font-size: var(--text-sm);
            color: var(--primary-content);
            background-color: var(--primary);
            text-decoration: none;
            font-weight: bold;
            height: 1.5rem;
            display: flex;
            padding: 0 .5rem;
            border-radius: 1.5rem;
        }

            .homepage-hero-banner .suggested-search-container a:hover,
            .homepage-hero-banner .suggested-search-container a:focus {
                background-color: var(--primary-focus);
            }

.homepage-hero-image {
    background-image: url('/Content?applicationId=84e4b6cf-abf9-48a4-923a-206ef1e905e5&fileName=homepage-banner-1-mobile');
    background-size: contain;
    background-position: center;
    width: 100%;
    aspect-ratio: 1 / 1;
    max-width: 24rem;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
}
/* ***************************************** */
/*    HOMEPAGE ENGAGEMENT CONTENT   */
/* ***************************************** */
.engagement-container .wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
}

.engagement-container .engagement-block {
    display: flex;
    width: 100%;
    border-radius: 0.5rem;
    padding: .5rem 1rem;
    text-decoration: none;
    text-align: center;
    overflow: hidden;
    height: 5rem;
    justify-content: center;
    align-items: center;
    position: relative;
}

    .engagement-container .engagement-block h3 {
        z-index: 1;
    }

    .engagement-container .engagement-block i {
        position: absolute;
        height: 6.5rem;
        width: 6.5rem;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 100%;
        font-size: 2.5rem;
    }

.engagement-container .register-block {
    background-color: #87bfaf;
    color: var(--base-content)
}

    .engagement-container .register-block:hover, .engagement-container .register-block:focus {
        background-color: #5cac94;
    }

    .engagement-container .register-block i {
        color: #87bfaf;
        background-color: #77b1a4;
        left: 0;
        transition: var(--three);
    }

    .engagement-container .register-block:hover i, .engagement-container .register-block:focus i {
        color: #5cac94;
    }

.engagement-container .updates-block {
    background-color: var(--dark-01);
    color: var(--dark-content);
}

    .engagement-container .updates-block:hover, .engagement-container .updates-block:focus {
        background-color: var(--dark-focus);
    }

        .engagement-container .updates-block:hover i, .engagement-container .updates-block:focus i {
            color: var(--dark-focus);
        }

    .engagement-container .updates-block i {
        color: var(--dark-01);
        background-color: rgba(60,206,203,.1 );
        right: 1rem;
        font-size: 3rem;
        transition: var(--three);
    }

.engagement-container .partner-block {
    background-color: var(--secondary);
    color: var(--dark-content);
}

    .engagement-container .partner-block:hover, .engagement-container .partner-block:focus {
        background-color: var(--secondary-focus);
    }

    .engagement-container .partner-block i {
        color: var(--secondary);
        background-color: rgba(50,63,77,.4 );
        left: 0.5rem;
        font-size: 3rem;
    }


/* *************************************** */
/*     HOMEPAGE CONTENT CAROUSEL    */
/* *************************************** */
.course-history-carousel-container .carousel,
.watch-history-carousel-container .carousel {
    padding: .5rem .75rem;
    left: 1rem;
    overflow: hidden;
}

.course-history-carousel-container .carousel {
    background-color: rgb(0 176 173 / 11%);
    border: 1px solid rgb(0 176 173 / 30%);
}

.watch-history-carousel-container .carousel {
    background-color: rgb(36 40 104 / 11%);
    border: 1px solid rgb(36 40 104 / 30%);
}

.course-history-carousel-container .content-carousel .splide__track::after,
.watch-history-carousel-container .content-carousel .splide__track::after {
    display: none;
}

.horizontal-full.history-carousel {
    padding: 0;
}

.history-carousel .carousel {
    border-radius: 0;
    border-left: 0;
    border-right: 0;
}

/* ******************************** */
/*      HOMEPAGE FEATURED PERSON    */
/* ******************************** */
.horizontal-full.featured-person {
    padding-top: 0;
    padding-bottom: 0;
}

.featured-person .wrapper {
    background-size: cover;
    border-radius: .5rem;
    overflow: hidden;
    padding: 2.0rem 2.5rem;
    display: flex;
    align-content: center;
    flex-wrap: wrap;
    text-align: center;
    justify-content: center;
    background-image: url('/Content?applicationId=84e4b6cf-abf9-48a4-923a-206ef1e905e5&fileName=background-1920x1120.jpg');
    background-size: cover;
}

.featured-person .person-img-wrapper {
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.66);
    padding: 0.75rem;
    margin-left: auto;
    margin-right: auto;
    border-radius: 100%;
    margin-bottom: 1rem;
    max-width: 28rem;
    max-height: 28rem;
    position: relative;
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
}

.featured-person .person-img {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    top: 0;
    height: 100%;
    object-fit: cover;
    padding: .75rem;
    border-radius: 100%;
}

.featured-person h3 {
    color: var(--dark-content);
    font-size: var(--text-base);
    font-weight: 500;
    text-wrap: balance;
    text-transform: uppercase;
    letter-spacing: .5px;
    margin-bottom: .5rem;
}

.featured-person h2 {
    color: #F0C51F;
    font-size: var(--text-6xl);
    text-wrap: balance;
    line-height: 1.3;
}

.featured-person p {
    display: none;
}

.featured-person .forbes-prize-tag {
    background-color: var(--base-05);
    width: fit-content;
    border-radius: .25rem;
    color: var(--primary);
    padding: 0 .5rem;
    font-size: var(--text-sm);
    font-weight: 600;
}

.featured-person .btn {
    margin-top: 1.5rem;
    background-color: var(--dark-content);
    color: var(--dark-01);
    text-decoration: none;
    height: 3rem;
    display: flex;
    border-radius: .5rem;
    justify-content: center;
    align-items: center;
    font-size: var(--text-base);
    font-weight: 600;
    padding: 0 1.5rem;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}

    .featured-person .btn:hover {
        background-color: var(--base-05);
    }

/* ******************************** */
/*         HOMEPAGE SIGN UP         */
/* ******************************** */
.horizontal-full.sign-up,
.horizontal-full.login-message {
    padding-top: 0;
}

.horizontal-full.login-message {
    padding: 0;
}

.sign-up .wrapper {
    background-size: cover;
    border-radius: .5rem;
    overflow: hidden;
    padding: 2.0rem 2.5rem;
    display: flex;
    align-content: center;
    flex-wrap: wrap;
    text-align: center;
    justify-content: center;
    background-color: rgb(36 40 104 / 20%);
    background-size: cover;
    gap: 1rem;
}

.login-message .wrapper {
    border-radius: 0;
    background-color: var(--base-content);
    color: white;
    padding: .5rem 2.5rem;
}

.sign-up .sign-up-content,
.login-message .sign-up-content {
    flex: 1 0 100%;
}

.sign-up h2,
.login-message h2 {
    color: var(--primary-focus);
    font-size: var(--text-xl);
    line-height: 1.3;
    font-weight: 600;
}

.sign-up p {
    margin-top: 1rem;
    font-size: var(--text-sm);
}

.login-message p {
    margin-top: 0;
    text-align: center;
    font-size: var(--text-sm);
}

.login-message-button-row {
    display: flex;
    gap: 1rem;
}

.sign-up a {
    font-size: var(--text-sm);
    text-decoration: none;
    color: var(--primary-focus);
    font-weight: 600;
}

    .sign-up a i {
        margin-left: .25rem;
        position: relative;
        top: 1px;
    }

.login-message-button-row a:first-of-type {
    margin-top: 0;
    background-color: var(--base-01);
    height: 2.5rem;
    display: flex;
    border-radius: .5rem;
    justify-content: center;
    align-items: center;
    font-weight: 600;
    padding: 0 1rem;
    border: 1px solid var(--base-01);
    text-decoration: none;
    color: var(--primary);
}

    .login-message-button-row a:first-of-type:hover {
        background-color: var(--base-05);
    }

.login-message-button-row a:last-of-type {
    margin-top: 0;
    background-color: transparent;
    height: 2.5rem;
    display: flex;
    border-radius: .5rem;
    justify-content: center;
    align-items: center;
    font-weight: 600;
    padding: 0 1rem;
    border: 1px solid var(--base-01);
    text-decoration: none;
    color: var(--base-01);
}

    .login-message-button-row a:last-of-type:hover {
        background-color: var(--base-05);
    }

.login-message a i {
    margin-right: .5rem;
}

.sponsor-section {
    background-color: var(--base-05);
}

    .sponsor-section h2 {
        font-weight: 600;
        font-size: var(--text-lg);
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: .5rem;
        align-items: center;
    }

.sponsor-img {
    width: 10rem;
}

.article-Person .media-details-container p {
    display: none;
}

@media only screen and (min-width: 360px) {
    /* ******************************** */
    /*  360PX HOMEPAGE ROTATING BANNER  */
    /* ******************************** */

    /* ******************************** */
    /*  360PX HOMEPAGE CONTENT CAROUSEL */
    /* ******************************** */

    /* ******************************** */
    /*  360PX HOMEPAGE FEATURED PERSON  */
    /* ******************************** */

    /* ******************************** */
    /*      360PX HOMEPAGE SIGN UP      */
    /* ******************************** */
}

@media only screen and (min-width: 500px) {

    /* ******************************** */
    /*  500PX HOMEPAGE ROTATING BANNER  */
    /* ******************************** */
    .homepage-hero-banner .splide__slide {
        height: calc(100vh - 4rem - 1.5rem - 18rem);
    }

    /* ******************************** */
    /* 500PX HOMEPAGE CONTENT CAROUSEL  */
    /* ******************************** */
    /* ******************************** */
    /* 500PX HOMEPAGE FEATURED PERSON   */
    /* ******************************** */
    /* ******************************** */
    /*      500PX HOMEPAGE SIGN UP      */
    /* ******************************** */
    .sponsor-section h2 {
        gap: 1.5rem;
    }
}

@media only screen and (min-width: 640px) {
    /* ******************************** */
    /*  640PX HOMEPAGE ROTATING BANNER  */
    /* ******************************** */

    .homepage-hero-banner .wrapper {
        flex-direction: row;
        flex-wrap: wrap;
        padding: 2rem 1.25rem;
    }

        .homepage-hero-banner .wrapper .content {
            flex: 1 0;
            margin: auto 0;
        }

    .homepage-hero-banner p {
        font-size: var(--text-lg);
        text-wrap: unset;
    }

    .homepage-hero-banner h1 {
        font-size: var(--text-7xl);
    }

    .homepage-hero-banner .hero-search-form {
        margin-top: 1.5rem;
        max-width: 40rem;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .homepage-hero-banner .hero-search-input {
        width: unset;
        flex: 1;
    }

    .homepage-hero-banner .suggested-search-container {
        margin-top: 1.0rem;
        margin-bottom: .5rem;
    }
    /* ******************************** */
    /*    HOMEPAGE ENGAGEMENT CONTENT   */
    /* ******************************** */
    .engagement-container .engagement-block {
        width: unset;
        flex: 1
    }
    /* ******************************** */
    /* 640PX HOMEPAGE CONTENT CAROUSEL  */
    /* ******************************** */
    .course-history-carousel-container .carousel,
    .watch-history-carousel-container .carousel {
        padding: .75rem 1.25rem;
    }

    .horizontal-full.history-carousel {
        padding-bottom: 0;
    }

    /* ******************************** */
    /* 640PX HOMEPAGE FEATURED PERSON   */
    /* ******************************** */
    .featured-person .wrapper {
        align-items: center;
        justify-content: space-between;
    }

        .featured-person .wrapper > * {
            flex: 0 0 45%;
            margin: 0;
        }

    .featured-person .person-content {
        text-align: left;
    }

    .featured-person .btn {
        margin-left: 0;
        margin-right: 0;
    }

    /* ******************************** */
    /*      3640PX HOMEPAGE SIGN UP     */
    /* ******************************** */
}

@media only screen and (min-width: 768px) {

    /* ******************************** */
    /*  768PX HOMEPAGE ROTATING BANNER  */
    /* ******************************** */
    .homepage-hero-banner .splide__slide {
        height: fit-content;
        min-height: 34rem;
    }

    .homepage-hero-banner .suggested-search-container {
        align-items: center;
        margin-top: 2rem;
    }

        .homepage-hero-banner .suggested-search-container p {
            width: fit-content;
            margin-top: unset;
            margin-right: 1rem;
            font-weight: 400;
            font-size: var(--text-sm);
        }

        .homepage-hero-banner .suggested-search-container a {
            font-size: var(--text-sm);
        }

    /* ******************************** */
    /* 768PX HOMEPAGE CONTENT CAROUSEL  */
    /* ******************************** */
    /* ******************************** */
    /* 768PX HOMEPAGE FEATURED PERSON   */
    /* ******************************** */
    .featured-person p {
        display: block;
        color: var(--dark-content);
        line-height: 1.5;
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
    }

    /* ******************************** */
    /*      768PX HOMEPAGE SIGN UP      */
    /* ******************************** */
}

@media only screen and (min-width: 1024px) {

    /* ******************************** */
    /*  1024PX HOMEPAGE ROTATING BANNER */
    /* ******************************** */
    .homepage-hero-banner {
        padding: 0;
    }

    .homepage-hero-banner {
        margin-bottom: 0;
    }

        .homepage-hero-banner .wrapper {
            padding: 2rem 2.5rem;
        }

    .homepage-hero-image {
        background-image: url(/Content?applicationId=84e4b6cf-abf9-48a4-923a-206ef1e905e5&fileName=homepage-banner-1-desktop);
        flex: 0 0 448px;
        min-width: 448px;
        margin: -1.0rem 0 -.5rem 0;
        aspect-ratio: unset;
        height: 249px;
    }

    /* ******************************** */
    /* 1024PX HOMEPAGE CONTENT CAROUSEL */
    /* ******************************** */
    /* ******************************** */
    /* 1024PX HOMEPAGEFEATURED PERSON   */
    /* ******************************** */
    .featured-person .wrapper {
        gap: 4rem;
    }

    .featured-person .person-img-wrapper {
        flex: 0 0 24rem;
    }

    .featured-person .person-content {
        flex: 1 0;
    }

    /* ******************************** */
    /*     1024PX HOMEPAGE SIGN UP      */
    /* ******************************** */
}

@media only screen and (min-width: 1280px) {

    /* ******************************** */
    /*  1280PX HOMEPAGE ROTATING BANNER */
    /* ******************************** */
    .homepage-hero-banner {
        height: 329px;
    }

        .homepage-hero-banner h1 {
            font-size: 3rem;
        }

        .homepage-hero-banner p {
            font-size: var(--text-xl);
        }

    .homepage-hero-image {
        background-image: url(/Content?applicationId=84e4b6cf-abf9-48a4-923a-206ef1e905e5&fileName=homepage-banner-1-desktop);
        flex: 0 0 576px;
        min-width: 576px;
        height: 321px;
    }

    /* ******************************** */
    /*    HOMEPAGE ENGAGEMENT CONTENT   */
    /* ******************************** */
    .engagement-container .wrapper {
        gap: 1.5rem;
    }

    .engagement-container .engagement-block {
        height: 7rem;
    }

        .engagement-container .engagement-block h3 {
            font-size: var(--text-2xl);
        }

        .engagement-container .engagement-block i {
            height: 9rem;
            width: 9rem;
            font-size: 5rem;
        }
    /* ******************************** */
    /* 1280PX HOMEPAGE CONTENT CAROUSEL */
    /* ******************************** */

    /* ******************************** */
    /* 1280PX HOMEPAGEFEATURED PERSON   */
    /* ******************************** */

    /* ******************************** */
    /*     1280PX HOMEPAGE SIGN UP      */
    /* ******************************** */
    .sign-up .wrapper {
        align-items: center;
        padding: 1.0rem 1.5rem 1.0rem 2.5rem;
    }

    .sign-up .sign-up-content,
    .login-message .sign-up-content {
        flex: 1 0;
        text-align: left;
    }

    .sign-up p {
        margin-top: .5rem;
    }

    .login-message a {
        color: white;
        font-weight: 600;
    }

    .sign-up a {
        margin-top: 0;
        background-color: var(--base-01);
        height: 2.5rem;
        display: flex;
        border-radius: .5rem;
        justify-content: center;
        align-items: center;
        font-weight: 600;
        padding: 0 1rem;
        border: 1px solid var(--base-01);
    }

        .sign-up a i {
            margin-left: .5rem;
        }

        .sign-up a:hover {
            background-color: var(--base-05);
        }

    .sponsor-section h2 {
        font-size: var(--text-xl);
    }
}

@media only screen and (min-width: 1536px) {

    /* ******************************** */
    /*  1536PX HOMEPAGE ROTATING BANNER */
    /* ******************************** */
    .homepage-hero-banner {
        height: 22rem;
    }

        .homepage-hero-banner .wrapper {
            padding: 0;
            max-width: 90rem;
            width: 100%;
            margin-left: auto;
            margin-right: auto;
        }

        .homepage-hero-banner h1 {
            font-size: 3.5rem;
        }

        .homepage-hero-banner p {
            font-size: var(--text-2xl);
        }

    /* ******************************** */
    /* 1536PX HOMEPAGE CONTENT CAROUSEL */
    /* ******************************** */
    /* ******************************** */
    /* 1536PX HOMEPAGEFEATURED PERSON   */
    /* ******************************** */
    .featured-person h2 {
        font-size: var(--text-7xl);
    }

    .featured-person h3 {
        font-size: var(--text-lg);
    }

    .featured-person p {
        font-size: var(--text-lg);
    }

    /* ******************************** */
    /*     1536PX HOMEPAGE SIGN UP      */
    /* ******************************** */
}
