:root{--color-bg-primary:#f6f2eb;--color-bg-secondary:#6a6054;--color-text-primary:#27231f;--color-text-inverse:#f6f2eb;--color-accent:#a88a60;--color-surface-dark:#1d1b19;--color-border:#d7d0c5;--font-serif:'Playfair Display',Georgia,serif;--font-sans:'DM Sans',Arial,sans-serif;--ease:cubic-bezier(.22,.61,.36,1);--duration:420ms}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--color-bg-primary);color:var(--color-text-primary);font:15px/1.6 var(--font-sans)}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}button,input,select{font:inherit}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.skip-link{position:fixed;top:-100px;left:1rem;z-index:99;background:var(--color-surface-dark);color:var(--color-text-inverse);padding:.8rem 1rem}.skip-link:focus{top:1rem}.eyebrow,.footer-label{margin:0;text-transform:uppercase;letter-spacing:.18em;font-size:10px;line-height:1.3}.site-header{background:rgba(246,242,235,.94);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.header-inner{height:82px;padding:0 clamp(20px,4vw,64px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.brand-mark{font-size:20px;font-weight:500;letter-spacing:.27em;line-height:1}.primary-nav{display:flex;gap:25px;font-size:10px;letter-spacing:.14em;text-transform:uppercase}.primary-nav a,.header-actions a,.bag-toggle{position:relative}.primary-nav a:after,.header-actions a:after{content:'';position:absolute;left:0;bottom:-5px;width:0;height:1px;background:currentColor;transition:width var(--duration) var(--ease)}.primary-nav a:hover:after,.header-actions a:hover:after{width:100%}.header-actions{justify-self:end;display:flex;gap:22px;align-items:center;font-size:10px;letter-spacing:.14em;text-transform:uppercase}.bag-toggle,.mobile-nav-toggle{border:0;background:transparent;padding:0;cursor:pointer;font-size:inherit;letter-spacing:inherit;text-transform:inherit}.mobile-nav-toggle{display:none}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:0 24px;border:1px solid var(--color-text-primary);font-size:10px;text-transform:uppercase;letter-spacing:.16em;transition:background var(--duration) var(--ease),color var(--duration) var(--ease)}.button-dark{background:var(--color-surface-dark);color:var(--color-text-inverse)}.button-dark:hover{background:transparent;color:var(--color-text-primary)}.section-wrap{padding:clamp(72px,10vw,150px) clamp(20px,4vw,64px)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:42px}.section-heading h2,.editorial-heading{font:500 clamp(42px,5.2vw,82px)/.98 var(--font-serif);letter-spacing:-.055em;margin:12px 0 0}.section-link{font-size:10px;text-transform:uppercase;letter-spacing:.15em;border-bottom:1px solid currentColor;padding-bottom:5px;white-space:nowrap}.site-footer{background:var(--color-surface-dark);color:var(--color-text-inverse);padding:70px clamp(20px,4vw,64px) 24px;display:grid;grid-template-columns:1.2fr .6fr 1fr;gap:50px}.site-footer .brand-mark{font-size:20px}.site-footer p{font-size:13px;max-width:290px}.site-footer>div:nth-child(2){display:flex;flex-direction:column;gap:8px;font-size:12px}.footer-label{margin-bottom:10px!important;color:#d8c6ad}.newsletter-form{border-bottom:1px solid #8d8479;display:flex}.newsletter-form input{background:transparent;border:0;outline:0;min-width:0;color:inherit;padding:10px 0;flex:1}.newsletter-form button{background:transparent;border:0;color:inherit;cursor:pointer;font-size:10px;text-transform:uppercase;letter-spacing:.14em}.site-footer small{grid-column:1/-1;padding-top:35px;border-top:1px solid #4d4740;color:#bdb4a8;font-size:10px}.cart-overlay{position:fixed;inset:0;background:rgba(29,27,25,.45);opacity:0;visibility:hidden;transition:opacity var(--duration) var(--ease);z-index:30}.cart-drawer{background:var(--color-bg-primary);position:fixed;right:0;top:0;bottom:0;width:min(440px,100%);z-index:31;display:flex;flex-direction:column;transform:translateX(101%);transition:transform var(--duration) var(--ease)}.cart-open .cart-overlay{opacity:1;visibility:visible}.cart-open .cart-drawer{transform:none}.cart-drawer header,.cart-drawer footer{padding:24px 28px;border-bottom:1px solid var(--color-border)}.cart-drawer header{display:flex;justify-content:space-between}.cart-drawer header button{background:transparent;border:0;padding:0;cursor:pointer;text-transform:uppercase;letter-spacing:.14em;font-size:10px}.cart-lines{padding:0 28px;overflow:auto;flex:1}.cart-line{display:grid;grid-template-columns:92px 1fr;gap:15px;padding:18px 0;border-bottom:1px solid var(--color-border)}.cart-line img{aspect-ratio:1;object-fit:cover;background:#eee9e0}.cart-line h3{font:500 16px/1.15 var(--font-serif);margin:0}.cart-line p{font-size:12px;margin:6px 0}.cart-line button{border:0;background:transparent;padding:0;font-size:10px;text-transform:uppercase;letter-spacing:.12em;text-decoration:underline;cursor:pointer}.cart-recommendation{padding:18px 28px;border-top:1px solid var(--color-border)}.cart-recommendation article{display:grid;grid-template-columns:68px 1fr;gap:12px;margin-top:12px}.cart-recommendation img{aspect-ratio:1;object-fit:cover;background:#eee9e0}.cart-recommendation p{font-size:10px;text-transform:uppercase;letter-spacing:.14em;margin:0;color:#766d63}.cart-recommendation a{font:500 16px/1.2 var(--font-serif)}.cart-recommendation span{display:block;font-size:12px;margin-top:4px}.cart-drawer footer{border-top:1px solid var(--color-border);border-bottom:0}.cart-drawer footer>div{display:flex;justify-content:space-between;margin-bottom:16px}.cart-drawer footer .button{width:100%}@media(max-width:760px){.header-inner{height:66px;grid-template-columns:1fr auto 1fr}.mobile-nav-toggle{display:block;justify-self:start;font-size:10px}.primary-nav{display:none;position:absolute;top:66px;left:0;right:0;background:var(--color-bg-primary);padding:22px;flex-direction:column;border-bottom:1px solid var(--color-border)}.nav-open .primary-nav{display:flex}.header-actions{gap:14px}.header-actions a{display:none}.site-footer{grid-template-columns:1fr;gap:30px}.site-footer small{grid-column:auto}.section-heading{align-items:start;flex-direction:column}.section-link{margin-top:0}}
.cart-offer{margin:0 28px;padding:16px;border:1px solid var(--color-border);background:#ece4d7}.cart-offer:empty{display:none}.cart-offer .eyebrow{margin-bottom:8px}.cart-offer strong{display:block;font:500 20px/1.1 var(--font-serif)}.cart-offer span{display:block;font-size:12px;line-height:1.4;margin-top:7px}.cart-recommendation button{display:block;padding:5px 0 0;border:0;border-bottom:1px solid currentColor;background:transparent;font-size:9px;text-transform:uppercase;letter-spacing:.13em;cursor:pointer}.cart-recommendation button:disabled{opacity:.5}
.announcement-bar{height:30px;display:flex;align-items:center;justify-content:center;gap:18px;background:#1d1b19;color:#f6f2eb;font-size:9px;letter-spacing:.15em;text-transform:uppercase}.announcement-bar span+span{padding-left:18px;border-left:1px solid #655d55}.gift-modal{position:fixed;inset:0;z-index:45;visibility:hidden;opacity:0;transition:opacity var(--duration) var(--ease),visibility var(--duration) var(--ease)}.gift-open .gift-modal{visibility:visible;opacity:1}.gift-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(29,27,25,.58);cursor:pointer}.gift-modal-panel{position:relative;width:min(900px,calc(100% - 32px));max-height:min(780px,calc(100vh - 32px));overflow:auto;margin:16px auto;background:var(--color-bg-primary);padding:clamp(26px,4vw,54px)}.gift-modal-panel header{display:flex;justify-content:space-between;gap:24px;align-items:start}.gift-modal-panel h2{font:500 clamp(42px,6vw,76px)/.92 var(--font-serif);letter-spacing:-.06em;margin:14px 0 0}.gift-modal-panel header button{border:0;background:transparent;padding:5px 0;text-transform:uppercase;letter-spacing:.14em;font-size:10px;cursor:pointer}.gift-modal-intro{max-width:510px;font-size:16px;margin:24px 0 30px}.gift-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.gift-product-grid article{background:#fff}.gift-product-grid img{aspect-ratio:1/1.08;object-fit:contain;padding:7%;background:#fff}.gift-product-grid article>div{padding:12px}.gift-product-grid h3{font:500 17px/1.1 var(--font-serif);margin:6px 0 12px}.gift-product-grid button{width:100%;min-height:38px;border:1px solid var(--color-text-primary);background:transparent;font-size:9px;text-transform:uppercase;letter-spacing:.12em;cursor:pointer}.gift-product-grid button:hover{background:var(--color-surface-dark);color:var(--color-text-inverse)}@media(max-width:760px){.announcement-bar{height:auto;min-height:30px;padding:7px 12px;gap:9px;font-size:8px;letter-spacing:.1em;text-align:center}.announcement-bar span+span{padding-left:9px}.gift-modal-panel{margin:8px auto;width:calc(100% - 16px);max-height:calc(100vh - 16px);padding:25px 18px}.gift-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.gift-product-grid h3{font-size:15px}}
.empty-cart{display:flex;min-height:300px;flex-direction:column;align-items:flex-start;justify-content:center;padding:32px 0}.empty-cart h2{max-width:290px;margin:12px 0;font:500 31px/1.04 var(--font-serif);letter-spacing:-.04em}.empty-cart>p:not(.eyebrow){font-size:13px;margin:0 0 22px}.empty-cart .button{min-height:42px}.cart-recommendation{background:#f0ebe2}.cart-recommendation>p.eyebrow{margin-bottom:12px}.cart-recommendation article{align-items:center}.cart-recommendation article>a{display:block}.cart-recommendation article>img{width:74px;height:74px;aspect-ratio:1;object-fit:contain;background:#fff;padding:5px}.cart-recommendation article div{min-width:0}.cart-recommendation article div>a{display:block;margin-top:3px;font:500 16px/1.1 var(--font-serif)}
.footer-legal{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px 18px;padding-top:12px;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.footer-legal a{color:#d8c6ad}.footer-legal a:hover{text-decoration:underline;text-underline-offset:4px}
