/* site palette */
html:root {
    --bg: #0B0F17;
    --surface: #131B29;
    --surface-alt: #0F1621;
    --text: #EEF0F2;
    --text-muted: #B0B6BF;
    --border: #2D333C;
    --primary: #618CD1;
    --primary-hover: #81A3DA;
    --on-primary: #111111;
    --primary-text: #618CD1;
    --accent: #E9D994;
    --gradient-primary-accent: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);
    --glow-primary: 0 2px 16px rgba(97, 140, 209, 0.25);
    --glow-accent: 0 2px 16px rgba(233, 217, 148, 0.2);
    --on-accent: #111111;
    --accent-text: #E9D994;
    --dark-band: #06070A;
    --on-dark: #FFFFFF;
    --on-dark-muted: #B6BBC3;
    --brand-btn-bg: #111111;
    --brand-btn-text: #618CD1;
    --section-alt-bg: linear-gradient(172deg, #0F1621 0%, #111925 100%);
    --dark-band-bg: linear-gradient(118deg, #06070A 0%, #12233F 100%);
    --brand-band-bg: #618CD1;
    --hero-bg: linear-gradient(118deg, #06070A 0%, #12233F 100%);
}

html:root {
    --bs-primary: #618CD1;
    --bs-primary-rgb: 97, 140, 209;
    --bs-link-color: #618CD1;
    --bs-link-color-rgb: 97, 140, 209;
    --bs-link-hover-color: #81A3DA;
    --mdb-primary: #618CD1;
    --mdb-primary-rgb: 97, 140, 209;
}

.btn-primary {
    --bs-btn-bg: var(--primary);
    --bs-btn-border-color: var(--primary);
    --bs-btn-color: var(--on-primary);
    --bs-btn-hover-bg: var(--primary-hover);
    --bs-btn-hover-border-color: var(--primary-hover);
    --bs-btn-hover-color: var(--on-primary);
    --bs-btn-active-bg: var(--primary-hover);
    --bs-btn-active-border-color: var(--primary-hover);
    --bs-btn-active-color: var(--on-primary);
    background-color: var(--primary);
    border-color: var(--primary);
    color: var(--on-primary);
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background-color: var(--primary-hover);
    border-color: var(--primary-hover);
    color: var(--on-primary);
}

.btn-outline-primary {
    --bs-btn-color: var(--primary-text);
    --bs-btn-border-color: var(--primary);
    --bs-btn-hover-bg: var(--primary);
    --bs-btn-hover-border-color: var(--primary);
    --bs-btn-hover-color: var(--on-primary);
    color: var(--primary-text);
    border-color: var(--primary);
}

.btn-outline-primary:hover {
    background-color: var(--primary);
    color: var(--on-primary);
}

.text-primary,
.link-primary {
    color: var(--primary-text) !important;
}

.bg-primary,
.text-bg-primary,
.badge.bg-primary {
    color: var(--on-primary) !important;
}

/* /site palette */

* {
    box-sizing: border-box;
}

body {
    font-family: 'Source Sans 3', sans-serif;
    background-color: var(--bg);
    color: var(--text);
    margin: 0;
    padding: 0;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}

a {
    text-decoration: none;
    transition: color 0.2s ease-in-out, opacity 0.2s ease-in-out;
}

.text-muted {
    color: var(--text-muted) !important;
}

.text-gradient {
    background: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
}

.rrr-section {
    padding: 90px 0;
    background: var(--bg);
    position: relative;
}

.rrr-section-alt {
    padding: 90px 0;
    background: var(--section-alt-bg, var(--surface-alt));
    position: relative;
}

.rrr-section-dark {
    padding: 100px 0;
    background: var(--dark-band-bg, var(--dark-band));
    color: var(--on-dark);
    position: relative;
}

.rrr-section-brand {
    padding: 80px 0;
    background: var(--brand-band-bg, var(--primary));
    color: var(--on-primary);
    position: relative;
}

.rrr-on-dark {
    color: var(--on-dark);
}

.rrr-on-dark h1,
.rrr-on-dark h2,
.rrr-on-dark h3,
.rrr-on-dark h4 {
    color: var(--on-dark);
}

.rrr-on-dark p {
    color: var(--on-dark-muted);
}

.rrr-eyebrow {
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--accent);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin-bottom: 14px;
}

.rrr-eyebrow::before,
.rrr-eyebrow::after {
    content: '';
    width: 36px;
    height: 1px;
    background: var(--border);
    display: inline-block;
}

.rrr-title {
    font-size: 2.25rem;
    font-weight: 700;
    line-height: 1.25;
    color: var(--text);
    margin-bottom: 18px;
    letter-spacing: -0.01em;
}

.rrr-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-weight: 700;
    font-size: 0.95rem;
    line-height: 1;
    border-radius: 9999px;
    padding: 14px 32px;
    border: none;
    background: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);
    color: var(--on-primary);
    cursor: pointer;
    transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
    text-decoration: none;
}

.rrr-btn:hover {
    filter: brightness(1.1);
    transform: translateY(-2px);
    box-shadow: 0 4px 20px rgba(97, 140, 209, 0.35);
    color: var(--on-primary);
}

.rrr-btn-alt {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-weight: 600;
    font-size: 0.95rem;
    line-height: 1;
    border-radius: 9999px;
    padding: 12px 30px;
    border: 1.5px solid var(--primary);
    background: transparent;
    color: var(--text);
    cursor: pointer;
    transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
    text-decoration: none;
}

.rrr-btn-alt:hover {
    background: rgba(97, 140, 209, 0.15);
    border-color: var(--primary-hover);
    color: #FFFFFF;
    transform: translateY(-2px);
}

.rrr-section-brand .rrr-btn {
    background: var(--brand-btn-bg, #111111);
    color: var(--brand-btn-text, var(--primary));
}

.rrr-section-brand .rrr-btn:hover {
    background: #000000;
    color: var(--primary-hover);
    transform: translateY(-2px);
}

.rrr-section-brand .rrr-btn-alt {
    border-color: var(--on-primary);
    color: var(--on-primary);
}

.rrr-section-brand .rrr-btn-alt:hover {
    background: rgba(17, 17, 17, 0.1);
    color: var(--on-primary);
}

.rrr-section-dark .rrr-btn-alt {
    border-color: var(--on-dark);
    color: var(--on-dark);
}

.rrr-section-dark .rrr-btn-alt:hover {
    background: rgba(255, 255, 255, 0.1);
    color: #FFFFFF;
}

.rrr-card {
    background: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
    position: relative;
}

.rrr-card:hover {
    transform: translateY(-4px);
    border-color: rgba(97, 140, 209, 0.4);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
}

.rrr-section-dark .rrr-card,
.rrr-on-dark .rrr-card {
    background: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
}

.rrr-section-dark .rrr-card h3,
.rrr-section-dark .rrr-card h4,
.rrr-on-dark .rrr-card h3,
.rrr-on-dark .rrr-card h4 {
    color: var(--text);
}

.rrr-section-dark .rrr-card p,
.rrr-on-dark .rrr-card p {
    color: var(--text-muted);
}

.rrr-media {
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 12px;
    border: 1px solid var(--border);
    overflow: hidden;
    flex-shrink: 0;
    background: var(--surface-alt);
    position: relative;
    margin-bottom: 20px;
}

.rrr-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.rrr-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 14px;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    background: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);
    color: var(--on-primary);
}

.rrr-badge-outline {
    background: transparent;
    border: 1px solid var(--border);
    color: var(--accent);
}

.rrr-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: rgba(97, 140, 209, 0.12);
    color: var(--primary);
    font-size: 1.35rem;
    flex-shrink: 0;
    transition: transform 0.2s ease;
}

.rrr-card:hover .rrr-icon {
    transform: scale(1.06);
}

.rrr-btn-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--surface);
    border: 1px solid var(--border);
    color: var(--primary);
    font-size: 1.15rem;
    cursor: pointer;
    transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease;
    text-decoration: none;
}

.rrr-btn-arrow:hover {
    background: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);
    color: var(--on-primary);
    border-color: transparent;
    transform: scale(1.08);
}

@media (max-width: 768px) {

    .rrr-section,
    .rrr-section-alt {
        padding: 60px 0;
    }

    .rrr-section-dark {
        padding: 70px 0;
    }

    .rrr-title {
        font-size: 1.75rem;
    }

    .rrr-card {
        padding: 20px 16px;
    }
}

/* ===== header ===== */
.nbp-header {
    background-color: #0B0F17;
    border-bottom: 1px solid #2D333C;
    z-index: 1030;
    width: 100%;
}

