/* =========================================================
   GLOBAL
   ========================================================= */
p { letter-spacing: .5px; }

.widget_product_search .woocommerce-product-search {
    width: 180px;
}
/* =========================================================
   SLIDER (Startseite)
   ========================================================= */
/* feste Hero-Ratio, damit Höhe immer mit Breite mitskaliert */
.jh-overlay-fade.uk-slider-container .el-item {
  aspect-ratio: 1620 / 700;
}
/* wichtig: Bild/Clip füllt die Fläche */
.jh-overlay-fade.uk-slider-container .el-item picture,
.jh-overlay-fade.uk-slider-container .el-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.jh-overlay-fade.uk-slider-container .uk-slider-items > div {
  aspect-ratio: 1620 / 700;
}
/* Fade wird erst aktiv, wenn JS "bereit" signalisiert */
.jh-overlay-fade.jh-fade-ready .uk-slider-items {
  position: relative !important;
  transform: none !important;
  left: 0 !important;
  overflow: hidden;
}
/* nur im ready-zustand übereinander stapeln */
.jh-overlay-fade.jh-fade-ready .uk-slider-items > div {
  position: absolute !important;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity 800ms ease-in-out;
}
/* aktives Slide */
.jh-overlay-fade.jh-fade-ready .uk-slider-items > div.jh-active {
  opacity: 1;
  pointer-events: auto;
}
@media (prefers-reduced-motion: reduce) {
  .jh-overlay-fade.jh-fade-ready .uk-slider-items > div { transition: none; }
}
.uk-slider-items .el-title,
.uk-slider-items .el-link {
	margin-left: 0px;
	text-transform: uppercase;
	text-shadow: 0 1px 2px rgba(0,0,0,0.45), 0 3px 8px rgba(0,0,0,0.25);
}
/* =========================================================
   PRODUCT GRID (Loop cards)
   ========================================================= */

ul.products>* .woocommerce-loop-product__link {
	background: #eee;
}
/* Card base */
.woocommerce ul.products li.product {
    position: relative;
    display: flex;
    flex-direction: column;
/* Hover nur auf sichtbaren Inhalt, nicht auf li-Padding */
    pointer-events: none;
}
.woocommerce ul.products li.product > * {
    pointer-events: auto;
}
/* Image zoom (Inhalt zoomt, Rahmen bleibt fix) */
.woocommerce ul.products li.product .dn-product-image{
    display: block;
    overflow: hidden;
}
.woocommerce ul.products li.product .dn-product-image img{
    display: block;
    width: 100%;
    height: auto;
    transition: transform .35s ease;
}
.woocommerce ul.products li.product:hover .dn-product-image img{
    transform: scale(1.05);
}
/* Badge */
.woocommerce ul.products li.product .dn-product-badge {
    position: absolute;
    z-index: 50;
    top: 12px;
    left: 50px;
    background: #fff;
    color: #232323;
    border-radius: 1px;
    padding: 0 13px;
    font-size: 11px;
    font-weight: 600;
    line-height: 22px;
    text-transform: uppercase;
    letter-spacing: .5px;
    box-shadow: 2px 2px 0 rgba(0, 0, 0, .05);
}
/* Headline row: title left, price right */
.dn-product-headline {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 12px;
    margin: 15px 0 6px 0;
}
.dn-product-headline .woocommerce-loop-product__title {
    margin: 0;
    min-height: 2.6em; /* Platz für bis zu ~2 Zeilen */
}
.dn-product-headline .dn-product-price {
    font-size: 14px;
    color: #232323;
    font-weight: 500;
    white-space: nowrap;
    font-family: 'Poppins';
}
/* Categories (KEIN margin!) */
.dn-product-categories{
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    letter-spacing: .3px;
    line-height: 1.2;
    white-space: normal;

    /* stabiler Slot für Swap */
    min-height: 60px;
}
/* =========================================================
   LOOP: Hover swap Categories -> Add-to-cart button (stable)
   ========================================================= */

