/*
Theme Name: Elektrische Garagentore
Theme URI: https://www.elektrische-garagentore.de/
Description: Child-Theme von Twenty Twenty-Five für das Ratgeberportal Elektrische-Garagentore.de – Ratgeber, Amazon-Empfehlungen und Handwerkerservice.
Author: Elektrische-Garagentore.de
Template: twentytwentyfive
Version: 1.0.0
Requires at least: 6.7
Requires PHP: 8.1
License: GNU General Public License v2 or later
Text Domain: egt
*/

/* ==========================================================================
   1. Tokens (Werte kommen aus theme.json)
   ========================================================================== */
:root {
	--egt-navy-900: var(--wp--preset--color--navy-900);
	--egt-navy-800: var(--wp--preset--color--navy-800);
	--egt-navy-700: var(--wp--preset--color--navy-700);
	--egt-blue-600: var(--wp--preset--color--blue-600);
	--egt-blue-500: var(--wp--preset--color--blue-500);
	--egt-blue-50: var(--wp--preset--color--blue-50);
	--egt-ink: var(--wp--preset--color--ink);
	--egt-muted: var(--wp--preset--color--muted);
	--egt-line: var(--wp--preset--color--line);
	--egt-soft: var(--wp--preset--color--soft);
	--egt-amazon: var(--wp--preset--color--amazon);
	--egt-radius: 10px;
	--egt-shadow: 0 1px 2px rgba(15, 42, 74, .06), 0 4px 16px rgba(15, 42, 74, .06);
	--egt-sticky-top: var(--wp-admin--admin-bar--height, 0px);
}

/* ==========================================================================
   2. Basis
   ========================================================================== */
body { -webkit-font-smoothing: antialiased; }
.wp-site-blocks > * + * { margin-block-start: 0; }

.screen-reader-text {
	border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
	height: 1px; width: 1px; margin: -1px; overflow: hidden; padding: 0;
	position: absolute !important; word-wrap: normal !important;
}

.egt-eyebrow {
	font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
	color: var(--egt-blue-600); margin: 0 0 10px;
}
.egt-section { padding-block: 72px; }
.egt-section--soft { background: var(--egt-soft); }
.egt-section__title { font-size: var(--wp--preset--font-size--x-large); margin: 0; }
.egt-section .egt-section__lead { color: var(--egt-muted); max-width: 620px; margin: 14px 0 0; }

/* Flow-Abstände in eigenen Rastern neutralisieren */
.wp-block-group.egt-features__grid > *,
.wp-block-group.egt-ratgeber > *,
.wp-block-group.egt-cards-4 > *,
.wp-block-group.egt-service > *,
.wp-block-group.egt-card > *,
.wp-block-group.egt-card__body > *,
.wp-block-group.egt-feature > *,
.wp-block-group.egt-hero__copy > *,
.wp-block-group.egt-ratgeber__intro > *,
.wp-block-group.egt-service__copy > *,
.wp-block-group.egt-sidebox > * { margin-block-start: 0; }

