/* GANTRY5 DEVELOPMENT MODE ENABLED.
 *
 * WARNING: This file is automatically generated by Gantry5. Any modifications to this file will be lost!
 *
 * For more information on modifying CSS, please read:
 *
 * http://docs.gantry.org/gantry5/configure/styles
 * http://docs.gantry.org/gantry5/tutorials/adding-a-custom-style-sheet
 */

@charset "UTF-8";
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: normal;
  src: url('../fonts/playfair.eot#iefix') format("embedded-opentype"), url('../fonts/playfair.woff2') format("woff2"), url('../fonts/playfair.woff') format("woff"), url('../fonts/playfair.ttf') format("truetype"), url('../fonts/playfair.svg#Playfair%20Display') format("svg");
}
/* playfair-display-regular - latin */
@font-face {
  font-family: "Playfair Display";
  font-display: swap;
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/playfair/playfair-display-v29-latin-regular.eot');
  /* IE9 Compat Modes */
  src: local(""), url('../fonts/playfair/playfair-display-v29-latin-regular.eot#iefix') format("embedded-opentype"), url('../fonts/playfair/playfair-display-v29-latin-regular.woff2?6ae3479a') format("woff2"), url('../fonts/playfair/playfair-display-v29-latin-regular.woff') format("woff"), url('../fonts/playfair/playfair-display-v29-latin-regular.ttf') format("truetype"), url('../fonts/playfair/playfair-display-v29-latin-regular.svg#PlayfairDisplay') format("svg");
  /* Legacy iOS */
}
/* playfair-display-500 - latin */
@font-face {
  font-family: "Playfair Display";
  font-display: swap;
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/playfair/playfair-display-v29-latin-500.eot');
  /* IE9 Compat Modes */
  src: local(""), url('../fonts/playfair/playfair-display-v29-latin-500.eot#iefix') format("embedded-opentype"), url('../fonts/playfair/playfair-display-v29-latin-500.woff2?6ae347a5') format("woff2"), url('../fonts/playfair/playfair-display-v29-latin-500.woff') format("woff"), url('../fonts/playfair/playfair-display-v29-latin-500.ttf') format("truetype"), url('../fonts/playfair/playfair-display-v29-latin-500.svg#PlayfairDisplay') format("svg");
  /* Legacy iOS */
}
/* playfair-display-600 - latin */
@font-face {
  font-family: "Playfair Display";
  font-display: swap;
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/playfair/playfair-display-v29-latin-600.eot');
  /* IE9 Compat Modes */
  src: local(""), url('../fonts/playfair/playfair-display-v29-latin-600.eot#iefix') format("embedded-opentype"), url('../fonts/playfair/playfair-display-v29-latin-600.woff2') format("woff2"), url('../fonts/playfair/playfair-display-v29-latin-600.woff') format("woff"), url('../fonts/playfair/playfair-display-v29-latin-600.ttf') format("truetype"), url('../fonts/playfair/playfair-display-v29-latin-600.svg#PlayfairDisplay') format("svg");
  /* Legacy iOS */
}
/* playfair-display-700 - latin */
@font-face {
  font-family: "Playfair Display";
  font-display: swap;
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/playfair/playfair-display-v29-latin-700.eot');
  /* IE9 Compat Modes */
  src: local(""), url('../fonts/playfair/playfair-display-v29-latin-700.eot#iefix') format("embedded-opentype"), url('../fonts/playfair/playfair-display-v29-latin-700.woff2') format("woff2"), url('../fonts/playfair/playfair-display-v29-latin-700.woff') format("woff"), url('../fonts/playfair/playfair-display-v29-latin-700.ttf') format("truetype"), url('../fonts/playfair/playfair-display-v29-latin-700.svg#PlayfairDisplay') format("svg");
  /* Legacy iOS */
}
/* playfair-display-800 - latin */
@font-face {
  font-family: "Playfair Display";
  font-display: swap;
  font-style: normal;
  font-weight: 800;
  src: url('../fonts/playfair/playfair-display-v29-latin-800.eot');
  /* IE9 Compat Modes */
  src: local(""), url('../fonts/playfair/playfair-display-v29-latin-800.eot#iefix') format("embedded-opentype"), url('../fonts/playfair/playfair-display-v29-latin-800.woff2') format("woff2"), url('../fonts/playfair/playfair-display-v29-latin-800.woff') format("woff"), url('../fonts/playfair/playfair-display-v29-latin-800.ttf') format("truetype"), url('../fonts/playfair/playfair-display-v29-latin-800.svg#PlayfairDisplay') format("svg");
  /* Legacy iOS */
}
/* playfair-display-900 - latin */
@font-face {
  font-family: "Playfair Display";
  font-display: swap;
  font-style: normal;
  font-weight: 900;
  src: url('../fonts/playfair/playfair-display-v29-latin-900.eot');
  /* IE9 Compat Modes */
  src: local(""), url('../fonts/playfair/playfair-display-v29-latin-900.eot#iefix') format("embedded-opentype"), url('../fonts/playfair/playfair-display-v29-latin-900.woff2') format("woff2"), url('../fonts/playfair/playfair-display-v29-latin-900.woff') format("woff"), url('../fonts/playfair/playfair-display-v29-latin-900.ttf') format("truetype"), url('../fonts/playfair/playfair-display-v29-latin-900.svg#PlayfairDisplay') format("svg");
  /* Legacy iOS */
}
/* playfair-display-italic - latin */
@font-face {
  font-family: "Playfair Display";
  font-display: swap;
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/playfair/playfair-display-v29-latin-italic.eot');
  /* IE9 Compat Modes */
  src: local(""), url('../fonts/playfair/playfair-display-v29-latin-italic.eot#iefix') format("embedded-opentype"), url('../fonts/playfair/playfair-display-v29-latin-italic.woff2') format("woff2"), url('../fonts/playfair/playfair-display-v29-latin-italic.woff') format("woff"), url('../fonts/playfair/playfair-display-v29-latin-italic.ttf') format("truetype"), url('../fonts/playfair/playfair-display-v29-latin-italic.svg#PlayfairDisplay') format("svg");
  /* Legacy iOS */
}
/* playfair-display-500italic - latin */
@font-face {
  font-family: "Playfair Display";
  font-display: swap;
  font-style: italic;
  font-weight: 500;
  src: url('../fonts/playfair/playfair-display-v29-latin-500italic.eot');
  /* IE9 Compat Modes */
  src: local(""), url('../fonts/playfair/playfair-display-v29-latin-500italic.eot#iefix') format("embedded-opentype"), url('../fonts/playfair/playfair-display-v29-latin-500italic.woff2') format("woff2"), url('../fonts/playfair/playfair-display-v29-latin-500italic.woff') format("woff"), url('../fonts/playfair/playfair-display-v29-latin-500italic.ttf') format("truetype"), url('../fonts/playfair/playfair-display-v29-latin-500italic.svg#PlayfairDisplay') format("svg");
  /* Legacy iOS */
}
/* playfair-display-600italic - latin */
@font-face {
  font-family: "Playfair Display";
  font-display: swap;
  font-style: italic;
  font-weight: 600;
  src: url('../fonts/playfair/playfair-display-v29-latin-600italic.eot');
  /* IE9 Compat Modes */
  src: local(""), url('../fonts/playfair/playfair-display-v29-latin-600italic.eot#iefix') format("embedded-opentype"), url('../fonts/playfair/playfair-display-v29-latin-600italic.woff2') format("woff2"), url('../fonts/playfair/playfair-display-v29-latin-600italic.woff') format("woff"), url('../fonts/playfair/playfair-display-v29-latin-600italic.ttf') format("truetype"), url('../fonts/playfair/playfair-display-v29-latin-600italic.svg#PlayfairDisplay') format("svg");
  /* Legacy iOS */
}
/* playfair-display-700italic - latin */
@font-face {
  font-family: "Playfair Display";
  font-display: swap;
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/playfair/playfair-display-v29-latin-700italic.eot');
  /* IE9 Compat Modes */
  src: local(""), url('../fonts/playfair/playfair-display-v29-latin-700italic.eot#iefix') format("embedded-opentype"), url('../fonts/playfair/playfair-display-v29-latin-700italic.woff2') format("woff2"), url('../fonts/playfair/playfair-display-v29-latin-700italic.woff') format("woff"), url('../fonts/playfair/playfair-display-v29-latin-700italic.ttf') format("truetype"), url('../fonts/playfair/playfair-display-v29-latin-700italic.svg#PlayfairDisplay') format("svg");
  /* Legacy iOS */
}
/* playfair-display-800italic - latin */
@font-face {
  font-family: "Playfair Display";
  font-display: swap;
  font-style: italic;
  font-weight: 800;
  src: url('../fonts/playfair/playfair-display-v29-latin-800italic.eot');
  /* IE9 Compat Modes */
  src: local(""), url('../fonts/playfair/playfair-display-v29-latin-800italic.eot#iefix') format("embedded-opentype"), url('../fonts/playfair/playfair-display-v29-latin-800italic.woff2') format("woff2"), url('../fonts/playfair/playfair-display-v29-latin-800italic.woff') format("woff"), url('../fonts/playfair/playfair-display-v29-latin-800italic.ttf') format("truetype"), url('../fonts/playfair/playfair-display-v29-latin-800italic.svg#PlayfairDisplay') format("svg");
  /* Legacy iOS */
}
/* playfair-display-900italic - latin */
@font-face {
  font-family: "Playfair Display";
  font-display: swap;
  font-style: italic;
  font-weight: 900;
  src: url('../fonts/playfair/playfair-display-v29-latin-900italic.eot');
  /* IE9 Compat Modes */
  src: local(""), url('../fonts/playfair/playfair-display-v29-latin-900italic.eot#iefix') format("embedded-opentype"), url('../fonts/playfair/playfair-display-v29-latin-900italic.woff2') format("woff2"), url('../fonts/playfair/playfair-display-v29-latin-900italic.woff') format("woff"), url('../fonts/playfair/playfair-display-v29-latin-900italic.ttf') format("truetype"), url('../fonts/playfair/playfair-display-v29-latin-900italic.svg#PlayfairDisplay') format("svg");
  /* Legacy iOS */
}
.g-main-nav {
  font-family: "Playfair Display";
}
.g-content-pro-title {
  font-family: "Playfair Display";
}
.g-title {
  font-family: "Playfair Display";
}
.page-header {
  font-family: "Playfair Display";
}
.g-article-header {
  font-family: "Playfair Display";
}
.headline {
  font-family: "Playfair Display";
}
/* ---------------------------------------------------------------------------
   Eigene Symbolbibliothek, eingerichtet 24.09.2026

   Gantrys FontAwesome-Bibliothek ist abgeschaltet
   (custom/config/[outline]/page/fontawesome.yaml, enable: 0). Sie brachte drei
   Schriftdateien mit 169 KB fuer Symbole, von denen die Seite 16 benutzt.

   Hier stehen nur diese 16, aus Teilmengen von zusammen 6 KB. Die Klassen
   fa-* in der alten Schreibweise bedient diese Datei selbst, weil Joomlas
   FontAwesome 6 dafuer keine Entsprechung mitbringt.

   Kommt ein neues Symbol hinzu: Zeichen in tools/fa-teilmengen.py eintragen,
   Skript laufen lassen, Klasse hier ergaenzen. Verfahren in tasks/todo.md.
   --------------------------------------------------------------------------- */
