/*
 Theme Name:   2023 child
 Description:  Child Theme
 Author:       
 Template:     twentytwentythree
 Version:      1.0
 Text Domain:  2023-child2
*/

@viewport {
	width: device-width;	
	zoom: 1;	
	}


	:root {
		--base-font-size: 16px;
	}


	@font-face {
		font-family: 'ssp_r';
		src: url('fonts/SourceSansPro-Regular.ttf');
		font-weight: normal;
		font-style: normal;
		font-display: swap;
	
	}
	
	
	
	@font-face {
		font-family: 'ssp_b';
		src: url('fonts/SourceSansPro-Bold.ttf');
		font-weight: normal;
		font-style: normal;
		font-display: swap;
	
	}
	
	
	@font-face {
		font-family: 'ssp_l';
		src: url('fonts/SourceSansPro-Light.ttf');
		font-weight: normal;
		font-style: normal;
		font-display: swap;
	
	}


	@font-face {
		font-family: 'os';
		src: url('fonts/OpenSans-VariableFont_wdth,wght.ttf');
		font-weight: normal;
		font-style: normal;
		font-display: swap;
	
	}

	@font-face {
		font-family: 'cav';
		src: url('fonts/Caveat-VariableFont_wght.ttf');
		font-weight: normal;
		font-style: normal;
		font-display: swap;
	
	}


	@media (prefers-color-scheme: dark) {
		:root {
			--bg-color: #000000;
			--text-color: #ffffff;
		}
	}



	
	:root {
		
		--bg-color: #dedddd;
		--text-color:#242424;
		--base-font-size: 18px;
		

   }
	
	html {
		max-width: 100%;
		overflow-x: hidden;
		scroll-behavior: smooth;
	}


.dk-bottom {display:none;}

body {				
font-family: 'ssp_r';	
background: var(--bg-color);;
color:var(--text-color);
font-size: var(--base-font-size);
padding: 0 !important;
}


body > .wp-site-blocks {
	padding:0;
	max-width: 1920px;
	margin: auto;
	box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
	background-color: white;
	
}



/* Header */


header {
	width: 100%;
	max-width: 1920px;
	margin:auto;
	top:2em;
	
	
	z-index:999;
	overflow: visible;
	background-color: rgb(255, 255, 255, 0.9);
	backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
	padding:0.5em 2em;
	box-sizing: border-box;
	position: fixed;
	width:100vw;
}


nav a {
	font-size: calc(var(--base-font-size));
	color: #031f37;
	font-family: 'os';
}

