/* ============================================================
   Layout: Grid, Container, Sektionsabstaende
   Mobile-First — Breakpoints in responsive.css
   ============================================================ */

/* Astra-Override: Full-width Layout fuer PSV-Templates.
   Astra's .ast-container nutzt display:flex, was Sektionen
   horizontal nebeneinander rendert statt vertikal gestapelt.
   Begruendeter Override (siehe CLAUDE.md Konventionen). */
body.home .site-content > .ast-container,
body.category .site-content > .ast-container,
body.page-template-page-vorstand .site-content > .ast-container,
body.page-template-page-sponsoren .site-content > .ast-container {
	display: block;
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
}

/* Container */
.psv-container {
	max-width: var(--container-max);
	margin-left: auto;
	margin-right: auto;
	padding-left: var(--container-pad);
	padding-right: var(--container-pad);
}

/* Sektionen */
.psv-section {
	padding-top: var(--space-2xl);
	padding-bottom: var(--space-2xl);
}

.psv-section--alt {
	background-color: var(--color-bg);
}

.psv-section--primary {
	background-color: var(--color-base);
	color: var(--color-text-on-dark);
}

.psv-section--primary a {
	color: var(--color-text-on-dark);
}

.psv-section__title {
	font-family: var(--font-heading);
	font-size: var(--text-3xl);
	font-weight: 700;
	line-height: var(--leading-tight);
	margin-bottom: var(--space-xl);
	text-align: center;
}

.psv-section--primary .psv-section__title {
	color: var(--color-text-on-dark);
}

/* Grids — Mobile-First: 1 Spalte */
.psv-grid {
	display: grid;
	gap: var(--space-lg);
}

.psv-grid--sports {
	grid-template-columns: 1fr;
}

.psv-grid--events {
	grid-template-columns: 1fr;
}

.psv-grid--news {
	grid-template-columns: 1fr;
}

/* 2-spaltiges Layout (z.B. Ueber-den-Verein) */
.psv-two-col {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-xl);
	align-items: center;
}

/* ── Ueber-den-Verein Dekoration ── */
.psv-about {
	position: relative;
	overflow: hidden;
}

.psv-about::before {
	content: '1911';
	position: absolute;
	right: -2rem;
	top: 50%;
	transform: translateY(-50%);
	font-family: var(--font-heading);
	font-size: 10rem;
	font-weight: 900;
	color: var(--color-accent-red);
	opacity: 0.1;
	pointer-events: none;
	line-height: 1;
}

.psv-about__placeholder {
	width: 100%;
	aspect-ratio: 4 / 3;
	background-color: rgba(255, 255, 255, 0.1);
	border-radius: var(--radius-card);
}

/* ── Sektions-Utilities ── */
.psv-section__fallback {
	text-align: center;
	color: var(--color-text-light);
	font-style: italic;
}

.psv-section__more {
	text-align: center;
	margin-top: var(--space-lg);
}

.psv-section__more a {
	font-weight: 600;
	color: var(--color-accent-red);
	text-decoration: none;
}

.psv-section__more a:hover {
	color: var(--color-accent-green);
}

.psv-section__title--left {
	text-align: left;
}