@font-face {
  font-family: "FT Icons";
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url('../fonts/fa/fa-solid-900-sub.woff2?6ae347b1') format("woff2");
}
@font-face {
  font-family: "FT Icons Regular";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url('../fonts/fa/fa-regular-400-sub.woff2') format("woff2");
}
@font-face {
  font-family: "FT Icons Brands";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url('../fonts/fa/fa-brands-400-sub.woff2') format("woff2");
}
.fa, .fas {
  font-family: "FT Icons", sans-serif;
  font-weight: 900;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}
.far {
  font-family: "FT Icons Regular", sans-serif;
  font-weight: 400;
}
.fab, .fa-facebook-official, .fa-instagram {
  font-family: "FT Icons Brands", sans-serif;
  font-weight: 400;
}
.fa-photo, .fa-envelope-o, .fa-check-square-o {
  font-family: "FT Icons Regular", sans-serif;
  font-weight: 400;
}
.fa-fw {
  width: 1.28571429em;
  text-align: center;
}
.fa-search::before {
  content: "";
}
.fa-home::before {
  content: "";
}
.fa-info-circle::before {
  content: "";
}
.fa-arrow-right::before {
  content: "";
}
.fa-phone::before {
  content: "";
}
.fa-bars::before {
  content: "";
}
.fa-angle-up::before {
  content: "";
}
.fa-angle-right::before {
  content: "";
}
.fa-angle-left::before {
  content: "";
}
.fa-angle-down::before {
  content: "";
}
.fa-caret-up::before {
  content: "";
}
.fa-times::before, .fa-close::before {
  content: "";
}
.fa-bed::before {
  content: "";
}
.fa-photo::before, .fa-image::before {
  content: "";
}
.fa-envelope-o::before, .fa-envelope::before {
  content: "";
}
.fa-check-square-o::before {
  content: "";
}
.fa-facebook-official::before {
  content: "";
}
.fa-instagram::before {
  content: "";
}
/* Joomlas FontAwesome (Position 5) und Smart Sliders Symbolvorlage (Position 10)
   setzen dieselben Klassen auf ihre eigenen Familien. Position 10 liegt hinter
   dieser Datei, deshalb ist !important hier nicht Bequemlichkeit, sondern der
   einzige Weg. Wirkung: die Familien "Font Awesome 6 *", "FontAwesome" und
   "NFontAwesome" werden von keinem Element mehr angefordert, ihre
   Schriftdateien laden nicht mehr. */
