/*!
 * Site Specific Frontend Styles for RDI
 *
 * Frontend-only styles for the RDI site. Block style variations
 * and shared CSS variables are in blocks.css instead.
 *
 * @see blocks.css for block styles + spacing variables (loads in both contexts)
 */

/* A11y Fixes */

/* Allow for esc key to close Kadence submenu */
.nav--toggle-sub li:hover > ul,
.nav--toggle-sub li.menu-item--toggled-on > ul,
.nav--toggle-sub li:not(.menu-item--has-toggle):focus > ul {
    display: none;
}

.main-navigation .menu-item .sub-menu {
    display: none;
}
.main-navigation .menu-item .sub-menu.submenu-open,
.main-navigation .menu-item .sub-menu.toggle-show {
    display: block;
}

/* Kadence Modal Link A11Y Fixes */
body .kt-blocks-modal-link:not(.kb-btn-global-inherit):focus-within {
    outline: inherit;
}

/** End Kadence Modal Link A11Y Fixes */

/** Menu A11Y Fixes */
body:not(.hide-focus-outline)
    .header-navigation
    li.menu-item--has-toggle
    > a:focus
    .dropdown-nav-toggle {
    opacity: 1 !important;
}
body #search-drawer .drawer-inner form ::-webkit-input-placeholder {
    opacity: 1;
}
#search-drawer input:-webkit-autofill,
#search-drawer input:-webkit-autofill:focus {
    transition: background-color 0s 600000s, color 0s 600000s !important;
}

/** End Menu A11Y Fixes */


/**
 * ==========================================================================
 * Admin Bar Styles
 * ==========================================================================
 */

 body.admin-bar .kt-modal-container {
    top: calc(var(--kb-admin-bar-visible) * 2) !important;
 }


/**
 * ==========================================================================
 * Kadence Header Styles
 * ==========================================================================
 */

/* Base transitions (on non-sticky state so reverse animation works) */
.kb-header-sticky-wrapper {
  transition: box-shadow 0.3s ease-in-out;
}

/* Box shadow for sticky header */

