/*
Author: Juliane Dreyer
Author URI: https://www.kullaloo.ca
Description: This css includes adaptions for kullaloo.ca only 
Version: 3.4.3
*/

/**
 *
 * ----------------------------------------------------------------------------
 */

body {
    line-height: 1.5rem;
}

.site-main {
    margin-top: 39px;
}

.site-main .wrapper,
footer .wrapper {
	width: 88%;
}

.post .entry-content, 
.page-template-page_with_sidebar .entry-content, 
.page-template-microsite-subpage-with-sidebar .entry-content {
	padding: 26px 0 1px 0;
	padding: 1.625rem 0 0.063rem 0;
	border: 0;
}
.entry-content blockquote, 
.comment-content blockquote {
	background-color: #f8f6f4;
	border-radius: 6px;
}
	
.meteor-slides .mslide img {
  border-radius: 0;
}

.home div.meteor-slides {
  margin: 0 0 20px 0;
}

footer .footer-sidebar .wrapper {
    padding: 15px 0 15px 0 !important;
}

footer h3.spielzeugsicherheit {
    padding-top: 0;
}

#footer-meta2 .widget-title {
	width: initial !important;
}

h1,
.front-widgets .widget-title {
	font-family: "Delius", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 700;
	letter-spacing: -.03rem;
}

