
:root{
  --red:#df0612;
  --black:#111317;
  --muted:#5b5f66;
  --line:#eceef2;
  --soft:#fff6f6;
  --gold:#ffd21f;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  color:var(--black);
  background:#fff;
  line-height:1.55;
}
a{color:inherit}
img{max-width:100%;display:block}
.site-header{
  height:92px;
  padding:0 clamp(22px,4vw,58px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  background:#fff;
  border-bottom:1px solid rgba(0,0,0,.06);
  position:sticky;
  top:0;
  z-index:50;
}
.logo img{width:112px;height:auto}
.nav{
  display:flex;
  align-items:center;
  gap:30px;
  font-size:15px;
  font-weight:850;
}
.nav a{text-decoration:none}
.nav a.active,.nav a:hover{color:var(--red)}
.header-actions{
  display:flex;
  align-items:center;
  gap:18px;
  font-weight:900;
}
.phone{text-decoration:none;font-size:18px;white-space:nowrap}
.whatsapp-top{
  background:var(--red);
  color:#fff;
  text-decoration:none;
  padding:14px 20px;
  border-radius:12px;
  box-shadow:0 12px 28px rgba(223,6,18,.22);
  white-space:nowrap;
}

/* HERO genau mockup-orientiert: links Text, rechts Monteure groß */
.hero{
  display:grid;
  grid-template-columns:44% 56%;
  min-height:540px;
  background:#fff;
  overflow:hidden;
}
.hero-copy{
  padding:clamp(44px,5vw,74px) clamp(28px,5vw,70px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:linear-gradient(90deg,#fff 0%,#fff 72%,rgba(255,255,255,.86) 88%,rgba(255,255,255,0) 100%);
  position:relative;
  z-index:2;
}
.eyebrow{
  color:var(--red);
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:13px;
  margin:0 0 14px;
}
h1{
  margin:0 0 24px;
  font-size:clamp(44px,5.1vw,76px);
  line-height:.96;
  letter-spacing:-.06em;
}
h1 span{display:block}
.lead{
  max-width:560px;
  color:#262a31;
  font-size:18px;
  margin:0 0 26px;
}
.checks{
  list-style:none;
  margin:0 0 28px;
  padding:0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px 28px;
  max-width:560px;
}
.checks li{
  font-weight:900;
  font-size:15px;
}
.checks li:before{
  content:"✓";
  color:var(--red);
  margin-right:10px;
  font-weight:950;
}
.btns{display:flex;gap:16px;flex-wrap:wrap}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  padding:15px 22px;
  font-weight:950;
  text-decoration:none;
  border:1px solid transparent;
}
.btn.primary{background:var(--red);color:#fff;box-shadow:0 12px 28px rgba(223,6,18,.2)}
.btn.outline{background:#fff;color:var(--red);border-color:var(--red)}
.hero-image{
  min-height:540px;
  position:relative;
  overflow:hidden;
  background:#dceefd;
}
.hero-image:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,.86),rgba(255,255,255,0) 22%);
  z-index:1;
  pointer-events:none;
}
.hero-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center bottom;
}

