/*
 Theme Name:   Store2Door Child Theme
 Theme URI:    https://bricksbuilder.io/
 Description:  Use this child theme to extend Bricks.
 Author:       Bricks
 Author URI:   https://bricksbuilder.io/
 Template:     bricks
 Version:      1.1
 Text Domain:  bricks
*/


/**
WooCommerce Custom CSS Classes
**/

.hide-variation-label dl.variation dt {
    display: none !important;
}


/* REsort Page*/
.hide_button_{post_id}.cartactive { display: inline-flex !important; }

.s2d-shop-header {
    background: #ffffff;
    color: #111111;
    width: 100%;
}

.s2d-shop-header__bar {
    background: #343434;
    color: #ffffff;
    padding: 5px 0;
}

.s2d-shop-header__inner {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1200px;
    padding: 0 40px;
}

.s2d-shop-header__nav,
.s2d-shop-header__actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
}

.s2d-shop-header a {
    color: inherit;
    text-decoration: none;
}

.s2d-shop-header a:hover {
    color: #32beff;
}

.s2d-shop-header__cart {
    align-items: center;
    display: inline-flex;
    gap: 7px;
}

.s2d-shop-cart-count {
    align-items: center;
    background: #f9fafe;
    border-radius: 999px;
    color: #111111;
    display: inline-flex;
    font-size: 12px;
    font-weight: 700;
    justify-content: center;
    line-height: 1;
    min-height: 20px;
    min-width: 20px;
    padding: 4px 6px;
}

.s2d-cart-counter-circle,
.s2d-shop-cart-count,
.s2d-cart-drawer-count,
.bu-cart-counter.cart-contents-count,
.bu-cart-counter.cart-items-quantities,
.brxe-bu-cart-counter .bu-cart-counter,
.bu-cart-counter-btn .bu-cart-counter,
.cart-counter .bu-cart-counter {
    align-items: center !important;
    aspect-ratio: 1 / 1;
    border-radius: 50% !important;
    display: inline-flex !important;
    flex: 0 0 20px;
    height: 20px !important;
    justify-content: center !important;
    line-height: 1 !important;
    min-height: 20px !important;
    min-width: 20px !important;
    padding: 0 !important;
    text-align: center;
    width: 20px !important;
}

.s2d-shop-header__logo-wrap {
    align-items: center;
    display: flex;
    justify-content: center;
    min-height: 150px;
    padding: 20px 40px 0;
}

.s2d-shop-header__logo-wrap img {
    display: block;
    height: auto;
    max-width: 264px;
    width: 100%;
}

.s2d-shop-cart-drawer {
    inset: 0;
    pointer-events: none;
    position: fixed;
    z-index: 100000;
}

.s2d-shop-cart-drawer.is-open {
    pointer-events: auto;
}

.s2d-shop-cart-backdrop {
    background: rgba(18, 22, 26, .42);
    inset: 0;
    opacity: 0;
    position: absolute;
    transition: opacity .18s ease;
}

.s2d-shop-cart-drawer.is-open .s2d-shop-cart-backdrop {
    opacity: 1;
}

.s2d-shop-cart-panel {
    background: #ffffff;
    box-shadow: -12px 0 34px rgba(0, 0, 0, .18);
    display: flex;
    flex-direction: column;
    height: 100%;
    margin-left: auto;
    max-width: 100%;
    outline: none;
    padding: 24px;
    position: relative;
    transform: translateX(100%);
    transition: transform .22s ease;
    width: 420px;
}

.s2d-shop-cart-drawer.is-open .s2d-shop-cart-panel {
    transform: translateX(0);
}

.s2d-cart-drawer-open {
    overflow: hidden;
}

.s2d-shop-cart-panel-header,
.s2d-shop-cart-summary,
.s2d-shop-cart-actions-row {
    align-items: center;
    display: flex;
    justify-content: space-between;
    gap: 16px;
}

.s2d-shop-cart-panel-header {
    border-bottom: 1px solid #e4e8ee;
    margin-bottom: 14px;
    padding-bottom: 14px;
}

.s2d-shop-cart-panel-header h2 {
    font-size: 24px;
    line-height: 1.2;
    margin: 0;
}

