/*
 * Presseclub Magdeburg · Theme 0.18.0
 * Design System & Konsolidierung
 *
 * Conservative final layer: no geometry changes to approved hero, sticky navigation,
 * page tools or event layouts. It normalizes shared visual primitives and fixes
 * cross-page consistency without deleting legacy component rules.
 */

:root{
	/* Brand */
	--pcm-color-red:#ef141d;
	--pcm-color-red-ui:#e7121b;
	--pcm-color-red-text:#df0e17;
	--pcm-color-red-dark:#cf0d16;
	--pcm-color-yellow:#f5d400;
	--pcm-color-cream:#fbf5ed;
	--pcm-color-ink:#101113;
	--pcm-color-white:#fff;

	/* Supporting surfaces */
	--pcm-color-pink:#f5c0d8;
	--pcm-color-pink-soft:#f7c9df;
	--pcm-color-yellow-soft:#fff2a8;
	--pcm-color-surface:#fff;
	--pcm-color-surface-soft:#fffaf7;
	--pcm-color-border:#e7ddd6;
	--pcm-color-border-strong:#ddd6d0;
	--pcm-color-muted:#625751;
	--pcm-color-muted-soft:#756b65;

	/* Typography */
	--pcm-font-display:"Anton",Impact,"Arial Narrow",Arial,sans-serif;
	--pcm-font-heading:"Barlow Condensed",Arial,sans-serif;
	--pcm-font-ui:"Montserrat",Arial,sans-serif;
	--pcm-font-accent:"Bebas Neue",Arial,sans-serif;
	--pcm-font-body:Arial,Helvetica,sans-serif;

	/* Shape & depth */
	--pcm-radius-sm:9px;
	--pcm-radius-md:14px;
	--pcm-radius-lg:22px;
	--pcm-radius-pill:999px;
	--pcm-shadow-soft:0 8px 24px rgba(50,20,10,.06);
	--pcm-shadow-card:0 12px 30px rgba(35,0,0,.13);
	--pcm-shadow-control:0 5px 14px rgba(90,0,0,.12);

	/* Compatibility: the established component variables now derive from one source. */
	--red:var(--pcm-color-red);
	--red-ui:var(--pcm-color-red-ui);
	--red-text:var(--pcm-color-red-text);
	--red-dark:var(--pcm-color-red-dark);
	--cream:var(--pcm-color-cream);
	--ink:var(--pcm-color-ink);
	--yellow:var(--pcm-color-yellow);
	--shadow:var(--pcm-shadow-card);
	--nav-border:var(--pcm-color-border-strong);
}

/* ---------- Shared typography primitives ---------- */
:where(
	.pcm-member-kicker,
	.pcm-about-kicker,
	.pcm-contact-kicker,
	.pcm-404-kicker,
	.pcm-member-section-heading>span,
	.pcm-about-section-heading>span,
	.pcm-contact-section-heading>span,
	.pcm-404-options-head>span
){
	font-family:var(--pcm-font-ui);
	font-weight:900;
	line-height:1;
	letter-spacing:.075em;
}

:where(
	.pcm-member-section-heading h2,
	.pcm-about-section-heading h2,
	.pcm-contact-section-heading h2,
	.pcm-404-options-head h2
){
	font-family:var(--pcm-font-display);
	font-weight:400;
	line-height:.98;
	letter-spacing:-.01em;
	text-transform:uppercase;
}

/* Desktop section headings now share one optical scale; mobile tuning stays component-specific. */
@media(min-width:560px){
	:where(
		.pcm-member-section-heading h2,
		.pcm-about-section-heading h2,
		.pcm-contact-section-heading h2,
		.pcm-404-options-head h2
	){font-size:4.8cqw}

	:where(
		.pcm-member-section-heading>span,
		.pcm-about-section-heading>span,
		.pcm-contact-section-heading>span,
		.pcm-404-options-head>span
	){font-size:1cqw}
}

/* ---------- Shared button/CTA behavior ---------- */
:where(
	.inline-link,
	.pcm-member-primary-cta,
	.pcm-member-submit,
	.pcm-contact-submit,
	.pcm-about-cta>a,
	.pcm-404-contact>a
){
	font-family:var(--pcm-font-ui);
	font-weight:900;
	text-decoration:none;
	transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}

