/* Shared category proportions and aligned object displays. */
.object-layout .category-editorial {--category-photo-ratio:16/7;--category-media-width:960px;display:block;padding-block:clamp(0px,0vw,64px);}
.object-layout .category-editorial .category-hero-copy {display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,80px);padding:0 0 32px;border:0;align-items:start;}
.category-heading h1 {display:flex;align-items:center;gap:18px;}
.category-heading-icon {width:52px;height:52px;object-fit:contain;flex:none;}
.object-layout .category-editorial .category-hero-copy h1 {font-size:clamp(2.2rem,4vw,4.2rem);line-height:1.08;margin:0;}
.object-layout .category-editorial .eyebrow {margin:0 0 16px;}
.object-layout .category-editorial .category-introduction p {margin:0 0 12px;font-size:1rem;line-height:1.6;max-width:64ch;}
.object-layout .category-editorial .category-tagline {font-weight:600;}
.object-layout .category-editorial .category-signature {font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;margin-top:20px;}
.category-hero-frame {width:100%;max-width:var(--category-media-width);margin-inline:auto;position:relative;aspect-ratio:var(--category-photo-ratio);background:var(--surface,#f5f3f6);overflow:hidden;}
.object-layout .category-editorial .category-hero-photo {position:static;display:block;width:100%;height:100%;max-height:none;object-fit:cover;transform:none;filter:none;}
.object-layout .category-catalog {padding-top:24px;}
.object-layout .category-editorial + .category-catalog .product-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px;align-items:start;}
.object-layout .category-catalog .product-card,.object-layout .category-editorial + .category-catalog .product-card:first-child {width:100%;padding-top:0;border-top:1px solid var(--ink,#302c35);padding-bottom:24px;}
.object-layout .category-catalog .product-card .product-image {aspect-ratio:1;width:100%;height:auto;min-height:0;margin:16px 0 18px;background:var(--surface,#f5f3f6);overflow:hidden;}
.object-layout .category-catalog .product-image img {display:block;width:100%;height:100%;object-fit:contain;transition:opacity .2s ease;}
.object-layout .category-catalog .product-card > h3 {font-size:clamp(1.25rem,2vw,1.7rem);line-height:1.2;}
.object-layout .category-catalog .product-card > p {font-size:.9rem;max-width:44ch;}
.object-layout .category-catalog .card-ai-disclosure {position:static;align-self:flex-start;font-size:.65rem;margin:0 0 8px;padding:3px 6px;}
@media(max-width:900px){
 .object-layout .category-editorial + .category-catalog .product-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:600px){
 .object-layout .category-editorial {--category-photo-ratio:16/7;}
 .object-layout .category-editorial .category-hero-copy {grid-template-columns:1fr;gap:20px;padding-bottom:24px;}
 .object-layout .category-editorial + .category-catalog .product-grid {grid-template-columns:1fr;gap:28px;}
 .category-heading-icon {width:44px;height:44px;}
}
@media(prefers-reduced-motion:reduce){.object-layout .category-catalog .product-image img {transition:none;}}
.object-layout .category-editorial .category-hero-copy {width:100%;max-width:var(--category-media-width);margin-inline:auto;}
.object-layout .category-editorial .category-introduction .category-signature {font-size:.68rem;line-height:1.5;margin-top:20px;}
.object-layout .category-catalog .product-card {position:relative;}
.object-layout .category-catalog .card-ai-disclosure {position:absolute;top:28px;right:12px;z-index:1;margin:0;background:#f5f3f6;color:#302c35;}
.category-hero-frame {background:transparent;}
.object-layout .category-catalog .card-ai-disclosure {left:auto;bottom:auto;width:max-content;max-width:calc(100% - 24px);}

/* Copy and photograph share the same editorial canvas. */
.object-layout .category-editorial {display:grid;grid-template-columns:minmax(0,1fr);max-width:960px;width:calc(100% - 40px);margin-inline:auto;}
.object-layout .category-editorial .category-hero-frame {grid-area:1/1;align-self:start;}
.object-layout .category-editorial .category-hero-copy {grid-area:1/1;z-index:2;align-self:center;display:block;width:45%;max-width:none;margin:20px;padding:20px 24px;background:transparent;border-left:2px solid var(--om-action,#663b50);}
.object-layout .category-editorial .category-hero-copy h1 {font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.08;gap:12px;}
.object-layout .category-editorial .category-heading-icon {width:34px;height:34px;}
.object-layout .category-editorial .eyebrow {margin:0 0 10px;}
.object-layout .category-editorial .category-introduction {margin-top:14px;}
.object-layout .category-editorial .category-introduction p {font-size:.85rem;line-height:1.45;margin:0 0 9px;}
.object-layout .category-editorial .category-introduction .category-signature {font-size:.58rem;margin:10px 0 0;letter-spacing:.08em;}
.object-layout .category-editorial .moro-banner-link {padding:6px 0;font-size:.85rem;}
@media(max-width:700px){
 .object-layout .category-editorial .category-hero-copy {align-self:start;width:calc(100% - 24px);margin:calc((100vw - 40px)*7/16 - 24px) 12px 0;padding:20px;}
 .object-layout .category-editorial .category-hero-copy h1 {font-size:1.9rem;}
 .object-layout .category-editorial .category-introduction p {font-size:.95rem;line-height:1.5;}
 .object-layout .category-editorial .moro-banner-ai {bottom:auto;top:10px;}
}

.category-process-note {max-width:960px;margin:0 auto 36px;padding:20px 0;border-top:1px solid var(--muted);}
.category-process-note p {max-width:72ch;margin:0;line-height:1.65;}
@media(min-width:701px){
 .object-layout .category-editorial.has-bg .category-hero-copy :is(h1,p,a) {color:#fff;text-shadow:0 1px 3px #000,0 0 8px #0009;}
 .object-layout .category-editorial .category-hero-copy {border-color:#fff;}
}
@media(min-width:701px){
 .object-layout .category-page-casa-design .category-hero-copy {justify-self:start;width:45%;}
}

/* Full-width category photography, with copy anchored to the reading grid. */
.object-layout .category-editorial {width:100%;max-width:none;margin-inline:0;}
.object-layout .category-editorial .category-hero-frame {width:100%;max-width:none;aspect-ratio:16/7;}
.object-layout .category-editorial .category-hero-copy {width:min(45%,432px);margin-left:max(24px,calc((100vw - 1160px)/2));}
.object-layout .category-catalog {padding:clamp(32px,5vw,72px) clamp(20px,4vw,56px);margin:0 auto clamp(32px,5vw,72px);width:100%;max-width:none;background:var(--om-surface,#f5f3f6);border-top:1px solid var(--line);}
.object-layout .category-catalog .product-grid {max-width:1160px;margin-inline:auto;}
.object-layout .category-catalog .product-card {border-top:0;padding-bottom:20px;border-bottom:1px solid var(--line);}
.object-layout .category-editorial + .category-catalog .product-card:first-child {border-top:0;}
.object-layout .category-catalog .product-card .product-image {margin-top:0;background:var(--om-base,#e4e3e9);}
.object-layout .category-catalog .product-card h3 {margin-top:4px;}
.object-layout .category-catalog .card-ai-disclosure {top:12px;}
.object-layout .category-catalog .empty-state {max-width:1160px;margin:auto;}
.object-layout .category-catalog .category-process-note {max-width:1160px;border-top:0;padding-top:0;}
@media(max-width:700px){
 .object-layout .category-editorial .category-hero-copy {width:calc(100% - 40px);margin:calc(100vw*7/16 - 12px) 20px 0;padding:20px 0 28px;border-left:0;}
 .object-layout .category-catalog {padding-inline:20px;}
}
