/* /Layout/MainLayout.razor.rz.scp.css */
.page[b-a1fjl9e6t6] {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.app-main[b-a1fjl9e6t6] {
    flex: 1;
    min-width: 0;
}

#blazor-error-ui[b-a1fjl9e6t6] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-a1fjl9e6t6] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Layout/NavMenu.razor.rz.scp.css */
/* Sticky, glassy header */
.top-navbar[b-en42ddl3kr] {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: color-mix(in srgb, var(--surface), transparent 0%);
    backdrop-filter: blur(6px);
    border-bottom: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
}

    /* Make the navbar content behave like the provided ".container + .nav" pattern */
    .top-navbar .container-fluid[b-en42ddl3kr] {
        width: min(1100px, 92vw);
        margin: 0 auto;
        padding: 12px 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 24px;
        flex-wrap: wrap;
    }

.navbar-brand[b-en42ddl3kr] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 700;
    font-size: 18px;
    color: var(--ink);
    text-decoration: none;
}

    .navbar-brand:hover[b-en42ddl3kr],
    .navbar-brand:focus-visible[b-en42ddl3kr] {
        color: var(--ink);
        text-decoration: none;
        outline: none;
    }

/* Mobile toggle */
.navbar-toggler[b-en42ddl3kr] {
    appearance: none;
    cursor: pointer;
    width: 3rem;
    height: 2.5rem;
    border-radius: 999px;
    border: 1px solid color-mix(in srgb, var(--muted), transparent 55%);
    background-color: color-mix(in srgb, var(--surface), transparent 0%);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2831, 41, 55, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 1.5rem;
}

    .navbar-toggler:checked[b-en42ddl3kr] {
        background-color: color-mix(in srgb, var(--primary), transparent 90%);
    }

@media (prefers-color-scheme: dark) {
    .navbar-toggler[b-en42ddl3kr] {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28229, 231, 235, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    }
}

/* Collapsible menu container */
.nav-menu[b-en42ddl3kr] {
    display: none;
    flex-basis: 100%;
    width: 100%;
}

.navbar-toggler:checked ~ .nav-menu[b-en42ddl3kr] {
    display: block;
}

.nav-menu .navbar-nav[b-en42ddl3kr] {
    list-style: none;
    margin: 0;
    padding: 10px 0 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
    border-top: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
}

.nav-item[b-en42ddl3kr] {
    font-size: 0.95rem;
}

    /* NavLink renders <a class="nav-link">; ::deep is required to style it from scoped CSS */
    .nav-item[b-en42ddl3kr]  .nav-link {
        color: var(--ink);
        text-decoration: none;
        padding: 8px 10px;
        border-radius: 8px;
        display: flex;
        align-items: center;
        gap: 10px;
        width: 100%;
    }

        .nav-item[b-en42ddl3kr]  .nav-link:hover,
        .nav-item[b-en42ddl3kr]  .nav-link:focus-visible {
            background: color-mix(in srgb, var(--primary), transparent 90%);
            outline: none;
        }

    .nav-item[b-en42ddl3kr]  a.active {
        background: color-mix(in srgb, var(--primary), transparent 85%);
        color: var(--primary);
    }

    /* Bootstrap Icons sizing/alignment (no manual SVG masks needed) */
    .nav-item[b-en42ddl3kr]  .nav-link .bi {
        font-size: 1.25rem;
        line-height: 1;
        flex: 0 0 auto;
    }

/* Desktop layout */
@media (min-width: 641px) {
    .top-navbar .container-fluid[b-en42ddl3kr] {
        flex-wrap: nowrap;
    }

    .navbar-toggler[b-en42ddl3kr] {
        display: none;
    }

    .nav-menu[b-en42ddl3kr] {
        display: block;
        flex-basis: auto;
        width: auto;
    }

        .nav-menu .navbar-nav[b-en42ddl3kr] {
            border-top: none;
            padding: 0;
            flex-direction: row;
            align-items: center;
            gap: 18px;
        }

    .nav-item[b-en42ddl3kr]  .nav-link {
        width: auto;
    }
}
/* /Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-n2eu9hyznq],
.components-reconnect-repeated-attempt-visible[b-n2eu9hyznq],
.components-reconnect-failed-visible[b-n2eu9hyznq],
.components-pause-visible[b-n2eu9hyznq],
.components-resume-failed-visible[b-n2eu9hyznq],
.components-rejoining-animation[b-n2eu9hyznq] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-n2eu9hyznq],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-n2eu9hyznq],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-n2eu9hyznq],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-n2eu9hyznq],
#components-reconnect-modal.components-reconnect-retrying[b-n2eu9hyznq],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-n2eu9hyznq],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-n2eu9hyznq],
#components-reconnect-modal.components-reconnect-failed[b-n2eu9hyznq],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-n2eu9hyznq] {
    display: block;
}


#components-reconnect-modal[b-n2eu9hyznq] {
    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-n2eu9hyznq 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-n2eu9hyznq 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-n2eu9hyznq 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-n2eu9hyznq]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-n2eu9hyznq 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-n2eu9hyznq {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-n2eu9hyznq {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-n2eu9hyznq {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-n2eu9hyznq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-n2eu9hyznq] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-n2eu9hyznq] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-n2eu9hyznq] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-n2eu9hyznq] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-n2eu9hyznq] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-n2eu9hyznq] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-n2eu9hyznq 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-n2eu9hyznq] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-n2eu9hyznq {
    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;
    }
}
/* /Layout/SiteFooter.razor.rz.scp.css */
.site-footer[b-5rvnh6f067] {
    position: relative;
    overflow: hidden;
    margin-top: 48px;
    padding: 36px 0 18px;
    background: color-mix(in srgb, var(--surface), var(--bg) 35%);
    border-top: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
}

    .site-footer[b-5rvnh6f067]::before {
        content: "";
        position: absolute;
        inset: -80px;
        pointer-events: none;
        background: radial-gradient(900px 520px at 15% 0%, color-mix(in srgb, var(--primary), transparent 86%), transparent 70%), radial-gradient(720px 460px at 85% 10%, color-mix(in srgb, var(--accent), transparent 90%), transparent 70%);
        opacity: 0.9;
    }

    .site-footer > *[b-5rvnh6f067] {
        position: relative; /* above the decoration */
    }

/* Brand */
.brand-link[b-5rvnh6f067] {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
}

.mark[b-5rvnh6f067] {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    display: inline-grid;
    place-items: center;
    background: radial-gradient(26px 26px at 30% 30%, color-mix(in srgb, var(--accent), transparent 0%), transparent 60%), linear-gradient(135deg, color-mix(in srgb, var(--primary), transparent 0%), color-mix(in srgb, var(--teal), transparent 0%));
    color: white;
    font-weight: 950;
    letter-spacing: 0.05em;
    font-size: 13px;
    box-shadow: var(--shadow);
}

.brand-name[b-5rvnh6f067] {
    font-weight: 900;
    color: var(--ink);
    font-size: 16px;
}

.tagline[b-5rvnh6f067] {
    margin: 12px 0 0;
    color: var(--muted);
    max-width: 48ch;
}

.contact[b-5rvnh6f067] {
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.contact-link[b-5rvnh6f067] {
    color: var(--ink);
    text-decoration: none;
    font-weight: 700;
}

    .contact-link:hover[b-5rvnh6f067],
    .contact-link:focus-visible[b-5rvnh6f067] {
        text-decoration: underline;
        outline: none;
    }

.dot[b-5rvnh6f067] {
    color: color-mix(in srgb, var(--muted), transparent 10%);
}

/* Bottom row */
.footer-bottom[b-5rvnh6f067] {
    margin-top: 22px;
    padding-top: 14px;
    border-top: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
}

.copyright[b-5rvnh6f067] {
    margin: 0;
    color: var(--muted);
    font-size: 13px;
}

.bottom-links[b-5rvnh6f067] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    font-size: 13px;
}

    .bottom-links a[b-5rvnh6f067] {
        color: var(--muted);
        text-decoration: none;
        font-weight: 700;
    }

        .bottom-links a:hover[b-5rvnh6f067],
        .bottom-links a:focus-visible[b-5rvnh6f067] {
            color: var(--ink);
            text-decoration: underline;
            outline: none;
        }

/* Responsive */
@media (max-width: 560px) {
    .footer-bottom[b-5rvnh6f067] {
        justify-content: center;
        text-align: center;
    }
}
/* /Pages/About.razor.rz.scp.css */
.about[b-yfepqa3dks] {
    overflow-x: clip;
}

/* ---------------- HERO (CENTERED) ---------------- */
.hero[b-yfepqa3dks] {
    position: relative;
    padding: clamp(46px, 7vw, 96px) 0 42px;
    text-align: center;
}

    .hero[b-yfepqa3dks]::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background: radial-gradient(900px 520px at 50% 0%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(720px 460px at 82% 38%, color-mix(in srgb, var(--accent), transparent 86%), transparent 70%);
        opacity: 0.95;
    }

.hero-inner[b-yfepqa3dks] {
    position: relative; /* above decoration */
    max-width: 85ch;
    margin: 0 auto;
    display: grid;
    justify-items: center;
    gap: 12px;
}

.kicker[b-yfepqa3dks] {
    color: var(--muted);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0;
}

.lede[b-yfepqa3dks] {
    font-size: clamp(16px, 2.5vw, 20px);
    color: var(--muted);
    max-width: 60ch;
    margin: 0;
}

.pill-row[b-yfepqa3dks] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    margin-top: 4px;
}

/* Pills should be grey */
.pill[b-yfepqa3dks] {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--muted), transparent 88%);
    color: var(--muted);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 55%);
    font-weight: 700;
    font-size: 13px;
}

.cta-row[b-yfepqa3dks] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    align-items: center;
    margin-top: 10px;
}

    .cta-row.center[b-yfepqa3dks] {
        justify-content: center;
    }

/* Buttons (scoped to this page) */
.btn[b-yfepqa3dks] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 999px;
    border: none;
    text-decoration: none;
    font-weight: 650;
    line-height: 1.1;
    cursor: pointer;
    user-select: none;
}

    .btn.primary[b-yfepqa3dks] {
        background: var(--primary);
        color: white;
        box-shadow: var(--shadow);
    }

    .btn.secondary[b-yfepqa3dks] {
        background: color-mix(in srgb, var(--primary), transparent 88%);
        color: var(--primary);
        border: 1px solid color-mix(in srgb, var(--primary), transparent 65%);
        box-shadow: none;
    }

    .btn:hover[b-yfepqa3dks] {
        filter: brightness(0.98);
    }

    .btn:focus-visible[b-yfepqa3dks] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
    }

@media (max-width: 520px) {
    .cta-row[b-yfepqa3dks] {
        flex-direction: column;
        align-items: stretch;
    }

        .cta-row .btn[b-yfepqa3dks] {
            width: 100%;
        }
}

/* ---------------- SECTIONS / SHARED BLOCKS ---------------- */
.section[b-yfepqa3dks] {
    padding: 46px 0;
}

.section-alt[b-yfepqa3dks] {
    background: color-mix(in srgb, var(--primary), transparent 96%);
    border-top: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
    border-bottom: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
}

.section-head[b-yfepqa3dks] {
    margin-bottom: 18px;
    max-width: 78ch;
}

/* Badges (Mission / Origin / Values / Credibility) should be grey */
.badge[b-yfepqa3dks] {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    background: color-mix(in srgb, var(--muted), transparent 88%);
    color: var(--muted);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 55%);
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 13px;
}

/* Utility */
.muted[b-yfepqa3dks] {
    color: var(--muted);
}

/* Lists */
ul.check[b-yfepqa3dks] {
    list-style: none;
    padding: 0;
    margin: 12px 0 0;
    display: grid;
    gap: 8px;
}

    ul.check li[b-yfepqa3dks]::before {
        content: "✔";
        color: var(--primary);
        margin-right: 8px;
        font-weight: 800;
    }

/* Card base */
.card[b-yfepqa3dks],
.story-card[b-yfepqa3dks],
.value[b-yfepqa3dks] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

    .card p[b-yfepqa3dks],
    .story-card p[b-yfepqa3dks],
    .value p[b-yfepqa3dks] {
        color: var(--muted);
    }

        .card p.small[b-yfepqa3dks],
        .story-card p.small[b-yfepqa3dks],
        .value p.small[b-yfepqa3dks] {
            margin-bottom: 0;
        }

/* ---------------- MISSION GRID ---------------- */
.mission-grid[b-yfepqa3dks] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