:where(
	.inline-link,
	.pcm-member-submit,
	.pcm-contact-submit,
	.pcm-about-cta>a,
	.pcm-404-contact>a
):hover{
	background:var(--pcm-color-red-dark);
}

:where(
	.inline-link,
	.pcm-member-primary-cta,
	.pcm-member-submit,
	.pcm-contact-submit,
	.pcm-about-cta>a,
	.pcm-404-contact>a
):focus-visible{
	outline:3px solid var(--pcm-color-yellow);
	outline-offset:3px;
}

:where(
	.inline-link b,
	.pcm-member-primary-cta b,
	.pcm-member-submit b,
	.pcm-contact-submit b,
	.pcm-about-cta>a b,
	.pcm-404-contact>a b
){
	font-family:Arial,Helvetica,sans-serif;
	font-weight:900;
	font-style:normal;
}

/* ---------- Forms ---------- */
:where(.pcm-member-form,.pcm-contact-form) :where(input,select,textarea){
	font-family:var(--pcm-font-body);
	color:var(--pcm-color-ink);
	transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}

:where(.pcm-member-form,.pcm-contact-form) :where(input,select,textarea):focus{
	border-color:var(--pcm-color-red);
	box-shadow:0 0 0 3px rgba(239,20,29,.09);
	outline:0;
}

/* ---------- Navigation ---------- */
/* Menu labels were intentionally approved in normal title case. */
.drawer a,
.drawer button,
.drawer li a{
	font-family:var(--pcm-font-ui);
	font-weight:700;
	text-transform:none;
}

.bottom-nav a,
.bottom-nav button,
.legal-links a,
.pcm-external-media-reset{
	font-family:var(--pcm-font-ui);
}

/* ---------- Shared card polish without altering component geometry ---------- */
:where(
	.pcm-member-benefit-grid article,
	.pcm-about-mission-grid article,
	.pcm-board-card,
	.pcm-contact-address-card,
	.pcm-contact-form-card,
	.pcm-member-form-card
){
	box-shadow:var(--pcm-shadow-soft);
}

/* ---------- Readability: correct live selectors ---------- */
.drawer a,
.bottom-nav a,
.bottom-nav button{
	font-size:max(13px,.9cqw);
}

.pcm-member-main :where(p,li),
.pcm-about-main :where(p,li),
.pcm-contact-main :where(p,li){
	line-height:1.55;
}

/* Never allow long content to create horizontal overflow inside shared cards. */
:where(
	.pcm-member-main,
	.pcm-about-main,
	.pcm-contact-main,
	.pcm-404-main
) :where(p,a,li,strong,span){
	overflow-wrap:break-word;
}

@media(prefers-reduced-motion:reduce){
	:where(
		.inline-link,
		.pcm-member-primary-cta,
		.pcm-member-submit,
		.pcm-contact-submit,
		.pcm-about-cta>a,
		.pcm-404-contact>a
	){transition:none}
}

/* ---------- Theme 0.18.1 · unusually long single-word headlines ---------- */
/*
 * Normal headlines keep their approved scale. Only titles containing a word of
 * 18+ characters receive this class from PHP. This prevents accessibility-wide
 * overflow-wrap rules from producing breaks such as "...ERKLÄRUN / G".
 */
.pcm-inner-header h1.pcm-heading-longword{
	max-width:90cqw;
	font-size:6.05cqw;
	letter-spacing:-.015em;
	overflow-wrap:normal!important;
	word-break:normal!important;
	hyphens:auto;
}

@media(max-width:559px){
	.pcm-inner-header h1.pcm-heading-longword{
		max-width:100%!important;
		font-size:clamp(31px,9.5vw,42px)!important;
		line-height:.98!important;
		overflow-wrap:normal!important;
		word-break:normal!important;
		hyphens:auto;
	}
}


/* ==========================================================================
   0.18.5 · Mobile Sticky Bottom Navigation
   Etwas kompaktere Labels und keine Wortzerreißung innerhalb der Menüpunkte.
   ========================================================================== */
