/*
Theme Name: visitate
Description: Block-Theme fuer www.visitate.de, angelehnt an die TYPO3-Seite bis 2026 (Petrol, schraege Flaechen, grauer Fussbereich).
Version: 1.2.1
Requires at least: 6.6
Requires PHP: 8.2
Text Domain: visitate
License: proprietary
*/

/* --- Kopf: schraege Petrol-Leiste, Logo rechts, Hauptnavigation auf hellem Petrol --- */

.vt-leiste {
	background: var(--wp--preset--color--petrol);
	/* 2 Grad geneigte Unterkante wie im Corporate Design: links hoeher als rechts */
	clip-path: polygon(0 0, 100% 0, 100% 52%, 0 100%);
	padding: 0.5rem 1.25rem 1.9rem;
}

.vt-leiste .vt-servicelinks,
.vt-leiste .vt-servicelinks a {
	color: var(--wp--preset--color--text);
	text-decoration: none;
	margin: 0;
	font-size: 0.95rem;
}

.vt-leiste .vt-servicelinks a:hover,
.vt-leiste .vt-servicelinks a:focus-visible {
	text-decoration: underline;
}

/* Suche: kompakt in Zeilenhoehe der Servicelinks, weisser Rahmen wie auf der alten Seite */
.vt-leiste .wp-block-search,
.vt-leiste .wp-block-search__inside-wrapper {
	margin: 0;
	padding: 0;
	border: 0;
	height: 1.6rem;
}

.vt-leiste .wp-block-search__input {
	height: 1.6rem;
	min-height: 0;
	padding: 0 0.5rem;
	font-size: 0.85rem;
	border: 1px solid rgba(255, 255, 255, 0.8);
	border-right: 0;
}

.vt-leiste .wp-block-search__button {
	height: 1.6rem;
	min-height: 0;
	width: 2.4rem;
	padding: 0;
	margin: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	background: transparent;
	border: 1px solid rgba(255, 255, 255, 0.8);
}

.vt-leiste .wp-block-search__button svg {
	fill: #fff;
	width: 1.1rem;
	height: 1.1rem;
	min-width: 0;
	min-height: 0;
}

/* Wortmarke in Neo Sans Pro medium und Hausfarbe statt Bilddatei */
.vt-logo {
	font-size: clamp(2.75rem, 6vw, 4.25rem);
	font-weight: 500;
	line-height: 1;
	letter-spacing: -0.01em;
	margin: 0.4rem 0 1.4rem;
}

.vt-logo a {
	color: var(--wp--preset--color--petrol);
	text-decoration: none;
}

.vt-hauptnav {
	background: var(--wp--preset--color--petrol-hell);
}

.vt-hauptnav .wp-block-navigation-item__content {
	color: #fff;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	padding: 0.55rem 0;
}

.vt-hauptnav .current-menu-item > .wp-block-navigation-item__content,
.vt-hauptnav .current-menu-ancestor > .wp-block-navigation-item__content,
.vt-hauptnav .wp-block-navigation-item__content:hover,
.vt-hauptnav .wp-block-navigation-item__content:focus {
	color: var(--wp--preset--color--text);
}

/* Untermenues: weiss, Text normal geschrieben */
.vt-hauptnav .wp-block-navigation__submenu-container {
	background: #fff !important;
	border: 1px solid var(--wp--preset--color--petrol-hell) !important;
}

.vt-hauptnav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	color: var(--wp--preset--color--text);
	text-transform: none;
	font-weight: 400;
	padding: 0.4rem 0.9rem;
}

.vt-hauptnav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--petrol-dunkel);
}

/* Mobil: Menue-Schalter weiss auf hellem Petrol */
.vt-hauptnav .wp-block-navigation__responsive-container-open {
	color: #fff;
	padding: 0.4rem 0;
}

/* --- Titelbild (Cover) --- */

.vt-titelbild .wp-block-cover__inner-container h1,
.vt-titelbild .wp-block-cover__inner-container h2,
.vt-titelbild .wp-block-cover__inner-container p {
	color: #fff;
	text-shadow: 0 1px 6px rgba(0, 0, 0, 0.55);
}

