/* A clear collection grid shared by all Viloria color palettes. */
.vs-shop{max-width:1180px;margin:0 auto;padding:58px 5% 80px;color:var(--vp-ink);font-family:Arial,sans-serif}
.vs-shop *{box-sizing:border-box}
.vs-heading{max-width:620px;margin-bottom:35px}
.vs-heading h1{font:400 clamp(48px,6vw,76px)/1.05 Georgia,serif;margin:15px 0 20px}
.vs-heading>p:last-child{font:16px/1.7 Arial,sans-serif;color:var(--vp-muted);margin:0}
.vs-count{font:12px/1.5 Arial,sans-serif;color:var(--vp-muted);padding-bottom:16px;border-bottom:1px solid var(--vp-line);margin:0 0 24px}
.vs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px}
.vs-card{min-width:0;background:var(--vp-surface);border:1px solid var(--vp-line);display:flex;flex-direction:column;overflow:hidden}
.vs-image{display:flex;align-items:center;justify-content:center;position:relative;aspect-ratio:1;width:100%;padding:12px;background:var(--vp-surface)}
.vs-image img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:normal;filter:none}
.vs-stock{position:absolute;right:10px;top:10px;background:var(--vp-bg);color:var(--vp-ink);border:1px solid var(--vp-line);border-radius:20px;padding:7px 10px;font:11px Arial,sans-serif}
.vs-copy{display:flex;flex-direction:column;flex:1;padding:18px 18px 16px}
.vs-copy h2{font:400 20px/1.35 Georgia,serif!important;margin:0 0 15px;min-height:2.7em;overflow-wrap:anywhere}
.vs-copy h2 a{color:var(--vp-ink)!important;text-decoration:none}
.vs-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;font:22px/1.4 Georgia,serif;color:var(--vp-accent);margin:0 0 20px}
.vs-price del{color:var(--vp-muted);font-size:14px}
.vs-price ins{background:transparent;text-decoration:none;color:var(--vp-accent)}
.vs-actions{display:flex;flex-direction:column;gap:4px;margin-top:auto}
.vs-buy{display:flex;align-items:center;justify-content:center;min-height:48px;background:var(--vp-action);color:var(--vp-onaction)!important;text-transform:uppercase;letter-spacing:.08em;font:11px Arial,sans-serif;text-decoration:none!important;padding:10px 8px}
.vs-buy:hover{background:var(--vp-hover)}
.vs-details{display:flex;align-items:center;justify-content:center;min-height:44px;font:11px Arial,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:var(--vp-accent)!important;text-decoration:none}
.vs-empty{grid-column:1/-1}
.vs-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:36px}
.vs-pagination .page-numbers{display:flex;justify-content:center;align-items:center;min-width:44px;min-height:44px;border:1px solid var(--vp-line);padding:10px;color:var(--vp-ink);text-decoration:none}
.vs-pagination .current{background:var(--vp-action);color:var(--vp-onaction)}
@media(max-width:800px){
 .vs-shop{padding:35px 5% 55px}
 .vs-heading{margin-bottom:25px}.vs-heading h1{font-size:48px;margin:12px 0 16px}
 .vs-heading>p:last-child{font-size:14px}
 .vs-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}
 .vs-image{padding:8px}.vs-copy{padding:12px 10px}
 .vs-copy h2{font-size:15px!important;line-height:1.35!important;min-height:4.05em;margin-bottom:10px}
 .vs-price{font-size:19px;margin-bottom:14px}.vs-price del{font-size:12px}
 .vs-buy{min-height:44px;font-size:10px;letter-spacing:.04em}
 .vs-details{font-size:10px}
}