@media(max-width:559px){
	.pcm-sticky-bottom-stack .bottom-nav a,
	.pcm-sticky-bottom-stack .bottom-nav button{
		font-size:11px;
		line-height:1.06;
		overflow-wrap:normal;
		word-break:normal;
		hyphens:none;
		-webkit-hyphens:none;
	}

	.pcm-sticky-bottom-stack .bottom-nav a span,
	.pcm-sticky-bottom-stack .bottom-nav button span{
		overflow-wrap:normal;
		word-break:normal;
		hyphens:none;
		-webkit-hyphens:none;
	}

	.pcm-sticky-bottom-stack .bottom-nav .nav-membership span{
		font-size:10.5px;
		line-height:1.04;
	}
}

@media(max-width:380px){
	.pcm-sticky-bottom-stack .bottom-nav a,
	.pcm-sticky-bottom-stack .bottom-nav button{
		font-size:10.5px;
	}
	.pcm-sticky-bottom-stack .bottom-nav .nav-membership span{
		font-size:10px;
	}
}


/* ==========================================================================
   0.18.6 · Mitglied werden · wichtige Unterlagen
   Mitgliedsantrag und Satzung werden als gleichwertige Dokumente angeboten.
   ========================================================================== */
.pcm-member-documents{
	margin-top:2cqw;
	padding-top:1.5cqw;
	border-top:1px solid rgba(100,40,40,.14);
}

.pcm-member-documents-label{
	display:block;
	margin-bottom:.8cqw;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:1cqw;
	font-weight:900;
	letter-spacing:.08em;
	color:#3c2626;
}

.pcm-member-document-links{
	display:flex;
	flex-wrap:wrap;
	gap:.65cqw 1.2cqw;
}

.pcm-member-document-links a{
	display:inline-flex;
	align-items:center;
	gap:.6cqw;
	color:var(--red-text);
	font-family:"Montserrat",Arial,sans-serif;
	font-size:1.05cqw;
	font-weight:900;
	text-decoration:none;
}

.pcm-member-document-links a:hover,
.pcm-member-document-links a:focus-visible{
	text-decoration:underline;
	text-underline-offset:3px;
}

@media(max-width:559px){
	.pcm-member-documents{
		margin-top:18px;
		padding-top:14px;
	}
	.pcm-member-documents-label{
		margin-bottom:8px;
		font-size:10px;
	}
	.pcm-member-document-links{
		display:grid;
		gap:9px;
	}
	.pcm-member-document-links a{
		font-size:11px;
		line-height:1.3;
	}
}


/* ==========================================================================
   0.18.7 · Mitglied werden · prominente Dokument-Karten
   ========================================================================== */
.pcm-member-document-cards{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:1cqw;
}

.pcm-member-document-card{
	display:grid;
	grid-template-columns:auto minmax(0,1fr) auto;
	gap:.8cqw;
	align-items:center;
	min-height:7.2cqw;
	padding:1.05cqw 1.15cqw;
	border:2px solid var(--red-text);
	border-radius:1.25cqw;
	background:rgba(255,255,255,.42);
	color:#241818;
	text-decoration:none;
	box-shadow:0 .35cqw 1.1cqw rgba(115,25,35,.08);
	transition:transform .16s ease,box-shadow .16s ease,background .16s ease;
}

.pcm-member-document-card:hover,
.pcm-member-document-card:focus-visible{
	background:#fff7fa;
	transform:translateY(-2px);
	box-shadow:0 .55cqw 1.4cqw rgba(115,25,35,.12);
	text-decoration:none;
}

.pcm-member-document-icon{
	display:grid;
	place-items:center;
	width:3.1cqw;
	height:3.1cqw;
	border-radius:.72cqw;
	background:var(--red-text);
	color:#fff;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:.8cqw;
	font-weight:900;
	letter-spacing:.03em;
}

.pcm-member-document-copy{
	display:grid;
	gap:.28cqw;
	min-width:0;
}

.pcm-member-document-copy strong{
	font-family:"Montserrat",Arial,sans-serif;
	font-size:1.08cqw;
	line-height:1.15;
	font-weight:900;
	color:var(--red-text);
}

