/* R1SE Funnel-Seiten (www.r1se.club/<seite>), erzeugt vom Funnel-Builder im Cockpit (Overmind\Funnels.md).
   Farben und Schriftgrößen kommen als Variablen aus der Seite (funnel_render.js cssVars). */
/* Schrift Montserrat (OFL, selbst gehostet, schrift/OFL.txt) */
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url(schrift/montserrat.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:italic;font-weight:100 900;font-display:swap;src:url(schrift/montserrat-kursiv.woff2) format('woff2')}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body.f-seite{margin:0;background:#fff;color:var(--f-text);font-family:var(--f-schrift);font-size:var(--f-g-m);line-height:1.45;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video{max-width:100%}
a{color:var(--f-akzent)}
.f-ber{padding:var(--f-ao) 0 var(--f-au);position:relative}
.f-con{margin:0 auto;padding:0 20px;width:100%}
.f-zeile{display:grid;gap:30px;align-items:start}
.f-zeile.f-mitte{align-items:center}
.f-zeile:last-child{margin-bottom:0!important}
.f-spalte{min-width:0}
.f-spalte>.f-el:last-child{margin-bottom:0}
.f-el{margin:0 0 14px}
.f-al-m{text-align:center}.f-al-r{text-align:right}.f-al-l{text-align:left}
.f-dunkel{color:#fff}
.f-dunkel .f-text[style*="var(--f-text)"],.f-dunkel .f-text[style*="var(--f-schwarz)"]{color:#fff!important}
.f-text p{margin:0 0 .55em}.f-text p:last-child{margin-bottom:0}
.f-text h1,.f-text h2{margin:0}
h1.f-text,h2.f-text,h3.f-text{margin-top:0}
.f-st-pille{border-radius:50px;padding:14px 16px 12px;margin-left:auto;margin-right:auto;max-width:100%}
.f-st-kicker{letter-spacing:.01em}
/* Listen */
.f-liste{list-style:none;padding:0}
.f-liste li{display:grid;grid-template-columns:1.25em minmax(0,1fr);gap:.6em;align-items:start;margin:0 0 .65em;line-height:1.3}
.f-liste li:last-child{margin-bottom:0}
.f-li-sym{display:flex;align-items:center;justify-content:center;height:1.3em}
.f-li-sym .f-sym{width:1.15em;height:1.15em}
.f-al-m.f-liste{display:table;margin-left:auto;margin-right:auto;text-align:left}
/* Symbole */
.f-sym{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;flex:0 0 auto}
.f-sym .f-fl{fill:currentColor;stroke:none}
.f-sym .f-in{stroke:#fff}
.f-symbol .f-sym{width:var(--f-sg);height:var(--f-sg);stroke-width:1.8}
/* Bilder */
.f-bild{line-height:0}
.f-bild img{height:auto;display:inline-block;vertical-align:top}
.f-rund img,.f-rund .f-bild-zoom{border-radius:12px}
.f-rund-kreis img,.f-rund-kreis .f-bild-zoom{border-radius:50%}
.f-rahmen img{box-shadow:0 0 0 4px var(--f-rf)}
.f-bild-zoom{display:inline-block;overflow:hidden;line-height:0}
.f-unter{line-height:1.35;font-size:var(--f-g-s);color:var(--f-grau);font-style:italic;margin-top:8px}
.f-bild-leer,.f-video-leer,.f-termin-leer{display:inline-flex;align-items:center;justify-content:center;min-height:90px;background:#eef2f6;color:#7a8590;border:2px dashed #c5ced6;border-radius:10px;font-size:14px;line-height:1.2;padding:10px}
/* Video */
.f-video-rahmen{position:relative;aspect-ratio:16/9;background:#000 center/cover no-repeat;border-radius:4px;overflow:hidden}
.f-video-v{width:100%;height:100%;display:block;background:transparent}
.f-video-v:not([src]){opacity:0}
.f-video-play{position:absolute;left:50%;top:50%;width:92px;height:92px;margin:-46px 0 0 -46px;border:0;border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 0 rgba(0,165,225,.55);animation:f-welle 2s infinite;opacity:.92}
.f-video-play .f-sym{width:44px;height:44px;margin-left:6px}
.f-video-play:hover{opacity:1;transform:scale(1.04)}
.f-video-leer{width:100%;height:100%}
@keyframes f-welle{0%{box-shadow:0 0 0 0 rgba(0,165,225,.5)}70%{box-shadow:0 0 0 22px rgba(0,165,225,0)}100%{box-shadow:0 0 0 0 rgba(0,165,225,0)}}
/* Knöpfe */
.f-knopf-w{line-height:0}
.f-knopf{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-decoration:none;border:0;border-radius:10px;font-family:inherit;font-weight:700;line-height:1.2;cursor:pointer;max-width:100%;box-shadow:0 4px 14px rgba(0,0,0,.12);transition:filter .15s,transform .15s;text-align:center}
.f-knopf:hover{filter:brightness(1.07);transform:translateY(-1px)}
.f-knopf.f-k-rund{border-radius:50px}
.f-s1{font-size:16px;padding:10px 28px}.f-s2{font-size:19px;padding:13px 40px}.f-s3{font-size:22px;padding:15px 30px}
.f-k-voll{display:flex;width:100%}
.f-k-t{display:inline-flex;align-items:center;gap:10px}
.f-k-sym{width:1.15em;height:1.15em}
.f-k-sym .f-in{stroke:currentColor}
.f-k-sym .f-fl{fill:rgba(255,255,255,.28)}
.f-k-u{font-size:.68em;font-weight:500;font-style:italic;opacity:.92}
.f-puls{animation:f-puls 2.4s ease-in-out infinite}
@keyframes f-puls{0%,100%{transform:scale(1)}50%{transform:scale(1.035)}}
/* Karten */
.f-karte{border-radius:18px;padding:22px 20px}
.f-karte.f-rund-stark{border-radius:25px}
.f-schatten{box-shadow:0 6px 24px rgba(30,45,60,.12)}
.f-karte-rahmen{border:1px solid #dfe6ee}
/* Abstand, Linie */
.f-abstand{margin:0}
.f-linie{border:0;border-top:1px solid;opacity:.6;margin:10px 0 18px}
/* Formular */
.f-form{display:grid;gap:10px;max-width:520px;margin-left:auto;margin-right:auto}
.f-in-feld{width:100%;font:inherit;font-size:17px;padding:14px 16px;border:1px solid #c9d2db;border-radius:8px;background:#fff;color:#1d2328}
.f-in-feld:focus{outline:2px solid var(--f-akzent);outline-offset:1px;border-color:transparent}
.f-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.f-form-chk{display:flex;gap:8px;align-items:flex-start;font-size:14px;line-height:1.35;text-align:left}
.f-form-chk input{margin-top:3px;width:18px;height:18px}
.f-form-hinweis{font-size:13px;color:var(--f-grau);text-align:center;line-height:1.35;font-style:italic}
.f-form-meldung{font-size:15px;color:var(--f-rot);text-align:center;min-height:0}
.f-form-meldung:empty{display:none}
.f-form.f-laedt button{opacity:.6;pointer-events:none}
/* Termin */
.f-termin{width:100%;border-radius:8px;overflow:hidden;background:#fff}
.f-termin iframe{width:100%;height:100%;border:0}
.f-termin-lade{display:flex;align-items:center;justify-content:center;height:100%;color:var(--f-grau);font-size:15px}
.f-termin-ed{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:2px dashed #c5ced6;color:#5b6670}
.f-termin-ed .f-sym{width:42px;height:42px;color:var(--f-akzent)}
/* Countdown */
.f-countdown{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.f-cd-t{background:var(--f-cd);color:#fff;border-radius:10px;min-width:78px;padding:10px 8px 8px;text-align:center}
.f-cd-t b{display:block;font-size:30px;line-height:1.05;font-variant-numeric:tabular-nums}
.f-cd-t span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;opacity:.85}
.f-cd-ende{width:100%;text-align:center;font-weight:700}
/* Fortschritt (Opt-in-Popups) */
.f-fortschritt{background:#e9eef3;border-radius:6px;overflow:hidden;height:22px}
.f-fs-balken{height:100%;color:#fff;font-size:12px;font-weight:700;line-height:22px;text-align:center;background-image:linear-gradient(45deg,rgba(255,255,255,.18) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.18) 50%,rgba(255,255,255,.18) 75%,transparent 75%,transparent);background-size:40px 40px;animation:f-streifen 1s linear infinite}
@keyframes f-streifen{from{background-position:40px 0}to{background-position:0 0}}
.f-countdown-leer{border:2px dashed #e0b4b4;color:#a33;border-radius:10px;padding:12px;text-align:center;font-size:14px}
/* FAQ */
.f-faq details{background:#fff;border:1px solid #dde4ec;border-radius:10px;margin:0 0 10px;overflow:hidden}
.f-faq summary{list-style:none;cursor:pointer;padding:16px 50px 16px 18px;font-weight:700;position:relative;font-size:var(--f-g-m);color:var(--f-schwarz)}
.f-faq summary::-webkit-details-marker{display:none}
.f-faq-sym{position:absolute;right:16px;top:50%;width:22px;height:22px;margin-top:-11px;color:var(--f-akzent);transition:transform .2s}
.f-faq details[open] .f-faq-sym{transform:rotate(45deg)}
.f-faq-a{padding:0 18px 16px;color:var(--f-grau);font-size:var(--f-g-n);line-height:1.5}
.f-faq-a p{margin:0 0 .6em}
/* Icon-Reihe (Social, Siegel) */
.f-icons{display:flex;flex-wrap:wrap;gap:18px 34px;align-items:center;justify-content:center;line-height:0}
.f-icons.f-al-l{justify-content:flex-start}.f-icons.f-al-r{justify-content:flex-end}
.f-icons img{width:auto;max-width:160px}
.f-icons a{transition:transform .15s}.f-icons a:hover{transform:scale(1.08)}
/* Sichtbarkeit */
@media (min-width:768px){.f-nur-handy{display:none!important}}
@media (max-width:767px){
  .f-nur-pc{display:none!important}
  .f-zeile{grid-template-columns:1fr!important;gap:18px}
  .f-zeile.f-umdrehen>.f-spalte:first-child{order:2}
  .f-con{padding:0 16px}
  .f-s2{font-size:18px;padding:13px 22px}.f-s3{font-size:19px;padding:14px 18px}
  .f-karte{padding:18px 16px}
  .f-cd-t{min-width:66px}.f-cd-t b{font-size:24px}
  .f-icons{gap:14px 22px}
  .f-video-play{width:72px;height:72px;margin:-36px 0 0 -36px}
  .f-video-play .f-sym{width:34px;height:34px}
}
/* Popups */
.f-popup{position:fixed;inset:0;z-index:1000;background:rgba(15,20,25,.72);display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;padding:5vh 12px;-webkit-overflow-scrolling:touch}
.f-popup[hidden]{display:none}
.f-popup-in{position:relative;background:#fff;border-radius:14px;width:100%;max-width:640px;box-shadow:0 20px 60px rgba(0,0,0,.35);animation:f-rein .22s ease-out}
.f-popup-in.f-pb-schmal{max-width:480px}.f-popup-in.f-pb-breit{max-width:960px}
.f-popup-in .f-ber{border-radius:14px}
.f-popup-zu{position:absolute;right:8px;top:6px;z-index:2;width:44px;height:44px;border:0;background:transparent;font-size:32px;line-height:1;color:#6b7680;cursor:pointer}
@keyframes f-rein{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
body.f-popup-offen{overflow:hidden}
/* Cookie-Hinweis (nur wenn Tracking eingeschaltet) */
.f-consent{position:fixed;left:12px;right:12px;bottom:12px;z-index:1100;max-width:720px;margin:0 auto;background:#fff;color:#1d2328;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.25);padding:16px 18px;font-size:14px;line-height:1.45;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.f-consent p{margin:0;flex:1 1 300px}
.f-consent button{font:inherit;font-weight:700;border-radius:8px;padding:10px 16px;cursor:pointer;border:1px solid #c9d2db;background:#fff;color:#1d2328;min-height:44px}
.f-consent button.f-ja{background:var(--f-akzent);border-color:var(--f-akzent);color:#fff}
.f-editor .f-ber.f-aus{opacity:.35}
/* Eigene Terminbuchung (2026-11-05, Ersatz für Calendly): f.js zeichnet Kopf, Kalender, Zeiten und Fragebogen */
.f-buchung{background:#fff;border:1px solid #e3e8ee;border-radius:14px;padding:22px;color:#1d2328;text-align:left;box-shadow:0 6px 24px rgba(0,0,0,.06)}
.f-b-lade,.f-b-leer,.f-b-tipp{color:var(--f-grau);font-size:15px;text-align:center;padding:24px 8px}
.f-b-kopf{border-bottom:1px solid #edf0f3;padding-bottom:14px;margin-bottom:16px}
.f-b-titel{font-weight:800;font-size:21px;color:var(--f-schwarz);line-height:1.25}
.f-b-dauer{display:flex;align-items:center;gap:6px;color:var(--f-grau);font-weight:600;font-size:14px;margin-top:6px}.f-b-dauer .f-sym{width:17px;height:17px}
.f-b-text{white-space:pre-line;font-size:15px;line-height:1.5;margin-top:10px;color:#3a4148}
.f-b-teile{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px;align-items:start}
.f-b-monat{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.f-b-monat b{font-size:17px}
.f-b-pfeil{width:44px;height:44px;border-radius:50%;border:0;background:#f1f5f8;color:var(--f-akzent);font-size:26px;line-height:1;cursor:pointer}
.f-b-pfeil:disabled{opacity:.3;cursor:default}
.f-b-raster{display:grid;grid-template-columns:repeat(7,minmax(0,46px));justify-content:space-between;gap:6px 4px;text-align:center}
.f-b-wt{font-size:12px;font-weight:700;color:var(--f-grau);padding:4px 0;text-transform:uppercase}
.f-b-raster>span:not(.f-b-wt),.f-b-tag{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;min-height:40px;max-height:46px;font-size:15px;border-radius:50%;padding:0}
.f-b-zu{color:#b7c0c8}
.f-b-tag{border:0;font:inherit;font-weight:700;background:color-mix(in srgb,var(--f-akzent) 12%,#fff);color:var(--f-akzent);cursor:pointer;transition:background .15s}
.f-b-tag:hover{background:color-mix(in srgb,var(--f-akzent) 22%,#fff)}
.f-b-tag.an{background:var(--f-akzent);color:#fff}
.f-b-zone{font-size:12px;color:var(--f-grau);margin-top:10px}
.f-b-tagtitel{font-weight:700;margin-bottom:10px;font-size:16px}
.f-b-liste{display:flex;flex-direction:column;gap:8px;max-height:360px;overflow:auto;padding-right:2px}
.f-b-zeit{min-height:46px;border:2px solid var(--f-akzent);background:#fff;color:var(--f-akzent);border-radius:10px;font:inherit;font-weight:700;font-size:16px;cursor:pointer;transition:background .15s,color .15s}
.f-b-zeit:hover{background:var(--f-akzent);color:#fff}
.f-b-wahl{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:#f4f8fb;border-radius:10px;padding:12px 14px;margin-bottom:16px;font-size:15px}
.f-b-zurueck{border:0;background:none;color:var(--f-akzent);font:inherit;font-weight:700;text-decoration:underline;cursor:pointer;min-height:44px;padding:0 6px}
.f-b-form{display:flex;flex-direction:column;gap:14px}
.f-b-feld{display:flex;flex-direction:column;gap:6px;font-size:15px;font-weight:600}
.f-b-feld input,.f-b-feld textarea{font:inherit;font-weight:400;font-size:16px;padding:12px 14px;border:1px solid #c9d2db;border-radius:8px;background:#fff;color:#1d2328;width:100%;box-sizing:border-box}
.f-b-feld input:focus,.f-b-feld textarea:focus{outline:2px solid var(--f-akzent);outline-offset:1px;border-color:transparent}
.f-b-gruppe{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.f-b-gruppe legend{font-size:15px;font-weight:600;margin-bottom:8px;padding:0}
.f-b-opt{display:inline-flex;align-items:center;gap:8px;border:1px solid #c9d2db;border-radius:10px;padding:10px 14px;min-height:44px;cursor:pointer;font-size:15px}
.f-b-opt:has(input:checked){border-color:var(--f-akzent);background:color-mix(in srgb,var(--f-akzent) 8%,#fff)}
.f-b-haken{display:flex;gap:10px;align-items:flex-start;font-size:15px;cursor:pointer;line-height:1.4}.f-b-haken input,.f-b-opt input{width:20px;height:20px;accent-color:var(--f-akzent);flex-shrink:0;margin:1px 0 0}
.f-b-pf{color:#c0392b}
.f-b-hinweis{font-size:15px;font-weight:600;margin-bottom:-6px}.f-b-klein{font-weight:400;font-size:13px;color:var(--f-grau)}
.f-b-meldung{color:#c0392b;font-weight:600;font-size:14px;min-height:0}.f-b-meldung:empty{display:none}
.f-b-kopf+.f-b-meldung{margin-bottom:12px}
.f-b-senden{background:var(--f-akzent);color:#fff;border:0;cursor:pointer}
.f-b-form.f-laedt .f-b-senden{opacity:.6;pointer-events:none}
.f-b-ds{font-size:12px;color:var(--f-grau);text-align:center;line-height:1.4}
.f-popup .f-buchung{box-shadow:none;border:0;padding:4px}
.f-popup .f-b-text{display:none}.f-popup .f-b-kopf{padding-bottom:10px;margin-bottom:12px}
@media (max-width:760px){.f-buchung{padding:16px}.f-b-teile{grid-template-columns:1fr;gap:18px}.f-b-liste{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-height:none}.f-b-titel{font-size:19px}}
