/* Digitnet Store v8.0.3.65.64 — canonical main-product purchase contract.
 * Global scope = the PRIMARY purchase controls on Digitnet single-product pages,
 * at every viewport. It deliberately does NOT style Sidebar Core, buy-box/sidebar
 * purchase controls, Continue Shopping, Browsing History, cart/checkout quantity
 * controls, product cards, or generic WooCommerce forms. */
html body.single-product #dnProductPage .dn-sp-summary{
  --dn-sp-purchase-control-width:150px;
  --dn-sp-purchase-control-height:46px;
  --dn-sp-purchase-control-radius:14px;
  --dn-sp-purchase-control-gap:12px;
  --dn-sp-purchase-step-width:48px;
}

html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-shell,
html body.single-product #dnProductPage .dn-sp-summary form.dn-sp-purchase-form{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:13px 0 0!important;
  padding:0!important;
  float:none!important;
  clear:both!important;
}

/* Pixel-for-pixel primary pair: Quantity and Add to Cart are identical boxes. */
html body.single-product #dnProductPage .dn-sp-summary form.dn-sp-purchase-form .dn-sp-purchase-row,
html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-shell .dn-sp-purchase-row{
  display:grid!important;
  grid-template-columns:repeat(2,var(--dn-sp-purchase-control-width))!important;
  grid-template-rows:var(--dn-sp-purchase-control-height)!important;
  gap:var(--dn-sp-purchase-control-gap)!important;
  align-items:stretch!important;
  justify-content:start!important;
  width:max-content!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:var(--dn-sp-purchase-control-height)!important;
  max-height:var(--dn-sp-purchase-control-height)!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  clear:both!important;
}

html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-quantity,
html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-submit.single_add_to_cart_button{
  width:var(--dn-sp-purchase-control-width)!important;
  min-width:var(--dn-sp-purchase-control-width)!important;
  max-width:var(--dn-sp-purchase-control-width)!important;
  height:var(--dn-sp-purchase-control-height)!important;
  min-height:var(--dn-sp-purchase-control-height)!important;
  max-height:var(--dn-sp-purchase-control-height)!important;
  block-size:var(--dn-sp-purchase-control-height)!important;
  min-block-size:var(--dn-sp-purchase-control-height)!important;
  max-block-size:var(--dn-sp-purchase-control-height)!important;
  box-sizing:border-box!important;
  border-radius:var(--dn-sp-purchase-control-radius)!important;
  margin:0!important;
  align-self:stretch!important;
  vertical-align:middle!important;
}

html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-quantity{
  grid-column:1!important;
  grid-row:1!important;
  display:grid!important;
  grid-template-columns:var(--dn-sp-purchase-step-width) minmax(0,1fr) var(--dn-sp-purchase-step-width)!important;
  align-items:stretch!important;
  padding:0!important;
  border:1px solid #d8dde5!important;
  background:#fff!important;
  overflow:hidden!important;
  box-shadow:none!important;
  float:none!important;
  -webkit-appearance:none!important;
  appearance:none!important;
}

html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-quantity>button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:var(--dn-sp-purchase-step-width)!important;
  min-width:var(--dn-sp-purchase-step-width)!important;
  max-width:var(--dn-sp-purchase-step-width)!important;
  height:100%!important;
  min-height:100%!important;
  max-height:100%!important;
  block-size:100%!important;
  min-block-size:100%!important;
  max-block-size:100%!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:#f7f8fa!important;
  color:#25314a!important;
  font-size:18px!important;
  font-weight:900!important;
  line-height:1!important;
  box-shadow:none!important;
  position:static!important;
  transform:none!important;
  -webkit-appearance:none!important;
  appearance:none!important;
}

html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-quantity>button:first-child{
  border-right:1px solid #e8ecf1!important;
}
html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-quantity>button:last-child{
  border-left:1px solid #e8ecf1!important;
}

html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-quantity>.quantity{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:100%!important;
  min-height:100%!important;
  max-height:100%!important;
  block-size:100%!important;
  min-block-size:100%!important;
  max-block-size:100%!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:#fff!important;
  float:none!important;
  overflow:hidden!important;
  position:static!important;
}

