/*
 * Markus Kirchmair — Dark Cinematic Edition
 * A restrained editorial layer over the established information architecture.
 */

:root {
    color-scheme: dark;
    --bg-color: #070809;
    --text-main: #f1efe9;
    --text-muted: #9da3a3;
    --accent-blue: #60dce0;
    --mk-black: #070809;
    --mk-night: #0b0d0f;
    --mk-surface: #101316;
    --mk-surface-2: #15191c;
    --mk-ivory: #f1efe9;
    --mk-muted: #9da3a3;
    --mk-line: rgba(241, 239, 233, 0.14);
    --mk-line-strong: rgba(241, 239, 233, 0.28);
    --mk-cyan: #60dce0;
    --mk-coral: #ff735c;
    --mk-lime: #d8f26a;
    --mk-shadow: 0 24px 80px rgba(0, 0, 0, 0.34);
}

html,
body.theme-cinematic {
    background: var(--mk-black) !important;
    color: var(--mk-ivory) !important;
}

body.theme-cinematic {
    background-image:
        radial-gradient(circle at 78% 8%, rgba(96, 220, 224, 0.06), transparent 31rem),
        radial-gradient(circle at 8% 48%, rgba(255, 115, 92, 0.045), transparent 28rem) !important;
}

body.theme-cinematic::before {
    opacity: 0.16;
    mix-blend-mode: soft-light;
}

body.theme-cinematic h1,
body.theme-cinematic h2,
body.theme-cinematic h3,
body.theme-cinematic h4,
body.theme-cinematic strong {
    color: var(--mk-ivory);
}

body.theme-cinematic p,
body.theme-cinematic li,
body.theme-cinematic figcaption {
    color: var(--mk-muted);
}

body.theme-cinematic a {
    color: inherit;
}

body.theme-cinematic .label,
body.theme-cinematic [class*="eyebrow"] {
    color: var(--mk-cyan) !important;
}

body.theme-cinematic ::selection {
    background: var(--mk-cyan);
    color: var(--mk-black);
}

body.theme-cinematic :focus-visible {
    outline-color: var(--mk-cyan);
}

/* Header */
body.theme-cinematic .header {
    top: var(--notice-height, 0px);
    width: min(1460px, calc(100% - 28px));
    height: 72px;
    margin: 14px;
    padding-inline: clamp(18px, 3vw, 42px);
    border: 1px solid var(--mk-line);
    border-radius: 3px;
    background: rgba(7, 8, 9, 0.68) !important;
    box-shadow: 0 12px 42px rgba(0, 0, 0, 0.22);
    backdrop-filter: blur(18px) saturate(125%);
    -webkit-backdrop-filter: blur(18px) saturate(125%);
}

body.theme-cinematic .header.scrolled {
    background: rgba(7, 8, 9, 0.9) !important;
    border-color: var(--mk-line-strong);
}

body.theme-cinematic .brand {
    color: var(--mk-ivory) !important;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    width: fit-content;
    line-height: 1;
    letter-spacing: 0;
}

body.theme-cinematic .brand::after {
    content: none !important;
}

body.theme-cinematic .brand-mark {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: -0.08em;
}

body.theme-cinematic .brand-name {
    color: rgba(241, 239, 233, 0.72);
    font-size: 0.61rem;
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

body.theme-cinematic .nav-link,
body.theme-cinematic .lang-current,
body.theme-cinematic .mail-icon-btn {
    color: rgba(241, 239, 233, 0.76) !important;
}

body.theme-cinematic .nav-link::after,
body.theme-cinematic .nav-link.active::after {
    background: var(--mk-cyan) !important;
}

body.theme-cinematic .nav-link:hover,
body.theme-cinematic .nav-link.active {
    color: var(--mk-ivory) !important;
}

body.theme-cinematic .lang-dropdown,
body.theme-cinematic .mobile-menu-overlay {
    background: rgba(7, 8, 9, 0.97) !important;
    border-color: var(--mk-line) !important;
}

body.theme-cinematic .lang-dropdown a,
body.theme-cinematic .mobile-menu-link,
body.theme-cinematic .mobile-lang-link {
    color: var(--mk-ivory) !important;
}

body.theme-cinematic .burger-bar {
    background: var(--mk-ivory) !important;
}

body.theme-cinematic #cursor {
    background: var(--mk-cyan);
}

/* Fullscreen video heroes */
body.theme-cinematic .has-cinematic-video {
    position: relative !important;
    isolation: isolate;
    width: 100% !important;
    min-height: 100svh !important;
    height: auto !important;
    display: flex !important;
    align-items: flex-end !important;
    overflow: hidden !important;
    padding-top: 112px !important;
    background-color: var(--mk-black) !important;
    background-image: none !important;
    color: var(--mk-ivory) !important;
}

body.theme-cinematic .cinematic-hero-media {
    position: absolute;
    inset: 0;
    z-index: -2;
    overflow: hidden;
    background: var(--mk-night);
}

body.theme-cinematic .cinematic-hero-video {
    position: absolute;
    inset: -2%;
    width: 104%;
    max-width: none;
    height: 104%;
    object-fit: cover;
    opacity: 0;
    filter: brightness(0.64) saturate(0.74) contrast(1.14);
    transform: scale(1.018);
    transition: opacity 1.35s ease;
}

body.theme-cinematic .cinematic-hero-video.is-active {
    opacity: 1;
}

body.theme-cinematic .cinematic-hero-veil {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(4, 5, 6, 0.9) 0%, rgba(4, 5, 6, 0.58) 46%, rgba(4, 5, 6, 0.22) 78%, rgba(4, 5, 6, 0.48) 100%),
        linear-gradient(180deg, rgba(4, 5, 6, 0.54) 0%, transparent 30%, rgba(4, 5, 6, 0.38) 68%, rgba(4, 5, 6, 0.88) 100%);
}

body.theme-cinematic .cinematic-hero-lines {
    position: absolute;
    inset: 0;
    opacity: 0.34;
    background-image:
        repeating-linear-gradient(
            to bottom,
            rgba(255, 255, 255, 0.045) 0,
            rgba(255, 255, 255, 0.045) 1px,
            transparent 1px,
            transparent 5px
        ),
        linear-gradient(90deg, transparent 49.94%, rgba(255, 255, 255, 0.08) 50%, transparent 50.06%);
    mix-blend-mode: overlay;
    pointer-events: none;
}

body.theme-cinematic .cinematic-hero-meta {
    position: absolute;
    right: clamp(24px, 5vw, 80px);
    bottom: clamp(22px, 4vw, 54px);
    z-index: 8;
    display: flex;
    align-items: center;
    gap: 20px;
    color: rgba(241, 239, 233, 0.62);
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    line-height: 1;
    text-transform: uppercase;
}

body.theme-cinematic .cinematic-hero-meta span + span {
    padding-left: 20px;
    border-left: 1px solid var(--mk-line-strong);
}

body.theme-cinematic .has-cinematic-video > :not(.cinematic-hero-media):not(.cinematic-hero-meta) {
    position: relative;
    z-index: 3;
}

body.theme-cinematic .has-cinematic-video h1,
body.theme-cinematic .has-cinematic-video h1 span,
body.theme-cinematic .has-cinematic-video .hero-title,
body.theme-cinematic .has-cinematic-video .font-serif,
body.theme-cinematic .has-cinematic-video strong {
    color: var(--mk-ivory) !important;
    -webkit-text-fill-color: currentColor !important;
    background: none !important;
    text-shadow: 0 4px 34px rgba(0, 0, 0, 0.38);
}

body.theme-cinematic .has-cinematic-video p,
body.theme-cinematic .has-cinematic-video .lead,
body.theme-cinematic .has-cinematic-video .hero-lead,
body.theme-cinematic .has-cinematic-video .hero-sub p {
    color: rgba(241, 239, 233, 0.76) !important;
}

body.theme-cinematic .has-cinematic-video .container {
    width: min(1320px, calc(100% - clamp(40px, 9vw, 144px)));
    margin-inline: auto;
    padding-top: 0 !important;
    padding-bottom: clamp(92px, 11vh, 140px) !important;
}

body.theme-cinematic #hero-container.has-cinematic-video {
    min-height: 100svh !important;
}

body.theme-cinematic #hero-container.has-cinematic-video #orbCanvas {
    z-index: 1;
    opacity: 0.12;
    mix-blend-mode: screen;
}

body.theme-cinematic #hero-container.has-cinematic-video .hero-overlay {
    width: min(1320px, calc(100% - clamp(40px, 9vw, 144px)));
    margin-inline: auto;
    padding: 0 0 clamp(96px, 13vh, 150px) !important;
    align-items: flex-end;
}

body.theme-cinematic #hero-container .hero-text-wrapper {
    max-width: 920px;
}

body.theme-cinematic #hero-container .hero-title {
    max-width: 920px;
    font-size: clamp(4.25rem, 9vw, 9.6rem) !important;
    letter-spacing: -0.065em;
    line-height: 0.82;
}

body.theme-cinematic #hero-container .hero-sub {
    max-width: 650px;
}

body.theme-cinematic #hero-container .press-logos {
    opacity: 0.78;
}

body.theme-cinematic .mk-hero.has-cinematic-video .mk-hero-grid {
    grid-template-columns: minmax(0, 760px) 1fr;
    align-items: end;
}

body.theme-cinematic .mk-hero.has-cinematic-video .mk-portrait-wrap {
    visibility: hidden;
}

body.theme-cinematic .mk-hero.has-cinematic-video h1,
body.theme-cinematic .coach-hero.has-cinematic-video h1,
body.theme-cinematic .vortrag-hero.has-cinematic-video h1,
body.theme-cinematic .ws-hero.has-cinematic-video h1,
body.theme-cinematic .books-hero.has-cinematic-video h1,
body.theme-cinematic .hero.has-cinematic-video h1 {
    max-width: 950px;
    margin-bottom: 1.4rem;
    font-family: var(--font-display);
    font-size: clamp(3.8rem, 8vw, 8.5rem) !important;
    font-weight: 400 !important;
    letter-spacing: -0.06em !important;
    line-height: 0.9 !important;
}

body.theme-cinematic .books-hero.has-cinematic-video,
body.theme-cinematic .hero.has-cinematic-video {
    text-align: left !important;
}

body.theme-cinematic .books-hero.has-cinematic-video .container,
body.theme-cinematic .hero.has-cinematic-video .container {
    margin-inline: auto;
    text-align: left !important;
}

body.theme-cinematic .has-cinematic-video .btn-primary,
body.theme-cinematic .has-cinematic-video .ws-btn-primary,
body.theme-cinematic .has-cinematic-video button {
    border-color: var(--mk-ivory) !important;
    background: var(--mk-ivory) !important;
    color: var(--mk-black) !important;
}

body.theme-cinematic .has-cinematic-video .btn-outline,
body.theme-cinematic .has-cinematic-video .ws-btn-outline {
    border-color: var(--mk-line-strong) !important;
    background: rgba(7, 8, 9, 0.28) !important;
    color: var(--mk-ivory) !important;
    backdrop-filter: blur(10px);
}

body.theme-cinematic .has-cinematic-video .hero-badge,
body.theme-cinematic .has-cinematic-video .ws-hero-badge {
    border-color: rgba(96, 220, 224, 0.38) !important;
    background: rgba(7, 8, 9, 0.38) !important;
    color: var(--mk-cyan) !important;
}

/* Dark editorial content surface */
body.theme-cinematic main,
body.theme-cinematic .section-padding,
body.theme-cinematic .mk-section,
body.theme-cinematic .coach-section,
body.theme-cinematic .ws-section,
body.theme-cinematic .section-gray,
body.theme-cinematic section[style*="background: #fff"],
body.theme-cinematic section[style*="background: white"],
body.theme-cinematic section[style*="background: #f9f9fb"],
body.theme-cinematic section[style*="background: #f8fafc"] {
    background-color: var(--mk-night) !important;
    background-image: none !important;
    color: var(--mk-ivory) !important;
}

body.theme-cinematic section:nth-of-type(even):not(.has-cinematic-video),
body.theme-cinematic .ws-section-light,
body.theme-cinematic .ws-section-white {
    background-color: var(--mk-black) !important;
}

body.theme-cinematic .container {
    position: relative;
}

body.theme-cinematic .service-card,
body.theme-cinematic .berg-card,
body.theme-cinematic .degree-card,
body.theme-cinematic .books-card,
body.theme-cinematic .book-card,
body.theme-cinematic .feature-card,
body.theme-cinematic .ws-card,
body.theme-cinematic .ws-goal-card,
body.theme-cinematic .kw-promo-card,
body.theme-cinematic article {
    border-color: var(--mk-line) !important;
    background-color: var(--mk-surface) !important;
    background-image: none !important;
    box-shadow: none !important;
}

body.theme-cinematic .service-card:hover,
body.theme-cinematic .berg-card:hover,
body.theme-cinematic .degree-card:hover,
body.theme-cinematic .books-card:hover,
body.theme-cinematic .book-card:hover,
body.theme-cinematic .feature-card:hover,
body.theme-cinematic .ws-card:hover,
body.theme-cinematic article:hover {
    border-color: var(--mk-line-strong) !important;
    background-color: var(--mk-surface-2) !important;
    box-shadow: var(--mk-shadow) !important;
}

body.theme-cinematic img:not(.press-logo):not([class*="logo"]) {
    filter: saturate(0.72) contrast(1.04) brightness(0.9);
}

body.theme-cinematic hr,
body.theme-cinematic [class*="divider"] {
    border-color: var(--mk-line) !important;
}

body.theme-cinematic input,
body.theme-cinematic textarea,
body.theme-cinematic select {
    border-color: var(--mk-line-strong) !important;
    background: var(--mk-surface) !important;
    color: var(--mk-ivory) !important;
}

body.theme-cinematic input::placeholder,
body.theme-cinematic textarea::placeholder {
    color: #777e7e;
}

body.theme-cinematic .cta-section,
body.theme-cinematic .ws-cta-section,
body.theme-cinematic .book-cta-final,
body.theme-cinematic footer {
    border-top: 1px solid var(--mk-line);
    background: #050606 !important;
    color: var(--mk-ivory) !important;
}

body.theme-cinematic footer p,
body.theme-cinematic footer li,
body.theme-cinematic footer span,
body.theme-cinematic footer a,
body.theme-cinematic footer strong {
    color: rgba(241, 239, 233, 0.68) !important;
}

body.theme-cinematic footer a:hover {
    color: var(--mk-cyan) !important;
}

body.theme-cinematic .press-logos img,
body.theme-cinematic .press-logos-mobile-section img {
    opacity: 0.7;
    filter: grayscale(1) brightness(1.8) contrast(0.65) !important;
}

