:root{
  --black:#080807;
  --black-2:#12100c;
  --gold:#caa65a;
  --gold-2:#f1d99a;
  --cream:#f7f0e2;
  --ivory:#fffaf0;
  --muted:#cfc2aa;
  --text:#1c1710;
  --white:#fff;
  --shadow:0 30px 80px rgba(0,0,0,.28);
  --radius:26px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;background:var(--cream);color:var(--text);line-height:1.6}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 20% 10%, rgba(202,166,90,.14), transparent 32rem),radial-gradient(circle at 90% 40%, rgba(255,255,255,.3), transparent 30rem);z-index:-1}
a{color:inherit}.skip-link{position:absolute;left:-999px;top:0;background:var(--gold);color:var(--black);padding:.7rem 1rem;z-index:1000}.skip-link:focus{left:1rem;top:1rem}.site-header{position:sticky;top:0;z-index:100;background:rgba(8,8,7,.86);backdrop-filter:blur(16px);border-bottom:1px solid rgba(202,166,90,.25)}
.nav{max-width:var(--max);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:1.2rem;padding:.8rem 1.2rem}.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--ivory)}.brand img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:1px solid rgba(202,166,90,.45);box-shadow:0 0 0 4px rgba(202,166,90,.08)}.brand span{display:grid;line-height:1.1}.brand strong{font-size:1.15rem;letter-spacing:.04em}.brand small{color:var(--gold-2);font-size:.75rem;text-transform:uppercase;letter-spacing:.16em}.nav-links{display:flex;align-items:center;gap:.15rem}.nav-links a{color:var(--ivory);text-decoration:none;padding:.65rem .85rem;border-radius:999px;font-size:.95rem}.nav-links a:hover{background:rgba(202,166,90,.13);color:var(--gold-2)}.nav-cta{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:var(--black)!important;font-weight:700}.nav-toggle{display:none;background:transparent;color:var(--gold-2);border:1px solid rgba(202,166,90,.45);border-radius:999px;padding:.55rem .8rem}
.hero{position:relative;overflow:hidden;background:var(--black);color:var(--ivory);min-height:calc(100svh - 78px);display:grid;align-items:center}.hero-bg{position:absolute;inset:0;background:linear-gradient(110deg,rgba(8,8,7,.98) 0%,rgba(8,8,7,.92) 46%,rgba(8,8,7,.58) 100%),url('assets/images/gebaeude-1.png') center/cover;filter:saturate(.9);transform:scale(1.02)}.hero-content{position:relative;max-width:var(--max);margin:auto;padding:clamp(3rem,8vw,7rem) 1.2rem;display:grid;grid-template-columns:1fr minmax(320px,520px);gap:clamp(2rem,5vw,4rem);align-items:center}.eyebrow{display:inline-flex;gap:.5rem;align-items:center;text-transform:uppercase;letter-spacing:.18em;color:var(--gold-2);font-weight:800;font-size:.77rem}.eyebrow:before{content:"";width:34px;height:1px;background:var(--gold)}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;line-height:1.05;margin:.35rem 0 1rem}h1{font-size:clamp(3rem,7vw,6.6rem);letter-spacing:-.06em}.lux-title{display:block;font-size:clamp(4.2rem,9vw,8.4rem);line-height:.9;letter-spacing:-.075em;background:linear-gradient(110deg,#8a6420 0%,#caa65a 22%,#fff3b8 40%,#caa65a 58%,#7a551a 78%,#f1d99a 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 22px rgba(241,217,154,.28),0 10px 35px rgba(0,0,0,.45);animation:goldShine 5.5s ease-in-out infinite}.hero-slogan{display:block;margin-top:.85rem;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;font-size:clamp(1.25rem,2.5vw,2.15rem);font-weight:700;line-height:1.25;letter-spacing:.01em;color:var(--ivory);text-shadow:0 6px 24px rgba(0,0,0,.45)}@keyframes goldShine{0%,100%{background-position:0% 50%;filter:drop-shadow(0 0 4px rgba(202,166,90,.16))}50%{background-position:100% 50%;filter:drop-shadow(0 0 16px rgba(241,217,154,.38))}}@media (prefers-reduced-motion:reduce){.lux-title{animation:none}}h2{font-size:clamp(2.1rem,4vw,4rem);letter-spacing:-.04em}h3{font-size:clamp(1.55rem,2.4vw,2.45rem);letter-spacing:-.025em}.hero p{font-size:clamp(1.05rem,1.4vw,1.28rem);color:#eadfca;max-width:60ch}.hero-actions{display:flex;flex-wrap:wrap;gap:.9rem;margin:2rem 0}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.85rem 1.2rem;border-radius:999px;text-decoration:none;border:1px solid transparent;font-weight:800;cursor:pointer}.btn-primary{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:var(--black);box-shadow:0 16px 35px rgba(202,166,90,.28)}.btn-ghost{border-color:rgba(202,166,90,.45);color:var(--gold-2);background:rgba(255,255,255,.04)}.hero-facts{display:flex;flex-wrap:wrap;gap:.65rem}.hero-facts span{border:1px solid rgba(202,166,90,.35);border-radius:999px;padding:.48rem .75rem;color:#eadfca;background:rgba(255,255,255,.05);font-size:.9rem}.image-frame{position:relative;overflow:hidden;border-radius:var(--radius);margin:0;background:#12100c;box-shadow:var(--shadow);border:1px solid rgba(202,166,90,.22);cursor:zoom-in}.scene-img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .45s ease}.image-frame:hover .scene-img{transform:scale(1.025)}.image-logo{position:absolute;right:.75rem;bottom:.75rem;width:clamp(54px,6vw,82px)!important;height:auto!important;border-radius:18px;object-fit:contain;opacity:.9;box-shadow:0 10px 30px rgba(0,0,0,.32);pointer-events:none}.image-frame figcaption{position:absolute;left:.85rem;bottom:.85rem;right:calc(86px + 1rem);background:rgba(8,8,7,.68);color:var(--ivory);border:1px solid rgba(202,166,90,.24);backdrop-filter:blur(10px);font-size:.85rem;padding:.55rem .7rem;border-radius:16px}.hero-image{aspect-ratio:4/3}.hero-image:after{content:"";position:absolute;inset:0;border:1px solid rgba(241,217,154,.18);border-radius:var(--radius);pointer-events:none}.section{max-width:var(--max);margin:0 auto;padding:clamp(4rem,8vw,7rem) 1.2rem}.section-dark{max-width:none;background:linear-gradient(180deg,var(--black),#14100c);color:var(--ivory);padding-left:0;padding-right:0}.section-dark>.section-head,.section-dark>.rooms,.section-dark>.extras-grid,.section-dark>.price-cards,.section-dark>.table-wrap,.section-dark>.fineprint,.section-dark>.detail-box{max-width:var(--max);margin-left:auto;margin-right:auto}.section-head{text-align:center;max-width:850px;margin:0 auto clamp(2rem,5vw,4rem)}.section-head p{font-size:1.08rem;color:rgba(28,23,16,.75)}.section-dark .section-head p{color:#d8ccb8}.highlight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.highlight-grid article,.extra-card{background:rgba(255,250,240,.78);border:1px solid rgba(202,166,90,.25);border-radius:22px;padding:1.25rem;box-shadow:0 16px 40px rgba(0,0,0,.06)}.highlight-grid strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:1.35rem;margin-bottom:.35rem}.highlight-grid span{color:#5c5142}.wide-panel{margin-top:1.2rem;background:#fff8e8;border:1px solid rgba(202,166,90,.3);border-radius:var(--radius);padding:clamp(1.2rem,3vw,2rem);box-shadow:0 20px 60px rgba(0,0,0,.08)}.rich-text.compact{max-height:480px;overflow:auto;padding-right:.75rem}.rooms{padding:0 1.2rem;display:grid;gap:clamp(3rem,6vw,5rem)}.room{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,4rem);align-items:center}.room--reverse .room-copy{order:2}.room-copy p,.split-copy p{font-size:1.05rem;color:inherit}.room-image{aspect-ratio:4/3}.room-image--portrait{aspect-ratio:3/4}.room-image--floorplan{aspect-ratio:3/4;background:#fff8e8}.room-image--contain .scene-img{object-fit:contain;background:#fff8e8;padding:.35rem}.check-list{list-style:none;padding:0;margin:1.2rem 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .8rem}.check-list li{position:relative;padding-left:1.5rem;color:inherit}.check-list li:before{content:"";position:absolute;left:0;top:.55rem;width:.72rem;height:.72rem;border-radius:50%;background:radial-gradient(circle,var(--gold-2),var(--gold));box-shadow:0 0 0 4px rgba(202,166,90,.13)}.detail-box{margin-top:1rem;border:1px solid rgba(202,166,90,.3);border-radius:18px;background:rgba(255,250,240,.08);overflow:hidden}.detail-box summary{cursor:pointer;font-weight:800;padding:1rem 1.1rem;color:var(--gold-2);list-style:none}.detail-box summary::-webkit-details-marker{display:none}.detail-box summary:after{content:"+";float:right}.detail-box[open] summary:after{content:"–"}.detail-box .rich-text{padding:0 1.1rem 1.1rem}.rich-text h3{font-size:1.4rem;margin-top:1.3rem}.rich-text h4{font-family:Inter,Segoe UI,Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;color:var(--gold);margin:1.2rem 0 .4rem}.rich-text p{margin:.7rem 0;color:inherit}.rich-text ul{margin:.7rem 0 1rem;padding-left:1.2rem}.extras-grid{padding:2rem 1.2rem 0;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.section-dark .extra-card{background:rgba(255,250,240,.07);color:var(--ivory)}.section-dark .extra-card p{color:#d8ccb8}.split{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(1.5rem,4vw,4rem);align-items:center}.split-image{aspect-ratio:1.25/1}.price-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;padding:0 1.2rem}.price-card{border:1px solid rgba(202,166,90,.32);border-radius:22px;background:rgba(255,250,240,.07);padding:1.15rem;display:grid;gap:.35rem}.price-card.featured{background:linear-gradient(160deg,rgba(202,166,90,.3),rgba(255,250,240,.08));box-shadow:0 18px 50px rgba(202,166,90,.16)}.price-card span{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;color:var(--gold-2);font-weight:800}.price-card strong{font-family:Georgia,'Times New Roman',serif;font-size:2.35rem;line-height:1;color:var(--ivory)}.price-card small{color:#d8ccb8}.table-wrap{padding:1.2rem;overflow:auto}.table-wrap table{width:100%;border-collapse:collapse;min-width:720px;background:rgba(255,250,240,.06);border:1px solid rgba(202,166,90,.3);border-radius:18px;overflow:hidden}.table-wrap caption{text-align:left;color:var(--gold-2);font-weight:800;margin:0 0 .75rem}.table-wrap th,.table-wrap td{padding:.9rem;border-bottom:1px solid rgba(202,166,90,.18);text-align:left}.table-wrap th{color:var(--gold-2);font-size:.9rem}.fineprint{max-width:var(--max);padding:0 1.2rem;color:#d8ccb8}.legal-mini{padding:0 1.2rem}.gallery-group{margin-top:2rem}.gallery-group h3{font-size:1.65rem}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.gallery-item{aspect-ratio:4/3}.gallery-group:first-of-type .gallery-item:nth-child(5){aspect-ratio:1.25/1}.gallery-group:first-of-type .gallery-item:nth-child(4),.gallery-group:nth-of-type(4) .gallery-item{aspect-ratio:3/4}.gallery-group:nth-of-type(4) .gallery-item:nth-child(4){aspect-ratio:1/1}.faq-list{max-width:900px;margin:auto;padding:0 1.2rem;display:grid;gap:.8rem}.faq-item{border:1px solid rgba(202,166,90,.27);border-radius:18px;background:rgba(255,250,240,.07);overflow:hidden}.faq-item summary{cursor:pointer;padding:1rem 1.15rem;font-weight:800;color:var(--gold-2);list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";float:right}.faq-item[open] summary:after{content:"–"}.faq-item p{padding:0 1.15rem 1rem;margin:0;color:#ded3c1}.contact-card{display:grid;grid-template-columns:.8fr 1fr;gap:2rem;background:linear-gradient(135deg,var(--black),#1a140e);color:var(--ivory);border-radius:var(--radius);border:1px solid rgba(202,166,90,.35);padding:clamp(1.5rem,4vw,3rem);box-shadow:var(--shadow)}.mail-form{display:grid;gap:.9rem}.mail-form label{display:grid;gap:.35rem;color:var(--gold-2);font-weight:800}.mail-form input,.mail-form textarea{width:100%;border:1px solid rgba(202,166,90,.35);border-radius:16px;background:rgba(255,255,255,.08);color:var(--ivory);padding:.85rem 1rem;font:inherit}.mail-form input::placeholder,.mail-form textarea::placeholder{color:#a99f8e}.mail-form a{color:var(--gold-2)}.legal{padding-top:3rem}.legal .section-head{text-align:left;margin-left:0}.legal-box{background:#fff8e8;color:var(--text);margin-bottom:1rem}.legal-box summary{color:#7e6229}.footer{background:var(--black);color:var(--ivory);display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1.2rem;flex-wrap:wrap}.footer-brand{display:flex;align-items:center;gap:.75rem}.footer-brand img{width:44px;height:44px;border-radius:50%;border:1px solid rgba(202,166,90,.5)}.footer-links{display:flex;gap:.8rem;flex-wrap:wrap}.footer a{color:var(--gold-2);text-decoration:none}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:1000;display:none;align-items:center;justify-content:center;padding:1.2rem}.lightbox.active{display:flex}.lightbox figure{position:relative;max-width:min(1100px,96vw);max-height:92vh;margin:0}.lightbox img:first-child{max-width:100%;max-height:86vh;border-radius:20px;display:block;object-fit:contain;box-shadow:var(--shadow)}.lightbox figcaption{color:var(--ivory);padding:.75rem 0;text-align:center}.lightbox-close{position:absolute;right:1rem;top:1rem;z-index:1001;width:46px;height:46px;border-radius:50%;border:1px solid rgba(202,166,90,.5);background:var(--black);color:var(--gold-2);font-size:2rem;line-height:1;cursor:pointer}.lightbox .image-logo{right:1rem;bottom:3.5rem}
@media (max-width:980px){.hero-content,.room,.split,.contact-card{grid-template-columns:1fr}.room--reverse .room-copy{order:0}.highlight-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}.price-cards{grid-template-columns:repeat(2,1fr)}.hero{min-height:auto}.hero-content{padding-top:3.5rem}.nav-toggle{display:inline-flex}.nav-links{position:absolute;left:1rem;right:1rem;top:74px;display:none;flex-direction:column;align-items:stretch;background:rgba(8,8,7,.96);border:1px solid rgba(202,166,90,.28);border-radius:18px;padding:.75rem}.nav-links.open{display:flex}.nav-links a{padding:.9rem 1rem}.check-list{grid-template-columns:1fr}}
@media (max-width:620px){.nav{padding:.65rem .85rem}.brand img{width:46px;height:46px}.brand small{display:none}h1{font-size:2.8rem}.section{padding:3.5rem .9rem}.highlight-grid,.gallery-grid,.price-cards,.extras-grid{grid-template-columns:1fr}.image-frame figcaption{display:none}.image-logo{width:52px!important;border-radius:14px}.hero-actions .btn{width:100%}.footer{align-items:flex-start}.footer-links{flex-direction:column}.rich-text.compact{max-height:none}}

/* LuxCux Preiskalkulator */
.price-calculator{max-width:var(--max);margin:2.2rem auto 0;padding:0 1.2rem}.calculator-copy{max-width:760px;margin-bottom:1.2rem}.calculator-copy h3{color:var(--ivory);margin-bottom:.55rem}.calculator-copy p{color:#d8ccb8;margin:0}.calculator-shell{display:grid;grid-template-columns:minmax(250px,.9fr) minmax(320px,1.25fr) minmax(260px,.85fr);gap:1rem;align-items:stretch}.calc-form,.calendar-widget,.calc-result{background:rgba(255,250,240,.075);border:1px solid rgba(202,166,90,.3);border-radius:22px;padding:1.15rem;box-shadow:0 18px 50px rgba(0,0,0,.16)}.calc-form{display:grid;gap:.85rem;align-content:start}.calc-form label{display:grid;gap:.36rem;color:var(--gold-2);font-weight:800}.calc-form input,.calc-form select{width:100%;border:1px solid rgba(202,166,90,.38);border-radius:14px;background:rgba(255,255,255,.09);color:var(--ivory);padding:.78rem .85rem;font:inherit}.calc-form select option{background:#15110d;color:#fffaf0}.calc-form input:focus,.calc-form select:focus{outline:2px solid rgba(241,217,154,.5);outline-offset:2px}.checkbox-line{grid-template-columns:auto 1fr!important;align-items:center;color:#d8ccb8!important;font-weight:650!important}.checkbox-line input{width:auto}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-bottom:.85rem}.calendar-toolbar strong{color:var(--gold-2);font-family:Georgia,'Times New Roman',serif;font-size:1.2rem}.calendar-btn{width:42px;height:42px;border-radius:50%;border:1px solid rgba(202,166,90,.42);background:rgba(255,255,255,.08);color:var(--gold-2);font-size:1.65rem;line-height:1;cursor:pointer}.calendar-btn:hover{background:rgba(202,166,90,.16)}.calendar-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.calendar-month{border:1px solid rgba(202,166,90,.22);border-radius:18px;padding:.75rem;background:rgba(8,8,7,.24)}.calendar-month h4{margin:.1rem 0 .55rem;color:var(--ivory);text-align:center;font-family:Inter,Segoe UI,Arial,sans-serif;font-size:.95rem;letter-spacing:.02em}.calendar-grid-ui{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem}.calendar-weekday{color:var(--gold-2);font-size:.72rem;text-align:center;font-weight:800;opacity:.86}.calendar-day{aspect-ratio:1/1;border:1px solid transparent;border-radius:10px;background:transparent;color:#eadfca;font:inherit;font-size:.82rem;cursor:pointer}.calendar-day:hover{border-color:rgba(241,217,154,.45);background:rgba(202,166,90,.12)}.calendar-day.is-empty{visibility:hidden;pointer-events:none}.calendar-day.is-today{border-color:rgba(202,166,90,.45)}.calendar-day.is-start,.calendar-day.is-end{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:var(--black);font-weight:900}.calendar-day.is-range{background:rgba(202,166,90,.24);border-color:rgba(202,166,90,.08)}.calendar-help{margin:.8rem 0 0;color:#d8ccb8;font-size:.9rem}.calc-result{display:grid;gap:1rem;align-content:start}.calc-result-main{padding:1rem;border-radius:18px;background:linear-gradient(160deg,rgba(202,166,90,.34),rgba(255,250,240,.07));border:1px solid rgba(202,166,90,.28)}.calc-result-main span{display:block;text-transform:uppercase;letter-spacing:.12em;color:var(--gold-2);font-size:.74rem;font-weight:900}.calc-result-main strong{display:block;margin-top:.25rem;font-family:Georgia,'Times New Roman',serif;font-size:clamp(2rem,3vw,3rem);line-height:1;color:var(--ivory)}.calc-lines{display:grid;gap:.5rem;margin:0}.calc-lines div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(202,166,90,.18);padding-bottom:.45rem}.calc-lines dt{color:#d8ccb8}.calc-lines dd{margin:0;color:var(--ivory);font-weight:800;text-align:right}.calc-result p{margin:0;color:#d8ccb8;font-size:.92rem}.calc-result .btn{width:100%}
@media (max-width:1100px){.calculator-shell{grid-template-columns:1fr 1fr}.calc-result{grid-column:1/-1}.calendar-months{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.calculator-shell,.calendar-months{grid-template-columns:1fr}.price-calculator{padding:0 .9rem}.calendar-day{font-size:.78rem;border-radius:8px}.calc-form,.calendar-widget,.calc-result{padding:.95rem}}

/* LuxCux hochwertiger Wohnungsüberblick */
.lux-overview{
  position:relative;
  overflow:hidden;
  background:linear-gradient(145deg,#0b0907 0%,#17120d 46%,#080807 100%);
  color:var(--ivory);
  border-color:rgba(202,166,90,.45);
  box-shadow:0 28px 80px rgba(0,0,0,.18);
}
.lux-overview:before{
  content:"";
  position:absolute;
  inset:-40% -20% auto auto;
  width:520px;
  height:520px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(241,217,154,.16),transparent 62%);
  pointer-events:none;
}
.overview-kicker{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  color:var(--gold-2);
  text-transform:uppercase;
  letter-spacing:.16em;
  font-weight:900;
  font-size:.76rem;
  margin-bottom:.45rem;
}
.overview-kicker:before{
  content:"";
  width:34px;
  height:1px;
  background:var(--gold);
}
.lux-overview>h3{
  position:relative;
  max-width:860px;
  margin-bottom:.9rem;
}
.overview-lead{
  position:relative;
  max-width:940px;
  color:#e8dcc7;
  font-size:1.08rem;
}
.overview-blocks{
  position:relative;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
  margin-top:1.6rem;
}
.overview-block{
  background:rgba(255,250,240,.07);
  border:1px solid rgba(202,166,90,.26);
  border-radius:22px;
  padding:1.15rem;
  box-shadow:0 18px 46px rgba(0,0,0,.16);
}
.overview-block span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:2.25rem;
  height:2.25rem;
  border-radius:999px;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  color:var(--black);
  font-weight:900;
  font-size:.78rem;
  margin-bottom:.75rem;
}
.overview-block h4,.overview-feature-panel h4,.overview-summary h4{
  margin:.15rem 0 .55rem;
  color:var(--gold-2);
  font-family:Georgia,'Times New Roman',serif;
  font-size:1.25rem;
  line-height:1.15;
}
.overview-block p{
  color:#ddd0bb;
  margin:0;
}
.overview-feature-panel,.overview-summary{
  position:relative;
  margin-top:1rem;
  background:rgba(255,250,240,.06);
  border:1px solid rgba(202,166,90,.25);
  border-radius:22px;
  padding:1.15rem;
}
.feature-list-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.55rem;
}
.feature-list-grid span{
  display:flex;
  align-items:center;
  gap:.45rem;
  min-height:44px;
  padding:.62rem .7rem;
  border-radius:14px;
  background:rgba(8,8,7,.42);
  border:1px solid rgba(202,166,90,.16);
  color:#eadfca;
  font-weight:700;
  font-size:.92rem;
}
.feature-list-grid span:before{
  content:"";
  width:.5rem;
  height:.5rem;
  border-radius:50%;
  flex:0 0 auto;
  background:radial-gradient(circle,var(--gold-2),var(--gold));
  box-shadow:0 0 0 4px rgba(202,166,90,.12);
}
.overview-summary{
  background:linear-gradient(135deg,rgba(202,166,90,.18),rgba(255,250,240,.06));
}
.overview-summary p{
  color:#efe4d1;
  margin:0;
  font-size:1.02rem;
}
.room--floorplan{
  padding:1rem;
  border:1px solid rgba(202,166,90,.24);
  border-radius:var(--radius);
  background:rgba(255,250,240,.045);
}
.room--floorplan .room-image{
  min-height:520px;
}
.room--floorplan .scene-img{
  object-fit:contain;
}
@media (max-width:980px){
  .overview-blocks{grid-template-columns:repeat(2,minmax(0,1fr))}
  .feature-list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .room--floorplan .room-image{min-height:420px}
}
@media (max-width:620px){
  .overview-blocks,.feature-list-grid{grid-template-columns:1fr}
  .lux-overview{padding:1rem}
  .room--floorplan{padding:.8rem}
  .room--floorplan .room-image{min-height:360px}
}


/* Saisonfarben im Kalender */
.season-legend{display:flex;flex-wrap:wrap;gap:.55rem .9rem;margin:.85rem 0 0;color:#d8ccb8;font-size:.86rem}.season-legend span{display:inline-flex;align-items:center;gap:.35rem}.season-legend i{width:.85rem;height:.85rem;border-radius:999px;border:1px solid rgba(241,217,154,.35);display:inline-block}.legend-top,.calendar-day.season-top{background:linear-gradient(135deg,rgba(229,178,73,.64),rgba(255,238,166,.35))}.legend-high,.calendar-day.season-high{background:rgba(202,166,90,.36)}.legend-main,.calendar-day.season-main{background:rgba(202,166,90,.24)}.legend-mid,.calendar-day.season-mid{background:rgba(255,250,240,.12)}.legend-low,.calendar-day.season-low{background:rgba(255,255,255,.04)}.calendar-day.season-top{color:#fff8d9;border-color:rgba(241,217,154,.28);font-weight:850}.calendar-day.season-high{border-color:rgba(202,166,90,.18)}.calendar-day.season-main{border-color:rgba(202,166,90,.12)}.calendar-day.season-mid{border-color:rgba(255,250,240,.1)}.calendar-day.is-disabled{opacity:.35;cursor:not-allowed}.calendar-help.small{font-size:.8rem;opacity:.88}.calc-lines dd#calcSeasonDetails{font-size:.88rem;line-height:1.35;max-width:58%;}

/* Optimierung Preiskalender */
.price-calculator .calculator-copy p{
  max-width:760px;
}
.calculator-shell{
  grid-template-columns:minmax(230px,.75fr) minmax(540px,1.65fr) minmax(250px,.85fr);
}
.calendar-widget{
  overflow:hidden;
}
.calendar-months{
  gap:1rem;
}
.calendar-month{
  min-width:0;
  padding:1rem;
}
.calendar-grid-ui{
  gap:.32rem;
  width:100%;
}
.calendar-day{
  width:100%;
  min-width:0;
  min-height:2.35rem;
  padding:0;
  display:grid;
  place-items:center;
  line-height:1;
}
.calc-lines div:has(#calcSeasonDetails){
  align-items:flex-start;
}
.calc-lines dd#calcSeasonDetails{
  max-width:62%;
  white-space:normal;
}
@media (max-width:1180px){
  .calculator-shell{
    grid-template-columns:1fr;
  }
  .calendar-months{
    grid-template-columns:repeat(2,minmax(260px,1fr));
  }
}
@media (max-width:720px){
  .calendar-months{
    grid-template-columns:1fr;
  }
  .calendar-day{
    min-height:2.65rem;
    font-size:.9rem;
  }
  .calc-lines dd#calcSeasonDetails{
    max-width:100%;
  }
}

