/* ==========================================================================
   Pudel – Feinschliff, der in theme.json nicht abbildbar ist.
   Maße übernommen aus der bisherigen Seite (Twenty Sixteen, angepasst).
   ========================================================================== */

/* --- Grundgerüst ------------------------------------------------------- */

@media (min-width: 44.375em) {
	.wp-site-blocks {
		margin: 21px; /* Twenty-Sixteen-Rahmen */
	}
}

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

b,
strong {
	font-weight: 700;
}

/* --- Header ------------------------------------------------------------ */

.pudel-header {
	padding-top: 42px;
	padding-bottom: 42px;
}

@media (min-width: 56.875em) {
	.pudel-header {
		padding-top: 84px;
		padding-bottom: 84px;
	}
}

.pudel-header__main {
	gap: 0;
}

.pudel-branding {
	flex-shrink: 0;
	margin-right: 1em;
}

.pudel-branding .wp-block-site-logo img {
	max-width: 150px;
	height: auto;
}

/* Navigation wie Twenty Sixteen: normale Schrift, aktive Seite fett */
.pudel-nav .wp-block-navigation-item__content {
	padding: 10.5px 14px;
	line-height: 1.3125;
	text-decoration: none;
}

.pudel-nav .wp-block-navigation-item__content:hover,
.pudel-nav .wp-block-navigation-item__content:focus {
	color: #000;
}

.pudel-nav .current-menu-item > .wp-block-navigation-item__content,
.pudel-nav .wp-block-navigation-item__content[aria-current="page"] {
	font-weight: 700;
	margin-top: -0.15em;
}

/* Mobiles Menü: „Menü“-Button mit Rahmen wie im Original */
.pudel-nav .wp-block-navigation__responsive-container-open {
	border: 1px solid rgba(0, 0, 0, 0.2);
	border-radius: 2px;
	padding: 0.4em 0.6em;
}

.pudel-nav .wp-block-navigation__responsive-container.is-menu-open {
	padding: 2rem clamp(1rem, 4.5455vw, 44px);
	font-size: 19px;
}

.pudel-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	padding: 0.6em 0;
}

/* --- Inhalt ------------------------------------------------------------ */

.pudel-main {
	padding-bottom: 3.5rem;
}

.pudel-page-title {
	margin-bottom: 42px !important;
}

/* Breitere Titelzeile wie im Original (Titel steht leicht links vom Text) */
@media (min-width: 61.5625em) {
	.pudel-main > .pudel-page-title {
		max-width: 605px;
	}
}

.pudel-content > * + * {
	margin-block-start: 0;
}

.pudel-content p {
	margin-top: 0;
	margin-bottom: 1.75em;
}

/* Links im Text: Unterstrich über box-shadow (Twenty-Sixteen-Look) */
.pudel-content a,
.pudel-footer a {
	box-shadow: 0 1px 0 0 currentColor;
	text-decoration: none;
}

.pudel-content a:hover,
.pudel-content a:focus,
.pudel-footer a:hover,
.pudel-footer a:focus {
	box-shadow: none;
}

.pudel-content h3 {
	padding-top: 23px;
	margin-bottom: 28px;
	font-weight: 700;
}

.pudel-content h5 {
	margin-top: 0;
	margin-bottom: 28px;
	font-size: 19px;
}

.pudel-content h5 a {
	font-weight: 700;
}

.pudel-content img {
	max-width: 100%;
	height: auto;
}

.pudel-content hr,
.wp-block-separator.is-style-pudel-thin {
	background-color: rgba(0, 0, 0, 0.2);
	border: 0;
	height: 1px;
	margin: 0 0 1.75em;
}

/* --- Programm: Wochentag-Überschrift (5px-Balken, zentriert) ------------ */

.event-cat,
.is-style-pudel-wochentag {
	border-top: 5px solid #000 !important;
	width: 100%;
	text-align: center;
	margin-top: 56px !important;
	padding-top: 23px;
	margin-bottom: 28px !important;
	font-size: 23px;
	line-height: 1.2174;
}

