:root{--catalog-line:#d8d9cc;--catalog-quiet:#375345}
::selection{background:#c19953;color:#073d28}input{caret-color:var(--green-dark)}
:focus-visible{outline:3px solid var(--green);outline-offset:4px}
[hidden]{display:none!important}
.hero-home .hero-grid{grid-template-columns:1fr 1.03fr;gap:4rem;align-items:center}
.hero-home .hero-copy h1{font-size:clamp(2.8rem,4.8vw,4.6rem);max-width:14ch}
.hero-home .hero-copy .lede{max-width:35ch}
.hero-home{padding:4rem 0 3.5rem}
.hero-showcase{min-width:0;padding:1.4rem;background:#e4ebde;border-radius:14px;position:relative;animation:product-arrives .65s cubic-bezier(.16,1,.3,1) both}
.hero-showcase .hero-product-image{width:100%;height:360px;object-fit:contain;background:var(--paper);border-radius:10px}
.hero-product-caption{display:flex;gap:1rem;align-items:start;justify-content:space-between;margin:1rem 0;font-size:.9rem;line-height:1.5}
.hero-product-caption a{max-width:37ch;font-weight:700;color:var(--green-dark)}.hero-product-caption strong{white-space:nowrap;color:var(--green-dark)}
.hero-product-tabs{display:flex;gap:.5rem;flex-wrap:wrap}.hero-product-tabs button{background:transparent;border:1px solid #8c9d83;border-radius:4px;padding:.65rem .8rem;cursor:pointer;color:var(--green-dark);font:600 .8rem var(--font-body)}
.hero-product-tabs button[aria-pressed=true]{background:var(--green-dark);color:var(--paper);border-color:var(--green-dark)}
.catalog-section{background:var(--paper);padding-top:4rem;padding-bottom:4rem}
.catalog-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem}.catalog-heading h2{font-size:clamp(2rem,4vw,3.3rem);margin-bottom:.7rem}.catalog-heading .lede{margin:0;max-width:52ch}
.catalog-toolbar{display:grid;grid-template-columns:1fr 240px;gap:1rem;align-items:end;margin-bottom:1.2rem}
.catalog-toolbar label{display:block;font-size:.85rem;font-weight:700;color:var(--green-dark)}
.catalog-toolbar input,.catalog-toolbar select{display:block;width:100%;border:1px solid #839484;background:var(--paper);padding:.9rem 1rem;border-radius:6px;font-size:1rem;color:var(--navy);margin-top:.4rem;min-height:50px}
.catalog-toolbar input::placeholder{color:#526352;opacity:1}
.collection-filters{display:flex;gap:.65rem;flex-wrap:wrap}.collection-filters button{cursor:pointer;border:1px solid #829282;background:transparent;color:var(--green-dark);padding:.8rem 1rem;border-radius:6px;font-weight:700;min-height:44px}
.collection-filters button[aria-pressed=true]{background:var(--green-dark);color:var(--paper);border-color:var(--green-dark)}
.catalog-results{color:var(--catalog-quiet);margin:1.5rem 0 1rem;font-size:.9rem;font-variant-numeric:tabular-nums}
.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.8rem 1.5rem}
.catalog-item{min-width:0;background:transparent}.catalog-art{position:relative;overflow:hidden;background:#edf0e6;border-radius:10px;aspect-ratio:1}
.catalog-art>a{display:block;width:100%;height:100%}.catalog-art img{width:100%;height:100%;object-fit:contain;transition:transform .22s ease-out}.catalog-art:hover img{transform:scale(1.035)}
.preview-trigger{position:absolute;bottom:.8rem;right:.8rem;padding:.65rem .9rem;min-height:44px;border:none;border-radius:6px;background:var(--green-dark);color:var(--paper);font-weight:600;cursor:pointer}
.catalog-meta{display:flex;justify-content:space-between;gap:.7rem;margin:.95rem 0 .4rem;font-size:.78rem;color:var(--catalog-quiet)}.catalog-meta strong{color:var(--green-dark);font-variant-numeric:tabular-nums;white-space:nowrap}
.catalog-item h3{font:600 .98rem/1.5 var(--font-body);margin:.4rem 0 .7rem}.catalog-item h3 a{text-decoration:none}.catalog-item h3 a:hover{text-decoration:underline}
.product-explore{display:inline-block;font-size:.88rem;color:var(--green-dark);font-weight:700;text-underline-offset:4px}.product-explore span{margin-left:.3rem}
.licensing-note{font-size:.8rem;color:var(--oxblood);margin:.5rem 0}.catalog-more{display:block;margin:2.5rem auto 0}
.product-dialog{width:min(1100px,calc(100% - 2rem));max-height:90dvh;overflow:auto;padding:2.8rem 2rem 2rem;border:none;border-radius:14px;background:var(--paper);color:var(--navy)}
.product-dialog::backdrop{background:rgba(7,30,20,.75)}.dialog-close{position:absolute;top:.6rem;right:.8rem;background:transparent;border:0;padding:.6rem;min-height:44px;color:var(--green-dark);cursor:pointer;font-size:.85rem;font-weight:700}
.dialog-close span{font-size:1.3rem;margin-left:.6rem}.preview-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:2rem}.preview-image{width:100%;height:450px;object-fit:contain;background:#edf0e6;border-radius:10px}
.preview-thumbnails{display:flex;gap:.5rem;overflow:auto;margin:1rem 0;padding:.3rem}.preview-thumbnails button{padding:0;border:2px solid transparent;border-radius:5px;background:var(--cream);flex:0 0 70px;cursor:pointer;min-height:70px}.preview-thumbnails button[aria-pressed=true]{border-color:var(--green-dark)}.preview-thumbnails img{width:66px;height:66px;object-fit:contain}
.preview-copy h2{font:600 clamp(1.5rem,2.7vw,2.3rem)/1.25 var(--font-display);overflow-wrap:anywhere}#preview-collection{color:var(--catalog-quiet);font-size:.85rem}.preview-copy .button-row{margin:1.4rem 0}.purchase-note{font-size:.83rem;line-height:1.6;color:var(--catalog-quiet);max-width:60ch;margin-top:1.3rem}
.shop-intro{padding-top:3.5rem;padding-bottom:1rem}.shop-intro h1{font-size:clamp(2.8rem,6vw,5rem);line-height:1.05;max-width:16ch;margin-bottom:1rem}.shop-intro .lede{max-width:46ch}
.product-breadcrumb{display:flex;gap:.7rem;flex-wrap:wrap;font-size:.82rem;padding-top:2rem;padding-bottom:1.5rem;color:var(--catalog-quiet)}
.review-section{background:var(--green-dark);color:var(--paper);padding:3rem 0}.review-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem}.review-heading h2{font-size:clamp(1.9rem,3.8vw,3rem);margin-bottom:.7rem}.review-heading .lede{color:#e4ebde;margin-bottom:0}.review-section a{color:#f1d49e}.review-quotes{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2.5rem}.review-quotes figure{margin:0}.review-quotes blockquote{margin:0 0 1rem;font:500 1.3rem/1.6 var(--font-body)}.review-quotes figcaption{font-size:.82rem;color:#d4e2cd}.review-context{font-size:.86rem;color:#e4ebde}.review-section .purchase-note{color:#d4e2cd}
.review-section h2{color:var(--paper)}
.product-detail{display:grid;grid-template-columns:1.15fr 1fr;gap:3.5rem;padding-bottom:4rem;align-items:start}.detail-image{width:100%;max-height:640px;object-fit:contain;background:#e4ebde;border-radius:12px}.detail-copy h1{font-size:clamp(1.9rem,3.2vw,3rem);line-height:1.17}.detail-price{font-size:1.45rem;font-weight:700;color:var(--green-dark);font-variant-numeric:tabular-nums}.detail-copy details{border-top:1px solid var(--catalog-line);padding:1rem 0}.detail-copy summary{font-weight:700;cursor:pointer}.detail-copy details p{margin:.8rem 0 0}.related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.detail-gallery,.detail-copy,.preview-layout>div{min-width:0}.preview-thumbnails{max-width:100%}.detail-image{height:auto}
@keyframes product-arrives{from{opacity:.8;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1000px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-home .hero-grid{gap:2rem}.hero-showcase .hero-product-image{height:310px}.product-detail{gap:2rem}}
@media(max-width:760px){.hero-home .hero-grid{grid-template-columns:1fr}.hero-home{padding:2rem 0}.hero-home .hero-copy h1{max-width:14ch;font-size:clamp(2.6rem,9vw,3.6rem)}.hero-showcase .hero-product-image{height:330px}.catalog-heading{display:block}.catalog-heading>a{margin-top:1rem}.catalog-toolbar{grid-template-columns:1fr}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem .9rem}.catalog-section{padding:2.5rem 0}.catalog-meta{flex-wrap:wrap}.catalog-item h3{font-size:.86rem}.preview-trigger{font-size:.75rem;padding:.6rem .7rem;bottom:.5rem;right:.5rem}.preview-layout,.product-detail{grid-template-columns:1fr}.preview-image{height:320px}.product-dialog{padding:3rem 1rem 1rem}.preview-copy h2{font-size:1.8rem}.detail-copy h1{font-size:2.1rem}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-filters button{font-size:.8rem;padding:.7rem .8rem}.shop-intro{padding-top:2rem}.product-detail{padding-bottom:2.5rem}.hero-product-tabs button{flex:1}.product-breadcrumb{padding-top:1.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-showcase{animation:none}.catalog-art img{transition:none}.catalog-art:hover img{transform:none}}
@media(max-width:760px){.review-heading{display:block}.review-heading>a{margin-top:1rem}.review-quotes{grid-template-columns:1fr;gap:1.8rem}.review-quotes blockquote{font-size:1.2rem}.review-section{padding:2.5rem 0}}

@media(max-width:760px){.shop-intro{padding-top:1.5rem;padding-bottom:0}.shop-intro h1{font-size:clamp(1.9rem,7.5vw,2.5rem);max-width:20ch;margin-bottom:.7rem}.shop-intro .lede{font-size:1rem}[data-catalog-full] .catalog-section{padding-top:1.2rem}}

