:root{--ink:#242222;--muted:#74706d;--cream:#f7f5f0;--wine:#672435;--line:#dedbd5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--wine);outline-offset:5px}button{color:inherit}img{display:block;max-width:100%}[hidden]{display:none!important}.announcement{background:var(--wine);color:#fff;text-align:center;padding:9px 12px;font-size:10px;letter-spacing:2px}header{max-width:1440px;margin:auto;min-height:100px;padding:22px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{font-size:34px;letter-spacing:-1.5px;white-space:nowrap;line-height:1.2;font-weight:400}.wordmark span{font-size:15px;letter-spacing:0;border-left:1px solid #aaa;margin-left:12px;padding-left:12px}nav{display:flex;gap:36px;font-size:12px}.header-contact{border-bottom:1px solid var(--ink);padding-bottom:3px}.hero{max-width:1440px;margin:auto;background:var(--cream);display:grid;grid-template-columns:1fr 1fr;min-height:570px}.hero-copy{padding:64px 9% 36px 10%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;margin:0 0 20px}h1{font-size:clamp(42px,5.4vw,82px);font-weight:400;letter-spacing:-2px;line-height:1.08;margin:0 0 25px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1 em{color:var(--wine)}.intro{max-width:390px;color:#68615e;font-size:15px;line-height:1.8;margin:0 0 30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:15px 22px;min-height:49px;background:transparent;border:1px solid var(--ink);font-size:10px;letter-spacing:1.2px;line-height:1.5;transition:background .2s,color .2s}.button:hover{background:var(--cream)}.button.primary{background:var(--wine);color:#fff;border-color:var(--wine)}.button.primary:hover{background:#491825}.hero-note{font-size:9px;letter-spacing:2px;color:#7c7470;margin-top:45px}.hero-visual{position:relative;background:#eeeded;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-visual img{width:100%;height:100%;max-height:620px;object-fit:contain}.visual-caption{position:absolute;bottom:0;left:0;right:0;padding:13px 24px;background:rgba(255,255,255,.91);font-size:9px;letter-spacing:2px;display:flex;justify-content:space-between}.visual-caption i{font-style:normal;color:#888}.collection{max-width:1440px;padding:76px 5% 60px;margin:auto}.section-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:34px}.section-top .eyebrow{margin-bottom:12px}h2{font-size:36px;font-weight:400;letter-spacing:-.8px;line-height:1.25;margin:0}.section-top>p{font-size:12px;color:var(--muted);margin:0 0 4px}.tools{display:flex;gap:24px;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:25px}.search{display:flex;align-items:center;border-bottom:1px solid #a9a29c;max-width:520px;width:55%;gap:12px}.search span{font-size:28px;line-height:1}.search input{border:0;background:none;min-width:0;width:100%;padding:12px 0;outline-offset:2px;font-size:13px}.sort{font-size:11px;color:var(--muted);display:flex;gap:15px;align-items:center}.sort select{padding:10px;background:#fff;border:1px solid var(--line);color:var(--ink);max-width:180px}.categories{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.categories button{background:#fff;border:1px solid var(--line);padding:9px 15px;font-size:11px}.categories button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.result-line{display:flex;align-items:center;justify-content:space-between;margin:17px 0 20px;color:var(--muted);font-size:11px}.text-button{border:0;background:none;text-decoration:underline;text-underline-offset:4px;padding:5px 0;font-size:11px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 22px}.card{min-width:0;display:flex;flex-direction:column}.product-image{display:block;background:#f3f2f0;overflow:hidden;aspect-ratio:1;border:0;padding:0;width:100%}.product-image img{width:100%;height:100%;object-fit:contain;transition:transform .35s}.product-image:hover img{transform:scale(1.035)}.card-category{font-size:9px;letter-spacing:1.1px;text-transform:uppercase;color:#8e7f77;margin:16px 0 6px}.card h3{font-size:13px;font-weight:400;line-height:1.6;margin:0 0 16px;overflow-wrap:anywhere}.card>.text-button{align-self:flex-start;margin-top:auto;font-size:9px;letter-spacing:1px;text-decoration:none;border-bottom:1px solid #b7aaa0;padding:0 0 5px}.load-more{text-align:center;margin-top:45px}.load-more p{font-size:10px;color:var(--muted)}.empty{text-align:center;padding:50px 20px}.consult{text-align:center;background:var(--cream);padding:65px 20px 70px}.consult h2{margin-bottom:20px}.consult>p:not(.eyebrow){color:var(--muted);font-size:13px;margin-bottom:28px}footer{max-width:1440px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:45px 5%}footer .wordmark{font-size:26px}footer .wordmark span{font-size:12px}footer p,footer>a:last-child{font-size:10px;color:var(--muted)}.skip{position:fixed;left:12px;top:-100px;z-index:99;background:#fff;padding:12px}.skip:focus{top:12px}dialog{border:0;padding:24px 30px 35px;width:min(1100px,95vw);max-height:94dvh;color:var(--ink);overscroll-behavior:contain}dialog::backdrop{background:rgba(20,15,15,.65)}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.icon-button{font-size:30px;line-height:1;width:40px;height:40px;background:none;border:0}.detail-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:40px}.gallery-main{position:relative;background:#f4f3f1;touch-action:pan-y}.gallery-main>img{width:100%;height:auto;aspect-ratio:1;object-fit:contain}.gallery-arrow{position:absolute;top:45%;border:1px solid #ccc;background:#fff;width:36px;height:44px;font-size:25px}.prev{left:8px}.next{right:8px}.thumbnails{display:flex;gap:8px;overflow:auto;margin-top:12px}.thumbnails button{width:60px;flex-shrink:0;padding:2px;background:white;border:1px solid var(--line)}.thumbnails button[aria-pressed=true]{border-color:var(--wine)}.image-count{font-size:10px;color:var(--muted);margin:8px 0}.detail-info{padding:12px 0}.detail-info h2{font-size:28px;line-height:1.35;overflow-wrap:anywhere}.detail-info>p:not(.eyebrow){font-size:13px;color:var(--muted)}#product-code{overflow-wrap:anywhere}.detail-divider{border-top:1px solid var(--line);margin:25px 0}.detail-info .button{display:flex;width:100%;margin-top:12px}.detail-info>.text-button{margin-top:14px}.detail-info .messenger-note{font-size:11px!important}#copy-status{color:var(--wine);min-height:20px}#copy-fallback{width:100%;min-height:100px}body.modal-open{overflow:hidden}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media(min-width:1600px){.hero-copy{padding-left:12%}}@media(max-width:750px){header{min-height:80px;padding:20px 5%}.wordmark{font-size:27px}.wordmark span{font-size:12px;margin-left:7px;padding-left:8px}nav>a:first-child{display:none}nav{font-size:10px}.hero{grid-template-columns:1fr 1fr;min-height:0}.hero-copy{padding:35px 8%}h1{font-size:39px;letter-spacing:-1.5px}.hero-copy .eyebrow{font-size:8px;letter-spacing:1px}.intro{font-size:12px}.hero-copy .button{padding:12px;font-size:8px;gap:8px}.hero-note{font-size:8px;letter-spacing:1px;margin-top:25px}.visual-caption{padding:10px;font-size:7px;letter-spacing:1px}.visual-caption i{display:none}.collection{padding-top:45px}.section-top{align-items:flex-start}.section-top>p{display:none}h2{font-size:29px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}.tools{gap:12px}.search{width:65%}.search input{font-size:11px}.sort{font-size:0;gap:0}.sort select{font-size:10px;max-width:115px;padding:10px 5px}.categories{gap:6px}.categories button{padding:8px 10px;font-size:10px}.card h3{font-size:12px}.card-category{font-size:8px}.consult{padding:45px 20px}footer{flex-direction:column;text-align:center;gap:12px;padding:35px 15px}footer p{margin:0}.detail-layout{grid-template-columns:1fr;gap:15px}dialog{padding:14px 16px 25px;width:96vw;max-height:96dvh}.detail-info h2{font-size:24px}.gallery-main>img{max-height:50dvh;aspect-ratio:1}.detail-info{padding-top:0}.detail-info .eyebrow{margin-bottom:10px}}@media(max-width:480px){.announcement{font-size:8px;letter-spacing:1.2px}header{gap:10px}.header-contact{font-size:9px}.wordmark{font-size:25px}.wordmark span{font-size:10px}.hero{grid-template-columns:1fr}.hero-copy{padding:36px 7% 30px}.hero-copy .eyebrow{margin-bottom:15px}h1{font-size:50px}.intro{font-size:13px;max-width:320px;margin-bottom:20px}.hero-copy .button{font-size:9px;padding:13px 18px}.hero-note{margin-top:22px}.hero-visual{max-height:340px}.hero-visual img{height:340px}.visual-caption{font-size:8px}.visual-caption i{display:inline}.categories{margin-top:20px}.section-top h2{font-size:27px}.tools{align-items:stretch}.search{width:60%}.search input{padding:10px 0}.search span{font-size:23px}.sort select{max-width:105px}.card h3{font-size:11px}.card>.text-button{font-size:8px}.consult h2{font-size:29px}.detail-info h2{font-size:22px}}

/* Privacy preferences stay in normal footer flow, never overlay content. */
#missing-product{max-width:500px;padding:35px}#missing-product p{margin:20px 0}
.footer-actions{text-align:right}.footer-actions>a{font-size:10px;color:var(--muted)}.privacy-settings{margin-top:8px;font-size:10px;color:var(--muted);max-width:340px}.privacy-settings summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px;list-style:none}.privacy-settings summary::-webkit-details-marker{display:none}.privacy-settings summary:focus-visible{outline:2px solid var(--wine);outline-offset:4px}.privacy-panel{margin-top:12px;padding:16px;background:var(--cream);text-align:left;border:1px solid var(--line)}.privacy-panel p{font-size:12px;line-height:1.7;margin:0 0 12px}.privacy-buttons{display:flex;flex-wrap:wrap;gap:8px}.privacy-buttons .button{font-size:9px;padding:10px;min-height:40px;gap:0}.privacy-buttons button[aria-pressed=true]{background:var(--wine);border-color:var(--wine);color:#fff}@media(max-width:750px){.footer-actions{text-align:center}.privacy-settings{max-width:100%;width:320px}.privacy-panel{text-align:left}}@media(max-width:360px){.privacy-settings{width:100%}}

footer .footer-tagline{font-size:16px;font-weight:600;letter-spacing:1.4px;color:var(--ink);text-transform:uppercase}@media(max-width:750px){footer .footer-tagline{font-size:15px;letter-spacing:1px}}
