/* Shared cart/checkout presentation, scoped to the main content. */
body:is(.woocommerce-cart, .woocommerce-checkout) #content.site-main {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    margin-inline: 0;
    padding: 0 200px 60px;
    font-family: "interstate", Arial, sans-serif;
    font-size: 18px;
    line-height: 1.5;
}

body:is(.woocommerce-cart, .woocommerce-checkout) #content.site-main * {
    font-family: "interstate", Arial, sans-serif !important;
}

body:is(.woocommerce-cart, .woocommerce-checkout) #content .page-header,
body:is(.woocommerce-cart, .woocommerce-checkout) #content .entry-title {
    text-align: left;
    max-width: none;
    margin-inline: 0;
    padding-inline: 0;
}

body:is(.woocommerce-cart, .woocommerce-checkout) #content .entry-title {
    font-size: 50px;
    font-weight: 700;
    line-height: 1.15;
    margin-block: 0 24px;
}

body:is(.woocommerce-cart, .woocommerce-checkout) #content .ae-international-orders {
    text-align: left;
    font-size: 18px !important;
    margin-inline: 0 !important;
    max-width: none;
    overflow-wrap: anywhere;
}

body:is(.woocommerce-cart, .woocommerce-checkout) #content .wp-block-woocommerce-cart.alignwide {
    margin-inline: 0;
    max-width: 100%;
    width: 100%;
}

body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-cart,
body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-cart-items,
body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-components-totals-wrapper,
body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-components-totals-item,
body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-components-panel__button,
body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-components-quantity-selector__input {
    font-size: 18px;
    line-height: 1.5;
}

body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-components-product-name {
    font-size: 20px;
    line-height: 1.4;
}

body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-components-product-metadata,
body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-components-product-metadata__description,
body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-cart-item__remove-link {
    font-size: 16px;
}

body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-components-totals-footer-item {
    font-size: 24px;
}

body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-cart__submit-button,
body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-proceed-to-checkout .checkout-button {
    background: #C23841 !important;
    color: #fff !important;
    border: 1px solid #C23841;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.4;
    min-height: 56px;
    padding: 16px 24px;
    text-decoration: none !important;
}

body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-cart__submit-button *,
body:is(.woocommerce-cart, .woocommerce-checkout) #content .checkout-button * {
    color: #fff !important;
    text-decoration: none !important;
}

body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-cart__submit-button:hover,
body:is(.woocommerce-cart, .woocommerce-checkout) #content .checkout-button:hover {
    background: #A82F38 !important;
    border-color: #A82F38;
    text-decoration: none !important;
}

body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-cart__submit-button:focus-visible,
body:is(.woocommerce-cart, .woocommerce-checkout) #content .checkout-button:focus-visible {
    outline: 2px solid #2B2B2B;
    outline-offset: 3px;
}

@media (max-width: 600px) {
    body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-cart__submit-button {
        padding-inline: 16px;
        white-space: normal;
    }
}

/* Match the shared Single Product template's responsive gutters. */
body.woocommerce-checkout #content .wp-block-woocommerce-checkout.alignwide {
    margin-inline: 0;
    width: 100%;
    max-width: 100%;
}

body.woocommerce-checkout #content .wc-block-checkout,
body.woocommerce-checkout #content .wc-block-components-form,
body.woocommerce-checkout #content .woocommerce-checkout {
    font-size: 18px;
    line-height: 1.5;
}

body.woocommerce-checkout #content .wc-block-components-checkout-step__title {
    font-size: 24px;
    font-weight: 700;
}

body.woocommerce-checkout #content input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]),
body.woocommerce-checkout #content select,
body.woocommerce-checkout #content textarea {
    font-size: 18px;
    border-color: #555;
    border-width: 1px;
    border-style: solid;
}

body.woocommerce-checkout #content .wc-block-components-checkbox__input,
body.woocommerce-checkout #content .wc-block-components-radio-control__input,
body.woocommerce-checkout #content .wc-block-components-combobox-control .components-combobox-control__input,
body.woocommerce-checkout #content .wc-block-components-select .wc-block-components-select__container {
    border-color: #555;
}

body.woocommerce-checkout #content :is(input, select, textarea):focus-visible {
    outline: 2px solid #2B2B2B;
    outline-offset: 2px;
}

/* Keep validation errors distinct from normal dark-grey field borders. */
body.woocommerce-checkout #content .has-error :is(input, select, textarea),
body.woocommerce-checkout #content .woocommerce-invalid :is(input, select, textarea),
body.woocommerce-checkout #content [aria-invalid="true"] {
    border-color: #C23841;
}

body.woocommerce-checkout #content .wc-block-components-checkout-place-order-button,
body.woocommerce-checkout #content #place_order {
    background: #C23841 !important;
    color: #fff !important;
    border: 1px solid #C23841;
    font-size: 20px;
    font-weight: 600;
    min-height: 56px;
    padding: 16px 24px;
    text-decoration: none !important;
}

body.woocommerce-checkout #content .wc-block-components-checkout-place-order-button * {
    color: #fff !important;
    text-decoration: none !important;
}

body.woocommerce-checkout #content .wc-block-components-checkout-place-order-button:hover,
body.woocommerce-checkout #content #place_order:hover {
    background: #A82F38 !important;
}

body.woocommerce-checkout #content .wc-block-components-checkout-place-order-button:focus-visible,
body.woocommerce-checkout #content #place_order:focus-visible {
    outline: 2px solid #2B2B2B;
    outline-offset: 3px;
}

body:is(.woocommerce-cart, .woocommerce-checkout) #content .wp-block-woocommerce-empty-cart-block,
body:is(.woocommerce-cart, .woocommerce-checkout) #content .wp-block-woocommerce-empty-cart-block .has-text-align-center {
    text-align: left;
}

body:is(.woocommerce-cart, .woocommerce-checkout) #content .wc-block-cart__empty-cart__title.with-empty-cart-icon::before {
    background-color: #C23841;
    margin-inline: 0;
}

@media (max-width: 1366px) {
    body:is(.woocommerce-cart, .woocommerce-checkout) #content.site-main { padding-inline: 60px; }
}
@media (max-width: 880px) {
    body:is(.woocommerce-cart, .woocommerce-checkout) #content.site-main { padding-inline: 35px; }
}
@media (max-width: 767px) {
    body:is(.woocommerce-cart, .woocommerce-checkout) #content.site-main { padding-inline: 15px; }
    body:is(.woocommerce-cart, .woocommerce-checkout) #content .entry-title { font-size: 35px; }
}
