@charset "utf-8";/*
 * BISTRO BUDDY site polish — 2026-08-01
 *
 * Forward-only visual layer loaded after the repaired parent and child CSS.
 * It intentionally owns no header offsets, logo sizing, global full-width
 * geometry, ticker behavior, image routing, or menu records. News media frames
 * are direct-child scoped to verified Joomla category/article markup only.
 */

html.bb-polish-v3 {
  --bb-polish-orange: #ef7724;
  --bb-polish-orange-deep: #c94f08;
  --bb-polish-orange-soft: #ff9a44;
  --bb-polish-blue: #2f6fbd;
  --bb-polish-blue-soft: #7ca4dd;
  --bb-polish-green: #19a974;
  --bb-polish-green-bright: #3ee6a8;
  --bb-polish-green-deep: #08745a;
  --bb-polish-ink: #25243d;
  --bb-polish-night: #18181b;
  --bb-polish-focus: #ffd166;
  --bb-polish-shadow: 0 16px 38px rgba(37, 36, 61, 0.16);
}

/* Header paint only. Existing repaired CSS remains the sole geometry owner. */
html.bb-polish-v3 body.site #sp-header,
html.bb-polish-v3 body.site .header-wrapper {
  color: #fff !important;
  background:
    radial-gradient(circle at 6% 0%, rgba(239, 119, 36, 0.16), transparent 30%),
    radial-gradient(circle at 94% 100%, rgba(47, 111, 189, 0.2), transparent 34%),
    linear-gradient(135deg, #25252a 0%, #19191d 56%, #24243a 100%) !important;
  border-bottom-color: rgba(239, 119, 36, 0.78) !important;
  box-shadow: 0 9px 24px rgba(0, 0, 0, 0.26) !important;
}

/* Desktop navigation: preserve the approved geometry and replace the heavy active
   block with a quiet animated underline. */
@media (min-width: 1200px) {
  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li > a,
  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li > span {
    position: relative !important;
    color: rgba(255, 255, 255, 0.94) !important;
    background: transparent !important;
    box-shadow: none !important;
    transition:
      color 0.18s ease,
      text-shadow 0.18s ease !important;
  }

  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li > a::after {
    content: "" !important;
    position: absolute !important;
    right: 18% !important;
    bottom: 6px !important;
    left: 18% !important;
    height: 3px !important;
    border-radius: 999px !important;
    pointer-events: none !important;
    background: linear-gradient(90deg, var(--bb-polish-orange), var(--bb-polish-blue)) !important;
    transform: scaleX(0) !important;
    transform-origin: center !important;
    transition: transform 0.18s ease !important;
  }

  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li:hover > a,
  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li:focus-within > a {
    color: #fff !important;
    background: transparent !important;
    box-shadow: none !important;
    text-shadow: 0 0 14px rgba(255, 255, 255, 0.28) !important;
  }

  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li:hover > a::after,
  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li:focus-within > a::after {
    transform: scaleX(1) !important;
  }

  html.bb-polish-v3 body.site #sp-menu .sp-dropdown .sp-dropdown-inner {
    color: #fff !important;
    background:
      linear-gradient(145deg, rgba(239, 119, 36, 0.1), rgba(47, 111, 189, 0.14)),
      #202025 !important;
    border: 1px solid rgba(124, 164, 221, 0.34) !important;
    border-top: 3px solid var(--bb-polish-orange) !important;
    border-radius: 14px !important;
    box-shadow: 0 20px 46px rgba(0, 0, 0, 0.34) !important;
    animation: bbPolishDropdownIn 0.18s ease-out both !important;
  }

  html.bb-polish-v3 body.site #sp-menu .sp-dropdown li.sp-menu-item > a {
    border-radius: 8px !important;
    color: rgba(255, 255, 255, 0.92) !important;
    transition:
      color 0.16s ease,
      background-color 0.16s ease !important;
  }

  html.bb-polish-v3 body.site #sp-menu .sp-dropdown li.sp-menu-item:hover > a,
  html.bb-polish-v3 body.site #sp-menu .sp-dropdown li.sp-menu-item:focus-within > a,
  html.bb-polish-v3 body.site #sp-menu .sp-dropdown li.sp-menu-item.active > a {
    color: #fff !important;
    background: linear-gradient(
      90deg,
      rgba(239, 119, 36, 0.9),
      rgba(47, 111, 189, 0.78)
    ) !important;
  }
}