@media (max-width: 960px) {
    body.theme-cinematic .header {
        width: calc(100% - 20px);
        height: 64px;
        margin: 10px;
    }

    body.theme-cinematic .has-cinematic-video {
        min-height: 100svh !important;
        padding-top: 96px !important;
    }

    body.theme-cinematic .has-cinematic-video .container,
    body.theme-cinematic #hero-container.has-cinematic-video .hero-overlay {
        width: min(100% - 40px, 760px);
        padding-bottom: 100px !important;
    }

    body.theme-cinematic #hero-container .hero-title,
    body.theme-cinematic .mk-hero.has-cinematic-video h1,
    body.theme-cinematic .coach-hero.has-cinematic-video h1,
    body.theme-cinematic .vortrag-hero.has-cinematic-video h1,
    body.theme-cinematic .ws-hero.has-cinematic-video h1,
    body.theme-cinematic .books-hero.has-cinematic-video h1,
    body.theme-cinematic .hero.has-cinematic-video h1 {
        font-size: clamp(3.25rem, 15vw, 6.4rem) !important;
    }

    body.theme-cinematic .mk-hero.has-cinematic-video .mk-hero-grid {
        grid-template-columns: 1fr;
    }

    body.theme-cinematic .mk-hero.has-cinematic-video .degree-grid,
    body.theme-cinematic .mk-hero.has-cinematic-video .mk-portrait-wrap,
    body.theme-cinematic #hero-container .press-logos,
    body.theme-cinematic #hero-container .mobile-orb-nav {
        display: none !important;
    }

    body.theme-cinematic .cinematic-hero-meta {
        left: 20px;
        right: 20px;
        bottom: 26px;
        justify-content: space-between;
        font-size: 0.58rem;
    }
}

@media (max-width: 600px) {
    body.theme-cinematic .has-cinematic-video {
        align-items: flex-end !important;
    }

    body.theme-cinematic .has-cinematic-video .container,
    body.theme-cinematic #hero-container.has-cinematic-video .hero-overlay {
        width: calc(100% - 32px);
        padding-bottom: 84px !important;
    }

    body.theme-cinematic .cinematic-hero-veil {
        background:
            linear-gradient(180deg, rgba(4, 5, 6, 0.62) 0%, rgba(4, 5, 6, 0.16) 28%, rgba(4, 5, 6, 0.78) 72%, rgba(4, 5, 6, 0.96) 100%),
            linear-gradient(90deg, rgba(4, 5, 6, 0.4), rgba(4, 5, 6, 0.12));
    }

    body.theme-cinematic .cinematic-hero-video {
        inset: 0;
        width: 100%;
        height: 100%;
        transform: none;
    }

    body.theme-cinematic .cinematic-hero-meta span:last-child {
        display: none;
    }
}

/* Profile content begins below the fullscreen KI-rchmair hero. */
body.theme-cinematic .mk-profile-intro {
    padding: clamp(82px, 10vw, 145px) 0 !important;
    border-top: 1px solid var(--mk-line) !important;
    background: #0c0e0f !important;
}

body.theme-cinematic .mk-profile-intro .mk-profile-copy .lead {
    max-width: 780px;
    margin: 0 0 1.6rem;
    color: rgba(232, 231, 226, 0.84) !important;
    font-size: clamp(1.15rem, 1.7vw, 1.45rem);
    line-height: 1.55;
}

body.theme-cinematic .mk-profile-intro .mk-profile-copy > p:not(.lead) {
    max-width: 780px;
    margin: 0;
    color: var(--mk-muted) !important;
    font-size: 1rem;
    line-height: 1.75 !important;
}

body.theme-cinematic .mk-profile-intro .mk-portrait-wrap {
    visibility: visible !important;
    border: 1px solid var(--mk-line);
    border-radius: 2px !important;
    background: var(--mk-surface) !important;
    box-shadow: none !important;
}

body.theme-cinematic .mk-profile-intro .degree-grid {
    margin-top: clamp(52px, 7vw, 92px);
}

body.theme-cinematic .mk-profile-intro .degree-card-front,
body.theme-cinematic .mk-profile-intro .degree-card-back {
    border: 1px solid var(--mk-line) !important;
    border-radius: 2px !important;
    background: var(--mk-surface) !important;
    box-shadow: none !important;
}

body.theme-cinematic .mk-profile-intro .degree-card-back {
    background: var(--mk-surface-2) !important;
}

body.theme-cinematic .mk-profile-intro .degree-abbr,
body.theme-cinematic .mk-profile-intro .degree-name {
    color: var(--mk-ivory) !important;
}

body.theme-cinematic .mk-profile-intro .degree-name,
body.theme-cinematic .mk-profile-intro .degree-benefit {
    color: var(--mk-muted) !important;
}

@media (prefers-reduced-motion: reduce) {
    body.theme-cinematic *,
    body.theme-cinematic *::before,
    body.theme-cinematic *::after {
        scroll-behavior: auto !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }

    body.theme-cinematic .cinematic-hero-video:not(.is-active) {
        display: none;
    }
}

/* --------------------------------------------------------------------------
   Dark rebuild v2 — hard reset of the former light visual language
   -------------------------------------------------------------------------- */

:root {
    --mk-black: #070808;
    --mk-night: #090b0c;
    --mk-section: #0c0e0f;
    --mk-surface: #111416;
    --mk-surface-2: #15191b;
    --mk-ivory: #e8e7e2;
    --mk-muted: #92999a;
    --mk-muted-2: #737a7b;
    --mk-line: rgba(232, 231, 226, 0.1);
    --mk-line-strong: rgba(232, 231, 226, 0.18);
    --mk-cyan: #73cfd0;
}

/* The header is intentionally unframed, transparent and edge-to-edge. */
body.theme-cinematic .header,
body.theme-cinematic .header.scrolled {
    top: var(--notice-height, 0px) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: none !important;
    height: 86px !important;
    margin: 0 !important;
    padding: 0 clamp(22px, 4.5vw, 76px) !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: rgba(8, 10, 10, 0) !important;
    box-shadow: none !important;
    backdrop-filter: blur(0) saturate(100%) !important;
    -webkit-backdrop-filter: blur(0) saturate(100%) !important;
    transition:
        background-color 0.48s ease,
        backdrop-filter 0.48s ease,
        -webkit-backdrop-filter 0.48s ease,
        box-shadow 0.48s ease !important;
}

body.theme-cinematic .header.scrolled {
    background: rgba(9, 11, 12, 0.72) !important;
    box-shadow:
        0 1px 0 rgba(232, 231, 226, 0.08),
        0 18px 50px rgba(0, 0, 0, 0.2) !important;
    backdrop-filter: blur(20px) saturate(135%) !important;
    -webkit-backdrop-filter: blur(20px) saturate(135%) !important;
}

body.theme-cinematic .header::after {
    content: none !important;
    display: none !important;
}

body.theme-cinematic .nav-link,
body.theme-cinematic .lang-current,
body.theme-cinematic .mail-icon-btn,
body.theme-cinematic .brand {
    text-shadow: 0 2px 18px rgba(0, 0, 0, 0.72);
}

/* The video is a real hero layer, never behind the hero background. */
body.theme-cinematic .cinematic-hero-media {
    z-index: 0 !important;
    background: #080909 url('../images/video-posters/ki-home.jpg') center / cover no-repeat;
}

body.theme-cinematic .has-cinematic-video > .hero-overlay-gradient,
body.theme-cinematic .has-cinematic-video > .ws-hero-overlay {
    display: none !important;
}

body.theme-cinematic .hero-overlay-gradient,
body.theme-cinematic .ws-hero-overlay {
    display: none !important;
}

body.theme-cinematic .has-cinematic-video::before,
body.theme-cinematic .has-cinematic-video::after {
    content: none !important;
    display: none !important;
}

body.theme-cinematic #orbCanvas,
body.theme-cinematic .mobile-orb-nav,
body.theme-cinematic .m-orb,
body.theme-cinematic .node-detail-card {
    display: none !important;
}

body.theme-cinematic .cinematic-hero-video {
    z-index: 0;
    opacity: 0;
    filter: brightness(0.78) saturate(0.82) contrast(1.08);
}

body.theme-cinematic .cinematic-hero-video.is-active {
    opacity: 1 !important;
}

body.theme-cinematic .cinematic-hero-veil {
    z-index: 1;
    background:
        linear-gradient(90deg, rgba(5, 6, 6, 0.74) 0%, rgba(5, 6, 6, 0.4) 43%, rgba(5, 6, 6, 0.08) 76%, rgba(5, 6, 6, 0.2) 100%),
        linear-gradient(180deg, rgba(5, 6, 6, 0.18) 0%, transparent 44%, rgba(5, 6, 6, 0.58) 100%);
}

body.theme-cinematic .cinematic-hero-lines {
    z-index: 2;
    opacity: 1 !important;
    background-image: repeating-linear-gradient(
        to bottom,
        rgba(2, 3, 3, 0.1) 0,
        rgba(2, 3, 3, 0.1) 1px,
        transparent 1px,
        transparent 2px
    ) !important;
    background-size: 100% 2px !important;
    mix-blend-mode: normal !important;
    -webkit-mask-image: none;
    mask-image: none;
    pointer-events: none !important;
}

body.theme-cinematic .has-cinematic-video > :not(.cinematic-hero-media):not(.cinematic-hero-meta) {
    z-index: 4 !important;
}

body.theme-cinematic .cinematic-hero-meta {
    z-index: 5;
}

/* Hero typography is editorial and quiet; legacy gradients and glows are gone. */
body.theme-cinematic .has-cinematic-video h1,
body.theme-cinematic .has-cinematic-video h1 *,
body.theme-cinematic .has-cinematic-video .hero-title,
body.theme-cinematic .has-cinematic-video .text-gradient-accent,
body.theme-cinematic .has-cinematic-video .font-serif {
    color: var(--mk-ivory) !important;
    -webkit-text-fill-color: var(--mk-ivory) !important;
    background: none !important;
    filter: none !important;
    text-shadow: 0 4px 34px rgba(0, 0, 0, 0.42) !important;
}

body.theme-cinematic .has-cinematic-video .hero-badge,
body.theme-cinematic .has-cinematic-video .ws-hero-badge {
    padding: 0 0 12px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(115, 207, 208, 0.52) !important;
    border-radius: 0 !important;
    background: transparent !important;
    backdrop-filter: none !important;
}

body.theme-cinematic .has-cinematic-video .pulse-dot {
    background: var(--mk-cyan) !important;
}

/* Uniform dark page rhythm. No white or light-grey sections remain. */
body.theme-cinematic main,
body.theme-cinematic main > section,
body.theme-cinematic > section,
body.theme-cinematic .section-padding,
body.theme-cinematic .section-gray,
body.theme-cinematic .section-dark,
body.theme-cinematic .mk-section,
body.theme-cinematic .coach-section,
body.theme-cinematic .ws-section,
body.theme-cinematic .ws-section-light,
body.theme-cinematic .ws-section-white,
body.theme-cinematic .ws-section-dark,
body.theme-cinematic .marquee-section,
body.theme-cinematic .branchen-section,
body.theme-cinematic .books-section,
body.theme-cinematic .book-author-section,
body.theme-cinematic .book-description-section,
body.theme-cinematic .book-editions-section,
body.theme-cinematic section[style] {
    background-color: var(--mk-night) !important;
    background-image: none !important;
    color: var(--mk-ivory) !important;
}

body.theme-cinematic main > section:not(.has-cinematic-video):nth-of-type(even),
body.theme-cinematic > section:not(.has-cinematic-video):nth-of-type(even) {
    background-color: var(--mk-section) !important;
}

body.theme-cinematic main > section:not(.has-cinematic-video),
body.theme-cinematic > section:not(.has-cinematic-video) {
    border-top: 1px solid var(--mk-line) !important;
}

body.theme-cinematic .container {
    width: min(1240px, calc(100% - clamp(40px, 8vw, 128px)));
    max-width: none !important;
    padding-inline: 0 !important;
}

body.theme-cinematic .section-padding,
body.theme-cinematic .mk-section,
body.theme-cinematic .coach-section,
body.theme-cinematic .ws-section,
body.theme-cinematic .section-gray,
body.theme-cinematic .section-dark {
    padding-block: clamp(72px, 9vw, 126px) !important;
}

/* All legacy card families become low-contrast anthracite surfaces. */
body.theme-cinematic [class*="card"],
body.theme-cinematic [class*="Card"],
body.theme-cinematic .approach-step,
body.theme-cinematic .profile-slide,
body.theme-cinematic .editorial-card,
body.theme-cinematic .book-series-item,
body.theme-cinematic .ws-branche-item,
body.theme-cinematic .faq-item,
body.theme-cinematic details {
    border: 1px solid var(--mk-line) !important;
    border-radius: 2px !important;
    background-color: var(--mk-surface) !important;
    background-image: none !important;
    color: var(--mk-ivory) !important;
    box-shadow: none !important;
}

body.theme-cinematic [class*="card"]::before,
body.theme-cinematic [class*="card"]::after,
body.theme-cinematic .approach-step::before,
body.theme-cinematic .approach-step::after,
body.theme-cinematic .editorial-card::before,
body.theme-cinematic .editorial-card::after {
    background-image: none !important;
    box-shadow: none !important;
}

body.theme-cinematic [class*="card"]:hover,
body.theme-cinematic .approach-step:hover,
body.theme-cinematic .profile-slide:hover,
body.theme-cinematic .editorial-card:hover,
body.theme-cinematic details:hover {
    border-color: var(--mk-line-strong) !important;
    background-color: var(--mk-surface-2) !important;
    box-shadow: none !important;
    transform: translateY(-2px);
}

body.theme-cinematic [class*="card"] h2,
body.theme-cinematic [class*="card"] h3,
body.theme-cinematic [class*="card"] h4,
body.theme-cinematic [class*="card"] strong,
body.theme-cinematic .approach-step h3,
body.theme-cinematic .profile-slide h3,
body.theme-cinematic details summary {
    color: var(--mk-ivory) !important;
    -webkit-text-fill-color: var(--mk-ivory) !important;
}

body.theme-cinematic [class*="card"] p,
body.theme-cinematic [class*="card"] li,
body.theme-cinematic .approach-step p,
body.theme-cinematic .profile-slide p {
    color: var(--mk-muted) !important;
}

/* Inline colours from the former light theme must not leak through. */
body.theme-cinematic [style*="color: #0f172a"],
body.theme-cinematic [style*="color:#0f172a"],
body.theme-cinematic [style*="color: #111"],
body.theme-cinematic [style*="color:#111"],
body.theme-cinematic [style*="color: #000"],
body.theme-cinematic [style*="color:#000"] {
    color: var(--mk-ivory) !important;
}

body.theme-cinematic [style*="color: #64748b"],
body.theme-cinematic [style*="color:#64748b"],
body.theme-cinematic [style*="color: #666"],
body.theme-cinematic [style*="color:#666"],
body.theme-cinematic [style*="color: #555"],
body.theme-cinematic [style*="color:#555"],
body.theme-cinematic [style*="color: #999"],
body.theme-cinematic [style*="color:#999"] {
    color: var(--mk-muted) !important;
}

body.theme-cinematic [style*="background: #fff"],
body.theme-cinematic [style*="background:#fff"],
body.theme-cinematic [style*="background: white"],
body.theme-cinematic [style*="background:white"],
body.theme-cinematic [style*="background: #f8fafc"],
body.theme-cinematic [style*="background:#f8fafc"],
body.theme-cinematic [style*="background: #f9f9fb"],
body.theme-cinematic [style*="background:#f9f9fb"] {
    background: var(--mk-surface) !important;
}

