/* Navigation, partner marks and consumer product galleries – 10 November 2026 */
#ausstellung,.smart-system[id]{scroll-margin-top:190px}
.regional-showroom .regional-detail-photo img{width:100%;height:420px;object-fit:cover}
.home-showroom-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:2.5rem}
.media-photo{margin:0;min-width:0}
.media-zoom{display:block;position:relative;background:#f1f2f0;overflow:hidden;color:#fff}
.media-zoom img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .25s ease}
.media-zoom:hover img{transform:scale(1.025)}
.media-zoom:focus-visible{outline:3px solid #008c95;outline-offset:4px}
.media-contain .media-zoom{background:#fff}
.media-contain .media-zoom img{object-fit:contain}
.zoom-hint{position:absolute;right:.6rem;bottom:.6rem;padding:.25rem .55rem;background:rgba(15,22,24,.74);border-radius:2px;font-size:.72rem;line-height:1.4;color:#fff}
.media-photo figcaption{font-size:.82rem;line-height:1.5;margin-top:.6rem;color:#384c52}
.media-photo figcaption small{display:block;font-size:.72rem;margin-top:.15rem}
.media-photo figcaption a{color:inherit;text-underline-offset:3px}
.product-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem 1rem;align-self:start;margin-block:1rem}
.partner-logos{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}
.partner-tile{display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;padding:1rem .8rem;background:#fff;border:1px solid #dbe1df;gap:.4rem;min-width:0}
.partner-tile:hover{border-color:#008d97;box-shadow:0 4px 16px #0000000b}
.partner-logo-box{display:flex;width:100%;height:70px;align-items:center;justify-content:center;margin-bottom:.6rem}
.partner-logo-box img{width:auto;max-width:100%;height:auto;max-height:64px;object-fit:contain}
.partner-tile strong{font-size:.88rem;line-height:1.4}
.partner-tile small{font-size:.74rem;line-height:1.45;color:#5b676b}
.partner-koester .partner-logo-box{background:#39474f;padding:8px}
.smart-home-expanded{background:#f4f5f2}
.smart-system-list{display:grid;gap:3rem}
.smart-system{min-width:0;padding:clamp(1.25rem,4vw,3rem);background:white;border:1px solid #dce1d9;border-top:8px solid var(--system-accent)}
.somfy-system{--system-accent:#fab800;background:linear-gradient(135deg,#fff8de,white 48%)}
.loxone-system{--system-accent:#8cff70;background:linear-gradient(135deg,#f0ffec,white 48%)}
.smart-system-heading{max-width:780px;margin-bottom:1.75rem}
.smart-brand-logo{display:block;max-width:180px;max-height:46px;width:auto;height:auto;margin-bottom:1.4rem}
.smart-system-heading h3{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.8rem,3.3vw,2.8rem);line-height:1.15;margin:.5rem 0 1rem;overflow-wrap:anywhere}
.smart-lead{font-size:1.2rem;line-height:1.5;color:#354c3a}
.smart-copy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem}
.smart-copy-grid h4{font-size:1.05rem;line-height:1.4;margin:0 0 .65rem}
.smart-copy-grid p{color:#3d4948;line-height:1.75;margin:0 0 1.5rem}
.smart-copy-grid .system-note{font-size:.9rem;padding:1rem;background:#f4f5f2;border-left:3px solid var(--system-accent)}
.smart-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:1.5rem}
.smart-photo-grid .media-zoom img{aspect-ratio:4/3}
.smart-system-links{display:flex;flex-wrap:wrap;gap:1rem 2rem;margin-top:1.75rem;font-size:.88rem}
.smart-advice{padding-top:3rem;max-width:860px}
.smart-advice h3{font-family:Georgia,'Times New Roman',serif;font-size:2rem}
.smart-advice p{line-height:1.75;color:#3d4948}
.media-lightbox{width:min(1200px,96vw);max-width:96vw;max-height:94dvh;padding:1rem;background:#fff;color:#1c292a;border:0;border-radius:3px;overflow:auto}
.media-lightbox::backdrop{background:rgba(8,14,16,.88)}
.media-lightbox-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}
.media-lightbox-top p{font-weight:700;margin:0;font-size:.95rem}
.media-lightbox button{cursor:pointer;border:1px solid #c8d2d1;background:#f7f8f7;color:#182929;padding:.6rem .9rem;font:inherit;min-height:44px}
.media-lightbox figure{margin:0}
.media-lightbox figure img{display:block;max-width:100%;width:auto;max-height:65dvh;height:auto;object-fit:contain;margin:auto}
.media-lightbox figcaption{margin:1rem 0 .5rem;line-height:1.5;font-size:.95rem}
.media-lightbox-source{font-size:.8rem;color:#526561;min-height:1.2rem}
.media-lightbox-controls{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:1rem}
.media-lightbox-open{overflow:hidden}
.media-lightbox-status{font-size:.8rem;color:#526561;margin:.5rem 0;min-height:1.2rem}
@media(max-width:1000px){.partner-logos{grid-template-columns:repeat(3,minmax(0,1fr))}.smart-copy-grid{gap:1.75rem}}
@media(max-width:700px){#ausstellung,.smart-system[id]{scroll-margin-top:180px}.home-showroom-photos,.smart-copy-grid,.smart-photo-grid{grid-template-columns:1fr}.smart-system{padding:1.25rem}.smart-system-heading h3{font-size:1.9rem}.partner-logos{grid-template-columns:repeat(2,minmax(0,1fr))}.product-photo-grid{grid-template-columns:1fr;gap:1.5rem}.product-photo-grid .zoom-hint{font-size:.62rem}.product-photo-grid .media-photo figcaption{font-size:.75rem}.regional-showroom .regional-detail-photo img{height:auto}.smart-system-links{flex-direction:column;gap:1rem}.smart-photo-grid .media-zoom img{max-height:340px;object-fit:contain;background:#f5f6f3}.media-lightbox{padding:.75rem}.media-lightbox-controls button{font-size:.85rem;padding:.55rem .65rem}.media-lightbox-top{align-items:flex-start}.media-lightbox-top button{white-space:nowrap}.media-lightbox figure img{max-height:58dvh}}
@media(prefers-reduced-motion:reduce){.media-zoom img{transition:none}}

/* Uniform in-image provenance, including large views. */
.credited-image,.media-lightbox-image,.reference-lightbox-media{position:relative}
.credited-image>img{display:block}
.media-lightbox-image,.reference-lightbox-media{width:fit-content;max-width:100%;margin-inline:auto}
body .photo-credit,body .media-source,body .reference-credit,body .reference-lightbox-credit,body .media-lightbox-source,body .image-credit{position:absolute;left:.55rem;right:auto;bottom:.55rem;display:block;width:max-content;max-width:calc(100% - 1.1rem);margin:0;padding:.25rem .45rem;border:0;border-radius:2px;background:rgba(15,22,25,.58);box-shadow:0 1px 6px rgba(0,0,0,.18);color:#fff;font-size:11px;line-height:1.4;font-weight:400;text-decoration:none;z-index:4;opacity:1;transform:none;box-sizing:border-box;text-shadow:0 1px 2px #0003}
body .reference-credit{max-width:calc(100% - 5rem)}
body .photo-credit a,body .media-lightbox-source a{color:#fff;text-decoration:none}
body .media-lightbox-source:empty{display:none}
body .reference-lightbox-credit[hidden],body .reference-credit[hidden],body .photo-credit[hidden]{display:none!important}
.control-photos figcaption{position:static;padding:.5rem 0;background:transparent;color:#364d50;font-size:.85rem}
.section-dark .control-photos figcaption{color:#fff}
.media-zoom .zoom-hint{top:.55rem;bottom:auto}
.reference-photo{position:relative}
@media(max-width:640px){body .photo-credit,body .media-source,body .reference-credit,body .reference-lightbox-credit,body .media-lightbox-source,body .image-credit{font-size:10px;padding:.2rem .35rem}}

/* Review corrections: own photographs, full image frames and timeline alignment. */
.smart-home-photo{position:relative}
.smart-home-photo>a{position:relative;display:block;background:transparent}
.smart-home-photo img{display:block;width:100%;height:260px;object-fit:cover;object-position:50% 45%;background:transparent}
.smart-home-photo figcaption{display:none}
.roma-home-photo .credited-image{position:relative;display:block;width:100%;line-height:0;align-self:start}
.roma-home-photo .credited-image img{display:block!important;width:100%;height:auto!important;margin:0}
.roma-home-photo .photo-credit{line-height:1.4}
.timeline-card-2026 .timeline-year-correction{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;display:block}
#foerderung{padding-block:2.5rem}
#foerderung h2{font-size:clamp(1.3rem,2.5vw,1.9rem)}
@media(max-width:620px){.smart-home-photo img{height:240px}}
