/* GENERAL */
.woocommerce .woocommerce-breadcrumb a:hover,
.woocommerce .woocommerce-breadcrumb a:focus,
.woocommerce .woocommerce-breadcrumb a:focus-visible,
.woocommerce .ast-breadcrumbs a:hover,
.woocommerce .ast-breadcrumbs a:focus,
.woocommerce .ast-breadcrumbs a:focus-visible {
    text-decoration: underline;
}

.woocommerce input.button,
.woocommerce button.button,
.woocommerce .woocommerce-message a.button,
.woocommerce a.button {
    padding: 12px 24px !important;
    background-color: var(--ast-global-color-1);
    border: 2px solid var(--ast-global-color-1);
}

.woocommerce input.button:hover,
.woocommerce input.button:focus,
.woocommerce input.button:focus-visible,
.woocommerce button.button:hover,
.woocommerce button.button:focus,
.woocommerce button.button:focus-visible,
.woocommerce .woocommerce-message a.button:hover,
.woocommerce .woocommerce-message a.button:focus,
.woocommerce .woocommerce-message a.button:focus-visible,
.woocommerce a.button:hover,
.woocommerce a.button:focus,
.woocommerce a.button:focus-visible {
    border-color: var(--ast-global-color-1);
    background-color: #fff;
    color: var(--ast-global-color-1);
    text-decoration: none;
}

.woocommerce .woocommerce-variation-add-to-cart-disabled button.button.alt.disabled {
    border-color: var(--ast-global-color-1);
    border-width: 2px;
}

input::placeholder,
.search-field::placeholder,
.ast-search-box input::placeholder,
.ast-search-menu-icon .search-field::placeholder {
    color: #595959 !important; /* WCAG AAA 7:1 contrast ratio against white */
}

.ast-search-menu-icon .search-field {
    color: #595959 !important;
}

input[type="text"],
input[type="text"]:focus,
input[type="email"],
input[type="email"]:focus {
    outline: #5177a8 solid 0.5px;
}

button.search-submit.normal-search svg path {
    fill: var(--ast-global-color-1);
}

button.search-submit.normal-search:hover svg path {
    fill: var(--ast-global-color-2);
}

button.search-submit.normal-search i {
    transition: margin-right 0.3s ease;
}

button.search-submit.normal-search:hover i {
    margin-right: 5px;
}

button.ast-menu-toggle {
    background-color: transparent;
    color: var(--ast-global-color-2);
    border: none;
}

.ast-builder-menu-mobile .main-navigation .menu-item.current-menu-item > .menu-link {
    color: unset;
}

figure.wp-block-table {
    border-radius: 10px;
    overflow: hidden;
}

figure.wp-block-table table {
    border-collapse: separate;
    border-spacing: 0;
    border-width: 1.5px;
    border-radius: 12px;
    border-color: #4a4a4a;
}

figure.wp-block-table table tr:first-child td:first-child {
    border-top-left-radius: 10px;
}

figure.wp-block-table table tr:first-child td:last-child {
    border-top-right-radius: 10px;
}

figure.wp-block-table table tr:last-child td:first-child {
    border-bottom-left-radius: 10px;
}

figure.wp-block-table table tr:last-child td:last-child {
    border-bottom-right-radius: 10px;
}


@media (min-width: 922px) {
    .ast-single-post #primary {
        margin: 2em 0;
    }
}

.ast-single-post .entry-title {
    font-size: 3.5rem;
}

.ast-single-post .entry-content a:not(.wp-block-button__link):not(.button):hover {
    text-underline-offset: 3px;
    text-decoration: underline;
}

a[href^="http"]:not(:where([href^="#"], [href^="/"]:not([href^="//"]), [href*="https://wcbeadalon.ipdev.cloud"] )):after {
    margin-left: 7px;
}

label.ast-search--posttype-heading {
    font-weight: 600;
}

/* END GENERAL */

/* HEADER */
.ast-site-header-cart i.astra-icon,
.ast-site-header-cart .ast-addon-cart-wrap i.astra-icon:after,
.ast-theme-transparent-header .ast-site-header-cart .ast-addon-cart-wrap i.astra-icon:after {
    color: var(--ast-global-color-2);
}

@media (max-width: 921px) {
    .ast-primary-header-bar .ast-addon-cart-wrap .ast-icon.icon-bag svg {
        fill: var(--ast-global-color-1) !important;
    }
}

.ast-site-header-cart .ast-woo-header-cart-info-wrap {
    color: var(--ast-global-color-5);
}

.ast-site-header-cart .cart-container:hover .ast-woo-header-cart-info-wrap,
.ast-site-header-cart .cart-container:hover i.astra-icon,
.ast-site-header-cart .cart-container:hover .ast-addon-cart-wrap i.astra-icon:after,
.ast-site-header-cart .ast-site-header-cart-li:hover .ast-addon-cart-wrap i.astra-icon:after,
.ast-menu-cart-outline .ast-site-header-cart-li:hover .ast-addon-cart-wrap .astra-icon,
.ast-theme-transparent-header .cart-container:hover .ast-site-header-cart .ast-addon-cart-wrap i.astra-icon:after {
    color: var(--ast-global-color-1);
}

/*
.ast-header-account-wrap .ast-header-account-type-icon .ahfb-svg-iconset svg,
.ast-site-header-cart.ast-menu-cart-outline i.astra-icon,
.ast-site-header-cart.ast-menu-cart-outline .ast-woo-header-cart-total {
    color: var(--ast-global-color-2);
}*/
.ast-theme-transparent-header .ast-header-account-wrap .ast-header-account-type-icon .ahfb-svg-iconset svg path:not(.ast-hf-account-unfill),
.ast-theme-transparent-header .ast-header-account-wrap .ast-header-account-type-icon .ahfb-svg-iconset svg circle {
    fill: var(--ast-global-color-2);
}

.ast-site-header-cart .cart-container:hover .ast-woo-header-cart-total {
    color: var(--ast-global-color-1);
}

.ast-header-account-link.ast-account-action-link .ahfb-svg-iconset svg path:not(.ast-hf-account-unfill),
.ast-header-account-link.ast-account-action-link .ahfb-svg-iconset svg circle,
.ast-header-account-link svg.account-icon path,
.ast-header-account-link svg.account-icon circle,
.ast-site-header-cart .cart-container .ast-icon svg:not([fill]) {
    fill: var(--ast-global-color-5);
}

.ast-header-account-link.ast-account-action-link:hover .ahfb-svg-iconset svg path:not(.ast-hf-account-unfill),
.ast-header-account-link.ast-account-action-link:hover .ahfb-svg-iconset svg circle
.ast-header-account-link:hover svg.account-icon path,
.ast-header-account-link:hover svg.account-icon circle,
.ast-site-header-cart .cart-container:hover .ast-icon svg:not([fill]) {
    fill: var(--ast-global-color-2);
}