nav {
	color: #0A3A65 !important;
}
nav ul li a {position: relative;}
nav ul li a::after {width:0%; bottom:0px; height:2px; background-color: #0E68B4; left:50%; position: absolute; content:''; transition: all 1s ease;}
nav ul li a:hover {text-decoration: none;}
nav ul li a:hover::after {width:100%; bottom:0px; height:2px; background-color: #0E68B4; left:0; position: absolute; content:'';}

nav a:last-child {
	margin-right: 2em;
}

nav ul li:nth-child(6) {
	background-color: #F1CC2F;
	border-radius: 20px;
}

.logo {position: relative;}

.logo img {
	max-width: 120px;
	position: absolute;
	top: -30px;
	left: 30px;
	max-height: none;
	z-index: 1100;
}


.logo .logo_caption {margin-left:100px;}

.logo p:nth-child(1) {
	margin-bottom: -1em;
	color: #0A3A65;
	font-size: calc(var(--base-font-size) + 0.6em);
	font-family: 'os';
	font-weight: bold;
}

.logo h1 {
	color: #0E68B4;
	font-size: calc(var(--base-font-size) + 0.1em);
	font-family: 'os';
}



/*Startseite */

.hero {
	margin-top: 0;
    min-height: 80vh;
}

.hero p:first-child {font-size: calc(var(--base-font-size) + 0.2em); color: #0E68B4; position: relative; background-color: #F1CC2F; 
	width:100%; padding-top:3px; padding-bottom: 3px; padding-left:50%; left:-50%; border-top-right-radius: 20px; border-bottom-right-radius: 20px;}
.hero p:nth-child(2) {font-size: calc(var(--base-font-size) + 2em); color: #0A3A65; margin-top:-0.2em;}
.hero p:nth-child(3) {font-size: calc(var(--base-font-size) + 2em); color: #0A3A65; margin-top:-0.8em; position: relative}
.hero .wp-block-cover__inner-container {max-width:50%; width: 50%; position: absolute; top: 28%}

.hero p:nth-child(2) strong {font-size: calc(var(--base-font-size) + 1em); font-family: 'cav';}
.hero p:nth-child(3) strong {font-size: calc(var(--base-font-size) + 1em); font-family: 'cav'; font-weight: 600;}


.hero p:first-child:before {
	width:70px;
	height:70px;
	
	background: url('https://buergermeisterkandidat-kottmar.de/wp-content/uploads/2026/09/buergermeisterwahl-kreuz.png');
	position: absolute;
	left: calc(50% - 210px);
	background-size: cover;
	content:'';
	top:-15px;

}

.hero p:nth-child(3):after {
	background: url('https://buergermeisterkandidat-kottmar.de/wp-content/uploads/2026/09/gelber-strich.png');
	position: absolute;
	background-size: cover;
	content:'';
	width:250px;
	height:20px;
	bottom: 0;
	left: -0.2em;
}


.boxes {
	position: relative;
	margin-top: -110px;
	
}

.box img {margin-top: -3em;}
.box p:nth-child(2) a {font-weight: bold; color: #0A3A65; font-size: calc(var(--base-font-size) + 0.3em); margin-top: 0.5em; text-decoration: none;}
.box p:nth-child(3){margin-top: 0.5em; min-height:5em;}

.box {
	padding:1em;
	box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
	border-radius: 20px;
	background-color: rgba(255, 255, 255, 0.95);
 }


h2 {color: #0A3A65; font-size: calc(var(--base-font-size) + 1.5em);}
h3 {color: #0A3A65; font-size: calc(var(--base-font-size) + 1em);}
h4 {color: #0E68B4; font-size: calc(var(--base-font-size) + 0.5em);}
h5 {color: #0A3A65; font-size: calc(var(--base-font-size) + 0.2em); text-transform: none;}

.subheadline{
	margin-top:0;
	color: #0E68B4;
	font-size: calc(var(--base-font-size) + 0.2em)
}

.boldblue {
	color: #0A3A65;
	font-size: calc(var(--base-font-size) + 0.2em);
	font-weight: bold;
}

.lightblue {background-color: #E6EFF6;}
.darkblue {background-color: #0A3A65; color: #ffffff;}

.eibau {
	background-image: url(https://buergermeisterkandidat-kottmar.de/wp-content/uploads/2026/10/20261007_181108-scaled.jpg);
	background-size: cover;
}

.wp-block-button__link {
	background-color: #0A3A65;
	color: #ffffff;
	transition: all 0.5s ease;
	border-radius: 10px;
}

.wp-block-button__link:first-child:hover {
	background-color: #F1CC2F;
	color: #031f37;
}

.white-button .wp-block-button__link {
	background-color: white;
	color: #031f37;
	transition: all 0.5s ease;
	font-weight: bold;
	margin-top: -1em;
}

.white-button .wp-block-button__link:before {
	font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f061";
	color: #031f37;
	margin-right:1em;
}

.quote {font-size: calc(var(--base-font-size) + 1.5em); font-family: 'cav';}


/*Wahlprogramm*/

.target {font-size: calc(var(--base-font-size) + 0.8em); font-family: 'cav'; background-color: #0A3A65; color: #ffffff;}


.whitebox {
	padding:1em;
	box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
	border-radius: 20px;
	background-color: rgb(230, 239, 246, 0.3);

}

.whitebox p:nth-child(2){font-weight: bold; color: #0A3A65; font-size: calc(var(--base-font-size) + 0.3em);}
.whitebox p:nth-child(3){margin-top:0; min-height:5em;}
.whitebox img {margin-top: -3em;}

.arrowlist li {list-style: none; position: relative;}
.arrowlist li::before {
	font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f105";
	color: #0E68B4;
	position: absolute;
	margin-left: -1.5em;}





/*Kontakt */


.contact {
	background-color: rgb(230, 239, 246, 0.8);
	position: relative;
	margin-top: -4em;
	border-radius: 20px;
		backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.contact:before {
	background: url('https://buergermeisterkandidat-kottmar.de/wp-content/uploads/2026/09/icon1-gemeinde.png');
	position: absolute;
	background-size: cover;
	content:'';
	width:100px;
	height:100px;
	top:-2.5em;
	right: 50%;
	
}

.contact .tel:before {
	font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f095";
	color: #0A3A65;
	margin-right:1em;
}

.contact .mail:before {
	font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f0e0";
	color: #0A3A65;
	margin-right:1em;
}

.contact .location:before {
	font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f3c5";
	color: #0A3A65;
	margin-right:1em;
}

.contact .tel, .contact .location {margin-top: 0; color: #0E68B4;}
.contact .mail {color: #0E68B4;}

.bold {font-weight: bold;}
.handwritten {font-family: 'cav'; color: #0A3A65; font-size: calc(var(--base-font-size) + 1em); }









/* Footer */


footer {
	background-color: #0A3A65;
	color: white;
	position: relative;
	margin-top:260px;
}

footer::before{
	background-image: url('https://buergermeisterkandidat-kottmar.de/wp-content/uploads/2026/09/silouette-kottmar.png');
	width:100%;
	height:240px;
	top:-240px;
	left:0;
	content:'';
	position: absolute;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center 100%;
}

footer ul li a {color: white;text-decoration: none;}
footer ul li {list-style: none;}

footer .tel:before {
	font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f095";
	color: white;
	margin-right:1em;
}

footer .mail:before {
	font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f0e0";
	color: white;
	margin-right:1em;
}

footer .location:before {
	font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f3c5";
	color: white;
	margin-right:1em;
}

footer .tel, footer .location {margin-top: 0; color: #ffffff;}

footer h3 {font-size: calc(var(--base-font-size) + 0.4em); color: #ffffff;}

footer i {color: #ffffff;}

footer .name p:first-child {
	font-size: calc(var(--base-font-size) + 0.4em);
	font-weight: bold;
}

footer .name p:nth-child(2) {
	font-size: calc(var(--base-font-size) + 0.1em);
	margin-top:-1.5em;
}

footer .name p:nth-child(3) {
	font-size: calc(var(--base-font-size) + 0.3em);
	font-family: 'cav';
}

footer .whiteline {
	border-right: #ffffff 1px solid;
}

@media screen AND (max-width: 780px) {

}

@media screen AND (max-width: 600px) {

}

/* Aktuelles und Termine */
.dk-pages{padding-top:190px;--blue:#103e65;--yellow:#f1d32b;color:#242424;font-family:ssp_r,Arial,sans-serif;background:#fff}
.dk-pages *{box-sizing:border-box}
.dk-wrap{max-width:1400px;margin:auto;padding:60px 6%}
.dk-intro{background:#e7f0f6;border-bottom:5px solid var(--yellow)}
.dk-pages .dk-eyebrow{color:var(--blue);font-weight:700;letter-spacing:.09em;text-transform:uppercase;font-size:14px;margin:0 0 12px}
.dk-pages h1{font-family:os,ssp_r,sans-serif;font-size:clamp(36px,4vw,58px);line-height:1.15;color:var(--blue);margin:0 0 20px}
.dk-pages h2{font-size:28px;line-height:1.25;color:var(--blue);margin:12px 0 18px}
.dk-pages h3{font-size:24px;line-height:1.3;color:var(--blue);margin:12px 0}
.dk-pages p{font-size:18px;line-height:1.7;margin:0 0 18px}
.dk-lead{max-width:780px}
.dk-note{display:inline-block;background:#fff;padding:8px 14px;border-radius:6px;font-size:14px!important;color:#385770;margin-top:8px!important}
.dk-feature{display:grid;grid-template-columns:1.1fr 1fr;border-radius:18px;overflow:hidden;box-shadow:0 4px 15px #00000016;margin-bottom:40px;background:#fff}
.dk-feature img{width:100%;height:100%;min-height:320px;object-fit:cover;object-position:72% center}
.dk-feature-content{padding:36px}
.dk-tag{display:inline-block;background:var(--yellow);color:var(--blue);padding:5px 12px;border-radius:30px;font-size:14px;font-weight:700}
.dk-meta{font-size:15px!important;color:#526573;margin:14px 0 10px!important}
.dk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.dk-card{background:#fff;border-radius:18px;box-shadow:0 4px 12px #00000018;padding:30px;border-top:6px solid var(--yellow)}
.dk-card:nth-child(2){border-color:#91ce70}
.dk-card:nth-child(3){border-color:#3ca6e8}
.dk-link{display:inline-block;background:var(--blue);color:white!important;border-radius:28px;padding:12px 24px;text-decoration:none;font-size:18px}
.dk-bottom{background:#e7f0f6}
.dk-bottom .dk-wrap{padding-top:40px;padding-bottom:40px}
.dk-events{display:grid;gap:22px}
.dk-event{display:grid;grid-template-columns:105px 1fr;gap:30px;padding:28px;border-radius:18px;box-shadow:0 4px 12px #00000015;border:1px solid #e4eaf0;background:#fff}
.dk-date{border-radius:12px;background:var(--yellow);color:var(--blue);text-align:center;padding:18px 8px;align-self:start}
.dk-date strong{display:block;font-size:40px;line-height:1.1}
.dk-date span{display:block;font-size:16px}
.dk-event h2{margin:8px 0 10px}
.dk-event p:last-child{margin-bottom:0}
.dk-facts{color:var(--blue);font-weight:600}
.dk-month{margin:38px 0 24px!important}
.dk-month:first-child{margin-top:0!important}
@media(max-width:780px){.dk-wrap{padding:40px 6%}
.dk-feature{grid-template-columns:1fr}
.dk-feature img{height:240px;min-height:0}
.dk-feature-content{padding:26px}
.dk-grid{grid-template-columns:1fr}
.dk-event{grid-template-columns:76px 1fr;gap:18px;padding:20px}
.dk-date strong{font-size:32px}
.dk-pages h2{font-size:25px}
.dk-pages p{font-size:17px}
}
@media(max-width:420px){.dk-event{grid-template-columns:1fr}
.dk-date{width:90px}
.dk-pages h1{font-size:34px}
}

.dk-pages .dk-green { background: #91ce70; }
.dk-pages .dk-lightgreen { background: #d7edc8; }
.dk-pages .dk-lightblue { background: #b9e1fb; }


/* Gutenberg-Inhaltsblöcke: gleiche Darstellung im Editor und Frontend */
.dk-pages .dk-feature-image { margin: 0; height: 100%; }
.dk-pages .dk-feature-image img { display: block; }
.dk-pages p.dk-tag { font-size: 14px; line-height: 1.5; margin: 0; width: fit-content; }
.dk-pages p.dk-day { display: block; font-size: 40px; font-weight: 700; line-height: 1.1; margin: 0; }
.dk-pages p.dk-date-label { font-size: 16px; line-height: 1.7; margin: 0; }
.dk-pages .dk-button .wp-block-button__link { display: inline-block; background: var(--blue); color: white; border-radius: 28px; padding: 12px 24px; text-decoration: none; font-size: 18px; }
.dk-pages .wp-block-buttons { margin: 0; }
.dk-pages .dk-button .wp-block-button__link::before { content: none; }
@media (max-width: 780px) { .dk-pages p.dk-day { font-size: 32px; } }

.dk-pages .wp-block-group > .wp-block-group { margin-block-start: 0; }


/* Mobile und lokale Inhaltsabschnitte – Oktober 2026 */
*, *::before, *::after { box-sizing: border-box; }
body { line-height: 1.6; }
.wp-block-column { min-width: 0; }
.entry-content p, footer p { overflow-wrap: anywhere; }
input, textarea, select { max-width: 100%; font: inherit; }
:where(a, button, input, textarea, select):focus-visible { outline: 3px solid #0E68B4; outline-offset: 4px; }
[id] { scroll-margin-top: 180px; }
.dk-local-intro { max-width: 1200px; margin: 0 auto; padding: 40px 6%; }
.dk-local-intro h1, .dk-content-title { color: #0A3A65; font-size: clamp(1.6rem, 3vw, 2.7rem); line-height: 1.2; }
.logo .dk-brand-role { color: #0E68B4; font-size: calc(var(--base-font-size) + 0.1em); font-family: os, sans-serif; margin: 0; }
@media (max-width: 1200px) {
 header { padding: .75rem 1rem; }
 header .logo { padding-left: 0 !important; padding-right: 0 !important; }
 header .logo img { left: 0; }
 header nav a:last-child { margin-right: 0; }
 header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none !important; }
 header .wp-block-navigation__responsive-container-open { display: flex !important; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; }
 header .wp-block-navigation__responsive-container.is-menu-open { display: flex !important; background: #fff; color: #0A3A65; padding: 5rem 1.5rem 2rem; }
 header .wp-block-navigation__responsive-container.is-menu-open a { display: block; min-height: 44px; padding: .5rem 1rem; font-size: 1.15rem; }
 header .wp-block-navigation__responsive-container-close { min-width: 44px; min-height: 44px; }
 header nav ul li:nth-child(6) { padding-inline: .5rem; }
 .boxes > .wp-block-columns { flex-wrap: wrap !important; gap: 3.5rem 1.5rem; }
 .boxes > .wp-block-columns > .wp-block-column { flex-basis: calc(50% - .75rem) !important; flex-grow: 0; }
}
@media (max-width: 780px) {
 :root { --base-font-size: 18px; }
 header { position: sticky; top: 0; width: 100%; padding: .5rem 1rem; backdrop-filter: none; background: #fff; }
 header .logo { gap: .65rem; flex: 1; min-width: 0; }
 header .logo figure { margin: 0; flex: 0 0 42px; }
 header .logo img { position: static; width: 42px !important; max-width: 42px; height: auto; }
 header .logo .logo_caption { margin: 0; gap: .15rem; }
 header .logo p:first-child { margin: 0; font-size: 1.15rem; line-height: 1.25; }
 header .logo .dk-brand-role, header .logo h1 { font-size: .8rem; line-height: 1.3; margin: 0; }
 header > .wp-block-group > .wp-block-group { flex-wrap: nowrap; gap: .5rem; }
 header .wp-block-navigation__responsive-container.is-menu-open { position: fixed; inset: 0; overflow-y: auto; }
 [id] { scroll-margin-top: 100px; }
 .hero { min-height: 0 !important; display: block; background: #e6eff6; padding: 0 1.25rem 1.75rem !important; }
 .hero .wp-block-cover__image-background { position: relative; display: block; width: calc(100% + 2.5rem); max-width: none; margin-left: -1.25rem; height: clamp(230px, 65vw, 420px); object-fit: cover; object-position: 80% center; }
 .hero > .wp-block-cover__background { display: none; }
 .hero .wp-block-cover__inner-container { position: relative; top: auto; width: 100%; max-width: 100%; padding: 1.25rem 0 0; }
 .hero p:first-child { position: static; left: auto; width: fit-content; max-width: 100%; padding: .4rem .75rem; border-radius: 8px; margin: 0 0 1rem; font-size: 1rem; line-height: 1.4; }
 .hero p:first-child::before { content: ""; }
 .hero p:nth-child(2), .hero p:nth-child(3) { font-size: clamp(1.8rem, 6vw, 2.8rem); line-height: 1.25; margin: 0; }
 .hero p:nth-child(2) strong, .hero p:nth-child(3) strong { font-size: 1.4em; }
 .hero p:nth-child(3)::after { width: 180px; height: 14px; bottom: -.25rem; }
 .boxes { margin-top: 0; padding: 3.5rem 1.25rem 1.5rem !important; }
 .box p:nth-child(3), .whitebox p:nth-child(3) { min-height: 0; }
 .entry-content > .wp-block-group:not(.boxes):not(.dk-local-intro) { padding-left: 1.25rem !important; padding-right: 1.25rem !important; }
 .entry-content .wp-block-group.is-nowrap:not(.logo):not(.name) { flex-wrap: wrap; gap: 1rem; }
 .entry-content .wp-block-columns { gap: 3rem; }
 .entry-content h2 { font-size: clamp(1.6rem, 5vw, 2.1rem); line-height: 1.25; }
 .entry-content h3 { font-size: 1.5rem; line-height: 1.3; }
 .entry-content h4 { font-size: 1.25rem; line-height: 1.4; }
 .wp-block-buttons { flex-wrap: wrap; }
 .wp-block-button__link { min-height: 44px; white-space: normal; }
 .contact { margin-top: 1.5rem; padding: 3rem 1.25rem 1.5rem !important; }
 .contact::before { right: calc(50% - 40px); width: 80px; height: 80px; top: -2rem; }
 .wpcf7 input:not([type=checkbox]):not([type=radio]), .wpcf7 textarea, .wpcf7 select { width: 100%; min-height: 44px; }
 footer { margin-top: 120px; }
 footer::before { height: 110px; top: -110px; background-size: auto 110px; }
 footer .wp-block-columns { padding-left: 1.25rem !important; padding-right: 1.25rem !important; gap: 1.5rem; }
 footer .wp-block-column { padding-left: 0 !important; padding-right: 0 !important; }
 footer .whiteline { border-right: 0; border-bottom: 1px solid #ffffff66; padding-bottom: 1.5rem; }
 footer .name { gap: 1rem; }
 footer .name img { width: 64px; }
 footer .name p:nth-child(2) { margin-top: 0; }
 footer .social a { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
 .dk-pages { padding-top: 0; }
 .dk-local-intro { padding: 2rem 1.25rem; }
}
@media (max-width: 600px) {
 .boxes > .wp-block-columns > .wp-block-column { flex-basis: 100% !important; }
 .boxes > .wp-block-columns { gap: 3.5rem; }
 .entry-content .wp-block-button { width: 100%; }
 .entry-content .wp-block-button__link { width: 100%; text-align: center; }
 .entry-content .wp-block-group.is-nowrap img { max-width: 70px; height: auto; }
 .dk-event { overflow-wrap: anywhere; }
}
@media (prefers-reduced-motion: reduce) {
 html { scroll-behavior: auto; }
 nav ul li a::after, .wp-block-button__link { transition: none; }
}

@media (max-width: 600px) {
 .cf .row { display: block; }
 .cf .row > div:nth-child(1), .cf .row > div:nth-child(2) { width: 100%; }
 .cf, .cf_wrapper { padding: .75rem; }
 .cf .row > div:first-child { margin-bottom: .35rem; }
}
/* Menü-Overlay und Tablet-Footer: nach visueller Prüfung */
@media (max-width: 1200px) {
 header { backdrop-filter: none; -webkit-backdrop-filter: none; }
 header .wp-block-navigation__responsive-container.is-menu-open { background-color: #fff !important; color: #0A3A65 !important; opacity: 1; z-index: 100000; }
 footer .wp-block-columns { flex-wrap: wrap !important; gap: 2rem; }
 footer .wp-block-columns > .wp-block-column { flex-basis: calc(50% - 1rem) !important; flex-grow: 0; padding-left: 0 !important; padding-right: 0 !important; }
 footer .whiteline { border-right: 0; }
 footer .name { gap: 1rem; }
 footer .name figure { flex: 0 0 64px; }
 footer .name img { width: 64px; height: auto; }
 footer .name > .wp-block-group { flex: 1; min-width: 0; }
}
@media (max-width: 780px) {
 footer .wp-block-columns > .wp-block-column { flex-basis: 100% !important; }
}
/* Ursprünglichen Wahlstreifen mit Kreuz erhalten. */
.hero p:first-child { box-sizing: content-box; }
@media (max-width: 780px) {
 .hero p:first-child {
  box-sizing: border-box;
  position: relative;
  left: -1.25rem;
  width: calc(100% + 1.25rem);
  max-width: none;
  min-height: 3.5rem;
  padding: .5rem .9rem .5rem 4.6rem;
  margin: .25rem 0 1rem;
  border-radius: 0 20px 20px 0;
  display: flex;
  align-items: center;
 }
 .hero p:first-child::before {
  content: "";
  width: 52px;
  height: 52px;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
 }
}
/* Ortsintro und Karte: zwei gleich breite, im Editor bearbeitbare Spalten. */
.dk-map-columns{gap:clamp(1.5rem,3vw,3rem);align-items:center}
.dk-map-columns>.wp-block-column{min-width:0}
.dk-map-columns .kottmar{margin:0}
.dk-map-columns .kottmar-places{margin-top:12px;padding-top:12px}
@media(max-width:781px){.dk-map-columns{gap:1.5rem}.dk-map-columns .kottmar-map{height:340px}}
/* Agenturhinweis am unteren Rand des globalen Footers. */
footer .dk-footer-credit{margin:2rem auto 0;padding:1.25rem 1rem 0;border-top:1px solid #ffffff30;color:#fff;font-size:14px;line-height:1.6;text-align:center}
footer .dk-footer-credit a{color:#fff;text-decoration:underline;text-underline-offset:3px}
footer .dk-footer-credit a:hover{color:#f1cc2f}
