@charset "UTF-8";

*{min-height: 0; min-width: 0}img{max-width: 100%; height: auto; font-style: italic; background-repeat: no-repeat; background-size: cover; shape-margin: .75rem}img.alignright{float:right;margin:0 0 1em 1em}img.alignleft{float:left;margin:0 1em 1em 0}img.aligncenter{display:block;margin-left:auto;margin-right:auto}.alignright{float:right}.alignleft{float:left}.aligncenter{display:block;margin-left:auto;margin-right:auto}a, button, input, textarea, select{outline: none!important}*:focus{outline:none!important}.row:before, .row:after {width:0px; height:0px}input::-webkit-outer-spin-button, input::-webkit-inner-spin-button{-webkit-appearance: none; margin: 0}input[type=number]{-moz-appearance: textfield}svg{height:auto}

#wrapper{padding-top: var(--ama-header-height); background-color: var(--ama-wrapper-bg)}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {-webkit-appearance: none; appearance: none}

* + br,
br + *{margin-top: 0!important}

a.skip-main {
   color: #fff;
   background-color:#000;
   left:-999px;
   position: absolute;
   top: auto;
   width: 1px;
   height: 1px;
   overflow: hidden;
   z-index: -1040;
}
a.skip-main:focus,
a.skip-main:active{
   left: auto;
   top: auto;
   width: 30%;
   height: auto;
   overflow: auto;
   margin: 10px 35%;
   padding: 5px;
   border-radius: 0;
   border: 2px solid yellow;
   text-align: center;
   font-size: 1em;
   z-index: 1040;
}

/* =============================================================================
   animated close icon
   ========================================================================== */
.remove, .btn-close{position: relative; display: block; overflow: hidden; text-decoration: none}
   .remove::before, .remove::after,
   .btn-close::before, .btn-close::after{content: ''; display: block; width: 12px; height: 2px; position: absolute; top: calc(50% - 1px); left: calc(50% - 6px); background-color: currentColor; transition: background-color .2s ease-in-out, transform .2s ease-in-out, width .2s ease-in-out}
   .remove::before, .btn-close::before{transform: rotate(45deg)}
   .remove::after, .btn-close::after{transform: rotate(-45deg)}
   .remove:hover::before, .remove:hover::after,
   .btn-close:hover::before, .btn-close:hover::after,
   .selected-filters button:hover .remove::before,
   .selected-filters button:hover .remove::after{transform: rotate(0)}

/* =============================================================================
   wpml
   ========================================================================== */
