/* Campanha Black Friday: apresentação isolada do fluxo de contratação. */
body.bf-checkout {
  --accent: #ffdc00;
  --accent-hover: #ffe94d;
  --text-muted: #aab6cc;
  --text-muted-light: #d4deef;
  --border-light: #39465e;
  color-scheme: dark;
  background: #0b101b;
}
.bf-checkout::before {
  background: radial-gradient(ellipse at 95% 12%, #3056d32b, transparent 45%),
    radial-gradient(ellipse at 0 75%, #3056d314, transparent 40%);
}
.bf-checkout header {
  background: #0b101bf5;
  border-bottom: 1px solid #253148;
  padding-inline: max(24px, calc((100% - 1280px) / 2));
}
.bf-checkout .bf-checkout-intro {
  max-width: 1280px;
  padding: 36px 24px 0;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.bf-checkout .bf-checkout-label {
  display: inline-block;
  background: #ffdc0014;
  border: 1px solid #ffdc0040;
  border-radius: 6px;
  padding: 7px 11px;
  color: var(--accent);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .09em;
}
.bf-checkout .bf-checkout-intro h1 {
  font-size: clamp(1.65rem, 3vw, 2.4rem);
  line-height: 1.2;
  letter-spacing: -.04em;
  margin: 16px 0 10px;
  color: #fff;
}
.bf-checkout .bf-checkout-intro h1 span { color: var(--accent); }
.bf-checkout .bf-checkout-intro p { color: var(--text-muted-light); line-height: 1.6; margin: 0; }
.bf-checkout .container {
  max-width: 1280px;
  padding: 0 24px;
  margin: 28px auto 48px;
  grid-template-columns: minmax(0, 1fr) 400px;
  gap: 28px;
}
.bf-checkout main, .bf-checkout .sidebar { min-width: 0; }
.bf-checkout .content-section {
  background: #121b2a;
  border-color: #2b374d;
  box-shadow: 0 16px 48px #0003;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.bf-checkout .summary-card {
  background: linear-gradient(155deg, #182956, #111c33 70%);
  border-color: #344773;
  box-shadow: 0 16px 48px #0004;
}
.bf-checkout .summary-card::before { background: var(--accent); }
.bf-checkout .summary-card-inner { padding: 24px; }
.bf-checkout .input-box, .bf-checkout .select-box,
.bf-checkout .sidebar-select {
  background: #0d1524;
  border-color: #39465e;
  color: #f1f5f9;
  min-height: 44px;
}
.bf-checkout .sidebar-select { font-size: .85rem; line-height: 1.4; }
.bf-checkout .sidebar-select option, .bf-checkout .select-box option { background: #121b2a; color: #fff; }
.bf-checkout .input-box::placeholder { color: #9aa8bf; opacity: 1; }
.bf-checkout .input-box:focus, .bf-checkout .select-box:focus,
.bf-checkout .sidebar-select:focus { border-color: #6c8cff; outline: 2px solid #6c8cff; outline-offset: 2px; }
.bf-checkout .input-box:-webkit-autofill { -webkit-text-fill-color: #f1f5f9; -webkit-box-shadow: 0 0 0 1000px #18243a inset; }
.bf-checkout input[type=radio], .bf-checkout input[type=checkbox] { accent-color: var(--accent); flex-shrink: 0; }
.bf-checkout .summary-item .label small { color: #aab6cc; }
.bf-checkout .summary-total small, .bf-checkout #summary-total-billed { color: #c0cce0 !important; }
.bf-checkout #btn-checkout { background: var(--accent) !important; color: #0b101b !important; }
.bf-checkout #btn-checkout:hover { background: var(--accent-hover) !important; }
.bf-checkout .btn-primary:focus-visible, .bf-checkout button:focus-visible,
.bf-checkout a:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
.bf-checkout .loading-card { background: #121b2a; border-color: #39465e; }
.bf-checkout .iti__country-list { background: #121b2a; border-color: #39465e; }
@media (max-width: 992px) {
  .bf-checkout .container { grid-template-columns: minmax(0, 1fr); }
  .bf-checkout .sidebar { position: static; }
}
@media (max-width: 768px) {
  .bf-checkout header { padding: 14px 16px; gap: 12px; }
  .bf-checkout .secure-badge { font-size: .72rem; padding: 6px 9px; white-space: nowrap; }
  .bf-checkout .logo img { max-width: 132px; height: auto; }
  .bf-checkout .bf-checkout-intro { padding: 28px 16px 0; }
  .bf-checkout .container { padding: 0 16px; margin-top: 24px; gap: 24px; }
  .bf-checkout .content-section { padding: 24px 18px; border-radius: 18px; }
  .bf-checkout .summary-card-inner { padding: 24px 18px; }
  .bf-checkout h2 { font-size: 1.3rem; }
  .bf-checkout #btn-toggle-login { white-space: normal !important; min-height: 44px; }
  .bf-checkout .form-grid-2 > *, .bf-checkout .form-grid-2-1 > * { min-width: 0; }
  .bf-checkout .summary-total { flex-wrap: wrap; gap: 12px; }
  .bf-checkout #register-form-area > div:first-child > div { flex-wrap: wrap; }
  .bf-checkout .wa-chat-bubble { display: none !important; }
  .bf-checkout .wa-widget-send-button {
    position: relative !important;
    inset: auto !important;
    margin: 0 16px 100px auto !important;
  }
  .bf-checkout #btn-checkout { scroll-margin-bottom: 100px; }
}
@media (prefers-reduced-motion: reduce) {
  .bf-checkout *, .bf-checkout *::before, .bf-checkout *::after { animation: none !important; transition: none !important; }
}

/* Mascote decorativo: mant?m o formul?rio como foco principal. */
.bf-checkout .bf-checkout-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:24px;padding-top:22px;min-height:228px}
.bf-checkout .bf-checkout-copy{min-width:0}
.bf-checkout .bf-checkout-mascot{display:block;width:100%;max-width:480px;height:240px;object-fit:contain;justify-self:center;pointer-events:none}
@media(max-width:992px){.bf-checkout .bf-checkout-intro{grid-template-columns:minmax(0,1fr) 230px;gap:8px}.bf-checkout .bf-checkout-mascot{height:195px}}
@media(max-width:600px){.bf-checkout .bf-checkout-intro{display:block;min-height:0;padding-top:28px}.bf-checkout .bf-checkout-mascot{display:none}}
