/*
Theme Name: EXIT Theme
Version: 19.2 (Revert + Safe Fixes)
*/

/* --- ZÁKLADNÍ STYLY --- */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    background: #050505;
    color: #e5e5e5;
    font-family: 'Space Grotesk', sans-serif;
    letter-spacing: 1px;
    overflow-x: hidden;
}

a {
    color: #ffffff;
    text-decoration: none;
    transition: 0.3s;
}

section, .container {
    padding: 120px 8%;
    width: 100%;
}

/* ======================================================== */
/* --- HLAVIČKA (HEADER) --- */
/* ======================================================== */
.site-header {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    background: rgba(0,0,0,0.95);
    backdrop-filter: blur(12px);
    z-index: 999;
    padding: 15px 8%;
    transition: all 0.3s ease;
}

.nav-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.logo a {
    display: flex;
    align-items: center;
    gap: 15px;
    text-decoration: none;
    color: #fff;
}

.logo img {
    height: 40px;
    width: auto;
}

.logo-text {
    font-size: 1.1rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    white-space: nowrap;
}

.nav-menu {
    list-style: none;
    display: flex;
    gap: 30px;
    margin: 0;
}

.nav-menu li a {
    font-size: 0.9rem;
    text-transform: uppercase;
    position: relative;
    color: #fff;
    text-decoration: none;
    letter-spacing: 1px;
}

.nav-menu li a::after {
    content: "";
    position: absolute;
    width: 0%;
    height: 1px;
    background: white;
    left: 0;
    bottom: -6px;
    transition: 0.3s;
}

.nav-menu li a:hover::after {
    width: 100%;
}

/* ======================================================== */
/* --- CINEMATIC HERO SEKCE --- */
/* ======================================================== */
.hero-cinematic {
    position: relative;
    height: 100vh;
    width: 100%;
    display: flex;
    align-items: flex-end;
    padding: 0 50px 50px 50px;
    box-sizing: border-box;
}

.hero-slides {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%; height: 100%;
    overflow: hidden; 
    z-index: 0;
    background-color: #050505;
}

.hero-slide {
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    object-fit: cover;
    display: block;
    opacity: 0;
    transform: scale(1.1);
    transition: opacity 1.5s ease-in-out, transform 8s ease-out;
}

.hero-slide.active {
    opacity: 1;
    transform: scale(1);
}

.hero-gradient-overlay {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0; 
    background: linear-gradient(to top, rgba(10,10,10,1) 0%, rgba(10,10,10,0.85) 15%, rgba(0,0,0,0) 60%);
    pointer-events: none; 
    z-index: 1;
}

.hero-ui-container {
    position: relative;
    z-index: 10;
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 50px;
}

.hero-main-event {
    flex: 2;
}

.badge-headline {
    font-size: 14px;
    letter-spacing: 4px;
    color: #00f0ff;
    margin-bottom: 15px;
    text-transform: uppercase;
    font-weight: bold;
}

.main-event-flex {
    display: flex;
    align-items: flex-end;
    gap: 40px; 
    margin-top: 15px;
}

.main-artwork-small img {
    width: 280px; 
    height: auto; 
    border-radius: 6px; 
    border: 1px solid rgba(255,255,255,0.15);
    box-shadow: 0 15px 40px rgba(0,0,0,0.9);
    display: block;
    transition: 0.3s ease;
    cursor: zoom-in;
}

.main-artwork-small a:hover img {
    transform: translateY(-5px);
    border-color: #00f0ff;
    box-shadow: 0 20px 50px rgba(0,240,255,0.2);
}

.main-title {
    font-size: 3.5rem;
    margin: 0 0 10px 0;
    line-height: 1.05;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.main-details {
    font-size: 1rem;
    margin-bottom: 25px;
    color: #ccc;
    font-weight: 300;
    letter-spacing: 1px;
}

.m-sep { margin: 0 10px; color: #555; }

.main-actions {
    display: flex;
    gap: 20px;
}

.hero-btn {
    display: inline-block;
    padding: 14px 40px;
    border: 1px solid #fff;
    text-transform: uppercase;
    letter-spacing: 3px;
    text-decoration: none;
    transition: 0.4s ease;
    font-weight: bold;
}

.primary-btn {
    background: #fff;
    color: #000;
}
.primary-btn:hover {
    background: #ccc;
    border-color: #ccc;
}

.hero-upcoming-list {
    flex: 1;
    max-width: 400px;
    border-left: 1px solid rgba(255,255,255,0.15);
    padding-left: 40px;
    padding-bottom: 10px;
}

.upcoming-header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    border-bottom: 1px solid rgba(255,255,255,0.2);
    padding-bottom: 15px;
    margin-bottom: 15px;
}

.upcoming-header h3 {
    font-size: 1.2rem;
    letter-spacing: 3px;
}

.view-all-link {
    font-size: 0.8rem;
    color: #00f0ff;
    letter-spacing: 2px;
    text-transform: uppercase;
    transition: 0.3s;
}
.view-all-link:hover { color: #fff; }

.compact-item {
    display: flex;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px dashed rgba(255,255,255,0.1);
    color: #fff;
    text-decoration: none;
    transition: 0.3s ease;
}

.compact-item:hover {
    padding-left: 15px;
    color: #fff;
    border-bottom: 1px dashed rgba(0,240,255,0.5);
    background: rgba(255,255,255,0.02);
}

.c-date { width: 65px; font-weight: bold; color: #ccc; }
.c-title { flex: 1; text-transform: uppercase; font-size: 0.95rem; letter-spacing: 1px; }
.c-arrow { color: #555; transition: 0.3s; }
.compact-item:hover .c-arrow { color: #00f0ff; transform: translateX(5px); }

/* ======================================================== */
/* --- OVERLAY PRO VŠECHNY AKCE --- */
/* ======================================================== */
#eventsOverlay {
    display: none; 
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,0.95);
    z-index: 2000;
    justify-content: center;
    align-items: center;
    overflow-y: auto;
    padding: 40px 20px;
}

.events-container {
    width: 100%;
    max-width: 800px;
    margin: auto;
    position: relative;
}

.events-title {
    text-align: center;
    font-size: 2rem;
    margin-bottom: 50px;
    color: #fff;
    letter-spacing: 5px;
    text-transform: uppercase;
}

.close-overlay {
    position: absolute;
    top: -20px;
    right: 0px;
    font-size: 40px;
    cursor: pointer;
    color: #fff;
    transition: 0.3s;
}
.close-overlay:hover { color: #00f0ff; transform: scale(1.1); }

.event-card {
    display: flex;
    align-items: center;
    border-bottom: 1px solid #333;
    padding: 20px 0;
    transition: 0.3s;
    cursor: pointer; 
}
.event-card:hover { background: rgba(255,255,255,0.02); padding-left: 10px; }

.event-date-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 80px;
    margin-right: 20px;
}

.event-date-box .day {
    font-size: 2rem;
    font-weight: bold;
    color: #fff;
    line-height: 1;
}

.event-date-box .month {
    font-size: 1rem;
    text-transform: uppercase;
    color: #00f0ff;
    letter-spacing: 2px;
    margin-top: 5px;
}

.event-details { flex: 1; text-align: left; }

/* ======================================================== */
/* --- OSTATNÍ STRÁNKY --- */
/* ======================================================== */

/* --- ARTISTS GRID --- */
.artists-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 30px;
    align-items: start;
}

a.artist-card {
    display: block;
    position: relative; 
    aspect-ratio: 1 / 1; 
    overflow: hidden;
    border: 1px solid #333;
    text-decoration: none;
}

.artist-image {
    width: 100%;
    height: 100%;
    position: relative;
}

.artist-image img {
    position: absolute; 
    top: 0; left: 0;
    width: 100%; height: 100%;
    object-fit: cover; 
    transition: 0.6s ease;
    filter: grayscale(100%) brightness(0.7); 
    z-index: 0;
}

a.artist-card:hover .artist-image img {
    transform: scale(1.05);
    filter: grayscale(0%) brightness(1);
    border-color: #00f0ff;
}

.artist-overlay {
    position: absolute;
    bottom: 0; left: 0; right: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.95) 15%, transparent 100%);
    padding: 15px 10px; 
    display: flex;
    align-items: flex-end;
    justify-content: center; 
    text-align: center;
    z-index: 1; 
    height: 50%; 
}

