/* ============================================================
   REGALOS 365 · TEMA PREMIUM (v1)
   Capa de diseño sobre main.css y producto.css.
   No afecta el banner (.rx-hero) ni la revista (.rv).
   DigitalForce · d-force.cl
   ============================================================ */
body.r365t{
  --t-ink:#121014; --t-ink2:#3F3B45; --t-muted:#86828D;
  --t-paper:#F6F3EE; --t-paper2:#EFEBE4; --t-card:#FFFFFF;
  --t-line:rgba(18,16,20,.09); --t-line2:rgba(18,16,20,.14);
  --t-red:#C8102E; --t-red-d:#A80F1E; --t-lime:#CCFF00; --t-wa:#1FBE5B;
  --t-r:20px; --t-r-sm:12px;
  --t-sh:0 1px 2px rgba(18,16,20,.04), 0 8px 24px -10px rgba(18,16,20,.12);
  --t-sh-h:0 2px 6px rgba(18,16,20,.05), 0 22px 44px -16px rgba(18,16,20,.24);
  --t-disp:'Anton','Outfit',Impact,sans-serif;
  --t-mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,monospace;
  --t-sans:'Inter',system-ui,-apple-system,sans-serif;
  --primary:#C8102E; --primary-dark:#A80F1E; --text-dark:#121014; --text-medium:#3F3B45; --text-light:#86828D;
  background:var(--t-paper) !important; color:var(--t-ink); font-family:var(--t-sans) !important;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
body.r365t ::selection{ background:var(--t-lime); color:#000; }

/* ---------- Fondo ambiental: más sobrio y cálido ---------- */
body.r365t .site-bg-fx{ background:var(--t-paper) !important; }
body.r365t .site-bg-fx::before{ background-image:radial-gradient(rgba(18,16,20,.07) 1px, transparent 1px) !important; }
body.r365t .site-bg-fx::after{ background:linear-gradient(180deg, rgba(246,243,238,.5), rgba(246,243,238,0) 40%) !important; }
body.r365t .site-bg-fx .bg-orb{ opacity:.18 !important; }
body.r365t .site-bg-fx .bg-orb-1{ background:radial-gradient(circle,#C8102E 0%,rgba(200,16,46,0) 70%) !important; }
body.r365t .site-bg-fx .bg-orb-2{ background:radial-gradient(circle,#CCFF00 0%,rgba(204,255,0,0) 70%) !important; opacity:.14 !important; }
body.r365t .site-bg-fx .bg-orb-3{ background:radial-gradient(circle,#FF9A3C 0%,rgba(255,154,60,0) 70%) !important; }

/* ============================================================
   BARRA DE ANUNCIOS + HEADER
   ============================================================ */
body.r365t .announcement-bar{
  background:var(--t-ink) !important; color:#fff !important; border:0 !important;
  font-family:var(--t-mono) !important; font-size:11.5px !important; letter-spacing:.08em !important; text-transform:uppercase;
}
body.r365t .announcement-bar *{ color:#fff !important; font-weight:500 !important; }
body.r365t .announcement-slide span::first-letter{ color:var(--t-lime); }

body.r365t .header{
  background:rgba(255,255,255,.86) !important; -webkit-backdrop-filter:saturate(180%) blur(18px); backdrop-filter:saturate(180%) blur(18px);
  box-shadow:0 1px 0 var(--t-line) !important; border-bottom:0 !important;
}
body.r365t .header.scrolled{ box-shadow:0 1px 0 var(--t-line), 0 10px 30px -18px rgba(18,16,20,.25) !important; }
body.r365t .nav-links > li > a{
  position:relative; color:var(--t-ink) !important; font-family:var(--t-sans) !important; font-weight:600 !important; font-size:14.5px !important;
  padding:8px 2px !important; background:none !important;
}
body.r365t .nav-links > li > a::after{
  content:""; position:absolute; left:2px; right:2px; bottom:2px; height:2px; background:var(--t-red);
  transform:scaleX(0); transform-origin:left; transition:transform .25s ease;
}
body.r365t .nav-links > li > a:hover{ color:var(--t-red) !important; }
body.r365t .nav-links > li > a:hover::after{ transform:scaleX(1); }
body.r365t .dropdown-menu{
  border-radius:16px !important; border:1px solid var(--t-line) !important; box-shadow:var(--t-sh-h) !important; padding:8px !important; background:#fff !important;
}
body.r365t .dropdown-menu a{ border-radius:10px !important; font-size:14px !important; color:var(--t-ink) !important; }
body.r365t .dropdown-menu a:hover{ background:var(--t-paper) !important; color:var(--t-red) !important; }
body.r365t .whatsapp-btn-header{
  background:var(--t-ink) !important; color:#fff !important; border-radius:999px !important; box-shadow:none !important;
  padding:11px 20px !important; font-weight:700 !important; font-size:14px !important; gap:8px !important; border:0 !important;
  transition:background .2s ease, transform .2s ease !important;
}
body.r365t .whatsapp-btn-header svg{ fill:#25D366 !important; width:18px !important; height:18px !important; }
body.r365t .whatsapp-btn-header:hover{ background:var(--t-wa) !important; transform:translateY(-1px); }
body.r365t .whatsapp-btn-header:hover svg{ fill:#fff !important; }
body.r365t .mobile-menu-btn span{ background:var(--t-ink) !important; border-radius:2px; }
@media (max-width:992px){
  body.r365t .nav-links[style*="flex"]{
    background:#fff !important; border-radius:0 0 22px 22px !important; border-top:1px solid var(--t-line);
    box-shadow:0 24px 40px -20px rgba(18,16,20,.3) !important; padding:10px 18px 18px !important; gap:0 !important;
  }
  body.r365t .nav-links[style*="flex"] > li > a{ display:block; padding:14px 4px !important; border-bottom:1px solid var(--t-line); font-size:16px !important; }
  body.r365t .nav-links[style*="flex"] > li > a::after{ display:none; }
}

/* ---------- Franja informativa bajo el banner ---------- */
body.r365t .red-info-band{
  background:var(--t-ink) !important; border:0 !important; box-shadow:none !important;
  border-top:1px solid rgba(255,255,255,.06) !important;
}
body.r365t .red-band-item{
  color:#fff !important; font-family:var(--t-mono) !important; font-size:12px !important; font-weight:500 !important;
  letter-spacing:.1em !important; text-transform:uppercase !important; text-shadow:none !important;
}
body.r365t .red-band-item::after{ color:var(--t-lime) !important; background:var(--t-lime) !important; }

/* ============================================================
   ENCABEZADOS DE SECCIÓN
   ============================================================ */
body.r365t .section-header{ text-align:center; margin-bottom:34px !important; }
body.r365t .section-tag{
  display:inline-flex !important; align-items:center; gap:8px;
  background:transparent !important; color:var(--t-red) !important; border:1px solid rgba(200,16,46,.25) !important;
  border-radius:999px !important; padding:6px 14px !important; box-shadow:none !important;
  font-family:var(--t-mono) !important; font-size:11px !important; font-weight:600 !important; letter-spacing:.14em !important; text-transform:uppercase !important;
}
body.r365t .section-header h2,
body.r365t .reviews-header h2{
  font-family:var(--t-disp) !important; font-weight:400 !important; text-transform:uppercase;
  font-size:clamp(34px,4.6vw,58px) !important; line-height:.98 !important; letter-spacing:.005em !important;
  color:var(--t-ink) !important; margin:14px 0 10px !important; background:none !important; -webkit-text-fill-color:currentColor !important;
}
body.r365t .section-header p{ color:var(--t-ink2) !important; font-size:16px !important; line-height:1.55 !important; max-width:560px; margin-left:auto !important; margin-right:auto !important; }

/* ============================================================
   CATEGORÍAS (chips)
   ============================================================ */
body.r365t .cat4-chip,
body.r365t .category-filter-btn{
  background:#fff !important; color:var(--t-ink) !important; border:1px solid var(--t-line2) !important;
  border-radius:999px !important; box-shadow:none !important; font-family:var(--t-sans) !important; font-weight:700 !important;
  transition:background .2s, color .2s, border-color .2s, transform .2s !important;
}
body.r365t .cat4-chip:hover,
body.r365t .category-filter-btn:hover{ border-color:var(--t-ink) !important; transform:translateY(-1px); }
body.r365t .cat4-chip.is-active,
body.r365t .category-filter-btn.active{
  background:var(--t-ink) !important; color:#fff !important; border-color:var(--t-ink) !important;
}
body.r365t .cat4-chip .c4-n{ background:var(--t-paper2) !important; color:var(--t-ink) !important; font-family:var(--t-mono) !important; font-weight:600 !important; border-radius:999px !important; }
body.r365t .cat4-chip.is-active .c4-n{ background:var(--t-lime) !important; color:#000 !important; }
body.r365t .category-filter-bar{
  background:rgba(255,255,255,.9) !important; border:1px solid var(--t-line) !important;
  box-shadow:0 16px 40px -18px rgba(18,16,20,.35) !important; border-radius:999px !important;
}
@media (max-width:768px){ body.r365t .category-filter-bar{ border-radius:0 !important; border-width:0 0 1px !important; } }

/* ============================================================
   TARJETA DE PRODUCTO
   ============================================================ */
body.r365t .products{ max-width:1280px !important; }
@media (min-width:1100px){
  body.r365t #mainProductsGrid{ grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:22px !important; max-width:1280px !important; }
}
body.r365t .product-card{
  background:var(--t-card) !important; border:1px solid var(--t-line) !important; border-radius:var(--t-r) !important;
  box-shadow:var(--t-sh) !important; overflow:hidden !important;
  transition:transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease, border-color .35s ease !important;
}
@media (hover:hover){
  body.r365t .product-card:hover{ transform:translateY(-6px) !important; box-shadow:var(--t-sh-h) !important; border-color:var(--t-line2) !important; }
}
body.r365t .product-image-link{ background:var(--t-paper2) !important; }
body.r365t .product-image{
  aspect-ratio:4 / 5 !important; height:auto !important; padding:0 !important; border-radius:0 !important;
  background:linear-gradient(160deg,#F3EFE8 0%,#E9E4DB 100%) !important;
}
body.r365t .product-image img{ object-fit:cover !important; transition:transform .6s cubic-bezier(.2,.8,.2,1) !important; }
body.r365t .product-image img[src$=".png"]{ object-fit:contain !important; padding:14px !important; }
@media (hover:hover){ body.r365t .product-card:hover .product-image img{ transform:scale(1.045) !important; } }

/* insignias */
body.r365t .badge{
  font-family:var(--t-mono) !important; font-size:10px !important; font-weight:600 !important; letter-spacing:.08em !important;
  border-radius:999px !important; padding:4px 10px !important; box-shadow:none !important; text-transform:uppercase !important;
}
body.r365t .badge-sale{ background:var(--t-red) !important; color:#fff !important; }
body.r365t .badge-new{ background:var(--t-lime) !important; color:#000 !important; }
body.r365t .badge-hot{ background:#FF7A1A !important; color:#fff !important; }
body.r365t .badge-soldout{ background:var(--t-ink) !important; color:#fff !important; }
@media (min-width:641px){ body.r365t .product-badge{ top:12px !important; left:12px !important; } }
body.r365t .product-top-actions{ top:10px !important; right:10px !important; gap:6px !important; }
body.r365t .product-action-btn{
  width:34px !important; height:34px !important; background:rgba(255,255,255,.88) !important; border:0 !important;
  box-shadow:0 2px 10px rgba(18,16,20,.12) !important; color:var(--t-ink) !important;
}
body.r365t .product-action-btn:hover{ background:var(--t-ink) !important; color:#fff !important; }
body.r365t .soldout-overlay{ background:rgba(246,243,238,.55) !important; -webkit-backdrop-filter:grayscale(1); backdrop-filter:grayscale(1); }
body.r365t .soldout-overlay span{ background:var(--t-ink) !important; color:#fff !important; border-radius:999px !important; font-family:var(--t-mono) !important; letter-spacing:.14em !important; font-weight:600 !important; box-shadow:none !important; }

/* ficha */
body.r365t .product-info{ padding:14px 16px 16px !important; border-top:0 !important; gap:0; background:#fff !important; }
body.r365t .product-category{
  color:var(--t-muted) !important; font-family:var(--t-mono) !important; font-size:10.5px !important; font-weight:500 !important;
  letter-spacing:.1em !important; margin-bottom:6px !important;
}
body.r365t .product-name{
  font-family:var(--t-sans) !important; font-size:15.5px !important; font-weight:700 !important; line-height:1.3 !important;
  letter-spacing:-.01em !important; color:var(--t-ink) !important; margin-bottom:6px !important;
  white-space:normal !important; display:-webkit-box !important; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden !important;
}
body.r365t .product-name a:hover{ color:var(--t-red) !important; }
body.r365t .product-rating{ margin-bottom:10px !important; gap:6px !important; }
body.r365t .stars{ color:#F2A900 !important; font-size:12px !important; letter-spacing:1px !important; }
body.r365t .rating-count{ color:var(--t-muted) !important; font-size:11.5px !important; }
body.r365t .product-price-row{ align-items:baseline !important; gap:8px !important; margin-bottom:10px !important; flex-wrap:wrap !important; }
body.r365t .product-price{
  font-family:var(--t-sans) !important; font-weight:800 !important; font-size:24px !important; letter-spacing:-.03em !important;
  color:var(--t-ink) !important; line-height:1 !important;
}
body.r365t .product-price-original{ color:var(--t-muted) !important; font-size:13px !important; }
body.r365t .product-discount{
  background:var(--t-lime) !important; color:#000 !important; font-family:var(--t-mono) !important; font-size:10.5px !important;
  font-weight:600 !important; padding:3px 7px !important; border-radius:6px !important;
}
body.r365t .stock-indicator{ margin-bottom:10px !important; gap:8px !important; }
body.r365t .stock-bar{ height:4px !important; background:var(--t-paper2) !important; border-radius:9px !important; }
body.r365t .stock-fill{ border-radius:9px !important; background:var(--t-ink) !important; }
body.r365t .stock-fill.low{ background:var(--t-red) !important; }
body.r365t .stock-text{ color:var(--t-ink2) !important; font-size:11.5px !important; font-weight:600 !important; }
body.r365t .stock-text.urgency{ color:var(--t-red) !important; }
body.r365t .contra-entrega-tag{
  background:transparent !important; border:1px dashed var(--t-line2) !important; color:var(--t-ink2) !important;
  border-radius:8px !important; font-size:11px !important; font-weight:600 !important; padding:5px 9px !important; margin-bottom:12px !important;
  align-self:flex-start;
}

/* ---------- BOTONES DE LA TARJETA ---------- */
body.r365t .product-card-buttons{
  margin-top:auto !important; display:grid !important; grid-template-columns:1fr !important; gap:8px !important; width:100% !important;
}
body.r365t .product-card-sub-buttons{ display:grid !important; grid-template-columns:minmax(0,1fr) 46px !important; gap:8px !important; }
body.r365t .btn-flow-sm,
body.r365t .btn-detalles-sm,
body.r365t .btn-whatsapp-sm{
  display:flex !important; align-items:center !important; justify-content:center !important; gap:8px !important;
  min-height:46px !important; height:auto !important; width:100% !important; padding:0 14px !important; margin:0 !important;
  border-radius:14px !important; font-family:var(--t-sans) !important; font-size:14.5px !important; font-weight:700 !important;
  letter-spacing:-.005em !important; text-decoration:none !important; line-height:1 !important; white-space:nowrap !important;
  box-shadow:none !important; flex-direction:row !important; text-transform:none !important;
  transition:background .2s ease, color .2s ease, border-color .2s ease, transform .15s ease !important;
}
body.r365t .btn-flow-sm{ background:var(--t-ink) !important; color:#fff !important; border:0 !important; }
body.r365t .btn-flow-sm .btn-ico{ width:18px; height:18px; flex:0 0 auto; }
body.r365t .btn-flow-sm:hover{ background:var(--t-red) !important; }
body.r365t .btn-flow-sm.btn-soldout-disabled{ background:var(--t-paper2) !important; color:var(--t-muted) !important; cursor:not-allowed; }
body.r365t .btn-detalles-sm{ background:#fff !important; color:var(--t-ink) !important; border:1px solid var(--t-line2) !important; }
body.r365t .btn-detalles-sm:hover{ border-color:var(--t-ink) !important; }
body.r365t .btn-whatsapp-sm{ display:flex !important; background:#E9F9EF !important; color:var(--t-wa) !important; border:0 !important; padding:0 !important; }
body.r365t .btn-whatsapp-sm svg{ width:22px !important; height:22px !important; fill:var(--t-wa) !important; margin:0 !important; }
body.r365t .btn-whatsapp-sm .btn-txt{ display:none !important; }
body.r365t .btn-whatsapp-sm:hover{ background:var(--t-wa) !important; }
body.r365t .btn-whatsapp-sm:hover svg{ fill:#fff !important; }
body.r365t .btn-flow-sm:active, body.r365t .btn-detalles-sm:active, body.r365t .btn-whatsapp-sm:active{ transform:scale(.97); }

/* ---------- MÓVIL: 2 columnas limpias + destacada a todo el ancho ---------- */
@media (max-width:640px){
  body.r365t #mainProductsGrid{ gap:10px !important; padding:0 12px !important; }
  body.r365t .product-card{ border-radius:18px !important; box-shadow:0 1px 2px rgba(18,16,20,.04), 0 6px 18px -10px rgba(18,16,20,.16) !important; }
  body.r365t .product-image{ aspect-ratio:4 / 5 !important; padding:0 !important; }
  body.r365t .product-image img{ object-fit:cover !important; }
  body.r365t .product-badge{ padding:0 10px !important; }
  body.r365t .product-badge .badge{ margin-top:10px !important; font-size:9px !important; padding:3px 8px !important; }
  body.r365t .product-info{ padding:8px 10px 12px !important; }
  body.r365t .product-category{ font-size:9px !important; margin-bottom:3px !important; letter-spacing:.06em !important; }
  body.r365t .product-name{ font-size:13px !important; margin-bottom:4px !important; }
  body.r365t .product-rating{ margin-bottom:6px !important; }
  body.r365t .stars{ font-size:10.5px !important; }
  body.r365t .product-price{ font-size:18px !important; flex:0 0 auto !important; }
  body.r365t .product-price-row{ gap:5px !important; margin-bottom:6px !important; }
  body.r365t .product-price-original{ font-size:11px !important; }
  body.r365t .product-discount{ font-size:9px !important; padding:2px 5px !important; }
  body.r365t .stock-indicator{ margin-bottom:7px !important; }
  body.r365t .stock-text{ font-size:9.5px !important; }
  body.r365t .contra-entrega-tag{ font-size:9px !important; padding:3px 6px !important; margin-bottom:8px !important; }
  body.r365t .product-card-buttons{ gap:6px !important; }
  body.r365t .product-card-sub-buttons{ grid-template-columns:minmax(0,1fr) 38px !important; gap:6px !important; }
  body.r365t .btn-flow-sm, body.r365t .btn-detalles-sm, body.r365t .btn-whatsapp-sm{
    min-height:38px !important; font-size:12.5px !important; border-radius:11px !important; padding:0 8px !important; gap:6px !important;
  }
  body.r365t .btn-whatsapp-sm{ padding:0 !important; }
  body.r365t .btn-whatsapp-sm svg{ width:18px !important; height:18px !important; }
  body.r365t .btn-flow-sm .btn-ico{ width:15px; height:15px; }

  /* tarjeta destacada (referencia que enviaste) */
  body.r365t .product-card.is-featured{ border-radius:24px !important; border-color:var(--t-line2) !important; }
  body.r365t .product-card.is-featured .product-image{ aspect-ratio:1 / 1 !important; }
  body.r365t .product-card.is-featured .product-info{ padding:12px 16px 16px !important; }
  body.r365t .product-card.is-featured .product-name{ font-size:18px !important; }
  body.r365t .product-card.is-featured .product-price{ font-size:26px !important; }
  body.r365t .product-card.is-featured .product-card-buttons{ grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important; }
  body.r365t .product-card.is-featured .product-card-sub-buttons{ display:contents !important; }
  body.r365t .product-card.is-featured .btn-whatsapp-sm{ display:none !important; }
  body.r365t .product-card.is-featured .btn-flow-sm,
  body.r365t .product-card.is-featured .btn-detalles-sm{ min-height:48px !important; font-size:15px !important; border-radius:14px !important; }
}

/* Mensaje sin productos */
body.r365t .no-products-message{ border-radius:var(--t-r) !important; border:1px dashed var(--t-line2) !important; background:#fff !important; }
body.r365t .btn-show-all{ background:var(--t-ink) !important; color:#fff !important; border-radius:999px !important; box-shadow:none !important; }

/* ============================================================
   MEGA OFERTAS
   ============================================================ */
body.r365t .flash-sale{
  position:relative; overflow:hidden; isolation:isolate;
  background:var(--t-ink) !important; border-radius:28px !important; border:0 !important;
  box-shadow:0 30px 60px -30px rgba(18,16,20,.55) !important;
}
body.r365t .flash-sale::before{
  content:""; position:absolute; z-index:-1; width:520px; height:520px; right:-120px; top:-220px; border-radius:50%;
  background:radial-gradient(circle,rgba(200,16,46,.55),rgba(200,16,46,0) 70%);
}
body.r365t .flash-sale::after{
  content:""; position:absolute; z-index:-1; inset:0; opacity:.5;
  background-image:radial-gradient(rgba(255,255,255,.08) 1px, transparent 1px); background-size:22px 22px;
}
body.r365t .flash-sale h3{
  font-family:var(--t-disp) !important; font-weight:400 !important; text-transform:uppercase; color:#fff !important;
  font-size:clamp(30px,3.6vw,48px) !important; line-height:1 !important; letter-spacing:.005em !important;
}
body.r365t .flash-sale p{ color:rgba(255,255,255,.72) !important; }
body.r365t .flash-sale .btn-primary{
  background:var(--t-lime) !important; color:#000 !important; border-radius:999px !important; box-shadow:0 12px 30px -12px rgba(204,255,0,.6) !important;
  font-weight:800 !important; padding:15px 26px !important; border:0 !important;
}
body.r365t .flash-sale .btn-primary:hover{ transform:translateY(-2px); }
body.r365t .countdown-item{
  background:rgba(255,255,255,.06) !important; border:1px solid rgba(255,255,255,.12) !important; border-radius:16px !important;
  -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); box-shadow:none !important;
}
body.r365t .countdown-number{ font-family:var(--t-disp) !important; font-weight:400 !important; color:var(--t-lime) !important; font-size:40px !important; }
body.r365t .countdown-label{ font-family:var(--t-mono) !important; color:rgba(255,255,255,.6) !important; letter-spacing:.14em !important; }

/* ============================================================
   TESTIMONIOS
   ============================================================ */
body.r365t .proof-card{
  position:relative; background:#fff !important; border:1px solid var(--t-line) !important; border-radius:var(--t-r) !important;
  box-shadow:var(--t-sh) !important; padding:26px 24px 22px !important; transition:transform .3s ease, box-shadow .3s ease !important;
}
body.r365t .proof-card::before{
  content:"\201C"; position:absolute; right:20px; top:6px; font-family:Georgia,serif; font-size:84px; line-height:1; color:var(--t-paper2);
}
@media (hover:hover){ body.r365t .proof-card:hover{ transform:translateY(-4px); box-shadow:var(--t-sh-h) !important; } }
body.r365t .proof-avatar{ font-family:var(--t-sans) !important; font-weight:800 !important; box-shadow:0 0 0 3px #fff, 0 0 0 4px var(--t-line) !important; }
body.r365t .proof-name{ font-weight:700 !important; color:var(--t-ink) !important; }
body.r365t .proof-date{ color:var(--t-muted) !important; font-size:12px !important; }
body.r365t .proof-stars{ color:#F2A900 !important; letter-spacing:2px !important; }
body.r365t .proof-text{ color:var(--t-ink2) !important; font-size:15px !important; line-height:1.6 !important; }
body.r365t .proof-verified{
  display:inline-flex !important; color:#157A3C !important; background:#EAF7EF !important; border-radius:999px !important; padding:4px 10px !important; font-size:12px !important; font-weight:700 !important;
}
@media (max-width:768px){
  body.r365t .proof-grid{
    display:grid !important; grid-auto-flow:column !important; grid-auto-columns:84% !important; grid-template-columns:none !important;
    gap:12px !important; overflow-x:auto !important; scroll-snap-type:x mandatory; padding:4px 16px 18px !important; margin:0 -16px !important;
    scrollbar-width:none; -webkit-overflow-scrolling:touch;
  }
  body.r365t .proof-grid::-webkit-scrollbar{ display:none; }
  body.r365t .proof-card{ scroll-snap-align:center; }
}

/* ============================================================
   ENVÍOS
   ============================================================ */
body.r365t .shipping-ticker{ background:var(--t-lime) !important; border:0 !important; box-shadow:none !important; }
body.r365t .shipping-ticker-item{
  color:#000 !important; font-family:var(--t-disp) !important; font-weight:400 !important; font-size:22px !important;
  letter-spacing:.02em !important; text-transform:uppercase !important; text-shadow:none !important; opacity:1 !important;
}
body.r365t .shipping-section{ background:transparent !important; }
body.r365t .shipping-feature-card{
  text-align:left !important; background:#fff !important; border:1px solid var(--t-line) !important; border-radius:var(--t-r) !important;
  box-shadow:var(--t-sh) !important; padding:28px 26px !important;
}
body.r365t .shipping-feature-card-icon{
  width:56px !important; height:56px !important; margin:0 0 18px !important; border-radius:16px !important; font-size:26px !important;
  display:grid !important; place-items:center !important; background:var(--t-ink) !important; box-shadow:none !important;
}
body.r365t .shipping-feature-card h4{ font-family:var(--t-sans) !important; font-weight:800 !important; font-size:18px !important; color:var(--t-ink) !important; letter-spacing:-.01em; }
body.r365t .shipping-feature-card p{ color:var(--t-ink2) !important; font-size:14.5px !important; line-height:1.6 !important; }

/* Logo */
body.r365t .logo-banner{ padding:30px 20px 10px !important; }
body.r365t .logo-banner img{ max-width:320px !important; }

/* ============================================================
   PREGUNTAS FRECUENTES
   ============================================================ */
body.r365t .faq-section{ max-width:860px !important; }
body.r365t .faq-item{
  background:#fff !important; border:1px solid var(--t-line) !important; border-radius:16px !important; box-shadow:none !important;
  margin-bottom:10px !important; overflow:hidden; transition:border-color .2s, box-shadow .2s !important;
}
body.r365t .faq-item.active{ border-color:var(--t-ink) !important; box-shadow:var(--t-sh) !important; }
body.r365t .faq-question{
  font-family:var(--t-sans) !important; font-weight:700 !important; font-size:16px !important; color:var(--t-ink) !important;
  padding:20px 22px !important; gap:16px; background:transparent !important;
}
body.r365t .faq-arrow{
  flex:0 0 auto; width:30px !important; height:30px !important; border-radius:50% !important; display:grid !important; place-items:center !important;
  background:var(--t-paper) !important; color:var(--t-ink) !important; font-size:10px !important; transition:transform .3s ease, background .3s !important;
}
body.r365t .faq-item.active .faq-arrow{ background:var(--t-lime) !important; color:#000 !important; }
body.r365t .faq-answer-inner{ color:var(--t-ink2) !important; font-size:15px !important; line-height:1.65 !important; padding:0 22px 20px !important; }

/* ============================================================
   NEWSLETTER
   ============================================================ */
body.r365t .newsletter-section{ background:transparent !important; }
body.r365t .newsletter-container{
  background:var(--t-red-d) !important; border:0 !important; border-radius:28px !important;
  background-image:radial-gradient(120% 90% at 50% 0%, #D11530 0%, #A80F1E 50%, #6B0512 100%) !important;
  box-shadow:0 30px 60px -30px rgba(168,15,30,.6) !important;
}
body.r365t .newsletter-glow-bg{ display:none !important; }
body.r365t .newsletter-badge{
  background:rgba(0,0,0,.2) !important; color:var(--t-lime) !important; border:1px solid rgba(204,255,0,.35) !important;
  font-family:var(--t-mono) !important; font-weight:600 !important; letter-spacing:.12em !important; box-shadow:none !important;
}
body.r365t .newsletter-container h2,
body.r365t .newsletter-container h3{
  font-family:var(--t-disp) !important; font-weight:400 !important; text-transform:uppercase; color:#fff !important;
  font-size:clamp(30px,4vw,50px) !important; line-height:1 !important; background:none !important; -webkit-text-fill-color:#fff !important;
}
body.r365t .newsletter-container p{ color:rgba(255,255,255,.82) !important; }
body.r365t .newsletter-input{
  background:#fff !important; color:var(--t-ink) !important; border:0 !important; border-radius:999px !important; min-height:52px; padding-left:22px !important; box-shadow:none !important;
}
body.r365t .newsletter-btn{
  background:var(--t-lime) !important; color:#000 !important; border-radius:999px !important; min-height:52px; font-weight:800 !important; box-shadow:none !important; border:0 !important; padding:0 26px !important;
}
body.r365t .newsletter-btn:hover{ background:#fff !important; }
body.r365t .trust-badge{ color:rgba(255,255,255,.85) !important; background:transparent !important; border:0 !important; }

/* ============================================================
   FOOTER
   ============================================================ */
body.r365t .footer{ background:var(--t-ink) !important; color:rgba(255,255,255,.7) !important; border-top:0 !important; }
body.r365t .footer-brand img{ filter:brightness(1.05); }
body.r365t .footer-brand p{ color:rgba(255,255,255,.62) !important; }
body.r365t .footer-col h4{
  color:#fff !important; font-family:var(--t-mono) !important; font-weight:600 !important; font-size:12px !important;
  letter-spacing:.16em !important; text-transform:uppercase !important;
}
body.r365t .footer-col a{ color:rgba(255,255,255,.68) !important; transition:color .2s !important; }
body.r365t .footer-col a:hover{ color:var(--t-lime) !important; }
body.r365t .footer-bottom{ border-top:1px solid rgba(255,255,255,.1) !important; }
body.r365t .footer-bottom p{ color:rgba(255,255,255,.5) !important; }
body.r365t .payment-icon{ background:rgba(255,255,255,.06) !important; border:1px solid rgba(255,255,255,.1) !important; color:#fff !important; border-radius:999px !important; }
body.r365t .fw-foot-icons a{ transition:background .2s, color .2s !important; }
body.r365t .fw-foot-icons a:hover{ background:var(--t-lime) !important; color:#000 !important; }

/* ============================================================
   FLOTANTES: WhatsApp, subir, notificación, popup
   ============================================================ */
body.r365t .whatsapp-float a{ box-shadow:0 12px 30px -8px rgba(37,211,102,.6) !important; }
body.r365t .whatsapp-float .tooltip{ background:var(--t-ink) !important; color:#fff !important; border-radius:999px !important; font-weight:600 !important; }
body.r365t .scroll-top{
  background:var(--t-ink) !important; color:#fff !important; border:0 !important; border-radius:50% !important; box-shadow:0 10px 24px -10px rgba(18,16,20,.5) !important;
}
body.r365t .sales-toast-overlay{
  background:rgba(255,255,255,.96) !important; border:1px solid var(--t-line) !important; border-radius:18px !important;
  box-shadow:0 20px 50px -20px rgba(18,16,20,.35) !important; -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px);
}
body.r365t .sales-toast-icon{ background:var(--t-ink) !important; border-radius:12px !important; box-shadow:none !important; }
body.r365t .sales-toast-text{ color:var(--t-ink) !important; }
body.r365t .sales-toast-text span{ color:var(--t-red) !important; }
body.r365t .sales-toast-meta{ color:var(--t-muted) !important; }
body.r365t .newsletter-popup-overlay{ background:rgba(18,16,20,.6) !important; -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); }
body.r365t .newsletter-popup-card{ background:#fff !important; border:0 !important; border-radius:28px !important; box-shadow:0 40px 80px -30px rgba(0,0,0,.5) !important; overflow:hidden; }
body.r365t .newsletter-popup-card::before{ content:""; display:block; height:6px; margin:-1px -1px 0; background:linear-gradient(90deg,var(--t-red),#FF7A1A,var(--t-lime)); position:absolute; left:0; right:0; top:0; }
body.r365t .popup-badge{ background:var(--t-paper) !important; color:var(--t-red) !important; font-family:var(--t-mono) !important; letter-spacing:.1em !important; border:0 !important; }
body.r365t .popup-title{ font-family:var(--t-disp) !important; font-weight:400 !important; text-transform:uppercase; font-size:34px !important; line-height:1 !important; color:var(--t-ink) !important; }
body.r365t .popup-text{ color:var(--t-ink2) !important; }
body.r365t .popup-input{ border:1px solid var(--t-line2) !important; border-radius:14px !important; min-height:50px; box-shadow:none !important; }
body.r365t .popup-btn{ background:var(--t-ink) !important; color:#fff !important; border-radius:14px !important; min-height:52px; box-shadow:none !important; font-weight:800 !important; }
body.r365t .popup-btn:hover{ background:var(--t-red) !important; }
body.r365t .popup-close-btn{ background:var(--t-paper) !important; color:var(--t-ink) !important; }

/* ============================================================
   PÁGINA DE PRODUCTO
   ============================================================ */
body.r365t .breadcrumbs{ font-family:var(--t-mono) !important; font-size:11.5px !important; letter-spacing:.06em; text-transform:uppercase; }
body.r365t .breadcrumbs a{ color:var(--t-muted) !important; }
body.r365t .breadcrumbs a:hover{ color:var(--t-red) !important; }
body.r365t .breadcrumbs .current{ color:var(--t-ink) !important; font-weight:600 !important; }

body.r365t .product-page{ gap:48px !important; align-items:start !important; }
body.r365t .product-image-section{ position:sticky; top:96px; }
body.r365t .product-image-main{
  background:linear-gradient(160deg,#F3EFE8 0%,#E6E0D6 100%) !important; border:0 !important; border-radius:28px !important;
  box-shadow:var(--t-sh) !important; padding:0 !important; overflow:hidden !important; aspect-ratio:1 / 1;
}
body.r365t .product-image-main img{ width:100% !important; height:100% !important; object-fit:cover !important; border-radius:0 !important; transition:transform .6s ease !important; }
body.r365t .product-image-main img[src$=".png"]{ object-fit:contain !important; padding:30px !important; }
body.r365t .product-image-main:hover img{ transform:scale(1.03); }
body.r365t .badge-page{ font-family:var(--t-mono) !important; font-weight:600 !important; letter-spacing:.08em !important; border-radius:999px !important; box-shadow:none !important; padding:6px 12px !important; }
body.r365t .badge-page-sale{ background:var(--t-red) !important; color:#fff !important; }
body.r365t .badge-page-new{ background:var(--t-lime) !important; color:#000 !important; }

body.r365t .back-to-store{
  background:transparent !important; color:var(--t-ink2) !important; border:1px solid var(--t-line2) !important; border-radius:999px !important;
  font-weight:600 !important; box-shadow:none !important;
}
body.r365t .back-to-store:hover{ border-color:var(--t-ink) !important; color:var(--t-ink) !important; }
body.r365t .product-category-page{
  background:transparent !important; color:var(--t-red) !important; border:0 !important; padding:0 !important;
  font-family:var(--t-mono) !important; font-size:12px !important; letter-spacing:.12em !important; text-transform:uppercase; font-weight:600 !important;
}
body.r365t .product-title-page{
  font-family:var(--t-sans) !important; font-weight:800 !important; font-size:clamp(28px,3vw,40px) !important; line-height:1.08 !important;
  letter-spacing:-.03em !important; color:var(--t-ink) !important;
}
body.r365t .stars-page{ color:#F2A900 !important; }
body.r365t .rating-count-page{ color:var(--t-muted) !important; }
body.r365t .product-price-section{ align-items:baseline !important; gap:12px !important; padding:6px 0 4px !important; }
body.r365t .price-current{ font-family:var(--t-sans) !important; font-weight:800 !important; color:var(--t-ink) !important; font-size:44px !important; letter-spacing:-.04em !important; }
body.r365t .price-original-page{ color:var(--t-muted) !important; font-size:18px !important; }
body.r365t .discount-badge-page{ background:var(--t-lime) !important; color:#000 !important; font-family:var(--t-mono) !important; font-weight:600 !important; border-radius:8px !important; box-shadow:none !important; border:0 !important; }
body.r365t .stock-bar-page{ background:var(--t-paper2) !important; height:5px !important; border-radius:9px !important; }
body.r365t .stock-fill-page{ background:var(--t-ink) !important; border-radius:9px !important; }
body.r365t .stock-fill-page.low{ background:var(--t-red) !important; }
body.r365t .stock-text-page{ color:var(--t-ink2) !important; }
body.r365t .stock-text-page.urgency{ color:var(--t-red) !important; }
body.r365t .feature-tag-page{
  background:#fff !important; border:1px solid var(--t-line) !important; color:var(--t-ink) !important; border-radius:12px !important;
  font-weight:600 !important; box-shadow:none !important; padding:10px 14px !important;
}
body.r365t .contra-entrega-page{
  background:#fff !important; border:1px dashed var(--t-line2) !important; color:var(--t-ink) !important; border-radius:14px !important; box-shadow:none !important;
}
body.r365t .product-description-section{
  background:#fff !important; border:1px solid var(--t-line) !important; border-radius:var(--t-r) !important; box-shadow:none !important;
}
body.r365t .product-description-section h2,
body.r365t .product-description-section h3{ font-family:var(--t-sans) !important; font-weight:800 !important; letter-spacing:-.02em; color:var(--t-ink) !important; }
body.r365t .product-description-section p{ color:var(--t-ink2) !important; }

body.r365t .qty-controls-page{ border:1px solid var(--t-line2) !important; border-radius:999px !important; background:#fff !important; overflow:hidden; box-shadow:none !important; }
body.r365t .qty-btn-page{ background:transparent !important; color:var(--t-ink) !important; border:0 !important; }
body.r365t .qty-btn-page:hover{ background:var(--t-paper) !important; }
body.r365t .qty-value-page{ font-weight:800 !important; border:0 !important; background:transparent !important; }

body.r365t .product-action-buttons-page{ display:flex !important; flex-direction:column !important; gap:10px !important; }
body.r365t .btn-flow-page,
body.r365t .btn-whatsapp-page{
  width:100% !important; min-height:58px !important; border-radius:16px !important; font-family:var(--t-sans) !important; font-size:16.5px !important;
  font-weight:800 !important; letter-spacing:-.01em; box-shadow:none !important; border:0 !important; gap:10px !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  transition:background .2s ease, transform .15s ease !important;
}
body.r365t .btn-flow-page{ order:-1; background:var(--t-ink) !important; color:#fff !important; }
body.r365t .btn-flow-page:hover{ background:var(--t-red) !important; transform:translateY(-1px); }
body.r365t .btn-whatsapp-page{ background:#fff !important; color:var(--t-ink) !important; border:1px solid var(--t-line2) !important; }
body.r365t .btn-whatsapp-page svg{ fill:var(--t-wa) !important; }
body.r365t .btn-whatsapp-page:hover{ border-color:var(--t-wa) !important; background:#F1FBF5 !important; }
body.r365t .btn-share-page{
  background:transparent !important; color:var(--t-ink2) !important; border:0 !important; box-shadow:none !important; font-weight:600 !important; text-decoration:underline; text-underline-offset:4px;
}
body.r365t .btn-share-page:hover{ color:var(--t-red) !important; }
body.r365t .guarantees-grid{ gap:10px !important; }
body.r365t .guarantee-item{
  background:#fff !important; border:1px solid var(--t-line) !important; border-radius:16px !important; box-shadow:none !important;
}
body.r365t .guarantee-text{ color:var(--t-ink) !important; font-weight:700 !important; }

/* Reseñas: carrusel horizontal */
body.r365t .reviews-header h2{ font-size:clamp(28px,3.4vw,44px) !important; margin:0 0 6px !important; }
body.r365t .reviews-summary-card{ background:var(--t-ink) !important; color:#fff !important; border:0 !important; border-radius:24px !important; box-shadow:none !important; }
body.r365t .reviews-summary-card *{ color:inherit; }
body.r365t .reviews-summary-card p, body.r365t .reviews-summary-card .count-lbl{ color:rgba(255,255,255,.7) !important; }
body.r365t .reviews-summary-card div[style]{ color:#fff !important; }
body.r365t .summary-score .big-num{ font-family:var(--t-disp) !important; font-weight:400 !important; color:var(--t-lime) !important; font-size:64px !important; }
body.r365t .reviews-slider-outer{ position:relative; }
body.r365t .reviews-list-track{
  display:grid !important; grid-auto-flow:column !important; grid-auto-columns:calc((100% - 2 * 16px) / 3) !important;
  gap:16px !important; overflow-x:auto !important; scroll-snap-type:x mandatory; scrollbar-width:none; padding:6px 2px 18px !important;
}
body.r365t .reviews-list-track::-webkit-scrollbar{ display:none; }
body.r365t .review-card-item{
  scroll-snap-align:start; background:#fff !important; border:1px solid var(--t-line) !important; border-radius:var(--t-r) !important; box-shadow:none !important; margin:0 !important;
}
body.r365t .review-item-title{ color:var(--t-ink) !important; font-weight:800 !important; }
body.r365t .review-item-body{ color:var(--t-ink2) !important; }
body.r365t .reviews-nav-btn{
  position:absolute; top:40%; z-index:3; width:46px !important; height:46px !important; border-radius:50% !important;
  background:#fff !important; color:var(--t-ink) !important; border:1px solid var(--t-line2) !important; box-shadow:var(--t-sh) !important;
  display:grid !important; place-items:center !important; font-size:24px !important; line-height:1 !important; cursor:pointer; padding:0 !important;
}
body.r365t .reviews-nav-btn.prev{ left:-18px; }
body.r365t .reviews-nav-btn.next{ right:-18px; }
body.r365t .reviews-nav-btn:hover{ background:var(--t-ink) !important; color:#fff !important; }
@media (max-width:980px){ body.r365t .reviews-list-track{ grid-auto-columns:calc((100% - 16px) / 2) !important; } }
@media (max-width:640px){
  body.r365t .reviews-list-track{ grid-auto-columns:86% !important; gap:12px !important; }
  body.r365t .reviews-nav-btn{ display:none !important; }
  body.r365t .product-image-section{ position:static; }
  body.r365t .product-image-main{ border-radius:22px !important; }
  body.r365t .price-current{ font-size:36px !important; }
}

/* Barra fija de compra (móvil) */
body.r365t .mobile-sticky-buy-bar{
  background:rgba(255,255,255,.92) !important; -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px);
  border-top:1px solid var(--t-line) !important; box-shadow:0 -10px 30px -18px rgba(18,16,20,.3) !important;
}
body.r365t .msb-label{ font-family:var(--t-mono) !important; color:var(--t-muted) !important; letter-spacing:.08em; text-transform:uppercase; }
body.r365t .msb-price{ color:var(--t-ink) !important; font-family:var(--t-sans) !important; font-weight:800 !important; letter-spacing:-.03em; }
body.r365t .msb-btn-buy{ background:var(--t-ink) !important; color:#fff !important; border-radius:14px !important; box-shadow:none !important; font-weight:800 !important; }
body.r365t .msb-btn-wa{ background:#E9F9EF !important; border-radius:14px !important; box-shadow:none !important; }
body.r365t .msb-btn-wa svg{ fill:var(--t-wa) !important; }

/* Footer simple (producto) */
body.r365t .footer-simple{ background:var(--t-ink) !important; color:rgba(255,255,255,.55) !important; border:0 !important; }
body.r365t .footer-simple a{ color:#fff !important; }
body.r365t .footer-simple a:hover{ color:var(--t-lime) !important; }
body.r365t .wa-float{ box-shadow:0 12px 30px -8px rgba(37,211,102,.6) !important; }

/* Similares: botones con el mismo lenguaje */
body.r365t .sim-head h2{ font-family:var(--t-disp) !important; font-weight:400 !important; text-transform:uppercase; font-size:clamp(30px,3.6vw,46px) !important; letter-spacing:.005em !important; color:var(--t-ink) !important; }
body.r365t .sim-head small{ font-family:var(--t-mono); color:var(--t-red); letter-spacing:.14em; }
body.r365t .sim-card{ border-color:var(--t-line) !important; border-radius:var(--t-r) !important; box-shadow:var(--t-sh) !important; }
body.r365t .sim-img{ aspect-ratio:4 / 5 !important; background:linear-gradient(160deg,#F3EFE8,#E9E4DB) !important; }
body.r365t .sim-img img{ object-fit:cover !important; padding:0 !important; }
body.r365t .sim-img img[src$=".png"]{ object-fit:contain !important; padding:14px !important; }
body.r365t .sim-badge{ background:var(--t-red) !important; font-family:var(--t-mono); font-weight:600 !important; }
body.r365t .sim-cat{ font-family:var(--t-mono); font-weight:500 !important; color:var(--t-muted) !important; }
body.r365t .sim-price strong{ font-family:var(--t-sans) !important; color:var(--t-ink) !important; letter-spacing:-.03em; }
body.r365t .sim-buy{ background:var(--t-ink) !important; color:#fff !important; border-radius:12px !important; }
body.r365t .sim-buy:hover{ background:var(--t-red) !important; }
body.r365t .sim-see{ background:#fff !important; border:1px solid var(--t-line2) !important; border-radius:12px !important; }

@media (prefers-reduced-motion:reduce){
  body.r365t .product-card, body.r365t .product-image img, body.r365t .proof-card{ transition:none !important; }
}

/* ---------- Ajustes finos ---------- */
body.r365t .shipping-feature-card,
body.r365t .shipping-feature-card *{ transform:none !important; }
body.r365t .shipping-feature-card:hover .shipping-feature-card-icon{ background:var(--t-red) !important; }
body.r365t .newsletter-input::placeholder{ color:var(--t-muted) !important; }
body.r365t .price-current{ background:none !important; -webkit-text-fill-color:var(--t-ink) !important; }
body.r365t .price-current.price-soldout{ -webkit-text-fill-color:var(--t-muted) !important; }
body.r365t .btn-flow-page svg, body.r365t .btn-whatsapp-page svg{ width:20px !important; height:20px !important; flex:0 0 auto; }
@media (max-width:640px){
  body.r365t .guarantees-grid{ display:grid !important; grid-template-columns:1fr 1fr !important; gap:8px !important; }
  body.r365t .guarantee-item{ padding:14px 10px !important; }
}

/* ============================================================
   CORRECCIONES DE RENDIMIENTO Y PARPADEOS · sept 2026
   (DigitalForce) — va al final para ganar la cascada
   ============================================================ */

/* 1) Barra de anuncios: alto fijo y una sola línea (antes cambiaba de alto
      con cada mensaje y empujaba toda la página hacia abajo) */
.announcement-bar{ height:40px; min-height:40px !important; padding-top:0 !important; padding-bottom:0 !important; }
.announcement-slide{ white-space:nowrap; }
.announcement-slide span{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%; display:inline-block !important; }
@media (max-width:600px){
  body.r365t .announcement-bar{ font-size:clamp(9px,2.55vw,11px) !important; letter-spacing:.02em !important; padding-left:10px !important; padding-right:10px !important; }
}
/* brillo animado con transform (antes animaba "left" = recalcular layout 60 veces por segundo) */
.announcement-bar::before{ left:0 !important; transform:translateX(-100%); animation:r365Shimmer 3s linear infinite !important; will-change:transform; }
@keyframes r365Shimmer{ from{ transform:translateX(-100%); } to{ transform:translateX(100%); } }

/* 2) Fondo ambiental: sin orbes animados con blur (muy costosos en móvil y
      causaban parpadeo detrás del header translúcido) */
.site-bg-fx .bg-orb{ animation:none !important; will-change:auto !important; }
@media (max-width:860px){
  .site-bg-fx .bg-orb{ display:none !important; }
  .site-bg-fx::before{ display:none; }
  body.r365t .header{ -webkit-backdrop-filter:none !important; backdrop-filter:none !important; background:rgba(255,255,255,.97) !important; }
}

/* 3) Overlays ocultos: sin blur ni captura cuando no están abiertos */
.newsletter-popup-overlay:not(.active),
.share-modal-overlay:not(.active){ visibility:hidden; -webkit-backdrop-filter:none !important; backdrop-filter:none !important; }
.newsletter-popup-overlay{ transition:opacity .35s ease, visibility 0s linear .35s !important; }
.newsletter-popup-overlay.active{ visibility:visible; transition:opacity .35s ease, visibility 0s !important; }

/* 4) Grilla: "Ver más productos" */
.product-card.card-more{ display:none !important; }
.r365-more-wrap{ display:flex; justify-content:center; margin:34px auto 0; padding:0 16px; }
.r365-more-btn{
  appearance:none; border:0; cursor:pointer; min-height:52px; padding:0 30px; border-radius:999px;
  background:var(--t-ink,#121014); color:#fff; font:700 15px/1 var(--t-sans,'Inter',system-ui,sans-serif); letter-spacing:.01em;
  box-shadow:0 14px 30px -14px rgba(18,16,20,.45); transition:transform .2s ease, background .2s ease;
}
.r365-more-btn:hover{ background:var(--t-red,#C8102E); transform:translateY(-2px); }
.r365-more-btn span{ opacity:.7; font-weight:600; margin-left:4px; }
.product-card .product-image img{ background:#f3f1ec; }

/* 5) Pop-up con cupón */
body.r365t .newsletter-popup-card{ max-height:calc(100svh - 32px); overflow-y:auto; overscroll-behavior:contain; }
.popup-step[hidden]{ display:none !important; }
body.r365t .popup-title{ font-size:clamp(26px,7vw,34px) !important; margin-bottom:10px !important; }
.popup-text-sm{ font-size:13px !important; margin:14px 0 18px !important; }
.popup-legal{ margin:12px 0 0; font-size:11.5px; color:#8a8690; }
.popup-dismiss-text{ background:none; border:0; font-family:inherit; }
body.r365t .popup-badge.popup-badge-ok{ color:#0f8a3c !important; background:#e9f9ef !important; }
.r365-coupon{
  position:relative; display:flex; flex-direction:column; align-items:center; gap:6px;
  margin:8px 0 4px; padding:20px 16px 18px; border-radius:18px;
  border:2px dashed var(--t-red,#C8102E); background:linear-gradient(180deg,#fff7f8,#fff);
}
.r365-coupon::before,.r365-coupon::after{ content:""; position:absolute; top:50%; width:22px; height:22px; margin-top:-11px; border-radius:50%; background:#fff; border:2px dashed var(--t-red,#C8102E); }
.r365-coupon::before{ left:-13px; clip-path:inset(0 0 0 50%); }
.r365-coupon::after{ right:-13px; clip-path:inset(0 50% 0 0); }
.r365-coupon-pct{ font:400 15px/1 var(--t-mono,'IBM Plex Mono',monospace); letter-spacing:.14em; color:var(--t-red,#C8102E); font-weight:600; }
.r365-coupon-code{ font:400 clamp(34px,10vw,44px)/1 var(--t-disp,'Anton',Impact,sans-serif); letter-spacing:.06em; color:var(--t-ink,#121014); background:none; padding:0; user-select:all; }
.r365-coupon-hint{ font-size:12px; color:#6f6a75; }
.popup-actions{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.popup-actions .popup-btn{ display:flex; align-items:center; justify-content:center; text-decoration:none; font-size:14px !important; white-space:nowrap; padding:14px 10px !important; }
body.r365t .popup-btn.popup-btn-ghost{ background:#fff !important; color:var(--t-ink,#121014) !important; border:1.5px solid var(--t-line2,rgba(18,16,20,.14)) !important; }
body.r365t .popup-btn.popup-btn-ghost:hover{ background:var(--t-paper,#F6F3EE) !important; }
@media (max-width:380px){ .popup-actions{ grid-template-columns:1fr; } }
.r365-coupon-inline{ display:inline-block; padding:2px 10px; border-radius:8px; border:1.5px dashed currentColor; letter-spacing:.06em; font-family:var(--t-mono,'IBM Plex Mono',monospace); }

/* 6) Menos trabajo para el navegador en móvil */
@media (max-width:860px){
  .red-band-track, .shipping-ticker-track{ will-change:transform; }
}
@media (prefers-reduced-motion:reduce){
  .announcement-bar::before{ animation:none !important; }
}

/* 7) Header sticky: el alto ya NO cambia al hacer scroll. Antes pasaba de 12px a
      8px de padding: la página "saltaba" y cerca del borde superior el header
      parpadeaba entrando y saliendo del estado .scrolled */
.header, .header.scrolled{ padding-top:12px !important; padding-bottom:12px !important; }

/* 8) Barra flotante de categorías: aparece con transform (GPU) justo bajo el
      header, sin animar "top" ni blur permanente (antes se montaba sobre el header) */
.category-filter-bar{
  top:calc(var(--hdr-h,72px) + 8px) !important;
  transform:translate(-50%,-180%) !important;
  transition:transform .35s cubic-bezier(.4,0,.2,1), opacity .3s ease !important;
  -webkit-backdrop-filter:none !important; backdrop-filter:none !important;
  background:rgba(255,255,255,.98) !important;
}
.category-filter-bar.visible{ top:calc(var(--hdr-h,72px) + 8px) !important; transform:translate(-50%,0) !important; }
@media (max-width:768px){
  .category-filter-bar, .category-filter-bar.visible{ top:var(--hdr-h,64px) !important; left:0 !important; }
  .category-filter-bar{ transform:translateY(-180%) !important; }
  .category-filter-bar.visible{ transform:translateY(0) !important; }
}

/* ============================================================
   ETIQUETA DE GÉNERO (Hombre / Mujer / Unisex)
   ============================================================ */
.gender-tag{
  display:inline-flex; align-items:center; margin-left:6px; padding:2px 8px; border-radius:999px;
  font:800 9.5px/1.4 'Inter',system-ui,sans-serif; letter-spacing:.08em; text-transform:uppercase;
  vertical-align:middle; white-space:nowrap; border:1px solid transparent;
}
.gender-tag.g-hombre{ background:#E0EDFF; color:#1D4ED8; border-color:rgba(29,78,216,.18); }
.gender-tag.g-mujer { background:#FFE4EE; color:#BE185D; border-color:rgba(190,24,93,.18); }
.gender-tag.g-unisex{ background:#EFE9FF; color:#6D28D9; border-color:rgba(109,40,217,.18); }
.product-category-page .gender-tag{ font-size:10.5px; padding:3px 10px; margin-left:8px; }

/* ============================================================
   LOGO DEL FOOTER · proporción correcta + borde neón
   ============================================================ */
.footer-brand img,
body.r365t .footer-brand img{
  display:block; width:auto !important; height:auto !important;
  max-width:min(240px, 100%); max-height:96px; aspect-ratio:500 / 200; object-fit:contain;
  margin:-6px 0 14px -10px;   /* compensa el margen transparente del PNG */
  filter:
    drop-shadow(0 0 1px rgba(255,255,255,.9))
    drop-shadow(0 0 4px rgba(255,77,106,.85))
    drop-shadow(0 0 12px rgba(255,77,106,.55))
    drop-shadow(0 0 22px rgba(204,255,0,.25));
  animation:r365Neon 3.4s ease-in-out infinite;
  will-change:filter;
}
@keyframes r365Neon{
  0%,100%{ filter:drop-shadow(0 0 1px rgba(255,255,255,.9)) drop-shadow(0 0 4px rgba(255,77,106,.85)) drop-shadow(0 0 12px rgba(255,77,106,.55)) drop-shadow(0 0 22px rgba(204,255,0,.25)); }
  45%    { filter:drop-shadow(0 0 1px rgba(255,255,255,1))  drop-shadow(0 0 6px rgba(0,229,255,.9))  drop-shadow(0 0 16px rgba(0,229,255,.55)) drop-shadow(0 0 28px rgba(204,255,0,.35)); }
  48%    { filter:drop-shadow(0 0 1px rgba(255,255,255,.5)) drop-shadow(0 0 2px rgba(0,229,255,.4))  drop-shadow(0 0 6px rgba(0,229,255,.25))  drop-shadow(0 0 10px rgba(204,255,0,.1)); }
  52%    { filter:drop-shadow(0 0 1px rgba(255,255,255,1))  drop-shadow(0 0 6px rgba(0,229,255,.9))  drop-shadow(0 0 16px rgba(0,229,255,.55)) drop-shadow(0 0 28px rgba(204,255,0,.35)); }
}
@media (max-width:640px){ .footer-brand img, body.r365t .footer-brand img{ max-width:200px; margin:0 0 12px -8px; } }
@media (prefers-reduced-motion: reduce){ .footer-brand img, body.r365t .footer-brand img{ animation:none; } }
