.store-section h1 {
    font-weight: bold;
}

.store-section .back-link {
    display: inline-block;
    text-decoration: none;
    margin-bottom: 10px;
}

.store-section .bought-item {
    display: block;
    font-size: 110%;
	margin: 12px 0;
}

.store-section .bought-item:hover {
    text-decoration: underline;
}

.cart-section > .cart-notice > div,
.cart-section > .cart-float-notice > div {
    width: 100%;
    max-width: 1190px;
    margin: 0 auto;
    font-size: 16px;
    height: 20px;
}

.cart-float-notice {
    top: 0;
    position: fixed;
    z-index: 5;
}

.cart-notice,
.cart-float-notice {
    color: white;
    background-color: #a1438d;
    padding: 10px 0;
    width: 100%;
    height: 20px;
}

.cart-notice a,
.cart-notice span,
.cart-float-notice a,
.cart-float-notice span {
    color: white;
}

body.cart-open {
    overflow: hidden;
}

.store-table,
.store-order-section table {
    width: 100%;
}

.store-order-section table td {
    padding: 6px 0;
}

.store-order-section .order-details-title a,
.store-order-section .store-order-item-details a {
    text-decoration-style: dotted;
}

.store-order-section .order-details-download a {
    text-decoration: none;
}

.store-table td {
    vertical-align: top;
    padding-bottom: 40px;
}

.store-table td > div {
    margin-bottom: 15px;
}

.store-table .item-image {
    max-width: 420px;
    padding-right: 25px;
    width: 30%;
}

.store-table .item-content {
width: 65%;
}

.store-table .item-image img {
	float: left;
    width: 100%;
    border-radius: 10px;
    border: 1px solid #CCC;
	margin: 0 25px 10px 0;
}

.store-table .item-title {
    font-size: 130%;
    font-weight: bold;
}

.store-table small {
    display: block;
    font-weight: bold;
    font-size: 90%;
    margin: 6px 0;
}

.store-table .item-price {
    font-weight: bold;
}

.store-table .item-price > span {
    display: block;
    font-size: 130%;
}

.store-table .item-hint {
    display: inline-block;
    background-color: #ffe2e2;
    border-radius: 6px;
    padding: 6px 12px;
}

.store-table .btn-plus:hover,
.store-table .add-to-cart:hover,
.store-table .enroll-in-course:hover {
    background-color: #ffe94b;
}

.store-table .btn-minus:hover {
    background-color: #fa7e58;
}

.store-table .btn-plus {
    color: black;
    padding: 10px 20px;
    font: bold 20px arial;
    background-color: #f9e36b;
    box-shadow: #ffc600 0 0 8px inset;
    display: inline-block;
    border-radius: 8px;
    cursor: pointer;
}

.store-table .btn-minus {
    color: black;
    padding: 10px 20px;
    font: bold 20px arial;
    background-color: #f98d6b;
    box-shadow: #fb6740 0 0 8px inset;
    display: inline-block;
    border-radius: 8px;
    cursor: pointer;
}

.store-table .add-to-cart,
.store-table .enroll-in-course {
    color: black;
    padding: 10px 20px;
    font: bold 20px arial;
    background-color: #f9e36b;
    box-shadow: #ffc600 0 0 8px inset;
    display: inline-block;
    border-radius: 8px;
    cursor: pointer;
}

.cart-details {
    max-height: 90%;
    overflow-y: auto;
}

.cart-details h2 {
    display: inline-block;
}

.cart-details .close {
    cursor: pointer;
    position: absolute;
    right: 20px;
    top: 20px;
}

.cart-details .place-order-send {
    color: black;
    padding: 6px 12px;
    font: bold 16px arial;
    background-color: #f9e36b;
    box-shadow: #ffc600 0 0 8px inset;
    border-radius: 8px;
    cursor: pointer;
    float: right;
}

.cart-details .place-order-send:hover {
    background-color: #ffda37;
}

.cart-details .cart-clear {
    color: black;
    padding: 6px 12px;
    font: bold 16px arial;
    background-color: #ffbfbf;
    box-shadow: #ff6c6c 0 0 8px inset;
    border-radius: 8px;
    cursor: pointer;
}

.cart-details .cart-clear:hover {
    background-color: #fdb0b0;
}

.cart-details .place-order-cancel {
    color: black;
    padding: 6px 12px;
    font: bold 16px arial;
    background-color: #bfe3ff;
    box-shadow: #6cabff 0 0 8px inset;
    border-radius: 8px;
    cursor: pointer;
}

.cart-details .place-order-cancel:hover {
    background-color: #b0d4fd;
}

.cart-details hr {
    color: lightgray;
}

.store-table .item-cart-qty {
    width: 75px;
    line-height: 30px;
    font-size: 22px;
    text-align: center;
}

.cart-section .cart-details-wrapper {
    position: fixed;
    z-index: 10;
    width: 100%;
    height: 100%;
    transition: backdrop-filter 1s;
    background-color: rgba(0, 0, 0, .1);
    backdrop-filter: blur(15px);
    overflow-y: hidden;
    padding-right: 15px;
    top: 40px;
    left: 0;
}

