@import url("https://fonts.googleapis.com/css2?family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap");:root{--ink:#253126;--muted:#5a6457;--paper:#fffdf8;--cream:#f7f3eb;--sand:#ece6db;--line:#dcd6ca;--action:#a95662;--action-dark:#8d4450;--blush:#f1d9d6;--sage:#5f6f58;--error:#8e3434;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--gutter:clamp(16px,5vw,64px);--max:1240px}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.15;margin:0}p{margin:0 0 1em}:focus-visible{outline:2px solid var(--action);outline-offset:3px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;margin:0 0 14px}.skip-link{position:fixed;top:12px;left:12px;z-index:50;background:var(--ink);color:#fff;padding:12px 18px;transform:translateY(-200%)}.skip-link:focus{transform:none}.button,.primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 26px;border:1px solid var(--action);background:var(--action);color:#fff;font-weight:600;font-size:15px;text-decoration:none;border-radius:2px;transition:background .15s,border-color .15s,color .15s}.button:hover:not(:disabled),.primary:hover:not(:disabled){background:var(--action-dark);border-color:var(--action-dark)}.button:disabled,.primary:disabled{opacity:.55}.button-light{background:#fff;border-color:#fff;color:var(--ink)}.button-light:hover{background:var(--cream)!important;border-color:var(--cream)!important}.button-outline{background:transparent;border-color:var(--ink);color:var(--ink)}.button-outline:hover:not(:disabled){background:var(--ink)!important;border-color:var(--ink)!important;color:#fff}.button-outline:disabled{border-color:var(--line);color:var(--muted);opacity:1}.text-button,.text-link{background:none;border:0;padding:0;color:var(--ink);font-weight:500;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;min-height:44px;display:inline-flex;align-items:center}.text-button:hover,.text-link:hover{color:var(--action-dark)}.text-button:disabled{opacity:.5}.announcement{background:var(--ink);color:#fff;text-align:center;font-size:13px;letter-spacing:.02em;padding:8px var(--gutter)}.site-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:10px var(--gutter);border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:10}.site-nav{display:flex;gap:32px;font-size:15px}.mobile-menu a,.site-nav a{text-decoration:none}.site-nav a:hover{color:var(--action-dark)}.site-logo{grid-column:2;display:block}.site-logo img{width:220px;height:auto;aspect-ratio:2}.basket-button{grid-column:3;justify-self:end;display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 4px;background:none;border:0;font-size:15px}.basket-button b{min-width:22px;height:22px;padding:0 6px;border-radius:11px;display:grid;place-items:center;background:var(--action);color:#fff;font-size:12px}.icon-button{display:grid;place-items:center;width:44px;height:44px;background:none;border:0;padding:0}.menu-toggle{display:none}.mobile-menu{grid-column:1/-1;display:flex;flex-direction:column;border-top:1px solid var(--line);padding-top:6px}.mobile-menu a{padding:12px 4px;font-size:17px;border-bottom:1px solid var(--line)}.mobile-menu a:last-child{border-bottom:0}.hero{position:relative;min-height:min(640px,78vh);display:flex;align-items:center;overflow:hidden;background:var(--sand)}.hero-image{width:100%;height:100%;object-fit:cover;object-position:center 58%}.hero-image,.hero:after{position:absolute;inset:0}.hero:after{content:"";background:linear-gradient(90deg,rgba(25,33,24,.62),rgba(25,33,24,.2) 60%,rgba(25,33,24,0))}.hero-copy{position:relative;z-index:1;color:#fff;max-width:var(--max);width:100%;margin:0 auto;padding:72px var(--gutter)}.hero-copy>*{max-width:540px}.hero h1{font-size:clamp(40px,6vw,72px);line-height:1.04;margin-bottom:20px}.hero h1 em{color:#f3cbc6}.hero-copy>p:not(.eyebrow){font-size:18px;margin-bottom:28px}.collection{max-width:var(--max);margin:0 auto;padding:72px var(--gutter) 88px;scroll-margin-top:16px}.collection-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:20px}.collection-head h2{font-size:clamp(32px,4vw,46px)}.collection-head p{color:var(--muted);margin:8px 0 0;font-size:15px}.search input{width:min(300px,100%);min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:2px;background:#fff;font-size:16px}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 32px}.filters button{min-height:40px;padding:8px 16px;border:1px solid var(--line);border-radius:20px;background:transparent;color:var(--muted);font-size:14px;white-space:nowrap}.filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px}.card{display:flex;flex-direction:column;min-width:0}.card-image{position:relative;aspect-ratio:4/5;background:var(--cream);overflow:hidden;margin-bottom:14px}.card-image a,.card-image img{display:block;width:100%;height:100%}.card-image img{object-fit:cover;transition:transform .4s ease}.card:hover .card-image img{transform:scale(1.03)}.badge{left:12px;top:12px;background:var(--paper);padding:5px 10px;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;pointer-events:none}.badge,.save{position:absolute}.save{right:10px;top:10px;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,253,248,.92);display:grid;place-items:center;color:var(--ink)}.save[aria-pressed=true]{color:var(--action)}.card h3{font-size:19px;line-height:1.3;margin-bottom:4px;overflow-wrap:anywhere}.card h3 a{text-decoration:none}.card h3 a:hover{text-decoration:underline;text-underline-offset:3px}.card-price{margin:0 0 14px;font-weight:500}.card-add{margin-top:auto;width:100%;font-size:14px;min-height:44px;padding:10px}.empty-state{text-align:center;padding:40px 0;color:var(--muted)}.story{display:grid;grid-template-columns:1fr 1fr;background:var(--cream)}.story img{width:100%;height:100%;max-height:640px;object-fit:cover}.story>div{padding:72px var(--gutter);align-self:center;max-width:620px}.commission h2,.story h2{font-size:clamp(32px,3.6vw,46px);margin-bottom:18px}.story p:not(.eyebrow){color:var(--muted)}.commission{background:var(--sage);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:64px max(var(--gutter),calc((100% - var(--max))/2 + var(--gutter)))}.commission>div{max-width:620px}.commission p:last-child{margin:0}.site-footer{background:var(--sand);display:grid;grid-template-columns:1.4fr 1fr 1fr 1.4fr;gap:40px;padding:64px max(var(--gutter),calc((100% - var(--max))/2 + var(--gutter))) 28px;font-size:14px}.site-footer h2{font:600 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;margin:6px 0 14px}.site-footer nav a{display:block;padding:5px 0;text-decoration:none}.site-footer a:hover{text-decoration:underline;text-underline-offset:3px}.site-footer p{color:var(--muted);margin:0 0 10px}.footer-brand img{width:180px;height:auto;margin-bottom:12px}.footer-legal{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:20px;margin:8px 0 0!important;font-size:13px}.newsletter-form>div{display:flex;border-bottom:1px solid var(--ink)}.newsletter-form input[type=email]{flex:1 1;min-width:0;border:0;background:transparent;padding:12px 0;font-size:16px}.newsletter-form input[type=email]:focus-visible{outline-offset:0}.newsletter-form button{border:0;background:none;font-weight:600;min-width:52px;min-height:44px}.newsletter-form label{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.5;margin-top:12px;color:var(--muted)}.newsletter-form label input{flex:0 0 18px;width:18px;height:18px;margin:1px 0 0;accent-color:var(--ink)}.newsletter-form [role=status]{margin-top:10px;font-size:13px;color:var(--ink)}.product-page{max-width:var(--max);margin:0 auto;padding:24px var(--gutter) 88px}.breadcrumb{display:flex;gap:8px;font-size:14px;color:var(--muted);margin-bottom:20px}.breadcrumb a{min-height:auto}.product-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}.gallery-main{width:100%;aspect-ratio:1;object-fit:cover;background:var(--cream)}.gallery-thumbs{display:flex;gap:10px;margin-top:12px;overflow-x:auto;padding:3px}.gallery-thumbs button{flex:0 0 72px;padding:0;border:1px solid var(--line);background:none}.gallery-thumbs button[aria-pressed=true]{outline:2px solid var(--ink);outline-offset:1px}.gallery-thumbs img{width:72px;height:72px;object-fit:cover}.product-summary{position:sticky;top:24px}.product-summary h1{font-size:clamp(32px,4vw,48px);margin-bottom:12px;overflow-wrap:anywhere}.product-price{font-size:22px;margin-bottom:8px}.stock-note{font-size:14px;color:var(--muted)}.stock-note.sold-out{display:inline-block;background:var(--cream);color:var(--ink);padding:6px 12px;font-weight:600}.purchase{display:flex;gap:12px;margin:20px 0 8px;flex-wrap:wrap}.purchase-add{flex:1 1 220px}.stepper{display:flex;align-items:center;border:1px solid var(--line);background:#fff}.stepper button{width:44px;height:46px;border:0;background:none;font-size:20px}.stepper button:disabled{opacity:.3}.stepper output{min-width:28px;text-align:center;font-weight:600}.product-description{margin:24px 0;color:var(--muted);white-space:pre-line}.product-facts{margin:0;border-top:1px solid var(--line)}.product-facts>div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);font-size:14px}.product-facts dt{font-weight:600}.product-facts dd{margin:0;color:var(--muted)}.product-facts a{color:var(--ink);text-underline-offset:3px}.info-page{max-width:760px;margin:0 auto;padding:56px var(--gutter) 88px;min-height:50vh}.info-page h1{font-size:clamp(34px,5vw,52px);margin-bottom:28px}.info-page h2{font-size:26px;margin:40px 0 14px}.info-page .lead{font-size:18px}.policy-text p{color:var(--muted)}.info-help{margin-top:40px;padding-top:20px;border-top:1px solid var(--line)}.contact-form{display:grid;gap:18px;margin-top:28px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{display:grid;gap:6px;font-size:14px;font-weight:500}.contact-form input,.contact-form textarea{width:100%;padding:12px 14px;border:1px solid #c9c2b5;border-radius:2px;background:#fff;font-size:16px;font-weight:400}.contact-form textarea{resize:vertical;min-height:150px}.contact-form input:user-invalid,.contact-form textarea:user-invalid{border-color:var(--error)}.contact-form .button{justify-self:start}.contact-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-error{color:var(--error);margin:0;font-weight:500}.form-note{font-size:13px;color:var(--muted);margin:0}.notice{padding:24px;border:1px solid var(--line);background:var(--cream);margin-top:28px}.notice h2{font-size:24px;margin:0 0 10px}.drawer-wrap{position:fixed;inset:0;z-index:40}.backdrop{position:absolute;inset:0;background:rgba(23,32,22,.5)}.drawer{position:absolute;right:0;top:0;width:min(460px,100%);height:100%;height:100dvh;background:var(--paper);display:flex;flex-direction:column;padding:20px 24px;box-shadow:-16px 0 40px rgba(0,0,0,.15)}.drawer-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:14px;flex-shrink:0}.drawer-head h2{font-size:26px}.drawer-head h2 span{font:400 15px var(--sans);color:var(--muted)}.drawer-head button{width:44px;height:44px;display:grid;place-items:center;background:none;border:0}.drawer .empty{margin:auto;text-align:center;padding:24px}.drawer .empty h3{font-size:24px;margin-bottom:8px}.drawer .empty p{color:var(--muted)}.basket-scroll{flex:1 1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:12px}.cart-line{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}.thumb{display:block;width:72px;height:88px;background-size:cover!important;background-position:50%!important}.cart-line h3{font-size:17px;line-height:1.3;overflow-wrap:anywhere}.cart-line h3 a{text-decoration:none}.cart-line p{margin:4px 0 8px;font-size:13px;color:var(--muted)}.cart-line>strong{font-size:14px;font-weight:600;white-space:nowrap}.line-actions{gap:14px;flex-wrap:wrap}.line-actions,.qty{display:flex;align-items:center}.qty{border:1px solid var(--line);background:#fff}.qty button{width:40px;height:40px;display:grid;place-items:center;border:0;background:none}.qty button:disabled{opacity:.3}.qty span{min-width:24px;text-align:center;font-size:14px;font-weight:600}.remove-item{font-size:13px;color:var(--muted);min-height:40px}.discount-details{margin:18px 0 6px;font-size:14px}.discount-details summary{cursor:pointer;padding:8px 0;min-height:40px}.discount-entry{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0}.discount-entry input{flex:1 1 140px;min-width:0;min-height:44px;padding:10px 12px;border:1px solid var(--line);background:#fff;font-size:16px;text-transform:uppercase}.discount-entry button{min-height:44px;padding:8px 16px;border:1px solid var(--ink);background:transparent;font-weight:600}.discount-entry button[type=button]{border-color:var(--line);font-weight:400}.basket-error{color:var(--error);font-size:14px;margin:12px 0;line-height:1.5}.basket-error p{margin:0 0 4px}.basket-note{font-size:13px;color:var(--muted)}.cart-total{flex-shrink:0;border-top:1px solid var(--line);padding-top:12px}.cart-total>div{display:flex;justify-content:space-between;gap:12px;margin:6px 0;font-size:15px}.cart-total .basket-discount,.cart-total .delivery-row{color:var(--muted);font-size:14px}.cart-total .basket-grand-total{border-top:1px solid var(--line);margin-top:10px;padding-top:10px;font-size:19px;font-weight:600}.checkout{display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;margin:14px 0 8px;border:0;background:var(--action);color:#fff;font-weight:600;font-size:16px;text-decoration:none}.checkout:hover:not(:disabled){background:var(--action-dark)}.checkout:disabled{opacity:.55}.basket-reassurance{text-align:center;font-size:12px;color:var(--muted);margin:0 0 4px}.checkout-closed>p{font-size:14px;margin:10px 0 0}.continue-shopping{display:flex;margin:0 auto;font-size:14px}.basket-policy{display:block;text-align:center;font-size:12px;color:var(--muted);padding:4px}.confirmation-page{max-width:640px;margin:0 auto;padding:40px var(--gutter);text-align:center;min-height:100dvh}.confirmation-logo img{width:200px;height:auto;margin:0 auto}.confirmation-page section{margin:40px 0}.confirmation-page h1{font-size:clamp(30px,6vw,44px);margin-bottom:18px}.confirmation-page p{overflow-wrap:anywhere}.confirmation-page .primary{margin:8px}@media (max-width:960px){.site-header{grid-template-columns:44px 1fr 44px;gap:8px;padding:6px var(--gutter)}.site-nav{display:none}.menu-toggle{display:grid;grid-column:1;grid-row:1}.site-logo{justify-self:center}.site-logo img{width:170px}.basket-label{display:none}.basket-button{padding:0;width:44px;justify-content:center;position:relative}.basket-button b{position:absolute;top:2px;right:-4px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 18px}.story{grid-template-columns:1fr}.story img{max-height:420px}.commission{flex-direction:column;align-items:flex-start}.site-footer{grid-template-columns:1fr 1fr}.product-layout{grid-template-columns:1fr}.product-summary{position:static}}@media (max-width:560px){body{font-size:15px}.announcement{font-size:12px}.site-logo img{width:150px}.hero{min-height:0}.hero:after{background:linear-gradient(0deg,rgba(25,33,24,.72),rgba(25,33,24,.25))}.hero-copy{padding:120px var(--gutter) 40px}.hero h1{font-size:40px}.hero-copy>p:not(.eyebrow){font-size:16px}.collection{padding:44px var(--gutter) 64px}.collection-head{margin-bottom:14px}.search,.search input{width:100%}.filters{flex-wrap:nowrap;overflow-x:auto;margin:0 calc(var(--gutter)*-1) 24px;padding:0 var(--gutter);scrollbar-width:none}.filters::-webkit-scrollbar{display:none}.grid{gap:28px 12px}.badge{left:8px;top:8px;font-size:10px;padding:4px 7px}.save{right:4px;top:4px}.card h3{font-size:16px}.card-price{font-size:14px;margin-bottom:10px}.card-add{font-size:13px;padding:8px 6px}.story>div{padding:44px var(--gutter)}.commission{padding:48px var(--gutter)}.commission .button{width:100%}.site-footer{grid-template-columns:1fr 1fr;gap:28px 16px;padding:44px var(--gutter) 24px}.footer-brand,.site-footer>div:last-of-type{grid-column:1/-1}.story img{max-height:300px}.product-page{padding-top:16px}.purchase-add{flex-basis:100%}.form-row{grid-template-columns:1fr}.contact-form .button{justify-self:stretch}.info-page{padding-top:36px}.drawer{padding:14px 16px}.cart-line{grid-template-columns:60px minmax(0,1fr) auto;gap:12px}.thumb{width:60px;height:74px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card-image img{transition:none}.card:hover .card-image img{transform:none}}.checkout-panel{position:absolute;inset:0;margin:auto;width:min(720px,100%);height:100%;height:100dvh;background:var(--paper);display:flex;flex-direction:column;box-shadow:0 0 40px rgba(0,0,0,.2)}.checkout-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 20px;border-bottom:1px solid var(--line);flex-shrink:0}.checkout-panel-head h2{font-size:22px}.checkout-back{gap:6px;font-size:14px}.checkout-panel-body{flex:1 1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:16px 16px 24px}.checkout-embed{min-height:480px}.checkout-loading,.checkout-panel-note{font-size:13px;color:var(--muted);text-align:center;margin:16px 0 0}.checkout-loading{margin:auto;padding:40px}@media (min-width:760px){.checkout-panel{height:calc(100dvh - 48px);top:24px;bottom:24px}}@media (max-width:560px){.checkout-panel-head{padding:6px 12px}.checkout-panel-head h2{font-size:18px}.checkout-panel-body{padding:8px 4px 20px}}.policy-text h2{font-size:24px;margin:36px 0 12px}.policy-text ul{padding-left:20px;color:var(--muted);margin:0 0 1em}.policy-text li{margin:6px 0}.policy-text a{color:var(--ink)}.basket-dispatch{font-size:12px!important;color:var(--muted);margin:2px 0 6px!important}.invoice-page{max-width:640px;margin:0 auto;padding:32px var(--gutter) 64px;min-height:100dvh}.invoice-page .confirmation-logo img{width:180px;height:auto;margin:0 auto 24px}.invoice-card{background:#fff;border:1px solid var(--line);padding:28px}.invoice-card h1{font-size:clamp(28px,5vw,38px);margin-bottom:14px}.invoice-note{color:var(--muted);white-space:pre-line}.invoice-lines{width:100%;border-collapse:collapse;margin:20px 0;font-size:15px}.invoice-lines td{padding:10px 0;border-bottom:1px solid var(--line);vertical-align:top}.invoice-lines td:last-child{text-align:right;white-space:nowrap;padding-left:16px}.invoice-lines tfoot td{font-weight:600;font-size:18px;border-bottom:0;padding-top:14px}.invoice-pay{width:100%;margin:8px 0 16px}.invoice-small{font-size:13px;color:var(--muted);margin:0}.invoice-card .checkout-panel{text-align:left}@media (max-width:560px){.invoice-card{padding:20px 16px}}.footer-legal{align-items:center}.footer-legal p{margin:0;color:var(--muted)}.footer-credit{font-size:12px;color:var(--muted);text-decoration:none;text-align:right;max-width:560px;line-height:1.5}.footer-credit:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}@media (max-width:760px){.footer-legal{flex-direction:column;align-items:flex-start}.footer-credit{text-align:left}}