.fa, .fas, .nfa, .n2i {
  font-family: "FT Icons", sans-serif !important;
  font-weight: 900 !important;
}
.far, .fa-photo, .fa-image, .fa-envelope-o, .fa-envelope, .fa-check-square-o {
  font-family: "FT Icons Regular", sans-serif !important;
  font-weight: 400 !important;
}
.fab, .fa-facebook-official, .fa-facebook, .fa-instagram {
  font-family: "FT Icons Brands", sans-serif !important;
  font-weight: 400 !important;
}
/* Diese Regeln aus nucleus.css, uikit.min.css und paradise_16.css setzen die
   Symbolfamilie direkt am Selektor, nicht ueber eine fa-Klasse. Ohne sie
   blieben Menuepfeil, Lupe auf den Kacheln und die Fusszeilen-Pfeile leer.
   Alle benutzten Zeichen liegen in der Solid-Teilmenge. */
.g-main-nav .g-toplevel > li.g-parent .g-menu-parent-indicator:after, #g-mobilemenu-container .g-toplevel li.g-parent .g-menu-parent-indicator:after, .g-go-back a:before, #g-header .g-main-nav .g-dropdown > .g-dropdown-column:before, .uk-overlay-icon:before, .uk-overlay-area:empty:before, .footer-b .mod-menu li a:before, .g-news-pro .g-news-pro-title a:before {
  font-family: "FT Icons", sans-serif !important;
  font-weight: 900 !important;
}
/* Sicherheitsnetz: bleibt irgendwo eine Familie uebrig, die wir nicht
   erwischt haben, rendert sie aus derselben Teilmenge statt als leeres
   Kaestchen. Kostet nichts, solange kein Element sie anfordert. */