.wpml-ls{font-size: 1.1875rem; line-height: 1.5em}
.wpml-ls ul{list-style: none; padding: 0}
   .wpml-ls li{position: relative}
      .wpml-ls a{display: flex; align-items: center; text-decoration: none!important; font-weight: 400}
      .wpml-ls a > * + *{margin-left: .625rem}
      .wpml-ls .wpml-ls-item-toggle{min-height: 3.125rem; padding: 0}
         .wpml-ls .wpml-ls-item-toggle::after{
            content: '';
            display: block;
            width: .75rem;
            height: 1rem;
            background: currentColor;
            margin-left: .625rem;
            mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMyIgaGVpZ2h0PSIxNyIgdmlld0JveD0iMCAwIDEzIDE3Ij48cGF0aCBkPSJNNS4xLDE2di0uODg5QTQuMzM2LDQuMzM2LDAsMCwwLC45LDEwLjk2OUgwVjkuMTkxSC45YTYuMDMxLDYuMDMxLDAsMCwxLDQuMiwxLjc3N1YwSDYuOVYxMC45NjhhNi4wMjgsNi4wMjgsMCwwLDEsNC4yLTEuNzc3SDEydjEuNzc4aC0uOWE0LjMzNSw0LjMzNSwwLDAsMC00LjIsNC4xNDJWMTZaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjUgMC41KSIgZmlsbD0iIzBlMGUwZSIgc3Ryb2tlPSJyZ2JhKDAsMCwwLDApIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHN0cm9rZS13aWR0aD0iMSIvPjwvc3ZnPg==") center no-repeat;
            mask-size: 100% auto;
            -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMyIgaGVpZ2h0PSIxNyIgdmlld0JveD0iMCAwIDEzIDE3Ij48cGF0aCBkPSJNNS4xLDE2di0uODg5QTQuMzM2LDQuMzM2LDAsMCwwLC45LDEwLjk2OUgwVjkuMTkxSC45YTYuMDMxLDYuMDMxLDAsMCwxLDQuMiwxLjc3N1YwSDYuOVYxMC45NjhhNi4wMjgsNi4wMjgsMCwwLDEsNC4yLTEuNzc3SDEydjEuNzc4aC0uOWE0LjMzNSw0LjMzNSwwLDAsMC00LjIsNC4xNDJWMTZaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjUgMC41KSIgZmlsbD0iIzBlMGUwZSIgc3Ryb2tlPSJyZ2JhKDAsMCwwLDApIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHN0cm9rZS13aWR0aD0iMSIvPjwvc3ZnPg==") center no-repeat;
            -webkit-mask-size: 100% auto;
            position: relative
         }

      .wpml-ls li > ul{
         position: absolute;
         top: 100%;
         width: max-content;
         max-width: 20rem;
         min-width: 100%;
         right: 0;
         z-index: 10;
         display: none
      }
         .wpml-ls li > ul > li{margin-top: .25rem}
            .wpml-ls li > ul a{
               padding: .25rem .5625rem;
               min-height: 2.5rem;
               border: 1px solid var(--ama-primary-color);
               border-radius: .625rem;
               background-color: #fff
            }

/* =============================================================================
   header
   ========================================================================== */
#header{
   background-color: var(--ama-header-bgcolor);
   box-shadow: var(--ama-header-box-shadow);
   transition: all .3s linear
}
   .h-inner{
      display: grid;
      grid-template-columns: auto 1fr auto;
      gap: .625rem;
      align-items: center;
      height: var(--ama-header-height);
      transition: height .3s linear
   }

#header.scroll-header{
   --ama-header-box-shadow: 0 .625rem 1.25rem 0 rgba(0, 0, 0, .06);
}

#menu-toggle{color: currentColor; padding: 0; width: 2rem; height: 2rem; border: none; background: none; position: relative}
   #menu-toggle > span{display: block; width: 100%; height: 2px; position: absolute; top: 50%; background-color: currentColor; transform: translate(0, -50%); transition: opacity 0.3s 0.3s}
      #menu-toggle::before,
      #menu-toggle::after{content: ''; display: block; width: 100%; height: 2px; position: absolute; background-color: currentColor; transition: transform 0.3s, top 0.3s 0.3s, bottom 0.3s 0.3s}
      #menu-toggle::before{top: 6px}
      #menu-toggle::after{bottom: 6px}
   #menu-toggle.toggled > span{opacity: 0; transition: opacity 0.3s}
      #menu-toggle.toggled::before,
      #menu-toggle.toggled::after{transition: top 0.3s, bottom 0.3s, transform 0.3s 0.3s}
      #menu-toggle.toggled::before{top: calc(50% - 1px); transform: rotate(45deg)}
      #menu-toggle.toggled::after{bottom: calc(50% - 1px); transform: rotate(-45deg)}

.h__els{
   display: flex;
   flex-wrap: wrap;
   align-items: center
}
   .h__els > * + *{margin-left: 1.25rem}

/* =============================================================================
   ama-nav-menu
   ========================================================================== */
