.fc-vermieter{
  --navy:#002A57; --navy-800:#002246; --navy-700:#002f53;
  --blue:#0546ad; --blue-light:#4985d4; --orange:#ff7f00;
  --ink:#1c2733; --muted:#5b6b7c; --line:#dde5ee;
  --bg:#ffffff; --bg-soft:#f4f7fb; --bg-navy:#002A57;
  --radius:14px; --maxw:1080px;
}.fc-vermieter *{box-sizing:border-box}.fc-vermieter{margin:0;font-family:'Fira Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  color:var(--ink);background:var(--bg);line-height:1.62;font-size:17px;-webkit-font-smoothing:antialiased}.fc-vermieter img{max-width:100%}.fc-vermieter .wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px}

/* --- Prototyp-Leiste (gehört NICHT zur Seite) --- */

/* --- Bausteine --- */.fc-vermieter h1,.fc-vermieter h2,.fc-vermieter h3,.fc-vermieter h4{color:var(--navy);line-height:1.22;margin:0 0 .5em;font-weight:600}.fc-vermieter h1{font-size:clamp(30px,4.4vw,46px);font-weight:700;letter-spacing:-.02em}.fc-vermieter h2{font-size:clamp(23px,2.8vw,31px);letter-spacing:-.01em}.fc-vermieter h3{font-size:20px}.fc-vermieter h4{font-size:17px;margin-bottom:.35em}.fc-vermieter p{margin:0 0 1em}.fc-vermieter a{color:var(--blue)}.fc-vermieter .eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:12.5px;font-weight:600;
  color:var(--blue-light);margin:0 0 10px}.fc-vermieter .lead{font-size:19px;color:var(--muted);max-width:62ch}.fc-vermieter section{padding:64px 0}.fc-vermieter section.tight{padding:44px 0}.fc-vermieter .soft{background:var(--bg-soft)}.fc-vermieter .btn{display:inline-flex;align-items:center;gap:9px;font-weight:600;font-size:16px;
  padding:14px 26px;border-radius:999px;text-decoration:none;border:2px solid transparent;transition:.15s}.fc-vermieter .btn-primary{background:var(--orange);color:#fff;border-color:var(--orange)}.fc-vermieter .btn-primary:hover{background:#e97400;border-color:#e97400}.fc-vermieter .btn-ghost{background:transparent;color:var(--navy);border-color:var(--line)}.fc-vermieter .btn-ghost:hover{border-color:var(--blue-light);color:var(--blue)}.fc-vermieter .btn-on-navy{background:var(--orange);color:#fff;border-color:var(--orange)}.fc-vermieter .btn-outline-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.45)}.fc-vermieter .btn-outline-light:hover{border-color:#fff}.fc-vermieter .btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.fc-vermieter .hint{font-size:14.5px;color:var(--muted);margin-top:14px}

/* Hero */.fc-vermieter .hero{background:linear-gradient(160deg,var(--navy) 0%,var(--navy-700) 55%,var(--blue) 140%);
  color:#fff;padding:74px 0 66px}.fc-vermieter .hero h1{color:#fff;max-width:24ch;text-wrap:balance;hyphens:manual}.fc-vermieter .hero .lead{color:#c8d6e6}.fc-vermieter .hero .eyebrow{color:var(--orange)}.fc-vermieter .trust{display:flex;gap:26px;flex-wrap:wrap;margin-top:34px;padding-top:22px;
  border-top:1px solid rgba(255,255,255,.16);font-size:15px;color:#c8d6e6}.fc-vermieter .trust span{display:flex;align-items:center;gap:8px}.fc-vermieter .trust b{color:#fff;font-weight:600}.fc-vermieter .dot{width:7px;height:7px;border-radius:50%;background:var(--orange);flex:none}

/* Schritte */.fc-vermieter .steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:20px;margin-top:34px;counter-reset:s}.fc-vermieter .step{position:relative;padding:26px 22px 22px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}.fc-vermieter .step::before{counter-increment:s;content:counter(s);position:absolute;top:-15px;left:22px;
  width:32px;height:32px;border-radius:50%;background:var(--orange);color:#fff;
  display:grid;place-items:center;font-weight:700;font-size:15px}.fc-vermieter .step h4{margin-top:6px}.fc-vermieter .step p{margin:0;font-size:15.5px;color:var(--muted)}

/* Karten */.fc-vermieter .cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:34px}.fc-vermieter .card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px}.fc-vermieter .card p{margin:0;font-size:15.5px;color:var(--muted)}.fc-vermieter .card .ic{width:38px;height:38px;border-radius:10px;background:#eaf1fa;color:var(--blue);
  display:grid;place-items:center;margin-bottom:14px;font-size:19px}