/* sections */
.section{
  max-width:var(--max);
  margin:0 auto;
  padding:58px 22px;
}
.section h2{
  margin:0 0 26px;
  text-align:center;
  font-size:34px;
  line-height:1.08;
  letter-spacing:-.035em;
}
.cards4{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
}
.card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  padding:28px 24px;
  text-align:center;
  box-shadow:0 12px 32px rgba(0,0,0,.06);
}
.icon{
  width:54px;height:54px;
  display:grid;place-items:center;
  border-radius:50%;
  margin:0 auto 16px;
  background:#ffecef;
  color:var(--red);
  font-size:25px;
}
.card h3{margin:0 0 10px;font-size:18px}
.card p{margin:0;color:#50555d}

.apartments{
  padding-top:8px;
}
.apartment-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.apt{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 34px rgba(0,0,0,.075);
}
.apt-img{
  height:210px;
  background:linear-gradient(135deg,#f4f4f4,#ddd);
  display:grid;
  place-items:center;
  color:#777;
  font-weight:900;
}
.apt-body{padding:18px}
.location{font-size:13px;color:#555;margin:0 0 6px}
.apt h3{text-align:left;margin:0 0 12px;font-size:20px}
.meta{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  font-size:13px;
  color:#555;
  margin:0 0 18px;
}
.price-row{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:14px;
}
.price strong{font-size:22px}
.price small{display:block;color:#666}
.more{
  background:var(--red);
  color:#fff;
  text-decoration:none;
  border-radius:9px;
  padding:10px 14px;
  font-weight:900;
  font-size:14px;
}
.center-btn{text-align:center;margin-top:24px}

.benefits{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:18px;
  text-align:center;
}
.benefit .mini{
  width:42px;height:42px;
  display:grid;place-items:center;
  border-radius:50%;
  margin:0 auto 12px;
  background:#ffecef;
  color:var(--red);
  font-size:21px;
}
.benefit strong{display:block;margin-bottom:5px}
.benefit p{margin:0;color:#555;font-size:14px}

.cta{
  max-width:var(--max);
  margin:16px auto 0;
  padding:0 22px 60px;
}
.cta-box{
  background:linear-gradient(135deg,#fff3f4,#fff);
  border:1px solid #ffd4d9;
  border-radius:22px;
  display:grid;
  grid-template-columns:1.4fr auto;
  gap:28px;
  align-items:center;
  padding:32px;
}
.cta-box h2{text-align:left;margin:0 0 8px;font-size:30px}
.cta-box p{margin:0;color:#555}
.cta-actions{display:flex;gap:14px;flex-wrap:wrap}

/* Footer dropdowns only */
.footer{
  background:#101317;
  color:#fff;
  padding:46px clamp(22px,4vw,64px) 28px;
}
.footer-inner{
  max-width:var(--max);
  margin:auto;
  display:grid;
  grid-template-columns:1fr 2.4fr;
  gap:42px;
}
.footer-brand img{width:120px;margin-bottom:12px}
.footer-brand p{color:#d8d8d8;margin:0;max-width:330px}
.footer-dropdowns{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.footer details{
  border:1px solid rgba(255,255,255,.16);
  border-radius:14px;
  background:rgba(255,255,255,.045);
  overflow:hidden;
}
.footer summary{
  cursor:pointer;
  list-style:none;
  padding:14px 16px;
  color:var(--gold);
  font-weight:950;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.footer summary::-webkit-details-marker{display:none}
.footer summary:after{content:"▾";color:#fff}
.footer details[open] summary:after{content:"▴"}
.footer a{
  display:block;
  color:#ddd;
  text-decoration:none;
  padding:8px 16px;
  border-top:1px solid rgba(255,255,255,.08);
  font-size:14px;
}
.footer a:hover{background:rgba(255,255,255,.06);color:#fff}
.legal{
  max-width:var(--max);
  margin:28px auto 0;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.12);
  color:#aaa;
  font-size:13px;
  display:flex;
  justify-content:space-between;
  gap:18px;
  flex-wrap:wrap;
}

/* Mobile */
.mobile-callbar{display:none}
@media(max-width:1050px){
  .site-header{height:auto;min-height:88px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}
  .nav{order:3;width:100%;justify-content:center;flex-wrap:wrap}
  .hero{grid-template-columns:1fr}
  .hero-copy{background:#fff;padding:40px 24px}
  .hero-image{min-height:420px}
  .cards4{grid-template-columns:repeat(2,1fr)}
  .apartment-grid{grid-template-columns:1fr 1fr}
  .benefits{grid-template-columns:repeat(3,1fr)}
  .footer-inner{grid-template-columns:1fr}
  .footer-dropdowns{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
  body{padding-bottom:74px}
  .logo img{width:82px}
  .nav{justify-content:flex-start;gap:14px;font-size:14px}
  .header-actions{width:100%;justify-content:space-between}
  .phone{font-size:15px}
  .whatsapp-top{padding:10px 12px;border-radius:10px}
  h1{font-size:clamp(40px,13vw,54px)}
  .lead{font-size:16px}
  .checks{grid-template-columns:1fr}
  .btn{width:100%}
  .hero-image{min-height:310px}
  .cards4,.apartment-grid,.benefits{grid-template-columns:1fr}
  .cta-box{grid-template-columns:1fr;padding:24px}
  .footer-dropdowns{grid-template-columns:1fr}
  .mobile-callbar{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    position:fixed;
    left:10px;right:10px;bottom:10px;
    z-index:99;
  }
  .mobile-callbar a{
    text-align:center;
    text-decoration:none;
    border-radius:999px;
    padding:13px 10px;
    font-weight:950;
  }
  .mobile-callbar .call{background:#111;color:#fff}
  .mobile-callbar .wa{background:var(--red);color:#fff}
}



/* === Standard-Fix: WhatsApp grün, Telefon-Icons, Footer-Logo invertiert === */
:root{
  --whatsapp:#25D366;
  --whatsapp-dark:#128C7E;
}

/* inline SVG icons via mask */
.icon-wa,
.icon-phone{
  width:1.05em;
  height:1.05em;
  display:inline-block;
  flex:0 0 auto;
  margin-right:.55em;
  vertical-align:-.16em;
  background:currentColor;
}
.icon-wa{
  background:var(--whatsapp);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M16.02 3C8.86 3 3.05 8.81 3.05 15.97c0 2.28.6 4.51 1.74 6.47L3 29l6.74-1.77a12.93 12.93 0 0 0 6.28 1.6h.01C23.19 28.83 29 23.01 29 15.86 29 8.81 23.18 3 16.02 3Zm0 23.64h-.01c-1.92 0-3.8-.52-5.43-1.5l-.39-.23-4 1.05 1.07-3.9-.25-.4a10.72 10.72 0 0 1-1.66-5.69c0-5.88 4.79-10.66 10.68-10.66 2.85 0 5.53 1.11 7.54 3.13a10.58 10.58 0 0 1 3.13 7.53c0 5.88-4.79 10.67-10.68 10.67Zm5.85-7.99c-.32-.16-1.9-.94-2.2-1.05-.29-.11-.51-.16-.72.16-.21.32-.82 1.05-1 1.26-.19.21-.37.24-.69.08-.32-.16-1.36-.5-2.59-1.6-.96-.85-1.6-1.9-1.79-2.22-.19-.32-.02-.49.14-.65.15-.14.32-.37.48-.56.16-.19.21-.32.32-.53.11-.21.05-.4-.03-.56-.08-.16-.72-1.74-.99-2.38-.26-.63-.53-.54-.72-.55h-.61c-.21 0-.56.08-.85.4-.29.32-1.12 1.09-1.12 2.66 0 1.57 1.15 3.09 1.31 3.3.16.21 2.27 3.46 5.5 4.85.77.33 1.37.53 1.84.68.77.25 1.47.21 2.03.13.62-.09 1.9-.78 2.17-1.53.27-.75.27-1.39.19-1.53-.08-.13-.29-.21-.61-.37Z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M16.02 3C8.86 3 3.05 8.81 3.05 15.97c0 2.28.6 4.51 1.74 6.47L3 29l6.74-1.77a12.93 12.93 0 0 0 6.28 1.6h.01C23.19 28.83 29 23.01 29 15.86 29 8.81 23.18 3 16.02 3Zm0 23.64h-.01c-1.92 0-3.8-.52-5.43-1.5l-.39-.23-4 1.05 1.07-3.9-.25-.4a10.72 10.72 0 0 1-1.66-5.69c0-5.88 4.79-10.66 10.68-10.66 2.85 0 5.53 1.11 7.54 3.13a10.58 10.58 0 0 1 3.13 7.53c0 5.88-4.79 10.67-10.68 10.67Zm5.85-7.99c-.32-.16-1.9-.94-2.2-1.05-.29-.11-.51-.16-.72.16-.21.32-.82 1.05-1 1.26-.19.21-.37.24-.69.08-.32-.16-1.36-.5-2.59-1.6-.96-.85-1.6-1.9-1.79-2.22-.19-.32-.02-.49.14-.65.15-.14.32-.37.48-.56.16-.19.21-.32.32-.53.11-.21.05-.4-.03-.56-.08-.16-.72-1.74-.99-2.38-.26-.63-.53-.54-.72-.55h-.61c-.21 0-.56.08-.85.4-.29.32-1.12 1.09-1.12 2.66 0 1.57 1.15 3.09 1.31 3.3.16.21 2.27 3.46 5.5 4.85.77.33 1.37.53 1.84.68.77.25 1.47.21 2.03.13.62-.09 1.9-.78 2.17-1.53.27-.75.27-1.39.19-1.53-.08-.13-.29-.21-.61-.37Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.icon-phone{
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1C10.61 21 3 13.39 3 4c0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.24.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2Z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1C10.61 21 3 13.39 3 4c0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.24.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.icon-phone.white{background:#fff;}

.phone-link{
  display:inline-flex;
  align-items:center;
}
.phone-link .icon-phone{
  background:var(--black);
}

.whatsapp-link,
.whatsapp-top{
  display:inline-flex;
  align-items:center;
}
.whatsapp-top{
  background:var(--whatsapp) !important;
  color:#fff !important;
  box-shadow:0 12px 28px rgba(37,211,102,.24) !important;
}
.whatsapp-top .icon-wa{
  background:#fff;
}
.whatsapp-outline{
  border-color:var(--whatsapp) !important;
  color:var(--whatsapp-dark) !important;
}
.whatsapp-outline .icon-wa{
  background:var(--whatsapp);
}

.mobile-callbar .wa{
  background:var(--whatsapp) !important;
  color:#fff !important;
}
.mobile-callbar .wa .icon-wa{
  background:#fff;
}
.mobile-callbar a{
  display:flex;
  align-items:center;
  justify-content:center;
}

/* Footer logo auf schwarzem Hintergrund: kein weißer Kasten, hell/invertiert */
.footer-brand img{
  filter:brightness(0) invert(1);
  mix-blend-mode:screen;
}

/* Footer logo dedicated white transparent asset */
.footer-brand img{
  filter:none !important;
  mix-blend-mode:normal !important;
  background:transparent !important;
}

/* Footer dropdown structure: all SEO pages, compact and ordered */
.footer-dropdowns{
  grid-template-columns:repeat(5,minmax(135px,1fr)) !important;
}
.footer details{
  min-width:0;
}
.footer summary{
  font-size:14px;
}
@media(max-width:1100px){
  .footer-dropdowns{grid-template-columns:repeat(2,1fr) !important;}
}
@media(max-width:680px){
  .footer-dropdowns{grid-template-columns:1fr !important;}
}



/* === Hero Final Fix: ein Bild, Desktop kleiner, Mobile ohne Abschneiden === */
.hero-mobile-image{
  display:none !important;
}

.hero-image img{
  object-fit:contain !important;
  object-position:center bottom !important;
  max-height:560px !important;
  width:100% !important;
  height:auto !important;
}

.hero-image{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
  padding:18px 22px 0 !important;
  background:#dceefd !important;
}

@media(min-width:681px){
  .hero{
    grid-template-columns:44% 56% !important;
  }
  .hero-image img{
    max-width:92% !important;
  }
}

@media(max-width:680px){
  .hero{
    display:flex !important;
    flex-direction:column !important;
    min-height:auto !important;
    overflow:visible !important;
  }

  .hero-copy{
    width:100% !important;
    padding:26px 18px 14px !important;
    overflow:visible !important;
  }

  .hero h1{
    font-size:clamp(30px, 8.8vw, 40px) !important;
    line-height:1.04 !important;
    letter-spacing:-0.03em !important;
    max-width:100% !important;
    overflow:visible !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    hyphens:none !important;
  }

  .hero h1 span{
    display:block !important;
    white-space:normal !important;
  }

  .hero-image{
    width:100% !important;
    display:flex !important;
    order:2 !important;
    min-height:0 !important;
    padding:0 0 0 !important;
    margin:0 !important;
    background:#dceefd !important;
    overflow:hidden !important;
  }

  .hero-image img{
    width:100% !important;
    max-width:100% !important;
    max-height:none !important;
    height:auto !important;
    object-fit:contain !important;
    object-position:center bottom !important;
  }
}

@media(max-width:390px){
  .hero h1{
    font-size:clamp(28px, 8.2vw, 36px) !important;
  }
}

/* === Paulstraße: Startseitenkarte und Detailseite === */
.apartment-grid-single{max-width:560px;margin:0 auto;grid-template-columns:1fr!important}
.apt-photo{width:100%;height:280px;object-fit:cover}
.apt-featured .meta{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px}
.detail-hero{max-width:1180px;margin:34px auto 0;padding:0 22px}
.detail-breadcrumb{color:#666;font-size:14px;margin-bottom:20px}
.detail-breadcrumb a{text-decoration:none;color:#333}
.detail-title h1{margin:0 0 8px;font-size:clamp(32px,4vw,54px);line-height:1.05;letter-spacing:-.04em}
.detail-subtitle{font-size:18px;color:#333;margin:0 0 22px}
.detail-icons{display:flex;flex-wrap:wrap;gap:18px;margin:20px 0 28px;font-weight:850}
.detail-gallery{display:grid;grid-template-columns:2fr 1fr;gap:14px;max-width:1180px;margin:28px auto;padding:0 22px}
.detail-gallery img{width:100%;height:100%;object-fit:cover;border-radius:16px}
.detail-gallery-main{min-height:500px}
.detail-gallery-side{display:grid;grid-template-columns:1fr;gap:14px}
.detail-gallery-side img{min-height:155px}
.detail-content{max-width:1180px;margin:38px auto 80px;padding:0 22px;display:grid;grid-template-columns:1.5fr .8fr;gap:34px;align-items:start}
.detail-text h2{font-size:30px;margin:0 0 16px}
.detail-text p{font-size:17px;color:#333}
.detail-list{list-style:none;padding:0;margin:24px 0;display:grid;grid-template-columns:1fr 1fr;gap:12px 22px}
.detail-list li:before{content:"✓";color:var(--red);margin-right:9px;font-weight:950}
.detail-card{border:1px solid var(--line);border-radius:22px;box-shadow:0 12px 34px rgba(0,0,0,.08);padding:26px;background:#fff;position:sticky;top:112px}
.detail-card .price strong{font-size:38px}
.detail-card .btn{width:100%;margin-top:12px}
.map-box{margin-top:28px;border-radius:18px;overflow:hidden;border:1px solid var(--line)}
.map-box iframe{display:block;width:100%;height:300px;border:0}
@media(max-width:820px){.detail-gallery{grid-template-columns:1fr}.detail-gallery-main{min-height:auto}.detail-gallery-side{grid-template-columns:1fr 1fr}.detail-content{grid-template-columns:1fr}.detail-card{position:static}}
@media(max-width:560px){.apt-featured .meta,.detail-list{grid-template-columns:1fr}.detail-gallery-side{grid-template-columns:1fr}}

/* === Detailseite Paulstraße: Galerie, Swipe, Icons === */
.property-page{background:#fff}
.property-top{max-width:1180px;margin:34px auto 0;padding:0 22px;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:start}
.property-top h1{margin:0 0 8px;font-size:clamp(34px,4.5vw,56px);line-height:1.05;letter-spacing:-.045em}
.property-intro{font-size:18px;color:#333;margin:0}
.property-price-mini{border:1px solid var(--line);border-radius:18px;padding:22px 32px;text-align:center;box-shadow:0 12px 32px rgba(0,0,0,.06);background:#fff}
.property-price-mini strong{font-size:42px;color:#14933a}
.property-price-mini span,.property-price-mini em{display:block}.property-price-mini em{color:#777;font-style:normal}
.property-gallery{max-width:1180px;margin:28px auto 0;padding:0 22px;display:grid;grid-template-columns:2fr 1.2fr;gap:12px}
.gallery-main-wrap{position:relative;min-height:520px;border-radius:16px;overflow:hidden;background:#eee}
.gallery-main-img{width:100%;height:100%;object-fit:cover;display:block}
.gallery-thumbs{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.gallery-thumb{border:0;padding:0;border-radius:14px;overflow:hidden;cursor:pointer;background:#eee;position:relative}
.gallery-thumb img{width:100%;height:100%;min-height:250px;object-fit:cover;display:block}
.gallery-thumb.is-active{outline:4px solid #14933a;outline-offset:-4px}
.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:46px;height:46px;border:0;border-radius:50%;background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.18);font-size:34px;cursor:pointer}
.gallery-prev{left:18px}.gallery-next{right:18px}
.gallery-count{position:absolute;left:18px;bottom:18px;background:rgba(0,0,0,.62);color:#fff;border-radius:999px;padding:7px 12px;font-weight:850}
.gallery-dots{display:flex;justify-content:center;gap:10px;grid-column:1/-1;margin:8px 0 0}
.gallery-dots span{width:10px;height:10px;border-radius:50%;background:#ddd;display:block}.gallery-dots .is-active{background:#14933a}
.amenity-strip{max-width:1180px;margin:28px auto 0;padding:20px 22px;border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 32px rgba(0,0,0,.06);display:grid;grid-template-columns:repeat(6,1fr);gap:0;background:#fff}
.amenity-strip div{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 14px;border-right:1px solid var(--line)}.amenity-strip div:last-child{border-right:0}.amenity-strip span{font-size:28px}.amenity-strip strong{font-size:15px}
.property-content{max-width:1180px;margin:38px auto 70px;padding:0 22px;display:grid;grid-template-columns:1.45fr .8fr;gap:38px;align-items:start}
.property-main h2{font-size:28px;margin:0 0 16px}.property-main p{font-size:17px;color:#333}
.pretty-checks{list-style:none;padding:0;margin:26px 0;display:grid;grid-template-columns:1fr 1fr;gap:12px 30px}.pretty-checks li:before{content:"✓";color:#14933a;margin-right:10px;font-weight:950}
.property-main hr{border:0;border-top:1px solid var(--line);margin:34px 0}
.map-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}.map-card iframe{width:100%;height:260px;border:0;display:block}.map-footer{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 18px}.map-footer a{text-decoration:none;border:1px solid var(--line);border-radius:10px;padding:8px 12px;font-weight:850}
.booking-card{border:1px solid var(--line);border-radius:22px;padding:28px;background:#fff;box-shadow:0 16px 42px rgba(0,0,0,.08);position:sticky;top:112px}.booking-card h2{margin-top:0}.booking-price strong{font-size:42px;color:#14933a}.booking-price span{display:block;font-weight:850}.booking-card p{color:#777}
.booking-whatsapp,.booking-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;border-radius:12px;text-decoration:none;font-weight:950;padding:14px 16px;margin-top:12px}
.booking-whatsapp{background:#17933a;color:#fff}.booking-whatsapp .icon-wa{background:#fff}.booking-button{border:1px solid #1f2937;color:#111;background:#fff}
.booking-benefits{list-style:none;margin:28px 0 0;padding:0}.booking-benefits li{margin:14px 0}.booking-benefits li:before{content:"✓";color:#14933a;margin-right:10px}
.more-impressions{max-width:1180px;margin:0 auto 80px;padding:0 22px}.more-impressions h2{font-size:28px}.impression-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.impression-row img{width:100%;height:170px;object-fit:cover;border-radius:14px}
@media(max-width:900px){.property-top{grid-template-columns:1fr}.property-price-mini{display:none}.property-gallery{display:block}.gallery-main-wrap{min-height:0}.gallery-main-img{height:auto}.gallery-thumbs{margin-top:12px;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.gallery-thumb{min-width:74%;scroll-snap-align:center}.gallery-thumb img{min-height:180px;height:180px}.amenity-strip{grid-template-columns:repeat(2,1fr)}.amenity-strip div{border-right:0;border-bottom:1px solid var(--line)}.property-content{grid-template-columns:1fr}.booking-card{position:static}.impression-row{display:flex;overflow-x:auto}.impression-row img{min-width:72%}}
@media(max-width:560px){.property-top h1{font-size:34px}.pretty-checks{grid-template-columns:1fr}.gallery-arrow{width:40px;height:40px;font-size:28px}.map-footer{align-items:flex-start;flex-direction:column}.amenity-strip{grid-template-columns:1fr}}

/* === Apartment Berlin Mitte Detailseite: Mockup-Layout === */
.property-mockup{background:#fff}
.property-top{max-width:1180px;margin:34px auto 0;padding:0 22px;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:start}
.property-top h1{margin:0 0 8px;font-size:clamp(34px,4.5vw,56px);line-height:1.05;letter-spacing:-.045em}
.property-intro{font-size:18px;color:#333;margin:0}.detail-subtitle{font-size:20px;font-weight:850;color:#111;margin:0 0 16px}
.property-price-mini{border:1px solid var(--line);border-radius:18px;padding:22px 32px;text-align:center;box-shadow:0 12px 32px rgba(0,0,0,.06);background:#fff}
.property-price-mini strong{font-size:42px;color:#14933a}.property-price-mini span,.property-price-mini em{display:block}.property-price-mini em{color:#777;font-style:normal}
.property-gallery{max-width:1180px;margin:28px auto 0;padding:0 22px;display:grid;grid-template-columns:2fr 1.2fr;gap:12px}
.gallery-main-wrap{position:relative;min-height:520px;border-radius:16px;overflow:hidden;background:#eee}.gallery-main-img{width:100%;height:100%;object-fit:cover;display:block}
.gallery-thumbs{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gallery-thumb{border:0;padding:0;border-radius:14px;overflow:hidden;cursor:pointer;background:#eee;position:relative}.gallery-thumb img{width:100%;height:100%;min-height:250px;object-fit:cover;display:block}.gallery-thumb.is-active{outline:4px solid #14933a;outline-offset:-4px}
.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:46px;height:46px;border:0;border-radius:50%;background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.18);font-size:34px;cursor:pointer}.gallery-prev{left:18px}.gallery-next{right:18px}
.gallery-count{position:absolute;left:18px;bottom:18px;background:rgba(0,0,0,.62);color:#fff;border-radius:999px;padding:7px 12px;font-weight:850}.gallery-dots{display:flex;justify-content:center;gap:10px;grid-column:1/-1;margin:8px 0 0}.gallery-dots span{width:10px;height:10px;border-radius:50%;background:#ddd;display:block}.gallery-dots .is-active{background:#14933a}
.amenity-strip{max-width:1180px;margin:28px auto 0;padding:20px 22px;border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 32px rgba(0,0,0,.06);display:grid;grid-template-columns:repeat(6,1fr);gap:0;background:#fff}.amenity-strip div{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 14px;border-right:1px solid var(--line)}.amenity-strip div:last-child{border-right:0}.amenity-strip span{font-size:28px}.amenity-strip strong{font-size:15px}
.property-content{max-width:1180px;margin:38px auto 70px;padding:0 22px;display:grid;grid-template-columns:1.45fr .8fr;gap:38px;align-items:start}.property-main h2{font-size:28px;margin:0 0 16px}.property-main p{font-size:17px;color:#333}.pretty-checks{list-style:none;padding:0;margin:26px 0;display:grid;grid-template-columns:1fr 1fr;gap:12px 30px}.pretty-checks li:before{content:"✓";color:#14933a;margin-right:10px;font-weight:950}.property-main hr{border:0;border-top:1px solid var(--line);margin:34px 0}
.map-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}.map-card iframe{width:100%;height:260px;border:0;display:block}.map-footer{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 18px}.map-footer a{text-decoration:none;border:1px solid var(--line);border-radius:10px;padding:8px 12px;font-weight:850}
.booking-card{border:1px solid var(--line);border-radius:22px;padding:28px;background:#fff;box-shadow:0 16px 42px rgba(0,0,0,.08);position:sticky;top:112px}.booking-card h2{margin-top:0}.booking-price strong{font-size:42px;color:#14933a}.booking-price span{display:block;font-weight:850}.booking-card p{color:#777}.booking-whatsapp,.booking-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;border-radius:12px;text-decoration:none;font-weight:950;padding:14px 16px;margin-top:12px}.booking-whatsapp{background:#17933a;color:#fff}.booking-whatsapp .icon-wa{background:#fff}.booking-button{border:1px solid #1f2937;color:#111;background:#fff}.booking-benefits{list-style:none;margin:28px 0 0;padding:0}.booking-benefits li{margin:14px 0}.booking-benefits li:before{content:"✓";color:#14933a;margin-right:10px}
.more-impressions{max-width:1180px;margin:0 auto 80px;padding:0 22px}.more-impressions h2{font-size:28px}.impression-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.impression-row img{width:100%;height:170px;object-fit:cover;border-radius:14px}
@media(max-width:900px){.property-top{grid-template-columns:1fr}.property-price-mini{display:none}.property-gallery{display:block}.gallery-main-wrap{min-height:0}.gallery-main-img{height:auto}.gallery-thumbs{margin-top:12px;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.gallery-thumb{min-width:74%;scroll-snap-align:center}.gallery-thumb img{min-height:180px;height:180px}.amenity-strip{grid-template-columns:repeat(2,1fr)}.amenity-strip div{border-right:0;border-bottom:1px solid var(--line)}.property-content{grid-template-columns:1fr}.booking-card{position:static}.impression-row{display:flex;overflow-x:auto}.impression-row img{min-width:72%}}
@media(max-width:560px){.property-top h1{font-size:34px}.pretty-checks{grid-template-columns:1fr}.gallery-arrow{width:40px;height:40px;font-size:28px}.map-footer{align-items:flex-start;flex-direction:column}.amenity-strip{grid-template-columns:1fr}}

/* === Fix: Header bündig, Preise, FAQ === */
.site-header{height:88px!important;min-height:88px!important;align-items:center!important;overflow:hidden!important}
.logo img,.brand img{max-height:70px!important;width:auto!important;display:block!important}
.section-kicker{text-align:center;color:var(--red);font-weight:950;text-transform:uppercase;letter-spacing:.12em;margin:0 0 8px}
.section-intro{max-width:760px;margin:0 auto 28px;text-align:center;color:#4b5563;font-size:17px}
.prices-section{padding-top:52px}
.price-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:980px;margin:0 auto}
.price-card{border:1px solid var(--line);border-radius:20px;background:#fff;text-align:center;padding:28px 22px;box-shadow:0 12px 32px rgba(0,0,0,.06)}
.price-card.featured{border-color:#ffd3d7;background:linear-gradient(135deg,#fff7f7,#fff)}
.price-label{display:inline-block;font-weight:900;margin-right:4px}
.price-card strong{font-size:42px;color:var(--red);line-height:1}
.price-card p{font-weight:950;margin:8px 0 4px}
.price-card small{color:#6b7280}
.price-note{max-width:980px;margin:20px auto 0;background:#fff7f7;border:1px solid #ffd3d7;border-radius:16px;padding:18px 20px;color:#333}
.faq-section{padding-top:44px}
.faq-list{max-width:920px;margin:0 auto;display:grid;gap:12px}
.faq-list details{border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 10px 26px rgba(0,0,0,.045);overflow:hidden}
.faq-list summary{cursor:pointer;font-weight:950;padding:18px 20px;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:"+";color:var(--red);font-size:24px;line-height:1}
.faq-list details[open] summary:after{content:"–"}
.faq-list p{margin:0;padding:0 20px 18px;color:#4b5563}
@media(max-width:800px){.price-cards{grid-template-columns:1fr}.site-header{overflow:visible!important;height:auto!important;min-height:80px!important}.logo img,.brand img{max-height:62px!important}}

/* === Preisstaffel + finaler Header-Logo-Fix === */
.site-header{
  height:82px!important;
  min-height:82px!important;
  max-height:82px!important;
  padding-top:8px!important;
  padding-bottom:8px!important;
  align-items:center!important;
  overflow:hidden!important;
}
.site-header .logo,
.site-header .brand{
  display:flex!important;
  align-items:center!important;
  height:66px!important;
  max-height:66px!important;
  overflow:hidden!important;
}
.site-header .logo img,
.site-header .brand img{
  height:58px!important;
  max-height:58px!important;
  width:auto!important;
  object-fit:contain!important;
  display:block!important;
}
.price-table-wrap{
  max-width:980px;
  margin:0 auto 22px;
  border:1px solid var(--line);
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 14px 36px rgba(0,0,0,.07);
  background:#fff;
}
.price-table{
  width:100%;
  border-collapse:collapse;
  font-size:15px;
}
.price-table th{
  background:#111317;
  color:#fff;
  text-align:left;
  padding:16px 18px;
}
.price-table td{
  padding:16px 18px;
  border-top:1px solid var(--line);
}
.price-table tbody tr.highlight{
  background:#fff6f6;
}
.price-table tbody tr.highlight td:nth-child(3){
  color:var(--red);
  font-weight:950;
  font-size:18px;
}
.price-mini-cards{
  margin-top:22px;
}
@media(max-width:760px){
  .site-header{
    height:auto!important;
    max-height:none!important;
    min-height:76px!important;
    overflow:visible!important;
  }
  .site-header .logo,
  .site-header .brand{
    height:58px!important;
    max-height:58px!important;
  }
  .site-header .logo img,
  .site-header .brand img{
    height:52px!important;
    max-height:52px!important;
  }
  .price-table-wrap{
    overflow-x:auto;
  }
  .price-table{
    min-width:720px;
  }
}

/* === CACHEBUST V30: Preise + Header wirklich sichtbar === */
.fixed-logo-header,
.site-header{
  height:74px!important;
  min-height:74px!important;
  max-height:74px!important;
  padding-top:6px!important;
  padding-bottom:6px!important;
  align-items:center!important;
  overflow:hidden!important;
}
.fixed-logo-header .logo,
.site-header .logo,
.fixed-logo-header .brand,
.site-header .brand{
  height:58px!important;
  max-height:58px!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
}
.fixed-logo-header .logo img,
.site-header .logo img,
.fixed-logo-header .brand img,
.site-header .brand img{
  height:52px!important;
  max-height:52px!important;
  width:auto!important;
  object-fit:contain!important;
  object-position:center!important;
}
.price-table-wrap{
  max-width:980px!important;
  margin:0 auto 22px!important;
  border:1px solid var(--line)!important;
  border-radius:20px!important;
  overflow:hidden!important;
  box-shadow:0 14px 36px rgba(0,0,0,.07)!important;
  background:#fff!important;
}
.price-table{width:100%!important;border-collapse:collapse!important;font-size:15px!important}
.price-table th{background:#111317!important;color:#fff!important;text-align:left!important;padding:16px 18px!important}
.price-table td{padding:16px 18px!important;border-top:1px solid var(--line)!important}
.price-table tbody tr.highlight{background:#fff1f2!important}
.price-table tbody tr.highlight td:nth-child(3){color:var(--red)!important;font-weight:950!important;font-size:19px!important}
.price-note{max-width:980px!important;margin:20px auto 0!important;background:#fff7f7!important;border:1px solid #ffd3d7!important;border-radius:16px!important;padding:18px 20px!important;color:#333!important}
@media(max-width:760px){
  .fixed-logo-header,.site-header{height:auto!important;max-height:none!important;min-height:72px!important;overflow:visible!important}
  .price-table-wrap{overflow-x:auto!important}
  .price-table{min-width:720px!important}
}