.ast-builder-menu-2 .main-header-menu .sub-menu .menu-item-has-children a {
    padding-right: 25px;
}

.ast-builder-menu-2 .main-header-menu li.menu-item.current-menu-item,
.ast-builder-menu-2 .main-header-menu li.menu-item:hover {
    background: #fff;
}

.ast-builder-menu-2 .main-header-menu li.menu-item.current-menu-item > .menu-link,
.ast-builder-menu-2 .main-header-menu li.menu-item:hover > .menu-link {
    color: var(--ast-global-color-1);
}

.ast-builder-menu-2 .main-header-menu > li > a {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.ast-desktop .ast-primary-header-bar .ast-builder-menu-1 ul.main-header-menu .menu-item .menu-link:hover {
    background: none;
    color: var(--ast-global-color-8);
    text-decoration: none;
}

.astra-cart-drawer button.astra-cart-drawer-close:hover {
    background: var(--ast-global-color-0);
}

.astra-cart-drawer button.astra-cart-drawer-close:hover svg path {
    fill: #fff;
}

.astra-cart-drawer .ast-product-image.ast-disable-image {
    padding-right: 20px;
}

.site-header-focus-item .header-social-inner-wrap a::after {
    display: none;
}

.site-header .search-field {
    outline: #5177a8 solid 0.5px;
}

[CLASS*="-sticky-header-active"] .ast-builder-menu-2 .main-header-menu .menu-item .sub-menu .menu-item .menu-link {
    color: var(--ast-global-color-2);
}

[CLASS*="-sticky-header-active"] .ast-builder-menu-2 .main-header-menu .menu-item .sub-menu .menu-link {
    background-color: #E1C8DD;
}

.ast-archive-entry-banner {
    background-color: #f1f1f1;
}

#ast-fixed-header {
    z-index: 100;
}

.main-header-menu .sub-menu {
    z-index: 100;
}

#ast-fixed-header .main-header-bar {
    background-color: #F1F1F1;
}

.ast-site-header-cart .cart-container:hover .ast-woo-header-cart-info-wrap,
.ast-site-header-cart .cart-container:hover .ast-woo-header-cart-total,
.ast-site-header-cart .cart-container:hover .ast-addon-cart-wrap i.astra-icon:after {
    color: #d5dce6;
}

.ast-site-header-cart .cart-container:hover .ast-addon-cart-wrap i.astra-icon:after {
    background-color: #fff;
    color: #252a4b;
}

/* END HEADER */

/* SHOP */
.woocommerce.archive.ast-plain-container,
.woocommerce.archive.ast-page-builder-template {
    background-color: #fff !important;
}

.woocommerce .ast-shop-toolbar-container .ast-shop-toolbar-aside-wrap .woocommerce-result-count {
    color: #000;
}

.woocommerce .ast-shop-toolbar-container .ast-shop-toolbar-aside-wrap .astra-shop-filter-button {
    border-radius: 0;
    height: 41.5px;
}

.woocommerce .ast-shop-toolbar-container .ast-shop-toolbar-aside-wrap .astra-shop-filter-button,
.woocommerce-page .woocommerce-ordering select,
.ip-facetwp-per-page-wrap .facetwp-facet-products_per_page select.facetwp-per-page-select {
    background-color: var(--ast-global-color-2);
    color: var(--ast-global-color-5);
    padding: 11px 13px;
    border: 2px solid var(--ast-global-color-2);
    cursor: pointer;
    font-weight: 400;
}

.woocommerce-page .woocommerce-ordering select {
    min-width: 250px;
}

.ip-facetwp-per-page-wrap .facetwp-facet-products_per_page select.facetwp-per-page-select {
    min-width: 120px;
}

.woocommerce-page .woocommerce-ordering select,
.ip-facetwp-per-page-wrap .facetwp-facet-products_per_page select.facetwp-per-page-select {
    background-image: url("data:image/svg+xml,%3Csvg class='ast-arrow-svg' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' x='0px' y='0px' width='26px' height='16.043px' fill='%23ffffff' viewBox='57 35.171 26 16.043' enable-background='new 57 35.171 26 16.043' xml:space='preserve' %3E%3Cpath d='M57.5,38.193l12.5,12.5l12.5-12.5l-2.5-2.5l-10,10l-10-10L57.5,38.193z'%3E%3C/path%3E%3C/svg%3E");
    background-position: calc(100% - 15px) 50%;

}

.woocommerce .ast-shop-toolbar-container .ast-shop-toolbar-aside-wrap .astra-shop-filter-button:hover,
.woocommerce .ast-shop-toolbar-container .ast-shop-toolbar-aside-wrap .astra-shop-filter-button:focus,
.woocommerce .ast-shop-toolbar-container .ast-shop-toolbar-aside-wrap .astra-shop-filter-button:focus-visible,
.woocommerce-page .woocommerce-ordering select:hover,
.woocommerce-page .woocommerce-ordering select:focus,
.woocommerce-page .woocommerce-ordering select:focus-visible,
.ip-facetwp-per-page-wrap .facetwp-facet-products_per_page select.facetwp-per-page-select:hover,
.ip-facetwp-per-page-wrap .facetwp-facet-products_per_page select.facetwp-per-page-select:focus,
.ip-facetwp-per-page-wrap .facetwp-facet-products_per_page select.facetwp-per-page-select:focus-visible {
    border: 2px solid var(--ast-global-color-2);
    background-color: var(--ast-global-color-5);
    color: var(--ast-global-color-2);
}

.woocommerce-page .woocommerce-ordering select:hover,
.woocommerce-page .woocommerce-ordering select:focus,
.woocommerce-page .woocommerce-ordering select:focus-visible,
.ip-facetwp-per-page-wrap .facetwp-facet-products_per_page select.facetwp-per-page-select:hover,
.ip-facetwp-per-page-wrap .facetwp-facet-products_per_page select.facetwp-per-page-select:focus,
.ip-facetwp-per-page-wrap .facetwp-facet-products_per_page select.facetwp-per-page-select:focus-visible {
    background-image: url("data:image/svg+xml,%3Csvg class='ast-arrow-svg' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' x='0px' y='0px' width='26px' height='16.043px' fill='%23223150' viewBox='57 35.171 26 16.043' enable-background='new 57 35.171 26 16.043' xml:space='preserve'%3E%3Cpath d='M57.5,38.193l12.5,12.5l12.5-12.5l-2.5-2.5l-10,10l-10-10L57.5,38.193z'/%3E%3C/svg%3E");
}

.woocommerce-page ul.products li.product .ast-loop-product__link:hover,
.woocommerce-page ul.products li.product .ast-loop-product__link:focus,
.woocommerce-page ul.products li.product .ast-loop-product__link:focus-visible {
    text-decoration: underline;
}

