/* =====================================================================
   mrg-mobile.css – NUR HANDY (eingebunden mit media="(max-width: 767px)")
   Desktop und Tablet bleiben unverändert: Diese Datei greift ab 768 px nie.
   Grundsatz: gleicher Inhalt wie auf dem Desktop (Google indexiert die Handy-
   Fassung), nur ruhiger angeordnet. Keine neuen Muster – nur Haarlinien,
   Zeilen und die vorhandenen Navy-Flächen.
   Alle Selektoren beginnen mit «html», damit sie die <style>-Blöcke der
   Templates (stehen nach dem Stylesheet im body) zuverlässig überstimmen.
   ===================================================================== */

/* ---------- Grundraster: etwas weniger Luft, einheitliche Überschriften ---------- */
html .r-section { padding-top: 56px; padding-bottom: 56px; }
html .r-section[style*="padding-bottom:0"] { padding-bottom: 0 !important; }
html .r-section[style*="padding-top:0"] { padding-top: 0 !important; }
html .r-h2, html .rh-rev__title { font-size: 28px; line-height: 1.12; }
html .rh-head { margin-bottom: 28px !important; gap: 14px; }
html .rh-head p, html .rh-head .r-lead { font-size: 17px; }

/* ---------- 1. Hero: Video kürzer, Knopf und Bewertung in den ersten Bildschirm ---------- */
html .rh-hero__video { height: 220px; }
html .rh-hero__shade { height: 220px; }
html .rh-play { top: 162px; right: 12px; }
html .rh-play__icon::after { animation-iteration-count: 3; }          /* Puls hört nach 3 Durchgängen auf */
html .rh-hero--v2 .rh-hero__inner { padding-top: 4px; padding-bottom: 36px; }
html .rh-hero--v2 .rh-hero__text { gap: 18px; }
html .rh-h1__kicker { margin-bottom: 12px; font-size: 14px; }
/* Reihenfolge: Titel → Knopf → Bewertung → Text → «Preise ansehen» */
html .rh-hero--v2 .rh-hero__text { display: flex; flex-direction: column; }
html .rh-hero--v2 .rh-hero__ctas { display: contents; }
html .rh-hero--v2 .rh-h1 { order: 1; }
html .rh-hero--v2 .rh-hero__ctas .r-btn { order: 2; }
html .rh-hero--v2 .rh-hero__text > p.rh-hero__proof { order: 3; margin-top: -4px; font-size: 14px; line-height: 1.45; max-width: none; }
html .rh-hero--v2 .rh-hero__text > p:not(.rh-hero__proof) { order: 4; font-size: 16px; line-height: 1.55; }
html .rh-hero--v2 .rh-hero__link { order: 5; min-height: 44px; }

/* ---------- 2. Cookie-Hinweis: kurzer Text, Knöpfe nebeneinander ---------- */
html .r-cookie { padding-top: 14px; }
html .r-cookie__inner { gap: 12px; }
html .r-cookie__text { font-size: 14px; line-height: 1.45; }
html .r-cookie__short { display: inline !important; }
html .r-cookie__long { display: none !important; }
html .r-cookie__btns { flex-direction: row; }

/* ---------- 3. Feste Elemente: beim Lesen höchstens eine Leiste ---------- */
html .r-header { transition: transform .3s ease, box-shadow .25s; }
html.m-header-hidden .r-header { transform: translateY(-100%); }
html .r-mobilebar { bottom: 10px; }
html { scroll-padding-bottom: 90px; }

/* ---------- 4. Bewertungen: wischen statt Laufband ---------- */
html .rh-rev { padding: 48px 0 40px; }
html .rh-rev__marquee { position: relative; overflow-x: auto; overflow-y: hidden; max-width: 100%; -webkit-mask-image: none; mask-image: none; scroll-snap-type: x mandatory; scrollbar-width: none; padding: 0 20px; scroll-padding: 0 20px; }
html .rh-rev__marquee::-webkit-scrollbar { display: none; }
html .rh-rev__track { animation: none !important; width: auto; }
html .rh-rev__list[aria-hidden="true"] { display: none; }
html .rh-rev__list { gap: 12px; padding: 0; }
html .rh-rev__card, html .rh-rev__card--short { width: 296px; padding: 22px; scroll-snap-align: start; }   /* feste Breite: nächste Karte schaut angeschnitten hervor */
html .rh-rev__quote p { font-size: 16px; line-height: 1.55; display: -webkit-box; -webkit-line-clamp: 8; -webkit-box-orient: vertical; overflow: hidden; }

/* ---------- 5. Situationen: kompakte Zeilen (Text bleibt vollständig) ---------- */
html .rh-sit { padding: 18px var(--r-gutter, 20px); gap: 8px; transform: none !important; opacity: 1 !important; transition: none; }
html .rh-sit__title { font-size: 20px; }
html .rh-sit__text { font-size: 15.5px; }
html .rh-sit__foot { font-size: 15px; }
html .rh-grid4 { border-top: 1px solid var(--r-line); }

/* ---------- 6. Preise: Preise bleiben sichtbar, Karten kompakter ---------- */
html .rh-prices { gap: 12px; }
html .rh-price { padding: 22px 20px; gap: 12px; }
html .rh-price__amount strong { font-size: 44px; }
html .rh-price .r-btn { min-height: 44px; }
html .rh-unsure { padding: 20px; font-size: 16px; }

