/*
Theme Name: OceanWP Child Theme
Theme URI: https://oceanwp.org/
Description: Child-Theme für OceanWP mit sitebezogenen Anpassungen.
Author: OceanWP
Author URI: https://oceanwp.org/
Template: oceanwp
Version: 1.0
*/

/* Eltern-Stylesheet: Einbindung über functions.php, nicht per @import */

/* Typ-Skala: gut lesbar (ca. 22px Basis), größer mobil */
:root {
	--line-normal: 1.55;
	--line-tight: 1.3;
	--font-xs: 1.0625rem;
	--font-sm: 1.125rem;
	--font-base: 1.375rem;
	--font-widget-title: 1.4375rem;
	--font-section-heading: 1.5625rem;
	--font-entry-title: 1.75rem;
	--font-page-title: clamp(1.625rem, 1.1rem + 2vw, 2rem);
	--font-h1: clamp(1.75rem, 1.2rem + 2.4vw, 2.375rem);
	--font-h2: clamp(1.5rem, 1.08rem + 1.35vw, 1.875rem);
	--font-h3: 1.4375rem;
	--font-h4: 1.375rem;
	--font-h5: 1.3125rem;
	--font-h6: 1.25rem;
}

body {
	font-size: var(--font-base);
	line-height: var(--line-normal);
}

#site-header {
	position: relative;
}

#site-navigation-wrap {
	position: absolute;
	bottom: 0;
	right: 0;
	left: auto;
	width: auto;
	float: none;
}

/* Undurchsichtiger weißer Hintergrund hinter dem Content (Lesbarkeit vor Hintergrundbild) */
#main #content-wrap,
#content-wrap.container {
	background-color: #ffffff;
}

/* Desktop: Lesepolster – OceanWP setzt .content-area oft ohne linkes Padding */
@media (min-width: 769px) {
	body:not(.content-full-screen) #main .content-area {
		padding-left: max(1.25rem, 2vw) !important;
		padding-right: max(1.25rem, 2vw) !important;
	}

	body:not(.content-full-screen) #main .widget-area.sidebar-primary,
	body:not(.content-full-screen) #main .widget-area.sidebar-secondary {
		padding-left: max(1.25rem, 2vw) !important;
		padding-right: max(1.25rem, 2vw) !important;
	}
}

#footer-widgets {
	display: none;
}

#footer-bottom #footer-bottom-menu {
	float: none;
	width: 100%;
	text-align: center;
	padding-left: 0;
}

#footer-bottom #footer-bottom-menu ul,
#footer-bottom #footer-bottom-menu li {
	float: none;
	display: inline-block;
}

#copyright {
	display: none;
}

/* --- Typografie: Sidebar (OceanWP nutzt px; Abstimmung auf rem-Skala) --- */

.widget-area,
.sidebar-box {
	font-size: var(--font-base);
	line-height: var(--line-normal);
}

.widget-title {
	font-size: var(--font-widget-title);
	font-weight: 600;
	line-height: var(--line-tight);
}

.widget_categories li,
.widget_categories li a,
.widget_recent_entries li,
.widget_recent_entries li a,
.widget_archive li,
.widget_archive li a,
.widget_recent_comments li,
.widget_nav_menu li,
.widget_nav_menu li a,
.widget_text,
.widget_text p,
.sidebar-box .cat-item,
.sidebar-box .cat-item a,
.oceanwp-widget-recent-posts-li,
.widget-recent-posts-icons li {
	font-size: var(--font-base);
}

.sidebar-box.widget_block,
.sidebar-box.widget_block p,
.sidebar-box.widget_block li {
	font-size: var(--font-base);
}

.sidebar-box .wp-block-heading {
	font-size: var(--font-widget-title);
	line-height: var(--line-tight);
}

/* --- Blog: Archiv und Listen --- */

#blog-entries .blog-entry .blog-entry-header .entry-title,
#blog-entries .blog-entry .entry-title {
	font-size: var(--font-entry-title);
	line-height: var(--line-tight);
}

.blog-entry ul.meta,
.blog-entry ul.meta li,
.blog-entry ul.meta a {
	font-size: var(--font-xs);
}

.blog-entry-summary,
.blog-entry-summary p {
	font-size: var(--font-base);
}

/* --- Seitenkopf und Brotkrumen --- */

.page-header .page-header-title {
	font-size: var(--font-page-title);
	line-height: var(--line-tight);
}

.centered-page-header .page-header-title,
.centered-minimal-page-header .page-header-title {
	font-size: var(--font-page-title);
}

.site-breadcrumbs,
.site-breadcrumbs a,
.site-breadcrumbs .breadcrumb-title {
	font-size: var(--font-sm);
	line-height: var(--line-normal);
}

/*
 * Seitenkopf (alle): Titel und Brotkrumen nicht überlagern
 * (OceanWP: Krumen standardmäßig absolut rechts) → untereinander.
 */
