/* Tehberi Smart Merchandising 2.1.0 — Native Layout Engine
   Native Product V4/V4.1 remains the structure owner. This layer only enhances
   surfaces, transitions and smart recommendation rails. */

body.tb-storefront #product-product.tbm-experience-active{
  --tbm-accent:#0757ff;
  --tbm-accent-rgb:7,87,255;
  --tbm-ink:#121a2a;
  --tbm-muted:#6f7d91;
  --tbm-line:#e6ebf2;
  --tbm-soft:#f6f8fb;
  --tbm-soft-blue:#eef4ff;
  --tbm-panel:#fff;
  --tbm-radius:20px;
  --tbm-radius-sm:12px;
  --tbm-shadow:0 20px 60px rgba(24,39,64,.08);
  --tbm-shadow-hover:0 26px 70px rgba(24,39,64,.13);
  --tbm-ease:cubic-bezier(.2,.78,.22,1);
  --tbm-duration:360ms;
  --tbm-fast:180ms;
  color:var(--tbm-ink);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-preset-editorial{
  --tbm-soft:#fbfbfc;
  --tbm-soft-blue:#f7f9fc;
  --tbm-radius:8px;
  --tbm-radius-sm:6px;
  --tbm-shadow:0 1px 0 rgba(21,35,56,.06);
  --tbm-shadow-hover:0 8px 24px rgba(21,35,56,.07);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-preset-gallery{
  --tbm-soft:#f1f5fa;
  --tbm-soft-blue:#eaf2ff;
  --tbm-radius:26px;
  --tbm-radius-sm:16px;
  --tbm-shadow:0 28px 80px rgba(18,35,62,.11);
  --tbm-shadow-hover:0 32px 90px rgba(18,35,62,.17);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-preset-quiet{
  --tbm-soft:#fff;
  --tbm-soft-blue:#f5f8ff;
  --tbm-radius:14px;
  --tbm-radius-sm:9px;
  --tbm-shadow:none;
  --tbm-shadow-hover:0 10px 32px rgba(21,35,56,.07);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-motion-soft{
  --tbm-duration:240ms;
  --tbm-fast:150ms;
}

body.tb-storefront #product-product.tbm-experience-active.tbm-motion-off{
  --tbm-duration:0ms;
  --tbm-fast:0ms;
}

/* ---------- Product hero / first impression ---------- */
body.tb-storefront #product-product.tbm-experience-active .tb-v4-product-hero{
  position:relative;
  isolation:isolate;
  overflow:visible;
  padding:clamp(22px,2.7vw,38px);
  margin-top:8px;
  border:1px solid var(--tbm-line);
  border-radius:var(--tbm-radius);
  background:
    radial-gradient(circle at 14% 8%,rgba(var(--tbm-accent-rgb),.055),transparent 34%),
    linear-gradient(180deg,#fff 0%,#fbfcfe 100%);
  box-shadow:var(--tbm-shadow);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-preset-editorial .tb-v4-product-hero{
  padding-right:0;
  padding-left:0;
  border-right:0;
  border-left:0;
  background:#fff;
  box-shadow:none;
}

body.tb-storefront #product-product.tbm-experience-active.tbm-preset-gallery .tb-v4-product-hero{
  background:
    radial-gradient(circle at 18% 12%,rgba(var(--tbm-accent-rgb),.085),transparent 38%),
    linear-gradient(135deg,#f9fbff,#f4f7fb 62%,#fff);
}

body.tb-storefront #product-product.tbm-experience-active .tb-v4-product-heading{
  position:relative;
  z-index:3;
}

body.tb-storefront #product-product.tbm-experience-active .tb-v4-product-heading h1{
  max-width:20ch;
  color:var(--tbm-ink);
  font-size:clamp(29px,2.55vw,40px);
  font-weight:720;
  line-height:1.12;
  letter-spacing:-.045em;
  text-wrap:balance;
}

body.tb-storefront #product-product.tbm-experience-active.tbm-preset-editorial .tb-v4-product-heading h1{
  max-width:18ch;
  font-size:clamp(32px,3vw,46px);
  font-weight:640;
  letter-spacing:-.05em;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-brand{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:6px 12px;
  border:1px solid #dce7ff;
  border-radius:999px;
  background:#f2f6ff;
  color:var(--tbm-accent);
  font-weight:680;
  transition:transform var(--tbm-fast) var(--tbm-ease),background-color var(--tbm-fast) ease,border-color var(--tbm-fast) ease;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-brand:hover{
  border-color:#c7d9ff;
  background:#eaf1ff;
  transform:translateY(-1px);
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-meta{
  display:flex;
  flex-wrap:wrap;
  gap:7px 12px;
  margin-top:12px;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-meta>div{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:28px;
  padding:4px 8px;
  border-radius:8px;
  background:rgba(247,249,252,.86);
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-meta dt,
body.tb-storefront #product-product.tbm-experience-active .tb-product-meta dd{
  margin:0;
  font-size:11px;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-meta dt{color:#8a96a7;font-weight:500}
body.tb-storefront #product-product.tbm-experience-active .tb-product-meta dd{color:#314158;font-weight:650}
body.tb-storefront #product-product.tbm-experience-active .tb-product-meta dd.is-available{color:#13805b}

body.tb-storefront #product-product.tbm-experience-active .tb-product-quick-actions{
  gap:7px;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-quick-actions .btn{
  width:42px;
  height:42px;
  min-height:42px;
  border:1px solid #e5eaf1;
  border-radius:12px;
  background:rgba(255,255,255,.9);
  box-shadow:0 5px 16px rgba(25,40,65,.035);
  color:#1e2b3d;
  transition:transform var(--tbm-fast) var(--tbm-ease),border-color var(--tbm-fast) ease,color var(--tbm-fast) ease,box-shadow var(--tbm-fast) ease;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-quick-actions .btn:hover{
  border-color:#cddcff;
  box-shadow:0 8px 20px rgba(var(--tbm-accent-rgb),.09);
  color:var(--tbm-accent);
  transform:translateY(-2px);
}

/* ---------- Gallery ---------- */
body.tb-storefront #product-product.tbm-experience-active .tb-product-gallery__stage{
  position:relative;
  overflow:hidden;
  border:1px solid #e7ecf3!important;
  border-radius:calc(var(--tbm-radius) - 2px);
  background:
    radial-gradient(circle at 50% 45%,#fff 0%,#fff 48%,#f6f8fb 100%);
  box-shadow:0 10px 34px rgba(24,39,64,.045);
  transition:transform var(--tbm-duration) var(--tbm-ease),box-shadow var(--tbm-duration) ease,border-color var(--tbm-duration) ease;
}

body.tb-storefront #product-product.tbm-experience-active.tbm-gallery-depth .tb-product-gallery__stage{
  transform:perspective(1200px) rotateX(calc(var(--tbm-pointer-y,0) * -1.4deg)) rotateY(calc(var(--tbm-pointer-x,0) * 1.4deg));
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-gallery__stage:hover{
  border-color:#dbe4f0!important;
  box-shadow:0 18px 44px rgba(24,39,64,.085);
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-gallery__stage [data-tb-gallery-main]{
  transition:transform calc(var(--tbm-duration) + 90ms) var(--tbm-ease),filter var(--tbm-duration) ease;
}

body.tb-storefront #product-product.tbm-experience-active.tbm-gallery-depth .tb-product-gallery__stage:hover [data-tb-gallery-main]{
  transform:scale(1.018);
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-gallery__zoom{
  right:16px;
  bottom:16px;
  width:48px;
  height:48px;
  border:1px solid #e3e9f1;
  border-radius:50%;
  background:rgba(255,255,255,.94);
  box-shadow:0 8px 24px rgba(26,40,63,.09);
  transition:transform var(--tbm-fast) var(--tbm-ease),box-shadow var(--tbm-fast) ease,color var(--tbm-fast) ease;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-gallery__stage:hover .tb-product-gallery__zoom{
  color:var(--tbm-accent);
  box-shadow:0 11px 30px rgba(var(--tbm-accent-rgb),.14);
  transform:scale(1.06);
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-gallery__thumb{
  border:1px solid #e4eaf2;
  background:#fff;
  transition:transform var(--tbm-fast) var(--tbm-ease),border-color var(--tbm-fast) ease,box-shadow var(--tbm-fast) ease;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-gallery__thumb:hover{
  transform:translateY(-2px);
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-gallery__thumb.is-active{
  border-color:var(--tbm-accent);
  box-shadow:0 0 0 3px rgba(var(--tbm-accent-rgb),.10);
}

body.tb-storefront #product-product.tbm-experience-active .tb-v4-rail-arrow{
  border:1px solid #e5eaf1;
  background:#fff;
  color:#607088;
  transition:transform var(--tbm-fast) var(--tbm-ease),color var(--tbm-fast) ease,border-color var(--tbm-fast) ease;
}

body.tb-storefront #product-product.tbm-experience-active .tb-v4-rail-arrow:hover{
  border-color:#cbdcff;
  color:var(--tbm-accent);
  transform:translateY(-1px);
}

/* ---------- Offer / purchase area ---------- */
body.tb-storefront #product-product.tbm-experience-active .tb-product-summary{
  position:relative;
  z-index:2;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-offer{
  padding:clamp(18px,2vw,26px);
  border:1px solid #e4eaf2;
  border-radius:calc(var(--tbm-radius) - 2px);
  background:rgba(255,255,255,.92);
  box-shadow:0 16px 46px rgba(24,39,64,.065);
  backdrop-filter:blur(10px);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-preset-editorial .tb-product-offer{
  padding:22px 0 0;
  border-width:1px 0 0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-price{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:8px 12px;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-price__current{
  color:#101827;
  font-size:clamp(31px,3vw,43px);
  font-weight:780;
  line-height:1;
  letter-spacing:-.045em;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-price__tax{
  flex-basis:100%;
  color:#8a96a6;
  font-size:11px;
}

body.tb-storefront #product-product.tbm-experience-active .tb-pickup-note{
  display:grid;
  gap:4px;
  padding:14px 15px;
  margin:18px 0;
  border:1px solid #dfe8fb;
  border-radius:12px;
  background:linear-gradient(135deg,#f2f6ff,#f8faff);
}

body.tb-storefront #product-product.tbm-experience-active .tb-pickup-note strong{
  color:var(--tbm-accent);
  font-size:12px;
}

body.tb-storefront #product-product.tbm-experience-active .tb-pickup-note span{
  color:#52627a;
  font-size:11.5px;
}

body.tb-storefront #product-product.tbm-experience-active .tb-purchase-actions{
  gap:10px;
}

body.tb-storefront #product-product.tbm-experience-active #button-cart{
  min-height:54px;
  border:0;
  border-radius:12px;
  background:linear-gradient(135deg,#0757ff,#176aff);
  box-shadow:0 12px 28px rgba(var(--tbm-accent-rgb),.22);
  font-weight:720;
  letter-spacing:-.01em;
  transition:transform var(--tbm-fast) var(--tbm-ease),box-shadow var(--tbm-fast) ease,filter var(--tbm-fast) ease;
}

body.tb-storefront #product-product.tbm-experience-active #button-cart:hover:not(:disabled){
  box-shadow:0 16px 34px rgba(var(--tbm-accent-rgb),.29);
  filter:saturate(1.06);
  transform:translateY(-2px);
}

body.tb-storefront #product-product.tbm-experience-active #button-cart:active:not(:disabled){
  transform:translateY(0) scale(.992);
}

body.tb-storefront #product-product.tbm-experience-active .tb-quantity-control{
  border:1px solid #e3e9f1;
  border-radius:12px;
  background:#f8f9fb;
  overflow:hidden;
}

body.tb-storefront #product-product.tbm-experience-active .tb-quantity-button{
  transition:background-color var(--tbm-fast) ease,color var(--tbm-fast) ease,transform var(--tbm-fast) ease;
}

body.tb-storefront #product-product.tbm-experience-active .tb-quantity-button:hover{
  background:#edf3ff;
  color:var(--tbm-accent);
}

body.tb-storefront #product-product.tbm-experience-active .tb-key-specs{
  padding:18px 4px 0;
}

body.tb-storefront #product-product.tbm-experience-active .tb-key-specs h2{
  margin-bottom:10px;
  font-size:18px;
  font-weight:700;
  letter-spacing:-.02em;
}

body.tb-storefront #product-product.tbm-experience-active .tb-key-specs dl>div{
  padding:9px 0;
  border-bottom:1px solid #edf0f4;
}

/* ---------- Trust / services ---------- */
body.tb-storefront #product-product.tbm-experience-active .tb-product-services{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  padding:0;
  margin:clamp(28px,3.5vw,46px) 0;
  border:0;
  background:transparent;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-service{
  min-width:0;
  padding:16px;
  border:1px solid #e7ebf1;
  border-radius:14px;
  background:#fff;
  box-shadow:0 6px 22px rgba(24,39,64,.035);
  transition:transform var(--tbm-fast) var(--tbm-ease),border-color var(--tbm-fast) ease,box-shadow var(--tbm-fast) ease,background-color var(--tbm-fast) ease;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-service:hover{
  border-color:#d8e3f5;
  background:#fbfdff;
  box-shadow:0 12px 28px rgba(24,39,64,.065);
  transform:translateY(-3px);
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-service>i{
  display:grid;
  flex:0 0 38px;
  width:38px;
  height:38px;
  place-items:center;
  border-radius:11px;
  background:#eef4ff;
  color:var(--tbm-accent);
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-service strong{
  color:#1b2638;
  font-size:12.5px;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-service small{
  color:#7a8798;
  font-size:11px;
  line-height:1.45;
}

/* ---------- Details navigation / story ---------- */
body.tb-storefront #product-product.tbm-experience-active .tb-product-details-nav{
  position:sticky;
  z-index:20;
  top:8px;
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  margin:0 0 26px;
  padding:7px;
  border:1px solid rgba(222,229,238,.9);
  border-radius:14px;
  background:rgba(255,255,255,.91);
  box-shadow:0 10px 32px rgba(24,39,64,.075);
  backdrop-filter:blur(16px) saturate(1.2);
  scrollbar-width:none;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-details-nav::-webkit-scrollbar{display:none}

body.tb-storefront #product-product.tbm-experience-active .tb-product-details-nav a{
  position:relative;
  flex:0 0 auto;
  min-height:42px;
  padding:10px 15px;
  border:0;
  border-radius:9px;
  color:#65748a;
  font-size:12.5px;
  font-weight:620;
  transition:background-color var(--tbm-fast) ease,color var(--tbm-fast) ease,transform var(--tbm-fast) var(--tbm-ease);
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-details-nav a:hover{
  background:#f5f8fe;
  color:#31415a;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-details-nav a.is-active,
body.tb-storefront #product-product.tbm-experience-active .tb-product-details-nav a[aria-current=true]{
  background:#edf3ff;
  color:var(--tbm-accent);
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-details{
  display:grid;
  gap:0;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-detail-section{
  scroll-margin-top:88px;
  padding:clamp(32px,4vw,56px) 0;
  border-top:1px solid #e8edf3;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-detail-section:first-child{border-top:0}

body.tb-storefront #product-product.tbm-experience-active .tb-product-detail-section>h2{
  margin:0 0 24px;
  color:#151f2f;
  font-size:clamp(27px,2.7vw,38px);
  font-weight:700;
  line-height:1.12;
  letter-spacing:-.04em;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-description{
  max-width:960px;
  color:#536176;
  font-size:15px;
  line-height:1.78;
}

body.tb-storefront #product-product.tbm-experience-active .tb-attribute-groups{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

body.tb-storefront #product-product.tbm-experience-active .tb-attribute-group.tb-v4-facet{
  padding:0 18px;
  border:1px solid #e4eaf2;
  border-radius:14px;
  background:#fff;
  box-shadow:0 5px 18px rgba(24,39,64,.025);
  transition:border-color var(--tbm-fast) ease,box-shadow var(--tbm-fast) ease,transform var(--tbm-fast) var(--tbm-ease);
}

body.tb-storefront #product-product.tbm-experience-active .tb-attribute-group.tb-v4-facet:hover{
  border-color:#d8e2ef;
  box-shadow:0 10px 26px rgba(24,39,64,.05);
}

body.tb-storefront #product-product.tbm-experience-active .tb-attribute-group summary{
  min-height:62px;
  color:#223047;
  font-size:15px;
  font-weight:680;
}

body.tb-storefront #product-product.tbm-experience-active .tb-review-form{
  max-width:760px;
  padding:clamp(20px,2.4vw,30px);
  border:1px solid #e4eaf2;
  border-radius:16px;
  background:linear-gradient(180deg,#fafbfc,#f6f8fb);
}

body.tb-storefront #product-product.tbm-experience-active .tb-review-form .form-control{
  border-color:#dfe6ef;
  border-radius:10px;
  background:#fff;
  box-shadow:none;
  transition:border-color var(--tbm-fast) ease,box-shadow var(--tbm-fast) ease;
}

body.tb-storefront #product-product.tbm-experience-active .tb-review-form .form-control:focus{
  border-color:#aac6ff;
  box-shadow:0 0 0 3px rgba(var(--tbm-accent-rgb),.08);
}

/* ---------- Native smart merchandising becomes a designed product story ---------- */
body.tb-storefront #product-product.tbm-experience-active .tbm-merchandising-native{
  margin:clamp(38px,5vw,72px) 0;
}

body.tb-storefront #product-product.tbm-experience-active .tbm-merchandising-native .tbm-native-block{
  position:relative;
  overflow:hidden;
  padding:clamp(22px,2.6vw,32px);
  margin:0 0 clamp(34px,4vw,52px);
  border:1px solid #e4eaf2;
  border-radius:var(--tbm-radius);
  background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);
  box-shadow:0 15px 44px rgba(24,39,64,.05);
}

body.tb-storefront #product-product.tbm-experience-active .tbm-native-block--accessories{
  border-color:#dce7fb;
  background:
    radial-gradient(circle at 96% 0,rgba(var(--tbm-accent-rgb),.105),transparent 31%),
    linear-gradient(145deg,#f7faff,#fff 56%);
}

body.tb-storefront #product-product.tbm-experience-active .tbm-native-block--similar{
  background:linear-gradient(180deg,#fff,#fafbfd);
}

body.tb-storefront #product-product.tbm-experience-active .tbm-native-block--brand{
  background:linear-gradient(145deg,#fbfcfe,#fff);
}

body.tb-storefront #product-product.tbm-experience-active .tbm-merchandising-native .tbm-native-block>.container{
  width:100%;
  max-width:none;
  padding:0;
}

body.tb-storefront #product-product.tbm-experience-active .tbm-merchandising-native .tb-section-heading{
  align-items:flex-end;
  margin-bottom:22px;
}

