body[data-page="catalogue"] { background: var(--chalk); color: var(--ink-text); }
.cat3 { padding: calc(var(--head-h) + 22px) 0 80px; }
.cat3__head { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: 24px 48px; align-items: end; margin: 18px 0 28px; }
.cat3__head h1 { margin: 10px 0 0; font: 900 clamp(2.3rem, 5vw, 4.4rem)/.9 var(--f-display); font-stretch: 78%; text-transform: uppercase; letter-spacing: -.01em; }
.cat3__head h1 em { font-style: normal; color: var(--flame-600); }
.cat3__head .eyebrow { color: var(--flame-700); }
.cat3__head p { margin: 0; color: var(--muted-light); }
.cat3__head p a { color: var(--flame-700); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.cchips { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 22px; }
.cchip { padding: 10px 14px; background: #fff; border: 1.5px solid var(--chalk-line); border-radius: 99px; font: 600 .84rem/1 var(--f-body); }
.cchip span { margin-left: 4px; font: 500 .72rem/1 var(--f-mono); color: var(--muted-light); }
.cchip.is-on { background: var(--ink-900); border-color: var(--ink-900); color: #fff; }
.cchip.is-on span { color: var(--steel-300); }
.cgrid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.cgrid--products { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.cc { display: grid; grid-template-rows: auto 1fr; background: #fff; border: 1px solid var(--chalk-line); transition: border-color .25s, transform .35s var(--ease-out); }
.cc:hover { border-color: var(--ink-900); transform: translateY(-3px); }
.cc[hidden] { display: none; }
.cc__img { display: block; aspect-ratio: 4 / 5; background-color: #f3f2ef; background-repeat: no-repeat; background-size: 500% 200%; }
.cc__body { display: grid; align-content: start; gap: 6px; padding: 14px 16px 16px; }
.cc__cat { font: 500 .68rem/1.3 var(--f-mono); letter-spacing: .1em; text-transform: uppercase; color: var(--flame-700); }
.cc h3 { margin: 0; font: 800 1.12rem/1.15 var(--f-display); }
.cc h3 a { display: block; padding: 3px 0; }
.cc p { margin: 0; font-size: .86rem; color: var(--muted-light); }
.cc__dots { display: flex; gap: 4px; }
.cc__dots i { width: 14px; height: 14px; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .15); }
.cc__go { display: inline-flex; align-items: center; gap: 6px; margin-top: 2px; padding: 8px 0; font: 700 .78rem/1 var(--f-display); letter-spacing: .06em; text-transform: uppercase; color: var(--ink-text); }
.cc__go .i { width: 16px; height: 16px; color: var(--flame-600); transition: transform .3s var(--ease-out); }
.cc__go:hover .i { transform: translateX(3px); }
.cat3__note { margin: 26px 0 0; font-size: .86rem; color: var(--muted-light); }
@media (max-width: 1180px) { .cgrid--products { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 1100px) { .cgrid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 760px) { .cat3__head { grid-template-columns: minmax(0, 1fr); } .cgrid, .cgrid--products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } .cc__body { padding: 12px; } .cc h3 { font-size: 1rem; } }
@media (prefers-reduced-motion: reduce) { .cc { transition: none; } }


.cc__img--photo { aspect-ratio: auto; background: #f3f2ef; }
.cc__img--photo img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; }
.cc h3 a:hover { color: var(--flame-700); }
