body{
background:#0f0f0f;
color:#fff;
font-family:Arial,sans-serif;
}

/* =========================
   LINKS
========================= */

a,
a:link,
a:visited{
color:inherit;
text-decoration:none;
}

a:hover{
text-decoration:none;
}

/* =========================
   BOTONES
========================= */

.btn-store{
background:#e10600;
color:#fff;
border:none;
padding:12px 25px;
border-radius:10px;
text-decoration:none;
display:inline-block;
transition:.3s;
}

.btn-store:hover{
background:#c10500;
color:#fff;
}

/* =========================
   TARJETAS
========================= */

.card-store{
background:#171717;
border-radius:20px;
padding:25px;
height:100%;
border:1px solid rgba(255,255,255,.05);
transition:.3s;
overflow:hidden;
display:flex;
flex-direction:column;
}

.card-store:hover{
transform:translateY(-5px);
border-color:#e10600;
}

/* =================================
   HEADER CUSTOM STORE
================================= */

.store-header{
background:#111;
padding:20px 0;
border-bottom:1px solid rgba(255,255,255,.08);
}

.logo-area{
text-align:center;
margin-bottom:20px;
}

.logo-customstore{
display:block;
margin:0 auto;
max-width:220px;
height:auto;
}

/* MENU */

.store-nav{
display:flex;
justify-content:center;
align-items:center;
gap:20px;
margin-bottom:6px;
overflow-x:visible;
overflow-y:hidden;
white-space:nowrap;
padding:0 15px;
scrollbar-width:none;
}

.store-nav::-webkit-scrollbar{
display:none;
}

.store-nav a{
color:#fff;
font-size:15px;
padding:6px 12px;
border-radius:999px;
white-space:nowrap;
transition:.3s;
}

.store-nav a:hover{
background:#e10600;
color:#fff;
}

/* BUSCADOR */

.header-search{
width:100%;
max-width:680px;
margin:0 auto;
padding:0 15px;

display:flex;
align-items:center;
gap:10px;
}

.header-search-input{
flex:1;
height:52px;
border:none;
outline:none;
box-shadow:none;
border-radius:12px;
padding:0 15px;
font-size:16px;
background:#fff;
color:#000;

appearance:none;
-webkit-appearance:none;
}

.header-search-btn{
width:52px;
height:52px;

background:#e10600 !important;
color:#fff !important;

border:none !important;
outline:none !important;
box-shadow:none !important;

border-radius:12px;

font-size:18px;

display:flex;
align-items:center;
justify-content:center;

cursor:pointer;

overflow:hidden;

appearance:none;
-webkit-appearance:none;
}

.header-search-btn:hover{
background:#c10500;
}


.header-search-btn:focus,
.header-search-btn:active{
outline:none !important;
box-shadow:none !important;
border:none !important;
background:#c10500 !important;
}

/* MOBILE */

@media(max-width:768px){

.logo-customstore{
max-width:170px;
}

.store-nav{
display:flex;
justify-content:flex-start;
gap:20px;
overflow-x:auto;
padding:0 20px;
}

.store-nav a{
flex-shrink:0;
padding:8px 14px;
background:#171717;
border:1px solid rgba(255,255,255,.08);
border-radius:999px;
}

}



/* =========================
   PRODUCTOS
========================= */

.producto-img{
width:100%;
height:220px;
object-fit:contain;
background:#fff;
padding:15px;
border-radius:12px;
transition:.3s;
}

.card-store:hover .producto-img{
transform:scale(1.03);
}

.producto-titulo{
font-size:22px;
font-weight:700;
color:#fff;
margin-top:15px;
min-height:60px;
}

.card-store:hover .producto-titulo{
color:#e10600;
}

.precio{
font-size:24px;
font-weight:800;
color:#e10600;
margin-top:10px;
}

.precio-final{
font-size:36px;
font-weight:800;
color:#e10600;
margin:15px 0;
}

.precio-oferta{
font-size:24px;
text-decoration:line-through;
color:#888;
margin-right:15px;
}

/* =========================
   DETALLE PRODUCTO
========================= */

.producto-detalle-img{
width:100%;
border-radius:20px;
background:#171717;
padding:10px;
}

/* =========================
   SECCIONES
========================= */

.section{
padding:30px 0;
}

.section h1{
font-size:42px;
font-weight:800;
margin-bottom:15px;
color:#fff;
}

.section h2{
font-weight:700;
margin-bottom:30px;
}

.section p{
color:#ccc;
}

/* =========================
   RUBROS
========================= */

.rubro-descripcion{
color:#e0e0e0 !important;
font-size:18px;
line-height:1.6;
margin-bottom:30px;
}

/* =========================
   BANNER PRINCIPAL
========================= */

.banner-store{
margin-top:25px;
margin-bottom:35px;
}

.banner-store img{
width:100%;
height:auto;
display:block;
border-radius:20px;
box-shadow:0 10px 40px rgba(0,0,0,.35);
}

/* =========================
   DIVISORES
========================= */

.store-divider{
border:0;
height:1px;
background:rgba(255,255,255,.08);
margin:50px 0;
}

/* =========================
   BUSCADOR
========================= */

.search-store input{
background:#171717;
border:1px solid rgba(255,255,255,.08);
color:#fff;
}

.search-store input:focus{
background:#171717;
color:#fff;
border-color:#e10600;
box-shadow:none;
}

/* =========================
   CARRITO
========================= */

.carrito-badge{
display:inline-block;
min-width:20px;
text-align:center;
background:#e10600;
color:#fff;
padding:2px 6px;
border-radius:999px;
font-size:11px;
font-weight:bold;
margin-left:5px;
}

/* =========================
   FOOTER
========================= */

.footer{
background:#111;
padding:60px 0;
margin-top:80px;
border-top:1px solid rgba(255,255,255,.08);
}

.footer h4,
.footer h5{
color:#fff;
font-weight:700;
}

.footer p,
.footer small{
color:#ccc;
}

.footer a{
color:#fff;
transition:.3s;
}

.footer a:hover{
color:#e10600;
text-decoration:none;
}

.footer-company-info{
font-size:.55rem;
line-height:1.0;
opacity:.8;
}

.footer-company-info strong{
font-size:.55rem;
}

.legal-links{
font-size:14px;
}

button,
input,
select,
textarea{
-webkit-appearance:none;
appearance:none;
outline:none;
box-shadow:none;
border:none;
}

/* =========================
   BENEFICIOS
========================= */

.beneficios-bar{
display:flex;
justify-content:center;
align-items:center;
gap:25px;

background:#171717;
border:1px solid rgba(255,255,255,.06);
border-radius:16px;

padding:12px 20px;

margin:15px 0 25px;
}

.beneficio-item{
display:flex;
align-items:center;
gap:8px;

font-size:14px;
font-weight:600;

color:#fff;
}

.beneficio-item span{
white-space:nowrap;
}

@media(max-width:768px){

.beneficios-bar{
overflow-x:auto;
justify-content:flex-start;
padding:14px 18px;
gap:20px;

scrollbar-width:none;
}

.beneficios-bar::-webkit-scrollbar{
display:none;
}

.beneficio-item{
flex-shrink:0;
}

}