.catalogue-intro{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(115deg,#fff 10%,#fffaf7 100%);padding-top:88px;padding-bottom:80px}.catalogue-intro>.container{position:relative;z-index:1}.catalogue-intro-copy{max-width:60%}.catalogue-intro h1{font-size:clamp(48px,5.8vw,78px);max-width:760px}.catalogue-intro .catalogue-lead{max-width:550px}.catalogue-landmarks{position:absolute;z-index:0;right:-5%;bottom:18px;width:min(74%,1120px);pointer-events:none;opacity:.92;mix-blend-mode:multiply;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.12) 26%,#000 58%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.12) 26%,#000 58%)}.catalogue-landmarks img{display:block;width:100%;height:auto}@media(max-width:1000px){.catalogue-intro-copy{max-width:65%}.catalogue-landmarks{width:86%;right:-16%;bottom:12px}.catalogue-intro h1{font-size:clamp(48px,6.5vw,68px)}}@media(max-width:760px){.catalogue-intro{padding:50px 0 12px}.catalogue-intro-copy{max-width:100%}.catalogue-intro h1{font-size:clamp(43px,8vw,58px)}.catalogue-intro .catalogue-lead{max-width:580px;margin-bottom:0}.catalogue-landmarks{position:relative;right:auto;bottom:auto;width:100%;margin:25px auto 0;opacity:.85;-webkit-mask-image:none;mask-image:none}.catalogue-landmarks img{width:100%;height:auto}}
.catalogue-category-bar{display:flex;justify-content:center;align-items:center;padding:24px 0 40px;border-bottom:1px solid var(--line)}.catalogue-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(100%,420px);padding:6px;gap:4px;border:1px solid #e9dce0;border-radius:999px;background:#faf5f6}.catalogue-categories a{display:flex;align-items:center;justify-content:center;min-width:0;min-height:46px;padding:12px 24px;border:0;border-radius:999px;background:transparent;color:#704650;text-decoration:none;text-align:center;font-size:16px;font-weight:500;line-height:1.4;letter-spacing:.02em;transition:background .2s,color .2s,box-shadow .2s}.catalogue-categories a:hover{background:#f0e3e7;color:#850c18}.catalogue-categories a[aria-current="location"]{background:#850c18;color:#fff;box-shadow:0 2px 6px #5a071318}.catalogue-categories a:focus-visible{outline:2px solid #850c18;outline-offset:3px}.product-section{padding:65px 0 20px;scroll-margin-top:130px}.product-section-title{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:28px}.product-section-title h2{font-family:Georgia,serif;font-size:clamp(34px,4vw,48px);font-weight:400;color:#850c18;margin:0}.product-section-title>span{font-size:12px;color:#77676a}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:46px 28px}.product-card{min-width:0;scroll-margin-top:120px}.product-photo{display:block;background:#f7f3f1;aspect-ratio:4/5;overflow:hidden}.product-photo img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .4s}.product-photo:hover img{transform:scale(1.02)}.product-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px;margin-top:18px}.product-heading h3{font-family:Georgia,serif;font-size:23px;font-weight:400;line-height:1.2;margin:0;color:#850c18}.product-price{font-size:13px;white-space:nowrap;margin:0}.product-card details{margin:14px 0;font-size:13px;line-height:1.7;color:#74646a}.product-card summary{cursor:pointer;padding-block:6px}.product-card dl{margin:12px 0}.product-card dl div{display:grid;grid-template-columns:65px 1fr;gap:12px;margin-bottom:9px}.product-card dt{color:#3e2026}.product-card dd{margin:0;white-space:pre-line}.product-actions{display:flex;flex-wrap:wrap;gap:10px 18px;font-size:12px;line-height:1.6;border-top:1px solid #e8dade;padding-top:14px}.product-actions a{text-decoration:none}.product-actions a:first-child{color:#850c18}.product-actions a:last-child{color:#74646a}.highlight-heading{font-family:Georgia,serif;font-weight:400;font-size:32px;color:#850c18;margin:0 0 30px}.catalogue-section{padding-top:70px}@media(max-width:1000px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-heading{display:block}.product-price{margin-top:8px}}@media(max-width:600px){.catalogue-category-bar{padding:20px 0 28px}.catalogue-categories{width:min(100%,380px);padding:5px;gap:2px}.catalogue-categories a{min-height:44px;padding:11px 12px;font-size:16px}.product-section{padding-top:40px}.product-grid{gap:35px 14px}.product-heading h3{font-size:20px}.product-price{font-size:12px}.product-card dl div{grid-template-columns:1fr;gap:0}.product-actions{display:block}.product-actions a{display:block;padding:5px 0}.product-card summary{font-size:12px}.highlight-heading{font-size:28px}}@media(prefers-reduced-motion:reduce){.product-photo img,.catalogue-categories a{transition:none}}

/* Catalogue discovery */
.catalogue-browser{display:grid;grid-template-columns:224px minmax(0,1fr);gap:42px;align-items:start;padding-top:34px;scroll-margin-top:20px}
.catalogue-sidebar{position:sticky;top:20px;align-self:start;max-height:calc(100dvh - 40px);overflow:auto;padding:5px 8px 14px 0;scrollbar-width:thin}
.catalogue-browse-label{margin:0 0 16px;color:var(--muted);text-transform:uppercase;font-size:10px;letter-spacing:.16em}
.catalogue-sidebar .catalogue-categories{display:flex;flex-direction:column;width:100%;padding:5px;gap:3px;border-radius:18px;background:#faf6f4;border-color:#eadfd8}
.catalogue-sidebar .catalogue-categories a{justify-content:space-between;min-height:44px;border-radius:12px;padding:9px 14px;font-size:14px;letter-spacing:0;color:#66464d}
.catalogue-sidebar .catalogue-categories a:hover{background:#f0e4e4}
.catalogue-sidebar .catalogue-categories a[aria-current="true"]{background:var(--burgundy);color:#fff;box-shadow:0 2px 7px #53091515}
.category-count{font-size:11px;opacity:.7}
.catalogue-search{display:flex;align-items:center;gap:9px;border:1px solid #decdd0;border-radius:12px;background:#fff;margin:18px 0;min-width:0;padding:0 12px}
.catalogue-search svg{width:18px;height:18px;flex-shrink:0;fill:none;stroke:#850c18;stroke-width:1.6}
.catalogue-search input{border:0;width:100%;min-width:0;padding:13px 0;background:transparent;font:13px var(--sans);color:var(--ink);outline:none}
.catalogue-search:focus-within{outline:2px solid var(--burgundy);outline-offset:2px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.catalogue-filter-panel summary{display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none;font-size:14px;color:var(--burgundy);min-height:42px}
.catalogue-filter-panel summary::-webkit-details-marker{display:none}
.catalogue-filter-panel summary svg{width:18px;height:18px;margin-left:auto;fill:none;stroke:currentColor;stroke-width:1.6}
#filter-count{background:var(--burgundy);color:white;border-radius:12px;min-width:20px;padding:0 5px;text-align:center;font-size:11px}
.catalogue-filter-fields{display:grid;gap:19px;padding-top:10px}
.filter-field{display:grid;gap:7px;font-size:12px;font-weight:500}
.filter-field select,.catalogue-sort select{width:100%;min-width:0;max-width:100%;font:13px var(--sans);color:var(--ink);background:#fff;border:1px solid #e2d4d7;border-radius:10px;padding:11px 30px 11px 10px;min-height:42px}
.filter-field select:focus-visible,.catalogue-sort select:focus-visible{outline:2px solid var(--burgundy);outline-offset:2px}
.filter-colors{border:0;padding:0;margin:0;min-width:0}
.filter-colors legend{padding:0;margin-bottom:9px;font-size:12px;font-weight:500}
#filter-colors{display:grid;grid-template-columns:1fr;gap:6px}
.filter-color{position:relative;display:flex;align-items:center;gap:8px;min-height:30px;font-size:12px;cursor:pointer;border:1px solid transparent;border-radius:8px;padding:4px 7px}
.filter-color:has(input:checked){border-color:#b6878f;background:#fbf2f3}
.filter-color:has(input:focus-visible){outline:2px solid var(--burgundy);outline-offset:2px}
.filter-color input{position:absolute;opacity:0;width:1px;height:1px}
.color-dot{width:17px;height:17px;flex-shrink:0;border:1px solid #00000018;border-radius:50%}
.filter-color:has(input:checked) .color-dot{outline:1px solid var(--burgundy);outline-offset:2px}
.filter-reset{min-height:40px;background:#fff;color:var(--burgundy);border:1px solid #d6b9bf;border-radius:10px;padding:9px 12px;font:13px var(--sans)}
.filter-reset:hover{background:#faf0f2}
.catalogue-results{min-width:0}
.catalogue-results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 19px;border-bottom:1px solid var(--line)}
#catalogue-result-count{font-size:12px;color:var(--muted);margin:0}
.catalogue-sort{display:flex;align-items:center;gap:9px;font-size:12px;white-space:nowrap}
.catalogue-sort select{width:170px}
.catalogue-browser .product-section{padding:30px 0 25px;scroll-margin-top:20px}
.catalogue-browser .product-section>.container{width:100%;max-width:none}
.catalogue-browser .product-section-title{margin-bottom:20px}
.catalogue-browser .product-section-title h2{font-size:34px}
.catalogue-browser .product-grid{gap:34px 20px}
.catalogue-browser .product-heading{display:block}
.catalogue-browser .product-price{margin-top:7px}
.catalogue-empty{padding:55px 20px;text-align:center;border:1px solid var(--line);border-radius:18px;margin-top:24px;background:#fffaf7}
.catalogue-empty h2{font:32px var(--serif);color:var(--burgundy);margin:0 0 15px}
.catalogue-empty p{font-size:14px;max-width:430px;margin:0 auto 22px;color:var(--muted)}
.catalogue-browser [hidden]{display:none!important}
@media(min-width:1101px){.catalogue-browser .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.catalogue-browser{gap:28px;grid-template-columns:206px minmax(0,1fr)}.catalogue-browser .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){
 .catalogue-browser{display:block;padding-top:0;scroll-margin-top:0}
 .catalogue-sidebar{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:9px 10px;position:sticky;top:0;z-index:8;overflow:visible;max-height:none;background:#fffffff5;backdrop-filter:blur(14px);padding:12px 0;border-bottom:1px solid var(--line)}
 .catalogue-browse-label{display:none}
 .catalogue-sidebar .catalogue-categories{grid-column:1/-1;flex-direction:row;border-radius:999px;padding:4px;gap:2px}
 .catalogue-sidebar .catalogue-categories a{flex:1;min-width:0;justify-content:center;gap:7px;border-radius:999px;padding:8px 6px;font-size:13px;min-height:39px}
 .catalogue-search{margin:0;min-height:42px}
 .catalogue-filter-panel{margin:0}
 .catalogue-filter-panel summary{justify-content:center;gap:7px;border:1px solid #decdd0;border-radius:12px;padding:0 8px;min-height:43px;font-size:12px}
 .catalogue-filter-panel summary svg{margin-left:0;width:15px}
 .catalogue-filter-panel[open]{grid-column:1/-1}
 .catalogue-filter-panel[open] summary{width:100%;justify-content:space-between}
 .catalogue-filter-fields{max-height:50dvh;overflow:auto;grid-template-columns:1fr 1fr;padding:14px 2px 4px;gap:15px}
 .filter-colors{grid-column:1/-1;grid-row:2}
 #filter-colors{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
 .filter-color{padding:6px 4px;font-size:11px;min-height:36px;gap:6px}
 .filter-reset{grid-column:1/-1}
 .catalogue-results-toolbar{padding-top:20px;gap:12px}
 .catalogue-browser .product-section{scroll-margin-top:125px}
 .catalogue-browser .product-section-title h2{font-size:30px}
 .catalogue-browser .product-grid{gap:30px 16px}
}
@media(max-width:480px){
 .category-count{display:none}
 .catalogue-sort{gap:0}
 .catalogue-sort>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .catalogue-sort select{width:148px;font-size:12px}
 #catalogue-result-count{font-size:11px;line-height:1.4;max-width:140px}
 .catalogue-browser .product-grid{gap:28px 12px}
 .catalogue-browser .product-heading h3{font-size:19px}
}
/* Dedicated accessories collection */
.catalogue-browser.is-empty{display:block}
.catalogue-browser.is-empty .catalogue-sidebar,.catalogue-browser.is-empty .catalogue-results-toolbar,.catalogue-browser.is-empty .product-section-title{display:none}
.accessories-intro-card{background:linear-gradient(120deg,#fbf3ef,#fff);border:1px solid #ead9d7;border-radius:22px;text-align:center;padding:55px 26px;max-width:800px;margin:0 auto 25px}
.accessories-intro-card h2{font:clamp(30px,4vw,45px) var(--serif);color:var(--burgundy);margin:0 0 20px}
.accessories-intro-card>p:not(.eyebrow){max-width:520px;margin:0 auto 25px;font-size:15px;color:var(--muted)}
.accessories-page-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.accessories-page-actions .button{border:1px solid var(--burgundy);border-radius:10px;padding:12px 18px;font-size:13px}
.accessories-page-actions .primary{background:var(--burgundy);color:#fff}
