/**
 * Silvalue — Footer-Redesign (Vergleichsversion, diese Projektkopie)
 *
 * NACHTRAG 2026-09-24, Betreiberwunsch: Die unterste Zeile im Footer
 * (Firmenidentität + Adresse/Copyright/Links, siehe parts/footer-de.html,
 * Klasse "sv-footer-legal") soll zentriert stehen — beide per `<br>`
 * getrennten Zeilen. Weder core/group noch core/shortcode (siehe deren
 * jeweilige block.json "supports") bieten eine Textausrichtung über die
 * Block-UI/-Attribute an, deshalb hier eine eigene, minimale Klasse statt
 * eines Block-Attributs.
 *
 * Eigene Datei statt Ergänzung in base.css/patterns.css (beide laut
 * Projektkonvention unangetastet) oder home-redesign.css (dessen Regeln
 * bewusst nur auf der Startseite wirken, is_front_page() — der Footer
 * erscheint aber auf jeder Seite der Installation). Sitewide, unbedingt
 * eingebunden (silvalue_enqueue_assets(), functions.php) — dieselbe
 * Begründung wie beim ebenfalls unbedingt geladenen Script
 * "silvalue-contact-links" (siehe dortiger Kommentar): der Footer ist ein
 * Template-Teil, der auf jeder Seite erscheinen kann, es gibt keine
 * zuverlässige Möglichkeit, das im Voraus einzugrenzen.
 */

.sv-footer-legal {
	text-align: center;
}

/* NACHTRAG 2026-09-28 — Betreiberauftrag "Breiten-/Abstands-System
 * vereinheitlichen" (Prompt 2), Punkt 5: "Beseitige die derzeitige
 * Abweichung zwischen 1.680px auf der Startseite und 1.400/1.280px auf
 * Unterseiten. Verwende auf allen Seiten denselben äußeren
 * 1.680-px-Footerrahmen."
 *
 * Ursache der Abweichung: parts/footer-de.html rendert den Footer als
 * eigenen "constrained"-Container (<footer ... layout:constrained>) mit
 * zwei "align":"wide"-Kindgruppen (.sv-trust-logos, .sv-footer-legal).
 * Auf der Startseite griff bisher NUR die dort ohnehin vorhandene,
 * bewusst auf body.home beschränkte Regel
 * "body.home .is-layout-constrained > .alignwide{max-width:1680px}"
 * (home-redesign.css) — sie trifft strukturbedingt auch den Footer, war
 * aber nie für ihn gedacht. Jede andere Seite blieb beim
 * WordPress-Standardmaß (theme.json settings.layout.wideSize, 1400px).
 *
 * Hier stattdessen dieselbe Technik wie bereits bei
 * ".sv-header > .alignwide" (header.css, seit 2026-09-24 sitewide auf
 * 1680px fixiert): ein eigener, auf den Footer beschränkter Selektor statt
 * einer globalen theme.json-Änderung (die jede andere "wide"-Gruppe auf
 * jeder Seite mitverschieben würde). --sv-shell-max aus
 * layout-tokens.css referenziert statt einer erneuten Einzelzahl 1680px
 * (Auftrag: zentrale Token statt mehrfach gepflegter Werte) — identischer
 * Zahlenwert wie header.css's eigene 1680px-Regel und wie
 * --sv2-content-max (Startseite/Leistungsübersicht).
 *
 * !important aus demselben Grund wie bei header.css: die WordPress-
 * Kernregel ".is-layout-constrained > .alignwide" hat dieselbe
 * Selektor-Spezifität und würde ohne ein zusätzliches Präfix nicht
 * zuverlässig überstimmt.
 *
 * Lange Footertexte auf Content-/Prose-Breite zu begrenzen (im Auftrag
 * als Option genannt, "bei Bedarf") war hier nicht nötig: .sv-footer-legal
 * ist zentriert (siehe Regel oben) und enthält nur zwei kurze, über <br>
 * fest umbrochene Zeilen (Firmenname/Adresse/Links) — deren sichtbare
 * Zeilenlänge kommt aus dem Text selbst, nicht aus der Containerbreite,
 * und wächst durch den breiteren 1680px-Rahmen nicht mit (nachgemessen,
 * siehe Bericht). .sv-trust-logos enthält nur Bild-/Logo-Inhalte, für die
 * eine Prosa-Breitenbegrenzung ohnehin nicht zutrifft. */
.sv-footer > .alignwide {
	max-width: var(--sv-shell-max) !important;
}

