.pt{border:1px solid var(--pc-border);border-radius:var(--pc-r-lg);transition:border-color var(--pc-fast), transform var(--pc-fast), box-shadow var(--pc-fast);background:#fff;grid-template-rows:auto 1fr;display:grid;overflow:hidden}.pt:hover{border-color:var(--pc-border-strong);box-shadow:var(--pc-shadow-raised);transform:translateY(-2px)}.pt-img{aspect-ratio:3/2;background:var(--pc-bg-soft);display:block;position:relative}.pt-img img{object-fit:cover;width:100%;height:100%}.pt--soon .pt-img img{filter:grayscale(.4);opacity:.8}.pt-badge{border-radius:var(--pc-r-pill);color:#fff;background:#111111d9;padding:4px 10px;font-size:12px;font-weight:600;position:absolute;top:10px;left:10px}.pt-body{gap:2px;padding:12px 14px 14px;display:grid}.pt-name{justify-content:space-between;gap:8px;font-weight:600;display:flex}.pt-name:after{content:"→";color:var(--pc-ink-500)}.pt-sub{color:var(--pc-ink-500);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.pl-head{padding-top:48px}.pl-filters{flex-wrap:wrap;gap:8px;margin-top:28px;display:flex}.pl-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px;display:grid}@media (max-width:900px){.pl-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}@media (max-width:520px){.pl-grid{grid-template-columns:1fr}}.pd{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:48px;padding-top:32px;display:grid}.pd-crumbs{letter-spacing:.1em;text-transform:uppercase;color:var(--pc-ink-500);margin-bottom:20px;font-size:12px}.pd-crumbs a:hover{color:var(--pc-ink-900)}.pd-img{border-radius:var(--pc-r-xl);background:var(--pc-bg-soft);aspect-ratio:3/2;overflow:hidden}.pd-img img{object-fit:cover;width:100%;height:100%}.pd-title{font-size:clamp(28px,3.4vw,40px);font-weight:700}.pd-name{margin-top:18px;font-weight:600}.pd-desc{color:var(--pc-ink-600);margin-top:6px}.pd-opts{gap:16px;margin-top:24px;display:grid}.pd-price{letter-spacing:-.02em;margin-top:24px;font-size:30px;font-weight:700}.pd-price-note{color:var(--pc-ink-500);margin-top:2px;font-size:13px}.pd-actions{gap:10px;margin-top:24px;display:grid}.pd-actions .pc-btn{width:100%}.pd-spec{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px;margin-top:24px;font-size:14px;display:grid}.pd-spec dt{color:var(--pc-ink-500)}.pd-spec dd{margin:0;font-weight:500}@media (max-width:900px){.pd{grid-template-columns:1fr;gap:24px}}
