body [class*="woocommerce-"] .button,
.woocommerce-notices-wrapper a {
    --btn-background: var(--secondary);
    --btn-background-hover: var(--secondary-hover);
    --btn-text-color: var(--primary-hover);
    --btn-text-color-hover: var(--secondary);
    --btn-border-color: var(--secondary);
    --btn-border-color-hover: var(--secondary);
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: auto;
    background: var(--btn-background);
    color: var(--btn-text-color);
    padding-block: var(--btn-padding-block);
    padding-inline: var(--btn-padding-inline);
    min-inline-size: var(--btn-min-width);
    line-height: var(--btn-line-height);
    font-size: var(--btn-font-size, var(--text-m));
    font-weight: var(--btn-font-weight);
    font-style: var(--btn-font-style);
    text-transform: var(--btn-text-transform);
    letter-spacing: var(--btn-letter-spacing);
    text-decoration: var(--btn-text-decoration);
    border-width: var(--btn-border-width);
    border-style: var(--btn-border-style);
    border-radius: var(--btn-radius);
    border-color: var(--btn-border-color);
    transition: var(--btn-transition, var(--transition));
    text-align: var(--btn-text-align, center);
}
@media (hover: hover) and (pointer: fine) {
    body [class*="woocommerce-"] .button:not(:disabled):hover,
    .woocommerce-notices-wrapper a:not(:disabled):hover {
        background: var(--btn-background-hover);
        color: var(--btn-text-color-hover);
        border-color: var(--btn-border-color-hover);
        text-decoration: var(--btn-text-decoration-hover);
    }
}
.brxe-woocommerce-mini-cart .cart-count {
    background-color: var(--secondary);
}
.brxe-woocommerce-mini-cart .cart-detail {
    background-color: var(--secondary);
    color: var(--primary-hover);
    border: none;
    border-radius: var(--btn-radius);
    box-shadow: 0 0 15px 0 rgba(25, 25, 25, 0.3);
    width: min(400px, calc(100vw - var(--gutter) * 2));
}
@media (max-width: 767px) {
    .brxe-woocommerce-mini-cart .cart-detail {
        top: calc(100% + 35px);
    }
    .brxe-woocommerce-mini-cart .cart-detail .widget_shopping_cart_content {
        padding: 20px;
    }
}
@media (max-width: 478px) {
    .brxe-woocommerce-mini-cart .cart-detail .woocommerce-mini-cart__buttons {
        grid-auto-flow: row;
        gap: 10px;
    }
}
.brxe-woocommerce-mini-cart .cart-detail .button {
    --btn-background: var(--primary);
    --btn-background-hover: var(--primary-hover);
    --btn-text-color: var(--secondary);
    --btn-text-color-hover: var(--secondary-dark);
    --btn-border-color: var(--primary);
    --btn-border-color-hover: var(--primary-hover);
}
.brxe-woocommerce-mini-cart .cart-detail .total > *,
.brxe-woocommerce-mini-cart .cart-detail .woocommerce-mini-cart__buttons > * {
    margin-block: 0;
}
.brxe-woocommerce-mini-cart .cart-detail .total,
.brxe-woocommerce-mini-cart .cart-detail .woocommerce-mini-cart__buttons {
    margin-top: 20px;
}
.brxe-product-price .price {
    display: flex;
    align-items: center;
}
.brxe-product-price .price del {
    margin-right: 13px;
    text-decoration-thickness: 1px;
}
.brxe-product-price .price bdi {
    display: block;
}
form.cart table.variations,
form.woocommerce-cart-form table.variations {
    margin-bottom: 24px;
}
@media (max-width: 1280px) {
    form.cart table.variations,
    form.woocommerce-cart-form table.variations {
        margin-top: -10px;
        margin-bottom: 14px;
    }
}
form.cart table.variations :is(td, th),
form.woocommerce-cart-form table.variations :is(td, th) {
    padding-top: 20px;
    padding-bottom: 20px;
    padding-left: 15px;
    padding-right: 15px;
}
@media (max-width: 1280px) {
    form.cart table.variations :is(td, th),
    form.woocommerce-cart-form table.variations :is(td, th) {
        padding-top: 10px;
        padding-bottom: 10px;
        padding-left: 10px;
        padding-right: 10px;
    }
}
form.cart table.variations :is(td, th):first-child,
form.woocommerce-cart-form table.variations :is(td, th):first-child {
    padding-left: 0;
}
form.cart table.variations :is(td, th):last-child,
form.woocommerce-cart-form table.variations :is(td, th):last-child {
    padding-right: 0;
}
@media (max-width: 991px) {
    form.cart table.variations td,
    form.woocommerce-cart-form table.variations td {
        width: 60%;
    }
}
@media (max-width: 767px) {
    form.cart table.variations td,
    form.woocommerce-cart-form table.variations td {
        width: 50%;
    }
}
table.variations label {
    font-size: var(--text-l);
    color: var(--secondary);
}
form.cart table.variations .reset_variations,
form.woocommerce-cart-form table.variations .reset_variations {
    margin-top: 5px;
}
.woocommerce-variation-add-to-cart {
    display: flex;
    align-items: stretch;
    gap: 13px;
    flex-wrap: nowrap;
}
.woocommerce-variation-add-to-cart .quantity + button {
    margin-top: 0;
    flex-grow: 1;
}
form.cart .quantity + button {
    --btn-radius: 0px;
    --btn-text-color: #F5F5F4;
    --btn-font-size: var(--text-l);
}
form.cart .quantity,
form.woocommerce-cart-form .quantity {
    width: 135px;
    height: 53px;
    border: 1px solid rgba(65, 65, 65, 0.20);
}
form.cart .quantity .minus,
form.woocommerce-cart-form .quantity .minus {
    border-right: 1px solid rgba(65, 65, 65, 0.20);
}
form.cart .quantity .plus,
form.woocommerce-cart-form .quantity .plus {
    border-left: 1px solid rgba(65, 65, 65, 0.20);
}
form.cart .quantity :is(.minus, .plus),
form.woocommerce-cart-form .quantity :is(.minus, .plus) {
    width: 40px;
    opacity: 1;
}
form.cart .quantity .qty,
form.woocommerce-cart-form .quantity .qty {
    font-size: var(--text-l);
    background: transparent;
    padding: 0;
    border: none;
    min-height: auto;
    border-radius: 0;

}
form.cart .quantity .qty:focus-visible,
form.woocommerce-cart-form .quantity .qty:focus-visible {
    outline: none !important;
}
.woocommerce-notices-wrapper a {
    float: right;
}
@media (max-width: 478px) {
    .woocommerce-notices-wrapper > *,
    .woocommerce-notices-wrapper > * > li {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        row-gap: 10px;
    }
    .woocommerce-notices-wrapper a {
        float: none;
        margin: 0;
    }
}
.woocommerce-cart-form .product-thumbnail {
    width: 100px;
}
@media (max-width: 767px) {
    .woocommerce-cart-form .product-thumbnail {
        width: 140px;
        margin-left: auto;
    }
    .woocommerce-cart-form .product-remove {
        margin-left: auto;
    }
}
.woocommerce-cart-form .product-thumbnail * {
    display: block;
    width: 100%;
}
.woocommerce-cart-form .product-thumbnail img {
    aspect-ratio: 1;
}
.woocommerce-cart-form :is(th, td) {
    padding-left: 10px;
    padding-right: 10px;
}
.woocommerce-cart-form :is(th, td):first-child {
    padding-left: 0;
}
.woocommerce-cart-form :is(th, td):last-child {
    padding-right: 0;
}
.woocommerce-cart-form,
.woocommerce-cart-form tbody .product-name::before {
    font-size: var(--text-l);
}
.woocommerce-cart-form tbody .product-name {
    font-size: var(--text-xl);
}
.woocommerce-cart-form .coupon {
    align-items: stretch;
    row-gap: 5px;
    flex-wrap: wrap;
}
.woocommerce-cart-form .coupon .coupon-error-notice {
    width: 100%;
    flex-shrink: 0;
    font-size: var(--text-xs);
    text-align: left;
}
.woocommerce-cart-form .coupon input[type="text"] {
    height: auto;
    width: 300px;
}
@media (max-width: 767px) {
    .woocommerce-cart-form .coupon input[type="text"] {
        width: 200px;
    }
}
@media (max-width: 478px) {
    .woocommerce-cart-form .coupon {
        flex-direction: column;
    }
    .woocommerce-cart-form .coupon input[type="text"] {
        width: 100%;
    }
}
.woocommerce-cart-form .coupon .button {
    align-self: stretch;
}
.woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout-review-order {
    margin-top: 30px;
}
.woocommerce-checkout-review-order {
    border: 1px solid var(--secondary);
    width: 100%;
}
.woocommerce-checkout .woocommerce label {
    letter-spacing: normal;
    font-size: var(--text-l);
    margin-bottom: 10px;
    font-weight: 400;
}
:where(.woocommerce-checkout) p {
    margin: 0 0 24px;
}
.woocommerce-additional-fields p:last-child {
    margin-bottom: 0;
}
.woocommerce-checkout .woocommerce label.woocommerce-form__label-for-checkbox {
    font-size: var(--h3);
    margin-bottom: 30px;
}
@layer bricks {
    label.woocommerce-form__label-for-checkbox input[type="checkbox"] {
        display: none !important;
    }
}
label.woocommerce-form__label-for-checkbox input[type="checkbox"] + span::before {
    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%3Cpath d='M5 21C4.45 21 3.979 20.8043 3.587 20.413C3.19567 20.021 3 19.55 3 19V5C3 4.45 3.19567 3.979 3.587 3.587C3.979 3.19567 4.45 3 5 3H19C19.55 3 20.021 3.19567 20.413 3.587C20.8043 3.979 21 4.45 21 5V19C21 19.55 20.8043 20.021 20.413 20.413C20.021 20.8043 19.55 21 19 21H5ZM5 19H19V5H5V19Z' fill='%23414141'/%3E%3C/svg%3E%0A");
    top: 50%;
    transform: translateY(-50%);
}
label.woocommerce-form__label-for-checkbox input[type="checkbox"]:checked + span::before {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='25' viewBox='0 0 24 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.6 16.4505L17.65 9.40049L16.25 8.00049L10.6 13.6505L7.75 10.8005L6.35 12.2005L10.6 16.4505ZM5 21.2505C4.45 21.2505 3.979 21.0548 3.587 20.6635C3.19567 20.2715 3 19.8005 3 19.2505V5.25049C3 4.70049 3.19567 4.22949 3.587 3.83749C3.979 3.44615 4.45 3.25049 5 3.25049H19C19.55 3.25049 20.021 3.44615 20.413 3.83749C20.8043 4.22949 21 4.70049 21 5.25049V19.2505C21 19.8005 20.8043 20.2715 20.413 20.6635C20.021 21.0548 19.55 21.2505 19 21.2505H5ZM5 19.2505H19V5.25049H5V19.2505Z' fill='%23414141'/%3E%3C/svg%3E%0A");
}
.woocommerce-checkout-review-order-table,
.brxe-woocommerce-checkout-order-table {
    font-size: var(--text-l);
}
.woocommerce-checkout .woocommerce-shipping-fields {
    margin: 40px 0 0;
}
@media (max-width: 767px) {
    .woocommerce-checkout .woocommerce-shipping-fields {
        margin: 20px 0 0;
    }
}
.woocommerce-thankyou-order-received {
    font-size: var(--h2);
    font-family: var(--heading-font-family);
    line-height: var(--heading-line-height);
    font-weight: var(--heading-font-weight);
    margin-bottom: 40px;
    color: var(--primary-dark);
}
@media (max-width: 767px) {
    .woocommerce-thankyou-order-received {
        margin-bottom: 24px;
    }
}
.woocommerce-order-overview.order_details + p:not([class]) {
    margin-top: 20px;
}
.woocommerce-order-overview.order_details {
    grid-template-columns: repeat(5, 1fr);
}
@media (max-width: 1280px) {
    .woocommerce-order-overview.order_details {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 478px) {
    .woocommerce-order-overview.order_details {
        grid-template-columns: 1fr;
    }
    .woocommerce-order-overview.order_details li {
        padding-left: 0;
        padding-right: 0;
    }
}
.woocommerce-order-details, .woocommerce-order-downloads {
    margin: 60px 0;
}
@media (max-width: 767px) {
    .woocommerce-order-details, .woocommerce-order-downloads {
        margin: 40px 0;
        row-gap: 24px;
    }
}
.shop_table tbody .product-name {
    font-size: var(--h3);
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight);
    line-height: var(--heading-line-height);
}
.shop_table tbody .product-name::before {
    font-size: var(--text-l);
    font-family: var(--text-font-family);
    line-height: var(--text-line-height);
    font-weight: 700;
}
.shop_table tbody .product-name .product-quantity {
    font-family: var(--text-font-family);
    vertical-align: middle;
}
.woocommerce-columns--2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
    align-items: flex-start;
}
@media (max-width: 767px) {
    .woocommerce-columns--2 {
        grid-template-columns: 1fr;
    }
}
.woocommerce-columns--2 > * {
    height: 100%;
}
.woocommerce-columns--addresses address {
    padding: 20px;
    background: var(--secondary);
    color: var(--secondary-hover);
    width: min(500px, 100%);
    font-style: italic;
    flex-grow: 1;
}
@media (max-width: 767px) {
    .woocommerce-columns--addresses .woocommerce-column {
        align-items: center;
    }
    .woocommerce-columns--addresses address {
        width: 100%;
    }
}
.woocommerce-customer-details address > *:last-child {
    margin-bottom: 0;
}