/* Offcanvas color system and one final compact mobile typography authority. */
html.bb-polish-v3 body .offcanvas-menu {
  color: #fff !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(47, 111, 189, 0.3), transparent 35%),
    radial-gradient(circle at 0% 100%, rgba(239, 119, 36, 0.24), transparent 37%),
    linear-gradient(180deg, #242429, #17171a) !important;
  border-left-color: rgba(239, 119, 36, 0.74) !important;
  box-shadow: -18px 0 48px rgba(0, 0, 0, 0.38) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu > li {
  border-color: rgba(255, 255, 255, 0.08) !important;
  border-radius: 11px !important;
  background: rgba(255, 255, 255, 0.035) !important;
  transition:
    background-color 0.18s ease,
    box-shadow 0.18s ease !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu > li:hover,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu > li:focus-within,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu > li.active,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent-open {
  background: linear-gradient(
    135deg,
    rgba(239, 119, 36, 0.24),
    rgba(47, 111, 189, 0.24)
  ) !important;
  box-shadow: inset 3px 0 0 var(--bb-polish-orange) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu > li > ul {
  border-radius: 10px !important;
  background: rgba(5, 8, 15, 0.26) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu > li > ul > li {
  border-left-color: rgba(124, 164, 221, 0.4) !important;
  background: rgba(124, 164, 221, 0.05) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu > li > ul > li:hover,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu > li > ul > li:focus-within {
  border-left-color: var(--bb-polish-orange) !important;
  background: rgba(239, 119, 36, 0.12) !important;
}

@media (max-width: 1199.98px) {
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu > li > a,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu > li > span {
    min-height: 44px !important;
    padding: 9px 48px 9px 13px !important;
    font-size: clamp(17px, 4vw, 21px) !important;
    font-weight: 850 !important;
    line-height: 1.25 !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.62) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu li li > a,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu li li > span {
    min-height: 40px !important;
    padding: 8px 46px 8px 13px !important;
    font-size: clamp(14px, 3.35vw, 15px) !important;
    font-weight: 740 !important;
    line-height: 1.35 !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner .menu-toggler {
    right: 0 !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
  }
}

/* Search and location link collections restored from the approved V28.2 look. */
html.bb-polish-v3 body #sp-trending-searches,
html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud {
  position: relative !important;
  margin-block: clamp(20px, 3vw, 42px) !important;
  padding: clamp(20px, 3vw, 34px) !important;
  border: 1px solid rgba(47, 111, 189, 0.18) !important;
  border-radius: 22px !important;
  background:
    radial-gradient(circle at 10% 5%, rgba(239, 119, 36, 0.14), transparent 34%),
    radial-gradient(circle at 90% 95%, rgba(47, 111, 189, 0.15), transparent 36%),
    linear-gradient(145deg, #fff, #f6f9ff) !important;
  box-shadow: var(--bb-polish-shadow) !important;
  overflow: clip !important;
}

html.bb-polish-v3 body #sp-trending-searches::before,
html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud::before {
  content: "" !important;
  position: absolute !important;
  inset: -60% -20% !important;
  pointer-events: none !important;
  background: linear-gradient(
    110deg,
    transparent 35%,
    rgba(255, 255, 255, 0.75) 49%,
    transparent 63%
  ) !important;
  animation: bbPolishSearchSweep 8s ease-in-out infinite !important;
}

html.bb-polish-v3 body #sp-trending-searches :is(h1, h2, h3, h4, h5, h6),
html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud :is(h1, h2, h3, h4, h5, h6) {
  position: relative !important;
  margin: 0 0 16px !important;
  color: var(--bb-polish-ink) !important;
  font-size: clamp(24px, 3vw, 40px) !important;
  font-weight: 950 !important;
  text-align: center !important;
  letter-spacing: -0.03em !important;
}

html.bb-polish-v3 body #sp-trending-searches a,
html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud a {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  min-height: 40px !important;
  margin: 5px !important;
  padding: 8px 13px !important;
  border: 1px solid rgba(255, 255, 255, 0.66) !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--bb-polish-orange), var(--bb-polish-orange-deep)) !important;
  box-shadow: 0 8px 18px rgba(239, 119, 36, 0.22) !important;
  font-size: clamp(12px, 1vw, 14px) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    filter 0.2s ease !important;
}

html.bb-polish-v3 body #sp-trending-searches a:nth-of-type(2n),
html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud a:nth-of-type(2n) {
  background: linear-gradient(135deg, var(--bb-polish-blue), var(--bb-polish-blue-soft)) !important;
  box-shadow: 0 8px 18px rgba(47, 111, 189, 0.22) !important;
}

html.bb-polish-v3 body #sp-trending-searches a:nth-of-type(3n),
html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud a:nth-of-type(3n) {
  background: linear-gradient(135deg, #25243d, #494665) !important;
}

html.bb-polish-v3 body #sp-trending-searches a:hover,
html.bb-polish-v3 body #sp-trending-searches a:focus-visible,
html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud a:hover,
html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud a:focus-visible {
  transform: translateY(-3px) scale(1.025) !important;
  filter: saturate(1.12) brightness(1.05) !important;
  box-shadow: 0 15px 28px rgba(37, 36, 61, 0.23) !important;
}

html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud {
  margin-block: 18px !important;
  padding: clamp(18px, 2.5vw, 30px) !important;
  border: 1px solid rgba(124, 164, 221, 0.24) !important;
  border-radius: 20px !important;
  background: linear-gradient(145deg, rgba(239, 119, 36, 0.07), rgba(47, 111, 189, 0.08)) !important;
  box-shadow: 0 14px 34px rgba(37, 36, 61, 0.09) !important;
}

html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud > :is(h1, h2, h3, h4, h5, h6) {
  margin: 0 0 14px !important;
  color: var(--bb-polish-ink) !important;
  font-weight: 950 !important;
  letter-spacing: -0.02em !important;
}

html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud ul {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud li {
  margin: 0 !important;
  padding: 0 !important;
}

html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 40px !important;
  padding: 8px 13px !important;
  border: 1px solid rgba(47, 111, 189, 0.18) !important;
  border-radius: 12px !important;
  color: #254c7e !important;
  background: #fff !important;
  box-shadow: 0 6px 14px rgba(37, 36, 61, 0.08) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  transition:
    transform 0.18s ease,
    box-shadow 0.18s ease,
    color 0.18s ease,
    background 0.18s ease !important;
}

html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud li:nth-child(4n + 1) a {
  color: #a94300 !important;
  background: rgba(239, 119, 36, 0.1) !important;
}

html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud li:nth-child(4n + 2) a {
  color: #235d9c !important;
  background: rgba(47, 111, 189, 0.1) !important;
}

html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud li:nth-child(4n + 3) a {
  color: #0b715e !important;
  background: rgba(35, 180, 145, 0.1) !important;
}

html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud li:nth-child(4n) a {
  color: #6b429d !important;
  background: rgba(130, 83, 185, 0.1) !important;
}

html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud a:hover,
html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud a:focus-visible {
  color: #fff !important;
  background: linear-gradient(135deg, var(--bb-polish-orange), var(--bb-polish-blue)) !important;
  box-shadow: 0 13px 24px rgba(37, 36, 61, 0.17) !important;
  transform: translateY(-2px) !important;
}

/* Footer legal/menu links only; footer layout and module order stay unchanged. */
html.bb-polish-v3 body #sp-footer ul.menu > li > a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 34px !important;
  padding: 7px 10px !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border-radius: 9px !important;
  color: #eef4ff !important;
  background: rgba(255, 255, 255, 0.055) !important;
  font-size: 11px !important;
  font-weight: 750 !important;
  text-decoration: none !important;
  transition:
    transform 0.18s ease,
    background 0.18s ease,
    border-color 0.18s ease !important;
}

html.bb-polish-v3 body #sp-footer ul.menu > li:nth-child(3n + 1) > a {
  border-color: rgba(239, 119, 36, 0.42) !important;
}

html.bb-polish-v3 body #sp-footer ul.menu > li:nth-child(3n + 2) > a {
  border-color: rgba(124, 164, 221, 0.48) !important;
}

html.bb-polish-v3 body #sp-footer ul.menu > li:nth-child(3n) > a {
  border-color: rgba(62, 207, 167, 0.42) !important;
}

html.bb-polish-v3 body #sp-footer ul.menu > li > a:hover,
html.bb-polish-v3 body #sp-footer ul.menu > li > a:focus-visible {
  border-color: #fff !important;
  background: linear-gradient(135deg, rgba(239, 119, 36, 0.3), rgba(47, 111, 189, 0.3)) !important;
  transform: translateY(-2px) !important;
}

/* Consistent keyboard focus without changing pointer interaction or geometry. */
html.bb-polish-v3 body.site :is(a, button, input, select, textarea):focus-visible {
  outline: 3px solid var(--bb-polish-focus) !important;
  outline-offset: 3px !important;
}

@keyframes bbPolishSearchSweep {
  0%,
  100% {
    transform: translateX(-55%);
  }
  50% {
    transform: translateX(55%);
  }
}

@media (max-width: 767.98px) {
  html.bb-polish-v3 body #sp-trending-searches,
  html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud,
  html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud {
    padding: 16px 10px !important;
    border-radius: 16px !important;
  }

  html.bb-polish-v3 body #sp-trending-searches a,
  html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud a,
  html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud a {
    min-height: 44px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html.bb-polish-v3 body #sp-trending-searches::before,
  html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud::before {
    animation: none !important;
  }

  html.bb-polish-v3 body #sp-trending-searches a,
  html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud a,
  html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud a,
  html.bb-polish-v3 body #sp-footer ul.menu > li > a {
    transition: none !important;
  }
}

/* The optional Helix offcanvas launcher remains present on some desktop
   layouts, so its controls and essential glyph paint stay complete at every
   width without changing the approved desktop megamenu. */
html.bb-polish-v3 body :is(#offcanvas-toggler, .offcanvas-toggler, .offcanvas-toggler-right),
html.bb-polish-v3 body .offcanvas-menu .close-offcanvas {
  display: inline-grid !important;
  place-items: center !important;
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 !important;
  touch-action: manipulation !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner {
  max-height: 100dvh !important;
  padding-bottom: max(18px, env(safe-area-inset-bottom)) !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .menu-toggler {
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  touch-action: manipulation !important;
}

@media (min-width: 1200px) {
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li {
    margin-bottom: 8px !important;
    border: 1px solid rgba(255, 255, 255, 0.11) !important;
    border-left: 4px solid var(--bb-polish-green-bright) !important;
    border-radius: 14px !important;
    background: linear-gradient(110deg, rgba(25, 169, 116, 0.17), transparent 56%), rgba(255, 255, 255, 0.04) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li > :is(a, span) {
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .bb-menu-glyph {
    display: inline-grid !important;
    flex: 0 0 32px !important;
    place-items: center !important;
    width: 32px !important;
    height: 32px !important;
    border: 1px solid rgba(255, 255, 255, 0.17) !important;
    border-radius: 10px !important;
    color: #fff !important;
    background: linear-gradient(145deg, rgba(62, 230, 168, 0.23), rgba(47, 111, 189, 0.23)) !important;
    font-size: 15px !important;
    line-height: 1 !important;
    transition: transform 0.2s ease, filter 0.2s ease !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li li > :is(a, span) > .bb-menu-glyph {
    flex-basis: 25px !important;
    width: 25px !important;
    height: 25px !important;
    font-size: 12px !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li > :is(a, span):hover > .bb-menu-glyph,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li > :is(a, span):focus-visible > .bb-menu-glyph {
    filter: brightness(1.2) saturate(1.15) !important;
    transform: rotate(-8deg) scale(1.1) !important;
  }
}

html.bb-polish-v3 body.offcanvas-active .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li {
  animation: bbGameMenuCardIn 0.28s ease-out both !important;
}

html.bb-polish-v3 body.offcanvas-active .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:nth-child(2) { animation-delay: 0.025s !important; }
html.bb-polish-v3 body.offcanvas-active .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:nth-child(3) { animation-delay: 0.05s !important; }
html.bb-polish-v3 body.offcanvas-active .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:nth-child(4) { animation-delay: 0.075s !important; }
html.bb-polish-v3 body.offcanvas-active .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:nth-child(n + 5) { animation-delay: 0.1s !important; }

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li.menu-parent-open > ul.menu-child {
  animation: bbGameSubmenuIn 0.2s ease-out both !important;
}

@keyframes bbGameMenuCardIn {
  from { opacity: 0; transform: translateX(8px); }
  to { opacity: 1; transform: translateX(0); }
}

@keyframes bbGameSubmenuIn {
  from { opacity: 0; transform: translateY(-4px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Homepage-only return to SP Page Builder's known-good responsive content frame.
   Ticker, hero, Content Factory News Flash, app rows and every other route remain
   full bleed exactly as the repaired template defines them. */
html.bb-polish-v3 body.itemid-4418 .sp-page-builder .page-content > :is(
  .bb-language-rounded-section,
  .bb-rounded-gradient-section,
  .bb-deals-original-rounded-reveal,
  #section-id-1699279066292,
  #section-id-1751653809676
) > .sppb-row-container {
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: auto !important;
}

/* Site Polish 1.3.2: keep the hero section background full width while returning
   its FOOD & DRINK NETWORK, chef image and search row to a centered content
   frame. The exact homepage item and known-good section ID prevent this from
   changing any other page, hero, ticker, scroller or global width rule. */
html.bb-polish-v3 body.itemid-4418 .sp-page-builder .page-content
  > #section-id-1729815227097.bb-critical-hero
  > .sppb-row-container {
  width: calc(100% - 24px) !important;
  max-width: 100% !important;
  margin-inline: auto !important;
}

@media (min-width: 576px) {
  html.bb-polish-v3 body.itemid-4418 .sp-page-builder .page-content > :is(.bb-language-rounded-section, .bb-rounded-gradient-section, .bb-deals-original-rounded-reveal, #section-id-1699279066292, #section-id-1751653809676) > .sppb-row-container {
    max-width: 540px !important;
  }

  html.bb-polish-v3 body.itemid-4418 .sp-page-builder .page-content
    > #section-id-1729815227097.bb-critical-hero
    > .sppb-row-container {
    max-width: 540px !important;
  }
}

@media (min-width: 768px) {
  html.bb-polish-v3 body.itemid-4418 .sp-page-builder .page-content > :is(.bb-language-rounded-section, .bb-rounded-gradient-section, .bb-deals-original-rounded-reveal, #section-id-1699279066292, #section-id-1751653809676) > .sppb-row-container {
    max-width: 720px !important;
  }

  html.bb-polish-v3 body.itemid-4418 .sp-page-builder .page-content
    > #section-id-1729815227097.bb-critical-hero
    > .sppb-row-container {
    max-width: 720px !important;
  }
}

@media (min-width: 992px) {
  html.bb-polish-v3 body.itemid-4418 .sp-page-builder .page-content > :is(.bb-language-rounded-section, .bb-rounded-gradient-section, .bb-deals-original-rounded-reveal, #section-id-1699279066292, #section-id-1751653809676) > .sppb-row-container {
    max-width: 960px !important;
  }

  html.bb-polish-v3 body.itemid-4418 .sp-page-builder .page-content
    > #section-id-1729815227097.bb-critical-hero
    > .sppb-row-container {
    max-width: 960px !important;
  }
}

@media (min-width: 1200px) {
  html.bb-polish-v3 body.itemid-4418 .sp-page-builder .page-content > :is(.bb-language-rounded-section, .bb-rounded-gradient-section, .bb-deals-original-rounded-reveal, #section-id-1699279066292, #section-id-1751653809676) > .sppb-row-container {
    max-width: 1140px !important;
  }

  html.bb-polish-v3 body.itemid-4418 .sp-page-builder .page-content
    > #section-id-1729815227097.bb-critical-hero
    > .sppb-row-container {
    max-width: 1140px !important;
  }
}

@media (min-width: 1400px) {
  html.bb-polish-v3 body.itemid-4418 .sp-page-builder .page-content > :is(.bb-language-rounded-section, .bb-rounded-gradient-section, .bb-deals-original-rounded-reveal, #section-id-1699279066292, #section-id-1751653809676) > .sppb-row-container {
    max-width: 1320px !important;
  }

  html.bb-polish-v3 body.itemid-4418 .sp-page-builder .page-content
    > #section-id-1729815227097.bb-critical-hero
    > .sppb-row-container {
    max-width: 1320px !important;
  }
}

/* Fail-open homepage performance helpers. Only sections already marked by the
   approved homepage export are deferred; the hero and news scroller stay eager. */
html.bb-home-perf-v2 body.itemid-4418 .sp-page-builder .page-content > :is(.bb-perf-defer-section, .bb-lazy-section):not(.bb-perf-loaded):is(.bb-perf-lazy-bg, .bb-lazy-bg),
html.bb-home-perf-v2 body.itemid-4418 .sp-page-builder .page-content > :is(.bb-perf-defer-section, .bb-lazy-section):not(.bb-perf-loaded) :is(.bb-perf-lazy-bg, .bb-lazy-bg) {
  background-image: none !important;
}

html.bb-home-perf-v2 body.itemid-4418 .sp-page-builder .page-content > :is(.bb-perf-defer-section, .bb-lazy-section):not(.bb-perf-loaded) .sppb-addon {
  animation-play-state: paused !important;
}

@supports (contain-intrinsic-size: auto 760px) {
  html.bb-polish-v3 body.itemid-4418 .page-content > .bb-perf-defer-section {
    content-visibility: auto;
    contain-intrinsic-size: auto 850px;
  }

  html.bb-polish-v3 body.itemid-4418 #section-id-1753098798136 {
    contain-intrinsic-size: auto 300px;
  }

  html.bb-polish-v3 body.itemid-4418 #section-id-bbStartFasterProfiles20260705 {
    contain-intrinsic-size: auto 620px;
  }

  html.bb-polish-v3 body.itemid-4418 #section-id-bbDatingEngine20260706 {
    contain-intrinsic-size: auto 900px;
  }
}

/* Segmented mobile navigation restored as paint and spacing only. */
@media (max-width: 1199.98px) {
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu > li {
    margin-bottom: 7px !important;
    border: 1px solid rgba(255, 255, 255, 0.09) !important;
    border-left: 4px solid var(--bb-polish-orange) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu > li:nth-child(3n + 2) {
    border-left-color: var(--bb-polish-blue-soft) !important;
    background: rgba(47, 111, 189, 0.1) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu > li:nth-child(3n) {
    border-left-color: #3ecfa7 !important;
    background: rgba(62, 207, 167, 0.07) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu > li > ul {
    margin: 0 8px 9px !important;
    padding: 6px !important;
  }
}

/* Native animated footer accordion at every width. Existing link nodes, hrefs
   and order are retained; without JavaScript the original flat list remains. */
html.bb-polish-v3 body #sp-footer1 .sp-module-content > ul.menu.bb-footer-accordion-ready {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 9px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

html.bb-polish-v3 body .bb-footer-accordion-group {
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

html.bb-polish-v3 body .bb-footer-accordion-group > details {
  border: 1px solid rgba(124, 164, 221, 0.32) !important;
  border-radius: 13px !important;
  background: rgba(255, 255, 255, 0.055) !important;
}

html.bb-polish-v3 body .bb-footer-accordion-group summary {
  position: relative !important;
  min-height: 48px !important;
  padding: 13px 48px 12px 14px !important;
  color: #fff !important;
  cursor: pointer !important;
  font-weight: 850 !important;
  list-style: none !important;
}

html.bb-polish-v3 body .bb-footer-accordion-group summary::-webkit-details-marker {
  display: none !important;
}

html.bb-polish-v3 body .bb-footer-accordion-group summary::after {
  content: "+" !important;
  position: absolute !important;
  top: 50% !important;
  right: 15px !important;
  width: 26px !important;
  height: 26px !important;
  border-radius: 50% !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--bb-polish-orange), var(--bb-polish-blue)) !important;
  line-height: 26px !important;
  text-align: center !important;
  transform: translateY(-50%) rotate(0deg) !important;
  transition: transform 0.2s ease !important;
}

html.bb-polish-v3 body .bb-footer-accordion-group details[open] > summary::after {
  transform: translateY(-50%) rotate(45deg) !important;
}

html.bb-polish-v3 body .bb-footer-accordion-links {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 7px !important;
  margin: 0 !important;
  padding: 8px 10px 12px !important;
  list-style: none !important;
  animation: bbPolishAccordionIn 0.2s ease-out both !important;
}

html.bb-polish-v3 body .bb-footer-accordion-links > li {
  min-width: 0 !important;
  margin: 0 !important;
}

html.bb-polish-v3 body .bb-footer-accordion-links > li > a {
  display: flex !important;
  align-items: center !important;
  min-height: 42px !important;
  padding: 8px 10px !important;
  border: 1px solid rgba(255, 255, 255, 0.13) !important;
  border-radius: 9px !important;
  color: #eef4ff !important;
  background: rgba(255, 255, 255, 0.045) !important;
  font-size: 12px !important;
  font-weight: 750 !important;
  line-height: 1.3 !important;
  text-decoration: none !important;
}

@media (min-width: 992px) {
  html.bb-polish-v3 body #sp-footer1 .sp-module-content > ul.menu.bb-footer-accordion-ready {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html.bb-polish-v3 body .bb-footer-accordion-group:first-child {
    grid-column: 1 / -1 !important;
  }

  html.bb-polish-v3 body .bb-footer-accordion-group:first-child .bb-footer-accordion-links {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 575.98px) {
  html.bb-polish-v3 body .bb-footer-accordion-links {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* Accessible progressive-enhancement controls. */
html.bb-polish-v3 .bb-skip-link {
  position: fixed !important;
  top: 8px !important;
  left: 8px !important;
  z-index: 100000 !important;
  padding: 11px 16px !important;
  border-radius: 9px !important;
  color: #111 !important;
  background: #ffd166 !important;
  font-weight: 900 !important;
  transform: translateY(-160%) !important;
  transition: transform 0.15s ease !important;
}

html.bb-polish-v3 .bb-skip-link:focus {
  transform: translateY(0) !important;
}

html.bb-polish-v3 .bb-accessibility-tools {
  margin-top: 14px !important;
}

html.bb-polish-v3 .bb-accessibility-tools summary,
html.bb-polish-v3 .bb-pwa-install {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 44px !important;
  padding: 9px 14px !important;
  border: 1px solid rgba(255, 255, 255, 0.28) !important;
  border-radius: 11px !important;
  color: #fff !important;
  background: rgba(255, 255, 255, 0.08) !important;
  cursor: pointer !important;
  font-weight: 850 !important;
}

html.bb-polish-v3 .bb-accessibility-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: 9px !important;
}

html.bb-polish-v3 .bb-accessibility-actions button {
  min-height: 44px !important;
  padding: 8px 12px !important;
  border: 1px solid rgba(124, 164, 221, 0.45) !important;
  border-radius: 10px !important;
  color: #fff !important;
  background: #25243d !important;
  font-weight: 800 !important;
}

html.bb-text-large {
  font-size: 112.5% !important;
}

html.bb-high-contrast body.site :is(a, button, input, select, textarea):focus-visible {
  outline-width: 4px !important;
  outline-color: #ffdc3f !important;
}

html.bb-high-contrast body.site #sp-main-body a:not(.btn) {
  text-decoration: underline !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 3px !important;
}

html.bb-polish-v3 .bb-infinite-status {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@keyframes bbPolishDropdownIn {
  from { opacity: 0; transform: translateY(-5px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes bbPolishAccordionIn {
  from { opacity: 0; transform: translateY(-5px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
  html.bb-polish-v3 body.site #sp-menu .sp-dropdown .sp-dropdown-inner,
  html.bb-polish-v3 body .bb-footer-accordion-links,
  html.bb-polish-v3 body .bb-footer-accordion-group summary::after,
  html.bb-polish-v3 .bb-skip-link {
    animation: none !important;
    transition: none !important;
  }
}

html.bb-reduce-motion *,
html.bb-reduce-motion *::before,
html.bb-reduce-motion *::after {
  scroll-behavior: auto !important;
  animation-duration: 0.01ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: 0.01ms !important;
}

/* --------------------------------------------------------------------------
   Site Polish 1.3 — verified Joomla News surfaces

   The direct-child contract intentionally excludes the custom /news hub,
   every SP Page Builder article addon and the approved Articles Scroller.
   -------------------------------------------------------------------------- */
html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list {
  --bb-news-card-radius: 18px;
  --bb-news-card-pad: clamp(16px, 2vw, 24px);
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] {
  display: flex !important;
  margin-bottom: clamp(18px, 2.2vw, 28px) !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] > .article {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 1px solid rgba(47, 111, 189, 0.17) !important;
  border-radius: var(--bb-news-card-radius) !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(62, 230, 168, 0.08), transparent 28%),
    #fff !important;
  box-shadow: 0 14px 32px rgba(37, 36, 61, 0.1) !important;
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] > .article:hover,
html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] > .article:focus-within {
  border-color: rgba(25, 169, 116, 0.48) !important;
  box-shadow: 0 20px 42px rgba(37, 36, 61, 0.15) !important;
  transform: translateY(-3px) !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] > .article
  > :is(.article-intro-image, .article-featured-video, .article-featured-audio, .article-feature-gallery) {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 16 / 9 !important;
  margin: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: var(--bb-news-card-radius) var(--bb-news-card-radius) 0 0 !important;
  background: linear-gradient(135deg, #e8eef8, #f7fafc) !important;
  box-shadow: none !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] > .article
  > :is(.article-intro-image, .article-featured-video, .article-featured-audio, .article-feature-gallery)
  :is(img, video, iframe, .carousel, .carousel-inner, .carousel-item) {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  border-radius: 0 !important;
  object-fit: cover !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] > .article > .article-body {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  min-width: 0 !important;
  padding: var(--bb-news-card-pad) !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list .article-header h2 {
  margin: 0 0 10px !important;
  color: var(--bb-polish-ink) !important;
  font-size: clamp(20px, 2vw, 28px) !important;
  font-weight: 900 !important;
  line-height: 1.16 !important;
  letter-spacing: -0.025em !important;
  overflow-wrap: anywhere !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list .article-header h2 a {
  color: inherit !important;
  text-decoration: none !important;
  background-image: linear-gradient(90deg, var(--bb-polish-orange), var(--bb-polish-green)) !important;
  background-position: 0 100% !important;
  background-repeat: no-repeat !important;
  background-size: 0 3px !important;
  transition: color 0.18s ease, background-size 0.2s ease !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list .article-header h2 a:hover,
html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list .article-header h2 a:focus-visible {
  color: var(--bb-polish-green-deep) !important;
  background-size: 100% 3px !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list .article-info {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px 10px !important;
  margin: 0 0 13px !important;
  color: #596579 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list .article-info > span {
  margin: 0 !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list .article-introtext {
  margin-top: auto !important;
  color: #3d4655 !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list .featured-article-badge {
  align-self: flex-start !important;
  margin: 12px var(--bb-news-card-pad) 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, var(--bb-polish-orange), var(--bb-polish-green-deep)) !important;
  box-shadow: 0 7px 16px rgba(25, 169, 116, 0.2) !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-article
  #sp-component > .sp-column > .article-details {
  --bb-news-article-pad: clamp(18px, 3.2vw, 38px);
  width: 100% !important;
  max-width: 1180px !important;
  margin-inline: auto !important;
  padding: var(--bb-news-article-pad) !important;
  overflow: visible !important;
  border: 1px solid rgba(47, 111, 189, 0.16) !important;
  border-radius: 22px !important;
  background: #fff !important;
  box-shadow: 0 18px 44px rgba(37, 36, 61, 0.11) !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-article
  #sp-component > .sp-column > .article-details > .article-full-image {
  float: none !important;
  width: calc(100% + (2 * var(--bb-news-article-pad))) !important;
  max-width: none !important;
  margin: calc(-1 * var(--bb-news-article-pad)) calc(-1 * var(--bb-news-article-pad)) clamp(20px, 3vw, 34px) !important;
  overflow: hidden !important;
  border-radius: 22px 22px 0 0 !important;
  background: #eef3f9 !important;
  box-shadow: none !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-article
  #sp-component > .sp-column > .article-details > .article-full-image img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  border-radius: 0 !important;
  object-fit: contain !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-article
  #sp-component > .sp-column > .article-details > .article-header :is(h1, h2) {
  margin: 0 0 12px !important;
  color: var(--bb-polish-ink) !important;
  font-size: clamp(30px, 4.7vw, 56px) !important;
  font-weight: 950 !important;
  line-height: 1.06 !important;
  letter-spacing: -0.04em !important;
  overflow-wrap: anywhere !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-article
  #sp-component > .sp-column > .article-details > .article-info {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px 13px !important;
  margin: 0 0 clamp(18px, 2.5vw, 28px) !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid rgba(47, 111, 189, 0.14) !important;
  color: #596579 !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-article
  #sp-component > .sp-column > .article-details > [itemprop="articleBody"] {
  color: #303947 !important;
  font-size: clamp(17px, 1.2vw, 19px) !important;
  line-height: 1.78 !important;
  overflow-wrap: anywhere !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-article
  #sp-component > .sp-column > .article-details > [itemprop="articleBody"] :is(h2, h3, h4) {
  margin-top: 1.65em !important;
  color: var(--bb-polish-ink) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.025em !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-article
  #sp-component > .sp-column > .article-details > [itemprop="articleBody"] :is(img, video) {
  max-width: 100% !important;
  height: auto !important;
  border-radius: 14px !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-article
  #sp-component > .sp-column > .article-details > [itemprop="articleBody"] iframe {
  max-width: 100% !important;
  border-radius: 14px !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-article
  #sp-component > .sp-column > .article-details > [itemprop="articleBody"] blockquote {
  margin: 1.6em 0 !important;
  padding: 18px 20px !important;
  border-left: 5px solid var(--bb-polish-green) !important;
  border-radius: 0 14px 14px 0 !important;
  background: linear-gradient(135deg, rgba(62, 230, 168, 0.09), rgba(47, 111, 189, 0.08)) !important;
}

/* Custom News Flash cards keep their template layout. Only interaction paint is
   unified, so /news modules and carousel geometry remain untouched. */
html.bb-polish-v3 body.bb-news-surface #sp-component
  :is(.bbnh-card, .bbnh-feature, .bbnh-region-grid > article) {
  border-color: rgba(47, 111, 189, 0.18) !important;
  box-shadow: 0 12px 28px rgba(37, 36, 61, 0.1) !important;
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
}

html.bb-polish-v3 body.bb-news-surface #sp-component
  :is(.bbnh-card, .bbnh-feature, .bbnh-region-grid > article):hover,
html.bb-polish-v3 body.bb-news-surface #sp-component
  :is(.bbnh-card, .bbnh-feature, .bbnh-region-grid > article):focus-within {
  border-color: rgba(25, 169, 116, 0.54) !important;
  box-shadow: 0 18px 38px rgba(37, 36, 61, 0.15) !important;
  transform: translateY(-3px) !important;
}

@media (max-width: 767.98px) {
  html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
    #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  html.bb-polish-v3 body.bb-news-surface.com-content.view-article
    #sp-component > .sp-column > .article-details {
    border-radius: 16px !important;
  }

  html.bb-polish-v3 body.bb-news-surface.com-content.view-article
    #sp-component > .sp-column > .article-details > .article-full-image {
    border-radius: 16px 16px 0 0 !important;
  }
}

/* Mobile command-menu treatment. It decorates Helix's real anchors/togglers;
   no menu node, href, order, hamburger or open/close handler is replaced. */
@media (max-width: 1199.98px) {
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu {
    padding: 5px !important;
    scrollbar-color: var(--bb-polish-green) rgba(255, 255, 255, 0.08) !important;
    scrollbar-width: thin !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li {
    position: relative !important;
    isolation: isolate !important;
    margin-bottom: 9px !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-left: 5px solid var(--bb-polish-orange) !important;
    border-radius: 15px !important;
    background:
      linear-gradient(110deg, rgba(239, 119, 36, 0.16), transparent 52%),
      rgba(255, 255, 255, 0.045) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 8px 18px rgba(0, 0, 0, 0.17) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:nth-child(3n + 2) {
    border-left-color: var(--bb-polish-blue-soft) !important;
    background: linear-gradient(110deg, rgba(47, 111, 189, 0.19), transparent 54%), rgba(255, 255, 255, 0.045) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:nth-child(3n) {
    border-left-color: var(--bb-polish-green-bright) !important;
    background: linear-gradient(110deg, rgba(25, 169, 116, 0.2), transparent 54%), rgba(255, 255, 255, 0.045) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li > :is(a, span) {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: rgba(255, 255, 255, 0.94) !important;
    text-decoration: none !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .bb-menu-glyph {
    display: inline-grid !important;
    flex: 0 0 34px !important;
    place-items: center !important;
    width: 34px !important;
    height: 34px !important;
    margin-left: -3px !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    border-radius: 10px !important;
    color: #fff !important;
    background: linear-gradient(145deg, rgba(62, 230, 168, 0.24), rgba(47, 111, 189, 0.24)) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12), 0 6px 13px rgba(0, 0, 0, 0.18) !important;
    font-size: 17px !important;
    font-style: normal !important;
    line-height: 1 !important;
    transform: translateZ(0) !important;
    transition: transform 0.22s cubic-bezier(0.2, 0.85, 0.3, 1.35), filter 0.2s ease, box-shadow 0.2s ease !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li li > :is(a, span) > .bb-menu-glyph {
    flex-basis: 26px !important;
    width: 26px !important;
    height: 26px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li > :is(a, span):hover > .bb-menu-glyph,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li > :is(a, span):focus-visible > .bb-menu-glyph,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li.menu-parent-open > :is(a, span) > .bb-menu-glyph {
    filter: brightness(1.18) saturate(1.2) !important;
    box-shadow: 0 0 0 3px rgba(62, 230, 168, 0.12), 0 9px 19px rgba(0, 0, 0, 0.25) !important;
    transform: translateY(-1px) rotate(-9deg) scale(1.11) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .bb-menu-pressed > .bb-menu-glyph {
    animation: bbMenuGlyphPress 0.4s cubic-bezier(0.2, 0.8, 0.3, 1.3) both !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .menu-toggler {
    border: 1px solid rgba(62, 230, 168, 0.24) !important;
    border-radius: 11px !important;
    color: #fff !important;
    background: linear-gradient(145deg, rgba(25, 169, 116, 0.28), rgba(47, 111, 189, 0.25)) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
    transition: filter 0.18s ease, box-shadow 0.18s ease !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .menu-toggler:focus-visible {
    outline: 3px solid var(--bb-polish-focus) !important;
    outline-offset: 2px !important;
    box-shadow: 0 0 0 5px rgba(62, 230, 168, 0.16) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li.menu-parent-open > :is(a, span) > .menu-toggler {
    filter: brightness(1.2) !important;
    box-shadow: 0 0 0 3px rgba(62, 230, 168, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu ul.menu-child {
    margin: 2px 8px 10px !important;
    padding: 8px !important;
    border: 1px solid rgba(62, 230, 168, 0.16) !important;
    border-radius: 12px !important;
    background:
      linear-gradient(180deg, rgba(8, 116, 90, 0.12), rgba(7, 10, 17, 0.28)) !important;
    box-shadow: inset 0 1px 12px rgba(0, 0, 0, 0.14) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu ul.menu-child > li {
    margin: 4px 0 !important;
    border-left: 2px solid rgba(62, 230, 168, 0.36) !important;
    border-radius: 9px !important;
    background: rgba(255, 255, 255, 0.035) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu ul.menu-child > li:hover,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu ul.menu-child > li:focus-within {
    border-left-color: var(--bb-polish-green-bright) !important;
    background: linear-gradient(90deg, rgba(25, 169, 116, 0.17), rgba(47, 111, 189, 0.1)) !important;
  }
}

/* Site Polish 1.3.2: warmer mobile navigation. Orange is the visual authority;
   bright green is retained only as a fine border/focus accent. Helix continues
   to own every menu node, href, disclosure and open/close action. */
@media (max-width: 1199.98px) {
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu {
    padding: 6px !important;
    scrollbar-color: var(--bb-polish-orange) rgba(255, 255, 255, 0.08) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:nth-child(3n + 2),
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:nth-child(3n) {
    margin-bottom: 8px !important;
    border: 1px solid rgba(62, 230, 168, 0.2) !important;
    border-left: 5px solid var(--bb-polish-orange) !important;
    border-radius: 13px !important;
    background:
      linear-gradient(105deg, rgba(239, 119, 36, 0.28), rgba(239, 119, 36, 0.08) 58%, transparent 82%),
      rgba(255, 255, 255, 0.035) !important;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.07),
      inset -1px 0 0 rgba(62, 230, 168, 0.06),
      0 7px 16px rgba(0, 0, 0, 0.16) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:hover,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:focus-within,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li.active,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li.menu-parent-open {
    border-color: rgba(62, 230, 168, 0.34) !important;
    border-left-color: var(--bb-polish-orange-soft) !important;
    background:
      linear-gradient(105deg, rgba(239, 119, 36, 0.4), rgba(201, 79, 8, 0.15) 62%, transparent 88%),
      rgba(255, 255, 255, 0.045) !important;
    box-shadow:
      inset 0 0 0 1px rgba(62, 230, 168, 0.055),
      0 9px 20px rgba(0, 0, 0, 0.2) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li > :is(a, span) {
    min-height: 48px !important;
    padding: 10px 48px 10px 12px !important;
    color: #fff !important;
    font-size: clamp(17px, 4.35vw, 20px) !important;
    font-weight: 880 !important;
    line-height: 1.22 !important;
    letter-spacing: -0.012em !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .bb-menu-glyph {
    border-color: rgba(62, 230, 168, 0.28) !important;
    border-radius: 9px !important;
    background: linear-gradient(145deg, var(--bb-polish-orange-soft), var(--bb-polish-orange-deep)) !important;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.22),
      0 0 0 1px rgba(62, 230, 168, 0.045),
      0 6px 13px rgba(0, 0, 0, 0.2) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li > :is(a, span):hover > .bb-menu-glyph,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li > :is(a, span):focus-visible > .bb-menu-glyph,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li.menu-parent-open > :is(a, span) > .bb-menu-glyph {
    filter: brightness(1.1) saturate(1.08) !important;
    box-shadow:
      0 0 0 2px rgba(62, 230, 168, 0.13),
      0 8px 17px rgba(0, 0, 0, 0.23) !important;
    transform: translateY(-1px) rotate(-3deg) scale(1.05) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .bb-menu-pressed > .bb-menu-glyph {
    animation: bbMenuGlyphPressWarm 0.28s ease-out both !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .menu-toggler {
    border-color: rgba(62, 230, 168, 0.3) !important;
    border-radius: 9px !important;
    background: linear-gradient(145deg, rgba(255, 154, 68, 0.92), rgba(201, 79, 8, 0.92)) !important;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.2),
      0 0 0 1px rgba(62, 230, 168, 0.045) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li.menu-parent-open > :is(a, span) > .menu-toggler {
    filter: brightness(1.08) !important;
    box-shadow:
      0 0 0 2px rgba(62, 230, 168, 0.14),
      inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu ul.menu-child {
    margin: 3px 7px 10px !important;
    padding: 5px 6px !important;
    border: 1px solid rgba(62, 230, 168, 0.18) !important;
    border-left: 3px solid rgba(239, 119, 36, 0.84) !important;
    border-radius: 10px !important;
    background:
      linear-gradient(180deg, rgba(239, 119, 36, 0.1), rgba(7, 10, 17, 0.3)) !important;
    box-shadow: inset 0 1px 12px rgba(0, 0, 0, 0.16) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu ul.menu-child > li {
    margin: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(62, 230, 168, 0.2) !important;
    border-left: 3px solid rgba(239, 119, 36, 0.7) !important;
    border-radius: 6px !important;
    background: rgba(255, 255, 255, 0.025) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu ul.menu-child > li:last-child {
    border-bottom-color: transparent !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu ul.menu-child > li:hover,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu ul.menu-child > li:focus-within,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu ul.menu-child > li.active {
    border-left-color: var(--bb-polish-orange-soft) !important;
    background: linear-gradient(90deg, rgba(239, 119, 36, 0.2), rgba(62, 230, 168, 0.045)) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li li > :is(a, span) {
    min-height: 46px !important;
    padding: 10px 46px 10px 12px !important;
    font-size: clamp(15px, 3.75vw, 16.5px) !important;
    font-weight: 760 !important;
    line-height: 1.32 !important;
    letter-spacing: 0 !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li li li > :is(a, span) {
    min-height: 44px !important;
    padding-block: 9px !important;
    font-size: clamp(14px, 3.45vw, 15px) !important;
    font-weight: 700 !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu ul.menu-child ul.menu-child {
    margin: 2px 5px 7px 8px !important;
    border-color: rgba(62, 230, 168, 0.16) !important;
    border-left-color: rgba(62, 230, 168, 0.44) !important;
  }
}

@keyframes bbMenuGlyphPressWarm {
  0% { transform: scale(1) rotate(0); }
  50% { transform: scale(0.94) rotate(4deg); }
  100% { transform: scale(1.04) rotate(-2deg); }
}

@keyframes bbMenuGlyphPress {
  0% { transform: scale(1) rotate(0); }
  45% { transform: scale(0.88) rotate(16deg); }
  100% { transform: scale(1.1) rotate(-7deg); }
}

/* User-invoked PWA command center. This is the package's own native dialog;
   existing Joomla, EasySocial, JBD and commerce overlays are not selected. */
html.bb-polish-v3 .bb-app-tools-launch {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 46px !important;
  margin-top: 12px !important;
  padding: 10px 15px !important;
  border: 1px solid rgba(62, 230, 168, 0.48) !important;
  border-radius: 12px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--bb-polish-green-deep), var(--bb-polish-blue)) !important;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.2) !important;
  cursor: pointer !important;
  font-weight: 900 !important;
}

html.bb-polish-v3 .bb-app-dialog {
  width: min(760px, calc(100vw - 24px)) !important;
  max-width: 760px !important;
  max-height: min(780px, calc(100dvh - 24px)) !important;
  padding: 0 !important;
  overflow: auto !important;
  border: 1px solid rgba(62, 230, 168, 0.44) !important;
  border-radius: 24px !important;
  color: #fff !important;
  background: #171a21 !important;
  box-shadow: 0 34px 90px rgba(0, 0, 0, 0.52) !important;
}

html.bb-polish-v3 .bb-app-dialog::backdrop {
  background: rgba(6, 9, 16, 0.72) !important;
  backdrop-filter: blur(7px) saturate(0.8) !important;
}

html.bb-polish-v3 .bb-app-dialog-shell {
  min-height: 100% !important;
  padding: clamp(18px, 4vw, 34px) !important;
  background:
    radial-gradient(circle at 4% 0%, rgba(239, 119, 36, 0.24), transparent 34%),
    radial-gradient(circle at 100% 100%, rgba(62, 230, 168, 0.2), transparent 36%),
    linear-gradient(145deg, #222633, #13161d) !important;
}

html.bb-polish-v3 .bb-app-dialog header,
html.bb-polish-v3 .bb-app-dialog-brand {
  display: flex !important;
  align-items: flex-start !important;
  gap: 14px !important;
}

html.bb-polish-v3 .bb-app-dialog header {
  justify-content: space-between !important;
}

html.bb-polish-v3 .bb-app-dialog-brand img {
  flex: 0 0 72px !important;
  width: 72px !important;
  height: 72px !important;
  border-radius: 18px !important;
  box-shadow: 0 0 0 4px rgba(62, 230, 168, 0.12), 0 12px 24px rgba(0, 0, 0, 0.28) !important;
  animation: bbAppLogoBreathe 3.8s ease-in-out infinite !important;
}

html.bb-polish-v3 .bb-app-dialog h2 {
  margin: 3px 0 5px !important;
  color: #fff !important;
  font-size: clamp(24px, 4vw, 38px) !important;
  font-weight: 950 !important;
  line-height: 1.05 !important;
  letter-spacing: -0.035em !important;
}

html.bb-polish-v3 .bb-app-dialog p {
  margin: 0 !important;
  color: rgba(238, 246, 255, 0.76) !important;
  line-height: 1.5 !important;
}

html.bb-polish-v3 .bb-app-dialog-close {
  flex: 0 0 46px !important;
  width: 46px !important;
  height: 46px !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  border-radius: 50% !important;
  color: #fff !important;
  background: rgba(255, 255, 255, 0.08) !important;
  font-size: 30px !important;
  line-height: 1 !important;
}

html.bb-polish-v3 .bb-app-online {
  margin: 20px 0 14px !important;
}

html.bb-polish-v3 .bb-app-status {
  display: block !important;
  min-height: 44px !important;
  padding: 11px 14px !important;
  border: 1px solid rgba(124, 164, 221, 0.35) !important;
  border-radius: 12px !important;
  color: #eaf2ff !important;
  background: rgba(47, 111, 189, 0.12) !important;
  font-weight: 750 !important;
}

html.bb-polish-v3 .bb-app-status[data-state="success"] {
  border-color: rgba(62, 230, 168, 0.52) !important;
  background: rgba(25, 169, 116, 0.16) !important;
}

html.bb-polish-v3 .bb-app-status[data-state="warning"] {
  border-color: rgba(255, 209, 102, 0.56) !important;
  background: rgba(255, 209, 102, 0.1) !important;
}

html.bb-polish-v3 .bb-app-shortcuts,
html.bb-polish-v3 .bb-app-actions {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

html.bb-polish-v3 .bb-app-actions {
  margin-top: 14px !important;
}

html.bb-polish-v3 :is(.bb-app-shortcut, .bb-app-action) {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  min-width: 0 !important;
  min-height: 50px !important;
  padding: 10px 13px !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border-radius: 13px !important;
  color: #fff !important;
  background: rgba(255, 255, 255, 0.065) !important;
  cursor: pointer !important;
  font-weight: 850 !important;
  text-align: center !important;
  text-decoration: none !important;
  transition: transform 0.18s ease, border-color 0.18s ease, background 0.18s ease !important;
}

html.bb-polish-v3 :is(.bb-app-shortcut, .bb-app-action):hover,
html.bb-polish-v3 :is(.bb-app-shortcut, .bb-app-action):focus-visible {
  border-color: var(--bb-polish-green-bright) !important;
  background: linear-gradient(135deg, rgba(25, 169, 116, 0.22), rgba(47, 111, 189, 0.2)) !important;
  transform: translateY(-2px) !important;
}

html.bb-polish-v3 .bb-app-action:disabled {
  cursor: not-allowed !important;
  opacity: 0.58 !important;
  transform: none !important;
}

html.bb-polish-v3 .bb-app-action.is-ready {
  border-color: var(--bb-polish-green-bright) !important;
  box-shadow: 0 0 0 3px rgba(62, 230, 168, 0.11) !important;
}

html.bb-polish-v3 .bb-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@keyframes bbAppLogoBreathe {
  0%, 100% { transform: rotate(-2deg) scale(1); }
  50% { transform: rotate(2deg) scale(1.05); }
}

  


::view-transition-old(root) {
  animation: 0.14s ease-out both bbViewOut;
}

::view-transition-new(root) {
  animation: 0.18s ease-out both bbViewIn;
}

@keyframes bbViewOut {
  to { opacity: 0.86; transform: scale(0.996); }
}

@keyframes bbViewIn {
  from { opacity: 0.86; transform: scale(1.004); }
}

@media (max-width: 575.98px) {
  html.bb-polish-v3 .bb-app-dialog {
    width: calc(100vw - 12px) !important;
    max-height: calc(100dvh - 12px) !important;
    border-radius: 18px !important;
  }

  html.bb-polish-v3 .bb-app-dialog-brand img {
    flex-basis: 56px !important;
    width: 56px !important;
    height: 56px !important;
    border-radius: 14px !important;
  }

  html.bb-polish-v3 .bb-app-shortcuts,
  html.bb-polish-v3 .bb-app-actions {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html.bb-polish-v3 body.bb-news-surface #sp-component
    :is(.article-list .article, .bbnh-card, .bbnh-feature, .bbnh-region-grid > article),
  html.bb-polish-v3 body.bb-news-surface #sp-component
    :is(.article-intro-image, .article-feature-gallery, .article-featured-video, .article-featured-audio, .article-full-image, .article-details, .article-header a),
  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li > a::after,
  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent :is(a, span, .sp-dropdown, .sp-dropdown-inner),
  html.bb-polish-v3 body.offcanvas-active .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li.menu-parent-open > ul.menu-child,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .bb-menu-glyph,
  html.bb-polish-v3 .bb-app-dialog-brand img,
  html.bb-polish-v3 :is(.bb-app-shortcut, .bb-app-action) {
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }

  ::view-transition-old(root),
  ::view-transition-new(root) {
    animation: none !important;
  }
}

html.bb281-reduce-motion body .offcanvas-menu .bb-game-menu *,
html.bb281-low-motion body .offcanvas-menu .bb-game-menu *,
html.bb-reduce-motion body .offcanvas-menu .bb-game-menu *,
html.bb281-reduce-motion .bb-app-dialog *,
html.bb281-low-motion .bb-app-dialog *,
html.bb-reduce-motion .bb-app-dialog * {
  animation: none !important;
  transition: none !important;
}

:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.offcanvas-active .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li.menu-parent-open > ul.menu-child,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .bb-menu-pressed > .bb-menu-glyph,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.bb-news-surface #sp-component
  :is(.article-list .article, .article-intro-image, .article-feature-gallery, .article-featured-video, .article-featured-audio, .article-full-image, .article-details, .article-header a, .bbnh-card, .bbnh-feature, .bbnh-region-grid > article),
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.site #sp-menu .sp-megamenu-parent :is(a, span, .sp-dropdown, .sp-dropdown-inner),
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.site #sp-menu .sp-megamenu-parent > li > a::after,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body #sp-trending-searches::before,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  .bb-app-dialog-brand img,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  :is(.bb-app-shortcut, .bb-app-action) {
  animation: none !important;
  transition: none !important;
  transform: none !important;
}

/* Final reduced-motion cascade seal. These selectors deliberately mirror the
   animated rules above so both the operating-system preference and the three
   supported manual/legacy classes win the !important specificity contest.
   Interaction state still changes instantly; only movement is removed. */
@media (prefers-reduced-motion: reduce) {
  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li > a,
  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li > span,
  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li > a::after,
  html.bb-polish-v3 body.site #sp-menu .sp-dropdown .sp-dropdown-inner,
  html.bb-polish-v3 body.site #sp-menu .sp-dropdown li.sp-menu-item > a,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu > li,
  html.bb-polish-v3 body.offcanvas-active .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li.menu-parent-open > ul.menu-child,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .bb-menu-glyph,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .bb-menu-pressed > .bb-menu-glyph,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .menu-toggler,
  html.bb-polish-v3 body #sp-trending-searches::before,
  html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud::before,
  html.bb-polish-v3 body #sp-trending-searches a,
  html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud a,
  html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud a,
  html.bb-polish-v3 body #sp-footer ul.menu > li > a,
  html.bb-polish-v3 body .bb-footer-accordion-links,
  html.bb-polish-v3 body .bb-footer-accordion-links > li > a,
  html.bb-polish-v3 body .bb-footer-accordion-group summary::after,
  html.bb-polish-v3 .bb-skip-link,
  html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
    #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] > .article,
  html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
    #sp-component > .sp-column > .blog > .article-list .article-header h2 a,
  html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
    #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] > .article
    > :is(.article-intro-image, .article-featured-video, .article-featured-audio, .article-feature-gallery),
  html.bb-polish-v3 body.bb-news-surface.com-content.view-article
    #sp-component > .sp-column > .article-details,
  html.bb-polish-v3 body.bb-news-surface #sp-component
    :is(.bbnh-card, .bbnh-feature, .bbnh-region-grid > article),
  html.bb-polish-v3 .bb-app-dialog-brand img,
  html.bb-polish-v3 :is(.bb-app-shortcut, .bb-app-action) {
    animation: none !important;
    transition: none !important;
  }

  html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
    #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] > .article:hover,
  html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog
    #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] > .article:focus-within,
  html.bb-polish-v3 body.bb-news-surface #sp-component
    :is(.bbnh-card, .bbnh-feature, .bbnh-region-grid > article):hover,
  html.bb-polish-v3 body.bb-news-surface #sp-component
    :is(.bbnh-card, .bbnh-feature, .bbnh-region-grid > article):focus-within,
  html.bb-polish-v3 body #sp-trending-searches a:hover,
  html.bb-polish-v3 body #sp-trending-searches a:focus-visible,
  html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud a:hover,
  html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud a:focus-visible,
  html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud a:hover,
  html.bb-polish-v3 body #sp-main-body .bb-polish-location-cloud a:focus-visible,
  html.bb-polish-v3 body #sp-footer ul.menu > li > a:hover,
  html.bb-polish-v3 body #sp-footer ul.menu > li > a:focus-visible,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li > :is(a, span):hover > .bb-menu-glyph,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li > :is(a, span):focus-visible > .bb-menu-glyph,
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li.menu-parent-open > :is(a, span) > .bb-menu-glyph,
  html.bb-polish-v3 :is(.bb-app-shortcut, .bb-app-action):hover,
  html.bb-polish-v3 :is(.bb-app-shortcut, .bb-app-action):focus-visible {
    transform: none !important;
  }

  html.bb-polish-v3::view-transition-old(root),
  html.bb-polish-v3::view-transition-new(root) {
    animation: none !important;
  }
}

:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.site #sp-menu .sp-megamenu-parent > li > a,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.site #sp-menu .sp-megamenu-parent > li > span,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.site #sp-menu .sp-megamenu-parent > li > a::after,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.site #sp-menu .sp-dropdown .sp-dropdown-inner,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.site #sp-menu .sp-dropdown li.sp-menu-item > a,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body .offcanvas-menu .offcanvas-inner ul.menu > li,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.offcanvas-active .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li.menu-parent-open > ul.menu-child,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .bb-menu-glyph,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .bb-menu-pressed > .bb-menu-glyph,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .menu-toggler,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body #sp-trending-searches::before,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body #sp-main-body .bb-polish-search-cloud::before,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body #sp-trending-searches a,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body #sp-main-body .bb-polish-search-cloud a,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body #sp-main-body .bb-polish-location-cloud a,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body #sp-footer ul.menu > li > a,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body .bb-footer-accordion-links,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body .bb-footer-accordion-links > li > a,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body .bb-footer-accordion-group summary::after,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  .bb-skip-link,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] > .article,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list .article-header h2 a,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] > .article
  > :is(.article-intro-image, .article-featured-video, .article-featured-audio, .article-feature-gallery),
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.bb-news-surface.com-content.view-article
  #sp-component > .sp-column > .article-details,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.bb-news-surface #sp-component
  :is(.bbnh-card, .bbnh-feature, .bbnh-region-grid > article),
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  .bb-app-dialog-brand img,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  :is(.bb-app-shortcut, .bb-app-action) {
  animation: none !important;
  transition: none !important;
}

:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] > .article:hover,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.bb-news-surface.com-content.view-category.layout-blog
  #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] > .article:focus-within,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.bb-news-surface #sp-component
  :is(.bbnh-card, .bbnh-feature, .bbnh-region-grid > article):hover,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body.bb-news-surface #sp-component
  :is(.bbnh-card, .bbnh-feature, .bbnh-region-grid > article):focus-within,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body #sp-trending-searches a:hover,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body #sp-trending-searches a:focus-visible,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body #sp-main-body .bb-polish-search-cloud a:hover,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body #sp-main-body .bb-polish-search-cloud a:focus-visible,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body #sp-main-body .bb-polish-location-cloud a:hover,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body #sp-main-body .bb-polish-location-cloud a:focus-visible,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body #sp-footer ul.menu > li > a:hover,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body #sp-footer ul.menu > li > a:focus-visible,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li > :is(a, span):hover > .bb-menu-glyph,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li > :is(a, span):focus-visible > .bb-menu-glyph,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li.menu-parent-open > :is(a, span) > .bb-menu-glyph,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  :is(.bb-app-shortcut, .bb-app-action):hover,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  :is(.bb-app-shortcut, .bb-app-action):focus-visible {
  transform: none !important;
}

:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)::view-transition-old(root),
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)::view-transition-new(root) {
  animation: none !important;
}

/* Production UI refinement — 2026-08-02. This layer is deliberately appended
   so it can refine the installed polish without changing Joomla menu records,
   component templates, event media, routes, or page-builder content. */

/* Desktop main-menu motion and icon feedback. */
@media (min-width: 1200px) {
  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li > :is(a, span) {
    transition: color 0.28s ease, text-shadow 0.28s ease, transform 0.36s cubic-bezier(.2,.8,.2,1) !important;
  }

  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li:hover > :is(a, span),
  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li:focus-within > :is(a, span) {
    transform: translateY(-2px) !important;
  }

  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li > :is(a, span) > :is(i, .fa, .fas, .far, .fab) {
    display: inline-block !important;
    transform-origin: 50% 70% !important;
    transition: color 0.25s ease, filter 0.25s ease, transform 0.48s cubic-bezier(.17,.89,.32,1.49) !important;
  }

  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li:hover > :is(a, span) > :is(i, .fa, .fas, .far, .fab),
  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li:focus-within > :is(a, span) > :is(i, .fa, .fas, .far, .fab) {
    color: var(--bb-polish-orange-soft) !important;
    filter: drop-shadow(0 4px 7px rgba(239,119,36,.42)) !important;
    transform: translateY(-2px) rotate(-8deg) scale(1.16) !important;
  }

  html.bb-polish-v3 body.site #sp-menu .sp-dropdown {
    transform-origin: 50% 0 !important;
  }

  html.bb-polish-v3 body.site #sp-menu .sp-dropdown li.sp-menu-item > a:hover,
  html.bb-polish-v3 body.site #sp-menu .sp-dropdown li.sp-menu-item > a:focus-visible {
    transform: translateX(5px) !important;
  }
}

/* All enhanced location/town modules now share the Connecticut card treatment. */
html.bb-polish-v3 body #sp-main-body .bb-location-quest {
  height: 100% !important;
  border-top: 4px solid var(--bb-polish-orange) !important;
  background: linear-gradient(145deg, rgba(239,119,36,.09), rgba(47,111,189,.1)), #fff !important;
}

html.bb-polish-v3 body #sp-main-body .bb-location-quest .bb-location-count-badge,
html.bb-polish-v3 body #sp-main-body .bb-location-quest .bb-location-reveal {
  border-color: rgba(47,111,189,.34) !important;
  background: linear-gradient(135deg, var(--bb-polish-orange), var(--bb-polish-blue)) !important;
  color: #fff !important;
}

html.bb-polish-v3 body #sp-main-body .bb-location-quest [id="businesslocations"] li a:hover,
html.bb-polish-v3 body #sp-main-body .bb-location-quest [id="businesslocations"] li a:focus-visible {
  color: #fff !important;
  background: linear-gradient(135deg, var(--bb-polish-orange), var(--bb-polish-blue)) !important;
  transform: translateY(-2px) scale(1.015) !important;
}

/* Denser search cloud with alternating lateral motion across visual rows. */
html.bb-polish-v3 body #sp-trending-searches,
html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud {
  margin-block: clamp(12px, 1.7vw, 24px) !important;
  padding: clamp(14px, 1.8vw, 24px) clamp(18px, 2.5vw, 34px) !important;
  line-height: 1.12 !important;
}

html.bb-polish-v3 body #sp-trending-searches :is(h1,h2,h3,h4,h5,h6),
html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud :is(h1,h2,h3,h4,h5,h6) {
  margin-bottom: 10px !important;
}

html.bb-polish-v3 body #sp-trending-searches a,
html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud a {
  min-height: 36px !important;
  margin: 3px 5px !important;
  padding-block: 6px !important;
  animation: bbSearchChipDrift 7.2s ease-in-out infinite alternate !important;
  animation-delay: -0.45s !important;
  will-change: transform !important;
}

html.bb-polish-v3 body #sp-trending-searches a:nth-of-type(even),
html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud a:nth-of-type(even) {
  animation-name: bbSearchChipDriftReverse !important;
}

@keyframes bbSearchChipDrift {
  0%, 100% { transform: translate3d(-3px, 0, 0); }
  50% { transform: translate3d(5px, -1px, 0); }
}

@keyframes bbSearchChipDriftReverse {
  0%, 100% { transform: translate3d(4px, 0, 0); }
  50% { transform: translate3d(-5px, 1px, 0); }
}

/* JBusinessDirectory filters and active selections. */
html.bb-polish-v3 body.com-jbusinessdirectory :is(.search-filter, .search-filters, .filters-container, .filter-container, #search-filter, #search-filters) {
  overflow: hidden !important;
  border: 1px solid rgba(47,111,189,.2) !important;
  border-radius: 18px !important;
  background: linear-gradient(160deg, rgba(239,119,36,.055), rgba(47,111,189,.075)), #fff !important;
  box-shadow: 0 16px 38px rgba(37,36,61,.1) !important;
}

html.bb-polish-v3 body.com-jbusinessdirectory :is(.search-filter, .search-filters, .filters-container, .filter-container, #search-filter, #search-filters) :is(h2,h3,h4,.filter-title) {
  color: var(--bb-polish-ink) !important;
  font-weight: 900 !important;
  letter-spacing: -.015em !important;
}

html.bb-polish-v3 body.com-jbusinessdirectory :is(.filter-criteria, .filter-section, .filter-group, .search-filter-section) {
  padding-block: 13px !important;
  border-bottom-color: rgba(47,111,189,.14) !important;
}

html.bb-polish-v3 body.com-jbusinessdirectory :is(.applied-filter, .applied-filters, .selected-filter, .selected-criteria, .filter-selected) :is(a,button,span),
html.bb-polish-v3 body.com-jbusinessdirectory :is(.search-filter, .search-filters) [class*="selected"] {
  border: 1px solid rgba(239,119,36,.32) !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--bb-polish-orange), var(--bb-polish-blue)) !important;
  box-shadow: 0 7px 15px rgba(47,111,189,.18) !important;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease !important;
}

html.bb-polish-v3 body.com-jbusinessdirectory :is(.search-filter, .search-filters, .filters-container, .filter-container) a:hover,
html.bb-polish-v3 body.com-jbusinessdirectory :is(.search-filter, .search-filters, .filters-container, .filter-container) a:focus-visible {
  color: var(--bb-polish-orange-deep) !important;
  transform: translateX(3px) !important;
}

/* News landing subcategories: full-width, two-column card rows. */
html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog #sp-component > .sp-column > .blog > p:first-child {
  margin: 0 0 18px !important;
  padding: 14px 18px !important;
  border-left: 5px solid var(--bb-polish-orange) !important;
  border-radius: 0 14px 14px 0 !important;
  color: #3b4657 !important;
  background: linear-gradient(90deg, rgba(239,119,36,.1), rgba(47,111,189,.075)) !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog #sp-component > .sp-column > .blog > .cat-children {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px !important;
  width: 100% !important;
  max-width: none !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog #sp-component > .sp-column > .blog > .cat-children > h3 {
  grid-column: 1 / -1 !important;
  margin: 0 !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog #sp-component > .sp-column > .blog > .cat-children > :not(h3) {
  min-width: 0 !important;
  padding: clamp(16px,2vw,24px) !important;
  border: 1px solid rgba(47,111,189,.18) !important;
  border-top: 4px solid var(--bb-polish-orange) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 14px 32px rgba(37,36,61,.1) !important;
}

/* Orange/blue replaces the green accent authority throughout news. */
html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog #sp-component .article-list .article:hover,
html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog #sp-component .article-list .article:focus-within,
html.bb-polish-v3 body.bb-news-surface #sp-component :is(.bbnh-card,.bbnh-feature,.bbnh-region-grid > article):hover,
html.bb-polish-v3 body.bb-news-surface #sp-component :is(.bbnh-card,.bbnh-feature,.bbnh-region-grid > article):focus-within {
  border-color: rgba(47,111,189,.56) !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog #sp-component .article-header h2 a {
  background-image: linear-gradient(90deg, var(--bb-polish-orange), var(--bb-polish-blue)) !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog #sp-component .article-header h2 a:hover,
html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog #sp-component .article-header h2 a:focus-visible {
  color: #235d9c !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog #sp-component .featured-article-badge {
  background: linear-gradient(135deg, var(--bb-polish-orange), var(--bb-polish-blue)) !important;
  box-shadow: 0 7px 16px rgba(47,111,189,.2) !important;
}

html.bb-polish-v3 body.bb-news-surface.com-content.view-article #sp-component [itemprop="articleBody"] blockquote {
  border-left-color: var(--bb-polish-orange) !important;
  background: linear-gradient(135deg, rgba(239,119,36,.09), rgba(47,111,189,.09)) !important;
}

/* Pizza War News route: deterministic card grid even before deferred polish JS
   adds bb-news-surface. This fixes the one route-specific flash/mismatch. */
html.bb-polish-v3 body.itemid-3465.com-content.view-category.layout-blog #sp-component > .sp-column > .blog > .article-list > .row {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: clamp(18px,2.3vw,30px) !important;
  margin: 0 !important;
}

html.bb-polish-v3 body.itemid-3465.com-content.view-category.layout-blog #sp-component > .sp-column > .blog > .article-list > .row > [class*="col-"] {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
}

html.bb-polish-v3 body.itemid-3465.com-content.view-category.layout-blog #sp-component .article-list .article {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  overflow: hidden !important;
  border: 1px solid rgba(47,111,189,.18) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 14px 34px rgba(37,36,61,.11) !important;
}

/* Latest Community Videos: equal card bottoms, stronger styling and motion. */
html.bb-polish-v3 body .center-video-module .mod-es-videos-responsive-grid > .mod-es-videos-responsive-item {
  display: flex !important;
  animation: bbVideoCardIn .55s cubic-bezier(.2,.8,.2,1) both !important;
}

html.bb-polish-v3 body .center-video-module .mod-es-videos-responsive-grid > .mod-es-videos-responsive-item:nth-child(2n) { animation-delay: .06s !important; }
html.bb-polish-v3 body .center-video-module .mod-es-videos-responsive-grid > .mod-es-videos-responsive-item:nth-child(3n) { animation-delay: .12s !important; }

html.bb-polish-v3 body .center-video-module .mod-card {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  min-width: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
  border: 1px solid rgba(47,111,189,.24) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 12px 28px rgba(37,36,61,.12) !important;
  transition: transform .32s cubic-bezier(.2,.8,.2,1), box-shadow .32s ease, border-color .32s ease !important;
}

html.bb-polish-v3 body .center-video-module .mod-card:hover,
html.bb-polish-v3 body .center-video-module .mod-card:focus-within {
  border-color: rgba(239,119,36,.62) !important;
  box-shadow: 0 22px 42px rgba(37,36,61,.18) !important;
  transform: translateY(-7px) rotate(.25deg) !important;
}

html.bb-polish-v3 body .center-video-module .mod-card__context {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
}

html.bb-polish-v3 body .center-video-module .mod-card__context > .g-list-inline {
  margin-top: auto !important;
}

html.bb-polish-v3 body .center-video-module .es-card__ft {
  margin-top: auto !important;
  border-top: 0 !important;
  background: linear-gradient(100deg, #25243d, #2f6fbd) !important;
  color: #fff !important;
}

html.bb-polish-v3 body .center-video-module .mod-card__cover {
  transition: transform .55s cubic-bezier(.2,.8,.2,1), filter .35s ease !important;
}

html.bb-polish-v3 body .center-video-module .mod-card:hover .mod-card__cover,
html.bb-polish-v3 body .center-video-module .mod-card:focus-within .mod-card__cover {
  filter: saturate(1.12) contrast(1.04) !important;
  transform: scale(1.055) !important;
}

@keyframes bbVideoCardIn {
  from { opacity: 0; transform: translateY(18px) scale(.985); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

/* EasySocial community activity feed. Docker/header/profile UI are excluded. */
html.bb-polish-v3 body.com-easysocial.view-dashboard #es :is(.es-stream-item,[data-stream-id],.es-stream-list > li):not(:has(.es-docker)) {
  overflow: hidden !important;
  margin-bottom: 18px !important;
  border: 1px solid rgba(47,111,189,.18) !important;
  border-radius: 18px !important;
  background: linear-gradient(155deg, rgba(255,255,255,.99), rgba(246,249,255,.98)) !important;
  box-shadow: 0 14px 34px rgba(37,36,61,.1) !important;
  transition: transform .3s cubic-bezier(.2,.8,.2,1), box-shadow .3s ease, border-color .3s ease !important;
}

html.bb-polish-v3 body.com-easysocial.view-dashboard #es :is(.es-stream-item,[data-stream-id],.es-stream-list > li):hover,
html.bb-polish-v3 body.com-easysocial.view-dashboard #es :is(.es-stream-item,[data-stream-id],.es-stream-list > li):focus-within {
  border-color: rgba(239,119,36,.48) !important;
  box-shadow: 0 22px 46px rgba(37,36,61,.15) !important;
  transform: translateY(-4px) !important;
}

html.bb-polish-v3 body.com-easysocial.view-dashboard #es :is(.es-stream-item,[data-stream-id],.es-stream-list > li) :is(.es-stream-meta,.es-stream-actions,.es-stream-counter) {
  background: linear-gradient(90deg, rgba(239,119,36,.055), rgba(47,111,189,.075)) !important;
}

html.bb-polish-v3 body.com-easysocial.view-dashboard #es :is(.es-stream-item,[data-stream-id],.es-stream-list > li) img {
  transition: transform .4s ease, filter .35s ease !important;
}

html.bb-polish-v3 body.com-easysocial.view-dashboard #es :is(.es-stream-item,[data-stream-id],.es-stream-list > li):hover img {
  filter: saturate(1.06) contrast(1.02) !important;
}

.bb-infinite-status {
  width: 100% !important;
  min-height: 32px !important;
  padding: 8px 12px !important;
  color: #365477 !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-align: center !important;
}

/* Footer: remove remaining green authority and make every accordion/menu group
   use the same orange-and-blue system. */
html.bb-polish-v3 body .bb-footer-accordion-group > details {
  border-color: rgba(47,111,189,.42) !important;
  border-left: 4px solid var(--bb-polish-orange) !important;
  background: linear-gradient(110deg, rgba(239,119,36,.09), rgba(47,111,189,.08)), rgba(255,255,255,.045) !important;
}

html.bb-polish-v3 body .bb-footer-accordion-group:nth-child(even) > details {
  border-left-color: var(--bb-polish-blue-soft) !important;
}

html.bb-polish-v3 body #sp-footer ul.menu > li:nth-child(3n) > a,
html.bb-polish-v3 body .bb-footer-accordion-links > li:nth-child(3n) > a {
  border-color: rgba(239,119,36,.46) !important;
}

html.bb-polish-v3 body .bb-footer-accordion-links > li > a {
  transition: transform .24s cubic-bezier(.2,.8,.2,1), background .24s ease, border-color .24s ease, box-shadow .24s ease !important;
}

html.bb-polish-v3 body .bb-footer-accordion-links > li > a:hover,
html.bb-polish-v3 body .bb-footer-accordion-links > li > a:focus-visible {
  border-color: rgba(239,119,36,.76) !important;
  background: linear-gradient(135deg, rgba(239,119,36,.28), rgba(47,111,189,.3)) !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.18) !important;
  transform: translateY(-3px) scale(1.015) !important;
}

@media (max-width: 767.98px) {
  html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog #sp-component > .sp-column > .blog > .cat-children,
  html.bb-polish-v3 body.itemid-3465.com-content.view-category.layout-blog #sp-component > .sp-column > .blog > .article-list > .row {
    grid-template-columns: minmax(0,1fr) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html.bb-polish-v3 body #sp-trending-searches a,
  html.bb-polish-v3 body #sp-main-body .bb-polish-search-cloud a,
  html.bb-polish-v3 body .center-video-module .mod-es-videos-responsive-grid > .mod-es-videos-responsive-item,
  html.bb-polish-v3 body .center-video-module .mod-card,
  html.bb-polish-v3 body .center-video-module .mod-card__cover,
  html.bb-polish-v3 body.com-easysocial.view-dashboard #es :is(.es-stream-item,[data-stream-id],.es-stream-list > li),
  html.bb-polish-v3 body.site #sp-menu .sp-megamenu-parent > li > :is(a,span,i),
  html.bb-polish-v3 body .bb-footer-accordion-links > li > a {
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}

/* BISTRO BUDDY POPUP SHELL REPAIR START */
/* Preserve the new popup interior UI; repair only the legacy SqueezeBox shell. */
#sbox-window:has(#sbox-content.sbox-content-iframe),
#sbox-window:has(#sbox-content > iframe),
#sbox-window:has(#sbox-content form),
#sbox-window:has(#sbox-content .jbd-container),
#sbox-window:has(#sbox-content [class*="jbusiness"]),
#sbox-window:has(#sbox-content [class*="event"] form) {
  position: fixed !important;
  inset: auto !important;
  left: 50% !important;
  top: 50% !important;
  width: min(540px, calc(100vw - 32px)) !important;
  max-width: calc(100vw - 32px) !important;
  max-height: calc(100dvh - 32px) !important;
  margin: 0 !important;
  padding: 10px !important;
  transform: translate(-50%, -50%) !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  background: rgba(8, 12, 18, 0.70) !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  border-radius: 18px !important;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.42) !important;
  -webkit-backdrop-filter: blur(14px) saturate(125%) !important;
  backdrop-filter: blur(14px) saturate(125%) !important;
}

#sbox-window:has(#sbox-content.sbox-content-iframe) #sbox-content,
#sbox-window:has(#sbox-content > iframe) #sbox-content,
#sbox-window:has(#sbox-content form) #sbox-content,
#sbox-window:has(#sbox-content .jbd-container) #sbox-content,
#sbox-window:has(#sbox-content [class*="jbusiness"]) #sbox-content,
#sbox-window:has(#sbox-content [class*="event"] form) #sbox-content {
  width: 100% !important;
  max-width: 100% !important;
  max-height: calc(100dvh - 52px) !important;
  box-sizing: border-box !important;
  overflow: auto !important;
  background: transparent !important;
  border-radius: 14px !important;
}

#sbox-window:has(#sbox-content.sbox-content-iframe) #sbox-content > iframe,
#sbox-window:has(#sbox-content > iframe) #sbox-content > iframe {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  border: 0 !important;
  background: transparent !important;
}

#sbox-overlay {
  background: rgba(4, 8, 13, 0.58) !important;
  -webkit-backdrop-filter: blur(4px) !important;
  backdrop-filter: blur(4px) !important;
}

@media (max-width: 640px) {
  #sbox-window:has(#sbox-content.sbox-content-iframe),
  #sbox-window:has(#sbox-content > iframe),
  #sbox-window:has(#sbox-content form),
  #sbox-window:has(#sbox-content .jbd-container),
  #sbox-window:has(#sbox-content [class*="jbusiness"]),
  #sbox-window:has(#sbox-content [class*="event"] form) {
    width: calc(100vw - 18px) !important;
    max-width: calc(100vw - 18px) !important;
    max-height: calc(100dvh - 18px) !important;
    padding: 6px !important;
    border-radius: 14px !important;
  }

  #sbox-window:has(#sbox-content.sbox-content-iframe) #sbox-content,
  #sbox-window:has(#sbox-content > iframe) #sbox-content,
  #sbox-window:has(#sbox-content form) #sbox-content,
  #sbox-window:has(#sbox-content .jbd-container) #sbox-content,
  #sbox-window:has(#sbox-content [class*="jbusiness"]) #sbox-content,
  #sbox-window:has(#sbox-content [class*="event"] form) #sbox-content {
    max-height: calc(100dvh - 30px) !important;
    border-radius: 10px !important;
  }
}
/* BISTRO BUDDY POPUP SHELL REPAIR END */

/* BISTRO BUDDY DEEP UI CONSISTENCY PASS — 2026-08-02 */
html.bb-polish-v3 {
  --bb-polish-green: var(--bb-polish-blue) !important;
  --bb-polish-green-bright: var(--bb-polish-orange) !important;
  --bb-polish-green-deep: #205a9f !important;
}

/* Give every Food & Drink region the same card, search, and chip treatment. */
html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) {
  position: relative !important;
  height: 100% !important;
  margin-block: clamp(14px, 2vw, 26px) !important;
  padding: clamp(15px, 2vw, 24px) !important;
  border: 1px solid rgba(47, 111, 189, .2) !important;
  border-top: 5px solid var(--bb-polish-orange) !important;
  border-radius: 22px !important;
  background: radial-gradient(circle at 100% 0, rgba(47,111,189,.12), transparent 42%), linear-gradient(145deg, rgba(255,106,0,.08), rgba(47,111,189,.08)), #fff !important;
  box-shadow: 0 16px 38px rgba(37,36,61,.11) !important;
  overflow: hidden !important;
}

html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"]))::after {
  content: "" !important;
  position: absolute !important;
  inset: auto -42px -52px auto !important;
  width: 150px !important;
  height: 150px !important;
  border: 18px solid rgba(255,106,0,.08) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
}

html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) > .sp-module-title {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px 12px !important;
  margin: 0 0 12px !important;
  color: var(--bb-polish-ink) !important;
  font-weight: 900 !important;
  letter-spacing: -.025em !important;
}

html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) .sp-module-content,
html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) [id="businesslocations"] {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  max-width: none !important;
}

html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) .locations-content > ul,
html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) [id="businesslocations"] > ul {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 9px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) .locations-content > ul > li,
html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) [id="businesslocations"] li {
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) .locations-content > ul > li.location-region,
html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) [id="businesslocations"] li.location-region {
  grid-column: 1 / -1 !important;
  margin-bottom: 3px !important;
}

html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) [id="businesslocations"] li > a {
  display: block !important;
  min-height: 38px !important;
  padding: 9px 11px !important;
  border: 1px solid rgba(47,111,189,.19) !important;
  border-radius: 12px !important;
  color: var(--bb-polish-ink) !important;
  background: rgba(255,255,255,.9) !important;
  box-shadow: 0 5px 13px rgba(37,36,61,.06) !important;
  font-weight: 750 !important;
  line-height: 1.15 !important;
  text-decoration: none !important;
  transition: transform .24s cubic-bezier(.2,.8,.2,1), color .24s ease, background .24s ease, box-shadow .24s ease, border-color .24s ease !important;
}

html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) [id="businesslocations"] li:nth-child(4n + 1):not(.location-region) > a {
  border-left: 4px solid var(--bb-polish-orange) !important;
}

html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) [id="businesslocations"] li:nth-child(4n + 2):not(.location-region) > a {
  border-left: 4px solid var(--bb-polish-blue) !important;
}

html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) [id="businesslocations"] li.location-region > a,
html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) [id="businesslocations"] li.location-region a {
  border: 0 !important;
  color: #fff !important;
  background: linear-gradient(105deg, var(--bb-polish-orange), var(--bb-polish-blue)) !important;
  box-shadow: 0 9px 20px rgba(47,111,189,.2) !important;
  font-weight: 900 !important;
}

html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) [id="businesslocations"] li > a:hover,
html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) [id="businesslocations"] li > a:focus-visible {
  color: #fff !important;
  border-color: var(--bb-polish-orange) !important;
  background: linear-gradient(105deg, var(--bb-polish-orange), var(--bb-polish-blue)) !important;
  box-shadow: 0 12px 24px rgba(47,111,189,.22) !important;
  transform: translateY(-3px) !important;
}

html.bb-polish-v3 body #sp-main-body .bb-location-tools {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  margin: 0 0 12px !important;
}