html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-quantity>.quantity input.qty{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:100%!important;
  min-height:100%!important;
  max-height:100%!important;
  block-size:100%!important;
  min-block-size:100%!important;
  max-block-size:100%!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:0 2px!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  color:#182032!important;
  font-size:18px!important;
  font-weight:800!important;
  line-height:1!important;
  text-align:center!important;
  box-shadow:none!important;
  outline:0!important;
  position:static!important;
  -moz-appearance:textfield!important;
  -webkit-appearance:none!important;
  appearance:textfield!important;
}

/* Remove browser-native number steppers; Digitnet owns the visible − / + controls. */
html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-quantity>.quantity input.qty::-webkit-outer-spin-button,
html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-quantity>.quantity input.qty::-webkit-inner-spin-button{
  -webkit-appearance:none!important;
  appearance:none!important;
  margin:0!important;
}

html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-submit.single_add_to_cart_button{
  grid-column:2!important;
  grid-row:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 10px!important;
  float:none!important;
  clear:none!important;
  border:1px solid #ff3c20!important;
  background:#ff3c20!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:900!important;
  line-height:1!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  box-shadow:none!important;
  transform:none!important;
  clip:auto!important;
  position:static!important;
  -webkit-appearance:none!important;
  appearance:none!important;
}

html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-submit.single_add_to_cart_button:disabled{
  opacity:.55!important;
  cursor:not-allowed!important;
}

/* Keep keyboard focus visible without changing box geometry. */
html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-quantity>button:focus-visible,
html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-quantity>.quantity input.qty:focus-visible,
html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-submit.single_add_to_cart_button:focus-visible{
  outline:3px solid rgba(255,60,32,.22)!important;
  outline-offset:-3px!important;
}

/* External products have no quantity pair; preserve a single compact main CTA only. */
html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-external .dn-sp-purchase-submit{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:var(--dn-sp-purchase-control-width)!important;
  min-width:var(--dn-sp-purchase-control-width)!important;
  max-width:var(--dn-sp-purchase-control-width)!important;
  height:var(--dn-sp-purchase-control-height)!important;
  min-height:var(--dn-sp-purchase-control-height)!important;
  max-height:var(--dn-sp-purchase-control-height)!important;
  box-sizing:border-box!important;
  border-radius:var(--dn-sp-purchase-control-radius)!important;
}

/* Mobile: retain exact equality while reducing both controls together. */
@media(max-width:767px){
  html body.single-product #dnProductPage .dn-sp-summary{
    --dn-sp-purchase-control-width:142px;
    --dn-sp-purchase-control-height:52px;
    --dn-sp-purchase-control-radius:12px;
    --dn-sp-purchase-control-gap:8px;
    --dn-sp-purchase-step-width:44px;
  }
  html body.single-product #dnProductPage .dn-sp-summary form.dn-sp-purchase-form .dn-sp-purchase-row,
  html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-shell .dn-sp-purchase-row{
    width:max-content!important;
    max-width:100%!important;
  }
  html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-quantity>button,
  html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-quantity>.quantity input.qty{
    font-size:17px!important;
  }
  html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-submit.single_add_to_cart_button{
    font-size:14px!important;
  }
}

/* Very narrow phones: reduce BOTH boxes by the same amount; never distort one. */
@media(max-width:330px){
  html body.single-product #dnProductPage .dn-sp-summary{
    --dn-sp-purchase-control-width:132px;
    --dn-sp-purchase-control-gap:7px;
    --dn-sp-purchase-step-width:40px;
  }
  html body.single-product #dnProductPage .dn-sp-summary form.dn-sp-purchase-form .dn-sp-purchase-row,
  html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-shell .dn-sp-purchase-row{
    justify-content:center!important;
  }
  html body.single-product #dnProductPage .dn-sp-summary .dn-sp-purchase-row>.dn-sp-purchase-submit.single_add_to_cart_button{
    font-size:13px!important;
  }
}
