/* ESV Ochtrup – final scroll rhythm overrides
   Loaded after esv-design.css so the homepage scenes stay predictable. */

body:has(.relaunch-home)::before {
    background: transparent !important;
}

.relaunch-home {
    position: relative !important;
    overflow: hidden;
    background: linear-gradient(180deg, #120717 0%, #1c0a24 44%, #0a0510 100%) !important;
    background-image: linear-gradient(180deg, #120717 0%, #1c0a24 44%, #0a0510 100%) !important;
}

.relaunch-home::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background-image:
        linear-gradient(90deg, rgba(244, 114, 182, 0.14) 1px, transparent 1px),
        linear-gradient(0deg, rgba(244, 114, 182, 0.10) 1px, transparent 1px) !important;
    background-size: 78px 78px !important;
    background-position: 0 0 !important;
}

.relaunch-home > .relaunch-hero,
.relaunch-home > .relaunch-section {
    position: relative !important;
    z-index: 1;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border-top-color: transparent !important;
    border-bottom-color: transparent !important;
}

/* Each scene has its own surface while sharing the same continuous grid. */
.relaunch-home > .relaunch-scene--menu {
    padding-top: clamp(2.4rem, 4vw, 4rem) !important;
    padding-bottom: clamp(2.4rem, 4vw, 4rem) !important;
    background: linear-gradient(180deg, rgba(219, 39, 119, 0.12), rgba(255, 255, 255, 0.025)) !important;
    box-shadow: inset 0 1px 0 rgba(244, 114, 182, 0.18), inset 0 -1px 0 rgba(244, 114, 182, 0.10);
}

.relaunch-scene--menu .relaunch-path-grid {
    gap: 0.8rem !important;
}

.relaunch-scene--menu .relaunch-path-card {
    min-height: 132px !important;
    padding: 1rem 1.05rem !important;
    border-radius: 10px !important;
    background: rgba(39, 18, 45, 0.76) !important;
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.18) !important;
}

.relaunch-scene--menu .relaunch-path-card h3 {
    margin: 0.45rem 0 0.35rem;
    font-size: clamp(1.05rem, 1.35vw, 1.28rem);
}

.relaunch-scene--menu .relaunch-path-card p {
    font-size: 0.9rem;
    line-height: 1.38;
}

.relaunch-home > .relaunch-scene--games {
    padding-top: clamp(3rem, 6vw, 5.4rem) !important;
    padding-bottom: clamp(3rem, 6vw, 5.4rem) !important;
    background: linear-gradient(135deg, rgba(10, 5, 16, 0.42), rgba(244, 114, 182, 0.06)) !important;
}

