/* =========================================================================
   STARTSEITE (body.base-id-31) – sanfte Angleichung an das neue Design
   Gilt für alle Sprachversionen (WPML base-id 31, gleiche Element-IDs).
   Nur Farben, Typografie, Buttons, Karten – Layout & Animationen bleiben.
   Keine Texte im CSS.
   ========================================================================= */

body.base-id-31 {
  --hm-navy: #0b1f3a;
  --hm-text: #34465e;
  --hm-muted: #6b7c93;
  --hm-blue: #0a8be3;
  --hm-blue-2: #22a8f0;
  --hm-tint: #eaf5fd;
  --hm-light: #f4f7fb;
  --hm-line: #e3eaf3;
  --hm-font: "Roboto Condensed", "Roboto", Arial, sans-serif;
}

/* Dunkle Abschnitte (Hintergrund #1e1e20) bleiben wie sie sind */
/* 70ea15b7, c433c27, b7d4d26, 13d59245, bed9cd0, 0c37eb8 */

/* ---------- 1) Typografie in hellen Abschnitten ---------- */
body.base-id-31 [data-elementor-type="wp-page"] .elementor-top-section:not([data-id="70ea15b7"], [data-id="c433c27"], [data-id="b7d4d26"], [data-id="13d59245"], [data-id="bed9cd0"], [data-id="0c37eb8"]) .elementor-widget-heading .elementor-heading-title {
  color: var(--hm-navy) !important;
  font-weight: 700 !important;
  letter-spacing: -.015em;
  line-height: 1.2 !important;
}
body.base-id-31 [data-elementor-type="wp-page"] .elementor-top-section:not([data-id="70ea15b7"], [data-id="c433c27"], [data-id="b7d4d26"], [data-id="13d59245"], [data-id="bed9cd0"], [data-id="0c37eb8"]) .elementor-widget-text-editor {
  color: var(--hm-text) !important;
}
body.base-id-31 [data-elementor-type="wp-page"] .elementor-widget-text-editor p {
  line-height: 1.55;
}
body.base-id-31 [data-elementor-type="wp-page"] .elementor-top-section:not([data-id="70ea15b7"], [data-id="c433c27"], [data-id="b7d4d26"], [data-id="13d59245"], [data-id="bed9cd0"], [data-id="0c37eb8"]) .elementor-widget-text-editor strong {
  color: var(--hm-navy);
}
/* Wortmarke „dental eye pad“ im Hero in Navy (das „eye“ bleibt blau) */
body.base-id-31 [data-elementor-type="wp-page"] [data-id="f6b6a8e"] {
  color: var(--hm-navy) !important;
  letter-spacing: -.02em;
}
/* Hero-Überschrift (H1) etwas kräftiger */
body.base-id-31 [data-elementor-type="wp-page"] [data-id="191a7667"] .elementor-heading-title {
  font-size: 40px !important;
}

/* Hellgraue Flächen im Blau-Grau der Sparpakete */
body.base-id-31 [data-elementor-type="wp-page"] .elementor-top-section:is([data-id="43ece0e"], [data-id="606586bf"], [data-id="ceb01fd"], [data-id="0eeaab4"], [data-id="3240a40"], [data-id="afffd3d"], [data-id="db6db97"], [data-id="d19e23d"], [data-id="68d78f9"], [data-id="765024fe"], [data-id="66577a3c"], [data-id="03774bf"], [data-id="5dfdd1c6"], [data-id="87fdbd6"], [data-id="722b6b7"]):not(.elementor-motion-effects-element-type-background) {
  background-color: var(--hm-light) !important;
}

/* Dreieck-Übergänge (Shape Divider) bleiben bewusst erhalten – sie rahmen die CTA-Buttons. */

/* ---------- 2) Assistenten-Icons im Hero als Kacheln ---------- */
body.base-id-31 [data-id="2f64a24e"] > .elementor-container > .elementor-column > .elementor-widget-wrap {
  margin: 0 6px !important;
  padding: 22px 10px 20px !important;
  border-radius: 16px;
  transition: background .25s ease, box-shadow .25s ease, transform .25s ease;
}
body.base-id-31 [data-id="2f64a24e"] > .elementor-container > .elementor-column > .elementor-widget-wrap:hover {
  background: #fff;
  box-shadow: 0 1px 2px rgba(16,40,80,.04), 0 12px 30px rgba(16,40,80,.08);
  transform: translateY(-3px);
}
body.base-id-31 [data-id="2f64a24e"] .elementor-widget-image img {
  transition: transform .25s ease;
}
body.base-id-31 [data-id="2f64a24e"] > .elementor-container > .elementor-column > .elementor-widget-wrap:hover .elementor-widget-image img {
  transform: scale(1.06);
}
body.base-id-31 [data-id="2f64a24e"] .elementor-heading-title {
  font-size: 20px !important;
  font-weight: 600 !important;
}

/* ---------- 3) CTA „Jetzt unverbindlich Angebot anfragen“ ---------- */
body.base-id-31 .btn-add-hand .elementor-button,
body.base-id-31 .big-icon-hand-before .elementor-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 60px;
  padding: 16px 96px 16px 44px !important;   /* rechts Platz für die Hand-Grafik */
  border: 0 !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, var(--hm-blue-2) 0%, var(--hm-blue) 100%) !important;
  color: #fff !important;
  fill: #fff !important;
  font-family: var(--hm-font) !important;
  font-size: 21px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-shadow: 0 10px 24px rgba(10, 139, 227, .28) !important;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease !important;
}
body.base-id-31 .btn-add-hand .elementor-button:hover,
body.base-id-31 .btn-add-hand .elementor-button:focus-visible,
body.base-id-31 .big-icon-hand-before .elementor-button:hover {
  color: #fff !important;
  transform: translateY(-2px);
  filter: brightness(1.05);
  box-shadow: 0 14px 30px rgba(10, 139, 227, .34) !important;
}
body.base-id-31 .btn-add-hand .elementor-button .elementor-button-text,
body.base-id-31 .big-icon-hand-before .elementor-button .elementor-button-text {
  color: inherit !important;
  font: inherit !important;
}
/* schwebender Button rechts (Desktop) */
body.base-id-31 .big-icon-hand-before .elementor-button {
  min-height: 0;
  padding: 12px 22px !important;
  font-size: 16px !important;
}

