.bf-panel { background:#eeecdf; border-top:1px solid #d5d0b8; border-bottom:1px solid #d5d0b8; color:#26362b; padding:32px 24px; }
.bf-panel__inner { max-width:1200px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:32px; }
.bf-panel__eyebrow { font-size:12px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; margin:0 0 10px; }
.bf-panel h2 { font-family:var(--font-serif,Georgia,serif); font-size:clamp(26px,3vw,38px); line-height:1.15; margin:0 0 12px; }
.bf-panel__shipping { font-size:16px; font-weight:600; margin:0 0 8px; }
.bf-panel__rules { max-width:780px; font-size:12px; line-height:1.6; margin:0; color:#4e574a; }
.bf-panel__status { font-size:13px; font-weight:700; margin:12px 0 0; }
.bf-panel .btn { white-space:nowrap; flex-shrink:0; }
.bf-old-price { font-size:.72em; font-weight:400; color:#63675f; }
.bf-price-label { display:inline-block; vertical-align:middle; padding:3px 7px; border-radius:3px; background:#263e2d; color:#fff; font-size:11px; line-height:1.3; font-weight:600; }
.bf-added-price { margin:12px 0; }
.product-card [hidden] { display:none !important; }
@media(max-width:600px) { .bf-panel { padding:25px 20px; } .bf-panel__inner { flex-direction:column; align-items:flex-start; gap:18px; } .bf-panel__shipping { font-size:14px; } .bf-panel__eyebrow { font-size:10px; } .promo-banner { font-size:12px; } }

.bf-panel--without-hero { margin-top:110px; }

/* First-screen homepage campaign; the original hero returns at expiry. */
.hero.hero--black-friday { padding-top:120px; padding-bottom:32px; min-height:680px; height:100svh; max-height:none; color:#fff; }
.hero--black-friday .hero__overlay { background:linear-gradient(90deg,rgba(19,35,25,.96) 0%,rgba(19,35,25,.88) 44%,rgba(19,35,25,.28) 100%); }
.hero--black-friday .hero__content { max-width:760px; padding:0; opacity:1!important; transform:none!important; }
.hero--black-friday .hero__content > :not(.bf-home-content), .hero--black-friday .hero__scroll-indicator { display:none!important; }
.bf-home-dates { display:inline-block; border:1px solid #c8b574; border-radius:30px; color:#f0dfab; padding:8px 18px; margin:0 0 20px; font-size:13px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; }
.bf-home-title { color:#fff; font-family:var(--font-serif,Georgia,serif); font-size:clamp(42px,5vw,70px); font-weight:400; line-height:1.05; margin:0 0 8px; }
.bf-home-offer { margin:0 0 20px; line-height:1; }
.bf-home-offer > strong { display:block; color:#f1daa0; font-size:clamp(85px,9vw,132px); font-weight:600; letter-spacing:-.055em; }
.bf-home-offer > strong span { font-size:.64em; }
.bf-home-offer > span { display:block; color:#fff; font-size:clamp(21px,2.4vw,30px); margin-top:8px; }
.bf-home-shipping { color:#f4f2e9; max-width:540px; margin:0 0 24px; font-size:17px; line-height:1.55; }
.bf-home-cta { background:#f1daa0; color:#1c3022; border:1px solid #f1daa0; padding:17px 28px; font-weight:700; }
.bf-home-cta:hover,.bf-home-cta:focus-visible { background:#fff0c8; color:#14261b; border-color:#fff0c8; }
.bf-home-status { color:#dfdfcf; font-size:12px; margin:12px 0 0; }
@media(max-width:767px) {
 .hero.hero--black-friday { align-items:center; padding-top:120px; padding-bottom:24px; min-height:650px; height:100svh; }
 .hero--black-friday .hero__overlay { background:linear-gradient(110deg,rgba(19,35,25,.94),rgba(19,35,25,.78)); }
 .hero--black-friday .hero__content { padding:0; }
 .bf-home-dates { font-size:10px; padding:7px 11px; margin-bottom:18px; letter-spacing:.04em; }
 .bf-home-title { font-size:46px; }
 .bf-home-offer > strong { font-size:100px; }
 .bf-home-offer > span { font-size:23px; }
 .bf-home-offer { margin-bottom:18px; }
 .bf-home-shipping { font-size:14px; line-height:1.5; margin-bottom:22px; }
 .bf-home-cta { width:100%; padding:16px 18px; }
 .bf-home-status { font-size:11px; }
}
@media(max-width:767px) and (max-height:720px) {
 .hero.hero--black-friday { min-height:590px; padding-top:112px; padding-bottom:16px; }
 .bf-home-title { font-size:38px; }
 .bf-home-offer > strong { font-size:82px; }
 .bf-home-dates { margin-bottom:12px; }
 .bf-home-offer { margin-bottom:14px; }
 .bf-home-shipping { margin-bottom:16px; }
}

/* Cosmetics photo replaces the olive grove only during the campaign. */
.hero--black-friday .hero__background { background:linear-gradient(105deg,#14271c 0%,#293e2e 45%,#a5aa93 100%); }
.hero--black-friday .hero__background > img:not(.bf-home-products) { display:none; }
.hero.hero--black-friday .hero__background > .bf-home-products { position:absolute; right:1%; top:120px; width:57%; height:calc(100% - 150px); object-fit:contain; object-position:right center; }
.hero--black-friday .hero__overlay { background:linear-gradient(90deg,rgba(19,35,25,.95) 0%,rgba(19,35,25,.85) 33%,rgba(19,35,25,.2) 55%,transparent 72%); }
@media(max-width:767px) {
 .hero.hero--black-friday .hero__background > .bf-home-products { right:-12%; top:130px; width:112%; height:calc(100% - 145px); object-position:right center; }
 .hero--black-friday .hero__overlay { background:linear-gradient(100deg,rgba(15,29,20,.94) 0%,rgba(15,29,20,.78) 45%,rgba(15,29,20,.48) 100%); }
}

/* Live countdown, synchronized to the catalog server clock. */
.bf-home-countdown { margin:0 0 18px; }
.bf-countdown-label { color:#f4f2e9; font-size:12px; font-weight:500; margin:0 0 7px; }
.bf-countdown-units { display:flex; gap:8px; width:max-content; max-width:100%; }
.bf-countdown-unit { width:68px; padding:7px 5px 6px; border:1px solid rgba(241,218,160,.45); border-radius:6px; background:rgba(15,29,20,.76); text-align:center; }
.bf-countdown-unit strong { display:block; color:#f1daa0; font-size:26px; line-height:1; font-weight:600; font-variant-numeric:tabular-nums; }
.bf-countdown-unit span { display:block; color:#fff; font-size:10px; line-height:1.2; margin-top:5px; }
.hero--black-friday .bf-home-dates { margin-bottom:12px; }
.hero--black-friday .bf-home-offer { margin-bottom:14px; }
.hero--black-friday .bf-home-shipping { margin-bottom:18px; }
@media(max-width:767px) {
 .bf-home-countdown { margin-bottom:16px; }
 .bf-countdown-unit { width:61px; padding:6px 4px; }
 .bf-countdown-unit strong { font-size:24px; }
 .bf-countdown-unit span { font-size:9px; }
 .hero--black-friday .bf-home-dates { margin-bottom:12px; }
}
@media(max-width:767px) and (max-height:720px) {
 .hero.hero--black-friday { padding-top:116px; min-height:630px; }
 .hero--black-friday .bf-home-title { font-size:34px; }
 .hero--black-friday .bf-home-offer > strong { font-size:68px; }
 .hero--black-friday .bf-home-offer > span { font-size:21px; }
 .hero--black-friday .bf-home-offer { margin-bottom:10px; }
 .bf-home-countdown { margin-bottom:12px; }
 .bf-countdown-unit strong { font-size:21px; }
 .bf-countdown-label { font-size:11px; }
 .hero--black-friday .bf-home-shipping { font-size:13px; margin-bottom:12px; }
 .hero--black-friday .bf-home-cta { padding:12px 18px; }
 .hero--black-friday .bf-home-status { margin-top:8px; }
}

/* Countdown in the shop and cosmetics campaign panels. */
.bf-panel .bf-home-countdown { margin:18px 0; }
.bf-panel .bf-countdown-label { color:#334332; font-size:13px; }
.bf-panel .bf-countdown-unit { background:#263e2d; border-color:#263e2d; }
.bf-panel .bf-countdown-unit strong { color:#f1daa0; }
.bf-panel .bf-countdown-unit span { color:#fff; }
