/* =================================
   ULTRA PREMIUM CSS: Paralaksa, animacje, subtelny ruch
================================= */

/* --- PARALAKSA TŁA --- */
body {
    background-attachment: fixed;
    background-position: center top;
    background-size: cover;
    transition: background-position 0.6s ease-out;
}
body:hover {
    background-position: center center;
}

/* --- TOPBAR DELIKATNY RUCH --- */
.topbar {
    animation: topbarPulse 3s infinite alternate ease-in-out;
}
@keyframes topbarPulse {
    0% { background-color: rgba(0,0,0,0.75); }
    100% { background-color: rgba(0,0,0,0.85); }
}

/* --- HEADER ANIMOWANY --- */
.main-header {
    backdrop-filter: blur(6px);
    transition: all 0.5s ease-in-out;
}
.main-header:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.35);
}
.main-header .logo img {
    transition: transform 0.4s ease, filter 0.4s ease;
}
.main-header .logo img:hover {
    transform: scale(1.08) rotate(-1deg);
    filter: drop-shadow(0 4px 10px rgba(255, 83, 83, 0.5));
}

/* --- SLIDER ULTRA --- */
.slider-container {
    perspective: 1200px;
}
.swiper-slide img {
    transition: transform 0.8s ease, filter 0.8s ease;
}
.swiper-slide:hover img {
    transform: scale(1.03) rotateY(1deg);
    filter: brightness(0.7);
}
.slide-caption {
    animation: slideCaptionFade 1.2s forwards;
}
@keyframes slideCaptionFade {
    0% { opacity: 0; transform: translateY(20px); }
    100% { opacity: 1; transform: translateY(0); }
}

/* --- ON-AIR PREMIUM --- */
.on-air-card {
    transform-style: preserve-3d;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}
.on-air-card:hover {
    transform: translateY(-8px) rotateX(1deg);
    box-shadow: 0 12px 25px rgba(0,0,0,0.6);
}

/* --- NEWS PREMIUM --- */
.news-item {
    transition: transform 0.4s ease, box-shadow 0.4s ease, background 0.4s ease;
}
.news-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.5);
    background-color: rgba(60,60,60,0.95);
}

/* --- TOP5 PREMIUM --- */
.sidebar-column .top5-list li:hover {
    transform: translateX(8px) scale(1.02);
    background-color: rgba(65,65,65,0.95);
}

/* --- POLL PREMIUM --- */
.poll-widget:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.45);
}

/* --- VIDEO PREMIUM --- */
.video-embed iframe {
    transition: transform 0.5s ease, box-shadow 0.5s ease;
}
.video-embed:hover iframe {
    transform: scale(1.04) rotateZ(0.5deg);
    box-shadow: 0 15px 30px rgba(0,0,0,0.5);
}

/* --- PREZENTERZY PREMIUM --- */
.presenter-card-link:hover .presenter-card {
    transform: translateY(-6px) scale(1.05);
    box-shadow: 0 12px 25px rgba(0,0,0,0.45);
}

/* --- LISTEN SECTION PREMIUM --- */
.listen-section h2 {
    transition: transform 0.4s ease, color 0.4s ease;
}
.listen-section h2:hover {
    transform: translateY(-4px) scale(1.02);
    color: #ff5252;
}
.listen-buttons .listen-btn:hover {
    transform: translateY(-6px) scale(1.03);
    box-shadow: 0 10px 25px rgba(0,0,0,0.55);
}

/* --- MODAL PREMIUM --- */
.modal-content {
    transform: scale(0.95);
    opacity: 0;
    animation: modalPremiumFade 0.5s forwards;
}
@keyframes modalPremiumFade {
    0% { transform: scale(0.95) translateY(-20px); opacity: 0; }
    100% { transform: scale(1) translateY(0); opacity: 1; }
}

/* --- FOOTER PREMIUM --- */
.main-footer:hover {
    background-color: #222;
    transform: translateY(-2px);
    box-shadow: 0 -5px 20px rgba(0,0,0,0.4);
}

/* --- RESPONSYWNOŚĆ --- */
@media (max-width: 992px) {
    .main-header .container { flex-direction: column; }
    .main-menu { text-align: center; }
    .on-air-section { grid-template-columns: 1fr; }
    .content-grid { grid-template-columns: 1fr; }
    .video-grid { grid-template-columns: 1fr; }
    .presenters-grid { gap: 15px; }
    .listen-buttons { gap: 12px; margin-top: 35px; padding-top: 10px; }
}
@media (max-width: 576px) {
    .slider-container { height: 40vh; }
    .slide-caption h2 { font-size: 24px; }
    .slide-caption p { font-size: 14px; }
    .listen-section h2 { font-size: 1.5rem; margin-bottom: 10px; }
}
