@import url("/assets/css/showroom.css?v=20260901");
@import url("/assets/css/forms.css?v=20260902");
html{overflow-x:hidden}h1,h2,h3,p{overflow-wrap:anywhere}.container,.story-grid>*,.product-detail-grid>*,.blocks-grid>*,.cooperation-grid>*,.contact-grid>*,.footer-grid>*{min-width:0}.language-switch{white-space:nowrap}@media(max-width:700px){.site-brand{min-width:0;max-width:175px}.site-brand b{max-width:125px;overflow:hidden;text-overflow:ellipsis}.story-art{max-width:100%}.co-banner h2{max-width:100%;padding-inline:8px}}
.hero-copy{width:min(670px,100%);max-width:none;margin:0}.hero h1{font-size:clamp(42px,5vw,68px)}
.product-grid{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch}.product-card{flex:0 1 calc((100% - 48px)/3)}
/* Home and product catalog cards only; leave detail/related-product images unchanged. */
.product-catalog-grid>.product-card>.product-image{display:flex;align-items:center;justify-content:center;overflow:hidden;padding:clamp(12px,2vw,24px);box-sizing:border-box}
.product-catalog-grid>.product-card>.product-image>img{width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
.product-detail .gallery-main{height:auto;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:clamp(12px,2vw,24px)}
.product-detail .gallery-main>[data-gallery-main]{width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
@media(max-width:980px){.product-card{flex-basis:calc((100% - 24px)/2)}}
@media(max-width:700px){.hero{min-height:570px}.hero-copy{padding:64px 0}.hero h1{font-size:39px;line-height:1.18;margin:16px 0}.hero p{line-height:1.75}.hero-media:after{background:linear-gradient(180deg,rgba(20,12,7,.88) 0%,rgba(20,12,7,.62) 58%,rgba(20,12,7,.48) 100%)}.product-card{flex-basis:100%}}
/* Independently managed brand images; retain navigation and story frame dimensions. */
.site-header .brand-mark.brand-mark-image{background:none;border-radius:0;overflow:hidden}
.site-header .brand-mark-image>img{display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain;object-position:center}
.story-art.home-brand-art{display:flex;align-items:center;justify-content:center}
.story-art.home-brand-art>img{width:100%;height:100%;min-width:0;min-height:0;object-fit:contain;object-position:center}
/* Home news cards and news list only: preserve existing frame heights and show the full cover. */
.news-grid>.news-card>.news-image,.news-list>.news-row>.news-image{overflow:hidden;display:flex;align-items:center;justify-content:center;background:#f5f1e9;color:var(--muted)}
.news-grid>.news-card>.news-image>img,.news-list>.news-row>.news-image>img{width:100%;height:100%;min-width:0;min-height:0;object-fit:contain;object-position:center}
/* News detail cover only; retain the existing height cap and text-flow spacing. */
.article>.article-inner>img.article-cover{display:block;width:100%;max-width:100%;height:auto;max-height:520px;margin:35px auto;object-fit:contain;object-position:center}
/* Ordinary showroom cards only; override the later showroom stylesheet and its hover zoom. */
.showroom-featured>.showroom-feature>img,.showroom-grid>.showroom-card>.showroom-card-image>img{object-fit:contain;object-position:center;transform:none}
.showroom-featured>.showroom-feature:hover>img{transform:none}
/* Home Banner: keep desktop framing and picture/mobile-source selection unchanged. */
@media(max-width:700px){
 .hero[aria-label="Hero Banner"]{min-height:clamp(180px,52vw,260px)}
 .hero[aria-label="Hero Banner"]>.container>.hero-copy{padding:24px 0}
 .hero[aria-label="Hero Banner"]>.hero-media>.hero-slide>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}
}
/* Showroom detail only: retain gallery/card dimensions and show each full image. */
.showroom-detail .showroom-gallery-item.primary>img,.showroom-related>a>img{object-fit:contain;object-position:center}
/* Product detail related cards only; retain image frames and all card text positions. */
.product-detail+.section>.container>.product-grid>.product-card>.product-image>img{object-fit:contain;object-position:center center}
