/*
 * Default theme, on top of Bootstrap 5.3.
 * A site's own design can override these custom properties in assets/sites/KEY/css/theme.css
 * (or replace this file completely).
 */

@font-face {
	font-family: "Source Serif 4";
	src: url("../fonts/source-serif-4-400.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Source Serif 4";
	src: url("../fonts/source-serif-4-400-italic.woff2") format("woff2");
	font-weight: 400;
	font-style: italic;
	font-display: swap;
}
@font-face {
	font-family: "Source Serif 4";
	src: url("../fonts/source-serif-4-700.woff2") format("woff2");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Schibsted Grotesk";
	src: url("../fonts/schibsted-grotesk-600.woff2") format("woff2");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Schibsted Grotesk";
	src: url("../fonts/schibsted-grotesk-800.woff2") format("woff2");
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}

:root {
	/* Palette */
	--theme-paper: #ffffff;
	--theme-ink: #17252b;
	--theme-muted: #56656b;
	--theme-rule: #d5dee0;
	--theme-accent: #0b6e78;
	--theme-accent-strong: #08545c;
	--theme-band: #eef3f3;

	/* Type */
	--theme-font-text: "Source Serif 4", Georgia, "Times New Roman", serif;
	--theme-font-ui: "Schibsted Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--theme-measure: 40rem; /* about 68 characters of body text */

	/* Bootstrap hooks */
	--bs-body-font-family: var(--theme-font-text);
	--bs-body-font-size: 1.1875rem;
	--bs-body-line-height: 1.75;
	--bs-body-color: var(--theme-ink);
	--bs-body-bg: var(--theme-paper);
	--bs-emphasis-color: var(--theme-ink);
	--bs-secondary-color: var(--theme-muted);
	--bs-border-color: var(--theme-rule);
	--bs-link-color: var(--theme-accent);
	--bs-link-color-rgb: 11, 110, 120;
	--bs-link-hover-color: var(--theme-accent-strong);
	--bs-link-hover-color-rgb: 8, 84, 92;
	--bs-focus-ring-color: rgba(11, 110, 120, 0.35);
	--bs-heading-color: var(--theme-ink);
}

body {
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

a {
	text-underline-offset: 0.18em;
	text-decoration-thickness: 1px;
}
a:hover {
	text-decoration-thickness: 2px;
}
:focus-visible {
	outline: 3px solid var(--theme-accent);
	outline-offset: 2px;
}

h1, h2, h3, h4, h5, h6,
.site-title,
.menu-toggle,
.btn {
	font-family: var(--theme-font-ui);
}

.site-container {
	max-width: 72rem;
}

.skip-link:focus {
	position: absolute;
	z-index: 1000;
	top: 0.5rem;
	left: 0.5rem;
	padding: 0.75rem 1rem;
	background: var(--theme-paper);
	font-family: var(--theme-font-ui);
}

/* Header */

.site-header {
	padding: 1.75rem 0;
	border-bottom: 1px solid var(--theme-rule);
	font-family: var(--theme-font-ui);
}
.site-title {
	margin: 0;
	font-size: 1.5rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.1;
}
.site-title a {
	color: var(--theme-ink);
	text-decoration: none;
}
.site-description {
	margin: 0.25rem 0 0;
	color: var(--theme-muted);
	font-size: 0.9375rem;
	line-height: 1.4;
}

.primary-navigation {
	width: 100%;
	font-size: 1rem;
	font-weight: 600;
}
.primary-navigation a {
	display: inline-block;
	padding: 0.5rem 0;
	color: var(--theme-ink);
	text-decoration: none;
}
.primary-navigation a:hover,
.primary-navigation .current-menu-item > a {
	color: var(--theme-accent);
	text-decoration: underline;
	text-decoration-thickness: 2px;
}
/* Bootstrap's burger button (navbar-toggler) outside a .navbar, so its variables are set here. */
.menu-toggle {
	--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2823, 37, 43, 0.85%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
	--bs-navbar-toggler-padding-y: 0.25rem;
	--bs-navbar-toggler-padding-x: 0.75rem;
	--bs-navbar-toggler-font-size: 1.25rem;
	--bs-navbar-toggler-border-radius: 0.375rem;
	--bs-navbar-toggler-focus-width: 0.2rem;
	--bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
	--bs-navbar-toggler-border-color: var(--theme-rule);
	color: var(--theme-ink);
}
/* on small screens the burger sits right of the title, the opened menu below both */
.site-branding {
	flex: 1 1 0;
	min-width: 0;
}
.menu-toggle:focus {
	box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width) var(--bs-focus-ring-color);
}
/* Without JavaScript the menu simply stays open. */
.js .primary-navigation:not(.is-open) {
	display: none;
}
@media (min-width: 992px) {
	.primary-navigation,
	.js .primary-navigation:not(.is-open) {
		display: block;
		width: auto;
	}
}

/* Shared headline style: the one loud element of the theme */

.entry-title,
.page-title {
	font-weight: 800;
	letter-spacing: -0.015em;
	line-height: 1.15;
	text-wrap: balance;
	/* long German words ("Datenschutzerklärung") must never run into the sidebar */
	overflow-wrap: break-word;
	hyphens: auto;
}
.entry-title a {
	color: inherit;
	text-decoration: none;
}
.entry-title a:hover {
	text-decoration: underline;
	text-decoration-color: var(--theme-accent);
	text-decoration-thickness: 3px;
}

.entry-kicker {
	margin: 0 0 0.75rem;
	font-family: var(--theme-font-ui);
	font-size: 0.9375rem;
	font-weight: 600;
}
.entry-kicker a {
	color: var(--theme-accent);
	text-decoration: none;
}
.entry-kicker a:hover {
	text-decoration: underline;
}

.entry-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem 1.5rem;
	font-family: var(--theme-font-ui);
	font-size: 0.9375rem;
	color: var(--theme-muted);
}
.entry-meta a {
	color: var(--theme-ink);
	font-weight: 600;
	text-decoration: none;
}
.entry-meta a:hover {
	text-decoration: underline;
}

