/* Theme „Dirk Goldbach“ – was theme.json nicht ausdrücken kann.
   Farben als WordPress-Variablen aus der Palette in theme.json. */

:root {
	--goldbach-linie: rgba(29, 43, 79, .18);
	--goldbach-rot: var(--wp--preset--color--rot);
	--goldbach-tinte: var(--wp--preset--color--tinte);
	--goldbach-tinte-weich: var(--wp--preset--color--tinte-weich);
}

body { -webkit-font-smoothing: antialiased; }
html { scroll-behavior: smooth; }

a { text-decoration-color: var(--goldbach-rot); text-underline-offset: .18em; }

/* Lange deutsche Wörter (z. B. „Verbraucherstreitbeilegung/Universalschlichtungsstelle“) dürfen umbrechen,
   statt die Seite auf dem Handy seitlich zu verbreitern. */
h1, h2, h3, h4, p, li { overflow-wrap: break-word; }
h1, h2, h3, h4 { hyphens: auto; }

/* Knöpfe: Kapitälchen; Umriss-Variante mit Tintenblau */
.wp-element-button, .wp-block-button__link { font-variant: small-caps; }
.wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent;
	color: var(--goldbach-tinte);
	border: 1.5px solid var(--goldbach-tinte);
	padding: .55rem 1.3rem;
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover {
	color: var(--goldbach-rot);
	border-color: var(--goldbach-rot);
}

/* Kopf */
.goldbach-kopf { border-bottom: 1px solid var(--goldbach-linie); padding-top: 1.4rem; padding-bottom: 1.2rem; }
.goldbach-kopf .wp-block-site-title a { text-decoration: none; }
.goldbach-kopf .wp-block-site-title a:hover { color: inherit; }
.goldbach-marke { gap: .15rem; }
.wp-block-navigation a {
	text-decoration: none;
	font-variant: small-caps;
	padding-bottom: .15rem;
	border-bottom: 2px solid transparent;
}
.wp-block-navigation .current-menu-item > a,
.wp-block-navigation .current-menu-ancestor > a { border-bottom-color: var(--goldbach-rot); }
.wp-block-navigation .wp-block-navigation-item__content:hover { color: var(--goldbach-rot); }

/* Inhaltsbereich */
.goldbach-inhalt { padding-top: 3.5rem; padding-bottom: 4.5rem; }
.wp-block-post-content > h2:not(:first-child) { margin-top: 2.5rem; }

/* Fuß */
.goldbach-fuss {
	border-top: 1px solid var(--goldbach-linie);
	padding-top: 1.8rem;
	padding-bottom: 2.4rem;
	font-size: 1rem;
	color: var(--goldbach-tinte-weich);
}
.goldbach-fuss a { text-decoration: none; }
.goldbach-fuss-links { gap: 1.4rem; }

/* Überzeile und Leitfrage */
.is-style-kicker {
	font-variant: small-caps;
	letter-spacing: .16em;
	color: var(--goldbach-rot);
	font-size: 1.05rem;
}
.is-style-kicker + * { margin-block-start: .5rem !important; }
.is-style-leitfrage { color: var(--goldbach-rot); font-style: italic; font-size: 1.45rem; }

/* Buchcover: wie ein Gegenstand auf weißem Grund */
.wp-block-image.is-style-buchcover img {
	display: block;
	width: 100%;
	height: auto;
	box-shadow: 0 1px 0 rgba(0, 0, 0, .05), 0 18px 40px -18px rgba(29, 43, 79, .55);
}

/* Bühne: Cover links, Text rechts */
.wp-block-columns.is-style-buehne { gap: 3.5rem; }
.wp-block-columns.is-style-buehne .wp-block-buttons { margin-top: 1.6rem; }
@media (max-width: 781px) {
	.wp-block-columns.is-style-buehne { gap: 2rem; }
	.wp-block-columns.is-style-buehne .wp-block-image { max-width: 15rem; margin-inline: auto; }
}

/* Drei Punkte, wie Galaxien */
.wp-block-separator.is-style-galaxien {
	border: none;
	background: none !important;
	height: auto;
	width: auto;
	max-width: none;
	opacity: 1;
	text-align: center;
	color: var(--goldbach-rot);
	margin-top: 3.5rem !important;
	margin-bottom: 3.5rem !important;
	scroll-margin-top: 2rem;
}
.wp-block-separator.is-style-galaxien::before {
	content: "•••";
	letter-spacing: 1.2em;
	padding-left: 1.2em;
	font-size: .9rem;
}

/* Karte: Linie oben */
.wp-block-column.is-style-karte { border-top: 2px solid var(--goldbach-tinte); padding-top: 1rem; }
.wp-block-column.is-style-karte h3 { margin-bottom: .6em; }

