/* ==========================================================================
   SINGLE STAR TRADERS — Premium WooCommerce Single Product styling (v5)
   Back to DARK theme. Structure: Name → SKU/Category → Description → Qty/
   Cart/Inquire. Below the fold: accordion (left 50%) + reviews (right 50%).
   ========================================================================== */

:root{
  --sst-blue:        #005b8b;
  --sst-blue-dark:   #003f61;
  --sst-blue-light:  #005b8b;
  --sst-blue-tint:   rgba(0,91,139,0.14);
  --sst-black:       #000;
  --sst-black-2:     #17181d;
  --sst-white:       #000;
  --sst-muted:       #000;
  --sst-line:        rgba(255,255,255,0.08);
  --sst-radius:      3px;
}

/* ===== Page frame ===== */
.woocommerce div.product{
  max-width: 1440px;
  margin: 0 auto;
  padding: 50px 32px 0;
  position: relative;
}
.woocommerce div.product,
.woocommerce div.product *{
  box-sizing: border-box;
}

/* ===== Breadcrumb ===== */
.woocommerce-breadcrumb{
  font-size: 13px;
  letter-spacing: 0.3px;
  opacity: 0.85;
  margin-bottom: 30px !important;
}
.woocommerce-breadcrumb a{ transition: color .15s ease; }
.woocommerce-breadcrumb a:hover{ color: var(--sst-blue-light) !important; }

/* ===== Symmetric two-column layout: gallery | summary =====
   align-items:stretch keeps both columns the same height; the trust row
   (inside .images) is pushed to the bottom via margin-top:auto so its
   bottom edge lines up with the end of the details column. */
.woocommerce div.product div.images,
.woocommerce div.product div.summary{
  float: none !important;
  width: 100% !important;
}
.woocommerce div.product{
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: auto;
  align-items: start;
  column-gap: 60px;
  row-gap: 0;
}
.woocommerce div.product > div.images{
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
  position: relative;
  background: transparent;
  border: none;
  animation: sst-enter .6s ease both;
}
.woocommerce div.product > div.summary{
  grid-column: 2;
  grid-row: 1;
  min-width: 0;
  background: transparent;
  border: none;
  padding: 0;
  animation: sst-enter .6s ease both .15s;
}
.woocommerce div.product > *:not(div.images):not(div.summary){
  grid-column: 1 / -1;
}

/* ===== Starting animation ===== */
@keyframes sst-enter{
  from{ opacity: 0; transform: translateY(20px); }
  to{ opacity: 1; transform: translateY(0); }
}
@keyframes sst-fade-in{
  from{ opacity:0; transform: translateY(-6px); }
  to{ opacity:1; transform: translateY(0); }
}

/* ===== Gallery ===== */
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper{
  position: relative;
  border: 1px solid var(--sst-line);
  border-radius: var(--sst-radius);
  overflow: hidden;
  background: var(--sst-black-2);
  transition: box-shadow .3s ease;
  width: 100%;
}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper:hover{
  box-shadow: 0 0 0 1px var(--sst-blue), 0 18px 40px rgba(0,0,0,0.35);
}
.woocommerce div.product div.images img,
.woocommerce div.product div.images .woocommerce-product-gallery__image img{
  max-width: 100% !important;
  width: 100% !important;
  height: auto !important;
  display: block;
  object-fit: contain;
  transition: transform .5s cubic-bezier(.2,.8,.2,1);
}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper:hover img{
  transform: scale(1.06);
}
.flex-control-thumbs{
  display: flex !important;
  gap: 10px;
  margin-top: 14px !important;
}
.flex-control-thumbs li{ width: 74px !important; }
.flex-control-thumbs img{
  border: 1px solid var(--sst-line) !important;
  border-radius: var(--sst-radius);
  opacity: 0.6 !important;
  transition: opacity .2s ease, border-color .2s ease, transform .2s ease;
}
.flex-control-thumbs img:hover{ opacity: 1 !important; transform: translateY(-2px); }
.flex-control-thumbs img.flex-active{
  opacity: 1 !important;
  border-color: var(--sst-blue-light) !important;
}

/* SKU badge over the image — moved into place by JS after full page load,
   so it works the same whether the product has one image or several. */
