        html {
            font-size: 100% !important;
        }

        body {
            font-size: 16px !important;
        }


    .account-dropdown {
        position: relative;
    }

    .account-dropdown .account-menu {
        display: none;
        right: 0;
        left: auto;
    }

    .account-dropdown.open .account-menu,
    .account-dropdown.show .account-menu,
    .account-dropdown:focus-within .account-menu,
    .account-dropdown .account-menu.show {
        display: block;
    }

    @media (min-width: 768px) {
        .account-dropdown:hover .account-menu {
            display: block;
        }
    }
   
    @media only screen and (min-width: 768px) {
        .hide-on-desktop {
            display: none !important
        }
    }

    /* Homepage Carousel Optimization */
    .homepage-carousel-img {
        width: 100%;
        height: 639px;
        object-fit: cover;
        display: block;
    }
    
    .carousel-inner img { 
        width: 100%;
        height: 100%; 
    }

    /* E-book Download Button */
    .ebook-download-bar .btn-lg {
        font-size: 20px;
        color: #c62828;
        font-weight: 700;
        padding: 12px 30px;
    }

    /* Course Images */
    .course-image {
        height: 189.75px;
        border-radius: 10px;
        object-fit: cover;
        width: 100%;
    }

    /* Center alignment utility */
    .text-center-important {
        text-align: center !important;
    }

    /* Responsive optimizations */
    @media (max-width: 767.98px) {
        .homepage-carousel-img {
            height: auto;
        }
        
        .ebook-download-bar .btn-lg {
            padding: 8px 16px !important;
            font-size: 16px !important;
            line-height: 1.2 !important;
        }
        
        .course-image {
            height: auto;
            max-height: 200px;
        }
    }
    
    /* E-book section styles */
    .ebook-bg {
        background-image: url('front/sliderimages/Ebook-Banner-2.webp');
        background-size: cover;
        background-position: center;
    }
    
    .ebook-mobile-img {
        float: left;
        width: 100%;
    }
    
    .ebook-desktop-img {
        margin-left: 80px;
        height: 594px;
        width: 480px;
    }
    
    /* FORCED REFLOW PREVENTION - Hover state optimizations */
    .customImagesText {
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
        /* Prevent layout shifts during hover states */
        position: absolute;
        white-space: nowrap;
    }
    
    .cb-anchor:hover .customImagesText {
        opacity: 1;
        visibility: visible;
    }
    
    /* Prevent banner transitions from causing reflows */
    .classForDesktop,
    .classForMobile {
        transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
        will-change: opacity, visibility;
    }


    .top-strip {
        background: linear-gradient(90deg, #1f3f67, #0f2742);
        color: #eaf2ff;
        font-size: 14.72px;
    }

    .top-strip a {
        color: #ffffff;
        font-weight: 600;
        text-decoration: none;
    }

    .top-strip .top-strip-message {
        font-size: 14.72px;
        line-height: 24.288px;
        font-weight: 400;
    }

    #toTop {
        position: fixed;
        right: 5.5rem;
        bottom: 1rem;
        z-index: 1034;
        cursor: pointer;
        display: none;
        width: 44px;
        height: 44px;
        border: 1px solid #3f6998;
        border-radius: 999px;
        background: linear-gradient(180deg, #1f3f67 0%, #0f2742 100%);
        color: #f0fd2b;
        align-items: center;
        justify-content: center;
        box-shadow: 0 10px 24px rgba(14, 35, 59, 0.3);
        transition: transform 0.2s ease, box-shadow 0.2s ease;
    }

    #toTop:hover {
        transform: translateY(-2px);
        box-shadow: 0 14px 26px rgba(14, 35, 59, 0.34);
    }

    #toTop .to-top-icon {
        font-size: 1.25rem;
        line-height: 1;
        font-weight: 700;
    }

    .hero h1 {
        margin-top: 0;
        margin-bottom: 0.5rem;
    }

    .homepage-mode {
        font-family: "Manrope", sans-serif;
        color: #1a2432;
        background: radial-gradient(circle at 12% -5%, #d8e8f8 0%, #eef3f9 35%, #f9fbfd 70%, #fdfefe 100%);
    }

    .homepage-mode > header {
        display: none;
    }

    .homepage-mode .mobile-footer {
        display: none !important;
    }

    .homepage-mode h1,
    .homepage-mode h2,
    .homepage-mode h3,
    .homepage-mode h4,
    .homepage-mode h5 {
        font-family: "Source Serif 4", serif;
        letter-spacing: -0.01em;
        
    }

    .homepage-ref-nav-wrap {
        position: sticky;
        top: 0;
        z-index: 1020;
        background: rgba(255, 255, 255, 0.94);
        border-bottom: 1px solid #eef2f8;
        backdrop-filter: blur(6px);
        transition: box-shadow 0.3s ease, background-color 0.3s ease;
    }

    .homepage-ref-nav-wrap.scrolled {
        background: rgba(255, 255, 255, 0.98);
        box-shadow: 0 10px 28px rgba(14, 35, 59, 0.12);
    }

    .homepage-ref-nav {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 18px;
        padding: 14px 0;
        position: relative;
    }

    .homepage-ref-brand {
        text-decoration: none;
        display: inline-flex;
        align-items: center;
    }

    .homepage-mode .navbar-brand.homepage-ref-brand {
        padding-top: 0;
        padding-bottom: 0;
        margin-right: 0.9rem;
    }

    .homepage-ref-logo {
        height: 54px;
        max-width: 220px;
        width: auto;
        object-fit: contain;
    }

    .header-brand-logo {
        height: 56px;
        max-width: 220px;
        width: auto;
        object-fit: contain;
        display: block;
    }

    .homepage-ref-menu {
        display: flex;
        align-items: center;
        gap: 14px;
        margin-left: auto;
    }

    .homepage-ref-links {
        display: flex;
        list-style: none;
        gap: 14px;
        margin: 0;
        padding: 0;
    }

    .homepage-ref-links a {
        color: #1a2432;
        font-weight: 600;
        text-decoration: none;
    }

    .homepage-ref-links a.active,
    .homepage-ref-links a:hover {
        color: #1f3f67;
    }

    .homepage-mode .navbar .navbar-nav .nav-link,
    .homepage-mode .navbar .navbar-nav .dropdown-item,
    .homepage-mode #top_nav a,
    .homepage-mode .sf-menu > li > a,
    .homepage-mode .sf-menu ul li a {
        text-transform: uppercase;
        letter-spacing: 0.03em;
    }

    .homepage-mode .navbar .navbar-nav {
        align-items: center;
        gap: 0.2rem;
    }

    .homepage-mode .navbar .navbar-nav .nav-link {
        color: #173a61;
        font-weight: 800;
        font-size: 0.78rem;
        border-radius: 999px;
        padding: 0.62rem 0.78rem;
        transition: color 0.2s ease, background-color 0.2s ease;
    }

    .homepage-mode .navbar .navbar-nav .nav-link:hover,
    .homepage-mode .navbar .navbar-nav .nav-link:focus,
    .homepage-mode .navbar .navbar-nav .show > .nav-link,
    .homepage-mode .navbar .navbar-nav .nav-link[aria-expanded="true"] {
        color: #0f3156;
        background: #edf4fd;
    }

    .homepage-mode .navbar .navbar-nav .dropdown-toggle::after {
        margin-left: 0.35rem;
        vertical-align: 0.16em;
        border-top-width: 0.32em;
        border-right-width: 0.3em;
        border-left-width: 0.3em;
    }

    /* Keep top navigation links clean on hover/focus across all menu variants. */
    nav.navbar .navbar-nav .nav-link:hover,
    nav.navbar .navbar-nav .nav-link:focus,
    nav.navbar .navbar-nav .dropdown-item:hover,
    nav.navbar .navbar-nav .dropdown-item:focus,
    #top_nav .sf-menu > li > a:hover,
    #top_nav .sf-menu ul li a:hover,
    #top_nav .sf-menu > li > a:focus,
    #top_nav .sf-menu ul li a:focus {
        text-decoration: none !important;
    }

    .homepage-mode .navbar .navbar-nav .dropdown-menu {
        border: 1px solid #d6e5f5;
        border-radius: 0.85rem;
        box-shadow: 0 16px 32px rgba(16, 38, 63, 0.16);
        padding: 0.42rem;
        margin-top: 0;
        min-width: 17.8rem;
        position: absolute;
    }

    .homepage-mode .navbar .navbar-nav .dropdown-item {
        border-radius: 0.55rem;
        text-transform: none;
        letter-spacing: 0;
        font-weight: 700;
        font-size: 0.86rem;
        color: #1d426b;
        padding: 0.52rem 0.68rem;
        white-space: normal;
        line-height: 1.35;
    }

    .homepage-mode .navbar .navbar-nav .dropdown-item:hover,
    .homepage-mode .navbar .navbar-nav .dropdown-item:focus {
        color: #0f3156;
        background: #edf4fd;
    }

    @media (min-width: 992px) {
        .homepage-mode .navbar .navbar-nav .dropdown {
            position: relative;
        }

        .homepage-mode .navbar .navbar-nav .dropdown > .dropdown-menu {
            display: block;
            opacity: 0;
            visibility: hidden;
            transform: translateY(6px) scale(0.985);
            pointer-events: none;
            transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
            top: calc(100% + 2px);
            left: 0;
        }

        .homepage-mode .navbar .navbar-nav .dropdown > .dropdown-menu::before {
            content: "";
            position: absolute;
            left: 0;
            right: 0;
            top: -12px;
            height: 12px;
        }

        .homepage-mode .navbar .navbar-nav .dropdown.show > .dropdown-menu,
        .homepage-mode .navbar .navbar-nav .dropdown:hover > .dropdown-menu,
        .homepage-mode .navbar .navbar-nav .dropdown:focus-within > .dropdown-menu {
            opacity: 1;
            visibility: visible;
            transform: translateY(0) scale(1);
            pointer-events: auto;
        }

        .homepage-mode .navbar .navbar-nav .dropdown:hover > .nav-link,
        .homepage-mode .navbar .navbar-nav .dropdown:focus-within > .nav-link {
            color: #0f3156;
            background: #edf4fd;
        }
    }

    .homepage-ref-cta {
        display: flex;
        gap: 8px;
    }

    .homepage-mode .homepage-ref-cta .btn {
        min-height: 42px;
        padding: 10px 16px;
        border-radius: 0.7rem;
        font-weight: 800;
        letter-spacing: 0.03em;
        text-transform: uppercase;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
    }

    .homepage-mode .homepage-ref-cta .btn-outline-brand {
        border: 1.5px solid #1f3f67;
        color: #1f3f67;
        background: #fff;
    }

    .homepage-mode .homepage-ref-cta .btn-outline-brand:hover {
        background: #1f3f67;
        color: #fff;
    }

    .homepage-mode .homepage-ref-cta .btn-brand {
        background: #f6b73c;
        color: #1e2735;
        border: 0;
        box-shadow: 0 8px 18px rgba(246, 183, 60, 0.35);
    }

    .homepage-mode .homepage-ref-cta .btn-brand:hover {
        background: #f8c75f;
        color: #1e2735;
    }

    .homepage-mode .homepage-ref-cta .guest-signin,
    .homepage-mode .homepage-ref-cta .guest-signup {
        min-width: 126px;
    }

    .homepage-mode .homepage-ref-cta .guest-signin {
        border-color: #2c5988;
        color: #1f3f67;
        background: #fff;
        box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.35);
    }

    .homepage-mode .homepage-ref-cta .guest-signin:hover {
        background: #1f3f67;
        border-color: #1f3f67;
        color: #fff;
        box-shadow: 0 8px 18px rgba(31, 63, 103, 0.28);
    }

    .homepage-mode .homepage-ref-cta .guest-signup {
        background: linear-gradient(145deg, #f6b73c, #edaa2e);
        border: 0;
        color: #1e2735;
        box-shadow: 0 10px 20px rgba(246, 183, 60, 0.34);
    }

    .homepage-mode .homepage-ref-cta .guest-signup:hover {
        background: linear-gradient(145deg, #f8c75f, #f2b740);
        color: #1e2735;
    }

    .homepage-mode .homepage-ref-cta .btn-account {
        min-height: 42px;
        padding: 6px 10px;
        border-radius: 999px;
        border: 1.5px solid #c9d9ee;
        background: #fff;
        color: #1f3f67;
        font-weight: 800;
        letter-spacing: 0.03em;
        text-transform: uppercase;
        display: inline-flex;
        align-items: center;
        gap: 8px;
    }

    .homepage-mode .homepage-ref-cta .btn-account:focus,
    .homepage-mode .homepage-ref-cta .btn-account:hover {
        background: #f5f9ff;
        color: #1f3f67;
        border-color: #93b3d8;
    }

    .homepage-mode .homepage-ref-cta .btn-account::after {
        margin-left: 2px;
    }

    .homepage-mode .homepage-ref-cta .account-avatar {
        width: 30px;
        height: 30px;
        border-radius: 50%;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: linear-gradient(145deg, #1f3f67, #295988);
        color: #fff;
        font-size: 0.78rem;
        font-weight: 800;
        letter-spacing: 0;
    }

    .homepage-mode .homepage-ref-cta .account-label {
        font-size: 0.78rem;
    }

    .homepage-mode .homepage-ref-cta .account-menu {
        border: 1px solid #dbe7f6;
        border-radius: 0.8rem;
        box-shadow: 0 12px 28px rgba(17, 37, 62, 0.14);
        padding: 0.35rem;
        min-width: 220px;
    }

    .homepage-mode .homepage-ref-cta .account-menu .dropdown-item {
        border-radius: 0.55rem;
        font-weight: 700;
        font-size: 0.8rem;
        padding: 0.55rem 0.7rem;
        text-transform: uppercase;
        letter-spacing: 0.03em;
        color: #1f3f67;
    }

    .homepage-mode .homepage-ref-cta .account-menu .dropdown-item:hover {
        background: #eef5ff;
        color: #0f2742;
    }

    .homepage-mode .homepage-ref-cta .account-menu .dropdown-divider {
        margin: 0.3rem 0;
        border-top-color: #dbe7f6;
    }

    .homepage-nav-toggle {
        display: none;
        border: 1.5px solid #1f3f67;
        color: #1f3f67;
        background: #fff;
        border-radius: 0.6rem;
        padding: 6px 12px;
        font-weight: 700;
        font-size: 13px;
    }

    .homepage-mode .homepage-ref-cta .button_top {
        background: #f6b73c;
        color: #1e2735;
        border: 0;
        border-radius: 0.7rem;
        font-weight: 700;
        padding: 10px 16px;
        box-shadow: 0 8px 18px rgba(246, 183, 60, 0.35);
        text-transform: none;
    }

    .homepage-mode .homepage-ref-cta .button_top:hover {
        background: #f8c75f;
        color: #1e2735;
    }

    .homepage-mode .homepage-ref-cta .button_medium_outline {
        border: 1.5px solid #1f3f67;
        color: #1f3f67;
        border-radius: 0.7rem;
        padding: 10px 16px;
        font-weight: 700;
        text-transform: none;
        background: #fff;
    }

    .homepage-mode .homepage-ref-cta .button_medium_outline:hover {
        background: #1f3f67;
        color: #fff;
    }

    .homepage-mode footer {
        background: #0d2037;
        color: #deebff;
        margin-top: 4rem;
        padding-top: 3.1rem;
    }

    .homepage-mode .footer-brand-copy {
        color: #c8d9f0;
        max-width: 36ch;
    }

    .homepage-mode .footer-kicker {
        display: inline-block;
        font-size: 0.76rem;
        font-weight: 700;
        letter-spacing: 0.06em;
        text-transform: uppercase;
        color: #8dc0ff;
        margin-bottom: 0.5rem;
    }

    .homepage-mode .footer-list {
        list-style: none;
        padding-left: 0;
        margin-bottom: 0;
    }

    .homepage-mode .footer-list li {
        margin-bottom: 0.45rem;
        color: #d6e5fa;
        font-size: 0.95rem;
    }

    .homepage-mode footer a {
        color: #deebff;
        text-decoration: none;
    }

    .homepage-mode footer a:hover {
        color: #fff;
        text-decoration: underline;
    }

    .homepage-mode .footer-note {
        border-top: 1px solid rgba(255, 255, 255, 0.2);
        margin-top: 1.4rem;
        padding: 1rem 0 1.2rem;
        color: #b9cbe6;
        font-size: 0.92rem;
    }

    @media (max-width: 991px) {
        .homepage-nav-toggle {
            display: inline-flex;
            align-items: center;
            justify-content: center;
        }

        .homepage-ref-menu {
            display: none;
            position: absolute;
            top: 100%;
            left: 0;
            right: 0;
            background: #ffffff;
            border: 1px solid #e7edf6;
            border-top: 0;
            border-radius: 0 0 12px 12px;
            box-shadow: 0 12px 30px rgba(14, 35, 59, 0.12);
            padding: 12px;
            flex-direction: column;
            align-items: stretch;
            gap: 10px;
        }

        .homepage-ref-nav.open .homepage-ref-menu {
            display: flex;
        }

        .homepage-ref-links {
            flex-direction: column;
            gap: 10px;
        }

        .homepage-ref-cta {
            width: 100%;
            flex-direction: column;
        }

        .homepage-mode .homepage-ref-cta .button_top,
        .homepage-mode .homepage-ref-cta .button_medium_outline {
            width: 100%;
            text-align: center;
        }

        .homepage-mode .homepage-ref-cta .dropdown,
        .homepage-mode .homepage-ref-cta .btn-account {
            width: 100%;
        }

        .homepage-mode .homepage-ref-cta .account-menu {
            width: 100%;
            min-width: 0;
        }

        .homepage-mode .navbar .navbar-nav .nav-link {
            padding: 0.58rem 0.7rem;
            font-size: 0.8rem;
        }

        .homepage-mode .navbar .navbar-nav .dropdown-menu {
            min-width: 0;
            border-radius: 0.7rem;
            box-shadow: none;
            border-color: #e0ebf8;
        }

        .homepage-ref-logo {
            height: 46px;
            max-width: 190px;
        }

        .header-brand-logo {
            height: 46px;
            max-width: 190px;
        }

        .homepage-footer-logo {
            height: 54px;
            max-width: 220px;
        }
    }

    @media (max-width: 575px) {
        .top-strip {
            font-size: 13.44px;
        }

        .top-strip .top-strip-message {
            font-size: 13.44px;
            line-height: 22.176px;
        }

        .top-strip .d-flex.gap-3 {
            width: 100%;
            justify-content: space-between;
        }

        .homepage-ref-logo {
            height: 40px;
            max-width: 160px;
        }

        .header-brand-logo {
            height: 40px;
            max-width: 160px;
        }

        .homepage-footer-logo {
            height: 46px;
            max-width: 190px;
        }

        #toTop {
            right: 4.75rem;
            bottom: 1rem;
        }
    }

    .homepage-footer-quick-actions {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 18px;
        flex-wrap: wrap;
        padding: 10px 0 18px;
        font-size: 14px;
    }

    .homepage-footer-quick-actions a {
        color: #f0fd2b;
        font-weight: 700;
    }

    .footer-col-heading {
        font-weight: 700;
        color: #dbe9f7;
        margin-bottom: 10px;
    }

    #follow_us {
        list-style: none;
        padding-left: 0;
        margin: 0 0 12px;
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
    }

    #follow_us li {
        margin: 0;
    }

    #follow_us a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.12);
        color: #ffffff;
        text-decoration: none;
        transition: background-color 0.2s ease, transform 0.2s ease;
    }

    #follow_us a:hover {
        background: rgba(255, 255, 255, 0.2);
        transform: translateY(-1px);
    }

    #follow_us .social-icon {
        width: 18px;
        height: 18px;
        display: block;
    }

    .homepage-footer-wrap {
        padding-top: 16px;
        padding-bottom: 6px;
    }

    .homepage-footer-logo-link {
        display: inline-flex;
        margin-bottom: 12px;
    }

    .homepage-footer-logo {
        height: 64px;
        max-width: 260px;
        width: auto;
        object-fit: contain;
    }

    .homepage-footer-cta {
        border: 1.5px solid rgba(255, 255, 255, 0.7);
        color: #deebff;
        border-radius: 0.7rem;
        padding: 10px 16px;
        display: inline-block;
        text-transform: none;
        font-weight: 700;
        background: transparent;
    }

    .homepage-footer-cta:hover {
        background: rgba(255, 255, 255, 0.12);
        color: #ffffff;
    }

    /* mobile navigation sticky footer */
    .mobile-footer {
        display: none;
        position: relative;
        z-index: 9999;
    }

    .menu {
        box-sizing: border-box;
        height: 80px;
        width: 100%;
        color: #ffffff;
        background: #29ab9f;
        position: fixed;
        bottom: -40px;
        left: 50%;
        transform: translate(-50%, -50%);
        padding: 20px 0;
        display: flex;
        justify-content: space-around;
    }

    .menu-item {
        position: relative;
        cursor: pointer;
        padding: 0 10px;
    }

    .menu-item__status {
        opacity: 0;
        position: absolute;
        top: -20px;
        left: 50%;
        background: #ffffff;
        width: 70px;
        height: 2px;
        transform: translateX(-50%);
        transition: opacity 500ms ease-out;
    }

    .menu-item--active .menu-item__status {
        opacity: 1;
    }

    .menu-item__icon {
        width: 24px;
        height: 24px;
        margin: auto;
    }

    .menu-item__icon svg path {
        fill: #ffffff;
    }

    .menu-item__text {
        margin-top: 4px;
        color: #000000;
        font-weight: bold;
        font-size: 16px;
        transition: color 500ms ease-out;
    }

    .menu-item--active .menu-item__text {
        color: #ffffff;
    }


    @media (max-width: 480px) {
        ul#top_nav {
            list-style: none;
            padding: 0;
            margin: -10px 0px 0 0;
            font-size: 12px;
            float: right;
        }

        .mobile-footer {
            display: block;
        }

        .button_top {
            display: none !important;
        }
    }

 
