.elementor-2020101 .elementor-element.elementor-element-370a3ede > .elementor-element-populated{padding:10px 0px 0px 0px;}@media(max-width:1024px) and (min-width:768px){.elementor-2020101 .elementor-element.elementor-element-370a3ede{width:100%;}}/* Start custom CSS for html, class: .elementor-element-66ecebac *//* --- DVT HERO SECTION - MOBILE OPTIMIZED 2026 --- */

.dvt-hero-section {
  position: relative !important;
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  min-height: 500px !important;
  height: 70vh !important; /* Etwas mehr Höhe für Mobile Content */
  max-height: 800px !important;
  background-image: url('/img/cms/home-2026/hero.jpg') !important; 
  background-size: cover !important;
  background-position: center right !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden !important;
  font-family: 'Open Sans', Arial, sans-serif !important;
}

/* INTELLIGENTES OVERLAY */
.dvt-hero-overlay-mask {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  /* Desktop: Verlauf von Links nach Rechts | Mobile: Verlauf von Unten nach Oben */
  background: linear-gradient(90deg, rgba(255,255,255,0.95) 30%, rgba(255,255,255,0.6) 60%, rgba(255,255,255,0) 100%) !important;
  z-index: 1 !important;
}

.dvt-hero-wrapper {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 25px !important;
}

.dvt-hero-content-box {
  max-width: 550px !important;
}

.dvt-hero-title {
  font-size: clamp(1.8rem, 5vw, 2.8rem) !important; /* Fluid Typography */
  color: #1a1a1a !important;
  line-height: 1.2 !important;
  margin: 15px 0 !important;
  font-weight: 800 !important;
}

.dvt-hero-text {
  font-size: 1.05rem !important;
  color: #444 !important;
  margin-bottom: 30px !important;
  line-height: 1.5 !important;
}

/* BUTTONS */
.dvt-hero-cta-group {
  display: flex !important;
  gap: 12px !important;
  margin-bottom: 35px !important;
  flex-wrap: wrap !important;
}

.dvt-btn-accent, .dvt-btn-ghost {
  padding: 14px 24px !important;
  border-radius: 6px !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  text-align: center !important;
  flex: 1 1 auto !important; /* Erlaubt Buttons zu wachsen */
  min-width: 200px !important;
}

/* USPs */
.dvt-hero-usp-list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px 20px !important;
  font-size: 0.85rem !important;
  color: #0f6a7a !important;
  font-weight: 600 !important;
}

/* --- RESPONSIVE FIXES --- */
@media (max-width: 768px) {
  .dvt-hero-section {
    height: auto !important;
    min-height: 100vh !important; /* Volle Höhe auf Mobile für besseren Impact */
    background-position: 70% center !important;
    padding-top: 80px !important; /* Platz für Header */
    padding-bottom: 60px !important;
  }

  .dvt-hero-overlay-mask {
    /* Auf Mobile machen wir den Hintergrund heller, da das Bild hinter dem Text liegt */
    background: linear-gradient(180deg, rgba(255,255,255,0.7) 0%, rgba(255,255,255,0.95) 50%, rgba(255,255,255,1) 100%) !important;
  }

  .dvt-hero-content-box {
    max-width: 100% !important;
    text-align: center !important;
  }

  .dvt-hero-cta-group {
    flex-direction: column !important;
  }

  .dvt-btn-accent, .dvt-btn-ghost {
    width: 100% !important;
  }

  .dvt-hero-usp-list {
    justify-content: center !important;
  }

  .dvt-scroll-hint {
    display: none !important;
  }
}
/* --- BUTTONS - OPTISCH GEERDET & KONSISTENT --- */
.dvt-hero-cta-group {
  display: flex !important;
  gap: 15px !important;
  margin-bottom: 25px !important;
  align-items: flex-start !important; /* Verhindert das Verzerren der Höhe */
}

/* Gemeinsame Basis für beide Buttons */
.dvt-btn-accent, .dvt-btn-ghost {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 54px !important; /* Feste, identische Höhe */
  padding: 0 30px !important;
  border-radius: 6px !important;
  text-decoration: none !important;
  font-weight: 800 !important;
  font-size: 1rem !important;
  transition: all 0.2s ease-in-out !important;
  box-sizing: border-box !important;
  white-space: nowrap !important;
}

/* Der Primäre Button (Gelb) */
.dvt-btn-accent {
  background: #ffd800 !important;
  color: #000000 !important;
  box-shadow: 0 4px 0px #d4b500 !important;
  border: none !important;
}

.dvt-btn-accent:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 0px #d4b500 !important;
  background: #ffdf20 !important;
}

/* Der Sekundäre Button (Ghost) - Jetzt "geerdet" */
.dvt-btn-ghost {
  background: rgba(15, 106, 122, 0.05) !important; /* Ganz leichter Petrol-Hauch */
  color: #0f6a7a !important;
  border: 2px solid #0f6a7a !important;
  box-shadow: 0 4px 0px transparent !important; /* Platzhalter für Schatten-Ausgleich */
}

.dvt-btn-ghost:hover {
  background: #0f6a7a !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 12px rgba(15, 106, 122, 0.2) !important;
}

