/*
  Product detail / "quiet instrument" layer.
  The template keeps the catalog and checkout behavior intact; this file only
  gives the existing content a more deliberate reading and buying sequence.
*/
:root{
  --mh-panel:#fff;
  --mh-signal:#0062fe;
  --mh-signal-deep:#0050d1;
  --mh-success:#2e6b57;
}

html{scroll-behavior:smooth;}
body{
  background:var(--mh-paper);
  color:var(--mh-ink);
  font-family:"WFVisualSans","Roboto",sans-serif;
  letter-spacing:.005em;
}
.pd-outer{
  max-width:1540px;
  background:var(--mh-paper);
  box-shadow:0 0 0 1px rgba(36,49,57,.04);
}
.breadcrumb-row{
  padding:17px clamp(18px,3.3vw,54px) 15px;
  background:var(--mh-paper);
  border-bottom:1px solid var(--mh-line);
}
.pd-breadcrumb{
  font-size:11px;
  letter-spacing:.035em;
  text-transform:uppercase;
}
.pd-breadcrumb a{color:var(--mh-blue);}
.pd-breadcrumb .current{
  max-width:34rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--mh-ink-soft);
}
.action-links{gap:10px;}
.action-links span{
  border:1px solid var(--mh-line);
  border-radius:999px;
  padding:8px 12px;
  color:var(--mh-blue);
  font-size:11px;
  letter-spacing:.035em;
  text-transform:uppercase;
  transition:background .18s ease,transform .18s ease,border-color .18s ease;
}
.action-links span:hover{
  background:var(--mh-blue-wash);
  border-color:#a8c9ff;
  transform:translateY(-1px);
}
.action-links .aico{stroke:var(--mh-blue);}

