/** Shopify CDN: Minification failed

Line 275:1 Expected "}" to go with "{"

**/
/* ============================================
   NUPLAS CUSTOM — Dawn 15.4.1
   Loaded via theme.liquid before </head>
   ============================================ */

/* --- Header search bar --- */
.search-modal .field:before,
.search-modal .field:after,
.search-modal .field:focus-within:after {
  display: none !important;
}

.search-modal .field {
  border: none !important;
  box-shadow: none !important;
}

.search-modal .field__label {
  display: none !important;
}

.search-modal .field__input,
.search-modal .field__input:focus,
.search-modal .field__input:focus-visible {
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  padding-left: 4.4rem !important;
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.search-modal .field__input::placeholder {
  opacity: 1 !important;
  color: #8a8a8a !important;
}

/* Search icon to the left */
.search-modal .search__button {
  left: 0 !important;
  right: auto !important;
}

/* Hide the reset (x) button — the modal close is enough */
.search-modal .reset__button {
  display: none !important;
}

/* Remove the hairline under the search bar */
details-modal.header__search .search-modal {
  border-bottom-width: 0 !important;
  border-bottom-style: none !important;
}

/* --- Predictive search panel --- */
.search-modal__form {
  position: static !important;
}

.predictive-search {
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  background: #f5f5f5 !important;
}

.predictive-search--header {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: none !important;
  max-height: 70vh !important;
}

#predictive-search-results {
  max-height: none !important;
}

.predictive-search__results-groups-wrapper {
  max-height: none !important;
  max-width: 800px !important;
  margin: 0 auto !important;
}

/* Hide the "PRODUCTS" heading */
.predictive-search__heading {
  display: none !important;
}

/* --- Predictive search results --- */
.predictive-search__item--link-with-thumbnail {
  grid-template-columns: 100px 1fr auto !important;
  grid-column-gap: 2rem !important;
  padding: 1.2rem 2rem !important;
  align-items: center !important;
}

.predictive-search__list-item {
  border-radius: 8px !important;
  overflow: hidden !important;
}

.predictive-search__image {
  width: 100px !important;
  height: auto !important;
  border-radius: 8px !important;
}

.predictive-search__item-heading {
  font-size: 1.8rem !important;
  font-weight: 600 !important;
  margin: 0 0 0.2rem !important;
}

.predictive-search__item-vendor {
  font-size: 1.2rem !important;
  opacity: 0.6;
}

.predictive-search .price {
  font-size: 1.6rem !important;
  font-weight: 700 !important;
  grid-column: 3 !important;
  justify-self: end !important;
  white-space: nowrap !important;
}

/* Hover: orange, no underline */
.predictive-search__item {
  text-decoration: none !important;
}

.predictive-search__item:hover,
.predictive-search__item:hover .predictive-search__item-heading {
  color: #ED8B00 !important;
  text-decoration: none !important;
}
/* Distributors hero — bold + orange caption, tighter gap to heading */
.rich-text__caption {
  color: #ED8B00;
  font-weight: 700;
  margin-bottom: 0.4rem;
}
.rich-text__heading {
  margin-top: 0;
}
/* Leaflet map popup — larger, on-brand label */
.leaflet-popup-content {
  font-size: 2rem;
  font-weight: 600;
  color: #212322;
  margin: 1rem 1.4rem;
}
.leaflet-popup-content-wrapper {
  border-radius: 0.6rem;
}
@media screen and (max-width: 749px) {
  .banner__heading {
    font-size: 3.4rem;
  }
}
@media screen and (max-width: 749px) {
  .banner__box .banner__buttons {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 1rem !important;
  }
  .banner__box .banner__buttons .button {
    width: 100% !important;
  }
}
/* ============================================
   MOBILE FIXES — consolidated July 2026
   Everything below only applies under 750px.
   ============================================ */

@media screen and (max-width: 749px) {

  /* --- Rich text headings: smaller, clean wrapping --- */
  h2.rich-text__heading,
  .rich-text__heading.hxl {
    font-size: 2.8rem !important;
    line-height: 1.15 !important;
  }

  /* --- Button pairs: stack vertically, full width --- */
  .banner__buttons,
  .rich-text__buttons,
  .image-with-text__buttons {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 1rem !important;
    max-width: 100% !important;
  }
  .banner__buttons .button,
  .rich-text__buttons .button,
  .image-with-text__buttons .button {
    width: 100% !important;
  }

  /* --- Homepage audience tiles: swipeable carousel --- */
  .homepage-tiles {
    display: flex !important;
    grid-template-columns: none !important;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 1.2rem;
    scroll-padding-inline: 1.5rem;
    padding-bottom: 0.6rem;
    scrollbar-width: none;
  }
  .homepage-tiles::-webkit-scrollbar {
    display: none;
  }
  .homepage-tiles .homepage-tile {
    flex: 0 0 78vw;
    max-width: 78vw;
    scroll-snap-align: center;
  }
  .homepage-tiles .homepage-tile__image {
    width: 100%;
    height: 440px;
    object-fit: cover;
  }
  /* Why Nuplas rich text buttons — desktop-only row styling
   (moved out of the section's Custom CSS field) */
@media screen and (min-width: 750px) {
  #shopify-section-template--21070292582535__rich_text_KPnyrp .rich-text__buttons {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
  }
  #shopify-section-template--21070292582535__rich_text_KPnyrp .rich-text__buttons .button {
    width: auto !important;
    white-space: nowrap !important;
    padding-left: 32px !important;
    padding-right: 32px !important;
  }
}
/* Force banner secondary button text dark */
.banner__buttons a.button--secondary,
.banner__buttons a.button--secondary:hover,
.banner__buttons a.button--secondary:focus {
  color: #212322 !important;
}
/* "Complete your hive" addon — orange box, white tick */
.nuplas-frames-checkbox {
  -webkit-appearance: none !important;
  appearance: none !important;
  width: 18px !important;
  height: 18px !important;
  border: 1px solid #ED8B00 !important;
  border-radius: 3px !important;
  background-color: #fff !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 14px 14px !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
  margin: 0 !important;
}

.nuplas-frames-checkbox:checked {
  background-color: #ED8B00 !important;
  border-color: #ED8B00 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M3.5 8.5l3 3 6-6'/%3E%3C/svg%3E") !important;
}