/* ============================================================
   ECK-PUNKT-E – Gutenberg-native Ergänzungen
   Hilfsstile, damit die Seiteninhalte (reine Gutenberg-Kernblöcke,
   im Block-Editor frei bearbeitbar) zum Design-System passen.
   ============================================================ */

/* Inhalte werden ohne Container-Wrapper ausgegeben – Sektionen
   ziehen sich über die volle Breite, .container begrenzt den Inhalt. */
.page-content > .wp-block-group.section,
main#main-content > .wp-block-group.section { width: 100%; }

/* Group-Blöcke: innerer Wrapper soll Layout nicht stören */
.wp-block-group.container > .wp-block-group__inner-container,
.wp-block-group.section  > .wp-block-group__inner-container { width: 100%; }

/* Schwarz-Weiß-Fotos (Brand-Vorgabe) */
.is-grayscale img,
.photo-bw img { filter: grayscale(100%); transition: filter var(--transition); }
.is-grayscale:hover img { filter: grayscale(60%); }

/* Bilder im Design abrunden + sauber einpassen */
.wp-block-image img { border-radius: var(--radius-lg); display: block; }
.hero-native .wp-block-image img,
.media-cover img { width: 100%; height: 100%; object-fit: cover; }

/* Karten-Spalten: gleiche Höhe + Abstand */
.wp-block-columns { gap: 1.5rem; }
.wp-block-column > .service-card,
.wp-block-column > .angebot-card,
.wp-block-column > .problem-item { height: 100%; }
.service-card > .wp-block-group__inner-container,
.angebot-card > .wp-block-group__inner-container {
  display: flex; flex-direction: column; height: 100%;
}
.service-card .arrow-link { margin-top: auto; }

/* Buttons (core/buttons) im Design */
.wp-block-button__link { padding: 0.75rem 1.75rem; letter-spacing: 0.03em; }
.wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent; border: 2px solid var(--color-primary);
  color: var(--color-primary);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
  background: var(--color-primary); color: var(--color-white);
}
/* Buttons auf dunklen Flächen */
.section--bg-dark .wp-block-button.is-style-outline .wp-block-button__link,
.hero-native .wp-block-button.is-style-outline .wp-block-button__link {
  color: var(--color-white); border-color: rgba(255,255,255,0.6);
}
.section--bg-dark .wp-block-button.is-style-outline .wp-block-button__link:hover,
.hero-native .wp-block-button.is-style-outline .wp-block-button__link:hover {
  background: var(--color-white); color: var(--color-dark); border-color: var(--color-white);
}

/* Hero (Gutenberg-Variante: dunkle Sektion + 2 Spalten) */
.hero-native { padding-block: clamp(3rem, 7vw, 6rem); }
.hero-native h1 { color: var(--color-white); font-size: clamp(1.9rem, 3.6vw, 3rem); line-height: 1.12; }
.hero-native h1 .accent { color: var(--color-primary); }
.hero-native p:not(.hero__label) { color: rgba(255,255,255,0.72); max-width: 48ch; }
.hero-native .hero__label { color: var(--color-primary); }

/* FAQ als native core/details-Accordions */
.wp-block-details {
  border-bottom: 1px solid var(--color-light);
  padding: 1.25rem 0;
}
.wp-block-details:first-of-type { border-top: 1px solid var(--color-light); }
.wp-block-details summary {
  font-weight: 600; font-size: 1rem; color: var(--color-dark);
  cursor: pointer; list-style: none; display: flex;
  justify-content: space-between; align-items: center; gap: 1rem;
}
.wp-block-details summary::-webkit-details-marker { display: none; }
.wp-block-details summary::after {
  content: '+'; color: var(--color-primary); font-size: 1.4rem; font-weight: 400; line-height: 1;
}
.wp-block-details[open] summary::after { content: '–'; }
.wp-block-details summary:hover { color: var(--color-primary); }
.wp-block-details > :not(summary) { color: var(--color-gray); margin-top: 0.75rem; font-size: 0.95rem; }
.faq-native { max-width: 780px; margin-inline: auto; }

/* Statement-Block (Gutenberg-Variante) */
.statement-native { text-align: center; }
.statement-native .statement-quote {
  font-size: clamp(1.4rem, 3vw, 2.1rem); font-weight: 700;
  color: rgba(255,255,255,0.9); line-height: 1.45; max-width: 820px;
  margin-inline: auto;
}
.statement-native .statement-quote .accent { color: var(--color-primary); }
.statement-native .statement-source {
  margin-top: 2rem; font-size: 0.82rem; letter-spacing: 0.1em;
  text-transform: uppercase; color: rgba(255,255,255,0.35);
}

/* CTA-Sektion (Gutenberg-Variante) */
.cta-native { text-align: center; }
.cta-native p { color: rgba(255,255,255,0.65); max-width: 520px; margin-inline: auto; }
.cta-native .wp-block-buttons { justify-content: center; }

/* Kontakt-Layout */
.contact-grid .wp-block-column:first-child { flex-basis: 38% !important; }

/* Lead-/Intro-Absatz */
.lead { font-size: 1.15rem; color: var(--color-gray); line-height: 1.8; max-width: 70ch; }

/* Eyebrow als Block-Absatz */
p.eyebrow { margin-bottom: 0.75rem; }

@media (max-width: 781px) {
  .hero-native .wp-block-column { flex-basis: 100% !important; }
  .contact-grid .wp-block-column:first-child { flex-basis: 100% !important; }
}