.relaunch-scene--games .section-header {
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

.relaunch-scene--games .relaunch-game-grid {
    gap: 1rem 1.1rem !important;
}

.relaunch-scene--games .relaunch-game-card {
    min-height: 170px !important;
    border-radius: 13px !important;
    background-position: center !important;
    background-size: cover !important;
    border-color: rgba(244, 114, 182, 0.30) !important;
    box-shadow: 0 16px 34px rgba(0, 0, 0, 0.24) !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(1) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('assets/bg_eafc_v2.jpg') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(2) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('assets/bg_cs2_v2.jpg') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(3) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('assets/bg_lol_v2.jpg') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(4) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('assets/bg_rl_v2.jpg') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(5) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('assets/bg_minecraft_v2.png') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(6) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('assets/bg_pokemon_v2.png') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(7) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('assets/bg_smash_v3.jpg') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(8) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('assets/bg_aoe2_v2.jpg') !important;
}

.relaunch-scene--games .relaunch-game-card strong,
.relaunch-scene--games .relaunch-game-card span {
    color: #ffffff !important;
    text-shadow: 0 2px 18px rgba(0, 0, 0, 0.70);
}

.relaunch-home > .relaunch-scene--responsibility {
    padding-top: clamp(3.8rem, 7vw, 6.4rem) !important;
    padding-bottom: clamp(3.8rem, 7vw, 6.4rem) !important;
    background: linear-gradient(105deg, rgba(255, 255, 255, 0.045), transparent 56%) !important;
}

.relaunch-scene--responsibility::after {
    content: "";
    position: absolute;
    inset: 0 0 0 auto;
    z-index: 0;
    width: 34%;
    background: linear-gradient(180deg, transparent, rgba(244, 114, 182, 0.10), transparent);
    pointer-events: none;
}

.relaunch-scene--responsibility > .esv-container {
    position: relative;
    z-index: 1;
}

.relaunch-scene--responsibility .relaunch-proof-list div {
    border-left: 3px solid rgba(244, 114, 182, 0.72) !important;
    background: rgba(39, 18, 45, 0.50) !important;
}

.relaunch-home > .relaunch-scene--membership {
    padding-top: clamp(3.8rem, 7vw, 6.4rem) !important;
    padding-bottom: clamp(3.8rem, 7vw, 6.4rem) !important;
    background: linear-gradient(180deg, rgba(244, 114, 182, 0.13), rgba(20, 10, 28, 0.34)) !important;
    box-shadow: inset 0 1px 0 rgba(244, 114, 182, 0.22), inset 0 -1px 0 rgba(244, 114, 182, 0.14);
}

.relaunch-scene--membership .relaunch-steps > div {
    border-color: rgba(244, 114, 182, 0.34) !important;
    background: rgba(20, 10, 28, 0.70) !important;
}

.relaunch-scene--membership .relaunch-steps > div strong {
    letter-spacing: 0.01em;
}

.relaunch-scene--membership .relaunch-steps > div span {
    background: linear-gradient(135deg, #db2777, #f43f5e) !important;
}

.relaunch-scene--cta {
    padding-top: clamp(3.5rem, 7vw, 6rem) !important;
    padding-bottom: clamp(3.5rem, 7vw, 6rem) !important;
}

.relaunch-scene--cta .relaunch-cta {
    min-height: 360px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background:
        radial-gradient(circle at 50% 0%, rgba(244, 114, 182, 0.22), transparent 48%),
        linear-gradient(180deg, rgba(39, 18, 45, 0.98), rgba(20, 10, 28, 0.98)) !important;
    border-color: rgba(244, 114, 182, 0.38) !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.28) !important;
}

/* Light mode keeps the same structure but uses white/rose surfaces. */
body.light-mode .relaunch-home,
[data-theme="light"] .relaunch-home,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-home {
    background: linear-gradient(180deg, #fff7fb 0%, #fff0f6 48%, #ffffff 100%) !important;
}

body.light-mode .relaunch-home::before,
[data-theme="light"] .relaunch-home::before,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-home::before {
    background-image:
        linear-gradient(90deg, rgba(219, 39, 119, 0.09) 1px, transparent 1px),
        linear-gradient(0deg, rgba(219, 39, 119, 0.06) 1px, transparent 1px) !important;
}

body.light-mode .relaunch-home > .relaunch-scene--menu,
[data-theme="light"] .relaunch-home > .relaunch-scene--menu,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-home > .relaunch-scene--menu {
    background: linear-gradient(180deg, rgba(255, 240, 246, 0.90), rgba(255, 255, 255, 0.55)) !important;
}

body.light-mode .relaunch-scene--menu .relaunch-path-card,
[data-theme="light"] .relaunch-scene--menu .relaunch-path-card,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-scene--menu .relaunch-path-card {
    background: rgba(255, 255, 255, 0.88) !important;
    box-shadow: 0 14px 30px rgba(93, 20, 64, 0.10) !important;
}

body.light-mode .relaunch-home > .relaunch-scene--responsibility,
[data-theme="light"] .relaunch-home > .relaunch-scene--responsibility,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-home > .relaunch-scene--responsibility {
    background: linear-gradient(105deg, rgba(255, 240, 246, 0.76), transparent 56%) !important;
}

body.light-mode .relaunch-scene--responsibility .relaunch-proof-list div,
[data-theme="light"] .relaunch-scene--responsibility .relaunch-proof-list div,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-scene--responsibility .relaunch-proof-list div {
    background: rgba(255, 255, 255, 0.82) !important;
}

body.light-mode .relaunch-home > .relaunch-scene--membership,
[data-theme="light"] .relaunch-home > .relaunch-scene--membership,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-home > .relaunch-scene--membership {
    background: linear-gradient(180deg, rgba(255, 240, 246, 0.88), rgba(255, 255, 255, 0.62)) !important;
}

body.light-mode .relaunch-scene--membership .relaunch-steps > div,
[data-theme="light"] .relaunch-scene--membership .relaunch-steps > div,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-scene--membership .relaunch-steps > div {
    background: rgba(255, 255, 255, 0.88) !important;
    border-color: rgba(219, 39, 119, 0.24) !important;
}

body.light-mode .relaunch-scene--cta .relaunch-cta,
[data-theme="light"] .relaunch-scene--cta .relaunch-cta,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-scene--cta .relaunch-cta {
    background:
        radial-gradient(circle at 50% 0%, rgba(244, 114, 182, 0.18), transparent 48%),
        rgba(255, 255, 255, 0.96) !important;
    border-color: rgba(219, 39, 119, 0.26) !important;
    box-shadow: 0 24px 70px rgba(93, 20, 64, 0.10) !important;
}

@media (min-width: 761px) {
    .relaunch-scene--games .relaunch-game-card:nth-child(even) {
        transform: translateY(0.7rem);
    }

    .relaunch-scene--games .relaunch-game-grid {
        padding-bottom: 0.7rem;
    }
}

@media (max-width: 760px) {
    .relaunch-home > .relaunch-scene--menu,
    .relaunch-home > .relaunch-scene--games,
    .relaunch-home > .relaunch-scene--responsibility,
    .relaunch-home > .relaunch-scene--membership,
    .relaunch-home > .relaunch-scene--cta {
        padding-top: 2.25rem !important;
        padding-bottom: 2.25rem !important;
    }

    .relaunch-scene--games .relaunch-game-card {
        min-height: 142px !important;
    }

    .relaunch-scene--games .relaunch-game-card:nth-child(even) {
        transform: none;
    }

    .relaunch-scene--cta .relaunch-cta {
        min-height: 300px;
    }
}

/* The grid is part of the document canvas, never a fixed viewport layer. */
body.home::before,
body:has(.relaunch-home)::before,
.relaunch-home::before {
    display: none !important;
}

.relaunch-home {
    background:
        linear-gradient(90deg, rgba(244, 114, 182, 0.14) 1px, transparent 1px),
        linear-gradient(0deg, rgba(244, 114, 182, 0.10) 1px, transparent 1px),
        linear-gradient(180deg, #120717 0%, #1c0a24 44%, #0a0510 100%) !important;
    background-size: 78px 78px, 78px 78px, auto !important;
    background-position: 0 0, 0 0, 0 0 !important;
    background-attachment: scroll !important;
}

body.light-mode .relaunch-home,
[data-theme="light"] .relaunch-home,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-home {
    background:
        linear-gradient(90deg, rgba(219, 39, 119, 0.09) 1px, transparent 1px),
        linear-gradient(0deg, rgba(219, 39, 119, 0.06) 1px, transparent 1px),
        linear-gradient(180deg, #fff7fb 0%, #fff0f6 48%, #ffffff 100%) !important;
    background-size: 78px 78px, 78px 78px, auto !important;
    background-position: 0 0, 0 0, 0 0 !important;
    background-attachment: scroll !important;
}

/* The crest is a normal, scrolling child of the hero—not a fixed background. */
.relaunch-home > .relaunch-hero {
    position: relative !important;
    overflow: hidden !important;
}

.relaunch-home > .relaunch-hero > .hero-logo-watermark {
    display: block !important;
    position: absolute !important;
    top: 6rem !important;
    left: 50% !important;
    z-index: 0 !important;
    width: min(42vw, 620px) !important;
    height: auto !important;
    margin: 0 !important;
    opacity: 0.16 !important;
    transform: translateX(-50%) !important;
    pointer-events: none !important;
}

.relaunch-home > .relaunch-hero > .relaunch-hero-grid {
    position: relative !important;
    z-index: 1 !important;
}

body.light-mode .relaunch-home > .relaunch-hero > .hero-logo-watermark,
[data-theme="light"] .relaunch-home > .relaunch-hero > .hero-logo-watermark,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-home > .relaunch-hero > .hero-logo-watermark {
    opacity: 0.075 !important;
}

@media (max-width: 760px) {
    .relaunch-home > .relaunch-hero > .hero-logo-watermark {
        top: 7rem !important;
        width: min(78vw, 420px) !important;
        opacity: 0.12 !important;
    }
}

/* Last continuity pass: the grid must remain visible through every homepage section. */
.relaunch-home {
    overflow: visible !important;
    background-repeat: repeat, repeat, no-repeat !important;
    background-clip: border-box !important;
}

.relaunch-home > .relaunch-hero,
.relaunch-home > .relaunch-section {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

.relaunch-home > .relaunch-scene--menu {
    background: rgba(219, 39, 119, 0.055) !important;
}

.relaunch-home > .relaunch-scene--games {
    background: rgba(10, 5, 16, 0.16) !important;
}

.relaunch-home > .relaunch-scene--responsibility {
    background: rgba(255, 255, 255, 0.025) !important;
}

.relaunch-home > .relaunch-scene--membership {
    background: rgba(244, 114, 182, 0.075) !important;
}

.relaunch-home > .relaunch-scene--cta {
    background: rgba(244, 114, 182, 0.025) !important;
}

body.light-mode .relaunch-home > .relaunch-scene--menu,
[data-theme="light"] .relaunch-home > .relaunch-scene--menu,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-home > .relaunch-scene--menu {
    background: rgba(255, 240, 246, 0.46) !important;
}

body.light-mode .relaunch-home > .relaunch-scene--games,
[data-theme="light"] .relaunch-home > .relaunch-scene--games,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-home > .relaunch-scene--games {
    background: rgba(255, 255, 255, 0.26) !important;
}

body.light-mode .relaunch-home > .relaunch-scene--responsibility,
[data-theme="light"] .relaunch-home > .relaunch-scene--responsibility,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-home > .relaunch-scene--responsibility {
    background: rgba(255, 240, 246, 0.30) !important;
}

body.light-mode .relaunch-home > .relaunch-scene--membership,
[data-theme="light"] .relaunch-home > .relaunch-scene--membership,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-home > .relaunch-scene--membership {
    background: rgba(255, 240, 246, 0.48) !important;
}

body.light-mode .relaunch-home > .relaunch-scene--cta,
[data-theme="light"] .relaunch-home > .relaunch-scene--cta,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-home > .relaunch-scene--cta {
    background: rgba(255, 255, 255, 0.22) !important;
}

/* Keep the crest fully inside the page flow and centered in the hero. */
.relaunch-home > .relaunch-hero {
    position: relative !important;
    overflow: visible !important;
    isolation: isolate;
}

.relaunch-home > .relaunch-hero > .hero-logo-watermark {
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, calc(-50% + var(--logo-scroll-shift, 0px))) !important;
    opacity: 0.14 !important;
}

body.light-mode .relaunch-home > .relaunch-hero > .hero-logo-watermark,
[data-theme="light"] .relaunch-home > .relaunch-hero > .hero-logo-watermark,
html:not([data-theme="dark"]):not([data-theme="retro"]) .relaunch-home > .relaunch-hero > .hero-logo-watermark {
    opacity: 0.07 !important;
}

@media (max-width: 760px) {
    .relaunch-home > .relaunch-hero > .hero-logo-watermark {
        top: 52% !important;
        width: min(78vw, 420px) !important;
    }
}

/* Final game-card cleanup: one aligned grid, one predictable hover state. */
.relaunch-scene--games .relaunch-game-grid {
    align-items: stretch !important;
    padding-bottom: 0 !important;
}

.relaunch-scene--games .relaunch-game-card {
    align-self: stretch !important;
    margin-top: 0 !important;
    transform: translateY(0) !important;
    transition: transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease !important;
}

.relaunch-scene--games .relaunch-game-card:hover,
.relaunch-scene--games .relaunch-game-card:focus-visible {
    transform: translateY(-6px) !important;
    border-color: rgba(244, 114, 182, 0.82) !important;
    box-shadow: 0 22px 42px rgba(0, 0, 0, 0.32) !important;
}

/* Keep the scroll reveal aligned as well; the hover rule above takes over on interaction. */
.relaunch-scene--games .relaunch-game-card.js-reveal:not(.revealed) {
    transform: translateY(18px) !important;
}

.relaunch-scene--games .relaunch-game-card.js-reveal.revealed {
    transform: translateY(0) !important;
}

/* The five remote assets are the source of truth for the complete game preview. */
.relaunch-scene--games .relaunch-game-card:nth-child(1) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('https://esv-ochtrup.de/wp-content/themes/esv-ochtrup-theme/assets/bg_eafc_v2.jpg') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(2) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('https://esv-ochtrup.de/wp-content/themes/esv-ochtrup-theme/assets/bg_cs2_v2.jpg') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(3) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('https://esv-ochtrup.de/wp-content/themes/esv-ochtrup-theme/assets/bg_lol_v2.jpg') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(4) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('https://esv-ochtrup.de/wp-content/themes/esv-ochtrup-theme/assets/bg_rl_v2.jpg') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(8) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('https://esv-ochtrup.de/wp-content/themes/esv-ochtrup-theme/assets/bg_aoe2_v2.jpg') !important;
}

/* Remove any legacy section-level grid layers so only the page canvas draws the grid. */
.relaunch-home > .relaunch-hero::before,
.relaunch-home > .relaunch-hero::after,
.relaunch-home > .relaunch-section::before,
.relaunch-home > .relaunch-section::after {
    background-image: none !important;
    background: transparent !important;
}

/* Explicit light-mode guard: keep the white theme independent from the legacy dark defaults. */
html[data-theme="light"],
html[data-theme="light"] body,
body.light-mode {
    background-color: #fff7fb !important;
    color: #241321 !important;
}

html[data-theme="light"] #page,
html[data-theme="light"] .site,
html[data-theme="light"] .site-content,
html[data-theme="light"] .site-main,
html[data-theme="light"] .content-area,
html[data-theme="light"] .entry-content,
body.light-mode #page,
body.light-mode .site,
body.light-mode .site-content,
body.light-mode .site-main,
body.light-mode .content-area,
body.light-mode .entry-content {
    background: transparent !important;
}

html[data-theme="light"] .site-header,
body.light-mode .site-header {
    background: rgba(255, 247, 251, 0.94) !important;
    border-bottom-color: rgba(219, 39, 119, 0.18) !important;
}

html[data-theme="light"] .site-footer,
body.light-mode .site-footer {
    background: #fff7fb !important;
    color: #45324c !important;
}

html[data-theme="light"] .relaunch-home > .relaunch-scene--menu,
html[data-theme="light"] .relaunch-home > .relaunch-scene--games,
html[data-theme="light"] .relaunch-home > .relaunch-scene--responsibility,
html[data-theme="light"] .relaunch-home > .relaunch-scene--membership,
html[data-theme="light"] .relaunch-home > .relaunch-scene--cta,
body.light-mode .relaunch-home > .relaunch-scene--menu,
body.light-mode .relaunch-home > .relaunch-scene--games,
body.light-mode .relaunch-home > .relaunch-scene--responsibility,
body.light-mode .relaunch-home > .relaunch-scene--membership,
body.light-mode .relaunch-home > .relaunch-scene--cta {
    color: #241321 !important;
}

html[data-theme="light"] .relaunch-home h1,
html[data-theme="light"] .relaunch-home h2,
html[data-theme="light"] .relaunch-home h3,
html[data-theme="light"] .relaunch-home h4,
body.light-mode .relaunch-home h1,
body.light-mode .relaunch-home h2,
body.light-mode .relaunch-home h3,
body.light-mode .relaunch-home h4 {
    color: #241321 !important;
}

html[data-theme="light"] .relaunch-home p,
html[data-theme="light"] .relaunch-home li,
body.light-mode .relaunch-home p,
body.light-mode .relaunch-home li {
    color: #45324c !important;
}

html[data-theme="light"] .relaunch-scene--games .relaunch-game-card strong,
html[data-theme="light"] .relaunch-scene--games .relaunch-game-card span,
body.light-mode .relaunch-scene--games .relaunch-game-card strong,
body.light-mode .relaunch-scene--games .relaunch-game-card span {
    color: #ffffff !important;
}

/* Structural final pass: one page-level crest and no legacy grid on the hero section. */
.relaunch-home {
    isolation: isolate !important;
}

.relaunch-home > .hero-logo-watermark {
    display: block !important;
    position: absolute !important;
    top: clamp(17rem, 32vw, 27rem) !important;
    left: 50% !important;
    z-index: 0 !important;
    width: min(42vw, 620px) !important;
    height: auto !important;
    margin: 0 !important;
    opacity: 0.14 !important;
    transform: translate(-50%, calc(-50% + var(--logo-scroll-shift, 0px))) !important;
    pointer-events: none !important;
}

.relaunch-home > .relaunch-hero {
    background: transparent !important;
    background-image: none !important;
    background-color: transparent !important;
}

html[data-theme="dark"] .relaunch-home > .relaunch-hero,
html[data-theme="light"] .relaunch-home > .relaunch-hero,
body.light-mode .relaunch-home > .relaunch-hero {
    background: transparent !important;
    background-image: none !important;
    background-color: transparent !important;
}

html[data-theme="light"] .relaunch-home > .hero-logo-watermark,
body.light-mode .relaunch-home > .hero-logo-watermark {
    opacity: 0.07 !important;
}

@media (max-width: 760px) {
    .relaunch-home > .hero-logo-watermark {
        top: 22rem !important;
        width: min(82vw, 420px) !important;
    }
}

/* Light mode must not fall back to the old local-only image declarations. */
html[data-theme="light"] .relaunch-scene--games .relaunch-game-card:nth-child(1),
body.light-mode .relaunch-scene--games .relaunch-game-card:nth-child(1) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.18), rgba(13, 7, 22, 0.78)), url('https://esv-ochtrup.de/wp-content/themes/esv-ochtrup-theme/assets/bg_eafc_v2.jpg') !important;
}