@media (max-width: 900px) {
    .mission-grid[b-yfepqa3dks] {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 640px) {
    .mission-grid[b-yfepqa3dks] {
        grid-template-columns: 1fr;
    }
}

/* ---------------- STORY ---------------- */
.story[b-yfepqa3dks] {
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 16px;
    align-items: start;
}

.story-card.story-wide[b-yfepqa3dks] {
    grid-column: 1 / -1;
}

.steps[b-yfepqa3dks] {
    list-style: none;
    padding: 0;
    margin: 12px 0 0;
    display: grid;
    gap: 10px;
}

    .steps li[b-yfepqa3dks] {
        padding: 10px 12px;
        border-radius: 12px;
        background: color-mix(in srgb, var(--primary), transparent 95%);
        border: 1px solid color-mix(in srgb, var(--muted), transparent 78%);
        color: var(--ink);
    }

.story-card p.small[b-yfepqa3dks] {
    margin-top: 12px;
}

.inline-cta[b-yfepqa3dks] {
    margin-top: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    background: color-mix(in srgb, var(--surface), transparent 0%);
    border-radius: var(--radius);
    padding: 14px 16px;
    border: 1px dashed color-mix(in srgb, var(--muted), transparent 60%);
}

.inline-cta-text[b-yfepqa3dks] {
    display: grid;
    gap: 4px;
}

@media (max-width: 980px) {
    .story[b-yfepqa3dks] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .inline-cta[b-yfepqa3dks] {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* ---------------- VALUES GRID ---------------- */
.values-grid[b-yfepqa3dks] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

@media (max-width: 700px) {
    .values-grid[b-yfepqa3dks] {
        grid-template-columns: 1fr;
    }
}

/* ---------------- CREDIBILITY GRID ---------------- */
.cred-grid[b-yfepqa3dks] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

/* --- CREDIBILITY GRID: pin the small muted line to the bottom --- */
.cred-grid[b-yfepqa3dks] {
    align-items: stretch; /* default for grid, but explicit is fine */
}

    .cred-grid .card[b-yfepqa3dks] {
        display: flex;
        flex-direction: column;
        height: 100%;
    }

        .cred-grid .card p.small.muted[b-yfepqa3dks] {
            margin-top: auto; /* pushes it to the bottom */
            padding-top: 12px; /* keeps some breathing room above it */
        }

@media (max-width: 900px) {
    .cred-grid[b-yfepqa3dks] {
        grid-template-columns: 1fr;
    }
}

/* Callout */
.callout[b-yfepqa3dks] {
    margin-top: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    background: var(--surface);
    padding: 14px 16px;
    border-radius: var(--radius);
    border: 1px dashed color-mix(in srgb, var(--muted), transparent 60%);
}

    .callout p[b-yfepqa3dks] {
        margin: 6px 0 0;
        color: var(--muted);
    }

@media (max-width: 640px) {
    .callout[b-yfepqa3dks] {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* ---------------- FINAL CTA ---------------- */
.final-cta[b-yfepqa3dks] {
    padding: 56px 0;
}

.final-box[b-yfepqa3dks] {
    position: relative;
    overflow: hidden;
    background: var(--surface);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    padding: clamp(22px, 4vw, 34px);
    text-align: center;
}

    /* Guard against global overrides that may force left alignment */
    .final-box h2[b-yfepqa3dks],
    .final-box p[b-yfepqa3dks] {
        text-align: center !important;
    }

    /* Extra guard for the lede line called out in notes */
    .final-box .final-lede[b-yfepqa3dks] {
        text-align: center !important;
        margin-left: auto;
        margin-right: auto;
    }

    .final-box[b-yfepqa3dks]::before {
        content: "";
        position: absolute;
        inset: -2px;
        pointer-events: none;
        background: radial-gradient(650px 340px at 25% 10%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(500px 320px at 85% 20%, color-mix(in srgb, var(--accent), transparent 84%), transparent 70%);
        opacity: 0.9;
    }

    .final-box > *[b-yfepqa3dks] {
        position: relative;
    }
/* /Pages/ExtraPages/Contact.razor.rz.scp.css */
/* Help anchor jumps land below the sticky nav */
#form[b-o0pz8ptxhq] {
    scroll-margin-top: 5rem;
}

.contact-page[b-o0pz8ptxhq] {
    overflow-x: clip;
}

/* ---------------- HERO (CENTERED) ---------------- */
.hero[b-o0pz8ptxhq] {
    position: relative;
    padding: clamp(46px, 7vw, 96px) 0 42px;
    text-align: center;
}

    .hero[b-o0pz8ptxhq]::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background: radial-gradient(900px 520px at 50% 0%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(720px 460px at 82% 38%, color-mix(in srgb, var(--accent), transparent 86%), transparent 70%);
        opacity: 0.95;
    }

.hero-inner[b-o0pz8ptxhq] {
    position: relative; /* above decoration */
    max-width: 80ch;
    margin: 0 auto;
    display: grid;
    justify-items: center;
    gap: 12px;
}

.kicker[b-o0pz8ptxhq] {
    color: var(--muted);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0;
}

.lede[b-o0pz8ptxhq] {
    font-size: clamp(16px, 2.5vw, 20px);
    color: var(--muted);
    max-width: 60ch;
    margin: 0;
}

.fineprint[b-o0pz8ptxhq] {
    margin: 6px 0 0;
    font-size: 14px;
    color: var(--muted);
}

.cta-row[b-o0pz8ptxhq] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    align-items: center;
    margin-top: 10px;
}

/* Buttons (scoped to this page) */
.btn[b-o0pz8ptxhq] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 999px;
    border: none;
    text-decoration: none;
    font-weight: 650;
    line-height: 1.1;
    cursor: pointer;
    user-select: none;
}

    .btn.primary[b-o0pz8ptxhq] {
        background: var(--primary);
        color: white;
        box-shadow: var(--shadow);
    }

    .btn.secondary[b-o0pz8ptxhq] {
        background: color-mix(in srgb, var(--primary), transparent 88%);
        color: var(--primary);
        border: 1px solid color-mix(in srgb, var(--primary), transparent 65%);
        box-shadow: none;
    }

    .btn.tertiary[b-o0pz8ptxhq] {
        background: transparent;
        color: var(--ink);
        border: 1px solid color-mix(in srgb, var(--muted), transparent 45%);
        box-shadow: none;
    }

    .btn:hover[b-o0pz8ptxhq] {
        filter: brightness(0.98);
    }

    .btn:focus-visible[b-o0pz8ptxhq] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
    }

/* Stack hero CTAs on small screens */
@media (max-width: 520px) {
    .cta-row[b-o0pz8ptxhq] {
        flex-direction: column;
        align-items: stretch;
    }

        .cta-row .btn[b-o0pz8ptxhq] {
            width: 100%;
        }
}

/* ---------------- SECTIONS / SHARED ---------------- */
.section[b-o0pz8ptxhq] {
    padding: 46px 0;
}

.section-alt[b-o0pz8ptxhq] {
    background: color-mix(in srgb, var(--primary), transparent 96%);
    border-top: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
    border-bottom: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
}

.section-head[b-o0pz8ptxhq] {
    margin-bottom: 18px;
    max-width: 78ch;
}

.badge[b-o0pz8ptxhq] {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    background: color-mix(in srgb, var(--primary), transparent 88%);
    color: var(--primary);
    border: 1px solid color-mix(in srgb, var(--primary), transparent 60%);
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 13px;
}

.small[b-o0pz8ptxhq] {
    font-size: 14px;
    color: var(--muted);
}

.muted[b-o0pz8ptxhq] {
    color: var(--muted);
}

/* ---------------- QUICK ROUTES GRID ---------------- */
.grid[b-o0pz8ptxhq] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.card[b-o0pz8ptxhq] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

.text-link[b-o0pz8ptxhq] {
    display: inline-flex;
    margin-top: 10px;
    color: var(--primary);
    font-weight: 800;
    text-decoration: none;
}

    .text-link:hover[b-o0pz8ptxhq],
    .text-link:focus-visible[b-o0pz8ptxhq] {
        text-decoration: underline;
        outline: none;
    }

.note[b-o0pz8ptxhq] {
    margin-top: 18px;
    background: color-mix(in srgb, var(--accent), transparent 85%);
    color: #8B5E00;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid color-mix(in srgb, var(--accent), transparent 65%);
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: baseline;
}

@media (max-width: 900px) {
    .grid[b-o0pz8ptxhq] {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 640px) {
    .grid[b-o0pz8ptxhq] {
        grid-template-columns: 1fr;
    }
}

/* ---------------- FORM ---------------- */
.form-wrap[b-o0pz8ptxhq] {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 16px;
    align-items: start;
}

.form-grid[b-o0pz8ptxhq] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.field[b-o0pz8ptxhq] {
    display: grid;
    gap: 6px;
}

    .field.full[b-o0pz8ptxhq] {
        grid-column: 1 / -1;
    }

label[b-o0pz8ptxhq] {
    font-weight: 800;
    color: var(--ink);
}

.input[b-o0pz8ptxhq] {
    width: 100%;
    padding: 12px;
    border: 1px solid color-mix(in srgb, var(--muted), transparent 60%);
    background: var(--surface);
    border-radius: var(--radius-sm);
    color: var(--ink);
}

    .input:focus[b-o0pz8ptxhq] {
        outline: 2px solid color-mix(in srgb, var(--accent), transparent 15%);
        outline-offset: 2px;
    }

.textarea[b-o0pz8ptxhq] {
    resize: vertical;
}

.hint[b-o0pz8ptxhq] {
    font-size: 13px;
    color: var(--muted);
}

.actions[b-o0pz8ptxhq] {
    margin-top: 14px;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

.privacy[b-o0pz8ptxhq] {
    margin-top: 12px;
}

/* Validation summary */
.validation[b-o0pz8ptxhq] {
    margin: 0 0 12px;
    padding: 12px 14px;
    border-radius: 12px;
    background: color-mix(in srgb, var(--accent), transparent 88%);
    border: 1px solid color-mix(in srgb, var(--accent), transparent 65%);
    color: #8B5E00;
}

/* Right-side panel */
.direct[b-o0pz8ptxhq] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

    .direct a[b-o0pz8ptxhq] {
        font-weight: 800;
    }

@media (max-width: 980px) {
    .form-wrap[b-o0pz8ptxhq] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .form-grid[b-o0pz8ptxhq] {
        grid-template-columns: 1fr;
    }

    .actions .btn[b-o0pz8ptxhq] {
        width: 100%;
    }
}
/* /Pages/ExtraPages/Events.razor.rz.scp.css */
/* Help anchor jumps land below the sticky nav */
#upcoming[b-gmp852lxxw], #host[b-gmp852lxxw] {
    scroll-margin-top: 5rem;
}

.events-page[b-gmp852lxxw] {
    overflow-x: clip;
}

/* ---------------- HERO (CENTERED) ---------------- */
.hero[b-gmp852lxxw] {
    position: relative;
    padding: clamp(46px, 7vw, 96px) 0 42px;
    text-align: center;
}

    .hero[b-gmp852lxxw]::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background: radial-gradient(900px 520px at 50% 0%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(720px 460px at 82% 38%, color-mix(in srgb, var(--accent), transparent 86%), transparent 70%);
        opacity: 0.95;
    }

.hero-inner[b-gmp852lxxw] {
    position: relative; /* above decoration */
    max-width: 90ch;
    margin: 0 auto;
    display: grid;
    justify-items: center;
    gap: 12px;
}

.kicker[b-gmp852lxxw] {
    color: var(--muted);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0;
}

.lede[b-gmp852lxxw] {
    font-size: clamp(16px, 2.5vw, 20px);
    color: var(--muted);
    max-width: 70ch;
    margin: 0;
}

.fineprint[b-gmp852lxxw] {
    margin: 6px 0 0;
    font-size: 14px;
    color: var(--muted);
}

/* Buttons (scoped to this page) */
.btn[b-gmp852lxxw] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 999px;
    border: none;
    text-decoration: none;
    font-weight: 650;
    line-height: 1.1;
    cursor: pointer;
    user-select: none;
}

    .btn.primary[b-gmp852lxxw] {
        background: var(--primary);
        color: white;
        box-shadow: var(--shadow);
    }

    .btn.secondary[b-gmp852lxxw] {
        background: color-mix(in srgb, var(--primary), transparent 88%);
        color: var(--primary);
        border: 1px solid color-mix(in srgb, var(--primary), transparent 65%);
        box-shadow: none;
    }

    .btn.tertiary[b-gmp852lxxw] {
        background: transparent;
        color: var(--ink);
        border: 1px solid color-mix(in srgb, var(--muted), transparent 45%);
        box-shadow: none;
    }

    .btn:hover[b-gmp852lxxw] {
        filter: brightness(0.98);
    }

    .btn:focus-visible[b-gmp852lxxw] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
    }

.cta-row[b-gmp852lxxw] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    align-items: center;
    margin-top: 10px;
}

    .cta-row.center[b-gmp852lxxw] {
        justify-content: center;
    }

/* Stack CTAs on small screens */
@media (max-width: 520px) {
    .cta-row[b-gmp852lxxw] {
        flex-direction: column;
        align-items: stretch;
    }

        .cta-row .btn[b-gmp852lxxw] {
            width: 100%;
        }
}

/* ---------------- SECTIONS / SHARED ---------------- */
.section[b-gmp852lxxw] {
    padding: 46px 0;
}

.section-alt[b-gmp852lxxw] {
    background: color-mix(in srgb, var(--primary), transparent 96%);
    border-top: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
    border-bottom: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
}

.section-head[b-gmp852lxxw] {
    margin-bottom: 18px;
    max-width: 78ch;
}

.badge[b-gmp852lxxw] {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    background: color-mix(in srgb, var(--primary), transparent 88%);
    color: var(--primary);
    border: 1px solid color-mix(in srgb, var(--primary), transparent 60%);
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 13px;
}

.small[b-gmp852lxxw] {
    font-size: 14px;
    color: var(--muted);
}

.muted[b-gmp852lxxw] {
    color: var(--muted);
}

.micro[b-gmp852lxxw] {
    margin: 12px 0 0;
    font-size: 13px;
    color: var(--muted);
}

.mt[b-gmp852lxxw] {
    margin-top: 0.75rem;
}

.mt2[b-gmp852lxxw] {
    margin-top: 0.9rem;
}

/* Check list */
ul.check[b-gmp852lxxw] {
    list-style: none;
    padding: 0;
    margin: 12px 0 0;
    display: grid;
    gap: 8px;
}

    ul.check li[b-gmp852lxxw]::before {
        content: "✔";
        color: var(--primary);
        margin-right: 8px;
        font-weight: 800;
    }

/* ---------------- UPCOMING ---------------- */
.empty[b-gmp852lxxw] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

.events-grid[b-gmp852lxxw] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.event-card[b-gmp852lxxw] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.event-top[b-gmp852lxxw] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

.tag[b-gmp852lxxw] {
    font-size: 12px;
    font-weight: 900;
    padding: 4px 8px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--primary), transparent 90%);
    color: var(--primary);
    border: 1px solid color-mix(in srgb, var(--primary), transparent 65%);
}

    .tag.soft[b-gmp852lxxw] {
        background: color-mix(in srgb, var(--accent), transparent 85%);
        color: #8B5E00;
        border-color: color-mix(in srgb, var(--accent), transparent 65%);
    }

.meta[b-gmp852lxxw] {
    display: grid;
    gap: 6px;
    color: var(--ink);
}

    .meta strong[b-gmp852lxxw] {
        color: var(--ink);
    }

