/* 
Theme Name: marmato
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor child theme
Author: marmato GmbH
Author URI: https://marmato.com
Template: hello-elementor
Version: 1.0.1
Text Domain: marmato
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/

/* Allgemeine Formatierung */
.korrigiert .elementor-icon-wrapper {
	line-height: 0;
}

.elementor-menu-toggle {
	padding: 7px;
}

.elementor-widget-text-editor p:not(:last-of-type) {
  margin-bottom: 1rem;
} 

.elementor-widget-text-editor ul{
  padding-inline-start: 20px;
} 

.elementor-widget-text-editor li{
	margin-top: 5px;
	margin-bottom: 5px;
} 

.swiper-pagination-bullets {
	bottom: -15px!important;
} 

#pi-eqw-cart img{
	height:40px;
	width:40px;
}

#pi-eqw-cart {
    display: flex;
	justify-content:center;
	align-items:center;
	background-color: #ffcc00;
    width: 70px!important;
	position: fixed;
    z-index: 100000000;
	height:70px;
	border-radius:100px;
}

#pi-eqw-cart .pi-count {
	top: -2px;
	right: 10px;
	left: auto;
}

.country-selector {
position: inherit;
}

/* Preistabelle */
.elementor-price-table .elementor-price-table__price {
	display: none;
}


/* Produktseite */

.woocommerce .quantity .qty {
	width: 100px;
	height: 48px!important;
}

.recent-price-checks {
	margin-top: 20px;
	line-height: 1.5;
}

.recent-price-checks h4 {
	font-size: 1.25rem;
	font-weight: 600;
}

.pi-eqw-qty-container .pi-custom-button {
	margin-left: 20px!important;
}

.pisol-view-cart {
	margin-left:15px!important;
	text-decoration: underline!important;
}

[type=submit] {
	border:none;
}

@media (max-width: 768px) {
.pi-eqw-qty-container {
        flex-wrap: wrap;
    }
.pisol-view-cart {
	margin-left:0!important;
	}
.add-to-enquiry-single {
	width:230px!important;
	}
.woocommerce .quantity .qty {
	width: 90px;
}
.pi-eqw-qty-container .pi-custom-button {
	margin-left: 10px!important;
}
}

/* Warenkorb */
.woocommerce td.product-quantity {
    min-width: 90px;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.added::after {
	font-family: Arial, sans-serif!important;
    content: "\25CC"!important;
}

@media (max-width: 768px) {
    .enquiry-cart-content-table .woocommerce-cart-form__cart-item {
        display: flex;
        flex-wrap: nowrap;
    }
	    .enquiry-cart-content-table .woocommerce-cart-form__cart-item td.product-remove {
        width: 10%;
        text-align: left;
    }
	.enquiry-cart-content-table .woocommerce-cart-form__cart-item td.product-thumbnail {
        display:none;
    }
	.enquiry-cart-content-table .woocommerce-cart-form__cart-item td.product-name {
        width: 70%;
        text-align: left;
    }
	.enquiry-cart-content-table .woocommerce-cart-form__cart-item td.product-sku {
        display:none;
    }
	.enquiry-cart-content-table .woocommerce-cart-form__cart-item td.product-quantity{
        width: 20%;
        text-align: right;
    }
	.enquiry-cart-content-table .woocommerce-cart-form__cart-item td:not(.product-remove):not(.product-thumbnail):before {
        display: none;
    }
}

/* C7 Formular */

.jwp-form {
    width: 100%;
    margin: 0 auto;
}
.jwp-form-row {
    display: flex;
    flex-direction: column;
    width: 100%;
}
.jwp-form-row .wpcf7-form-control,
.wpcf7-form label {
    width: 100%;
}
.jwp-form-column {
    flex: 1;
    padding: 0.5rem 0;
    width: 100%;
}
.jwp-form-column:first-of-type {
    padding-left: 0;
}
.jwp-form-column:last-of-type {
    padding-right: 0;
}
 
/* CF7 Grid - Desktop Ansicht */
@media only screen and ( min-width: 48em ) { 
    .jwp-form-row {
        flex-direction: row;
    }
    .jwp-form-column {
        padding: 0.5rem 1rem;
    }
}

.wpcf7-form textarea { 
    width: 100% !important;
    height:120px;
}

/* Woocommerce */
.woocommerce-message {
    border-top-color: #004f9f;
}

.woocommerce-message::before {
    content: "\e015";
    color: #004f9f;
}

.woocommerce-error, .woocommerce-info, .woocommerce-message {
    padding: 1em 2em 1em 3.5em;
    margin: 0 0 2em;
    position: relative;
    background-color: #f3f3f3;
    color: #1d1d1b;
    border-top: 3px solid #43bfe8;
    list-style: none outside;
    width: auto;
    word-wrap: break-word;
}

.button.wc-forward {
	border-radius: 50px!important;
	background-color: #ffcc00!important;
	color: #1d1d1b!important;
	font-weight: 600!important;
	font-size: 1rem!important;
	text-transform: uppercase!important;
}

.woocommerce-checkout #payment {
	background: #f3f3f3;
}

