:root{--ink:#20221f;--muted:#6d7068;--paper:#f5f1e9;--cream:#e8e0d3;--clay:#a95236;--line:#d8d0c4;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
html,body{overflow-x:clip}
html{scroll-behavior:smooth;scroll-padding-top:72px}
.hero,.catalog-section,.about-section{background:var(--paper)}
.hero-mark{display:inline-block;line-height:1.08;padding:.02em .1em .14em;border:1px solid currentColor;box-shadow:4px 4px 0 rgba(32,34,31,.12);-webkit-box-decoration-break:clone;box-decoration-break:clone}.hero-mark-ink{background:var(--ink);color:var(--paper)}.hero-mark-clay{background:var(--clay);color:var(--paper);border-color:var(--clay);box-shadow:4px 4px 0 rgba(169,82,54,.2)}
.reveal{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
@media(max-width:780px){html{scroll-padding-top:64px}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer;color:inherit}.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}.skip-link{position:absolute;left:12px;top:-60px;background:var(--ink);color:var(--paper);padding:12px 16px;z-index:9}.skip-link:focus{top:12px}.site-header{border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(245,241,233,.96);z-index:5}.header-inner{height:72px;max-width:1200px;margin:auto;padding:0 32px;display:flex;align-items:center;gap:32px}.wordmark{font-size:20px;letter-spacing:-.06em;font-weight:600}.wordmark span{font-family:var(--serif);font-weight:500}.site-nav{display:flex;gap:28px;margin-left:auto;color:#4d504a;font-size:14px}.site-nav a:hover,.site-nav a:focus-visible,.text-link:hover{color:var(--clay)}.bag-button,.menu-button{background:none;border:0;min-width:44px;min-height:44px}.bag-button{display:flex;align-items:center;justify-content:center;gap:2px;font-size:22px}.saved-count{font-size:11px;color:var(--clay)}.menu-button{display:none}.hero{max-width:1200px;margin:auto;padding:72px 32px 96px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.eyebrow{margin:0 0 18px;color:var(--clay);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.hero h1,.about-section h2,.material-copy h2,.section-heading h2{font-family:var(--serif);font-weight:500;letter-spacing:-.045em;line-height:1.04;margin:0}.hero h1{font-size:clamp(46px,7vw,90px);max-width:620px}.hero h1 em,.about-section em{color:var(--clay);font-style:normal}.hero-text{max-width:360px;color:var(--muted);margin:28px 0 30px}.text-link{display:inline-flex;gap:10px;align-items:center;border-bottom:1px solid var(--ink);padding-bottom:5px;font-weight:600;font-size:14px}.hero-art{height:520px;position:relative;background:#d8c8b4;overflow:hidden}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(140deg,transparent 55%,rgba(58,40,25,.15));}.hero-art p{position:absolute;bottom:20px;left:20px;z-index:1;color:#fff;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.sun-shape{position:absolute;width:280px;height:280px;background:#c78557;border-radius:50%;top:52px;right:-38px}.shirt-shape{position:absolute;width:260px;height:380px;background:#847c6b;left:50%;top:85px;transform:translateX(-50%) rotate(3deg);clip-path:polygon(20% 0,42% 7%,58% 7%,80% 0,100% 15%,85% 28%,82% 100%,18% 100%,15% 28%,0 15%)}.catalog-section{max-width:1200px;margin:auto;padding:0 32px 112px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}.section-heading h2{font-size:clamp(38px,5vw,64px)}.result-count{color:var(--muted);font-size:13px;margin:0}.catalog-tools{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:18px 0 28px}.filter-row{display:flex;gap:8px;flex-wrap:wrap}.filter-chip{border:1px solid var(--line);background:transparent;border-radius:99px;padding:8px 15px;min-height:44px;font-size:13px}.filter-chip.is-active,.filter-chip:hover,.filter-chip:focus-visible{background:var(--ink);border-color:var(--ink);color:var(--paper)}.search-field{border-bottom:1px solid var(--ink);display:flex;align-items:center;gap:8px;min-width:180px}.search-field input{border:0;background:transparent;outline:0;width:100%;padding:10px 0}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 20px}.product-card{min-width:0}.product-visual{position:relative;aspect-ratio:4/5;background:var(--cream);overflow:hidden}.product-visual img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.72)}.product-card:nth-child(2) .product-visual{background:#b8b09e}.product-card:nth-child(3) .product-visual{background:#d7b9a4}.save-product{position:absolute;right:10px;top:10px;width:44px;height:44px;border-radius:50%;border:0;background:rgba(245,241,233,.9);font-size:23px;z-index:1}.save-product.is-saved{background:var(--clay);color:#fff}.product-info{display:flex;justify-content:space-between;gap:12px;padding-top:13px}.product-info h3{font-size:16px;font-weight:500;margin:0}.product-info p{margin:4px 0 0;color:var(--muted);font-size:13px}.product-price{font-size:13px;color:var(--clay);white-space:nowrap}.product-card .product-visual{cursor:pointer}.empty-state,.error-state{text-align:center;padding:72px 20px;border:1px solid var(--line)}.empty-state h3{font-family:var(--serif);font-size:32px;font-weight:500;margin:0 0 20px}.outline-button{background:transparent;border:1px solid var(--ink);min-height:44px;padding:10px 18px}.material-note{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;min-height:440px}.material-image{background:linear-gradient(115deg,#b6a184,#e2d4bd 47%,#877864);position:relative}.material-image:after{content:'';position:absolute;inset:0;opacity:.18;background:repeating-linear-gradient(100deg,transparent 0 5px,#fff 6px 7px)}.material-copy{max-width:500px;padding:64px 8vw}.material-copy h2{font-size:clamp(40px,5vw,70px);margin-bottom:24px}.material-copy p:not(.eyebrow){color:#cbc5bb;max-width:360px;margin-bottom:30px}.material-copy .text-link{border-color:var(--paper)}.about-section{max-width:1200px;margin:auto;padding:110px 32px 130px;display:grid;grid-template-columns:1fr 1.2fr;column-gap:40px}.about-section h2{font-size:clamp(50px,8vw,108px);grid-column:2;grid-row:1/3}.about-section>p:last-child{max-width:280px;align-self:end;color:var(--muted);margin:0}.site-footer{display:flex;justify-content:space-between;padding:22px 32px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.saved-panel{position:fixed;top:0;right:0;bottom:0;width:min(390px,100%);background:var(--paper);z-index:10;padding:30px;box-shadow:-14px 0 30px rgba(32,34,31,.13);transform:translateX(105%);transition:transform .25s ease}.saved-panel.is-open{transform:none}.saved-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:18px}.saved-header h2{font:500 32px var(--serif);margin:0}.close-saved,.dialog-close{border:0;background:none;font-size:30px;min-width:44px;min-height:44px}.saved-list p{color:var(--muted);font-size:14px}.saved-item{display:flex;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}.saved-item img{width:64px;height:80px;object-fit:cover}.saved-item h3{font-size:14px;font-weight:500;margin:0}.product-dialog{border:0;padding:0;max-width:620px;width:calc(100% - 32px);background:var(--paper);color:var(--ink)}.product-dialog::backdrop{background:rgba(32,34,31,.6)}.dialog-close{position:absolute;right:8px;top:8px;z-index:1}.dialog-layout{display:grid;grid-template-columns:1fr 1fr}.dialog-layout img{width:100%;height:100%;max-height:460px;object-fit:cover}.dialog-info{padding:48px 28px 28px}.dialog-info h2{font:500 38px var(--serif);margin:0 0 10px;line-height:1.05}.dialog-info p{color:var(--muted);font-size:14px}.dialog-note{border-top:1px solid var(--line);padding-top:16px;margin-top:28px;font-size:12px!important}.product-dialog:not([open]){display:none}:focus-visible{outline:3px solid var(--clay);outline-offset:3px}
@media(max-width:780px){.header-inner{height:64px;padding:0 18px;gap:6px}.wordmark{order:1}.header-actions{order:2;margin-left:auto;gap:2px}.menu-button{order:3;display:flex;align-items:center;gap:7px;font-size:12px;margin-left:0;padding-inline:8px}.menu-button i{width:16px;height:1px;background:var(--ink);position:relative}.menu-button i:after{content:'';position:absolute;top:5px;left:0;width:16px;height:1px;background:var(--ink)}.site-nav{position:absolute;left:12px;right:12px;top:70px;display:none;flex-direction:column;gap:0;padding:8px 18px;background:var(--paper);border:1px solid var(--line);box-shadow:0 8px 20px rgba(32,34,31,.08)}.site-nav.is-open{display:flex}.site-nav a{padding:14px 0;border-bottom:1px solid var(--line)}.site-nav a:last-child{border:0}.hero{display:flex;flex-direction:column;padding:52px 18px 68px;gap:42px;align-items:stretch}.hero h1{font-size:clamp(48px,14vw,76px)}.hero-art{height:390px}.catalog-section{padding:0 18px 76px}.section-heading{align-items:start;flex-direction:column;gap:10px}.catalog-tools{flex-direction:column;align-items:stretch}.search-field{order:-1}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 12px}.product-info{display:block}.product-price{display:block;margin-top:5px}.material-note{grid-template-columns:1fr;min-height:0}.material-image{height:300px}.material-copy{padding:48px 18px 58px}.about-section{display:block;padding:76px 18px 90px}.about-section h2{font-size:clamp(54px,15vw,88px);margin:32px 0}.site-footer{padding:20px 18px;gap:15px;flex-direction:column}.dialog-layout{grid-template-columns:1fr}.dialog-layout img{height:300px}.dialog-info{padding:28px}.saved-panel{padding:22px}.filter-row{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}.filter-chip{white-space:nowrap}}
@media(max-width:780px){.material-note{grid-template-columns:clamp(76px,24vw,104px) minmax(0,1fr);min-height:360px}.material-image{height:auto;min-height:360px}.material-copy{min-width:0;padding:34px 18px 34px}.material-copy h2{font-size:clamp(34px,9vw,46px);overflow-wrap:normal}.material-copy p:not(.eyebrow){font-size:13px;line-height:1.45}.material-copy .text-link{font-size:12px;gap:5px}}
@media(max-width:340px){.material-note{grid-template-columns:64px minmax(0,1fr)}.material-copy{padding-inline:14px}.material-copy h2{font-size:32px}}
@media(max-width:380px){.product-grid{grid-template-columns:1fr}.product-visual{aspect-ratio:1/1.12}}
@media(min-width:781px) and (max-width:1050px){.product-grid{grid-template-columns:repeat(2,1fr)}}
.hero{display:block;padding-top:72px;padding-bottom:52px}.hero-copy{max-width:700px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.saved-panel{transition:none}}
.payment-option img{width:42px;height:30px;object-fit:contain;display:block}
.checkout-button{background:#315c4a}.checkout-button:hover,.checkout-button:focus-visible{background:#244638}
.checkout-dialog .checkout-button{background:#315c4a}.checkout-dialog .checkout-button:hover,.checkout-dialog .checkout-button:focus-visible{background:#244638}
.admin-page{min-height:100vh}.admin-back{margin-left:auto;border-bottom:1px solid var(--ink);padding:7px 0;font-size:13px}.admin-main{max-width:1200px;margin:auto;padding:72px 32px 100px}.admin-intro{max-width:620px;margin-bottom:42px}.admin-intro h1{font:500 clamp(48px,7vw,86px) var(--serif);line-height:1;margin:0 0 20px}.admin-intro>p:last-child{color:var(--muted)}.admin-layout{display:grid;grid-template-columns:minmax(280px,410px) minmax(0,1fr);gap:64px;align-items:start}.admin-form,.admin-products{background:#fffaf3;border:1px solid var(--line);padding:28px}.admin-form{display:grid;gap:16px}.admin-form h2,.admin-products-heading h2{font:500 32px var(--serif);margin:0}.admin-form label{display:grid;gap:7px;font-size:13px;font-weight:600}.admin-form input,.admin-form select,.admin-form textarea{width:100%;border:1px solid #cfc5b7;background:var(--paper);padding:12px;min-height:46px;color:var(--ink);border-radius:0}.admin-form textarea{height:120px;resize:none}.admin-form small{color:var(--muted);font-size:11px;font-weight:400}.admin-submit{border:0;background:#315c4a;color:#fff;min-height:48px;font-weight:600}.admin-submit:hover,.admin-submit:focus-visible{background:#244638}.admin-feedback{color:var(--clay);font-size:13px;margin:0}.admin-products-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:4px}.admin-products-heading strong{font-size:12px;color:var(--muted);font-weight:500}.admin-list{display:grid}.admin-product{display:grid;grid-template-columns:78px minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.admin-product img{width:78px;height:94px;object-fit:cover;background:var(--cream)}.admin-product h3{font-size:15px;font-weight:600;margin:0 0 5px}.admin-product p,.admin-product small{color:var(--muted);font-size:12px;margin:0}.delete-product{border:1px solid #c9b8aa;color:#8b4736;background:transparent;min-height:40px;padding:8px 12px}.delete-product:hover,.delete-product:focus-visible{background:#8b4736;color:#fff}.admin-empty{color:var(--muted);font-size:14px;padding:24px 0}
@media(max-width:780px){.admin-main{padding:48px 18px 70px}.admin-layout{grid-template-columns:1fr;gap:30px}.admin-form,.admin-products{padding:20px}.admin-products-heading{align-items:start;flex-direction:column;gap:5px}.admin-product{grid-template-columns:58px minmax(0,1fr);align-items:start}.admin-product img{width:58px;height:72px}.delete-product{grid-column:2;justify-self:start}.admin-back{font-size:12px}}
.login-screen{max-width:460px;margin:12vh auto 0}.login-screen h1{font:500 clamp(48px,7vw,86px) var(--serif);line-height:1;margin:0 0 20px}.login-screen>p:not(.eyebrow){color:var(--muted);margin-bottom:28px}.login-screen .admin-form{background:#fffaf3}
.contact-seller-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;background:#238b57;color:#fff;font-weight:600;text-decoration:none;padding:12px 16px;transition:background .2s ease}.contact-seller-button:hover,.contact-seller-button:focus-visible{background:#176b42;color:#fff}
.product-card{background:#fffaf3;border:1px solid var(--line);padding:10px;box-shadow:0 5px 14px rgba(32,34,31,.06)}.product-card .product-visual{margin:-10px -10px 0}.product-card .product-info{padding:15px 3px 0}.product-card .add-cart-button{margin-top:14px}.product-card:hover{box-shadow:0 8px 20px rgba(32,34,31,.1);border-color:#c8bcae}
.wordmark{position:relative;display:inline-flex;align-items:baseline;gap:4px;font:500 25px/1 var(--serif);letter-spacing:-.07em;padding:7px 8px 9px 0}.wordmark span{font:inherit}.wordmark strong{font:600 17px/1 var(--sans);letter-spacing:-.04em;background:var(--clay);color:var(--paper);padding:5px 7px 6px;position:relative;top:-1px}.wordmark:after{content:'';position:absolute;left:0;bottom:3px;width:24px;height:3px;background:var(--clay);transform:skewX(-24deg)}
.site-header,.hero,.catalog-section,.about-section,.site-footer{background-color:var(--paper)!important}
/* The drawer stays outside the viewport when closed, so mobile never gains a side-scroll strip. */
.saved-panel{left:100%;right:auto;transform:none;height:100dvh;max-height:100dvh;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.saved-panel.is-open{left:max(0px,calc(100% - 390px))}.cart-panel .cart-footer{position:sticky;bottom:0;background:var(--paper);padding-bottom:max(18px,env(safe-area-inset-bottom))}
.header-actions{display:flex;align-items:center;gap:4px;margin-left:auto}.cart-button{background:var(--ink);color:var(--paper);border:0;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;gap:4px}.cart-icon{width:21px;height:21px;display:block}.cart-count{font-size:11px;color:var(--paper)}.product-card .add-cart-button{width:100%;min-height:44px;margin-top:12px;border:1px solid var(--ink);background:transparent;font-size:13px}.product-card .add-cart-button:hover,.product-card .add-cart-button:focus-visible{background:var(--ink);color:var(--paper)}.cart-footer{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.cart-footer p,.checkout-intro{color:var(--muted);font-size:13px}.checkout-button{width:100%;min-height:48px;background:var(--clay);border:0;color:#fff;font-weight:600;padding:12px 16px}.checkout-button:disabled{background:#b9b3a9;cursor:not-allowed}.quantity-controls{display:flex;align-items:center;gap:10px;margin-top:12px}.quantity-controls button{background:transparent;border:1px solid var(--line);min-width:32px;min-height:32px}.checkout-dialog{border:0;background:var(--paper);color:var(--ink);max-width:560px;width:calc(100% - 32px);max-height:min(820px,calc(100dvh - 32px));overflow:auto}.checkout-dialog::backdrop{background:rgba(32,34,31,.6)}.checkout-content{padding:38px 28px 28px}.checkout-content h2{font:500 42px var(--serif);line-height:1.05;margin:0}.checkout-content form{display:grid;gap:20px;margin-top:26px}.checkout-content label{display:grid;gap:7px;font-size:13px;font-weight:600}.checkout-content input,.checkout-content textarea{width:100%;border:1px solid #cfc5b7;background:#fffaf3;padding:12px;min-height:46px;color:var(--ink);border-radius:0;box-shadow:inset 0 1px 2px rgba(32,34,31,.04)}.checkout-content textarea{height:112px;min-height:112px;max-height:112px;resize:none}.checkout-content input:focus,.checkout-content textarea:focus{border-color:var(--clay);outline:3px solid rgba(169,82,54,.18)}.checkout-summary{display:flex;justify-content:space-between;gap:16px;margin-top:24px;padding:14px 16px;background:var(--cream);font-size:13px}.checkout-summary b{font-weight:600}.form-section,.payment-section{display:grid;gap:15px;border:0;padding:0;margin:0}.form-section-title,.payment-section legend{font-size:13px;font-weight:600;margin:0 0 2px;padding:0}.payment-section{gap:9px}.payment-option{display:flex!important;grid-template-columns:none!important;align-items:center;gap:11px;padding:13px 14px;border:1px solid var(--line);background:#fffaf3;cursor:pointer}.payment-option:has(input:checked){border-color:var(--clay);background:#f4e7de}.payment-option input{width:18px;height:18px;min-height:18px;accent-color:var(--clay);margin:0}.payment-option span{display:grid;gap:2px;flex:1}.payment-option b{font-size:13px}.payment-option small{font-size:11px;font-weight:400;color:var(--muted)}.payment-option i{font-size:10px;font-style:normal;color:var(--clay);font-weight:600}.checkout-feedback{font-size:13px;color:var(--clay);margin:0}
/* Keep highlight backgrounds clear of descenders such as y and g. */
.hero h1{line-height:1.1}
.hero-mark{line-height:1.08;padding-bottom:.14em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
