/** Shopify CDN: Minification failed

Line 337:13 Cannot use type selector "td" directly after nesting selector "&"

**/
.product__section {

    .main-slider-container{
        &.thumbs-left,
        &.thumbs-right{
            flex: 1 1 auto;
        }

        &.slider-container{
            .slider-items-container{
                cursor: zoom-in;
            }
        }
        
        .prod-wishlist{
            position: absolute;
            top: 0;
            right: 0;
            z-index: 2;
        }
    }

    .slider-container.thumbnails{
        &.thumbs-left,
        &.thumbs-right{
            flex: 0 0 100px;
        }
    }

    & .product__section-range {
        margin-top: 20px;
        font-size: var(--h3-size);
    }

    & .product__section-images {
        grid-row: 1;

        &.details-beside {
            grid-column: auto / span 3;
        }

        &:not(.details-beside){
            width: 80%;
            margin-left: auto;
            margin-right: auto;
        }

    }

    & .product__section--product_description {
        grid-column: auto / span 6;
    }

    &>.product__section--image{
        grid-column: auto / span 6;
    }

    & .bullet-point-list{
        list-style: none;
        display: flex;
        flex-direction: column;
        row-gap: 15px;
        border-spacing: 3px 15px;
        margin-top: 20px;

        &.default-list{
            list-style: disc;
            list-style-position: inside;
        }
    }

    & .product-details {
        margin-left: 10px;
        grid-column: auto / span 6;
        grid-row: 1;

        & .bullet-point-list {
            

            .bullet-point{
                margin-left: 5px;
                text-indent: -5px;
            }
            &:not(&.default-list) .bullet-point{
                span{
                    margin-left: 5px;
                }
            }
        }

        & .star-rating-container{
            margin-top: 10px;
        }
    }

    & .product__section-subheadline {
        text-align: left;
        font-weight: lighter;
    }

    & .product__section-contentWrapper {
        grid-row: 1 / span 2;
            display: flex;
            flex-direction: column;

            & .product__section-content{
                .product__policies{
                    a{
                        text-decoration: revert-layer;
                    }
                }
            }

            .product--buybox-container {

                & .buybox-header{
                    text-align: center;
                    margin-bottom: 20px;
                    font-weight: normal;
                }

                .price__sale,
                .price__regular{
                    padding: 0;

                    .price-item--regular{
                        margin-left: 0;
                    }
                }
            }

            & .total-price-container{
                text-align: center;
                font-size: var(--h2-size);
                font-weight: bold;
                margin: 10px 0 10px 0;
            }

            & .product-buttons {
                #addToCart {
                    font-weight: bold;
                }

                & .product__quantity--wrapper {
                    border: 1px solid var(--dotted-color);
                    display: grid;
                    grid-template-columns: 50px 1fr 50px;
                    margin-bottom: 5px;
                    border-radius: var(--button-border-radius);

                    & .formQty {
                        &.quantity {
                            text-align: center;
                            grid-column: 2;
                            grid-row: 1;
                        }
                    }

                    & .up,
                    & .down {

                        &.quantity-control-up,
                        &.quantity-control-down {
                            background: unset;
                            color: var(--text-color);
                            margin-bottom: 0;
                            width: 100%;
                            height: 50px;
                            line-height: 50px;
                            padding: 0;
                            text-align: center;
                        }

                        &.quantity-control-up {
                            grid-column: 3;
                            grid-row: 1;
                        }

                        &.quantity-control-down {
                            grid-column: 1;
                            grid-row: 1;
                        }
                    }

                    & .formQty {
                        grid-column: 2;
                        grid-row: 1;
                        margin: 0;
                        border: none;
                        text-align: center;
                    }
                }
            }

        &:has(.buybox-extension){
            & .product--buybox-container{
                border-bottom-left-radius: 0;
                border-bottom-right-radius: 0;
            }
        }

        & .buybox-extension{
            border-top-left-radius: 0;
            border-top-right-radius: 0;
            border: 1px solid #dcdcdc;
            border-top: none;

            & .buybox-extension-text{
                display: flex;
                justify-content: center;

                & .img{
                    margin-right: 10px;
                }
            }

            & .sku-pzn-container{
                text-align: center;

                .label{
                    font-weight: bold;
                }
            }
        }
    }

    & .special-promotion {
        margin: 0rem 0rem 1.25rem 0rem;
        border-radius: 0.625rem;
        text-align: center;
        padding: 0.625rem 0.625rem 0.625rem 0.625rem;
        font-size: 1.25rem;
    }

    & .product-title {
        &.title-left {
            text-align: left !important;
        }
    }

    & .product__section--element {
        margin-bottom: 20px;
        display: block;
        width: 100%;
        clear: both;

        & label {
            font-family: var(--main-family);
            font-style: var(--main-style);
            font-weight: 500;
            font-size: var(--font-size);
            margin-bottom: 0;
            position: relative;
        }

        &.inline {
            display: flex;
            flex-direction: column;
            align-items: start;
            width: unset;
            margin-right: 10px;
            clear: none;
        }

        & p.line-item-property__field,
        & p.line-item-property__field input,
        & p.line-item-property__field textarea {
            margin-bottom: 5px;
        }

        & p.line-item-property__field input[type="file"]+label {
            transform: scale(0.8) translateY(calc(-25px - 0.25em)) translateX(10px);
        }

        &.product__section--sku {
            & label {
                float: left;
                margin-right: 5px;
            }
        }
    }

    .special-promotion {
        & .copy-box {
            border: none;
            background: none;
            display: inline-block;
            cursor: pointer;
            outline: none !important;
        }
    }

    .thumb-slider {
        flex: 0 0 30%;
        max-width: unset;
    }

    .carousel-nav {
        display: flex;
        flex-wrap: wrap;
    }

    .image-thumbnail {
        width: 100%;
        padding: 5px;
        min-width: 85px;
        max-width: 85px;
        &.active-thumbnail{
            outline: 1px solid var(--dotted-color)!important;
            outline-offset: -1px !important;
        }
    }

    #slider {
        margin-left: 10%;
        margin-right: 10%;
    }

    .wishlist-engine-button {
        width: 100%;
    }

    .product__decription-container {
        &.below-buybox{
            margin: 0;
            border-top-left-radius: 0;
            border-top-right-radius: 0;
        }
        & table {
            width: 100%;

            &td {
                &:first-child {
                    width: 30%;
                }
            }
        }
    }

    .order-discount {
        &.order-discount--list {
            list-style: none;
        }
    }

    @media only screen and (max-width: 980px){
            & .product__section-images {
                grid-column: auto / span 12 !important;
                grid-row: unset !important;
        
            }
        
            & .product__section--product_description {
                grid-column: auto / span 12 !important;
                grid-row: unset !important;
            }

            &>.product__section--image{
                display: none !important;
            }
        
            & .product-details {
                margin-left: 0 !important;
                grid-column: auto / span 12 !important;
                grid-row: unset !important;
            }

            & .product__section-contentWrapper{
                grid-column: auto / span 12 !important;
                grid-row: unset !important;
            }
    }

    @media only screen and (max-width: 740px) {
        .product__nav {
            display: none;
            float: right;

            & a {
                color: var(--text-color);
                text-align: center;
                display: inline-block;
                padding: 2px 8px;
                transition: all 0.25s ease-in-out;
                cursor: pointer;

                &:hover svg .hover-fill {
                    fill: var(--text-color);
                }
            }
        }

        input {
            &#AddToCart {
                clear: left;
                width: 100%;
                min-width: 100%;
                margin: 20px auto 10px;
            }

            &#quantity {
                min-width: 60px;
                text-align: center;
            }

            &.add {
                min-width: 90px;
            }
        }

        select.styled-select,
        .single-option-selector {
            text-indent: 5px;
            clear: left;
            margin-left: 0;
            width: 100%;
        }

        #add {
            width: 100%;
        }

        .product__policies.rte {
            margin-top: 10px;
        }

        .product__decription-container a,
        .rte a {
            text-decoration: underline;
        }

        .product__section-title {
            padding-bottom: 0 !important;
            border-bottom: 0 !important;
            text-align: left !important;
        }

        .product__price-container {
            font-size: var(--h4-size);
        }

        small.property--required {
            position: absolute;
            right: 5px;
            top: -12px;
            padding: 0 5px;
            background: var(--background);
        }

        /* ---- Product quantity ---- */

        .product__section--qty {
            display: flex;
            flex-direction: row;

            & label {
                line-height: 50px;
                min-width: 60px;
            }
        }

        .product__quantity--wrapper {

            width: 100%;

            & .up.quantity-control-up,
            & .down.quantity-control-down {
                background: unset;
                color: var(--text-color);
                margin-bottom: 0;
                width: 50px;

                &:hover {
                    background: unset;
                    color: var(--text-color);
                }
            }
        }

        .product__related-container {
            padding-top: 20px;
            margin-top: 20px;
            margin-bottom: 50px;

            & h4 {
                margin-bottom: 20px;
            }
        }


        .product__add-msg {
            clear: left;

            &.success {
                margin: 10px 0;
                border: 1px solid var(--dotted-color);
                padding: 20px 10px;

                & a {
                    font-weight: bold;
                }
            }

            &.error {
                color: red;
            }
        }

        /* ---- Product description ---- */
        .product__section--desc {
            border-top: 1px solid var(--dotted-color);
            border-bottom: 1px solid var(--dotted-color);
            padding-top: 20px;
            padding-bottom: 20px;

            & ul,
            & ol {
                list-style-position: outside;
                margin-left: 20px;
                margin-bottom: 10px;
                font-size: var(--font-size);
            }
        }

        ul.product__tabs {
            margin-left: 0;
            margin-bottom: 0;
        }

        .product__section--product_description.rte ul:not(.product__tabs) {
            margin-bottom: 15px;
            list-style-position: outside;
            margin-left: 25px;
        }

        .product__section--popup button.button-as-link {
            margin-bottom: 0;
            font-weight: var(--main-font-weight);
        }

        .modal__container[data-wau-modal^="popup-content"] {
            position: fixed;
            top: 50%;
            transform: translate(-50%, -50%);
        }

        /* ----- Product text block ---- */

        .product__section--text.product__section--element.rte p {
            margin-bottom: 0;
        }

        /* ---- Product image block ---- */

        .product__section--image.product__section--element img {
            width: unset;
        }

        /* ---- Product stock levels ---- */

        .variant-stock-levels__inner {
            display: flex;
            flex-direction: row;
            align-items: center;
        }

        .pulse__icon {
            border-radius: 50%;
            margin: 0 12px 0 8px;
            height: 15px;
            width: 15px;
            background: rgba(255, 177, 66, 1);
            box-shadow: 0 0 0 0 rgba(255, 177, 66, 1);
            transform: scale(1);
            animation: pulse-orange 2s infinite;
        }

        @keyframes pulse-orange {
            0% {
                transform: scale(0.95);
                box-shadow: 0 0 0 0 rgba(255, 177, 66, 0.7);
            }

            70% {
                transform: scale(1);
                box-shadow: 0 0 0 10px rgba(255, 177, 66, 0);
            }

            100% {
                transform: scale(0.95);
                box-shadow: 0 0 0 0 rgba(255, 177, 66, 0);
            }
        }

        /* New Product Quick View Image Gallery */
        .product-main-image {
            position: absolute;
            overflow: hidden;
            width: 100%;
            top: 0;
            left: 0;
            visibility: hidden;

            & img {
                margin: 0 auto;
                cursor: crosshair;
            }
        }


        .product-image-container {
            width: 100%;
            position: relative;
            width: 100%;
        }

        /* ---- Product Form Swatches ----*/

        .product__form-container {
            clear: both;
        }

        .product__variants-swatches,
        .product__variants-select {
            display: flex;
            flex-direction: column;
            margin-bottom: 10px;
        }

        /* ----Product Social Share ----*/
        .product__share-icons {
            border: 0;
            margin: 0;
            padding: 0;
            display: flex;
            flex-direction: row;
            align-items: center;
        }

        .product__share-icon {
            margin: 0 10px 0 0;
        }

        /* ---- Product description tabs ---- */

        .tabbed__product-content {
            padding: 25px 15px 0;
        }

        li.product__tab-trigger>a {
            display: block;
            padding: 15px;
            border-bottom: 1px solid var(--dotted-color);
            font-weight: 600;

            &.active {
                border-bottom: 0;
                border-top: 1px solid var(--dotted-color);
            }
        }

        ul.product__tabs li:last-child {
            border-right: 0;
        }

        .product__tab-trigger {
            float: left;
            border-right: 1px solid var(--dotted-color);
        }

        /* --- Product Ratings Block --- */
        .product__section--rating-wrapper {
            padding: 10px 0;
        }

        .product__section-rating {
            display: inline-block;
            margin: 0;
        }

        .product__section-rating-star {
            --letter-spacing: 0.2;
            --font-size: 1;
            --percent: calc((var(--rating) / var(--rating-max) + var(--rating-decimal) * var(--font-size) /(var(--rating-max) *(var(--letter-spacing) + var(--font-size)))) * 100%);
            letter-spacing: calc(var(--letter-spacing) * 1rem);
            font-size: calc(var(--font-size) * 1rem);
            line-height: 1;
            display: inline-block;
            margin: 0;

            &::before {
                content: "★★★★★";
                background: linear-gradient(90deg, var(--star-active) var(--percent), var(--star-inactive) var(--percent));
                -webkit-text-fill-color: transparent;
            }
        }

        .product__section-rating-text {
            display: none;
        }

        .product__section-rating-count {
            display: inline-block;
            margin: 0;
            font-size: 11px;
            vertical-align: middle;
        }

        @media(forced-colors: active) {
            .product__section-rating {
                display: none;
            }

            .product__section-rating-text {
                display: block;
            }
        }

        /* ---- Product text with icon ---- */

        .product__section--text-with-icon {
            display: flex;
            gap: 10px;
            margin-bottom: 10px;
        }

        .product--text-with-icon__text {
            & p {
                margin-bottom: 0;
            }

            & a {
                text-decoration: underline;
            }
        }

        /* ---- Product payment icons ---- */

        .product__section--payment-icons {
            &.product__section--element {
                padding: 20px 20px 10px;
    
                & svg {
                    width: unset;
                    height: 30px;
    
                }
    
                & h5 {
                    font-weight: 400;
                    margin-bottom: 10px;
                    font-size: var(--font-size);
                }
            }
        } 
    }
}

