/* NEON rojo/blanco – opcional */
:root{ --neon-red:#ff4040; --neon-red-2:#ff7a7a; --neon-white:#e7f0ff; }

.accent{
  color:transparent;
  background:linear-gradient(90deg,var(--rf-red),var(--neon-red-2));
  -webkit-background-clip:text; background-clip:text;
  text-shadow:0 0 12px rgba(255,64,64,.55),0 0 28px rgba(255,64,64,.25);
}
.section-title{ position:relative }
.section-title::after{
  content:""; position:absolute; left:0; bottom:-10px; width:88px; height:3px;
  background:linear-gradient(90deg,var(--neon-red),transparent 70%);
  filter:drop-shadow(0 0 8px rgba(255,64,64,.65)); border-radius:3px;
}
.site-nav a{ position:relative }
.site-nav a::after{
  content:""; position:absolute; left:10%; right:10%; bottom:-6px; height:2px;
  background:linear-gradient(90deg,var(--neon-red),transparent 70%);
  transform:scaleX(0); transform-origin:left; transition:transform .18s ease;
  box-shadow:0 0 8px rgba(255,64,64,.55); border-radius:2px;
}
.site-nav a:hover::after,.site-nav a.active::after{ transform:scaleX(1) }

.card{ position:relative; overflow:hidden }
.card::before{
  content:""; position:absolute; inset:0; pointer-events:none; opacity:0; border-radius:inherit;
  background:radial-gradient(60% 40% at 50% 0%, rgba(255,64,64,.18), transparent 70%),
             linear-gradient(180deg, transparent, rgba(255,255,255,.02));
  box-shadow:0 0 0 1px var(--rf-border), 0 0 24px rgba(255,64,64,.18) inset;
  transition:opacity .18s ease;
}
.card:hover::before{ opacity:1 }

.btn-primary{
  position:relative;
  background:linear-gradient(180deg,var(--rf-red),var(--rf-red-700));
  box-shadow:0 6px 18px rgba(211,47,47,.35);
}
.btn-primary::after{
  content:""; position:absolute; inset:-6px; border-radius:12px; z-index:-1;
  background:radial-gradient(70% 100% at 50% 0%, rgba(255,64,64,.35), transparent 70%);
  filter:blur(10px); opacity:.9;
}

.brand-row img{
  transition:transform .18s ease, filter .18s ease, opacity .18s ease;
  filter:brightness(1) contrast(1);
}
.brand-row img:hover{
  transform:translateY(-2px) scale(1.04);
  filter:brightness(1.15) drop-shadow(0 0 8px rgba(255,255,255,.25))
         drop-shadow(0 0 12px rgba(255,64,64,.35));
}

.catalog .search input:focus,.sort select:focus{
  border-color:#3a4153;
  box-shadow:0 0 0 3px rgba(255,64,64,.18), 0 0 0 6px rgba(255,64,64,.08);
}

.brands-filter label:has(input:checked){
  background:rgba(255,64,64,.14); border-color:rgba(255,64,64,.45); color:#ff9d9d;
  box-shadow:0 0 12px rgba(255,64,64,.22) inset, 0 2px 10px rgba(0,0,0,.25);
}

.hero-art{
  background:
    radial-gradient(70% 60% at 80% 0%, rgba(255,64,64,.22), transparent 70%),
    repeating-linear-gradient(135deg, rgba(255,255,255,.08) 0 10px, transparent 10px 20px),
    #0f131b;
  box-shadow:0 20px 40px rgba(0,0,0,.6), 0 0 24px rgba(255,64,64,.25) inset;
}

@keyframes rf-pulse { 0%,100%{ box-shadow:0 0 0 0 rgba(255,64,64,.35) } 50%{ box-shadow:0 0 0 10px rgba(255,64,64,.06) } }
.wa-float{ animation:rf-pulse 2.4s ease-in-out infinite }

@media (prefers-reduced-motion:reduce){ *{ animation:none !important; transition:none !important } }


/* Hero – tarjeta de bienvenida (ocupa el lugar del hero-art) */
.hero-card{
  padding: 1.1rem 1.1rem 1.2rem;
  border: 1px solid var(--rf-border);
  border-radius: 18px;
  background:
    radial-gradient(70% 60% at 80% 0%, rgba(211,47,47,.14), transparent 70%),
    repeating-linear-gradient(135deg, rgba(255,255,255,.06) 0 10px, transparent 10px 20px),
    var(--rf-light);
  box-shadow: 0 20px 40px rgba(0,0,0,.35), 0 0 24px rgba(211,47,47,.15) inset;
  display: flex; flex-direction: column; gap: .6rem;
  min-height: 320px;
}
.hero-card h3{ margin:0; font-size: clamp(1.1rem, 1.8vw, 1.35rem); }
.logo-mini{ color: var(--rf-red); }
.hero-points{ list-style:none; padding:0; margin:.25rem 0 .5rem; display:grid; gap:.35rem }
.hero-points li{ color: var(--rf-dark); opacity:.92 }
.hero-actions{ margin-top:auto; display:flex; gap:.6rem; flex-wrap:wrap }
@media (max-width: 860px){
  .hero-card{ min-height: 220px; }
}