/* ---------- 7. Ablauf: Zeilen mit Haarlinie statt vier Karten ---------- */
html .rh-flow { gap: 0; margin-bottom: 28px; border-bottom: 1px solid var(--r-line); }
html .rh-flow__card, html .rh-flow__card--dark { padding: 18px 0; border-radius: 0; background: none; color: var(--r-ink); border-top: 1px solid var(--r-line); gap: 6px; }
html .rh-flow__card--dark .rh-flow__n { color: #0047B3; }
html .rh-flow__card--dark span { color: var(--r-muted); }
html .rh-flow__card strong { font-size: 20px; }

/* ---------- 8. Team: echte Gesichter zuerst ---------- */
html .rh-team { gap: 24px; }
html .rh-team__img { order: -1; height: auto; aspect-ratio: 16 / 11; }
html .rh-team__text { gap: 20px; }
html .rh-assure { padding: 16px 18px; }

/* ---------- 9. KI-Blöcke: ruhiger, Knöpfe als 2×2-Raster ---------- */
html .rh-ai { padding: 36px 20px; gap: 18px; }
html .rh-ai p { font-size: 17px; }
html .rh-ai__btns { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; padding-top: 4px; width: 100%; }
html .rh-ai__btns .r-btn { width: 100%; min-height: 48px; padding-left: 8px; padding-right: 8px; }
html .rh-ai__btns .r-btn--dark { display: none; }            /* doppelter «Erstgespräch»-Knopf: Leiste unten bietet ihn schon */
html .rh-panel { padding: 32px 20px; gap: 24px; }
html .rh-panel p { font-size: 17px; }
html .rh-step { padding: 16px 0; gap: 14px; }
html .rh-step strong { font-size: 18px; }

/* ---------- 10. Region: Fahrzeiten als Zeilen ---------- */
html .rh-region__facts { gap: 0; border-top: 1px solid var(--r-line); }
html .rh-region__fact { padding: 12px 0; border-radius: 0; background: none; border-bottom: 1px solid var(--r-line); }
html .rh-region__time { font-size: 18px; }

/* ---------- 11. FAQ: alle Fragen zu, Kasten ohne doppelte Knöpfe ---------- */
html .rh-faq__list { gap: 8px; }
html .rh-faq summary { padding: 18px 18px; font-size: 17px; }
html .rh-faq details p { padding: 0 18px 20px; }
html .rh-faq__more { padding: 22px 20px; }
html .rh-faq__more .r-btn--glass { display: none; }

/* ---------- 12. Ratgeber: Karten ohne Mindesthöhe ---------- */
html .rh-posts { gap: 10px; }
html .rh-post { min-height: 0; padding: 20px; gap: 10px; }
html .rh-post strong { font-size: 18px; }

/* ---------- 13. Footer: zwei Spalten statt eine lange ---------- */
html .r-footer__grid { grid-template-columns: 1fr 1fr; gap: 28px 20px; }
html .r-footer__grid > :first-child, html .r-footer__grid > :last-child { grid-column: 1 / -1; }
html .r-footer li a { display: inline-block; padding: 6px 0; }

/* ---------- 14. Tippflächen: alleinstehende Links mindestens 44 px hoch ---------- */
html .rh-rev__rating, html .rh-head .r-link, html .rh-unsure .r-link, html .rh-panel .r-link,
html .rh-region .r-link + .r-link { min-height: 44px; display: inline-flex; align-items: center; }

/* ---------- 15. Aktionsleiste weg, solange ein Formularfeld aktiv ist (Tastatur) ---------- */
html body:has(input:focus, textarea:focus, select:focus) .r-mobilebar { transform: translateY(140%); }


/* =====================================================================
   UNTERSEITEN (10/2026): gemeinsame Bausteine, dann je Seitengruppe.
   Gleiche Grundsätze wie oben: Inhalt bleibt vollständig, nur ruhiger.
   ===================================================================== */

/* ----- 00-shared ----- */
/* ---------- Unterseiten: gemeinsame Bausteine (rp-) ----------
   Gilt für alle Unterseiten-Vorlagen. Nur Abstände, Schrift und Rahmen;
   kein Inhalt wird ausgeblendet ausser doppelten Anruf-/WhatsApp-Knöpfen
   im blauen Abschlusskasten (die Leiste unten bietet beide schon). */

/* Kopf: weniger Luft oben, Titel etwas kleiner, Knöpfe volle Breite */
html .rp-hero { padding-top: 28px; padding-bottom: 40px; }
html .rp-hero__text { gap: 18px; }
html .rp-hero h1 { font-size: 36px; line-height: 1.06; }
html .rp-hero .r-lead { font-size: 16px; line-height: 1.55; }
html .rp-hero__ctas { flex-direction: column; gap: 10px; }
html .rp-hero__ctas .r-btn { width: 100%; min-height: 54px; }
html .rp-hero__proof { margin-top: -2px; font-size: 15px; line-height: 1.55; }
/* Brotkrumen: Tippfläche 44 px hoch, ohne die Zeile höher zu machen */
html .rp-crumbs a { padding: 12px 0; margin: -12px 0; }

/* Abschnittsköpfe und H2 einheitlich */
html .rp .r-h2 { font-size: 28px; line-height: 1.12; }
html .rp .r-h2[style*="font-size"] { font-size: 28px !important; }
html .rp-head { margin-bottom: 28px; gap: 12px; }
html .rp-head > div { gap: 12px; }

/* Raster und Kästen: weniger Innenabstand */
html .rp-grid { gap: 12px; }
html .rp-card { padding: 22px 20px; gap: 12px; }
html .rp-note { padding: 18px; gap: 12px; font-size: 16px; line-height: 1.55; }
html .rp-prices { gap: 12px; }
html .rp-split { gap: 28px; }

/* Verwandte Leistungen / Artikel: Zeilen mit Haarlinie statt Kartenstapel */
html .rp-grid:has(> a.rp-card--white > p + .rp-card__foot) { gap: 0; border-bottom: 1px solid var(--r-line); }
html .rp-grid > a.rp-card--white:has(> p + .rp-card__foot) { padding: 18px 0; gap: 6px; background: none; border: 0; border-top: 1px solid var(--r-line); border-radius: 0; }
html .rp-grid > a.rp-card--white:has(> p + .rp-card__foot) h3 { font-size: 19px; }
html .rp-grid > a.rp-card--white:has(> p + .rp-card__foot) p { font-size: 16px; line-height: 1.5; }
html .rp-grid > a.rp-card--white:has(> p + .rp-card__foot) .rp-card__foot { padding-top: 4px; min-height: 28px; }

/* Ablauf: Schritte als Zeilen mit Haarlinie (wie auf der Startseite) */
html .rp-steps { gap: 0; border-bottom: 1px solid var(--r-line); }
html .rp-steps > .rp-step { padding: 18px 0; gap: 6px; background: none; border: 0; border-top: 1px solid var(--r-line); border-radius: 0; }
html .rp-steps > .rp-step strong { font-size: 19px; }
html .rp-steps > .rp-step::before { font-size: 14px; }

/* Häufige Fragen: wie auf der Startseite */
html .rp-faq { gap: 8px; }
html .rp-faq summary { padding: 18px; font-size: 17px; line-height: 1.35; }
html .rp-faq summary::after { font-size: 24px; }
html .rp-faq details > div, html .rp-faq details > p { padding: 0 18px 20px; }

/* Blauer Abschlusskasten: ruhiger, ein Hauptknopf */
html .rp-cta { padding: 36px 20px; gap: 18px; }
html .rp-cta > p:not([class]) { font-size: 17px; line-height: 1.5; }
html .rp-cta__btns { width: 100%; flex-direction: column; align-items: stretch; gap: 10px; }
html .rp-cta__btns .r-btn { width: 100%; }
html .rp-cta__btns:has(> .r-btn--white:not([href^="tel:"])) > .r-btn:not(.r-btn--white):is([href^="tel:"], [href*="wa.me"]) { display: none; }

/* Tabellen: etwas enger */
html .rp-table th, html .rp-table td { padding: 12px 14px; }

/* Alleinstehende Links: mindestens 44 px Tippfläche */
html .rp p[style*="margin"] > a.r-link:only-child,
html .rp [class*="reviews__more"] > a.r-link:only-child,
html .rp [class*="__links"] > a.r-link { display: inline-flex; align-items: center; min-height: 44px; }

/* ----- g1-buchhaltung-preise ----- */
/* ---------- /buchhaltung/ (Präfix rp-buchhaltung-) ----------
   Gleicher Inhalt wie am Desktop. Weniger Rahmen, engere Listen,
   Bewertungen als Wisch-Reihe wie auf der Startseite. */

/* Kopf: Link «5.0 auf Google» mit 44 px Tippfläche (Zeile bleibt gleich hoch) */
html .rp-buchhaltung-hero .rp-hero__proof a { position: relative; padding: 12px 0; }

/* Abschnitte: 48 statt 56 px Luft (zehn Abschnitte untereinander) */
html .rp-buchhaltung-hero ~ .rp-section:not(.rp-section--tight) { padding-top: 48px; padding-bottom: 48px; }

/* Leistungen: Liste und «So rechnen wir ab» enger */
html .rp-buchhaltung-scope { gap: 36px; }
html .rp-buchhaltung-scope .rp-buchhaltung-h2s { margin: 12px 0 20px; }
html .rp-buchhaltung-scope__list { font-size: 16px; line-height: 1.5; }
html .rp-buchhaltung-scope__list li { padding: 11px 0 11px 28px; }
html .rp-buchhaltung-scope__list li::before { top: 14px; }
html .rp-buchhaltung-terms { padding-top: 0; }
html .rp-buchhaltung-terms h3 { margin-bottom: 8px; font-size: 19px; }
html .rp-buchhaltung-terms dl { border-bottom: 1px solid var(--r-line); }
html .rp-buchhaltung-terms dl > div { grid-template-columns: 72px minmax(0, 1fr); gap: 12px; padding: 12px 0; }
html .rp-buchhaltung-terms dd { font-size: 16px; line-height: 1.5; }

/* Preise: Hinweis ohne Rahmen, Pakete kompakter, Zusatz ohne Kasten */
html .rp-buchhaltung-note { margin-bottom: 20px; padding: 16px 0; background: none; border: 0; border-top: 1px solid var(--r-line); border-bottom: 1px solid var(--r-line); border-radius: 0; }
html .rp-buchhaltung-prices .rh-price { gap: 12px; padding: 22px 20px 20px; }
html .rp-buchhaltung-prices .rp-list { gap: 8px; padding-top: 14px; line-height: 1.45; }
html .rp-buchhaltung-prices .rh-price .r-btn { margin-top: 6px; }
html .rp-buchhaltung-extra { margin-top: 24px; padding: 18px 0 0; gap: 6px; border: 0; border-top: 1px solid var(--r-line); border-radius: 0; }
html .rp-buchhaltung-extra p { font-size: 16px; line-height: 1.55; }
html .rp-buchhaltung-extra__links .r-link { display: inline-flex; align-items: center; min-height: 44px; }
html .rp-buchhaltung-extra__links .r-btn { display: none; }      /* doppelter «Erstgespräch anfragen» (Kopf und Abschluss haben ihn) */

/* Team: Bild flacher, Stellvertretung als Zeile statt Kasten */
html .rp-buchhaltung-team { gap: 20px; }
html .rp-split img.rp-buchhaltung-team__img { height: auto; aspect-ratio: 16 / 11; }
html .rp-buchhaltung-team .rh-assure { padding: 14px 0; background: none; border: 0; border-top: 1px solid var(--r-line); border-bottom: 1px solid var(--r-line); border-radius: 0; }

/* Google-Bewertungen: wischen statt drei lange Zitate untereinander (wie Startseite) */
html .rp-buchhaltung-reviews__head { margin-bottom: 20px; }
html .rp-buchhaltung-reviews__rating a { padding: 11px 0; margin: -11px 0; }   /* Tippfläche 44 px, Zeile bleibt gleich hoch */
html .rp-buchhaltung-reviews__list { display: flex; gap: 20px; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: none; margin: 0 calc(-1 * var(--r-gutter)); padding: 0 var(--r-gutter); scroll-padding: 0 var(--r-gutter); }
html .rp-buchhaltung-reviews__list::-webkit-scrollbar { display: none; }
html .rp-buchhaltung-reviews__item { flex: 0 0 296px; scroll-snap-align: start; }
html .rp-buchhaltung-reviews__item blockquote p { font-size: 16px; line-height: 1.55; }
html .rp-buchhaltung-reviews__more { margin-top: 16px; }

/* Häufige Fragen */
html .rp-buchhaltung-faq__intro { gap: 12px; }

/* Verwandte Leistungen und Artikel: Zeilen, «Mehr erfahren» rechts in der ersten Zeile */
html .rp-buchhaltung-more { gap: 48px; }
html .rp-buchhaltung-more .rp-grid > a.rp-card--white.rp-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 16px; row-gap: 4px; align-items: baseline; padding: 16px 0; }
html .rp-buchhaltung-more .rp-grid > a.rp-card--white.rp-card > * { grid-column: 1 / -1; }
html .rp-buchhaltung-more .rp-grid > a.rp-card--white.rp-card > :first-child { grid-column: 1; grid-row: 1; }
html .rp-buchhaltung-more .rp-grid > a.rp-card--white.rp-card > .rp-card__foot { grid-column: 2; grid-row: 1; margin: 0; padding: 0; min-height: 0; gap: 8px; font-size: 15px; }
html .rp-buchhaltung-regions { padding-top: 32px; gap: 16px; }


