.search{display:flex;flex:1;max-width:460px;border:1px solid #E6E2D8;border-radius:999px;overflow:hidden;background:#fff}
.search input[type=search]{flex:1;border:0;padding:10px 16px;font:inherit;outline:none;min-width:0;background:transparent}
.search button{border:0;background:var(--navy);color:#fff;padding:0 18px;font:inherit;font-weight:600;cursor:pointer}
.page-head{padding:32px 0 8px}
.page-head h1{font-size:32px;margin:0 0 6px}
.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px;margin:24px 0 40px}
.product-card{background:#fff;border:1px solid #E6E2D8;border-radius:14px;overflow:hidden;color:inherit;text-decoration:none;display:block}
.product-card:hover{box-shadow:0 8px 24px rgba(20,54,92,.12)}
.pc-img{aspect-ratio:4/3;background:#EEF2F6;display:flex;align-items:center;justify-content:center;color:var(--muted)}
.pc-img img{width:100%;height:100%;object-fit:cover}
.pc-body{padding:14px 16px}
.pc-body h3{font-size:16px;margin:0 0 6px}
.pc-price{font-weight:700;color:var(--navy);margin:0 0 8px}
.tag{display:inline-block;font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px}
.tag-in{background:#DDF3F1;color:#0F6E6B}
.tag-out{background:#EEE;color:#666}
.narrow{max-width:760px;padding:32px 0 48px}
.pdp{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:32px 0 48px}
.pdp-img{width:100%;border-radius:14px}
.img-placeholder{aspect-ratio:4/3;background:#EEF2F6;border-radius:14px;display:flex;align-items:center;justify-content:center;color:var(--muted)}
.pdp-info h1{font-size:30px;margin:6px 0}
.price{font-size:24px;font-weight:700;color:var(--navy)}
.stock{color:#0F6E6B;font-weight:600}
.pdp-info .btn{margin-top:12px;border:0;cursor:pointer;font:inherit;padding:14px 22px}
.pdp-info .btn:disabled{background:#999;cursor:not-allowed}
.crumb{color:var(--teal);font-weight:600;font-size:14px;text-decoration:none}
.cart-line{display:flex;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid #E6E2D8}
.cart-total{font-size:20px;font-weight:700}
.site-footer{background:var(--navy);color:#fff;padding:32px 0;margin-top:40px}
.site-footer a{color:#fff;opacity:.9;margin-right:16px;text-decoration:none}
.site-footer a:hover{opacity:1;text-decoration:underline}
@media (max-width:800px){.pdp{grid-template-columns:1fr}.search{max-width:none}}
