/** Shopify CDN: Minification failed

Line 420:41 Unexpected "{"
Line 557:58 Unexpected "{"

**/
.product-card-with-stock-status-block {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
    gap: 20px;
}

.product-card-with-stock-status-area {
    flex: 1;
}

.product-card-with-stock-status {
    display: flex;
    justify-content: end;
}

.product-card-with-stock-status p {
    border: 1px solid #000;
    width: max-content;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 400;
    padding: 1px 5px;
    letter-spacing: 2px;
}

.product-card__info .product-title {
    text-align: left !important;
}

.product-card__info :is(.price-list,.rating-badge) {
    justify-content: start !important;
}

.pswp.pswp--open {
    background: rgba(0,0,0,0.6) !important;
}

.header-bottom-nav {
    background-color: #4C2B1A;
}

.mega-menu {
    background-color: #F7F5F2;
}

.snap-center.group div.prose a.link {
    background-color: #4C2B1A !important;
}


#wufoo-mphsv71xaz0pg iframe {
    background-color: #F7F5F2;
}

.faq-tab-button {
    background-color: #F7F5F2 !important;
    /* padding: 0.5rem 2rem 0.5rem 2rem !important; */
}

.footer-bottom-copy {
    background: #f7f5f2 !important;
}

.grp-entangle-rating-container {
    background-color: #f7f5f3 !important;
}

.grp-main-hyper-link a {
    background-color: transparent !important;
}

.grp-slide {
    background-color: #f7f5f3 !important;
}


.quote-btn {
    max-width: 238px;
    height: 43px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.65rem 1.25rem;
}

.quote-btn svg {
    display: block;
    width: 24px;
}

/* quote form */
.st-quote-form-block {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(0,0,0,0.7);
    transition: all 0.3s ease-in-out;
    padding: 20px 0;
    opacity: 0;
    visibility: hidden;
}

.st-quote-form-block.active {
    opacity: 1;
    visibility: visible;
    z-index: 999;
}

.st-quote-form-innerblock {
    background-color: #f7f5f2;
    max-width: 900px;
    width: 100%;
    padding: 20px;
    /* height: 100%; */
    /* height: 800px; */
    height: auto;
    overflow-y: auto;
    position: relative;
}

.qoute-close-btn {
    position: absolute;
    top: 25px;
    right: 20px;
   transition: all 0.3s ease-in-out; 
   cursor: pointer;
   z-index: 99;
}

.qoute-close-btn img {
    width: 16px;
    height: 16px;
    transition: all 0.3s ease-in-out;
}

.qoute-close-btn:hover img {
    transform: rotate(90deg);
}

.st-quote-form-title-text-block {
    text-align: center;
}

.st-quote-form-title-text-block h2 {
    font-size: clamp(20px, 1.667vw, 24px);
    font-weight: 700;
    line-height: 141%;
    color: #4C2B1A;
    text-align: center;
    margin-bottom: 10px;
}

.st-quote-form-title-text-block p,
.st-quote-form-title-text-block span {
    font-size: clamp(14px, 1.111vw, 16px);
    font-weight: 400;
    line-height: 1.5;
    color: #4C2B1A;
    text-align: center;
}

.st-quote-main-form-block {
    margin-top: 20px;
    /* height: 500px;
    overflow-y: auto; */
}