@font-face {
  font-family: "Font Awesome 6 Pro";
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url('../fonts/fa/fa-solid-900-sub.woff2?6ae347b1') format("woff2");
}
/* ---------------------------------------------------------------------------
   Hoehe des Hero-Bereichs vorab reservieren, 24.09.2026

   Der Slider setzt seine Hoehe erst per JavaScript. Davor ist der Bereich
   0 Pixel hoch, und alles darunter springt beim Start nach unten — das waren
   0,204 der gemessenen 0,233 beim Cumulative Layout Shift.

   Gemessene Endhoehen: 360px→345, 412px→301, 576px→301, 768px→329,
   992px→425, 1200px→514, ab 1400px→600.

   Alle Werte hier liegen BEWUSST knapp darunter. Zu niedrig heisst nur
   weniger Sprung; zu hoch hiesse eine sichtbare Luecke unter dem Slider.
   Auf die Startseite beschraenkt (itemid-101), weil derselbe Container auf
   anderen Seiten andere Inhalte traegt.
   --------------------------------------------------------------------------- */
body.itemid-101 div.fullwidth.moduletable {
  min-height: 292px;
}
@media (max-width: 389px) {
  body.itemid-101 div.fullwidth.moduletable {
    min-height: 336px;
  }
}
@media (min-width: 768px) {
  body.itemid-101 div.fullwidth.moduletable {
    min-height: calc(100vw / 2.42);
  }
}
@media (min-width: 1400px) {
  body.itemid-101 div.fullwidth.moduletable {
    min-height: 592px;
  }
}
/* ---------------------------------------------------------------------------
   Vermieterseite, Menuepunkt 191 — 25.09.2026

   Die rechte Spalte trug bisher „Anschrift & Telefon" (161px) neben 4.000px
   Text. Sie traegt jetzt den Kontaktbereich und laeuft mit. Die vier Pakete
   und die vier Schritte stehen als Karten, damit die Seite kuerzer wird.

   Alles auf body.itemid-165 begrenzt, wo es die Seitenstruktur betrifft.
   Die Karten-Klassen tragen das Praefix ft- und kommen nur in Artikel 49
   und Modul 485 vor.

   Zum overflow: nucleus.css setzt #g-page-surround auf overflow:hidden. Das
   macht den Kasten zum Scroll-Container und position:sticky damit wirkungslos.
   overflow:clip schneidet genauso ab, ist aber kein Scroll-Container.
   --------------------------------------------------------------------------- */
