/*
Theme Name: Roger Behrens (Orange)
Theme URI: https://rogerbehrens.net
Author: Roger Behrens
Description: Alternativvariante des Roger-Behrens-Themes: alle Schwarztöne durch eine frei wählbare Akzentfarbe (Standard Orange #EC6530) ersetzt. Bilder bleiben in ihren Originalfarben. Die Farbe lässt sich im Customizer unter „Startseite → Akzentfarbe" ändern. Header/Navigation auf weißem Grund mit Schrift in der Akzentfarbe, Überschriften in Source Sans Pro, Fließtext in Source Serif Pro, „Areal Bücher" (Feature-Buch + Laufband). Direction "1B Negativ" aus dem Redesign-Projekt.
Version: 2.2.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: roger-behrens
*/

/* Self-hosted fonts (no request to Google's servers at any point).
   Nur zwei Schriftfamilien: Source Sans Pro (Überschriften/UI, inkl. Labels
   und Schlagworte — bewusst nicht fett) und Source Serif Pro (Fließtext).
   Die frühere dritte Schrift (Space Mono) und das ungenutzte Archivo sind
   entfernt. */

/* Source Sans Pro (Überschriften/UI) und Source Serif Pro (Fließtext),
   ebenfalls selbst gehostet — kein Google-CDN-Request (DSGVO). Der „latin"-
   Subset deckt alle deutschen Umlaute (ä ö ü ß) sowie die im Theme genutzten
   typografischen Zeichen (– — › ‹ » « ’) vollständig ab. */
@font-face{
	font-family:'Source Sans Pro';
	font-style:normal;
	font-weight:400;
	font-display:swap;
	src:url('assets/fonts/source-sans-pro-400.woff2') format('woff2');
}
@font-face{
	font-family:'Source Sans Pro';
	font-style:normal;
	font-weight:600;
	font-display:swap;
	src:url('assets/fonts/source-sans-pro-600.woff2') format('woff2');
}
@font-face{
	font-family:'Source Sans Pro';
	font-style:normal;
	font-weight:700;
	font-display:swap;
	src:url('assets/fonts/source-sans-pro-700.woff2') format('woff2');
}
@font-face{
	font-family:'Source Sans Pro';
	font-style:normal;
	font-weight:900;
	font-display:swap;
	src:url('assets/fonts/source-sans-pro-900.woff2') format('woff2');
}
@font-face{
	font-family:'Source Serif Pro';
	font-style:normal;
	font-weight:400;
	font-display:swap;
	src:url('assets/fonts/source-serif-pro-400.woff2') format('woff2');
}
@font-face{
	font-family:'Source Serif Pro';
	font-style:italic;
	font-weight:400;
	font-display:swap;
	src:url('assets/fonts/source-serif-pro-400-italic.woff2') format('woff2');
}
@font-face{
	font-family:'Source Serif Pro';
	font-style:normal;
	font-weight:600;
	font-display:swap;
	src:url('assets/fonts/source-serif-pro-600.woff2') format('woff2');
}

/* Akzentfarbe (im Customizer wählbar). functions.php überschreibt diese
   Werte per Inline-Style mit der gewählten Farbe; hier stehen die Defaults,
   damit das Theme auch ohne Inline-Style korrekt orange rendert. Alle
   ehemals orangen Flächen nutzen var(--rb-accent) bzw. --rb-accent-rgb. */
:root{
	--rb-accent:#ec6530; --rb-accent-rgb:236,101,48;
	/* Überschriften/UI: Source Sans Pro · Fließtext: Source Serif Pro */
	--rb-sans:'Source Sans Pro','Helvetica Neue',Helvetica,Arial,sans-serif;
	--rb-serif:'Source Serif Pro',Georgia,'Times New Roman',serif;
	/* Seitlicher Innenabstand (Rand ↔ Inhalt). Wird in allen Inhaltsbereichen
	   genutzt; auf schmalen Screens weiter unten verkleinert. */
	--rb-gutter:52px;
}