.ama-nav-menu,
.ama-nav-menu ul{padding: 0; list-style: none}
.ama-nav-menu{font-weight: 600}
   .ama-nav-menu a{text-decoration: none!important}
   .ama-nav-menu li:hover > a,
   .ama-nav-menu [class*="current"]:not(.for-anchor) > a{color: var(--ama-link-hover-color)}

   .ama-nav-menu .has-submenu > .sub-menu-toggle{display: flex; align-items: center; justify-content: center}
      .ama-nav-menu .has-submenu > .sub-menu-toggle > svg{width: .75rem; height: auto}
   .ama-nav-menu .sub-menu{font-size: .9375rem; line-height: 1.25rem}

   .ama-nav-menu > li > a{
      font-size: 1.1875rem;
      line-height: 1.5rem;
      font-weight: 700
   }

/* =============================================================================
   content
   ========================================================================== */
.classic-editor ul:not([class]),
.term-description ul,
ul.wp-el,
ul.wp-el ul{padding-left: 0; list-style: none}

   .classic-editor ul:not([class]) li,
   .term-description ul li,
   ul.wp-el:not(.is-style-ticks) li{padding-left: 1.875rem; position: relative}
   
      .classic-editor ul:not([class]) li::before,
      .term-description ul li::before,
      ul.wp-el:not(.is-style-ticks) li::before{
         content: '';
         display: block;
         width: .625rem;
         height: .625rem;
         border-radius: 50%;
         background: var(--ama-marker-color);
         position: absolute;
         top: .3125em;
         left: .625rem
      }

.classic-editor ul:not([class]) li + li,
.classic-editor li ul,
.classic-editor li ol,
.term-description li + li,
.term-description li ul,
.term-description li ol,
.wp-el li + li,
.wp-el li > ul,
.wp-el li > ol{margin-top: var(--ama-margin-top-li)}

.classic-editor * + *,
.term-description * + *,
*:not(.ama-block) + .wp-el,
.classic-editor * + ul,
.term-description * + ul,
*:not(.ama-block) + ul.wp-el{margin-top: var(--ama-margin-top-base)}

.classic-editor * + h1,
.classic-editor * + h2,
.classic-editor * + h3,
.term-description * + h1,
.term-description * + h2,
.term-description * + h3,
*:not(.ama-block) + h1,
*:not(.ama-block) + h2,
*:not(.ama-block) + h3,
*:not(.ama-block) + .wp-el.has-funnel-display-font-family{margin-top: var(--ama-margin-top-heading)}

*:not(.ama-block) + .wp-block-contact-form-7-contact-form-selector{margin-top: var(--ama-margin-top-wpcf7)}

.gutenberg-elements > *:first-child:not(.full-width, .block-landing){margin-top: var(--ama-offset-top-first)}
.gutenberg-elements > *:last-child:not(.full-width){margin-bottom: var(--ama-offset-bottom-last)}

/* =============================================================================
   footer
   ========================================================================== */
#footer{
   font-size: var(--ama-md-font-size);
   line-height: var(--ama-md-line-height);
   padding-top: var(--ama-footer-padding-top);
   padding-bottom: var(--ama-footer-padding-bottom);
   background-color: var(--ama-footer-bgcolor)
}
   .f__cols{
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: var(--ama-gutter-double-x)
   }
   * + .f__cols{margin-top: 3.125rem}

   .f__end{
      display: grid;
      grid-template-columns: 1fr auto;
      align-items: center;
      gap: var(--ama-gutter-x);
   }
      .f__end > ul{list-style: none; padding: 0; display: flex; flex-wrap: wrap; align-items: flex-start}
      .f__end > ul > li:not(:last-child)::after{content: ' · '; margin-right: .25rem}
      .f__end > .ama-dev{grid-column: 2}

   * + .f__end{
      margin-top: 3.75rem;
      padding-top: 3.125rem;
      border-top: 1px solid #E3E3E3
   }

/* =============================================================================
   offcanvas
   ========================================================================== */
