/** Shopify CDN: Minification failed

Line 579:0 Unexpected "}"

**/
/* .site-navigation ul{
  gap:90px;
} */
.site-navigation{
  justify-content:center;
}
summary.navmenu-link.navmenu-link-depth-1.navmenu-link-parent , a.navmenu-link.navmenu-link-depth-1{
  font-family:'noto-sans', 'Nunito Sans', Arial, Helvetica, sans-serif;
  font-size:14px;
  line-height:19px;
  font-weight:600;
  color:#000000;
}
summary.navmenu-link.navmenu-link-depth-1.navmenu-link-parent:hover , a.navmenu-link.navmenu-link-depth-1:hover{
color:#BB2121;
}
.small-promo-content_heading{
  color:#000000;
}
.site-header_account-link-text{
  color:#000000;
  font-family:'noto-sans', 'Nunito Sans', Arial, Helvetica, sans-serif;
  font-size:14px;
  line-height:19px;
  font-weight:600;
}
span.site-header-cart-icon.site-header-cart-icon--svg{
  color:#030303;
}
.foot_custom_txt{
  color:#FFFFFF;
  font-family:'noto-sans', 'Nunito Sans', Arial, Helvetica, sans-serif;
  line-height:22px;
}
.site-footer-wrapper{
  background-color:#27295D;
}
.small-promo-content--desktop p{
  color: #27295d;
  font-weight: 600;
  margin: 0;
}
.home-header .site-header-logo{
  flex: auto;
  width: 25%;
}
.home-header .live-search{
  max-width: 50%;
  flex: auto;
}
.home-header .live-search .snize-voice-search-trigger{
  display: none;
}
.home-header .small-promo{
  max-width: 20%;
  width: auto;
  padding-right: 50px;
  position: relative;
}
.home-header .live-search .live-search-form{
  box-shadow: none;
  border: 1px solid #F5F5F5;
}
.home-header .small-promo .detailed_content{
  display: none;
  position: absolute;
  top: 140%;
  left: 0;
  right: 0;
  border: 1px solid #eee;
  box-shadow: 0 3px 10px #eee;
  z-index: 99;
  background: #fff;
  padding: 5px 10px;
  width: max-content;
}
.home-header .small-promo::after{
  content: '';
  position: absolute;
  top: 5px;
  right: 30px;
  bottom: 0;
  width: 8px;
  height: 8px;
  border-left: 2px solid #000;
  border-bottom: 2px solid #000;
  transform: rotate(-45deg);
  margin: auto;
}
.home-header .small-promo:hover .detailed_content{
  display: block;
  align-items: center;
}
.home-header .small-promo:hover .detailed_content .small-promo-content--desktop p{
  font-family:'noto-sans', 'Nunito Sans', Arial, Helvetica, sans-serif;
  font-size:13px;
  line-height:18px;
  font-weight:600;
  color:#000000;
}
.home-header .small-promo:hover .contact_num{
  display:flex;
  align-items:center;
}
.home-header .small-promo:hover .working-hours{
  padding-top:9px;
}
.home-header .small-promo:hover .working-hours img{
  padding-left:5px;
}
.hours_txt{
  padding:7px;
  font-family:'noto-sans', 'Nunito Sans', Arial, Helvetica, sans-serif;
  font-size:13px;
  line-height:18px;
  font-weight:600;
  color:#000000;
}
.home-header .small-promo:hover .working-hours p{
  font-family:'noto-sans', 'Nunito Sans', Arial, Helvetica, sans-serif;
  font-size:12px;
  line-height:17px;
  color:#000000;
  padding-left:25px;
}
.home-header .small-promo .detailed_content .small-promo-icon{
  max-width: 20px;
  height: auto;
}
.home-header .small-promo .detailed_content .small-promo-icon img{
  max-width: 100%;
  height: auto;
}
.home-header .small-promo .detailed_content::before {
  content: '';
  position: absolute;
  top: -5px;
  left: 25px;
  width: 10px;
  height: 10px;
  background: #fff;
  transform: rotate(45deg);
  border-left: 1px solid #eee;
  border-top: 1px solid #eee;
}
.home-footer .site-footer-blocks{
  flex-wrap: wrap;
  justify-content: space-between;
}
.home-footer .site-footer-blocks .site-footer-block-item{
  flex: calc(calc(100% - 340px) / 5)!important;
  margin-right: 0 !important;
}
.home-footer .site-footer-blocks .site-footer-block-item.site-footer-block-newsletter{
  min-width: 340px !important;
}
.home-header .live-search{
  width: 100%;
}
.home-header .live-search .form-field-input{
  background-color: #fff;
  border-color: #F5F5F5;
}
.breadcrumb :is(a, span){
    color: #000;
  }
  .breadcrumb a{
    opacity: 0.75;
  }