/* --- MOBILE FIX FÜR DIE BUTTONS --- */
@media (max-width: 768px) {
  .dvt-hero-cta-group {
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
  }

  .dvt-btn-accent, .dvt-btn-ghost {
    width: 100% !important; /* Volle Breite für Daumen-Bedienung */
    height: 50px !important;
    font-size: 0.95rem !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2820ba8a *//* --- DVT CATEGORY SECTION - FINAL COMPOSITE --- */

.dvt-cat-section {
  position: relative !important;
  padding: 60px 0 !important; 
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  background-image: url('https://www.domovitra.de/img/cms/home-neu/hero-2.jpg') !important; 
  background-size: cover !important;
  background-position: center !important;
  background-attachment: fixed !important;
  overflow: hidden !important;
  font-family: 'Open Sans', Arial, sans-serif !important;
}

/* Milchglas-Effekt Overlay */
.dvt-cat-section::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important;
  width: 100% !important; height: 100% !important;
  background: rgba(255, 255, 255, 0.78) !important;
  backdrop-filter: blur(8px) !important; 
  -webkit-backdrop-filter: blur(8px) !important;
  z-index: 1 !important;
}

.dvt-cat-container {
  position: relative !important;
  z-index: 2 !important;
  max-width: 1300px !important;
  margin: 0 auto !important;
  padding: 0 30px !important;
}

.dvt-cat-main-title {
  text-align: center !important;
  color: #1a1a1a !important;
  font-size: 2rem !important;
  margin-bottom: 40px !important;
  font-weight: 800 !important;
}

/* Das Grid (Desktop) */
.dvt-cat-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
}

/* Einzelne Karte */
.dvt-cat-card {
  background: #ffffff !important;
  box-shadow: 0 8px 25px rgba(0,0,0,0.06) !important;
  border-radius: 12px !important;
  padding: 25px 15px !important;
  text-align: center !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  border: 1px solid transparent !important;
}

/* Bild-Container statt Icon-Box */
.dvt-cat-image-box {
  width: 120px !important;
  height: 120px !important;
  margin-bottom: 15px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.dvt-cat-image-box img {
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  transition: transform 0.4s ease !important;
}

.dvt-cat-card-title {
  color: #0f6a7a !important; /* Dein Petrol */
  font-size: 1.1rem !important;
  margin: 0 0 5px 0 !important;
  font-weight: 700 !important;
}

.dvt-cat-card-sub {
  color: #777 !important;
  font-size: 0.85rem !important;
  font-weight: 400 !important;
}

/* Hover-Effekte (Desktop) */
.dvt-cat-card:hover {
  box-shadow: inset 0 0 0 2px #ffd800, 0 15px 35px rgba(15, 106, 122, 0.15) !important;
  transform: translateY(-8px) !important;
}

.dvt-cat-card:hover .dvt-cat-image-box img {
  transform: scale(1.1) !important;
}

/* --- MOBILE OPTIMIERUNG --- */
@media (max-width: 992px) {
  .dvt-cat-section { padding: 40px 0 !important; }
  
  .dvt-cat-grid {
    display: flex !important;
    overflow-x: auto !important;
    gap: 15px !important;
    padding: 10px 5px 30px 5px !important; 
    scrollbar-width: none !important; 
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
  }
  
  .dvt-cat-grid::-webkit-scrollbar { display: none !important; }

  .dvt-cat-card {
    flex: 0 0 240px !important;
    scroll-snap-align: center !important;
  }

  /* Pfeil-Indikator (Konsistent mit USP-Bar) */
  .dvt-cat-mobile-arrow {
    display: flex !important;
    position: absolute !important;
    right: 15px !important;
    top: 55% !important;
    transform: translateY(-50%) !important;
    width: 24px !important;
    height: 24px !important;
    background: rgba(255,255,255,0.95) !important;
    border-radius: 50% !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f6a7a' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'%3E%3C/polyline%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 14px !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1) !important;
    z-index: 10 !important;
    animation: dvt-cat-arrow-pulse 2s infinite !important;
  }

  @keyframes dvt-cat-arrow-pulse {
    0% { transform: translateY(-50%) translateX(0); opacity: 0.6; }
    50% { transform: translateY(-50%) translateX(5px); opacity: 1; }
    100% { transform: translateY(-50%) translateX(0); opacity: 0.6; }
  }
}
/* --- DVT CATEGORY SECTION - OVERLAY STYLE --- */

.dvt-cat-card {
  background: #ffffff !important;
  box-shadow: 0 8px 25px rgba(0,0,0,0.06) !important;
  border-radius: 12px !important;
  padding: 0 !important; /* Padding entfernt für mehr Bildfläche */
  text-decoration: none !important;
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
  display: flex !important;
  flex-direction: column !important;
  position: relative !important;
  overflow: hidden !important;
  height: 280px !important; /* Feste Höhe für ein ruhiges Grid */
}

/* Bild nimmt fast den ganzen Raum ein */
.dvt-cat-image-box {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px 20px 60px 20px !important; /* Platz unten für Text lassen */
}

.dvt-cat-image-box img {
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  transition: transform 0.6s ease !important;
}

