.category-page{background:var(--paper)}
.cat-hero{position:relative;min-height:min(78svh,760px);display:flex;align-items:flex-end;overflow:hidden;color:var(--paper);background:var(--ink)}
.cat-hero-media,.cat-hero-media img,.cat-hero-scrim{position:absolute;inset:0;width:100%;height:100%;margin:0}
.cat-hero-media img{object-fit:cover}.cat-hero-scrim{background:linear-gradient(180deg,rgba(8,12,10,.16),rgba(8,12,10,.78)),linear-gradient(90deg,rgba(8,12,10,.48),transparent 72%)}
.cat-hero-copy{position:relative;z-index:2;max-width:760px;padding:0 clamp(24px,7vw,120px) clamp(56px,8vw,100px)}
.cat-hero h1{margin:0;max-width:12ch;font-family:var(--serif);font-size:clamp(3rem,6.5vw,6.4rem);font-weight:400;letter-spacing:-.045em;line-height:.98}.cat-hero-copy>p:not(.kicker){max-width:43ch;margin:26px 0 0;color:rgba(238,234,225,.88);font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.55}.cat-actions{display:flex;align-items:center;gap:28px;margin-top:34px}
.cat-intro,.cat-split,.cat-heading,.cat-showroom{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:clamp(32px,8vw,130px);align-items:center}.cat-intro .body-copy,.cat-heading .body-copy,.cat-showroom .body-copy{margin:0}.cat-intro .body-copy+.body-copy{margin-top:20px}
.cat-refs{overflow:hidden}.cat-heading{align-items:end;margin-bottom:54px}.cat-heading .body-copy{color:rgba(238,234,225,.72)}
.cat-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,1fr);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px;scrollbar-width:thin}.cat-rail>*{scroll-snap-align:start}.cat-ref img{width:100%;aspect-ratio:1.2;object-fit:cover}.cat-ref span{display:flex;justify-content:space-between;padding-top:11px;color:rgba(238,234,225,.78);font-size:10px;letter-spacing:.09em}.cat-ref b{font-size:15px;font-weight:400}.cat-index-note{margin-top:42px;color:rgba(238,234,225,.65);font-size:13px}.cat-index-note a{color:var(--paper);text-decoration:underline;text-underline-offset:5px}
.cat-split figure{margin:0}.cat-split img{width:100%;aspect-ratio:1.08;object-fit:cover}.cat-split figcaption{margin-top:10px;color:var(--muted);font-size:11px}.cat-split .body-copy+.body-copy{margin-top:20px}
.cat-list{border-top:1px solid var(--line-light)}.cat-list a{display:grid;grid-template-columns:52px 1fr auto;gap:18px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line-light);color:var(--paper)}.cat-list span{color:rgba(238,234,225,.5);font-size:11px}.cat-list strong{font-family:var(--serif);font-size:clamp(1.45rem,2.7vw,2.3rem);font-weight:400}.cat-list b{color:rgba(238,234,225,.65);font-size:11px;font-weight:400;letter-spacing:.06em;text-transform:uppercase}
.cat-band .section-frame{max-width:920px;margin-left:clamp(24px,12vw,190px)}.cat-band .display{max-width:14ch}.cat-band .body-copy{color:rgba(238,234,225,.82)}
.cat-projects .cat-heading{margin-bottom:46px}.cat-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.cat-project img{width:100%;aspect-ratio:1.2;object-fit:cover}.cat-project span{display:block;padding-top:11px;font-size:10px;letter-spacing:.07em;text-transform:uppercase}.cat-project-link{margin-top:38px}
.cat-reading-links{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:46px 0 36px}.cat-reading-links a{display:grid;gap:20px;padding:22px 0;border-top:1px solid var(--line-light);border-bottom:1px solid var(--line-light)}.cat-reading-links span{font-family:var(--serif);font-size:clamp(1.3rem,2.2vw,2rem)}.cat-reading-links b{color:rgba(238,234,225,.62);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.05em}
.cat-showroom address{margin-top:28px;color:var(--muted-strong);font-size:14px;font-style:normal;line-height:1.7}.cat-showroom-actions{display:flex;flex-direction:column;align-items:flex-start;gap:24px}.cat-cta .section-frame{max-width:900px;margin:0}.cat-cta .display{max-width:12ch}.cat-cta .body-copy{color:rgba(238,234,225,.82)}
.cat-cross{display:flex;flex-wrap:wrap;gap:18px;margin-top:40px}.cat-cross a{padding-bottom:5px;border-bottom:1px solid currentColor;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:900px){.cat-intro,.cat-split,.cat-heading,.cat-showroom{grid-template-columns:1fr;gap:26px}.cat-rail{grid-auto-columns:65vw}.cat-project-grid{grid-template-columns:repeat(3,70vw);overflow-x:auto;padding-bottom:8px}.cat-band .section-frame{margin-left:0}.cat-heading{margin-bottom:40px}}
@media(max-width:620px){.cat-hero{min-height:590px}.cat-hero-copy{padding-bottom:42px}.cat-hero h1{font-size:clamp(2.8rem,14vw,4.2rem);max-width:10ch}.cat-hero-copy>p:not(.kicker){max-width:30ch;font-size:1rem}.cat-actions{align-items:flex-start;flex-direction:column;gap:20px}.cat-actions .button{width:100%;justify-content:space-between}.cat-intro,.cat-refs .section-frame,.cat-split .section-frame,.cat-list-wrap,.cat-band .section-frame,.cat-projects .section-frame,.cat-reading .section-frame,.cat-showroom .section-frame,.cat-cta .section-frame{padding-top:70px;padding-bottom:70px}.cat-rail{grid-auto-columns:78vw;gap:16px}.cat-project-grid{grid-auto-columns:78vw;grid-template-columns:repeat(3,78vw);gap:16px}.cat-list a{grid-template-columns:32px 1fr;gap:10px}.cat-list b{grid-column:2}.cat-reading-links{grid-template-columns:1fr;margin-top:34px}.cat-showroom-actions{align-items:stretch}.cat-showroom-actions .button{justify-content:space-between}}
@media(prefers-reduced-motion:reduce){.cat-ref img,.cat-project img{transition:none}}