/* CTA-Band */.fc-vermieter .band{background:var(--bg-navy);color:#fff;border-radius:var(--radius);padding:40px;
  display:flex;gap:30px;align-items:center;justify-content:space-between;flex-wrap:wrap}/* On the light-blue sections the small heading is orange, as on the hero. */.fc-vermieter .soft .eyebrow{color:var(--orange)}.fc-vermieter .band h2{color:#fff;margin:0 0 6px}.fc-vermieter .band p{color:#c8d6e6;margin:0;max-width:52ch}

/* FAQ */.fc-vermieter .faqgroup{margin-top:34px}.fc-vermieter .faqgroup > h3{display:flex;align-items:center;gap:10px;font-size:17px;text-transform:uppercase;
  letter-spacing:.09em;color:var(--blue-light);font-weight:600;margin:34px 0 12px}.fc-vermieter details{border:1px solid var(--line);border-radius:12px;margin-bottom:10px;background:#fff}.fc-vermieter details[open]{border-color:var(--blue-light);box-shadow:0 2px 14px rgba(0,42,87,.07)}.fc-vermieter summary{cursor:pointer;list-style:none;padding:17px 52px 17px 22px;font-weight:600;
  color:var(--navy);position:relative;font-size:16.5px}.fc-vermieter summary::-webkit-details-marker{display:none}.fc-vermieter summary::after{content:"";position:absolute;right:22px;top:50%;width:9px;height:9px;
  border-right:2px solid var(--blue-light);border-bottom:2px solid var(--blue-light);
  transform:translateY(-70%) rotate(45deg);transition:transform .18s}.fc-vermieter details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}.fc-vermieter .answer{padding:0 22px 20px;color:var(--muted);font-size:16px}.fc-vermieter .answer p:last-child{margin-bottom:0}.fc-vermieter .answer strong{color:var(--ink)}