.pcm-member-document-copy small{
	font-family:"Montserrat",Arial,sans-serif;
	font-size:.78cqw;
	line-height:1.4;
	font-weight:600;
	color:#4d3838;
}

.pcm-member-document-card>b{
	color:var(--red-text);
	font-size:1.35cqw;
	line-height:1;
}

@media(max-width:900px){
	.pcm-member-document-cards{
		grid-template-columns:1fr;
	}
}

@media(max-width:559px){
	.pcm-member-documents{
		margin-top:22px;
		padding-top:18px;
	}
	.pcm-member-documents-label{
		margin-bottom:10px;
		font-size:10px;
	}
	.pcm-member-document-cards{
		gap:10px;
	}
	.pcm-member-document-card{
		min-height:84px;
		padding:13px 14px;
		gap:11px;
		border-radius:14px;
	}
	.pcm-member-document-icon{
		width:42px;
		height:42px;
		border-radius:10px;
		font-size:11px;
	}
	.pcm-member-document-copy{
		gap:3px;
	}
	.pcm-member-document-copy strong{
		font-size:14px;
	}
	.pcm-member-document-copy small{
		font-size:11px;
		line-height:1.35;
	}
	.pcm-member-document-card>b{
		font-size:18px;
	}
}

@media(prefers-reduced-motion:reduce){
	.pcm-member-document-card{
		transition:none;
	}
	.pcm-member-document-card:hover,
	.pcm-member-document-card:focus-visible{
		transform:none;
	}
}


/* ==========================================================================
   0.18.8 · Mitglied werden · Dokumente einspaltig + Formtypografie größer
   ========================================================================== */

/* Dokumente im schmalen linken Bereich grundsätzlich untereinander */
.pcm-member-document-cards{
	grid-template-columns:1fr !important;
	gap:1cqw;
}

.pcm-member-document-card{
	min-height:8.2cqw;
	padding:1.2cqw 1.3cqw;
	gap:1cqw;
}

.pcm-member-document-icon{
	width:3.5cqw;
	height:3.5cqw;
	font-size:.9cqw;
}

.pcm-member-document-copy strong{
	font-size:1.18cqw;
	line-height:1.16;
}

.pcm-member-document-copy small{
	font-size:.88cqw;
	line-height:1.45;
}

.pcm-member-document-card>b{
	font-size:1.5cqw;
}

/* Online-Formular: funktionale Schrift etwas größer */
.pcm-member-form,
.pcm-member-form input,
.pcm-member-form select,
.pcm-member-form textarea,
.pcm-member-form button{
	font-family:"Montserrat",Arial,sans-serif;
}

.pcm-member-form label,
.pcm-member-form .pcm-member-field > span,
.pcm-member-form .pcm-member-field-label{
	font-size:1.02cqw;
	line-height:1.25;
}

.pcm-member-form input[type="text"],
.pcm-member-form input[type="email"],
.pcm-member-form input[type="tel"],
.pcm-member-form input[type="date"],
.pcm-member-form input[type="number"],
.pcm-member-form select,
.pcm-member-form textarea{
	font-size:1.02cqw;
	line-height:1.35;
}

.pcm-member-form small,
.pcm-member-form .description,
.pcm-member-form .pcm-member-help{
	font-size:.9cqw;
	line-height:1.4;
}

.pcm-member-form .pcm-member-option strong,
.pcm-member-form .pcm-member-choice strong{
	font-size:1cqw;
	line-height:1.25;
}

.pcm-member-form .pcm-member-option span,
.pcm-member-form .pcm-member-choice span{
	font-size:.9cqw;
	line-height:1.4;
}

