/* Single product layout */
body.single-product{
  --sl-card-radius:24px;
  --sl-card-shadow:0 25px 60px rgba(15,42,86,.08);
  background:linear-gradient(180deg,#f7f9ff 0%,#ffffff 260px);
}
/* If the header is transparent/overlapping, offset the entire main once (breadcrumb + product). */
.has-transparent + #main{
  padding-top:var(--sl-product-top-offset, 0px);
}
.single-product .woocommerce-breadcrumb{
  max-width:1180px;
  margin:0 auto 14px;
  padding:10px clamp(16px,4vw,40px);
  text-align:right;
  border-radius:14px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(15,42,86,.12);
  box-shadow:0 10px 30px rgba(15,42,86,.08);
  color:#5b678a;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
}
.single-product .sl-breadcrumb--product{
  font-size:.9rem;
  line-height:1.2;
}
.single-product .sl-breadcrumb--product,
.single-product .sl-breadcrumb--product *{
  white-space:nowrap;
}
.single-product .sl-breadcrumb--product{
  overflow:hidden;
  text-overflow:ellipsis;
}
.single-product .sl-breadcrumb--product a{
  color:#0f2a56;
  text-decoration:none;
  opacity:.78;
  font-weight:700;
}
.single-product .sl-breadcrumb--product a:hover{
  opacity:1;
  text-decoration:underline;
}
.single-product .sl-breadcrumb--product .divider{
  opacity:.55;
}
.single-product .product-container{
  padding-block:clamp(22px,4vw,64px);
}
@media (min-width:850px){
  .single-product .product-container{
    padding-top:clamp(22px,4vw,64px);
  }
}
.single-product .product-main{
  max-width:1180px;
  margin-inline:auto;
  padding-inline:clamp(16px,4vw,40px);
  position:relative;
  isolation:isolate;
}
.single-product .product-main::before{
  content:'';
  position:absolute;
  inset:0;
  height:260px;
  background:radial-gradient(circle at 55% 25%,rgba(218,229,255,.55) 0%,rgba(247,249,255,0) 65%);
  z-index:-1;
  pointer-events:none;
}
.single-product .product-main .row{
  display:flex!important;
  flex-wrap:wrap;
  gap:clamp(18px,3vw,32px);
  justify-content:flex-start;
  align-items:flex-start;
  direction:rtl;
}
.single-product .product-main .row > .product-gallery,
.single-product .product-main .row > .summary,
.single-product .product-main .row > .product-info,
.single-product .product-main .row > .images{
  background:#fff;
  border:1px solid var(--br);
  border-radius:var(--sl-card-radius,24px);
  box-shadow:var(--sl-card-shadow,var(--sh));
  padding:clamp(16px,2.5vw,28px);
  position:relative;
  float:none!important;
  width:100%!important;
  margin:0!important;
}
.single-product .product-main .row > .product-gallery,
.single-product .product-main .row > .images{
  /* Desktop: gallery should feel like the "hero" area. */
  flex:1 1 clamp(360px,48%,640px);
  max-width:none;
}
.single-product .product-main .row > .product-gallery{
  overflow:visible;
}
.single-product .product-main .row > .summary{
  background:transparent;
  border:0;
  box-shadow:none;
  padding:0;
  flex:1 1 clamp(360px,66%,640px);
}
.single-product .product-info.product-summary{
  margin-top:0!important;
}
.single-product .product-main .row .summary{
  order:2;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  align-items:stretch;
  gap:clamp(18px,2vw,26px);
}
.single-product .product-main .row .product-gallery,
.single-product .product-main .row .images{
  order:1;
}
.single-product .product-main .row .images{
  max-width:none;
}
.single-product .product-main .row .product-gallery{
  padding:clamp(16px,2vw,24px);
}
.single-product .product-main .row .images{
  padding:0;
}
.single-product .product-main .row .images img{
  background:#f2f4f8;
  border-radius:18px;
  width:100%;
  object-fit:contain;
}
.single-product .woocommerce-product-gallery__wrapper{
  border-radius:20px;
  background:#f7f9ff;
  padding:clamp(8px,1.8vw,18px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.single-product .woocommerce-product-gallery__image{
  border-radius:18px;
  overflow:hidden;
}
.single-product .woocommerce-product-gallery__trigger{
  right:18px;
  top:18px;
}
.single-product #product-sidebar{display:none!important}

.single-product .product-nav{
  display:flex;
  gap:8px;
  margin:0 0 8px;
  justify-content:flex-end;
}
.single-product .product-nav a{
  width:44px;
  height:44px;
  border-radius:14px;
  border:1px solid rgba(15,42,86,.12);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#0f2a56;
  background:#fff;
  box-shadow:0 8px 20px rgba(15,42,86,.08);
  transition:transform .2s ease,box-shadow .2s ease;
}
.single-product .product-nav a:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 24px rgba(15,42,86,.15);
}

/* Title & price */
.single-product div.product .summary{
  padding:0;
  margin:0;
  background:transparent;
}
.single-product .sl-product-summary-card{
  display:flex;
  flex-direction:column;
  gap:clamp(14px,2vw,24px);
  position:relative;
  background:#fff;
  border:1px solid var(--br);
  border-radius:var(--sl-card-radius,24px);
  box-shadow:var(--sl-card-shadow,var(--sh));
  padding:clamp(18px,2.5vw,30px);
  padding-top:clamp(26px,3vw,40px);
  min-height:100%;
  overflow:hidden;
  width:100%;
  max-width:none;
  margin:0;
}
.single-product .sl-product-summary-card::before{
  content:'';
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:6px;
  background:linear-gradient(90deg,#1e5fe0,#23a6f0);
}
.single-product .sl-product-summary-card > *{
  position:relative;
  z-index:1;
  order:5;
}
.single-product .sl-product-summary-card .product_title{
  order:1;
  margin-top:0;
  margin-bottom:0;
  color:var(--prim);
  /* בסיס טיפוגרפי לפי יחס זהב */
  font-size:clamp(calc(1rem*var(--phi,1.618)),2.6vw,calc(1rem*var(--phi,1.618)*1.5));
  line-height:1.25;
}
.single-product .sl-product-summary-card .woocommerce-product-rating{
  order:2;
  align-self:flex-start;
  background:#f6f8ff;
  border-radius:14px;
  padding:6px 12px;
}
.single-product .sl-product-summary-card .is-divider{
  order:2;
  margin:0;
}
.single-product .sl-product-summary-card .next-prev-thumbs{
  order:2;
  margin:0;
}
.single-product .sl-product-summary-card .price-wrapper{
  order:3;
}
.single-product .sl-product-summary-card .product-short-description{
  order:4;
  margin:0;
}
.single-product .sl-product-summary-card form.cart{
  order:5;
}
.single-product .sl-product-summary-card .product_meta{
  order:6;
}
.single-product .sl-product-summary-card .price{
  color:var(--prim);
  font-weight:800;
  /* מחיר ≈ כותרת × φ */
  font-size:clamp(calc(1rem*var(--phi,1.618)*1.6),3vw,calc(1rem*var(--phi,1.618)*var(--phi,1.618)));
  display:flex;
  align-items:flex-end;
  gap:10px;
  line-height:1;
}
.single-product .sl-product-summary-card .price del{
  order:2;
  font-size:.85rem;
  color:#8f9bb8;
  font-weight:500;
}
.single-product .sl-product-summary-card .price ins{
  text-decoration:none;
}
.single-product .sl-product-summary-card .price .woocommerce-Price-amount bdi{
  font-variant-numeric:tabular-nums;
}
.single-product .sl-product-summary-card .price .sl-price-range{
  display:inline-flex;
  align-items:baseline;
  gap:6px;
  direction:ltr;
  unicode-bidi:isolate;
  white-space:nowrap;
}
.single-product .sl-product-summary-card .price .sl-price-range__sep{
  opacity:.75;
}
.single-product .sl-product-summary-card .product-short-description{
  color:#4d5b75;
  font-size:calc(1rem*var(--phi,1.618)/1.6);
  line-height:1.5;
}
.single-product .sl-product-summary-card .product-short-description.is-collapsed{
  display:-webkit-box;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.single-product .sl-short-desc-toggle{
  align-self:flex-start;
  border:0;
  background:transparent;
  color:#1d4f8f;
  font-size:12px;
  font-weight:700;
  padding:0;
  margin-top:-2px;
  cursor:pointer;
}
.single-product .sl-short-desc-toggle:hover{
  color:#123b73;
}
.single-product .sl-product-highlights{
  order:8;
  width:100%;
  margin:0;
  padding:clamp(12px,1.8vw,18px);
  border:1px solid rgba(15,42,86,.08);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(255,255,255,.95) 0%,rgba(237,242,255,.95) 100%);
  display:grid;
  gap:12px;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
}
.single-product .product-gallery .sl-product-highlights,
.single-product .images .sl-product-highlights{
  margin-top:clamp(14px,2vw,22px);
}
.single-product .product-gallery .woocommerce-breadcrumb,
.single-product .images .woocommerce-breadcrumb{
  position:static;
  inset:auto;
  transform:none;
  margin:0 0 12px;
  padding:0;
  max-width:none;
  width:auto;
  background:transparent;
  z-index:2;
  text-align:right;
  white-space:normal;
}
.single-product .product-gallery .yith-wcwl-add-to-wishlist,
.single-product .images .yith-wcwl-add-to-wishlist{
  margin-top:clamp(10px,1.6vw,18px);
  width:100%;
  display:flex;
  justify-content:flex-start;
}
.single-product .sl-product-highlights__item{
  display:flex;
  align-items:flex-start;
  gap:12px;
}
.single-product .sl-product-highlights__icon{
  width:42px;
  height:42px;
  border-radius:14px;
  background:#edf2ff;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.single-product .sl-product-highlights__icon svg{width:22px;height:22px;fill:#1a3b7f}
.single-product .sl-product-highlights__copy{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.single-product .sl-product-highlights__copy strong{
  display:block;
  font-size:.95rem;
  color:#0f2a56;
}
.single-product .sl-product-highlights__copy span{
  font-size:.85rem;
  color:#5b688a;
}
.single-product .sl-product-cost-card{
  order:4;
  width:100%;
  border:1px solid rgba(15,42,86,.15);
  border-radius:20px;
  background:#f5f8ff;
  padding:clamp(14px,2vw,20px);
  display:flex;
  flex-direction:column;
  gap:10px;
  direction:rtl;
}
.single-product .sl-product-cost-card__row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding-block:10px;
  font-size:.95rem;
  color:#1b2f53;
  width:100%;
}
.single-product .sl-product-cost-card__row:not(:last-child){
  border-bottom:1px dashed rgba(15,42,86,.12);
  margin-bottom:6px;
}
.single-product .sl-product-cost-card__info{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  gap:4px;
  text-align:right;
}
.single-product .sl-product-cost-card__label{
  flex:0 1 auto;
  font-weight:600;
  text-align:right;
}
.single-product .sl-product-cost-card__value{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  font-size:1.05rem;
  color:#0f2a56;
  text-align:left;
  white-space:nowrap;
}
.single-product .sl-product-cost-card__value.is-amount{
  direction:ltr;
}
.single-product .sl-product-cost-card__value.is-text{
  direction:rtl;
  text-align:right;
  font-size:.95rem;
}
.single-product .sl-product-cost-card__note{
  font-size:.82rem;
  color:#6c7a93;
  line-height:1.45;
  margin:0;
}
.single-product .sl-product-cost-card__row.is-total{
  border-top:1px solid rgba(15,42,86,.15);
  padding-top:14px;
  margin-top:6px;
  border-bottom:0;
  font-weight:700;
}
.single-product .sl-product-cost-card__row.is-divider{
  border:1px dashed rgba(15,42,86,.2);
  border-radius:12px;
  padding:12px 14px;
  background:#fff;
  margin:0;
}
.single-product .sl-product-shipping{
  order:9;
  width:100%;
  border:1px solid rgba(15,42,86,.12);
  border-radius:20px;
  padding:clamp(14px,2vw,22px);
  background:#f9fbff;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.single-product .sl-product-shipping__head{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.single-product .sl-product-shipping__head strong{
  font-size:1rem;
  color:#0f2a56;
}
.single-product .sl-product-shipping__head span{
  font-size:.85rem;
  color:#5d6a84;
}
.single-product .sl-product-shipping__grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:10px;
}
.single-product .sl-product-shipping__option{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px;
  border:1px solid rgba(15,42,86,.12);
  border-radius:16px;
  background:#fff;
  position:relative;
  box-shadow:0 6px 16px rgba(15,42,86,.08);
  cursor:pointer;
}
.single-product .sl-product-shipping__option.is-active{
  border-color:#0f2a56;
  box-shadow:0 8px 18px rgba(15,42,86,.18);
}
.single-product .sl-product-shipping__icon{
  width:44px;
  height:44px;
  border-radius:14px;
  background:#eef2ff;
  display:flex;
  align-items:center;
  justify-content:center;
}
.single-product .sl-product-shipping__icon svg{
  width:22px;
  height:22px;
  fill:#0f2a56;
}
.single-product .sl-product-shipping__copy{
  display:flex;
  flex-direction:column;
  gap:2px;
  font-size:.9rem;
}
.single-product .sl-product-shipping__copy strong{
  color:#0f2a56;
  font-size:.95rem;
}
.single-product .sl-product-shipping__copy span{
  color:#5b678a;
  font-size:.8rem;
}
.single-product .sl-product-shipping__badge{
  margin-inline-start:auto;
  font-size:.75rem;
  padding:4px 8px;
  border-radius:999px;
  background:#f1f5ff;
  color:#0f2a56;
  font-weight:600;
}
.single-product .sl-product-summary-card .yith-wcwl-add-to-wishlist{
  order:7;
  width:100%;
}
.single-product .sl-product-summary-card .product_meta{
  width:100%;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding:0;
  border:0;
  background:transparent;
}
.single-product .sl-product-summary-card .product_meta > span{
  flex:1 1 160px;
  margin:0;
  background:#f7f9ff;
  border:1px solid rgba(15,42,86,.18);
  border-radius:14px;
  padding:8px 12px;
}
.single-product .sl-product-summary-card .product_meta > span.tagged_as{
  flex:1 1 100%;
}
.single-product .sl-product-summary-card .product_meta > span.tagged_as{
  /* Woo outputs tags as plain text + comma-separated links; override our global flex-column rule. */
  display:block;
  font-size:0; /* hide commas + the built-in label text */
  line-height:0;
}
.single-product .sl-product-summary-card .product_meta > span.tagged_as::before{
  content:'תגיות';
  display:block;
  font-size:.85rem;
  line-height:1.2;
  font-weight:700;
  color:#1c2e57;
  margin-bottom:8px;
}
.single-product .sl-product-summary-card .product_meta > span.tagged_as a{
  display:inline-flex;
  align-items:center;
  font-size:.82rem;
  line-height:1.1;
  padding:6px 10px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(15,42,86,.15);
  color:#0f2a56;
  text-decoration:none;
  box-shadow:0 8px 16px rgba(15,42,86,.06);
  margin:0 0 8px 8px;
}
.single-product .sl-product-summary-card .product_meta > span.tagged_as a:hover{
  border-color:var(--acc);
}

@media (min-width:850px){
  .single-product .sl-product-summary-card .product_meta > span.tagged_as{
    max-height:84px;
    overflow:hidden;
    position:relative;
    padding-bottom:6px;
  }
  .single-product .sl-product-summary-card .product_meta > span.tagged_as:hover,
  .single-product .sl-product-summary-card .product_meta > span.tagged_as:focus-within{
    max-height:none;
  }
  .single-product .sl-product-summary-card .product_meta > span.tagged_as::after{
    content:'';
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:28px;
    background:linear-gradient(to bottom,rgba(247,249,255,0),rgba(247,249,255,1));
    pointer-events:none;
  }
  .single-product .sl-product-summary-card .product_meta > span.tagged_as:hover::after,
  .single-product .sl-product-summary-card .product_meta > span.tagged_as:focus-within::after{
    display:none;
  }
}

@media (min-width:1025px){
  .single-product .product-main .row{
    flex-wrap:nowrap;
  }
  .single-product .product-main .row > .product-gallery,
  .single-product .product-main .row > .images{
    /* Allow shrinking so the column gap doesn't force the layout to overflow/shift. */
    flex:0 1 56%;
  }
  .single-product .product-main .row > .summary{
    /* Allow shrinking so the column gap doesn't force the layout to overflow/shift. */
    flex:0 1 44%;
  }
}

@media (min-width:1025px) and (max-width:1460px){
  .single-product .woocommerce-breadcrumb{
    margin-bottom:12px;
    padding:8px clamp(14px,2.4vw,26px);
    border-radius:12px;
    box-shadow:0 8px 20px rgba(15,42,86,.06);
  }

  .single-product .product-container{
    padding-block:clamp(18px,3vw,40px);
  }

  .single-product .product-main{
    padding-inline:clamp(12px,2.4vw,24px);
  }

  .single-product .product-main .row{
    gap:20px;
  }

  .single-product .product-main .row > .product-gallery,
  .single-product .product-main .row > .images{
    flex:0 1 54%;
    padding:18px;
  }

  .single-product .product-main .row > .summary{
    flex:0 1 46%;
  }

  .single-product .sl-product-summary-card{
    gap:14px;
    padding:18px;
    padding-top:24px;
    border-radius:20px;
    box-shadow:0 18px 40px rgba(15,42,86,.08);
  }

  .single-product .sl-product-summary-card .product_title{
    font-size:clamp(1.28rem,2vw,1.8rem);
    line-height:1.22;
  }

  .single-product .sl-product-summary-card .price{
    font-size:clamp(1.4rem,2vw,1.95rem);
    gap:8px;
  }

  .single-product .sl-product-summary-card .product-short-description{
    font-size:.94rem;
    line-height:1.45;
  }

  .single-product .yith-wcwl-add-to-wishlist{
    margin-top:2px;
  }

  .single-product .yith-wcwl-add-to-wishlist a,
  .single-product .yith-wcwl-add-to-wishlist .yith-wcwl-wishlistaddedbrowse a,
  .single-product .yith-wcwl-add-to-wishlist .yith-wcwl-wishlistexistsbrowse a{
    padding:8px 12px;
    border-radius:10px;
    font-size:.9rem;
  }

  .single-product .sl-product-summary-card form.cart{
    gap:12px;
    padding:14px 16px;
    border-radius:20px;
    box-shadow:0 12px 28px rgba(15,42,86,.08);
  }

  .single-product .sl-product-summary-card form.cart .quantity{
    min-height:54px;
    padding:4px;
    border-radius:16px;
  }

  .single-product .sl-product-summary-card form.cart .quantity .minus,
  .single-product .sl-product-summary-card form.cart .quantity .plus{
    flex:0 0 46px;
    min-width:46px;
    height:44px;
    min-height:44px;
    border-radius:12px;
    font-size:1.25rem;
  }

  .single-product .sl-product-summary-card form.cart .quantity .qty{
    width:78px;
    min-width:68px;
    height:44px;
    font-size:1.12rem;
    margin:0 6px;
  }

  .single-product .sl-product-summary-card form.cart .button:not(.is-form){
    min-height:50px;
    padding:12px 14px;
    border-radius:14px;
    font-size:.95rem;
    box-shadow:0 10px 22px rgba(15,42,86,.14);
  }

  .single-product .sl-product-summary-card form.cart .sl-cta-note{
    font-size:11px;
  }

  .single-product .sl-product-summary-card .product_meta{
    margin-top:14px;
    gap:8px;
    padding:10px 12px;
    border-radius:16px;
  }

  .single-product .sl-product-summary-card .product_meta > span{
    padding:7px 10px;
    font-size:.84rem;
  }

  .single-product .sl-product-summary-card .product_meta > span.tagged_as::before{
    margin-bottom:6px;
  }

  .single-product .sl-product-summary-card .product_meta > span.tagged_as a{
    font-size:.78rem;
    padding:5px 9px;
    margin-block-end:6px;
    margin-inline-end:6px;
  }

  .single-product .woocommerce-tabs{
    margin-top:28px;
    padding-inline:clamp(12px,2.8vw,24px);
  }

  .single-product .woocommerce-tabs .wc-tabs{
    gap:8px;
    margin-bottom:8px;
    padding:6px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 8px 20px rgba(15,42,86,.06);
  }

  .single-product .woocommerce-tabs .wc-tabs li a{
    padding:7px 14px;
    font-size:.92rem;
  }

  .single-product .woocommerce-tabs .panel{
    padding:14px 0;
  }

  .single-product .related.product-section{
    margin-top:28px;
    padding-inline:clamp(12px,2.8vw,24px);
  }

  .single-product .related .related__inner{
    padding:20px;
    border-radius:18px;
  }

  .single-product .shopline-carousel__head{
    margin-bottom:12px;
  }
}

/* ATC area */
.single-product .sl-product-summary-card form.cart{
  order:6;
  width:100%;
  display:flex;
  flex-direction:column;
  gap:clamp(12px,1.8vw,18px);
  align-items:stretch;
  background:linear-gradient(180deg,#ffffff 0%,#f4f6fb 100%);
  border:1px solid var(--br);
  border-radius:26px;
  padding:clamp(16px,2vw,26px);
  box-shadow:0 15px 40px rgba(15,42,86,.08);
}
.single-product .sl-product-summary-card form.cart .quantity{
  position:relative;
  width:100%;
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:center;
  direction:ltr;
  gap:0;
  padding:6px;
  border:1px solid rgba(15,42,86,.12);
  border-radius:18px;
  background:#fff;
  min-height:60px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.single-product .sl-product-summary-card form.cart .quantity .screen-reader-text{
  position:absolute!important;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  border:0;
}
.single-product .sl-product-summary-card form.cart .quantity .minus,
.single-product .sl-product-summary-card form.cart .quantity .plus{
  flex:0 0 54px;
  min-width:54px;
  height:48px;
  min-height:48px;
  border:0;
  border-radius:14px;
  background:#e6edfb;
  color:#0f2a56;
  font-size:1.45rem;
  font-weight:700;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .25s ease,color .25s ease,transform .25s ease;
  box-shadow:0 4px 12px rgba(15,42,86,.12);
  padding:0!important;
  appearance:none;
  -webkit-appearance:none;
}
.single-product .sl-product-summary-card form.cart .quantity .minus:hover,
.single-product .sl-product-summary-card form.cart .quantity .plus:hover{
  background:#d2ddf5;
  color:#08112a;
  transform:translateY(-1px);
}
.single-product .sl-product-summary-card form.cart .quantity .plus{
  order:3;
}
.single-product .sl-product-summary-card form.cart .quantity .minus{
  order:1;
}
.single-product .sl-product-summary-card form.cart .quantity .qty{
  order:2;
  flex:0 1 86px;
  width:86px;
  max-width:40%;
  min-width:72px;
  height:48px;
  border:1px solid #d8dfef;
  border-radius:12px;
  margin:0 8px;
  padding:0;
  text-align:center;
  font-size:1.25rem;
  font-weight:700;
  background:#fff;
  color:#0f2a56;
  appearance:textfield;
  -moz-appearance:textfield;
}
.single-product .sl-product-summary-card form.cart .quantity .qty::-webkit-outer-spin-button,
.single-product .sl-product-summary-card form.cart .quantity .qty::-webkit-inner-spin-button{
  margin:0;
  -webkit-appearance:none;
}
.single-product .sl-product-summary-card form.cart .button:not(.is-form){
  width:100%;
  justify-content:center;
  background:var(--acc);
  color:#fff;
  border:1px solid var(--acc);
  border-radius:18px;
  padding:clamp(14px,1.8vw,18px);
  min-height:56px;
  font-weight:600;
  font-size:1rem;
  letter-spacing:.3px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  text-align:center;
  box-shadow:0 14px 28px rgba(15,42,86,.18);
  transition:transform .25s ease,box-shadow .25s ease,background .25s ease;
}
.single-product .sl-product-summary-card form.cart .button:not(.is-form):hover{
  transform:translateY(-1px);
  box-shadow:0 18px 32px rgba(15,42,86,.22);
}
.single-product .sl-product-summary-card form.cart .sl-buy-now{
  background:#04183c;
  border-color:#04183c;
  color:#fff;
  order:2;
}
.single-product .sl-product-summary-card form.cart .sl-buy-now:hover{
  background:#071f4d;
  border-color:#071f4d;
}
.single-product .sl-product-summary-card form.cart .sl-cta-note{
  order:4;
  margin:2px 0 0;
  color:#6d7f9d;
  font-size:12px;
  font-weight:600;
  text-align:center;
  line-height:1.35;
}

/* YITH Wishlist button */
.single-product .yith-wcwl-add-to-wishlist{margin-top:6px}
.single-product .sl-product-wishlist-inline{margin-top:0}
.single-product .yith-wcwl-add-to-wishlist a,
.single-product .yith-wcwl-add-to-wishlist .yith-wcwl-wishlistaddedbrowse a,
.single-product .yith-wcwl-add-to-wishlist .yith-wcwl-wishlistexistsbrowse a{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--br);border-radius:12px;padding:10px 14px;background:#fff;color:inherit;text-decoration:none}
.single-product .yith-wcwl-add-to-wishlist a:hover{border-color:var(--acc)}
.single-product .yith-wcwl-wishlistaddedbrowse .feedback,
.single-product .yith-wcwl-wishlistexistsbrowse .feedback{
  display:none !important;
}
.single-product .yith-wcwl-wishlistaddedbrowse a::before,
.single-product .yith-wcwl-wishlistexistsbrowse a::before{
  content:'';
  width:18px;
  height:18px;
  display:inline-block;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230f2a56'><path d='M12 2.7l2.9 5.88 6.5.94-4.7 4.58 1.11 6.48L12 17.9l-5.81 3.06 1.11-6.48L2.6 9.52l6.5-.94L12 2.7z'/></svg>") no-repeat center/contain;
}

/* Meta and tabs */
.single-product .product_meta{
  margin-top:18px;
  color:#0f2a56;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:10px;
  padding:clamp(12px,2vw,18px);
  border-radius:20px;
  border:1px dashed rgba(15,42,86,.18);
  background:#f7f9ff;
}
.single-product .product_meta > span{
  display:flex;
  flex-direction:column;
  gap:4px;
  margin:0;
  padding:10px 12px;
  border-radius:14px;
  background:#fff;
  border:1px solid rgba(137,152,190,.2);
  font-size:.9rem;
  line-height:1.3;
}
.single-product .product_meta > span:last-child{margin-bottom:0}
.single-product .product_meta > span span{
  color:#1c2e57;
  font-weight:600;
}
.single-product .woocommerce-tabs{
  max-width:1200px;
  margin:40px auto 0;
  padding-inline:clamp(12px,4vw,40px);
}
.single-product .woocommerce-tabs .wc-tabs{
  border-bottom:1px solid var(--br);
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:10px;
  padding:8px;
  border-radius:999px;
  background:#ffffff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 10px 30px rgba(15,42,86,.08);
}
.single-product .woocommerce-tabs .wc-tabs li{margin:0}
.single-product .woocommerce-tabs .wc-tabs li a{
  padding:8px 16px;
  border-radius:999px;
  background:#f1f5fb;
  color:#0f2a56;
}
.single-product .woocommerce-tabs .panel{padding:18px 0}

/* Related products grid */
.single-product .related.product-section{
  max-width:1200px;
  margin:40px auto 0;
  padding-inline:clamp(12px,4vw,40px);
}
.single-product .related .related__inner{
  background:#fff;
  border:1px solid var(--br);
  border-radius:22px;
  box-shadow:var(--sh);
  padding:clamp(18px,3vw,32px);
}
.single-product .related .product-section-title{
  margin:0;
  font-size:1.35rem;
  color:var(--prim);
}
.single-product .shopline-carousel__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:16px;
}
.single-product .shopline-carousel__head .section-lead{
  margin:4px 0 0;
  color:#5c6b80;
  font-size:14px;
}
.single-product .shopline-related-grid{
  margin:0;
  padding:0;
  list-style:none;
}
.single-product .shopline-related-grid li.product{height:100%}

/* Related: apply Shopline card styling (shop.css isn't loaded on PDP).
   Keep Y overflow for card shadows, but prevent horizontal overflow from widening the page. */
.single-product .related .sl-slider{overflow-x:hidden;overflow-y:visible}
.single-product .related .sl-slider__track{overflow-y:hidden}
.single-product .shopline-related-grid li.shopline-card{
  background:#fff;
  border:1px solid var(--br);
  border-radius:18px;
  box-shadow:0 14px 34px rgba(15,42,86,.10);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  height:100%;
}
.single-product .shopline-related-grid li.shopline-card .thumb{
  display:block;
  position:relative;
  border-radius:18px 18px 0 0;
  background:#f4f7fb;
  border-bottom:1px solid rgba(15,42,86,.08);
  aspect-ratio:1/1;
  overflow:hidden;
}
.single-product .shopline-related-grid li.shopline-card .thumb img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  padding:14px;
  transition:transform .25s ease;
}
.single-product .shopline-related-grid li.shopline-card:hover .thumb img{
  transform:scale(1.02);
}
.single-product .shopline-related-grid li.shopline-card .body{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:14px 16px 16px;
}
.single-product .shopline-related-grid li.shopline-card .sl-stock-chip{
  align-self:flex-start;
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:.82rem;
  font-weight:800;
  border-radius:999px;
  padding:5px 12px;
  background:#eef2ff;
  color:#1f3b5a;
}
.single-product .shopline-related-grid li.shopline-card .sl-stock-chip.is-outofstock{background:#fee2e2;color:#991b1b}
.single-product .shopline-related-grid li.shopline-card .sl-stock-chip.is-onbackorder{background:#fff3d6;color:#b45309}
.single-product .shopline-related-grid li.shopline-card .title{
  margin:0;
  font-size:1rem;
  line-height:1.35;
  color:#0f2a56;
  font-weight:900;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
.single-product .shopline-related-grid li.shopline-card .title a{
  color:inherit;
  text-decoration:none;
}
.single-product .shopline-related-grid li.shopline-card .title a:hover{text-decoration:underline}
.single-product .shopline-related-grid li.shopline-card .price{
  font-weight:900;
  color:#0f2a56;
  font-size:1.06rem;
}
.single-product .shopline-related-grid li.shopline-card .button{
  margin-top:auto;
  width:100%;
  text-align:center;
  border-radius:999px;
  padding:10px 14px;
}

.single-product .product-footer{
  margin-top:clamp(32px,5vw,70px);
}
.single-product .product-footer .container{
  max-width:1200px;
  margin-inline:auto;
  padding:clamp(18px,3vw,32px);
  background:#fff;
  border:1px solid var(--br);
  border-radius:22px;
  box-shadow:var(--sh);
}
@media (min-width:1025px) and (max-width:1460px){
  .single-product .sl-product-summary-card form.cart{
    gap:12px;
    padding:14px 16px;
    border-radius:20px;
    box-shadow:0 12px 28px rgba(15,42,86,.08);
  }

  .single-product .sl-product-summary-card form.cart .quantity{
    min-height:54px;
    padding:4px;
    border-radius:16px;
  }

  .single-product .sl-product-summary-card form.cart .quantity .minus,
  .single-product .sl-product-summary-card form.cart .quantity .plus{
    flex:0 0 46px;
    min-width:46px;
    height:44px;
    min-height:44px;
    border-radius:12px;
    font-size:1.25rem;
  }

  .single-product .sl-product-summary-card form.cart .quantity .qty{
    width:78px;
    min-width:68px;
    height:44px;
    font-size:1.12rem;
    margin:0 6px;
  }

  .single-product .sl-product-summary-card form.cart .button:not(.is-form){
    min-height:50px;
    padding:12px 14px;
    border-radius:14px;
    font-size:.95rem;
    box-shadow:0 10px 22px rgba(15,42,86,.14);
  }

  .single-product .sl-product-summary-card form.cart .sl-cta-note{
    font-size:11px;
  }
}
@media (max-width:1024px){
  .single-product .product-main .row{
    flex-direction:column;
  }
  .single-product .product-main .row > .product-gallery,
  .single-product .product-main .row > .summary,
  .single-product .product-main .row > .product-info,
  .single-product .product-main .row > .images{
    max-width:none;
    flex:1 1 100%;
  }
  .single-product .product-main .row .summary,
  .single-product .product-main .row .product-gallery,
  .single-product .product-main .row .images{
    order:initial;
  }
}

/* Mobile tweaks */
@media (max-width:768px){
  .single-product .product-container{padding-block:24px;}
  .single-product .product-main{padding-inline:clamp(10px,6vw,20px);}
  .single-product .product-main .row{
    gap:clamp(12px,4vw,20px);
  }
  /* Tighten vertical rhythm on mobile (the default 40px section spacing feels too airy). */
  .single-product .product-footer{margin-top:24px;}
  .single-product .woocommerce-tabs,
  .single-product .related.product-section{margin-top:24px;}
  .single-product .product-main .row > .product-gallery,
  .single-product .product-main .row > .product-info,
  .single-product .product-main .row > .images{
    padding:clamp(14px,5vw,22px);
    border-radius:20px;
  }
  .single-product .product-main .row .images img{border-radius:14px;}
  .single-product .sl-product-summary-card{
    text-align:right;
    align-items:stretch;
    gap:10px;
    padding:clamp(14px,5vw,20px);
  }
  .single-product.sl-product-mobile-layout .product-main .row > .product-gallery.sl-product-gallery-empty,
  .single-product.sl-product-mobile-layout .product-main .row > .images.sl-product-gallery-empty{
    background:transparent;
    border:0;
    box-shadow:none;
    padding:0;
    border-radius:0;
  }
  .single-product.sl-product-mobile-layout .sl-product-summary-card .woocommerce-product-gallery{
    order:2;
    width:100%;
    margin-top:clamp(12px,4vw,20px);
  }
  .single-product.sl-product-mobile-layout .sl-product-summary-card .woocommerce-product-gallery__wrapper{
    padding:clamp(8px,3vw,16px);
  }
  .single-product div.product .summary .product_title{
    font-size:clamp(1.2rem,5vw,1.8rem);
  }
  .single-product div.product .summary .price{
    justify-content:flex-end;
    flex-wrap:wrap;
    gap:6px;
    text-align:right;
  }
  .single-product div.product .summary .price del{
    order:initial;
    font-size:.78rem;
  }
  .single-product .sl-product-summary-card form.cart{
    padding:clamp(12px,4vw,18px);
    border-radius:18px;
    box-shadow:0 8px 18px rgba(15,42,86,.10);
  }
  .single-product .sl-product-summary-card form.cart .quantity{
    min-height:0;
    padding:4px;
  }
  .single-product .sl-product-summary-card form.cart .quantity .minus,
  .single-product .sl-product-summary-card form.cart .quantity .plus{
    flex:0 0 48px;
    height:44px;
    border-radius:12px;
  }
  .single-product .sl-product-summary-card form.cart .quantity .qty{
    min-width:70px;
    font-size:1.1rem;
    margin:0 6px;
  }
  .single-product .sl-product-summary-card form.cart .button:not(.is-form){
    font-size:1.05rem;
    min-height:54px;
  }
  .single-product .sl-product-summary-card form.cart .sl-buy-now{
    order:3;
  }
  .single-product .sl-product-highlights{
    grid-template-columns:1fr;
    padding:clamp(14px,6vw,22px);
  }
  .single-product .sl-product-highlights__item{
    justify-content:flex-start;
    text-align:right;
  }
  .single-product .sl-product-cost-card{
    text-align:right;
  }
  .single-product .sl-product-shipping__grid{
    grid-template-columns:1fr;
  }
  .single-product .yith-wcwl-add-to-wishlist{width:100%;}
  .single-product .yith-wcwl-add-to-wishlist a,
  .single-product .yith-wcwl-add-to-wishlist .yith-wcwl-wishlistaddedbrowse a,
  .single-product .yith-wcwl-add-to-wishlist .yith-wcwl-wishlistexistsbrowse a{
    width:100%;
    justify-content:center;
  }
  .single-product .woocommerce-tabs{
    padding-inline:clamp(10px,6vw,22px);
  }
  .single-product .woocommerce-tabs .wc-tabs{
    overflow-x:auto;
    padding-bottom:6px;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }
  .single-product .woocommerce-tabs .wc-tabs::-webkit-scrollbar{display:none;}
  .single-product .woocommerce-tabs .wc-tabs li{
    flex:0 0 auto;
  }
  .single-product .woocommerce-tabs .panel{padding-top:12px;}
  .single-product .related.product-section{
    padding-inline:0;
  }
  .single-product .related .related__inner{
    padding:14px;
  }
  .single-product .shopline-carousel__head{
    flex-direction:column;
    align-items:center;
    text-align:center;
  }
  .single-product .related .sl-slider__nav{
    justify-content:center;
  }
  .single-product .related .product-section-title{text-align:center;}
  .single-product .product-footer .container{
    padding:clamp(16px,6vw,24px);
    border-radius:20px;
  }
  .single-product .product_meta{
    grid-template-columns:1fr;
  }

  .single-product .product-gallery .woocommerce-breadcrumb,
  .single-product .images .woocommerce-breadcrumb{
    position:static;
    transform:none;
    margin:0 0 10px;
    padding:0;
    max-width:100%;
    width:100%;
    white-space:normal;
    overflow-wrap:anywhere;
    text-align:right;
  }
}

@media (max-width:460px){
  .single-product .sl-product-summary-card form.cart .quantity{
    flex-wrap:nowrap;
    row-gap:0;
    padding:8px;
  }
  .single-product .sl-product-summary-card form.cart .quantity .minus,
  .single-product .sl-product-summary-card form.cart .quantity .plus{
    flex:0 0 44px;
    min-width:44px;
    height:44px;
    min-height:44px;
  }
  .single-product .sl-product-summary-card form.cart .quantity .qty{
    order:2;
    flex:0 1 74px;
    width:74px;
    min-width:66px;
    max-width:38%;
    margin:0 6px;
    height:44px;
    border-radius:10px;
    background:#f2f4fb;
  }
}

/* Variations: button-style selectors with WooCommerce select kept hidden for logic/submission. */
.single-product .variations .sl-variation-select-hidden{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:0!important;
  padding:0!important;
  opacity:0!important;
  pointer-events:none!important;
  border:0!important;
}
.single-product .variations{
  width:100%;
  border-collapse:separate;
  border-spacing:0 8px;
  margin:0;
}
.single-product .variations tr.sl-variation-row .label,
.single-product .variations tr.sl-variation-row td.value{
  background:transparent;
  border:0;
}
.single-product .variations tr.sl-variation-row .label{
  padding:0 0 0 8px;
  min-width:54px;
  text-align:right;
  vertical-align:middle;
  font-weight:700;
  color:#617797;
  font-size:12px;
  white-space:nowrap;
  letter-spacing:.2px;
}
.single-product .variations tr.sl-variation-row td.value{
  border-inline-start:0;
  border-radius:0;
  padding:0;
}
.single-product .variations tr.sl-variation-row.sl-variation-row--single{
  display:none;
}
.single-product .variations .sl-variation-buttons{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(72px,1fr));
  gap:6px;
  align-items:stretch;
  margin-top:0;
  padding:7px;
  border:1px solid #dfe6f4;
  border-radius:14px;
  background:#f5f8ff;
}
.single-product .variations .sl-variation-buttons.is-one-option{
  grid-template-columns:minmax(72px,160px);
}
.single-product .variations .sl-variation-buttons.is-two-options{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.single-product .variations .sl-variation-buttons.is-three-options{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.single-product .variations .sl-variation-btn{
  border:1px solid #c8d4ea;
  background:#fff;
  color:#143055;
  border-radius:11px;
  min-width:0;
  width:100%;
  min-height:40px;
  padding:8px 8px;
  line-height:1.15;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
  transition:all .2s ease;
  box-shadow:0 1px 0 rgba(255,255,255,.9) inset;
}
.single-product .variations .sl-variation-btn:hover{
  border-color:#2b5f9f;
  color:#113a73;
  background:#f1f6ff;
}
.single-product .variations .sl-variation-btn:focus-visible{
  outline:2px solid rgba(17,58,115,.28);
  outline-offset:2px;
}
.single-product .variations .sl-variation-btn.is-active{
  background:#123d79;
  border-color:#123d79;
  color:#fff;
  box-shadow:0 8px 18px rgba(17,58,115,.28);
}
.single-product .variations .sl-variation-btn[disabled]{
  opacity:.38;
  cursor:not-allowed;
  filter:grayscale(25%);
}
.single-product .variations .reset_variations{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  margin-top:8px;
  margin-inline-start:0;
  padding:4px 11px;
  border:1px solid #d0dbef;
  border-radius:999px;
  background:#fff;
  color:#1b4a84;
  font-size:12px;
  font-weight:600;
  text-decoration:none;
}
.single-product .variations .reset_variations:hover{
  background:#edf3ff;
}
.single-product .variations .reset_variations[style*="hidden"]{
  display:none!important;
}
.single-product .product-short-description{
  color:#465876;
  line-height:1.75;
}
/* Keep a single source of truth for price/description:
   we already mirror selected variation data into the main summary blocks. */
.single-product .single_variation_wrap .woocommerce-variation-price,
.single-product .single_variation_wrap .woocommerce-variation-description{
  display:none!important;
}
@media (max-width:560px){
  .single-product .variations tr.sl-variation-row .label{
    min-width:48px;
    padding:0 0 0 6px;
    font-size:11px;
  }
  .single-product .variations .sl-variation-buttons{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:5px;
    padding:6px;
  }
  .single-product .variations .sl-variation-btn{
    min-height:38px;
    padding:7px 6px;
    font-size:11px;
  }
}