body.tb-storefront #product-product.tbm-experience-active .tbm-native-kicker{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:4px 9px;
  margin:0 0 8px;
  border-radius:999px;
  background:#edf3ff;
  color:var(--tbm-accent);
  font-size:9.5px;
  font-weight:760;
  letter-spacing:.1em;
  text-transform:uppercase;
}

body.tb-storefront #product-product.tbm-experience-active .tbm-merchandising-native .tb-section-heading h2{
  max-width:28ch;
  margin:0;
  color:#151f2f;
  font-size:clamp(25px,2.45vw,36px);
  font-weight:710;
  line-height:1.13;
  letter-spacing:-.04em;
  text-wrap:balance;
}

body.tb-storefront #product-product.tbm-experience-active .tbm-merchandising-native .tb-rail-controls button{
  width:42px;
  min-height:42px;
  border:1px solid #dfe6ef;
  border-radius:50%;
  background:#fff;
  color:#314056;
  box-shadow:0 4px 14px rgba(24,39,64,.035);
  transition:transform var(--tbm-fast) var(--tbm-ease),color var(--tbm-fast) ease,border-color var(--tbm-fast) ease,box-shadow var(--tbm-fast) ease;
}

body.tb-storefront #product-product.tbm-experience-active .tbm-merchandising-native .tb-rail-controls button:hover:not(:disabled){
  border-color:#bfd1f7;
  color:var(--tbm-accent);
  box-shadow:0 8px 20px rgba(var(--tbm-accent-rgb),.11);
  transform:translateY(-2px);
}

body.tb-storefront #product-product.tbm-experience-active .tbm-native-track{
  scroll-padding-inline:2px;
}

/* Native card markup, premium only inside smart merchandising. */
body.tb-storefront #product-product.tbm-experience-active .tbm-native-track .tb-v2-card{
  height:100%;
  padding:15px;
  border:1px solid #e5eaf1;
  border-radius:16px;
  background:#fff;
  box-shadow:0 6px 20px rgba(24,39,64,.035);
  transition:transform var(--tbm-duration) var(--tbm-ease),box-shadow var(--tbm-duration) ease,border-color var(--tbm-duration) ease;
}

body.tb-storefront #product-product.tbm-experience-active .tbm-native-track .tb-v2-card:hover{
  border-color:#cfdcf0;
  box-shadow:0 19px 44px rgba(24,39,64,.105);
  transform:translateY(-6px);
}

body.tb-storefront #product-product.tbm-experience-active .tbm-native-track .tb-v2-card .image{
  overflow:hidden;
  padding:12px;
  border-radius:12px;
  background:linear-gradient(145deg,#fafbfd,#f4f7fb);
}

body.tb-storefront #product-product.tbm-experience-active .tbm-native-track .tb-v2-card .image img{
  object-fit:contain;
  transition:transform calc(var(--tbm-duration) + 80ms) var(--tbm-ease);
}

body.tb-storefront #product-product.tbm-experience-active .tbm-native-track .tb-v2-card:hover .image img{
  transform:scale(1.035);
}

body.tb-storefront #product-product.tbm-experience-active .tbm-native-track .tb-v2-card .caption h3 a{
  color:#1a2638;
  transition:color var(--tbm-fast) ease;
}

body.tb-storefront #product-product.tbm-experience-active .tbm-native-track .tb-v2-card:hover .caption h3 a{
  color:var(--tbm-accent);
}

body.tb-storefront #product-product.tbm-experience-active .tbm-native-track .tb-product-actions button:first-child{
  border-radius:9px;
  background:linear-gradient(135deg,#0757ff,#176aff);
  box-shadow:0 7px 18px rgba(var(--tbm-accent-rgb),.16);
  transition:transform var(--tbm-fast) var(--tbm-ease),box-shadow var(--tbm-fast) ease;
}

body.tb-storefront #product-product.tbm-experience-active .tbm-native-track .tb-product-actions button:first-child:hover{
  box-shadow:0 10px 24px rgba(var(--tbm-accent-rgb),.24);
  transform:translateY(-1px);
}

/* ---------- Existing native sticky bar, styled instead of duplicated ---------- */
body.tb-storefront #product-product.tbm-experience-active .tb-product-sticky.tbm-native-sticky{
  border:1px solid rgba(220,228,238,.92);
  border-radius:14px;
  background:rgba(255,255,255,.94);
  box-shadow:0 18px 50px rgba(21,35,56,.13);
  backdrop-filter:blur(18px) saturate(1.25);
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-sticky.tbm-native-sticky .btn-primary{
  border:0;
  border-radius:10px;
  background:linear-gradient(135deg,#0757ff,#176aff);
  box-shadow:0 8px 18px rgba(var(--tbm-accent-rgb),.20);
}

/* ---------- Motion ---------- */
body.tb-storefront #product-product.tbm-experience-active.tbm-js-motion:not(.tbm-experience-ready) .tb-v4-product-hero>.tb-product-gallery,
body.tb-storefront #product-product.tbm-experience-active.tbm-js-motion:not(.tbm-experience-ready) .tb-v4-product-heading,
body.tb-storefront #product-product.tbm-experience-active.tbm-js-motion:not(.tbm-experience-ready) .tb-v4-product-hero>.tb-product-summary{
  opacity:0;
}

body.tb-storefront #product-product.tbm-experience-active.tbm-js-motion.tbm-experience-ready .tb-v4-product-hero>.tb-product-gallery,
body.tb-storefront #product-product.tbm-experience-active.tbm-js-motion.tbm-experience-ready .tb-v4-product-heading,
body.tb-storefront #product-product.tbm-experience-active.tbm-js-motion.tbm-experience-ready .tb-v4-product-hero>.tb-product-summary{
  opacity:1;
  transform:none;
  transition:opacity var(--tbm-duration) ease,transform calc(var(--tbm-duration) + 70ms) var(--tbm-ease);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-js-motion:not(.tbm-experience-ready) .tb-v4-product-hero>.tb-product-gallery{transform:translateX(-10px) translateY(5px)}
body.tb-storefront #product-product.tbm-experience-active.tbm-js-motion:not(.tbm-experience-ready) .tb-v4-product-heading{transform:translateY(10px)}
body.tb-storefront #product-product.tbm-experience-active.tbm-js-motion:not(.tbm-experience-ready) .tb-v4-product-hero>.tb-product-summary{transform:translateY(14px)}
body.tb-storefront #product-product.tbm-experience-active.tbm-js-motion.tbm-experience-ready .tb-v4-product-heading{transition-delay:55ms}
body.tb-storefront #product-product.tbm-experience-active.tbm-js-motion.tbm-experience-ready .tb-v4-product-hero>.tb-product-summary{transition-delay:105ms}

body.tb-storefront #product-product.tbm-experience-active .tbm-reveal{
  opacity:0;
  transform:translateY(18px);
}

body.tb-storefront #product-product.tbm-experience-active .tbm-reveal.is-visible{
  opacity:1;
  transform:none;
  transition:opacity var(--tbm-duration) ease,transform calc(var(--tbm-duration) + 80ms) var(--tbm-ease);
  transition-delay:var(--tbm-reveal-delay,0ms);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-motion-soft .tbm-reveal{transform:translateY(8px)}
body.tb-storefront #product-product.tbm-experience-active.tbm-motion-off .tbm-reveal{opacity:1;transform:none}
body.tb-storefront #product-product.tbm-experience-active.tbm-motion-off:not(.tbm-experience-ready) .tb-v4-product-hero>*{opacity:1;transform:none}

/* ---------- Responsive ---------- */
@media(max-width:1199px){
  body.tb-storefront #product-product.tbm-experience-active .tb-v4-product-hero{padding:24px}
  body.tb-storefront #product-product.tbm-experience-active .tb-product-services{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.tb-storefront #product-product.tbm-experience-active .tb-attribute-groups{grid-template-columns:1fr}
}

@media(max-width:991px){
  body.tb-storefront #product-product.tbm-experience-active .tb-v4-product-hero{padding:22px}
  body.tb-storefront #product-product.tbm-experience-active .tb-v4-product-heading h1{max-width:none}
  body.tb-storefront #product-product.tbm-experience-active .tb-product-details-nav{top:6px}
}

@media(max-width:767px){
  body.tb-storefront #product-product.tbm-experience-active{
    --tbm-radius:18px;
    --tbm-radius-sm:11px;
  }

  body.tb-storefront #product-product.tbm-experience-active .breadcrumb{margin-bottom:14px}

  body.tb-storefront #product-product.tbm-experience-active .tb-v4-product-hero{
    padding:14px;
    margin-right:-7px;
    margin-left:-7px;
    border-radius:18px;
    box-shadow:0 10px 34px rgba(24,39,64,.055);
  }

  body.tb-storefront #product-product.tbm-experience-active.tbm-preset-editorial .tb-v4-product-hero{
    margin-right:0;
    margin-left:0;
    padding-right:0;
    padding-left:0;
  }

  body.tb-storefront #product-product.tbm-experience-active .tb-v4-product-heading h1{
    font-size:clamp(24px,7vw,30px);
    line-height:1.18;
  }

  body.tb-storefront #product-product.tbm-experience-active .tb-product-meta{
    gap:5px;
  }

  body.tb-storefront #product-product.tbm-experience-active .tb-product-meta>div{
    padding:3px 6px;
  }

  body.tb-storefront #product-product.tbm-experience-active .tb-product-gallery__stage{
    border-radius:15px;
    box-shadow:0 8px 24px rgba(24,39,64,.04);
  }

  body.tb-storefront #product-product.tbm-experience-active .tb-product-offer{
    padding:17px;
    border-radius:15px;
    box-shadow:0 10px 30px rgba(24,39,64,.055);
  }

  body.tb-storefront #product-product.tbm-experience-active .tb-product-price__current{
    font-size:31px;
  }

  body.tb-storefront #product-product.tbm-experience-active #button-cart{
    min-height:52px;
  }

  body.tb-storefront #product-product.tbm-experience-active .tb-product-services{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:min(80vw,285px);
    grid-template-columns:none;
    gap:10px;
    overflow-x:auto;
    margin:28px -15px;
    padding:0 15px 8px;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
  }

  body.tb-storefront #product-product.tbm-experience-active .tb-product-services::-webkit-scrollbar{display:none}
  body.tb-storefront #product-product.tbm-experience-active .tb-product-service{scroll-snap-align:start}

  body.tb-storefront #product-product.tbm-experience-active .tb-product-details-nav{
    top:4px;
    margin-right:-7px;
    margin-left:-7px;
    padding:6px;
    border-radius:12px;
  }

  body.tb-storefront #product-product.tbm-experience-active .tb-product-details-nav a{
    min-height:40px;
    padding:9px 12px;
    font-size:12px;
  }

  body.tb-storefront #product-product.tbm-experience-active .tb-product-detail-section{
    scroll-margin-top:72px;
    padding:34px 0;
  }

  body.tb-storefront #product-product.tbm-experience-active .tb-product-detail-section>h2{
    margin-bottom:18px;
    font-size:28px;
  }

  body.tb-storefront #product-product.tbm-experience-active .tb-product-description{
    font-size:14px;
    line-height:1.7;
  }

  body.tb-storefront #product-product.tbm-experience-active .tb-attribute-group.tb-v4-facet{
    padding:0 14px;
    border-radius:12px;
  }

  body.tb-storefront #product-product.tbm-experience-active .tbm-merchandising-native{
    margin:34px -7px;
  }

  body.tb-storefront #product-product.tbm-experience-active .tbm-merchandising-native .tbm-native-block{
    padding:18px 14px;
    border-radius:17px;
  }

  body.tb-storefront #product-product.tbm-experience-active .tbm-merchandising-native .tb-section-heading{
    align-items:center;
    gap:10px;
    margin-bottom:16px;
  }

  body.tb-storefront #product-product.tbm-experience-active .tbm-merchandising-native .tb-section-heading h2{
    font-size:24px;
  }

  body.tb-storefront #product-product.tbm-experience-active .tbm-native-track{
    grid-auto-columns:min(82vw,286px);
    gap:14px;
    padding-bottom:10px;
    scrollbar-width:none;
  }

  body.tb-storefront #product-product.tbm-experience-active .tbm-native-track::-webkit-scrollbar{display:none}
  body.tb-storefront #product-product.tbm-experience-active .tbm-merchandising-native .tb-rail-controls{display:none}

  body.tb-storefront #product-product.tbm-experience-active .tbm-native-track .tb-v2-card:hover{transform:none}

  body.tb-storefront #product-product.tbm-experience-active .tb-product-sticky.tbm-native-sticky{
    right:10px;
    bottom:calc(10px + env(safe-area-inset-bottom));
    left:10px;
    border-radius:14px;
  }
}

@media(max-width:430px){
  body.tb-storefront #product-product.tbm-experience-active .tb-v4-product-hero{padding:12px}
  body.tb-storefront #product-product.tbm-experience-active .tb-product-quick-actions .btn{width:40px;height:40px;min-height:40px}
  body.tb-storefront #product-product.tbm-experience-active .tbm-native-track{grid-auto-columns:min(86vw,276px)}
}

@media(prefers-reduced-motion:reduce){
  body.tb-storefront #product-product.tbm-experience-active *,
  body.tb-storefront #product-product.tbm-experience-active *::before,
  body.tb-storefront #product-product.tbm-experience-active *::after{
    scroll-behavior:auto!important;
    animation:none!important;
    transition:none!important;
  }

  body.tb-storefront #product-product.tbm-experience-active .tbm-reveal,
  body.tb-storefront #product-product.tbm-experience-active.tbm-js-motion:not(.tbm-experience-ready) .tb-v4-product-hero>*{
    opacity:1!important;
    transform:none!important;
  }
}

/* ===== Legacy light layer retained for compatibility; 2.0 overrides below ===== */
body.tb-storefront #product-product.tbm-experience-active{
  --tbm-brand:#0757ff;
  --tbm-brand-rgb:7,87,255;
  --tbm-brand-deep:#0647d9;
  --tbm-ink:#121a2a;
  --tbm-muted:#718096;
  --tbm-line:#e6ebf2;
  --tbm-surface:#ffffff;
  --tbm-surface-soft:#f6f8fb;
  --tbm-surface-blue:#eef4ff;
  --tbm-shadow-soft:0 14px 38px rgba(24,39,64,.065);
  --tbm-shadow-hover:0 22px 56px rgba(24,39,64,.11);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-surface-soft .tb-product-detail-section,
body.tb-storefront #product-product.tbm-experience-active.tbm-surface-soft .tbm-merchandising-native .tbm-native-block{
  border-color:#e4eaf2;
  background:linear-gradient(180deg,#fbfcfe 0%,#f6f8fb 100%);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-surface-soft .tb-product-detail-section{
  padding:clamp(22px,2.6vw,34px);
  margin-bottom:18px;
  border:1px solid #e5eaf1;
  border-radius:20px;
  box-shadow:0 10px 28px rgba(24,39,64,.035);
}

body.tb-storefront #product-product.tbm-experience-active .tbm-native-title-row{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

body.tb-storefront #product-product.tbm-experience-active .tbm-native-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:34px;
  min-height:30px;
  padding:0 10px;
  border:1px solid #d9e5ff;
  border-radius:999px;
  background:#eef4ff;
  color:#0757ff;
  font-size:11px;
  font-weight:800;
}