.st-quote-main-form-block form {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.st-quote-main-form-input-block {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
}

.st-quote-main-form-input {
    display: flex;
    flex-direction: column;
    gap: 5px;
    width: 100%;
}

.st-quote-main-form-input label {
    width: max-content;
    font-size: 14px;
    color: #4C2B1A;
}

.st-quote-main-form-input label span {
    color: red;
}

.st-quote-main-form-input input,
.st-quote-main-form-input select,
.st-quote-main-form-input textarea {
    font-size: 14px;
    color: #4C2B1A;
    border: 1px solid #000;
    padding: 10px;
    border-radius: 4px;
    background-color: transparent;
}

.st-quote-main-form-input input:focus,
.st-quote-main-form-input input:focus-visible,
.st-quote-main-form-input select:focus,
.st-quote-main-form-input select:focus-visible {
    outline: none;
    box-shadow: none;
}

.st-quote-main-form-btn button {
    width: 100%;
    border-radius: 4px;
}

.custom-button {
  -webkit-appearance: none;
  appearance: none;
  text-transform: uppercase;
  font-family: inherit;
  letter-spacing: 0.5px;
  text-shadow: none;
  text-align: center;
  cursor: pointer;

  /* Base Colors */
  color: rgb(247, 245, 242); /* button text color */
  border: 1px solid rgb(76, 43, 26); /* border color */
  border-radius: 8px;

  /* Background Animation Setup */
  background-color: transparent;
  background-image:
    linear-gradient(rgb(76, 43, 26), rgb(76, 43, 26)), /* initial gradient */
    linear-gradient(rgb(247, 245, 242), rgb(247, 245, 242)); /* hover gradient */
  background-size:
    101% 101%, /* initial visible brown layer */
    0 101%;     /* hidden cream layer */
  background-position: right center;
  background-repeat: no-repeat;

  justify-content: center;
  align-items: center;
  column-gap: 1.125rem;
  padding: 0.65rem 2.75rem;

  transition:
    background-size 0.45s cubic-bezier(0.785, 0.135, 0.15, 0.86),
    background-position 0.45s step-end,
    color 0.45s cubic-bezier(0.785, 0.135, 0.15, 0.86),
    border 0.45s cubic-bezier(0.785, 0.135, 0.15, 0.86);

  display: inline-flex;
  position: relative;
  font-weight: 600;
}

/* 🔥 Hover Effect (same behavior as your example) */
.custom-button:hover {
  color: rgb(76, 43, 26); /* text color switches to brown */
  border-color: rgb(76, 43, 26); /* border changes to brown */
  background-position: left center; /* move background */
  background-size:
    0 101%,     /* hide brown layer */
    101% 101%;  /* reveal cream layer */
}


.st-product-quantity-form {
    max-width: 238px;
    display: flex;
    /* flex-direction: column; */
    gap: 5px;
    /* align-items: start; */
    align-items: center;
}

.st-product-quantity-form label {
    font-weight: 400;
    font-size: 13px;
    line-height: 18px;
    letter-spacing: 1px;
    /* margin-bottom: 12px; */
    text-transform: uppercase;
}

.st-product-quantity-form-input-block {
    border: 1px solid rgb(var(--border-color));
    padding: 5px;
}

.st-product-quantity-form div.value {
    /* background-color: #fff; */
    font-weight: 400;
    font-size: 16px;
    line-height: 18px;
    letter-spacing: 1px;
    /* position: relative;
    border-bottom: .5px solid #0000008c; */
    height: 30px;
    display: flex;
    align-items: center;
    gap: 5px;
}

.st-product-quantity-form div.value input {
    font-size: 14px;
    height: 30px;
    /* width: 100%; */
    width: 60%;
    -moz-appearance: textfield; /* Firefox */
    /* border-bottom: .5px solid #0000008c; */
    background: transparent;
    text-align: center;
}

.st-product-quantity-form div.value input:focus,
.st-product-quantity-form div.value input:focus-visible {
    outline: none;
    box-shadow: none;
}

/* Remove arrows in Chrome, Safari, Edge, Opera */
.st-product-quantity-form div.value input::-webkit-outer-spin-button,
.st-product-quantity-form div.value input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}


.st-product-quantity-form .sqf-plus {
    padding: 5px;
    /* background: #3f3f3f1c; */
    display: flex;
    align-items: center;
    justify-content: center;
    height: 30px;
    width: 30px;
}

.st-product-quantity-form .sqf-minus {
    padding: 5px;
    /* background: #3f3f3f1c; */
    display: flex;
    align-items: center;
    justify-content: center;
    height: 30px;
    width: 30px;
}

slideshow-carousel video,
slideshow-carousel video-media {
    min-width: 100% !important;
    min-height: 75vh !important;
    height: 75vh !important;
    max-height: 700px !important;
}

.button.calendly-modal {
    z-index: 10 !important;
}

#swym-plugin #swym-anchor[data-position=bottom-right] a, #swym-hosted-plugin #swym-anchor[data-position=bottom-right] a {
    background: #000;
}

.slideshow__volume-control button {
    background: transparent;
}

.gorgias-chat-key-1vly0ou {
    z-index: 999999 !important;
}

/* .cky-preference-wrapper {
    color: #4c2b1a;
    border-color: #f7f5f2;
    background-color: #f7f5f2;
} */

/* installation-guides */
/* .installation-guides-banner-block {
    margin-top: 41px;
} */