/* Archive pages */

.site-main {
	padding-bottom: 4rem;
}
.page-header {
	padding: 3.5rem 0 2.5rem;
}
.page-title {
	margin: 0;
	font-size: clamp(1.625rem, 1.2rem + 1.3vw, 2.25rem);
}
.archive-description,
.page-header .author-description,
.search-result-count {
	max-width: var(--theme-measure);
	margin-top: 1rem;
	color: var(--theme-muted);
}

.entry-lead {
	padding: 3.5rem 0 3rem;
}
.entry-lead .entry-title {
	margin: 0 0 1.25rem;
	font-size: clamp(1.75rem, 1.3rem + 1.4vw, 2.5rem);
}
.entry-lead .entry-summary {
	font-size: 1.3125rem;
	line-height: 1.6;
}
.entry-lead .post-thumbnail img {
	width: 100%;
	height: auto;
	border-radius: 0.375rem;
}

.entries-heading {
	margin: 0;
	padding: 2.5rem 0 0.5rem;
	border-top: 3px solid var(--theme-ink);
	font-size: 1.125rem;
	font-weight: 800;
}

.entry-item {
	padding: 2rem 0;
	border-top: 1px solid var(--theme-rule);
}
.entries-heading + .entry-item,
.page-header + .site-container > .entry-item:first-child {
	border-top: 0;
}
.entry-item .entry-title {
	margin: 0 0 0.75rem;
	font-size: clamp(1.25rem, 1.1rem + 0.5vw, 1.5rem);
	line-height: 1.15;
}
.entry-item .entry-summary p {
	max-width: var(--theme-measure);
	margin-bottom: 0.75rem;
}
.entry-item .post-thumbnail img {
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: 0.25rem;
}

.no-results {
	padding: 3rem 0;
}

/* Pagination */