/* Tabelle Einnahmen */.fc-vermieter .tabs{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0 22px}.fc-vermieter .tab{font:inherit;font-size:15px;font-weight:500;padding:9px 18px;border-radius:999px;
  border:1px solid var(--line);background:#fff;color:var(--navy);cursor:pointer}.fc-vermieter .tab[aria-selected="true"]{background:var(--navy);border-color:var(--navy);color:#fff;font-weight:600}.fc-vermieter .earn{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.fc-vermieter .earn-head{padding:24px 26px;background:var(--bg-soft);border-bottom:1px solid var(--line);
  display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.fc-vermieter .earn-head .big{font-size:32px;font-weight:700;color:var(--navy);line-height:1}.fc-vermieter .earn-head .sub{color:var(--muted);font-size:15px}.fc-vermieter .tblwrap{overflow-x:auto}.fc-vermieter table{border-collapse:collapse;width:100%;min-width:520px;font-size:15.5px}.fc-vermieter th,.fc-vermieter td{padding:13px 26px;text-align:right;border-bottom:1px solid var(--line);white-space:nowrap}.fc-vermieter th:first-child,.fc-vermieter td:first-child{text-align:left;font-weight:500;color:var(--navy)}.fc-vermieter thead th{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}.fc-vermieter tbody tr:last-child td{border-bottom:none;font-weight:600;color:var(--navy);background:#fafcfe}

/* Vorteile-Liste */.fc-vermieter .perks{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px 28px;margin-top:28px;
  list-style:none;padding:0}.fc-vermieter .perks li{display:flex;gap:11px;align-items:flex-start;font-size:16px;padding:7px 0;
  border-bottom:1px solid var(--line)}.fc-vermieter .perks li::before{content:"";flex:none;width:8px;height:8px;margin-top:8px;border-radius:2px;background:var(--orange)}

/* Hinweis-Box */.fc-vermieter .note{border-left:4px solid var(--orange);background:var(--bg-soft);
  border-radius:0 12px 12px 0;padding:22px 26px;margin-top:30px}.fc-vermieter .note h4{margin-bottom:.4em}.fc-vermieter .note p{margin:0;color:var(--muted);font-size:16px}


/* Logo-Kacheln: Vermieter- und Anbieter-Logos tragen eigenen weißen Hintergrund
   und brauchen deshalb eine sichtbare Kante, sonst verschwimmen sie mit der Fläche. */.fc-vermieter .logos{display:grid;grid-template-columns:repeat(auto-fit,minmax(158px,1fr));gap:14px;margin-top:30px}.fc-vermieter .logos figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:12px;
  height:86px;display:grid;place-items:center;padding:16px}.fc-vermieter .logos img{max-height:38px;max-width:100%;width:auto;height:auto;display:block}.fc-vermieter .logos--wall{grid-template-columns:repeat(7,1fr);gap:10px}
/* The wall is a fixed 7x7 on desktop. Narrower screens show fewer columns and
   cut the list after a full row, so it always ends on "und noch viele mehr". */
@media(max-width:900px){.fc-vermieter .logos--wall{grid-template-columns:repeat(4,1fr)}
  .fc-vermieter .logos--wall figure:nth-child(n+24):not(.more){display:none}}
@media(max-width:600px){.fc-vermieter .logos--wall{grid-template-columns:repeat(3,1fr);gap:8px}
  .fc-vermieter .logos--wall figure{height:78px;padding:10px}
  .fc-vermieter .logos--wall figure:nth-child(n+15):not(.more){display:none}
  .fc-vermieter .logos--wall figure.more span{font-size:12.5px}}.fc-vermieter .logos--wall figure{height:92px;padding:12px}
/* Sechs Größenstufen statt einer festen Höhe: die Stufe ergibt sich aus dem
   Seitenverhältnis, damit jedes Logo dieselbe optische Fläche einnimmt. Ein
   quadratisches Signet bekommt so 50 px, ein langer Schriftzug 24 px; s0 ist
   die Sonderstufe für ein rundes Fotosignet, das erst ab 66 px lesbar wird. */.fc-vermieter .logos--wall img{max-width:100%;width:auto;height:auto}.fc-vermieter .logos--wall img.s0{max-height:66px}.fc-vermieter .logos--wall img.s1{max-height:54px}.fc-vermieter .logos--wall img.s2{max-height:48px}.fc-vermieter .logos--wall img.s3{max-height:42px}.fc-vermieter .logos--wall img.s4{max-height:36px}.fc-vermieter .logos--wall img.s5{max-height:30px}.fc-vermieter .logos--wall img.s6{max-height:24px}
/* Zwei leere Felder halten den Platz für die Logos, die noch kommen; das
   dunkle Feld schließt die Reihe ab, damit die Wand nicht ausfranst. */.fc-vermieter .logos--wall figure.ph{border-style:dashed;border-color:#c6d5e4;background:#fbfdff}.fc-vermieter .logos--wall figure.ph span{color:#b3c4d5;font-size:22px;font-weight:300;line-height:1}.fc-vermieter .logos--wall figure.more{background:var(--navy);border-color:var(--navy)}.fc-vermieter .logos--wall figure.more span{color:#fff;font-size:14px;font-weight:600;line-height:1.35;
  text-align:center;letter-spacing:.01em}.fc-vermieter .logos--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.fc-vermieter .logos--compact figure{height:74px}/* Beside the text the logo grid spans the text column top to bottom. */.fc-vermieter .connect{align-items:stretch}.fc-vermieter .connect .logos--compact{margin-top:0;grid-auto-rows:1fr}.fc-vermieter .connect .logos--compact figure{height:auto;min-height:74px}.fc-vermieter .logos--compact img{max-height:32px}/* Near-square logos read too small at the shared height. */.fc-vermieter .logos--compact img.tall{max-height:44px}.fc-vermieter .proofnote{margin-top:18px;font-size:15px;color:var(--muted)}.fc-vermieter .connect{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:40px;align-items:start;margin-top:30px}.fc-vermieter .connect > div > p:last-child{margin-bottom:0}.fc-vermieter .pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:26px}/* Logo tile on top, same size as one tile of the compact grid above. */.fc-vermieter .pair{container-type:inline-size}.fc-vermieter .pair .card{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}.fc-vermieter .pair .card figure{margin:0;flex:none;width:calc(((100cqw - 40px) * 1.15 / 2.15 - 14px) / 2);max-width:100%;height:78px;display:grid;place-items:center;
  background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px}.fc-vermieter .pair .card figure img{max-height:32px;max-width:100%;width:auto;height:auto;display:block}@media(max-width:760px){.fc-vermieter .connect{grid-template-columns:1fr;gap:26px}.fc-vermieter .pair .card figure{width:calc((100cqw - 14px) / 2)}}


