.prodhero{position:relative;padding-block:clamp(48px,7vw,88px) clamp(24px,4vw,44px)}
.prodhero::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;
  background-image:url("../img/house-pattern.svg");background-repeat:repeat-x;background-position:bottom left;
  background-size:200px 133px;opacity:.4;
  -webkit-mask-image:linear-gradient(to top,#000 0%,transparent 80%);mask-image:linear-gradient(to top,#000 0%,transparent 80%)}
.prodhero__inner{max-width:760px}
.prodhero h1{font-size:clamp(30px,4.4vw,52px);line-height:1.04;margin-top:18px}
.prodhero p{margin-top:18px;color:var(--ink-2);font-size:17px;max-width:60ch}

.prodfilter{display:flex;gap:10px;flex-wrap:wrap;padding-block:8px 32px}
.prodfilter a{padding:10px 18px;border-radius:var(--r-pill);border:1px solid var(--line-2);font-size:13.5px;font-weight:600;color:var(--ink-2);transition:all .3s var(--ease)}
.prodfilter a.is-active,.prodfilter a:hover{background:var(--ink);border-color:var(--ink);color:var(--cream)}

.prodgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;padding-bottom:var(--sec)}
.prodcard{display:flex;flex-direction:column;gap:14px;transition:transform .35s var(--ease-out),box-shadow .35s var(--ease-out);overflow:hidden;padding:0}
.prodcard__media{aspect-ratio:4/3;background:var(--cream-2);overflow:hidden}
.prodcard__media img{width:100%;height:100%;object-fit:cover;display:block}
.prodcard__body{display:flex;flex-direction:column;gap:14px;padding:22px 26px 26px}
.prodcard:hover{transform:translateY(-4px);box-shadow:var(--sh-3)}
.prodcard__cat{font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--red)}
.prodcard h3{font-size:20px;margin-top:4px}
.prodcard__brand{font-size:11px;color:var(--red);font-weight:700;letter-spacing:.04em}
.prodcard__tag{color:var(--ink-2);font-size:14px}
.prodhero__disclaimer{margin-top:14px;font-size:11.5px;color:var(--muted);max-width:64ch;line-height:1.6}
.prodcard__specs{display:flex;flex-direction:column;gap:6px;padding-block:14px;border-top:1px dashed var(--line-2);border-bottom:1px dashed var(--line-2);font-size:13px}
.prodcard__specs div{display:flex;justify-content:space-between;gap:10px}
.prodcard__specs span:first-child{color:var(--muted)}
.prodcard__specs span:last-child{font-weight:600;text-align:right}
.prodcard__price{display:flex;justify-content:space-between;align-items:center;margin-top:auto}
.prodcard__price b{font-size:19px;font-family:var(--f-mono)}
.prodcard__price span{font-size:11.5px;color:var(--muted);display:block}

.prodetail{padding-bottom:var(--sec)}
.prodetail__grid{display:grid;grid-template-columns:.9fr 1.1fr .9fr;gap:40px;align-items:start}
@media (max-width:1100px){.prodetail__grid{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.prodetail__grid{grid-template-columns:1fr}}
.prodetail__media{aspect-ratio:4/3;border-radius:var(--r-md);overflow:hidden;background:var(--cream-2);position:sticky;top:100px}
.prodetail__media img{width:100%;height:100%;object-fit:cover;display:block}
.prodetail__cat{color:var(--red)}
.prodetail h1{font-size:clamp(28px,3.6vw,42px);margin-top:10px}
.prodetail__tag{color:var(--ink-2);font-size:17px;margin-top:10px}
.prodetail__desc{margin-top:20px;color:var(--ink-2);line-height:1.7}
.prodetail__use{margin-top:16px;padding:16px 18px;border-radius:var(--r-md);background:var(--cream-2);font-size:14.5px}
.spectable{width:100%;border-collapse:collapse;margin-top:22px}
.spectable td{padding:11px 0;border-bottom:1px solid var(--line);font-size:14px}
.spectable td:first-child{color:var(--muted);width:40%}
.spectable td:last-child{font-weight:600}

.orderbox{padding:26px}
.orderbox h3{font-size:15px;margin-bottom:16px}
.orderbox__packs{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}
.orderbox__pack{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;border-radius:var(--r-sm);border:1px solid var(--line-2);font-size:14px}
.orderbox__pack b{font-family:var(--f-mono)}
.related{margin-top:52px}
.related h2{font-size:22px;margin-bottom:20px}
