/* rausch-bausteine.css – gemeinsame Zusätze für alle HTML-Bausteine der Webseite Fahrschule Rausch.
   Grundlayout (Schrift, Überschriften, Linien, Buttons) kommt aus dem TYPO3-Theme.
   Hier stehen nur eigene Zusätze. Jeder Baustein: <div class="fsr-seite"> … </div>
   Stand: 30.10.2026, v=5 */

.fsr-seite .NnnPlainTxt{scroll-margin-top:90px}
/* Abstände: Absätze und Listen klar voneinander trennen (v=5) */
.fsr-seite .cntPlain p{margin:0 0 18px}


/* Sprungmarken als Knöpfe */
.fsr-seite .jump{display:flex;flex-wrap:wrap;gap:10px;margin:30px 0 0;padding:0;list-style:none}
.fsr-seite .jump li{margin:0;padding:0}
.fsr-seite .jump li::before{display:none}
.fsr-seite .jump a{display:inline-block;padding:9px 16px;border:1px solid #d5dae0;border-radius:999px;
  text-decoration:none;font-size:15px;font-weight:400;color:#191928;background:#fff;transition:border-color .15s,background .15s}
.fsr-seite .jump a:hover{border-color:#191928;background:#f5f6f8}

/* Grauer Hinweis-/Beispiel-Kasten mit Zeilen */
.fsr-seite .box{background:#f5f6f8;border-left:1.5px solid #191928;padding:20px 26px;margin:24px 0 0}
.fsr-seite .box .t{display:block;font-weight:500;margin-bottom:10px}
.fsr-seite .zeile{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-top:1px solid #d5dae0}
.fsr-seite .zeile:first-of-type{border-top:0}
.fsr-seite .zeile .v{font-weight:500;white-space:nowrap}
@media (max-width:480px){.fsr-seite .zeile{flex-direction:column;gap:2px}}

/* Karten nebeneinander (z. B. zwei Möglichkeiten) */
.fsr-seite .cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:10px 0 24px}
@media (max-width:767px){.fsr-seite .cards{grid-template-columns:1fr}}
.fsr-seite .opt{border:1px solid #d5dae0;border-radius:10px;padding:20px 24px;background:#fff}
.fsr-seite .opt h3{margin:0 0 10px}
.fsr-seite .opt p{margin:0 0 16px}

/* Theme-Button innerhalb des Textbereichs bündig */
.fsr-seite section.NnnPlainTxt .container-fluid .cntPlain .button-position-helper{margin-top:26px;padding-left:0;padding-right:0}

/* Zwischenüberschriften im Text */
.fsr-seite .cntPlain > h3{margin:28px 0 10px}
.fsr-seite .cntPlain > h3:first-child{margin-top:0}

/* Normale Aufzählung: etwas Luft zwischen den Punkten, Unterlisten */
.fsr-seite .cntPlain .content_list > li{margin-bottom:10px}

/* Checkliste mit Haken (Voraussetzungen, Unterlagen) */
.fsr-seite ul.fsr-check{list-style:none;padding:0}
.fsr-seite ul.fsr-check > li{position:relative;padding-left:34px;margin:0 0 12px;line-height:1.5}
.fsr-seite ul.fsr-check > li::before{content:"";position:absolute;left:0;top:2px;width:22px;height:22px;border-radius:50%;background:#191928}
.fsr-seite ul.fsr-check > li::after{content:"";position:absolute;left:8px;top:6px;width:6px;height:11px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}

/* Nummerierte Schritte (Abläufe mit Reihenfolge) */
.fsr-seite ol.fsr-steps{list-style:none;counter-reset:fsrstep;padding:0}
.fsr-seite ol.fsr-steps > li{counter-increment:fsrstep;position:relative;padding-left:46px;margin:0 0 22px;min-height:30px;line-height:1.5}
.fsr-seite ol.fsr-steps > li::before{content:counter(fsrstep);position:absolute;left:0;top:-3px;width:30px;height:30px;box-sizing:border-box;border:1.5px solid #191928;border-radius:50%;background:#fff;color:#191928;font-weight:500;font-size:15px;line-height:27px;text-align:center}
.fsr-seite ol.fsr-steps > li::after{content:"";position:absolute;left:14px;top:30px;bottom:-20px;width:1.5px;background:#d5dae0}
.fsr-seite ol.fsr-steps > li:last-child::after{display:none}

/* Abstände zwischen Absätzen und Listen (v=5) – immer am Dateiende lassen */
.fsr-seite .cntPlain ul.content_list,.fsr-seite .cntPlain ul.fsr-check,.fsr-seite .cntPlain ol.fsr-steps{margin:0 0 28px}
.fsr-seite .cntPlain p:has(+ ul),.fsr-seite .cntPlain p:has(+ ol){margin-bottom:16px}
.fsr-seite .cntPlain .opt ul.content_list{margin:0 0 16px}
.fsr-seite .cntPlain li > ul.content_list{margin:10px 0 12px}
.fsr-seite .cntPlain > p:last-child,.fsr-seite .cntPlain > ul:last-child,.fsr-seite .cntPlain > ol:last-child{margin-bottom:0}
.fsr-seite .cntPlain .opt > p:last-child,.fsr-seite .cntPlain .opt > ul:last-child{margin-bottom:0}

/* v6 (30.10.2026) – Standort-Seiten: Öffnungszeiten, Bildergalerie, Fahrzeugtabelle, Fahrlehrer */
.fsr-seite .fsr-heute{display:inline-block;margin:6px 0 0;padding:7px 16px;border:1px solid #191928;border-radius:999px;font-weight:500}
.fsr-seite .fsr-heute[hidden]{display:none}
.fsr-seite [data-fsr-zeiten] .box{margin:0 0 24px}
.fsr-seite .box.fsr-ausnahme{border-left-width:5px;background:#fff;border-top:1px solid #d5dae0;border-right:1px solid #d5dae0;border-bottom:1px solid #d5dae0}
.fsr-seite .box.fsr-ausnahme .t{font-weight:600;text-transform:uppercase;letter-spacing:.03em}
.fsr-seite [data-fsr-zeiten] .box p{margin:0 0 12px}
.fsr-seite [data-fsr-zeiten] .box p:last-child{margin-bottom:0}
.fsr-seite [data-fsr-zeiten] .box .zeile + p{margin-top:12px}
.fsr-seite .fsr-galerie{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:32px 0 0}
.fsr-seite .fsr-galerie img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
@media (max-width:767px){.fsr-seite .fsr-galerie{grid-template-columns:1fr 1fr}}
.fsr-seite .fsr-tabwrap{overflow-x:auto;margin:0 0 20px}
.fsr-seite table.fsr-tab{width:100%;border-collapse:collapse}
.fsr-seite table.fsr-tab th,.fsr-seite table.fsr-tab td{text-align:left;padding:11px 14px;border-bottom:1px solid #d5dae0;vertical-align:top}
.fsr-seite table.fsr-tab th{font-weight:500;border-bottom:1.5px solid #191928}
.fsr-seite table.fsr-tab td:first-child{white-space:nowrap;font-weight:500}
.fsr-seite .fsr-team{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:24px}
.fsr-seite .fsr-team figure{margin:0}
.fsr-seite .fsr-team img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;object-position:top;border-radius:10px}
.fsr-seite .fsr-team h3{margin:14px 0 6px}
.fsr-seite .fsr-team p{margin:0 0 4px;font-size:15px;line-height:1.45}
.fsr-seite .cards .opt .button-position-helper{margin-top:18px}
.fsr-seite .cards .opt ul.content_list{margin:12px 0 0}
.fsr-seite .cards.drei{grid-template-columns:repeat(3,1fr)}
@media (max-width:991px){.fsr-seite .cards.drei{grid-template-columns:1fr}}

/* v7 (30.10.2026) – Startseite: Stärken-Kacheln, Bild-Text-Karten, Häufige Fragen */
.fsr-seite .fsr-usp{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:28px 0 8px}
@media (max-width:991px){.fsr-seite .fsr-usp{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.fsr-seite .fsr-usp{grid-template-columns:1fr}}
.fsr-seite .fsr-usp .u{display:flex;flex-direction:column;gap:4px}
.fsr-seite .fsr-usp .bi{font-size:30px;line-height:1;margin-bottom:8px}
.fsr-seite .fsr-usp strong{font-size:20px;font-weight:500}
.fsr-seite .fsr-usp span{font-size:15px;color:#55595f}
.fsr-seite .fsr-split{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;margin:0 0 32px}
.fsr-seite .fsr-split.rechts .bild{order:2}
@media (max-width:767px){.fsr-seite .fsr-split{grid-template-columns:1fr;gap:20px}.fsr-seite .fsr-split.rechts .bild{order:0}}
.fsr-seite .fsr-split .bild img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.fsr-seite .fsr-split .txt h3{margin:0 0 12px}
.fsr-seite details.fsr-faq{border-bottom:1px solid #d5dae0;padding:4px 0}
.fsr-seite details.fsr-faq:first-of-type{border-top:1px solid #d5dae0}
.fsr-seite details.fsr-faq summary{cursor:pointer;list-style:none;padding:16px 36px 16px 0;position:relative;font-weight:500;font-size:17px}
.fsr-seite details.fsr-faq summary::-webkit-details-marker{display:none}
.fsr-seite details.fsr-faq summary::after{content:"+";position:absolute;right:6px;top:12px;font-size:24px;font-weight:300}
.fsr-seite details.fsr-faq[open] summary::after{content:"–"}
.fsr-seite details.fsr-faq p{margin:0 0 18px}
.fsr-seite .opt .fsr-heute{margin:4px 0 0}
.fsr-seite .cntPlain p.fsr-klein{font-size:14px;color:#55595f;margin:18px 0 0}