.s2d-shop-cart-close {
    align-items: center;
    background: #111111;
    border: 0;
    border-radius: 50%;
    color: #ffffff;
    cursor: pointer;
    display: inline-flex;
    font-size: 24px;
    height: 34px;
    justify-content: center;
    line-height: 1;
    padding: 0;
    width: 34px;
}

.s2d-shop-cart-summary {
    color: #3d4650;
    font-weight: 700;
    margin-bottom: 16px;
}

.s2d-cart-drawer-count {
    background: #111111;
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
}

.s2d-cart-drawer-body {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
}

.s2d-shop-cart-drawer .widget_shopping_cart_content {
    min-height: 100%;
}

.s2d-shop-cart-drawer .woocommerce-mini-cart {
    list-style: none;
    margin: 0;
    padding: 0;
}

.s2d-shop-cart-drawer .woocommerce-mini-cart-item {
    align-items: start;
    border-bottom: 1px solid #edf0f4;
    display: grid;
    gap: 4px 12px;
    grid-template-columns: 24px 1fr;
    padding: 13px 0;
}

.s2d-shop-cart-drawer .woocommerce-mini-cart-item > a:not(.remove) {
    color: #111111;
    font-weight: 700;
    grid-column: 2;
    line-height: 1.35;
    text-decoration: none;
}

.s2d-shop-cart-drawer .woocommerce-mini-cart-item img {
    display: none;
}

.s2d-shop-cart-drawer .woocommerce-mini-cart-item .remove {
    align-items: center;
    color: #ed1c24 !important;
    display: inline-flex;
    font-size: 22px;
    grid-column: 1;
    grid-row: 1 / span 2;
    height: 24px;
    justify-content: center;
    line-height: 1;
    margin-top: -1px;
    text-decoration: none !important;
    width: 24px;
}

.s2d-shop-cart-drawer .woocommerce-mini-cart-item .quantity {
    color: #5d6670;
    grid-column: 2;
    line-height: 1.35;
}

.s2d-shop-cart-drawer .woocommerce-mini-cart__empty-message {
    color: #5d6670;
    margin: 24px 0;
}

.s2d-shop-cart-actions-row {
    border-top: 1px solid #e4e8ee;
    flex: 0 0 auto;
    margin-top: 18px;
    padding-top: 18px;
}

.s2d-shop-cart-actions-row a {
    align-items: center;
    display: inline-flex;
    font-weight: 700;
    justify-content: center;
    min-height: 44px;
    padding: 11px 18px;
    text-decoration: none;
}

.s2d-shop-cart-secondary {
    border: 1px solid #ccd5df;
    color: #111111;
}

.s2d-shop-cart-primary {
    background: #32beff;
    color: #ffffff;
}

.show_cart_button.s2d-order-hidden {
    display: none !important;
}

.hide_cart_button.s2d-order-visible,
.hide_cart_button.cartactive {
    display: inline-flex !important;
}