/* Bücherregal */
.wp-block-group.is-style-regal { gap: 2.5rem; }
.wp-block-group.is-style-regal h3 a { text-decoration: none; }
.wp-block-group.is-style-regal .wp-block-image { margin-bottom: .9rem; }
.wp-block-group.is-style-regal .wp-block-image img { transition: transform .2s; }
.wp-block-group.is-style-regal .wp-block-image a:hover img { transform: translateY(-4px); }
.wp-block-group.is-style-regal h3 { margin: 0; }
.wp-block-group.is-style-regal h3 + p { margin-top: .3rem; }
@media (max-width: 600px) {
	.wp-block-group.is-style-regal { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 1.4rem; }
	.wp-block-group.is-style-regal h3 { font-size: 1.15rem; }
}

/* Leseprobe: Absätze wie im Buch, mit Einzug statt Abstand */
.wp-block-group.is-style-leseprobe > p:not(.has-text-align-center) + p:not(.has-text-align-center) {
	margin-block-start: 0;
	text-indent: 1.4em;
}
.wp-block-group.is-style-leseprobe > .is-style-kicker + h2 { margin-block-start: .3rem; }
.wp-block-group.is-style-leseprobe > h2 + p { margin-block-start: .2rem; }

/* Buchdaten: Etikett (fett gesetzt) in Kapitälchen, Werte daneben */
.wp-block-group.is-style-daten { font-size: 1.05rem; margin-top: 1.4rem; margin-bottom: 1.4rem; }
.wp-block-group.is-style-daten > * + * { margin-block-start: .2rem; }
.wp-block-group.is-style-daten strong {
	display: inline-block;
	min-width: 7.5rem;
	font-weight: 400;
	font-variant: small-caps;
	letter-spacing: .08em;
	color: var(--goldbach-tinte-weich);
}

/* Lesungstermin */
.wp-block-columns.is-style-termin {
	gap: 1.5rem;
	border-top: 1px solid var(--goldbach-linie);
	padding-top: 1.2rem;
	padding-bottom: 1.2rem;
	margin-bottom: 0;
}
.wp-block-columns.is-style-termin > .wp-block-column:first-child {
	font-variant: small-caps;
	letter-spacing: .08em;
	color: var(--goldbach-rot);
}
@media (max-width: 781px) {
	.wp-block-columns.is-style-termin { gap: .2rem; }
}

/* Kontaktformular (Contact Form 7) */
.wpcf7-form { display: grid; gap: 1rem; max-width: 34rem; margin-top: 1.4rem; }
.wpcf7-form p { margin: 0; }
.wpcf7-form label {
	display: grid;
	gap: .3rem;
	font-variant: small-caps;
	letter-spacing: .08em;
	font-size: 1.05rem;
}
.wpcf7-form label br { display: none; }
.wpcf7-form-control-wrap { display: block; }
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form textarea {
	box-sizing: border-box;
	width: 100%;
	font: inherit;
	font-size: 1.1rem;
	font-variant: normal;
	letter-spacing: normal;
	color: inherit;
	background: #fff;
	border: 1px solid var(--goldbach-linie);
	border-radius: 0;
	padding: .6rem .7rem;
}
.wpcf7-form textarea { min-height: 9rem; resize: vertical; }
.wpcf7-form input:focus,
.wpcf7-form textarea:focus { outline: 2px solid var(--goldbach-tinte); outline-offset: 1px; }
.wpcf7-form .wpcf7-submit {
	font: inherit;
	font-variant: small-caps;
	letter-spacing: .1em;
	font-size: 1.1rem;
	line-height: 1.3;
	color: var(--wp--preset--color--papier);
	background: var(--goldbach-tinte);
	border: 1.5px solid var(--goldbach-tinte);
	border-radius: 0;
	padding: .55rem 1.3rem;
	cursor: pointer;
}
.wpcf7-form .wpcf7-submit:hover { background: transparent; color: var(--goldbach-rot); border-color: var(--goldbach-rot); }
.goldbach-formular-hinweis { font-size: 1rem; color: var(--goldbach-tinte-weich); }
.wpcf7-not-valid-tip { color: var(--goldbach-rot); font-size: 1rem; font-variant: normal; letter-spacing: normal; }
.wpcf7 form .wpcf7-response-output { margin: 0; padding: .6rem .9rem; border: 1.5px solid var(--goldbach-tinte); }
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output { border-color: var(--goldbach-rot); color: var(--goldbach-rot); }
.goldbach-lockfeld { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* Handy */
@media (max-width: 760px) {
	body { font-size: 1.1rem; }
	.goldbach-inhalt { padding-top: 2.4rem; padding-bottom: 3.5rem; }
	.goldbach-kopf-zeile { flex-direction: column; align-items: flex-start !important; }
	.wp-block-navigation { font-size: 1.05rem; letter-spacing: .08em; }
	.wp-block-navigation .wp-block-navigation__container { gap: .3rem 1.1rem; }
}