@media (max-width: 980px) {
    .events-grid[b-gmp852lxxw] {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 640px) {
    .events-grid[b-gmp852lxxw] {
        grid-template-columns: 1fr;
    }
}

/* ---------------- FORMATS ---------------- */
.formats-grid[b-gmp852lxxw] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.format[b-gmp852lxxw] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

    .format.featured[b-gmp852lxxw] {
        border-color: color-mix(in srgb, var(--primary), transparent 45%);
        box-shadow: 0 14px 40px rgba(0,0,0,0.12);
    }

@media (max-width: 900px) {
    .formats-grid[b-gmp852lxxw] {
        grid-template-columns: 1fr;
    }
}

/* Callout */
.callout[b-gmp852lxxw] {
    margin-top: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    background: var(--surface);
    padding: 14px 16px;
    border-radius: var(--radius);
    border: 1px dashed color-mix(in srgb, var(--muted), transparent 60%);
}

    .callout p[b-gmp852lxxw] {
        margin: 6px 0 0;
    }

@media (max-width: 640px) {
    .callout[b-gmp852lxxw] {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* ---------------- TIMELINE ---------------- */
.timeline[b-gmp852lxxw] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 12px;
}

    .timeline li[b-gmp852lxxw] {
        display: flex;
        gap: 14px;
        align-items: flex-start;
        background: var(--surface);
        border-radius: var(--radius);
        padding: 14px 16px;
        box-shadow: var(--shadow);
        border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    }

.t-step[b-gmp852lxxw] {
    flex: 0 0 auto;
    width: 32px;
    height: 32px;
    border-radius: 999px;
    background: var(--primary);
    color: white;
    display: inline-grid;
    place-items: center;
    font-weight: 900;
    line-height: 1;
}

.t-body p[b-gmp852lxxw] {
    margin: 6px 0 0;
}

/* ---------------- HOST ---------------- */
.host-wrap[b-gmp852lxxw] {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 16px;
    align-items: start;
}

.form-grid[b-gmp852lxxw] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.field[b-gmp852lxxw] {
    display: grid;
    gap: 6px;
}

    .field.full[b-gmp852lxxw] {
        grid-column: 1 / -1;
    }

label[b-gmp852lxxw] {
    font-weight: 800;
    color: var(--ink);
}

.input[b-gmp852lxxw] {
    width: 100%;
    padding: 12px;
    border: 1px solid color-mix(in srgb, var(--muted), transparent 60%);
    background: var(--surface);
    border-radius: var(--radius-sm);
    color: var(--ink);
}

    .input:focus[b-gmp852lxxw] {
        outline: 2px solid color-mix(in srgb, var(--accent), transparent 15%);
        outline-offset: 2px;
    }

.textarea[b-gmp852lxxw] {
    resize: vertical;
}

.hint[b-gmp852lxxw] {
    font-size: 13px;
    color: var(--muted);
}

.actions[b-gmp852lxxw] {
    margin-top: 14px;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

/* Validation summary */
.validation[b-gmp852lxxw] {
    margin: 0 0 12px;
    padding: 12px 14px;
    border-radius: 12px;
    background: color-mix(in srgb, var(--accent), transparent 88%);
    border: 1px solid color-mix(in srgb, var(--accent), transparent 65%);
    color: #8B5E00;
}

.side-card[b-gmp852lxxw] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

.mini-cta[b-gmp852lxxw] {
    margin-top: 12px;
}

.text-link[b-gmp852lxxw] {
    display: inline-flex;
    color: var(--primary);
    font-weight: 800;
    text-decoration: none;
}

    .text-link:hover[b-gmp852lxxw],
    .text-link:focus-visible[b-gmp852lxxw] {
        text-decoration: underline;
        outline: none;
    }

@media (max-width: 980px) {
    .host-wrap[b-gmp852lxxw] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .form-grid[b-gmp852lxxw] {
        grid-template-columns: 1fr;
    }

    .actions .btn[b-gmp852lxxw] {
        width: 100%;
    }
}

/* ---------------- FAQ ---------------- */
.faq[b-gmp852lxxw] {
    display: grid;
    gap: 12px;
}

    .faq details[b-gmp852lxxw] {
        background: var(--surface);
        border-radius: var(--radius);
        box-shadow: var(--shadow);
        border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
        overflow: hidden;
    }

    .faq summary[b-gmp852lxxw] {
        padding: 14px 16px;
        cursor: pointer;
        font-weight: 900;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        list-style: none;
    }

        .faq summary[b-gmp852lxxw]::-webkit-details-marker {
            display: none;
        }

        .faq summary[b-gmp852lxxw]::after {
            content: "+";
            color: var(--primary);
            font-size: 22px;
            line-height: 1;
        }

    .faq details[open] summary[b-gmp852lxxw] {
        border-bottom: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
    }

        .faq details[open] summary[b-gmp852lxxw]::after {
            content: "–";
        }

.answer[b-gmp852lxxw] {
    padding: 14px 16px 16px;
    color: var(--muted);
}

    .answer p[b-gmp852lxxw] {
        margin: 0;
    }

/* ---------------- FINAL CTA ---------------- */
.final-cta[b-gmp852lxxw] {
    margin-top: 18px;
}

.final-box[b-gmp852lxxw] {
    position: relative;
    overflow: hidden;
    background: var(--surface);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    padding: clamp(18px, 3.5vw, 28px);
    text-align: center;
}

    .final-box[b-gmp852lxxw]::before {
        content: "";
        position: absolute;
        inset: -2px;
        pointer-events: none;
        background: radial-gradient(650px 340px at 25% 10%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(500px 320px at 85% 20%, color-mix(in srgb, var(--accent), transparent 84%), transparent 70%);
        opacity: 0.9;
    }

    .final-box > *[b-gmp852lxxw] {
        position: relative;
    }

.final-cta .lede[b-gmp852lxxw] {
    margin-left: auto;
    margin-right: auto;
    max-width: 55ch;
}
/* /Pages/ExtraPages/Methods.razor.rz.scp.css */
/* Help anchor jumps land below the sticky nav */
#principles[b-dt3aa708b7], #approach[b-dt3aa708b7], #not[b-dt3aa708b7], #evidence[b-dt3aa708b7] {
    scroll-margin-top: 5rem;
}

.method-page[b-dt3aa708b7] {
    overflow-x: clip;
}

/* ---------------- HERO (CENTERED) ---------------- */
.hero[b-dt3aa708b7] {
    position: relative;
    padding: clamp(46px, 7vw, 96px) 0 42px;
    text-align: center;
}

    .hero[b-dt3aa708b7]::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background: radial-gradient(900px 520px at 50% 0%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(720px 460px at 82% 38%, color-mix(in srgb, var(--accent), transparent 86%), transparent 70%);
        opacity: 0.95;
    }

.hero-inner[b-dt3aa708b7] {
    position: relative; /* above decoration */
    max-width: 92ch;
    margin: 0 auto;
    display: grid;
    justify-items: center;
    gap: 12px;
}

.kicker[b-dt3aa708b7] {
    color: var(--muted);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0;
}

.lede[b-dt3aa708b7] {
    font-size: clamp(16px, 2.5vw, 20px);
    color: var(--muted);
    max-width: 70ch;
    margin: 0;
}

/* Buttons (scoped to this page) */
.btn[b-dt3aa708b7] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 999px;
    border: none;
    text-decoration: none;
    font-weight: 650;
    line-height: 1.1;
    cursor: pointer;
    user-select: none;
}

    .btn.primary[b-dt3aa708b7] {
        background: var(--primary);
        color: white;
        box-shadow: var(--shadow);
    }

    .btn.secondary[b-dt3aa708b7] {
        background: color-mix(in srgb, var(--primary), transparent 88%);
        color: var(--primary);
        border: 1px solid color-mix(in srgb, var(--primary), transparent 65%);
        box-shadow: none;
    }

    .btn:hover[b-dt3aa708b7] {
        filter: brightness(0.98);
    }

    .btn:focus-visible[b-dt3aa708b7] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
    }

.cta-row[b-dt3aa708b7] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    align-items: center;
    margin-top: 10px;
}

    .cta-row.center[b-dt3aa708b7] {
        justify-content: center;
    }

