/* Homepage presentation only. Loaded after the legacy section stylesheet. */
body.home,
body.page-home,
body.elementor-page-38 {
  --home-gutter: clamp(20px, 4vw, 56px);
  --home-width: 1180px;
  --home-space: clamp(68px, 8vw, 108px);
}

body.home .bew-lux-shell,
body.page-home .bew-lux-shell,
body.elementor-page-38 .bew-lux-shell,
body.home .bew-local-brands-shell,
body.page-home .bew-local-brands-shell,
body.elementor-page-38 .bew-local-brands-shell {
  width: min(calc(100% - (var(--home-gutter) * 2)), var(--home-width)) !important;
  max-width: var(--home-width) !important;
  margin-inline: auto !important;
  
}

body.home .bew-lux-hero,
body.page-home .bew-lux-hero,
body.elementor-page-38 .bew-lux-hero {
  min-height: min(820px, calc(100svh - 84px)) !important;
  padding-inline: var(--home-gutter) !important;
  
}

body.home .bew-lux-hero-copy,
body.page-home .bew-lux-hero-copy,
body.elementor-page-38 .bew-lux-hero-copy {
  width: min(100%, var(--home-width)) !important;
  margin-inline: auto !important;
 
}

body.home .bew-lux-story,
body.page-home .bew-lux-story,
body.elementor-page-38 .bew-lux-story {
  grid-template-columns: minmax(0, 1fr) minmax(0, .96fr) !important;
  gap: clamp(48px, 7vw, 96px) !important;
  width: min(calc(100% - (var(--home-gutter) * 2)), var(--home-width)) !important;
  max-width: var(--home-width) !important;
  min-height: 0 !important;
  margin-inline: auto !important;
  padding: var(--home-space) 0 !important;
  align-items: center !important;
}

body.home .bew-lux-editorial-image,
body.page-home .bew-lux-editorial-image,
body.elementor-page-38 .bew-lux-editorial-image {
  width: 100% !important;
  min-height: 0 !important;
  aspect-ratio: 1 / 1.05 !important;
  border: 1px solid rgba(189, 143, 54, .34) !important;
  border-radius: 4px !important;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .32) !important;
  background-position: center !important;
  background-size: cover !important;
}

body.home .bew-lux-editorial-image:not([style]),
body.page-home .bew-lux-editorial-image:not([style]),
body.elementor-page-38 .bew-lux-editorial-image:not([style]) {
  background-image: url('../images/andres-country-detail.jpg') !important;
}

body.home .bew-lux-editorial-copy,
body.page-home .bew-lux-editorial-copy,
body.elementor-page-38 .bew-lux-editorial-copy,
body.home .bew-local-brands-copy,
body.page-home .bew-local-brands-copy,
body.elementor-page-38 .bew-local-brands-copy {
  max-width: 540px !important;
}

body.home .bew-local-brands-copy,
body.page-home .bew-local-brands-copy,
body.elementor-page-38 .bew-local-brands-copy {
  display: flex !important;
  flex-direction: column !important;
  align-self: stretch !important;
  justify-content: center !important;
  margin-block: 0 !important;
}

body.home .bew-local-brands,
body.page-home .bew-local-brands,
body.elementor-page-38 .bew-local-brands {
  padding: var(--home-space) 0 !important;
  background: linear-gradient(90deg, rgba(69, 79, 42, .18), transparent 40%), #0c0f0a !important;
}

body.home .bew-local-brands-shell,
body.page-home .bew-local-brands-shell,
body.elementor-page-38 .bew-local-brands-shell {
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr) !important;
  gap: clamp(48px, 7vw, 96px) !important;
  align-items: center !important;
}

body.home .bew-local-brands-image,
body.page-home .bew-local-brands-image,
body.elementor-page-38 .bew-local-brands-image {
  min-height: 0 !important;
  aspect-ratio: 1.1 / 1 !important;
  border-radius: 4px !important;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .3) !important;
}

body.home .bew-local-brand-tags span,
body.page-home .bew-local-brand-tags span,
body.elementor-page-38 .bew-local-brand-tags span {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 38px !important;
  padding: 0 17px !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}

body.home .bew-lux-awards,
body.home .bew-featured-in,
body.page-home .bew-lux-awards,
body.page-home .bew-featured-in,
body.elementor-page-38 .bew-lux-awards,
body.elementor-page-38 .bew-featured-in {
  padding-block: var(--home-space) !important;
}

body.home .bew-lux-award-timeline,
body.page-home .bew-lux-award-timeline,
body.elementor-page-38 .bew-lux-award-timeline,
body.home .bew-featured-in-grid,
body.page-home .bew-featured-in-grid,
body.elementor-page-38 .bew-featured-in-grid {
  gap: 16px !important;
  margin-top: 40px !important;
}

body.home .bew-lux-award-timeline article,
body.page-home .bew-lux-award-timeline article,
body.elementor-page-38 .bew-lux-award-timeline article,
body.home .bew-featured-in-grid a,
body.page-home .bew-featured-in-grid a,
body.elementor-page-38 .bew-featured-in-grid a {
  border-radius: 6px !important;
  background: rgba(12, 14, 10, .74) !important;
  box-shadow: none !important;
}

body.home .bew-footer-newsletter,
body.page-home .bew-footer-newsletter,
body.elementor-page-38 .bew-footer-newsletter {
  padding-block: clamp(58px, 7vw, 88px) !important;
}

@media (max-width: 980px) {
  body.home,
  body.page-home,
  body.elementor-page-38 {
    --home-gutter: clamp(18px, 5vw, 30px);
    --home-space: clamp(56px, 14vw, 76px);
  }

  body.home .bew-lux-hero,
  body.page-home .bew-lux-hero,
  body.elementor-page-38 .bew-lux-hero {
    min-height: calc(100svh - 78px) !important;
    padding: 70px var(--home-gutter) 52px !important;
    background-position: 62% center !important;
  }

  body.home .bew-lux-hero h1,
  body.page-home .bew-lux-hero h1,
  body.elementor-page-38 .bew-lux-hero h1 {
    max-width: 9.5ch !important;
    margin: 14px 0 18px !important;
    font-size: clamp(43px, 11vw, 62px) !important;
    line-height: .96 !important;
  }

  body.home .bew-lux-hero-copy p,
  body.page-home .bew-lux-hero-copy p,
  body.elementor-page-38 .bew-lux-hero-copy p {
    max-width: 36ch !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
  }

  body.home .bew-lux-story,
  body.page-home .bew-lux-story,
  body.elementor-page-38 .bew-lux-story,
  body.home .bew-local-brands-shell,
  body.page-home .bew-local-brands-shell,
  body.elementor-page-38 .bew-local-brands-shell {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
  }

  body.home .bew-local-brands-copy,
  body.page-home .bew-local-brands-copy,
  body.elementor-page-38 .bew-local-brands-copy {
    align-self: auto !important;
    min-height: 0 !important;
  }

  body.home .bew-lux-editorial-image,
  body.page-home .bew-lux-editorial-image,
  body.elementor-page-38 .bew-lux-editorial-image,
  body.home .bew-local-brands-image,
  body.page-home .bew-local-brands-image,
  body.elementor-page-38 .bew-local-brands-image {
    aspect-ratio: 4 / 3 !important;
  }

  body.home .bew-lux-editorial-copy h2,
  body.page-home .bew-lux-editorial-copy h2,
  body.elementor-page-38 .bew-lux-editorial-copy h2,
  body.home .bew-local-brands-copy h2,
  body.page-home .bew-local-brands-copy h2,
  body.elementor-page-38 .bew-local-brands-copy h2,
  body.home .bew-lux-section-head h2,
  body.page-home .bew-lux-section-head h2,
  body.elementor-page-38 .bew-lux-section-head h2,
  body.home .bew-footer-newsletter h2,
  body.page-home .bew-footer-newsletter h2,
  body.elementor-page-38 .bew-footer-newsletter h2 {
    max-width: 13ch !important;
    font-size: clamp(34px, 9vw, 46px) !important;
    line-height: 1 !important;
  }

  body.home .bew-lux-award-timeline,
  body.page-home .bew-lux-award-timeline,
  body.elementor-page-38 .bew-lux-award-timeline,
  body.home .bew-featured-in-grid,
  body.page-home .bew-featured-in-grid,
  body.elementor-page-38 .bew-featured-in-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 560px) {
  body.home .bew-lux-hero-actions,
  body.page-home .bew-lux-hero-actions,
  body.elementor-page-38 .bew-lux-hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    gap: 10px !important;
  }

  body.home .bew-lux-hero-actions a,
  body.page-home .bew-lux-hero-actions a,
  body.elementor-page-38 .bew-lux-hero-actions a {
    width: 100% !important;
    justify-content: center !important;
  }

  body.home .bew-lux-award-timeline,
  body.page-home .bew-lux-award-timeline,
  body.elementor-page-38 .bew-lux-award-timeline,
  body.home .bew-featured-in-grid,
  body.page-home .bew-featured-in-grid,
  body.elementor-page-38 .bew-featured-in-grid {
    grid-template-columns: 1fr !important;
  }

  body.home .bew-lux-award-timeline article,
  body.page-home .bew-lux-award-timeline article,
  body.elementor-page-38 .bew-lux-award-timeline article,
  body.home .bew-featured-in-grid a,
  body.page-home .bew-featured-in-grid a,
  body.elementor-page-38 .bew-featured-in-grid a {
    min-height: 0 !important;
    padding: 24px !important;
  }
}