.pagination-nav {
	margin-top: 2rem;
	padding-top: 2rem;
	border-top: 3px solid var(--theme-ink);
	font-family: var(--theme-font-ui);
}
.pagination {
	flex-wrap: wrap;
	gap: 0.25rem;
	margin: 0;
	--bs-pagination-color: var(--theme-ink);
	--bs-pagination-bg: transparent;
	--bs-pagination-border-color: transparent;
	--bs-pagination-hover-color: var(--theme-accent);
	--bs-pagination-hover-bg: var(--theme-band);
	--bs-pagination-hover-border-color: transparent;
	--bs-pagination-active-color: var(--theme-paper);
	--bs-pagination-active-bg: var(--theme-ink);
	--bs-pagination-active-border-color: var(--theme-ink);
	--bs-pagination-disabled-bg: transparent;
	--bs-pagination-disabled-border-color: transparent;
	--bs-pagination-focus-box-shadow: 0 0 0 0.2rem var(--bs-focus-ring-color);
	--bs-pagination-border-radius: 2rem;
	--bs-pagination-font-size: 1rem;
}
.pagination .page-link {
	border-radius: 2rem !important;
	font-weight: 600;
}
.pagination .next {
	margin-left: 0.5rem;
}

/* Single post */

.singular .entry-header {
	padding: 3.5rem 0 2.5rem;
}
.singular .entry-header > .site-container > * {
	max-width: 52rem;
}
.singular .entry-title {
	margin: 0 0 1.5rem;
	font-size: clamp(1.75rem, 1.3rem + 1.4vw, 2.5rem);
}

.singular .post-thumbnail {
	margin-bottom: 3rem;
}
.singular .post-thumbnail img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 0.375rem;
}

.entry-content {
	max-width: var(--theme-measure);
}
.entry-content > * {
	margin-top: 0;
	margin-bottom: 1.5rem;
}
.entry-content h2 {
	margin-top: 3rem;
	margin-bottom: 1rem;
	font-size: 1.875rem;
	font-weight: 800;
	letter-spacing: -0.015em;
	line-height: 1.2;
}
.entry-content h3 {
	margin-top: 2.25rem;
	margin-bottom: 0.75rem;
	font-size: 1.4375rem;
	font-weight: 800;
	line-height: 1.25;
}
.entry-content ul,
.entry-content ol {
	padding-left: 1.5rem;
}
.entry-content li + li {
	margin-top: 0.375rem;
}
.entry-content blockquote {
	margin: 2.5rem 0;
	padding-left: 1.5rem;
	border-left: 4px solid var(--theme-accent);
	font-size: 1.375rem;
	font-style: italic;
	line-height: 1.55;
}
.entry-content img {
	max-width: 100%;
	height: auto;
	border-radius: 0.25rem;
}
.entry-content figcaption,
.entry-content .attachment__caption {
	margin-top: 0.5rem;
	color: var(--theme-muted);
	font-family: var(--theme-font-ui);
	font-size: 0.875rem;
}

.singular .entry-footer {
	max-width: var(--theme-measure);
	margin-top: 3rem;
	font-family: var(--theme-font-ui);
	font-size: 0.9375rem;
}
.cat-links {
	margin-bottom: 1rem;
	color: var(--theme-muted);
}
.term-pill {
	display: inline-block;
	padding: 0.25rem 0.875rem;
	border: 1px solid var(--theme-rule);
	border-radius: 2rem;
	color: var(--theme-ink);
	font-weight: 600;
	text-decoration: none;
}
.term-pill:hover {
	border-color: var(--theme-accent);
	color: var(--theme-accent);
}

/* Scoped: author archives put "author-SLUG" on <body>, which could match a bare .author-… class. */
.entry-footer .author-bio {
	margin-top: 2.5rem;
	padding-top: 1.5rem;
	border-top: 3px solid var(--theme-ink);
}
.author-bio .author-title {
	margin: 0 0 0.5rem;
	font-size: 1.125rem;
	font-weight: 800;
}
.author-bio .author-description {
	margin-bottom: 0.5rem;
	font-family: var(--theme-font-text);
	font-size: 1.0625rem;
	color: var(--theme-ink);
}
.author-bio .author-link {
	font-weight: 600;
}

