/** Shopify CDN: Minification failed

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

**/
@media screen and (min-width: 990px) {
  .utility-bar__grid--3-col {
    grid-template-columns: 3fr 1fr 3fr;
    grid-template-areas: "announcements language-currency social-icons";
  }
}

.utility-bar__grid .list-social {
  justify-content: flex-end;
}

.custom-collection .collection__title h2.title {
  color: #0077c0;
  font-weight: 600;
  font-size: 2.4rem;
}

.dog_size_value {
  padding-left: 3px;
  color: #58595b;
}

.card__content.prd-card-cc .card__information {
  grid-row-start: 1;
  padding-bottom: 0;
}

.dog_size_field {
  color: #231f20;
  font-weight: bold;
  line-height: 1.25;
}

.card__content.prd-card-cc .card__information .card-information .price {
  margin-top: 0 !important;
}

.card__content.prd-card-cc .quick-add {
  margin-top: 1rem;
}

.quick-add__submit.button::after {
  box-shadow: none;
}

.quick-add__submit.button {
  border: 2px solid #0077c0;
  color: #0077c0;
  text-transform: uppercase;
  transition: 250ms all ease-in-out;
}

.newsletter-form.newsletter-custom
  .newsletter-form__field-wrapper
  .field__input {
  color: #000000;
  background-color: #ffffff;
  border-radius: 50px;
}

.newsletter-form.newsletter-custom
  .newsletter-form__field-wrapper
  .field::after {
  box-shadow: none;
  border: none;
}

.newsletter-form.newsletter-custom
  .newsletter-form__field-wrapper
  .field__label {
  color: #868789;
}

.newsletter-form.newsletter-custom .newsletter-form__button {
  background-color: #0077c0 !important;
  border-radius: 50%;
  width: 50px;
}

.newsletter-form.newsletter-custom .newsletter-form__button .svg-wrapper {
  fill: #a7d600;
  color: #a7d600;
}

@media screen and (min-width: 750px) {
  .newsletter-form.newsletter-custom {
    max-width: 64rem;
  }

  .newsletter__wrapper
    .newsletter-form.newsletter-custom
    .newsletter-form__field-wrapper {
    max-width: 100%;
  }

  .slideshow__controls.slider-buttons {
    position: absolute;
  }
}

.slideshow__controls.slider-buttons {
  top: 100%;
  transform: translate(-50%, -100%);
  left: 50%;
  border: 0;
}

.slideshow__controls.slider-buttons .dot {
  background-color: #d9d9d9;
  border: 0.1rem solid #d9d9d9;
}

.slideshow__controls.slider-buttons .slider-counter__link--active .dot {
  background-color: #a7d600;
  border: 0.1rem solid #a7d600;
}

.layout-switcher {
  text-align: left;
}

.layout-switcher__button {
  background: none;
  margin-left: 0.4em;
  cursor: pointer;
}

img.layout-switcher__button {
  max-width: 16px;
  object-fit: contain;
  cursor: pointer;
}

.layout-switcher__button.is-active {
  border-color: #000;
  font-weight: bold;
}

#product-grid {
  transition: grid-template-columns 0.4s ease-in-out, opacity 0.2s ease-in-out;
}

.real-quick:hover {
  color: #ffffff;
  background-color: #a7d600;
  border: 2px solid #a7d600;
}

.product-card-wrapper .card__inner.prd-card-images {
  border: none;
  border-radius: 4px;
  box-shadow: none;
  border: #0077c0 0.12rem solid;
}

.card__badge .badge {
  border-radius: 4px;
  background-color: #ffffff;
  color: #0077c0;
  border: 1px solid #0077c0;
}

.separator {
  height: 2px;
  width: 320px;
  display: block !important;
  background-color: #a7d600;
}

.facets__heading.facets__heading--vertical {
  text-transform: uppercase;
  color: #0077c0;
  font-weight: 700;
}

.facets__summary-label {
  text-transform: uppercase;
  color: #0077c0;
  font-weight: 500;
}

@media screen and (min-width: 750px) {
  .facets__disclosure-vertical {
    border-top: none !important;
    border-bottom: 0.1rem solid #a7d600;
  }
}

.facets__summary.caption-large.focus-offset > div > span {
  text-transform: uppercase;
  color: #0077c0;
  font-weight: 500;
}

.facets__summary > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.globo-color-swatch--watermarks {
  display: none !important;
}