/* ---------- /preise/ (Präfix rp-preise-) ----------
   Preise bleiben vollständig sichtbar. Weisse Karten werden Zeilen mit
   Haarlinie, Pakete und Rechner bleiben Flächen, nur enger. */

/* Abschnitte: 48 statt 56 px Luft (elf Abschnitte untereinander) */
html .rp-preise > .rp-section { padding-top: 48px; padding-bottom: 48px; }

/* Kopf: Link «5.0 auf Google» mit 44 px Tippfläche (Zeile bleibt gleich hoch) */
html .rp-preise .rp-hero__proof a { position: relative; padding: 12px 0; }

/* Sprungmarken: jede Marke 44 px hoch */
html .rp-preise .rp-hero__tools { gap: 2px; padding-top: 16px; }
html .rp-preise-jump { gap: 0 20px; font-size: 16px; }
html .rp-preise-jump a { display: inline-flex; align-items: center; min-height: 44px; }

/* Rechner */
html .rp-preise-calc { gap: 12px; }
html .rp-preise-calc__inputs { padding: 22px 20px; gap: 28px; }
html .rp-preise-field { gap: 10px; }
html .rp-preise-calc__mini { padding: 12px 16px; }
html .rp-preise-calc__mini a { display: inline-flex; align-items: center; min-height: 44px; margin: -12px 0; }
html .rp-preise-calc__help { padding-top: 18px; gap: 4px 24px; }
html .rp-preise-calc__help .r-link { display: inline-flex; align-items: center; min-height: 44px; }
html .rp-preise-result { padding: 24px 20px; gap: 16px; }

/* Pakete: kompakter, Hinweis darunter ohne Kasten */
html .rp-preise-pkgs .rh-price { gap: 14px; padding: 22px 20px 20px; }
html .rp-preise-pkgs .rp-list { gap: 8px; line-height: 1.45; }
html .rp-preise-pkg-extra { padding-top: 12px; }
html .rp-preise-upgrade { margin-top: 28px; padding: 22px 0 0; gap: 18px; border: 0; border-top: 1px solid var(--r-line); border-radius: 0; }
html .rp-preise-upgrade .rp-list { gap: 8px; }

/* Lohn, CFO, Steuern: Konditionen untereinander, linksbündig */
html .rp-preise-lohn { gap: 32px; }
html .rp-preise-lohn__intro { gap: 18px; }
html .rp-preise-terms li { flex-direction: column; align-items: flex-start; gap: 2px; padding: 12px 0; font-size: 16px; line-height: 1.45; }
html .rp-preise-lohn > .rp-card--white { padding: 22px 0 0; background: none; border: 0; border-top: 1px solid var(--r-line); border-radius: 0; }
html .rp-preise-lohn__intro > div > a.r-link { display: inline-flex; align-items: center; min-height: 44px; }

/* Digitalisierung, Ablauf, «Für wen»: weisse Karten als Zeilen mit Haarlinie */
html .rp-preise .rp-grid:has(> .rp-card--white:not(a)) { gap: 0; border-bottom: 1px solid var(--r-line); }
html .rp-preise .rp-grid > .rp-card--white:not(a) { padding: 22px 0; gap: 12px; background: none; border: 0; border-top: 1px solid var(--r-line); border-radius: 0; }
html .rp-preise-offer__price strong { font-size: 28px; }
html .rp-preise-offer .rp-card__foot { padding-top: 4px; }
html .rp-preise-more { margin-top: 16px; gap: 4px 20px; }
html .rp-preise-more > a.r-link { display: inline-flex; align-items: center; min-height: 44px; }
html .rp-preise .rp-preise-steps { border-bottom: 0; }   /* Abschluss-Linie kommt von den Zeilen darunter */
html .rp-preise-steps + .rp-grid { margin-top: 28px !important; }   /* Inline-Abstand 16 px */

/* Gründung: dunkler Kasten bleibt, weniger Luft */
html .rp-preise-duo { gap: 28px; }
html .rp-preise-duo__text { gap: 18px; }
html .rp-preise-duo .rp-card--dark { padding: 24px 20px; }