.woocommerce-page ul.products li.product .ast-loop-product__link:hover .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .ast-loop-product__link:focus .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .ast-loop-product__link:focus-visible .woocommerce-loop-product__title {
    color: inherit;
}

.woocommerce-page ul.products li.product .button {
    padding: 12px 24px !important;
    background-color: #5177a8;
    border: 2px solid #5177a8;
}

.woocommerce-page ul.products li.product .button:hover,
.woocommerce-page ul.products li.product .button:focus,
.woocommerce-page ul.products li.product .button:focus-visible {
    border-color: #5177a8;
    background-color: #fff;
    color: #5177a8;
    text-decoration: none;
}

.facetwp-reset {
    border: 2px solid #5177a8;
}

.facetwp-reset:hover,
.facetwp-reset:focus,
.facetwp-reset:focus-visible {
    border-color: #5177a8;
    background-color: #fff;
    color: #5177a8;
    text-decoration: none;
}

.woocommerce .astra-off-canvas-sidebar-wrapper .close {
    padding: 5px;
}

.woocommerce .astra-off-canvas-sidebar-wrapper .close:hover,
.woocommerce .astra-off-canvas-sidebar-wrapper .close:focus,
.woocommerce .astra-off-canvas-sidebar-wrapper .close:focus-visible {
    background-color: #5177a8;
    color: #fff;
}

/* Product Grid - Equal Heights & Pinned Buttons */
.woocommerce-page ul.products li.product {
    display: flex;
}

.woocommerce-page ul.products li.product .astra-shop-summary-wrap {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
}

.woocommerce-page ul.products li.product .astra-shop-thumbnail-wrap {
    flex-shrink: 0;
}

.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
    flex-grow: 0;
    flex-shrink: 0;
}

.woocommerce-page ul.products li.product .ast-woo-product-category {
    flex-grow: 0;
    flex-shrink: 0;
}

.woocommerce-page ul.products li.product .button {
    margin-top: auto;
    flex-shrink: 0;
}

/* END Product Grid - Equal Heights & Pinned Buttons */

@media (max-width: 768px) {
    .ast-header-break-point .ast-shop-toolbar-container {
        column-gap: 20px;
        flex-direction: column;
        display: flex;
        justify-content: inherit;
        align-items: inherit;
    }

    .woocommerce .ast-shop-toolbar-container .ast-shop-toolbar-aside-wrap {
        justify-content: space-between;
    }

    .woocommerce .ast-shop-toolbar-container .woocommerce-ordering {
        margin-left: auto;
        margin-top: 10px;
    }
}

/* END SHOP */

/* PRODUCT PAGE */
.single-product #primary {
    margin-top: 0;
}

.single-product .product-youtube-video {
    display: inline-block;
    margin-top: 20px;
}

.single-product .product-youtube-video iframe {
    aspect-ratio: 16 / 9;
    height: auto;
}

.single-product a:not(.wp-element-button):not(.button):hover,
.single-product a:not(.wp-element-button):not(.button):focus,
.single-product a:not(.wp-element-button):not(.button):focus-visible {
    text-decoration: underline;
}

.single-product #page .site-content,
.single-product #page .site-content .ast-woocommerce-container,
.ast-separate-container.single-product .ast-article-single,
#page .site-content {
    background-color: #f1f1f1;
}


.woocommerce-js div.product form.cart div.quantity {
    height: 44px;
}

.woocommerce .product-quantity a:not(.wp-element-button):not(.button):not(.wp-block-button__link) {
    text-decoration: none;
}

.woocommerce .quantity .minus:hover,
.woocommerce .quantity .minus:focus,
.woocommerce .quantity .minus:focus-visible,
.woocommerce .quantity .plus:hover,
.woocommerce .quantity .plus:focus,
.woocommerce .quantity .plus:focus-visible {
    background-color: #5177a8;
    color: #fff;
    text-decoration: none !important;
}

.woocommerce-js div.product form.cart .reset_variations {
    color: #000;
}

.woocommerce-js div.product form.cart .reset_variations:hover,
.woocommerce-js div.product form.cart .reset_variations:focus,
.woocommerce-js div.product form.cart .reset_variations:focus-visible {
    color: #000;
    text-decoration: underline;
}

