:root{
  --bs-body-font-size:16px;  
}
header.page-header {
    margin-bottom: var(--bs-space);
}
main.page-main {
    margin-bottom: var(--bs-space);
}
body .page-main > .page-title-wrapper .page-title {
    display: block;
    margin-bottom: 0.8em;
    text-transform: uppercase;
}
.cart-empty a {
    --bs-link-color: var(--bs-primary);
    font-weight: 600;
    font-family: var(--bs-futura);
}

.form-cart .table thead tr > * {
    padding: 12px 14px;
    line-height: 1;
}
body .form-cart .cart.table-wrapper .table tbody tr > td {
    padding: calc(var(--bs-space) / 2.5) 14px;
    border-bottom: 0;
    border-top: solid 3px var(--bs-secondary);
    background-color: transparent;
}
body .form-cart .cart.table-wrapper .table tbody tr > td.item.col {
    padding: calc(var(--bs-space) / 2.5) 14px;
    min-height: 1px;
}
body .cart.table-wrapper .product-item-photo .product-image-container {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
}
body .cart.table-wrapper .price-including-tax .price, 
body .cart.table-wrapper .price-excluding-tax .price {
    font-weight: 600;
}

.cart.table-wrapper div.qty .input-text.qty {
    width: 5em;
    height: 2.5em;
    font-size: 1em;
}

.cart.table-wrapper div.qty .btn-wrap > span {
    cursor: pointer;
    width: 1.1em;
    height: 1.1em;
    background-image: url(../images/arrow-down-white.svg);
    background-position: center;
    background-size: 61%;
    background-repeat: no-repeat;
    margin-left: 2px;
}
.cart.table-wrapper div.qty .qty-increment {
    transform: rotate(180deg);
}

body .cart-container .form-cart .cart.table-wrapper {
    margin-bottom: calc(var(--bs-space) / 2.5);
}

body .cart.table-wrapper .items > .item {
    border-bottom: solid 3px var(--bs-secondary);
}
.cart.table-wrapper .actions-toolbar > .action-towishlist {
    display: none;
}
body .cart.table-wrapper .product-item-photo {
    width: 45%;
    max-width: 45%;
    margin-bottom: auto;
}
body .cart.table-wrapper .product-item-details {
    width: 50%;
    margin-left: auto;
}
.cart-summary > .title {
    font-size: 26px;
    font-weight: 600;
    border-bottom: solid 3px;
    padding-bottom: 12px;
    margin-top: 0;
    margin-bottom: 0;
}
.magento-payments-review-discount > .title, .cart-summary .block > .title, .paypal-review-discount .block > .title {
    font-family: var(--bs-futura-pt);
    font-weight: normal;
    border-top: 0;
    border-bottom: solid 2px var(--bs-secondary);
    padding: 0.5em 2em 0.5em 0;
}
.column.main .magento-payments-review-discount > .title strong, 
.column.main .cart-summary .block > .title strong, 
.column.main .paypal-review-discount .block > .title strong {
    font-size: 1em;
    font-weight: 400;
}

