
/* ---- breadcrumb ---- */
.breadcrumb{padding:20px 0 0;font-size:12.5px;color:rgba(18,18,18,0.5);display:flex;gap:8px;flex-wrap:wrap;}
.breadcrumb a{color:rgba(18,18,18,0.55);transition:color .2s;}
.breadcrumb a:hover{color:var(--science);}
.breadcrumb .cur{color:var(--ink);font-weight:600;}

/* ---- product hero ---- */
.pd-hero{display:grid;grid-template-columns:1fr 1fr;gap:56px;padding:26px 0 60px;align-items:flex-start;}
@media(max-width:900px){.pd-hero{grid-template-columns:1fr;gap:30px;}}

/* slider */
.pd-slider{position:relative;}
.pd-slide-main{
  aspect-ratio:1/1.05;border-radius:20px;background:var(--foam);overflow:hidden;
  display:flex;align-items:center;justify-content:center;position:relative;
}
.pd-slide-main .track{display:flex;width:100%;height:100%;transition:transform .5s var(--ease);}
.pd-slide-main .slide{min-width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:30px;}
.pd-slide-main .slide img{width:100%;height:100%;object-fit:cover;border-radius:12px;}
.pd-slide-main .slide svg{height:70%;width:auto;}
.pd-nav-btn{
  position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;
  background:#fff;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;
  opacity:0;transition:opacity .25s var(--ease), transform .2s var(--ease);z-index:5;
}
.pd-slider:hover .pd-nav-btn{opacity:1;}
.pd-nav-btn:hover{transform:translateY(-50%) scale(1.08);}
.pd-nav-btn.prev{left:14px;} .pd-nav-btn.next{right:14px;}
.pd-nav-btn svg{width:16px;height:16px;}
.pd-badges{position:absolute;top:16px;left:16px;display:flex;flex-direction:column;gap:6px;z-index:4;}
.pd-badge{font-family:var(--mono);font-size:10.5px;padding:5px 10px;border-radius:20px;color:#fff;}
.pd-badge.sale{background:var(--science);}
.pd-badge.out{background:#C6494A;}
.pd-thumbs{display:flex;gap:10px;margin-top:14px;overflow-x:auto;padding-bottom:4px;}
.pd-thumb{
  flex:0 0 72px;height:80px;border-radius:12px;background:var(--foam);overflow:hidden;cursor:pointer;
  border:2px solid transparent;transition:border-color .25s var(--ease), opacity .25s;
  display:flex;align-items:center;justify-content:center;
}
.pd-thumb img{width:100%;height:100%;object-fit:cover;}
.pd-thumb.active{border-color:var(--science);}
.pd-dots{display:none;gap:6px;justify-content:center;margin-top:12px;}
.pd-dot{width:6px;height:6px;border-radius:50%;background:var(--line);transition:background .25s,width .25s;}
.pd-dot.active{background:var(--science);width:18px;border-radius:6px;}
@media(max-width:560px){.pd-thumbs{display:none;} .pd-dots{display:flex;}}

/* info column */
.pd-info .cat{font-family:var(--mono);font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--teal-dark);}
.pd-info h1{font-family:var(--display);font-size:clamp(26px,3vw,36px);margin:10px 0 8px;line-height:1.15;}
.pd-rating{display:flex;align-items:center;gap:8px;margin-bottom:16px;}
.ss-stars{color:#E3A93A;letter-spacing:1px;}
.pd-rating .count{font-size:12px;color:rgba(18,18,18,.5);}
.pd-price-row{display:flex;align-items:baseline;gap:12px;margin-bottom:6px;}
.pd-price{font-family:var(--mono);font-size:28px;font-weight:700;color:var(--ink);}
.pd-price-old{font-family:var(--mono);font-size:16px;color:rgba(18,18,18,.4);text-decoration:line-through;}
.pd-save{font-family:var(--mono);font-size:11.5px;color:var(--teal-dark);background:rgba(47,167,154,0.12);padding:3px 9px;border-radius:20px;}
.pd-stock-row{margin:6px 0 20px;font-size:12.5px;}
.pd-stock-ok{color:var(--teal-dark);display:flex;align-items:center;gap:6px;}
.pd-stock-ok svg{width:14px;height:14px;}
.pd-desc{font-size:14px;line-height:1.7;color:rgba(18,18,18,0.7);margin-bottom:24px;}

.pd-buy-row{display:flex;gap:12px;margin-bottom:14px;margin-top:24px;flex-wrap:wrap;}
.pd-qty{display:flex;align-items:center;border:1px solid var(--line);border-radius:14px;overflow:hidden;flex:0 0 auto;}
.pd-qty button{width:44px;height:54px;font-size:18px;color:var(--science);transition:background .2s;}
.pd-qty button:hover{background:var(--foam);}
.pd-qty button:disabled{opacity:.3;pointer-events:none;}
.pd-qty span{min-width:44px;text-align:center;font-family:var(--mono);font-weight:700;font-size:15px;}
.pd-add-btn{
  flex:1 1 220px;background:var(--ink);color:#fff;border-radius:14px;font-weight:700;font-size:14.5px;
  display:flex;align-items:center;justify-content:center;gap:10px;transition:background .3s var(--ease),transform .2s,box-shadow .3s var(--ease);
}
.pd-add-btn:hover{background:var(--science);transform:translateY(-2px);box-shadow:0 16px 34px -14px rgba(236,85,152,.5);}
.pd-add-btn:disabled{background:rgba(18,18,18,0.25);pointer-events:none;transform:none;box-shadow:none;}
.pd-add-btn svg{width:16px;height:16px;}
.pd-wish-btn{
  width:54px;height:54px;flex:0 0 auto;border:1px solid var(--line);border-radius:14px;
  display:flex;align-items:center;justify-content:center;color:var(--science);
  transition:background .2s,border-color .2s,transform .2s;
}
.pd-wish-btn:hover{background:var(--foam);transform:translateY(-2px);}
.pd-wish-btn svg{width:19px;height:19px;transition:fill .2s,color .2s,stroke .2s;}
.pd-wish-btn.active{border-color:#C6494A;}
.pd-wish-btn.active svg{fill:#C6494A;stroke:#C6494A;color:#C6494A;}
.pd-added-flash{background:var(--teal-dark)!important;}

.pd-trust{display:flex;flex-direction:column;gap:10px;margin-top:22px;padding-top:22px;border-top:1px solid var(--line);}
.pd-trust-item{display:flex;align-items:center;gap:10px;font-size:12.5px;color:rgba(18,18,18,.65);}
.pd-trust-item svg{width:17px;height:17px;color:var(--teal-dark);flex:0 0 auto;}

/* tabs */
.pd-tabs{margin-top:10px;border-top:1px solid var(--line);padding-top:6px;}
.pd-tab-heads{display:flex;gap:6px;border-bottom:1px solid var(--line);}
.pd-tab-head{padding:14px 6px;font-size:13.5px;font-weight:600;color:rgba(18,18,18,.45);position:relative;margin-right:22px;transition:color .25s;}
.pd-tab-head.active{color:var(--ink);}
.pd-tab-head.active::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--science);border-radius:2px;}
.pd-tab-panel{display:none;padding:18px 2px 6px;font-size:13.5px;line-height:1.8;color:rgba(18,18,18,.7);}
.pd-tab-panel.active{display:block;animation:ssItemIn .35s var(--ease);}
.pd-tab-panel ul{padding-left:18px;margin-top:6px;}

/* related */
.pd-related{padding:20px 0 80px;border-top:1px solid var(--line);margin-top:20px;}
.pd-related h2{font-family:var(--display);font-size:24px;margin-bottom:26px;}
.pd-related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
@media(max-width:900px){.pd-related-grid{grid-template-columns:repeat(2,1fr);}}

/* not found */
.pd-notfound{padding:100px 20px;text-align:center;}
.pd-notfound h1{font-family:var(--display);font-size:26px;margin-bottom:12px;}
.pd-notfound p{color:rgba(18,18,18,.55);margin-bottom:22px;}
.pd-skeleton{padding:40px 0;}

/* ---------- shimmer mientras carga el producto ---------- */
@keyframes pd-shimmer{ 0%{ background-position:-400px 0; } 100%{ background-position:400px 0; } }
.pd-skel-shimmer{
  background:linear-gradient(90deg, var(--foam) 25%, #fff 37%, var(--foam) 63%);
  background-size:800px 100%;
  animation:pd-shimmer 1.6s linear infinite;
  border-radius:8px;
}
.pd-skel-hero{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:start; padding:26px 0 60px; }
@media(max-width:900px){ .pd-skel-hero{ grid-template-columns:1fr; gap:30px; } }
.pd-skel-img{ aspect-ratio:1/1; border-radius:16px; }
.pd-skel-line{ height:14px; margin-bottom:14px; }