.artist-overlay h2 {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.1;
    text-shadow: 0 2px 10px rgba(0,0,0,0.8);
    width: 100%;
    overflow-wrap: break-word;
    word-wrap: break-word;
    word-break: break-word;
}


/* --- RELEASES GRID --- */
.releases-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 40px;
    align-items: start; 
}

.release-cover {
    width: 100%;
    aspect-ratio: 1 / 1;
    margin-bottom: 20px;
    overflow: hidden;
}

.release-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 1px solid #333;
    transition: 0.3s ease;
    display: block;
}

.release-card:hover .release-cover img {
    border-color: #00f0ff;
    transform: translateY(-10px);
    box-shadow: 0 15px 30px rgba(0, 240, 255, 0.15);
}

.release-info {
    text-align: center;
}

/* --- SINGLE RELEASE --- */
.single-release-container {
    padding-top: 150px;
    padding-bottom: 100px;
    position: relative;
    min-height: 100vh;
}

.release-grid-layout {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 40px; 
    align-items: start;
}

.release-artwork {
    width: 100%;
    max-width: 450px;
    aspect-ratio: 1 / 1;
    margin: 0 auto;
}

.release-artwork img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 1px solid #333;
    box-shadow: 0 15px 40px rgba(0,0,0,0.6);
    display: block;
}

.release-meta-top {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 20px;
}

.catalog-badge {
    background: #00f0ff;
    color: #000;
    padding: 5px 15px;
    font-weight: bold;
    font-size: 0.9rem;
    letter-spacing: 2px;
}

.release-artist-name a {
    font-size: 2rem;
    color: #ccc;
    text-transform: uppercase;
    letter-spacing: 3px;
}

.release-title {
    font-size: 4rem;
    line-height: 1.1;
    margin-bottom: 30px;
    text-transform: uppercase;
    color: #fff;
}

.listen-actions {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    justify-content: center; /* Vycentrování na PC */
    margin-bottom: 40px;     /* Odstup od SoundCloud přehrávače */
}

/* --- GALLERY GRID --- */
.gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
    padding: 20px 0;
}

.gallery-item {
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border: 1px solid #222;
}

.gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.5s ease;
    /* Změna 2: Odstraněn grayscale filtr */
    filter: none;
}

.gallery-item:hover img {
    filter: none; /* Pro jistotu */
}

/* --- SINGLE ARTIST PAGE (PC) --- */
.artist-header {
    display: flex;
    gap: 60px;
    align-items: flex-start;
}

.artist-photo {
    flex: 1;
    max-width: 450px; 
}

.artist-photo img {
    width: 100%;
    height: auto;
    border: 1px solid #333;
    display: block;
    box-shadow: 0 15px 40px rgba(0,0,0,0.5);
}

.artist-bio {
    flex: 1.5;
}

.single-title {
    font-size: 3.5rem;
    line-height: 1;
    margin-bottom: 30px;
    text-transform: uppercase;
    color: #fff;
    margin-top: -12px;
}

.bio-content p {
    font-size: 1.05rem;
    line-height: 1.6;
    margin-bottom: 20px;
    color: #ccc;
}

/* --- ELEGANTNÍ STŘEDOVÝ BLOK --- */
.page-centered-content {
    max-width: 700px;
    margin: 15vh auto 60px auto;
    text-align: center;
    font-size: 1.1rem;
    line-height: 1.4;
    color: #ccc;
}

.page-centered-content a {
    color: #00f0ff;
    font-weight: bold;
    border-bottom: 1px solid transparent;
}

.page-centered-content a:hover {
    border-bottom: 1px solid #00f0ff;
    color: #fff;
}

.page-centered-content p {
    margin-bottom: 10px;
}

/* ======================================================== */
/* --- RENTALS & TECH PAGE --- */
/* ======================================================== */
.rentals-page-wrapper {
    position: relative;
    background-color: #050505;
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    background-repeat: no-repeat;
    min-height: 100vh;
}

.rentals-global-overlay {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0, 0, 0, 0.75);
    z-index: 1;
}

.rentals-content-wrapper { position: relative; z-index: 2; }

.rentals-hero {
    background: transparent;
    padding: 180px 8% 50px 8%;
    text-align: center;
}

.rentals-intro {
    font-size: 1.2rem;
    color: #ccc;
    margin-bottom: 40px;
    line-height: 1.6;
    text-shadow: 0 2px 10px rgba(0,0,0,0.8);
}

.tech-specs-section { background: transparent; border: none; }
.tech-header { text-align: center; margin-bottom: 60px; }

.void-title {
    font-size: 3rem;
    color: #d20000;
    font-weight: bold;
    letter-spacing: 5px;
    margin-top: 10px;
    text-shadow: 0 5px 20px rgba(0,0,0,0.8);
}

/* Změna 1: Styly pro nový textový blok vybavení (místo čtverců) */
.rentals-features-text {
    text-align: center;
    max-width: 800px;
    margin: 40px auto;
    padding: 20px;
    background: rgba(255,255,255,0.02);
    border: 1px solid rgba(255,255,255,0.05);
}

.tech-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 40px;
}

.tech-card {
    background: rgba(10, 10, 10, 0.85); 
    backdrop-filter: blur(5px); 
    border: 1px solid #333;
    padding: 40px;
    text-align: center;
    transition: 0.3s;
}

.tech-card:hover {
    border-color: #d20000;
    transform: translateY(-5px);
    background: rgba(0, 0, 0, 0.95);
}

