/* Battle Buddy product layer: page composition on top of core.css. */
.bb-brandlink { display: inline-flex; align-items: center; gap: var(--ds-space-3); text-decoration: none; color: inherit; }
.bb-hero { padding-top: var(--ds-space-8); align-items: end; }
.bb-hero__copy { display: flex; flex-direction: column; align-items: flex-start; gap: var(--ds-space-5); padding-bottom: var(--ds-space-8); }
.bb-hero__copy .ds-h1 { color: #fff; max-width: 14ch; }
.bb-hero__copy .ds-lead { max-width: 34rem; }
.bb-pill {
  display: inline-block; width: max-content; padding: .3em .9em; border-radius: var(--ds-radius-pill);
  background: var(--bb-gold); color: var(--ds-primary); font-size: .75rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase;
}
.bb-phones { display: flex; justify-content: center; align-items: flex-end; gap: var(--ds-space-5); }
.bb-phone {
  display: block; height: auto; border: 8px solid var(--ds-device); border-radius: var(--ds-radius-phone);
  box-shadow: 0 30px 60px rgba(0, 10, 20, .5);
}
.bb-phone--sm { width: 190px; margin-bottom: -40px; }
.bb-phone--lg { width: 230px; margin-bottom: -90px; }
.bb-band-top { position: relative; z-index: 2; }
.bb-claims { display: grid; grid-template-columns: 1fr 1fr; gap: var(--ds-space-5); margin-top: var(--ds-space-3); }
.bb-claim { display: flex; flex-direction: column; gap: 4px; padding-left: var(--ds-space-4); border-left: 3px solid var(--ds-primary); }
.bb-claim__label { font-size: .75rem; font-weight: 800; letter-spacing: .14em; color: var(--ds-primary); }
.bb-claim__title { font-weight: 700; }
.bb-claim__body { font-size: var(--ds-step--1); color: var(--ds-muted); line-height: 1.55; }
.bb-note { font-size: .8125rem; color: var(--ds-muted); }
.bb-claims-shot { display: flex; justify-content: center; }
.bb-claims-shot img { width: min(300px, 100%); }
.bb-trust { background: linear-gradient(115deg, #001c33, #003e67); }
.bb-trust .ds-title { color: #fff; max-width: 15ch; }
.bb-trust .ds-checklist strong { color: #fff; }
.bb-trust .ds-checklist span { color: var(--ds-on-dark-muted); font-size: var(--ds-step--1); line-height: 1.55; }
.bb-trust .ds-check { color: var(--bb-sky); }
.bb-trust__shield { width: 44px; height: 44px; }
.bb-waitlist { text-align: center; }
.bb-waitlist .ds-form { align-items: center; max-width: 560px; margin-inline: auto; }
.bb-waitlist .ds-form__consent { text-align: left; }
.ds-card--dark { --ds-dark-bg: #002138; }
.bb-footer-warn { color: var(--ds-danger); font-weight: 700; }
@media (max-width: 980px) {
  .bb-hero { padding-top: var(--ds-space-7); }
  .bb-hero__copy { padding-bottom: var(--ds-space-6); align-items: flex-start; text-align: left; }
  .bb-phone--sm { margin-bottom: -20px; }
  .bb-phone--lg { margin-bottom: -50px; }
}
@media (max-width: 640px) {
  .bb-claims { grid-template-columns: 1fr; }
  .bb-phone--sm { width: 132px; }
  .bb-phone--lg { width: 160px; }
  .bb-hero__copy .ds-actions { width: 100%; }
  .bb-hero__copy .ds-actions .ds-btn { flex: 1; }
}
@media (max-width: 460px) {
  .bb-hero__copy .ds-actions { flex-direction: column; align-items: stretch; }
}
