/* ==========================================================================
   Single product — premium two-column redesign (.lss-pp*)
   ========================================================================== */

.lss-pp-page{padding-top:var(--header-h)}
.lss-pp{padding:14px 0 70px}
.lss-pp__wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:44px;align-items:start}

/* ---------- Breadcrumb (clears the fixed header) ---------- */
.lss-pp__crumbs{max-width:var(--container-w);margin-inline:auto;padding:0 24px;margin-block:22px;font-size:12.5px;color:var(--silver-500);display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.lss-pp__crumbs a{color:var(--silver-500);transition:color .2s}
.lss-pp__crumbs a:hover{color:var(--cyan-400)}
.lss-pp__crumbs span[aria-hidden]{opacity:.5}
.lss-pp__crumbs .current{color:var(--silver-300)}

/* ---------- Gallery ---------- */
.lss-pp__gallery{position:sticky;top:calc(var(--header-h) + 18px)}
.lss-pp__stage{position:relative;border-radius:22px;padding:2px;background:var(--grad-brand);box-shadow:0 0 0 1px rgba(56,209,255,.18),0 24px 60px -24px rgba(46,155,255,.5),0 0 60px -10px rgba(217,70,239,.25)}
.lss-pp__stage-inner{position:relative;border-radius:20px;overflow:hidden;background:var(--navy-900);aspect-ratio:1/1;display:flex;align-items:center;justify-content:center}
.lss-pp__stage-inner img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-premium)}
.lss-pp__stage:hover .lss-pp__stage-inner img{transform:scale(1.06)}
.lss-pp__stage-badge{position:absolute;top:14px;inset-inline-start:14px;z-index:2;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--blue-500),var(--cyan-400));box-shadow:0 6px 18px -6px rgba(46,155,255,.7)}
.lss-pp__zoom-hint{position:absolute;bottom:12px;inset-inline-end:12px;z-index:2;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:0;border-radius:999px;font-size:11.5px;color:var(--silver-300);background:rgba(7,11,20,.6);backdrop-filter:blur(6px);cursor:pointer}
.lss-pp__zoom-hint:hover{color:var(--cyan-400)}
.lss-pp__thumbs{display:flex;gap:12px;margin-top:14px;flex-wrap:wrap}
.lss-pp__thumb{width:78px;height:78px;border-radius:14px;overflow:hidden;border:1px solid var(--glass-border);background:var(--navy-900);cursor:pointer;transition:border-color .25s,transform .25s;padding:0}
.lss-pp__thumb img{width:100%;height:100%;object-fit:cover}
.lss-pp__thumb.is-active,.lss-pp__thumb:hover{border-color:var(--cyan-400);transform:translateY(-2px)}

