@import '_content/Blazicons/Blazicons.886t4n1lry.bundle.scp.css';

/* /Components/Account/Pages/Login.razor.rz.scp.css */
/* Login page visual styles are now Tailwind utility classes in Login.razor. */
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-3xbdu1qmol] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-3xbdu1qmol] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-3xbdu1qmol] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-3xbdu1qmol] {
    font-size: 1.1rem;
}

.bi[b-3xbdu1qmol] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-3xbdu1qmol] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-3xbdu1qmol] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-3xbdu1qmol] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.bi-lock-nav-menu[b-3xbdu1qmol] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath d='M8 1a2 2 0 0 1 2 2v4H6V3a2 2 0 0 1 2-2zm3 6V3a3 3 0 0 0-6 0v4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2zM5 8h6a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1z'/%3E%3C/svg%3E");
}

.bi-person-nav-menu[b-3xbdu1qmol] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person' viewBox='0 0 16 16'%3E%3Cpath d='M8 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm4 8c0 1-1 1-1 1H3s-1 0-1-1 1-4 6-4 6 3 6 4Zm-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10Z'/%3E%3C/svg%3E");
}

.bi-person-badge-nav-menu[b-3xbdu1qmol] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person-badge' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0z'/%3E%3Cpath d='M4.5 0A2.5 2.5 0 0 0 2 2.5V14a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2.5A2.5 2.5 0 0 0 11.5 0h-7zM3 2.5A1.5 1.5 0 0 1 4.5 1h7A1.5 1.5 0 0 1 13 2.5v10.795a4.2 4.2 0 0 0-.776-.492C11.392 12.387 10.063 12 8 12s-3.392.387-4.224.803a4.2 4.2 0 0 0-.776.492V2.5z'/%3E%3C/svg%3E");
}

.bi-person-fill-nav-menu[b-3xbdu1qmol] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person-fill' viewBox='0 0 16 16'%3E%3Cpath d='M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H3Zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z'/%3E%3C/svg%3E");
}

.bi-arrow-bar-left-nav-menu[b-3xbdu1qmol] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-arrow-bar-left' viewBox='0 0 16 16'%3E%3Cpath d='M12.5 15a.5.5 0 0 1-.5-.5v-13a.5.5 0 0 1 1 0v13a.5.5 0 0 1-.5.5ZM10 8a.5.5 0 0 1-.5.5H3.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L3.707 7.5H9.5a.5.5 0 0 1 .5.5Z'/%3E%3C/svg%3E");
}

.nav-item[b-3xbdu1qmol] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-3xbdu1qmol] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-3xbdu1qmol] {
        padding-bottom: 1rem;
    }

    .nav-item[b-3xbdu1qmol]  .nav-link {
        color: #d7d7d7;
        background: none;
        border: none;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        width: 100%;
    }

.nav-item[b-3xbdu1qmol]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-3xbdu1qmol]  .nav-link:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

.nav-scrollable[b-3xbdu1qmol] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-3xbdu1qmol] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-3xbdu1qmol] {
        display: none;
    }

    .nav-scrollable[b-3xbdu1qmol] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-0lgfb6njme],
.components-reconnect-repeated-attempt-visible[b-0lgfb6njme],
.components-reconnect-failed-visible[b-0lgfb6njme],
.components-pause-visible[b-0lgfb6njme],
.components-resume-failed-visible[b-0lgfb6njme],
.components-rejoining-animation[b-0lgfb6njme] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-0lgfb6njme],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-0lgfb6njme],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-0lgfb6njme],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-0lgfb6njme],
#components-reconnect-modal.components-reconnect-retrying[b-0lgfb6njme],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-0lgfb6njme],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-0lgfb6njme],
#components-reconnect-modal.components-reconnect-failed[b-0lgfb6njme],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-0lgfb6njme] {
    display: block;
}


#components-reconnect-modal[b-0lgfb6njme] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-0lgfb6njme 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-0lgfb6njme 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-0lgfb6njme 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-0lgfb6njme]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-0lgfb6njme 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-0lgfb6njme {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-0lgfb6njme {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-0lgfb6njme {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-0lgfb6njme] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-0lgfb6njme] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-0lgfb6njme] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-0lgfb6njme] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-0lgfb6njme] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-0lgfb6njme] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-0lgfb6njme] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-0lgfb6njme 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-0lgfb6njme] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-0lgfb6njme {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/Admin/Shared/AdminNav.razor.rz.scp.css */
/* Remove the default browser disclosure triangle from details/summary */
details > summary[b-mhlt1g5hmo] {
    list-style: none;
}

details > summary[b-mhlt1g5hmo]::-webkit-details-marker {
    display: none;
}
/* /Components/Pages/Admin/Shared/FlashMessage.razor.rz.scp.css */
.fm[b-hs2dy1pkbx] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px 12px 16px;
    border-radius: 8px;
    margin-bottom: 20px;
    font-size: .875rem;
    font-weight: 500;
    border-left: 4px solid transparent;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .06), 0 0 0 1px rgba(0, 0, 0, .04);
    animation: fm-in-b-hs2dy1pkbx .22s ease;
    position: relative;
}