.offcanvas.w-100 > .offcanvas-header{
   border: none!important;
   padding: 1.875rem;
   width: 100%;
   max-width: 116.25rem;
   margin: 0 auto
}
.offcanvas.w-100 > .offcanvas-body{
   display: flex;
   flex-wrap: wrap;
   justify-content: center;
   padding: 1.875rem
}
.offcanvas.w-100 .offcanvas-body__inner{
   width: 100%;
   max-width: 95rem;
   display: grid;
   grid-template-columns: 35.625rem 1fr;
   gap: 2.5rem 6.875rem;
   height: 100%;
   overflow: hidden
}
   .offcanvas-body__inner .is-left--side,
   .offcanvas-body__inner .is-right--side{
      display: grid;
      grid-template-rows: auto 1fr;
      gap: 1.875rem 0
   }
   .offcanvas-body__inner .is-left--side > .side-header,
   .offcanvas-body__inner .is-right--side > .side-header{
      font-size: 2rem;
      line-height: 2.5rem;
      font-family: var(--ama-h-font-family);
      font-weight: 500
   }

#offcanvasCart{
   color: #fff;
   background-color: var(--ama-primary-color)
}

.ama-cart-products{
   padding-left: 0;
   list-style: none
}
.ama-cart-product + .ama-cart-product{border-top: 1px solid currentColor; margin-top: 1.25rem; padding-top: 1.25rem}
.ama-cart-product{
   font-size: var(--ama-md-font-size);
   line-height: var(--ama-md-line-height);
   display: grid;
   grid-template-columns: auto 1fr auto;
   gap: 1.875rem;
   align-items: center
}
   .ama-cart-product > .is-thumb{
      color: var(--ama-dark-color);
      width: 5rem;
      height: 3.75rem;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      background-color: #fff;
      border-radius: .3125rem;
      padding: .1875rem .4375rem;
      overflow: hidden
   }
   .ama-cart-product > .is-info{
      display: grid;
      grid-template-columns: 6.25rem 1fr;
      align-items: center;
      gap: .5rem 1rem
   }
      .ama-cart-product > .is-info > :not(.quantity):only-child{grid-column: 1 / -1}

   .ama-cart-product > .remove{
      width: 1.25rem;
      height: 1.25rem;
      color: currentColor;
      padding: 0;
      border: none;
      background: none
   }
   .ama-cart-product > .remove::before,
   .ama-cart-product > .remove::after{
      width: 1.125rem;
      left: calc(50% - .5625rem)
   }

.offcanvas-title{
   font-family: var(--ama-h-font-family);
   font-size: var(--ama-xxl-font-size);
   line-height: var(--ama-xxl-line-height);
   font-weight: 500;
   margin: 0
}
.offcanvas-header .btn-close{
   color: #fff;
   background: var(--ama-dark-color);
   width: 3.75rem;
   height: 3.75rem;
   padding: 0;
   border: none;
   border-radius: .625rem;
}
   .offcanvas-header .btn-close::before,
   .offcanvas-header .btn-close::after{
      width: 1.875rem;
      height: .25rem;
      border-radius: .25rem;
      top: calc(50% - .125rem);
      left: calc(50% - .9375rem)
   }

/*
.inquiry-cart{
   --ama-input-border-width: 1px;
   --ama-input-border-color: #fff;
   --ama-input-font-size: 1rem;
   --ama-input-line-height: 1.25rem;
   --ama-input-padding-y: calc(1.25rem - var(--ama-input-border-width));
   --ama-input-padding-x: calc(1.25rem - var(--ama-input-border-width));
}
*/

.inquiry-cart label.d-block{
   position: relative;
   font-size: var(--ama-input-font-size);
   line-height: var(--ama-input-line-height);
}
   .inquiry-cart label.d-block > .error{
      position: absolute;
      top: calc(100% + 4px);
      left: 0;
      padding: 0.25rem 0.5rem;
      font-size: .75rem;
      line-height: 1em;
      text-transform: uppercase;
      font-weight: 500;
      background-color: rgb(255, 255, 255, 1);
      border-radius: 0.3125rem;
      max-width: 100%;
      user-select: none;
      pointer-events: none
   }