@media(max-width:900px){
	.pcm-member-document-card{
		min-height:94px;
		padding:15px 16px;
		gap:12px;
	}
	.pcm-member-document-icon{
		width:44px;
		height:44px;
		font-size:11px;
	}
	.pcm-member-document-copy strong{
		font-size:15px;
	}
	.pcm-member-document-copy small{
		font-size:12px;
	}
	.pcm-member-document-card>b{
		font-size:19px;
	}

	.pcm-member-form label,
	.pcm-member-form .pcm-member-field > span,
	.pcm-member-form .pcm-member-field-label{
		font-size:13px;
	}
	.pcm-member-form input[type="text"],
	.pcm-member-form input[type="email"],
	.pcm-member-form input[type="tel"],
	.pcm-member-form input[type="date"],
	.pcm-member-form input[type="number"],
	.pcm-member-form select,
	.pcm-member-form textarea{
		font-size:14px;
	}
	.pcm-member-form small,
	.pcm-member-form .description,
	.pcm-member-form .pcm-member-help,
	.pcm-member-form .pcm-member-option span,
	.pcm-member-form .pcm-member-choice span{
		font-size:12px;
	}
	.pcm-member-form .pcm-member-option strong,
	.pcm-member-form .pcm-member-choice strong{
		font-size:13px;
	}
}

@media(max-width:559px){
	.pcm-member-document-card{
		min-height:92px;
		padding:14px;
	}
	.pcm-member-document-copy strong{
		font-size:15px;
	}
	.pcm-member-document-copy small{
		font-size:12px;
	}

	/* 16 px verhindert zusätzlich Browser-Zoom auf iOS */
	.pcm-member-form input[type="text"],
	.pcm-member-form input[type="email"],
	.pcm-member-form input[type="tel"],
	.pcm-member-form input[type="date"],
	.pcm-member-form input[type="number"],
	.pcm-member-form select,
	.pcm-member-form textarea{
		font-size:16px;
	}
	.pcm-member-form label,
	.pcm-member-form .pcm-member-field > span,
	.pcm-member-form .pcm-member-field-label{
		font-size:13px;
	}
}


/* ==========================================================================
   0.19.0 · Typografie & Lesbarkeit
   Systematische Inhalts-Untergrenzen über das gesamte Theme.
   Dekorative Kicker, Datums-Metadaten sowie Sticky-/Footer-Navigation bleiben
   bewusst kompakter; normale Inhalte und funktionale Texte nicht.
   ========================================================================== */

/* ---------- Grundlegende Inhaltslesbarkeit ---------- */
.entry-content,
.entry-content p,
.entry-content li,
.pcm-inner-content,
.pcm-inner-content p,
.pcm-inner-content li,
.pcm-about-main p,
.pcm-about-main li,
.pcm-member-main p,
.pcm-member-main li,
.pcm-contact-main p,
.pcm-contact-main li,
.pcm-404-copy > p,
.pcm-404-card p,
.pcm-404-contact p,
.pcm-404-search-copy p{
	font-size:max(16px,1.08cqw) !important;
	line-height:1.62;
}

/* normale Inhaltslinks / Buttons */
.entry-content a,
.pcm-about-main a,
.pcm-member-main a,
.pcm-contact-main a,
.pcm-about-main button,
.pcm-member-main button,
.pcm-contact-main button,
.pcm-404-primary-actions a,
.pcm-404-contact > a,
.pcm-404-search-form button{
	font-size:max(15px,1cqw);
}

/* sekundäre, aber inhaltlich wichtige Texte */
.pcm-about-main small,
.pcm-member-main small,
.pcm-contact-main small,
.pcm-member-form small,
.pcm-membership-note,
.pcm-member-payment-note,
.pcm-contact-social-card small,
.pcm-404-card small,
.pcm-404-contact > div > span,
.pcm-external-media small{
	font-size:max(13px,.9cqw) !important;
	line-height:1.45;
}

/* ---------- Karten / Übersichten ---------- */
.pcm-list-card p,
.pcm-member-benefit-grid p,
.pcm-member-price-card p,
.pcm-member-decision-note,
.pcm-contact-card p,
.pcm-about-board-card p,
.pcm-about-partner-card p{
	font-size:max(15px,1cqw) !important;
	line-height:1.55;
}

.pcm-list-card time,
.pcm-contact-card > span,
.pcm-contact-social-head > span{
	font-size:max(13px,.88cqw);
}

/* ---------- Mitglied werden ---------- */
.pcm-member-form-intro > p{
	font-size:max(16px,1.08cqw) !important;
	line-height:1.6;
}