.sst-sku-badge{
  position: absolute;
  bottom: 16px;
  left: 16px;
  z-index: 5;
  background: #33505b;
  border: 1px solid var(--sst-line);
  color: var(--sst-white);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.5px;
  padding: 2px 10px;
  border-radius: var(--sst-radius);
  opacity: 0;
}
.sst-sku-badge.sst-ready{ animation: sst-fade-in .4s ease both; }

/* Stock badge stays hidden. ALL native SKU/Category output is hidden too —
   a single custom line (.sst-meta-line, rendered right after the title via
   PHP) replaces it, which is what prevents the duplicate you saw. */
.woocommerce div.product p.stock,
.woocommerce div.product .stock,
.woocommerce div.product p.product_meta,
.woocommerce div.product div.product_meta{
  display: none !important;
}
.sst-meta-line{
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  font-size: 12.5px;
  color: var(--sst-muted);
  border-top: 1px solid var(--sst-line);
  border-bottom: 1px solid var(--sst-line);
  padding: 14px 0;
  margin: 4px 0 22px;
}
.sst-meta-line b{ color: var(--sst-white); font-weight: 600; margin-right: 4px; }
.sst-meta-line a{ color: var(--sst-blue-light); transition: color .15s ease; }
.sst-meta-line a:hover{ color: var(--sst-white); }

/* ==========================================================================
   Trust badges — standalone, full-width section. Sits right after the
   main product block (image + summary), above the accordion+reviews row.
   ========================================================================== */
.sst-trust-section{
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 1px;
  background: var(--sst-line);
  border-top: 1px solid var(--sst-line);
  border-bottom: 1px solid var(--sst-line);
  margin: 36px 0 0;
}
.sst-trust-item{
  background: var(--sst-black-2);
  text-align: center;
  padding: 20px 10px;
}
.sst-trust-item svg{
  width: 30px; height: 30px;
  stroke: var(--sst-blue-light);
  fill: none;
  stroke-width: 1.6;
  margin-bottom: 8px;
}
.sst-trust-item span{
  display: block;
  font-size: 12px;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  color: var(--sst-muted);
}

/* ===== Summary column: Name → SKU/Category → Description → Cart/Inquire ===== */
.woocommerce div.product .product_title{
  font-size: clamp(24px, 2.4vw, 32px);
  letter-spacing: 0.3px;
  margin: 0 0 50px !important;
  color: var(--sst-white) !important;
  position: relative;
  padding-bottom: 16px;
}
.woocommerce div.product .product_title::after{
  content: "";
  position: absolute;
  left: 0; bottom: 0;
  width: 46px; height: 2px;
  background: var(--sst-blue);
}
.woocommerce div.product p.price,
.woocommerce div.product span.price{
  color: var(--sst-white) !important;
  font-size: 24px;
  font-weight: 700;
  margin: 4px 0 16px !important;
}
.woocommerce div.product p.price del{ color: var(--sst-muted); opacity: 1; font-weight: 400; }
.woocommerce div.product p.price ins{ text-decoration: none; color: var(--sst-blue-light); }

.woocommerce div.product .woocommerce-product-details__short-description{
  font-size: 16px;
  line-height: 1.75;
  color: rgba(255,255,255,0.75);
  margin-bottom: 22px;
}

/* ===== Cart form: quantity + Add to cart + Inquire ===== */
.woocommerce div.product form.cart{
  display: flex;
  align-items: stretch;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 10px !important;
}
.woocommerce div.product form.cart div.quantity{
  margin: 0 !important;
  display: flex;
  align-items: stretch;
  border: 1px solid var(--sst-line);
  border-radius: var(--sst-radius);
  overflow: hidden;
  background: var(--sst-black);
}
.woocommerce div.product form.cart .qty{
  height: 100%;
  width: 46px;
  background: transparent;
  border: none !important;
  color: var(--sst-white);
  text-align: center;
  font-size: 14px;
  -moz-appearance: textfield;
}
.woocommerce div.product form.cart .qty::-webkit-inner-spin-button,
.woocommerce div.product form.cart .qty::-webkit-outer-spin-button{
  -webkit-appearance: none;
  margin: 0;
}
.sst-qty-btn,
.woocommerce div.product form.cart div.quantity .plus,
.woocommerce div.product form.cart div.quantity .minus{
  width: 36px;
  border: none;
  background: transparent;
  color: var(--sst-muted);
  font-size: 16px;
  cursor: pointer;
  transition: background .15s ease, color .15s ease;
  display: flex; align-items: center; justify-content: center;
}
.sst-qty-btn:hover,
.woocommerce div.product form.cart div.quantity .plus:hover,
.woocommerce div.product form.cart div.quantity .minus:hover{
  background: rgba(255,255,255,0.06); color: var(--sst-blue-light);
}
.sst-qty-minus, .woocommerce div.product form.cart div.quantity .minus{ border-right: 1px solid var(--sst-line); }
.sst-qty-plus,  .woocommerce div.product form.cart div.quantity .plus{ border-left: 1px solid var(--sst-line); }

