/* Yasta Fashion Campaign Theme System V1.0.1 · Compact Campaign Masthead */
body[data-yf-campaign-active="1"] {
    --yf-campaign-primary: #c9182b;
    --yf-campaign-secondary: #ffffff;
    --yf-campaign-accent: #f2b84b;
    --yf-campaign-surface: #fff8f8;
    --yf-campaign-ink: #52141b;
}

body[data-yf-campaign-active="1"] .yf-header {
    --yf-nav-primary: var(--yf-campaign-primary);
    --yf-nav-primary-dark: var(--yf-campaign-primary);
}

body[data-yf-campaign-active="1"] .yf-announcement {
    background: linear-gradient(105deg, var(--yf-campaign-primary), var(--yf-campaign-secondary));
}

.yf-campaign-announcement-label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-weight: 850;
    letter-spacing: .15px;
}

.yf-campaign-stage {
    position: relative;
    isolation: isolate;
    width: min(1420px, calc(100% - 32px));
    min-height: 176px;
    margin: 12px auto 0;
    padding: clamp(20px, 3vw, 34px);
    overflow: hidden;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(118px, 150px);
    align-items: center;
    gap: clamp(18px, 3vw, 30px);
    color: #fff;
    background:
        linear-gradient(118deg,
            var(--yf-campaign-primary) 0%,
            var(--yf-campaign-primary) 55%,
            var(--yf-campaign-secondary) 135%);
    border-radius: 26px;
    box-shadow: 0 20px 55px rgba(36, 17, 24, .16);
}

.yf-campaign-stage::before,
.yf-campaign-stage::after {
    content: "";
    position: absolute;
    z-index: -1;
    pointer-events: none;
}

.yf-campaign-stage::before {
    width: 360px;
    height: 360px;
    right: -100px;
    top: -170px;
    border: 56px solid rgba(255,255,255,.12);
    border-radius: 50%;
}

.yf-campaign-stage::after {
    inset: 0;
    opacity: .26;
    background-image: var(--yf-campaign-hero-desktop, none);
    background-position: right center;
    background-size: cover;
    background-repeat: no-repeat;
    mix-blend-mode: luminosity;
}

.yf-campaign-stage-copy { position: relative; z-index: 2; min-width: 0; max-width: 760px; }
.yf-campaign-stage-eyebrow {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    margin-bottom: 10px;
    border: 1px solid rgba(255,255,255,.24);
    background: rgba(255,255,255,.12);
    border-radius: 999px;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .55px;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}
.yf-campaign-stage h1 {
    max-width: 760px;
    margin: 0;
    color: #fff;
    font-size: clamp(26px, 3.6vw, 46px);
    line-height: 1.03;
    letter-spacing: -1.15px;
    font-weight: 900;
}
.yf-campaign-stage p {
    max-width: 650px;
    margin: 10px 0 0;
    color: rgba(255,255,255,.88);
    font-size: 12px;
    line-height: 1.55;
}
.yf-campaign-stage-actions { margin-top: 14px; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.yf-campaign-stage-cta {
    min-height: 38px;
    padding: 8px 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: var(--yf-campaign-ink);
    background: #fff;
    border-radius: 12px;
    text-decoration: none;
    font-size: 10px;
    font-weight: 850;
    box-shadow: 0 12px 28px rgba(0,0,0,.13);
    transition: transform .2s ease, box-shadow .2s ease;
}
/* Keep CTA text visible in every WebView/link state. Global storefront link states must never turn white-on-white. */
.yf-campaign-stage .yf-campaign-stage-cta,
.yf-campaign-stage .yf-campaign-stage-cta:link,
.yf-campaign-stage .yf-campaign-stage-cta:visited,
.yf-campaign-stage .yf-campaign-stage-cta:hover,
.yf-campaign-stage .yf-campaign-stage-cta:focus,
.yf-campaign-stage .yf-campaign-stage-cta:focus-visible,
.yf-campaign-stage .yf-campaign-stage-cta:active {
    color: var(--yf-campaign-ink) !important;
    -webkit-text-fill-color: var(--yf-campaign-ink);
    background: #fff;
    text-shadow: none;
}
.yf-campaign-stage .yf-campaign-stage-cta:hover,
.yf-campaign-stage .yf-campaign-stage-cta:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 14px 30px rgba(0,0,0,.17);
}
.yf-campaign-stage .yf-campaign-stage-cta:active {
    transform: translateY(0);
    box-shadow: 0 8px 18px rgba(0,0,0,.12);
}
.yf-campaign-stage-meta { display: inline-flex; align-items: center; gap: 8px; font-size: 10px; color: rgba(255,255,255,.78); font-weight: 700; }