.pcm-form-field > span,
.pcm-member-form label,
.pcm-member-form .pcm-member-field > span,
.pcm-member-form .pcm-member-field-label,
.pcm-contact-form-grid > label > span{
	font-size:max(14px,.95cqw) !important;
	line-height:1.3;
}

.pcm-member-form input[type="text"],
.pcm-member-form input[type="email"],
.pcm-member-form input[type="tel"],
.pcm-member-form input[type="date"],
.pcm-member-form input[type="number"],
.pcm-member-form select,
.pcm-member-form textarea,
.pcm-contact-form input,
.pcm-contact-form textarea,
.pcm-contact-form select,
.pcm-404-search-form input[type="search"]{
	font-size:max(15px,1cqw) !important;
	line-height:1.4;
}

.pcm-membership-choice strong,
.pcm-member-form .pcm-member-option strong,
.pcm-member-form .pcm-member-choice strong{
	font-size:max(15px,1cqw) !important;
	line-height:1.3;
}

.pcm-membership-choice small,
.pcm-member-form .pcm-member-option span,
.pcm-member-form .pcm-member-choice span,
.pcm-member-form .description,
.pcm-member-form .pcm-member-help{
	font-size:max(14px,.94cqw) !important;
	line-height:1.45;
}

.pcm-member-consent,
.pcm-member-payment-note{
	font-size:max(14px,.94cqw) !important;
	line-height:1.45;
}

/* Wichtige Unterlagen: bewusst präsent, nicht als Kleingedrucktes */
.pcm-member-documents-label{
	font-size:max(12px,.82cqw) !important;
}

.pcm-member-document-card{
	min-height:96px;
	padding:16px 17px;
	gap:13px;
}

.pcm-member-document-icon{
	width:46px;
	height:46px;
	font-size:12px !important;
}

.pcm-member-document-copy strong{
	font-size:max(16px,1.08cqw) !important;
	line-height:1.2;
}

.pcm-member-document-copy small{
	font-size:max(14px,.95cqw) !important;
	line-height:1.45;
}

.pcm-member-document-card > b{
	font-size:max(20px,1.45cqw) !important;
}

/* ---------- Kontakt ---------- */
.pcm-contact-card > strong,
.pcm-contact-social-card strong{
	font-size:max(16px,1.08cqw) !important;
}

.pcm-contact-privacy > span{
	font-size:max(14px,.94cqw) !important;
	line-height:1.45;
}

/* ---------- Über uns ---------- */
.pcm-about-main summary,
.pcm-about-main summary span,
.pcm-about-main .pcm-about-board-card,
.pcm-about-main .pcm-about-partner-card{
	font-size:max(15px,1cqw) !important;
}

/* ---------- Externe Medien / Seitentools ---------- */
.pcm-external-media,
.pcm-external-media p,
.pcm-external-media label,
.pcm-external-media button,
.pcm-external-media a{
	font-size:max(15px,1cqw) !important;
	line-height:1.5;
}

.pcm-page-tool-text{
	font-size:max(15px,1cqw) !important;
	line-height:1.5;
}

.pcm-page-tool-action{
	font-size:max(14px,.94cqw) !important;
}