.woocommerce div.product form.cart button.single_add_to_cart_button{
  position: relative;
  overflow: hidden;
  flex: 1;
  min-width: 180px;
  background: var(--sst-blue) !important;
  border: none !important;
  border-radius: var(--sst-radius) !important;
  color: var(--sst-white) !important;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  font-size: 13px !important;
  padding: 14px 20px !important;
  transition: background .25s ease, transform .15s ease, box-shadow .25s ease;
}
.woocommerce div.product form.cart button.single_add_to_cart_button:hover{
  background: var(--sst-blue-dark) !important;
  box-shadow: 0 8px 24px rgba(0,91,139,0.4);
  transform: translateY(-2px);
}
.woocommerce div.product form.cart button.single_add_to_cart_button:active{ transform: translateY(0); }
.woocommerce div.product form.cart button.single_add_to_cart_button::before{
  content: "";
  position: absolute; top:0; left:-60%;
  width: 40%; height: 100%;
  background: linear-gradient(120deg, transparent, rgba(255,255,255,0.25), transparent);
  transform: skewX(-20deg);
  transition: left .5s ease;
}
.woocommerce div.product form.cart button.single_add_to_cart_button:hover::before{ left: 130%; }

.sst-inquire-btn{
  flex-basis: 100%;
  background: transparent;
  border: 1px solid var(--sst-blue-light);
  color: var(--sst-blue-light);
  letter-spacing: 0.6px;
  text-transform: uppercase;
  font-size: 12.5px;
  padding: 13px 18px;
  border-radius: var(--sst-radius);
  cursor: pointer;
  transition: all .2s ease;
}
.sst-inquire-btn:hover{ background: var(--sst-blue); color: var(--sst-white); border-color: var(--sst-blue); }

/* ===== Variations ===== */
.woocommerce div.product table.variations{ width: 100%; margin-bottom: 20px !important; border: none !important; }
.woocommerce div.product table.variations tr{ display: block; margin-bottom: 14px; }
.woocommerce div.product table.variations th.label{
  display: block; font-size: 11.5px; letter-spacing: 0.5px; text-transform: uppercase;
  color: var(--sst-muted); padding: 0 0 8px !important; font-weight: 500;
}
.woocommerce div.product table.variations td.value{ display: block; padding: 0 !important; }
.woocommerce div.product table.variations select{
  width: 100%; background: var(--sst-black) !important; color: var(--sst-white) !important;
  border: 1px solid var(--sst-line) !important; border-radius: var(--sst-radius);
  padding: 11px 14px !important; font-size: 14px;
}
.woocommerce div.product .reset_variations{
  color: var(--sst-blue-light) !important; font-size: 11.5px; text-transform: uppercase; letter-spacing: 0.4px;
}
.woocommerce div.product .woocommerce-variation.single_variation{
  background: var(--sst-black); border: 1px solid var(--sst-line); border-radius: var(--sst-radius);
  padding: 14px 16px; margin-bottom: 16px;
}
.woocommerce div.product .woocommerce-variation-price .price{ color: var(--sst-white) !important; font-size: 18px !important; }
.woocommerce div.product .woocommerce-variation-availability .stock{ display: none !important; }

/* ==========================================================================
   Below-the-fold row: accordion (50%, left) + reviews (50%, right).
   ========================================================================== */
/* ==========================================================================
   Below-the-fold row: accordion (50%, left) + reviews (50%, right).
   .sst-below-row is opened/closed directly by PHP around both sections
   (see functions.php), so this grid reliably has exactly two children —
   no fragile selector-matching against the theme's markup needed.
   ========================================================================== */
