@import url('https://fonts.googleapis.com/css2?family=Barlow:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Hurricane&family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Tinos:ital,wght@0,400;0,700;1,400;1,700&display=swap');

body {
    --tertiary-color: #212758;
}

#cms-gallery #g2 {
    --image-height: 50vw !important;
}


footer {
    border-top: 3px solid var(--secondary-color, #FDB718);
    padding-top: 20px;
}

#custom-programs-v4 .header-slot-container {
    color: var(--tertiary-color, var(--primary-color, #212758));
}

body {
    --primary-font: "Inter", sans-serif;
    --secondary-font: "Barlow", sans-serif;
    --cursive-font: "Hurricane", sans-serif;
    --cursive-font-2: "Playfair Display", serif;
    --font-family: var(--primary-font) !important;
    container-type: inline-size;
    color: var(--primary-dark);
}

/* General font */
#app,
#view-theme,
body,
html,
#cms-header .m4--menu-item,
.m4--menu-item-focusable .m4--menu-item-link,
.m4--menu-item-text,
.m4--menu-item-focusable,
#app #cms-header .school-info h1 {
    font-family: var(--primary-font) !important;
    --cms-theme-font-family: var(--primary-font) !important;
}

#app h1,
#app .see-all-container h2 {
    font-family: var(--secondary-font) !important;
}

#app #home {
    &:after {
        content: '';
        display: block;
        position: absolute;
        background-image: var(--watermark-url);
        background-position: center;
        background-size: auto 85vh;
        background-repeat: no-repeat;
        background-attachment: fixed;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        opacity: .05;
    }

    #cms-gallery {
        z-index: 1;
    }
}

#floating-nav {
    .button-wrapper {
        .button {
            text-transform: uppercase;
            font-family: var(--secondary-font);

            .button-title {
                font-weight: 900;
                letter-spacing: 1px;
            }
        }
    }
}

/* ------------------------------------------ */
/* --------- HEADER CHANGES - START --------- */
/* ------------------------------------------ */
@media (min-width: 1280px) {
    #cms-header {
        --logo-height: 115px;

        .header-bar-wrapper {
            background-color: transparent;

            #h2 {
                background-color: transparent;
                box-shadow: none;

                .header-container {
                    padding-top: 20px;
                    padding-bottom: 20px;
                    background-color: transparent;

                    &:before {
                        display: none;
                    }

                    .left {

                        margin-left: 40px;

                        .logo {
                            height: var(--logo-height);
                        }

                        .name {
                            padding-top: unset;
                        }

                        .org-name {
                            font-size: 24px;
                            text-transform: uppercase;
                            font-weight: 700;
                            line-height: 1.25;
                        }

                        .slogan {
                            font-size: 31px;
                            text-transform: uppercase;
                            font-weight: 900;
                        }
                    }

                    .right {
                        .utilities {
                            background-color: transparent;
                            margin-top: unset;


                            .sloped-edge {
                                display: none;
                            }

                            .utility-bar {
                                background-color: transparent !important;
                                padding-bottom: 0;
                                column-gap: 1em;
                            }

                            #searchbutton {
                                margin-top: 0;
                                margin-bottom: 0;
                            }

                            .utilities {
                                font-weight: 800;
                                font-family: var(--secondary-font);

                                &:not(:last-child) {
                                    &:after {
                                        content: '|';
                                        padding-left: 1em;
                                    }
                                }
                            }
                        }
                    }
                }

                .right-menu-items {
                    padding-top: 8px;
                    padding-bottom: 8px;
                }
            }
        }
    }
}


/* Header goes above the gallery */
@media (min-width: 1280px) {
    #cms-header {
        position: absolute;
        width: 100%;
        top: 0;
        left: 0;

        #h2 {
            position: relative;

            &:after {
                content: '';
                display: block;
                position: absolute;
                width: 100%;
                height: 140%;
                top: 0;
                left: 0;
                background: linear-gradient(180deg, var(--bg-color) 0%, rgba(255, 255, 255, 0) 100%);
                z-index: -1;
            }
        }
    }
}

