/* Public catalogue styles are scoped; theme header, footer and typography remain intact. */
.axcb-landing { color:var(--ax-text, #172033); overflow-wrap:anywhere; }
.axcb-landing *, .axcb-landing *::before, .axcb-landing *::after { box-sizing:border-box; }
.axcb-landing .axcb-document { width:100%; margin:1rem 0; }
.axcb-landing .axcb-page { padding:clamp(1rem, 3vw, 2rem); margin-bottom:1.5rem; background:var(--ax-surface, #fff); border:1px solid var(--ax-border, #dfe5ec); border-radius:var(--ax-radius, 6px); }
.axcb-landing .axcb-page header { display:flex; flex-wrap:wrap; gap:1rem; align-items:center; justify-content:space-between; padding-bottom:1rem; border-bottom:1px solid var(--ax-border, #dfe5ec); }
.axcb-landing .axcb-header-brand { display:flex; gap:.75rem; align-items:center; }
.axcb-landing .axcb-header-brand img { width:auto; max-width:100px; max-height:45px; object-fit:contain; }
.axcb-landing .axcb-products { display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap:1rem; margin-top:1.5rem; }
.axcb-landing .axcb-product { min-width:0; padding:1rem; border:1px solid var(--ax-border, #dfe5ec); border-radius:var(--ax-radius, 6px); }
.axcb-landing .axcb-image { display:grid; place-items:center; margin-bottom:1rem; }
.axcb-landing .axcb-image img { max-width:100%; width:auto; height:auto; max-height:260px; object-fit:contain; }
.axcb-landing .axcb-product h2 { margin:0 0 .75rem; font-size:1.25rem; line-height:1.3; }
.axcb-landing .axcb-price { margin:.5rem 0; color:var(--ax-primary, #1473e6); font-size:1.15rem; font-weight:700; }
.axcb-landing .axcb-description { margin:.75rem 0; line-height:1.5; }
.axcb-landing .axcb-sku { font-size:.85rem; }
.axcb-landing .axcb-product dl { display:grid; grid-template-columns:1fr 1fr; gap:.35rem .75rem; font-size:.9rem; }
.axcb-landing .axcb-product dt { font-weight:700; }
.axcb-landing .axcb-product dd { margin:0; }
.axcb-landing .axcb-section-heading { grid-column:1/-1; margin:0; padding:.75rem 1rem; background:var(--ax-primary, #0b376d); color:#fff; font-size:1.35rem; border-radius:var(--ax-radius, 6px); }
.axcb-landing .axcb-page footer { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.75rem; margin-top:1.5rem; padding-top:1rem; border-top:1px solid var(--ax-border, #dfe5ec); font-size:.85rem; }
.axcb-landing .axcb-brand img { max-width:220px; max-height:100px; object-fit:contain; }
.axcb-landing .axcb-cover-image img { display:block; max-width:100%; max-height:450px; width:auto; height:auto; object-fit:contain; margin:1.5rem auto; }
.axcb-landing .axcb-cover-copy h1 { font-size:clamp(1.8rem, 4vw, 3rem); line-height:1.2; }
.axcb-landing .axcb-gallery { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:.75rem; margin-top:1rem; }
.axcb-landing .axcb-gallery img { width:100%; height:140px; object-fit:contain; }
.axcb-landing.axcb-layout-showcase .axcb-products { grid-template-columns:1fr; }
.axcb-landing a:focus-visible { outline:2px solid currentColor; outline-offset:3px; }