/* Hero jump links */
.jump[b-dt3aa708b7] {
    margin-top: 14px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

    .jump a[b-dt3aa708b7] {
        color: var(--ink);
        text-decoration: none;
        font-size: 14px;
        padding: 6px 10px;
        border-radius: 999px;
        border: 1px solid color-mix(in srgb, var(--muted), transparent 50%);
        background: color-mix(in srgb, var(--surface), transparent 0%);
    }

        .jump a:hover[b-dt3aa708b7],
        .jump a:focus-visible[b-dt3aa708b7] {
            background: color-mix(in srgb, var(--primary), transparent 90%);
            outline: none;
        }

/* Stack hero CTAs on small screens */
@media (max-width: 520px) {
    .cta-row[b-dt3aa708b7] {
        flex-direction: column;
        align-items: stretch;
    }

        .cta-row .btn[b-dt3aa708b7] {
            width: 100%;
        }
}

/* ---------------- SECTIONS / SHARED ---------------- */
.section[b-dt3aa708b7] {
    padding: 46px 0;
}

.section-alt[b-dt3aa708b7] {
    background: color-mix(in srgb, var(--primary), transparent 96%);
    border-top: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
    border-bottom: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
}

.section-head[b-dt3aa708b7] {
    margin-bottom: 18px;
    max-width: 78ch;
}

.badge[b-dt3aa708b7] {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    background: color-mix(in srgb, var(--primary), transparent 88%);
    color: var(--primary);
    border: 1px solid color-mix(in srgb, var(--primary), transparent 60%);
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 13px;
}

.small[b-dt3aa708b7] {
    font-size: 14px;
    color: var(--muted);
}

/* Cards */
.card[b-dt3aa708b7] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

    .card p.small[b-dt3aa708b7] {
        margin-bottom: 0;
    }

/* Lists */
ul.check[b-dt3aa708b7] {
    list-style: none;
    padding: 0;
    margin: 12px 0 0;
    display: grid;
    gap: 8px;
}

    ul.check li[b-dt3aa708b7]::before {
        content: "✔";
        color: var(--primary);
        margin-right: 8px;
        font-weight: 800;
    }

.xlist[b-dt3aa708b7] {
    list-style: none;
    padding: 0;
    margin: 12px 0 0;
    display: grid;
    gap: 8px;
}

    .xlist li[b-dt3aa708b7]::before {
        content: "✖";
        color: #b91c1c;
        margin-right: 8px;
        font-weight: 900;
    }

/* ---------------- PRINCIPLES GRID ---------------- */
.grid-4[b-dt3aa708b7] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

@media (max-width: 980px) {
    .grid-4[b-dt3aa708b7] {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 640px) {
    .grid-4[b-dt3aa708b7] {
        grid-template-columns: 1fr;
    }
}

/* ---------------- APPROACH TIMELINE ---------------- */
.timeline[b-dt3aa708b7] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 12px;
}

    .timeline li[b-dt3aa708b7] {
        display: flex;
        gap: 14px;
        align-items: flex-start;
        background: var(--surface);
        border-radius: var(--radius);
        padding: 14px 16px;
        box-shadow: var(--shadow);
        border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    }

.t-step[b-dt3aa708b7] {
    flex: 0 0 auto;
    width: 32px;
    height: 32px;
    border-radius: 999px;
    background: var(--primary);
    color: white;
    display: inline-grid;
    place-items: center;
    font-weight: 900;
    line-height: 1;
}

.t-body p[b-dt3aa708b7] {
    margin: 6px 0 0;
}

/* Inline CTA */
.inline-cta[b-dt3aa708b7] {
    margin-top: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    background: var(--surface);
    border-radius: var(--radius);
    padding: 16px 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

.inline-cta-text[b-dt3aa708b7] {
    display: grid;
    gap: 4px;
}

@media (max-width: 640px) {
    .inline-cta[b-dt3aa708b7] {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* ---------------- TWO COL (What we do / don't) ---------------- */
.two-col[b-dt3aa708b7] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    align-items: start;
}

@media (max-width: 900px) {
    .two-col[b-dt3aa708b7] {
        grid-template-columns: 1fr;
    }
}

/* Note */
.note[b-dt3aa708b7] {
    margin-top: 18px;
    background: color-mix(in srgb, var(--accent), transparent 85%);
    color: #8B5E00;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid color-mix(in srgb, var(--accent), transparent 65%);
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: baseline;
}

/* Callout */
.callout[b-dt3aa708b7] {
    margin-top: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    background: var(--surface);
    padding: 14px 16px;
    border-radius: var(--radius);
    border: 1px dashed color-mix(in srgb, var(--muted), transparent 60%);
}

    .callout p[b-dt3aa708b7] {
        margin: 6px 0 0;
    }

@media (max-width: 640px) {
    .callout[b-dt3aa708b7] {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* ---------------- EVIDENCE GRID ---------------- */
.evidence-grid[b-dt3aa708b7] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

@media (max-width: 980px) {
    .evidence-grid[b-dt3aa708b7] {
        grid-template-columns: 1fr;
    }
}

/* ---------------- FINAL CTA ---------------- */
.final-cta[b-dt3aa708b7] {
    padding: 56px 0;
}

.final-box[b-dt3aa708b7] {
    position: relative;
    overflow: hidden;
    background: var(--surface);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    padding: clamp(22px, 4vw, 34px);
    text-align: center;
}

    .final-box[b-dt3aa708b7]::before {
        content: "";
        position: absolute;
        inset: -2px;
        pointer-events: none;
        background: radial-gradient(650px 340px at 25% 10%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(500px 320px at 85% 20%, color-mix(in srgb, var(--accent), transparent 84%), transparent 70%);
        opacity: 0.9;
    }

    .final-box > *[b-dt3aa708b7] {
        position: relative;
    }

.final-cta .lede[b-dt3aa708b7] {
    margin-left: auto;
    margin-right: auto;
    max-width: 60ch;
}
/* /Pages/ExtraPages/Resources.razor.rz.scp.css */
/* Help anchor jumps land below the sticky nav */
#notifications[b-3wzdfye0km], #homescreen[b-3wzdfye0km], #winddown[b-3wzdfye0km] {
    scroll-margin-top: 5rem;
}

.resources-page[b-3wzdfye0km] {
    overflow-x: clip;
}

/* ---------------- HERO (CENTERED) ---------------- */
.hero[b-3wzdfye0km] {
    position: relative;
    padding: clamp(46px, 7vw, 96px) 0 42px;
    text-align: center;
}

    .hero[b-3wzdfye0km]::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background: radial-gradient(900px 520px at 50% 0%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(720px 460px at 82% 38%, color-mix(in srgb, var(--accent), transparent 86%), transparent 70%);
        opacity: 0.95;
    }

.hero-inner[b-3wzdfye0km] {
    position: relative; /* above decoration */
    max-width: 90ch;
    margin: 0 auto;
    display: grid;
    justify-items: center;
    gap: 12px;
}

.kicker[b-3wzdfye0km] {
    color: var(--muted);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0;
}

.lede[b-3wzdfye0km] {
    font-size: clamp(16px, 2.5vw, 20px);
    color: var(--muted);
    max-width: 70ch;
    margin: 0;
}

/* Buttons (scoped to this page) */
.btn[b-3wzdfye0km] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 999px;
    border: none;
    text-decoration: none;
    font-weight: 650;
    line-height: 1.1;
    cursor: pointer;
    user-select: none;
}

    .btn.primary[b-3wzdfye0km] {
        background: var(--primary);
        color: white;
        box-shadow: var(--shadow);
    }

    .btn.secondary[b-3wzdfye0km] {
        background: color-mix(in srgb, var(--primary), transparent 88%);
        color: var(--primary);
        border: 1px solid color-mix(in srgb, var(--primary), transparent 65%);
        box-shadow: none;
    }

    .btn:hover[b-3wzdfye0km] {
        filter: brightness(0.98);
    }

    .btn:focus-visible[b-3wzdfye0km] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
    }

.cta-row[b-3wzdfye0km] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    align-items: center;
    margin-top: 10px;
}

    .cta-row.center[b-3wzdfye0km] {
        justify-content: center;
    }

/* Hero jump links */
.jump[b-3wzdfye0km] {
    margin-top: 14px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

    .jump a[b-3wzdfye0km] {
        color: var(--ink);
        text-decoration: none;
        font-size: 14px;
        padding: 6px 10px;
        border-radius: 999px;
        border: 1px solid color-mix(in srgb, var(--muted), transparent 50%);
        background: color-mix(in srgb, var(--surface), transparent 0%);
    }

        .jump a:hover[b-3wzdfye0km],
        .jump a:focus-visible[b-3wzdfye0km] {
            background: color-mix(in srgb, var(--primary), transparent 90%);
            outline: none;
        }

/* Stack hero CTAs on small screens */
@media (max-width: 520px) {
    .cta-row[b-3wzdfye0km] {
        flex-direction: column;
        align-items: stretch;
    }

        .cta-row .btn[b-3wzdfye0km] {
            width: 100%;
        }
}

/* ---------------- SECTIONS / SHARED ---------------- */
.section[b-3wzdfye0km] {
    padding: 46px 0;
}

.section-alt[b-3wzdfye0km] {
    background: color-mix(in srgb, var(--primary), transparent 96%);
    border-top: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
    border-bottom: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
}

.section-head[b-3wzdfye0km] {
    margin-bottom: 18px;
    max-width: 78ch;
}

.badge[b-3wzdfye0km] {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    background: color-mix(in srgb, var(--primary), transparent 88%);
    color: var(--primary);
    border: 1px solid color-mix(in srgb, var(--primary), transparent 60%);
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 13px;
}

.small[b-3wzdfye0km] {
    font-size: 14px;
    color: var(--muted);
}

.mt[b-3wzdfye0km] {
    margin-top: 1rem;
}

/* Lists */
ul.check[b-3wzdfye0km] {
    list-style: none;
    padding: 0;
    margin: 12px 0 0;
    display: grid;
    gap: 8px;
}

    ul.check li[b-3wzdfye0km]::before {
        content: "✔";
        color: var(--primary);
        margin-right: 8px;
        font-weight: 800;
    }

.xlist[b-3wzdfye0km] {
    list-style: none;
    padding: 0;
    margin: 12px 0 0;
    display: grid;
    gap: 8px;
}

    .xlist li[b-3wzdfye0km]::before {
        content: "✖";
        color: #b91c1c;
        margin-right: 8px;
        font-weight: 900;
    }

/* Steps list (ordered) */
.steps[b-3wzdfye0km] {
    margin: 12px 0 0;
    padding-left: 1.25rem;
    display: grid;
    gap: 8px;
}

    .steps li[b-3wzdfye0km] {
        color: var(--ink);
    }

/* ---------------- TILES (Quick start) ---------------- */
.tiles[b-3wzdfye0km] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.tile[b-3wzdfye0km] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

.text-link[b-3wzdfye0km] {
    display: inline-flex;
    margin-top: 10px;
    color: var(--primary);
    font-weight: 800;
    text-decoration: none;
}

    .text-link:hover[b-3wzdfye0km],
    .text-link:focus-visible[b-3wzdfye0km] {
        text-decoration: underline;
        outline: none;
    }

@media (max-width: 900px) {
    .tiles[b-3wzdfye0km] {
        grid-template-columns: 1fr;
    }
}

/* ---------------- GUIDES ---------------- */
.guide-grid[b-3wzdfye0km] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.card[b-3wzdfye0km] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

.mini-note[b-3wzdfye0km] {
    margin-top: 14px;
    background: color-mix(in srgb, var(--primary), transparent 94%);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 78%);
    border-radius: 12px;
    padding: 12px 14px;
}

    .mini-note strong[b-3wzdfye0km] {
        color: var(--ink);
    }

@media (max-width: 900px) {
    .guide-grid[b-3wzdfye0km] {
        grid-template-columns: 1fr;
    }
}

/* Inline CTA */
.inline-cta[b-3wzdfye0km] {
    margin-top: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    background: var(--surface);
    border-radius: var(--radius);
    padding: 16px 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

.inline-cta-text[b-3wzdfye0km] {
    display: grid;
    gap: 4px;
}

@media (max-width: 640px) {
    .inline-cta[b-3wzdfye0km] {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* ---------------- FINAL CTA ---------------- */
.final-cta[b-3wzdfye0km] {
    padding: 56px 0;
}

.final-box[b-3wzdfye0km] {
    position: relative;
    overflow: hidden;
    background: var(--surface);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    padding: clamp(22px, 4vw, 34px);
    text-align: center;
}

    .final-box[b-3wzdfye0km]::before {
        content: "";
        position: absolute;
        inset: -2px;
        pointer-events: none;
        background: radial-gradient(650px 340px at 25% 10%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(500px 320px at 85% 20%, color-mix(in srgb, var(--accent), transparent 84%), transparent 70%);
        opacity: 0.9;
    }

    .final-box > *[b-3wzdfye0km] {
        position: relative;
    }

.final-cta .lede[b-3wzdfye0km] {
    margin-left: auto;
    margin-right: auto;
    max-width: 60ch;
}
/* /Pages/Home.razor.rz.scp.css */
/* Help anchor jumps land below the sticky nav */
#what[b-qvz6tmzsbp], #how[b-qvz6tmzsbp], #faq[b-qvz6tmzsbp] {
    scroll-margin-top: 5rem;
}

.home[b-qvz6tmzsbp] {
    overflow-x: clip; /* protects against decorative gradients causing horizontal scroll */
}

/* ---------------- HERO ---------------- */
.hero[b-qvz6tmzsbp] {
    position: relative;
    padding: clamp(40px, 7vw, 100px) 0 40px;
}

    .hero[b-qvz6tmzsbp]::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background: radial-gradient(900px 500px at 12% 10%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(700px 420px at 88% 0%, color-mix(in srgb, var(--accent), transparent 84%), transparent 70%);
        opacity: 0.9;
    }

.hero-grid[b-qvz6tmzsbp] {
    position: relative; /* sits above the background */
    display: grid;
    grid-template-columns: 1.2fr 0.85fr;
    gap: 24px;
    align-items: start;
}

.hero-copy[b-qvz6tmzsbp] {
    text-align: left;
}

.kicker[b-qvz6tmzsbp] {
    color: var(--muted);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0 0 10px;
}

.lede[b-qvz6tmzsbp] {
    font-size: clamp(16px, 2.5vw, 20px);
    color: var(--muted);
    max-width: 60ch;
    margin: 0 0 18px;
}

.hero-bullets[b-qvz6tmzsbp] {
    list-style: none;
    padding: 0;
    margin: 0 0 22px;
    display: grid;
    gap: 10px;
}

    .hero-bullets li[b-qvz6tmzsbp] {
        display: flex;
        gap: 10px;
        align-items: flex-start;
    }

        .hero-bullets li[b-qvz6tmzsbp]::before {
            content: "✔";
            color: var(--primary);
            font-weight: 800;
            line-height: 1.2;
            margin-top: 1px;
        }

.cta-row[b-qvz6tmzsbp] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    margin: 14px 0 8px;
}

.fineprint[b-qvz6tmzsbp] {
    margin: 10px 0 0;
    font-size: 14px;
    color: var(--muted);
}

/* Jump links (styled to match reference) */
.jump-links[b-qvz6tmzsbp] {
    margin-top: 14px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

    .jump-links a[b-qvz6tmzsbp] {
        color: var(--ink);
        text-decoration: none;
        font-size: 14px;
        padding: 6px 10px;
        border-radius: 999px;
        border: 1px solid color-mix(in srgb, var(--muted), transparent 50%);
        background: var(--surface); /* keep pills white */
    }

        .jump-links a:hover[b-qvz6tmzsbp],
        .jump-links a:focus-visible[b-qvz6tmzsbp] {
            background: var(--surface); /* keep pills white (not green) */
            border-color: color-mix(in srgb, var(--muted), transparent 25%);
            box-shadow: 0 10px 24px rgba(0,0,0,0.08);
            outline: none;
        }

/* Buttons (scoped to this page) */
.btn[b-qvz6tmzsbp] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 999px;
    border: none;
    text-decoration: none;
    font-weight: 650;
    line-height: 1.1;
    cursor: pointer;
    user-select: none;
}

    .btn.primary[b-qvz6tmzsbp] {
        background: var(--primary);
        color: white;
        box-shadow: var(--shadow);
    }

    .btn.secondary[b-qvz6tmzsbp] {
        background: color-mix(in srgb, var(--primary), transparent 88%);
        color: var(--primary);
        border: 1px solid color-mix(in srgb, var(--primary), transparent 65%);
        box-shadow: none;
    }

    .btn:hover[b-qvz6tmzsbp] {
        filter: brightness(0.98);
    }

    .btn:focus-visible[b-qvz6tmzsbp] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
    }

/* Aside panel */
.panel[b-qvz6tmzsbp] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

.panel-title[b-qvz6tmzsbp] {
    font-size: 18px;
    margin: 0 0 12px;
}

.mini-timeline[b-qvz6tmzsbp] {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 10px;
}

    .mini-timeline li[b-qvz6tmzsbp] {
        display: flex;
        gap: 12px;
        color: var(--ink);
    }

.day[b-qvz6tmzsbp] {
    flex: 0 0 auto;
    width: 4.2rem;
    font-weight: 800;
    color: var(--primary);
}

.text-link[b-qvz6tmzsbp] {
    display: inline-flex;
    margin-top: 14px;
    color: var(--primary);
    font-weight: 700;
    text-decoration: none;
}

    .text-link:hover[b-qvz6tmzsbp],
    .text-link:focus-visible[b-qvz6tmzsbp] {
        text-decoration: underline;
        outline: none;
    }

/* KPI row */
.kpis[b-qvz6tmzsbp] {
    position: relative;
    margin-top: 28px;
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
}

.kpi[b-qvz6tmzsbp] {
    background: var(--surface);
    padding: 18px;
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    text-align: center;
    min-width: 200px;
}

    .kpi .num[b-qvz6tmzsbp] {
        font-size: 28px;
        font-weight: 900;
        color: var(--primary);
        line-height: 1;
    }

    .kpi .label[b-qvz6tmzsbp] {
        margin-top: 6px;
        color: var(--muted);
    }

/* Responsive hero */
@media (max-width: 980px) {
    .hero-grid[b-qvz6tmzsbp] {
        grid-template-columns: 1fr;
    }

    .hero-copy[b-qvz6tmzsbp] {
        text-align: center;
    }

    .lede[b-qvz6tmzsbp] {
        margin-left: auto;
        margin-right: auto;
    }

    .hero-bullets[b-qvz6tmzsbp] {
        max-width: 60ch;
        margin-left: auto;
        margin-right: auto;
        text-align: left;
    }

    .cta-row[b-qvz6tmzsbp] {
        justify-content: center;
    }
}

@media (max-width: 520px) {
    .cta-row[b-qvz6tmzsbp] {
        flex-direction: column;
        align-items: stretch;
    }

        .cta-row .btn[b-qvz6tmzsbp] {
            width: 100%;
        }
}

/* ---------------- SECTIONS / CARDS ---------------- */
.section[b-qvz6tmzsbp] {
    padding: 46px 0;
}

.section-alt[b-qvz6tmzsbp] {
    background: color-mix(in srgb, var(--primary), transparent 96%);
    border-top: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
    border-bottom: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
}

.section-head[b-qvz6tmzsbp] {
    margin-bottom: 18px;
    max-width: 78ch;
}

/* Note #1: badges looked like button pills; restyle as label pills */
.badge[b-qvz6tmzsbp] {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    background: color-mix(in srgb, var(--muted), transparent 92%);
    color: var(--muted);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 13px;
}

.card-grid[b-qvz6tmzsbp] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.card[b-qvz6tmzsbp] {
    display: block;
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

    .card p[b-qvz6tmzsbp] {
        color: var(--muted);
    }

.card-note[b-qvz6tmzsbp] {
    margin: -6px 0 0;
    font-size: 14px;
    color: var(--muted);
}

ul.check[b-qvz6tmzsbp] {
    list-style: none;
    padding: 0;
    margin: 12px 0 0;
    display: grid;
    gap: 8px;
}

    ul.check li[b-qvz6tmzsbp]::before {
        content: "✔";
        color: var(--primary);
        margin-right: 8px;
        font-weight: 800;
    }

.inline-cta[b-qvz6tmzsbp] {
    margin-top: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    background: var(--surface);
    border-radius: var(--radius);
    padding: 16px 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

.inline-cta-text[b-qvz6tmzsbp] {
    display: grid;
    gap: 4px;
}

/* ---------------- STEPS + CALLOUT ---------------- */
.steps[b-qvz6tmzsbp] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.step[b-qvz6tmzsbp] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

    .step p[b-qvz6tmzsbp] {
        color: var(--muted);
    }

.step-top[b-qvz6tmzsbp] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 6px;
}

.step-num[b-qvz6tmzsbp] {
    width: 28px;
    height: 28px;
    border-radius: 999px;
    background: var(--primary);
    color: white;
    display: inline-grid;
    place-items: center;
    font-weight: 900;
    line-height: 1;
}

.callout[b-qvz6tmzsbp] {
    margin-top: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    background: var(--surface);
    padding: 14px 16px;
    border-radius: var(--radius);
    border: 1px dashed color-mix(in srgb, var(--muted), transparent 60%);
}

    .callout p[b-qvz6tmzsbp] {
        margin: 6px 0 0;
    }

.callout-actions[b-qvz6tmzsbp] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: flex-end;
}

/* ---------------- FAQ ---------------- */
.faq[b-qvz6tmzsbp] {
    display: grid;
    gap: 12px;
}

    .faq details[b-qvz6tmzsbp] {
        background: var(--surface);
        border-radius: var(--radius);
        box-shadow: var(--shadow);
        border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
        overflow: hidden;
    }

    .faq summary[b-qvz6tmzsbp] {
        padding: 14px 16px;
        cursor: pointer;
        font-weight: 800;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        list-style: none;
    }

        .faq summary[b-qvz6tmzsbp]::-webkit-details-marker {
            display: none;
        }

        .faq summary[b-qvz6tmzsbp]::after {
            content: "+";
            color: var(--primary);
            font-size: 22px;
            line-height: 1;
        }

    .faq details[open] summary[b-qvz6tmzsbp] {
        border-bottom: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
    }

        .faq details[open] summary[b-qvz6tmzsbp]::after {
            content: "–";
        }

.answer[b-qvz6tmzsbp] {
    padding: 14px 16px 16px;
    color: var(--muted);
}

    .answer p[b-qvz6tmzsbp] {
        margin: 0;
    }

.faq-footer[b-qvz6tmzsbp] {
    margin-top: 16px;
    padding-top: 12px;
    max-width: 78ch;
    border-top: 1px solid color-mix(in srgb, var(--muted), transparent 80%);
}

/* ---------------- FINAL CTA ---------------- */
.final-cta[b-qvz6tmzsbp] {
    padding: 56px 0;
}

.final-box[b-qvz6tmzsbp] {
    position: relative;
    overflow: hidden;
    background: var(--surface);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    padding: clamp(22px, 4vw, 34px);
    text-align: center;
}

    .final-box[b-qvz6tmzsbp]::before {
        content: "";
        position: absolute;
        inset: -2px;
        pointer-events: none;
        background: radial-gradient(650px 340px at 20% 10%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(500px 320px at 85% 20%, color-mix(in srgb, var(--accent), transparent 84%), transparent 70%);
        opacity: 0.9;
    }

    .final-box > *[b-qvz6tmzsbp] {
        position: relative; /* above the decoration */
    }

.final-cta .lede[b-qvz6tmzsbp] {
    margin-left: auto;
    margin-right: auto;
    max-width: 52ch;
}

.final-cta .cta-row[b-qvz6tmzsbp] {
    justify-content: center;
}

@media (max-width: 900px) {
    .card-grid[b-qvz6tmzsbp] {
        grid-template-columns: 1fr 1fr;
    }

    .steps[b-qvz6tmzsbp] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .card-grid[b-qvz6tmzsbp] {
        grid-template-columns: 1fr;
    }

    .inline-cta[b-qvz6tmzsbp] {
        flex-direction: column;
        align-items: flex-start;
    }

    .callout[b-qvz6tmzsbp] {
        flex-direction: column;
        align-items: flex-start;
    }

    .callout-actions[b-qvz6tmzsbp] {
        width: 100%;
        justify-content: flex-start;
    }
}
/* /Pages/How.razor.rz.scp.css */
/* Help anchor jumps land below the sticky nav */
#flow[b-e90retzi2c], #fit[b-e90retzi2c], #time[b-e90retzi2c], #week[b-e90retzi2c] {
    scroll-margin-top: 5rem;
}

.how-page[b-e90retzi2c] {
    overflow-x: clip;
}

/* ---------------- HERO (CENTERED) ---------------- */
.hero[b-e90retzi2c] {
    position: relative;
    padding: clamp(46px, 7vw, 96px) 0 42px;
    text-align: center;
}

    .hero[b-e90retzi2c]::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background: radial-gradient(900px 520px at 50% 0%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(720px 460px at 80% 35%, color-mix(in srgb, var(--accent), transparent 86%), transparent 70%);
        opacity: 0.95;
    }

.hero-inner[b-e90retzi2c] {
    position: relative; /* above decoration */
    max-width: 80ch;
    margin: 0 auto;
    display: grid;
    justify-items: center;
    gap: 12px;
}

.kicker[b-e90retzi2c] {
    color: var(--muted);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0;
}

.lede[b-e90retzi2c] {
    font-size: clamp(16px, 2.5vw, 20px);
    color: var(--muted);
    max-width: 60ch;
    margin: 0;
}

/* Hero CTAs */
.cta-row[b-e90retzi2c] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    align-items: center;
    margin-top: 10px;
}

    .cta-row.center[b-e90retzi2c] {
        justify-content: center;
    }

/* Hero jump links */
.jump[b-e90retzi2c] {
    margin-top: 14px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

    .jump a[b-e90retzi2c] {
        color: var(--ink);
        text-decoration: none;
        font-size: 14px;
        padding: 6px 10px;
        border-radius: 999px;
        border: 1px solid color-mix(in srgb, var(--muted), transparent 50%);
        background: var(--surface); /* keep pills white */
    }

        .jump a:hover[b-e90retzi2c],
        .jump a:focus-visible[b-e90retzi2c] {
            background: var(--surface); /* keep pills white (not green) */
            border-color: color-mix(in srgb, var(--muted), transparent 25%);
            box-shadow: 0 10px 24px rgba(0,0,0,0.08);
            outline: none;
        }

/* Buttons (scoped to this page) */
.btn[b-e90retzi2c] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 999px;
    border: none;
    text-decoration: none;
    font-weight: 650;
    line-height: 1.1;
    cursor: pointer;
    user-select: none;
}

    .btn.primary[b-e90retzi2c] {
        background: var(--primary);
        color: white;
        box-shadow: var(--shadow);
    }

    .btn.secondary[b-e90retzi2c] {
        background: color-mix(in srgb, var(--primary), transparent 88%);
        color: var(--primary);
        border: 1px solid color-mix(in srgb, var(--primary), transparent 65%);
        box-shadow: none;
    }

    .btn:hover[b-e90retzi2c] {
        filter: brightness(0.98);
    }

    .btn:focus-visible[b-e90retzi2c] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
    }

@media (max-width: 520px) {
    .cta-row[b-e90retzi2c] {
        flex-direction: column;
        align-items: stretch;
    }

        .cta-row .btn[b-e90retzi2c] {
            width: 100%;
        }
}

/* ---------------- SECTIONS / SHARED BLOCKS ---------------- */
.section[b-e90retzi2c] {
    padding: 46px 0;
}

.section-alt[b-e90retzi2c] {
    background: color-mix(in srgb, var(--primary), transparent 96%);
    border-top: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
    border-bottom: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
}

.section-head[b-e90retzi2c] {
    margin-bottom: 18px;
    max-width: 78ch;
}

.badge[b-e90retzi2c] {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    background: color-mix(in srgb, var(--muted), transparent 88%);
    color: var(--muted);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 60%);
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 13px;
}

/* Check list */
ul.check[b-e90retzi2c] {
    list-style: none;
    padding: 0;
    margin: 12px 0 0;
    display: grid;
    gap: 8px;
}

    ul.check li[b-e90retzi2c]::before {
        content: "✔";
        color: var(--primary);
        margin-right: 8px;
        font-weight: 800;
    }

/* ---------------- FLOW ---------------- */
.flow[b-e90retzi2c] {
    display: grid;
    gap: 16px;
}

.flow-step[b-e90retzi2c] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

.flow-top[b-e90retzi2c] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 6px;
}

