/* Colour references follow the typography and swatch layout of the catalogue. */
.catalogue-colours{background:#f7f4ee;padding:52px 36px 42px;margin-top:25px;margin-bottom:70px;scroll-margin-top:110px}
.catalogue-colours .section-heading{margin-bottom:30px;gap:32px}
.catalogue-colours .section-heading h2{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.035em}
.catalogue-colours .section-heading>p{max-width:370px;color:#666a67}
.catalogue-colours .eyebrow{color:#941d2a}
.colour-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid #dedbd4;padding:22px 0 28px}
.colour-series-buttons{display:flex;gap:10px;flex-wrap:wrap}
.colour-series-buttons button,.colour-pagination button{border:1px solid #b9b4aa;background:transparent;color:#252526;padding:9px 15px;cursor:pointer;font:inherit;font-size:.86rem;min-height:44px}
.colour-series-buttons button[aria-pressed="true"],.colour-pagination button[aria-current="page"]{background:#941d2a;border-color:#941d2a;color:white}
.colour-count{margin:0;font-size:.82rem;color:#666a67}
.catalogue-colour-series h3{font-size:.8rem;font-weight:700;letter-spacing:.15em;color:#941d2a;margin:0 0 25px}
.catalogue-swatch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:30px;row-gap:30px}
.catalogue-swatch{min-width:0;margin:0}
.swatch-image{display:block;position:relative;background:#e7e2d9;overflow:hidden;cursor:zoom-in}
.swatch-image img{width:100%;height:auto;aspect-ratio:156/135;object-fit:cover;transition:transform .2s ease}
.swatch-image:hover img{transform:scale(1.025)}
.swatch-image .swatch-zoom{position:absolute;right:10px;bottom:10px;background:#f7f4eef0;color:#252526;font-size:.75rem;line-height:1;padding:8px 9px;opacity:0;transition:opacity .2s}
.swatch-image:hover .swatch-zoom,.swatch-image:focus-visible .swatch-zoom{opacity:1}
.swatch-caption{padding-top:10px}
.swatch-heading{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap;line-height:1.3}
.swatch-heading strong{font-size:1rem;white-space:nowrap}
.swatch-heading span{font-size:.83rem;color:#666a67}
.swatch-original{display:block;margin-top:5px;font-size:.78rem;color:#666a67;line-height:1.4}
.catalogue-colour-series+.catalogue-colour-series{margin-top:45px}
.catalogue-colours.js-colours .catalogue-colour-series{margin-top:0}
.colour-pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:32px;padding-top:25px;border-top:1px solid #dedbd4}
.colour-pagination .colour-page-buttons{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.colour-pagination button:disabled{opacity:.35;cursor:default}
.catalogue-colours .colour-screen-note{font-size:.82rem;color:#666a67;margin:24px 0 0}
.catalogue-colours [hidden]{display:none!important}
.colour-detail-dialog{width:min(850px,94vw);max-height:94vh;border:0;padding:25px;background:#f7f4ee;color:#252526;overflow:auto}
.colour-detail-dialog::backdrop{background:#181515bc}
.colour-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}
.colour-detail-head h2{font-size:1.4rem;letter-spacing:0;margin:0 0 4px;font-weight:700}
.colour-detail-head p{font-size:.88rem;color:#666a67;margin:0}
.colour-detail-close{background:none;border:1px solid #b9b4aa;padding:8px 12px;cursor:pointer;min-height:44px;white-space:nowrap}
.colour-detail-dialog>img{width:100%;max-height:60vh;object-fit:contain;background:#e9e4db}
.colour-detail-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}
.colour-detail-footer p{font-size:.82rem;color:#666a67;margin:0;max-width:360px}
@media(max-width:1000px){.catalogue-colours{padding:38px 24px}.catalogue-swatch-grid{gap:24px}.colour-controls{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.catalogue-colours{padding:30px 18px;margin-bottom:45px}.catalogue-swatch-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:25px}.catalogue-colours .section-heading{gap:10px}.catalogue-colours .section-heading>p{margin:0}.swatch-heading{display:block}.swatch-heading span{display:block;margin-top:4px}.swatch-heading strong{font-size:.86rem}.swatch-original{font-size:.72rem}.colour-pagination{gap:12px}.colour-page-buttons{order:3;width:100%}.colour-detail-dialog{padding:18px}.swatch-image .swatch-zoom{opacity:1;padding:6px;font-size:.65rem}}
@media(prefers-reduced-motion:reduce){.swatch-image img,.swatch-image .swatch-zoom{transition:none}}