h2,
.widget-title,
.entry-content th,
.comment-content th,
.checkout h3,
footer h3.spielzeugsicherheit {
	font-family: "Delius", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 700;
	letter-spacing: -.03rem;
}
h3,
.entry-content th,
.comment-content th {
	font-family: "Delius", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 700;
	letter-spacing: -.03rem;
}
h4 {
	font-family: "Delius", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 700;
	letter-spacing: -.03rem;
}
.site-content .free-shipping {
	font-family: "Delius", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.w3eden .media-body .package-title {
	font-family: "Delius", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
ul.display-posts-listing li a.title {
	font-family: "Delius", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
body .dd-selected-description-truncated .woocommerce-Price-amount.amount,
body .dd-option-description .woocommerce-Price-amount.amount,
body .wooco_component_product_price .woocommerce-Price-amount.amount {
    font-family: "Delius", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
body .wooco_component_product_price .woocommerce-Price-amount.amount {
   font-family: "Delius", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
#kl_materials_wysiwyg h2,
#kl_materials_wysiwyg h2 *,
#kl_materials_wysiwyg h3,
#kl_materials_wysiwyg h3 * {
   font-family: "Delius", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

figure {
	margin-bottom: 24px;
}

/* ------------------------------------------- */
/*                Download Manager             */
/* ------------------------------------------- */

/* download icon: hide on mobile */
.w3eden img.wpdm_icon,
.microsite .big-teaser img.wpdm_icon {
  display: none;
}

/* button: mobile only style */
.wpdm-download-link.btn.btn-primary {
  width: 100%;
}

/* ------------------------------------------- */
/*                   Site Popup                */
/* ------------------------------------------- */

.sp-overlay {
	position:fixed; inset:0; 
	background:rgba(0,0,0,.45);
	opacity:0; 
	pointer-events:none; 
	transition:opacity .2s ease; 
	z-index:99998;
}
.sp-overlay.sp-open { 
	opacity:1; 
	pointer-events:auto; 
}

.sp-modal{
	position:fixed; 
	top:10vh; 
	left:50%; 
	transform:translate(-50%,10px);
	width:min(92vw,560px);
	background:#fff; 
	border-radius:12px;
	box-shadow:0 20px 60px rgba(0,0,0,.25);
	opacity:0; 
	transition:transform .22s ease,opacity .22s ease; 
	z-index:99999;
}
.sp-modal h3 {
	padding-bottom: 10px;
}
.sp-overlay.sp-open .sp-modal {
	transform:translate(-50%,0); 
	opacity:1; 
}
.sp-header,.sp-body,.sp-footer { 
	padding: 15px 30px;
}
.sp-header { 
	display:flex; 
	align-items:center; 
	justify-content:space-between; 
	padding-bottom:0; 
}
.sp-title { 
	margin:0; 
}

button.sp-close {
	background:none; 
	color: #56514c;
	border:0;
	font-size:24px; 
	line-height:1; 
	cursor:pointer; 
	padding: 10px;
	width: auto;
}
button.sp-close:hover {
	background:none; 
	color: ##56514c;
}
button..sp-close:focus-visible { 
	outline:2px solid #000; 
	outline-offset:2px; 
}
.sp-footer { 
	gap:8px; 
	justify-content:flex-end; 
}
button.sp-btn { 
	appearance:none; 
	cursor:pointer; 
}
button.sp-btn-primary { 
}
button.sp-btn-secondary { 
	background:#f2f2f2;
	color: #6a5f54; 
}

@media (max-width:480px){ .sp-modal{ top:6vh; } }
@media (prefers-reduced-motion: reduce){
  .sp-overlay, .sp-modal{ transition:none; }
}


/* ------------------------------------------- */
/*                   MICROSITES                */
/* ------------------------------------------- */

.microsite-header, .microsite .content-head {
	margin-left: -8%;
	margin-right: -8%;
}	
/* remove stretching images on mobile phones */
.microsite ul.teaser-list li img,
.microsite .big-teaser img {
  height: auto;
}

.microsite ul.teaser-list li h3 {
	letter-spacing: 0;
}
	
/* default wordpress gallery in gallery teaser */
.microsite .gallery-teaser .gallery .gallery-item {
	/*
	padding: 0 20px;
	box-sizing: border-box;
	width: 50% !important;
	*/
}
.microsite .gallery-teaser .gallery .gallery-item {
	 width: 48% !important;
}
/* first element in row of 2 */
.microsite .gallery-teaser .gallery :nth-child(2n+1 of dl.gallery-item) {
	margin: 0 4% 15px 0 !important;
    padding: 0;
}
/* last element in row of 2 */
.microsite .gallery-teaser .gallery :nth-child(2n of dl.gallery-item) {
	margin: 0 0 15px 0 !important;
	padding: 0;
}

.microsite .gallery-teaser .gallery .gallery-item .gallery-icon {
	border: 2px solid #e4e0dc;
	border-bottom: 0;
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
}
.microsite .gallery-teaser .gallery .gallery-item .gallery-icon img {
	border: 0 !important;
}
.microsite .gallery-teaser .gallery .gallery-item .gallery-caption {
	padding: 10px 15px 15px 15px;
	box-sizing: border-box;
	border: 2px solid #e4e0dc;
	border-bottom-right-radius: 6px;
	border-bottom-left-radius: 6px;
	border-top: 0;
	margin-bottom: -4px;
	font-style: normal;
	font-size: 15px;
	font-size: 0.938rem;
	line-height: 1.2rem;
}
.microsite .gallery-teaser .gallery .gallery-item .gallery-caption p {
	margin-bottom: 10px;
}
.microsite .gallery-teaser .gallery .gallery-item .gallery-caption a {
	display: block;
}

a.link-download {
	display: inline-block !important;
	padding: 7px 30px 7px 60px  !important;
	padding: 0.438rem 1.875rem 0.438rem 0.438rem 4.375rem !important;
	background: #de2a85 url(images/sprite.png) no-repeat scroll 30px -648px  !important;
	color: #ffffff  !important;
	background-color: #de2a85  !important;
	text-align: center  !important;
	border-radius: 6px  !important;
	line-height: 2.2  !important;
	-webkit-font-smoothing: antialiased;
	font-size: 16px  !important;
	font-size: 1rem  !important;
	font-weight: bold  !important;
}
a.link-download:before {
	content: "\f019";
	font-family: "Font Awesome 5 Free";
	padding-right: 7px;
}

.fg-simple_portfolio.fg-light .fg-caption-title a.link-download, 
.foogallery .fg-caption .fg-caption-title a.link-download {
	width: 100%;
	padding: 7px 30px 7px 30px  !important;
	padding: 0.438rem 1.875rem 0.438rem 0.438rem 1.875rem !important;
}
.fg-simple_portfolio.fg-light .fg-caption-title a {
	border: 0;
}
.fg-simple_portfolio.fg-light .fg-caption-title {
  color: #56514c;
}

.microsite .gallery-teaser .gallery .gallery-item .gallery-caption a.link-download {
	padding: 7px 10px 7px 10px;
	background-image: none;
	display: block;
}
.microsite .gallery-teaser .gallery .gallery-item .gallery-caption a.link-download:before {
	content: "";
	padding:0;
}

.microsite .columns-3 ul li:nth-child(n + 4) {
  margin-top: 15px;
}

/* ------------------------------------------- */
/*                 FREE SHIPPING               */
/* ------------------------------------------- */

/* free shipping notice */
.site-content .free-shipping {
	width: 220px;
	padding: 0px 0 0 80px;
    background-size: 67px;
	background-position-y: 3px;
	font-size: 15px;
}

.site-content .free-shipping,
header .free-shipping {
	display: block;
	text-align: center;
	position: absolute;
	padding: 10px 0;
	top: 50px;
	width: 100%;
	background-color: #ffffff;
	font-size: 13px;
	line-height: 1.2rem;
}

.site-content .free-shipping a,
header .free-shipping a {
	color: #6a5f54;
	background: url(../images/icon_shipping.png) no-repeat left 1px;
	background-size: 30px;
	padding-left: 35px;
}
.site-content .free-shipping a:hover,
header .free-shipping a:hover {
	text-decoration: none;
}

.site-content .free-shipping a:before,
header .free-shipping a:before {
	/*
	width: 20px;
	background: url(../images/icon_shipping.png) no-repeat left 1px;
	background-size: 30px;
	*/
}

.site-content .free-shipping.country-US a:before,
header .free-shipping.country-US a:before {
	/*background: url(../images/icon_shipping_US.png) no-repeat left 1px;*/
}

.site-content .free-shipping.country-CA a:before,
header .free-shipping.country-CA a:before {
	/*background: url(../images/icon_shipping_CA.png) no-repeat left 1px;*/
	}

.shipping-message:before {
	content:"";
}

.shipping-message {
	background-image: url(../images/icon_shipping.png);
	background-size: 90px;
	background-position: center left 15px;
	background-repeat: no-repeat;
}

.shipping-message.country-US {
	background-image: url(../images/icon_shipping_US.png);
}

.shipping-message.country-CA {
	background-image: url(../images/icon_shipping_CA.png);
}

.woocommerce .woocommerce-info.shipping-message .button,
.shipping-message .button {
	display: none;
}


/* ------------------------------------------- */
/*                  WOOCOMMERCE                */
/* ------------------------------------------- */

/* no spacing on mobile devices between header and content */
.site-main .wrapper {
  padding: 0;
}
/* no bottom spacing on shop category header */
.woocommerce .site-main .wrapper .shop-header-area .widget {
  margin-bottom: 5px;
}

/* change color of breadcrump */
.woocommerce .woocommerce-breadcrumb {
	color: #6a5f54;
	line-height: 1.5;
	margin-bottom: 14px;
}
.woocommerce .woocommerce-breadcrumb a {
  color: #6a5f54;
}
.woocommerce .woocommerce-breadcrumb {
	font-size: 0;
}
.woocommerce .woocommerce-breadcrumb a {
	font-size: 14px;
}
.woocommerce .woocommerce-breadcrumb a::after {
	content:" / ";
}
.woocommerce .woocommerce-breadcrumb a:last-of-type:after {
	content: "";
}
/* remove blue focus border around notices */
.woocommerce-message:focus,
.woocommerce-message:focus-visible,
.woocommerce-message *:focus,
.woocommerce-message *:focus-visible {
	outline: none !important;
	box-shadow: none !important;
}

/* ----------------- HOME PAGE --------------- */

/* hide third product on front page */
.home .widget-area .woocommerce .products.columns-3 ul li:nth-child(3), 
.home .widget-area .woocommerce ul.products.columns-3 li:nth-child(3) {
	display: none;
}
.home .widget-area .woocommerce .products.columns-3 ul li:nth-child(3), 
.home .widget-area .woocommerce ul.products.columns-3 li:nth-child(3) {
	display: none;
}
.home .woocommerce ul.products[class*="columns-"] li.product, 
.home .woocommerce-page ul.products[class*="columns-"] li.product,
.home .widget-area .woocommerce .products.columns-3 ul li, 
.home .widget-area .woocommerce ul.products.columns-3 li {
	margin-bottom: 0px;
}

/* ----------- PRODUCT DETAIL PAGE ----------- */

.woocommerce-tabs.wc-tabs-wrapper {
	background: none;
	padding-top: inherit;
    margin-top: inherit;
}
/* product title */
.woocommerce div.product .product_title {
  font-size: 1.500rem;
  letter-spacing: -.03rem;
  line-height: 1.2em;
}
/* product gallery */
.woocommerce div.product div.images.woocommerce-product-gallery {
  margin-bottom: 20px;
}

/* color of stock */
.woocommerce div.product .stock {
  color: #8fae1b;
}
.woocommerce div.product .out-of-stock {
  color: #eb0d51;
}
/* color sale price */
.woocommerce div.product.sale span.price, 
.woocommerce div.product.sale p.price, 
.woocommerce div.product.sale .price {
  color: #eb0d51;
}

/* hide weight and dimensions neccessary for shipping on product page */
.woocommerce .product .woocommerce-product-attributes-item--weight,
.woocommerce .product .woocommerce-product-attributes-item--dimensions {
	display: none;
}

/* add-to-cart notice */
/* hide default Woo view cart button */
.woocommerce .woocommerce-message > .button.wc-forward {
	display: none;
}

/* add-to-cart notice */
.woocommerce .woocommerce-message {
	position: relative;
	display: grid;
	/*padding: 25px !important;*/
	line-height: 1.5;
}

/* success icon (check) */
.woocommerce .woocommerce-message::before {
	position: absolute;
	/*
	top: 29px;
	left: 25px;
	*/
	top: 18px;
	  left: 29px;
	line-height: 1;
	margin: 0 !important;
}

/* remove Woo clearfix */
.woocommerce-error::after,
.woocommerce-info::after,
.woocommerce-message::after {
	display: none;
}

/* inner wrapper spans full notice width */
.woocommerce .kullaloo-added-to-cart {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
	width: 100%;
	box-sizing: border-box;
}

/* message text */
.woocommerce .kullaloo-added-message {
	width: 100%;
}

/* checkout button full width */
.woocommerce .kullaloo-added-actions {
	width: 100%;
}

.woocommerce .kullaloo-added-actions .checkout-button {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box !important;
	text-align: center !important;
	margin: 0 !important;
}

/* close X */
.woocommerce .close {
	position: absolute;
	top: 0;
	right: 3px;
	background: none;
	border: 0;
	padding: 0;
	margin: 0;
	cursor: pointer;
	min-width: auto;
	box-shadow: none;
	color: #56514c !important;
	display: block;
	font-size: 1.5em;
	height: 1em;
	width: 1em;
	text-align: center;
	line-height: 1;
	text-decoration: none;
	font-weight: 700;
	font-family: "Asap", Arial, sans-serif;
}

.woocommerce .close:hover {
	background: none !important;
}

/* variations */
.woocommerce div.product form.cart .variations {
	margin-top: 0;
	width: auto;
}
.woocommerce div.product-type-variable .summary > p.price {
	display: none;
}
.woocommerce div.product form.cart .variations label {
	padding-right: 20px;
	vertical-align: text-top;
}
.woocommerce div.product form.cart .single_variation_wrap .woocommerce-variation-price {
	display: inline-block;
	width: 100%;
	padding-top: 20px;
}
.woocommerce div.product form.cart .single_variation_wrap .price {
  margin-bottom: 0;
}

.woocommerce #reviews #comments ol.commentlist li .comment-text .woocommerce-review__dash {
	display: initial;
	color: #ddd6d0;
	padding: 0 5px;
	font-weight: bold;
}
.woocommerce #reviews #comments ol.commentlist li .comment-text .woocommerce-review__author::after {
	display: none;
}

.woocommerce #reviews #comments ol.commentlist li .comment-text .link-view-review-on-etsy,
.woocommerce #reviews #comments ol.commentlist li .comment-text .link-view-review-on-amazon {
  color: #fff;
  background-color: #f77a2c;
  background-image: none;
  border: 4px solid #f77a2c;
  border-radius: 4px;
  box-shadow: none;
  padding: 0 3px;
  margin-left: 5px;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: bold;
}

/* -------------- ARCHIVE PAGES -------------- */

/* hide headline of product archive pages */
header .woocommerce-products-header__title {
	display: none;
}

/* hide product count on archive pages */
.woocommerce-result-count {
	display: inherit;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title, 
.woocommerce ul.products li.product h2, 
.woocommerce ul.products li.product h3 {
	letter-spacing: 0rem;
}

/* hide add to basket button on archive pages */
.woocommerce ul.products li.product .button {
	margin-top: 1em;
	display: none;
}

.woocommerce div.product span.price, 
.woocommerce div.product p.price, 
.woocommerce div.product .price {
	margin-bottom: 15px;
}

.woocommerce ul.products li.product .price del {
	color: #3b3733 !important;
	opacity: 1;
}

.woocommerce .product span.onsale, 
.woocommerce ul.products li.product .onsale {
	background-color: #eb0d51 !important;
}
.woocommerce .product span.soldout, 
woocommerce ul.products li.product .soldout {
  background-color: #de2a85 !important;
}
.woocommerce ul.products li.product.sale .price {
	color: #eb0d51;
}

.widget-area .link-onsale {
	background-color: #eb0d51;
}

.woocommerce-cart .cart-collaterals .cart_totals table th {
	padding: 20px 20px 20px 0;
}

.woocommerce .cart-collaterals table .cart-discount th,
.woocommerce .cart-collaterals table .cart-discount,
.woocommerce table.shop_table tfoot th tr.cart-discount th,
.woocommerce table.shop_table tr.cart-discount th {
	color: #eb0d51;
}

/* bottom spacing of products eg on archive pages */
.woocommerce ul.products[class*="columns-"] li.product, 
.woocommerce-page ul.products[class*="columns-"] li.product {
	margin-bottom: 1em;
}

/* plugin woocommerce lead time */
.woocommerce .product .wclt_lead_time {
	background: url(../images/icon_shipping.png) no-repeat left;
	background-size: auto;
	background-size: auto;
	background-size: 40px;
	padding-left: 50px;
	display: block;
}

/* ------------------ CART ------------------ */


/* reset Woo table behavior */
.woocommerce-cart table.cart,
.woocommerce-cart table.cart tbody,
.woocommerce-cart table.cart tr,
.woocommerce-cart table.cart td {
	display: block;
	border: 0 !important;
}
.woocommerce-cart table.cart thead {
	display: none;
}
.woocommerce-cart table.cart td::before {
	display: none !important;
}
/* product row layout */
.woocommerce-cart table.cart tr.cart_item {
	display: grid !important;
	grid-template-columns: 64px 1fr auto;
	grid-template-areas:
		"image name remove"
		"image price subtotal"
		"image qty subtotal";
	gap: 6px 12px;
	align-items: start;
	padding: 18px 0;
	border-bottom: 1px solid #e4e0dc !important;
}
/* remove extra top spacing on first product */
.woocommerce-cart table.cart tr.cart_item:first-child {
	padding-top: 6px; /* or 0 if you want it tight */
}
.woocommerce table.shop_table td {
  line-height: 1em;
}
/* image */
.woocommerce-cart table.cart td.product-thumbnail {
	grid-area: image;
	padding: 0 !important;
}
.woocommerce-cart table.cart td.product-thumbnail img {
	width: 56px;
	height: 56px;
	object-fit: cover;
	border-radius: 6px;
	display: block;
}
/* title */
.woocommerce-cart table.cart td.product-name {
	grid-area: name;
	padding: 0 !important;
}
/* variation / components */
.woocommerce td.product-name .wc-item-meta p, 
.woocommerce td.product-name .wc-item-meta:last-child, 
.woocommerce td.product-name dl.variation p, 
.woocommerce td.product-name dl.variation:last-child {
	margin: 5px 0;
	font-size: 14px;
}
.woocommerce td.product-name dl.variation .variation-Components {
	line-height: 1.2em;
	color: #867e7c;
}
/* price under title */
.woocommerce-cart table.cart td.product-price {
	grid-area: price;
	padding: 0 !important;
	text-align: left;
	color: #6a5f54;
}
/* quantity LEFT */
.woocommerce-cart table.cart td.product-quantity {
	grid-area: qty;
	justify-self: start !important;
	text-align: left !important;
	padding: 0 !important;
	margin: 0 !important;
}
.woocommerce-cart table.cart td.product-quantity .quantity {
	margin: 0 !important;
}
.woocommerce-cart table.cart .quantity input.qty {
	width: 58px;
	height: 36px;
	padding: 6px;
	text-align: center;
	margin: 0 !important;
}
/* subtotal RIGHT */
.woocommerce-cart table.cart td.product-subtotal {
	grid-area: subtotal;
	justify-self: end !important;
	text-align: right;
	white-space: nowrap;
	padding: 0 !important;
	align-self: end;
	color: #56514c;
}
/* hide subtotal in cart/checkout totals unless a coupon is applied */
.woocommerce-cart .cart_totals:not(:has(.cart-discount)) .cart-subtotal {
	display: none;
}
/* move remove into right column */
.woocommerce-cart table.cart td.product-remove {
	grid-column: 3;        /* right column */
	grid-row: 1;           /* top row */
	justify-self: end;     /* push to far right */
	align-self: start;     /* align to top */
	padding: 0 !important;
}

.woocommerce-cart table.cart td.product-remove a {
	color: #56514c !important;
	font-size: 22px;
	line-height: 1;
	margin-top: -5px; /* adjust between -2px and 4px if needed */
}
.woocommerce-cart table.cart td.product-remove a:hover {
	background: none;
}

.woocommerce table.shop_table_responsive tr td.product-price , 
.woocommerce-page table.shop_table_responsive tr td.product-price  {
  text-align: left !important;
}
/* update cart button */
.woocommerce-cart button[name="update_cart"] {
	display: none !important;
}
/* hide default cart coupon field */
.woocommerce-cart table.cart td.actions .coupon {
	display: none !important;
}
/* coupon error full width under input + button */
.woocommerce .coupon-inline .coupon-error-notice, 
.woocommerce-page .coupon-inline .coupon-error-notice {
	grid-column: 1 / -1;
	width: 100%;
	margin: 0 0 10px 0;
	font-size: 15px;
	line-height: 1.1rem;
	color: #eb0d51;
}
/* cart totals table */
.woocommerce-cart .cart-collaterals .cart_totals table,
.woocommerce-cart .cart-collaterals .cart_totals th,
.woocommerce-cart .cart-collaterals .cart_totals td {
	border: none !important;
}

.woocommerce-cart .cart-collaterals .cart_totals th,
.woocommerce-cart .cart-collaterals .cart_totals td {
	padding: 3px 0 !important;
	vertical-align: top;
}
.woocommerce table.shop_table_responsive tr td::before, 
.woocommerce-page table.shop_table_responsive tr td::before {
  content: attr(data-title) "";
  font-weight: normal;
  float: left;
}
/* totals prices right */
.woocommerce-cart .cart-collaterals .cart_totals td {
	text-align: right;
}
.woocommerce-cart .cart-collaterals .cart_totals tr.estimated-total,
.woocommerce table.shop_table_responsive tr.estimated-total td::before, 
.woocommerce-cart .cart-collaterals .cart_totals tr.estimated-total .woocommerce-Price-amount {
	font-weight: bold;
	font-size: 1.2rem;
}
/* dotted line above estimated total */
.woocommerce-cart .cart-collaterals .cart_totals tr.estimated-total th,
.woocommerce-cart .cart-collaterals .cart_totals tr.estimated-total td {
	border-top: 3px solid transparent !important;
	border-image: url(../images/hr_white_seam.png) 3 0 0 repeat !important;
	padding-top: 7px !important;
	font-size: 1.2rem;
	font-weight: bold;
}

/* simplify cart totals on cart page */
.woocommerce-cart .cart_totals .woocommerce-shipping-totals,
.woocommerce-cart .cart_totals .tax-total,
.woocommerce-cart .cart_totals .order-total {
	display: none !important;
}

/* checkout button */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	margin-bottom: 0;
}

/* express buttons inside cart totals */
.woocommerce-cart .cart_totals .wc-stripe-cart-checkout-container,
.woocommerce-cart .cart_totals .wc-stripe-cart-checkout-button,
.woocommerce-cart .cart_totals .wc-stripe-cart-checkout-button iframe {
	width: 100% !important;
	max-width: none !important;
}
.wc-stripe-cart-checkout-container ul.wc_stripe_cart_payment_methods,
.wc-stripe-cart-checkout-container ul.wc_stripe_cart_payment_methods.active {
	margin-bottom: 0 !important;
}
/* spacing below regular checkout button */
.woocommerce-cart .wc-proceed-to-checkout {
	padding: 0;
	margin: 0;
}
/* OR divider */
.woocommerce-cart .cart_totals .wc-stripe-cart-or {
	margin: 5px 0 5px;
	text-align: center;
}
.woocommerce-cart .cart_totals .wc_stripe_cart_payment_methods li {
	margin: 0;
}
/* spacing between express buttons */
#wc-ppcp-cart-button-container .paypal-buttons:nth-child(n+2) {
  margin: 10px 0 !important;
}

.wc-stripe-cart-checkout-container ul.wc_stripe_cart_payment_methods li[class*="payment_method_stripe_"], 
.wc-stripe-product-checkout-container ul.wc_stripe_product_payment_methods li[class*="payment_method_stripe_"] {
	margin-top: 10px;
}

/* ------------------------------------------- */
/*                  CHECKOUT                   */
/* ------------------------------------------- */


/* Make checkout columns proper widths */

/* Stripe express checkout */
/* show for styling reasons 
.wc-stripe-banner-checkout {
	display: inherit !important;
} */

.wc-stripe-banner-checkout fieldset {
  border: 1px solid #dcd6d0  !important;
  border-radius: 6px  !important;
}

.woocommerce-checkout-review-order,
#customer_details {
	width: 100%;
}