.product__text {
  color: #0077c0;
}

.product-form__submit.buy-button--primary {
  background-color: #a7d600;
  color: #ffffff;
  text-transform: uppercase;
  font-weight: 600;
}

.product-form__submit.buy-button--primary:after {
  box-shadow: 0 0 0 0.1rem #a7d600;
}

.product-form__submit.buy-button--primary:hover {
  box-shadow: 0 0 0 0.1rem #a7d600;
}

@media screen and (min-width: 990px) {
  .product--medium:not(.product--no-media) .product__info-wrapper,
  .product--small:not(.product--no-media) .product__media-wrapper {
    max-width: calc(
      50% - var(--grid-desktop-horizontal-spacing) / 2
    ) !important;
  }
}

@media screen and (min-width: 990px) {
  .product--medium:not(.product--no-media) .product__media-wrapper,
  .product--small:not(.product--no-media) .product__info-wrapper {
    max-width: calc(
      50% - var(--grid-desktop-horizontal-spacing) / 2
    ) !important;
  }
}

.product.grid {
  column-gap: var(--grid-desktop-horizontal-spacing) !important;
  row-gap: var(--grid-desktop-vertical-spacing) !important;
}

.product__info-wrapper {
  background-color: #ffffff;
}

@media screen and (min-width: 750px) {
  .product__info-wrapper {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
    border-radius: 8px !important;
  }
}

.sg-hotspot-wrapper {
  display: flex;
  flex-direction: column;
}

.sg_banner {
  width: 100%;
}

.hp-item {
  width: 32px;
  object-fit: contain;
}

.product-popup-modal__opener {
  margin: 0 !important;
}

.product-popup-modal {
  background-color: rgb(0 0 0 / 75%) !important;
}

.product-popup-modal__content-info {
  padding-right: 0 !important;
}

.product-popup-modal__content {
  border-radius: 8px !important;
  overflow: hidden !important;
}

.badge.custom-location-sb {
  margin: 0;
  color: #0077c0;
  background-color: #ffffff;
  box-shadow: 0 0 0 0.1rem #0077c0;
}

.page-width,
.page-width.page-width-desktop {
  max-width: 100%;
}

.rte {
  line-height: normal;
}

.price-item.price-item--sale {
  /* font-size: 3.2rem; */
  font-weight: 600;
}

.scroll-trigger.animate--slide-in {
  transform: translateY(5rem);
}
.scroll-trigger:not(.scroll-trigger--offscreen).animate--slide-in {
  animation-delay: calc(var(--animation-order) * 150ms);
}

@media screen and (min-width: 990px) {
  .header--top-left,
  .header--middle-left:not(.header--has-menu) {
    grid-template-columns: 1fr 3fr 1fr !important;
  }
}

.swiper-wrapper {
  transition-timing-function: linear !important;
}

.newsletter-form__button.newsletter-custom-button {
  position: static;
  width: 45px;
  height: 45px;
  border-radius: 50%;
}

.newsletter-sep {
  display: flex;
  gap: 6px;
}

.hover-light {
  transition: 200ms all ease-in-out;
}

.hover-light:hover {
  opacity: 0.9;
}

.cf-social-links .list-social {
  justify-content: flex-start;
}

@media screen and (max-width: 749px) {
  .slideshow__text.banner__box .banner__heading {
    color: #000000;
  }
  .slideshow__controls.slider-buttons {
    transform: none;
  }
}

.card__content.prd-card-cc {
  gap: 8px;
}