/* ------------------------------------------ */
/* ---------- HEADER CHANGES - END ---------- */
/* ------------------------------------------ */




/* ------------------------------------------ */
/* --------- HEADER CHANGES - START --------- */
/* ------------------------------------------ */
@media (min-width: 960px) {
    #cms-gallery {
        #g2 {
            position: relative;

            .slide {

                .text {
                    width: 90%;
                    left: 0;
                    right: 0;
                    margin-left: auto;
                    margin-right: auto;
                    background: transparent !important;
                    text-align: center;
                    bottom: 50px;
                    z-index: 2;
                    transform: unset;

                    .title {
                        margin-left: unset;
                        margin-right: unset;
                        z-index: 3;

                        h1 {
                            font-family: var(--cursive-font-2) !important;
                            font-size: 6em;
                            font-style: italic;
                            font-weight: 700;
                            line-height: 1em;

                            @media (max-width: 1499px) {
                                font-size: 5.15em;
                            }

                            @media (max-width: 1199px) {
                                font-size: 4.65em;
                            }

                            em {
                                font-family: var(--cursive-font) !important;
                                font-weight: 400;
                                font-size: 1.875em;
                                padding-right: .15em;
                                margin-left: -.175em;
                            }
                        }
                    }

                    .description {
                        text-align: center;
                        margin-left: 0;
                        margin-right: 0;
                        display: inline-block;
                        width: auto;
                        font-size: 23px;
                        line-height: 1.1em;
                        margin-top: -5px;

                        @media (max-width: 1499px) {
                            font-size: 20px;
                        }

                        @media (max-width: 1199px) {
                            font-size: 18px;
                        }

                        div {
                            background: var(--button-bg-color);
                            display: inline-block;
                            padding: .5em 1.25em;
                            border-radius: 2em;
                        }
                    }
                }

                .button-action {
                    z-index: 3;
                }

                &:after {
                    content: '';
                    position: absolute;
                    bottom: 0;
                    left: 0;
                    width: 100%;
                    height: 300px;
                    background: linear-gradient(0deg, #000 0%, rgba(255, 255, 255, 0) 100%);
                    z-index: 1;
                }
            }
        }
    }
}

@media (max-width: 959px) {
    #cms-gallery {
        #g2 {
            .slide {
                .text {
                    h1 {
                        font-family: var(--cursive-font-2) !important;
                        font-weight: 700;
                        line-height: 1em;
                        font-style: italic;

                        em {
                            font-family: var(--cursive-font) !important;
                            font-weight: 400;
                            font-size: 1.875em;
                            padding-right: .35em;
                        }
                    }
                }
            }
        }
    }
}

#home #floating-nav {
    margin-top: calc(50vh - 90px);
}

/* ------------------------------------------ */
/* ---------- HEADER CHANGES - END ---------- */
/* ------------------------------------------ */


/* ------------------------------------------ */
/* --------- CUSTOM ABOUT V4 - START -------- */
/* ------------------------------------------ */

#home .custom-about-us-v4.custom-about-us-v4a {
    padding-top: 60px;
    padding-bottom: 60px;
}

