/* =========================================================
 * FC Seeshaupt – Vereins-Gestaltung (Website + Editor)
 * Blockstile werden im Editor unter „Stile“ ausgewählt.
 * ======================================================= */

/* ---------- Kopfbilder mit grüner Welle ---------- */
.fcs-hero,
.entry-hero-container-inner { position: relative; }
.fcs-hero::after,
.entry-hero-container-inner::after {
	content: "";
	position: absolute; left: 0; right: 0; bottom: -1px;
	height: 70px; pointer-events: none; z-index: 2;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath fill='%231aa900' d='M0 46 C 360 86 720 6 1080 36 S 1440 56 1440 56 V80 H0Z'/%3E%3Cpath fill='%23ffffff' d='M0 58 C 360 96 720 22 1080 50 S 1440 66 1440 66 V80 H0Z'/%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
}
.entry-hero .entry-hero-container-inner,
.entry-hero .entry-header { min-height: clamp(220px, 22vw, 440px) !important; }
.entry-hero-container-inner .entry-header { padding-bottom: 50px; }
.entry-hero h1 { text-shadow: 0 2px 12px rgba(0,0,0,.45); font-weight: 400; letter-spacing: .02em; }

/* Startseiten-Hero: Kirchturm samt Spiegelung sichtbar */
.wp-block-cover.fcs-hero { aspect-ratio: 21 / 8; min-height: 0 !important; max-height: 760px; padding-bottom: 70px; }
.fcs-hero .wp-block-cover__image-background { object-position: 50% 52% !important; }
@media (max-width: 767px) { .wp-block-cover.fcs-hero { aspect-ratio: auto; min-height: 480px !important; } }
.fcs-hero h1 { font-weight: 400; text-shadow: 0 2px 14px rgba(0,0,0,.5); }
.fcs-hero p { text-shadow: 0 1px 8px rgba(0,0,0,.5); }