.woocommerce.woo-variation-swatches .variable-items-wrapper .color-variable-item:hover,
.woocommerce.woo-variation-swatches .variable-items-wrapper .color-variable-item:focus,
.woocommerce.woo-variation-swatches .variable-items-wrapper .color-variable-item:focus-visible {
    box-shadow: var(--wvs-selected-item-box-shadow, 0 0 0 2px #000);
}

.woocommerce-js div.product .woocommerce-tabs ul.tabs li:has(a:hover):before,
.woocommerce-js div.product .woocommerce-tabs ul.tabs li:has(a:focus):before,
.woocommerce-js div.product .woocommerce-tabs ul.tabs li:has(a:focus-visible):before {
    content: ' ';
    position: absolute;
    width: 100%;
    height: 3px;
    box-shadow: none;
    top: 0;
    left: 0;
    border-radius: 0;
    background: var(--ast-global-color-2);
}

.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:hover,
.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:focus,
.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:focus-visible {
    background-color: #5177a8;
    color: #fff;
}

.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:hover:before,
.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:focus:before,
.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:focus-visible:before {
    border-color: #fff;
}

.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:hover:after,
.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:focus:after,
.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:focus-visible:after {
    background-color: #fff;
}

.woocommerce-js div.product div.images .ast-single-product-thumbnails .ast-woocommerce-product-gallery__image {
    border: 2px solid transparent;
}

.woocommerce-js div.product div.images .ast-single-product-thumbnails .ast-woocommerce-product-gallery__image:hover,
.woocommerce-js div.product div.images .ast-single-product-thumbnails .ast-woocommerce-product-gallery__image:focus,
.woocommerce-js div.product div.images .ast-single-product-thumbnails .ast-woocommerce-product-gallery__image:focus-visible {
    outline: dotted;
    border-color: #000;
}

.woocommerce-js div.product form.cart .single_variation_wrap {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.woocommerce-js div.product form.cart .single_variation_wrap .single_variation,
.woocommerce-js div.product form.cart div.quantity,
.woocommerce-js div.product form.cart .button.single_add_to_cart_button,
.woocommerce-js div.product form.cart table.ip-uom-details-table {
    margin-bottom: 10px;
    margin-top: 10px;
    margin-right: 15px;
}

.woocommerce-js div.product form.cart .single_variation_wrap p {
    margin-bottom: 0;
}

@media screen and (max-width: 921px) {
    .ast-separate-container.single-product .ast-article-single {
        display: flex;
        flex-direction: column;
    }

    .ast-separate-container.single-product .ast-article-single > * {
        order: 3;
    }

    .woocommerce #content .ast-woocommerce-container div.product div.gallery-wrap,
    .woocommerce .ast-woocommerce-container div.product div.gallery-wrap,
    .woocommerce-page #content .ast-woocommerce-container div.product div.gallery-wrap,
    .woocommerce-page .ast-woocommerce-container div.product div.gallery-wrap {
        order: 2;
        margin-bottom: 50px;
    }

    .woocommerce #content .ast-woocommerce-container div.product div.summary,
    .woocommerce .ast-woocommerce-container div.product div.summary,
    .woocommerce-page #content .ast-woocommerce-container div.product div.summary,
    .woocommerce-page .ast-woocommerce-container div.product div.summary {
        order: 1;
    }
}

@media screen and (min-width: 922px) {
    .woocommerce #content .ast-woocommerce-container div.product div.images,
    .woocommerce .ast-woocommerce-container div.product div.images,
    .woocommerce-page #content .ast-woocommerce-container div.product div.images,
    .woocommerce-page .ast-woocommerce-container div.product div.images {
        width: 100%;
    }

    .woocommerce #content .ast-woocommerce-container div.product div.gallery-wrap,
    .woocommerce .ast-woocommerce-container div.product div.gallery-wrap,
    .woocommerce-page #content .ast-woocommerce-container div.product div.gallery-wrap,
    .woocommerce-page .ast-woocommerce-container div.product div.gallery-wrap {
        width: 50%;
        float: left;
        margin-bottom: 50px;
    }
}

.iconic-wlv-terms__term--image {
    opacity: 0.7;
    transition: all ease-in-out 0.2s;
}

.iconic-wlv-terms__term--image:hover {
    opacity: 1;
    transition: all ease-in-out 0.2s;
}

.iconic-wlv-terms__term--current {
    opacity: 1;
}

.iconic-wlv-terms__term--current .iconic-wlv-terms__term-content {
    border: 4px solid #4c7db6;
}

/* Hide default WooCommerce sale badge on single product pages only (use custom badges instead) */
.single-product span.onsale {
    display: none;
}

.woocommerce-js.single-product .sale:not(.ast-product-gallery-layout-vertical-slider) > span.onsale {
    display: none;
}

/* Hide thumb arrows when there’s nothing to scroll */
.ast-wcavi-thumbs.is-not-overflowing .flex-direction-nav {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

.ast-wcavi-thumbs ul.slides {
    margin: 0 !important;
}

/* Allow variation thumbnails even when Astra marks gallery as no-image */
.ast-product-gallery-with-no-image .woocommerce-product-gallery--wcavi .ast-single-product-thumbnails,
.ast-product-gallery-with-no-image .woocommerce-product-gallery--wcavi #ast-gallery-thumbnails {
    display: block !important;
}

/* END PRODUCT PAGE */

/* FOOTER */
footer.site-footer input[type="submit"] {
    border-color: #8AA8B2;
}

.site-primary-footer-wrap a.menu-link:hover,
.site-primary-footer-wrap .wp-block-uagb-icon-list-child > a:hover + span + span {
    text-decoration: underline;
    font-weight: 600;
}

#field_submit input[type="submit"] {
    background-color: #5177a8;
    border-color: #5177a8;
    height: 100%;
}

.wp-block-uagb-icon-list.uagb-block-80cebd2a .wp-block-uagb-icon-list-child .uagb-icon-list__label {
    line-height: 1.7em;
}

/* END FOOTER */


.single_variation_wrap.loading {
    filter: blur(10px);
}

.single_variation_wrap.loading .woocommerce-variation-price {
    display: none;
}

.qty-fieldset {
    display: none;
}

.entry-content[data-ast-blocks-layout] > ul,
.entry-content[data-ast-blocks-layout] > ol {
    margin-left: 2rem;
}

/* LINKS in content */
.ast-comment-content a:hover,
.woocommerce-js .woocommerce-product-details__short-description a:hover {
    text-decoration: none;
}

.ast-single-post .entry-content a:hover span,
.ast-single-post .entry-content a:hover u {
    text-decoration: none !important;
}

.error-404 header.page-header h1 {
    margin-bottom: 25px;
    color: var(--ast-global-color-2);
    font-weight: 600;
}

body.woocommerce-account:not(.logged-in) .entry-content .woocommerce {
    background-color: var(--ast-global-color-5);
}

body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.woocommerce-table,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table {
    border-collapse: collapse;
}

body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.woocommerce-table thead,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.woocommerce-table tbody,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.woocommerce-table tfoot,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table thead,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table tbody,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table tfoot {
    border: 1px solid var(--ast-border-color);
    border-collapse: collapse;
}

body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.woocommerce-table thead tr,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.woocommerce-table thead td,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.woocommerce-table thead th,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.woocommerce-table tbody tr,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.woocommerce-table tbody td,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.woocommerce-table tbody th,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.woocommerce-table tfoot tr,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.woocommerce-table tfoot td,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.woocommerce-table tfoot th,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table thead tr,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table thead td,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table thead th,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table tbody tr,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table tbody td,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table tbody th,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table tfoot tr,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table tfoot td,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table tfoot th {
    border: 0;
}

body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.woocommerce-table tbody tr,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.woocommerce-table tbody td,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.woocommerce-table tbody th,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table thead tr,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table thead td,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table thead th {
    background-color: #dae2e4;
}

body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table tbody tr,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table tbody td,
body:not(.iproi_print) .woocommerce .woocommerce-MyAccount-content table.account-payment-methods-table tbody th {
    background-color: rgba(0, 0, 0, 0.03);
}


body.woocommerce-account h1.entry-title {
    font-weight: 600;
}

body.woocommerce-account h2 {
    font-size: 1.7rem;
    line-height: 1.3;
}

body.woocommerce-account .woocommerce-column address {
    background-color: rgba(0, 0, 0, 0.03);
}


body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column h2.woocommerce-column__title {
    background-color: #dae2e4;
}

.woocommerce-MyAccount-content input[type=text] {
    padding: 11px;
    line-height: 1;
}

.woocommerce .woocommerce-Addresses header.woocommerce-Address-title {
    background-color: #dae2e4;
}

.woocommerce .woocommerce-Addresses address {
    background-color: rgba(0, 0, 0, 0.03);
}

/* Per Page Facet*/
.ip-facetwp-per-page-wrap .facetwp-facet {
    margin-bottom: 0;
}

.ip-facetwp-per-page-wrap .facetwp-facet select.facetwp-per-page-select {
    border-radius: 0;
}

.woocommerce .ast-shop-toolbar-container .ast-shop-toolbar-aside-wrap p.woocommerce-result-count {
    color: var(--ast-global-color-3);
    font-size: 1rem;
}

@media (max-width: 921px) {
    body.ast-single-post.ast-separate-container .ast-article-single:not(.ast-related-post) {
        padding: 0 var(--ast-container-default-xlg-padding);
        background: none;
    }
}

body.ast-single-post:not(.woocommerce-page) article.ast-article-single header.entry-header {
    margin-left: calc(-1 * var(--ast-container-default-xlg-padding));
    margin-right: calc(-1 * var(--ast-container-default-xlg-padding));
}

body.single.single-post.ast-desktop div#content div#primary main#main > article {
    padding-top: 0;
}

