/*
Theme Name: profectus IT consult
Theme URI: https://profectus-it-consult.de
Description: Child-Theme von Twenty Twenty-Five für die Website von profectus IT consult, Schwester des Themes profectus-ki (gleiche Palette, Schriften und Bausteine). Farben, Schriften und Abstände liegen in theme.json, Inhaltsbausteine in patterns/. Version bei jeder Änderung erhöhen (Cache).
Author: profectus IT consult, Markus Moraw
Template: twentytwentyfive
Version: 0.1.2
Requires at least: 6.7
Requires PHP: 8.1
License: GNU General Public License v2 or later
Text Domain: profectus-it
*/

/* Ergänzende Stile, die theme.json nicht abdeckt. Sparsam halten. Klassenpräfix pki- bewusst wie im KI-Theme. */

/* Leistungskacheln: gleiche Höhe, ruhige Hover-Anhebung */
.pki-kachel {
	border: 1px solid var(--wp--preset--color--linie);
	border-radius: 6px;
	transition: transform .15s ease, box-shadow .15s ease;
}
.pki-kachel:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgba(0, 0, 144, .08);
}
.pki-kachel .wp-block-image img {
	border-radius: 4px 4px 0 0;
}
/* Kachel ohne Bild: Akzentlinie über der Überschrift (wie bei den Grundsätzen) */
.pki-kachel-text h3::before {
	content: "";
	display: block;
	width: 2.5rem;
	height: 3px;
	background: var(--wp--preset--color--akzent);
	margin-bottom: .6rem;
}

/* Prinzipien: Ziffer als Akzent */
.pki-prinzip h3::before {
	content: "";
	display: block;
	width: 2.5rem;
	height: 3px;
	background: var(--wp--preset--color--akzent);
	margin-bottom: .6rem;
}

/* Hero: Text bleibt lesbar auf Bild bzw. dunkler Fläche */
.pki-hero .wp-block-cover__inner-container {
	max-width: var(--wp--style--global--wide-size);
}
/* !important nötig: die globalen Stile des Elternthemas setzen die Textfarbe im Cover mit höherer Priorität */
.pki-hero h1,
.pki-hero p,
.pki-hero .wp-block-button.is-style-outline .wp-block-button__link {
	color: #ffffff !important;
}
.pki-hero .wp-block-button.is-style-outline .wp-block-button__link {
	border-color: #ffffff !important;
}
.pki-hero .wp-block-button.is-style-outline .wp-block-button__link:hover {
	background: #ffffff;
	color: var(--wp--preset--color--marine);
}

/* Leistungskacheln: acht Bereiche → zwei Spalten ab Tablet, vier Spalten ab Desktop */
@media (min-width: 700px) {
	.pki-kacheln,
	.wp-block-group:has(> .pki-kachel) { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (min-width: 1000px) {
	.pki-kacheln,
	.wp-block-group:has(> .pki-kachel) { grid-template-columns: repeat(4, 1fr) !important; }
}

/* Referenzkarte */
.pki-referenz {
	border-left: 4px solid var(--wp--preset--color--akzent);
	padding-left: 1.25rem;
}
.pki-referenz .pki-label {
	text-transform: uppercase;
	letter-spacing: .08em;
	font-size: var(--wp--preset--font-size--klein);
	color: var(--wp--preset--color--grau);
}

/* Zitat am Kopf der Leistungsseiten */
.wp-block-quote {
	padding-left: 1.25rem;
	margin-bottom: var(--wp--preset--spacing--50);
}
.wp-block-quote cite {
	display: block;
	margin-top: .4rem;
	font-family: var(--wp--preset--font-family--text);
	font-style: normal;
	font-size: var(--wp--preset--font-size--klein);
	color: var(--wp--preset--color--grau);
}

/* Formular (Contact Form 7) in Theme-Optik */
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 input[type="tel"], .wpcf7 textarea {
	width: 100%;
	padding: .65rem .8rem;
	border: 1px solid var(--wp--preset--color--linie);
	border-radius: 4px;
	font: inherit;
}
.wpcf7 input[type="submit"] {
	background: var(--wp--preset--color--marine);
	color: #fff;
	border: 0;
	padding: .75rem 1.5rem;
	border-radius: 4px;
	cursor: pointer;
}
.wpcf7 input[type="submit"]:hover { background: var(--wp--preset--color--akzent); }

/* Fußzeile und andere dunkle Flächen: Text weiß (globale Stile des Elternthemas setzen sonst Marine) */
.has-marine-dunkel-background-color h1,
.has-marine-dunkel-background-color h2,
.has-marine-dunkel-background-color h3,
.has-marine-dunkel-background-color p,
.has-marine-dunkel-background-color a {
	color: #ffffff !important;
}
.has-marine-dunkel-background-color p:last-child:not(:first-child) {
	opacity: .75;
}