body.tb-storefront #product-product.tbm-experience-active.tbm-preset-immersive{
  --tbm-accent:#0757ff;
  --tbm-accent-rgb:7,87,255;
  --tbm-soft:#f6f8fb;
  --tbm-soft-blue:#eef4ff;
  --tbm-panel:#fff;
  --tbm-ink:#121a2a;
  --tbm-muted:#718096;
  --tbm-line:#e6ebf2;
  --tbm-shadow:0 18px 50px rgba(24,39,64,.075);
  --tbm-shadow-hover:0 26px 68px rgba(24,39,64,.13);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-preset-immersive .tb-v4-product-hero{
  background:
    radial-gradient(circle at 14% 10%,rgba(7,87,255,.075),transparent 34%),
    linear-gradient(180deg,#fff 0%,#f7f9fd 100%);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-nav-pills .tb-product-details-nav{
  gap:8px;
  padding:7px;
  border:1px solid #e1e7ef;
  background:rgba(255,255,255,.94);
  box-shadow:0 10px 30px rgba(24,39,64,.06);
  backdrop-filter:blur(14px) saturate(1.12);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-nav-pills .tb-product-details-nav a{
  min-height:42px;
  padding:9px 14px;
  border:1px solid transparent;
  border-radius:10px;
  background:transparent;
  color:#65748a;
  box-shadow:none;
}

body.tb-storefront #product-product.tbm-experience-active.tbm-nav-pills .tb-product-details-nav a:hover{
  border-color:#e0e8f6;
  background:#f5f8ff;
  color:#2f4058;
}

body.tb-storefront #product-product.tbm-experience-active.tbm-nav-pills .tb-product-details-nav a.is-active,
body.tb-storefront #product-product.tbm-experience-active.tbm-nav-pills .tb-product-details-nav a[aria-current=true]{
  border-color:#d3e0ff;
  background:#edf3ff;
  color:#0757ff;
  box-shadow:inset 0 0 0 1px rgba(7,87,255,.03);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-cta-brand #button-cart,
body.tb-storefront #product-product.tbm-experience-active.tbm-cta-brand .tbm-native-track .tb-product-actions button:first-child,
body.tb-storefront #product-product.tbm-experience-active.tbm-cta-brand .tb-product-sticky.tbm-native-sticky .btn-primary{
  background:linear-gradient(135deg,#0757ff,#176aff);
  box-shadow:0 12px 28px rgba(7,87,255,.22);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-cta-deep #button-cart,
body.tb-storefront #product-product.tbm-experience-active.tbm-cta-deep .tbm-native-track .tb-product-actions button:first-child,
body.tb-storefront #product-product.tbm-experience-active.tbm-cta-deep .tb-product-sticky.tbm-native-sticky .btn-primary{
  background:linear-gradient(135deg,#063fae,#0757ff);
  box-shadow:0 12px 28px rgba(6,63,174,.24);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-rec-stacked .tbm-native-track{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  overflow:visible;
}

body.tb-storefront #product-product.tbm-experience-active.tbm-rec-stacked .tbm-native-track .product-layout,
body.tb-storefront #product-product.tbm-experience-active.tbm-rec-stacked .tbm-native-track .tbm-native-card-item{
  width:auto;
  min-width:0;
  margin:0;
}

body.tb-storefront #product-product.tbm-experience-active.tbm-rec-stacked .tbm-native-track .tb-v2-card{
  min-height:100%;
  border-color:#e3e9f1;
  background:#fff;
  box-shadow:0 8px 24px rgba(24,39,64,.045);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-rec-stacked .tbm-native-track .tb-v2-card .image{
  background:linear-gradient(145deg,#fbfcfe,#f4f7fb);
}

body.tb-storefront #product-product.tbm-experience-active .tbm-merchandising-native .tbm-native-block--accessories{
  border-color:#dce7fb;
  background:
    radial-gradient(circle at 100% 0,rgba(7,87,255,.08),transparent 27%),
    linear-gradient(145deg,#f6f9ff,#fff 58%);
}

body.tb-storefront #product-product.tbm-experience-active .tbm-merchandising-native .tbm-native-block--similar,
body.tb-storefront #product-product.tbm-experience-active .tbm-merchandising-native .tbm-native-block--brand{
  background:linear-gradient(180deg,#fff,#fafbfd);
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-service{
  border-color:#e6ebf2;
  background:#fff;
}

body.tb-storefront #product-product.tbm-experience-active .tb-product-service:hover{
  border-color:#cfdcf0;
  background:#fbfdff;
}

body.tb-storefront #product-product.tbm-experience-active .tb-attribute-group.tb-v4-facet{
  background:#fff;
}

body.tb-storefront #product-product.tbm-experience-active .tb-review-form{
  background:linear-gradient(180deg,#fbfcfe,#f6f8fb);
}

body.tb-storefront #product-product.tbm-experience-active.tbm-mobile-focus .tb-product-offer{
  position:relative;
}

@media(max-width:1199px){
  body.tb-storefront #product-product.tbm-experience-active.tbm-rec-stacked .tbm-native-track{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:767px){
  body.tb-storefront #product-product.tbm-experience-active.tbm-surface-soft .tb-product-detail-section{
    padding:16px;
    border-radius:16px;
    margin-bottom:12px;
  }

  body.tb-storefront #product-product.tbm-experience-active.tbm-mobile-focus .tb-v4-product-hero{
    padding:12px;
    box-shadow:0 8px 26px rgba(24,39,64,.045);
  }

  body.tb-storefront #product-product.tbm-experience-active.tbm-mobile-focus .tb-product-offer{
    padding:15px;
    border-radius:15px;
  }

  body.tb-storefront #product-product.tbm-experience-active.tbm-mobile-focus .tb-product-price__current{
    font-size:32px;
  }

  body.tb-storefront #product-product.tbm-experience-active.tbm-mobile-focus #button-cart{
    min-height:56px;
    border-radius:12px;
    font-size:15px;
  }

  body.tb-storefront #product-product.tbm-experience-active.tbm-nav-pills .tb-product-details-nav{
    margin-right:-7px;
    margin-left:-7px;
    padding:6px;
    gap:6px;
    border-radius:12px;
  }

  body.tb-storefront #product-product.tbm-experience-active.tbm-nav-pills .tb-product-details-nav a{
    min-height:40px;
    padding:8px 12px;
    white-space:nowrap;
    font-size:12px;
  }

  body.tb-storefront #product-product.tbm-experience-active.tbm-rec-stacked .tbm-native-track{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:min(86vw,292px);
    grid-template-columns:none;
    gap:14px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
  }

  body.tb-storefront #product-product.tbm-experience-active.tbm-rec-stacked .tbm-native-track .product-layout{
    scroll-snap-align:start;
  }

  body.tb-storefront #product-product.tbm-experience-active .tbm-native-count{
    min-width:30px;
    min-height:28px;
    font-size:10.5px;
  }
}

/* ======================================================================
   Tehberi Smart Merchandising 2.1.0 — Native Layout Engine
   Admin settings map directly to server-side layout classes.
   No runtime DOM relocation is used for merchandising placement.
   ====================================================================== */

body.tb-storefront #product-product.tbm-layout-engine-v2{
  --tbm-top-stack:0px;
}

/* ---------- Server-side placement ---------- */
body.tb-storefront #product-product.tbm-layout-engine-v2 .tbm-details-slot{
  min-width:0;
}

body.tb-storefront #product-product.tbm-placement-after-description .tb-product-details{
  display:flex;
  flex-direction:column;
  gap:clamp(28px,4vw,52px);
}

body.tb-storefront #product-product.tbm-placement-after-description #tb-product-description{order:10}
body.tb-storefront #product-product.tbm-placement-after-description .tbm-details-slot--after_description{order:20}
body.tb-storefront #product-product.tbm-placement-after-description #tb-product-attributes{order:30}
body.tb-storefront #product-product.tbm-placement-after-description #tb-product-reviews{order:40}

body.tb-storefront #product-product.tbm-placement-after-description .tbm-merchandising-native{
  margin:0;
}

body.tb-storefront #product-product.tbm-placement-beside-description.tbm-has-merchandising .tb-product-details{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);
  gap:28px 30px;
  align-items:start;
}

body.tb-storefront #product-product.tbm-placement-beside-description.tbm-has-merchandising #tb-product-description{
  grid-column:1;
  grid-row:1;
  min-width:0;
}

body.tb-storefront #product-product.tbm-placement-beside-description.tbm-has-merchandising .tbm-details-slot--beside_description{
  grid-column:2;
  grid-row:1;
  min-width:0;
  position:static;
  top:auto;
}

body.tb-storefront #product-product.tbm-placement-beside-description.tbm-has-merchandising #tb-product-attributes,
body.tb-storefront #product-product.tbm-placement-beside-description.tbm-has-merchandising #tb-product-reviews{
  grid-column:1 / -1;
}

body.tb-storefront #product-product.tbm-placement-beside-description .tbm-merchandising-native{
  margin:0;
}

body.tb-storefront #product-product.tbm-placement-beside-description .tbm-native-block{
  margin-bottom:18px;
}

body.tb-storefront #product-product.tbm-placement-beside-description .tbm-native-block:last-child{
  margin-bottom:0;
}

@supports selector(:has(*)){
  body.tb-storefront #product-product.tbm-placement-beside-description .tb-product-details:not(:has(#tb-product-description)){
    grid-template-columns:1fr;
  }
  body.tb-storefront #product-product.tbm-placement-beside-description .tb-product-details:not(:has(#tb-product-description)) .tbm-details-slot--beside_description{
    grid-column:1;
    grid-row:auto;
    position:static;
  }
}

/* ---------- Rail shell: arrows are outside the card plane ---------- */
body.tb-storefront #product-product.tbm-layout-engine-v2 .tbm-rail-shell{
  position:relative;
  min-width:0;
  padding-inline:50px;
  transition:padding .18s ease;
}

body.tb-storefront #product-product.tbm-layout-engine-v2 .tbm-rail-shell:not(.has-overflow),
body.tb-storefront #product-product.tbm-rail-controls-swipe .tbm-rail-shell{
  padding-inline:0;
}

body.tb-storefront #product-product.tbm-layout-engine-v2 .tbm-native-track{
  position:relative;
  z-index:1;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none;
  scroll-snap-type:x proximity;
  overscroll-behavior-x:contain;
  scroll-padding-inline:4px;
}

body.tb-storefront #product-product.tbm-layout-engine-v2 .tbm-native-track::-webkit-scrollbar{
  display:none!important;
  width:0!important;
  height:0!important;
}

body.tb-storefront #product-product.tbm-layout-engine-v2 .tbm-rail-arrow{
  position:absolute;
  z-index:8;
  top:50%;
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  min-height:46px;
  padding:0;
  border:1px solid #dce5f1;
  border-radius:999px;
  background:rgba(255,255,255,.97);
  color:#17273e;
  box-shadow:0 12px 30px rgba(25,42,68,.14);
  backdrop-filter:blur(14px);
  transform:translateY(-50%);
  transition:opacity .16s ease,transform .18s var(--tbm-ease),box-shadow .18s ease,border-color .18s ease,color .18s ease;
}

body.tb-storefront #product-product.tbm-layout-engine-v2 .tbm-rail-arrow--prev{left:0}
body.tb-storefront #product-product.tbm-layout-engine-v2 .tbm-rail-arrow--next{right:0}
body.tb-storefront #product-product.tbm-layout-engine-v2 .tbm-rail-arrow span{font-size:30px;line-height:1;margin-top:-2px}

body.tb-storefront #product-product.tbm-layout-engine-v2 .tbm-rail-arrow:hover:not(:disabled){
  border-color:#bed0ee;
  color:#0757ff;
  box-shadow:0 16px 34px rgba(25,42,68,.18);
  transform:translateY(-50%) scale(1.04);
}

body.tb-storefront #product-product.tbm-layout-engine-v2 .tbm-rail-arrow:disabled{
  opacity:.28;
  box-shadow:none;
  cursor:default;
}

body.tb-storefront #product-product.tbm-rail-controls-swipe .tbm-rail-arrow{
  display:none!important;
}

/* ---------- Reviews: Tehberi premium, not a generic OpenCart form ---------- */
body.tb-storefront #product-product.tbm-review-premium #tb-product-reviews{
  padding:clamp(24px,3.5vw,42px);
  border:1px solid #e2e9f3;
  border-radius:24px;
  background:
    radial-gradient(circle at 96% 0,rgba(7,87,255,.045),transparent 28%),
    linear-gradient(180deg,#fff 0%,#f8faff 100%);
  box-shadow:0 18px 48px rgba(25,42,68,.055);
}

body.tb-storefront #product-product.tbm-review-premium #tb-product-reviews>h2{
  margin-bottom:18px;
}

body.tb-storefront #product-product.tbm-review-premium .tb-review-list{
  margin:0 0 24px;
}

body.tb-storefront #product-product.tbm-review-premium .tb-review-list .table,
body.tb-storefront #product-product.tbm-review-premium .tb-review-list .table-responsive{
  overflow:hidden;
  border:1px solid #e5ebf4;
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 24px rgba(25,42,68,.035);
}

body.tb-storefront #product-product.tbm-review-premium .tb-review-list .table td{
  padding:18px;
  border-color:#edf1f6;
}

body.tb-storefront #product-product.tbm-review-premium .tb-review-form,
body.tb-storefront #product-product.tbm-review-premium #form-review{
  max-width:820px;
  padding:clamp(20px,2.7vw,30px);
  border:1px solid #e2e9f3;
  border-radius:20px;
  background:rgba(255,255,255,.96);
  box-shadow:0 16px 42px rgba(25,42,68,.055);
}

body.tb-storefront #product-product.tbm-review-premium .tb-review-form h3{
  margin:0 0 22px;
  color:#14213a;
  font-size:clamp(22px,2vw,28px);
  letter-spacing:-.025em;
}

body.tb-storefront #product-product.tbm-review-premium .tb-review-form .form-control{
  min-height:48px;
  border:1px solid #dbe4ef;
  border-radius:13px;
  background:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}

body.tb-storefront #product-product.tbm-review-premium .tb-review-form textarea.form-control{
  min-height:150px;
  resize:vertical;
}

body.tb-storefront #product-product.tbm-review-premium .tb-review-form .form-control:focus{
  border-color:#9ebcff;
  outline:0;
  box-shadow:0 0 0 4px rgba(7,87,255,.08);
}

body.tb-storefront #product-product.tbm-review-premium .tb-review-rating{
  gap:8px;
  padding:8px 0 2px;
}

body.tb-storefront #product-product.tbm-review-premium .tb-review-rating label{
  width:46px;
  height:46px;
  border:1px solid #dfe7f1;
  background:#fff;
  color:#9aa9bc;
  box-shadow:0 5px 14px rgba(25,42,68,.035);
  transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease;
}

body.tb-storefront #product-product.tbm-review-premium .tb-review-rating label>span[aria-hidden="true"]{
  font-size:0;
}

body.tb-storefront #product-product.tbm-review-premium .tb-review-rating label>span[aria-hidden="true"]::before{
  content:'★';
  font-size:20px;
  line-height:1;
}

body.tb-storefront #product-product.tbm-review-premium .tb-review-rating label:hover,
body.tb-storefront #product-product.tbm-review-premium .tb-review-rating label.is-selected,
body.tb-storefront #product-product.tbm-review-premium .tb-review-rating label:has(input:checked){
  border-color:#a9c2ff;
  background:#eef4ff;
  color:#0757ff;
  box-shadow:0 8px 18px rgba(7,87,255,.09);
  transform:translateY(-1px);
}

body.tb-storefront #product-product.tbm-review-premium #button-review{
  min-height:48px;
  padding:0 22px;
  border:0;
  border-radius:12px;
  background:linear-gradient(135deg,#0757ff,#176aff);
  box-shadow:0 10px 24px rgba(7,87,255,.18);
  font-weight:700;
}

/* ---------- Sticky geometry: nav follows the actually visible top stack ---------- */
body.tb-storefront #product-product.tbm-sticky-stack .tb-product-details-nav{
  top:calc(var(--tbm-top-stack,0px) + 6px)!important;
  scroll-margin-top:calc(var(--tbm-top-stack,0px) + 74px);
}

body.tb-storefront #product-product.tbm-sticky-stack .tb-product-detail-section{
  scroll-margin-top:calc(var(--tbm-top-stack,0px) + 86px)!important;
}

body.tb-storefront #product-product.tbm-sticky-stack .tb-product-sticky.tbm-native-sticky{
  z-index:1045;
}

@media(max-width:1100px){
  body.tb-storefront #product-product.tbm-placement-beside-description.tbm-has-merchandising .tb-product-details{
    grid-template-columns:1fr;
  }
  body.tb-storefront #product-product.tbm-placement-beside-description #tb-product-description,
  body.tb-storefront #product-product.tbm-placement-beside-description .tbm-details-slot--beside_description,
  body.tb-storefront #product-product.tbm-placement-beside-description.tbm-has-merchandising #tb-product-attributes,
  body.tb-storefront #product-product.tbm-placement-beside-description.tbm-has-merchandising #tb-product-reviews{
    grid-column:1;
    grid-row:auto;
  }
  body.tb-storefront #product-product.tbm-placement-beside-description.tbm-has-merchandising .tbm-details-slot--beside_description{
    position:static;
  }
}

@media(max-width:767px){
  body.tb-storefront #product-product.tbm-layout-engine-v2 .tbm-rail-shell{
    padding-inline:42px;
  }
  body.tb-storefront #product-product.tbm-layout-engine-v2 .tbm-rail-arrow{
    width:40px;
    height:40px;
    min-height:40px;
  }
  body.tb-storefront #product-product.tbm-layout-engine-v2 .tbm-rail-arrow span{
    font-size:26px;
  }
  body.tb-storefront #product-product.tbm-review-premium #tb-product-reviews{
    padding:18px 14px;
    border-radius:18px;
  }
  body.tb-storefront #product-product.tbm-review-premium .tb-review-form,
  body.tb-storefront #product-product.tbm-review-premium #form-review{
    padding:18px 14px;
    border-radius:16px;
  }
}

/* ======================================================================
   Tehberi Smart Merchandising 2.1.0 — Full Width Product Experience
   One light-premium system for the complete PDP. The product page uses the
   visible browser width; only readable text lines keep a sensible max width.
   ====================================================================== */

/* ---------- Full visible-width page ---------- */
body.tb-storefront #product-product.tbm-page-fullwidth.container{
  width:100%!important;
  max-width:none!important;
  padding-left:clamp(14px,2.6vw,52px)!important;
  padding-right:clamp(14px,2.6vw,52px)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth>.breadcrumb{
  width:100%;
  max-width:none;
  margin-left:0;
  margin-right:0;
}

body.tb-storefront #product-product.tbm-page-fullwidth>.tb-product-layout{
  width:100%;
  max-width:none;
  margin-left:0;
  margin-right:0;
}

body.tb-storefront #product-product.tbm-page-fullwidth>.tb-product-layout>#content,
body.tb-storefront #product-product.tbm-page-fullwidth>.tb-product-layout>main#content{
  float:none!important;
  width:100%!important;
  max-width:none!important;
  padding-left:0!important;
  padding-right:0!important;
}