.product-main{
  grid-template-columns:minmax(330px, .9fr) minmax(370px, 1fr) minmax(268px, .68fr);
  gap:clamp(24px,3.2vw,56px);
  padding:clamp(28px,4vw,62px) clamp(18px,3.3vw,54px) 72px;
}
.gallery-col{position:sticky;top:18px;}
.gallery-inner{gap:14px;}
.thumb-strip{
  width:58px;
  gap:9px;
  max-height:430px;
  padding:2px;
}
.thumb{
  width:56px;
  height:56px;
  border-radius:2px;
  border-color:var(--mh-line);
  background:#fff;
  transition:border-color .18s ease,background .18s ease,transform .18s ease;
}
.thumb:hover{border-color:var(--mh-blue);transform:translateY(-1px);}
.thumb.active{
  border:2px solid var(--mh-blue);
  background:var(--mh-blue-wash);
}
.main-image-wrap{
  min-height:430px;
  max-height:510px;
  border:1px solid var(--mh-line);
  background:#fff;
  cursor:zoom-in;
}
.main-image-wrap img{max-height:455px;}
.main-image-wrap:hover img{transform:scale(1.025);}
.img-badges{top:16px;left:16px;}
.img-badge{
  border-radius:1px;
  padding:6px 9px;
  letter-spacing:.1em;
  font-size:9px;
}
.img-badge.excl{background:var(--mh-blue);}
.click-hint{
  margin-top:12px;
  color:var(--mh-ink-soft);
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.brand-row{
  color:var(--mh-ink-soft);
  font-size:11px;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.brand-row a{color:var(--mh-blue);}
.model-num{
  display:inline-block;
  margin-left:10px;
  padding-left:10px;
  border-left:1px solid var(--mh-line);
}
h1.product-title{
  max-width:42rem;
  margin:10px 0 14px;
  color:var(--mh-ink);
  font-size:clamp(26px,2.4vw,38px);
  font-weight:650;
  line-height:1.08;
  letter-spacing:-.035em;
}
.rating-row{
  padding:0 0 18px;
  margin-bottom:20px;
  border-bottom:1px solid var(--mh-line);
  color:var(--mh-ink-soft);
  font-size:12px;
}
.rating-row a{color:var(--mh-blue);}
.stars{font-size:13px;color:var(--mh-signal);letter-spacing:2px;}

.info-price-area{
  padding:0 0 19px;
  margin-bottom:20px;
  border-bottom:1px solid var(--mh-line);
}
.info-price-label,.v-attr-label,.bb-qty-label{
  color:var(--mh-ink-soft);
  font-size:10px;
  letter-spacing:.12em;
}
.info-price-main{gap:2px;}
.info-price-sup{color:var(--mh-ink);font-size:17px;}
.info-price-dollars{font-size:clamp(38px,4vw,52px);letter-spacing:-.06em;}
.info-price-cents{font-size:25px;}
.info-price-pkg{font-size:11px;color:var(--mh-ink-soft);}
.price-was{font-size:12px;color:var(--mh-ink-soft);}
.price-save-badge,.bb-save-badge{
  border-radius:3px;
  background:#c0392b;
  color:#fff;
  font-size:11px;
  font-weight:700;
  letter-spacing:0;
  padding:3px 7px;
}

.variant-area{
  padding:0 0 19px;
  border-bottom:1px solid var(--mh-line);
}
.pd-option-label{font-size:13px;}
.pd-swatches{gap:7px;margin:8px 0 18px;}
.pd-swatch{
  width:32px;
  height:32px;
  border-radius:50%;
  border:2px solid var(--mh-paper);
  box-shadow:0 0 0 1px #c8cfcb;
  transition:box-shadow .16s ease,transform .16s ease;
}
.pd-swatch:hover{border-color:var(--mh-paper);transform:scale(1.08);}
.pd-swatch.selected{
  border-color:var(--mh-paper);
  box-shadow:0 0 0 2px var(--mh-blue),0 0 0 4px var(--mh-paper);
}
.v-selector-wrap{margin-top:14px!important;}
.v-attr-section{margin-bottom:13px;}
.v-attr-select,.qty-select{
  min-height:44px;
  border:1px solid #b8c2be;
  border-radius:2px;
  background:#fff;
  color:var(--mh-ink);
  font-size:13px;
  transition:border-color .16s ease,box-shadow .16s ease;
}
.v-attr-select:focus,.qty-select:focus,.zip-input-row input:focus{
  outline:2px solid rgba(24,90,112,.2);
  outline-offset:2px;
  border-color:var(--mh-blue);
}
.attr-list{gap:7px;margin-top:11px;}
.attr-pill{
  border:1px solid var(--mh-line);
  border-radius:2px;
  background:#f8faff;
  padding:6px 10px;
  color:var(--mh-ink-soft);
  font-size:11px;
}
.attr-pill strong{color:var(--mh-ink);}

.pd-short-desc-label{
  margin-top:22px;
  color:var(--mh-blue);
  font-size:10px;
  letter-spacing:.13em;
}
.pd-short-desc{margin:8px 0 22px;font-size:14px;line-height:1.7;}
.acc-item{border-color:var(--mh-line);}
.acc-trigger{
  padding:17px 0;
  color:var(--mh-ink);
  font-size:14px;
  letter-spacing:.01em;
}
.acc-trigger:hover{color:var(--mh-blue);}
.acc-chevron{width:15px;height:15px;stroke:var(--mh-blue);}
.acc-body{padding-bottom:20px;}
.highlights-list{font-size:13px;line-height:1.8;}
.highlights-list li::before{color:var(--mh-signal);}
.pd-tab-prose{font-size:13px;line-height:1.8;}
.spec-table-inline{font-size:12px;}
.spec-table-inline tr:nth-child(odd) td{background:#f8faff;}
.spec-table-inline td{padding:10px 12px;border-color:var(--mh-line);}
.spec-table-inline td:first-child{color:var(--mh-ink-soft);}
.see-all-specs{
  border-color:#b8c2be;
  border-radius:2px;
  color:var(--mh-blue);
  font-size:11px;
  letter-spacing:.03em;
}

.buybox{
  top:18px;
  overflow:hidden;
  border:1px solid #c4ceca;
  border-radius:2px;
  background:#fff;
  box-shadow:var(--mh-shadow);
}
.buybox-inner{padding:22px;}
.bb-price-dollars{font-size:36px;letter-spacing:-.05em;}
.bb-price-cents{font-size:21px;}
.bb-price-pkg{color:var(--mh-ink-soft);}
.bb-instock{font-size:13px;letter-spacing:.01em;}
.bb-quote{color:var(--mh-ink-soft);}
.add-cart-btn,.buy-now-btn{
  min-height:48px;
  border-radius:999px;
  font-size:14px;
  letter-spacing:0;
  text-transform:none;
  transition:background .18s ease,transform .18s ease,box-shadow .18s ease;
}
.add-cart-btn{
  background:var(--mh-signal);
  color:#fff;
  box-shadow:0 4px 12px rgba(22,37,54,.12);
}
.add-cart-btn:hover{background:var(--mh-signal-deep);color:#fff;box-shadow:0 7px 18px rgba(22,37,54,.18);}
.buy-now-btn{background:#ff9900;color:#1a1a1a;}
.buy-now-btn:hover{background:#e88200;color:#1a1a1a;}
.add-cart-btn:active,.buy-now-btn:active{transform:translateY(1px);}
.bb-sep{border-color:var(--mh-line);}
.bb-trust{gap:12px;}
.bb-trust-row{font-size:11px;color:var(--mh-ink-soft);}
.bb-trust-row svg{stroke:var(--mh-blue);}
.bb-secure{color:var(--mh-ink-soft);}
.zip-row{padding:17px 22px 20px;border-color:var(--mh-line);}
.zip-row label{font-size:12px;}
.zip-input-row input{min-height:42px;border-radius:2px;border-color:#b8c2be;}
.zip-save-btn{background:var(--mh-blue);border-radius:2px;}
.bulk-pricing{border-color:var(--mh-line);}
.bulk-header{padding:15px 22px;font-size:12px;letter-spacing:.04em;text-transform:uppercase;}
.bulk-table th{background:var(--mh-panel);}
.bulk-table td,.bulk-table th{padding-left:22px;padding-right:22px;border-color:var(--mh-line);}
.return-note{padding:14px 22px 17px;border-color:var(--mh-line);font-size:11px;color:var(--mh-ink-soft);}
.return-note a{color:var(--mh-blue);}

.related-section{
  padding:26px clamp(18px,3.3vw,54px) 72px;
  background:#fff;
  border-top:1px solid var(--mh-line);
}
.related-header{
  display:block;
  width:max-content;
  margin-bottom:22px;
  padding:0;
  background:transparent;
  color:var(--mh-ink);
  font-size:16px;
  letter-spacing:-.01em;
}
.related-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.related-card{
  min-width:0;
  padding:14px;
  border-color:var(--mh-line);
  border-radius:2px;
  background:var(--mh-paper);
  transition:box-shadow .18s ease,transform .18s ease,border-color .18s ease;
}
.related-card:hover{border-color:#b8c2be;box-shadow:0 10px 24px rgba(36,49,57,.08);}
.related-card .rc-img{height:150px;background:#fff;}
.related-card .rc-name{font-size:13px;}
.related-card .rc-model{font-size:11px;color:var(--mh-ink-soft);}
.related-card .rc-price{font-size:18px;}
.related-card .rc-quote{color:var(--mh-blue);}
.related-cart-row select,.related-cart-row button{min-height:38px;border-radius:2px;}
.related-cart-row button{background:var(--mh-blue);}
.related-cart-row button:hover{background:var(--mh-blue-deep);}
.top-btn{
  width:44px;
  height:44px;
  border-color:var(--mh-line);
  border-radius:2px;
  background:var(--mh-paper);
  color:var(--mh-ink-soft);
}
.top-btn .arrow{color:var(--mh-blue);}

@media (max-width:1180px){
  .product-main{grid-template-columns:minmax(300px,.9fr) minmax(350px,1.1fr);}
  .buybox{grid-column:1 / -1;position:static;max-width:540px;width:100%;justify-self:end;}
  .related-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:720px){
  body{background:var(--mh-paper);}
  .pd-outer{box-shadow:none;}
  .breadcrumb-row{padding:12px 16px;}
  .product-main{
    grid-template-columns:1fr;
    gap:28px;
    padding:20px 16px 42px;
  }
  .gallery-col{position:static;}
  .gallery-inner{display:flex;flex-direction:column;gap:8px;}
  .main-image-wrap{order:1;}
  .thumb-strip{
    display:flex;
    flex-direction:row;
    width:100%;
    max-height:none;
    overflow-x:auto;
    margin-top:10px;
    order:2;
  }
  .thumb{width:48px;height:48px;}
  .main-image-wrap{min-height:315px;max-height:375px;}
  .main-image-wrap img{max-height:340px;}
  .click-hint{display:none;}
  h1.product-title{font-size:30px;}
  .buybox{max-width:none;}
  .related-section{padding:25px 16px 45px;}
  .related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .related-card .rc-img{height:120px;}
}
@media (max-width:460px){
  .pd-breadcrumb .current{max-width:12rem;}
  .action-links{display:none;}
  h1.product-title{font-size:27px;}
  .main-image-wrap{min-height:275px;}
  .info-price-dollars{font-size:42px;}
  .buybox-inner{padding:18px;}
  .zip-row,.return-note{padding-left:18px;padding-right:18px;}
  .related-grid{grid-template-columns:1fr;}
}

@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;}
}