.post-navigation {
	margin-top: 4rem;
	font-family: var(--theme-font-ui);
}
.post-navigation a {
	display: block;
	height: 100%;
	padding-top: 1.25rem;
	border-top: 1px solid var(--theme-rule);
	color: var(--theme-ink);
	text-decoration: none;
}
.post-navigation .nav-next {
	text-align: right;
}
.post-navigation .meta-nav {
	display: block;
	color: var(--theme-muted);
	font-size: 0.875rem;
	font-weight: 600;
}
.post-navigation .post-title {
	display: block;
	margin-top: 0.25rem;
	font-size: 1.3125rem;
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: -0.01em;
}
.post-navigation a:hover .post-title {
	text-decoration: underline;
	text-decoration-color: var(--theme-accent);
	text-decoration-thickness: 2px;
}

/* Sidebar (right column) */

.site-content {
	padding-top: 0;
}
.widget-area {
	/* top/bottom only: left/right is the Bootstrap column gutter */
	padding-top: 3.5rem;
	padding-bottom: 4rem;
	font-family: var(--theme-font-ui);
	font-size: 1rem;
}
@media (min-width: 992px) {
	.widget-area {
		border-left: 1px solid var(--theme-rule);
	}
}
.widget + .widget {
	margin-top: 2.5rem;
}
.widget-title {
	margin: 0 0 1rem;
	padding-top: 0.75rem;
	border-top: 3px solid var(--theme-ink);
	font-size: 1rem;
	font-weight: 800;
}
.widget li + li {
	margin-top: 0.625rem;
}
.widget a {
	color: var(--theme-ink);
	font-weight: 600;
	text-decoration: none;
}
.widget a:hover,
.widget a[aria-current] {
	color: var(--theme-accent);
	text-decoration: underline;
}
.widget_recent_comments li {
	color: var(--theme-muted);
	line-height: 1.45;
}
.widget_recent_comments .comment-author-link {
	color: var(--theme-ink);
}
.tagcloud {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.25rem 0.75rem;
	line-height: 1.3;
}
.tagcloud a {
	font-weight: 600;
}
/* Links box (Backlinkseller): whatever markup the service sends, it looks like the "Neueste Beiträge" list */
.widget-links p,
.widget-links ul,
.widget-links div {
	margin: 0;
	padding: 0;
	list-style: none;
}
.widget-links br {
	display: none;
}
.widget-links a {
	display: block;
}
/* same spacing as list items, also when the links are separated by <br> */
.widget-links a ~ a,
.widget-links li + li,
.widget-links p + p {
	margin-top: 0.625rem;
}

.search-field {
	border-color: var(--theme-ink);
	border-radius: 2rem;
	padding-left: 1rem;
	font-family: var(--theme-font-ui);
}
.search-submit {
	--bs-btn-color: var(--theme-paper);
	--bs-btn-bg: var(--theme-ink);
	--bs-btn-border-color: var(--theme-ink);
	--bs-btn-hover-color: var(--theme-paper);
	--bs-btn-hover-bg: var(--theme-accent);
	--bs-btn-hover-border-color: var(--theme-accent);
	--bs-btn-border-radius: 2rem;
	--bs-btn-font-weight: 600;
	padding-inline: 1.25rem;
}
.error-404 .search-form {
	max-width: 32rem;
}

/* Footer */

.site-footer {
	padding: 2rem 0;
	background: var(--theme-ink);
	color: #d3dde0;
	font-family: var(--theme-font-ui);
	font-size: 0.9375rem;
}
.site-footer a {
	color: #ffffff;
	text-decoration: none;
}
.site-footer a:hover {
	text-decoration: underline;
}
.site-footer .site-name {
	font-size: 1.125rem;
	font-weight: 800;
	letter-spacing: -0.02em;
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		scroll-behavior: auto !important;
		transition: none !important;
	}
}

/* Code (imported syntax-highlighter blocks become <pre><code class="language-…">) */

.entry-content pre {
	overflow-x: auto;
	padding: 1rem 1.25rem;
	background: var(--theme-ink);
	color: #e6eef0;
	border-radius: 0.375rem;
	font-size: 0.875rem;
	line-height: 1.6;
	tab-size: 4;
}
.entry-content pre code {
	color: inherit;
	font-size: inherit;
	white-space: pre;
}
.entry-content :not(pre) > code {
	padding: 0.1em 0.35em;
	background: var(--theme-band);
	border-radius: 0.25rem;
	color: var(--theme-ink);
	font-size: 0.875em;
}

