.storefront-hero { background: radial-gradient(circle at 85% 15%, #f5cc8355, transparent 40%), linear-gradient(120deg, #fff8ee, #fff1f6); padding: 44px 0; border-bottom: 1px solid #eddae0; }
.storefront-hero-inner { display: grid; grid-template-columns: 1.7fr 1fr; gap: 44px; align-items: center; }
.storefront-eyebrow { color: #8b1949; font-weight: 700; letter-spacing: .06em; margin: 0 0 12px; }
.storefront-hero h1 { font-size: clamp(2rem, 3.8vw, 3.4rem) !important; line-height: 1.15; color: #190e48 !important; margin: 0 0 18px; }
.storefront-hero-description { max-width: 650px; color: #443d52; font-size: 1.05rem; line-height: 1.65; }
.storefront-primary-action, .storefront-secondary-action { display: inline-flex; align-items: center; justify-content: center; padding: 13px 20px; border-radius: 10px; font-weight: 700; margin: 8px 10px 0 0; text-decoration: none !important; }
.storefront-primary-action { color: #fff !important; background: #8b1949; }
.storefront-primary-action:hover { background: #6d1038; }
.storefront-secondary-action { color: #5d2445 !important; border: 1px solid #d4a7b9; background: #fff8; }
.storefront-offer { background: #fff; border: 1px solid #ebd6d5; border-radius: 18px; padding: 28px; display: grid; gap: 12px; box-shadow: 0 8px 24px #64152a0d; color: #483c47; }
.storefront-offer strong { font-size: clamp(1.8rem, 3vw, 2.5rem); color: #8b1949; line-height: 1.25; }
.catalogue-intro { padding: 22px 24px; background: #fff6ed; border-bottom: 1px solid #ead5d0; }
.catalogue-intro h1 { margin: 0 0 6px; font-size: 1.7rem !important; color: #190e48 !important; }
.catalogue-intro p { margin: 0; font-size: .95rem; color: #514656; }
.product_row[id], .combo-card { scroll-margin-top: 170px; }
:where(a, button, input, select, textarea):focus-visible { outline: 3px solid #2563eb !important; outline-offset: 3px; }
@media (max-width: 991.98px) {
  #floatingDockBottomLeft, #floatingDockBottomRight, #floatingDockRightSocial, #grFloatingBadge { display: none !important; }
  .mobile-bottom-dock { padding-bottom: env(safe-area-inset-bottom); }
  .storefront-hero { padding: 26px 0; }
  .storefront-hero-inner { grid-template-columns: 1fr; gap: 24px; }
  .storefront-offer { padding: 20px; }
  .storefront-offer strong { font-size: 1.9rem; }
  .catalogue-intro { padding: 16px; }
  .catalogue-intro h1 { font-size: 1.35rem !important; }
  .pricelist_table { width: 100% !important; min-width: 0 !important; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  #crackers-fireworks-canvas { display: none !important; }
}

@media (max-width: 991.98px) {
 .mobile-header-phone { display: none !important; }
 .mobile-brand-title { font-size: 15px !important; display: block !important; max-height: none !important; white-space: normal !important; }
}
@media (max-width: 575.98px) {
 .pricelist_table .product_image, .pricelist_table thead th:first-child { display: none !important; }
 .pricelist_table th, .pricelist_table td { padding-left: 4px !important; padding-right: 4px !important; }
}