html[data-theme="light"] .relaunch-scene--games .relaunch-game-card:nth-child(2),
body.light-mode .relaunch-scene--games .relaunch-game-card:nth-child(2) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.18), rgba(13, 7, 22, 0.78)), url('https://esv-ochtrup.de/wp-content/themes/esv-ochtrup-theme/assets/bg_cs2_v2.jpg') !important;
}

html[data-theme="light"] .relaunch-scene--games .relaunch-game-card:nth-child(3),
body.light-mode .relaunch-scene--games .relaunch-game-card:nth-child(3) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.18), rgba(13, 7, 22, 0.78)), url('https://esv-ochtrup.de/wp-content/themes/esv-ochtrup-theme/assets/bg_lol_v2.jpg') !important;
}

html[data-theme="light"] .relaunch-scene--games .relaunch-game-card:nth-child(4),
body.light-mode .relaunch-scene--games .relaunch-game-card:nth-child(4) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.18), rgba(13, 7, 22, 0.78)), url('https://esv-ochtrup.de/wp-content/themes/esv-ochtrup-theme/assets/bg_rl_v2.jpg') !important;
}

html[data-theme="light"] .relaunch-scene--games .relaunch-game-card:nth-child(5),
body.light-mode .relaunch-scene--games .relaunch-game-card:nth-child(5) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.18), rgba(13, 7, 22, 0.78)), url('https://esv-ochtrup.de/wp-content/themes/esv-ochtrup-theme/assets/bg_minecraft_v2.png') !important;
}