.step-num[b-e90retzi2c] {
    width: 28px;
    height: 28px;
    border-radius: 999px;
    background: var(--primary);
    color: white;
    display: inline-grid;
    place-items: center;
    font-weight: 900;
    line-height: 1;
}

.desc[b-e90retzi2c] {
    margin: 0 0 10px;
    color: var(--muted);
}

.two-col[b-e90retzi2c] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 10px;
}

    .two-col strong[b-e90retzi2c] {
        display: inline-block;
        margin-bottom: 4px;
    }

.text-link[b-e90retzi2c] {
    display: inline-flex;
    margin-top: 14px;
    color: var(--primary);
    font-weight: 800;
    text-decoration: none;
}

    .text-link:hover[b-e90retzi2c],
    .text-link:focus-visible[b-e90retzi2c] {
        text-decoration: underline;
        outline: none;
    }

@media (max-width: 820px) {
    .two-col[b-e90retzi2c] {
        grid-template-columns: 1fr;
    }
}

/* Inline CTA (inside flow) */
.inline-cta[b-e90retzi2c] {
    margin-top: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    background: var(--surface);
    border-radius: var(--radius);
    padding: 16px 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

.inline-cta-text[b-e90retzi2c] {
    display: grid;
    gap: 4px;
}

@media (max-width: 640px) {
    .inline-cta[b-e90retzi2c] {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* Callout (used in multiple sections) */
.callout[b-e90retzi2c] {
    margin-top: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    background: var(--surface);
    padding: 14px 16px;
    border-radius: var(--radius);
    border: 1px dashed color-mix(in srgb, var(--muted), transparent 60%);
}

    .callout p[b-e90retzi2c] {
        margin: 6px 0 0;
    }

@media (max-width: 640px) {
    .callout[b-e90retzi2c] {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* ---------------- FIT ---------------- */
.fit-grid[b-e90retzi2c] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.fit-card[b-e90retzi2c] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

    .fit-card.good[b-e90retzi2c] {
        border-color: color-mix(in srgb, var(--primary), transparent 55%);
    }

    .fit-card.caution[b-e90retzi2c] {
        border-color: color-mix(in srgb, var(--accent), transparent 50%);
    }

.xlist[b-e90retzi2c] {
    list-style: none;
    padding: 0;
    margin: 12px 0 0;
    display: grid;
    gap: 8px;
}

    .xlist li[b-e90retzi2c]::before {
        content: "✖";
        color: #b91c1c;
        margin-right: 8px;
        font-weight: 900;
    }

.fit-card.caution p.small[b-e90retzi2c] {
    margin-top: 0.75rem;
}

@media (max-width: 900px) {
    .fit-grid[b-e90retzi2c] {
        grid-template-columns: 1fr;
    }
}

/* ---------------- TIME ---------------- */
.time-grid[b-e90retzi2c] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.time-card[b-e90retzi2c] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

/* Make the time cards clickable without changing the layout */
.time-grid a.time-card[b-e90retzi2c] {
    display: block;
    color: inherit;
    text-decoration: none;
    cursor: pointer;
    transition: transform 120ms ease, box-shadow 120ms ease, border-color 120ms ease, filter 120ms ease;
}

    .time-grid a.time-card:hover[b-e90retzi2c] {
        transform: translateY(-2px);
        filter: brightness(0.995);
    }

    .time-grid a.time-card:focus-visible[b-e90retzi2c] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
    }

.time-card.featured[b-e90retzi2c] {
    border-color: color-mix(in srgb, var(--primary), transparent 45%);
    box-shadow: 0 14px 40px rgba(0,0,0,0.12);
}

.time-num[b-e90retzi2c] {
    margin: 8px 0 2px;
    font-size: 22px;
    font-weight: 900;
    color: var(--primary);
}

.note-box[b-e90retzi2c] {
    margin-top: 18px;
    background: color-mix(in srgb, var(--accent), transparent 85%);
    color: #8B5E00;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid color-mix(in srgb, var(--accent), transparent 65%);
    display: flex;
    flex-direction: column;
    gap: 6px;
    align-items: center;
    justify-content: center;
    text-align: center;
}

@media (max-width: 900px) {
    .time-grid[b-e90retzi2c] {
        grid-template-columns: 1fr;
    }
}

/* ---------------- TYPICAL WEEK ---------------- */
.week-grid[b-e90retzi2c] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 12px;
}

.day[b-e90retzi2c] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 14px 14px 12px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

    .day p[b-e90retzi2c] {
        margin: 0;
    }

        .day p + p[b-e90retzi2c] {
            margin-top: 6px;
        }

.day-top[b-e90retzi2c] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}

.dow[b-e90retzi2c] {
    font-weight: 900;
    color: var(--ink);
}

.tag[b-e90retzi2c] {
    font-size: 12px;
    font-weight: 900;
    padding: 4px 8px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--primary), transparent 90%);
    color: var(--primary);
    border: 1px solid color-mix(in srgb, var(--primary), transparent 65%);
}

