/* Catalog-only layout; existing corporate and price layouts are unaffected. */
.corporate-site .catalog-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin-top:24px; }
.corporate-site .catalog-category-card { display:flex; flex-direction:column; min-width:0; border:1px solid var(--corp-line); background:#f5f7f5; transition:border-color .2s; }
.corporate-site .catalog-category-card:hover { border-color:#8a7547; }
.corporate-site .catalog-category-visual { aspect-ratio:4/3; background:#eef1ee; display:flex; align-items:center; justify-content:center; color:#626c65; border-bottom:1px solid var(--corp-line); }
.corporate-site .catalog-category-visual span { font-size:12px; padding:20px; text-align:center; }
.corporate-site .catalog-category-visual img { width:100%; height:100%; object-fit:contain; }
.corporate-site .catalog-category-body { display:flex; flex-direction:column; flex:1; padding:22px; min-width:0; }
.corporate-site .catalog-category-body h2 { font-family:Georgia,serif; font-weight:400; font-size:24px; line-height:1.25; min-height:2.5em; margin:0 0 14px; }
.corporate-site .catalog-intro { font-size:14px; color:var(--corp-muted); margin-bottom:24px; }
.corporate-site .catalog-summary { border-top:1px solid var(--corp-line); padding-top:14px; margin-top:auto; font-size:13px; font-variant-numeric:tabular-nums; }
.corporate-site .catalog-summary span { display:block; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--corp-muted); margin-bottom:6px; }
.corporate-site .catalog-cta { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:22px; font-size:14px; min-height:44px; }
.corporate-site .catalog-category-heading { display:flex; gap:32px; align-items:start; }
.corporate-site .catalog-category-heading > img { width: min(30%,300px); height:auto; }
.corporate-site .catalog-category-heading > div { min-width:0; }
.corporate-site .catalog-stock-card { display:flex; flex-direction:column; min-width:0; padding:0; }
.corporate-site .catalog-stock-card .corporate-product-photo { display:block; }
.corporate-site .catalog-stock-card .corporate-product-photo img { object-fit:contain; }
.corporate-site .catalog-product-fields { margin:12px 20px 20px; font-size:13px; font-variant-numeric:tabular-nums; }
.corporate-site .catalog-product-fields div { display:flex; justify-content:space-between; gap:12px; }
.corporate-site .catalog-product-fields dt { color:var(--corp-muted); }
.corporate-site .catalog-product-fields dd { margin:0; text-align:right; }
.corporate-site .catalog-stock-card > .corporate-text-link:first-of-type { margin-top:auto; }
.corporate-site .catalog-page h1, .corporate-site .catalog-grid *, .corporate-site .catalog-gallery { overflow-wrap:anywhere; }
.corporate-site .catalog-empty { padding:24px 0; color:var(--corp-muted); max-width:750px; }
.corporate-site .catalog-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-bottom:24px; }
.corporate-site .catalog-gallery img { width:100%; height:auto; }
.corporate-site .catalog-gallery + .catalog-stock-card { max-width:400px; }
@media (max-width:1100px) { .corporate-site .catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:767px) {
 .corporate-site .catalog-grid, .corporate-site .catalog-gallery { grid-template-columns:minmax(0,1fr); }
 .corporate-site .catalog-category-body h2 { min-height:0; }
 .corporate-site .catalog-category-heading { flex-direction:column; }
 .corporate-site .catalog-category-heading > img { width:100%; max-width:400px; }
}