/* LuxCux Preiskalkulator – Ergänzungen */
.conditional-field[hidden]{display:none!important}
.conditional-field{border:1px solid rgba(202,166,90,.22);border-radius:16px;padding:.85rem;background:rgba(8,8,7,.18)}
.conditional-field small{display:block;color:#d8ccb8;font-weight:500;line-height:1.45;margin-top:.35rem}
.price-examples{max-width:var(--max);margin:1.2rem auto 0}
.price-examples .table-wrap{padding:1rem}
.season-legend{display:flex;flex-wrap:wrap;gap:.55rem .9rem;margin:.85rem 0 0;color:#d8ccb8;font-size:.86rem}
.season-legend span{display:inline-flex;align-items:center;gap:.35rem}
.season-legend i{width:.85rem;height:.85rem;border-radius:999px;border:1px solid rgba(241,217,154,.35);display:inline-block}
.legend-top,.calendar-day.season-top{background:linear-gradient(135deg,rgba(229,178,73,.64),rgba(255,238,166,.35))}
.legend-high,.calendar-day.season-high{background:rgba(202,166,90,.36)}
.legend-main,.calendar-day.season-main{background:rgba(202,166,90,.24)}
.legend-mid,.calendar-day.season-mid{background:rgba(255,250,240,.12)}
.legend-low,.calendar-day.season-low{background:rgba(255,255,255,.04)}
.calendar-day.season-top{color:#fff8d9;border-color:rgba(241,217,154,.28);font-weight:850}
.calendar-day.season-high{border-color:rgba(202,166,90,.18)}
.calendar-day.season-main{border-color:rgba(202,166,90,.12)}
.calendar-day.season-mid{border-color:rgba(255,250,240,.1)}
.calendar-day.is-disabled{opacity:.35;cursor:not-allowed}
.calculator-shell{grid-template-columns:minmax(230px,.75fr) minmax(540px,1.65fr) minmax(250px,.85fr)}
.calendar-widget{overflow:hidden}
.calendar-months{gap:1rem}
.calendar-month{min-width:0;padding:1rem}
.calendar-grid-ui{gap:.32rem;width:100%}
.calendar-day{width:100%;min-width:0;min-height:2.35rem;padding:0;display:grid;place-items:center;line-height:1}
.calc-lines div:has(#calcSeasonDetails){align-items:flex-start}
.calc-lines dd#calcSeasonDetails{font-size:.88rem;line-height:1.35;max-width:62%;white-space:normal}
@media (max-width:1180px){.calculator-shell{grid-template-columns:1fr}.calendar-months{grid-template-columns:repeat(2,minmax(260px,1fr))}.calc-result{grid-column:auto}}
@media (max-width:720px){.calendar-months{grid-template-columns:1fr}.calendar-day{min-height:2.65rem;font-size:.9rem}.calc-lines dd#calcSeasonDetails{max-width:100%}}



/* Synchroner Anfrage-Preiskalkulator */
.calc-subfield[hidden]{display:none!important}
.calc-subfield{border-left:2px solid rgba(202,166,90,.45);padding-left:.85rem;margin-top:-.35rem}
.calc-subfield label{font-size:.95rem}.calc-subfield small,.calc-form small{display:block;color:#d8ccb8;font-weight:600;line-height:1.35;margin-top:.35rem}.checkbox-line--stack{align-items:flex-start!important}.checkbox-line--stack span{line-height:1.35}.calc-form input:disabled,.calc-form select:disabled{opacity:.45;cursor:not-allowed}.checkbox-line input:disabled + span{opacity:.55}.request-calculator{border:1px solid rgba(202,166,90,.3);border-radius:22px;background:rgba(255,250,240,.055);padding:1rem;display:grid;gap:1rem}.request-calc-head h3{font-size:1.45rem;margin:.35rem 0 0}.request-calc-grid{display:grid;grid-template-columns:minmax(230px,.95fr) minmax(230px,1fr);gap:1rem}.calc-form--compact,.request-calc-result{background:rgba(8,8,7,.18);box-shadow:none}.mail-form .request-calculator .eyebrow{font-size:.7rem}.mail-form .calc-lines dd#requestCalcSeasonDetails{max-width:60%;white-space:normal}.mail-form .calc-result-main strong{font-size:clamp(1.7rem,2.4vw,2.4rem)}
@media (max-width:980px){.request-calc-grid{grid-template-columns:1fr}.mail-form .calc-lines dd#requestCalcSeasonDetails{max-width:100%}}


/* LuxCux Gästebeitrag-Infoblock */
.guest-fee-card{
  max-width:var(--max);
  margin:2rem auto 0;
  padding:clamp(1.2rem,3vw,2rem);
  border:1px solid rgba(202,166,90,.34);
  border-radius:var(--radius);
  background:linear-gradient(145deg,rgba(255,250,240,.08),rgba(202,166,90,.12));
  box-shadow:0 18px 50px rgba(0,0,0,.16);
  color:var(--ivory);
}
.guest-fee-card h3{
  margin-top:.45rem;
  color:var(--ivory);
}
.guest-fee-card p{
  color:#d8ccb8;
  max-width:78ch;
}
.guest-fee-card .btn{
  margin-top:.7rem;
}

/* Verpflichtende Endreinigung */
.checkbox-line input[disabled]{
  opacity:.8;
  cursor:not-allowed;
}
.checkbox-line small{
  display:block;
  grid-column:2;
  color:#d8ccb8;
  font-weight:500;
  font-size:.82rem;
  margin-top:.15rem;
}


/* Pflicht-Endreinigung: Checkbox sichtbar, aber nicht abwählbar */
input[data-locked="true"], .cleaning-locked input[type="checkbox"]{
  pointer-events:none;
  cursor:not-allowed;
  accent-color:var(--gold);
}
.cleaning-locked{
  opacity:.95;
}
.cleaning-locked small{
  grid-column:2;
  color:#d8ccb8;
  font-weight:650;
}


/* Reparatur: Wohnungsüberblick wieder als luxuriöser schwarzer Block mit goldenen Kacheln */
.wide-panel.lux-overview{
  background:linear-gradient(145deg,#070604 0%,#11100c 42%,#050403 100%) !important;
  color:var(--ivory) !important;
  border:1px solid rgba(202,166,90,.52) !important;
  box-shadow:0 34px 90px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.05) !important;
}
.lux-overview .overview-block,
.lux-overview .overview-feature-panel,
.lux-overview .overview-summary{
  background:linear-gradient(160deg,rgba(10,9,7,.96),rgba(22,17,12,.92)) !important;
  border:1px solid rgba(202,166,90,.34) !important;
  box-shadow:0 18px 50px rgba(0,0,0,.24) !important;
}
.lux-overview .feature-list-grid span{
  background:rgba(0,0,0,.32) !important;
  border-color:rgba(202,166,90,.25) !important;
}
.lux-overview .overview-summary{
  background:linear-gradient(135deg,rgba(202,166,90,.22),rgba(8,8,7,.92)) !important;
}

/* Pflicht-Endreinigung: sichtbar angehakt, aber technisch nicht abwählbar */
.cleaning-locked input[type="checkbox"]{
  pointer-events:none !important;
  user-select:none !important;
  cursor:not-allowed !important;
  accent-color:var(--gold) !important;
}
.cleaning-locked{
  cursor:not-allowed !important;
}
.cleaning-locked span{
  color:#d8ccb8;
}


/* Zugeklappte Preisbeispiele */
.price-example-details{
  max-width:var(--max);
  margin:1.2rem auto 0;
}
.price-example-details .table-wrap{
  padding:0;
}
.price-example-details .table-wrap table{
  margin-top:.25rem;
}


/* LuxCux Gutscheincode und Preisbeispiele */
.calc-form small{
  color:#d8ccb8;
  font-weight:500;
  line-height:1.35;
}
.price-example-toggle{
  max-width:var(--max);
  margin:1.3rem auto 0;
}
.price-example-toggle > summary{
  font-size:1rem;
}


/* Reparatur obere Bereiche und Kalkulator-Hinweis */
.lux-overview{padding:clamp(1.4rem,3vw,2.2rem)}
.lux-overview .overview-lead{margin-bottom:.2rem}
#calcNote,#requestCalcNote{
  border:1px solid rgba(202,166,90,.34);
  background:linear-gradient(135deg,rgba(202,166,90,.16),rgba(255,250,240,.07));
  border-radius:16px;
  padding:.85rem 1rem;
  color:#f1e4c8;
  font-weight:750;
  box-shadow:0 12px 34px rgba(0,0,0,.15);
}
#calcNote.is-warning,#requestCalcNote.is-warning{
  border-color:rgba(255,210,112,.85);
  background:linear-gradient(135deg,rgba(255,210,112,.26),rgba(80,44,0,.34));
  color:#fff3c4;
}
.cleaning-locked input[type="checkbox"],
#calcCleaning,#requestCalcCleaning{
  pointer-events:none !important;
  cursor:not-allowed !important;
}


/* Deutlich sichtbare Kalkulator-Hinweise */
.calc-result .calc-note-box,
#calcNote,
#requestCalcNote{
  display:block;
  position:relative;
  margin-top:.45rem;
  padding:1rem 1rem 1rem 3.1rem!important;
  border:2px solid rgba(241,217,154,.85)!important;
  border-left:8px solid var(--gold-2)!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,rgba(241,217,154,.24),rgba(8,8,7,.46))!important;
  color:#fff2c8!important;
  font-weight:900!important;
  line-height:1.42!important;
  box-shadow:0 18px 44px rgba(0,0,0,.28),0 0 0 1px rgba(255,250,240,.05) inset!important;
}
.calc-result .calc-note-box:before,
#calcNote:before,
#requestCalcNote:before{
  content:"!";
  position:absolute;
  left:1rem;
  top:50%;
  transform:translateY(-50%);
  width:1.45rem;
  height:1.45rem;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  color:var(--black);
  font-weight:1000;
  box-shadow:0 6px 16px rgba(0,0,0,.28);
}
#calcNote.is-warning,
#requestCalcNote.is-warning{
  border-color:#ffd36a!important;
  border-left-color:#ffb000!important;
  background:linear-gradient(135deg,rgba(255,176,0,.38),rgba(70,20,0,.56))!important;
  color:#fff8df!important;
  animation:notePulse 1.6s ease-in-out infinite alternate;
}
@keyframes notePulse{
  from{box-shadow:0 18px 44px rgba(0,0,0,.28),0 0 0 1px rgba(255,250,240,.06) inset;}
  to{box-shadow:0 18px 50px rgba(255,176,0,.24),0 0 0 1px rgba(255,250,240,.12) inset;}
}