/* ---------- 4) FAQ als moderne Karten ---------- */
body.base-id-31 .faq-akkordion .elementor-accordion-item {
  margin-bottom: 12px !important;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--hm-line) !important;
  border-radius: 14px !important;
  box-shadow: 0 1px 2px rgba(16,40,80,.04), 0 8px 22px rgba(16,40,80,.05) !important;
  transition: border-color .2s ease, box-shadow .2s ease;
}
body.base-id-31 .faq-akkordion .elementor-accordion-item:hover {
  border-color: #cfe2f5 !important;
}
body.base-id-31 .faq-akkordion .elementor-accordion-item:has(.elementor-tab-title.elementor-active) {
  border-color: var(--hm-blue) !important;
  box-shadow: 0 0 0 3px rgba(10,139,227,.10), 0 12px 28px rgba(16,40,80,.08) !important;
}
body.base-id-31 .faq-akkordion .elementor-tab-title {
  display: flex !important;
  align-items: center;
  gap: 16px;
  padding: 20px 24px !important;
  background: #fff !important;
  border: 0 !important;
  cursor: pointer;
}
body.base-id-31 .faq-akkordion .elementor-tab-title .elementor-accordion-icon {
  order: 2;
  flex: 0 0 34px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  margin: 0 0 0 auto !important;
  border-radius: 50%;
  background: var(--hm-tint);
  float: none !important;
  transition: background .2s ease;
}
body.base-id-31 .faq-akkordion .elementor-tab-title .elementor-accordion-icon i::before {
  color: var(--hm-blue) !important;
  font-size: 13px;
}
body.base-id-31 .faq-akkordion .elementor-tab-title.elementor-active .elementor-accordion-icon {
  background: var(--hm-blue);
}
body.base-id-31 .faq-akkordion .elementor-tab-title.elementor-active .elementor-accordion-icon i::before {
  color: #fff !important;
}
body.base-id-31 .faq-akkordion .elementor-accordion-title {
  order: 1;
  font-family: var(--hm-font) !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  color: var(--hm-navy) !important;
}
body.base-id-31 .faq-akkordion .elementor-tab-title.elementor-active .elementor-accordion-title,
body.base-id-31 .faq-akkordion .elementor-tab-title:hover .elementor-accordion-title {
  color: var(--hm-blue) !important;
}
body.base-id-31 .faq-akkordion .elementor-tab-content {
  padding: 4px 24px 22px !important;
  border: 0 !important;
  background: #fff !important;
  font-family: var(--hm-font) !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  letter-spacing: 0 !important;
  color: var(--hm-text) !important;
}
body.base-id-31 .faq-akkordion .elementor-tab-content strong { color: var(--hm-navy); }

/* ---------- 5) Videos & Bildergalerien ---------- */
body.base-id-31 .dep-video-setup .pp-video-play-icon,
body.base-id-31 .dep-video-setup .pp-video-play-icon i {
  color: var(--hm-blue) !important;
}
body.base-id-31 .dep-video-setup .pp-video-wrapper,
body.base-id-31 .dep-video-setup .pp-video-image-overlay {
  border-radius: 14px;
  overflow: hidden;
}
body.base-id-31 [data-elementor-type="wp-page"] .elementor-widget-gallery .gallery-item img,
body.base-id-31 [data-elementor-type="wp-page"] .elementor-widget-pp-image-gallery img {
  border-radius: 12px;
}

/* ---------- 6) Responsive ---------- */
@media (max-width: 1024px) {
  body.base-id-31 [data-elementor-type="wp-page"] [data-id="191a7667"] .elementor-heading-title { font-size: 34px !important; }
  body.base-id-31 [data-id="2f64a24e"] > .elementor-container > .elementor-column > .elementor-widget-wrap { margin: 0 2px !important; padding: 16px 6px !important; }
}
@media (max-width: 767px) {
  body.base-id-31 [data-elementor-type="wp-page"] [data-id="191a7667"] .elementor-heading-title { font-size: 26px !important; }
  body.base-id-31 .btn-add-hand .elementor-button {
    min-width: min(330px, 100%);
    min-height: 56px;
    padding: 14px 76px 14px 30px !important;
    font-size: 18px !important;
  }
  body.base-id-31 .faq-akkordion .elementor-tab-title { padding: 16px 18px !important; }
  body.base-id-31 .faq-akkordion .elementor-accordion-title { font-size: 18px !important; }
  body.base-id-31 .faq-akkordion .elementor-tab-content { padding: 2px 18px 18px !important; font-size: 16px !important; }
  body.base-id-31 [data-id="2f64a24e"] .elementor-heading-title { font-size: 18px !important; }
}
@media (prefers-reduced-motion: reduce) {
  body.base-id-31 [data-elementor-type="wp-page"] * { transition: none !important; }
  body.base-id-31 [data-id="2f64a24e"] .elementor-widget-wrap:hover,
  body.base-id-31 .btn-add-hand .elementor-button:hover { transform: none !important; }
}
