.ibta-b2c-storefront .ibta-b2c-details-link {
    display: inline-flex;
    align-items: center;
    min-block-size: 44px;
    padding: .5rem .75rem;
}
.ibta-b2c-storefront .ibta-b2c-header-actions {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    vertical-align: middle;
}
.ibta-b2c-storefront .ibta-b2c-header-cart-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-inline-size: 44px;
    min-block-size: 44px;
    padding: .5rem;
}
.ibta-b2c-storefront .ibta-b2c-header-cart-link > i {
    font-size: 1.2rem;
    line-height: 1;
}
.ibta-b2c-storefront .ibta-b2c-preview-notice {
    padding: 1rem;
    border: 1px solid #b8cddd;
    background: #edf4fa;
    color: #16334f;
}
.ibta-b2c-storefront .ibta-b2c-choice {
    margin-block: 1rem;
}
.ibta-b2c-storefront .ibta-b2c-choice label {
    display: block;
    font-weight: 700;
    margin-block-end: .5rem;
}
.ibta-b2c-storefront .ibta-b2c-choice select {
    min-block-size: 44px;
    max-inline-size: 100%;
    inline-size: 100%;
}
.ibta-b2c-storefront .ibta-b2c-choice-price {
    min-block-size: 1.5em;
    margin-block: .5rem;
}
.ibta-b2c-storefront .price,
.ibta-b2c-storefront .ibta-b2c-choice-price {
    direction: ltr;
    unicode-bidi: isolate;
}
body.rtl.ibta-b2c-storefront .summary p.price {
    text-align: right;
}
.ibta-b2c-storefront .woocommerce-ordering {
    margin-inline-start: auto;
}
.ibta-b2c-storefront :is(a, button, select, input):focus-visible {
    /* Restore keyboard focus over the theme's important outline resets. */
    outline: 3px solid #244d75 !important;
    outline-offset: 3px;
}
.ibta-b2c-storefront :is(.btn-showmenu, #apus-mobile-menu .btn-toggle-canvas) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-inline-size: 48px;
    min-block-size: 48px;
}
.ibta-b2c-storefront .variations select,
.ibta-b2c-storefront .quantity input,
.ibta-b2c-storefront .single_add_to_cart_button,
.ibta-b2c-storefront .woocommerce-cart-form button,
.ibta-b2c-storefront a.remove {
    min-block-size: 44px;
}
.ibta-b2c-storefront .variations select {
    max-inline-size: 100%;
}
.ibta-b2c-storefront a.remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-inline-size: 44px;
}
.ibta-b2c-storefront .woocommerce-cart-form .product-name,
.ibta-b2c-storefront .woocommerce-cart-form .variation {
    overflow-wrap: anywhere;
}
.ibta-b2c-storefront .woocommerce-cart-form .product-price,
.ibta-b2c-storefront .woocommerce-cart-form .product-subtotal,
.ibta-b2c-storefront .cart_totals .woocommerce-Price-amount {
    direction: ltr;
    unicode-bidi: isolate;
}
.ibta-b2c-storefront .summary,
.ibta-b2c-storefront .woocommerce-Tabs-panel {
    overflow-wrap: anywhere;
}
.ibta-b2c-storefront .products .categories {
    display: none;
}
.ibta-b2c-storefront form.checkout :is(input, select, button),
.ibta-b2c-storefront .woocommerce-checkout-payment label {
    min-block-size: 44px;
}
.ibta-b2c-storefront .woocommerce-checkout-payment label {
    display: inline-flex;
    align-items: center;
}
.ibta-b2c-storefront .ibta-b2c-bank {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
    gap: .25rem .75rem;
    overflow-wrap: anywhere;
}
.ibta-b2c-storefront .ibta-b2c-bank :is(dt, dd) {
    margin: 0;
}
.ibta-b2c-storefront .woocommerce-checkout-review-order-table :is(td, th),
.ibta-b2c-storefront .woocommerce-order-details :is(td, th) {
    overflow-wrap: anywhere;
}
.ibta-b2c-storefront .woocommerce-checkout-review-order-table .woocommerce-Price-amount {
    direction: ltr;
    unicode-bidi: isolate;
}
.ibta-b2c-storefront .woocommerce-checkout-review-order-table .variation :is(dt, dd) {
    display: block;
    float: none;
    margin: 0;
    white-space: normal;
}
.ibta-b2c-storefront .woocommerce-product-gallery.images {
    float: none;
    inline-size: 100%;
}
.ibta-b2c-storefront .woocommerce-product-gallery img {
    max-inline-size: 100%;
    block-size: auto;
}
.ibta-b2c-storefront .ibta-b2c-proof {
    margin-block: 1.5rem;
    padding: 1rem;
    border: 1px solid #b8cddd;
    overflow-wrap: anywhere;
}
.ibta-b2c-storefront .ibta-b2c-proof :is(label, input[type="file"]) {
    display: block;
    max-inline-size: 100%;
    margin-block: .75rem;
}
.ibta-b2c-storefront .ibta-b2c-proof :is(input, button) {
    min-block-size: 44px;
}
@media (max-width: 575px) {
    .ibta-b2c-storefront .products .product {
        inline-size: 100%;
        max-inline-size: 100%;
        flex-basis: 100%;
    }
}
@media (max-width: 767px) {
    .ibta-b2c-storefront .woocommerce-cart-form table.cart,
    .ibta-b2c-storefront .woocommerce-cart-form table.cart tbody {
        display: block;
        inline-size: 100%;
    }
    .ibta-b2c-storefront .woocommerce-cart-form .product-name {
        text-align: start !important;
    }
    .ibta-b2c-storefront .woocommerce-cart-form .product-name::before {
        float: none;
        display: block;
    }
    .ibta-b2c-storefront .woocommerce-cart-form .variation {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: .25rem .5rem;
        margin-block: .5rem 0;
    }
    .ibta-b2c-storefront .woocommerce-cart-form .variation :is(dt, dd) {
        float: none;
        white-space: normal;
        margin: 0;
        padding: 0;
        min-inline-size: 0;
    }
}

