/* Campaign skin only: retain the original Elementor layout and components. */
body.chef-black-friday {
  --e-global-color-primary: #000000;
}

/* The original introductory line was removed from this campaign. */
body.chef-black-friday .elementor-element.elementor-element-117369a4 {
  display: none;
}

/* The original photos already have a blue treatment baked into their pixels.
   Blend only these backgrounds; foreground photos and logos keep their colors. */
body.chef-black-friday .elementor-element:is(
  .elementor-element-102a95a5,
  .elementor-element-7a59f236,
  .elementor-element-12ea5493,
  .elementor-element-7c5c338e,
  .elementor-element-37c02ce3,
  .elementor-element-7dd69a74,
  .elementor-element-31f07d0f
) {
  background-color: #000000;
  background-blend-mode: luminosity;
}

.chef-bf-announcement {
  width: 100%;
  margin: 0;
  padding: 20px 0;
  background-color: #000000;
  color: #fffbf7;
  text-align: center;
}

/* Share the hero's single photo so the header joins it without a hard edge.
   Only the very top fades to black; the gradient ends fully transparent. */
.chef-bf-announcement--hero {
  background: linear-gradient(
    to bottom,
    #000000 0%,
    rgba(0, 0, 0, 0.9) 22%,
    rgba(0, 0, 0, 0.45) 62%,
    rgba(0, 0, 0, 0) 100%
  );
}

.chef-bf-announcement__title {
  display: block;
  width: 100%;
  margin: 0;
  padding: 16px 24px;
  border-top: 2px solid #f48040;
  border-bottom: 2px solid #f48040;
  color: #ffffff;
  font-family: "Poppins", sans-serif;
  font-size: clamp(30px, 3.1vw, 54px);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.045em;
}

.chef-bf-announcement__title span { color: #f48040; }

.chef-bf-announcement__urgency { color: #f48040; }

.chef-bf-announcement__description {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  max-width: 960px;
  margin: 12px auto 0;
  padding: 0 24px;
  color: #fffbf7;
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
}

.chef-bf-divider__frame {
  width: 100%;
  border-top: 2px solid #f48040;
  border-bottom: 2px solid #f48040;
}

.chef-bf-divider__content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(20px, 3vw, 40px);
  max-width: 1140px;
  margin: 0 auto;
  padding: 20px 24px;
}

.chef-bf-announcement--divider .chef-bf-announcement__title {
  flex: 0 0 auto;
  width: auto;
  padding: 0;
  border: 0;
  white-space: nowrap;
}

.chef-bf-divider__separator {
  flex: 0 0 1px;
  height: 48px;
  background-color: #f48040;
}

.chef-bf-divider__copy {
  flex: 0 1 auto;
  min-width: 0;
  max-width: 580px;
  margin: 0;
  color: #fffbf7;
  font-family: "Poppins", sans-serif;
  font-size: clamp(18px, 2vw, 28px);
  font-weight: 600;
  line-height: 1.3;
  text-align: left;
  text-wrap: balance;
}

/* Slim final CTA, retaining its original text and popup action. */
body.chef-black-friday .elementor-element.elementor-element-3a846e02 .elementor-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  min-height: 49.5px;
  padding: 13.5px 18px;
  font-size: 18px;
  border-radius: 9px;
  line-height: 1.25;
  white-space: nowrap;
}

@media (min-width: 768px) and (max-width: 1024px) {
  body.chef-black-friday .elementor-element.elementor-element-3a846e02 .elementor-button {
    font-size: 15.75px;
  }
}

/* Compact guarantee strip; retain the original seven-day guarantee wording. */
body.chef-black-friday .elementor-element.elementor-element-1b329907 {
  padding: 14px 24px;
}

body.chef-black-friday .elementor-element.elementor-element-1b329907 > .elementor-container {
  max-width: 720px;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  gap: 8px;
}

body.chef-black-friday .elementor-element.elementor-element-1980667 {
  width: auto;
  min-width: 0;
  flex: 0 1 auto;
}

body.chef-black-friday .elementor-element.elementor-element-683820fb {
  width: 128px;
  flex: 0 0 128px;
}

body.chef-black-friday .elementor-element.elementor-element-1b329907 > .elementor-container > .elementor-column > .elementor-widget-wrap {
  padding: 0;
}

body.chef-black-friday .elementor-element.elementor-element-1980667 > .elementor-widget-wrap {
  flex-direction: column;
  justify-content: center;
  gap: 2px;
  --kit-widget-spacing: 0px;
}

body.chef-black-friday .elementor-element.elementor-element-1d07f582 {
  margin: 0;
  text-align: center;
}

body.chef-black-friday .elementor-element.elementor-element-1d07f582 .elementor-heading-title {
  margin: 0;
  font-size: 28px;
  line-height: 1.2;
}

body.chef-black-friday .elementor-element.elementor-element-36b04d6c {
  margin: 0;
  text-align: center;
}

body.chef-black-friday .elementor-element.elementor-element-36b04d6c .elementor-heading-title {
  margin: 0;
  font-size: 15px;
  line-height: 1.25;
}

body.chef-black-friday .elementor-element.elementor-element-14e54ba3 img {
  display: block;
  width: 128px;
  max-width: 100%;
  height: auto;
  margin-inline: auto;
}

@media (max-width: 767px) {
  .chef-bf-announcement__title { font-size: clamp(30px, 8vw, 44px); }
  .chef-bf-announcement__description { font-size: 14px; }
  .chef-bf-divider__content { flex-direction: column; gap: 12px; }
  .chef-bf-divider__separator { display: none; }
  .chef-bf-divider__copy { max-width: 32ch; font-size: 18px; text-align: center; }
  body.chef-black-friday .elementor-element.elementor-element-1b329907 > .elementor-container { gap: 8px; }
  body.chef-black-friday .elementor-element.elementor-element-683820fb { width: 92px; flex-basis: 92px; }
  body.chef-black-friday .elementor-element.elementor-element-14e54ba3 img { width: 92px; }
  body.chef-black-friday .elementor-element.elementor-element-1d07f582 .elementor-heading-title { font-size: 22px; }
  body.chef-black-friday .elementor-element.elementor-element-36b04d6c .elementor-heading-title { font-size: 14px; }
}

/* Decorative clock shares the subtitle's center line and needs no media download. */
.chef-bf-announcement__subtitle { min-width: 0; text-align: left; }
.chef-bf-clock { display: block; width: 46px; height: 46px; flex: 0 0 46px; color: #f48040; }
.chef-bf-clock__hand { transform-box: view-box; transform-origin: 50% 50%; }
.chef-bf-clock__hand--minute { animation: chef-bf-clock-turn 4s linear infinite; }
.chef-bf-clock__hand--hour { animation: chef-bf-clock-turn 48s linear infinite; }
@keyframes chef-bf-clock-turn { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
@media (max-width: 767px) {
  .chef-bf-announcement__description { gap: 10px; }
  .chef-bf-clock { width: 36px; height: 36px; flex-basis: 36px; }
}
@media (prefers-reduced-motion: reduce) {
  .chef-bf-clock__hand { animation: none; }
  .chef-bf-clock__hand--hour { transform: rotate(60deg); }
}
