/*
Theme Name: Rum-Kompass
Template: twentytwentyfive
Version: 1.1
Description: Kind-Theme fuer die Rum-Hobbyseite. Bernstein, dunkles Holz, warme Karibik-Akzente.
Author: Hermes
*/

/* ---------- Grundstimmung ---------- */
body {
	background-color: #F7F1E6;
	color: #2B1F16;
	font-family: Georgia, 'Times New Roman', serif;
	font-size: 1.0625rem;
	line-height: 1.75;
	-webkit-font-smoothing: antialiased;
}
body::before {
	content: "";
	position: fixed;
	inset: 0;
	pointer-events: none;
	z-index: -1;
	background:
		radial-gradient(circle at 15% 10%, rgba(201,138,46,.07), transparent 45%),
		radial-gradient(circle at 85% 80%, rgba(139,74,43,.06), transparent 50%);
}

/* ---------- Header: Banner + Menueleiste ---------- */
header.wp-block-template-part { background: #1A120B; }

/* Banner */
header.wp-block-template-part .wp-block-cover {
	min-height: 360px;
}
header.wp-block-template-part .wp-block-cover__image-background {
	object-fit: cover;
	object-position: center 45%;
}
header.wp-block-template-part .wp-block-cover__inner-container {
	text-align: center;
}
header.wp-block-template-part .wp-block-site-title { margin: 0 0 .35rem; }
header.wp-block-template-part .wp-block-site-title a {
	color: #E0B85A !important;
	font-family: Georgia, serif;
	text-decoration: none;
	white-space: nowrap;
	text-shadow: 0 2px 10px rgba(0,0,0,.85), 0 0 40px rgba(0,0,0,.75);
}
header.wp-block-template-part .wp-block-site-tagline {
	color: #F7F1E6 !important;
	margin: 0;
	text-shadow: 0 2px 10px rgba(0,0,0,.95), 0 0 24px rgba(0,0,0,.85);
	letter-spacing: .01em;
}

/* Menueleiste */
header.wp-block-template-part .rum-navbar {
	border-bottom: 2px solid #C98A2E;
	padding: 0;
}
header.wp-block-template-part .wp-block-navigation__container {
	gap: 1.15rem;
	flex-wrap: wrap;
	row-gap: .2rem;
}
header.wp-block-template-part .wp-block-navigation-item__content {
	color: #F7F1E6 !important;
	font-family: Manrope, sans-serif;
	font-size: .76rem;
	letter-spacing: .06em;
	text-decoration: none;
	padding: .2rem 0;
	border-bottom: 1px solid transparent;
	transition: border-color .2s, color .2s;
	white-space: nowrap;
}
header.wp-block-template-part .wp-block-navigation-item__content:hover {
	color: #E0B85A !important;
	border-bottom-color: #C98A2E;
}

/* ---------- Ueberschriften ---------- */
h1, h2, h3, h4 {
	font-family: Georgia, 'Times New Roman', serif;
	color: #2E1E14;
	line-height: 1.25;
}
h1 { font-size: 2.6rem; letter-spacing: -.01em; }
h2 {
	font-size: 1.9rem;
	margin-top: 2.4rem;
	padding-bottom: .35rem;
	border-bottom: 2px solid rgba(201,138,46,.55);
}
h3 { font-size: 1.35rem; color: #8B4A2B; }

/* ---------- Text & Links ---------- */
p { margin-bottom: 1.15rem; }
a { color: #8B4A2B; text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover { color: #C98A2E; }
strong { color: #2E1E14; }
ul, ol { padding-left: 1.3rem; }
li { margin-bottom: .45rem; }
blockquote {
	border-left: 4px solid #C98A2E;
	background: rgba(201,138,46,.08);
	padding: .8rem 1.2rem;
	font-style: italic;
	color: #5A3A2E;
}

/* ---------- Bilder ---------- */
.wp-block-image img {
	border-radius: 6px;
	box-shadow: 0 6px 22px rgba(26,18,11,.18);
}
.wp-block-image figcaption {
	font-family: Manrope, sans-serif;
	font-size: .78rem;
	color: #7A6656;
	text-align: center;
	margin-top: .4rem;
}

/* ---------- Inhaltsbreite ---------- */
.wp-block-post-content > * {
	max-width: 46rem;
	margin-left: auto;
	margin-right: auto;
}
.wp-block-post-content .wp-block-image,
.wp-block-post-content .alignwide {
	max-width: 56rem;
}

/* ---------- Footer ---------- */
footer.wp-block-template-part {
	background: #1A120B;
	color: #D9CDB8;
	margin-top: 4rem;
	border-top: 2px solid #C98A2E;
}
footer.wp-block-template-part a { color: #E0B85A; }
footer.wp-block-template-part p,
footer.wp-block-template-part .wp-block-site-title a { color: #D9CDB8; }

/* ---------- Feinschliff ---------- */
::selection { background: #E0B85A; color: #1A120B; }
.page-template-page-no-title .wp-block-post-title { display: none; }

@media (max-width: 700px) {
	h1 { font-size: 2rem; }
	h2 { font-size: 1.55rem; }
	header.wp-block-template-part .wp-block-site-title a { font-size: 1.1rem; }
}

/* Abstand unter dem Header */
.wp-block-post-content { padding-top: 2.5rem; }

/* Footer: Seitenliste zweispaltig, ohne Punkte */
footer.wp-block-template-part .wp-block-page-list {
	list-style: none;
	padding-left: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 2.2rem;
	row-gap: .35rem;
	text-align: right;
}
footer.wp-block-template-part .wp-block-page-list li { margin: 0; }
footer.wp-block-template-part .wp-block-page-list a {
	color: #E0B85A;
	font-family: Manrope, sans-serif;
	font-size: .8rem;
	text-decoration: none;
}
footer.wp-block-template-part .wp-block-page-list a:hover { text-decoration: underline; }

/* Mobiles Menü: Symbol auf dunklem Grund sichtbar machen */
header.wp-block-template-part .wp-block-navigation__responsive-container-open,
header.wp-block-template-part .wp-block-navigation__responsive-container-close {
	color: #E0B85A;
}
header.wp-block-template-part .wp-block-navigation__responsive-container-open svg,
header.wp-block-template-part .wp-block-navigation__responsive-container-close svg {
	fill: #E0B85A;
	width: 28px;
	height: 28px;
}

/* Banner notfalls selbst positionieren (Cover-Block-CSS wird bei handgeschriebenem Markup nicht immer geladen) */
header.wp-block-template-part .wp-block-cover {
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}
header.wp-block-template-part .wp-block-cover__image-background {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 45%;
	z-index: 0;
}
header.wp-block-template-part .wp-block-cover__background {
	position: absolute;
	inset: 0;
	background-color: rgba(20, 13, 8, .58);
	z-index: 0;
}
header.wp-block-template-part .wp-block-cover__inner-container {
	position: relative;
	z-index: 1;
	width: 100%;
}

/* Overlay des Cover-Blocks ersetzen: Bild sichtbar, Text trotzdem lesbar */
header.wp-block-template-part .wp-block-cover .wp-block-cover__background {
	display: none !important;
}
header.wp-block-template-part .wp-block-cover .wp-block-cover__image-background {
	z-index: 1;
}
header.wp-block-template-part .wp-block-cover::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
	background: linear-gradient(180deg, rgba(10,7,4,.55) 0%, rgba(10,7,4,.30) 34%, rgba(10,7,4,.34) 62%, rgba(10,7,4,.72) 100%);
}
header.wp-block-template-part .wp-block-cover__inner-container {
	z-index: 3;
}

/* Textplatte im Banner: Lesbarkeit vor dem hellen Glas */
header.wp-block-template-part .wp-block-cover__inner-container {
	background: rgba(10, 7, 4, .55);
	backdrop-filter: blur(3px);
	-webkit-backdrop-filter: blur(3px);
	padding: 1.15rem 2.2rem;
	border-radius: 4px;
	width: fit-content;
	max-width: 92%;
	margin-inline: auto;
	box-shadow: 0 10px 40px rgba(0,0,0,.25);
}
header.wp-block-template-part .wp-block-site-title a { color: #E8C063 !important; }

/* ---------- Rum-Sammlung: Übersicht ---------- */
.rum-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 2rem 1.6rem;
	margin-top: 2rem;
}
.rum-card {
	background: #FFFBF4;
	border: 1px solid rgba(139,74,43,.18);
	border-radius: 8px;
	overflow: hidden;
	transition: transform .15s ease, box-shadow .15s ease;
}
.rum-card:hover { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(26,18,11,.15); }
.rum-card__link { text-decoration: none; color: inherit; display: block; }
.rum-card__media img { width: 100%; height: 230px; object-fit: cover; display: block; }
.rum-card__text { padding: 1rem 1.1rem 1.2rem; }
.rum-card__titel { margin: 0 0 .25rem; font-size: 1.15rem; }
.rum-card__meta {
	font-family: Manrope, sans-serif;
	font-size: .78rem;
	color: #7A6656;
	margin: 0 0 .55rem;
	letter-spacing: .02em;
}

/* Sterne */
.rum-stars {
	position: relative;
	display: inline-block;
	font-size: 1.02rem;
	line-height: 1;
	letter-spacing: .08em;
	white-space: nowrap;
}
.rum-stars__leer { color: rgba(139,74,43,.25); }
.rum-stars__voll {
	position: absolute;
	left: 0; top: 0;
	overflow: hidden;
	white-space: nowrap;
	color: #C98A2E;
}
.rum-stars__zahl {
	font-family: Manrope, sans-serif;
	font-size: .78rem;
	color: #7A6656;
	margin-left: .15rem;
}

/* ---------- Rum-Sammlung: Einzelansicht ---------- */
.rum-single__zurueck { font-family: Manrope, sans-serif; font-size: .8rem; margin-bottom: 1.2rem; }
.rum-single__titel { margin-bottom: .4rem; }
.rum-single__bewertung { margin-bottom: 1.6rem; font-size: 1.15rem; }
.rum-single__oben {
	display: grid;
	grid-template-columns: minmax(0,1fr) minmax(0,1fr);
	gap: 2rem;
	align-items: start;
	margin: 1.5rem 0 2.5rem;
}
.rum-single__bild { width: 100%; height: auto; border-radius: 8px; box-shadow: 0 10px 30px rgba(26,18,11,.18); }
.rum-daten { margin: 0; font-family: Manrope, sans-serif; font-size: .88rem; }
.rum-daten__zeile {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding: .55rem 0;
	border-bottom: 1px solid rgba(139,74,43,.18);
}
.rum-daten dt { color: #7A6656; }
.rum-daten dd { margin: 0; font-weight: 600; color: #2E1E14; text-align: right; }
.rum-abschnitt h2 { font-size: 1.35rem; }
.rum-leer { font-style: italic; color: #7A6656; }

@media (max-width: 700px) {
	.rum-single__oben { grid-template-columns: 1fr; }
	.rum-grid { grid-template-columns: 1fr 1fr; gap: 1rem; }
	.rum-card__media img { height: 170px; }
}
@media (max-width: 460px) {
	.rum-grid { grid-template-columns: 1fr; }
}

/* ---------- Besucher-Bewertungen ---------- */
.rum-kommentare {
	margin-top: 3.5rem;
	padding-top: 2rem;
	border-top: 2px solid rgba(201,138,46,.5);
}
.rum-kommentare h2 { font-size: 1.6rem; }
.rum-schnitt {
	display: flex;
	align-items: center;
	gap: .5rem;
	font-family: Manrope, sans-serif;
	font-size: .85rem;
	color: #5A3A2E;
	margin-bottom: 1.6rem;
}
.rum-kommentar { padding: 1.1rem 0; border-bottom: 1px solid rgba(139,74,43,.16); }
.rum-kommentar__kopf {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	font-family: Manrope, sans-serif;
	font-size: .8rem;
	color: #7A6656;
	margin-bottom: .35rem;
}
.rum-kommentar__name { font-weight: 600; color: #2E1E14; }
.rum-kommentar__sterne { margin-bottom: .4rem; }
.rum-kommentar__text p:last-child { margin-bottom: 0; }

/* Formular */
.rum-formular {
	margin-top: 2.5rem;
	background: #FFFBF4;
	border: 1px solid rgba(139,74,43,.18);
	border-radius: 8px;
	padding: 1.6rem 1.8rem;
}
.rum-form-titel { margin-top: 0; font-size: 1.25rem; }
.rum-formular p { margin-bottom: .9rem; }
.rum-formular label {
	display: block;
	font-family: Manrope, sans-serif;
	font-size: .78rem;
	color: #7A6656;
	margin-bottom: .25rem;
	letter-spacing: .02em;
}
.rum-formular input[type="text"],
.rum-formular input[type="email"],
.rum-formular textarea {
	width: 100%;
	padding: .6rem .7rem;
	border: 1px solid rgba(139,74,43,.35);
	border-radius: 4px;
	background: #fff;
	font-family: Georgia, serif;
	font-size: 1rem;
	color: #2B1F16;
	box-sizing: border-box;
}
.rum-formular input:focus,
.rum-formular textarea:focus {
	outline: 2px solid rgba(201,138,46,.5);
	outline-offset: 1px;
}
.rum-submit {
	background: #C98A2E !important;
	color: #1A120B !important;
	border: none;
	border-radius: 4px;
	padding: .7rem 1.6rem;
	font-family: Manrope, sans-serif;
	font-size: .85rem;
	letter-spacing: .04em;
	cursor: pointer;
	transition: background .15s;
}
.rum-submit:hover { background: #E0B85A !important; }
.rum-hinweis {
	font-family: Manrope, sans-serif;
	font-size: .78rem;
	color: #7A6656;
	line-height: 1.5;
}

/* Stern-Picker */
.rum-rate { display: flex; gap: .1rem; margin: .2rem 0 .3rem; }
.rum-rate input { position: absolute; opacity: 0; width: 0; height: 0; }
.rum-rate label {
	font-size: 2rem;
	line-height: 1;
	color: rgba(139,74,43,.38);
	cursor: pointer;
	transition: color .15s, transform .15s;
	margin: 0;
	padding: 0;
}
.rum-rate label:hover { transform: scale(1.08); }
.rum-rate label.on { color: #C98A2E; }
.rum-rate-legende {
	font-family: Manrope, sans-serif;
	font-size: .78rem;
	color: #7A6656;
	margin: 0 0 1rem;
}

/* ---------- Podcast ---------- */
/* Autor-/Kategoriezeile auf Podcast-Seiten ausblenden (zeigt sonst "Verfasst von hermes in") */
.single-podcast .wp-block-post-author,
.single-podcast .wp-block-post-terms,
.single-podcast .wp-block-post-date {
	display: none;
}
.single-podcast .ssp-player,
.single-podcast audio { margin: 1.5rem 0; }