.yf-campaign-stage-mark {
    position: relative;
    z-index: 2;
    justify-self: end;
    width: min(150px, 100%);
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    text-align: center;
    border: 1px solid rgba(255,255,255,.24);
    background: rgba(255,255,255,.1);
    border-radius: 50%;
    box-shadow: inset 0 0 0 12px rgba(255,255,255,.045);
    backdrop-filter: blur(14px);
}
.yf-campaign-stage-mark::before { content:""; position:absolute; inset:13px; border:1px dashed rgba(255,255,255,.34); border-radius:50%; }
.yf-campaign-stage-mark span { display:block; font-size: 10px; font-weight: 800; letter-spacing: 1.4px; text-transform: uppercase; }
.yf-campaign-stage-mark strong { display:block; margin:2px 0; font-size: 38px; line-height:1; font-weight:950; letter-spacing:-1.5px; }
.yf-campaign-stage-mark small { display:block; font-size:9px; font-weight:750; opacity:.78; }

.yf-campaign-countdown { display: flex; gap: 7px; flex-wrap: wrap; }
.yf-campaign-countdown-unit {
    min-width: 48px;
    padding: 7px 8px;
    text-align: center;
    border: 1px solid rgba(255,255,255,.2);
    background: rgba(0,0,0,.1);
    border-radius: 10px;
}
.yf-campaign-countdown-unit strong { display:block; color:#fff; font-size:15px; line-height:1.05; }
.yf-campaign-countdown-unit small { display:block; margin-top:3px; color:rgba(255,255,255,.7); font-size:7px; font-weight:800; text-transform:uppercase; }

.yf-campaign-product-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 4;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    max-width: calc(100% - 24px);
    padding: 7px 10px;
    color: #fff;
    background: var(--yf-campaign-primary);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 999px;
    box-shadow: 0 7px 18px rgba(0,0,0,.12);
    font-size: 8px;
    font-weight: 850;
    line-height: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.yf-campaign-detail-badge {
    position: static;
    width: fit-content;
    margin-bottom: 9px;
    padding: 7px 11px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--yf-campaign-primary);
    background: var(--yf-campaign-surface);
    border: 1px solid rgba(90, 38, 46, .16);
    border-radius: 999px;
    font-size: 9px;
    font-weight: 850;
}

body[data-yf-campaign-active="1"] .yf-home {
    --yf-primary: var(--yf-campaign-primary);
    --yf-primary-dark: var(--yf-campaign-primary);
    --yf-primary-soft: var(--yf-campaign-surface);
}
body[data-yf-campaign-active="1"] .yf-hero-overlay {
    background: linear-gradient(90deg,
        rgba(9,15,27,.78) 0%,
        rgba(9,15,27,.34) 48%,
        rgba(10,18,32,.08) 82%);
}
body[data-yf-campaign-active="1"] .yf-hero-eyebrow,
body[data-yf-campaign-active="1"] .yf-hero-button,
body[data-yf-campaign-active="1"] .yf-hero-slider .carousel-indicators .active {
    background: var(--yf-campaign-primary);
}
body[data-yf-campaign-active="1"] .yf-side-card.orange {
    background: linear-gradient(145deg, var(--yf-campaign-primary), var(--yf-campaign-secondary));
}
body[data-yf-campaign-active="1"] .yf-view-all,
body[data-yf-campaign-active="1"] .yf-product-price,
body[data-yf-campaign-active="1"] .yf-all-product-price,
body[data-yf-campaign-active="1"] .yf-product-name + .yf-google-seo-summary {
    accent-color: var(--yf-campaign-primary);
}