/* Default: hide add-to-cart in loop */
.woocommerce ul.products li.product a.button.add_to_cart_button,
.woocommerce ul.products li.product a.button.ajax_add_to_cart {
    display: none !important;
}
/* Hover/Fokus: categories off, button on */
.woocommerce ul.products li.product:hover .dn-product-categories,
.woocommerce ul.products li.product:focus-within .dn-product-categories {
    display: none;
}
.woocommerce ul.products li.product:hover a.button.add_to_cart_button,
.woocommerce ul.products li.product:hover a.button.ajax_add_to_cart,
.woocommerce ul.products li.product:focus-within a.button.add_to_cart_button,
.woocommerce ul.products li.product:focus-within a.button.ajax_add_to_cart {
    display: inline-flex !important;
}
/* Loop button: takes the exact same slot as categories */
.woocommerce ul.products li.product a.add_to_cart_button,
.woocommerce ul.products li.product a.ajax_add_to_cart {
    display: inline-flex;
    align-items: flex-start;   /* <<< WICHTIG: oben, nicht mittig */
    gap: 8px;
    color: #232323;
    background: none !important;
    min-height: 60px;          /* Slot bleibt stabil */
    line-height: 21px;         /* <<< entspricht 1. Zeile */
    margin: 0 !important;
}
/* Hover: bündig links */
.woocommerce ul.products li.product:hover a.add_to_cart_button,
.woocommerce ul.products li.product:hover a.ajax_add_to_cart,
.woocommerce ul.products li.product:focus-within a.add_to_cart_button,
.woocommerce ul.products li.product:focus-within a.ajax_add_to_cart {
    padding-left: 0 !important;
}
/* Controlled icon */
.woocommerce ul.products li.product a.add_to_cart_button::before,
.woocommerce ul.products li.product a.ajax_add_to_cart::before {
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    background: url(/wp-content/uploads/2025/12/icon-m-cart.svg) no-repeat center;
    background-size: contain;
}
/* =========================================================
   YITH Wishlist Button auf Produktbildern im Produkt-Grid
   ========================================================= */

.woocommerce ul.products li.product .dn-wishlist-btn {
    position: absolute;
    top: 0px;
    right: 1px;
    z-index: 5;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}
.woocommerce ul.products li.product:hover .dn-wishlist-btn,
.woocommerce ul.products li.product:focus-within .dn-wishlist-btn {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}
/* Weiße Icon-Kachel – React Components (neue YITH Ausgabe) */
.woocommerce ul.products li.product .dn-wishlist-btn 
.yith-add-to-wishlist-button-block a.yith-wcwl-add-to-wishlist-button svg {
    background: #fff;
    padding: 6px;
    box-shadow: 2px 2px 0 rgba(0, 0, 0, .05);
    color: #232323 !important;
    margin: 0;
    height: auto;
    width: 35px !important;
}
/* Seite Wunschliste – Anpassung Spaltenbreite */
.woocommerce table.cart td.product-name {
    width: 250px;
}
/* =========================================================
   YITH AJAX-Filter Reset-Button
   ========================================================= */

.yith-wcan-reset-filters {
	box-shadow: 0 0 0 1px #D7D7D7;
    border-radius: 4px;
    display: inline-block;
    padding: 7px;
    text-align: center;
	border: 1px;
	color: #434343;
	font-size: 0.8rem;
	background: #fff;
	line-height: 2;
	letter-spacing: 0.3px;
}
.yith-wcan-reset-filters:hover {
	background: #A7144C;
	color: #fff;
}
.yith-wcan-filters .yith-wcan-filter {
    margin: 0 0 2px 2px;
}
/* =========================================================
   PRODUCT SINGLE (Add-to-cart block + wishlist + qty)
   ========================================================= */
.tm-element-woo-add-to-cart {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}
.tm-element-woo-add-to-cart > form.cart {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
}
.tm-element-woo-add-to-cart .single_add_to_cart_button {
    background-color: #9c968b;
    color: #fff;
    height: 50px;
    line-height: 50px;
    padding: 0 38px 0;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    width: auto !important;
    flex: 0 0 auto;
    text-transform: uppercase;
}
.button.alt:hover {
    background-color: #b0aba1;
    color: #fff;
}
.tm-element-woo-add-to-cart .quantity.buttons_added input.plus,
.tm-element-woo-add-to-cart .quantity.buttons_added input.minus {
    display: none !important;
}
.tm-element-woo-add-to-cart .quantity.buttons_added {
    display: inline-flex !important;
    align-items: center;
}
.tm-element-woo-add-to-cart .quantity.buttons_added .qty {
    height: 50px !important;
    line-height: 50px !important;
    width: 90px !important;
    padding: 0 12px !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 10px !important;
    text-align: center !important;
    background: #fff !important;
}
.tm-element-woo-add-to-cart > .yith-add-to-wishlist-button-block {
    margin: 0 !important;
    display: flex;
    align-items: center;
}
.single-product svg#yith-wcwl-icon-heart-outline {
    color: #9c968b !important;
    margin-left: 10px;
}
.single-product .yith-wcwl-add-to-wishlist-button .yith-wcwl-icon {
	width: 40px !important;
    height: 40px !important;
    max-width: none !important;
}
.yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--themed-button).yith-wcwl-add-to-wishlist-button--added svg.yith-wcwl-add-to-wishlist-button-icon {
    color: #9c968b;
	margin-left: 10px;
}
.tm-element-woo-add-to-cart input.qty::-webkit-outer-spin-button,
.tm-element-woo-add-to-cart input.qty::-webkit-inner-spin-button {
    -webkit-appearance: auto !important;
    margin: 0;
}
.tm-element-woo-add-to-cart input.qty {
    -moz-appearance: auto !important;
    appearance: auto !important;
}
h1.product_title {
    margin-bottom: 7px;
    color: #333;
    font-weight: 600;
    font-size: 28px;
}
.woocommerce-product-gallery .woocommerce-product-gallery__wrapper {
	background: #eee;
}
.cartPPC .ppc-button-wrapper {
    display: none !important;
}
/* =========================================================
   PRODUCT GALLERY (Single): thumbs 1 row + horizontal scroll
   ========================================================= */

