/*
Theme Name: ANTIFA Film
Theme URI: https://www.antifa-film.de
Description: Minimalistisches Film-Theme für ANTIFA – Schulter an Schulter, wo der Staat versagte. Child-Theme von Twenty Twenty-Five.
Author: leftvision
Template: twentytwentyfive
Version: 1.0.0
Requires at least: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: antifa-film
*/

/* ---------- Grundlagen ---------- */
html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; }
::selection { background: var(--wp--preset--color--accent); color: #000; }

a { text-underline-offset: .2em; text-decoration-thickness: 1px; }

/* ---------- Header ---------- */
.af-header {
	position: sticky;
	top: 0;
	z-index: 50;
}
body.admin-bar .af-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .af-header { top: 46px; } }

.af-header .wp-block-site-title a { text-decoration: none; }
.af-header .wp-block-navigation a { text-decoration: none; }
.af-header .wp-block-navigation a:hover,
.af-header .wp-block-navigation .current-menu-item > a { color: var(--wp--preset--color--accent); }

/* Startseite: Header liegt transparent über dem Hero */
body.home .af-header {
	position: fixed;
	left: 0;
	right: 0;
	background: linear-gradient(to bottom, rgba(0,0,0,.65), rgba(0,0,0,0)) !important;
	transition: background-color .3s ease;
}
body.home .af-header > .wp-block-group { background: transparent !important; }
body.home.af-scrolled .af-header { background: #000 !important; }
body.home .af-header + main,
body.home .af-header + .wp-block-group { margin-top: 0; }

/* Mobil: Header schlanker, Social-Icons ausblenden (sind im Footer) */
@media (max-width: 600px) {
	.af-header .wp-block-social-links { display: none; }
}

/* ---------- Buttons: goldene Outline, Versalien ---------- */
.wp-block-button .wp-block-button__link { transition: background-color .2s ease, color .2s ease; }
.wp-block-button.is-style-outline > .wp-block-button__link,
.wp-block-button .wp-block-button__link.is-style-outline {
	border-width: 2px;
	border-color: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--accent);
	background: transparent;
}
.wp-block-button .wp-block-button__link:hover,
.wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: var(--wp--preset--color--accent);
	border-color: var(--wp--preset--color--accent);
	color: #000;
}

/* ---------- Hero ---------- */
.af-hero h1 { text-shadow: 0 2px 24px rgba(0,0,0,.45); }
.af-hero .af-credit {
	position: absolute;
	right: 1.25rem;
	bottom: 1rem;
	margin: 0;
	opacity: .6;
}
.af-scroll-hint {
	position: absolute;
	left: 50%;
	bottom: 1.25rem;
	transform: translateX(-50%);
	margin: 0;
	font-size: 1.5rem;
	line-height: 1;
	opacity: .7;
	animation: af-bounce 2.4s ease-in-out infinite;
}
.af-scroll-hint a { text-decoration: none; color: inherit; }
@keyframes af-bounce { 0%,100% { transform: translate(-50%,0); } 50% { transform: translate(-50%,6px); } }
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.af-scroll-hint { animation: none; }
}

/* ---------- FAQ (Details-Block) ---------- */
.wp-block-details {
	border-bottom: 1px solid currentColor;
	border-color: rgba(127,127,127,.35);
	padding: 1.1rem 0;
}
.wp-block-details summary {
	cursor: pointer;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
	font-weight: 500;
	color: var(--wp--preset--color--accent);
}
.wp-block-details summary::-webkit-details-marker { display: none; }
.wp-block-details summary::after {
	content: "+";
	font-size: 1.5em;
	font-weight: 300;
	line-height: 1;
	transition: transform .2s ease;
}
.wp-block-details[open] summary::after { transform: rotate(45deg); }
.wp-block-details > :not(summary) { margin-top: .75rem; }

/* ---------- Galerie ---------- */
.af-gallery.wp-block-gallery img { aspect-ratio: 16 / 9; object-fit: cover; }
.af-gallery figure { overflow: hidden; }
.af-gallery figure img { transition: transform .5s ease, filter .5s ease; filter: grayscale(.25); }
.af-gallery figure:hover img { transform: scale(1.03); filter: none; }

/* ---------- Listen mit Labels (Interviewte, Presse) ---------- */
.af-list { padding-left: 0; list-style: none; }
.af-list li { padding: .6rem 0; border-bottom: 1px solid rgba(127,127,127,.3); }
.af-list li:last-child { border-bottom: 0; }

/* ---------- Video (Embed) ---------- */
.wp-block-embed.is-type-video { margin-block: 0; }
.embed-privacy-container { background-color: #000; }

/* ---------- Seitentitel ---------- */
.af-page-title { text-transform: uppercase; letter-spacing: .04em; }

/* ---------- Footer ---------- */
.af-footer a { text-decoration: none; }
.af-footer a:hover { color: var(--wp--preset--color--accent); }

/* ---------- Abstände im Seiteninhalt ---------- */
.wp-block-post-content > h2:not(:first-child) { margin-top: var(--wp--preset--spacing--50); }
@media (max-width: 600px) {
	.af-hero .af-credit { position: static; text-align: center; margin-top: var(--wp--preset--spacing--40); }
	.af-hero .wp-block-button { flex: 1 1 100%; }
	.af-hero .wp-block-button__link { width: 100%; }
}
