/* ============================================================
   FR RETURN — Interactividad (complemento, no reemplaza estilos)
   Requiere las variables :root definidas en cada página.
   ============================================================ */

/* ---------- Utilidades ---------- */
[hidden]{display:none !important;}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

/* ---------- Placeholder de marca (reemplaza "IMG 01") ---------- */
.img-slot.ph{border:1px solid rgba(255,255,255,.08); background:linear-gradient(135deg,#171a21,#0c0e12 65%); gap:8px;}
.img-slot.ph img.ph-logo{width:42px; height:42px; border-radius:50%; opacity:.22; filter:grayscale(1);}
.img-slot.ph span.ph-txt{font-size:9.5px; font-weight:700; letter-spacing:1.6px; text-transform:uppercase; color:rgba(255,255,255,.34);}

/* ---------- Microinteracciones de tarjetas ---------- */
.product-card{transition:border-color .2s ease, transform .25s ease, box-shadow .25s ease;}
.product-card:hover{transform:translateY(-3px); box-shadow:0 14px 30px rgba(0,0,0,.35);}
.product-card .thumb{overflow:hidden;}
.product-card .thumb img{transition:transform .5s cubic-bezier(.2,.7,.2,1);}
.product-card:hover .thumb img{transform:scale(1.06);}
.banner{transition:transform .35s ease;}
.banner:hover{transform:scale(1.005);}
.banner::after{content:""; position:absolute; inset:0; background:rgba(0,0,0,0); transition:background .3s ease; pointer-events:none;}
.banner:hover::after{background:rgba(0,0,0,.08);}

/* ---------- Favoritos ---------- */
.fav-btn{transition:transform .15s ease, color .2s ease, background .2s ease;}
.fav-btn:hover{transform:scale(1.12);}
.fav-btn.on{color:var(--magenta); background:rgba(255,10,167,.14);}
@keyframes favPop{0%{transform:scale(1);}45%{transform:scale(1.35);}100%{transform:scale(1);}}
.fav-btn.pop{animation:favPop .35s ease;}

/* ---------- Carrito ---------- */
.cart{display:inline-flex; align-items:center; justify-content:center;}
.cart svg{width:21px; height:21px; display:block;}

/* ---------- Badge del carrito ---------- */
.cart .badge{transition:transform .2s ease;}
.cart .badge.bump{animation:bump .4s ease;}
@keyframes bump{0%{transform:scale(1);}40%{transform:scale(1.45);}100%{transform:scale(1);}}

/* ---------- Animación de aparición ---------- */
.reveal{opacity:0; transform:translateY(18px); transition:opacity .6s ease, transform .6s ease;}
.reveal.in{opacity:1; transform:none;}
@media (prefers-reduced-motion: reduce){
  .reveal{opacity:1; transform:none; transition:none;}
}

/* ---------- Toasts ---------- */
.fr-toasts{position:fixed; left:50%; bottom:24px; transform:translateX(-50%); z-index:200; display:flex; flex-direction:column; gap:10px; width:min(92vw,420px); pointer-events:none;}
.fr-toast{
  pointer-events:auto; display:flex; align-items:center; gap:12px;
  background:#15181f; border:1px solid rgba(255,255,255,.12); border-left:3px solid var(--neon);
  border-radius:6px; padding:12px 14px; box-shadow:0 16px 40px rgba(0,0,0,.55);
  font-size:12.5px; font-weight:600; color:var(--blanco);
  animation:toastIn .28s cubic-bezier(.2,.8,.3,1);
}
.fr-toast.out{animation:toastOut .22s ease forwards;}
.fr-toast .ico{width:26px;height:26px;border-radius:50%;background:rgba(233,255,24,.15);color:var(--neon);display:flex;align-items:center;justify-content:center;font-size:13px;flex:none;}
.fr-toast.ok{border-left-color:var(--verde);} .fr-toast.ok .ico{background:rgba(0,201,107,.15); color:var(--verde);}
.fr-toast.warn{border-left-color:var(--magenta);} .fr-toast.warn .ico{background:rgba(255,10,167,.15); color:var(--magenta);}
.fr-toast .msg{flex:1; min-width:0; line-height:1.45;}
.fr-toast .msg b{display:block; font-weight:700;}
.fr-toast .act{
  background:var(--neon); color:var(--negro); border:none; border-radius:3px;
  font-size:10.5px; font-weight:800; text-transform:uppercase; letter-spacing:.4px;
  padding:7px 10px; white-space:nowrap;
}
.fr-toast .x{background:none; border:none; color:var(--gris); font-size:14px; line-height:1; padding:2px;}
@keyframes toastIn{from{opacity:0; transform:translateY(14px);} to{opacity:1; transform:none;}}
@keyframes toastOut{to{opacity:0; transform:translateY(10px);}}

/* ---------- Mini-carrito (drawer) ---------- */
.mc-overlay{
  position:fixed; inset:0; background:rgba(5,6,8,.65); backdrop-filter:blur(2px);
  z-index:150; opacity:0; pointer-events:none; transition:opacity .25s ease;
}
.mc-overlay.open{opacity:1; pointer-events:auto;}
.mc-drawer{
  position:fixed; top:0; right:0; bottom:0; width:min(92vw,400px); z-index:160;
  background:#0f1116; border-left:1px solid rgba(255,255,255,.08);
  display:flex; flex-direction:column; transform:translateX(102%);
  transition:transform .3s cubic-bezier(.2,.8,.25,1);
}
.mc-drawer.open{transform:none;}
.mc-head{display:flex; align-items:center; justify-content:space-between; padding:18px 20px; border-bottom:1px solid rgba(255,255,255,.08);}
.mc-head h3{font-family:'Bebas Neue',sans-serif; font-weight:400; font-size:20px; letter-spacing:.5px;}
.mc-head button{background:none; border:none; color:var(--gris); font-size:18px;}
.mc-head button:hover{color:var(--blanco);}
.mc-body{flex:1; overflow:auto; padding:8px 20px;}
.mc-item{display:grid; grid-template-columns:56px 1fr auto; gap:12px; align-items:center; padding:14px 0; border-bottom:1px solid rgba(255,255,255,.06);}
.mc-thumb{position:relative; width:56px; height:56px; border-radius:4px; overflow:hidden; background:#fff; border:1px solid rgba(255,255,255,.1);}
.mc-thumb img{width:100%; height:100%; object-fit:contain;}
.mc-thumb .img-slot{position:absolute; inset:0; min-height:0; border-width:1px;}
.mc-thumb .img-slot .ph-logo{width:20px;height:20px;}
.mc-thumb .img-slot .ph-txt{display:none;}
.mc-name{font-size:12px; font-weight:700; line-height:1.35;}
.mc-meta{font-size:10.5px; color:var(--gris); margin-top:3px;}
.mc-qty{display:flex; align-items:center; gap:6px; margin-top:8px;}
.mc-qty button{width:22px; height:22px; border-radius:3px; border:1px solid rgba(255,255,255,.18); background:none; color:var(--blanco); font-size:11px; line-height:1;}
.mc-qty button:hover{border-color:var(--neon); color:var(--neon);}
.mc-qty span{font-size:11.5px; font-weight:700; min-width:16px; text-align:center;}
.mc-right{text-align:right;}
.mc-price{font-size:12px; font-weight:700; color:var(--neon); white-space:nowrap;}
.mc-remove{background:none; border:none; color:var(--gris); font-size:12px; margin-top:8px;}
.mc-remove:hover{color:var(--magenta);}
.mc-empty{padding:40px 10px; text-align:center; color:var(--gris); font-size:12.5px; font-weight:600;}
.mc-empty .big{font-family:'Bebas Neue',sans-serif; font-size:24px; color:var(--blanco); display:block; margin-bottom:6px;}
.mc-foot{border-top:1px solid rgba(255,255,255,.08); padding:18px 20px; display:flex; flex-direction:column; gap:10px;}
.mc-foot .row{display:flex; justify-content:space-between; font-size:12.5px; color:#C7C9CE;}
.mc-foot .row b{color:var(--blanco); font-size:15px;}
.mc-foot .row b.neon{color:var(--neon);}
.mc-actions{display:grid; grid-template-columns:1fr; gap:10px;}
.mc-btn{border-radius:3px; padding:12px; text-align:center; font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.4px; border:1px solid rgba(255,255,255,.18); color:var(--blanco); background:none;}
.mc-btn:hover{border-color:var(--neon); color:var(--neon);}
.mc-btn.primary{background:var(--neon); border-color:var(--neon); color:var(--negro);}
.mc-btn.primary:hover{box-shadow:0 10px 26px rgba(233,255,24,.25);}

/* ---------- Quick view (modal) ---------- */
.qv-overlay{position:fixed; inset:0; z-index:170; background:rgba(5,6,8,.72); backdrop-filter:blur(3px); display:flex; align-items:center; justify-content:center; padding:20px; opacity:0; pointer-events:none; transition:opacity .22s ease;}
.qv-overlay.open{opacity:1; pointer-events:auto;}
.qv-modal{
  width:min(94vw,880px); max-height:88vh; overflow:auto; background:#0f1116;
  border:1px solid rgba(255,255,255,.1); border-radius:8px; position:relative;
  display:grid; grid-template-columns:1fr 1fr; transform:translateY(14px) scale(.98); transition:transform .25s ease;
}
.qv-overlay.open .qv-modal{transform:none;}
.qv-media{background:#fff; position:relative; min-height:320px;}
.qv-media img{width:100%; height:100%; object-fit:contain; position:absolute; inset:0;}
.qv-media .img-slot{position:absolute; inset:0; min-height:0;}
.qv-info{padding:28px; display:flex; flex-direction:column;}
.qv-close{position:absolute; top:12px; right:12px; z-index:3; width:32px; height:32px; border-radius:50%; border:none; background:rgba(11,13,16,.75); color:var(--blanco); font-size:15px;}
.qv-close:hover{background:var(--magenta);}
.qv-brand{font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.6px; color:var(--gris);}
.qv-name{font-family:'Bebas Neue',sans-serif; font-size:26px; line-height:1.05; letter-spacing:.4px; margin-top:6px;}
.qv-rating{font-size:11px; color:var(--gris); margin-top:8px;}
.qv-rating .stars{color:var(--neon);}
.qv-price{display:flex; align-items:baseline; gap:10px; margin-top:12px;}
.qv-price .now{font-size:24px; font-weight:800; color:var(--neon);}
.qv-price .old{font-size:13px; color:var(--gris); text-decoration:line-through;}
.qv-desc{font-size:12.5px; line-height:1.65; color:#C7C9CE; margin-top:12px;}
.qv-label{font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.6px; color:var(--gris); margin:18px 0 8px;}
.qv-sizes{display:flex; flex-wrap:wrap; gap:8px;}
.qv-size{border:1px solid rgba(255,255,255,.18); background:none; color:var(--gris); border-radius:3px; padding:8px 13px; font-size:12px; font-weight:700;}
.qv-size:hover{color:var(--blanco);}
.qv-size.selected{border-color:var(--neon); color:var(--blanco); background:rgba(233,255,24,.06);}
.qv-actions{display:flex; gap:10px; margin-top:20px; align-items:stretch; flex-wrap:wrap;}
.qv-qty{display:flex; align-items:center; border:1px solid rgba(255,255,255,.18); border-radius:3px; overflow:hidden;}
.qv-qty button{background:none; border:none; color:var(--blanco); width:34px; height:44px; font-size:14px;}
.qv-qty button:hover{color:var(--neon);}
.qv-qty span{min-width:32px; text-align:center; font-size:12.5px; font-weight:700;}
.qv-add{flex:1; min-width:180px; background:var(--neon); color:var(--negro); border:none; border-radius:3px; font-weight:800; font-size:12px; text-transform:uppercase; letter-spacing:.4px; padding:14px 18px;}
.qv-add:hover{box-shadow:0 10px 26px rgba(233,255,24,.3);}
.qv-link{font-size:11.5px; font-weight:700; color:var(--gris); text-align:center; margin-top:14px; text-decoration:underline;}
.qv-link:hover{color:var(--blanco);}
@media (max-width:760px){
  .qv-modal{grid-template-columns:1fr;}
  .qv-media{min-height:260px;}
  .qv-info{padding:22px;}
}

/* ---------- Buscador con sugerencias ---------- */
.search-suggest{
  position:fixed; z-index:140; background:#12151b; border:1px solid rgba(255,255,255,.12);
  border-radius:0 0 6px 6px; box-shadow:0 22px 46px rgba(0,0,0,.6); overflow:hidden;
  opacity:0; pointer-events:none; transform:translateY(-6px); transition:opacity .18s ease, transform .18s ease;
}
.search-suggest.open{opacity:1; pointer-events:auto; transform:none;}
.ss-item{display:grid; grid-template-columns:44px 1fr auto; gap:12px; align-items:center; padding:10px 14px; cursor:pointer; border-bottom:1px solid rgba(255,255,255,.05);}
.ss-item:last-child{border-bottom:none;}
.ss-item:hover, .ss-item.hl{background:rgba(255,255,255,.05);}
.ss-thumb{position:relative; width:44px; height:44px; border-radius:3px; overflow:hidden; background:#fff;}
.ss-thumb img{width:100%; height:100%; object-fit:contain;}
.ss-thumb .img-slot{position:absolute; inset:0; min-height:0; border-width:1px;}
.ss-thumb .img-slot .ph-logo{width:16px; height:16px;}
.ss-thumb .img-slot .ph-txt{display:none;}
.ss-name{font-size:12px; font-weight:700; line-height:1.3;}
.ss-team{font-size:10px; color:var(--gris); margin-top:2px;}
.ss-price{font-size:12px; font-weight:700; color:var(--neon);}
.ss-empty{padding:16px 14px; font-size:12px; color:var(--gris); font-weight:600;}
.ss-foot{padding:10px 14px; background:rgba(255,255,255,.03); font-size:11px; font-weight:700; color:var(--gris); text-align:center;}
.ss-foot:hover{color:var(--blanco);}

/* ---------- Menú móvil ---------- */
.menu-btn{
  display:none; width:40px; height:40px; border:1px solid rgba(255,255,255,.15); border-radius:4px;
  background:none; color:var(--blanco); font-size:16px; align-items:center; justify-content:center; flex:none;
}
.menu-btn:hover{border-color:var(--neon); color:var(--neon);}
.mobile-menu{
  position:fixed; top:84px; right:5%; z-index:130; width:min(300px,88vw);
  max-height:calc(100vh - 104px); overflow:auto;
  background:#12151b; border:1px solid rgba(255,255,255,.12); border-radius:8px;
  box-shadow:0 22px 46px rgba(0,0,0,.6);
  display:flex; flex-direction:column; padding:16px;
  opacity:0; pointer-events:none; transform:translateY(-8px) scale(.97); transform-origin:top right;
  transition:opacity .2s ease, transform .2s ease;
}
.mobile-menu.open{opacity:1; pointer-events:auto; transform:none;}
.mm-head{display:flex; align-items:center; justify-content:space-between; margin-bottom:12px;}
.mm-head img{width:32px; height:32px; border-radius:50%;}
.mm-close{background:none; border:1px solid rgba(255,255,255,.15); border-radius:4px; color:var(--blanco); width:32px; height:32px; font-size:14px; cursor:pointer;}
.mm-close:hover{border-color:var(--neon); color:var(--neon);}
.mm-nav{display:flex; flex-direction:column; gap:2px;}
.mm-nav a{
  font-family:'Bebas Neue',sans-serif; font-size:17px; letter-spacing:.5px; padding:9px 2px;
  border-bottom:1px solid rgba(255,255,255,.07); color:var(--blanco);
}
.mm-nav a:last-child{border-bottom:none;}
.mm-nav a:hover{color:var(--neon);}
.mm-foot{margin-top:14px; padding-top:14px; border-top:1px solid rgba(255,255,255,.07); display:flex; flex-direction:column; gap:10px;}
.mm-foot .search{max-width:none; margin:0;}
.mm-foot .social{display:flex; gap:14px; flex-wrap:wrap; color:var(--gris); font-size:11px; font-weight:600;}
.mm-foot .social a:hover{color:var(--blanco);}
@media (max-width:960px){ .menu-btn{display:flex;} }

/* ---------- Hero slider (index) ---------- */
.hero.has-slider{background-image:none !important;}
.hero-bg{position:absolute; inset:0; z-index:0;}
.hero-bg span{position:absolute; inset:0; background-size:cover; background-position:center; opacity:0; transition:opacity .9s ease;}
.hero-bg span.on{opacity:1;}
.hero .hero-copy, .hero .hero-side{transition:opacity .35s ease, transform .35s ease;}
.hero.switching .hero-copy, .hero.switching .hero-side{opacity:.15; transform:translateY(6px);}
.hero-dots{display:flex; align-items:center; gap:14px; padding:0 5% 40px; font-size:11px; color:var(--gris); font-weight:600;}
.hero-dots button{background:none; border:none; color:var(--gris); font-size:11px; font-weight:700; letter-spacing:1px; padding:2px 0;}
.hero-dots button.on{color:var(--neon);}
.hero-dots button:hover{color:var(--blanco);}
.hero-nav{position:absolute; right:5%; bottom:36px; z-index:3; display:flex; gap:8px;}
.hero-nav button{
  width:38px; height:38px; border-radius:50%; border:1px solid rgba(255,255,255,.25);
  background:rgba(11,13,16,.5); color:var(--blanco); font-size:16px; line-height:1;
}
.hero-nav button:hover{border-color:var(--neon); color:var(--neon);}
@media (max-width:960px){ .hero-nav{right:5%; bottom:20px;} }

/* ---------- Estados de formulario ---------- */
.field.invalid input, .field.invalid select, .field.invalid textarea{border-color:var(--magenta) !important;}

/* ---------- Botón cargando ---------- */
.loading{position:relative; pointer-events:none; opacity:.85;}
.loading::after{
  content:""; width:14px; height:14px; border-radius:50%;
  border:2px solid rgba(11,13,16,.35); border-top-color:var(--negro);
  animation:spin .7s linear infinite; margin-left:8px;
}
@keyframes spin{to{transform:rotate(360deg);}}

/* ---------- Vista lista (catálogo) ---------- */
.products-grid.list{grid-template-columns:1fr; gap:12px;}
.products-grid.list .product-card{flex-direction:row; align-items:stretch;}
.products-grid.list .product-card .thumb{width:190px; flex:none; aspect-ratio:1/1;}
.products-grid.list .product-card .info{justify-content:center;}
@media (max-width:600px){ .products-grid.list .product-card .thumb{width:110px;} }

/* ---------- Estado vacío ---------- */
.empty-state{grid-column:1/-1; text-align:center; padding:54px 20px; border:1px dashed rgba(255,255,255,.18); border-radius:8px;}
.empty-state .big{font-family:'Bebas Neue',sans-serif; font-size:26px; letter-spacing:.5px;}
.empty-state p{font-size:12.5px; color:var(--gris); margin-top:8px;}
.empty-state button{margin-top:18px; background:var(--neon); color:var(--negro); border:none; border-radius:3px; font-weight:700; font-size:11.5px; text-transform:uppercase; padding:12px 22px;}

/* ---------- Chips de filtros activos ---------- */
.active-filters{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:14px;}
.active-filters .af{
  display:inline-flex; align-items:center; gap:8px; background:rgba(233,255,24,.08);
  border:1px solid rgba(233,255,24,.35); color:var(--blanco); border-radius:999px;
  font-size:11px; font-weight:700; padding:6px 12px; cursor:pointer;
}
.active-filters .af:hover{border-color:var(--magenta); color:var(--magenta);}

/* ---------- Volver arriba ---------- */
.to-top{
  position:fixed; left:24px; bottom:24px; z-index:60; width:44px; height:44px; border-radius:50%;
  border:1px solid rgba(255,255,255,.2); background:rgba(17,19,24,.9); color:var(--blanco);
  font-size:16px; display:flex; align-items:center; justify-content:center;
  opacity:0; pointer-events:none; transition:opacity .25s ease, transform .25s ease;
}
.to-top.show{opacity:1; pointer-events:auto;}
.to-top:hover{border-color:var(--neon); color:var(--neon); transform:translateY(-2px);}
@media (max-width:600px){ .to-top{left:16px; bottom:78px; width:40px; height:40px;} }

/* ---------- WhatsApp flotante ---------- */
.wa-float{position:fixed;}
.wa-float::after{
  content:""; position:absolute; inset:0; border-radius:50%;
  border:2px solid rgba(36,82,255,.55); animation:waPulse 2.6s ease-out infinite;
}
@keyframes waPulse{0%{transform:scale(1); opacity:.8;} 70%{transform:scale(1.55); opacity:0;} 100%{opacity:0;}}

/* ---------- WhatsApp: botón secundario ---------- */
.btn-secondary{position:relative;}

/* ---------- Confirmación: animaciones ---------- */
.check-circle{animation:checkPop .5s cubic-bezier(.2,.9,.3,1.4);}
@keyframes checkPop{0%{transform:scale(.4); opacity:0;} 100%{transform:scale(1); opacity:1;}}
.timeline .tl-step{opacity:0; animation:tlIn .5s ease forwards;}
.timeline .tl-step:nth-child(2){animation-delay:.25s;}
.timeline .tl-step:nth-child(3){animation-delay:.5s;}
@keyframes tlIn{from{opacity:0; transform:translateY(8px);} to{opacity:1; transform:none;}}
.tl-step.active .dot{box-shadow:0 0 0 0 rgba(233,255,24,.6); animation:dotPulse 1.8s ease-out infinite;}
@keyframes dotPulse{70%{box-shadow:0 0 0 10px rgba(233,255,24,0);} 100%{box-shadow:0 0 0 0 rgba(233,255,24,0);}}

/* ---------- Admin: utilidades de demo ---------- */
.toastable{cursor:pointer;}
.admin-tr-hide{display:none !important;}
.upload-preview{width:100%; height:100%; object-fit:cover; position:absolute; inset:0;}
.switch input:checked + .track::after{transform:translateX(18px);}
.admin-saved{animation:savedFlash .8s ease;}
@keyframes savedFlash{0%{background:rgba(233,255,24,.12);} 100%{background:transparent;}}

/* ---------- Avatares con iniciales ---------- */
.avatar.initials{display:flex; align-items:center; justify-content:center; font-family:'Bebas Neue',sans-serif; font-size:18px; color:var(--negro); letter-spacing:.5px;}

/* ---------- Categorías home ---------- */
.categories .cat{cursor:pointer;}
.categories .cat .circle{transition:transform .22s ease, box-shadow .22s ease;}
.categories .cat:hover .circle{transform:translateY(-4px) scale(1.07); box-shadow:0 10px 22px rgba(233,255,24,.25);}
.categories .cat:hover{color:var(--blanco);}

/* ---------- Instagram grid ---------- */
.ig-item{position:relative; display:block; aspect-ratio:1/1; overflow:hidden; border-radius:4px; background:#fff;}
.ig-item img{width:100%; height:100%; object-fit:cover; transition:transform .45s ease;}
.ig-item:hover img{transform:scale(1.09);}
.ig-item .ig-ov{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  background:rgba(11,13,16,.6); color:var(--neon); opacity:0; transition:opacity .25s ease;
}
.ig-item:hover .ig-ov{opacity:1;}

/* ---------- Paginación deshabilitada ---------- */
.pagination a.disabled{opacity:.35; pointer-events:none;}
.pagination a{cursor:pointer;}

/* ---------- Ficha: panel sticky y tablas ---------- */
.product-info-panel{position:sticky; top:96px;}
.size-guide-table{width:100%; border-collapse:collapse; margin-top:14px; font-size:12px;}
.size-guide-table th, .size-guide-table td{border:1px solid rgba(255,255,255,.12); padding:9px 12px; text-align:left; color:#C7C9CE;}
.size-guide-table th{background:rgba(255,255,255,.04); color:var(--blanco); font-size:10.5px; text-transform:uppercase; letter-spacing:.5px;}
.tab-panel[hidden]{display:none !important;}

/* ---------- Admin: fila activa / switches ---------- */
.admin-tr-active{background:rgba(233,255,24,.05) !important;}
.upload-item{position:relative; overflow:hidden;}
.upload-item:hover{border-color:rgba(233,255,24,.5);}
.modal-confirm{position:fixed; inset:0; z-index:190; background:rgba(5,6,8,.72); display:flex; align-items:center; justify-content:center; padding:20px;}
.modal-confirm .box{background:#0f1116; border:1px solid rgba(255,255,255,.12); border-radius:8px; padding:24px; max-width:420px; width:100%;}
.modal-confirm h3{font-family:'Bebas Neue',sans-serif; font-size:22px; letter-spacing:.5px; margin-bottom:8px;}
.modal-confirm p{font-size:12.5px; color:#C7C9CE; line-height:1.6;}
.modal-confirm .actions{display:flex; gap:10px; justify-content:flex-end; margin-top:20px;}

/* ---------- Responsive ---------- */
@media (max-width:960px){
  .product-info-panel{position:static;}
}
@media (max-width:600px){
  /* Header compacto */
  header{padding:12px 4%;}
  header .logo, header img.logo{width:38px; height:38px;}
  header .search{margin:0 8px; padding:8px 10px; font-size:12px;}
  .header-icons{gap:12px;}
  .cart svg{width:19px; height:19px;}

  /* Secciones y títulos */
  .breadcrumb{padding:14px 5% 0; font-size:11px;}
  section{padding:26px 5%;}
  .hero{padding:40px 5% 26px; min-height:0;}
  .hero-copy h1{font-size:clamp(32px,10.5vw,46px);}
  .headline, .section-head h2{font-size:19px;}
  .trust{gap:14px 22px; padding:22px 5%; font-size:12px; text-align:center;}

  /* Footer */
  .foot-top{flex-direction:column; align-items:flex-start;}
  .newsletter{max-width:none; width:100%;}
  .foot-bottom{flex-direction:column;}

  /* Mini-carrito, quick view y toasts */
  .fr-toasts{bottom:88px;}
  .mc-item{grid-template-columns:48px 1fr auto;}
  .mc-thumb{width:48px; height:48px;}
  .qv-actions{flex-direction:column;}
  .qv-qty{justify-content:space-between;}
}