/* PayPal / GPay buttons */
.wc-stripe-banner-checkout iframe,
.wc-stripe-checkout-banner-gateway,
.wc_stripe_checkout_banner_gateways {
	width: 100% !important;
	max-width: 100% !important;
}



/* comment textarea */
.woocommerce form .form-row textarea {
	height: 5.3em;
}
/* ---------------- GENERAL LAYOUT ---------------- */

/* reset Woo widths */
.woocommerce-billing-fields__field-wrapper .form-row,
.woocommerce-shipping-fields__field-wrapper .form-row {
	width: 100% !important;
	float: none !important;
	clear: none !important;
	margin: 0 !important;
}
/* mobile checkout layout */
.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper {
	display: grid !important;
	grid-template-columns: repeat(12, 1fr);
	gap: 0 10px;
}

/* ---------------- FORM FIELDS ---------------- */
/* full width fields */
#billing_email_field,
#billing_country_field,
billing_company_field,
#billing_address_1_field,
#billing_address_2_field,
#billing_city_field,
#billing_phone_field,
#shipping_country_field,
#shipping_address_1_field,
#shipping_address_2_field,
#shipping_city_field {
	grid-column: span 12;
}
/* first + last name 50% */
#billing_first_name_field,
#billing_last_name_field,
#shipping_first_name_field,
#shipping_last_name_field {
	grid-column: span 6;
}
/* province wide, postal fixed-ish */
#billing_state_field,
#shipping_state_field {
	grid-column: span 8;
	min-width: 0;
}
#billing_postcode_field,
#shipping_postcode_field {
	grid-column: span 4;
	min-width: 125px;
}
/* shorten long province names */
#billing_state_field .select2-selection__rendered,
#shipping_state_field .select2-selection__rendered {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: calc(100% - 28px);
}
/* Shopify-style fake floating labels */
.woocommerce-checkout .woocommerce-billing-fields .form-row,
.woocommerce-checkout .woocommerce-shipping-fields .form-row {
	position: relative;
	padding: 0;
}
/* put label inside the field box */
.woocommerce-checkout .woocommerce-billing-fields .form-row label,
.woocommerce-checkout .woocommerce-shipping-fields .form-row label {
	display: block !important;
	position: absolute;
	top: 10px;
	left: 16px;
	z-index: 2;
	font-size: 13px;
	line-height: 1;
	color: #777;
	pointer-events: none;
}
/* input gets extra top padding so value sits below label */
html .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #56514c;
}