.custom-about-us-v4 {
    box-sizing: border-box;
    background: var(--section-bg-color, transparent);
    position: relative;
    isolation: isolate;
    width: 100%;

    @media screen and (min-width: 960px) {
        &:has(.custom-about-us-item-image img[src^="http"]) .custom-about-us-content {
            max-width: 50%;
            padding-right: 5vw;
            padding-left: 30px;
        }
    }

    *,
    *::before,
    *::after {
        box-sizing: inherit;
    }

    /* CMS labels hidden */
    .label.only-in-cms {
        display: none;
    }

    .custom-about-us-container {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 25px;

        @media screen and (min-width: 960px) {
            flex-direction: row;
            gap: 0;
        }
    }

    .custom-about-us-content {
        flex: 1;
        justify-content: center;

        @media screen and (min-width: 960px) {
            padding-top: 15px;
            display: flex;
            flex-direction: column;
        }

        @media screen and (min-width: 1280px) {
            padding-top: 25px;
        }
    }

    &.style-texas h2 {
        font-family: var(--heading-font-family) !important;
    }

    .see-all-container.see-all-top {
        order: -2;

        @media screen and (min-width: 960px) {
            order: 0;
        }
    }

    .header-slot-container {
        color: var(--primary-color);

        .header-top {
            font-size: 60px;
            line-height: 1;
            font-family: var(--cursive-font) !important;

            @media (max-width: 1499px) {
                font-size: 50px;
            }
        }

        .header-middle {
            color: #fff;
            font-size: 96px;
            font-family: "Tinos", serif;
            font-weight: 900;
            -webkit-text-stroke: 2px var(--tertiary-color, var(--primary-color));
            line-height: 1;

            @media (max-width: 1699px) {
                font-size: 60px;
            }

            @media (max-width: 1499px) {
                font-size: 50px;
            }
        }

        .header-bottom {
            font-weight: 900;
            color: var(--tertiary-color, var(--primary-color));
            font-size: 48px;
            text-transform: uppercase;

            @media (max-width: 1699px) {
                font-size: 36px;
            }

            @media (max-width: 1499px) {
                font-size: 28px;
            }
        }
    }

    .custom-about-us-text-wrapper {
        margin-top: 2em;
    }

    .about-us-description {
        font-size: 21px;
        line-height: 1.6;
        letter-spacing: 0.015em;


        @media (max-width: 1699px) {
            font-size: 20px;
        }

        @media (max-width: 1499px) {
            font-size: 16px;
        }
    }

    .read-more-button .custom-about-us-item-link a {
        background-color: var(--secondary-color);
        color: var(--secondary-color-contrast);
        text-decoration: none;
        padding: 12px 20px;
        display: inline-block;
        border-radius: 8px;
        min-width: 325px;
        max-width: 100%;
        text-align: center;
        text-transform: uppercase;
        font-weight: 500;
        letter-spacing: 0.0625em;
        transition:
            background-color 0.35s ease,
            color 0.35s ease;

        &:hover {
            background-color: var(--primary-color);
            color: var(--primary-color-contrast);
        }

        @media screen and (min-width: 1280px) {
            padding-block: 20px;
        }
    }

    .about-us-image {
        flex: 1;
        text-align: center;
        order: -1;

        @media screen and (min-width: 960px) {
            max-width: 50%;
            order: 2;
        }

        &:not(:has(img[src^="http"])) {
            display: none;
        }

        .custom-about-us-item-image {
            position: relative;
            padding: 15px;
            display: inline-block;
            isolation: isolate;
            filter: drop-shadow(0 20px 29px rgba(0, 0, 0, 0.15)) drop-shadow(0 52px 52px rgba(0, 0, 0, 0.15)) drop-shadow(0 117px 70px rgba(0, 0, 0, 0.19)) drop-shadow(0 209px 83px rgba(0, 0, 0, 0.10)) drop-shadow(0 326px 91px rgba(0, 0, 0, 0));

            @media screen and (min-width: 1280px) {
                padding: 25px;
            }

            &:hover {
                &::before {
                    transform: translate(-10px, 10px);
                }

                &::after {
                    transform: translate(10px, -10px);
                }
            }

            &::before,
            &::after {
                content: "";
                position: absolute;
                z-index: -1;
                width: 75%;
                height: 75%;
                border-radius: 15px;
                transition: all 0.3s ease;
            }

            &::before {
                background: var(--secondary-color, #eee);
                left: 0;
                bottom: 0;
            }

            &::after {
                background: var(--primary-color, #000);
                right: 0;
                top: 0;
            }

            img {
                display: block;
                max-width: 100%;
                height: auto;
                object-fit: cover;
                margin-inline: auto;
                border-radius: 15px;
            }
        }
    }

    &.custom-about-us-v4a {
        .custom-about-us-item-image {
            max-width: 800px;

            &:after {
                width: 110px;
                height: 110px;
                bottom: 0;
                left: 0;
                right: unset;
                top: unset;
                z-index: 2;
                background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='65' height='64' viewBox='0 0 65 64' fill='none'%3E%3Cpath d='M12.3315 36.9375C9.3315 36.8125 6.66483 35.8854 4.3315 34.1563C1.99817 32.4271 0.602329 30.2292 0.143997 27.5625C-0.356003 24.5209 0.446079 21.7709 2.55025 19.3125C4.65442 16.8542 7.4565 15.375 10.9565 14.875C12.7482 14.6667 14.519 14.7084 16.269 15C18.019 15.3334 19.644 15.9375 21.144 16.8125C22.644 17.6875 23.9565 18.8542 25.0815 20.3125C26.2065 21.7709 26.9773 23.5417 27.394 25.625C27.894 28.6667 27.644 31.5417 26.644 34.25C25.6857 36.9584 24.144 39.3646 22.019 41.4688C19.894 43.5729 17.269 45.3125 14.144 46.6875C11.0607 48.0209 7.60233 48.875 3.769 49.25C3.519 49.2917 3.35233 49.2604 3.269 49.1563C3.18567 49.0521 3.144 49 3.144 49L2.4565 45.1875C2.4565 45.1875 2.4565 45.125 2.4565 45C2.4565 44.875 2.5815 44.7917 2.8315 44.75C4.99817 44.1667 6.93567 43.3125 8.644 42.1875C10.3523 41.0625 11.5815 39.3125 12.3315 36.9375ZM48.769 36.9375C48.019 39.3125 46.7794 41.0625 45.0502 42.1875C43.3211 43.3125 41.3732 44.1667 39.2065 44.75C38.9982 44.7917 38.8836 44.875 38.8627 45C38.8419 45.125 38.8315 45.1875 38.8315 45.1875L39.519 49C39.519 49 39.5502 49.0521 39.6127 49.1563C39.6752 49.2604 39.8523 49.2917 40.144 49.25C43.9357 48.9167 47.394 48.0625 50.519 46.6875C53.6023 45.3542 56.2065 43.6354 58.3315 41.5313C60.4565 39.4271 62.019 37.0209 63.019 34.3125C63.9773 31.6042 64.2482 28.7292 63.8315 25.6875C63.3732 23.6042 62.5815 21.8125 61.4565 20.3125C60.3315 18.8542 59.0086 17.6875 57.4877 16.8125C55.9669 15.9375 54.3315 15.3334 52.5815 15C50.8315 14.7084 49.0815 14.6667 47.3315 14.875C43.7898 15.375 40.9669 16.8542 38.8627 19.3125C36.7586 21.7709 35.9982 24.5209 36.5815 27.5625C37.0398 30.2709 38.4252 32.4896 40.7377 34.2188C43.0502 35.9479 45.7273 36.8542 48.769 36.9375Z' fill='white'/%3E%3C/svg%3E");
                background-size: 60%;
                background-repeat: no-repeat;
                background-position: center;
                display: none;

                @media (max-width: 1499px) {
                    width: 90px;
                    height: 90px;
                }

                @media (max-width: 1199px) {
                    width: 75px;
                    height: 75px;
                }

                @media (max-width: 767px) {
                    width: 50px;
                    height: 50px;
                    border-radius: 10px;
                }
            }

            &:before {
                width: 30%;
                height: auto;
                aspect-ratio: 1/1;
                bottom: unset;
                top: 10px;
                left: 10px;
            }

        }

        .about-us-image {
            &:hover {
                .custom-about-us-item-image {
                    &:before {
                        transform: unset;
                        top: 0;
                        left: 0;
                    }
                }
            }
        }
    }
}

#home,
#view-theme {
    .custom-about-us-v4 {
        &.custom-about-us-v4b {
            --section-bg-color: linear-gradient(270deg, var(--primary-color) 0%, var(--tertiary-color, var(--primary-color)) 100%);
            --section-text-color: #fff;
            padding-top: 10px;

            .custom-about-us-container {
                column-gap: 80px;

                @media (max-width: 1499px) {
                    column-gap: 60px;
                }

                @media (max-width: 1199px) {
                    column-gap: 50px;
                }

                .custom-about-us-content {
                    order: 1;
                }

                .about-us-video {
                    order: 0;
                }
            }

            .about-us-image:has(iframe) {
                display: block;

                .custom-about-us-item-videourl {
                    display: none;
                }
            }

            .header-slot-container {
                .header-top {
                    color: var(--section-text-color);
                    font-weight: 400;
                }

                .header-middle {
                    color: transparent;
                    -webkit-text-stroke: 1px var(--section-text-color);
                }

                .header-bottom {
                    color: var(--section-text-color);
                }
            }

            .custom-about-us-content {
                padding-top: unset;
            }

            .about-us-video {
                width: 100%;
            }

            .custom-about-us-item-image {
                width: 100%;
                position: relative;
                bottom: -125px;

                @media (max-width: 1499px) {
                    bottom: -90px;
                }

                @media (max-width: 1199px) {
                    bottom: unset;
                }

                &:before {
                    background-color: var(--tertiary-color, var(--primary-color));

                    @media (max-width: 1499px) {
                        background-color: var(--secondary-color);
                    }
                }

                &:after {
                    background-color: var(--secondary-color);

                    @media (max-width: 1499px) {
                        background-color: var(--tertiary-color, var(--primary-color));

                    }
                }
            }

            .about-us-video-iframe {
                aspect-ratio: 16/9;
                width: 100%;
                border-radius: 20px;
                overflow: hidden;


                iframe {
                    border-radius: 20px;
                }
            }

            .about-us-description {
                color: var(--section-text-color);

                &:before {
                    content: '';
                    display: block;
                    width: 2em;
                    height: 2em;
                    background-color: var(--secondary-color);
                    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='65' height='64' viewBox='0 0 65 64' fill='none'%3E%3Cpath d='M12.3315 36.9375C9.3315 36.8125 6.66483 35.8854 4.3315 34.1563C1.99817 32.4271 0.602329 30.2292 0.143997 27.5625C-0.356003 24.5209 0.446079 21.7709 2.55025 19.3125C4.65442 16.8542 7.4565 15.375 10.9565 14.875C12.7482 14.6667 14.519 14.7084 16.269 15C18.019 15.3334 19.644 15.9375 21.144 16.8125C22.644 17.6875 23.9565 18.8542 25.0815 20.3125C26.2065 21.7709 26.9773 23.5417 27.394 25.625C27.894 28.6667 27.644 31.5417 26.644 34.25C25.6857 36.9584 24.144 39.3646 22.019 41.4688C19.894 43.5729 17.269 45.3125 14.144 46.6875C11.0607 48.0209 7.60233 48.875 3.769 49.25C3.519 49.2917 3.35233 49.2604 3.269 49.1563C3.18567 49.0521 3.144 49 3.144 49L2.4565 45.1875C2.4565 45.1875 2.4565 45.125 2.4565 45C2.4565 44.875 2.5815 44.7917 2.8315 44.75C4.99817 44.1667 6.93567 43.3125 8.644 42.1875C10.3523 41.0625 11.5815 39.3125 12.3315 36.9375ZM48.769 36.9375C48.019 39.3125 46.7794 41.0625 45.0502 42.1875C43.3211 43.3125 41.3732 44.1667 39.2065 44.75C38.9982 44.7917 38.8836 44.875 38.8627 45C38.8419 45.125 38.8315 45.1875 38.8315 45.1875L39.519 49C39.519 49 39.5502 49.0521 39.6127 49.1563C39.6752 49.2604 39.8523 49.2917 40.144 49.25C43.9357 48.9167 47.394 48.0625 50.519 46.6875C53.6023 45.3542 56.2065 43.6354 58.3315 41.5313C60.4565 39.4271 62.019 37.0209 63.019 34.3125C63.9773 31.6042 64.2482 28.7292 63.8315 25.6875C63.3732 23.6042 62.5815 21.8125 61.4565 20.3125C60.3315 18.8542 59.0086 17.6875 57.4877 16.8125C55.9669 15.9375 54.3315 15.3334 52.5815 15C50.8315 14.7084 49.0815 14.6667 47.3315 14.875C43.7898 15.375 40.9669 16.8542 38.8627 19.3125C36.7586 21.7709 35.9982 24.5209 36.5815 27.5625C37.0398 30.2709 38.4252 32.4896 40.7377 34.2188C43.0502 35.9479 45.7273 36.8542 48.769 36.9375Z' fill='white'/%3E%3C/svg%3E");
                    mask-size: contain;
                    transform: rotate(180deg);
                }

                span {
                    margin-top: 1em;
                    display: block;
                }
            }

            .custom-about-us-quote-author {
                color: var(--section-text-color);
                font-weight: 600;
                margin-top: 1.75em;
            }
        }
    }
}

#home .main:has(+ .main .custom-about-us-v4)>.view-container,
#view-theme .main:has(+ .main .custom-about-us-v4)>.view-container {
    background: transparent;
    z-index: 2;
}