/* Keep native and Elementor link states inside the bakery palette. */
body:not(.wp-admin) a:not(.elementor-button):not(.bew-header-cta):not([class*="button"]):not([class*="btn"]):hover,
body:not(.wp-admin) a:not(.elementor-button):not(.bew-header-cta):not([class*="button"]):not([class*="btn"]):focus,
body:not(.wp-admin) a:not(.elementor-button):not(.bew-header-cta):not([class*="button"]):not([class*="btn"]):active {
  color: #d5ad62 !important;
  text-decoration-color: currentColor !important;
}

body:not(.wp-admin) a:focus-visible {
  outline-color: rgba(213, 173, 98, .82) !important;
}

body:not(.wp-admin) ::selection {
  color: #f7f0e6;
  background: #56613b;
}

/* One separator per home-section transition; avoid paired parallel lines. */
body.home .bew-featured-in,
body.page-home .bew-featured-in,
body.elementor-page-38 .bew-featured-in {
  border-top: 0 !important;
}

body.home .bew-footer-newsletter,
body.page-home .bew-footer-newsletter,
body.elementor-page-38 .bew-footer-newsletter {
  border-top: 0 !important;
}

/* Elementor retains these obsolete empty home containers and adds layout gaps. */
body.home .elementor-element-7cfdd70,
body.home .elementor-element-afb63fa,
body.home .elementor-element-17ab4db,
body.home .elementor-element-9f3474b,
body.home .elementor-element-868ee3d,
body.home .elementor-element-144b2d1,
body.home .elementor-element-64ae93e,
body.home .elementor-element-9547ccd,
body.page-home .elementor-element-7cfdd70,
body.page-home .elementor-element-afb63fa,
body.page-home .elementor-element-17ab4db,
body.page-home .elementor-element-9f3474b,
body.page-home .elementor-element-868ee3d,
body.page-home .elementor-element-144b2d1,
body.page-home .elementor-element-64ae93e,
body.page-home .elementor-element-9547ccd,
body.elementor-page-38 .elementor-element-7cfdd70,
body.elementor-page-38 .elementor-element-afb63fa,
body.elementor-page-38 .elementor-element-17ab4db,
body.elementor-page-38 .elementor-element-9f3474b,
body.elementor-page-38 .elementor-element-868ee3d,
body.elementor-page-38 .elementor-element-144b2d1,
body.elementor-page-38 .elementor-element-64ae93e,
body.elementor-page-38 .elementor-element-9547ccd {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* About: reserve olive for the Local Arizona Brands feature band only. */
body.page-id-22 .bew-about-process,
body.page-id-22 .bew-about-why {
  background:
    radial-gradient(circle at 82% 24%, rgba(79, 90, 50, .08), transparent 34%),
    linear-gradient(180deg, #090a08 0%, #0c0d0a 50%, #080906 100%) !important;
  border-top: 1px solid rgba(189, 143, 54, .2) !important;
  border-bottom: 1px solid rgba(189, 143, 54, .2) !important;
  box-shadow: none !important;
}

body.page-id-22 .bew-about-process:before,
body.page-id-22 .bew-about-why:before {
  opacity: .3 !important;
}

body.page-id-22 .bew-about-process article,
body.page-id-22 .bew-about-why article {
  background: linear-gradient(145deg, #14130f, #0d0e0a) !important;
  border-color: rgba(189, 143, 54, .26) !important;
  box-shadow: none !important;
}

body.page-id-22 .bew-about-process article:nth-child(even),
body.page-id-22 .bew-about-why article:nth-child(even) {
  background: linear-gradient(145deg, rgba(48, 55, 31, .42), #0d0e0a) !important;
  border-color: rgba(128, 141, 77, .34) !important;
}

/* About contains two retired Elementor widgets whose empty wrappers create bands. */
body.page-id-22 .elementor-element-1b39b50,
body.page-id-22 .elementor-element-52ad372 {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Use one separator between custom sections throughout the public site. */
body:not(.wp-admin) main section[class^="bew-"],
body:not(.wp-admin) main section[class*=" bew-"] {
  border-top: 0 !important;
}

/* Single product: match Related Products to the clean primary product cards. */
.bew-single-product .bew-related-products {
  padding: clamp(64px, 8vw, 112px) 24px !important;
  background: #070905 !important;
}

.bew-single-product .bew-related-products .bew-shell {
  width: min(1180px, 100%) !important;
  margin-inline: auto !important;
}

.bew-single-product .bew-related-products .bew-section-title {
  margin-bottom: clamp(32px, 5vw, 56px) !important;
}

.bew-single-product .bew-related-products .bew-product-rail-controls {
  display: none !important;
}

.bew-single-product .bew-related-products .bew-product-grid[data-bew-product-rail] {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(20px, 2.4vw, 30px) !important;
  width: 100% !important;
  overflow: visible !important;
  padding: 0 !important;
  scroll-snap-type: none !important;
}

.bew-single-product .bew-related-products article[data-product-card] {
  display: flex !important;
  min-width: 0 !important;
  min-height: 650px !important;
  padding: 0 0 24px !important;
  overflow: hidden !important;
  border: 1px solid rgba(213, 173, 98, .72) !important;
  border-radius: 20px !important;
  background: linear-gradient(180deg, #0c0e09 0%, #070905 100%) !important;
  box-shadow: 0 18px 46px rgba(0, 0, 0, .28) !important;
  transform: none !important;
  text-align: left !important;
}

.bew-single-product .bew-related-products article[data-product-card]:hover {
  border-color: #d5ad62 !important;
  box-shadow: 0 20px 52px rgba(0, 0, 0, .36), 0 0 24px rgba(213, 173, 98, .08) !important;
  transform: none !important;
}

.bew-single-product .bew-related-products .bew-product-image {
  order: 1 !important;
  width: 100% !important;
  height: 310px !important;
  margin: 0 0 22px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background-position: center !important;
  background-size: cover !important;
}

.bew-single-product .bew-related-products .bew-product-made {
  order: 2 !important;
  display: block !important;
  margin: 0 28px 20px !important;
  color: #d5ad62 !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.bew-single-product .bew-related-products .bew-product-made::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-right: 10px;
  border-radius: 50%;
  background: #9aa75b;
  box-shadow: 0 0 10px rgba(154, 167, 91, .7);
}

.bew-single-product .bew-related-products h3 {
  order: 3 !important;
  margin: 0 28px 14px !important;
  color: #f4eee4 !important;
  font-size: clamp(32px, 2.5vw, 44px) !important;
  line-height: 1.04 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
}

.bew-single-product .bew-related-products article[data-product-card] > p:not(.bew-product-bulk) {
  order: 4 !important;
  display: -webkit-box !important;
  min-height: 48px !important;
  margin: 0 28px 22px !important;
  overflow: hidden !important;
  color: #c8c0b4 !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.bew-single-product .bew-related-products .bew-product-badge,
.bew-single-product .bew-related-products article[data-product-card] > small,
.bew-single-product .bew-related-products .bew-product-chips,
.bew-single-product .bew-related-products .bew-product-price,
.bew-single-product .bew-related-products .bew-product-bulk {
  display: none !important;
}

.bew-single-product .bew-related-products .bew-card-actions {
  order: 5 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
  width: auto !important;
  margin: auto 28px 0 !important;
}

.bew-single-product .bew-related-products .bew-card-actions a {
  width: 100% !important;
  min-height: 56px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 8px !important;
  color: #0a0b08 !important;
  background: linear-gradient(180deg, #edc66f, #d3a344) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 56px !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.bew-single-product .bew-related-products .bew-card-actions a:first-child {
  order: 2 !important;
  min-height: auto !important;
  color: #d5ad62 !important;
  background: transparent !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
  text-decoration: none !important;
}

.bew-single-product .bew-related-products .bew-card-actions a:first-child:hover,
.bew-single-product .bew-related-products .bew-card-actions a:first-child:focus,
.bew-single-product .bew-related-products .bew-card-actions a:first-child:active {
  text-decoration: none !important;
}

.bew-single-product .bew-related-products .bew-card-actions a:first-child::after {
  content: "\2192";
  margin-left: 12px;
  text-decoration: none;
}

.bew-single-product .bew-related-products .bew-card-actions a:last-child {
  order: 1 !important;
}

@media (max-width: 900px) {
  .bew-single-product .bew-related-products .bew-product-grid[data-bew-product-rail] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 620px) {
  .bew-single-product .bew-related-products {
    padding: 56px 18px !important;
  }

  .bew-single-product .bew-related-products .bew-product-grid[data-bew-product-rail] {
    grid-template-columns: 1fr !important;
  }

  .bew-single-product .bew-related-products article[data-product-card] {
    min-height: 590px !important;
  }

  .bew-single-product .bew-related-products .bew-product-image {
    height: 270px !important;
  }

  .bew-single-product .bew-related-products h3 {
    font-size: 34px !important;
  }
}

/* =========================================================
   Responsive fix: LOCAL ARIZONA BRANDS (Community Partners)
   Scope: home page only. Prevents image overlapping partner
   logos / text on tablet & mobile without altering desktop
   design or other sections.
   ========================================================= */

/* Contain the section so its background/image never bleeds */
body.home .bew-local-brands,
body.page-home .bew-local-brands,
body.elementor-page-38 .bew-local-brands {
  overflow: clip !important;
  isolation: isolate !important;
}

/* Desktop + all widths: isolate layout, prevent parallax drift and
   ensure left column (text + logos) and right image never paint
   over each other. This is still scoped ONLY to home/local-brands. */
body.home .bew-local-brands-shell,
body.page-home .bew-local-brands-shell,
body.elementor-page-38 .bew-local-brands-shell {
  align-items: start !important;
  overflow: visible !important;
}
body.home .bew-local-brands-copy,
body.page-home .bew-local-brands-copy,
body.elementor-page-38 .bew-local-brands-copy {
  min-width: 0 !important;
  overflow: hidden !important;
  position: relative !important;
  z-index: 2 !important;
}
body.home .bew-local-brands-image,
body.page-home .bew-local-brands-image,
body.elementor-page-38 .bew-local-brands-image {
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 520px !important;
  max-height: 560px !important;
  aspect-ratio: 1.1 / 1 !important;
  height: auto !important;
  overflow: hidden !important;
  position: relative !important;
  z-index: 1 !important;
  background-position: center !important;
  background-size: cover !important;
  transform: none !important;
  box-sizing: border-box !important;
}
body.home .bew-local-brands-image[data-bew-parallax],
body.page-home .bew-local-brands-image[data-bew-parallax],
body.elementor-page-38 .bew-local-brands-image[data-bew-parallax] {
  transform: none !important;
}
/* Partner logos: keep Bitter illustration contained, allow wrap,
   enforce consistent max sizes so Dust/Tandy never spill into image gutter */
body.home .bew-local-partner-logos,
body.page-home .bew-local-partner-logos,
body.elementor-page-38 .bew-local-partner-logos {
  position: relative !important;
  z-index: 2 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  overflow: hidden !important;
}
body.home .bew-local-partner-logos img,
body.page-home .bew-local-partner-logos img,
body.elementor-page-38 .bew-local-partner-logos img {
  min-width: 0 !important;
  object-fit: contain !important;
  flex-shrink: 1 !important;
}
/* Bitter is a tall illustration — cap its size at desktop so it
   stays inside left column and never reaches the flour image */
body.home .bew-local-partner-logos img:first-child,
body.page-home .bew-local-partner-logos img:first-child,
body.elementor-page-38 .bew-local-partner-logos img:first-child {
  max-width: min(100%, 320px) !important;
  max-height: 380px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}
/* Dust + Tandy are true logos — keep small */
body.home .bew-local-partner-logos img:nth-child(n+2),
body.page-home .bew-local-partner-logos img:nth-child(n+2),
body.elementor-page-38 .bew-local-partner-logos img:nth-child(n+2) {
  max-width: 140px !important;
  max-height: 64px !important;
  width: auto !important;
  height: auto !important;
}

/* Desktop remains 2 columns. Tablet starts stacking at 1100px
   to avoid crowded side-by-side crowding (overlap root cause). */
@media (max-width: 1100px) {
  body.home .bew-local-brands-shell,
  body.page-home .bew-local-brands-shell,
  body.elementor-page-38 .bew-local-brands-shell {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
    align-items: start !important;
  }

  body.home .bew-local-brands-copy,
  body.page-home .bew-local-brands-copy,
  body.elementor-page-38 .bew-local-brands-copy {
    max-width: 100% !important;
    width: 100% !important;
    order: 1 !important;
    min-width: 0 !important;
  }

  /* Flour image: keep ratio, constrain height, center, disable parallax shift */
  body.home .bew-local-brands-image,
  body.page-home .bew-local-brands-image,
  body.elementor-page-38 .bew-local-brands-image {
    order: 2 !important;
    width: 100% !important;
    max-width: 640px !important;
    min-height: 0 !important;
    aspect-ratio: 4 / 3 !important;
    margin-inline: auto !important;
    background-position: center !important;
    background-size: cover !important;
    transform: none !important;
    isolation: isolate !important;
  }
  body.home .bew-local-brands-image[data-bew-parallax],
  body.page-home .bew-local-brands-image[data-bew-parallax],
  body.elementor-page-38 .bew-local-brands-image[data-bew-parallax] {
    transform: none !important;
  }

  /* Partner logos row stays inside copy, wraps cleanly */
  body.home .bew-local-partner-logos,
  body.page-home .bew-local-partner-logos,
  body.elementor-page-38 .bew-local-partner-logos {
    width: 100% !important;
    max-width: 100% !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 16px 22px !important;
    margin-top: 22px !important;
    padding-top: 20px !important;
    overflow: hidden !important;
  }
  body.home .bew-local-partner-logos img,
  body.page-home .bew-local-partner-logos img,
  body.elementor-page-38 .bew-local-partner-logos img {
    flex: 0 1 auto !important;
    max-width: min(160px, 30%) !important;
    height: clamp(34px, 5vw, 54px) !important;
    object-fit: contain !important;
  }
  /* When stacked, Bitter must shrink to logo-size as well */
  body.home .bew-local-partner-logos img:first-child,
  body.page-home .bew-local-partner-logos img:first-child,
  body.elementor-page-38 .bew-local-partner-logos img:first-child {
    max-width: min(160px, 30%) !important;
    max-height: 64px !important;
    height: clamp(34px, 5vw, 54px) !important;
  }
  body.home .bew-local-partner-logos img:nth-child(n+2),
  body.page-home .bew-local-partner-logos img:nth-child(n+2),
  body.elementor-page-38 .bew-local-partner-logos img:nth-child(n+2) {
    max-width: min(160px, 30%) !important;
    max-height: 64px !important;
  }
}

@media (max-width: 980px) {
  body.home .bew-local-brands,
  body.page-home .bew-local-brands,
  body.elementor-page-38 .bew-local-brands {
    padding: 36px 0 !important;
  }
  body.home .bew-local-brands-image,
  body.page-home .bew-local-brands-image,
  body.elementor-page-38 .bew-local-brands-image {
    max-width: 100% !important;
    aspect-ratio: 4 / 3.2 !important;
    min-height: 280px !important;
    max-height: 360px !important;
  }
}

@media (max-width: 640px) {
  body.home .bew-local-brands-copy h2,
  body.page-home .bew-local-brands-copy h2,
  body.elementor-page-38 .bew-local-brands-copy h2 {
    font-size: clamp(24px, 8vw, 34px) !important;
    line-height: 1.02 !important;
    margin: 8px 0 10px !important;
  }
  body.home .bew-local-brands-copy p,
  body.page-home .bew-local-brands-copy p,
  body.elementor-page-38 .bew-local-brands-copy p {
    font-size: 13.5px !important;
    line-height: 1.6 !important;
    margin: 0 0 10px !important;
  }
  body.home .bew-local-brand-tags,
  body.page-home .bew-local-brand-tags,
  body.elementor-page-38 .bew-local-brand-tags {
    gap: 6px !important;
    margin-top: 12px !important;
  }
  body.home .bew-local-brand-tags span,
  body.page-home .bew-local-brand-tags span,
  body.elementor-page-38 .bew-local-brand-tags span {
    padding: 7px 10px !important;
  }
  body.home .bew-local-brands-image,
  body.page-home .bew-local-brands-image,
  body.elementor-page-38 .bew-local-brands-image {
    min-height: 220px !important;
    max-height: 300px !important;
    aspect-ratio: 4 / 3.4 !important;
    border-radius: 4px !important;
  }
  body.home .bew-local-partner-logos,
  body.page-home .bew-local-partner-logos,
  body.elementor-page-38 .bew-local-partner-logos {
    gap: 10px !important;
    margin-top: 14px !important;
    padding-top: 12px !important;
  }
  body.home .bew-local-partner-logos img,
  body.page-home .bew-local-partner-logos img,
  body.elementor-page-38 .bew-local-partner-logos img {
    max-width: 44% !important;
    height: 38px !important;
  }
}

/* Very small devices - ensure tags + logos never force horizontal scroll */
@media (max-width: 400px) {
  body.home .bew-local-partner-logos img,
  body.page-home .bew-local-partner-logos img,
  body.elementor-page-38 .bew-local-partner-logos img {
    max-width: 46% !important;
    height: 36px !important;
  }
}

/* =========================================================
   GLOBAL MOBILE / TABLET HERO FIX - Every page
   Sticky header is in-flow, so page heroes must NOT add a
   second huge top shelf. Compact first sections site-wide.
   Spacing / size only. Desktop (>980px) unchanged.
   ========================================================= */
@media (max-width: 980px) {
  .bew-lux-hero,
  .bew-hero,
  .bew-page-hero {
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    padding: 0 !important;
  }
  /* Home / marketing heroes: shorter than half viewport */
  .bew-lux-hero,
  .bew-hero {
    min-height: clamp(360px, 52svh, 480px) !important;
  }
  /* Inner-page first section: content-sized, not a tall empty band */
  .bew-page-hero {
    min-height: 0 !important;
  }
  .bew-lux-hero .bew-lux-shell,
  .bew-hero .bew-shell,
  .bew-hero-inner {
    min-height: clamp(360px, 52svh, 480px) !important;
    height: auto !important;
    padding-top: 48px !important;
    padding-bottom: 28px !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .bew-page-hero .bew-shell {
    min-height: 0 !important;
    height: auto !important;
    padding-top: 40px !important;
    padding-bottom: 28px !important;
    justify-content: flex-start !important;
  }
  .bew-lux-hero-copy,
  .bew-hero-copy {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .bew-lux-hero-image,
  .bew-hero-image,
  .bew-page-hero {
    background-position: center center !important;
  }
  .bew-lux-hero h1,
  .bew-hero h1,
  .bew-page-hero h1 {
    font-size: clamp(36px, 7.5vw, 52px) !important;
    line-height: .94 !important;
    margin: 8px 0 12px !important;
  }
}

@media (max-width: 680px) {
  .bew-lux-hero,
  .bew-hero {
    min-height: clamp(320px, 48svh, 420px) !important;
  }
  .bew-page-hero {
    min-height: 0 !important;
    padding: 0 !important;
  }
  .bew-lux-hero .bew-lux-shell,
  .bew-hero .bew-shell,
  .bew-hero-inner {
    min-height: clamp(320px, 48svh, 420px) !important;
    padding-top: 36px !important;
    padding-bottom: 24px !important;
  }
  .bew-page-hero .bew-shell {
    min-height: 0 !important;
    padding-top: 28px !important;
    padding-bottom: 24px !important;
  }
  .bew-lux-hero h1,
  .bew-hero h1,
  .bew-page-hero h1 {
    font-size: clamp(32px, 9.5vw, 44px) !important;
    line-height: .94 !important;
    margin: 6px 0 10px !important;
  }
}

@media (max-width: 430px) {
  .bew-lux-hero,
  .bew-hero {
    min-height: clamp(300px, 46svh, 380px) !important;
  }
  .bew-lux-hero .bew-lux-shell,
  .bew-hero .bew-shell,
  .bew-hero-inner {
    min-height: clamp(300px, 46svh, 380px) !important;
    padding-top: 28px !important;
    padding-bottom: 20px !important;
  }
  .bew-page-hero .bew-shell {
    padding-top: 22px !important;
    padding-bottom: 20px !important;
  }
  .bew-lux-hero h1,
  .bew-hero h1,
  .bew-page-hero h1 {
    font-size: clamp(28px, 9vw, 38px) !important;
  }
}

/* =========================================================
   MOBILE POLISH — spacing, font-size, image dimensions only
   No color / text changes. Compact, organized tablet + phone.
   Targets every page (global). Desktop >980px untouched.
   ========================================================= */

/* ---------- Tablet (≤980) : tighten gutters + sections ---------- */
@media (max-width: 980px) {
  /* Gutters - consistent side margin */
  .bew-shell,
  .bew-lux-shell,
  .bew-header-shell,
  .bew-page-hero .bew-shell,
  .bew-feature-shell,
  .bew-menu-shell,
  .bew-history-shell,
  .bew-contact-layout,
  .bew-footer-main,
  .bew-footer-newsletter .bew-shell,
  .bew-local-brands-shell {
    width: min(calc(100% - 32px), 1180px) !important;
  }

  /* Section rhythm - compact vertical padding */
  .bew-section,
  .bew-lux-story,
  .bew-local-brands,
  .bew-products,
  .bew-benefits,
  .bew-orders,
  .bew-feature-row,
  .bew-menu-mosaic,
  .bew-promo-band,
  .bew-history,
  .bew-team-preview,
  .bew-contact-strip,
  .bew-lux-awards,
  .bew-featured-in,
  .bew-awards,
  .bew-story,
  .bew-process,
  .bew-faq-list,
  .bew-lux-products,
  .bew-lux-process,
  .bew-lux-why,
  .bew-lux-testimonials,
  .bew-lux-instagram,
  .bew-lux-delivery,
  .bew-lux-newsletter,
  .bew-delivery-showcase {
    padding-top: 36px !important;
    padding-bottom: 36px !important;
  }
  .bew-page-hero {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .bew-promo-band {
    gap: 0 !important;
  }

  /* Headings - tablet scale */
  .bew-lux-hero h1,
  .bew-hero h1,
  .bew-page-hero h1 {
    font-size: clamp(36px, 7.5vw, 52px) !important;
    line-height: .94 !important;
    letter-spacing: -.01em !important;
    margin: 8px 0 12px !important;
  }
  .bew-lux-story h2,
  .bew-story h2,
  .bew-orders h2,
  .bew-section-title h2,
  .bew-lux-section-head h2,
  .bew-feature-shell h3,
  .bew-menu-grid h3,
  .bew-history-list h3,
  .bew-team-grid h3,
  .bew-contact-strip h2,
  .bew-products h2,
  .bew-benefits h2,
  .bew-local-brands-copy h2,
  .bew-delivery-copy h2,
  .bew-lux-editorial-copy h2 {
    font-size: clamp(26px, 5.5vw, 38px) !important;
    line-height: 1.04 !important;
    margin: 8px 0 10px !important;
  }
  .bew-lux-story h2 br,
  .bew-story h2 br,
  .bew-local-brands-copy h2 br { display: inline !important; }

  /* Kicker / eyebrow */
  .bew-kicker,
  .bew-lux-kicker,
  .bew-page-hero .bew-kicker {
    font-size: 10px !important;
    letter-spacing: 2px !important;
    gap: 10px !important;
    margin-bottom: 6px !important;
  }
  .bew-kicker:after,
  .bew-lux-kicker:after { width: 28px !important; }

  /* Body copy */
  .bew-lux-hero p,
  .bew-hero p,
  .bew-page-hero p,
  .bew-story p,
  .bew-orders p,
  .bew-lux-story p,
  .bew-feature-shell p,
  .bew-menu-grid p,
  .bew-history-list p,
  .bew-team-grid p,
  .bew-lead,
  .bew-local-brands-copy p {
    font-size: 14px !important;
    line-height: 1.65 !important;
    margin: 0 0 12px !important;
  }

  /* Local brands tags - tighter cluster */
  .bew-local-brand-tags {
    gap: 8px !important;
    margin-top: 14px !important;
  }
  .bew-local-brand-tags span {
    padding: 8px 12px !important;
    font-size: 9.5px !important;
  }

  /* Images - keep height controlled, no giant empty */
  .bew-story-photo,
  .bew-orders-photo,
  .bew-lux-editorial-image,
  .bew-promo-media {
    min-height: 300px !important;
    max-height: 400px !important;
    aspect-ratio: 4 / 3 !important;
    height: auto !important;
  }
  .bew-menu-image {
    min-height: 200px !important;
    max-height: 260px !important;
  }
  .bew-team-image {
    aspect-ratio: 4 / 3 !important;
    min-height: 200px !important;
    max-height: 280px !important;
  }
  .bew-product-image,
  .bew-lux-product-image,
  .bew-menu-image,
  .bew-promo-media,
  .bew-team-image,
  .bew-story-photo,
  .bew-orders-photo {
    background-position: center !important;
    background-size: cover !important;
  }

  /* Grids */
  .bew-product-grid,
  .bew-benefit-grid,
  .bew-menu-grid,
  .bew-team-grid,
  .bew-history-list {
    gap: 14px !important;
  }
  .bew-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .bew-benefit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .bew-menu-grid { grid-template-columns: 1fr !important; }
  .bew-history-list { grid-template-columns: 1fr !important; }
  .bew-feature-shell { gap: 0 !important; }
  .bew-feature-shell article { padding: 28px 20px !important; min-height: auto !important; }

  /* Announcement marquee */
  .bew-lux-marquee { padding: 8px 0 !important; font-size: 10px !important; letter-spacing: 1.6px !important; }
}

/* ---------- Phone (≤680px) : compact modern ---------- */
@media (max-width: 680px) {
  .bew-shell,
  .bew-lux-shell,
  .bew-header-shell,
  .bew-page-hero .bew-shell,
  .bew-feature-shell,
  .bew-menu-shell,
  .bew-history-shell,
  .bew-contact-layout,
  .bew-footer-main,
  .bew-local-brands-shell {
    width: min(calc(100% - 24px), 1180px) !important;
  }

  .bew-section,
  .bew-lux-story,
  .bew-local-brands,
  .bew-products,
  .bew-benefits,
  .bew-orders,
  .bew-feature-row,
  .bew-menu-mosaic,
  .bew-history,
  .bew-team-preview,
  .bew-contact-strip,
  .bew-lux-awards,
  .bew-featured-in,
  .bew-awards,
  .bew-story,
  .bew-process,
  .bew-faq-list,
  .bew-lux-products,
  .bew-lux-process,
  .bew-lux-why,
  .bew-lux-testimonials,
  .bew-lux-instagram,
  .bew-lux-delivery,
  .bew-delivery-showcase {
    padding-top: 28px !important;
    padding-bottom: 28px !important;
  }
  .bew-page-hero {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    min-height: 0 !important;
  }

  /* Hero tighter */
  .bew-lux-hero .bew-lux-shell,
  .bew-hero .bew-shell,
  .bew-hero-inner,
  .bew-page-hero .bew-shell {
    gap: 12px !important;
  }
  .bew-lux-hero h1,
  .bew-hero h1,
  .bew-page-hero h1 {
    font-size: clamp(30px, 9.5vw, 42px) !important;
    line-height: .94 !important;
    margin: 6px 0 10px !important;
    max-width: 12ch !important;
  }
  .bew-lux-hero p,
  .bew-hero p,
  .bew-page-hero p {
    font-size: 13.5px !important;
    line-height: 1.6 !important;
    max-width: 34ch !important;
    margin-bottom: 12px !important;
  }
  .bew-button,
  .bew-lux-button {
    min-height: 42px !important;
    padding: 0 16px !important;
    font-size: 11px !important;
    letter-spacing: 1px !important;
    gap: 8px !important;
  }

  /* All section headings smaller */
  .bew-section-title h2,
  .bew-lux-section-head h2,
  .bew-story h2,
  .bew-orders h2,
  .bew-lux-story h2,
  .bew-products h2,
  .bew-history-list h3,
  .bew-menu-grid h3,
  .bew-team-grid h3,
  .bew-local-brands-copy h2,
  .bew-lux-editorial-copy h2,
  .bew-delivery-copy h2 {
    font-size: clamp(24px, 7.5vw, 32px) !important;
    line-height: 1.05 !important;
    margin: 6px 0 8px !important;
  }
  .bew-section-title { gap: 10px !important; }
  .bew-section-title span { width: 24px !important; }

  .bew-kicker,
  .bew-lux-kicker {
    font-size: 9.5px !important;
    letter-spacing: 1.8px !important;
    margin-bottom: 4px !important;
  }

  .bew-story p,
  .bew-orders p,
  .bew-feature-shell p,
  .bew-menu-grid p,
  .bew-history-list p,
  .bew-team-grid p,
  .bew-local-brands-copy p,
  .bew-lux-story p {
    font-size: 13.5px !important;
    line-height: 1.6 !important;
    margin-bottom: 10px !important;
  }

  .bew-local-brand-tags {
    gap: 6px !important;
    margin-top: 12px !important;
  }
  .bew-local-brand-tags span {
    padding: 7px 10px !important;
    font-size: 9px !important;
  }

  /* Images - shorter, no empty */
  .bew-story-photo,
  .bew-orders-photo,
  .bew-lux-editorial-image,
  .bew-promo-media {
    min-height: 240px !important;
    max-height: 320px !important;
    aspect-ratio: 4 / 3.1 !important;
  }
  .bew-menu-image { min-height: 180px !important; max-height: 240px !important; }
  .bew-team-image { min-height: 180px !important; max-height: 240px !important; aspect-ratio: 1 / 1 !important; }
  .bew-product-grid { gap: 10px !important; }
  .bew-product-grid article { padding-bottom: 12px !important; }
  .bew-product-image { aspect-ratio: 1 / 1 !important; }

  .bew-orders aside { padding: 16px !important; gap: 12px !important; }
  .bew-orders-copy { padding: 22px 16px !important; }
  .bew-story-copy { padding: 22px 16px !important; }
  .bew-promo-copy { padding: 22px 16px !important; }
  .bew-history-list article { padding: 18px 16px !important; width: calc(100% - 16px) !important; margin-left: 16px !important; }
  .bew-team-grid article { padding-bottom: 14px !important; }

  /* Footer tighter */
  .bew-footer-newsletter { padding: 24px 0 !important; }
  .bew-footer-newsletter .bew-shell { gap: 16px !important; }
  .bew-footer-main { gap: 18px !important; padding: 28px 0 16px !important; }
  .bew-footer-bottom { padding: 12px 0 16px !important; font-size: 10px !important; }
}

/* ---------- Small phone (≤430px) : extra compact ---------- */
@media (max-width: 430px) {
  .bew-shell,
  .bew-lux-shell,
  .bew-local-brands-shell {
    width: min(calc(100% - 20px), 1180px) !important;
  }
  .bew-section,
  .bew-lux-story,
  .bew-local-brands,
  .bew-products,
  .bew-lux-awards,
  .bew-featured-in {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }
  .bew-lux-hero h1,
  .bew-hero h1,
  .bew-page-hero h1 {
    font-size: clamp(28px, 9vw, 36px) !important;
    line-height: .96 !important;
  }
  .bew-lux-hero p,
  .bew-hero p { font-size: 13px !important; line-height: 1.55 !important; }
  .bew-local-brands-copy h2 {
    font-size: clamp(22px, 7.2vw, 28px) !important;
  }
  .bew-story-photo,
  .bew-orders-photo,
  .bew-lux-editorial-image {
    min-height: 210px !important;
    max-height: 280px !important;
  }
  .bew-menu-image { min-height: 160px !important; }
  .bew-team-image { min-height: 160px !important; }
  .bew-product-image { aspect-ratio: 1 / 1.05 !important; }
}

/* =========================================================
   RECOGNITION / AWARDS — mobile organization only
   Fixes: giant "2025 & 2026" date (was 30px+), heading too
   tall, card padding cramped. No color changes.
   ========================================================= */
@media (max-width: 980px) {
  .bew-lux-awards {
    padding-top: 36px !important;
    padding-bottom: 36px !important;
  }
  .bew-lux-awards .bew-lux-section-head,
  .bew-featured-in .bew-lux-section-head {
    text-align: center !important;
    margin-bottom: 6px !important;
  }
  .bew-lux-awards .bew-lux-section-head h2,
  .bew-featured-in .bew-lux-section-head h2 {
    font-size: clamp(26px, 7.2vw, 34px) !important;
    line-height: 1.04 !important;
    letter-spacing: .02em !important;
    max-width: 14ch !important;
    margin: 8px auto 0 !important;
    text-wrap: balance !important;
  }
  .bew-lux-award-timeline,
  .bew-featured-in-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    margin-top: 22px !important;
  }
  .bew-lux-award-timeline article,
  .bew-featured-in-grid a {
    display: grid !important;
    align-content: start !important;
    gap: 6px !important;
    min-height: auto !important;
    padding: 18px 16px !important;
    border-radius: 10px !important;
  }
  /* Date - was clamp(30px,3.4vw,48px) → far too big on phone */
  .bew-lux-award-timeline small {
    font-size: 18px !important;
    line-height: 1 !important;
    letter-spacing: .02em !important;
    margin: 0 !important;
  }
  .bew-lux-award-timeline h3,
  .bew-featured-in-grid span {
    font-size: 15px !important;
    line-height: 1.32 !important;
    letter-spacing: .04em !important;
    max-width: none !important;
    text-align: left !important;
  }
  .bew-lux-award-timeline p {
    font-size: 13px !important;
    line-height: 1.55 !important;
    margin: 2px 0 0 !important;
  }
}

@media (max-width: 680px) {
  .bew-lux-awards {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .bew-lux-awards .bew-lux-section-head h2 {
    font-size: clamp(24px, 8vw, 30px) !important;
    line-height: 1.06 !important;
    max-width: 13ch !important;
  }
  .bew-lux-award-timeline {
    gap: 12px !important;
    margin-top: 18px !important;
  }
  .bew-lux-award-timeline article {
    padding: 16px 14px !important;
    gap: 5px !important;
  }
  .bew-lux-award-timeline small {
    font-size: 16px !important;
  }
  .bew-lux-award-timeline h3 {
    font-size: 14px !important;
    line-height: 1.35 !important;
  }
  .bew-lux-award-timeline p { font-size: 12.5px !important; }
}

@media (max-width: 430px) {
  .bew-lux-awards .bew-lux-section-head h2 {
    font-size: 22px !important;
    line-height: 1.08 !important;
    max-width: 12ch !important;
  }
  .bew-lux-award-timeline small { font-size: 15px !important; }
  .bew-lux-award-timeline h3 { font-size: 13.5px !important; }
}

/* =========================================================
   FINAL COMPACT OVERRIDE (loads last)
   Beats sections.css body.home / page-hero rules that re-
   inflate tablet & mobile spacing. Spacing/size only.
   ========================================================= */

/* Page first sections — no tall empty shelves on tablet */
@media (max-width: 1180px) {
  body .bew-page-hero,
  body .bew-page-hero .bew-shell {
    min-height: 0 !important;
    height: auto !important;
  }
  body .bew-page-hero .bew-shell {
    padding-top: 48px !important;
    padding-bottom: 36px !important;
  }
  body .bew-page-hero h1 {
    font-size: clamp(40px, 6vw, 64px) !important;
    margin: 8px 0 12px !important;
  }
}

@media (max-width: 980px) {
  /* Kill full-viewport home hero on tablet/phone */
  body.home .bew-lux-hero,
  body.page-home .bew-lux-hero,
  body.elementor-page-38 .bew-lux-hero,
  body .bew-lux-hero,
  body .bew-hero {
    min-height: clamp(340px, 50svh, 460px) !important;
    height: auto !important;
    max-height: none !important;
    padding: 0 !important;
  }
  body.home .bew-lux-hero .bew-lux-shell,
  body.page-home .bew-lux-hero .bew-lux-shell,
  body.elementor-page-38 .bew-lux-hero .bew-lux-shell,
  body .bew-lux-hero .bew-lux-shell,
  body .bew-hero .bew-shell {
    min-height: clamp(340px, 50svh, 460px) !important;
    padding-top: 40px !important;
    padding-bottom: 28px !important;
  }

  body .bew-page-hero,
  body .bew-page-hero .bew-shell {
    min-height: 0 !important;
    padding: 0 !important;
  }
  body .bew-page-hero .bew-shell {
    padding-top: 36px !important;
    padding-bottom: 28px !important;
  }

  /* Section padding — beat clamp(58–82px) / body.home 56–64px */
  body .bew-section,
  body .bew-lux-story,
  body .bew-local-brands,
  body .bew-products,
  body .bew-benefits,
  body .bew-orders,
  body .bew-feature-row,
  body .bew-menu-mosaic,
  body .bew-history,
  body .bew-team-preview,
  body .bew-contact-strip,
  body .bew-lux-awards,
  body .bew-featured-in,
  body .bew-awards,
  body .bew-story,
  body .bew-process,
  body .bew-faq-list,
  body .bew-lux-products,
  body .bew-lux-process,
  body .bew-lux-why,
  body .bew-lux-testimonials,
  body .bew-lux-instagram,
  body .bew-lux-delivery,
  body .bew-lux-newsletter,
  body .bew-delivery-showcase,
  body.home .bew-lux-story,
  body.page-home .bew-lux-story,
  body.elementor-page-38 .bew-lux-story,
  body.home .bew-local-brands,
  body.page-home .bew-local-brands,
  body.elementor-page-38 .bew-local-brands,
  body.home .bew-lux-awards,
  body.page-home .bew-lux-awards,
  body.elementor-page-38 .bew-lux-awards,
  body.home .bew-featured-in,
  body.page-home .bew-featured-in,
  body.elementor-page-38 .bew-featured-in {
    padding-top: 36px !important;
    padding-bottom: 36px !important;
  }

  body.home .bew-lux-story,
  body.page-home .bew-lux-story,
  body.elementor-page-38 .bew-lux-story {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  body .bew-local-brands-copy h2,
  body.home .bew-local-brands-copy h2,
  body.page-home .bew-local-brands-copy h2,
  body.elementor-page-38 .bew-local-brands-copy h2 {
    font-size: clamp(26px, 5.8vw, 38px) !important;
    line-height: 1.04 !important;
    margin: 8px 0 10px !important;
  }
  body .bew-local-brands-copy p,
  body.home .bew-local-brands-copy p,
  body.page-home .bew-local-brands-copy p,
  body.elementor-page-38 .bew-local-brands-copy p {
    font-size: 14px !important;
    line-height: 1.6 !important;
    margin: 0 0 12px !important;
  }
  body .bew-local-brand-tags,
  body.home .bew-local-brand-tags,
  body.page-home .bew-local-brand-tags,
  body.elementor-page-38 .bew-local-brand-tags {
    gap: 8px !important;
    margin-top: 14px !important;
  }
  body .bew-local-brand-tags span,
  body.home .bew-local-brand-tags span,
  body.page-home .bew-local-brand-tags span,
  body.elementor-page-38 .bew-local-brand-tags span {
    padding: 8px 12px !important;
  }
  body .bew-local-brands-image,
  body.home .bew-local-brands-image,
  body.page-home .bew-local-brands-image,
  body.elementor-page-38 .bew-local-brands-image {
    min-height: 280px !important;
    max-height: 360px !important;
  }
  body .bew-kicker,
  body .bew-lux-kicker {
    margin-bottom: 6px !important;
  }
}

@media (max-width: 780px) {
  body .bew-page-hero,
  body .bew-page-hero .bew-shell {
    min-height: 0 !important;
  }
  body .bew-page-hero .bew-shell {
    padding-top: 28px !important;
    padding-bottom: 24px !important;
  }
}

@media (max-width: 680px) {
  body.home .bew-lux-hero,
  body.page-home .bew-lux-hero,
  body.elementor-page-38 .bew-lux-hero,
  body .bew-lux-hero,
  body .bew-hero {
    min-height: clamp(300px, 46svh, 400px) !important;
  }
  body.home .bew-lux-hero .bew-lux-shell,
  body.page-home .bew-lux-hero .bew-lux-shell,
  body.elementor-page-38 .bew-lux-hero .bew-lux-shell,
  body .bew-lux-hero .bew-lux-shell,
  body .bew-hero .bew-shell {
    min-height: clamp(300px, 46svh, 400px) !important;
    padding-top: 32px !important;
    padding-bottom: 22px !important;
  }
  body .bew-page-hero .bew-shell {
    padding-top: 24px !important;
    padding-bottom: 22px !important;
  }

  body .bew-section,
  body .bew-lux-story,
  body .bew-local-brands,
  body .bew-products,
  body .bew-lux-awards,
  body .bew-featured-in,
  body .bew-awards,
  body .bew-story,
  body .bew-orders,
  body .bew-benefits,
  body .bew-lux-products,
  body .bew-lux-process,
  body .bew-lux-why,
  body .bew-lux-testimonials,
  body .bew-lux-instagram,
  body .bew-lux-delivery,
  body .bew-delivery-showcase,
  body.home .bew-lux-story,
  body.page-home .bew-lux-story,
  body.elementor-page-38 .bew-lux-story,
  body.home .bew-local-brands,
  body.page-home .bew-local-brands,
  body.elementor-page-38 .bew-local-brands,
  body.home .bew-lux-awards,
  body.page-home .bew-lux-awards,
  body.elementor-page-38 .bew-lux-awards,
  body.home .bew-featured-in,
  body.page-home .bew-featured-in,
  body.elementor-page-38 .bew-featured-in {
    padding-top: 26px !important;
    padding-bottom: 26px !important;
  }

  body .bew-local-brands-copy h2,
  body.home .bew-local-brands-copy h2,
  body.page-home .bew-local-brands-copy h2,
  body.elementor-page-38 .bew-local-brands-copy h2 {
    font-size: clamp(24px, 7.5vw, 32px) !important;
    margin: 6px 0 8px !important;
  }
  body .bew-local-brand-tags,
  body.home .bew-local-brand-tags,
  body.page-home .bew-local-brand-tags,
  body.elementor-page-38 .bew-local-brand-tags {
    gap: 6px !important;
    margin-top: 10px !important;
  }
  body .bew-local-brands-image,
  body.home .bew-local-brands-image,
  body.page-home .bew-local-brands-image,
  body.elementor-page-38 .bew-local-brands-image {
    min-height: 220px !important;
    max-height: 300px !important;
  }
  body .bew-story-photo,
  body .bew-orders-photo,
  body .bew-lux-editorial-image {
    min-height: 220px !important;
    max-height: 300px !important;
  }
}

@media (max-width: 560px) {
  /* Beat sections.css body.home 100svh / 56px padding */
  body.home .bew-lux-hero,
  body.page-home .bew-lux-hero,
  body.elementor-page-38 .bew-lux-hero {
    min-height: clamp(300px, 46svh, 400px) !important;
    height: auto !important;
  }
  body.home .bew-lux-hero .bew-lux-shell,
  body.page-home .bew-lux-hero .bew-lux-shell,
  body.elementor-page-38 .bew-lux-hero .bew-lux-shell {
    min-height: clamp(300px, 46svh, 400px) !important;
    padding-top: 28px !important;
    padding-bottom: 20px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
  }
  body.home .bew-lux-story,
  body.page-home .bew-lux-story,
  body.elementor-page-38 .bew-lux-story,
  body.home .bew-local-brands,
  body.page-home .bew-local-brands,
  body.elementor-page-38 .bew-local-brands,
  body.home .bew-lux-awards,
  body.page-home .bew-lux-awards,
  body.elementor-page-38 .bew-lux-awards,
  body.home .bew-featured-in,
  body.page-home .bew-featured-in,
  body.elementor-page-38 .bew-featured-in {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }
  body .bew-page-hero .bew-shell {
    padding-top: 22px !important;
    padding-bottom: 20px !important;
  }
}

/* =========================================================
   ONE-STANDARD MOBILE TYPE — max 22px everywhere (≤680px)
   Overrides all previous clamps that still exceed 22px
   (you reported 37px still showing). No color changes.
   Specificity bumped with body.home/page-home to beat
   sections.css body.home rules.
   ========================================================= */
@media (max-width: 680px) {
  /* All primary headings capped at 22px */
  body h1,
  body h2,
  body .bew-lux-hero h1,
  body .bew-hero h1,
  body .bew-page-hero h1,
  body .bew-lux-section-head h2,
  body .bew-section-title h2,
  body .bew-local-brands-copy h2,
  body .bew-lux-story h2,
  body .bew-story h2,
  body .bew-orders h2,
  body .bew-lux-awards .bew-lux-section-head h2,
  body .bew-featured-in .bew-lux-section-head h2,
  body .bew-history-list h3,
  body .bew-menu-grid h3,
  body .bew-team-grid h3,
  body .bew-contact-strip h2,
  body .bew-products h2,
  body .bew-benefits h2,
  body .bew-feature-shell h3,
  body.home h1,
  body.home h2,
  body.home .bew-lux-hero h1,
  body.home .bew-hero h1,
  body.home .bew-page-hero h1,
  body.home .bew-lux-section-head h2,
  body.home .bew-section-title h2,
  body.home .bew-local-brands-copy h2,
  body.home .bew-lux-story h2,
  body.home .bew-story h2,
  body.home .bew-orders h2,
  body.page-home h1,
  body.page-home h2,
  body.page-home .bew-lux-hero h1,
  body.page-home .bew-page-hero h1,
  body.page-home .bew-lux-story h2,
  body.page-home .bew-local-brands-copy h2,
  body.elementor-page-38 h1,
  body.elementor-page-38 h2,
  body.elementor-page-38 .bew-lux-hero h1,
  body.elementor-page-38 .bew-lux-story h2 {
    font-size: clamp(18px, 5.2vw, 22px) !important;
    line-height: 1.28 !important;
    letter-spacing: .02em !important;
  }
  /* Secondary headings slightly smaller for hierarchy */
  body h3,
  body .bew-lux-award-timeline h3,
  body .bew-feature-shell h3,
  body .bew-history-list h3,
  body .bew-team-grid h3 {
    font-size: clamp(16px, 4.6vw, 19px) !important;
    line-height: 1.32 !important;
  }
  body h4,
  body h5,
  body h6 {
    font-size: clamp(14px, 4vw, 17px) !important;
  }
  /* Hero / Page hero specifically — was 34-48px */
  body.home .bew-lux-hero h1,
  body.page-home .bew-lux-hero h1,
  body.elementor-page-38 .bew-lux-hero h1,
  body .bew-lux-hero h1,
  body .bew-hero h1,
  body .bew-page-hero h1,
  body.home .bew-lux-story h2,
  body.page-home .bew-lux-story h2,
  body.elementor-page-38 .bew-lux-story h2,
  body.home .bew-lux-editorial-copy h2 {
    font-size: clamp(18px, 5.5vw, 22px) !important;
    line-height: 1.28 !important;
  }
  /* Awards date was re-inflated to 16-18px — keep ≤22 */
  body .bew-lux-award-timeline small {
    font-size: clamp(14px, 4.2vw, 16px) !important;
  }
}

@media (max-width: 430px) {
  body h1,
  body h2,
  body .bew-lux-hero h1,
  body .bew-hero h1,
  body .bew-page-hero h1,
  body .bew-lux-section-head h2,
  body .bew-local-brands-copy h2,
  body.home h1,
  body.home h2,
  body.home .bew-lux-story h2,
  body.page-home h1,
  body.page-home h2,
  body.elementor-page-38 h1,
  body.elementor-page-38 h2 {
    font-size: clamp(17px, 5vw, 20px) !important;
  }
}

/* =========================================================
   MOBILE MAX-WIDTH — remove narrow ch limits that left
   big right gap (screenshot). Use full width on phone.
   Spacing/size only, no colors.
   ========================================================= */
@media (max-width: 980px) {
  body .bew-lux-story h2,
  body.home .bew-lux-story h2,
  body.page-home .bew-lux-story h2,
  body.elementor-page-38 .bew-lux-story h2,
  body .bew-lux-editorial-copy h2,
  body .bew-story h2,
  body .bew-local-brands-copy h2,
  body .bew-lux-section-head h2,
  body .bew-section-title h2,
  body .bew-lux-awards .bew-lux-section-head h2,
  body .bew-featured-in .bew-lux-section-head h2 {
    max-width: none !important;
    width: 100% !important;
  }
  body .bew-lux-story p,
  body .bew-lux-editorial-copy p,
  body .bew-story p,
  body .bew-local-brands-copy p,
  body .bew-lux-hero p,
  body .bew-hero p {
    max-width: none !important;
    width: 100% !important;
  }
}

@media (max-width: 680px) {
  body .bew-lux-story,
  body.home .bew-lux-story,
  body.page-home .bew-lux-story,
  body.elementor-page-38 .bew-lux-story,
  body .bew-story,
  body .bew-local-brands-shell,
  body .bew-lux-editorial-copy,
  body .bew-story-copy,
  body .bew-local-brands-copy,
  body .bew-lux-section-head,
  body .bew-section-title {
    max-width: none !important;
    width: 100% !important;
  }
  body .bew-lux-story h2,
  body.home .bew-lux-story h2,
  body.page-home .bew-lux-story h2,
  body.elementor-page-38 .bew-lux-story h2,
  body .bew-lux-editorial-copy h2,
  body .bew-story h2,
  body .bew-local-brands-copy h2,
  body .bew-lux-section-head h2,
  body .bew-section-title h2,
  body .bew-page-hero h1,
  body .bew-lux-hero h1,
  body .bew-hero h1 {
    max-width: none !important;
    width: 100% !important;
    text-wrap: balance !important;
  }
  body .bew-lux-story p,
  body .bew-story p,
  body .bew-local-brands-copy p,
  body .bew-lux-hero p,
  body .bew-hero p,
  body .bew-page-hero p,
  body .bew-lux-section-head p,
  body .bew-lead {
    max-width: none !important;
    width: 100% !important;
  }
  /* Shell gutters tightened already — ensure images fill */
  body .bew-lux-editorial-image,
  body .bew-story-photo,
  body .bew-orders-photo,
  body .bew-promo-media {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* =========================================================
   UNIFY HEADING + DESCRIPTION SIZE — every page, every
   section same size (you saw 22px vs 24px). Max 22px.
   ========================================================= */
@media (max-width: 980px) {
  body h1,
  body h2,
  body .bew-lux-hero h1,
  body .bew-hero h1,
  body .bew-page-hero h1,
  body .bew-lux-section-head h2,
  body .bew-section-title h2,
  body .bew-local-brands-copy h2,
  body .bew-lux-story h2,
  body .bew-story h2,
  body .bew-orders h2,
  body .bew-lux-awards .bew-lux-section-head h2,
  body .bew-featured-in .bew-lux-section-head h2,
  body .bew-history-list h3,
  body .bew-menu-grid h3,
  body .bew-team-grid h3,
  body .bew-contact-strip h2,
  body .bew-products h2,
  body .bew-benefits h2,
  body .bew-feature-shell h3,
  body.home h1,
  body.home h2,
  body.home .bew-lux-hero h1,
  body.home .bew-lux-story h2,
  body.home .bew-local-brands-copy h2,
  body.page-home h1,
  body.page-home h2,
  body.page-home .bew-lux-story h2,
  body.elementor-page-38 h1,
  body.elementor-page-38 h2 {
    font-size: 22px !important;
    line-height: 1.28 !important;
    letter-spacing: .02em !important;
    max-width: 100% !important;
  }
  body p,
  body .bew-lux-hero p,
  body .bew-hero p,
  body .bew-page-hero p,
  body .bew-story p,
  body .bew-orders p,
  body .bew-lux-story p,
  body .bew-feature-shell p,
  body .bew-menu-grid p,
  body .bew-history-list p,
  body .bew-team-grid p,
  body .bew-lead,
  body .bew-local-brands-copy p,
  body .bew-lux-section-head p,
  body .bew-contact-strip p {
    font-size: 14px !important;
    line-height: 1.6 !important;
  }
}

@media (max-width: 680px) {
  body h1,
  body h2,
  body .bew-lux-hero h1,
  body .bew-hero h1,
  body .bew-page-hero h1,
  body .bew-lux-section-head h2,
  body .bew-section-title h2,
  body .bew-local-brands-copy h2,
  body .bew-lux-story h2,
  body .bew-story h2,
  body.home h1,
  body.home h2,
  body.page-home h1,
  body.page-home h2 {
    font-size: 22px !important;
  }
}

/* =========================================================
   GLOBAL MOBILE MAX-WIDTH FIX — remove right gap on every
   page/section. All headings + copy fill shell width.
   No color changes.
   ========================================================= */
@media (max-width: 980px) {
  body h1,
  body h2,
  body h3,
  body h4,
  body p,
  body .bew-lead,
  body .bew-hero-copy,
  body .bew-hero-copy h1,
  body .bew-hero-copy p,
  body .bew-page-hero h1,
  body .bew-page-hero p,
  body .bew-page-hero .bew-shell h1,
  body .bew-page-hero .bew-shell p,
  body .bew-lux-hero h1,
  body .bew-lux-hero p,
  body .bew-lux-hero-copy,
  body .bew-lux-hero-copy h1,
  body .bew-lux-hero-copy p,
  body .bew-lux-story h2,
  body .bew-lux-story p,
  body .bew-lux-editorial-copy,
  body .bew-lux-editorial-copy h2,
  body .bew-lux-editorial-copy p,
  body .bew-story h2,
  body .bew-story p,
  body .bew-story-copy,
  body .bew-story-copy h2,
  body .bew-story-copy p,
  body .bew-local-brands-copy,
  body .bew-local-brands-copy h2,
  body .bew-local-brands-copy p,
  body .bew-section-title h2,
  body .bew-lux-section-head h2,
  body .bew-lux-section-head p,
  body .bew-feature-shell h3,
  body .bew-feature-shell p,
  body .bew-menu-grid h3,
  body .bew-menu-grid p,
  body .bew-history-list h3,
  body .bew-history-list p,
  body .bew-team-grid h3,
  body .bew-team-grid p,
  body .bew-contact-strip h2,
  body .bew-contact-strip p,
  body .bew-promo-copy h2,
  body .bew-promo-copy p,
  body .bew-orders-copy h2,
  body .bew-orders-copy p,
  body .bew-benefits h2,
  body .bew-products h2 {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  /* Ensure inner wrappers also fill */
  body .bew-lux-story,
  body .bew-story,
  body .bew-local-brands-shell,
  body .bew-lux-section-head,
  body .bew-section-title,
  body .bew-feature-shell,
  body .bew-menu-grid,
  body .bew-history-list,
  body .bew-team-grid {
    max-width: none !important;
    width: 100% !important;
    padding-inline: 12px !important;
  }
}

/* =========================================================
   FINAL HEADING CAP — catch any remaining large headings
   like FRESH BAKING UPDATES (newsletter) that were not in
   earlier lists. Every bew- heading max 22px on mobile.
   ========================================================= */
@media (max-width: 980px) {
  body [class*="bew-"] h1,
  body [class*="bew-"] h2,
  body [class*="bew-"] h3,
  body.home [class*="bew-"] h1,
  body.home [class*="bew-"] h2,
  body.page-home [class*="bew-"] h1,
  body.elementor-page-38 [class*="bew-"] h1 {
    font-size: 22px !important;
    line-height: 1.28 !important;
    letter-spacing: .02em !important;
    max-width: 100% !important;
  }
}

@media (max-width: 680px) {
  body [class*="bew-"] h1,
  body [class*="bew-"] h2,
  body [class*="bew-"] h3,
  body.home [class*="bew-"] h2,
  body.page-home [class*="bew-"] h2 {
    font-size: 22px !important;
  }
}

@media (max-width: 430px) {
  body [class*="bew-"] h1,
  body [class*="bew-"] h2 {
    font-size: 20px !important;
  }
}

/* =========================================================
   LOCAL BRANDS — site-wide (fixes About page same as Home)
   Previous fix was home-only; About uses same .bew-local-
   brands markup but body.page-about / page-id-22, so flour
   image overlapped Dust/Tandy's. Apply globally.
   ========================================================= */
.bew-local-brands {
  overflow: clip !important;
  isolation: isolate !important;
}
.bew-local-brands-shell {
  align-items: start !important;
  overflow: visible !important;
}
.bew-local-brands-copy {
  min-width: 0 !important;
  overflow: hidden !important;
  position: relative !important;
  z-index: 2 !important;
}
.bew-local-brands-image {
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 520px !important;
  max-height: 560px !important;
  aspect-ratio: 1.1 / 1 !important;
  height: auto !important;
  overflow: hidden !important;
  position: relative !important;
  z-index: 1 !important;
  background-position: center !important;
  background-size: cover !important;
  transform: none !important;
  box-sizing: border-box !important;
}
.bew-local-brands-image[data-bew-parallax] { transform: none !important; }
.bew-local-partner-logos {
  position: relative !important;
  z-index: 2 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  overflow: hidden !important;
}
.bew-local-partner-logos img {
  min-width: 0 !important;
  object-fit: contain !important;
  flex-shrink: 1 !important;
}
.bew-local-partner-logos img:first-child {
  max-width: min(100%, 320px) !important;
  max-height: 380px !important;
  width: auto !important;
  height: auto !important;
}
.bew-local-partner-logos img:nth-child(n+2) {
  max-width: 140px !important;
  max-height: 64px !important;
  width: auto !important;
  height: auto !important;
}

@media (max-width: 1100px) {
  .bew-local-brands-shell {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
    align-items: start !important;
  }
  .bew-local-brands-copy {
    max-width: 100% !important;
    width: 100% !important;
    order: 1 !important;
    min-width: 0 !important;
  }
  .bew-local-brands-image {
    order: 2 !important;
    width: 100% !important;
    max-width: 640px !important;
    min-height: 0 !important;
    aspect-ratio: 4 / 3 !important;
    margin-inline: auto !important;
  }
  .bew-local-partner-logos {
    width: 100% !important;
    max-width: 100% !important;
    gap: 16px 22px !important;
    margin-top: 22px !important;
    padding-top: 20px !important;
  }
  .bew-local-partner-logos img {
    max-width: min(160px, 30%) !important;
    height: clamp(34px, 5vw, 54px) !important;
  }
  .bew-local-partner-logos img:first-child {
    max-width: min(160px, 30%) !important;
    max-height: 64px !important;
    height: clamp(34px, 5vw, 54px) !important;
  }
  .bew-local-partner-logos img:nth-child(n+2) {
    max-width: min(160px, 30%) !important;
    max-height: 64px !important;
  }
}
/* Client review: dark press coverage, readable policies, and footer links. */
.bew-press-logo [hidden] { display: none !important; }
.bew-press-logo-fallback { font-size: clamp(18px, 2vw, 28px); font-weight: 700; line-height: 1.15; }
.bew-news-page .bew-page-hero .bew-shell {
  background: transparent;
}
.bew-news-page .bew-page-hero :is(h1, p, span) {
  color: #f5efe4 !important;
  -webkit-text-fill-color: #f5efe4 !important;
  text-shadow: none !important;
}
.bew-vertical-videos {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  width: 100%;
}
.bew-behind-dough .bew-instagram-video { width: 100% !important; max-width: 1100px !important; }
.bew-behind-dough.bew-section { padding-block: clamp(56px, 6vw, 88px) !important; }
:is(.bew-behind-dough, .bew-press-page) .bew-lux-section-head,
:is(.bew-behind-dough, .bew-press-page) .bew-lux-section-head * {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}
.bew-vertical-videos figure { margin: 0; min-width: 0; }
.bew-vertical-videos video {
  display: block;
  width: 100%;
  aspect-ratio: 9 / 16;
  object-fit: contain;
  background: #080905;
  border-radius: 16px;
}
.bew-vertical-videos figcaption { padding-top: 12px; color: #f7f3eb; }
.bew-press-video { width: 100%; max-height: 440px; background: #000; border-radius: 10px; }
@media (max-width: 680px) {
  .bew-vertical-videos { grid-template-columns: 1fr; max-width: 380px; margin-inline: auto; }
}
body .bew-press-page {
  background: #080905 !important;
}
body .bew-press-page :is(h2, h3, p, small, span, b, a) {
  color: #f5efe4 !important;
}
body .bew-press-page .bew-press-grid > :is(a, article) {
  background: linear-gradient(145deg, #1c1912, #0a0b07) !important;
  color: #f5efe4 !important;
  border-color: rgba(196, 163, 106, .35) !important;
}
body .bew-press-page :is(small, .bew-press-link, .bew-lux-kicker) {
  color: #d9bb88 !important;
}
body .bew-press-page .bew-press-logo {
  background: #fff !important;
}
body .bew-press-page .bew-press-logo span {
  color: #191414 !important;
}
.bew-policy-page :is(h1, h2, h3, summary, summary::marker) {
  color: #f5efe4 !important;
  -webkit-text-fill-color: #f5efe4 !important;
}
.bew-policy-page :is(p, li) {
  color: #ded6c8 !important;
}
.bew-policy-page a {
  color: #e3c38c !important;
}
.bew-policy-page summary:focus-visible {
  outline: 2px solid #e3c38c;
  outline-offset: 6px;
}
.bew-footer-bottom a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.bew-footer-bottom a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}

/* Press cards: compact publication identity, readable supporting copy. */
body .bew-press-page .bew-press-grid {
  align-items: start;
  gap: 20px !important;
}
body .bew-press-page .bew-press-grid > .bew-press-card {
  display: grid !important;
  grid-template-columns: 80px minmax(0, 1fr);
  align-content: start;
  align-items: center;
  gap: 20px 24px;
  min-height: 164px !important;
  padding: 28px !important;
  border-radius: 16px !important;
  border-color: rgba(196, 163, 106, .24) !important;
  background: linear-gradient(135deg, #1b1912, #11120d) !important;
  box-shadow: 0 6px 24px rgba(0, 0, 0, .12);
}
body .bew-press-page .bew-press-grid > .bew-press-card--text {
  grid-template-columns: minmax(0, 1fr);
}
body .bew-press-page .bew-press-logo {
  width: 80px !important;
  height: 80px !important;
  padding: 10px !important;
  margin: 0 !important;
  border-radius: 12px !important;
  justify-content: center;
  overflow: hidden;
}
body .bew-press-page .bew-press-logo img {
  max-width: 100% !important;
  max-height: 60px !important;
  object-fit: contain !important;
}
body .bew-press-page .bew-press-logo-fallback {
  font-size: 11px;
  text-align: center;
  overflow-wrap: anywhere;
}
body .bew-press-page .bew-press-copy { min-width: 0; }
body .bew-press-page .bew-press-copy h3 {
  margin: 0 0 8px !important;
  font: 600 clamp(23px, 2vw, 29px)/1.18 var(--bew-serif) !important;
  letter-spacing: -.015em !important;
  text-transform: none !important;
  overflow-wrap: break-word;
}
body .bew-press-page .bew-press-copy p {
  margin: 0 !important;
  color: #cfc7b8 !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
}
body .bew-press-page .bew-press-card > .bew-press-link {
  grid-column: 1 / -1;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 16px;
  border-top: 1px solid rgba(196, 163, 106, .2);
  font-size: 13px;
}
body .bew-press-page .bew-press-video { grid-column: 1 / -1; }
body .bew-press-page .bew-press-grid > a.bew-press-card:hover {
  transform: translateY(-3px) !important;
  border-color: #bca06b !important;
}
body .bew-press-page .bew-press-grid > a.bew-press-card:focus-visible {
  outline: 2px solid #e3c38c;
  outline-offset: 4px;
  transform: none !important;
}
@media (max-width: 760px) {
  body .bew-press-page .bew-press-grid > .bew-press-card {
    min-height: 140px !important;
    grid-template-columns: 64px minmax(0, 1fr);
    gap: 18px;
    padding: 22px !important;
  }
  body .bew-press-page .bew-press-grid > .bew-press-card--text { grid-template-columns: minmax(0, 1fr); }
  body .bew-press-page .bew-press-logo { width: 64px !important; height: 64px !important; padding: 8px !important; }
  body .bew-press-page .bew-press-logo img { max-height: 48px !important; }
}
@media (prefers-reduced-motion: reduce) {
  body .bew-press-page .bew-press-grid > a.bew-press-card { transition: none !important; transform: none !important; }
}
