/*
Theme Name: GeneratePress Child theme of generatepress
Theme URI: 
Description: Child theme of generatepress theme for the GeneratePress theme
Author: <a href="https://tomusborne.com">Tom Usborne</a>
Author URI: 
Template: generatepress
Version: 3.3.0
*/

/* Generated by Orbisius Child Theme Creator (https://orbisius.com/products/wordpress-plugins/orbisius-child-theme-creator/) on Mon, 12 Jun 2023 09:55:27 +0000 */ 
/* The plugin now uses the recommended approach for loading the css files.*/


/* =====================================================================
   Ersatz für Stackable-Blöcke (Umbau auf Core-/Kadence-Blöcke, Okt. 2026)
   Die Klassen gz-* setzt das Umbau-Skript; im Editor unter
   „Erweitert → Zusätzliche CSS-Klasse(n)“ wiederverwendbar.
   ===================================================================== */

/* Weiße Box (früher Stackable v2 „Container“) */
.gz-box {
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 5px 5px 0 rgba(18, 63, 82, .035), 0 0 0 1px rgba(176, 181, 193, .2);
	padding: 60px 35px;
	margin-top: 35px;
	margin-bottom: 30px;
}

/* Karte (früher Stackable „Card“) */
.gz-card {
	background: #fff;
	color: #1e1e1e;
	box-shadow: 0 4px 24px 0 rgba(0, 0, 0, .04);
	padding: 32px;
	margin-bottom: 30px;
}

/* GeneratePress gibt Gruppen-Innencontainern 40px Padding – hier nicht gewünscht */
.gz-box > .wp-block-group__inner-container,
.gz-card > .wp-block-group__inner-container { padding: 0; }
.gz-box > .wp-block-group__inner-container > :first-child,
.gz-card > .wp-block-group__inner-container > :first-child { margin-top: 0; }
.gz-box > .wp-block-group__inner-container > :last-child,
.gz-card > .wp-block-group__inner-container > :last-child { margin-bottom: 0; }

@media (max-width: 767px) {
	.gz-box { padding: 35px 20px; }
	.gz-card { padding: 24px; }
}

/* Abstände wie bei Stackable: v3-Blöcke 24px unten (nicht als letzter Block),
   v2-Blöcke 35px oben / 30px unten. Im Block gesetzte Abstände haben Vorrang. */
.gz-stk { margin-bottom: 24px; }
.gz-stk:last-child { margin-bottom: 0; }
.gz-mb-23 { margin-bottom: 23px; }
.gz-v2-mt { margin-top: 35px; }
.gz-v2-mb { margin-bottom: 30px; }

/* Bilder füllen ihre Spalte (wie bei Stackable) */
.wp-block-image.gz-img img { width: 100%; }

/* Buttons übernehmen die Schrift der Seite */
.gz-btns .kb-button {
	font-size: inherit;
	line-height: 40px;
}
.gz-btns-v2 .kb-button { line-height: 30px; margin-bottom: 10px; }

/* Button-Gruppe mit gleich breiten Buttons */
.gz-btns-equal { flex-wrap: nowrap; }
.gz-btns-equal > .kb-button { flex: 1 1 0; justify-content: center; }
@media (max-width: 767px) {
	.gz-btns-equal { flex-wrap: wrap; }
	.gz-btns-equal > .kb-button { flex-basis: 100%; }
}

/* Akkordeon (früher Stackable v2 „Accordion“) */
.gz-accordion { margin-top: 35px; margin-bottom: 30px; }
.gz-accordion > summary {
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 5px 5px 0 rgba(18, 63, 82, .035), 0 0 0 1px rgba(176, 181, 193, .2);
	padding: 17.5px 35px;
	cursor: pointer;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.gz-accordion > summary::-webkit-details-marker { display: none; }
.gz-accordion > summary::after {
	content: "";
	width: 12px;
	height: 12px;
	border-right: 3px solid currentColor;
	border-bottom: 3px solid currentColor;
	transform: rotate(45deg);
	transition: transform .2s;
	margin-left: 1em;
}
.gz-accordion[open] > summary::after { transform: rotate(-135deg); }
.gz-accordion > :not(summary) { padding: 0 35px; }
.gz-accordion > summary + * { margin-top: 20px; }

/* Beitragsliste „Wie es laufen kann“ (früher Stackable „Posts“, volle Containerbreite) */
ul.wp-block-kadence-posts.kb-posts.gz-posts { column-gap: 0; row-gap: 0; }
@media (min-width: 1025px) {
	ul.wp-block-kadence-posts.kb-posts.gz-posts { margin-left: -40px; margin-right: -40px; }
}
.wp-block-kadence-posts.gz-posts .loop-entry {
	background: linear-gradient(180deg, var(--base) 0%, #ffeeee 100%);
	border: 2px dashed #1e1e1e;
	border-radius: 17px;
	box-shadow: 0 5px 30px -10px rgba(18, 63, 82, .3);
	margin: 12px;
	text-align: center;
	height: calc(100% - 24px);
}
.wp-block-kadence-posts.gz-posts .loop-entry .entry-content-wrap { padding: 32px; }
.wp-block-kadence-posts.gz-posts .entry-header { margin-bottom: 24px; }
.wp-block-kadence-posts.gz-posts .entry-title {
	font-size: 30px;
	font-weight: 300;
	line-height: 36px;
	margin: 0;
	color: #1e1e1e;
}
.wp-block-kadence-posts.gz-posts .entry-title a { color: #122538; }
.wp-block-kadence-posts.gz-posts .entry-footer,
.wp-block-kadence-posts.gz-posts .more-link-wrap { margin: 0; }
.wp-block-kadence-posts.gz-posts .post-more-link {
	color: var(--accent);
	font-size: 20px;
	line-height: 40px;
	font-weight: 400;
	letter-spacing: normal;
	text-transform: uppercase;
}
.wp-block-kadence-posts.gz-posts .post-more-link .kadence-svg-iconset { display: none; }

/* Inhaltsverzeichnis */
.gz-toc .kb-table-of-contents-title { font-weight: inherit; }
.gz-toc .kb-table-of-content-list {
	margin: 0;
	padding: 0;
	list-style-position: inside;
}
.gz-toc .kb-table-of-content-list li { margin: 0; }
.gz-toc .kb-table-of-content-list a.kb-table-of-contents__entry { color: var(--accent); }
.gz-toc { margin-bottom: 30px; }

/* Alt-HTML mit Stackable-v2-Klassen in den If-So-Inhalten („Regionale Hilfsangebote“) */
.ugb-button-wrapper .ugb-button-container { text-align: center; margin-bottom: 10px; }

/* Video-Popup: greift ohne Kadence Pro; mit Pro setzen die Block-Einstellungen dasselbe */
.gz-videopopup .kadence-video-popup-wrap {
	border-radius: 49px;
	overflow: hidden;
	filter: drop-shadow(0 2px 20px rgba(153, 153, 153, .2));
}
.gz-videopopup .kadence-video-overlay { opacity: 0; }
.gz-videopopup:hover .kadence-video-overlay { opacity: .1; }
.gz-videopopup .kadence-video-popup-link .kb-svg-icon-wrap,
.gz-videopopup .kadence-video-popup-link svg { color: #3a3a3a; opacity: .6; }