nav.sticky { position: fixed; top: 0; width: 100%; }

img {
  max-width: 100%; 
  display: block;
}
 
.homepage-carousel-img {
  aspect-ratio: 4 / 1;
}

    .cookie-consent-bar {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 12000;
        background: #0f2742;
        border-top: 3px solid #f6b73c;
        box-shadow: 0 -8px 24px rgba(9, 23, 39, 0.25);
        padding: 12px 16px;
    }

    .cookie-consent-content {
        max-width: 1160px;
        margin: 0 auto;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
    }

    .cookie-consent-text {
        margin: 0;
        color: #e6f0fb;
        font-size: 14px;
        line-height: 1.5;
    }

    .cookie-consent-link {
        color: #f6b73c;
        font-weight: 700;
        text-decoration: underline;
    }

    .cookie-consent-actions {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        flex-shrink: 0;
    }

    .cookie-btn {
        border: 0;
        border-radius: 8px;
        min-height: 40px;
        padding: 8px 16px;
        font-size: 14px;
        font-weight: 700;
        cursor: pointer;
    }

    .cookie-btn-primary {
        background: linear-gradient(145deg, #f6b73c, #efaa25);
        color: #1e2735;
    }

    .cookie-btn-secondary {
        background: #ffffff;
        color: #1f3f67;
        border: 1px solid #d9e3f0;
    }

    .header-strip-desktop {
        background-color: #29ab9f;
        height: 50px;
        display: none;
    }

    .header-strip-mobile {
        background-color: #29ab9f;
        height: 75px;
        display: none;
    }

    .header-strip-text {
        text-align: center;
        padding: 9px;
    }

    .header-phone-wrap {
        float: right;
        margin-left: 20px;
    }

    .header-phone-text,
    .footer-phone-cta-text {
        color: #fff;
        font-weight: 700;
    }

    .header-phone-btn {
        color: #f3f3f3;
        background-color: #31b0d5 !important;
    }

    .account-dropdown-inline {
        display: inline-block;
    }

    .account-menu-legacy {
        min-width: 210px;
        z-index: 2500;
    }

    .admin-impersonation-banner {
        background: #f59e0b;
        color: #1c1917;
        padding: 8px 20px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        font-size: 13px;
        font-weight: 600;
        z-index: 9999;
        gap: 10px;
        flex-wrap: wrap;
    }

    .admin-impersonation-email {
        font-weight: 400;
    }

    .admin-impersonation-link {
        background: #1c1917;
        color: #fbbf24;
        padding: 4px 14px;
        border-radius: 4px;
        text-decoration: none;
        font-weight: 700;
        font-size: 12px;
        white-space: nowrap;
    }

    .quick-support-section {
        background: rgb(245, 243, 243);
        padding: 30px 0;
        text-align: center;
    }

    .quick-support-title {
        color: #29ab9f;
        margin-bottom: 10px;
        font-size: 35px;
    }

    .quick-support-text {
        font-size: 18px;
        margin-bottom: 15px;
    }

    .quick-support-btn {
        background: #d43f3a;
        color: #fff;
        border: none;
        padding: 16px 20px;
        border-radius: 60px;
    }

    .footer-follow-wrap {
        margin-top: 12px;
    }

    .newsletter-col-center {
        margin: auto;
    }

    .newsletter-title {
        font-size: 24px;
    }

    .newsletter-subtitle {
        margin-bottom: 0;
        color: #dbe9f7;
    }

    .newsletter-form-block {
        display: block;
    }

    .newsletter-alert {
        font-size: 18px;
    }

    .footer-brand-desc-legacy {
        font-size: 15px;
        line-height: 1.6;
        color: #dbe9f7;
    }

    .footer-admission-link {
        margin-top: 8px;
    }

    .footer-list-legacy {
        font-size: 16px;
    }

    .footer-list-item-legacy {
        margin-top: 15px;
        margin-bottom: 15px;
    }

    .footer-contact-heading {
        margin-top: 15px;
    }

    .footer-phone-big {
        font-size: 20px;
    }

    .footer-phone-cta-btn {
        color: #f3f3f3;
    }

    .copy-right-legacy {
        font-size: 14px;
        font-weight: 700;
        color: #fff;
    }

    .copy-right-link-legacy {
        font-size: 14px;
        font-weight: 700;
        color: #f0fd2b;
    }

    .social-center-wrap {
        display: flex;
        justify-content: center;
        margin-top: 10px;
    }

    .full-page-loader {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.5);
        z-index: 9999;
        text-align: center;
    }

    .full-page-loader-content {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .full-page-loader-svg {
        margin: auto;
        background: none;
        display: block;
    }

    .full-page-loader-text {
        color: #fff;
        font-size: 18px;
        margin-top: 10px;
    }

    .offer-modal-open {
        overflow: hidden;
    }

    .homepage-offer-modal {
        position: fixed;
        inset: 0;
        z-index: 12050;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 24px;
    }

    .homepage-offer-modal[hidden] {
        display: none;
    }

    .homepage-offer-modal__backdrop {
        position: absolute;
        inset: 0;
        background: rgba(10, 23, 39, 0.62);
        backdrop-filter: blur(3px);
        animation: offerFadeIn 0.3s ease;
    }

    .homepage-offer-modal__dialog {
        position: relative;
        width: min(700px, 100%);
        border-radius: 22px;
        padding: 30px 30px 24px;
        background:
            radial-gradient(circle at 88% -5%, rgba(255, 224, 143, 0.95), rgba(255, 224, 143, 0) 42%),
            radial-gradient(circle at 10% 110%, rgba(88, 198, 255, 0.32), rgba(88, 198, 255, 0) 40%),
            linear-gradient(135deg, #103a66, #0f2742 60%, #0b2138);
        border: 1px solid rgba(183, 214, 246, 0.48);
        color: #eff7ff;
        box-shadow: 0 24px 65px rgba(9, 22, 38, 0.45);
        animation: offerPopIn 0.36s ease;
        overflow: hidden;
    }

    .homepage-offer-modal__dialog::after {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background: linear-gradient(100deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0));
    }

    .homepage-offer-modal__close {
        position: absolute;
        right: 12px;
        top: 10px;
        width: 38px;
        height: 38px;
        border: 0;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.16);
        color: #fff;
        font-size: 30px;
        line-height: 1;
        cursor: pointer;
        transition: transform 0.2s ease, background-color 0.2s ease;
    }

    .homepage-offer-modal__close:hover {
        transform: scale(1.06);
        background: rgba(255, 255, 255, 0.26);
    }

    .homepage-offer-modal__eyebrow {
        margin: 0 0 8px;
        color: #d5e8fb;
        font-size: 11px;
        text-transform: uppercase;
        letter-spacing: 0.08em;
        font-weight: 700;
    }

    .homepage-offer-modal__badge {
        display: inline-block;
        padding: 7px 12px;
        border-radius: 999px;
        background: linear-gradient(140deg, #ffd770, #f6b73c);
        color: #1b2a3c;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 11px;
        margin-bottom: 14px;
    }

    .homepage-offer-modal h2 {
        margin: 0;
        color: #ffffff;
        font-family: "Source Serif 4", serif;
        font-size: clamp(28px, 3.4vw, 40px);
        line-height: 1.06;
    }

    .homepage-offer-modal__subtext {
        margin: 14px 0 18px;
        font-size: 16px;
        color: #d7e9fb;
        line-height: 1.6;
        max-width: 48ch;
    }

    .homepage-offer-modal__value-row {
        display: flex;
        align-items: center;
        gap: 12px;
        border: 1px solid rgba(243, 206, 112, 0.62);
        border-radius: 14px;
        background: rgba(255, 215, 112, 0.1);
        padding: 10px 12px;
        margin-bottom: 14px;
    }

    .homepage-offer-modal__value-number {
        color: #fff8d8;
        font-size: 30px;
        line-height: 1;
        font-weight: 900;
    }

    .homepage-offer-modal__value-text {
        color: #dcecff;
        font-size: 14px;
        line-height: 1.4;
        font-weight: 600;
    }

    .homepage-offer-modal__benefits {
        margin: 0 0 16px;
        padding: 0;
        list-style: none;
        display: grid;
        gap: 8px;
    }

    .homepage-offer-modal__benefits li {
        position: relative;
        margin: 0;
        padding-left: 24px;
        color: #e2effc;
        font-size: 14px;
        line-height: 1.45;
    }

    .homepage-offer-modal__benefits li::before {
        content: "";
        position: absolute;
        left: 0;
        top: 3px;
        width: 15px;
        height: 15px;
        border-radius: 50%;
        background: linear-gradient(145deg, #ffd46b, #f2b533);
        box-shadow: 0 2px 8px rgba(242, 181, 51, 0.35);
    }

    .homepage-offer-modal__benefits li::after {
        content: "";
        position: absolute;
        left: 5px;
        top: 7px;
        width: 5px;
        height: 5px;
        border-right: 2px solid #102743;
        border-bottom: 2px solid #102743;
        transform: rotate(45deg);
    }

    .homepage-offer-modal__coupon-wrap {
        background: rgba(255, 255, 255, 0.1);
        border: 1px dashed rgba(252, 214, 119, 0.8);
        border-radius: 16px;
        padding: 14px;
    }

    .homepage-offer-modal__coupon-label {
        display: block;
        color: #d8eafc;
        font-size: 12px;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        margin-bottom: 8px;
        font-weight: 700;
    }

    .homepage-offer-modal__coupon-row {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    #homepageOfferCouponCode {
        flex: 1;
        border-radius: 11px;
        background: #0a2138;
        border: 1px solid rgba(133, 175, 214, 0.75);
        color: #fff6cf;
        padding: 10px 12px;
        font-size: clamp(22px, 3vw, 30px);
        font-weight: 800;
        letter-spacing: 0.09em;
        text-align: center;
    }

    .homepage-offer-modal__copy-btn {
        border: 0;
        border-radius: 11px;
        padding: 11px 16px;
        background: linear-gradient(145deg, #ffd670, #f4b733);
        color: #1a2533;
        font-weight: 800;
        cursor: pointer;
        min-width: 92px;
        transition: transform 0.18s ease, box-shadow 0.18s ease;
    }

    .homepage-offer-modal__copy-btn:hover {
        transform: translateY(-1px);
        box-shadow: 0 10px 18px rgba(244, 183, 51, 0.32);
    }

    .homepage-offer-modal__copy-feedback {
        margin: 8px 2px 0;
        min-height: 20px;
        color: #fce7a4;
        font-size: 13px;
        font-weight: 600;
    }

    .homepage-offer-modal__cta-row {
        margin-top: 18px;
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }

    .homepage-offer-modal__cta {
        flex: 1;
        text-align: center;
        text-decoration: none;
        border-radius: 12px;
        padding: 12px 14px;
        font-weight: 800;
        min-width: 220px;
        transition: transform 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
    }

    .homepage-offer-modal__cta-primary {
        color: #0c2440;
        background: #f6f8fb;
        box-shadow: 0 10px 20px rgba(8, 22, 39, 0.22);
    }

    .homepage-offer-modal__cta-secondary {
        color: #f8fbff;
        background: rgba(255, 255, 255, 0.14);
        border: 1px solid rgba(206, 225, 246, 0.44);
    }

    .homepage-offer-modal__cta:hover {
        transform: translateY(-1px);
    }

    .homepage-offer-modal__cta-primary:hover {
        background: #ffffff;
        color: #0a223d;
    }

    .homepage-offer-modal__cta-secondary:hover {
        background: rgba(255, 255, 255, 0.22);
        color: #ffffff;
    }

    .homepage-offer-modal__footer-note {
        margin: 10px 2px 0;
        color: #c5dcf2;
        font-size: 12px;
        line-height: 1.35;
    }

    @keyframes offerFadeIn {
        from {
            opacity: 0;
        }

        to {
            opacity: 1;
        }
    }

    @keyframes offerPopIn {
        from {
            opacity: 0;
            transform: translateY(20px) scale(0.96);
        }

        to {
            opacity: 1;
            transform: translateY(0) scale(1);
        }
    }

    @media (max-width: 768px) {
        .cookie-consent-content {
            flex-direction: column;
            align-items: stretch;
        }

        .cookie-consent-actions {
            width: 100%;
        }

        .cookie-btn {
            width: 100%;
        }

        .homepage-offer-modal {
            padding: 14px;
        }

        .homepage-offer-modal__dialog {
            padding: 22px 16px 16px;
            border-radius: 18px;
        }

        .homepage-offer-modal__subtext {
            font-size: 15px;
        }

        .homepage-offer-modal__coupon-row {
            flex-direction: column;
            align-items: stretch;
        }

        .homepage-offer-modal__copy-btn,
        .homepage-offer-modal__cta {
            width: 100%;
        }

        .homepage-offer-modal__value-row {
            align-items: flex-start;
        }

        .homepage-offer-modal__value-number {
            font-size: 26px;
        }

        .homepage-offer-modal__value-text {
            font-size: 13px;
        }
    }