.breadcrumb{
  margin: 10px auto !important;
}
.atc--product-image svg, .atc--product-image img{
    max-height: 122.5px;
  }
p.site-footer-credits{
   font-family:'noto-sans', 'Nunito Sans', Arial, Helvetica, sans-serif;
  font-size:13px;
  line-height:18px;
  color:#FFFFFF;
}
.site-footer__row-inner-wrapper-left{
  display: flex;
  align-items: center;
  flex-flow: row-reverse;
  justify-content: left;
}
.site-footer-item--information .navmenu .navmenu-item{
  margin-bottom: 0;
}
@media(max-width: 767px){
  .breadcrumb :is(a, span){
    font-size: 12px !important;
  }
  .small-hide{
    display:none !important;
  }
  .home-header .small-promo {
    max-width: 100%;
    width: 100%;
    padding-right: 50px;
    position: relative;
  }
  .small-promo-content{
    justify-content: space-between;
    width: 100%;
  }
  .home-header .small-promo:after{
    right: auto;
    right: auto;
    left: 120px;
    top: 11px;
  }
  .home-header .small-promo:hover .detailed_content {
    max-width: max-content;
    display: none;
  }
  .home-header .small-promo{
    padding-right: 30px;
  }
  .small-promo-content_heading img {
    vertical-align: sub;
  }
  .home-header .small-promo:hover .detailed_content {
    max-width: -webkit-fit-content;
  }
  .home-header .small-promo:hover .working-hours p{
    padding-left: 0;
  }
  .home-header .live-search{
    max-width: 100%;
  }
  .small-promo-content svg{
    vertical-align: bottom;
  }
  
}
@media(min-width: 768px){
  .site-footer-right{
    display: none;
  }
}


