/* Approved images: preserve geometry, without cropping holes or assemblies. */
.process-photo{height:auto;aspect-ratio:4/3}.process-photo img{display:block;width:100%;height:100%;object-fit:contain}
.hero-visual.has-photo>img{display:block;width:100%;height:auto;min-height:0;aspect-ratio:3/2;object-fit:contain;border-radius:3px;margin:20px 0}
.hero-visual.has-photo .visual-index,.hero-visual.has-photo .visual-caption{padding-inline:0}
.product-art.actual{padding:0;background:#f3f4f3;aspect-ratio:4/3}
.product-art.actual>img{width:100%;height:100%;object-fit:contain;display:block}
.detail-image .product-art.actual{aspect-ratio:4/3}
.product-card{display:flex;flex-direction:column}
.product-card-body{flex:1}
.catalog-note>span{flex-shrink:0;white-space:nowrap}
.catalog-subfilters{display:flex;flex-wrap:wrap;gap:10px;margin:-8px 0 28px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.catalog-subfilters a{font-size:13px;color:var(--muted);padding:6px 12px;background:#f5f6f4}
.catalog-subfilters a.active{color:var(--red);background:#f8eceb}
.catalog-series-note{font-size:13px;color:var(--muted);margin:-8px 0 26px}
.bonded-placeholder{aspect-ratio:4/3;background:#ecefeb}
.bonded-placeholder>div{display:flex;flex-direction:column;gap:12px;text-align:center;padding:20px;color:var(--ink)}
.bonded-placeholder small{font-size:11px;letter-spacing:1px;color:var(--muted)}
.bonded-placeholder strong{font-size:24px;font-weight:500}
.bonded-placeholder div>span{font-size:11px;color:var(--muted)}
.detail-image .bonded-placeholder{aspect-ratio:4/3}
.product-grid.single-product{grid-template-columns:minmax(0,900px)}
.single-product .product-card{display:grid;grid-template-columns:1fr 1fr;align-items:center}
.single-product .product-card-body{padding:30px}
.single-product .product-card h3{font-size:24px;line-height:1.5;margin-block:12px 18px}
.single-product .product-card p{font-size:14px}
.company-block.company-photo{display:block;margin:0;padding:0;overflow:hidden;background:#f5f5f3}
.company-block.company-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
.company-photo figcaption{margin:0;padding:18px 22px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.application-card.has-image{padding:0;overflow:hidden}
.application-image{display:block;width:100%;aspect-ratio:4/3;background:#f3f4f3;border-bottom:1px solid var(--line)}
.application-image img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .35s}
.application-card:hover .application-image img{transform:scale(1.03)}
.application-card.has-image .application-card-body{padding:22px 22px 20px;display:flex;flex-direction:column;flex:1}
.application-card.has-image .app-number{margin-bottom:14px}
.application-card.has-image h3{font-size:18px}
.application-card-contact{justify-content:center;min-height:100%}
.application-card-contact .app-number{margin-bottom:24px}
.article-page.application-detail{max-width:1200px}
.application-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start;margin-block:30px}
.application-detail-photo{margin:0;border:1px solid var(--line);background:#f5f5f3}
.application-detail-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
.application-detail-grid .prose{margin:0}
@media(max-width:1100px){.application-detail-grid{gap:30px}.about-page{grid-template-columns:minmax(250px,35%) 1fr}}
@media(max-width:700px){
 .hero-visual.has-photo>img{max-height:none;margin-block:14px}
 .product-art.actual,.detail-image .product-art.actual{aspect-ratio:4/3}
 .product-card-body{padding:15px 12px}
 .product-card h3{font-size:14px;line-height:1.5}
 .product-card p{font-size:11px}
 .category-line a{font-size:11px;gap:5px}
 .bonded-placeholder>div{gap:7px;padding:12px}
 .bonded-placeholder strong{font-size:17px}
 .bonded-placeholder small,.bonded-placeholder div>span{font-size:9px;letter-spacing:0}
 .single-product .product-card{grid-template-columns:1fr}
 .single-product .product-card-body{padding:24px}
 .single-product .product-card h3{font-size:21px}
 .single-product .product-card p{font-size:13px}
 .about-page,.application-detail-grid{grid-template-columns:1fr}
 .company-photo figcaption{padding:14px 18px;font-size:12px}
 .application-card.has-image .application-card-body{padding:20px}
 .application-detail-grid{gap:25px;margin-block:25px}
}
@media(prefers-reduced-motion:reduce){.application-image img,.product-art>img{transition:none}}