@media (max-width: 1100px) {
    .week-grid[b-e90retzi2c] {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 760px) {
    .week-grid[b-e90retzi2c] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .week-grid[b-e90retzi2c] {
        grid-template-columns: 1fr;
    }
}

/* ---------------- FAQ ---------------- */
.faq[b-e90retzi2c] {
    display: grid;
    gap: 12px;
}

    .faq details[b-e90retzi2c] {
        background: var(--surface);
        border-radius: var(--radius);
        box-shadow: var(--shadow);
        border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
        overflow: hidden;
    }

    .faq summary[b-e90retzi2c] {
        padding: 14px 16px;
        cursor: pointer;
        font-weight: 900;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        list-style: none;
    }

        .faq summary[b-e90retzi2c]::-webkit-details-marker {
            display: none;
        }

        .faq summary[b-e90retzi2c]::after {
            content: "+";
            color: var(--primary);
            font-size: 22px;
            line-height: 1;
        }

    .faq details[open] summary[b-e90retzi2c] {
        border-bottom: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
    }

        .faq details[open] summary[b-e90retzi2c]::after {
            content: "–";
        }

.answer[b-e90retzi2c] {
    padding: 14px 16px 16px;
    color: var(--muted);
}

    .answer p[b-e90retzi2c] {
        margin: 0;
    }

/* ---------------- FINAL CTA (inside FAQ section) ---------------- */
.final-cta[b-e90retzi2c] {
    margin-top: 18px;
}

.final-box[b-e90retzi2c] {
    position: relative;
    overflow: hidden;
    background: var(--surface);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    padding: clamp(18px, 3.5vw, 28px);
    text-align: center;
}

    .final-box[b-e90retzi2c]::before {
        content: "";
        position: absolute;
        inset: -2px;
        pointer-events: none;
        background: radial-gradient(650px 340px at 25% 10%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(500px 320px at 85% 20%, color-mix(in srgb, var(--accent), transparent 84%), transparent 70%);
        opacity: 0.9;
    }

    .final-box > *[b-e90retzi2c] {
        position: relative;
    }

    /* Fix: ensure the lede line is centered within the card body */
    .final-box .lede[b-e90retzi2c] {
        margin-left: auto;
        margin-right: auto;
    }
/* /Pages/Join.razor.rz.scp.css */
/* Help anchor jumps land below the sticky nav */
#plans[b-zv47lbtt6j], #signup[b-zv47lbtt6j] {
    scroll-margin-top: 5rem;
}

.join[b-zv47lbtt6j] {
    overflow-x: clip;
}

/* ---------------- HERO (CENTERED) ---------------- */
.hero[b-zv47lbtt6j] {
    position: relative;
    padding: clamp(46px, 7vw, 96px) 0 42px;
    text-align: center;
}

    .hero[b-zv47lbtt6j]::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background: radial-gradient(900px 520px at 50% 0%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(700px 420px at 80% 30%, color-mix(in srgb, var(--accent), transparent 86%), transparent 70%);
        opacity: 0.95;
    }

.hero-inner[b-zv47lbtt6j] {
    position: relative; /* above the decoration */
    max-width: 75ch;
    margin: 0 auto;
    display: grid;
    justify-items: center;
    gap: 12px;
}

.kicker[b-zv47lbtt6j] {
    color: var(--muted);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0;
}

.lede[b-zv47lbtt6j] {
    font-size: clamp(16px, 2.5vw, 20px);
    color: var(--muted);
    max-width: 60ch;
    margin: 0;
}

.pill-row[b-zv47lbtt6j] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    margin-top: 4px;
}

/* Non-interactive “pill” styling (avoid button-like look) */
.pill[b-zv47lbtt6j] {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--muted), transparent 90%);
    color: color-mix(in srgb, var(--ink), transparent 35%);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 65%);
    font-weight: 750;
    font-size: 13px;
    cursor: default;
}

.cta-row[b-zv47lbtt6j] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    align-items: center;
    margin-top: 10px;
}

    .cta-row.center[b-zv47lbtt6j] {
        justify-content: center;
    }

.fineprint[b-zv47lbtt6j] {
    margin: 6px 0 0;
    font-size: 14px;
    color: var(--muted);
}

    .fineprint.dark[b-zv47lbtt6j] {
        color: color-mix(in srgb, var(--ink), transparent 35%);
    }

/* Buttons (scoped to this page) */
.btn[b-zv47lbtt6j] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 999px;
    border: none;
    text-decoration: none;
    font-weight: 650;
    line-height: 1.1;
    cursor: pointer;
    user-select: none;
}

    .btn.primary[b-zv47lbtt6j] {
        background: var(--primary);
        color: white;
        box-shadow: var(--shadow);
    }

    .btn.secondary[b-zv47lbtt6j] {
        background: color-mix(in srgb, var(--primary), transparent 88%);
        color: var(--primary);
        border: 1px solid color-mix(in srgb, var(--primary), transparent 65%);
        box-shadow: none;
    }

    .btn.wide[b-zv47lbtt6j] {
        width: 100%;
    }

    .btn:hover[b-zv47lbtt6j] {
        filter: brightness(0.98);
    }

    .btn:focus-visible[b-zv47lbtt6j] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
    }

/* Stack hero CTAs on small screens */
@media (max-width: 520px) {
    .cta-row[b-zv47lbtt6j] {
        flex-direction: column;
        align-items: stretch;
    }

        .cta-row .btn[b-zv47lbtt6j] {
            width: 100%;
        }
}

/* ---------------- SECTIONS / SHARED BLOCKS ---------------- */
.section[b-zv47lbtt6j] {
    padding: 46px 0;
}

.section-alt[b-zv47lbtt6j] {
    background: color-mix(in srgb, var(--primary), transparent 96%);
    border-top: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
    border-bottom: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
}

.section-head[b-zv47lbtt6j] {
    margin-bottom: 18px;
    max-width: 78ch;
}

/* Section badges (less button-y) */
.badge[b-zv47lbtt6j] {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    background: color-mix(in srgb, var(--muted), transparent 92%);
    color: color-mix(in srgb, var(--ink), transparent 40%);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 800;
    font-size: 13px;
    cursor: default;
}

/* Check list */
ul.check[b-zv47lbtt6j] {
    list-style: none;
    padding: 0;
    margin: 12px 0 0;
    display: grid;
    gap: 8px;
}

    ul.check li[b-zv47lbtt6j]::before {
        content: "✔";
        color: var(--primary);
        margin-right: 8px;
        font-weight: 800;
    }

.micro[b-zv47lbtt6j] {
    margin: 10px 0 0;
    font-size: 13px;
    color: var(--muted);
}

/* ---------------- PLANS ---------------- */
.plan-grid[b-zv47lbtt6j] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.plan[b-zv47lbtt6j] {
    position: relative;
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    display: flex;
    flex-direction: column;
}

.plan-top[b-zv47lbtt6j] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 8px;
}

.price[b-zv47lbtt6j] {
    margin: 0;
    text-align: right;
    line-height: 1.1;
}

.amount[b-zv47lbtt6j] {
    display: block;
    font-size: 22px;
    font-weight: 900;
    color: var(--primary);
}

.per[b-zv47lbtt6j] {
    display: block;
    font-size: 13px;
    color: var(--muted);
    margin-top: 2px;
}

.plan-desc[b-zv47lbtt6j] {
    margin: 0 0 6px;
    color: var(--muted);
}

/* More breathing room between checklist and CTA in plan cards */
.plan ul.check[b-zv47lbtt6j] {
    margin: 12px 0 18px;
}

/* Featured plan */
.plan.featured[b-zv47lbtt6j] {
    border-color: color-mix(in srgb, var(--primary), transparent 45%);
    box-shadow: 0 14px 40px rgba(0,0,0,0.12);
}

/* Ribbon: keep overlap vibe, but never cover key info (price/title) */
.ribbon[b-zv47lbtt6j] {
    position: absolute;
    top: -14px;
    left: 50%;
    transform: translateX(-50%);
    padding: 6px 14px;
    background: var(--accent);
    color: #1F2937;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    border-radius: 999px;
    box-shadow: 0 10px 24px rgba(0,0,0,0.18);
    pointer-events: none;
}

@media (max-width: 900px) {
    .plan-grid[b-zv47lbtt6j] {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 640px) {
    .plan-grid[b-zv47lbtt6j] {
        grid-template-columns: 1fr;
    }

    /* Make the featured (Reset) plan appear first on mobile */
    .plan.featured[b-zv47lbtt6j] {
        order: -1;
    }

    .plan-top[b-zv47lbtt6j] {
        flex-direction: column;
        align-items: flex-start;
    }

    .price[b-zv47lbtt6j] {
        text-align: left;
    }
}

/* ---------------- VALUE GRID ---------------- */
.value-grid[b-zv47lbtt6j] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.value[b-zv47lbtt6j] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

    .value p[b-zv47lbtt6j] {
        color: var(--muted);
    }

@media (max-width: 700px) {
    .value-grid[b-zv47lbtt6j] {
        grid-template-columns: 1fr;
    }
}

/* ---------------- TIMELINE ---------------- */
.timeline[b-zv47lbtt6j] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 12px;
}

    .timeline li[b-zv47lbtt6j] {
        display: flex;
        gap: 14px;
        align-items: flex-start;
        background: var(--surface);
        border-radius: var(--radius);
        padding: 14px 16px;
        box-shadow: var(--shadow);
        border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    }

.t-step[b-zv47lbtt6j] {
    flex: 0 0 auto;
    width: 32px;
    height: 32px;
    border-radius: 999px;
    background: var(--primary);
    color: white;
    display: inline-grid;
    place-items: center;
    font-weight: 900;
    line-height: 1;
}

.t-body p[b-zv47lbtt6j] {
    margin: 6px 0 0;
}

/* Callout */
.callout[b-zv47lbtt6j] {
    margin-top: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    background: var(--surface);
    padding: 14px 16px;
    border-radius: var(--radius);
    border: 1px dashed color-mix(in srgb, var(--muted), transparent 60%);
}

    .callout p[b-zv47lbtt6j] {
        margin: 6px 0 0;
    }

@media (max-width: 640px) {
    .callout[b-zv47lbtt6j] {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* ---------------- FAQ ---------------- */
.faq[b-zv47lbtt6j] {
    display: grid;
    gap: 12px;
}

    .faq details[b-zv47lbtt6j] {
        background: var(--surface);
        border-radius: var(--radius);
        box-shadow: var(--shadow);
        border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
        overflow: hidden;
    }

    .faq summary[b-zv47lbtt6j] {
        padding: 14px 16px;
        cursor: pointer;
        font-weight: 900;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        list-style: none;
    }

        .faq summary[b-zv47lbtt6j]::-webkit-details-marker {
            display: none;
        }

        .faq summary[b-zv47lbtt6j]::after {
            content: "+";
            color: var(--primary);
            font-size: 22px;
            line-height: 1;
        }

    .faq details[open] summary[b-zv47lbtt6j] {
        border-bottom: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
    }

        .faq details[open] summary[b-zv47lbtt6j]::after {
            content: "–";
        }

.answer[b-zv47lbtt6j] {
    padding: 14px 16px 16px;
    color: var(--muted);
}

    .answer p[b-zv47lbtt6j] {
        margin: 0;
    }

/* ---------------- POLICY ---------------- */
.policy[b-zv47lbtt6j] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.policy-card[b-zv47lbtt6j] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

@media (max-width: 800px) {
    .policy[b-zv47lbtt6j] {
        grid-template-columns: 1fr;
    }
}

/* ---------------- FINAL CTA ---------------- */
.final-cta[b-zv47lbtt6j] {
    padding: 56px 0;
}

.final-box[b-zv47lbtt6j] {
    position: relative;
    overflow: hidden;
    background: var(--surface);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    padding: clamp(22px, 4vw, 34px);
    text-align: center;
}

    .final-box[b-zv47lbtt6j]::before {
        content: "";
        position: absolute;
        inset: -2px;
        pointer-events: none;
        background: radial-gradient(650px 340px at 25% 10%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(500px 320px at 85% 20%, color-mix(in srgb, var(--accent), transparent 84%), transparent 70%);
        opacity: 0.9;
    }

    .final-box > *[b-zv47lbtt6j] {
        position: relative;
    }

    /* Fix lede centering in the final CTA block */
    .final-box .lede[b-zv47lbtt6j] {
        margin-left: auto;
        margin-right: auto;
    }

/* Make the graduate link look intentional */
.final-cta .fineprint a[b-zv47lbtt6j] {
    color: var(--primary);
    font-weight: 750;
    text-decoration: underline;
    text-underline-offset: 2px;
}


.amount.was[b-zv47lbtt6j] {
    color: var(--muted);
    font-size: 16px;
    font-weight: 800;
    text-decoration: line-through;
    text-decoration-thickness: 2px;
    text-decoration-color: color-mix(in srgb, var(--muted), transparent 10%);
}

.limited[b-zv47lbtt6j] {
    display: block;
    margin-top: 6px;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--accent);
}

.amount.now[b-zv47lbtt6j] {
    font-size: 26px; /* bigger than the default 22px */
}
/* /Pages/NotFound.razor.rz.scp.css */
.notfound[b-934ttnp7qv] {
    position: relative;
    min-height: calc(100vh - 7rem);
    display: grid;
    place-items: center;
    text-align: center;
    padding: clamp(26px, 6vw, 70px) 0;
    overflow: clip;
}

    .notfound[b-934ttnp7qv]::before {
        content: "";
        position: absolute;
        inset: -40px;
        pointer-events: none;
        background: radial-gradient(900px 520px at 50% 0%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(720px 460px at 82% 38%, color-mix(in srgb, var(--accent), transparent 86%), transparent 70%);
        opacity: 0.9;
    }

.box[b-934ttnp7qv] {
    position: relative;
    max-width: 70ch;
    background: var(--surface);
    border-radius: var(--radius);
    padding: clamp(20px, 4vw, 34px);
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

.kicker[b-934ttnp7qv] {
    color: var(--muted);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0 0 8px;
}

.lede[b-934ttnp7qv] {
    font-size: clamp(16px, 2.5vw, 20px);
    color: var(--muted);
    margin: 10px 0 0;
}

.cta-row[b-934ttnp7qv] {
    margin-top: 16px;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    align-items: center;
}

/* Buttons (scoped) */
.btn[b-934ttnp7qv] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 16px;
    border-radius: 999px;
    border: none;
    text-decoration: none;
    font-weight: 650;
    line-height: 1.1;
    cursor: pointer;
    user-select: none;
}

    .btn.primary[b-934ttnp7qv] {
        background: var(--primary);
        color: white;
        box-shadow: var(--shadow);
    }

    .btn.secondary[b-934ttnp7qv] {
        background: color-mix(in srgb, var(--primary), transparent 88%);
        color: var(--primary);
        border: 1px solid color-mix(in srgb, var(--primary), transparent 65%);
        box-shadow: none;
    }

    .btn:hover[b-934ttnp7qv] {
        filter: brightness(0.98);
    }

    .btn:focus-visible[b-934ttnp7qv] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
    }

@media (max-width: 520px) {
    .cta-row[b-934ttnp7qv] {
        flex-direction: column;
        align-items: stretch;
    }

        .cta-row .btn[b-934ttnp7qv] {
            width: 100%;
        }
}
/* /Pages/Survey.razor.rz.scp.css */
.survey[b-sx07wkjs8t] {
    overflow-x: clip;
}

/* ---------------- HERO (CENTERED) ---------------- */
.hero[b-sx07wkjs8t] {
    position: relative;
    padding: clamp(46px, 7vw, 96px) 0 42px;
    text-align: center;
}

    .hero[b-sx07wkjs8t]::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background: radial-gradient(900px 520px at 50% 0%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(720px 460px at 82% 38%, color-mix(in srgb, var(--accent), transparent 86%), transparent 70%);
        opacity: 0.95;
    }

.hero-inner[b-sx07wkjs8t] {
    position: relative;
    max-width: 85ch;
    margin: 0 auto;
    display: grid;
    justify-items: center;
    gap: 12px;
}

.kicker[b-sx07wkjs8t] {
    color: var(--muted);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0;
}

.lede[b-sx07wkjs8t] {
    font-size: clamp(16px, 2.5vw, 20px);
    color: var(--muted);
    max-width: 60ch;
    margin: 0;
}

/* Progress */
.progress-wrap[b-sx07wkjs8t] {
    width: min(640px, 100%);
    margin: 16px auto 0; /* centered in the card */
    background: color-mix(in srgb, var(--surface), transparent 0%);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 72%);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    padding: 12px 14px;
}

.progress-meta[b-sx07wkjs8t] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
}