.kb-header-sticky-wrapper.item-is-fixed,
.kb-header-sticky-wrapper.item-is-stuck {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.kb-header-sticky-wrapper.item-is-fixed .custom-logo,
.kb-header-sticky-wrapper.item-is-stuck .custom-logo {
    transition: max-width 0.3s ease-in-out;
}

/* Base state - transition always ready */
.ae-header-middle .kadence-header-row-inner,
.ae-header-bottom .kadence-header-row-inner {
  transition: transform 0.3s ease-in-out;
  transform-origin: center center;
  will-change: transform;
}

/* Sticky state - just the transform */
.kb-header-sticky-wrapper.item-is-fixed .ae-header-middle .kadence-header-row-inner,
.kb-header-sticky-wrapper.item-is-stuck .ae-header-middle .kadence-header-row-inner {
  transform: scale(0.85);
  padding-top: 0;
  padding-bottom: 0;
}

.kb-header-sticky-wrapper.item-is-fixed .ae-header-middle .kb-button,
.kb-header-sticky-wrapper.item-is-stuck .ae-header-middle .kb-button {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
}

/* Sticky state - just the transform */
.kb-header-sticky-wrapper.item-is-fixed .ae-header-bottom .kadence-header-row-inner,
.kb-header-sticky-wrapper.item-is-stuck .ae-header-bottom .kadence-header-row-inner {
  transform: scale(0.95);
}

/* Header Row Center */
.wp-block-kadence-header-row-center {
    position: relative;
    z-index: 1;
}

/* Replace Default Navigation Dropdown Arrow with Custom Arrow */
.wp-block-kadence-navigation .kb-nav-dropdown-toggle-btn svg {
    display: none !important;
}

.wp-block-kadence-navigation .kb-nav-dropdown-toggle-btn::after {
    content: "" !important;
    display: inline-block;
    width: 10px;
    height: 100%;
    background: url("data:image/svg+xml,%3Csvg width='12' height='16' viewBox='0 0 12 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.28125 11.7188L1.28125 7.71875C1 7.4375 0.90625 7 1.0625 6.625C1.21875 6.25 1.59375 6 2 6H10C10.4062 6 10.75 6.25 10.9062 6.625C11.0625 7 10.9688 7.4375 10.6875 7.71875L6.6875 11.7188C6.3125 12.125 5.65625 12.125 5.28125 11.7188Z' fill='%23254749'/%3E%3C/svg%3E")
        no-repeat center / contain;
    transition: transform 0.2s ease-in-out !important;
    transform: rotate(0);
    transform-origin: center;
}

/* Rotate custom arrow when submenu is open */
.wp-block-kadence-navigation li.menu-item--toggled-on > .kb-link-wrap > .kb-nav-dropdown-toggle-btn::after,
.wp-block-kadence-navigation .kb-nav-dropdown-toggle-btn[aria-expanded="true"]::after {
    transform: rotate(180deg);
}

.wp-block-kadence-navigation .kb-nav-dropdown-toggle-btn[aria-expanded="false"]::after {
    transform: rotate(0deg);
}

/* Background color on nav item when submenu is open */
.wp-block-kadence-navigation .kb-link-wrap {
    transition: background-color 0.2s ease-in-out;
}

.wp-block-kadence-navigation li.menu-item--toggled-on > .kb-link-wrap {
    background-color: var(--global-palette8);
}

.wp-block-kadence-navigation li:not(.menu-item--toggled-on) > .kb-link-wrap {
    background-color: transparent;
}

/* Accordion Panel Overrides in Header */
header .kt-accordion-panel {
    position: absolute !important;
}

header .kt-accodion-icon-style-arrow .kt-blocks-accordion-title-wrap {
    padding-right: 0;
}

header .kt-accodion-icon-style-arrow .kt-blocks-accordion-icon-trigger {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

header .kt-accodion-icon-style-arrow .kt-blocks-accordion-icon-trigger::before {
    display: none;
}

header .kt-accodion-icon-style-arrow .kt-blocks-accordion-icon-trigger::after {
    content: "" !important;
    display: block;
    width: 11px;
    height: 6px;
    background: url('data:image/svg+xml,<svg width="11" height="6" viewBox="0 0 11 6" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10.125 0L5.0625 5.4375L0 0H10.125Z" fill="%23254749"/></svg>')
        transparent no-repeat center / contain !important;
    transition: transform 0.2s ease-in-out !important;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(0deg);
    transform-origin: 50% 50%;
    pointer-events: none;
}

header
    .kt-accodion-icon-style-arrow
    .kt-blocks-accordion-header.kt-accordion-panel-active
    .kt-blocks-accordion-icon-trigger::after {
    transform: translate(-50%, -50%) rotate(180deg) !important;
}

header
    .kt-accodion-icon-style-arrow
    .kt-blocks-accordion-header[aria-expanded="true"]
    .kt-blocks-accordion-icon-trigger::after {
    transform: translate(-50%, -50%) rotate(180deg) !important;
}

header
    .kt-accodion-icon-style-arrow
    .kt-blocks-accordion-header[aria-expanded="false"]
    .kt-blocks-accordion-icon-trigger::after {
    transform: translate(-50%, -50%) rotate(0deg) !important;
}

/* Hide Professional menu item on homeowner sites and vice versa */
.belgard-homeowner .belgard-professional-nav,
.belgard-professional .belgard-homeowner-nav {
    display: none !important;
}

/* Header Responsive Customizations */
@media (max-width: 1024px) {

    /* Ensure top header row (with logo) is above accordion panels on mobile. */
    .wp-block-kadence-header-row-top {
        position: relative;
        z-index: 51;
    }

    /* Set accordion panels to full width on mobile. */
    header .kt-accordion-panel {
        left: 0;
        right: 0;
    }
}

@media (min-width: 1025px) {

    /* Brand Navigation - Active menu item */
    .wp-block-kadence-navigation.navigation-desktop-orientation-horizontal .navigation[class*="navigation-desktop-style-underline"] > .menu-container > .menu > .menu-item.active-site__menu-item > .kb-link-wrap > .kb-nav-link-content {
        font-weight: 700;
    }

    /* Brand Navigation - Active menu item underline */
    .wp-block-kadence-navigation.navigation-desktop-orientation-horizontal .navigation[class*="navigation-desktop-style-underline"] > .menu-container > .menu > .menu-item.active-site__menu-item > .kb-link-wrap > .kb-nav-link-content::after {
        transform: scale(1) translate(0);
        right: 0;
    }

    /* Main Navigation - Submenu hover */
    body .wp-block-kadence-navigation .sub-menu .kb-nav-link-content:hover {
        text-decoration: underline !important;
    }
}

/**
 * ==========================================================================
 * General Site Block Styles
 * ==========================================================================
 */

/* Full Width Images */
figure.alignfull {
	margin: 0 !important;
	width: 100% !important;
	max-width: 260px;
}

/* Utility Footer */
.utility-footer a {
    text-decoration: none;
}
.utility-footer a:hover,
.utility-footer a:focus {
    text-decoration: underline;
}


/**
 * ==========================================================================
 * Kadence Search
 * ==========================================================================
 */

.kb-search {
    width: 100%;
}
.kb-search .kb-search-icon-submit {
    right: 0;
}


/**
 * ==========================================================================
 * Kadence Slider / Carousel (Splide)
 * ==========================================================================
 */

/* Kadence Slider Accessibility */

.kb-splide .splide__pagination__page:focus-visible {
    outline: 2px solid #000;
}

.kb-splide.kb-slider-group-arrows .splide__arrows .splide__arrow:focus:focus-visible {
    outline: revert !important;
    outline-offset: 1px !important;
}

/* Kadence Slider Arrows – Default */

body .kb-splide .splide__arrow {
    border-radius: 0;
}

/* Kadence Slider Arrows – Group Style */
.kb-splide.kb-slider-group-arrows .splide__arrows .splide__arrow {
    width: 50px;
    height: 50px;
    opacity: 1 !important;
}

/* Kadence Slider Arrows – Custom Center-Positioned */
.kt-carousel-arrowstyle-custom.kb-slider-arrow-position-center.kb-splide .splide__arrow {
    opacity: 1;
    border-radius: 100px;
    width: 35px;
    height: 35px;
    line-height: 35px;
}

/* Kadence Slider Arrows – Bottom Right position */
body .kb-splide.kb-slider-arrow-position-bottom-right .splide__arrows {
    bottom: 0;
    right: 0;
}

.kt-carousel-arrowstyle-custom.kb-slider-arrow-position-center.kb-splide .splide__arrow--prev {
    left: -15px;
}

.kt-carousel-arrowstyle-custom.kb-slider-arrow-position-center.kb-splide .splide__arrow--next {
    right: -15px;
}

@media screen and (min-width: 768px) {
    .kt-carousel-arrowstyle-custom.kb-slider-arrow-position-center.kb-splide .splide__arrow {
        width: 60px;
        height: 60px;
        line-height: 60px;
    }

    .kt-carousel-arrowstyle-custom.kb-slider-arrow-position-center.kb-splide .splide__arrow--prev {
        left: -100px;
    }

    .kt-carousel-arrowstyle-custom.kb-slider-arrow-position-center.kb-splide .splide__arrow--next {
        right: -100px;
    }
}

/* Kadence Slider Dots – Default */
body .kt-carousel-dotstyle-custom.kb-splide .splide__pagination,
.kb-splide ul.splide__pagination.splide__pagination {
    bottom: -75px;
}

.kt-carousel-dotstyle-custom.kb-splide .splide__pagination__page {
    width: 24px;
    height: 24px;
    opacity: 1 !important;
    margin: 0 12px;
}

/* Kadence Slider Dots – Custom (.slider--custom-dots) */
.slider--custom-dots .kt-carousel-dotstyle-custom.kb-splide .splide__pagination__page {
    width: 15px;
    height: 15px;
    margin: 0 15px;
}

.slider--custom-dots .kb-splide .splide__pagination,
.slider--custom-dots .kb-splide ul.splide__pagination.splide__pagination {
    bottom: -40px;
}

@media screen and (min-width: 1025px) {
    .slider--custom-dots .kt-carousel-dotstyle-custom.kb-splide .splide__pagination__page {
        width: 22px;
        height: 22px;
        margin: 0 10px;
    }

    .slider--custom-dots .kb-splide .splide__pagination,
    .slider--custom-dots .kb-splide ul.splide__pagination.splide__pagination {
        bottom: -55px;
    }
}

/* Kadence Gradient overlay for columns on mobile. */
@media screen and (max-width: 1024px) {
    .wp-block-kadence-column.linear-gradient_0deg_mobile > .kt-inside-inner-col::before {
        background-image: linear-gradient(
            180deg,
            var(--global-palette1) 0%,
            rgba(9, 41, 71, 0) 40%
        );
    }
}

/* Kadence Dark gradient overlay for slider slides on mobile. */
@media screen and (max-width: 1024px) {
    .slider--overlay-mobile.wp-block-kadence-slider .kb-splide .kb-advanced-slide-overlay {
        background: linear-gradient(
            180deg,
            rgba(4, 18, 32, 0) 27.43%,
            var(--global-palette2) 61.73%
        );
    }
}

/* Kadence fixed slide height - ensure they expand to full height */
.kb-advanced-slide,
.kb-advanced-slide-inner-wrap {
    height: 100%;
}

/**
 * ==========================================================================
 * Kadence Buttons
 * ==========================================================================
 */

body .wp-block-kadence-advancedbtn .kb-button.kt-btn-size-small {
    font-size: 1rem;
    line-height: 1.25;
    padding: .375rem .5rem;
}

.kb-button.kt-btn-size-standard {
    padding: 0.875rem 1rem;
    font-size: clamp(1rem, 0.9393rem + 0.2589vw, 1.25rem);
    line-height: 1.2;
}

body .wp-block-kadence-advancedbtn .kb-button.kt-btn-size-large {
    font-size: clamp(1.25rem, 0.9637rem + 0.4469vw, 1.5rem);
    line-height: 1.2;
    padding: 1.5625rem 1.875rem;
}

/* Button FILL  */

.kb-button,
.kb-button.kb-btn-global-fill {
    border-radius: 0;
    border-width: 2px;
}

.kb-button.kb-btn-global-fill {
    background-color: var(--global-palette1);
    border-color: var(--global-palette1);
    color: var(--global-palette9);
}

.kb-button.kb-btn-global-fill:hover,
.kb-button.kb-btn-global-fill:focus {
    background-color: var(--global-palette8);
    border-color: var(--global-palette8);
    color: var(--global-palette1);
}

/* Button OUTLINE (default green) */

.button.kb-btn-global-outline:hover,
.button.kb-btn-global-outline:focus {
    background-color: var(--global-palette1) !important;
}

/**
 * ==========================================================================
 * Kadence Accordion
 * ==========================================================================
 */

/* Kadence Accordion Layout */
.accordion-wrapper.kb-row-layout-wrap > .kt-row-column-wrap {
    position: relative;
}

/* Kadence Accordion Header & Active State */
.accordion-wrapper.kb-row-layout-wrap
    .kt-blocks-accordion-header.kt-accordion-panel-active {
    padding-top: var(--wp--preset--spacing--sm) !important;
    padding-bottom: var(--wp--preset--spacing--sm) !important;
}

/* Kadence Accordion Image-Outside Variant (.accordion--image-outside) */
.accordion--image-outside .kt-blocks-accordion-header {
    transition: font-size 0.5s ease, padding 0.5s ease, border none;
    line-height: 1.2;
    font-size: var(--wp--preset--font-size--x-large) !important;
}

/* Hide inline accordion images on desktop; shown only on mobile. */
@media screen and (min-width: 1025px) {
    .accordion-wrapper .kt-accordion-pane .accordion__image {
        display: none;
    }
}

/* Kadence Accordion Typography */
.accordion-content-title-clamp {
    font-size: var(--wp--preset--font-size--large) !important;
}

/* Kadence Accordion Icon Trigger */
.kt-blocks-accordion-icon-trigger {
    height: 20px;
    width: 20px;
    min-width: 20px;
}

.kt-accodion-icon-style-basic .kt-blocks-accordion-icon-trigger::after,
.kt-accodion-icon-style-basic .kt-blocks-accordion-icon-trigger::before {
    height: 2px;
}


/**
 * ==========================================================================
 * Third Party Styles
 * ==========================================================================
 */

 /* CookieYes Cookies */
 .cky-preference-header .cky-btn-close img {
    filter: brightness(0);
}

@media (max-width: 1024px) {
    body .cky-btn-revisit-wrapper {
        left: auto;
        right: 15px;
    }
}

/**
 * ==========================================================================
 * Scrollbar Styles
 * ==========================================================================
 */

body ::-webkit-scrollbar {
    background-color: #fff;
    width: 16px;
}

body ::-webkit-scrollbar-track {
    background-color: #fff;
}

body ::-webkit-scrollbar-thumb {
    background-color: #babac0;
    border-radius: 16px;
    border: 4px solid #fff;
}

body ::-webkit-scrollbar-button {
    display: none;
}

/**
 * ==========================================================================
 * FacetWP Styles
 * ==========================================================================
 */

/* Base facet reset */
.facetwp-facet {
    margin-bottom: 0 !important;
}

.facetwp-input-wrap {
    display: inline-block;
    width: 100%;
    margin-bottom: var(--wp--preset--spacing--sm);
}

/* Hide facet wraps when facet has no choices (server-side marker via facetwp_facet_html). */
.is-style-facet-wrap:has(.facetwp-empty) {
    display: none !important;
}

/* fSelect dropdown */
.facetwp-type-fselect {
    margin-bottom: var(--wp--preset--spacing--xs) !important;
}

.fs-wrap {
    width: 100% !important;
}

.fs-label-wrap {
    font-size: var(--wp--preset--font-size--small);
    width: 100%;
    border-radius: 0;
    border: 1px solid var(--global-palette7) !important;
}

.fs-open .fs-label-wrap {
    border-bottom: none !important;
    border-radius: 0;
}

.fs-label-wrap .fs-label {
    padding: 15px 30px 15px 15px !important;
}

.fs-option,
.fs-search,
.fs-optgroup-label {
    padding: 8px 15px !important;
}

.fs-dropdown {
    border-left: 1px solid var(--global-palette7) !important;
    border-right: 1px solid var(--global-palette7) !important;
    border-bottom: 1px solid var(--global-palette7) !important;
    border-radius: 0;
    padding-bottom: var(--wp--preset--spacing--xxs);
}

/* Checkboxes */
.facetwp-checkbox {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0.5' y='0.5' width='23' height='23' rx='3.5' fill='white'/%3E%3Crect x='0.5' y='0.5' width='23' height='23' rx='3.5' stroke='%23949494'/%3E%3C/svg%3E") !important;
    background-size: 20px 20px !important;
    font-weight: 500;
    padding-left: var(--wp--preset--spacing--md) !important;
    margin-bottom: var(--wp--preset--spacing--xxs) !important;
}

.facetwp-checkbox.checked {
    background-image: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="24" height="24" rx="4" fill="%23092947"/><path d="M18.6875 7.3125C19.0938 7.6875 19.0938 8.34375 18.6875 8.71875L10.6875 16.7188C10.3125 17.125 9.65625 17.125 9.28125 16.7188L5.28125 12.7188C4.875 12.3438 4.875 11.6875 5.28125 11.3125C5.65625 10.9062 6.3125 10.9062 6.6875 11.3125L10 14.5938L17.2812 7.3125C17.6562 6.90625 18.3125 6.90625 18.6875 7.3125Z" fill="white"/></svg>') !important;
}

/* Toggle (show more / less) */
.facetwp-toggle {
    display: block;
    font-size: var(--wp--preset--font-size--small);
    font-weight: 700;
    margin-bottom: var(--wp--preset--spacing--xs);
}

/* Location / Proximity */
body .facetwp-facet input.facetwp-location {
    min-width: 100%;
}

.location-results {
    border-bottom: solid 1px var(--global-palette6) !important;
    border-left: solid 1px var(--global-palette6) !important;
    border-right: solid 1px var(--global-palette6) !important;
    padding-bottom: 5px;
    z-index:1;
}

.location-result {
    font-size: clamp(1rem, 0.9697rem + 0.1294vw, 1.125rem) !important;
    padding: 5px 15px !important;
    border-bottom: none !important;
}

.location-result .result-main {
    font-size: clamp(1rem, 0.9697rem + 0.1294vw, 1.125rem) !important;
    color: var(--global-palette3) !important;
}

.location-result.active,
.location-result:hover {
    background-color: rgb(227 232 228 / 50%) !important;
}

.location-attribution {
    display: none !important;
}

/* Radius dropdown */
.facetwp-radius-dropdown {
    width: 100%;
    height: 50px;
    border-radius: 0;
    border-color: var(--global-palette6);
    margin-bottom: var(--wp--preset--spacing--xxs);
}

/* Map */
.facetwp-map-filtering {
    display: none;
}

/* Search */
.facetwp-facet input.facetwp-search {
    width: 100%;
    min-width: auto !important;
    height: 50px;
}

body .facetwp-icon::before {
    background-size: 20px 20px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='search-icon' viewBox='0 0 24 24' width='24' height='24' fill='%23092947'%3E%3Cpath d='M13 5c-3.3 0-6 2.7-6 6 0 1.4.5 2.7 1.3 3.7l-3.8 3.8 1.1 1.1 3.8-3.8c1 .8 2.3 1.3 3.7 1.3 3.3 0 6-2.7 6-6S16.3 5 13 5zm0 10.5c-2.5 0-4.5-2-4.5-4.5s2-4.5 4.5-4.5 4.5 2 4.5 4.5-2 4.5-4.5 4.5z'%3E%3C/path%3E%3C/svg%3E");
}

/* Site search (facet: site_search) */
.facetwp-facet-site_search .facetwp-input-wrap {
    margin-bottom: 0;
}

body .facetwp-facet-site_search_result_count {
    font-size: 1.125rem;
    font-weight: 500;
}

/* Sort */
.facetwp-type-sort select {
    width: 100%;
    min-width: 110px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='6' viewBox='0 0 12 6' fill='none'%3E%3Cpath d='M10.6875 1.71875L6.71875 5.71875C6.5 5.90625 6.25 6 6 6C5.71875 6 5.46875 5.90625 5.28125 5.71875L1.3125 1.71875C1 1.4375 0.90625 1 1.0625 0.625C1.21875 0.25 1.59375 0 2 0H9.96875C10.375 0 10.7188 0.25 10.875 0.625C11.0312 1 10.9688 1.4375 10.6875 1.71875Z' fill='%23092947'/%3E%3C/svg%3E");
    background-position: center right 15px;
}

@media screen and (min-width: 1025px) {
    .facetwp-type-sort select {
        min-width: 155px;
    }
}

/* Reset */
.facetwp-type-reset .facetwp-reset {
    padding: 0;
    border: 0;
    background: transparent;
    font-family: var(--global-body-font-family);
    font-size: 1rem;
    font-weight: 600;
    color: var(--global-palette1);
    text-transform: none;
    text-decoration: underline;
}

/* Active selections */
.facetwp-selections ul {
    margin: 0 !important;
    padding-left: 0 !important;
}

body .facetwp-selections .facetwp-selection-value {
    border: 2px solid var(--global-palette1);
    border-radius: 0;
    margin: 4px var(--global-kb-spacing-xs);
    margin-left: 0;
    background-position: right 10px center;
    padding: 0.75rem 2rem 0.75rem 1rem !important;
    font-weight: 600;
    font-size: var(--wp--preset--font-size--small);
    text-transform: uppercase;
    background-size: 10px 10px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M15.1406 2.39062L9.51562 7.96875L15.0938 13.5469L15.8906 14.3438L14.3438 15.9375L13.5469 15.1406L7.96875 9.5625L2.39062 15.1406L1.59375 15.9375L0 14.3438L0.796875 13.5469L6.375 7.96875L0.796875 2.39062L0 1.59375L1.59375 0L2.39062 0.796875L7.96875 6.42188L13.5469 0.84375L14.3438 0.046875L15.9375 1.59375L15.1406 2.39062Z' fill='%23242529'/%3E%3C/svg%3E");
}

body .facetwp-selections .facetwp-selection-value:hover,
body .facetwp-selections .facetwp-selection-value:focus {
    background-color: var(--global-palette1);
    color: var(--global-palette9);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M15.1406 2.39062L9.51562 7.96875L15.0938 13.5469L15.8906 14.3438L14.3438 15.9375L13.5469 15.1406L7.96875 9.5625L2.39062 15.1406L1.59375 15.9375L0 14.3438L0.796875 13.5469L6.375 7.96875L0.796875 2.39062L0 1.59375L1.59375 0L2.39062 0.796875L7.96875 6.42188L13.5469 0.84375L14.3438 0.046875L15.9375 1.59375L15.1406 2.39062Z' fill='%23fff'/%3E%3C/svg%3E");
    background-size: 10px 10px;
}

.facetwp-selection-label {
    display: none;
}

/* Pager */
.facetwp-pager {
    text-align: center;
    margin-top: var(--wp--preset--spacing--sm);
    font-weight: 500;
}

.facetwp-page {
    margin-right: 10px !important;
}

a.facetwp-page {
    text-decoration: none;
}

.facetwp-pager .facetwp-page:not(.dots):not(.next):not(.prev) {
    display: inline-block;
    width: 50px;
    text-align: center;
    line-height: 50px;
    border: 1px solid var(--global-palette6);
    border-radius: 0;
}

.facetwp-pager .facetwp-page:not(.dots):not(.next):not(.prev):hover,
.facetwp-pager .facetwp-page:not(.dots):not(.next):not(.prev):focus,
.facetwp-pager .facetwp-page.active:not(.dots):not(.next):not(.prev) {
    background: var(--global-palette1);
    border-color: var(--global-palette1);
    color: var(--global-palette9);
}


/**
 * ==========================================================================
 * FacetWP Listing Styles - Need to organize and clean up
 * ==========================================================================
 */

.fwpl-layout {
    display: grid;
    gap: var(--global-row-gutter-md) !important;
    grid-template-columns: 1fr;
}

@media screen and (min-width: 600px) {
    .fwpl-layout:not(.site-search) {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (min-width: 1200px) {
    .fwpl-layout:not(.site-search) {
        grid-template-columns: repeat(3, 1fr);
    }
}

.fwpl-layout:not(.products):not(.site-search) .fwpl-result {
    position: relative;
    padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--xs);
    border: 1px solid var(--global-palette7);
    border-radius: 0;
}

.fwpl-tax-product_materials {
    background-color: var(--global-palette8);
    color: var(--global-palette1);
    padding: 3px 5px;
    font-size: var(--global-kb-font-size-md);
}

.product-meta {
    display: grid;
    grid-template-columns: 1fr 80px;
}

.product-tags {
    text-align: right;
    justify-content: end;
}

.product-tag__filter,
.product-tag__filter:hover,
.product-tag__filter:focus {
    color: var(--global-palette3);
    border: 1px solid var(--global-palette3);
    box-shadow: none;
    font-weight: 500;
    font-size: 1rem;
    line-height: 1;
    padding: 11px;
    box-sizing: border-box;
}

.product-cat-listing-wrapper:has(.fwpl-listing:empty) {
    display: none;
}

/* Search Specific Styles */

.fwpl-layout.site-search {
     gap: 0 !important;
}

.fwpl-layout.site-search .fwpl-result  {
    padding-bottom: var(--wp--preset--spacing--sm);
    margin-bottom: var(--wp--preset--spacing--sm);
    border-bottom: solid 1px var(--global-palette7);
}
body .fwpl-layout.site-search .fwpl-row {
    display: grid;
    position: relative;
    column-gap: var(--wp--preset--spacing--gap-md);
}

/* Default (desktop/tablet) layout: image + content */
body .fwpl-layout.site-search .fwpl-row.listing-card--horizontal.listing-card--has-image {
    grid-template-columns: 20% 1fr;
}

/* No-image layout: content only */
body .fwpl-layout.site-search .fwpl-row.listing-card--horizontal.listing-card--no-image {
    grid-template-columns: 1fr;
}

body .fwpl-layout.site-search .listing-card--no-image .listing-card__image {
    display: none;
}

@media screen and (max-width: 600px) {
    body .fwpl-layout.site-search .fwpl-row {
        grid-template-columns: 1fr;
    }

    .fwpl-layout.site-search .listing-card__image img {
        width: 100%;
    }
}

.fwpl-layout.site-search .listing-card__image {
    margin-bottom: 0;
}


/* End Search Specific Styles */

/* Galleries Listing layout */

.fwpl-layout.galleries .fwpl-result {
    border: none !important;
    aspect-ratio: 3 / 2;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.fwpl-layout.galleries {
    list-style: none;
    margin: 0;
    padding: 0;
}

.facetwp-load-more {
    border: 2px solid var(--global-palette1);
    padding: 12px;
}

.facetwp-load-more:hover,
.facetwp-load-more:focus {
    border: 2px solid var(--global-palette1);
    background-color: var(--global-palette1);
    color: var(--global-palette9);
}

.post-type-archive-gallery-cpt .facetwp-type-fselect .fs-arrow {
    border: none;
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M8 13.4062L7.3125 12.7188L1.3125 6.71875L0.59375 6L2 4.59375L2.71875 5.28125L8 10.5938L13.3125 5.28125L14 4.59375L15.4375 6L14.7188 6.71875L8 13.4062Z' fill='%23254749'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 16px 16px;
    right: 14px;
    transition: none;
}

.post-type-archive-gallery-cpt .facetwp-type-fselect:hover .fs-arrow,
.post-type-archive-gallery-cpt .facetwp-type-fselect:focus .fs-arrow {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M8 13.4062L7.3125 12.7188L1.3125 6.71875L0.59375 6L2 4.59375L2.71875 5.28125L8 10.5938L13.3125 5.28125L14 4.59375L15.4375 6L14.7188 6.71875L8 13.4062Z' fill='%23ffffff'/%3E%3C/svg%3E");
}

.post-type-archive-gallery-cpt .facetwp-reset {
    padding: 12px;
    border: 2px solid var(--global-palette1);
    background-color: var(--global-palette9);
    color: var(--global-palette1);
    text-decoration: none;
    text-transform: uppercase;
    font-size: var(--global-kb-font-size-md);
    line-height: 1.2;
}

.post-type-archive-gallery-cpt .facetwp-reset:hover,
.post-type-archive-gallery-cpt .facetwp-reset:focus {
    background-color: var(--global-palette1);
    color: var(--global-palette9);
}

.post-type-archive-gallery-cpt .fs-label-wrap {
    padding: 12px 40px 12px 12px;
    border: 2px solid var(--global-palette1) !important;
    background-color: var(--global-palette9);
    color: var(--global-palette1);
    font-size: var(--global-kb-font-size-md) !important;
    line-height: 1.2;
    text-transform: uppercase;
    font-weight: 600;
}

.post-type-archive-gallery-cpt .fs-label-wrap:hover,
.post-type-archive-gallery-cpt .fs-label-wrap:focus {
    background-color: var(--global-palette1);
    color: var(--global-palette9);
}

.post-type-archive-gallery-cpt .fs-label-wrap .fs-label {
    padding: 0 !important;
}

@media screen and (max-width: 767px) {
    .post-type-archive-gallery-cpt .facetwp-reset {
        width: 100%;
        text-align: left;
    }

     .post-type-archive-gallery-cpt .facetwp-type-fselect {
         margin-bottom: 0 !important;
     }

     .post-type-archive-gallery-cpt .facetwp-selections ul {
         display: block;
     }

     .post-type-archive-gallery-cpt .facetwp-selections li,
     .post-type-archive-gallery-cpt .facetwp-selections .facetwp-selection-value {
         width: 100%;
     }
}

.facet-selections-wrapper:has(.facetwp-selections:empty) {
    display: none;
}

.post-type-archive-gallery-cpt .facetwp-selections ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.post-type-archive-gallery-cpt .fs-wrap.multiple .fs-checkbox {
    position: relative;
    inset: unset;
    display: inline-block;
    height: 14px;
    width: 14px;
    margin-right: 5px;
}

.post-type-archive-gallery-cpt .fs-wrap.multiple .fs-option.selected .fs-checkbox i {
    background-color: var(--global-palette1);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='14' viewBox='0 0 15 14' fill='none'%3E%3Cpath d='M14.8125 1.1875L14.2188 2L6.21875 13L5.53125 13.9375C5.53125 13.9062 3.90625 12.3125 0.71875 9.125L0 8.40625L1.40625 7C1.46875 7.0625 2.78125 8.34375 5.28125 10.875L12.5938 0.8125L13.1875 0L14.8125 1.1875Z' fill='white'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 10px 10px;
}

.post-type-archive-gallery-cpt .facetwp-type-fselect .fs-option .fs-option-label {
    display: inline;
    word-break: auto-phrase;
    white-space: unset;
    line-height: 1.5;
}

.post-type-archive-gallery-cpt .facetwp-selections .facetwp-selection-value {
    background-color: var(--global-palette8);
    color: var(--global-palette1);
}

.post-type-archive-gallery-cpt .fs-wrap.multiple .fs-option .fs-checkbox i {
    border-radius: 0;
}

.post-type-archive-gallery-cpt .fs-dropdown {
    min-width: 250px;
}

/* End Galleries Listing layout */

/* Resources Listing layout */

.fwpl-layout.resources .fwpl-col {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    line-height: 1.2;
}

@media (min-width: 600px) {
    .fwpl-layout.resources .fwpl-result {
        padding-bottom: calc(var(--wp--preset--spacing--sm) + 45px) !important;
    }
}

/* End Resources Listing layout */

.listing-card__image {
    margin-bottom: 24px;
}

.listing-card__image img {
    aspect-ratio: 420 / 385;
    object-fit: cover;
    width: 100%;
}

.fwpl-listing.videos .listing-card__image img {
    aspect-ratio: 16 / 9;
}

.listing-card__title {
    clear: both;
    font-size: var(--wp--preset--font-size--large);
    margin-top: var(--wp--preset--spacing--xxs) !important;
    margin-bottom: 8px;
}

.listing-card__title a {
    text-decoration: none;
    color: var(--global-palette3);
    font-weight: 500;
    text-transform: uppercase;
}

.fwpl-layout:not(.products) .listing-card__title a {
    text-transform: none;
    letter-spacing: -0.25px;
}

.listing-card__title span.product-subtitle {
    display: block;
    text-transform: none;
    font-weight: 400;
    color: #000;
    font-size: var(--wp--preset--font-size--medium);
}

.listing-card__title a .rdi-external-url-icon {
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-left: var(--wp--preset--spacing--xxs);
    background-color: var(--global-palette3);
    vertical-align: text-bottom;
    -webkit-mask: url("data:image/svg+xml,%3Csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M9%200.75C9%201.16562%209.33438%201.5%209.75%201.5H13.4406L6.22188%208.71875C5.92813%209.0125%205.92813%209.4875%206.22188%209.77812C6.51562%2010.0687%206.99062%2010.0719%207.28125%209.77812L14.5%202.55938V6.25C14.5%206.66563%2014.8344%207%2015.25%207C15.6656%207%2016%206.66563%2016%206.25V0.75C16%200.334375%2015.6656%200%2015.25%200L9.75%200C9.33438%200%209%200.334375%209%200.75ZM2.5%203C1.11875%203%200%204.11875%200%205.5V13.5C0%2014.8813%201.11875%2016%202.5%2016H10.5C11.8813%2016%2013%2014.8813%2013%2013.5V10.75C13%2010.3344%2012.6656%2010%2012.25%2010C11.8344%2010%2011.5%2010.3344%2011.5%2010.75V13.5C11.5%2014.0531%2011.0531%2014.5%2010.5%2014.5H2.5C1.94687%2014.5%201.5%2014.0531%201.5%2013.5V5.5C1.5%204.94688%201.94687%204.5%202.5%204.5H5.25C5.66563%204.5%206%204.16563%206%203.75C6%203.33437%205.66563%203%205.25%203H2.5Z'%20fill='black'/%3E%3C/svg%3E") no-repeat center / contain;
    mask: url("data:image/svg+xml,%3Csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M9%200.75C9%201.16562%209.33438%201.5%209.75%201.5H13.4406L6.22188%208.71875C5.92813%209.0125%205.92813%209.4875%206.22188%209.77812C6.51562%2010.0687%206.99062%2010.0719%207.28125%209.77812L14.5%202.55938V6.25C14.5%206.66563%2014.8344%207%2015.25%207C15.6656%207%2016%206.66563%2016%206.25V0.75C16%200.334375%2015.6656%200%2015.25%200L9.75%200C9.33438%200%209%200.334375%209%200.75ZM2.5%203C1.11875%203%200%204.11875%200%205.5V13.5C0%2014.8813%201.11875%2016%202.5%2016H10.5C11.8813%2016%2013%2014.8813%2013%2013.5V10.75C13%2010.3344%2012.6656%2010%2012.25%2010C11.8344%2010%2011.5%2010.3344%2011.5%2010.75V13.5C11.5%2014.0531%2011.0531%2014.5%2010.5%2014.5H2.5C1.94687%2014.5%201.5%2014.0531%201.5%2013.5V5.5C1.5%204.94688%201.94687%204.5%202.5%204.5H5.25C5.66563%204.5%206%204.16563%206%203.75C6%203.33437%205.66563%203%205.25%203H2.5Z'%20fill='black'/%3E%3C/svg%3E") no-repeat center / contain;
}

.listing-card__title a:hover,
.listing-card__title a:focus {
    text-decoration: underline;
}

.listing-card__excerpt {
    margin-top: var(--wp--preset--spacing--xxs);
    margin-bottom: 0;
}

.listing-card__badge {
    position: absolute;
    top: 20px;
    left: 20px;
    padding: 15px;
    background-color: var(--global-palette9);
    border-radius: 0;
    font-family: var(--global-body-font-family);
    font-size: 1rem;
    font-weight: 500;
    line-height: 1;
    z-index: 10;
}
.bc-main-slider {
    position: relative;
}

.pc-product-excerpt:empty {
    display: none;
}

.listing-card__swatches {
    margin-bottom: 18px;
}

.listing-card__swatches.is-empty {
    display: none;
}

.listing-card__tags {
    padding-top: 0;
}

.listing-card__tags .product-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.listing-card__tags .product-tag {
    line-height: 1;
}

.listing-card__tags .product-tag button,
.listing-card__tags span.product-tag span.product-tag__text{
    background-color: unset;
    border: 1px solid var(--global-palette3);
    margin: 0;
    border-radius: 0;
    padding: 9px;
    color: var(--global-palette4);
    font-size: 1rem;
    font-weight: 500;
    line-height: 1;
    box-shadow: none;
    display: block;
}

.modal--filters .kt-blocks-modal-link {
    text-transform: uppercase;
    width: 100%;
}

/* Show / hide filters functionality only for desktop */
@media screen and (min-width: 1025px) {
    .listing-filters-hidden.kb-row-layout-wrap > .kt-row-column-wrap {
        grid-template-columns: 1fr;
    }

    .listing-filters-hidden
        > .kt-row-column-wrap
        > .wp-block-kadence-column:first-child {
        display: none;
    }

    .listing-filters-hidden .listing.fwpl-layout {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media screen and (min-width: 1200px) {
    .listing-filters-hidden .listing.fwpl-layout {
        grid-template-columns: repeat(4, 1fr);
    }
}

/* FAQ Listing */

.facetwp-facet-faq_categories {
    text-align: center;
}

.facetwp-facet-faq_categories .facetwp-radio {
    display: inline-block;
    background-color: var(--global-palette9);
    border: 2px solid var(--global-palette1);
    color: var(--global-palette1);
    border-radius: 0;
    text-transform: uppercase;
    font-weight: 600;
    background-image: none;
    padding: 12px;
    margin: 10px;
}

.facetwp-facet-faq_categories .facetwp-radio:hover,
.facetwp-facet-faq_categories .facetwp-radio:focus,
.facetwp-facet-faq_categories .facetwp-radio.checked  {
    background-color: var(--global-palette1);
    color: var(--global-palette9);
    background-image: none;
}


@media screen and (max-width: 767px) {
    .facetwp-facet-faq_categories .facetwp-radio {
        width: 100%;
        margin: 6px 0;
    }
}

/**
 * ==========================================================================
 * Additional CSS Needs to be Organized
 * ==========================================================================
 */

 /* Get the Look Button Block */
.get-the-look-button-block .kb-button {
    padding: 17px;
    background: var(--global-palette9);
    color: var(--global-palette1);
}
.get-the-look-button-block .kb-button:hover,
.get-the-look-button-block .kb-button:focus {
    background: var(--global-palette2);
    color: var(--global-palette4);
}

/* Swatch Block */
.swatch__chip {
    display: inline-block; /* make it boxy */
    width: 30px; /* fixed size */
    height: 30px;
    border-radius: 0;
    background-size: cover; /* make the texture fill */
    background-position: center; /* center the image */
    border: 1px solid #ccc; /* small border so light images are visible */
}

.swatch {
    position: static !important;
    display: inline-flex;
    border: 2px solid var(--global-palette7);
    border-radius: 0;
    padding: 4px;
    background: var(--global-palette9);
    cursor: pointer;
}

.swatch:hover,
.swatch:focus,
.swatch.is-active {
    border-color: var(--global-palette1);
    background-color: transparent;
}

.swatches .swatch.is-hidden {
    display: none !important;
}

/* Swatch label as screen reader text */
.swatch:not(.is-active) .swatch__label {
    border: 0;
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
}

.swatches {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    padding-bottom: 30px;
}

.swatch.is-active .swatch__label {
    position: absolute;
    top: calc(100% - 20px);
    left: 0;
    width: 300px;
    height: auto;
    text-align: left;
    color: var(--global-palette4);
    font-family: var(--global-body-font-family);
    font-size: 1rem;
    font-weight: 500;
    text-transform: none;
}

.swatch-more {
    font-family: var(--global-body-font-family);
    font-size: var(--wp--preset--font-size--small);
    margin-left: 5px;
    text-transform: none;
}

.swatch-more,
.swatch-more:hover,
.swatch-more:focus {
    padding: 0;
    border: none;
    color: var(--global-palette4);
    background-color: transparent;
}

.swatch-more:hover,
.swatch-more:focus {
    text-decoration: underline;
}

/* Manual Class added. need to determine if this is needed. */
@media screen and (min-width: 1025px) and (max-width: 1280px) {
    .row--lg-2-col.kb-row-layout-wrap > .kt-row-column-wrap {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (min-width: 1025px) and (max-width: 1500px) {
    .row--lg-3-col.kb-row-layout-wrap > .kt-row-column-wrap {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* Utilities */
@media screen and (min-width: 1025px) and (max-width: 1600px) {
    .mr-lg-0 {
        margin-right: 0 !important;
    }
}

@media screen and (min-width: 1025px) and (max-width: 1280px) {
    .row--lg-stack.wp-block-kadence-rowlayout > .kt-row-column-wrap {
        grid-template-columns: 1fr;
    }

    .reduce-side-padding-laptop.wp-block-kadence-column > .kt-inside-inner-col {
        padding-left: 20px;
        padding-right: 20px;
    }
}

body .product-swatch-selector-block {
    padding: 0;
}

body .request-sample-button,
body .material-bank-button {
    width: 100%;
    background: transparent;
    border: 2px solid var(--global-palette1);
    border-radius: 0;
    color: var(--global-palette1);
    text-align: center;
    padding-left: 12px;
    padding-right: 12px;
}

body .request-sample-button {
    background-color: var(--global-palette1);
    color: var(--global-palette9);
}

body .request-sample-button:hover,
body .request-sample-button:focus,
body .material-bank-button:hover,
body .material-bank-button:focus {
    transform: none;
    box-shadow: none;
    background: var(--global-palette-btn-bg-hover);
    border-color: var(--global-palette-btn-bg-hover);
    color: var(--global-palette-btn-hover);
}
body .body .material-bank-button,
body .request-sample-section {
    padding: var(--wp--preset--spacing--sm);
    border-top: 0;
    background: #fafafa;
    border-radius: 0;
}
body .swatch {
    padding: 3px;
    border: 2px solid #d1d1d1;
    box-shadow: none;
}
body .swatch:hover,
body .swatch:focus,
body .swatch.is-active {
    border-color: var(--global-palette1);
    transform: none;
    box-shadow: none;
}
body .swatch__chip {
    border: 0;
}
.product-swatch-selector-header,
.all-colors-section {
    max-width: 668px;
}
@media (max-width: 768px) {
    body .belgard-carousel-block {
        padding: 0;
    }
}
.related-categories {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}
.related-categories a {
    display: inline-block;
    border: 2px solid var(--global-palette-btn-bg);
    padding: 9px 25px;
    border-radius: 0;
    color: var(--global-palette-btn-bg);
    text-decoration: none;
}
.related-categories a:hover,
.related-categories a:focus {
    background: var(--global-palette-btn-bg-hover);
    border-color: var(--global-palette-btn-bg-hover);
    color: var(--global-palette-btn-hover);
}
.related-categories span {
    display: none;
}
.request-sample-buttons {
    display: flex;
    gap: 15px;
}
@media (max-width: 767px), (min-width: 1025px) and (max-width: 1540px) {
    .request-sample-buttons {
        flex-direction: column;
    }
}
@media (min-width: 1025px) and (max-width: 1399px) {
    .kb-row-layout-wrap.desktop_6col-sizing > .kt-row-column-wrap {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
.price-level-icon {
    white-space: nowrap;
    font-size: var(--wp--preset--font-size--xxlarge);
}

.product-applications-block {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}
.product-application-item {
    display: flex;
    align-items: center;
    column-gap: 15px;
}
.product-application-item img {
    width: 34px;
    filter: brightness(0) saturate(100%) invert(13%) sepia(6%) saturate(350%) hue-rotate(180deg) brightness(95%) contrast(95%);
}
.product-sizes-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}
@media (min-width: 1440px) {
    .product-sizes-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (min-width: 768px) and (max-width:1024px) {
    .product-sizes-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (min-width: 768px) {
    .product-sizes-grid {
        gap: var(--wp--preset--spacing--md);
    }
}

.product-size-item {
    padding: var(--wp--preset--spacing--sm);
    border: 1px solid var(--global-palette7);
    border-radius: 0;
}

.product-sizes-grid .product-size-item .product-size-name {
    margin-top: .5rem;
    font-size: var(--wp--preset--font-size--medium);
}
.product-size-dimensions {
    font-size: 1.125rem;
}
.product-document-list {
    padding: 0 !important;
    list-style: none;
}
.product-document-list li {
    display: flex;
    column-gap: 15px;
}
.product-document-list li .product-document-icon {
    display: inline-block;
    margin-top: 2px;
    width: 12px;
    color: var(--global-palette1);
}
.product-document-list li .product-document-name {
    font-size: 1.125rem;
    font-weight: 600;
    text-decoration: none;
}
.product-document-list li .product-document-name:hover,
.product-document-list li .product-document-name:focus {
    text-decoration: underline;
}
.more-resources {
    width: 100%;
    max-width: 345px;
    text-align: center;
}
.product-related-resources {
    display: flex;
    column-gap: 16px;
    margin-top: 30px;
}
.product-related-resources .product-related-link {
    color: var(--global-palette3);
    text-decoration: none;
}
.product-related-resources .product-related-link:hover,
.product-related-resources .product-related-link:focus {
    text-decoration: underline;
}
.product-related-resources .product-related-link::after {
    content: '';
    display: inline-block;
    width: 14px;
    height: 16px;
    margin-left: 8px;
    background: url(/wp-content/uploads/sites/2/arrow-icon.png) no-repeat center / contain;
    position: relative;
    top: 2px;
}
.product-related-resources .product-related-icon {
    margin-top: -3px;
}

.product-swatch-selector-header {
    margin-bottom: 30px;
}

.region-filter {
    margin: 30px 0;
    position: relative;
}
.national-colors-section h4,
.all-colors-section h4 {
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 15px 0;
}
.product-swatch-selector-title {
    font-size: 24px;
    font-weight: 600;
}
.region-filter-header label {
    font-size: 18px;
    font-weight: 600;
    margin: 0;
}
.region-select,
.request-sample-region-select {
    width: 100%;
    max-width: 300px;
    padding: 10px 15px;
    font-size: 16px;
    border: 2px solid #ccc;
    border-radius: 0;
    background-color: #fff;
    cursor: pointer;
    transition: all 0.3s ease;
}
.region-filter-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}
.swatches .swatch-show-hide {
    background-color: unset;
    border: 0;
    color: #242529B2;
    font-size: 16px;
    text-decoration: underline;
    font-weight: 500;
    display: block;
    flex-basis: 100%;
    width: 100%;
}
body .request-sample-section {
    margin-top: 40px;
}

.request-sample-colors-list {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.request-sample-colors-list li {
    gap: 8px;
}

.button-outline .kb-button {
    background: rgba(0, 0, 0, 0);
    border: solid 2px var(--global-palette1);
    color:var(--global-palette1);
    padding:17px 17px 17px 17px;
    font-size:clamp(1rem, 0.7143rem + 0.4464vw, 1.25rem);
}

.button-outline .kb-button:hover,
.button-outline .kb-button:focus {
    background:var(--global-palette2);
    border-color:var(--global-palette2);
    color:var(--global-palette9);
}



.space-option-label {
    padding: clamp(1.5625rem, -0.227rem + 2.7933vw, 3.125rem) clamp(0.625rem, -0.0908rem + 1.1173vw, 1.25rem);
}

/* Tables */

.wp-block-kadence-table {
    text-wrap: balance;
}


/**
 * ==========================================================================
 * PDP
 * ==========================================================================
 */

.single-rdi-products_cpt .options-list,
.single-rdi-products_cpt .videos-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 16px;
}

.option-link,
.video-modal-trigger-button {
    padding: 0;
    border: none;
    box-shadow: none;
    font-weight: 400;
    font-size: clamp(1rem, 0.9697rem + 0.1294vw, 1.125rem);
    line-height: 1.33;
    text-transform: unset;
    text-align: center;
}

.option-link:hover,
.option-link:focus,
.video-modal-trigger-button:hover,
.video-modal-trigger-button:focus {
    box-shadow: none;
    color: var(--global-palette1);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.option-item img {
    width: 100px;
    height: 60px;
    object-fit: cover;
    object-position: center;
}

.option-item .option-label {
    display: block;
    margin-top: 10px;
    text-align: center;
    font-size: 1rem;
    word-break: normal;
}

.select-style-wrapper .option-list--option-square .option-item {
    width: 60px;
}

.option-list--option-square .option-item {
    max-width: 50px;
}

.option-list--option-square .option-item img {
    width: 50px;
    height: 50px;
}

.option-list--option-rectangle .option-item,
.option-list--option-square-large .option-item {
    max-width: 100px;
}


.option-list--option-square.option-list--option-square-large .option-item {
    width: 100px;
}

.option-list--option-square.option-list--option-square-large .option-item img {
    width: 100px;
    height: 100px;
}

.rails-modal .option-list--option-square-large .option-item {
    max-width: unset;
}

.rails-modal-content .option-list--option-square.option-list--option-square-large .option-item {
    width: 100%;
}

.rails-modal-content .option-list--option-square.option-list--option-square-large .option-item img {
    width: 100%;
    height: auto;
}

@media (min-width: 640px) {
    .rails-modal .option-list--option-square-large .option-item {
        max-width: 250px;
    }

    .rails-modal-content .option-list--option-square.option-list--option-square-large .option-item {
        width: 250px;
    }

    .rails-modal-content .option-list--option-square.option-list--option-square-large .option-item img {
        width: 250px;
        height: 250px;
    }
}

.option-list--option-square-large .option-item img {
    width: 250px;
    height: 250px;
}


/* Select style specific */

.select-style-wrapper,
.select-color-wrapper,
.top-rails-wrapper {
    margin-bottom: var(--wp--preset--spacing--sm);
}

.select-style-header {
    margin-bottom: 10px;
}

.select-style-title {
    display: inline-block;
    margin-right: 10px;
    font-size: var(--global-kb-font-size-md);
    font-weight: 600;
}

.select-style-wrapper .option-link {
    padding: 5px;
    border: 2px solid var(--global-palette8);
}

.select-style-wrapper .option-link.active {
    border-color: var(--global-palette1);
}

.option-list--option-square-large .option-link {
    text-align: left;
}

.select-style-wrapper .option-item {
    width: 110px;
}

.select-style-wrapper .option-item img {
    object-fit: cover;
}

/* Select Color */

.select-color-wrapper img {
    object-fit: cover;
}

.select-color-wrapper .option-item {
    max-width: 60px;
    width: 60px;
    height: 60px;
}
.select-color-wrapper .option-link {
    padding: 3px;
    border: 2px solid var(--global-palette8);
}

.select-color-wrapper .option-link.active {
    border-color: var(--global-palette1);
}

/* Top Rails */

.top-rails-title h2 {
    font-size: var(--global-kb-font-size-md);
    font-weight: 600;
}

.top-rails-modal-button,
.top-rails-modal-button:hover,
.top-rails-modal-button:focus {
    width: 40px;
    height: 40px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M8 16C3.59375 16 0 12.4062 0 8C0 3.59375 3.59375 0 8 0C12.4062 0 16 3.59375 16 8C16 12.4062 12.4062 16 8 16ZM6.75 10.5H6V12H10V10.5H9V7H6V8.5H7.5V10.5H6.75ZM9 6V4H7V6H9Z' fill='%23254749'/%3E%3C/svg%3E");
    background-position: left 4px center;
    background-repeat: no-repeat;
    background-size: 16px 16px;
    box-shadow: none;
}

/* Infill otpions */

.infill-options-wrapper h4 {
    margin: var(--wp--preset--spacing--sm) 0 10px;
    font-size: var(--global-kb-font-size-md);
    font-weight: 600;
}

/* Videos */

.video-item {
    width: calc(50% - (1 / 2) * 16px);
}

.video-modal-trigger-button {
    color: var(--global-palette3);
    text-align: left;
    font-weight: 600;
}

.video-modal-trigger-button:hover,
.video-modal-trigger-button:focus {
    color: var(--global-palette1);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.video-item .video-image-wrapper {
    position: relative;
    margin: 0 0 10px;
}

.video-image-wrapper::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: var(--global-palette1);
    background-image: url("data:image/svg+xml,%3Csvg viewBox='-107 0 1024 808.594285714' preserveAspectRatio='xMinYMin meet' fill='white' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath d='M790.857 529.714l-758.857 421.714c-17.714 9.714-32 1.143-32-18.857v-841.143c0-20 14.286-28.571 32-18.857l758.857 421.714c17.714 9.714 17.714 25.714 0 35.429z'%3E%3C/path%3E%3C/svg%3E");
    background-size: 20px 22px;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    display: block;
    transition: .2s all ease-in;
}

.video-modal-trigger-button:hover .video-image-wrapper::before ,
.video-modal-trigger-button:focus .video-image-wrapper::before {
    background-color: var(--global-palette8);
    background-image: url("data:image/svg+xml,%3Csvg viewBox='-107 0 1024 808.594285714' preserveAspectRatio='xMinYMin meet' fill='currentColor' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath d='M790.857 529.714l-758.857 421.714c-17.714 9.714-32 1.143-32-18.857v-841.143c0-20 14.286-28.571 32-18.857l758.857 421.714c17.714 9.714 17.714 25.714 0 35.429z'%3E%3C/path%3E%3C/svg%3E");
}

.video-image-wrapper img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    margin: 0;
}

/* Documents */

.documents-wrapper h4 {
    margin: var(--wp--preset--spacing--sm) 0 10px;
    font-size: var(--global-kb-font-size-lg);
    font-weight: 600;
}

.documents-wrapper .product-document-list {
    margin: 0 0 var(--wp--preset--spacing--sm);
}

.documents-wrapper .product-document-list li {
    margin-bottom: 5px;
    column-gap: 10px;
}

.product-resources-buttons {
    margin-top: 30px;
}

.product-resources-buttons .button {
    background-color: var(--global-palette1);
    border-color: var(--global-palette1);
    color: var(--global-palette9);
}

.product-resources-buttons .button:hover,
.product-resources-buttons .button:focus {
    background-color: var(--global-palette9);
    color: var(--global-palette1);
    box-shadow: none;
}


/* Sizes accordion */
.sizes-table {
    border-collapse: collapse;
}

.sizes-table,
.sizes-table th,
.sizes-table td {
    border: 1px solid var(--global-palette3);
}

.sizes-table th,
.sizes-table td {
    padding: 10px;
}

.sizes-table th {
    width: 120px;
    font-weight: 600;
    background-color: var(--global-palette8);
}

/* PDP Buttons */
body .buy-now-button .buy-now-button,
body .request-sample-button,
body .material-bank-button {
    background-color: var(--global-palette1);
    border-color: var(--global-palette1);
    color: var(--global-palette9);
}

body .buy-now-button .buy-now-button:hover,
body .buy-now-button .buy-now-button:focus,
body .request-sample-button:hover,
body .request-sample-button:focus,
body .material-bank-button:hover,
body .material-bank-button:focus {
    background-color: var(--global-palette9);
    border-color: var(--global-palette1);
    color: var(--global-palette1);
}

body .buy-now-button .buy-now-button {
    max-width: 100%;
}


/* Global button shadow reset */

body .button {
    box-shadow: none;
}

/* Global font weight for bold text */

b, strong {
    font-weight: 600;
}

/* Marker.io ticket updates */
.kb-off-canvas-inner .wp-block-kadence-navigation {
    height: auto;
}

.option-item img {
    height: 86px;
    width: 86px;
}
.fwpl-layout.galleries .fwpl-result {
    aspect-ratio: 1 / 1;
}

.bc-modal[data-aspect-ratio="1:1"] .bc-modal-slider .splide__slide img {
    max-height: 50vh;
    object-fit: contain;
}
@media (min-width: 1200px) {
    .bc-modal[data-aspect-ratio="1:1"] .bc-modal-slider .splide__slide img {
        max-height: 80vh;
    }
}
body .bc-modal[data-aspect-ratio="1:1"] .bc-modal-content {
    max-width: 954px;
}
@media (min-width: 1200px) and (max-width: 1919px) {
    body .bc-modal[data-aspect-ratio="1:1"] .bc-modal-content {
        max-width: 900px;
    }
}
@media (max-width: 1199px) {
    body .bc-modal[data-aspect-ratio="1:1"] .bc-modal-content {
        max-width: 690px;
    }
}
.kb-table tr:last-child th,
.kb-table tr:last-child td {
    border-bottom: 0;
}
@media (min-width: 1025px) {
    .kb-header-placeholder-wrapper:not(.child-is-fixed) {
        min-height: 140px;
    }
}
