/* ===== HERO SLIDER (Full-bleed, themed with main.css) ===== */
.hero-slider {
    position: relative;
    width: 100%;
    background: var(--color-black);
    overflow: clip;
}

/* Skeleton overlay (no gap) */
.hero-slider__skeleton {
    position: absolute;
    inset: 0;
    z-index: 4;
    width: 100%;
    height: 100%; /* ← با ارتفاع خود اسلایدر یکی می‌شود */
    background: linear-gradient(90deg, #e9e5dc 25%, #f3efe6 37%, #e9e5dc 63%);
    background-size: 400% 100%;
    animation: sk-shimmer 1.2s infinite;
}

.hero-slider__skeleton.is-hidden {
    opacity: 0;
    height: 0;
    pointer-events: none;
    transition: opacity .25s ease, height .25s ease;
}

.hero-slider__sk-frame {
    width: 100%;
    height: 100%;
    opacity: .25;
}

@keyframes sk-shimmer {
    0% {
        background-position: 100% 0
    }
    100% {
        background-position: 0 0
    }
}

/* Progress timeline */
.hero-slider__progress {
    position: absolute;
    inset: 0 0 auto 0;
    height: 4px;
    z-index: 5;
    background: rgba(255, 255, 255, .12);
}

.hero-slider__progress-bar {
    display: block;
    height: 100%;
    width: 0;
    background: var(--color-rosegold);
    transition: width .1s linear;
}

/* Viewport */
.hero-slider__swiper {
    width: 100%;
    height: clamp(280px, 45vw, 640px); /* ارتفاع معقول برای موبایل/دسکتاپ */
}

/* Slides */
.hero-slide {
    width: 100%;
    height: 100%;
    position: relative;
}

.hero-slide__link {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    color: inherit;
}

.hero-slide__media, .hero-slide__img {
    width: 100%;
    height: 100%;
    display: block;
}

.hero-slide__img {
    object-fit: cover;
    object-position: center center; /* در صورت نیاز: center 40% */
    filter: saturate(1.02);
}

/* Caption */
.hero-slide__caption {
    position: absolute;
    inset: auto 0 8% 0;
    width: min(1100px, 92%);
    margin: 0 auto;
    padding: 0 1rem;
    color: #fff;
    text-align: center;
    text-shadow: 0 2px 18px rgba(0, 0, 0, .35);
}

.hero-slide__title {
    font-size: clamp(18px, 3.2vw, 36px);
    line-height: 1.25;
    margin: 0 0 .35rem;
    font-weight: 700;
}

.hero-slide__subtitle {
    font-size: clamp(13px, 2vw, 18px);
    opacity: .92;
    margin: 0;
}

/* Nav overlay */
.hero-slider__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 6;
    width: 44px;
    height: 44px;
    border: none;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: rgba(0, 0, 0, .45);
    color: #fff;
    cursor: pointer;
    transition: var(--transition);
    backdrop-filter: blur(2px);
}

.hero-slider__nav:hover {
    background: rgba(0, 0, 0, .65);
    transform: translateY(-50%) scale(1.04);
}

.hero-slider__nav--prev {
    inset-inline-start: 14px;
}

.hero-slider__nav--next {
    inset-inline-end: 14px;
}

/* Hide Swiper spinner completely (we use skeleton) */
.swiper-lazy-preloader {
    display: none !important;
}

/* Subtle hover on desktop */
@media (hover: hover) {
    .hero-slide__link:hover .hero-slide__img {
        transform: scale(1.02);
        transition: transform .6s ease;
    }
}

/* Fallback text */
.hero-slide__fallback {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    color: var(--color-cream);
}