.card__content.prd-card-cc .card__information {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.card__content.prd-card-cc .swatches-globo--list .swatches-globo {
  margin-bottom: 0;
}

.card__content.prd-card-cc .prd-metafields {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.card-information .price-item.price-item--sale {
  font-weight: 400;
}

.card__content.prd-card-cc .prd-metafields .dog_size_field .dog_size_value {
  font-weight: 400;
}

.shopify-policy__container {
  max-width: var(--page-width);
  margin-bottom: 48px;
}

@media screen and (min-width: 750px) {
  .shopify-policy__container {
    padding: 0 5rem;
  }
}

.announcement-bar-slider button {
  display: none;
}

@media screen and (min-width: 750px) {
  .announcement-bar-slider {
    padding-top: 8px;
    padding-bottom: 8px;
  }
}

.announcement-bar__message.h5 {
  text-transform: uppercase;
  font-size: 1.6rem;
}

.search-bar.small-hide .field__input:focus ~ .field__label {
  display: none;
}

.search__button.customise-search {
  position: static;
  border-radius: 50%;
  width: 50px;
}

.search.search-modal__form .field {
  gap: 6px;
}

.product-form__buttons {
  max-width: 44rem;
}

/* Base state for slideshow images */
.slideshow__slide .slideshow__media img {
  transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94),
    opacity 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transform-origin: center center;
  will-change: transform, opacity;
}

/* Default state - slightly smaller and less opaque */
.slideshow__slide:not(.slider__slide--visible) .slideshow__media img {
  transform: scale(0.95);
  opacity: 0.7;
}

/* Active/visible slide - full size and opacity with animation */
.slideshow__slide.slider__slide--visible .slideshow__media img,
.slideshow__slide:nth-child(1) .slideshow__media img {
  transform: scale(1);
  opacity: 1;
}

.slideshow__slide .slideshow__media {
  overflow: hidden; /* Ensure zoom doesn't break layout */
}

/* Zoom-in animation when slide becomes active */
@keyframes slideImageZoomIn {
  0% {
    transform: scale(1.2);
    opacity: 0.2;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

@keyframes slideImagePopIn {
  0% {
    transform: scale(0.85) translateY(10px);
    opacity: 0.7;
  }
  50% {
    transform: scale(1.02) translateY(-2px);
    opacity: 0.95;
  }
  100% {
    transform: scale(1) translateY(0);
    opacity: 1;
  }
}

.slideshow__slide:nth-child(1) .slideshow__media img,
.slideshow .slider__slide[aria-hidden="false"] .slideshow__media img {
  animation: slideImageZoomIn 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}

/* Respect reduced motion preferences */
@media (prefers-reduced-motion: reduce) {
  .slideshow__slide .slideshow__media img {
    transition: none !important;
    animation: none !important;
    transform: none !important;
    opacity: 1 !important;
  }
}

.page-width.page-width-fix {
  max-width: 192rem;
}

.page-width-fix .product-form__buttons {
  max-width: 100%;
}

@media screen and (min-width: 750px) {
  .page-width-fix .product__info-container {
    max-width: 100%;
  }
}

@media screen and (min-width: 750px) {
  .page-width-fix .product__info-wrapper--extra-padding {
    padding: 0 4rem;
  }
}

.facets__summary {
  position: relative;
  perspective: 1000px;
}

.facets__summary-icon {
  transform-style: preserve-3d;
  backface-visibility: hidden;
}

.predictive-search__item-heading,
.predictive-search__item-query-result .predictive-search__item-heading mark {
  color: #000000;
}

.predictive-search__item-query-result
  .predictive-search__item-heading:hover
  mark {
  color: #000000 !important;
}

.predictive-search__heading {
  color: #000000 !important;
  border-bottom: 1px solid #000000 !important;
}

.predictive-search__item-content .price span {
  color: #000000;
}

.predictive-search__item-content:hover .price span {
  color: #ffffff !important;
}

.predictive-search.predictive-search--header {
  border: none;
  background-color: #ffffff;
  border-radius: 8px;
}

.predictive-search__list-item {
  transition: 200ms all ease-in-out;
}

.predictive-search__list-item:hover a {
  text-decoration: none;
  color: #ffffff;
}

.predictive-search__list-item:hover {
  background-color: #0077c0;
}

#predictive-search-option-search-keywords {
  border-top: #000000 1px solid;
}

.card--card:after,
.card--standard .card__inner:after {
  background-color: #ffffff;
}

.klaviyo_form_trigger {
  position: fixed;
  z-index: 3;
  top: 75%;
  left: -60px;
  transform: translateY(-50%) rotate(90deg);
  background-color: #0077c0;
  border: none;
  color: #fff;
  padding: 16px 24px;
  font-weight: 600;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  cursor: pointer;
  /* Add smooth transitions */
  opacity: 1;
  visibility: visible;
  transition: opacity 0.4s ease-in-out, visibility 0.4s ease-in-out, transform 0.4s ease-in-out;
}

/* Hidden state */
.klaviyo_form_trigger.hidden {
  opacity: 0;
  visibility: hidden;
  transform: translateY(-50%) rotate(90deg) translateX(-20px);
}

.predictive-search__item-content .predictive-search__item-query-result mark {
  color: #000;
}

@media screen and (max-width: 749px) {
  .list-payment {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 749px) {
  .swatches-globo .swatch--gl li .swatch-anchor.globo-style--button {
    padding: 2px 10px !important;
    font-size: 12px !important;
  }
  .cflc-up {
    flex-wrap: wrap;
  }
  .product__info-container {
    padding: 16px;
  }
}


.custom-collection .slider-mobile-gutter.page-width-desktop {
  max-width: 100%;
}

/* Klaviyo trigger close icon styles */
.klaviyo_close_icon {
  position: absolute;
  top: -8px;
  right: -8px;
  width: 20px;
  height: 20px;
  background-color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
  transition: all 0.2s ease-in-out;
  z-index: 1;
}

.klaviyo_close_icon:hover {
  transform: scale(1.1);
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
}

.klaviyo_close_icon svg {
  width: 12px;
  height: 12px;
}

/* Update the main button to have relative positioning */
.klaviyo_form_trigger {
  position: fixed;
  z-index: 3;
  top: 75%;
  left: -60px;
  transform: translateY(-50%) rotate(90deg);
  background-color: #0077c0;
  border: none;
  color: #fff;
  padding: 16px 24px;
  font-weight: 600;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  cursor: pointer;
  /* Add relative positioning for the close icon */
  position: relative;
  /* Add smooth transitions */
  opacity: 1;
  visibility: visible;
  transition: opacity 0.4s ease-in-out, visibility 0.4s ease-in-out, transform 0.4s ease-in-out;
}

/* Fix the positioning for the button itself */
.klaviyo_form_trigger {
  position: fixed !important;
}


/* Default state - show closed icon, hide open icon */
.facets__summary-icon--closed {
  display: flex;
}

.facets__summary-icon--open {
  display: none;
}

/* When details is open, show open icon and hide closed icon */
details[open] > .facets__summary .facets__summary-icon--closed {
  display: none;
}

details[open] > .facets__summary .facets__summary-icon--open {
  display: flex;
}

.facets__label.active .facet-checkbox__text {
  font-weight: 600;
}

@media screen and (max-width:749px) {
  .layout-switcher.page-width {
    display: none;
  }

  /* Mobile-Only Search Icon Styling */
@media screen and (max-width: 989px) {
  /* 1. Force the parent container to group everything tightly to the right */
  .header__icons {
    display: flex !important;
    flex-direction: row !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 0 !important; /* Adjust this to 5px if they are TOO close */
  }

  /* 2. Strip the search-bar container so it doesn't take up a whole row */
  .header__icons .search-bar {
    display: inline-flex !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }

  /* 3. Hide the bulky bar elements */
  .header__icons .search-bar .field__input, 
  .header__icons .search-bar .field__label,
  .header__icons .search-bar .field:before, 
  .header__icons .search-bar .field:after {
    display: none !important;
  }

  /* 4. Style the button to match your other white header icons */
  .header__icons .search-bar .search__button.customise-search {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    width: 44px !important;
    height: 44px !important;
    display: flex !important;
    justify-content: center;
    align-items: center;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* 5. Icon color and size */
  .header__icons .search-bar .search__button.customise-search svg {
    color: #ffffff !important;
    fill: #ffffff !important;
    width: 20px !important;
    height: 20px !important;
  }
}

@media screen and (max-width: 989px) {
  /* 1. Prevent the icon container from expanding when the bar opens */
  .header__icons {
    position: static !important; /* Forces the dropdown to align to the whole header, not the icons */
  }

  /* 2. Style the dropdown to float over the content without pushing the page */
  .header__icons .search-bar.is-active .field__input {
    display: block !important;
    position: absolute !important;
    
    /* Center the bar perfectly */
    top: 80px;           /* Adjust so it sits just below the blue header */
    left: 50% !important;
    transform: translateX(-50%) !important; /* Perfectly centers it regardless of width */
    
    width: 90vw !important;
    max-width: 400px;    /* Keeps it from getting too huge on tablets */
    box-sizing: border-box !important; /* Essential to prevent the 90vw + padding from shifting the page */
    
    background: white !important;
    color: #333 !important;
    border-radius: 25px !important;
    padding: 12px 20px !important;
    border: 1px solid #ddd !important;
    box-shadow: 0 10px 25px rgba(0,0,0,0.2);
    z-index: 9999;
  }

  /* 3. Hide any extra containers that might be adding ghost width */
  .header__icons .search-bar.is-active .field {
    position: static !important;
  }
}