/** Shopify CDN: Minification failed

Line 78:0 Unexpected "}"
Line 82:2 Unexpected "0%"
Line 83:2 Unexpected "50%"

**/
@import url('https://fonts.googleapis.com/css2?family=Alfa+Slab+One&family=DM+Sans:ital,wght@0,300;0,400;0,700;1,400&family=Oswald:wght@400;600;700&family=Special+Elite&display=swap');

/* ── Smooth scroll ── */
html { scroll-behavior: smooth; }

/* ── Screen-reader only ── */
.bsale-sr-only {
  position: absolute; width: 1px; height: 1px;
  padding: 0; margin: -1px; overflow: hidden;
  clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}

/* ── ADA focus ── */
.bsale-section :focus-visible {
  outline: 3px solid #F0B030;
  outline-offset: 2px;
}

/* ── Reduced motion ── */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .badge-throb,
  .marquee-track,
  .reveal, .reveal-left { animation: none !important; transition: none !important; }
  .reveal, .reveal-left { opacity: 1 !important; transform: none !important; }
}

/* ── Grain section ── */
.grain-section {
  position: relative;
  isolation: isolate;
}
.grain-section::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background-image: url('broglo-grain.png');
  background-size: 128px 128px;
  background-repeat: repeat;
  opacity: 0.35;
  mix-blend-mode: luminosity;
}

/* ── Stripe dividers - full width, NO margin/padding override ── */
/* Force stripe sections to have zero padding in case theme adds any */
#shopify-section-stripe-1,
#shopify-section-stripe-2,
#shopify-section-stripe-3,
#shopify-section-stripe-4,
#shopify-section-stripe-5,
#shopify-section-stripe-6,
#shopify-section-stripe-7,
#shopify-section-stripe-8,
#shopify-section-stripe-9 {
  padding: 0 !important;
  margin: 0 !important;
  line-height: 0 !important;
  font-size: 0 !important;
}
.bsale-stripe-div {
  height: 6px;
  width: 100%;
  display: block;
  line-height: 0;
  font-size: 0;
}

  to   { transform: translate(-50%,-50%) rotate(360deg); }
}

/* ── Badge throb ── */
@keyframes bsale-badge-throb {
  0%,100% { transform: rotate(-8deg) scale(1); }
  50%      { transform: rotate(-8deg) scale(1.07); }
}
.badge-throb { animation: bsale-badge-throb 2.6s ease-in-out infinite; }

/* ── Scroll reveal ── */
.reveal { opacity: 0; transform: translateY(24px); transition: opacity 0.55s ease, transform 0.55s ease; }
.reveal.visible { opacity: 1; transform: translateY(0); }
.reveal-left { opacity: 0; transform: translateX(-24px); transition: opacity 0.55s ease, transform 0.55s ease; }
.reveal-left.visible { opacity: 1; transform: translateX(0); }

