/** Shopify CDN: Minification failed

Line 827:0 Unexpected "}"

**/
/*
  Gopalak Farms: shared styles for gf- sections, blocks and snippets.
  Loaded after Horizon's base.css (see snippets/gf-head.liquid).
  Only style gf- classes here; never override Horizon selectors globally.
*/

/* Icons: outline style that follows Theme settings > Icons > stroke */
.gf-i {
  fill: none;
  stroke: currentColor;
  stroke-width: calc(var(--icon-stroke-width, 1.5px) * 0.8);
  stroke-linecap: round;
  stroke-linejoin: round;
}

.gf-i-fill {
  fill: currentColor;
  stroke: none;
}

.gf-icon {
  flex-shrink: 0;
}

/* Product cards (Horizon blocks, extended) */

/* Stack the custom badge under the sale badge (blocks/_product-card-gallery.liquid) */
.product-badges:has(.gf-badge-custom) {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}

/* Size pills (blocks/swatches.liquid > "Show sizes as pills") */
.gf-option-pills {
  display: flex;
  flex-wrap: wrap;
  justify-content: var(--gf-pills-alignment);
  gap: 6px;
  margin: 0;
  list-style: none;

  & li {
    padding: 2px 8px;
    border: 1px solid var(--gf-line);
    border-radius: var(--style-border-radius-pills, 999px);
    color: var(--gf-ink-muted);
    font-size: var(--font-size--xs, 0.75rem);
    line-height: 1.5;
    white-space: nowrap;
  }

  @media screen and (max-width: 749px) {
    justify-content: var(--gf-pills-alignment-mobile);
  }
}

/* The reviews app (Trustoo) injects its own stars under card titles; the Review block already shows them */
product-card .vstar-star {
  display: none !important;
}

/* Quick add "Full-width button" (Theme settings > Product cards > Quick add style),
   rendered under the card content by blocks/_product-card.liquid */
.product-card__quick-add-bar {
  margin-top: auto;
  padding: 0 calc(16px * var(--spacing-scale, 1)) calc(16px * var(--spacing-scale, 1));

  & .quick-add {
    position: static;
    inset: auto;
    pointer-events: auto;
  }

  & .quick-add__product-form-component,
  & .quick-add__product-form-component .shopify-product-form {
    display: block;
    height: auto;
  }

  & button.quick-add__button {
    position: static;
    display: flex;
    justify-content: center;
    gap: 8px;
    width: 100%;
    max-inline-size: none;
    height: 44px;
    padding-inline: 12px;
    border: 0;
    border-radius: var(--style-border-radius-buttons-primary);
    background: var(--color-primary-button-background);
    color: var(--color-primary-button-text);
    opacity: 1;
    backdrop-filter: none;

    &:is(:hover, :focus-visible) {
      width: 100%;
      padding-inline: 12px;
      scale: 1;
      background: var(--color-primary-button-hover-background);
      color: var(--color-primary-button-hover-text);
    }

    &:disabled {
      opacity: var(--opacity-muted-text, 0.5);
    }

    & > .add-to-cart-icon {
      width: 20px;
    }
  }
}

/* Text blocks with an empty dynamic source (e.g. a product without a tagline) leave no gap in cards */
product-card :is(.text-block, rte-formatter):has(> p:only-child:empty) {
  display: none;
}

/* Tighter card spacing on mobile */
@media screen and (max-width: 749px) {
  product-card {
    --spacing-scale-md: 0.6;
  }

  .product-card__quick-add-bar button.quick-add__button {
    height: 40px;
  }
}

/* Blog posts section title has no color setting; its eyebrow (first line) uses the Gopalak gold text colour like other section eyebrows */
.section-resource-list [class*='__static-blog-title'] > p:first-child {
  color: #8C6420;
  font-family: var(--font-h6--family);
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: var(--font-h6--case);
  line-height: var(--font-h6--line-height);
}
.section-resource-list [class*='__static-blog-title'] > p:first-child::before {
  content: ''; display: inline-block; width: 24px; height: 1px; margin-inline-end: 10px;
  vertical-align: middle; background: currentColor; opacity: .6;
}

/* Homepage "Featured product" (e.g. Festive Hampers): on phones Horizon shows the media edge to edge;
   inside a homepage it should match other sections (page margin + the block's Media corner radius) */
@media screen and (max-width: 749px) {
  featured-product-information .product-information__media {
    padding-inline: var(--page-margin);
  }

  featured-product-information .product-information__media slideshow-component {
    border-radius: var(--media-radius, 0px);
    overflow: clip;
  }
}

/* Price block > Show savings */
.price-savings {
  margin: 4px 0 0;
  color: var(--gf-success);
  font-size: var(--font-size--sm, 0.875rem);
  font-weight: 600;
}

/* Product page: the Review stars block shows the rating; hide the reviews app's duplicate stars next to the title */
.product-details .vstar-star {
  display: none !important;
}

/* Free shipping progress bar (Theme settings > Cart), cart drawer and cart page */
.gf-free-shipping {
  display: grid;
  gap: 8px;
  margin-block-end: 16px;
  padding: 12px 14px;
  border-radius: 12px;
  background: var(--gf-cream);

  & .gf-free-shipping__message {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    color: var(--gf-ink);
    font-size: var(--font-size--sm, 0.875rem);
    font-weight: 500;

    & .gf-icon {
      color: var(--gf-primary);
    }
  }

  & .gf-free-shipping__track {
    height: 6px;
    overflow: hidden;
    border-radius: 999px;
    background: color-mix(in srgb, var(--gf-primary) 15%, transparent);

    & span {
      display: block;
      height: 100%;
      border-radius: inherit;
      background: var(--gf-primary);
      transition: width 0.4s ease;
    }
  }

  &.gf-free-shipping--done .gf-free-shipping__track span {
    background: var(--gf-success);
  }
}

/* Reviews app (Trustoo): review dates and item labels are light grey; darken for readable contrast */
.reviews-date,
[data-tt-lang-path='item_type'] {
  color: #5f5f5f !important;
  opacity: 1 !important;
}