body.itemid-165 #g-page-surround {
  overflow: clip;
}
/* 95px = 79px fixierter Header im zusammengeschrumpften Zustand + 16px Luft.
   Erst ab 768px, darunter ist die Spalte einspaltig unter dem Text. */
@media (min-width: 768px) {
  body.itemid-165 #g-aside {
    position: sticky;
    top: 95px;
  }
}
/* --- Kontaktbereich in der rechten Spalte (Modul 485) --- */
.ft-vermieter-box, .ft-prospekt-box {
  padding: 1.25rem;
  margin-bottom: 1.25rem;
  background: #ffffff;
  border: 1px solid #e6e6e6;
  border-radius: 0.1875rem;
}
.ft-vermieter-box {
  background: #fdfaf4;
  border-color: #d0aa69;
}
/* Gleicher Schriftgrad wie der Artikelkoerper, damit die Spalte nicht
   kleiner wirkt als der Text daneben. */
@media (min-width: 768px) {
  .ft-vermieter-box, .ft-prospekt-box {
    font-size: 0.96875rem;
  }
  .ft-vermieter-box .button, .ft-prospekt-box .button {
    font-size: 0.96875rem;
  }
}
.ft-prospekt-box {
  margin-bottom: 0;
}
.ft-vermieter-box h3, .ft-prospekt-box h3 {
  margin: 0 0 0.6rem;
  font-size: 1.15rem;
  line-height: 1.3;
}
.ft-vermieter-box p, .ft-prospekt-box p {
  margin: 0 0 0.9rem;
}
.ft-vermieter-box p:last-child, .ft-prospekt-box p:last-child {
  margin-bottom: 0;
}
.ft-vermieter-box .button, .ft-prospekt-box .button {
  display: block;
  width: 100%;
}
.ft-vermieter-box .ft-vertrauen {
  font-size: 0.85rem;
  line-height: 1.45;
  color: #8a8a8a;
}
.ft-prospekt-box .ft-klein {
  font-size: 0.8rem;
  color: #9a9a9a;
}
/* Platz fuer die Schaltflaechen kommt aus den Innenabstaenden, nicht aus dem
   Schriftgrad: „Vermieterprospekt" misst bei 15,5px 139px, der Knopf bot in
   der schmalen Spalte nur 132. Unter 14,5px wird eine Schaltflaeche
   unleserlich, deshalb weicht hier das Polster und nicht die Schrift. */