.installation-guides-page-title {
    font-family: var(--heading-font-family);
    font-weight: 400;
    font-size: clamp(22px, 2.5vw, 36px);
    line-height: 100%;
    letter-spacing: normal;
}

.installation-guides-page-text-block {
    margin-top: 15px;
}

.installation-guides-page-text-block p,
.installation-guides-page-text-block span,
.installation-guides-page-text-block a,
.installation-guides-page-text-block li, {
    font-size: clamp(14px, 1.111vw, 16px);
    font-weight: 400;
    line-height: 168.75%;
    letter-spacing: normal;
}

.installation-guides-page-btn-block {
    margin-top: 20px;
}

.installation-guides-page-btn {
-webkit-appearance: none;
  appearance: none;
  text-transform: uppercase;
  font-family: inherit;
  letter-spacing: 1.4px;
  text-shadow: none;
  text-align: center;
  cursor: pointer;
  color: rgba(255, 255, 255, 1);
  border: 1px solid rgba(76, 43, 26, 1);
  background-color: transparent;
  background-image:
    linear-gradient(rgba(76, 43, 26, 1), rgba(76, 43, 26, 1)),
    linear-gradient(rgba(255, 255, 255, 1), rgba(255, 255, 255, 1)); 
  background-size:
    101% 101%, 
    0 101%;    
  background-position: right center;
  background-repeat: no-repeat;
  justify-content: center;
  align-items: center;
  column-gap: 1.125rem;
  padding: 10px 44px;
  transition:
    background-size 0.45s cubic-bezier(0.785, 0.135, 0.15, 0.86),
    background-position 0.45s step-end,
    color 0.45s cubic-bezier(0.785, 0.135, 0.15, 0.86),
    border 0.45s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  display: inline-flex;
  position: relative;
  font-weight: 500;
}

.installation-guides-page-btn:hover {
  color: rgba(76, 43, 26, 1);
  border-color: rgba(76, 43, 26, 1);
  background-position: left center;
  background-size:
    0 101%,    
    101% 101%;  
}

.installation-guides-preview-wrapper {
    display: flex;
    flex-direction: column;
    align-items: start;
    width: 100%;
    margin: 20px 0;
    overflow: hidden; /* This kills the X-axis scroll */
}

.installation-guides-pdf-frame-container {
    width: 100%;
    max-width: 1000px;
    height: 600px;
    overflow: hidden;
    position: relative;
    border: 1px solid #e5e5e5;
    background: #eee;
}

.installation-guides-pdf-frame-container {
    margin-top: 20px;
}

.installation-guides-pdf-frame-container iframe {
    max-width: 1000px;
    width: 100%;
    height: 600px;
}

.installation-guides-video-block {
    margin-top: clamp(36px, 5.347vw, 77px);
}

.installation-guides-video-title {
    font-family: var(--heading-font-family);
    font-weight: 400;
    font-size: clamp(22px, 2.5vw, 36px);
    line-height: 100%;
    letter-spacing: normal;
}

.installation-guides-video-embed-block iframe {
    width: 100%;
    height: 672px;
    display: block;
}

.installation-guides-video-embed-block {
    margin-top: 25px;
}

.bordered-bottom {
    border-bottom: 1px solid rgb(var(--border-color));
}

.bordered-top {
    border-top: 1px solid rgb(var(--border-color));
}

/* Tiles installation guide */
.installation-guide-content-with-grid-main-title-text-block {
    max-width: 850px;
    width: 100%;
    margin: 0 auto 30px;
}

.installation-guide-content-with-grid-main-title {
    font-size: clamp(24px, 2.5vw, 36px);
    font-weight: 400;
    font-family: var(--heading-font-family);
    line-height: 100%;
    letter-spacing: normal;
    margin-bottom: 20px;
    text-align: center;
}

.installation-guide-content-with-grid-main-text-block {
    text-align: center;
}

.installation-guide-content-with-grid-main-text-block p,
.installation-guide-content-with-grid-main-text-block span,
.installation-guide-content-with-grid-main-text-block a,
.installation-guide-content-with-grid-main-text-block li, {
    font-size: clamp(14px, 1.111vw, 16px);
    font-weight: 400;
    line-height: 168.75%;
    letter-spacing: normal;
    text-align: center;
}

.installation-guide-content-with-grid-how-find-title-block {
    text-align: center;
    margin-bottom: 40px;
}