/* qikify menu code */
nav.tmenu_navbar ul.tmenu_nav{
  gap: 50px;
}
.tmenu_navbar .tmenu_item_level_0 .tmenu_item_level_1.tmenu_item_layout_block .tmenu_item_level_2{
  width: calc((100% / 27) - 10px);
  position: unset;
  min-width: 48px;
}
.tmenu_item_submenu_type_mega.tmenu_item_active .tmenu_item_level_1 > .tmenu_submenu{
  justify-content:center;
}
.tmenu_item_level_2 > .tmenu_item_link  > .tmenu_item_text{
  font-size: 22px !important;
  padding: 0 4px;
}
.tmenu_navbar .tmenu_item_level_0 > .tmenu_item_link{
  font-size: 14px !important;
  line-height: 20px;
  font-weight: 700 !important;
  color: #000 !important;
}
.shop_brand_menu.tmenu_item_level_0 > ul.tmenu_submenu{
  padding: 10px 25px !important;
  /* height: 240px !important; */
}
.tmenu_navbar .tmenu_item_level_0 > .tmenu_item_link:hover{
  color: #BB2121 !important;
}
.tmenu_navbar .tmenu_item_level_0 .tmenu_item_level_1.tmenu_item_layout_text{
  border-bottom: 1px solid #EBEBEB;
}
.tmenu_navbar .tmenu_item_level_0 .tmenu_item_level_1.tmenu_item_layout_text > .tmenu_item_link{
  font-size: 16px;
  line-height: 22px;
  font-weight: 700;
  color: #27295D !important;
}
.tmenu_navbar .tmenu_item_level_0 .tmenu_item_level_1.tmenu_item_layout_text > .tmenu_item_link .tmenu_item_text{
  position: relative;
}
.shop_brand_menu.tmenu_item_level_0 .tmenu_item_level_1.tmenu_item_layout_text > .tmenu_item_link .tmenu_item_text::after {
  content: '';
  position: absolute;
  top: 0;
  right: -20px;
  bottom: 0;
  margin: auto;
  width: 8px;
  height: 8px;
  border-top: 1px solid #27295D;
  border-right: 1px solid #27295D;
  transform: rotate(45deg);
}
.shop_by_menu.tmenu_item_level_0 .tmenu_item_level_1.tmenu_item_layout_text > .tmenu_item_link{
  border: none !important;
}
nav.tmenu_navbar .shop_by_menu > .tmenu_submenu{
  flex-direction: column;
  height: 630px !important;
}
.shop_by_menu > .tmenu_submenu > .tmenu_item_level_1{
  width: 20%;
  flex: unset;
  border-bottom: none !important;
  padding-bottom: 0 !important;
}
.tmenu_navbar .tmenu_item_level_0 .tmenu_item_level_1.tmenu_item_layout_block{
  border-bottom: 1px solid #EBEBEB;
  /* position: relative; */
}
/* .tmenu_navbar .tmenu_item_level_0 .tmenu_item_level_1.tmenu_item_layout_block::before{
  content: '';
  background: #EBEBEB;
  width: 100%;
  height: 1px;
  position: absolute;
  top: 60px;
  left: 0;
  display: block !important;
  z-index: 9;
} */
.tmenu_navbar .tmenu_item_level_0 .tmenu_item_level_1.tmenu_item_layout_block .tmenu_item_level_2.tmenu_item_active.tmenu_item_has_child > .tmenu_item_link::before{
  content: '';
  background: #BB2121;
  width: 20px;
  height: 3px;
  position: absolute;
  top: 47px;
  left: 0;
  right: 0;
  margin: auto;
  display: block !important;
  z-index: 9;
}
.tmenu_navbar .tmenu-watermark span, .tmenu_navbar .tmenu-watermark a{
  color: transparent !important;
}
.tmenu_navbar .tmenu_item_level_0 .tmenu_item_level_1.tmenu_item_layout_block .tmenu_item_level_2 > .tmenu_item_link{
  font-size: 20px;
  line-height: 28px;
  font-weight: 700;
  color: #27295D;
  text-align: center;
}
.tmenu_navbar .tmenu_item_level_1.tmenu_item_layout_block .tmenu_item_level_2 .tmenu_submenu{
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 100% !important;
  padding-top: 20px !important;
  min-height: 110px;
  background: #fff !important;
  box-shadow: 0 6px 24px #000;
  padding-left:30px !important;
}
.tmenu_navbar .tmenu_item_level_1.tmenu_item_layout_block .tmenu_item_level_2 .tmenu_submenu > .tmenu_item_level_3{
  max-width: 20%;
}
.tmenu_navbar .tmenu_item_level_1.tmenu_item_layout_block .tmenu_item_level_2 .tmenu_submenu > .tmenu_item_level_3 .tmenu_item_link{
  font-size: 16px;
  line-height: 20px;
  color: #27295D !important;
}
.tmenu_navbar .tmenu_item_level_0 .tmenu_item_level_1.tmenu_item_layout_block .tmenu_item_level_2.tmenu_item_active.tmenu_item_has_child > .tmenu_item_link{
  color: #BB2121;
}
/* .tmenu_navbar .tmenu_item_level_0 .tmenu_item_level_1.tmenu_item_layout_block .tmenu_item_level_2.tmenu_item_has_child>.tmenu_item_link::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -10px;
  width: 100%;
  height: 2px;
  background: #BB2121;
} */
li.tmenu_item_level_2 > ul.tmenu_submenu{
  display: none !important;
}
li.tmenu_item_active.tmenu_item_level_2 > ul.tmenu_submenu, li.tmenu_item_active.tmenu_item_level_2 > ul.tmenu_submenu:hover{
  display: block !important;
}