/* Comments */

.comments-area {
	margin-top: 4rem;
}
.comments-title {
	margin: 0 0 1.5rem;
	padding-top: 1.5rem;
	border-top: 3px solid var(--theme-ink);
	font-size: 1.375rem;
	font-weight: 800;
	line-height: 1.25;
}
.comment-body {
	padding: 1.25rem 0;
	border-top: 1px solid var(--theme-rule);
}
.comment-list > .comment:first-child > .comment-body {
	border-top: 0;
	padding-top: 0;
}
.comment-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem 1rem;
	align-items: baseline;
	margin-bottom: 0.5rem;
	font-family: var(--theme-font-ui);
	font-size: 0.9375rem;
}
.comment-meta .fn {
	font-weight: 600;
}
.comment-meta .fn a {
	color: var(--theme-ink);
}
.comment-metadata {
	color: var(--theme-muted);
	text-decoration: none;
}
.comment-content {
	font-size: 1.0625rem;
}
.comment-content p:last-child {
	margin-bottom: 0;
}
.comment .children {
	margin: 0;
	padding-left: 1.5rem;
	border-left: 2px solid var(--theme-rule);
}

.footer-menu a {
	font-weight: 600;
}

/* Buttons that look like links (e.g. "Cookie-Einstellungen") */

.link-button {
	padding: 0;
	border: 0;
	background: none;
	color: inherit;
	font: inherit;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 0.18em;
	cursor: pointer;
}
.site-footer .link-button {
	color: #ffffff;
	text-decoration: none;
}
.site-footer .link-button:hover {
	text-decoration: underline;
}

/* Legal pages: section numbers via counters, so they stay correct when sections are left out */

.legal-content {
	counter-reset: legal-section;
}
.legal-content h2::before {
	counter-increment: legal-section;
	content: counter(legal-section) ". ";
}
.legal-content h2 {
	font-size: 1.5rem;
}
.legal-content h3 {
	font-size: 1.1875rem;
}

/* Consent layer (like kwebs.de) */

.consent-layer {
	position: fixed;
	inset: 0;
	z-index: 1045;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1rem;
	background: rgba(23, 37, 43, 0.35);
}
.consent-layer[hidden] {
	display: none;
}
/* on the legal pages the box sits at the bottom without a backdrop, so the text stays readable */
.consent-layer--legal {
	align-items: flex-end;
	background: none;
	pointer-events: none;
}
.consent-box {
	width: 100%;
	max-width: 32rem;
	padding: 1.5rem;
	background: var(--theme-paper);
	border-radius: 0.5rem;
	box-shadow: 0 1rem 3rem rgba(23, 37, 43, 0.25);
	font-family: var(--theme-font-ui);
	font-size: 0.9375rem;
	line-height: 1.5;
	pointer-events: auto;
}
.consent-title {
	margin: 0 0 0.75rem;
	font-size: 1.25rem;
	font-weight: 800;
}
.consent-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}
.consent-actions .btn {
	flex: 1 1 0;
}
.consent .btn {
	--bs-btn-border-radius: 2rem;
	--bs-btn-font-weight: 600;
	font-family: var(--theme-font-ui);
}
.consent-accept {
	--bs-btn-color: var(--theme-paper);
	--bs-btn-bg: var(--theme-accent);
	--bs-btn-border-color: var(--theme-accent);
	--bs-btn-hover-color: var(--theme-paper);
	--bs-btn-hover-bg: var(--theme-accent-strong);
	--bs-btn-hover-border-color: var(--theme-accent-strong);
}
.consent-secondary {
	--bs-btn-color: var(--theme-ink);
	--bs-btn-border-color: var(--theme-rule);
	--bs-btn-hover-color: var(--theme-ink);
	--bs-btn-hover-bg: var(--theme-band);
	--bs-btn-hover-border-color: var(--theme-ink);
}