.installation-guide-content-with-grid-how-find-title {
    font-size: clamp(18px, 1.667vw, 24px);
    font-weight: 400;
    font-family: var(--heading-font-family);
    line-height: 112.5%;
    letter-spacing: normal;
    text-align: center;
}

.installation-guide-content-with-grid-tips-list-block {
    padding: 24px 0;
}

.installation-guide-content-with-grid-tips-list {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: center;
    gap: 28px;
    margin-inline-start: 0;
}

.installation-guide-content-with-grid-tips-box {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding-inline-start: 0 !important;
}

.installation-guide-content-with-grid-tips-dot-block {
    background-color: transparent;
    border: 0.5px solid #0000001A;
    width: 14px;
    height: 14px;
    border-radius: 14px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.installation-guide-content-with-grid-tips-dot {
    width: 6px;
    height: 6px;
    background-color: #4C2B1A;
    border-radius: 6px;
}

.installation-guide-content-with-grid-area {
    margin-top: clamp(30px, 4.167vw, 60px);
}

.installation-guide-content-with-grid-innerarea {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-items: start;
    gap: 10px;
    list-style: none;
}

.installation-guide-content-with-grid-box {
    background-color: transparent;
    border: 1px solid #0000000D;
    padding: 5px;
}

.installation-guide-content-with-grid-img-block {
    width: 100%;
}

.installation-guide-content-with-grid-img-block img {
    width: 100%;
    height: 280px;
    object-fit: cover;
    display: block;
    object-position: bottom;
}

.installation-guide-content-with-grid-button {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px;
    gap: 10px;
}

.installation-guide-content-with-grid-button svg {
    display: block;
    width: 24px;
    height: 24px;
}

.installation-guide-content-with-grid-button:hover svg path {
    stroke: #4C2B1A;
}


body.page-list-collections .content-over-media img {
    transform: none;
    aspect-ratio: 3 / 2;
}

body.page-list-collections .content-over-media--xs {
    --content-over-media-height: unset;
}

body.page-list-collections .content-over-media {
    --content-over-media-gap: 1.25rem !important;
}
body.page-list-collections .content-over-media:has(>.prose):not(:has(>.prose .button:last-child)) {
    row-gap: var(--content-over-media-calculated-row-gap) !important;
}

/* Trade app styling */
.trade-portal__button, .tp-remove {
    -webkit-appearance: none;
  appearance: none;
  text-transform: uppercase;
  font-family: inherit;
  letter-spacing: 1.4px !important;
  text-shadow: none !important;
  text-align: center !important;
  cursor: pointer !important;
  color: rgba(255, 255, 255, 1) !important;
  border: 1px solid rgba(76, 43, 26, 1) !important;
  background-color: transparent !important;
  background-image:
    linear-gradient(rgba(76, 43, 26, 1), rgba(76, 43, 26, 1)),
    linear-gradient(rgba(255, 255, 255, 1), rgba(255, 255, 255, 1)) !important; 
  background-size:
    101% 101%, 
    0 101% !important;    
  background-position: right center !important;
  background-repeat: no-repeat !important;
  justify-content: center !important;
  align-items: center !important;
  column-gap: 1.125rem !important;
  padding: 10px 44px !important;
  transition:
    background-size 0.45s cubic-bezier(0.785, 0.135, 0.15, 0.86),
    background-position 0.45s step-end,
    color 0.45s cubic-bezier(0.785, 0.135, 0.15, 0.86),
    border 0.45s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  display: inline-flex;
  position: relative;
  font-weight: 500;
  background: transparent;
  border-radius: 0 !important;
}

.trade-portal__button:hover, .tp-remove:hover {
  color: rgba(76, 43, 26, 1) !important;
  border-color: rgba(76, 43, 26, 1) !important;
  background-position: left center !important;
  background-size:
    0 101%,    
    101% 101% !important;  
} 

.trade-portal {
    max-width: 600px !important;
    margin: 0 auto !important;
    background: transparent !important;
    border-radius: 0 !important;
}

.trade-portal:has([data-portal-panel="approved"]:not([hidden])) {
    max-width: 1024px !important;
} 

.trade-portal h1, .trade-portal h2, .trade-portal h3, .trade-portal h4, .trade-portal h5, .trade-portal h6, .trade-portal p,
.trade-portal a, .trade-portal span, .trade-portal li, .trade-portal label, .trade-portal input, .trade-portal select, 
.trade-portal textarea, .trade-portal button, .trade-portal div {
    font-family: inherit !important;
    font-family: Manrope, sans-serif !important;
    font-family: var(--text-font-family) !important;
}

.trade-portal h1, .trade-portal h2, .trade-portal h3, .trade-portal h4, .trade-portal h5, .trade-portal h6, .trade-portal p, .trade-portal span, .trade-portal li, .trade-portal label, .trade-portal input, .trade-portal select, 
.trade-portal textarea, .trade-portal div, .trade-portal__tab {
    color: rgba(76, 43, 26, 1) !important;
}

.trade-portal input, .trade-portal select {
    background: transparent;
    background-color: transparent;
}

.trade-portal__tab--active {
    color: rgba(76, 43, 26, 1) !important;
    border-bottom: 2px solid rgba(76, 43, 26, 1) !important;
}

.trade-portal__tabs {
    padding: 0 !important;
}

.trade-portal__progress {
    background: #fff !important;
    border: 1px solid rgba(76, 43, 26, 1) !important;
}

.trade-portal__progress-bar {
    background: rgba(76, 43, 26, 1) !important;
}

.trade-portal__status {
   background: #fff !important;
}

.st-cart-shipping-note {
    color: rgb(var(--text-color) / .65);
    font-size: 12px;
}

.st-cart-shipping-note-mobile-block {
    display: none;
}

.st-cart-shipping-note-mobile-text-block {
    display: none;
}

@media screen and (min-width: 1001px) {
    body.collection-all #main {
        margin-top: calc(var(--header-height) + 25px) !important;
    }
}

