/* Mirswa homepage — hero, weather, search, layout, deal cards, triple slider. */

/* Hero carousel: full width, responsive height */
/* Slick fade requires a block track — flex breaks crossfade. */
.mirswa-hero-slider .slick-list,
.mirswa-hero-slider .slick-slide { height: auto; }
.mirswa-hero-slider .slick-track { display: block; }
.mirswa-hero-slider .slick-dots {
    display: none !important;
}
.mirswa-hero-slider .home-contain {
    position: relative;
    width: 100%;
    overflow: hidden;
    box-sizing: border-box;
    aspect-ratio: 16 / 9;
    min-height: max(168px, min(36vh, 280px));
    min-height: max(168px, min(36svh, 280px));
    max-height: min(68vh, 360px);
    max-height: min(68svh, 360px);
}
@media (min-width: 576px) and (max-width: 991.98px) {
    .mirswa-hero-slider .home-contain {
        aspect-ratio: 16 / 7;
        min-height: max(200px, min(34vh, 320px));
        min-height: max(200px, min(34svh, 320px));
        max-height: min(62vh, 400px);
        max-height: min(62svh, 400px);
    }
}
@media (min-width: 992px) {
    .mirswa-hero-slider .home-contain {
        aspect-ratio: 16 / 5;
        min-height: 280px;
        max-height: 520px;
    }
}
/* Film grain over art + plate (pointer-events none; tap target sits above). */
.mirswa-hero-slider .home-contain::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    opacity: 0.065;
    mix-blend-mode: overlay;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='256' height='256'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    background-size: 220px 220px;
}
/* Gradient plate under each slide image; if image fails to load, gradient shows through. */
.mirswa-hero-slider .mirswa-hero-slide-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}
/* Vertical plates: richer tops + shallow top vignette (avoids a pale “cap” on every slide). */
.mirswa-hero-slider .mirswa-hero-slide--1 .mirswa-hero-slide-bg {
    background:
        linear-gradient(180deg, rgba(42, 18, 0, 0.28) 0%, rgba(42, 18, 0, 0.06) 22%, transparent 42%),
        linear-gradient(180deg, #ffc875 0%, #f59e2c 32%, #e86812 62%, #9a3d08 86%, #4a1c04 100%);
}
.mirswa-hero-slider .mirswa-hero-slide--2 .mirswa-hero-slide-bg {
    background:
        linear-gradient(180deg, rgba(8, 28, 72, 0.32) 0%, rgba(8, 28, 72, 0.08) 24%, transparent 44%),
        linear-gradient(180deg, #7eb6ff 0%, #3b7ddd 34%, #1f56a8 70%, #0c2340 94%, #061428 100%);
}
.mirswa-hero-slider .mirswa-hero-slide--3 .mirswa-hero-slide-bg {
    background:
        linear-gradient(180deg, rgba(72, 6, 18, 0.26) 0%, rgba(72, 6, 18, 0.07) 22%, transparent 42%),
        linear-gradient(180deg, #ff8da8 0%, #f25c78 34%, #c41e3a 68%, #7a1024 90%, #3a0810 100%);
}
.mirswa-hero-slider .mirswa-hero-slide--4 .mirswa-hero-slide-bg {
    background:
        linear-gradient(180deg, rgba(58, 36, 0, 0.26) 0%, rgba(58, 36, 0, 0.07) 22%, transparent 42%),
        linear-gradient(180deg, #ffd54a 0%, #f0a020 34%, #d97706 64%, #92400e 88%, #422006 100%);
}
.mirswa-hero-slider .mirswa-hero-slide--5 .mirswa-hero-slide-bg {
    background:
        linear-gradient(180deg, rgba(24, 12, 56, 0.34) 0%, rgba(24, 12, 56, 0.1) 26%, transparent 46%),
        linear-gradient(180deg, #c4b5fd 0%, #8b7ae8 32%, #5b47c4 66%, #352080 90%, #140a38 100%);
}
/* Slide 6: photo assets in assets/wether/ (folder spelling on disk). */
.mirswa-hero-slider .mirswa-hero-slide--6 .mirswa-hero-slide-bg {
    background: linear-gradient(180deg, #94a3b8 0%, #64748b 55%, #475569 100%);
    transition: background 0.85s ease;
    background-repeat: no-repeat;
}
.mirswa-hero-slider[data-live-weather-status="loading"] .mirswa-hero-slide--6 .mirswa-hero-slide-bg {
    background: linear-gradient(180deg, #a8b4c4 0%, #7c8a9e 50%, #5c6b7e 100%);
    animation: mirswaWxLoadingSky 2.4s ease-in-out infinite alternate;
}
@keyframes mirswaWxLoadingSky {
    from { filter: brightness(0.96); }
    to { filter: brightness(1.06); }
}
/* Clear day: sky photo stays still; motion reads on the sun layer only. */
@keyframes mirswaWxCloudSkyPanDay {
    0% { background-position: 0 0, 0 0, 38% 30%, 54% 46%, 0 0; }
    50% { background-position: 0 0, 0 0, 52% 36%, 46% 52%, 0 0; }
    100% { background-position: 0 0, 0 0, 38% 30%, 54% 46%, 0 0; }
}
@keyframes mirswaWxCloudSkyPanNight {
    0% { background-position: 0 0, 48% 46%, 0 0; }
    50% { background-position: 0 0, 54% 52%, 0 0; }
    100% { background-position: 0 0, 48% 46%, 0 0; }
}
@keyframes mirswaWxRainSkyPan {
    0% { background-position: 0 0, 0 0, 44% 50%, 56% 48%, 0 0; }
    50% { background-position: 0 0, 0 0, 54% 46%, 48% 54%, 0 0; }
    100% { background-position: 0 0, 0 0, 44% 50%, 56% 48%, 0 0; }
}
@keyframes mirswaWxSnowSkyPan {
    0% { background-position: 0 0, 48% 48%, 0 0; }
    50% { background-position: 0 0, 54% 54%, 0 0; }
    100% { background-position: 0 0, 48% 48%, 0 0; }
}
@keyframes mirswaWxFogSkyPan {
    0% { background-position: 0 0, 46% 52%, 0 0; }
    50% { background-position: 0 0, 54% 48%, 0 0; }
    100% { background-position: 0 0, 46% 52%, 0 0; }
}
/* Clear + day: no rainbow (rainbows read as “after rain”); bright sky + soft sun glow only */
.mirswa-hero-slider[data-live-weather-mood="clear"][data-live-daynight="day"] .mirswa-hero-slide--6 .mirswa-hero-slide-bg {
    background:
        linear-gradient(to top, rgba(255, 255, 255, 0.32) 0%, transparent 24%),
        radial-gradient(ellipse 120% 85% at 12% -2%, rgba(255, 255, 250, 0.82) 0%, rgba(255, 251, 220, 0.28) 32%, transparent 58%),
        url("../wether/cloud2.webp") center 38% / cover no-repeat,
        linear-gradient(168deg, #e0f2fe 0%, #7dd3fc 30%, #38bdf8 55%, #0284c7 88%, #0c4a6e 100%);
    background-size: auto, auto, 112% 112%, auto;
    background-position: 0 0, 0 0, 50% 48%, 0 0;
    animation: none;
}
.mirswa-hero-slider[data-live-weather-mood="clear"][data-live-daynight="night"] .mirswa-hero-slide--6 .mirswa-hero-slide-bg {
    background: linear-gradient(185deg, #1e293b 0%, #0f172a 40%, #020617 100%);
}
.mirswa-hero-slider[data-live-weather-mood="cloud"][data-live-daynight="day"] .mirswa-hero-slide--6 .mirswa-hero-slide-bg {
    background:
        linear-gradient(185deg, rgba(226, 232, 240, 0.55) 0%, transparent 38%),
        linear-gradient(175deg, rgba(51, 65, 85, 0.45) 0%, rgba(51, 65, 85, 0.2) 100%),
        url("../wether/cloud3.png") center 30% / cover no-repeat,
        url("../wether/cloud2.webp") center / cover no-repeat,
        linear-gradient(175deg, #cbd5e1 0%, #64748b 78%, #334155 100%);
    background-size: auto, auto, 122% 122%, 118% 118%, auto;
    background-position: 0 0, 0 0, 45% 30%, 52% 50%, 0 0;
    animation: mirswaWxCloudSkyPanDay 26s ease-in-out infinite;
}
.mirswa-hero-slider[data-live-weather-mood="cloud"][data-live-daynight="night"] .mirswa-hero-slide--6 .mirswa-hero-slide-bg {
    background:
        linear-gradient(180deg, rgba(15, 23, 42, 0.75) 0%, rgba(15, 23, 42, 0.5) 100%),
        url("../wether/cloud2.webp") center / cover no-repeat,
        linear-gradient(180deg, #334155 0%, #1e293b 50%, #0f172a 100%);
    background-size: auto, 120% 120%, auto;
    background-position: 0 0, 50% 48%, 0 0;
    animation: mirswaWxCloudSkyPanNight 28s ease-in-out infinite;
}
/* WMO 2 = partly cloudy (lighter), 3 = overcast (heavier) — same assets, tuned read */
.mirswa-hero-slider[data-live-weather-mood="cloud"][data-live-weather-code="2"][data-live-daynight="day"] .mirswa-hero-slide--6 .mirswa-hero-slide-bg {
    filter: brightness(1.04) saturate(1.04);
}
.mirswa-hero-slider[data-live-weather-mood="cloud"][data-live-weather-code="3"][data-live-daynight="day"] .mirswa-hero-slide--6 .mirswa-hero-slide-bg {
    filter: brightness(0.92) saturate(0.94);
}
.mirswa-hero-slider[data-live-weather-mood="rain"][data-live-daynight="day"] .mirswa-hero-slide--6 .mirswa-hero-slide-bg {
    background:
        linear-gradient(180deg, rgba(30, 41, 59, 0.65) 0%, rgba(30, 41, 59, 0.35) 100%),
        linear-gradient(180deg, rgba(15, 23, 42, 0.35) 0%, transparent 55%),
        url("../wether/cloud3.png") center / cover no-repeat,
        url("../wether/cloud1.webp") center / cover no-repeat,
        linear-gradient(180deg, #64748b 0%, #475569 40%, #334155 85%, #1e293b 100%);
    background-size: auto, auto, 120% 120%, 115% 115%, auto;
    background-position: 0 0, 0 0, 48% 50%, 54% 52%, 0 0;
    animation: mirswaWxRainSkyPan 22s ease-in-out infinite;
}
.mirswa-hero-slider[data-live-weather-mood="rain"][data-live-daynight="night"] .mirswa-hero-slide--6 .mirswa-hero-slide-bg {
    background:
        linear-gradient(180deg, rgba(2, 6, 23, 0.8) 0%, rgba(15, 23, 42, 0.55) 100%),
        linear-gradient(180deg, rgba(2, 6, 23, 0.45) 0%, transparent 50%),
        url("../wether/cloud3.png") center / cover no-repeat,
        url("../wether/cloud1.webp") center / cover no-repeat,
        linear-gradient(180deg, #1e293b 0%, #0f172a 55%, #020617 100%);
    background-size: auto, auto, 120% 120%, 115% 115%, auto;
    background-position: 0 0, 0 0, 46% 48%, 58% 50%, 0 0;
    animation: mirswaWxRainSkyPan 24s ease-in-out infinite reverse;
}
.mirswa-hero-slider[data-live-weather-mood="snow"][data-live-daynight="day"] .mirswa-hero-slide--6 .mirswa-hero-slide-bg {
    background:
        linear-gradient(180deg, rgba(248, 250, 252, 0.5) 0%, rgba(148, 163, 184, 0.35) 100%),
        url("../wether/cloud1.webp") center / cover no-repeat,
        linear-gradient(180deg, #e2e8f0 0%, #cbd5e1 35%, #94a3b8 75%, #64748b 100%);
    background-size: auto, 118% 118%, auto;
    background-position: 0 0, 50% 50%, 0 0;
    animation: mirswaWxSnowSkyPan 30s ease-in-out infinite;
}
.mirswa-hero-slider[data-live-weather-mood="snow"][data-live-daynight="night"] .mirswa-hero-slide--6 .mirswa-hero-slide-bg {
    background: linear-gradient(180deg, #334155 0%, #1e293b 50%, #0f172a 100%);
}
.mirswa-hero-slider[data-live-weather-mood="fog"][data-live-daynight="day"] .mirswa-hero-slide--6 .mirswa-hero-slide-bg {
    background:
        linear-gradient(180deg, rgba(241, 245, 249, 0.85) 0%, rgba(148, 163, 184, 0.5) 100%),
        url("../wether/cloud1.webp") center / cover no-repeat,
        linear-gradient(180deg, #e2e8f0 0%, #cbd5e1 50%, #94a3b8 100%);
    background-size: auto, 118% 118%, auto;
    background-position: 0 0, 48% 52%, 0 0;
    animation: mirswaWxFogSkyPan 32s ease-in-out infinite;
}
.mirswa-hero-slider[data-live-weather-mood="fog"][data-live-daynight="night"] .mirswa-hero-slide--6 .mirswa-hero-slide-bg {
    background: linear-gradient(180deg, #475569 0%, #334155 55%, #1e293b 100%);
}
.mirswa-hero-slider .home-contain.mirswa-hero-slide--6 {
    overflow: visible;
}
.mirswa-hero-slider .home-contain.mirswa-hero-slide--6::before {
    display: none;
}
/* Let the animated scene read clearly (global sky tint stays very light on this slide). */
.mirswa-hero-slider.mirswa-live-sky-bg .home-contain.mirswa-hero-slide--6::after {
    opacity: 0.055;
}
/* Photo-backed slide: hide CSS “puff” cumulus (reads as fake ovals on top of real sky). */
.mirswa-hero-slider .mirswa-hero-slide--6 .mirswa-hero-wx-cumulus {
    display: none !important;
}
.mirswa-hero-slide--6 .mirswa-hero-weather-anim {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: visible;
    pointer-events: none;
}
.mirswa-hero-slide--6 .mirswa-hero-weather-anim-panel {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.45s ease, visibility 0.45s ease;
}
.mirswa-hero-slide--6 .mirswa-hero-wx-celestial {
    position: absolute;
    inset: 0;
    z-index: 5;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.45s ease, visibility 0.45s ease;
}
.mirswa-hero-slider[data-live-daynight="night"][data-live-weather-status="ok"] .mirswa-hero-slide--6 .mirswa-hero-wx-celestial {
    opacity: 1;
    visibility: visible;
}
.mirswa-hero-slider[data-live-weather-mood="fog"][data-live-daynight="night"] .mirswa-hero-slide--6 .mirswa-hero-wx-celestial {
    opacity: 0.55;
}
.mirswa-hero-slider[data-live-weather-status="loading"] .mirswa-hero-slide--6 .mirswa-hero-weather-anim-panel--loading {
    opacity: 1;
    visibility: visible;
}
.mirswa-hero-slider[data-live-weather-mood="clear"][data-live-daynight="day"] .mirswa-hero-slide--6 .mirswa-hero-weather-anim-panel--clear-day {
    opacity: 1;
    visibility: visible;
}
.mirswa-hero-slider[data-live-weather-mood="clear"][data-live-daynight="night"] .mirswa-hero-slide--6 .mirswa-hero-weather-anim-panel--clear-night {
    opacity: 1;
    visibility: visible;
}
.mirswa-hero-slider[data-live-weather-mood="cloud"] .mirswa-hero-slide--6 .mirswa-hero-weather-anim-panel--cloud {
    opacity: 1;
    visibility: visible;
}
.mirswa-hero-weather-anim-panel--cloud::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    opacity: 0.4;
    pointer-events: none;
    background: url("../wether/cloud1.webp") 108% 15% / min(55%, 420px) auto no-repeat;
    animation: mirswaWxCloudDecorDrift 24s ease-in-out infinite;
}
@keyframes mirswaWxCloudDecorDrift {
    0% {
        transform: translate3d(0, 0, 0) scale(1);
        opacity: 0.38;
    }
    50% {
        transform: translate3d(-14px, 12px, 0) scale(1.04);
        opacity: 0.48;
    }
    100% {
        transform: translate3d(0, 0, 0) scale(1);
        opacity: 0.38;
    }
}
/* Daytime cloud / overcast: subtle sun + spinning rays behind clouds (clear-day panel stays off). */
.mirswa-hero-slider[data-live-daynight="night"] .mirswa-hero-weather-anim-panel--cloud .mirswa-hero-wx-sun-ambient {
    display: none !important;
}
.mirswa-hero-weather-anim-panel--cloud .mirswa-hero-wx-sun-ambient {
    position: absolute;
    top: var(--mirswa-hero-sun-ambient-top, 2%);
    left: var(--mirswa-hero-sun-ambient-left, 2%);
    right: auto;
    width: clamp(3.25rem, 15vw, 6.5rem);
    height: clamp(3.25rem, 15vw, 6.5rem);
    z-index: 4;
    pointer-events: none;
    isolation: isolate;
    transform: translate(-50%, -50%);
    transition: top 1.2s ease-out, left 1.2s ease-out;
}
.mirswa-hero-weather-anim-panel--cloud .mirswa-hero-wx-sun-ambient::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 150%;
    height: 150%;
    transform: translate(-50%, -50%);
    z-index: 0;
    border-radius: 50%;
    opacity: 0.4;
    background: repeating-conic-gradient(
        from 0deg at 50% 50%,
        rgba(255, 252, 220, 0.48) 0deg 7deg,
        transparent 7deg 16deg
    );
    -webkit-mask-image: radial-gradient(circle at 50% 50%, transparent 0 18%, black 32% 100%);
    mask-image: radial-gradient(circle at 50% 50%, transparent 0 18%, black 32% 100%);
    animation: mirswaWxSunRaySpin 52s linear infinite;
    pointer-events: none;
}
.mirswa-hero-weather-anim-panel--cloud .mirswa-hero-wx-sun-ambient::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 54%;
    height: 54%;
    transform: translate(-50%, -50%);
    z-index: 1;
    border-radius: 50%;
    pointer-events: none;
    background:
        radial-gradient(circle at 32% 28%, rgba(255, 255, 255, 0.88) 0%, rgba(255, 255, 255, 0) 38%),
        radial-gradient(ellipse 108% 104% at 50% 48%, #fffef5 0%, #fef9c3 28%, #fde047 55%, #f59e0b 90%, #ea580c 100%);
    box-shadow:
        inset 0 -14px 22px -8px rgba(234, 88, 12, 0.2),
        inset 8px 6px 18px -12px rgba(255, 255, 255, 0.32),
        0 0 18px 4px rgba(254, 243, 199, 0.55),
        0 0 40px 16px rgba(251, 191, 36, 0.28);
    filter: drop-shadow(0 3px 16px rgba(251, 191, 36, 0.4));
    animation: mirswaWxSunIdle 9s ease-in-out infinite alternate;
}
.mirswa-hero-slider[data-live-weather-mood="rain"] .mirswa-hero-slide--6 .mirswa-hero-weather-anim-panel--rain {
    opacity: 1;
    visibility: visible;
}
.mirswa-hero-slider[data-live-weather-mood="snow"] .mirswa-hero-slide--6 .mirswa-hero-weather-anim-panel--snow {
    opacity: 1;
    visibility: visible;
}
.mirswa-hero-slider[data-live-weather-mood="fog"] .mirswa-hero-slide--6 .mirswa-hero-weather-anim-panel--fog {
    opacity: 1;
    visibility: visible;
}
/* Loading shimmer */
.mirswa-hero-weather-anim-panel--loading::after {
    content: '';
    position: absolute;
    inset: -20%;
    background: linear-gradient(
        120deg,
        transparent 40%,
        rgba(255, 255, 255, 0.12) 50%,
        transparent 60%
    );
    animation: mirswaWxShimmer 2.8s ease-in-out infinite;
}
@keyframes mirswaWxShimmer {
    0% { transform: translateX(-35%) rotate(8deg); }
    100% { transform: translateX(35%) rotate(8deg); }
}
/* Clear day: CSS sun (no sun.png) — photosphere + limb darkening + corona glow + ray wheel on ::before */
.mirswa-hero-weather-anim-panel--clear-day .mirswa-hero-wx-sun__corona,
.mirswa-hero-weather-anim-panel--clear-day .mirswa-hero-wx-sun__rays,
.mirswa-hero-weather-anim-panel--clear-day .mirswa-hero-wx-sun__disc {
    display: none;
}
.mirswa-hero-weather-anim-panel--clear-day .mirswa-hero-wx-sun {
    position: absolute;
    top: var(--mirswa-hero-sun-top, 1%);
    left: var(--mirswa-hero-sun-left, 0);
    right: auto;
    width: clamp(5.5rem, 28vw, 11rem);
    height: clamp(5.5rem, 28vw, 11rem);
    z-index: 5;
    background: none;
    transform: translate(-50%, -50%);
    transform-origin: 50% 50%;
    isolation: isolate;
    transition: top 1.2s ease-out, left 1.2s ease-out;
}
.mirswa-hero-weather-anim-panel--clear-day .mirswa-hero-wx-sun::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 155%;
    height: 155%;
    transform: translate(-50%, -50%);
    z-index: 0;
    border-radius: 50%;
    opacity: 0.52;
    background: repeating-conic-gradient(
        from 0deg at 50% 50%,
        rgba(255, 252, 220, 0.55) 0deg 7deg,
        transparent 7deg 16deg
    );
    -webkit-mask-image: radial-gradient(circle at 50% 50%, transparent 0 18%, black 32% 100%);
    mask-image: radial-gradient(circle at 50% 50%, transparent 0 18%, black 32% 100%);
    animation: mirswaWxSunRaySpin 48s linear infinite;
    pointer-events: none;
}
.mirswa-hero-weather-anim-panel--clear-day .mirswa-hero-wx-sun::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 56%;
    height: 56%;
    transform: translate(-50%, -50%);
    z-index: 1;
    border-radius: 50%;
    pointer-events: none;
    /* Bright center (facula), cooler disk, warmer limb — reads like a real photosphere */
    background:
        radial-gradient(circle at 32% 28%, rgba(255, 255, 255, 0.92) 0%, rgba(255, 255, 255, 0) 38%),
        radial-gradient(circle at 72% 62%, rgba(255, 237, 180, 0.45) 0%, rgba(255, 237, 180, 0) 36%),
        radial-gradient(ellipse 108% 104% at 50% 48%, #fffef5 0%, #fef9c3 22%, #fde047 52%, #f59e0b 88%, #ea580c 100%);
    box-shadow:
        inset 0 -18px 28px -8px rgba(234, 88, 12, 0.22),
        inset 10px 8px 22px -12px rgba(255, 255, 255, 0.35),
        0 0 0 1px rgba(255, 250, 235, 0.5),
        0 0 22px 6px rgba(254, 243, 199, 0.75),
        0 0 52px 20px rgba(251, 191, 36, 0.42),
        0 0 100px 48px rgba(251, 146, 60, 0.2);
    filter: drop-shadow(0 4px 24px rgba(251, 191, 36, 0.5));
    animation: mirswaWxSunIdle 9s ease-in-out infinite alternate;
}
@keyframes mirswaWxSunRaySpin {
    from { transform: translate(-50%, -50%) rotate(0deg); }
    to { transform: translate(-50%, -50%) rotate(360deg); }
}
@keyframes mirswaWxSunIdle {
    from {
        transform: translate(-50%, -50%) translateY(0) rotate(-0.5deg) scale(1);
        filter: drop-shadow(0 4px 22px rgba(251, 191, 36, 0.48));
    }
    to {
        transform: translate(-50%, -50%) translateY(-4px) rotate(0.5deg) scale(1.025);
        filter: drop-shadow(0 10px 36px rgba(251, 191, 36, 0.62));
    }
}
.mirswa-hero-weather-anim-panel--clear-day .mirswa-hero-wx-sky-bloom {
    position: absolute;
    width: 85%;
    height: 70%;
    top: var(--mirswa-hero-sun-top, 2%);
    left: var(--mirswa-hero-sun-left, 14%);
    right: auto;
    transform: translate(-42%, -18%);
    z-index: 0;
    background: radial-gradient(ellipse 85% 70% at 50% 50%, rgba(255, 255, 255, 0.5) 0%, rgba(255, 251, 235, 0.22) 38%, transparent 72%);
    pointer-events: none;
    animation: mirswaWxBloomPulse 5.5s ease-in-out infinite alternate;
    transition: top 1.2s ease-out, left 1.2s ease-out;
}
@keyframes mirswaWxBloomPulse {
    from { opacity: 0.82; transform: scale(1); }
    to { opacity: 1; transform: scale(1.04); }
}
.mirswa-hero-wx-wind {
    position: absolute;
    inset: -8%;
    z-index: 1;
    pointer-events: none;
    background-image: repeating-linear-gradient(
        -14deg,
        transparent 0,
        transparent 20px,
        rgba(255, 255, 255, 0.1) 20px,
        rgba(255, 255, 255, 0.1) 21px,
        transparent 21px,
        transparent 44px
    );
    background-size: 56px 56px;
    animation: mirswaWxWindShear 2.6s linear infinite;
    opacity: 0.38;
    mix-blend-mode: soft-light;
}
.mirswa-hero-wx-wind--soft {
    opacity: 0.26;
    animation-duration: 3.8s;
}
.mirswa-hero-wx-wind--strong {
    opacity: 0.45;
    animation-duration: 1.65s;
    background-image: repeating-linear-gradient(
        -11deg,
        transparent 0,
        transparent 14px,
        rgba(255, 255, 255, 0.14) 14px,
        rgba(255, 255, 255, 0.14) 15px,
        transparent 15px,
        transparent 32px
    );
}
.mirswa-hero-wx-wind--gust {
    opacity: 0.2;
    animation-duration: 1.15s;
    mix-blend-mode: overlay;
    background-image: repeating-linear-gradient(
        -8deg,
        transparent 0,
        transparent 28px,
        rgba(255, 255, 255, 0.12) 28px,
        rgba(255, 255, 255, 0.12) 29px
    );
}
@keyframes mirswaWxWindShear {
    from { background-position: 0 0; }
    to { background-position: 56px 22px; }
}
/* Stacked “cumulus” puffs (CSS-only; not satellite imagery) */
.mirswa-hero-wx-cumulus {
    position: absolute;
    z-index: 2;
    width: min(50%, 360px);
    height: min(34%, 210px);
    filter: drop-shadow(0 14px 28px rgba(15, 23, 42, 0.14));
}
.mirswa-hero-wx-cumulus__p {
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(ellipse 100% 100% at 32% 30%, #ffffff 0%, #f8fafc 42%, #e2e8f0 88%);
    box-shadow: inset 0 -6px 14px rgba(148, 163, 184, 0.2);
}
.mirswa-hero-wx-cumulus__p--a {
    width: 58%;
    height: 54%;
    left: 0;
    bottom: 0;
}
.mirswa-hero-wx-cumulus__p--b {
    width: 50%;
    height: 46%;
    right: 4%;
    bottom: 2%;
}
.mirswa-hero-wx-cumulus__p--c {
    width: 40%;
    height: 40%;
    left: 28%;
    top: 0;
}
.mirswa-hero-wx-cumulus--1 {
    left: -7%;
    bottom: 5%;
    animation: mirswaWxCumulusFloat1 56s ease-in-out infinite;
}
.mirswa-hero-wx-cumulus--2 {
    right: -5%;
    bottom: 16%;
    width: min(44%, 300px);
    height: min(28%, 170px);
    animation: mirswaWxCumulusFloat2 44s ease-in-out infinite reverse;
}
.mirswa-hero-wx-cumulus--3 {
    left: 52%;
    bottom: 8%;
    top: auto;
    width: min(38%, 260px);
    height: min(24%, 150px);
    animation: mirswaWxCumulusFloat3 62s ease-in-out infinite alternate;
}
@keyframes mirswaWxCumulusFloat1 {
    0%, 100% { transform: translate(0, 0) scale(1); }
    50% { transform: translate(6%, -3%) scale(1.03); }
}
@keyframes mirswaWxCumulusFloat2 {
    0%, 100% { transform: translate(0, 0) scale(1); }
    50% { transform: translate(-8%, 4%) scale(1.02); }
}
@keyframes mirswaWxCumulusFloat3 {
    0%, 100% { transform: translate(0, 0); }
    50% { transform: translate(5%, 3%); }
}
.mirswa-hero-wx-cumulus--muted .mirswa-hero-wx-cumulus__p {
    background: radial-gradient(ellipse 100% 100% at 32% 30%, #f8fafc 0%, #e2e8f0 50%, #94a3b8 95%);
    box-shadow: inset 0 -4px 10px rgba(71, 85, 105, 0.25);
}
.mirswa-hero-wx-cumulus--4 {
    left: -10%;
    top: 12%;
    width: min(55%, 380px);
    animation: mirswaWxCumulusFloat1 36s ease-in-out infinite;
}
.mirswa-hero-wx-cumulus--5 {
    right: -8%;
    bottom: 10%;
    width: min(48%, 320px);
    animation: mirswaWxCumulusFloat2 48s ease-in-out infinite;
}
.mirswa-hero-wx-cumulus--6 {
    left: 22%;
    bottom: 4%;
    width: min(42%, 280px);
    height: min(30%, 180px);
    animation: mirswaWxCumulusFloat3 40s ease-in-out infinite reverse;
}
/* Night sky overlay: moon + stars on every mood when data-live-daynight=night (JS sets moon terminator). */
.mirswa-hero-wx-celestial .mirswa-hero-wx-moon--css {
    position: absolute;
    top: var(--mirswa-hero-moon-top, 14%);
    left: var(--mirswa-hero-moon-left, 78%);
    right: auto;
    width: clamp(2.6rem, 10vw, 4.2rem);
    height: clamp(2.6rem, 10vw, 4.2rem);
    border-radius: 50%;
    overflow: hidden;
    z-index: 2;
    background: transparent;
    transform: translate(-50%, -50%);
    transform-origin: 50% 50%;
    filter: drop-shadow(0 0 clamp(0.5rem, 2vw, 0.85rem) rgba(226, 232, 240, 0.4));
    transition: top 1.2s ease-out, left 1.2s ease-out;
}
.mirswa-hero-wx-celestial .mirswa-hero-wx-moon--css .mirswa-hero-wx-moon__lit {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    box-sizing: border-box;
    background: radial-gradient(circle at 32% 32%, #f8fafc 0%, #e2e8f0 55%, #94a3b8 100%);
    box-shadow: none;
    pointer-events: none;
}
.mirswa-hero-wx-celestial .mirswa-hero-wx-stars {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    /* Larger, brighter dots + soft glow so they read on dark sky */
    background-image:
        radial-gradient(2.2px 2.2px at 8% 18%, rgba(255, 255, 255, 1), transparent 55%),
        radial-gradient(1.8px 1.8px at 14% 42%, rgba(255, 255, 255, 0.95), transparent 55%),
        radial-gradient(2.4px 2.4px at 22% 12%, rgba(255, 255, 255, 1), transparent 55%),
        radial-gradient(1.6px 1.6px at 32% 28%, rgba(255, 255, 255, 0.92), transparent 55%),
        radial-gradient(2px 2px at 42% 8%, rgba(255, 255, 255, 1), transparent 55%),
        radial-gradient(1.5px 1.5px at 52% 22%, rgba(255, 255, 255, 0.9), transparent 55%),
        radial-gradient(2.2px 2.2px at 62% 14%, rgba(255, 255, 255, 1), transparent 55%),
        radial-gradient(1.7px 1.7px at 72% 32%, rgba(255, 255, 255, 0.95), transparent 55%),
        radial-gradient(2.3px 2.3px at 82% 10%, rgba(255, 255, 255, 1), transparent 55%),
        radial-gradient(1.6px 1.6px at 88% 26%, rgba(255, 255, 255, 0.92), transparent 55%),
        radial-gradient(1.8px 1.8px at 18% 58%, rgba(255, 255, 255, 0.88), transparent 55%),
        radial-gradient(2px 2px at 38% 52%, rgba(255, 255, 255, 0.9), transparent 55%),
        radial-gradient(1.5px 1.5px at 58% 48%, rgba(255, 255, 255, 0.85), transparent 55%),
        radial-gradient(2.1px 2.1px at 78% 56%, rgba(255, 255, 255, 0.95), transparent 55%),
        radial-gradient(1.6px 1.6px at 92% 44%, rgba(255, 255, 255, 0.88), transparent 55%);
    filter: drop-shadow(0 0 1px rgba(255, 255, 255, 0.55)) drop-shadow(0 0 3px rgba(191, 219, 254, 0.35));
    animation: mirswaWxTwinkle 3.2s ease-in-out infinite alternate;
}
@keyframes mirswaWxTwinkle {
    from { opacity: 0.82; }
    to { opacity: 1; }
}
/* Clouds: mist blobs + wind */
.mirswa-hero-weather-anim-panel--cloud .mirswa-hero-wx-wind {
    z-index: 1;
}
.mirswa-hero-weather-anim-panel--cloud .mirswa-hero-wx-cumulus {
    z-index: 2;
}
.mirswa-hero-weather-anim-panel--cloud .mirswa-hero-wx-cloud {
    position: absolute;
    z-index: 3;
    border-radius: 50%;
    filter: blur(12px);
    background: rgba(248, 250, 252, 0.55);
    opacity: 0.85;
}
.mirswa-hero-slider[data-live-daynight="night"] .mirswa-hero-slide--6 .mirswa-hero-weather-anim-panel--cloud .mirswa-hero-wx-cloud {
    background: rgba(148, 163, 184, 0.35);
    opacity: 0.7;
}
.mirswa-hero-weather-anim-panel--cloud .mirswa-hero-wx-cloud--1 {
    width: 55%;
    height: 38%;
    left: -8%;
    top: 18%;
    animation: mirswaWxCloudDriftA 21s ease-in-out infinite;
}
.mirswa-hero-weather-anim-panel--cloud .mirswa-hero-wx-cloud--2 {
    width: 48%;
    height: 32%;
    right: -5%;
    top: 42%;
    animation: mirswaWxCloudDriftB 26s ease-in-out infinite;
}
.mirswa-hero-weather-anim-panel--cloud .mirswa-hero-wx-cloud--3 {
    width: 42%;
    height: 28%;
    left: 22%;
    bottom: 8%;
    animation: mirswaWxCloudDriftC 18s ease-in-out infinite;
}
@keyframes mirswaWxCloudDriftA {
    0% { transform: translate(-2%, 1%) scale(1); }
    35% { transform: translate(5%, -4%) scale(1.02); }
    70% { transform: translate(1%, 3%) scale(1.01); }
    100% { transform: translate(-2%, 1%) scale(1); }
}
@keyframes mirswaWxCloudDriftB {
    0% { transform: translate(4%, -1%) scale(1); }
    40% { transform: translate(-6%, 4%) scale(1.03); }
    75% { transform: translate(-2%, -3%) scale(1.01); }
    100% { transform: translate(4%, -1%) scale(1); }
}
@keyframes mirswaWxCloudDriftC {
    0% { transform: translate(0, 2%) scale(1); }
    50% { transform: translate(-5%, -5%) scale(1.02); }
    100% { transform: translate(0, 2%) scale(1); }
}
/* Rain + gusty wind */
.mirswa-hero-weather-anim-panel--rain .mirswa-hero-wx-wind {
    z-index: 1;
}
.mirswa-hero-weather-anim-panel--rain .mirswa-hero-wx-rain {
    position: absolute;
    inset: -8% -5%;
    z-index: 2;
    background-image: repeating-linear-gradient(
        105deg,
        rgba(255, 255, 255, 0) 0px,
        rgba(255, 255, 255, 0) 6px,
        rgba(255, 255, 255, 0.18) 6px,
        rgba(255, 255, 255, 0.18) 7px,
        rgba(255, 255, 255, 0) 7px,
        rgba(255, 255, 255, 0) 14px
    );
    animation: mirswaWxRainFall 0.5s linear infinite;
    opacity: 0.65;
}
.mirswa-hero-weather-anim-panel--rain .mirswa-hero-wx-rain--2 {
    z-index: 2;
    inset: -12% -8%;
    background-image: repeating-linear-gradient(
        108deg,
        rgba(255, 255, 255, 0) 0px,
        rgba(255, 255, 255, 0) 8px,
        rgba(186, 230, 253, 0.22) 8px,
        rgba(186, 230, 253, 0.22) 9px,
        rgba(255, 255, 255, 0) 9px,
        rgba(255, 255, 255, 0) 18px
    );
    animation: mirswaWxRainFall 0.72s linear infinite reverse;
    opacity: 0.45;
}
@keyframes mirswaWxRainFall {
    from { transform: translateY(-12px); }
    to { transform: translateY(14px); }
}
/* Snow */
.mirswa-hero-weather-anim-panel--snow .mirswa-hero-wx-snow {
    position: absolute;
    inset: -5%;
    background-image:
        radial-gradient(2px 2px at 10% 10%, rgba(255, 255, 255, 0.9), transparent),
        radial-gradient(1.5px 1.5px at 30% 25%, rgba(255, 255, 255, 0.85), transparent),
        radial-gradient(2px 2px at 55% 8%, rgba(255, 255, 255, 0.8), transparent),
        radial-gradient(1.5px 1.5px at 72% 30%, rgba(255, 255, 255, 0.88), transparent),
        radial-gradient(2px 2px at 88% 15%, rgba(255, 255, 255, 0.75), transparent);
    background-size: 120% 120%;
    animation: mirswaWxSnowFall 6s linear infinite;
    opacity: 0.75;
}
.mirswa-hero-weather-anim-panel--snow .mirswa-hero-wx-snow--2 {
    animation-duration: 9s;
    animation-direction: reverse;
    opacity: 0.5;
    transform: translateX(8%);
}
@keyframes mirswaWxSnowFall {
    from { background-position: 0 0; }
    to { background-position: 0 100%; }
}
/* Fog */
.mirswa-hero-weather-anim-panel--fog .mirswa-hero-wx-fog {
    position: absolute;
    border-radius: 50%;
    filter: blur(28px);
    background: rgba(248, 250, 252, 0.5);
    opacity: 0.7;
}
.mirswa-hero-slider[data-live-daynight="night"] .mirswa-hero-slide--6 .mirswa-hero-weather-anim-panel--fog .mirswa-hero-wx-fog {
    background: rgba(100, 116, 139, 0.45);
}
.mirswa-hero-weather-anim-panel--fog .mirswa-hero-wx-fog--1 {
    width: 90%;
    height: 45%;
    left: -15%;
    bottom: -5%;
    animation: mirswaWxFogPulse 14s ease-in-out infinite alternate;
}
.mirswa-hero-weather-anim-panel--fog .mirswa-hero-wx-fog--2 {
    width: 75%;
    height: 40%;
    right: -20%;
    top: 20%;
    animation: mirswaWxFogPulse 18s ease-in-out infinite alternate-reverse;
}
.mirswa-hero-weather-anim-panel--fog .mirswa-hero-wx-fog--3 {
    width: 65%;
    height: 35%;
    left: 18%;
    top: 45%;
    animation: mirswaWxFogPulse 12s ease-in-out infinite alternate;
}
@keyframes mirswaWxFogPulse {
    0% { transform: translate(-2%, 0) scale(1); opacity: 0.55; }
    50% { transform: translate(4%, -3%) scale(1.05); opacity: 0.85; }
    100% { transform: translate(-2%, 0) scale(1); opacity: 0.55; }
}
.mirswa-hero-slider[data-live-weather-status="error"] .mirswa-hero-slide--6 .mirswa-hero-weather-anim-panel--error {
    opacity: 1;
    visibility: visible;
}
.mirswa-hero-slider[data-live-weather-status="error"] .mirswa-hero-slide--6 .mirswa-hero-slide-bg {
    background: linear-gradient(180deg, #6b7280 0%, #4b5563 100%);
}
.mirswa-hero-slider[data-live-weather-mood="off"] .mirswa-hero-slide--6 .mirswa-hero-weather-anim {
    display: none;
}
@media (prefers-reduced-motion: reduce) {
    .mirswa-hero-slide--6 .mirswa-hero-slide-bg {
        animation: none !important;
    }
    .mirswa-hero-slide--6 .mirswa-hero-weather-anim,
    .mirswa-hero-slide--6 .mirswa-hero-weather-anim * {
        animation: none !important;
        transition: none !important;
    }
    .mirswa-hero-weather-anim-panel--loading::after {
        display: none;
    }
    .mirswa-hero-weather-anim-panel--clear-day .mirswa-hero-wx-sun::before {
        animation: none !important;
    }
    .mirswa-hero-weather-anim-panel--cloud .mirswa-hero-wx-sun-ambient::before {
        animation: none !important;
    }
}
.mirswa-hero-slider .mirswa-hero-slide--6 .mirswa-hero-slide-img.mirswa-hero-slide-img--sky-swatch {
    opacity: 0;
    visibility: hidden;
}
.mirswa-hero-slider[data-live-weather-status="off"] .mirswa-hero-weather-screen {
    display: none !important;
}
/* Weather slide: temperature — keep inside safe area & above stage loading dot / vignette */
.mirswa-hero-slide--6 .mirswa-hero-weather-screen {
    position: absolute;
    top: max(0.75rem, calc(env(safe-area-inset-top, 0px) + 0.45rem));
    right: max(0.65rem, env(safe-area-inset-right, 0px));
    left: auto;
    bottom: auto;
    transform: none;
    z-index: 25;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    gap: 0;
    width: auto;
    min-width: 0;
    max-width: min(42vw, 9.5rem);
    margin: 0;
    padding: 0.2rem 0.45rem 0.25rem;
    border: 0;
    border-radius: 10px;
    background: rgba(15, 23, 42, 0.22);
    box-shadow: none;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    pointer-events: none;
    color: #fff;
}
/* While Open-Meteo is still loading, stage ::before sits top-right — nudge temp down so it is not clipped */
.mirswa-hero-slider[data-live-weather-status="loading"] .mirswa-hero-slide--6 .mirswa-hero-weather-screen {
    top: max(2.15rem, calc(env(safe-area-inset-top, 0px) + 1.65rem));
}
.mirswa-hero-slide--6 .mirswa-hero-weather-screen__icon {
    display: none !important;
}
.mirswa-hero-slide--6 .mirswa-hero-weather-screen__text {
    display: block;
    min-width: 0;
}
.mirswa-hero-slide--6 .mirswa-hero-weather-screen__label {
    display: none !important;
}
.mirswa-hero-slide--6 .mirswa-hero-weather-screen__temp {
    font-size: clamp(1.05rem, 2.8vw, 1.45rem);
    font-weight: 700;
    letter-spacing: -0.03em;
    color: #fff !important;
    line-height: 1.15;
    text-shadow:
        0 0 1px rgba(15, 23, 42, 0.5),
        0 1px 3px rgba(15, 23, 42, 0.55),
        0 2px 14px rgba(15, 23, 42, 0.35);
}
.mirswa-hero-slide--6 .mirswa-hero-weather-screen__temp:empty {
    display: none;
}
/* Live weather: tint above slide image, below store hit (was on .mirswa-hero-slide-bg::before — same z as img, so hidden). */
.mirswa-hero-slider.mirswa-live-sky-bg {
    --mirswa-sky-a: #4a9fd4;
    --mirswa-sky-b: #2e7fbf;
    --mirswa-sky-c: #1a5a94;
}
.mirswa-hero-slider.mirswa-live-sky-bg .home-contain::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
    opacity: 0.14;
    mix-blend-mode: soft-light;
    background: linear-gradient(
        185deg,
        transparent 0%,
        transparent 15%,
        var(--mirswa-sky-a, #4a9fd4) 38%,
        var(--mirswa-sky-b, #2e7fbf) 62%,
        var(--mirswa-sky-c, #1a5a94) 100%
    );
}
.mirswa-hero-slider.mirswa-live-sky-bg[data-live-daynight="night"] .home-contain::after {
    opacity: 0.14;
    mix-blend-mode: soft-light;
    background:
        linear-gradient(180deg, transparent 0%, transparent 18%, rgba(0, 0, 0, 0.16) 55%, transparent 100%),
        linear-gradient(185deg, transparent 0%, transparent 12%, var(--mirswa-sky-a) 42%, var(--mirswa-sky-b) 68%, var(--mirswa-sky-c) 100%);
}
.mirswa-hero-slider.mirswa-live-sky-bg[data-live-weather-mood="clear"][data-live-daynight="day"] {
    --mirswa-sky-a: #52a8dc;
    --mirswa-sky-b: #2d8fd4;
    --mirswa-sky-c: #1e6fa8;
}
.mirswa-hero-slider.mirswa-live-sky-bg[data-live-weather-mood="clear"][data-live-daynight="night"] {
    --mirswa-sky-a: #1e2a4a;
    --mirswa-sky-b: #2d4a7c;
    --mirswa-sky-c: #5c4a78;
}
.mirswa-hero-slider.mirswa-live-sky-bg[data-live-weather-mood="rain"][data-live-daynight="day"] {
    --mirswa-sky-a: #546e7a;
    --mirswa-sky-b: #78909c;
    --mirswa-sky-c: #b0bec5;
}
.mirswa-hero-slider.mirswa-live-sky-bg[data-live-weather-mood="rain"][data-live-daynight="night"] {
    --mirswa-sky-a: #1a2838;
    --mirswa-sky-b: #2c3e50;
    --mirswa-sky-c: #4a6fa5;
}
.mirswa-hero-slider.mirswa-live-sky-bg[data-live-weather-mood="cloud"][data-live-daynight="day"] {
    --mirswa-sky-a: #7d9099;
    --mirswa-sky-b: #9eadb6;
    --mirswa-sky-c: #b8c5ce;
}
.mirswa-hero-slider.mirswa-live-sky-bg[data-live-weather-mood="cloud"][data-live-daynight="night"] {
    --mirswa-sky-a: #2a3441;
    --mirswa-sky-b: #455a64;
    --mirswa-sky-c: #78909c;
}
.mirswa-hero-slider.mirswa-live-sky-bg[data-live-weather-mood="snow"][data-live-daynight="day"] {
    --mirswa-sky-a: #6bb8e6;
    --mirswa-sky-b: #9ccfe8;
    --mirswa-sky-c: #c5e3f2;
}
.mirswa-hero-slider.mirswa-live-sky-bg[data-live-weather-mood="snow"][data-live-daynight="night"] {
    --mirswa-sky-a: #1a237e;
    --mirswa-sky-b: #3949ab;
    --mirswa-sky-c: #7986cb;
}
.mirswa-hero-slider.mirswa-live-sky-bg[data-live-weather-mood="fog"][data-live-daynight="day"] {
    --mirswa-sky-a: #9aa8b0;
    --mirswa-sky-b: #b0bec5;
    --mirswa-sky-c: #90a4ae;
}
.mirswa-hero-slider.mirswa-live-sky-bg[data-live-weather-mood="fog"][data-live-daynight="night"] {
    --mirswa-sky-a: #37474f;
    --mirswa-sky-b: #546e7a;
    --mirswa-sky-c: #90a4ae;
}
.mirswa-hero-slider .home-contain img.mirswa-hero-slide-img {
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 18%;
}
/* Phones, tablets, small laptops: promo art rests on the search strip at the slide bottom */
@media (max-width: 991.98px) {
    .mirswa-hero-slider .home-contain img.mirswa-hero-slide-img {
        object-fit: contain;
        object-position: center top;
    }
    .mirswa-hero-slider .home-contain img.mirswa-hero-slide-img.mirswa-hero-promo-art {
        object-fit: contain;
        object-position: center top;
        padding: 0.35rem 0.5rem 0;
    }
}
/* Large screens: gradient stays full-bleed; art/photo is capped to same rail as deal cards (centered). */
@media (min-width: 992px) {
    body.mirswastyle .mirswa-hero-slider .home-contain img.mirswa-hero-slide-img {
        inset: unset;
        left: 50%;
        top: 0;
        bottom: 0;
        right: auto;
        width: min(100%, var(--mirswa-home-rail, min(1680px, 100%)));
        max-width: 100%;
        height: 100%;
        transform: translateX(-50%);
        object-fit: cover;
        object-position: center;
    }
    body.mirswastyle .mirswa-hero-slider .home-contain img.mirswa-hero-slide-img.mirswa-hero-promo-art {
        object-fit: contain;
        object-position: center;
    }
}
/* Undo .bg-img theme script on hero (parent bg + hidden img breaks transparent PNG over gradient). */
body.mirswastyle .mirswa-hero-slider .home-contain.bg-size {
    background-image: none !important;
}
body.mirswastyle .mirswa-hero-slider .home-contain img.mirswa-hero-slide-img {
    display: block !important;
}
.mirswa-hero-slider .home-contain img.mirswa-hero-slide-img.mirswa-hero-slide-img--fail {
    opacity: 0;
    pointer-events: none;
}
/* Optional: transparent “big sale” PNG on top of gradient — add class mirswa-hero-promo-art on the <img>. */
@media (min-width: 992px) {
    .mirswa-hero-slider .mirswa-hero-slide-img.mirswa-hero-promo-art {
        object-fit: contain;
        object-position: center 88%;
        padding: 0.5rem 4% 1rem;
    }
}
/* Full-slide tap target to store (arrows/dots sit above this). */
.mirswa-hero-slider .mirswa-hero-store-hit {
    position: absolute;
    inset: 0;
    z-index: 5;
    cursor: pointer;
    text-decoration: none;
}
.mirswa-hero-slider .mirswa-hero-store-hit:focus-visible {
    outline: 3px solid #fff;
    outline-offset: -6px;
}
.mirswa-hero-slider {
    position: relative;
    /* auto: fade + mix-blend weather tint compose more reliably than isolate */
    isolation: auto;
    overflow: visible;
    /* Brand + footer sky: plates use vertical cool blues anchored on footer-color-3 */
    --mirswa-hero-blue: #1648b8;
    --mirswa-hero-blue-mid: #2563c4;
    --mirswa-hero-blue-deep: #0f3a96;
    --mirswa-hero-navy: #1f56a8;
    --mirswa-hero-red: #e31b34;
    --mirswa-hero-gold: #ffd23a;
    --mirswa-hero-orange: #f07c1f;
    --mirswa-hero-orange-deep: #e35a08;
    --mirswa-hero-cream: #fff9f0;
    --mirswa-hero-peach: #ffe8d6;
    --mirswa-footer-sky: #1f56a8;
}
.mirswa-hero-slider-stage {
    position: relative;
    overflow: hidden;
}
/* Live sky fetch in progress — subtle cue (clears when data-live-weather-status becomes ok). */
.mirswa-hero-slider[data-live-weather-status="loading"] .mirswa-hero-slider-stage::before {
    content: '';
    position: absolute;
    top: 10px;
    right: 12px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.85);
    box-shadow: 0 0 0 2px rgba(22, 72, 184, 0.35);
    z-index: 21;
    pointer-events: none;
    animation: mirswaWeatherDotPulse 1.1s ease-in-out infinite alternate;
}
@keyframes mirswaWeatherDotPulse {
    from { opacity: 0.4; transform: scale(0.9); }
    to { opacity: 1; transform: scale(1.05); }
}
@media (prefers-reduced-motion: reduce) {
    .mirswa-hero-slider[data-live-weather-status="loading"] .mirswa-hero-slider-stage::before {
        animation: none;
        opacity: 0.75;
    }
}
/* Cinematic vignette on the track (after Slick init) — stays under arrows (z-index 20). */
.mirswa-hero-slider.mirswa-hero-cinematic.slick-initialized .slick-list {
    position: relative;
}
.mirswa-hero-slider.mirswa-hero-cinematic.slick-initialized .slick-list::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 5;
    pointer-events: none;
    box-shadow:
        inset 0 0 min(100px, 12vw) rgba(0, 0, 0, 0.22),
        inset 0 -28px 56px rgba(0, 0, 0, 0.14);
}
@media (max-width: 991.98px) {
    .mirswa-hero-slider.mirswa-hero-cinematic.slick-initialized .slick-list::after {
        box-shadow:
            inset 0 0 min(48px, 8vw) rgba(0, 0, 0, 0.14),
            inset 0 -18px 40px rgba(0, 0, 0, 0.1);
    }
}
/* Weather slide: bright sky + overlapped deal strip — lose top/side vignette and the dark caption pill */
.mirswa-hero-slider.mirswa-hero-on-slide-6.mirswa-hero-cinematic.slick-initialized .slick-list::after {
    box-shadow: inset 0 -28px 56px rgba(0, 0, 0, 0.08);
}
.mirswa-deal-cards-strip {
    position: relative;
    z-index: 2;
    margin-top: clamp(-3.25rem, -7vw, -1.25rem);
    pointer-events: auto;
}
@media (min-width: 992px) {
    .mirswa-deal-cards-strip {
        margin-top: clamp(-4.5rem, -9vw, -2rem);
    }
}
/* Phones & tablets: slider art on top; search + “Powered by” below (all slides incl. weather). */
@media (max-width: 991.98px) {
    body.mirswastyle .mirswa-hero-slider .mirswa-hero-slider-stage {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        overflow-x: clip;
        overflow-y: visible;
        max-width: 100%;
    }
    body.mirswastyle .mirswa-hero-slider .mirswa-hero-slider-stage > .container-fluid {
        flex: 0 0 auto;
        order: 1;
        width: 100%;
        z-index: 1;
    }
    body.mirswastyle .mirswa-hero-slider .mirswa-hero-slider-stage > .mirswa-hero-search-overlay {
        position: relative !important;
        right: auto !important;
        left: auto !important;
        transform: none !important;
        order: 2;
        flex: 0 0 auto;
        width: 100%;
        z-index: 15;
        padding: 0 0.35rem clamp(0.35rem, 1.6vw, 0.65rem);
        pointer-events: none;
    }
    body.mirswastyle .mirswa-hero-slider .mirswa-hero-slider-stage .mirswa-hero-weather-personality-wrap {
        display: none;
    }
    body.mirswastyle .mirswa-hero-slider.mirswa-hero-on-slide-6 .mirswa-hero-slider-stage .mirswa-hero-weather-personality-wrap:not(.mirswa-hero-weather-personality-wrap--empty) {
        display: flex !important;
    }
    body.mirswastyle .mirswa-hero-slider .mirswa-hero-slider-stage .mirswa-hero-overlay-stack {
        justify-content: flex-end !important;
        align-items: stretch !important;
        gap: 0.2rem;
    }
    body.mirswastyle .mirswa-hero-search-overlay.mirswa-hero-search-overlay--large .mirswa-home-top-search {
        padding-top: 0 !important;
        padding-bottom: 0.35rem !important;
    }
    body.mirswastyle .mirswa-hero-slider .home-contain {
        padding-bottom: 0;
    }
    body.mirswastyle .mirswa-hero-slider .home-contain img.mirswa-hero-slide-img.mirswa-hero-promo-art {
        object-position: center top;
        padding: 0.35rem 0.5rem 0;
    }
}
@media (max-width: 375.98px) {
    body.mirswastyle .mirswa-hero-slider .mirswa-hero-slider-stage > .mirswa-hero-search-overlay {
        bottom: 50px;
        margin-top: clamp(-5.25rem, -14vw, -3.5rem);
    }
    body.mirswastyle .mirswa-hero-slider .home-contain img.mirswa-hero-slide-img.mirswa-hero-promo-art {
        margin-top: 25px;
        object-position: center top;
        padding: 0.35rem 0.5rem 0;
    }
}
/* Mobile phones — promo art overlaps search; weather slide 6: couple above search. */
@media (min-width: 376px) and (max-width: 575.98px) {
    body.mirswastyle .mirswa-hero-slider .mirswa-hero-slider-stage > .mirswa-hero-search-overlay {
        bottom: 50px;
        margin-top: clamp(-5.25rem, -14vw, -3.5rem);
    }
    body.mirswastyle .mirswa-hero-slider .home-contain img.mirswa-hero-slide-img.mirswa-hero-promo-art {
        margin-top: 45px;
        object-position: center top;
        padding: 0.35rem 0.5rem 0;
    }
}
/* Tablet — same overlap offsets, slightly larger. */
@media (min-width: 576px) and (max-width: 991.98px) {
    body.mirswastyle .mirswa-hero-slider .mirswa-hero-slider-stage > .mirswa-hero-search-overlay {
        bottom: clamp(46px, 7.5vw, 62px);
        margin-top: clamp(-4.25rem, -10vw, -2.75rem);
    }
    body.mirswastyle .mirswa-hero-slider .home-contain img.mirswa-hero-slide-img.mirswa-hero-promo-art {
        margin-bottom: clamp(56px, 9vw, 78px);
        object-position: center top;
        padding: 0.35rem 0.75rem 0;
    }
}
/* Desktop: all slides — centred search + “Powered by” (slides 1–6 same as Summer Sale). */
@media (min-width: 992px) {
    body.mirswastyle .mirswa-hero-slider .mirswa-hero-slider-stage {
        display: block;
        position: relative;
        overflow: hidden;
    }
    body.mirswastyle .mirswa-hero-slider .mirswa-hero-slider-stage .mirswa-hero-search-overlay {
        position: absolute;
        left: 0;
        right: 0;
        margin-top: 0;
        top: 50%;
        bottom: auto;
        transform: translateY(calc(-50% + 58px));
        padding: clamp(0.35rem, 1.5vw, 0.75rem) 0.35rem;
        pointer-events: none;
    }
    body.mirswastyle .mirswa-hero-slider .mirswa-hero-search-overlay .mirswa-hero-overlay-stack {
        justify-content: center;
        align-items: center;
        gap: clamp(0.5rem, 1.6vw, 0.85rem);
    }
    body.mirswastyle .mirswa-hero-slider:not(.mirswa-hero-on-slide-6) .mirswa-hero-search-overlay .mirswa-hero-weather-personality-wrap {
        display: none !important;
    }
}
/* Slide 6: couple floats above search (out of flow) so search bar matches slides 1–5 height. */
body.mirswastyle .mirswa-hero-slider.mirswa-hero-on-slide-6 .mirswa-hero-search-overlay .mirswa-hero-overlay-stack {
    position: relative;
}
body.mirswastyle .mirswa-hero-slider.mirswa-hero-on-slide-6 .mirswa-hero-search-overlay .mirswa-hero-weather-personality-wrap:not(.mirswa-hero-weather-personality-wrap--empty) {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 100%;
    top: auto;
    width: 100%;
    height: auto;
    max-height: min(36vh, 300px);
    margin: 0 0 clamp(0.1rem, 0.35vw, 0.3rem);
    display: flex !important;
    justify-content: center;
    align-items: flex-end;
    padding: 0 0.5rem;
    pointer-events: none;
    z-index: 1;
}
body.mirswastyle .mirswa-hero-slider.mirswa-hero-on-slide-6 .mirswa-hero-search-overlay .mirswa-hero-weather-personality-wrap--loading .mirswa-hero-weather-personality {
    opacity: 0;
}
body.mirswastyle .mirswa-hero-slider.mirswa-hero-on-slide-6 .mirswa-hero-search-overlay .mirswa-hero-weather-personality-wrap--ready .mirswa-hero-weather-personality {
    opacity: 1;
    transition: opacity 0.2s ease;
}
@media (min-width: 992px) {
    body.mirswastyle .mirswa-hero-slider.mirswa-hero-on-slide-6 .mirswa-hero-search-overlay .mirswa-hero-weather-personality-wrap:not(.mirswa-hero-weather-personality-wrap--empty) {
        max-height: min(38vh, 320px);
    }
}
.mirswa-hero-search-overlay .mirswa-home-top-search {
    pointer-events: auto;
}
/* Mobile / tablet: primary nav drawer must stack above hero search (z-index:15) and deal strip overlap */
@media (max-width: 1199.98px) {
    body.mirswastyle .mirswa-hero-wrap,
    body.mirswastyle .mirswa-hero-slider {
        overflow-x: clip;
        max-width: 100%;
    }
    body.mirswastyle header.header-2 {
        position: relative;
        z-index: 1040;
    }
    body.mirswastyle #primaryMenu.offcanvas,
    body.mirswastyle #primaryMenu.offcanvas-collapse {
        z-index: 1046 !important;
    }
    body.mirswastyle #primaryMenu.offcanvas.show,
    body.mirswastyle #primaryMenu.offcanvas-collapse.show {
        z-index: 1055 !important;
    }
    body.mirswastyle .offcanvas-backdrop {
        z-index: 1045 !important;
    }
    /* Theme pins mobile drawer at z-index:4 — login pill was z-index:12, so it painted over the menu */
    body.mirswastyle:has(#primaryMenu.show) .mirswa-header-auth,
    body.mirswastyle:has(#primaryMenu.show) .mirswa-header-app-wrap {
        z-index: 0 !important;
    }
    body.mirswastyle.mirswa-nav-drawer-open .mirswa-header-auth,
    body.mirswastyle.mirswa-nav-drawer-open .mirswa-header-app-wrap {
        z-index: 0 !important;
    }
    /* Single-row bar: (☰ + logo) | login — drawer is fixed, not a second grid row */
    body.mirswastyle .header-2 .navbar-top {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas: "mirswaBrand mirswaAuth";
        column-gap: 0.5rem;
        row-gap: 0;
        align-items: center;
    }
    body.mirswastyle .mirswa-header-brand-cluster {
        grid-area: mirswaBrand;
        display: flex;
        align-items: center;
        gap: 0.5rem;
        min-width: 0;
        flex-wrap: nowrap;
    }
    body.mirswastyle .mirswa-header-nav-slot {
        grid-area: unset;
        position: fixed;
        top: 0;
        left: 0;
        width: 0;
        height: 0;
        overflow: visible;
        padding: 0;
        margin: 0 !important;
        z-index: 1046;
        pointer-events: none;
    }
    body.mirswastyle .mirswa-header-nav-slot .main-nav,
    body.mirswastyle .mirswa-header-nav-slot .navbar {
        padding: 0;
        margin: 0;
        min-height: 0;
    }
    body.mirswastyle #primaryMenu.offcanvas {
        pointer-events: auto;
        top: 0 !important;
        left: 0 !important;
        right: auto !important;
        bottom: 0 !important;
        width: min(300px, 88vw) !important;
        max-width: min(300px, 88vw) !important;
        height: 100% !important;
        transform: translateX(-100%);
        visibility: hidden;
        border-right: 1px solid rgba(0, 0, 0, 0.08);
    }
    body.mirswastyle #primaryMenu.offcanvas.show,
    body.mirswastyle #primaryMenu.offcanvas.showing {
        transform: none;
        visibility: visible;
    }
    body.mirswastyle.mirswa-nav-drawer-open .mirswa-header-brand-cluster .navbar-menu-button,
    body.mirswastyle:has(#primaryMenu.show) .mirswa-header-brand-cluster .navbar-menu-button {
        visibility: hidden;
        pointer-events: none;
    }
    body.mirswastyle .mirswa-header-brand-cluster .navbar-menu-button {
        flex: 0 0 auto;
        width: 2.5rem;
        height: 2.5rem;
        margin: 0;
        padding: 0;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        position: relative;
        z-index: 3;
        border: 0;
        background: transparent;
    }
    body.mirswastyle .mirswa-header-brand-cluster .navbar-menu-button .navbar-toggler-icon {
        margin: 0 !important;
        width: auto;
        height: auto;
    }
    body.mirswastyle .mirswa-header-brand-cluster .web-logo {
        position: static !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        transform: none !important;
        flex: 1 1 auto;
        min-width: 0;
        display: flex;
        justify-content: flex-start;
        margin: 0;
        padding: 0;
        overflow: hidden;
    }
    body.mirswastyle .mirswa-header-brand-cluster .web-logo img {
        max-width: min(132px, calc(100vw - 11.5rem));
        width: auto;
        height: auto;
        max-height: 2.25rem;
        margin: 0;
        object-fit: contain;
        object-position: left center;
    }
    body.mirswastyle .mirswa-header-auth {
        grid-area: mirswaAuth;
        justify-self: end;
        margin-left: 0 !important;
        max-width: 100%;
        min-width: 0;
    }
}
.mirswa-hero-search-on-slider .header-search-polish {
    box-shadow: 0 6px 28px rgba(0, 0, 0, 0.18);
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.65);
    background: #fff;
}
/* Hero wrap */
.mirswa-hero-wrap {
    position: relative;
    margin-bottom: 0;
}
/* --- Homepage width: full-bleed bands, content capped & centered on huge screens. --- */
body.mirswastyle {
    overflow-x: hidden;
    background-color: #faf6ef;
    /* Wider than old 1540px rail; still capped so 4K/ultrawide doesn’t over-stretch tiles. */
    --mirswa-home-rail: min(1680px, 100%);
    --mirswa-home-section-gap: clamp(1.75rem, 4.25vw, 2.75rem);
}
body.mirswastyle .header-2 {
    background-color: #fff;
}
/* Hero + homepage bands: force full width (theme or cached rules must not reintroduce a narrow max-width). */
body.mirswastyle .mirswa-hero-wrap {
    box-sizing: border-box;
    width: 100% !important;
    max-width: none !important;
}
body.mirswastyle .mirswa-hero-wrap .mirswa-hero-slider,
body.mirswastyle .mirswa-hero-wrap .mirswa-hero-slider-stage {
    width: 100% !important;
    max-width: none !important;
}
body.mirswastyle .mirswa-hero-wrap > section {
    width: 100% !important;
    max-width: none !important;
}
body.mirswastyle .mirswa-deal-cards-strip,
body.mirswastyle .mirswa-trio-row,
body.mirswastyle .mirswa-twelve-grid,
body.mirswastyle .mirswa-triple-slider-wrap,
body.mirswastyle section.banner-section,
body.mirswastyle section.ratio_60,
body.mirswastyle section.catlinks {
    width: 100% !important;
    max-width: none !important;
}
body.mirswastyle .mirswa-hero-slider.home-section-2 .home-contain {
    border-radius: 0 !important;
}
body.mirswastyle .mirswa-hero-slider.mirswa-hero-cinematic.slick-initialized .slick-list::after {
    border-radius: 0;
}
/* Full-width marketing banners (same rail as rest of page). */
body.mirswastyle .banner-section .banner-contain-3 {
    border-radius: 0 !important;
}
body.mirswastyle .container-fluid-lg {
    max-width: var(--mirswa-home-rail) !important;
    width: 100% !important;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}
body.mirswastyle .container-fluid {
    box-sizing: border-box;
}
/* Match inner blocks to same rail as container-fluid-lg */
.mirswa-trio-row > .container-fluid-lg,
.mirswa-twelve-grid > .container-fluid-lg,
.mirswa-deal-cards-strip > .container-fluid-lg,
body.mirswastyle .product-section-3 > .container-fluid-lg {
    width: 100% !important;
    max-width: var(--mirswa-home-rail) !important;
    padding-left: clamp(0.5rem, 2vw, 1.15rem) !important;
    padding-right: clamp(0.5rem, 2vw, 1.15rem) !important;
}
/* Triple carousel: same rail; theme padding stripped so carousel meets rail edges */
.mirswa-triple-slider-wrap > .container-fluid-lg {
    width: 100% !important;
    max-width: var(--mirswa-home-rail) !important;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.mirswa-hero-search-overlay {
    padding-left: clamp(0.75rem, 2.8vw, 1.5rem);
    padding-right: clamp(0.75rem, 2.8vw, 1.5rem);
}
/* Most Searched For On Mirswa — clean chip grid (pipes removed in markup) */
body.mirswastyle section.catlinks {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.65) 0%, rgba(250, 246, 239, 0.5) 100%);
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
body.mirswastyle .catlinks .review-title h4 {
    font-weight: 700;
    letter-spacing: -0.02em;
    color: #1a2f4a;
}
body.mirswastyle .catlinks .delivery-list p.mirswa-searched-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem 0.55rem;
    align-items: center;
    line-height: 1.45;
    margin-bottom: 0;
}
body.mirswastyle .catlinks .delivery-list p.mirswa-searched-chips a.light-text {
    display: inline-flex;
    align-items: center;
    padding: 0.38rem 0.72rem;
    border-radius: 999px;
    font-size: clamp(0.72rem, 1.75vw, 0.875rem);
    font-weight: 500;
    letter-spacing: 0.01em;
    color: #1f56a8 !important;
    text-decoration: none !important;
    background: #fff;
    border: 1px solid rgba(31, 86, 168, 0.14);
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.9) inset;
    vertical-align: middle;
    transition: border-color 0.18s ease, box-shadow 0.2s ease, color 0.15s ease, background 0.15s ease;
}
body.mirswastyle .catlinks .delivery-list p.mirswa-searched-chips a.light-text:hover {
    border-color: rgba(31, 86, 168, 0.35);
    background: #f5f8fd;
    color: #1648b8 !important;
    box-shadow: 0 4px 14px rgba(31, 86, 168, 0.1);
}
body.mirswastyle .catlinks .delivery-list p.mirswa-searched-chips a.light-text:focus-visible {
    outline: 2px solid var(--theme-color, #1f56a8);
    outline-offset: 2px;
}
body.mirswastyle .catlinks .delivery-list p.mirswa-searched-chips a.light-text:nth-child(4n + 1) {
    background: #fff;
}
body.mirswastyle .catlinks .delivery-list p.mirswa-searched-chips a.light-text:nth-child(4n + 2) {
    background: #faf8f5;
}
body.mirswastyle .catlinks .delivery-list p.mirswa-searched-chips a.light-text:nth-child(4n + 3) {
    background: #f7f9fc;
}
body.mirswastyle .catlinks .delivery-list p.mirswa-searched-chips a.light-text:nth-child(4n + 4) {
    background: #faf9fb;
}
/* Hero search stack (Play badge lives in header) */
.mirswa-hero-slider-stage .mirswa-hero-search-overlay .mirswa-hero-overlay-stack {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 100%;
}
@media (max-width: 991.98px) {
    .mirswa-hero-slider-stage .mirswa-hero-search-overlay .mirswa-hero-overlay-stack {
        justify-content: flex-end;
        align-items: stretch;
    }
}
/* Weather slide (6) only: wetherpersonality.png (794×755) sits on the search bar. */
.mirswa-hero-weather-personality-wrap {
    width: 100%;
    display: none;
    justify-content: center;
    align-items: flex-end;
    min-height: 0;
    margin: 0;
    padding: 0 0.35rem;
    pointer-events: none;
    line-height: 0;
}
.mirswa-hero-weather-personality-wrap.mirswa-hero-weather-personality-wrap--empty {
    display: none !important;
}
body.mirswastyle .mirswa-hero-slider:not(.mirswa-hero-on-slide-6) .mirswa-hero-weather-personality-wrap {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}
.mirswa-hero-slider.mirswa-hero-on-slide-6 .mirswa-hero-weather-personality-wrap:not(.mirswa-hero-weather-personality-wrap--empty) {
    display: flex;
    visibility: visible;
    opacity: 1;
    max-height: none;
    overflow: visible;
}
.mirswa-hero-weather-personality {
    display: block;
    width: min(88vw, 420px);
    max-width: 100%;
    height: auto;
    aspect-ratio: 794 / 755;
    max-height: clamp(96px, 34vw, 240px);
    object-fit: contain;
    object-position: bottom center;
    vertical-align: bottom;
    filter: drop-shadow(0 8px 24px rgba(15, 23, 42, 0.32));
}
@media (max-width: 575.98px) {
    body.mirswastyle .mirswa-hero-slider.mirswa-hero-on-slide-6 .mirswa-hero-weather-personality-wrap {
        margin-bottom: clamp(-0.5rem, -1.5vw, -0.15rem);
        padding: 0 0.25rem;
    }
    body.mirswastyle .mirswa-hero-slider.mirswa-hero-on-slide-6 .mirswa-hero-weather-personality {
        width: min(92vw, 340px);
        max-height: clamp(88px, 36vw, 200px);
    }
}
@media (min-width: 576px) and (max-width: 991.98px) {
    body.mirswastyle .mirswa-hero-slider.mirswa-hero-on-slide-6 .mirswa-hero-weather-personality-wrap {
        margin-bottom: clamp(-0.35rem, -1vw, 0);
        padding: 0 0.5rem;
    }
    body.mirswastyle .mirswa-hero-slider.mirswa-hero-on-slide-6 .mirswa-hero-weather-personality {
        width: min(68vw, 480px);
        max-height: clamp(120px, 26vw, 260px);
    }
}
@media (min-width: 992px) {
    body.mirswastyle .mirswa-hero-slider.mirswa-hero-on-slide-6 .mirswa-hero-weather-personality {
        width: min(38vw, 520px);
        max-height: min(34vh, 340px);
    }
}
/* Powered by — partner line under search (no chip; brand fades like search placeholder) */
.mirswa-hero-powered-by {
    pointer-events: auto;
    padding: 0;
    width: 100%;
}
.mirswa-hero-powered-by .container-fluid {
    width: 100%;
    max-width: 100%;
}
.mirswa-hero-powered-by__row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0.4rem 0.65rem;
    letter-spacing: 0.02em;
    padding: 0;
    margin: 0 auto;
    width: 100%;
    max-width: 100%;
    text-align: center;
    background: none;
    border: 0;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    border-radius: 0;
}
.mirswa-hero-powered-by__label {
    color: #fff;
    font-weight: 600;
    text-transform: uppercase;
    font-size: clamp(0.78rem, 1.85vw, 0.92rem);
    letter-spacing: 0.16em;
    white-space: nowrap;
    opacity: 0.88;
}
.mirswa-hero-powered-by__brandWrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 0;
}
.mirswa-hero-search-overlay a.mirswa-hero-powered-by__link,
.mirswa-hero-search-overlay a.mirswa-hero-powered-by__link:link,
.mirswa-hero-search-overlay a.mirswa-hero-powered-by__link:visited,
.mirswa-hero-search-overlay a.mirswa-hero-powered-by__link:hover,
.mirswa-hero-search-overlay a.mirswa-hero-powered-by__link:active {
    color: #fff !important;
    text-decoration: none !important;
    -webkit-tap-highlight-color: transparent;
}
.mirswa-hero-powered-by__link {
    font-weight: 700;
    font-size: clamp(1.05rem, 2.5vw, 1.35rem);
    letter-spacing: 0.03em;
    white-space: nowrap;
    border-bottom: 1px solid transparent;
    display: inline-block;
    text-align: center;
    opacity: 1;
    transition: opacity 0.35s ease;
}
.mirswa-hero-powered-by__link.mirswa-pb-fade {
    opacity: 0.24;
    pointer-events: none;
}
.mirswa-hero-powered-by__link:hover,
.mirswa-hero-powered-by__link:focus-visible {
    border-bottom-color: rgba(255, 255, 255, 0.45);
}
.mirswa-hero-powered-by__link:focus-visible {
    outline: 2px solid rgba(255, 255, 255, 0.85);
    outline-offset: 3px;
    border-radius: 2px;
}
@media (prefers-reduced-motion: reduce) {
    .mirswa-hero-powered-by__link {
        transition: none;
    }
    .mirswa-hero-powered-by__link.mirswa-pb-fade {
        opacity: 1;
    }
}
.mirswa-hero-search-overlay .mirswa-home-search-max {
    max-width: min(680px, calc(100vw - 2rem));
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}
@media (min-width: 768px) and (max-width: 1199.98px) {
    .mirswa-hero-search-overlay .mirswa-home-search-max {
        max-width: min(700px, calc(100vw - 3rem));
    }
}
@media (min-width: 1200px) {
    .mirswa-hero-search-overlay .mirswa-home-search-max {
        max-width: 680px;
    }
}
@media (max-width: 575.98px) {
    .mirswa-hero-search-overlay .mirswa-home-search-max {
        max-width: 100%;
    }
}
/* Store login / register — modal triggers, pill matches storefront pattern */
body.mirswastyle .mirswa-header-auth {
    position: relative;
    z-index: 2;
    line-height: 1.2;
}
body.mirswastyle .mirswa-header-auth-pill {
    display: inline-flex;
    align-items: stretch;
    flex-wrap: nowrap;
    background: #fff;
    border: 1px solid rgba(31, 86, 168, 0.22);
    border-radius: 999px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    overflow: hidden;
    font-size: clamp(0.68rem, 1.9vw, 0.88rem);
}
body.mirswastyle .mirswa-header-auth-link {
    display: inline-flex;
    align-items: center;
    padding: 0.42em 0.75em;
    color: #fff !important;
    font-weight: 600;
    text-decoration: none !important;
    white-space: nowrap;
    background: var(--theme-color, #1f56a8);
    transition: background 0.15s ease, color 0.15s ease;
}
body.mirswastyle .mirswa-header-auth-link:hover {
    background: #1648b8;
    color: #fff !important;
}
body.mirswastyle .mirswa-header-auth-link.mirswa-header-auth-link--secondary {
    background: #fff;
    color: var(--theme-color, #1f56a8) !important;
    font-weight: 600;
}
body.mirswastyle .mirswa-header-auth-link.mirswa-header-auth-link--secondary:hover {
    background: #f5f8fd;
    color: #1648b8 !important;
}
body.mirswastyle .mirswa-header-auth-link:focus-visible {
    outline: 2px solid #1648b8;
    outline-offset: 2px;
    z-index: 1;
}
body.mirswastyle .mirswa-header-auth-divider {
    width: 1px;
    align-self: stretch;
    background: rgba(31, 86, 168, 0.18);
    flex-shrink: 0;
}
@media (max-width: 374.98px) {
    body.mirswastyle .mirswa-header-auth-pill {
        font-size: 0.64rem;
    }
    body.mirswastyle .mirswa-header-auth-link {
        padding: 0.38em 0.55em;
    }
}
/* Google Play — header: badge only (no box / border) */
body.mirswastyle .mirswa-header-app-wrap {
    display: flex;
    align-items: center;
    align-self: center;
    margin-left: auto;
}
body.mirswastyle .mirswa-header-google-play {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 0;
    text-decoration: none;
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 0;
    transition: opacity 0.2s ease;
}
body.mirswastyle .mirswa-header-google-play:hover {
    opacity: 0.88;
}
body.mirswastyle .mirswa-header-google-play:focus-visible {
    outline: 2px solid #1648b8;
    outline-offset: 3px;
    border-radius: 2px;
}
body.mirswastyle .mirswa-header-google-play img {
    display: block;
    height: 28px;
    width: auto;
    max-width: min(104px, 28vw);
}
@media (min-width: 400px) {
    body.mirswastyle .mirswa-header-google-play img {
        height: 30px;
        max-width: min(118px, 32vw);
    }
}
@media (min-width: 576px) {
    body.mirswastyle .mirswa-header-google-play img {
        height: 34px;
        max-width: min(132px, 24vw);
    }
}
@media (min-width: 1200px) {
    body.mirswastyle .mirswa-header-google-play img {
        height: 38px;
        max-width: 142px;
    }
}
/* Equal vertical spacing between homepage sections */
body.mirswastyle .mirswa-deal-cards-strip,
body.mirswastyle .mirswa-trio-row,
body.mirswastyle .mirswa-twelve-grid,
body.mirswastyle .mirswa-triple-slider-wrap,
body.mirswastyle section.banner-section,
body.mirswastyle section.ratio_60 {
    margin-bottom: var(--mirswa-home-section-gap);
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
body.mirswastyle .footer-section-2.section-t-space {
    margin-top: var(--mirswa-home-section-gap) !important;
    padding-top: var(--mirswa-home-section-gap);
}
.mirswa-home-search-max { max-width: 100%; }
@media (min-width: 992px) {
    .mirswa-hero-search-overlay.mirswa-hero-search-overlay--large .mirswa-home-top-search {
        padding-top: 0.35rem !important;
        padding-bottom: 0.65rem !important;
    }
}
.mirswa-hero-search-overlay .mirswa-home-top-search .header-search-polish .input-group-text,
.mirswa-hero-search-overlay .mirswa-home-top-search .header-search-polish .form-control,
.mirswa-hero-search-overlay .mirswa-home-top-search .header-search-polish .btn {
    min-height: 56px;
    height: auto;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}
@media (min-width: 768px) {
    .mirswa-hero-search-overlay .mirswa-home-top-search .header-search-polish .input-group-text,
    .mirswa-hero-search-overlay .mirswa-home-top-search .header-search-polish .form-control,
    .mirswa-hero-search-overlay .mirswa-home-top-search .header-search-polish .btn {
        min-height: 64px;
        padding-top: 0.6rem;
        padding-bottom: 0.6rem;
    }
}
.mirswa-hero-search-overlay .mirswa-home-top-search .header-search-polish .form-control {
    font-size: clamp(1rem, 2.6vw, 1.2rem);
}
.mirswa-hero-search-overlay .mirswa-home-top-search .header-search-polish .input-group-text {
    font-size: clamp(0.82rem, 2vw, 0.95rem);
    padding-left: 14px;
    padding-right: 14px;
}
.mirswa-hero-search-overlay .mirswa-home-top-search .header-search-polish .btn {
    min-width: 60px;
    font-size: 1.3rem;
}
@media (min-width: 768px) {
    .mirswa-hero-search-overlay .mirswa-home-top-search .header-search-polish .btn {
        min-width: 68px;
        font-size: 1.4rem;
    }
}
@media (max-width: 767.98px) {
    /* Mobile: single bar — text field + mic only (Ok Mirswa hidden via d-none d-md-flex on slot) */
    .mirswa-hero-search-overlay .mirswa-home-top-search .mirswa-hero-store-search-group {
        display: flex;
        flex-wrap: nowrap;
        align-items: stretch;
        gap: 0;
        padding: 0;
        border-radius: 12px;
        overflow: hidden;
    }
    .mirswa-hero-search-overlay .mirswa-home-top-search .mirswa-hero-store-search-group .form-control {
        flex: 1 1 auto;
        min-width: 0;
        min-height: 50px;
        height: auto;
        border-radius: 0 !important;
        border: 0;
        border-top-left-radius: 10px !important;
        border-bottom-left-radius: 10px !important;
    }
    .mirswa-hero-search-overlay .mirswa-home-top-search .mirswa-hero-store-search-group .btn {
        flex: 0 0 52px;
        min-width: 52px;
        min-height: 50px;
        height: auto;
        border-radius: 0 !important;
        border-top-right-radius: 10px !important;
        border-bottom-right-radius: 10px !important;
        border-left: 1px solid #eef2f8 !important;
    }
}
/* Triple carousel: gutter only *between* slides (no left inset — avoids empty strip before first card) */
.mirswa-store-triple-slider {
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
}
.mirswa-store-triple-slider .slick-slide {
    padding-left: 0;
    padding-right: clamp(6px, 1.4vw, 12px);
    height: auto;
    border: 0;
    outline: none;
}
.mirswa-store-triple-slider .slick-slide > div {
    display: block;
    height: 100%;
}
.mirswa-store-triple-slider .slick-list,
.mirswa-store-triple-slider .slick-track {
    border: 0;
}
.mirswa-store-triple-slider .slick-slide:focus-visible {
    outline: 2px solid rgba(31, 86, 168, 0.35);
    outline-offset: 2px;
}
.mirswa-store-triple-slider .slick-prev,
.mirswa-store-triple-slider .slick-next {
    display: none !important;
}
.mirswa-hero-slider .slick-prev,
.mirswa-hero-slider .slick-next {
    display: none !important;
}
/* Stop triple Slick negative margins from breaking page width after 12-grid */
.mirswa-triple-slider-wrap {
    overflow: hidden;
}
.mirswa-twelve-grid .row {
    overflow-x: hidden;
}
/* Deal cards under hero */
.home-deal-card {
    background: #fff;
    border-radius: 10px;
    border: 1px solid rgba(15, 17, 17, 0.06);
    box-shadow:
        0 1px 2px rgba(15, 17, 17, 0.04),
        0 6px 16px rgba(15, 17, 17, 0.07),
        0 16px 40px rgba(15, 17, 17, 0.09);
    padding: clamp(1rem, 2.4vw, 1.35rem) clamp(1rem, 2.4vw, 1.3rem) clamp(1.05rem, 2.2vw, 1.25rem);
    height: 100%;
    max-width: 100%;
}
.home-deal-card h3 {
    font-size: clamp(0.95rem, 2.8vw, 1.05rem);
    font-weight: 700;
    margin: 0 0 0.75rem;
    color: #0f1111;
    line-height: 1.25;
}
.home-deal-card .mini-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: clamp(0.28rem, 1.2vw, 0.42rem);
}
.home-deal-card a.mini-tile {
    display: block;
    border-radius: 4px;
    overflow: hidden;
    background: #f0f1f2;
    aspect-ratio: 1;
    text-decoration: none;
    min-height: 0;
    padding: 10px;
}
.home-deal-card a.mini-tile img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    padding: 0;
    display: block;
    /* Product shots often include padding in the file; nudge scale so tiles feel full, not “floating”. */
    transform: scale(1.1);
}
.home-deal-card .see-all {
    display: inline-block;
    margin-top: 0.75rem;
    font-size: clamp(0.75rem, 2.2vw, 0.85rem);
    color: var(--theme-color, #1f56a8);
    font-weight: 600;
    padding: 0.2rem 0;
}
/* Card grid: 1 col phone, 2 cols tablet, 4 desktop */
.mirswa-deal-cards .row { --bs-gutter-x: 0.75rem; --bs-gutter-y: 0.75rem; }
@media (min-width: 1200px) {
    .mirswa-deal-cards .row { --bs-gutter-x: 1rem; --bs-gutter-y: 1rem; }
}
/* 3 static promo banners — frame locked to 1920×800 (padding hack: abspos-only children can ignore aspect-ratio in some engines) */
.mirswa-trio-row .mirswa-promo-hit {
    display: block;
    border-radius: 10px;
    overflow: hidden;
    box-shadow:
        0 1px 2px rgba(15, 17, 17, 0.05),
        0 8px 24px rgba(15, 17, 17, 0.08);
    border: 1px solid rgba(15, 17, 17, 0.05);
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: calc(100% * 800 / 1920);
    background: linear-gradient(165deg, #f3f1ed 0%, #e8e4de 55%, #ddd8d0 100%);
}
.mirswa-trio-row .mirswa-promo-hit img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: fill;
    object-position: center;
    display: block;
    z-index: 0;
    max-width: none;
}
.mirswa-trio-row .mirswa-promo-caption {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    padding: 0.75rem 1rem 0.85rem 1.1rem;
    background: linear-gradient(transparent, rgba(0,0,0,.58));
    color: #fff;
    font-size: clamp(0.8rem, 2.2vw, 0.95rem);
    font-weight: 600;
}
/* 12-tile grid (6 + 6) */
.mirswa-twelve-grid a.mirswa-tile-hit {
    display: block;
    border-radius: 6px;
    overflow: hidden;
    aspect-ratio: 1;
    background: #f7f8f8;
    box-shadow: 0 1px 4px rgba(0,0,0,.06);
}
.mirswa-twelve-grid a.mirswa-tile-hit img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    padding: 0;
    display: block;
    transform: scale(1.06);
}
/* Triple banner carousel (width / gutters: see .mirswa-store-triple-slider rules earlier) */
.mirswa-triple-slider-wrap { position: relative; }
.mirswa-store-triple-slider .mirswa-triple-card {
    display: block;
    position: relative;
    border-radius: 10px;
    overflow: hidden;
    width: 100%;
    height: 0;
    padding-bottom: calc(100% * 800 / 1920);
    background: linear-gradient(165deg, #f3f1ed 0%, #e8e4de 55%, #ddd8d0 100%);
    border: 1px solid rgba(15, 17, 17, 0.05);
    box-shadow:
        0 1px 2px rgba(15, 17, 17, 0.05),
        0 8px 24px rgba(15, 17, 17, 0.08);
}
/* Same 1920×800 frame; cover fills once box height is correct (no letterboxing). */
.mirswa-store-triple-slider .mirswa-triple-card img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    max-width: none;
}
.mirswa-store-triple-slider.slick-initialized .slick-list {
    margin-left: 0 !important;
    margin-right: 0 !important;
    height: auto !important;
}
.mirswa-store-triple-slider.slick-initialized .slick-track {
    height: auto !important;
}
.mirswa-store-triple-slider.slick-initialized .slick-slide {
    height: auto !important;
}
.mirswa-store-triple-slider.slick-initialized .slick-slide > div {
    height: auto !important;
}
/* Homepage row: same search UI tokens + polish as store/front-end/modern/header.php (scaled for touch) */
.mirswa-home-top-search {
    --mirswa-logo-blue: #1648b8;
    --mirswa-logo-blue-deep: #0f3a96;
    --mirswa-logo-red: #e31b34;
    --mirswa-logo-gold: #ffd23a;
    --mirswa-logo-orange: #f07c1f;
    --mirswa-logo-orange-deep: #e35a08;
}
.mirswa-home-top-search .header-search-polish {
    border: 1px solid #dbe3ef;
    border-radius: 10px;
    background: #fff;
    overflow: hidden;
    transition: border-color .18s ease, box-shadow .18s ease;
}
.mirswa-home-top-search .header-search-polish:focus-within {
    border-color: #8eb4ff;
    box-shadow: 0 0 0 .16rem rgba(40, 116, 240, .12);
}
.mirswa-home-top-search .header-search-polish .input-group-text,
.mirswa-home-top-search .header-search-polish .form-control,
.mirswa-home-top-search .header-search-polish .btn {
    min-height: 44px;
    height: 44px;
    padding-top: .2rem;
    padding-bottom: .2rem;
}
.mirswa-home-top-search .header-search-polish .form-control {
    font-size: clamp(0.88rem, 2.4vw, 1rem);
    line-height: 1.25;
    border: 0;
    box-shadow: none !important;
}
.mirswa-home-top-search .header-search-polish .form-control::placeholder {
    color: #8b95a7;
    opacity: 0.95;
    transition: opacity 0.35s ease;
}
.mirswa-home-top-search .header-search-polish .form-control.mirswa-ph-fade::placeholder {
    opacity: 0.24;
}
.mirswa-home-top-search .header-search-polish .input-group-text {
    background: #fff;
    border: 0;
    color: var(--mirswa-logo-blue);
    font-weight: 700;
    font-size: clamp(0.8rem, 2.2vw, 0.9rem);
    padding-left: 12px;
    padding-right: 12px;
    border-right: 1px solid #eef2f8;
    white-space: nowrap;
}
.mirswa-home-top-search .header-search-polish .btn {
    border: 0 !important;
    min-width: 48px;
    background: transparent;
    color: #4b5563;
    border-left: 1px solid #eef2f8 !important;
    border-radius: 0 !important;
}
.mirswa-home-top-search .header-search-polish .btn:hover,
.mirswa-home-top-search .header-search-polish .btn:focus {
    background: #f8fbff;
    color: var(--mirswa-logo-blue);
    box-shadow: none !important;
}
.mirswa-home-top-search #mirswaSearchMic.is-listening {
    background: #fee2e2 !important;
    color: var(--mirswa-logo-red) !important;
}
.mirswa-home-top-search .header-search-wake {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}
.mirswa-home-top-search .header-search-wake-wordmark {
    letter-spacing: -0.02em;
}
.mirswa-home-top-search .header-mirswa-voice-cluster {
    position: relative;
    flex: 0 0 auto;
    width: 24px;
    height: 16px;
}
.mirswa-home-top-search .header-mirswa-voice-cluster b {
    position: absolute;
    display: block;
    border-radius: 50%;
    pointer-events: none;
}
.mirswa-home-top-search .header-mirswa-voice-cluster b:nth-child(1) {
    width: 11px;
    height: 11px;
    left: 0;
    bottom: 1px;
    background: radial-gradient(circle at 28% 28%, #3d7bdf 0%, var(--mirswa-logo-blue) 52%, var(--mirswa-logo-blue-deep) 100%);
    box-shadow: 0 2px 6px rgba(15, 58, 150, 0.35);
    animation: mirswaWakeDotPulse 2.6s ease-in-out infinite;
}
.mirswa-home-top-search .header-mirswa-voice-cluster b:nth-child(2) {
    width: 7px;
    height: 7px;
    left: 9px;
    top: -1px;
    background: radial-gradient(circle at 28% 28%, #ff5c6e 0%, var(--mirswa-logo-red) 55%, #b51224 100%);
    box-shadow: 0 1px 3px rgba(227, 27, 52, 0.35);
    animation: mirswaWakeDotPulse 2.6s ease-in-out infinite 0.35s;
}
.mirswa-home-top-search .header-mirswa-voice-cluster b:nth-child(3) {
    width: 7px;
    height: 7px;
    left: 13px;
    bottom: 0;
    background: linear-gradient(165deg, var(--mirswa-logo-gold) 0%, var(--mirswa-logo-orange) 55%, var(--mirswa-logo-orange-deep) 100%);
    box-shadow: 0 1px 3px rgba(240, 124, 31, 0.35);
    animation: mirswaWakeDotPulse 2.6s ease-in-out infinite 0.7s;
}
.mirswa-home-top-search .header-mirswa-voice-cluster b:nth-child(4) {
    width: 4px;
    height: 4px;
    left: 18px;
    top: 3px;
    background: radial-gradient(circle at 30% 30%, var(--mirswa-logo-orange) 0%, var(--mirswa-logo-orange-deep) 100%);
    animation: mirswaWakeDotPulse 2.6s ease-in-out infinite 1.05s;
}
@keyframes mirswaWakeDotPulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    45% { transform: scale(1.06); opacity: .88; }
}
/* Special Offers banner: theme layout assumed a countdown column; keep single-column balance */
body.mirswastyle .mirswa-offer-banner .offer-contain {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0.75rem;
}
body.mirswastyle .mirswa-offer-banner .offer-detail {
    flex: 1 1 auto;
    min-width: min(100%, 20rem);
}
@media (prefers-reduced-motion: reduce) {
    .mirswa-home-top-search .header-mirswa-voice-cluster b {
        animation: none !important;
    }
}

/* Homepage mobile: no horizontal scroll; bottom nav visible above hero/deals */
@media (max-width: 767.98px) {
    html:has(body.mirswastyle) {
        overflow-x: hidden;
        max-width: 100%;
    }
    body.mirswastyle {
        overflow-x: hidden;
        max-width: 100%;
        padding-bottom: calc(4.25rem + env(safe-area-inset-bottom, 0px));
    }
    body.mirswastyle .mirswa-hero-wrap,
    body.mirswastyle .mirswa-hero-slider {
        overflow-x: clip;
        max-width: 100%;
    }
    body.mirswastyle .mirswa-hero-slider .home-contain.mirswa-hero-slide--6 {
        overflow: hidden;
    }
    body.mirswastyle .mirswa-hero-slider .slick-list {
        overflow: hidden;
    }
    body.mirswastyle .mobile-menu {
        z-index: 1035;
        left: 0;
        right: 0;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        padding-bottom: calc(10px + env(safe-area-inset-bottom, 0px));
    }
    body.mirswastyle .mobile-menu ul li a .fa-solid {
        display: inline-block;
        margin: 0 auto;
        font-size: calc(20px + 2 * (100vw - 320px) / 1600);
        color: #fff;
    }
    body.mirswastyle .footer-section-2 {
        padding-bottom: calc(0.5rem + env(safe-area-inset-bottom, 0px));
    }
}

