/*
Theme Name: Remberti Theme
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Remberti Theme based on Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Marc Probst
Author URI: https://marcprobst.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-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* ================================================
   Meta-Menue Icons - lokal als SVG Data URI
   Keine externen Aufrufe, DSGVO-konform.

   Klassen werden im WP-Menue-Editor vergeben:
     .meta-leichte-sprache
     .meta-newsletter
     .meta-formulare
     .meta-kontakt

   Elementor nutzt .elementor-item::before fuer
   Hover-Effekte (position:absolute; opacity:0).
   Wir ueberschreiben mit opacity:1 !important.
   ================================================ */

/* Gemeinsame Basis aller Meta-Menue-Icons */
li.meta-leichte-sprache > a.elementor-item::before,
li.meta-newsletter > a.elementor-item::before,
li.meta-formulare > a.elementor-item::before,
li.meta-kontakt > a.elementor-item::before {
    content: '' !important;
    display: inline-block !important;
    position: relative !important;
    opacity: 1 !important;
    top: auto !important;
    left: auto !important;
    bottom: auto !important;
    width: 14px !important;
    height: 14px !important;
    -webkit-mask-size: contain !important;
    mask-size: contain !important;
    -webkit-mask-repeat: no-repeat !important;
    mask-repeat: no-repeat !important;
    -webkit-mask-position: center !important;
    mask-position: center !important;
    background-color: currentColor !important;
    vertical-align: middle !important;
    margin-right: 5px !important;
    transition: none !important;
}

/* Leichte Sprache - Accessibility Icon */
li.meta-leichte-sprache > a.elementor-item::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm9 7h-6v13h-2v-6h-2v6H9V9H3V7h18v2z'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm9 7h-6v13h-2v-6h-2v6H9V9H3V7h18v2z'/%3E%3C/svg%3E") !important;
}

/* Newsletter - Mail Icon + fett */
li.meta-newsletter > a.elementor-item {
    font-weight: bold !important;
}
li.meta-newsletter > a.elementor-item::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z'/%3E%3C/svg%3E") !important;
}

/* Formulare - Document Icon + fett */
li.meta-formulare > a.elementor-item {
    font-weight: bold !important;
}
li.meta-formulare > a.elementor-item::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z'/%3E%3C/svg%3E") !important;
}

/* Kontakt - Contact Mail Icon + fett */
li.meta-kontakt > a.elementor-item {
    font-weight: bold !important;
}
li.meta-kontakt > a.elementor-item::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21 8V7l-3 2-3-2v1l3 2 3-2zm1-5H2C.9 3 0 3.9 0 5v14c0 1.1.9 2 2 2h20c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM8 6c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm6 12H2v-1c0-2 4-3.1 6-3.1s6 1.1 6 3.1v1zm8-6h-8V6h8v6z'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21 8V7l-3 2-3-2v1l3 2 3-2zm1-5H2C.9 3 0 3.9 0 5v14c0 1.1.9 2 2 2h20c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM8 6c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm6 12H2v-1c0-2 4-3.1 6-3.1s6 1.1 6 3.1v1zm8-6h-8V6h8v6z'/%3E%3C/svg%3E") !important;
}





/* ============================================
   Suchfeld: Nur Icon sichtbar, Slide-In via JS-Toggle
   ============================================ */

/* Form: overflow:hidden fuer Animation */
.elementor-element-da57a5a .e-search-form {
  overflow: hidden !important;
  display: flex !important;
  align-items: stretch !important;
  flex-wrap: nowrap !important;
}

/* Label (Icon): feste Breite, immer sichtbar */
.elementor-element-da57a5a .e-search-label {
  flex: 0 0 auto !important;
  min-width: 38px !important;
  width: 38px !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
}

/* Input-Wrapper + Submit: standardmaessig versteckt */
.elementor-element-da57a5a .e-search-input-wrapper {
  flex: 0 0 auto !important;
  max-width: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: max-width 0.35s ease, opacity 0.2s ease !important;
}
.elementor-element-da57a5a .e-search-submit {
  flex: 0 0 auto !important;
  max-width: 0 !important;
  min-width: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  pointer-events: none !important;
  transition: max-width 0.35s ease, opacity 0.2s ease 0.1s, padding 0.35s ease !important;
}

/* Ausgeklappt (via JS: Klasse .search-open auf dem Widget) */
.elementor-element-da57a5a.search-open .e-search-input-wrapper {
  max-width: 220px !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}
.elementor-element-da57a5a.search-open .e-search-submit {
  max-width: 100px !important;
  opacity: 1 !important;
  padding-left: 1em !important;
  padding-right: 1em !important;
  pointer-events: auto !important;
}

/* ============================================
   Nav-CTA Button
   ============================================ */

/* Button-Stil: identisch mit .elementor-button auf der Buehne */
li.nav-cta > a.elementor-item {
  background-color: #9C1006 !important;
  color: #fff !important;
  border-radius: 0 !important;
  padding: 14px 24px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  border: none !important;
  box-shadow: none !important;
  line-height: 15px !important;
  display: inline-block !important;
  transition: background-color 0.2s ease !important;
}

/* Hover: etwas dunkler */
li.nav-cta > a.elementor-item:hover {
  background-color: #7a0c04 !important;
  color: #fff !important;
}

/* Kein Unterstrich-Hover-Effekt */
li.nav-cta > a.elementor-item::after {
  display: none !important;
}