html.bb-polish-v3 body #sp-main-body .bb-location-tools input {
  width: 100% !important;
  min-height: 42px !important;
  padding: 9px 14px !important;
  border: 1px solid rgba(47,111,189,.23) !important;
  border-radius: 999px !important;
  color: var(--bb-polish-ink) !important;
  background: #fff !important;
  box-shadow: inset 0 0 0 3px rgba(47,111,189,.035) !important;
}

html.bb-polish-v3 body #sp-main-body .bb-location-tools input:focus {
  border-color: var(--bb-polish-orange) !important;
  outline: 3px solid rgba(255,106,0,.16) !important;
  outline-offset: 1px !important;
}

html.bb-polish-v3 body #sp-main-body .bb-location-count-badge,
html.bb-polish-v3 body #sp-main-body .bb-location-reveal {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 30px !important;
  padding: 5px 11px !important;
  border: 1px solid rgba(47,111,189,.24) !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--bb-polish-orange), var(--bb-polish-blue)) !important;
  box-shadow: 0 6px 14px rgba(47,111,189,.17) !important;
  font-size: .75rem !important;
  font-weight: 900 !important;
}

html.bb-polish-v3 body #sp-main-body .bb-location-reveal {
  margin-top: 12px !important;
  cursor: pointer !important;
  transition: transform .22s ease, filter .22s ease !important;
}

