/* Catalogue: the approved ivory, burgundy and gold palette. */
:root{--catalogue-paper:#fff8ed;--catalogue-surface:#fffcf6;--catalogue-ink:#351e1a;--catalogue-muted:#69584c;--catalogue-wine:#8d1625;--catalogue-line:#e5d8c5;--catalogue-gold:#d3ae62}
.screen-reader-text{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.catalogue-home,.catalogue-page{color:var(--catalogue-ink);padding-block:48px 72px}
.catalogue-intro{text-align:center;margin:0 auto 36px;max-width:780px}
.catalogue-intro .eyebrow{color:var(--catalogue-wine);font-size:12px;letter-spacing:.15em;margin-bottom:14px}
.catalogue-intro h1{font:400 clamp(36px,4vw,60px)/1.14 var(--font-display),Georgia,serif;color:var(--catalogue-wine);text-wrap:balance;margin:0 0 20px}
.catalogue-intro p:not(.eyebrow){font-size:16px;line-height:1.8;color:var(--catalogue-muted)}
.collection-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.collection-card{border:1px solid var(--catalogue-line);border-radius:6px;background:var(--catalogue-surface);overflow:hidden;transition:border-color .2s,box-shadow .2s}
.collection-card:hover{border-color:var(--catalogue-wine);box-shadow:0 6px 20px #351e1a0d}
.collection-photo{aspect-ratio:1.45;overflow:hidden;background:var(--catalogue-line)}
.collection-photo img{width:100%;height:100%;object-fit:cover;transition:transform .25s}
.collection-card:hover img{transform:scale(1.025)}
.collection-label{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;gap:10px;color:var(--catalogue-wine)}
.collection-label h3{font:400 clamp(21px,2vw,27px)/1.25 var(--font-display),Georgia,serif;margin:0}
.collection-label svg{flex-shrink:0}
.collection-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.catalogue-feature{background:#3b211e;color:var(--catalogue-paper);padding-block:64px}
.catalogue-feature-inner{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.catalogue-feature .eyebrow{color:var(--catalogue-gold)}
.catalogue-feature h2,.catalogue-story h2{font:400 clamp(32px,3.4vw,49px)/1.18 var(--font-display),Georgia,serif;text-wrap:balance}
.catalogue-feature p:not(.eyebrow){max-width:520px;line-height:1.8;font-size:16px;color:#f2e4d6;margin-block:24px}
.catalogue-feature .button{background:var(--catalogue-paper);color:var(--catalogue-wine)}
.catalogue-feature-image{aspect-ratio:1.2;max-height:420px;overflow:hidden;border-radius:6px;background:#251512}
.catalogue-feature-image img{width:100%;height:100%;object-fit:contain}
.catalogue-story{text-align:center;padding-block:72px}
.catalogue-story h2{color:var(--catalogue-wine)}
.catalogue-story p:not(.eyebrow){max-width:620px;margin:24px auto;color:var(--catalogue-muted);font-size:16px;line-height:1.8}
.catalogue-story .text-link{margin-top:0}
.catalogue-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:13px;color:var(--catalogue-muted);margin-bottom:24px}
.catalogue-breadcrumb a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:4px}
.catalogue-page{scroll-margin-top:110px}
.catalogue-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:28px 0 40px}
.catalogue-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 24px;border-radius:30px;border:1px solid var(--catalogue-line);background:var(--catalogue-surface);font-size:15px;line-height:1.5;text-align:center;transition:background .2s,color .2s}
.catalogue-tabs a:hover{border-color:var(--catalogue-wine)}
.catalogue-tabs a[aria-current]{color:white;background:var(--catalogue-wine);border-color:var(--catalogue-wine)}
.theme-heading,.catalogue-results-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0}
.theme-heading h2,.catalogue-results-heading h2{font:400 clamp(25px,2.5vw,34px)/1.25 var(--font-display),Georgia,serif;color:var(--catalogue-wine);text-wrap:balance}
.theme-heading .text-link,.clear-selection{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin:0;font-size:14px;color:var(--catalogue-wine)}
.theme-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:14px;margin-bottom:40px}
.theme-card{min-width:0;border:1px solid var(--catalogue-line);border-radius:5px;overflow:hidden;background:var(--catalogue-surface)}
.theme-card>div{aspect-ratio:1.25;overflow:hidden;background:var(--catalogue-line)}
.theme-card img{width:100%;height:100%;object-fit:cover}
.theme-card>span{min-height:58px;display:flex;align-items:center;justify-content:center;text-align:center;padding:10px 6px;gap:4px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.theme-card[aria-current]{border:2px solid var(--catalogue-wine);background:#f7e7e5}
.theme-card[aria-current]>span{color:var(--catalogue-wine);font-weight:600}
.theme-card:hover{border-color:var(--catalogue-wine)}
.theme-card svg{flex-shrink:0}
.theme-more{min-height:44px;margin:-24px 0 20px;color:var(--catalogue-wine);font-size:14px;text-decoration:underline;text-underline-offset:5px;cursor:pointer}
.catalogue-results-heading{padding-top:20px;border-top:1px solid var(--catalogue-line)}
.catalogue-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 24px}
.catalogue-product{min-width:0;border:1px solid var(--catalogue-line);background:var(--catalogue-surface);border-radius:6px;overflow:hidden;content-visibility:auto;contain-intrinsic-size:auto 380px}
.catalogue-product-photo{display:block;width:100%;aspect-ratio:1;position:relative;cursor:zoom-in;background:#eee5d8;overflow:hidden}
.catalogue-product-photo img{width:100%;height:100%;object-fit:contain;transition:transform .25s}
.catalogue-product-photo:hover img{transform:scale(1.03)}
.photo-zoom{position:absolute;bottom:12px;right:12px;border-radius:50%;background:var(--catalogue-surface);color:var(--catalogue-wine);width:36px;height:36px;display:grid;place-items:center}
.catalogue-product-copy{padding:16px}
.catalogue-product h3{font:400 22px/1.3 var(--font-display),Georgia,serif;margin:0 0 8px;overflow-wrap:anywhere}
.catalogue-product-copy>a{display:flex;align-items:center;justify-content:space-between;gap:6px;color:var(--catalogue-wine);min-height:44px;font-size:13px;text-underline-offset:4px}
.catalogue-product-copy>a:hover{text-decoration:underline}
.catalogue-product-copy>a svg{flex-shrink:0}
.catalogue-note{color:var(--catalogue-muted);font-size:13px;line-height:1.7;max-width:750px;margin:32px auto 0;text-align:center}
.catalogue-empty{background:var(--catalogue-surface);padding:48px 24px;border:1px solid var(--catalogue-line);text-align:center;border-radius:6px}
.catalogue-empty h3{font:400 30px/1.3 var(--font-display),Georgia,serif;color:var(--catalogue-wine)}
.catalogue-empty p{max-width:560px;margin:20px auto;line-height:1.8}
.catalogue-empty .text-link{display:flex;justify-content:center}
.catalogue-pagination ul{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:36px 0 0;list-style:none;padding:0}
.catalogue-pagination a,.catalogue-pagination span{display:flex;align-items:center;justify-content:center;padding:10px 16px;min-width:44px;min-height:44px;border:1px solid var(--catalogue-line);border-radius:4px}
.catalogue-pagination .current{background:var(--catalogue-wine);color:white}
.catalogue-dialog .lightbox-image{height:min(57dvh,590px)}
.catalogue-dialog .gallery-request{display:flex;width:fit-content;max-width:100%;margin:12px auto 0;background:var(--catalogue-paper);color:var(--catalogue-wine)}
.catalogue-feature .button:hover,.catalogue-dialog .gallery-request.button:hover{background:#ead6ba;border-color:#ead6ba;color:var(--catalogue-wine)}
.products-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}
.products-links h2{font:400 26px/1.3 var(--font-display),Georgia,serif;color:var(--catalogue-wine);margin-bottom:16px}
.products-links a{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--catalogue-line);font-size:15px}
.selected-design{display:flex;align-items:center;gap:20px;padding:20px;margin-bottom:24px;border:1px solid var(--catalogue-line);background:var(--catalogue-surface)}
.selected-design img{width:90px;height:90px;object-fit:contain;flex-shrink:0}
.selected-design p{font-size:14px;line-height:1.6}
.selected-design strong{display:block;color:var(--catalogue-wine)}
.selected-design a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline}
/* Native disclosure navigation works with keyboard, touch and without JavaScript. */
.header-inner{gap:24px;position:relative}
.desktop-nav{gap:22px;align-items:center}
.desktop-nav>a,.desktop-nav summary{font-size:14px;min-height:48px;display:flex;align-items:center;padding-block:12px;white-space:nowrap}
.nav-disclosure summary{list-style:none;cursor:pointer;gap:9px}
.nav-disclosure summary::-webkit-details-marker{display:none}
.nav-chevron{width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin:0 2px 4px}
.nav-disclosure[open] .nav-chevron{transform:rotate(225deg);margin-bottom:0}
.desktop-nav .nav-disclosure[open]>summary,.desktop-nav .nav-current>summary{color:var(--catalogue-gold);text-decoration:underline;text-underline-offset:9px}
.desktop-nav .nav-panel{position:absolute;top:calc(100% - 4px);padding:18px;min-width:240px;max-width:calc(100vw - 40px);border:1px solid var(--catalogue-line);border-top:3px solid var(--catalogue-gold);border-radius:0 0 6px 6px;background:var(--catalogue-surface);color:var(--catalogue-ink);box-shadow:0 16px 36px #100e0c26}
.desktop-nav .nav-panel a{display:flex;align-items:center;gap:10px;font-size:14px;padding:12px;min-height:46px;white-space:normal}
.desktop-nav .nav-panel a:after{display:none}
.desktop-nav .nav-panel a:hover{background:#f4e8d8;color:var(--catalogue-wine);border-radius:3px}
.desktop-nav .nav-panel :focus-visible{outline-color:var(--catalogue-wine)}
.desktop-nav .nav-products .nav-panel{left:50%;transform:translateX(-50%);width:780px}
.nav-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.desktop-nav .nav-panel .nav-column-title{color:var(--catalogue-wine);font:400 24px/1.3 var(--font-display),Georgia,serif;border-bottom:1px solid var(--catalogue-line);margin-bottom:8px}
.desktop-nav .nav-panel .nav-overview{border-bottom:1px solid var(--catalogue-line);margin-bottom:16px;justify-content:space-between}
.header-contact{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid #d3ae6266;border-radius:4px;padding:10px 14px;font-size:13px}
.header-contact:hover{background:#d3ae6220}
.nav-secondary{margin-top:24px}
.mobile-menu nav .nav-disclosure{border-bottom:1px solid #d3ae6244}
.mobile-menu nav summary{display:flex;align-items:center;justify-content:space-between;font:400 26px/1.3 var(--font-display),Georgia,serif;min-height:64px;padding:12px 0}
.mobile-menu nav .nav-panel{padding:0 0 16px 14px}
.mobile-menu nav .nav-panel a{font:400 16px/1.5 var(--font-body),Arial,sans-serif;border:0;min-height:48px;padding:10px 4px}
.mobile-menu .nav-columns{display:block}
.mobile-menu nav .nav-panel .nav-column-title{color:var(--catalogue-gold);font-size:20px;margin-top:12px}
.mobile-menu nav .nav-direct{font-size:26px;min-height:64px}
.mobile-menu nav .nav-secondary a{font-size:20px;min-height:48px}
.mobile-menu .nav-current>summary{color:var(--catalogue-gold)}
.catalogue-home a:focus-visible,.catalogue-page :focus-visible,.catalogue-story :focus-visible{outline:3px solid var(--catalogue-wine);outline-offset:4px}
.catalogue-feature :focus-visible{outline:3px solid var(--catalogue-gold);outline-offset:4px}
a,button,summary{touch-action:manipulation}
.footer nav a{min-height:44px}
.footer nav a[aria-current="page"]{color:var(--catalogue-gold);text-decoration:underline;text-underline-offset:4px}
@media(min-width:1280px){.desktop-nav{display:flex}.menu-toggle{display:none}}
@media(max-width:1279px){.desktop-nav{display:none}.menu-toggle{display:inline-flex}}
@media(max-width:1149px){.theme-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.catalogue-products{grid-template-columns:repeat(3,minmax(0,1fr))}.collection-grid{gap:18px}.collection-label{padding:14px 12px}}
@media(max-width:850px){.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.catalogue-feature-inner{gap:32px}.catalogue-home,.catalogue-page{padding-block:32px 48px}}
@media(max-width:600px){
    .header-inner{height:78px;gap:12px}.header-contact{font-size:12px;padding:8px 10px}.header-contact svg{display:none}
    .collection-grid{gap:14px 12px}.collection-photo{aspect-ratio:1.15}.collection-label{padding:14px 10px;min-height:58px}.collection-label h3{font-size:21px}.collection-label svg{width:15px}
    .catalogue-intro h1{font-size:38px}.catalogue-intro{margin-bottom:28px}.catalogue-intro .eyebrow{font-size:10px;letter-spacing:.08em}.catalogue-intro p:not(.eyebrow){font-size:15px}
    .catalogue-feature{padding-block:40px}.catalogue-feature-inner{grid-template-columns:1fr;gap:28px}.catalogue-feature-image{max-height:340px;order:-1}
    .catalogue-story{padding-block:48px}.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.theme-card>div{aspect-ratio:1.6}.theme-card>span{font-size:14px;min-height:50px}
    .theme-heading,.catalogue-results-heading{align-items:flex-start;flex-direction:column;gap:4px}.theme-heading h2,.catalogue-results-heading h2{font-size:28px}
    .catalogue-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.catalogue-product-copy{padding:12px}.catalogue-product h3{font-size:21px}.catalogue-product-copy>a{font-size:12px;line-height:1.6}.catalogue-product-copy>a svg{width:14px}
    .catalogue-tabs{gap:8px;margin:24px 0 28px}.catalogue-tabs a{font-size:14px;padding:10px 16px}
    .collection-grid-three,.products-links{grid-template-columns:1fr}.collection-grid-three .collection-photo{aspect-ratio:1.8}
    .catalogue-page{scroll-margin-top:88px}.catalogue-breadcrumb{font-size:12px;gap:8px}
    .catalogue-dialog .lightbox-image{height:48dvh}.catalogue-dialog .lightbox-controls{gap:6px}
}
@media(prefers-reduced-motion:reduce){.collection-photo img,.catalogue-product-photo img{transition:none!important;transform:none!important}.collection-card,.catalogue-tabs a{transition:none}}
/* Retouched collection covers keep their full 3:2 frame on every screen. */
.collection-grid .collection-photo{aspect-ratio:3/2}
.collection-grid .collection-photo img{object-fit:contain}
.collection-card:hover .collection-photo img{transform:none}