/* ------------------------------------------ */
/* --------- CUSTOM ABOUT V4 - END ---------- */
/* ------------------------------------------ */

/* ------------------------------------------ */
/* --------- DEFAULT ABOUT V2 START --------- */
/* ------------------------------------------ */

#home .about-v2,
#view-theme .about-v2 {
    padding-top: 175px;
    padding-bottom: 30px;

    @media (max-width: 1499px) {
        padding-top: 125px;
        padding-bottom: 20px;
    }

    @media (max-width: 1199px) {
        padding-top: 100px;
        padding-bottom: 15px;
    }

    @media (max-width: 959px) {
        padding-top: 80px;
        padding-bottom: 10px;
    }

    @media (max-width: 767px) {
        padding-top: 50px;
    }

    .main-content {
        .image-wrapper {
            display: none;
        }

        .header-text {
            font-size: 72px;
            font-weight: 800;
            line-height: 1;
            text-transform: unset;
            font-family: var(--secondary-font);

            @media (max-width: 1499px) {
                font-size: 60px;
            }

            @media (max-width: 1199px) {
                font-size: 46px;
            }

            @media (max-width: 959px) {
                font-size: 38px;
            }

            @media (max-width: 767px) {
                font-size: 32px;
            }

            &:after {
                content: '';
                display: block;
                width: 100%;
                height: 4px;
                background-color: var(--header-accent-color);
                margin-top: 15px;
            }
        }

        .main-text {
            margin-top: .75em;
            max-width: 800px;
            font-size: 22px;
            line-height: 1.5;
            font-weight: 400;

            @media (max-width: 1499px) {
                font-size: 20px;
            }

            @media (max-width: 959px) {
                font-size: 18px;
            }

            @media (max-width: 599px) {
                font-size: 16px;
            }
        }


        .icon-link-buttons {
            .button {
                height: auto;
                border-radius: 5px;
                box-shadow: 0 4px 14px 0 rgba(0, 0, 0, 0.35);
                text-transform: unset;
                width: auto;

                .button-container {
                    font-size: 18px;
                    width: 100%;
                    padding: 1em 1.25em;

                    @media (max-width: 1499px) {
                        font-size: 16px;
                    }
                }

                .button-title {
                    font-size: inherit;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    text-align: center;
                    font-weight: 400;
                }
            }
        }
    }
}

