/* Shared frames. Project-card photographs fill their frame; original files are never rewritten. */
.catalog-gallery-page .catalog-section>.montage-design-grid,.projects-page .projects-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 20px;align-items:stretch}
.product-design-card,.project-tile{box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden;border-radius:18px;height:100%;min-width:0}
.catalog-gallery-page .product-design-card{padding:0}
.catalog-gallery-page .product-design-card img,.home-product-rail .product-design-card img,.product-design-card>img,.product-project-slider .project-tile-image,.projects-list .project-tile-image,.project-tile-image{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;object-position:center;background:#f0f4f1;border-radius:0;flex:none;padding:0}
.project-tile-image{position:relative;overflow:hidden}
.project-tile-image img{position:absolute;inset:0;display:block;width:100%;height:100%;max-height:none;object-fit:fill;object-position:center}
.catalog-gallery-page .product-design-card strong,.home-product-rail .product-design-card strong{display:flex;align-items:center;justify-content:center;min-height:115px;padding:18px 16px 8px;font-size:1rem;line-height:1.85;text-align:center}
.catalog-gallery-page .product-design-card>span:last-child,.home-product-rail .product-design-card>span:last-child{display:flex;align-items:center;justify-content:center;margin-top:auto;min-height:65px;padding:12px 16px 22px}
.project-tile .project-tile-content{display:flex;flex-direction:column;min-height:180px;box-sizing:border-box;padding:16px;flex:1}
.project-tile-content h2{font-size:1rem;line-height:1.8;min-height:1.8em;margin:0 0 7px}
.project-tile-content .project-card-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px;margin:0 0 12px;border:0;font-size:.73rem}
.project-tile-content .project-card-facts>div{min-width:0;padding:0;border:0;display:block}
.project-tile-content .project-card-facts dt{font-size:.66rem;color:#7a8a80}.project-tile-content .project-card-facts dd{margin:1px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.project-tile-content>span{margin-top:auto;font-size:.73rem}
.catalog-gallery-page .product-design-card .montage-design-placeholder,.home-product-rail .product-design-card .montage-design-placeholder{display:block;width:100%;height:auto;aspect-ratio:4/3;padding:0;flex:none}
.catalog-gallery-page .product-design-card strong,.home-product-rail .product-design-card strong{height:135px;min-height:135px;max-height:135px;overflow:hidden;box-sizing:border-box}
.project-tile .project-tile-content{height:200px;min-height:200px;flex:0 0 200px}
.project-tile-content h2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.product-grid,.project-showcase-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)}
.product-page .product-main-image,.project-detail .project-detail-hero{position:relative;margin:0;aspect-ratio:4/3;height:auto;overflow:hidden;border:1px solid #dce6df;border-radius:18px;background:#f0f4f1}
.product-page .product-main-image img,.project-detail .project-detail-hero img{position:absolute;inset:0;display:block;width:100%;height:100%;max-height:none;object-fit:contain;object-position:center;border-radius:0;background:#f0f4f1}
.product-gallery .gallery-thumbs button,.project-detail-gallery .gallery-thumbs button{width:88px;height:66px;padding:3px;border-radius:9px}
.product-gallery .gallery-thumbs img,.project-detail-gallery .gallery-thumbs img{width:100%;height:100%;object-fit:contain}
@media(max-width:1100px){.catalog-gallery-page .catalog-section>.montage-design-grid,.projects-page .projects-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.product-grid,.project-showcase-grid{grid-template-columns:1fr}.catalog-gallery-page .catalog-section>.montage-design-grid,.projects-page .projects-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.catalog-gallery-page .catalog-section>.montage-design-grid,.projects-page .projects-list{grid-template-columns:1fr;gap:20px}}

/* Display each machine carpet at Asatir's 1200:1918 proportions, without cropping. */
.machine-carpet-catalog .machine-carpet-card-image {
    position: relative;
    aspect-ratio: 1;
    background: #f0f4f1;
}
.machine-carpet-catalog .product-design-card .machine-carpet-card-image img {
    position: absolute;
    inset: 0;
    width: 62.565%;
    height: 100%;
    aspect-ratio: auto;
    margin-inline: auto;
    object-fit: fill;
}
.machine-carpet-detail.product-page .product-main-image img {
    width: 46.924%;
    margin-inline: auto;
    object-fit: fill;
}
.machine-carpet-catalog .catalog-editorial-art .catalog-editorial-weave[data-composition="full-image"] img {
    width: 35.193%;
    justify-self: center;
    object-fit: fill;
}
.product-grid > .product-gallery {
    min-width: 0;
}