/* category-specific visual direction */
.granite-page .cat-hero-scrim{background:linear-gradient(180deg,rgba(8,12,10,.12),rgba(8,12,10,.86)),linear-gradient(90deg,rgba(8,12,10,.62),transparent 72%)}
.granite-page .cat-hero h1{max-width:10ch}.granite-page .cat-refs{background:var(--ink-soft)}
.travertine-page .cat-hero-scrim{background:linear-gradient(180deg,rgba(38,29,20,.12),rgba(38,29,20,.74)),linear-gradient(90deg,rgba(38,29,20,.4),transparent 72%)}
.travertine-page .cat-hero h1{max-width:11ch}.travertine-page .cat-refs{background:#24241f}.travertine-page .cat-ref img{aspect-ratio:1.35}
.onyx-page .cat-hero-scrim{background:linear-gradient(180deg,rgba(4,6,7,.08),rgba(4,6,7,.86)),linear-gradient(90deg,rgba(4,6,7,.66),transparent 75%)}
.onyx-page{background:#111312}.onyx-page .section-light{background:#171a18;color:var(--paper)}.onyx-page .cat-hero h1{max-width:9ch}.onyx-page .cat-ref img{aspect-ratio:1.05}.onyx-page .cat-split figcaption,.onyx-page .cat-showroom address{color:rgba(238,234,225,.62)}
.granite-page .cat-hero-media img{object-position:center 54%}.travertine-page .cat-hero-media img{object-position:center 58%}.onyx-page .cat-hero-media img{object-position:center 48%}
