/* =========================
   general styles, used
   throughout cart, incl.
   minicart
   ========================= */
.tx-cart .alert { display: block; padding: 16px; }
.tx-cart .alert-success { background: #14E251; color: #2e2c2b; }
.tx-cart .alert-warning { background: #d02b35; color: #fff; }
.tx-cart .alert-danger, .tx-cart .validation-error { background: #d02b35; color: #fff; padding:3px 6px; }
.tx-cart input.input-short { width:70px; text-align:right; }
.tx-cart input[type=checkbox] { -webkit-appearance:checkbox; margin:0 5px 0 0; }
.tx-cart input[type="submit"] { margin:20px 0 0 0; }
.tx-cart .text-right { text-align:right; }
.tx-cart span { display:inline-block; vertical-align:middle; }
.tx-cart table { width:100%; }

/* cart basket */
.cart-preview {
    padding: 15px;
    margin: 0 0 30px 0;
    border:1px solid #e94c55;
    color:#2e2c2b;
}
.cart-preview .cart-preview-count { font-size:1.75em; margin:-0.25em .125em 0 0; color:#e94c55; font-weight:600; }
.cart-preview a.btn.btn-primary {
	display:inline-block;
	padding:8px 12px;
	margin:10px 0 5px 0;
	border:0 none;
	color:#fff;
	background:#44a4ba;
	transition: all .25s ease-in-out;
    text-transform: uppercase;
}
.cart-preview a.btn.btn-primary:hover { background:#e94c55; }

h2.warenkorb_title { padding:0 0 10px 0; margin:22px 0 0 0; }
h2.warenkorb_title:before {
    font-family: 'bsoiconnewregular';
    content:'\0074';
    font-size:1.75em;
    line-height:1;
    vertical-align:middle;
    margin-left:-5px;
    padding:0 10px 0 0;
}

/* cart list view */
.cart-container {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: flex-start;
}
.cart-container .item { 
  background:#fff;
  flex: 0 30%;
  margin:0 2% 2% 0;
  transition:border .35s;
  border:1px solid #eee;
  position: relative;
}
.cart-container .item .regular_price { position:absolute; bottom:.5em; }
.cart-container .item:hover { border:1px solid #e94c55; }
.cart-container .item a { display:block; color:#000; border-bottom:none; }
.cart-container .item > a > div { padding:1em 1em .5em 1em; }

.tx-cart-products .quantity_discount, .tx-cart-products .item .quantity_discount ul { color:#666; font-size:.875em; line-height:1.2; margin-top:.25em; }
.tx-cart-products .quantity_discount { font-size:.8125em; margin-top:1em; }
.tx-cart-products .quantity_discount ul:not(.ce-uploads) li:before { content:'-'; }
.tx-cart-products .quantity_discount ul:not(.ce-uploads) li { margin:0; }
.tx-cart-products .item .quantity_discount { display:none; }

.tx-cart-products .col_50-50 { display:flex; justify-content:space-between; flex-direction:row; margin:0 0 25px 0; }
.tx-cart-products .col_50-50 .left { width:33%; margin:0 2% 0 0; }
.tx-cart-products .col_50-50 .right { width:63%; margin:0 0 0 2%; }
.tx-cart-products h3 { font-size:1.25em; line-height:1.2; margin: 16px 0 0 0; height:130px; font-weight:300; }

.tx-cart-products .teaser { padding:0; margin:0 0 .5em 0; color:#666; }
.tx-cart-products .teaser h2, .tx-cart-products .teaser h3, .tx-cart-products .teaser strong, .tx-cart-products .teaser p { font-weight:400; color:#666; margin:0; }
.tx-cart-products .teaser p, .tx-cart-products .price { font-size:90%; }
.tx-cart-products .price { font-weight:700; }
.tx-cart-products .special_price { display:inline-block; margin:.5em 0; padding:.5em; background:#ffffd8; } 

/* cart detail view */
.tx-cart-products .single-view .cart_form { margin:1em 0 0 0; }
.tx-cart-products del .price { padding:0 0 1em 0; font-weight:400; }
.tx-cart-products .single-view input[type="text"] {
  padding:8px 12px;
  margin:0 5px 0 0;
  width:3em;
  font-size:1em;  
}
.tx-cart-products .single-view .price { font-size:100%; }
.tx-cart-products .single-view .alert.alert-success { padding:.5em 1em; background:#eee; border:1px solid #e94c55; color:#2e2c2b; display:inline-block; }

/* checkout */
.tx-cart .checkout-header div { float:right; text-align:right; }
.tx-cart h4, .tx-cart h5 {
    font-size: 1.25em;
    line-height: 1.2;
    font-weight: 400;
    margin: 15px 0 5px 0;
    padding: 0;
}

.tx-cart form fieldset { width:calc(100% - 60px); padding:10px 25px 5px 25px; }

.tx-cart #checkout-step-billing-address,
.tx-cart #checkout-step-shipping-address,
.tx-cart #checkout-step-review { background: #f6f4f3; margin:30px 0 10px 0; padding:16px; }

.tx-cart .checkout-step-table td { padding:2px 0 2px 10px; }
.tx-cart .checkout-step-table .total-gross { font-weight:600; }

.tx-cart form#form-cart { background:#f6f4f3; margin:25px 0; padding:15px; }
.tx-cart table.checkout-product-table th { padding: 4px 32px 16px 0; text-align:left; font-weight:400; }
.tx-cart table.checkout-product-table th.text-right { text-align:right; }
.tx-cart table.checkout-product-table td { padding: 8px 32px 8px 0; }
.tx-cart table.checkout-product-table td.last { padding:8px 0; }

.tx-cart table.checkout-product-table td:nth-child(2),
.tx-cart table.checkout-product-table td:nth-child(4) { white-space:nowrap }

.tx-cart form#form-cart a, .tx-cart form#form-cart a:hover { border-bottom:none; }
.tx-cart form#form-cart input[type="submit"] { margin:20px 10px; }
.tx-cart form#form-cart input[type="text"] { width:3em; padding:.25em; }

.tx-cart .checkout-step-content .field { margin:0 0 1em 0; clear:both; }
.tx-cart .checkout-step-content .field label { display:inline-block; }
.tx-cart .checkout-step-content .field input, .tx-cart .checkout-step-content .field textarea { width:100%; }
.tx-cart .checkout-step-content .field textarea { min-height:8em; }

.tx-cart table th.text-right,
.tx-cart table td.text-right { text-align:right; }

.tx-cart table.data-table.table.stack tr { border-bottom:2px solid #fff; }
.tx-cart table.data-table.table.stack th,
.tx-cart table.data-table.table.stack td { text-align:left; border:none; padding: .75em .75em .5em .75em; }
.tx-cart table.data-table.table.stack tr:nth-child(even) { background:none; }
.tx-cart table.data-table.table.stack span.price { white-space: nowrap; }

.tx-cart table.data-table.total_summary { margin:1em 0; }
.tx-cart table.data-table.total_summary tr { border-top:1px solid #ccc; }
.tx-cart table.data-table.total_summary tr:first-child { border-top:none; }
.tx-cart table.data-table.total_summary tr:last-child { color:pink; }
.tx-cart table.data-table.total_summary td { border:none; padding: .5em .75em .25em .75em; }

.tx-cart table.checkout-product-table td:nth-child(2),
.tx-cart table.checkout-product-table td:nth-child(4) { white-space:nowrap }
.tx-cart table.checkout-product-table p { margin:0; }

.content .tx-cart table tr:nth-child(even),
.tx-cart .checkout-step-field { background:#fff; }
.tx-cart .checkout-step-field { padding:1em; margin:0 25px 25px 25px; }
.tx-cart .checkout-step-field tr.service-gross { display:none; }

.tx-cart dl.sp-methods { margin:0; }
.tx-cart dl.sp-methods dt { margin:0 .25em 0 0; }
.tx-cart dl.sp-methods dd { margin:0;}
.tx-cart .delete-link { display:inline-block; width:16px; height:16px; background:url('/fileadmin/templates/bso/img/icons/delete.png') no-repeat; }
.tx-cart .price { white-space:nowrap; }

@media only screen and (max-width: 1030px) {

    .cart-container .item { flex: 0 47%; }
    .tx-cart-products .col_50-50 { flex-direction:column; margin:0; }
    .tx-cart-products .col_50-50 .left,
    .tx-cart-products .col_50-50 .right { width:100%; margin:0; }
    .tx-cart-products .single-view img { width:45%; }

}