.togglethis.s2d-order-panel-open,
.togglethis.cartactive,
[class*="section_"].s2d-order-panel-open {
    display: block !important;
    height: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.s2d-order-panel-open .bricks-lazy-hidden,
.s2d-order-panel-open form.cart,
.s2d-order-panel-open .woocommerce-variation-add-to-cart {
    opacity: 1 !important;
    visibility: visible !important;
}

.s2d-order-panel-open .single_add_to_cart_button {
    min-height: 34px;
    min-width: 120px;
    text-align: center;
}

.single_add_to_cart_button {
    align-items: center;
    justify-content: center;
    min-height: 34px;
    min-width: 120px;
}

.single_add_to_cart_button:empty::before {
    content: "Add to cart";
}

.single_add_to_cart_button.loading:empty::before,
.single_add_to_cart_button.s2d-cart-adding:empty::before {
    content: "Adding";
}

.single_add_to_cart_button.added:empty::before,
.single_add_to_cart_button.bricks-cart-added:empty::before {
    content: "Added";
}

.single_add_to_cart_button.s2d-cart-adding,
.single_add_to_cart_button.loading {
    opacity: .75;
}

.woocommerce-checkout #payment,
.woocommerce-checkout .woocommerce-checkout-payment,
.woocommerce-checkout .brxe-bu-payment-method,
.woocommerce-checkout .brxe-bu-payment-method #payment {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-checkout ul.wc_payment_methods,
.woocommerce-checkout .brxe-bu-payment-method ul {
    border: 0 !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
}

.woocommerce-checkout #payment ul.payment_methods li,
.woocommerce-checkout ul.wc_payment_methods li.wc_payment_method,
.woocommerce-checkout .brxe-bu-payment-method li.wc_payment_method {
    background: #ffffff !important;
    border: 1px solid #dde4ec !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    list-style: none !important;
    margin: 0 0 12px !important;
    padding: 14px 16px !important;
}

.woocommerce-checkout #payment ul.payment_methods li::marker,
.woocommerce-checkout ul.wc_payment_methods li::marker {
    content: "";
}

.woocommerce-checkout #payment div.payment_box,
.woocommerce-checkout .payment_box,
.woocommerce-checkout .sv-wc-payment-gateway-payment-form {
    background: #f9fafe !important;
    border: 0 !important;
    box-shadow: none !important;
    margin: 10px 0 0 !important;
    padding: 12px !important;
}

.woocommerce-checkout #payment div.payment_box::before {
    display: none !important;
}

.woocommerce-checkout .payment_box fieldset,
.woocommerce-checkout .payment_box .wc-credit-card-form,
.woocommerce-checkout .payment_box .wc-saved-payment-methods {
    border: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.woocommerce-checkout .payment_box .wc-saved-payment-methods li,
.woocommerce-checkout .payment_box .form-row {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    margin-bottom: 10px !important;
    padding: 0 !important;
}

.woocommerce-checkout .s2d-checkout-deposit-note {
    line-height: 1.5;
    margin-bottom: 14px !important;
}

.woocommerce-checkout .bu-checkout-fields,
.woocommerce-checkout .bu-checkout-fields .form-row,
.woocommerce-checkout .bu-checkout-fields .woocommerce-input-wrapper {
    box-sizing: border-box;
    float: none !important;
    max-width: none !important;
    width: 100% !important;
}

.woocommerce-checkout .bu-checkout-fields .form-row-first,
.woocommerce-checkout .bu-checkout-fields .form-row-last,
.woocommerce-checkout .bu-checkout-fields .form-row-wide {
    clear: none !important;
    float: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
}

.woocommerce-checkout #brxe-vykbqe,
.woocommerce-checkout #brxe-zeexhe,
.woocommerce-checkout #brxe-uecahy,
.woocommerce-checkout #brxe-dudqkz {
    gap: 0;
}

.woocommerce-checkout #brxe-vykbqe {
    column-gap: 24px;
    display: grid !important;
    grid-template-areas:
        "contact-title contact-title"
        "contact-rule contact-rule"
        "email-label phone-label"
        "email-field phone-field";
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 8px;
}

.woocommerce-checkout #brxe-anhcji {
    grid-area: contact-title;
}

.woocommerce-checkout #brxe-euryjf {
    grid-area: contact-rule;
}

.woocommerce-checkout #brxe-serfjj {
    grid-area: email-label;
}

.woocommerce-checkout #brxe-ghbeao {
    grid-area: phone-label;
}

.woocommerce-checkout #brxe-yxfsen {
    grid-area: email-field;
}

.woocommerce-checkout #brxe-nndcdg {
    grid-area: phone-field;
}

.woocommerce-checkout #billing_email_field > label,
.woocommerce-checkout #billing_phone_field > label {
    display: none !important;
}

.woocommerce-checkout #brxe-serfjj,
.woocommerce-checkout #brxe-ghbeao,
.woocommerce-checkout #brxe-yxfsen,
.woocommerce-checkout #brxe-nndcdg {
    min-width: 0;
    width: 100%;
}

.woocommerce-checkout #brxe-fpewsx,
.woocommerce-checkout #brxe-fomeqx,
.woocommerce-checkout #brxe-kfcfho,
.woocommerce-checkout #brxe-vzmvxt {
    align-items: start;
    column-gap: 24px;
    display: grid !important;
    row-gap: 14px;
    width: 100%;
}