body.single.single-post.ast-desktop div#content div#primary main#main > article .wp-block-uagb-container:before {
    width: 100%;
    left: 0;
}

body.single.single-post .entry-meta {
    font-style: italic;
}

/* Blog Archive */
body.blog.ast-separate-container .site-main > .ast-row > .ast-article-post:first-child {
    padding-top: 0;
}

.ast-blog-layout-4-grid .ast-article-inner {
    background: #fff;
}

.ast-blog-layout-4-grid .ast-article-inner.ast-no-thumb .ast-blog-featured-section {
    margin-bottom: 1.5rem;
}

.ast-blog-layout-4-grid .ast-article-inner .post-thumb-img-content.post-thumb {
    max-height: 200px;
    overflow: hidden;
}

.ast-blog-layout-4-grid .ast-article-inner .post-thumb-img-content.post-thumb img {
    height: 200px;
    width: 100%;
    object-fit: cover;
    transition: 0.3s all;
}

body.blog .post-thumb-img-content.post-thumb img,
body.archive.category.category-resources .post-thumb-img-content.post-thumb img {
    aspect-ratio: 1 / 1;
    margin: 0 auto;
    display: block;
}

body.blog .ast-article-inner h2.entry-title,
body.archive.category.category-resources .ast-article-inner h2.entry-title {
    text-align: center;
}

.ast-blog-layout-4-grid .ast-article-inner .post-thumb-img-content.post-thumb:hover img {
    transform: scale(1.1);
}

.ast-blog-layout-4-grid .ast-article-inner .entry-title a:hover {
    text-decoration: underline;
    color: #000;
}

.ast-blog-layout-4-grid .ast-article-inner h2.entry-title {
    padding: 0 1.5rem;
}

.ast-blog-layout-4-grid .ast-article-inner .ast-blog-meta-container {
    padding: 0 1.5rem;
    font-size: .8em;
    font-style: italic;
}

.ast-blog-layout-4-grid .ast-article-inner .ast-excerpt-container {
    padding: 0 1.5rem 1rem;
    line-height: 1.4;
}

.sidebar-main .widget_block {
    margin-bottom: 1.25em;
}

.sidebar-main li a:hover {
    text-decoration: underline;
}

nav .nav-links a {
    transition: all ease-in-out 0.2s;
}

nav .nav-links a:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: all ease-in-out 0.2s;
}

/* SOCIAL SHARING */
.ast-post-social-sharing {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.ast-post-social-sharing .ast-social-sharing-heading {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: #233050;
}

a[href*="facebook.com"], a[href*="instagram.com"], a[href*="youtube.com"], a[href*="pinterest.com"], a[href*="tiktok.com"], a[href*="behance.net"], .header-social a, .header-social-icons a, .ast-header-social-wrap a, .ast-builder-social-element a {
    pointer-events: all;
    cursor: pointer;
}

/* Cart Page*/
.woocommerce-cart-form tbody, #ast-cart-wrapper .cart_totals {
    background-color: var(--ast-global-color-5);
}

.woocommerce-page #ast-cart-wrapper table.shop_table thead, #ast-cart-wrapper .cart-collaterals .cart_totals h2 {
    background-color: #6f8ab6;
    color: var(--ast-global-color-5);
}

.address_container_billing.container_selected,
.address_container_shipping.container_selected {
    border: 2px solid #dedede;
    background: #f6f6f6;
}

.woocommerce-page.woocommerce-js h1.entry-title {
    font-size: 2.5rem;
    font-weight: 600;
}

.woocommerce-page.woocommerce-js h2 {
    font-size: 1.5rem;
}

.woocommerce-message, .woocommerce-info {
    outline: none !important;
}

.search .ast-archive-description {
    padding: 0 0 1rem 0;
}

.woocommerce-js div.product div.product_meta > span {
    display: block;
}

.woocommerce-js div.product div.product_meta > span.ipbd-prop65-warning {
    margin-top: 1.5rem;
}

table.woocommerce-product-attributes.loading {
    filter: blur(3px);
}

div.product-type-simple div.summary.entry-summary div#product_total_price {
    display: block !important;
}

.shop_table td.product-price {
    position: relative;
    gap: 6px;
    white-space: nowrap;
}

span.ip-bd-off.ip-bd-off-sale,
span.ip-bd-off.ip-bd-off-clearance {
    background-color: #6F8AB7;
    color: #fff;
    border-radius: 0;
    padding: 2px 5px;
    font-size: 10px;
    line-height: 1rem;
    font-weight: 600;
    position: absolute;
    top: 1rem;
    left: 4rem;
}

@media (width: 1024px) {
    span.ip-bd-off.ip-bd-off-sale,
    span.ip-bd-off.ip-bd-off-clearance {
        top: 2.5rem;
        left: 1rem;
    }
}

@media (min-width: 1025px) {
    span.ip-bd-off.ip-bd-off-sale,
    span.ip-bd-off.ip-bd-off-clearance {
        top: 1rem;
        left: 1rem;
    }
}


/* mini cart flyout */

.ast-site-header-cart .woocommerce.widget_shopping_cart, div.astra-cart-drawer {
    background-color: var(--ast-global-color-0);
}

.ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content a:not(.button), .astra-cart-drawer .widget_shopping_cart_content a:not(.button) {
    color: var(--ast-global-color-2);
}

.woocommerce-mini-cart-item a.remove_from_cart_button {
    color: var (--ast-global-color-2);
}

.woocommerce-mini-cart-item a::before {
    border-color: var (--ast-global-color-2);
}

.astra-cart-drawer .astra-cart-drawer-close {
    right: 1.2rem;
}

.astra-cart-drawer button.astra-cart-drawer-close:hover {
    background: #b76f6f;
}

.woocommerce-js .astra-cart-drawer .widget_shopping_cart_content a.button.wc-forward:not(.checkout),
.woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping),
.woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout {
    color: #ffffff;
    background-color: #4B7DB5;
}

.woocommerce-js .astra-cart-drawer .widget_shopping_cart_content a.button.wc-forward:not(.checkout):hover,
.woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping):hover,
.woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout:hover {
    color: #ffffff;
    background-color: #346296;
}

/* projects styling */
.single-project div#primary {
    width: 100%;
}

.project-single-summary {
    display: flex;
    flex-direction: column; /* mobile first: stack */
    gap: 30px;
    margin-bottom: 40px;
}