html.bb-polish-v3 body #sp-main-body .bb-location-reveal:hover,
html.bb-polish-v3 body #sp-main-body .bb-location-reveal:focus-visible {
  filter: brightness(1.08) saturate(1.08) !important;
  transform: translateY(-2px) !important;
}

html.bb-polish-v3 body #sp-main-body .bb-location-quest .bb-location-hidden {
  display: none !important;
}

@media (max-width: 767.98px) {
  html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) {
    padding: 14px !important;
    border-radius: 18px !important;
  }

  html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) .locations-content > ul,
  html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) [id="businesslocations"] > ul {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
}

@media (max-width: 420px) {
  html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) .locations-content > ul,
  html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) [id="businesslocations"] > ul {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* LOCATION CARD PASS END */

/* Remove the remaining green drift from the shared navigation and footer. */
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu {
  scrollbar-color: var(--bb-polish-orange) rgba(255,255,255,.08) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:nth-child(3n + 2),
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:nth-child(3n) {
  border-color: rgba(255,255,255,.16) !important;
  border-left-color: var(--bb-polish-orange) !important;
  background: linear-gradient(110deg, rgba(255,106,0,.16), rgba(47,111,189,.08) 58%, rgba(255,255,255,.04)) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:nth-child(3n + 2) {
  border-left-color: var(--bb-polish-blue) !important;
  background: linear-gradient(110deg, rgba(47,111,189,.18), rgba(255,106,0,.07) 58%, rgba(255,255,255,.04)) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:nth-child(3n) {
  border-left-color: var(--bb-polish-orange-soft) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .bb-menu-glyph {
  border-color: rgba(255,106,0,.34) !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--bb-polish-orange), var(--bb-polish-blue)) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .menu-toggler {
  border-color: rgba(47,111,189,.44) !important;
  color: #fff !important;
  background: linear-gradient(135deg, rgba(255,106,0,.9), rgba(47,111,189,.9)) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu ul.menu-child,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu ul.menu-child ul.menu-child {
  border-color: rgba(47,111,189,.22) !important;
  background: linear-gradient(145deg, rgba(255,106,0,.08), rgba(47,111,189,.12)) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu ul.menu-child > li {
  border-left-color: rgba(47,111,189,.42) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu ul.menu-child > li:hover,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu ul.menu-child > li:focus-within,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu li.menu-parent-open > :is(a, span) > .menu-toggler {
  border-left-color: var(--bb-polish-orange) !important;
  background: linear-gradient(90deg, rgba(255,106,0,.18), rgba(47,111,189,.14)) !important;
}

html.bb-polish-v3 body #sp-footer ul.menu > li:nth-child(3n + 1) > a,
html.bb-polish-v3 body #sp-footer ul.menu > li:nth-child(3n + 2) > a,
html.bb-polish-v3 body #sp-footer ul.menu > li:nth-child(3n) > a {
  border-color: rgba(47,111,189,.36) !important;
  color: rgba(255,255,255,.92) !important;
}

html.bb-polish-v3 body #sp-footer ul.menu > li:nth-child(3n + 1) > a,
html.bb-polish-v3 body #sp-footer ul.menu > li:nth-child(3n) > a {
  border-left-color: var(--bb-polish-orange) !important;
}

html.bb-polish-v3 body #sp-footer ul.menu > li:nth-child(3n + 2) > a {
  border-left-color: var(--bb-polish-blue) !important;
}

html.bb-polish-v3 body #sp-footer .bb-footer-accordion-group > details {
  border-color: rgba(47,111,189,.32) !important;
  background: linear-gradient(145deg, rgba(255,106,0,.08), rgba(47,111,189,.12)) !important;
  box-shadow: 0 10px 24px rgba(9,18,35,.16) !important;
}

html.bb-polish-v3 body #sp-footer .bb-footer-accordion-group summary {
  color: #fff !important;
  background: linear-gradient(100deg, rgba(255,106,0,.2), rgba(47,111,189,.2)) !important;
}

html.bb-polish-v3 body #sp-footer .bb-footer-accordion-group details[open] > summary {
  border-bottom: 2px solid var(--bb-polish-orange) !important;
}

html.bb-polish-v3 body #sp-footer .bb-footer-accordion-links > li > a {
  border-left: 3px solid rgba(47,111,189,.55) !important;
  color: rgba(255,255,255,.86) !important;
  transition: transform .22s ease, color .22s ease, border-color .22s ease, background .22s ease !important;
}

html.bb-polish-v3 body #sp-footer .bb-footer-accordion-links > li > a:hover,
html.bb-polish-v3 body #sp-footer .bb-footer-accordion-links > li > a:focus-visible {
  border-left-color: var(--bb-polish-orange) !important;
  color: #fff !important;
  background: linear-gradient(90deg, rgba(255,106,0,.16), rgba(47,111,189,.1)) !important;
  transform: translateX(4px) !important;
}

/* The responsive grid has a production suffix such as --508. */
html.bb-polish-v3 body .center-video-module :is([class*="mod-es-videos-responsive-grid"]) > .mod-es-videos-responsive-item {
  display: flex !important;
  align-items: stretch !important;
  min-width: 0 !important;
  animation: bbVideoCardIn .55s cubic-bezier(.2,.8,.2,1) both !important;
}

html.bb-polish-v3 body .center-video-module :is([class*="mod-es-videos-responsive-grid"]) > .mod-es-videos-responsive-item:nth-child(2n) { animation-delay: .06s !important; }
html.bb-polish-v3 body .center-video-module :is([class*="mod-es-videos-responsive-grid"]) > .mod-es-videos-responsive-item:nth-child(3n) { animation-delay: .12s !important; }

html.bb-polish-v3 body .center-video-module .mod-card,
html.bb-polish-v3 body .center-video-module .mod-card__context {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  height: 100% !important;
}

html.bb-polish-v3 body .center-video-module .mod-card {
  flex: 1 1 auto !important;
  overflow: hidden !important;
  border: 1px solid rgba(47,111,189,.24) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 12px 28px rgba(37,36,61,.12) !important;
  transition: transform .32s cubic-bezier(.2,.8,.2,1), box-shadow .32s ease, border-color .32s ease !important;
}

html.bb-polish-v3 body .center-video-module .mod-card:hover,
html.bb-polish-v3 body .center-video-module .mod-card:focus-within {
  border-color: rgba(255,106,0,.7) !important;
  box-shadow: 0 22px 42px rgba(37,36,61,.18) !important;
  transform: translateY(-7px) !important;
}

html.bb-polish-v3 body .center-video-module .mod-card__context > :is(.mod-es-videos-description, [class*="description"]) {
  flex: 1 1 auto !important;
}

html.bb-polish-v3 body .center-video-module .es-card__ft {
  display: flex !important;
  align-items: center !important;
  min-height: 44px !important;
  margin-top: auto !important;
  border-top: 0 !important;
  color: #fff !important;
  background: linear-gradient(100deg, var(--bb-polish-ink), var(--bb-polish-blue)) !important;
}

/* Keep the empty-category notice and its single child balanced. */
html.bb-polish-v3 body.bb-news-surface.com-content.view-category.layout-blog #sp-component > .sp-column > .blog > .cat-children > :not(h3):only-child,
html.bb-polish-v3 body.itemid-3465.com-content.view-category.layout-blog #sp-component > .sp-column > .blog > .cat-children > :not(h3):only-child {
  grid-column: 1 / -1 !important;
}

html.bb-polish-v3 body.bb-news-surface #sp-component :is(.article, .article-list .article, .bbnh-card, .bbnh-feature) {
  border-color: rgba(47,111,189,.2) !important;
  background: linear-gradient(145deg, rgba(255,106,0,.035), rgba(47,111,189,.055)), #fff !important;
  transition: transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease, border-color .28s ease !important;
}

html.bb-polish-v3 body.bb-news-surface #sp-component :is(.article, .article-list .article, .bbnh-card, .bbnh-feature):hover,
html.bb-polish-v3 body.bb-news-surface #sp-component :is(.article, .article-list .article, .bbnh-card, .bbnh-feature):focus-within {
  border-color: rgba(255,106,0,.56) !important;
  box-shadow: 0 18px 36px rgba(37,36,61,.16) !important;
  transform: translateY(-4px) !important;
}

/* Make AJAX activity visible without changing the underlying provider. */
html.bb-polish-v3 body .bb-infinite-status {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: fit-content !important;
  max-width: calc(100% - 24px) !important;
  margin: 16px auto !important;
  padding: 8px 14px !important;
  overflow: visible !important;
  clip: auto !important;
  clip-path: none !important;
  border: 1px solid rgba(47,111,189,.26) !important;
  border-radius: 999px !important;
  color: var(--bb-polish-ink) !important;
  background: linear-gradient(100deg, rgba(255,106,0,.1), rgba(47,111,189,.12)) !important;
  font-size: .8rem !important;
  font-weight: 800 !important;
  text-align: center !important;
}

@media (prefers-reduced-motion: reduce) {
  html.bb-polish-v3 body .center-video-module :is([class*="mod-es-videos-responsive-grid"]) > .mod-es-videos-responsive-item,
  html.bb-polish-v3 body .center-video-module .mod-card,
  html.bb-polish-v3 body.bb-news-surface #sp-component :is(.article, .article-list .article, .bbnh-card, .bbnh-feature),
  html.bb-polish-v3 body #sp-main-body :is(.bb-polish-location-cloud, .sp-module:has([id="businesslocations"])) [id="businesslocations"] li > a {
    animation: none !important;
    transition: none !important;
  }
}

/* END BISTRO BUDDY DEEP UI CONSISTENCY PASS */

