.shop-main{min-height:65vh}.shop-section{padding-block:clamp(2rem,5vw,4rem)}.shop-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1.25rem;margin-bottom:1rem}.shop-filters label,.shop-field{display:flex;flex-direction:column;gap:.4rem;font-size:.9rem}.shop-filters input,.shop-filters select,.shop-field input,.shop-field select,.shop-field textarea,.shop-basket-line select{width:100%;min-height:46px;padding:.65rem .75rem;border:1px solid var(--line-strong);background:white;border-radius:2px;font:inherit;color:var(--ink)}.shop-field textarea{min-height:88px;resize:vertical}.shop-result,.shop-note{font-size:.9rem;color:var(--ink-soft)}.shop-note{margin-top:.8rem;line-height:1.55}.shop-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:3rem}.shop-product-row{display:grid;grid-template-columns:104px minmax(0,1fr);gap:1.2rem;padding:1.5rem 0;border-bottom:1px solid var(--line);align-items:center}.shop-product-row h2{font-size:1.25rem}.shop-product-row p{margin:.3rem 0 .65rem}.shop-product-row a{display:inline-block;text-underline-offset:4px}.shop-product-thumb{aspect-ratio:1;object-fit:cover;width:100%;background:var(--ink);color:var(--on-dark);display:grid;place-items:center;font-family:var(--font-display);font-size:2.2rem}.shop-product-thumb span{color:var(--gold-1)}.shop-back{display:inline-block;margin-bottom:2rem;text-underline-offset:4px}.shop-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(2rem,5vw,5rem);align-items:start}.shop-editor-image{width:100%;aspect-ratio:1;object-fit:cover;background:var(--ink)}.shop-editor-mark{aspect-ratio:1;background:var(--ink);color:var(--on-dark);display:flex;flex-direction:column;justify-content:center;padding:12%;font-family:var(--font-display);font-size:clamp(2rem,4vw,3.3rem);line-height:1.2}.shop-editor-mark small{color:var(--gold-1);font:500 .8rem var(--font-mono);letter-spacing:.15em;margin-bottom:1.5rem}.shop-editor h1{font-size:clamp(2rem,4vw,3.2rem)}.shop-editor .eyebrow{margin-bottom:.6rem}.shop-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0}.shop-field--full{grid-column:1/-1}.shop-purchase{border-top:1px solid var(--line-strong);padding-top:1.25rem;margin-top:1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.shop-price{font-size:1.6rem;font-weight:600}.shop-status{margin-block:1rem;min-height:1.5em;color:var(--ink-soft)}.shop-status a{margin-left:1rem}.shop-basket-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.shop-basket-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:3rem;align-items:start}.shop-order-summary{border-top:2px solid var(--ink);padding-top:1.3rem;position:sticky;top:110px}.shop-order-summary h2{font-size:1.5rem}.shop-order-summary dl{margin-block:1.5rem}.shop-order-summary dl div{display:flex;justify-content:space-between;gap:1rem;margin:.7rem 0}.shop-order-summary dd{margin:0}.shop-order-summary .order-total{font-size:1.25rem;border-top:1px solid var(--line);padding-top:1rem}.shop-order-summary .btn{width:100%;margin:.4rem 0}.shop-basket-line{padding:1.4rem 0;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem}.shop-basket-line h2{font-size:1.3rem}.shop-basket-line dl{font-size:.9rem;color:var(--ink-soft);margin:.7rem 0}.shop-basket-line dl div{display:flex;gap:.5rem;flex-wrap:wrap}.shop-basket-line dt:after{content:':'}.shop-basket-line dd{margin:0}.shop-basket-line select{max-width:180px;min-height:40px;margin-top:.6rem}.shop-line-actions{display:flex;gap:1rem;margin-top:.9rem}.shop-text-button{border:0;background:none;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:4px;font:inherit}.shop-line-price{text-align:right;white-space:nowrap;font-weight:600}.shop-payment-result{max-width:750px;margin:3rem auto;line-height:1.8}.shop-payment-result h1{margin-bottom:1rem}.shop-payment-result .btn-row{margin-top:2rem}.shop-empty{padding:2rem 0}.basket-nav-link{font-size:.9rem;text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:850px){.shop-basket-layout{grid-template-columns:1fr}.shop-order-summary{position:static}.shop-editor{gap:2rem}.shop-product-row{grid-template-columns:84px minmax(0,1fr)}}@media(max-width:620px){.shop-filters{grid-template-columns:1fr 1fr}.shop-filters label:first-child{grid-column:1/-1}.shop-list,.shop-editor{grid-template-columns:1fr}.shop-editor-image,.shop-editor-mark{max-height:300px;aspect-ratio:4/3;object-fit:contain}.shop-options{gap:.9rem}.shop-basket-heading h1{font-size:2.3rem}.shop-product-row{grid-template-columns:80px minmax(0,1fr)}.shop-purchase .btn{flex:1}.shop-purchase{position:sticky;bottom:0;background:var(--paper);padding-block:1rem;z-index:2}.shop-basket-line{grid-template-columns:minmax(0,1fr) auto}.shop-line-price{font-size:.95rem}}
.shop-main [hidden]{display:none!important}.skip-link{position:absolute;left:1rem;top:-100px;z-index:1000;background:var(--paper);padding:.6rem 1rem}.skip-link:focus{top:1rem}
.print-artwork{margin-top:1.5rem;border-top:1px solid var(--line);padding-top:1.2rem}.print-artwork h2{font-size:1.3rem}.print-artwork-slot{margin-block:1rem}.print-drop{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border:1px dashed var(--line-strong);cursor:pointer}.print-drop span{font-size:.85rem;color:var(--ink-soft)}.print-drop input{max-width:100%;font:inherit;font-size:.85rem}.print-sheet{aspect-ratio:1.4;max-height:420px;max-width:100%;background:white;outline:1px solid var(--line-strong);margin-block:1rem;display:flex;align-items:center;justify-content:center;overflow:hidden}.print-sheet img{width:100%;height:100%;object-fit:contain;min-height:0}.print-pdf-preview{display:block;width:100%;height:400px;margin-block:1rem;border:1px solid var(--line)}
.print-visual-previews h3{font-size:1.1rem;margin-top:1rem}.print-visual-previews>div+div{margin-top:2rem}
.print-pdf-render canvas{display:block;max-width:100%;height:auto;background:white;border:1px solid var(--line)}.print-pdf-controls{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-top:.8rem;font-size:.85rem}.print-pdf-controls button:disabled{opacity:.4;cursor:default}