@media (min-width: 768px) and (max-width: 1199px) {
  /* Gantrys .g-content nimmt der Spalte je Seite 25px an Rand und Polster.
	   Bei 768px bleiben dadurch nur 180px fuer den Kasten. Hier etwas davon
	   zurueckholen, damit die Schaltflaechen ihren Schriftgrad behalten. */
  body.itemid-165 #g-aside .g-content {
    margin-left: 6px;
    margin-right: 6px;
    padding-left: 10px;
    padding-right: 10px;
  }
  .ft-vermieter-box, .ft-prospekt-box {
    padding: 0.8rem;
  }
}
/* --- Die vier Pakete als Karten, einspaltig bis 1023px --- */
.ft-pakete {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  margin: 0 0 1.75rem;
}
@media (min-width: 1024px) {
  .ft-pakete {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.ft-paket {
  padding: 1.25rem;
  background: #ffffff;
  border: 1px solid #e6e6e6;
  border-radius: 0.1875rem;
}
/* PROFESSIONAL PLUS dezent: Randfarbe und ein Hauch Grundton, keine andere
   Groesse, keine andere Schriftstaerke, kein Zusatztext. */
.ft-paket-plus {
  background: #fdfaf4;
  border-color: #d0aa69;
}
.ft-paket > h2 {
  margin: 0 0 0.6rem;
  font-size: 1.15rem;
  line-height: 1.35;
}
.ft-paket > p {
  margin: 0 0 0.6rem;
}
.ft-paket ul {
  margin: 0;
  padding-left: 1.15rem;
}
.ft-paket li {
  margin-bottom: 0.25rem;
}
.ft-paket li:last-child {
  margin-bottom: 0;
}
/* --- Die vier Schritte als Karten --- */
.ft-schritte {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  margin: 0 0 1.75rem;
}
@media (min-width: 600px) {
  .ft-schritte {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.ft-schritt {
  padding: 0.9rem 1rem 1rem;
  background: #f9f9f9;
  border-top: 3px solid #d0aa69;
}
.ft-schritt h3 {
  margin: 0 0 0.4rem;
  font-size: 1rem;
  line-height: 1.3;
}
.ft-schritt p {
  margin: 0;
  font-size: 0.85rem;
  line-height: 1.5;
}
/* --- Abschluss-Schaltflaeche statt Textlink --- */
.ft-abschluss {
  margin-top: 1.25rem;
}
.ft-abschluss .button {
  font-size: 1rem;
  padding: 0.75rem 1.5rem;
}
/* paradise_16.css gibt #g-aside einen weissen Grund. Solange die Spalte stand,
   fiel das nicht auf. Mitlaufend wanderte der weisse Block mit und endete
   mitten auf der Seite — der Grund gehoert an die volle Spaltenhoehe. */
body.itemid-165 #g-container-main .g-container > .g-grid > .g-block.size-30 {
  background: #ffffff;
}
body.itemid-165 #g-aside {
  background: transparent;
}
/* ---------------------------------------------------------------------------
   Nachtrag 25.09.2026 — Paket 4, auf Zuruf

   paradise_16.css setzt body auf 0.9rem, also 14,4px. Bei 790px Textbreite
   sind das rund 107 Zeichen je Zeile; lesbar ist etwa bis 90. Deshalb geht
   die Verbreiterung nur zusammen mit groesserer Grundschrift:

     heute        790px / 14,4px → 107 Zeichen
     nur breiter  850px / 14,4px → 115 Zeichen   (schlechter)
     beides       850px / 15,5px → 107 Zeichen   (gleiche Zeilenlaenge,
                                                  groessere Schrift)

   Die Schrift gilt nur im Artikelkoerper dieser Seite, nicht im Modul der
   rechten Spalte und auf keiner anderen Seite.
   --------------------------------------------------------------------------- */
/* Auf Zuruf begrenzt: erst ab 768px. Darunter bleibt es bei den 0.9rem des
   Templates, damit die Seite auf dem Telefon nicht laenger wird. */
@media (min-width: 768px) {
  /* 15,5px */
  body.itemid-165 .com-content-article__body {
    font-size: 0.96875rem;
  }
}
body.itemid-165 .com-content-article__body .ft-schritt p {
  font-size: 0.9rem;
}
/* Erst ab 1024px. Darunter waere die rechte Spalte bei 25% zu schmal fuer
   die Schaltflaechen. */
@media (min-width: 1024px) {
  body.itemid-165 #g-container-main .g-container > .g-grid > .g-block.size-70 {
    flex: 0 1 75%;
  }
  body.itemid-165 #g-container-main .g-container > .g-grid > .g-block.size-30 {
    flex: 0 1 25%;
  }
}
/* Die schmalere Spalte bringt lange Komposita an den Knopfrand
   („Vermieterprospekt" bei 1024px). Trennung erlauben, Innenabstand und
   Schriftgrad bis 1199px zuruecknehmen. */