/* Desktop layout: 2 columns */
@media (min-width: 768px) {
    .project-single-summary {
        flex-direction: row;
        align-items: flex-start;
    }

    .project-single-summary .project-media {
        flex: 1 1 40%; /* media takes ~60% */
        max-width: 40%;
    }

    .project-single-summary .project-summary {
        flex: 1 1 60%; /* summary takes ~40% */
        max-width: 60%;
    }
}

/* my account page */
.woocommerce-MyAccount-navigation-link.is-active a, .woocommerce-MyAccount-navigation-link:hover a {
    color: var(--ast-global-color-8)
}

@media (min-width: 921px) {
    .woocommerce-MyAccount-navigation-link:after {
        background-color: #d5dce6;
        width: 5px;
    }
}

body.logged-in .woocommerce-billing-fields .ip-b2b-hidden-field,
body.logged-in .woocommerce-shipping-fields .ip-b2b-hidden-field,
body.logged-in .woocommerce-address-fields .ip-b2b-hidden-field,
body.ip-wholesale-user.woocommerce-edit-account #account_first_name_field,
body.ip-wholesale-user.woocommerce-edit-account #account_last_name_field,
body.logged-in.ip-wholesale-user.woocommerce-account.woocommerce-edit-account form.woocommerce-EditAccountForm p.woocommerce-form-row--first,
body.logged-in.ip-wholesale-user.woocommerce-account.woocommerce-edit-account form.woocommerce-EditAccountForm p.woocommerce-form-row--last {
    display: none !important;
}

.ast-wooaccount-user-wrapper .ast-username-display {
    display: block;
    font-size: 0.875rem;
    opacity: 0.8;
}


/* MEDIA styles */
.project-media img {
    display: block;
    max-width: 100%;
    height: auto;
    border-radius: 6px;
}

/* Additional images row */
.project-media .additional-images {
    margin-top: 15px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.project-media .additional-images img {
    max-width: 120px;
    border-radius: 4px;
    cursor: pointer;
    transition: transform 0.2s ease;
}

.project-media .additional-images img:hover {
    transform: scale(1.05);
}

/* SUMMARY styles */
.project-summary h1.project-title {
    font-size: 2rem;
    margin: 10px 0 20px;
}

.project-summary .project-buttons {
    margin-top: 20px;
}

.project-summary .btn-pdf {
    display: inline-block;
    border-color: var(--ast-global-color-2);
    background-color: var(--ast-global-color-2);
    border: 2px solid var(--ast-global-color-2);
    color: #fff;
    padding: 10px 18px;
    margin-right: 12px;
    margin-bottom: 10px;
    text-decoration: none;
    font-weight: 600;
    transition: background 0.2s ease;
    display: block;
    width: fit-content;
}

.project-summary .btn-pdf:hover {
    background: #fff;
    color: var(--ast-global-color-2);
}

.woocommerce-js div.product form.cart table.ip-uom-details-table {
    float: left;
    width: fit-content;
    border-spacing: 0;
    border-collapse: collapse;
    margin-right: 1rem;
    border: unset;
}

.woocommerce-js div.product form.cart table.ip-uom-details-table th, table.ip-uom-details-table td {
    border: 1px solid;
    padding: .6rem .8rem !important;
    text-align: center;
    align-items: center;
}

.woocommerce-js div.product form.cart table.ip-uom-details-table #plus_qty-0 {
    margin-right: 0;
}

.ast-sticky-add-to-cart table.ip-uom-details-table {
    border: unset;
    margin-bottom: unset;
}

.ast-sticky-add-to-cart table.ip-uom-details-table thead,
.ast-sticky-add-to-cart table.ip-uom-details-table tbody td.ip-uom-text,
.ast-sticky-add-to-cart table.ip-uom-details-table tbody td.ip-price-each-text {
    display: none;
}

.ast-sticky-add-to-cart table.ip-uom-details-table tbody td.ip-qty-input-cell {
    padding: 0 !important;
    border: unset;
}

.wp-block-gallery .wp-block-image img {
    transition: all ease-in-out 0.3s;
}

.wp-block-gallery .wp-block-image a:hover img,
.wp-block-gallery .wp-block-image a:focus img,
.wp-block-gallery .wp-block-image a:focus-visible img {
    transform: scale(0.95);
}

/* Checkout Page */

.ast-modern-checkout .woocommerce #payment ul.payment_methods div.payment_box {
    background-color: rgb(255 255 255);
}

#ast-order-review-wrapper #order_review table,
.woocommerce-additional-fields #payment ul {
    background-color: #fff;
}

.payment_box fieldset {
    border: none;
    padding: 0;
}

/* this was set to none !important in the actual plugin file, which makes me think that the button is meant to have
*  this class removed but it never happens
*/
#place_order.ppcp-hidden {
    display: block !important;
}

.woocommerce-privacy-policy-link {
    text-decoration: underline;
    text-underline-offset: 2px;
}

#customer_details h3:not(.elementor-widget-woocommerce-checkout-page h3) {
    width: 100%;
}

.ast-modern-checkout .woocommerce form #ast-payment_options_heading {
    padding: 20px 0 14px;
    margin: 0 0 20px;
    border-bottom: 1px solid var(--ast-border-color);
    font-weight: 700;
}

.woocommerce-checkout.woocommerce-order-received .woocommerce-order .woocommerce-order-details table.shop_table tfoot tr td a {
    color: var(--ast-global-color-5);
    font-size: 15px;
    font-weight: 600;
    border-color: var(--ast-global-color-1);
    background-color: var(--ast-global-color-1);
    width: auto;
    text-align: center;
    padding: 12px 15px !important;
}

.woocommerce-checkout.woocommerce-order-received .woocommerce-order .woocommerce-order-details table.shop_table tfoot tr td a:hover {
    background: var(--ast-global-color-5);
    color: var(--ast-global-color-1);
    text-decoration: none;
}

.woocommerce-checkout.woocommerce-order-received .woocommerce-order ul.woocommerce-order-overview {
    background-color: color-mix(in srgb, var(--ast-global-color-secondary) 60%, white);
}

.woocommerce-checkout.woocommerce-order-received .woocommerce-order ul.woocommerce-order-overview li {
    font-weight: 700;
    color: var(--ast-global-color-2);
}

.woocommerce-checkout.woocommerce-order-received .woocommerce-order ul.woocommerce-order-overview li strong {
    color: #4a4a4a;
}

.woocommerce-order > p.woocommerce-thankyou-order-received + p {
    display: none;
}


/* End Checkout */

.ast-modern-checkout .woocommerce {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
}

.woocommerce-checkout .ppc-button-wrapper, .woocommerce-checkout div#wc-stripe-express-checkout-element {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 !important;
    flex-wrap: wrap;
    min-width: 25%;
    max-height: 60px !important;
}

.ast-modern-checkout .woocommerce .ppc-button-wrapper #ppc-button-ppcp-gateway {
    display: block!important;
    width: 100%;
    margin: 0 !important;
    height: auto;
}

