/* ==========================================================================
   raster.css — damit auch das, was noch nicht umgebaut ist, richtig aussieht
   DriveLab GmbH, 09.09.2026.

   Die Vorlagen der Anwendung sind in Bootstrap 4 geschrieben. Das neue Design
   laedt Bootstrap nicht mehr (156 KB, und es widerspricht dem System an jeder
   zweiten Stelle). Ohne Ersatz wuerde jede noch nicht umgebaute Seite zu einer
   einzigen Spalte gestapelter Kaesten zerfallen — und das waeren, bis die
   letzte Vorlage umgebaut ist, die meisten.

   Gezaehlt am 09.09.2026: die oeffentlichen Vorlagen benutzen 107
   verschiedene Bootstrap-Klassen, 488 Mal. Das ist wenig genug, um sie hier
   nachzubilden — in den Werten des neuen Designs, nicht in denen von
   Bootstrap. Abstaende kommen aus der Stufenleiter, Farben aus den Tokens,
   Knoepfe sind die Knoepfe des Systems.

   Damit gilt: eine umgebaute Seite ist besser, aber eine nicht umgebaute ist
   nicht kaputt. Sie traegt dieselbe Schrift, dieselben Farben, dieselben
   Knoepfe — nur noch nicht den eigenen Aufbau.

   Diese Datei schrumpft. Jede umgebaute Vorlage nimmt Klassen aus dem
   Gebrauch; wenn keine mehr uebrig ist, faellt raster.css ersatzlos weg.
   ========================================================================== */

/* ---------- Raster ------------------------------------------------------- */
.container      { max-width: var(--page);      margin: 0 auto; padding: 0 var(--s6); }
.container-fluid{ max-width: var(--page-wide); margin: 0 auto; padding: 0 var(--s6); }
.form-row       { display: flex; flex-wrap: wrap; gap: var(--s4); }

/* identity.css kennt .row schon als Hilfsmittel (waagrecht, mittig). Ein
   Bootstrap-Raster will dagegen gleich hohe Spalten — daran erkennt man es. */
.row:has(> [class*="col-"]) { align-items: stretch; gap: var(--s6); }
[class*="col-"] { min-width: 0; }

.col-12, .col-xs-12, .col-md-12 { flex: 0 0 100%;              max-width: 100%; }
.col-9,  .col-md-9              { flex: 0 0 calc(75% - var(--s5));  max-width: calc(75% - var(--s5)); }
.col-7,  .col-md-7              { flex: 0 0 calc(58.333% - var(--s5)); max-width: calc(58.333% - var(--s5)); }
.col-6,  .col-md-6, .col-sm-6, .col-lg-6 { flex: 0 0 calc(50% - var(--s3)); max-width: calc(50% - var(--s3)); }
.col-5,  .col-md-5              { flex: 0 0 calc(41.666% - var(--s5)); max-width: calc(41.666% - var(--s5)); }
.col-md-4, .col-lg-4, .col-xl-4 { flex: 0 0 calc(33.333% - var(--s4)); max-width: calc(33.333% - var(--s4)); }
.col-md-3, .col-lg-3            { flex: 0 0 calc(25% - var(--s5));  max-width: calc(25% - var(--s5)); }
.col-lg-8, .col-xl-8            { flex: 0 0 calc(66.666% - var(--s3)); max-width: calc(66.666% - var(--s3)); }
.col-lg-10, .col-xl-10          { flex: 0 0 100%; max-width: min(100%, 960px); }
/* Nachgetragen am 10.09.2026: diese sechs fehlten und wurden dadurch zu
   voller Breite. Aufgefallen an der Bildergalerie des Portals — drei
   Vorschaubilder in col-4 standen als drei bildschirmbreite Fotos
   untereinander. Gezaehlt statt geraten: 29 Rasterklassen sind in den
   Vorlagen in Gebrauch, sechs davon kannte diese Datei nicht. */
.col-4                          { flex: 0 0 calc(33.333% - var(--s4)); max-width: calc(33.333% - var(--s4)); }
.col-10                         { flex: 0 0 calc(83.333% - var(--s2)); max-width: calc(83.333% - var(--s2)); }
.col-lg-9                       { flex: 0 0 calc(75% - var(--s5));     max-width: calc(75% - var(--s5)); }
.col-lg-12, .col-sm-12          { flex: 0 0 100%;                      max-width: 100%; }
.col-lg-1                       { flex: 0 0 auto;                      max-width: none; }
.col-xl-11                      { flex: 0 0 100%; max-width: min(100%, 1080px); }

.justify-content-center { justify-content: center; }
.justify-content-end    { justify-content: flex-end; }
.ml-auto { margin-left: auto; }
.w-100 { width: 100%; }
.h-100 { height: 100%; }

@media (max-width: 900px) {
    [class*="col-"] { flex: 0 0 100% !important; max-width: 100% !important; }
}

/* ---------- Anzeige ------------------------------------------------------ */
.d-flex  { display: flex; align-items: center; gap: var(--s3); flex-wrap: wrap; }
.d-block { display: block; }
.d-none  { display: none; }
@media (min-width: 576px) { .d-sm-block { display: block; } }
@media (max-width: 767px) { .d-md-none  { display: none; } }
.collapse:not(.show) { display: none; }
.list-unstyled, .list-style-icons { list-style: none; margin: 0; padding: 0; }
.list-style-icons li { display: flex; align-items: flex-start; gap: var(--s3); padding: var(--s2) 0; }
.img-fluid { max-width: 100%; height: auto; }
.sr-only {
    position: absolute; width: 1px; height: 1px; overflow: hidden;
    clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
}

/* ---------- Abstaende. Bootstraps Stufen 0-5 auf die Stufenleiter des
     Systems abgebildet: 0, 4, 8, 16, 24, 48. -------------------------------- */
.mt-0{margin-top:0}      .mb-0{margin-bottom:0}     .pt-0{padding-top:0}     .py-0{padding-top:0;padding-bottom:0}
.mb-1{margin-bottom:var(--s1)}
.mt-2{margin-top:var(--s2)} .pt-2{padding-top:var(--s2)} .py-2{padding-top:var(--s2);padding-bottom:var(--s2)} .pl-2{padding-left:var(--s2)}
.mt-3{margin-top:var(--s5)} .mb-3{margin-bottom:var(--s5)} .pt-3{padding-top:var(--s5)} .pb-3{padding-bottom:var(--s5)} .py-3{padding-top:var(--s5);padding-bottom:var(--s5)} .p-3{padding:var(--s5)}
.mt-4{margin-top:var(--s8)} .mb-4{margin-bottom:var(--s8)} .my-4{margin-top:var(--s8);margin-bottom:var(--s8)} .pt-4{padding-top:var(--s8)} .p-4{padding:var(--s8)}
.px-0{padding-left:0;padding-right:0}
@media (min-width: 768px) {
    .mt-md-0{margin-top:0} .mt-md-3{margin-top:var(--s5)} .mt-md-4{margin-top:var(--s8)} .mt-md-5{margin-top:var(--s12)}
    .my-md-5{margin-top:var(--s12);margin-bottom:var(--s12)}
}
@media (min-width: 992px) { .mt-lg-4{margin-top:var(--s8)} .mt-lg-5{margin-top:var(--s12)} .pt-lg-4{padding-top:var(--s8)} }
@media (max-width: 575px) { .py-sm-0{padding-top:0;padding-bottom:0} }

/* ---------- Text --------------------------------------------------------- */
.text-center{text-align:center} .text-left{text-align:left} .text-right{text-align:right}
.text-muted   { color: var(--ash-dim); }
.text-primary { color: var(--ice); }
.text-secondary { color: var(--ivory); }
.text-main    { color: inherit; }

/* ---------- Flaechen und Linien ------------------------------------------ */
.bg-light-grey { background: var(--night-2); border-radius: var(--r-night); padding: var(--s10) 0; }
.border        { border: 1px solid var(--night-line); border-radius: var(--r-paper); }
.border-bottom { border-bottom: 1px solid var(--night-line); }

/* ---------- Karten. Bootstraps .card ist der haeufigste Kasten der alten
     Vorlagen; hier bekommt er die Flaeche des Systems. -------------------- */
.card {
    background: var(--night-2); border-radius: var(--r-night);
    box-shadow: var(--ring); overflow: hidden;
    display: flex; flex-direction: column;
}
.card-body   { padding: var(--s6); display: flex; flex-direction: column; gap: var(--s4); flex: 1; }
.card-title  { margin: 0; font-size: var(--t-body-l); font-weight: var(--w-mid); color: var(--ivory); line-height: 1.3; }
.card-img-top{ width: 100%; height: auto; display: block; }
.card-img-text { color: var(--ash); font-size: var(--t-body-s); }