.cart-section .cart-details {
    position: relative;
    font-size: 16px;
    background-color: white;
    max-width: 1220px;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    box-shadow: 0 0 16px 0 #bbbbbb;
    padding: 20px;
    margin: 0 auto;
}

.cart-section .cart-details .cart-items {
    margin-bottom: 10px;
}

.cart-open .cart-section {
    background-color: rgba(0, 0, 0, .7);
}

.cart-section .cart-default {
    max-width: 1190px;
    margin: 0 auto;
}

.cart-section h2 {
    margin-top: 0 !important;
    margin-bottom: 20px !important;;
    font-size: 150% !important;
    font-weight: bold !important;
}

.cart-section .cart-items table {
    width: 100%;
}

.cart-section .cart-items table td {
    font-size: 16px !important;
    padding: 6px 12px !important;
}

.cart-section .cart-items .item-qty {
    width: 50px;
}

.store-order-section table td {
    vertical-align: top;
}

.store-order-section table td:first-child,
.cart-section .cart-items table td:first-child {
    width: 25px;
}

.store-order-section table td:nth-child(3),
.cart-section .cart-items table td:nth-child(3) {
    width: 100px;
    text-align: center;
}

.store-order-section table td:nth-child(4),
.cart-section .cart-items table td:nth-child(4) {
    width: 150px;
    text-align: right;
}

.store-order-section table td:last-child,
.cart-section .cart-items table td:last-child {
    width: 150px;
    text-align: right;
}

.cart-section .cart-details .value {
    float: right;
}

.cart-section .cart-details .price-total {
    font-weight: bold;
}

.store-table .mt-1,
.cart-section .mt-1 {
    margin-top: 10px !important;
}

.store-table .mt-2,
.cart-section .mt-2 {
    margin-top: 20px !important;
}

.store-table .mb-0,
.cart-section .mb-0 {
    margin-bottom: 0 !important;
}

.store-table .mb-1,
.cart-section .mb-1 {
    margin: 10px 0 !important;
}

.store-table .mb-2,
.cart-section .mb-2 {
    margin-bottom: 20px !important;
}

.cart-section .address-section {
    display: none;
}

.cart-section .delivery-address {
    flex: 1 0 390px;
}

.cart-section .new-delivery-address {
    flex: 1;
}

.cart-section .customer-section .hint {
    font-weight: bold;
    margin-bottom: 10px;
}

.cart-section .delivery-address .hint {
    font-weight: bold;
    margin: 0;
}

.cart-section .delivery-address .address-new,
.cart-section .delivery-address .address-item {
    margin: 8px 0;
}

.cart-section .delivery-address .address-new.selected span,
.cart-section .delivery-address .address-item.selected span {
    font-weight: bold;
    border-bottom: none;
}

.cart-section .delivery-address .address-new span,
.cart-section .delivery-address .address-item span {
    color: blue;
    border-bottom: 1px dashed blue;
    cursor: pointer;
}

#promo {
    margin-left: 5px;
    cursor: pointer;
}

.promo-section .input-group,
.customer-section .input-group,
.address-section .input-group {
    margin-bottom: 15px;
    flex-direction:row;
    flex-wrap:wrap;
    display: flex;
}

.cart-section .customer-section .hint {
    margin-bottom: 0;
}

.cart-section .customer-section .input-unit:not(:first-child) {
    width: 200px;
}

.cart-section .customer-section .input-unit:not(:last-child) input {
    width: calc(100% - 30px) !important;
}

.cart-section .customer-section .input-unit:first-child {
    min-width: 400px;
    flex: 1 0;
}

.cart-section .customer-section .input-unit {
    padding-top: 10px;
}

.cart-section .promo-section input,
.cart-section .customer-section input,
.cart-section .new-delivery-address input,
.cart-section .new-delivery-address textarea {
    line-height: 26px;
    padding: 5px 10px;
    border-radius: 4px;
    border-color: lightgray;
}

.cart-section .new-delivery-address [name=postal] {
    font-size: 24px;
    width: 100px;
}


.store-order-section .delivery-address {
    margin-bottom: 15px;
}

.store-order-section li {
    list-style-type: none;
    background: none;
    padding: 0;
    margin: 0;
}

.store-order-section .delivery-address li span {
    font-weight: bold;
}

.store-order-section .payment-status,
.store-order-section .delivery-status {
    font-weight: bold;
    margin: 15px 0;
}

.store-order-section .delivery-tracking {
    font-weight: normal;
}

.store-order-section .delivery-tracking a {
    text-decoration: none;
    border-bottom: 1px blue dashed;
}

.store-order-section .order-details>span {
    display: block;
    font-weight: bold;
    margin-bottom: 5px;
}

.store-order-section .order-details .order-details-download {
    font-size: 85%;
}

.store-order-section .store-order-item {
    margin: 15px 0;
}

.store-order-section .store-order-item-status {
    font-style: italic;
}

.store-order-section .store-order-item-status,
.store-order-section .store-order-item-details {
    margin: 5px 0;
}

.store-table .shop_li li {padding-bottom: 4px;}

@media (max-width: 930px) {/* работает, если окно больше, чем min-width или меньше, чем max-width */

.store-table .item-image {max-width: 420px; padding-right: 25px; width: 75%;}
.store-table .item-content {width: 90%;}

}