/* ---------- Info column ---------- */
.lss-pp__eyebrow{display:inline-block;font-size:12px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--cyan-400);margin-bottom:10px}
.lss-pp__title{font-family:var(--font-display);font-size:clamp(1.7rem,3.4vw,2.5rem);font-weight:800;line-height:1.25;margin:0 0 18px}
.lss-pp__title.is-glow{color:#fff;text-shadow:0 0 24px rgba(56,209,255,.35),0 0 48px rgba(46,155,255,.18)}

.lss-pp__price{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.lss-pp__price-now{font-family:var(--font-display);font-size:2.1rem;font-weight:800;color:#fff}
.lss-pp__price-cur{font-size:1.1rem;color:var(--silver-300);font-weight:700}
.lss-pp__price-old{font-size:1.15rem;color:var(--silver-500);text-decoration:line-through}
.lss-pp__price-pill{padding:4px 10px;border-radius:999px;font-size:12px;font-weight:800;color:#fff;background:linear-gradient(135deg,#e11d48,#d946ef);box-shadow:0 6px 16px -6px rgba(217,70,239,.6)}

.lss-pp__badges{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:22px}
.lss-pp__badge{display:flex;align-items:center;gap:10px;padding:11px 13px;border-radius:14px;font-size:13px;font-weight:600;color:var(--silver-300)}
.lss-pp__badge svg{width:20px;height:20px;color:var(--cyan-400);flex:0 0 auto}

.lss-pp__desc{padding:16px 18px;border-radius:16px;line-height:1.8;font-size:14.5px;color:var(--silver-300);margin-bottom:16px}
.lss-pp__desc p{margin:0}

.lss-pp__delivery{display:flex;align-items:center;gap:10px;font-size:13.5px;color:#7fe0a6;margin-bottom:22px}
.lss-pp__delivery svg{width:18px;height:18px;flex:0 0 auto}

.lss-pp__form{margin:0}
.lss-pp__buy{display:flex;gap:12px;align-items:stretch;margin-bottom:14px}
.lss-pp__qty{display:inline-flex;align-items:center;border-radius:14px;border:1px solid var(--glass-border);background:var(--navy-900);overflow:hidden;flex:0 0 auto}
.lss-pp__qty button{width:44px;height:52px;background:none;border:0;color:var(--silver-300);font-size:20px;line-height:1}
.lss-pp__qty button:hover{color:var(--cyan-400)}
.lss-pp__qty input{width:48px;height:52px;text-align:center;background:none;border:0;color:#fff;font-size:16px;font-weight:700;-moz-appearance:textfield}
.lss-pp__qty input::-webkit-outer-spin-button,.lss-pp__qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.lss-pp__cta{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;border:0;border-radius:14px;font-family:var(--font-display);font-size:16px;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--blue-500),var(--cyan-400) 60%,var(--magenta-400));background-size:160% 100%;box-shadow:0 10px 30px -10px rgba(46,155,255,.7);transition:transform .3s var(--ease-premium),box-shadow .3s,background-position .5s;cursor:pointer}
.lss-pp__cta:hover{transform:translateY(-2px);box-shadow:0 16px 40px -12px rgba(56,209,255,.8);background-position:100% 0}
.lss-pp__cta:focus-visible{outline:2px solid #fff;outline-offset:3px}
.lss-pp__cta.is-loading{pointer-events:none;opacity:.85}
.lss-pp__cta .spin{width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;animation:pp-spin .7s linear infinite;display:none}
.lss-pp__cta.is-loading .spin{display:inline-block}
.lss-pp__cta.is-loading .lbl-default,.lss-pp__cta .lbl-loading{display:none}
.lss-pp__cta.is-loading .lbl-loading{display:inline}
@keyframes pp-spin{to{transform:rotate(360deg)}}

.lss-pp__cta2{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:50px;border-radius:14px;font-weight:700;font-size:14.5px;color:#d6f4e2;background:rgba(37,211,102,.1);border:1px solid rgba(37,211,102,.4);transition:background .25s,border-color .25s,transform .25s;margin-bottom:16px}
.lss-pp__cta2:hover{background:rgba(37,211,102,.16);border-color:rgba(37,211,102,.6);transform:translateY(-1px)}
.lss-pp__cta2 svg{width:20px;height:20px;color:#25d366}

.lss-pp__pay{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--silver-500);margin-bottom:18px}
.lss-pp__pay svg{width:18px;height:18px;color:#25d366}

.lss-pp__cat{display:inline-flex}
.lss-pp__cat a{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border-radius:999px;font-size:12.5px;font-weight:700;color:var(--silver-300);background:var(--navy-800);border:1px solid var(--glass-border);transition:border-color .2s,color .2s}
.lss-pp__cat a:hover{border-color:var(--cyan-400);color:var(--cyan-400)}

/* ---------- Tabs ---------- */
.lss-pp__tabs{max-width:var(--container-w);margin:56px auto 0;padding:0 24px}
.lss-pp__tabnav{display:flex;gap:8px;border-bottom:1px solid var(--glass-border);margin-bottom:22px;flex-wrap:wrap}
.lss-pp__tabbtn{position:relative;padding:12px 18px;background:none;border:0;font-family:var(--font-display);font-size:15px;font-weight:700;color:var(--silver-500);transition:color .2s}
.lss-pp__tabbtn.is-active{color:#fff}
.lss-pp__tabbtn.is-active::after{content:"";position:absolute;inset-inline:10px;bottom:-1px;height:2px;border-radius:2px;background:var(--grad-brand)}
.lss-pp__tabbtn:focus-visible{outline:2px solid var(--cyan-400);outline-offset:2px;border-radius:6px}
.lss-pp__panel{display:none;line-height:1.9;color:var(--silver-300);font-size:14.5px;max-width:820px}
.lss-pp__panel.is-active{display:block;animation:pp-fade .4s var(--ease-premium)}
@keyframes pp-fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.lss-pp__panel ul{margin:12px 0;padding-inline-start:4px}
.lss-pp__panel li{position:relative;padding-inline-start:22px;margin-bottom:8px;list-style:none}
.lss-pp__panel li::before{content:"";position:absolute;inset-inline-start:0;top:9px;width:8px;height:8px;border-radius:50%;background:var(--cyan-400);box-shadow:0 0 10px var(--cyan-400)}
.lss-pp__acc{border:1px solid var(--glass-border);border-radius:12px;margin-bottom:10px;overflow:hidden}
.lss-pp__acc summary{cursor:pointer;padding:14px 16px;font-weight:700;color:#fff;list-style:none;display:flex;justify-content:space-between;align-items:center}
.lss-pp__acc summary::-webkit-details-marker{display:none}
.lss-pp__acc summary::after{content:"+";color:var(--cyan-400);font-size:20px}
.lss-pp__acc[open] summary::after{content:"–"}
.lss-pp__acc p{padding:0 16px 14px;margin:0;color:var(--silver-300)}

/* ---------- Related ---------- */
.lss-pp__related{max-width:var(--container-w);margin:60px auto 0;padding:0 24px}
.lss-pp__related h2{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);font-weight:800;margin:0 0 24px}
.lss-related__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}

/* ---------- Lightbox ---------- */
.lss-pp__lightbox{position:fixed;inset:0;z-index:1100;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(4,7,13,.9);backdrop-filter:blur(6px)}
.lss-pp__lightbox.is-open{display:flex;animation:pp-fade .25s ease}
.lss-pp__lightbox img{max-width:min(92vw,900px);max-height:88vh;border-radius:16px;border:1px solid var(--glass-border);box-shadow:0 30px 80px -20px #000}
.lss-pp__lightbox-close{position:absolute;top:18px;inset-inline-end:22px;width:44px;height:44px;border-radius:50%;border:1px solid var(--glass-border);background:rgba(9,15,28,.8);color:#fff;font-size:18px;cursor:pointer}
.lss-pp__lightbox-close:hover{color:var(--cyan-400)}

/* ---------- Mobile sticky add-to-cart bar ---------- */
.lss-pp__sticky{position:fixed;inset-inline:0;bottom:0;z-index:850;display:none;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;background:rgba(9,15,28,.92);backdrop-filter:blur(14px);border-top:1px solid var(--glass-border)}
.lss-pp__sticky-price{font-family:var(--font-display);font-weight:800;color:#fff;font-size:18px;white-space:nowrap}
.lss-pp__sticky .lss-pp__cta{height:46px;font-size:15px;flex:0 1 auto;padding-inline:22px}

/* ---------- Responsive ---------- */
@media(max-width:900px){
  .lss-pp__wrap{grid-template-columns:1fr;gap:26px}
  .lss-pp__gallery{position:static}
  .lss-related__grid{grid-template-columns:repeat(2,1fr)}
  .lss-pp__sticky{display:flex}
  body.single-product{padding-bottom:74px}
}
@media(max-width:520px){
  .lss-pp__badges{grid-template-columns:1fr}
}
@media (prefers-reduced-motion: reduce){
  .lss-pp__stage:hover .lss-pp__stage-inner img{transform:none}
  .lss-pp__panel.is-active,.lss-pp__lightbox.is-open{animation:none}
}
