/* ── Variables ── */
:root {
    --gold: #ffd731;
    --gold-light: #e2c07a;
    --dark: #0a0a0a;
}

/* ── Section ── */
#top .deval-hero-section {
    position: relative;
    width: 100%;
    height: 82dvh;
    min-height: 520px;
    overflow: hidden;
}

/* ── Dark BG ── */
#top .hero-dark-bg {
    position: absolute;
    inset: 0;
    background-image: url('/wp-content/uploads/2025/05/black-bacground-1.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    z-index: 0;
}

.deval-hero-inner-wrap {
    position: relative;
    max-width: 1330px;
    margin: 0 auto;
    width: 100%;
    height: 100%;
}

/* ── Swiper ── */
#top .deval-hero-swiper {
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
}

#top .deval-hero-swiper .swiper-slide {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

/* ── BG Image ── */
#top .hero-slide-bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    filter: brightness(0.35) blur(2px);
    transform: scale(1.08);
    opacity: 0;
    transition:
        opacity 1.2s cubic-bezier(0.4,0,0.2,1),
        transform 8s cubic-bezier(0.4,0,0.2,1) !important;
    will-change: transform, opacity;
}

#top .swiper-slide-active .hero-slide-bg {
    opacity: 1;
    transform: scale(1.04);
}

/* ── Gradient Overlay ── */
#top .slide-gradient {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(
        105deg,
        rgba(0,0,0,0.95) 0%,
        rgba(0,0,0,0.88) 30%,
        rgba(0,0,0,0.60) 50%,
        rgba(0,0,0,0.15) 70%,
        transparent 100%
    );
}

/* ── Artist Image ── */
#top .slide-artist {
    position: absolute;
    right: 0;
    bottom: 0;
    /*height: 768px;*/
    height: 100%;
    max-width: 60%;
    width: auto;
    object-fit: cover;
    object-position: top center;
    z-index: 2;
    opacity: 0;
    transform: translateX(24px);
    transition:
        opacity 0s cubic-bezier(0.4,0,0.2,1),
        transform 0s cubic-bezier(0.4,0,0.2,1) !important;
    will-change: transform, opacity;
    filter: brightness(1.1);
}

#top .swiper-slide-active .slide-artist {
    opacity: 1;
    transform: translateX(0);
}

#top .swiper-slide-prev .slide-artist,
#top .swiper-slide-next .slide-artist {
    opacity: 0;
    transform: translateX(-16px);
    transition:
        opacity 0.5s cubic-bezier(0.4,0,0.2,1),
        transform 0.5s cubic-bezier(0.4,0,0.2,1) !important;
}

/* ── Artist Credit ── */
#top .slide-credit {
    position: absolute;
    bottom: 24px;
    right: 28px;
    z-index: 5;
    font-size: 18px;
    text-transform: capitalize;
    background: rgba(0,0,0,0.6);
    padding: 4px 8px;
    border-radius: 5px;
    color: #fff;
    text-align: right;
    opacity: 0;
    transform: translateY(8px);
    transition:
        opacity 0s cubic-bezier(0.4,0,0.2,1),
        transform 0s cubic-bezier(0.4,0,0.2,1) !important;
}

#top .swiper-slide-active .slide-credit {
    opacity: 1;
    transform: translateY(0);
}

#top .swiper-slide-prev .slide-credit,
#top .swiper-slide-next .slide-credit {
    opacity: 0;
    transition:
        opacity 0.3s cubic-bezier(0.4,0,0.2,1),
        transform 0.3s cubic-bezier(0.4,0,0.2,1) !important;
}

/* ── Static Content ── */
#top .hero-static-content {
    position: absolute;
    left: 0px;
    top: 0;
    width: 50%;
    height: 100%;
    z-index: 10;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 20px;
    pointer-events: none;
}

/* ── Heading ── */
#top .hero-heading {
    font-family: 'Afacad', sans-serif;
    font-size: clamp(26px,3.8vw,48px);
    font-weight: 400;
    color: var(--gold);
    line-height: 1.1;
    margin: 0 0 20px 0;
    opacity: 0;
    transform: translateY(32px);
    animation: heroFadeUp 0.9s ease 0.5s forwards;
}

/* ── Description ── */
#top .hero-desc {
    font-family: 'Afacad', sans-serif;
    font-size: clamp(18px,2vw,24px);
    max-width: 570px;
    color: #fff;
    line-height: 1.5;
    margin: 0;
    opacity: 0;
    transform: translateY(24px);
    animation: heroFadeUp 0.9s ease 0.8s forwards;
}