/* Buttons use the muted brand accent, never stark white slabs. */
body.theme-cinematic .cta-btn,
body.theme-cinematic .btn-primary,
body.theme-cinematic .ws-btn-primary,
body.theme-cinematic .book-btn-primary,
body.theme-cinematic button[type="submit"] {
    border: 1px solid var(--mk-cyan) !important;
    border-radius: 2px !important;
    background: var(--mk-cyan) !important;
    color: #071011 !important;
    box-shadow: none !important;
}

body.theme-cinematic .btn-outline,
body.theme-cinematic .ws-btn-outline,
body.theme-cinematic .book-btn-outline,
body.theme-cinematic .header .mail-icon-btn {
    border: 1px solid var(--mk-line-strong) !important;
    border-radius: 2px !important;
    background: transparent !important;
    color: var(--mk-ivory) !important;
    box-shadow: none !important;
}

body.theme-cinematic .header .mail-icon-btn {
    border: 0 !important;
}

body.theme-cinematic .cta-btn:hover,
body.theme-cinematic .btn-primary:hover,
body.theme-cinematic .ws-btn-primary:hover,
body.theme-cinematic .book-btn-primary:hover {
    background: #8bd9da !important;
    transform: translateY(-2px) !important;
}

/* Forms, modals and footer follow the same restrained surface system. */
body.theme-cinematic .modal-overlay {
    background: rgba(3, 4, 4, 0.82) !important;
}

body.theme-cinematic .modal-content {
    border: 1px solid var(--mk-line-strong) !important;
    border-radius: 2px !important;
    background: var(--mk-surface) !important;
    color: var(--mk-ivory) !important;
    box-shadow: 0 28px 90px rgba(0, 0, 0, 0.5) !important;
}

body.theme-cinematic input,
body.theme-cinematic textarea,
body.theme-cinematic select {
    border: 0 !important;
    border-bottom: 1px solid var(--mk-line-strong) !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--mk-ivory) !important;
}

body.theme-cinematic footer {
    background: #060707 !important;
    border-top: 1px solid var(--mk-line) !important;
}

body.theme-cinematic .marquee-section::before,
body.theme-cinematic .marquee-section::after,
body.theme-cinematic .branchen-section::before,
body.theme-cinematic .branchen-section::after,
body.theme-cinematic .cta-section::before,
body.theme-cinematic .book-cta-final::before {
    content: none !important;
    display: none !important;
}

@media (max-width: 960px) {
    body.theme-cinematic .header,
    body.theme-cinematic .header.scrolled {
        width: 100% !important;
        height: 72px !important;
        margin: 0 !important;
        padding-inline: 20px !important;
    }

}

/* Home hero: centered statement followed by one continuous media bar. */
body.theme-cinematic #hero-container.has-cinematic-video .hero-overlay {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-content: flex-end !important;
    align-items: center !important;
    text-align: center !important;
}

body.theme-cinematic #hero-container .hero-text-wrapper {
    width: min(900px, calc(100% - 40px));
    max-width: 900px !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 auto clamp(30px, 4.5vh, 54px) !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: flex-end !important;
}

body.theme-cinematic #hero-container #ui-label {
    display: none !important;
}

body.theme-cinematic #hero-container .hero-title {
    max-width: 900px !important;
    margin: 0 0 18px !important;
    font-size: clamp(3.5rem, 7.1vw, 7.5rem) !important;
    line-height: 0.88 !important;
    text-align: center !important;
}

body.theme-cinematic #hero-container .hero-sub {
    max-width: 760px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
}

body.theme-cinematic #hero-container .hero-sub p {
    margin: 0 !important;
    font-size: clamp(1rem, 1.35vw, 1.22rem) !important;
    line-height: 1.55 !important;
}

body.theme-cinematic #hero-container .press-logos {
    position: relative !important;
    inset: auto !important;
    flex: 0 0 auto;
    width: 100% !important;
    max-width: none !important;
    min-height: 86px;
    padding: 18px clamp(24px, 4.5vw, 76px) !important;
    transform: none !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(24px, 3.2vw, 54px) !important;
    overflow: hidden;
    opacity: 1 !important;
    border-top: 1px solid rgba(232, 231, 226, 0.1);
    background: rgba(188, 205, 207, 0.12) !important;
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
}

body.theme-cinematic #hero-container .press-logos-label {
    flex: 0 0 auto;
    color: rgba(232, 231, 226, 0.56) !important;
    white-space: nowrap;
}

body.theme-cinematic #hero-container .press-logos-row {
    width: min(1120px, 82vw);
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    gap: clamp(16px, 2.2vw, 38px) !important;
}

body.theme-cinematic #hero-container .press-logo-wrapper {
    flex: 0 1 auto;
    min-width: 0;
}

body.theme-cinematic #hero-container .press-logo {
    max-width: clamp(62px, 7vw, 112px) !important;
    max-height: 27px !important;
    object-fit: contain;
    opacity: 0.72 !important;
    filter: grayscale(1) brightness(0) invert(1) !important;
}

body.theme-cinematic .press-logos-mobile-section {
    display: none !important;
}

/* Subpage heroes share one strict left edge; the auxiliary corner title is gone. */
body.theme-cinematic .cinematic-hero-meta {
    display: none !important;
}

body.theme-cinematic .has-cinematic-video:not(#hero-container),
body.theme-cinematic .has-cinematic-video:not(#hero-container) .container,
body.theme-cinematic .has-cinematic-video:not(#hero-container) .mk-hero-grid > div:first-child {
    text-align: left !important;
}

body.theme-cinematic .has-cinematic-video:not(#hero-container) .container > h1,
body.theme-cinematic .has-cinematic-video:not(#hero-container) .container > .hero-title,
body.theme-cinematic .has-cinematic-video:not(#hero-container) .mk-hero-grid > div:first-child > h1 {
    margin-right: auto !important;
    margin-left: 0 !important;
    text-align: left !important;
}

body.theme-cinematic .has-cinematic-video:not(#hero-container) .container > p,
body.theme-cinematic .has-cinematic-video:not(#hero-container) .container > .lead,
body.theme-cinematic .has-cinematic-video:not(#hero-container) .container > .hero-lead,
body.theme-cinematic .has-cinematic-video:not(#hero-container) .mk-hero-grid > div:first-child > p,
body.theme-cinematic .has-cinematic-video:not(#hero-container) .mk-hero-grid > div:first-child > .lead {
    width: min(760px, 100%) !important;
    max-width: 760px !important;
    margin-right: auto !important;
    margin-left: 0 !important;
    text-align: left !important;
}

@media (max-width: 900px) {
    body.theme-cinematic #hero-container .hero-text-wrapper {
        width: min(680px, calc(100% - 32px));
        margin-bottom: 28px !important;
    }

    body.theme-cinematic #hero-container .hero-title {
        font-size: clamp(3.2rem, 14vw, 5.8rem) !important;
    }

    body.theme-cinematic #hero-container .press-logos {
        min-height: 76px;
        padding: 14px 16px !important;
        justify-content: flex-start !important;
        gap: 16px !important;
        overflow-x: auto;
        scrollbar-width: none;
    }

    body.theme-cinematic #hero-container .press-logos::-webkit-scrollbar {
        display: none;
    }

    body.theme-cinematic #hero-container .press-logos-row {
        width: max-content;
        min-width: max-content;
        justify-content: flex-start !important;
        gap: 28px !important;
        padding-right: 16px;
    }

    body.theme-cinematic #hero-container .press-logos-label {
        display: none;
    }

    body.theme-cinematic #hero-container .press-logo {
        width: auto !important;
        max-width: 98px !important;
        max-height: 24px !important;
    }
}

/* KI Games */
body.theme-cinematic .desktop-nav {
    gap: clamp(0.72rem, 1.35vw, 1.5rem);
}

body.theme-cinematic .games-page {
    background: var(--mk-night) !important;
}

body.theme-cinematic .games-hero h1 {
    max-width: 980px;
    margin: 0 0 1.5rem;
    font-family: var(--font-display);
    font-size: clamp(4rem, 8.5vw, 8.8rem) !important;
    font-weight: 400 !important;
    letter-spacing: -0.065em !important;
    line-height: 0.86 !important;
}

body.theme-cinematic .games-hero h1 span {
    color: var(--mk-ivory) !important;
}

body.theme-cinematic .games-hero .lead {
    max-width: 780px !important;
    margin: 0 0 2rem !important;
    color: rgba(232, 231, 226, 0.76) !important;
    font-size: clamp(1.05rem, 1.5vw, 1.28rem);
    line-height: 1.6;
}

body.theme-cinematic .games-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
}

body.theme-cinematic .games-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0.9rem 1.35rem;
    border-radius: 2px;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
}

body.theme-cinematic .games-btn-primary {
    border: 1px solid var(--mk-ivory) !important;
    background: var(--mk-ivory) !important;
    color: var(--mk-black) !important;
}

body.theme-cinematic .games-btn-secondary {
    border: 1px solid var(--mk-line-strong) !important;
    background: rgba(7, 8, 8, 0.24) !important;
    color: var(--mk-ivory) !important;
}

body.theme-cinematic .games-section {
    padding: clamp(82px, 10vw, 150px) 0 !important;
    border-top: 1px solid var(--mk-line) !important;
    background: var(--mk-night) !important;
}

body.theme-cinematic .games-section:nth-of-type(even) {
    background: #0d1011 !important;
}

body.theme-cinematic .games-page > section > .container {
    width: min(1240px, calc(100% - clamp(40px, 9vw, 144px)));
    margin-inline: auto;
}

body.theme-cinematic .games-kicker {
    display: block;
    margin-bottom: 1.15rem;
    color: var(--mk-cyan);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

body.theme-cinematic .games-page h2 {
    max-width: 900px;
    margin: 0;
    font-family: var(--font-display);
    font-size: clamp(2.8rem, 5.8vw, 6rem);
    font-weight: 400;
    letter-spacing: -0.055em;
    line-height: 0.95;
}

body.theme-cinematic .games-page h3 {
    font-family: var(--font-display);
}

body.theme-cinematic .games-intro-grid,
body.theme-cinematic .games-mechanics-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.85fr);
    gap: clamp(48px, 9vw, 140px);
    align-items: start;
}

body.theme-cinematic .games-intro-copy {
    padding-top: 2.1rem;
}

body.theme-cinematic .games-intro-copy p,
body.theme-cinematic .games-section-head > p,
body.theme-cinematic .games-section-head-row > p {
    max-width: 620px;
    margin: 0 0 1.3rem;
    color: var(--mk-muted) !important;
    font-size: 1rem;
    line-height: 1.75;
}

body.theme-cinematic .games-intro-copy .games-lead {
    color: rgba(232, 231, 226, 0.82) !important;
    font-size: clamp(1.15rem, 1.7vw, 1.45rem);
    line-height: 1.55;
}

body.theme-cinematic .games-section-head {
    margin-bottom: clamp(48px, 6vw, 82px);
}

body.theme-cinematic .games-section-head-row {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
    gap: clamp(40px, 8vw, 120px);
    align-items: end;
}

body.theme-cinematic .games-section-head-row > p {
    margin: 0;
}

body.theme-cinematic .games-world-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-top: 1px solid var(--mk-line-strong);
    border-bottom: 1px solid var(--mk-line-strong);
}

body.theme-cinematic .games-world {
    padding: clamp(34px, 5vw, 68px);
    background: rgba(255, 255, 255, 0.018) !important;
}

body.theme-cinematic .games-world + .games-world {
    border-left: 1px solid var(--mk-line-strong);
}

body.theme-cinematic .games-world-accent {
    background: rgba(115, 207, 208, 0.035) !important;
}

body.theme-cinematic .games-world-index,
body.theme-cinematic .games-usecase-grid article > span {
    color: var(--mk-cyan);
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

body.theme-cinematic .games-world h3 {
    margin: 2rem 0 0.5rem;
    font-size: clamp(2.4rem, 4vw, 4.3rem);
    font-weight: 400;
    letter-spacing: -0.045em;
}

body.theme-cinematic .games-world-claim {
    margin: 0 0 1.8rem;
    color: rgba(232, 231, 226, 0.82) !important;
    font-size: 1.2rem;
}

body.theme-cinematic .games-world > p:not(.games-world-claim) {
    max-width: 540px;
    color: var(--mk-muted) !important;
    line-height: 1.7;
}

body.theme-cinematic .games-topic-list {
    margin: 2.5rem 0 0;
    padding: 0;
    list-style: none;
}

body.theme-cinematic .games-topic-list li {
    display: grid;
    grid-template-columns: minmax(110px, 0.38fr) 1fr;
    gap: 20px;
    padding: 1rem 0;
    border-top: 1px solid var(--mk-line);
}

body.theme-cinematic .games-topic-list span {
    color: var(--mk-ivory);
    font-weight: 650;
}

body.theme-cinematic .games-topic-list small {
    color: var(--mk-muted-2);
    font-size: 0.84rem;
    line-height: 1.5;
}

body.theme-cinematic .games-usecase-grid,
body.theme-cinematic .games-outcome-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-top: 1px solid var(--mk-line-strong);
    border-left: 1px solid var(--mk-line-strong);
}

body.theme-cinematic .games-usecase-grid article,
body.theme-cinematic .games-outcome-grid article {
    min-height: 260px;
    padding: clamp(28px, 3.5vw, 46px);
    border-right: 1px solid var(--mk-line-strong);
    border-bottom: 1px solid var(--mk-line-strong);
    background: rgba(255, 255, 255, 0.014) !important;
}

body.theme-cinematic .games-usecase-grid h3 {
    margin: 3.5rem 0 0.8rem;
    font-size: 1.55rem;
    font-weight: 500;
}

body.theme-cinematic .games-usecase-grid p,
body.theme-cinematic .games-outcome-grid p {
    margin: 0;
    color: var(--mk-muted) !important;
    font-size: 0.92rem;
    line-height: 1.65;
}

body.theme-cinematic .games-mechanics-grid .games-section-head {
    position: sticky;
    top: 120px;
    margin-bottom: 0;
}

body.theme-cinematic .games-mechanics-grid .games-section-head p {
    margin-top: 2rem;
}

body.theme-cinematic .games-mechanic-list {
    border-top: 1px solid var(--mk-line-strong);
}

body.theme-cinematic .games-mechanic-list > div {
    display: grid;
    grid-template-columns: minmax(120px, 0.42fr) 1fr;
    gap: 24px;
    padding: 1.5rem 0;
    border-bottom: 1px solid var(--mk-line-strong);
}

body.theme-cinematic .games-mechanic-list span {
    color: var(--mk-ivory);
    font-weight: 650;
}

body.theme-cinematic .games-mechanic-list p {
    margin: 0;
    color: var(--mk-muted) !important;
    line-height: 1.6;
}

body.theme-cinematic .games-outcome-grid article {
    min-height: 220px;
}