/* keep checkbox/radio labels normal */
.woocommerce-checkout label.checkbox,
.woocommerce-checkout label.radio,
.woocommerce-checkout #ship-to-different-address label {
	position: static !important;
	display: inline-flex !important;
	font-size: inherit;
	pointer-events: auto;
}
.woocommerce-checkout #ship-to-different-address {
	margin-bottom: 0;
}

/* ---------------- SHIPPING SELECTION ---------------- */

/* shipping method box */
#checkout-shipping-methods-left {
	margin-top: 10px;
}
#checkout-shipping-methods-left ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
#checkout-shipping-methods-left li {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 14px;
	border: 1px solid #ddd;
	border-radius: 8px;
	margin-bottom: 8px;
	background: #fff;
}
#checkout-shipping-methods-left li:has(input:checked) {
	background: #eaf6fb;
	border-radius: 6px;
	border: #d0e6ef 1px solid;
}
#checkout-shipping-methods-left label {
	display: flex;
	justify-content: space-between;
	width: 100%;
	gap: 12px;
	font-size: 15px;
	line-height: 1.3;
	cursor: pointer;
}
#checkout-shipping-methods-left .amount {
	margin-left: auto;
	white-space: nowrap;
	font-weight: 700;
}

/* ---------------- ORDER NOTES ---------------- */

