/* Home page only. Keep homepage layout here; shared tokens live in assets/theme.css. */
body.nobench-page-home {
    --nb-active-page-css: "home";
    --nb-home-stack-gap: var(--nb-page-top-gap);
}

body.nobench-design-classic.nobench-page-home .nobench-home {
    display: grid !important;
    gap: var(--nb-home-stack-gap) !important;
    width: 100% !important;
    max-width: var(--nb-shell-width) !important;
    margin: 0 auto var(--nb-home-stack-gap) !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

body.nobench-design-classic.nobench-page-home :where(
    .nobench-home-hero,
    .nobench-home-section,
    .nobench-home-cta
) {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-hero {
    display: grid !important;
    grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.75fr) !important;
    gap: var(--nb-home-stack-gap) !important;
    align-items: stretch !important;
    padding: 0 !important;
    min-height: 0 !important;
}

body.nobench-design-classic.nobench-page-home :where(
    .nobench-home-hero-content,
    .nobench-home-hero-panel,
    .nobench-home-section,
    .nobench-home-step,
    .nobench-home-cta,
    .nobench-home-grid > .nobench-game-card
) {
    background: var(--nb-card-surface) !important;
    background-color: transparent !important;
    background-image: var(--nb-card-surface) !important;
    border: 1px solid var(--nb-border) !important;
    border-radius: var(--nb-radius-card) !important;
    box-shadow: none !important;
    color: var(--nb-text) !important;
    backdrop-filter: var(--nb-card-backdrop) !important;
    box-sizing: border-box !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-hero-content {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    min-height: 360px !important;
    padding: clamp(30px, 5vw, 54px) !important;
    border-radius: var(--nb-radius-card) !important;
    overflow: hidden !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-hero-content .nobench-eyebrow {
    margin: 0 0 14px !important;
    color: #8fe8ff !important;
    font-size: var(--nb-text-xs) !important;
    font-weight: 850 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-hero-content h1 {
    max-width: 760px !important;
    margin: 0 !important;
    color: var(--nb-text) !important;
    font-size: clamp(42px, 5.2vw, 68px) !important;
    line-height: 1.02 !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-hero-content p {
    max-width: 650px !important;
    margin: 18px 0 0 !important;
    color: var(--nb-muted) !important;
    font-size: 17px !important;
    line-height: 1.55 !important;
    font-weight: 600 !important;
}

body.nobench-design-classic.nobench-page-home .nobench-hero-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin-top: 26px !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-hero-panel {
    display: grid !important;
    align-content: center !important;
    gap: 14px !important;
    padding: var(--nb-card-pad) !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-hero-panel h3,
body.nobench-design-classic.nobench-page-home .nobench-home-section h2,
body.nobench-design-classic.nobench-page-home .nobench-home-cta h2 {
    margin: 0 !important;
    color: var(--nb-text) !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-stat {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    min-height: 64px !important;
    padding: 14px !important;
    border: 1px solid var(--nb-border) !important;
    border-radius: var(--nb-radius-control) !important;
    background: var(--nb-card-inner) !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-stat strong {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    color: var(--nb-text) !important;
    font-size: var(--nb-text-sm) !important;
    font-weight: 800 !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-stat span:last-child {
    color: #8fe8ff !important;
    font-size: 24px !important;
    font-weight: 900 !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-hero-panel p,
body.nobench-design-classic.nobench-page-home .nobench-home-step p,
body.nobench-design-classic.nobench-page-home .nobench-home-cta p,
body.nobench-design-classic.nobench-page-home .nobench-home-grid > .nobench-game-card p {
    margin: 0 !important;
    color: var(--nb-muted) !important;
    font-size: var(--nb-text-md) !important;
    line-height: 1.5 !important;
    font-weight: 500 !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-section {
    display: grid !important;
    gap: var(--nb-home-stack-gap) !important;
    padding: var(--nb-card-pad) !important;
}

body.nobench-design-classic.nobench-page-home .nobench-section-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
}

body.nobench-design-classic.nobench-page-home .nobench-section-header a {
    color: #8fe8ff !important;
    font-size: var(--nb-text-sm) !important;
    font-weight: 850 !important;
    text-decoration: none !important;
}

body.nobench-design-classic.nobench-page-home :where(.nobench-home-steps, .nobench-home-grid) {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: var(--nb-home-stack-gap) !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-step,
body.nobench-design-classic.nobench-page-home .nobench-home-grid > .nobench-game-card {
    display: grid !important;
    align-content: start !important;
    gap: 12px !important;
    padding: var(--nb-card-pad) !important;
    min-width: 0 !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-step-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-step h3,
body.nobench-design-classic.nobench-page-home .nobench-home-grid > .nobench-game-card h3 {
    margin: 0 !important;
    color: var(--nb-text) !important;
    font-size: var(--nb-text-lg) !important;
    line-height: 1.2 !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-grid > .nobench-game-card h3 a {
    color: inherit !important;
    text-decoration: none !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-venue-card .nobench-venue-thumb-link,
body.nobench-design-classic.nobench-page-home .nobench-home-venue-card .nobench-venue-thumb {
    display: block !important;
    width: 100% !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-venue-card .nobench-venue-thumb {
    height: 190px !important;
    object-fit: cover !important;
    border-radius: var(--nb-radius-control) !important;
}

body.nobench-design-classic.nobench-page-home .nobench-home-cta {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    padding: var(--nb-card-pad) !important;
}

@media (max-width: 900px) {
    body.nobench-design-classic.nobench-page-home .nobench-home-hero,
    body.nobench-design-classic.nobench-page-home :where(.nobench-home-steps, .nobench-home-grid) {
        grid-template-columns: 1fr !important;
    }

    body.nobench-design-classic.nobench-page-home .nobench-home-hero-content {
        min-height: 300px !important;
    }
}

@media (max-width: 640px) {
    body.nobench-design-classic.nobench-page-home .nobench-home {
        width: calc(100vw - (var(--nb-shell-padding) * 2)) !important;
        max-width: calc(100vw - (var(--nb-shell-padding) * 2)) !important;
    }

    body.nobench-design-classic.nobench-page-home .nobench-home-hero-content,
    body.nobench-design-classic.nobench-page-home .nobench-home-hero-panel,
    body.nobench-design-classic.nobench-page-home .nobench-home-section,
    body.nobench-design-classic.nobench-page-home .nobench-home-step,
    body.nobench-design-classic.nobench-page-home .nobench-home-cta,
    body.nobench-design-classic.nobench-page-home .nobench-home-grid > .nobench-game-card {
        padding: var(--nb-card-pad) !important;
    }

    body.nobench-design-classic.nobench-page-home .nobench-home-hero-content h1 {
        font-size: clamp(36px, 11vw, 48px) !important;
    }

    body.nobench-design-classic.nobench-page-home .nobench-section-header,
    body.nobench-design-classic.nobench-page-home .nobench-home-cta {
        align-items: flex-start !important;
        flex-direction: column !important;
    }
}