.sst-below-row{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  margin-top: 50px;
}
.sst-accordion-wrap{ padding-top: 4px; }
.sst-accordion-wrap > h3{
  font-size: 18px;
  color: var(--sst-white);
  margin: 0 0 18px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--sst-line);
}
.sst-accordion{ border-top: 1px solid var(--sst-line); }
.sst-acc-item{ border-bottom: 1px solid var(--sst-line); }
.sst-acc-head{
  display: flex; align-items: center; justify-content: space-between;
  padding: 15px 2px;
  cursor: pointer;
  font-size: 15px;
  font-weight: 600;
  color: var(--sst-white);
}
.sst-acc-head::after{
  content: "+";
  font-size: 17px;
  color: var(--sst-blue-light);
  transition: transform .2s ease;
}
.sst-acc-item.open .sst-acc-head::after{ content: "\2013"; }
.sst-acc-body{
  max-height: 0;
  overflow: hidden;
  transition: max-height .25s ease;
  font-size: 16px;
  line-height: 1.7;
  color: rgba(255,255,255,0.7);
}
.sst-acc-item.open .sst-acc-body{ max-height: 360px; }
.sst-acc-body-inner{ padding: 0 2px 16px; }
.sst-acc-body-inner h5{ color: var(--sst-white); font-size: 13px; margin: 0 0 6px; }
.sst-acc-body-inner ul{ margin: 0 0 12px; padding-left: 18px; }
.sst-acc-body-inner li{ margin-bottom: 4px; font-size: 16px; }
.sst-acc-body-inner table{ width: 100%; border-collapse: collapse; }
.sst-acc-body-inner table tr{ border-bottom: 1px solid var(--sst-line); }
.sst-acc-body-inner table th{
  text-align: left; color: var(--sst-muted); font-weight: 500;
  font-size: 12px; text-transform: uppercase; padding: 8px 12px 8px 0;
}
.sst-acc-body-inner table td{ padding: 8px 0; text-align: left; font-size: 16px; }

.woocommerce-tabs.wc-tabs-wrapper{ padding-top: 4px; }
ul.tabs.wc-tabs{
  border-bottom: 1px solid var(--sst-line) !important;
  padding: 0 !important;
  margin-bottom: 20px !important;
}
ul.tabs.wc-tabs li a{
  color: var(--sst-muted); font-size: 13px; letter-spacing: 0.4px; text-transform: uppercase;
  transition: color .2s ease;
  padding: 0 0 14px !important;
}
ul.tabs.wc-tabs li.active a{ color: var(--sst-white); border-bottom: 2px solid var(--sst-blue); }
.woocommerce-Tabs-panel{ color: rgba(255,255,255,0.75); font-size: 16px; line-height: 1.75; }

#reviews{ padding: 0; }
#reviews #comments{ margin-bottom: 24px; }
#reviews p.woocommerce-noreviews{ color: var(--sst-muted); font-size: 14px; margin-bottom: 18px; }
.woocommerce div.product .star-rating{ color: var(--sst-blue-light); }
.woocommerce div.product .star-rating::before{ color: rgba(255,255,255,0.15); }
.woocommerce div.product .star-rating span::before{ color: var(--sst-blue-light); }
#review_form_wrapper{
  background: var(--sst-black);
  border: 1px solid var(--sst-line);
  border-radius: var(--sst-radius);
  padding: 22px;
}
#review_form #respond .comment-reply-title{ color: var(--sst-white); font-size: 16px; margin: 0 0 18px; display: block; }
.comment-form-rating{ margin-bottom: 18px !important; }
.comment-form-rating label,
.comment-form-comment label,
.comment-form-author label,
.comment-form-email label{
  display: block; color: var(--sst-muted); font-size: 11.5px; text-transform: uppercase;
  letter-spacing: 0.4px; margin-bottom: 8px;
}
.comment-form-rating .stars a{ color: rgba(255,255,255,0.2); transition: color .15s ease; }
.comment-form-rating .stars a:hover,
.comment-form-rating .stars a.active,
.comment-form-rating .stars:hover a{ color: var(--sst-blue-light); }
.woocommerce #review_form textarea,
.woocommerce #review_form input{
  background: var(--sst-black-2) !important;
  border: 1px solid var(--sst-line) !important;
  color: var(--sst-white) !important;
  border-radius: var(--sst-radius);
  padding: 11px 13px;
  width: 100%;
  margin-bottom: 16px;
  font-size: 14px;
}
.woocommerce #review_form #submit{
  background: var(--sst-blue) !important;
  border: none !important;
  border-radius: var(--sst-radius);
  color: var(--sst-white) !important;
  padding: 12px 22px !important;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  font-size: 12.5px !important;
  transition: background .2s ease;
}
.woocommerce #review_form #submit:hover{ background: var(--sst-blue-dark) !important; }