/* ------------------------------------------ */
/* ---------- DEFAULT ABOUT V2 END ---------- */
/* ------------------------------------------ */



/* ------------------------------------------ */
/* -------- CUSTOM PROGRAMS V4 START -------- */
/* ------------------------------------------ */

#app #custom-programs-v4,
#view-theme #custom-programs-v4 {
    --arrow-style-5-bg-color: var(--primary-color);
    --arrow-style-5-border-color: var(--primary-color);

    @media (max-width: 959px) {
        padding-top: 0;
    }

    .header-slot-container {
        border-color: var(--secondary-color);

        @media (min-width: 1500px) {
            font-size: 46px;
        }
    }

    .custom-programs-wrapper .custom-programs-item:has(.slide-item-title a:empty, .slide-item-title:empty) {

        .slide-item-image::after,
        .slide-item-image a::after {
            display: none !important;
        }

        .slide-item-title {
            display: none;
        }
    }

    .custom-programs {
        &:after {
            height: 400px;
            top: unset;
            bottom: 100px;
            background-color: var(--secondary-color);
        }
    }

    .custom-programs-item {
        border-radius: 0 25px 0 25px;
        overflow: hidden;
        box-shadow: 0 5px 25px 2px rgba(0, 0, 0, 0.35);
        margin-bottom: 40px;

        .slide-item-image {
            aspect-ratio: 3/4;

            &:has(a):hover {
                img {
                    opacity: 0.9;
                }
            }

            img {
                display: block;
            }
        }

        .slide-item-title {
            bottom: 40px;
        }
    }

    .short-desc {
        line-height: 1.4;
        padding: 5px 32px;

        @media (max-width: 599px) {
            padding: 5px 20px;
        }
    }

    .see-all-container.see-all-bottom:has(.swiper-button-lock) {
        display: none !important;
    }
}

