/* V042 – ausschließlich Hausidee EFH 01 und ihre zwei Einstiegspunkte */
.v042-efh .v042-detail-head{background:#f6f5f1;padding:0 0 clamp(54px,6vw,94px)}
.v042-breadcrumb{padding:26px 0 32px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-size:12px;color:#686d68}
.v042-breadcrumb a{color:#3c4540;text-decoration:none}.v042-breadcrumb a:hover{text-decoration:underline}
.v042-efh .v042-intro-grid{display:grid;grid-template-columns:minmax(0,.91fr) minmax(0,1.09fr);gap:clamp(34px,4vw,68px);align-items:start}
.v042-efh .v042-intro-copy{padding-top:clamp(8px,2vw,35px);max-width:580px}
.v042-efh .v042-intro-copy h1{font-size:clamp(38px,3.85vw,58px);line-height:1.09;letter-spacing:-.045em;margin:12px 0 24px;color:#1e2924}
.v042-efh .v042-intro-copy h1 em{font-style:normal;color:#ae1726}
.v042-efh .v042-intro-copy>p:not(.kicker){color:#4c5650;line-height:1.7;margin:0 0 18px;font-size:15px}
.v042-efh .v042-intro-copy .v042-lead{font-size:clamp(18px,1.8vw,23px)!important;color:#27322d!important;line-height:1.46!important;margin-bottom:20px!important}
.v042-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #dadbd5;border-bottom:1px solid #dadbd5;margin:29px 0 26px}
.v042-facts span{padding:17px 11px 16px 0;font-size:13px;color:#202d26}
.v042-facts span+span{border-left:1px solid #dadbd5;padding-left:15px}
.v042-facts strong{display:block;color:#69746c;font-size:10px;letter-spacing:.11em;text-transform:uppercase;margin-bottom:8px}
.v042-intro-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}
.v042-efh .v042-draft-notice{font-size:12px!important;color:#667069!important;margin-top:22px!important}
.v042-gallery{min-width:0}.v042-stage{margin:0;position:relative}
.v042-stage>a{display:block;aspect-ratio:5/4;position:relative;overflow:hidden;background:#e7e8e2}
.v042-stage>a img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.v042-stage-zoom{position:absolute;right:12px;bottom:12px;font-size:11px;font-weight:700;background:white;color:#1a2420;padding:11px 12px;box-shadow:0 2px 15px #0002}
.v042-stage>figcaption{font-size:12px;color:#49544e;margin-top:11px}
.v042-gallery-controls{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:20px 0 14px}
.v042-gallery-head h2{font-size:22px;line-height:1.15;letter-spacing:-.03em;margin:0 0 4px}
.v042-gallery-head p{font-size:12px;color:#606a62;margin:0}
.v042-facade{display:flex;border:0;padding:0;margin:0;flex-wrap:wrap;gap:0;align-items:center}
.v042-facade legend{font-size:11px;color:#5e6861;margin:0 0 5px}
.v042-facade label{position:relative;cursor:pointer}
.v042-facade label input{position:absolute;opacity:0;width:1px;height:1px}
.v042-facade label span{display:block;padding:9px 16px;border:1px solid #b5bdb7;background:#fff;color:#323e36;font-size:12px;font-weight:700}
.v042-facade label+label span{border-left:0}
.v042-facade label input:checked+span{background:#af1322;color:#fff;border-color:#af1322}
.v042-facade label input:focus-visible+span{outline:3px solid #b94e56;outline-offset:2px}
.v042-thumbnails{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.v042-thumbnails button{padding:0 0 8px;border:0;border-bottom:2px solid transparent;background:transparent;color:#455048;font:inherit;cursor:pointer;text-align:left}
.v042-thumbnails button.is-active{border-bottom-color:#b20f20;color:#202923}
.v042-thumbnails button img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;opacity:.78;transition:opacity .2s}
.v042-thumbnails button.is-active img,.v042-thumbnails button:hover img{opacity:1}
.v042-thumbnails button span{font-size:11px;display:block;margin-top:7px;font-weight:650}
.v042-thumbnails button:focus-visible{outline:3px solid #bd5963;outline-offset:3px}
.v042-floor-section{padding:clamp(60px,7vw,100px) 0;background:#fff;scroll-margin-top:100px}
.v042-section-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:clamp(30px,5vw,75px);align-items:end;margin-bottom:34px}
.v042-section-intro h2,.v042-story-grid h2{font-size:clamp(32px,3.3vw,47px);line-height:1.14;letter-spacing:-.035em;margin:10px 0 0;color:#1d2823}
.v042-section-intro>p,.v042-story-grid p{font-size:15px;color:#505b53;line-height:1.75;margin:0}
.v042-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.v042-plan-card{border:1px solid #e2e5df;background:#fafaf8;min-width:0}
.v042-plan-top{display:flex;justify-content:space-between;align-items:center;padding:19px 22px 0}
.v042-plan-top h3{font-size:22px;line-height:1.15;letter-spacing:-.035em;margin:0}.v042-plan-top span{font-size:11px;letter-spacing:.11em;color:#a61220;font-weight:750}
.v042-plan-card>a{display:block;overflow:hidden;margin:8px 10px 0;background:white}
.v042-plan-card>a img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
.v042-plan-card>a:focus-visible{outline:3px solid #b51522;outline-offset:2px}
.v042-plan-foot{padding:6px 22px 22px}
.v042-plan-foot p{color:#505b53;line-height:1.55;font-size:13px;margin:0 0 10px;min-height:42px}
.v042-plan-foot a{font-weight:700;font-size:12px;color:#b11022;text-decoration:none}
.v042-plan-foot a:hover{text-decoration:underline}
.v042-floor-note{font-size:12px;color:#687169;line-height:1.65;max-width:950px;margin:25px 0 0}
.v042-story-section{padding:clamp(60px,7vw,100px) 0;background:#f6f5f1}
.v042-story-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.75fr);gap:clamp(40px,9vw,150px);align-items:start}
.v042-story-grid>div>p:not(.kicker){margin:23px 0 0}
.v042-story-aside{border-top:3px solid #ac1424;padding:28px 30px 30px;background:#fff}
.v042-story-aside h3{font-size:24px;line-height:1.25;margin:0 0 18px}
.v042-story-aside ul{padding-left:20px;list-style:disc;margin:0 0 20px}
.v042-story-aside li{margin:0 0 13px;color:#38443b;font-size:14px}
.v042-story-aside p{font-size:13px;line-height:1.65;margin-bottom:19px}
.v042-story-aside a{font-size:13px}
.v042-lightbox{position:fixed;max-width:min(96vw,1500px);max-height:95dvh;width:max-content;overflow:auto;border:0;padding:0;background:#fff;color:#1b2921;box-shadow:0 10px 55px #0005}
.v042-lightbox::backdrop{background:rgba(9,16,12,.86)}
.v042-lightbox-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 17px;border-bottom:1px solid #d9ddd9;position:sticky;top:0;background:#fff;z-index:2;font-size:13px;font-weight:700}
.v042-lightbox-bar button{background:#b20e20;color:white;border:0;padding:9px 14px;font:inherit;cursor:pointer}
.v042-lightbox-body{display:flex;flex-direction:column;align-items:center;padding:12px;max-height:calc(95dvh - 64px);overflow:auto}
.v042-lightbox-body img{display:block;max-width:min(90vw,1400px);max-height:75dvh;width:auto;height:auto;object-fit:contain}
.v042-lightbox-body>a{font-size:12px;font-weight:700;margin-top:12px;color:#b20e20}
.v042-featured-idea{padding:clamp(48px,6vw,80px) 0;background:#fff}
.v042-featured-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);align-items:center;gap:clamp(36px,5vw,80px)}
.v042-featured-media img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block}
.v042-featured-copy h2{font-size:clamp(33px,3.4vw,46px);letter-spacing:-.035em;margin:8px 0 14px}
.v042-featured-copy p:not(.kicker){font-size:15px;line-height:1.65;color:#4b554e}
.v042-featured-copy .v042-featured-lead{font-weight:700;color:#25342a!important;font-size:19px!important}
.v042-featured-copy .v042-featured-small{font-size:12px!important;color:#656d66!important;margin:18px 0 23px}
.v042-ideas-teaser{font-size:14px;color:#47524b;padding:19px 24px;background:#f6f5f1;margin:27px 0 0}
.v042-ideas-teaser a{color:#af1423;font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:1080px){.v042-efh .v042-intro-grid{gap:30px}.v042-efh .v042-intro-copy h1{font-size:40px}.v042-facts strong{font-size:9px}}
@media(max-width:850px){.v042-efh .v042-intro-grid,.v042-section-intro,.v042-story-grid,.v042-featured-grid{grid-template-columns:1fr}.v042-efh .v042-intro-copy{max-width:680px}.v042-efh .v042-intro-copy h1{font-size:clamp(36px,6vw,52px)}.v042-efh .v042-gallery{max-width:750px}.v042-section-intro{gap:15px}.v042-story-grid{gap:32px}}
@media(max-width:640px){.v042-breadcrumb{padding:18px 0 23px;gap:7px}.v042-efh .v042-intro-copy h1{font-size:clamp(31px,8vw,43px)}.v042-efh .v042-intro-copy .v042-lead{font-size:18px!important}.v042-gallery-controls{flex-direction:column;align-items:stretch}.v042-facade{margin-top:4px}.v042-plan-grid{grid-template-columns:1fr;gap:18px}.v042-plan-foot p{min-height:0}.v042-thumbnails{gap:7px}.v042-thumbnails button span{font-size:10px}.v042-story-aside{padding:22px}.v042-facts{margin-top:20px}.v042-facts span{font-size:11px}.v042-facts span+span{padding-left:8px}}

/* V074 – globale Vereinheitlichung der Hausdetailseiten:
   - Zusatzhinweis unter „Perspektiven & Fassaden“ ausblenden
   - Schalter „Klinker / Putz“ gleich groß und in einer Zeile */
.v042-gallery-head p{display:none}
.v042-gallery-controls{align-items:flex-start}
.v042-facade{
  display:grid;
  grid-template-columns:repeat(2,minmax(96px,1fr));
  gap:0;
  align-items:start;
  width:min(100%,220px);
  flex:none;
}
.v042-facade legend{
  grid-column:1 / -1;
  margin:0 0 6px;
}
.v042-facade label{display:block}
.v042-facade label span{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  width:100%;
  text-align:center;
}
@media(max-width:640px){
  .v042-facade{width:100%;max-width:240px}
}

/* V157 house-intro-font - START */
/* Einheitliche, ruhige Hausbeschreibungen auf allen Hausdetailseiten.
   Gilt dank gemeinsamer v042-Vorlage auch fuer künftige Hausideen.
   Kicker/Planungshinweise bleiben unveraendert. */
body.v042-efh .v042-intro-copy > p:not(.kicker):not(.v042-draft-notice) {
  font-size: 14px !important;
  line-height: 1.6 !important;
  font-weight: 400;
  color: #4c5650 !important;
  margin: 0 0 12px !important;
}
/* V157 house-intro-font - END */