/* Provisions-Auszeichnung: eigener Farbton, damit sie nicht mit dem orangen
   Handlungsknopf konkurriert. Grün liest sich als Vorteil, nicht als Warnung. */.fc-vermieter .fee-tag{display:inline-flex;align-items:center;gap:6px;vertical-align:middle;
  margin-left:10px;padding:3px 10px 3px 8px;border-radius:999px;
  background:#fff3e3;color:#9a4a00;border:1px solid #ffd5a6;
  font-family:'Fira Sans',sans-serif;font-size:12.5px;font-weight:600;letter-spacing:.01em;
  white-space:nowrap}.fc-vermieter .fee-tag svg{flex:none}.fc-vermieter .feenote{display:flex;gap:18px;align-items:flex-start;margin-top:22px;padding:22px 24px;
  background:#fff8ef;border:1px solid #ffdcb5;border-radius:14px}
/* Das Kachel-Orange ist eine Spur dunkler als der Button-Ton, damit das weiße
   Zeichen darauf noch trägt. */.fc-vermieter .feenote .ic{flex:none;width:42px;height:42px;border-radius:11px;background:#e06d00;color:#fff;
  display:grid;place-items:center}.fc-vermieter .feenote h4{margin:0 0 .3em;color:#8a4200}.fc-vermieter .feenote p{margin:0;color:#5c4632;font-size:16px}.fc-vermieter .feenote p + p{margin-top:.6em}@media(max-width:560px){.fc-vermieter .fee-tag{margin-left:0;margin-top:8px}.fc-vermieter summary{display:flex;flex-wrap:wrap;align-items:center}
}

/* Kontakt */.fc-vermieter .contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:22px;margin-top:30px}.fc-vermieter .contact div{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px}.fc-vermieter .contact h4{margin:0 0 4px;font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:var(--blue-light)}.fc-vermieter .contact p{margin:0;font-size:17px;font-weight:500;color:var(--navy)}.fc-vermieter .crosslinks{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:34px}.fc-vermieter .crosslink{display:block;text-decoration:none;background:#fff;border:1px solid var(--line);
  border-radius:var(--radius);padding:24px;transition:.15s}.fc-vermieter .crosslink:hover{border-color:var(--blue-light);box-shadow:0 3px 16px rgba(0,42,87,.08)}.fc-vermieter .crosslink h4{margin-bottom:.3em}.fc-vermieter .crosslink p{margin:0;color:var(--muted);font-size:15.5px}.fc-vermieter .crosslink .go{color:var(--blue);font-weight:600;font-size:15px;margin-top:10px;display:inline-block}.fc-vermieter .hidden{display:none}@media(max-width:640px){.fc-vermieter section{padding:46px 0}.fc-vermieter .band{padding:30px 24px}.fc-vermieter th,.fc-vermieter td{padding:11px 16px}
}

/* The frame's own h1 letter-spacing (site-custom.css) is too wide for the
   display sizes used here. */
.fc-vermieter h1{letter-spacing:-.02em}