html[data-theme="light"] .relaunch-scene--games .relaunch-game-card:nth-child(6),
body.light-mode .relaunch-scene--games .relaunch-game-card:nth-child(6) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.18), rgba(13, 7, 22, 0.78)), url('https://esv-ochtrup.de/wp-content/themes/esv-ochtrup-theme/assets/bg_pokemon_v2.png') !important;
}

html[data-theme="light"] .relaunch-scene--games .relaunch-game-card:nth-child(7),
body.light-mode .relaunch-scene--games .relaunch-game-card:nth-child(7) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.18), rgba(13, 7, 22, 0.78)), url('https://esv-ochtrup.de/wp-content/themes/esv-ochtrup-theme/assets/bg_smash_v3.jpg') !important;
}

html[data-theme="light"] .relaunch-scene--games .relaunch-game-card:nth-child(8),
body.light-mode .relaunch-scene--games .relaunch-game-card:nth-child(8) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.18), rgba(13, 7, 22, 0.78)), url('https://esv-ochtrup.de/wp-content/themes/esv-ochtrup-theme/assets/bg_aoe2_v2.jpg') !important;
}

/* Self-contained asset map for the local preview and the theme package. */
.relaunch-scene--games .relaunch-game-card:nth-child(1),
html[data-theme="light"] .relaunch-scene--games .relaunch-game-card:nth-child(1),
body.light-mode .relaunch-scene--games .relaunch-game-card:nth-child(1) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('assets/bg_eafc_v2.jpg') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(2),
html[data-theme="light"] .relaunch-scene--games .relaunch-game-card:nth-child(2),
body.light-mode .relaunch-scene--games .relaunch-game-card:nth-child(2) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('assets/bg_cs2_v2.jpg') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(3),
html[data-theme="light"] .relaunch-scene--games .relaunch-game-card:nth-child(3),
body.light-mode .relaunch-scene--games .relaunch-game-card:nth-child(3) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('assets/bg_lol_v2.jpg') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(4),
html[data-theme="light"] .relaunch-scene--games .relaunch-game-card:nth-child(4),
body.light-mode .relaunch-scene--games .relaunch-game-card:nth-child(4) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('assets/bg_rl_v2.jpg') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(5),
html[data-theme="light"] .relaunch-scene--games .relaunch-game-card:nth-child(5),
body.light-mode .relaunch-scene--games .relaunch-game-card:nth-child(5) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('assets/bg_minecraft_v2.png') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(6),
html[data-theme="light"] .relaunch-scene--games .relaunch-game-card:nth-child(6),
body.light-mode .relaunch-scene--games .relaunch-game-card:nth-child(6) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('assets/bg_pokemon_v2.png') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(7),
html[data-theme="light"] .relaunch-scene--games .relaunch-game-card:nth-child(7),
body.light-mode .relaunch-scene--games .relaunch-game-card:nth-child(7) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('assets/bg_smash_v3.jpg') !important;
}