.small-on-dark[b-sx07wkjs8t] {
    font-size: 13px;
    color: color-mix(in srgb, var(--ink), transparent 35%);
}

.progress-track[b-sx07wkjs8t] {
    height: 10px;
    border-radius: 999px;
    overflow: hidden;
    background: color-mix(in srgb, var(--muted), transparent 80%);
}

.progress-fill[b-sx07wkjs8t] {
    height: 100%;
    width: 0%;
    background: var(--primary);
    border-radius: 999px;
    transition: width 180ms ease-out;
}

/* ---------------- CONTENT ---------------- */
.section[b-sx07wkjs8t] {
    padding: 46px 0;
}

/* Question card */
.card[b-sx07wkjs8t] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

.qhead[b-sx07wkjs8t] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 14px;
}

.qnum[b-sx07wkjs8t] {
    flex: 0 0 auto;
    width: 36px;
    height: 36px;
    border-radius: 999px;
    display: inline-grid;
    place-items: center;
    background: var(--primary);
    color: white;
    font-weight: 900;
    line-height: 1;
}

.qtext[b-sx07wkjs8t] {
    min-width: 0;
}

.qtitle[b-sx07wkjs8t] {
    margin: 0;
    font-size: 20px;
    line-height: 1.25;
}

.qdetail[b-sx07wkjs8t] {
    margin: 8px 0 0;
    color: var(--muted);
}

/* Choices */
.choices[b-sx07wkjs8t] {
    border: 0;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 10px;
}

.choice[b-sx07wkjs8t] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    border-radius: 12px;
    border: 1px solid color-mix(in srgb, var(--muted), transparent 60%);
    background: color-mix(in srgb, var(--surface), transparent 0%);
    cursor: pointer;
    user-select: none;
}

    .choice:hover[b-sx07wkjs8t] {
        background: color-mix(in srgb, var(--primary), transparent 93%);
    }

    .choice:focus-within[b-sx07wkjs8t] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
    }

    /* Custom radio indicator */
    .choice[b-sx07wkjs8t]::before {
        content: "";
        width: 18px;
        height: 18px;
        border-radius: 999px;
        border: 2px solid color-mix(in srgb, var(--muted), transparent 25%);
        background: transparent;
        flex: 0 0 auto;
    }

    .choice.selected[b-sx07wkjs8t] {
        border-color: color-mix(in srgb, var(--primary), transparent 35%);
        background: color-mix(in srgb, var(--primary), transparent 90%);
    }

        .choice.selected[b-sx07wkjs8t]::before {
            border-color: var(--primary);
            box-shadow: inset 0 0 0 5px var(--primary);
        }

    /* UPDATED: make the (invisible) input clickable/focusable */
    .choice input[b-sx07wkjs8t] {
        position: absolute;
        inset: 0;
        opacity: 0;
        margin: 0;
        cursor: pointer;
    }

.choice-label[b-sx07wkjs8t] {
    font-weight: 700;
    color: var(--ink);
}

/* Nav row */
.qnav[b-sx07wkjs8t] {
    margin-top: 16px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.spacer[b-sx07wkjs8t] {
    flex: 1;
}

/* Buttons (scoped to this page) */
.btn[b-sx07wkjs8t] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 650;
    line-height: 1.1;
    border: none;
    cursor: pointer;
    user-select: none;
}

    .btn.primary[b-sx07wkjs8t] {
        background: var(--primary);
        color: white;
        box-shadow: var(--shadow);
    }

    .btn.secondary[b-sx07wkjs8t] {
        background: color-mix(in srgb, var(--primary), transparent 88%);
        color: var(--primary);
        border: 1px solid color-mix(in srgb, var(--primary), transparent 65%);
        box-shadow: none;
    }

    .btn.tertiary[b-sx07wkjs8t] {
        background: transparent;
        color: var(--ink);
        border: 1px solid color-mix(in srgb, var(--muted), transparent 45%);
        box-shadow: none;
    }

    .btn:hover[b-sx07wkjs8t] {
        filter: brightness(0.98);
    }

    .btn:disabled[b-sx07wkjs8t] {
        opacity: 0.55;
        cursor: not-allowed;
        filter: none;
        box-shadow: none;
    }

    .btn:focus-visible[b-sx07wkjs8t] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
    }

.helper[b-sx07wkjs8t] {
    margin: 14px 0 0;
    font-size: 14px;
    color: var(--muted);
}

.muted[b-sx07wkjs8t] {
    margin: 14px 0 0;
    color: var(--muted);
    font-size: 14px;
}

/* Accessible screen-reader-only helper */
.sr-only[b-sx07wkjs8t] {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Small screens */
@media (max-width: 520px) {
    .qnav[b-sx07wkjs8t] {
        flex-direction: column;
        align-items: stretch;
    }

    .spacer[b-sx07wkjs8t] {
        display: none;
    }

    .qnav .btn[b-sx07wkjs8t] {
        width: 100%;
    }
}
/* /Pages/SurveyResults.razor.rz.scp.css */
.results[b-9ytgeedl02] {
    overflow-x: clip;
}

/* ---------------- HERO (CENTERED) ---------------- */
.hero[b-9ytgeedl02] {
    position: relative;
    padding: clamp(46px, 7vw, 96px) 0 42px;
    text-align: center;
}

    .hero[b-9ytgeedl02]::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background: radial-gradient(900px 520px at 50% 0%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(720px 460px at 82% 38%, color-mix(in srgb, var(--accent), transparent 86%), transparent 70%);
        opacity: 0.95;
    }

.hero-inner[b-9ytgeedl02] {
    position: relative;
    max-width: 90ch;
    margin: 0 auto;
    display: grid;
    justify-items: center;
    gap: 12px;
}

.kicker[b-9ytgeedl02] {
    color: var(--muted);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0;
}

.lede[b-9ytgeedl02] {
    font-size: clamp(16px, 2.5vw, 20px);
    color: var(--muted);
    max-width: 65ch;
    margin: 0;
}

.fineprint[b-9ytgeedl02] {
    margin: 6px 0 0;
    font-size: 14px;
    color: var(--muted);
}

.small-on-dark[b-9ytgeedl02] {
    font-size: 14px;
    color: color-mix(in srgb, var(--ink), transparent 35%);
}

/* Buttons (scoped to this page) */
.btn[b-9ytgeedl02] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 999px;
    border: none;
    text-decoration: none;
    font-weight: 650;
    line-height: 1.1;
    cursor: pointer;
    user-select: none;
}

    .btn.primary[b-9ytgeedl02] {
        background: var(--primary);
        color: white;
        box-shadow: var(--shadow);
    }

    .btn.secondary[b-9ytgeedl02] {
        background: color-mix(in srgb, var(--primary), transparent 88%);
        color: var(--primary);
        border: 1px solid color-mix(in srgb, var(--primary), transparent 65%);
        box-shadow: none;
    }

    .btn:hover[b-9ytgeedl02] {
        filter: brightness(0.98);
    }

    .btn:focus-visible[b-9ytgeedl02] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
    }

.cta-row[b-9ytgeedl02] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    align-items: center;
    margin-top: 10px;
}

    .cta-row.center[b-9ytgeedl02] {
        justify-content: center;
    }

/* Score block */
.score-wrap[b-9ytgeedl02] {
    width: min(640px, 100%);
    margin-top: 8px;
    background: color-mix(in srgb, var(--surface), transparent 0%);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 72%);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    padding: 14px;
    display: grid;
    gap: 12px;
}

.score-box[b-9ytgeedl02] {
    display: grid;
    justify-items: center;
    gap: 4px;
}

.score[b-9ytgeedl02] {
    font-size: 44px;
    font-weight: 950;
    color: var(--primary);
    line-height: 1;
}

.score-sub[b-9ytgeedl02] {
    font-size: 13px;
    color: var(--muted);
}

.score-track[b-9ytgeedl02] {
    height: 12px;
    border-radius: 999px;
    overflow: hidden;
    background: color-mix(in srgb, var(--muted), transparent 80%);
}

.score-fill[b-9ytgeedl02] {
    height: 100%;
    width: 0%;
    background: var(--primary);
    border-radius: 999px;
    transition: width 180ms ease-out;
}

/* ---------------- CONTENT ---------------- */
.section[b-9ytgeedl02] {
    padding: 46px 0;
}

.grid[b-9ytgeedl02] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.card[b-9ytgeedl02] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px;
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

    .card h2[b-9ytgeedl02] {
        margin-top: 0;
    }

.muted[b-9ytgeedl02] {
    color: var(--muted);
}

/* Steps list */
.steps[b-9ytgeedl02] {
    margin: 12px 0 0;
    padding-left: 1.25rem;
    display: grid;
    gap: 8px;
}

    .steps li[b-9ytgeedl02] {
        color: var(--ink);
    }

.hint-list[b-9ytgeedl02] {
    margin-top: 12px;
    display: grid;
    gap: 10px;
}

.hint[b-9ytgeedl02] {
    border-radius: 12px;
    padding: 12px 14px;
    background: color-mix(in srgb, var(--primary), transparent 95%);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 78%);
}

.hint-title[b-9ytgeedl02] {
    font-weight: 900;
    color: var(--ink);
}

.hint-tip[b-9ytgeedl02] {
    margin-top: 6px;
    color: var(--muted);
    font-size: 14px;
}

/* ---------------- FINAL CTA ---------------- */
.final-cta[b-9ytgeedl02] {
    margin-top: 18px;
}

.final-box[b-9ytgeedl02] {
    position: relative;
    overflow: hidden;
    background: var(--surface);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    padding: clamp(18px, 3.5vw, 28px);
    text-align: center;
}

    .final-box[b-9ytgeedl02]::before {
        content: "";
        position: absolute;
        inset: -2px;
        pointer-events: none;
        background: radial-gradient(650px 340px at 25% 10%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(500px 320px at 85% 20%, color-mix(in srgb, var(--accent), transparent 84%), transparent 70%);
        opacity: 0.9;
    }

    .final-box > *[b-9ytgeedl02] {
        position: relative;
    }

.under-cta[b-9ytgeedl02] {
    margin-top: 12px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    align-items: center;
}

.text-link[b-9ytgeedl02] {
    color: var(--primary);
    font-weight: 800;
    text-decoration: none;
}

    .text-link:hover[b-9ytgeedl02],
    .text-link:focus-visible[b-9ytgeedl02] {
        text-decoration: underline;
        outline: none;
    }

.dot[b-9ytgeedl02] {
    color: color-mix(in srgb, var(--muted), transparent 10%);
}

/* ---------------- HIGH RISK SIGNUP ---------------- */
.signup-cta[b-9ytgeedl02] {
    margin-top: 18px;
}

.signup-box[b-9ytgeedl02] {
    background: var(--surface);
    border-radius: var(--radius);
    padding: clamp(18px, 3.5vw, 24px);
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    text-align: center;
}

.signup-title[b-9ytgeedl02] {
    margin: 0;
}

.signup-sub[b-9ytgeedl02] {
    margin: 10px auto 0;
    max-width: 70ch;
    color: var(--muted);
    font-size: 14px;
}

.signup-form[b-9ytgeedl02] {
    width: min(640px, 100%);
    margin: 18px auto 0; /* more breathing room under the text */
    display: grid;
    gap: 14px;
    text-align: left;
}

.signup-fields[b-9ytgeedl02] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    align-items: start;
}

.signup-field[b-9ytgeedl02] {
    display: grid;
    gap: 6px;
    align-content: start;
}

    .signup-field label[b-9ytgeedl02] {
        font-weight: 850;
        font-size: 13px;
        color: var(--ink);
    }

.signup-input[b-9ytgeedl02] {
    width: 100%;
    padding: 12px 14px;
    border-radius: 12px;
    border: 1px solid color-mix(in srgb, var(--muted), transparent 65%);
    background: var(--surface);
    color: var(--ink);
}

    .signup-input:focus[b-9ytgeedl02] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
    }

.signup-help[b-9ytgeedl02] {
    margin: 2px 0 0;
    font-size: 12px;
    color: var(--muted);
}