.inquiry-cart label.d-block > .form-control{margin-top: .625rem}

.inquiry-cart textarea.form-control{
   min-height: 7.5rem;
   max-height: 7.5rem
}

/* =============================================================================
   scroll to top
   ========================================================================== */
.scroll-to-top{z-index: 10; position: fixed; bottom: 1.25rem; right: 1.25rem; user-select: none; pointer-events: none}
.scroll-to-top__btn{width: var(--ama-scroll-top-width); height: var(--ama-scroll-top-height); opacity: 0; color: var(--ama-scroll-top-color); border-radius: var(--ama-scroll-top-border-radius); background-color: var(--ama-scroll-top-bg); font-size: 150%; line-height: 1em; -moz-transition: all .25s linear; transition: all .25s linear}
.scroll-to-top__btn[style="visibility: visible;"]{pointer-events: all; cursor: pointer; opacity: 1}

/* =============================================================================
   modal custom styling
   ========================================================================== */
.modal-content{
   border: none;
   border-radius: 0.625rem;
   color: #fff;
   background-color: var(--ama-primary-color)
}
   .modal-content .modal-header{
      border: none;
      padding: 1.875rem 1.875rem 0 1.875rem
   }
      .modal-content .modal-header .modal-title{
         font-size: 2rem;
         line-height: 2.5rem;
         font-weight: 500;
         font-family: var(--ama-h-font-family);
      }
      .modal-content .modal-header .btn-close{
         width: 2.5rem;
         height: 2.5rem;
         padding: 0;
         border: none;
         color: #fff;
         background: #000;
         border-radius: .625rem;
      }

   .modal-content .modal-body{
      padding: 1.875rem
   }

#amaCartModal .modal-dialog{
   max-width: 75rem
}

.modal-body--cols{
   display: grid;
   grid-template-columns: 29.375rem 1fr;
   gap: var(--ama-gutter-double-x)
}
   .modal-body--cols .products_block{height: 26.875rem}

   .modal-content .side-header{
      font-size: 1.5rem;
      line-height: 2rem;
      font-family: var(--ama-h-font-family);
      font-weight: 500;
      margin-bottom: 1.25rem
   }

@media (max-width: 1199px){
   .modal-content .modal-header{padding: 0.9375rem 0.9375rem 0 0.9375rem}
   .modal-content .modal-body{padding: 0.9375rem}
}
@media (max-width: 991px){
   .modal-body--cols .products_block{height: unset}
   .modal-body--cols{grid-template-columns: 1fr}
}

/* =============================================================================
   media query
   ========================================================================== */