/* ── Animation ── */
@keyframes heroFadeUp {
    0% {
        opacity: 0;
        transform: translateY(28px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ── Navigation ── */
#top .swiper-button-next,
#top .swiper-button-prev {
    z-index: 11;
    width: 44px;
    height: 44px;
    background: rgba(0,0,0,0.50);
    border: 1px solid rgba(201,168,76,0.40);
    border-radius: 50%;
    color: var(--gold) !important;
    transition: background 0.3s, border-color 0.3s;
}

#top .swiper-button-next:hover,
#top .swiper-button-prev:hover {
    background: rgba(201,168,76,0.18);
    border-color: var(--gold);
}

#top .swiper-button-next::after,
#top .swiper-button-prev::after {
    font-size: 12px !important;
    font-weight: 700;
}

/* ── Pagination ── */
#top .swiper-pagination {
    z-index: 11;
    bottom: 22px !important;
}

#top .swiper-pagination-bullet {
    background: rgba(255,255,255,0.30);
    opacity: 1;
    transition: all 0.3s;
}

#top .swiper-pagination-bullet-active {
    background: var(--gold);
    width: 24px;
    border-radius: 4px;
}

/* ── Tablet ── */
@media (max-width: 1024px) {
    #top .hero-static-content {
        width: 50%;
    }
    #top .slide-artist {
        height: 100%;
        max-width: 60%;
    }
}

/* ── Mobile ── */
@media (max-width: 767px) {
    #top .deval-hero-section {
        min-height: 600px;
    }
    #top .deval-hero-swiper {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
    }
    #top .hero-static-content {
        top: 0;
        left: 0;
        width: 100%;
        height: auto;
        justify-content: flex-start;
        padding: 48px 20px 24px;
    }

    #top .hero-heading {
        font-size: 28px;
        margin-bottom: 10px;
        line-height: 1.2;
    }
    #top .hero-desc {
        font-size: 18px;
        line-height: 1.65;
        max-width: 100%;
    }
    #top .swiper-slide {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: stretch;
        overflow: hidden;
    }
    #top .swiper-slide-prev .slide-artist,
    #top .swiper-slide-next .slide-artist {
        opacity: 0;
        transform: translateX(-50%) translateX(-16px);
        transition:
            opacity 0.5s cubic-bezier(0.4,0,0.2,1),
            transform 0.5s cubic-bezier(0.4,0,0.2,1) !important;
    }
    #top .slide-artist {
        position: absolute;
        bottom: 0;
        left: 50%;
        right: auto;
        transform: translateX(-50%) translateX(24px);
        height: 65%;
        width: 90%;
        max-width: 100%;
    }
    #top .swiper-slide-active .slide-artist {
        transform: translateX(-50%) translateX(0);
    }
    #top .slide-credit {
        bottom: 4px;
        left: 0;
        right: 0;
        width: 100%;
        text-align: center;
        font-size: 16px;
    }
    #top .swiper-slide-prev .slide-credit,
    #top .swiper-slide-next .slide-credit {
        transform: translateX(-50%) translateY(0);
    }
    #top .swiper-button-next,
    #top .swiper-button-prev {
        display: none !important;
    }
}

/* MOBILE LANDSCAPE */
@media (max-width: 767px) and (orientation: landscape) {
    #top .deval-hero-section {
        min-height: 320px;
    }
    #top .hero-static-content {
        width: 60%;
        height: 100%;
        justify-content: center;
    }
    #top .hero-desc {
        max-width: 90%;
    }
    #top .slide-artist {
        right: 0;
        left: auto;
        height: 100%;
        width: 45%;
        max-width: 45%;
        transform: translateX(24px);
    }
    #top .swiper-slide-active .slide-artist {
        transform: translateX(0);
    }
    #top .swiper-slide-prev .slide-artist,
    #top .swiper-slide-next .slide-artist {
        transform: translateX(-16px);
    }
    #top .slide-credit {
        right: 16px;
        left: auto;
        width: auto;
        font-size: 14px;
    }
}

/* ── Small Mobile ── */
@media (max-width: 480px) {
    #top .hero-static-content {
        padding: 28px 20px 20px;
    }
    #top .hero-heading {
        font-size: 28px;
    }
    #top .slide-artist {
        height: 68%;
        width: 95%;
    }
}