.ki-expose{--d:#202422;--p:#f4f2ed;--l:#ddd8cf;color:var(--d);font-size:17px;line-height:1.7}.ki-expose *{box-sizing:border-box}.ki-hero{height:min(76vh,780px);position:relative;overflow:hidden;background:#333}.ki-hero>img{width:100%;height:100%;object-fit:cover}.ki-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,.08))}.ki-hero-content{position:absolute;left:max(5%,calc((100% - 1200px)/2));bottom:10%;right:5%;color:#fff}.ki-hero h1,.ki-contact h2{color:#fff}.ki-hero h1,.ki-section h2,.ki-contact h2{font-size:clamp(36px,5vw,66px);font-weight:400;line-height:1.07;margin:12px 0 28px}.ki-kicker{font-size:12px;font-weight:700;letter-spacing:2.2px;text-transform:uppercase}.ki-badge{display:inline-block;background:#fff;color:#222;padding:5px 9px;margin-right:12px;font-size:11px;font-weight:700}.ki-section{max-width:1200px;margin:auto;padding:85px 5%}.ki-facts{max-width:1300px;margin:auto;padding:32px 5%;display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid var(--l)}.ki-facts>div{padding:4px 20px}.ki-facts span,.ki-data span{display:block;color:#777;font-size:13px}.ki-facts strong{font-size:21px;font-weight:500}.ki-band{background:var(--p)}.ki-features{display:grid;grid-template-columns:1fr 1fr;gap:0 50px}.ki-features div{padding:14px 0;border-bottom:1px solid var(--l)}.ki-features div:before{content:"✓";margin-right:10px}.ki-data{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.ki-data strong{font-weight:500}.ki-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}.ki-floor{display:grid;grid-template-columns:1fr 1fr;gap:25px}.ki-floor img{width:100%;aspect-ratio:4/3;object-fit:contain;border:1px solid var(--l)}.ki-ratio{aspect-ratio:16/9}.ki-ratio iframe{width:100%;height:100%;border:0}.ki-scale{display:grid;grid-template-columns:repeat(9,1fr);gap:4px;margin-top:30px}.ki-scale span{text-align:center;border:1px solid var(--l);padding:9px}.ki-scale .active{outline:3px solid var(--d);outline-offset:2px;font-weight:700}.ki-download{display:flex;align-items:end;justify-content:space-between;gap:30px}.ki-btn{display:inline-block;padding:14px 22px;background:var(--d);border:1px solid var(--d);color:#fff!important;text-decoration:none!important}.ki-light{background:transparent;border-color:#fff}.ki-legal{border-top:1px solid var(--l);font-size:14px;color:#555}.ki-contact{background:var(--d);color:#fff;padding:80px max(5%,calc((100% - 1080px)/2));display:flex;justify-content:space-between;align-items:center;gap:50px}.ki-lightbox{position:fixed;inset:0;z-index:10050;background:#000e;display:none;align-items:center;justify-content:center;padding:45px}.ki-lightbox.is-open{display:flex}.ki-lightbox img{max-width:95vw;max-height:90vh}.ki-lightbox button{position:absolute;right:20px;top:10px;background:none;border:0;color:#fff;font-size:42px}@media(max-width:800px){.ki-facts{grid-template-columns:repeat(2,1fr)}.ki-data{grid-template-columns:repeat(2,1fr)}.ki-split,.ki-floor{grid-template-columns:1fr}.ki-contact{display:block}.ki-contact .ki-btn{margin-top:20px}}@media(max-width:600px){.ki-section{padding:58px 24px}.ki-hero-content{left:24px;right:24px}.ki-data,.ki-features{grid-template-columns:1fr}.ki-download{display:block}}
/* v1.0.4 Galerie / Slideshow / Maps */
.ki-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.ki-thumb{padding:0;border:0;background:none;cursor:pointer;overflow:hidden;aspect-ratio:4/3}
.ki-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.ki-thumb:hover img,.ki-thumb:focus img{transform:scale(1.04)}
.ki-slideshow{position:fixed;inset:0;z-index:10060;background:rgba(0,0,0,.94);display:none;align-items:center;justify-content:center;padding:50px 80px}
.ki-slideshow.is-open{display:flex}.ki-slideshow figure{margin:0;text-align:center}
.ki-slideshow figure img{max-width:calc(100vw - 180px);max-height:82vh;object-fit:contain}
.ki-slideshow figcaption{color:#fff;margin-top:10px}
.ki-slide-close,.ki-slide-prev,.ki-slide-next{position:absolute;border:0;background:rgba(0,0,0,.25);color:#fff;cursor:pointer}
.ki-slide-close{right:22px;top:12px;font-size:44px;background:none}.ki-slide-prev,.ki-slide-next{top:50%;transform:translateY(-50%);font-size:55px;padding:8px 16px}
.ki-slide-prev{left:18px}.ki-slide-next{right:18px}
.ki-map{margin-top:30px}.ki-map-2cgm{width:100%}
@media(max-width:900px){.ki-thumbs{grid-template-columns:repeat(4,1fr)}}
@media(max-width:600px){.ki-thumbs{grid-template-columns:repeat(3,1fr);gap:6px}.ki-slideshow{padding:55px 45px}.ki-slideshow figure img{max-width:calc(100vw - 90px);max-height:78vh}.ki-slide-prev{left:3px}.ki-slide-next{right:3px}}

/* v1.0.6 – Exposé-spezifische Helix-Ausgabe */
.article-details:has(.ki-expose) .article-ratings-social-share,
.article-details:has(.ki-expose) .article-social-share,
.article-details:has(.ki-expose) .social-share-icon{display:none!important}
.ki-contact-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.ki-print-btn{cursor:pointer;border:1px solid rgba(255,255,255,.7);background:transparent;color:#fff}

/* Druck-/PDF-Exposé */
@media print{
  @page{size:A4;margin:13mm 12mm 15mm}
  html,body{background:#fff!important;color:#111!important;font-size:9.5pt!important}
  body *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  header,#sp-header,#sp-top-bar,footer,#sp-footer,.offcanvas-menu,.offcanvas-overlay,
  .article-ratings-social-share,.article-social-share,.social-share-icon,
  .ki-print-btn,.ki-btn,.ki-slideshow,.ki-map-2cgm,
  .breadcrumb,.pagination,.article-can-edit{display:none!important}
  #sp-main-body,.container,.container-inner,.article-details,.ki-expose{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
  .ki-hero{min-height:0!important;height:auto!important;page-break-inside:avoid;break-inside:avoid}
  .ki-hero img{position:relative!important;width:100%!important;height:92mm!important;object-fit:cover!important}
  .ki-hero:after{display:none!important}
  .ki-hero-content{position:relative!important;background:#fff!important;color:#111!important;padding:7mm 0 3mm!important}
  .ki-hero-content *{color:#111!important;text-shadow:none!important}
  .ki-hero-content h1{font-size:24pt!important;line-height:1.08!important;margin:2mm 0!important}
  .ki-facts{display:grid!important;grid-template-columns:repeat(5,1fr)!important;gap:0!important;border-top:1px solid #999;border-bottom:1px solid #999;margin:3mm 0 6mm!important}
  .ki-facts>div{padding:3mm 2mm!important;border-right:1px solid #ddd!important}
  .ki-facts span,.ki-facts strong{font-size:8.5pt!important}
  .ki-section{padding:5mm 0!important;margin:0!important;break-inside:auto}
  .ki-section h2{font-size:17pt!important;margin:1mm 0 3mm!important}
  .ki-kicker{font-size:7.5pt!important;letter-spacing:.08em!important}
  .ki-copy,.ki-section p,.ki-section li{font-size:9.5pt!important;line-height:1.42!important}
  .ki-thumbs{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:2mm!important}
  .ki-thumb{display:block!important;aspect-ratio:4/3!important;border:0!important}
  .ki-thumb img{width:100%!important;height:100%!important;object-fit:cover!important}
  .ki-gallery-section{break-before:page;page-break-before:always}
  .ki-split{display:grid!important;grid-template-columns:32% 68%!important;gap:6mm!important}
  .ki-energy,.ki-rent-grid{break-inside:avoid;page-break-inside:avoid}
  .ki-contact{background:#fff!important;color:#111!important;border-top:1px solid #777!important;padding:6mm 0 0!important;margin-top:5mm!important;break-inside:avoid}
  .ki-contact *{color:#111!important}
  .ki-contact-actions{display:none!important}
  .ki-readmore-split{display:none!important}
  a[href]:after{content:none!important}
}

/* v1.0.7 – Kiepenkerl-Druckkopf und -fuß */
.ki-print-header,.ki-print-footer{display:none}
@media print{
 @page{size:A4;margin:18mm 12mm 18mm}
 .ki-print-header{display:flex!important;justify-content:space-between;align-items:center;border-bottom:1px solid #777;padding:0 0 4mm!important;margin:0 0 5mm!important;break-inside:avoid}
 .ki-print-brand{display:flex;align-items:center;gap:4mm}
 .ki-print-brand img{display:block!important;position:static!important;width:auto!important;height:17mm!important;max-width:55mm!important;object-fit:contain!important}
 .ki-print-brand div,.ki-print-meta,.ki-print-footer>div{display:flex;flex-direction:column}
 .ki-print-brand strong{font-size:13pt!important}.ki-print-brand span,.ki-print-meta span{font-size:7.8pt!important;line-height:1.35!important}
 .ki-print-meta{text-align:right}
 .ki-print-footer{display:flex!important;justify-content:space-between;gap:8mm;border-top:1px solid #999;margin-top:7mm!important;padding-top:3mm!important;font-size:7.5pt!important;line-height:1.35!important;break-inside:avoid}
 .ki-print-footer span,.ki-print-footer strong{font-size:7.5pt!important}.ki-print-footer-right{text-align:right}
}

/* v1.0.8 */
.ki-readmore-wrap{padding:28px 0 42px;text-align:center}
.ki-readmore-btn{display:inline-flex!important}
html.ki-no-scroll,html.ki-no-scroll body{overflow:hidden!important}
.ki-slideshow.is-open{display:flex!important}
.ki-slideshow figure img{display:block;max-width:calc(100vw - 180px);max-height:82vh;width:auto;height:auto;margin:auto}
@media(max-width:600px){.ki-slideshow figure img{max-width:calc(100vw - 90px);max-height:78vh}}

/* v1.0.11 – SIGE übernimmt Galerie, Thumbnails und PhotoSwipe/Lightbox */
.ki-sige-gallery{margin-top:22px;width:100%}
.ki-sige-gallery img{max-width:100%;height:auto}
@media print{
 .ki-sige-gallery .pswp,.ki-sige-gallery [class*="lightbox"]{display:none!important}
}

/* v1.0.19 – lokale, datenschutzfreundliche Standortkarte */
.ki-map-local{margin-top:22px}
.ki-map-figure{margin:0}
.ki-map-figure img{display:block;width:100%;height:auto;border-radius:16px}
.ki-map-figure figcaption{margin-top:7px;font-size:.78rem;opacity:.72}
.ki-map-address{margin:14px 0 0;font-weight:600}
.ki-map-actions{margin:14px 0 0}
@media print{
 .ki-map-actions{display:none!important}
 .ki-map-figure img{max-height:120mm;object-fit:contain}
}

/* v1.0.20 – Bereich Lage immer einspaltig */
.ki-location-section,
.ki-location-section .ki-grid,
.ki-location-section .ki-cols,
.ki-location-section .ki-two-col,
.ki-location-section .ki-location-grid{
  display:block!important;
  grid-template-columns:1fr!important;
  columns:1!important;
}
.ki-location-section > *,
.ki-location-section .ki-grid > *,
.ki-location-section .ki-cols > *,
.ki-location-section .ki-two-col > *,
.ki-location-section .ki-location-grid > *{
  width:100%!important;
  max-width:100%!important;
}

/* v1.0.21 – Firefox-Kompatibilität für SIGE-Vorschaubilder */
.ki-sige-gallery{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  overflow:visible!important;
}
.ki-sige-gallery a{
  visibility:visible!important;
}
.ki-sige-gallery img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:cover;
}
.ki-sige-gallery picture{
  display:block!important;
}
.ki-sige-gallery picture img{
  width:100%;
}
@supports (-moz-appearance:none){
  .ki-sige-gallery img{
    content:normal!important;
  }
}

/* v1.0.22 – Objektbeschreibung einspaltig */
.ki-description-section .ki-features{
  display:block!important;
  grid-template-columns:1fr!important;
  columns:1!important;
}
.ki-description-section .ki-features > *{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box;
}

/* v1.0.23 – Objektbeschreibung schlicht ohne Haken und Trennlinien */
.ki-description-section .ki-features,
.ki-description-section .ki-features ul{
  list-style:none!important;
  padding-left:0!important;
  margin-left:0!important;
}
.ki-description-section .ki-features li{
  list-style:none!important;
  border-top:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
  padding-left:0!important;
}
.ki-description-section .ki-features li::before,
.ki-description-section .ki-features li::after{
  content:none!important;
  display:none!important;
}
.ki-description-section .ki-features > *{
  border-top:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
}

/* v1.0.24 – Kontrollhaken der Objektbeschreibung vollständig entfernt */
.ki-description-section .ki-check,
.ki-description-section [class*="check"],
.ki-description-section .ki-features li::marker,
.ki-description-section .ki-features *::marker{
  display:none!important;
  content:""!important;
  font-size:0!important;
}
.ki-description-section .ki-features li{
  list-style-type:none!important;
  background-image:none!important;
  padding-left:0!important;
}

/* v1.0.25 – Haken vor Objektbeschreibung endgültig entfernt */
.ki-description-section .ki-features li::before,
.ki-description-section .ki-features li::after,
.ki-description-section .ki-features li::marker{
  content:none!important;
  display:none!important;
}
.ki-description-section .ki-features li{
  list-style:none!important;
  padding-left:0!important;
  text-indent:0!important;
  background:none!important;
}

/* v1.0.26 – native Immobiliengalerie ohne SIGE */
.ki-native-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:100%}
.ki-gallery-thumb{display:block;padding:0;border:0;background:none;cursor:pointer;overflow:hidden;border-radius:10px;aspect-ratio:4/3}
.ki-gallery-thumb img{display:block;width:100%;height:100%;object-fit:cover;opacity:1;visibility:visible}
.ki-gallery-lightbox[hidden]{display:none!important}
.ki-gallery-lightbox{position:fixed;inset:0;z-index:100000;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center;padding:40px 70px}
.ki-gallery-main{display:block;max-width:min(92vw,1600px);max-height:88vh;width:auto;height:auto;object-fit:contain}
.ki-gallery-close,.ki-gallery-prev,.ki-gallery-next{position:absolute;border:0;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;line-height:1}
.ki-gallery-close{right:20px;top:18px;font-size:42px;width:52px;height:52px;border-radius:50%}
.ki-gallery-prev,.ki-gallery-next{top:50%;transform:translateY(-50%);font-size:58px;width:58px;height:74px;border-radius:8px}
.ki-gallery-prev{left:16px}.ki-gallery-next{right:16px}
.ki-gallery-counter{position:absolute;bottom:15px;left:0;right:0;text-align:center;color:#fff;font-size:14px}
@media(max-width:900px){.ki-native-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.ki-native-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ki-gallery-lightbox{padding:50px 12px}.ki-gallery-prev,.ki-gallery-next{width:44px;height:58px;font-size:44px}}
@media print{.ki-gallery-lightbox{display:none!important}.ki-native-gallery{grid-template-columns:repeat(3,1fr)}}

/* v1.0.27 – Lage konsequent einspaltig über volle Breite */
.ki-location-section,
.ki-location-section .ki-section,
.ki-location-section .ki-grid,
.ki-location-section .ki-cols,
.ki-location-section .ki-two-col,
.ki-location-section .ki-location-grid,
.ki-location-section .row{
  display:block!important;
  grid-template-columns:none!important;
  columns:auto!important;
  width:100%!important;
  max-width:100%!important;
}
.ki-location-section > *,
.ki-location-section .ki-section > *,
.ki-location-section .ki-grid > *,
.ki-location-section .ki-cols > *,
.ki-location-section .ki-two-col > *,
.ki-location-section .ki-location-grid > *,
.ki-location-section .row > *{
  float:none!important;
  flex:none!important;
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}
.ki-location-section .ki-map-local,
.ki-location-section .ki-map-figure,
.ki-location-section .ki-map-figure img,
.ki-location-section .ki-map-address,
.ki-location-section .ki-map-actions{
  width:100%!important;
  max-width:100%!important;
}

/* v1.0.28 – Lage: gleiche Inhaltsbreite wie Maklercourtage und Hinweise */
.ki-location-section{
  width:auto!important;
  max-width:none!important;
}
.ki-location-section > .ki-section{
  width:100%!important;
  max-width:var(--ki-content-width, 1180px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:24px!important;
  padding-right:24px!important;
  box-sizing:border-box!important;
}
.ki-location-section > .ki-section .ki-grid,
.ki-location-section > .ki-section .ki-cols,
.ki-location-section > .ki-section .ki-two-col,
.ki-location-section > .ki-section .ki-location-grid,
.ki-location-section > .ki-section .row{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
}
@media(max-width:600px){
 .ki-location-section > .ki-section{
   padding-left:16px!important;
   padding-right:16px!important;
 }
}

/* v1.0.31 – Energie & Gebäude, Maklercourtage und Hinweise:
   gleiche Inhaltsbreite wie Objektbeschreibung */
.ki-energy-section > .ki-section,
.ki-courtage-section > .ki-section,
.ki-notice-section > .ki-section{
  width:100%!important;
  max-width:var(--ki-content-width, 1180px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:24px!important;
  padding-right:24px!important;
  box-sizing:border-box!important;
}
.ki-energy-section > .ki-section > *,
.ki-courtage-section > .ki-section > *,
.ki-notice-section > .ki-section > *{
  max-width:100%!important;
}
@media(max-width:600px){
 .ki-energy-section > .ki-section,
 .ki-courtage-section > .ki-section,
 .ki-notice-section > .ki-section{
   padding-left:16px!important;
   padding-right:16px!important;
 }
}


/* v1.0.33 – Widerrufs-/Maklervertragssperre */
.ki-gate{max-width:1180px;margin:30px auto;padding:0 24px;color:#222}.ki-gate-card{background:#fff;border:1px solid #ddd;padding:clamp(22px,4vw,48px);box-shadow:0 12px 34px rgba(0,0,0,.08)}
.ki-gate h1{margin:.3rem 0 1rem}.ki-gate-lead{font-size:1.08rem;max-width:850px}.ki-gate-object{margin:18px 0;padding:12px 16px;background:#f5f5f5}
.ki-gate-box{margin:18px 0;padding:18px;border:1px solid #ddd;background:#fafafa}.ki-gate-box summary{cursor:pointer;font-weight:700;font-size:1.05rem}.ki-gate-box h3{margin-top:0}
.ki-gate-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:22px 0}.ki-gate-fields label{font-weight:600}.ki-gate-fields input{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #aaa;border-radius:2px}
.ki-gate-check{display:flex;gap:12px;align-items:flex-start;margin:16px 0;line-height:1.45}.ki-gate-check input{width:20px;height:20px;flex:0 0 20px;margin-top:2px;accent-color:#b08d3c}
.ki-gate-submit{background:#b08d3c!important;color:#000!important;border-color:#b08d3c!important;margin-top:12px}.ki-gate-submit:hover,.ki-gate-submit:focus{background:#9a7a32!important;color:#000!important;border-color:#9a7a32!important}.ki-gate-note{font-size:.88rem;color:#666;margin-top:14px}
@media(max-width:700px){.ki-gate{padding:0 14px}.ki-gate-fields{grid-template-columns:1fr}}
@media print{.ki-gate{display:none!important}}

/* v1.1.0 – Objektanfrage */
.ki-inquiry .ki-gate-card{max-width:980px}
.ki-gate-form h3{margin:28px 0 12px}
.ki-gate-fields-3{grid-template-columns:.7fr 1fr 1fr!important}
.ki-gate-form label{display:flex;flex-direction:column;gap:6px;font-weight:600}
.ki-gate-form input,.ki-gate-form select,.ki-gate-form textarea{width:100%;box-sizing:border-box;border:1px solid #cfcfcf;border-radius:4px;padding:11px 12px;background:#fff;color:#111;font:inherit}
.ki-gate-form textarea{resize:vertical}
.ki-gate-check{flex-direction:row!important;align-items:flex-start;gap:10px!important;font-weight:400!important}
.ki-gate-check input{width:auto!important;margin-top:4px;flex:0 0 auto}
.ki-gate-check a{color:#666;text-decoration:underline}
.ki-gate-check a:hover,.ki-gate-check a:focus{color:#b08d3c}
.ki-gate-optional{padding-top:8px;border-top:1px solid #e6e6e6}
.ki-gate-submit{background:#b08d3c!important;color:#000!important;border-color:#b08d3c!important}
.ki-gate-submit:hover,.ki-gate-submit:focus{background:#9a7a32!important;color:#000!important}
@media(max-width:760px){.ki-gate-fields-3{grid-template-columns:1fr!important}}


/* Courtagebestätigung in der Immobilienanfrage */
.ki-gate-courtage-check{background:#f5f2ea;padding:14px;border-left:4px solid #b08d3c}

/* v1.1.5 – Objekt-Nr. auf dem Titelbild */
.ki-hero-object-number{
  display:block;
  margin-top:.35rem;
  margin-bottom:.35rem;
  font-size:.95rem;
  font-weight:600;
  letter-spacing:.04em;
  color:inherit;
}