/* NACHTRAG 2026-09-29 — Betreiberwunsch: "den Block Qualifikationen mit
   dem Logo und dem Text um 50% kleiner machen" (parts/footer-de.html,
   .sv-trust-logos — gemeint ist die innere Zeile aus Logo + Name-/
   Zertifizierungstext, NICHT die Abschnittsüberschrift "Qualifikationen &
   Mitgliedschaften" darüber, die ein eigenständiges Element ist). Live vor
   der Änderung nachgemessen: Logo 300×165px (WP-Bildgröße "medium",
   Media-ID 159), Textspalte font-size 21px (Preset "lg"). Beides exakt
   halbiert:
   Logo per festem width:150px — height:auto erhält das Seitenverhältnis
   300:165 bei, keine Verzerrung.
   Text per calc(var(--wp--preset--font-size--lg) / 2) statt eines festen
   px-Werts, damit die Größe weiterhin exakt der Hälfte des fluiden
   lg-Tokens folgt (das selbst ein clamp() ist und mit der
   Viewport-Breite leicht mitwächst, siehe theme.json) statt bei einer
   einzelnen Breite einzufrieren.
   border-radius (129px, für die abgerundete Logo-Form) bewusst
   unverändert gelassen: bei der halbierten Bildhöhe (82,5px) greift
   automatisch CSS' eigener Eckenradius-Kürzungsmechanismus (Summe
   gegenüberliegender Radien > Kantenlänge), das Logo bleibt dadurch ohne
   weiteres Zutun genauso proportional rund wie vorher.
   Abschnittsüberschrift "Qualifikationen & Mitgliedschaften" (Preset
   "sm", 15px) bewusst unangetastet — bei einer Halbierung wäre sie mit
   rund 7,5px kaum noch lesbar, und sie war laut Betreiberwunsch ohnehin
   nicht gemeint.
   KORREKTUR (gleicher Tag): font-size zeigte lokal zunächst KEINE
   Wirkung (blieb bei 21px). Ursache identisch zum bereits bei
   .sv-approach-inner (home-redesign.css) dokumentierten Muster:
   WordPress-Kernstyles erzeugen für jede Preset-Schriftgrößen-Klasse eine
   Regel mit !important — hier ".has-lg-font-size{font-size:var(--wp--
   preset--font-size--lg) !important}" —, die unsere nicht-!important-
   Regel unabhängig von der Selektor-Spezifität überstimmt. Fix: eigene
   Regel ebenfalls mit !important. Die Bildbreite (width:150px) brauchte
   dieses Zusatz nicht — dafür existiert keine konkurrierende
   Core-!important-Regel, sie griff sofort korrekt (live nachgemessen:
   150×82,5px). */
.sv-trust-logos .wp-block-group img {
	width: 150px;
	height: auto;
}

.sv-trust-logos .wp-block-group p.has-lg-font-size {
	font-size: calc(var(--wp--preset--font-size--lg) / 2) !important;
}

/* -----------------------------------------------------------------------
 * C3 (2026-10-08) — Tippflächen und Mindestschriftgröße.
 *
 * Gemessen bei 390 px (Startseite): Footer-Links, Markt-Link, E-Mail,
 * Impressum/Datenschutz und der NZIF-Link waren 11-21 px hoch, die
 * Footer-Schrift des NZIF-Eintrags nur 9,5 px; Formularfelder unter 16 px
 * lösen auf dem iPhone beim Antippen einen Zoom aus. Ziel: Links
 * mindestens 24 px hoch (WCAG 2.2, 2.5.8), Schrift mindestens 12 px.
 * Nur auf schmalen Viewports (Touch), Desktop bleibt unverändert.
 * -------------------------------------------------------------------- */
.sv-trust-logos .wp-block-group p.has-lg-font-size {
	font-size: max(12px, calc(var(--wp--preset--font-size--lg) / 2)) !important;
}

@media (max-width: 782px) {
	.sv-footer a,
	.sv-market-switch a,
	.sv-approach-link a {
		display: inline-block;
		padding-block: 0.45em;
	}

	/* Formularfelder: mindestens 16 px, sonst zoomt iOS beim Antippen. */
	body .sow-form-field .sow-text-field,
	body .sow-form-field textarea.sow-text-field,
	body .sow-form-field select {
		font-size: 16px !important;
	}

	/* Einwilligungs-Checkbox: Zielgröße mindestens 24 px. */
	.sow-form-field-checkboxes input[type="checkbox"] {
		width: 24px;
		height: 24px;
		min-width: 24px;
	}
}