.woocommerce div.product .flex-control-thumbs {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    gap: 12px;
    padding-bottom: 10px;
    scroll-behavior: smooth;
    margin: 10px 0 0 0;
}
.woocommerce div.product .flex-control-thumbs li {
    flex: 0 0 auto;
    width: 90px;
    padding: 0;
}
/* Scrollbar */
.woocommerce div.product .flex-control-thumbs::-webkit-scrollbar { height: 6px; }
.woocommerce div.product .flex-control-thumbs::-webkit-scrollbar-thumb {
    background: rgba(0,0,0,.2);
    border-radius: 3px;
}
/* =========================================================
   Mengenangabe im Warenkorb am Icon im Header
   ========================================================= */

/* Cart-Icon als Bezugspunkt */
.cartTrigger {
    position: relative;
}
/* Counter-Badge */
.cartCounter {
    position: absolute;
    top: 25px;
	right: 51px;
    /*right: 85px;*/
    min-width: 18px;
    height: 18px;
    background: #000;
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    line-height: 16px;
    text-align: center;
    border-radius: 999px;
    box-sizing: border-box;
}
/* CartCounter ausblenden, wenn leer */
.cartCounter[data-count="0"] {
    display: none;
}

/* =========================================================
   Anpassungen an Warenkorb-Seite
   ========================================================= */

body.woocommerce-cart .tm-element-woo-pages{
    font-family: 'Poppins', sans-serif !important;
}
a.remove {
    font-size: 2em;
}
.woocommerce .quantity input.qty,
.woocommerce-page .quantity input.qty {
    border: none;
    border-bottom: 1px solid #121314;
}
.woocommerce .quantity .minus, .woocommerce-page .quantity .minus,
.woocommerce .quantity .plus, .woocommerce-page .quantity .plus {
    display: none;
}
.shop_table .quantity {
    min-width: 1px;
}
.woocommerce table.shop_table thead th,
.woocommerce table.shop_table td.product-name a,
.woocommerce table.shop_table .product-price,
.woocommerce table.shop_table .product-subtotal,
.woocommerce .quantity input.qty, .woocommerce-page .quantity input.qty {
    font-weight: 500;
    color: #232323;
    font-family: 'Poppins', sans-serif !important;
    letter-spacing: 0;
    text-transform: uppercase;
}
.wgm-tax {
    text-transform: none;
    color: #777;
}
.product-total .amount, .product-subtotal .amount {
    font-weight: 500;
}
.cart_totals h2 {
    font-size: 14px;
    padding-top: 18px;
    font-weight: 500;
    color: #232323;
	text-transform: uppercase;
}
/* =========================================================
   CONTACT FORM (CF7)
   ========================================================= */
.wpcf7-form select,
.wpcf7-form input {
    font-weight: 600;
    font-size: 13px;
    padding: 5px 15px 0;
    line-height: 36px;
    width: 95%;
    height: 45px;
    border: 1px solid #e8e8e8;
}
.wpcf7-form textarea {
    font-family: 'Poppins';
    font-weight: 600;
    font-size: 13px;
    padding: 15px;
    width: 95%;
    height: 174px;
    line-height: normal;
    margin-bottom: 4px;
    color: #999;
    letter-spacing: .2px;
    border: 1px solid #e8e8e8;
}
.wpcf7-form label {
    float: left;
    width: 46%;
    margin: 0;
}
.wpcf7-form label:first-child { margin-right: 5%; }

.wpcf7-form p { padding-bottom: 24px; }
.wpcf7-form p:after {
    display: table;
    clear: both;
    width: 100%;
    content: '';
}
.wpcf7-form .wpcf7-acceptance,
.wpcf7-form .wpcf7-radio input,
.wpcf7-form .wpcf7-checkbox input {
    width: auto;
    display: inline-block;
    vertical-align: middle;
    margin: 0;
    line-height: normal;
    height: inherit;
}
div.wpcf7 input[type="file"] { padding: 0; }

.wpcf7-form input[type="submit"] {
    height: 50px;
    line-height: 50px;
    padding: 0 38px 0;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    width: auto;
    text-transform: uppercase;
}
@media (min-width: 1020px) and (max-width: 1120px) {
    .uk-navbar-left, .uk-navbar-right, [class*=uk-navbar-center], .uk-navbar-nav {
        gap: 25px;
    }
}
