/* Shared funnel shell. Offer cards are styled in abl-offer-layout.css. */
:root {
  --abl-font-body:'General Sans',sans-serif;
  --abl-font-display:'Cabinet Grotesk',sans-serif;
  --abl-bg:#fff;
  --abl-ink:#0a1628;
  --abl-text:#454e59;
  --abl-text-2:#555f6a;
  --abl-muted:#9aa1a9;
  --abl-hair:#e6e7e9;
  --abl-chip:#f6f6f5;
  --abl-radius:10px;
  --abl-radius-sm:6px;
}
body {
  margin:0;
  background:#fff;
}
*,*::before,*::after {
  box-sizing:border-box;
}
[hidden] {
  display:none!important;
}
.abl-funnel-header {
  display:flex;
  justify-content:center;
  align-items:center;
  height:84px;
  background:#fff;
  border-bottom:1px solid #e6e7e9;
}
.abl-funnel-header img {
  display:block;
  width:120px;
  height:64px;
  object-fit:contain;
}
.abl-sdk-selector {
  display:none;
}
.abl-pdp-cta {
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  background:#0a1628;
  color:#fff;
  font:600 15.5px 'General Sans',sans-serif;
  text-decoration:none;
  border:0;
  border-radius:10px;
  min-height:52px;
  padding:18px;
}
.abl-pdp-cta:hover {
  background:#132743;
  color:#fff;
}
.abl-pdp-cta[aria-disabled="true"] {
  opacity:.6;
  cursor:wait;
}
.abl-pdp-charge {
  text-align:center;
  margin:8px 0;
  font-size:12px;
  line-height:1.5;
  color:#454e59;
}
.abl-funnel-footer {
  text-align:center;
  padding:48px 20px 110px;
  background:#f7f8fa;
  border-top:1px solid #e6e7e9;
  font:12px/1.6 'General Sans',sans-serif;
}
.abl-funnel-footer img {
  margin:auto;
  display:block;
  object-fit:contain;
}
.abl-funnel-footer div {
  display:flex;
  gap:20px;
  justify-content:center;
  flex-wrap:wrap;
}
.abl-funnel-footer a {
  color:#454e59;
}
.abl-funnel-footer small {
  display:block;
  max-width:740px;
  margin:20px auto 0;
}
.abl-pdp-sticky {
  position:fixed;
  z-index:100;
  bottom:0;
  left:0;
  right:0;
  background:#fff;
  border-top:1px solid #e6e7e9;
  box-shadow:0 -4px 24px #0a162810;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:12px max(20px,calc((100vw - 1120px)/2));
  transform:translateY(calc(100% + 24px));
  visibility:hidden;
  transition:transform .3s cubic-bezier(.32,.72,0,1),visibility 0s linear .3s;
}
.abl-pdp-sticky.is-visible {
  transform:none;
  visibility:visible;
  transition-delay:0s;
}
.abl-pdp-sticky>div {
  display:flex;
  align-items:baseline;
  gap:10px;
  flex-wrap:wrap;
}
.abl-pdp-sticky small {
  flex-basis:100%;
  font-size:11px;
}
.abl-pdp-sticky-price {
  font-weight:600;
}
.abl-pdp-sticky .abl-pdp-cta {
  min-width:200px;
  min-height:44px;
  font-size:14px;
}
:focus-visible {
  outline:2px solid #00aaff;
  outline-offset:4px;
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:24px;
}
@media(max-width:749px) {
  .abl-funnel-header {
    height:64px;
  }
  .abl-funnel-header img {
    width:100px;
    height:52px;
  }
  .abl-pdp-sticky {
    padding:10px 12px;
    gap:10px;
  }
  .abl-pdp-sticky .abl-pdp-cta {
    min-width:140px;
    padding:8px 10px;
  }
  .abl-pdp-sticky>div {
    gap:4px 8px;
    font-size:12px;
  }
  .abl-pdp-sticky small {
    font-size:10px;
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto;
  }
  *,*::before,*::after {
    animation-duration:.01ms!important;
    transition-duration:.01ms!important;
  }
}
.abl-pdp-sticky-compare { margin-right:6px; color:#8a929c; font-size:.9em; font-weight:400; }