.vt-titelbild .wp-block-cover__inner-container p {
	font-size: var(--wp--preset--font-size--small);
}

/* --- Info-Kasten: Petrol-Flaeche um 2 Grad gekippt (Text bleibt gerade), ragt in den grauen Fuss --- */

.vt-info-kasten {
	position: relative;
	z-index: 2;
	color: #fff;
	padding-left: 5rem !important;
	margin-bottom: -7rem !important;
}

.vt-info-kasten::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: var(--wp--preset--color--petrol);
	transform: rotate(-1.5deg);
}

/* "i" im Kreis oben links */
.vt-info-kasten::after {
	content: "i";
	position: absolute;
	left: 1.25rem;
	top: 2.1rem;
	width: 2.6rem;
	height: 2.6rem;
	border: 2px solid #fff;
	border-radius: 50%;
	font: italic 700 1.6rem/2.45rem Georgia, "Times New Roman", serif;
	text-align: center;
	color: #fff;
}

.vt-info-kasten a,
.vt-info-kasten h2,
.vt-info-kasten h3,
.vt-info-kasten h4 {
	color: #fff;
}

.vt-info-kasten h2,
.vt-info-kasten h3 {
	font-size: var(--wp--preset--font-size--medium);
	margin-top: 0;
}

.vt-info-kasten .vt-kontakt {
	border-left: 1px solid rgba(255, 255, 255, 0.85);
	padding-left: 2.5rem;
	align-self: stretch;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.vt-info-kasten .vt-kontakt p {
	margin: 0.5rem 0 1rem;
}

.vt-info-kasten .wp-block-social-links {
	margin: 0;
}

.vt-info-kasten .vt-newsletter-symbol {
	margin: 0;
}

/* Fuss rueckt unter den Kasten, das Grau beginnt auf halber Hoehe */
body:has(.vt-info-kasten) .vt-fuss-gesamt {
	margin-top: 0 !important;
}

body:has(.vt-info-kasten) .vt-fuss {
	padding-top: 10rem !important;
}

@media (max-width: 781px) {
	.vt-info-kasten {
		padding-left: 1.5rem !important;
		padding-top: 4.5rem !important;
	}

	.vt-info-kasten::after {
		top: 1.25rem;
	}

	.vt-info-kasten .vt-kontakt {
		border-left: 0;
		border-top: 1px solid rgba(255, 255, 255, 0.85);
		padding: 1rem 0 0;
	}
}

/* --- Inhalte --- */

/* Abschnitte mit Petrol-Linie darunter (Vorteile, Funktionen) */
.vt-abschnitt {
	border-bottom: 1px solid var(--wp--preset--color--petrol);
	padding-bottom: 1rem;
}

.vt-bildnachweis {
	font-size: 0.75rem;
	color: var(--wp--preset--color--grau-text);
}

.vt-bildnachweis a {
	color: inherit;
}

/* --- Fuss: grauer Bereich mit Seitenuebersicht, darunter Adressleiste --- */

.vt-fuss {
	background: var(--wp--preset--color--grau);
}

.vt-fuss a {
	color: var(--wp--preset--color--text);
	text-decoration: none;
}

.vt-fuss a:hover {
	color: var(--wp--preset--color--petrol-dunkel);
	text-decoration: underline;
}

.vt-fuss ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.vt-fuss li {
	margin: 0.15rem 0;
}

.vt-fuss h2 {
	font-size: var(--wp--preset--font-size--small);
	margin-bottom: 0.25rem;
}

.vt-adresse {
	background: var(--wp--preset--color--grau-dunkel);
	color: #fff;
}

.vt-adresse a {
	color: #fff;
}

/* Tastaturfokus gut sichtbar */
:where(a, button, input, summary):focus-visible {
	outline: 2px solid var(--wp--preset--color--petrol-dunkel);
	outline-offset: 2px;
}

/* Kopf und Fuss behalten ihre Groesse, wenn die Schriftgroessen im Inhalt geaendert werden */
.vt-hauptnav .wp-block-navigation {
	font-size: 0.875rem;
}

.vt-fuss.has-small-font-size,
.vt-adresse.has-small-font-size,
.vt-fuss h2 {
	font-size: 0.875rem !important;
}