.productitem--actions{
  /* position: unset !important; */
  visibility: visible !important;
  opacity: 1 !important;
  margin: 0;
  flex-wrap: nowrap;
}
.productitem{padding-bottom: 60px;}
.productitem[data-animation="closed=>open"], .productitem[data-animation-state=open]{height: unset !important;}

.shop_by_menu .tmenu_item_level_2 > .tmenu_item_link > .tmenu_item_text{
  font-family:'noto-sans', 'Nunito Sans', Arial, Helvetica, sans-serif !important;
  font-size:14px !important;
  line-height:26px !important;
  color:#090909 !important;
}
#site-header-nav .tmenu_nav .shop_by_menu{
    position: unset;
}
/* qikify menu code ends */

/* Default menu customization */
#site-header-nav nav.site-navigation{
  margin: 0;
  padding: 0;
  width: 100%;
  min-width: 100%;
}
#site-header-nav .site-navigation ul {
  gap: 50px;
  min-height: 50px;
  height: 50px;
  align-content: center;
  margin:0;
}

#site-header-nav .site-navigation .navmenu-item summary,
#site-header-nav .site-navigation .navmenu-item a {
  text-transform: capitalize;
  font-size: 14px !important;
  line-height: 20px;
  font-weight: 700 !important;
  color: #000 !important;
  padding: 0 !important;
  padding-left: 10px !important;
  padding-right: 10px !important;
  font-family: 'Nunito Sans' !important;
}
#site-header-nav .tmenu_nav .tmenu_submenu .tmenu_item_level_2 .tmenu_item_link{
  padding: 0 !important;
}

/*
 * First-paint parity with the Freeport mega-menu app embed.
 *
 * That app embed injects this exact rule from a <style> tag that is the
 * second-to-last element in <body> (Shopify renders app-embed blocks through
 * content_for_footer). Its selector is more specific than the 14px rule above,
 * so the top-level menu used to paint at 14px for the whole body parse and then
 * jump to 18px. Declaring it here puts the final value in the render-blocking
 * stylesheet; the app's copy still lands last and sets the same value.
 *
 * Only depth-1 items are targeted (child combinators), so submenu links keep
 * the 14px above. Keep in sync with the app block's "Main menu font size".
 */
#site-header-nav .site-navigation > ul.navmenu-depth-1 > li > a,
#site-header-nav .site-navigation > ul.navmenu-depth-1 > li > details > summary,
#site-header-nav .site-navigation > ul.navmenu-depth-1 > li > .fmm-trigger {
  font-size: 18px !important;
}
/* Default menu customization end*/

@media (max-width: 1240px){
  #site-header-nav .tmenu_nav .tmenu_item_level_0.shop_by_menu .tmenu_submenu{
    max-width: 96% !important;
  }
}

/* CSS for Pagespeed */
.fms-pagespeed-cls #ShopifyChat {
  display: none;
}
#ShopifyChat {
  position: fixed;
  bottom: 16px;
  z-index: 2147483646;
  right: 16px;
}

#ShopifyChat button.chat-toggle {
  border: 1px solid transparent;
  border-radius: 30px;
  cursor: pointer;
  display: flex;
  height: 60px;
  margin: 0 6px;
  width: 60px;
}

#ShopifyChat button.chat-toggle.chat-toggle--icon-button.icon-only svg, button.chat-toggle.chat-toggle--icon-button.mobile-only svg {
  height: 58px;  
}

.circle-timer {
  display:none;
}
.slideshow[data-autoplay=true]:not([data-flickity-paused]) .slideshow-pagination__button[data-selected=true] {
  background-color: var(--slide-text-color) !important;  
}