@keyframes fm-in-b-hs2dy1pkbx {
    from { opacity: 0; transform: translateY(-6px); }
    to   { opacity: 1; transform: translateY(0); }
}

.fm.fm-success[b-hs2dy1pkbx] {
    background: #E3F1EA;
    color: #2F7D5B;
    border-left-color: #2F7D5B;
}

.fm.fm-error[b-hs2dy1pkbx] {
    background: #FBE7E8;
    color: #B5343A;
    border-left-color: #B5343A;
}

.fm.fm-warning[b-hs2dy1pkbx] {
    background: #FCEFD5;
    color: #A66B12;
    border-left-color: #E8961A;
}

.fm.fm-info[b-hs2dy1pkbx] {
    background: #E5EEF9;
    color: #1D5FA3;
    border-left-color: #1D5FA3;
}

.fm-icon[b-hs2dy1pkbx] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
}

.fm-text[b-hs2dy1pkbx] {
    flex: 1;
    line-height: 1.4;
}

.fm-close[b-hs2dy1pkbx] {
    flex-shrink: 0;
    background: none;
    border: none;
    cursor: pointer;
    color: inherit;
    opacity: .45;
    font-size: 1rem;
    line-height: 1;
    padding: 2px 4px;
    display: flex;
    align-items: center;
    border-radius: 4px;
    transition: opacity .15s, background .15s;
}