/* make "Order notes (optional)" look like your section headline */
#order_comments_field label {
	font-family: "Delius";
	font-weight: 700;
	letter-spacing: -.03rem;
	font-size: 1.250rem;
	line-height: 1.2em;
	padding: 3px 0;
	color: #56514c;
	display: block;
	margin-top: 20px;
	margin-bottom: 20px;
	border-bottom: 12px solid transparent;
	border-image: url(../images/hr_zigzag.png) 0 0 11 repeat stretch;
	top: 0;
	left: 0;
	position: initial;
}
#order_comments_field {
	position: relative;
}
#order_comments {
	min-height: 70px;
	resize: vertical;
	padding: 15px;
	padding: 0.938rem;
}

/* ---------------- ORDER REVIEW TABLE ---------------- */

/* cleaner checkout order table */
.woocommerce-checkout-review-order-table thead {
	display: none;
}
.woocommerce-checkout-review-order-table,
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
	border: none !important;
}
.woocommerce-checkout-review-order-table tr,
.woocommerce-checkout-review-order-table td,
.woocommerce-checkout-review-order-table th {
	border-bottom: none !important;
}
.woocommerce-checkout-review-order-table {
	margin-bottom: 20px;
}
.woocommerce-checkout-review-order-table tr.cart_item td {
	vertical-align: middle !important;
}
.woocommerce-checkout-review-order-table td.product-total {
	display: table-cell !important;
	vertical-align: middle !important;
}
.woocommerce .checkout table.shop_table {
	background-color: #f8f6f4 !important;
	border: none;
	border-radius: 6px;
	border-collapse:separate;
	padding: 20px;
} 
.woocommerce table.woocommerce-checkout-review-order-table th.product-total,
.woocommerce table.woocommerce-checkout-review-order-table td.product-total {
	width: 35%;
	text-align: right;
	line-height: 1.3;
}
.woocommerce table.woocommerce-checkout-review-order-table td.product-total,
.woocommerce table.woocommerce-checkout-review-order-table tr.cart-subtotal td,
.woocommerce table.woocommerce-checkout-review-order-table tr.tax-total td,
.woocommerce table.woocommerce-checkout-review-order-table tr.order-total td {
	padding: 15px 0 15px 10px;
	vertical-align: top;
	text-align: right;
}
.woocommerce table.woocommerce-checkout-review-order-table tr.cart-discount td {
	padding: 0 0 0 10px;
	vertical-align: top;
	text-align: right;
}

.woocommerce table.shop_table th,
.woocommerce .checkout table.shop_table td.product-name,
.woocommerce table.shop_table tfoot th,
.woocommerce table.shop_table .woocommerce-shipping-totals td,
.woocommerce table.shop_table tfoot th {
	padding: 15px 10px 15px 0;
}
/* use normal font in order table */
.woocommerce-cart .cart-collaterals .cart_totals table td,
.woocommerce table.shop_table,
.woocommerce table.shop_table th,
.woocommerce table.shop_table tfoot,
.woocommerce table.shop_table tfoot th,
.woocommerce table.shop_table tfoot td {
	font-family: "Asap", Arial, sans-serif;
	font-size: inherit;
	font-weight: normal;
	color: #6a5f54;
	letter-spacing: 0rem;
	line-height: 1.3em;
}
/* highlight for subtotal and order total */
.woocommerce table.shop_table tfoot .cart-subtotal th,
.woocommerce table.shop_table tfoot .cart-subtotal td,
.woocommerce table.shop_table tfoot .order-total th,
.woocommerce table.shop_table tfoot .order-total td {
	font-weight: 700;
	line-height: 1.3em;
}
/* different font for order total */
.woocommerce table.shop_table tfoot .order-total th,
.woocommerce table.shop_table tfoot .order-total td {
	font-family: "Delius", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 1.2rem;
	color: #56514c;
}
/* ---------------- PRODUCTS IN CART ---------------- */

.woocommerce-checkout-review-order-table .cart_item .product-name {
	width: 75%;
	font-size: 0 !important;
	line-height: 0 !important;
}
.woocommerce-checkout-review-order-table .checkout-product-line {
	display: flex;
	gap: 10px;
	align-items: center;
	font-size: 14px;
	line-height: 1.3;
	min-height: 44px;
	align-items: center;
}
.woocommerce table.shop_table th, 
.woocommerce .checkout table.shop_table td.product-name, 
.woocommerce table.shop_table tfoot th, 
.woocommerce table.shop_table 
.woocommerce-shipping-totals td, 
.woocommerce table.shop_table tfoot th,
.woocommerce-checkout-review-order-table td,
.woocommerce-checkout-review-order-table th {
	padding: 6px 0;
	vertical-align: middle !important;
}

/* -- product thumb images -- */

.checkout-thumb-wrap {
	position: relative;
	width: 44px;
	height: 44px;
	flex-shrink: 0;
	flex: 0 0 44px !important;
}
.checkout-product-thumb {
	width: 44px !important;
	height: 44px !important;
	object-fit: cover;
	border-radius: 4px;
	flex-shrink: 0;
	display: block;
}
.checkout-qty-bubble {
	position: absolute;
	top: -7px;
	right: -7px;
	background: #de2a85;
	color: #fff;
	border-radius: 999px;
	min-width: 18px;
	height: 18px;
	padding: 0;
	font-size: 11px;
	line-height: 18px;
	text-align: center;
	font-weight: bold;
}

/* -- product titles -- */

.woocommerce .checkout table.shop_table td.product-name {
	width: auto;
}
/* hide the default product quanity after the title */
.woocommerce-checkout-review-order-table .cart_item .product-name .product-quantity {
    display: none;
}
.woocommerce-checkout-review-order-table .checkout-product-line {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}
.checkout-product-title {
	display: block;
}
.checkout-product-title,
.product-total,
.checkout-product-line {
	font-size: 14px;
    line-height: 1.3;
}

/* -- coupon -- */

/* coupon toggle link */
.coupon-row,
.coupon-row td,
.coupon-row th {
	display: block;
	width: 100%;
	text-align: left !important;
}
/* force coupon row left on mobile */
.woocommerce table tr.coupon-row td {
	text-align: left !important;
}

.kullaloo-toggle-coupon {
	display: inline-block;
	margin: 8px 0 10px;
	color: #e12686;
	font-weight: 600;
	text-decoration: none;
	text-align: left;
	clear: both;
}

.kullaloo-toggle-coupon:hover {
	text-decoration: underline;
}

.kullaloo-coupon-wrap {
	display: block;
	width: 100%;
	text-align: left;
	clear: both;
}

.woocommerce table.woocommerce-checkout-review-order-table tr.coupon-row td,
.woocommerce-cart .cart_totals table tr.coupon-row td {
	padding: 0 0 12px 0;
	border: 0;
}
.woocommerce .coupon-row td {
	text-align: left !important;
}

.woocommerce .kullaloo-toggle-coupon {
	clear: both;
	margin: 8px 0 12px;
}

.woocommerce .coupon-inline {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: stretch;
	width: 100%;
}

.woocommerce .coupon-inline input.input-text {
	width: 100% !important;
	box-sizing: border-box;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	padding: 0.938rem;
	margin-bottom: 13px;
}

.woocommerce .coupon-inline button {
	white-space: nowrap;
	width: auto !important;
	min-width: 120px;
	border-top-left-radius: 0 !important;
	border-bottom-left-radius: 0 !important;
	margin-bottom: 13px;
}

/* checkout coupon row: keep table layout, make cell span full width */
.woocommerce-checkout #order_review tr.coupon-row {
	display: table-row !important;
	width: 100% !important;
}

.woocommerce-checkout #order_review tr.coupon-row td {
	display: table-cell !important;
	width: 100% !important;
	text-align: left !important;
	padding: 0 0 12px 0 !important;
	border: 0 !important;
}