.ast-modern-checkout .woocommerce .ppc-button-wrapper #ppc-button-ppcp-gateway iframe {
    margin: 0;
}

.ast-modern-checkout .woocommerce #wc-stripe-express-checkout-button-separator {
    width: 100%;
}

@media (max-width: 920px) {
    .woocommerce-checkout .ppc-button-wrapper, .woocommerce-checkout div#wc-stripe-express-checkout-element {
        min-width: 33%;
    }
}

@media (max-width: 768px) {
    .ast-modern-checkout .woocommerce .ppc-button-wrapper {
        margin-left: 0 !important;
        width: 100%;
    }

    .woocommerce-checkout .ppc-button-wrapper, .woocommerce-checkout div#wc-stripe-express-checkout-element {
        flex-grow: 1;
    }

    .ast-modern-checkout .woocommerce .ppc-button-wrapper #ppc-button-ppcp-gateway {
        width: 100%;
    }

    .ast-modern-checkout .woocommerce div#wc-stripe-express-checkout-element > .StripeElement {
        margin: 0 !important;
    }

    .ast-modern-checkout .woocommerce div#wc-stripe-express-checkout-element > .StripeElement:first-of-type {
        margin-top: 8px !important;
    }
}

/***CATEGORY PAGE***/
.tax-product_cat #primary {
    margin: 2em 0 4em;
}

.product-cat-hero {
    width: 100%;
    margin-bottom: 1.5rem;
    order: -1;
    flex-basis: 100%;
    min-height: 180px;
    position: relative;
    overflow: hidden;
}

.product-cat-hero .product-cat-hero__image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.product-cat-title {
    margin-bottom: 1.5rem;
}

.product-cat-description-bottom {
    margin-top: 2.5rem;
    padding-top: 1.5rem;
    border-top: 1px solid #dcdcdc;
    font-size: 0.9375rem;
    line-height: 1.6;
}

.product-cat-description-bottom__inner p:last-child {
    margin-bottom: 0;
}

.ast-archive-description p {
    display: none;
}

.woocommerce-page .ast-archive-description {
    width: 100%;
}

@media (min-width: 768px) {
    .product-cat-hero {
        margin-bottom: 2rem;
        min-height: 250px;
    }

    .product-cat-description-bottom {
        margin-top: 3rem;
        font-size: 1rem;
    }
}

@media (min-width: 922px) {
    body.page .site-content .ast-container {
        flex-direction: column;
    }
}

/* MOBILE MENU */
.ast-mobile-popup-drawer .my-account-offcanvas .ast-icon,
.ast-mobile-popup-drawer .cart-offcanvas .ast-icon {
    display: none;
}

.ast-mobile-popup-drawer .my-account-offcanvas > .menu-link,
.ast-mobile-popup-drawer .cart-offcanvas > .menu-link {
    display: flex !important;
    align-items: center;
    gap: 0.25rem;
    padding: 0.75rem 1rem;
    font-weight: 400;
    font-size: 14px;
    color: var(--ast-global-color-2);
    text-decoration: none;
}

.ast-mobile-popup-drawer .cart-offcanvas > .menu-link {
    justify-content: space-between;
}

.ast-mobile-popup-drawer .my-account-offcanvas > .menu-link::before,
.ast-mobile-popup-drawer .cart-offcanvas > .menu-link::before {
    content: "";
    display: inline-block;
    width: 1rem;
    height: 1rem;
    flex: 0 0 1rem;
    margin-right: 0.5rem;
    background-color: currentColor;
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
}

.ast-mobile-popup-drawer .my-account-offcanvas > .menu-link::before {
    mask-image: url("../images/account.svg");
    -webkit-mask-image: url("../images/account.svg");
}

.ast-mobile-popup-drawer .cart-offcanvas > .menu-link::before {
    mask-image: url("../images/shopping-bag.svg");
    -webkit-mask-image: url("../images/shopping-bag.svg");
}

.ast-mobile-popup-drawer .my-account-offcanvas > .menu-link:hover,
.ast-mobile-popup-drawer .my-account-offcanvas > .menu-link:focus,
.ast-mobile-popup-drawer .cart-offcanvas > .menu-link:hover,
.ast-mobile-popup-drawer .cart-offcanvas > .menu-link:focus {
    color: #000000;
}

.ast-mobile-popup-drawer .offcanvas-cart-meta {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin-left: auto;
    font-size: 0.875rem;
}

.ast-mobile-popup-drawer .offcanvas-cart-total {
    white-space: nowrap;
}

.ast-mobile-popup-drawer .offcanvas-cart-count {
    min-width: 1.5rem;
    text-align: center;
    border-radius: 999px;
    padding: 0.125rem 0.5rem;
    background-color: var(--ast-global-color-2);
    color: #ffffff;
    font-size: 0.75rem;
    line-height: 1;
}

body.single-product div#product_total_price {
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

body.single-product div#product_total_price span.ip-bd-off {
    padding: 6px;
    background: #8aa8b2;
    border-radius: 12px;
    color: #000;
}

body.single-product div#product_total_price span.price {
    color: #4B7DB5;
    margin-bottom: 0;
}