.template-index .home-section--content.collection-list__content {
  height: 20% !important;
}
@media screen and (max-width:480px) {
  .site-logo-image {
    height: auto;
  }  
}
.home-header .small-promo.active:after {
  transform: rotate(135deg);
  transition: all 300ms;

}
@media screen and (max-width:768px) {
  .small-promo-content--desktop.fms-contact{
    max-height: 18px;
    height: 17px;
    line-height: 17px !important;
    width: auto !important;
  }
  .small-promo-content--desktop.fms-contact p{
    line-height: 17px !important;
  }
}

@media screen and (max-width:720px) {
  .site-footer-block-item .site-footer-block-content .navmenu-depth-1 {
    display:none;
  }
}

@media screen and (max-width: 1024px) {
  .template-index .highlights-banner__content {
    height: 210px;
    min-height: 210px;
  }
}

@media screen and (min-width: 1024px) {
  .site-header-main {
    height: auto;
    min-height: 0;
    padding-top: 12px !important;
    padding-bottom: 6px !important;
  }
}
  
  .home-header .small-promo {
    min-width: 184.422px !important;
  }
/* CSS for Pagespeed end*/
/*04.10.24*/
.product-variant-upc--empty,
.product-variant-dimensions--empty,
.product-variant-weight--empty {
  display: none!important;
}
.product-block--variant_upc:not(:has(.product-variant-upc--empty)),
.product-block--variant_weight:not(:has(.product-variant-weight--empty)),
.product-block--variant_dimensions:not(:has(.product-variant-dimensions--empty)) {
  margin-bottom: 16px;
}
.tab-radio:checked + .tab-label + .tab-panel.with-variant-weight {
  display: flex;
  flex-direction: column;
}
.tab-panel.with-variant-weight p:has(+ .product-block--variant_weight) {
  order: 1;
  margin: 0;
}
.additional-checkout-buttons {
  margin-top: 18px !important;
  padding-top: 12px;
  border-top: 1px solid #d8e0e8;
}
}
.breadcrumbs-custom {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  font-size: 14px;
  color: #555;
  max-width: 1400px;
  margin:10px auto;
}
.breadcrumbs-custom span.separ {
  display: inline-block;
  margin: 0 3px;
}
.breadcrumbs-custom span.last-crumb {
  display: inline-block;
  color: #000;
  margin: 10px 0;
  white-space: nowrap;
}
.breadcrumbs-custom a {
  text-decoration: none;
  color: #555;
  margin: 10px 0;
  padding-left: 5px;
  white-space: nowrap;
  opacity: 0.75;
}
@media only screen and (max-width: 767px) {
    .breadcrumbs-custom {
        margin: 3px 0;
        padding-left: 5px;
    }
}
.shop_by_menu li.tmenu_item_level_2 > ul.tmenu_submenu {
  display: block !important;
  padding-left: 4px !important;
}

.shop_by_menu .tmenu_item_level_3 {
  font-size: 12px !important;
}

.tooltip-container {
  position: relative;
  display: inline-block;
  cursor: pointer;
  margin-left: 10px;
}

.tooltip-container .tooltip-text {
  visibility: hidden;
  width: 370px;
  background-color: #fff;
  color: #333;
  text-align: left;
  padding: 10px;
  border-radius: 4px;
  border: 1px solid #ccc;
  box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.1);
  position: absolute;
  left: 133%;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  transition: opacity 0.3s;
  z-index: 1;
}

.tooltip-container .tooltip-text::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -10px;
  transform: translateY(-50%);
  border-width: 6px;
  border-style: solid;
  border-color: transparent #ccc transparent transparent;
}

.tooltip-container .tooltip-text::after {
  content: "";
  position: absolute;
  top: 50%;
  left: -8px;
  transform: translateY(-50%);
  border-width: 6px;
  border-style: solid;
  border-color: transparent #fff transparent transparent;
}

