@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--green:#1b3027;--cream:#f7f5ee;--gold:#e4b879;--ink:#24332b;--muted:#66716b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #b97729;outline-offset:5px}header{display:flex;align-items:center;justify-content:space-between;padding:23px 5%;gap:30px;background:var(--cream)}.brand{display:flex;align-items:center;gap:13px;font-weight:700;font-size:15px;letter-spacing:1.8px;line-height:1.4}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:5px}.brandmark{border:1px solid currentColor;padding:9px 7px;font-family:Georgia,serif;font-size:23px;letter-spacing:-2px}.brandmark span{font-size:13px;margin:0 3px}nav{display:flex;gap:32px;font-size:14px}nav a:hover,.text-link:hover{text-decoration:underline}.button{display:inline-flex;justify-content:center;align-items:center;border:1px solid var(--green);background:var(--green);color:white;padding:15px 26px;font-weight:600;font-size:15px;cursor:pointer;border-radius:2px}.button:hover{background:#304f40}.small{padding:12px 20px}.amber{background:var(--gold);border-color:var(--gold);color:var(--green)}.amber:hover{background:#f1ca92}.hero{position:relative;min-height:650px;isolation:isolate;color:var(--cream);display:flex;align-items:center}.hero>img,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(12,25,18,.91),rgba(16,27,20,.59) 48%,rgba(12,22,16,.12))}.hero-content{padding:65px 8% 105px;width:100%}.eyebrow{font-size:12px;letter-spacing:2.1px;font-weight:700;margin:0 0 23px}.hero h1{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;font-size:clamp(60px,7.5vw,110px);line-height:1.01;letter-spacing:-2px;margin:0 0 25px}.hero h1 em{font-weight:400;color:var(--gold)}.hero-content>p:not(.eyebrow){font-size:19px;color:#e2e4dd;margin-bottom:31px}.hero-bottom{position:absolute;bottom:26px;left:8%;right:8%;display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:1.5px;border-top:1px solid #ffffff40;padding-top:20px}.ribbon{display:flex;justify-content:center;align-items:center;gap:55px;background:var(--green);color:#e9eadd;padding:23px;font-size:14px}.ribbon b{color:var(--gold);font-size:12px}.section{padding:95px 8%;scroll-margin-top:15px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.section-heading>p{color:var(--muted);font-size:15px}.section .eyebrow{color:#796444;font-size:11px;margin-bottom:15px}h2{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(40px,4.3vw,61px);line-height:1.1;font-weight:400;letter-spacing:-1px;margin:0}h3{font-size:21px;line-height:1.3}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.product{padding:27px;background:#eeece3;border:1px solid #dedfd4;display:flex;flex-direction:column}.product-top{min-height:52px;display:flex;align-items:start;flex-wrap:wrap;gap:9px;font-size:10px;letter-spacing:1px;color:#6b6c5e}.tag{background:#dbe1d1;color:#334d36;padding:3px 7px;font-size:9px;letter-spacing:0}.product h3{font-family:'Libre Caslon Display',Georgia,serif;font-size:36px;font-weight:400;margin:15px 0}.product>p{font-size:15px;color:#647067;margin:0 0 26px}.product dl{font-size:13px;margin:auto 0 24px}.product dl>div{padding:12px 0;border-top:1px solid #d6d9ce}.product dt{color:#70786d}.product dd{margin:2px 0 0;font-weight:500}.product button{background:none;border:0;border-top:1px solid #c8cdbf;text-align:left;padding:18px 0 0;color:var(--green);font-weight:600;cursor:pointer;display:flex;justify-content:space-between;gap:10px;font-size:14px}.product button:hover{color:#91662b}.product-note{font-size:12px;color:var(--muted);margin-top:20px}.delivery{background:var(--green);color:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:13%}.delivery .eyebrow{color:var(--gold)}.delivery h2{font-size:70px}.delivery p{color:#c6cfc7}.delivery>div>p:not(.eyebrow){max-width:380px;margin:25px 0}.text-link{display:inline-block;border-bottom:1px solid var(--gold);padding-bottom:5px;color:var(--gold);font-size:14px}.delivery ol{list-style:none;padding:0;margin:0}.delivery li{display:flex;gap:26px;padding:25px 0;border-bottom:1px solid #ffffff26}.delivery li:first-child{padding-top:0}.delivery li>span{color:var(--gold);font-family:Georgia,serif;font-size:23px}.delivery li h3{margin:0;font-weight:500}.delivery li p{font-size:15px;margin:10px 0 0}.order-section{display:grid;grid-template-columns:1fr 1fr;gap:10%}.order-section>div>p:not(.eyebrow){color:var(--muted);margin-top:24px}.order-note{border-left:2px solid #c39a61;margin-top:35px;padding-left:20px;max-width:355px;font-size:14px}.order-note p{margin:7px 0;color:var(--muted)}form label{display:block;font-weight:500;font-size:14px;margin-bottom:17px}input,select,textarea{display:block;width:100%;padding:12px;background:#fffcf7;border:1px solid #cdd1c7;border-radius:2px;margin-top:7px;color:var(--green);font-size:15px}textarea{resize:vertical}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.optional{font-weight:400;color:var(--muted)}form>.button{width:100%}#result{border-top:1px solid #cdd1c7;margin-top:24px;padding-top:22px}#status{font-size:14px}.secondary{background:transparent;color:var(--green)}.secondary:hover{background:#e3e7db}.faq{border-top:1px solid #dce0d5;display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:65px}.faq h2{max-width:330px}details{border-bottom:1px solid #cfd4c8;padding:20px 0}details:first-child{padding-top:0}summary{cursor:pointer;font-size:16px;font-weight:500;list-style:none;padding-right:24px;position:relative}summary:after{content:'+';position:absolute;right:0}details[open] summary:after{content:'−'}details p{font-size:15px;color:var(--muted);padding-right:20px}footer{background:#14271e;color:var(--cream);padding:45px 8%;display:flex;align-items:center;justify-content:space-between;gap:30px}footer>p{font-family:Georgia,serif;font-style:italic;font-size:19px;color:#c6d0c5}footer>span{font-size:11px;color:#aab6aa}@media(min-width:1600px){header,.section,footer{padding-left:max(8%,calc((100vw - 1400px)/2));padding-right:max(8%,calc((100vw - 1400px)/2))}}@media(max-width:900px){header{padding:20px 5%}nav{gap:18px}.brand{font-size:12px}.section{padding:65px 6%}.products{gap:12px}.product{padding:20px}.section-heading{align-items:start}.delivery,.order-section,.faq{gap:6%}.delivery h2{font-size:60px}.ribbon{gap:22px}.hero{min-height:600px}.hero-content{padding-left:6%}}@media(max-width:650px){header{flex-wrap:wrap;gap:18px}header .small{padding:10px 13px;font-size:12px}nav{order:3;width:100%;justify-content:center;border-top:1px solid #d8dccf;padding-top:14px;font-size:13px}.brandmark{font-size:20px}.brand small{font-size:8px}.hero{min-height:550px}.hero h1{font-size:64px}.hero-content{padding:55px 7% 105px}.hero-content .eyebrow{font-size:10px}.hero-bottom{left:7%;right:7%;font-size:9px}.hero-bottom span:last-child{display:none}.ribbon{gap:13px;font-size:10px;padding:20px 12px}.ribbon b{font-size:8px}.section{padding:55px 7%}.section-heading{display:block}.section-heading>p{margin-top:20px}.products{grid-template-columns:1fr;gap:18px}.product{padding:25px}.product-top{min-height:24px}.product h3{margin-top:10px}.delivery,.order-section,.faq{grid-template-columns:1fr;gap:35px}.delivery h2{font-size:56px}.delivery li{padding:22px 0}.field-row{grid-template-columns:1fr;gap:0}.faq h2{max-width:none}.order-note{margin-top:25px}footer{padding:35px 7%;flex-direction:column;align-items:flex-start;gap:20px}footer>p{margin:0}.hero-shade{background:linear-gradient(90deg,#0c1912e8,#101b1490)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.shop-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:20px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{border:1px solid #cdd1c7;background:transparent;color:var(--green);padding:9px 15px;border-radius:30px;cursor:pointer;font-size:14px}.filters button[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}.search-label{min-width:220px}.search-label input{margin:0}.catalog-note{font-size:13px;color:var(--muted);margin:15px 0 25px}.shop-products{align-items:stretch}.shop-card{padding:0;overflow:hidden;background:#fffdf8;min-width:0}.product .photo-button{padding:0;border:0;position:relative;display:block;width:100%;background:white;cursor:zoom-in}.photo-button img{display:block;width:100%;aspect-ratio:1.2;height:auto;object-fit:contain}.photo-button>span{position:absolute;right:12px;bottom:12px;background:#ffffffeb;border-radius:3px;padding:4px 9px;font-size:11px}.shop-card-body{padding:22px;display:flex;flex-direction:column;flex:1}.shop-card-body h3{font-family:'DM Sans',sans-serif;font-size:19px;font-weight:600;line-height:1.4;margin:0 0 12px;letter-spacing:0}.shop-card-body .eyebrow{font-size:10px;margin-bottom:10px}.product-spec{font-size:13px;color:var(--muted);margin:0 0 20px}.shop-card label{margin-top:auto;font-size:12px}.shop-card select{font-size:13px;padding:10px 7px;max-width:100%}.buy-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}.price{font-size:23px;font-weight:500}.product .add-button{border:0;background:var(--green);color:white;padding:11px 13px;font-size:12px;border-radius:2px;white-space:nowrap}.product .add-button:hover{background:#385543}.shop-status{position:sticky;bottom:15px;background:var(--green);color:white;padding:12px 18px;border-radius:3px;font-size:14px;box-shadow:0 3px 15px #0002;z-index:3}.shop-status:empty{display:none}.subtotal{display:flex;justify-content:space-between;border-top:1px solid #cdd1c7;padding-top:20px;margin-top:20px;font-size:19px}.empty-basket{border:1px dashed #bbc5b9;padding:20px;margin-bottom:20px}.empty-basket .text-link{color:var(--green)}.cart-line{display:flex;gap:12px;align-items:flex-start;padding:18px 0;border-bottom:1px solid #d8dccf}.cart-line>img{object-fit:contain;background:white;flex-shrink:0}.cart-line-detail{flex:1;min-width:0}.cart-line-detail>strong{display:block;font-size:14px;line-height:1.4}.cart-line-detail>span{display:block;font-size:12px;color:var(--muted);margin-top:5px}.cart-line>strong{font-size:14px;white-space:nowrap}.quantity-controls{display:flex;gap:12px;align-items:center;margin-top:10px;font-size:13px}.quantity-controls button{background:transparent;border:1px solid #c6cfbf;min-width:30px;height:30px;cursor:pointer;color:var(--green)}.quantity-controls .remove{border:0;text-decoration:underline;font-size:12px}.button:disabled{opacity:.4;cursor:not-allowed}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}dialog{border:0;background:var(--cream);padding:30px;max-width:800px;width:90vw;max-height:90vh;border-radius:4px;color:var(--green)}dialog::backdrop{background:#0a1b14cf}dialog h2{font-family:'DM Sans',sans-serif;font-size:22px;line-height:1.4;margin:10px 40px 20px 0}#gallery-main{display:block;width:100%;height:48vh;object-fit:contain;background:white}#gallery-thumbs{display:flex;gap:8px;overflow-x:auto;padding:16px 0 0}#gallery-thumbs button{padding:0;border:2px solid transparent;background:white;cursor:pointer;flex-shrink:0}#gallery-thumbs button[aria-pressed=true]{border-color:var(--green)}#gallery-thumbs img{width:65px;height:65px;object-fit:contain;display:block}.gallery-close{position:absolute;right:17px;top:10px;background:none;border:0;font-size:32px;color:var(--green);cursor:pointer}.order-section{grid-template-columns:.8fr 1.2fr}#result .button{margin-bottom:8px}a[hidden]{display:none}@media(max-width:1050px){.shop-products{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.shop-products{grid-template-columns:1fr}.order-section{grid-template-columns:1fr}.shop-card-body{padding:22px}.search-label{width:100%}.cart-line>img{width:45px;height:45px}.cart-line{gap:9px}dialog{padding:20px}.shop-toolbar{gap:16px}.filters button{font-size:12px;padding:8px 11px}}