/* BISTRO BUDDY REGISTRATION INTEGRATED CSS START */
/* BISTRO BUDDY REGISTRATION MODERNIZER — 2026-08-02 */
html.bb-registration-page{--bb-orange:#ff7a18;--bb-orange2:#ffb14a;--bb-blue:#1d9bf0;--bb-blue2:#69caff;--bb-ink:#17283f;--bb-muted:#5b6e86;--bb-line:rgba(58,97,140,.17);--bb-shadow:0 22px 70px rgba(6,20,39,.18)}
html.bb-registration-page body{overflow-x:hidden}
html.bb-registration-page #sp-main-body{position:relative;isolation:isolate}
html.bb-registration-page #sp-main-body:before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 8% 18%,rgba(29,155,240,.13),transparent 28rem),radial-gradient(circle at 90% 32%,rgba(255,122,24,.12),transparent 30rem);pointer-events:none}
.bb-registration-modernized,.bb-registration-modernized *{box-sizing:border-box}
.bb-registration-modernized{position:relative;width:min(1480px,calc(100% - 24px));margin:auto;padding:14px 0 42px}
.bb-registration-modernized .bb-register-original-heading{width:min(900px,100%);margin:34px auto 18px!important;color:#17263a!important;font-size:clamp(1.55rem,3vw,2.35rem)!important;line-height:1.08!important;letter-spacing:-.035em!important;text-align:center!important}
.bb-register-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:clamp(24px,5vw,72px);align-items:end;min-height:380px;padding:clamp(30px,6vw,76px);overflow:hidden;border:1px solid rgba(121,188,255,.26);border-radius:clamp(22px,4vw,38px);background:linear-gradient(135deg,rgba(8,18,34,.99),rgba(5,12,25,.97) 48%,rgba(17,15,36,.98)),#07111f;box-shadow:0 24px 80px rgba(2,7,16,.42),inset 0 1px rgba(255,255,255,.08);isolation:isolate}
.bb-register-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent 0 49.5%,rgba(99,199,255,.05) 49.5% 50.5%,transparent 50.5%),linear-gradient(transparent 0 49.5%,rgba(99,199,255,.04) 49.5% 50.5%,transparent 50.5%);background-size:62px 62px;transform:perspective(420px) rotateX(58deg) scale(1.35) translateY(26%);transform-origin:center bottom;mask-image:linear-gradient(to bottom,transparent,#000 32%,#000);opacity:.8}
.bb-register-hero:after{content:"";position:absolute;z-index:-1;top:0;left:-10%;width:52%;height:5px;background:linear-gradient(90deg,transparent,var(--bb-blue2),var(--bb-orange),transparent);filter:blur(1px) drop-shadow(0 0 16px rgba(74,181,255,.75));animation:bbRegScan 7s linear infinite}
.bb-register-grid{position:absolute;inset:0;z-index:-1;opacity:.35;background-image:radial-gradient(circle,rgba(255,255,255,.62) 0 1px,transparent 1.5px),radial-gradient(circle,rgba(255,142,49,.62) 0 1px,transparent 1.5px);background-position:0 0,25px 25px;background-size:50px 50px;mask-image:radial-gradient(circle at 35% 50%,#000,transparent 75%)}
.bb-register-orb{position:absolute;z-index:-1;width:260px;aspect-ratio:1;border-radius:50%;filter:blur(4px);opacity:.5;pointer-events:none;animation:bbRegFloat 9s ease-in-out infinite}
.bb-register-orb.is-one{right:8%;top:-120px;background:radial-gradient(circle at 35% 35%,rgba(99,199,255,.85),rgba(29,155,240,.13) 48%,transparent 70%)}
.bb-register-orb.is-two{left:40%;bottom:-190px;width:340px;background:radial-gradient(circle at 50% 20%,rgba(255,173,66,.75),rgba(255,122,24,.12) 46%,transparent 72%);animation-delay:-3s}
.bb-register-hero-copy,.bb-register-steps{position:relative;z-index:2}
.bb-register-eyebrow{display:inline-flex;gap:10px;align-items:center;margin:0 0 18px!important;color:var(--bb-blue2)!important;font-size:.78rem!important;font-weight:900!important;letter-spacing:.18em}
.bb-register-eyebrow span{color:var(--bb-orange);text-shadow:0 0 14px rgba(255,122,24,.82);animation:bbRegPulse 1.8s ease-in-out infinite}
.bb-register-hero h1{max-width:820px;margin:0!important;color:#fff!important;font-size:clamp(2.5rem,6vw,5.8rem)!important;line-height:.92!important;letter-spacing:-.065em!important;text-wrap:balance}
.bb-register-hero h1 strong{display:block;width:fit-content;margin-top:12px;color:transparent;background:linear-gradient(90deg,var(--bb-orange2),#fff3df 38%,var(--bb-blue2) 82%);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 6px 22px rgba(29,155,240,.2))}
.bb-register-lede{max-width:760px;margin:24px 0 0!important;color:#c7d5e8!important;font-size:clamp(1rem,1.7vw,1.2rem)!important;line-height:1.7!important}
.bb-register-trust{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.bb-register-trust span{display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border:1px solid rgba(122,196,255,.18);border-radius:999px;color:#dbe8f8;background:rgba(255,255,255,.055);font-size:.79rem;font-weight:800}
.bb-register-steps{display:grid;gap:12px;align-self:center;margin:0;padding:0;list-style:none}
.bb-register-steps li{display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:center;min-height:68px;padding:10px 16px 10px 10px;border:1px solid rgba(255,255,255,.1);border-radius:16px;color:#93a5bc;background:rgba(255,255,255,.035)}
.bb-register-steps li span{display:grid;place-items:center;width:48px;aspect-ratio:1;border:1px solid rgba(255,255,255,.14);border-radius:13px;color:#adc1d8;background:rgba(0,0,0,.2);font-size:.72rem;font-weight:900;letter-spacing:.08em}
.bb-register-steps li strong{font-size:.88rem}.bb-register-steps li.is-active{border-color:rgba(99,199,255,.46);color:#fff;background:linear-gradient(90deg,rgba(29,155,240,.2),rgba(255,122,24,.08));box-shadow:0 0 32px rgba(29,155,240,.1)}
.bb-register-steps li.is-active span{border-color:rgba(255,173,66,.72);color:#08111f;background:linear-gradient(135deg,var(--bb-orange2),var(--bb-orange));box-shadow:0 0 24px rgba(255,122,24,.28)}
.bb-register-filterbar{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;width:min(1120px,100%);margin:0 auto 28px;padding:10px;border:1px solid rgba(29,155,240,.18);border-radius:18px;background:rgba(247,251,255,.9);box-shadow:0 12px 36px rgba(14,34,58,.08);backdrop-filter:blur(14px)}
.bb-register-filter-label{display:inline-flex;align-items:center;padding:8px 12px;color:#51637a;font-size:.76rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.bb-register-filter{min-height:42px;padding:9px 15px;border:1px solid rgba(40,79,120,.12);border-radius:12px;color:#32465f;background:#fff;box-shadow:0 3px 12px rgba(26,53,83,.05);font:inherit;font-size:.84rem;font-weight:850;cursor:pointer;transition:.18s ease}
.bb-register-filter:hover,.bb-register-filter:focus-visible{border-color:rgba(29,155,240,.48);color:#0c68a6;transform:translateY(-1px);outline:0}.bb-register-filter[aria-pressed=true]{border-color:transparent;color:#fff;background:linear-gradient(135deg,#0f77ba,var(--bb-blue));box-shadow:0 10px 22px rgba(29,155,240,.24)}
.bb-register-card-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2vw,24px)!important;align-items:stretch!important;width:100%}
.bb-register-card-grid>.bb-register-hero,.bb-register-card-grid>.bb-register-original-heading,.bb-register-card-grid>.bb-register-filterbar,.bb-register-card-grid>.bb-register-help{grid-column:1/-1}.bb-register-card[hidden]{display:none!important}
.bb-register-card{--accent:var(--bb-blue);--soft:rgba(29,155,240,.16);--bb-pointer-x:.5;--bb-pointer-y:.5;--bb-rotate-x:0deg;--bb-rotate-y:0deg;position:relative;display:flex;flex-direction:column;min-width:0;min-height:100%;padding:18px;overflow:hidden;border:1px solid var(--bb-line);border-radius:24px;color:#22344b;background:radial-gradient(circle at calc(var(--bb-pointer-x)*100%) calc(var(--bb-pointer-y)*100%),var(--soft),transparent 34%),linear-gradient(180deg,#fff,#f8fbff 70%,#f4f8fc);box-shadow:0 14px 42px rgba(20,49,83,.09),inset 0 1px #fff;transform:perspective(1000px) rotateX(var(--bb-rotate-x)) rotateY(var(--bb-rotate-y));transform-style:preserve-3d;animation:bbRegCard .62s cubic-bezier(.2,.75,.2,1) both;animation-delay:calc(var(--bb-card-order)*65ms);transition:transform .17s ease,border-color .2s ease,box-shadow .2s ease;cursor:pointer}
.bb-register-card:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:4px;background:linear-gradient(90deg,var(--accent),transparent 78%);box-shadow:0 0 18px var(--soft)}
.bb-register-card:after{content:"";position:absolute;right:-26px;bottom:-34px;width:132px;aspect-ratio:1;border:1px solid var(--soft);border-radius:28px;background:linear-gradient(90deg,transparent 48%,var(--soft) 49% 51%,transparent 52%),linear-gradient(transparent 48%,var(--soft) 49% 51%,transparent 52%);background-size:26px 26px;transform:rotate(18deg);opacity:.55;pointer-events:none}
.bb-register-card[data-bb-profile-kind=owner]{--accent:#ff7a18;--soft:rgba(255,122,24,.15)}.bb-register-card[data-bb-profile-kind=professional]{--accent:#1d9bf0;--soft:rgba(29,155,240,.15)}.bb-register-card[data-bb-profile-kind=foodie]{--accent:#20b775;--soft:rgba(32,183,117,.14)}.bb-register-card[data-bb-profile-kind=dating]{--accent:#a855f7;--soft:rgba(168,85,247,.14)}
.bb-register-card[data-bb-profile-privacy=private]{background:radial-gradient(circle at calc(var(--bb-pointer-x)*100%) calc(var(--bb-pointer-y)*100%),var(--soft),transparent 34%),linear-gradient(180deg,#f8faff,#f2f5fb 72%,#eef3f9)}
.bb-register-card:hover,.bb-register-card:focus-visible,.bb-register-card:focus-within{border-color:var(--accent);box-shadow:0 24px 60px rgba(20,49,83,.16),0 0 0 1px var(--soft),inset 0 1px #fff;outline:0}.bb-register-card:focus-visible{box-shadow:0 0 0 4px rgba(29,155,240,.18),0 24px 60px rgba(20,49,83,.16)}
.bb-register-card-header{position:relative;z-index:2;display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:16px}.bb-register-card-icon{display:grid;place-items:center;width:58px;aspect-ratio:1;border:1px solid var(--soft);border-radius:17px;background:linear-gradient(145deg,#fff,var(--soft));box-shadow:0 10px 22px var(--soft),inset 0 1px #fff;font-size:1.65rem;transform:translateZ(22px)}
.bb-register-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.bb-register-badge{display:inline-flex;align-items:center;min-height:25px;padding:5px 8px;border:1px solid rgba(45,78,113,.11);border-radius:999px;color:#60738c;background:rgba(255,255,255,.85);font-size:.62rem;font-weight:950;letter-spacing:.09em}.bb-register-badge.is-public{color:#09704b;border-color:rgba(32,183,117,.22);background:rgba(32,183,117,.09)}.bb-register-badge.is-private{color:#5a4790;border-color:rgba(168,85,247,.2);background:rgba(168,85,247,.08)}
.bb-register-card-content{position:relative;z-index:2;display:flex!important;flex:1 1 auto;flex-direction:column!important;min-width:0;width:100%!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.bb-register-card-content>*{max-width:100%}
.bb-register-title,.bb-register-title a,.bb-register-card-content h2,.bb-register-card-content h3,.bb-register-card-content h4{margin:0 0 12px!important;color:var(--bb-ink)!important;font-size:clamp(1.12rem,1.6vw,1.42rem)!important;font-weight:900!important;line-height:1.13!important;letter-spacing:-.025em!important;text-decoration:none!important;overflow-wrap:anywhere}.bb-register-description{margin:0 0 15px!important;color:var(--bb-muted)!important;font-size:.9rem!important;line-height:1.58!important}
.bb-register-member-count{display:inline-flex!important;width:fit-content;max-width:100%;margin:0 0 15px!important;padding:6px 9px!important;border:1px solid var(--soft)!important;border-radius:9px!important;color:#244c6b!important;background:var(--soft)!important;font-size:.73rem!important;font-weight:850!important;line-height:1.3!important}
.bb-register-features{display:grid;gap:8px;margin:2px 0 20px!important;padding:0!important;list-style:none!important}.bb-register-features li{position:relative;margin:0!important;padding:0 0 0 23px!important;color:#42566f!important;font-size:.79rem!important;font-weight:700!important;line-height:1.42!important}.bb-register-features li:before{content:"✓";position:absolute;left:0;top:0;display:grid;place-items:center;width:16px;height:16px;border-radius:5px;color:#fff;background:var(--accent);box-shadow:0 4px 10px var(--soft);font-size:.62rem;font-weight:950}
.bb-register-card-content>.bb-register-cta-wrap,.bb-register-card-content>.bb-register-cta{margin-top:auto!important}.bb-register-cta{display:flex!important;justify-content:space-between!important;gap:12px;align-items:center!important;width:100%!important;min-height:48px;margin-top:auto!important;padding:12px 14px!important;border:1px solid transparent!important;border-radius:13px!important;color:#fff!important;background:var(--accent)!important;box-shadow:0 12px 24px var(--soft)!important;font-size:.82rem!important;font-weight:900!important;line-height:1.25!important;text-align:left!important;text-decoration:none!important;transition:.16s ease!important}.bb-register-cta:hover,.bb-register-cta:focus-visible{color:#fff!important;filter:brightness(1.07) saturate(1.05);transform:translateY(-2px);box-shadow:0 16px 30px var(--soft)!important;outline:3px solid rgba(29,155,240,.22)!important;outline-offset:2px}.bb-register-cta span:last-child{font-size:1.15rem;transition:transform .16s ease}.bb-register-cta:hover span:last-child,.bb-register-cta:focus-visible span:last-child{transform:translateX(3px)}
.bb-register-help{display:grid;grid-template-columns:54px minmax(0,1fr);gap:16px;align-items:start;width:min(1050px,100%);margin:30px auto 0;padding:20px;border:1px solid rgba(29,155,240,.16);border-radius:18px;color:#32465e;background:linear-gradient(135deg,rgba(235,247,255,.9),rgba(255,247,237,.88));box-shadow:0 12px 36px rgba(20,49,83,.07)}.bb-register-help-icon{display:grid;place-items:center;width:54px;aspect-ratio:1;border-radius:16px;color:#fff;background:linear-gradient(135deg,var(--bb-blue),var(--bb-orange));box-shadow:0 10px 22px rgba(29,155,240,.18);font-size:1.35rem;font-weight:950}.bb-register-help strong{display:block;margin:2px 0 5px;color:#192d46;font-size:1rem}.bb-register-help p{margin:0!important;color:#5b6f86!important;font-size:.88rem!important;line-height:1.55!important}.bb-register-invalid-empty-state{display:none!important}
@keyframes bbRegScan{0%{transform:translateX(-45%);opacity:0}12%,88%{opacity:1}100%{transform:translateX(250%);opacity:0}}@keyframes bbRegFloat{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(18px,24px,0) scale(1.08)}}@keyframes bbRegPulse{0%,100%{transform:scale(.8);opacity:.7}50%{transform:scale(1.12);opacity:1}}@keyframes bbRegCard{from{opacity:0;transform:perspective(1000px) translateY(22px) scale(.98)}to{opacity:1;transform:perspective(1000px) translateY(0) scale(1)}}
@media(max-width:1240px){.bb-register-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.bb-registration-modernized{width:min(calc(100% - 16px),1000px)}.bb-register-hero{grid-template-columns:1fr;min-height:0;padding:clamp(28px,7vw,52px)}.bb-register-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.bb-register-steps li{grid-template-columns:38px 1fr;min-height:58px;padding:8px}.bb-register-steps li span{width:38px;border-radius:10px}}
@media(max-width:680px){.bb-registration-modernized{padding-top:6px}.bb-register-hero{border-radius:22px}.bb-register-hero h1{font-size:clamp(2.25rem,13vw,4rem)!important}.bb-register-trust{display:grid;grid-template-columns:1fr}.bb-register-trust span{width:100%}.bb-register-steps{grid-template-columns:1fr}.bb-register-steps li{min-height:52px}.bb-register-card-grid{grid-template-columns:minmax(0,1fr)}.bb-register-filterbar{justify-content:stretch;border-radius:14px}.bb-register-filter-label{width:100%;justify-content:center}.bb-register-filter{flex:1 1 calc(50% - 8px);padding-inline:10px}.bb-register-card{border-radius:20px}.bb-register-help{grid-template-columns:42px minmax(0,1fr);padding:16px}.bb-register-help-icon{width:42px;border-radius:12px}}
@media(prefers-reduced-motion:reduce){.bb-register-hero:after,.bb-register-orb,.bb-register-eyebrow span,.bb-register-card{animation:none!important}.bb-register-card,.bb-register-filter,.bb-register-cta,.bb-register-cta span:last-child{transition:none!important}.bb-register-card{transform:none!important}}
@media(forced-colors:active){.bb-register-card,.bb-register-hero,.bb-register-filterbar,.bb-register-help{border:2px solid CanvasText}.bb-register-cta,.bb-register-filter[aria-pressed=true]{border:2px solid ButtonText!important}}
/* BISTRO BUDDY REGISTRATION INTEGRATED CSS END */


/*
 * BISTRO BUDDY mobile news ticker spacing repair — 2026-08-02
 * Keeps the approved desktop ticker geometry unchanged.
 */
@media (max-width: 767.98px) {
  html.bb-polish-v3 body.site
    :is(.sppb-addon-articles-ticker-wrap, .sppb-addon-articles-ticker) {
    margin-top: 0 !important;
  }

  html.bb-polish-v3 body.site
    #sppb-addon-1703966039476 .sppb-articles-ticker-wrap {
    width: 100% !important;
    min-width: 0 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  html.bb-polish-v3 body.site
    #sppb-addon-1703966039476 .sppb-articles-ticker-heading {
    display: inline-flex !important;
    align-items: center !important;
    min-width: 0 !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 12px 0 13px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  html.bb-polish-v3 body.site
    #sppb-addon-1703966039476 .sppb-articles-ticker-heading::before {
    display: inline-flex !important;
    align-items: center !important;
    min-width: 0 !important;
    min-height: 36px !important;
    padding: 0 2px !important;
    box-sizing: border-box !important;
    font-size: clamp(11px, 3.25vw, 14px) !important;
    line-height: 1 !important;
    letter-spacing: 0.01em !important;
    white-space: nowrap !important;
  }

  html.bb-polish-v3 body.site
    #sppb-addon-1703966039476 .sppb-articles-ticker-heading
    .sppb-articles-ticker-shape-arrow {
    flex: 0 0 auto !important;
    width: 26px !important;
    height: 36px !important;
  }

  html.bb-polish-v3 body.site
    #sppb-addon-1703966039476 .sppb-articles-ticker {
    min-width: 0 !important;
    margin-top: 0 !important;
  }

  html.bb-polish-v3 body.site
    #sppb-addon-1703966039476 .sppb-articles-ticker-content {
    min-width: 0 !important;
  }
}

/* BISTRO BUDDY MOBILE NEWS TICKER SPACING REPAIR END */
/*
 * BISTRO BUDDY location-card parity patch — 2026-08-02
 *
 * The location modules can be rendered in different Helix/Joomla columns.
 * Scope the visual treatment to the class added by the shared JavaScript,
 * rather than to #sp-main-body, so every state receives the same card,
 * filter, destination-chip, reveal-button, and responsive behavior.
 */

html.bb-polish-v3 body .bb-polish-location-cloud {
  --bb-location-orange: var(--bb-polish-orange, #ef7724);
  --bb-location-orange-deep: var(--bb-polish-orange-deep, #c94f08);
  --bb-location-blue: var(--bb-polish-blue, #2f6fbd);
  --bb-location-blue-soft: var(--bb-polish-blue-soft, #7ca4dd);
  --bb-location-ink: var(--bb-polish-ink, #25243d);
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  height: 100% !important;
  margin-block: clamp(14px, 2vw, 26px) !important;
  padding: clamp(15px, 2vw, 24px) !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(47, 111, 189, 0.22) !important;
  border-top: 5px solid var(--bb-location-orange) !important;
  border-radius: 22px !important;
  color: var(--bb-location-ink) !important;
  background:
    radial-gradient(circle at 100% 0, rgba(47, 111, 189, 0.14), transparent 42%),
    radial-gradient(circle at 0 100%, rgba(239, 119, 36, 0.10), transparent 44%),
    linear-gradient(145deg, #fffdfb 0%, #f6f9ff 100%) !important;
  box-shadow: 0 16px 38px rgba(37, 36, 61, 0.14) !important;
  overflow: hidden !important;
  isolation: isolate !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud::after {
  content: "" !important;
  position: absolute !important;
  z-index: -1 !important;
  right: -48px !important;
  bottom: -58px !important;
  width: 156px !important;
  height: 156px !important;
  border: 18px solid rgba(239, 119, 36, 0.08) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud > .sp-module-title,
html.bb-polish-v3 body .bb-polish-location-cloud .sp-module-title {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px 12px !important;
  width: 100% !important;
  margin: 0 0 12px !important;
  color: var(--bb-location-ink) !important;
  font-size: clamp(20px, 1.55vw, 30px) !important;
  font-weight: 950 !important;
  line-height: 1.12 !important;
  letter-spacing: -0.025em !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud .sp-module-content,
html.bb-polish-v3 body .bb-polish-location-cloud [id="businesslocations"] {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud .bb-location-tools {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 7px 9px !important;
  width: 100% !important;
  margin: 0 0 12px !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud .bb-location-tools input[type="search"] {
  flex: 1 0 100% !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 10px 15px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(47, 111, 189, 0.30) !important;
  border-radius: 13px !important;
  color: var(--bb-location-ink) !important;
  background: rgba(255, 255, 255, 0.97) !important;
  box-shadow: inset 0 0 0 3px rgba(47, 111, 189, 0.035) !important;
  font: inherit !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud .bb-location-tools input[type="search"]:focus {
  border-color: var(--bb-location-orange) !important;
  outline: 3px solid rgba(239, 119, 36, 0.17) !important;
  outline-offset: 1px !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud .bb-location-clear {
  min-height: 30px !important;
  padding: 5px 10px !important;
  border: 1px solid rgba(239, 119, 36, 0.30) !important;
  border-radius: 999px !important;
  color: var(--bb-location-orange-deep) !important;
  background: #fff !important;
  font-size: 0.75rem !important;
  font-weight: 900 !important;
  cursor: pointer !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud .bb-location-status {
  margin-left: auto !important;
  color: rgba(37, 36, 61, 0.82) !important;
  font-size: 0.75rem !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud .bb-location-count-badge,
html.bb-polish-v3 body .bb-polish-location-cloud .bb-location-reveal {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 30px !important;
  padding: 5px 11px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(255, 255, 255, 0.55) !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--bb-location-orange), var(--bb-location-blue)) !important;
  box-shadow: 0 7px 16px rgba(47, 111, 189, 0.20) !important;
  font-size: 0.72rem !important;
  font-weight: 950 !important;
  line-height: 1.1 !important;
  text-align: center !important;
  white-space: nowrap !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud .locations-content > ul,
html.bb-polish-v3 body .bb-polish-location-cloud [id="businesslocations"] > ul {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 9px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud .locations-content > ul > li,
html.bb-polish-v3 body .bb-polish-location-cloud [id="businesslocations"] li {
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud .locations-content > ul > li.location-region,
html.bb-polish-v3 body .bb-polish-location-cloud [id="businesslocations"] li.location-region {
  grid-column: 1 / -1 !important;
  margin-bottom: 2px !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud [id="businesslocations"] li > a {
  display: flex !important;
  align-items: center !important;
  min-width: 0 !important;
  min-height: 40px !important;
  padding: 9px 11px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(47, 111, 189, 0.21) !important;
  border-radius: 12px !important;
  color: var(--bb-location-ink) !important;
  background: rgba(255, 255, 255, 0.93) !important;
  box-shadow: 0 5px 13px rgba(37, 36, 61, 0.07) !important;
  font-size: clamp(11px, 0.76vw, 14px) !important;
  font-weight: 800 !important;
  line-height: 1.18 !important;
  overflow-wrap: anywhere !important;
  text-decoration: none !important;
  transition:
    transform 0.22s cubic-bezier(0.2, 0.8, 0.2, 1),
    color 0.22s ease,
    background 0.22s ease,
    box-shadow 0.22s ease,
    border-color 0.22s ease !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud [id="businesslocations"] li:nth-child(4n + 1):not(.location-region) > a {
  border-left: 4px solid var(--bb-location-orange) !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud [id="businesslocations"] li:nth-child(4n + 2):not(.location-region) > a {
  border-left: 4px solid var(--bb-location-blue) !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud [id="businesslocations"] li.location-region > a,
html.bb-polish-v3 body .bb-polish-location-cloud [id="businesslocations"] li.location-region a {
  justify-content: center !important;
  min-height: 42px !important;
  border: 0 !important;
  border-radius: 12px !important;
  color: #fff !important;
  background: linear-gradient(105deg, var(--bb-location-orange), var(--bb-location-blue)) !important;
  box-shadow: 0 9px 20px rgba(47, 111, 189, 0.22) !important;
  font-size: 0.84rem !important;
  font-weight: 950 !important;
  text-align: center !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud [id="businesslocations"] li > a:hover,
html.bb-polish-v3 body .bb-polish-location-cloud [id="businesslocations"] li > a:focus-visible {
  color: #fff !important;
  border-color: var(--bb-location-orange) !important;
  background: linear-gradient(105deg, var(--bb-location-orange), var(--bb-location-blue)) !important;
  box-shadow: 0 12px 24px rgba(47, 111, 189, 0.24) !important;
  transform: translateY(-3px) !important;
  outline: none !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud .bb-location-reveal {
  align-self: flex-start !important;
  margin-top: 12px !important;
  border: 0 !important;
  cursor: pointer !important;
  transition: transform 0.22s ease, filter 0.22s ease !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud .bb-location-reveal:hover,
html.bb-polish-v3 body .bb-polish-location-cloud .bb-location-reveal:focus-visible {
  filter: brightness(1.08) saturate(1.08) !important;
  transform: translateY(-2px) !important;
  outline: 3px solid rgba(239, 119, 36, 0.18) !important;
  outline-offset: 2px !important;
}

html.bb-polish-v3 body .bb-polish-location-cloud .bb-location-hidden,
html.bb-polish-v3 body .bb-polish-location-cloud [hidden] {
  display: none !important;
}

@media (max-width: 1199.98px) {
  html.bb-polish-v3 body .bb-polish-location-cloud > .sp-module-title,
  html.bb-polish-v3 body .bb-polish-location-cloud .sp-module-title {
    font-size: clamp(19px, 2.3vw, 27px) !important;
  }
}

@media (max-width: 767.98px) {
  html.bb-polish-v3 body .bb-polish-location-cloud {
    height: auto !important;
    padding: 14px !important;
    border-radius: 18px !important;
  }

  html.bb-polish-v3 body .bb-polish-location-cloud .locations-content > ul,
  html.bb-polish-v3 body .bb-polish-location-cloud [id="businesslocations"] > ul {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
}

@media (max-width: 420px) {
  html.bb-polish-v3 body .bb-polish-location-cloud .locations-content > ul,
  html.bb-polish-v3 body .bb-polish-location-cloud [id="businesslocations"] > ul {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html.bb-polish-v3 body .bb-polish-location-cloud .bb-location-count-badge {
    white-space: normal !important;
  }
}

/* BISTRO BUDDY LOCATION CARD PARITY PATCH END */
/*
 * BISTRO BUDDY mobile navigation usability patch — 2026-08-02
 *
 * Final authority for the Helix offcanvas navigation at every viewport size.
 * Keeps the approved desktop mega menu untouched while making the offcanvas
 * version readable, responsive, touch-friendly and safe for long labels.
 */

html.bb-polish-v3 {
  --bb-mobile-nav-width: 420px;
  --bb-mobile-nav-orange: var(--bb-polish-orange, #ef7724);
  --bb-mobile-nav-orange-deep: var(--bb-polish-orange-deep, #c94f08);
  --bb-mobile-nav-blue: var(--bb-polish-blue, #2f6fbd);
  --bb-mobile-nav-blue-soft: var(--bb-polish-blue-soft, #7ca4dd);
  --bb-mobile-nav-focus: var(--bb-polish-focus, #ffd166);
}

html.bb-polish-v3 body .offcanvas-menu {
  width: min(var(--bb-mobile-nav-width), 100vw) !important;
  max-width: 100vw !important;
  min-width: 0 !important;
  height: 100vh !important;
  height: 100dvh !important;
  right: calc(-1 * min(var(--bb-mobile-nav-width), 100vw)) !important;
  overflow: hidden !important;
  border-left: 1px solid rgba(239, 119, 36, 0.78) !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(47, 111, 189, 0.27), transparent 34%),
    radial-gradient(circle at 0% 100%, rgba(239, 119, 36, 0.20), transparent 36%),
    linear-gradient(180deg, #24242a 0%, #17171b 100%) !important;
  box-shadow: -18px 0 50px rgba(0, 0, 0, 0.42) !important;
}

html.bb-polish-v3 body.offcanvas-active .offcanvas-menu {
  right: 0 !important;
}

html.bb-polish-v3 body.offcanvas-active {
  overflow: hidden !important;
}

html.bb-polish-v3 body .offcanvas-overlay {
  background: rgba(5, 9, 17, 0.62) !important;
  backdrop-filter: blur(3px) !important;
  -webkit-backdrop-filter: blur(3px) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 100% !important;
  padding:
    max(12px, env(safe-area-inset-top))
    max(12px, env(safe-area-inset-right))
    max(24px, env(safe-area-inset-bottom))
    max(12px, env(safe-area-inset-left)) !important;
  box-sizing: border-box !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  scroll-padding-top: 76px !important;
  scrollbar-color: var(--bb-mobile-nav-orange) rgba(255, 255, 255, 0.08) !important;
  scrollbar-width: thin !important;
  -webkit-overflow-scrolling: touch !important;
}

html.bb-polish-v3 body .offcanvas-menu .close-offcanvas {
  z-index: 50 !important;
  top: max(8px, env(safe-area-inset-top)) !important;
  right: max(8px, env(safe-area-inset-right)) !important;
  display: grid !important;
  place-items: center !important;
  width: 46px !important;
  min-width: 46px !important;
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 255, 255, 0.20) !important;
  border-radius: 13px !important;
  color: #fff !important;
  background: linear-gradient(145deg, rgba(239, 119, 36, 0.96), rgba(47, 111, 189, 0.92)) !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.30) !important;
  font-size: 24px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  touch-action: manipulation !important;
}

html.bb-polish-v3 body .offcanvas-menu .close-offcanvas:hover,
html.bb-polish-v3 body .offcanvas-menu .close-offcanvas:focus-visible {
  filter: brightness(1.10) saturate(1.08) !important;
  outline: 3px solid var(--bb-mobile-nav-focus) !important;
  outline-offset: 2px !important;
}

html.bb-polish-v3 body .offcanvas-menu :is(.logo, .logo-image, .sp-module:first-child) img {
  display: block !important;
  width: auto !important;
  max-width: min(205px, calc(100% - 58px)) !important;
  max-height: 58px !important;
  object-fit: contain !important;
}

html.bb-polish-v3 body .offcanvas-menu
  :is(input[type="search"], input[type="text"], .form-control) {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 48px !important;
  padding: 10px 13px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(124, 164, 221, 0.48) !important;
  border-radius: 12px !important;
  color: #172033 !important;
  background: rgba(255, 255, 255, 0.97) !important;
  box-shadow: inset 0 0 0 3px rgba(47, 111, 189, 0.05) !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
}

html.bb-polish-v3 body .offcanvas-menu
  :is(input[type="search"], input[type="text"], .form-control):focus {
  border-color: var(--bb-mobile-nav-orange) !important;
  outline: 3px solid rgba(239, 119, 36, 0.20) !important;
  outline-offset: 1px !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu {
  width: 100% !important;
  min-width: 0 !important;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  list-style: none !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:nth-child(3n + 2),
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:nth-child(3n) {
  position: relative !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  border: 1px solid rgba(124, 164, 221, 0.26) !important;
  border-left: 4px solid var(--bb-mobile-nav-orange) !important;
  border-radius: 13px !important;
  background:
    linear-gradient(105deg, rgba(239, 119, 36, 0.18), rgba(47, 111, 189, 0.12) 64%, transparent),
    rgba(255, 255, 255, 0.045) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.07),
    0 7px 17px rgba(0, 0, 0, 0.18) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:nth-child(even) {
  border-left-color: var(--bb-mobile-nav-blue-soft) !important;
  background:
    linear-gradient(105deg, rgba(47, 111, 189, 0.21), rgba(239, 119, 36, 0.10) 70%, transparent),
    rgba(255, 255, 255, 0.045) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:hover,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li:focus-within,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li.active,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu > li.menu-parent-open {
  border-color: rgba(255, 154, 68, 0.58) !important;
  border-left-color: var(--bb-mobile-nav-orange) !important;
  background:
    linear-gradient(105deg, rgba(239, 119, 36, 0.34), rgba(47, 111, 189, 0.20) 68%, transparent),
    rgba(255, 255, 255, 0.06) !important;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.045),
    0 10px 23px rgba(0, 0, 0, 0.23) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  li > :is(a, span) {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 10px !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 8px 54px 8px 9px !important;
  box-sizing: border-box !important;
  color: rgba(255, 255, 255, 0.97) !important;
  background: transparent !important;
  box-shadow: none !important;
  font-family: inherit !important;
  font-size: clamp(16px, 1.15vw, 18px) !important;
  font-weight: 800 !important;
  line-height: 1.18 !important;
  letter-spacing: -0.01em !important;
  text-align: left !important;
  text-decoration: none !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.45) !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  hyphens: auto !important;
  cursor: pointer !important;
  touch-action: manipulation !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  li > :is(a, span):focus-visible {
  outline: 3px solid var(--bb-mobile-nav-focus) !important;
  outline-offset: -3px !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .bb-menu-glyph,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  li li > :is(a, span) > .bb-menu-glyph {
  display: inline-grid !important;
  grid-column: 1 !important;
  place-items: center !important;
  width: 32px !important;
  min-width: 32px !important;
  height: 32px !important;
  min-height: 32px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(255, 255, 255, 0.20) !important;
  border-radius: 9px !important;
  color: #fff !important;
  background: linear-gradient(145deg, var(--bb-mobile-nav-orange), var(--bb-mobile-nav-orange-deep)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.22),
    0 5px 12px rgba(0, 0, 0, 0.22) !important;
  font-size: 14px !important;
  line-height: 1 !important;
  transform: none !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  > li:nth-child(even) > :is(a, span) > .bb-menu-glyph {
  background: linear-gradient(145deg, var(--bb-mobile-nav-blue-soft), var(--bb-mobile-nav-blue)) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  li > :is(a, span):hover > .bb-menu-glyph,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  li > :is(a, span):focus-visible > .bb-menu-glyph,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  li.menu-parent-open > :is(a, span) > .bb-menu-glyph {
  filter: brightness(1.08) saturate(1.06) !important;
  box-shadow:
    0 0 0 2px rgba(255, 209, 102, 0.16),
    0 7px 15px rgba(0, 0, 0, 0.25) !important;
  transform: translateY(-1px) scale(1.03) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu .menu-toggler {
  position: absolute !important;
  z-index: 4 !important;
  top: 50% !important;
  right: 6px !important;
  display: grid !important;
  place-items: center !important;
  width: 40px !important;
  min-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 255, 255, 0.20) !important;
  border-radius: 10px !important;
  color: #fff !important;
  background: linear-gradient(145deg, rgba(239, 119, 36, 0.96), rgba(47, 111, 189, 0.90)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 5px 12px rgba(0, 0, 0, 0.20) !important;
  font-size: 18px !important;
  line-height: 1 !important;
  transform: translateY(-50%) !important;
  cursor: pointer !important;
  touch-action: manipulation !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  .menu-toggler:hover,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  .menu-toggler:focus-visible {
  filter: brightness(1.12) saturate(1.08) !important;
  outline: 3px solid var(--bb-mobile-nav-focus) !important;
  outline-offset: 2px !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  li.menu-parent-open > :is(a, span) > .menu-toggler,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  .menu-toggler[aria-expanded="true"] {
  background: linear-gradient(145deg, var(--bb-mobile-nav-blue-soft), var(--bb-mobile-nav-orange)) !important;
  box-shadow:
    0 0 0 2px rgba(255, 209, 102, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  ul.menu-child {
  width: auto !important;
  min-width: 0 !important;
  margin: 1px 7px 9px 11px !important;
  padding: 6px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  border: 1px solid rgba(124, 164, 221, 0.22) !important;
  border-left: 3px solid rgba(239, 119, 36, 0.82) !important;
  border-radius: 10px !important;
  background:
    linear-gradient(180deg, rgba(47, 111, 189, 0.12), rgba(5, 8, 15, 0.30)) !important;
  box-shadow: inset 0 1px 12px rgba(0, 0, 0, 0.16) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  ul.menu-child > li {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(124, 164, 221, 0.16) !important;
  border-left: 2px solid rgba(239, 119, 36, 0.54) !important;
  border-radius: 7px !important;
  background: rgba(255, 255, 255, 0.025) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  ul.menu-child > li:last-child {
  border-bottom-color: transparent !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  ul.menu-child > li:hover,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  ul.menu-child > li:focus-within,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  ul.menu-child > li.active {
  border-left-color: var(--bb-mobile-nav-blue-soft) !important;
  background: linear-gradient(90deg, rgba(239, 119, 36, 0.16), rgba(47, 111, 189, 0.12)) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  li li > :is(a, span) {
  grid-template-columns: 27px minmax(0, 1fr) !important;
  column-gap: 8px !important;
  min-height: 44px !important;
  padding: 7px 49px 7px 8px !important;
  font-size: clamp(14px, 0.95vw, 15.5px) !important;
  font-weight: 720 !important;
  line-height: 1.24 !important;
  letter-spacing: 0 !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  li li > :is(a, span) > .bb-menu-glyph {
  width: 26px !important;
  min-width: 26px !important;
  height: 26px !important;
  min-height: 26px !important;
  border-radius: 7px !important;
  font-size: 12px !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  li li .menu-toggler {
  right: 5px !important;
  width: 36px !important;
  min-width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  border-radius: 9px !important;
  font-size: 16px !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  li li li > :is(a, span) {
  min-height: 42px !important;
  padding-block: 7px !important;
  font-size: clamp(13px, 0.88vw, 14.5px) !important;
  font-weight: 680 !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  ul.menu-child ul.menu-child {
  margin: 2px 3px 6px 7px !important;
  border-left-color: rgba(124, 164, 221, 0.62) !important;
}

html.bb-polish-v3 body .offcanvas-menu
  :is(a, button, input, [tabindex]):focus-visible {
  outline-color: var(--bb-mobile-nav-focus) !important;
}

@media (max-width: 480px) {
  html.bb-polish-v3 {
    --bb-mobile-nav-width: 100vw;
  }

  html.bb-polish-v3 body .offcanvas-menu {
    border-left: 0 !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner {
    padding-right: max(10px, env(safe-area-inset-right)) !important;
    padding-left: max(10px, env(safe-area-inset-left)) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
    li > :is(a, span) {
    grid-template-columns: 32px minmax(0, 1fr) !important;
    column-gap: 8px !important;
    min-height: 50px !important;
    padding: 7px 51px 7px 8px !important;
    font-size: clamp(15px, 4.4vw, 17px) !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
    .bb-menu-glyph {
    width: 30px !important;
    min-width: 30px !important;
    height: 30px !important;
    min-height: 30px !important;
    font-size: 13px !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
    .menu-toggler {
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
    min-height: 38px !important;
  }
}

@media (max-width: 360px) {
  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
    li > :is(a, span) {
    font-size: 15px !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
    li li > :is(a, span) {
    font-size: 13.5px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html.bb-polish-v3 body .offcanvas-menu,
  html.bb-polish-v3 body .offcanvas-menu * {
    scroll-behavior: auto !important;
  }
}

/* BISTRO BUDDY MOBILE MENU USABILITY PATCH END */
/*
 * BISTRO BUDDY mobile navigation command header — 2026-08-02
 * Keeps one real offcanvas logo, enlarges and centers it, suppresses duplicate
 * logo/search modules, and gives the navigation filter a clean animated home.
 */

@keyframes bbMobileBrandSweep {
  0% { transform: translateX(-145%) skewX(-18deg); opacity: 0; }
  14%, 72% { opacity: 0.7; }
  100% { transform: translateX(245%) skewX(-18deg); opacity: 0; }
}

@keyframes bbMobileBrandGlow {
  0%, 100% { opacity: 0.46; transform: scale(0.96); }
  50% { opacity: 0.9; transform: scale(1.05); }
}

@keyframes bbMobileLogoFloat {
  0%, 100% { transform: translate3d(0, 0, 0); }
  50% { transform: translate3d(0, -3px, 0); }
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-brand-shell {
  position: relative !important;
  isolation: isolate !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  padding: max(24px, env(safe-area-inset-top)) 54px 18px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(124, 164, 221, 0.34) !important;
  border-bottom: 0 !important;
  border-radius: 20px 20px 0 0 !important;
  color: #fff !important;
  background:
    radial-gradient(circle at 18% 15%, rgba(239, 119, 36, 0.26), transparent 42%),
    radial-gradient(circle at 82% 5%, rgba(47, 111, 189, 0.34), transparent 45%),
    linear-gradient(145deg, rgba(35, 36, 46, 0.98), rgba(14, 17, 25, 0.99)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 18px 34px rgba(0, 0, 0, 0.27) !important;
  overflow: hidden !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-brand-shell::before {
  content: "" !important;
  position: absolute !important;
  z-index: -1 !important;
  top: -35% !important;
  bottom: -35% !important;
  left: -30% !important;
  width: 32% !important;
  pointer-events: none !important;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.18),
    rgba(255, 154, 68, 0.20),
    transparent
  ) !important;
  filter: blur(2px) !important;
  animation: bbMobileBrandSweep 7.5s ease-in-out infinite !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-brand-shell::after {
  content: "" !important;
  position: absolute !important;
  z-index: -1 !important;
  left: 50% !important;
  bottom: -58px !important;
  width: min(82%, 360px) !important;
  height: 118px !important;
  pointer-events: none !important;
  border-radius: 50% !important;
  background: radial-gradient(
    ellipse,
    rgba(239, 119, 36, 0.24),
    rgba(47, 111, 189, 0.15) 45%,
    transparent 72%
  ) !important;
  filter: blur(8px) !important;
  transform: translateX(-50%) !important;
  animation: bbMobileBrandGlow 4.6s ease-in-out infinite !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-primary-logo {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: min(94%, 370px) !important;
  max-width: min(94%, 370px) !important;
  min-width: 0 !important;
  min-height: 72px !important;
  margin: 0 auto !important;
  padding: 8px 6px !important;
  box-sizing: border-box !important;
  border: 0 !important;
  color: inherit !important;
  background: transparent !important;
  box-shadow: none !important;
  text-decoration: none !important;
  animation: bbMobileLogoFloat 4.8s ease-in-out infinite !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-primary-logo :is(img, svg),
html.bb-polish-v3 body .offcanvas-menu :is(img, svg).bb-mobile-menu-primary-logo {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 102px !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  filter:
    drop-shadow(0 0 8px rgba(255, 154, 68, 0.28))
    drop-shadow(0 10px 18px rgba(0, 0, 0, 0.34)) !important;
}

html.bb-polish-v3 body .offcanvas-menu [data-bb-mobile-duplicate-logo="1"],
html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-native-search-suppressed {
  display: none !important;
}

html.bb-polish-v3 body .offcanvas-menu .close-offcanvas {
  z-index: 90 !important;
  top: max(10px, env(safe-area-inset-top)) !important;
  right: max(10px, env(safe-area-inset-right)) !important;
  display: grid !important;
  place-items: center !important;
  width: 42px !important;
  min-width: 42px !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 255, 255, 0.27) !important;
  border-radius: 14px !important;
  color: #fff !important;
  background:
    linear-gradient(145deg, rgba(239, 119, 36, 0.30), rgba(47, 111, 189, 0.30)),
    rgba(9, 12, 20, 0.78) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 8px 18px rgba(0, 0, 0, 0.28) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
}

html.bb-polish-v3 body .offcanvas-menu .close-offcanvas:hover,
html.bb-polish-v3 body .offcanvas-menu .close-offcanvas:focus-visible {
  color: #fff !important;
  filter: brightness(1.18) saturate(1.12) !important;
  outline: 3px solid var(--bb-mobile-nav-focus, #ffd166) !important;
  outline-offset: 2px !important;
}

/* Sticky navigation tools: search the mega menu in place and collapse it fast. */
html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-tools {
  position: sticky !important;
  z-index: 42 !important;
  top: 4px !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: -1px 0 12px !important;
  padding: 12px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(124, 164, 221, 0.34) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 0 0 18px 18px !important;
  color: #fff !important;
  background:
    radial-gradient(circle at 8% 0%, rgba(239, 119, 36, 0.16), transparent 35%),
    radial-gradient(circle at 92% 100%, rgba(47, 111, 189, 0.21), transparent 40%),
    linear-gradient(145deg, rgba(25, 27, 36, 0.97), rgba(12, 15, 23, 0.97)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    0 12px 28px rgba(0, 0, 0, 0.31) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-tools::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  right: 12% !important;
  left: 12% !important;
  height: 2px !important;
  pointer-events: none !important;
  border-radius: 999px !important;
  background: linear-gradient(
    90deg,
    transparent,
    var(--bb-mobile-nav-orange, #ef7724),
    var(--bb-mobile-nav-blue, #2f6fbd),
    transparent
  ) !important;
  box-shadow: 0 0 14px rgba(239, 119, 36, 0.42) !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-tools-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 9px !important;
  min-width: 0 !important;
  min-height: 38px !important;
  padding: 0 0 9px !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-tools-head strong {
  min-width: 0 !important;
  color: rgba(255, 255, 255, 0.95) !important;
  font-size: clamp(11px, 0.9vw, 13px) !important;
  font-weight: 950 !important;
  line-height: 1.15 !important;
  letter-spacing: 0.075em !important;
  text-align: center !important;
  text-transform: uppercase !important;
  overflow-wrap: anywhere !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-collapse,
html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-filter-clear {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 36px !important;
  margin: 0 !important;
  padding: 7px 10px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(255, 255, 255, 0.24) !important;
  border-radius: 10px !important;
  color: #fff !important;
  background: linear-gradient(145deg, var(--bb-mobile-nav-blue, #2f6fbd), var(--bb-mobile-nav-orange-deep, #c94f08)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.16),
    0 6px 12px rgba(0, 0, 0, 0.18) !important;
  font: inherit !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  touch-action: manipulation !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-filter-clear[hidden] {
  display: none !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-collapse:hover,
html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-collapse:focus-visible,
html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-filter-clear:hover,
html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-filter-clear:focus-visible {
  filter: brightness(1.14) saturate(1.1) !important;
  outline: 3px solid var(--bb-mobile-nav-focus, #ffd166) !important;
  outline-offset: 2px !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-search-row {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 auto !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-search-row::before {
  content: "⌕" !important;
  position: absolute !important;
  z-index: 3 !important;
  left: 15px !important;
  top: 50% !important;
  color: var(--bb-mobile-nav-orange-deep, #c94f08) !important;
  font-size: 25px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  pointer-events: none !important;
  transform: translateY(-52%) !important;
  filter: drop-shadow(0 0 8px rgba(239, 119, 36, 0.18)) !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-search-row input[type="search"] {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 13px 68px 13px 48px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(124, 164, 221, 0.56) !important;
  border-radius: 15px !important;
  color: #172033 !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(246, 250, 255, 0.98)) !important;
  box-shadow:
    inset 0 0 0 3px rgba(47, 111, 189, 0.045),
    0 8px 18px rgba(0, 0, 0, 0.18) !important;
  font: inherit !important;
  font-size: 16px !important;
  font-weight: 720 !important;
  line-height: 1.25 !important;
  text-align: left !important;
  transition:
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.18s ease !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-search-row input[type="search"]::placeholder {
  color: rgba(36, 49, 72, 0.64) !important;
  opacity: 1 !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-search-row input[type="search"]:focus {
  border-color: var(--bb-mobile-nav-orange, #ef7724) !important;
  outline: 0 !important;
  box-shadow:
    0 0 0 4px rgba(239, 119, 36, 0.17),
    0 0 24px rgba(47, 111, 189, 0.24),
    0 12px 24px rgba(0, 0, 0, 0.22) !important;
  transform: translateY(-1px) !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-search-row .bb-mobile-menu-filter-clear {
  position: absolute !important;
  z-index: 4 !important;
  right: 7px !important;
  top: 50% !important;
  min-width: 52px !important;
  min-height: 38px !important;
  padding: 7px 9px !important;
  transform: translateY(-50%) !important;
}

html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-status {
  display: block !important;
  width: 100% !important;
  min-height: 16px !important;
  margin: 7px 2px 0 !important;
  color: rgba(255, 255, 255, 0.76) !important;
  font-size: 11px !important;
  font-weight: 760 !important;
  line-height: 1.2 !important;
  text-align: center !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  li.bb-menu-filter-hidden {
  display: none !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  li.bb-menu-filter-open > ul.menu-child,
html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  li.bb-menu-filter-open > ul {
  display: block !important;
  max-height: none !important;
  height: auto !important;
  visibility: visible !important;
  opacity: 1 !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  li.bb-menu-filter-match > :is(a, span) {
  color: #fff !important;
  background: linear-gradient(90deg, rgba(239, 119, 36, 0.28), rgba(47, 111, 189, 0.20)) !important;
  box-shadow: inset 3px 0 0 var(--bb-mobile-nav-focus, #ffd166) !important;
}

html.bb-polish-v3 body .offcanvas-menu .offcanvas-inner ul.menu.bb-game-menu
  li.bb-menu-filter-match > :is(a, span)::after {
  content: "MATCH" !important;
  position: absolute !important;
  z-index: 2 !important;
  right: 52px !important;
  top: 4px !important;
  padding: 2px 5px !important;
  border-radius: 999px !important;
  color: #1b1b22 !important;
  background: var(--bb-mobile-nav-focus, #ffd166) !important;
  font-size: 8px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  letter-spacing: 0.06em !important;
}

@media (max-width: 480px) {
  html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-brand-shell {
    padding: max(20px, env(safe-area-inset-top)) 48px 14px !important;
    border-radius: 17px 17px 0 0 !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-primary-logo {
    width: min(96%, 330px) !important;
    max-width: min(96%, 330px) !important;
    min-height: 64px !important;
    padding-inline: 0 !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-tools {
    top: 3px !important;
    padding: 10px !important;
    border-radius: 0 0 15px 15px !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-tools-head {
    gap: 7px !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-tools-head strong {
    font-size: 10px !important;
    letter-spacing: 0.055em !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-collapse {
    min-height: 34px !important;
    padding-inline: 8px !important;
    font-size: 10px !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-search-row input[type="search"] {
    min-height: 50px !important;
    padding-right: 62px !important;
    padding-left: 45px !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .close-offcanvas {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
    border-radius: 13px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-brand-shell::before,
  html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-brand-shell::after,
  html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-primary-logo {
    animation: none !important;
  }

  html.bb-polish-v3 body .offcanvas-menu .bb-mobile-menu-search-row input[type="search"] {
    transition: none !important;
  }
}

:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body .offcanvas-menu .bb-mobile-menu-brand-shell::before,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body .offcanvas-menu .bb-mobile-menu-brand-shell::after,
:is(html.bb-polish-v3.bb281-reduce-motion, html.bb-polish-v3.bb281-low-motion, html.bb-polish-v3.bb-reduce-motion)
  body .offcanvas-menu .bb-mobile-menu-primary-logo {
  animation: none !important;
}

/* BISTRO BUDDY MOBILE MENU TOOLS CSS PATCH END */
/*
 * BISTRO BUDDY location search + dropdown patch — 2026-08-03
 * Replaces the old plain state lists with one consistent orange/blue card,
 * a working search field, and a real destination dropdown on every module.
 */

body .bb-location-modern {
  --bb-loc-orange: var(--bb-polish-orange, #ef7724);
  --bb-loc-orange-deep: var(--bb-polish-orange-deep, #c94f08);
  --bb-loc-blue: var(--bb-polish-blue, #2f6fbd);
  --bb-loc-blue-soft: var(--bb-polish-blue-soft, #7ca4dd);
  --bb-loc-ink: var(--bb-polish-ink, #25243d);
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  height: 100% !important;
  margin: clamp(10px, 1.6vw, 22px) 0 !important;
  padding: clamp(16px, 2vw, 24px) !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(47, 111, 189, 0.24) !important;
  border-top: 5px solid var(--bb-loc-orange) !important;
  border-radius: 22px !important;
  color: var(--bb-loc-ink) !important;
  background:
    radial-gradient(circle at 100% 0, rgba(47, 111, 189, 0.15), transparent 42%),
    radial-gradient(circle at 0 100%, rgba(239, 119, 36, 0.11), transparent 43%),
    linear-gradient(145deg, #fffdfb 0%, #f4f8ff 100%) !important;
  box-shadow: 0 16px 38px rgba(20, 31, 55, 0.16) !important;
  overflow: hidden !important;
  isolation: isolate !important;
}

body .bb-location-modern::after {
  content: "" !important;
  position: absolute !important;
  z-index: -1 !important;
  right: -52px !important;
  bottom: -62px !important;
  width: 158px !important;
  height: 158px !important;
  border: 18px solid rgba(239, 119, 36, 0.08) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
}

body .bb-location-modern .sp-module-title,
body .bb-location-modern > h1,
body .bb-location-modern > h2,
body .bb-location-modern > h3,
body .bb-location-modern > h4,
body .bb-location-modern > h5,
body .bb-location-modern > h6 {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px 12px !important;
  width: 100% !important;
  margin: 0 0 13px !important;
  color: var(--bb-loc-ink) !important;
  font-size: clamp(20px, 1.45vw, 30px) !important;
  font-weight: 950 !important;
  line-height: 1.12 !important;
  letter-spacing: -0.028em !important;
}

body .bb-location-modern .bb-location-count-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 28px !important;
  padding: 5px 10px !important;
  border: 1px solid rgba(255, 255, 255, 0.58) !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--bb-loc-orange), var(--bb-loc-blue)) !important;
  box-shadow: 0 7px 16px rgba(47, 111, 189, 0.2) !important;
  font-size: 0.69rem !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

body .bb-location-modern .bb-location-search-dropdown {
  position: relative !important;
  z-index: 3 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.25fr) minmax(160px, 0.95fr) !important;
  gap: 9px !important;
  width: 100% !important;
  margin: 0 0 8px !important;
}

body .bb-location-modern .bb-location-search-wrap,
body .bb-location-modern .bb-location-select-wrap {
  position: relative !important;
  min-width: 0 !important;
}

body .bb-location-modern .bb-location-search-wrap::before {
  content: "⌕" !important;
  position: absolute !important;
  top: 50% !important;
  left: 13px !important;
  z-index: 2 !important;
  color: var(--bb-loc-blue) !important;
  font-size: 1.05rem !important;
  font-weight: 900 !important;
  pointer-events: none !important;
  transform: translateY(-50%) !important;
}

body .bb-location-modern .bb-location-modern-search,
body .bb-location-modern .bb-location-modern-select {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 44px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(47, 111, 189, 0.3) !important;
  border-radius: 13px !important;
  color: var(--bb-loc-ink) !important;
  background-color: rgba(255, 255, 255, 0.98) !important;
  box-shadow: inset 0 0 0 3px rgba(47, 111, 189, 0.035), 0 5px 13px rgba(37, 36, 61, 0.05) !important;
  font: inherit !important;
  font-size: 0.93rem !important;
}

body .bb-location-modern .bb-location-modern-search {
  padding: 10px 14px 10px 38px !important;
}

body .bb-location-modern .bb-location-modern-select {
  padding: 10px 38px 10px 13px !important;
  appearance: auto !important;
  cursor: pointer !important;
}

body .bb-location-modern .bb-location-modern-search:focus,
body .bb-location-modern .bb-location-modern-select:focus {
  border-color: var(--bb-loc-orange) !important;
  outline: 3px solid rgba(239, 119, 36, 0.17) !important;
  outline-offset: 1px !important;
}

body .bb-location-modern .bb-location-modern-status {
  grid-column: 1 / -1 !important;
  display: block !important;
  min-height: 18px !important;
  margin: -1px 2px 0 !important;
  color: rgba(37, 36, 61, 0.78) !important;
  font-size: 0.74rem !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  text-align: right !important;
}

body .bb-location-modern [id="businesslocations"],
body .bb-location-modern .locations-content,
body .bb-location-modern .sp-module-content {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
}

body .bb-location-modern .locations-content > ul,
body .bb-location-modern [id="businesslocations"] > ul {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 9px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body .bb-location-modern .locations-content > ul > li,
body .bb-location-modern [id="businesslocations"] li {
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body .bb-location-modern .locations-content > ul > li.location-region,
body .bb-location-modern [id="businesslocations"] li.location-region {
  grid-column: 1 / -1 !important;
  margin-bottom: 2px !important;
}

body .bb-location-modern [id="businesslocations"] li > a,
body .bb-location-modern .locations-content li > a {
  display: flex !important;
  align-items: center !important;
  min-width: 0 !important;
  min-height: 40px !important;
  padding: 9px 11px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(47, 111, 189, 0.21) !important;
  border-radius: 12px !important;
  color: var(--bb-loc-ink) !important;
  background: rgba(255, 255, 255, 0.94) !important;
  box-shadow: 0 5px 13px rgba(37, 36, 61, 0.07) !important;
  font-size: clamp(11px, 0.74vw, 14px) !important;
  font-weight: 820 !important;
  line-height: 1.18 !important;
  overflow-wrap: anywhere !important;
  text-decoration: none !important;
  transition: transform 0.2s ease, color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
}

body .bb-location-modern [id="businesslocations"] li:nth-child(4n + 1):not(.location-region) > a,
body .bb-location-modern .locations-content li:nth-child(4n + 1):not(.location-region) > a {
  border-left: 4px solid var(--bb-loc-orange) !important;
}

body .bb-location-modern [id="businesslocations"] li:nth-child(4n + 2):not(.location-region) > a,
body .bb-location-modern .locations-content li:nth-child(4n + 2):not(.location-region) > a {
  border-left: 4px solid var(--bb-loc-blue) !important;
}

body .bb-location-modern [id="businesslocations"] li.location-region > a,
body .bb-location-modern .locations-content li.location-region > a {
  justify-content: center !important;
  min-height: 42px !important;
  border: 0 !important;
  color: #fff !important;
  background: linear-gradient(105deg, var(--bb-loc-orange), var(--bb-loc-blue)) !important;
  box-shadow: 0 9px 20px rgba(47, 111, 189, 0.23) !important;
  font-size: 0.84rem !important;
  font-weight: 950 !important;
  text-align: center !important;
}

body .bb-location-modern [id="businesslocations"] li > a:hover,
body .bb-location-modern [id="businesslocations"] li > a:focus-visible,
body .bb-location-modern .locations-content li > a:hover,
body .bb-location-modern .locations-content li > a:focus-visible {
  color: #fff !important;
  border-color: var(--bb-loc-orange) !important;
  background: linear-gradient(105deg, var(--bb-loc-orange), var(--bb-loc-blue)) !important;
  box-shadow: 0 12px 24px rgba(47, 111, 189, 0.24) !important;
  transform: translateY(-3px) !important;
  outline: none !important;
}

body .bb-location-modern .bb-location-modern-reveal {
  position: relative !important;
  z-index: 3 !important;
  align-self: flex-start !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  margin: 12px 0 0 !important;
  padding: 7px 13px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--bb-loc-orange), var(--bb-loc-blue)) !important;
  box-shadow: 0 8px 17px rgba(47, 111, 189, 0.21) !important;
  font-size: 0.76rem !important;
  font-weight: 950 !important;
  line-height: 1.1 !important;
  cursor: pointer !important;
}

body .bb-location-modern .bb-location-modern-reveal:hover,
body .bb-location-modern .bb-location-modern-reveal:focus-visible {
  filter: brightness(1.07) saturate(1.08) !important;
  transform: translateY(-2px) !important;
  outline: 3px solid rgba(239, 119, 36, 0.18) !important;
  outline-offset: 2px !important;
}

body .bb-location-modern .bb-location-hidden,
body .bb-location-modern [hidden] {
  display: none !important;
}

@media (max-width: 991.98px) {
  body .bb-location-modern .bb-location-search-dropdown {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .bb-location-modern .bb-location-modern-status {
    grid-column: 1 !important;
  }
}

@media (max-width: 767.98px) {
  body .bb-location-modern {
    height: auto !important;
    padding: 14px !important;
    border-radius: 18px !important;
  }

  body .bb-location-modern .locations-content > ul,
  body .bb-location-modern [id="businesslocations"] > ul {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
}

@media (max-width: 420px) {
  body .bb-location-modern .locations-content > ul,
  body .bb-location-modern [id="businesslocations"] > ul {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .bb-location-modern .bb-location-count-badge {
    white-space: normal !important;
  }
}

/* BISTRO BUDDY LOCATION SEARCH DROPDOWN CSS PATCH END */
/* BISTRO BUDDY USER + COMMERCE LAYOUT REPAIR BEGIN
 * Version: 2026.08.03.1
 * Scope: authenticated EasySocial account/profile forms and BISTRO BUDDY
 * dashboard, listing-management, package, cart, payment and checkout views.
 * This intentionally does not target public search, event or company pages.
 */

:root {
  --bb-account-orange: #ef7724;
  --bb-account-orange-deep: #c9510b;
  --bb-account-blue: #2f6fbd;
  --bb-account-blue-deep: #174a88;
  --bb-account-green: #15956b;
  --bb-account-ink: #20263a;
  --bb-account-muted: #667085;
  --bb-account-line: rgba(47, 111, 189, 0.18);
  --bb-account-surface: #ffffff;
  --bb-account-canvas: #f4f7fb;
  --bb-account-shadow: 0 16px 40px rgba(31, 42, 68, 0.12);
}

/* Exact component/view allow-list. */
:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations),
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) {
  color: var(--bb-account-ink);
  background: var(--bb-account-canvas);
}

:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #sp-main-body,
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) #sp-main-body {
  min-height: 65vh;
  padding: clamp(18px, 3vw, 42px) 0 clamp(42px, 6vw, 86px) !important;
  background:
    radial-gradient(circle at 7% 2%, rgba(239, 119, 36, 0.09), transparent 28%),
    radial-gradient(circle at 96% 12%, rgba(47, 111, 189, 0.1), transparent 31%),
    var(--bb-account-canvas) !important;
}

:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #sp-main-body > .container,
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) #sp-main-body > .container {
  width: min(100% - 24px, 1560px) !important;
  max-width: 1560px !important;
  margin-inline: auto !important;
  padding-inline: 0 !important;
}

:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) :is(#sp-component, #sp-component > .sp-column, .container-inner),
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) :is(#sp-component, #sp-component > .sp-column, .container-inner) {
  min-width: 0 !important;
  max-width: none !important;
}

/* Main application surfaces. */
:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es,
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) :is(
  #jbd-container,
  .jbd-container,
  .jbd-dashboard,
  .jbd-user-dashboard,
  .business-form-container,
  .company-form,
  #company-form,
  .manage-company,
  .package-container,
  .packages-container,
  .cart-container,
  .payment-container,
  .checkout-container
) {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es {
  --es-primary: var(--bb-account-blue);
  --es-border: var(--bb-account-line);
  overflow: visible !important;
}

/* Card/panel normalization without flattening component semantics. */
:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is(
  .es-card,
  .o-card,
  .t-card,
  .es-panel,
  .o-box,
  .es-form,
  .es-profile-edit,
  .es-profile-edit-form
),
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) :is(
  .jbd-card,
  .jbd-panel,
  .panel,
  .card,
  .box,
  .form-box,
  .fieldset,
  fieldset,
  .package-item,
  .package-card,
  .cart-item,
  .payment-box,
  .checkout-box
) {
  min-width: 0 !important;
  border: 1px solid var(--bb-account-line) !important;
  border-radius: 18px !important;
  background: var(--bb-account-surface) !important;
  box-shadow: var(--bb-account-shadow) !important;
}

:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is(.es-card, .o-card, .t-card, .es-panel, .o-box, .es-form),
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) :is(.jbd-card, .jbd-panel, .panel, .card, .box, .form-box, .package-item, .package-card, .cart-item, .payment-box, .checkout-box) {
  padding: clamp(16px, 2.4vw, 30px) !important;
}

/* Prevent legacy fixed columns and horizontal page overflow. */
:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is(.row, .o-grid, .es-content, .es-container, .es-profile-edit),
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) :is(.row, .jbd-row, .form-horizontal, .form-grid, .business-form, .company-form) {
  max-width: 100% !important;
  min-width: 0 !important;
}

:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is([class*="col-"], .es-sidebar, .es-content),
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) :is([class*="col-"], .jbd-sidebar, .jbd-content, .form-column) {
  min-width: 0 !important;
}

/* Forms. */
:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea, .o-form-control, .form-control),
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea, .form-control, .inputbox) {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 46px !important;
  padding: 10px 13px !important;
  border: 1px solid rgba(47, 111, 189, 0.28) !important;
  border-radius: 11px !important;
  color: var(--bb-account-ink) !important;
  background: #fff !important;
  box-shadow: 0 1px 2px rgba(31, 42, 68, 0.04) !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
}

:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es textarea,
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) textarea {
  min-height: 130px !important;
  resize: vertical !important;
}

:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is(input, select, textarea):focus,
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) :is(input, select, textarea):focus {
  border-color: var(--bb-account-blue) !important;
  outline: 0 !important;
  box-shadow: 0 0 0 4px rgba(47, 111, 189, 0.14) !important;
}

:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is(label, .control-label, .o-form-label),
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) :is(label, .control-label, .form-label) {
  color: #30384d !important;
  font-weight: 750 !important;
  line-height: 1.35 !important;
}

:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is(.control-group, .form-group, .o-form-group, .es-field),
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) :is(.control-group, .form-group, .jbd-form-group) {
  margin-bottom: 18px !important;
}

/* Buttons and actions. */
:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is(.btn, .o-btn, button, input[type="submit"]),
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) :is(.btn, .button, button, input[type="submit"]) {
  min-height: 44px !important;
  padding: 10px 17px !important;
  border-radius: 11px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  white-space: normal !important;
}

:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is(.btn-primary, .o-btn--primary),
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) :is(.btn-primary, .button-primary, .jbd-button-primary) {
  border-color: transparent !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--bb-account-orange), var(--bb-account-orange-deep)) !important;
  box-shadow: 0 9px 20px rgba(239, 119, 36, 0.24) !important;
}

/* Navigation tabs, progress and dashboard menus. */
:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is(.nav-tabs, .o-tabs, .es-nav, .es-profile-edit-nav),
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) :is(.nav-tabs, .jbd-tabs, .process-steps, .checkout-steps, .dashboard-menu) {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  max-width: 100% !important;
  padding: 8px !important;
  border: 1px solid var(--bb-account-line) !important;
  border-radius: 14px !important;
  background: rgba(255, 255, 255, 0.82) !important;
  overflow: visible !important;
}

:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is(.nav-tabs, .o-tabs, .es-nav, .es-profile-edit-nav) a,
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) :is(.nav-tabs, .jbd-tabs, .process-steps, .checkout-steps, .dashboard-menu) a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 42px !important;
  padding: 9px 13px !important;
  border: 0 !important;
  border-radius: 10px !important;
  color: var(--bb-account-blue-deep) !important;
  background: rgba(47, 111, 189, 0.07) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

/* Tables stay readable without forcing the whole page wider than the viewport. */
:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is(.table-responsive, .o-table-responsive),
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) :is(.table-responsive, .jbd-table-responsive, .responsive-table) {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es table,
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) table {
  max-width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}

/* Messages and validation errors. */
:is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is(.alert, .o-alert, .es-alert),
body.com-jbusinessdirectory:is(
  .view-useroptions,
  .view-userdashboard,
  .view-managecompanies,
  .view-managecompany,
  .view-managecompanyarticles,
  .view-managecompanyarticle,
  .view-managecompanyoffers,
  .view-managecompanyoffer,
  .view-managecompanyoffercoupons,
  .view-managecompanyoffercoupon,
  .view-managebookmarks,
  .view-suggestions,
  .view-manageuserpackageorders,
  .view-packages,
  .view-cart,
  .view-payment,
  .view-checkout
) :is(.alert, .jbd-alert, .error, .message) {
  max-width: 100% !important;
  padding: 13px 15px !important;
  border-radius: 12px !important;
  overflow-wrap: anywhere !important;
}

@media (max-width: 767.98px) {
  :is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #sp-main-body > .container,
  body.com-jbusinessdirectory:is(
    .view-useroptions,
    .view-userdashboard,
    .view-managecompanies,
    .view-managecompany,
    .view-managecompanyarticles,
    .view-managecompanyarticle,
    .view-managecompanyoffers,
    .view-managecompanyoffer,
    .view-managecompanyoffercoupons,
    .view-managecompanyoffercoupon,
    .view-managebookmarks,
    .view-suggestions,
    .view-manageuserpackageorders,
    .view-packages,
    .view-cart,
    .view-payment,
    .view-checkout
  ) #sp-main-body > .container {
    width: min(100% - 14px, 1560px) !important;
  }

  :is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is(.row, .o-grid, .es-content, .es-container, .es-profile-edit),
  body.com-jbusinessdirectory:is(
    .view-useroptions,
    .view-userdashboard,
    .view-managecompanies,
    .view-managecompany,
    .view-managecompanyarticles,
    .view-managecompanyarticle,
    .view-managecompanyoffers,
    .view-managecompanyoffer,
    .view-managecompanyoffercoupons,
    .view-managecompanyoffercoupon,
    .view-managebookmarks,
    .view-suggestions,
    .view-manageuserpackageorders,
    .view-packages,
    .view-cart,
    .view-payment,
    .view-checkout
  ) :is(.row, .jbd-row, .form-horizontal, .form-grid, .business-form, .company-form) {
    margin-inline: 0 !important;
  }

  :is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is([class*="col-"], .es-sidebar, .es-content),
  body.com-jbusinessdirectory:is(
    .view-useroptions,
    .view-userdashboard,
    .view-managecompanies,
    .view-managecompany,
    .view-managecompanyarticles,
    .view-managecompanyarticle,
    .view-managecompanyoffers,
    .view-managecompanyoffer,
    .view-managecompanyoffercoupons,
    .view-managecompanyoffercoupon,
    .view-managebookmarks,
    .view-suggestions,
    .view-manageuserpackageorders,
    .view-packages,
    .view-cart,
    .view-payment,
    .view-checkout
  ) :is([class*="col-"], .jbd-sidebar, .jbd-content, .form-column) {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    padding-inline: 0 !important;
  }

  :is(body.com-easysocial.view-profile.layout-edit, body.com-easysocial.view-user, body.com-easysocial.view-users, body.com-easysocial.view-account, body.com-easysocial.view-privacy, body.com-easysocial.view-notifications, body.com-easysocial.view-conversations) #es :is(.btn, .o-btn, button, input[type="submit"]),
  body.com-jbusinessdirectory:is(
    .view-useroptions,
    .view-userdashboard,
    .view-managecompanies,
    .view-managecompany,
    .view-managecompanyarticles,
    .view-managecompanyarticle,
    .view-managecompanyoffers,
    .view-managecompanyoffer,
    .view-managecompanyoffercoupons,
    .view-managecompanyoffercoupon,
    .view-managebookmarks,
    .view-suggestions,
    .view-manageuserpackageorders,
    .view-packages,
    .view-cart,
    .view-payment,
    .view-checkout
  ) :is(.btn, .button, button, input[type="submit"]) {
    max-width: 100% !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.com-easysocial #es *,
  body.com-jbusinessdirectory:is(
    .view-useroptions,
    .view-userdashboard,
    .view-managecompanies,
    .view-managecompany,
    .view-managecompanyarticles,
    .view-managecompanyarticle,
    .view-managecompanyoffers,
    .view-managecompanyoffer,
    .view-managecompanyoffercoupons,
    .view-managecompanyoffercoupon,
    .view-managebookmarks,
    .view-suggestions,
    .view-manageuserpackageorders,
    .view-packages,
    .view-cart,
    .view-payment,
    .view-checkout
  ) * {
    scroll-behavior: auto !important;
  }
}

/* BISTRO BUDDY USER + COMMERCE LAYOUT REPAIR END */

/* BISTRO BUDDY REGISTRATION FLOW GLOBAL CSS START */
/* BISTRO BUDDY registration chooser refinement — 2026-08-03 */
body:has(.bb-registration-native-v1) #sp-main-body > .container,
body:has(.bb-registration-native-v1) #sp-main-body > .container > .container-inner {
    width: 100% !important;
    max-width: 1360px !important;
    margin-inline: auto !important;
    padding-inline: clamp(12px, 2vw, 28px) !important;
}

body:has(.bb-registration-native-v1) #sp-main-body .row {
    display: block !important;
    margin-inline: 0 !important;
}

body:has(.bb-registration-native-v1) #sp-main-body #sp-left,
body:has(.bb-registration-native-v1) #sp-main-body #sp-right,
body:has(.bb-registration-native-v1) #sp-main-body .google-auto-placed,
body:has(.bb-registration-native-v1) #sp-main-body ins.adsbygoogle {
    display: none !important;
}

body:has(.bb-registration-native-v1) #sp-main-body #sp-component,
body:has(.bb-registration-native-v1) #sp-main-body .sp-column {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    margin-inline: auto !important;
    padding-inline: 0 !important;
}

.bb-registration-native-v1 {
    width: min(1240px, 100%) !important;
    margin-inline: auto !important;
}

.bb-registration-native-v1 .bb-reg-hero {
    width: 100% !important;
}

.bb-registration-native-v1 .bb-reg-toolbar {
    max-width: 1180px !important;
}

.bb-registration-native-v1 .bb-reg-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    max-width: 1180px !important;
    margin-inline: auto !important;
}

.bb-registration-native-v1 .bb-reg-card[data-kind="professional"] {
    --bb-card-accent: var(--bb-reg-blue) !important;
}

.bb-registration-native-v1 .bb-reg-card-top {
    display: grid !important;
    grid-template-columns: 1fr !important;
    place-items: center !important;
    min-height: 220px !important;
    padding: 34px 24px 30px !important;
    text-align: center !important;
}

.bb-registration-native-v1 .bb-reg-avatar {
    width: 132px !important;
    height: 132px !important;
    flex-basis: 132px !important;
    margin: 0 auto !important;
    border-width: 4px !important;
    border-radius: 34px !important;
    box-shadow: 0 22px 48px rgba(0,0,0,.34) !important;
}

.bb-registration-native-v1 .bb-reg-avatar svg {
    width: 72px !important;
    height: 72px !important;
}

.bb-registration-native-v1 .bb-reg-badges {
    position: absolute !important;
    top: 16px !important;
    right: 16px !important;
    align-items: flex-end !important;
}

.bb-registration-native-v1 .bb-reg-card-body {
    padding: 28px !important;
}

.bb-registration-native-v1 .bb-reg-guide-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 13px 20px;
    border: 0;
    border-radius: 14px;
    color: #fff;
    background: linear-gradient(135deg, var(--bb-reg-blue), #174f9c);
    box-shadow: 0 13px 30px rgba(38,116,217,.24);
    font: inherit;
    font-weight: 950;
    cursor: pointer;
    white-space: nowrap;
}

.bb-registration-native-v1 .bb-reg-guide-toggle:hover,
.bb-registration-native-v1 .bb-reg-guide-toggle:focus-visible {
    transform: translateY(-2px);
    outline: 3px solid rgba(38,116,217,.22);
    outline-offset: 3px;
}

.bb-registration-native-v1 .bb-reg-profile-guide {
    margin-top: 18px;
    padding: clamp(24px, 4vw, 42px);
    border: 1px solid rgba(38,116,217,.18);
    border-radius: 25px;
    background: linear-gradient(145deg, #fff, #f4f8ff);
    box-shadow: 0 18px 48px rgba(23,32,51,.1);
}

.bb-registration-native-v1 .bb-reg-profile-guide[hidden] {
    display: none !important;
}

.bb-registration-native-v1 .bb-reg-guide-heading {
    margin: 0 0 8px;
    color: var(--bb-reg-ink);
    font-size: clamp(25px, 3vw, 38px);
    font-weight: 1000;
    letter-spacing: -.035em;
}

.bb-registration-native-v1 .bb-reg-guide-intro {
    margin: 0 0 22px;
    color: var(--bb-reg-muted);
    line-height: 1.6;
}

.bb-registration-native-v1 .bb-reg-guide-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.bb-registration-native-v1 .bb-reg-guide-choice {
    min-height: 100%;
    padding: 18px;
    border: 1px solid rgba(38,116,217,.14);
    border-radius: 18px;
    background: #fff;
}

.bb-registration-native-v1 .bb-reg-guide-choice strong {
    display: block;
    margin-bottom: 7px;
    color: var(--bb-reg-ink);
    font-size: 16px;
    font-weight: 950;
}

.bb-registration-native-v1 .bb-reg-guide-choice p {
    margin: 0 0 14px;
    color: var(--bb-reg-muted);
    font-size: 13px;
    line-height: 1.55;
}

.bb-registration-native-v1 .bb-reg-guide-choice button {
    min-height: 39px;
    padding: 8px 12px;
    border: 0;
    border-radius: 11px;
    color: #fff;
    background: var(--bb-reg-blue);
    font: inherit;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
}

.bb-registration-native-v1 .bb-reg-privacy-guide {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 14px;
}

.bb-registration-native-v1 .bb-reg-privacy-guide > div {
    padding: 17px;
    border-radius: 17px;
    background: rgba(38,116,217,.07);
}

.bb-registration-native-v1 .bb-reg-privacy-guide strong {
    color: var(--bb-reg-ink);
    font-weight: 950;
}

.bb-registration-native-v1 .bb-reg-privacy-guide p {
    margin: 5px 0 0;
    color: var(--bb-reg-muted);
    font-size: 13px;
    line-height: 1.5;
}

@media (max-width: 980px) {
    .bb-registration-native-v1 .bb-reg-guide-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 820px) {
    .bb-registration-native-v1 .bb-reg-grid {
        grid-template-columns: 1fr !important;
        max-width: 650px !important;
    }

    .bb-registration-native-v1 .bb-reg-card-top {
        min-height: 200px !important;
    }
}

@media (max-width: 620px) {
    body:has(.bb-registration-native-v1) #sp-main-body > .container,
    body:has(.bb-registration-native-v1) #sp-main-body > .container > .container-inner {
        padding-inline: 7px !important;
    }

    .bb-registration-native-v1 .bb-reg-avatar {
        width: 116px !important;
        height: 116px !important;
        flex-basis: 116px !important;
    }

    .bb-registration-native-v1 .bb-reg-guide-grid,
    .bb-registration-native-v1 .bb-reg-privacy-guide {
        grid-template-columns: 1fr;
    }
}


/* BISTRO BUDDY registration flow polish — 2026-08-03 */
body.bb-registration-step-page #sp-main-body {
    padding: clamp(16px, 3vw, 34px) 0 54px !important;
    background:
        radial-gradient(circle at 7% 7%, rgba(244,122,32,.09), transparent 30%),
        radial-gradient(circle at 93% 9%, rgba(38,116,217,.11), transparent 34%),
        #f5f8fc !important;
}

body.bb-registration-step-page #sp-main-body > .container,
body.bb-registration-step-page #sp-main-body > .container > .container-inner {
    width: 100% !important;
    max-width: 1280px !important;
    margin-inline: auto !important;
    padding-inline: clamp(9px, 2vw, 24px) !important;
}

body.bb-registration-step-page #sp-main-body .row {
    display: block !important;
    margin-inline: 0 !important;
}

body.bb-registration-step-page #sp-main-body #sp-left,
body.bb-registration-step-page #sp-main-body #sp-right,
body.bb-registration-step-page #sp-main-body .google-auto-placed,
body.bb-registration-step-page #sp-main-body ins.adsbygoogle,
body.bb-registration-step-page #sp-main-body [data-ad-slot] {
    display: none !important;
}

body.bb-registration-step-page #sp-main-body #sp-component,
body.bb-registration-step-page #sp-main-body .sp-column {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    margin-inline: auto !important;
    padding-inline: 0 !important;
}

.bb-registration-step-polished,
.bb-registration-step-polished * {
    box-sizing: border-box;
}

.bb-registration-step-polished {
    --bb-step-orange: #f47a20;
    --bb-step-blue: #2674d9;
    --bb-step-blue-deep: #174f9c;
    --bb-step-ink: #172033;
    --bb-step-muted: #64748b;
    width: min(1140px, 100%) !important;
    max-width: 1140px !important;
    margin: 0 auto !important;
    color: var(--bb-step-ink);
}

.bb-registration-step-polished > .es-content {
    width: 100% !important;
    max-width: none !important;
}

.bb-step-hero-v3 {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(240px, 330px);
    gap: clamp(20px, 4vw, 50px);
    align-items: center;
    margin-bottom: 22px;
    padding: clamp(26px, 4vw, 50px);
    overflow: hidden;
    border: 1px solid rgba(116,173,255,.25);
    border-radius: clamp(22px, 3vw, 34px);
    color: #fff;
    background:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px),
        radial-gradient(circle at 14% 10%, rgba(244,122,32,.34), transparent 32%),
        radial-gradient(circle at 90% 80%, rgba(38,116,217,.45), transparent 36%),
        linear-gradient(135deg, #080b13, #111827 52%, #07152e);
    background-size: 34px 34px, 34px 34px, auto, auto, auto;
    box-shadow: 0 28px 76px rgba(9,13,23,.28);
}

.bb-step-hero-v3 .bb-step-eyebrow {
    margin: 0 0 13px;
    color: #ffb277;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.bb-step-hero-v3 h1 {
    margin: 0;
    color: #fff;
    font-size: clamp(32px, 5vw, 60px);
    font-weight: 1000;
    line-height: 1;
    letter-spacing: -.05em;
    text-wrap: balance;
}

.bb-step-hero-v3 h1 strong {
    color: transparent;
    background: linear-gradient(90deg, #ff9a4d, var(--bb-step-orange) 40%, #74adff 88%);
    -webkit-background-clip: text;
    background-clip: text;
}

.bb-step-hero-v3 .bb-step-lede {
    max-width: 680px;
    margin: 17px 0 0;
    color: rgba(255,255,255,.76);
    font-size: clamp(15px, 1.5vw, 19px);
    line-height: 1.55;
}

.bb-step-summary-v3 {
    padding: 18px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 19px;
    background: rgba(5,9,18,.5);
    backdrop-filter: blur(14px);
}

.bb-step-summary-v3 small {
    display: block;
    color: rgba(255,255,255,.55);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.bb-step-summary-v3 strong {
    display: block;
    margin-top: 4px;
    color: #fff;
    font-size: 16px;
    font-weight: 950;
}

.bb-step-summary-v3 a {
    display: inline-flex;
    margin-top: 12px;
    color: #9fc5ff !important;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none !important;
}

.bb-step-summary-v3 .bb-step-meter {
    height: 9px;
    margin-top: 17px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(255,255,255,.1);
}

.bb-step-summary-v3 .bb-step-meter span {
    display: block;
    width: var(--bb-step-progress, 25%);
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--bb-step-orange), var(--bb-step-blue));
}

.bb-registration-step-polished .bb-step-native-progress-v3 {
    margin: 0 0 22px !important;
    padding: 13px 18px !important;
    border: 1px solid rgba(38,116,217,.14) !important;
    border-radius: 18px !important;
    background: rgba(255,255,255,.9) !important;
    box-shadow: 0 12px 34px rgba(23,32,51,.08) !important;
}

.bb-registration-step-polished .profile-selected {
    display: none !important;
}

.bb-registration-step-polished [data-registration-form] {
    width: 100% !important;
    max-width: none !important;
    overflow: hidden !important;
    border: 1px solid rgba(38,116,217,.16) !important;
    border-radius: clamp(22px, 3vw, 30px) !important;
    background: #fff !important;
    box-shadow: 0 24px 68px rgba(23,32,51,.13) !important;
}

.bb-step-form-heading-v3 {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    padding: clamp(24px, 4vw, 40px);
    border-bottom: 1px solid #dbe5f2;
    background:
        radial-gradient(circle at 96% 0%, rgba(38,116,217,.11), transparent 34%),
        linear-gradient(145deg, #fff, #f8fbff);
}

.bb-step-form-heading-v3 p {
    margin: 0 0 7px;
    color: var(--bb-step-blue);
    font-size: 11px;
    font-weight: 950;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.bb-step-form-heading-v3 h2 {
    margin: 0;
    color: var(--bb-step-ink);
    font-size: clamp(26px, 3vw, 40px);
    font-weight: 1000;
    letter-spacing: -.04em;
}

.bb-step-form-heading-v3 > span {
    color: var(--bb-step-muted);
    font-size: 12px;
    font-weight: 800;
    text-align: right;
}

.bb-registration-step-polished :is(.es-forms__group, .es-forms__content, .o-form-horizontal) {
    width: 100% !important;
    max-width: none !important;
}

.bb-registration-step-polished .o-form-horizontal {
    padding: clamp(8px, 2vw, 20px) clamp(16px, 3vw, 36px) !important;
}

.bb-registration-step-polished [data-field-item] {
    border-bottom: 1px solid #edf1f6;
}

.bb-registration-step-polished [data-field-item] > .o-form-group,
.bb-registration-step-polished [data-field-item] > div > .o-form-group {
    display: grid !important;
    grid-template-columns: minmax(165px, 220px) minmax(0, 1fr) !important;
    gap: clamp(18px, 3vw, 36px) !important;
    align-items: start !important;
    width: 100% !important;
    margin: 0 !important;
    padding: clamp(20px, 3vw, 30px) 0 !important;
}

.bb-registration-step-polished :is(.o-form-label, .o-control-label, .control-label) {
    width: auto !important;
    max-width: none !important;
    padding: 10px 0 0 !important;
    color: var(--bb-step-ink) !important;
    font-size: 13px !important;
    font-weight: 950 !important;
    line-height: 1.4 !important;
    text-align: left !important;
}

.bb-registration-step-polished :is(.o-form-input, .o-control-input, .controls) {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
}

.bb-registration-step-polished :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), select, textarea, .o-form-control) {
    width: 100% !important;
    max-width: none !important;
    min-height: 48px !important;
    padding: 11px 14px !important;
    border: 1px solid #cfd9e6 !important;
    border-radius: 12px !important;
    color: #172033 !important;
    background: #fff !important;
    box-shadow: 0 1px 0 rgba(23,32,51,.03) !important;
    font-size: 14px !important;
}

.bb-registration-step-polished textarea {
    min-height: 130px !important;
}

.bb-registration-step-polished :is(input, select, textarea):focus {
    border-color: var(--bb-step-blue) !important;
    outline: none !important;
    box-shadow: 0 0 0 4px rgba(38,116,217,.13) !important;
}

.bb-registration-step-polished :is(.help-block, .o-help-block, .t-text--muted, [class*="note"], small) {
    color: var(--bb-step-muted) !important;
    line-height: 1.5 !important;
}

.bb-registration-step-polished [data-field-item="avatar"] :is(.o-form-input, .o-control-input, .controls),
.bb-registration-step-polished [data-field-item="cover"] :is(.o-form-input, .o-control-input, .controls) {
    display: grid !important;
    justify-items: center !important;
    text-align: center !important;
}

.bb-registration-step-polished [data-field-item="avatar"] :is(.o-avatar, .o-avatar-v2, .es-avatar, [data-avatar], [class*="avatar-preview"]) {
    width: 158px !important;
    height: 158px !important;
    max-width: 158px !important;
    margin: 0 auto 17px !important;
    overflow: hidden !important;
    border: 4px solid #fff !important;
    border-radius: 36px !important;
    background: linear-gradient(135deg, rgba(244,122,32,.16), rgba(38,116,217,.17)) !important;
    box-shadow: 0 18px 46px rgba(23,32,51,.2), 0 0 0 1px rgba(38,116,217,.16) !important;
}

.bb-registration-step-polished [data-field-item="avatar"] :is(.o-avatar, .o-avatar-v2, .es-avatar, [data-avatar], [class*="avatar-preview"]) img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.bb-registration-step-polished [data-field-item="cover"] :is(.es-cover, [data-cover], [class*="cover-preview"], img) {
    width: min(100%, 820px) !important;
    max-width: 820px !important;
    margin-inline: auto !important;
    border-radius: 18px !important;
    box-shadow: 0 16px 42px rgba(23,32,51,.16) !important;
}

.bb-registration-step-polished :is(.input-group-btn, .o-input-group__append) .btn,
.bb-registration-step-polished [data-field-item="avatar"] .btn,
.bb-registration-step-polished [data-field-item="cover"] .btn {
    min-height: 46px !important;
    border: 0 !important;
    border-radius: 11px !important;
    color: #fff !important;
    background: linear-gradient(135deg, var(--bb-step-blue), var(--bb-step-blue-deep)) !important;
    box-shadow: 0 10px 24px rgba(38,116,217,.2) !important;
    font-weight: 900 !important;
}

.bb-registration-step-polished .es-forms__actions {
    padding: 20px clamp(16px, 3vw, 36px) !important;
    border-top: 1px solid #dbe5f2 !important;
    background: #f8fbff !important;
}

.bb-registration-step-polished .o-form-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
}

.bb-registration-step-polished .o-form-actions::before,
.bb-registration-step-polished .o-form-actions::after {
    display: none !important;
}

.bb-registration-step-polished .o-form-actions .btn {
    float: none !important;
    min-height: 50px !important;
    padding: 12px 22px !important;
    border-radius: 13px !important;
    font-size: 14px !important;
    font-weight: 950 !important;
}

.bb-registration-step-polished [data-registration-submit] {
    margin-left: auto !important;
    border: 0 !important;
    color: #fff !important;
    background: linear-gradient(135deg, var(--bb-step-blue), var(--bb-step-blue-deep)) !important;
    box-shadow: 0 13px 30px rgba(38,116,217,.25) !important;
}

.bb-registration-step-polished [data-registration-previous] {
    color: var(--bb-step-ink) !important;
    border: 1px solid #d2dce8 !important;
    background: #fff !important;
}

@media (max-width: 820px) {
    .bb-step-hero-v3 { grid-template-columns: 1fr; }
    .bb-step-form-heading-v3 { align-items: flex-start; flex-direction: column; }
    .bb-step-form-heading-v3 > span { text-align: left; }

    .bb-registration-step-polished [data-field-item] > .o-form-group,
    .bb-registration-step-polished [data-field-item] > div > .o-form-group {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .bb-registration-step-polished :is(.o-form-label, .o-control-label, .control-label) {
        padding-top: 0 !important;
    }
}

@media (max-width: 560px) {
    body.bb-registration-step-page #sp-main-body > .container,
    body.bb-registration-step-page #sp-main-body > .container > .container-inner {
        padding-inline: 6px !important;
    }

    .bb-step-hero-v3 { padding: 24px 18px; border-radius: 20px; }
    .bb-registration-step-polished [data-registration-form] { border-radius: 20px !important; }
    .bb-registration-step-polished .o-form-actions { flex-direction: column-reverse !important; align-items: stretch !important; }
    .bb-registration-step-polished .o-form-actions .btn { width: 100% !important; margin: 0 !important; }
    .bb-registration-step-polished [data-field-item="avatar"] :is(.o-avatar, .o-avatar-v2, .es-avatar, [data-avatar], [class*="avatar-preview"]) {
        width: 136px !important;
        height: 136px !important;
        max-width: 136px !important;
    }
}
/* BISTRO BUDDY REGISTRATION FLOW GLOBAL CSS END */

/* BISTRO BUDDY NEXT-LEVEL REGISTRATION CSS START */
/* BISTRO BUDDY NEXT-LEVEL REGISTRATION PORTAL — 2026-08-03 */
html:has(.bb-registration-native-v1),
body:has(.bb-registration-native-v1),
html:has([data-registration-form]),
body:has([data-registration-form]) {
    overflow-x: clip !important;
}

body:has(.bb-registration-native-v1) #sp-left,
body:has(.bb-registration-native-v1) #sp-right,
body:has(.bb-registration-native-v1) .sp-module[class*="banner"],
body:has(.bb-registration-native-v1) [id*="banner"],
body:has(.bb-registration-native-v1) [class*="advert"],
body.bb-registration-step-page #sp-left,
body.bb-registration-step-page #sp-right,
body.bb-registration-step-page .sp-module[class*="banner"],
body.bb-registration-step-page [id*="banner"],
body.bb-registration-step-page [class*="advert"] {
    display: none !important;
}

body:has(.bb-registration-native-v1) #sp-component,
body:has(.bb-registration-native-v1) #sp-main-body .container,
body:has(.bb-registration-native-v1) #sp-main-body .container-inner,
body.bb-registration-step-page #sp-component,
body.bb-registration-step-page #sp-main-body .container,
body.bb-registration-step-page #sp-main-body .container-inner {
    width: 100% !important;
    max-width: none !important;
    flex: 0 0 100% !important;
    margin-inline: auto !important;
}

.bb-brand-lock,
.bbreg-brand-lock,
.bb-registration-native-v1 .bb-reg-hero h1 strong,
.bbreg-next strong[data-brand-lock],
.bbreg-step-intro strong[data-brand-lock] {
    display: inline-block !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
}

.bb-registration-native-v1 {
    width: min(1220px, calc(100vw - 28px)) !important;
    max-width: 1220px !important;
    margin: 0 auto clamp(44px, 6vw, 90px) !important;
    transform: none !important;
}

.bb-registration-native-v1[data-bb-next-level="1"] > .bb-reg-hero {
    display: none !important;
}

.bbreg-next,
.bbreg-next * {
    box-sizing: border-box;
}

.bbreg-next {
    --bbreg-orange: #f47a20;
    --bbreg-blue: #2674d9;
    --bbreg-green: #20b878;
    --bbreg-pink: #e94a86;
    --bbreg-purple: #7657e6;
    position: relative;
    width: 100%;
    min-height: 720px;
    margin: 0 auto clamp(28px, 4vw, 48px);
    overflow: hidden;
    isolation: isolate;
    border: 1px solid rgba(116, 173, 255, .23);
    border-radius: clamp(24px, 3vw, 38px);
    color: #f8fbff;
    background:
        radial-gradient(circle at 6% 5%, rgba(244, 122, 32, .28), transparent 31%),
        radial-gradient(circle at 94% 14%, rgba(38, 116, 217, .33), transparent 35%),
        linear-gradient(145deg, #050811 0%, #090f1d 52%, #07162f 100%);
    box-shadow: 0 34px 105px rgba(5, 9, 18, .42), inset 0 1px 0 rgba(255, 255, 255, .05);
}

.bbreg-next::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -4;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(255, 255, 255, .026) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .026) 1px, transparent 1px);
    background-size: 34px 34px;
    mask-image: linear-gradient(#000, transparent 94%);
}

.bbreg-next::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 80;
    pointer-events: none;
    border-radius: inherit;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.03), inset 0 0 70px rgba(38,116,217,.08);
}

.bbreg-next__canvas,
.bbreg-next__scanlines,
.bbreg-next__orb {
    position: absolute;
    pointer-events: none;
}

.bbreg-next__canvas {
    inset: 0;
    z-index: -3;
    width: 100%;
    height: 100%;
    opacity: .7;
}

.bbreg-next__scanlines {
    inset: 0;
    z-index: -1;
    background: repeating-linear-gradient(180deg, rgba(255,255,255,.02) 0 1px, transparent 1px 5px);
    opacity: .58;
}

.bbreg-next__orb {
    z-index: -2;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    filter: blur(50px);
    opacity: .2;
    animation: bbregNextOrb 13s ease-in-out infinite alternate;
}

.bbreg-next__orb--orange { left: -190px; bottom: -230px; background: var(--bbreg-orange); }
.bbreg-next__orb--blue { right: -170px; top: -230px; background: var(--bbreg-blue); animation-delay: -6s; }

.bbreg-next__hud {
    position: relative;
    z-index: 20;
    display: grid;
    grid-template-columns: minmax(220px, 1fr) minmax(260px, .8fr) auto;
    gap: 18px;
    align-items: center;
    min-height: 84px;
    padding: 15px clamp(18px, 3vw, 34px);
    border-bottom: 1px solid rgba(116, 173, 255, .14);
    background: rgba(5, 9, 18, .72);
    backdrop-filter: blur(18px) saturate(130%);
}

.bbreg-next__brand {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.bbreg-next__brand img {
    display: block;
    width: min(170px, 36vw);
    height: 40px;
    object-fit: contain;
    object-position: left center;
}

.bbreg-next__brand div {
    min-width: 0;
    padding-left: 12px;
    border-left: 1px solid rgba(255,255,255,.13);
}

.bbreg-next__brand span,
.bbreg-next__status > span {
    display: block;
    color: rgba(255,255,255,.48);
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.bbreg-next__brand strong {
    display: block;
    color: #fff;
    font-size: 13px;
    font-weight: 1000;
    letter-spacing: .05em;
}

.bbreg-next__status strong {
    display: block;
    overflow: hidden;
    margin-top: 2px;
    color: #fff;
    font-size: 12px;
    font-weight: 950;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bbreg-next__meter {
    height: 5px;
    margin-top: 8px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(255,255,255,.08);
}

.bbreg-next__meter span {
    display: block;
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--bbreg-orange), #ffb35f 38%, var(--bbreg-blue));
    box-shadow: 0 0 18px rgba(38,116,217,.62);
    transition: width .65s cubic-bezier(.2,.8,.2,1);
}

.bbreg-next__controls {
    display: flex;
    gap: 8px;
}

.bbreg-next__controls button,
.bbreg-next__arrow {
    display: grid;
    place-items: center;
    width: 41px;
    height: 41px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 13px;
    color: #fff;
    background: rgba(255,255,255,.055);
    font: inherit;
    font-weight: 950;
    cursor: pointer;
    transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.bbreg-next__controls button:hover,
.bbreg-next__controls button:focus-visible,
.bbreg-next__arrow:hover,
.bbreg-next__arrow:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(116,173,255,.65);
    outline: none;
    background: rgba(38,116,217,.18);
}

.bbreg-next__viewport {
    position: relative;
    display: grid;
    min-height: 550px;
    overflow: hidden;
}

.bbreg-next__slide {
    grid-area: 1 / 1;
    visibility: hidden;
    width: 100%;
    min-width: 0;
    padding: clamp(30px, 5vw, 68px);
    opacity: 0;
    pointer-events: none;
    transform: translate3d(6%,0,0) scale(.985);
    filter: blur(7px);
    transition: opacity .45s ease, transform .55s cubic-bezier(.2,.8,.2,1), filter .45s ease, visibility 0s linear .55s;
}

.bbreg-next.is-reversing .bbreg-next__slide:not(.is-active) {
    transform: translate3d(-6%,0,0) scale(.985);
}

.bbreg-next__slide.is-active {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: translate3d(0,0,0) scale(1);
    filter: none;
    transition-delay: 0s;
}

.bbreg-next__hero,
.bbreg-next__final {
    display: grid;
    grid-template-columns: minmax(0,1.3fr) minmax(320px,.72fr);
    gap: clamp(28px, 5vw, 72px);
    align-items: center;
    min-height: 500px;
}

.bbreg-next__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin: 0 0 17px;
    color: #ffb77e;
    font-size: 11px;
    font-weight: 1000;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.bbreg-next__eyebrow::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--bbreg-orange);
    box-shadow: 0 0 0 6px rgba(244,122,32,.12), 0 0 22px rgba(244,122,32,.85);
    animation: bbregNextPulse 2s ease-in-out infinite;
}

.bbreg-next h1,
.bbreg-next h2,
.bbreg-next h3,
.bbreg-step-intro h1,
.bbreg-step-coach h2 {
    text-wrap: balance;
}

.bbreg-next__hero h1,
.bbreg-next__final h2,
.bbreg-next__heading h2 {
    margin: 0;
    color: #fff;
    font-weight: 1000;
    line-height: .98;
    letter-spacing: -.055em;
}

.bbreg-next__hero h1,
.bbreg-next__final h2 {
    max-width: 850px;
    font-size: clamp(42px, 6vw, 78px);
}

.bbreg-next__heading {
    max-width: 1030px;
    margin: 0 auto clamp(25px, 4vw, 44px);
    text-align: center;
}

.bbreg-next__heading .bbreg-next__eyebrow { justify-content: center; }
.bbreg-next__heading h2 { font-size: clamp(34px, 4.5vw, 60px); }

.bbreg-next__hero p,
.bbreg-next__final p,
.bbreg-next__heading > p:last-child {
    color: rgba(255,255,255,.7);
    line-height: 1.62;
}

.bbreg-next__hero > div > p:not(.bbreg-next__eyebrow),
.bbreg-next__final > div > p:not(.bbreg-next__eyebrow) {
    max-width: 760px;
    margin: 22px 0 0;
    font-size: clamp(16px,1.5vw,21px);
}

.bbreg-next__heading > p:last-child {
    max-width: 820px;
    margin: 16px auto 0;
    font-size: 15px;
}

.bbreg-next__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
    margin-top: 28px;
}

.bbreg-next__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 13px;
    min-height: 52px;
    padding: 12px 19px;
    border: 1px solid transparent;
    border-radius: 15px;
    color: #fff;
    font: inherit;
    font-size: 13px;
    font-weight: 1000;
    text-decoration: none !important;
    cursor: pointer;
    transition: transform .18s ease, filter .18s ease, box-shadow .18s ease;
}

.bbreg-next__button--primary {
    color: #fff !important;
    background: linear-gradient(135deg, var(--bbreg-orange), #e6530e 44%, var(--bbreg-blue));
    box-shadow: 0 15px 36px rgba(244,122,32,.2), 0 9px 26px rgba(38,116,217,.18);
}

.bbreg-next__button--ghost {
    border-color: rgba(255,255,255,.15);
    background: rgba(255,255,255,.055);
}

.bbreg-next__button:hover,
.bbreg-next__button:focus-visible {
    transform: translateY(-3px);
    filter: brightness(1.08) saturate(1.08);
    outline: none;
    box-shadow: 0 19px 44px rgba(38,116,217,.26);
}

.bbreg-next__trust {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 22px;
}

.bbreg-next__trust span {
    padding: 7px 11px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 999px;
    color: rgba(255,255,255,.76);
    background: rgba(255,255,255,.035);
    font-size: 11px;
    font-weight: 850;
}

.bbreg-next__console,
.bbreg-next__final-card {
    position: relative;
    min-width: 0;
    padding: 22px;
    overflow: hidden;
    border: 1px solid rgba(116,173,255,.22);
    border-radius: 25px;
    background: linear-gradient(160deg,rgba(18,29,52,.9),rgba(7,14,27,.82));
    box-shadow: 0 28px 70px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.06);
}

.bbreg-next__console-mark {
    position: relative;
    display: grid;
    place-items: center;
    width: 220px;
    height: 220px;
    margin: 12px auto 22px;
}

.bbreg-next__console-mark img {
    position: relative;
    z-index: 3;
    width: 90px;
    height: 90px;
    padding: 15px;
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 28px;
    background: linear-gradient(145deg,rgba(244,122,32,.28),rgba(38,116,217,.28));
    box-shadow: 0 18px 50px rgba(0,0,0,.4),0 0 45px rgba(38,116,217,.22);
    object-fit: contain;
}

.bbreg-next__ring {
    position: absolute;
    inset: 0;
    border: 1px solid rgba(116,173,255,.22);
    border-radius: 50%;
    animation: bbregNextSpin 15s linear infinite;
}

.bbreg-next__ring:nth-child(2) { inset: 15%; animation-direction: reverse; animation-duration: 10s; }
.bbreg-next__ring:nth-child(3) { inset: 30%; border-style: dashed; animation-duration: 7s; }

.bbreg-next__console dl,
.bbreg-next__final-card ul {
    display: grid;
    gap: 8px;
    margin: 0;
    padding: 0;
}

.bbreg-next__console dl div,
.bbreg-next__final-card li {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 10px;
    align-items: center;
    min-height: 48px;
    padding: 10px 12px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 13px;
    background: rgba(255,255,255,.035);
}

.bbreg-next__console dt {
    color: rgba(255,255,255,.52);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.bbreg-next__console dd {
    margin: 0;
    color: #fff;
    font-size: 14px;
    font-weight: 1000;
    white-space: nowrap;
}

.bbreg-next__roles,
.bbreg-next__proof,
.bbreg-next__tutorial,
.bbreg-next__privacy {
    display: grid;
    gap: 16px;
}

.bbreg-next__roles { grid-template-columns: repeat(4,minmax(0,1fr)); }
.bbreg-next__proof { grid-template-columns: repeat(4,minmax(0,1fr)); }
.bbreg-next__tutorial { grid-template-columns: repeat(4,minmax(0,1fr)); }
.bbreg-next__privacy { grid-template-columns: repeat(2,minmax(0,1fr)); max-width: 1050px; margin: 0 auto; }

.bbreg-next__role,
.bbreg-next__proof-card,
.bbreg-next__tutorial-card,
.bbreg-next__privacy-card {
    --bbreg-card-accent: var(--bbreg-orange);
    position: relative;
    min-width: 0;
    overflow: hidden;
    border: 1px solid color-mix(in srgb,var(--bbreg-card-accent) 32%,transparent);
    border-radius: 21px;
    background:
        radial-gradient(circle at 18% 0%,color-mix(in srgb,var(--bbreg-card-accent) 20%,transparent),transparent 42%),
        linear-gradient(150deg,rgba(19,30,52,.88),rgba(7,13,25,.82));
    box-shadow: 0 18px 44px rgba(0,0,0,.2);
}

.bbreg-next__role { display:flex; flex-direction:column; min-height:310px; padding:22px; }
.bbreg-next__role[data-role="professional"] { --bbreg-card-accent: var(--bbreg-blue); }
.bbreg-next__role[data-role="foodie"] { --bbreg-card-accent: var(--bbreg-green); }
.bbreg-next__role[data-role="dating"] { --bbreg-card-accent: var(--bbreg-pink); }

.bbreg-next__role-icon {
    display: grid;
    place-items: center;
    width: 61px;
    height: 61px;
    border: 1px solid color-mix(in srgb,var(--bbreg-card-accent) 58%,white);
    border-radius: 18px;
    color: #fff;
    background: color-mix(in srgb,var(--bbreg-card-accent) 22%,transparent);
}

.bbreg-next__role-icon svg,
.bbreg-next__proof-icon svg {
    width: 34px;
    height: 34px;
    fill: none;
    stroke: currentColor;
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.bbreg-next__role small {
    margin-top: 18px;
    color: color-mix(in srgb,var(--bbreg-card-accent) 72%,white);
    font-size: 9px;
    font-weight: 1000;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.bbreg-next__role h3,
.bbreg-next__privacy-card h3 {
    margin: 6px 0 8px;
    color: #fff;
    font-size: clamp(21px,2vw,28px);
    font-weight: 1000;
    line-height: 1.05;
    letter-spacing: -.035em;
}

.bbreg-next__role p,
.bbreg-next__proof-card p,
.bbreg-next__tutorial-card p,
.bbreg-next__privacy-card p {
    margin: 0;
    color: rgba(255,255,255,.64);
    font-size: 12px;
    line-height: 1.55;
}

.bbreg-next__role button,
.bbreg-next__privacy-card button {
    width: 100%;
    min-height: 44px;
    margin-top: auto;
    padding: 10px 12px;
    border: 0;
    border-radius: 13px;
    color: #fff;
    background: linear-gradient(135deg,var(--bbreg-card-accent),#17213a);
    font: inherit;
    font-size: 11px;
    font-weight: 1000;
    cursor: pointer;
}

.bbreg-next__proof-card,
.bbreg-next__tutorial-card { min-height: 190px; padding: 21px; }

.bbreg-next__proof-card strong {
    display: block;
    overflow: hidden;
    color: #fff;
    font-size: clamp(38px,4.5vw,60px);
    font-weight: 1000;
    line-height: 1;
    letter-spacing: -.055em;
    white-space: nowrap;
}

.bbreg-next__proof-card h3,
.bbreg-next__tutorial-card h3 {
    margin: 14px 0 5px;
    color: #fff;
    font-size: 16px;
    font-weight: 950;
}

.bbreg-next__tutorial-card > span {
    display: grid;
    place-items: center;
    width: 68px;
    height: 68px;
    margin-bottom: 16px;
    border: 1px solid rgba(116,173,255,.4);
    border-radius: 22px;
    color: #fff;
    background: linear-gradient(145deg,#131f38,#09101f);
    box-shadow: 0 14px 34px rgba(0,0,0,.28),0 0 0 7px rgba(38,116,217,.06);
    font-size: 16px;
    font-weight: 1000;
}

.bbreg-next__privacy-card {
    --bbreg-card-accent: var(--bbreg-blue);
    min-height: 360px;
    padding: clamp(24px,3vw,36px);
}

.bbreg-next__privacy-card[data-privacy="private"] { --bbreg-card-accent: var(--bbreg-purple); }

.bbreg-next__privacy-card > span {
    display: inline-flex;
    padding: 6px 9px;
    border: 1px solid color-mix(in srgb,var(--bbreg-card-accent) 58%,white);
    border-radius: 999px;
    color: #fff;
    background: color-mix(in srgb,var(--bbreg-card-accent) 20%,transparent);
    font-size: 9px;
    font-weight: 1000;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.bbreg-next__privacy-card ul {
    display: grid;
    gap: 10px;
    margin: 20px 0;
    padding: 0;
    list-style: none;
}

.bbreg-next__privacy-card li,
.bbreg-next__final-card li {
    position: relative;
    color: rgba(255,255,255,.74);
    font-size: 12px;
    font-weight: 750;
}

.bbreg-next__privacy-card li { padding-left: 25px; }
.bbreg-next__privacy-card li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 0;
    display:grid;
    place-items:center;
    width:18px;
    height:18px;
    border-radius:6px;
    color:#fff;
    background:var(--bbreg-card-accent);
    font-size:9px;
}

.bbreg-next__quick-choices {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 12px;
    margin-top: 28px;
}

.bbreg-next__quick-choices button {
    min-height: 80px;
    padding: 14px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 17px;
    color: #fff;
    background: rgba(255,255,255,.045);
    font: inherit;
    font-size: 12px;
    font-weight: 950;
    cursor: pointer;
}

.bbreg-next__quick-choices button[data-role="professional"] { border-color: rgba(38,116,217,.4); background: rgba(38,116,217,.12); }

.bbreg-next__footer {
    position: relative;
    z-index: 20;
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    gap: 9px;
    align-items: center;
    min-height: 78px;
    padding: 11px 14px;
    border-top: 1px solid rgba(116,173,255,.14);
    background: rgba(5,9,18,.78);
    backdrop-filter: blur(18px);
}

.bbreg-next__arrow { width: 43px; height: 43px; }

.bbreg-next__nav {
    display: flex;
    gap: 6px;
    justify-content: center;
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none;
}
.bbreg-next__nav::-webkit-scrollbar { display:none; }

.bbreg-next__nav button {
    display:flex;
    flex:0 0 auto;
    align-items:center;
    gap:7px;
    min-height:40px;
    padding:6px 9px;
    border:1px solid transparent;
    border-radius:12px;
    color:rgba(255,255,255,.5);
    background:transparent;
    font:inherit;
    cursor:pointer;
}

.bbreg-next__nav button span {
    display:grid;
    place-items:center;
    width:27px;
    height:27px;
    border:1px solid rgba(255,255,255,.1);
    border-radius:9px;
    color:rgba(255,255,255,.7);
    background:rgba(255,255,255,.04);
    font-size:9px;
    font-weight:1000;
}

.bbreg-next__nav button b { font-size:10px; font-weight:900; white-space:nowrap; }
.bbreg-next__nav button.is-active { color:#fff; background:rgba(38,116,217,.12); }
.bbreg-next__nav button.is-active span { border-color:transparent; background:linear-gradient(135deg,var(--bbreg-orange),var(--bbreg-blue)); }

/* Actual EasySocial profile cards below the portal */
.bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-toolbar {
    position: sticky !important;
    top: 8px !important;
    width: min(100%, 980px) !important;
    margin: 26px auto 30px !important;
    border-radius: 20px !important;
}

.bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-grid {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: clamp(18px,2.4vw,28px) !important;
    width: min(100%, 1120px) !important;
    margin-inline: auto !important;
}

.bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-card {
    --bb-card-accent: #f47a20;
    border-radius: 28px !important;
    box-shadow: 0 22px 58px rgba(23,32,51,.14) !important;
}

.bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-card[data-kind="professional"],
.bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-card[data-business-professional="1"] {
    --bb-card-accent: #2674d9 !important;
}

.bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-card-top {
    display: grid !important;
    place-items: center !important;
    min-height: 230px !important;
    padding: 30px 24px !important;
}

.bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-avatar {
    width: 138px !important;
    height: 138px !important;
    flex: 0 0 138px !important;
    margin-inline: auto !important;
    border-width: 4px !important;
    border-radius: 38px !important;
    box-shadow: 0 23px 48px rgba(0,0,0,.32) !important;
}

.bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-avatar svg {
    width: 72px !important;
    height: 72px !important;
}

.bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-badges {
    position: absolute !important;
    top: 16px !important;
    right: 16px !important;
    align-items: flex-end !important;
}

.bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-card-body {
    padding: clamp(24px,3vw,34px) !important;
}

.bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-card h2 {
    font-size: clamp(25px,2.3vw,34px) !important;
}

.bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-cta {
    min-height: 58px !important;
    border-radius: 17px !important;
    font-size: 14px !important;
}

.bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-help,
.bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-profile-guide {
    width: min(100%, 1120px) !important;
    margin-inline: auto !important;
}

.bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-help {
    background: linear-gradient(145deg,#fff,#f3f8ff) !important;
}

/* Registration form quest experience */
body.bb-registration-step-page #sp-main-body {
    padding-top: 16px !important;
    background:
        radial-gradient(circle at 8% 8%, rgba(244,122,32,.08), transparent 30%),
        radial-gradient(circle at 92% 12%, rgba(38,116,217,.1), transparent 33%),
        #f3f7fc !important;
}

body.bb-registration-step-page .bb-step-hero-v3,
body.bb-registration-step-page .bb-step-form-heading-v3 {
    display: none !important;
}

.bbreg-step-intro,
.bbreg-step-layout,
.bbreg-step-layout * {
    box-sizing: border-box;
}

.bbreg-step-intro {
    position: relative;
    width: min(1180px,calc(100vw - 28px));
    margin: 0 auto 24px;
    padding: clamp(28px,4vw,52px);
    overflow: hidden;
    border: 1px solid rgba(116,173,255,.25);
    border-radius: 30px;
    color: #fff;
    background:
        radial-gradient(circle at 8% 0%,rgba(244,122,32,.28),transparent 32%),
        radial-gradient(circle at 94% 10%,rgba(38,116,217,.32),transparent 35%),
        linear-gradient(145deg,#060a13,#101a2f 58%,#071b38);
    box-shadow: 0 28px 78px rgba(9,13,23,.28);
}

.bbreg-step-intro::after {
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:repeating-linear-gradient(180deg,rgba(255,255,255,.02) 0 1px,transparent 1px 5px);
}

.bbreg-step-intro__grid {
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(260px,.55fr);
    gap:clamp(24px,4vw,56px);
    align-items:center;
}

.bbreg-step-intro .bbreg-next__eyebrow { margin-bottom:14px; }

.bbreg-step-intro h1 {
    margin:0;
    color:#fff;
    font-size:clamp(36px,5vw,66px);
    font-weight:1000;
    line-height:1;
    letter-spacing:-.052em;
}

.bbreg-step-intro p {
    max-width:760px;
    margin:17px 0 0;
    color:rgba(255,255,255,.7);
    font-size:clamp(15px,1.35vw,19px);
    line-height:1.62;
}

.bbreg-step-progress {
    padding:18px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:20px;
    background:rgba(5,9,18,.42);
    backdrop-filter:blur(12px);
}

.bbreg-step-progress small {
    color:rgba(255,255,255,.5);
    font-size:9px;
    font-weight:950;
    letter-spacing:.13em;
    text-transform:uppercase;
}

.bbreg-step-progress strong {
    display:block;
    margin-top:5px;
    color:#fff;
    font-size:28px;
    font-weight:1000;
}

.bbreg-step-progress__bar {
    height:8px;
    margin-top:12px;
    overflow:hidden;
    border-radius:999px;
    background:rgba(255,255,255,.08);
}

.bbreg-step-progress__bar span {
    display:block;
    width:0;
    height:100%;
    border-radius:inherit;
    background:linear-gradient(90deg,#f47a20,#ffb25e 40%,#2674d9);
    box-shadow:0 0 18px rgba(38,116,217,.5);
    transition:width .45s ease;
}

.bbreg-step-layout {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(260px,320px);
    gap:22px;
    width:min(1180px,calc(100vw - 28px));
    margin:0 auto clamp(48px,6vw,90px);
    align-items:start;
}

.bbreg-step-layout > form[data-registration-form] {
    min-width:0;
    margin:0 !important;
    overflow:hidden;
    border:1px solid rgba(38,116,217,.14) !important;
    border-radius:28px !important;
    background:#fff !important;
    box-shadow:0 25px 75px rgba(23,32,51,.12) !important;
}

.bbreg-step-layout .es-forms__group,
.bbreg-step-layout .es-forms__content {
    padding:0 !important;
    background:transparent !important;
}

.bbreg-step-layout .o-form-horizontal {
    padding:clamp(24px,4vw,48px) !important;
}

.bbreg-step-layout .o-form-group {
    margin:0 0 20px !important;
    padding:18px !important;
    border:1px solid #e4ebf5 !important;
    border-radius:18px !important;
    background:linear-gradient(145deg,#fff,#f9fbfe) !important;
    transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}

.bbreg-step-layout .o-form-group:focus-within {
    transform:translateY(-2px);
    border-color:rgba(38,116,217,.46) !important;
    box-shadow:0 15px 35px rgba(38,116,217,.09) !important;
}

.bbreg-step-layout .o-control-label,
.bbreg-step-layout label {
    color:#26364d !important;
    font-size:13px !important;
    font-weight:900 !important;
}

.bbreg-step-layout input[type="text"],
.bbreg-step-layout input[type="email"],
.bbreg-step-layout input[type="password"],
.bbreg-step-layout input[type="url"],
.bbreg-step-layout input[type="tel"],
.bbreg-step-layout input[type="number"],
.bbreg-step-layout select,
.bbreg-step-layout textarea {
    width:100% !important;
    min-height:48px !important;
    border:1px solid #ccd7e6 !important;
    border-radius:13px !important;
    color:#172033 !important;
    background:#fff !important;
    box-shadow:none !important;
    font-size:14px !important;
}

.bbreg-step-layout textarea { min-height:120px !important; }

.bbreg-step-layout input:focus,
.bbreg-step-layout select:focus,
.bbreg-step-layout textarea:focus {
    border-color:#2674d9 !important;
    outline:3px solid rgba(38,116,217,.12) !important;
    outline-offset:1px !important;
}

.bbreg-step-layout [data-field-item="avatar"],
.bbreg-step-layout [data-field-item="cover"],
.bbreg-step-layout .bb-step-media-field-v3 {
    text-align:center !important;
}

.bbreg-step-layout [data-field-item="avatar"] .o-avatar,
.bbreg-step-layout [data-field-item="avatar"] .o-avatar-v2,
.bbreg-step-layout [data-field-item="avatar"] .es-avatar,
.bbreg-step-layout [data-field-item="avatar"] [data-avatar],
.bbreg-step-layout [data-field-item="avatar"] img {
    width:150px !important;
    height:150px !important;
    max-width:150px !important;
    border-radius:38px !important;
    object-fit:cover !important;
    box-shadow:0 20px 45px rgba(23,32,51,.2) !important;
}

.bbreg-step-layout [data-field-item="cover"] img,
.bbreg-step-layout [data-field-item="cover"] [class*="cover"] {
    max-width:720px !important;
    margin-inline:auto !important;
    border-radius:20px !important;
    overflow:hidden !important;
    box-shadow:0 20px 45px rgba(23,32,51,.16) !important;
}

.bbreg-step-layout .es-forms__actions,
.bbreg-step-layout .o-form-actions {
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
    margin:0 !important;
    padding:20px clamp(24px,4vw,48px) !important;
    border-top:1px solid #e4ebf5 !important;
    background:#f7faff !important;
}

.bbreg-step-layout #btn-register-submit,
.bbreg-step-layout [data-registration-submit] {
    min-width:180px !important;
    min-height:52px !important;
    border:0 !important;
    border-radius:15px !important;
    color:#fff !important;
    background:linear-gradient(135deg,#2674d9,#174d9f) !important;
    box-shadow:0 14px 32px rgba(38,116,217,.24) !important;
    font-weight:950 !important;
}

.bbreg-step-layout [data-registration-previous] {
    min-height:48px !important;
    border:1px solid #cbd7e7 !important;
    border-radius:14px !important;
    color:#344054 !important;
    background:#fff !important;
    font-weight:900 !important;
}

.bbreg-step-coach {
    position:sticky;
    top:18px;
    padding:21px;
    overflow:hidden;
    border:1px solid rgba(116,173,255,.22);
    border-radius:24px;
    color:#fff;
    background:
        radial-gradient(circle at 100% 0%,rgba(38,116,217,.25),transparent 42%),
        linear-gradient(150deg,#0b1221,#152442);
    box-shadow:0 22px 65px rgba(23,32,51,.18);
}

.bbreg-step-coach__top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}

.bbreg-step-coach__top span {
    color:#ffb77e;
    font-size:9px;
    font-weight:1000;
    letter-spacing:.13em;
    text-transform:uppercase;
}

.bbreg-step-coach__top button {
    min-height:34px;
    padding:6px 10px;
    border:1px solid rgba(255,255,255,.15);
    border-radius:10px;
    color:#fff;
    background:rgba(255,255,255,.06);
    font:inherit;
    font-size:9px;
    font-weight:900;
    cursor:pointer;
}

.bbreg-step-coach h2 {
    margin:16px 0 7px;
    color:#fff;
    font-size:25px;
    font-weight:1000;
    line-height:1.05;
    letter-spacing:-.04em;
}

.bbreg-step-coach > p {
    margin:0;
    color:rgba(255,255,255,.62);
    font-size:12px;
    line-height:1.55;
}

.bbreg-step-coach__tip {
    margin-top:16px;
    padding:14px;
    border:1px solid rgba(255,255,255,.1);
    border-radius:15px;
    background:rgba(255,255,255,.045);
}

.bbreg-step-coach__tip strong {
    display:block;
    color:#fff;
    font-size:12px;
}

.bbreg-step-coach__tip p {
    margin:5px 0 0;
    color:rgba(255,255,255,.6);
    font-size:11px;
}

.bbreg-step-coach ol {
    display:grid;
    gap:8px;
    margin:18px 0 0;
    padding:0;
    list-style:none;
}

.bbreg-step-coach li {
    display:grid;
    grid-template-columns:30px minmax(0,1fr);
    gap:9px;
    align-items:center;
    min-height:43px;
    padding:7px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:12px;
    color:rgba(255,255,255,.66);
    background:rgba(255,255,255,.03);
    font-size:10px;
    font-weight:800;
}

.bbreg-step-coach li span {
    display:grid;
    place-items:center;
    width:29px;
    height:29px;
    border-radius:9px;
    color:#fff;
    background:rgba(38,116,217,.25);
    font-weight:1000;
}

.bbreg-step-coach li.is-complete span { background:#20b878; }
.bbreg-step-coach.is-compact .bbreg-step-coach__tip,
.bbreg-step-coach.is-compact ol { display:none; }

@keyframes bbregNextPulse {
    50% { transform:scale(1.22); box-shadow:0 0 0 9px rgba(244,122,32,.07),0 0 30px rgba(244,122,32,.9); }
}
@keyframes bbregNextSpin { to { transform:rotate(360deg); } }
@keyframes bbregNextOrb { to { transform:translate3d(70px,-30px,0) scale(1.12); } }

@media (max-width: 1050px) {
    .bbreg-next__roles,
    .bbreg-next__proof,
    .bbreg-next__tutorial,
    .bbreg-next__quick-choices { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .bbreg-step-layout { grid-template-columns:1fr; }
    .bbreg-step-coach { position:relative; top:auto; }
}

@media (max-width: 860px) {
    .bbreg-next__hud { grid-template-columns:minmax(0,1fr) auto; }
    .bbreg-next__status { grid-column:1 / -1; grid-row:2; }
    .bbreg-next__hero,
    .bbreg-next__final { grid-template-columns:1fr; min-height:0; }
    .bbreg-next__console,
    .bbreg-next__final-card { max-width:620px; width:100%; margin-inline:auto; }
    .bbreg-next__privacy { grid-template-columns:1fr; }
    .bbreg-step-intro__grid { grid-template-columns:1fr; }
}

@media (max-width: 680px) {
    .bb-registration-native-v1 { width:min(100% - 8px,1220px) !important; }
    .bbreg-next { min-height:0; border-radius:21px; }
    .bbreg-next__hud { padding:11px; }
    .bbreg-next__brand img { width:132px; height:34px; }
    .bbreg-next__brand div { display:none; }
    .bbreg-next__slide { padding:27px 17px; }
    .bbreg-next__hero h1,
    .bbreg-next__final h2 { font-size:clamp(38px,12vw,56px); }
    .bbreg-next__heading h2 { font-size:clamp(31px,10vw,45px); }
    .bbreg-next__actions { display:grid; grid-template-columns:1fr; }
    .bbreg-next__button { width:100%; }
    .bbreg-next__roles,
    .bbreg-next__proof,
    .bbreg-next__tutorial,
    .bbreg-next__quick-choices { grid-template-columns:1fr; }
    .bbreg-next__footer { grid-template-columns:40px minmax(0,1fr) 40px; padding:8px 7px; }
    .bbreg-next__arrow { width:40px; height:40px; }
    .bbreg-next__nav { justify-content:flex-start; }
    .bbreg-next__nav button b { display:none; }
    .bbreg-next__nav button { padding:5px; }
    .bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-grid { grid-template-columns:1fr !important; }
    .bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-card-top { min-height:220px !important; }
    .bb-registration-native-v1[data-bb-next-level="1"] .bb-reg-avatar { width:145px !important; height:145px !important; }
    .bbreg-step-intro,
    .bbreg-step-layout { width:min(100% - 10px,1180px); }
    .bbreg-step-intro { padding:25px 18px; border-radius:22px; }
    .bbreg-step-layout > form[data-registration-form] { border-radius:21px !important; }
    .bbreg-step-layout .o-form-horizontal { padding:18px !important; }
    .bbreg-step-layout .o-form-group { padding:14px !important; }
    .bbreg-step-layout .es-forms__actions,
    .bbreg-step-layout .o-form-actions { flex-direction:column-reverse !important; align-items:stretch !important; padding:16px 18px !important; }
    .bbreg-step-layout #btn-register-submit,
    .bbreg-step-layout [data-registration-submit],
    .bbreg-step-layout [data-registration-previous] { width:100% !important; }
}

@media (prefers-reduced-motion: reduce) {
    .bbreg-next *,
    .bbreg-next *::before,
    .bbreg-next *::after,
    .bbreg-step-intro *,
    .bbreg-step-layout * {
        animation-duration:.001ms !important;
        animation-iteration-count:1 !important;
        scroll-behavior:auto !important;
        transition-duration:.001ms !important;
    }
    .bbreg-next__canvas { display:none !important; }
}
/* BISTRO BUDDY NEXT-LEVEL REGISTRATION CSS END */
