/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
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 */


/* Bebas Neue */
@font-face {
    font-family: 'Bebas Neue';
    src: url('fonts/bebas-neue/BebasNeue-Regular.woff2') format('woff2'),
         url('fonts/bebas-neue/BebasNeue-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/* Quicksand */
@font-face {
    font-family: 'Quicksand';
    src: url('fonts/quicksand/Quicksand-Regular.woff2') format('woff2'),
         url('fonts/quicksand/Quicksand-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/* Bonheur Royale */
@font-face {
    font-family: 'Bonheur Royale';
    src: url('fonts/bonheur-royale/BonheurRoyale-Regular.woff2') format('woff2'),
         url('fonts/bonheur-royale/BonheurRoyale-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}



/* ---------- Footer Newsletter MC4WP ---------- */

/* Container Vorname + Nachname */
.d-flex {
    display: flex;
    gap: 10px;
    flex-wrap: wrap; /* macht es mobil responsiv */
}

.d-flex input[type="text"] {
    flex: 1;
    padding: 8px 5px;
    border: none;
    border-bottom: 2px solid #ccc; /* nur Linie unten */
    border-radius: 0;
    background: transparent;
    font-size: 14px;
    outline: none;
    transition: border-color 0.3s;
}

.d-flex input[type="text"]:focus {
    border-bottom-color: #FF6600;
}

/* E-Mail-Feld mit Icon */
.full-width {
    width: 100%;
    padding: 8px 5px 8px 30px; /* Platz für Icon links */
    border: none;
    border-bottom: 2px solid #ccc;
    border-radius: 0;
    background: transparent;
    font-size: 14px;
    outline: none;
    margin-top: 10px;
    transition: border-color 0.3s;
    background-image: url('https://cdn-icons-png.flaticon.com/512/561/561127.png'); /* kleiner Brief-Icon */
    background-size: 18px 18px;
    background-repeat: no-repeat;
    background-position: 5px center;
}

.full-width:focus {
    border-bottom-color: #FF6600;
}

/* Submit-Button */
.mc-submit input[type="submit"] {
    margin-top: 10px;
    background-color: #FF6600;
    color: #fff;
    border: none;
    padding: 10px 20px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 14px;
    transition: background-color 0.3s;
}

.mc-submit input[type="submit"]:hover {
    background-color: #e65c00;
}

/* Responsive: Vorname/Nachname untereinander auf kleinen Bildschirmen */
@media (max-width: 480px) {
    .d-flex {
        flex-direction: column;
    }

    .d-flex input[type="text"] {
        margin: 5px 0;
    }
}

.speaker-modal-overlay {
    position: fixed;
    top:0; left:0;
    width:100%; height:100%;
    background: rgba(0,0,0,0.7);
    display:flex;
    justify-content:center;
    align-items:center;
    z-index: 9999;
}

.speaker-modal-box {
    background: #fff;
    padding:20px;
    max-width:500px;
    width:90%;
    border-radius:8px;
    position: relative;
}

.speaker-modal-close {
    position:absolute;
    top:10px; right:15px;
    font-size:24px;
    cursor:pointer;
}

.speaker-open-modal {
    position: relative;
    z-index:2; /* immer klickbar */
}


/* Product Addons */
/* Ecken abrunden: Bild */
.pewc-checkbox-image-wrapper.pewc-simple-child-product-wrapper > label img {
  border-radius: 12px;
}

/* Ecken abrunden: Mengenfeld */
.pewc-column-add-wrapper input[type="number"],
.pewc-column-add-wrapper .quantity {
  border-radius: 15px;
}
.pewc-column-add-wrapper {
  display: flex !important;
  align-items: center;
  gap: 10px;
  flex-wrap: nowrap;
}

.pewc-column-add-wrapper input[type="number"],
.pewc-column-add-wrapper .quantity {
  width: 70px;
  margin: 0;
  flex: 0 0 auto;
  border-radius: 8px;
  border: 1px solid #ddd;
  padding: 6px 10px;
}

.pewc-column-add-wrapper a,
.pewc-column-add-wrapper button {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #fff !important;
  font-weight: 600;
  line-height: 1.2;
  padding: 10px 16px;
}

.pewc-checkbox-desc-wrapper .pewc-column-excerpt ul {
  list-style-type: disc !important;
  list-style-position: outside !important;
  list-style-image: none !important;
  padding-left: 20px !important;
  margin: 0 0 10px !important;
}

.pewc-checkbox-desc-wrapper .pewc-column-excerpt ul li {
  display: list-item !important;
  list-style-type: disc !important;
  list-style-position: outside !important;
}

.pewc-column-add-wrapper a,
.pewc-column-add-wrapper button {
  font-family: 'Quicksand', sans-serif !important;
}



@media (max-width: 767px) {

  /* Bild-Wrapper komplett ausblenden */
  .pewc-checkbox-image-wrapper.pewc-simple-child-product-wrapper > label {
    display: none !important;
  }

  /* Beschreibungs-Block auf volle Breite, da das Bild wegfällt */
  .pewc-checkbox-image-wrapper.pewc-simple-child-product-wrapper {
    display: flex !important;
    flex-direction: column !important;
  }
  .pewc-checkbox-image-wrapper.pewc-simple-child-product-wrapper .pewc-checkbox-desc-wrapper {
    width: 100% !important;
  }

  /* Menge und Kauf-Button in einer Zeile */
  .pewc-column-add-wrapper {
    display: flex !important;
    align-items: center;
    gap: 10px;
    flex-wrap: nowrap;
  }

  .pewc-column-add-wrapper input[type="number"],
  .pewc-column-add-wrapper .quantity {
    width: 70px;
    margin: 0;
    flex: 0 0 auto;
  }

}

