/*
Theme Name: Alexandra Sackmann
Theme URI: https://alexandrasackmann.de/
Author: Alexandra Sackmann
Description: Schlichtes, helles Block Theme für alexandrasackmann.de. Inhalte werden im Editor gepflegt, das Design bleibt einheitlich.
Version: 1.1.0
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: alexandra-sackmann
*/

/* Grundlagen */
html { scroll-behavior: smooth; }
body { overflow-x: clip; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
:where(.wp-site-blocks) > * { margin-block-start: 0; }
.wp-block-post-content.as-seiteninhalt > * { margin-block-start: 0; margin-block-end: 0; }
a:focus-visible, summary:focus-visible, button:focus-visible { outline: 2px solid #111413; outline-offset: 3px; }
img { height: auto; }
::selection { background: #111413; color: #EDEDE9; }

/* Abschnitte */
.as-sec {
	padding: 96px max(24px, calc((100% - 1312px) / 2));
	border-top: 1px solid #CFD2CD;
	margin: 0 !important;
	box-sizing: border-box;
}
.as-sec.as-ohne-linie { border-top: 0; }
.as-sec.as-oben { border-top: 0; padding-top: 56px; }
.as-sec.as-knapp { padding-top: 0; }
.as-sec.as-viel { padding-bottom: 120px; }
.as-sec.as-dunkel {
	background: #111413;
	color: #EDEDE9;
	border: 0;
	border-radius: 32px;
	margin: 0 16px !important;
	padding: 120px max(24px, calc((100% - 1328px) / 2));
}
.as-dunkel h1, .as-dunkel h2, .as-dunkel h3, .as-dunkel a:not(.wp-block-button__link) { color: #EDEDE9; }
.as-dunkel .as-label, .as-dunkel .as-leise, .as-dunkel .as-quelle { color: #9AA19E; }
.as-dunkel .has-grau-hell-color { color: #7C8380 !important; }
.as-dunkel .wp-block-button__link { background: #EDEDE9; color: #111413; }
.as-dunkel .wp-block-button__link:hover { background: #FFFFFF; color: #111413; }
.as-dunkel .as-linien li, .as-dunkel .as-zahl, .as-dunkel .as-modul { border-color: #2C3230; }

/* Zeile mit Beschriftung links */
.as-zeile { display: flex !important; flex-wrap: wrap; gap: 32px 64px; align-items: flex-start; }
.as-zeile > * { margin: 0 !important; }
.as-zeile > .as-label { flex: 0 0 200px; }
.as-zeile > .as-inhalt { flex: 1 1 640px; min-width: 0; }
.as-zeile > .as-inhalt > *:first-child { margin-top: 0; }

/* Schrift */
.as-label { font-family: var(--wp--preset--font-family--geist-mono); font-size: 14px; line-height: 1.5; color: #6B7370; margin: 0; letter-spacing: 0; }
.as-h1 { font-size: clamp(52px, 10.4vw, 156px) !important; line-height: 1.0 !important; letter-spacing: -0.065em !important; font-weight: 500; margin: 0 !important; }
.as-h1.as-mittel { font-size: clamp(52px, 9.6vw, 144px) !important; line-height: 0.95 !important; }
.as-h1.as-klein { font-size: clamp(40px, 6.4vw, 96px) !important; line-height: 0.98 !important; letter-spacing: -0.055em !important; }
.as-h2 { font-size: clamp(36px, 5vw, 72px) !important; line-height: 0.98 !important; letter-spacing: -0.055em !important; font-weight: 500; margin: 0 0 32px !important; }
.as-h3 { font-size: 24px !important; line-height: 1.2 !important; letter-spacing: -0.03em !important; font-weight: 500; margin: 0 0 8px !important; }
.as-aussage { font-size: clamp(28px, 3.4vw, 48px); line-height: 1.15; letter-spacing: -0.04em; font-weight: 400; margin: 0 0 48px; }
.as-lead { font-size: 20px; line-height: 1.5; color: #3B4240; }
.as-leise { color: #59605D; font-size: 17px; }
.as-klein { font-size: 15px; }
.as-ohne-abstand { margin: 0 !important; }

/* Kopfbereich der Seiten */
.as-hero-unten { display: flex !important; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 32px; margin-top: 48px !important; }
.as-hero-unten > * { margin: 0 !important; }
.as-hero-unten > .as-hero-text { flex: 0 1 520px; min-width: 0; }
.as-hero-text .as-lead { margin: 0 0 24px; }
.as-bild-breit { margin: 0 !important; }
.as-bild-breit img { display: block; width: 100%; aspect-ratio: 21 / 9; min-height: 320px; object-fit: cover; border-radius: 28px; }
.as-bild-breit.as-pos-oben img { object-position: 45% 30%; }
.as-bild-hoch img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 24px; }
.as-bild-quer img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 28px; }
.as-bild-rund img { border-radius: 20px; display: block; width: 100%; }

/* Knöpfe */
.wp-block-buttons { gap: 10px; }
.wp-block-button__link { display: inline-flex; align-items: center; min-height: 44px; box-sizing: border-box; text-decoration: none; }
.wp-block-button.is-style-outline .wp-block-button__link { background: transparent; color: #111413; border: 1px solid #B9BEBB; padding: 15px 24px; }
.wp-block-button.is-style-outline .wp-block-button__link:hover { background: #FFFFFF; color: #111413; }
.as-pfeil .wp-block-button__link::after { content: "→"; margin-left: 10px; }

/* Listen */
.as-linien { list-style: none; padding: 0 !important; margin: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 0 32px; }
.as-linien li { padding: 16px 0; border-top: 1px solid #CFD2CD; margin: 0; }
.as-linien.as-einspaltig { grid-template-columns: 1fr; }
.as-zitate { list-style: none; padding: 0 !important; margin: 0 0 40px; border-top: 1px solid #111413; }
.as-zitate li { padding: 22px 0; border-bottom: 1px solid #CFD2CD; font-size: clamp(22px, 2.4vw, 32px); line-height: 1.25; letter-spacing: -0.035em; margin: 0; }
.as-logos { list-style: none; padding: 0 !important; margin: 0; display: flex; flex-wrap: wrap; gap: 10px 44px; font-size: clamp(22px, 2.4vw, 32px); font-weight: 500; letter-spacing: -0.04em; color: #59605D; }
.as-logos li { margin: 0; }
.as-sec.as-logozeile { padding-top: 56px; padding-bottom: 56px; }

/* Raster */
.as-raster-2, .as-raster-3, .as-raster-4, .as-raster-5 { display: grid !important; gap: 32px; }
.as-raster-2 { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
.as-raster-3 { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
.as-raster-4 { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.as-raster-5 { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
.as-raster-2 > *, .as-raster-3 > *, .as-raster-4 > *, .as-raster-5 > * { margin: 0 !important; }
.as-raster-3 p, .as-raster-4 p { margin: 0; }

/* Kennzahlen */
.as-zahl { border-top: 1px solid #111413; padding-top: 16px; }
.as-zahl > * { margin: 0 !important; }
.as-zahl-wert { font-size: 56px; font-weight: 500; letter-spacing: -0.05em; line-height: 1; }
.as-zahl-text { margin-top: 8px !important; font-size: 15px; color: #59605D; }
.as-oben-linie { border-top: 1px solid #111413; padding-top: 20px; }
.as-oben-linie > * { margin-top: 0; }

/* Karten */
.as-karte { background: #FFFFFF; border-radius: 24px; padding: 32px; }
.as-karte-linie { border: 1px solid #CFD2CD; border-radius: 24px; padding: 32px; }
.as-karte > *, .as-karte-linie > * { margin-top: 0; }
.as-band { background: #FFFFFF; border-radius: 32px; padding: clamp(32px, 5vw, 64px); display: flex !important; flex-wrap: wrap; gap: 32px 64px; align-items: flex-end; justify-content: space-between; }
.as-band > * { margin: 0 !important; }
.as-band > .as-band-text { flex: 1 1 560px; min-width: 0; }
.as-band-text .as-label { margin-bottom: 16px; }
.as-band-text .as-h2 { font-size: clamp(32px, 4vw, 56px) !important; margin-bottom: 20px !important; }

/* Leistungen als Zeilen */
.as-leistungen { border-top: 1px solid #111413; }
.as-leistungen > * { margin: 0 !important; }
.as-leistung { position: relative; display: flex !important; flex-wrap: wrap; align-items: baseline; gap: 8px 32px; padding: 32px 0; border-bottom: 1px solid #CFD2CD; }
.as-leistung > * { margin: 0 !important; }
.as-leistung-titel { flex: 1 1 360px; font-size: clamp(30px, 3.6vw, 52px) !important; letter-spacing: -0.05em !important; line-height: 1 !important; }
.as-leistung-titel a { text-decoration: none; }
.as-leistung-titel a::after { content: ""; position: absolute; inset: 0; }
.as-leistung-text { flex: 1 1 300px; color: #59605D; font-size: 17px; }
.as-leistung-preis { flex: 0 0 auto; font-family: var(--wp--preset--font-family--geist-mono); font-size: 14px; }
.as-leistung:hover .as-leistung-titel a { color: #59605D; }
.as-leistung-liste { flex: 1 1 300px; list-style: none; padding: 0 !important; font-size: 16px; }
.as-leistung-liste li { margin: 0 0 8px; }
.as-leistung-liste li:last-child { font-weight: 600; }

/* Ablauf */
.as-schritt > * { margin: 0 !important; }
.as-schritt-nr { font-size: 56px; font-weight: 300; letter-spacing: -0.05em; line-height: 1; color: #8A918E; margin-bottom: 16px !important; }
.as-schritt .as-h3 { font-size: 22px !important; margin-bottom: 6px !important; }
.as-schritt p:last-child { color: #59605D; font-size: 16px; }
.as-dunkel .as-schritt-nr { color: #7C8380; }
.as-dunkel .as-schritt p:last-child { color: #9AA19E; }

/* Kundenstimmen */
.as-zitat-gross { font-size: clamp(30px, 4vw, 60px); line-height: 1.08; letter-spacing: -0.045em; max-width: 1180px; margin: 0 0 32px !important; }
.as-zitat-mittel { font-size: clamp(26px, 3.2vw, 46px); line-height: 1.12; letter-spacing: -0.04em; margin: 0 0 24px !important; }
.as-zitat { font-size: 20px; line-height: 1.45; margin: 0 0 16px !important; }
.as-quelle { font-size: 15px; color: #59605D; margin: 0 !important; }
.as-quelle strong { font-weight: 400; color: #111413; }
.as-dunkel .as-quelle strong { color: #EDEDE9; }
.as-stimmen { border-top: 1px solid #2C3230; padding-top: 40px; margin-top: 80px !important; }
.as-stimme-linie { border-top: 1px solid #CFD2CD; padding-top: 32px; }
.as-stimme-linie > * { margin-top: 0; }
.as-thema { font-family: var(--wp--preset--font-family--geist-mono); font-size: 13px; color: #6B7370; margin: 0 0 12px !important; }
.as-spalten-text { column-width: 420px; column-gap: 48px; }
.as-spalten-text > * { break-inside: avoid; margin: 0 0 8px !important; }

/* Fragen */
.as-fragen { border-top: 1px solid #111413; }
.as-fragen > * { margin: 0 !important; }
.wp-block-details.as-frage { border-bottom: 1px solid #CFD2CD; padding: 24px 0; }
.wp-block-details.as-frage summary { font-size: 22px; font-weight: 500; letter-spacing: -0.03em; cursor: pointer; list-style: none; display: flex; justify-content: space-between; gap: 16px; }
.wp-block-details.as-frage summary::-webkit-details-marker { display: none; }
.wp-block-details.as-frage summary::after { content: "+"; font-weight: 300; }
.wp-block-details.as-frage[open] summary::after { content: "–"; }
.wp-block-details.as-frage > p { margin: 12px 0 0; color: #59605D; }

/* Module und Pakete */
.as-modul { border-top: 1px solid #EDEDE9; padding-top: 24px; }
.as-modul > * { margin-top: 0; }
.as-modul ul { list-style: none; padding: 0; font-size: 16px; color: #D2D6D3; }
.as-modul li { margin: 0 0 8px; }
.as-preis { font-size: 34px; font-weight: 300; letter-spacing: -0.05em; line-height: 1; margin: 0 0 24px !important; }
.as-modulzeile { display: flex !important; flex-wrap: wrap; gap: 6px 32px; padding: 24px 0; border-bottom: 1px solid #2C3230; }
.as-modulzeile > * { margin: 0 !important; }
.as-modulzeile > :first-child { flex: 1 1 280px; font-size: 26px; font-weight: 500; letter-spacing: -0.04em; }
.as-modulzeile > :last-child { flex: 1 1 360px; color: #9AA19E; font-size: 16px; }
.as-module-oben { border-top: 1px solid #EDEDE9; }
.as-module-oben > * { margin: 0 !important; }

/* Kunden Kacheln */
.as-kachel { background: #FFFFFF; border-radius: 20px; padding: 24px; min-height: 140px; display: flex !important; flex-direction: column; justify-content: space-between; }
.as-kachel > * { margin: 0 !important; }
.as-kachel-name { font-size: clamp(22px, 2.2vw, 30px); font-weight: 500; letter-spacing: -0.04em; line-height: 1.1; }
.as-gruppe > * { margin: 0 !important; }
.as-gruppe h3 { font-size: 20px !important; margin-bottom: 12px !important; }
.as-gruppe ul { list-style: none; padding: 0; color: #3B4240; font-size: 16px; }
.as-gruppe li { padding: 6px 0; border-top: 1px solid #CFD2CD; }

/* Kontakt */
.as-kontaktliste > * { margin: 0 !important; }
.as-kontakt-zeile { padding: 24px 0; border-bottom: 1px solid #CFD2CD; }
.as-kontakt-zeile > * { margin: 0 !important; }
.as-kontakt-zeile .as-label { font-size: 13px; margin-bottom: 6px !important; }
.as-kontakt-gross { font-size: clamp(26px, 3.2vw, 42px); font-weight: 500; letter-spacing: -0.04em; line-height: 1.1; overflow-wrap: anywhere; }
.as-kontakt-gross a { text-decoration: none; }

/* Video Karte */
.as-videokarte { background: #111413; color: #EDEDE9; border-radius: 28px; padding: clamp(28px, 4vw, 48px); position: relative; display: flex !important; flex-wrap: wrap; align-items: center; gap: 24px 32px; }
.as-videokarte > * { margin: 0 !important; }
.as-videokarte::before { content: "▶"; flex: 0 0 auto; width: 88px; height: 88px; border-radius: 999px; background: #EDEDE9; color: #111413; display: inline-flex; align-items: center; justify-content: center; font-size: 26px; }
.as-videokarte p:first-child { flex: 1 1 320px; font-size: clamp(22px, 2.6vw, 34px); font-weight: 500; letter-spacing: -0.04em; line-height: 1.15; }
.as-videokarte a { color: #EDEDE9; text-decoration: none; }
.as-videokarte a::after { content: ""; position: absolute; inset: 0; }
.as-videokarte .as-label { color: #9AA19E; flex-basis: 100%; }

/* Beitragslisten */
.as-beitragsliste { border-top: 1px solid #111413; }
.as-beitragsliste .wp-block-post-template { list-style: none; padding: 0; margin: 0; }
.as-beitragsliste .wp-block-post { display: flex; flex-wrap: wrap; gap: 6px 32px; padding: 22px 0; border-bottom: 1px solid #CFD2CD; margin: 0; position: relative; }
.as-beitragsliste .wp-block-post > * { margin: 0 !important; }
.as-beitragsliste .wp-block-post-terms { flex: 0 0 140px; font-family: var(--wp--preset--font-family--geist-mono); font-size: 13px; color: #6B7370; padding-top: 5px; }
.as-beitragsliste .wp-block-post-terms a { color: #6B7370; text-decoration: none; position: relative; z-index: 2; }
.as-beitragsliste .wp-block-post-title { flex: 1 1 360px; font-size: 22px; font-weight: 500; letter-spacing: -0.03em; line-height: 1.25; }
.as-beitragsliste .wp-block-post-title a { text-decoration: none; }
.as-beitragsliste .wp-block-post-title a::after { content: ""; position: absolute; inset: 0; }
.as-beitragsliste .wp-block-post-excerpt { flex: 1 1 100%; padding-left: 172px; color: #59605D; font-size: 16px; }
.as-beitragsliste .wp-block-post-excerpt__more-text { display: none; }
@media (max-width: 700px) { .as-beitragsliste .wp-block-post-excerpt { padding-left: 0; } }
.wp-block-query-pagination { margin-top: 40px !important; gap: 16px; font-weight: 500; }
.wp-block-query-pagination a { text-decoration: none; }
.as-filter { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 32px; padding: 0; list-style: none; }
.as-filter a { display: inline-flex; align-items: center; min-height: 40px; padding: 8px 18px; border-radius: 999px; border: 1px solid #B9BEBB; text-decoration: none; font-size: 15px; }
.as-filter a.ist-aktiv { background: #111413; color: #FFFFFF; border-color: #111413; }

/* Kopf */
.as-kopf { padding: 20px max(24px, calc((100% - 1312px) / 2)); display: flex !important; align-items: center; justify-content: space-between; gap: 12px 32px; flex-wrap: wrap; position: relative; z-index: 20; }
.as-kopf > * { margin: 0 !important; }
.as-kopf .wp-block-site-title { font-weight: 600; font-size: 19px; letter-spacing: -0.03em; }
.as-kopf .wp-block-site-title a { text-decoration: none; }
.as-kopf .wp-block-navigation { font-size: 15px; gap: 4px 28px; }
.as-kopf .wp-block-navigation a { text-decoration: none; padding: 10px 0; }
.as-kopf .wp-block-navigation .current-menu-item > a { border-bottom: 1px solid #111413; }
.as-kopf .wp-block-button__link { font-size: 15px; padding: 11px 22px; }
.as-kopf .wp-block-navigation__responsive-container.is-menu-open { background: #EDEDE9 !important; padding: 24px; }
.as-kopf .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a { font-size: 30px; font-weight: 500; letter-spacing: -0.04em; }
.as-kopf .wp-block-navigation__responsive-container-open { border: 1px solid #B9BEBB; border-radius: 999px; padding: 10px 14px; }
@media (max-width: 599px) { .as-kopf .as-kopf-knopf { display: none; } }

/* Fuß */
.as-kontaktbereich { margin: 96px 16px 0 !important; }
.as-kontaktbereich .as-h1 { font-size: clamp(48px, 9vw, 140px) !important; line-height: 0.92 !important; margin: 0 0 56px !important; }
.as-kontaktbereich .wp-block-buttons { align-items: center; gap: 16px 40px; }
.as-kontaktbereich .as-kontakt-links { margin: 0; display: flex; flex-wrap: wrap; gap: 16px 40px; font-size: 17px; }
.as-kontaktbereich .as-kontakt-links a { text-decoration: none; }
.as-fuss { padding: 80px max(24px, calc((100% - 1312px) / 2)) 40px; }
.as-fuss > * { margin: 0 !important; }
.as-fuss-spalten { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 40px; padding-bottom: 56px; border-bottom: 1px solid #CFD2CD; }
.as-fuss-spalten > * { margin: 0 !important; }
.as-fuss-spalten ul { list-style: none; padding: 0; margin: 0; font-size: 15px; }
.as-fuss-spalten li { margin: 0 0 10px; }
.as-fuss-spalten a { text-decoration: none; }
.as-fuss-name { font-weight: 600; font-size: 19px; letter-spacing: -0.03em; margin: 0 0 12px !important; }
.as-fuss-unten { display: flex !important; flex-wrap: wrap; justify-content: space-between; gap: 12px 28px; padding-top: 28px; font-size: 14px; color: #59605D; }
.as-fuss-unten > * { margin: 0 !important; }
.as-fuss-unten a { color: #59605D; }
.as-fuss .as-label { font-size: 13px; margin-bottom: 14px !important; }

/* Artikel */
.as-artikel-kopf { padding: 56px max(24px, calc((100% - 1312px) / 2)) 48px; }
.as-artikel-kopf > * { margin: 0 !important; }
.as-artikel-kopf .wp-block-post-title { font-size: clamp(40px, 6.4vw, 96px); line-height: 0.98; letter-spacing: -0.055em; font-weight: 500; max-width: 1180px; margin: 0 0 32px !important; }
.as-artikel-kopf .as-meta { display: flex; flex-wrap: wrap; gap: 6px 24px; font-family: var(--wp--preset--font-family--geist-mono); font-size: 14px; color: #6B7370; }
.as-artikel-kopf .as-meta > * { margin: 0; }
.as-artikel-kopf .as-meta a { color: #6B7370; text-decoration: none; }
.as-krume { margin-bottom: 32px !important; }
.as-krume a { color: #6B7370; text-decoration: none; }
.as-artikel-bild { padding: 0 max(24px, calc((100% - 1312px) / 2)) 64px; margin: 0 !important; }
.as-artikel-bild img { width: 100%; aspect-ratio: 21 / 9; object-fit: cover; border-radius: 28px; display: block; }
.as-artikel { padding: 56px max(24px, calc((100% - 1312px) / 2)) 96px; border-top: 1px solid #CFD2CD; display: flex !important; flex-wrap: wrap; gap: 48px 64px; align-items: flex-start; }
.as-artikel > * { margin: 0 !important; }
.as-artikel > .as-randspalte { flex: 0 1 260px; min-width: 0; position: sticky; top: 24px; }
.as-artikel > .as-text { flex: 1 1 640px; min-width: 0; max-width: 760px; }
@media (max-width: 960px) { .as-artikel > .as-randspalte { position: static; flex-basis: 100%; } }
.as-inhaltsverz { margin: 0 0 40px; }
.as-inhaltsverz ol { list-style: none; padding: 0; margin: 12px 0 0; font-size: 15px; border-top: 1px solid #111413; }
.as-inhaltsverz li { border-bottom: 1px solid #CFD2CD; }
.as-inhaltsverz a { display: block; padding: 10px 0; color: #3B4240; text-decoration: none; }
.as-passend { background: #FFFFFF; border-radius: 20px; padding: 24px; }
.as-passend p { margin: 0 0 12px; }
.as-passend .as-passend-titel { font-size: 22px; font-weight: 500; letter-spacing: -0.03em; }
.as-passend .as-passend-text { font-size: 15px; color: #59605D; }
.as-passend .wp-block-button__link { font-size: 15px; padding: 11px 20px; }
.as-weiterlesen { padding: 96px max(24px, calc((100% - 1312px) / 2)); border-top: 1px solid #CFD2CD; }
.as-weiterlesen .as-wl-zeile { display: flex; flex-wrap: wrap; gap: 32px 64px; }
.as-weiterlesen .as-wl-liste { flex: 1 1 640px; min-width: 0; border-top: 1px solid #111413; list-style: none; padding: 0; margin: 0; }
.as-weiterlesen .as-wl-liste a { display: flex; flex-wrap: wrap; gap: 6px 32px; padding: 22px 0; border-bottom: 1px solid #CFD2CD; text-decoration: none; }
.as-weiterlesen .as-wl-kat { flex: 0 0 140px; font-family: var(--wp--preset--font-family--geist-mono); font-size: 13px; color: #6B7370; padding-top: 5px; }
.as-weiterlesen .as-wl-titel { flex: 1 1 360px; font-size: 22px; font-weight: 500; letter-spacing: -0.03em; line-height: 1.25; }
.as-weiterlesen .as-label { flex: 0 0 200px; }

/* Fließtext in Artikeln und Textseiten */
.as-prose { font-size: 19px; line-height: 1.7; color: #22282A; }
.as-prose > * { margin-top: 0; margin-bottom: 22px; }
.as-prose h2 { font-size: clamp(28px, 3vw, 40px); line-height: 1.1; letter-spacing: -0.04em; font-weight: 500; color: #111413; margin: 64px 0 20px; scroll-margin-top: 24px; }
.as-prose h3 { font-size: 24px; line-height: 1.2; letter-spacing: -0.03em; font-weight: 500; margin: 40px 0 14px; }
.as-prose h4 { font-size: 20px; font-weight: 600; margin: 28px 0 10px; }
.as-prose ul, .as-prose ol { padding-left: 22px; }
.as-prose li { margin: 0 0 8px; }
.as-prose a { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.as-prose strong { font-weight: 600; color: #111413; }
.as-prose blockquote { margin: 32px 0; padding: 0 0 0 24px; border-left: 2px solid #111413; font-size: 22px; line-height: 1.5; letter-spacing: -0.02em; }
.as-prose hr { border: 0; border-top: 1px solid #CFD2CD; margin: 48px 0; }
.as-prose table { width: 100%; border-collapse: collapse; font-size: 16px; display: block; overflow-x: auto; }
.as-prose th, .as-prose td { border-bottom: 1px solid #CFD2CD; padding: 10px 12px; text-align: left; vertical-align: top; }
.as-prose th { font-weight: 600; }
.as-prose img { max-width: 100%; height: auto; border-radius: 16px; }
.as-prose figure, .as-prose .bild { margin: 32px 0; }
.as-prose .bild img { display: block; margin: 0 auto; }
.as-prose .knopf a, .as-prose .videolink a { display: inline-flex; align-items: center; min-height: 44px; padding: 12px 22px; border-radius: 999px; background: #111413; color: #FFFFFF; text-decoration: none; font-size: 16px; font-weight: 500; }
.as-prose .videolink a { background: transparent; color: #111413; border: 1px solid #111413; }
.as-textseite { padding: 56px max(24px, calc((100% - 1312px) / 2)) 96px; border-top: 1px solid #CFD2CD; }
.as-textseite > .as-prose { max-width: 760px; }

/* Kleine Bildschirme */
@media (max-width: 781px) {
	.as-sec { padding-top: 64px; padding-bottom: 64px; }
	.as-sec.as-dunkel { padding-top: 72px; padding-bottom: 72px; margin: 0 8px !important; border-radius: 24px; }
	.as-zeile > .as-label { flex-basis: 100%; }
	.as-kontaktbereich { margin: 64px 8px 0 !important; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Menüpunkt Kontakt nur im Handymenü */
@media (min-width: 600px) { .as-kopf .as-nur-mobil { display: none !important; } }

/* Artikellisten auf Seiten */
.as-artikelliste { border-top: 1px solid #111413; list-style: none; padding: 0; margin: 0; }
.as-artikelliste a { display: flex; flex-wrap: wrap; gap: 6px 32px; padding: 22px 0; border-bottom: 1px solid #CFD2CD; text-decoration: none; }
.as-artikelliste .as-wl-kat { flex: 0 0 140px; font-family: var(--wp--preset--font-family--geist-mono); font-size: 13px; color: #6B7370; padding-top: 5px; }
.as-artikelliste .as-wl-titel { flex: 1 1 360px; font-size: 22px; font-weight: 500; letter-spacing: -0.03em; line-height: 1.25; }
.as-alle { margin: 24px 0 0; font-weight: 500; }

/* Werdegang */
.as-lauf { border-top: 1px solid #111413; }
.as-lauf > * { margin: 0 !important; }
.as-lauf-zeile { display: flex !important; flex-wrap: wrap; gap: 8px 32px; padding: 28px 0; border-bottom: 1px solid #CFD2CD; }
.as-lauf-zeile > * { margin: 0 !important; }
.as-lauf-zeile > .as-label { flex: 0 0 140px; padding-top: 8px; }
.as-lauf-zeile > :last-child { flex: 1 1 360px; font-size: clamp(22px, 2.4vw, 32px); font-weight: 500; letter-spacing: -0.04em; line-height: 1.15; }

/* Links mit großer Schrift auf Dunkel */
.as-wissen-link { border-top: 1px solid #2C3230; padding: 28px 0; }
.as-wissen-link > * { margin: 0 !important; }
.as-wissen-link .as-label { font-size: 13px; margin-bottom: 10px !important; }
.as-wissen-link p:last-child { font-size: 28px; font-weight: 500; letter-spacing: -0.04em; line-height: 1.1; }
.as-wissen-link a { text-decoration: none; }
.as-gross-wort { font-size: clamp(36px, 4vw, 56px); font-weight: 500; letter-spacing: -0.055em; line-height: 1; margin: 0 0 12px !important; }
.as-passt-links { display: flex; flex-wrap: wrap; gap: 12px 40px; font-size: clamp(22px, 2.4vw, 32px); font-weight: 500; letter-spacing: -0.04em; }
.as-passt-links a { text-decoration: none; }
.as-inhalt > * + .as-raster-3, .as-inhalt > * + .as-raster-4, .as-inhalt > * + .as-band, .as-inhalt > .as-aussage + * { margin-top: 56px !important; }
.as-inhalt > .as-h2 + * { margin-top: 0 !important; }
.as-kontaktbereich > .as-label { margin-bottom: 32px !important; }
.as-kontaktbereich > .as-kontakt-links { margin-top: 20px !important; }
.as-fuss-unten p a + a { margin-left: 24px; }
.as-hero-unten > .as-hero-text:only-child { margin-left: auto !important; }
@media (min-width: 961px) { .as-artikel > .as-randspalte { max-height: calc(100vh - 48px); overflow-y: auto; } }
.as-raster-4:has(> .as-zahl), .as-raster-4:has(> .as-schritt) { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