body.theme-cinematic .games-outcome-grid strong {
    display: block;
    margin-bottom: 1.25rem;
    font-family: var(--font-display);
    font-size: 1.45rem;
    font-weight: 500;
}

body.theme-cinematic .games-process-list {
    margin: 0;
    padding: 0;
    border-top: 1px solid var(--mk-line-strong);
    list-style: none;
}

body.theme-cinematic .games-process-list li {
    display: grid;
    grid-template-columns: minmax(90px, 0.18fr) minmax(0, 1fr);
    gap: 30px;
    padding: 2.2rem 0;
    border-bottom: 1px solid var(--mk-line-strong);
}

body.theme-cinematic .games-process-list > li > span {
    color: var(--mk-cyan);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.14em;
}

body.theme-cinematic .games-process-list h3 {
    margin: 0 0 0.5rem;
    font-size: 1.45rem;
    font-weight: 500;
}

body.theme-cinematic .games-process-list p {
    max-width: 720px;
    margin: 0;
    color: var(--mk-muted) !important;
    line-height: 1.65;
}

body.theme-cinematic .games-cta {
    padding: clamp(90px, 13vw, 190px) 0 !important;
    border-top: 1px solid var(--mk-line-strong);
    background: #0a0c0d !important;
    text-align: center;
}

body.theme-cinematic .games-cta .container {
    display: flex;
    flex-direction: column;
    align-items: center;
}

body.theme-cinematic .games-cta h2 {
    max-width: 940px;
}

body.theme-cinematic .games-cta p {
    max-width: 680px;
    margin: 2rem auto;
    color: var(--mk-muted) !important;
    font-size: 1.08rem;
    line-height: 1.7;
}

@media (max-width: 1120px) {
    body.theme-cinematic .desktop-nav {
        gap: 0.72rem;
    }

    body.theme-cinematic .nav-link {
        font-size: 0.7rem;
        letter-spacing: 0.025em;
    }
}

@media (max-width: 900px) {
    body.theme-cinematic .games-hero h1 {
        font-size: clamp(3.4rem, 15vw, 6.4rem) !important;
    }

    body.theme-cinematic .games-intro-grid,
    body.theme-cinematic .games-mechanics-grid,
    body.theme-cinematic .games-section-head-row,
    body.theme-cinematic .games-world-grid {
        grid-template-columns: 1fr;
    }

    body.theme-cinematic .games-intro-copy {
        padding-top: 0;
    }

    body.theme-cinematic .games-world + .games-world {
        border-top: 1px solid var(--mk-line-strong);
        border-left: 0;
    }

    body.theme-cinematic .games-usecase-grid,
    body.theme-cinematic .games-outcome-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.theme-cinematic .games-mechanics-grid .games-section-head {
        position: static;
        margin-bottom: 2.5rem;
    }
}

@media (max-width: 600px) {
    body.theme-cinematic .games-page > section > .container {
        width: calc(100% - 32px);
    }

    body.theme-cinematic .games-usecase-grid,
    body.theme-cinematic .games-outcome-grid {
        grid-template-columns: 1fr;
    }

    body.theme-cinematic .games-usecase-grid article,
    body.theme-cinematic .games-outcome-grid article {
        min-height: 0;
    }

    body.theme-cinematic .games-topic-list li,
    body.theme-cinematic .games-mechanic-list > div {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    body.theme-cinematic .games-process-list li {
        grid-template-columns: 52px 1fr;
        gap: 16px;
    }

    body.theme-cinematic .games-btn {
        width: 100%;
    }
}

/* Final contrast guard: no light legacy panels or card faces in the dark theme. */
body.theme-cinematic main > section,
body.theme-cinematic .mk-career-section {
    background-color: var(--mk-section) !important;
    background-image: none !important;
}

body.theme-cinematic [class$="-card"],
body.theme-cinematic [class*="-card "],
body.theme-cinematic .card-front,
body.theme-cinematic .card-back,
body.theme-cinematic .degree-card-front,
body.theme-cinematic .degree-card-back {
    background-color: var(--mk-surface) !important;
    background-image: none !important;
    border-color: var(--mk-line) !important;
    box-shadow: none !important;
}

body.theme-cinematic .card-back,
body.theme-cinematic .degree-card-back {
    background-color: var(--mk-surface-2) !important;
}

body.theme-cinematic .gallery-item .card-title,
body.theme-cinematic .degree-card .degree-abbr {
    color: var(--mk-ivory) !important;
}

body.theme-cinematic .degree-card .degree-name {
    color: var(--mk-muted) !important;
}

body.theme-cinematic .tape {
    background: rgba(115, 207, 208, 0.08) !important;
    border: 1px solid rgba(115, 207, 208, 0.14) !important;
    box-shadow: none !important;
}

body.theme-cinematic [style*="background: #fff"],
body.theme-cinematic [style*="background:#fff"],
body.theme-cinematic [style*="background: white"],
body.theme-cinematic [style*="background:white"] {
    background-color: var(--mk-section) !important;
    background-image: none !important;
}

/* Premium content surfaces -------------------------------------------------
 * Legacy selectors used "card" in the names of inner elements as well as
 * actual cards. Reset those inner layers first, then style only real modules.
 */
body.theme-cinematic [class*="card"],
body.theme-cinematic [class*="Card"] {
    border: 0 !important;
    border-radius: 0;
    background: transparent !important;
    box-shadow: none !important;
    transform: none;
}

body.theme-cinematic .service-card,
body.theme-cinematic .berg-card,
body.theme-cinematic .narrative-card,
body.theme-cinematic .books-card,
body.theme-cinematic .book-card,
body.theme-cinematic .feature-card,
body.theme-cinematic .ws-card,
body.theme-cinematic .ws-goal-card,
body.theme-cinematic .kw-promo-card,
body.theme-cinematic .post-card,
body.theme-cinematic .aktuelles-card,
body.theme-cinematic .editorial-card,
body.theme-cinematic .book-highlight-card,
body.theme-cinematic .book-edition-card,
body.theme-cinematic .book-series-item,
body.theme-cinematic .kk-card,
body.theme-cinematic .qual-item,
body.theme-cinematic .branche-card,
body.theme-cinematic .bento-card,
body.theme-cinematic .rt-card,
body.theme-cinematic .vt-card,
body.theme-cinematic .format-card,
body.theme-cinematic .ws-bento-item,
body.theme-cinematic .ws-day-card,
body.theme-cinematic .ws-package-card,
body.theme-cinematic .faq-item,
body.theme-cinematic .ws-faq-item,
body.theme-cinematic details,
body.theme-cinematic .approach-step,
body.theme-cinematic .profile-slide,
body.theme-cinematic .card-front,
body.theme-cinematic .card-back,
body.theme-cinematic .degree-card-front,
body.theme-cinematic .degree-card-back,
body.theme-cinematic .games-usecase-grid article,
body.theme-cinematic .games-outcome-grid article {
    border: 0 !important;
    border-radius: clamp(12px, 1.2vw, 18px) !important;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.038), rgba(255, 255, 255, 0.012)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.035),
        0 28px 80px rgba(0, 0, 0, 0.12) !important;
}

body.theme-cinematic .service-card:hover,
body.theme-cinematic .berg-card:hover,
body.theme-cinematic .narrative-card:hover,
body.theme-cinematic .books-card:hover,
body.theme-cinematic .book-card:hover,
body.theme-cinematic .feature-card:hover,
body.theme-cinematic .ws-card:hover,
body.theme-cinematic .ws-goal-card:hover,
body.theme-cinematic .kw-promo-card:hover,
body.theme-cinematic .post-card:hover,
body.theme-cinematic .aktuelles-card:hover,
body.theme-cinematic .editorial-card:hover,
body.theme-cinematic .book-highlight-card:hover,
body.theme-cinematic .book-edition-card:hover,
body.theme-cinematic .book-series-item:hover,
body.theme-cinematic .kk-card:hover,
body.theme-cinematic .bento-card:hover,
body.theme-cinematic .rt-card:hover,
body.theme-cinematic .vt-card:hover,
body.theme-cinematic .format-card:hover,
body.theme-cinematic .ws-bento-item:hover,
body.theme-cinematic .ws-day-card:hover,
body.theme-cinematic .ws-package-card:hover {
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.018)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.055),
        0 36px 100px rgba(0, 0, 0, 0.22) !important;
    transform: translateY(-4px) !important;
}

/* Informational panels and chips never revert to legacy white. */
body.theme-cinematic .ws-package-note {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    padding: clamp(22px, 2.6vw, 34px);
    border: 0 !important;
    border-radius: 14px;
    background: linear-gradient(110deg, rgba(96, 220, 224, 0.055), rgba(255, 255, 255, 0.012) 72%) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

body.theme-cinematic .ws-package-note strong {
    color: var(--mk-ivory) !important;
}

body.theme-cinematic .ws-package-note p {
    color: var(--mk-muted) !important;
}

body.theme-cinematic .berg-icon,
body.theme-cinematic .chip-icon,
body.theme-cinematic .branche-tags span,
body.theme-cinematic .ref-badge,
body.theme-cinematic .post-type,
body.theme-cinematic .article-type {
    border: 0 !important;
    background: rgba(96, 220, 224, 0.075) !important;
    color: rgba(241, 239, 233, 0.78) !important;
    box-shadow: none !important;
}

body.theme-cinematic [style*="background: #f1f5f9"],
body.theme-cinematic [style*="background:#f1f5f9"],
body.theme-cinematic [style*="background: #f5f5f7"],
body.theme-cinematic [style*="background:#f5f5f7"],
body.theme-cinematic [style*="background: #fbfbfd"],
body.theme-cinematic [style*="background:#fbfbfd"],
body.theme-cinematic [style*="background: #f0f0f5"],
body.theme-cinematic [style*="background:#f0f0f5"],
body.theme-cinematic [style*="background: #eee"],
body.theme-cinematic [style*="background:#eee"],
body.theme-cinematic [style*="background: #fff2f2"],
body.theme-cinematic [style*="background:#fff2f2"] {
    border-color: rgba(241, 239, 233, 0.08) !important;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.012)) !important;
    color: var(--mk-muted) !important;
    box-shadow: none !important;
}

/* Books: quiet gallery objects instead of boxed interface panels. */
body.theme-cinematic .books-grid {
    gap: clamp(22px, 3vw, 42px);
}

body.theme-cinematic .books-card {
    overflow: hidden;
}

body.theme-cinematic .books-card::before,
body.theme-cinematic .books-card::after {
    content: none !important;
}

body.theme-cinematic .books-card-visual {
    border: 0 !important;
    background:
        radial-gradient(circle at 50% 35%, color-mix(in srgb, var(--card-accent) 9%, transparent), transparent 56%),
        linear-gradient(160deg, rgba(255, 255, 255, 0.025), rgba(0, 0, 0, 0.08)) !important;
}

body.theme-cinematic .books-card-visual img {
    box-shadow: 0 24px 55px rgba(0, 0, 0, 0.42) !important;
}

body.theme-cinematic .books-card-body,
body.theme-cinematic .books-card-title,
body.theme-cinematic .books-card-desc,
body.theme-cinematic .books-card-tagline,
body.theme-cinematic .books-card-link {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.theme-cinematic .books-card-body {
    padding: clamp(26px, 3vw, 40px) !important;
}

body.theme-cinematic .books-card-badge {
    border: 0 !important;
    border-radius: 999px !important;
    background: color-mix(in srgb, var(--card-accent) 24%, rgba(8, 10, 11, 0.76)) !important;
    color: rgba(241, 239, 233, 0.88) !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.2) !important;
    backdrop-filter: blur(12px);
}

body.theme-cinematic .books-card-link {
    width: fit-content;
    padding: 0 !important;
    color: rgba(241, 239, 233, 0.72) !important;
}

body.theme-cinematic .books-card:hover .books-card-link {
    color: var(--card-accent) !important;
}

/* Sections flow into each other without mechanical separator bars. */
body.theme-cinematic main > section:not(.has-cinematic-video),
body.theme-cinematic > section:not(.has-cinematic-video),
body.theme-cinematic .cta-section,
body.theme-cinematic .ws-cta-section,
body.theme-cinematic .book-cta-final,
body.theme-cinematic footer {
    border-top: 0 !important;
}

/* Replace boxed grids with spacing and softly illuminated modules. */
body.theme-cinematic .games-world-grid,
body.theme-cinematic .games-usecase-grid,
body.theme-cinematic .games-outcome-grid {
    gap: clamp(12px, 1.4vw, 20px);
    border: 0 !important;
}

body.theme-cinematic .games-world {
    border: 0 !important;
    border-radius: clamp(12px, 1.2vw, 18px);
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.032), rgba(255, 255, 255, 0.009)) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

body.theme-cinematic .games-world + .games-world,
body.theme-cinematic .games-usecase-grid article,
body.theme-cinematic .games-outcome-grid article {
    border: 0 !important;
}

body.theme-cinematic .games-topic-list,
body.theme-cinematic .games-mechanic-list,
body.theme-cinematic .games-process-list {
    border: 0 !important;
}

body.theme-cinematic .games-topic-list li,
body.theme-cinematic .games-mechanic-list > div,
body.theme-cinematic .games-process-list li {
    margin-bottom: 4px;
    padding-inline: clamp(18px, 2vw, 28px);
    border: 0 !important;
    border-radius: 10px;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.025), transparent 88%);
}

@media (max-width: 900px) {
    body.theme-cinematic .books-card {
        flex-basis: min(86%, 430px) !important;
    }

    body.theme-cinematic .books-card-body {
        padding: 24px !important;
    }

    body.theme-cinematic .games-world-grid {
        gap: 12px;
    }
}

/* User-initiated sound control; autoplay remains muted for browser support. */
body.theme-cinematic .has-cinematic-video .cinematic-sound-toggle {
    position: absolute;
    right: clamp(20px, 3vw, 48px);
    bottom: clamp(32px, 4vw, 58px);
    z-index: 12;
    display: inline-grid;
    place-items: center;
    align-items: center;
    width: 30px;
    height: 30px;
    padding: 0;
    border: 0;
    border-radius: 0;
    -webkit-appearance: none !important;
    appearance: none !important;
    background: none !important;
    color: #fff !important;
    box-shadow: none !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    cursor: pointer;
    transition: color 0.25s ease, opacity 0.25s ease, transform 0.25s ease;
}

body.theme-cinematic .has-cinematic-video .cinematic-sound-toggle:hover,
body.theme-cinematic .has-cinematic-video .cinematic-sound-toggle:focus-visible {
    background: none !important;
    color: #fff !important;
    opacity: 1;
    transform: scale(1.08);
}

body.theme-cinematic .cinematic-sound-icon {
    grid-area: 1 / 1;
    width: 23px;
    height: 23px;
    fill: none !important;
    stroke: #fff !important;
    color: #fff !important;
}

body.theme-cinematic .cinematic-sound-icon path,
body.theme-cinematic .cinematic-sound-icon line,
body.theme-cinematic .cinematic-sound-icon polygon {
    fill: none !important;
    stroke: #fff !important;
}

body.theme-cinematic .has-cinematic-video .cinematic-sound-toggle::before,
body.theme-cinematic .has-cinematic-video .cinematic-sound-toggle::after {
    content: none !important;
    display: none !important;
    background: none !important;
}