.ft-vermieter-box .button, .ft-prospekt-box .button {
  overflow-wrap: break-word;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .ft-vermieter-box .button, .ft-prospekt-box .button {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
/* ---------------------------------------------------------------------------
   Mobiler Layout-Sprung, 27.09.2026

   Gantrys main.js verschiebt die Navigation erst beim window.load-Ereignis ins
   Offcanvas. Bis dahin steht sie als gestapelte Liste mit 186px im Kopfbereich.
   Gedrosselt gemessen faellt der Header bei 4.281ms von 265 auf 79 Pixel, die
   ganze Seite rutscht hoch: 0,204 der gemessenen 0,233 beim CLS.

   Die Navigation wird deshalb unterhalb von 768px von Anfang an ausgeblendet.
   Das ist genau der Zustand, den man ohnehin nach vier Sekunden sieht — nur
   sofort. Der Offcanvas-Schalter steht bereits im HTML, es entsteht also kein
   zweiter Sprung. Sobald main.js die Navigation ins Offcanvas verschoben hat,
   liegt sie nicht mehr unter #g-header und die Regel greift nicht mehr.
   --------------------------------------------------------------------------- */
@media (max-width: 767px) {
  #g-header .g-main-nav {
    display: none;
  }
}
/* Gleicher Abstand nach Objektgalerien in beiden Seitenlayouts. */
body.view-article #g-mainbody .n2-section-smartslider {
  margin-bottom: 32px !important;
}
body.view-article #g-mainbody > .g-grid:has(.content-top-a .n2-section-smartslider) > .g-block > .g-content {
  margin-bottom: 0;
  padding-bottom: 0;
}
body.view-article #g-mainbody > .g-grid:has(.content-top-a .n2-section-smartslider) + .g-grid > .g-block > .g-content {
  margin-top: 0;
  padding-top: 0;
}
body.view-article #g-mainbody div:has(> .n2-section-smartslider) + h2 {
  margin-top: 0 !important;
}
/*# sourceMappingURL=custom_14.css.map */