/* ----- g2-about-contact-faq ----- */
/* ---------- Über uns (/ueber-uns/, Präfix rp-ueber-uns-) ----------
   Charakter bleibt: echte Fotos, Haarlinien-Liste, Fakten-Raster.
   Nur kompakter: Porträts nebeneinander, kein Leerraum unter «Wer wir sind». */
html .rp-ueber-uns-story { gap: 24px; margin-bottom: 0; }
html .rp-ueber-uns-story__text { gap: 14px; }

/* Ansprechpersonen: zwei Porträts nebeneinander statt untereinander */
html .rp-ueber-uns-people { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
html .rp-ueber-uns-person { gap: 8px; }
html .rp-ueber-uns-person figure { gap: 10px; }
html .rp-ueber-uns-person figcaption strong { font-size: 18px; line-height: 1.2; }
html .rp-ueber-uns-person figcaption span { font-size: 14px; line-height: 1.4; }
html .rp-ueber-uns-person p { font-size: 14px; line-height: 1.7; }
/* E-Mail-Links: Tippfläche höher, ohne die Zeile höher zu machen */
html .rp-ueber-uns-person p a[href^="mailto:"] { padding: 13px 0; }

/* Fakten: Bezeichnung und Wert wieder nebeneinander (wie Desktop) */
html .rp-ueber-uns-facts { grid-template-columns: max-content minmax(0, 1fr); gap: 10px 16px; padding-top: 16px; }
html .rp-ueber-uns-facts dd { margin-bottom: 0; }
html .rp-ueber-uns-facts a { padding: 12px 0; }

/* ---------- Kontakt (/kontakt/, Präfix rp-kontakt-) ----------
   Felder unverändert. Weniger Luft rund ums Formular, Formular ohne Rahmen. */
html .rp-kontakt-hero { padding-bottom: 32px; }
html .rp-kontakt-book { padding-top: 28px; padding-bottom: 48px; }
html .rp-kontakt-grid { gap: 16px; }
html .rp-kontakt-formcard { padding: 0; border: 0; border-radius: 0; background: none; gap: 20px; }
html .rp-kontakt-form-head { gap: 8px; }
html .rp-kontakt-form-head h2, html .rp-kontakt-info h2 { line-height: 1.12; }
html .rp-kontakt-form { gap: 20px; }
html .rp-kontakt-form .rp-chip-opt span { padding: 0 14px; }

/* Dunkler Kasten «Was Sie erwartet»: gleicher Inhalt, enger gesetzt */
html .rp-kontakt-info { padding: 26px 20px; gap: 18px; }
html .rp-kontakt-people, html .rp-kontakt-response, html .rp-kontakt-direct { padding-top: 18px; }
html .rp-kontakt-people { gap: 12px; }
html .rp-kontakt-contacts { margin-top: 6px; gap: 2px; }
html .rp-kontakt-contact { padding: 8px 10px; }
html .rp-kontakt-contact a { display: inline-block; padding: 13px 0; margin: -13px 0; }
html .rp-kontakt-photo { margin-top: 12px; }
html .rp-kontakt-quote { margin-top: 16px; }
html .rp-kontakt-stars { padding: 12px 0; margin: -12px 0; }   /* Bewertungslink: 44 px Tippfläche */

/* Abschlusskasten: WhatsApp bietet die Leiste unten schon (doppelter Knopf) */
html body.page-template-page-kontakt .rp-cta__btns > .r-btn--glass[href*="wa.me"] { display: none; }

/* ---------- FAQ (/faq/, Präfix rp-faq-) ----------
   Alle Fragen starten zu (mrg-mobile.js). Fragen als Zeilen mit Haarlinie
   statt 37 grauer Kästen; Themen als eine wischbare Reihe. */
html body.page-template-page-faq .rp-hero + .rp-section { padding-top: 32px; }
html .rp-faq-nav { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin: 0 calc(var(--r-gutter) * -1) 8px; padding: 2px var(--r-gutter); scroll-padding: 0 var(--r-gutter); }
html .rp-faq-nav::-webkit-scrollbar { display: none; }
html .rp-faq-chip { flex: 0 0 auto; white-space: nowrap; }

html .rp-faq-cat { padding: 32px 0 8px; gap: 14px; border-top: 0; }
html .rp-faq-cat__head { gap: 4px; }
html .rp-faq-cat__head h2 { font-size: 28px; line-height: 1.12; }
html .rp-faq-cat .rp-faq { gap: 0; border-bottom: 1px solid var(--r-line); }
html .rp-faq-cat .rp-faq details { background: none; border-radius: 0; border-top: 1px solid var(--r-line); }
html .rp-faq-cat .rp-faq summary { padding: 16px 0; }
html .rp-faq-cat .rp-faq details > div { padding: 0 0 20px; }
html .rp-faq-stand { margin-top: 32px; padding-top: 0; border-top: 0; }

/* ----- g3-region ----- */
/* ---------- Regionsseiten: /treuhand-aadorf/, /treuhand-thurgau/, /digitale-treuhand-ostschweiz/ ----------
   Nur Handy (Datei mit media="(max-width: 767px)"). Kein Inhalt wird ausgeblendet.
   Abgrenzung: Aadorf über den eigenen Wrapper .rl (template-parts/local-aadorf.php),
   Thurgau über die Vorlagen-Klasse page-template-page-local-landing ohne .rl,
   Winterthur/ZH über page-template-page-digitale-treuhand-ostschweiz und die eigenen Klassen.
   Beide Body-Klassen kommen vom Vorlagen-Dateinamen, nicht von der Seiten-ID. */

/* ===== /treuhand-aadorf/ ===== */

/* Anfahrt: Fahrzeiten als Haarlinien-Zeilen statt zehn Kacheln in einem grauen Kasten */
html .rl .rl-where { gap: 28px; }
html .rl .rl-where__text { gap: 16px; }
html .rl .rl-where__side { gap: 0; }
html .rl .rl-map { padding: 0; background: none; border-radius: 0; gap: 12px; }
html .rl .rl-map figcaption { order: -1; font-size: 15px; line-height: 1.5; }   /* Erklärung vor der Liste */
html .rl .rl-map__list { gap: 0 20px; border-top: 1px solid var(--r-line); }
html .rl .rl-map__list li { padding: 11px 0; gap: 1px; border-radius: 0; background: none; border-bottom: 1px solid var(--r-line); }
html .rl .rl-map__list strong { font-size: 16px; }
html .rl .rl-map__list span { font-size: 14px; }

/* Team: Personen als Zeilen statt weisser Kästen */
html .rl .rl-team { gap: 24px; }
html .rl .rl-team__text { gap: 16px; }
html .rl .rl-people { gap: 0; border-bottom: 1px solid var(--r-line); }
html .rl .rl-person { padding: 12px 0; border-radius: 0; background: none; border-top: 1px solid var(--r-line); }
html .rl .rl-team__text > .r-link { display: inline-flex; align-items: center; min-height: 44px; }

/* Leistungen und «Für wen wir arbeiten»: Fliesstext 17 statt 18 px */
html .rl .rl-offer li { padding: 16px 0; }
html .rl .rl-offer span { font-size: 16px; line-height: 1.55; }
html .rl .rl-for { margin-top: 32px; }
html .rl .rp-prose { font-size: 17px; line-height: 1.6; }
html .rl .rp-prose h3 { font-size: 20px; }
html .rl .rl-offer__more { margin-top: 12px; }
html .rl .rl-offer__more > .r-link { display: inline-flex; align-items: center; min-height: 44px; }


/* ===== /treuhand-thurgau/ (Vorlage page-local-landing ohne Aadorf-Teil) ===== */

/* Leistungen: Preiszeile ohne Rahmen, Links 44 px */
html .rp-local-cols__head > .r-link { display: inline-flex; align-items: center; min-height: 44px; margin: -8px 0; }
html .rp-local-offer li { padding: 16px 0; }
html .rp-local-extra { margin-top: 20px; padding: 0; gap: 4px; border: 0; border-radius: 0; background: none; }
html .rp-local-extra p { font-size: 16px; line-height: 1.55; }
html .rp-local-extra > .r-link { display: inline-flex; align-items: center; min-height: 44px; }

/* Wirtschaft und Steuern: Fliesstext 17 statt 18 px */
html .page-template-page-local-landing .rp:not(.rl) .rp-prose { font-size: 17px; line-height: 1.6; }
html .page-template-page-local-landing .rp:not(.rl) .rp-prose h3 { font-size: 20px; }
html .rp-local-facts { margin-top: 28px; }
html .rp-local-facts div { padding: 12px 0; }

/* Team: Foto zuerst (wie Startseite und Aadorf), Knöpfe untereinander */
html .page-template-page-local-landing .rp:not(.rl) .rp-split img.rp-local-photo { order: -1; height: auto; aspect-ratio: 5 / 4; }
html .rp-local-team { gap: 20px; }
html .rp-local-team__btns { flex-direction: column; }
html .rp-local-team__btns .r-btn { width: 100%; }

/* Google-Bewertungen: etwas enger, Zitate 16 px (vollständig) */
html .rp-local-reviews__head { margin-bottom: 8px; }
html .rp-local-reviews__list { gap: 24px; }
html .rp-local-reviews__item { padding-top: 18px; gap: 10px; }
html .rp-local-reviews__item blockquote p { font-size: 16px; line-height: 1.55; }
html .rp-local-reviews__more { margin-top: 20px; }

/* Weitere Regionen: Linkzeilen mit Haarlinie statt umrandeter Knöpfe */
html .rp-local-related { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; border-bottom: 1px solid var(--r-line); }
html .rp-local-related a { min-height: 48px; padding: 0; border: 0; border-top: 1px solid var(--r-line); border-radius: 0; background: none; font-size: 17px; }


/* ===== /digitale-treuhand-ostschweiz/ (Winterthur & Kanton Zürich) ===== */

/* Steuervergleich: jede Region eine kompakte Zeile statt eines hohen Kastens.
   Name links, Steuersatz rechts; Fahrzeit und Besonderheiten darunter mit Vorspann-Label. */
html .rp-table-wrap.rp-digitale-treuhand-ostschweiz-table { overflow: visible; border: 0; border-radius: 0; }
html .rp-digitale-treuhand-ostschweiz-table tr { grid-template-columns: minmax(0, 1fr) auto; gap: 6px 16px; padding: 14px 0; border-bottom: 1px solid var(--r-line); }
html .rp-digitale-treuhand-ostschweiz-table tr:last-child { border-bottom: 1px solid var(--r-line); }
html .rp-digitale-treuhand-ostschweiz-table tr.rp-digitale-treuhand-ostschweiz-home { margin: 0 -12px; padding: 14px 12px; border-radius: 8px; border-bottom: 0; }
/* Die Vorlage setzt hier padding:0; die gemeinsame Tabellenregel (12px 14px) würde jede Zelle aufblähen */
html .rp-table-wrap.rp-digitale-treuhand-ostschweiz-table th, html .rp-table-wrap.rp-digitale-treuhand-ostschweiz-table td { padding: 0; }
html .rp-digitale-treuhand-ostschweiz-table th[scope="row"] { grid-column: 1; grid-row: 1; }
html .rp-digitale-treuhand-ostschweiz-table td.rp-digitale-treuhand-ostschweiz-rate { grid-column: 2; grid-row: 1; }
html .rp-digitale-treuhand-ostschweiz-table th[scope="row"] strong { font-size: 17px; }
html .rp-digitale-treuhand-ostschweiz-table th[scope="row"] span { font-size: 14px; }
html .rp-digitale-treuhand-ostschweiz-table td.rp-digitale-treuhand-ostschweiz-rate { text-align: right; }
html .rp-digitale-treuhand-ostschweiz-table td:not(.rp-digitale-treuhand-ostschweiz-rate) { grid-column: 1 / -1; font-size: 15px; line-height: 1.45; color: var(--r-ink); }
html .rp-digitale-treuhand-ostschweiz-table td:not(.rp-digitale-treuhand-ostschweiz-rate)::before { content: attr(data-label) ": "; display: inline; margin: 0; font-size: 15px; font-weight: 400; }
/* Quellenhinweis unter der Tabelle: Fussnote statt Kasten (Text vollständig) */
html .page-template-page-digitale-treuhand-ostschweiz .rp-table-wrap + .rp-note { padding: 0; border: 0; border-radius: 0; background: none; font-size: 14px; line-height: 1.5; color: var(--r-muted); }
html .page-template-page-digitale-treuhand-ostschweiz .rp-table-wrap + .rp-note strong { color: var(--r-ink); }

/* Regionen: Fahrzeit als Textzeile unter dem Titel statt Etikett daneben (Titel bricht nicht mehr dreizeilig um) */
html .rp-digitale-treuhand-ostschweiz-region { padding: 28px 0; }
html .rp-digitale-treuhand-ostschweiz-region__head { flex-direction: column; align-items: flex-start; gap: 4px; margin-bottom: 14px; }
html .rp-digitale-treuhand-ostschweiz-region__head h3 { flex: none; }
html .rp-digitale-treuhand-ostschweiz-region__head .r-chip { padding: 0; border: 0; border-radius: 0; background: none; font-size: 15px; color: var(--r-muted); }
html .rp-digitale-treuhand-ostschweiz-region__body { gap: 18px; }
html .rp-digitale-treuhand-ostschweiz-tg { gap: 16px; }

/* Weitere Seiten: zweispaltige Linkzeilen mit Haarlinie statt Etiketten-Wolke */
html .rp-digitale-treuhand-ostschweiz-more { flex-direction: column; align-items: stretch; gap: 14px; }
html .rp-digitale-treuhand-ostschweiz-more__links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; }
html .rp-digitale-treuhand-ostschweiz-more__links a { min-height: 48px; padding: 0; border: 0; border-bottom: 1px solid var(--r-line); border-radius: 0; background: none; font-size: 16px; }
html .rp-digitale-treuhand-ostschweiz-more__links a:nth-child(-n+2) { border-top: 1px solid var(--r-line); }