#home .homepage-component:has(#custom-programs-v4.is-not-in-cms) .see-all-container.see-all-top {
    @media (max-width: 599px) {
        padding: 30px 20px 0;
    }
}

/* ------------------------------------------ */
/* -------- CUSTOM PROGRAMS V4 - END -------- */
/* ------------------------------------------ */

/* ------------------------------------------ */
/* -------- CUSTOM Mobile App START --------- */
/* ------------------------------------------ */

#app #download-app-v3,
#view-theme #download-app-v3 {
    --smartphone-logo-url: var(--watermark-url);
    --smartphone-width: 400px;
    --bg-color: var(--primary-color);
    --download-app-v3-bg-color: linear-gradient(90deg, var(--bg-color) 0%,
            color-mix(in srgb, var(--bg-color), #000000 40%) 50%,
            color-mix(in srgb, var(--bg-color), #000000 70%) 100%);

    --download-app-v3-text-color: var(--primary-color-contrast);
    position: relative;
    background: var(--download-app-v3-bg-color);
    isolation: isolate;

    &:after {
        content: '';
        display: block;
        background-image: url('https://cmsv2-shared-assets.apptegy.net/Global/Images/Universal/Generic-Landscape-Images/generic-students-landscape.jpg');
        position: absolute;
        inset: 0;
        background-size: cover;
        background-position: center;
        z-index: -1;
        opacity: .04;
    }

    .download-app-v3__title {
        display: block;

        h3 {
            .download-app-v3-title {
                display: block;
                width: 100%;
                font-weight: 400;
            }

            .download-app-v3-subtitle {
                font-size: 1.4em;
            }
        }
    }
}

/* ------------------------------------------ */
/* --------- CUSTOM Mobile App - END -------- */
/* ------------------------------------------ */


/* changes for Homepage in CMS */
#view-theme {
    --primary-color: #107AB7;
    --primary-color-contrast: #ffffff;
    --secondary-color: #FDB718;
    --secondary-color-contrast: #000000;

    #custom-programs-v4 {

        &,
        * {
            box-sizing: border-box;
        }

        .header-slot-container {
            border-color: var(--secondary-color);
        }

        .custom-programs-wrapper.swiper-wrapper {
            height: auto;
        }

        .see-all-container.see-all-bottom {
            margin-top: 10px;

            .slider-drag-hint {
                display: inline-flex !important;
                gap: 10px;
                align-items: center;
            }

            .custom-swiper-navigation {
                display: none !important;
            }
        }

    }

    .header-top,
    .header-middle,
    .header-bottom,
    .see-all-container h2 {
        span {
            font-family: inherit;
        }
    }

    .about-v2 {
        padding-top: 55px !important;
    }

    .download-app-v3 .smartphone-logo {
        background-size: 73% !important;
    }
}

/* end changes for Homepage in CMS */