.woocommerce-checkout #brxe-fpewsx,
.woocommerce-checkout #brxe-kfcfho,
.woocommerce-checkout #brxe-vzmvxt {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.woocommerce-checkout #brxe-fomeqx {
    grid-template-columns: minmax(0, 1.5fr) minmax(160px, 1.1fr) minmax(120px, .8fr);
}

.woocommerce-checkout #brxe-kcdotf,
.woocommerce-checkout #brxe-equzad,
.woocommerce-checkout #brxe-hxbrrr,
.woocommerce-checkout #brxe-cqnlgz,
.woocommerce-checkout #brxe-uztoxy,
.woocommerce-checkout #brxe-sxefyn,
.woocommerce-checkout #brxe-sgqkrd,
.woocommerce-checkout #brxe-xgslfy,
.woocommerce-checkout #brxe-ymagif,
.woocommerce-checkout #brxe-ylewvu,
.woocommerce-checkout #brxe-wccerw,
.woocommerce-checkout #brxe-fbakyr,
.woocommerce-checkout #brxe-lneubz,
.woocommerce-checkout #brxe-dvmxmq {
    min-width: 0;
    width: 100%;
}

.woocommerce-checkout #brxe-hxbrrr,
.woocommerce-checkout #brxe-cqnlgz,
.woocommerce-checkout #brxe-fbakyr,
.woocommerce-checkout #brxe-lneubz,
.woocommerce-checkout #brxe-dvmxmq {
    max-width: none;
}

.woocommerce-checkout #billing_address_1_field,
.woocommerce-checkout #billing_address_2_field,
.woocommerce-checkout #billing_property_management_company_field,
.woocommerce-checkout #billing_gratuity_field,
.woocommerce-checkout #billing_additional_requests_field {
    max-width: none !important;
    width: 100% !important;
}

.woocommerce-checkout #billing_email_field,
.woocommerce-checkout #billing_phone_field,
.woocommerce-checkout #billing_first_name_field,
.woocommerce-checkout #billing_last_name_field,
.woocommerce-checkout #billing_city_field,
.woocommerce-checkout #billing_state_field,
.woocommerce-checkout #billing_postcode_field,
.woocommerce-checkout #billing_delivery_date_field,
.woocommerce-checkout #billing_delivery_time_field,
.woocommerce-checkout #billing_reservation_name_field,
.woocommerce-checkout #billing_reservation_number_field,
.woocommerce-checkout #billing_property_management_company_field,
.woocommerce-checkout #billing_gratuity_field,
.woocommerce-checkout #billing_additional_requests_field {
    margin-bottom: 14px !important;
}

.woocommerce-checkout .form-row,
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row {
    margin-bottom: 16px !important;
}

.woocommerce-checkout label {
    color: #3d4650;
    display: block;
    font-weight: 500;
    line-height: 1.3;
    margin-bottom: 6px;
}

.woocommerce-checkout .woocommerce-input-wrapper {
    display: block;
    width: 100%;
}

.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="number"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout input[type="date"],
.woocommerce-checkout input[type="time"],
.woocommerce-checkout textarea,
.woocommerce-checkout select,
.woocommerce-checkout .select2-container .select2-selection--single {
    background: #ffffff;
    border: 1px solid #dfe5eb !important;
    border-radius: 4px;
    box-shadow: none !important;
    box-sizing: border-box;
    color: #222222;
    font-size: 15px;
    line-height: 1.35;
    min-height: 42px;
    padding: 10px 12px;
    transition: border-color .14s ease, box-shadow .14s ease;
    width: 100%;
}

.woocommerce-checkout .select2-container {
    max-width: none !important;
    width: 100% !important;
}

.woocommerce-checkout input[type="text"]:focus,
.woocommerce-checkout input[type="email"]:focus,
.woocommerce-checkout input[type="tel"]:focus,
.woocommerce-checkout input[type="number"]:focus,
.woocommerce-checkout input[type="password"]:focus,
.woocommerce-checkout input[type="date"]:focus,
.woocommerce-checkout input[type="time"]:focus,
.woocommerce-checkout textarea:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout .select2-container--open .select2-selection--single {
    border-color: #70a7c9 !important;
    box-shadow: 0 0 0 3px rgba(50, 190, 255, .16) !important;
    outline: 0;
}