/* Classic Cart layout only. Keep native markup, controls and theme surfaces. */
body.woocommerce-cart.ibta-b2c-storefront :is(.woocommerce-cart-form, .cart_totals) .ibta-b2c-currency {
    display: none;
}
body.woocommerce-cart.ibta-b2c-storefront .woocommerce:has(> .woocommerce-cart-form) {
    display: grid;
    grid-template-columns: minmax(0, 65fr) minmax(0, 35fr);
    column-gap: 1.5rem;
    align-items: start;
}
body.woocommerce-cart.ibta-b2c-storefront .woocommerce:has(> .woocommerce-cart-form) > * {
    grid-column: 1 / -1;
    min-inline-size: 0;
}
body.woocommerce-cart.ibta-b2c-storefront .woocommerce > .woocommerce-cart-form {
    grid-column: 1;
    margin: 0;
}
body.woocommerce-cart.ibta-b2c-storefront .woocommerce > .cart-collaterals {
    grid-column: 2;
    margin: 0;
    inline-size: 100%;
    padding: 1.5rem;
}
body.woocommerce-cart.ibta-b2c-storefront .cart-collaterals .cart_totals {
    float: none;
    inline-size: 100%;
}
body.woocommerce-cart.ibta-b2c-storefront .woocommerce-cart-form table.cart,
body.woocommerce-cart.ibta-b2c-storefront .woocommerce-cart-form table.cart tbody {
    display: block;
    inline-size: 100%;
    margin: 0;
}
body.woocommerce-cart.ibta-b2c-storefront .woocommerce-cart-form table.cart thead {
    /* Keep native table headers available to assistive technology. */
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    display: block;
}
body.woocommerce-cart.ibta-b2c-storefront .woocommerce-cart-form table.cart tr.cart_item {
    display: grid;
    grid-template-columns: 90px minmax(0, 1fr) 76px 44px;
    grid-template-rows: minmax(76px, auto) auto;
    gap: .5rem 1rem;
    padding: 1.25rem;
    border-block-end: 1px solid var(--educrat-border-color, #EDEDED);
    align-items: start;
}
body.woocommerce-cart.ibta-b2c-storefront .woocommerce-cart-form table.cart tr.cart_item > td {
    display: block;
    min-inline-size: 0;
    padding: 0;
    margin: 0;
    border: 0;
    background: transparent;
    text-align: start !important;
}
body.woocommerce-cart.ibta-b2c-storefront .woocommerce-cart-form table.cart tr.cart_item > td::before {
    content: none;
}
body.woocommerce-cart.ibta-b2c-storefront table.cart .product-thumbnail {
    grid-column: 1;
    grid-row: 1 / 3;
    inline-size: auto;
}
body.woocommerce-cart.ibta-b2c-storefront table.cart .product-thumbnail img {
    inline-size: 90px;
    max-inline-size: 100%;
    block-size: auto;
}
body.woocommerce-cart.ibta-b2c-storefront table.cart .product-name {
    grid-column: 2;
    grid-row: 1;
}
body.woocommerce-cart.ibta-b2c-storefront table.cart .variation {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .25rem .4rem;
    margin-block: .5rem 0;
}
body.woocommerce-cart.ibta-b2c-storefront table.cart .variation :is(dt, dd, p) {
    float: none;
    white-space: normal;
    margin: 0;
    padding: 0;
    min-inline-size: 0;
}
body.woocommerce-cart.ibta-b2c-storefront table.cart .product-price {
    grid-column: 2;
    grid-row: 2;
}
body.woocommerce-cart.ibta-b2c-storefront .woocommerce-cart-form table.cart td.product-subtotal {
    grid-column: 3 / 5;
    grid-row: 1;
    text-align: end !important;
}
body.woocommerce-cart.ibta-b2c-storefront table.cart .product-quantity {
    grid-column: 3;
    grid-row: 1;
    align-self: end;
    justify-self: end;
}
body.woocommerce-cart.ibta-b2c-storefront table.cart .product-remove {
    grid-column: 4;
    grid-row: 1;
    align-self: end;
    justify-self: end;
}
body.woocommerce-cart.ibta-b2c-storefront table.cart tr:has(> .actions) {
    display: block;
}
body.woocommerce-cart.ibta-b2c-storefront .woocommerce-cart-form table.cart td.actions {
    display: block;
    padding: 1.25rem;
}
body.woocommerce-cart.ibta-b2c-storefront table.cart [name="update_cart"] {
    float: none;
    inline-size: 100%;
}
body.woocommerce-cart.ibta-b2c-storefront table.cart [name="update_cart"]:disabled,
body.woocommerce-cart.ibta-b2c-storefront table.cart [name="update_cart"]:disabled:hover {
    opacity: 1;
    color: var(--educrat-text-color, #4f547b);
    background: #F7F8FB;
    border-color: #EDEDED;
    box-shadow: none;
    cursor: not-allowed;
}
body.woocommerce-cart.ibta-b2c-storefront .cart_totals table.shop_table tr {
    display: table-row;
}
/* Cart is a subtotal preview; native financial rows remain intact for Checkout. */
body.woocommerce-cart.ibta-b2c-storefront .cart_totals table.shop_table tr:not(.cart-subtotal) {
    display: none;
}
body.woocommerce-cart.ibta-b2c-storefront .cart_totals table.shop_table :is(th, td) {
    display: table-cell;
    padding-block: 1rem;
    text-align: start !important;
}
body.woocommerce-cart.ibta-b2c-storefront .cart_totals table.shop_table td {
    text-align: end !important;
    inline-size: 35%;
    white-space: nowrap;
}
body.woocommerce-cart.ibta-b2c-storefront .cart_totals table.shop_table th {
    inline-size: 65%;
}
body.woocommerce-cart.ibta-b2c-storefront .cart_totals table.shop_table td::before {
    content: none;
}
body.woocommerce-cart.ibta-b2c-storefront .wc-proceed-to-checkout a {
    inline-size: 100%;
}
body.woocommerce-cart.ibta-b2c-storefront .ibta-b2c-cart-checkout-note {
    margin-block: .75rem 0;
    line-height: 1.5;
    text-align: start;
}
body.woocommerce-cart.ibta-b2c-storefront .ibta-b2c-cart-checkout-note small {
    font-size: .875em;
    color: var(--educrat-text-color, inherit);
}
@media (max-width: 991px) {
    body.woocommerce-cart.ibta-b2c-storefront .woocommerce:has(> .woocommerce-cart-form) {
        grid-template-columns: minmax(0, 1fr);
        row-gap: 1.25rem;
    }
    body.woocommerce-cart.ibta-b2c-storefront .woocommerce > .cart-collaterals {
        grid-column: 1;
    }
}
@media (max-width: 575px) {
    body.woocommerce-cart.ibta-b2c-storefront .woocommerce-cart-form table.cart tr.cart_item {
        grid-template-columns: 64px minmax(0, 1fr) 44px;
        gap: .5rem .75rem;
        padding: 1rem;
    }
    body.woocommerce-cart.ibta-b2c-storefront table.cart .product-thumbnail img {
        inline-size: 64px;
    }
    body.woocommerce-cart.ibta-b2c-storefront table.cart .product-name {
        grid-column: 2 / 4;
    }
    body.woocommerce-cart.ibta-b2c-storefront table.cart .product-price {
        grid-column: 2 / 4;
    }
    body.woocommerce-cart.ibta-b2c-storefront .woocommerce-cart-form table.cart td.product-subtotal {
        grid-column: 2 / 4;
        grid-row: 3;
    }
    body.woocommerce-cart.ibta-b2c-storefront table.cart .product-quantity {
        grid-column: 2;
        grid-row: 4;
    }
    body.woocommerce-cart.ibta-b2c-storefront table.cart .product-remove {
        grid-column: 3;
        grid-row: 4;
    }
}