@media (max-width: 1320px) {
    .installation-guide-content-with-grid-innerarea {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    .installation-guide-content-with-grid-img-block img {
        height: 300px;
    }
}

@media (max-width: 1090px) {
    /* .installation-guides-banner-block {
        margin-top: 61px;
    } */
    .installation-guides-video-embed-block iframe {
        height: 550px;
    }
    .installation-guide-content-with-grid-innerarea {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 992px) {
    .st-quote-form-block {
        padding: 20px;
    }
    /* .installation-guides-banner-block {
        margin-top: 0;
    } */
    .installation-guides-video-embed-block iframe {
        height: 480px;
    }
}

@media (max-width: 786px) {
    .note-desk {
        display: none;
    }
    .st-cart-shipping-note-mobile-block {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        cursor: pointer;
        padding: 10px;
        background-color: transparent;
        border: 1px solid rgba(76, 43, 26, 1);
        text-align: center;
        margin-top: 5px;
    }
    .st-cart-shipping-note-mobile-block p {
        font-weight: 700;
        font-size: 14px;
        line-height: 100%;
        letter-spacing: normal;
    }
    .st-cart-shipping-note-mobile-close-arrow {
        display: flex;
        text-align: end;
        /* width: 100%; */
        align-items: center;
        justify-content: right;
        margin-bottom: 5px;
    }
    .st-cart-shipping-note-mobile-close-arrow svg {
        width: 18px;
        height: 18px;
        display: block;
    }
    .st-cart-shipping-note-mobile-text-block {
        position: absolute;
        bottom: 0;
        right: 0;
        width: 100%;
        height: 100%;
        padding: 20px;
        background-color: rgb(247, 245, 242, 1);
        z-index: 2;
        transition: all 0.3s ease-in-out;
        opacity: 0;
        visibility: hidden;
        transform: translateY(100%);
        display: block;
    }
    .st-cart-shipping-note-mobile-text-block.active {
        transition: all 0.3s ease-in-out;
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }
}

@media (max-width: 520px) {
    .downloads-card__media iframe {
        height: 380px !important;
    }
    .st-quote-form-innerblock {
        height: 100%;
    }
    .st-quote-main-form-input-block {
        flex-direction: column;
    }
    .installation-guides-video-embed-block iframe {
        height: 350px;
    }
    .installation-guides-pdf-frame-container {
        height: 500px;
        width: 100vw; 
        margin-left: calc(-50vw + 50%);
    }
    
    .installation-guides-pdf-frame-container iframe {
        min-width: 100%;
        width: 1px;
        min-width: 100%;
    }
    .installation-guide-content-with-grid-innerarea {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
    .installation-guide-content-with-grid-img-block img {
        height: 450px;
    }
}
/* 28/11/2025 - Discount Badge */
.discount-badge { 
    width: max-content;
    background: #4c2b1a;
} 