body.theme-cinematic .cinematic-sound-icon-on,
body.theme-cinematic .cinematic-sound-toggle.is-audible .cinematic-sound-icon-off {
    display: none;
}

body.theme-cinematic .cinematic-sound-toggle.is-audible .cinematic-sound-icon-on {
    display: block;
}

@media (max-width: 700px) {
    body.theme-cinematic .brand-mark {
        font-size: 1.75rem;
    }

    body.theme-cinematic .brand-name {
        font-size: 0.56rem;
    }

    body.theme-cinematic .has-cinematic-video .cinematic-sound-toggle {
        right: 16px;
        bottom: 28px;
    }

    body.theme-cinematic .games-page {
        overflow-x: clip;
    }

    body.theme-cinematic .games-page > section > .container,
    body.theme-cinematic .games-page > .games-hero.has-cinematic-video > .container {
        width: calc(100% - 48px) !important;
        max-width: none !important;
        margin-right: 24px !important;
        margin-left: 24px !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        box-sizing: border-box;
    }

    body.theme-cinematic .games-world,
    body.theme-cinematic .games-usecase-grid article,
    body.theme-cinematic .games-outcome-grid article {
        padding-right: 24px !important;
        padding-left: 24px !important;
    }

    body.theme-cinematic .games-topic-list li,
    body.theme-cinematic .games-mechanic-list > div,
    body.theme-cinematic .games-process-list li {
        padding-right: 18px;
        padding-left: 18px;
    }

    body.theme-cinematic .games-hero h1,
    body.theme-cinematic .games-page h2,
    body.theme-cinematic .games-page h3,
    body.theme-cinematic .games-page p {
        overflow-wrap: anywhere;
    }
}

/* Every subpage hero uses the same quiet accent-colour kicker. */
body.theme-cinematic .has-cinematic-video .label {
    display: inline-block !important;
    width: auto !important;
    margin: 0 0 1.15rem !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: none !important;
    box-shadow: none !important;
    color: var(--page-accent) !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    animation: none !important;
}

body.theme-cinematic .has-cinematic-video .label::before,
body.theme-cinematic .has-cinematic-video .label::after {
    content: none !important;
    display: none !important;
}

body.theme-cinematic .kk-title {
    color: var(--page-text, #e8e7e2) !important;
    font-weight: 600 !important;
}

body.theme-cinematic .kk-card-placeholder .kk-title {
    color: var(--page-copy-soft, #aeb5b5) !important;
}

/* Vorträge: editorial content instead of presentation slides and outlined cards. */
body.theme-cinematic .speaker-mission,
body.theme-cinematic .speaker-audiences {
    padding-block: clamp(92px, 11vw, 160px) !important;
}

body.theme-cinematic .speaker-mission-grid {
    display: grid;
    grid-template-columns: minmax(280px, 0.82fr) minmax(0, 1.18fr);
    gap: clamp(56px, 10vw, 150px);
    align-items: start;
    max-width: none !important;
    text-align: left !important;
}

body.theme-cinematic .speaker-mission-heading h2,
body.theme-cinematic .speaker-audiences-head h2 {
    margin: 0 !important;
    color: var(--mk-ivory) !important;
    font-family: var(--font-display);
    font-size: clamp(3.1rem, 5.8vw, 6rem) !important;
    font-weight: 400 !important;
    letter-spacing: -0.055em;
    line-height: 0.94;
}

body.theme-cinematic .speaker-mission-heading h2 span {
    display: block;
    margin-top: clamp(18px, 2.4vw, 34px);
    color: rgba(241, 239, 233, 0.5) !important;
    font-size: 0.58em;
    font-weight: 400;
    font-style: italic;
    letter-spacing: -0.035em;
    line-height: 1.15;
}

body.theme-cinematic .speaker-mission-lead {
    margin: 0 0 clamp(40px, 5vw, 72px) !important;
    color: rgba(241, 239, 233, 0.78) !important;
    font-size: clamp(1.15rem, 1.7vw, 1.45rem) !important;
    line-height: 1.65 !important;
}

body.theme-cinematic .speaker-principle {
    position: relative;
    padding: 0 0 0 30px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: none !important;
    box-shadow: none !important;
}

body.theme-cinematic .speaker-principle::before {
    content: "";
    position: absolute;
    top: 0.62rem;
    left: 0;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--mk-cyan);
    box-shadow: 0 0 18px rgba(96, 220, 224, 0.35);
}

body.theme-cinematic .speaker-principle strong {
    display: block;
    margin-bottom: 12px;
    color: var(--mk-ivory) !important;
    font-size: 1.08rem;
}

body.theme-cinematic .speaker-principle p {
    margin: 0 !important;
    color: var(--mk-muted) !important;
    line-height: 1.7;
}

body.theme-cinematic .speaker-audiences-head {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(250px, 0.8fr);
    gap: clamp(50px, 9vw, 140px);
    align-items: end;
    margin-bottom: clamp(52px, 7vw, 92px) !important;
    text-align: left !important;
}

body.theme-cinematic .speaker-audiences-head > p {
    max-width: 420px;
    margin: 0 0 0.5rem auto !important;
    color: rgba(241, 239, 233, 0.62) !important;
    font-size: 1.05rem;
    line-height: 1.65;
}

body.theme-cinematic .context-tabs-wrapper {
    display: flex;
    gap: clamp(24px, 4vw, 62px);
    margin: 0 0 clamp(50px, 6vw, 78px) !important;
    padding: 0 !important;
    border: 0 !important;
    overflow-x: auto;
    scrollbar-width: none;
}

body.theme-cinematic .context-tabs-wrapper::-webkit-scrollbar {
    display: none;
}

body.theme-cinematic .ctx-tab,
body.theme-cinematic .has-cinematic-video .ctx-tab {
    position: relative;
    flex: 0 0 auto;
    padding: 0 0 0 14px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: none !important;
    color: rgba(241, 239, 233, 0.42) !important;
    box-shadow: none !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.02em;
    transform: none !important;
}

body.theme-cinematic .ctx-tab::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--mk-cyan);
    opacity: 0;
    transform: translateY(-50%);
}

body.theme-cinematic .ctx-tab::after {
    content: none !important;
    display: none !important;
}

body.theme-cinematic .ctx-tab.active {
    color: var(--mk-ivory) !important;
}

body.theme-cinematic .ctx-tab.active::before {
    opacity: 1;
}

body.theme-cinematic .ctx-tab:hover,
body.theme-cinematic .ctx-tab:focus-visible {
    background: none !important;
    color: rgba(241, 239, 233, 0.8) !important;
    transform: none !important;
}

body.theme-cinematic .ctx-content-wrapper {
    min-height: 0 !important;
}

body.theme-cinematic .ctx-content {
    filter: none !important;
    transition: opacity 0.25s ease, transform 0.25s ease !important;
}

body.theme-cinematic .ctx-layout {
    grid-template-columns: minmax(0, 1.35fr) minmax(260px, 0.65fr) !important;
    gap: clamp(60px, 9vw, 140px) !important;
    align-items: start !important;
}

body.theme-cinematic .ctx-layout h3 {
    margin: 0 0 1.4rem !important;
    color: var(--mk-ivory) !important;
    font-family: var(--font-display);
    font-size: clamp(2rem, 3vw, 3.1rem) !important;
    font-weight: 400 !important;
    letter-spacing: -0.035em;
    line-height: 1.08;
}

body.theme-cinematic .ctx-layout > div:first-child > p {
    max-width: 720px;
    margin: 0 0 2rem !important;
    color: rgba(241, 239, 233, 0.65) !important;
    font-size: 1.05rem !important;
    line-height: 1.75;
}

body.theme-cinematic .ctx-layout ul {
    margin: 0 !important;
    padding: 0 !important;
    color: rgba(241, 239, 233, 0.62) !important;
}

body.theme-cinematic .ctx-layout li {
    position: relative;
    display: block !important;
    margin-bottom: 14px !important;
    padding-left: 20px;
    color: rgba(241, 239, 233, 0.62) !important;
    line-height: 1.55;
}

body.theme-cinematic .ctx-layout li > span {
    display: none !important;
}

body.theme-cinematic .ctx-layout li::before {
    content: "";
    position: absolute;
    top: 0.67em;
    left: 0;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: rgba(96, 220, 224, 0.72);
}

body.theme-cinematic .ctx-layout li strong {
    margin-right: 0.35em;
    color: var(--mk-ivory) !important;
}

body.theme-cinematic .quote-box {
    align-self: center;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: none !important;
    color: rgba(241, 239, 233, 0.8) !important;
    box-shadow: none !important;
    font-family: var(--font-display);
    font-size: clamp(1.45rem, 2.3vw, 2.25rem) !important;
    font-style: italic;
    line-height: 1.4 !important;
    transform: none !important;
}

body.theme-cinematic .quote-box::before {
    content: "“" !important;
    position: static !important;
    display: block;
    width: auto !important;
    height: auto !important;
    margin-bottom: 12px;
    color: var(--mk-cyan) !important;
    background: none !important;
    font-size: 3.5rem !important;
    line-height: 0.6;
}

body.theme-cinematic .quote-box:hover {
    background: none !important;
    box-shadow: none !important;
    transform: none !important;
}

body.theme-cinematic #module .container > h2 {
    margin-bottom: 1.5rem !important;
    color: var(--mk-ivory) !important;
    font-family: var(--font-display);
    font-size: clamp(3rem, 5vw, 5.5rem) !important;
    font-weight: 400 !important;
    letter-spacing: -0.05em;
}

body.theme-cinematic #module .container > p {
    max-width: 800px !important;
    margin-bottom: clamp(54px, 7vw, 92px) !important;
    color: rgba(241, 239, 233, 0.62) !important;
    line-height: 1.75 !important;
}

body.theme-cinematic .bento-grid {
    counter-reset: speaker-module;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: clamp(42px, 6vw, 92px) clamp(32px, 5vw, 76px) !important;
}

body.theme-cinematic .bento-card {
    counter-increment: speaker-module;
    min-height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: none !important;
    box-shadow: none !important;
    transform: none !important;
}

body.theme-cinematic .bento-card::before {
    content: counter(speaker-module, decimal-leading-zero) !important;
    position: static !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    margin-bottom: 22px;
    color: var(--mk-cyan) !important;
    background: none !important;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    line-height: 1;
}

body.theme-cinematic .bento-card::after,
body.theme-cinematic .bento-icon {
    content: none !important;
    display: none !important;
}

body.theme-cinematic .bento-card h3 {
    margin-bottom: 0.75rem !important;
    color: var(--mk-ivory) !important;
    font-family: var(--font-display);
    font-size: 1.75rem !important;
    font-weight: 400 !important;
}

body.theme-cinematic .bento-card p {
    color: var(--mk-muted) !important;
    font-size: 0.98rem !important;
    line-height: 1.65;
}

body.theme-cinematic .bento-card:hover {
    background: none !important;
    box-shadow: none !important;
    transform: none !important;
}

@media (max-width: 800px) {
    body.theme-cinematic .speaker-mission-grid,
    body.theme-cinematic .speaker-audiences-head,
    body.theme-cinematic .ctx-layout {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 42px !important;
    }

    body.theme-cinematic .speaker-audiences-head > p {
        margin-left: 0 !important;
    }

    body.theme-cinematic .context-tabs-wrapper {
        gap: 24px;
    }

    body.theme-cinematic .quote-box {
        max-width: 600px;
    }

    body.theme-cinematic .bento-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 48px !important;
    }
}

/* KI Games — implemented work showcase */
body.theme-cinematic .games-showcase {
    overflow: hidden;
    background:
        radial-gradient(circle at 82% 8%, rgba(91, 218, 231, 0.075), transparent 30%),
        #090b0c !important;
}

body.theme-cinematic .games-showcase-head {
    margin-bottom: clamp(42px, 6vw, 78px);
}

body.theme-cinematic .games-featured {
    overflow: hidden;
    border: 1px solid rgba(232, 231, 226, 0.16);
    background: #0d1011;
}

body.theme-cinematic .games-featured-media {
    position: relative;
    aspect-ratio: 16 / 8.35;
    overflow: hidden;
    background: #070808;
}

body.theme-cinematic .games-featured-media::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 58%, rgba(6, 8, 8, 0.82));
    content: "";
    pointer-events: none;
}

body.theme-cinematic .games-featured-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 48%;
    transition: transform 700ms cubic-bezier(0.22, 1, 0.36, 1);
}

@media (hover: hover) {
    body.theme-cinematic .games-featured:hover .games-featured-media img {
        transform: scale(1.018);
    }
}

body.theme-cinematic .games-live-badge {
    position: absolute;
    z-index: 2;
    top: clamp(16px, 2vw, 28px);
    left: clamp(16px, 2vw, 28px);
    display: inline-flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.7rem 0.9rem;
    border: 1px solid rgba(232, 231, 226, 0.26);
    background: rgba(6, 8, 8, 0.82);
    color: var(--mk-ivory);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    backdrop-filter: blur(12px);
}

body.theme-cinematic .games-live-badge i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #7ee695;
    box-shadow: 0 0 0 5px rgba(126, 230, 149, 0.12);
}

body.theme-cinematic .games-featured-body {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(300px, 0.8fr);
    gap: clamp(40px, 7vw, 110px);
    align-items: end;
    padding: clamp(28px, 5vw, 64px);
}

body.theme-cinematic .games-project-type {
    display: block;
    margin-bottom: 0.85rem;
    color: var(--mk-cyan);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

body.theme-cinematic .games-featured-copy h3 {
    margin: 0 0 1.15rem;
    color: var(--mk-ivory);
    font-size: clamp(2.35rem, 4.4vw, 5rem);
    font-weight: 400;
    letter-spacing: -0.045em;
    line-height: 0.96;
}

body.theme-cinematic .games-featured-copy p {
    max-width: 690px;
    margin: 0 0 1.7rem;
    color: rgba(232, 231, 226, 0.7) !important;
    font-size: clamp(1rem, 1.3vw, 1.15rem);
    line-height: 1.65;
}

body.theme-cinematic .games-play-link {
    gap: 0.65rem;
}

body.theme-cinematic .games-featured-facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 0;
    border-top: 1px solid rgba(232, 231, 226, 0.18);
}

body.theme-cinematic .games-featured-facts div {
    padding: 1.3rem 0.75rem 0;
    border-right: 1px solid rgba(232, 231, 226, 0.12);
}

body.theme-cinematic .games-featured-facts div:last-child {
    border-right: 0;
}

body.theme-cinematic .games-featured-facts dt {
    margin-bottom: 0.35rem;
    color: var(--mk-ivory);
    font-family: var(--font-display);
    font-size: clamp(1.75rem, 3vw, 2.75rem);
    line-height: 1;
}

body.theme-cinematic .games-featured-facts dd {
    margin: 0;
    color: var(--mk-muted);
    font-size: 0.7rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

body.theme-cinematic .games-press-head,
body.theme-cinematic .games-archive-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 2rem;
    margin: clamp(82px, 10vw, 140px) 0 clamp(32px, 4vw, 52px);
}