/* ---------- Überschriften & Texte ---------- */
.entry-content h2.wp-block-heading,
.editor-styles-wrapper h2.wp-block-heading { color: var(--global-palette1, #1aa900); }
.fcs-sub, .is-style-fcs-sub { font-style: italic; color: var(--global-palette6, #7a8f96); margin-top: -.6em !important; }

/* ---------- Fußball-Trenner ---------- */
.fcs-divider { display: flex; align-items: center; justify-content: center; gap: 18px; margin: 2.2rem auto !important; }
.fcs-divider::before, .fcs-divider::after { content: ""; flex: 0 1 150px; height: 2px; background: var(--global-palette3, #17252a); }
.fcs-divider svg { width: 34px; height: 34px; flex: none; }

/* ---------- Fotos mit weißem Rahmen ---------- */
.fcs-frame img,
.is-style-fcs-frame img,
.entry-content > figure.wp-block-image img,
.wp-block-media-text__media img { border: 6px solid #fff; box-shadow: 0 8px 22px rgba(23,37,42,.18); border-radius: 2px; }
.entry-content > figure.wp-block-image:not(.alignwide):not(.alignfull) { max-width: 820px; margin-left: auto; margin-right: auto; }
.wp-block-media-text { margin-bottom: 2.5rem; }
.fcs-card { text-align: center; }
.fcs-card img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; }
.fcs-card h3 { color: var(--global-palette1, #1aa900); font-size: 1.25rem; margin-top: 1rem; }

/* ---------- Grüner Rahmen (Karten/Boxen) ---------- */
.fcs-box, .is-style-fcs-box {
	border: 2px solid var(--global-palette1, #1aa900);
	border-radius: 10px; background: #fff;
	transition: transform .2s, box-shadow .2s;
}
.wp-block-group.is-style-fcs-box, .wp-block-column.is-style-fcs-box { padding: 1.2rem 1.4rem; }
.fcs-box:hover, .is-style-fcs-box:hover { transform: translateY(-3px); box-shadow: 0 10px 24px rgba(23,37,42,.12); }
.fcs-box-head,
.is-style-fcs-box-head { background: var(--global-palette1, #1aa900); color: #fff !important; margin: 0; padding: .9rem 1rem; border-radius: 7px 7px 0 0; }
.fcs-box-head *, .is-style-fcs-box-head * { color: #fff !important; margin: 0; }
.wp-block-group.is-style-fcs-box > .is-style-fcs-box-head:first-child,
.wp-block-group.is-style-fcs-box > .fcs-box-head:first-child,
.wp-block-group.is-style-fcs-box > .wp-block-group__inner-container > .is-style-fcs-box-head:first-child,
.wp-block-group.is-style-fcs-box > .wp-block-group__inner-container > .fcs-box-head:first-child,
.wp-block-column.is-style-fcs-box > .is-style-fcs-box-head:first-child,
.wp-block-column.is-style-fcs-box > .fcs-box-head:first-child { margin: -1.2rem -1.4rem 1rem !important; max-width: none !important; }
.fcs-price, .is-style-fcs-price { font-size: 2.6rem; font-weight: 700; color: var(--global-palette1, #1aa900); margin: .6rem 0 0 !important; line-height: 1.1; }
.fcs-box .fcs-muted, .is-style-fcs-box .fcs-muted { color: var(--global-palette6, #7a8f96); font-size: .9rem; }
.fcs-dl-icon svg { width: 44px; height: 44px; }

/* Hellgrüner Hintergrund */
.is-style-fcs-tint { background: var(--global-palette7, #eaf4e8); padding: 1.2rem 1.4rem; border-radius: 6px; }

/* ---------- Gestreiftes Banner ---------- */
.fcs-stripes, .is-style-fcs-stripes {
	background: #5c6466 repeating-linear-gradient(115deg, rgba(255,255,255,.07) 0 70px, rgba(255,255,255,0) 70px 140px);
	border: 3px solid var(--global-palette1, #1aa900);
	padding: 1.2rem 1rem;
}
.fcs-stripes h2.wp-block-heading, .is-style-fcs-stripes h2.wp-block-heading { color: #fff !important; font-weight: 400; margin: 0; }
.fcs-stripes p, .is-style-fcs-stripes p { color: #dfe6e3; margin: 0; font-style: italic; }

/* ---------- Tabellen ---------- */
.is-style-fcs-table table { border-collapse: collapse; width: 100%; }
.is-style-fcs-table thead th { background: var(--global-palette1, #1aa900); color: #fff; border: 0; }
.is-style-fcs-table td, .is-style-fcs-table th { border: 0; border-bottom: 1px solid rgba(0,0,0,.1); padding: .6em .8em; }

/* ---------- Beitragskarten (Neuigkeiten & Startseite) ---------- */
.loop-entry.type-post { border: 2px solid var(--global-palette1, #1aa900); border-radius: 10px; overflow: hidden; box-shadow: none; transition: transform .2s, box-shadow .2s; }
.loop-entry.type-post:hover,
.wp-block-latest-posts.is-grid li:hover { transform: translateY(-4px); box-shadow: 0 12px 26px rgba(23,37,42,.14); }
.loop-entry .entry-header, .loop-entry .entry-summary, .loop-entry .entry-footer { text-align: center; }
.loop-entry .entry-taxonomies a, .loop-entry .post-more-link { color: var(--global-palette1, #1aa900); }
.loop-entry .post-more-link { font-weight: 600; }
.wp-block-latest-posts.is-grid li { border: 2px solid var(--global-palette1, #1aa900); border-radius: 10px; overflow: hidden; background: #fff; text-align: center; padding-bottom: 1rem; transition: transform .2s, box-shadow .2s; }
.wp-block-latest-posts.is-grid li > *:not(.wp-block-latest-posts__featured-image) { padding-left: 1rem; padding-right: 1rem; }
.wp-block-latest-posts__featured-image { margin-bottom: .8rem; }
.wp-block-latest-posts__featured-image a { display: block; }
.wp-block-latest-posts__featured-image img { display: block; aspect-ratio: 4 / 3; object-fit: cover; width: 100%; height: auto; }
.wp-block-latest-posts__post-title { display: block; font-weight: 600; color: var(--global-palette3, #17252a); font-size: 1.1rem; line-height: 1.35; }
.wp-block-latest-posts__post-date { color: var(--global-palette6, #7a8f96); }
.loop-entry .entry-title, .wp-block-latest-posts__post-title, .fcs-card h3 { hyphens: auto; -webkit-hyphens: auto; word-break: normal; overflow-wrap: normal; }

/* ---------- Sonstiges ---------- */
.wp-block-button__link, .button { border-radius: 999px; }
.site-footer .site-middle-footer-wrap { border-top: 4px solid var(--global-palette1, #1aa900); }