.tooltip-container:hover .tooltip-text {
  visibility: visible;
  opacity: 1;
}
.tooltip-container img {
  display: block;
  width: 20px;
  height: 20px;
  object-fit: contain;
}
.modal-content .tooltip-text {
  left: 50%;
  top: auto;
  bottom: -110px;
  transform: translateY(-50%) translateX(-50%);
}
.modal-content .tooltip-container .tooltip-text:before {
  top: -12px;
    left: 50%;
    transform: translateX(-50%) rotate(90deg);
    border-width: 6px;
}
.modal-content .tooltip-container .tooltip-text:after {
  top: -10px;
  left: 50%;
  transform: translateX(-50%) rotate(90deg);
  border-width: 5px;
}
@media screen and (max-width: 1320px) {
  
  .tooltip-container .tooltip-text {
    width: 270px;
  }
  .modal-content .tooltip-container:hover .tooltip-text {
    width: 370px;
  }
}
@media screen and (max-width: 1110px) {
  
  .tooltip-container .tooltip-text {
    width: 200px;
    padding: 7px;
  }
  .modal-content .tooltip-container:hover .tooltip-text {
    width: 370px;
    bottom: -100px;
  }
}
@media screen and (max-width: 950px) {
  .tooltip-container {
    margin-left: 5px;
  }
  .tooltip-container .tooltip-text {
    width: 110px;
    
  }
  .modal-content .tooltip-container:hover .tooltip-text {
    width: 370px;
  }
}
@media screen and (max-width: 720px) {
  
  .tooltip-container .tooltip-text {
    width: 200px;
  }
  .modal-content .tooltip-container:hover .tooltip-text {
    width: 370px;
  }
}
@media screen and (max-width: 420px) {
  
  .tooltip-container .tooltip-text {
    width: 150px;
    font-size: 10px;
  }
  .modal-content .tooltip-container:hover .tooltip-text {
    width: 220px;
    bottom: -120px;
  }
}
@media screen and (max-width: 767px) {
  html,
  body {
    overflow-x: hidden;
  }

  .home-footer .site-footer-blocks .site-footer-block-item,
  .home-footer .site-footer-blocks .site-footer-block-item.site-footer-block-newsletter {
    flex: 0 0 100% !important;
    min-width: 0 !important;
    width: 100% !important;
  }

  .tooltip-container .tooltip-text {
    left: 50%;
    right: auto;
    max-width: calc(100vw - 24px);
    transform: translate(-50%, -50%);
  }
}
/* ----------------------------------------------------
   1. GLOBAL HEADER COMPACTION & MAIN MENU FONT
---------------------------------------------------- */
@media screen and (min-width: 1024px) {
  .site-header-main {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .site-navigation-wrapper {
    margin-top: 0 !important;
  }
  /* Force main menu font size and reduce vertical padding */
  .site-navigation .navmenu-link-depth-1,
  .site-navigation .navmenu-depth-1 > .navmenu-item > .navmenu-link {
    font-size: 18px !important; /* Adjust this number to your preference */
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }
}

/* ----------------------------------------------------
   3. SUBSTITUTE PRODUCTS WIDGET (VERTICAL SCROLL)
---------------------------------------------------- */
.product-substitutes-container:empty {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

.variant-substitutes {
  margin: 0.3125rem 0 0.9375rem;
  padding-top: 0.375rem;
  border-top: 1px solid var(--color-border, #e1e1e1);
}

.substitutes-heading {
  font-size: 1.1em;
  margin: 0 0 8px;
  color: var(--color-headings);
  font-weight: 700;
}

.substitutes-scroll-list {
  display: flex;
  flex-direction: column; /* Stacks vertically */
  gap: 10px;
  overflow-y: auto; /* Enables vertical scroll */
  overflow-x: hidden;
  max-height: 235px !important; /* Forces the 2.5 card peek */
  padding-right: 5px; 
}

.substitutes-scroll-list::-webkit-scrollbar {
  width: 4px;
}
.substitutes-scroll-list::-webkit-scrollbar-thumb {
  background-color: #ccc;
  border-radius: 4px;
}

.substitute-card {
  flex: 0 0 auto;
  display: flex;
  flex-direction: row; /* Image left, text right */
  align-items: center;
  gap: 12px;
  border: 1px solid var(--color-border, #e1e1e1);
  border-radius: 6px;
  padding: 8px 10px;
  text-decoration: none;
  background: #fff;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.substitute-card:hover {
  border-color: #27295d; 
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.substitute-img-wrapper {
  width: 65px;
  height: 65px;
  flex-shrink: 0;
  background: #f4f4f4;
  border-radius: 4px;
  overflow: hidden;
}

.substitute-img-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.substitute-details {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: 12px;
  row-gap: 2px;
  align-items: center;
  flex-grow: 1;
  min-width: 0;
}

.substitute-title {
  grid-column: 1;
  font-weight: 600;
  font-size: 0.85em;
  line-height: 1.2;
  color: var(--color-text);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal; 
}

.substitute-price {
  grid-column: 1;
  font-weight: 700;
  font-size: 0.9em;
  color: var(--color-headings);
}

.substitute-qty {
  grid-column: 1;
  font-size: 0.75em;
  color: #77ab4c; 
  font-weight: 600;
}

.substitute-qty--available-for-order {
  color: #27295d;
}

.substitute-qty--out-of-stock {
  color: #cc1313;
}

.substitute-atc-form {
  grid-column: 2;
  grid-row: 1 / span 3;
  align-self: center;
  justify-self: end;
  margin: 0;
}

.substitute-atc-btn {
  min-height: 34px;
  padding: 7px 12px;
  border-color: #27295d;
  border-radius: 8px;
  background-color: #27295d;
  color: #fff;
  font-size: 0.75em;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

.substitute-atc-btn:not(.disabled):hover,
.substitute-atc-btn:focus {
  border-color: rgb(82, 84, 125);
  background-color: rgb(82, 84, 125);
}

.substitute-fallback {
  font-size: 0.85em;
  padding: 10px;
  background: #f9f9f9;
  border-radius: 4px;
  border: 1px dashed #ccc;
  width: 100%;
}

@media screen and (max-width: 480px) {
  .substitute-details {
    grid-template-columns: 1fr;
  }

  .substitute-atc-form {
    grid-column: 1;
    grid-row: auto;
    justify-self: start;
    margin-top: 4px;
  }
}
@media screen and (min-width: 1024px) {
  #site-header-nav .site-navigation > ul.navmenu-depth-1 {
    min-height: 42px;
    height: 42px;
  }

  .home-section--title {
    margin-top: 2.25rem;
    margin-bottom: 1rem;
  }

  .home-section--content {
    margin-top: 1rem;
  }

  .section--canonical {
    margin-top: 2.25rem;
  }
}

@media screen and (min-width: 720px) {
  .collection--section,
  .product__container {
    margin-top: 1rem;
  }
}
/* Reduce space between site sections */
@media screen and (min-width: 720px) {
  .home-section--title {
    margin-top: 28px !important;
    margin-bottom: 12px !important;
  }

  .home-section--content {
    margin-top: 12px !important;
  }

  .section--canonical {
    margin-top: 28px !important;
  }

  .collection--section,
  .product__container {
    margin-top: 12px !important;
  }

  .product-section--container,
  .product-row--container {
    margin-top: 28px !important;
  }
}

/* Keep mobile spacing compact but readable */
@media screen and (max-width: 719px) {
  .home-section--title,
  .section--canonical {
    margin-top: 22px !important;
    margin-bottom: 10px !important;
  }

  .home-section--content,
  .collection--section,
  .product__container {
    margin-top: 10px !important;
  }
}
.dynamic-checkout-cart {
  display: block !important;
  clear: both !important;
  margin-top: 22px !important;
  padding-top: 18px !important;
  border-top: 1px solid #d8e0e8 !important;
}

.dynamic-checkout-cart h2 {
  margin: 0 0 12px !important;
}