/* V138: wider single-product summary + horizontal MSPC row tuning */

@media (min-width: 1024px){
  .single-product .woocommerce div.product,
  .single-product div.product{
    display: flex !important;
    gap: 56px !important;
    align-items: flex-start !important;
  }

  .single-product .woocommerce div.product div.images,
  .single-product div.product div.images,
  .single-product .mdm-product-top .mdm-simple-gallery{
    flex: 0 0 440px !important;
    max-width: 440px !important;
  }

  .single-product .woocommerce div.product div.summary.entry-summary,
  .single-product div.product div.summary.entry-summary,
  .single-product .mdm-product-top .summary.entry-summary{
    flex: 1 1 760px !important;
    width: auto !important;
    max-width: 760px !important;
    min-width: 760px !important;
  }
}

/* Let MSPC content breathe */
.single-product .summary.entry-summary .mspc-wrapper,
.single-product .summary.entry-summary .mspc-content{
  overflow: visible !important;
}

/* Force a single horizontal row for the format choices */
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variations{
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
  gap: 24px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 18px 0 8px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
}

/* Each option as a fixed-width card */
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation{
  flex: 0 0 110px !important;
  width: 110px !important;
  min-width: 110px !important;
  max-width: 110px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  text-align: center !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Reset child floats that may force side layout */
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation > *{
  float: none !important;
}

/* Radio above image */
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation .mspc-radio{
  order: 1 !important;
  margin: 0 auto 10px !important;
}

/* Image */
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation img.mspc-attribute-image{
  order: 2 !important;
  display: block !important;
  width: 72px !important;
  max-width: 72px !important;
  height: auto !important;
  margin: 0 auto 10px !important;
}

/* Text below image */
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation .mspc-text-wrapper{
  order: 3 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
}

.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation .mspc-attribute-title,
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation .mspc-text-wrapper strong{
  display: block !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
}

/* Nicer cart row spacing */
.single-product form.cart{
  margin-top: 18px !important;
}


/* V139: Cart button and text block styling under button */

/* Lägg till i varukorg – mindre tung text + guldfärg */
.single-product .single_add_to_cart_button,
.single-product button.single_add_to_cart_button,
.single-product .woocommerce button.single_add_to_cart_button{
  background: #d8c27a !important;
  border-color: #d8c27a !important;
  color: #fff !important;
  font-weight: 500 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}

.single-product .single_add_to_cart_button:hover,
.single-product button.single_add_to_cart_button:hover,
.single-product .woocommerce button.single_add_to_cart_button:hover{
  background: #cdb46a !important;
  border-color: #cdb46a !important;
  color: #fff !important;
}

/* Kort beskrivning under knappen */
.single-product .woocommerce-product-details__short-description{
  margin-top: 28px !important;
  padding-top: 24px !important;
  border-top: 1px solid #d9d9d9 !important;
  color: #2b2b2b !important;
}

.single-product .woocommerce-product-details__short-description p{
  margin: 0 0 18px 0 !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: #2b2b2b !important;
}

.single-product .woocommerce-product-details__short-description p strong{
  font-weight: 700 !important;
}

.single-product .woocommerce-product-details__short-description p:nth-of-type(2){
  color: #e53935 !important;
}

.single-product .woocommerce-product-details__short-description h3{
  margin: 18px 0 6px 0 !important;
  font-size: 24px !important;
  font-weight: 500 !important;
  letter-spacing: 1px !important;
  text-transform: none !important;
  color: #333 !important;
}

.single-product .woocommerce-product-details__short-description p + h3 + p{
  margin-top: 0 !important;
  color: #333 !important;
}

/* Produktmeta längst ner */
.single-product .product_meta{
  margin-top: 28px !important;
  padding-top: 24px !important;
  border-top: 1px solid #d9d9d9 !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
  color: #333 !important;
}

.single-product .product_meta > span{
  display: block !important;
  margin: 0 0 8px 0 !important;
}

.single-product .product_meta .sku_wrapper,
.single-product .product_meta .posted_in,
.single-product .product_meta .tagged_as{
  font-weight: 400 !important;
}

.single-product .product_meta a{
  color: #333 !important;
  text-decoration: none !important;
}

.single-product .product_meta a:hover{
  text-decoration: underline !important;
}


/* V140: typography, gold button, smaller title, meta at bottom */

body.single-product,
body.single-product .summary.entry-summary,
body.single-product .summary.entry-summary *:not(svg):not(path){
  font-family: 'Montserrat', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif !important;
}

.single-product .product_title.entry-title,
.single-product h1.product_title{
  font-size: 44px !important;
  line-height: 1.05 !important;
  letter-spacing: 0.5px !important;
}

/* Gold add-to-cart button, including disabled variation state */
.single-product .single_add_to_cart_button,
.single-product button.single_add_to_cart_button,
.single-product .woocommerce button.single_add_to_cart_button,
.single-product .single_add_to_cart_button.disabled,
.single-product .single_add_to_cart_button.wc-variation-selection-needed,
.single-product .single_add_to_cart_button.alt{
  background: #d6c58e !important;
  border-color: #d6c58e !important;
  color: #ffffff !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

.single-product .single_add_to_cart_button:hover,
.single-product button.single_add_to_cart_button:hover,
.single-product .woocommerce button.single_add_to_cart_button:hover{
  background: #ccb978 !important;
  border-color: #ccb978 !important;
  color: #ffffff !important;
}

/* Short description block styling */
.single-product .woocommerce-product-details__short-description{
  order: 50;
  margin-top: 28px !important;
  padding-top: 24px !important;
  border-top: 1px solid #d9d9d9 !important;
  color: #2b2b2b !important;
}

.single-product .woocommerce-product-details__short-description p{
  margin: 0 0 18px 0 !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: #2b2b2b !important;
}

.single-product .woocommerce-product-details__short-description p strong{
  font-weight: 700 !important;
}

.single-product .woocommerce-product-details__short-description p:nth-of-type(2){
  color: #e53935 !important;
}

.single-product .woocommerce-product-details__short-description h3{
  margin: 18px 0 6px 0 !important;
  font-size: 22px !important;
  font-weight: 500 !important;
  letter-spacing: 1px !important;
  text-transform: none !important;
  color: #333 !important;
}

/* Product meta at very bottom */
.single-product .summary.entry-summary{
  display: flex !important;
  flex-direction: column !important;
}

.single-product .product_meta{
  order: 60;
  margin-top: 28px !important;
  padding-top: 24px !important;
  border-top: 1px solid #d9d9d9 !important;
  font-size: 15px !important;
  line-height: 1.9 !important;
  color: #333 !important;
}

.single-product .product_meta > span{
  display: block !important;
  margin: 0 0 8px 0 !important;
}

.single-product .product_meta .sku_wrapper,
.single-product .product_meta .posted_in,
.single-product .product_meta .tagged_as{
  font-weight: 400 !important;
}

.single-product .product_meta a{
  color: #333 !important;
  text-decoration: none !important;
}

.single-product .product_meta a:hover{
  text-decoration: underline !important;
}

/* Avoid upscaling the custom main image into blur */
.single-product .mdm-simple-gallery .mdm-main-image img{
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  image-rendering: auto;
}

.single-product .mdm-simple-gallery .mdm-thumbs img{
  width: 92px !important;
  height: 92px !important;
  object-fit: cover !important;
}

/* Slightly sharper archive/category cards */
.woocommerce ul.products li.product img,
.woocommerce-page ul.products li.product img{
  width: 100% !important;
  height: auto !important;
}


/* V143: harder summary width override + MSPC auto-next fallback + typography/button adjustments */

@media (min-width: 1024px){
  .single-product .mdm-product-top{
    display: grid !important;
    grid-template-columns: 440px 680px !important;
    column-gap: 48px !important;
    align-items: start !important;
  }

  .single-product .mdm-product-top > .mdm-simple-gallery{
    width: 440px !important;
    max-width: 440px !important;
  }

  .single-product .mdm-product-top > .summary.entry-summary{
    width: 680px !important;
    min-width: 680px !important;
    max-width: 680px !important;
  }
}

/* tighter MSPC cards */
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variations{
  gap: 10px !important;
}

.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation{
  flex: 0 0 86px !important;
  width: 86px !important;
  min-width: 86px !important;
  max-width: 86px !important;
}

.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation img.mspc-attribute-image{
  width: 56px !important;
  max-width: 56px !important;
}

/* gold button */
.single-product .single_add_to_cart_button,
.single-product button.single_add_to_cart_button,
.single-product .woocommerce button.single_add_to_cart_button,
.single-product .single_add_to_cart_button.disabled,
.single-product .single_add_to_cart_button.wc-variation-selection-needed,
.single-product .single_add_to_cart_button.alt{
  background: #d6c58e !important;
  border-color: #d6c58e !important;
  color: #fff !important;
  font-weight: 500 !important;
  opacity: 1 !important;
}

/* typography */
body,
.hero,
.hero h1,
.hero p,
.slide,
.slide h1,
.slide p,
.intro,
.intro h2,
.intro p,
.puff-grid,
.puff-grid *,
.single-product .summary.entry-summary,
.single-product .summary.entry-summary *:not(svg):not(path){
  font-family: 'Montserrat', Arial, sans-serif !important;
}

.single-product .product_title.entry-title,
.single-product h1.product_title{
  font-size: 44px !important;
  line-height: 1.05 !important;
  letter-spacing: .5px !important;
}

/* product meta at bottom */
.single-product .summary.entry-summary{
  display:flex !important;
  flex-direction:column !important;
}
.single-product .product_meta{
  order:60 !important;
  margin-top:28px !important;
}

/* main image not upscaled into blur */
.single-product .mdm-simple-gallery .mdm-main-image img{
  width:auto !important;
  max-width:100% !important;
  height:auto !important;
}


/* V144: smaller product title, adaptive summary width, MSPC click sync support */

@media (min-width: 1024px){
  .single-product .mdm-product-top{
    grid-template-columns: 440px fit-content(620px) !important;
    column-gap: 40px !important;
  }

  .single-product .mdm-product-top > .summary.entry-summary{
    width: auto !important;
    min-width: 560px !important;
    max-width: 620px !important;
  }
}

.single-product .product_title.entry-title,
.single-product h1.product_title{
  font-size: 34px !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
}

.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variations{
  gap: 8px !important;
}

.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation{
  flex: 0 0 78px !important;
  width: 78px !important;
  min-width: 78px !important;
  max-width: 78px !important;
  cursor: pointer !important;
}

.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation img.mspc-attribute-image{
  width: 50px !important;
  max-width: 50px !important;
}

.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation .mspc-attribute-title,
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation .mspc-text-wrapper strong{
  font-size: 12px !important;
}

.single-product .single_add_to_cart_button,
.single-product button.single_add_to_cart_button,
.single-product .woocommerce button.single_add_to_cart_button,
.single-product .single_add_to_cart_button.disabled,
.single-product .single_add_to_cart_button.wc-variation-selection-needed,
.single-product .single_add_to_cart_button.alt,
.single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button{
  background: #d6c58e !important;
  border-color: #d6c58e !important;
  color: #ffffff !important;
}

.single-product .single_add_to_cart_button:hover,
.single-product button.single_add_to_cart_button:hover{
  background: #ccb978 !important;
  border-color: #ccb978 !important;
}

.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation.mdm-selected,
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation.mspc-active,
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation.selected{
  outline: 2px solid #d6c58e !important;
  outline-offset: 2px !important;
  border-radius: 4px !important;
}


/* V145: color choices in wrapped rows, price moved up, add-to-cart button gold */

/* Show color choices in multiple rows instead of horizontal scroll */
.single-product .summary.entry-summary .mspc-wrapper .mspc-pa_valj-kantbands-farg,
.single-product .summary.entry-summary .mspc-wrapper .mspc-pa_valj-kantbands-farg.mspc-variations{
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px 12px !important;
  overflow: visible !important;
  padding-bottom: 0 !important;
}

.single-product .summary.entry-summary .mspc-wrapper .mspc-pa_valj-kantbands-farg .mspc-variation{
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  flex: initial !important;
}

@media (max-width: 900px){
  .single-product .summary.entry-summary .mspc-wrapper .mspc-pa_valj-kantbands-farg,
  .single-product .summary.entry-summary .mspc-wrapper .mspc-pa_valj-kantbands-farg.mspc-variations{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

.single-product .summary.entry-summary .mspc-wrapper .mspc-pa_valj-kantbands-farg::-webkit-scrollbar{
  display: none !important;
}

/* Move price block a bit higher */
.single-product .summary.entry-summary .price,
.single-product .summary.entry-summary p.price{
  margin-top: 8px !important;
  margin-bottom: 8px !important;
}

.single-product .summary.entry-summary .woocommerce-variation.single_variation{
  margin-bottom: 4px !important;
}

.single-product .summary.entry-summary .single_variation_wrap{
  margin-top: -6px !important;
}

/* Gold add to cart button should always win */
.single-product .single_add_to_cart_button,
.single-product button.single_add_to_cart_button,
.single-product .woocommerce button.single_add_to_cart_button,
.single-product .single_add_to_cart_button.disabled,
.single-product .single_add_to_cart_button.wc-variation-selection-needed,
.single-product .single_add_to_cart_button.alt,
.single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button,
.single-product .woocommerce-variation-add-to-cart button.single_add_to_cart_button{
  background: #d6c58e !important;
  background-color: #d6c58e !important;
  border: 1px solid #d6c58e !important;
  border-color: #d6c58e !important;
  color: #ffffff !important;
  opacity: 1 !important;
  box-shadow: none !important;
}

.single-product .single_add_to_cart_button:hover,
.single-product button.single_add_to_cart_button:hover,
.single-product .woocommerce button.single_add_to_cart_button:hover{
  background: #cbb874 !important;
  background-color: #cbb874 !important;
  border-color: #cbb874 !important;
  color: #ffffff !important;
}


/* V146 quantity refresh button */
.mdm-refresh-price{
  font-size:12px;
  color:#666;
  cursor:pointer;
  margin-top:6px;
  user-select:none;
}

.mdm-refresh-price:hover{
  color:#000;
}



/* V147 total price display under price */
.mdm-qty-total-price{
  margin: 6px 0 10px 0;
  font-size: 14px;
  color: #666;
}


/* V150: same color-card width as other options, no extra qty total helper */

.single-product .summary.entry-summary .mspc-wrapper .mspc-pa_valj-kantbands-farg,
.single-product .summary.entry-summary .mspc-wrapper .mspc-pa_valj-kantbands-farg.mspc-variations{
  grid-template-columns: repeat(4, 78px) !important;
  justify-content: start !important;
  gap: 14px 8px !important;
}

.single-product .summary.entry-summary .mspc-wrapper .mspc-pa_valj-kantbands-farg .mspc-variation{
  width: 78px !important;
  min-width: 78px !important;
  max-width: 78px !important;
  flex: 0 0 78px !important;
}

.single-product .summary.entry-summary .mspc-wrapper .mspc-pa_valj-kantbands-farg .mspc-variation img.mspc-attribute-image{
  width: 50px !important;
  max-width: 50px !important;
}

/* remove previous helper line */
.mdm-qty-total-price{
  display: none !important;
}


/* V151: remove refresh button, normal title/price weight, move cart button up */

.mdm-refresh-price{
  display: none !important;
}

.single-product .product_title.entry-title,
.single-product h1.product_title{
  font-weight: 400 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.single-product .summary.entry-summary .price,
.single-product .summary.entry-summary p.price{
  font-weight: 400 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* move cart row closer to price */
.single-product .summary.entry-summary .single_variation_wrap{
  margin-top: -18px !important;
}

.single-product form.cart,
.single-product .variations_form.cart,
.single-product .woocommerce-variation-add-to-cart{
  margin-top: 4px !important;
}


/* V152: selected frame inside card, adaptive width, improved price spacing/alignment */

/* Let summary width follow content better */
@media (min-width: 1024px){
  .single-product .mdm-product-top{
    grid-template-columns: 440px minmax(460px, 560px) !important;
    column-gap: 34px !important;
  }

  .single-product .mdm-product-top > .summary.entry-summary{
    width: auto !important;
    min-width: 460px !important;
    max-width: 560px !important;
  }
}

/* Keep selected gold frame inside the option box */
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation{
  position: relative !important;
  border: 1px solid transparent !important;
  border-radius: 6px !important;
  box-sizing: border-box !important;
  outline: none !important;
}

.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation.mdm-selected,
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation.mspc-active,
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation.selected{
  border-color: #d6c58e !important;
  box-shadow: inset 0 0 0 1px #d6c58e !important;
  outline: none !important;
}

/* Price interval and price/st aligned and spaced */
.single-product .summary.entry-summary p.price,
.single-product .summary.entry-summary .price{
  margin-top: 12px !important;
  margin-bottom: 2px !important;
  line-height: 1.3 !important;
}

.single-product .summary.entry-summary .single_variation_wrap{
  margin-top: 0 !important;
}

.single-product .summary.entry-summary .single_variation_wrap .woocommerce-variation,
.single-product .summary.entry-summary .single_variation_wrap .single_variation{
  margin: 0 0 12px 0 !important;
  min-height: 28px !important;
}

.single-product .summary.entry-summary .single_variation_wrap .price,
.single-product .summary.entry-summary .single_variation_wrap .woocommerce-variation-price,
.single-product .summary.entry-summary .single_variation_wrap .woocommerce-variation .price{
  margin: 0 !important;
  line-height: 1.3 !important;
}

/* remove helper remnants */
.mdm-qty-total-price{
  display: none !important;
}


/* V153: narrower summary, aligned price rows, computed unit price */
@media (min-width: 1024px){
  .single-product .mdm-product-top{
    grid-template-columns: 440px minmax(390px, 470px) !important;
    column-gap: 28px !important;
  }

  .single-product .mdm-product-top > .summary.entry-summary{
    width: auto !important;
    min-width: 390px !important;
    max-width: 470px !important;
  }
}

/* align both price lines from same start */
.single-product .summary.entry-summary p.price,
.single-product .summary.entry-summary .price,
.single-product .summary.entry-summary .mdm-unit-price-row{
  margin-left: 0 !important;
  padding-left: 0 !important;
  text-align: left !important;
}

.single-product .summary.entry-summary p.price,
.single-product .summary.entry-summary .price{
  margin-top: 12px !important;
  margin-bottom: 6px !important;
  line-height: 1.25 !important;
}

.single-product .summary.entry-summary .single_variation_wrap{
  margin-top: 0 !important;
}

.single-product .summary.entry-summary .mdm-unit-price-row{
  margin: 0 0 12px 0 !important;
  line-height: 1.25 !important;
  color: #c9a24d !important;
  font-size: 16px !important;
  font-weight: 400 !important;
}

.single-product .summary.entry-summary .mdm-unit-price-value{
  display: inline-block !important;
  min-width: 110px !important;
}

.single-product .summary.entry-summary .mdm-unit-price-label{
  color: #666 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}

/* keep cart row tight */
.single-product form.cart,
.single-product .variations_form.cart,
.single-product .woocommerce-variation-add-to-cart{
  margin-top: 2px !important;
}


/* V154: remove extra price row above quantity and force narrower product summary column */

/* Hide extra price row above quantity */
.single-product .summary.entry-summary .single_variation_wrap .mdm-unit-price-row,
.single-product .summary.entry-summary .single_variation_wrap .woocommerce-variation-price,
.single-product .summary.entry-summary .single_variation_wrap .single_variation .price{
  display: none !important;
}

/* Narrower and more content-fitted product column */
@media (min-width: 1024px){
  .single-product .mdm-product-top{
    display: grid !important;
    grid-template-columns: 420px 460px !important;
    column-gap: 24px !important;
    align-items: start !important;
    justify-content: center !important;
  }

  .single-product .mdm-product-top > .mdm-simple-gallery{
    width: 420px !important;
    max-width: 420px !important;
  }

  .single-product .mdm-product-top > .summary.entry-summary{
    width: 460px !important;
    min-width: 460px !important;
    max-width: 460px !important;
  }
}


/* V155: tighter product grid, aligned price block, selection frame inside card */

/* Center and constrain whole product area */
@media (min-width: 1024px){
  .single-product .woocommerce div.product,
  .single-product div.product{
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .single-product .mdm-product-top{
    display: grid !important;
    grid-template-columns: 440px 440px !important;
    gap: 40px !important;
    justify-content: center !important;
    align-items: start !important;
  }

  .single-product .mdm-product-top > .mdm-simple-gallery{
    width: 440px !important;
    max-width: 440px !important;
  }

  .single-product .mdm-product-top > .summary.entry-summary,
  .single-product .summary.entry-summary{
    width: 440px !important;
    min-width: 440px !important;
    max-width: 440px !important;
  }
}

/* Align price block left and keep spacing */
.single-product .summary.entry-summary .price,
.single-product .summary.entry-summary p.price{
  display: block !important;
  text-align: left !important;
  margin-top: 12px !important;
  margin-bottom: 14px !important;
  line-height: 1.25 !important;
}

.single-product .summary.entry-summary .price,
.single-product .summary.entry-summary .woocommerce-Price-amount{
  font-size: 20px !important;
}

/* Selection frame stays inside card */
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation{
  box-sizing: border-box !important;
  position: relative !important;
  border: 1px solid transparent !important;
  border-radius: 6px !important;
  outline: none !important;
}

.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation.mdm-selected,
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation.selected,
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation.mspc-active,
.single-product .summary.entry-summary .mspc-wrapper .mspc-content .mspc-variation.active{
  outline: 2px solid #c6a25a !important;
  outline-offset: -2px !important;
  box-shadow: none !important;
}

/* Keep cart row close to prices */
.single-product .summary.entry-summary .single_variation_wrap,
.single-product .summary.entry-summary form.cart,
.single-product .summary.entry-summary .variations_form.cart{
  margin-top: 4px !important;
}


/* V156: hard product layout width override on outer Woo/theme wrappers */

@media (min-width: 1024px){

  /* Outer product wrappers */
  body.single-product .site-main,
  body.single-product main,
  body.single-product .woocommerce,
  body.single-product .woocommerce-page,
  body.single-product .woocommerce div.product,
  body.single-product div.product{
    max-width: 980px !important;
  }

  body.single-product .woocommerce div.product,
  body.single-product div.product,
  body.single-product .mdm-product-top{
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 28px !important;
  }

  body.single-product .woocommerce div.product > .images,
  body.single-product div.product > .images,
  body.single-product .mdm-product-top > .mdm-simple-gallery{
    flex: 0 0 420px !important;
    width: 420px !important;
    min-width: 420px !important;
    max-width: 420px !important;
  }

  body.single-product .woocommerce div.product > .summary,
  body.single-product div.product > .summary,
  body.single-product .woocommerce div.product > .summary.entry-summary,
  body.single-product div.product > .summary.entry-summary,
  body.single-product .mdm-product-top > .summary,
  body.single-product .mdm-product-top > .summary.entry-summary,
  body.single-product .summary.entry-summary{
    flex: 0 0 440px !important;
    width: 440px !important;
    min-width: 440px !important;
    max-width: 440px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* Prevent inner blocks from stretching the column */
body.single-product .summary.entry-summary > *{
  max-width: 100% !important;
}

/* Keep price/button area aligned inside narrower column */
body.single-product .summary.entry-summary .price,
body.single-product .summary.entry-summary p.price,
body.single-product .summary.entry-summary form.cart,
body.single-product .summary.entry-summary .variations_form.cart,
body.single-product .summary.entry-summary .single_variation_wrap{
  width: 100% !important;
}


/* V158: bold step headings */
.single-product .summary.entry-summary .mspc-menu-item,
.single-product .summary.entry-summary .mspc-menu-item span,
.single-product .summary.entry-summary .mspc-menu-item > span{
  font-weight: 700 !important;
}


/* V159: bold title part only + narrower right column */

.single-product .summary.entry-summary .mspc-title-part{
  font-weight: 700 !important;
}

.single-product .summary.entry-summary .mspc-value-part{
  font-weight: 400 !important;
}

/* harder, narrower right column */
@media (min-width: 1024px){
  body.single-product .site-main,
  body.single-product main,
  body.single-product .woocommerce,
  body.single-product .woocommerce-page,
  body.single-product .woocommerce div.product,
  body.single-product div.product{
    max-width: 900px !important;
  }

  body.single-product .woocommerce div.product,
  body.single-product div.product,
  body.single-product .mdm-product-top{
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 22px !important;
  }

  body.single-product .woocommerce div.product > .images,
  body.single-product div.product > .images,
  body.single-product .mdm-product-top > .mdm-simple-gallery{
    flex: 0 0 400px !important;
    width: 400px !important;
    min-width: 400px !important;
    max-width: 400px !important;
  }

  body.single-product .woocommerce div.product > .summary,
  body.single-product div.product > .summary,
  body.single-product .woocommerce div.product > .summary.entry-summary,
  body.single-product div.product > .summary.entry-summary,
  body.single-product .mdm-product-top > .summary,
  body.single-product .mdm-product-top > .summary.entry-summary,
  body.single-product .summary.entry-summary{
    flex: 0 0 400px !important;
    width: 400px !important;
    min-width: 400px !important;
    max-width: 400px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.single-product .summary.entry-summary .mspc-wrapper{
    width: 100% !important;
    max-width: 100% !important;
  }
}


/* V160: force normal value weight in step headings and tighten product layout using broader wrapper targets */

/* Step heading value must never inherit bold */
body.single-product .mspc-menu-item .mspc-title-part{
  font-weight: 700 !important;
}
body.single-product .mspc-menu-item .mspc-value-part,
body.single-product .mspc-menu-item .mspc-title-part + .mspc-value-part,
body.single-product .summary.entry-summary .mspc-menu-item .mspc-value-part{
  font-weight: 400 !important;
  font-family: inherit !important;
}

/* Tighter overall product area */
@media (min-width: 1024px){
  body.single-product .site-main,
  body.single-product main.site-main,
  body.single-product .wp-site-blocks,
  body.single-product .woocommerce,
  body.single-product .woocommerce-page{
    max-width: 940px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.single-product .woocommerce div.product,
  body.single-product div.product,
  body.single-product .mdm-product-top,
  body.single-product .wp-block-woocommerce-product{
    display: grid !important;
    grid-template-columns: 420px 380px !important;
    gap: 30px !important;
    align-items: start !important;
    justify-content: center !important;
    max-width: 830px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.single-product .woocommerce div.product > .images,
  body.single-product div.product > .images,
  body.single-product .mdm-product-top > .mdm-simple-gallery{
    width: 420px !important;
    min-width: 420px !important;
    max-width: 420px !important;
  }

  body.single-product .woocommerce div.product > .summary,
  body.single-product div.product > .summary,
  body.single-product .woocommerce div.product > .summary.entry-summary,
  body.single-product div.product > .summary.entry-summary,
  body.single-product .mdm-product-top > .summary,
  body.single-product .mdm-product-top > .summary.entry-summary,
  body.single-product .wp-block-woocommerce-product .summary,
  body.single-product .summary.entry-summary{
    width: 380px !important;
    min-width: 380px !important;
    max-width: 380px !important;
    margin: 0 !important;
    justify-self: start !important;
  }

  body.single-product .summary.entry-summary .mspc-wrapper,
  body.single-product .summary.entry-summary form.cart,
  body.single-product .summary.entry-summary .variations_form.cart,
  body.single-product .summary.entry-summary .price,
  body.single-product .summary.entry-summary p.price,
  body.single-product .summary.entry-summary .single_variation_wrap{
    max-width: 100% !important;
    width: 100% !important;
  }
}

/* Keep button/qty centered within narrow column */
body.single-product .summary.entry-summary form.cart,
body.single-product .summary.entry-summary .variations_form.cart{
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}


/* V161: Cart page redesign */

/* Constrain cart area instead of full width */
body.woocommerce-cart .site-main,
body.woocommerce-cart main.site-main,
body.woocommerce-cart .woocommerce,
body.woocommerce-cart .woocommerce-page{
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.woocommerce-cart .woocommerce{
  padding-top: 8px !important;
}

/* Page title */
body.woocommerce-cart h1.entry-title,
body.woocommerce-cart .entry-title,
body.woocommerce-cart .woocommerce h1{
  font-size: 46px !important;
  line-height: 1.05 !important;
  letter-spacing: .5px !important;
  margin-bottom: 22px !important;
}

/* Cart table frame */
body.woocommerce-cart table.shop_table{
  border: 1px solid #e5e5e5 !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  background: #fff !important;
}

body.woocommerce-cart table.shop_table th,
body.woocommerce-cart table.shop_table td{
  border-color: #ececec !important;
  vertical-align: middle !important;
}

body.woocommerce-cart table.shop_table thead th{
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #222 !important;
  background: #fafafa !important;
  padding-top: 18px !important;
  padding-bottom: 18px !important;
}

/* Product cell layout */
body.woocommerce-cart td.product-thumbnail{
  width: 130px !important;
  min-width: 130px !important;
  text-align: center !important;
}

body.woocommerce-cart td.product-thumbnail img{
  width: 96px !important;
  max-width: 96px !important;
  height: auto !important;
  border-radius: 8px !important;
  box-shadow: 0 10px 20px rgba(0,0,0,.08) !important;
}

body.woocommerce-cart td.product-name{
  min-width: 360px !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
}

body.woocommerce-cart td.product-name a{
  font-size: 18px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  color: #111 !important;
}

body.woocommerce-cart td.product-name a:hover{
  text-decoration: underline !important;
}

body.woocommerce-cart td.product-price,
body.woocommerce-cart td.product-subtotal{
  font-size: 18px !important;
  white-space: nowrap !important;
}

body.woocommerce-cart td.product-quantity{
  text-align: center !important;
}

body.woocommerce-cart td.product-quantity input.qty{
  width: 74px !important;
  height: 44px !important;
  border-radius: 10px !important;
  font-size: 18px !important;
  text-align: center !important;
}

/* Cleaner attribute/meta layout inside product column */
body.woocommerce-cart td.product-name .variation{
  margin: 12px 0 0 0 !important;
  display: grid !important;
  grid-template-columns: 150px 1fr !important;
  row-gap: 6px !important;
  column-gap: 12px !important;
}

body.woocommerce-cart td.product-name .variation dt,
body.woocommerce-cart td.product-name .variation dd{
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  display: block !important;
}

body.woocommerce-cart td.product-name .variation dt{
  font-weight: 600 !important;
  color: #222 !important;
}

body.woocommerce-cart td.product-name .variation dd{
  color: #333 !important;
}

body.woocommerce-cart td.product-name .variation p{
  margin: 0 !important;
}

/* Remove button */
body.woocommerce-cart td.product-remove a.remove{
  color: #9b1c1c !important;
  font-size: 28px !important;
  font-weight: 400 !important;
}

/* Coupon/update row */
body.woocommerce-cart .actions{
  padding: 14px !important;
}

body.woocommerce-cart .coupon .input-text{
  height: 42px !important;
  border-radius: 10px !important;
}

body.woocommerce-cart button.button,
body.woocommerce-cart a.button,
body.woocommerce-cart input.button{
  border-radius: 12px !important;
  min-height: 46px !important;
  font-size: 16px !important;
}

/* Totals card */
body.woocommerce-cart .cart-collaterals{
  margin-top: 26px !important;
}

body.woocommerce-cart .cart_totals{
  width: 100% !important;
  max-width: 520px !important;
  margin-left: auto !important;
}

body.woocommerce-cart .cart_totals h2{
  font-size: 22px !important;
  font-weight: 700 !important;
  margin-bottom: 16px !important;
}

body.woocommerce-cart .cart_totals .shop_table{
  border-radius: 14px !important;
}

body.woocommerce-cart .cart_totals .shop_table th,
body.woocommerce-cart .cart_totals .shop_table td{
  font-size: 18px !important;
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

/* Gold checkout button */
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  background: #d6c58e !important;
  background-color: #d6c58e !important;
  border: 1px solid #d6c58e !important;
  color: #fff !important;
  border-radius: 14px !important;
  min-height: 60px !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  letter-spacing: .2px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{
  background: #ccb874 !important;
  border-color: #ccb874 !important;
  color: #fff !important;
}

/* Mobile */
@media (max-width: 900px){
  body.woocommerce-cart td.product-name .variation{
    grid-template-columns: 1fr !important;
    row-gap: 2px !important;
  }

  body.woocommerce-cart td.product-thumbnail{
    width: 92px !important;
    min-width: 92px !important;
  }

  body.woocommerce-cart td.product-thumbnail img{
    width: 72px !important;
    max-width: 72px !important;
  }

  body.woocommerce-cart .cart_totals{
    max-width: 100% !important;
  }
}


/* V162: cart page tweaks */

/* Move product title visually above the variation fields */
body.woocommerce-cart td.product-name{
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
}

body.woocommerce-cart td.product-name > a{
  order: -1 !important;
  display: block !important;
  margin-bottom: 12px !important;
}

/* Keep variation labels on one line */
body.woocommerce-cart td.product-name .variation{
  grid-template-columns: 170px 1fr !important;
  column-gap: 14px !important;
  row-gap: 8px !important;
}

body.woocommerce-cart td.product-name .variation dt{
  white-space: nowrap !important;
  word-break: normal !important;
}

body.woocommerce-cart td.product-name .variation dd{
  white-space: nowrap !important;
}

/* Larger coupon field */
body.woocommerce-cart .coupon .input-text{
  width: 180px !important;
  min-width: 180px !important;
  height: 46px !important;
  padding: 0 14px !important;
  font-size: 15px !important;
}

/* Remove shadow from quantity field */
body.woocommerce-cart td.product-quantity input.qty{
  box-shadow: none !important;
  filter: none !important;
}

/* Slightly cleaner remove icon alignment */
body.woocommerce-cart td.product-remove{
  vertical-align: middle !important;
}


/* V163: align VARUKORG title with cart container */
body.woocommerce-cart h1.entry-title,
body.woocommerce-cart .entry-title{
    max-width:1180px !important;
    margin-left:auto !important;
    margin-right:auto !important;
}


/* V164: align cart H2 title with cart frame */
body.woocommerce-cart .section .center{
  max-width: 1180px !important;
  margin: 0 auto !important;
}

body.woocommerce-cart .section .center article > h2{
  margin: 0 0 24px 0 !important;
  padding-left: 270px !important;
  box-sizing: border-box !important;
}

/* V165: product grid responsive */
/* Desktop 4 per row */
body.woocommerce ul.products{
    display:flex;
    flex-wrap:wrap;
    gap:24px;
}

body.woocommerce ul.products li.product{
    width: calc(25% - 18px) !important;
    margin:0 !important;
}

/* Tablet 3 per row */
@media (max-width:1100px){
    body.woocommerce ul.products li.product{
        width: calc(33.33% - 18px) !important;
    }
}

/* Mobile 1 per row */
@media (max-width:700px){
    body.woocommerce ul.products li.product{
        width: 100% !important;
    }
}


/* V166: compact product cards, equal heights, gold hover accents */
body.woocommerce ul.products li.product{
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    border: 1px solid #ece8de !important;
    border-radius: 18px !important;
    background: #fff !important;
    padding: 14px 14px 16px !important;
    box-sizing: border-box !important;
    min-height: 100% !important;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}

body.woocommerce ul.products li.product:hover{
    transform: translateY(-2px) !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.08) !important;
    border-color: #d6c58e !important;
}

body.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    text-decoration: none !important;
}

body.woocommerce ul.products li.product img{
    width: 100% !important;
    max-width: 100% !important;
    height: 260px !important;
    object-fit: contain !important;
    margin: 0 0 12px 0 !important;
}

body.woocommerce ul.products li.product h2,
body.woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size: 18px !important;
    line-height: 1.25 !important;
    min-height: 46px !important;
    margin: 0 0 8px 0 !important;
}

body.woocommerce ul.products li.product .price{
    min-height: 30px !important;
    margin: 0 0 14px 0 !important;
    color: #c8a35a !important;
    font-weight: 600 !important;
}

body.woocommerce ul.products li.product .button,
body.woocommerce ul.products li.product a.button{
    margin-top: auto !important;
    width: 100% !important;
    min-height: 48px !important;
    border-radius: 14px !important;
    background: #000 !important;
    color: #fff !important;
    border: 1px solid #000 !important;
    text-align: center !important;
    font-weight: 700 !important;
    letter-spacing: .2px !important;
}

body.woocommerce ul.products li.product:hover .button,
body.woocommerce ul.products li.product:hover a.button{
    background: #d6c58e !important;
    border-color: #d6c58e !important;
    color: #fff !important;
}

@media (max-width: 1100px){
    body.woocommerce ul.products li.product img{
        height: 220px !important;
    }
}

@media (max-width: 700px){
    body.woocommerce ul.products{
        gap: 18px !important;
    }
    body.woocommerce ul.products li.product{
        padding: 12px 12px 14px !important;
    }
    body.woocommerce ul.products li.product img{
        height: 240px !important;
    }
}


/* V167: center product card buttons horizontally */
body.woocommerce ul.products li.product .button,
body.woocommerce ul.products li.product a.button{
    display: block !important;
    width: 85% !important;
    margin: 20px auto 0 auto !important;
    text-align: center !important;
}


/* V169: force all MSPC swatch/option images to same format and size */
.single-product .mspc-variation img.mspc-attribute-image,
.single-product .mspc-variation-image img,
.single-product .mspc-variation img{
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  max-width: 64px !important;
  max-height: 64px !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 auto 10px auto !important;
  border-radius: 8px !important;
}

.single-product .mspc-variation{
  width: 96px !important;
  min-width: 96px !important;
  max-width: 96px !important;
}

.single-product .mspc-tab-content.mspc-variations{
  align-items: flex-start !important;
}
