.elementor-kit-1100{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"Cormorant Garamond";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Manrope";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Manrope";--e-global-typography-accent-font-weight:600;}.elementor-kit-1100 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --vps-wine:#993333; --vps-wine-deep:#7A2424; --vps-bordeaux:#321111; --vps-ink:#1C0B0A; --vps-rose:#E7B7AC; --vps-stone:#F6F1EC; --vps-sand:#E9DFD5; --vps-text:#2B2220; --vps-muted:#6E605A; --vps-white:#FFFFFF; --vps-serif:Cormorant Garamond; --vps-sans:Manrope; }
/* Start custom CSS *//* ===== Galerien (Elementor Pro Galerie-Widget) – gilt automatisch für alle Galerien ===== */

/* Bereich, in dem eine Galerie steht */
.e-con:has(> .e-con-inner > .elementor-widget-gallery), .e-con:has(> .elementor-widget-gallery) { background-color: #F6F1EC; padding: 0 2rem 7rem 2rem !important; }
.e-con:has(> .e-con-inner > .elementor-widget-gallery) > .e-con-inner { max-width: 74rem; }
@media (max-width: 767px) { .e-con:has(> .e-con-inner > .elementor-widget-gallery), .e-con:has(> .elementor-widget-gallery) { padding: 0 1rem 4.5rem 1rem !important; } }

/* Einheitliches Raster statt Mauerwerk – egal welches Bildformat */
.elementor-widget-gallery .e-gallery-container { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; height: auto !important; padding-bottom: 0 !important; margin-bottom: 0 !important; }
@media (max-width: 1024px) { .elementor-widget-gallery .e-gallery-container { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; } }
@media (max-width: 767px) { .elementor-widget-gallery .e-gallery-container { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; } }

/* Kachel */
.elementor-widget-gallery .e-gallery-item { position: relative !important; top: auto !important; left: auto !important; right: auto !important; width: auto !important; height: auto !important; display: flex !important; flex-direction: column; background-color: #FFFFFF; overflow: hidden; box-shadow: 0 0 0 1px #E9DFD5; text-decoration: none; transition: transform 0.35s ease, box-shadow 0.35s ease; }
.elementor-widget-gallery .e-gallery-item:hover { transform: translateY(-4px); box-shadow: 0 0 0 1px #993333, 0 22px 40px rgba(50,17,17,0.16); }

/* Bild: ganzer Stein sichtbar, nichts abgeschnitten */
.elementor-widget-gallery .e-gallery-image { padding: 0.9rem !important; height: auto !important; aspect-ratio: 4 / 3; box-sizing: border-box; background-size: contain !important; background-repeat: no-repeat !important; background-position: center center !important; background-origin: content-box !important; transition: transform 0.7s ease; }
.elementor-widget-gallery .e-gallery-item:hover .e-gallery-image { transform: scale(1.04); }
@media (max-width: 767px) { .elementor-widget-gallery .e-gallery-image { padding: 0.5rem !important; } }

/* Standard-Overlay aus, stattdessen Nummernleiste unter dem Bild */
.elementor-widget-gallery .elementor-gallery-item__overlay, .elementor-widget-gallery .elementor-gallery-item__content { display: none !important; }
.elementor-widget-gallery a.e-gallery-item::after { content: 'Modell ' attr(data-elementor-lightbox-title); display: block; padding: 0.7rem 1rem; font-family: 'Manrope', sans-serif; font-size: 0.74rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: #2B2220; background-color: #FFFFFF; box-shadow: inset 0 1px 0 #F0E8E0; position: relative; z-index: 2; transition: background-color 0.25s ease, color 0.25s ease; }
.elementor-widget-gallery a.e-gallery-item:hover::after { background-color: #993333; color: #FFFFFF; box-shadow: none; }
@media (max-width: 767px) { .elementor-widget-gallery a.e-gallery-item::after { padding: 0.55rem 0.7rem; font-size: 0.66rem; letter-spacing: 0.1em; } }

/* ===== FAQ-Akkordeon (Service-Seite): Plus-Symbol, dreht sich beim Öffnen ===== */
.e-accordion-item-base > summary { list-style: none; display: flex; align-items: center; justify-content: space-between; }
.e-accordion-item-base > summary::-webkit-details-marker { display: none; }
.e-accordion-item-base > summary::after { content: '+'; flex: 0 0 auto; font-family: 'Manrope', sans-serif; font-size: 1.5rem; font-weight: 300; line-height: 1; color: #993333; transition: transform 0.25s ease; }
.e-accordion-item-base[open] > summary::after { transform: rotate(45deg); }
.e-accordion-item-base > summary:focus-visible { outline: 2px solid #993333; outline-offset: 4px; border-radius: 4px; }


/* ===== Liquid Glass (2026) – Glas nur dort, wo etwas dahinter liegt ===== */
/* Prinzip (erste, freigegebene Version): flache getönte Transparenz + Weichzeichner + feiner gleichmäßiger Rand + Lichtkante oben. Keine Verläufe. */
/* Regeln: Kontrast mind. 4,5:1 (WCAG AA); bei "Transparenz reduzieren" bzw. ohne Browser-Unterstützung automatisch deckend (siehe unten) */

/* Glas-Karten auf dunklem Grund (Startseite: Leistungen + Kontakt-Karte, Über uns: Werte) */
.elementor .elementor-element-1026f3c0, .elementor .elementor-element-327cdf52, .elementor .elementor-element-5d797db7,
.elementor .elementor-element-776bae29,
.elementor .elementor-element-25289115, .elementor .elementor-element-1fae82d9, .elementor .elementor-element-72596458 {
  border-radius: 1.25rem;
  -webkit-backdrop-filter: blur(18px) saturate(160%); backdrop-filter: blur(18px) saturate(160%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.14), 0 24px 48px -24px rgba(0,0,0,0.55);
}

/* Startseite Hero: Fakten-Leiste als Glas-Panel über dem Foto */
.elementor .elementor-element.elementor-element-df8352a {
  padding: 1.75rem 2.25rem;
  border-radius: 1.25rem;
  border: 1px solid rgba(255,255,255,0.12);
  background-color: rgba(28,11,10,0.58);
  -webkit-backdrop-filter: blur(20px) saturate(160%); backdrop-filter: blur(20px) saturate(160%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.16), 0 30px 60px -30px rgba(0,0,0,0.6);
}
.elementor .elementor-element-df8352a .e-con > p:last-child { color: rgba(255,255,255,0.82); }
@media (max-width: 767px) { .elementor .elementor-element.elementor-element-df8352a { padding: 1.5rem; } }

/* Startseite: "Seit 1950"-Siegel über dem Foto */
.elementor .elementor-element.elementor-element-231cb57c {
  background-color: rgba(50,17,17,0.8);
  -webkit-backdrop-filter: blur(14px) saturate(160%); backdrop-filter: blur(14px) saturate(160%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.18), 0 20px 40px rgba(28,11,10,0.35);
}

/* Schwebender WhatsApp-Badge: Weinrot-Glas */
.elementor .elementor-element.elementor-element-6c97fe6c {
  background-color: rgba(153,51,51,0.86);
  border: 1px solid rgba(255,255,255,0.18);
  -webkit-backdrop-filter: blur(16px) saturate(170%); backdrop-filter: blur(16px) saturate(170%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.25), 0 14px 34px rgba(50,17,17,0.4);
}

/* --- Glas-Buttons: alle nach dem Prinzip der ersten transparenten Buttons --- */
/* Transparent (auf Foto, Rot oder Dunkel) – erste Version */
.elementor a.vps-btn-ghost-light {
  background-color: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.22);
  -webkit-backdrop-filter: blur(12px) saturate(160%); backdrop-filter: blur(12px) saturate(160%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.22);
}
.elementor a.vps-btn-ghost-light:hover, .elementor a.vps-btn-ghost-light:focus-visible { color: #321111; background-color: rgba(255,255,255,0.88); border-color: rgba(255,255,255,0.7); box-shadow: inset 0 1px 0 #FFFFFF, 0 16px 34px -12px rgba(0,0,0,0.35); }
/* Rot (Hauptbutton) */
.elementor a.vps-btn-primary {
  background-color: rgba(153,51,51,0.82);
  border: 1px solid rgba(255,255,255,0.18);
  -webkit-backdrop-filter: blur(12px) saturate(110%); backdrop-filter: blur(12px) saturate(110%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.22), 0 10px 24px -14px rgba(153,51,51,0.6);
}
.elementor a.vps-btn-primary:hover, .elementor a.vps-btn-primary:focus-visible { color: #FFFFFF; background-color: rgba(122,38,38,0.9); border-color: rgba(255,255,255,0.3); box-shadow: inset 0 1px 0 rgba(255,255,255,0.22), 0 16px 34px -12px rgba(153,51,51,0.5); }
/* Weiß (auf Rot/Dunkel) */
.elementor a.vps-btn-light {
  background-color: rgba(255,255,255,0.82);
  border: 1px solid rgba(255,255,255,0.7);
  -webkit-backdrop-filter: blur(12px) saturate(100%); backdrop-filter: blur(12px) saturate(100%);
  box-shadow: inset 0 1px 0 #FFFFFF;
}
.elementor a.vps-btn-light:hover, .elementor a.vps-btn-light:focus-visible { color: #FFFFFF; background-color: rgba(50,17,17,0.85); border-color: rgba(255,255,255,0.22); box-shadow: inset 0 1px 0 rgba(255,255,255,0.18), 0 16px 34px -12px rgba(0,0,0,0.4); }
/* Kontur (auf hellem Grund, z. B. "Mehr über uns") */
.elementor a.vps-btn-outline {
  background-color: rgba(255,255,255,0.35);
  border: 1px solid rgba(153,51,51,0.5);
  -webkit-backdrop-filter: blur(12px) saturate(110%); backdrop-filter: blur(12px) saturate(110%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.5);
}
.elementor a.vps-btn-outline:hover, .elementor a.vps-btn-outline:focus-visible { color: #FFFFFF; background-color: rgba(153,51,51,0.88); border-color: rgba(153,51,51,0.6); box-shadow: inset 0 1px 0 rgba(255,255,255,0.22), 0 16px 34px -12px rgba(153,51,51,0.45); }

/* Bild-Großansicht: Seite dahinter wird weichgezeichnet */
.elementor-lightbox.dialog-type-lightbox {
  background-color: rgba(28,11,10,0.8) !important;
  -webkit-backdrop-filter: blur(22px) saturate(140%); backdrop-filter: blur(22px) saturate(140%);
}

/* Barrierefreiheit: "Transparenz reduzieren" (Betriebssystem) oder Browser ohne Glas-Unterstützung -> deckend */
@media (prefers-reduced-transparency: reduce) {
  .elementor .elementor-element-1026f3c0, .elementor .elementor-element-327cdf52, .elementor .elementor-element-5d797db7,
  .elementor .elementor-element-776bae29, .elementor .elementor-element-25289115, .elementor .elementor-element-1fae82d9,
  .elementor .elementor-element-72596458, .elementor .elementor-element-df8352a, .elementor .elementor-element-231cb57c,
  .elementor .elementor-element-6c97fe6c, .elementor a.vps-btn-ghost-light, .elementor a.vps-btn-primary, .elementor a.vps-btn-light, .elementor a.vps-btn-outline, .elementor-lightbox.dialog-type-lightbox {
    -webkit-backdrop-filter: none !important; backdrop-filter: none !important;
  }
  .elementor .elementor-element.elementor-element-df8352a { background-color: #1C0B0A; }
  .elementor .elementor-element.elementor-element-231cb57c { background-color: #321111; }
  .elementor .elementor-element.elementor-element-6c97fe6c, .elementor a.vps-btn-primary { background-color: #993333; }
  .elementor a.vps-btn-light, .elementor a.vps-btn-outline { background-color: #FFFFFF; }
  .elementor-lightbox.dialog-type-lightbox { background-color: #1C0B0A !important; }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .elementor .elementor-element.elementor-element-df8352a { background-color: #1C0B0A; }
  .elementor .elementor-element.elementor-element-231cb57c { background-color: #321111; }
  .elementor .elementor-element.elementor-element-6c97fe6c, .elementor a.vps-btn-primary { background-color: #993333; }
  .elementor a.vps-btn-light, .elementor a.vps-btn-outline { background-color: #FFFFFF; }
  .elementor-lightbox.dialog-type-lightbox { background-color: #1C0B0A !important; }
}/* End custom CSS */