/* ── Marquee ── */
@keyframes bsale-marquee-run {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
.marquee-track { animation: bsale-marquee-run 38s linear infinite; display: flex; gap: 0; width: max-content; }
.marquee-track.paused { animation-play-state: paused !important; }

/* ── Shade picker ── */
.shade-btn { transition: border-color 0.15s, background 0.15s, color 0.15s; flex: 1; justify-content: center; }
.shade-btn.shade-active { background: #F0E8D8 !important; border-color: #1B2E5E !important; color: #1B2E5E !important; }
.shade-btn.shade-active span:last-child { color: #5A7090 !important; }
@media (max-width: 640px) {
  .shade-picker { flex-wrap: wrap; }
  .shade-btn { padding: 4px 8px !important; font-size: 9px !important; }
}

/* ── Bundle cards ── */
.bcard-body  { padding: 24px; display: flex; flex-direction: column; flex: 1; }
.bcard-name  { font-family: 'Alfa Slab One', serif; font-size: 22px; color: #1B2E5E; margin-bottom: 4px; }
.bcard-sub   { font-family: 'Oswald', sans-serif; font-size: 12px; color: #5A7090; letter-spacing: 0.1em; margin-bottom: 12px; text-transform: uppercase; }
.bcard-desc  { font-family: 'DM Sans', sans-serif; font-size: 14px; color: #556; line-height: 1.55; margin-bottom: 16px; }
.bcard-foot  { margin-top: auto; }
.bcard-was-row { display: flex; align-items: baseline; gap: 12px; margin-bottom: 2px; }
.bcard-was   { font-family: 'Oswald', sans-serif; font-size: 13px; color: #AAA; text-decoration: line-through; letter-spacing: 0.05em; }
.bcard-sale-lbl { font-family: 'Oswald', sans-serif; font-size: 12px; color: #BE1E2D; font-weight: 600; letter-spacing: 0.05em; }
.bcard-price { font-family: 'Alfa Slab One', serif; font-size: 40px; color: #1B2E5E; line-height: 1; margin-bottom: 16px; }
.bcard-shades { font-family: 'Special Elite', cursive; font-size: 11px; color: #5A7090; text-align: center; margin-top: 8px; }
.bcard-atc {
  display: block; width: 100%; text-align: center;
  font-family: 'Oswald', sans-serif; font-weight: 700;
  font-size: 14px; letter-spacing: 0.18em; text-transform: uppercase;
  padding: 14px 24px; border-radius: 2px;
  border: 2px solid rgba(255,255,255,0.08);
  cursor: pointer; transition: opacity 0.15s;
}
.bcard-atc:hover { opacity: 0.85; }
.bcard-atc:disabled { opacity: 0.6; cursor: not-allowed; }
@media (max-width: 640px) {
  .bcard-body  { padding: 16px; }
  .bcard-atc   { font-size: 12px; letter-spacing: 0.1em; padding: 12px 16px; }
  .bcard-name  { font-size: 17px; margin-bottom: 3px; }
  .bcard-sub   { display: none; }
  .bcard-desc  { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 13px; margin-bottom: 12px; }
  .bcard-was-row { flex-direction: column; gap: 2px; margin-bottom: 6px; }
  .bcard-price { font-size: 28px; margin-bottom: 12px; }
  .bcard-shades { display: none; }
}

/* ── Individual product cards ── */
.pcard-body  { padding: 18px; flex: 1; display: flex; flex-direction: column; }
.pcard-name  { font-family: 'Alfa Slab One', serif; font-size: 18px; color: #1B2E5E; margin-bottom: 6px; }
.pcard-desc  { font-family: 'DM Sans', sans-serif; font-size: 13px; color: #667; line-height: 1.5; margin-bottom: 14px; flex: 1; }
.pcard-foot  { display: flex; align-items: center; justify-content: space-between; }
.pcard-was   { font-family: 'Oswald', sans-serif; font-size: 12px; color: #AAA; text-decoration: line-through; }
.pcard-price { font-family: 'Alfa Slab One', serif; font-size: 26px; color: #BE1E2D; }
.pcard-btn   {
  background: #1B2E5E; color: #FDF8EF;
  font-family: 'Oswald', sans-serif; font-weight: 700;
  font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase;
  padding: 10px 16px; border-radius: 2px; border: none;
  cursor: pointer; display: inline-block; text-decoration: none;
  transition: opacity 0.15s;
}
.pcard-btn:hover { opacity: 0.82; }
.pcard-btn-red { background: #BE1E2D; }
@media (max-width: 640px) {
  .pcard-body  { padding: 14px; }
  .pcard-name  { font-size: 15px; margin-bottom: 4px; }
  .pcard-desc  { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 12px; margin-bottom: 10px; }
  .pcard-foot  { flex-direction: column; align-items: stretch; gap: 10px; }
  .pcard-btn   { display: block; text-align: center; padding: 11px; font-size: 11px; white-space: nowrap; letter-spacing: 0.1em; }
}

/* ── Grids ── */
.pgrid-3 { display: grid; grid-template-columns: repeat(3,1fr); gap: 28px; max-width: 1200px; margin: 0 auto; }
.pgrid-4 { display: grid; grid-template-columns: repeat(4,1fr); gap: 24px; max-width: 1200px; margin: 0 auto; }
.pimg { width: 100%; aspect-ratio: 1/1; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.pimg img { width: 100%; height: 100%; object-fit: cover; display: block; }
@media (max-width: 1024px) {
  .pgrid-3, .pgrid-4 { grid-template-columns: repeat(2,1fr); gap: 20px; }
}
@media (max-width: 640px) {
  .pgrid-3, .pgrid-4 { gap: 12px; }
}
@media (max-width: 400px) {
  .pgrid-3, .pgrid-4 { gap: 8px; }
}

/* ── Countdown ── */
.countdown-inner { display: inline-flex; align-items: stretch; overflow: hidden; }
.cd-col { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 22px 32px; border-right: 2px solid rgba(255,255,255,0.09); }
.cd-col:last-child { border-right: none; }
.cd-num { font-family: 'Alfa Slab One', serif; font-size: 68px; color: #FDF8EF; line-height: 1; min-width: 80px; text-align: center; }
.cd-lbl { font-family: 'Oswald', sans-serif; font-size: 10px; font-weight: 700; letter-spacing: 0.3em; color: #F0B030; text-transform: uppercase; margin-top: 6px; }
.cd-sep { display: flex; align-items: center; padding: 0 6px; padding-bottom: 26px; flex-shrink: 0; }
.cd-sep-colon { font-family: 'Alfa Slab One', serif; font-size: 52px; color: #BE1E2D; }
@media (max-width: 640px) {
  .countdown-section { padding: 36px 16px !important; }
  .countdown-inner { display: flex; width: 100%; }
  .cd-col { flex: 1; padding: 12px 6px; }
  .cd-num { font-size: clamp(24px,9vw,42px); min-width: 0; }
  .cd-lbl { font-size: 7px; letter-spacing: 0.1em; }
  .cd-sep { padding: 0 2px; padding-bottom: 14px; }
  .cd-sep-colon { font-size: clamp(18px,6vw,32px); }
}

/* ── Shark trust bar ── */
.shark-bar-inner {
  display: grid;
  grid-template-columns: 1fr 1px 1fr 1px 1fr 1px 1fr;
  align-items: center;
  justify-items: center;
  gap: 0;
  max-width: 900px;
  margin: 0 auto;
}
.shark-div { width: 1px; height: 28px; background: rgba(255,255,255,0.15); display: block; }
@media (max-width: 640px) {
  .shark-bar-inner {
    display: flex; flex-wrap: wrap;
    justify-content: center; align-items: center;
    gap: 12px 20px;
  }
  .shark-div { display: none; }
}

/* ── Polaroids ── */
.polaroids { display: flex; gap: 10px; justify-content: center; align-items: center; max-width: 1100px; margin: 0 auto 16px; }
.pol { flex: 1; max-width: 200px; background: #fff; padding: 8px 8px 32px; box-shadow: 4px 6px 24px rgba(0,0,0,0.55); min-width: 0; }
@media (max-width: 640px) {
  .polaroid-section { overflow: visible !important; }
  .polaroids {
    flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch;
    justify-content: flex-start; padding: 12px 0 20px; padding-left: 20px !important;
    scroll-snap-type: x mandatory; width: 100vw; margin-left: 0;
  }
  .pol { min-width: calc(100vw - 80px) !important; max-width: calc(100vw - 80px) !important; flex-shrink: 0; scroll-snap-align: start; margin-right: 12px; }
  .marquee-track { animation-duration: 52s !important; }
}

/* ── Tagline split ── */
@media (max-width: 768px) {
  .tagline-split > div { flex-direction: column !important; }
  .tagline-split > div > div:first-child { order: 2; text-align: center; align-items: center !important; }
  .tagline-split > div > div:first-child a { align-self: center; }
  .tagline-img { order: 1 !important; border-left: none !important; border-bottom: 1px solid rgba(255,255,255,0.08) !important; min-height: 0 !important; aspect-ratio: 1/1; width: 100%; }
}

/* ── Urgency bar ── */
.urgency-bar { display: none; }
@media (max-width: 768px) {
  .urgency-bar {
    display: flex; position: fixed; bottom: 0; left: 0; right: 0;
    background: #BE1E2D; padding: 12px 20px;
    align-items: center; justify-content: space-between; gap: 12px;
    z-index: 9999; box-shadow: 0 -3px 20px rgba(0,0,0,0.35);
    border-top: 2px solid rgba(240,176,48,0.5);
  }
  .urgency-bar-text { font-family: 'Oswald', sans-serif; font-weight: 700; font-size: 13px; letter-spacing: 0.1em; color: #FDF8EF; text-transform: uppercase; line-height: 1.3; }
  .urgency-bar-cta { background: #F0B030; color: #1B2E5E; font-family: 'Oswald', sans-serif; font-weight: 700; font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase; padding: 9px 18px; border-radius: 2px; text-decoration: none; white-space: nowrap; flex-shrink: 0; }
  body { padding-bottom: 60px; }
}

a { transition: opacity 0.15s; }
a:hover { opacity: 0.82; }