/* ########################################
*   BEGIN UPSELL products styling fixes
*  ######################################## */
/* Force the plugin grid to match Astra's grid layout */
ul.ucs-row {
    display: grid;
    column-gap: 20px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

/* Ensure the list items behave like Astra product cards */
ul.ucs-row li.product {
    width: 100%;
    box-shadow: none !important;
    border: 1px solid #e0e0e0 !important;
    background-color: #ffffff;
    max-width: 100% !important;
    padding: 0;
    padding-bottom: 1.2em;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}

ul.ucs-row li.product .woocommerce-loop-product__title {
    margin-bottom: .5em;
    font-size: 1em !important;
    padding: 0 1.2em;
}

ul.ucs-row li.product .woocommerce-loop-product__link:hover,
ul.ucs-row li.product .woocommerce-loop-product__link:focus {
    text-decoration: none;
}

ul.ucs-row li.product .woocommerce-loop-product__link:hover .woocommerce-loop-product__title,
ul.ucs-row li.product .woocommerce-loop-product__link:focus .woocommerce-loop-product__title {
    text-decoration: underline;
}

ul.ucs-row li.product .price {
    color: var(--ast-global-color-3);
    line-height: 1.3;
    font-weight: 700;
    margin-bottom: .5em;
    font-size: .9em;
    padding: 0 1.2em;
}

ul.ucs-row li.product a.button {
    margin: .5em 0;
    margin-top: auto;
    flex-shrink: 0;
    padding: 12px 24px !important;
    border: 2px solid #213150;
    color: #fff;
    background-color: #213150;
    white-space: normal;
    width: calc(100% - (1.2em * 2));
}

ul.ucs-row li.product a.button:hover,
ul.ucs-row li.product a.button:focus {
    border-color: #213150;
    background-color: #fff;
    color: #213150;
    text-decoration: none;
}

.woocommerce .ast-sticky-add-to-cart .button.alt:hover,
.woocommerce .ast-sticky-add-to-cart .button.alt:focus-visible {
    border-color: var(--ast-global-color-1);
}

/* Mobile Responsiveness */
ul.ucs-row {
    @media screen and (max-width: 921px) {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    @media screen and (max-width: 544px) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* ########################################
*   END UPSELL products styling fixes
*  ######################################## */


.site-header .site-description {
    font-style: italic;
    text-align: right;
    font-size: clamp(12px, 2.5vw, 16px);
}

.ast-sticky-main-shrink .ast-sticky-shrunk .site-description {
    font-size: 10px;
}

.woo-variation-swatches.wvs-show-label .variations th .woo-selected-variation-item-name {
    display: none;
}

.page:not(.home) main > article:first-of-type {
    padding-top: 60px !important;
}

/* Hide UOM table completely when APQ is disabled, show only quantity */
.ip-uom-details-table.apq-disabled {
    display: block !important;
    border: none !important;
    background: transparent !important;
    width: auto !important;
}

.ip-uom-details-table.apq-disabled thead,
.ip-uom-details-table.apq-disabled .ip-uom-text,
.ip-uom-details-table.apq-disabled .ip-price-each-text {
    display: none !important;
}

.ip-uom-details-table.apq-disabled tbody,
.ip-uom-details-table.apq-disabled tbody tr,
.ip-uom-details-table.apq-disabled tbody tr td.ip-qty-input-cell {
    display: block !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
}

/*Footer Newsletter Confirmation*/
aside.footer-widget-area div#gform_confirmation_message_5 {
    color: #42618a;
    margin-bottom: 30px;
    text-align: left;
    padding: 12px 0;
}

/* Clearance badge padding */
.woocommerce ul.products li.product .onsale.clearance-badge,
.woocommerce-page ul.products li.product .onsale.clearance-badge,
span.ast-onsale-card.clearance-badge {
    padding: 0 7px;
}

/* ACCESSIBILITY FIXES */

.entry-content a:not(.wp-element-button):not(.button):not(.wp-block-button__link),
.page-content a:not(.wp-element-button):not(.button):not(.wp-block-button__link),
.ast-page-builder-template .entry-content a:not(.wp-element-button):not(.button):not(.wp-block-button__link) {
    text-decoration: underline;
    text-underline-offset: 2px;
}

.entry-content a:not(.wp-element-button):not(.button):not(.wp-block-button__link):hover,
.page-content a:not(.wp-element-button):not(.button):not(.wp-block-button__link):hover,
.ast-page-builder-template .entry-content a:not(.wp-element-button):not(.button):not(.wp-block-button__link):hover {
    text-decoration-thickness: 2px;
}

.woocommerce .woocommerce-breadcrumb,
.woocommerce .woocommerce-breadcrumb a,
.ast-breadcrumbs-wrapper a,
.ast-breadcrumbs-wrapper,
.trail-items a,
.trail-items span {
    color: #595959;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce div.product .price ins,
.woocommerce div.product .summary .price .woocommerce-Price-amount,
.woocommerce-Price-amount.amount {
    color: #1a5c96 !important;
}

.site-header .woocommerce-Price-amount.amount {
    color: #fff !important;
}

.woocommerce div.product p.price del,
.woocommerce div.product span.price del,
.woocommerce div.product .price del .woocommerce-Price-amount {
    color: #595959 !important;
}

.ast-button-wrap .ast-mobile-menu-trigger-minimal,
.ast-header-break-point .ast-mobile-menu-buttons .ast-button-wrap .menu-toggle,
.ast-mobile-menu-buttons .ast-button-wrap {
    min-width: 44px;
    min-height: 44px;
}

.ast-mobile-menu-buttons .menu-toggle {
    min-width: 44px;
    min-height: 44px;
    padding: 8px;
}

.ast-header-account-wrap .ast-header-account-link,
.ast-site-header-cart .ast-site-header-cart-li > a,
.site-header-focus-item .ast-header-account-wrap,
.site-header-focus-item[data-section="section-header-account"] {
    min-width: 32px;
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.ast-site-header-cart .cart-container,
.ast-site-header-cart .ast-cart-menu-wrap {
    min-width: 32px;
    min-height: 32px;
}

/* END ACCESSIBILITY FIXES */


@media (min-width: 921px) and (max-width: 1426px) {
    .ast-builder-grid-row.ast-grid-center-col-layout .custom-logo-link img {
        max-width: 145px;
    }

    .ast-builder-grid-row.ast-grid-center-col-layout .site-description {
        font-size: 10px;
    }

    .ast-builder-grid-row.ast-grid-center-col-layout .menu-item > .menu-link {
        font-size: 14px;
    }

    .ast-builder-grid-row.ast-grid-center-col-layout .main-header-menu > .menu-item {
        line-height: unset;
    }
}

@media (min-width: 921px) {
    .ast-builder-grid-row.ast-grid-center-col-layout {
        grid-template-columns: minmax(0px, 145px) 1fr minmax(0, 235px);
    }

    .site-header-primary-section-right-center:not(:has(*)) {
        display: none;
    }
}

@media (min-width: 1426px) {
    .ast-builder-grid-row.ast-grid-center-col-layout {
        grid-template-columns: minmax(145px, 235px) 1fr minmax(0, 235px);
    }
}

/* Quick Order: disabled Add Items to Cart state */
.b2bwoo-quick-order-form #b2bwoo_quick_order_add_to_cart_btn:disabled,
.b2bwoo-quick-order-form #b2bwoo_quick_order_add_to_cart_btn.is-disabled,
.b2bwoo-quick-order-form #b2bwoo_quick_order_add_to_cart_btn.is-qty-updating,
.b2bwoo-quick-order-form #b2bwoo_quick_order_add_to_cart_btn[data-disabled-reason="updating"] {
    opacity: 0.55;
    cursor: not-allowed;
    pointer-events: none;
}

.b2bwoo-quick-order-form__contents td:has(.button.is-disabled):before {
    content: "First, search & select products to add to cart.";
    background: none;
}

.ip-quick-order-loading-cell {
    text-align: center;
    padding: 12px;
}

.ip-quick-order-spinner {
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    margin-right: 8px;
    vertical-align: text-bottom;
    animation: ipQuickOrderSpin 0.7s linear infinite;
}

.ip-quick-order-loading-text {
    font-weight: 600;
}

@keyframes ipQuickOrderSpin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.wp-block-uagb-info-box.uagb-infobox_cta-type-all:hover .uagb-ifb-title, .woocommerce table a:hover {
    color: var(--ast-global-color-8);
}