body.theme-cinematic .games-press-head .games-kicker,
body.theme-cinematic .games-archive-head .games-kicker {
    margin-bottom: 0.75rem;
}

body.theme-cinematic .games-press-head h3,
body.theme-cinematic .games-archive-head h3 {
    max-width: 820px;
    margin: 0;
    color: var(--mk-ivory);
    font-size: clamp(2.1rem, 4.3vw, 4.8rem);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 0.98;
}

body.theme-cinematic .games-press-count,
body.theme-cinematic .games-archive-count {
    flex: 0 0 auto;
    color: rgba(232, 231, 226, 0.45);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

body.theme-cinematic .games-press-grid {
    display: flex;
    overflow-x: auto;
    padding-bottom: 18px;
    border-top: 1px solid rgba(232, 231, 226, 0.17);
    border-bottom: 1px solid rgba(232, 231, 226, 0.17);
    scroll-snap-type: x mandatory;
    scrollbar-color: rgba(91, 218, 231, 0.6) rgba(232, 231, 226, 0.08);
    scrollbar-width: thin;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
}

body.theme-cinematic .games-press-grid::-webkit-scrollbar {
    height: 5px;
}

body.theme-cinematic .games-press-grid::-webkit-scrollbar-track {
    background: rgba(232, 231, 226, 0.08);
}

body.theme-cinematic .games-press-grid::-webkit-scrollbar-thumb {
    background: rgba(91, 218, 231, 0.62);
}

body.theme-cinematic .games-press-card {
    display: flex;
    min-width: 0;
    flex: 0 0 clamp(290px, 30vw, 390px);
    flex-direction: column;
    padding: clamp(18px, 2vw, 28px);
    border-right: 1px solid rgba(232, 231, 226, 0.13);
    color: var(--mk-ivory) !important;
    text-decoration: none;
    scroll-snap-align: start;
    transition: background-color 220ms ease;
}

body.theme-cinematic .games-press-card:last-child {
    border-right: 0;
}

body.theme-cinematic .games-press-card:hover,
body.theme-cinematic .games-press-card:focus-visible {
    background: rgba(91, 218, 231, 0.055);
}

body.theme-cinematic .games-press-image {
    aspect-ratio: 16 / 9;
    margin-bottom: 1.35rem;
    overflow: hidden;
    background: #131718;
}

body.theme-cinematic .games-press-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
    filter: saturate(0.72) contrast(1.04);
    transition: filter 220ms ease, transform 420ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.theme-cinematic .games-press-card:hover .games-press-image img {
    filter: saturate(1) contrast(1.02);
    transform: scale(1.025);
}

body.theme-cinematic .games-press-meta {
    display: flex;
    justify-content: space-between;
    gap: 0.8rem;
    margin-bottom: 0.8rem;
    color: var(--mk-cyan);
    font-size: 0.59rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.35;
    text-transform: uppercase;
}

body.theme-cinematic .games-press-meta time {
    color: rgba(232, 231, 226, 0.4);
}

body.theme-cinematic .games-press-card strong {
    margin-bottom: 1.35rem;
    color: rgba(232, 231, 226, 0.9);
    font-size: clamp(0.98rem, 1.25vw, 1.15rem);
    font-weight: 500;
    line-height: 1.45;
}

body.theme-cinematic .games-press-link {
    margin-top: auto;
    color: rgba(232, 231, 226, 0.46);
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

body.theme-cinematic .games-rail-controls {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

body.theme-cinematic .games-archive-count {
    margin-right: 0.55rem;
}

body.theme-cinematic .games-rail-button {
    display: inline-grid;
    width: 46px;
    height: 46px;
    place-items: center;
    border: 1px solid rgba(232, 231, 226, 0.22);
    border-radius: 0;
    background: transparent;
    color: var(--mk-ivory);
    font-size: 1.15rem;
    cursor: pointer;
    transition: border-color 180ms ease, background-color 180ms ease, color 180ms ease;
}

body.theme-cinematic .games-rail-button:hover,
body.theme-cinematic .games-rail-button:focus-visible {
    border-color: var(--mk-cyan);
    background: var(--mk-cyan);
    color: #071012;
}

body.theme-cinematic .games-rail-button:disabled {
    opacity: 0.28;
    cursor: default;
}

body.theme-cinematic .games-rail-wrap {
    width: 100%;
}

body.theme-cinematic .games-rail {
    display: flex;
    gap: clamp(14px, 1.6vw, 24px);
    overflow-x: auto;
    padding: 0 max(20px, calc((100vw - 1240px) / 2)) 22px;
    scroll-padding-inline: max(20px, calc((100vw - 1240px) / 2));
    scroll-snap-type: x mandatory;
    scrollbar-color: rgba(91, 218, 231, 0.6) rgba(232, 231, 226, 0.08);
    scrollbar-width: thin;
    overscroll-behavior-inline: contain;
}

body.theme-cinematic .games-rail:focus-visible {
    outline: 1px solid var(--mk-cyan);
    outline-offset: 5px;
}

body.theme-cinematic .games-rail::-webkit-scrollbar {
    height: 5px;
}

body.theme-cinematic .games-rail::-webkit-scrollbar-track {
    background: rgba(232, 231, 226, 0.08);
}

body.theme-cinematic .games-rail::-webkit-scrollbar-thumb {
    background: rgba(91, 218, 231, 0.62);
}

body.theme-cinematic .games-card {
    position: relative;
    flex: 0 0 clamp(300px, 36vw, 500px);
    scroll-snap-align: start;
    overflow: hidden;
    border: 1px solid rgba(232, 231, 226, 0.15);
    background: #0d1011;
}

body.theme-cinematic .games-card::after {
    position: absolute;
    inset: 0;
    border: 1px solid transparent;
    content: "";
    pointer-events: none;
    transition: border-color 180ms ease;
}

body.theme-cinematic .games-card:hover::after {
    border-color: rgba(91, 218, 231, 0.58);
}

body.theme-cinematic .games-card > img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    background: #141718;
    filter: saturate(0.82);
    transition: filter 220ms ease, transform 500ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.theme-cinematic .games-card:hover > img {
    filter: saturate(1);
    transform: scale(1.02);
}

body.theme-cinematic .games-card-body {
    padding: clamp(19px, 2vw, 28px);
    border-top: 1px solid rgba(232, 231, 226, 0.12);
}

body.theme-cinematic .games-card-body span {
    display: block;
    margin-bottom: 0.55rem;
    color: var(--mk-cyan);
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

body.theme-cinematic .games-card-body h4 {
    margin: 0;
    color: var(--mk-ivory);
    font-family: var(--font-display);
    font-size: clamp(1.45rem, 2.3vw, 2.35rem);
    font-weight: 400;
    letter-spacing: -0.035em;
    line-height: 1.05;
}

@media (max-width: 800px) {
    body.theme-cinematic .games-featured-body {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    body.theme-cinematic .games-press-head,
    body.theme-cinematic .games-archive-head {
        align-items: start;
        flex-direction: column;
    }

    body.theme-cinematic .games-rail-controls {
        width: 100%;
    }

    body.theme-cinematic .games-archive-count {
        margin-right: auto;
    }

    body.theme-cinematic .games-card {
        flex-basis: min(84vw, 430px);
    }
}

@media (max-width: 620px) {
    body.theme-cinematic .games-featured-media {
        aspect-ratio: 4 / 3;
    }

    body.theme-cinematic .games-featured-media img {
        object-position: 56% center;
    }

    body.theme-cinematic .games-featured-facts {
        grid-template-columns: 1fr;
    }

    body.theme-cinematic .games-featured-facts div {
        display: grid;
        grid-template-columns: 90px 1fr;
        align-items: baseline;
        padding: 0.9rem 0;
        border-right: 0;
        border-bottom: 1px solid rgba(232, 231, 226, 0.12);
    }

    body.theme-cinematic .games-featured-facts div:last-child {
        border-bottom: 0;
    }

    body.theme-cinematic .games-featured-facts dt {
        margin: 0;
    }

    body.theme-cinematic .games-press-card {
        flex-basis: min(82vw, 350px);
    }

    body.theme-cinematic .games-archive-head h3,
    body.theme-cinematic .games-press-head h3 {
        font-size: clamp(2.15rem, 10.5vw, 3.3rem);
    }
}

@media (prefers-reduced-motion: reduce) {
    body.theme-cinematic .games-featured-media img,
    body.theme-cinematic .games-card > img,
    body.theme-cinematic .games-press-image img {
        transition: none;
    }
}

/* Final contrast safeguards, kept last so legacy page styles cannot win. */
body.theme-cinematic.page-index .btn-text {
    border-bottom-color: rgba(var(--page-accent-rgb), 0.52) !important;
    color: var(--page-accent-light) !important;
}

body.theme-cinematic.page-markuskirchmair .kw-banner .kw-cta,
body.theme-cinematic.page-markuskirchmair .kw-promo-card .kw-cta {
    background: var(--page-accent) !important;
    color: var(--page-bg) !important;
}

body.theme-cinematic.page-coach button[onclick*="KI-Coach Erstgespräch"] {
    background: var(--page-accent) !important;
    color: var(--page-bg) !important;
}

body.theme-cinematic.page-workshops .ws-branche-chip span {
    color: var(--page-text) !important;
}

body.theme-cinematic .has-cinematic-video .label {
    border: 0 !important;
    background: none !important;
    box-shadow: none !important;
    color: var(--page-accent) !important;
    animation: none !important;
}

/* Final alignment pass: full-width press rail, uniform sound control and
   readable home-page navigation/CTA controls. */
body.theme-cinematic #hero-container > .hero-overlay {
    width: 100% !important;
    max-width: none !important;
    flex: 0 0 100% !important;
}

body.theme-cinematic #hero-container .press-logos {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

body.theme-cinematic #hero-container .press-logo[alt="MeinBezirk"] {
    opacity: 1 !important;
    max-width: clamp(82px, 8vw, 128px) !important;
}

body.theme-cinematic .has-cinematic-video .cinematic-sound-toggle,
body.theme-cinematic .has-cinematic-video:not(#hero-container) .cinematic-sound-toggle {
    right: clamp(20px, 3vw, 48px) !important;
    bottom: clamp(96px, 14vh, 152px) !important;
}

body.theme-cinematic .slider-arrow {
    border: 1px solid rgba(232, 231, 226, 0.42) !important;
    background: rgba(255, 255, 255, 0.035) !important;
    color: var(--page-text, #e8e7e2) !important;
    font-size: 1.35rem !important;
    font-weight: 400 !important;
    line-height: 1 !important;
}

body.theme-cinematic .slider-arrow:hover,
body.theme-cinematic .slider-arrow:focus-visible {
    border-color: var(--page-accent) !important;
    background: rgba(var(--page-accent-rgb), 0.12) !important;
    color: var(--page-accent-light) !important;
}

body.theme-cinematic .slider-dot {
    background: rgba(232, 231, 226, 0.28) !important;
}

body.theme-cinematic .slider-dot.active {
    background: var(--page-accent) !important;
}

body.theme-cinematic .cta-section > .container {
    text-align: center !important;
}

body.theme-cinematic .cta-section h2 {
    width: min(100%, 1100px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    text-align: center !important;
}

body.theme-cinematic .cta-section h2::before,
body.theme-cinematic .cta-section h2::after {
    content: none !important;
    display: none !important;
}

@media (max-width: 700px) {
    body.theme-cinematic .has-cinematic-video .cinematic-sound-toggle,
    body.theme-cinematic .has-cinematic-video:not(#hero-container) .cinematic-sound-toggle {
        right: 16px !important;
        bottom: 108px !important;
    }
}

/* Career gallery: keep front and back faces optically and technically separate. */
body.theme-cinematic .gallery-item,
body.theme-cinematic .degree-card {
    isolation: isolate;
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
}

body.theme-cinematic .gallery-item .card-inner,
body.theme-cinematic .degree-card .degree-card-inner {
    transform: rotateY(0deg);
    transform-style: preserve-3d !important;
    -webkit-transform-style: preserve-3d !important;
    will-change: transform;
}

body.theme-cinematic .gallery-item .card-front,
body.theme-cinematic .gallery-item .card-back,
body.theme-cinematic .degree-card .degree-card-front,
body.theme-cinematic .degree-card .degree-card-back {
    inset: 0;
    overflow: hidden;
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
    transition: opacity 0.18s linear;
}

body.theme-cinematic .gallery-item .card-front,
body.theme-cinematic .degree-card .degree-card-front {
    z-index: 2;
    opacity: 1;
    transform: rotateY(0deg) translateZ(1px) !important;
}

body.theme-cinematic .gallery-item .card-back,
body.theme-cinematic .degree-card .degree-card-back {
    z-index: 1;
    opacity: 0;
    transform: rotateY(180deg) translateZ(1px) !important;
}

body.theme-cinematic .gallery-item:hover .card-inner,
body.theme-cinematic .gallery-item:focus-within .card-inner,
body.theme-cinematic .degree-card:hover .degree-card-inner,
body.theme-cinematic .degree-card:focus-within .degree-card-inner {
    transform: rotateY(180deg) !important;
}

body.theme-cinematic .gallery-item:hover .card-front,
body.theme-cinematic .gallery-item:focus-within .card-front,
body.theme-cinematic .degree-card:hover .degree-card-front,
body.theme-cinematic .degree-card:focus-within .degree-card-front {
    opacity: 0;
}

body.theme-cinematic .gallery-item:hover .card-back,
body.theme-cinematic .gallery-item:focus-within .card-back,
body.theme-cinematic .degree-card:hover .degree-card-back,
body.theme-cinematic .degree-card:focus-within .degree-card-back {
    opacity: 1;
}

body.theme-cinematic .gallery-item .card-back {
    padding: clamp(26px, 3vw, 38px) !important;
    background: var(--page-surface-raised) !important;
}

body.theme-cinematic .gallery-item .card-back h4 {
    color: var(--page-accent) !important;
}

body.theme-cinematic .gallery-item .card-back p {
    color: var(--page-copy) !important;
}

body.theme-cinematic .gallery-item .tape {
    border-color: rgba(var(--page-accent-rgb), 0.2) !important;
    background: rgba(var(--page-accent-rgb), 0.1) !important;
}

/* ==========================================================================
   Unified editorial system — one colour family per route
   ========================================================================== */
body.theme-cinematic {
    --page-accent: #73d4c8;
    --page-accent-light: #a6e8e0;
    --page-accent-dark: #2f827a;
    --page-accent-rgb: 115, 212, 200;
    --page-bg: #080a0b;
    --page-bg-alt: #0a0d0f;
    --page-surface: #0f1315;
    --page-surface-raised: #13181b;
    --page-text: #eeeDE8;
    --page-copy: #b2b7b6;
    --page-copy-soft: #858c8c;
    --page-max: 1280px;
    --page-gutter: clamp(24px, 4.5vw, 72px);
    --section-space: clamp(88px, 10vw, 152px);
    --content-gap: clamp(42px, 7vw, 104px);
    --mk-cyan: var(--page-accent);
    --accent-blue: var(--page-accent);
    --accent: var(--page-accent);
    background-color: var(--page-bg) !important;
    background-image: radial-gradient(circle at 84% 12%, rgba(var(--page-accent-rgb), 0.055), transparent 34rem) !important;
}

body.theme-cinematic.page-index {
    --page-accent: #7fa9db;
    --page-accent-light: #b7d2ef;
    --page-accent-dark: #476f9f;
    --page-accent-rgb: 127, 169, 219;
}

body.theme-cinematic.page-markuskirchmair {
    --page-accent: #d5a66e;
    --page-accent-light: #f0c995;
    --page-accent-dark: #805a34;
    --page-accent-rgb: 213, 166, 110;
}

body.theme-cinematic.page-coach {
    --page-accent: #b6a1e5;
    --page-accent-light: #d7c9f4;
    --page-accent-dark: #67528f;
    --page-accent-rgb: 182, 161, 229;
}

body.theme-cinematic.page-vortraege {
    --page-accent: #f18470;
    --page-accent-light: #ffb1a2;
    --page-accent-dark: #9a493e;
    --page-accent-rgb: 241, 132, 112;
}

body.theme-cinematic.page-workshops {
    --page-accent: #e1b65a;
    --page-accent-light: #f4d58a;
    --page-accent-dark: #8b6824;
    --page-accent-rgb: 225, 182, 90;
}

body.theme-cinematic.page-ki-games {
    --page-accent: #b6ce72;
    --page-accent-light: #dce9a4;
    --page-accent-dark: #697c37;
    --page-accent-rgb: 182, 206, 114;
}

body.theme-cinematic.page-buecher,
body.theme-cinematic[class*="page-buch-"] {
    --page-accent: #73d4c8;
    --page-accent-light: #a6e8e0;
    --page-accent-dark: #2f827a;
    --page-accent-rgb: 115, 212, 200;
}

body.theme-cinematic.page-aktuelles,
body.theme-cinematic.page-artikel {
    --page-accent: #d28da8;
    --page-accent-light: #edb9cd;
    --page-accent-dark: #824e62;
    --page-accent-rgb: 210, 141, 168;
}

body.theme-cinematic ::selection {
    background: var(--page-accent) !important;
    color: var(--page-bg) !important;
}

body.theme-cinematic :focus-visible {
    outline: 2px solid var(--page-accent) !important;
    outline-offset: 4px;
}

body.theme-cinematic .container {
    width: 100% !important;
    max-width: calc(var(--page-max) + (2 * var(--page-gutter))) !important;
    margin-inline: auto !important;
    padding-inline: var(--page-gutter) !important;
    box-sizing: border-box;
}

body.theme-cinematic > section:not(.has-cinematic-video),
body.theme-cinematic main > section:not(.has-cinematic-video) {
    padding-block: var(--section-space) !important;
    border: 0 !important;
    background: var(--page-bg) !important;
}

body.theme-cinematic > section:not(.has-cinematic-video):nth-of-type(even),
body.theme-cinematic main > section:not(.has-cinematic-video):nth-of-type(even) {
    background: var(--page-bg-alt) !important;
}

body.theme-cinematic > section:not(.has-cinematic-video) + section:not(.has-cinematic-video),
body.theme-cinematic main > section:not(.has-cinematic-video) + section:not(.has-cinematic-video) {
    border-top: 0 !important;
}

body.theme-cinematic .label,
body.theme-cinematic [class*="eyebrow"],
body.theme-cinematic [class*="kicker"],
body.theme-cinematic [class*="-badge"],
body.theme-cinematic [class*="-tag"],
body.theme-cinematic [class*="-period"],
body.theme-cinematic [class*="-num"] {
    color: var(--page-accent) !important;
}

body.theme-cinematic .label,
body.theme-cinematic [class*="eyebrow"],
body.theme-cinematic [class*="kicker"] {
    display: block;
    margin-bottom: clamp(18px, 2vw, 28px) !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.19em !important;
    line-height: 1.2;
    text-transform: uppercase;
}

body.theme-cinematic section:not(.has-cinematic-video) h2,
body.theme-cinematic section:not(.has-cinematic-video) > .container > h3 {
    color: var(--page-text) !important;
    font-family: var(--font-display);
    font-weight: 400 !important;
    letter-spacing: -0.045em !important;
    line-height: 1.02 !important;
}

body.theme-cinematic section:not(.has-cinematic-video) > .container > h2,
body.theme-cinematic .section-header h2,
body.theme-cinematic .section-header-row h2,
body.theme-cinematic .games-section-head h2,
body.theme-cinematic .ws-headline,
body.theme-cinematic .coach-section > .container > h2,
body.theme-cinematic .mk-section > .container > h2 {
    max-width: 940px;
    margin: 0 0 clamp(24px, 3vw, 40px) !important;
    font-size: clamp(2.8rem, 5.2vw, 5.4rem) !important;
}

body.theme-cinematic section:not(.has-cinematic-video) p,
body.theme-cinematic section:not(.has-cinematic-video) li,
body.theme-cinematic .section-lead,
body.theme-cinematic .lead {
    color: var(--page-copy) !important;
}

body.theme-cinematic .section-lead,
body.theme-cinematic section:not(.has-cinematic-video) > .container > p {
    max-width: 760px;
    font-size: clamp(1.05rem, 1.45vw, 1.22rem) !important;
    line-height: 1.75 !important;
}

body.theme-cinematic .text-gradient-accent,
body.theme-cinematic [style*="color: #0891b2"],
body.theme-cinematic [style*="color:#0891b2"],
body.theme-cinematic [style*="color: #22d3ee"],
body.theme-cinematic [style*="color:#22d3ee"],
body.theme-cinematic [style*="color: #67e8f9"],
body.theme-cinematic [style*="color:#67e8f9"],
body.theme-cinematic [style*="color: #818cf8"],
body.theme-cinematic [style*="color:#818cf8"] {
    background: none !important;
    color: var(--page-accent) !important;
    -webkit-text-fill-color: currentColor !important;
    text-shadow: none !important;
}

body.theme-cinematic .nav-link::after,
body.theme-cinematic .nav-link.active::after,
body.theme-cinematic .pulse-dot,
body.theme-cinematic .scroll-progress,
body.theme-cinematic [class*="accent-line"] {
    background: var(--page-accent) !important;
}

body.theme-cinematic .scroll-progress {
    background-image: none !important;
    animation: none !important;
}

body.theme-cinematic .btn-primary,
body.theme-cinematic .cta-btn,
body.theme-cinematic .ws-btn-primary,
body.theme-cinematic .book-btn-primary,
body.theme-cinematic .games-btn-primary,
body.theme-cinematic button[type="submit"] {
    border-color: var(--page-accent) !important;
    background: var(--page-accent) !important;
    color: var(--page-bg) !important;
}

body.theme-cinematic .btn-primary:hover,
body.theme-cinematic .cta-btn:hover,
body.theme-cinematic .ws-btn-primary:hover,
body.theme-cinematic .book-btn-primary:hover,
body.theme-cinematic .games-btn-primary:hover,
body.theme-cinematic button[type="submit"]:hover {
    border-color: var(--page-accent-light) !important;
    background: var(--page-accent-light) !important;
    color: var(--page-bg) !important;
}

body.theme-cinematic .btn-outline,
body.theme-cinematic .ws-btn-outline,
body.theme-cinematic .book-btn-outline,
body.theme-cinematic .games-btn-secondary {
    border-color: rgba(var(--page-accent-rgb), 0.42) !important;
    background: transparent !important;
    color: var(--page-accent-light) !important;
}

body.theme-cinematic .btn-outline:hover,
body.theme-cinematic .ws-btn-outline:hover,
body.theme-cinematic .book-btn-outline:hover,
body.theme-cinematic .games-btn-secondary:hover {
    border-color: var(--page-accent) !important;
    background: rgba(var(--page-accent-rgb), 0.08) !important;
    color: var(--page-accent-light) !important;
}

body.theme-cinematic .has-cinematic-video .btn-primary,
body.theme-cinematic .has-cinematic-video .ws-btn-primary,
body.theme-cinematic .has-cinematic-video .games-btn-primary {
    border-color: var(--page-accent) !important;
    background: var(--page-accent) !important;
    color: var(--page-bg) !important;
}

body.theme-cinematic .berg-card,
body.theme-cinematic .narrative-card,
body.theme-cinematic .format-card,
body.theme-cinematic .branche-card,
body.theme-cinematic .qual-item,
body.theme-cinematic .rt-card,
body.theme-cinematic .editorial-card,
body.theme-cinematic .ws-goal-card,
body.theme-cinematic .ws-day-card,
body.theme-cinematic .ws-package-card,
body.theme-cinematic .ws-bento-item,
body.theme-cinematic .games-world,
body.theme-cinematic .games-usecase-grid article,
body.theme-cinematic .games-outcome-grid article {
    --card-accent: var(--page-accent) !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: linear-gradient(145deg, rgba(var(--page-accent-rgb), 0.07), rgba(255, 255, 255, 0.018) 42%, rgba(255, 255, 255, 0.008)) !important;
    box-shadow: inset 0 1px 0 rgba(var(--page-accent-rgb), 0.1) !important;
}

body.theme-cinematic .berg-card:hover,
body.theme-cinematic .narrative-card:hover,
body.theme-cinematic .format-card:hover,
body.theme-cinematic .branche-card:hover,
body.theme-cinematic .qual-item:hover,
body.theme-cinematic .rt-card:hover,
body.theme-cinematic .editorial-card:hover,
body.theme-cinematic .ws-goal-card:hover,
body.theme-cinematic .ws-day-card:hover,
body.theme-cinematic .ws-package-card:hover,
body.theme-cinematic .ws-bento-item:hover,
body.theme-cinematic .games-world:hover,
body.theme-cinematic .games-usecase-grid article:hover,
body.theme-cinematic .games-outcome-grid article:hover {
    border: 0 !important;
    background: linear-gradient(145deg, rgba(var(--page-accent-rgb), 0.105), rgba(255, 255, 255, 0.025) 48%, rgba(255, 255, 255, 0.01)) !important;
    box-shadow: inset 0 1px 0 rgba(var(--page-accent-rgb), 0.16), 0 24px 70px rgba(0, 0, 0, 0.22) !important;
    transform: translateY(-3px) !important;
}

body.theme-cinematic .berg-icon,
body.theme-cinematic .n-emoji,
body.theme-cinematic .format-card-icon,
body.theme-cinematic .ws-goal-icon,
body.theme-cinematic .branche-icon,
body.theme-cinematic .qual-icon {
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: none !important;
    color: var(--page-accent) !important;
    filter: grayscale(1) sepia(1) saturate(0.45) !important;
    opacity: 0.8;
    box-shadow: none !important;
}

body.theme-cinematic .branche-tags span,
body.theme-cinematic [class*="chip"],
body.theme-cinematic [class*="badge"] {
    border-color: rgba(var(--page-accent-rgb), 0.28) !important;
    background: rgba(var(--page-accent-rgb), 0.07) !important;
    color: var(--page-accent-light) !important;
}

body.theme-cinematic .timeline::before,
body.theme-cinematic .ws-timeline::before {
    background: linear-gradient(to bottom, var(--page-accent-dark), rgba(var(--page-accent-rgb), 0.08)) !important;
}

body.theme-cinematic .tl-item::before,
body.theme-cinematic .ws-timeline-dot {
    border-color: var(--page-bg-alt) !important;
    background: var(--page-accent) !important;
}

body.theme-cinematic .coach-quote,
body.theme-cinematic .ws-quote-block,
body.theme-cinematic .kw-banner,
body.theme-cinematic .quote-box {
    border: 0 !important;
    background: rgba(var(--page-accent-rgb), 0.075) !important;
    color: var(--page-text) !important;
    box-shadow: none !important;
}

body.theme-cinematic.page-vortraege .quote-box {
    padding: 0 !important;
    background: none !important;
}

body.theme-cinematic .faq-item,
body.theme-cinematic .ws-faq-item,
body.theme-cinematic details {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.theme-cinematic .faq-item + .faq-item,
body.theme-cinematic .ws-faq-item + .ws-faq-item,
body.theme-cinematic details + details {
    border-top: 1px solid rgba(var(--page-accent-rgb), 0.14) !important;
}

body.theme-cinematic .faq-icon,
body.theme-cinematic .ws-faq-icon,
body.theme-cinematic summary::marker {
    color: var(--page-accent) !important;
}

body.theme-cinematic .books-card,
body.theme-cinematic .book-card {
    --card-accent: var(--page-accent) !important;
}

body.theme-cinematic .books-card-badge,
body.theme-cinematic .book-bestseller-badge,
body.theme-cinematic .books-card-link,
body.theme-cinematic .book-meta {
    color: var(--page-accent) !important;
}

body.theme-cinematic .books-card::before,
body.theme-cinematic .book-card::before {
    background: var(--page-accent) !important;
}

body.theme-cinematic .games-world-accent,
body.theme-cinematic .games-topic-list span,
body.theme-cinematic .games-mechanic-list span,
body.theme-cinematic .games-process-list > li > span,
body.theme-cinematic .games-usecase-grid article > span {
    color: var(--page-accent) !important;
}

body.theme-cinematic footer a:hover,
body.theme-cinematic a[class*="-cta"],
body.theme-cinematic a[class*="-link"]:hover {
    color: var(--page-accent-light) !important;
}

@media (max-width: 800px) {
    body.theme-cinematic {
        --page-gutter: 24px;
        --section-space: clamp(72px, 20vw, 104px);
    }

    body.theme-cinematic > section:not(.has-cinematic-video),
    body.theme-cinematic main > section:not(.has-cinematic-video) {
        padding-block: var(--section-space) !important;
    }

    body.theme-cinematic section:not(.has-cinematic-video) > .container > h2,
    body.theme-cinematic .section-header h2,
    body.theme-cinematic .section-header-row h2,
    body.theme-cinematic .games-section-head h2,
    body.theme-cinematic .ws-headline,
    body.theme-cinematic .coach-section > .container > h2,
    body.theme-cinematic .mk-section > .container > h2 {
        font-size: clamp(2.45rem, 12vw, 4rem) !important;
    }
}

/* Header navigation previews the single accent family of each destination. */
body.theme-cinematic .nav-link,
body.theme-cinematic .mobile-menu-link {
    --nav-accent: var(--page-accent);
}

body.theme-cinematic .nav-link[href$="markuskirchmair"],
body.theme-cinematic .mobile-menu-link[href$="markuskirchmair"] {
    --nav-accent: #d5a66e;
}

body.theme-cinematic .nav-link[href$="coach"],
body.theme-cinematic .mobile-menu-link[href$="coach"] {
    --nav-accent: #b6a1e5;
}

body.theme-cinematic .nav-link[href$="vortraege"],
body.theme-cinematic .mobile-menu-link[href$="vortraege"] {
    --nav-accent: #f18470;
}

body.theme-cinematic .nav-link[href$="workshops"],
body.theme-cinematic .mobile-menu-link[href$="workshops"] {
    --nav-accent: #e1b65a;
}

body.theme-cinematic .nav-link[href$="ki-games"],
body.theme-cinematic .mobile-menu-link[href$="ki-games"] {
    --nav-accent: #b6ce72;
}

body.theme-cinematic .nav-link[href$="buecher"],
body.theme-cinematic .mobile-menu-link[href$="buecher"] {
    --nav-accent: #73d4c8;
}

body.theme-cinematic .nav-link[href$="aktuelles"],
body.theme-cinematic .mobile-menu-link[href$="aktuelles"] {
    --nav-accent: #d28da8;
}

body.theme-cinematic .nav-link[href*="loopmodel.org"],
body.theme-cinematic .mobile-menu-link[href*="loopmodel.org"] {
    --nav-accent: #9aa5b4;
}

body.theme-cinematic .nav-link:hover,
body.theme-cinematic .nav-link:focus-visible,
body.theme-cinematic .nav-link.active,
body.theme-cinematic .mobile-menu-link:hover,
body.theme-cinematic .mobile-menu-link:focus-visible,
body.theme-cinematic .mobile-menu-link.active {
    color: var(--nav-accent) !important;
}

body.theme-cinematic .nav-link:hover::after,
body.theme-cinematic .nav-link:focus-visible::after,
body.theme-cinematic .nav-link.active::after {
    background: var(--nav-accent) !important;
}

/* Language-route aliases inherit the same destination palette. */
body.theme-cinematic.page-speaking,
body.theme-cinematic.page-conferenze,
body.theme-cinematic.page-conferences,
body.theme-cinematic.page-conferencias {
    --page-accent: #f18470;
    --page-accent-light: #ffb1a2;
    --page-accent-dark: #9a493e;
    --page-accent-rgb: 241, 132, 112;
}

body.theme-cinematic.page-workshop,
body.theme-cinematic.page-ateliers,
body.theme-cinematic.page-talleres {
    --page-accent: #e1b65a;
    --page-accent-light: #f4d58a;
    --page-accent-dark: #8b6824;
    --page-accent-rgb: 225, 182, 90;
}

body.theme-cinematic.page-books,
body.theme-cinematic.page-libri,
body.theme-cinematic.page-livres,
body.theme-cinematic.page-libros {
    --page-accent: #73d4c8;
    --page-accent-light: #a6e8e0;
    --page-accent-dark: #2f827a;
    --page-accent-rgb: 115, 212, 200;
}

body.theme-cinematic.page-news,
body.theme-cinematic.page-post {
    --page-accent: #d28da8;
    --page-accent-light: #edb9cd;
    --page-accent-dark: #824e62;
    --page-accent-rgb: 210, 141, 168;
}

/* Shared density and component rhythm. */
body.theme-cinematic .berg-grid,
body.theme-cinematic .narrative-grid,
body.theme-cinematic .format-grid,
body.theme-cinematic .format-grid-wrapper,
body.theme-cinematic .branchen-grid,
body.theme-cinematic .qual-grid,
body.theme-cinematic .realtalk-grid,
body.theme-cinematic .ws-goals-grid,
body.theme-cinematic .ws-day-grid,
body.theme-cinematic .ws-branchen-grid,
body.theme-cinematic .games-world-grid,
body.theme-cinematic .games-usecase-grid,
body.theme-cinematic .games-outcome-grid,
body.theme-cinematic .posts-grid,
body.theme-cinematic .kw-promo-grid {
    gap: clamp(16px, 2vw, 28px) !important;
}

body.theme-cinematic .berg-card,
body.theme-cinematic .narrative-card,
body.theme-cinematic .format-card,
body.theme-cinematic .branche-card,
body.theme-cinematic .qual-item,
body.theme-cinematic .rt-card,
body.theme-cinematic .editorial-card,
body.theme-cinematic .ws-goal-card,
body.theme-cinematic .ws-day-card,
body.theme-cinematic .ws-package-card,
body.theme-cinematic .games-world,
body.theme-cinematic .games-usecase-grid article,
body.theme-cinematic .games-outcome-grid article,
body.theme-cinematic .kw-promo-card,
body.theme-cinematic .post-card {
    padding: clamp(24px, 3vw, 38px) !important;
}

body.theme-cinematic .kw-promo-card,
body.theme-cinematic .post-card {
    border: 0 !important;
    border-radius: 14px !important;
    background: linear-gradient(145deg, rgba(var(--page-accent-rgb), 0.065), rgba(255, 255, 255, 0.014) 46%, rgba(255, 255, 255, 0.006)) !important;
    box-shadow: inset 0 1px 0 rgba(var(--page-accent-rgb), 0.1) !important;
}

body.theme-cinematic .post-card {
    padding: 0 !important;
    overflow: hidden;
}

body.theme-cinematic .post-card .post-content {
    padding: clamp(24px, 3vw, 36px) !important;
}

body.theme-cinematic .kw-promo-card > div[style*="position: absolute"] {
    background: radial-gradient(circle at top right, rgba(var(--page-accent-rgb), 0.13), transparent 70%) !important;
}

body.theme-cinematic .kw-promo-card h3,
body.theme-cinematic .kw-promo-card p,
body.theme-cinematic .kw-promo-card span {
    color: var(--page-copy) !important;
}

body.theme-cinematic .kw-promo-card h3 {
    color: var(--page-text) !important;
}

body.theme-cinematic .kw-promo-card > div span,
body.theme-cinematic .kw-promo-card > span,
body.theme-cinematic .post-link,
body.theme-cinematic .post-type,
body.theme-cinematic .article-type,
body.theme-cinematic .degree-benefit-title,
body.theme-cinematic .format-card-label,
body.theme-cinematic .format-card-time,
body.theme-cinematic .ws-time,
body.theme-cinematic .ws-day-badge {
    color: var(--page-accent) !important;
}

body.theme-cinematic .kw-promo-card svg[fill]:not([fill="none"]),
body.theme-cinematic .kw-promo-card svg[fill]:not([fill="none"]) path {
    fill: var(--page-accent) !important;
}

body.theme-cinematic .kw-promo-card svg,
body.theme-cinematic .post-link svg {
    stroke: var(--page-accent) !important;
}

body.theme-cinematic .kw-cta {
    border: 0 !important;
    background: var(--page-accent) !important;
    color: var(--page-bg) !important;
}

body.theme-cinematic .filter-bar {
    gap: 8px !important;
    margin-block: clamp(46px, 7vw, 82px) clamp(32px, 5vw, 56px) !important;
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
}

body.theme-cinematic .filter-btn,
body.theme-cinematic .pagination-btn {
    border: 0 !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.035) !important;
    color: var(--page-copy-soft) !important;
    box-shadow: none !important;
}

body.theme-cinematic .filter-btn:hover,
body.theme-cinematic .pagination-btn:hover {
    background: rgba(var(--page-accent-rgb), 0.1) !important;
    color: var(--page-accent-light) !important;
}

body.theme-cinematic .filter-btn.active,
body.theme-cinematic .pagination-btn.active {
    background: var(--page-accent) !important;
    color: var(--page-bg) !important;
}

body.theme-cinematic .ws-package-note {
    border: 0 !important;
    background: linear-gradient(110deg, rgba(var(--page-accent-rgb), 0.09), rgba(255, 255, 255, 0.01) 72%) !important;
    box-shadow: inset 0 1px 0 rgba(var(--page-accent-rgb), 0.1) !important;
}

body.theme-cinematic .ref-badge,
body.theme-cinematic .post-type,
body.theme-cinematic .article-type {
    border: 0 !important;
    background: rgba(var(--page-accent-rgb), 0.08) !important;
    color: var(--page-accent-light) !important;
}

body.theme-cinematic .coach-quote blockquote,
body.theme-cinematic .ws-quote-block blockquote {
    color: var(--page-text) !important;
}

body.theme-cinematic .coach-quote cite,
body.theme-cinematic .ws-quote-block cite {
    color: var(--page-accent) !important;
}

/* Readability guard: legacy navy text must never survive on dark surfaces. */
body.theme-cinematic .rt-text,
body.theme-cinematic .format-card-desc,
body.theme-cinematic .format-card-footer,
body.theme-cinematic .bento-card p,
body.theme-cinematic .berg-card p,
body.theme-cinematic .narrative-card p,
body.theme-cinematic .branche-card p,
body.theme-cinematic .qual-text span,
body.theme-cinematic .post-excerpt,
body.theme-cinematic .ws-goal-card p,
body.theme-cinematic .ws-day-card p,
body.theme-cinematic .ws-package-note p,
body.theme-cinematic .faq-inner,
body.theme-cinematic .ws-faq-inner,
body.theme-cinematic [style*="color: #334155"],
body.theme-cinematic [style*="color:#334155"],
body.theme-cinematic [style*="color: #475569"],
body.theme-cinematic [style*="color:#475569"] {
    color: var(--page-copy) !important;
}

body.theme-cinematic [style*="color: #64748b"],
body.theme-cinematic [style*="color:#64748b"],
body.theme-cinematic [style*="color: #94a3b8"],
body.theme-cinematic [style*="color:#94a3b8"] {
    color: var(--page-copy-soft) !important;
}

body.theme-cinematic .rt-text,
body.theme-cinematic .faq-inner,
body.theme-cinematic .ws-faq-inner {
    font-weight: 400 !important;
    line-height: 1.7 !important;
}

body.theme-cinematic .rt-text strong,
body.theme-cinematic .faq-trigger,
body.theme-cinematic .ws-faq-trigger,
body.theme-cinematic .faq-trigger > span:first-child,
body.theme-cinematic .ws-faq-trigger > span:first-child {
    color: var(--page-text) !important;
}

body.theme-cinematic .faq-trigger,
body.theme-cinematic .ws-faq-trigger {
    background: transparent !important;
    opacity: 1 !important;
}

body.theme-cinematic .speaker-inline-quote {
    padding: clamp(24px, 3vw, 36px) !important;
    border: 0 !important;
    border-left: 3px solid var(--page-accent) !important;
    border-radius: 0 14px 14px 0 !important;
    background: rgba(var(--page-accent-rgb), 0.065) !important;
    color: var(--page-copy) !important;
    font-family: var(--font-display);
    font-size: clamp(1.2rem, 1.8vw, 1.55rem);
    line-height: 1.55;
}

/* All legacy accent aliases resolve to the current route's one colour family. */
body.theme-cinematic {
    --accent-color: var(--page-accent) !important;
    --accent-gradient: linear-gradient(135deg, var(--page-accent), var(--page-accent-dark)) !important;
    --ws-accent: var(--page-accent) !important;
    --ws-gradient: linear-gradient(135deg, var(--page-accent), var(--page-accent-dark)) !important;
    --ws-teal-glow: rgba(var(--page-accent-rgb), 0.15) !important;
}

body.theme-cinematic .has-cinematic-video .hero-badge,
body.theme-cinematic .has-cinematic-video .ws-hero-badge {
    border-color: rgba(var(--page-accent-rgb), 0.32) !important;
    border-bottom-color: rgba(var(--page-accent-rgb), 0.52) !important;
    background: rgba(var(--page-accent-rgb), 0.08) !important;
    color: var(--page-accent) !important;
}

body.theme-cinematic .hero-badge::before,
body.theme-cinematic .hero-badge::after,
body.theme-cinematic .ws-hero-badge::before,
body.theme-cinematic .ws-hero-badge::after,
body.theme-cinematic .rt-card::before,
body.theme-cinematic .narrative-card::before,
body.theme-cinematic .format-card-accent-line {
    background: var(--page-accent) !important;
}

body.theme-cinematic .speaker-principle::before {
    box-shadow: 0 0 18px rgba(var(--page-accent-rgb), 0.35) !important;
}

body.theme-cinematic .ctx-layout li::before {
    background: rgba(var(--page-accent-rgb), 0.78) !important;
}

/* Press marks are real white-alpha assets; no colour filter or backing plate. */
body.theme-cinematic .press-logo,
body.theme-cinematic #hero-container .press-logo,
body.theme-cinematic .mk-press-section .press-logo,
body.theme-cinematic .press-logos-mobile-section .press-logo {
    border: 0 !important;
    background: transparent !important;
    filter: none !important;
    opacity: 0.82 !important;
    box-shadow: none !important;
}

body.theme-cinematic .press-logo:hover,
body.theme-cinematic #hero-container .press-logo:hover,
body.theme-cinematic .mk-press-section .press-logo:hover {
    filter: none !important;
    opacity: 1 !important;
}

/* Shared transparent line-icon system, always using the route accent. */
body.theme-cinematic .ui-svg-icon {
    display: inline-flex;
    flex: 0 0 auto;
    width: 1.08em;
    height: 1.08em;
    margin-right: 0.18em;
    color: var(--page-accent) !important;
    vertical-align: -0.16em;
    filter: none !important;
}

body.theme-cinematic .ui-svg-icon svg {
    display: block;
    width: 100%;
    height: 100%;
    overflow: visible;
    fill: none !important;
    stroke: currentColor !important;
}

body.theme-cinematic .berg-icon,
body.theme-cinematic .n-emoji,
body.theme-cinematic .format-card-icon,
body.theme-cinematic .bento-icon,
body.theme-cinematic .ws-goal-icon,
body.theme-cinematic .branche-icon,
body.theme-cinematic .qual-icon,
body.theme-cinematic .book-highlight-icon,
body.theme-cinematic .ec-icon-bg {
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    width: 34px !important;
    height: 34px !important;
    margin-bottom: 20px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--page-accent) !important;
    font-size: 0 !important;
    filter: none !important;
    opacity: 1 !important;
    box-shadow: none !important;
}

body.theme-cinematic .berg-icon .ui-svg-icon,
body.theme-cinematic .n-emoji .ui-svg-icon,
body.theme-cinematic .format-card-icon .ui-svg-icon,
body.theme-cinematic .bento-icon .ui-svg-icon,
body.theme-cinematic .ws-goal-icon .ui-svg-icon,
body.theme-cinematic .branche-icon .ui-svg-icon,
body.theme-cinematic .qual-icon .ui-svg-icon,
body.theme-cinematic .book-highlight-icon .ui-svg-icon,
body.theme-cinematic .ec-icon-bg .ui-svg-icon {
    width: 28px;
    height: 28px;
    margin: 0;
}

body.theme-cinematic .hero-badge .ui-svg-icon,
body.theme-cinematic .ws-hero-badge .ui-svg-icon {
    width: 1.15em;
    height: 1.15em;
    margin-right: 0.5em;
}

@media (max-width: 800px) {
    body.theme-cinematic .berg-card,
    body.theme-cinematic .narrative-card,
    body.theme-cinematic .format-card,
    body.theme-cinematic .branche-card,
    body.theme-cinematic .qual-item,
    body.theme-cinematic .rt-card,
    body.theme-cinematic .editorial-card,
    body.theme-cinematic .ws-goal-card,
    body.theme-cinematic .ws-day-card,
    body.theme-cinematic .ws-package-card,
    body.theme-cinematic .games-world,
    body.theme-cinematic .games-usecase-grid article,
    body.theme-cinematic .games-outcome-grid article,
    body.theme-cinematic .kw-promo-card {
        padding: 24px !important;
    }
}
