.products-page{padding-block-end:clamp(2.5rem,3vw,3rem)}.products-page-heading{font-size:var(--section-title-size);letter-spacing:-.025em;color:var(--ink);margin-bottom:var(--heading-space);font-weight:800}.products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.75rem,1.5vw,1.25rem);margin:0;padding:0;list-style:none;display:grid}@media (min-width:701px){.products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1101px){.products-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.product-card-link{color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:12px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:block;overflow:hidden}.product-card-link:hover{border-color:var(--line-strong);box-shadow:0 4px 16px #090d590f}.product-card-link:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.product-card--unavailable .product-card-media{opacity:.65}.product-card--unavailable .product-card-title,.product-card--unavailable .product-card-price{color:var(--ink-muted)}.product-card-media{aspect-ratio:4/5;background:var(--cool-off-white);position:relative;overflow:hidden}.product-card-image{object-fit:cover;width:100%;height:100%;display:block}.product-card-image-placeholder{background:var(--cool-off-white);width:100%;height:100%}.product-card-badge{color:var(--ink-muted);letter-spacing:.04em;text-transform:uppercase;background:#ffffffe6;border-radius:999px;padding:3px 8px;font-size:.6875rem;font-weight:700;line-height:1.4;position:absolute;bottom:8px;left:8px}.product-card-body{padding:12px 14px 14px}.product-card-title{letter-spacing:-.01em;color:var(--ink-body);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 6px;font-size:clamp(.8125rem,.7rem + .3vw,.9375rem);font-weight:750;line-height:1.3;display:-webkit-box;overflow:hidden}.product-card-price{color:var(--ink-body);margin:0;font-size:.8125rem;font-weight:600}.product-card-price-from{color:var(--ink-muted);margin-right:2px;font-weight:500}.products-empty{color:var(--ink-muted);padding-block:3rem}@keyframes products-shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.product-skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.75rem,1.5vw,1.25rem);margin:0;padding:0;list-style:none;display:grid}@media (min-width:701px){.product-skeleton-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1101px){.product-skeleton-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.product-skeleton-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.product-skeleton-media{aspect-ratio:4/5;background:linear-gradient(90deg, var(--cool-off-white) 25%, #e8ebf0 50%, var(--cool-off-white) 75%);background-size:800px 100%;animation:1.4s infinite products-shimmer}@media (prefers-reduced-motion:reduce){.product-skeleton-media{background:var(--cool-off-white);animation:none}}.product-skeleton-body{flex-direction:column;gap:8px;padding:12px 14px 14px;display:flex}.product-skeleton-line{background:linear-gradient(90deg, var(--cool-off-white) 25%, #e8ebf0 50%, var(--cool-off-white) 75%);background-size:800px 100%;border-radius:4px;height:12px;animation:1.4s infinite products-shimmer}@media (prefers-reduced-motion:reduce){.product-skeleton-line{background:var(--cool-off-white);animation:none}}.product-skeleton-line--short{width:55%}.product-detail{padding-block:clamp(2rem,3vw,3rem)}.product-detail-back{color:var(--accent-strong);align-items:center;gap:6px;min-height:44px;margin-bottom:1.5rem;padding:0 2px;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.product-detail-back:hover{text-decoration:underline}.product-detail-back:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:4px}.product-detail-layout{align-items:start;gap:clamp(1.5rem,3vw,3rem);display:grid}@media (min-width:701px){.product-detail-layout{grid-template-columns:minmax(0,5fr) minmax(0,6fr)}}@media (min-width:1101px){.product-detail-layout{grid-template-columns:minmax(0,4fr) minmax(0,5fr)}}.product-detail-gallery{position:sticky;top:calc(68px + 1rem)}.product-detail-primary-image{aspect-ratio:4/5;background:var(--cool-off-white);border:1px solid var(--line);border-radius:10px;overflow:hidden}.product-detail-primary-image img{object-fit:cover;width:100%;height:100%;display:block}.product-detail-image-placeholder{background:var(--cool-off-white);width:100%;height:100%}.product-detail-brand{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);margin:0 0 8px;font-size:.75rem;font-weight:700}.product-detail-title{letter-spacing:-.025em;color:var(--ink);text-wrap:balance;margin:0 0 8px;font-size:clamp(1.25rem,1rem + 1vw,2rem);font-weight:800;line-height:1.2}.product-detail-concern{letter-spacing:.04em;color:var(--ink-muted);background:var(--cool-off-white);border:1px solid var(--line);border-radius:999px;margin-bottom:16px;padding:3px 10px;font-size:.75rem;font-weight:700;display:inline-block}.product-detail-unavailable-notice{color:var(--ink-muted);background:var(--cool-off-white);border:1px solid var(--line);border-radius:6px;margin-bottom:16px;padding:10px 14px;font-size:.875rem;font-weight:600}.product-detail-description{color:var(--ink-body);margin:0 0 24px;font-size:clamp(.875rem,.8rem + .2vw,1rem);font-weight:500;line-height:1.55}.variant-picker{margin-bottom:20px}.variant-picker-label{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:10px;font-size:.75rem;font-weight:700;display:block}.variant-picker-options{flex-wrap:wrap;gap:8px;display:flex}.variant-btn{border:1px solid var(--line-strong);background:var(--surface);min-height:44px;color:var(--ink-body);cursor:pointer;border-radius:8px;padding:8px 16px;font-family:inherit;font-size:.875rem;font-weight:600;transition:border-color .12s,background .12s}.variant-btn:hover:not(:disabled){border-color:var(--ink-body);background:var(--cool-off-white)}.variant-btn[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--cta-ink)}.variant-btn:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.variant-btn:disabled{border-color:var(--line);color:var(--ink-faint);cursor:not-allowed;background:var(--surface);text-decoration:line-through}.product-detail-price-row{align-items:center;gap:12px;margin-bottom:16px;display:flex}.product-detail-price{letter-spacing:-.02em;color:var(--ink);font-size:clamp(1.25rem,1rem + .6vw,1.625rem);font-weight:800}.product-detail-add{letter-spacing:.05em;text-transform:uppercase;cursor:not-allowed;background:var(--cool-off-white);width:100%;min-height:44px;color:var(--ink-faint);border:1px solid var(--line);border-radius:4px;justify-content:center;align-items:center;gap:8px;margin-bottom:24px;font-family:inherit;font-size:.75rem;font-weight:700;transition:background .15s,color .15s,opacity .15s;display:flex}.product-detail-add:not(:disabled){background:var(--cta-bg,#061d68);color:#fff;cursor:pointer;border-color:#0000}.product-detail-add:not(:disabled):hover{opacity:.88}.product-detail-add:not(:disabled):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.product-detail-add--added:not(:disabled){color:#fff;background:#166534;border-color:#0000}.product-detail-add-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:4px;margin-bottom:12px;padding:8px 12px;font-size:13px;line-height:1.45}.product-detail-meta{border-top:1px solid var(--line);flex-direction:column;gap:20px;padding-top:20px;display:flex}.product-detail-meta-heading{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);margin:0 0 8px;font-size:.75rem;font-weight:700}.product-detail-meta-body{color:var(--ink-body);white-space:pre-line;margin:0;font-size:.875rem;font-weight:500;line-height:1.55}.product-detail-tags{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.product-detail-tag{color:var(--ink-muted);background:var(--cool-off-white);border:1px solid var(--line);border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:600}.product-not-found{text-align:center;padding-block:clamp(3rem,6vw,6rem)}.product-not-found-heading{letter-spacing:-.025em;color:var(--ink);margin:0 0 12px;font-size:clamp(1.25rem,1rem + .5vw,1.5rem);font-weight:800}.product-not-found-body{color:var(--ink-muted);margin:0 0 24px;font-size:.9375rem}.product-not-found-link{background:var(--cta-bg);min-height:44px;color:var(--cta-ink);letter-spacing:.05em;text-transform:uppercase;border-radius:4px;align-items:center;gap:6px;padding:10px 20px;font-size:.75rem;font-weight:700;text-decoration:none;display:inline-flex}.product-not-found-link:hover{background:var(--cta-hover)}.product-not-found-link:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.products-error{text-align:center;padding-block:clamp(3rem,6vw,6rem)}.products-error-heading{letter-spacing:-.02em;color:var(--ink);margin:0 0 10px;font-size:clamp(1.125rem,1rem + .3vw,1.375rem);font-weight:800}.products-error-body{color:var(--ink-muted);margin:0 0 20px;font-size:.9375rem}.products-error-retry{border:1px solid var(--line-strong);background:var(--surface);min-height:44px;color:var(--ink-body);cursor:pointer;border-radius:8px;padding:10px 20px;font-family:inherit;font-size:.875rem;font-weight:600}.products-error-retry:hover{background:var(--cool-off-white)}.products-error-retry:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