/* ---------- Mobil ---------- */
@media(max-width:559px){
	.entry-content,
	.entry-content p,
	.entry-content li,
	.pcm-inner-content,
	.pcm-inner-content p,
	.pcm-inner-content li,
	.pcm-about-main p,
	.pcm-about-main li,
	.pcm-member-main p,
	.pcm-member-main li,
	.pcm-contact-main p,
	.pcm-contact-main li,
	.pcm-404-copy > p,
	.pcm-404-card p,
	.pcm-404-contact p,
	.pcm-404-search-copy p{
		font-size:16px !important;
		line-height:1.58;
	}

	.pcm-about-main a,
	.pcm-member-main a,
	.pcm-contact-main a,
	.pcm-about-main button,
	.pcm-member-main button,
	.pcm-contact-main button,
	.pcm-404-primary-actions a,
	.pcm-404-contact > a,
	.pcm-404-search-form button{
		font-size:14px;
	}

	.pcm-about-main small,
	.pcm-member-main small,
	.pcm-contact-main small,
	.pcm-member-form small,
	.pcm-membership-note,
	.pcm-member-payment-note,
	.pcm-contact-social-card small,
	.pcm-404-card small,
	.pcm-404-contact > div > span,
	.pcm-external-media small{
		font-size:13px !important;
	}

	.pcm-form-field > span,
	.pcm-member-form label,
	.pcm-member-form .pcm-member-field > span,
	.pcm-member-form .pcm-member-field-label,
	.pcm-contact-form-grid > label > span{
		font-size:14px !important;
	}

	.pcm-member-form input[type="text"],
	.pcm-member-form input[type="email"],
	.pcm-member-form input[type="tel"],
	.pcm-member-form input[type="date"],
	.pcm-member-form input[type="number"],
	.pcm-member-form select,
	.pcm-member-form textarea,
	.pcm-contact-form input,
	.pcm-contact-form textarea,
	.pcm-contact-form select,
	.pcm-404-search-form input[type="search"]{
		font-size:16px !important;
	}

	.pcm-membership-choice strong,
	.pcm-member-form .pcm-member-option strong,
	.pcm-member-form .pcm-member-choice strong{
		font-size:15px !important;
	}
	.pcm-membership-choice small,
	.pcm-member-form .pcm-member-option span,
	.pcm-member-form .pcm-member-choice span,
	.pcm-member-form .description,
	.pcm-member-form .pcm-member-help,
	.pcm-member-consent,
	.pcm-member-payment-note{
		font-size:14px !important;
	}

	.pcm-member-document-copy strong{
		font-size:16px !important;
	}
	.pcm-member-document-copy small{
		font-size:14px !important;
	}
	.pcm-member-document-card{
		min-height:100px;
		padding:16px;
	}

	.pcm-page-tool-text,
	.pcm-external-media,
	.pcm-external-media p,
	.pcm-external-media label,
	.pcm-external-media button,
	.pcm-external-media a{
		font-size:14px !important;
	}
}

/* Die bewusst kompakte Sticky Bottom Navigation bleibt ausgenommen. */


/* 0.20.0 · Partnername statt technischer Nummerierung */
.pcm-partner-card summary > div:nth-child(2) > span{
	font-size:max(15px,1.05cqw) !important;
	line-height:1.2;
	font-weight:900;
	letter-spacing:.01em;
	text-transform:none;
	color:var(--red-text);
}


/* ==========================================================================
   0.20.1 · Einheitlicher Button-Stil für Vorstands-Karten
   ========================================================================== */
.pcm-board-open.pcm-unified-button{
	display:inline-flex;
	align-items:center;
	justify-content:space-between;
	gap:.8em;
	min-height:2.9em;
	padding:.72em 1em;
	border:2px solid var(--red-text);
	border-radius:.9em;
	background:var(--red-text);
	color:#fff;
	font-family:"Montserrat",Arial,sans-serif;
	font-size:max(14px,.95cqw);
	font-weight:900;
	line-height:1;
	text-transform:uppercase;
	letter-spacing:.01em;
	text-decoration:none;
	cursor:pointer;
	transition:background .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease;
}

.pcm-board-open.pcm-unified-button b{
	font-size:1.15em;
	line-height:1;
}

.pcm-board-open.pcm-unified-button:hover{
	background:var(--yellow);
	color:#111;
	border-color:var(--yellow);
	transform:translateY(-1px);
	box-shadow:0 .35em .9em rgba(80,20,20,.12);
}

.pcm-board-open.pcm-unified-button:focus-visible{
	outline:3px solid var(--yellow);
	outline-offset:3px;
}

@media(max-width:559px){
	.pcm-board-open.pcm-unified-button{
		font-size:14px;
		min-height:42px;
		padding:10px 13px;
		border-radius:11px;
	}
}

@media(prefers-reduced-motion:reduce){
	.pcm-board-open.pcm-unified-button{
		transition:none;
	}
	.pcm-board-open.pcm-unified-button:hover{
		transform:none;
	}
}