/* ----- g4-services ----- */
/* ---------- Leistungsseiten (g4): /mwst/, /lohn-hr/, /jahresabschluss/, /quellensteuer/,
   /firmengruendung/, /cfo-service/, /treuhand-dienstleistungen/ ----------
   Nur Handy. Jede Regel hängt an der eigenen Klasse der Seite (rp-mwst-…, rp-lohn-hr-… usw.).
   Kein Inhalt wird ausgeblendet. Kästen werden wo sinnvoll zu Zeilen mit Haarlinie,
   Preise bleiben vollständig sichtbar. */

/* «Was wir übernehmen»: Listen in normaler Textgrösse, etwas enger */
html .rp-mwst-scope .rp-list,
html .rp-jahresabschluss-scope .rp-list,
html .rp-quellensteuer-scope .rp-list { font-size: 16px; gap: 10px; }
html .rp-mwst-scope > :nth-child(3) { margin-top: 20px; padding-top: 28px; }
/* Alleinstehende Textlinks: mindestens 44 px Tippfläche */
html .rp-lohn-hr-tasks > div > a.r-link,
html .rp-treuhand-dienstleistungen-prices__intro > a.r-link { display: inline-flex; align-items: center; min-height: 44px; align-self: flex-start; }

/* MWST-Methoden: zwei Zeilen mit Haarlinie statt zwei weisse Karten */
html .rp-grid:has(> .rp-mwst-method) { gap: 0; border-bottom: 1px solid var(--r-line-2); }
html .rp-grid > .rp-mwst-method { padding: 22px 0; background: none; border: 0; border-top: 1px solid var(--r-line-2); border-radius: 0; }
html .rp-mwst-method .rp-list { padding-top: 0; border-top: 0; }