/* coupon content full width */
.woocommerce-checkout #order_review tr.coupon-row .kullaloo-toggle-coupon,
.woocommerce-checkout #order_review tr.coupon-row .kullaloo-coupon-wrap,
.woocommerce-checkout #order_review tr.coupon-row .coupon-inline {
	width: 100% !important;
	max-width: none !important;
	text-align: right !important;
	float: none !important;
	margin: 0 0 10px;;
}
  
/* -- shipping -- */

/* hide default shipping info */
.woocommerce .checkout td.product-name dl.variation {
	display:none;
}
.woocommerce .checkout table.shop_table tr.woocommerce-shipping-totals {
	display: none !important;
}
.shipping-summary-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%; 
}
.shipping-summary-row span:last-child {
	text-align: right;
	white-space: nowrap;
}
/* bring shipping an tax rows closer together */
.woocommerce-checkout-review-order-table .custom-shipping-summary-row td,
.woocommerce-checkout-review-order-table .tax-total th,
.woocommerce-checkout-review-order-table .tax-total td {
	padding:0 !important;
}

/* -- payments -- */

/* box with payment infomation */
#add_payment_method #payment, 
.woocommerce-cart #payment, 
.woocommerce-checkout #payment {
  background: #eaf6fb;
  border-radius: 6px;
  border: #d0e6ef 2px solid;
  
}
/* bring payments methods and legal texts closer together */
.woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p {
	margin-bottom: 20px;
}

#add_payment_method #payment ul.payment_methods, 
.woocommerce-cart #payment ul.payment_methods, 
.woocommerce-checkout #payment ul.payment_methods {
	border: 0;
	padding-bottom: 0;
}
.woocommerce-checkout #payment div.form-row {
  padding-top: 0;
  line-height: 1.3rem;
}
/* terms checkbox alignment */
/* make checkbox + text one clean row */
.woocommerce-checkout #payment .form-row label {
	color: #6a5f54;
}

/* -- newsletter sign up -- */

/* hide the original checkbox */
.woocommerce-billing-fields .mailchimp-newsletter {
	display: none !important;
}


.paypal-buttons-context-iframe {
	min-width: auto !important;
}

.wc-stripe-banner-checkout ul.wc_stripe_checkout_banner_gateways li.wc-stripe-checkout-banner-gateway.active:nth-child(n+2) {
	margin: 0 !important;
}



/* ------------------------------------------- */
/*              CURRENCY SWICHER               */
/* ------------------------------------------- */

.wc_aelia_cs_currency_selector {
	padding-top: 5px !important;
	padding-bottom: 5px !important;
}
.wc_aelia_cs_currency_selector .selected_currency {
	box-sizing: border-box;
	border-radius: 4px;
	background-color: #f2eeea;
	border: 0 !important;
	padding: 15px 40px 15px 15px !important;
	color: #686868;
}
.wc_aelia_cs_currency_selector .selected_currency::before {
	border-bottom: 3px solid #de2a85 !important;
	border-right: 3px solid #de2a85 !important;
	border-radius: 2px;
	height: 10px !important;
	width: 10px !important;
	right: 15px !important;
	top: 18px;
}
.wc_aelia_cs_currency_selector.active .selected_currency::before {
    top: 22px;
}
.wc_aelia_cs_currency_selector .dropdown {
	line-height: 2;
	border-radius: 4px;
	background-color: #f2eeea;
	border: 0;
	color: #686868;
	padding: 15px 0 !important;
}
.wc_aelia_cs_currency_selector .dropdown .currency {
	padding: 15px 15px !important;
}
.wc_aelia_cs_currency_selector .currency_name {
	margin-left: 10px !important;
	line-height: 1.5 !important;
}

/* ------------------------------------------- */
/*             COMPOSITE PRODUCTS              */
/* ------------------------------------------- */

/* box around the components */
body .wooco-wrap .wooco_components {
  background: none;
  padding: 0;
  margin: 15px 0;
}
/* remove * for required products from product name */
body .wooco_components .wooco_component_required .wooco_component_name::after {
	content: '';
}

.wooco_component_product_description {
    padding-left: 60px;
}
.wooco_component_product_description > span {
    display: flex;
    margin-right: 10px;
}

.woocommerce .product .wooco_component_product_name a {
    color: #de2a85;
}

/* Formatierung Preise */
body .dd-selected-description-truncated .woocommerce-Price-amount.amount,
body .dd-option-description .woocommerce-Price-amount.amount,
body .wooco_component_product_description .woocommerce-Price-amount.amount,
body .wooco_component_product_price .woocommerce-Price-amount.amount {	
	color: #3B3733;
	font-family: "Asap", Arial, sans-serif;
	font-weight: 700;
}
body .wooco_components .wooco_component a:hover,
body .wooco_component_product a:hover,
body .wooco_component_product_selection a:hover,
body .dd-selected-description-truncated a:hover,
body .dd-option-description a:hover,
body .wooco_component_product_description a:hover,
body .wooco_component_product_price a:hover {	
	text-decoration: none !important;
}
body .wooco_component_product_description .woocommerce-Price-amount.amount,
body .wooco_component_product_price .woocommerce-Price-amount.amount {	
	font-size: 1.13em !important;
}
/* sale price in components */ 
body .dd-selected-description del .woocommerce-Price-amount.amount bdi, 
body .dd-option-description del .woocommerce-Price-amount.amount bdi, 
body .wooco_component_product_description del .woocommerce-Price-amount.amount bdi, 
body .wooco_component_product_price del .woocommerce-Price-amount.amount bdi {	
	opacity: .5;
	margin-right: 5px;
}
body .dd-selected-description ins .woocommerce-Price-amount.amount bdi, 
body .dd-option-description ins .woocommerce-Price-amount.amount bdi, 
body .wooco_component_product_description ins .woocommerce-Price-amount.amount bdi, 
body .wooco_component_product_price ins .woocommerce-Price-amount.amount bdi {	
	color: #eb0d51;
}
body .wooco_component_product_description ins .woocommerce-Price-amount.amount bdi, 
body .wooco_component_product_price ins .woocommerce-Price-amount.amount bdi {	
	margin-right: 5px;
}

body .summary.entry-summary .price .woocommerce-price-suffix {
    display: initial !important;
}

/* background of sale preis */
ins {	
	background: transparent;
}

/* hide the "saved 50%" on big product price */
body .wooco_component_product .entry-summary .woocommerce-price-suffix {
	display: none;
}

/* link to product of each component dropdown) */
a.wooco_component_product_link:hover {	
	text-decoration:none;
}
/* headline of each component */
body .wooco_components .wooco_component .wooco_component_name {	
	line-height: 1.3rem !important;
	color: #6a5f54;
}
/* description of each component */
body .wooco_components .wooco_component .wooco_component_desc {	
	line-height: 1.3rem;
}

/* price and stock information of each component */
body .dd-selected-description-truncated, 
body .dd-selected-description-truncated > *, 
body .dd-option-description, 
body .dd-option-description > * {
  float: inherit;
  display: block;
}