/* Google reviews: a scroll-snap row does the swiping natively, the buttons and
   dots are added by the page script. Cards keep the .card look. */
.fc-vermieter .reviews-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.fc-vermieter .reviews-head h2{margin-bottom:0}
.fc-vermieter .reviews-badge{display:inline-flex;align-items:center;gap:9px;margin:0 0 6px;padding:10px 16px;
  background:#fff;border:1px solid var(--line);border-radius:999px;font-size:15px;color:var(--muted);white-space:nowrap;
  text-decoration:none;transition:.15s}
.fc-vermieter .reviews-badge:hover{border-color:var(--blue-light);box-shadow:0 3px 16px rgba(0,42,87,.08);color:var(--blue)}
.fc-vermieter .reviews-badge:focus-visible{outline:2px solid var(--blue-light);outline-offset:2px}
.fc-vermieter .reviews-badge .ext{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:.7}
/* Partial stars: a grey row with an orange copy on top, clipped to the rating. */
.fc-vermieter .stars-bar{position:relative;display:inline-flex}
.fc-vermieter .stars-bar .stars-empty svg{fill:#d5dee8}
.fc-vermieter .stars-bar .stars-fill{position:absolute;inset:0 auto 0 0;overflow:hidden;white-space:nowrap;flex-wrap:nowrap}
.fc-vermieter .stars-bar .stars-fill svg{flex:none}
.fc-vermieter .reviews-badge .g{width:20px;height:20px;flex:none}
.fc-vermieter .reviews-badge b{color:var(--navy);font-size:17px}
.fc-vermieter .stars{display:inline-flex;gap:2px}
.fc-vermieter .stars svg{width:18px;height:18px;fill:var(--orange)}
.fc-vermieter .reviews-badge .stars svg{width:15px;height:15px}
.fc-vermieter .reviews{position:relative;margin-top:30px;--gap:20px;--cols:3}
.fc-vermieter .reviews-track{list-style:none;margin:0;padding:4px 0 10px;display:flex;gap:var(--gap);
  overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.fc-vermieter .reviews-track::-webkit-scrollbar{display:none}
.fc-vermieter .review{flex:0 0 calc((100% - (var(--cols) - 1) * var(--gap)) / var(--cols));scroll-snap-align:start;
  display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px 24px 22px}
.fc-vermieter .review blockquote{margin:14px 0 18px;padding:0;border:0;flex:1}
.fc-vermieter .review blockquote p{margin:0;font-size:15.5px;color:var(--ink);line-height:1.6}
.fc-vermieter .review footer{display:flex;align-items:center;gap:12px;padding-top:16px;border-top:1px solid var(--line)}
.fc-vermieter .review .avatar{flex:none;width:40px;height:40px;border-radius:50%;background:var(--navy);color:#fff;
  display:grid;place-items:center;font-weight:600;font-size:14px;letter-spacing:.02em}
.fc-vermieter .review:nth-child(3n+2) .avatar{background:var(--orange)}
.fc-vermieter .review:nth-child(3n) .avatar{background:var(--blue)}
.fc-vermieter .review .who{display:flex;flex-direction:column;line-height:1.3}
.fc-vermieter .review .who b{color:var(--navy);font-weight:600;font-size:15.5px}
.fc-vermieter .review .who small{color:var(--muted);font-size:13px}
.fc-vermieter .reviews-btn{position:absolute;top:50%;transform:translateY(-60%);z-index:1;width:44px;height:44px;border-radius:50%;
  border:1px solid var(--line);background:#fff;color:var(--navy);cursor:pointer;display:grid;place-items:center;padding:0;
  box-shadow:0 3px 14px rgba(0,42,87,.12);transition:.15s}
.fc-vermieter .reviews-btn:hover{border-color:var(--blue-light);color:var(--blue)}
.fc-vermieter .reviews-btn:focus-visible{outline:2px solid var(--blue-light);outline-offset:2px}
.fc-vermieter .reviews-btn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.fc-vermieter .reviews-btn.prev{left:-22px}
.fc-vermieter .reviews-btn.next{right:-22px}
.fc-vermieter .reviews-dots{display:flex;justify-content:center;gap:6px;margin-top:8px;min-height:10px}
.fc-vermieter .reviews-dots button{width:8px;height:8px;border-radius:50%;border:0;padding:0;background:#c6d5e4;cursor:pointer;transition:.15s}
.fc-vermieter .reviews-dots button.on{background:var(--orange);width:22px;border-radius:4px}
@media(max-width:900px){.fc-vermieter .reviews{--cols:2}}
@media(max-width:640px){.fc-vermieter .reviews{--cols:1}
  .fc-vermieter .reviews-btn{width:38px;height:38px}.fc-vermieter .reviews-btn.prev{left:-8px}.fc-vermieter .reviews-btn.next{right:-8px}
  .fc-vermieter .reviews-head{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.fc-vermieter .reviews-track{scroll-behavior:auto}}
.fc-vermieter .review blockquote p{margin:0;font-size:15.5px;color:var(--ink);line-height:1.6}
.fc-vermieter .review footer{display:flex;align-items:center;gap:12px;padding-top:16px;border-top:1px solid var(--line)}
.fc-vermieter .review .avatar{flex:none;width:40px;height:40px;border-radius:50%;background:var(--navy);color:#fff;
  display:grid;place-items:center;font-weight:600;font-size:14px;letter-spacing:.02em}
.fc-vermieter .review:nth-child(3n+2) .avatar{background:var(--orange)}
.fc-vermieter .review:nth-child(3n) .avatar{background:var(--blue)}
.fc-vermieter .review .who{display:flex;flex-direction:column;line-height:1.3}
.fc-vermieter .review .who b{color:var(--navy);font-weight:600;font-size:15.5px}
.fc-vermieter .review .who small{color:var(--muted);font-size:13px}
.fc-vermieter .reviews-btn{position:absolute;top:50%;transform:translateY(-60%);z-index:1;width:44px;height:44px;border-radius:50%;
  border:1px solid var(--line);background:#fff;color:var(--navy);cursor:pointer;display:grid;place-items:center;padding:0;
  box-shadow:0 3px 14px rgba(0,42,87,.12);transition:.15s}
.fc-vermieter .reviews-btn:hover{border-color:var(--blue-light);color:var(--blue)}
.fc-vermieter .reviews-btn:focus-visible{outline:2px solid var(--blue-light);outline-offset:2px}
.fc-vermieter .reviews-btn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.fc-vermieter .reviews-btn.prev{left:-22px}
.fc-vermieter .reviews-btn.next{right:-22px}
.fc-vermieter .reviews-dots{display:flex;justify-content:center;gap:6px;margin-top:8px;min-height:10px}
.fc-vermieter .reviews-dots button{width:8px;height:8px;border-radius:50%;border:0;padding:0;background:#c6d5e4;cursor:pointer;transition:.15s}
.fc-vermieter .reviews-dots button.on{background:var(--orange);width:22px;border-radius:4px}
@media(max-width:900px){.fc-vermieter .reviews{--cols:2}}
@media(max-width:640px){.fc-vermieter .reviews{--cols:1}
  .fc-vermieter .reviews-btn{width:38px;height:38px}.fc-vermieter .reviews-btn.prev{left:-8px}.fc-vermieter .reviews-btn.next{right:-8px}
  .fc-vermieter .reviews-head{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.fc-vermieter .reviews-track{scroll-behavior:auto}}
/* One exception in the wall: a light-on-dark logo needs a dark tile. */
.fc-vermieter .logos--wall figure.dark{background:var(--navy);border-color:var(--navy)}
.fc-vermieter .review blockquote p{font-style:normal}

/* Screenshots of the platform, framed like the logo tiles. Within a row every
   shot grows by its aspect ratio (--r), so all pictures end up the same height
   without cropping; a group grows by the sum of its shots. Each shot links to
   the full picture, the gallery script below opens it as a lightbox. */
.fc-vermieter .shots{display:flex;gap:20px;margin-top:30px;align-items:flex-start}
.fc-vermieter .shot-group{margin:0;min-width:0;flex:var(--r,1) 1 0}
.fc-vermieter .shot-row{display:flex;gap:10px}
.fc-vermieter .shot{display:block;min-width:0;flex:var(--r,1) 1 0;border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;background:#fff;cursor:zoom-in;transition:.15s}
.fc-vermieter .shot:hover{border-color:var(--blue-light);box-shadow:0 3px 16px rgba(0,42,87,.08)}
.fc-vermieter .shot:focus-visible{outline:2px solid var(--blue-light);outline-offset:2px}
.fc-vermieter .shot img{display:block;width:100%;height:auto}
.fc-vermieter .shot-group figcaption{margin-top:12px;color:var(--muted);font-size:15.5px}
@media(max-width:640px){.fc-vermieter .shots{flex-direction:column;gap:26px}.fc-vermieter .shot-group{flex:none;width:100%}}

/* Lightbox: lives outside .fc-vermieter (appended to body), styled after the
   picture gallery on the vehicle page. Swiping is native scroll-snap. */
.fc-lightbox{position:fixed;inset:0;z-index:2147483000;background:rgba(0,0,0,.8);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  font-family:inherit}
.fc-lightbox[hidden]{display:none}
.fc-lightbox-track{display:flex;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior:contain}
.fc-lightbox-track::-webkit-scrollbar{display:none}
.fc-lightbox-slide{flex:none;width:100%;height:100%;display:grid;place-items:center;scroll-snap-align:center;padding:64px 12px}
.fc-lightbox-slide img{max-width:min(92vw,1900px);max-height:calc(100vh - 128px);width:auto;height:auto;border-radius:12px;background:#fff}
.fc-lightbox-btn{position:absolute;display:grid;place-items:center;padding:0;border:0;border-radius:50%;cursor:pointer;
  background:var(--navy,#002A57);color:var(--orange,#ff7f00);transition:.15s}
.fc-lightbox-btn:hover{background:var(--orange,#ff7f00);color:var(--navy,#002A57)}
.fc-lightbox-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}
.fc-lightbox-btn svg{fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.fc-lightbox-close{top:14px;right:14px;width:40px;height:40px}
.fc-lightbox-close svg{width:24px;height:24px}
.fc-lightbox-prev,.fc-lightbox-next{top:50%;transform:translateY(-50%);width:48px;height:48px}
.fc-lightbox-prev{left:14px}.fc-lightbox-next{right:14px}
.fc-lightbox-prev svg,.fc-lightbox-next svg{width:32px;height:32px}
.fc-lightbox-count{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);padding:4px 16px;border-radius:999px;
  background:rgba(107,114,128,.7);color:#fff;font-size:15px;font-weight:500;white-space:nowrap}
.fc-lightbox.single .fc-lightbox-prev,.fc-lightbox.single .fc-lightbox-next{display:none}
@media(max-width:640px){.fc-lightbox-prev,.fc-lightbox-next{width:40px;height:40px;top:auto;bottom:10px;transform:none}
  .fc-lightbox-prev svg,.fc-lightbox-next svg{width:26px;height:26px}.fc-lightbox-slide{padding:64px 8px}}
@media(prefers-reduced-motion:reduce){.fc-lightbox-track{scroll-behavior:auto}}

/* Slim hint at the top of the hero (private page). The header sits
   transparently on the navy hero, so the hint lives inside it: the note box
   in a flat, translucent on-navy variant. */
.fc-vermieter .note .go{display:inline-block;margin-top:8px;font-weight:600;font-size:15px;text-decoration:none}
.fc-vermieter .note p + p{margin-top:.6em}
.fc-vermieter .perks-close{margin:26px 0 0}
.fc-vermieter .hero .hero-hint{margin:14px 0 38px;padding:14px 20px;background:rgba(255,255,255,.07);max-width:860px}
.fc-vermieter .hero .hero-hint h4{color:#fff;font-size:16px;margin-bottom:.25em}
.fc-vermieter .hero .hero-hint p{color:#c8d6e6;font-size:15px}
.fc-vermieter .hero .hero-hint .go{color:var(--orange);margin-top:6px}