/* Hinweise ohne Kasten: Haarlinie darüber (Stellvertretung, Revision, Rechenbeispiel) */
html .rp-note.rp-lohn-hr-assure,
html .rp-note.rp-jahresabschluss-note { padding: 22px 0 0; background: none; border: 0; border-top: 1px solid var(--r-line-2); border-radius: 0; }
html .rp-lohn-hr-assure { margin-top: 28px; }
html .rp-lohn-hr-notes { margin-top: 24px; gap: 0; border-bottom: 1px solid var(--r-line); }
html .rp-lohn-hr-notes > .rp-note { padding: 16px 0; background: none; border: 0; border-top: 1px solid var(--r-line); border-radius: 0; }

/* Preiskarten (Lohn, CFO, Gründung): Innenabstand wie auf der Startseite, Preise unverändert */
html .rp-lohn-hr-prices .rh-price,
html .rp-cfo-service-prices .rh-price,
html .rp-firmengruendung-offer .rh-price { padding: 22px 20px; gap: 12px; }
html .rp-lohn-hr-prices .rh-price > ul,
html .rp-cfo-service-prices .rp-list { padding-top: 14px; }

/* CFO: Titel ohne Silbentrennung «Fir-ma» (ab 360 px passt jedes Wort) */
@media (min-width: 360px) { html #cfo-title { -webkit-hyphens: manual; hyphens: manual; } }
/* CFO «Für wen»: ohne Kasten, wie die Gruppen darunter */
html .rp-cfo-service-intro { margin-bottom: 32px; }
html .rp-cfo-service-who { padding: 20px 0 0; border: 0; border-top: 1px solid var(--r-line-2); border-radius: 0; background: none; }

/* GmbH oder AG: pro Zeile Merkmal oben, GmbH und AG nebeneinander darunter (kein Querscrollen) */
html .rp-table.rp-firmengruendung-table, html .rp-table.rp-firmengruendung-table thead, html .rp-table.rp-firmengruendung-table tbody { display: block; }
html .rp-table.rp-firmengruendung-table tr { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); border-bottom: 1px solid var(--r-line); }
html .rp-table.rp-firmengruendung-table tbody tr:last-child { border-bottom: 0; }
html .rp-table.rp-firmengruendung-table th, html .rp-table.rp-firmengruendung-table td { border-bottom: 0; padding: 4px 14px 14px; overflow-wrap: break-word; }
html .rp-table.rp-firmengruendung-table thead td:empty { display: none; }
html .rp-table.rp-firmengruendung-table thead th { padding: 12px 14px; font-size: 16px; }
html .rp-table.rp-firmengruendung-table th[scope="row"] { grid-column: 1 / -1; width: auto; padding: 14px 14px 2px; }
html .rp-table.rp-firmengruendung-table td + td, html .rp-table.rp-firmengruendung-table thead th + th { border-left: 1px solid var(--r-line); }
@media (max-width: 359px) { html .rp-table.rp-firmengruendung-table td { -webkit-hyphens: auto; hyphens: auto; } }

/* Quellensteuer: Status oben, Regel darunter, volle Breite (kein Querscrollen) */
html .rp-table.rp-quellensteuer-table, html .rp-table.rp-quellensteuer-table thead, html .rp-table.rp-quellensteuer-table tbody,
html .rp-table.rp-quellensteuer-table tr, html .rp-table.rp-quellensteuer-table th, html .rp-table.rp-quellensteuer-table td { display: block; }
html .rp-table.rp-quellensteuer-table th[scope="row"] { width: auto; padding: 14px 16px 0; border-bottom: 0; font-size: 16px; }
html .rp-table.rp-quellensteuer-table th[scope="row"] span { font-size: 15px; }
html .rp-table.rp-quellensteuer-table td { padding: 4px 16px 14px; font-size: 16px; }
html .rp-table.rp-quellensteuer-table thead tr { display: flex; }
html .rp-table.rp-quellensteuer-table thead th { padding: 12px 0 12px 16px; border-bottom: 1px solid var(--r-line); }
html .rp-table.rp-quellensteuer-table thead th + th { flex: 1; padding-left: 0; }
html .rp-table.rp-quellensteuer-table thead th + th::before { content: '·'; content: '·' / ''; margin: 0 8px; color: var(--r-muted); font-weight: 400; }

/* Leistungsübersicht: Kernleistungen als Zeilen mit Haarlinie, wie «Weitere Leistungen» darunter */
html .rp-grid:has(> .rp-treuhand-dienstleistungen-svc) { gap: 0; border-bottom: 1px solid var(--r-line); }
html .rp-grid > a.rp-treuhand-dienstleistungen-svc { padding: 24px 0; gap: 10px; background: none; border: 0; border-top: 1px solid var(--r-line); border-radius: 0; }
html .rp-treuhand-dienstleistungen-svc h3 { font-size: 22px; }
html .rp-treuhand-dienstleistungen-svc .rp-card__foot { padding-top: 4px; border-top: 0; min-height: 28px; }
html .rp-treuhand-dienstleistungen-more { margin-top: 40px; }
/* Ansprechpersonen: Foto zuerst (echte Gesichter), flacher – wie auf der Startseite */
html .rp-split:has(> img.rp-treuhand-dienstleistungen-teamimg) { gap: 24px; }
html .rp-split img.rp-treuhand-dienstleistungen-teamimg { order: -1; height: auto; aspect-ratio: 16 / 11; }
html .rp-treuhand-dienstleistungen-team { gap: 20px; }

/* ----- g5-branchen-ki ----- */
/* ---------- Branchen-Seiten (/treuhand-gastronomie/, /treuhand-handwerk/) und /digitalisierung/ ----------
   Nur Klassen dieser drei Vorlagen (rp-treuhand-gastronomie-…, rp-treuhand-handwerk-…, rp-digitalisierung-…).
   Kein Inhalt wird ausgeblendet. Preise bleiben vollständig sichtbar. */

/* Branchen: Leistungslisten enger, gleiche Schrift wie der Fliesstext */
html :is(.rp-treuhand-gastronomie-scope, .rp-treuhand-handwerk-scope) { gap: 28px; }
html :is(.rp-treuhand-gastronomie-scope, .rp-treuhand-handwerk-scope) > div { padding-top: 18px; gap: 10px; }
html :is(.rp-treuhand-gastronomie-scope, .rp-treuhand-handwerk-scope) h3 { font-size: 20px; }
html :is(.rp-treuhand-gastronomie-scope, .rp-treuhand-handwerk-scope) ul { gap: 6px; padding-left: 18px; }
html :is(.rp-treuhand-gastronomie-scope, .rp-treuhand-handwerk-scope) li { font-size: 16px; line-height: 1.5; }
html :is(.rp-treuhand-gastronomie-types, .rp-treuhand-handwerk-types) { margin-top: 28px; font-size: 16px; line-height: 1.55; }