/* Preisberechnung unterhalb der Komponenten */
body .product-type-composite .entry-summary .wooco_wrap .wooco_total ins .woocommerce-Price-amount.amount {	
	color: #eb0d51;
	font-size: 1.2rem;
}
/* hide general lead time of overall product */
body .product-type-composite .entry-summary > p.wclt_lead_time {
	display: none;
}
/* Streichpreis */
body .dd-selected-description del .woocommerce-Price-amount.amount bdi,
body .dd-option-description del .woocommerce-Price-amount.amount bdi {	
	opacity: .5;
}
/* name of product in component dropdown */
.wooco_component_product_selection .dd-selected-text, 
.wooco_component_product_selection .dd-option-text,
body .wooco_component_product_selection .dd-selected-text, 
body .wooco_component_product_selection .dd-option-text {
	color: #6a5f54 !important;
}
/* lead time in components */
.woocommerce .product .wooco_component .wclt_lead_time {
	padding-top: 0.1em !important;
	background-size: 25px;
	background-position: left top 4px;
	padding-left: 23px !important;
	font-weight: normal;
}
/* lead time for instant downloads only */
.woocommerce .product .wooco_component p.stock.wclt_lead_time {
	float: left !important;
	color: #8fae1b !important;
	padding-left: 30px !important;
}
/* lead time for out of stock products only */
.woocommerce .product .wooco_component_product_selection p.out-of-stock > span.wclt_lead_time {
	display: none;
}
/* stock in components */
body.woocommerce div.product .wooco_component p.stock {
	font-weight: normal;
}
/* hide link to each component to save space */
.wooco_component_product_link {
	display: none;
}


/* =Media queries
-------------------------------------------------------------- */

/* Does the same thing as <meta name="viewport" content="width=device-width">,
 * but in the future W3C standard way. -ms- prefix is required for IE10+ to
 * render responsive styling in Windows 8 "snapped" views; IE10+ does not honor
 * the meta tag. See http://core.trac.wordpress.org/ticket/25888.
 */
@-ms-viewport {
	width: device-width;
}
@viewport {
	width: device-width;
}

/* Minimum width of 600 pixels. */
@media screen and (min-width: 600px) {
	
	body {
	    line-height: 1.7rem;
	}
	
	/* spacing between content and header */
	.site-main .wrapper,
	.woocommerce .site-main .wrapper {
	  padding: 30px 0;
	  padding: 1.875rem 0;
	}
	
	#footer-meta2 .widget-title {
	    width: 100% !important;
	}
	
	/* hide third product on front page */
	.home .widget-area .woocommerce .products.columns-3 ul li:nth-child(3), 
	.home .widget-area .woocommerce ul.products.columns-3 li:nth-child(3) {
		display: initial;
	}
	
	.woocommerce-result-count {
		display: initial;
	}
	
	header .free-shipping {
		font-family: "Delius", "Helvetica Neue", Helvetica, Arial, sans-serif;
	}
	
	/* ------------------------------------------- */
	/*                Download Manager             */
	/* ------------------------------------------- */

	/* download icon: hide on mobile */
	.w3eden div.mr-3,
	.microsite .big-teaser div.mr-3, {
	  margin-right: 12px !important;
	}
	.w3eden img.wpdm_icon,
	.microsite .big-teaser img.wpdm_icon {
	  margin-right: 0;
	  margin-left: 0;
	  display: inherit;
	  max-width: 48px;
	}

	/* button: mobile only style */
	.wpdm-download-link.btn.btn-primary {
	  width: auto;
	}
	
	/* ------------------------------------------- */
	/*                   Site Popup                */
	/* ------------------------------------------- */

	.sp-footer { 
		display:flex; 
	}
	
	/* ------------------------------------------- */
	/*                   MICROSITES                */
	/* ------------------------------------------- */
	
	/* every element in row */
	.microsite .gallery-teaser .gallery :nth-child(2n+1 of dl.gallery-item),
	.microsite .gallery-teaser .gallery :nth-child(2n of dl.gallery-item) {
	  margin: 0 3.8% 30px 0 !important;
	}
	/* last element in row of 4 */
	.microsite .gallery-teaser .gallery :nth-child(4n of dl.gallery-item) {
	  margin: 0 0 30px 0 !important;
	}
	
	.microsite .gallery-teaser .gallery .gallery-item {
		width: 22.05% !important;
	}
	.microsite .gallery-teaser .gallery .gallery-item .gallery-caption {
		padding: 10px 20px 20px 20px;
	}
	.microsite .gallery-teaser .gallery .gallery-item .gallery-caption a.link-download {
	}
	.microsite .gallery-teaser .gallery .gallery-item .gallery-caption a.link-download:before {
		content: "\f019";
		font-family: "Font Awesome 5 Free";
		padding-right: 7px;
	}
	
    .microsite-header, 
	.microsite .content-head {
       margin-left: 0;
       margin-right: 0;
     }
	
	/* ------------------------------------------- */
	/*                 FREE SHIPPING               */
	/* ------------------------------------------- */


	/* header free shipping notice */
	header .free-shipping {
		position: initial;
		width: 220px;
		float: right;
		margin: 2px 30px 0 0;
		padding: 0px 0 0 80px;
		background: url(../images/icon_shipping.png) transparent no-repeat left 1px;
	    background-size: 67px;
		background-position-y: 3px;
		font-family: Delius, Arial, sans-serif;
		font-style: italic;
		text-align: left;
		color: inherit;
		font-size: 15px;
	}
	
	.site-content .free-shipping.country-US,
	header .free-shipping.country-US {
		background: url(../images/icon_shipping_US.png) no-repeat left 1px;
		background-size: 73px;
	}
  
	.site-content .free-shipping.country-CA,
	header .free-shipping.country-CA {
		background: url(../images/icon_shipping_CA.png) no-repeat left 1px;
		background-size: 73px;
	}
	
	.site-content .free-shipping a,
	header .free-shipping a {
		color: #ffffff;
		padding-left: 0;
		background: none;
	}
	
	.site-content .free-shipping a:before,
	header .free-shipping a:before {
		background-image: none;
	}
	
	.woocommerce .woocommerce-info.shipping-message .button,
	.shipping-message .button {
		display: initial;
	}
	/* ------------------------------------------- */
	/*                  WOOCOMMERCE                */
	/* ------------------------------------------- */
	
	/* product title on product detail page */
	.woocommerce div.product .product_title {
	  font-size: 1.750rem;
	  letter-spacing: 0;
	  line-height: 1.3em;
	}
	
	/* ------------------------------------------- */
	/*              COMPOSITE PRODUCTS             */
	/* ------------------------------------------- */
	
	body .wooco-wrap .wooco_components {
	  background: #ebf6fc;
	  padding: 20px;
	  border-radius: 10px;
	  margin: 15px 0;
	}
	/* lead time in components */
	/*
	.woocommerce .product .wooco_component_product_only .wclt_lead_time,
	.woocommerce .product .wooco_component_product_description .wclt_lead_time,
	.woocommerce .product .wooco_component_product_selection .wclt_lead_time {*/
	.woocommerce .product .wooco_component .wclt_lead_time {
		color: #6a5f54 !important;
		padding-left: 0 !important;
		padding-top: 0 !important;
		background-image: none;
		font-weight: normal !important;
		float: right;
	}
	/* stock in components */
	/*body.woocommerce div.product .wooco_component_product_only p.stock,
	body.woocommerce div.product .wooco_component_product_selection p.stock {*/
	.woocommerce .product .wooco_component p.stock {
		padding-top: 0.1em !important;
		background: url(../images/icon_shipping.png) no-repeat;
		background-size: 25px;
		background-position: left top 4px;
		padding-left: 30px !important;
		font-weight: normal;
	}
	/* link to each component */
	.wooco_component_product_link {
		display: inline-block;
	}
}

