:root { --color-nintendo: #ef6c26; --color-bg-light: #f4f5f6; }
@media screen and (max-width: 1023px) { 
    .page-header { padding-top: 20px !important; }
    .page-header .main-header__content__title { padding-bottom: 10px !important; }
    .page-header .img-zoom { height: 350px !important; overflow: hidden !important; }
    .page-header .hero-banner { height: 100% !important; object-fit: cover !important; }
    .page-about .about-projects-software-section { margin-top: 1.5rem !important; }
    .wireframes, .lofi-prototyp { background-color: var(--color-bg-light) !important; }
    .teaser-card { border-radius: 20px !important; } 
    .timo-section { display: none !important; }
    .ux-skills-headline { font-size: clamp(1.5rem, 2.5vw + 0.5rem, 1.8rem); font-weight: 500; line-height: 1.1; margin-bottom: 1.5rem; margin-top: 0; color: #ef6c26; } 
    .template-home .slider-nav-container { margin-bottom: 1rem !important; }
    .template-home .about-4col-grid.section-spacing-3 { margin-bottom: 1rem !important; }
    .template-home .strg-z-headline { font-size: clamp(1.5rem, 4vw + 0.5rem, 2.25rem); font-weight: 400; line-height: 1.1; margin-bottom: 0; margin-top: 0; max-width: 85rem; } 
    .template-home #about-karate { margin-top: 0 !important; margin-bottom: 0 !important; padding-bottom: 50px !important; } 
    .template-home .template-site__main { background-color: #fff !important; } 

    /* Expertise Text Mobile */
    .expertise-text-mobile {
        color: #333;
        font-size: 1.15rem;
        line-height: 1.5;
        margin-bottom: 2rem;
        padding: 0 !important;
        margin-left: 0 !important;
    }
    /* Sidebar/Header E-Mail ausblenden */
    .site-header__icon[title="E-Mail"], 
    .site-header__icon[data-t-title="nav_mail_title"], 
    .site-alerts, .js-alerts {
        display: none !important;
    }

    /* Sidebar Logo Margin */
    .site-header__logo {
        margin-left: 0.387rem !important;
    }

    /* Modal Verfeinerungen */
    html body .modal .modal__container {
        background-color: #333 !important; /* Helleres Dunkelgrau */
        color: #fff !important;
        line-height: 1.1 !important;
    }

    html body .modal .modal__close {
        font-size: 2.2rem !important; /* Vergrößert für bessere Bedienbarkeit */
        top: 0.8rem !important;
        right: 1rem !important;
        color: #fff !important;
        background: transparent !important;
    }

    html body .modal .modal__title {
        white-space: normal !important; /* Umbrechen */
        line-height: 1.1 !important;
        padding-right: 3rem !important;
        color: #ef6c26 !important;
        font-weight: 500 !important;
    }

    html body .modal__intro-text {
        display: none !important; /* Beschreibungstexte unter Headline raus */
    }

    html body     .modal .modal__body li {
        color: #eee !important;
        font-weight: 300 !important;
        font-size: clamp(1rem, 0.5vw + 0.875rem, 1.25rem) !important;
        line-height: 1.1 !important;
        margin-bottom: 0.5rem !important;
        white-space: normal !important;
        overflow-wrap: break-word !important;
    }

    /* Case Studies: Labels forced visible on mobile */
    .about-slider__card::after {
        opacity: 1 !important;
    }
    .about-slider__card .about-slider__card-label {
        opacity: 1 !important;
        transform: translateY(0) !important;
    }

    /* Karate Section Mobile */
    #about-karate [data-t="karate_p2"] { display: none !important; }
    #about-karate .karate-heading {
        margin-top: 0.5rem !important;
        line-height: 1.2 !important;
        display: block !important;
    }
    .karate-dojo-text {
        display: block !important;
        margin-top: 0.5rem;
    }

    .mobile-menu-nav-btn {
        width: 85px !important;
        height: 85px !important;
        background: rgba(0, 0, 0, 0.85) !important;
        box-shadow: 0 0 20px rgba(0,0,0,0.5);
        z-index: 9999 !important;
        pointer-events: auto !important;
    }
    .mobile-menu-nav-btn svg {
        width: 32px !important;
        height: 32px !important;
        stroke-width: 3.5 !important;
        pointer-events: none !important;
    }

    /* Nintendo Only Mobile: Wireframe Background & Slider Fix */
    .page-nintendo .lofi-prototyp {
        background-color: var(--color-bg-light) !important;
        padding: 40px 0 !important;
        margin-top: 40px !important;
    }
    .page-nintendo .gallery-slider {
        padding: 11px 17.5vw 20px !important;
        gap: 12px !important;
        scroll-padding: 0 17.5vw;
    }

    /* Kaminlicht Only Mobile: Spacing Nutzunskontext */
    .page-kamin #kamin-nutzungskontext-section {
        margin-top: 80px !important;
    }

    .page-kamin .gallery-slider {
        padding: 15px 17.5vw 40px 17.5vw !important;
        gap: 12px !important;
        scroll-padding: 0 17.5vw;
    }

}

.accordion-btn { transition: all 0.3s ease; }
.accordion-btn:hover { background: var(--color-nintendo); color: #ffffff; }

@media screen and (max-width: 1023px) {
  .page-kamin .lofi-prototyp.has-mobile-gallery .gallery-pagination,
  .page-monteur .lofi-prototyp.has-mobile-gallery .gallery-pagination,
  .page-so .lofi-prototyp.has-mobile-gallery .gallery-pagination {
    margin-bottom: 8px !important;
    margin-top: -4px !important;
  }
}