.tech-icon { font-size: 3rem; margin-bottom: 20px; }
.tech-card h4 { font-size: 1.5rem; margin-bottom: 15px; color: #fff; letter-spacing: 2px; }

.tech-list {
    list-style: none;
    margin-top: 20px;
    text-align: left;
    display: inline-block;
}

.tech-list li {
    padding: 5px 0;
    color: #888;
    border-bottom: 1px solid #111;
}

.contact-email-large a {
    font-size: 2rem;
    color: #fff;
    font-weight: bold;
    text-shadow: 0 2px 5px rgba(0,0,0,1);
}
.contact-email-large a:hover { color: #00f0ff; }

.contact-phone { font-size: 1.2rem; color: #ccc; margin-top: 10px; }

/* ======================================================== */
/* --- VENUE GALLERY --- */
/* ======================================================== */
.venue-gallery-container { max-width: 1200px; margin: 0 auto; }
.venue-gallery-container .wp-block-gallery { gap: 20px !important; }

.venue-gallery-container .wp-block-image img {
    border: 1px solid #333;
    transition: 0.4s ease;
    filter: none; /* Žádný filtr */
    cursor: zoom-in;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.venue-gallery-container .wp-block-image img:hover {
    border-color: #00f0ff;
    transform: scale(1.02);
    box-shadow: 0 0 30px rgba(0, 240, 255, 0.15);
}

.venue-gallery-container figcaption {
    color: #888;
    font-size: 0.85rem;
    margin-top: 10px;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* ======================================================== */
/* --- MODALS & LIGHTBOX --- */
/* ======================================================== */
.event-detail-modal {
    display: none;
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,0.85); 
    backdrop-filter: blur(8px); 
    z-index: 3000;
    align-items: center;
    justify-content: center;
    padding: 20px;
    opacity: 0;
    transition: opacity 0.3s ease;
}
.event-detail-modal.active { display: flex; opacity: 1; }

.event-modal-content {
    background: #0a0a0a;
    border: 1px solid rgba(255,255,255,0.1);
    padding: 50px 40px;
    max-width: 600px;
    width: 100%;
    position: relative;
    text-align: center;
    box-shadow: 0 20px 50px rgba(0,0,0,0.9);
    transform: translateY(20px);
    transition: 0.3s ease;
    max-height: 90vh; 
    overflow-y: auto; 
}
.event-detail-modal.active .event-modal-content { transform: translateY(0); }

.close-event-modal {
    position: absolute;
    top: 15px;
    right: 20px;
    font-size: 35px;
    color: #555;
    cursor: pointer;
    transition: 0.3s;
}
.close-event-modal:hover { color: #00f0ff; transform: scale(1.1); }

.modal-artwork { margin-bottom: 25px; text-align: center; }
.modal-artwork img {
    width: 100%; max-width: 280px; height: auto; 
    border-radius: 6px;
    border: 1px solid rgba(255,255,255,0.15);
    box-shadow: 0 15px 30px rgba(0,0,0,0.8);
    display: inline-block;
}

.modal-event-title { font-size: 2.5rem; text-transform: uppercase; margin-bottom: 10px; line-height: 1.1;}
.modal-event-date { color: #00f0ff; letter-spacing: 3px; margin-bottom: 25px; display: block; font-weight: bold;}
.modal-event-lineup { font-size: 1.1rem; color: #ccc; margin-bottom: 35px; white-space: pre-wrap; }

/* --- LIGHTBOX --- */
.lightbox-overlay {
    position: fixed; 
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0, 0, 0, 0.95);
    display: none; 
    align-items: center;
    justify-content: center;
    z-index: 10000;
    cursor: zoom-out;
}

.lightbox-content img {
    max-width: 90vw;
    max-height: 90vh;
    border: 1px solid #333;
    box-shadow: 0 0 50px rgba(0,0,0,1);
    transition: opacity 0.4s ease;
    object-fit: contain;
}

.lightbox-close {
    position: absolute;
    top: 20px; right: 30px;
    color: #fff; font-size: 40px; cursor: pointer; z-index: 10002;
}
.lightbox-close:hover { color: #00f0ff; transform: scale(1.1); }

.lightbox-nav {
    position: absolute; top: 50%; transform: translateY(-50%);
    font-size: 60px; color: rgba(255, 255, 255, 0.5);
    cursor: pointer; padding: 20px; user-select: none; transition: 0.3s ease; z-index: 10001;
}
.lightbox-nav:hover { color: #00f0ff; transform: translateY(-50%) scale(1.1); }
.lightbox-prev { left: 20px; }
.lightbox-next { right: 20px; }

@media (max-width: 768px) {
    .lightbox-nav { font-size: 40px; padding: 10px; }
    .lightbox-prev { left: 5px; }
    .lightbox-next { right: 5px; }
}

.lightbox-loader {
    position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
    width: 50px; height: 50px;
    border: 3px solid rgba(255,255,255,0.1); border-top-color: #00f0ff;
    border-radius: 50%; animation: lightbox-spin 1s linear infinite;
    display: none; z-index: 9999;
}
@keyframes lightbox-spin { to { transform: translate(-50%, -50%) rotate(360deg); } }

/* ======================================================== */
/* --- PATIČKA (FOOTER) --- */
/* ======================================================== */
.site-footer {
    background-color: #020202;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    padding: 80px 8% 30px 8%;
    margin-top: 100px;
}

.footer-content {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: 40px;
    margin-bottom: 60px;
}

.footer-section h3 { font-size: 1.5rem; letter-spacing: 5px; margin-bottom: 15px; color: #fff; }
.footer-section h4 { font-size: 0.9rem; color: #00f0ff; letter-spacing: 3px; margin-bottom: 20px; text-transform: uppercase; }
.footer-section p, .footer-section p a { color: #888; font-size: 0.95rem; line-height: 1.6; transition: 0.3s; }
.footer-section p a:hover { color: #fff; }

.social-links { display: flex; gap: 25px; }
.social-links a { color: #ccc; font-weight: bold; font-size: 1.1rem; transition: 0.3s ease; letter-spacing: 2px; }
.social-links a:hover { color: #00f0ff; transform: translateY(-3px); }

.footer-copyright {
    text-align: center; border-top: 1px solid rgba(255, 255, 255, 0.05); padding-top: 30px;
    color: #444; font-size: 0.8rem; letter-spacing: 1px; text-transform: uppercase;
}

/* ======================================================== */
/* --- NEWSLETTER & EMBEDS --- */
/* ======================================================== */
.newsletter-wrapper {
    border-bottom: 1px solid rgba(255,255,255,0.05);
    padding-bottom: 60px; margin-bottom: 60px; text-align: center;
    max-width: 600px; margin-left: auto; margin-right: auto;
    display: block !important;
}
.newsletter-content h4 { font-size: 1.5rem; color: #fff; letter-spacing: 3px; margin-bottom: 10px; }

.dj-set-embed-container {
    margin-top: 40px; /* Vytvoří hezký odstup od textu nad ním */
}

.dj-set-embed-container iframe { 
    width: 100% !important; 
    height: 166px !important; /* Přesná výška pro elegantní SoundCloud pruh */
    display: block !important; 
    border-radius: 8px; /* Jemně zaoblené rohy */
    box-shadow: 0 10px 30px rgba(0,0,0,0.6); /* Prostorový stín */
    border: none !important;
}

.catalog-badge {
    background: #000 !important; color: #fff !important; border: 1px solid #fff;
    padding: 6px 16px; font-weight: 400; font-size: 0.8rem; letter-spacing: 2px; display: inline-block; text-transform: uppercase;
}

.release-btn {
    background: transparent !important; border: 1px solid #fff !important; color: #fff !important;
    min-width: 140px; text-align: center; font-size: 0.9rem; transition: all 0.3s ease;
}
.release-btn:hover {
    background: #fff !important; color: #000 !important; box-shadow: 0 0 20px rgba(255, 255, 255, 0.3); border-color: #fff !important; transform: translateY(-2px);
}

.artist-socials-bar { display: flex; gap: 15px; margin-bottom: 30px; flex-wrap: wrap; }
.social-btn {
    display: inline-block; padding: 8px 20px; border: 1px solid rgba(255, 255, 255, 0.3);
    color: #ccc; font-size: 0.8rem; letter-spacing: 2px; text-transform: uppercase; text-decoration: none; transition: all 0.3s ease; font-weight: 600;
}
.social-btn:hover {
    background: #fff; color: #000; border-color: #fff; transform: translateY(-2px); box-shadow: 0 0 15px rgba(255, 255, 255, 0.2);
}

/* ======================================================== */
/* --- STYLY PRO PŘESUNUTÉ TLAČÍTKO BACK --- */
/* ======================================================== */
.back-link-container {
    margin-top: 80px; /* Větší odstup od releasů */
    margin-bottom: 40px;
    text-align: center; /* Vycentrovat na PC i Mobilu */
    width: 100%;
    border-top: 1px solid rgba(255,255,255,0.1); /* Jemná linka nad tlačítkem pro oddělení */
    padding-top: 40px;
}

.back-link {
    color: #666;
    font-size: 0.9rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    transition: 0.3s;
}

.back-link:hover {
    color: #fff;
    letter-spacing: 3px; /* Efekt při najetí */
}

/* ======================================================== */
/* --- KONTAKT A DEMOS --- */
/* ======================================================== */
.demos-text {
    max-width: 700px;
    margin: 0 auto 40px auto;
    text-align: center;
    font-size: 1.1rem;
    line-height: 1.6;
    color: #ccc;
}
.demos-email-box { text-align: center; margin-bottom: 100px; }
.demo-email-link { font-size: 2.5rem; font-weight: 700; color: #00f0ff; text-decoration: none; }

.rentals-section {
    margin-top: 60px;
    margin-bottom: 40px;
    text-align: center;
    border-top: 1px solid rgba(255,255,255,0.1);
    padding-top: 60px;
}
.rentals-text { max-width: 700px; margin: 0 auto 30px auto; font-size: 1.1rem; line-height: 1.6; color: #ccc; }
.rental-email-link { font-size: 2rem; font-weight: 700; color: #fff; text-decoration: none; border-bottom: 2px solid transparent; }

.business-info-section { border-top: 1px solid rgba(255, 255, 255, 0.1); padding-top: 60px; margin-top: auto; }
.business-grid { display: flex; justify-content: center; gap: 100px; text-align: left; max-width: 900px; margin: 0 auto; }
.biz-title { color: #666; text-transform: uppercase; letter-spacing: 2px; font-size: 0.9rem; margin-bottom: 15px; border-bottom: 1px solid #333; display: inline-block; padding-bottom: 5px; }


/* ======================================================== */
/* --- BURGER MENU & MOBILNÍ ÚPRAVY --- */
/* ======================================================== */

/* Desktop: Burger skrytý */
.burger-menu {
    display: none;
    cursor: pointer;
    z-index: 1001;
}

.burger-menu .bar {
    display: block;
    width: 30px;
    height: 2px;
    margin: 6px auto;
    transition: all 0.3s ease-in-out;
    background-color: #fff;
}

/* --- MOBILNÍ VERZE (max-width: 900px) --- */
@media (max-width: 900px) {
    
    .site-header {
        padding: 15px 20px;
    }

    /* 1. PŘESKLÁDÁNÍ HLAVIČKY POD SEBE (Sloupcové řazení) */
    .nav-container {
        flex-direction: column; /* Prvky pod sebe */
        align-items: center;
        gap: 15px;
    }

    /* 2. ÚPRAVA LOGA PRO MOBIL (Centrování + Zalamování textu) */
    .logo {
        width: 100%;
        text-align: center;
    }

    .logo a {
        flex-direction: column; /* Obrázek nad textem */
        gap: 8px;
        justify-content: center;
    }

    .logo img {
        height: 35px; /* Trochu menší logo pro mobil */
    }

    .logo-text {
        font-size: 0.9rem; /* Menší písmo */
        white-space: normal; /* POVOLIT ZALOMENÍ TEXTU */
        text-align: center;
        line-height: 1.4;
        display: block; /* Aby zabral šířku a mohl se zalomit */
    }

    /* 3. BURGER TLAČÍTKO - Umístěno pod textem */
    .burger-menu {
        display: block; /* Zobrazit */
        margin-top: 5px;
    }

    /* Animace burgeru */
    .burger-menu.active .bar:nth-child(2) { opacity: 0; }
    .burger-menu.active .bar:nth-child(1) { transform: translateY(8px) rotate(45deg); background-color: #00f0ff; }
    .burger-menu.active .bar:nth-child(3) { transform: translateY(-8px) rotate(-45deg); background-color: #00f0ff; }

    /* 4. VYSOUVACÍ MENU */
    .nav-menu {
        position: fixed;
        left: -100%;
        /* Odstraněn pevný 'top', nyní ho řídí JS! */
        /* top: 160px; */ 
        width: 100%;
        /* height nastaví JS */
        background-color: #050505;
        flex-direction: column;
        justify-content: flex-start;
        padding-top: 20px;
        transition: 0.4s ease;
        border-top: 1px solid rgba(255,255,255,0.1);
        gap: 0;
    }

    .nav-menu.active {
        left: 0;
    }

    .nav-menu li {
        width: 100%;
        text-align: center;
        border-bottom: 1px solid rgba(255,255,255,0.05);
    }

    .nav-menu li a {
        display: block;
        padding: 20px 0;
        font-size: 1.1rem;
        letter-spacing: 2px;
    }

    /* OSTATNÍ MOBILNÍ OPRAVY */
    .hero-cinematic {
        height: auto;
        min-height: 100vh;
        /* ZMĚNA: Ponecháno 175px dle instrukcí */
        padding: 175px 20px 40px 20px; 
    }
    
    .hero-ui-container, .main-event-flex {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
    }
    .main-artwork-small img { width: 200px; height: auto; }
    .main-title { font-size: 2.2rem; }

    .hero-upcoming-list {
        max-width: 100%; width: 100%;
        border-left: none; padding-left: 0;
        border-top: 1px solid rgba(255,255,255,0.15); padding-top: 30px;
    }

    .hero-brand-signature { display: none !important; }

    .site-header { padding: 15px 5%; }
    .footer-content { grid-template-columns: 1fr; text-align: center; gap: 50px; }
    .footer-section, .footer-section h4, .footer-section p { text-align: center !important; }
    .social-links { justify-content: center; }

    .newsletter-wrapper {
        width: 100% !important; max-width: 100% !important; padding: 40px 15px !important; margin-bottom: 40px !important; display: block !important;
    }
    .sender-form-field { width: 100% !important; overflow: hidden; }

    .wp-block-image, .wp-block-image img, figure, figure img {
        display: block !important; margin: 0 auto 20px auto !important; float: none !important; max-width: 100% !important; height: auto !important;
    }
    
    .release-grid-layout { grid-template-columns: 1fr; }
    .gallery-grid, .releases-grid { grid-template-columns: repeat(2, 1fr); }
    .event-card { flex-direction: column; text-align: center; gap: 15px; }
    
    /* ZDE JE OPRAVENÁ SEKCE PRO UMĚLCE NA MOBILU (SPOJENÁ LOGIKA DJS + PRODUCERS) */
    .artist-header { 
        flex-direction: column !important;
        gap: 0 !important; /* Důležité pro odstranění mezery */
        align-items: center !important;
    }
    
    .artist-photo { 
        width: 100%; 
        margin-bottom: 5px !important; /* Minimální mezera pod fotkou */
        text-align: center; 
    }
    
    .artist-bio {
        width: 100%;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important; /* Centrování obsahu */
        text-align: center !important;
    }

    .single-title {
        font-size: 2.2rem !important;
        margin: 0 auto 15px auto !important;
        text-align: center !important;
        width: 100%;
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
    
    .rentals-page-wrapper { background-attachment: scroll !important; background-position: center center !important; }
    .artist-socials-bar { justify-content: center; }

    /* OPRAVA EMAILU NA MOBILU (Rentals) */
    .contact-email-large a {
        font-size: 1.2rem !important; 
        display: block; 
        word-break: break-word; /* Zalomení dlouhého mailu */
        margin: 20px 0; 
    }

    /* UPRAVENO: Zarovnání nápisu EXIT Records / Catalog na jeden řádek */
    .section-subtitle, 
    .release-meta-top, 
    .catalog-badge {
        white-space: nowrap; /* Zákaz zalamování */
        overflow: hidden;
        text-overflow: ellipsis;
        font-size: 0.5rem; /* Zmenšení písma, aby se vešlo */
        max-width: 100%;
        display: inline-block;
    }

    /* Contact Page Mobil */
    .business-grid { flex-direction: column; gap: 40px; text-align: center; }
    .demo-email-link { font-size: 1.5rem; word-break: break-all; }
}

/* --- EXTRA MOBILNÍ ÚPRAVY PRO MENŠÍ DISPLEJE (DJs, Grid, Texty) --- */
@media (max-width: 768px) {

    /* 1. SEZNAMY (GRIDY) - Dva sloupce vedle sebe = menší fotky */
    .gallery-grid, 
    .releases-grid, 
    .artists-grid { 
        grid-template-columns: repeat(2, 1fr) !important; /* Vynucení 2 sloupců */
        gap: 15px !important; 
    }

    /* Zmenšení písma v mřížce */
    .artist-overlay {
        padding: 10px 5px !important; 
        justify-content: center;
        text-align: center;
    }
    .artist-overlay h2 {
        font-size: 0.9rem !important; 
        padding: 0 !important;
        letter-spacing: 0.5px !important; 
        width: 100%;
        overflow-wrap: break-word;
    }
    .release-info h3 {
        font-size: 0.9rem !important;
    }

    /* 2. DETAIL STRÁNKY (Single Artist / Release) - Úhlednější fotky */
    .artist-photo img, 
    .release-artwork img {
        max-width: 280px !important; /* Menší fotka */
        width: 100%;
        height: auto;
        display: block;
        margin: 0 auto 5px auto !important; /* Vycentrování */
        box-shadow: 0 5px 20px rgba(0,0,0,0.5); 
    }

    /* Zmenšení obřích nápisů na detailu */
    .single-title { 
        font-size: 2.2rem !important; 
        margin-bottom: 20px !important;
    }
    
    .release-title { 
        font-size: 2rem !important; 
        margin-bottom: 15px !important;
    }
    
    .release-artist-name a {
        font-size: 1.2rem !important; 
    }
}

/* ======================================================== */
/* --- OPRAVA EMAILU NA STRÁNCE CONTACT (MOBIL) --- */
/* ======================================================== */
@media (max-width: 900px) {
    .rental-email-link {
        font-size: 1.3rem !important; /* Zmenšení písma, aby se vešlo */
        word-break: break-all;        /* Povolit zalomení dlouhého slova */
        overflow-wrap: break-word;    /* Moderní zalamování */
        display: block;               /* Zajistí, že zabere celou šířku */
        width: 100%;
        line-height: 1.4;
        padding: 0 10px;              /* Malý odstup od krajů */
    }
}

/* ======================================================== */
/* --- FINÁLNÍ ÚPRAVY PRO MOBIL (DETAIL RELEASU) --- */
/* ======================================================== */
@media (max-width: 900px) {
    
    /* 1. Zarovnání tlačítek Spotify a Beatport VEDLE SEBE + ODSAZENÍ OD SOUNDCLOUDU */
    .listen-actions {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        gap: 10px !important;
        width: 100%;
        /* Zvětšená mezera dole, aby se oddělil SoundCloud přehrávač */
        margin-bottom: 50px !important; 
    }

    .release-btn {
        flex: 1 !important;
        min-width: 0 !important;
        text-align: center;
        padding: 12px 5px !important;
    }

    /* 2. Stažení mezery mezi fotkou a jménem */
    .release-artwork {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
        line-height: 0 !important; /* Odstraní řádkování pod obrázkem */
    }

    .release-artwork img {
        margin-bottom: 0 !important; /* Fotka bez spodního okraje */
        display: block;
    }

    .release-info {
        margin-top: 10px !important; /* Malá mezera mezi fotkou a jménem */
    }

    .release-artist-name {
        margin-top: 0 !important;
        margin-bottom: 5px !important;
    }

    .release-artist-name a {
        display: block;
        line-height: 1.1; /* Aby jméno nemělo zbytečně velký řádek */
    }

    /* 3. Katalogové číslo pod nadpisem */
    .release-meta-top {
        margin-top: 0 !important;
        margin-bottom: 10px !important;
        justify-content: center;
        display: flex;
        width: 100%;
    }
    
    /* Stylování odkazu ZPĚT */
    .back-link-container-release {
        margin-top: 40px;
        border-top: 1px solid rgba(255,255,255,0.1);
        padding-top: 20px;
        width: 100%;
        text-align: center;
    }
}

/* --- JAZYKOVÝ PŘEPÍNAČ --- */
.lang-switcher {
    display: flex;
    gap: 10px;
    margin-left: 20px;
    align-items: center;
}

.lang-switcher li {
    list-style: none;
    display: inline-block;
    border: none !important; /* Pro mobilní menu */
    padding: 0 !important;
}

.lang-switcher li a {
    font-size: 0.9rem;
    font-weight: bold;
    color: #888; /* Neaktivní jazyk šedý */
    text-transform: uppercase;
    text-decoration: none;
    padding: 5px;
    transition: 0.3s;
}

.lang-switcher li.current-lang a {
    color: #00f0ff; /* Aktivní jazyk neonově modrý */
}

.lang-switcher li a:hover {
    color: #fff;
}

/* Oddělovač mezi jazyky (volitelné) */
.lang-switcher li:first-child::after {
    content: "/";
    color: #555;
    margin-left: 10px;
}

/* Mobilní úprava přepínače */
@media (max-width: 900px) {
    .lang-switcher {
        flex-direction: row;
        justify-content: center;
        margin-left: 0;
        margin-top: 20px;
        padding-bottom: 20px;
    }
    .lang-switcher li {
        border-bottom: none !important;
    }
}

/* --- ÚPRAVA: ODSTRANĚNÍ ČERNOBÍLÉHO FILTRU U UMĚLCŮ --- */

/* 1. Vypnutí filtru v klidovém stavu (bude barevné) */
.artist-image img {
    filter: none !important; 
    -webkit-filter: none !important;
}

/* 2. Zachování zoom efektu při najetí myší */
.artist-card:hover .artist-image img {
    transform: scale(1.05); /* Mírné zvětšení */
    filter: none !important; /* Pro jistotu stále bez filtru */
}

/* ========================================================== */
/* --- EXIT RECORDS LOGA (ROSTER & RELEASES) --- */
/* ========================================================== */

/* 1. Hlavní logo na stránce Producenti / DJs (místo nadpisu) + EFEKT MLHOVINY */
.roster-records-logo {
    height: 145px; /* Zvětšeno o dalších 10 % (původně 130px) */
    width: auto;
    display: block;
    margin: 0 auto 60px auto; 
    mix-blend-mode: lighten; /* Vymaže černé pozadí JPG obrázku */
    
    /* Aplikována pulzující mlhovina */
    animation: redNebulaPulse 4s infinite alternate ease-in-out;
}

/* 2. Malé logo jako "pečeť" v detailu Releasu */
.release-badge-logo {
    height: 85px; 
    width: auto;
    display: block;
    margin-bottom: 20px; 
    mix-blend-mode: lighten;
}

/* --- ANIMACE ČERVENÉ MLHOVINY (POUZE ZÁŘE, STATICKÉ LOGO) --- */
@keyframes redNebulaPulse {
    0% {
        /* Klidný stav: menší stín */
        box-shadow: 0 0 60px 10px rgba(220, 0, 0, 0.05);
        /* Zde jsme smazali pohyb (transform: scale) */
    }
    100% {
        /* Rozzářený stav: mlhovina se rozjasní a roztáhne do prostoru */
        box-shadow: 0 0 120px 40px rgba(220, 0, 0, 0.35);
        /* Zde jsme smazali pohyb (transform: scale) */
    }
}

/* --- MOBILNÍ ZOBRAZENÍ --- */
@media (max-width: 900px) {
    .release-badge-logo {
        height: 70px; 
        margin: 0 auto 20px auto;
    }
    .roster-records-logo {
        height: 110px; /* I na mobilu o něco zvětšeno (původně 100px) */
        margin: 40px auto 40px auto; /* Odsazení od horního menu zachováno */
    }
}

/* ========================================================== */
/* --- OPTIMALIZACE PRO NETBOOKY A ZMENŠOVÁNÍ OKNA NA PC --- */
/* ========================================================== */

/* 1. HLAVIČKA: Ochrana před srážkou loga a menu na menších PC */
@media (min-width: 901px) and (max-width: 1366px) {
    .site-header {
        padding: 10px 4% !important;
    }
    .nav-menu li {
        margin-left: 15px !important;
    }
    .nav-menu a {
        font-size: 0.85rem !important;
    }
    .logo-text {
        font-size: 0.9rem !important;
    }
}

/* 2. CENTROVÁNÍ FOTKY (LIGHTBOX) - Bezpečné zobrazení */
.slb-content-wrapper, .slb-content, .mfp-content, .featherlight-content, .lightbox-content {
    text-align: center !important; 
    width: 100% !important;
}
.slb-content-wrapper img, .slb-content img, .mfp-content img, .featherlight-content img, .lightbox-content img {
    display: inline-block !important;
    margin: 0 auto !important;
    position: relative !important;
    left: auto !important;
    top: auto !important;
}

/* ========================================================== */
/* --- OPRAVA NADPISU "VYDÁNÍ NA EXIT RECORDS" NA MOBILU --- */
/* ========================================================== */
@media (max-width: 900px) {
    .artist-releases-section .section-subtitle {
        font-size: 1.1rem !important; /* Zvětšíme text na normální a čitelnou velikost nadpisu */
        white-space: normal !important; /* Povolíme zalamování na více řádků, aby text nepřetékal z displeje */
        overflow: visible !important;
        margin-top: 40px !important; /* Lehce odsadíme od textu nad ním */
    }
}

/* ========================================================== */
/* --- OPRAVA PŘEKRÝVÁNÍ GRAFIKY A ZEŠTÍHLENÍ MENU --- */
/* ========================================================== */

/* 1. MOBIL: Zeštíhlení menu a správné odtlačení fotky v detailu */
@media (max-width: 900px) {
    /* Mírné zeštíhlení spodní části hlavní hlavičky (burger menu) */
    .site-header {
        padding-bottom: 8px !important; 
    }
    
    /* Zvětšení prostoru nad detailem releasu (původně bylo 150px, dáme 180px) */
    .single-release-container {
        padding-top: 180px !important; 
    }
}

/* 2. PC: Oprava oříznutí karet při hover efektu (Releases) */
@media (min-width: 901px) {
    /* Zajištění, aby karta při najetí vyskočila "nad" ostatní prvky (lištu) a neořízla se */
    .release-card:hover,
    .release-item:hover {
        z-index: 99 !important;
        position: relative;
    }
    
    /* Vynucení prostoru, aby mřížka s releasy nezkracovala stíny nebo přesahy */
    .releases-grid,
    .archive-releases-grid,
    .roster-releases {
        overflow: visible !important;
        padding-top: 10px !important;
    }
}

/* ========================================================== */
/* --- VYNUCENÍ CENTROVÁNÍ NADPISŮ NA MOBILU (PRODUCENTI/DJS) --- */
/* ========================================================== */

@media (max-width: 900px) {
    /* Zacílíme na nadpisy v sekci producentů a DJs */
    .roster-section-producers .section-subtitle,
    .roster-section-djs .section-subtitle {
        text-align: center !important; /* Vynutí středové zarovnání */
        display: block !important;
        width: 100% !important;
        left: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* ========================================================== */
/* --- CENTROVÁNÍ LOGA A KATALOGOVÉHO ČÍSLA V DETAILU (PC) ---*/
/* ========================================================== */
@media (min-width: 901px) {
    /* Zarovnání malého loga EXIT Records na střed */
    .single-release-container .release-badge-logo {
        margin: 0 auto 20px auto !important;
    }
    
    /* Zarovnání katalogového čísla (EXIT001) na střed */
    .single-release-container .release-meta-top {
        justify-content: center !important;
    }
}

/* ========================================================== */
/* --- OPRAVA MEZERY A CENTROVÁNÍ V DETAILU UMĚLCE (MOBIL) ---*/
/* ========================================================== */

@media (max-width: 900px) {
    /* Zmenší tu obří 100px mezeru na elegantních 40px */
    .single-artist-container .artist-releases-section {
        margin-top: 40px !important; 
    }

    /* Vynutí zarovnání nápisu "Vydání na EXIT Records" přesně na střed */
    .single-artist-container .artist-releases-section .section-subtitle {
        text-align: center !important;
        display: block !important;
        width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* ========================================================== */
/* --- VLASTNÍ CYBERPUNK POSUVNÍK (SCROLLBAR) --- */
/* ========================================================== */

/* Upraví posuvník v prohlížečích Chrome, Edge, Safari a Opera */
::-webkit-scrollbar {
    width: 8px; /* Tenký a elegantní profil */
    background: #0a0a0a; /* Temné pozadí stopy (barva vašeho webu) */
}

::-webkit-scrollbar-track {
    background: #0a0a0a; 
}

::-webkit-scrollbar-thumb {
    background: #333; /* Tmavě šedý, nenápadný jezdec */
    border-radius: 10px; /* Mírně zakulacené okraje */
}

::-webkit-scrollbar-thumb:hover {
    background: #00f0ff; /* Vystřelí do vaší EXIT tyrkysové při najetí myší */
    box-shadow: 0 0 10px rgba(0, 240, 255, 0.5); /* Lehká neonová záře */
}

/* ========================================================== */
/* --- CHYTRÉ MIZEJÍCÍ MENU (POUZE MOBIL) --- */
/* ========================================================== */

@media (max-width: 900px) {
    .site-header {
        position: fixed; /* Ukotví menu nahoře */
        top: 0;
        width: 100%;
        z-index: 9999;
        /* Plynulá animace zajíždění a vyjíždění */
        transition: transform 0.3s ease-in-out !important; 
    }
    
    /* Tuto třídu bude přidávat náš skript, když uživatel scrolluje dolů */
    .site-header.nav-up {
        transform: translateY(-100%); /* Vytáhne hlavičku nahoru mimo obrazovku */
    }
}

/* ========================================================== */
/* --- 1. ZOOM EFEKT KARET RELEASŮ (MÍSTO POSUNU NAHORU) --- */
/* ========================================================== */

.release-card {
    /* Nastavíme plynulý přechod pro transformaci */
    transition: transform 0.4s ease, box-shadow 0.4s ease !important;
}

.release-card:hover {
    /* Přiblíží kartu na 104% velikosti a vynutí Y=0 (vyruší původní odskok nahoru) */
    transform: scale(1.04) translateY(0) !important; 
    z-index: 10 !important;
}

/* ========================================================== */
/* --- OPRAVA PŘEKRÝVÁNÍ KARET S NADPISEM (Z-INDEX + OVERFLOW) --- */
/* ========================================================== */

/* Vynutíme, aby mřížky dovolily kartám přetéct ven a neustřihly je */
.releases-grid,
.roster-releases,
.artist-releases-section {
    position: relative !important;
    z-index: 50 !important;
    overflow: visible !important; /* TOTO JE TEN CHYBĚJÍCÍ KLÍČ! */
}

/* Samotná karta musí mít také povolený přesah */
.release-card {
    position: relative !important;
    z-index: 1 !important;
    overflow: visible !important;
    transition: transform 0.4s ease, box-shadow 0.4s ease !important;
}

.release-card:hover {
    transform: scale(1.04) translateY(0) !important; 
    z-index: 999 !important;
}

/* ========================================================== */
/* --- PRÉMIOVÁ IKONKA V PŘEHRÁVAČI (VINYL/KATALOG) --- */
/* ========================================================== */

/* 1. Skrytí původní textové noty */
#exit-mini-player .player-toggle .icon {
    display: none !important;
}

/* 2. Vytvoření moderní minimalistické ikonky (vinylová deska) přes CSS */
#exit-mini-player .player-toggle::after {
    content: "";
    display: block;
    width: 22px;
    height: 22px;
    /* Zakódované SVG pro rychlé načítání bez externích souborů */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23cccccc' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Ccircle cx='12' cy='12' r='3'%3E%3C/circle%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    transition: all 0.3s ease;
}

/* 3. PC Verze: Ikonka bude napravo vedle hlasitosti (neruší cover a text) */
@media (min-width: 901px) {
    #exit-mini-player .player-wrapper {
        position: relative !important;
    }
    #exit-mini-player .player-toggle {
        display: flex !important;
        position: absolute;
        right: 30px; /* Umístí ikonku úplně doprava */
        top: 50%;
        transform: translateY(-50%);
        z-index: 20;
    }
    /* Aby ikonka nepřekrývala tlačítka přehrávače, trochu je odsuneme */
    #exit-mini-player .p-bottom-controls {
        margin-right: 40px !important; 
    }
    
    /* Hover efekt (tyrkysová barva + jemné zvětšení) */
    #exit-mini-player .player-toggle:hover::after {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300f0ff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Ccircle cx='12' cy='12' r='3'%3E%3C/circle%3E%3C/svg%3E");
        transform: scale(1.1);
    }
}

/* 4. Mobilní Verze: Ikonka bude v pravém horním rohu přehrávače */
@media (max-width: 900px) {
    #exit-mini-player .player-wrapper {
        position: relative !important; 
    }
    #exit-mini-player .player-toggle {
        display: block !important;
        position: absolute;
        top: 15px;
        right: 20px;
        z-index: 20;
    }
    /* Dotykový efekt */
    #exit-mini-player .player-toggle:active::after {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300f0ff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Ccircle cx='12' cy='12' r='3'%3E%3C/circle%3E%3C/svg%3E");
    }
}

/* ========================================================== */
/* --- FINÁLNÍ OPRAVA OŘÍZNUTÍ KARET A ZEŠTÍHLENÍ LIŠT --- */
/* ========================================================== */

/* 1. OPRAVA OŘÍZNUTÍ: Zakážeme starý efekt poskoku obrázku, který způsoboval uříznutí */
.release-card:hover .release-cover img {
    transform: none !important; 
}

/* 2. ZEŠTÍHLENÍ LIŠTY: Stránka RELEASES (zmenšíme 60px mezeru pod nadpisem na 25px) */
h1.page-title {
    margin-bottom: 25px !important;
}

/* 3. ZEŠTÍHLENÍ LIŠTY: Detail UMĚLCE (zmenšíme 40px mezeru pod nadpisem na 15px) */
.artist-releases-section .section-subtitle {
    margin-bottom: 15px !important;
}

/* ========================================================== */
/* --- EFEKT PRO FOTKY V GALERII --- */
/* ========================================================== */

/* Cílíme na standardní WordPress bloky galerií */
.gallery-item img,
.wp-block-gallery img,
.gallery-icon img {
    transition: transform 0.4s ease, box-shadow 0.4s ease, filter 0.4s ease !important;
    cursor: pointer;
}

.gallery-item img:hover,
.wp-block-gallery img:hover,
.gallery-icon img:hover {
    transform: scale(1.03) !important; /* Lehké přiblížení */
    box-shadow: 0 10px 20px rgba(0,0,0,0.8) !important; /* Temný stín pod fotkou */
    filter: brightness(1.1); /* Lehký "glow" efekt (projasnění) */
    z-index: 10;
    position: relative;
}


/* ========================================================== */
/* --- ÚPRAVA NADCHÁZEJÍCÍCH AKCÍ NA MOBILU (FLEXBOX MAGIC) --- */
/* ========================================================== */

@media (max-width: 900px) {
    /* Uděláme z hlavního obalu flexbox */
    .hero-upcoming-list {
        display: flex !important;
        flex-direction: column !important;
    }
    
    /* Rozpustíme původní hlavičku, aby se její prvky mohly volně přesouvat */
    .upcoming-header {
        display: contents !important; 
    }

    /* 1. Nadpis bude úplně nahoře a vycentrovaný */
    .upcoming-header h3 {
        order: 1 !important;
        text-align: center !important;
        width: 100% !important;
        margin-bottom: 20px !important;
    }

    /* 2. Obal tabulky akcí (Přidána tenká linka a zakulacení nahoře) */
    .compact-list {
        order: 2 !important;
        width: 100% !important;
        border: 1px solid rgba(255, 255, 255, 0.15) !important; /* Tenká stříbrná linka */
        border-bottom: none !important; /* Spodek necháme otevřený pro tlačítko */
        border-radius: 12px 12px 0 0 !important; /* Zakulatíme jen horní rohy */
        padding: 5px 15px !important; /* Lehká vnitřní vata, ať se text nedotýká čáry */
        background: rgba(10, 10, 10, 0.4) !important; /* Velmi jemně ztmavíme pozadí */
    }

    /* 3. Tlačítko Zobrazit vše (Navazuje na tabulku a uzavírá linku dole) */
    .upcoming-header .view-all-link {
        order: 3 !important;
        text-align: center !important;
        display: block !important;
        width: 100% !important;
        margin-top: 0 !important; /* Smažeme mezeru, aby se tlačítko přilepilo k tabulce */
        padding: 15px 0 !important; 
        font-size: 1rem !important;
        text-transform: uppercase !important;
        letter-spacing: 1px !important;
        
        /* Dokončení linky kolem tlačítka */
        border: 1px solid rgba(255, 255, 255, 0.15) !important;
        border-top: 1px solid rgba(255, 255, 255, 0.05) !important; /* Ultra-tenká dělící čára mezi akcemi a tlačítkem */
        border-radius: 0 0 12px 12px !important; /* Zakulatíme spodní rohy */
        background: rgba(10, 10, 10, 0.4) !important;
        color: #00f0ff !important; /* Tyrkysový text pro jasné odlišení */
        transition: 0.3s ease background !important;
    }
    
    /* Dotykový efekt na mobilu */
    .upcoming-header .view-all-link:active {
        background: rgba(0, 240, 255, 0.1) !important;
    }
}

/* ========================================================== */
/* --- MOBILNÍ VYLADĚNÍ STRÁNKY PRONÁJEM (RENTALS) --- */
/* ========================================================== */

@media (max-width: 900px) {
    /* 1. Zmenšení a zúhlednění hlavního nadpisu (PRONÁJEM & TECHNICALS) */
    .rentals-hero .void-title {
        font-size: 1.8rem !important; /* Příjemnější velikost na displej telefonu */
        line-height: 1.2 !important;
        letter-spacing: 2px !important;
        margin-bottom: 15px !important;
    }

    /* 2. Zmenšení mezery mezi emailem a VOID Acoustics */
    .rentals-hero {
        padding-bottom: 10px !important; /* Zmenšení spodní vaty celé úvodní sekce */
    }
    .contact-email-large {
        margin-top: 25px !important;
        margin-bottom: 20px !important;
    }
    .tech-header {
        margin-bottom: 30px !important; /* Původně bylo 60px */
    }

    /* 3. Zmenšení mezery nad galerií (přebití inline stylů z PHP) */
    .venue-gallery-section {
        padding-top: 20px !important; /* Přebije natvrdo napsaných 80px z kódu */
    }
    .rentals-features-text {
        margin-bottom: 10px !important;
    }

    /* 4. Zvětšení a vystředění nadpisu THE VENUE (GALLERY) */
    .venue-gallery-section .section-subtitle {
        font-size: 1.6rem !important; /* Lehounce zmenšeno, aby to nedělalo paseku */
        letter-spacing: 2px !important;
        margin-bottom: 30px !important;
        text-align: center !important;
        
        /* Tyto 3 řádky zruší to otravné ořezávání třemi tečkami: */
        white-space: normal !important; 
        overflow: visible !important;
        text-overflow: clip !important;
    }

    /* 5. Zvětšení náhledů fotek v galerii (Vynucení 1 fotky na řádek na plnou šířku) */
    .venue-gallery-container .wp-block-gallery,
    .venue-gallery-container .blocks-gallery-grid {
        display: flex !important;
        flex-direction: column !important; /* Srovná fotky pod sebe */
        gap: 15px !important;
    }
    .venue-gallery-container .wp-block-image {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
    }
    .venue-gallery-container .wp-block-image img {
        width: 100% !important;
        height: auto !important;
        border-radius: 4px !important; /* Jemné zakulacení fotek na mobilu */
    }
/* 6. Extrémní zmenšení mezery mezi Vybavením a Galerií */
    .tech-specs-section {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }
    
    .venue-gallery-section {
        padding-top: 0 !important; /* Vyruší původních natvrdo napsaných 80px úplně na nulu */
        margin-top: 60px !important; /* Nastaví jen velmi decentní odstup */
    }