/* Branchen: Preisliste als Zeilen mit Haarlinie statt Kasten (alle Beträge und Bedingungen bleiben) */
html :is(.rp-treuhand-gastronomie-rates, .rp-treuhand-handwerk-rates) { background: none; border: 0; border-radius: 0; border-top: 1px solid var(--r-line); border-bottom: 1px solid var(--r-line); }
html :is(.rp-treuhand-gastronomie-rates, .rp-treuhand-handwerk-rates) > div { padding: 16px 0; gap: 2px; }
html :is(.rp-treuhand-gastronomie-rates, .rp-treuhand-handwerk-rates) dd { font-size: 16px; line-height: 1.5; }
html :is(.rp-treuhand-gastronomie-pricenote, .rp-treuhand-handwerk-pricenote) { margin-top: 16px; gap: 12px; }
html :is(.rp-treuhand-gastronomie-pricenote, .rp-treuhand-handwerk-pricenote) p { font-size: 16px; line-height: 1.55; }
html :is(.rp-treuhand-gastronomie-pricenote__links, .rp-treuhand-handwerk-pricenote__links) { width: 100%; flex-direction: column; align-items: stretch; gap: 8px; }
html :is(.rp-treuhand-gastronomie-pricenote__links, .rp-treuhand-handwerk-pricenote__links) > a.r-link { display: inline-flex; align-items: center; align-self: flex-start; min-height: 44px; }
html :is(.rp-treuhand-gastronomie-pricenote__links, .rp-treuhand-handwerk-pricenote__links) > .r-btn { width: 100%; }

/* Branchen: Häufige Fragen und Google-Bewertungen ruhiger */
html :is(.rp-treuhand-gastronomie-faq__intro, .rp-treuhand-handwerk-faq__intro) { gap: 12px; }
html :is(.rp-treuhand-gastronomie-reviews__head, .rp-treuhand-handwerk-reviews__head) { margin-bottom: 16px; gap: 0 24px; }
html :is(.rp-treuhand-gastronomie-reviews__rating, .rp-treuhand-handwerk-reviews__rating) a { display: inline-flex; align-items: center; min-height: 44px; }
html :is(.rp-treuhand-gastronomie-reviews__list, .rp-treuhand-handwerk-reviews__list) { gap: 20px; }
html :is(.rp-treuhand-gastronomie-reviews__item, .rp-treuhand-handwerk-reviews__item) { padding-top: 18px; gap: 10px; }
html :is(.rp-treuhand-gastronomie-reviews__item, .rp-treuhand-handwerk-reviews__item) blockquote p { font-size: 16px; line-height: 1.55; }
html :is(.rp-treuhand-gastronomie-reviews__more, .rp-treuhand-handwerk-reviews__more) { margin-top: 12px; }

/* /digitalisierung/: Software-Logos im Kopf auf einer Zeile statt eines einzelnen Logos auf der zweiten
   (alle fünf bleiben, nur etwas kleiner; unter ~350 px Breite dürfen sie wie bisher umbrechen) */
html .rp-digitalisierung-tools__row { justify-content: space-between; gap: 12px 8px; }
html .rp-digitalisierung-tools__row img.rp-digitalisierung-logo--bexio { height: 21px; }
html .rp-digitalisierung-tools__row img.rp-digitalisierung-logo--abacus { height: 13px; }
html .rp-digitalisierung-tools__row img.rp-digitalisierung-logo--topal { height: 16px; }
html .rp-digitalisierung-tools__row img.rp-digitalisierung-logo--swiss21 { height: 22px; }
html .rp-digitalisierung-tools__row img.rp-digitalisierung-logo--proffix { height: 22px; }

/* /digitalisierung/: Bild unter dem Kopf bleibt, nur weniger Leerraum darunter */
html .rp-digitalisierung-shotwrap { padding-top: 24px; padding-bottom: 0; }

/* /digitalisierung/: «Was wir übernehmen» und «Buchungslogik» */
html .rp-digitalisierung-split__intro { gap: 12px; }
html .rp-digitalisierung-tasks li { padding: 16px 0; gap: 4px; }
html .rp-digitalisierung-tasks strong { font-size: 18px; line-height: 1.35; }
html .rp-digitalisierung-tasks span { font-size: 16px; line-height: 1.55; }
html .rp-digitalisierung-logic { gap: 14px; font-size: 16px; line-height: 1.6; }
html .rp-digitalisierung-logic .rp-list { gap: 8px; }

/* /digitalisierung/: Pakete – Preis-Wörter nicht grösser als die Zahl, Listen enger */
html .rp-digitalisierung-price-word strong { font-size: 32px; line-height: 1.05; }
html .rp-digitalisierung-prices .rp-list { padding-top: 14px; gap: 8px; }

/* /digitalisierung/: Ansprechpersonen – Knöpfe wie im Kopf, Bild flacher */
html .rp-digitalisierung-team { gap: 20px; }
html .rp-digitalisierung-team__btns { flex-direction: column; gap: 10px; }
html .rp-digitalisierung-team__btns .r-btn { width: 100%; }
html .rp-split img.rp-digitalisierung-team__img { height: auto; aspect-ratio: 16 / 11; }

/* /digitalisierung/: Ratgeber und Region */
html .rp-digitalisierung-further { gap: 40px; }
html .rp-digitalisierung-region { padding-top: 28px; gap: 16px; }

/* ----- g6-blog-legal ----- */
/* ---------- Ratgeber, Artikel, Impressum, Datenschutz (g6) ----------
   Nur Handy. Gleicher Inhalt, nichts ausgeblendet; nur Abstände, Schrift,
   Rahmen. Ratgeber-Karten (rr-) gibt es nur auf /ratgeber/ und unter Artikeln. */

/* ===== Ratgeber-Übersicht /ratgeber/ ===== */
html .rp-section:has(> .r-wrap > .rr-feature) { padding-top: 32px; }
html .rp-section:has(> .rr-layout) { padding-top: 40px; padding-bottom: 48px; }
/* Einstiegsartikel: Bild flacher, Text enger gesetzt */
html .rr-feature { padding: 10px 10px 22px; gap: 18px; }
html .rr-feature .rr-cover--lg { aspect-ratio: 16 / 8; padding: 18px 20px; }
html .rr-feature__text { gap: 12px; padding: 0 10px; }
html .rr-feature__text h2 { font-size: 24px; line-height: 1.15; }
html .rr-feature__text p { font-size: 16px; line-height: 1.55; }
html .rr-layout { gap: 20px; }
html .rr-side { gap: 0; }
html .rr-browse__title { padding-bottom: 0; border-bottom: 0; }

/* Artikel-Karten → Zeilen mit Haarlinie, Titelbild als kleines Vorschaubild links
   (gilt auch für «Das könnte Sie auch interessieren» unter jedem Artikel) */
html .rr-grid { gap: 0; margin-top: 12px; border-bottom: 1px solid var(--r-line); }
html .rr-card { display: grid; grid-template-columns: 96px minmax(0, 1fr); grid-template-rows: auto auto 1fr; column-gap: 16px; row-gap: 6px; align-items: start; padding: 18px 0; border: 0; border-top: 1px solid var(--r-line); border-radius: 0; background: none; }
html .rr-card > .rr-cover { grid-column: 1; grid-row: 1 / span 3; width: 96px; aspect-ratio: 1 / 1; padding: 10px; border-radius: 12px; }
html .rr-card .rr-cover__label { font-size: 11px; line-height: 1.25; }
html .rr-card .rr-cover__kw, html .rr-card .rr-cover--long .rr-cover__kw { font-size: 15px; line-height: 1.1; max-width: 100%; }
html .rr-card > .rr-card__meta, html .rr-card > h3, html .rr-card > .rr-card__foot { grid-column: 2; padding: 0; }
html .rr-card > h3 { font-size: 17px; line-height: 1.28; letter-spacing: -0.01em; }
html .rr-card > .rr-card__foot { flex-wrap: wrap; justify-content: flex-start; gap: 2px 12px; font-size: 13px; }
html .rr-card > .rr-card__foot time { font-size: 13px; }
html .rr-more { margin-top: 24px; }