@media (min-width: 1200px){
   #header.scroll-header{
      --ama-header-height: 3.75rem;
      --ama-header-bgcolor: rgba(255, 255, 255, 1)
   }

   .h-inner{grid-template-columns: auto 1fr auto; gap: 0 3.125rem}

   .h__nav > .offcanvas-body{justify-content: flex-end}

   .ama-nav-menu{
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-end;
      margin: 0 -1.5rem
   }
      .ama-nav-menu > li{margin: 0 1.5rem}
   .ama-nav-menu .has-submenu{position: relative}
   .ama-nav-menu a{display: flex; flex-wrap: wrap; align-items: center; justify-content: center}
   .ama-nav-menu > li > a{min-height: 3.125rem}

   .ama-nav-menu .has-submenu > a{padding-right: 1.3125rem}
   .ama-nav-menu .has-submenu > .sub-menu-toggle{
      pointer-events: none;
      user-select: none;
      height: 100%;
      position: absolute;
      top: 0;
      right: 0;
   }
      .ama-nav-menu .has-submenu > .sub-menu-toggle svg{width: .75rem; height: auto}


   .ama-nav-menu .sub-menu > .has-submenu > a{padding-right: 2.4375rem}
   .ama-nav-menu .sub-menu > .has-submenu > .sub-menu-toggle{right: .9375rem}
      .ama-nav-menu .sub-menu > .has-submenu > .sub-menu-toggle > svg{transform: rotate(270deg)}

   .ama-nav-menu .sub-menu{
      position: absolute;
      width: max-content;
      max-width: 20rem;
      min-width: 100%;
      background-color: #fff;
      border-radius: var(--ama-general-border-radius);
      z-index: 10;
      padding: .3125rem 0;

      opacity: 0;
      pointer-events: none;
      transform: scale(.6);
      transform-origin: left top;
      transition: opacity .3s, transform .3s;
      filter: drop-shadow(0 .625rem 1.25rem rgba(0, 0, 0, .1));
   }
   .ama-nav-menu .sub-menu a{padding: .3125rem .9375rem; justify-content: flex-start}

   .ama-nav-menu > li > .sub-menu{top: 100%; left: 50%; transform: scale(.6) translateX(-50%)}
   .ama-nav-menu .sub-menu .sub-menu{top: -.3125rem; left: 100%; transform: scale(.6)}

   .ama-nav-menu li:hover > .sub-menu{opacity: 1; pointer-events: all}
   .ama-nav-menu > li:hover > .sub-menu{transform: scale(1) translateX(-50%)}
   .ama-nav-menu .sub-menu > li:hover > .sub-menu{transform: scale(1)}

   #header .h__logo svg{width: 12.5625rem; transition: all .3s linear}
   #header.scroll-header .h__logo svg{width: 5.625rem; height: auto}
   
   .h__els > * + *{margin-left: 3.125rem}
}
@media (max-width: 1199px){
   #header.scroll-header{--ama-header-bgcolor: rgba(255, 255, 255, 1)}

   .h__nav .offcanvas-body{padding: 0}

   .ama-nav-menu a{padding: .3125rem .625rem; min-height: 2.5rem; display: flex; align-items: center; justify-content: flex-start}
   .ama-nav-menu .has-submenu{display: grid; grid-template-columns: 1fr auto}
      .ama-nav-menu .has-submenu > .sub-menu{grid-column: 1 / -1; display: none; background-color: rgba(0, 0, 0, .03)}
      .ama-nav-menu li + li{border-top: 1px solid #E8F1F3}
      .ama-nav-menu .has-submenu > .sub-menu > li + li{border-top-color: rgba(0, 0, 0, .1)}

   .ama-nav-menu .sub-menu-toggle{cursor: pointer; width: 2.5rem; background-color: #E8F1F3}
   
   #header .h__logo svg {width: 6.25rem}
   .h__els{justify-content: flex-end}
}

*:focus-visible{outline: 2px dashed #000!important; outline-offset: 3px}
#footer *:focus-visible{outline-color: var(--ama-footer-color)!important}

/* custom adminbar */
html{margin-top: 0!important}
#wpadminbar{background: none; user-select: none; pointer-events: none}
   #wpadminbar .quicklinks > [role="menu"] > li{background: #1d2327; pointer-events: all}

.block__featured-row {
   display: flex;
   gap: var(--ama-gutter-double-x);
   margin-bottom: 2rem;
}
.block__featured-col {
   flex: 1;
   min-width: 0;
}
.featured-col__title {
   margin-bottom: 1rem;
   font-size: 1.1rem;
   font-weight: 700;
}
.featured-products-wrapper {
   position: relative;
}
.fps-viewport {
   overflow: hidden;
   width: 100%;
}
.fps-track {
   display: flex;
   transition: transform 0.35s ease;
   will-change: transform;
}
.fps-page {
   flex-shrink: 0;
   box-sizing: border-box;
}

/* Cart confirmation modal */
.ama-cart-confirmation {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   background-color: rgba(0, 0, 0, 0.5);
   display: flex;
   align-items: center;
   justify-content: center;
   z-index: 9999;
   animation: fadeIn 0.2s ease-in;
}

.ama-cart-confirmation .confirmation-content {
   background-color: white;
   padding: 2rem;
   border-radius: 0.375rem;
   box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
   text-align: center;
   max-width: 400px;
   animation: slideUp 0.3s ease-out;
}

.ama-cart-confirmation .confirmation-message {
   margin: 0 0 1.5rem 0;
   font-size: 1.1rem;
   font-weight: 500;
   color: #333;
}

.ama-cart-confirmation .close-confirmation {
   min-width: 120px;
}

/* Quantity controls in modal */
.ms--add-to-cart {
   position: relative;
   min-height: 44px;
}

.ama-modal-quantity {
   width: 6.25rem;
   height: 1.875rem;
   display: grid;
   grid-template-columns: 1.75rem 1fr 1.75rem;
   color: currentColor;
   border: 1px solid currentColor;
   padding: 0;
   border-radius: .3125rem;
   overflow: hidden;
   position: absolute;
   left: 0;
   top: 0;
}

.ama-modal-quantity .qty-btn,
.ama-modal-quantity input[type="number"] {
   padding: 0;
   background: none;
   border: none;
   color: currentColor;
}

.ama-modal-quantity .qty-btn {
   background-color: currentColor;
   mask-size: .75rem auto;
   mask-position: center;
   mask-repeat: no-repeat;
   -webkit-mask-size: .75rem auto;
   -webkit-mask-position: center;
   -webkit-mask-repeat: no-repeat;
   cursor: pointer;
   transition: opacity 0.2s ease;
}

.ama-modal-quantity .qty-btn.minus {
   mask-image: url(../images/minus.svg);
   -webkit-mask-image: url(../images/minus.svg);
}

.ama-modal-quantity .qty-btn.plus {
   mask-image: url(../images/plus.svg);
   -webkit-mask-image: url(../images/plus.svg);
}

.ama-modal-quantity .qty-btn:hover {
   opacity: 0.8;
}

.ama-modal-quantity .qty-btn:active {
   opacity: 0.6;
}

.ama-modal-quantity input[type="number"] {
   font-size: var(--ama-md-font-size);
   line-height: 1.25rem;
   font-weight: 700;
   text-align: center;
   outline: none !important;
   color: #0E0E0E !important;
   background-color: #fff !important;
}

/* Animation keyframes */
.ama-modal-quantity,
.ama_add_to_cart {
   transition: opacity 0.3s ease, visibility 0.3s ease, transform .25s linear;
}

.ama_add_to_cart[style*="opacity:0"],
.ama-modal-quantity[style*="opacity:0"] {
   visibility: hidden;
}

.ama_add_to_cart:not([style*="opacity:0"]),
.ama-modal-quantity:not([style*="opacity:0"]) {
   visibility: visible;
}

@keyframes fadeIn {
   from {
      opacity: 0;
   }
   to {
      opacity: 1;
   }
}

@keyframes slideUp {
   from {
      transform: translateY(20px);
      opacity: 0;
   }
   to {
      transform: translateY(0);
      opacity: 1;
   }
}

/*
.featured-products {
   display: grid !important;
   grid-template-columns: repeat(2, 1fr) !important;
   gap: 1rem !important;
   margin: 0 !important;
   padding: 0 !important;
   list-style: none !important;
}
*/

.featured-slider__nav {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 0.5rem;
   margin-top: 0.75rem;
}
.featured-slider__prev,
.featured-slider__next {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 2rem;
   height: 2rem;
   border: 1px solid currentColor;
   border-radius: 50%;
   background: transparent;
   cursor: pointer;
   transition: background 0.2s, color 0.2s;
   flex-shrink: 0;
}
.featured-slider__prev:hover,
.featured-slider__next:hover {
   background: currentColor;
}
.featured-slider__prev:hover svg,
.featured-slider__next:hover svg {
   stroke: #fff;
}
.featured-slider__dots {
   display: flex;
   gap: 0.35rem;
}
.fps-dot {
   display: inline-block;
   width: 8px;
   height: 8px;
   border-radius: 50%;
   background: currentColor;
   opacity: 0.3;
   cursor: pointer;
   transition: opacity 0.2s;
}
.fps-dot.is-active {
   opacity: 1;
}

#wrapper [id] {
   scroll-margin-top: 100px;
}



/* ==========================================================================
   Featured products slider (block-products-featured)
   Products per slide are controlled by --fps-per-view – JS reads it from here.
   ========================================================================== */

.block-products-featured .fps-viewport {
   overflow: hidden;
   touch-action: pan-y;
}

.block-products-featured ul.products.fps-track {
   --fps-per-view: 1;          /* < 568px */
   --fps-gap: var(--ama-gutter-double-x);

   display: flex;
   flex-wrap: nowrap;
   gap: var(--fps-gap);
   grid-template-columns: none;
   margin: 0;
   padding: 0;
   list-style: none;
   transition: transform 0.4s ease;
   will-change: transform;
}

.block-products-featured ul.products.fps-track.is-resizing {
   transition: none;
}

/* Kill WooCommerce clearfix pseudo elements – they become flex items otherwise */
.block-products-featured ul.products.fps-track::before,
.block-products-featured ul.products.fps-track::after {
   content: none;
   display: none;
}

.block-products-featured ul.products.fps-track > li.product {
   flex: 0 0 calc((100% - (var(--fps-per-view) - 1) * var(--fps-gap)) / var(--fps-per-view));
   width: auto;
   max-width: none;
   min-width: 0;
   float: none;
   clear: none;
   margin: 0;
}

/* 568px – 767px */
@media (min-width: 413px) {
   .block-products-featured ul.products.fps-track {
      --fps-per-view: 2;
   }
}

/* 768px – 991px */
@media (min-width: 768px) {
   .block-products-featured ul.products.fps-track {
      --fps-per-view: 1;
   }
}

/* 992px and up */
@media (min-width: 992px) {
   .block-products-featured ul.products.fps-track {
      --fps-per-view: 2;
   }
}

/* Nav */
.block-products-featured .featured-slider__nav[hidden] {
   display: none !important;
}

/* Dots are now <button>s – reset browser defaults, keep your existing .fps-dot styling */
.block-products-featured button.fps-dot {
   appearance: none;
   border: 0;
   padding: 0;
   cursor: pointer;
}

@media (prefers-reduced-motion: reduce) {
   .block-products-featured ul.products.fps-track {
      transition: none;
   }
}

@media (max-width: 767px){
   .block__featured-row{flex-wrap: wrap}
      .block__featured-col{flex: 0 0 100%}
}

@media (max-width: 1199px){
   .offcanvas-header .btn-close{
      width: 2.5rem;
      height: 2.5rem
   }
   
   .ama-cart-product{gap: .625rem}
}
@media (max-width: 991px){
   .h__els > * + *{margin-left: .9375rem}
   .f__end{grid-template-columns: 1fr}
   .f__end > .ama-dev{grid-column: unset}

   .f-inner{
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 2.5rem var(--ama-gutter-double-x)
   }
      .f-inner > .f__cols{
         display: contents;
      }
      * + .f__end{margin-top: 0; padding-top: 1.5625rem}
      .f-inner > .f__end{grid-column: 1 / -1}
}
@media (max-width: 767px){
   .wpml-ls .wpml-ls-item-toggle img + span{display: none!important}
}
@media (max-width: 660px){
   .f-inner{grid-template-columns: 1fr}
}
@media (max-width: 379px){
   .ama-cart-toggle{
      position: fixed;
      left: 50%;
      bottom: .625rem;
      transform: translateX(-50%)!important;
   }

   .ama-cart-product > .is-info{grid-template-columns: 1fr}
   .ama-cart-product > .is-info > .quantity{order: 2}
}