/*
 * Digitnet Store Core Theme v4.0.14.1.20.5
 * Final safe adaptivity and browser-compatibility polish.
 * CSS-only: does not alter WooCommerce, cart, checkout, payment, wishlist/compare, or product data logic.
 */

html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  scroll-behavior:smooth;
}

*,*::before,*::after{ box-sizing:border-box; }

body{
  min-width:0;
  overflow-x:hidden;
}

img,picture,video,canvas,svg,iframe{
  max-width:100%;
}

img,picture,video,canvas,svg{
  height:auto;
}

iframe{
  border:0;
}

button,input,select,textarea{
  font:inherit;
  max-width:100%;
}

select{ min-width:0; }

#page,.site,.wrap,.container,
.dn-wrap,.dn-section,.dn-home-section,
.dn-header-shell,.dn-topbar-restored,
#dnHomePageView,#dnProductPage,
.woocommerce,.woocommerce-page{
  max-width:100%;
}

#dnHomePageView,#dnProductPage,
.woocommerce,.woocommerce-page,
.dn-card,.dn-product-card-premium,
.dn-wc-product-card,.dn-managed-product-card,
.dn-sp-main,.dn-sp-left,.dn-sp-summary,.dn-sp-aside,
.dn-checkout-shell,.dn-cart-shell{
  min-width:0;
}

#dnProductPage h1,#dnProductPage h2,#dnProductPage h3,
#dnHomePageView h1,#dnHomePageView h2,#dnHomePageView h3,
.woocommerce-loop-product__title,
.dn-product-title,
.dn-card-title{
  overflow-wrap:anywhere;
  word-break:normal;
}

.woocommerce table,
.woocommerce-page table,
#dnProductPage table{
  max-width:100%;
  border-collapse:collapse;
}

.woocommerce table.shop_table,
.woocommerce-page table.shop_table,
#dnProductPage .shop_attributes{
  width:100%;
}

.woocommerce .shop_table_responsive,
.woocommerce-page .shop_table_responsive,
#dnProductPage .dn-sp-tabbody{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

/* Single product tabs: default collapsed until a customer chooses a heading. */
body.single-product #dnProductPage .dn-sp-tabs[data-dn-tabs-default="collapsed"] .dn-sp-tabbody[hidden],
body.single-product #dnProductPage .dn-sp-tabbody.dn-sp-tabbody-collapsed[hidden]{
  display:none!important;
}

body.single-product #dnProductPage .dn-sp-tabs[data-dn-tabs-default="collapsed"] .dn-sp-tabhead button:not(.active){
  cursor:pointer;
}

body.single-product #dnProductPage .dn-sp-tabs[data-dn-tabs-default="collapsed"] .dn-sp-tabhead{
  scrollbar-width:thin;
}

/* Modern responsive hardening, scoped to Digitnet theme surfaces. */
@media (max-width:1180px){
  body.single-product #dnProductPage .dn-sp-main,
  body.single-product #dnProductPage .dn-sp-shell,
  .dn-checkout-shell,
  .dn-cart-shell{
    grid-template-columns:1fr!important;
  }

  body.single-product #dnProductPage .dn-sp-aside,
  body.single-product #dnProductPage .dn-buybox{
    position:relative!important;
    top:auto!important;
    width:100%!important;
  }
}

@media (max-width:900px){
  .dn-header-shell .header-main,
  .dn-header-shell .wrap,
  .dn-topbar-restored,
  #dnHomePageView .dn-grid,
  #dnHomePageView .products,
  #dnHomePageView .dn-product-grid,
  .woocommerce ul.products{
    max-width:100%;
  }

  .woocommerce ul.products,
  .woocommerce-page ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  body.single-product #dnProductPage .dn-sp-tabhead{
    display:flex!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    gap:8px!important;
    padding-bottom:6px!important;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
  }

  body.single-product #dnProductPage .dn-sp-tabhead button{
    flex:0 0 auto!important;
    white-space:nowrap!important;
    scroll-snap-align:start;
  }
}

@media (max-width:640px){
  body{
    overflow-x:hidden;
  }

  .wrap,.dn-wrap,#dnHomePageView,#dnProductPage,
  .woocommerce,.woocommerce-page{
    width:100%!important;
  }

  .woocommerce ul.products,
  .woocommerce-page ul.products,
  #dnHomePageView .products,
  #dnHomePageView .dn-product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }

  body.single-product #dnProductPage .dn-sp-tabbody{
    padding:14px!important;
  }

  body.single-product #dnProductPage .dn-sp-tabbody p,
  body.single-product #dnProductPage .dn-sp-tabbody li,
  body.single-product #dnProductPage .dn-sp-tabbody td,
  body.single-product #dnProductPage .dn-sp-tabbody th{
    font-size:13px;
    line-height:1.55;
  }
}

@media (max-width:380px){
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  #dnHomePageView .products,
  #dnHomePageView .dn-product-grid{
    grid-template-columns:1fr!important;
  }
}

@supports not (aspect-ratio:1 / 1){
  .dn-card,.dn-sp-icon,.dn-quick-card,.dn-card-grid .dn-card{
    min-height:68px;
  }
}

@supports not (gap:1rem){
  .dn-sp-tabhead > * + *,
  .dn-card-grid > * + *,
  .dn-product-grid > * + *{
    margin-left:8px;
  }
}

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