/* Footer trust row sits above a hairline divider */
[id$='__section_cYxNbK'] .section-content-wrapper > .group-block:last-child {
  border-top: 1px solid var(--gf-line);
  padding-top: 24px;
}

/* Cart extras (Theme settings > Cart) */
.gf-cart-savings {
  margin: 4px 0 0;
  color: var(--gf-success);
  font-size: var(--font-size--sm, 0.875rem);
  font-weight: 600;
}

.gf-cart-trust {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin: 10px 0 0;
  color: var(--gf-ink-muted);
  font-size: 0.8125rem;

  & .gf-icon {
    color: var(--gf-primary);
  }
}

.gf-cart-recs {
  margin-block-start: 24px;
  padding: 16px;
  border-radius: 12px;
  background: var(--gf-cream);

  & .gf-cart-recs__heading {
    margin: 0 0 12px;
    font-family: var(--font-heading--family);
    font-size: 1.125rem;
  }

  & .gf-cart-recs__list {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  & .gf-cart-recs__item {
    display: grid;
    grid-template-columns: 64px 1fr auto;
    align-items: center;
    gap: 12px;
    padding: 8px;
    border-radius: 10px;
    background: #fff;
  }

  & .gf-cart-recs__media img {
    display: block;
    width: 64px;
    height: 64px;
    border-radius: 8px;
    object-fit: cover;
  }

  & .gf-cart-recs__info {
    display: grid;
    gap: 2px;
    min-width: 0;
  }

  & .gf-cart-recs__title {
    overflow: hidden;
    color: var(--gf-ink);
    font-size: 0.9375rem;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  & .gf-cart-recs__price {
    color: var(--gf-ink-muted);
    font-size: 0.8125rem;
  }

  & .gf-cart-recs__add {
    min-height: 36px;
    padding-inline: 14px;
    font-size: 0.8125rem;
  }
}

/* Search popup: popular searches (Theme settings > Search) */
.gf-popular-searches {
  padding: 4px var(--padding-xl, 20px) 16px;

  & .gf-popular-searches__title {
    margin: 0 0 10px;
    color: var(--gf-ink-muted);
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  & .gf-popular-searches__list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  & .pills__pill {
    display: inline-flex;
    padding: 6px 14px;
    border: 1px solid var(--gf-line);
    border-radius: 999px;
    background: var(--gf-cream);
    color: var(--gf-ink);
    font-size: 0.875rem;
    text-decoration: none;

    &:hover {
      border-color: var(--gf-primary);
      color: var(--gf-primary);
    }
  }
}

/* ==========================================================================
   Premium polish (site-wide). Only enhances Horizon output; all colours from tokens.
   ========================================================================== */

/* Buttons: confident pill buttons with a soft lift on hover */
.button,
.button-secondary,
button.button {
  letter-spacing: 0.02em;
  font-weight: 500;
  transition: transform 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease, color 0.25s ease;
}

@media (hover: hover) {
  a.button:hover,
  button.button:not(:disabled):hover,
  .button-secondary:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 20px -10px rgb(0 0 0 / 0.35);
  }
}

/* Section eyebrows (Heading 6 preset paragraphs): small gold rule before the label */
.text-block.h6 > p:only-child::before,
rte-formatter.h6 > p:only-child::before {
  content: '';
  display: inline-block;
  width: 24px;
  height: 1px;
  margin-inline-end: 10px;
  vertical-align: middle;
  background: currentColor;
  opacity: 0.6;
}

.text-block--align-center.h6 > p:only-child::after {
  content: '';
  display: inline-block;
  width: 24px;
  height: 1px;
  margin-inline-start: 10px;
  vertical-align: middle;
  background: currentColor;
  opacity: 0.6;
}

/* Product cards: soft border, gentle shadow on hover, image zoom */
product-card .product-card__content {
  transition: box-shadow 0.35s ease, border-color 0.35s ease;
}

@media (hover: hover) {
  product-card:hover .product-card__content {
    box-shadow: 0 18px 40px -24px rgb(1 67 66 / 0.35);
  }

  product-card .card-gallery img,
  .collection-card img,
  .resource-card img {
    transition: transform 0.8s cubic-bezier(0.2, 0.7, 0.2, 1);
  }

  product-card:hover .card-gallery img,
  .collection-card:hover img,
  .resource-card:hover img {
    transform: scale(1.04);
  }
}

/* Images inside media sections get a quiet shadow so they lift off the cream backgrounds */
.media-block__media,
.image-block__image {
  box-shadow: 0 24px 48px -32px rgb(30 30 27 / 0.45);
}

/* Header: hairline and slightly heavier nav */
.header__row .menu-list__link,
header-menu a {
  letter-spacing: 0.01em;
}

/* Scroll reveal: sections fade up as they enter the viewport (modern browsers, motion allowed) */
@media (prefers-reduced-motion: no-preference) {
  @supports (animation-timeline: view()) {
    main .shopify-section:not(:first-child) > .section:not(:has(> .marquee__wrapper)) {
      animation: gf-reveal linear both;
      animation-timeline: view();
      animation-range: entry 0% entry 35%;
    }
  }
}

@keyframes gf-reveal {
  from {
    opacity: 0;
    transform: translateY(28px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

/* ---------------------------------------------------------------
   Accordion "Cards" row style (Accordion block > Row style)
---------------------------------------------------------------- */
.accordion--cards {
  display: flex;
  flex-direction: column;
  gap: 12px;

  & .details {
    border: 1px solid var(--gf-line, rgb(30 30 27 / .1)) !important;
    border-radius: 16px;
    background: #fff;
    color: var(--gf-ink, #1e1e1b);
    padding-inline: 22px;
    transition: box-shadow .3s ease, border-color .3s ease;
  }
  & .details[open] {
    border-color: color-mix(in srgb, var(--gf-primary) 35%, transparent) !important;
    box-shadow: 0 16px 36px -24px rgb(1 67 66 / .45);
  }
  & .details__header {
    padding-block: 18px;
    gap: 12px;
  }
  & .details-content {
    padding-block-end: 20px;
    color: var(--gf-ink-muted, #1e1e1bb3);
    max-width: 68ch;
  }
  & .icon-plus, & .icon-caret {
    flex: none;
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--gf-primary-soft, #e6efee);
    color: var(--gf-primary);
    transition: background-color .3s ease, color .3s ease, transform .3s ease;
  }
  & .icon-plus svg, & .icon-caret svg { width: 12px; height: 12px; }
  & .details[open] .icon-plus,
  & .details[open] .icon-caret {
    background: var(--gf-primary);
    color: var(--gf-on-primary, #fff);
  }
}
.accordion--cards.accordion--caret .icon-plus,
.accordion--cards.accordion--plus .icon-caret { display: none; }
@media screen and (max-width: 749px) {
  .accordion--cards .details { padding-inline: 16px; border-radius: 14px; }
  .accordion--cards .details__header { padding-block: 14px; }
}

/* ---------------------------------------------------------------
   Quick add modal polish
---------------------------------------------------------------- */
.quick-add-modal {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 40px 80px -30px rgb(1 67 66 / .45);
}
.quick-add-modal::backdrop { background: rgb(20 30 28 / .45); backdrop-filter: blur(3px); }
.quick-add-modal__close {
  width: 40px; height: 40px; border-radius: 50%;
  background: var(--gf-cream, #f5efe3);
  display: grid; place-items: center;
}
.quick-add-modal__content .product-information__media { background: var(--gf-cream, #f5efe3); }
.quick-add-modal__content .view-product-title a {
  font-family: var(--font-heading--family);
  font-weight: var(--font-heading--weight, 400);
  font-size: clamp(1.5rem, 2.2vw, 2rem);
}
.quick-add-modal__content .view-product-title a:hover { color: var(--gf-primary); }
.quick-add-modal__content .product-header a {
  font-family: var(--font-heading--family);
  font-size: 1.25rem;
}
.quick-add-modal__content .buy-buttons-block::after {
  content: var(--gf-qa-trust, none);
  display: block;
  margin-top: 12px;
  text-align: center;
  font-size: .8125rem;
  color: var(--gf-ink-muted, #1e1e1bb3);
}

/* ---------------------------------------------------------------
   Search modal polish: one heading style, larger input, serif product names
---------------------------------------------------------------- */
.search-modal .predictive-search-results__title,
.dialog-modal .predictive-search-results__title {
  font-family: var(--font-body--family);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gf-ink-muted);
}
.search-modal input.search-input { font-size: 1.125rem; }
.search-modal .predictive-search-form__header { border-block-end: 1px solid var(--gf-line, rgb(30 30 27 / .1)); }
.search-modal .gf-popular-searches .pills__pill:hover {
  background: var(--gf-primary);
  border-color: var(--gf-primary);
  color: var(--gf-on-primary, #fff);
}
.search-modal :is(.product-card, product-card) :is(.product-title, .resource-card__title, a[class*='title']) {
  font-family: var(--font-heading--family);
}

/* Empty cart drawer: bestsellers list below "Continue shopping" */
.cart-items__wrapper--drawer-empty:has(.gf-cart-recs--empty-cart) {
  justify-content: flex-start;
  padding-block-start: 32px;
}
.gf-cart-recs--empty-cart {
  width: 100%;
  margin-block-start: 32px;
  text-align: start;
}
.cart-items__wrapper--drawer-empty > p:first-of-type { color: var(--gf-ink-muted); }
.gf-cart-recs .gf-cart-recs__add {
  min-height: 36px;
  height: auto;
  padding: 8px 16px;
  border-radius: 999px;
  font-size: 0.8125rem;
  white-space: nowrap;
}

/* ---------------------------------------------------------------
   Article body: calmer headings, readable rhythm
---------------------------------------------------------------- */
.blog-post-content :is(h1, h2, h3, h4),
.blog-post-content :is(h1, h2, h3, h4) :is(strong, b) {
  font-family: var(--font-heading--family);
  font-weight: var(--font-heading--weight, 400);
  letter-spacing: -0.01em;
}
.blog-post-content :is(h1, h2) { font-size: clamp(1.75rem, 2.6vw, 2.25rem); margin-block: 1.6em 0.5em; }
.blog-post-content h3 { font-size: clamp(1.375rem, 2vw, 1.625rem); margin-block: 1.4em 0.4em; }
.blog-post-content p:has(> strong:only-child) { margin-block-start: 1.4em; color: var(--gf-primary); }
.blog-post-content :is(p, li) { line-height: 1.75; }
.blog-post-content img { border-radius: 16px; }

/* A row of 4+ secondary buttons (e.g. blog topics) renders as compact filter pills */
.group-block-content:has(> .button-secondary:nth-of-type(4)) > .button-secondary {
  min-height: 0;
  padding: 10px 20px;
  font-size: 0.875rem;
}

/* Header wishlist icon (Theme settings > Gopalak Farms > Wishlist) */
.gf-header-wishlist {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  text-decoration: none;
}
.gf-header-wishlist .svg-wrapper { width: 20px; height: 20px; }

/* Mobile drawer: account + wishlist links separated from the menu */
.menu-drawer__utility-links:has(.menu-drawer__account) {
  margin-inline-end: var(--padding-xl, 20px);
  padding-block: 12px 8px;
  border-block-start: 1px solid var(--gf-line, rgb(30 30 27 / .1));
}
.menu-drawer__utility-links .menu-drawer__account { font-size: 1rem; gap: 12px; color: var(--gf-ink); }
.menu-drawer__utility-links .menu-drawer__account svg { width: 20px; height: 20px; color: var(--gf-primary); }
.menu-drawer__close-button.button { box-shadow: none; background: transparent; }

/* Contrast: Horizon muted text (dates, filter labels, helper text) 0.6 -> 0.7 so it passes WCAG AA (4.5:1) on white and cream */
:root:root { --opacity-muted-text: 0.7; }
.field__label.price-facet__label { color: var(--color-foreground-muted); }

/* Mega menu: collection column titles read as section eyebrows (gold, small caps), child links get a hover accent */
.mega-menu__link.mega-menu__link--parent,
.mega-menu__link.mega-menu__link--parent > .wrap-text {
  color: #8C6420;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.mega-menu__link-image { border-radius: 16px; overflow: hidden; }
@media (hover: hover) {
  .mega-menu__link:not(.mega-menu__link--parent):hover { color: var(--gf-primary); }
  .mega-menu__link--parent:hover .mega-menu__link-image img { transform: scale(1.04); }
  .mega-menu__link-image img { transition: transform .8s cubic-bezier(.2,.7,.2,1); }
}

/* Homepage photo grid (Instagram section): wraps to 3 x 2 on mobile */
@media screen and (max-width: 749px) {
  [id$='__instagram_feed'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content { flex-wrap: wrap; }
}
@media (hover: hover) {
  [id$='__instagram_feed'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content img { transition: transform .8s cubic-bezier(.2,.7,.2,1); }
  [id$='__instagram_feed'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content a:hover img { transform: scale(1.05); }
}
/* Photo grid is the fallback: hide it as soon as Instafeed renders posts */
[id$='__instagram_feed']:has(#insta-feed > *) .custom-section-content > .layout-panel-flex > .group-block:has(img) { display: none; }

/* ---------------------------------------------------------------
   Cart drawer redesign (scoped to the drawer; cart page untouched)
---------------------------------------------------------------- */
.cart-drawer__inner {
  /* header */
  & .theme-drawer__header {
    border-block-end: 1px solid var(--gf-line, rgb(30 30 27 / .1));
    padding-block-end: 14px;
  }
  & .theme-drawer__title { font-size: 1.5rem; letter-spacing: -0.01em; }
  & .theme-drawer__badge {
    background: var(--gf-primary); color: var(--gf-on-primary, #fff);
    font-weight: 600; min-width: 22px; height: 22px; border-radius: 999px;
  }

  & .gf-free-shipping { margin-block: 16px 8px; }

  /* line items */
  & .cart-drawer__items .cart-items__table-row {
    padding-block-end: 18px; margin-block-end: 18px;
    border-color: var(--gf-line, rgb(30 30 27 / .1));
  }
  & .cart-items__media-container {
    display: block; border-radius: 14px; overflow: hidden;
    background: var(--gf-cream, #f5efe3);
  }
  & .cart-items__media-image { object-fit: contain; mix-blend-mode: multiply; }
  & .cart-items__title {
    font-family: var(--font-heading--family);
    font-size: 1.0625rem; line-height: 1.25; color: var(--gf-ink);
  }
  & .cart-items__variants dd {
    display: inline-block; margin: 6px 0 0; padding: 2px 10px;
    border: 1px solid var(--gf-line, rgb(30 30 27 / .12)); border-radius: 999px;
    font-size: 0.75rem; color: var(--gf-ink-muted);
  }
  & .cart-items__unit-price-wrapper { margin-block-start: 6px; font-size: 0.9375rem; }
  & .cart-items__unit-price-wrapper bdi { color: var(--gf-ink); font-weight: 600; }
  & .cart-items__unit-price-wrapper .compare-at-price bdi { color: var(--gf-ink-muted); font-weight: 400; margin-inline-start: 4px; }
  /* qty 1: the line total equals the unit price shown under the title, so hide the duplicate */
  & .cart-items__table-row:has(.quantity-selector input[value='1']) .cart-items__price { visibility: hidden; }

  /* quantity: compact pill */
  & .cart-items__quantity-controls { gap: 10px; align-items: center; }
  & .quantity-selector {
    --quantity-selector-height: 34px;
    height: 34px; min-height: 34px; border-radius: 999px;
    border: 1px solid var(--gf-line, rgb(30 30 27 / .18)); background: #fff;
  }
  & .quantity-selector :is(button) { width: 32px; }
  & .quantity-selector input { font-size: 0.875rem; font-weight: 600; }
  & .cart-items__remove { color: var(--gf-ink-muted); opacity: .8; }
  & .cart-items__remove:hover { color: #b3261e; opacity: 1; }

  /* recommendations: horizontal mini cards */
  & .gf-cart-recs {
    margin: 4px 0 20px; padding: 18px 0 4px; background: none;
    border-block-start: 1px solid var(--gf-line, rgb(30 30 27 / .1)); border-radius: 0;
  }
  & .gf-cart-recs__heading { font-size: 1.125rem; margin-block-end: 12px; }
  & .gf-cart-recs__list {
    display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory;
    padding-block-end: 8px; scrollbar-width: none;
  }
  & .gf-cart-recs__list::-webkit-scrollbar { display: none; }
  & .gf-cart-recs__item {
    flex: 0 0 148px; scroll-snap-align: start;
    display: flex; flex-direction: column; align-items: stretch; gap: 8px;
    padding: 10px; border: 1px solid var(--gf-line, rgb(30 30 27 / .1)); border-radius: 14px; background: #fff;
  }
  & .gf-cart-recs__media { display: block; border-radius: 10px; overflow: hidden; background: var(--gf-cream, #f5efe3); }
  & .gf-cart-recs__media img { width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; mix-blend-mode: multiply; border-radius: 0; }
  & .gf-cart-recs__info { gap: 2px; }
  & .gf-cart-recs__title {
    font-family: var(--font-heading--family); font-size: 0.9375rem; line-height: 1.25;
    white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.5em;
  }
  & .gf-cart-recs__price { font-size: 0.8125rem; color: var(--gf-ink-muted); }
  & .gf-cart-recs__form, & .gf-cart-recs__form form { width: 100%; }
  & .gf-cart-recs .gf-cart-recs__add { width: 100%; }

  /* summary: compact, totals first */
  & .cart-drawer__summary { gap: 14px; padding-block: 16px; border-block-start: 1px solid var(--gf-line, rgb(30 30 27 / .1)); }
  & .cart-actions summary { min-height: 40px; padding-block: 6px; }
  & .cart-discount__label { font-size: 0.875rem; }
  & .cart__summary-totals:not(:has(.cart__subtotal-container:empty)) { border-block-start: 0; padding-block-start: 4px; }
  & .cart-totals__total-label { font-size: 1rem; font-weight: 600; }
  & .cart-totals__total-value { font-size: 1.25rem; }
  & .cart-totals__tax-note small { font-size: 0.75rem; color: var(--gf-ink-muted); }
  & .gf-cart-savings {
    display: inline-flex; align-self: flex-start; margin: 2px 0 0; padding: 4px 12px;
    border-radius: 999px; background: var(--gf-primary-soft, #e6efee); color: var(--gf-primary);
    font-size: 0.8125rem; font-weight: 600;
  }
  & .cart__checkout-button { min-height: 52px; font-size: 1rem; }
  & .gf-cart-trust { margin: 0; font-size: 0.75rem; }
}
@media screen and (max-width: 749px) {
  .cart-drawer__inner .cart-drawer__summary { padding: 12px 16px 14px; gap: 10px; }
  .cart-drawer__inner .cart__checkout-button { min-height: 48px; }
}
/* Shopify Inbox chat button: sit above the sticky add-to-cart bar while the bar is showing */
/* Inbox has no colour setting for this chat button, so brand it here */
shopify-chat::part(activator) {
  transition: translate 0.25s ease;
  background: var(--gf-primary, #014342);
  color: #fff;
  box-shadow: 0 6px 18px rgb(1 67 66 / 0.28);
}
body:has(.sticky-add-to-cart__bar[data-stuck='true']) shopify-chat::part(activator) { translate: 0 -84px; }
@media screen and (min-width: 750px) {
  body:has(.sticky-add-to-cart__bar[data-stuck='true']) shopify-chat::part(activator) { translate: 0 -96px; }
}

/* Mobile cart drawer: checkout sat at the end of the scrolling list, below the fold and under the
   fade mask, so on real phones (browser toolbars eat the bottom) it could not be reached/tapped.
   Pin the summary to the bottom of the drawer and size the drawer to the visible viewport. */
@media screen and (max-width: 749px) {
  .theme-drawer__dialog.color-custom-drawer:has(.cart-drawer__inner) { height: 100dvh; max-height: 100dvh; }
  .cart-drawer__inner { height: 100dvh; max-height: 100dvh; }
  .cart-drawer__inner .cart-drawer__content { mask-image: none !important; -webkit-mask-image: none !important; }
  /* Horizon switches to cart-summary-sticky="false" when the summary is tall; keep it pinned on phones anyway */
  .theme-drawer__dialog[cart-summary-sticky] .cart-drawer__inner .cart-drawer__summary,
  .cart-drawer__inner .cart-drawer__summary {
    position: sticky; bottom: 0; z-index: 3;
    background: var(--color-background, #fff);
    box-shadow: 0 -8px 20px rgb(0 0 0 / 0.06);
    padding-bottom: max(14px, env(safe-area-inset-bottom));
  }
}

/* Sale code hint above the discount field (theme setting: Cart promotion line) */
.gf-cart-promo {
  margin: 0 0 8px; padding: 8px 12px; border-radius: 10px;
  background: #f6e7c1; color: #5c3d0e; font-size: 0.8125rem; line-height: 1.35;
}
/* Short phones (≤ 760px tall): the fixed summary ate most of the drawer and squeezed the item list.
   Trim it to totals + checkout so more of the cart stays visible. */
@media screen and (max-width: 749px) and (max-height: 760px) {
  .cart-drawer__inner .cart-drawer__summary { padding: 8px 16px 10px; gap: 6px; }
  .cart-drawer__inner .cart-totals__tax-note,
  .cart-drawer__inner .gf-cart-trust { display: none; }
  .cart-drawer__inner .cart-actions summary { min-height: 34px; padding-block: 2px; }
  .cart-drawer__inner .cart__checkout-button { min-height: 44px; }
  .cart-drawer__inner .gf-free-shipping { margin-block: 10px 12px; }
  .cart-drawer__inner .theme-drawer__header { padding-block-end: 8px; }
  .gf-cart-promo { margin-block-end: 4px; padding: 6px 10px; }
}
.cart-drawer__inner .gf-free-shipping { margin-block-end: 20px; }
.cart-drawer__inner .gf-cart-recs__media img { object-fit: cover; mix-blend-mode: normal; }
.cart-drawer__inner cart-quantity-selector-component.quantity-selector { height: 34px !important; min-height: 34px; --minimum-touch-target: 34px; }
.cart-drawer__inner cart-quantity-selector-component.quantity-selector :is(button, input) { height: 32px; min-height: 32px; }

/* Swym "Add to wishlist" on PDP: Swym injects it inside the Add to cart button wrapper.
   Pull it out to its own centred row under the whole buy row, styled as a quiet text link. */
/* .product-form-buttons:has(.swym-button-bar) { position: relative; padding-block-end: 44px; }
.product-form-buttons .swym-button-bar.swym-wishlist-button-bar {
  position: absolute; inset-inline: 0; bottom: 0; height: 32px;
  display: flex !important; justify-content: center; align-items: center; margin: 0 !important; */
}
.product-form-buttons .swym-btn-container { margin: 0 !important; }
.product-form-buttons button.swym-button.swym-add-to-wishlist {
  display: inline-flex !important; flex-direction: row; align-items: center; gap: 8px;
  height: 32px !important; padding: 0 4px !important; line-height: 1 !important;
  background: none !important; border: 0 !important; border-radius: 0 !important;
  color: var(--gf-ink) !important; font-size: 0.875rem !important; font-weight: 500 !important;
  text-transform: none !important; letter-spacing: 0 !important; text-decoration: none !important;
}
/* .product-form-buttons button.swym-button.swym-add-to-wishlist .swym-wishlist-cta { text-decoration: underline; text-underline-offset: 4px; text-decoration-color: rgb(30 30 27 / .25); line-height: 1; } */
.product-form-buttons button.swym-button.swym-add-to-wishlist:hover { color: var(--gf-primary) !important; }
.product-form-buttons button.swym-button.swym-add-to-wishlist::after { order: -1; font-size: 16px !important; display: inline-flex !important; align-items: center; justify-content: center; width: 16px !important; height: 16px; border: 0 !important; text-decoration: none !important; }
.product-form-buttons button.swym-button.swym-add-to-wishlist::before,
.product-form-buttons button.swym-button.swym-add-to-wishlist::after { color: var(--gf-primary) !important; position: static !important; margin: 0 !important; line-height: 1 !important; text-decoration: none; }
.product-form-buttons button.swym-button.swym-add-to-wishlist::after { display: none !important; }
/* .product-form-buttons button.swym-button.swym-add-to-wishlist .swym-wishlist-cta::before {
  content: ''; display: inline-block; width: 18px; height: 18px; margin-inline-end: 8px; vertical-align: -4px;
  background: var(--gf-primary);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' d='M15.04 11.42c1.073-1.051 2.16-2.311 2.16-3.96A3.96 3.96 0 0 0 13.24 3.5c-1.267 0-2.16.36-3.24 1.44-1.08-1.08-1.973-1.44-3.24-1.44A3.96 3.96 0 0 0 2.8 7.46c0 1.656 1.08 2.916 2.16 3.96L10 16.46z'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' d='M15.04 11.42c1.073-1.051 2.16-2.311 2.16-3.96A3.96 3.96 0 0 0 13.24 3.5c-1.267 0-2.16.36-3.24 1.44-1.08-1.08-1.973-1.44-3.24-1.44A3.96 3.96 0 0 0 2.8 7.46c0 1.656 1.08 2.916 2.16 3.96L10 16.46z'/%3E%3C/svg%3E") center / contain no-repeat;
} */
/* .product-form-buttons button.swym-button.swym-add-to-wishlist[aria-pressed='true'] .swym-wishlist-cta::before,
.product-form-buttons button.swym-button.swym-add-to-wishlist.swym-added .swym-wishlist-cta::before { -webkit-mask-size: contain; background: #b3261e; } */

/* Variant buttons with price (Variant picker > Show price in buttons) */
.variant-option__button-label:has(.variant-option__button-label__price) {
  flex-direction: column; justify-content: center; gap: 2px;
  min-height: 72px; padding-block: 10px; border-radius: 16px; line-height: 1.15;
}
.variant-option__button-label:has(.variant-option__button-label__price) .variant-option__button-label__pill { border-radius: 16px; }
.variant-option__button-label__text { position: relative; }
.variant-option__button-label__price, .variant-option__button-label__unit { position: relative; z-index: 1; pointer-events: none; }
.variant-option__button-label__price { font-weight: 600; font-size: 0.9375rem; }
.variant-option__button-label__price s { font-weight: 400; opacity: .6; font-size: 0.8125rem; margin-inline-start: 2px; }
.variant-option__button-label__unit { font-size: 0.75rem; opacity: .75; }

/* Homepage testimonials: swipeable cards */
[id$='__home_testimonials'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content {
  flex-wrap: nowrap !important; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding-block-end: 8px;
}
[id$='__home_testimonials'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content > .group-block {
  flex: 0 0 clamp(280px, 30vw, 360px) !important; width: clamp(280px, 30vw, 360px) !important; scroll-snap-align: start;
}
[id$='__home_testimonials'] img { border-radius: 50%; }

/* reel card buttons: one line, compact */
[id$='__home_reels'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content .button-secondary { min-height: 40px; padding: 8px 14px; font-size: 0.875rem; white-space: nowrap; }
@media screen and (max-width: 749px) {
  [id$='__home_testimonials'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content > .group-block { flex-basis: 82vw !important; width: 82vw !important; }
}
[id$='__home_testimonials'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content .group-block-content > :is(.image-block, [class*='image-block']):first-child,
[id$='__home_testimonials'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content .group-block-content > .image-block:first-child { flex: 0 0 48px !important; width: 48px !important; max-width: 48px !important; }

/* Homepage category circles (collection list section "Category circles") */
[id$='__category_circles'] .collection-card { text-align: center; }
[id$='__category_circles'] :is(.collection-card__image, .collection-card-image, [class*='collection-card'] .image-block, [class*='collection-card'] img) { border-radius: 50% !important; }
[id$='__category_circles'] img { transition: transform .5s ease; }
@media (hover: hover) { [id$='__category_circles'] a:hover img { transform: scale(1.06); } }
@media screen and (max-width: 749px) {
  [id$='__category_circles'] slideshow-slide, [id$='__category_circles'] .resource-list__carousel .resource-list__slide { width: 26vw !important; flex: 0 0 26vw !important; }
}

/* Horizontal scrollers: arrows for mouse users (snippet gf-scroll-arrows), thin scrollbar on desktop */
.gf-scroll-arrows { display: none; }
@media (hover: hover) and (pointer: fine) {
  .gf-scroll-arrows { display: block; pointer-events: none; position: absolute; inset: 0; z-index: 2; }
  .gf-scroll-arrow {
    pointer-events: auto; position: absolute; top: 40%; transform: translateY(-50%);
    width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center;
    background: #fff; color: var(--gf-primary); border: 1px solid var(--gf-line, rgb(30 30 27 / .12));
    box-shadow: 0 8px 20px -10px rgb(1 67 66 / .45); cursor: pointer; transition: opacity .2s ease, transform .2s ease;
  }
  .gf-scroll-arrow:hover { background: var(--gf-primary); color: #fff; }
  .gf-scroll-arrow--prev { left: -12px; }
  .gf-scroll-arrow--next { right: -12px; }
  .gf-scroll-arrow:disabled { opacity: 0; pointer-events: none; }
  .gf-cart-recs .gf-scroll-arrow { width: 32px; height: 32px; top: 50%; }
  .gf-cart-recs .gf-scroll-arrow--prev { left: -6px; }
  .gf-cart-recs .gf-scroll-arrow--next { right: -6px; }
}

/* ---------------------------------------------------------------
   Reel style video (Video block > Reel style) + shoppable card
---------------------------------------------------------------- */
.gf-reel {
  position: relative; aspect-ratio: 9 / 16; overflow: hidden; border-radius: 20px;
  background: #1e1e1b; isolation: isolate; box-shadow: 0 24px 48px -28px rgb(30 30 27 / .55);
}
.gf-reel__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; cursor: pointer; }
.gf-reel::after {
  content: ''; position: absolute; inset: auto 0 0; height: 45%; pointer-events: none; z-index: 1;
  background: linear-gradient(to top, rgb(0 0 0 / .55), transparent);
}
.gf-reel__sound {
  position: absolute; top: 12px; right: 12px; z-index: 2; width: 34px; height: 34px; border-radius: 50%;
  display: grid; place-items: center; border: 0; cursor: pointer;
  background: rgb(0 0 0 / .45); color: #fff; backdrop-filter: blur(6px);
}
.gf-reel__sound .gf-reel__wave { display: none; }
.gf-reel__sound[aria-pressed='true'] .gf-reel__wave { display: inline; }
.gf-reel__sound[aria-pressed='true'] .gf-reel__mute { display: none; }
.gf-reel__card {
  position: absolute; left: 10px; right: 10px; bottom: 10px; z-index: 2;
  display: grid; grid-template-columns: 48px 1fr auto; align-items: center; gap: 10px;
  padding: 8px; border-radius: 14px; background: rgb(255 255 255 / .94); backdrop-filter: blur(8px);
  box-shadow: 0 10px 24px -12px rgb(0 0 0 / .45);
  transition: transform .3s ease;
}
.gf-reel:hover .gf-reel__card { transform: translateY(-2px); }
.gf-reel__thumb img { display: block; width: 48px; height: 48px; border-radius: 10px; object-fit: cover; background: var(--gf-cream); }
.gf-reel__info { display: grid; gap: 2px; min-width: 0; }
.gf-reel__title { color: var(--gf-ink); text-decoration: none; font-size: .8125rem; font-weight: 600; line-height: 1.2;
  overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.gf-reel__price { font-size: .8125rem; font-weight: 600; color: var(--gf-primary); }
.gf-reel__price s { color: var(--gf-ink-muted); font-weight: 400; font-size: .75rem; }
.gf-reel .gf-reel__add, .gf-reel__form .add-to-cart-button {
  min-height: 34px; height: 34px; padding: 0 14px; border-radius: 999px; font-size: .8125rem; white-space: nowrap;
}
.gf-reel__form .add-to-cart-button .svg-wrapper { display: none; }

/* rows of reels scroll sideways */
:is([id$='__home_reels'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content, [id$='__gf_reels'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content) {
  flex-wrap: nowrap !important; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;
  justify-content: flex-start; padding-block-end: 6px;
}
:is([id$='__home_reels'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content, [id$='__gf_reels'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content)::-webkit-scrollbar { display: none; }
:is([id$='__home_reels'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content, [id$='__gf_reels'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content) > .gf-reel {
  flex: 0 0 clamp(210px, 21vw, 270px) !important; width: clamp(210px, 21vw, 270px) !important; scroll-snap-align: start;
}
@media screen and (max-width: 749px) {
  :is([id$='__home_reels'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content, [id$='__gf_reels'] .custom-section-content > .layout-panel-flex > .group-block > .group-block-content) > .gf-reel { flex-basis: 64vw !important; width: 64vw !important; }
}

/* Quick add: keep rating and the short tagline (the text block right before the price) visible */
@media screen and (min-width: 750px) {
  .quick-add-modal .quick-add-modal__content .product-details .rating-wrapper { display: flex !important; align-items: center; gap: 6px; margin-block: 4px 2px; }
  .quick-add-modal .quick-add-modal__content .product-details .rating-wrapper * { display: revert !important; }
  .quick-add-modal .quick-add-modal__content .product-details .rating-wrapper .rating { display: inline-flex !important; }
  .quick-add-modal .quick-add-modal__content .product-details .text-block:has(+ product-price),
  .quick-add-modal .quick-add-modal__content .product-details .text-block:has(+ product-price) * { display: block !important; }
  .quick-add-modal .quick-add-modal__content .product-details .text-block:has(+ product-price) { color: var(--gf-ink-muted); margin-block: 6px 10px; font-size: .9375rem; }
}

/* Inventory: real low-stock pill (Product inventory block, threshold in block settings) */
.product-inventory__status { display: inline-flex; align-items: center; gap: 8px; font-size: .9375rem; }
.product-inventory:has(.product-inventory__icon-low) .product-inventory__status {
  padding: 6px 14px; border-radius: 999px; background: #FDF1E7; color: #9A3D12; font-weight: 600;
}
.product-inventory:has(.product-inventory__icon-in_stock) .product-inventory__status { color: var(--gf-primary); }

/* Delivery estimate block */
.gf-delivery { display: flex; align-items: center; gap: 10px; font-size: .9375rem; color: var(--gf-ink); }
.gf-delivery__icon { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--gf-primary-soft, #e6efee); color: var(--gf-primary); flex: none; }
.gf-delivery__icon svg { width: 18px; height: 18px; }
.gf-delivery strong { color: var(--gf-primary); }

/* Contact form: gifting dropdowns */
.gf-form-row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.gf-form-select { display: grid; gap: 6px; font-size: .8125rem; color: var(--gf-ink-muted); }
.gf-form-select select { appearance: auto; min-height: 48px; padding-inline: 12px; }
@media screen and (max-width: 749px) { .gf-form-row { grid-template-columns: 1fr; } }

/* Mobile: process steps as a compact 2 x 2 grid (homepage + About) */
@media screen and (max-width: 749px) {
  :is([id$='__bilona_process'], [id$='__about_process'], [id$='__gift_steps'], [id$='__gift_ways'], [id$='__gift_occasions']) .custom-section-content > .layout-panel-flex > .group-block:nth-child(2) > .group-block-content {
    display: grid !important; grid-template-columns: 1fr 1fr; gap: 10px !important;
  }
  :is([id$='__bilona_process'], [id$='__about_process'], [id$='__gift_steps'], [id$='__gift_ways'], [id$='__gift_occasions']) .custom-section-content > .layout-panel-flex > .group-block:nth-child(2) > .group-block-content > .group-block {
    width: auto !important; padding: 16px 14px !important;
  }
  :is([id$='__bilona_process'], [id$='__about_process'], [id$='__gift_steps'], [id$='__gift_ways'], [id$='__gift_occasions']) .group-block-content > .group-block .text-block p:not(:only-child),
  :is([id$='__bilona_process'], [id$='__about_process'], [id$='__gift_steps'], [id$='__gift_ways'], [id$='__gift_occasions']) .group-block-content > .group-block .text-block { font-size: .875rem; }
}

/* Mobile: comparison table stays 3 columns, tighter text */
@media screen and (max-width: 749px) {
  [id$='__gf_compare'] .custom-section-content > .layout-panel-flex > .group-block:nth-child(2) .group-block-content > .group-block .text-block { font-size: .8125rem; line-height: 1.35; }
  [id$='__gf_compare'] .custom-section-content > .layout-panel-flex > .group-block:nth-child(2) > .group-block-content > .group-block > .group-block-content { gap: 8px !important; }
}
@media screen and (max-width: 749px) {
  [id$='__gf_compare'] .custom-section-content > .layout-panel-flex > .group-block:nth-child(2) > .group-block-content > .group-block > .group-block-content {
    flex-direction: row !important; flex-wrap: nowrap !important;
  }
  [id$='__gf_compare'] .custom-section-content > .layout-panel-flex > .group-block:nth-child(2) > .group-block-content > .group-block > .group-block-content > .group-block {
    flex: 1 1 0 !important; width: auto !important; min-width: 0;
  }
  [id$='__gf_compare'] .custom-section-content > .layout-panel-flex > .group-block:nth-child(2) > .group-block-content > .group-block > .group-block-content > .group-block:first-of-type { flex: 0.8 1 0 !important; }
}

/* Gifting: client logos, equal visual height, no media shadow */
[id$='__gift_clients'] .image-block, [id$='__gift_clients'] .image-block__image { box-shadow: none !important; }
/* Logos: cap both height and width so a long wordmark (Dentium) and a square badge (Mega Transport) read at a similar size */
[id$='__gift_clients'] img { height: auto !important; max-height: 72px; width: auto !important; max-width: 170px; object-fit: contain; filter: saturate(.9); }
@media screen and (max-width: 749px) {
  [id$='__gift_clients'] .group-block-content.layout-panel-flex--row:has(img) { flex-direction: row !important; flex-wrap: wrap; justify-content: center; align-items: center; gap: 24px 32px; }
  [id$='__gift_clients'] .group-block-content.layout-panel-flex--row:has(img) > .group-block { width: auto !important; flex: 0 1 auto; min-height: 0 !important; }
  [id$='__gift_clients'] img { max-height: 60px; max-width: 140px; }
}

/* Diwali slide: text sits at the bottom, centred, on mobile */
@media screen and (max-width: 749px) {
  slideshow-slide:has(img[src*='gopalak-diwali-banner']) .group-block-content { align-items: center !important; justify-content: flex-end !important; padding-inline: 20px !important; padding-block-end: 44px !important; }
  slideshow-slide:has(img[src*='gopalak-diwali-banner']) .text-block { align-items: center !important; margin-inline: auto !important; }
  slideshow-slide:has(img[src*='gopalak-diwali-banner']) .text-block > * { text-align: center !important; }
  slideshow-slide:has(img[src*='gopalak-diwali-banner']) .overlay { background: linear-gradient(to top, rgb(0 0 0 / 0.8), rgb(0 0 0 / 0.35) 55%, rgb(0 0 0 / 0) 80%) !important; }
}

/* Tablet: product carousels show 3 cards plus a peek instead of the desktop 4-5 (cards were too narrow at 750-989px) */
@media screen and (min-width: 750px) and (max-width: 989px) {
  .resource-list__carousel .resource-list__slide.resource-list__slide:has(product-card) { --slide-width: 30cqw; }
  [id$='__category_circles'] slideshow-slides { justify-content: center; }
}

/* Tablet: collection grid beside the filter sidebar was a single huge column (auto-fill minmax 250px) */
@media screen and (min-width: 750px) and (max-width: 989px) {
  .product-grid.product-grid--grid:not([product-grid-view='zoom-out']) { --product-grid-columns-desktop: repeat(2, minmax(0, 1fr)); }
  /* Collection hero trust row: let the three items wrap instead of squeezing into narrow columns */
  [id$='__section'] .group-block-content.layout-panel-flex--row:has(> .group-block > .group-block-content > .icon-block) { flex-wrap: wrap; row-gap: 8px; }
  [id$='__section'] .group-block-content.layout-panel-flex--row > .group-block:has(> .group-block-content > .icon-block) .text-block p { white-space: nowrap; }
}

/* Quick add on mobile: the media column is just a 75px thumbnail, so drop the cream panel that ran past it */
@media screen and (max-width: 749px) {
  .quick-add-modal__content .product-information__media { background: transparent; align-self: start; }
}

/* Tablet PDP: Horizon splits photo | details 50/50, which left both columns ~340px. Stack them like mobile. */
@media screen and (min-width: 750px) and (max-width: 989px) {
  product-component.product-information__grid.product-information__grid--half:not(.quick-add-modal__content) {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding-inline: var(--page-margin, 20px);
  }
  product-component.product-information__grid.product-information__grid--half:not(.quick-add-modal__content) > * {
    width: 100%;
    padding-inline: 0;
  }
  /* Footer trust row: wrap instead of letting the items run into each other */
  [id$='__section_cYxNbK'] .section-content-wrapper > .group-block:last-child .group-block-content.layout-panel-flex--row { flex-wrap: wrap; row-gap: 12px; }
}

/* Mobile collection / search grid touched the screen edges; give it the page gutter */
@media screen and (max-width: 749px) {
  .product-grid-container .product-grid,
  main-collection .product-grid,
  .main-collection .product-grid { padding-inline: 12px; }
}

/* Long email addresses in narrow contact cards (tablet) were clipped at the card edge; let them wrap */
main a[href^='mailto:'] { overflow-wrap: anywhere; }