/* ---------- First screen / hero ---------- */
body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-product-hero{
  width:100%;
  max-width:none;
  grid-template-columns:minmax(0,1.32fr) minmax(420px,.82fr)!important;
  gap:0 clamp(28px,3.2vw,64px)!important;
  padding:clamp(22px,2.4vw,40px)!important;
  border:1px solid #e5ebf3;
  border-radius:26px;
  background:
    radial-gradient(circle at 14% 8%,rgba(7,87,255,.05),transparent 28%),
    linear-gradient(180deg,#fff 0%,#fbfcff 100%);
  box-shadow:0 20px 64px rgba(20,42,72,.07);
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-product-heading{
  max-width:760px;
  padding-bottom:18px;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-product-heading h1{
  max-width:24ch;
  margin:14px 0 10px;
  font-size:clamp(30px,2.25vw,44px);
  line-height:1.08;
  letter-spacing:-.045em;
  text-wrap:balance;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-meta{
  gap:6px 10px;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-meta>div{
  padding:5px 9px;
  border:1px solid #edf1f6;
  border-radius:10px;
  background:#f8fafc;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-product-hero>.tb-product-gallery{
  top:calc(var(--tbm-top-stack,0px) + 18px)!important;
  grid-template-columns:82px minmax(0,1fr)!important;
  gap:18px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-product-hero .tb-product-gallery__stage{
  width:100%;
  max-width:min(720px,100%)!important;
  min-height:clamp(430px,48vw,700px);
  justify-self:center;
  padding:clamp(12px,1.4vw,20px)!important;
  border:1px solid #e8edf4!important;
  border-radius:22px!important;
  background:linear-gradient(145deg,#fff,#f7f9fc)!important;
  box-shadow:0 14px 42px rgba(22,42,69,.055)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-product-hero .tb-product-gallery__stage img{
  width:100%;
  height:100%;
  object-fit:contain;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-thumb-rail{
  max-height:clamp(430px,48vw,700px)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-thumb-rail .tb-product-gallery__thumb{
  width:74px;
  height:74px;
}

/* ---------- Offer / purchase ---------- */
body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-offer{
  padding:clamp(20px,2vw,30px)!important;
  border:1px solid #e3eaf4!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,#fff 0%,#f8faff 100%)!important;
  box-shadow:0 16px 46px rgba(23,42,67,.065)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-price__current{
  font-size:clamp(34px,2.8vw,48px)!important;
  font-weight:790!important;
  letter-spacing:-.045em;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-pickup-note{
  margin:16px 0!important;
  border:1px solid #dfe8fa!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#f0f5ff,#f8faff)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth #button-cart{
  min-height:56px!important;
  border-radius:14px!important;
  font-size:16px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-key-specs{
  margin-top:22px!important;
  padding:18px 20px 6px!important;
  border:1px solid #e7edf5;
  border-radius:18px;
  background:#fff;
}

/* ---------- Trust/service strip ---------- */
body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-services{
  width:100%;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:clamp(24px,3vw,40px) 0 18px!important;
  padding:0!important;
  border:0!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-service{
  min-height:88px;
  padding:16px 18px!important;
  border:1px solid #e5ebf3!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#fff,#fbfcfe)!important;
  box-shadow:0 8px 26px rgba(20,41,68,.035)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-service+.tb-product-service{
  border-left:1px solid #e5ebf3!important;
}

/* ---------- Sticky section navigation ---------- */
body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-details-nav{
  width:100%;
  margin:18px 0 24px!important;
  padding:7px!important;
  gap:6px!important;
  border:1px solid rgba(221,229,239,.94)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 12px 36px rgba(20,40,67,.07)!important;
  backdrop-filter:blur(16px) saturate(1.16);
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-details-nav a{
  min-height:42px;
  padding:9px 15px!important;
  border:0!important;
  border-radius:10px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-details-nav a.is-active,
body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-details-nav a[aria-current="true"]{
  background:#edf3ff!important;
  color:#0757ff!important;
}

/* ---------- Product story / description ---------- */
body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-details{
  width:100%;
  max-width:none;
  gap:clamp(20px,2.4vw,34px)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-detail-section{
  width:100%;
  max-width:none;
  padding:clamp(26px,3vw,46px)!important;
  border:1px solid #e5ebf3!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,#fff,#fbfcfe)!important;
  box-shadow:0 14px 44px rgba(22,42,69,.045)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-detail-section>h2{
  margin-bottom:20px!important;
  font-size:clamp(28px,2.45vw,40px)!important;
  letter-spacing:-.04em;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-description{
  width:100%;
  max-width:1120px!important;
  color:#54647a!important;
  font-size:15px!important;
  line-height:1.75!important;
}

/* When smart merchandising is configured beside About, actually use the free
   right-hand page width and keep the rest of the PDP full-width below it. */
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tb-product-details{
  grid-template-columns:minmax(0,1.25fr) minmax(380px,.75fr)!important;
  column-gap:clamp(22px,2.5vw,42px)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising #tb-product-description{
  min-height:100%;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tbm-details-slot--beside_description{
  width:100%;
  position:static!important;
  top:auto!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description .tbm-native-block{
  padding:18px!important;
  border-radius:20px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description .tbm-native-track{
  grid-auto-columns:100%!important;
}

/* ---------- Specifications ---------- */
body.tb-storefront #product-product.tbm-page-fullwidth .tb-attribute-groups{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-attribute-group.tb-v4-facet{
  padding:0 20px!important;
  border:1px solid #e6ecf4!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 6px 20px rgba(22,42,69,.025)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tb-attribute-group summary{
  min-height:58px!important;
  font-size:15px!important;
}

/* ---------- Smart recommendation rails: compact PDP cards ---------- */
body.tb-storefront #product-product.tbm-page-fullwidth .tbm-merchandising-native{
  width:100%;
  max-width:none;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-block{
  padding:clamp(20px,2.2vw,30px)!important;
  border-radius:24px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track{
  gap:16px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-v2-card{
  min-height:0!important;
  padding:14px!important;
  border-radius:18px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-v2-card .image{
  aspect-ratio:1.08;
  min-height:0!important;
  padding:10px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-v2-card .caption h3{
  min-height:2.8em;
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  font-size:14px!important;
  line-height:1.4!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-card-specs>div:nth-child(n+2){
  display:none!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-card-specs{
  min-height:24px;
  margin:8px 0!important;
}

/* Rail controls live in a dedicated shell and stay on the outer edge, above
   the panel background, never below/behind product cards. */
body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-shell{
  position:relative;
  isolation:isolate;
  padding-inline:34px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-shell:not(.has-overflow),
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-rail-controls-swipe .tbm-rail-shell{
  padding-inline:0!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-arrow{
  z-index:20!important;
  width:46px!important;
  height:46px!important;
  top:50%!important;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 14px 34px rgba(19,40,67,.15)!important;
}
body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-arrow--prev{left:6px!important}
body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-arrow--next{right:6px!important}

/* ---------- Reviews: compact premium Tehberi form ---------- */
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #tb-product-reviews{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);
  gap:20px 28px;
  align-items:start;
  padding:clamp(24px,2.6vw,38px)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #tb-product-reviews>h2{
  grid-column:1/-1;
  margin:0!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #review{
  grid-column:1;
  min-width:0;
  padding:18px 20px;
  border:1px solid #e7edf5;
  border-radius:18px;
  background:#fff;
  color:#65758b;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #tb-review-form,
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-form{
  grid-column:2;
  width:100%;
  max-width:none!important;
  padding:20px!important;
  border-radius:18px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-form h3{
  margin-bottom:16px!important;
  font-size:20px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-form .form-group{
  margin-bottom:14px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-form .control-label,
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-form legend{
  margin-bottom:7px!important;
  color:#34445b!important;
  font-size:12px!important;
  font-weight:650!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-form .form-control{
  min-height:44px!important;
  border-radius:12px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-form textarea.form-control{
  min-height:108px!important;
}

/* The generic OpenCart HTML warning is removed server-side in 2.1. This is a
   defensive fallback for old cached HTML. */
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #tb-review-form textarea#input-review + .help-block{
  display:none!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-rating{
  display:grid!important;
  grid-template-columns:auto repeat(5,40px) auto;
  align-items:center;
  justify-content:start;
  gap:7px!important;
  margin:0!important;
  padding:2px 0 4px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-rating legend{
  grid-column:1/-1;
  margin:0 0 4px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-rating label{
  width:40px!important;
  height:40px!important;
  margin:0!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-rating__edge{
  min-width:46px;
  color:#7d8999!important;
  font-size:11px!important;
  white-space:nowrap;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #button-review{
  min-height:44px!important;
  padding:0 20px!important;
  border-radius:12px!important;
}

/* ---------- Sticky bar geometry ---------- */
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-sticky-stack .tb-product-details-nav{
  top:calc(var(--tbm-top-stack,0px) + 4px)!important;
}

/* Compatibility with the old generated sticky bar that may still exist on a
   production installation while caches are being refreshed. */
body.tb-storefront .tbm-pdp-stickybar.tbm-managed-sticky{
  top:var(--tbm-top-stack,0px)!important;
  border-bottom:1px solid #e6ecf4!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 10px 30px rgba(20,40,67,.08)!important;
  backdrop-filter:blur(16px) saturate(1.15);
}

/* ---------- Responsive: 80% mobile traffic ---------- */
@media(max-width:1199px){
  body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-product-hero{
    grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr)!important;
    gap:0 24px!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-product-hero .tb-product-gallery__stage{
    min-height:420px;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth .tb-attribute-groups{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:991px){
  body.tb-storefront #product-product.tbm-page-fullwidth{
    padding-left:18px!important;
    padding-right:18px!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-product-hero{
    grid-template-columns:minmax(0,1fr) minmax(330px,.92fr)!important;
    padding:20px!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tb-product-details{
    grid-template-columns:1fr!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tbm-details-slot--beside_description{
    position:static!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #tb-product-reviews{
    grid-template-columns:1fr;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #tb-review-form,
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-form{
    grid-column:1;
  }
}

@media(max-width:767px){
  body.tb-storefront #product-product.tbm-page-fullwidth.container{
    width:100%!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth .breadcrumb{
    margin-bottom:10px!important;
    padding-inline:2px;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-product-hero{
    display:flex!important;
    flex-direction:column;
    gap:14px!important;
    padding:14px!important;
    border-radius:20px!important;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-product-heading{
    order:1;
    padding:0!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-gallery{
    order:2;
    position:static!important;
    display:flex!important;
    flex-direction:column;
    gap:10px!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-summary{
    order:3;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-product-heading h1{
    max-width:none;
    font-size:clamp(24px,7.5vw,31px)!important;
    line-height:1.14;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-product-hero .tb-product-gallery__stage{
    order:1;
    width:100%;
    max-width:none!important;
    min-height:0!important;
    aspect-ratio:1!important;
    border-radius:16px!important;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-thumb-rail{
    order:2;
    display:block!important;
    width:100%;
    max-height:none!important;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-thumb-rail .tb-v4-rail-arrow{
    display:none!important;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-thumb-rail .tb-product-gallery__thumbs{
    display:flex!important;
    flex-direction:row!important;
    gap:8px!important;
    overflow-x:auto!important;
    padding:2px 0 6px!important;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-thumb-rail .tb-product-gallery__thumbs::-webkit-scrollbar{display:none}
  body.tb-storefront #product-product.tbm-page-fullwidth .tb-v4-thumb-rail .tb-product-gallery__thumbs li{scroll-snap-align:start}

  body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-offer{
    padding:16px!important;
    border-radius:16px!important;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-price__current{
    font-size:32px!important;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-services{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    margin:20px 0 14px!important;
    overflow:visible!important;
    padding:0!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-service{
    min-height:88px;
    padding:12px!important;
    border-radius:14px!important;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-details-nav{
    margin:12px 0 16px!important;
    overflow-x:auto;
    flex-wrap:nowrap!important;
    scrollbar-width:none;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-details-nav::-webkit-scrollbar{display:none}
  body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-details-nav a{white-space:nowrap}

  body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-detail-section{
    padding:20px 16px!important;
    border-radius:18px!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-detail-section>h2{
    font-size:27px!important;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-block{
    padding:16px 12px!important;
    border-radius:18px!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-shell{
    margin-inline:-2px;
    padding-inline:30px!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-arrow{
    width:38px!important;
    height:38px!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-arrow--prev{left:0!important}
  body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-arrow--next{right:0!important}

  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #tb-product-reviews{
    display:block;
    padding:18px 14px!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #review{
    margin:14px 0;
    padding:14px;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #tb-review-form,
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-form{
    padding:16px!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-rating{
    grid-template-columns:auto repeat(5,38px) auto;
    gap:5px!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-rating label{
    width:38px!important;
    height:38px!important;
  }
}

@media(max-width:430px){
  body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-services{
    grid-template-columns:1fr 1fr!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-service strong{font-size:11.5px!important}
  body.tb-storefront #product-product.tbm-page-fullwidth .tb-product-service small{font-size:10.5px!important}

  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-rating{
    grid-template-columns:repeat(5,38px);
  }
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-rating legend,
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-rating__edge{
    grid-column:1/-1;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-rating__edge:last-child{
    display:none;
  }
}


/* ===== 2.1.1: guaranteed beside-description composition ===== */
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tbm-details-slot--beside_description .tbm-merchandising-native{
  display:block;
  margin:0!important;
}
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tbm-details-slot--beside_description .tbm-native-block{
  padding:18px!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,#fff,#f8faff)!important;
  box-shadow:0 16px 42px rgba(22,42,69,.06)!important;
}
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tbm-details-slot--beside_description .tbm-native-track{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  gap:12px!important;
  overflow:visible!important;
  padding:0!important;
}
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tbm-details-slot--beside_description .tbm-rail-arrow{
  display:none!important;
}
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tbm-details-slot--beside_description .tb-v2-card{
  min-height:100%!important;
  padding:12px!important;
  border-radius:16px!important;
}
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tbm-details-slot--beside_description .tb-v2-card .image{
  min-height:132px!important;
  padding:8px!important;
}
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tbm-details-slot--beside_description .tb-v2-card .image img{
  height:128px!important;
  object-fit:contain!important;
}
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tbm-details-slot--beside_description .tb-v2-card .caption h3{
  font-size:13px!important;
  line-height:1.35!important;
  min-height:2.7em;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
@media(max-width:1199px){
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tbm-details-slot--beside_description .tbm-native-track{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:991px){
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tb-product-details{
    grid-template-columns:1fr!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tbm-details-slot--beside_description{
    position:static!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tbm-details-slot--beside_description .tbm-native-track{
    display:flex!important;
    overflow-x:auto!important;
    scroll-snap-type:x proximity;
  }
}

/* ========================================================================
   Tehberi Smart Merchandising 2.3.0 — Carousel + Beside Layout Engine
   Final authority for recommendations, description-side composition and
   compact premium reviews. This section intentionally overrides 2.1 rules.
   ======================================================================== */

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-merchandising-native{
  --tbm-carousel-gap:16px;
  --tbm-carousel-image-height:190px;
  --tbm-card-radius:16px;
  --tbm-beside-width:40%;
  width:100%;
  max-width:none;
}

/* Real carousel: visible-card count is generated by Twig per breakpoint. */
body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track{
  display:grid!important;
  grid-template-columns:none!important;
  grid-auto-flow:column!important;
  grid-auto-columns:var(--tbm-basis-desktop)!important;
  gap:var(--tbm-carousel-gap)!important;
  width:100%;
  min-width:0;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:3px!important;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:3px;
  overscroll-behavior-x:contain;
  scrollbar-width:none!important;
  -ms-overflow-style:none;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track::-webkit-scrollbar{
  display:none!important;
  width:0!important;
  height:0!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track>.product-layout,
body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track>.tbm-native-card-item{
  float:none!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  scroll-snap-align:start;
}

/* A sparse block must never stretch one product into a billboard. */
body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-block.tbm-count-1 .tbm-native-track{
  grid-auto-columns:min(340px,100%)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-v2-card{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
  min-height:0!important;
  overflow:hidden;
  padding:13px!important;
  border:1px solid #e3eaf4!important;
  border-radius:var(--tbm-card-radius)!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(22,42,69,.045)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-v2-card .image{
  flex:0 0 auto;
  width:100%!important;
  height:var(--tbm-carousel-image-height)!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  padding:9px!important;
  overflow:hidden;
  border-radius:12px!important;
  background:linear-gradient(145deg,#fafcff,#f3f6fa)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-v2-card .image img{
  display:block;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-v2-card .caption{
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  min-height:0;
  padding-top:11px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-v2-card .caption h3{
  min-height:2.8em!important;
  margin:5px 0 8px!important;
  display:-webkit-box!important;
  overflow:hidden!important;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  font-size:14px!important;
  line-height:1.4!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-card-specs{
  min-height:0!important;
  margin:6px 0 8px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-card-specs>div:nth-child(n+2){
  display:none!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-v2-card .price{
  margin-top:auto!important;
  margin-bottom:10px!important;
  font-size:20px!important;
  line-height:1.25!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-product-actions{
  flex:0 0 auto;
  margin-top:auto!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-product-actions button:first-child,
body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-card-details{
  min-height:44px!important;
  border-radius:10px!important;
}

/* Arrow buttons are siblings of the card plane, not children of cards. */
body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-shell{
  position:relative!important;
  z-index:1;
  min-width:0;
  overflow:visible!important;
  padding-inline:0!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-arrow{
  position:absolute!important;
  z-index:60!important;
  top:50%!important;
  display:grid!important;
  width:46px!important;
  height:46px!important;
  min-height:46px!important;
  place-items:center;
  padding:0!important;
  border:1px solid #d8e3f0!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.98)!important;
  color:#1a2c45!important;
  box-shadow:0 14px 34px rgba(19,40,67,.14)!important;
  transform:translateY(-50%)!important;
  backdrop-filter:blur(14px);
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-arrow--prev{left:-23px!important}
body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-arrow--next{right:-23px!important}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-arrow:hover:not(:disabled){
  border-color:#afc9fb!important;
  color:#0757ff!important;
  box-shadow:0 18px 38px rgba(7,87,255,.15)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-arrow:disabled{
  opacity:.34!important;
  cursor:default!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-rail-controls-swipe .tbm-rail-arrow{
  display:none!important;
}

/* Explicit description + recommendations composition. No empty reserved column. */
body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(340px,var(--tbm-beside-width,40%))!important;
  gap:clamp(22px,2.5vw,38px)!important;
  align-items:start;
  width:100%;
  max-width:none;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__description,
body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations{
  min-width:0;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__description>#tb-product-description{
  width:100%!important;
  height:100%;
  margin:0!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations{
  position:static;
  top:auto;
  align-self:start;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations .tbm-merchandising-native{
  margin:0!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations .tbm-native-block{
  margin:0 0 16px!important;
  padding:16px!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,#fff,#f8faff)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations .tbm-native-block:last-child{
  margin-bottom:0!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations .tbm-native-section-heading{
  margin-bottom:13px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations .tbm-native-section-heading h2{
  font-size:clamp(18px,1.45vw,23px)!important;
  line-height:1.22!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations .tbm-native-track{
  grid-auto-columns:var(--tbm-basis-beside)!important;
  gap:var(--tbm-carousel-gap)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations .tbm-native-block.tbm-count-1 .tbm-native-track{
  grid-auto-columns:min(300px,100%)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations .tb-v2-card{
  padding:10px!important;
  border-radius:14px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations .tb-v2-card .image{
  height:min(140px,var(--tbm-carousel-image-height))!important;
  padding:7px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations .tb-v2-card .caption h3{
  min-height:2.6em!important;
  font-size:12.5px!important;
  line-height:1.3!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations .tb-v2-card .price{
  font-size:17px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations .tb-card-specs{
  display:none!important;
}

/* Compact premium reviews. */
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #tb-product-reviews{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(320px,500px)!important;
  gap:22px 30px!important;
  align-items:start!important;
  padding:clamp(22px,2.4vw,34px)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #tb-product-reviews>h2{
  grid-column:1/-1!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #review{
  grid-column:1!important;
  min-width:0;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #tb-review-form,
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-form{
  grid-column:2!important;
  width:100%!important;
  max-width:500px!important;
  padding:18px!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#fff,#f9fbfe)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-form h3{
  margin:0 0 14px!important;
  font-size:22px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-form .form-group{
  margin-bottom:13px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-form .control-label{
  margin-bottom:6px!important;
  color:#31415a!important;
  font-size:13px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #input-name{
  min-height:44px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #input-review{
  min-height:112px!important;
  max-height:180px!important;
  resize:vertical;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-rating{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:7px!important;
  margin-bottom:14px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-rating legend{
  flex:0 0 100%;
  margin:0 0 4px!important;
  font-size:13px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-rating label{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  border-radius:10px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-rating label::after{
  font-size:22px!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-rating__edge{
  font-size:11px!important;
  color:#8592a4!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #button-review{
  width:auto!important;
  min-width:150px!important;
  min-height:44px!important;
  padding:0 20px!important;
  border-radius:11px!important;
  font-size:14px!important;
}

/* Breakpoint-specific carousel counts generated by module settings. */
@media(max-width:1399px){
  body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track{
    grid-auto-columns:var(--tbm-basis-laptop)!important;
  }
}

@media(max-width:1023px){
  body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track{
    grid-auto-columns:var(--tbm-basis-tablet)!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations{
    position:static!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #tb-product-reviews{
    grid-template-columns:1fr!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #tb-review-form,
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-form{
    grid-column:1!important;
    max-width:620px!important;
  }
}

@media(max-width:767px){
  body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track{
    grid-auto-columns:var(--tbm-basis-mobile)!important;
    gap:var(--tbm-carousel-gap)!important;
    padding:2px!important;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-v2-card{
    padding:11px!important;
    border-radius:min(var(--tbm-card-radius),16px)!important;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-track .tb-v2-card .image{
    height:min(170px,42vw)!important;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-arrow{
    width:40px!important;
    height:40px!important;
    min-height:40px!important;
  }
  body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-arrow--prev{left:-8px!important}
  body.tb-storefront #product-product.tbm-page-fullwidth .tbm-rail-arrow--next{right:-8px!important}

  body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations .tbm-native-track{
    grid-auto-columns:var(--tbm-basis-mobile)!important;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #tb-product-reviews{
    padding:18px 14px!important;
    gap:16px!important;
  }

  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium #tb-review-form,
  body.tb-storefront #product-product.tbm-page-fullwidth.tbm-review-premium .tb-review-form{
    max-width:none!important;
    padding:16px!important;
  }
}

/* 2.2 explicit wrapper disables legacy parent-grid side placement. */
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tb-product-details:has(> .tbm-beside-layout){
  display:block!important;
  grid-template-columns:none!important;
}
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tb-product-details>.tbm-beside-layout{
  width:100%!important;
  margin:0 0 clamp(20px,2.5vw,34px)!important;
}
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tb-product-details>#tb-product-attributes,
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-placement-beside-description.tbm-has-merchandising .tb-product-details>#tb-product-reviews{
  width:100%!important;
  margin-top:clamp(20px,2.5vw,34px)!important;
}

/* 2.2 final rail visibility / side-flow corrections. */
body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-block,
body.tb-storefront #product-product.tbm-page-fullwidth .tbm-native-block>.container{
  overflow:visible!important;
}
body.tb-storefront #product-product.tbm-page-fullwidth .tbm-beside-layout__recommendations{
  position:static!important;
}

/* ===== 2.3.0 — top-stack geometry + compact PDP recommendation cards ===== */
body.tb-storefront #product-product.tbm-page-fullwidth{
  --tbm-purchase-stack:0px;
}

/* Details navigation always starts below BOTH the live header/service stack and
   the temporary purchase/price bar. */
body.tb-storefront #product-product.tbm-page-fullwidth.tbm-sticky-stack .tb-product-details-nav{
  top:calc(var(--tbm-top-stack,0px) + var(--tbm-purchase-stack,0px) + 6px)!important;
}

body.tb-storefront #product-product.tbm-page-fullwidth.tbm-sticky-stack .tb-product-detail-section{
  scroll-margin-top:calc(var(--tbm-top-stack,0px) + var(--tbm-purchase-stack,0px) + 86px)!important;
}

body.tb-storefront .tbm-pdp-stickybar.tbm-managed-sticky{
  z-index:1042!important;
}


/* 2.3: isolated components. Price/actions stay in flow; no absolute-position footer. */
body.tb-storefront #product-product.tbm23 .tbm23-icon{display:block;flex:none;width:20px;height:20px;vertical-align:middle;pointer-events:none}
body.tb-storefront #product-product.tbm23 :is(.tbm23-card,.tbm23-pickup,.tbm23-reviews) *{box-sizing:border-box}
body.tb-storefront #product-product.tbm23 :is(.tbm23-action,.tbm23-button,.tbm23-map button){font-family:inherit;line-height:1.25;cursor:pointer}
body.tb-storefront #product-product.tbm23 :is(.tbm23-action,.tbm23-button,.tbm23-map button):focus-visible{outline:2px solid #0757ff;outline-offset:3px}
body.tb-storefront #product-product.tbm23 .tbm-native-block{padding:18px!important;margin:0 0 16px!important;border:1px solid #e3e9f2!important;border-radius:18px!important;background:var(--tbm23-recommendation-bg,#f6f7f9)!important;box-shadow:none!important;opacity:1!important;transform:none!important}
body.tb-storefront #product-product.tbm23 .tbm-native-block>.container{width:100%!important;max-width:none!important;padding:0!important}
body.tb-storefront #product-product.tbm23 .tbm-native-section-heading{margin:0 0 14px!important;padding:0!important}
body.tb-storefront #product-product.tbm23 .tbm-native-title-row{gap:8px;align-items:center}
body.tb-storefront #product-product.tbm23 .tbm-native-title-row h2{font-size:clamp(18px,1.5vw,23px)!important;line-height:1.25!important;margin:0!important;font-weight:650!important}
body.tb-storefront #product-product.tbm23 .tbm-native-count{min-width:28px!important;min-height:28px!important;padding:3px 8px!important;font-size:12px!important}
body.tb-storefront #product-product.tbm23 .tbm-native-kicker{padding:3px 0!important;margin:0 0 6px!important;background:none!important;font-size:10px!important;letter-spacing:.07em}
body.tb-storefront #product-product.tbm23 .tbm-rail-shell{display:grid!important;grid-template-columns:44px minmax(0,1fr) 44px!important;align-items:center;gap:4px;position:relative!important;margin:0!important;padding:0!important;isolation:isolate}
body.tb-storefront #product-product.tbm23 .tbm-native-track[data-tbm-rail-track]{display:grid!important;grid-auto-flow:column!important;grid-auto-columns:var(--tbm23-card-width,min(240px,100%))!important;grid-template-columns:none!important;grid-template-rows:none!important;gap:var(--tbm-carousel-gap,16px)!important;min-width:0!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;padding:2px!important;margin:0!important;scrollbar-width:none!important;scroll-snap-type:x proximity;align-items:stretch!important;scroll-behavior:auto!important}
body.tb-storefront #product-product.tbm23 .tbm-native-track::-webkit-scrollbar{display:none!important;width:0;height:0}
body.tb-storefront #product-product.tbm23 .tbm-rail-arrow{position:static!important;inset:auto!important;transform:none!important;width:44px!important;height:44px!important;min-height:44px!important;border:1px solid #dde5f0!important;border-radius:50%!important;background:#fff!important;box-shadow:0 4px 12px #2034510a!important;color:#223450!important;padding:0!important;z-index:2!important;display:grid!important;place-items:center!important;font-size:25px!important;line-height:1!important}
body.tb-storefront #product-product.tbm23 .tbm-rail-arrow[hidden]{visibility:hidden!important;display:grid!important;pointer-events:none!important}
body.tb-storefront #product-product.tbm23 .tbm-rail-arrow:disabled{opacity:.4!important;cursor:default!important}
body.tb-storefront #product-product.tbm23.tbm-rail-controls-swipe .tbm-rail-arrow{display:none!important}
body.tb-storefront #product-product.tbm23.tbm-rail-controls-swipe .tbm-rail-shell{grid-template-columns:minmax(0,1fr)!important}
body.tb-storefront #product-product.tbm23 .tbm23-card{display:flex;flex-direction:column;align-self:stretch;min-width:0;max-width:100%;height:auto;margin:0;padding:12px;gap:10px;border:1px solid #e3e9f2;border-radius:var(--tbm-card-radius,14px);background:#fff;color:#17243b;box-shadow:0 4px 12px #20345105;scroll-snap-align:start;transition:border-color .16s ease,box-shadow .16s ease}
body.tb-storefront #product-product.tbm23 .tbm23-card:hover{border-color:#b9cef5;box-shadow:0 4px 16px #20345109}
body.tb-storefront #product-product.tbm23 .tbm23-card-media{position:relative;height:var(--tbm23-image-height,112px);min-height:0;display:grid;place-items:center;padding:4px 30px;border-radius:10px;background:#fff;overflow:hidden;flex:none}
body.tb-storefront #product-product.tbm23 .tbm23-card-media>a{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:0;overflow:hidden}
body.tb-storefront #product-product.tbm23 .tbm23-card-media img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;mix-blend-mode:normal;filter:none;transform:none}
body.tb-storefront #product-product.tbm23 .tbm23-action{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;margin:0;padding:0;border:1px solid #e2e8f2;border-radius:12px;background:#f8fafd;color:#52627b;text-decoration:none;box-shadow:none;transition:background-color .16s ease,border-color .16s ease}
body.tb-storefront #product-product.tbm23 .tbm23-action:hover{background:#eef4ff;border-color:#b9cef5;color:#0757ff}
body.tb-storefront #product-product.tbm23 .tbm23-action-primary{background:#0757ff;color:#fff;border-color:#0757ff}
body.tb-storefront #product-product.tbm23 .tbm23-action-primary:hover{background:#064cdf;color:#fff}
body.tb-storefront #product-product.tbm23 .tbm23-wishlist{position:absolute;right:0;top:0;width:44px;height:44px;border:0;border-radius:50%;background:#ffffffeb}
body.tb-storefront #product-product.tbm23 .tbm23-card-title{margin:0!important;padding:0!important;font-size:14px!important;font-weight:600!important;line-height:1.4!important;text-align:center!important;min-height:2.8em;letter-spacing:0!important}
body.tb-storefront #product-product.tbm23 .tbm23-card-title a{color:#17243b;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
body.tb-storefront #product-product.tbm23 .tbm23-card-title a:hover{color:#0757ff}
body.tb-storefront #product-product.tbm23 .tbm23-stock{font-size:12px;line-height:1.35;color:#66748b;text-align:center;min-height:17px}
body.tb-storefront #product-product.tbm23 .tbm23-stock::before{content:'•';margin-right:6px}
body.tb-storefront #product-product.tbm23 .tbm23-stock.is-available{color:#14795a}
body.tb-storefront #product-product.tbm23 .tbm23-card-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:8px;min-width:0}
body.tb-storefront #product-product.tbm23 .tbm23-price{position:static;display:flex;flex-direction:column;gap:3px;max-width:100%;min-width:0;flex:1 1 auto}
body.tb-storefront #product-product.tbm23 .tbm23-price strong{font-size:17px;line-height:1.3;font-weight:700;letter-spacing:-.03em;white-space:normal;overflow-wrap:anywhere}
body.tb-storefront #product-product.tbm23 .tbm23-price del{font-size:11px;color:#6d7890}
body.tb-storefront #product-product.tbm23 .tbm23-card-actions{position:static;display:flex;gap:6px;flex:0 0 auto;margin-left:auto}
/* Explicit left column: description, then reviews. Nothing is clipped to equalize heights. */
body.tb-storefront #product-product.tbm23 .tbm-beside-layout{display:grid!important;grid-template-columns:minmax(0,calc(100% - var(--tbm-beside-width,40%) - 24px)) minmax(0,var(--tbm-beside-width,40%))!important;gap:24px!important;align-items:start!important}
body.tb-storefront #product-product.tbm23 .tbm-beside-layout__description{display:flex!important;flex-direction:column!important;gap:16px!important;min-width:0!important}
body.tb-storefront #product-product.tbm23 .tbm-beside-layout__description>#tb-product-description{margin:0!important;min-height:0!important;background:var(--tbm23-description-bg,#fff)!important;padding:22px!important}
body.tb-storefront #product-product.tbm23 #tb-product-description{background:var(--tbm23-description-bg,#fff)!important}
body.tb-storefront #product-product.tbm23 #tb-product-reviews.tbm23-reviews{margin:0!important;padding:16px!important;min-height:0!important;width:100%!important;border-radius:16px!important;background:var(--tbm23-review-bg,#f3f7ff)!important;box-shadow:none!important;overflow:visible!important}
body.tb-storefront #product-product.tbm23 .tbm23-reviews>h2{font-size:18px!important;margin:0 0 10px!important;line-height:1.25!important}
body.tb-storefront #product-product.tbm23 .tbm23-reviews #review{margin:0 0 12px!important;font-size:13px;line-height:1.5}
body.tb-storefront #product-product.tbm23 .tbm23-review-compose{border:1px solid #e0e7f2;border-radius:12px;background:#fff;margin:0;padding:0}
body.tb-storefront #product-product.tbm23 .tbm23-review-compose>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;padding:14px 16px;min-height:72px;list-style:none;background:none;border:none;font-size:14px}
body.tb-storefront #product-product.tbm23 .tbm23-review-compose>summary::-webkit-details-marker{display:none}
body.tb-storefront #product-product.tbm23 .tbm23-review-compose>summary strong{display:block;font-size:16px;color:#16233a}
body.tb-storefront #product-product.tbm23 .tbm23-review-compose>summary small{display:block;margin-top:4px;font-size:12px;color:#68778f}
body.tb-storefront #product-product.tbm23 .tbm23-compose-action{display:inline-flex;gap:6px;align-items:center;color:#0757ff;font-size:13px;flex:none}
body.tb-storefront #product-product.tbm23 .tbm23-review-compose[open] .tbm23-compose-action svg{transform:rotate(90deg)}
body.tb-storefront #product-product.tbm23 .tbm23-compose-body{padding:0 16px 16px}
body.tb-storefront #product-product.tbm23 #form-review.tbm23-review-form{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:12px 16px!important;width:100%!important;max-width:none!important;margin:0!important;padding:14px 0 0!important;border:0!important;border-top:1px solid #e7ecf4!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}
body.tb-storefront #product-product.tbm23 #form-review.tbm23-review-form>h3{display:none!important}
body.tb-storefront #product-product.tbm23 #form-review.tbm23-review-form>.form-group{padding:0!important;margin:0!important;min-width:0}
body.tb-storefront #product-product.tbm23 #form-review.tbm23-review-form>.form-group:has(#input-name){grid-column:1;grid-row:1}
body.tb-storefront #product-product.tbm23 #form-review.tbm23-review-form>.form-group:has(#input-review){grid-column:1/-1;grid-row:2}
body.tb-storefront #product-product.tbm23 #form-review.tbm23-review-form :is(.control-label,legend){font-size:12px!important;font-weight:600!important;line-height:1.3!important;color:#344460!important;margin:0 0 6px!important;padding:0!important;float:none!important;width:auto!important;border:0!important}
body.tb-storefront #product-product.tbm23 #form-review.tbm23-review-form :is(input[type=text],input[type=email],textarea){width:100%!important;max-width:100%!important;font-family:inherit!important;font-size:16px!important;background:#fbfcfe!important;border:1px solid #dfe7f2!important;border-radius:9px!important;box-shadow:none!important;box-sizing:border-box!important;padding:10px 12px!important;line-height:1.4!important}
body.tb-storefront #product-product.tbm23 #form-review.tbm23-review-form input[type=text]{height:44px!important;min-height:44px!important}
body.tb-storefront #product-product.tbm23 #form-review.tbm23-review-form textarea{height:86px!important;min-height:86px!important;resize:vertical!important;max-height:none!important}
body.tb-storefront #product-product.tbm23 #form-review.tbm23-review-form :is(input,textarea):focus-visible{outline:2px solid #0757ff;outline-offset:2px}
body.tb-storefront #product-product.tbm23 #form-review.tbm23-review-form #button-review{position:static!important;min-height:44px!important;height:auto!important;width:max-content!important;max-width:100%!important;padding:10px 18px!important;margin:0!important;border:0!important;border-radius:9px!important;background:#0757ff!important;color:#fff!important;font-size:14px!important;box-shadow:none!important;grid-column:1/-1}
body.tb-storefront #product-product.tbm23 .tbm23-rating{grid-column:2;grid-row:1;border:0;margin:0;padding:0;min-width:0}
body.tb-storefront #product-product.tbm23 .tbm23-stars{display:flex;gap:0;align-items:center;flex-wrap:nowrap;max-width:100%}
body.tb-storefront #product-product.tbm23 .tbm23-stars label{position:relative;display:grid!important;place-items:center;flex:0 0 44px!important;width:44px!important;height:44px!important;margin:0!important;padding:0!important;border:0!important;background:none!important;border-radius:8px!important;color:#8798b1}
body.tb-storefront #product-product.tbm23 .tbm23-stars label::before,body.tb-storefront #product-product.tbm23 .tbm23-stars label::after{display:none!important;content:none!important}
body.tb-storefront #product-product.tbm23 .tbm23-stars input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0;padding:0;z-index:2}
body.tb-storefront #product-product.tbm23 .tbm23-stars span{display:block!important;position:static!important;width:24px;height:24px;font-size:0!important}
body.tb-storefront #product-product.tbm23 .tbm23-stars .tbm23-icon{width:24px;height:24px}
body.tb-storefront #product-product.tbm23 .tbm23-stars label.is-filled svg,body.tb-storefront #product-product.tbm23 .tbm23-stars label:has(input:checked) svg{fill:#0757ff;stroke:#0757ff}
body.tb-storefront #product-product.tbm23 .tbm23-stars label:has(input:focus-visible){outline:2px solid #0757ff;outline-offset:0}
body.tb-storefront #product-product.tbm23 .tbm23-rating-text{display:block;border:none;padding:0;margin:3px 0 0;font-size:11px;line-height:1.3;color:#63748f;min-height:15px}
/* Pickup is its own light component; not a recoloured map placeholder. */
body.tb-storefront #product-product.tbm23 .tbm23-pickup{display:grid!important;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;align-items:start;gap:clamp(20px,3vw,44px);padding:clamp(20px,3vw,36px)!important;margin:24px 0!important;background:var(--tbm23-pickup-bg,#f3f7ff)!important;border:1px solid #e1e8f3!important;border-radius:20px!important;box-shadow:none!important;min-height:0!important}
body.tb-storefront #product-product.tbm23 .tbm23-eyebrow{display:block;color:#0757ff;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;margin-bottom:12px}
body.tb-storefront #product-product.tbm23 .tbm23-pickup-copy h2{font-size:clamp(23px,2.3vw,34px)!important;font-weight:650!important;line-height:1.15!important;margin:0 0 12px!important;letter-spacing:-.025em;color:#17243b}
body.tb-storefront #product-product.tbm23 .tbm23-pickup-address{margin:0 0 14px;font-size:14px;line-height:1.5;color:#53627b}
body.tb-storefront #product-product.tbm23 .tbm23-pickup-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
body.tb-storefront #product-product.tbm23 .tbm23-pickup-chips span{padding:7px 12px;border:1px solid #d9e4f8;background:#fff;border-radius:30px;color:#0757ff;font-weight:600;font-size:12px}
body.tb-storefront #product-product.tbm23 .tbm23-steps{list-style:none;padding:0!important;margin:0 0 18px!important;display:grid;gap:16px}
body.tb-storefront #product-product.tbm23 .tbm23-steps li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;align-items:start;margin:0;padding:0;font-size:14px}
body.tb-storefront #product-product.tbm23 .tbm23-steps li>span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;color:#0757ff;background:#e5edff;font-size:12px;font-weight:700}
body.tb-storefront #product-product.tbm23 .tbm23-steps strong{color:#17243b;font-size:14px}
body.tb-storefront #product-product.tbm23 .tbm23-steps p{margin:4px 0 0;font-size:12px;line-height:1.55;color:#61718b}
body.tb-storefront #product-product.tbm23 .tbm23-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 14px;min-height:44px;max-width:100%;border:1px solid #dfe6f1;background:#fff;color:#263851;border-radius:10px;font-size:13px;font-weight:600;text-decoration:none;white-space:normal;text-align:center;box-shadow:none}
body.tb-storefront #product-product.tbm23 .tbm23-primary{background:#0757ff;border-color:#0757ff;color:#fff}
body.tb-storefront #product-product.tbm23 .tbm23-pickup-actions{display:flex;gap:10px;flex-wrap:wrap}
body.tb-storefront #product-product.tbm23 .tbm23-address-copy{border:none;background:none;color:#0757ff;padding-left:0}
body.tb-storefront #product-product.tbm23 .tbm23-copy-status{font-size:12px;color:#61718b;min-height:16px;margin:8px 0 0}
body.tb-storefront #product-product.tbm23 .tbm23-map-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}
body.tb-storefront #product-product.tbm23 .tbm23-map-head strong{font-size:16px;color:#17243b}
body.tb-storefront #product-product.tbm23 .tbm23-map-head span{font-size:12px;color:#61718b}
body.tb-storefront #product-product.tbm23 .tbm23-map{background:#fff;border:1px solid #dfe6f1;border-radius:14px;overflow:hidden;min-width:0}
body.tb-storefront #product-product.tbm23 .tbm23-map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:4px;flex-wrap:wrap;padding:6px}
body.tb-storefront #product-product.tbm23 .tbm23-map-toolbar>div{display:flex;gap:2px}
body.tb-storefront #product-product.tbm23 .tbm23-map button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px;border:0;border-radius:8px;background:#fff;color:#334762;font-size:12px;gap:4px}
body.tb-storefront #product-product.tbm23 .tbm23-map button:hover,body.tb-storefront #product-product.tbm23 .tbm23-map button[aria-pressed=true]{background:#eaf1ff;color:#0757ff}
body.tb-storefront #product-product.tbm23 .tbm23-map-viewport{height:clamp(240px,27vw,380px);overflow:auto;overscroll-behavior:contain;background:#f1f3f7;min-width:0}
body.tb-storefront #product-product.tbm23 .tbm23-map-plane{position:relative;width:100%;min-width:100%;line-height:0}
body.tb-storefront #product-product.tbm23 .tbm23-map-plane img{display:block;width:100%;height:auto;max-width:none;filter:none;mix-blend-mode:normal;transform:none}
body.tb-storefront #product-product.tbm23 .tbm23-map .tbm23-map-marker{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;min-width:44px;width:44px;min-height:44px;height:44px;border:3px solid #fff;border-radius:50%;box-shadow:0 3px 14px #12254230;background:#0757ff;color:#fff;font-size:17px;font-weight:700;z-index:2;padding:0}
body.tb-storefront #product-product.tbm23 .tbm23-map-marker--entrance{left:16.3%;top:68.8%}
body.tb-storefront #product-product.tbm23 .tbm23-map-marker--shop{left:28%;top:28.4%}
body.tb-storefront #product-product.tbm23 .tbm23-map .tbm23-map-marker.is-active{outline:4px solid #0757ff55;outline-offset:3px;background:#0044da}
body.tb-storefront #product-product.tbm23 .tbm23-map-status{margin:0;padding:8px 12px;font-size:11px;line-height:1.4;color:#596b85;border-top:1px solid #eef1f6}
body.tb-storefront #product-product.tbm23 .tbm23-map-caption{margin:10px 0 0;font-size:11px;line-height:1.5;color:#6e7e95}
body.tb-storefront #product-product.tbm23 .tbm23-map-dialog{padding:18px;border:1px solid #dfe6f2;border-radius:18px;background:#fff;color:#18273e;max-width:min(1120px,94vw);width:94vw;max-height:92dvh;overflow:auto;margin:auto;box-shadow:0 20px 70px #10234330}
body.tb-storefront #product-product.tbm23 .tbm23-map-dialog:not([open]){display:none!important}
body.tb-storefront #product-product.tbm23 .tbm23-map-dialog::backdrop{background:#0c1b32a3}
body.tb-storefront #product-product.tbm23 .tbm23-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
body.tb-storefront #product-product.tbm23 .tbm23-map-dialog .tbm23-map-viewport{height:min(65dvh,660px)}
@media(max-width:1199px){body.tb-storefront #product-product.tbm23 #form-review.tbm23-review-form{grid-template-columns:minmax(0,1fr)!important}body.tb-storefront #product-product.tbm23 #form-review.tbm23-review-form>.form-group:has(#input-name){grid-column:1;grid-row:auto}body.tb-storefront #product-product.tbm23 #form-review.tbm23-review-form>.form-group:has(#input-review){grid-column:1;grid-row:auto}body.tb-storefront #product-product.tbm23 .tbm23-rating{grid-column:1;grid-row:auto}}
@media(max-width:1023px){body.tb-storefront #product-product.tbm23 .tbm-beside-layout{grid-template-columns:minmax(0,1fr)!important;gap:16px!important}body.tb-storefront #product-product.tbm23 .tbm23-pickup{grid-template-columns:minmax(0,1fr)!important;gap:22px}body.tb-storefront #product-product.tbm23 .tbm23-map-viewport{height:320px}}
@media(max-width:767px){
 body.tb-storefront #product-product.tbm23 .tbm-native-block{padding:12px!important;border-radius:14px!important;margin-bottom:12px!important}
 body.tb-storefront #product-product.tbm23 .tbm-rail-shell{grid-template-columns:44px minmax(0,1fr) 44px!important;gap:4px!important}
 body.tb-storefront #product-product.tbm23 .tbm-native-track[data-tbm-rail-track]{grid-column:1/-1;grid-row:1}
 body.tb-storefront #product-product.tbm23 .tbm-rail-arrow--prev{grid-column:1;grid-row:2}
 body.tb-storefront #product-product.tbm23 .tbm-rail-arrow--next{grid-column:3;grid-row:2}
 body.tb-storefront #product-product.tbm23 .tbm23-card{padding:10px;gap:8px;border-radius:12px}
 body.tb-storefront #product-product.tbm23 .tbm23-card-media{height:var(--tbm23-mobile-image-height,96px);padding:2px 28px}
 body.tb-storefront #product-product.tbm23 .tbm23-card-title{font-size:13px!important}
 body.tb-storefront #product-product.tbm23 .tbm23-price strong{font-size:16px}
 body.tb-storefront #product-product.tbm23 #tb-product-reviews.tbm23-reviews{padding:12px!important}
 body.tb-storefront #product-product.tbm23 .tbm23-review-compose>summary{padding:12px;min-height:70px;gap:8px}
 body.tb-storefront #product-product.tbm23 .tbm23-compose-body{padding:0 12px 12px}
 body.tb-storefront #product-product.tbm23 .tbm23-compose-action{font-size:0}
 body.tb-storefront #product-product.tbm23 #form-review.tbm23-review-form #button-review{width:100%!important}
 body.tb-storefront #product-product.tbm23 .tbm-beside-layout__description>#tb-product-description{padding:16px!important}
 body.tb-storefront #product-product.tbm23 .tbm23-pickup{padding:16px!important;border-radius:16px!important}
 body.tb-storefront #product-product.tbm23 .tbm23-pickup-actions{flex-direction:column}
 body.tb-storefront #product-product.tbm23 .tbm23-button{width:100%}
 body.tb-storefront #product-product.tbm23 .tbm23-map-viewport{height:260px}
 body.tb-storefront #product-product.tbm23 .tbm23-map-dialog{padding:10px;max-width:calc(100vw - 16px);width:calc(100vw - 16px);border-radius:12px}
}
@media(prefers-reduced-motion:reduce){body.tb-storefront #product-product.tbm23 .tbm23-card,body.tb-storefront #product-product.tbm23 .tbm23-action{transition:none!important}}

body.tb-storefront #product-product.tbm23 #tb-product-reviews.tbm23-reviews{display:block!important;grid-template-columns:none!important;gap:0!important}
body.tb-storefront #product-product.tbm23 #tb-product-reviews.tbm23-reviews #review{width:100%!important;padding:0!important;min-height:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:none!important}
body.tb-storefront #product-product.tbm23 #tb-product-reviews.tbm23-reviews #review:empty{display:none!important;margin:0!important}
body.tb-storefront #product-product.tbm23 #tb-product-reviews.tbm23-reviews .tbm23-review-compose{width:100%;grid-column:auto}
body.tb-storefront #product-product.tbm23 .tbm23-map-marker--shop{left:29%;top:21%}

/* Existing Grid Showcase option remains functional; the default is the carousel. */
body.tb-storefront #product-product.tbm23.tbm-rec-stacked .tbm-native-track[data-tbm-rail-track]{grid-auto-flow:row!important;grid-auto-columns:auto!important;grid-template-columns:repeat(var(--tbm23-visible,1),var(--tbm23-card-width,min(240px,100%)))!important;overflow-x:hidden!important}

/* ======================================================================
   Tehberi Smart Merchandising 2.3.3 — Mobile PDP Takeover
   Critical WebKit fix: Product V4 gives the summary an inline-size container.
   2.3.0 changed the hero from grid to flex on phones but inherited
   align-items:start from the grid foundation. In Safari this combination can
   shrink the contained summary to its min-content width. The result is the
   narrow vertical price/pickup/cart strip seen on iPhone. Smart Merchandising
   now owns the mobile geometry explicitly and suppresses verified legacy PDP
   remnants while it is active.
   ====================================================================== */

body.tb-storefront #product-product.tbm-product-takeover,
body.tb-storefront #product-product.tbm-product-takeover *{
  box-sizing:border-box;
}

body.tb-storefront #product-product.tbm-product-takeover .tb-v4-product-hero,
body.tb-storefront #product-product.tbm-product-takeover .tb-v4-product-heading,
body.tb-storefront #product-product.tbm-product-takeover .tb-product-gallery,
body.tb-storefront #product-product.tbm-product-takeover .tb-product-summary,
body.tb-storefront #product-product.tbm-product-takeover .tb-product-offer,
body.tb-storefront #product-product.tbm-product-takeover .tb-purchase-panel{
  min-width:0;
}

/* Old generated purchase bars and sibling duplicate product roots are not a
   second visual authority anymore. Server-side takeover removes them first;
   these rules prevent a flash if stale theme/OCMOD HTML reaches the browser. */
body.tb-storefront #product-product.tbm-product-takeover .tbm-pdp-stickybar,
body.tb-storefront #product-product.tbm-product-takeover [data-tbm-pdp-stickybar],
body.tb-storefront #product-product.tbm-product-takeover ~ #product-product{
  display:none!important;
}

@supports selector(:has(*)){
  body.tb-storefront #product-product.tbm-product-takeover #content>.row:has(#product:not(.tb-purchase-panel)):not(.tb-product-layout){
    display:none!important;
  }
}

@media(max-width:767px){
  body.tb-storefront #product-product.tbm-product-takeover .tb-v4-product-hero{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    grid-template-columns:none!important;
    grid-template-rows:none!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }

  body.tb-storefront #product-product.tbm-product-takeover .tb-v4-product-hero>.tb-v4-product-heading,
  body.tb-storefront #product-product.tbm-product-takeover .tb-v4-product-hero>.tb-product-gallery,
  body.tb-storefront #product-product.tbm-product-takeover .tb-v4-product-hero>.tb-product-summary{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    flex:0 0 auto!important;
    align-self:stretch!important;
    justify-self:stretch!important;
    grid-column:auto!important;
    grid-row:auto!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  /* Avoid WebKit inline-size containment + flex min-content collapse. Mobile
     breakpoints below replace the only container-query behaviour we need. */
  body.tb-storefront #product-product.tbm-product-takeover .tb-product-summary{
    container-type:normal!important;
    container-name:none!important;
  }

  body.tb-storefront #product-product.tbm-product-takeover .tb-product-offer,
  body.tb-storefront #product-product.tbm-product-takeover .tb-purchase-panel,
  body.tb-storefront #product-product.tbm-product-takeover #product.tb-purchase-panel,
  body.tb-storefront #product-product.tbm-product-takeover .tb-product-price,
  body.tb-storefront #product-product.tbm-product-takeover .tb-pickup-note,
  body.tb-storefront #product-product.tbm-product-takeover .tb-purchase-actions,
  body.tb-storefront #product-product.tbm-product-takeover .tb-quantity-field{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }

  body.tb-storefront #product-product.tbm-product-takeover .tb-product-price{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:baseline!important;
    gap:6px 10px!important;
  }

  body.tb-storefront #product-product.tbm-product-takeover .tb-product-price__current{
    max-width:100%!important;
    white-space:nowrap!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    font-size:clamp(27px,8.1vw,32px)!important;
    line-height:1.08!important;
  }

  body.tb-storefront #product-product.tbm-product-takeover .tb-product-price__old,
  body.tb-storefront #product-product.tbm-product-takeover .tb-product-price__tax{
    min-width:0!important;
    overflow-wrap:break-word!important;
  }

  body.tb-storefront #product-product.tbm-product-takeover .tb-pickup-note{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-items:start!important;
    padding:13px 14px!important;
    gap:4px!important;
  }

  body.tb-storefront #product-product.tbm-product-takeover .tb-pickup-note strong,
  body.tb-storefront #product-product.tbm-product-takeover .tb-pickup-note span{
    display:block!important;
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
  }

  body.tb-storefront #product-product.tbm-product-takeover .tb-purchase-actions{
    display:grid!important;
    grid-template-columns:minmax(118px,.8fr) minmax(0,1.2fr)!important;
    align-items:end!important;
    gap:10px!important;
  }

  body.tb-storefront #product-product.tbm-product-takeover .tb-quantity-control{
    width:100%!important;
    min-width:0!important;
    grid-template-columns:40px minmax(42px,1fr) 40px!important;
  }

  body.tb-storefront #product-product.tbm-product-takeover #button-cart{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    padding-left:14px!important;
    padding-right:14px!important;
    white-space:nowrap!important;
  }

  body.tb-storefront #product-product.tbm-product-takeover .tb-key-specs dl>div{
    min-width:0;
  }
}

@media(max-width:390px){
  body.tb-storefront #product-product.tbm-product-takeover .tb-key-specs dl>div{
    grid-template-columns:minmax(0,1fr)!important;
    gap:2px!important;
  }
  body.tb-storefront #product-product.tbm-product-takeover .tb-key-specs dd{
    margin:0!important;
    text-align:left!important;
  }
}

@media(max-width:359px){
  body.tb-storefront #product-product.tbm-product-takeover .tb-purchase-actions{
    grid-template-columns:minmax(0,1fr)!important;
  }
}


/* ======================================================================
   Tehberi Smart Merchandising 2.3.3 — Mobile viewport / scroll guard
   Fixes two production-only mobile failures:
   1) the service grid inherited grid-auto-flow:column from an older mobile
      rail rule, so the third/fourth service created 80vw implicit columns;
   2) recommendation rails could capture a vertical gesture in Safari while
      their off-screen card plane remained horizontally scrollable.
   The page itself is never allowed to become wider than the viewport. Rails
   still move with their explicit arrow controls; swipe mode remains opt-in.
   ====================================================================== */

@supports (overflow:clip){
  html.tbm-pdp-viewport-lock,
  body.tbm-pdp-viewport-lock{
    overflow-x:clip!important;
  }
}
@supports not (overflow:clip){
  html.tbm-pdp-viewport-lock,
  body.tbm-pdp-viewport-lock{
    overflow-x:hidden!important;
  }
}

@media(max-width:767px){
  html.tbm-pdp-viewport-lock,
  body.tbm-pdp-viewport-lock,
  body.tb-storefront.tbm-pdp-viewport-lock{
    width:100%!important;
    max-width:100%!important;
  }

  body.tb-storefront #product-product.tbm-product-takeover{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body.tb-storefront #product-product.tbm-product-takeover :is(
    .tb-product-layout,
    #content,
    .tb-v4-product-hero,
    .tb-v4-product-heading,
    .tb-product-gallery,
    .tb-product-summary,
    .tb-product-offer,
    .tb-purchase-panel,
    .tb-product-services,
    .tb-product-details-nav,
    .tb-product-details,
    .tb-product-detail-section,
    .tbm-beside-layout,
    .tbm-beside-layout__description,
    .tbm-beside-layout__recommendations,
    .tbm-merchandising-native,
    .tbm-native-block,
    .tbm-native-block>.container,
    .tbm-rail-shell,
    .tbm-native-track,
    .tb-related-products
  ){
    min-width:0!important;
    max-width:100%!important;
  }

  /* Root cause of the wide blank page seen on mobile: reset the old
     grid-auto-flow:column / 80vw implicit columns completely. */
  body.tb-storefront #product-product.tbm-product-takeover .tb-product-services{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-flow:row!important;
    grid-auto-columns:auto!important;
    grid-auto-rows:auto!important;
    width:100%!important;
    overflow:visible!important;
    margin:20px 0 14px!important;
    padding:0!important;
    gap:8px!important;
    scroll-snap-type:none!important;
  }
  body.tb-storefront #product-product.tbm-product-takeover .tb-product-service{
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
    scroll-snap-align:none!important;
  }
  body.tb-storefront #product-product.tbm-product-takeover .tb-product-service>*{
    min-width:0!important;
    max-width:100%!important;
  }
  body.tb-storefront #product-product.tbm-product-takeover .tb-product-service :is(strong,small,span){
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }

  /* Section navigation wraps instead of creating a second horizontal rail. */
  body.tb-storefront #product-product.tbm-product-takeover .tb-product-details-nav{
    display:flex!important;
    flex-wrap:wrap!important;
    width:100%!important;
    overflow:visible!important;
    overscroll-behavior:auto!important;
    scroll-snap-type:none!important;
  }
  body.tb-storefront #product-product.tbm-product-takeover .tb-product-details-nav a{
    min-width:0!important;
    max-width:100%!important;
    white-space:normal!important;
  }

  /* Recommendation blocks are clipped to the product content box. The
     scroll plane is allowed to be wider internally, never the document. */
  body.tb-storefront #product-product.tbm-product-takeover .tbm-native-block,
  body.tb-storefront #product-product.tbm-product-takeover .tbm-native-block>.container,
  body.tb-storefront #product-product.tbm-product-takeover .tbm-rail-shell{
    width:100%!important;
  }
  @supports (overflow:clip){
    body.tb-storefront #product-product.tbm-product-takeover .tbm-native-block,
    body.tb-storefront #product-product.tbm-product-takeover .tbm-native-block>.container,
    body.tb-storefront #product-product.tbm-product-takeover .tbm-rail-shell{
      overflow-x:clip!important;
    }
  }
  @supports not (overflow:clip){
    body.tb-storefront #product-product.tbm-product-takeover .tbm-native-block,
    body.tb-storefront #product-product.tbm-product-takeover .tbm-native-block>.container,
    body.tb-storefront #product-product.tbm-product-takeover .tbm-rail-shell{
      overflow-x:hidden!important;
    }
  }

  body.tb-storefront #product-product.tbm-product-takeover .tbm-native-track[data-tbm-rail-track]{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    overscroll-behavior-y:auto!important;
  }
  body.tb-storefront #product-product.tbm-product-takeover .tbm-native-track[data-tbm-rail-track]>*{
    min-width:0!important;
    max-width:100%!important;
  }

  /* Arrow mode is the default/current UI: horizontal movement is controlled
     by the arrows, so the card plane cannot trap a vertical finger gesture. */
  body.tb-storefront #product-product.tbm-product-takeover.tbm-rail-controls-arrows .tbm-native-track[data-tbm-rail-track]{
    overflow-x:hidden!important;
    overflow-y:hidden!important;
    scroll-snap-type:none!important;
    overscroll-behavior:auto!important;
    touch-action:pan-y pinch-zoom!important;
  }

  /* If the administrator explicitly selects Swipe, keep the rail swipeable
     but still isolate it from document geometry. */
  body.tb-storefront #product-product.tbm-product-takeover.tbm-rail-controls-swipe .tbm-native-track[data-tbm-rail-track]{
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x proximity!important;
    overscroll-behavior-x:contain!important;
    touch-action:pan-x pan-y pinch-zoom!important;
  }

  body.tb-storefront #product-product.tbm-product-takeover .tbm23-card{
    min-width:0!important;
    max-width:100%!important;
  }

  /* Keep gallery thumbnails inside their own scrollport without widening the
     page. They do not participate in vertical gesture locking. */
  body.tb-storefront #product-product.tbm-product-takeover .tb-product-gallery__thumbs{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overscroll-behavior-x:contain!important;
    touch-action:pan-x pan-y pinch-zoom!important;
  }

  body.tb-storefront #product-product.tbm-product-takeover .tbm23-pickup,
  body.tb-storefront #product-product.tbm-product-takeover .tbm23-pickup>*{
    min-width:0!important;
    max-width:100%!important;
  }
}

@media(max-width:390px){
  body.tb-storefront #product-product.tbm-product-takeover .tb-product-services{
    grid-template-columns:minmax(0,1fr)!important;
  }
}


/* ======================================================================
   Tehberi Smart Merchandising 2.3.3 — mobile rail polish
   - one canonical Pickup nav item
   - arrows may coexist with native finger swipe
   - optional two-up compact cards on phones
   ====================================================================== */
@media(max-width:767px){
  /* Force a single horizontal row. Without one explicit row, CSS Grid may pack
     consecutive cards into implicit rows, which makes a two-up rail look like
     one card and hides the next item under overflow-y:hidden. */
  body.tb-storefront #product-product.tbm23 .tbm-native-track[data-tbm-rail-track]{
    grid-template-rows:auto!important;
  }

  body.tb-storefront #product-product.tbm-product-takeover.tbm-mobile-swipe .tbm-native-track[data-tbm-rail-track]{
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity!important;
    overscroll-behavior-x:contain!important;
    overscroll-behavior-y:auto!important;
    touch-action:pan-x pan-y pinch-zoom!important;
  }

  body.tb-storefront #product-product.tbm23 .tbm-native-track[data-tbm23-visible="2"] .tbm23-card{
    padding:8px!important;
    gap:6px!important;
    border-radius:11px!important;
  }
  body.tb-storefront #product-product.tbm23 .tbm-native-track[data-tbm23-visible="2"] .tbm23-card-media{
    height:min(var(--tbm23-mobile-image-height,96px),86px)!important;
    padding:2px 20px!important;
  }
  body.tb-storefront #product-product.tbm23 .tbm-native-track[data-tbm23-visible="2"] .tbm23-wishlist{
    width:36px!important;
    height:36px!important;
  }
  body.tb-storefront #product-product.tbm23 .tbm-native-track[data-tbm23-visible="2"] .tbm23-card-title{
    min-height:3.9em!important;
    font-size:12px!important;
    line-height:1.3!important;
    text-align:left!important;
  }
  body.tb-storefront #product-product.tbm23 .tbm-native-track[data-tbm23-visible="2"] .tbm23-stock{
    min-height:16px!important;
    font-size:10.5px!important;
    text-align:left!important;
  }
  body.tb-storefront #product-product.tbm23 .tbm-native-track[data-tbm23-visible="2"] .tbm23-card-footer{
    align-items:flex-end!important;
    gap:5px!important;
    padding-top:4px!important;
  }
  body.tb-storefront #product-product.tbm23 .tbm-native-track[data-tbm23-visible="2"] .tbm23-price strong{
    font-size:14px!important;
    line-height:1.2!important;
  }
  body.tb-storefront #product-product.tbm23 .tbm-native-track[data-tbm23-visible="2"] .tbm23-price del{font-size:9.5px!important}
  body.tb-storefront #product-product.tbm23 .tbm-native-track[data-tbm23-visible="2"] .tbm23-card-actions{gap:4px!important}
  body.tb-storefront #product-product.tbm23 .tbm-native-track[data-tbm23-visible="2"] .tbm23-action{
    flex-basis:36px!important;
    width:36px!important;
    height:36px!important;
    min-height:36px!important;
    border-radius:10px!important;
  }
  body.tb-storefront #product-product.tbm23 .tbm-native-track[data-tbm23-visible="2"] .tbm23-icon{
    width:17px!important;
    height:17px!important;
  }
}

/* 2.3.4 — document-flow authority for PDP BODY content, not its controls.
   Only site header / native purchase bar may remain pinned. In particular,
   an old beside_description slot must not hold a screenful of recommendations
   still while the document underneath keeps scrolling. Rail scrollports,
   arrows, card controls and map dialog retain their own positioning. */
body.tb-storefront #product-product.tbm-product-takeover :is(
  .tb-product-layout, #content, .tb-product-details,
  .tbm-details-slot, .tbm-details-slot--beside_description,
  .tbm-details-slot--after_description, .tbm-details-slot--before_details,
  .tbm-details-slot--after_details, .tbm-beside-layout,
  .tbm-beside-layout__description, .tbm-beside-layout__recommendations,
  .tbm-merchandising-native, .tbm-native-block
){
  position:static!important;
  inset:auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  transform:none!important;
  translate:none!important;
  contain:none!important;
  content-visibility:visible!important;
}
/* Section navigation is ordinary page content. A large cached nav wrapper
   can no longer become a sticky overlay over following sections. */
body.tb-storefront #product-product.tbm-product-takeover .tb-product-details-nav{
  position:relative!important;
  inset:auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  transform:none!important;
}
body.tb-storefront #product-product.tbm-product-takeover :is(
  .tb-product-details,.tbm-details-slot,.tbm-details-slot--beside_description,
  .tbm-details-slot--after_description,.tbm-beside-layout,
  .tbm-beside-layout__description,.tbm-beside-layout__recommendations,
  .tbm-merchandising-native
){overflow:visible!important}
/* Do not leave long sections invisible because their intersection ratio can
   never reach an animation threshold. No blank animated plane underneath. */
body.tb-storefront #product-product.tbm-product-takeover :is(
  .tb-product-detail-section,.tb-product-details-nav,.tbm-native-block
).tbm-reveal{
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
}

/* 2.3.7 — one navigation owner. A mobile portal avoids overflow/transform and
   short-parent sticky traps without changing scrolling on any content block. */
body.tb-storefront #product-product .tbm-details-anchor{
  display:flow-root!important;position:relative!important;inset:auto!important;
  float:none!important;clear:both;box-sizing:border-box!important;
  width:100%!important;min-width:0!important;max-width:100%!important;
  margin:20px 0 12px!important;padding:0!important;border:0!important;
  overflow:visible!important;transform:none!important;contain:none!important;
}
body.tb-storefront #tbm-details-portal{
  position:fixed!important;inset:auto!important;top:var(--tbm-dock-top,0px)!important;
  left:var(--tbm-dock-left,0px)!important;width:var(--tbm-dock-width,100%)!important;
  height:auto!important;max-height:none!important;padding:0!important;margin:0!important;
  box-sizing:border-box!important;border:0!important;background:transparent!important;
  transform:none!important;contain:none!important;overflow:visible!important;z-index:40!important;
}
body.tb-storefront #tbm-details-portal[hidden]{display:none!important}
body.tb-storefront :is(#product-product,#tbm-details-portal) .tbm-details-nav{
  display:flex!important;position:relative!important;inset:auto!important;
  flex-flow:row wrap!important;align-items:center!important;justify-content:flex-start!important;gap:4px!important;
  float:none!important;box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important;
  height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:4px 10px!important;
  border:1px solid #e1e7f0!important;border-radius:14px!important;background:#fff!important;
  box-shadow:0 6px 20px rgba(25,45,75,.045)!important;overflow:visible!important;
  transform:none!important;translate:none!important;contain:none!important;
  opacity:1!important;visibility:visible!important;animation:none!important;transition:none!important;z-index:40!important;
  font-family:inherit!important;
}
body.tb-storefront :is(#product-product,#tbm-details-portal) .tbm-details-nav::before,
body.tb-storefront :is(#product-product,#tbm-details-portal) .tbm-details-nav::after{content:none!important;display:none!important}
body.tb-storefront :is(#product-product,#tbm-details-portal) .tbm-details-nav>.tbm-details-link{
  box-sizing:border-box!important;display:inline-flex!important;position:relative!important;inset:auto!important;
  flex:0 1 auto!important;align-items:center!important;justify-content:center!important;
  min-width:0!important;max-width:100%!important;min-height:44px!important;height:auto!important;
  margin:0!important;padding:8px 10px!important;border:0!important;border-bottom:2px solid transparent!important;
  border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#66748b!important;
  font-family:inherit!important;font-size:14px!important;font-weight:600!important;line-height:1.3!important;
  letter-spacing:normal!important;text-decoration:none!important;white-space:normal!important;overflow-wrap:anywhere;
  text-align:center!important;cursor:pointer;-webkit-tap-highlight-color:transparent;
}
body.tb-storefront :is(#product-product,#tbm-details-portal) .tbm-details-nav>.tbm-details-link:is(.is-active,[aria-current=true]){
  color:var(--tbm-accent,#0757ff)!important;border-bottom-color:currentColor!important;
}
body.tb-storefront :is(#product-product,#tbm-details-portal) .tbm-details-nav>.tbm-details-link:focus:not(:focus-visible){outline:none!important}
body.tb-storefront :is(#product-product,#tbm-details-portal) .tbm-details-nav>.tbm-details-link:focus-visible{outline:2px solid #0757ff!important;outline-offset:2px}
body.tb-storefront #product-product.tbm-product-takeover.tbm-details-ready .tb-product-detail-section{
  scroll-margin-top:calc(var(--tbm-details-top,0px) + var(--tbm-details-height,0px) + 12px)!important;
}
body.tb-storefront #product-product .tbm-section-open{display:block!important;visibility:visible!important;opacity:1!important}
body.tb-storefront #product-product #tb-product-attributes.tbm-specs-expanded,
body.tb-storefront #product-product #tb-product-attributes.tbm-specs-expanded [data-tbm-spec-list]{
  max-height:none!important;height:auto!important;overflow:visible!important;
}
body.tb-storefront #product-product #tb-product-attributes.tbm-specs-expanded [data-tbm-spec-row="definition"]{display:grid!important;visibility:visible!important}
body.tb-storefront #product-product #tb-product-attributes.tbm-specs-expanded [data-tbm-spec-row="table"]{display:table-row!important;visibility:visible!important}
body.tb-storefront #product-product #tb-product-attributes [data-tbm-specs-complete]{display:none!important}
/* Disclosure uses max-height clipping, not an independently scrolling text box. */
body.tb-storefront #product-product #tb-product-description[data-tbm-description-ready]{min-height:0!important;height:auto!important;max-height:none!important}
body.tb-storefront #product-product #tb-product-description [data-tbm-description-body]{
  position:relative!important;display:block!important;inset:auto!important;
  min-height:0!important;height:auto!important;max-height:none!important;overflow:visible!important;
  width:100%!important;min-width:0!important;box-sizing:border-box!important;
  -webkit-line-clamp:unset!important;line-clamp:unset!important;
}
body.tb-storefront #product-product #tb-product-description.tbm-description-folded [data-tbm-description-body]{
  max-height:var(--tbm-description-preview,180px)!important;overflow:hidden!important;overflow:clip!important;
}
body.tb-storefront #product-product #tb-product-description.tbm-description-folded [data-tbm-description-body]::after{
  content:"";position:absolute;inset:auto 0 0;height:38px;pointer-events:none;
  background:linear-gradient(0deg,var(--tbm23-description-bg,#fff),transparent);
}
body.tb-storefront #product-product #tb-product-description .tbm-description-toggle{
  display:inline-flex!important;align-items:center;gap:8px;min-height:44px!important;
  width:auto!important;max-width:100%!important;margin:12px 0 0!important;padding:8px 0!important;
  border:0!important;border-radius:6px!important;background:transparent!important;box-shadow:none!important;
  color:var(--tbm-accent,#0757ff)!important;
  font-family:inherit!important;font-size:14px!important;font-weight:600!important;line-height:1.4!important;
  text-align:left;cursor:pointer;
}
body.tb-storefront #product-product #tb-product-description .tbm-description-toggle::after{content:"⌄";font-size:18px;line-height:1}
body.tb-storefront #product-product #tb-product-description .tbm-description-toggle[aria-expanded=true]::after{content:"⌃"}
body.tb-storefront #product-product #tb-product-description .tbm-description-toggle[hidden]{display:none!important}
body.tb-storefront #product-product #tb-product-description .tbm-description-toggle:focus-visible{outline:2px solid #0757ff;outline-offset:3px}
/* A compact original purchase control; no form/button/quantity clones. */
body.tb-storefront #product-product #product .tb-purchase-actions[data-tbm-buy-controls]{
  display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;
  align-items:flex-end!important;justify-content:flex-start!important;gap:12px!important;
  width:100%!important;min-width:0!important;max-width:100%!important;
  margin-top:18px!important;
}
body.tb-storefront #product-product #product [data-tbm-buy-controls] .tb-quantity-field{
  display:block!important;flex:0 0 144px!important;width:144px!important;min-width:0!important;
}
body.tb-storefront #product-product #product [data-tbm-buy-controls] .tb-quantity-field>.control-label{
  display:block!important;margin:0 0 7px!important;padding:0!important;font-size:12px!important;
  font-weight:500!important;line-height:1.3!important;color:#748197!important;
}
body.tb-storefront #product-product #product [data-tbm-buy-controls] .tb-quantity-control{
  display:grid!important;grid-template-columns:44px minmax(0,1fr) 44px!important;
  box-sizing:border-box!important;align-items:center!important;width:144px!important;height:52px!important;
  min-height:52px!important;padding:0!important;gap:0!important;margin:0!important;
  border:1px solid #e1e6ed!important;border-radius:14px!important;background:#f6f8fb!important;
  overflow:hidden!important;box-shadow:inset 0 1px 0 #fff!important;
}
body.tb-storefront #product-product #product [data-tbm-buy-controls] .tb-quantity-button{
  display:grid!important;place-items:center!important;position:relative!important;inset:auto!important;
  width:44px!important;min-width:0!important;height:50px!important;min-height:44px!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;background:transparent!important;color:#1a2638!important;
  font-size:18px!important;line-height:1!important;transform:none!important;transition:none!important;
}
body.tb-storefront #product-product #product [data-tbm-buy-controls] .tb-quantity-button:disabled{color:#adb7c6!important;opacity:1!important;cursor:default}
body.tb-storefront #product-product #product [data-tbm-buy-controls] #input-quantity{
  display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;
  height:50px!important;min-height:44px!important;margin:0!important;padding:0 2px!important;
  border:0!important;border-radius:0!important;background:transparent!important;
  color:#182438!important;box-shadow:none!important;outline-offset:-3px;
  text-align:center!important;
  font-family:inherit!important;font-size:16px!important;font-weight:600!important;
  -moz-appearance:textfield;appearance:textfield;
}
body.tb-storefront #product-product #product [data-tbm-buy-controls] #input-quantity::-webkit-inner-spin-button,
body.tb-storefront #product-product #product [data-tbm-buy-controls] #input-quantity::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
body.tb-storefront #product-product #product [data-tbm-buy-controls] #button-cart{
  position:relative!important;inset:auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 auto!important;width:auto!important;min-width:56px!important;height:52px!important;min-height:52px!important;
  margin:0!important;padding:0 20px!important;border:1px solid transparent!important;border-radius:14px!important;
  background:var(--tbm-accent,#0757ff)!important;color:#fff!important;
  box-shadow:0 4px 12px rgba(7,87,255,.13)!important;transform:none!important;animation:none!important;transition:none!important;
}
body.tb-storefront #product-product #product [data-tbm-buy-controls] #button-cart[data-tbm-purchase-icon]{
  flex-basis:56px!important;width:56px!important;min-width:56px!important;max-width:56px!important;
  padding:0!important;font-size:0!important;line-height:0!important;letter-spacing:0!important;
}
body.tb-storefront #product-product #product [data-tbm-buy-controls] #button-cart[data-tbm-purchase-icon]>*{display:none!important}
body.tb-storefront #product-product #product [data-tbm-buy-controls] #button-cart[data-tbm-purchase-icon]::before{
  content:""!important;display:block!important;position:static!important;flex:none!important;
  width:24px!important;height:24px!important;margin:0!important;transform:none!important;background:currentColor!important;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3h2l2.2 11.2a2 2 0 0 0 2 1.6h8.6a2 2 0 0 0 2-1.6L21 7H6'/%3E%3Ccircle cx='10' cy='20' r='1'/%3E%3Ccircle cx='18' cy='20' r='1'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat!important;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3h2l2.2 11.2a2 2 0 0 0 2 1.6h8.6a2 2 0 0 0 2-1.6L21 7H6'/%3E%3Ccircle cx='10' cy='20' r='1'/%3E%3Ccircle cx='18' cy='20' r='1'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat!important;
}
body.tb-storefront #product-product #product [data-tbm-buy-controls] #button-cart[data-tbm-purchase-icon]::after{content:none!important;display:none!important}
body.tb-storefront #product-product #product [data-tbm-buy-controls] #button-cart:disabled{opacity:.5!important;box-shadow:none!important;cursor:default}
body.tb-storefront #product-product #product [data-tbm-buy-controls] :is(#button-cart,.tb-quantity-button,#input-quantity):focus:not(:focus-visible){outline:none!important}
body.tb-storefront #product-product #product [data-tbm-buy-controls] :is(#button-cart,.tb-quantity-button,#input-quantity):focus-visible{outline:2px solid #0757ff!important;outline-offset:2px}
@media(hover:hover){
 body.tb-storefront #product-product #product [data-tbm-buy-controls] .tb-quantity-button:not(:disabled):hover{background:#eaf0f8!important;color:#0757ff!important}
 body.tb-storefront #product-product #product [data-tbm-buy-controls] #button-cart:not(:disabled):hover{filter:brightness(.96)}
}
@media(max-width:767px){
 body.tb-storefront #product-product .tbm-details-anchor{margin:16px 0 10px!important}
 body.tb-storefront :is(#product-product,#tbm-details-portal) .tbm-details-nav{justify-content:space-between!important;gap:2px!important;padding:3px 6px!important;border-radius:12px!important}
 body.tb-storefront :is(#product-product,#tbm-details-portal) .tbm-details-nav>.tbm-details-link{padding:8px 4px!important;font-size:clamp(12px,3.35vw,14px)!important}
}
@media(max-width:359px){
 body.tb-storefront :is(#product-product,#tbm-details-portal) .tbm-details-nav{gap:1px!important}
 body.tb-storefront :is(#product-product,#tbm-details-portal) .tbm-details-nav>.tbm-details-link{padding-left:1px!important;padding-right:1px!important}
}
body.tb-storefront:is(.tb-v2-open,.tb-overlay-open) :is(#product-product,#tbm-details-portal) .tbm-details-nav{visibility:hidden!important;pointer-events:none!important}

body.tb-storefront #product-product .tb-key-specs [data-tbm-all-specs]{
  display:inline-flex!important;align-items:center!important;min-height:44px!important;
  max-width:100%!important;margin:10px 0 0!important;padding:8px 0!important;
  background:transparent!important;border:0!important;border-radius:6px!important;box-shadow:none!important;
  color:var(--tbm-accent,#0757ff)!important;font-family:inherit!important;font-size:14px!important;
  font-weight:600!important;line-height:1.4!important;text-align:left!important;cursor:pointer;
}
body.tb-storefront #product-product .tb-key-specs [data-tbm-all-specs]:focus-visible{outline:2px solid #0757ff;outline-offset:2px}

/* ======================================================================
   2.3.7 — scoped surface / typography polish.
   The transparent layout shell is intentional: Product V4 resets its radius
   to zero but leaves the V1 white background underneath the rounded offer.
   Do NOT solve this with overflow:hidden on the summary/purchase form:
   native date pickers, validation, focus rings and shadows must remain usable.
   Navigation docking, content flow and rail gestures remain owned by 2.3.6.
   ====================================================================== */
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active{
  --tbm-ui-radius:20px;
  --tbm-ui-padding:clamp(16px,1.8vw,24px);
  --tbm-ui-text:14px;
  --tbm-ui-muted:#67758b;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-summary{
  padding:0!important;border:0!important;border-radius:var(--tbm-ui-radius)!important;
  background:transparent!important;box-shadow:none!important;overflow:visible!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-summary::before,
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-summary::after{
  background:transparent!important;box-shadow:none!important;border:0!important;border-radius:inherit!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-offer{
  box-sizing:border-box!important;width:100%!important;min-width:0!important;
  padding:var(--tbm-ui-padding)!important;border:1px solid #e1e7f0!important;
  border-radius:var(--tbm-ui-radius)!important;background-clip:padding-box!important;
  box-shadow:0 8px 26px rgba(24,39,64,.045)!important;overflow:visible!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-offer::before,
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-offer::after{
  border-radius:inherit!important;background-clip:padding-box!important;pointer-events:none;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active #product.tb-purchase-panel{
  background:transparent!important;box-shadow:none!important;
}
/* A readable hierarchy instead of oversized price/title vs. microscopic labels. */
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-v4-product-heading h1{
  max-width:none!important;margin:12px 0!important;
  font-size:clamp(24px,2.15vw,32px)!important;font-weight:700!important;
  line-height:1.25!important;letter-spacing:-.025em!important;
  text-wrap:pretty;word-break:normal;overflow-wrap:break-word;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-meta{
  gap:6px 8px!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-meta>div{
  max-width:100%;min-width:0;align-items:baseline!important;padding:5px 8px!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-meta :is(dt,dd){
  font-size:12px!important;line-height:1.4!important;min-width:0;overflow-wrap:anywhere;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-price{
  margin:0 0 16px!important;gap:5px 10px!important;align-items:baseline!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-price__current{
  font-size:clamp(28px,2.6vw,38px)!important;font-weight:750!important;
  line-height:1.15!important;letter-spacing:-.035em!important;
  font-variant-numeric:tabular-nums;white-space:nowrap!important;
  word-break:normal!important;overflow-wrap:normal!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-price__old{
  font-size:15px!important;line-height:1.4!important;white-space:nowrap;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-price__tax,
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-price__points{
  flex-basis:100%;margin:0!important;font-size:12px!important;
  line-height:1.5!important;letter-spacing:0!important;color:var(--tbm-ui-muted)!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-pickup-note{
  box-sizing:border-box!important;margin:14px 0!important;padding:12px 14px!important;
  border-radius:12px!important;gap:4px!important;font-size:13px!important;line-height:1.5!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-pickup-note :is(strong,span,a){
  font-size:inherit!important;line-height:inherit!important;letter-spacing:0!important;
  word-break:normal!important;overflow-wrap:break-word!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-pickup-note strong{font-weight:650!important}
/* Key specs: stable two-column baseline; only genuinely long values wrap. */
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-key-specs{
  box-sizing:border-box!important;width:100%!important;min-width:0!important;
  padding:var(--tbm-ui-padding)!important;margin-top:16px!important;
  border:1px solid #e1e7f0!important;border-radius:var(--tbm-ui-radius)!important;
  background-clip:padding-box!important;box-shadow:none!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-key-specs h2{
  margin:0 0 12px!important;font-size:18px!important;line-height:1.35!important;
  font-weight:650!important;letter-spacing:-.015em!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-key-specs dl{
  width:100%!important;min-width:0!important;margin:0!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-key-specs dl>div{
  display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:6px 12px!important;align-items:baseline!important;padding:9px 0!important;
  margin:0!important;border-bottom:1px solid #edf1f6!important;
  font-size:var(--tbm-ui-text)!important;line-height:1.5!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-key-specs :is(dt,dd){
  min-width:0!important;max-width:100%!important;margin:0!important;padding:0!important;
  font-size:inherit!important;line-height:inherit!important;letter-spacing:0!important;
  white-space:normal!important;word-break:normal!important;overflow-wrap:anywhere!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-key-specs dt{color:var(--tbm-ui-muted)!important;font-weight:400!important}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-key-specs dd{text-align:right!important;color:#1d293d!important;font-weight:500!important}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-key-specs [data-tbm-all-specs]{
  margin-top:8px!important;font-size:13px!important;line-height:1.4!important;min-height:44px!important;
}
/* Only type/spacing changes in detailed content, not its height or position. */
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-detail-section>h2,
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tbm23-pickup-copy>h2{
  margin:0 0 16px!important;font-size:clamp(20px,1.8vw,26px)!important;
  line-height:1.3!important;font-weight:700!important;letter-spacing:-.02em!important;
  overflow-wrap:break-word;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active #tb-product-attributes :is(dt,dd){
  margin:0!important;min-width:0!important;font-size:var(--tbm-ui-text)!important;
  line-height:1.5!important;letter-spacing:0!important;overflow-wrap:anywhere!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active #tb-product-attributes dl>div{gap:8px 16px!important;padding:10px 0!important;align-items:baseline!important}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active #tb-product-description [data-tbm-description-body]{
  font-size:14px!important;line-height:1.65!important;color:#536178!important;
  letter-spacing:0!important;word-break:normal!important;overflow-wrap:anywhere!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active #tb-product-description [data-tbm-description-body] :is(p,li,span){font-size:inherit!important;line-height:inherit!important}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active #tb-product-description [data-tbm-description-body] p{margin:0 0 12px!important}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active #tb-product-description [data-tbm-description-body]>:last-child{margin-bottom:0!important}
/* Fixed 52px purchase controls from 2.3.6 retained. Focus stays inside the
   segmented quantity surface, so clipping cannot swallow the keyboard ring. */
body.tb-storefront #product-product #product [data-tbm-buy-controls] .tb-quantity-control:focus-within{
  border-color:#abc4f8!important;box-shadow:0 0 0 3px rgba(7,87,255,.08)!important;
}
body.tb-storefront #product-product #product [data-tbm-buy-controls] :is(.tb-quantity-button,#input-quantity):focus-visible{outline-offset:-3px!important}
body.tb-storefront #product-product #product [data-tbm-buy-controls] #button-cart{font-family:inherit!important;font-size:14px!important;font-weight:650!important;line-height:1.3!important;white-space:nowrap!important}
body.tb-storefront #product-product #product [data-tbm-buy-controls] #button-cart[data-tbm-purchase-icon]{font-size:0!important;line-height:0!important}
/* Trust cards keep their existing safe responsive grid; eliminate tall pads. */
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-services{gap:10px!important;margin:20px 0 16px!important}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-service{
  min-height:0!important;padding:14px!important;gap:10px!important;
  grid-template-columns:32px minmax(0,1fr)!important;border-radius:16px!important;
}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-service>i{width:32px!important;height:32px!important;font-size:16px!important;border-radius:10px!important}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-service strong{margin:0 0 3px!important;font-size:13px!important;line-height:1.4!important;font-weight:650!important;letter-spacing:0!important}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-service small{font-size:12px!important;line-height:1.5!important;color:var(--tbm-ui-muted)!important}
/* Rail headings and cards align left. Explicit narrow-card footer rows stop
   prices competing with two action buttons for the same 130px of space. */
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tbm-native-heading{min-width:0!important;width:100%!important;text-align:left!important}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tbm-native-title-row{justify-content:flex-start!important;align-items:baseline!important;gap:8px!important}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tbm-native-title-row h2{font-size:clamp(18px,1.6vw,23px)!important;line-height:1.3!important;font-weight:650!important;letter-spacing:-.02em!important;text-wrap:pretty}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tbm-native-kicker{font-size:11px!important;line-height:1.4!important;letter-spacing:.06em!important}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tbm23-card-title{font-size:14px!important;line-height:1.4!important;min-height:2.8em!important;text-align:left!important;font-weight:600!important}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tbm23-stock{font-size:12px!important;line-height:1.4!important;min-height:17px!important;text-align:left!important}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tbm23-price strong{font-size:16px!important;line-height:1.3!important;font-weight:700!important;white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;letter-spacing:-.02em!important;font-variant-numeric:tabular-nums}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tbm23-price del{font-size:12px!important;white-space:nowrap!important;line-height:1.4!important}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active [data-tbm23-density="compact"] .tbm23-card-footer{display:grid!important;grid-template-columns:minmax(0,1fr)!important;align-items:end!important;gap:8px!important;padding-top:6px!important}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active [data-tbm23-density="compact"] .tbm23-price{width:100%!important}
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active [data-tbm23-density="compact"] .tbm23-card-actions{justify-self:end!important;margin-left:0!important}
@media(max-width:767px){
  body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active{--tbm-ui-padding:16px;--tbm-ui-radius:16px;--tbm-ui-text:13px}
  body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-v4-product-heading h1{font-size:clamp(22px,5.4vw,27px)!important;line-height:1.28!important}
  body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-price__current{font-size:clamp(26px,7.2vw,32px)!important}
  body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-service{padding:12px!important;gap:8px!important}
  body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active #tb-product-description,
  body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active #tb-product-attributes{padding:16px!important;border-radius:16px!important}
  body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active #product :is(input.form-control,textarea.form-control,select.form-control),
  body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active #form-review :is(input.form-control,textarea.form-control){font-size:16px!important}
  body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tbm-native-track[data-tbm23-visible="2"] .tbm23-card-title{font-size:13px!important;min-height:2.8em!important;line-height:1.4!important}
  body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tbm-native-track[data-tbm23-visible="2"] .tbm23-price strong{font-size:14px!important}
  body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tbm-native-track[data-tbm23-visible="2"] .tbm23-action{flex-basis:44px!important;width:44px!important;height:44px!important;min-height:44px!important}
  body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tbm-native-track[data-tbm23-visible="2"] .tbm23-card-actions{gap:6px!important}
  body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-sticky__price{font-size:clamp(17px,4.5vw,20px)!important;line-height:1.25!important;letter-spacing:-.025em!important;white-space:nowrap!important}
  body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tb-product-sticky .btn{font-size:14px!important;line-height:1.3!important;min-height:44px!important;padding:10px 16px!important;white-space:nowrap!important}
}
@media(max-width:359px){
  body.tb-storefront #product-product #product .tb-purchase-actions[data-tbm-buy-controls]{gap:8px!important}
  body.tb-storefront #product-product #product [data-tbm-buy-controls] #button-cart:not([data-tbm-purchase-icon]){padding-left:12px!important;padding-right:12px!important}
}
/* Reserve the old-price line in every card, so discounted/non-discounted
   products keep their CURRENT prices and action rows aligned. */
body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tbm23-price{
  min-height:42px!important;justify-content:flex-start!important;
}
@media(max-width:767px){
  body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tbm-native-track[data-tbm23-visible="2"] .tbm23-stock{font-size:12px!important;line-height:1.4!important;min-height:17px!important}
  body.tb-storefront #product-product.tbm-product-takeover.tbm-experience-active .tbm-native-track[data-tbm23-visible="2"] .tbm23-price del{font-size:12px!important;line-height:1.4!important}
}