*{ box-sizing:border-box; }
html,body{ margin:0; padding:0; background:#fff; -webkit-font-smoothing:antialiased; }
body{ font-family:var(--rb-sans); }

/* Überschriften durchgängig in Source Sans Pro (nicht in Großbuchstaben) */
h1,h2,h3,h4,h5,h6{ font-family:var(--rb-sans); }

/* Fließtext (Teaser, Artikeltext, Buchbeschreibung, bibliografische Angaben)
   in Source Serif Pro */
.rb-book-body p,.rb-book-body .rb-sub,
.rb-essay-row p,
.rb-archive-body p,
.rb-article-body,
.rb-biblio dd,.rb-biblio-text{ font-family:var(--rb-serif); }

/* In Beiträgen steht nur der eigentliche Artikeltext in der Serifenschrift;
   Anreißer (Vorspann) und Zwischenüberschriften bleiben serifenlos. */
.rb-article-lede{ font-family:var(--rb-sans); }
.rb-article-body h2,.rb-article-body h3,
.rb-article-body h4,.rb-article-body h5,
.rb-article-body h6{ font-family:var(--rb-sans); }

/* Quellenangabe (Druck-URL + Zitier-URL) nur im Ausdruck anzeigen. */
.rb-print-source{ display:none; }

a{ color:inherit; text-decoration:none; }
::selection{ background:#fff; color:var(--rb-accent); }

@keyframes rb-marquee{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }

.rb-body{ background:#fff; color:#fff; min-height:100vh; }
/* Content-Spalte trägt den orangen Grund; der Body dahinter (Ränder) ist weiß */
.rb-wrap{ max-width:1280px; margin:0 auto; background:var(--rb-accent); border-left:1px solid var(--rb-accent); border-right:1px solid var(--rb-accent); }

/* top bar: weißer Grund, Schrift/Icons in der Akzentfarbe (brand left,
   hamburger + search icons right) */
.rb-topbar{ display:flex; justify-content:space-between; align-items:center; padding:16px var(--rb-gutter); font-family:var(--rb-sans); font-size:13px; letter-spacing:0.1em; text-transform:uppercase; border-bottom:1px solid var(--rb-accent); position:sticky; top:0; background:#fff; z-index:10; }
.rb-topbar-brand{ color:var(--rb-accent); font-weight:700; }
.rb-topbar-nav{ display:flex; align-items:center; gap:20px; color:var(--rb-accent); }
.rb-topbar-nav a:hover{ text-decoration:underline; }

.screen-reader-text{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

/* header search icon + dropdown */
/* Suche: Icon-Label in der Topbar + ausklappende Zeile direkt unter dem Header
   (kein Pop-up). Weißer Grund, Schrift in der Akzentfarbe — wie der Header. */
.rb-search-checkbox{ position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.rb-search-toggle{ cursor:pointer; display:inline-flex; align-items:center; color:var(--rb-accent); }
.rb-search-toggle:hover{ color:#111; }
.rb-search-checkbox:focus-visible ~ .rb-topbar .rb-search-toggle{ color:#111; outline:1px dotted var(--rb-accent); outline-offset:4px; }
.rb-search-icon svg{ width:22px; height:22px; display:block; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; }
.rb-search-row{ display:none; background:#fff; border-bottom:1px solid var(--rb-accent); padding:16px var(--rb-gutter); }
.rb-search-checkbox:checked ~ .rb-search-row{ display:block; }
.rb-search-row form{ display:flex; gap:10px; width:100%; }
.rb-search-row input[type="search"]{ flex:1 1 auto; background:#fff; border:1px solid var(--rb-accent); color:var(--rb-accent); font-family:var(--rb-sans); font-size:15px; padding:11px 14px; }
.rb-search-row input[type="search"]:focus{ outline:none; border-color:#111; }
.rb-search-row input[type="search"]::placeholder{ color:#999; }
.rb-search-row button{ background:var(--rb-accent); color:#fff; border:none; font-family:var(--rb-sans); font-size:13px; text-transform:uppercase; letter-spacing:0.06em; padding:11px 18px; cursor:pointer; }
.rb-search-row button:hover{ filter:brightness(0.9); }

/* Schließen-Icon (×) in der Navigation: blendet das Hero-Startbild aus/ein.
   Die versteckte Checkbox #rb-hero-toggle steuert die Sichtbarkeit rein per
   CSS; ist sie angehakt, wird das folgende .rb-herostart ausgeblendet. */
.rb-close-toggle{ cursor:pointer; display:inline-flex; align-items:center; color:var(--rb-accent); }
.rb-close-toggle:hover{ color:#111; }
.rb-close-icon svg{ width:22px; height:22px; display:block; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; }
.rb-hero-checkbox{ position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
/* Animiertes Ein-/Ausklappen des Startbilds: der Wrapper fährt seine Zeilenhöhe
   per Grid (1fr -> 0fr) zusammen, der Clip kappt den Überhang. */
.rb-herostart-wrap{ display:grid; grid-template-rows:1fr; opacity:1; transition:grid-template-rows .6s ease, opacity .45s ease; }
.rb-herostart-clip{ min-height:0; overflow:hidden; }
.rb-hero-checkbox:checked ~ .rb-herostart-wrap{ grid-template-rows:0fr; opacity:0; }
@media (prefers-reduced-motion: reduce){
	.rb-herostart-wrap{ transition:none; }
}

/* search-term highlight in result titles */
.rb-list-row mark{ background:#fff; color:var(--rb-accent); padding:0 2px; }
.rb-list-row:hover mark{ background:var(--rb-accent); color:#fff; }

/* mega menu — hamburger checkbox in the top bar; the panel opens in normal
   flow below the bar and pushes the page down (no overlay) */
.rb-menu-checkbox{ position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.rb-menu-toggle{ cursor:pointer; display:inline-flex; align-items:center; color:var(--rb-accent); }
.rb-menu-toggle:hover{ color:#111; }
.rb-menu-checkbox:focus-visible ~ .rb-topbar .rb-menu-toggle{ color:#111; outline:1px dotted var(--rb-accent); outline-offset:4px; }
.rb-menu-hamburger{ display:inline-flex; align-items:center; }
.rb-menu-hamburger svg{ width:28px; height:28px; display:block; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; }
/* Header-Navigation invertiert: Grund in der Akzentfarbe, Schrift weiß */
.rb-menu-panel{ display:none; grid-template-columns:repeat(4,1fr); background:var(--rb-accent); border-bottom:1px solid #fff; padding:28px var(--rb-gutter) 34px; gap:24px; }
.rb-menu-checkbox:checked ~ .rb-menu-panel{ display:grid; }
.rb-menu-col h4{ margin:0 0 14px; font-family:var(--rb-sans); font-size:11px; letter-spacing:0.16em; text-transform:uppercase; color:rgba(255,255,255,0.7); font-weight:400; }
.rb-menu-col a{ display:block; padding:6px 0; font-size:16px; font-weight:600; color:#fff; }
.rb-menu-col a.rb-menu-sub{ padding-left:12px; font-size:14px; font-weight:500; color:rgba(255,255,255,0.8); }
/* Hover: weißer Grund, Schrift in der Akzentfarbe — auch für Sub-Links (höhere
   Spezifität, damit die hellere Sub-Farbe nicht gewinnt) */
.rb-menu-col a:hover,
.rb-menu-col a.rb-menu-sub:hover{ color:var(--rb-accent); background:#fff; }

/* Masthead auf weißem Grund, Schrift in der Akzentfarbe; „Mein digitales
   Wohnzimmer" und „Roger Behrens" kleiner und in Groß-/Kleinschreibung */
.rb-hero{ padding:34px var(--rb-gutter); background:#fff; }
.rb-hero .rb-eyebrow{ font-family:var(--rb-sans); font-weight:700; font-size:32px; letter-spacing:-0.01em; color:var(--rb-accent); line-height:1.08; margin-bottom:4px; }
.rb-hero h1{ margin:2px 0 0; font-size:18px; font-weight:600; letter-spacing:0; line-height:1.15; color:var(--rb-accent); }

/* marquee / Schlagwortband — die einzelnen Schlagworte sind auf ihre
   Tag-Archive verlinkt. Beim Überfahren pausiert das Band, damit man die
   Links bequem anklicken kann. */
.rb-marquee-outer{ overflow:hidden; border-top:1px solid #fff; border-bottom:1px solid #fff; padding:12px 0; }
.rb-marquee-track{ display:inline-flex; white-space:nowrap; animation:rb-marquee 34s linear infinite; font-family:var(--rb-sans); font-size:15px; letter-spacing:0.08em; text-transform:uppercase; }
.rb-marquee-outer:hover .rb-marquee-track{ animation-play-state:paused; }
.rb-marquee-seq{ display:inline-flex; align-items:center; }
.rb-marquee-item{ color:#fff; text-decoration:none; padding:0 0.15em; }
.rb-marquee-item:hover,
.rb-marquee-item:focus-visible{ text-decoration:underline; text-underline-offset:3px; outline:none; }
.rb-marquee-sep{ color:#fff; opacity:0.55; padding:0 0.55em; }

/* Statische Themen-Leiste (ersetzt das Laufband): vier gleich breite Punkte;
   beim Überfahren wird der Titel per Crossfade gegen den Alternativtitel
   ausgetauscht, ohne dass die Zeile umbricht oder springt. */
.rb-topics{ display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #fff; border-bottom:1px solid #fff; }
.rb-topic{ position:relative; display:flex; align-items:center; justify-content:center; text-align:center; padding:14px 16px; min-height:52px; border-left:1px solid #fff; font-family:var(--rb-sans); font-size:14px; letter-spacing:0.06em; text-transform:uppercase; color:#fff; }
.rb-topic:first-child{ border-left:none; }
.rb-topic:hover{ background:#fff; color:var(--rb-accent); }
.rb-topic-a,
.rb-topic-b{ transition:opacity .2s ease; }
.rb-topic-b{ position:absolute; left:0; right:0; padding:0 16px; opacity:0; }
.rb-topic:hover .rb-topic-a{ opacity:0; }
.rb-topic:hover .rb-topic-b{ opacity:1; }

/* Hero-Startbild mit dreisprachiger Begrüßung; per Schließen-Icon ausblendbar
   (siehe .rb-hero-checkbox unten). Dunkler Verlauf unten für Lesbarkeit. */
.rb-herostart{ position:relative; min-height:640px; display:flex; align-items:flex-end; background:#111 center/cover no-repeat; border-bottom:1px solid #fff; }
.rb-herostart::after{ content:""; position:absolute; inset:0; background:linear-gradient(to top, rgba(0,0,0,0.62) 0%, rgba(0,0,0,0.15) 55%, rgba(0,0,0,0) 100%); pointer-events:none; }
.rb-herostart-inner{ position:relative; z-index:1; padding:40px var(--rb-gutter); }
.rb-herostart-welcome{ margin:0; font-weight:900; letter-spacing:-0.02em; line-height:1.05; color:#fff; text-shadow:0 1px 18px rgba(0,0,0,0.55); }
/* Drei Sprachen untereinander (je eine Zeile) */
.rb-herostart-welcome span{ display:block; font-size:clamp(28px,5vw,56px); }
.rb-herostart-welcome span:nth-child(2),
.rb-herostart-welcome span:nth-child(3){ color:#e8e8e8; }

/* Buch des Monats */
/* Kleineres Cover (feste, schmale Spalte); Text füllt den Rest.
   Gepunkteter Hintergrund: die ursprüngliche Grafik (background_orange.png),
   per background-blend-mode in die gewählte Akzentfarbe eingefärbt (folgt damit
   dem Customizer). Betrifft nur diese Deko-Fläche, nicht die Cover/Fotos. */
.rb-book{ display:grid; grid-template-columns:220px minmax(0,1fr); gap:36px; align-items:start; background-color:var(--rb-accent); background-image:url(/wp-content/uploads/2026/07/background_orange.png); background-repeat:no-repeat; background-position:center bottom; background-size:cover; background-blend-mode:luminosity; color:var(--rb-accent); padding:44px var(--rb-gutter); }
/* Platzhalter-Cover (ohne Bild): weiterhin 3:4-Kachel mit Rahmen. */
.rb-book-cover{ aspect-ratio:3/4; border:2px solid var(--rb-accent); display:flex; flex-direction:column; justify-content:space-between; padding:18px; background:repeating-linear-gradient(135deg,#eee 0 10px,#fff 10px 20px); }
/* Echtes Cover: <img> behält das Seitenverhältnis der hochgeladenen Datei;
   kein erzwungenes 3:4, kein Rahmen/Hintergrund. */
.rb-book-cover.has-image{ aspect-ratio:auto; border:none; padding:0; background:none; }
.rb-book-cover-img{ display:block; width:100%; height:auto; }
.rb-book-cover .rb-kicker{ font-family:var(--rb-sans); font-size:11px; color:var(--rb-accent); }
.rb-book-cover .rb-cover-title{ font-size:26px; font-weight:800; line-height:0.95; letter-spacing:-0.02em; }
.rb-book-body .rb-month{ font-family:var(--rb-sans); font-size:12px; letter-spacing:0.14em; text-transform:uppercase; }
.rb-book-body h2{ margin:10px 0 6px; font-size:58px; font-weight:900; letter-spacing:-0.04em; line-height:1.0; }
.rb-book-body .rb-sub{ font-size:24px; font-style:italic; color:#333; margin-bottom:16px; }
.rb-book-body p{ font-size:16px; line-height:1.6; margin:0 0 18px; max-width:56ch; }
.rb-book-body p .rb-pub{ color:#777; }
/* weißer „Cut-out"-Block hinter jeder Textzeile (Lesbarkeit auf dem Bild) */
.rb-book-body .rb-hl{ background:#fff; -webkit-box-decoration-break:clone; box-decoration-break:clone; padding:0.06em 0.22em; }
.rb-cta{ display:inline-block; background:var(--rb-accent); color:#fff; font-family:var(--rb-sans); font-size:13px; padding:12px 20px; letter-spacing:0.05em; }
/* Buch des Monats: die letzten Ausgaben als Titelzeile — weiße Schrift auf
   schwarzem Cut-out pro Titel (Umkehrung der weißen .rb-hl-Cut-outs oben),
   ohne Trennstriche */
.rb-book-block{ display:block; }
.rb-book-latest{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px 20px; background:#fff; padding:4px var(--rb-gutter) 32px; }
.rb-book-latest-item{ font-size:16px; font-weight:800; line-height:1.5; letter-spacing:-0.01em; }
.rb-book-latest-meta{ display:block; font-family:var(--rb-sans); font-size:11px; font-weight:400; letter-spacing:0.08em; text-transform:uppercase; line-height:1.2; color:var(--rb-accent); margin-bottom:8px; }
.rb-book-latest-title{ background:var(--rb-accent); color:#fff; -webkit-box-decoration-break:clone; box-decoration-break:clone; padding:0.1em 0.3em; }
.rb-book-latest-item:hover .rb-book-latest-title{ background:#fff; color:var(--rb-accent); box-shadow:inset 0 0 0 1px var(--rb-accent); }
/* „weitere"-Posten: ohne Überzeile, Titel unten ausgerichtet (fluchtet mit den
   übrigen Titeln); weißer Grund mit Rahmen (hebt sich von den Titeln ab) */
.rb-book-latest-more{ display:flex; align-items:flex-end; }
.rb-book-latest-more .rb-book-latest-title{ background:#fff; color:var(--rb-accent); box-shadow:inset 0 0 0 1px var(--rb-accent); }
.rb-book-latest-more:hover .rb-book-latest-title{ background:var(--rb-accent); color:#fff; box-shadow:none; }

/* section label */
.rb-section-label{ padding:20px var(--rb-gutter); font-family:var(--rb-sans); font-size:12px; letter-spacing:0.18em; text-transform:uppercase; color:#e8e8e8; border-top:1px solid #fff; }

/* essays as big numbered rows with teasers */
/* „Aus dem Salon": Zeile mit Über-Überschrift + Datum (oben), Titel, Teaser;
   rechts das quadratische Beitragsbild. Keine Nummerierung, keine Schlagwort-
   Zeile. */
.rb-essay-row{ display:grid; grid-template-columns:1fr auto; align-items:start; gap:22px; padding:30px var(--rb-gutter); border-top:1px solid #fff; color:#fff; }
.rb-essay-main{ min-width:0; }
.rb-essay-topline{ display:flex; flex-wrap:wrap; gap:8px 16px; align-items:baseline; margin-bottom:10px; }
.rb-essay-row .rb-essay-kicker{ font-size:12px; font-weight:400; letter-spacing:0.14em; text-transform:uppercase; color:#9a9a9a; }
.rb-essay-row .rb-essay-date{ font-size:13px; font-weight:400; letter-spacing:0.04em; color:#9a9a9a; white-space:nowrap; }
.rb-essay-row h3{ margin:0 0 12px; font-size:42px; font-weight:800; letter-spacing:-0.03em; line-height:0.98; }
.rb-essay-row p{ margin:0; font-size:16px; line-height:1.6; color:#9a9a9a; max-width:78ch; }
/* Quadratisches Beitragsbild rechts neben dem Teaser (Ausschnitt) */
.rb-essay-thumb{ align-self:center; width:300px; height:200px; flex:0 0 auto; background-size:cover; background-position:center; background-repeat:no-repeat; border:1px solid var(--rb-accent); }

/* "Aus dem Salon" auf weißem Grund (Hover invertiert auf dunkel) */
/* „Aus dem Salon" auf weißem Grund. Beim Überfahren wird NICHT die ganze Box
   eingefärbt — nur der Titel wechselt die Farbe (keine Unterstreichung). */
.rb-salon-section{ background:#fff; color:var(--rb-accent); border-top:1px solid var(--rb-accent); }
.rb-salon-section .rb-section-label{ color:#555; border-top:none; }
.rb-salon-section .rb-essay-row{ border-top:1px solid var(--rb-accent); color:var(--rb-accent); }
.rb-salon-section .rb-essay-row .rb-essay-kicker,
.rb-salon-section .rb-essay-row .rb-essay-date{ color:#888; }
.rb-salon-section .rb-essay-row h3{ color:var(--rb-accent); transition:color .15s ease; }
.rb-salon-section .rb-essay-row p{ color:#555; }
.rb-salon-section .rb-essay-row:hover h3{ color:#111; }
.rb-salon-section .rb-essay-thumb{ border-color:var(--rb-accent); }

/* Notizen — Schlagzeilen-Leiste im Guardian-Stil (schwarz), zwischen
   Navigation und Masthead: Kicker + verlinkte Schlagzeile + rundes Thumbnail,
   mit runden Pfeil-Buttons zum Durchblättern */
/* Kein eigener oberer Rand: das Startbild darüber bringt bereits seine
   untere 1px-Linie mit (sonst doppelte/dicke Linie). */
.rb-notes-section{ display:flex; align-items:stretch; background:var(--rb-accent); color:#fff; border-bottom:1px solid #fff; }
.rb-notes-nav{ flex:0 0 auto; align-self:center; margin:0 12px; width:34px; height:34px; border-radius:50%; border:1px solid #fff; background:transparent; color:#fff; font-family:var(--rb-sans); font-size:15px; line-height:1; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; padding:0; }
.rb-notes-nav:hover{ background:#fff; color:var(--rb-accent); border-color:#fff; }
.rb-notes-nav:disabled{ opacity:.3; cursor:default; }
.rb-notes-nav:disabled:hover{ background:transparent; color:#fff; border-color:#fff; }
.rb-notes-viewport{ flex:1 1 auto; min-width:0; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
.rb-notes-viewport::-webkit-scrollbar{ width:0; height:0; }
.rb-notes-track{ display:flex; }
.rb-notes-card{ flex:0 0 33.333%; min-width:0; scroll-snap-align:start; display:flex; gap:16px; align-items:flex-start; justify-content:space-between; padding:18px 22px; border-left:1px solid #fff; color:#fff; }
.rb-notes-card:first-child{ border-left:none; }
.rb-notes-text{ min-width:0; }
.rb-notes-kicker{ display:block; font-family:var(--rb-sans); font-size:10px; letter-spacing:0.1em; text-transform:uppercase; color:#e8e8e8; margin-bottom:6px; }
.rb-notes-title{ display:block; font-size:21px; font-weight:800; line-height:1.15; letter-spacing:-0.02em; color:#fff; text-decoration:none; }
.rb-notes-card:hover .rb-notes-title{ color:#e8e8e8; }
.rb-notes-thumb{ flex:0 0 auto; width:76px; height:76px; border-radius:50%; background:#222 center/cover no-repeat; }

/* "Aus dem Archiv" — two-column grid (Beiträge mit Schlagwort „AusDemArchiv") */
.rb-archive-grid{ display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid #fff; }
.rb-archive-card{ display:flex; flex-direction:column; border-right:1px solid #fff; border-bottom:1px solid #fff; color:#fff; }
.rb-archive-card:nth-child(2n){ border-right:none; }
.rb-archive-card:hover{ background:#161616; }
.rb-archive-thumb{ aspect-ratio:1/1; background-size:cover; background-position:center; border-bottom:1px solid #fff; }
.rb-archive-body{ padding:22px 26px 28px; }
.rb-archive-body .rb-meta{ font-family:var(--rb-sans); font-size:11px; letter-spacing:0.14em; text-transform:uppercase; color:#888; margin-bottom:10px; }
.rb-archive-body h3{ margin:0 0 10px; font-size:30px; font-weight:800; letter-spacing:-0.025em; line-height:1.02; }
.rb-archive-body p{ margin:0; font-size:15px; line-height:1.55; color:#9a9a9a; }
/* "Aus dem Archiv" auf weißem Grund */
.rb-archive-section{ background:#fff; color:var(--rb-accent); border-top:1px solid var(--rb-accent); }
.rb-archive-section .rb-section-label{ color:#555; border-top:none; }
.rb-archive-section .rb-archive-grid{ border-top:1px solid var(--rb-accent); }
.rb-archive-section .rb-archive-card{ border-right-color:var(--rb-accent); border-bottom-color:var(--rb-accent); color:var(--rb-accent); }
.rb-archive-section .rb-archive-card:hover{ background:#f4f4f4; }
.rb-archive-section .rb-archive-thumb{ border-bottom-color:var(--rb-accent); }
.rb-archive-section .rb-archive-body p{ color:#555; }

/* optionales Feature (volle Breite, Titel über dem Bild) */
.rb-feature{ display:block; position:relative; width:100%; min-height:520px; border-top:1px solid #fff; background:#111 center/cover no-repeat; overflow:hidden; }
.rb-feature-scrim{ position:absolute; left:0; right:0; bottom:0; padding:48px var(--rb-gutter) 40px; background:linear-gradient(to top, rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.6) 55%, rgba(0,0,0,0) 100%); }
.rb-feature-kicker{ font-family:var(--rb-sans); font-size:13px; letter-spacing:0.14em; text-transform:uppercase; color:#e0e0e0; margin-bottom:12px; }
.rb-feature-title{ margin:0; font-size:64px; font-weight:900; letter-spacing:-0.04em; line-height:0.92; color:#fff; max-width:20ch; }
/* Überschrift und Teaser nebeneinander: Titel links, Teaser rechts daneben
   (unten bündig am Titel). */
.rb-feature-headrow{ display:flex; align-items:flex-end; gap:40px; }
.rb-feature-headrow .rb-feature-title{ flex:0 1 auto; }
/* Teaser: beim Überfahren rechts neben der Überschrift einblenden. */
.rb-feature-teaser{ flex:1 1 0; min-width:0; max-width:52ch; margin:0 0 6px; font-family:var(--rb-serif); font-size:17px; line-height:1.55; color:#eaeaea; opacity:0; transform:translateX(12px); transition:opacity .3s ease, transform .3s ease; }
.rb-feature:hover .rb-feature-teaser,
.rb-feature:focus-visible .rb-feature-teaser{ opacity:1; transform:none; }
@media (hover:none){ .rb-feature-teaser{ opacity:1; transform:none; } }

/* Themen-Raster: letzte Beiträge je Schlagwort (weißer Grund) */
.rb-theme-grid{ display:grid; grid-template-columns:repeat(4,1fr); background:#fff; color:var(--rb-accent); border-top:1px solid var(--rb-accent); }
.rb-theme-col{ padding:28px 24px; border-right:1px solid var(--rb-accent); }
.rb-theme-col:last-child{ border-right:none; }
.rb-theme-col-title{ font-family:var(--rb-sans); font-size:12px; font-weight:400; letter-spacing:0.16em; line-height:1.2; text-transform:uppercase; color:#555; margin-bottom:14px; padding-bottom:14px; border-bottom:1px solid var(--rb-accent); }
.rb-theme-col-title a{ color:inherit; text-decoration:none; }
.rb-theme-col-title a:hover{ color:var(--rb-accent); text-decoration:underline; }
.rb-theme-list{ list-style:none; margin:0; padding:0; }
.rb-theme-list li{ border-bottom:1px solid var(--rb-accent); }
.rb-theme-list li:last-child{ border-bottom:none; }
.rb-theme-list a{ display:block; padding:11px 0; font-size:15px; line-height:1.3; color:#333; }
.rb-theme-list a:hover{ color:var(--rb-accent); }
.rb-theme-empty{ margin:0; font-family:var(--rb-sans); font-size:12px; color:#888; }

/* Rezensionen-Karussell */
.rb-reviews-head{ display:flex; justify-content:space-between; align-items:center; gap:16px; padding:20px var(--rb-gutter); border-top:1px solid #fff; }
.rb-reviews-label{ font-family:var(--rb-sans); font-size:12px; letter-spacing:0.18em; text-transform:uppercase; color:#888; }
.rb-reviews-label a{ color:#888; }
.rb-reviews-label a:hover{ color:#fff; text-decoration:underline; }
.rb-carousel-arrows{ display:flex; gap:8px; }
.rb-carousel-btn{ width:38px; height:38px; flex:0 0 auto; border:1px solid #444; background:transparent; color:#fff; font-family:var(--rb-sans); font-size:16px; line-height:1; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; padding:0; }
.rb-carousel-btn:hover{ background:#fff; color:var(--rb-accent); border-color:#fff; }
.rb-carousel-btn:disabled{ opacity:.3; cursor:default; }
.rb-carousel-btn:disabled:hover{ background:transparent; color:#fff; border-color:#444; }
.rb-reviews-carousel{ overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; border-top:1px solid #fff; scrollbar-width:none; }
.rb-reviews-carousel::-webkit-scrollbar{ width:0; height:0; }
.rb-reviews-track{ display:flex; }
.rb-review-card{ display:block; flex:0 0 25%; scroll-snap-align:start; border-right:1px solid #fff; color:#fff; }
.rb-review-card:hover{ background:#161616; }
/* Cover vollständig zeigen (contain), zentriert auf neutraler dunkler Box —
   so werden Bücher, CDs und DVDs mit unterschiedlichen Seitenverhältnissen
   nicht mehr beschnitten. Fallback-Verläufe (ohne Bild) füllen weiterhin. */
.rb-review-cover{ position:relative; aspect-ratio:3/4; display:flex; flex-direction:column; justify-content:flex-end; padding:16px; border-bottom:1px solid #fff; background-color:#111; background-repeat:no-repeat; background-size:contain; background-position:center; }
/* Verlauf unten dunkel → oben transparent, damit der Titel lesbar bleibt.
   Neutrales Schwarz statt Akzentton, damit das Cover-Bild nicht eingefärbt wird. */
.rb-review-cover::after{ content:""; position:absolute; inset:0; background:linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.55) 22%, rgba(0,0,0,0) 60%); pointer-events:none; }
.rb-review-cover .rb-kind,
.rb-review-cover .rb-review-title{ position:relative; z-index:1; }
.rb-review-cover .rb-kind{ font-family:var(--rb-sans); font-size:10px; letter-spacing:0.14em; text-transform:uppercase; color:rgba(255,255,255,0.75); }
.rb-review-cover .rb-review-title{ font-size:19px; font-weight:800; line-height:1.02; letter-spacing:-0.02em; color:#fff; }
.rb-review-meta{ padding:14px 16px; }
.rb-review-meta .rb-by{ font-family:var(--rb-sans); font-size:12px; color:#aaa; }

/* Rezensionen-Sektion auf weißem Grund (schwarze Grenzstriche) */
.rb-reviews-section{ background:#fff; color:var(--rb-accent); }
.rb-reviews-section .rb-reviews-head{ border-top-color:var(--rb-accent); }
.rb-reviews-section .rb-reviews-label,
.rb-reviews-section .rb-reviews-label a{ color:#555; }
.rb-reviews-section .rb-reviews-label a:hover{ color:var(--rb-accent); }
.rb-reviews-section .rb-carousel-btn{ border-color:var(--rb-accent); color:var(--rb-accent); }
.rb-reviews-section .rb-carousel-btn:hover{ background:var(--rb-accent); color:#fff; border-color:var(--rb-accent); }
.rb-reviews-section .rb-carousel-btn:disabled:hover{ background:transparent; color:var(--rb-accent); border-color:var(--rb-accent); }
.rb-reviews-section .rb-reviews-carousel{ border-top-color:var(--rb-accent); }
.rb-reviews-section .rb-review-card{ border-right-color:var(--rb-accent); color:var(--rb-accent); }
.rb-reviews-section .rb-review-card:hover{ background:#f4f4f4; }
.rb-reviews-section .rb-review-cover{ border-bottom-color:var(--rb-accent); }
.rb-reviews-section .rb-review-cover .rb-review-title{ color:#fff; }
.rb-reviews-section .rb-review-meta .rb-by{ color:#555; }

/* Rezensionen als drei Spalten (Papier · Sound · Kino), je eigenes Karussell */
.rb-reviews-cols{ display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--rb-accent); }
.rb-reviews-col{ display:flex; flex-direction:column; min-width:0; border-right:1px solid var(--rb-accent); }
.rb-reviews-col:last-child{ border-right:none; }
/* min-height = Pfeil-Button (38px) + vertikales Padding (2×16px): so sind
   Spalten mit und ohne Pfeile gleich hoch und die Karten fluchten unten */
.rb-reviews-col-head{ display:flex; justify-content:space-between; align-items:center; gap:12px; padding:16px 20px; min-height:70px; }
.rb-reviews-col-label{ font-family:var(--rb-sans); font-size:12px; letter-spacing:0.16em; text-transform:uppercase; color:#555; }
.rb-reviews-col-label a{ color:#555; }
.rb-reviews-col-label a:hover{ color:var(--rb-accent); text-decoration:underline; }
/* Karussell füllt die restliche Spaltenhöhe, Cover füllt das Karussell —
   so schließen alle drei Spalten unten bündig ab (kein weißer Spalt durch
   1px-Rundungsunterschiede der Spaltenbreite). */
.rb-reviews-col .rb-reviews-carousel{ border-top:1px solid var(--rb-accent); flex:1 1 auto; }
.rb-reviews-col .rb-review-card{ flex:0 0 100%; min-width:0; border-right:none; }
.rb-reviews-col .rb-reviews-carousel,
.rb-reviews-col .rb-reviews-track{ min-width:0; }
.rb-reviews-col .rb-reviews-track{ height:100%; }
.rb-reviews-col .rb-review-cover{ height:100%; }
/* „by"-Zeile auf eine Zeile clampen (per Umbruch+Clamp, NICHT nowrap — das
   würde die Spalten unterschiedlich breit ziehen); Meta-Höhe fixieren, damit
   auch Karten ohne/mit leerer by-Zeile gleich hoch bleiben und die Spalten
   unten sauber fluchten */
.rb-reviews-col .rb-review-meta{ min-height:46px; }
.rb-reviews-col .rb-review-meta .rb-by{ display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical; overflow:hidden; }
.rb-reviews-col .rb-theme-empty{ padding:16px 20px; border-top:1px solid var(--rb-accent); }

/* Schreibtisch + On Air */
.rb-split{ display:grid; grid-template-columns:1fr 1fr; border-top:1px solid #fff; }
.rb-split .rb-col{ padding:32px var(--rb-gutter); }
.rb-split .rb-col.rb-col-left{ border-right:1px solid #fff; }
.rb-split .rb-label{ font-family:var(--rb-sans); font-size:12px; letter-spacing:0.16em; text-transform:uppercase; color:#e8e8e8; margin-bottom:18px; }

.rb-desk-row{ display:flex; justify-content:space-between; gap:16px; padding:12px 0; color:#fff; }
.rb-desk-row:hover{ color:#f0f0f0; }
.rb-desk-row .rb-desk-title{ font-size:18px; font-weight:600; }
.rb-desk-row .rb-desk-date{ font-family:var(--rb-sans); font-size:11px; color:#e8e8e8; white-space:nowrap; }

.rb-radio-item{ padding:16px 0; }
.rb-radio-item .rb-radio-name{ font-size:28px; font-weight:800; letter-spacing:-0.02em; }
.rb-radio-item .rb-radio-name a:hover{ text-decoration:underline; }
.rb-radio-item .rb-radio-when{ font-family:var(--rb-sans); font-size:12px; color:#e8e8e8; margin-top:6px; }
.rb-radio-item .rb-radio-next{ font-family:var(--rb-sans); font-size:13px; font-weight:700; margin-top:4px; }

/* footer */
.rb-footer{ padding:22px var(--rb-gutter); font-family:var(--rb-sans); font-size:12px; color:#e8e8e8; border-top:1px solid #fff; display:flex; justify-content:space-between; }
.rb-footer a:hover{ color:#fff; }

/* single post: shared meta strip (category chip / date / reading time) */
.rb-meta-strip{ display:flex; gap:24px; align-items:center; font-family:var(--rb-sans); font-size:12px; letter-spacing:0.14em; text-transform:uppercase; color:#e8e8e8; }
.rb-meta-strip .rb-chip{ border:1px solid #fff; color:#fff; padding:5px 10px; }
.rb-meta-strip a.rb-chip:hover{ background:#fff; color:var(--rb-accent); border-color:#fff; }
.rb-meta-strip.on-image{ color:#fff; text-shadow:0 1px 12px rgba(0,0,0,0.7); }
.rb-meta-strip.on-image .rb-chip{ border-color:rgba(255,255,255,0.55); }
.rb-meta-strip.on-image a.rb-chip:hover{ color:var(--rb-accent); text-shadow:none; }

/* single post: Info-Box oberhalb der Überschrift — ein Kasten mit Schlagwörtern,
   Kategorien („in der Schublade") und der letzten Bearbeitung. */
/* single post: kleine Infozeilen (Schlagwörter, Kategorien, letzte Bearbeitung)
   als einfacher Text direkt über der Hauptüberschrift — kein eigener Kasten. */
.rb-postmeta{ margin:0 0 16px; font-size:13px; line-height:1.55; color:#e8e8e8; }
.rb-postmeta > div{ margin:0; }
.rb-postmeta-key{ color:#fff; font-weight:700; }
.rb-postmeta a{ text-decoration:underline; text-underline-offset:2px; }
.rb-postmeta a:hover{ color:#fff; }
/* Auf dem Bild-Hero für Lesbarkeit mit Schatten */
.rb-art-hero-scrim .rb-postmeta{ text-shadow:0 1px 10px rgba(0,0,0,0.6); }

/* single post: full magazine hero (non-review posts) */
.rb-art-hero{ position:relative; width:100%; height:660px; background:#111; overflow:hidden; border-bottom:1px solid #fff; }
.rb-art-hero-img{ position:absolute; inset:0; width:100%; height:100%; background-size:cover; background-position:center; }
.rb-art-hero-meta{ position:absolute; top:0; left:0; right:0; padding:22px var(--rb-gutter); }
.rb-art-hero-scrim{ position:absolute; left:0; right:0; bottom:0; padding:48px var(--rb-gutter) 34px; background:linear-gradient(to top, rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.72) 45%, rgba(0,0,0,0) 100%); }
.rb-art-kicker{ font-family:var(--rb-sans); font-size:14px; letter-spacing:0.06em; text-transform:uppercase; color:#e0e0e0; margin-bottom:14px; }
.rb-art-hero-scrim h1{ margin:0; font-size:92px; font-weight:900; letter-spacing:-0.045em; line-height:0.9; max-width:17ch; color:#fff; }

/* single post: compact header for Rezensionen — small cover, no big hero image */
.rb-review-header{ display:flex; gap:32px; align-items:flex-end; padding:48px var(--rb-gutter); border-bottom:1px solid #fff; }
.rb-review-header-cover{ flex:0 0 auto; width:200px; aspect-ratio:3/4; border:2px solid #fff; background-size:cover; background-position:center; background:repeating-linear-gradient(135deg,#1a1a1a 0 10px,#242424 10px 20px); }
/* Echtes Cover: Seitenverhältnis der hochgeladenen Datei, kein fixes 3:4. */
.rb-review-header-cover.has-image{ aspect-ratio:auto; border:none; background:none; }
.rb-review-header-cover-img{ display:block; width:100%; height:auto; }
.rb-review-header-meta{ flex:1 1 auto; min-width:0; }
.rb-review-header-meta .rb-art-kicker{ color:#e8e8e8; }
.rb-review-header-meta h1{ margin:14px 0 0; font-size:64px; font-weight:900; letter-spacing:-0.03em; line-height:0.96; color:#fff; }

/* single post: compact plain header (no hero image at all) */
.rb-plain-header{ padding:48px var(--rb-gutter); border-bottom:1px solid #fff; }
.rb-plain-header .rb-review-header-meta h1{ margin-top:14px; }

/* single post: tags row */
.rb-tags-row{ display:flex; gap:10px; flex-wrap:wrap; padding:24px var(--rb-gutter); border-bottom:1px solid #fff; }
.rb-tag-chip{ font-family:var(--rb-sans); font-size:12px; padding:6px 12px; border:1px solid #fff; color:#fff; }
.rb-tag-chip:hover{ background:#fff; color:var(--rb-accent); border-color:#fff; }

/* single post: white reading panel */
.rb-article-panel{ background:#fff; color:var(--rb-accent); padding:60px var(--rb-gutter) 72px; }
.rb-article-panel-inner{ max-width:70ch; margin:0 auto; }

/* single post: bibliografische Meta-Box als schmale linke Spalte */
/* Lesebereich mit linker Service-Spalte (Kategorie, Schriftgröße, Druck,
   bei Rezensionen die bibliografische Angabe, Textstatistik). --rb-fs wird per
   JS für die Schriftgrößen-Umschaltung gesetzt. */
.rb-article-layout{ --rb-fs:1; display:grid; grid-template-columns:220px minmax(0,68ch); gap:56px; justify-content:center; align-items:start; }
.rb-article-layout .rb-article-panel-inner{ margin:0; max-width:none; }
.rb-service{ position:sticky; top:88px; display:flex; flex-direction:column; gap:20px; font-family:var(--rb-sans); }
/* Schriftgröße + Druckansicht als zusammenhängender Block: obere Zeile der
   A−/A+-Umschalter, darunter die Druckansicht. Jede Zeile füllt die volle
   Breite der Service-Spalte. */
.rb-service-controls{ display:flex; flex-direction:column; gap:8px; width:100%; }
.rb-service-tools{ display:flex; width:100%; border:1px solid var(--rb-accent); }
.rb-fontsize{ flex:1 1 50%; border:none; background:transparent; color:var(--rb-accent); font-family:var(--rb-sans); font-weight:700; font-size:15px; line-height:1; padding:10px 0; text-align:center; cursor:pointer; transition:background .15s ease, color .15s ease; }
.rb-fontsize + .rb-fontsize{ border-left:1px solid var(--rb-accent); }
.rb-fontsize:hover,
.rb-fontsize:focus-visible{ background:var(--rb-accent); color:#fff; outline:none; }
.rb-print{ display:block; width:100%; border:1px solid var(--rb-accent); background:transparent; color:var(--rb-accent); font-family:inherit; font-size:12px; letter-spacing:0.08em; text-transform:uppercase; padding:10px 14px; text-align:center; cursor:pointer; }
.rb-print:hover{ background:var(--rb-accent); color:#fff; }
.rb-service-stats{ border-top:1px solid #d8c4ba; padding-top:14px; font-size:13px; line-height:1.5; color:#555; }
.rb-service-stats p{ margin:0 0 8px; }
.rb-service-reading{ font-weight:700; color:var(--rb-accent); }
.rb-biblio{ border-top:2px solid var(--rb-accent); padding-top:16px; }
.rb-biblio-label{ font-family:var(--rb-sans); font-size:11px; letter-spacing:0.14em; text-transform:uppercase; color:#666; margin-bottom:16px; }
.rb-biblio dl{ margin:0; }
.rb-biblio dt{ font-family:var(--rb-sans); font-size:10px; letter-spacing:0.12em; text-transform:uppercase; color:#999; margin-bottom:3px; }
.rb-biblio dd{ margin:0 0 16px; font-size:15px; line-height:1.5; color:#1a1a1a; }
.rb-biblio dd:last-child{ margin-bottom:0; }
.rb-biblio-text{ font-size:15px; line-height:1.55; color:#1a1a1a; }
.rb-biblio-text p{ margin:0 0 12px; }
.rb-biblio-text p:last-child{ margin-bottom:0; }
.rb-article-lede{ font-size:calc(26px * var(--rb-fs,1)); line-height:1.45; font-weight:600; letter-spacing:-0.01em; margin:0 0 36px; }
.rb-article-lede em,.rb-article-lede i{ font-style:italic; }
.rb-article-body{ font-size:calc(20px * var(--rb-fs,1)); line-height:1.72; }
.rb-article-body p{ margin:0 0 28px; color:#1a1a1a; }
.rb-article-body a{ text-decoration:underline; }
.rb-article-body blockquote,
.rb-article-body .zitat{ margin:48px 0; background:var(--rb-accent); color:#fff; padding:40px 36px; font-size:32px; line-height:1.2; font-weight:800; letter-spacing:-0.02em; font-style:normal; border:none; }
.rb-article-body blockquote p{ margin:0; font-size:inherit; line-height:inherit; font-weight:inherit; letter-spacing:inherit; color:#fff; }
/* Motto (Vorspann-Zitat vor dem Text): wieder größerer Abstand zum Fließtext. */
.rb-article-body .motto{ margin:0 0 44px; padding-left:20px; border-left:2px solid var(--rb-accent); font-size:18px; line-height:1.5; font-style:italic; color:#555; }
.rb-article-body .motto + .motto{ margin-top:-32px; }
.rb-article-body img{ max-width:100%; height:auto; }
.rb-article-byline{ border-top:2px solid var(--rb-accent); margin-top:44px; padding-top:20px; font-family:var(--rb-sans); font-size:13px; color:#666; }

/* single post: prev/next navigation */
.rb-postnav{ display:grid; grid-template-columns:1fr 1fr; border-top:1px solid #fff; }
.rb-postnav-link{ display:block; padding:26px var(--rb-gutter); color:#fff; }
.rb-postnav-prev{ border-right:1px solid #fff; text-align:left; }
.rb-postnav-next{ text-align:right; grid-column:2; }
.rb-postnav-link:hover{ background:#fff; color:var(--rb-accent); }
.rb-postnav-label{ display:block; font-family:var(--rb-sans); font-size:11px; letter-spacing:0.14em; text-transform:uppercase; color:#e8e8e8; margin-bottom:8px; }
.rb-postnav-link:hover .rb-postnav-label{ color:#ffffff; }
.rb-postnav-title{ display:block; font-size:22px; font-weight:700; letter-spacing:-0.02em; }

/* single post: „Mehr zum Thema" — Karten mit Cover, Kategorie/Autor und Titel. */
.rb-related-grid{ display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #fff; }
/* Cover und Text nebeneinander (Cover links, Text rechts daneben) */
.rb-related-card{ display:flex; flex-direction:row; align-items:flex-start; gap:18px; padding:24px 28px 30px; border-right:1px solid #fff; color:#fff; }
.rb-related-card:last-child{ border-right:none; }
.rb-related-card:hover{ background:rgba(0,0,0,0.12); }
.rb-related-thumb{ flex:0 0 auto; aspect-ratio:3/4; width:96px; background:#111 center/cover no-repeat; border:1px solid rgba(255,255,255,0.4); }
.rb-related-thumb--empty{ background:repeating-linear-gradient(135deg,rgba(255,255,255,0.14) 0 10px,rgba(255,255,255,0.05) 10px 20px); }
.rb-related-text{ flex:1 1 auto; min-width:0; display:flex; flex-direction:column; gap:8px; }
.rb-related-cat{ font-family:var(--rb-sans); font-size:12px; letter-spacing:0.1em; text-transform:uppercase; color:#e8e8e8; }
.rb-related-title{ font-size:22px; font-weight:700; letter-spacing:-0.02em; line-height:1.1; }
.rb-related-card:hover .rb-related-title{ text-decoration:underline; text-underline-offset:3px; }

/* Archiv register */
.rb-archiv-hero{ padding:44px var(--rb-gutter) 28px; }
.rb-archiv-hero h1{ margin:0; font-size:120px; font-weight:900; letter-spacing:-0.05em; line-height:0.88; }
.rb-archiv-meta{ font-family:var(--rb-sans); font-size:13px; color:#e8e8e8; margin-top:14px; letter-spacing:0.04em; }

.rb-archiv-filters{ display:flex; flex-wrap:wrap; border-top:1px solid #fff; border-bottom:1px solid #fff; }
.rb-archiv-filter{ font-family:var(--rb-sans); font-size:13px; letter-spacing:0.06em; text-transform:uppercase; padding:14px 22px; border:none; border-right:1px solid #fff; cursor:pointer; background:transparent; color:#e8e8e8; }
.rb-archiv-filter:hover{ color:#fff; }
.rb-archiv-filter.is-active{ background:#fff; color:var(--rb-accent); }
.rb-archiv-filter.is-active:hover{ color:var(--rb-accent); }

/* Beitragslisten (Archiv, Register, Suche): Thumbnail, Titel + Vorschautext,
   rechts das Jahr. Keine Nummerierung, keine Kategorie-/Schlagwort-Spalten. */
.rb-list-row{ display:grid; grid-template-columns:96px 1fr 70px; align-items:start; gap:24px; padding:22px var(--rb-gutter); border-bottom:1px solid #fff; color:#fff; }
.rb-list-row:hover{ background:#fff; color:var(--rb-accent); }
.rb-list-thumb{ width:96px; aspect-ratio:1/1; background:#111 center/cover no-repeat; border:1px solid rgba(255,255,255,0.35); }
.rb-list-row:hover .rb-list-thumb{ border-color:var(--rb-accent); }
.rb-list-thumb--empty{ background:repeating-linear-gradient(135deg,rgba(255,255,255,0.14) 0 10px,rgba(255,255,255,0.05) 10px 20px); }
.rb-list-main{ min-width:0; display:flex; flex-direction:column; gap:8px; }
.rb-list-title{ font-size:26px; font-weight:700; letter-spacing:-0.02em; line-height:1.05; }
.rb-list-excerpt{ font-family:var(--rb-serif); font-size:15px; line-height:1.55; color:#d8d8d8; max-width:72ch; }
.rb-list-row:hover .rb-list-excerpt{ color:#555; }
.rb-list-year{ font-family:var(--rb-sans); font-size:12px; color:#e8e8e8; text-align:right; }
.rb-list-row:hover .rb-list-year{ color:var(--rb-accent); }

.rb-archiv-empty{ padding:40px var(--rb-gutter); font-family:var(--rb-sans); font-size:14px; color:#e8e8e8; border-bottom:1px solid #fff; }

/* search results: refine-query bar (search.php), styled like the Archiv filter bar */
.rb-search-refine{ padding:20px var(--rb-gutter); border-top:1px solid #fff; border-bottom:1px solid #fff; }
.rb-search-refine form{ display:flex; gap:10px; }
.rb-search-refine input[type="search"]{ background:#fff; border:1px solid #ccc; color:var(--rb-accent); font-family:var(--rb-sans); font-size:14px; padding:10px 14px; flex:1 1 auto; max-width:420px; }
.rb-search-refine input[type="search"]:focus{ outline:none; border-color:var(--rb-accent); }
.rb-search-refine input[type="search"]::placeholder{ color:#666; }
.rb-search-refine button{ background:#fff; color:var(--rb-accent); border:none; font-family:var(--rb-sans); font-size:13px; text-transform:uppercase; letter-spacing:0.06em; padding:10px 18px; cursor:pointer; }
.rb-search-refine button:hover{ background:#ccc; }

.rb-archiv-pagination{ display:flex; justify-content:space-between; align-items:center; padding:22px var(--rb-gutter); font-family:var(--rb-sans); font-size:13px; color:#e8e8e8; border-top:1px solid #fff; }
.rb-archiv-pagination a:hover{ color:#fff; }
.rb-archiv-pagination .disabled{ color:#444; }

/* ---- Archiv-/Register-/Suchseiten auf weißem Grund -----------------------
   Weißer Hintergrund, Schrift in der Akzentfarbe, Trennlinien in der
   Akzentfarbe, größere (quadratische) Vorschaubilder. */
.rb-wrap--list{ background:#fff; color:var(--rb-accent); }
.rb-wrap--list .rb-archiv-meta{ color:#555; }
.rb-wrap--list .rb-archiv-filters{ border-top-color:var(--rb-accent); border-bottom-color:var(--rb-accent); }
.rb-wrap--list .rb-archiv-filter{ border-right-color:var(--rb-accent); color:#555; }
.rb-wrap--list .rb-archiv-filter:hover{ color:var(--rb-accent); }
.rb-wrap--list .rb-archiv-filter.is-active{ background:var(--rb-accent); color:#fff; }
.rb-wrap--list .rb-archiv-filter.is-active:hover{ color:#fff; }
/* Listenzeilen: weißer Grund, größere Bilder, Trennlinien in der Akzentfarbe */
.rb-wrap--list .rb-list-row{ grid-template-columns:150px 1fr 70px; border-bottom-color:var(--rb-accent); color:var(--rb-accent); }
.rb-wrap--list .rb-list-row:hover{ background:var(--rb-accent); color:#fff; }
.rb-wrap--list .rb-list-thumb{ width:150px; background-color:#eee; border-color:var(--rb-accent); }
.rb-wrap--list .rb-list-title{ color:var(--rb-accent); }
.rb-wrap--list .rb-list-excerpt{ color:#555; }
.rb-wrap--list .rb-list-row:hover .rb-list-title,
.rb-wrap--list .rb-list-row:hover .rb-list-excerpt,
.rb-wrap--list .rb-list-row:hover .rb-list-year{ color:#fff; }
.rb-wrap--list .rb-list-year{ color:#777; }
.rb-wrap--list .rb-list-row mark{ background:var(--rb-accent); color:#fff; }
.rb-wrap--list .rb-list-row:hover mark{ background:#fff; color:var(--rb-accent); }
.rb-wrap--list .rb-archiv-empty{ color:#555; border-bottom-color:var(--rb-accent); }
/* Paginierungszeile über dem Footer invertiert: Grund in der Akzentfarbe,
   Schrift weiß */
.rb-wrap--list .rb-archiv-pagination{ background:var(--rb-accent); color:#fff; border-top-color:var(--rb-accent); }
.rb-wrap--list .rb-archiv-pagination a{ color:#fff; }
.rb-wrap--list .rb-archiv-pagination a:hover{ color:#fff; text-decoration:underline; }
.rb-wrap--list .rb-archiv-pagination .disabled{ color:rgba(255,255,255,0.5); }
.rb-wrap--list .rb-search-refine{ border-top-color:var(--rb-accent); border-bottom-color:var(--rb-accent); }
/* Footer bleibt ein Balken in der Hauptfarbe (nicht weiß wie die Liste) */
.rb-wrap--list .rb-footer{ background:var(--rb-accent); color:#e8e8e8; border-top-color:var(--rb-accent); }
.rb-wrap--list .rb-footer a{ color:#e8e8e8; }
.rb-wrap--list .rb-footer a:hover{ color:#fff; }

/* ---- Areal Bücher --------------------------------------------------------
   Feature-Buch (A: Cover links, Werbetext rechts) über einem verschiebbaren
   Laufband (B). Weißer Grund, Schrift in der Akzentfarbe — wie die übrigen
   hellen Sektionen. Luftig/hoch. Inhalte unter „Bücher (Regal)" im Admin. */
.rb-books-block{ background:#fff; color:var(--rb-accent); border-top:1px solid var(--rb-accent); }
.rb-books-block .rb-section-label{ color:#555; border-top:none; }
.rb-books-feature{ display:grid; grid-template-columns:300px minmax(0,1fr); gap:48px; align-items:center; padding:24px var(--rb-gutter) 52px; }
/* Cover ohne Bild: farbige 3:4-Kachel mit Titel. Mit Bild: das <img> bestimmt
   die Höhe, das Cover behält also das Seitenverhältnis der Bilddatei. */
.rb-books-cover{ display:block; position:relative; aspect-ratio:3/4; background:#6b3f2a center/cover no-repeat; box-shadow:0 24px 44px -20px rgba(0,0,0,0.55); border-radius:2px 4px 4px 2px; overflow:hidden; }
.rb-books-cover.has-image{ aspect-ratio:auto; background:none; box-shadow:0 24px 44px -20px rgba(0,0,0,0.55); }
.rb-books-cover-img{ display:none; width:100%; height:auto; }
.rb-books-cover.has-image .rb-books-cover-img{ display:block; }
.rb-books-cover-fallback{ position:absolute; inset:0; display:flex; align-items:flex-end; padding:20px; font-family:var(--rb-sans); font-weight:800; font-size:22px; line-height:1.1; color:#fff; text-shadow:0 1px 10px rgba(0,0,0,0.5); }
.rb-books-cover.has-image .rb-books-cover-fallback{ display:none; }
.rb-books-kicker{ font-size:18px; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:#888; margin-bottom:16px; }
.rb-books-title{ margin:0 0 8px; font-size:clamp(32px,4vw,52px); font-weight:900; letter-spacing:-0.03em; line-height:1.0; color:var(--rb-accent); }
/* Buchuntertitel: nur im großen Einzelfeld, getrennt vom Titel. */
.rb-books-sub{ margin:0 0 18px; font-family:var(--rb-serif); font-size:clamp(18px,2vw,24px); font-style:italic; line-height:1.2; color:#555; }
.rb-books-promo{ margin:0 0 20px; max-width:62ch; font-family:var(--rb-serif); font-size:18px; line-height:1.6; color:#333; }
.rb-books-pub{ font-size:13px; letter-spacing:0.04em; color:#777; margin-bottom:22px; }
/* Laufband (B): Cover + Titel, horizontal scrollbar mit < >-Buttons. */
.rb-books-strip{ display:flex; align-items:stretch; border-top:1px solid var(--rb-accent); }
.rb-books-strip-nav{ flex:0 0 auto; align-self:center; margin:0 12px; width:34px; height:34px; border-radius:50%; border:1px solid var(--rb-accent); background:transparent; color:var(--rb-accent); font-size:15px; line-height:1; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; padding:0; }
.rb-books-strip-nav:hover{ background:var(--rb-accent); color:#fff; }
.rb-books-strip-nav:disabled{ opacity:.3; cursor:default; }
.rb-books-strip-nav:disabled:hover{ background:transparent; color:var(--rb-accent); }
.rb-books-strip-viewport{ flex:1 1 auto; min-width:0; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
.rb-books-strip-viewport::-webkit-scrollbar{ width:0; height:0; }
.rb-books-strip-track{ display:flex; padding:18px 0; }
.rb-books-strip-item{ flex:0 0 150px; scroll-snap-align:start; display:flex; flex-direction:column; gap:22px; padding:4px 16px; border:none; border-right:1px solid rgba(var(--rb-accent-rgb),0.3); background:transparent; color:var(--rb-accent); text-align:left; cursor:pointer; font-family:inherit; }
.rb-books-strip-item:hover .rb-books-strip-title{ text-decoration:underline; }
/* Das aktuell im großen Einzelfeld (A) gezeigte Buch verschwindet aus dem
   Regalbrett (B). */
.rb-books-strip-item.is-active{ display:none; }
.rb-books-strip-cover{ aspect-ratio:3/4; width:100%; background:#6b3f2a center/cover no-repeat; box-shadow:0 10px 20px -12px rgba(0,0,0,0.5); }
.rb-books-strip-title{ font-size:14px; font-weight:700; line-height:1.2; letter-spacing:-0.01em; color:#1a1a1a; }

/* scroll reveal */
[data-reveal]{ opacity:0; transform:translateY(16px); transition:opacity .6s ease, transform .6s ease; }
[data-reveal].is-visible{ opacity:1; transform:none; }

/* ---- responsive ---- */
@media (max-width:900px){
	:root{ --rb-gutter:40px; }
	.rb-hero h1{ font-size:16px; }
	.rb-hero .rb-eyebrow{ font-size:clamp(22px,6vw,32px); }
	.rb-archiv-hero h1{ font-size:clamp(52px,15vw,120px); }
	.rb-art-hero{ height:auto; min-height:60vh; }
	.rb-art-hero-scrim h1{ font-size:clamp(40px,9vw,92px); }
	.rb-book{ grid-template-columns:1fr; gap:24px; }
	.rb-book-cover{ max-width:260px; }
	.rb-book-body h2{ font-size:clamp(34px,7vw,58px); }
	.rb-review-card{ flex-basis:33.33%; }
	.rb-feature{ min-height:400px; }
	.rb-feature-title{ font-size:clamp(34px,7vw,64px); }
	/* Teaser auf schmalen Screens wieder unter die Überschrift */
	.rb-feature-headrow{ flex-direction:column; align-items:flex-start; gap:14px; }
	.rb-feature-teaser{ margin-bottom:0; transform:translateY(8px); }
	.rb-feature:hover .rb-feature-teaser,
	.rb-feature:focus-visible .rb-feature-teaser{ transform:none; }
	.rb-menu-panel{ grid-template-columns:repeat(2,1fr); }
	.rb-essay-row h3{ font-size:clamp(28px,5vw,42px); }
	.rb-notes-card{ flex-basis:50%; }
	.rb-notes-title{ font-size:19px; }
	.rb-archive-body h3{ font-size:26px; }
	.rb-theme-grid{ grid-template-columns:repeat(2,1fr); }
	.rb-theme-col:nth-child(2n){ border-right:none; }
	.rb-theme-col:nth-child(-n+2){ border-bottom:1px solid var(--rb-accent); }
	.rb-list-title{ font-size:20px; }
	.rb-review-header-meta h1{ font-size:clamp(34px,7vw,64px); }
	.rb-related-grid{ grid-template-columns:1fr; }
	.rb-related-card{ flex-direction:row; align-items:flex-start; border-right:none; border-bottom:1px solid #fff; }
	.rb-related-card:last-child{ border-bottom:none; }
	.rb-related-thumb{ flex:0 0 auto; }
	/* Bücher-Areal: Cover schmaler */
	.rb-books-feature{ grid-template-columns:220px minmax(0,1fr); gap:32px; }
	/* Service-Spalte über den Text stapeln */
	.rb-article-layout{ grid-template-columns:1fr; gap:0; }
	.rb-service{ position:static; flex-direction:row; flex-wrap:wrap; align-items:center; gap:14px 20px; max-width:70ch; margin:0 auto 32px; width:100%; }
	.rb-service-stats{ flex-basis:100%; border-top:none; padding-top:0; }
	.rb-biblio{ flex-basis:100%; }
	.rb-article-layout .rb-article-panel-inner{ margin:0 auto; }
}

@media (max-width:600px){
	:root{ --rb-gutter:18px; }
	.rb-wrap{ border-left:none; border-right:none; }
	.rb-topbar{ padding:14px 18px; }
	.rb-menu-panel{ padding-left:18px; padding-right:18px; }
	.rb-hero,.rb-book,.rb-split .rb-col,.rb-archiv-hero,.rb-plain-header,.rb-review-header{ padding-left:18px; padding-right:18px; }
	.rb-section-label,.rb-essay-row,.rb-list-row,.rb-archiv-filter,.rb-menu-panel,.rb-footer,.rb-tags-row,.rb-article-panel,.rb-art-hero-meta,.rb-art-hero-scrim,.rb-archiv-pagination,.rb-search-refine,.rb-reviews-head,.rb-notes-head{ padding-left:18px; padding-right:18px; }
	.rb-books-feature{ grid-template-columns:1fr; gap:22px; padding-left:18px; padding-right:18px; }
	.rb-books-cover{ max-width:220px; }
	.rb-books-strip-item{ flex-basis:130px; }
	.rb-related-card{ padding-left:18px; padding-right:18px; }
	.rb-review-card{ flex-basis:78%; }
	.rb-reviews-cols{ grid-template-columns:1fr; }
	.rb-reviews-col{ border-right:none; border-bottom:1px solid var(--rb-accent); }
	.rb-reviews-col:last-child{ border-bottom:none; }
	.rb-reviews-col .rb-review-card{ flex-basis:100%; }
	.rb-theme-grid{ grid-template-columns:1fr; }
	.rb-theme-col{ border-right:none; border-bottom:1px solid var(--rb-accent); }
	.rb-theme-col:last-child{ border-bottom:none; }
	.rb-book-latest{ grid-template-columns:repeat(2,1fr); }
	/* Themen-Leiste: 2×2 auf schmalen Screens */
	.rb-topics{ grid-template-columns:repeat(2,1fr); }
	.rb-topic{ font-size:12px; min-height:48px; }
	.rb-topic:nth-child(3){ border-left:none; }
	.rb-topic:nth-child(n+3){ border-top:1px solid #fff; }
	/* Startbild flacher auf Mobil */
	.rb-herostart{ min-height:300px; }
	.rb-herostart-inner{ padding:28px 18px; }
	.rb-feature-scrim{ padding-left:18px; padding-right:18px; }
	.rb-menu-panel{ grid-template-columns:1fr; }
	.rb-split{ grid-template-columns:1fr; }
	.rb-split .rb-col.rb-col-left{ border-right:none; border-bottom:1px solid #fff; }
	.rb-essay-row{ grid-template-columns:1fr; gap:14px; }
	.rb-essay-thumb{ width:100%; height:200px; order:-1; }
	.rb-archive-grid{ grid-template-columns:1fr; }
	.rb-archive-card{ border-right:none; }
	.rb-notes-card{ flex-basis:80%; }
	.rb-review-header{ flex-direction:column; align-items:flex-start; gap:20px; }
	.rb-review-header-cover{ width:140px; }
	.rb-postnav{ grid-template-columns:1fr; }
	.rb-postnav-prev{ border-right:none; border-bottom:1px solid #fff; }
	.rb-postnav-next{ grid-column:1; text-align:left; }
	/* Service-Spalte: Druckansicht am Smartphone ausblenden */
	.rb-print{ display:none; }
	/* Listen-Zeilen: kompakt mit kleinem Thumbnail */
	.rb-list-row,
	.rb-wrap--list .rb-list-row{ grid-template-columns:96px 1fr; gap:6px 16px; padding:16px 18px; }
	.rb-list-thumb,
	.rb-wrap--list .rb-list-thumb{ width:96px; grid-row:1 / span 2; }
	.rb-list-title{ font-size:19px; }
	.rb-list-year{ grid-row:1; grid-column:2; text-align:left; order:-1; }
	.rb-list-main{ grid-column:2; }
	.rb-archiv-filters{ overflow-x:auto; flex-wrap:nowrap; }
	.rb-archiv-filter{ white-space:nowrap; }
	.rb-search-row{ padding-left:18px; padding-right:18px; }
	.rb-search-row form{ max-width:none; }

	/* Startseite: Reihenfolge der Bereiche am Smartphone
	   (vier Kästchen → Willkommen → Notizen → Bücher → Radio → Texte →
	   Rezensionen → Feature → Archiv → Footer). */
	.rb-wrap--home{ display:flex; flex-direction:column; }
	.rb-wrap--home > .rb-hero{ order:1; }
	.rb-wrap--home > .rb-topics{ order:2; }
	.rb-wrap--home > .rb-herostart-wrap{ order:3; }
	.rb-wrap--home > .rb-notes-section{ order:4; }
	.rb-wrap--home > .rb-books-block{ order:5; }
	.rb-wrap--home > .rb-book-block{ order:6; }
	.rb-wrap--home > #onair{ order:7; }
	.rb-wrap--home > .rb-salon-section{ order:8; }
	.rb-wrap--home > .rb-reviews-section{ order:9; }
	.rb-wrap--home > .rb-feature{ order:10; }
	.rb-wrap--home > .rb-archive-section{ order:11; }
	.rb-wrap--home > .rb-footer{ order:20; }
}

/* ---- Druckansicht (Einzelbeitrag) --------------------------------------------
   Schlichtes Dokument-Layout: Titel und Vorspann über die volle Breite, danach
   der Fließtext zweispaltig im Blocksatz mit automatischer Silbentrennung. */
@media print{
	@page{ margin:1.8cm; }

	/* Bedienelemente, Navigation, Bilder und Beiwerk ausblenden */
	.rb-topbar,.rb-search-row,.rb-menu-panel,.rb-menu-checkbox,.rb-search-checkbox,
	.rb-service-type,.rb-service-tools,.rb-print,.rb-service-stats,
	.rb-postnav,.rb-related-grid,.rb-section-label,.rb-footer,.rb-notes-section,
	.rb-art-hero-img,.rb-review-header-cover{ display:none !important; }

	html,body,.rb-wrap{ background:#fff !important; color:#000 !important; }
	.rb-wrap{ max-width:none; border:none; }
	.rb-body{ font-family:var(--rb-serif); }

	/* kleine Infozeilen über dem Titel */
	.rb-postmeta{ color:#000 !important; margin:0 0 10px; font-size:9pt; line-height:1.4; text-shadow:none; }
	.rb-postmeta-key{ color:#000; }
	.rb-postmeta a{ color:#000; text-decoration:none; }

	/* Kopf: Titel schwarz auf weiß, moderate Größe, volle Breite */
	.rb-art-hero{ position:static; height:auto; min-height:0; background:none; border:none; overflow:visible; }
	.rb-art-hero-scrim{ position:static; padding:0; background:none; }
	.rb-plain-header,.rb-review-header{ display:block; border:none; padding:0 0 10px; }
	.rb-plain-header h1,.rb-review-header-meta h1,.rb-art-hero-scrim h1{ color:#000 !important; font-family:var(--rb-sans); font-size:24pt; line-height:1.12; letter-spacing:-0.01em; margin:0 0 6px; max-width:none; text-shadow:none; }
	.rb-art-kicker{ color:#000 !important; font-size:10pt; letter-spacing:0.08em; margin-bottom:6px; }

	/* Lesebereich einspaltig umbrechen, Service-Spalte als Block davor */
	.rb-article-panel{ background:#fff; color:#000; padding:0; }
	.rb-article-layout{ display:block; }
	.rb-article-layout .rb-article-panel-inner{ max-width:none; margin:0; }
	.rb-service{ position:static; display:block; margin:0 0 14px; }

	/* bibliografische Angabe als Block vor dem Text — ohne Trennstrich unter
	   der Überschrift (bei Rezensionen) */
	.rb-biblio{ border:none; padding-top:0; }
	.rb-biblio-label,.rb-biblio dt,.rb-biblio dd,.rb-biblio-text{ color:#000 !important; }

	/* Vorspann über die volle Breite, Blocksatz mit Trennung — serifenlos. */
	.rb-article-lede{ color:#000 !important; font-family:var(--rb-sans); font-size:12pt; line-height:1.42; font-weight:600; margin:0 0 14px; text-align:justify; hyphens:auto; -webkit-hyphens:auto; }

	/* Fließtext: zwei Spalten, Blocksatz, automatische Silbentrennung */
	.rb-article-body{ color:#000 !important; font-size:10.5pt; line-height:1.5;
		column-count:2; column-gap:1.2cm; column-rule:1px solid #bbb;
		text-align:justify; hyphens:auto; -webkit-hyphens:auto; -ms-hyphens:auto; orphans:2; widows:2; }
	.rb-article-body p{ color:#000 !important; margin:0 0 9px; }
	.rb-article-body a{ color:#000; text-decoration:none; }
	.rb-article-body .motto{ color:#000; border-color:#000; }
	/* Zitate, Mottos und Bilder über beide Spalten, nicht umbrechen */
	.rb-article-body blockquote,.rb-article-body .zitat,.rb-article-body img{ column-span:all; break-inside:avoid; }
	.rb-article-body blockquote,.rb-article-body .zitat{ background:none !important; color:#000 !important; border:none; border-left:3px solid #000; padding:4px 0 4px 14px; margin:14px 0; font-size:13pt; line-height:1.3; font-weight:700; }
	.rb-article-body blockquote p{ color:#000 !important; font-size:inherit; margin:0; }

	/* Quellenangabe am Ende des Ausdrucks: Druck-URL und Zitier-URL mit
	   Abrufdatum, über die volle Breite unter dem (zweispaltigen) Text. */
	.rb-print-source{ display:block !important; column-span:all; margin-top:18px; padding-top:8px; border-top:1px solid #000;
		font-family:var(--rb-sans); font-size:9pt; line-height:1.5; color:#000 !important; break-inside:avoid; }
	.rb-print-source-cite{ font-style:italic; }

	a{ color:#000; text-decoration:none; }
}
