/* Чёрная пятница: посадочная и предложение перед заявкой. */
@font-face {
  font-family: "Graphik BF";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/black-friday/Graphik-Regular-Web.woff2") format("woff2");
}
@font-face {
  font-family: "Graphik BF";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/black-friday/Graphik-Semibold-Web.woff2") format("woff2");
}
/* Отдельный баннер в разделе подарков: основная кнопка первого экрана свободна. */
.bf-banner {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
  align-items: center;
  gap: 24px;
  padding: 40px;
  margin: 8px 0 24px;
  border-radius: 32px;
  background: #000;
  color: #fff;
  font-family: "Graphik BF", sans-serif;
  box-shadow: none;
}
.bf-banner h2 { margin: 22px 0 18px; color: #fff; font-size: clamp(28px, 3.2vw, 42px); line-height: 1.08; font-weight: 600; letter-spacing: -.025em; }
.bf-banner p { margin: 0 0 26px; color: #fff; font-size: 17px; line-height: 1.5; }
.bf-banner__start { display: block; width: 100%; max-width: 320px; margin-bottom: 14px; font-family: inherit; font-weight: 600; box-shadow: none; }
.bf-banner__visual { position: relative; min-width: 0; }
.bf-banner__chest { display: block; width: 100%; height: auto; }
.bf-banner__tag { position: absolute; width: 42%; height: auto; left: -6%; bottom: 8%; transform: rotate(-7deg); }
.bf-rules { color: inherit; text-decoration: underline; text-underline-offset: 3px; font-size: 12px; line-height: 1.5; }
.bf-rules:hover { color: #BEE85C; }
.bf-rules:focus-visible { outline: 2px solid #BEE85C; outline-offset: 4px; }
.bf-timer { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; font-size: 12px; line-height: 1.4; }
.bf-timer time { display: block; border: 1px solid #fff; border-radius: 12px; padding: 8px 12px; color: #fff; font-size: 16px; font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; }
[data-bf-timer][hidden], #scratchFoot[hidden] { display: none !important; }

/* До стирания работают прежние стили купона. ЧП появляется только при раскрытии. */
#scratch.bf-revealed { background: #000; color: #fff; font-family: "Graphik BF", sans-serif; box-shadow: none; }
.bf-revealed .scratch__title, .bf-revealed .scratch__val { color: #BEE85C; }
.bf-revealed .scratch__title { font-size: 18px; }
.bf-revealed .scratch__foot { color: #fff; border-color: #fff; }
.bf-scratch__gifts { margin: 0 0 8px; font-size: 14px; font-weight: 600; line-height: 1.3; }
.bf-revealed .bf-timer { justify-content: center; gap: 6px; margin-bottom: 8px; }
.bf-revealed .bf-timer time { font-size: 15px; padding: 6px 9px; }
#scratchCv:focus-visible { outline: 2px solid #fff; outline-offset: -3px; }
@media (max-width: 899px) {
  .bf-banner { grid-template-columns: 1fr; padding: 28px 24px; gap: 20px; border-radius: 24px; }
  .bf-banner h2 { font-size: 29px; }
  .bf-banner p { font-size: 15px; }
  .bf-banner__visual { grid-row: 2; width: min(240px, 85%); margin: 0 auto; }
  .bf-banner__start { max-width: none; }
  .bf-banner__tag { width: 40%; }
}
@media (max-width: 359px) {
  .bf-banner { padding: 24px 18px; }
  .bf-banner h2 { font-size: 26px; }
}