/* ===== Einzelner Artikel (single.php) ===== */
/* Kopf: Titel und Autor zuerst, Titelbild danach und flacher */
html .rp-single .rp-single-hero { padding-top: 24px; padding-bottom: 28px; }
html .rp-single-top { gap: 24px; }
html .rp-single .rp-single-cover { order: 0; aspect-ratio: 16 / 7; }
html .rp-single-head { gap: 14px; }
html .rp-single .rp-single-hero h1 { font-size: 30px; line-height: 1.1; }
html .rp-single-meta { gap: 14px 24px; padding-top: 16px; }
html .rp-single-dates { gap: 10px 24px; }

/* Lesespalte */
html .rp-single .rp-section--tight { padding-top: 24px; padding-bottom: 48px; }
html .rp-single-layout { row-gap: 28px; }
html .rp-single-toc details { border-radius: 16px; }
html .rp-single-body { font-size: 17px; line-height: 1.6; }
html .rp-single-body h2 { margin-top: 1.8em; font-size: 26px; line-height: 1.15; }
html .rp-single-body h3 { margin-top: 1.5em; font-size: 20px; line-height: 1.25; }
html .rp-single-body ul, html .rp-single-body ol { padding-left: 1.15em; }

/* Getönte Hinweiskästen: weniger Innenabstand */
html .rp-single-body div[class*="rounded-xl"], html .rp-single-body div[class*="rounded-r-xl"], html .rp-single-body div[class*="rounded-2xl"] { padding: 18px; border-radius: 16px; line-height: 1.55; }
/* Weisse Rahmenkästen → Abschnitte mit Haarlinie oben und unten (mehr Zeilenbreite) */
html .rp-single-body div.bg-white[class*="border"]:not(.text-center) { margin-bottom: 0; padding: 18px 0; border-width: 1px 0; border-style: solid; border-color: var(--r-line); border-radius: 0; background: none; box-shadow: none; }
html .rp-single-body div.bg-white[class*="border"]:not(.text-center) + div.bg-white[class*="border"]:not(.text-center),
html .rp-single-body .space-y-4 > div.bg-white[class*="border"]:not(.text-center) ~ div.bg-white[class*="border"]:not(.text-center) { margin-top: 0; border-top: 0; }
html .rp-single-body .grid:has(> div.bg-white[class*="border"]:not(.text-center)) { gap: 0; }
html .rp-single-body .grid > div.bg-white[class*="border"]:not(.text-center) + div.bg-white[class*="border"]:not(.text-center) { border-top: 0; }
/* FAQ-Kasten im Artikel: äusseren Rahmen weg, Fragen wie auf den anderen Seiten */
html .rp-single-body div.bg-slate-50:has(> details) { padding: 0; border: 0; border-radius: 0; background: none; }
html .rp-single-body div.bg-slate-50:has(> details) > h2 { margin-bottom: 16px; font-size: 26px; line-height: 1.15; }
html .rp-single-body div.bg-slate-50:has(> details) details { background: var(--r-soft); }
html .rp-single-body details + details { margin-top: 8px; }
/* Dunkler Kasten im Text */
html .rp-single .rp-single-body div.rp-single-dark { padding: 28px 20px; border-radius: 20px; }
html .rp-single-body .rp-single-dark h2, html .rp-single-body .rp-single-dark h3, html .rp-single-body .rp-single-dark p.text-2xl { font-size: 24px; }
html .rp-single-body .rp-single-dark a[class*="bg-white"] { width: 100%; padding: 12px 16px; }
/* Tabellen ohne Kasten: bis an den Bildschirmrand, damit alle Spalten Platz haben */
html .rp-single-body > .rp-single-table,
html .rp-single-body > div:not([class*="rounded"]):has(> .rp-single-table) { margin-left: calc(var(--r-gutter, 20px) * -1); margin-right: calc(var(--r-gutter, 20px) * -1); }
html .rp-single-body > .rp-single-table table,
html .rp-single-body > div:not([class*="rounded"]) > .rp-single-table table { border-radius: 0 !important; border-left: 0; border-right: 0; box-shadow: none; }
html .rp-single-body > .rp-single-table :is(th, td),
html .rp-single-body > div:not([class*="rounded"]) > .rp-single-table :is(th, td) { padding: 10px 8px; line-height: 1.4; }
html .rp-single-body > .rp-single-table :is(th, td):first-child,
html .rp-single-body > div:not([class*="rounded"]) > .rp-single-table :is(th, td):first-child { padding-left: var(--r-gutter, 20px); }
html .rp-single-body > .rp-single-table :is(th, td):last-child,
html .rp-single-body > div:not([class*="rounded"]) > .rp-single-table :is(th, td):last-child { padding-right: var(--r-gutter, 20px); }

/* Nach dem Artikel: Dienstleistungen als Zeilen, Autor als Zeile */
html .rp-single-after { margin-top: 36px; gap: 12px; }
html .rp-single-services { padding: 18px 18px 4px; gap: 4px; border-radius: 20px; }
html .rp-single-services__grid { gap: 0; }
html .rp-single-service { padding: 14px 0; border: 0; border-top: 1px solid rgba(0, 26, 128, .1); border-radius: 0; background: none; }
html .rp-single-service:first-child { border-top: 0; }
html .rp-single-service .rp-icon { background: #fff; }
html .rp-single-author { flex-direction: row; gap: 16px; padding: 20px 18px; }
html .rp-single-author img { width: 56px; height: 56px; }
html .rp-single-author > div { gap: 6px; }
html .rp-single-author h2 { font-size: 22px; }
html .rp-single-author p { font-size: 15.5px; line-height: 1.55; }
html .rp-single-related { padding-top: 48px; padding-bottom: 48px; }
/* Tippflächen mindestens 44 px, ohne die Zeilen zu verschieben */
html .rp-single-head .r-chip { position: relative; }
html .rp-single-head .r-chip::after { content: ''; position: absolute; inset: -7px 0; }
html .rp-single-toc a { padding-top: 12px; padding-bottom: 12px; }
html .rp-single-author h2 a { display: inline-block; padding: 10px 0; margin: -10px 0; }

/* ===== Impressum ===== */
html .rp:has(#rp-impressum-title) > .rp-section { padding-top: 48px; padding-bottom: 48px; }
html .rp-impressum-card { gap: 10px; }
html .rp-impressum-card h2 { font-size: 20px; }
html .rp-impressum-reg { gap: 10px; }
html .rp-impressum-people { gap: 14px; }
html .rp-impressum-person { gap: 14px; }
html .rp-impressum-person img { width: 56px; height: 56px; }
html .rp-impressum-person strong { font-size: 18px; }
html .rp-impressum-box { padding: 22px 18px; font-size: 16px; line-height: 1.6; }
html .rp-impressum-box h3 { margin-top: 1.5em; font-size: 20px; }
html .rp-impressum-card .rp-card__foot > a.r-link { display: inline-flex; align-items: center; min-height: 44px; }
html .rp-impressum-reg a { display: inline-block; padding: 10px 0; margin: -10px 0; }

/* ===== Datenschutz ===== */
html .rp:has(#rp-datenschutz-title) > .rp-section:not([style]) { padding-top: 40px; padding-bottom: 48px; }
html .rp-datenschutz-layout { gap: 16px; }
html .rp-datenschutz-aside { gap: 12px; }
html .rp-datenschutz-aside .rp-card { padding: 20px 18px; }
html .rp-datenschutz-main { gap: 12px; }
html .rp-datenschutz-block { padding: 22px 18px; font-size: 16px; line-height: 1.6; }
html .rp-datenschutz-block h2 { gap: 10px; font-size: 24px; line-height: 1.15; }
html .rp-datenschutz-block h3 { margin-top: 1.4em; font-size: 18px; }
html .rp-datenschutz-aside .rp-card__foot > a { display: inline-block; padding: 10px 0; margin: -10px 0; }