.page-header .page-header-inner {
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

body.breadcrumbs-position-default .page-header .page-header-title,
.page-header .page-header-title {
	max-width: 100% !important;
	width: 100%;
	box-sizing: border-box;
	order: 1;
}

.page-header .site-breadcrumbs {
	position: static !important;
	top: auto !important;
	right: auto !important;
	left: auto !important;
	margin-top: 0.75rem !important;
	margin-bottom: 0;
	max-width: 100% !important;
	width: 100%;
	height: auto !important;
	line-height: var(--line-normal) !important;
	white-space: normal !important;
	overflow: visible !important;
	text-align: left;
	order: 2;
}

.centered-page-header .page-header .site-breadcrumbs,
.centered-minimal-page-header .page-header .site-breadcrumbs,
.background-image-page-header .page-header .site-breadcrumbs {
	text-align: center;
}

/* --- Hauptinhalt und Blöcke --- */

#content .entry-content,
#content .wp-block-post-content,
#content .wp-block-post-content p,
#content .entry-content p {
	font-size: var(--font-base);
	line-height: var(--line-normal);
}

#content .entry-content li,
#content .wp-block-post-content li {
	font-size: var(--font-base);
}

#content .entry-content h1,
#content .wp-block-post-content h1 {
	font-size: var(--font-h1);
	line-height: var(--line-tight);
}

#content .entry-content h2,
#content .wp-block-post-content h2 {
	font-size: var(--font-h2);
	line-height: var(--line-tight);
}

#content .entry-content h3,
#content .wp-block-post-content h3 {
	font-size: var(--font-h3);
	line-height: var(--line-tight);
}

#content .entry-content h4,
#content .wp-block-post-content h4 {
	font-size: var(--font-h4);
	line-height: var(--line-tight);
}

#content .entry-content h5,
#content .wp-block-post-content h5 {
	font-size: var(--font-h5);
	line-height: var(--line-tight);
}

#content .entry-content h6,
#content .wp-block-post-content h6 {
	font-size: var(--font-h6);
	line-height: var(--line-tight);
}

/* Zusatzklasse contact-card am Gruppenblock: Rolle kleiner, Name und Fließtext etwas größer */
.contact-card h1,
.contact-card h2,
.contact-card h3,
.contact-card h4 {
	font-size: var(--font-sm);
	font-weight: 600;
}

.contact-card p {
	font-size: var(--font-section-heading);
	line-height: var(--line-normal);
}

.contact-card p a {
	font-size: inherit;
}

.contact-card > .wp-block-group__inner-container > a,
.contact-card a[href^="mailto:"],
.contact-card a[href^="tel:"] {
	font-size: var(--font-base);
}

@media (max-width: 768px) {
	:root {
		--line-normal: 1.65;
		--font-xs: 1.1875rem;
		--font-sm: 1.25rem;
		--font-base: 1.6875rem;
		--font-widget-title: 1.75rem;
		--font-section-heading: 1.875rem;
		--font-entry-title: 2rem;
		--font-page-title: clamp(1.8125rem, 1.2rem + 2.8vw, 2.375rem);
		--font-h1: clamp(2rem, 1.35rem + 3vw, 2.625rem);
		--font-h2: clamp(1.75rem, 1.2rem + 2vw, 2.125rem);
		--font-h3: 1.6875rem;
		--font-h4: 1.625rem;
		--font-h5: 1.5625rem;
		--font-h6: 1.5rem;
	}

	body {
		background-color: #fff !important;
		font-size: var(--font-base) !important;
	}

	#wrap,
	#main {
		background-color: #fff !important;
	}

	.oceanwp-mobile-menu-icon a {
		font-size: var(--font-base) !important;
	}

	.wp-block-heading {
		font-size: var(--font-h2) !important;
	}

	.sidebar-box .widget-title,
	.sidebar-box.widget_block {
		font-size: var(--font-widget-title) !important;
	}

	.sidebar-box.widget_text,
	.cat-item {
		font-size: var(--font-base) !important;
	}

	/*
	 * Mobil: randlos, weißer Seitenhintergrund, Lesepolster in den Spalten.
	 */
	#main #content-wrap.container {
		width: 100% !important;
		max-width: none !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding-left: env(safe-area-inset-left, 0px) !important;
		padding-right: env(safe-area-inset-right, 0px) !important;
		box-sizing: border-box;
		background-color: #fff !important;
	}

	#main #content {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	#main .content-area,
	#main .widget-area.sidebar-primary,
	#main .widget-area.sidebar-secondary {
		padding-left: max(1rem, 4vw) !important;
		padding-right: max(1rem, 4vw) !important;
	}
}

/* --- Einzelbeitrag: verwandte Beiträge inkl. Überschrift ausblenden --- */
/* OceanWP: section#related-posts mit .theme-heading.related-posts-title */
#related-posts,
.related-post,
.related-posts,
.related-posts-title,
.theme-heading.related-posts-title,
.oceanwp-related-posts,
.single-post .related-posts {
	display: none !important;
}

/* --- Einzelbeitrag: Schlagwörter (Tags) ausblenden --- */
.single-post .tags,
.single-post .post-tags,
.single-post .entry-tags,
.single-post .meta-tags {
	display: none !important;
}
