[hidden]{display:none!important}
.shop-heading{padding-top:2rem;padding-bottom:1rem}
.shop-heading h1{font-size:clamp(2rem,4vw,3.2rem);margin:.4rem 0}
.shop-heading p{max-width:48rem;color:#c9c6be}
.shop-toolbar{padding-top:.5rem;padding-bottom:1.5rem;border-bottom:1px solid #ffffff20}
.shop-categories,.shop-subcategories{display:flex;flex-wrap:wrap;gap:.55rem}
.shop-subcategories{margin-top:1rem}
.filter-chip{border:1px solid #7f806f;background:#202620;color:#f5f0e5;border-radius:2rem;padding:.65rem 1rem;font:inherit;font-size:.9rem;cursor:pointer}
.filter-chip[aria-pressed=true]{background:#c5a673;color:#101311;border-color:#c5a673;font-weight:700}
.shop-tools{display:grid;grid-template-columns:minmax(14rem,1fr) 14rem;gap:1rem;max-width:46rem;margin-top:1rem}
.shop-tools label,.request-form label{display:flex;flex-direction:column;gap:.45rem;font-size:.95rem}
.shop-tools input,.shop-tools select,.request-form input,.request-form textarea,.request-form select{width:100%;min-height:2.8rem;border:1px solid #858578;border-radius:.4rem;background:#151a15;color:#fff;padding:.65rem;font:inherit;box-sizing:border-box}
.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;padding-top:1.5rem;padding-bottom:1rem}
.shop-card{border:1px solid #ffffff20;border-radius:.6rem;background:#181e19;overflow:hidden;display:flex;flex-direction:column}
.card-photo{display:block;aspect-ratio:1/1;background:#111}
.card-photo img{width:100%;height:100%;object-fit:contain;display:block}
.card-copy{padding:1rem;display:flex;flex-direction:column;flex:1}
.card-copy h2{font-size:1.1rem;line-height:1.4;margin:.45rem 0 .5rem}
.card-copy h2 a{color:#f3ede1;text-decoration:none}
.card-copy .section-label{font-size:.8rem}
.card-price{font-size:1.3rem;font-weight:700;color:#d7b578;margin:0 0 .8rem}
.card-actions{margin-top:auto;margin-bottom:.65rem;display:flex;gap:.5rem;flex-wrap:wrap}
.card-actions .button{padding:.6rem 1rem;font-size:.95rem;width:100%;text-align:center}
.load-more-wrap{text-align:center;padding-top:1rem;padding-bottom:2.5rem}
.product-page{padding-top:2rem;padding-bottom:3rem}
.product-full-wrap{margin-top:1.5rem}
.product-full{margin:0;align-items:start}
.product-full details summary{display:none}
.product-full details{border:0}
.checkout-actions{margin:1rem 0}
.engraving-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:2rem;padding-bottom:3rem}
.request-form{display:flex;flex-direction:column;gap:1rem}
.request-form h2,.engraving-preview h2{font-size:1.35rem}
.form-two{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.engraving-preview img{width:100%;height:auto;border-radius:.4rem}
.button:focus-visible,.filter-chip:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #e3c994;outline-offset:3px}
@media(max-width:900px){.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.engraving-layout{grid-template-columns:1fr}.engraving-preview{max-width:40rem}}
@media(max-width:540px){.shop-tools,.form-two{grid-template-columns:1fr}.shop-grid{gap:.65rem}.card-copy{padding:.75rem}.card-copy h2{font-size:1rem}.card-copy .section-label{font-size:.75rem}.filter-chip{padding:.6rem .8rem}.card-actions .button{font-size:.9rem}.shop-heading h1{font-size:2rem}}
@media(max-width:360px){.shop-grid{grid-template-columns:1fr}}

.checkout-age-dialog{max-width:32rem;width:calc(100% - 2rem);background:#171d18;color:#f4ede0;border:1px solid #c5a673;border-radius:.7rem;padding:1.5rem}.checkout-age-dialog::backdrop{background:#000b}.checkout-age-dialog label{display:block;margin:.7rem 0}.checkout-age-dialog input{padding:.7rem;font:inherit;width:100%;box-sizing:border-box;min-height:3rem}.age-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin:1.2rem 0}.checkout-age-dialog h2{font-size:1.7rem}/* Consistent product hierarchy and comfortable mobile controls. */
.product-title{font:normal clamp(1.7rem,3.4vw,2.6rem)/1.2 Georgia,serif;margin:14px 0 20px;overflow-wrap:anywhere}
.skip-link{position:absolute;top:8px;left:16px;z-index:30;transform:translateY(-150%);background:var(--brass);color:var(--ink);padding:12px 18px;font-weight:bold;text-decoration:none}
.skip-link:focus{transform:none}
main:focus{outline:none}
.top nav a[aria-current="page"]{color:var(--brass);text-decoration:underline;text-underline-offset:5px}
button,a.button,.mobile-menu summary{min-height:44px}
button{touch-action:manipulation}
.brand{min-width:0}.brand span{white-space:normal;line-height:1.4}
.note{color:var(--muted)}
.engraving-preview label{display:block;margin:1rem 0}.engraving-preview input{display:block;width:100%;min-height:44px;margin-top:.4rem;padding:.65rem;background:var(--ink);color:var(--cream);border:1px solid var(--line);border-radius:.4rem;font:inherit}
#reset-filters{margin-top:1rem}#product-count{margin:.75rem 0 0;color:var(--muted)}
.shop-card{transition:border-color .15s,box-shadow .15s}.shop-card:hover,.shop-card:focus-within{border-color:var(--brass);box-shadow:0 6px 18px #0004}
.request-form textarea{resize:vertical}.request-form .button{align-self:flex-start}
@media(max-width:540px){.brand span{font-size:12px;max-width:180px}.card-actions .button{letter-spacing:.03em;padding:.75rem .4rem}.product-gallery{grid-template-columns:1fr}.product-gallery>a{grid-row:auto}.product-gallery .note{font-size:14px}.text-link{white-space:normal}.request-form .button{width:100%}.product-specs dd,.premium-specs dd{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

.artwork-certification{border:1px solid var(--line);padding:1rem;min-width:0}.request-form .certification-check{display:flex;flex-direction:row;align-items:flex-start;gap:.75rem}.request-form .certification-check input{width:1.25rem;min-height:1.25rem;flex-shrink:0;margin-top:.2rem}.request-form button:disabled{opacity:.5;cursor:not-allowed}[hidden]{display:none!important}

.shop-categories a{display:inline-flex;align-items:center;text-decoration:none}.shop-categories [aria-current=true]{background:#c5a673;color:#101311;border-color:#c5a673;font-weight:700}.category-picker{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;max-width:320px}.category-picker select{width:100%;min-height:44px;background:#151a15;color:#fff;border:1px solid #858578;border-radius:4px;padding:10px;font:inherit}.browse-category-nav{padding:12px 0;border-bottom:1px solid var(--line)}.browse-category-nav summary{cursor:pointer;color:var(--brass);min-height:32px}.browse-category-nav div{display:flex;flex-wrap:wrap;gap:12px 24px;padding:14px 0}.browse-category-nav a{color:var(--cream)}