button#place_order {
	border-radius: 50px!important;
	background-color: #004f9f!important;
	color: #ffffff!important;
	font-weight: 600!important;
	font-size: 1.125rem!important;
	text-transform: uppercase!important;
	padding: 15px 25px;
	border-width: 0 3px 3px 0;
	border-color: #43bfe8;
	border-style: solid;
}

.woocommerce-checkout #payment .payment_box::before {
	border: 1em solid #ffcc00!important;
	border-right-color: transparent!important;
    border-left-color: transparent!important;
    border-top-color: transparent!important;
}

.woocommerce-billing-fields__field-wrapper p {
	margin-bottom: 10px!important;
}

#billing_address_2 {
	display:none;
}

.woocommerce-checkout #payment .payment_box {
	background-color: #ffcc00!important;
	color: #1d1d1b!important;
}

@media (max-width: 768px) {
    .woocommerce table.shop_table_responsive tr td, .woocommerce-page table.shop_table_responsive tr td {
        display: block;
        text-align: right !important;
        width: 100%;
    }
}

/* Tabelle */
/* --- Basis: Desktop / große Screens --- */
table.eael-data-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 0.875rem; /* ~14px */
  background: #ffffff; /* Basis Hintergrund */
}

.eael-data-table th,
.eael-data-table td {
  padding: 0.75rem 0.875rem;
  border: 1px solid #e5e7eb;
  text-align: left;
  vertical-align: top;
  word-wrap: break-word;
  background: #ffffff; /* Standard Hintergrund */
}

.eael-data-table thead th {
  background: #f8fafc; /* Header-Farbe */
  font-weight: 600;
}

/* Zebra-Farben explizit für Zellen */
.eael-data-table tbody tr:nth-child(odd) td {
  background: #ffffff; /* Weiß */
}

.eael-data-table tbody tr:nth-child(even) td {
  background: #e7f3ff; /* Wunsch-Blau */
}

/* Hover-Effekt */
.eael-data-table tbody tr:hover td {
  background: #dbeafe; /* helleres Blau */
}

/* Mobile Labels standardmäßig ausblenden */
.th-mobile-screen {
  display: none;
}

.data-table-header-text {
  display: inline-block;
  line-height: 1.2;
}

/* --- Responsiv: Mobile Darstellung (bis 768px) --- */
@media (max-width: 768px) {
  .eael-data-table thead {
    display: none;
  }
	
	.eael-data-table {
		background: transparent!important;
	}

  .eael-data-table tbody tr {
    display: block;
    border: 1px solid #e5e7eb;
    border-radius: 0.5rem;
    margin: 0 0 0.75rem 0;
    overflow: hidden;
  }

  /* Jede Zeile wieder weiß als Grundfläche */
  .eael-data-table tbody tr td {
    display: block;
    border: 0;
    border-bottom: 1px solid #f1f5f9;
    padding: 0.625rem 0.75rem;
    background: #ffffff;
  }

  .eael-data-table td:last-child {
    border-bottom: 0;
  }

  .td-content-wrapper {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 0.25rem;
  }

  .th-mobile-screen {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    margin-bottom: 0.125rem;
  }

  .td-content {
    font-size: 0.875rem;
    color: #0f172a;
  }
}

/* --- Optional: Scroll-Wrapper --- */
.table-responsive {
  width: 100%;
  overflow-x: auto;
}

.tablesorter th {
  cursor: default;
}

/* Versteckt jedes LI, das direkt vor einem .dots steht 
.page-numbers li:has(+ li .dots) {
  display: none!important;
}
*/

/* Such Button */
.search-filter-input-button.search-filter-field__input {
  width: 42px;
  height: 42px;
  border: none;
  border-radius: 3px;
  background: #ffcc00;
  cursor: pointer;
  position: relative;
  padding: 0;

  /* Text verstecken */
  color: transparent;
  font-size: 0;
}

.search-filter-input-button.search-filter-field__input {
  position: relative;
  transition: background .25s ease, border-color .25s ease;
}

/* dein vorhandenes Icon bleibt wie es ist */
.search-filter-input-button.search-filter-field__input::before {
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 512 512'><path d='M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z'/></svg>");
}

/* HOVER: nur Hintergrund ändern – Icon bleibt gleich */
.search-filter-input-button.search-filter-field__input:hover {
  background: #43bfe8 !important;
  border-color: #43bfe8 !important;
}



/* Desktop: "Heading"-Einträge sind nicht klickbar, bleiben aber sichtbar */
@media (min-width: 1025px) {
  /* Variante A: gezielt über deine Klasse */
  .elementor-nav-menu--main .menu-item.menu-heading > a {
    pointer-events: auto;
    cursor: default;
  }
}