.abs-discount-block > .title:after, .magento-payments-review-discount > .title:after, .cart-summary .block > .title:after, .paypal-review-discount .block > .title:after {
    font-size: 2em;
    top: 0.08em;
    right: 0;
    height: auto;
    line-height: 1;
    font-weight: 600;
}
.magento-payments-review-discount > .content, .cart-summary .block > .content, .paypal-review-discount .block > .content{
	border-bottom: solid 2px var(--bs-secondary);
    padding-bottom: 0.7em;
    background-color: var(--bs-white);
    padding-top: 2px;
    margin-top: -2px;
    position: relative;
}
.cart-summary .fieldset.coupon {
    gap: 0.5em;
}
.cart-summary .fieldset.coupon button.btn {
    --bs-btn-padding-x: 1.2em;
    --bs-btn-padding-y: 0.5em;
}
.cart-summary input.input-text {
    height: 2.5em;
    border: solid 1px var(--bs-secondary);
    font-family: var(--bs-futura);
    font-size: 16px;
    border-radius: var(--bs-border-radius-xl);
    padding-right: 1rem;
    padding-left: 1rem;
    box-shadow: none !important;
}
.cart-summary select.select {
    height: 2.5em;
    border: solid 1px var(--bs-secondary);
    font-family: var(--bs-futura);
    font-size: 16px;
    border-radius: var(--bs-border-radius-xl);
    padding-right: 1rem;
    padding-left: 1rem;
    box-shadow: none !important;
}
.cart-summary .cart-totals {
    border-top: 0;
    padding-top: 0.7;
    font-size: 16px;
}
.cart-summary .cart-totals .table>:not(caption)>*>* {
    padding-top: 0.5em;
    padding-bottom: 0.5em;
}
.cart-totals .mark, 
.opc-block-summary .table-totals .mark {
    font-weight: 400;
    padding-left: 0;
    text-transform: uppercase;
    border: 0;
}
.cart-totals .amount, .opc-block-summary .table-totals .amount {
    padding-right: 0;
    border: 0;
}
.cart-totals .grand .amount, .opc-block-summary .table-totals .grand .amount {
    padding-right: 0;
}
.cart-totals .mark strong, .opc-block-summary .table-totals .mark strong {
    font-weight: 600;
}
.cart-summary .cart-totals .table>:not(caption)>tr.grand.totals>* {
    border-top: solid 2px;
    border-bottom: solid 2px;
    font-size: 1.3em;
    padding-top: 0.4em;
    padding-bottom: 0.4em;
}
.cart-container .checkout-methods-items {
    margin-top: calc(var(--bs-space) / 2.5);
}

.cart-container .checkout-methods-items .item + .item {
    margin-top: 0;
}
.cart-container .checkout-methods-items a.multicheckout {
    display: none;
}
.cart-summary .block .fieldset {
    margin: 0;
}
.cart-summary .block .fieldset .field.note {
    font-size: 14px;
    margin-bottom: 0.5em;
}
.cart-summary .block .fieldset .field:not(.choice) > .label {
    font-family: var(--bs-futura-pt) !important;
    font-weight: normal;
}
@media screen and (min-width:769px){
	.cart-container {
	    display: flex;
	    flex-wrap: wrap;
	    flex-direction: row-reverse;
	}
	body .cart-summary {
	    position: inherit;
	    background-color: transparent;
	    padding: 0;
	    margin: 0;
	    width: 27%;
	    margin-left: auto;
	}
	body .cart-container .form-cart {
	    width: 65%;
	}
	body .form-cart .cart.table-wrapper .table tbody tr > td.item.col {
	    display: table-cell;
	}
}
@media screen and (max-width:1199px){
	.cart-summary > .title{
		font-size: calc(22px + .3vw);
	}
}
@media screen and (max-width:991px){
	body .cart-container .form-cart {
        width: 100%;
    }
    body .cart-summary {
        width: 100%;
        margin-bottom: calc(var(--bs-space) / 2);
        background-color: transparent;
        padding: 0;
    }
}
@media screen and (max-width:768px){
	body .form-cart .cart.table-wrapper .table tbody tr > td.item.col {
	    padding-right: 0;
	}
	body .cart.table-wrapper .product-item-photo {
	    width: calc(var(--bs-space)* 3);
	    max-width: calc(var(--bs-space)* 3);
	    position: inherit;
	}
	body .cart.table-wrapper .product-item-details {
	    width: calc(100% - calc(var(--bs-space)* 3.5));
	}
	body .form-cart .cart.table-wrapper .table tbody tr td.col.price {
	    padding-left: 0;
	}
	body .form-cart .cart.table-wrapper .table tbody tr td.col.qty .field.qty {
	    width: 90px;
	    margin: auto;
	}
	.cart.table-wrapper div.qty .input-text.qty {
    	width: 2.5em;
	}
	body .cart.table-wrapper .items > .item {
	    border-bottom: 0;
	}
	.cart.table-wrapper .col.qty[data-th]:before, 
	.cart.table-wrapper .col.price[data-th]:before, 
	.cart.table-wrapper .col.subtotal[data-th]:before, 
	.cart.table-wrapper .col.msrp[data-th]:before {
	    font-size: 1em;
	    color: var(--bs-secondary);
	    text-transform: uppercase;
	    padding-bottom: 0.6em;
	}
}
@media screen and (max-width:575px){
	body .form-cart .cart.table-wrapper .fs-5 {
	    font-size: 16px !important;
	}
}