/* Bildplatzhalter – verschwinden, sobald echte Bilder gesetzt sind */
.egt-ph {
	/* Ohne border-box ergibt width:100% plus Innenabstand eine zu breite Fläche. */
	box-sizing: border-box;
	display: flex; align-items: center; justify-content: center; text-align: center;
	width: 100%; height: 100%; min-height: 120px; padding: 12px;
	background: repeating-linear-gradient(135deg, #dfe7f0 0 12px, #e8eef5 12px 24px);
	color: #51637a; font-size: 12px; font-weight: 600;
}
.egt-ph span { background: rgba(255, 255, 255, .85); border: 1px dashed #9fb0c4; border-radius: 6px; padding: 6px 10px; }

/* ==========================================================================
   3. Buttons
   ========================================================================== */
.wp-element-button, .wp-block-button__link { transition: background-color .15s, color .15s, border-color .15s; }
.egt-btn-navy .wp-block-button__link { background: var(--egt-navy-800); }
.egt-btn-navy .wp-block-button__link:hover { background: var(--egt-navy-700); }
.egt-btn-outline .wp-block-button__link {
	background: #fff; color: var(--egt-navy-800); border: 2px solid var(--egt-navy-800);
	padding: 11px 20px;
}
.egt-btn-outline .wp-block-button__link:hover { background: var(--egt-navy-800); color: #fff; }

.egt-btn--amazon {
	/* Ohne border-box ergibt width:100% plus Innenabstand eine zu breite Schaltfläche. */
	box-sizing: border-box;
	display: flex; justify-content: center; align-items: center;
	background: var(--egt-amazon); color: #111; border-radius: 8px;
	font-size: 14px; font-weight: 700; line-height: 1.2; padding: 12px 16px;
	text-decoration: none; transition: background-color .15s;
}
.egt-btn--amazon:hover, .egt-btn--amazon:focus { background: #f08804; color: #111; }

/* ==========================================================================
   4. Header
   ========================================================================== */
.wp-site-blocks > .wp-block-template-part:has(> .egt-header) {
	position: sticky; top: var(--egt-sticky-top); z-index: 50;
}
.egt-header { background: #fff; border-bottom: 1px solid var(--egt-line); }
.egt-header__inner { min-height: 78px; gap: 24px; }

.egt-brand { gap: 12px; }
.egt-brand__logo { display: block; color: var(--egt-navy-800); line-height: 0; }
.egt-brand__logo svg { width: 46px; height: 46px; }
.egt-brand__name { margin: 0; font-size: 20px; font-weight: 800; line-height: 1.1; }
.egt-brand__name a { color: var(--egt-navy-800); text-decoration: none; }
.egt-brand__tag { margin: 0; font-size: 12px; color: var(--egt-muted); }

.egt-header__actions { gap: 4px; }

.egt-nav .wp-block-navigation-item__content {
	font-size: 14px; font-weight: 600; color: var(--egt-ink); text-decoration: none;
	padding: 9px 12px; border-radius: 7px; white-space: nowrap;
}
.egt-nav .wp-block-navigation-item__content:hover { background: var(--egt-blue-50); color: var(--egt-navy-800); }
.egt-nav .current-menu-item > .wp-block-navigation-item__content { background: var(--egt-navy-800); color: #fff; }
.egt-nav .egt-nav__cta > .wp-block-navigation-item__content { background: var(--egt-blue-50); color: var(--egt-navy-800); margin-left: 6px; }
.egt-nav .wp-block-navigation-submenu__toggle { margin-left: -8px; }
.egt-nav .wp-block-navigation__submenu-container {
	border: 1px solid var(--egt-line) !important; border-radius: var(--egt-radius);
	box-shadow: var(--egt-shadow); padding: 8px; min-width: 230px !important;
}
.egt-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content { display: block; width: 100%; }

.egt-search .wp-block-search__button {
	background: transparent; color: var(--egt-navy-800); border: 0; border-radius: 8px;
	padding: 8px; margin: 0;
}
.egt-search .wp-block-search__button:hover { background: var(--egt-blue-50); }
.egt-search .wp-block-search__button svg { width: 22px; height: 22px; fill: currentColor; }
.egt-search .wp-block-search__input { border: 1px solid var(--egt-line); border-radius: 8px; padding: 8px 12px; font-size: 14px; }

/* ==========================================================================
   5. Startseite – Hero
   ========================================================================== */
.egt-hero {
	position: relative; overflow: hidden; color: #fff;
	min-height: 470px; display: flex; flex-direction: column; justify-content: center;
	padding-block: 64px;
	background-color: var(--egt-navy-800);
	/* Bild aus Mediathek-ID 85, verkleinert als WebP im Theme; wird in functions.php vorgeladen */
	background-image: url(assets/img/startseite-hero-1920.webp);
	background-size: cover; background-position: 62% center;
}
.egt-hero::before {
	content: ""; position: absolute; inset: 0;
	background: linear-gradient(90deg, rgba(10, 28, 51, .96) 0%, rgba(10, 28, 51, .85) 38%, rgba(10, 28, 51, .25) 70%, rgba(10, 28, 51, 0) 100%);
}
/* width: Auto-Ränder des Layouts würden die Inhaltsbreite im Flex-Container sonst schrumpfen lassen */
.egt-hero > * { position: relative; z-index: 1; width: 100%; }
.egt-hero__copy { max-width: 560px; }
.egt-hero .egt-eyebrow { color: #7fb4f0; }
.egt-hero__title { color: #fff; font-size: var(--wp--preset--font-size--xx-large); margin: 0; }
.egt-hero__copy .egt-hero__lead { color: #d5e1ee; font-size: 17px; margin: 20px 0 30px; }

/* ==========================================================================
   6. Startseite – Vorteile
   ========================================================================== */
.egt-features { border-bottom: 1px solid var(--egt-line); }
.egt-features__grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.egt-feature { display: flex; gap: 16px; padding: 34px 24px; }
.egt-feature + .egt-feature { border-left: 1px solid var(--egt-line); }
.egt-feature svg { width: 40px; height: 40px; flex: none; color: var(--egt-navy-800); }
.egt-feature h3 { font-size: 16px; margin: 0; }
.egt-feature p { font-size: 14px; color: var(--egt-muted); margin: 6px 0 0; }

/* ==========================================================================
   7. Karten (Ratgeber + Produkte)
   ========================================================================== */
.egt-ratgeber { display: grid; grid-template-columns: 1fr 2fr; gap: 40px; align-items: start; }
.egt-ratgeber__intro .wp-block-buttons { margin-top: 26px; }

.egt-ratgeber__query .wp-block-post-template.is-layout-grid,
.egt-ratgeber__query .wp-block-post-template {
	display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px;
	margin: 0; padding: 0; list-style: none;
}
.egt-ratgeber__query .wp-block-post-template > li { display: flex; margin: 0; }

.egt-card {
	flex: 1; background: #fff; border: 1px solid var(--egt-line); border-radius: var(--egt-radius);
	overflow: hidden; display: flex; flex-direction: column;
	transition: box-shadow .2s, transform .2s;
}
.egt-card:hover { box-shadow: var(--egt-shadow); transform: translateY(-2px); }
.egt-card__image { margin: 0; aspect-ratio: 16 / 10; }
.egt-card__image img { width: 100%; height: 100%; object-fit: cover; }
.egt-card__body { padding: 16px 18px 18px; display: flex; flex-direction: column; flex: 1; }

.egt-badge { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 12px; }
.egt-card .egt-badge { margin-top: -30px; position: relative; }
.egt-badge a {
	background: var(--egt-navy-800); color: #fff; font-size: 11px; font-weight: 700;
	line-height: 1.5; padding: 3px 9px; border-radius: 5px; text-decoration: none;
}
.egt-badge .wp-block-post-terms__separator { display: none; }

.egt-card__title { font-size: 16px; margin: 0; }
.egt-card__title a { color: var(--egt-navy-800); text-decoration: none; }
.egt-card__title a:hover { color: var(--egt-blue-600); }
.egt-card .egt-card__excerpt { font-size: 14px; color: var(--egt-muted); margin: 8px 0 14px; }
.egt-card__excerpt p { margin: 0; }
.egt-card .egt-more { margin-top: auto; font-size: 14px; font-weight: 700; color: var(--egt-blue-600); text-decoration: none; }
.egt-more:hover { color: var(--egt-navy-800); }

/* Produkte */
.egt-products__head { gap: 24px; margin-bottom: 34px; }
.egt-cards-4 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.egt-product .egt-product__image {
	aspect-ratio: 4 / 3; display: flex; align-items: center; justify-content: center;
	padding: 16px; background: #fff; border-bottom: 1px solid var(--egt-line);
}
.egt-product .egt-product__image:has(.egt-ph) { padding: 0; }
.egt-product .egt-product__image img { max-width: 100%; max-height: 100%; object-fit: contain; }
.egt-product__label { font-size: 11px; color: var(--egt-muted); text-transform: uppercase; letter-spacing: .06em; font-weight: 600; }
.egt-product__title { font-size: 15px; margin: 6px 0 0; }
.egt-product__title a { color: inherit; text-decoration: none; }
.egt-product__title a:hover { color: var(--egt-blue-600); }
.egt-product__text { font-size: 14px; color: var(--egt-muted); margin: 6px 0 12px; }
.egt-product__buy { margin-top: auto; }
.egt-product__price { font-size: 13px; color: var(--egt-muted); margin: 0 0 12px; padding-top: 10px; border-top: 1px solid var(--egt-line); }
.egt-product__price strong { display: block; font-size: 22px; font-weight: 800; color: var(--egt-ink); }
.egt-fineprint { font-size: 12px; color: var(--egt-muted); margin-top: 18px; }

/* ==========================================================================
   8. Handwerkerservice (Kunde)
   ========================================================================== */
.egt-service { display: grid; grid-template-columns: 5fr 7fr; min-height: 420px; background: var(--egt-navy-800); color: #fff; }
.egt-service__media {
	position: relative; min-height: 320px;
	background-color: var(--egt-navy-700);
	/* Bild aus Mediathek-ID 101, als WebP im Theme; Monteur links der Mitte, deshalb 38 % */
	background-image: url(assets/img/startseite-service-1600.webp);
	background-size: cover; background-position: 38% center;
}
.egt-service__copy { padding: 56px 48px; max-width: 760px; }
.egt-service .egt-eyebrow { color: #7fb4f0; }
.egt-service h2 { color: #fff; font-size: var(--wp--preset--font-size--x-large); }
.egt-service__lead { color: #cbd8e7; margin: 14px 0 26px !important; max-width: 560px; }

.egt-benefits { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 0 0 30px; padding: 0; list-style: none; }
.egt-benefits li { display: flex; gap: 12px; font-size: 14px; line-height: 1.4; color: #dfe8f2; }
.egt-benefits svg { width: 28px; height: 28px; flex: none; color: #7fb4f0; }
.egt-benefits b { display: block; color: #fff; }

.egt-plz-form { display: flex; gap: 10px; max-width: 560px; background: #fff; padding: 8px; border-radius: 10px; }
.egt-plz-form input, .egt-plz-form select {
	font: inherit; font-size: 15px; color: var(--egt-ink); background: transparent;
	border: 0; padding: 10px 12px; min-width: 0;
}
.egt-plz-form input { flex: 0 0 130px; border-right: 1px solid var(--egt-line); }
.egt-plz-form select { flex: 1; }
.egt-plz-form input:focus, .egt-plz-form select:focus { outline: 2px solid var(--egt-blue-500); border-radius: 6px; }
.egt-plz-form button { white-space: nowrap; cursor: pointer; }
.egt-service__note { font-size: 13px; color: #a9bdd3; margin-top: 12px !important; }

.egt-partner-link {
	justify-content: space-between; gap: 16px; margin-top: 34px !important; padding-top: 22px;
	border-top: 1px solid rgba(255, 255, 255, .14); font-size: 14px; color: #cbd8e7;
}
.egt-partner-link p { margin: 0; }
.egt-partner-link a { color: #fff; font-weight: 700; text-decoration: none; }
.egt-partner-link a:hover { color: #7fb4f0; }

/* ==========================================================================
   9. Ratgeber-Artikel
   ========================================================================== */
.egt-single { padding-block: 48px 72px; }
.egt-article { gap: 48px; }
.egt-article__title { font-size: var(--wp--preset--font-size--xx-large); margin: 0; }
.egt-article__meta { font-size: 14px; color: var(--egt-muted); gap: 6px 18px; padding-bottom: 18px; border-bottom: 1px solid var(--egt-line); }
.egt-article__meta p, .egt-article__meta .wp-block-post-date, .egt-article__meta .wp-block-post-author-name { margin: 0; font-size: inherit; }
.egt-article__notice { font-size: 13px; color: var(--egt-muted); background: var(--egt-soft); border-radius: 8px; padding: 10px 14px; }
.egt-article__image { margin: 0; }
.egt-article__image img { border-radius: var(--egt-radius); }
.egt-article__image .egt-ph { aspect-ratio: 16 / 9; border-radius: var(--egt-radius); }

.egt-article .wp-block-post-content { font-size: 17px; line-height: 1.75; }
.egt-article .wp-block-post-content h2 { font-size: 1.625rem; margin-top: 2em; }
.egt-article .wp-block-post-content h3 { font-size: 1.25rem; margin-top: 1.6em; }
.egt-article .wp-block-post-content img,
.egt-page .wp-block-post-content .wp-block-image img { border-radius: 8px; }
.egt-article .wp-block-post-content table { border-collapse: collapse; width: 100%; font-size: 15px; }
.egt-article .wp-block-post-content th,
.egt-article .wp-block-post-content td { border: 1px solid var(--egt-line); padding: 10px 12px; text-align: left; vertical-align: top; }
.egt-article .wp-block-post-content th { background: var(--egt-soft); color: var(--egt-navy-800); }

/* Ratgeber-Seiten: Kurzantwort, Entscheidungshilfe, Tabellen, häufige Fragen */
.egt-article .wp-block-post-content .egt-summary { margin-block: 0 2em; padding: 22px 24px; background: var(--egt-blue-50); border-left: 4px solid var(--egt-blue-600); border-radius: 0 var(--egt-radius) var(--egt-radius) 0; font-size: 16px; line-height: 1.65; }
.wp-block-group.egt-summary > * { margin-block: 0; }
.wp-block-group.egt-summary > * + * { margin-top: 10px; }
.egt-summary .egt-summary__title { font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--egt-blue-600); }
.egt-summary ul { padding-left: 1.2em; }
.egt-summary li + li { margin-top: 4px; }

.egt-article .wp-block-post-content .egt-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-block: 1.6em 2em; }
.wp-block-group.egt-options > * { margin: 0; }
.egt-option { background: #fff; border: 1px solid var(--egt-line); border-radius: var(--egt-radius); padding: 18px; font-size: 15px; line-height: 1.55; }
.wp-block-group.egt-option > * { margin-block: 0; }
.wp-block-group.egt-option > * + * { margin-top: 8px; }
.egt-option h3 { font-size: 17px !important; margin: 0 !important; }
.egt-option ul { padding-left: 1.1em; color: var(--egt-muted); }
.egt-option .egt-option__link { margin-top: 12px !important; font-weight: 700; }
.egt-option .egt-option__link a { text-decoration: none; }

.egt-article .wp-block-post-content .wp-block-table { margin-block: 1.4em 1.8em; overflow-x: auto; }
.egt-article .wp-block-post-content .wp-block-table td:first-child { font-weight: 600; color: var(--egt-navy-800); }
.egt-article .wp-block-post-content .wp-block-table figcaption { font-size: 13px; color: var(--egt-muted); text-align: left; }

/* Zeichnungen (assets/img/grafiken/*.svg): verlinkt auf die volle Größe, auf dem Handy mit Hinweis */
.wp-block-image.egt-grafik img { width: 100%; height: auto; aspect-ratio: 12 / 7; border: 1px solid var(--egt-line); border-radius: var(--egt-radius); }
.wp-block-image.egt-grafik a { cursor: zoom-in; }

.egt-article .wp-block-post-content .egt-faq { margin-top: 1em; border-top: 1px solid var(--egt-line); }
.wp-block-group.egt-faq > * { margin-block: 0; }
.egt-faq .wp-block-details { border-bottom: 1px solid var(--egt-line); padding: 0; }
.egt-faq summary { padding: 16px 36px 16px 0; font-weight: 700; color: var(--egt-navy-800); cursor: pointer; list-style: none; position: relative; }
.egt-faq summary::-webkit-details-marker { display: none; }
.egt-faq summary::after { content: "+"; position: absolute; right: 6px; top: 12px; font-size: 22px; font-weight: 400; color: var(--egt-blue-600); }
.egt-faq details[open] summary::after { content: "–"; }
.egt-faq details > :not(summary) { margin: 0 0 16px; font-size: 16px; }

/* Produkte im Artikel: Querkarten untereinander */
.egt-article .wp-block-post-content .egt-product-list { display: grid; gap: 14px; margin-block: 2em; }
.egt-product-list > .egt-product { margin: 0; }
.egt-product-list .egt-product { flex-direction: row; line-height: 1.5; }
.egt-product-list .egt-product:hover { transform: none; }
.egt-product-list .egt-product .egt-product__image { flex: 0 0 168px; aspect-ratio: auto; min-height: 150px; border-bottom: 0; border-right: 1px solid var(--egt-line); }
.egt-article .wp-block-post-content .egt-product-list img { border-radius: 0; max-height: 130px; }
.egt-product-list .egt-card__body { padding: 16px 20px; }
.egt-product-list .egt-product__title { font-size: 17px; margin-top: 4px; }
.egt-product-list .egt-product__text { font-size: 15px; margin: 4px 0 14px; }
.egt-product-list .egt-product__buy { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-top: 12px; border-top: 1px solid var(--egt-line); }
.egt-product-list .egt-product__price { margin: 0; padding: 0; border: 0; }
.egt-product-list .egt-product__price strong { font-size: 20px; }

/* Produkt-Raster für die Empfehlungsseite: Karten nebeneinander statt untereinander. */
.egt-article .wp-block-post-content .egt-product-grid {
	display: grid; grid-template-columns: repeat(auto-fill, minmax(228px, 1fr));
	gap: 16px; margin-block: 2em;
}
.egt-product-grid > .egt-product { margin: 0; }
.egt-product-grid .egt-card__body { padding: 14px 16px 16px; }
.egt-product-grid .egt-product__title { font-size: 15px; line-height: 1.35; }
.egt-product-grid .egt-product__text { font-size: 13.5px; margin: 6px 0 12px; }
.egt-product-grid .egt-product__buy { display: flex; flex-direction: column; gap: 10px; padding-top: 12px; border-top: 1px solid var(--egt-line); }
.egt-product-grid .egt-product__price { margin: 0; padding: 0; border: 0; }
.egt-product-grid .egt-product__price strong { font-size: 19px; }
.egt-product-grid .egt-btn--amazon { width: 100%; text-align: center; }
.egt-article .wp-block-post-content .egt-product-grid img { border-radius: 0; max-height: none; }

/* Liegt bei AAWP kein Preis vor, ist das Produkt bei Amazon meist nicht bestellbar. */
.egt-product__hint { color: #c26a00; font-weight: 600; }

/* Auf dem Handy wird aus jeder Rasterkarte eine Querkarte: Bild links, Text rechts.
   Ein 4:3-Bild über die volle Breite macht die Karte sonst rund 500 px hoch,
   und sieben Produkte werden zur endlosen Rolle. */
@media (max-width: 560px) {
	.egt-product-grid .egt-product,
	.egt-product-list .egt-product { flex-direction: row; }
	.egt-product-grid .egt-product .egt-product__image,
	.egt-product-list .egt-product .egt-product__image {
		flex: 0 0 96px; aspect-ratio: auto; min-height: 0; padding: 8px;
		border-bottom: 0; border-right: 1px solid var(--egt-line);
	}
	.egt-product-grid .egt-card__body,
	.egt-product-list .egt-card__body { padding: 12px 13px; min-width: 0; }
	.egt-product-grid .egt-product__label,
	.egt-product-list .egt-product__label { font-size: 10px; }
	.egt-product-grid .egt-product__title,
	.egt-product-list .egt-product__title { font-size: 14px; line-height: 1.3; }
	.egt-product-grid .egt-product__text,
	.egt-product-list .egt-product__text { font-size: 13px; margin: 4px 0 10px; }
	.egt-product-grid .egt-product__buy,
	.egt-product-list .egt-product__buy { flex-direction: column; align-items: stretch; gap: 8px; padding-top: 10px; }
	.egt-product-grid .egt-product__price strong,
	.egt-product-list .egt-product__price strong { font-size: 17px; }
	.egt-product-grid .egt-btn--amazon,
	.egt-product-list .egt-btn--amazon { width: 100%; flex: none; text-align: center; }
}

.egt-sidebar { height: 100%; display: flex; flex-direction: column; gap: 20px; }
.egt-sidebar > * { margin: 0 !important; }
.egt-sidebox { background: var(--egt-navy-800); color: #dfe8f2; border-radius: var(--egt-radius); padding: 24px; }
.egt-sidebox .egt-eyebrow { color: #7fb4f0; }
.egt-sidebox h3 { color: #fff; font-size: 20px; }
.wp-block-group.egt-sidebox p { font-size: 14px; margin-top: 10px; }
.wp-block-group.egt-sidebox ul { list-style: none; padding: 0; margin: 14px 0 20px; font-size: 14px; display: grid; gap: 6px; }
.egt-sidebox li::before { content: "✓"; color: #7fb4f0; font-weight: 700; margin-right: 8px; }
.egt-sidebox .wp-block-button, .egt-sidebox .wp-block-button__link { width: 100%; text-align: center; }

/* Navigationspfad und Lesezeit */
.egt-breadcrumbs { font-size: 13px; color: var(--egt-muted); margin: 0 0 18px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.egt-breadcrumbs a { color: var(--egt-muted); text-decoration: none; }
.egt-breadcrumbs a:hover { color: var(--egt-blue-600); text-decoration: underline; }
.egt-breadcrumbs .breadcrumb_last { color: var(--egt-ink); }
.egt-article__meta .egt-reading-time { margin: 0; font-size: inherit; }
.egt-article__meta .egt-reading-time::before { content: "·"; margin-right: 18px; margin-left: -12px; color: var(--egt-line); }

/* Inhaltsverzeichnis */
.egt-toc a { color: var(--egt-ink); text-decoration: none; }
.egt-toc a:hover { color: var(--egt-blue-600); }
.egt-toc__list { list-style: none; margin: 0; padding: 0; counter-reset: egt-toc; font-size: 14px; line-height: 1.4; }
.egt-toc__list li { counter-increment: egt-toc; }
.egt-toc__list a { display: flex; gap: 10px; padding: 7px 10px; border-radius: 6px; }
.egt-toc__list a::before { content: counter(egt-toc); flex: none; min-width: 1.2em; font-weight: 700; color: var(--egt-muted); font-variant-numeric: tabular-nums; }
.egt-toc__list a.is-active { background: var(--egt-blue-50); color: var(--egt-navy-800); font-weight: 600; }
.egt-toc__list a.is-active::before { color: var(--egt-blue-600); }

.egt-toc--sidebar {
	position: sticky; top: calc(100px + var(--egt-sticky-top));
	max-height: calc(100vh - 124px - var(--egt-sticky-top)); overflow-y: auto;
	background: #fff; border: 1px solid var(--egt-line); border-radius: var(--egt-radius); padding: 18px 14px;
}
.egt-toc__title { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--egt-navy-800); margin: 0 0 8px 10px; }

.egt-toc--inline { display: none; margin-block: 22px 0; border: 1px solid var(--egt-line); border-radius: var(--egt-radius); background: #fff; }
.egt-toc--inline summary { display: flex; align-items: center; gap: 10px; padding: 14px 18px; cursor: pointer; font-weight: 700; color: var(--egt-navy-800); list-style: none; }
.egt-toc--inline summary::-webkit-details-marker { display: none; }
.egt-toc--inline summary span { font-size: 13px; font-weight: 500; color: var(--egt-muted); }
.egt-toc--inline summary::after { content: ""; margin-left: auto; width: 8px; height: 8px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-3px); transition: transform .2s; }
.egt-toc--inline details[open] summary::after { transform: rotate(-135deg) translateX(-3px); }
.egt-toc--inline .egt-toc__list { padding: 0 8px 12px; }

.egt-article .wp-block-post-content h2[id] { scroll-margin-top: calc(100px + var(--egt-sticky-top)); }
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Hinweis-Kästen (Absatz-Stile) */
/* Netz gegen überlange zusammengesetzte Wörter (etwa mit Schrägstrich, an dem
   Browser nicht trennen). break-word bricht nur, wenn das Wort sonst aus der
   Spalte liefe, und lässt normalen Text unberührt. */
:is(.egt-article, .egt-page) .wp-block-post-content :is(p, li, dt, dd, figcaption) {
	overflow-wrap: break-word;
}

:is(.egt-article, .egt-page) .wp-block-post-content p[class*="is-style-egt-"] {
	position: relative; margin-block: 1.6em; padding: 16px 20px 16px 58px;
	border-radius: var(--egt-radius); font-size: 16px; line-height: 1.65;
	background: var(--egt-callout-bg); border: 1px solid var(--egt-callout-line);
}
:is(.egt-article, .egt-page) .wp-block-post-content p[class*="is-style-egt-"]::before {
	content: ""; position: absolute; left: 18px; top: 17px; width: 24px; height: 24px;
	background: var(--egt-callout-accent); -webkit-mask: var(--egt-callout-icon) center / contain no-repeat; mask: var(--egt-callout-icon) center / contain no-repeat;
}
p.is-style-egt-tipp {
	--egt-callout-bg: #eefaf3; --egt-callout-line: #cdebd9; --egt-callout-accent: #1f8a4c;
	--egt-callout-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6M10 21h4M12 3a6 6 0 0 0-3.5 10.9c.6.5 1 1.2 1 2.1h5c0-.9.4-1.6 1-2.1A6 6 0 0 0 12 3z'/%3E%3C/svg%3E");
}
p.is-style-egt-achtung {
	--egt-callout-bg: #fff6ea; --egt-callout-line: #f6ddb8; --egt-callout-accent: #c26a00;
	--egt-callout-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.3 3.9 1.8 18a2 2 0 0 0 1.7 3h17a2 2 0 0 0 1.7-3L13.7 3.9a2 2 0 0 0-3.4 0z'/%3E%3Cpath d='M12 9v4M12 17h.01'/%3E%3C/svg%3E");
}
p.is-style-egt-info {
	--egt-callout-bg: var(--egt-blue-50); --egt-callout-line: #d5e3f3; --egt-callout-accent: var(--egt-blue-600);
	--egt-callout-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v5M12 8h.01'/%3E%3C/svg%3E");
}
p.is-style-egt-link {
	--egt-callout-bg: #fff; --egt-callout-line: var(--egt-line); --egt-callout-accent: var(--egt-amazon);
	--egt-callout-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1.5'/%3E%3Ccircle cx='18' cy='20' r='1.5'/%3E%3Cpath d='M2 3h3l2.7 12.2a2 2 0 0 0 2 1.6h8.1a2 2 0 0 0 2-1.5L22 8H6'/%3E%3C/svg%3E");
	box-shadow: var(--egt-shadow);
}
:is(.egt-article, .egt-page) .wp-block-post-content p.is-style-egt-link a { font-weight: 700; text-decoration: none; }
:is(.egt-article, .egt-page) .wp-block-post-content p.is-style-egt-link a::after { content: " →"; }
:is(.egt-article, .egt-page) .wp-block-post-content p.is-style-egt-link a:hover { text-decoration: underline; }

/* Artikelende: Redaktion und Handwerker-Hinweis */
.wp-block-group.egt-author, .wp-block-group.egt-cta { margin-top: 48px; }
.egt-author { display: flex; gap: 18px; padding: 22px 24px; background: var(--egt-soft); border-radius: var(--egt-radius); }
.wp-block-group.egt-author > *, .wp-block-group.egt-author__body > *, .wp-block-group.egt-cta > *, .wp-block-group.egt-cta__copy > * { margin-block: 0; }
.egt-author__icon { flex: none; width: 48px; height: 48px; border-radius: 50%; background: var(--egt-navy-800); color: #fff; display: grid; place-items: center; }
.egt-author__icon svg { width: 24px; height: 24px; }
.egt-author__body { font-size: 15px; line-height: 1.6; color: var(--egt-ink); }
.egt-author__body p + p { margin-top: 8px !important; }
.egt-author__name { font-weight: 800; color: var(--egt-navy-800); font-size: 16px; }
.egt-author__note { font-size: 13px; color: var(--egt-muted); }

.egt-cta { display: flex; align-items: center; gap: 28px; padding: 28px 30px; border-radius: var(--egt-radius); background: var(--egt-navy-800); color: #cbd8e7; }
.egt-cta .egt-eyebrow { color: #7fb4f0; margin-bottom: 6px !important; }
.egt-cta__title { color: #fff; font-size: 22px; }
.egt-cta__copy p:last-child { margin-top: 8px !important; font-size: 15px; }
.egt-cta__action { flex: none; }

/* Passende Ratgeber */
.egt-related { margin-top: 72px; padding-top: 48px; border-top: 1px solid var(--egt-line); }
.egt-related__title { font-size: var(--wp--preset--font-size--x-large); margin: 0 0 28px; }
.egt-related__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.egt-related .egt-card__image { display: block; overflow: hidden; background: var(--egt-soft); }
.egt-related .egt-card__excerpt { margin: 8px 0 14px; }

/* ==========================================================================
   9b. Seiten (Anfrage, Affiliate-Hinweis, Rechtliches)
   ========================================================================== */
.egt-page { padding-block: 40px 80px; }
.egt-page__title { font-size: var(--wp--preset--font-size--xx-large); margin: 0; }
.egt-page__content { margin-top: 18px; }
.egt-page__content > .wp-block-group:not(.alignwide):not(.egt-lead) { margin-left: 0 !important; }
.egt-page .wp-block-post-content > :where(p, ul, ol, h2, h3) { margin-left: 0 !important; max-width: 760px; }
.egt-page .wp-block-post-content h2 { font-size: 1.5rem; margin-top: 1.8em; }
.egt-page .wp-block-post-content { font-size: 17px; line-height: 1.7; }
.egt-page .egt-page__lead { font-size: 19px; line-height: 1.6; color: var(--egt-muted); }
/* Seitenkopf mit Text links und Bild rechts (Spalten-Block mit Klasse egt-intro, z. B. /fuer-handwerker/) */
.egt-page .wp-block-columns.egt-intro { align-items: center; gap: 48px; margin-block: 8px 12px; }
.egt-intro .egt-page__lead { margin-top: 0; }
.egt-intro .wp-block-image { margin: 0; }

/* Handwerker-Anfrage */
.egt-lead { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 40px; align-items: start; margin-top: 32px !important; }
.wp-block-group.egt-lead > *, .wp-block-group.egt-lead__aside > * { margin-block: 0; }
.egt-lead__form { background: #fff; border: 1px solid var(--egt-line); border-radius: var(--egt-radius); box-shadow: var(--egt-shadow); padding: 8px; }
.egt-lead__aside { position: sticky; top: calc(100px + var(--egt-sticky-top)); }
.egt-lead__aside h2 { color: #fff; font-size: 22px; margin: 0 !important; }
.wp-block-group.egt-lead__aside .egt-eyebrow { margin-bottom: 8px; }
.egt-sidebox .egt-steps { list-style: none; counter-reset: egt-step; padding: 0; margin: 20px 0 22px; display: grid; gap: 16px; font-size: 15px; }
.egt-sidebox .egt-steps li { counter-increment: egt-step; position: relative; padding-left: 42px; line-height: 1.5; }
.egt-sidebox .egt-steps li::before {
	content: counter(egt-step); position: absolute; left: 0; top: -2px; margin: 0; width: 30px; height: 30px; border-radius: 50%;
	display: grid; place-items: center; background: rgba(127, 180, 240, .18); color: #fff; font-size: 14px;
}
.egt-sidebox .egt-steps strong { color: #fff; display: block; }
.wp-block-group.egt-lead__aside ul { padding-top: 18px; border-top: 1px solid rgba(255, 255, 255, .14); margin-bottom: 0; }
.wp-block-group.egt-lead__aside .egt-lead__note { margin-top: 16px; font-size: 13px; color: #a9bdd3; }
.egt-lead__aside a { color: #fff; text-underline-offset: 3px; }
.egt-lead__aside a:hover { color: #7fb4f0; }
.egt-page .egt-lead__privacy { font-size: 13px; line-height: 1.55; color: var(--egt-muted); margin-top: 18px; max-width: none; }

/* Kostenrechner */
.egt-calc { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: 0; margin-block: 1.6em 2em; border: 1px solid var(--egt-line); border-radius: var(--egt-radius); overflow: hidden; background: #fff; box-shadow: var(--egt-shadow); font-size: 15px; line-height: 1.5; }
.egt-calc__form { padding: 22px 24px; }
.egt-calc__part[hidden] { display: none; }
.egt-calc__group { border: 0; padding: 0; margin: 0 0 18px; display: flex; flex-wrap: wrap; gap: 8px; }
.egt-calc__group legend { width: 100%; padding: 0; margin-bottom: 8px; font-weight: 700; color: var(--egt-navy-800); }
.egt-calc__option { position: relative; margin: 0; }
.egt-calc__option input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.egt-calc__option span { display: block; padding: 8px 14px; border: 1px solid var(--egt-line); border-radius: 999px; background: #fff; color: var(--egt-ink); cursor: pointer; transition: border-color .15s, background-color .15s; }
.egt-calc__option input:checked + span { border-color: var(--egt-blue-600); background: var(--egt-blue-50); color: var(--egt-navy-800); font-weight: 700; }
.egt-calc__option input:focus-visible + span { outline: 2px solid var(--egt-blue-500); outline-offset: 2px; }
.egt-calc__option input:disabled + span { opacity: .45; cursor: not-allowed; }
.egt-calc__check { display: flex; gap: 10px; align-items: flex-start; margin: 0; }
.egt-calc__check input { flex: none; width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--egt-blue-600); }
.egt-calc__result { display: flex; flex-direction: column; justify-content: center; padding: 24px; background: var(--egt-navy-800); color: #dfe8f2; }
.egt-calc__result p { margin: 0; }
.egt-calc__label { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #7fb4f0; }
.egt-calc .egt-calc__price { margin-top: 6px; font-size: 26px; font-weight: 800; line-height: 1.2; color: #fff; }
.egt-calc .egt-calc__note { margin-top: 10px; font-size: 14px; color: #c7d5e5; }
.egt-calc .egt-calc__action { margin-top: 18px; }
.egt-calc__action .wp-element-button { display: block; text-align: center; }
.egt-calc__noscript { grid-column: 1 / -1; margin: 0; padding: 16px 24px; background: var(--egt-soft); }

/* Formular-Plugin an das Theme anpassen */
.egt-lead .fluentform { font-family: inherit; }
.egt-sidebox--light .wp-block-post-title { font-size: 14px; font-weight: 600; margin: 0; }
.egt-sidebox--light .wp-block-post-title a { color: var(--egt-ink); text-decoration: none; }
.egt-sidebox--light .wp-block-post-title a:hover { color: var(--egt-blue-600); }

/* ==========================================================================
   9c. Übersichten: Ratgeber-Seite und Kategorie-Archive
   ========================================================================== */
.egt-page__head .egt-page__lead { max-width: 760px; margin-top: 14px; }
.egt-page__head .egt-page__lead p { margin: 0; }
.egt-archive .egt-ratgeber__query { margin-top: 32px; }
.egt-archive .wp-block-query-pagination { margin-top: 32px; }
.egt-archive__cta { margin-top: 56px; }
.egt-page .wp-block-post-content .egt-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-block: 1.2em 2em; }
.egt-page .wp-block-post-content .egt-options--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.egt-page .wp-block-post-content .egt-option p:not(.egt-option__link) { color: var(--egt-muted); }
.egt-page .wp-block-post-content .egt-ratgeber__query { margin-block: 1.2em 2em; }

/* ==========================================================================
   10. Footer
   ========================================================================== */
.egt-footer { background: var(--egt-navy-900); color: #b9c7d8; font-size: 14px; padding-top: 56px; }
.egt-footer a { color: inherit; text-decoration: none; }
.egt-footer a:hover { color: #fff; }
.egt-footer__grid { gap: 32px; padding-bottom: 40px; }
.egt-footer .egt-brand__logo, .egt-footer .egt-brand__name a { color: #fff; }
.egt-footer .egt-brand__tag { color: #8ea3bb; }
.egt-footer__about { max-width: 300px; margin-top: 16px; }
.egt-footer__title { color: #fff; font-size: 14px; margin: 0 0 14px; }
.egt-footer__links { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.egt-footer__bottom {
	border-top: 1px solid rgba(255, 255, 255, .1); padding-block: 18px;
	justify-content: space-between; gap: 12px 20px; font-size: 12px; color: #8ea3bb;
}
.egt-footer__bottom p { margin: 0; }

/* ==========================================================================
   11. Responsive
   ========================================================================== */
@media (max-width: 1080px) {
	/* Navigation früher einklappen als der Core-Standard (600px) */
	.egt-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.egt-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
	.egt-nav .wp-block-navigation__responsive-container-close:not(.always-shown) { display: flex; }

	/* Mobiles Menü: volle Breite, große Tap-Flächen, Untermenü eingerückt.
	   Die langen Präfixe sind nötig, sonst gewinnen die Core- und die Desktop-Regel. */
	.wp-block-navigation__responsive-container.is-menu-open:has(.egt-nav) {
		padding: 14px 16px calc(24px + env(safe-area-inset-bottom, 0px));
	}
	.is-menu-open:has(.egt-nav) .wp-block-navigation__responsive-container-content {
		width: 100%; align-items: stretch; padding-top: 40px;
	}
	.is-menu-open:has(.egt-nav) .wp-block-navigation__responsive-container-close {
		top: 10px; right: 8px; width: 44px; height: 44px; padding: 10px;
	}
	.wp-block-navigation__responsive-container.is-menu-open .egt-nav .wp-block-navigation__container,
	.wp-block-navigation__responsive-container.is-menu-open .egt-nav .wp-block-navigation-item {
		width: 100%; align-items: stretch;
	}
	.is-menu-open .wp-block-navigation__container.egt-nav { gap: 0; }
	.wp-block-navigation__responsive-container.is-menu-open .egt-nav .wp-block-navigation-item__content {
		display: block; box-sizing: border-box; width: 100%;
		padding: 13px 12px; min-height: 0;
		font-size: 17px; text-align: left; border-radius: 8px;
	}
	.is-menu-open .egt-nav > .wp-block-navigation-item + .wp-block-navigation-item {
		border-top: 1px solid var(--egt-line);
	}
	.wp-block-navigation__responsive-container.is-menu-open .egt-nav .wp-block-navigation__submenu-container {
		position: static; width: 100%; min-width: 0; background: transparent;
		padding: 0 0 6px 12px; border: 0 !important; box-shadow: none;
	}
	.wp-block-navigation__responsive-container.is-menu-open .egt-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
		padding: 11px 12px; font-size: 15.5px; color: var(--egt-muted);
	}
	.is-menu-open .egt-nav .wp-block-navigation__submenu-container .wp-block-navigation-item + .wp-block-navigation-item { border-top: 0; }
	.is-menu-open .egt-nav .wp-block-navigation-submenu__toggle { margin-left: 0; padding-right: 12px; }
	.is-menu-open .egt-nav > .egt-nav__cta { border-top: 0; }
	.is-menu-open .egt-nav .egt-nav__cta > .wp-block-navigation-item__content {
		margin-top: 14px; background: var(--egt-navy-800); color: #fff;
		text-align: center; font-weight: 700;
	}

	.egt-features__grid { grid-template-columns: repeat(2, 1fr); }
	.egt-feature:nth-child(3) { border-left: 0; }
	.egt-feature:nth-child(n+3) { border-top: 1px solid var(--egt-line); }
	.egt-ratgeber { grid-template-columns: 1fr; }
	.egt-cards-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.egt-service { grid-template-columns: 1fr; }
	.egt-service__media { min-height: clamp(220px, 34vw, 360px); background-position: 40% 45%; }
	.egt-article { flex-wrap: wrap !important; }
	.egt-article > .wp-block-column { flex-basis: 100% !important; }
	/* Seitenleiste entfällt: Verzeichnis steht über dem Text, Handwerker-Hinweis unter dem Artikel */
	.egt-article > .wp-block-column:has(.egt-sidebar) { display: none; }
	.egt-toc--inline { display: block; }
	.egt-related__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.egt-related__grid > :nth-child(3) { display: none; }
	.egt-lead { grid-template-columns: minmax(0, 1fr); }
	.egt-lead__aside { position: static; }
	.egt-page .wp-block-post-content .egt-options,
	.egt-page .egt-ratgeber__query .wp-block-post-template.is-layout-grid,
	.egt-page .egt-ratgeber__query .wp-block-post-template { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Nur zwischen 561 und 720 px: dort ist die Karte noch "Bild oben" und der Knopf
   soll in eine eigene Zeile umbrechen. Ohne die Untergrenze gilt das auch auf dem
   Handy, wo die 560er-Abfrage auf eine Spalte umstellt – dann wirkt die Basis 100 %
   auf die Höhe, und der Knopf läuft rechts aus der Karte heraus. */
@media (min-width: 561px) and (max-width: 720px) {
	.egt-product-list .egt-product__buy { flex-wrap: wrap; }
	.egt-product-list .egt-btn--amazon { flex: 1 1 100%; }
}

@media (max-width: 720px) {
	.egt-section { padding-block: 52px; }
	.wp-block-image.egt-grafik figcaption::after { content: " Zum Vergrößern antippen."; font-weight: 600; }
	.egt-service__media { background-image: url(assets/img/startseite-service-800.webp); }
	.egt-header__inner { gap: 4px; }
	.egt-brand { gap: 8px; min-width: 0; }
	.egt-brand__logo svg { width: 32px; height: 32px; }
	.egt-brand__name { font-size: 15px; }
	.egt-brand__tag { display: none; }

	.egt-hero { min-height: 0; padding-block: 56px 72px; background-image: url(assets/img/startseite-hero-960.webp); }
	.egt-hero::before { background: linear-gradient(180deg, rgba(10, 28, 51, .66) 0%, rgba(10, 28, 51, .48) 100%); }
	.egt-hero__copy { text-shadow: 0 1px 3px rgba(10, 28, 51, .9), 0 2px 14px rgba(10, 28, 51, .75); }
	.egt-hero__copy .wp-block-button__link { text-shadow: none; }

	.egt-features__grid,
	.egt-ratgeber__query .wp-block-post-template.is-layout-grid,
	.egt-ratgeber__query .wp-block-post-template,
	.egt-cards-4,
	.egt-benefits { grid-template-columns: 1fr; }
	.egt-feature + .egt-feature { border-left: 0; border-top: 1px solid var(--egt-line); }

	.egt-service__copy { padding: 44px 16px; }
	.egt-plz-form { flex-direction: column; }
	.egt-plz-form input { flex: auto; border-right: 0; border-bottom: 1px solid var(--egt-line); }

	.egt-cta { flex-direction: column; align-items: stretch; padding: 24px 20px; }
	.egt-cta__action .wp-block-button, .egt-cta__action .wp-block-button__link { width: 100%; text-align: center; }
	.egt-author { flex-direction: column; gap: 12px; padding: 20px; }
	.egt-related__grid { grid-template-columns: 1fr; }
	.egt-related__grid > :nth-child(3) { display: flex; }
	.egt-article .wp-block-post-content .egt-options,
	.egt-page .wp-block-post-content .egt-options,
	.egt-page .egt-ratgeber__query .wp-block-post-template.is-layout-grid,
	.egt-page .egt-ratgeber__query .wp-block-post-template { grid-template-columns: 1fr; }
	/* Tabellen seitlich wischbar statt Wörter mitten im Wort umzubrechen */
	.egt-article .wp-block-post-content .wp-block-table table { table-layout: auto; min-width: 540px; font-size: 14px; }
	.egt-article .wp-block-post-content .wp-block-table :is(td, th) { padding: 8px 10px; overflow-wrap: normal; word-break: normal; hyphens: auto; }
	.egt-article__meta .egt-reading-time::before { content: none; }
	.egt-article .wp-block-post-content .egt-summary { padding: 18px; }
	:is(.egt-article, .egt-page) .wp-block-post-content p[class*="is-style-egt-"] { padding: 14px 16px 14px 50px; }
	:is(.egt-article, .egt-page) .wp-block-post-content p[class*="is-style-egt-"]::before { left: 14px; top: 15px; width: 22px; height: 22px; }

	/* Formular: Auswahlfelder untereinander (Spalten setzt das Plugin inline) */
	.egt-calc { grid-template-columns: minmax(0, 1fr); }
	.egt-calc__form, .egt-calc__result { padding: 18px 16px; }
	.egt-lead__form { padding: 0; }
}