/* Minimum width of 768 pixels. */
@media screen and (min-width: 768px) {
	
	.meteor-slides .mslide img {
		border-bottom-left-radius: 0;
		border-bottom-right-radius: 0;
	}
	
	/* ------------------------------------------- */
	/*             PRODUCT DETAIL PAGE              */
	/* ------------------------------------------- */

	/* adjustments to product detail page */
	.woocommerce-tabs.wc-tabs-wrapper {
		background: url(/wp-content/themes/kullaloo/images/hr_beige_seam_with_background.png) 50% 0 repeat-x;
		padding-top: 50px;
		margin-top: 0px
	}

	.woocommerce-message {
			align-items: start;
			padding: 22px 22px 26px !important;
		}

	.woocommerce-message .kullaloo-added-to-cart-buttons {
		grid-column: 3;
		display: flex;
		margin-top: 0;
		margin-left: auto;
		align-self: center;
	}
	
	.woocommerce .woocommerce-message {
		display: grid;
		grid-template-columns: auto 1fr auto;
		gap: 8px;
		align-items: center;
		padding: 1em 4em 1em 2em !important;
	}

	.woocommerce .woocommerce-message::before {
		position: static !important;
		margin: 0 !important;
	}

	.woocommerce .kullaloo-added-to-cart {
		display: contents;
	}

	.woocommerce .kullaloo-added-message {
		grid-column: 2;
		padding-left: 0;
	}

	.woocommerce .kullaloo-added-actions {
		grid-column: 3;
		width: auto;
		margin-left: auto;
	}

	.woocommerce .kullaloo-added-actions .checkout-button {
		width: auto !important;
		height: auto  !important;
		padding: 0 30px !important;
	}
	/* close X */
	.woocommerce .close {
		position: absolute;
		top: 45%;
		right: 18px;
		transform: translateY(-50%);
		display: flex;
		align-items: center;
		justify-content: center;
		width: 32px;
		height: 32px;		
	}
	
	/* ------------------------------------------- */
	/*                    CART                     */
	/* ------------------------------------------- */
	
	/* ------------- general layout -------------- */
	
	/* desktop cart layout */
	.woocommerce-cart .woocommerce {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 0 32px;
		align-items: start;
	}
	/* cart form left column */
	.woocommerce-cart .woocommerce-cart-form {
		grid-column: 1;
	}
	
	/* ------------- left column -------------- */
	
	/* bigger product images */
	.woocommerce-cart table.cart td.product-thumbnail img {
	  width: 80px;
	  height: 80px;
	}
	.woocommerce-cart table.cart tr.cart_item {
		grid-template-columns: 90px 1fr auto auto;
	}
	/* make coupon stay under product list */
	.woocommerce-cart table.cart td.actions {
		width: 100%;
	}
	/* ------------- right column -------------- */
	
	/* totals right column */
	.woocommerce-cart .cart-collaterals {
		grid-column: 2;
		margin-top: 0;
	}
	.woocommerce-cart .cart-collaterals .cart_totals {
		width: 100% !important;
		float: none !important;
		margin: 0;
	}
	/* headline */
	.woocommerce .cart-collaterals div.cart_totals > h2,
	.woocommerce-page .cart-collaterals div.cart_totals > h2 {
		padding: 0;
	}
	/* remove Woo mobile labels inside cart totals (desktop) */
	.woocommerce-cart .cart_totals td::before {
		display: none !important;
		content: none !important;
	}

	/* cart totals spacing */
	.woocommerce-cart .cart-collaterals .cart_totals {
		padding: 30px;
	}
	/* ------------- coupon -------------- */
	
	/* desktop: coupon + total back into row layout */
	.woocommerce-cart .cart_totals .coupon-row,
	.woocommerce-cart .cart_totals .order-total,
	.woocommerce-cart .cart_totals .estimated-total {
		display: table-row;
		width: auto;
	}
	.woocommerce-cart .cart_totals .coupon-row td,
	.woocommerce-cart .cart_totals .order-total th,
	.woocommerce-cart .cart_totals .order-total td,
	.woocommerce-cart .cart_totals .estimated-total th,
	.woocommerce-cart .cart_totals .estimated-total td {
		display: table-cell;
		width: auto !important;
		text-align: inherit !important;
		margin: 0;
		padding: inherit;
	}
	.woocommerce-cart .cart_totals .order-total td,
	.woocommerce-cart .cart_totals .estimated-total td {
		text-align: right !important;
		margin-top: 0;
	}
	.woocommerce-cart .cart_totals .coupon-row {
		margin-bottom: 0;
	}
	.woocommerce-cart .cart_totals .coupon-row td {
		padding-bottom: inherit;
	}

	
	/* ------------------------------------------- */
	/*                   CHECKOUT                  */
	/* ------------------------------------------- */
	

	.woocommerce-checkout form.checkout {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		grid-template-areas:
		"notice notice"
		"express review"
		"customer review";
		column-gap: 40px;
		align-items: start;
	}
	/* error message full width */
	.woocommerce-checkout form.checkout .woocommerce-NoticeGroup-checkout {
		grid-column: 1 / -1 !important;
		grid-row: 1 !important;
		width: 100%;
	}
	.woocommerce-checkout form.checkout .woocommerce-NoticeGroup-checkout {
		grid-area: notice !important;
	}
	
	/* express checkout top LEFT */
	.woocommerce-checkout .wc-stripe-banner-checkout {
		grid-area: express !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		display: block !important;
		box-sizing: border-box;
	}

	/* billing + shipping below express */
	.woocommerce-checkout #customer_details {
		grid-area: customer !important;
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
		float: none !important;
	}

	/* order review right column */
	.woocommerce-checkout #order_review {
		grid-area: review !important;
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
		float: none !important;
		background: #f7f5f2;
		border-radius: 6px;
		margin: 0 !important;
		align-self: start;
	}
	/* make the whole right checkout box wrap table + payment */
	.woocommerce-checkout #order_review {
		overflow: hidden;
		background: #f7f5f2;
		border-radius: 6px;
	}
	.woocommerce .checkout table.shop_table {
		margin-bottom: 0;
	} 
	/* remove separate payment margin so it stays inside the wrapper */
	.woocommerce-checkout #payment {
		margin: 0 30px 30px 30px !important;
	}
	.woocommerce .checkout table.shop_table {
	  padding: 30px 30px 0 30px;
	  }
	/* hide headline */
	.woocommerce-checkout #order_review_heading {
		display: none !important;
	}

	/* remove Woo column weirdness */
	.woocommerce-checkout #customer_details .col2-set,
	.woocommerce-checkout #customer_details .col-1,
	.woocommerce-checkout #customer_details .col-2 {
		width: 100% !important;
		max-width: none !important;
		float: none !important;
	}

	/* express checkout buttons full width */
	.wc-stripe-banner-checkout fieldset,
	.wc_stripe_checkout_banner_gateways,
	.wc-stripe-checkout-banner-gateway {
		width: 100% !important;
		max-width: none !important;
		box-sizing: border-box;
	}
	
}

/* Minimum width of 1024 pixels. */
@media screen and (min-width: 1023px) {
	
	/* adjustments to product detail page */
	.woocommerce-tabs.wc-tabs-wrapper {
		padding-top: 84px;
		margin-top: 30px
	}

}
/* Max width of 1023 pixels. */
@media screen and (min-width: 425px) {
	
	/* ------------------------------------------- */
	/*                Download Manager             */
	/* ------------------------------------------- */
	
	.w3eden img.wpdm_icon,
	.microsite .big-teaser img.wpdm_icon {
	  display: inherit;
	}
}

/* Minimum width of 1024 pixels. */
@media screen and (min-width: 1160px) {
	
	/* micorsite intro */
	
	.microsite .intro img {
		margin-left: 0;
	}
	.microsite .intro > img {
		margin-left: 60px;
	}
	.microsite .intro .intro-text {
	    padding-top: 0;
	  }

}

@media only screen and (min-width: 75px) {
  .paypal-button-container {
    max-width: inherit;
  }
}