.relaunch-scene--games .relaunch-game-card:nth-child(8),
html[data-theme="light"] .relaunch-scene--games .relaunch-game-card:nth-child(8),
body.light-mode .relaunch-scene--games .relaunch-game-card:nth-child(8) {
    background-image: linear-gradient(180deg, rgba(13, 7, 22, 0.16), rgba(13, 7, 22, 0.90)), url('assets/bg_aoe2_v2.jpg') !important;
}

/* Smooth scene transitions: the page canvas owns the grid, scenes only add soft fades. */
.relaunch-home > .relaunch-scene,
html[data-theme="dark"] .relaunch-home > .relaunch-scene,
html[data-theme="light"] .relaunch-home > .relaunch-scene,
body.light-mode .relaunch-home > .relaunch-scene {
    overflow: visible !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border-top-color: transparent !important;
    border-bottom-color: transparent !important;
}

.relaunch-home > .relaunch-scene::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    display: block !important;
    pointer-events: none !important;
    background: linear-gradient(180deg, transparent 0%, rgba(244, 114, 182, 0.055) 48%, transparent 100%) !important;
}

.relaunch-home > .relaunch-scene::after {
    content: none !important;
}

html[data-theme="light"] .relaunch-home > .relaunch-scene::before,
body.light-mode .relaunch-home > .relaunch-scene::before {
    background: linear-gradient(180deg, transparent 0%, rgba(219, 39, 119, 0.065) 48%, transparent 100%) !important;
}

.relaunch-home > .relaunch-scene > .esv-container {
    position: relative !important;
    z-index: 1 !important;
}

/* One rounded button system for header, hero, CTA, forms and both color modes. */
button,
.btn,
.button,
.nav-cta,
.esv-btn-primary,
.esv-btn-secondary,
.btn-primary-hero,
.btn-secondary-hero,
.gb-button,
.wp-element-button,
.wp-block-button__link,
input[type="button"],
input[type="submit"],
input[type="reset"],
.theme-toggle-btn,
.preview-theme {
    border-radius: 999px !important;
}