.signup-form .validation-message[b-9ytgeedl02] {
    font-size: 12px;
    color: #b91c1c;
}

.signup-error[b-9ytgeedl02] {
    border-radius: 12px;
    padding: 10px 12px;
    background: color-mix(in srgb, #b91c1c, transparent 92%);
    border: 1px solid color-mix(in srgb, #b91c1c, transparent 78%);
    color: #b91c1c;
}

.signup-actions[b-9ytgeedl02] {
    margin-top: 10px; /* separates button from the phone helper text */
    display: flex;
    justify-content: center;
}

    .signup-actions .btn[b-9ytgeedl02] {
        width: auto;
        min-width: 280px;
    }

.signup-fineprint[b-9ytgeedl02] {
    margin: 10px 0 0; /* separates fineprint from button */
    font-size: 12px;
    color: var(--muted);
    text-align: center;
}

.signup-success[b-9ytgeedl02] {
    margin-top: 12px;
    border-radius: 12px;
    padding: 12px 14px;
    background: color-mix(in srgb, var(--accent), transparent 90%);
    border: 1px solid color-mix(in srgb, var(--accent), transparent 70%);
    text-align: left;
}

.signup-success-title[b-9ytgeedl02] {
    font-weight: 950;
    color: var(--ink);
}

.signup-success-text[b-9ytgeedl02] {
    margin-top: 4px;
    font-size: 14px;
    color: var(--muted);
}

/* Responsive */
@media (max-width: 900px) {
    .grid[b-9ytgeedl02] {
        grid-template-columns: 1fr;
    }
}

/* Make fields stack on smaller screens */
@media (max-width: 720px) {
    .signup-fields[b-9ytgeedl02] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 520px) {
    .cta-row[b-9ytgeedl02] {
        flex-direction: column;
        align-items: stretch;
    }

        .cta-row .btn[b-9ytgeedl02] {
            width: 100%;
        }

    .signup-actions .btn[b-9ytgeedl02] {
        width: 100%;
        min-width: 0;
    }
}
/* /Stripe/Checkout.razor.rz.scp.css */
/* Checkout.razor.css (CSS isolation) */

.checkout-redirect[b-xq1770vza7] {
    position: relative;
    min-height: calc(100vh - 7rem);
    display: grid;
    place-items: center;
    padding: clamp(26px, 6vw, 70px) 0;
    overflow: clip;
}

    .checkout-redirect[b-xq1770vza7]::before {
        content: "";
        position: absolute;
        inset: -40px;
        pointer-events: none;
        background: radial-gradient(900px 520px at 50% 0%, color-mix(in srgb, var(--primary), transparent 82%), transparent 70%), radial-gradient(720px 460px at 82% 38%, color-mix(in srgb, var(--accent), transparent 86%), transparent 70%);
        opacity: 0.9;
    }

.card[b-xq1770vza7] {
    position: relative;
    width: min(760px, 92vw);
    background: var(--surface);
    border-radius: var(--radius);
    padding: clamp(20px, 4vw, 34px);
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    text-align: center;
}

.header[b-xq1770vza7] {
    display: grid;
    justify-items: center;
    gap: 8px;
    margin-bottom: 10px;
}

.kicker[b-xq1770vza7] {
    color: var(--muted);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0;
}

.title-row[b-xq1770vza7] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
}

.card h1[b-xq1770vza7] {
    margin: 0;
    font-size: clamp(26px, 5vw, 42px);
    line-height: 1.1;
    text-wrap: balance;
}

.lede[b-xq1770vza7] {
    margin: 12px 0 0;
    font-size: clamp(16px, 2.4vw, 19px);
    color: var(--muted);
}

/* Status pill (centered within the card) */
.status[b-xq1770vza7] {
    margin-top: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 14px;
    border-radius: var(--radius-sm);
    background: color-mix(in srgb, var(--primary), transparent 92%);
    border: 1px solid color-mix(in srgb, var(--primary), transparent 70%);
    color: color-mix(in srgb, var(--primary), black 10%);
    width: fit-content;
    max-width: min(62ch, 100%);
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.status-text[b-xq1770vza7] {
    text-align: center;
    line-height: 1.35;
}

.pulse[b-xq1770vza7] {
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: var(--teal);
    box-shadow: 0 0 0 0 color-mix(in srgb, var(--teal), transparent 35%);
    animation: crPulse-b-xq1770vza7 1.6s ease-in-out infinite;
    flex: 0 0 auto;
}

.fine[b-xq1770vza7] {
    margin: 14px 0 0;
    font-size: 14px;
    color: var(--muted);
}

    .fine.subtle[b-xq1770vza7] {
        margin-top: 8px;
    }

.domain[b-xq1770vza7] {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 0.95em;
    padding: 2px 10px;
    border-radius: 999px;
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
    background: color-mix(in srgb, var(--muted), transparent 92%);
    color: color-mix(in srgb, var(--ink), transparent 10%);
    white-space: nowrap;
}

.spinner[b-xq1770vza7] {
    width: 44px;
    height: 44px;
    border-radius: 999px;
    border: 4px solid color-mix(in srgb, var(--primary), transparent 85%);
    border-top-color: var(--primary);
    border-right-color: color-mix(in srgb, var(--teal), transparent 0%);
    animation: crSpin-b-xq1770vza7 0.9s linear infinite;
    flex: 0 0 auto;
}

@keyframes crSpin-b-xq1770vza7 {
    to {
        transform: rotate(360deg);
    }
}

@keyframes crPulse-b-xq1770vza7 {
    0% {
        box-shadow: 0 0 0 0 color-mix(in srgb, var(--teal), transparent 30%);
    }

    60% {
        box-shadow: 0 0 0 10px transparent;
    }

    100% {
        box-shadow: 0 0 0 0 transparent;
    }
}

@media (prefers-reduced-motion: reduce) {
    .spinner[b-xq1770vza7],
    .pulse[b-xq1770vza7] {
        animation: none;
    }
}

@media (max-width: 520px) {
    .title-row[b-xq1770vza7] {
        flex-direction: column;
        gap: 10px;
    }

    .spinner[b-xq1770vza7] {
        width: 40px;
        height: 40px;
    }
}
/* /Stripe/CheckoutFailure.razor.rz.scp.css */
/* CheckoutFailure.razor.css (CSS isolation) */

.checkout-failure[b-cnc0mwb50d] {
    position: relative;
    min-height: calc(100vh - 7rem);
    display: grid;
    place-items: center;
    text-align: center;
    padding: clamp(26px, 6vw, 70px) 0;
    overflow: clip;
}

    .checkout-failure[b-cnc0mwb50d]::before {
        content: "";
        position: absolute;
        inset: -40px;
        pointer-events: none;
        background: radial-gradient(900px 520px at 50% 0%, color-mix(in srgb, var(--primary), transparent 84%), transparent 70%), radial-gradient(720px 460px at 82% 38%, color-mix(in srgb, var(--accent), transparent 90%), transparent 70%);
        opacity: 0.9;
    }

.card[b-cnc0mwb50d] {
    position: relative;
    width: min(760px, 92vw);
    background: var(--surface);
    border-radius: var(--radius);
    padding: clamp(20px, 4vw, 34px);
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

.kicker[b-cnc0mwb50d] {
    color: var(--muted);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0 0 8px;
}

.card h1[b-cnc0mwb50d] {
    margin: 0 0 10px;
    font-size: clamp(26px, 5vw, 44px);
    line-height: 1.1;
    text-wrap: balance;
}

.lede[b-cnc0mwb50d] {
    margin: 0;
    font-size: clamp(16px, 2.4vw, 19px);
    color: var(--muted);
}

.cta-row[b-cnc0mwb50d] {
    margin-top: 18px;
    display: flex;
    justify-content: center;
}

/* Scoped button styling (matches your site’s page buttons) */
.btn[b-cnc0mwb50d] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 16px;
    border-radius: 999px;
    border: none;
    text-decoration: none;
    font-weight: 650;
    line-height: 1.1;
    cursor: pointer;
    user-select: none;
    min-height: 44px;
}

    .btn.primary[b-cnc0mwb50d] {
        background: var(--primary);
        color: white;
        box-shadow: var(--shadow);
    }

    .btn:hover[b-cnc0mwb50d] {
        filter: brightness(0.98);
    }

    .btn:focus-visible[b-cnc0mwb50d] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
    }

@media (max-width: 520px) {
    .cta-row[b-cnc0mwb50d] {
        justify-content: stretch;
    }

        .cta-row .btn[b-cnc0mwb50d] {
            width: 100%;
        }
}
/* /Stripe/CheckoutSuccess.razor.rz.scp.css */
/* CheckoutSuccess.razor.css (CSS isolation) */

.checkout-success[b-3lij7v5mxx] {
    position: relative;
    min-height: calc(100vh - 7rem);
    display: grid;
    place-items: center;
    text-align: center;
    padding: clamp(26px, 6vw, 70px) 0;
    overflow: clip;
}

    .checkout-success[b-3lij7v5mxx]::before {
        content: "";
        position: absolute;
        inset: -40px;
        pointer-events: none;
        background: radial-gradient(900px 520px at 50% 0%, color-mix(in srgb, var(--primary), transparent 84%), transparent 70%), radial-gradient(720px 460px at 82% 38%, color-mix(in srgb, var(--teal), transparent 86%), transparent 70%);
        opacity: 0.9;
    }

.card[b-3lij7v5mxx] {
    position: relative;
    width: min(760px, 92vw);
    background: var(--surface);
    border-radius: var(--radius);
    padding: clamp(20px, 4vw, 34px);
    box-shadow: var(--shadow);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 75%);
}

.kicker[b-3lij7v5mxx] {
    color: var(--muted);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0 0 8px;
}

.title-row[b-3lij7v5mxx] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
}

.check[b-3lij7v5mxx] {
    width: 44px;
    height: 44px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: color-mix(in srgb, var(--teal), transparent 88%);
    border: 1px solid color-mix(in srgb, var(--teal), transparent 60%);
    color: color-mix(in srgb, var(--teal), black 10%);
    font-weight: 900;
    font-size: 22px;
    line-height: 1;
    flex: 0 0 auto;
}

.card h1[b-3lij7v5mxx] {
    margin: 0;
    font-size: clamp(26px, 5vw, 44px);
    line-height: 1.1;
    text-wrap: balance;
}

.lede[b-3lij7v5mxx] {
    margin: 12px 0 0;
    font-size: clamp(16px, 2.4vw, 19px);
    color: var(--muted);
}

/* Status pill (centered) */
.status[b-3lij7v5mxx] {
    margin-top: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 14px;
    border-radius: var(--radius-sm);
    background: color-mix(in srgb, var(--teal), transparent 92%);
    border: 1px solid color-mix(in srgb, var(--teal), transparent 70%);
    color: color-mix(in srgb, var(--teal), black 18%);
    width: fit-content;
    max-width: min(62ch, 100%);
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.dot[b-3lij7v5mxx] {
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: var(--teal);
    box-shadow: 0 0 0 0 color-mix(in srgb, var(--teal), transparent 30%);
    animation: csPulse-b-3lij7v5mxx 1.8s ease-in-out infinite;
    flex: 0 0 auto;
}

.status-text[b-3lij7v5mxx] {
    line-height: 1.35;
}

/* QR block (replaces reference/meta block) */
.qr[b-3lij7v5mxx] {
    margin-top: 18px;
    text-align: center;
    background: color-mix(in srgb, var(--muted), transparent 94%);
    border: 1px solid color-mix(in srgb, var(--muted), transparent 80%);
    border-radius: var(--radius-sm);
    padding: 14px;
}

.qr-title[b-3lij7v5mxx] {
    margin: 0 0 6px;
    font-size: 12px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--muted);
}

.qr-subtitle[b-3lij7v5mxx] {
    margin: 0 0 12px;
    color: var(--muted);
    font-size: 14px;
}

.qr-img[b-3lij7v5mxx] {
    display: block;
    width: min(280px, 76vw);
    height: auto;
    margin: 0 auto;
    padding: 12px;
    border-radius: 14px;
    background: white;
    border: 1px solid color-mix(in srgb, var(--muted), transparent 70%);
    /* Keep modules crisp */
    image-rendering: crisp-edges;
    image-rendering: pixelated;
}

.qr-caption[b-3lij7v5mxx] {
    margin: 10px 0 0;
    font-size: 13px;
    color: var(--muted);
}

/* CTA */
.cta-row[b-3lij7v5mxx] {
    margin-top: 18px;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    align-items: center;
}

/* Scoped button styling */
.btn[b-3lij7v5mxx] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 16px;
    border-radius: 999px;
    border: none;
    text-decoration: none;
    font-weight: 650;
    line-height: 1.1;
    cursor: pointer;
    user-select: none;
    min-height: 44px;
}

    .btn.primary[b-3lij7v5mxx] {
        background: var(--primary);
        color: white;
        box-shadow: var(--shadow);
    }

    /* FIX: style the "Download QR" secondary button */
    .btn.secondary[b-3lij7v5mxx] {
        background: color-mix(in srgb, var(--primary), transparent 88%);
        color: var(--primary);
        border: 1px solid color-mix(in srgb, var(--primary), transparent 65%);
        box-shadow: none;
    }

    .btn:hover[b-3lij7v5mxx] {
        filter: brightness(0.98);
    }

    .btn:focus-visible[b-3lij7v5mxx] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
    }

@keyframes csPulse-b-3lij7v5mxx {
    0% {
        box-shadow: 0 0 0 0 color-mix(in srgb, var(--teal), transparent 35%);
    }

    60% {
        box-shadow: 0 0 0 10px transparent;
    }

    100% {
        box-shadow: 0 0 0 0 transparent;
    }
}

@media (prefers-reduced-motion: reduce) {
    .dot[b-3lij7v5mxx] {
        animation: none;
    }
}

@media (max-width: 520px) {
    .title-row[b-3lij7v5mxx] {
        flex-direction: column;
        gap: 10px;
    }

    .cta-row[b-3lij7v5mxx] {
        flex-direction: column;
        align-items: stretch;
    }

        .cta-row .btn[b-3lij7v5mxx] {
            width: 100%;
        }
}