.product__related-container {
    .product-loop{
        .product-listing-container{
            width: auto;
            min-width: unset;
        }
    }
}

/* Image Gallery */

.modal-image-gallery-container{
    display: none;
    visibility: hidden;
    opacity: 0;
    transition: opacity .3s ease-in-out,visibility .3s ease-in-out;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 20;

    .slider-container{

        &.main-slider-container{
            .image-slide{
                outline: none;
            }
        }

        &.thumbnails{
            visibility: visible;
            position: relative;
            display: grid;
            max-width: 100%;

            .thumbnails{
                .image-thumbnail{
                    min-width: 50px;
                    margin-right: 20px !important;

                    &.thumb__first{
                        margin-left: auto;
                    }

                    &.thumb__last{
                        margin-right: auto !important;
                    }
                }
            }
        }
    }

    &.active{
        visibility: visible;
        opacity: 1;
        display: block;
    }

    .slider-button{
        visibility: visible !important;
    }

    .main-slider-container{
        box-shadow: none !important;
    }

    .is-nav-selected{
        outline: none !important;
    }
}

.modal-image-gallery-site-overlay{
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100vw;
  z-index: 12;
  background: #ffffff;
}

.modal-image-gallery-content{
  width: 90%;
  height: 90%;
  left: 50%;
  opacity: 1;
  position: absolute;
  top: 5vh;
  transform: translate(-50%);
  transition: opacity 1.2s ease-in-out;
  z-index: 15;
  background-color: transparent;
  flex-direction: column;
  display: flex;
  place-content: center;
}