.btn,
.button,
.nav-cta,
.esv-btn-primary,
.esv-btn-secondary,
.btn-primary-hero,
.btn-secondary-hero,
.gb-button,
.wp-element-button,
.wp-block-button__link,
input[type="button"],
input[type="submit"],
input[type="reset"] {
    transition: background-color 220ms ease, background 220ms ease, border-color 220ms ease, color 220ms ease, box-shadow 220ms ease, transform 220ms ease !important;
}

.btn-primary,
.btn-primary-hero,
.esv-btn-primary,
.nav-cta,
.gb-button,
.wp-element-button,
.wp-block-button__link,
input[type="submit"] {
    background: linear-gradient(135deg, #ec2f6b, #f43f5e) !important;
    background-color: #ec2f6b !important;
    border: 1px solid transparent !important;
    color: #ffffff !important;
    box-shadow: 0 10px 24px rgba(236, 47, 107, 0.20) !important;
}

.btn-primary:hover,
.btn-primary-hero:hover,
.esv-btn-primary:hover,
.nav-cta:hover,
.gb-button:hover,
.wp-element-button:hover,
.wp-block-button__link:hover,
input[type="submit"]:hover {
    background: linear-gradient(135deg, #d92360, #e73350) !important;
    background-color: #d92360 !important;
    border-color: transparent !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
}

.btn-outline,
.btn-secondary,
.btn-secondary-hero,
.esv-btn-secondary,
.relaunch-actions .btn:not(.btn-primary),
.relaunch-cta .relaunch-actions .btn:first-child {
    background: rgba(32, 18, 39, 0.92) !important;
    background-color: rgba(32, 18, 39, 0.92) !important;
    border: 1px solid rgba(244, 114, 182, 0.42) !important;
    color: #ffffff !important;
    box-shadow: 0 8px 20px rgba(10, 5, 16, 0.16) !important;
}

.btn-outline:hover,
.btn-secondary:hover,
.btn-secondary-hero:hover,
.esv-btn-secondary:hover,
.relaunch-actions .btn:not(.btn-primary):hover,
.relaunch-cta .relaunch-actions .btn:first-child:hover {
    background: rgba(69, 24, 68, 0.96) !important;
    background-color: rgba(69, 24, 68, 0.96) !important;
    border-color: rgba(244, 114, 182, 0.76) !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
}

html[data-theme="light"] .btn-outline,
html[data-theme="light"] .btn-secondary,
html[data-theme="light"] .btn-secondary-hero,
html[data-theme="light"] .esv-btn-secondary,
html[data-theme="light"] .relaunch-actions .btn:not(.btn-primary),
html[data-theme="light"] .relaunch-cta .relaunch-actions .btn:first-child,
body.light-mode .btn-outline,
body.light-mode .btn-secondary,
body.light-mode .btn-secondary-hero,
body.light-mode .esv-btn-secondary,
body.light-mode .relaunch-actions .btn:not(.btn-primary),
body.light-mode .relaunch-cta .relaunch-actions .btn:first-child {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border-color: rgba(219, 39, 119, 0.36) !important;
    color: #241321 !important;
    box-shadow: 0 8px 20px rgba(93, 20, 64, 0.10) !important;
}

html[data-theme="light"] .btn-outline:hover,
html[data-theme="light"] .btn-secondary:hover,
html[data-theme="light"] .btn-secondary-hero:hover,
html[data-theme="light"] .esv-btn-secondary:hover,
html[data-theme="light"] .relaunch-actions .btn:not(.btn-primary):hover,
html[data-theme="light"] .relaunch-cta .relaunch-actions .btn:first-child:hover,
body.light-mode .btn-outline:hover,
body.light-mode .btn-secondary:hover,
body.light-mode .btn-secondary-hero:hover,
body.light-mode .esv-btn-secondary:hover,
body.light-mode .relaunch-actions .btn:not(.btn-primary):hover,
body.light-mode .relaunch-cta .relaunch-actions .btn:first-child:hover {
    background: #fff0f6 !important;
    background-color: #fff0f6 !important;
    border-color: rgba(219, 39, 119, 0.64) !important;
    color: #241321 !important;
}

.theme-toggle-btn,
.preview-theme {
    background: rgba(32, 18, 39, 0.92) !important;
    background-color: rgba(32, 18, 39, 0.92) !important;
    border: 1px solid rgba(244, 114, 182, 0.48) !important;
    color: #ffffff !important;
}

html[data-theme="light"] .theme-toggle-btn,
html[data-theme="light"] .preview-theme,
body.light-mode .theme-toggle-btn,
body.light-mode .preview-theme {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border-color: rgba(219, 39, 119, 0.38) !important;
    color: #241321 !important;
}

/* Specificity lock: legacy theme rules must not reintroduce blue/black/green button variants. */
html[data-theme="dark"] .btn.btn-primary,
html[data-theme="light"] .btn.btn-primary,
body.light-mode .btn.btn-primary,
html[data-theme="dark"] .btn-primary-hero,
html[data-theme="light"] .btn-primary-hero,
body.light-mode .btn-primary-hero,
html[data-theme="dark"] .esv-btn-primary,
html[data-theme="light"] .esv-btn-primary,
body.light-mode .esv-btn-primary,
html[data-theme="dark"] .nav-cta,
html[data-theme="light"] .nav-cta,
body.light-mode .nav-cta {
    background: linear-gradient(135deg, #ec2f6b, #f43f5e) !important;
    background-color: #ec2f6b !important;
    border-color: transparent !important;
    color: #ffffff !important;
}

html[data-theme="dark"] .btn.btn-outline,
html[data-theme="dark"] .btn.btn-secondary,
html[data-theme="dark"] .btn.btn-secondary-hero,
html[data-theme="dark"] .esv-btn-secondary,
html[data-theme="light"] .btn.btn-outline,
html[data-theme="light"] .btn.btn-secondary,
html[data-theme="light"] .btn.btn-secondary-hero,
html[data-theme="light"] .esv-btn-secondary,
body.light-mode .btn.btn-outline,
body.light-mode .btn.btn-secondary,
body.light-mode .btn.btn-secondary-hero,
body.light-mode .esv-btn-secondary {
    border-radius: 999px !important;
}

html[data-theme="dark"] .btn.btn-outline,
html[data-theme="dark"] .btn.btn-secondary,
html[data-theme="dark"] .btn.btn-secondary-hero,
html[data-theme="dark"] .esv-btn-secondary {
    background: rgba(32, 18, 39, 0.92) !important;
    background-color: rgba(32, 18, 39, 0.92) !important;
    border-color: rgba(244, 114, 182, 0.42) !important;
    color: #ffffff !important;
}

html[data-theme="light"] .btn.btn-outline,
html[data-theme="light"] .btn.btn-secondary,
html[data-theme="light"] .btn.btn-secondary-hero,
html[data-theme="light"] .esv-btn-secondary,
body.light-mode .btn.btn-outline,
body.light-mode .btn.btn-secondary,
body.light-mode .btn.btn-secondary-hero,
body.light-mode .esv-btn-secondary {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border-color: rgba(219, 39, 119, 0.36) !important;
    color: #241321 !important;
}

/* The crest is a page-wide, scroll-linked watermark. Fixed positioning keeps it
   visible across every section; the JS shift gives it a gentle parallax motion. */
.relaunch-home > .hero-logo-watermark {
    position: fixed !important;
    top: 50vh !important;
    left: 50% !important;
    z-index: 0 !important;
    width: min(42vw, 620px) !important;
    height: auto !important;
    margin: 0 !important;
    transform: translate(-50%, calc(-50% - var(--logo-scroll-shift, 0px))) !important;
    pointer-events: none !important;
    will-change: transform !important;
}

@media (max-width: 760px) {
    .relaunch-home > .hero-logo-watermark {
        width: min(82vw, 420px) !important;
    }
}

/* With the copy removed, the final CTA becomes a compact horizontal action bar. */
.relaunch-scene--cta .relaunch-cta {
    min-height: 0 !important;
    padding: clamp(2rem, 4vw, 3rem) !important;
}

/* The entry section uses the same canvas tone as the rest of the page. */
.relaunch-home > .relaunch-scene--menu::before {
    background: transparent !important;
}

html[data-theme="light"] body.home .relaunch-home > .relaunch-scene--menu::before,
body.light-mode .relaunch-home > .relaunch-scene--menu::before {
    background: transparent !important;
}

/* One stable page canvas prevents a lighter hero band from appearing while scrolling. */
html[data-theme="dark"] body.home .relaunch-home,
html[data-theme="dark"] body.light-mode-preview .relaunch-home {
    background-color: #16091d !important;
    background-image:
        linear-gradient(90deg, rgba(244, 114, 182, 0.13) 1px, transparent 1px),
        linear-gradient(0deg, rgba(244, 114, 182, 0.095) 1px, transparent 1px) !important;
    background-size: 78px 78px, 78px 78px !important;
    background-position: 0 0, 0 0 !important;
}

html[data-theme="light"] body.home .relaunch-home,
html[data-theme="light"] body.light-mode-preview .relaunch-home,
body.light-mode .relaunch-home {
    background-color: #fff6fa !important;
    background-image:
        linear-gradient(90deg, rgba(219, 39, 119, 0.085) 1px, transparent 1px),
        linear-gradient(0deg, rgba(219, 39, 119, 0.055) 1px, transparent 1px) !important;
    background-size: 78px 78px, 78px 78px !important;
    background-position: 0 0 !important;
}

html[data-theme="dark"] body.home .relaunch-home > .relaunch-scene,
html[data-theme="light"] body.home .relaunch-home > .relaunch-scene,
body.light-mode .relaunch-home > .relaunch-scene {
    background: transparent !important;
    background-image: none !important;
    background-color: transparent !important;
}

/* Desktop stays unchanged; on mobile the navigation gets its own second row. */
.mobile-quick-links {
    display: none;
}

@media (max-width: 760px) {
    body:has(.mobile-quick-links) {
        padding-top: 112px !important;
    }

    .site-header {
        height: 112px !important;
        display: block !important;
    }

    .site-header .header-inner {
        height: 64px;
        box-sizing: border-box;
        padding: 0 1rem;
    }

    .site-header .main-nav .nav-list,
    .site-header .main-nav .nav-cta {
        display: none !important;
    }

    .mobile-quick-links {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.18rem;
        height: 48px;
        box-sizing: border-box;
        padding: 0 0.4rem;
        overflow-x: auto;
        scrollbar-width: none;
        border-top: 1px solid rgba(244, 114, 182, 0.18);
        background: rgba(16, 7, 22, 0.52);
    }

    .mobile-quick-links::-webkit-scrollbar {
        display: none;
    }

    .mobile-quick-links a {
        flex: 1 1 0;
        min-width: 0;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 30px;
        padding: 0.3rem 0.2rem;
        border: 1px solid rgba(244, 114, 182, 0.28);
        border-radius: 999px;
        color: #ffffff !important;
        font-size: 0.64rem;
        font-weight: 700;
        line-height: 1;
        text-decoration: none !important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    html[data-theme="light"] .mobile-quick-links,
    body.light-mode .mobile-quick-links {
        border-top-color: rgba(219, 39, 119, 0.18);
        background: rgba(255, 246, 250, 0.92);
    }

    html[data-theme="light"] .mobile-quick-links a,
    body.light-mode .mobile-quick-links a {
        border-color: rgba(219, 39, 119, 0.24);
        color: #241321 !important;
    }

    .preview-header .mobile-quick-links {
        position: static;
        width: 100%;
    }

}

/* Keep the five desktop entry cards content-sized instead of stretching empty. */
.relaunch-scene--menu .relaunch-path-grid {
    align-items: start !important;
}

.relaunch-scene--menu .relaunch-path-card {
    min-height: 0 !important;
    height: auto !important;
    align-self: start !important;
}

/* Compact mobile rhythm: two columns for entry and games, with the stats
   reduced to a single number/label line. */
@media (max-width: 760px) {
    .relaunch-home > .relaunch-hero .relaunch-actions {
        align-items: stretch !important;
    }

    .relaunch-home > .relaunch-hero .relaunch-actions .btn {
        box-sizing: border-box !important;
        width: 100% !important;
        height: 48px !important;
        min-height: 48px !important;
        padding: 0 1rem !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .relaunch-home > .relaunch-scene--menu,
    .relaunch-home > .relaunch-scene--games {
        padding-top: 1.6rem !important;
        padding-bottom: 1.6rem !important;
    }

    .relaunch-hero-panel {
        padding: 0.6rem !important;
    }

    .relaunch-panel-head {
        margin-bottom: 0.55rem !important;
    }

    .relaunch-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 0.45rem !important;
    }

    .relaunch-stat-grid > div {
        min-height: 0 !important;
        padding: 0.55rem 0.6rem !important;
        display: flex !important;
        align-items: baseline !important;
        gap: 0.4rem !important;
    }

    .relaunch-stat-grid strong {
        flex: 0 0 auto;
        font-size: 1.45rem !important;
        line-height: 1 !important;
    }

    .relaunch-stat-grid span {
        min-width: 0;
        font-size: 0.72rem !important;
        line-height: 1.15 !important;
    }

    .relaunch-scene--menu .relaunch-path-grid,
    .relaunch-scene--games .relaunch-game-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 0.6rem !important;
    }

    .relaunch-scene--menu .relaunch-path-grid {
        align-items: start !important;
    }

    .relaunch-scene--menu .relaunch-path-card {
        min-height: 0 !important;
        height: auto !important;
        align-self: start !important;
        padding: 0.7rem 0.7rem 0.75rem !important;
    }

    .relaunch-scene--menu .relaunch-path-card > span {
        font-size: 0.64rem !important;
        line-height: 1.1 !important;
    }

    .relaunch-scene--menu .relaunch-path-card h3 {
        margin: 0.25rem 0 0.2rem !important;
        font-size: 0.92rem !important;
        line-height: 1.1 !important;
    }

    .relaunch-scene--menu .relaunch-path-card p {
        font-size: 0.7rem !important;
        line-height: 1.25 !important;
    }

    .relaunch-scene--games .relaunch-game-card {
        min-height: 0 !important;
        height: 70px !important;
        padding: 0.75rem !important;
    }

    .relaunch-scene--games .relaunch-game-card strong {
        font-size: 0.86rem !important;
        line-height: 1.15 !important;
    }

    .relaunch-scene--games .relaunch-game-card span {
        margin-top: 0.25rem !important;
        font-size: 0.68rem !important;
        line-height: 1.18 !important;
    }
}

/* Keep Vereinsupdates visually as cards. The legacy light-mode button rule
   also targets every <button>, including the clickable news cards. */
.relaunch-news-hub .relaunch-hub-item,
html[data-theme="light"] .relaunch-news-hub .relaunch-hub-item,
body.light-mode .relaunch-news-hub .relaunch-hub-item {
    appearance: none !important;
    -webkit-appearance: none !important;
    box-sizing: border-box !important;
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 1rem !important;
    border: 1px solid rgba(244, 114, 182, 0.26) !important;
    border-radius: 12px !important;
    background: rgba(39, 18, 45, 0.72) !important;
    color: var(--text) !important;
    box-shadow: none !important;
    font: inherit !important;
    line-height: inherit !important;
    text-align: left !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

.relaunch-news-hub .relaunch-hub-item:hover,
.relaunch-news-hub .relaunch-hub-item:focus-visible {
    background: rgba(49, 22, 57, 0.86) !important;
    border-color: var(--primary) !important;
    box-shadow: 0 12px 28px rgba(219, 39, 119, 0.12) !important;
}

html[data-theme="light"] .relaunch-news-hub .relaunch-hub-item,
body.light-mode .relaunch-news-hub .relaunch-hub-item {
    background: rgba(255, 255, 255, 0.82) !important;
    border-color: rgba(219, 39, 119, 0.2) !important;
    color: #241321 !important;
}

html[data-theme="light"] .relaunch-news-hub .relaunch-hub-item:hover,
html[data-theme="light"] .relaunch-news-hub .relaunch-hub-item:focus-visible,
body.light-mode .relaunch-news-hub .relaunch-hub-item:hover,
body.light-mode .relaunch-news-hub .relaunch-hub-item:focus-visible {
    background: #fff7fb !important;
    border-color: rgba(219, 39, 119, 0.52) !important;
}

/* Every mobile quick link gets the same grid track, including Aktuelles. */
@media (max-width: 760px) {
    .theme-switcher-wrapper {
        position: fixed !important;
        top: 12px !important;
        right: 12px !important;
        left: auto !important;
        width: auto !important;
        margin: 0 !important;
        transform: none !important;
        z-index: 1100 !important;
    }

    .mobile-quick-links {
        display: grid !important;
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
        gap: 0.18rem !important;
    }

    .mobile-quick-links a {
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        flex: none !important;
        box-sizing: border-box !important;
    }
}