.woocommerce-checkout .select2-container .select2-selection--single {
    align-items: center;
    display: flex;
}

.woocommerce-checkout .select2-selection__rendered {
    color: #222222 !important;
    line-height: 1.35 !important;
    padding-left: 0 !important;
    padding-right: 18px !important;
}

.woocommerce-checkout .select2-selection__arrow {
    height: 100% !important;
    right: 8px !important;
}

.woocommerce-checkout input::placeholder,
.woocommerce-checkout textarea::placeholder {
    color: #8a939d;
    opacity: 1;
}

.woocommerce-checkout #billing_additional_requests_field,
.woocommerce-checkout .form-row#billing_additional_requests_field {
    clear: both;
    max-width: none;
    width: 100% !important;
}

.woocommerce-checkout #billing_additional_requests_field .woocommerce-input-wrapper {
    display: block;
    width: 100%;
}

.woocommerce-checkout textarea#billing_additional_requests,
.woocommerce-checkout textarea[name="billing_additional_requests"] {
    box-sizing: border-box;
    display: block;
    line-height: 1.4;
    max-width: 100%;
    min-height: 120px;
    min-width: 250px;
    padding: 12px 14px;
    resize: vertical;
    width: 100% !important;
}

@media (max-width: 767px) {
    .woocommerce-checkout #brxe-vykbqe,
    .woocommerce-checkout #brxe-fpewsx,
    .woocommerce-checkout #brxe-fomeqx,
    .woocommerce-checkout #brxe-kfcfho,
    .woocommerce-checkout #brxe-vzmvxt {
        grid-template-columns: 1fr;
    }

    .woocommerce-checkout #brxe-vykbqe {
        grid-template-areas:
            "contact-title"
            "contact-rule"
            "email-label"
            "email-field"
            "phone-label"
            "phone-field";
    }
}

.woocommerce-cart .cart_item,
.woocommerce-cart .woocommerce-cart-form__cart-item,
.woocommerce-cart .shop_table td,
.woocommerce-cart .shop_table th {
    vertical-align: top;
}

.woocommerce-cart .product-remove,
.woocommerce-cart .product-name,
.woocommerce-cart .brxe-product-title,
.woocommerce-cart .cart_item [class*="product"] {
    align-items: flex-start;
}

.woocommerce-cart a.remove,
.woocommerce-cart .remove {
    align-items: center;
    color: #ed1c24 !important;
    display: inline-flex !important;
    font-size: 22px;
    height: 24px;
    justify-content: center;
    line-height: 1 !important;
    margin-top: 2px;
    text-decoration: none !important;
    vertical-align: top;
    width: 24px;
}

.woocommerce-cart a.remove:hover,
.woocommerce-cart .remove:hover {
    background: transparent !important;
    color: #c90009 !important;
}

.woocommerce-cart .product-name a,
.woocommerce-cart .brxe-product-title a {
    line-height: 1.35;
    text-decoration: none;
}

@media (max-width: 767px) {
    .s2d-shop-header__inner {
        gap: 10px;
        padding: 0 24px;
    }

    .s2d-shop-header__logo-wrap {
        min-height: 120px;
        padding: 18px 24px 0;
    }

    .s2d-shop-cart-panel {
        padding: 20px;
        width: min(92vw, 420px);
    }
}

@media (max-width: 478px) {
    .s2d-shop-header__inner {
        align-items: center;
        flex-direction: column;
        justify-content: center;
    }

    .s2d-shop-header__nav,
    .s2d-shop-header__actions {
        justify-content: center;
    }

    .s2d-shop-header__logo-wrap img {
        max-width: 150px;
    }

    .s2d-shop-cart-actions-row {
        align-items: stretch;
        flex-direction: column;
    }
}


/* RESORT AJAX POPUP CSS */

.resort-ajax-popup {
    max-width: 500px;
    align-items: flex-end;
}

.resort-ajax-popup .brxe-icon {
    font-size: 20px !important;
}


.resort-ajax-popup :focus-visible{
    outline: none;
}