.close-image-gallery{
  z-index: 20;
  position: absolute;
  top: 0;
  right: 0;
  margin: 12px 12px 12px 12px;
}

.modal-image-gallery-site-overlay.show-modal-image-gallery-site-overlay{
  visibility: visible;
  opacity: 1;
  overflow: hidden;
}

.modal-image-gallery-content .slider-items-container{
  overflow: hidden;
}

.modal-image-gallery-content>.slider-container{
  max-height: 75vh;
}

.modal-image-gallery-content .slider-items-container a{
  flex: 0 0 0;
  overflow: hidden;
}

.modal-image-gallery-content .slider-items-container .js-custom__slide_item .image-slide .product-media-container .box-ratio img{
  object-fit: contain;
  max-height: 75vh;
}

.modal-image-gallery-content .image-thumbnail{
  max-width: 80px;
}

.modal-image-gallery-content .slider-container.thumbnails{
    min-height: fit-content;
    overflow-y: initial;

    .thumbnails{
        height: fit-content;
      }
} 

.no-scroll {
  overflow: hidden;
}

.close-image-gallery>.icn-close::before{
  border-left: 1px solid #000000;
}

.close-image-gallery>.icn-close::after{
  border-left: 1px solid #000000;
}

/* .zoom-image {
  transition: transform 0.1s ease;
  transform-origin: center center; 
} */

.zoom-image {
  width: 100%;
  height: 100%;
  transform-origin: 0px 0px;
  transform: scale(1) translate(0px, 0px);
  cursor: grab;
}

div.zoom-image img {
  width: 100%;
  height: auto;
}

.modal-image-gallery-content .image-thumbnail{
    padding: 5px;
}

.modal-image-gallery-content .active-thumbnail{
  outline: 1px solid var(--dotted-color) !important;
  outline-offset: -1px !important;
  border-radius: 10px;
}

.modal-image-gallery-content .thumbnails .slider-button{
  display: none;
}