/* ===== Related products ===== */
.related.products{
  margin-top: 70px !important;
  padding: 40px 0 70px;
  border-top: 1px solid var(--sst-line);
}
.related.products > h2{
  letter-spacing: 1px;
  margin-bottom: 30px !important;
  position: relative;
  padding-bottom: 14px;
}
.related.products > h2::after{
  content: "";
  position: absolute; left:0; bottom:0;
  width: 54px; height: 3px;
  background: var(--sst-blue);
}
.related.products ul.products{
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
}
.related.products ul.products li.product{
  width: auto !important;
  margin: 0 !important;
  float: none !important;
  padding: 0 !important;
  /*background: var(--sst-black-2) !important;*/
  /*border: 1px solid var(--sst-line) !important;*/
  /*border-radius: var(--sst-radius);*/
  overflow: hidden;
  position: relative;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.related.products ul.products li.product:hover{
  transform: translateY(-6px);
  box-shadow: 0 18px 34px rgba(0,0,0,0.4);
  border-color: var(--sst-blue);
}
.related.products ul.products li.product > a{ display: block; position: relative; }
.related.products ul.products li.product img{
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1/1;
  object-fit: contain;
  background: #fff;
  display: block;
  transition: transform .4s ease;
}
.related.products ul.products li.product:hover img{ transform: scale(1.04); }
.related.products ul.products li.product .woocommerce-loop-product__title{
  margin: 14px 16px 4px !important;
  font-size: 14px;
}
.related.products ul.products li.product .price{
  color: var(--sst-white) !important;
  font-weight: 600;
  margin: 0 16px 14px !important;
  display: block;
}
.related.products ul.products li.product .button{
  display: block;
  margin: 0 16px 16px !important;
  background: var(--sst-blue) !important;
  border-radius: var(--sst-radius) !important;
  text-align: center;
  transition: background .2s ease;
}
.related.products ul.products li.product .button:hover{ background: var(--sst-blue-dark) !important; }

/* ===== Scroll-reveal ===== */
.sst-reveal{ opacity: 0; transform: translateY(24px); transition: opacity .6s ease, transform .6s ease; }
.sst-reveal.sst-visible{ opacity: 1; transform: translateY(0); }

/* ===== Inquiry modal ===== */
.sst-modal-overlay{
  position: fixed; inset: 0;
  background: rgba(0,0,0,0.7);
  display: flex; align-items: center; justify-content: center;
  z-index: 9999;
  opacity: 0; pointer-events: none;
  transition: opacity .25s ease;
  padding: 20px;
}
.sst-modal-overlay.open{ opacity: 1; pointer-events: auto; }
.sst-modal-box{
  background: var(--sst-black-2);
  border: 1px solid var(--sst-line);
  border-radius: var(--sst-radius);
  width: 100%; max-width: 440px;
  padding: 30px 28px;
  position: relative;
  transform: translateY(16px);
  transition: transform .25s ease;
}
.sst-modal-overlay.open .sst-modal-box{ transform: translateY(0); }
.sst-modal-close{
  position: absolute; top: 14px; right: 16px;
  background: none; border: none;
  color: var(--sst-muted); font-size: 20px; cursor: pointer; line-height: 1;
  transition: color .15s ease;
}
.sst-modal-close:hover{ color: var(--sst-white); }
.sst-modal-box h3{ color: var(--sst-white); font-size: 18px; margin: 0 0 4px; }
.sst-modal-box p.sst-modal-sub{ color: var(--sst-muted); font-size: 12.5px; margin: 0 0 20px; }
.sst-modal-box label{
  display: block; font-size: 11.5px; text-transform: uppercase;
  letter-spacing: 0.4px; color: var(--sst-muted); margin-bottom: 6px;
}
.sst-modal-box input,
.sst-modal-box textarea{
  width: 100%;
  background: var(--sst-black) !important;
  border: 1px solid var(--sst-line) !important;
  color: var(--sst-white) !important;
  border-radius: var(--sst-radius);
  padding: 11px 13px;
  font-size: 13.5px;
  margin-bottom: 16px;
  font-family: inherit;
}
.sst-modal-box input:focus,
.sst-modal-box textarea:focus{ outline: none; border-color: var(--sst-blue) !important; }
.sst-modal-submit{
  width: 100%;
  background: var(--sst-blue);
  color: var(--sst-white);
  border: none;
  border-radius: var(--sst-radius);
  padding: 13px 18px;
  font-size: 13px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  cursor: pointer;
  transition: background .2s ease;
}
.sst-modal-submit:hover{ background: var(--sst-blue-dark); }
.sst-modal-submit:disabled{ opacity: 0.6; cursor: not-allowed; }
.sst-modal-status{ margin-top: 12px; font-size: 12.5px; text-align: center; }
.sst-modal-status.success{ color: var(--sst-blue-light); }
.sst-modal-status.error{ color: #e07a7a; }

section.related.products.sst-reveal.sst-visible p.product-sku {top: 200px;}

.woocommerce-product-gallery.woocommerce-product-gallery--with-images.woocommerce-product-gallery--columns-4.images{background: none !important; border: none !important;}

.woocommerce-product-gallery__image {border-radius: 15px;}

.sst-acc-body-inner a{color: #e9e9e9;}

.sst-accordion-wrap h2{font-size:32px !important;}

h2.single-post-title.product_title.entry-title {font-size: 30px !important;}

/* ===== Responsive =====
   1200+  : full desktop
   992–1199 : small laptop
   768–991  : tablet landscape
   577–767  : tablet portrait / mobile landscape — everything stacks 1-col
   ≤576     : mobile portrait
   ========================================================================== */
@media (max-width: 1199px){
  .woocommerce div.product{ column-gap: 44px; }
}
@media (max-width: 991px){
  .woocommerce div.product{ padding: 40px 24px 0; column-gap: 34px; }
  .related.products ul.products{ grid-template-columns: repeat(3, 1fr) !important; }
  .sst-trust-section{ grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 767px){
  .woocommerce div.product{ grid-template-columns: 1fr; row-gap: 28px; align-items: start; }
  .woocommerce div.product > div.images,
  .woocommerce div.product > div.summary,
  .woocommerce div.product > *:not(div.images):not(div.summary){
    grid-column: 1;
  }
  .woocommerce div.product > div.images{ grid-row: auto; }
  .woocommerce div.product > div.summary{ grid-row: auto; }
  .sst-below-row{ grid-template-columns: 1fr; gap: 30px; }
  .sst-trust-section{ grid-template-columns: repeat(3, 1fr); margin-top: 28px; }
  .related.products ul.products{ grid-template-columns: repeat(2, 1fr) !important; gap: 14px !important; }
  .woocommerce div.product form.cart{ gap: 10px; }
  .sst-modal-box{ max-height: 88vh; overflow-y: auto; }
  .owp-product-nav-wrap.clr {display: none;}
}
@media (max-width: 576px){
  .woocommerce div.product{ padding: 26px 16px 0; }
  .woocommerce div.product .product_title{ font-size: 22px; padding-bottom: 12px; }
  .woocommerce div.product p.price{ font-size: 20px; }
  .woocommerce div.product > div.summary{ padding: 0; }
  .related.products ul.products{ grid-template-columns: 1fr !important; }
  .sst-trust-section{ grid-template-columns: repeat(2, 1fr); }
  .flex-control-thumbs li{ width: 60px !important; }
  .woocommerce div.product form.cart button.single_add_to_cart_button{ min-width: 140px; }
  .sst-modal-box{ padding: 24px 20px; }
  section.related.products.sst-reveal.sst-visible p.product-sku { top: 270px;}
}
@media (max-height: 480px) and (orientation: landscape){
  .sst-modal-box{ max-height: 84vh; overflow-y: auto; padding: 20px; }
}
@media (prefers-reduced-motion: reduce){
  *{ transition: none !important; animation: none !important; }
}

/* ==========================================================================
   OPTIONAL FALLBACK — only if a sidebar/widget still shows up next to or
   above the product.
   ========================================================================== */
/*
body.single-product .sidebar,
body.single-product #right-sidebar,
body.single-product #left-sidebar,
body.single-product .widget-area{ display: none !important; }
body.single-product #content-wrap .content-area,
body.single-product #primary{ width: 100% !important; float: none !important; }
*/