.consent-dialog {
	width: min(32rem, calc(100% - 2rem));
	max-height: calc(100% - 2rem);
	padding: 0;
	border: 0;
	border-radius: 0.5rem;
	box-shadow: 0 1rem 3rem rgba(23, 37, 43, 0.3);
	font-family: var(--theme-font-ui);
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--theme-ink);
}
.consent-dialog[open] {
	display: flex;
	flex-direction: column;
}
.consent-dialog::backdrop {
	background: rgba(23, 37, 43, 0.45);
}
.consent-dialog-header,
.consent-dialog-footer {
	padding: 1rem 1.25rem;
}
.consent-dialog-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-bottom: 1px solid var(--theme-rule);
}
.consent-dialog-header .consent-title {
	margin: 0;
}
.consent-dialog-body {
	overflow-y: auto;
	padding: 1rem 1.25rem;
}
.consent-dialog-footer {
	border-top: 1px solid var(--theme-rule);
}
.consent-category {
	border: 1px solid var(--theme-rule);
	border-radius: 0.375rem;
}
.consent-category + .consent-category {
	margin-top: 0.5rem;
}
.consent-category summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.75rem 1rem;
	font-weight: 600;
	cursor: pointer;
}
.consent-category[open] summary {
	border-bottom: 1px solid var(--theme-rule);
}
.consent-category-body {
	padding: 0.75rem 1rem;
}
.consent-category .form-check-input:checked {
	background-color: var(--theme-accent);
	border-color: var(--theme-accent);
}
.consent-cookies {
	font-size: 0.8125rem;
}
.consent-cookies th {
	white-space: nowrap;
}
.consent-reopen {
	position: fixed;
	left: 1rem;
	bottom: 1rem;
	z-index: 1040;
	display: grid;
	place-items: center;
	width: 2.75rem;
	height: 2.75rem;
	border: 0;
	border-radius: 50%;
	background: var(--theme-accent);
	color: var(--theme-paper);
	box-shadow: 0 0.25rem 1rem rgba(23, 37, 43, 0.25);
	cursor: pointer;
}
.consent-reopen[hidden] {
	display: none;
}

/* Comments written by the site owner (linked to a CMS user) */

.comment-owner-badge {
	--bs-badge-font-weight: 600;
	--bs-badge-padding-x: 0.6em;
	background-color: var(--theme-accent);
	color: var(--theme-paper);
	font-family: var(--theme-font-ui);
}
.comment-by-owner > .comment-body {
	padding-left: 1rem;
	border-left: 3px solid var(--theme-accent);
	background: color-mix(in srgb, var(--theme-accent) 6%, transparent);
}
.comment-list > .comment-by-owner:first-child > .comment-body {
	padding-top: 1.25rem;
}

/* Affiliate links: "(Werbung)" label and Amazon's disclosure in the footer */

.affiliate-mark {
	margin-left: 0.1em;
	color: var(--theme-muted);
	font-family: var(--theme-font-ui);
	font-weight: 600;
}
.affiliate-note {
	margin-top: 2.5rem;
	padding-top: 1rem;
	border-top: 1px solid var(--theme-rule);
	color: var(--theme-muted);
	font-family: var(--theme-font-ui);
	font-size: 0.875rem;
	line-height: 1.5;
}
.affiliate-disclosure {
	color: #b8c6ca;
	font-size: 0.8125rem;
}

/* AdSense ad inside posts: labelled, with reserved space so the text doesn't jump (CLS) */

.ad-in-content {
	margin: 2rem 0;
	padding: 0.5rem 0 1rem;
	border-top: 1px solid var(--theme-rule);
	border-bottom: 1px solid var(--theme-rule);
	min-height: 300px;
}
.ad-label {
	display: block;
	margin-bottom: 0.5rem;
	color: var(--theme-muted);
	font-family: var(--theme-font-ui);
	font-size: 0.75rem;
	letter-spacing: 0.02em;
}
/* fluid (In-Feed) units are lower than display ads */
.ad-in-content.ad-fluid {
	min-height: 160px;
}