/* Text-Overlay am unteren Rand */
.dvt-cat-overlay-info {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  padding: 15px !important;
  background: rgba(255, 255, 255, 0.85) !important;
  backdrop-filter: blur(5px) !important;
  -webkit-backdrop-filter: blur(5px) !important;
  border-top: 1px solid rgba(15, 106, 122, 0.1) !important;
  text-align: center !important;
  transition: all 0.3s ease !important;
}

.dvt-cat-card-title {
  color: #0f6a7a !important;
  font-size: 1.05rem !important;
  margin: 0 !important;
  font-weight: 700 !important;
}

.dvt-cat-card-sub {
  color: #777 !important;
  font-size: 0.75rem !important;
  font-weight: 400 !important;
  display: block !important;
}

/* --- HOVER EFFEKTE --- */
.dvt-cat-card:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 20px 40px rgba(15, 106, 122, 0.15) !important;
}

.dvt-cat-card:hover .dvt-cat-image-box img {
  transform: scale(1.1) rotate(2deg) !important; /* Leichte Dynamik */
}

.dvt-cat-card:hover .dvt-cat-overlay-info {
  background: #0f6a7a !important; /* Wechselt auf Petrol */
}

.dvt-cat-card:hover .dvt-cat-card-title,
.dvt-cat-card:hover .dvt-cat-card-sub {
  color: #ffffff !important; /* Text wird weiß beim Hover */
}