/* ---------- Hinweise ----------------------------------------------------- */
.alert { border-radius: var(--r-paper); padding: var(--s5); margin: 0 0 var(--s5); }
.alert-light  { background: var(--night-2); color: var(--ash); }
.alert-danger { background: color-mix(in srgb, #e5484d 16%, transparent); color: var(--ivory); }

/* ---------- Formulare ---------------------------------------------------- */
.form-group { margin-bottom: var(--s5); }
/* .field aus identity.css ist dasselbe Feld; .form-control bekommt es hier,
   damit die alten Vorlagen nichts umbenennen muessen. */
.form-control {
    width: 100%; font-family: var(--sans); font-size: var(--t-body);
    padding: var(--s4) var(--s5); border-radius: var(--r-field);
    border: 1px solid var(--night-line-2); background: rgba(255,255,255,.04);
    color: var(--ivory); outline: none; transition: border-color .16s ease;
}
.form-control:focus { border-color: var(--ice); }
.form-control::placeholder { color: var(--ash); }
select.form-control { appearance: none; cursor: pointer; }
textarea.form-control { min-height: 140px; }
input[type="checkbox"].form-control, input[type="radio"].form-control {
    width: 16px; height: 16px; padding: 0; accent-color: var(--cobalt); flex: none;
}
.custom-control { display: flex; align-items: center; gap: var(--s2); }
.custom-control-label { margin: 0; cursor: pointer; font-size: var(--t-body-s); color: var(--ash); }

/* ---------- Knoepfe. .btn und .btn-primary kennt identity.css schon; hier
     kommen nur die Fassungen dazu, die es dort nicht gibt. ---------------- */
.btn-secondary, .btn-default {
    background: transparent; color: var(--ivory);
    border: 1px solid var(--night-line-2);
}
.btn-secondary:hover, .btn-default:hover { border-color: var(--ivory); }
.btn-outline-primary {
    background: transparent; color: var(--ice); border: 1px solid var(--ice);
}
.btn-outline-primary:hover { background: var(--ice-veil); color: var(--ivory); }
.btn-link {
    background: transparent; border: 0; color: var(--ice);
    text-decoration: underline; text-underline-offset: var(--s1); padding: var(--s3) 0;
}
.btn-link:hover { color: var(--ice-bright); }

/* ---------- Reste, die genau eine Vorlage benutzt ------------------------- */
.no-results { color: var(--ash); padding: var(--s8) 0; }
.no-advance-payment { color: var(--ash); }
.form-container { width: 100%; }

/* ==========================================================================
   Die Zeichen der alten Vorlagen — jetzt in der Textfarbe
   DriveLab GmbH, 09.09.2026.

   In style.css sind diese Zeichen eingebettete SVG-Bilder in einem festen
   Grau (#5A6986). Ein festes Grau ist genau das, was auf zwei Flaechen nicht
   funktioniert: auf der hellen zu blass, auf der dunklen fast unsichtbar.

   Darum liegt dasselbe Bild hier nicht als Hintergrund, sondern als MASKE:
   die Form kommt aus dem Bild, die Farbe aus dem Text darueber. Damit passt
   jedes Zeichen von selbst zu seiner Umgebung — und wenn eine Vorlage
   umgebaut wird, ersetzt der Zeichensatz des Entwurfs (#gl-...) es ohne
   weitere Aenderung.
   ========================================================================== */

/* Grundmass, falls die Einzelregel keines mitbringt. */
.ov-icon, .category-car, .category-bike, .instructors-icon,
.advantages-icon, .green-value {
  width: 20px; height: 20px; display: inline-block; flex: none;
}
.ov-icon { margin-right: var(--s2); }

.category-car {
  width: 16px;
  height: 14px;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='14' viewBox='0 0 16 14'%3E%3Cg fill='none'%3E%3Cpath d='M15.6 5.5L15.6 12.5C15.6 12.9 15.3 13.3 14.9 13.3L14.1 13.3C13.7 13.3 13.3 12.9 13.3 12.5L13.3 11.7 2.3 11.7 2.3 12.5C2.3 12.9 2 13.3 1.6 13.3L0.8 13.3C0.4 13.3 0 12.9 0 12.5L0 5.5 1.9 0.9C2.2 0.4 2.8 0 3.4 0L5.5 0 10.2 0 12.3 0C12.9 0 13.5 0.4 13.7 0.9L15.6 5.5ZM13.9 5.5L12.3 1.6 3.4 1.6 1.7 5.5 13.9 5.5ZM3.5 9.4C4.2 9.4 4.7 8.9 4.7 8.2 4.7 7.6 4.2 7 3.5 7 2.9 7 2.3 7.6 2.3 8.2 2.3 8.9 2.9 9.4 3.5 9.4ZM12.1 9.4C12.8 9.4 13.3 8.9 13.3 8.2 13.3 7.6 12.8 7 12.1 7 11.5 7 11 7.6 11 8.2 11 8.9 11.5 9.4 12.1 9.4Z' fill='%23C2C9D6'/%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='14' viewBox='0 0 16 14'%3E%3Cg fill='none'%3E%3Cpath d='M15.6 5.5L15.6 12.5C15.6 12.9 15.3 13.3 14.9 13.3L14.1 13.3C13.7 13.3 13.3 12.9 13.3 12.5L13.3 11.7 2.3 11.7 2.3 12.5C2.3 12.9 2 13.3 1.6 13.3L0.8 13.3C0.4 13.3 0 12.9 0 12.5L0 5.5 1.9 0.9C2.2 0.4 2.8 0 3.4 0L5.5 0 10.2 0 12.3 0C12.9 0 13.5 0.4 13.7 0.9L15.6 5.5ZM13.9 5.5L12.3 1.6 3.4 1.6 1.7 5.5 13.9 5.5ZM3.5 9.4C4.2 9.4 4.7 8.9 4.7 8.2 4.7 7.6 4.2 7 3.5 7 2.9 7 2.3 7.6 2.3 8.2 2.3 8.9 2.9 9.4 3.5 9.4ZM12.1 9.4C12.8 9.4 13.3 8.9 13.3 8.2 13.3 7.6 12.8 7 12.1 7 11.5 7 11 7.6 11 8.2 11 8.9 11.5 9.4 12.1 9.4Z' fill='%23C2C9D6'/%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
  background: currentColor;
}
.category-car.white {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='14' viewBox='0 0 16 14'%3E%3Cg fill='none'%3E%3Cpath d='M15.6 5.5L15.6 12.5C15.6 12.9 15.3 13.3 14.9 13.3L14.1 13.3C13.7 13.3 13.3 12.9 13.3 12.5L13.3 11.7 2.3 11.7 2.3 12.5C2.3 12.9 2 13.3 1.6 13.3L0.8 13.3C0.4 13.3 0 12.9 0 12.5L0 5.5 1.9 0.9C2.2 0.4 2.8 0 3.4 0L5.5 0 10.2 0 12.3 0C12.9 0 13.5 0.4 13.7 0.9L15.6 5.5ZM13.9 5.5L12.3 1.6 3.4 1.6 1.7 5.5 13.9 5.5ZM3.5 9.4C4.2 9.4 4.7 8.9 4.7 8.2 4.7 7.6 4.2 7 3.5 7 2.9 7 2.3 7.6 2.3 8.2 2.3 8.9 2.9 9.4 3.5 9.4ZM12.1 9.4C12.8 9.4 13.3 8.9 13.3 8.2 13.3 7.6 12.8 7 12.1 7 11.5 7 11 7.6 11 8.2 11 8.9 11.5 9.4 12.1 9.4Z' fill='%23FFFFFF'/%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='14' viewBox='0 0 16 14'%3E%3Cg fill='none'%3E%3Cpath d='M15.6 5.5L15.6 12.5C15.6 12.9 15.3 13.3 14.9 13.3L14.1 13.3C13.7 13.3 13.3 12.9 13.3 12.5L13.3 11.7 2.3 11.7 2.3 12.5C2.3 12.9 2 13.3 1.6 13.3L0.8 13.3C0.4 13.3 0 12.9 0 12.5L0 5.5 1.9 0.9C2.2 0.4 2.8 0 3.4 0L5.5 0 10.2 0 12.3 0C12.9 0 13.5 0.4 13.7 0.9L15.6 5.5ZM13.9 5.5L12.3 1.6 3.4 1.6 1.7 5.5 13.9 5.5ZM3.5 9.4C4.2 9.4 4.7 8.9 4.7 8.2 4.7 7.6 4.2 7 3.5 7 2.9 7 2.3 7.6 2.3 8.2 2.3 8.9 2.9 9.4 3.5 9.4ZM12.1 9.4C12.8 9.4 13.3 8.9 13.3 8.2 13.3 7.6 12.8 7 12.1 7 11.5 7 11 7.6 11 8.2 11 8.9 11.5 9.4 12.1 9.4Z' fill='%23FFFFFF'/%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
  background: currentColor;
}
.category-bike {
  width: 16px;
  height: 14px;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='16' viewBox='0 0 18 16'%3E%3Cg fill='none'%3E%3Cg fill='%23C2C9D6'%3E%3Cpath d='M5.9 5.6L8.2 4 12.8 4 12.8 5.6 8.7 5.6 6.4 7.2 0.8 7.2 0.8 5.6 5.9 5.6ZM6.6 9.6L9 8.8 9.5 10.3 7.2 11.2C7.4 13 6.2 14.7 4.4 15.1 2.7 15.5 0.8 14.6 0.2 12.8 -0.4 11.1 0.4 9.2 2 8.4 3.6 7.6 5.6 8.1 6.6 9.6L6.6 9.6ZM3.6 13.6C4.7 13.6 5.6 12.7 5.6 11.6 5.6 10.5 4.7 9.6 3.6 9.6 2.5 9.6 1.6 10.5 1.6 11.6 1.6 12.7 2.5 13.6 3.6 13.6ZM14 15.2C12.7 15.2 11.5 14.5 10.9 13.4 10.2 12.3 10.2 10.9 10.9 9.8 11.5 8.7 12.7 8 14 8 16 8 17.6 9.6 17.6 11.6 17.6 13.6 16 15.2 14 15.2L14 15.2ZM14 13.6C15.1 13.6 16 12.7 16 11.6 16 10.5 15.1 9.6 14 9.6 12.9 9.6 12 10.5 12 11.6 12 12.7 12.9 13.6 14 13.6ZM2.4 6.4L7.2 6.4 9.3 5 9.5 4.2 11.1 4.6 9.5 10.3 8.1 9.6 8.1 9.2 6.4 10.4 5.6 8.8 2.4 8.8 2.4 6.4ZM12.1 2.4L15.2 2.4 15.2 4.8 12.9 4.8 14.5 9 13 9.6 11.2 4.8 11.2 4.8 11.2 4.7 10.1 1.6 8 1.6 8 0 11.2 0 12.1 2.4Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='16' viewBox='0 0 18 16'%3E%3Cg fill='none'%3E%3Cg fill='%23C2C9D6'%3E%3Cpath d='M5.9 5.6L8.2 4 12.8 4 12.8 5.6 8.7 5.6 6.4 7.2 0.8 7.2 0.8 5.6 5.9 5.6ZM6.6 9.6L9 8.8 9.5 10.3 7.2 11.2C7.4 13 6.2 14.7 4.4 15.1 2.7 15.5 0.8 14.6 0.2 12.8 -0.4 11.1 0.4 9.2 2 8.4 3.6 7.6 5.6 8.1 6.6 9.6L6.6 9.6ZM3.6 13.6C4.7 13.6 5.6 12.7 5.6 11.6 5.6 10.5 4.7 9.6 3.6 9.6 2.5 9.6 1.6 10.5 1.6 11.6 1.6 12.7 2.5 13.6 3.6 13.6ZM14 15.2C12.7 15.2 11.5 14.5 10.9 13.4 10.2 12.3 10.2 10.9 10.9 9.8 11.5 8.7 12.7 8 14 8 16 8 17.6 9.6 17.6 11.6 17.6 13.6 16 15.2 14 15.2L14 15.2ZM14 13.6C15.1 13.6 16 12.7 16 11.6 16 10.5 15.1 9.6 14 9.6 12.9 9.6 12 10.5 12 11.6 12 12.7 12.9 13.6 14 13.6ZM2.4 6.4L7.2 6.4 9.3 5 9.5 4.2 11.1 4.6 9.5 10.3 8.1 9.6 8.1 9.2 6.4 10.4 5.6 8.8 2.4 8.8 2.4 6.4ZM12.1 2.4L15.2 2.4 15.2 4.8 12.9 4.8 14.5 9 13 9.6 11.2 4.8 11.2 4.8 11.2 4.7 10.1 1.6 8 1.6 8 0 11.2 0 12.1 2.4Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
  background: currentColor;
}
.category-bike.white {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='16' viewBox='0 0 18 16'%3E%3Cg fill='none'%3E%3Cg fill='%23FFFFFF'%3E%3Cpath d='M5.9 5.6L8.2 4 12.8 4 12.8 5.6 8.7 5.6 6.4 7.2 0.8 7.2 0.8 5.6 5.9 5.6ZM6.6 9.6L9 8.8 9.5 10.3 7.2 11.2C7.4 13 6.2 14.7 4.4 15.1 2.7 15.5 0.8 14.6 0.2 12.8 -0.4 11.1 0.4 9.2 2 8.4 3.6 7.6 5.6 8.1 6.6 9.6L6.6 9.6ZM3.6 13.6C4.7 13.6 5.6 12.7 5.6 11.6 5.6 10.5 4.7 9.6 3.6 9.6 2.5 9.6 1.6 10.5 1.6 11.6 1.6 12.7 2.5 13.6 3.6 13.6ZM14 15.2C12.7 15.2 11.5 14.5 10.9 13.4 10.2 12.3 10.2 10.9 10.9 9.8 11.5 8.7 12.7 8 14 8 16 8 17.6 9.6 17.6 11.6 17.6 13.6 16 15.2 14 15.2L14 15.2ZM14 13.6C15.1 13.6 16 12.7 16 11.6 16 10.5 15.1 9.6 14 9.6 12.9 9.6 12 10.5 12 11.6 12 12.7 12.9 13.6 14 13.6ZM2.4 6.4L7.2 6.4 9.3 5 9.5 4.2 11.1 4.6 9.5 10.3 8.1 9.6 8.1 9.2 6.4 10.4 5.6 8.8 2.4 8.8 2.4 6.4ZM12.1 2.4L15.2 2.4 15.2 4.8 12.9 4.8 14.5 9 13 9.6 11.2 4.8 11.2 4.8 11.2 4.7 10.1 1.6 8 1.6 8 0 11.2 0 12.1 2.4Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='16' viewBox='0 0 18 16'%3E%3Cg fill='none'%3E%3Cg fill='%23FFFFFF'%3E%3Cpath d='M5.9 5.6L8.2 4 12.8 4 12.8 5.6 8.7 5.6 6.4 7.2 0.8 7.2 0.8 5.6 5.9 5.6ZM6.6 9.6L9 8.8 9.5 10.3 7.2 11.2C7.4 13 6.2 14.7 4.4 15.1 2.7 15.5 0.8 14.6 0.2 12.8 -0.4 11.1 0.4 9.2 2 8.4 3.6 7.6 5.6 8.1 6.6 9.6L6.6 9.6ZM3.6 13.6C4.7 13.6 5.6 12.7 5.6 11.6 5.6 10.5 4.7 9.6 3.6 9.6 2.5 9.6 1.6 10.5 1.6 11.6 1.6 12.7 2.5 13.6 3.6 13.6ZM14 15.2C12.7 15.2 11.5 14.5 10.9 13.4 10.2 12.3 10.2 10.9 10.9 9.8 11.5 8.7 12.7 8 14 8 16 8 17.6 9.6 17.6 11.6 17.6 13.6 16 15.2 14 15.2L14 15.2ZM14 13.6C15.1 13.6 16 12.7 16 11.6 16 10.5 15.1 9.6 14 9.6 12.9 9.6 12 10.5 12 11.6 12 12.7 12.9 13.6 14 13.6ZM2.4 6.4L7.2 6.4 9.3 5 9.5 4.2 11.1 4.6 9.5 10.3 8.1 9.6 8.1 9.2 6.4 10.4 5.6 8.8 2.4 8.8 2.4 6.4ZM12.1 2.4L15.2 2.4 15.2 4.8 12.9 4.8 14.5 9 13 9.6 11.2 4.8 11.2 4.8 11.2 4.7 10.1 1.6 8 1.6 8 0 11.2 0 12.1 2.4Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
  background: currentColor;
}
.instructors-icon {
  width: 20px;
  height: 15px;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23' height='18' viewBox='0 0 23 18'%3E%3Ctitle%3E Group 5%3C/title%3E%3Cg fill='none'%3E%3Cg fill='%23C2C9D6'%3E%3Cg transform='translate(-120 -359)translate(122.394 360)'%3E%3Cpath d='M12.5 12C15.4 12 18 13.3 19.4 15.1L5.6 15.1C7 13.3 9.6 12 12.5 12ZM16.5 4L16.5 6.4C16.5 8.6 14.7 10.4 12.5 10.4 10.3 10.4 8.5 8.6 8.5 6.4L8.5 4C8.5 1.8 10.3 0 12.5 0 14.7 0 16.5 1.8 16.5 4Z'/%3E%3Cpolygon transform='translate(10.2848 7.2)scale(-1 1)translate(-10.2848 -7.2)' points='11.7 4 12.9 10.4 7.7 10.4 8.9 5.6'/%3E%3Cpath d='M6.9 11.5C10.4 11.5 13.4 13.2 14.7 15.6L14.7 15.6 -0.9 15.6C0.4 13.2 3.4 11.5 6.9 11.5ZM6.9-0.5C8.1-0.5 9.3 0 10.1 0.8 10.9 1.6 11.4 2.8 11.4 4L11.4 4 11.4 6.4C11.4 7.6 10.9 8.8 10.1 9.6 9.3 10.4 8.1 10.9 6.9 10.9 5.6 10.9 4.5 10.4 3.7 9.6 2.9 8.8 2.4 7.6 2.4 6.4L2.4 6.4 2.4 4C2.4 2.8 2.9 1.6 3.7 0.8 4.5 0 5.6-0.5 6.9-0.5Z' stroke='%23FFF'/%3E%3Cpolygon points='16.5 4 17.7 10.4 12.5 10.4 13.7 5.6'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23' height='18' viewBox='0 0 23 18'%3E%3Ctitle%3E Group 5%3C/title%3E%3Cg fill='none'%3E%3Cg fill='%23C2C9D6'%3E%3Cg transform='translate(-120 -359)translate(122.394 360)'%3E%3Cpath d='M12.5 12C15.4 12 18 13.3 19.4 15.1L5.6 15.1C7 13.3 9.6 12 12.5 12ZM16.5 4L16.5 6.4C16.5 8.6 14.7 10.4 12.5 10.4 10.3 10.4 8.5 8.6 8.5 6.4L8.5 4C8.5 1.8 10.3 0 12.5 0 14.7 0 16.5 1.8 16.5 4Z'/%3E%3Cpolygon transform='translate(10.2848 7.2)scale(-1 1)translate(-10.2848 -7.2)' points='11.7 4 12.9 10.4 7.7 10.4 8.9 5.6'/%3E%3Cpath d='M6.9 11.5C10.4 11.5 13.4 13.2 14.7 15.6L14.7 15.6 -0.9 15.6C0.4 13.2 3.4 11.5 6.9 11.5ZM6.9-0.5C8.1-0.5 9.3 0 10.1 0.8 10.9 1.6 11.4 2.8 11.4 4L11.4 4 11.4 6.4C11.4 7.6 10.9 8.8 10.1 9.6 9.3 10.4 8.1 10.9 6.9 10.9 5.6 10.9 4.5 10.4 3.7 9.6 2.9 8.8 2.4 7.6 2.4 6.4L2.4 6.4 2.4 4C2.4 2.8 2.9 1.6 3.7 0.8 4.5 0 5.6-0.5 6.9-0.5Z' stroke='%23FFF'/%3E%3Cpolygon points='16.5 4 17.7 10.4 12.5 10.4 13.7 5.6'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
  background: currentColor;
}
.ov-icon.super-instructor {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='none'%3E%3Cg fill='%235A6986'%3E%3Cpath d='M18 6.5C18 6.3 18 6.2 18 6 18 3.6 15.9 1.7 13.5 2 12.8 0.8 11.5 0 10 0 8.5 0 7.2 0.8 6.5 2 4.1 1.7 2 3.6 2 6 2 6.2 2 6.3 2 6.5 0.8 7.2 0 8.5 0 10 0 11.5 0.8 12.8 2 13.5 2 13.7 2 13.8 2 14 2 16.4 4.1 18.3 6.5 18 7.2 19.2 8.5 20 10 20 11.5 20 12.8 19.2 13.5 18 15.9 18.3 18 16.4 18 14 18 13.8 18 13.7 18 13.5 19.2 12.8 20 11.5 20 10 20 8.5 19.2 7.2 18 6.5ZM9 14.4L5.3 10.7 6.7 9.3 9 11.6 13.3 7.3 14.7 8.7 9 14.4Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='none'%3E%3Cg fill='%235A6986'%3E%3Cpath d='M18 6.5C18 6.3 18 6.2 18 6 18 3.6 15.9 1.7 13.5 2 12.8 0.8 11.5 0 10 0 8.5 0 7.2 0.8 6.5 2 4.1 1.7 2 3.6 2 6 2 6.2 2 6.3 2 6.5 0.8 7.2 0 8.5 0 10 0 11.5 0.8 12.8 2 13.5 2 13.7 2 13.8 2 14 2 16.4 4.1 18.3 6.5 18 7.2 19.2 8.5 20 10 20 11.5 20 12.8 19.2 13.5 18 15.9 18.3 18 16.4 18 14 18 13.8 18 13.7 18 13.5 19.2 12.8 20 11.5 20 10 20 8.5 19.2 7.2 18 6.5ZM9 14.4L5.3 10.7 6.7 9.3 9 11.6 13.3 7.3 14.7 8.7 9 14.4Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
  background: currentColor;
}
.ov-icon.eco-label {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='20' viewBox='0 0 18 20'%3E%3Cg fill='none'%3E%3Cpath d='M18 0L18 2.1C18 12.2 12.6 16.8 6 16.8L4.1 16.8C4.3 13.7 5.2 11.8 7.7 9.5 8.9 8.4 8.8 7.7 8.2 8.1 4.1 10.6 2.1 14.1 2 19.6L2 20 0 20C0 18.6 0.1 17.3 0.3 16.1 0.1 14.7 0 12.9 0 10.5 0 4.7 4.5 0 10 0 12 0 14 1.1 18 0Z' fill='%235A6986'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='20' viewBox='0 0 18 20'%3E%3Cg fill='none'%3E%3Cpath d='M18 0L18 2.1C18 12.2 12.6 16.8 6 16.8L4.1 16.8C4.3 13.7 5.2 11.8 7.7 9.5 8.9 8.4 8.8 7.7 8.2 8.1 4.1 10.6 2.1 14.1 2 19.6L2 20 0 20C0 18.6 0.1 17.3 0.3 16.1 0.1 14.7 0 12.9 0 10.5 0 4.7 4.5 0 10 0 12 0 14 1.1 18 0Z' fill='%235A6986'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
  background: currentColor;
}
.ov-icon.saving-package {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='none'%3E%3Cg fill='%235A6986'%3E%3Cpath d='M0 12.7C0.1 12.9 0.3 13.1 0.5 13.3L2.4 14.4 2.4 16.6C2.4 17.1 2.9 17.6 3.4 17.6L5.6 17.6 6.7 19.5C6.9 19.7 7.1 19.9 7.3 20 7.4 20 7.5 20 7.6 20 7.8 20 7.9 19.9 8.1 19.9L10 18.8 11.9 19.9C12.1 20 12.4 20 12.7 20 12.9 19.9 13.1 19.7 13.3 19.5L14.4 17.6 16.6 17.6C17.1 17.6 17.6 17.1 17.6 16.6L17.6 14.4 19.5 13.3C20 13 20.1 12.4 19.9 11.9L18.8 10 19.9 8.1C20.1 7.6 20 7 19.5 6.7L17.6 5.6 17.6 3.4C17.6 2.9 17.1 2.4 16.6 2.4L14.4 2.4 13.3 0.5C13.1 0.3 12.9 0.1 12.7 0 12.4 0 12.1 0 11.9 0.1L10 1.3 8.1 0.1C7.6-0.1 7 0 6.7 0.5L5.6 2.4 3.4 2.4C2.9 2.4 2.4 2.9 2.4 3.4L2.4 5.6 0.5 6.7C0.3 6.9 0.1 7.1 0 7.3 0 7.6 0 7.9 0.1 8.1L1.3 10 0.1 11.9C0 12.1 0 12.4 0 12.7ZM10 11C6.5 11 6 9.1 6 8 6 6.7 7 5.4 9 5.1L9 4 11 4 11 5.1C12.7 5.5 13.4 7 13.4 8L12.4 8 11.4 8C11.4 7.6 11.2 7 10 7 8.7 7 8 7.5 8 8 8 8.4 8 9 10 9 13.5 9 14 10.9 14 12 14 13.3 13 14.6 11 14.9L11 16 9 16 9 14.9C6.7 14.6 6 12.9 6 12L8 12C8 12.1 8.2 13 10 13 11.4 13 12 12.4 12 12 12 11.7 12 11 10 11Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='none'%3E%3Cg fill='%235A6986'%3E%3Cpath d='M0 12.7C0.1 12.9 0.3 13.1 0.5 13.3L2.4 14.4 2.4 16.6C2.4 17.1 2.9 17.6 3.4 17.6L5.6 17.6 6.7 19.5C6.9 19.7 7.1 19.9 7.3 20 7.4 20 7.5 20 7.6 20 7.8 20 7.9 19.9 8.1 19.9L10 18.8 11.9 19.9C12.1 20 12.4 20 12.7 20 12.9 19.9 13.1 19.7 13.3 19.5L14.4 17.6 16.6 17.6C17.1 17.6 17.6 17.1 17.6 16.6L17.6 14.4 19.5 13.3C20 13 20.1 12.4 19.9 11.9L18.8 10 19.9 8.1C20.1 7.6 20 7 19.5 6.7L17.6 5.6 17.6 3.4C17.6 2.9 17.1 2.4 16.6 2.4L14.4 2.4 13.3 0.5C13.1 0.3 12.9 0.1 12.7 0 12.4 0 12.1 0 11.9 0.1L10 1.3 8.1 0.1C7.6-0.1 7 0 6.7 0.5L5.6 2.4 3.4 2.4C2.9 2.4 2.4 2.9 2.4 3.4L2.4 5.6 0.5 6.7C0.3 6.9 0.1 7.1 0 7.3 0 7.6 0 7.9 0.1 8.1L1.3 10 0.1 11.9C0 12.1 0 12.4 0 12.7ZM10 11C6.5 11 6 9.1 6 8 6 6.7 7 5.4 9 5.1L9 4 11 4 11 5.1C12.7 5.5 13.4 7 13.4 8L12.4 8 11.4 8C11.4 7.6 11.2 7 10 7 8.7 7 8 7.5 8 8 8 8.4 8 9 10 9 13.5 9 14 10.9 14 12 14 13.3 13 14.6 11 14.9L11 16 9 16 9 14.9C6.7 14.6 6 12.9 6 12L8 12C8 12.1 8.2 13 10 13 11.4 13 12 12.4 12 12 12 11.7 12 11 10 11Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
  background: currentColor;
}
.ov-icon.discount-lesson {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='14' viewBox='0 0 20 14'%3E%3Cg fill='none'%3E%3Cg fill='%235A6986'%3E%3Cpath d='M19 0L18 0 16 0 4 0 2 0 1 0C0.4 0 0 0.4 0 1L0 2 0 3.9 0 5 0.9 5C1.9 5 2.8 5.7 3 6.7 3.2 7.9 2.2 9 1 9L0 9 0 10.1 0 12 0 13C0 13.6 0.4 14 1 14L2 14 4 14 16 14 18 14 19 14C19.6 14 20 13.6 20 13L20 12 20 10.1 20 9C20 9 19.6 9 19 9 17.8 9 16.8 7.9 17 6.7 17.2 5.7 18.1 5 19.1 5L20 5 20 3.9 20 2 20 1C20 0.4 19.6 0 19 0ZM7 4C7.6 4 8 4.4 8 5 8 5.6 7.6 6 7 6 6.4 6 6 5.6 6 5 6 4.4 6.4 4 7 4ZM6.2 10.4L12.2 2.4 13.8 3.6 7.8 11.6 6.2 10.4ZM13 10C12.4 10 12 9.6 12 9 12 8.4 12.4 8 13 8 13.6 8 14 8.4 14 9 14 9.6 13.6 10 13 10Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='14' viewBox='0 0 20 14'%3E%3Cg fill='none'%3E%3Cg fill='%235A6986'%3E%3Cpath d='M19 0L18 0 16 0 4 0 2 0 1 0C0.4 0 0 0.4 0 1L0 2 0 3.9 0 5 0.9 5C1.9 5 2.8 5.7 3 6.7 3.2 7.9 2.2 9 1 9L0 9 0 10.1 0 12 0 13C0 13.6 0.4 14 1 14L2 14 4 14 16 14 18 14 19 14C19.6 14 20 13.6 20 13L20 12 20 10.1 20 9C20 9 19.6 9 19 9 17.8 9 16.8 7.9 17 6.7 17.2 5.7 18.1 5 19.1 5L20 5 20 3.9 20 2 20 1C20 0.4 19.6 0 19 0ZM7 4C7.6 4 8 4.4 8 5 8 5.6 7.6 6 7 6 6.4 6 6 5.6 6 5 6 4.4 6.4 4 7 4ZM6.2 10.4L12.2 2.4 13.8 3.6 7.8 11.6 6.2 10.4ZM13 10C12.4 10 12 9.6 12 9 12 8.4 12.4 8 13 8 13.6 8 14 8.4 14 9 14 9.6 13.6 10 13 10Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
  background: currentColor;
}
.ov-icon.insurance-lump {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23' height='19' viewBox='0 0 23 19'%3E%3Cg fill='none'%3E%3Cpath d='M8.3 9.5L10.5 9.5C13 9.5 15 11.5 15 14L8 14 8 15 16 15 16 14C16 12.9 15.7 11.9 15.1 11L18 11C19.9 11 21.7 12.1 22.5 13.9 20.2 17 16.3 19 12 19 9.2 19 6.9 18.4 5 17.4L5 8.1C6.2 8.2 7.4 8.7 8.3 9.5ZM4 17C4 17.6 3.6 18 3 18L1 18C0.4 18 0 17.6 0 17L0 8C0 7.4 0.4 7 1 7L3 7C3.6 7 4 7.4 4 8L4 17ZM17 3C18.7 3 20 4.3 20 6 20 7.7 18.7 9 17 9 15.3 9 14 7.7 14 6 14 4.3 15.3 3 17 3ZM10 0C11.7 0 13 1.3 13 3 13 4.7 11.7 6 10 6 8.3 6 7 4.7 7 3 7 1.3 8.3 0 10 0Z' fill='%235A6986'/%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23' height='19' viewBox='0 0 23 19'%3E%3Cg fill='none'%3E%3Cpath d='M8.3 9.5L10.5 9.5C13 9.5 15 11.5 15 14L8 14 8 15 16 15 16 14C16 12.9 15.7 11.9 15.1 11L18 11C19.9 11 21.7 12.1 22.5 13.9 20.2 17 16.3 19 12 19 9.2 19 6.9 18.4 5 17.4L5 8.1C6.2 8.2 7.4 8.7 8.3 9.5ZM4 17C4 17.6 3.6 18 3 18L1 18C0.4 18 0 17.6 0 17L0 8C0 7.4 0.4 7 1 7L3 7C3.6 7 4 7.4 4 8L4 17ZM17 3C18.7 3 20 4.3 20 6 20 7.7 18.7 9 17 9 15.3 9 14 7.7 14 6 14 4.3 15.3 3 17 3ZM10 0C11.7 0 13 1.3 13 3 13 4.7 11.7 6 10 6 8.3 6 7 4.7 7 3 7 1.3 8.3 0 10 0Z' fill='%235A6986'/%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
  background: currentColor;
}
.ov-icon.language {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='none'%3E%3Cg fill='%235A6986'%3E%3Cpath d='M10 20C4.5 20 0 15.5 0 10 0 4.5 4.5 0 10 0 15.5 0 20 4.5 20 10 20 15.5 15.5 20 10 20ZM16.4 14L16.4 13.8C16.4 12.9 16.4 12.5 15.7 12.1 15.5 12 15.3 11.9 15.1 11.8 14.7 11.6 14.4 11.5 14.1 11 14.1 11 14 10.9 14 10.9 13.7 10.4 13.4 10 12.5 10.1 10.6 10.4 10.5 10.7 10.4 11.3L10.4 11.4C10.2 12.2 10.2 12.5 10.6 12.8 11.8 14.2 12.6 15.1 12.8 15.7 12.9 15.9 13.2 16.8 13 17.6 14.2 17.1 15.3 16.3 16.2 15.4 16.3 15 16.4 14.5 16.4 14L16.4 14ZM10 1.8C7.7 1.8 5.6 2.8 4.1 4.3 4.3 4.5 4.4 4.6 4.5 4.9 4.7 5.3 4.7 5.8 4.7 6.2 4.7 6.6 4.7 6.9 4.9 7.1 5 7.4 5.6 7.5 6.2 7.6 6.4 7.7 6.6 7.7 6.7 7.8 7.3 7.9 7.6 8.4 8 8.7 8.1 8.9 8.3 9.1 8.4 9.2 8.4 9.1 8.6 9 8.7 8.7 8.7 8.5 8.7 8.3 8.6 8.2 8.1 7.5 8.1 6.2 8.3 5.8 8.5 5 9.4 5.1 10 5.1 10.2 5.1 10.5 5.1 10.6 5.1 11.2 5 11.4 4.1 11.6 3.9 11.9 3.5 12.8 2.9 13.3 2.5 12.3 2.1 11.1 1.8 10 1.8Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='none'%3E%3Cg fill='%235A6986'%3E%3Cpath d='M10 20C4.5 20 0 15.5 0 10 0 4.5 4.5 0 10 0 15.5 0 20 4.5 20 10 20 15.5 15.5 20 10 20ZM16.4 14L16.4 13.8C16.4 12.9 16.4 12.5 15.7 12.1 15.5 12 15.3 11.9 15.1 11.8 14.7 11.6 14.4 11.5 14.1 11 14.1 11 14 10.9 14 10.9 13.7 10.4 13.4 10 12.5 10.1 10.6 10.4 10.5 10.7 10.4 11.3L10.4 11.4C10.2 12.2 10.2 12.5 10.6 12.8 11.8 14.2 12.6 15.1 12.8 15.7 12.9 15.9 13.2 16.8 13 17.6 14.2 17.1 15.3 16.3 16.2 15.4 16.3 15 16.4 14.5 16.4 14L16.4 14ZM10 1.8C7.7 1.8 5.6 2.8 4.1 4.3 4.3 4.5 4.4 4.6 4.5 4.9 4.7 5.3 4.7 5.8 4.7 6.2 4.7 6.6 4.7 6.9 4.9 7.1 5 7.4 5.6 7.5 6.2 7.6 6.4 7.7 6.6 7.7 6.7 7.8 7.3 7.9 7.6 8.4 8 8.7 8.1 8.9 8.3 9.1 8.4 9.2 8.4 9.1 8.6 9 8.7 8.7 8.7 8.5 8.7 8.3 8.6 8.2 8.1 7.5 8.1 6.2 8.3 5.8 8.5 5 9.4 5.1 10 5.1 10.2 5.1 10.5 5.1 10.6 5.1 11.2 5 11.4 4.1 11.6 3.9 11.9 3.5 12.8 2.9 13.3 2.5 12.3 2.1 11.1 1.8 10 1.8Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
  background: currentColor;
}
.ov-icon.meeting-point {
  height: 22px;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='22' viewBox='0 0 18 22'%3E%3Cg fill='none'%3E%3Cpath d='M14.1 13.8C16.7 11 16.6 6.7 13.9 4 11.2 1.3 6.8 1.3 4.1 4 1.4 6.7 1.3 11 3.9 13.8 5 12.1 6.9 11 9 11 11.1 11 13 12.1 14.1 13.8L14.1 13.8ZM9 21.7L2.6 15.4C-0.9 11.8-0.9 6.2 2.6 2.6 6.2-0.9 11.8-0.9 15.4 2.6 18.9 6.2 18.9 11.8 15.4 15.4L9 21.7ZM9 10C7.3 10 6 8.7 6 7 6 5.3 7.3 4 9 4 10.7 4 12 5.3 12 7 12 8.7 10.7 10 9 10Z' fill='%235A6986'/%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='22' viewBox='0 0 18 22'%3E%3Cg fill='none'%3E%3Cpath d='M14.1 13.8C16.7 11 16.6 6.7 13.9 4 11.2 1.3 6.8 1.3 4.1 4 1.4 6.7 1.3 11 3.9 13.8 5 12.1 6.9 11 9 11 11.1 11 13 12.1 14.1 13.8L14.1 13.8ZM9 21.7L2.6 15.4C-0.9 11.8-0.9 6.2 2.6 2.6 6.2-0.9 11.8-0.9 15.4 2.6 18.9 6.2 18.9 11.8 15.4 15.4L9 21.7ZM9 10C7.3 10 6 8.7 6 7 6 5.3 7.3 4 9 4 10.7 4 12 5.3 12 7 12 8.7 10.7 10 9 10Z' fill='%235A6986'/%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
  background: currentColor;
}
.ov-icon.free-cancellation {
  width: 22px;
  height: 22px;
  -webkit-mask: url("data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8'?%3E %3Csvg width='24px' height='24px' viewBox='0 0 24 24' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3Ctitle%3EGroup 10%3C/title%3E %3Cdefs%3E %3Crect id='path-1' x='18' y='462' width='328' height='1149' rx='4'%3E%3C/rect%3E %3Cfilter x='-2.3%25' y='-0.4%25' width='104.6%25' height='101.3%25' filterUnits='objectBoundingBox' id='filter-2'%3E %3CfeOffset dx='0' dy='3' in='SourceAlpha' result='shadowOffsetOuter1'%3E%3C/feOffset%3E %3CfeGaussianBlur stdDeviation='2' in='shadowOffsetOuter1' result='shadowBlurOuter1'%3E%3C/feGaussianBlur%3E %3CfeColorMatrix values='0 0 0 0 0.844675325 0 0 0 0 0.861558442 0 0 0 0 0.895324675 0 0 0 1 0' type='matrix' in='shadowBlurOuter1'%3E%3C/feColorMatrix%3E %3C/filter%3E %3Cpolygon id='path-3' points='0 0 12.642 0 12.642 12.6399 0 12.6399'%3E%3C/polygon%3E %3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='Driving-istructor' transform='translate(-33.000000, -1191.000000)'%3E %3Crect id='Rectangle' fill='%23F7F7F7' x='0' y='396' width='360' height='1251'%3E%3C/rect%3E %3Cg id='Rectangle-Copy-29'%3E %3Cuse fill='black' fill-opacity='1' filter='url(%23filter-2)' xlink:href='%23path-1'%3E%3C/use%3E %3Cuse fill='%23FFFFFF' fill-rule='evenodd' xlink:href='%23path-1'%3E%3C/use%3E %3C/g%3E %3Cg id='Group-10' transform='translate(33.000000, 1191.000000)'%3E %3Cg id='Group-3' fill='%235A6986' fill-rule='nonzero'%3E %3Cpath d='M21.558,7.8252 C21.5856,7.6164 21.6,7.4076 21.6,7.2 C21.6,4.3452 19.0284,2.0544 16.1748,2.442 C15.3432,0.9624 13.7592,0 12,0 C10.2408,0 8.6568,0.9624 7.8252,2.442 C4.9656,2.0544 2.4,4.3452 2.4,7.2 C2.4,7.4076 2.4144,7.6164 2.442,7.8252 C0.9624,8.658 0,10.242 0,12 C0,13.758 0.9624,15.342 2.442,16.1748 C2.4144,16.3836 2.4,16.5924 2.4,16.8 C2.4,19.6548 4.9656,21.9396 7.8252,21.558 C8.6568,23.0376 10.2408,24 12,24 C13.7592,24 15.3432,23.0376 16.1748,21.558 C19.0284,21.9396 21.6,19.6548 21.6,16.8 C21.6,16.5924 21.5856,16.3836 21.558,16.1748 C23.0376,15.342 24,13.758 24,12 C24,10.242 23.0376,8.658 21.558,7.8252 Z' id='Shape'%3E%3C/path%3E %3C/g%3E %3Cg id='Group-3' transform='translate(6.000000, 6.000000)'%3E %3Cmask id='mask-4' fill='white'%3E %3Cuse xlink:href='%23path-3'%3E%3C/use%3E %3C/mask%3E %3Cg id='Clip-2'%3E%3C/g%3E %3Cpath d='M11.2265,12.6399 L8.8515,10.2639 C8.6765,10.3019 8.4985,10.3199 8.3215,10.3199 L7.3215,10.3199 L7.3215,12.3199 L5.3215,12.3199 L5.3215,10.3199 L2.8215,10.3199 L2.8215,8.3199 L8.3215,8.3199 C8.5975,8.3209 8.8215,8.0969 8.8225,7.8209 C8.8225,7.5789 8.6495,7.3709 8.4115,7.3279 L8.3215,7.3199 L4.3215,7.3199 C2.9405,7.3199 1.8215,6.2009 1.8215,4.8199 C1.8215,4.3809 1.9365,3.9499 2.1565,3.5699 L-0.0005,1.4139 L1.4155,-0.0001 L3.7905,2.3749 C3.9645,2.3379 4.1425,2.3199 4.3215,2.3199 L5.3215,2.3199 L5.3215,0.3199 L7.3215,0.3199 L7.3215,2.3199 L9.8215,2.3199 L9.8215,4.3199 L4.3215,4.3199 C4.0445,4.3199 3.8205,4.5429 3.8205,4.8189 C3.8195,5.0609 3.9935,5.2689 4.2315,5.3119 L4.3215,5.3199 L8.3215,5.3199 C9.7025,5.3199 10.8215,6.4389 10.8215,7.8199 C10.8215,8.2589 10.7055,8.6899 10.4865,9.0699 L12.6425,11.2249 L11.2265,12.6399 Z' id='Fill-1' fill='%23FFFFFF' mask='url(%23mask-4)'%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/g%3E %3C/g%3E %3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3C?xml version='1.0' encoding='UTF-8'?%3E %3Csvg width='24px' height='24px' viewBox='0 0 24 24' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E %3Ctitle%3EGroup 10%3C/title%3E %3Cdefs%3E %3Crect id='path-1' x='18' y='462' width='328' height='1149' rx='4'%3E%3C/rect%3E %3Cfilter x='-2.3%25' y='-0.4%25' width='104.6%25' height='101.3%25' filterUnits='objectBoundingBox' id='filter-2'%3E %3CfeOffset dx='0' dy='3' in='SourceAlpha' result='shadowOffsetOuter1'%3E%3C/feOffset%3E %3CfeGaussianBlur stdDeviation='2' in='shadowOffsetOuter1' result='shadowBlurOuter1'%3E%3C/feGaussianBlur%3E %3CfeColorMatrix values='0 0 0 0 0.844675325 0 0 0 0 0.861558442 0 0 0 0 0.895324675 0 0 0 1 0' type='matrix' in='shadowBlurOuter1'%3E%3C/feColorMatrix%3E %3C/filter%3E %3Cpolygon id='path-3' points='0 0 12.642 0 12.642 12.6399 0 12.6399'%3E%3C/polygon%3E %3C/defs%3E %3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E %3Cg id='Driving-istructor' transform='translate(-33.000000, -1191.000000)'%3E %3Crect id='Rectangle' fill='%23F7F7F7' x='0' y='396' width='360' height='1251'%3E%3C/rect%3E %3Cg id='Rectangle-Copy-29'%3E %3Cuse fill='black' fill-opacity='1' filter='url(%23filter-2)' xlink:href='%23path-1'%3E%3C/use%3E %3Cuse fill='%23FFFFFF' fill-rule='evenodd' xlink:href='%23path-1'%3E%3C/use%3E %3C/g%3E %3Cg id='Group-10' transform='translate(33.000000, 1191.000000)'%3E %3Cg id='Group-3' fill='%235A6986' fill-rule='nonzero'%3E %3Cpath d='M21.558,7.8252 C21.5856,7.6164 21.6,7.4076 21.6,7.2 C21.6,4.3452 19.0284,2.0544 16.1748,2.442 C15.3432,0.9624 13.7592,0 12,0 C10.2408,0 8.6568,0.9624 7.8252,2.442 C4.9656,2.0544 2.4,4.3452 2.4,7.2 C2.4,7.4076 2.4144,7.6164 2.442,7.8252 C0.9624,8.658 0,10.242 0,12 C0,13.758 0.9624,15.342 2.442,16.1748 C2.4144,16.3836 2.4,16.5924 2.4,16.8 C2.4,19.6548 4.9656,21.9396 7.8252,21.558 C8.6568,23.0376 10.2408,24 12,24 C13.7592,24 15.3432,23.0376 16.1748,21.558 C19.0284,21.9396 21.6,19.6548 21.6,16.8 C21.6,16.5924 21.5856,16.3836 21.558,16.1748 C23.0376,15.342 24,13.758 24,12 C24,10.242 23.0376,8.658 21.558,7.8252 Z' id='Shape'%3E%3C/path%3E %3C/g%3E %3Cg id='Group-3' transform='translate(6.000000, 6.000000)'%3E %3Cmask id='mask-4' fill='white'%3E %3Cuse xlink:href='%23path-3'%3E%3C/use%3E %3C/mask%3E %3Cg id='Clip-2'%3E%3C/g%3E %3Cpath d='M11.2265,12.6399 L8.8515,10.2639 C8.6765,10.3019 8.4985,10.3199 8.3215,10.3199 L7.3215,10.3199 L7.3215,12.3199 L5.3215,12.3199 L5.3215,10.3199 L2.8215,10.3199 L2.8215,8.3199 L8.3215,8.3199 C8.5975,8.3209 8.8215,8.0969 8.8225,7.8209 C8.8225,7.5789 8.6495,7.3709 8.4115,7.3279 L8.3215,7.3199 L4.3215,7.3199 C2.9405,7.3199 1.8215,6.2009 1.8215,4.8199 C1.8215,4.3809 1.9365,3.9499 2.1565,3.5699 L-0.0005,1.4139 L1.4155,-0.0001 L3.7905,2.3749 C3.9645,2.3379 4.1425,2.3199 4.3215,2.3199 L5.3215,2.3199 L5.3215,0.3199 L7.3215,0.3199 L7.3215,2.3199 L9.8215,2.3199 L9.8215,4.3199 L4.3215,4.3199 C4.0445,4.3199 3.8205,4.5429 3.8205,4.8189 C3.8195,5.0609 3.9935,5.2689 4.2315,5.3119 L4.3215,5.3199 L8.3215,5.3199 C9.7025,5.3199 10.8215,6.4389 10.8215,7.8199 C10.8215,8.2589 10.7055,8.6899 10.4865,9.0699 L12.6425,11.2249 L11.2265,12.6399 Z' id='Fill-1' fill='%23FFFFFF' mask='url(%23mask-4)'%3E%3C/path%3E %3C/g%3E %3C/g%3E %3C/g%3E %3C/g%3E %3C/svg%3E") center/contain no-repeat;
  background: currentColor;
}
.ov-icon.payment-method {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='20' viewBox='0 0 16 20'%3E%3Cg fill='none'%3E%3Cg fill='%235A6986'%3E%3Cpath d='M8 8C12 8 16 6.6 16 4 16 1.4 12 0 8 0 4 0 0 1.4 0 4 0 6.6 4 8 8 8Z'/%3E%3Cpath d='M0 8C0 10.6 4 12 8 12 12 12 16 10.6 16 8L16 6C16 8.6 12 10 8 10 4 10 0 8.6 0 6L0 8Z'/%3E%3Cpath d='M0 12C0 14.6 4 16 8 16 12 16 16 14.6 16 12L16 10C16 12.6 12 14 8 14 4 14 0 12.6 0 10L0 12Z'/%3E%3Cpath d='M0 16C0 18.6 4 20 8 20 12 20 16 18.6 16 16L16 14C16 16.6 12 18 8 18 4 18 0 16.6 0 14L0 16Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='20' viewBox='0 0 16 20'%3E%3Cg fill='none'%3E%3Cg fill='%235A6986'%3E%3Cpath d='M8 8C12 8 16 6.6 16 4 16 1.4 12 0 8 0 4 0 0 1.4 0 4 0 6.6 4 8 8 8Z'/%3E%3Cpath d='M0 8C0 10.6 4 12 8 12 12 12 16 10.6 16 8L16 6C16 8.6 12 10 8 10 4 10 0 8.6 0 6L0 8Z'/%3E%3Cpath d='M0 12C0 14.6 4 16 8 16 12 16 16 14.6 16 12L16 10C16 12.6 12 14 8 14 4 14 0 12.6 0 10L0 12Z'/%3E%3Cpath d='M0 16C0 18.6 4 20 8 20 12 20 16 18.6 16 16L16 14C16 16.6 12 18 8 18 4 18 0 16.6 0 14L0 16Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
  background: currentColor;
}
.ov-icon.insurance {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg fill='none'%3E%3Cg transform='translate(-33 -1368)translate(33 1368)'%3E%3Cpolygon points='0 0 24 0 24 24 0 24'/%3E%3Cpath d='M12 1L20.2 2.8C20.7 2.9 21 3.3 21 3.8L21 13.8C21 15.8 20 17.7 18.3 18.8L12 23 5.7 18.8C4 17.7 3 15.8 3 13.8L3 3.8C3 3.3 3.3 2.9 3.8 2.8L12 1ZM16.5 8.2L11.5 13.2 8.7 10.3 7.3 11.8 11.5 16 17.9 9.6 16.5 8.2 16.5 8.2Z' fill='%235A6986'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg fill='none'%3E%3Cg transform='translate(-33 -1368)translate(33 1368)'%3E%3Cpolygon points='0 0 24 0 24 24 0 24'/%3E%3Cpath d='M12 1L20.2 2.8C20.7 2.9 21 3.3 21 3.8L21 13.8C21 15.8 20 17.7 18.3 18.8L12 23 5.7 18.8C4 17.7 3 15.8 3 13.8L3 3.8C3 3.3 3.3 2.9 3.8 2.8L12 1ZM16.5 8.2L11.5 13.2 8.7 10.3 7.3 11.8 11.5 16 17.9 9.6 16.5 8.2 16.5 8.2Z' fill='%235A6986'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
  background: currentColor;
}
.ov-icon.no-advance-payment {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='none'%3E%3Cg fill='%235A6986'%3E%3Cpath d='M15.7 12L12 15 7 15 7 14 11.1 14C11.5 14 11.7 13.6 11.5 13.2L10.6 11.9C10.2 11.3 9.6 11 8.9 11L7 11 1 11C0.4 11 0 11.4 0 12L0 18C0 19.1 0.9 20 2 20L11.6 20C12.5 20 13.3 19.6 13.9 19L20 12 18.5 11.5C17.6 11.2 16.5 11.4 15.7 12Z'/%3E%3Ccircle cx='12.5' cy='4.5' r='4.5'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='none'%3E%3Cg fill='%235A6986'%3E%3Cpath d='M15.7 12L12 15 7 15 7 14 11.1 14C11.5 14 11.7 13.6 11.5 13.2L10.6 11.9C10.2 11.3 9.6 11 8.9 11L7 11 1 11C0.4 11 0 11.4 0 12L0 18C0 19.1 0.9 20 2 20L11.6 20C12.5 20 13.3 19.6 13.9 19L20 12 18.5 11.5C17.6 11.2 16.5 11.4 15.7 12Z'/%3E%3Ccircle cx='12.5' cy='4.5' r='4.5'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
  background: currentColor;
}
.ov-icon.ls-insurance-included {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg fill='none'%3E%3Cg transform='translate(-34 -1524)translate(34 1524)'%3E%3Cpolygon points='0 0 24 0 24 24 0 24'/%3E%3Cpath d='M12 22C6.5 22 2 17.5 2 12 2 6.5 6.5 2 12 2 17.5 2 22 6.5 22 12 22 17.5 17.5 22 12 22ZM11 16L18.1 8.9 16.7 7.5 11 13.2 8.2 10.3 6.8 11.8 11 16Z' fill='%235A6986'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg fill='none'%3E%3Cg transform='translate(-34 -1524)translate(34 1524)'%3E%3Cpolygon points='0 0 24 0 24 24 0 24'/%3E%3Cpath d='M12 22C6.5 22 2 17.5 2 12 2 6.5 6.5 2 12 2 17.5 2 22 6.5 22 12 22 17.5 17.5 22 12 22ZM11 16L18.1 8.9 16.7 7.5 11 13.2 8.2 10.3 6.8 11.8 11 16Z' fill='%235A6986'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
  background: currentColor;
}
.green-value {
  width: 24px;
  height: 24px;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg fill='none'%3E%3Cg transform='translate(-839 -1032)translate(158 124)translate(681 908)'%3E%3Cpolygon points='0 0 24 0 24 24 0 24'/%3E%3Cpath d='M21 3L21 5C21 8.9 17.9 12 14 12L13 12 13 13 18 13 18 20C18 21.1 17.1 22 16 22L8 22C6.9 22 6 21.1 6 20L6 13 11 13 11 10C11 6.1 14.1 3 18 3L21 3ZM5.5 2C8 2 10.3 3.3 11.6 5.2 10.6 6.5 10 8.2 10 10L10 11 9.5 11C5.4 11 2 7.6 2 3.5L2 2 5.5 2Z' fill='%2345BD62'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg fill='none'%3E%3Cg transform='translate(-839 -1032)translate(158 124)translate(681 908)'%3E%3Cpolygon points='0 0 24 0 24 24 0 24'/%3E%3Cpath d='M21 3L21 5C21 8.9 17.9 12 14 12L13 12 13 13 18 13 18 20C18 21.1 17.1 22 16 22L8 22C6.9 22 6 21.1 6 20L6 13 11 13 11 10C11 6.1 14.1 3 18 3L21 3ZM5.5 2C8 2 10.3 3.3 11.6 5.2 10.6 6.5 10 8.2 10 10L10 11 9.5 11C5.4 11 2 7.6 2 3.5L2 2 5.5 2Z' fill='%2345BD62'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E ") center/contain no-repeat;
  background: currentColor;
}
.advantages-icon {
  width: 16px;
  height: 15px;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='15' viewBox='0 0 16 15'%3E%3Cg fill='%2345BD62'%3E%3Cpolygon points='8.3 12.6 16 5 17.2 6.2 8.3 15 3 9.7 4.2 8.5'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='15' viewBox='0 0 16 15'%3E%3Cg fill='%2345BD62'%3E%3Cpolygon points='8.3 12.6 16 5 17.2 6.2 8.3 15 3 9.7 4.2 8.5'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
  background: currentColor;
}

/* ==========================================================================
   Blanke Elemente — Ueberschriften, Absaetze, Listen, Tabellen
   DriveLab GmbH, 09.09.2026.

   Der Entwurf setzt Groesse und Gewicht ueber Klassen (.h1-type, .h2-type,
   ...). Eine umgebaute Vorlage schreibt die hin; eine nicht umgebaute
   schreibt bloss <h2>, und ohne Regel dafuer faellt sie auf die
   Browser-Vorgabe zurueck — riesig, fett, im falschen Rhythmus.

   Darum bekommen die blanken Elemente hier dieselben Werte wie ihre
   Klassen. Sichtbarer Unterschied: keiner. Und sobald eine Vorlage
   .h2-type schreibt, gewinnt die Klasse, weil sie spaeter kommt.
   ========================================================================== */

h1 { font-size: var(--t-h1); font-weight: var(--w-mid); line-height: 1.15; letter-spacing: .015em; margin: 0 0 var(--s5); }
h2 { font-size: var(--t-h2); font-weight: var(--w-mid); line-height: 1.15; letter-spacing: .02em;  margin: 0 0 var(--s5); }
h3 { font-size: var(--t-h3); font-weight: var(--w-mid); line-height: 1.25; margin: 0 0 var(--s4); }
h4 { font-size: var(--t-sub); font-weight: var(--w-mid); line-height: 1.3;  margin: 0 0 var(--s3); }
h5, h6 { font-size: var(--t-body-l); font-weight: var(--w-mid); line-height: 1.35; margin: 0 0 var(--s3); }
/* Bootstraps ".h3" auf einem <p> heisst "sieh aus wie h3" — kommt in den
   Vorlagen mehrfach vor. */
p.h1, .h1 { font-size: var(--t-h1); font-weight: var(--w-mid); line-height: 1.15; }
p.h2, .h2 { font-size: var(--t-h2); font-weight: var(--w-mid); line-height: 1.15; }
p.h3, .h3 { font-size: var(--t-h3); font-weight: var(--w-mid); line-height: 1.25; }
p.h4, .h4 { font-size: var(--t-sub); font-weight: var(--w-mid); line-height: 1.3; }
p.h5, .h5 { font-size: var(--t-body-l); font-weight: var(--w-mid); line-height: 1.35; }

p { margin: 0 0 var(--s5); line-height: 1.65; }
p:last-child { margin-bottom: 0; }

/* Listen NUR im Fliesstext und in noch nicht umgebautem Bootstrap-Markup.
   Frueher standen diese zwei Regeln auf jedem <ul> und <li> der Seite. Das
   neue Design baut aber seine Baender, Menues, Fusszeilen und Merkmalslisten
   aus Listen und gibt ihnen selbst einen Rhythmus — die Entwuerfe laden
   raster.css gar nicht. Gemessen am 12.09.2026 an der Schiene der Startseite:
   jeder der dreizehn Punkte war acht Pixel hoeher als im Entwurf, die Schiene
   damit 62 statt 44 Pixel. Dasselbe galt fuer jede andere Liste des Designs.
   Darum stehen sie jetzt dort, wofuer sie gedacht waren. */
:is(.prosa, .art-body, .entry-content, .container, .container-fluid) :is(ul, ol) {
    margin: 0 0 var(--s5); padding-left: var(--s6);
}
:is(.prosa, .art-body, .entry-content, .container, .container-fluid) li {
    margin-bottom: var(--s2); line-height: 1.6;
}

/* Verweise im Fliesstext sind erkennbar; Knoepfe und Navigation nicht
   unterstreichen — die tragen ihre eigene Form. */
a { text-decoration: none; }
/* Unterstrichen wird im Fliesstext, nicht ueberall. Dieselbe Begruendung
   wie bei den Listen weiter oben: die Entwuerfe laden raster.css nicht, und
   das neue Design baut Menues, Inhaltsverzeichnisse und Karten aus <li> und
   <p>. Unterstrichen sahen dort auch Verweise aus, die im Entwurf keine
   Linie tragen. */
:is(.prosa, .art-body, .entry-content, .container, .container-fluid) :is(p, li, td) a,
.prosa a { text-decoration: underline; text-underline-offset: var(--s1); }

table { width: 100%; border-collapse: collapse; margin: 0 0 var(--s5); }
th, td { text-align: left; padding: var(--s3) var(--s4); border-bottom: 1px solid var(--night-line); font-size: var(--t-body-s); }
th { color: var(--ash-dim); font-weight: var(--w-mid); text-transform: uppercase; letter-spacing: .08em; font-size: var(--t-caption); }

hr { border: 0; border-top: 1px solid var(--night-line); margin: var(--s10) 0; }
blockquote { margin: 0 0 var(--s5); padding-left: var(--s5); border-left: 2px solid var(--gold); color: var(--ash); }
iframe { max-width: 100%; border: 0; border-radius: var(--r-paper); }

/* ==========================================================================
   Bausteine der alten Vorlagen, die nicht umgebaut werden mussten
   DriveLab GmbH, 09.09.2026.

   Preiskarten, Fahrlehrerkarten, Fahrzeugkarten, Bildueberschriften: ihr
   Aufbau ist in Ordnung — Bild, Ueberschrift, Werte. Sie brauchen kein
   neues Markup, nur die Werte des Systems. Eine Vorlage anzufassen, die
   nichts falsch macht, waere Arbeit ohne Ertrag und ein Risiko umsonst.
   ========================================================================== */

/* --- Bild mit Beschriftung darauf (Ortskachel alt, Fahrlehrer, Fahrzeug) --- */
.top-image { position: relative; display: block; overflow: hidden; }
.top-image img { width: 100%; height: auto; display: block; }
.darken-patch {
  position: absolute; left: 0; right: 0; bottom: 0;
  padding: var(--s5) var(--s4) var(--s3);
  background: linear-gradient(to top, rgba(11,11,15,.82), rgba(11,11,15,0));
  color: #fff;
}
.card-img-text { font-size: var(--t-body-s); line-height: 1.35; }
.card-img-text.large { font-size: var(--t-body-l); font-weight: var(--w-mid); }
.card-img-text.info { font-size: var(--t-caption); opacity: .85; }

/* --- Fahrzeugarten auf der Fahrschulkarte --- */
.categories-patch { position: absolute; left: var(--s3); top: var(--s3); display: flex; gap: var(--s2); }
.categories { display: flex; gap: var(--s2); }
.category {
  display: inline-flex; align-items: center; gap: var(--s1);
  font-size: var(--t-caption); color: var(--ash);
}
.category .white { color: #fff; }

/* --- Preiskarten auf dem Profil --- */
.card.pricing { padding: var(--s6); gap: var(--s4); }
.card.pricing .h5 { color: var(--ivory); margin: 0; }
.price-group { margin-top: var(--s3); }
.price-tag { display: grid; gap: var(--s2); }
.lesson {
  display: flex; align-items: baseline; justify-content: space-between; gap: var(--s4);
  padding: var(--s2) 0; border-bottom: 1px solid var(--night-line);
}
.lesson:last-child { border-bottom: 0; }
.lesson .label { color: var(--ash); font-size: var(--t-body-s); }
.lesson .duration { color: var(--ash-dim); font-size: var(--t-caption); margin-left: var(--s1); }
.lesson .price { font-family: var(--mono); color: var(--ivory); font-weight: var(--w-mid); white-space: nowrap; }

/* --- Die klebenden Panele des Profils --- */
.floating-pannel-desktop { position: sticky; top: calc(var(--nav-h) + var(--s6)); align-self: start; }
.floating-pannel-mobile { display: none; }
@media (max-width: 900px) {
  .floating-pannel-desktop { display: none; }
  .floating-pannel-mobile {
    display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 50;
    background: var(--night-1); border-top: 1px solid var(--night-line); padding: var(--s3) 0;
  }
  .floating-pannel-mobile .btn { width: 100%; }
}
.advantages { list-style: none; margin: var(--s5) 0; padding: 0; display: grid; gap: var(--s2); }
.advantages li { display: flex; align-items: center; gap: var(--s2); font-size: var(--t-body-s); color: var(--ash); margin: 0; }
.green-sticker { display: flex; align-items: center; gap: var(--s2); font-size: var(--t-body-s); color: var(--ash); margin-top: var(--s4); }
.green-value { color: var(--gold); }

/* ==========================================================================
   NACHGEZOGEN AM 10.09.2026 — beim Durchlesen des Deploys gefunden

   Diese Datei bildet Bootstrap nach, damit eine halb umgebaute Website nicht
   kaputt aussieht. Beim Abgleich "welche Klasse benutzt eine Vorlage, welche
   definiert eine geladene Datei" fehlten die folgenden. Gezaehlt wurden dabei
   nur Vorlagen, die mit dem Schalter wirklich rendern - die umgebauten und die
   alten, auf die zurueckgefallen wird.
   ========================================================================== */

/* --- Anzeige je Breite ---------------------------------------------------
   Der teuerste Einzelfall des ganzen Umbaus, und der unauffaelligste:
   .d-none stand hier, .d-lg-block nicht. Bootstrap benutzt beide zusammen -
   "auf dem Handy verbergen, ab Grossbildschirm zeigen". Fehlt die zweite
   Haelfte, greift nur noch .d-none und das Element ist auf JEDER Breite weg.

   Betroffen war die Profilvorschau im Portal
   (partials/drivingschool/schooldetails.phtml: <iframe class="d-none
   d-lg-block">) - ein 80vh hohes Fenster, das schlicht nicht mehr erschienen
   waere, ohne Fehlermeldung und ohne Luecke, in der man es gesucht haette.

   Reihenfolge zaehlt: die Regeln muessen NACH .d-none stehen, sonst gewinnt
   display:none. Bootstraps Stufen: lg ab 992px, xl ab 1200px. */
@media (min-width: 992px) {
  .d-lg-block  { display: block !important; }
  .d-lg-flex   { display: flex !important; }
  .d-lg-inline { display: inline !important; }
  .d-lg-none   { display: none !important; }
}
@media (min-width: 1200px) {
  .d-xl-block  { display: block !important; }
  .d-xl-none   { display: none !important; }
}
@media (min-width: 768px) {
  .d-md-block  { display: block !important; }
}

/* --- Abstaende ------------------------------------------------------------
   Bootstraps Stufen sind 0/.25/.5/1/1.5/3rem. Hier in den Werten des
   Systems, damit ein nachgezogener Abstand zu den umgebauten Seiten passt:
   1 = --s1 (4px), 2 = --s2 (8px), 3 = --s4 (16px), 4 = --s6 (24px),
   5 = --s12 (48px). Nur die tatsaechlich benutzten Klassen. */
.p-0  { padding: 0 !important; }
.pt-1 { padding-top: var(--s1) !important; }
.pb-0 { padding-bottom: 0 !important; }
.pb-2 { padding-bottom: var(--s2) !important; }
.pl-3 { padding-left: var(--s4) !important; }
.pr-1 { padding-right: var(--s1) !important; }
.pr-3 { padding-right: var(--s4) !important; }
.pt-5 { padding-top: var(--s12) !important; }
.px-2 { padding-left: var(--s2) !important; padding-right: var(--s2) !important; }
@media (min-width: 768px) { .pb-md-4 { padding-bottom: var(--s6) !important; } }
.mt-5 { margin-top: var(--s12) !important; }
.ml-0 { margin-left: 0 !important; }
.mr-0 { margin-right: 0 !important; }
.ml-4 { margin-left: var(--s6) !important; }
.mr-3 { margin-right: var(--s4) !important; }
.mx-auto { margin-left: auto !important; margin-right: auto !important; }

/* --- Kleinigkeiten, die Vorlagen voraussetzen ---------------------------- */
.w-50 { width: 50% !important; }
.float-left { float: left; }
.bg-transparent { background: transparent !important; }
.border-bottom-0 { border-bottom: 0 !important; }
.align-items-stretch { align-items: stretch; }
/* .text steht in AdminLTE-Vorlagen als blosser Traeger ohne eigenes Aussehen -
   nachgebildet als "nichts", damit die Liste vollstaendig ist und niemand
   danach sucht. .text-red ist Bootstrap 3 und heisst heute .text-danger. */
.text-red { color: var(--neg); }
