@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--ink:#252922;--cream:#f4f0e8;--sand:#e7dfd3;--olive:#555f43;--accent:#bc734d;--white:#fff;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}button,a{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}img{display:block;max-width:100%}
.demo-bar{background:var(--ink);color:#f2eadf;text-align:center;font-size:10px;letter-spacing:.18em;padding:9px 16px;font-weight:700}.demo-bar span{margin:0 8px;color:var(--accent)}.site-header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,76px);background:var(--cream);gap:24px}.wordmark{font-size:22px;font-weight:700;letter-spacing:-.07em;white-space:nowrap}.wordmark span:first-child{font-weight:400}.wordmark-dot{color:var(--accent);font-size:29px}.desktop-nav{display:flex;gap:38px;margin-left:auto;margin-right:24px}.desktop-nav a{font-size:13px;font-weight:600;transition:color .2s}.desktop-nav a:hover,.header-cta:hover{color:var(--accent)}.header-cta{border-bottom:1px solid currentColor;padding-bottom:4px;font-size:13px;font-weight:700;white-space:nowrap}.header-cta span{margin-left:10px}.menu-toggle{display:none;background:none;border:0;font-size:24px;color:var(--ink)}.mobile-nav{background:var(--cream);padding:4px 24px 22px;border-top:1px solid #dfd8ca}.mobile-nav a{display:block;padding:12px 0;font-size:14px;font-weight:700}
.hero{height:min(690px,calc(100vh - 112px));min-height:520px;position:relative;overflow:hidden;color:white;background:#af977f}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 44%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,25,22,.50),rgba(24,25,22,.08) 60%,rgba(24,25,22,0))}.hero-content{position:absolute;left:clamp(24px,8vw,122px);top:50%;transform:translateY(-45%);max-width:560px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.19em;color:var(--olive)}.eyebrow.light{color:#f5efe5}.hero h1,.intro h2,.section-top h2,.statement h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;letter-spacing:-.045em}.hero h1{font-size:clamp(52px,6.6vw,100px);line-height:1.02;margin:22px 0 18px}.hero h1 span{color:#e9b78d}.hero p{max-width:365px;font-size:16px;line-height:1.6;margin:0 0 30px;color:#f9f1e8}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-width:220px;padding:16px 19px;font-size:13px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-light{background:var(--cream);color:var(--ink)}.button-light:hover{background:white}.hero-side{position:absolute;right:28px;bottom:34px;writing-mode:vertical-rl;font-size:10px;letter-spacing:.2em;font-weight:700;color:#fff}
.section-wrap{max-width:1440px;margin:auto;padding-left:clamp(24px,5vw,76px);padding-right:clamp(24px,5vw,76px)}.intro{display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:80px;padding-top:105px;padding-bottom:110px}.intro h2{font-size:clamp(40px,4.3vw,66px);line-height:1.16;margin:16px 0 0}.intro h2 em,.statement h2 em{font-weight:500;color:var(--accent)}.intro p{font-size:15px;line-height:1.8;max-width:420px;color:#64685e;margin:0 0 5px}.collection{padding-bottom:125px}.section-top{border-top:1px solid #c9c8bf;padding-top:28px;display:flex;justify-content:space-between;gap:24px}.section-top h2{font-size:clamp(34px,3.5vw,52px);margin:13px 0 28px}.section-count{font-size:12px;color:#777b71;font-weight:700;letter-spacing:.13em}.filter-row{display:flex;gap:7px;margin-bottom:28px}.filter{background:transparent;border:1px solid #c9c7bd;border-radius:100px;padding:9px 18px;color:var(--ink);font-size:12px;font-weight:700}.filter.active,.filter:hover{background:var(--ink);border-color:var(--ink);color:white}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.product[hidden]{display:none}.product-open{display:block;width:100%;text-align:left;border:0;background:none;padding:0;color:inherit}.product-image{display:block;overflow:hidden;background:#efe9df;aspect-ratio:1/1.17}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.product-open:hover .product-image img{transform:scale(1.055)}.product-meta{display:flex;align-items:center;justify-content:space-between;margin:18px 0 10px;font-size:10px;font-weight:700;letter-spacing:.16em;color:#777b71}.product-arrow{font-size:19px;line-height:1;color:var(--ink)}.product strong{display:block;font-size:18px;letter-spacing:-.03em}.product small{display:block;margin-top:6px;color:#777b71;font-size:12px}
.statement{background:var(--olive);color:white;padding:92px 0 102px}.statement-inner{max-width:1440px}.statement h2{font-size:clamp(43px,5vw,78px);line-height:1.13;max-width:850px;margin:20px 0}.statement h2 em{color:#e6b790}.statement p{max-width:530px;font-size:15px;line-height:1.75;color:#e2e5da}.text-link{display:inline-block;border-bottom:1px solid #fff;padding-bottom:6px;margin-top:28px;font-size:13px;font-weight:700}.text-link span{margin-left:32px}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:130px}.site-footer p{font-size:12px;color:#777b71}
dialog{width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 32px);border:0;padding:0;background:var(--cream);color:var(--ink);box-shadow:0 30px 90px #0005}dialog::backdrop{background:#151914aa}dialog[open]{display:grid;grid-template-columns:1fr 1fr}dialog img{width:100%;height:100%;max-height:600px;object-fit:cover}.dialog-copy{padding:50px 38px;display:flex;flex-direction:column;justify-content:center}.dialog-copy h2{font:500 38px/1.15 'Playfair Display',Georgia,serif;letter-spacing:-.04em;margin:15px 0}.dialog-copy p{line-height:1.7;color:#676d62}.dialog-note{font-size:12px;line-height:1.6;border-top:1px solid #c9c7bd;padding-top:18px;margin-top:22px;color:#676d62}.dialog-close{position:absolute;right:13px;top:11px;border:0;background:var(--cream);border-radius:50%;width:36px;height:36px;font-size:27px;line-height:1}
@media(max-width:900px){.desktop-nav{gap:17px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:35px}.intro{gap:35px}.hero{min-height:540px}}
@media(max-width:620px){.site-header{height:66px}.wordmark{font-size:19px}.desktop-nav,.header-cta{display:none}.menu-toggle{display:block}.hero{height:680px;min-height:0}.hero-image{object-position:62% center}.hero-shade{background:linear-gradient(0deg,rgba(24,25,22,.69),rgba(24,25,22,.1) 75%)}.hero-content{top:auto;bottom:44px;left:24px;right:24px;transform:none}.hero h1{font-size:55px;margin:13px 0}.hero p{font-size:14px;max-width:280px}.hero-side{display:none}.intro{display:block;padding-top:70px;padding-bottom:75px}.intro p{margin-top:28px}.collection{padding-bottom:80px}.section-top h2{font-size:38px}.product-grid{gap:12px;row-gap:28px}.product-image{aspect-ratio:1/1.2}.product strong{font-size:15px}.product-meta{font-size:9px}.statement{padding:72px 0}.statement h2{font-size:45px}.site-footer{min-height:155px;display:block;padding-top:35px;padding-bottom:30px}.site-footer p{margin:7px 0}dialog[open]{display:block}dialog img{height:300px}.dialog-copy{padding:28px}.dialog-copy h2{font-size:31px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.button,.product-image img{transition:none}}
.filter-row{flex-wrap:wrap}
.product-link{display:block;width:100%;color:inherit;text-decoration:none}
.product-link:hover .product-image img{transform:scale(1.045)}
.product-link:hover .product-action{text-decoration:underline}
.product-image{background:#eeeae3;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center}
.product-image img{object-fit:contain;width:100%;height:100%}
.product strong{min-height:3.2em;font-size:16px;line-height:1.38;letter-spacing:-.02em}
.product-price{display:block;margin-top:8px;font-size:18px;font-weight:700;color:var(--ink)}
.product-action{display:inline-block;margin-top:14px;border-bottom:1px solid var(--accent);padding-bottom:4px;font-size:12px;font-weight:700;color:var(--olive)}
.price-note{font-size:12px;line-height:1.65;color:#64685e;margin:35px 0 0;max-width:760px}
@media(max-width:620px){.product strong{font-size:14px;min-height:4.2em}.product-price{font-size:16px}.product-action{font-size:11px}.product-meta{margin-top:12px}.filter{padding:8px 12px}}