body[data-yf-campaign-template="independence"] .yf-campaign-stage {
    background:
      linear-gradient(118deg,#8f1020 0%,var(--yf-campaign-primary) 58%,#f23f52 100%);
}
body[data-yf-campaign-template="independence"] .yf-campaign-stage::after {
    background-image:
      var(--yf-campaign-hero-desktop, none),
      linear-gradient(155deg,transparent 0 63%,rgba(255,255,255,.18) 63% 72%,transparent 72%);
}
body[data-yf-campaign-template="harbolnas_1111"] .yf-campaign-stage::before { border-radius:28%; transform:rotate(18deg); }
body[data-yf-campaign-template="harbolnas_1212"] .yf-campaign-stage { box-shadow:0 20px 55px rgba(127,29,90,.22); }
body[data-yf-campaign-template="ramadan"] .yf-campaign-stage::before { width:260px;height:260px;border-width:38px;right:-45px;top:-95px; }
body[data-yf-campaign-template="ramadan"] .yf-campaign-stage-mark { border-radius:34% 66% 46% 54% / 55% 42% 58% 45%; }

@media (max-width: 767px) {
    .yf-campaign-stage {
        width: min(calc(100% - 20px), 1420px);
        min-height: 0;
        padding: 15px 15px 14px;
        grid-template-columns: minmax(0, 1fr) 78px;
        gap: 11px;
        align-items: center;
        border-radius: 18px;
    }
    .yf-campaign-stage::before {
        width: 210px;
        height: 210px;
        right: -88px;
        top: -105px;
        border-width: 34px;
    }
    .yf-campaign-stage::after {
        opacity: .17;
        background-image: var(--yf-campaign-hero-mobile, var(--yf-campaign-hero-desktop, none));
        background-position: center;
    }
    .yf-campaign-stage-copy { max-width: none; }
    .yf-campaign-stage-eyebrow {
        gap: 5px;
        margin-bottom: 7px;
        padding: 5px 8px;
        font-size: 7.5px;
        letter-spacing: .4px;
    }
    .yf-campaign-stage h1 {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        font-size: clamp(22px, 7.4vw, 29px);
        line-height: 1.03;
        letter-spacing: -.65px;
    }
    .yf-campaign-stage p {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        margin-top: 7px;
        font-size: 10px;
        line-height: 1.42;
    }
    .yf-campaign-stage-actions {
        margin-top: 9px;
        gap: 7px;
    }
    .yf-campaign-stage-cta {
        min-height: 34px;
        padding: 7px 10px;
        border-radius: 10px;
        font-size: 9px;
        white-space: nowrap;
    }
    .yf-campaign-stage-meta { display: none; }
    .yf-campaign-stage-mark {
        width: 78px;
        justify-self: end;
        align-self: center;
        box-shadow: inset 0 0 0 7px rgba(255,255,255,.045);
    }
    .yf-campaign-stage-mark::before { inset: 8px; }
    .yf-campaign-stage-mark span { font-size: 6.5px; letter-spacing: .75px; }
    .yf-campaign-stage-mark strong { margin: 1px 0; font-size: 25px; letter-spacing: -.8px; }
    .yf-campaign-stage-mark small { font-size: 6px; }
    .yf-campaign-countdown { gap: 4px; }
    .yf-campaign-countdown-unit {
        min-width: 34px;
        padding: 5px 4px;
        border-radius: 8px;
    }
    .yf-campaign-countdown-unit strong { font-size: 11px; }
    .yf-campaign-countdown-unit small { font-size: 5.5px; }
    .yf-campaign-product-badge { top:8px;left:8px;padding:6px 8px;font-size:7px;max-width:calc(100% - 16px); }
}

@media (max-width: 390px) {
    .yf-campaign-stage {
        grid-template-columns: minmax(0, 1fr) 70px;
        padding: 14px 13px;
    }
    .yf-campaign-stage-mark { width: 70px; }
    .yf-campaign-stage h1 { font-size: clamp(21px, 7vw, 27px); }
    .yf-campaign-stage p { font-size: 9.5px; }
}