/* --- MOBILE ANPASSUNG --- */
@media (max-width: 992px) {
  .dvt-cat-card {
    flex: 0 0 260px !important;
    height: 300px !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1ba943a0 *//* --- DVT USP BAR V2 - SCROLLABLE MOBILE --- */
.dvt-usp-bar-v2 {
  background-color: #ffffff !important;
  border-top: 1px solid #eef2f5 !important;
  border-bottom: 1px solid #eef2f5 !important;
  padding: 15px 0 !important;
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  overflow: hidden !important;
  position: relative !important;
  z-index: 5 !important;
}

.dvt-usp-container-v2 {
  max-width: 1300px !important;
  margin: 0 auto !important;
  position: relative !important;
  padding: 0 30px !important;
}

.dvt-usp-scroll-area {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
}

.dvt-usp-item-v2 {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-shrink: 0 !important;
}

.dvt-usp-icon-v2 {
  width: 20px !important;
  height: 20px !important;
  color: #0f6a7a !important; /* Petrol */
  display: flex !important;
}

.dvt-usp-icon-v2 svg {
  width: 100% !important;
  height: 100% !important;
}

.dvt-usp-text-v2 {
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  white-space: nowrap !important;
}

/* Pfeil standardmäßig ausblenden */
.dvt-usp-mobile-arrow {
  display: none !important;
}

/* --- MOBILE OPTIMIERUNG (Wischen + Pfeil) --- */
@media (max-width: 992px) {
  .dvt-usp-scroll-area {
    overflow-x: auto !important;
    justify-content: flex-start !important;
    gap: 30px !important;
    padding-right: 50px !important; /* Platz für den Pfeil */
    /* Scrollbar verstecken */
    -ms-overflow-style: none;  
    scrollbar-width: none; 
  }
  
  .dvt-usp-scroll-area::-webkit-scrollbar {
    display: none !important;
  }

  .dvt-usp-mobile-arrow {
    display: flex !important;
    position: absolute !important;
    right: 15px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 24px !important;
    height: 24px !important;
    background: rgba(255,255,255,0.9) !important;
    color: #0f6a7a !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    pointer-events: none !important; /* Klicks gehen durch den Pfeil durch */
    animation: dvt-arrow-pulse 2s infinite !important;
  }

  @keyframes dvt-arrow-pulse {
    0% { transform: translateY(-50%) translateX(0); opacity: 0.6; }
    50% { transform: translateY(-50%) translateX(5px); opacity: 1; }
    100% { transform: translateY(-50%) translateX(0); opacity: 0.6; }
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-45253d38 *//* --- DVT PLAN HUB - FINAL VERSION --- */
.dvt-plan-hub {
  padding: 80px 0 !important;
  background-color: #f8fafb !important;
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  font-family: 'Open Sans', Arial, sans-serif !important;
}

.dvt-plan-container {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
}

.dvt-plan-main-title {
  text-align: center !important;
  color: #1a1a1a !important;
  font-size: 2.2rem !important;
  font-weight: 800 !important;
  margin-bottom: 10px !important;
}

.dvt-plan-intro {
  text-align: center !important;
  color: #555 !important;
  max-width: 700px !important;
  margin: 0 auto 50px auto !important;
  font-size: 1.1rem !important;
  line-height: 1.6 !important;
}

/* CARDS GRID */
.dvt-plan-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 30px !important;
  margin-bottom: 50px !important;
}

.dvt-plan-card {
  background: #ffffff !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 10px 30px rgba(0,0,0,0.05) !important;
  transition: all 0.3s ease !important;
  display: flex !important;
  flex-direction: column !important;
}

.dvt-plan-card:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 20px 40px rgba(0,0,0,0.12) !important;
}

/* MEDIA & HOVER OVERLAY */
.dvt-plan-media {
  position: relative !important;
  width: 100% !important;
  height: 220px !important;
  overflow: hidden !important;
  background: #ffffff !important;
}

.dvt-plan-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important; /* 'contain' erhält die technische Zeichnung komplett */
  padding: 10px !important;
  transition: transform 0.5s ease !important;
}

.dvt-media-overlay {
  position: absolute !important;
  top: 0; left: 0; width: 100%; height: 100%;
  background: rgba(15, 106, 122, 0.1) !important;
  display: flex !important;
  align-items: center; justify-content: center;
  opacity: 0 !important;
  transition: opacity 0.3s ease !important;
}

.dvt-media-overlay svg {
  width: 40px !important;
  height: 40px !important;
  color: #0f6a7a !important;
}

.dvt-plan-card:hover .dvt-media-overlay {
  opacity: 1 !important;
}

.dvt-plan-card:hover .dvt-plan-media img {
  transform: scale(1.03) !important;
}

/* TEXT AREA */
.dvt-plan-info {
  padding: 25px !important;
  flex-grow: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}

.dvt-plan-info h3 {
  color: #0f6a7a !important;
  font-size: 1.25rem !important;
  margin-bottom: 10px !important;
  font-weight: 700 !important;
}

.dvt-plan-info p {
  color: #666 !important;
  font-size: 0.95rem !important;
  line-height: 1.5 !important;
  margin-bottom: 20px !important;
}

.dvt-plan-link {
  margin-top: auto !important;
  background: #ffd800 !important;
  color: #000 !important;
  text-decoration: none !important;
  font-weight: 800 !important;
  padding: 12px !important;
  border-radius: 4px !important;
  text-align: center !important;
  transition: background 0.2s ease !important;
}

.dvt-plan-link:hover {
  background: #ffdf20 !important;
}

/* PDF SECTION */
.dvt-plan-footer {
  border-top: 1px solid #e0e6e9 !important;
  padding-top: 40px !important;
}

.dvt-pdf-box {
  display: flex !important;
  justify-content: center !important;
  gap: 40px !important;
  flex-wrap: wrap !important;
}

.dvt-pdf-item {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.dvt-pdf-icon {
  width: 22px !important;
  height: 22px !important;
  color: #0f6a7a !important;
}

.dvt-pdf-item a {
  color: #0f6a7a !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

/* RESPONSIVE */
@media (max-width: 992px) {
  .dvt-plan-grid { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 650px) {
  .dvt-plan-grid { grid-template-columns: 1fr !important; }
  .dvt-pdf-box { flex-direction: column !important; gap: 20px !important; align-items: center !important; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-24b28704 *//* --- DVT SHOWCASE - FINAL TRANSPARENT GLASS DESIGN --- */

.dvt-showcase-section {
  padding: 80px 0 !important;
  background-color: #ffffff !important;
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  font-family: 'Open Sans', Arial, sans-serif !important;
}

.dvt-showcase-container {
  max-width: 1300px !important;
  margin: 0 auto !important;
  padding: 0 30px !important;
}

.dvt-showcase-header {
  text-align: center !important;
  margin-bottom: 50px !important;
}

.dvt-showcase-title {
  font-size: 2.2rem !important;
  font-weight: 800 !important;
  color: #1a1a1a !important;
  margin-bottom: 10px !important;
}

.dvt-showcase-subtitle {
  color: #666 !important;
  font-size: 1.1rem !important;
}

/* GRID LAYOUT */
.dvt-showcase-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  grid-template-rows: repeat(2, 300px) !important;
  gap: 20px !important;
}

.dvt-showcase-item {
  position: relative !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #f4f7f8 !important;
  /* Wichtig für den 3D-Effekt der Karte */
  perspective: 1000px !important; 
}

.dvt-showcase-item.dvt-large {
  grid-column: span 2 !important;
  grid-row: span 2 !important;
}

.dvt-showcase-item:not(.dvt-large) {
  grid-column: span 2 !important;
}

.dvt-showcase-item img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}

/* OVERLAY CONTAINER */
.dvt-showcase-overlay {
  position: absolute !important;
  top: 0; left: 0; width: 100%; height: 100%;
  background: transparent !important;
  display: flex !important;
  align-items: flex-end !important;
  /* Etwas mehr Abstand zum Rand für einen edleren Look */
  padding: 25px !important; 
}

/* --- DIE TRANSPARENTE GLAS-KARTE (Geändert) --- */
.dvt-showcase-content {
  /* HIER GEÄNDERT: Nur noch 65% Deckkraft (0.65) statt 90% */
  background: rgba(255, 255, 255, 0.25) !important;
  
  /* Der Milchglas-Effekt, der die Lesbarkeit sichert */
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  
  padding: 25px !important;
  border-radius: 8px !important;
  width: 100% !important;
  /* Subtilerer Schatten & Rand für den Glas-Look */
  box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.15) !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  
  transform: translateY(0) !important;
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}

/* --- HOVER EFFEKTE (Geändert) --- */
.dvt-showcase-item:hover img {
  transform: scale(1.05) !important;
}

.dvt-showcase-item:hover .dvt-showcase-content {
  transform: translateY(-8px) !important;
  /* HIER GEÄNDERT: Beim Hover wird es etwas undurchsichtiger (85%), aber nicht vollweiß */
  background: rgba(255, 255, 255, 0.85) !important;
  box-shadow: 0 12px 40px 0 rgba(31, 38, 135, 0.2) !important;
}

/* TEXTE & BUTTONS (Dunkel auf Hell) */
.dvt-tag {
  background: #ffd800 !important;
  color: #000 !important;
  padding: 4px 10px !important;
  font-size: 0.7rem !important;
  font-weight: 800 !important;
  border-radius: 4px !important;
  display: inline-block !important;
  margin-bottom: 10px !important;
}

.dvt-showcase-content h3 {
  color: #1a1a1a !important;
  font-size: 1.6rem !important;
  margin: 0 0 8px 0 !important;
  font-weight: 800 !important;
}

.dvt-showcase-content p {
  color: #333 !important;
  font-size: 0.95rem !important;
  margin-bottom: 15px !important;
  font-weight: 600 !important;
}

/* Buttons jetzt in Petrol oder Gelb */
.dvt-btn-accent {
  background: #ffd800 !important;
  color: #000 !important;
  padding: 10px 24px !important;
  border-radius: 4px !important;
  text-decoration: none !important;
  font-weight: 800 !important;
  display: inline-block !important;
  box-shadow: 0 3px 0 #d4b500 !important;
  transition: all 0.2s ease !important;
}

.dvt-btn-accent:hover {
  background: #ffdf20 !important;
  box-shadow: 0 5px 0 #d4b500 !important;
  transform: translateY(-2px) !important;
}

.dvt-btn-white {
  background: #0f6a7a !important; /* Petrol Button */
  color: #ffffff !important;
  padding: 10px 20px !important;
  border-radius: 4px !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  display: inline-block !important;
  transition: all 0.3s ease !important;
}

.dvt-btn-white:hover {
  background: #ffd800 !important;
  color: #000 !important;
}

/* RESPONSIVE */
@media (max-width: 900px) {
  .dvt-showcase-grid {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto !important;
  }
  .dvt-showcase-item.dvt-large, .dvt-showcase-item {
    grid-column: span 1 !important;
    height: 400px !important;
  }
  /* Auf Mobile die Karte etwas kompakter */
  .dvt-showcase-content {
    padding: 20px !important;
  }
  .dvt-showcase-content h3 { font-size: 1.4rem !important; }
}
/* --- BILD-AUSRICHTUNG RECHTE KACHELN --- */

/* Wir wählen die Items aus, die NICHT die Klasse .dvt-large haben */
.dvt-showcase-item:not(.dvt-large) img {
  /* Fixiert das Bild oben in der Mitte. 
     Überschüssiges Material wird nur unten abgeschnitten. */
  object-position: center top !important;
}

/* Falls du das große Loft-Bild ebenfalls oben fixieren willst, 
   nutze einfach diesen kürzeren Selektor für alle Bilder: */
.dvt-showcase-item img {
  object-position: center top !important;
}
/* --- DVT SHOWCASE - CLEAN HOVER EFFECT --- */

/* 1. Grundzustand der Texte für den Übergang */
.dvt-showcase-content h3, 
.dvt-showcase-content p, 
.dvt-showcase-content .dvt-tag {
  transition: opacity 0.3s ease, visibility 0.3s ease !important;
}

/* 2. Der Hover-Effekt auf dem Item */
.dvt-showcase-item:hover .dvt-showcase-content {
  /* Hintergrund und Glas-Effekt verschwinden komplett */
  background: rgba(255, 255, 255, 0) !important;
  backdrop-filter: blur(0px) !important;
  -webkit-backdrop-filter: blur(0px) !important;
  border-color: transparent !important;
  box-shadow: none !important;
  transform: translateY(0) !important; /* Kein Springen der Karte */
}

/* 3. Texte beim Hover ausblenden */
.dvt-showcase-item:hover h3, 
.dvt-showcase-item:hover p, 
.dvt-showcase-item:hover .dvt-tag {
  opacity: 0 !important;
  visibility: hidden !important;
}

/* 4. Sicherstellen, dass der CTA-Button sichtbar bleibt */
.dvt-showcase-item:hover .dvt-btn-white,
.dvt-showcase-item:hover .dvt-btn-accent {
  opacity: 1 !important;
  visibility: visible !important;
  /* Optional: Button leicht hervorheben */
  transform: scale(1.05) !important;
  box-shadow: 0 5px 15px rgba(0,0,0,0.2) !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3aa90acc *//* --- DVT FAVORITES SECTION - FINAL BULLETPROOF VERSION --- */

.dvt-favorites-section {
  padding: 60px 0 !important;
  background-color: #ffffff !important;
  width: 100% !important;
  overflow: hidden !important; /* Verhindert seitliches Wackeln der Website */
  font-family: 'Open Sans', Arial, sans-serif !important;
}

.dvt-showcase-container {
  max-width: 1300px !important;
  margin: 0 auto !important;
  padding: 0 25px !important;
}

.dvt-favorites-header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin-bottom: 30px !important;
}

/* NAVIGATION (Pfeile) */
.dvt-slider-nav {
  display: flex !important;
  gap: 10px !important;
}

.dvt-nav-btn {
  background: #0f6a7a !important; /* Dein Petrol */
  color: #fff !important;
  border: none !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.3s ease !important;
  font-size: 1.1rem !important;
}

.dvt-nav-btn:hover {
  background: #ffd800 !important; /* Dein Gelb */
  color: #000 !important;
  transform: translateY(-2px) !important;
}

/* DER SLIDER-TRACK */
.dvt-favorites-slider {
  display: flex !important;
  gap: 20px !important;
  overflow-x: auto !important;
  scroll-behavior: smooth !important;
  
  /* NEU: Scroll-Snap für Mobile (Karten rasten ein) */
  scroll-snap-type: x mandatory !important;
  -webkit-overflow-scrolling: touch !important; /* Flüssiges Scrollen auf iOS */
  
  /* Scrollbar verstecken */
  scrollbar-width: none !important;
  padding: 10px 0 30px 0 !important;
}

.dvt-favorites-slider::-webkit-scrollbar {
  display: none !important;
}

/* DIE ARTIKEL-KARTE */
.dvt-fav-card {
  flex: 0 0 260px !important; /* Feste Breite auf Desktop */
  text-decoration: none !important;
  scroll-snap-align: start !important; /* Einhak-Punkt */
  transition: transform 0.3s ease !important;
}

/* BILD-CONTAINER (Löst das Problem unterschiedlicher Bildgrößen) */
.dvt-fav-img-wrapper {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important; /* Erzwingt Quadrat-Format, egal wie groß das Originalbild ist */
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #f4f7f8 !important;
  margin-bottom: 12px !important;
  border: 1px solid rgba(0,0,0,0.05) !important;
}

.dvt-fav-img-wrapper img {
  width: 100% !important;
  height: 100% !important;
  
  /* WICHTIGSTES ATTRIBUT: Füllt den Kasten ohne Verzerrung */
  object-fit: cover !important; 
  object-position: center !important;
  
  transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}

.dvt-fav-card:hover img {
  transform: scale(1.1) !important;
}

/* TEXTE */
.dvt-fav-name {
  display: block !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  font-size: 0.95rem !important;
  line-height: 1.3 !important;
  margin-bottom: 4px !important;
}

.dvt-fav-price {
  color: #666 !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
}

/* --- MOBILE OPTIMIERUNG (WIRKLICH BULLETPROOF) --- */

@media (max-width: 768px) {
  .dvt-favorites-header {
    padding: 0 5px !important;
  }
  
  /* Auf Mobile verstecken wir die Pfeile, da Swipen intuitiver ist */
  .dvt-slider-nav {
    display: none !important;
  }
  
  .dvt-fav-card {
    /* Zeigt 75% der Karte + einen Spalt der nächsten Karte an (Signal zum Weiterscrollen) */
    flex: 0 0 75vw !important; 
  }
  
  .dvt-fav-img-wrapper {
    /* Optional: Auf Mobile etwas höher ziehen, falls gewünscht */
    aspect-ratio: 1 / 1.1 !important; 
  }
}
/* Standard: Edel & Zurückhaltend */
.dvt-fav-name {
  color: #1a1a1a !important;
  transition: color 0.3s ease !important;
}

/* Hover: Branding-Effekt beim Drüberfahren */
.dvt-fav-card:hover .dvt-fav-name {
  color: #0f6a7a !important; /* Hier dein Teal-Blau */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2ac2e1c3 *//* ==========================================================================
   DVT REVIEWS SECTION - MASTER CSS (FINAL & CLEAN)
   ========================================================================== */

/* 1. SEKTION & CONTAINER */
.dvt-reviews-section {
  padding: 80px 0 !important;
  background-color: #f4f7f8 !important; /* Helles Petrol-Grau */
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  font-family: 'Open Sans', Arial, sans-serif !important;
  overflow: hidden !important;
}

.dvt-reviews-container {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  position: relative !important; /* Wichtig für den mobilen Pfeil */
}

/* 2. HEADER */
.dvt-reviews-header {
  text-align: center !important;
  margin-bottom: 50px !important;
}

.dvt-trustpilot-badge {
  display: inline-block !important;
  margin-bottom: 15px !important;
}

.dvt-trustpilot-badge .dvt-stars {
  color: #00b67a !important; /* Trustpilot-Grün */
  font-size: 1.4rem !important;
  letter-spacing: 2px !important;
}

.dvt-reviews-title {
  font-size: 2.2rem !important;
  font-weight: 800 !important;
  color: #1a1a1a !important;
  margin-top: 0 !important;
}

/* 3. GRID & CARDS (DESKTOP) */
.dvt-reviews-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
}

.dvt-review-card {
  background: #ffffff !important;
  padding: 30px !important;
  border-radius: 12px !important;
  box-shadow: 0 5px 20px rgba(0,0,0,0.05) !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 350px !important; /* Einheitliche Höhe */
  transition: transform 0.3s ease !important;
}

.dvt-review-card:hover {
  transform: translateY(-5px) !important;
}

.dvt-review-stars {
  color: #ffd800 !important; /* Domovitra-Gelb */
  font-size: 1.1rem !important;
  margin-bottom: 15px !important;
}

.dvt-review-card h4 {
  font-size: 1.1rem !important;
  color: #0f6a7a !important;
  font-weight: 700 !important;
  margin-bottom: 10px !important;
}

.dvt-review-card p {
  font-size: 0.95rem !important;
  line-height: 1.6 !important;
  color: #555 !important;
  margin-bottom: 20px !important;
  font-style: italic !important;
  flex-grow: 1 !important; /* Drückt den Footer nach unten */
}

/* 4. CARD FOOTER (AUTOR & LINKS) */
.dvt-review-footer-card {
  border-top: 1px solid #eee !important;
  padding-top: 15px !important;
  margin-top: auto !important;
}

.dvt-review-author {
  display: flex !important;
  flex-direction: column !important;
  gap: 5px !important;
}

.dvt-review-author strong {
  color: #1a1a1a !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
}

.dvt-single-trust-link {
  color: #00b67a !important;
  text-decoration: none !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  transition: color 0.2s ease !important;
}

.dvt-single-trust-link:hover {
  color: #0f6a7a !important;
  text-decoration: underline !important;
}

/* 5. SEKTIONS-FOOTER (ZENTRALER LINK) */
.dvt-reviews-footer {
  text-align: center !important;
  margin-top: 40px !important;
}

.dvt-trust-link {
  color: #0f6a7a !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
}

/* 6. MOBILE OPTIMIERUNG (900px Breakpoint) */
@media (max-width: 900px) {
  .dvt-reviews-grid {
    display: flex !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    gap: 15px !important;
    padding: 10px 0 40px 0 !important;
    scrollbar-width: none !important; /* Firefox */
    -ms-overflow-style: none !important; /* IE/Edge */
  }

  .dvt-reviews-grid::-webkit-scrollbar {
    display: none !important; /* Chrome/Safari */
  }

  .dvt-review-card {
    min-width: 85% !important;
    max-width: 85% !important;
    flex-shrink: 0 !important;
    scroll-snap-align: center !important;
    min-height: 320px !important;
  }

  .dvt-reviews-title {
    font-size: 1.7rem !important;
  }

  /* PULSIERENDER PFEIL (KONSISTENT MIT USP-BAR) */
  .dvt-reviews-container::after {
    content: "" !important;
    display: flex !important;
    position: absolute !important;
    right: 15px !important;
    top: 60% !important; /* Etwas tiefer als Mitte wegen Header */
    transform: translateY(-50%) !important;
    width: 24px !important;
    height: 24px !important;
    background-color: rgba(255, 255, 255, 0.9) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f6a7a' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'%3E%3C/polyline%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 14px !important;
    border-radius: 50% !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1) !important;
    z-index: 10 !important;
    pointer-events: none !important;
    animation: dvt-arrow-pulse-reviews 2s infinite !important;
  }

  @keyframes dvt-arrow-pulse-reviews {
    0% { transform: translateY(-50%) translateX(0); opacity: 0.6; }
    50% { transform: translateY(-50%) translateX(5px); opacity: 1; }
    100% { transform: translateY(-50%) translateX(0); opacity: 0.6; }
  }
}

/* Tablet Fix */
@media (min-width: 901px) and (max-width: 1150px) {
  .dvt-reviews-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-789aa1a6 *//* --- DVT EXPERT SECTION - TEAM FOCUS --- */
.dvt-expert-section {
  padding: 100px 0 !important;
  background-color: #f8fafb !important;
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  font-family: 'Open Sans', Arial, sans-serif !important;
}

.dvt-expert-container {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
}

.dvt-expert-flex {
  display: flex !important;
  align-items: center !important;
  gap: 60px !important;
}

/* TEAM CARD DESIGN */
.dvt-expert-visual {
  flex: 0 0 40% !important;
}

.dvt-expert-team-card {
  background: #ffffff !important;
  padding: 40px !important;
  border-radius: 20px !important;
  box-shadow: 0 20px 40px rgba(15, 106, 122, 0.08) !important;
  border-left: 5px solid #0f6a7a !important;
  text-align: center !important;
}

.dvt-expert-icons {
  font-size: 2.5rem !important;
  margin-bottom: 15px !important;
  filter: grayscale(1) opacity(0.5) !important;
}

.dvt-expert-team-card h3 {
  color: #0f6a7a !important;
  font-size: 1.3rem !important;
  font-weight: 800 !important;
  margin-bottom: 20px !important;
}

.dvt-team-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 25px 0 !important;
  text-align: center !important;
}

.dvt-team-list li {
  font-size: 1.1rem !important;
  color: #1a1a1a !important;
  padding: 8px 0 !important;
  font-weight: 600 !important;
  border-bottom: 1px dashed #eee !important;
}

.dvt-team-list li:last-child { border-bottom: none !important; }

.dvt-expert-status {
  font-size: 0.85rem !important;
  color: #555 !important;
  font-weight: 700 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
}

.dvt-status-dot {
  width: 10px !important;
  height: 10px !important;
  background: #00b67a !important;
  border-radius: 50% !important;
  display: inline-block !important;
  box-shadow: 0 0 0 3px rgba(0, 182, 122, 0.2) !important;
}

/* INFO & CONTACT GRID */
.dvt-expert-info h2 {
  font-size: 2.2rem !important;
  font-weight: 800 !important;
  margin: 15px 0 !important;
}

.dvt-contact-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 15px !important;
}

.dvt-contact-item {
  display: flex !important;
  align-items: center !important;
  gap: 15px !important;
  padding: 15px 20px !important;
  background: #ffffff !important;
  border-radius: 10px !important;
  text-decoration: none !important;
  border: 1px solid #e0e6e9 !important;
  transition: all 0.3s ease !important;
}

.dvt-contact-item:hover {
  border-color: #ffd800 !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 10px 20px rgba(0,0,0,0.05) !important;
}

.dvt-contact-icon { font-size: 1.4rem !important; }
.dvt-contact-text span { display: block !important; font-size: 0.75rem !important; color: #888 !important; }
.dvt-contact-text strong { display: block !important; color: #0f6a7a !important; font-size: 0.95rem !important; }

/* RESPONSIVE */
@media (max-width: 900px) {
  .dvt-expert-flex { flex-direction: column !important; gap: 40px !important; }
  .dvt-expert-visual { width: 100% !important; }
  .dvt-contact-grid { grid-template-columns: 1fr !important; }
}
/* --- DVT EXPERT SECTION - ICON UPDATE --- */

/* Team Card Icons */
.dvt-expert-icon-header {
  width: 50px !important;
  height: 50px !important;
  margin: 0 auto 20px auto !important;
  color: #0f6a7a !important; /* Dein Petrol */
  opacity: 0.6 !important;
}

.dvt-expert-icon-header svg {
  width: 100% !important;
  height: 100% !important;
}

/* Kontakt Grid Icons */
.dvt-contact-icon {
  width: 24px !important;
  height: 24px !important;
  color: #0f6a7a !important; /* Einheitliche Farbe */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.dvt-contact-icon svg {
  width: 100% !important;
  height: 100% !important;
}

/* Hover-Effekte für Icons */
.dvt-contact-item:hover .dvt-contact-icon {
  color: #ffd800 !important; /* Icons werden gelb beim Hover */
  transform: scale(1.1) !important;
  transition: all 0.2s ease !important;
}

/* WhatsApp Spezial-Farbe bleibt optional beim Hover */
.dvt-whatsapp-hover:hover .dvt-contact-icon {
  color: #25d366 !important; /* Klassisches WhatsApp Grün nur beim Hover */
}

/* Restliches Layout bleibt bestehen */
.dvt-contact-item {
  display: flex !important;
  align-items: center !important;
  gap: 15px !important;
  padding: 15px 20px !important;
  background: #ffffff !important;
  border-radius: 10px !important;
  text-decoration: none !important;
  border: 1px solid #e0e6e9 !important;
  transition: all 0.3s ease !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-76fd3519 *//* --- DVT SEO SECTION - MOBILE COLLAPSIBLE --- */

.dvt-seo-section {
  padding: 60px 0 !important;
  background-color: #fcfcfc !important;
  border-top: 1px solid #eee !important;
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  font-family: 'Open Sans', Arial, sans-serif !important;
  overflow: hidden !important;
}

.dvt-seo-container {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  position: relative !important;
}

.dvt-seo-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 40px !important;
  transition: max-height 0.5s ease-in-out !important;
}

/* Checkbox verstecken */
.dvt-seo-checkbox { display: none !important; }

/* Button standardmäßig verstecken (Desktop) */
.dvt-seo-mobile-btn { display: none !important; }

/* Desktop-Texte */
.dvt-seo-column h3 { font-size: 1.1rem !important; color: #0f6a7a !important; font-weight: 700 !important; margin-bottom: 12px !important; }
.dvt-seo-column p { font-size: 0.9rem !important; color: #666 !important; line-height: 1.7 !important; }

/* --- MOBILE LOGIK --- */
@media (max-width: 900px) {
  .dvt-seo-grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    max-height: 150px !important; /* Hier wird der Text abgeschnitten */
    overflow: hidden !important;
    position: relative !important;
  }

  /* Der verläufe Effekt unten am Text, damit man sieht, dass es weitergeht */
  .dvt-seo-grid::after {
    content: "" !important;
    position: absolute !important;
    bottom: 0; left: 0; width: 100%; height: 60px;
    background: linear-gradient(transparent, #fcfcfc) !important;
    pointer-events: none !important;
  }

  /* Button auf Mobile anzeigen */
  .dvt-seo-mobile-btn {
    display: block !important;
    text-align: center !important;
    padding: 15px !important;
    color: #0f6a7a !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    border: 1px solid #0f6a7a !important;
    border-radius: 5px !important;
    margin-top: 10px !important;
    background: white !important;
  }

  /* Wenn Checkbox aktiv (geklickt), dann... */
  .dvt-seo-checkbox:checked + .dvt-seo-grid {
    max-height: 2000px !important; /* Genug Platz für den ganzen Text */
  }

  .dvt-seo-checkbox:checked + .dvt-seo-grid::after {
    display: none !important; /* Verlauf entfernen wenn offen */
  }

  /* Button-Text umschalten */
  .dvt-seo-checkbox:checked ~ .dvt-seo-mobile-btn .dvt-btn-more { display: none !important; }
  .dvt-seo-checkbox:not(:checked) ~ .dvt-seo-mobile-btn .dvt-btn-less { display: none !important; }
}/* End custom CSS */