/* --- Programm: Kasten „Was gibt’s als nächstes?“ ----------------------- */

.pudel-box,
.is-style-pudel-box {
	border: 3px solid #000;
	overflow: auto;
	padding: 0 1em 1em 1em;
	margin-bottom: 0;
}

.pudel-box > h3,
.is-style-pudel-box > h3,
.pudel-box > .wp-block-heading {
	text-align: left;
}

/* --- Programm: einzelne Veranstaltung (Block-Pattern) ------------------- */

.pudel-event {
	margin: 0 0 10px;
	padding: 0;
}

.pudel-event > * {
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
}

.pudel-event .pudel-event__date {
	font-size: 1.2em;
	line-height: 1.75;
	border-top: 1px solid #000;
	margin: 0 0 -0.2em !important;
}

.pudel-event .pudel-event__title {
	font-size: 1.2em;
	line-height: 1.1;
	font-weight: 700;
}

.pudel-event .pudel-event__links {
	line-height: 1.2em;
	margin-top: 0.25em !important;
}

.pudel-event .pudel-event__links a {
	font-weight: 400;
}

/* --- Kompatibilität: Plugin „Very Simple Event List“ ---------------------
   Damit der bestehende Shortcode [vsel] exakt wie bisher aussieht. */

#vsel {
	clear: both;
	float: left;
	width: 100%;
	margin: 0 auto 2px;
}

#vsel p {
	margin: 0 auto -5px;
}

#vsel .vsel-content {
	width: 100%;
	clear: both;
	float: left;
	display: block;
	margin: 0 0 10px;
	padding: 0;
	border-bottom: 0;
}

#vsel .vsel-meta,
#vsel .vsel-image-info,
#vsel .vsel-info {
	width: 100%;
	float: left;
}

#vsel .vsel-meta-title {
	font-size: 1.2em;
	line-height: 0;
}

#vsel .vsel-meta-date {
	width: 100%;
	float: left;
	font-size: 1.2em;
	margin: 0 0 -0.2em;
	border-top: 1px solid #000;
}

#vsel .vsel-image {
	width: 0;
	height: auto;
	float: right;
	margin: 0.3em 0 0.3em 1em;
	padding: 0;
	border: 0;
}

#vsel .vsel-info {
	margin: 0;
	line-height: 1.2em;
}

#vsel .vsel-nav {
	width: 100%;
	clear: both;
	float: left;
}

#vsel a.next { float: right; }
#vsel a.prev { float: left; }

.vsel_widget::after,
.pudel-content::after {
	content: "";
	display: block;
	clear: both;
}

@media screen and (max-width: 767px) {
	#vsel .vsel-image {
		width: 100%;
		float: left;
		margin: 0.3em 0;
	}
}

/* --- Footer ------------------------------------------------------------ */

.pudel-footer {
	padding-top: 1.75rem;
	padding-bottom: 56px;
	clear: both;
}

.pudel-footer__links {
	font-size: 13px;
	line-height: 1.6154;
	margin: 0;
}

/* --- Formulare (Newsletter-Plugin) ------------------------------------- */

input[type="text"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="number"],
textarea {
	font-family: inherit;
	font-size: 16px;
	background: #f7f7f7;
	border: 1px solid rgba(0, 0, 0, 0.2);
	border-radius: 2px;
	color: #000;
	padding: 0.625em 0.4375em;
	width: 100%;
	box-sizing: border-box;
}

input:focus,
textarea:focus {
	background: #fff;
	border-color: #000;
	outline: 0;
}

button,
input[type="submit"],
input[type="button"] {
	font-family: inherit;
	font-weight: 700;
	background: #000;
	color: #fff;
	border: 0;
	border-radius: 2px;
	padding: 0.84375em 0.875em 0.78125em;
	cursor: pointer;
}