.nbp-header .navbar {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.nbp-header .nbp-logo-img {
    max-width: 46px;
    max-height: 46px;
    object-fit: contain;
}

.nbp-header .nbp-brand-text {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
}

.nbp-header .nbp-brand-title {
    font-weight: 800;
    font-size: 1.125rem;
    letter-spacing: 0.04em;
    color: #EEF0F2;
}

.nbp-header .nbp-brand-sub {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: #618CD1;
}

.nbp-header .nbp-toggler {
    border: 1px solid #2D333C;
    padding: 0.35rem 0.6rem;
    border-radius: 8px;
    background: #131B29;
}

.nbp-header .nbp-toggler:focus {
    box-shadow: 0 0 0 2px #618CD1;
    outline: none;
}

.nbp-header .nbp-nav-link {
    color: #B0B6BF;
    font-weight: 600;
    font-size: 0.95rem;
    padding: 0.5rem 1rem !important;
    transition: color 0.2s ease-in-out;
}

.nbp-header .nbp-nav-link:hover,
.nbp-header .nbp-nav-link:focus {
    color: #EEF0F2;
}

.nbp-header .nbp-dropdown {
    background-color: #131B29;
    border: 1px solid #2D333C;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45);
    padding: 0.5rem 0;
    margin-top: 0.5rem;
}

.nbp-header .nbp-dropdown-item {
    color: #B0B6BF;
    font-weight: 500;
    font-size: 0.9rem;
    padding: 0.55rem 1.25rem;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.nbp-header .nbp-dropdown-item:hover,
.nbp-header .nbp-dropdown-item:focus {
    background-color: #0F1621;
    color: #EEF0F2;
}

.nbp-header .nbp-cta-btn {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 700;
    font-size: 0.9rem;
    border-radius: 9999px;
    padding: 0.6rem 1.4rem;
    text-decoration: none;
    border: none;
    white-space: nowrap;
    transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

.nbp-header .nbp-cta-btn:hover,
.nbp-header .nbp-cta-btn:focus {
    filter: brightness(1.08);
    box-shadow: 0 4px 18px rgba(97, 140, 209, 0.35);
    transform: translateY(-1px);
    color: #111111;
}

@media (max-width: 991.98px) {
    .nbp-header .navbar-collapse {
        background-color: #131B29;
        border: 1px solid #2D333C;
        border-radius: 14px;
        padding: 1.25rem;
        margin-top: 0.75rem;
        box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5);
    }

    .nbp-header .navbar-nav {
        gap: 0.25rem;
        margin-bottom: 1rem !important;
    }

    .nbp-header .nbp-nav-link {
        padding: 0.6rem 0.75rem !important;
        border-radius: 8px;
    }

    .nbp-header .nbp-nav-link:hover {
        background-color: #0F1621;
    }

    .nbp-header .nbp-dropdown {
        background-color: #0F1621;
        border-color: #2D333C;
        margin-left: 0.5rem;
        margin-right: 0.5rem;
    }

    .nbp-header .nbp-cta-btn {
        width: 100%;
        justify-content: center;
    }
}

/* ===== hero ===== */
.nba-hero {
    background: var(--hero-bg, linear-gradient(118deg, #06070A 0%, #12233F 100%));
    position: relative;
    overflow: hidden;
    padding: 80px 0 100px;
}

.nba-hero::before {
    content: "";
    position: absolute;
    top: 10%;
    left: 50%;
    transform: translateX(-50%);
    width: 700px;
    height: 450px;
    background: radial-gradient(circle at center, rgba(97, 140, 209, 0.18) 0%, rgba(6, 7, 10, 0) 70%);
    pointer-events: none;
    z-index: 0;
}

.nba-hero .container {
    position: relative;
    z-index: 1;
}

.nba-hero__title {
    font-size: 3.5rem;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.02em;
    color: #FFFFFF;
    margin-bottom: 1.5rem;
    overflow-wrap: anywhere;
}

.nba-hero__gradient-word {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.nba-hero__lead {
    font-size: 1.25rem;
    line-height: 1.6;
    color: #B6BBC3;
    max-width: 760px;
    margin: 0 auto 2.25rem;
    overflow-wrap: anywhere;
}

.nba-hero__btn-main {
    border-radius: 9999px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 700;
    padding: 14px 32px;
    border: none;
    text-decoration: none;
    transition: all 0.2s ease-in-out;
}

.nba-hero__btn-main:hover {
    filter: brightness(1.1);
    box-shadow: 0 4px 20px rgba(97, 140, 209, 0.35);
    transform: translateY(-2px);
    color: #000000;
}

.nba-hero__btn-sub {
    border-radius: 9999px;
    background: transparent;
    border: 1.5px solid #618CD1;
    color: #EEF0F2;
    font-weight: 600;
    padding: 12px 30px;
    text-decoration: none;
    transition: all 0.2s ease-in-out;
}

.nba-hero__btn-sub:hover {
    background: rgba(97, 140, 209, 0.15);
    border-color: #81A3DA;
    color: #FFFFFF;
    transform: translateY(-2px);
}

.nba-hero__network-wrapper {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    height: 240px;
}

.nba-hero__connector {
    stroke: #2D333C;
    stroke-width: 1.5;
    stroke-dasharray: 4 4;
}

.nba-hero__satellites {
    height: 240px;
}

.nba-hero__hub {
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    box-shadow: 0 0 35px rgba(97, 140, 209, 0.35);
    z-index: 2;
    user-select: none;
}

.nba-hero__hub-tag {
    font-size: 0.65rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    color: #111111;
}

.nba-hero__hub-title {
    font-size: 1rem;
    font-weight: 900;
    letter-spacing: -0.01em;
    line-height: 1.1;
    color: #111111;
}

.nba-hero__node {
    position: absolute;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #131B29;
    border: 1.5px solid #618CD1;
    color: #618CD1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    box-shadow: 0 0 15px rgba(97, 140, 209, 0.2);
    transform: translate(-50%, -50%);
}

.nba-hero__node--1 {
    left: 130px;
    top: 60px;
}

.nba-hero__node--2 {
    left: 230px;
    top: 190px;
}

.nba-hero__node--3 {
    left: 290px;
    top: 45px;
}

.nba-hero__node--4 {
    left: 510px;
    top: 45px;
}

.nba-hero__node--5 {
    left: 570px;
    top: 190px;
}

.nba-hero__node--6 {
    left: 670px;
    top: 60px;
}

.nba-hero__dashboard {
    border-radius: 18px;
    padding: 1.5px;
    background: linear-gradient(135deg, rgba(97, 140, 209, 0.6) 0%, rgba(233, 217, 148, 0.4) 100%);
    box-shadow: 0 0 30px rgba(97, 140, 209, 0.15);
}

.nba-hero__dashboard-inner {
    background: #131B29;
    border-radius: 17px;
    padding: 30px 24px;
}

.nba-hero__stat-card {
    background: #0F1621;
    border: 1px solid #2D333C;
    border-radius: 14px;
    padding: 18px 16px;
    height: 100%;
}

.nba-hero__stat-label {
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #B6BBC3;
    margin-bottom: 6px;
}

.nba-hero__stat-val {
    font-size: 1.85rem;
    font-weight: 800;
    line-height: 1.2;
    color: #FFFFFF;
    margin-bottom: 4px;
}

.nba-hero__stat-val--alert {
    color: #E9D994;
}

.nba-hero__stat-sub {
    font-size: 0.75rem;
    color: #8C94A0;
}

.nba-hero__telemetry-box {
    background: #0B0F17;
    border: 1px solid #2D333C;
}

.nba-hero__badge-pulse {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #618CD1;
    box-shadow: 0 0 8px #618CD1;
    display: inline-block;
}

.nba-hero__badge-title {
    font-size: 0.85rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: #EEF0F2;
}

.nba-hero__tag-court {
    font-size: 0.75rem;
    color: #B6BBC3;
    background: rgba(45, 51, 60, 0.5);
    padding: 4px 10px;
    border-radius: 9999px;
}

.nba-hero__court-diagram {
    background: #06070A;
    border: 1px solid #2D333C;
}

.nba-hero__team-label {
    font-size: 0.75rem;
    font-weight: 600;
    color: #B6BBC3;
}

.nba-hero .text-primary {
    color: #618CD1 !important;
}

.nba-hero .text-accent {
    color: #E9D994 !important;
}

.nba-hero__info-panel {
    background: #0F1621;
    border: 1px solid #2D333C;
}

.nba-hero__panel-key {
    font-size: 0.825rem;
    color: #B6BBC3;
}

.nba-hero__panel-val {
    font-size: 0.85rem;
}

.nba-hero__mini-btn {
    border-radius: 9999px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 700;
    font-size: 0.9rem;
    text-decoration: none;
    border: none;
    transition: all 0.2s ease;
}

.nba-hero__mini-btn:hover {
    filter: brightness(1.1);
    color: #000000;
    transform: translateY(-1px);
}

.nba-hero__note {
    font-size: 0.72rem;
    color: #8C94A0;
}

@media (max-width: 767px) {
    .nba-hero {
        padding: 50px 0 70px;
    }

    .nba-hero__title {
        font-size: 2.15rem;
        hyphens: auto;
    }

    .nba-hero__lead {
        font-size: 1.05rem;
        margin-bottom: 1.75rem;
    }

    .nba-hero__btn-main,
    .nba-hero__btn-sub {
        width: 100%;
        padding: 12px 20px;
    }

    .nba-hero__dashboard-inner {
        padding: 20px 14px;
    }

    .nba-hero__stat-val {
        font-size: 1.5rem;
    }
}

/* ===== interactive_needs ===== */
.interactive-needs-block {
    padding: 90px 0;
    position: relative;
    overflow: hidden;
}

.interactive-needs-block .interactive-needs-eyebrow-wrap {
    gap: 14px;
}

.interactive-needs-block .interactive-needs-divider {
    width: 40px;
    height: 1px;
    background-color: rgba(17, 17, 17, 0.35);
    display: inline-block;
}

.interactive-needs-block .interactive-needs-eyebrow {
    letter-spacing: 0.15em;
    font-weight: 700;
    color: #111111;
}

.interactive-needs-block .interactive-needs-title {
    font-weight: 800;
    color: #111111;
    font-size: 2.25rem;
    line-height: 1.25;
}

.interactive-needs-block .interactive-needs-gradient-word {
    background: linear-gradient(135deg, #111111 0%, #12233f 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-decoration: underline;
    text-decoration-color: rgba(17, 17, 17, 0.4);
    text-underline-offset: 6px;
}

.interactive-needs-block .interactive-needs-lead {
    font-size: 1.1rem;
    color: #111111;
    max-width: 680px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.5;
}

.interactive-needs-block .interactive-needs-tab {
    background-color: #111111;
    color: #EEF0F2;
    border: 1px solid rgba(238, 240, 242, 0.2);
    border-radius: 9999px;
    padding: 10px 22px;
    font-weight: 600;
    font-size: 0.95rem;
    transition: all 0.2s ease-in-out;
    cursor: pointer;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.interactive-needs-block .interactive-needs-tab:hover {
    background-color: #1f2937;
    color: #E9D994;
    transform: translateY(-1px);
}

.interactive-needs-block .interactive-needs-tab.active {
    background: linear-gradient(135deg, #111111 0%, #1a273b 100%);
    color: #E9D994;
    border-color: #E9D994;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.35);
}

.interactive-needs-block .interactive-needs-panel {
    display: none;
}

.interactive-needs-block .interactive-needs-panel.active {
    display: block;
}

.interactive-needs-block .interactive-needs-card {
    border-radius: 16px;
    background-color: #131B29;
    border: 1px solid #2D333C;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
}

.interactive-needs-block .interactive-needs-badge {
    border-radius: 9999px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 700;
    padding: 6px 14px;
    font-size: 0.8rem;
    display: inline-flex;
    align-items: center;
}

.interactive-needs-block .interactive-needs-meta-pill {
    font-size: 0.85rem;
    color: #E9D994;
    background-color: rgba(233, 217, 148, 0.1);
    border: 1px solid rgba(233, 217, 148, 0.25);
    border-radius: 9999px;
    padding: 4px 12px;
}

.interactive-needs-block .interactive-needs-card-title {
    font-size: 1.5rem;
    line-height: 1.3;
    font-weight: 700;
}

.interactive-needs-block .interactive-needs-text {
    color: #B0B6BF;
    font-size: 1rem;
    line-height: 1.6;
}

.interactive-needs-block .interactive-needs-perk {
    color: #EEF0F2;
    font-size: 0.95rem;
}

.interactive-needs-block .interactive-needs-check {
    color: #E9D994;
    font-size: 1.15rem;
    flex-shrink: 0;
}

.interactive-needs-block .interactive-needs-status-note {
    font-size: 0.85rem;
    color: #B0B6BF;
}

.interactive-needs-block .interactive-needs-btn {
    border-radius: 9999px;
    padding: 12px 28px;
    font-weight: 700;
    font-size: 0.95rem;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    transition: all 0.2s ease-in-out;
    border: none;
}

.interactive-needs-block .interactive-needs-btn:hover {
    filter: brightness(1.1);
    box-shadow: 0 4px 20px rgba(97, 140, 209, 0.35);
    transform: translateY(-2px);
    color: #111111;
}

.interactive-needs-block .interactive-needs-btn-alt {
    border-radius: 9999px;
    padding: 10px 22px;
    font-weight: 600;
    font-size: 0.9rem;
    text-decoration: none;
    display: block;
    border: 1.5px solid #618CD1;
    color: #EEF0F2;
    transition: all 0.2s ease-in-out;
}

.interactive-needs-block .interactive-needs-btn-alt:hover {
    background-color: rgba(97, 140, 209, 0.15);
    border-color: #81A3DA;
    color: #FFFFFF;
    transform: translateY(-2px);
}

.interactive-needs-block .interactive-needs-widget-card {
    background: linear-gradient(160deg, #131B29 0%, #0F1621 100%);
}

.interactive-needs-block .interactive-needs-widget-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: rgba(97, 140, 209, 0.15);
    color: #618CD1;
    font-size: 1.35rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.interactive-needs-block .interactive-needs-subtitle {
    color: #B0B6BF;
    font-size: 0.85rem;
    display: block;
}

.interactive-needs-block .interactive-needs-stat-box {
    background-color: rgba(11, 15, 23, 0.6);
    border: 1px solid #2D333C;
}

.interactive-needs-block .interactive-needs-stat-label {
    color: #B0B6BF;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.interactive-needs-block .interactive-needs-stat-value {
    font-size: 1.25rem;
    line-height: 1.3;
    color: #EEF0F2;
}

.interactive-needs-block .interactive-needs-stat-desc {
    color: #E9D994;
    font-size: 0.82rem;
    margin-top: 2px;
}

.interactive-needs-block .interactive-needs-data-list li {
    font-size: 0.9rem;
}

@media (max-width: 767px) {
    .interactive-needs-block {
        padding: 50px 0;
    }

    .interactive-needs-block .interactive-needs-title {
        font-size: 1.45rem;
        line-height: 1.3;
        hyphens: auto;
    }

    .interactive-needs-block .interactive-needs-tab {
        width: 100%;
        justify-content: center;
        font-size: 0.9rem;
        padding: 10px 16px;
    }

    .interactive-needs-block .interactive-needs-card-title {
        font-size: 1.2rem;
    }

    .interactive-needs-block .interactive-needs-btn {
        width: 100%;
        text-align: center;
    }

    .interactive-needs-block .interactive-needs-status-note {
        width: 100%;
        text-align: center;
    }
}

/* ===== product_tour ===== */
.product-tour {
    background-color: var(--bg);
    position: relative;
    overflow: hidden;
}

.product-tour__line {
    width: 40px;
    height: 1px;
    background-color: var(--border);
    display: inline-block;
}

.product-tour__eyebrow-container {
    gap: 0;
}

.product-tour__subtitle {
    max-width: 720px;
    color: var(--text-muted);
    font-size: 1.05rem;
    line-height: 1.6;
}

.product-tour__gradient-text {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 700;
}

.product-tour__tab-btn {
    background: var(--surface);
    border: 1px solid var(--border);
    color: var(--text-muted);
    border-radius: 9999px;
    padding: 10px 22px;
    font-weight: 600;
    font-size: 0.95rem;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}

.product-tour__tab-btn:hover {
    color: var(--text);
    border-color: var(--primary);
    background: rgba(97, 140, 209, 0.12);
}

.product-tour__tab-btn.active {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    border-color: transparent;
    box-shadow: 0 4px 18px rgba(97, 140, 209, 0.35);
    font-weight: 700;
}

.product-tour__panel {
    display: none;
}

.product-tour__panel.active {
    display: block;
}

.product-tour__media-box {
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid var(--border);
    aspect-ratio: 16/10;
    width: 100%;
    box-shadow: 0 0 30px rgba(97, 140, 209, 0.12);
}

.product-tour__media-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.product-tour__badge-overlay {
    position: absolute;
    bottom: 16px;
    left: 16px;
    background: rgba(11, 15, 23, 0.88);
    backdrop-filter: blur(8px);
    border: 1px solid var(--border);
    border-radius: 9999px;
    padding: 8px 16px;
}

.product-tour__pulse-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: var(--accent);
    display: inline-block;
}

.product-tour__badge-caption {
    color: var(--text);
    font-size: 0.85rem;
    font-weight: 600;
}

.product-tour__detail-card {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.product-tour__meta-tag {
    font-size: 0.8rem;
    color: var(--text-muted);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.product-tour__panel-title {
    color: var(--text);
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 0.75rem;
}

.product-tour__panel-desc {
    color: var(--text-muted);
    font-size: 0.95rem;
    line-height: 1.6;
    margin-bottom: 1.5rem;
}

.product-tour__specs-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    padding: 14px;
    background: var(--surface-alt);
    border-radius: 12px;
    border: 1px solid var(--border);
}

.product-tour__spec-item {
    display: flex;
    flex-direction: column;
}

.product-tour__spec-label {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted);
}

.product-tour__spec-value {
    font-size: 0.9rem;
    font-weight: 700;
    color: var(--text);
}

.product-tour__cta-btn {
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

@media (max-width: 767px) {
    .product-tour__specs-grid {
        grid-template-columns: 1fr;
    }

    .product-tour__tab-btn {
        font-size: 0.85rem;
        padding: 8px 16px;
        width: 100%;
        text-align: center;
    }

    .product-tour__panel-title {
        font-size: 1.25rem;
    }
}

/* ===== inaction_scenario ===== */
.inaction-scenario-block {
    position: relative;
    padding: 100px 0;
    overflow: hidden;
}

@media (max-width: 767px) {
    .inaction-scenario-block {
        padding: 60px 0;
    }
}

.inaction-scenario-block__line {
    display: inline-block;
    width: 40px;
    height: 1px;
    background: var(--border);
    vertical-align: middle;
}

.inaction-scenario-block__gradient-text {
    background: var(--gradient-primary-accent);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.inaction-scenario-block__lead {
    max-width: 680px;
    color: var(--text-muted);
    font-size: 1.05rem;
    line-height: 1.6;
}

.inaction-scenario-block__timeline-nav {
    max-width: 960px;
    margin: 0 auto;
}

.inaction-scenario-block__step-btn {
    background: var(--surface);
    border: 1px solid var(--border);
    color: var(--text-muted);
    border-radius: 9999px;
    padding: 10px 18px;
    font-size: 0.9rem;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s ease-in-out;
    cursor: pointer;
}

.inaction-scenario-block__step-btn:hover,
.inaction-scenario-block__step-btn:focus-visible {
    background: #213149;
    border-color: var(--primary);
    color: #FFFFFF;
    transform: translateY(-1px);
}

.inaction-scenario-block__step-btn:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 3px;
}

.inaction-scenario-block__step-btn.active,
.inaction-scenario-block__step-btn.active:hover,
.inaction-scenario-block__step-btn.active:focus-visible {
    background: var(--gradient-primary-accent);
    color: var(--on-primary);
    border-color: transparent;
    box-shadow: var(--glow-primary);
}

.inaction-scenario-block__btn-icon {
    font-size: 1rem;
}

.inaction-scenario-block__card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 28px;
}

@media (max-width: 767px) {
    .inaction-scenario-block__card {
        padding: 20px;
    }
}

.inaction-scenario-block__card--cta {
    border: 1px solid rgba(97, 140, 209, 0.35);
    box-shadow: var(--glow-primary);
    background: linear-gradient(180deg, #131B29 0%, #0F1621 100%);
}

.inaction-scenario-block__border {
    border-color: var(--border) !important;
}

.inaction-scenario-block__icon-box {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: rgba(97, 140, 209, 0.15);
    display: flex;
    align-items: center;
    justify-content: center;
}

.inaction-scenario-block__phase-tag {
    background: rgba(97, 140, 209, 0.15);
    color: var(--primary-text);
    border: 1px solid var(--border);
    font-size: 0.8rem;
    padding: 6px 12px;
    border-radius: 9999px;
}

.inaction-scenario-block__metric-card {
    background: var(--surface-alt);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 16px;
    height: 100%;
}

.inaction-scenario-block__metric-label {
    font-size: 0.85rem;
    color: var(--text-muted);
    font-weight: 600;
}

.inaction-scenario-block__metric-value {
    font-size: 1.1rem;
    font-weight: 700;
    color: #FFFFFF;
}

.inaction-scenario-block__progress-track {
    width: 100%;
    height: 6px;
    background: rgba(255, 255, 255, 0.08);
    border-radius: 9999px;
    margin-bottom: 10px;
    overflow: hidden;
}

.inaction-scenario-block__progress-fill {
    height: 100%;
    background: var(--gradient-primary-accent);
    border-radius: 9999px;
    transition: width 0.3s ease-in-out, background-color 0.3s ease;
}

.inaction-scenario-block__metric-desc {
    font-size: 0.82rem;
    color: var(--text-muted);
    margin: 0;
    line-height: 1.4;
}

.inaction-scenario-block__summary {
    background: rgba(97, 140, 209, 0.08);
    border: 1px dashed var(--border);
    border-radius: 12px;
    padding: 16px 20px;
}

.inaction-scenario-block__summary-icon {
    font-size: 1.4rem;
    color: var(--primary-text);
    flex-shrink: 0;
}

.inaction-scenario-block__lead-text {
    font-size: 0.9rem;
    color: var(--text-muted);
    line-height: 1.5;
}

.inaction-scenario-block__ring-wrapper {
    width: 130px;
    height: 130px;
    border-radius: 50%;
    padding: 4px;
    background: var(--gradient-primary-accent);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: var(--glow-accent);
}

.inaction-scenario-block__circle-status {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: var(--surface);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.inaction-scenario-block__circle-percentage {
    font-size: 1.6rem;
    font-weight: 800;
    color: #FFFFFF;
    line-height: 1;
}

.inaction-scenario-block__circle-sub {
    font-size: 0.7rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-top: 4px;
    text-align: center;
}

.inaction-scenario-block__cta-text {
    font-size: 0.9rem;
    color: var(--text-muted);
    line-height: 1.5;
}

.inaction-scenario-block__perks-list {
    background: var(--surface-alt);
    border-radius: 10px;
    padding: 12px 14px;
    border: 1px solid var(--border);
}

.inaction-scenario-block__hint {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* ===== featured_teams ===== */
.featured-teams-section {
    padding: 90px 0;
    position: relative;
    overflow: hidden;
}

.featured-teams-divider {
    display: inline-block;
    width: 40px;
    height: 1px;
    background-color: var(--border, #2D333C);
}

.featured-teams-main-title {
    color: var(--on-dark, #FFFFFF);
    font-weight: 700;
    line-height: 1.25;
}

.featured-teams-gradient {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.featured-teams-intro {
    color: var(--on-dark-muted, #B6BBC3);
    max-width: 640px;
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 0;
}

.featured-teams-filter-nav {
    background: rgba(19, 27, 41, 0.9);
    border: 1px solid var(--border, #2D333C);
    gap: 4px;
}

.featured-teams-tab-btn {
    background: transparent;
    border: none;
    color: var(--on-dark-muted, #B6BBC3);
    font-size: 0.875rem;
    font-weight: 600;
    padding: 8px 20px;
    border-radius: 9999px;
    transition: all 0.2s ease-in-out;
    cursor: pointer;
}

.featured-teams-tab-btn:hover {
    color: var(--on-dark, #FFFFFF);
}

.featured-teams-tab-btn.active {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    box-shadow: 0 2px 12px rgba(97, 140, 209, 0.3);
}

.featured-teams-card {
    background: var(--surface, #131B29);
    border: 1px solid var(--border, #2D333C);
    border-radius: 16px;
    padding: 24px;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.featured-teams-card:hover {
    transform: translateY(-4px);
    border-color: rgba(97, 140, 209, 0.45);
    box-shadow: 0 10px 30px rgba(97, 140, 209, 0.12);
}

.featured-teams-meta-inline {
    font-size: 0.85rem;
    color: var(--text-muted, #B0B6BF);
}

.featured-teams-media {
    border-radius: 12px;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    position: relative;
}

.featured-teams-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
    display: block;
}

.featured-teams-card:hover .featured-teams-media img {
    transform: scale(1.03);
}

.featured-teams-title {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.35;
    margin: 0;
}

.featured-teams-link {
    color: var(--text, #EEF0F2);
    text-decoration: none;
    transition: color 0.2s ease;
}

.featured-teams-link:hover {
    color: var(--primary, #618CD1);
}

.featured-teams-author-row {
    font-size: 0.8125rem;
    color: var(--text-muted, #B0B6BF);
}

.featured-teams-author-badge {
    color: var(--text-muted, #B0B6BF);
}

.featured-teams-sep {
    color: var(--border, #2D333C);
}

.featured-teams-date {
    color: var(--text-muted, #B0B6BF);
}

.featured-teams-desc {
    color: var(--text-muted, #B0B6BF);
    font-size: 0.9375rem;
    line-height: 1.55;
    margin-bottom: 0;
}

.featured-teams-check-icon {
    color: var(--accent, #E9D994);
    font-size: 1.1rem;
}

.featured-teams-feature-item {
    font-size: 0.875rem;
    color: var(--text, #EEF0F2);
}

.featured-teams-panel {
    display: none;
}

.featured-teams-panel.active {
    display: block;
}

.featured-teams-stats-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}

.featured-teams-stat-box {
    background: rgba(11, 15, 23, 0.6);
    border: 1px solid var(--border, #2D333C);
    border-radius: 10px;
    padding: 12px 14px;
    text-align: center;
}

.featured-teams-stat-value {
    display: block;
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--accent, #E9D994);
    line-height: 1.2;
}

.featured-teams-stat-label {
    font-size: 0.75rem;
    color: var(--text-muted, #B0B6BF);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.featured-teams-footer {
    border-color: var(--border, #2D333C) !important;
}

.featured-teams-footer .rrr-btn-alt {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    font-weight: 600;
    font-size: 0.9rem;
    padding: 10px 20px;
    text-decoration: none;
    border: 1px solid var(--primary, #618CD1);
    color: var(--text, #EEF0F2);
    transition: all 0.2s ease;
}

.featured-teams-footer .rrr-btn-alt:hover {
    background: rgba(97, 140, 209, 0.15);
    color: #FFFFFF;
    border-color: var(--primary-hover, #81A3DA);
    transform: translateY(-2px);
}

.featured-teams-cta .rrr-btn {
    text-decoration: none;
    border-radius: 9999px;
    padding: 14px 34px;
    font-weight: 700;
    font-size: 0.95rem;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    border: none;
    transition: all 0.2s ease-in-out;
}

.featured-teams-cta .rrr-btn:hover {
    filter: brightness(1.1);
    box-shadow: 0 4px 20px rgba(97, 140, 209, 0.35);
    transform: translateY(-2px);
    color: #111111;
}

@media (max-width: 767px) {
    .featured-teams-section {
        padding: 60px 0;
    }

    .featured-teams-main-title {
        font-size: 1.6rem;
        hyphens: auto;
    }

    .featured-teams-card {
        padding: 18px;
    }

    .featured-teams-stats-grid {
        grid-template-columns: 1fr;
    }

    .featured-teams-tab-btn {
        padding: 6px 14px;
        font-size: 0.8rem;
    }
}

/* ===== featured_players ===== */
.featured-players-section {
    padding: 90px 0;
    background: var(--bg);
    position: relative;
    overflow: hidden;
}

.featured-players-section::before {
    content: '';
    position: absolute;
    top: -100px;
    left: 50%;
    transform: translateX(-50%);
    width: 680px;
    height: 340px;
    background: radial-gradient(circle, rgba(97, 140, 209, 0.12) 0%, rgba(11, 15, 23, 0) 70%);
    pointer-events: none;
}

.featured-players-header {
    max-width: 720px;
    margin: 0 auto;
}

.featured-players-section .eyebrow-line {
    display: inline-block;
    width: 40px;
    height: 1px;
    background: var(--border);
}

.featured-players-section .rrr-eyebrow {
    color: var(--text-muted);
    font-size: 0.75rem;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    font-weight: 700;
}

.featured-players-section .rrr-title {
    font-size: 2.25rem;
    font-weight: 700;
    color: var(--text);
    line-height: 1.25;
}

.featured-players-section .text-gradient {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.featured-players-subtitle {
    color: var(--text-muted);
    font-size: 1rem;
    line-height: 1.6;
}

.featured-players-section .player-showcase-card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 16px;
    overflow: hidden;
    transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.featured-players-section .player-showcase-card:hover {
    transform: translateY(-4px);
    border-color: rgba(97, 140, 209, 0.45);
    box-shadow: 0 10px 28px rgba(97, 140, 209, 0.15);
}

.featured-players-section .player-card-media {
    width: 100%;
    height: 260px;
    aspect-ratio: 4 / 5;
}

.featured-players-section .player-card-media img {
    object-fit: cover;
    transition: transform 0.3s ease;
}

.featured-players-section .player-showcase-card:hover .player-card-media img {
    transform: scale(1.04);
}

.featured-players-section .player-team-badge {
    top: 14px;
    left: 14px;
    background: rgba(11, 15, 23, 0.85);
    backdrop-filter: blur(6px);
    border: 1px solid var(--border);
    color: var(--accent-text);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    padding: 4px 10px;
    border-radius: 9999px;
    z-index: 2;
}

.featured-players-section .player-card-content {
    padding: 22px 20px 20px 20px;
}

.featured-players-section .player-role {
    color: var(--text-muted);
    font-size: 0.8125rem;
    font-weight: 600;
}

.featured-players-section .player-role i {
    color: var(--primary-text);
}

.featured-players-section .player-stat-accent {
    color: var(--accent-text);
    font-size: 0.875rem;
    font-weight: 700;
    background: rgba(233, 217, 148, 0.1);
    border: 1px solid rgba(233, 217, 148, 0.3);
    border-radius: 9999px;
    padding: 2px 8px;
}

.featured-players-section .player-name {
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1.35;
    margin: 0;
}

.featured-players-section .player-title-link {
    color: var(--text);
    text-decoration: none;
    transition: color 0.2s ease;
}

.featured-players-section .player-title-link:hover {
    color: var(--primary);
}

.featured-players-section .player-description {
    color: var(--text-muted);
    font-size: 0.875rem;
    line-height: 1.5;
}

.featured-players-section .player-key-stats {
    background: var(--surface-alt);
    border: 1px solid rgba(45, 51, 60, 0.6);
}

.featured-players-section .stat-label {
    color: var(--text-muted);
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.featured-players-section .stat-values {
    color: var(--text);
    font-size: 0.8125rem;
    font-weight: 600;
}

.featured-players-section .border-top-subtle {
    border-top: 1px solid var(--border);
}

.featured-players-section .player-detail-action {
    color: var(--primary-text);
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.2s ease, transform 0.2s ease;
}

.featured-players-section .player-detail-action:hover {
    color: var(--primary-hover);
    transform: translateX(2px);
}

.featured-players-section .player-round-btn {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--surface-alt);
    border: 1px solid var(--border);
    color: var(--primary-text);
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.featured-players-section .player-round-btn:hover {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    border-color: transparent;
    transform: scale(1.05);
}

.featured-players-section .rrr-btn {
    border-radius: 9999px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 700;
    padding: 14px 34px;
    text-decoration: none;
    border: none;
    font-size: 0.95rem;
    transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

.featured-players-section .rrr-btn:hover {
    color: #111111;
    filter: brightness(1.08);
    transform: translateY(-2px);
    box-shadow: 0 4px 20px rgba(97, 140, 209, 0.35);
}

@media (max-width: 767px) {
    .featured-players-section {
        padding: 60px 0;
    }

    .featured-players-section .rrr-title {
        font-size: 1.65rem;
    }

    .featured-players-section .player-card-media {
        height: 220px;
    }

    .featured-players-section .player-card-content {
        padding: 16px 14px 14px 14px;
    }
}

/* ===== latest_news ===== */
.npg-latest-news {
    padding: 100px 0;
    position: relative;
    overflow: hidden
}

.npg-latest-news__eyebrow-wrap {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px
}

.npg-latest-news__line {
    display: inline-block;
    width: 40px;
    height: 1px;
    background-color: var(--border, #2D333C)
}

.npg-latest-news__eyebrow {
    color: var(--primary, #618CD1);
    font-family: 'Source Sans 3', sans-serif;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    margin: 0
}

.npg-latest-news__heading {
    font-family: 'Source Sans 3', sans-serif;
    font-size: 2.25rem;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -0.01em;
    color: var(--text, #EEF0F2);
    margin-bottom: 14px;
    overflow-wrap: anywhere
}

.npg-latest-news__gradient-word {
    background: linear-gradient(135deg, var(--primary, #618CD1) 0%, var(--accent, #E9D994) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent
}

.npg-latest-news__lead {
    font-family: 'Source Sans 3', sans-serif;
    font-size: 1.05rem;
    line-height: 1.6;
    color: var(--text-muted, #B0B6BF);
    max-width: 700px;
    margin-bottom: 0;
    overflow-wrap: anywhere
}

.npg-latest-news__header-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--primary, #618CD1) 0%, var(--accent, #E9D994) 100%);
    color: var(--on-primary, #111111);
    font-family: 'Source Sans 3', sans-serif;
    font-weight: 700;
    font-size: 0.95rem;
    padding: 12px 28px;
    border-radius: 9999px;
    text-decoration: none;
    border: none;
    transition: filter 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease
}

.npg-latest-news__header-btn:hover {
    filter: brightness(1.1);
    box-shadow: 0 4px 20px rgba(97, 140, 209, 0.35);
    color: var(--on-primary, #111111);
    transform: translateY(-2px)
}

.npg-latest-news__card {
    display: flex;
    flex-direction: column;
    background: var(--surface, #131B29);
    border: 1px solid var(--border, #2D333C);
    border-radius: 16px;
    overflow: hidden;
    transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease
}

.npg-latest-news__card:hover {
    border-color: var(--primary, #618CD1);
    transform: translateY(-4px);
    box-shadow: 0 12px 30px rgba(97, 140, 209, 0.15)
}

.npg-latest-news__media-wrap {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9;
    overflow: hidden
}

.npg-latest-news__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease
}

.npg-latest-news__card:hover .npg-latest-news__img {
    transform: scale(1.04)
}

.npg-latest-news__badge {
    position: absolute;
    top: 14px;
    left: 14px;
    background: linear-gradient(135deg, var(--primary, #618CD1) 0%, var(--accent, #E9D994) 100%);
    color: var(--on-primary, #111111);
    font-family: 'Source Sans 3', sans-serif;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 4px 12px;
    border-radius: 9999px;
    z-index: 2;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.35)
}

.npg-latest-news__body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    padding: 24px
}

.npg-latest-news__meta {
    font-size: 0.85rem;
    color: var(--text-muted, #B0B6BF)
}

.npg-latest-news__meta-item {
    display: inline-flex;
    align-items: center
}

.npg-latest-news__meta-sep {
    color: var(--border, #2D333C)
}

.npg-latest-news__card-title {
    font-family: 'Source Sans 3', sans-serif;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.35;
    margin-bottom: 10px;
    overflow-wrap: anywhere
}

.npg-latest-news__title-link {
    color: var(--text, #EEF0F2);
    text-decoration: none;
    transition: color 0.15s ease
}

.npg-latest-news__title-link:hover {
    color: var(--primary, #618CD1)
}

.npg-latest-news__card-text {
    font-family: 'Source Sans 3', sans-serif;
    font-size: 0.925rem;
    line-height: 1.55;
    color: var(--text-muted, #B0B6BF);
    margin-bottom: 16px;
    overflow-wrap: anywhere
}

.npg-latest-news__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top: 1px solid rgba(45, 51, 60, 0.6)
}

.npg-latest-news__action-link {
    display: inline-flex;
    align-items: center;
    color: var(--primary-text, #618CD1);
    font-family: 'Source Sans 3', sans-serif;
    font-size: 0.9rem;
    font-weight: 700;
    text-decoration: none;
    transition: color 0.15s ease, transform 0.15s ease
}

.npg-latest-news__action-link:hover {
    color: var(--accent, #E9D994);
    transform: translateX(3px)
}

.npg-latest-news__corner-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: rgba(97, 140, 209, 0.08);
    border: 1px solid var(--border, #2D333C);
    color: var(--primary-text, #618CD1);
    font-size: 0.95rem;
    text-decoration: none;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease
}

.npg-latest-news__corner-btn:hover {
    background: linear-gradient(135deg, var(--primary, #618CD1) 0%, var(--accent, #E9D994) 100%);
    color: var(--on-primary, #111111);
    border-color: transparent;
    transform: scale(1.08)
}

@media (max-width:767px) {
    .npg-latest-news {
        padding: 60px 0
    }

    .npg-latest-news__heading {
        font-size: 1.6rem
    }

    .npg-latest-news__card-title {
        font-size: 1.1rem
    }

    .npg-latest-news__body {
        padding: 18px
    }

    .npg-latest-news__header-btn {
        width: 100%
    }
}

/* ===== specialists_team ===== */
.specialists-section {
    padding: 90px 0;
    background-color: var(--bg);
    overflow: hidden
}

.specialists-section .specialists-divider {
    width: 42px;
    height: 1px;
    background-color: var(--border);
    display: inline-block
}

.specialists-section .rrr-eyebrow {
    color: var(--accent);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.15em;
    text-transform: uppercase
}

.specialists-section .rrr-title {
    color: var(--text);
    font-size: 2.25rem;
    font-weight: 700;
    line-height: 1.25
}

.specialists-section .specialists-text-gradient {
    background: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block
}

.specialists-section .specialists-lead {
    color: var(--text-muted);
    font-size: 1.1rem;
    line-height: 1.6;
    max-width: 680px
}

.specialists-section .specialists-card {
    background-color: var(--surface);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 28px 24px;
    transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease
}

.specialists-section .specialists-card:hover {
    border-color: rgba(97, 140, 209, 0.5);
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(97, 140, 209, 0.18)
}

.specialists-section .specialist-avatar-wrap {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    padding: 2px;
    background: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);
    flex-shrink: 0;
    box-shadow: 0 0 16px rgba(97, 140, 209, 0.25)
}

.specialists-section .specialist-avatar-img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
    display: block
}

.specialists-section .specialists-badge {
    background: rgba(97, 140, 209, 0.15);
    color: var(--accent);
    border: 1px solid rgba(233, 217, 148, 0.3);
    font-size: 0.75rem;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 9999px;
    display: inline-block
}

.specialists-section .specialists-name {
    color: var(--text);
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.3
}

.specialists-section .specialists-role {
    color: var(--primary-text);
    font-size: 0.875rem;
    font-weight: 500;
    display: block
}

.specialists-section .specialists-desc {
    color: var(--text-muted);
    font-size: 0.95rem;
    line-height: 1.55
}

.specialists-section .specialists-features {
    color: var(--text);
    font-size: 0.875rem
}

.specialists-section .specialists-icon {
    color: var(--accent);
    font-size: 1.05rem;
    flex-shrink: 0
}

.specialists-section .specialists-card-link {
    color: var(--primary-text);
    font-weight: 600;
    font-size: 0.95rem;
    text-decoration: none;
    transition: color 0.2s ease, transform 0.2s ease
}

.specialists-section .specialists-card-link:hover {
    color: var(--accent);
    transform: translateX(3px)
}

.specialists-section .specialists-cta-btn {
    border-radius: 9999px;
    background: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);
    color: var(--on-primary);
    font-weight: 700;
    font-size: 0.95rem;
    letter-spacing: 0.02em;
    padding: 14px 34px;
    text-decoration: none;
    border: none;
    box-shadow: 0 4px 18px rgba(97, 140, 209, 0.25);
    transition: filter 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease
}

.specialists-section .specialists-cta-btn:hover {
    filter: brightness(1.1);
    box-shadow: 0 6px 24px rgba(97, 140, 209, 0.4);
    transform: translateY(-2px);
    color: var(--on-primary)
}

@media(max-width:767px) {
    .specialists-section {
        padding: 60px 0
    }

    .specialists-section .rrr-title {
        font-size: 1.75rem
    }

    .specialists-section .specialists-lead {
        font-size: 1rem
    }

    .specialists-section .specialists-card {
        padding: 22px 18px
    }
}

/* ===== behind_scenes ===== */
.behind-scenes-block {
    padding: 80px 0;
    position: relative;
    overflow: hidden;
}

.behind-scenes-block .behind-scenes-header {
    max-width: 760px;
    margin: 0 auto 36px auto;
}

.behind-scenes-block .behind-scenes-eyebrow-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-bottom: 12px;
}

.behind-scenes-block .behind-scenes-line {
    width: 40px;
    height: 1px;
    background-color: var(--border);
    flex-shrink: 0;
}

.behind-scenes-block .behind-scenes-title {
    color: var(--text);
    font-size: 2.25rem;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -0.01em;
    margin-bottom: 16px;
}

.behind-scenes-block .text-gradient {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.behind-scenes-block .behind-scenes-subtitle {
    color: var(--text-muted);
    font-size: 1.05rem;
    line-height: 1.6;
    margin: 0;
}

.behind-scenes-block .behind-scenes-nav {
    position: relative;
    z-index: 2;
}

.behind-scenes-block .behind-scenes-filter-btn {
    background-color: var(--surface);
    color: var(--text-muted);
    border: 1px solid var(--border);
    border-radius: 9999px;
    padding: 8px 18px;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}

.behind-scenes-block .behind-scenes-filter-btn:hover {
    color: var(--text);
    border-color: var(--primary);
    background-color: rgba(97, 140, 209, 0.12);
}

.behind-scenes-block .behind-scenes-filter-btn.is-active {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    border-color: transparent;
    box-shadow: 0 4px 16px rgba(97, 140, 209, 0.25);
}

.behind-scenes-block .behind-scenes-card {
    background-color: var(--surface);
    border: 1px solid var(--border);
    border-radius: 16px;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
    padding: 0;
    transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.behind-scenes-block .behind-scenes-card:hover {
    transform: translateY(-4px);
    border-color: rgba(97, 140, 209, 0.5);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
}

.behind-scenes-block .behind-scenes-media {
    position: relative;
    aspect-ratio: 16 / 10;
    width: 100%;
    overflow: hidden;
    background-color: var(--surface-alt);
}

.behind-scenes-block .behind-scenes-thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}

.behind-scenes-block .behind-scenes-card:hover .behind-scenes-thumb {
    transform: scale(1.04);
}

.behind-scenes-block .behind-scenes-status-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    background: rgba(11, 15, 23, 0.85);
    border: 1px solid var(--border);
    backdrop-filter: blur(6px);
    color: var(--accent-text);
    font-size: 0.75rem;
    font-weight: 700;
    padding: 5px 12px;
    border-radius: 9999px;
}

.behind-scenes-block .behind-scenes-body {
    padding: 24px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.behind-scenes-block .behind-scenes-icon {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: rgba(97, 140, 209, 0.15);
    color: var(--primary-text);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
}

.behind-scenes-block .behind-scenes-module-tag {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--primary-text);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.behind-scenes-block .behind-scenes-card-title {
    color: var(--text);
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.35;
    margin-bottom: 10px;
}

.behind-scenes-block .behind-scenes-card-desc {
    color: var(--text-muted);
    font-size: 0.95rem;
    line-height: 1.55;
    margin-bottom: 16px;
    flex-grow: 1;
}

.behind-scenes-block .behind-scenes-meta-row {
    border-top: 1px solid var(--border);
}

.behind-scenes-block .behind-scenes-meta-item {
    font-size: 0.8rem;
    color: var(--text-muted);
    display: inline-flex;
    align-items: center;
}

.behind-scenes-block .behind-scenes-cta-box {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 24px 32px;
    box-shadow: 0 0 24px rgba(97, 140, 209, 0.08);
}

.behind-scenes-block .behind-scenes-cta-title {
    color: var(--text);
    font-size: 1.2rem;
    font-weight: 700;
}

.behind-scenes-block .behind-scenes-cta-desc {
    color: var(--text-muted);
    font-size: 0.95rem;
}

@media (max-width: 767px) {
    .behind-scenes-block {
        padding: 50px 0;
    }

    .behind-scenes-block .behind-scenes-title {
        font-size: 16px;
        hyphens: auto;
    }

    .behind-scenes-block .behind-scenes-card-title {
        font-size: 14px;
        hyphens: auto;
    }

    .behind-scenes-block .behind-scenes-cta-title {
        font-size: 14px;
        hyphens: auto;
    }

    .behind-scenes-block .behind-scenes-body {
        padding: 16px;
    }

    .behind-scenes-block .behind-scenes-cta-box {
        padding: 20px 16px;
    }
}

/* ===== footer ===== */
.site-footer {
    position: relative;
    background-color: #06070A;
    color: #EEF0F2;
    padding-top: 70px;
    padding-bottom: 30px;
    overflow: hidden;
    border-top: 1px solid #2D333C;
    font-family: 'Source Sans 3', sans-serif
}

.site-footer__accent-glow {
    position: absolute;
    top: 0;
    left: 50%;
    width: 800px;
    height: 240px;
    background: radial-gradient(circle at 50% 0%, rgba(97, 140, 209, 0.14) 0%, rgba(6, 7, 10, 0) 70%);
    transform: translateX(-50%);
    pointer-events: none
}

.site-footer__main-grid {
    display: grid;
    grid-template-columns: 1.4fr 0.8fr 0.8fr 1.2fr;
    gap: 2rem;
    align-items: start;
    margin-bottom: 3rem
}

.site-footer__col-brand {
    display: flex;
    flex-direction: column;
    gap: 1.5rem
}

.site-footer__brand-title {
    font-size: 1.4rem;
    font-weight: 800;
    letter-spacing: -0.01em;
    display: inline-block;
    color: #FFFFFF
}

.site-footer__year-highlight {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 900
}

.site-footer__brand-desc {
    color: #B6BBC3;
    font-size: 0.95rem;
    line-height: 1.6;
    margin-bottom: 0;
    max-width: 360px
}

.site-footer__contact-card {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 1.25rem;
    background: #131B29;
    border: 1px solid #2D333C;
    border-radius: 14px
}

.site-footer__contact-item {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem
}

.site-footer__contact-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    border-radius: 10px;
    background: rgba(97, 140, 209, 0.12);
    border: 1px solid rgba(97, 140, 209, 0.3);
    color: #618CD1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem
}

.site-footer__contact-detail {
    display: flex;
    flex-direction: column;
    min-width: 0
}

.site-footer__contact-label {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #B6BBC3;
    font-weight: 600
}

.site-footer__contact-value {
    font-size: 0.9rem;
    color: #EEF0F2;
    font-style: normal;
    line-height: 1.4;
    overflow-wrap: anywhere
}

.site-footer__contact-link {
    font-size: 0.9rem;
    color: #618CD1;
    text-decoration: none;
    transition: color 0.2s ease;
    overflow-wrap: anywhere
}

.site-footer__contact-link:hover {
    color: #81A3DA;
    text-decoration: underline
}

.site-footer__section-heading {
    font-size: 1.05rem;
    font-weight: 700;
    color: #FFFFFF;
    margin-bottom: 1.25rem;
    letter-spacing: 0.01em;
    position: relative
}

.site-footer__nav-list {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    gap: 0.75rem
}

.site-footer__nav-link {
    color: #B6BBC3;
    text-decoration: none;
    font-size: 0.95rem;
    transition: color 0.2s ease;
    display: inline-block
}

.site-footer__nav-link:hover {
    color: #FFFFFF;
    text-decoration: underline
}

.site-footer__highlight-box {
    background: #131B29;
    border: 1px solid transparent;
    background: linear-gradient(#131B29, #131B29) padding-box, linear-gradient(135deg, #618CD1 0%, #E9D994 100%) border-box;
    border-radius: 16px;
    padding: 1.5rem;
    box-shadow: 0 0 24px rgba(97, 140, 209, 0.12)
}

.site-footer__badge {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.85rem;
    border-radius: 9999px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-bottom: 0.85rem
}

.site-footer__highlight-title {
    font-size: 1.15rem;
    font-weight: 700;
    color: #FFFFFF;
    margin-bottom: 0.5rem
}

.site-footer__highlight-text {
    font-size: 0.875rem;
    line-height: 1.5;
    color: #B6BBC3;
    margin-bottom: 1rem
}

.site-footer__match-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem
}

.site-footer__meta-pill {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.3rem 0.65rem;
    border-radius: 9999px;
    background: #0B0F17;
    color: #EEF0F2;
    border: 1px solid #2D333C;
    display: inline-flex;
    align-items: center
}

.site-footer__bottom-divider {
    height: 1px;
    width: 100%;
    background: linear-gradient(90deg, #06070A 0%, #618CD1 50%, #06070A 100%);
    margin-bottom: 1.5rem
}

.site-footer__sub-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    font-size: 0.85rem;
    color: #B6BBC3
}

.site-footer__copyright {
    color: #B6BBC3;
    line-height: 1.4
}

.site-footer__legal-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem
}

.site-footer__legal-link {
    color: #B6BBC3;
    text-decoration: none;
    transition: color 0.2s ease
}

.site-footer__legal-link:hover {
    color: #FFFFFF;
    text-decoration: underline
}

.site-footer__legal-dot {
    color: #2D333C
}

@media (max-width:991px) {
    .site-footer__main-grid {
        grid-template-columns: 1fr 1fr;
        gap: 2rem
    }
}

@media (max-width:767px) {
    .site-footer {
        padding-top: 45px;
        padding-bottom: 25px
    }

    .site-footer__main-grid {
        grid-template-columns: 1fr;
        gap: 2rem
    }

    .site-footer__brand-desc {
        max-width: 100%
    }

    .site-footer__sub-bar {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.85rem
    }

    .site-footer__legal-links {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem
    }

    .site-footer__legal-dot {
        display: none
    }
}

/* ===== PAGE: about ===== */
.about-overview__eyebrow-wrap, .event-commitments__eyebrow-wrap { max-width: 100%; }
.about-overview__line, .event-commitments__line { width: 40px; height: 1px; background-color: var(--border, #2D333C); }
.about-overview__gradient-text, .event-commitments__gradient-text { background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.about-overview__lead, .event-commitments__lead { max-width: 720px; font-size: 1.05rem; line-height: 1.6; }
.about-overview__card, .event-commitments__card, .event-commitments__details-card, .event-commitments__action-card { background: #131B29; border: 1px solid #2D333C; border-radius: 16px; padding: 28px; }
.about-overview__media { border-radius: 12px; overflow: hidden; aspect-ratio: 16 / 9; max-height: 280px; }
.about-overview__stat-box { background: rgba(11, 15, 23, 0.6); border: 1px solid #2D333C; }
.about-overview__stat-icon, .event-commitments__icon-box { width: 44px; height: 44px; border-radius: 12px; background: rgba(97, 140, 209, 0.12); color: #618CD1; display: inline-flex; align-items: center; justify-content: center; font-size: 1.25rem; }
.about-overview__quote { background: rgba(97, 140, 209, 0.08); border-left: 3px solid #618CD1; }
.event-commitments__action-icon { width: 56px; height: 56px; border-radius: 50%; background: linear-gradient(135deg, rgba(97, 140, 209, 0.2) 0%, rgba(233, 217, 148, 0.2) 100%); color: #E9D994; display: inline-flex; align-items: center; justify-content: center; font-size: 1.5rem; }
.rrr-btn { background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%); color: #111111; font-weight: 700; padding: 12px 28px; border-radius: 9999px; border: none; transition: all 0.2s ease-in-out; }
.rrr-btn:hover { color: #111111; transform: translateY(-2px); box-shadow: 0 4px 20px rgba(97, 140, 209, 0.35); }
@media (max-width: 767px) { .about-overview__card, .event-commitments__card, .event-commitments__details-card, .event-commitments__action-card { padding: 18px; } .about-overview__line, .event-commitments__line { width: 24px; } }

/* ===== PAGE: teams ===== */
.teams-catalog-section {
  position: relative;
  background-color: var(--bg);
  padding: 80px 0;
  overflow: hidden;
}
.teams-catalog-section::before {
  content: '';
  position: absolute;
  top: 10%;
  left: 50%;
  transform: translateX(-50%);
  width: 700px;
  height: 400px;
  background: radial-gradient(circle, rgba(97, 140, 209, 0.12) 0%, rgba(11, 15, 23, 0) 70%);
  pointer-events: none;
  z-index: 0;
}
.teams-catalog-section .container {
  position: relative;
  z-index: 1;
}
.teams-catalog-section .teams-line {
  display: inline-block;
  width: 40px;
  height: 1px;
  background-color: var(--border);
  vertical-align: middle;
}
.teams-catalog-section .rrr-eyebrow {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: var(--primary);
  text-transform: uppercase;
}
.teams-catalog-section .rrr-title {
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1.25;
  color: var(--text);
}
.teams-catalog-section .teams-gradient-text {
  background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.teams-catalog-section .teams-subtitle {
  max-width: 720px;
  font-size: 1.05rem;
  line-height: 1.6;
  color: var(--text-muted);
}
.teams-catalog-section .rrr-btn.teams-cta-btn {
  border-radius: 9999px;
  background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
  color: #111111;
  font-weight: 700;
  padding: 12px 30px;
  border: none;
  text-decoration: none;
  transition: all 0.2s ease-in-out;
}
.teams-catalog-section .rrr-btn.teams-cta-btn:hover {
  filter: brightness(1.1);
  box-shadow: 0 4px 20px rgba(97, 140, 209, 0.35);
  transform: translateY(-2px);
  color: #111111;
}
.teams-catalog-section .rrr-card.teams-featured-card,
.teams-catalog-section .rrr-card.teams-side-card {
  background-color: var(--surface);
  border: 1px solid var(--border);
  border-radius: 16px;
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.teams-catalog-section .rrr-card.teams-featured-card:hover,
.teams-catalog-section .rrr-card.teams-side-card:hover {
  transform: translateY(-4px);
  border-color: rgba(97, 140, 209, 0.5);
  box-shadow: 0 0 25px rgba(97, 140, 209, 0.18);
}
.teams-catalog-section .teams-media-wrapper {
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background-color: var(--surface-alt);
}
.teams-catalog-section .teams-card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
}
.teams-catalog-section .rrr-card:hover .teams-card-img {
  transform: scale(1.03);
}
.teams-catalog-section .rrr-badge.teams-card-badge {
  position: absolute;
  top: 14px;
  right: 14px;
  background: rgba(19, 27, 41, 0.85);
  color: var(--text);
  font-size: 0.78rem;
  font-weight: 600;
  padding: 6px 12px;
  border-radius: 9999px;
  border: 1px solid var(--border);
  backdrop-filter: blur(4px);
  z-index: 2;
}
.teams-catalog-section .teams-card-content {
  padding: 24px;
}
.teams-catalog-section .teams-meta-bar {
  font-size: 0.85rem;
  color: var(--text-muted);
}
.teams-catalog-section .teams-meta-item {
  display: inline-flex;
  align-items: center;
}
.teams-catalog-section .teams-meta-separator {
  color: var(--border);
}
.teams-catalog-section .teams-card-title {
  font-size: 1.25rem;
  line-height: 1.35;
  font-weight: 600;
}
.teams-catalog-section .teams-title-link {
  color: var(--text);
  text-decoration: none;
  transition: color 0.15s ease;
  overflow-wrap: anywhere;
}
.teams-catalog-section .teams-title-link:hover {
  color: var(--primary);
}
.teams-catalog-section .teams-card-desc {
  font-size: 0.95rem;
  line-height: 1.5;
  color: var(--text-muted);
  overflow-wrap: anywhere;
}
.teams-catalog-section .rrr-btn-alt.teams-action-btn {
  border-radius: 9999px;
  background: transparent;
  border: 1.5px solid var(--primary);
  color: var(--text);
  font-size: 0.85rem;
  font-weight: 600;
  padding: 8px 18px;
  text-decoration: none;
  transition: all 0.2s ease;
}
.teams-catalog-section .rrr-btn-alt.teams-action-btn:hover {
  background: rgba(97, 140, 209, 0.15);
  border-color: var(--primary-hover);
  color: #FFFFFF;
  transform: translateY(-2px);
}
.teams-catalog-section .teams-round-arrow-btn {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--surface-alt);
  border: 1px solid var(--border);
  color: var(--primary);
  text-decoration: none;
  transition: all 0.2s ease;
}
.teams-catalog-section .teams-round-arrow-btn:hover {
  background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
  border-color: transparent;
  color: #111111;
  transform: scale(1.08);
}
@media (max-width: 767px) {
  .teams-catalog-section {
    padding: 50px 0;
  }
  .teams-catalog-section .rrr-title {
    font-size: 1.6rem;
    hyphens: auto;
  }
  .teams-catalog-section .teams-card-title {
    font-size: 1.15rem;
    hyphens: auto;
  }
  .teams-catalog-section .teams-card-content {
    padding: 16px;
  }
  .teams-catalog-section .teams-action-btn {
    width: 100%;
    justify-content: center;
  }
}

/* ===== PAGE: players ===== */
.nbap-players-section { background-color: var(--bg); color: var(--text); padding: 80px 0; min-height: 80vh; }
.nbap-eyebrow-line { display: inline-block; width: 40px; height: 1px; background-color: var(--border); }
.nbap-main-title { font-size: 2.25rem; font-weight: 700; color: var(--text); line-height: 1.25; }
.nbap-gradient-text { background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.nbap-lead-text { max-width: 680px; font-size: 1.05rem; line-height: 1.6; color: var(--text-muted); }
.nbap-pill-btn { border-radius: 9999px; background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%); color: #111111; font-weight: 700; padding: 12px 28px; text-decoration: none; display: inline-flex; align-items: center; border: none; transition: transform 0.2s ease, box-shadow 0.2s ease; }
.nbap-pill-btn:hover { color: #000000; transform: translateY(-2px); box-shadow: 0 4px 20px rgba(97, 140, 209, 0.35); }
.nbap-controls { background: var(--surface); border: 1px solid var(--border); border-radius: 16px; padding: 18px 24px; }
.nbap-filter-btn { border-radius: 9999px; border: 1px solid var(--border); background: transparent; color: var(--text-muted); font-size: 0.875rem; font-weight: 600; padding: 8px 18px; transition: all 0.2s ease; }
.nbap-filter-btn:hover { background: rgba(97, 140, 209, 0.15); color: #FFFFFF; border-color: var(--primary); }
.nbap-filter-btn.active { background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%); color: #111111; border-color: transparent; }
.nbap-search-group .input-group-text { background-color: var(--bg); border: 1px solid var(--border); border-right: none; color: var(--text-muted); border-radius: 9999px 0 0 9999px; padding-left: 18px; }
.nbap-search-group .form-control { background-color: var(--bg); border: 1px solid var(--border); border-left: none; color: var(--text); border-radius: 0 9999px 9999px 0; padding-right: 18px; font-size: 0.9rem; }
.nbap-search-group .form-control:focus { outline: none; box-shadow: none; border-color: var(--primary); background-color: var(--bg); color: var(--text); }
.nbap-search-group .form-control::placeholder { color: var(--text-muted); opacity: 0.8; }
.nbap-player-card { background: var(--surface); border: 1px solid var(--border); border-radius: 16px; overflow: hidden; transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease; }
.nbap-player-card:hover { transform: translateY(-4px); border-color: rgba(97, 140, 209, 0.5); box-shadow: 0 10px 25px rgba(0, 0, 0, 0.4); }
.nbap-card-media-wrapper { position: relative; width: 100%; aspect-ratio: 3 / 2; overflow: hidden; }
.nbap-card-img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease; }
.nbap-player-card:hover .nbap-card-img { transform: scale(1.04); }
.nbap-team-tag { position: absolute; top: 12px; right: 12px; font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; padding: 4px 10px; border-radius: 9999px; color: #FFFFFF; z-index: 2; }
.nbap-tag-spurs { background: #000000; border: 1px solid #8a8d8f; }
.nbap-tag-pelicans { background: #0c2340; border: 1px solid #c8102e; }
.nbap-card-body { padding: 22px; }
.nbap-card-title { font-size: 1.15rem; font-weight: 700; line-height: 1.35; margin-bottom: 8px; }
.nbap-title-link { color: var(--text); text-decoration: none; transition: color 0.2s ease; }
.nbap-title-link:hover { color: var(--primary); }
.nbap-card-stat { font-size: 0.85rem; font-weight: 600; color: var(--accent); margin-bottom: 0; }
.nbap-action-btn { background: rgba(97, 140, 209, 0.12); color: var(--primary-text); border: 1px solid rgba(97, 140, 209, 0.25); border-radius: 9999px; padding: 6px 14px; font-weight: 600; text-decoration: none; transition: all 0.2s ease; }
.nbap-action-btn:hover { background: var(--primary); color: #111111; border-color: var(--primary); }
.nbap-round-arrow { width: 36px; height: 36px; border-radius: 50%; background: var(--surface-alt); border: 1px solid var(--border); display: inline-flex; align-items: center; justify-content: center; color: var(--primary-text); text-decoration: none; transition: all 0.2s ease; }
.nbap-round-arrow:hover { background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%); color: #111111; border-color: transparent; transform: scale(1.08); }
.nbap-empty-box { background: var(--surface); border: 1px dashed var(--border); }
@media (min-width: 992px) { .nbap-staggered-grid .nbap-col-offset { transform: translateY(48px); } .nbap-staggered-grid { padding-bottom: 48px; } }
@media (max-width: 767.98px) { .nbap-players-section { padding: 50px 0; } .nbap-main-title { font-size: 1.75rem; } .nbap-card-body { padding: 18px; } .nbap-controls { padding: 16px; } }

/* ===== PAGE: schedule ===== */
.nba-schedule-section { background-color: var(--bg); color: var(--text); overflow-wrap: anywhere; }
.nba-schedule-section .text-gradient { background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.nba-schedule-section .nba-schedule-line { width: 36px; height: 1px; background-color: var(--border); display: inline-block; }
.nba-schedule-section .nba-schedule-banner { background: linear-gradient(172deg, #0F1621 0%, #111925 100%); border: 1px solid var(--border); }
.nba-schedule-section .rrr-eyebrow { font-size: 0.75rem; letter-spacing: 0.15em; color: var(--accent); font-weight: 700; }
.nba-schedule-section .rrr-btn { background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%); color: #111111; font-weight: 700; border-radius: 9999px; padding: 12px 28px; transition: all 0.2s ease-in-out; border: none; }
.nba-schedule-section .rrr-btn:hover { filter: brightness(1.1); box-shadow: 0 4px 20px rgba(97, 140, 209, 0.35); transform: translateY(-2px); color: #111111; }
.nba-schedule-section .rrr-btn-alt { background: transparent; border: 1.5px solid #618CD1; color: #EEF0F2; font-weight: 600; border-radius: 9999px; padding: 10px 24px; transition: all 0.2s ease-in-out; }
.nba-schedule-section .rrr-btn-alt:hover { background: rgba(97, 140, 209, 0.15); border-color: #81A3DA; color: #FFFFFF; transform: translateY(-2px); }
.nba-schedule-section .nba-schedule-card { background-color: var(--surface); border: 1px solid var(--border); border-radius: 16px; overflow: hidden; transition: transform 0.2s ease, box-shadow 0.2s ease; }
.nba-schedule-section .nba-schedule-card:hover { transform: translateY(-4px); box-shadow: 0 0 24px rgba(97, 140, 209, 0.2); border-color: rgba(97, 140, 209, 0.4); }
.nba-schedule-section .nba-schedule-thumb { width: 100%; aspect-ratio: 1 / 1; overflow: hidden; position: relative; }
.nba-schedule-section .nba-schedule-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease; }
.nba-schedule-section .nba-schedule-card:hover .nba-schedule-thumb img { transform: scale(1.04); }
.nba-schedule-section .nba-schedule-badge { background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%); color: #111111; font-size: 0.75rem; font-weight: 700; border-radius: 9999px; padding: 6px 14px; }
.nba-schedule-section .nba-card-title-link { transition: color 0.2s ease; }
.nba-schedule-section .nba-card-title-link:hover { color: var(--primary) !important; }
.nba-schedule-section .nba-schedule-link { color: var(--primary-text); font-weight: 600; font-size: 0.95rem; text-underline-offset: 4px; transition: color 0.2s ease; }
.nba-schedule-section .nba-schedule-link:hover { color: var(--accent); }
.nba-schedule-section .nba-schedule-footer-cta { background-color: #131B29; border: 1px solid var(--border); }
.nba-schedule-section .nba-schedule-icon-holder { width: 48px; height: 48px; border-radius: 12px; background: rgba(97, 140, 209, 0.12); }
@media (max-width: 767px) { .nba-schedule-section .rrr-title { font-size: 1.75rem; } .nba-schedule-section .nba-schedule-card { margin-bottom: 0.5rem; } }

/* ===== PAGE: history ===== */
.history-archive-section { background-color: var(--bg); padding: 80px 0; color: var(--text); }
.history-archive-section .history-intro-banner { background: var(--section-alt-bg); border: 1px solid var(--border); border-radius: 16px; padding: 40px 32px; box-shadow: var(--glow-primary); }
.history-archive-section .history-eyebrow-wrap { display: flex; align-items: center; gap: 12px; }
.history-archive-section .history-eyebrow-wrap::before, .history-archive-section .history-eyebrow-wrap::after { content: ""; display: inline-block; width: 36px; height: 1px; background-color: var(--border); }
.history-archive-section .rrr-eyebrow { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.15em; color: var(--primary-text); text-transform: uppercase; margin: 0; }
.history-archive-section .history-main-title { font-size: 2.25rem; font-weight: 700; line-height: 1.25; color: var(--text); margin-bottom: 0.75rem; }
.history-archive-section .history-gradient-text { background: var(--gradient-primary-accent); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.history-archive-section .history-intro-desc { font-size: 1.05rem; line-height: 1.6; color: var(--text-muted); max-width: 780px; }
.history-archive-section .history-cta-btn { background: var(--gradient-primary-accent); color: var(--on-primary); font-weight: 700; border-radius: 9999px; padding: 14px 28px; text-decoration: none; border: none; transition: all 0.2s ease-in-out; min-height: 48px; }
.history-archive-section .history-cta-btn:hover { filter: brightness(1.1); box-shadow: 0 4px 20px rgba(97, 140, 209, 0.35); transform: translateY(-2px); color: var(--on-primary); }
.history-archive-section .history-card { background: var(--surface); border: 1px solid var(--border); border-radius: 16px; padding: 20px; transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease; overflow: hidden; }
.history-archive-section .history-card:hover { transform: translateY(-4px); border-color: rgba(97, 140, 209, 0.5); box-shadow: var(--glow-primary); }
.history-archive-section .history-media-wrapper { position: relative; width: 100%; aspect-ratio: 4 / 3; border-radius: 12px; overflow: hidden; margin-bottom: 20px; background-color: var(--surface-alt); }
.history-archive-section .history-card-link { display: block; width: 100%; height: 100%; }
.history-archive-section .history-card-img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.3s ease; }
.history-archive-section .history-card:hover .history-card-img { transform: scale(1.04); }
.history-archive-section .history-card-badge { position: absolute; top: 12px; left: 12px; background: rgba(11, 15, 23, 0.85); backdrop-filter: blur(6px); border: 1px solid var(--border); color: var(--accent-text); font-size: 0.75rem; font-weight: 700; padding: 4px 12px; border-radius: 9999px; text-transform: uppercase; letter-spacing: 0.05em; z-index: 2; }
.history-archive-section .history-card-body { text-align: center; }
.history-archive-section .history-card-heading { font-size: 1.25rem; font-weight: 700; line-height: 1.35; margin-bottom: 12px; }
.history-archive-section .history-title-anchor { color: var(--text); text-decoration: none; transition: color 0.2s ease; }
.history-archive-section .history-title-anchor:hover { color: var(--primary); }
.history-archive-section .history-card-text { font-size: 0.95rem; line-height: 1.55; color: var(--text-muted); margin-bottom: 16px; }
.history-archive-section .history-card-meta { border-top: 1px solid var(--border); font-size: 0.825rem; color: var(--text-muted); }
.history-archive-section .history-meta-item { display: inline-flex; align-items: center; white-space: nowrap; }
.history-archive-section .history-meta-divider { opacity: 0.4; }
.history-archive-section .history-action-arrow { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--surface-alt); border: 1px solid var(--border); color: var(--primary-text); text-decoration: none; transition: all 0.2s ease; font-size: 1rem; }
.history-archive-section .history-action-arrow:hover { background: var(--gradient-primary-accent); color: var(--on-primary); border-color: transparent; transform: scale(1.08); }
@media (max-width: 991.98px) { .history-archive-section .history-intro-banner { padding: 32px 24px; } .history-archive-section .history-main-title { font-size: 1.85rem; } }
@media (max-width: 767.98px) { .history-archive-section { padding: 48px 0; } .history-archive-section .history-intro-banner { padding: 24px 18px; } .history-archive-section .history-main-title { font-size: 1.5rem; } .history-archive-section .history-card-heading { font-size: 1.15rem; } .history-archive-section .history-card { padding: 16px; } }

/* ===== PAGE: venue ===== */
.venue-showcase {
  background-color: var(--bg, #0B0F17);
  color: var(--text, #EEF0F2);
  padding: 80px 0;
}

.venue-showcase__header-left {
  flex: 1 1 50%;
}

.venue-showcase__header-right {
  flex: 1 1 45%;
}

.venue-showcase__eyebrow-line {
  display: inline-block;
  width: 32px;
  height: 1px;
  background: var(--border, #2D333C);
}

.venue-showcase__heading {
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1.25;
  color: var(--text, #EEF0F2);
}

.venue-showcase__gradient-word {
  background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.venue-showcase__lead {
  color: var(--text-muted, #B0B6BF);
  font-size: 1.1rem;
  line-height: 1.6;
}

.venue-showcase__cta-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 28px;
  border-radius: 9999px;
  background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
  color: #111111;
  font-weight: 700;
  text-decoration: none;
  border: none;
  transition: all 0.2s ease-in-out;
}

.venue-showcase__cta-btn:hover {
  filter: brightness(1.1);
  box-shadow: 0 4px 20px rgba(97, 140, 209, 0.35);
  transform: translateY(-2px);
  color: #000000;
}

.venue-showcase__filter-bar {
  overflow-x: auto;
  padding-bottom: 8px;
}

.venue-showcase__filter-btn {
  border: 1px solid var(--border, #2D333C);
  background: var(--surface, #131B29);
  color: var(--text-muted, #B0B6BF);
  padding: 8px 18px;
  border-radius: 9999px;
  font-size: 0.875rem;
  font-weight: 600;
  transition: all 0.2s ease-in-out;
  cursor: pointer;
  white-space: nowrap;
}

.venue-showcase__filter-btn:hover {
  border-color: var(--primary, #618CD1);
  color: var(--text, #EEF0F2);
}

.venue-showcase__filter-btn.is-active {
  background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
  color: #111111;
  border-color: transparent;
  box-shadow: 0 0 16px rgba(97, 140, 209, 0.3);
}

.venue-showcase__masonry {
  column-count: 3;
  column-gap: 36px;
}

.venue-showcase__item {
  break-inside: avoid;
  margin-bottom: 36px;
  display: inline-block;
  width: 100%;
}

.venue-showcase__card {
  background: var(--surface, #131B29);
  border: 1px solid var(--border, #2D333C);
  border-radius: 16px;
  overflow: hidden;
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.venue-showcase__card:hover {
  transform: translateY(-4px);
  border-color: rgba(97, 140, 209, 0.6);
  box-shadow: 0 10px 30px rgba(97, 140, 209, 0.15);
}

.venue-showcase__media {
  aspect-ratio: 4 / 3;
  overflow: hidden;
  width: 100%;
}

.venue-showcase__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

.venue-showcase__card:hover .venue-showcase__img {
  transform: scale(1.04);
}

.venue-showcase__body {
  padding: 24px 20px;
}

.venue-showcase__meta {
  font-size: 0.8125rem;
  color: var(--text-muted, #B0B6BF);
}

.venue-showcase__badge {
  background: rgba(97, 140, 209, 0.15);
  color: var(--primary, #618CD1);
  border: 1px solid rgba(97, 140, 209, 0.3);
  border-radius: 9999px;
  padding: 2px 10px;
  font-size: 0.75rem;
  font-weight: 600;
}

.venue-showcase__dot {
  color: var(--border, #2D333C);
}

.venue-showcase__title {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.35;
  margin-bottom: 12px;
}

.venue-showcase__title-link {
  color: var(--text, #EEF0F2);
  text-decoration: none;
  transition: color 0.2s ease;
}

.venue-showcase__title-link:hover {
  color: var(--primary, #618CD1);
}

.venue-showcase__text {
  color: var(--text-muted, #B0B6BF);
  font-size: 0.9375rem;
  line-height: 1.5;
}

.venue-showcase__link-underlined {
  display: inline-flex;
  align-items: center;
  color: var(--primary, #618CD1);
  font-weight: 600;
  font-size: 0.9375rem;
  text-decoration: underline;
  text-underline-offset: 4px;
  transition: color 0.2s ease, text-decoration-color 0.2s ease;
}

.venue-showcase__link-underlined:hover {
  color: var(--accent, #E9D994);
  text-decoration-color: var(--accent, #E9D994);
}

.venue-showcase__support-banner {
  background: linear-gradient(135deg, #131B29 0%, #0F1621 100%);
  border: 1px solid var(--border, #2D333C);
  border-radius: 16px;
  box-shadow: 0 0 24px rgba(97, 140, 209, 0.1);
}

.venue-showcase__support-title {
  font-size: 1.5rem;
  font-weight: 700;
}

.venue-showcase__support-text {
  color: var(--text-muted, #B0B6BF);
  font-size: 1rem;
  max-width: 600px;
}

.venue-showcase__support-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 32px;
  border-radius: 9999px;
  background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
  color: #111111;
  font-weight: 700;
  text-decoration: none;
  border: none;
  transition: all 0.2s ease;
}

.venue-showcase__support-btn:hover {
  filter: brightness(1.1);
  box-shadow: 0 4px 20px rgba(97, 140, 209, 0.35);
  transform: translateY(-2px);
  color: #000000;
}

@media (max-width: 991px) {
  .venue-showcase__masonry {
    column-count: 2;
    column-gap: 24px;
  }
  .venue-showcase__item {
    margin-bottom: 24px;
  }
  .venue-showcase__heading {
    font-size: 1.85rem;
  }
}

@media (max-width: 767px) {
  .venue-showcase {
    padding: 50px 0;
  }
  .venue-showcase__masonry {
    column-count: 1;
    column-gap: 0;
  }
  .venue-showcase__item {
    margin-bottom: 20px;
  }
  .venue-showcase__heading {
    font-size: 1.5rem;
  }
  .venue-showcase__support-banner {
    padding: 24px;
  }
  .venue-showcase__cta-btn,
  .venue-showcase__support-btn {
    width: 100%;
    text-align: center;
  }
}

/* ===== PAGE: fan-guide ===== */
.fan-guide-block {
  position: relative;
  background-color: var(--bg);
  color: var(--text);
  overflow: hidden;
}

.fan-guide-block::before {
  content: '';
  position: absolute;
  top: 5%;
  right: -10%;
  width: 500px;
  height: 500px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(97, 140, 209, 0.08) 0%, rgba(11, 15, 23, 0) 70%);
  pointer-events: none;
  z-index: 0;
}

.fan-guide-block .container {
  position: relative;
  z-index: 1;
}

.fan-guide-block__line {
  display: inline-block;
  width: 32px;
  height: 1px;
  background-color: var(--border);
}

.fan-guide-block__title {
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.01em;
  color: var(--text);
  overflow-wrap: anywhere;
}

.fan-guide-block__gradient-word {
  background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.fan-guide-block__lead {
  color: var(--text-muted);
  font-size: 1rem;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.fan-guide-block__cta-btn {
  border-radius: 9999px;
  background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
  color: #111111;
  font-weight: 700;
  padding: 12px 26px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  border: none;
  transition: all 0.2s ease-in-out;
}

.fan-guide-block__cta-btn:hover {
  filter: brightness(1.1);
  box-shadow: 0 4px 20px rgba(97, 140, 209, 0.35);
  transform: translateY(-2px);
  color: #111111;
}

.fan-guide-block__filters {
  border-bottom: 1px solid var(--border);
  padding-bottom: 16px;
}

.fan-guide-block__filter-chip {
  background: var(--surface);
  border: 1px solid var(--border);
  color: var(--text-muted);
  border-radius: 9999px;
  padding: 8px 18px;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

.fan-guide-block__filter-chip:hover {
  border-color: var(--primary);
  color: var(--text);
}

.fan-guide-block__filter-chip.active {
  background: rgba(97, 140, 209, 0.15);
  border-color: var(--primary);
  color: var(--primary-text);
}

.fan-guide-block__featured-card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 0 24px rgba(97, 140, 209, 0.08);
  transition: border-color 0.2s ease, transform 0.2s ease;
}

.fan-guide-block__featured-card:hover {
  border-color: rgba(97, 140, 209, 0.5);
}

.fan-guide-block__img-frame {
  position: relative;
  width: 100%;
  overflow: hidden;
  background: var(--surface-alt);
}

.fan-guide-block__img-frame--featured {
  aspect-ratio: 1 / 1;
  height: 100%;
  min-height: 260px;
}

.fan-guide-block__img-frame--square {
  aspect-ratio: 1 / 1;
}

.fan-guide-block__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
}

.fan-guide-block__featured-card:hover .fan-guide-block__img,
.fan-guide-block__card:hover .fan-guide-block__img {
  transform: scale(1.03);
}

.fan-guide-block__badge {
  position: absolute;
  top: 12px;
  left: 12px;
  background: rgba(11, 15, 23, 0.85);
  backdrop-filter: blur(4px);
  border: 1px solid var(--border);
  color: var(--accent);
  font-size: 0.75rem;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 9999px;
  letter-spacing: 0.05em;
}

.fan-guide-block__meta {
  font-size: 0.8125rem;
  color: var(--text-muted);
}

.fan-guide-block__meta-item {
  display: inline-flex;
  align-items: center;
}

.fan-guide-block__featured-title {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.fan-guide-block__card-title {
  font-size: 1.15rem;
  font-weight: 600;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.fan-guide-block__title-link {
  color: var(--text);
  text-decoration: none;
  transition: color 0.15s ease;
}

.fan-guide-block__title-link:hover {
  color: var(--primary-text);
}

.fan-guide-block__text {
  color: var(--text-muted);
  font-size: 0.9375rem;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.fan-guide-block__link-underline {
  display: inline-flex;
  align-items: center;
  color: var(--primary-text);
  text-decoration: underline;
  text-underline-offset: 4px;
  font-weight: 600;
  font-size: 0.9rem;
  transition: color 0.15s ease, text-decoration-color 0.15s ease;
}

.fan-guide-block__link-underline:hover {
  color: var(--accent);
  text-decoration-color: var(--accent);
}

.fan-guide-block__card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 0;
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.fan-guide-block__card:hover {
  transform: translateY(-4px);
  border-color: rgba(97, 140, 209, 0.4);
  box-shadow: 0 0 24px rgba(97, 140, 209, 0.15);
}

.fan-guide-block__card-body {
  padding: 20px 16px 22px;
  flex-grow: 1;
}

.fan-guide-block__support-card {
  background: linear-gradient(172deg, #0F1621 0%, #111925 100%);
  border: 1px solid var(--border);
  border-radius: 16px;
  position: relative;
  overflow: hidden;
}

.fan-guide-block__support-icon {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  background: rgba(97, 140, 209, 0.12);
  color: var(--primary);
  font-size: 24px;
  border: 1px solid rgba(97, 140, 209, 0.25);
}

.fan-guide-block__support-title {
  color: var(--text);
  font-size: 1.45rem;
  font-weight: 700;
}

.fan-guide-block__support-text {
  color: var(--text-muted);
  max-width: 650px;
  margin-left: auto;
  margin-right: auto;
  font-size: 0.95rem;
}

.fan-guide-block__support-btn {
  border-radius: 9999px;
  background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
  color: #111111;
  font-weight: 700;
  padding: 12px 28px;
  text-decoration: none;
  border: none;
  transition: all 0.2s ease-in-out;
}

.fan-guide-block__support-btn:hover {
  filter: brightness(1.1);
  box-shadow: 0 4px 20px rgba(97, 140, 209, 0.35);
  transform: translateY(-2px);
  color: #111111;
}

.fan-guide-block__support-btn-alt {
  border-radius: 9999px;
  background: transparent;
  border: 1.5px solid var(--primary);
  color: var(--text);
  font-weight: 600;
  padding: 11px 26px;
  text-decoration: none;
  transition: all 0.2s ease-in-out;
}

.fan-guide-block__support-btn-alt:hover {
  background: rgba(97, 140, 209, 0.15);
  border-color: var(--primary-hover);
  color: #FFFFFF;
  transform: translateY(-2px);
}

@media (max-width: 767px) {
  .fan-guide-block__title {
    font-size: 1.5rem;
    hyphens: auto;
  }
  .fan-guide-block__featured-title {
    font-size: 1.25rem;
  }
  .fan-guide-block__card-title {
    font-size: 1.1rem;
  }
  .fan-guide-block__img-frame--featured {
    min-height: auto;
  }
  .fan-guide-block__cta-btn,
  .fan-guide-block__support-btn,
  .fan-guide-block__support-btn-alt {
    width: 100%;
    justify-content: center;
  }
}

/* ===== PAGE: analytics ===== */
.analytics-page-hub { background-color: var(--bg); position: relative; overflow: hidden; }
.analytics-page-hub::before { content: ''; position: absolute; top: -100px; left: 50%; transform: translateX(-50%); width: 700px; height: 350px; background: radial-gradient(circle, rgba(97, 140, 209, 0.12) 0%, rgba(11, 15, 23, 0) 70%); pointer-events: none; }
.analytics-page-hub__line { width: 40px; height: 1px; background-color: var(--border); display: inline-block; }
.analytics-page-hub__gradient { background: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.analytics-page-hub__lead { max-width: 720px; color: var(--text-muted); font-size: 1.1rem; line-height: 1.6; }
.analytics-page-hub__toolbar { background: var(--surface-alt); border: 1px solid var(--border); border-radius: 16px; padding: 16px 20px; }
.analytics-page-hub__filter-btn { background: transparent; border: 1px solid var(--border); color: var(--text-muted); padding: 8px 18px; border-radius: 9999px; font-size: 0.9rem; font-weight: 600; transition: all 0.2s ease-in-out; }
.analytics-page-hub__filter-btn:hover { border-color: var(--primary); color: #FFFFFF; background-color: rgba(97, 140, 209, 0.1); }
.analytics-page-hub__filter-btn.active { background: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%); color: var(--on-primary); border-color: transparent; box-shadow: 0 2px 12px rgba(97, 140, 209, 0.25); }
.analytics-page-hub__search-icon { position: absolute; left: 18px; top: 50%; transform: translateY(-50%); color: var(--primary); font-size: 1rem; pointer-events: none; }
.analytics-page-hub__search-input { background-color: var(--bg); border: 1px solid var(--border); border-radius: 9999px; padding: 10px 18px 10px 44px; color: var(--text); font-size: 0.95rem; }
.analytics-page-hub__search-input:focus { background-color: var(--bg); border-color: var(--primary); color: var(--text); box-shadow: 0 0 0 3px rgba(97, 140, 209, 0.25); outline: none; }
.analytics-page-hub__search-input::placeholder { color: var(--text-muted); opacity: 0.8; }
.analytics-page-hub__card { background-color: var(--surface); border: 1px solid var(--border); border-radius: 16px; overflow: hidden; transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease; }
.analytics-page-hub__card:hover { transform: translateY(-3px); border-color: rgba(97, 140, 209, 0.5); box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35); }
.analytics-page-hub__media-wrap { position: relative; width: 100%; overflow: hidden; border-radius: 12px; }
.analytics-page-hub__media-link { display: block; }
.analytics-page-hub__img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: contain; display: block; margin: 0; }
.analytics-page-hub__card:hover .analytics-page-hub__img { transform: none; }
.analytics-page-hub__badge { position: absolute; top: 16px; left: 16px; z-index: 2; font-size: 0.75rem; text-transform: uppercase; font-weight: 700; letter-spacing: 0.05em; padding: 6px 14px; border-radius: 9999px; background: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%); color: var(--on-primary); }
.analytics-page-hub__tag-metric { display: inline-flex; align-items: center; font-size: 0.825rem; font-weight: 600; color: var(--accent); background: rgba(233, 217, 148, 0.1); border: 1px solid rgba(233, 217, 148, 0.25); padding: 4px 12px; border-radius: 9999px; }
.analytics-page-hub__card-title { font-size: 1.25rem; font-weight: 700; line-height: 1.35; margin: 0; }
.analytics-page-hub__title-link { color: var(--text); text-decoration: none; transition: color 0.2s ease; }
.analytics-page-hub__title-link:hover { color: var(--primary); }
.analytics-page-hub__excerpt { color: var(--text-muted); font-size: 0.95rem; line-height: 1.5; margin: 0; }
.analytics-page-hub__meta { border-color: rgba(45, 51, 60, 0.8) !important; font-size: 0.85rem; }
.analytics-page-hub__arrow-link { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--surface-alt); border: 1px solid var(--border); color: var(--primary); text-decoration: none; font-size: 1.1rem; transition: all 0.2s ease; }
.analytics-page-hub__arrow-link:hover { background: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%); color: var(--on-primary); border-color: transparent; }
.analytics-page-hub__empty-icon { width: 64px; height: 64px; border-radius: 50%; background: var(--surface); border: 1px solid var(--border); color: var(--primary); font-size: 1.5rem; }
@media (max-width: 767.98px) { .analytics-page-hub__lead { font-size: 1rem; } .analytics-page-hub__card-title { font-size: 1.15rem; } .analytics-page-hub__toolbar { padding: 14px; } .analytics-page-hub__filter-btn { width: 100%; text-align: center; } }

/* ===== PAGE: news ===== */
.news-page-section {
  background-color: var(--bg, #0B0F17);
  color: var(--text, #EEF0F2);
}

.news-page-section .news-intro-banner {
  background: var(--section-alt-bg, linear-gradient(172deg, #0F1621 0%, #111925 100%));
  border: 1px solid var(--border, #2D333C);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4);
}

.news-page-section .news-banner-eyebrow {
  font-size: 0.75rem;
  letter-spacing: 0.12em;
}

.news-page-section .news-eyebrow-text {
  color: var(--primary, #618CD1);
}

.news-page-section .news-banner-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 700;
  line-height: 1.25;
  color: #FFFFFF;
}

.news-page-section .news-banner-desc {
  font-size: 1.05rem;
  line-height: 1.6;
  color: var(--text-muted, #B0B6BF);
  max-width: 680px;
}

.news-page-section .news-gradient-text {
  background: var(--gradient-primary-accent, linear-gradient(135deg, #618CD1 0%, #E9D994 100%));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.news-page-section .rrr-eyebrow-wrapper {
  display: inline-flex;
  align-items: center;
}

.news-page-section .rrr-eyebrow-line {
  width: 32px;
  height: 1px;
  background: var(--border, #2D333C);
  display: inline-block;
}

.news-page-section .rrr-eyebrow {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: var(--primary, #618CD1);
}

.news-page-section .news-heading {
  font-size: clamp(1.25rem, 2.5vw, 1.75rem);
  font-weight: 700;
  color: #FFFFFF;
}

.news-page-section .news-search-input {
  background: #0B0F17;
  border: 1px solid var(--border, #2D333C);
  border-radius: 9999px;
  color: var(--text, #EEF0F2);
  font-size: 0.9rem;
  padding: 10px 18px;
  min-width: 220px;
}

.news-page-section .news-search-input:focus {
  background: #0B0F17;
  border-color: var(--primary, #618CD1);
  box-shadow: 0 0 0 3px rgba(97, 140, 209, 0.25);
  color: #FFFFFF;
}

.news-page-section .news-search-input::placeholder {
  color: var(--text-muted, #B0B6BF);
  opacity: 0.8;
}

.news-page-section .news-search-icon {
  color: var(--text-muted, #B0B6BF);
  pointer-events: none;
}

.news-page-section .news-filter-btn {
  background: transparent;
  border: 1px solid var(--border, #2D333C);
  border-radius: 9999px;
  color: var(--text-muted, #B0B6BF);
  font-size: 0.85rem;
  font-weight: 600;
  padding: 8px 18px;
  transition: all 0.2s ease-in-out;
}

.news-page-section .news-filter-btn:hover {
  border-color: var(--primary, #618CD1);
  color: #FFFFFF;
}

.news-page-section .news-filter-btn.active {
  background: var(--gradient-primary-accent, linear-gradient(135deg, #618CD1 0%, #E9D994 100%));
  border-color: transparent;
  color: #111111;
  font-weight: 700;
}

.news-page-section .news-card {
  background: var(--surface, #131B29);
  border: 1px solid var(--border, #2D333C);
  border-radius: 16px;
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.news-page-section .news-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.45);
  border-color: rgba(97, 140, 209, 0.4);
}

.news-page-section .news-media-frame {
  width: 100%;
  aspect-ratio: 4 / 3;
  background: #06070A;
}

.news-page-section .news-card-img {
  object-fit: cover;
  transition: transform 0.3s ease;
}

.news-page-section .news-card:hover .news-card-img {
  transform: scale(1.04);
}

.news-page-section .news-card-badge {
  background: rgba(11, 15, 23, 0.85);
  backdrop-filter: blur(6px);
  border: 1px solid var(--border, #2D333C);
  color: var(--accent, #E9D994);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 9999px;
}

.news-page-section .news-meta-row {
  font-size: 0.8rem;
  color: var(--text-muted, #B0B6BF);
}

.news-page-section .news-meta-sep {
  opacity: 0.5;
}

.news-page-section .news-card-title {
  font-size: 1.15rem;
  font-weight: 600;
  line-height: 1.4;
}

.news-page-section .news-title-link {
  color: #EEF0F2;
  text-decoration: none;
  transition: color 0.2s ease;
}

.news-page-section .news-title-link:hover {
  color: var(--primary, #618CD1);
}

.news-page-section .news-card-excerpt {
  font-size: 0.92rem;
  line-height: 1.55;
  color: var(--text-muted, #B0B6BF);
}

.news-page-section .news-text-link {
  color: var(--primary, #618CD1);
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 4px;
  transition: color 0.2s ease;
}

.news-page-section .news-text-link:hover {
  color: var(--accent, #E9D994);
}

.news-page-section .news-cta-btn {
  background: var(--gradient-primary-accent, linear-gradient(135deg, #618CD1 0%, #E9D994 100%));
  color: #111111;
  border-radius: 9999px;
  padding: 12px 28px;
  font-weight: 700;
  text-decoration: none;
  transition: filter 0.2s ease, transform 0.2s ease;
  border: none;
}

.news-page-section .news-cta-btn:hover {
  filter: brightness(1.1);
  color: #000000;
  transform: translateY(-2px);
}

.news-page-section .news-ask-btn {
  border: 1.5px solid var(--border, #2D333C);
  background: transparent;
  color: var(--text-muted, #B0B6BF);
  border-radius: 9999px;
  padding: 8px 18px;
  font-size: 0.85rem;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.2s ease;
}

.news-page-section .news-ask-btn:hover {
  border-color: var(--primary, #618CD1);
  color: #FFFFFF;
  background: rgba(97, 140, 209, 0.1);
}

.news-page-section .news-empty-icon {
  font-size: 2.5rem;
}

@media (max-width: 767.98px) {
  .news-page-section .news-intro-banner {
    padding: 24px 18px;
  }
  .news-page-section .news-search-input {
    width: 100%;
    min-width: unset;
  }
  .news-page-section .news-card-title {
    font-size: 1.05rem;
  }
}

/* ===== PAGE: faq ===== */
.faq-page-block { position: relative; background: var(--bg); overflow: hidden; padding: 80px 0; } .faq-page-block::before { content: ''; position: absolute; top: -10%; left: 50%; transform: translateX(-50%); width: 700px; height: 500px; background: radial-gradient(circle, rgba(97, 140, 209, 0.12) 0%, rgba(11, 15, 23, 0) 70%); pointer-events: none; z-index: 0; } .faq-page-block .container { position: relative; z-index: 1; } .faq-page-block .faq-eyebrow-line { display: inline-block; width: 40px; height: 1px; background-color: var(--border); vertical-align: middle; } .faq-page-block .rrr-eyebrow { color: var(--accent); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.15em; } .faq-page-block .rrr-title { font-size: 2.25rem; font-weight: 700; line-height: 1.25; color: var(--text); } .faq-page-block .faq-gradient-text { background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; } .faq-page-block .faq-lead-text { max-width: 680px; color: var(--text-muted); font-size: 1.05rem; line-height: 1.6; } .faq-page-block .faq-filter-btn { border-radius: 9999px; background: var(--surface); color: var(--text-muted); border: 1px solid var(--border); padding: 8px 20px; font-size: 0.9rem; font-weight: 600; cursor: pointer; transition: all 0.2s ease-in-out; } .faq-page-block .faq-filter-btn:hover { color: var(--text); border-color: var(--primary); background: var(--surface-alt); } .faq-page-block .faq-filter-btn.active { background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%); color: #111111; border-color: transparent; box-shadow: 0 0 16px rgba(97, 140, 209, 0.25); } .faq-page-block .faq-search-box { max-width: 580px; width: 100%; } .faq-page-block .faq-search-icon { position: absolute; left: 18px; top: 50%; transform: translateY(-50%); color: var(--primary); font-size: 1.1rem; pointer-events: none; } .faq-page-block .faq-search-input { background: #0B0F17 !important; border: 1px solid var(--border); border-radius: 9999px; padding: 12px 45px 12px 48px; color: var(--text) !important; font-size: 0.95rem; box-shadow: none; } .faq-page-block .faq-search-input::placeholder { color: #7B8491; opacity: 1; } .faq-page-block .faq-search-input:focus { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(97, 140, 209, 0.25) !important; outline: none; } .faq-page-block .faq-search-clear { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); background: none; border: none; color: var(--text-muted); cursor: pointer; padding: 0; line-height: 1; font-size: 1.1rem; } .faq-page-block .faq-search-clear:hover { color: var(--accent); } .faq-page-block .faq-accordion .accordion-item { background: var(--surface); border: 1px solid var(--border); border-radius: 16px !important; margin-bottom: 14px; overflow: hidden; } .faq-page-block .faq-accordion .accordion-button { background: var(--surface); color: var(--text); font-weight: 600; font-size: 1.05rem; padding: 20px 24px; box-shadow: none; border: none; } .faq-page-block .faq-accordion .accordion-button:not(.collapsed) { background: #162030; color: #FFFFFF; } .faq-page-block .faq-accordion .accordion-button::after { filter: invert(70%) sepia(20%) saturate(600%) hue-rotate(185deg); transition: transform 0.2s ease-in-out; } .faq-page-block .faq-topic-badge { font-size: 0.72rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; background: rgba(97, 140, 209, 0.15); color: var(--primary-text); padding: 4px 10px; border-radius: 9999px; border: 1px solid rgba(97, 140, 209, 0.3); flex-shrink: 0; } .faq-page-block .faq-question-text { overflow-wrap: anywhere; flex-grow: 1; } .faq-page-block .faq-body-content { background: var(--surface); color: var(--text-muted); padding: 0 24px 24px 24px; font-size: 0.95rem; line-height: 1.6; } .faq-page-block .faq-list { padding-left: 20px; margin-top: 10px; } .faq-page-block .faq-list li { margin-bottom: 6px; } .faq-page-block .faq-empty-icon { font-size: 3rem; color: var(--primary); display: inline-block; } .faq-page-block .faq-no-results-title { color: var(--text); font-size: 1.3rem; margin-bottom: 8px; } .faq-page-block .faq-cta-banner { background: #131B29; border: 1px solid var(--border); border-radius: 16px; box-shadow: 0 0 30px rgba(97, 140, 209, 0.1); } .faq-page-block .rrr-badge { background: rgba(233, 217, 148, 0.15); color: var(--accent); border: 1px solid rgba(233, 217, 148, 0.3); border-radius: 9999px; padding: 4px 12px; font-size: 0.75rem; font-weight: 700; text-transform: uppercase; } .faq-page-block .faq-cta-title { font-size: 1.35rem; font-weight: 700; } .faq-page-block .faq-cta-desc { color: var(--text-muted); font-size: 0.95rem; line-height: 1.5; } .faq-page-block .rrr-btn { border-radius: 9999px; background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%); color: #111111 !important; font-weight: 700; padding: 12px 28px; border: none; text-decoration: none; transition: all 0.2s ease-in-out; } .faq-page-block .rrr-btn:hover { filter: brightness(1.1); box-shadow: 0 4px 20px rgba(97, 140, 209, 0.35); color: #111111 !important; } @media (max-width: 767px) { .faq-page-block { padding: 50px 0; } .faq-page-block .rrr-title { font-size: 1.65rem; } .faq-page-block .faq-accordion .accordion-button { padding: 16px 16px; font-size: 0.95rem; } .faq-page-block .faq-body-content { padding: 0 16px 18px 16px; } .faq-page-block .faq-topic-badge { margin-bottom: 6px; } .faq-page-block .accordion-button { display: flex; flex-direction: column; align-items: flex-start; } .faq-page-block .accordion-button::after { align-self: flex-end; margin-top: -16px; } }

/* ===== PAGE: contact ===== */
.contact-info-section .contact-eyebrow-line, .contact-map-section .contact-eyebrow-line { width: 40px; height: 1px; background-color: var(--border); display: inline-block; } .contact-info-section .contact-gradient-text, .contact-map-section .contact-gradient-text { background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; } .contact-info-section .contact-section-title, .contact-map-section .contact-section-title { font-weight: 700; color: var(--text); } .contact-info-section .contact-lead-text, .contact-map-section .contact-lead-text { color: var(--text-muted); font-size: 1.05rem; line-height: 1.6; } .contact-info-section .contact-card { background: var(--surface); border: 1px solid var(--border); border-radius: 16px; padding: 28px 24px; transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease; } .contact-info-section .contact-card:hover { border-color: rgba(97, 140, 209, 0.4); transform: translateY(-3px); box-shadow: 0 10px 24px rgba(97, 140, 209, 0.12); } .contact-info-section .contact-icon-box { width: 52px; height: 52px; border-radius: 12px; background: rgba(97, 140, 209, 0.12); border: 1px solid rgba(97, 140, 209, 0.25); color: var(--primary); } .contact-info-section .contact-icon-glyph { font-size: 1.5rem; line-height: 1; color: var(--primary); } .contact-info-section .contact-card-title { font-size: 1.35rem; font-weight: 600; color: var(--text); line-height: 1.3; } .contact-info-section .contact-card-desc { font-size: 0.95rem; color: var(--text-muted); line-height: 1.5; } .contact-info-section .contact-meta-row { display: flex; flex-direction: column; gap: 4px; } .contact-info-section .contact-meta-label { font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-muted); font-weight: 600; } .contact-info-section .contact-link-highlight { color: var(--primary-text); font-size: 1.05rem; font-weight: 700; text-decoration: none; word-break: break-all; transition: color 0.15s ease; } .contact-info-section .contact-link-highlight:hover, .contact-info-section .contact-link-highlight:focus { color: var(--accent); text-decoration: underline; } .contact-info-section .contact-address-text { color: var(--text); font-size: 1rem; line-height: 1.5; word-break: break-word; } .contact-info-section .contact-action-btn { width: 100%; border-radius: 9999px; text-decoration: none; padding: 12px 24px; font-weight: 600; font-size: 0.95rem; } .contact-info-section .contact-badge, .contact-map-section .contact-badge { background: rgba(97, 140, 209, 0.12); color: var(--text); border: 1px solid var(--border); border-radius: 9999px; padding: 6px 14px; font-size: 0.8rem; font-weight: 600; } .contact-map-section .contact-map-card { background: var(--surface); border: 1px solid var(--border); border-radius: 16px; padding: 0; } .contact-map-section .contact-map-holder { width: 100%; height: 420px; overflow: hidden; position: relative; background: #0B0F17; } .contact-map-section .contact-map-holder iframe { width: 100% !important; height: 100% !important; border: 0 !important; display: block; } .contact-map-section .contact-map-footer { border-top: 1px solid var(--border); background: var(--surface); } .contact-map-section .contact-transit-label { color: var(--text-muted); font-size: 0.875rem; font-weight: 600; } .contact-map-section .contact-mini-cta { border-radius: 9999px; text-decoration: none; padding: 8px 20px; font-size: 0.875rem; font-weight: 600; } @media (max-width: 767px) { .contact-info-section .contact-section-title, .contact-map-section .contact-section-title { font-size: 1.5rem; } .contact-info-section .contact-card-title { font-size: 1.2rem; } .contact-map-section .contact-map-holder { height: 320px; } }

/* ===== PAGE: privacy ===== */
.privacy-section .privacy-lead {
  max-width: 720px;
  color: var(--text-muted);
  font-size: 1.1rem;
  line-height: 1.6;
}
.privacy-section .eyebrow-line {
  width: 40px;
  height: 1px;
  background-color: var(--border);
  display: inline-block;
}
.privacy-section .privacy-nav-wrapper {
  padding: 6px;
  background: var(--surface-alt);
  border: 1px solid var(--border);
  border-radius: 9999px;
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
}
.privacy-section .privacy-tab-btn {
  border: none;
  background: transparent;
  color: var(--text-muted);
  font-family: 'Source Sans 3', sans-serif;
  font-size: 0.95rem;
  font-weight: 600;
  padding: 8px 18px;
  border-radius: 9999px;
  transition: all 0.2s ease-in-out;
}
.privacy-section .privacy-tab-btn:hover {
  color: var(--text);
  background: rgba(97, 140, 209, 0.12);
}
.privacy-section .privacy-tab-btn.active {
  background: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);
  color: #111111;
  box-shadow: 0 0 16px rgba(97, 140, 209, 0.25);
}
.privacy-section .privacy-icon-box {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: rgba(97, 140, 209, 0.12);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
}
.privacy-section .privacy-card-title {
  font-size: 1.35rem;
  font-weight: 700;
  color: var(--text);
  line-height: 1.3;
}
.privacy-section .privacy-text {
  color: var(--text-muted);
  font-size: 0.98rem;
  line-height: 1.6;
}
.privacy-section .privacy-inline-link {
  color: var(--primary-text);
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color 0.15s ease;
}
.privacy-section .privacy-inline-link:hover {
  color: var(--accent);
}
.privacy-section .privacy-callout {
  background: rgba(233, 217, 148, 0.05);
  border: 1px solid rgba(233, 217, 148, 0.3);
  border-radius: 12px;
}
.privacy-section .privacy-callout-text {
  color: var(--text);
  font-size: 0.9rem;
  line-height: 1.5;
}
.privacy-section .privacy-list {
  list-style: none;
  padding-left: 0;
}
.privacy-section .privacy-list li {
  color: var(--text-muted);
  font-size: 0.95rem;
  line-height: 1.55;
  margin-bottom: 0.85rem;
}
.privacy-section .privacy-list li strong {
  color: var(--text);
}
.privacy-section .privacy-list li:last-child {
  margin-bottom: 0;
}
.privacy-section .privacy-table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
}
.privacy-section .privacy-table th {
  background: var(--surface-alt);
  color: var(--text);
  font-weight: 700;
  font-size: 0.9rem;
  padding: 12px 16px;
  border-bottom: 1px solid var(--border);
}
.privacy-section .privacy-table td {
  background: var(--surface);
  color: var(--text-muted);
  font-size: 0.88rem;
  padding: 12px 16px;
  border-bottom: 1px solid var(--border);
}
.privacy-section .privacy-table tr:last-child td {
  border-bottom: none;
}
.privacy-section .privacy-subcard {
  background: var(--surface-alt);
  border: 1px solid var(--border);
  border-radius: 12px;
}
.privacy-section .privacy-subcard-title {
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--text);
}
.privacy-section .privacy-subcard-text {
  font-size: 0.88rem;
  color: var(--text-muted);
  line-height: 1.5;
}
.privacy-section .privacy-right-item {
  background: var(--surface-alt);
  border: 1px solid var(--border);
  border-radius: 12px;
  height: 100%;
}
.privacy-section .privacy-right-name {
  font-weight: 700;
  color: var(--text);
  font-size: 0.95rem;
}
.privacy-section .privacy-right-desc {
  font-size: 0.85rem;
  color: var(--text-muted);
  line-height: 1.45;
}
.privacy-section .privacy-timeline-item {
  position: relative;
  padding-left: 20px;
  border-left: 2px solid var(--border);
}
.privacy-section .privacy-badge-time {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 9999px;
  background: rgba(97, 140, 209, 0.18);
  color: var(--primary);
  border: 1px solid rgba(97, 140, 209, 0.4);
}
.privacy-section .privacy-timeline-title {
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--text);
}
.privacy-section .privacy-sidebar-sticky {
  position: sticky;
  top: 96px;
}
.privacy-section .privacy-sidebar-heading {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--text);
}
.privacy-section .privacy-sidebar-lead {
  font-size: 0.9rem;
  color: var(--text-muted);
  line-height: 1.5;
}
.privacy-section .privacy-meta-label {
  color: var(--text-muted);
  font-size: 0.85rem;
}
.privacy-section .privacy-meta-val {
  color: var(--text);
  font-size: 0.85rem;
  font-weight: 600;
}
.privacy-section .privacy-cert-pill {
  background: rgba(233, 217, 148, 0.08);
  border: 1px solid rgba(233, 217, 148, 0.3);
}
.privacy-section .privacy-cert-text {
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--accent);
}
@media (max-width: 767px) {
  .privacy-section .privacy-nav-wrapper {
    border-radius: 16px;
    padding: 8px;
  }
  .privacy-section .privacy-tab-btn {
    width: 100%;
    text-align: left;
    border-radius: 8px;
  }
  .privacy-section .privacy-sidebar-sticky {
    position: static;
  }
  .privacy-section .privacy-table thead {
    display: none;
  }
  .privacy-section .privacy-table,
  .privacy-section .privacy-table tbody,
  .privacy-section .privacy-table tr,
  .privacy-section .privacy-table td {
    display: block;
    width: 100%;
  }
  .privacy-section .privacy-table tr {
    border-bottom: 1px solid var(--border);
    padding: 10px 0;
  }
  .privacy-section .privacy-table td {
    border: none;
    padding: 6px 12px;
  }
  .privacy-section .privacy-table td::before {
    content: attr(data-label);
    display: block;
    font-weight: 700;
    color: var(--primary);
    font-size: 0.78rem;
    text-transform: uppercase;
    margin-bottom: 2px;
  }
}

/* ===== PAGE: terms ===== */
.terms-portal {
  background-color: var(--bg, #0B0F17);
  color: var(--text, #EEF0F2);
  position: relative;
  overflow: hidden;
}

.terms-portal::before {
  content: '';
  position: absolute;
  top: 5%;
  left: 50%;
  transform: translateX(-50%);
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(97, 140, 209, 0.08) 0%, rgba(11, 15, 23, 0) 70%);
  pointer-events: none;
  z-index: 0;
}

.terms-portal .container {
  position: relative;
  z-index: 1;
}

.terms-portal__meta {
  font-size: 0.875rem;
}

.terms-portal__divider {
  color: var(--border, #2D333C);
}

.terms-portal__date,
.terms-portal__read {
  color: var(--text-muted, #B0B6BF);
}

.terms-portal__line {
  width: 40px;
  height: 1px;
  background-color: var(--border, #2D333C);
  display: inline-block;
}

.terms-portal__headline {
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.01em;
  color: var(--text, #EEF0F2);
}

.terms-portal__gradient-word {
  background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.terms-portal__lead {
  max-width: 720px;
  font-size: 1.05rem;
  line-height: 1.6;
  color: var(--text-muted, #B0B6BF);
}

.terms-portal__filter-btn {
  border: 1px solid var(--border, #2D333C);
  background-color: var(--surface, #131B29);
  color: var(--text-muted, #B0B6BF);
  padding: 8px 18px;
  border-radius: 9999px;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}

.terms-portal__filter-btn:hover {
  border-color: var(--primary, #618CD1);
  color: #FFFFFF;
  transform: translateY(-1px);
}

.terms-portal__filter-btn.active {
  background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
  color: #111111;
  border-color: transparent;
  box-shadow: 0 0 16px rgba(97, 140, 209, 0.25);
}

.terms-portal__search-box {
  background-color: var(--surface, #131B29);
  border: 1px solid var(--border, #2D333C);
  border-radius: 9999px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.terms-portal__search-box:focus-within {
  border-color: var(--primary, #618CD1);
  box-shadow: 0 0 0 3px rgba(97, 140, 209, 0.2);
}

.terms-portal__search-input {
  background: transparent;
  border: none;
  color: var(--text, #EEF0F2);
  outline: none;
  width: 100%;
  font-size: 0.95rem;
}

.terms-portal__search-input::placeholder {
  color: var(--text-muted, #B0B6BF);
  opacity: 0.8;
}

.terms-portal__clear-btn {
  background: transparent;
  border: none;
  color: var(--text-muted, #B0B6BF);
  cursor: pointer;
  padding: 0 4px;
  font-size: 1rem;
  line-height: 1;
}

.terms-portal__clear-btn:hover {
  color: var(--text, #EEF0F2);
}

.terms-portal__card {
  background: var(--surface, #131B29);
  border: 1px solid var(--border, #2D333C);
  border-radius: 16px;
  padding: 28px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.terms-portal__card:hover {
  border-color: rgba(97, 140, 209, 0.4);
  box-shadow: 0 0 24px rgba(97, 140, 209, 0.12);
  transform: translateY(-2px);
}

.terms-portal__icon-wrap {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: rgba(97, 140, 209, 0.12);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.terms-portal__icon {
  font-size: 1.25rem;
  color: var(--primary, #618CD1);
}

.terms-portal__badge {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: var(--accent-text, #E9D994);
  background: rgba(233, 217, 148, 0.1);
  border: 1px solid rgba(233, 217, 148, 0.25);
  border-radius: 9999px;
  padding: 4px 10px;
}

.terms-portal__card-title {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.35;
  margin-bottom: 1rem;
  color: var(--text, #EEF0F2);
}

.terms-portal__card-body p {
  font-size: 0.95rem;
  line-height: 1.55;
  color: var(--text-muted, #B0B6BF);
  margin-bottom: 0.75rem;
}

.terms-portal__card-body p:last-child {
  margin-bottom: 0;
}

.terms-portal__inline-link {
  color: var(--primary-text, #618CD1);
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color 0.15s ease;
}

.terms-portal__inline-link:hover {
  color: var(--primary-hover, #81A3DA);
}

.terms-portal__card-footer {
  border-color: var(--border, #2D333C) !important;
}

.terms-portal__tag {
  font-size: 0.8rem;
  color: var(--text-muted, #B0B6BF);
}

.terms-portal__callout {
  background: var(--surface-alt, #0F1621);
  border: 1px solid var(--border, #2D333C);
}

.terms-portal__action-btn {
  font-size: 0.9rem;
  padding: 10px 22px;
  text-decoration: none;
}

@media (max-width: 767px) {
  .terms-portal__headline {
    font-size: 1.65rem;
  }
  .terms-portal__card {
    padding: 20px;
  }
  .terms-portal__card-title {
    font-size: 1.1rem;
  }
  .terms-portal__filter-btn {
    font-size: 0.8rem;
    padding: 6px 14px;
  }
}

/* ===== PAGE: disclaimer ===== */
.disclaimer-page { background: var(--bg); color: var(--text); position: relative; overflow: hidden; } .disclaimer-page__line { display: inline-block; width: 36px; height: 1px; background-color: var(--border); } .disclaimer-page__lead { max-width: 740px; font-size: 1rem; line-height: 1.6; } .disclaimer-page__gradient { background: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; } .disclaimer-page__main-card { background: var(--surface); border: 1px solid var(--border); border-radius: 16px; box-shadow: 0 8px 30px rgba(0, 0, 0, 0.35); } .disclaimer-page__side-card { background: var(--surface); border: 1px solid var(--border); border-radius: 16px; transition: transform 0.2s ease, border-color 0.2s ease; } .disclaimer-page__side-card:hover { transform: translateY(-2px); border-color: rgba(97, 140, 209, 0.4); } .disclaimer-page__side-card--accent { border-color: rgba(233, 217, 148, 0.3); background: linear-gradient(180deg, var(--surface) 0%, rgba(19, 27, 41, 0.85) 100%); } .disclaimer-page__icon-box { width: 52px; height: 52px; min-width: 52px; border-radius: 12px; background: rgba(97, 140, 209, 0.12); display: flex; align-items: center; justify-content: center; border: 1px solid rgba(97, 140, 209, 0.25); } .disclaimer-page__badge { display: inline-block; font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.08em; color: var(--accent); font-weight: 600; } .disclaimer-page__divider { border-color: var(--border); opacity: 0.6; } .disclaimer-page__list strong { color: var(--text); } .disclaimer-page__quick-link { background: var(--surface-alt); text-decoration: none; border: 1px solid var(--border); transition: background 0.15s ease, border-color 0.15s ease; } .disclaimer-page__quick-link:hover { background: rgba(97, 140, 209, 0.15); border-color: var(--primary); } @media (max-width: 767px) { .disclaimer-page { padding-top: 2rem !important; padding-bottom: 2rem !important; } .disclaimer-page__main-card { padding: 1.5rem !important; } .disclaimer-page__line { width: 20px; } }

.nba-comment-item {
    background-color: #131B29;
    border: 1px solid #2D333C;
    color: #EEF0F2;
}

.nba-comment-avatar {
    width: 44px;
    height: 44px;
    background: linear-gradient(135deg, #618CD1 0%, #12233F 100%);
    color: #FFFFFF;
    font-weight: 700;
    font-size: 0.95rem;
    border: 1.5px solid rgba(97, 140, 209, 0.4);
    box-shadow: 0 0 16px rgba(97, 140, 209, 0.2);
}

.nba-comment-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}

.nba-comment-author {
    color: #EEF0F2;
    font-size: 1rem;
    letter-spacing: -0.01em;
}

.nba-comment-badge {
    background-color: #0F1621;
    border: 1px solid #2D333C;
    color: #B0B6BF;
    font-size: 0.72rem;
    font-weight: 600;
    padding: 0.35rem 0.65rem;
}

.nba-comment-badge .text-accent {
    color: #E9D994 !important;
}

.nba-comment-date {
    color: #B0B6BF;
}

.nba-comment-text {
    color: #B0B6BF;
    font-size: 0.95rem;
    line-height: 1.6;
}

.nba-comment-btn {
    background: transparent;
    border: 1px solid #2D333C;
    color: #B0B6BF;
    border-radius: 9999px;
    padding: 6px 14px;
    font-size: 0.825rem;
    font-weight: 600;
    transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease;
}

.nba-comment-btn:hover,
.nba-comment-btn:focus {
    background-color: rgba(97, 140, 209, 0.12);
    border-color: #618CD1;
    color: #EEF0F2;
    outline: none;
}

.nba-comment-btn:active {
    background-color: rgba(97, 140, 209, 0.2);
}

.nba-comment-reply {
    background-color: #0F1621;
    border: 1px solid #2D333C;
    border-left: 3px solid #618CD1;
    color: #EEF0F2;
    position: relative;
}

.nba-comment-avatar-sm {
    width: 38px;
    height: 38px;
    background: linear-gradient(135deg, #12233F 0%, #2D333C 100%);
    color: #E9D994;
    font-weight: 700;
    font-size: 0.85rem;
    border: 1px solid rgba(233, 217, 148, 0.4);
    box-shadow: 0 0 12px rgba(233, 217, 148, 0.15);
}

.nba-comment-avatar-sm img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}

.nba-comment-reply .nba-comment-author {
    color: #EEF0F2;
    font-size: 0.95rem;
    letter-spacing: -0.01em;
}

.nba-comment-reply .nba-comment-badge {
    background-color: #131B29;
    border: 1px solid #2D333C;
    color: #B0B6BF;
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.3rem 0.6rem;
}

.nba-comment-reply .nba-comment-badge .text-accent {
    color: #E9D994 !important;
}

.nba-comment-reply .nba-comment-date {
    color: #B0B6BF;
    font-size: 0.8rem;
}

.nba-comment-reply .nba-comment-text {
    color: #B0B6BF;
    font-size: 0.9rem;
    line-height: 1.55;
}

.nba-comment-reply .nba-comment-btn {
    background: transparent;
    border: 1px solid #2D333C;
    color: #B0B6BF;
    border-radius: 9999px;
    padding: 4px 12px;
    font-size: 0.775rem;
    font-weight: 600;
    transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease;
}

.nba-comment-reply .nba-comment-btn:hover,
.nba-comment-reply .nba-comment-btn:focus {
    background-color: rgba(97, 140, 209, 0.12);
    border-color: #618CD1;
    color: #EEF0F2;
    outline: none;
}

.nba-comment-reply .nba-comment-btn:active {
    background-color: rgba(97, 140, 209, 0.2);
}


/* ===== PAGE TEMPLATE: teams-list ===== */
.nba-detail-content {
    background-color: #0B0F17;
    color: #B0B6BF;
}

.nba-detail-content h2.nba-section-heading {
    border-left: 4px solid #E9D994;
    padding-left: 14px;
    font-weight: 700;
    color: #FFFFFF;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.nba-fact-card {
    background: #131B29;
    border: 1px solid #2D333C;
    transition: transform 0.2s ease, border-color 0.2s ease;
}

.nba-fact-card:hover {
    border-color: #618CD1;
    transform: translateY(-2px);
}

.nba-fact-card__icon {
    width: 48px;
    height: 48px;
    min-width: 48px;
    background: rgba(97, 140, 209, 0.12);
    border: 1px solid rgba(97, 140, 209, 0.25);
}

.nba-fact-card__value {
    font-size: 1.25rem;
    line-height: 1.2;
}

.nba-media-frame {
    max-height: 480px;
    border: 1px solid #2D333C;
    background: #131B29;
}

.nba-media-img {
    height: 100%;
    max-height: 480px;
    object-fit: cover;
    display: block;
}

.nba-info-box {
    background: #131B29;
    border: 1px solid #2D333C;
}

.nba-toc-list {
    list-style-type: decimal;
}

.nba-toc-link {
    color: #618CD1;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.2s ease;
}

.nba-toc-link:hover {
    color: #81A3DA;
    text-decoration: underline;
}

.nba-takeaways-box {
    background: #0F1621;
    border: 1px solid rgba(233, 217, 148, 0.3);
    box-shadow: 0 0 20px rgba(233, 217, 148, 0.05);
}

.nba-feature-card {
    background: #131B29;
    border: 1px solid #2D333C;
    transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.nba-feature-card:hover {
    border-color: #618CD1;
    box-shadow: 0 0 20px rgba(97, 140, 209, 0.15);
    transform: translateY(-3px);
}

.nba-feature-card__icon {
    width: 52px;
    height: 52px;
    background: rgba(97, 140, 209, 0.12);
    border: 1px solid rgba(97, 140, 209, 0.25);
}

.nba-article-body p {
    line-height: 1.7;
    font-size: 1.05rem;
    overflow-wrap: anywhere;
}

.nba-article-body .lead-text {
    font-size: 1.2rem;
    color: #EEF0F2;
}

.nba-cta-box {
    background: linear-gradient(135deg, #131B29 0%, #16243A 100%);
    border: 1px solid rgba(97, 140, 209, 0.4);
    box-shadow: 0 0 30px rgba(97, 140, 209, 0.12);
}

.nba-cta-box__icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
}

.nba-related-card {
    background: #131B29;
    border: 1px solid #2D333C;
    transition: transform 0.2s ease, border-color 0.2s ease;
}

.nba-related-card:hover {
    border-color: #618CD1;
    transform: translateY(-2px);
}

.nba-related-card__media {
    height: 220px;
    overflow: hidden;
}

.nba-related-card__img {
    height: 100%;
    object-fit: cover;
}

.nba-comment-item {
    background: #131B29;
    border: 1px solid #2D333C;
    color: #EEF0F2;
}

.nba-comment-reply {
    background: #0F1621;
    border-left: 3px solid #618CD1;
}

.nba-comment-avatar {
    width: 44px;
    height: 44px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 700;
    font-size: 0.95rem;
}

.nba-comment-avatar-sm {
    width: 36px;
    height: 36px;
    font-size: 0.8rem;
}

.nba-comment-badge {
    background-color: #0B0F17;
    color: #EEF0F2;
    border: 1px solid #2D333C;
    font-size: 0.75rem;
}

.nba-comment-date {
    color: #8C94A0;
}

.nba-comment-text {
    line-height: 1.6;
    color: #B0B6BF;
    overflow-wrap: anywhere;
}

.nba-comment-btn {
    background: transparent;
    border: 1px solid #2D333C;
    color: #B0B6BF;
    border-radius: 9999px;
    padding: 0.35rem 0.85rem;
    font-size: 0.8rem;
    transition: all 0.2s ease;
}

.nba-comment-btn:hover,
.nba-comment-btn:focus {
    background: rgba(97, 140, 209, 0.15);
    border-color: #618CD1;
    color: #FFFFFF;
}

.nba-comment-btn.is-liked {
    background: rgba(97, 140, 209, 0.25);
    border-color: #618CD1;
    color: #618CD1;
}

.nba-comment-form-wrap {
    background: #131B29;
    border: 1px solid #2D333C;
}

.nba-input {
    background-color: #0B0F17 !important;
    border: 1px solid #2D333C !important;
    color: #EEF0F2 !important;
    border-radius: 10px !important;
}

.nba-input:focus {
    border-color: #618CD1 !important;
    box-shadow: 0 0 0 3px rgba(97, 140, 209, 0.25) !important;
    outline: none !important;
}

.nba-input::placeholder {
    color: #8C94A0 !important;
    opacity: 1;
}

@media (max-width: 767.98px) {
    .nba-hero__title {
        font-size: 1.125rem !important;
        hyphens: auto;
    }

    .nba-detail-content h2.nba-section-heading {
        font-size: 1rem !important;
        hyphens: auto;
    }

    .nba-detail-content h3,
    .nba-card-title,
    .nba-related-card__title {
        font-size: 0.875rem !important;
        hyphens: auto;
    }

    .nba-related-card__media {
        height: 180px;
    }
}

/* ===== PAGE TEMPLATE: players-list ===== */
.player-article-page {
    background-color: #0B0F17;
    color: #EEF0F2;
    padding: 60px 0 90px;
}

.player-editorial-column {
    max-width: 760px;
    width: 100%;
}

.player-article-frame {
    background: #131B29;
    border: 1px solid #2D333C;
    border-radius: 18px;
    padding: 12px;
    box-shadow: 0 0 24px rgba(97, 140, 209, 0.15);
}

.player-article-img {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 760px;
    aspect-ratio: auto;
    object-fit: contain;
    display: block;
    margin-inline: auto;
}

.player-editorial-lead {
    font-size: 1.35rem;
    line-height: 1.6;
    color: #EEF0F2;
    font-weight: 400;
    overflow-wrap: anywhere;
}

.player-editorial-lead::first-letter {
    float: left;
    font-size: 3.8rem;
    line-height: 0.85;
    font-weight: 800;
    margin-right: 12px;
    padding-top: 4px;
    color: #618CD1;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.player-divider {
    border: 0;
    height: 1px;
    background: linear-gradient(90deg, rgba(45, 51, 60, 0) 0%, rgba(97, 140, 209, 0.4) 50%, rgba(45, 51, 60, 0) 100%);
    opacity: 1;
}

.player-section-num {
    font-size: 0.95rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    color: #E9D994;
    margin-bottom: 0.25rem;
}

.player-heading-h2 {
    font-size: 1.85rem;
    font-weight: 700;
    line-height: 1.3;
    color: #FFFFFF;
    margin-bottom: 1.25rem;
    overflow-wrap: anywhere;
}

.player-heading-h3 {
    font-size: 1.35rem;
    font-weight: 700;
    line-height: 1.35;
    color: #EEF0F2;
    overflow-wrap: anywhere;
}

.player-body-text {
    font-size: 1.05rem;
    line-height: 1.7;
    color: #B0B6BF;
    overflow-wrap: anywhere;
}

.player-cta-inline {
    background: #0F1621;
    border: 1px solid #2D333C;
    border-left: 4px solid #618CD1;
}

.player-cta-eyebrow {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #618CD1;
}

.player-cta-title {
    font-size: 1.15rem;
    color: #EEF0F2;
}

.player-cta-desc {
    font-size: 0.875rem;
    color: #B0B6BF;
}

.player-pull-quote {
    background: #131B29;
    border: 1px solid #2D333C;
    border-radius: 16px;
    box-shadow: 0 0 25px rgba(97, 140, 209, 0.1);
}

.player-quote-icon {
    font-size: 2.2rem;
    color: #618CD1;
    line-height: 1;
    display: block;
}

.player-quote-text {
    font-size: 1.25rem;
    font-style: italic;
    color: #EEF0F2;
    line-height: 1.6;
    overflow-wrap: anywhere;
}

.player-key-facts {
    background: #0F1621;
    border: 1px solid #2D333C;
}

.player-facts-list {
    list-style: none;
}

.player-fact-num {
    font-size: 1.25rem;
    font-weight: 800;
    color: #618CD1;
    min-width: 32px;
}

.player-fact-label {
    color: #EEF0F2;
    font-size: 1rem;
    margin-bottom: 2px;
}

.player-fact-value {
    color: #B0B6BF;
    font-size: 0.95rem;
}

.player-takeaways-box {
    background: linear-gradient(135deg, rgba(97, 140, 209, 0.1) 0%, rgba(233, 217, 148, 0.08) 100%);
    border: 1px solid rgba(97, 140, 209, 0.35);
}

.player-takeaways-list li {
    color: #EEF0F2;
    font-size: 0.98rem;
    line-height: 1.6;
}

.player-newsletter-box {
    background: linear-gradient(118deg, #06070A 0%, #12233F 100%);
    border: 1px solid #2D333C;
    box-shadow: 0 0 30px rgba(97, 140, 209, 0.2);
}

.player-newsletter-glow {
    position: absolute;
    top: -50px;
    left: 50%;
    transform: translateX(-50%);
    width: 320px;
    height: 150px;
    background: radial-gradient(circle, rgba(97, 140, 209, 0.25) 0%, rgba(0, 0, 0, 0) 70%);
    pointer-events: none;
}

.player-newsletter-form {
    max-width: 460px;
    width: 100%;
}

.player-input-pill {
    background: #0B0F17;
    border: 1px solid #2D333C;
    border-radius: 9999px;
    padding: 4px 6px 4px 18px;
}

.player-newsletter-input {
    background: transparent !important;
    border: none !important;
    color: #EEF0F2 !important;
    box-shadow: none !important;
    padding: 8px 0;
    font-size: 0.95rem;
}

.player-newsletter-input::placeholder {
    color: #8C94A0;
}

.player-round-submit {
    width: 42px;
    height: 42px;
    padding: 0;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
}

.player-related-card {
    background: #131B29;
    border: 1px solid #2D333C;
    transition: transform 0.2s ease, border-color 0.2s ease;
}

.player-related-card:hover {
    transform: translateY(-3px);
    border-color: #618CD1;
}

.player-related-name {
    font-size: 1.05rem;
    font-weight: 700;
    color: #EEF0F2;
}

.player-related-link:hover {
    color: #81A3DA !important;
}

.nba-comment-item {
    background: #131B29;
    border: 1px solid #2D333C;
}

.nba-comment-reply {
    background: #0F1621;
    border-left: 3px solid #618CD1;
}

.nba-comment-avatar {
    width: 44px;
    height: 44px;
    min-width: 44px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 800;
    font-size: 0.95rem;
}

.nba-comment-avatar-sm {
    width: 36px;
    height: 36px;
    min-width: 36px;
    font-size: 0.85rem;
}

.nba-comment-author {
    color: #EEF0F2;
    font-size: 0.95rem;
}

.nba-comment-badge {
    background: #0B0F17;
    color: #EEF0F2;
    border: 1px solid #2D333C;
    font-size: 0.72rem;
    font-weight: 600;
}

.nba-comment-date {
    color: #8C94A0;
}

.nba-comment-text {
    color: #B0B6BF;
    line-height: 1.6;
    font-size: 0.95rem;
    overflow-wrap: anywhere;
}

.nba-comment-btn {
    background: #0B0F17;
    border: 1px solid #2D333C;
    color: #B0B6BF;
    font-size: 0.8rem;
    padding: 0.35rem 0.75rem;
    border-radius: 9999px;
    transition: all 0.2s ease;
}

.nba-comment-btn:hover,
.nba-comment-btn.active {
    color: #FFFFFF;
    border-color: #618CD1;
    background: rgba(97, 140, 209, 0.15);
}

.nba-comment-btn.active i {
    color: #E9D994;
}

.player-comment-form-wrap {
    background: #131B29;
    border: 1px solid #2D333C;
}

.player-form-control {
    background-color: #0B0F17;
    border: 1px solid #2D333C;
    color: #EEF0F2;
    border-radius: 10px;
    padding: 10px 14px;
    font-size: 0.95rem;
}

.player-form-control:focus {
    background-color: #0F1621;
    color: #FFFFFF;
    border-color: #618CD1;
    box-shadow: 0 0 0 3px rgba(97, 140, 209, 0.2);
}

.player-form-control::placeholder {
    color: #8C94A0;
}

@media (max-width: 767.98px) {
    .player-editorial-lead {
        font-size: 1.15rem;
    }

    .player-editorial-lead::first-letter {
        font-size: 3rem;
        margin-right: 8px;
    }

    .player-heading-h2 {
        font-size: 1.45rem;
    }

    .player-heading-h3 {
        font-size: 1.2rem;
    }

    .nba-comment-item {
        padding: 1rem !important;
    }

    .nba-comment-reply {
        margin-left: 0.75rem !important;
    }
}

/* ===== PAGE TEMPLATE: schedule-list ===== */
.nbp-header {
    background-color: #0B0F17;
    border-bottom: 1px solid #2D333C;
    z-index: 1030;
    width: 100%;
}

.nbp-header .navbar {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.nbp-header .nbp-logo-img {
    max-width: 46px;
    max-height: 46px;
    object-fit: contain;
}

.nbp-header .nbp-brand-text {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
}

.nbp-header .nbp-brand-title {
    font-weight: 800;
    font-size: 1.125rem;
    letter-spacing: 0.04em;
    color: #EEF0F2;
}

.nbp-header .nbp-brand-sub {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: #618CD1;
}

.nbp-header .nbp-toggler {
    border: 1px solid #2D333C;
    padding: 0.35rem 0.6rem;
    border-radius: 8px;
    background: #131B29;
}

.nbp-header .nbp-toggler:focus {
    box-shadow: 0 0 0 2px #618CD1;
    outline: none;
}

.nbp-header .nbp-nav-link {
    color: #B0B6BF;
    font-weight: 600;
    font-size: 0.95rem;
    padding: 0.5rem 1rem !important;
    transition: color 0.2s ease-in-out;
}

.nbp-header .nbp-nav-link:hover,
.nbp-header .nbp-nav-link:focus {
    color: #EEF0F2;
}

.nbp-header .nbp-dropdown {
    background-color: #131B29;
    border: 1px solid #2D333C;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45);
    padding: 0.5rem 0;
    margin-top: 0.5rem;
}

.nbp-header .nbp-dropdown-item {
    color: #B0B6BF;
    font-weight: 500;
    font-size: 0.9rem;
    padding: 0.55rem 1.25rem;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.nbp-header .nbp-dropdown-item:hover,
.nbp-header .nbp-dropdown-item:focus {
    background-color: #0F1621;
    color: #EEF0F2;
}

.nbp-header .nbp-cta-btn {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 700;
    font-size: 0.9rem;
    border-radius: 9999px;
    padding: 0.6rem 1.4rem;
    text-decoration: none;
    border: none;
    white-space: nowrap;
    transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

.nbp-header .nbp-cta-btn:hover,
.nbp-header .nbp-cta-btn:focus {
    filter: brightness(1.08);
    box-shadow: 0 4px 18px rgba(97, 140, 209, 0.35);
    transform: translateY(-1px);
    color: #111111;
}

@media (max-width: 991.98px) {
    .nbp-header .navbar-collapse {
        background-color: #131B29;
        border: 1px solid #2D333C;
        border-radius: 14px;
        padding: 1.25rem;
        margin-top: 0.75rem;
        box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5);
    }

    .nbp-header .navbar-nav {
        gap: 0.25rem;
        margin-bottom: 1rem !important;
    }

    .nbp-header .nbp-nav-link {
        padding: 0.6rem 0.75rem !important;
        border-radius: 8px;
    }

    .nbp-header .nbp-nav-link:hover {
        background-color: #0F1621;
    }

    .nbp-header .nbp-dropdown {
        background-color: #0F1621;
        border-color: #2D333C;
        margin-left: 0.5rem;
        margin-right: 0.5rem;
    }

    .nbp-header .nbp-cta-btn {
        width: 100%;
        justify-content: center;
    }
}

.nba-hero {
    background: var(--hero-bg, linear-gradient(118deg, #06070A 0%, #12233F 100%));
    position: relative;
    overflow: hidden;
    padding: 60px 0 70px;
}

.nba-hero::before {
    content: "";
    position: absolute;
    top: 10%;
    left: 50%;
    transform: translateX(-50%);
    width: 600px;
    height: 350px;
    background: radial-gradient(circle at center, rgba(97, 140, 209, 0.16) 0%, rgba(6, 7, 10, 0) 70%);
    pointer-events: none;
    z-index: 0;
}

.nba-hero .container {
    position: relative;
    z-index: 1;
}

.nba-hero__title {
    font-size: 2.75rem;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.015em;
    color: #FFFFFF;
    margin-bottom: 1rem;
    overflow-wrap: anywhere;
}

.nba-hero__lead {
    font-size: 1.15rem;
    line-height: 1.6;
    color: #B6BBC3;
    max-width: 760px;
    margin: 0 auto 1.5rem;
    overflow-wrap: anywhere;
}

.nbp-article-breadcrumb {
    font-size: 0.85rem;
}

.nbp-hero-meta {
    font-size: 0.9rem;
}

.nbp-detail-layout {
    background-color: #0B0F17;
    min-height: 80vh;
}

.nbp-sharp-img {
    border-radius: 0;
    border: 1px solid #2D333C;
    object-fit: cover;
    aspect-ratio: 16 / 9;
}

.nbp-article-heading {
    font-size: 1.75rem;
    font-weight: 700;
    color: #FFFFFF;
    border-left: 4px solid #E9D994;
    padding-left: 14px;
    line-height: 1.3;
    overflow-wrap: anywhere;
}

.nbp-article-p {
    color: #B0B6BF;
    line-height: 1.7;
    font-size: 1.05rem;
    overflow-wrap: anywhere;
}

.nbp-key-facts {
    background-color: #131B29;
    border: 1px solid #2D333C;
}

.nbp-facts-list {
    list-style-type: decimal;
}

.nbp-facts-list li {
    font-size: 0.95rem;
    line-height: 1.6;
}

.nbp-article-cta-box {
    background: linear-gradient(135deg, #131B29 0%, #0F1621 100%);
    border: 1px solid #2D333C;
}

.nbp-cta-icon-box {
    width: 52px;
    height: 52px;
    border-radius: 12px;
    background: rgba(97, 140, 209, 0.12);
    border: 1px solid rgba(97, 140, 209, 0.3);
}

.nbp-author-box {
    background-color: #131B29;
    border: 1px solid #2D333C;
}

.nbp-author-avatar {
    width: 54px;
    height: 54px;
    background-color: #0F1621;
    border: 1.5px solid #618CD1;
}

.nbp-accordion-item {
    background-color: #131B29;
    border: 1px solid #2D333C;
    border-radius: 12px !important;
    overflow: hidden;
}

.nbp-accordion-button {
    background-color: #131B29;
    color: #EEF0F2;
    font-weight: 600;
    font-size: 1.05rem;
    box-shadow: none !important;
    padding: 1.15rem 1.25rem;
}

.nbp-accordion-button:not(.collapsed) {
    background-color: #0F1621;
    color: #618CD1;
}

.nbp-accordion-button::after {
    filter: invert(1) brightness(1.5);
}

.nbp-accordion-body {
    background-color: #0F1621;
    line-height: 1.6;
    font-size: 0.95rem;
    border-top: 1px solid #2D333C;
}

.nbp-related-card {
    background-color: #131B29;
    border: 1px solid #2D333C;
    border-radius: 0;
    overflow: hidden;
    transition: transform 0.2s ease, border-color 0.2s ease;
}

.nbp-related-card:hover {
    transform: translateY(-4px);
    border-color: #618CD1;
}

.nbp-related-media {
    aspect-ratio: 16 / 9;
    overflow: hidden;
}

.nbp-related-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.nbp-related-link {
    font-weight: 600;
    font-size: 0.85rem;
}

.nbp-related-link:hover {
    color: #81A3DA;
}

.nbp-sticky-card {
    top: 90px;
}

.nbp-action-card {
    background: #131B29;
    border: 1px solid transparent;
    background: linear-gradient(#131B29, #131B29) padding-box, linear-gradient(135deg, #618CD1 0%, #E9D994 100%) border-box;
    box-shadow: 0 0 25px rgba(97, 140, 209, 0.15);
}

.nbp-badge-highlight {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 700;
    letter-spacing: 0.05em;
}

.nbp-specs-list strong {
    font-size: 0.95rem;
}

.nba-comment-item {
    background-color: #131B29;
    border: 1px solid #2D333C;
}

.nba-comment-reply {
    background-color: #0F1621;
    border-left: 3px solid #618CD1;
}

.nba-comment-avatar {
    width: 44px;
    height: 44px;
    background-color: #0B0F17;
    border: 1px solid #618CD1;
    color: #EEF0F2;
    font-weight: 700;
    font-size: 0.9rem;
}

.nba-comment-avatar-sm {
    width: 38px;
    height: 38px;
    font-size: 0.8rem;
}

.nba-comment-author {
    color: #EEF0F2;
    font-size: 0.95rem;
}

.nba-comment-badge {
    background-color: rgba(97, 140, 209, 0.15);
    border: 1px solid rgba(97, 140, 209, 0.3);
    color: #EEF0F2;
    font-size: 0.75rem;
}

.nba-comment-date {
    color: #B0B6BF;
}

.nba-comment-text {
    color: #B0B6BF;
    line-height: 1.6;
    font-size: 0.95rem;
    overflow-wrap: anywhere;
}

.nba-comment-btn {
    background-color: #0B0F17;
    border: 1px solid #2D333C;
    color: #B0B6BF;
    transition: all 0.2s ease;
}

.nba-comment-btn:hover,
.nba-comment-btn.is-active {
    color: #E9D994;
    border-color: #E9D994;
}

.nbp-comment-form-wrap {
    background-color: #131B29;
    border: 1px solid #2D333C;
}

.nbp-form-input {
    background-color: #0B0F17;
    border: 1px solid #2D333C;
    color: #EEF0F2;
    border-radius: 8px;
    padding: 0.65rem 0.9rem;
}

.nbp-form-input:focus {
    background-color: #0B0F17;
    border-color: #618CD1;
    color: #FFFFFF;
    box-shadow: 0 0 0 3px rgba(97, 140, 209, 0.25);
}

.nbp-form-input::placeholder {
    color: #8C94A0;
    opacity: 1;
}

.site-footer {
    position: relative;
    background-color: #06070A;
    color: #EEF0F2;
    padding-top: 70px;
    padding-bottom: 30px;
    overflow: hidden;
    border-top: 1px solid #2D333C;
    font-family: 'Source Sans 3', sans-serif;
}

.site-footer__accent-glow {
    position: absolute;
    top: 0;
    left: 50%;
    width: 800px;
    height: 240px;
    background: radial-gradient(circle at 50% 0%, rgba(97, 140, 209, 0.14) 0%, rgba(6, 7, 10, 0) 70%);
    transform: translateX(-50%);
    pointer-events: none;
}

.site-footer__main-grid {
    display: grid;
    grid-template-columns: 1.4fr 0.8fr 0.8fr 1.2fr;
    gap: 2rem;
    align-items: start;
    margin-bottom: 3rem;
}

.site-footer__col-brand {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.site-footer__brand-title {
    font-size: 1.4rem;
    font-weight: 800;
    letter-spacing: -0.01em;
    display: inline-block;
    color: #FFFFFF;
}

.site-footer__year-highlight {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 900;
}

.site-footer__brand-desc {
    color: #B6BBC3;
    font-size: 0.95rem;
    line-height: 1.6;
    margin-bottom: 0;
    max-width: 360px;
}

.site-footer__contact-card {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 1.25rem;
    background: #131B29;
    border: 1px solid #2D333C;
    border-radius: 14px;
}

.site-footer__contact-item {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
}

.site-footer__contact-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    border-radius: 10px;
    background: rgba(97, 140, 209, 0.12);
    border: 1px solid rgba(97, 140, 209, 0.3);
    color: #618CD1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
}

.site-footer__contact-detail {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.site-footer__contact-label {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #B6BBC3;
    font-weight: 600;
}

.site-footer__contact-value {
    font-size: 0.9rem;
    color: #EEF0F2;
    font-style: normal;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.site-footer__contact-link {
    font-size: 0.9rem;
    color: #618CD1;
    text-decoration: none;
    transition: color 0.2s ease;
    overflow-wrap: anywhere;
}

.site-footer__contact-link:hover {
    color: #81A3DA;
    text-decoration: underline;
}

.site-footer__section-heading {
    font-size: 1.05rem;
    font-weight: 700;
    color: #FFFFFF;
    margin-bottom: 1.25rem;
    letter-spacing: 0.01em;
    position: relative;
}

.site-footer__nav-list {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.site-footer__nav-link {
    color: #B6BBC3;
    text-decoration: none;
    font-size: 0.95rem;
    transition: color 0.2s ease;
    display: inline-block;
}

.site-footer__nav-link:hover {
    color: #FFFFFF;
    text-decoration: underline;
}

.site-footer__highlight-box {
    background: #131B29;
    border: 1px solid transparent;
    background: linear-gradient(#131B29, #131B29) padding-box, linear-gradient(135deg, #618CD1 0%, #E9D994 100%) border-box;
    border-radius: 16px;
    padding: 1.5rem;
    box-shadow: 0 0 24px rgba(97, 140, 209, 0.12);
}

.site-footer__badge {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.85rem;
    border-radius: 9999px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-bottom: 0.85rem;
}

.site-footer__highlight-title {
    font-size: 1.15rem;
    font-weight: 700;
    color: #FFFFFF;
    margin-bottom: 0.5rem;
}

.site-footer__highlight-text {
    font-size: 0.875rem;
    line-height: 1.5;
    color: #B6BBC3;
    margin-bottom: 1rem;
}

.site-footer__match-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.site-footer__meta-pill {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.3rem 0.65rem;
    border-radius: 9999px;
    background: #0B0F17;
    color: #EEF0F2;
    border: 1px solid #2D333C;
    display: inline-flex;
    align-items: center;
}

.site-footer__bottom-divider {
    height: 1px;
    width: 100%;
    background: linear-gradient(90deg, #06070A 0%, #618CD1 50%, #06070A 100%);
    margin-bottom: 1.5rem;
}

.site-footer__sub-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    font-size: 0.85rem;
    color: #B6BBC3;
}

.site-footer__copyright {
    color: #B6BBC3;
    line-height: 1.4;
}

.site-footer__legal-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
}

.site-footer__legal-link {
    color: #B6BBC3;
    text-decoration: none;
    transition: color 0.2s ease;
}

.site-footer__legal-link:hover {
    color: #FFFFFF;
    text-decoration: underline;
}

.site-footer__legal-dot {
    color: #2D333C;
}

@media (max-width: 991px) {
    .site-footer__main-grid {
        grid-template-columns: 1fr 1fr;
        gap: 2rem;
    }
}

@media (max-width: 767px) {
    .nba-hero {
        padding: 45px 0 55px;
    }

    .nba-hero__title {
        font-size: 18px;
        hyphens: auto;
    }

    .nbp-article-heading {
        font-size: 16px;
        hyphens: auto;
    }

    .nbp-sticky-card {
        position: static !important;
    }

    .site-footer {
        padding-top: 45px;
        padding-bottom: 25px;
    }

    .site-footer__main-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .site-footer__brand-desc {
        max-width: 100%;
    }

    .site-footer__sub-bar {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.85rem;
    }

    .site-footer__legal-links {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

    .site-footer__legal-dot {
        display: none;
    }
}

/* ===== PAGE TEMPLATE: history-list ===== */
.nba-history-article {
    background-color: #0B0F17;
    color: #EEF0F2;
    padding: 70px 0;
}

.nba-history-card {
    background: #131B29;
    border: 1px solid #2D333C;
    border-radius: 16px;
    box-shadow: 0 0 24px rgba(97, 140, 209, 0.1);
}

.nba-tag-gold {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 700;
}

.nba-hero-meta-badge {
    background: #131B29;
    border: 1px solid #2D333C;
    color: #B0B6BF;
    font-size: 0.8rem;
    padding: 6px 14px;
    border-radius: 9999px;
}

.nba-takeaways-list {
    list-style: none;
    padding-left: 0;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.nba-takeaways-item {
    display: flex;
    align-items: flex-start;
    color: #B0B6BF;
    font-size: 1rem;
    line-height: 1.5;
}

.nba-featured-media {
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid #2D333C;
    background: #131B29;
}

.nba-article-img {
    width: 100%;
    height: auto;
    max-height: 480px;
    object-fit: cover;
    display: block;
}

.nba-media-caption small {
    font-size: 0.85rem;
    color: #B0B6BF;
}

.nba-article-body h2 {
    font-weight: 700;
    color: #FFFFFF;
    font-size: 1.85rem;
    line-height: 1.25;
}

.nba-article-body p {
    font-size: 1.05rem;
    line-height: 1.7;
    overflow-wrap: anywhere;
}

.nba-quote {
    background: #0F1621;
    border-left: 4px solid #618CD1;
    border: 1px solid #2D333C;
    border-left-width: 4px;
}

.nba-faq-box {
    background: #131B29;
    border: 1px solid #2D333C;
}

.nba-accordion-item {
    background-color: #0F1621;
    border: 1px solid #2D333C;
    border-radius: 12px;
    overflow: hidden;
}

.nba-accordion-btn {
    background-color: #0F1621;
    color: #EEF0F2;
    font-weight: 600;
    padding: 1rem 1.25rem;
    box-shadow: none;
}

.nba-accordion-btn:not(.collapsed) {
    background-color: #131B29;
    color: #618CD1;
    box-shadow: none;
}

.nba-accordion-btn::after {
    filter: invert(1);
}

.nba-cta-split {
    background: linear-gradient(135deg, rgba(97, 140, 209, 0.12) 0%, rgba(233, 217, 148, 0.08) 100%), #131B29;
    border: 1px solid #2D333C;
}

.nba-comments-section {
    border-color: #2D333C !important;
}

.nba-comment-badge {
    background: rgba(97, 140, 209, 0.15);
    border: 1px solid rgba(97, 140, 209, 0.3);
    color: #618CD1;
    font-weight: 600;
    padding: 0.4rem 0.8rem;
    font-size: 0.75rem;
}

.nba-comment-item {
    background: #131B29;
    border: 1px solid #2D333C;
}

.nba-comment-avatar {
    width: 44px;
    height: 44px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 800;
    font-size: 1rem;
}

.nba-comment-avatar-sm {
    width: 36px;
    height: 36px;
    font-size: 0.85rem;
}

.nba-comment-author {
    color: #EEF0F2;
    font-size: 0.95rem;
}

.nba-comment-date {
    color: #8C94A0;
}

.nba-comment-text {
    color: #B0B6BF;
    font-size: 0.95rem;
    line-height: 1.6;
}

.nba-comment-btn {
    background: #0F1621;
    border: 1px solid #2D333C;
    color: #B0B6BF;
    border-radius: 9999px;
    padding: 0.3rem 0.85rem;
    font-size: 0.8rem;
    transition: all 0.2s ease;
}

.nba-comment-btn:hover {
    background: #618CD1;
    color: #111111;
    border-color: #618CD1;
}

.nba-comment-btn.is-active {
    background: #618CD1;
    color: #111111;
    border-color: #618CD1;
}

.nba-comment-form-wrap {
    background: #131B29;
    border: 1px solid #2D333C;
}

.nba-input,
.nba-textarea {
    background: #0B0F17;
    border: 1px solid #2D333C;
    border-radius: 10px;
    color: #EEF0F2;
    padding: 0.75rem 1rem;
}

.nba-input:focus,
.nba-textarea:focus {
    background: #06070A;
    border-color: #618CD1;
    color: #FFFFFF;
    box-shadow: 0 0 0 3px rgba(97, 140, 209, 0.25);
    outline: none;
}

.nba-input::placeholder,
.nba-textarea::placeholder {
    color: #8C94A0;
    opacity: 1;
}

@media (max-width: 767px) {
    .nba-history-article {
        padding: 45px 0;
    }

    .nba-comment-reply {
        margin-left: 1rem !important;
    }

    .nba-article-body h2 {
        font-size: 1.45rem;
    }
}

/* ===== PAGE TEMPLATE: venue-list ===== */
.nbp-header {
    background-color: #0B0F17;
    border-bottom: 1px solid #2D333C;
    z-index: 1030;
    width: 100%;
}

.nbp-header .navbar {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.nbp-header .nbp-logo-img {
    max-width: 46px;
    max-height: 46px;
    object-fit: contain;
}

.nbp-header .nbp-brand-text {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
}

.nbp-header .nbp-brand-title {
    font-weight: 800;
    font-size: 1.125rem;
    letter-spacing: 0.04em;
    color: #EEF0F2;
}

.nbp-header .nbp-brand-sub {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: #618CD1;
}

.nbp-header .nbp-toggler {
    border: 1px solid #2D333C;
    padding: 0.35rem 0.6rem;
    border-radius: 8px;
    background: #131B29;
}

.nbp-header .nbp-toggler:focus {
    box-shadow: 0 0 0 2px #618CD1;
    outline: none;
}

.nbp-header .nbp-nav-link {
    color: #B0B6BF;
    font-weight: 600;
    font-size: 0.95rem;
    padding: 0.5rem 1rem !important;
    transition: color 0.2s ease-in-out;
}

.nbp-header .nbp-nav-link:hover,
.nbp-header .nbp-nav-link:focus {
    color: #EEF0F2;
}

.nbp-header .nbp-dropdown {
    background-color: #131B29;
    border: 1px solid #2D333C;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45);
    padding: 0.5rem 0;
    margin-top: 0.5rem;
}

.nbp-header .nbp-dropdown-item {
    color: #B0B6BF;
    font-weight: 500;
    font-size: 0.9rem;
    padding: 0.55rem 1.25rem;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.nbp-header .nbp-dropdown-item:hover,
.nbp-header .nbp-dropdown-item:focus {
    background-color: #0F1621;
    color: #EEF0F2;
}

.nbp-header .nbp-cta-btn {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 700;
    font-size: 0.9rem;
    border-radius: 9999px;
    padding: 0.6rem 1.4rem;
    text-decoration: none;
    border: none;
    white-space: nowrap;
    transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

.nbp-header .nbp-cta-btn:hover,
.nbp-header .nbp-cta-btn:focus {
    filter: brightness(1.08);
    box-shadow: 0 4px 18px rgba(97, 140, 209, 0.35);
    transform: translateY(-1px);
    color: #111111;
}

@media (max-width: 991.98px) {
    .nbp-header .navbar-collapse {
        background-color: #131B29;
        border: 1px solid #2D333C;
        border-radius: 14px;
        padding: 1.25rem;
        margin-top: 0.75rem;
        box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5);
    }

    .nbp-header .navbar-nav {
        gap: 0.25rem;
        margin-bottom: 1rem !important;
    }

    .nbp-header .nbp-nav-link {
        padding: 0.6rem 0.75rem !important;
        border-radius: 8px;
    }

    .nbp-header .nbp-nav-link:hover {
        background-color: #0F1621;
    }

    .nbp-header .nbp-dropdown {
        background-color: #0F1621;
        border-color: #2D333C;
        margin-left: 0.5rem;
        margin-right: 0.5rem;
    }

    .nbp-header .nbp-cta-btn {
        width: 100%;
        justify-content: center;
    }
}

.nba-hero {
    background: var(--hero-bg, linear-gradient(118deg, #06070A 0%, #12233F 100%));
    position: relative;
    overflow: hidden;
    padding: 60px 0 70px;
}

.nba-hero::before {
    content: "";
    position: absolute;
    top: 10%;
    left: 50%;
    transform: translateX(-50%);
    width: 600px;
    height: 350px;
    background: radial-gradient(circle at center, rgba(97, 140, 209, 0.18) 0%, rgba(6, 7, 10, 0) 70%);
    pointer-events: none;
    z-index: 0;
}

.nba-hero .container {
    position: relative;
    z-index: 1;
}

.nbp-breadcrumb {
    font-size: 0.85rem;
}

.nbp-breadcrumb-link {
    color: #618CD1;
    text-decoration: none;
}

.nbp-breadcrumb-link:hover {
    color: #81A3DA;
    text-decoration: underline;
}

.nbp-breadcrumb .breadcrumb-item+.breadcrumb-item::before {
    color: #2D333C;
}

.nba-hero__title {
    font-size: 2.75rem;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.02em;
    color: #FFFFFF;
    margin-bottom: 1.2rem;
    overflow-wrap: anywhere;
}

.nba-hero__lead {
    font-size: 1.15rem;
    line-height: 1.6;
    color: #B6BBC3;
    max-width: 760px;
    margin: 0 auto 1.5rem;
    overflow-wrap: anywhere;
}

.nbp-meta-item {
    font-size: 0.9rem;
    color: #EEF0F2;
}

.nbp-gradient-text {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.nbp-eyebrow-wrapper {
    display: flex;
    align-items: center;
    gap: 12px;
}

.nbp-eyebrow-wrapper::before,
.nbp-eyebrow-wrapper::after {
    content: "";
    display: block;
    height: 1px;
    width: 32px;
    background-color: #2D333C;
}

.rrr-eyebrow {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.15em;
    color: #618CD1;
}

.nbp-detail-page {
    background-color: #0B0F17;
}

.nbp-article__main-img {
    height: 420px;
    object-fit: cover;
}

.nbp-key-facts {
    background: #131B29;
    border-color: #2D333C !important;
}

.nbp-chip {
    background: #0F1621;
    border: 1px solid #2D333C;
    color: #EEF0F2;
    font-size: 0.85rem;
    font-weight: 600;
    padding: 6px 14px;
    border-radius: 9999px;
    display: inline-flex;
    align-items: center;
}

.nbp-toc {
    background: #0F1621;
    border: 1px solid #2D333C;
}

.nbp-toc__list {
    list-style: none;
}

.nbp-toc__link {
    color: #B0B6BF;
    text-decoration: none;
    font-size: 0.95rem;
    transition: color 0.2s ease;
}

.nbp-toc__link:hover {
    color: #618CD1;
    text-decoration: underline;
}

.nbp-article__lead {
    line-height: 1.7;
    border-left: 3px solid #618CD1;
    padding-left: 1rem;
}

.nbp-highlight-box {
    background: #131B29;
    border-left: 3px solid #E9D994;
}

.nbp-checklist {
    list-style: none;
}

.nbp-author-box {
    background: #131B29;
    border: 1px solid #2D333C;
}

.nbp-author-avatar {
    width: 68px;
    height: 68px;
    background: #0F1621;
    border: 1.5px solid #618CD1;
}

.nbp-chip-badge {
    background: rgba(97, 140, 209, 0.15);
    color: #618CD1;
    font-size: 0.75rem;
    font-weight: 600;
}

.nbp-accordion .nbp-accordion-item {
    background: #131B29;
    border: 1px solid #2D333C;
    border-radius: 12px;
    margin-bottom: 0.75rem;
    overflow: hidden;
}

.nbp-accordion .nbp-accordion-button {
    background: #131B29;
    color: #EEF0F2;
    font-weight: 600;
    font-size: 1rem;
    box-shadow: none;
    padding: 1.1rem 1.25rem;
}

.nbp-accordion .nbp-accordion-button:not(.collapsed) {
    background: #0F1621;
    color: #618CD1;
}

.nbp-accordion .nbp-accordion-button::after {
    filter: invert(1);
}

.nbp-accordion .nbp-accordion-body {
    background: #0F1621;
    line-height: 1.6;
    border-top: 1px solid #2D333C;
}

.nba-comment-item {
    background: #131B29;
    border: 1px solid #2D333C;
}

.nba-comment-reply {
    border-left: 3px solid #618CD1;
    background: #0F1621;
}

.nba-comment-avatar {
    width: 44px;
    height: 44px;
    background: rgba(97, 140, 209, 0.2);
    color: #618CD1;
    font-weight: 700;
    font-size: 0.9rem;
}

.nba-comment-avatar-sm {
    width: 36px;
    height: 36px;
    font-size: 0.8rem;
}

.nba-comment-author {
    color: #FFFFFF;
}

.nba-comment-badge {
    background: rgba(233, 217, 148, 0.15);
    color: #E9D994;
    font-size: 0.75rem;
}

.nba-comment-date {
    color: #8C94A0;
}

.nba-comment-text {
    color: #B0B6BF;
    font-size: 0.95rem;
    line-height: 1.6;
}

.nba-comment-btn {
    background: transparent;
    border: 1px solid #2D333C;
    color: #B0B6BF;
    border-radius: 9999px;
    padding: 0.25rem 0.8rem;
    font-size: 0.8rem;
    transition: all 0.2s ease;
}

.nba-comment-btn:hover,
.nba-comment-btn.is-active {
    border-color: #618CD1;
    color: #FFFFFF;
    background: rgba(97, 140, 209, 0.15);
}

.nba-comment-btn.is-active i {
    color: #E9D994;
}

.nbp-comment-form-card {
    background: #131B29;
    border: 1px solid #2D333C;
}

.nbp-form-control {
    background: #0B0F17 !important;
    border: 1px solid #2D333C !important;
    color: #EEF0F2 !important;
    border-radius: 8px !important;
}

.nbp-form-control:focus {
    border-color: #618CD1 !important;
    box-shadow: 0 0 0 2px rgba(97, 140, 209, 0.25) !important;
}

.nbp-form-control::placeholder {
    color: #6C757D !important;
    opacity: 1;
}

.nbp-btn-submit {
    border-radius: 9999px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 700;
    padding: 10px 24px;
    border: none;
    transition: all 0.2s ease;
}

.nbp-btn-submit:hover {
    filter: brightness(1.1);
    color: #000000;
}

.nbp-sidebar {
    top: 90px;
}

.nbp-widget {
    background: #131B29;
    border: 1px solid #2D333C;
}

.nbp-widget--cta {
    background: linear-gradient(#131B29, #131B29) padding-box, linear-gradient(135deg, #618CD1 0%, #E9D994 100%) border-box;
    border: 1px solid transparent;
}

.nbp-widget-post {
    padding: 8px 0;
}

.nbp-widget-post__icon {
    width: 40px;
    height: 40px;
    background: #0F1621;
    border: 1px solid #2D333C;
    font-size: 1.1rem;
}

.text-hover-primary {
    transition: color 0.2s ease;
}

.nbp-widget-post:hover .text-hover-primary {
    color: #618CD1 !important;
}

.smaller {
    font-size: 0.8rem;
}

.nbp-cta-icon-circle {
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    box-shadow: 0 0 20px rgba(97, 140, 209, 0.3);
}

.nbp-related {
    background: linear-gradient(172deg, #0F1621 0%, #111925 100%);
    border-top: 1px solid #2D333C;
    border-bottom: 1px solid #2D333C;
}

.nbp-related-card {
    background: #131B29;
    border: 1px solid #2D333C;
    transition: transform 0.2s ease, border-color 0.2s ease;
}

.nbp-related-card:hover {
    transform: translateY(-3px);
    border-color: #618CD1;
}

.nbp-badge-category {
    background: rgba(97, 140, 209, 0.12);
    color: #618CD1;
    font-size: 0.75rem;
}

.nbp-card-link {
    font-weight: 600;
    text-decoration: none;
}

.nbp-card-link:hover {
    text-decoration: underline;
}

.nbp-newsletter-strip {
    background: linear-gradient(118deg, #06070A 0%, #12233F 100%);
}

.nbp-nl-form {
    max-width: 540px;
}

.nbp-nl-input {
    background: #0B0F17 !important;
    border: 1px solid #2D333C !important;
    color: #EEF0F2 !important;
    border-radius: 9999px !important;
    padding: 12px 20px !important;
}

.nbp-nl-input:focus {
    border-color: #618CD1 !important;
    box-shadow: 0 0 0 2px rgba(97, 140, 209, 0.25) !important;
}

.nbp-nl-input::placeholder {
    color: #6C757D !important;
}

.nbp-btn-nl-submit {
    border-radius: 9999px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 700;
    padding: 12px 24px;
    border: none;
    white-space: nowrap;
}

.nbp-btn-nl-submit:hover {
    filter: brightness(1.1);
    color: #000000;
}

.site-footer {
    position: relative;
    background-color: #06070A;
    color: #EEF0F2;
    padding-top: 70px;
    padding-bottom: 30px;
    overflow: hidden;
    border-top: 1px solid #2D333C;
    font-family: 'Source Sans 3', sans-serif;
}

.site-footer__accent-glow {
    position: absolute;
    top: 0;
    left: 50%;
    width: 800px;
    height: 240px;
    background: radial-gradient(circle at 50% 0%, rgba(97, 140, 209, 0.14) 0%, rgba(6, 7, 10, 0) 70%);
    transform: translateX(-50%);
    pointer-events: none;
}

.site-footer__main-grid {
    display: grid;
    grid-template-columns: 1.4fr 0.8fr 0.8fr 1.2fr;
    gap: 2rem;
    align-items: start;
    margin-bottom: 3rem;
}

.site-footer__col-brand {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.site-footer__brand-title {
    font-size: 1.4rem;
    font-weight: 800;
    letter-spacing: -0.01em;
    display: inline-block;
    color: #FFFFFF;
}

.site-footer__year-highlight {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 900;
}

.site-footer__brand-desc {
    color: #B6BBC3;
    font-size: 0.95rem;
    line-height: 1.6;
    margin-bottom: 0;
    max-width: 360px;
}

.site-footer__contact-card {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 1.25rem;
    background: #131B29;
    border: 1px solid #2D333C;
    border-radius: 14px;
}

.site-footer__contact-item {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
}

.site-footer__contact-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    border-radius: 10px;
    background: rgba(97, 140, 209, 0.12);
    border: 1px solid rgba(97, 140, 209, 0.3);
    color: #618CD1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
}

.site-footer__contact-detail {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.site-footer__contact-label {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #B6BBC3;
    font-weight: 600;
}

.site-footer__contact-value {
    font-size: 0.9rem;
    color: #EEF0F2;
    font-style: normal;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.site-footer__contact-link {
    font-size: 0.9rem;
    color: #618CD1;
    text-decoration: none;
    transition: color 0.2s ease;
    overflow-wrap: anywhere;
}

.site-footer__contact-link:hover {
    color: #81A3DA;
    text-decoration: underline;
}

.site-footer__section-heading {
    font-size: 1.05rem;
    font-weight: 700;
    color: #FFFFFF;
    margin-bottom: 1.25rem;
    letter-spacing: 0.01em;
    position: relative;
}

.site-footer__nav-list {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.site-footer__nav-link {
    color: #B6BBC3;
    text-decoration: none;
    font-size: 0.95rem;
    transition: color 0.2s ease;
    display: inline-block;
}

.site-footer__nav-link:hover {
    color: #FFFFFF;
    text-decoration: underline;
}

.site-footer__highlight-box {
    background: #131B29;
    border: 1px solid transparent;
    background: linear-gradient(#131B29, #131B29) padding-box, linear-gradient(135deg, #618CD1 0%, #E9D994 100%) border-box;
    border-radius: 16px;
    padding: 1.5rem;
    box-shadow: 0 0 24px rgba(97, 140, 209, 0.12);
}

.site-footer__badge {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.85rem;
    border-radius: 9999px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-bottom: 0.85rem;
}

.site-footer__highlight-title {
    font-size: 1.15rem;
    font-weight: 700;
    color: #FFFFFF;
    margin-bottom: 0.5rem;
}

.site-footer__highlight-text {
    font-size: 0.875rem;
    line-height: 1.5;
    color: #B6BBC3;
    margin-bottom: 1rem;
}

.site-footer__match-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.site-footer__meta-pill {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.3rem 0.65rem;
    border-radius: 9999px;
    background: #0B0F17;
    color: #EEF0F2;
    border: 1px solid #2D333C;
    display: inline-flex;
    align-items: center;
}

.site-footer__bottom-divider {
    height: 1px;
    width: 100%;
    background: linear-gradient(90deg, #06070A 0%, #618CD1 50%, #06070A 100%);
    margin-bottom: 1.5rem;
}

.site-footer__sub-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    font-size: 0.85rem;
    color: #B6BBC3;
}

.site-footer__copyright {
    color: #B6BBC3;
    line-height: 1.4;
}

.site-footer__legal-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
}

.site-footer__legal-link {
    color: #B6BBC3;
    text-decoration: none;
    transition: color 0.2s ease;
}

.site-footer__legal-link:hover {
    color: #FFFFFF;
    text-decoration: underline;
}

.site-footer__legal-dot {
    color: #2D333C;
}

@media (max-width: 991px) {
    .site-footer__main-grid {
        grid-template-columns: 1fr 1fr;
        gap: 2rem;
    }
}

@media (max-width: 767px) {
    .nba-hero {
        padding: 40px 0 50px;
    }

    .nba-hero__title {
        font-size: 1.85rem;
        hyphens: auto;
    }

    .nba-hero__lead {
        font-size: 1rem;
    }

    .nbp-article__main-img {
        height: 240px;
    }

    .site-footer {
        padding-top: 45px;
        padding-bottom: 25px;
    }

    .site-footer__main-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .site-footer__brand-desc {
        max-width: 100%;
    }

    .site-footer__sub-bar {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.85rem;
    }

    .site-footer__legal-links {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

    .site-footer__legal-dot {
        display: none;
    }
}

/* ===== PAGE TEMPLATE: fan-guide-list ===== */
.nbp-header {
    background-color: #0B0F17;
    border-bottom: 1px solid #2D333C;
    z-index: 1030;
    width: 100%;
}

.nbp-header .navbar {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.nbp-header .nbp-logo-img {
    max-width: 46px;
    max-height: 46px;
    object-fit: contain;
}

.nbp-header .nbp-brand-text {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
}

.nbp-header .nbp-brand-title {
    font-weight: 800;
    font-size: 1.125rem;
    letter-spacing: 0.04em;
    color: #EEF0F2;
}

.nbp-header .nbp-brand-sub {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: #618CD1;
}

.nbp-header .nbp-toggler {
    border: 1px solid #2D333C;
    padding: 0.35rem 0.6rem;
    border-radius: 8px;
    background: #131B29;
}

.nbp-header .nbp-toggler:focus {
    box-shadow: 0 0 0 2px #618CD1;
    outline: none;
}

.nbp-header .nbp-nav-link {
    color: #B0B6BF;
    font-weight: 600;
    font-size: 0.95rem;
    padding: 0.5rem 1rem !important;
    transition: color 0.2s ease-in-out;
}

.nbp-header .nbp-nav-link:hover,
.nbp-header .nbp-nav-link:focus {
    color: #EEF0F2;
}

.nbp-header .nbp-dropdown {
    background-color: #131B29;
    border: 1px solid #2D333C;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45);
    padding: 0.5rem 0;
    margin-top: 0.5rem;
}

.nbp-header .nbp-dropdown-item {
    color: #B0B6BF;
    font-weight: 500;
    font-size: 0.9rem;
    padding: 0.55rem 1.25rem;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.nbp-header .nbp-dropdown-item:hover,
.nbp-header .nbp-dropdown-item:focus {
    background-color: #0F1621;
    color: #EEF0F2;
}

.nbp-header .nbp-cta-btn {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 700;
    font-size: 0.9rem;
    border-radius: 9999px;
    padding: 0.6rem 1.4rem;
    text-decoration: none;
    border: none;
    white-space: nowrap;
    transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

.nbp-header .nbp-cta-btn:hover,
.nbp-header .nbp-cta-btn:focus {
    filter: brightness(1.08);
    box-shadow: 0 4px 18px rgba(97, 140, 209, 0.35);
    transform: translateY(-1px);
    color: #111111;
}

@media (max-width: 991.98px) {
    .nbp-header .navbar-collapse {
        background-color: #131B29;
        border: 1px solid #2D333C;
        border-radius: 14px;
        padding: 1.25rem;
        margin-top: 0.75rem;
        box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5);
    }

    .nbp-header .navbar-nav {
        gap: 0.25rem;
        margin-bottom: 1rem !important;
    }

    .nbp-header .nbp-nav-link {
        padding: 0.6rem 0.75rem !important;
        border-radius: 8px;
    }

    .nbp-header .nbp-nav-link:hover {
        background-color: #0F1621;
    }

    .nbp-header .nbp-dropdown {
        background-color: #0F1621;
        border-color: #2D333C;
        margin-left: 0.5rem;
        margin-right: 0.5rem;
    }

    .nbp-header .nbp-cta-btn {
        width: 100%;
        justify-content: center;
    }
}

.nba-hero {
    background: var(--hero-bg, linear-gradient(118deg, #06070A 0%, #12233F 100%));
    position: relative;
    overflow: hidden;
    padding: 60px 0 70px;
    border-bottom: 1px solid #2D333C;
}

.nba-hero::before {
    content: "";
    position: absolute;
    top: 5%;
    left: 50%;
    transform: translateX(-50%);
    width: 600px;
    height: 350px;
    background: radial-gradient(circle at center, rgba(97, 140, 209, 0.16) 0%, rgba(6, 7, 10, 0) 70%);
    pointer-events: none;
    z-index: 0;
}

.nba-hero .container {
    position: relative;
    z-index: 1;
}

.fgl-breadcrumb {
    font-size: 0.85rem;
}

.fgl-breadcrumb-link {
    color: #B0B6BF;
    text-decoration: none;
    transition: color 0.2s ease;
}

.fgl-breadcrumb-link:hover {
    color: #EEF0F2;
}

.fgl-breadcrumb-sep {
    font-size: 0.75rem;
}

.fgl-breadcrumb-current {
    color: #E9D994;
    font-weight: 600;
}

.nba-hero__title {
    font-size: 2.75rem;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.015em;
    color: #FFFFFF;
    margin-bottom: 1.25rem;
    overflow-wrap: anywhere;
}

.nba-hero__lead {
    font-size: 1.15rem;
    line-height: 1.6;
    color: #B6BBC3;
    max-width: 780px;
    margin: 0 auto 1.5rem;
    overflow-wrap: anywhere;
}

.fgl-meta-row {
    font-size: 0.875rem;
    color: #B0B6BF;
}

.fgl-meta-item {
    color: #EEF0F2;
}

.fgl-content-block {
    background-color: #0B0F17;
    padding: 60px 0 80px;
}

.fgl-keyfact-chip {
    background: #131B29;
    border: 1px solid #2D333C;
    border-radius: 9999px;
    padding: 6px 14px;
    font-size: 0.825rem;
    color: #EEF0F2;
    font-weight: 600;
}

.fgl-featured-image-wrapper {
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid #2D333C;
    max-height: 480px;
    background: #131B29;
}

.fgl-featured-image {
    width: 100%;
    height: 100%;
    max-height: 480px;
    object-fit: cover;
    display: block;
}

.fgl-intro-box {
    background: #131B29;
    border: 1px solid #2D333C;
    border-radius: 16px;
    padding: 24px;
}

.fgl-lead-paragraph {
    font-size: 1.1rem;
    line-height: 1.7;
    color: #EEF0F2;
    margin-bottom: 0;
    overflow-wrap: anywhere;
}

.fgl-cta-inline {
    background: linear-gradient(135deg, #131B29 0%, #0F1621 100%);
    border: 1px solid #2D333C;
    box-shadow: 0 0 24px rgba(97, 140, 209, 0.12);
}

.fgl-cta-eyebrow {
    font-size: 0.75rem;
    letter-spacing: 0.1em;
}

.fgl-cta-heading {
    font-size: 1.25rem;
    font-weight: 700;
}

.fgl-cta-desc {
    font-size: 0.9rem;
}

.fgl-cta-btn {
    border-radius: 9999px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 700;
    padding: 10px 24px;
    border: none;
    text-decoration: none;
    transition: transform 0.2s ease, filter 0.2s ease;
}

.fgl-cta-btn:hover {
    filter: brightness(1.1);
    transform: translateY(-2px);
    color: #111111;
}

.fgl-toc-box {
    background: #0F1621;
    border: 1px solid #2D333C;
}

.fgl-toc-title {
    font-size: 1.05rem;
    letter-spacing: 0.02em;
}

.fgl-toc-list {
    list-style: none;
}

.fgl-toc-link {
    color: #B0B6BF;
    text-decoration: none;
    font-size: 0.95rem;
    transition: color 0.2s ease, transform 0.2s ease;
}

.fgl-toc-link:hover {
    color: #FFFFFF;
    transform: translateX(4px);
}

.fgl-heading-wrapper {
    position: relative;
}

.fgl-section-title {
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -0.01em;
    margin-bottom: 8px;
    overflow-wrap: anywhere;
}

.fgl-heading-accent-line {
    width: 60px;
    height: 3px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    border-radius: 9999px;
}

.fgl-section-sub {
    font-size: 0.95rem;
    line-height: 1.5;
}

.fgl-table-container {
    border: 1px solid #2D333C;
    background: #131B29;
}

.fgl-parameter-table {
    margin-bottom: 0;
    background: transparent;
    color: #EEF0F2;
}

.fgl-parameter-table thead {
    background-color: #0B0F17;
}

.fgl-th {
    padding: 14px 20px;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #B6BBC3;
    border-bottom: 1px solid #2D333C;
}

.fgl-td-param {
    padding: 16px 20px;
    background: #131B29;
    border-bottom: 1px solid #2D333C;
    width: 40%;
}

.fgl-param-title {
    font-size: 0.95rem;
    font-weight: 600;
    color: #EEF0F2;
}

.fgl-td-value {
    padding: 16px 20px;
    background: #0F1621;
    border-bottom: 1px solid #2D333C;
    color: #B0B6BF;
    font-size: 0.95rem;
    line-height: 1.5;
}

.fgl-body-p {
    font-size: 1rem;
    line-height: 1.7;
    overflow-wrap: anywhere;
}

.fgl-callout-note {
    background: #131B29;
    border: 1px solid #2D333C;
}

.fgl-h3-title {
    font-size: 1.35rem;
    font-weight: 700;
}

.fgl-step-number {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
}

.fgl-acc-item {
    background: #131B29;
    border: 1px solid #2D333C;
    border-radius: 14px !important;
    margin-bottom: 12px;
    overflow: hidden;
}

.fgl-acc-btn {
    background-color: #131B29 !important;
    color: #EEF0F2 !important;
    font-weight: 600;
    font-size: 1.05rem;
    padding: 18px 20px;
    border: none !important;
    box-shadow: none !important;
}

.fgl-acc-btn:not(.collapsed) {
    color: #618CD1 !important;
    background-color: #0F1621 !important;
    border-bottom: 1px solid #2D333C !important;
}

.fgl-acc-btn::after {
    filter: invert(1);
}

.fgl-acc-body {
    background-color: #0F1621;
    padding: 18px 20px;
    font-size: 0.95rem;
    line-height: 1.6;
}

.fgl-author-card {
    background: #131B29;
    border: 1px solid #2D333C;
}

.fgl-author-avatar {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
}

.fgl-related-link {
    background: #131B29;
    border: 1px solid #2D333C;
    transition: all 0.2s ease;
}

.fgl-related-link:hover {
    background: #0F1621;
    border-color: #618CD1;
    transform: translateX(4px);
}

.fgl-related-text {
    font-size: 0.95rem;
    overflow-wrap: anywhere;
}

.nba-comment-item {
    background: #131B29;
    border: 1px solid #2D333C;
    color: #EEF0F2;
}

.nba-comment-avatar {
    width: 44px;
    height: 44px;
    background: #618CD1;
    color: #111111;
    font-weight: 700;
    font-size: 0.9rem;
}

.nba-comment-avatar-sm {
    width: 36px;
    height: 36px;
    font-size: 0.8rem;
}

.nba-comment-badge {
    background: rgba(97, 140, 209, 0.15);
    color: #EEF0F2;
    border: 1px solid rgba(97, 140, 209, 0.4);
    font-size: 0.725rem;
}

.nba-comment-date {
    color: #B0B6BF;
}

.nba-comment-text {
    color: #B0B6BF;
    line-height: 1.5;
    font-size: 0.925rem;
    overflow-wrap: anywhere;
}

.nba-comment-btn {
    background: #0F1621;
    border: 1px solid #2D333C;
    color: #B0B6BF;
    border-radius: 9999px;
    padding: 4px 12px;
    font-size: 0.8rem;
    transition: all 0.2s ease;
}

.nba-comment-btn:hover,
.nba-comment-btn.active {
    color: #E9D994;
    border-color: #E9D994;
    background: rgba(233, 217, 148, 0.1);
}

.fgl-comment-editor {
    background: #131B29;
    border: 1px solid #2D333C;
}

.fgl-input,
.fgl-textarea {
    background-color: #0B0F17 !important;
    border: 1px solid #2D333C !important;
    color: #EEF0F2 !important;
    border-radius: 10px !important;
}

.fgl-input::placeholder,
.fgl-textarea::placeholder {
    color: #8C94A0 !important;
    opacity: 1;
}

.fgl-input:focus,
.fgl-textarea:focus {
    background-color: #0B0F17 !important;
    border-color: #618CD1 !important;
    box-shadow: 0 0 0 2px rgba(97, 140, 209, 0.25) !important;
    color: #FFFFFF !important;
}

.fgl-btn-submit {
    border-radius: 9999px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 700;
    padding: 10px 24px;
    border: none;
    transition: transform 0.2s ease, filter 0.2s ease;
}

.fgl-btn-submit:hover {
    filter: brightness(1.1);
    transform: translateY(-2px);
    color: #111111;
}

.site-footer {
    position: relative;
    background-color: #06070A;
    color: #EEF0F2;
    padding-top: 70px;
    padding-bottom: 30px;
    overflow: hidden;
    border-top: 1px solid #2D333C;
    font-family: 'Source Sans 3', sans-serif;
}

.site-footer__accent-glow {
    position: absolute;
    top: 0;
    left: 50%;
    width: 800px;
    height: 240px;
    background: radial-gradient(circle at 50% 0%, rgba(97, 140, 209, 0.14) 0%, rgba(6, 7, 10, 0) 70%);
    transform: translateX(-50%);
    pointer-events: none;
}

.site-footer__main-grid {
    display: grid;
    grid-template-columns: 1.4fr 0.8fr 0.8fr 1.2fr;
    gap: 2rem;
    align-items: start;
    margin-bottom: 3rem;
}

.site-footer__col-brand {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.site-footer__brand-title {
    font-size: 1.4rem;
    font-weight: 800;
    letter-spacing: -0.01em;
    display: inline-block;
    color: #FFFFFF;
}

.site-footer__year-highlight {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 900;
}

.site-footer__brand-desc {
    color: #B6BBC3;
    font-size: 0.95rem;
    line-height: 1.6;
    margin-bottom: 0;
    max-width: 360px;
}

.site-footer__contact-card {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 1.25rem;
    background: #131B29;
    border: 1px solid #2D333C;
    border-radius: 14px;
}

.site-footer__contact-item {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
}

.site-footer__contact-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    border-radius: 10px;
    background: rgba(97, 140, 209, 0.12);
    border: 1px solid rgba(97, 140, 209, 0.3);
    color: #618CD1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
}

.site-footer__contact-detail {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.site-footer__contact-label {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #B6BBC3;
    font-weight: 600;
}

.site-footer__contact-value {
    font-size: 0.9rem;
    color: #EEF0F2;
    font-style: normal;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.site-footer__contact-link {
    font-size: 0.9rem;
    color: #618CD1;
    text-decoration: none;
    transition: color 0.2s ease;
    overflow-wrap: anywhere;
}

.site-footer__contact-link:hover {
    color: #81A3DA;
    text-decoration: underline;
}

.site-footer__section-heading {
    font-size: 1.05rem;
    font-weight: 700;
    color: #FFFFFF;
    margin-bottom: 1.25rem;
    letter-spacing: 0.01em;
    position: relative;
}

.site-footer__nav-list {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.site-footer__nav-link {
    color: #B6BBC3;
    text-decoration: none;
    font-size: 0.95rem;
    transition: color 0.2s ease;
    display: inline-block;
}

.site-footer__nav-link:hover {
    color: #FFFFFF;
    text-decoration: underline;
}

.site-footer__highlight-box {
    background: #131B29;
    border: 1px solid transparent;
    background: linear-gradient(#131B29, #131B29) padding-box, linear-gradient(135deg, #618CD1 0%, #E9D994 100%) border-box;
    border-radius: 16px;
    padding: 1.5rem;
    box-shadow: 0 0 24px rgba(97, 140, 209, 0.12);
}

.site-footer__badge {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.85rem;
    border-radius: 9999px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-bottom: 0.85rem;
}

.site-footer__highlight-title {
    font-size: 1.15rem;
    font-weight: 700;
    color: #FFFFFF;
    margin-bottom: 0.5rem;
}

.site-footer__highlight-text {
    font-size: 0.875rem;
    line-height: 1.5;
    color: #B6BBC3;
    margin-bottom: 1rem;
}

.site-footer__match-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.site-footer__meta-pill {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.3rem 0.65rem;
    border-radius: 9999px;
    background: #0B0F17;
    color: #EEF0F2;
    border: 1px solid #2D333C;
    display: inline-flex;
    align-items: center;
}

.site-footer__bottom-divider {
    height: 1px;
    width: 100%;
    background: linear-gradient(90deg, #06070A 0%, #618CD1 50%, #06070A 100%);
    margin-bottom: 1.5rem;
}

.site-footer__sub-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    font-size: 0.85rem;
    color: #B6BBC3;
}

.site-footer__copyright {
    color: #B6BBC3;
    line-height: 1.4;
}

.site-footer__legal-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
}

.site-footer__legal-link {
    color: #B6BBC3;
    text-decoration: none;
    transition: color 0.2s ease;
}

.site-footer__legal-link:hover {
    color: #FFFFFF;
    text-decoration: underline;
}

.site-footer__legal-dot {
    color: #2D333C;
}

@media (max-width: 991.98px) {
    .site-footer__main-grid {
        grid-template-columns: 1fr 1fr;
        gap: 2rem;
    }
}

@media (max-width: 767.98px) {
    .nba-hero {
        padding: 40px 0 50px;
    }

    .nba-hero__title {
        font-size: 1.85rem;
        hyphens: auto;
    }

    .nba-hero__lead {
        font-size: 1rem;
        margin-bottom: 1.25rem;
    }

    .fgl-content-block {
        padding: 40px 0 60px;
    }

    .fgl-parameter-table thead {
        display: none;
    }

    .fgl-parameter-table,
    .fgl-parameter-table tbody,
    .fgl-parameter-table tr,
    .fgl-parameter-table td {
        display: block;
        width: 100%;
    }

    .fgl-td-param {
        border-bottom: none;
        padding-bottom: 4px;
    }

    .fgl-td-value {
        padding-top: 4px;
        padding-bottom: 16px;
    }

    .site-footer {
        padding-top: 45px;
        padding-bottom: 25px;
    }

    .site-footer__main-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .site-footer__brand-desc {
        max-width: 100%;
    }

    .site-footer__sub-bar {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.85rem;
    }

    .site-footer__legal-links {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

    .site-footer__legal-dot {
        display: none;
    }
}

/* ===== PAGE TEMPLATE: analytics-list ===== */
.article-hero {
    background: var(--hero-bg, linear-gradient(118deg, #06070A 0%, #12233F 100%));
    padding: 70px 0 60px;
    overflow: hidden;
    border-bottom: 1px solid #2D333C;
}

.article-hero__line {
    width: 35px;
    height: 1px;
    background-color: #2D333C;
    display: inline-block;
}

.article-hero__title {
    font-size: 2.75rem;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.015em;
    color: #FFFFFF;
    margin-bottom: 1.25rem;
    overflow-wrap: anywhere;
}

.article-hero__subtitle {
    font-size: 1.2rem;
    line-height: 1.6;
    color: #B6BBC3;
    max-width: 820px;
    margin: 0 auto;
    overflow-wrap: anywhere;
}

.article-hero__meta {
    color: #B6BBC3;
    font-size: 0.95rem;
}

.article-hero__meta-dot {
    color: #2D333C;
}

.article-content {
    background-color: #0B0F17;
    color: #EEF0F2;
    padding: 60px 0 80px;
}

.article-media-wrapper {
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid #2D333C;
    background: #131B29;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
}

.article-main-image {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    display: block;
}

.article-media-caption {
    background: #0F1621;
    border-top: 1px solid #2D333C;
}

.article-takeaways {
    background: #131B29;
    border: 1px solid transparent;
    background: linear-gradient(#131B29, #131B29) padding-box, linear-gradient(135deg, #618CD1 0%, #E9D994 100%) border-box;
    border-radius: 16px;
    box-shadow: 0 0 24px rgba(97, 140, 209, 0.15);
}

.article-takeaways__title {
    font-size: 1.5rem;
    font-weight: 700;
    color: #FFFFFF;
}

.article-takeaways__list {
    list-style: none;
    padding-left: 0;
}

.article-takeaways__item {
    font-size: 1.05rem;
    line-height: 1.5;
    color: #EEF0F2;
}

.article-section-title {
    font-size: 2rem;
    font-weight: 700;
    color: #FFFFFF;
    margin-bottom: 1.75rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    overflow-wrap: anywhere;
}

.article-section-num {
    font-size: 1.25rem;
    font-weight: 800;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    border: 1px solid #2D333C;
    border-radius: 8px;
    padding: 2px 10px;
    display: inline-block;
}

.article-magazine-columns {
    column-count: 2;
    column-gap: 2.5rem;
    column-rule: 1px solid #2D333C;
}

.article-magazine-columns p {
    font-size: 1.05rem;
    line-height: 1.75;
    color: #B0B6BF;
    margin-bottom: 1.5rem;
    overflow-wrap: anywhere;
}

.article-table-card {
    background: #131B29;
    border: 1px solid #2D333C;
    border-radius: 16px;
}

.article-table-title {
    font-size: 1.25rem;
    font-weight: 700;
    color: #FFFFFF;
}

.article-data-table {
    color: #EEF0F2;
}

.article-data-table th {
    background-color: #0F1621;
    color: #FFFFFF;
    font-weight: 700;
    border-bottom: 2px solid #2D333C;
    padding: 12px 16px;
}

.article-data-table td {
    background-color: #131B29;
    color: #B0B6BF;
    border-bottom: 1px solid #2D333C;
    padding: 14px 16px;
}

.article-data-table tr:nth-of-type(even) td {
    background-color: #0F1621;
}

.article-pullquote {
    background: #0F1621;
    border-left: 4px solid #618CD1;
    border-radius: 14px;
    border: 1px solid #2D333C;
    border-left-width: 4px;
}

.article-pullquote__quote p {
    font-size: 1.35rem;
    font-style: italic;
    line-height: 1.6;
    color: #EEF0F2;
    margin-bottom: 0;
    overflow-wrap: anywhere;
}

.article-cta-box {
    background: linear-gradient(135deg, #131B29 0%, #0F1621 100%);
    border: 1px solid #2D333C;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
}

.article-cta-box__title {
    font-size: 2.2rem;
    font-weight: 800;
    color: #FFFFFF;
    overflow-wrap: anywhere;
}

.article-cta-box__lead {
    font-size: 1.15rem;
    line-height: 1.6;
}

.article-related-card {
    background: #131B29;
    border: 1px solid #2D333C;
    border-radius: 16px;
    overflow: hidden;
    transition: transform 0.2s ease, border-color 0.2s ease;
}

.article-related-card:hover {
    transform: translateY(-4px);
    border-color: #618CD1;
}

.article-related-media {
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #0B0F17;
}

.article-related-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.article-related-card:hover .article-related-img {
    transform: scale(1.04);
}

.article-related-title {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.article-related-title a:hover {
    color: #618CD1 !important;
}

.article-related-excerpt {
    font-size: 0.925rem;
    line-height: 1.5;
}

.article-title-highlight {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.nba-comment-item {
    background: #131B29;
    border: 1px solid #2D333C;
    color: #EEF0F2;
}

.nba-comment-avatar {
    width: 44px;
    height: 44px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 800;
    font-size: 0.95rem;
}

.nba-comment-avatar-sm {
    width: 36px;
    height: 36px;
    font-size: 0.8rem;
}

.nba-comment-badge {
    background: #0F1621;
    border: 1px solid #2D333C;
    color: #EEF0F2;
    font-size: 0.75rem;
    padding: 4px 8px;
}

.nba-comment-btn {
    background: #0F1621;
    border: 1px solid #2D333C;
    color: #B0B6BF;
    transition: all 0.2s ease;
    border-radius: 9999px;
    padding: 4px 12px;
}

.nba-comment-btn:hover,
.nba-comment-btn.is-active {
    background: rgba(97, 140, 209, 0.2);
    color: #618CD1;
    border-color: #618CD1;
}

.nba-comment-btn.is-active i {
    color: #E9D994;
}

.form-control-dark {
    background-color: #0B0F17;
    border: 1px solid #2D333C;
    color: #EEF0F2;
    border-radius: 10px;
    padding: 10px 14px;
}

.form-control-dark:focus {
    background-color: #0F1621;
    border-color: #618CD1;
    color: #FFFFFF;
    box-shadow: 0 0 0 3px rgba(97, 140, 209, 0.25);
    outline: none;
}

.form-control-dark::placeholder {
    color: #727B88;
    opacity: 1;
}

@media (max-width: 767px) {
    .article-hero {
        padding: 45px 0 40px;
    }

    .article-hero__title {
        font-size: 1.85rem;
    }

    .article-hero__subtitle {
        font-size: 1rem;
    }

    .article-section-title {
        font-size: 1.45rem;
    }

    .article-magazine-columns {
        column-count: 1;
        column-gap: 0;
    }

    .article-cta-box__title {
        font-size: 1.5rem;
    }

    .article-pullquote__quote p {
        font-size: 1.1rem;
    }

    .article-data-table thead {
        display: none;
    }

    .article-data-table,
    .article-data-table tbody,
    .article-data-table tr,
    .article-data-table td {
        display: block;
        width: 100%;
    }

    .article-data-table td {
        border-bottom: 1px solid #2D333C;
        padding: 8px 12px;
    }

    .article-data-table tr {
        margin-bottom: 12px;
        border: 1px solid #2D333C;
        border-radius: 8px;
        overflow: hidden;
    }
}

/* ===== PAGE TEMPLATE: news-list ===== */
.nba-article-detail {
    background-color: #0B0F17;
    color: #EEF0F2;
    padding: 60px 0 90px;
    font-family: 'Source Sans 3', sans-serif;
}

.nba-article-detail .nba-row-split {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 3rem;
    padding-bottom: 3.5rem;
    margin-bottom: 3.5rem;
    border-bottom: 1px solid #2D333C;
    align-items: start;
}

.nba-article-detail .nba-col-heading {
    position: sticky;
    top: 90px;
}

.nba-article-detail .rrr-eyebrow {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: #618CD1;
}

.nba-article-detail .rrr-title {
    font-size: 1.85rem;
    font-weight: 700;
    line-height: 1.25;
    color: #FFFFFF;
    overflow-wrap: anywhere;
}

.nba-article-detail .text-gradient {
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.nba-article-detail .nba-lead-desc {
    font-size: 0.95rem;
    line-height: 1.6;
    color: #B0B6BF;
    overflow-wrap: anywhere;
}

.nba-article-detail .nba-media-frame {
    background: #131B29;
    border: 1px solid #2D333C;
    border-radius: 16px;
    padding: 8px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4);
}

.nba-article-detail .nba-main-img {
    border-radius: 12px;
    aspect-ratio: 16/9;
    object-fit: cover;
    display: block;
}

.nba-article-detail .nba-content-prose p {
    font-size: 1.05rem;
    line-height: 1.7;
    color: #B0B6BF;
    margin-bottom: 1.25rem;
    overflow-wrap: anywhere;
}

.nba-article-detail .nba-content-prose h3 {
    font-size: 1.4rem;
    font-weight: 700;
    color: #FFFFFF;
    margin-top: 1.75rem;
    margin-bottom: 1rem;
}

.nba-article-detail .nba-toc-card {
    background: #131B29;
    border: 1px solid #2D333C;
}

.nba-article-detail .nba-toc-list {
    list-style: none;
    padding-left: 0;
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

.nba-article-detail .nba-toc-link {
    color: #618CD1;
    text-decoration: none;
    font-size: 0.95rem;
    transition: color 0.2s ease, transform 0.2s ease;
    display: inline-block;
}

.nba-article-detail .nba-toc-link:hover {
    color: #E9D994;
    transform: translateX(4px);
}

.nba-article-detail .nba-facts-table {
    background: #131B29;
    border: 1px solid #2D333C;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 0;
}

.nba-article-detail .nba-facts-table th {
    background: #0F1621;
    color: #EEF0F2;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 14px 16px;
    border-bottom: 1px solid #2D333C;
}

.nba-article-detail .nba-facts-table td {
    padding: 14px 16px;
    border-bottom: 1px solid #2D333C;
    font-size: 0.95rem;
    color: #B0B6BF;
}

.nba-article-detail .nba-facts-table tbody tr:last-child td {
    border-bottom: none;
}

.nba-article-detail .nba-status-badge {
    background: rgba(97, 140, 209, 0.15);
    color: #618CD1;
    border: 1px solid rgba(97, 140, 209, 0.3);
    font-size: 0.75rem;
    padding: 0.35rem 0.75rem;
}

.nba-article-detail .nba-feature-bullets {
    color: #B0B6BF;
    line-height: 1.6;
}

.nba-article-detail .rrr-badge {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.85rem;
    border-radius: 9999px;
    background: rgba(97, 140, 209, 0.12);
    border: 1px solid #2D333C;
    color: #EEF0F2;
    font-size: 0.8rem;
    font-weight: 600;
}

.nba-article-detail .nba-cta-box {
    background: linear-gradient(135deg, #131B29 0%, #152238 100%);
    border: 1px solid #2D333C;
}

.nba-article-detail .rrr-btn {
    border-radius: 9999px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-weight: 700;
    font-size: 0.9rem;
    padding: 12px 24px;
    text-decoration: none;
    border: none;
    transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease;
}

.nba-article-detail .rrr-btn:hover {
    filter: brightness(1.1);
    color: #000000;
    box-shadow: 0 4px 18px rgba(97, 140, 209, 0.35);
    transform: translateY(-2px);
}

.nba-article-detail .nba-author-box {
    background: #0F1621;
    border: 1px solid #2D333C;
}

.nba-article-detail .nba-author-avatar {
    width: 52px;
    height: 52px;
    background: linear-gradient(135deg, #618CD1 0%, #E9D994 100%);
    color: #111111;
    font-size: 1.1rem;
}

.nba-article-detail .nba-related-card {
    background: #131B29;
    border: 1px solid #2D333C;
    transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.nba-article-detail .nba-related-card:hover {
    transform: translateY(-3px);
    border-color: #618CD1;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.4);
}

.nba-comment-item {
    background: #131B29;
    border: 1px solid #2D333C;
}

.nba-comment-reply {
    background: #0F1621;
    border-left: 3px solid #618CD1;
}

.nba-comment-avatar {
    width: 44px;
    height: 44px;
    background: #1e2837;
    border: 1px solid #2D333C;
    color: #618CD1;
    font-weight: 700;
    font-size: 0.95rem;
}

.nba-comment-avatar-sm {
    width: 36px;
    height: 36px;
    font-size: 0.8rem;
}

.nba-comment-badge {
    background: rgba(233, 217, 148, 0.12);
    color: #E9D994;
    border: 1px solid rgba(233, 217, 148, 0.25);
    font-size: 0.72rem;
}

.nba-comment-date {
    color: #8C94A0;
}

.nba-comment-text {
    font-size: 0.925rem;
    line-height: 1.6;
    color: #EEF0F2;
    overflow-wrap: anywhere;
}

.nba-comment-btn {
    background: #0B0F17;
    border: 1px solid #2D333C;
    color: #B0B6BF;
    border-radius: 9999px;
    padding: 0.35rem 0.85rem;
    font-size: 0.78rem;
    font-weight: 600;
    transition: all 0.2s ease;
}

.nba-comment-btn:hover {
    background: #1e2837;
    color: #FFFFFF;
    border-color: #618CD1;
}

.nba-comment-btn.active {
    color: #E9D994;
    border-color: #E9D994;
    background: rgba(233, 217, 148, 0.1);
}

.nba-comment-btn.active i {
    color: #E9D994;
}

.nba-comment-form-card {
    background: #131B29;
    border: 1px solid #2D333C;
}

.nba-input {
    background: #0B0F17;
    border: 1px solid #2D333C;
    color: #EEF0F2;
    border-radius: 10px;
    padding: 10px 14px;
    font-size: 0.925rem;
}

.nba-input:focus {
    background: #0B0F17;
    border-color: #618CD1;
    color: #EEF0F2;
    box-shadow: 0 0 0 3px rgba(97, 140, 209, 0.2);
}

.nba-input::placeholder {
    color: #687282;
}

@media (max-width: 767.98px) {
    .nba-article-detail .nba-row-split {
        grid-template-columns: 1fr;
        gap: 1.75rem;
        padding-bottom: 2.5rem;
        margin-bottom: 2.5rem;
    }

    .nba-article-detail .nba-col-heading {
        position: static;
    }

    .nba-article-detail .rrr-title {
        font-size: 1.45rem;
    }

    .nba-article-detail .nba-facts-table thead {
        display: none;
    }

    .nba-article-detail .nba-facts-table,
    .nba-article-detail .nba-facts-table tbody,
    .nba-article-detail .nba-facts-table tr,
    .nba-article-detail .nba-facts-table td {
        display: block;
        width: 100%;
    }

    .nba-article-detail .nba-facts-table td {
        border-bottom: 1px solid #2D333C;
        padding: 8px 12px;
    }

    .nba-comment-reply {
        margin-left: 1rem !important;
    }
}

/* mobile-text-guard */
@media (max-width: 767px) {
  h1, h2, h3, h4, h5, h6, p, li, dt, dd, blockquote, figcaption, td, th, label {
    overflow-wrap: anywhere;
  }
  a, button, .btn {
    overflow-wrap: anywhere;
    white-space: normal;
  }
  img, video, iframe {
    max-width: 100%;
  }
}

/* Keep the transparent basketball mark legible on every header. */
.nbp-header .nbp-logo-img {
    filter: brightness(0) invert(1);
}

/* Override both Bootstrap and MDB table cell backgrounds. */
.table.nba-facts-table,
.table.fgl-parameter-table {
    --bs-table-color: var(--text-muted);
    --bs-table-bg: var(--surface);
    --bs-table-border-color: var(--border);
    --bs-table-accent-bg: transparent;
    --bs-table-striped-bg: var(--surface-alt);
    --bs-table-striped-color: var(--text);
    --bs-table-hover-bg: #1B2B40;
    --bs-table-hover-color: var(--text);
    --mdb-table-color: var(--text-muted);
    --mdb-table-bg: var(--surface);
    --mdb-table-border-color: var(--border);
    --mdb-table-accent-bg: transparent;
    color: var(--text-muted);
    background-color: var(--surface);
    border-color: var(--border);
}

.table.nba-facts-table > :not(caption) > * > *,
.table.fgl-parameter-table > :not(caption) > * > * {
    color: var(--text-muted);
    background-color: var(--surface);
    border-color: var(--border);
    box-shadow: none;
}

.table.nba-facts-table > thead > tr > th,
.table.fgl-parameter-table > thead > tr > th {
    color: var(--accent);
    background-color: var(--surface-alt);
}

.table.nba-facts-table > tbody > tr > :first-child,
.table.fgl-parameter-table > tbody > tr > :first-child {
    color: var(--text);
    background-color: var(--surface-alt);
    font-weight: 600;
}

.table.nba-facts-table > tbody > tr:hover > *,
.table.fgl-parameter-table > tbody > tr:hover > * {
    color: var(--text);
    background-color: #1B2B40;
}