/* LuxCux Kalkulator-Hinweis deutlich sichtbar */
.calc-result .calc-note-box,
#calcNote,
#requestCalcNote{
  display:block!important;
  position:relative!important;
  margin-top:.7rem!important;
  padding:1rem 1rem 1rem 3.1rem!important;
  border:2px solid rgba(241,217,154,.9)!important;
  border-left:8px solid var(--gold-2)!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,rgba(241,217,154,.24),rgba(8,8,7,.50))!important;
  color:#fff2c8!important;
  font-weight:900!important;
  line-height:1.45!important;
  box-shadow:0 18px 46px rgba(0,0,0,.30),0 0 0 1px rgba(255,250,240,.06) inset!important;
}
.calc-result .calc-note-box:before,
#calcNote:before,
#requestCalcNote:before{
  content:"!";
  position:absolute;
  left:1rem;
  top:50%;
  transform:translateY(-50%);
  width:1.45rem;
  height:1.45rem;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  color:var(--black);
  font-weight:1000;
}
#calcNote.is-warning,
#requestCalcNote.is-warning{
  border-color:#ffd36a!important;
  border-left-color:#ffb000!important;
  background:linear-gradient(135deg,rgba(255,176,0,.38),rgba(70,20,0,.56))!important;
  color:#fff8df!important;
}


/* Gutscheincode normal als reguläres Formularfeld */
.calc-form label input#calcCoupon,
.calc-form label input#requestCalcCoupon{
  font-weight:700;
}