.fm-close:hover[b-hs2dy1pkbx] {
    opacity: 1;
    background: rgba(0, 0, 0, .06);
}
/* /Components/Pages/CourseDetail.razor.rz.scp.css */
.cd-tab[b-lyregsu0oh] {
    padding: 16px 20px;
    background: none;
    border: none;
    cursor: pointer;
    font-weight: 600;
    font-size: 0.9375rem;
    color: var(--ink-700);
    border-bottom: 3px solid transparent;
    margin-bottom: -1px;
    white-space: nowrap;
}
.cd-tab-active[b-lyregsu0oh] {
    color: var(--brand-primary);
    border-bottom-color: var(--brand-primary);
}
/* /Components/Pages/Home.razor.rz.scp.css */
/* ── Hero ─────────────────────────────────────────────────────── */
.hm-hero[b-jwbgkyzra4] {
    background: linear-gradient(180deg, #F7FAFC 0%, #FFFFFF 100%);
    border-bottom: 1px solid var(--border);
    padding-block: 64px 80px;
}
.hm-hero-grid[b-jwbgkyzra4] {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 64px;
    align-items: center;
}
.hm-hero-accent[b-jwbgkyzra4] { color: var(--brand-primary); }
.hm-hero-caption[b-jwbgkyzra4] { font-size: 0.8125rem; color: var(--ink-500); }

.hm-search[b-jwbgkyzra4] {
    display: grid;
    grid-template-columns: 160px 1fr auto;
    background: #fff; border: 1px solid var(--border); border-radius: 12px;
    padding: 6px; box-shadow: var(--shadow-3); max-width: 620px;
}
.hm-search-select[b-jwbgkyzra4] {
    border: none; border-right: 1px solid var(--border); border-radius: 0;
    height: 52px; padding-left: 16px; font-weight: 600; color: var(--brand-primary);
    /* background-color only (not the `background` shorthand)- the sitewide select{}
       rule in site.css paints the dropdown chevron via background-image, and the
       shorthand would clear that, leaving the select looking like plain text. */
    background-color: transparent;
    font-family: inherit; font-size: 0.9375rem;
}
.hm-search-input[b-jwbgkyzra4] {
    border: none; height: 52px; padding: 0 16px; font-size: 1rem;
    font-family: inherit; outline: none; background: transparent;
}
.hm-search-btn[b-jwbgkyzra4] {
    display: inline-flex; align-items: center; gap: 8px;
    height: 52px; padding: 0 24px; border: none; border-radius: 8px;
    background: var(--brand-primary); color: #fff; font-weight: 600; font-size: 0.9375rem;
    cursor: pointer; transition: background 120ms;
}
.hm-search-btn:hover[b-jwbgkyzra4] { background: var(--brand-primary-hover); }

.hm-hero-popular[b-jwbgkyzra4] { margin-top: 14px; font-size: 0.8125rem; color: var(--ink-500); }
.hm-hero-popular a[b-jwbgkyzra4] { color: var(--brand-primary); }

.hm-hero-stats[b-jwbgkyzra4] { display: flex; gap: 32px; margin-top: 40px; flex-wrap: wrap; }
.hm-hero-stat-n[b-jwbgkyzra4] { font-size: 1.5rem; font-weight: 700; color: var(--ink-900); letter-spacing: -0.01em; }
.hm-hero-stat-l[b-jwbgkyzra4] { font-size: 0.75rem; color: var(--ink-500); text-transform: uppercase; letter-spacing: .04em; font-weight: 600; }

.hm-hero-art[b-jwbgkyzra4] { position: relative; min-height: 520px; }
.hm-hero-img[b-jwbgkyzra4] {
    position: absolute; inset: 0; width: 100%; height: 100%;
    border-radius: 16px; object-fit: cover;
    box-shadow: var(--shadow-4);
}

.hm-float-card[b-jwbgkyzra4] {
    position: absolute; background: #fff; border-radius: 12px;
    box-shadow: var(--shadow-4); border: 1px solid var(--border);
}
.hm-float-bundle[b-jwbgkyzra4] { top: 40px; right: -20px; width: 260px; padding: 18px; transform: rotate(-2deg); }
.hm-float-remind[b-jwbgkyzra4] { bottom: 40px; left: -16px; width: 320px; padding: 24px; }
.hm-float-remind-title[b-jwbgkyzra4] { display:flex; align-items:center; gap:8px; margin-bottom:10px; }
.hm-float-remind-icon[b-jwbgkyzra4] {
    width: 32px; height: 32px; border-radius: 8px; background: var(--brand-accent-soft);
    color: var(--brand-accent); display:flex; align-items:center; justify-content:center;
}
.hm-float-remind-form[b-jwbgkyzra4] { display:flex; gap:8px; }

@media (max-width: 960px) {
    .hm-hero-grid[b-jwbgkyzra4] { grid-template-columns: 1fr; }
    .hm-hero-art[b-jwbgkyzra4] { display: none; }
}

@media (max-width: 560px) {
    .hm-search[b-jwbgkyzra4] {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 10px;
    }
    .hm-search-select[b-jwbgkyzra4] {
        border-right: none;
        border-bottom: 1px solid var(--border);
        height: 44px;
        padding-left: 12px;
    }
    .hm-search-input[b-jwbgkyzra4] { height: 44px; padding: 0 12px; }
    .hm-search-btn[b-jwbgkyzra4] { height: 44px; justify-content: center; }
}

/* ── Pathway picker ───────────────────────────────────────────── */
.hm-path-icon[b-jwbgkyzra4] {
    width: 48px; height: 48px; border-radius: 12px; margin-bottom: 20px;
    display: flex; align-items: center; justify-content: center;
}
.hm-path-cta[b-jwbgkyzra4] { font-weight: 600; font-size: 0.9375rem; display: flex; align-items: center; gap: 6px; }

/* ── Certification quick pick ────────────────────────────────── */
.hm-cert-abbr[b-jwbgkyzra4] { font-size: 2rem; font-weight: 700; letter-spacing: -0.02em; color: var(--brand-primary); }
.hm-cert-stats[b-jwbgkyzra4] {
    display: flex; gap: 16px; font-size: 0.8125rem; color: var(--ink-700);
    padding-top: 16px; margin-top: 16px; border-top: 1px solid var(--border);
}

/* ── Bundle cards ─────────────────────────────────────────────── */
.hm-bundle-price[b-jwbgkyzra4] { font-size: 1.5rem; font-weight: 700; color: var(--ink-900); }
.hm-bundle-meta[b-jwbgkyzra4] { font-size: 0.8125rem; color: var(--ink-500); margin-bottom: 16px; }

/* ── How it works ─────────────────────────────────────────────── */
.hm-steps[b-jwbgkyzra4] { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; position: relative; }
.hm-steps-line[b-jwbgkyzra4] {
    position: absolute; top: 28px; left: 12.5%; right: 12.5%; height: 2px;
    background: repeating-linear-gradient(90deg, var(--border) 0 6px, transparent 6px 12px);
    z-index: 0;
}
.hm-step[b-jwbgkyzra4] { position: relative; z-index: 1; text-align: center; }
.hm-step-n[b-jwbgkyzra4] {
    width: 56px; height: 56px; border-radius: 50%; background: #fff;
    border: 2px solid var(--brand-primary); color: var(--brand-primary);
    margin: 0 auto 16px; display: flex; align-items: center; justify-content: center;
    font-weight: 700; font-size: 1.125rem;
}
@media (max-width: 900px) {
    .hm-steps[b-jwbgkyzra4] { grid-template-columns: 1fr 1fr; row-gap: 32px; }
    .hm-steps-line[b-jwbgkyzra4] { display: none; }
}

/* ── Audio callout ────────────────────────────────────────────── */
.hm-audio-grid[b-jwbgkyzra4] { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
.hm-audio-art[b-jwbgkyzra4] { position: relative; min-height: 280px; display: flex; justify-content: center; }
.hm-audio-feature-list[b-jwbgkyzra4] { display: flex; gap: 16px; flex-wrap: wrap; margin-bottom: 24px; }
.hm-audio-feature[b-jwbgkyzra4] { display: flex; gap: 8px; align-items: center; font-size: 0.875rem; color: var(--ink-900); font-weight: 500; }
@media (max-width: 768px) {
    .hm-audio-grid[b-jwbgkyzra4] { grid-template-columns: 1fr; gap: 24px; }
    .hm-audio-art[b-jwbgkyzra4] { min-height: 200px; }
}

/* ── Bundles vs subscriptions ─────────────────────────────────── */
.hm-compare-grid[b-jwbgkyzra4] { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.hm-compare-card[b-jwbgkyzra4] { padding: 40px; border-radius: 16px; box-shadow: var(--shadow-2); }
.hm-compare-primary[b-jwbgkyzra4] { background: linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-deep) 100%); color: #fff; }
.hm-compare-accent[b-jwbgkyzra4] { background: var(--brand-accent-soft); border: 1px solid var(--brand-accent); }
@media (max-width: 720px) {
    .hm-compare-grid[b-jwbgkyzra4] { grid-template-columns: 1fr; }
}

/* ── Training programs (brand-deep band) ─────────────────────── */
.hm-training-section[b-jwbgkyzra4] { background: var(--brand-deep); color: #fff; }
.hm-training-card[b-jwbgkyzra4] {
    padding: 32px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.12);
    border-radius: 12px; color: #fff; display: block; text-decoration: none;
}
.hm-training-card:hover[b-jwbgkyzra4] { color: #fff; text-decoration: none; }
.hm-training-abbr[b-jwbgkyzra4] { font-size: 2.25rem; font-weight: 700; color: var(--brand-accent-warm); letter-spacing: -0.02em; margin-bottom: 8px; }
.hm-training-stats[b-jwbgkyzra4] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; padding-top: 20px; margin-bottom: 24px; border-top: 1px solid rgba(255,255,255,.12); }
.hm-training-stats-l[b-jwbgkyzra4] { font-size: 0.6875rem; color: rgba(255,255,255,.6); text-transform: uppercase; font-weight: 600; letter-spacing: .04em; }
.hm-training-stats-v[b-jwbgkyzra4] { font-size: 1.25rem; font-weight: 700; }

/* ── Trust block ──────────────────────────────────────────────── */
.hm-trust-stats[b-jwbgkyzra4] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 56px; }
.hm-trust-stat-n[b-jwbgkyzra4] { font-size: 2.5rem; font-weight: 700; color: var(--brand-primary); letter-spacing: -0.02em; margin-bottom: 8px; }
@media (max-width: 720px) {
    .hm-trust-stats[b-jwbgkyzra4] { grid-template-columns: 1fr; }
}

/* ── Testimonial ──────────────────────────────────────────────── */
.hm-testimonial-card[b-jwbgkyzra4] {
    padding: 56px; background: var(--surface-100, #fff); border-left: 4px solid var(--brand-accent);
    display: grid; grid-template-columns: 60px 1fr; gap: 32px; align-items: flex-start;
}
.hm-testimonial-mark[b-jwbgkyzra4] { font-size: 4rem; line-height: .6; color: var(--brand-accent); font-family: Georgia, serif; }
.hm-testimonial-quote[b-jwbgkyzra4] { font-size: 1.375rem; line-height: 1.4; color: var(--ink-900); margin-bottom: 24px; font-weight: 500; }
@media (max-width: 640px) {
    .hm-testimonial-card[b-jwbgkyzra4] { grid-template-columns: 1fr; padding: 32px; }
}

/* ── Newsletter ───────────────────────────────────────────────── */
.hm-newsletter-grid[b-jwbgkyzra4] { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
.hm-newsletter-form[b-jwbgkyzra4] { display: flex; flex-direction: column; gap: 10px; max-width: 480px; }
.hm-newsletter-row[b-jwbgkyzra4] { display: flex; gap: 8px; }
@media (max-width: 720px) {
    .hm-newsletter-grid[b-jwbgkyzra4] { grid-template-columns: 1fr; }
}
/* /Components/Shared/Footer.razor.rz.scp.css */
.ftr[b-ov2zevzery] {
    background: var(--brand-deep);
    color: #CCD6E5;
    margin-top: 4rem;
}
.ftr-inner[b-ov2zevzery] { padding: 64px 32px 32px; }

.ftr-grid[b-ov2zevzery] {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr 1fr;
    gap: 48px;
    margin-bottom: 48px;
}

.ftr-logo-badge[b-ov2zevzery] {
    background: #fff;
    display: inline-block;
    padding: 10px 14px;
    border-radius: 8px;
}
.ftr-blurb[b-ov2zevzery] { margin-top: 16px; font-size: 0.875rem; line-height: 1.6; max-width: 320px; }

.ftr-newsletter[b-ov2zevzery] { margin-top: 20px; padding: 16px; background: rgba(255,255,255,.06); border-radius: 8px; }
.ftr-newsletter-label[b-ov2zevzery] { font-size: 0.8125rem; font-weight: 600; color: #fff; margin-bottom: 10px; }
.ftr-newsletter-form[b-ov2zevzery] { display: flex; gap: 8px; }
.ftr-newsletter-input[b-ov2zevzery] {
    flex: 1; height: 38px; padding: 0 12px;
    background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.15);
    border-radius: 6px; color: #fff; font-size: 0.875rem; font-family: inherit;
}
.ftr-newsletter-input[b-ov2zevzery]::placeholder { color: rgba(255,255,255,.5); }

.ftr-col-title[b-ov2zevzery] {
    font-size: 0.75rem; font-weight: 700; color: #fff;
    text-transform: uppercase; letter-spacing: .08em; margin-bottom: 16px;
}
.ftr-links[b-ov2zevzery] { list-style: none; padding: 0; margin: 0; }
.ftr-links li[b-ov2zevzery] { margin-bottom: 10px; }
.ftr-links a[b-ov2zevzery] { color: #CCD6E5; text-decoration: none; font-size: 0.875rem; }
.ftr-links a:hover[b-ov2zevzery] { color: #fff; }

.ftr-legal[b-ov2zevzery] {
    border-top: 1px solid rgba(255,255,255,.1);
    padding-top: 24px;
    display: flex; justify-content: space-between; align-items: center;
    font-size: 0.8125rem; color: #8898B0; flex-wrap: wrap; gap: 16px;
}
.ftr-legal-links[b-ov2zevzery] { display: flex; gap: 20px; }
.ftr-legal-links a[b-ov2zevzery] { color: #8898B0; text-decoration: none; }
.ftr-legal-links a:hover[b-ov2zevzery] { color: #fff; }

@media (max-width: 900px) {
    .ftr-grid[b-ov2zevzery] { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
    .ftr-grid[b-ov2zevzery] { grid-template-columns: 1fr; }
}
/* /Components/Shared/NewNavBar.razor.rz.scp.css */
/* ── Promo banner ─────────────────────────────────────────────── */
.nnb-promo[b-wnmspui6f3] {
    background: var(--brand-deep);
    color: #fff;
    font-size: 0.875rem;
    padding: 8px 0;
    position: relative;
}
.nnb-promo-inner[b-wnmspui6f3] { text-align: center; }
.nnb-promo-eyebrow[b-wnmspui6f3] { color: var(--brand-accent-warm); font-weight: 600; margin-right: 8px; }
.nnb-promo-link[b-wnmspui6f3] { color: var(--brand-accent-warm); margin-left: 12px; text-decoration: underline; }
.nnb-promo-link:hover[b-wnmspui6f3] { color: var(--brand-accent-warm); }
.nnb-promo-close[b-wnmspui6f3] {
    position: absolute; right: 0; top: 50%; transform: translateY(-50%);
    background: none; border: none; color: rgba(255,255,255,.7); cursor: pointer;
    padding: 4px; line-height: 1;
}
.nnb-promo-close:hover[b-wnmspui6f3] { color: #fff; }

/* Featured-course banner- same shape as the promo banner, distinct accent color
   so the two read as separate things when both are active at once. */
.nnb-promo-course[b-wnmspui6f3] {
    background: var(--brand-accent-warm, #C8B560);
    color: var(--brand-deep, #1F3A5C);
}
.nnb-promo-course .nnb-promo-close[b-wnmspui6f3] { color: rgba(31,58,92,.6); }
.nnb-promo-course .nnb-promo-close:hover[b-wnmspui6f3] { color: var(--brand-deep, #1F3A5C); }

/* Full-width wrapper: spans the whole bar edge-to-edge, just adds side padding
   (unlike .page-container, which also caps max-width and centers). */
.nnb-full-bleed[b-wnmspui6f3] {
    width: 100%;
    box-sizing: border-box;
    padding-inline: 24px;
}

/* ── Header ───────────────────────────────────────────────────── */
.nnb-header[b-wnmspui6f3] {
    position: sticky; top: 0; z-index: 50;
    background: rgba(255,255,255,.97);
    backdrop-filter: blur(8px);
    border-bottom: 1px solid var(--border);
}
.nnb-header-inner[b-wnmspui6f3] {
    height: 72px; display: flex; align-items: center; gap: 24px;
}

@media (max-width: 639px) {
    .nnb-full-bleed[b-wnmspui6f3] { padding-inline: 16px; }
}

/* Logo */
.nnb-logo[b-wnmspui6f3] { display: inline-block; line-height: 0; flex-shrink: 0; }

/* ── Desktop nav ──────────────────────────────────────────────── */
.nnb-desktop-nav[b-wnmspui6f3] {
    display: flex; align-items: center; justify-content: center; flex: 1; gap: 2px;
}

.nnb-nav-item[b-wnmspui6f3] {
    position: relative; display: inline-flex; align-items: center;
    border-radius: 8px; transition: background 120ms;
}
/* Hover/active background lives on the shared item wrapper- not on the link and
   chevron individually- so label + caret always light up as one seamless pill
   instead of two separate rounded rects with a visible seam between them. */
.nnb-nav-item:hover[b-wnmspui6f3],
.nnb-nav-item.nnb-nav-open[b-wnmspui6f3] { background: var(--surface-200); }

.nnb-nav-link[b-wnmspui6f3] {
    display: inline-flex; align-items: center; gap: 3px;
    padding: 10px 12px; font-size: 0.9375rem; font-weight: 500;
    color: var(--ink-900); text-decoration: none; white-space: nowrap;
}
.nnb-nav-link:hover[b-wnmspui6f3] { color: var(--ink-900); text-decoration: none; }

.nnb-chevron-btn[b-wnmspui6f3] {
    background: none; border: none; cursor: pointer; padding: 10px 8px;
    color: var(--ink-700); display: inline-flex; align-items: center;
}
.nnb-chevron-btn svg[b-wnmspui6f3] { transition: transform 160ms; }
.nnb-chevron-btn[aria-expanded="true"] svg[b-wnmspui6f3] { transform: rotate(180deg); }

/* Megamenu- full-bleed under the whole header (not anchored to a single nav item), so it
   can never run past the right edge of the viewport. .nnb-header is position:sticky, which
   establishes the containing block this absolute panel positions against. */
.nnb-megamenu[b-wnmspui6f3] {
    display: none;
    position: absolute; left: 0; right: 0; top: 100%;
    background: #fff;
    border-bottom: 1px solid var(--border);
    box-shadow: 0 16px 40px -12px rgba(15,27,45,.15);
    z-index: 100;
    animation: nnbMegaIn-b-wnmspui6f3 160ms cubic-bezier(.2,.8,.2,1);
}
.nnb-megamenu.nnb-mega-open[b-wnmspui6f3] { display: block; }

@keyframes nnbMegaIn-b-wnmspui6f3 {
    from { opacity: 0; transform: translateY(-6px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* Shrink-to-fit + centered: each menu is only as wide as its own content needs (they
   aren't all the same width), rather than stretching edge-to-edge like .nnb-full-bleed.
   Capped at 80rem to match .page-container, so it never runs wider than the page content
   it sits above even on ultra-wide screens. */
.nnb-mega-grid[b-wnmspui6f3] {
    display: grid; gap: 32px;
    padding: 28px 24px 24px;
    width: fit-content; max-width: min(100%, 80rem);
    margin-inline: auto;
    box-sizing: border-box;
}
.nnb-mega-grid-3[b-wnmspui6f3] { grid-template-columns: 1fr 1fr 1.1fr; }

.nnb-mega-heading[b-wnmspui6f3] {
    font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.08em;
    text-transform: uppercase; color: var(--ink-500); margin-bottom: 12px;
}
.nnb-mega-col[b-wnmspui6f3] { display: flex; flex-direction: column; gap: 2px; }

.nnb-mega-link[b-wnmspui6f3] {
    display: flex; align-items: baseline; gap: 10px;
    padding: 7px 8px; border-radius: 8px;
    font-size: 0.9rem; font-weight: 500; color: var(--ink-900);
    text-decoration: none; transition: background 100ms;
}
.nnb-mega-link:hover[b-wnmspui6f3] { background: var(--surface-200); text-decoration: none; color: var(--ink-900); }
.nnb-mega-link--primary[b-wnmspui6f3] { color: var(--brand-primary); font-weight: 600; }

.nnb-mega-text[b-wnmspui6f3] { font-size: 0.875rem; color: var(--ink-700); line-height: 1.55; margin: 4px 0 0; }

.nnb-cert-abbr[b-wnmspui6f3] {
    font-size: 0.75rem; font-weight: 700; color: var(--brand-primary);
    min-width: 52px; flex-shrink: 0;
}
.nnb-meta[b-wnmspui6f3] { font-size: 0.75rem; color: var(--ink-500); margin-left: auto; white-space: nowrap; }

.nnb-mega-footer[b-wnmspui6f3] {
    display: inline-block; margin-top: 10px; padding: 6px 8px;
    font-size: 0.875rem; font-weight: 600; color: var(--brand-primary); text-decoration: none;
}
.nnb-mega-footer:hover[b-wnmspui6f3] { text-decoration: underline; color: var(--brand-primary-hover); }

/* Feature card */
.nnb-mega-feature[b-wnmspui6f3] {
    background: var(--brand-primary-soft); border-radius: 12px; padding: 20px;
    display: flex; flex-direction: column; gap: 8px;
}
.nnb-mega-feature--accent[b-wnmspui6f3] { background: var(--brand-accent-soft); }

.nnb-feature-eyebrow[b-wnmspui6f3] {
    font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.08em;
    text-transform: uppercase; color: var(--brand-primary);
}
.nnb-feature-title[b-wnmspui6f3] { font-size: 1rem; font-weight: 700; color: var(--ink-900); line-height: 1.3; }
.nnb-feature-body[b-wnmspui6f3] { font-size: 0.875rem; color: var(--ink-700); line-height: 1.5; margin: 0; }
.nnb-feature-cta[b-wnmspui6f3] {
    display: inline-flex; align-items: center;
    margin-top: 8px; padding: 9px 16px;
    background: var(--brand-primary); color: #fff;
    font-size: 0.875rem; font-weight: 600; border-radius: 8px;
    text-decoration: none; align-self: flex-start;
    transition: background 120ms;
}
.nnb-feature-cta:hover[b-wnmspui6f3] { background: var(--brand-primary-hover); color: #fff; text-decoration: none; }

/* ── Header actions ───────────────────────────────────────────── */
.nnb-header-actions[b-wnmspui6f3] { display: flex; align-items: center; gap: 6px; flex-shrink: 0; }

.nnb-icon-btn[b-wnmspui6f3] {
    width: 40px; height: 40px; border-radius: 8px;
    display: inline-flex; align-items: center; justify-content: center;
    color: var(--ink-700); text-decoration: none;
    transition: background 120ms;
}
.nnb-icon-btn:hover[b-wnmspui6f3] { background: var(--surface-200); }

.nnb-account-btn[b-wnmspui6f3] {
    display: inline-flex; align-items: center;
    height: 38px; padding: 0 16px; border-radius: 8px;
    font-size: 0.875rem; font-weight: 600;
    background: var(--brand-primary); color: #fff;
    text-decoration: none; white-space: nowrap;
    transition: background 120ms;
}
.nnb-account-btn:hover[b-wnmspui6f3] { background: var(--brand-primary-hover); color: #fff; text-decoration: none; }

.nnb-secondary-btn[b-wnmspui6f3] {
    background: transparent; color: var(--brand-primary);
    border: 1.5px solid var(--brand-primary);
}
.nnb-secondary-btn:hover[b-wnmspui6f3] { background: var(--brand-primary-soft); color: var(--brand-primary-hover); }

.nnb-mobile-toggle[b-wnmspui6f3] {
    display: none; width: 40px; height: 40px; border-radius: 8px;
    background: none; border: none; cursor: pointer;
    align-items: center; justify-content: center; color: var(--ink-900);
}

/* ── Mobile drawer ────────────────────────────────────────────── */
.nnb-mobile-backdrop[b-wnmspui6f3] {
    display: none; position: fixed; inset: 0;
    background: rgba(15,27,45,.5); z-index: 200;
}
.nnb-mobile-backdrop.nnb-backdrop-open[b-wnmspui6f3] { display: block; animation: nnbFadeIn-b-wnmspui6f3 200ms; }

.nnb-mobile-drawer[b-wnmspui6f3] {
    position: fixed; top: 0; right: 0; bottom: 0;
    width: 92%; max-width: 380px;
    background: #fff; z-index: 201;
    display: flex; flex-direction: column;
    transform: translateX(100%); transition: transform 240ms cubic-bezier(.2,.8,.2,1);
}
.nnb-mobile-drawer.nnb-drawer-open[b-wnmspui6f3] { transform: translateX(0); }

.nnb-mobile-header[b-wnmspui6f3] {
    display: flex; align-items: center; justify-content: space-between;
    padding: 16px 20px; border-bottom: 1px solid var(--border);
}
.nnb-mobile-close[b-wnmspui6f3] {
    width: 40px; height: 40px; display: flex; align-items: center; justify-content: center;
    background: none; border: none; cursor: pointer; color: var(--ink-700); border-radius: 8px;
}
.nnb-mobile-close:hover[b-wnmspui6f3] { background: var(--surface-200); }

.nnb-mobile-nav[b-wnmspui6f3] { flex: 1; overflow-y: auto; padding: 8px 0; }
.nnb-mobile-link[b-wnmspui6f3] {
    display: block; padding: 14px 24px;
    font-size: 1rem; font-weight: 500; color: var(--ink-900);
    text-decoration: none; border-left: 3px solid transparent;
}
.nnb-mobile-link:hover[b-wnmspui6f3] { background: var(--brand-primary-soft); border-left-color: var(--brand-primary); color: var(--brand-primary); text-decoration: none; }

.nnb-mobile-footer[b-wnmspui6f3] { padding: 20px; border-top: 1px solid var(--border); }
.nnb-mobile-phone[b-wnmspui6f3] { text-align: center; margin: 12px 0 0; font-size: 0.8125rem; color: var(--ink-500); }
.nnb-mobile-phone a[b-wnmspui6f3] { font-weight: 600; color: var(--brand-primary); }

@keyframes nnbFadeIn-b-wnmspui6f3 {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* ── Responsive ───────────────────────────────────────────────── */
.nnb-hide-mobile[b-wnmspui6f3] { }
.nnb-mobile-only[b-wnmspui6f3] { display: none; }

@media (max-width: 1023px) {
    .nnb-desktop-nav[b-wnmspui6f3] { display: none; }
    .nnb-hide-mobile[b-wnmspui6f3] { display: none !important; }
    .nnb-mobile-only[b-wnmspui6f3] { display: flex !important; }
    .nnb-mobile-toggle[b-wnmspui6f3] { display: inline-flex; }
    /* Megamenu panels live at header level (not inside .nnb-desktop-nav anymore), so
       hiding the desktop nav no longer hides them- hide explicitly. Mobile uses the
       separate drawer nav instead. */
    .nnb-megamenu[b-wnmspui6f3] { display: none !important; }
}
/* /Components/Shared/OldNavBar.razor.rz.scp.css */
/*
 * OldNavBar- behavior CSS (JS-driven show/hide) + top bar trapezoid.
 * All other visual styles are Tailwind utility classes in OldNavBar.razor.
 */

/* ── Top bar gold trapezoid ──────────────────────────────────── */
nav.aaa-top-bar[b-mzbdbd3f39] {
    position: relative;
    z-index: 2;
}

/* Gold rectangle: starts 10px down, covers right 41%, overflows below the bar */
nav.aaa-top-bar[b-mzbdbd3f39]::before {
    content: '';
    background: #A8AD00;
    position: absolute;
    right: 0;
    top: 10px;
    width: 41%;
    height: 42px;
    z-index: 0;
}

/* Border-triangle that creates the angled left edge of the trapezoid */
nav.aaa-top-bar[b-mzbdbd3f39]::after {
    content: "";
    position: absolute;
    right: 41%;
    top: 10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 21px 10px;
    border-top-color: transparent;
    border-left-color: transparent;
    border-right-color: #A8AD00;
    border-bottom-color: #A8AD00;
    z-index: 0;
}

.aaa-inner[b-mzbdbd3f39]          { padding: 10px 0; position: relative; z-index: 1; }
.aaa-inner.aaa-angled[b-mzbdbd3f39] { top: 11px; }

/* Hide trapezoid on mobile- layout stacks so the angled shape makes no sense */
@media (max-width: 767px) {
    nav.aaa-top-bar[b-mzbdbd3f39]::before  { display: none !important; width: 0 !important; }
    nav.aaa-top-bar[b-mzbdbd3f39]::after   { display: none !important; border-width: 0 !important; }
    .aaa-inner.aaa-angled[b-mzbdbd3f39]    { top: 0; padding-bottom: 10px; }
}

/* ── Mobile collapse (JS adds/removes .open) ─────────────────── */
.aaa-nav-collapse[b-mzbdbd3f39]            { display: none; }

/* Mobile open: drops absolutely below the nav bar */
@media (max-width: 767px) {
    .aaa-nav-collapse.open[b-mzbdbd3f39] {
        display: block;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: #fff;
        border-top: 1px solid #dee2e6;
        box-shadow: 0 4px 8px rgba(0,0,0,0.12);
        padding: 0.5rem 1rem 1rem;
        z-index: 1000;
    }
}

/* Desktop: always visible as flex row */
@media (min-width: 768px) {
    .aaa-nav-collapse[b-mzbdbd3f39]        { display: flex !important; }
    .aaa-toggler[b-mzbdbd3f39]             { display: none !important; }
}

/* Dropdown panel */
.aaa-dropdown[b-mzbdbd3f39] {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 230px;
    z-index: 1000;
}
.aaa-has-drop.open > .aaa-dropdown[b-mzbdbd3f39] { display: block; }

/* On mobile the dropdown sits inline (no absolute positioning) */
@media (max-width: 767px) {
    .aaa-dropdown[b-mzbdbd3f39] {
        position: static;
    }
}

/* Rotate chevron when dropdown is open */
.aaa-has-drop.open > a .aaa-chevron[b-mzbdbd3f39] { transform: rotate(180deg); }
/* /Components/Shared/PreApprovedLogoStrip.razor.rz.scp.css */
.pals-strip[b-j5l6s35pns] { display:flex; flex-wrap:wrap; gap:32px; align-items:center; justify-content:center; }
.pals-item[b-j5l6s35pns] {
    display: flex; flex-direction: column; align-items: center; gap: 6px;
    text-decoration: none; text-align: center;
}
.pals-img[b-j5l6s35pns] { height: 52px; max-width: 160px; width: auto; object-fit: contain; }
.pals-caption[b-j5l6s35pns] { font-size: 0.6875rem; line-height: 1.35; color: var(--ink-500); }
/* /Components/Shared/SectionHeader.razor.rz.scp.css */
.section-header[b-lnu6hbzpo8] { margin-bottom: 32px; }

.section-header-center[b-lnu6hbzpo8] {
    text-align: center;
    max-width: 720px;
    margin-inline: auto;
    margin-bottom: 32px;
}
