body{
    margin:0;
    min-height:100vh;

    background-image:
        linear-gradient(rgba(0,0,0,.15), rgba(0,0,0,.15)),
        url("../img/fondo.jpg");

    background-size:cover;
    background-position:center;
    background-attachment:fixed;
}

body::before{
    content:"";
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.08);
    pointer-events:none;
}

.hero{
    display:flex;
    justify-content:center;
    align-items:center;

    padding:80px 0;
    margin-top:40px;
}

.hero-box{
    background: rgba(0,0,0,0.8);
    border-radius: 25px;
    padding: 20px;
    width: 800px;      
    max-width: 90%;
    margin: 30px auto;
}

.hero-contenido{
    text-align:center;
}

.hero-logo{
    width: 750px;      
    max-width: 100%;
    height: auto;
    display: block;
}

.hero-logo img{
    width:600px;
    max-width:90%;
    height:auto;
    display:block;
    margin:auto;
}

.hero-logo button{
    margin-top:20px;

    background:#c8a65a;
    color:black;

    border:none;

    padding:15px 40px;

    font-size:1.1rem;
    font-weight:bold;

    cursor:pointer;

    transition:.3s;
}

.hero-logo button:hover{
    transform:scale(1.05);
}

main,
.nosotros,
.beneficios{
    background:transparent;
}
  
main h2{
    text-align:center;
    font-size:70px;
    color:white;
    text-shadow:4px 4px 10px rgba(0,0,0,.8);
    margin-bottom:60px;
}

.producto{
    transition:.3s;
    box-shadow:0 8px 20px rgba(0,0,0,.3);
}

.producto:hover{
    transform:translateY(-8px);
    box-shadow:0 15px 35px rgba(0,0,0,.5);
}

.productos-grid{
    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(250px,1fr));

    gap:25px;

    max-width:1400px;

    margin:auto;

    padding:20px;
}

.card{
    width:280px;

    background:#f5f5f5;

    border-radius:30px;

    padding:20px;

    text-align:center;

    box-shadow:
    0 10px 25px rgba(0,0,0,.25);

    transition:.3s;
}

.btn-whatsapp{
    display:block;

    width:90%;

    margin:15px auto 0;

    padding:12px;

    background:#25D366;

    color:white;

    text-decoration:none;

    border-radius:10px;

    font-size:15px;

    font-weight:bold;
}

.badge{

    right:15px;

    background:e53935;
    color:white;

    padding:6px 12px;
    border-radius:20px;

    font-size:12px;
    font-weight:bold;
}

.card img{
    width:240px;
    height:240px;

    object-fit:contain;

    display:block;
    margin:auto;
}

.card:hover{
    transform:translateY(-8px);

    box-shadow:
    0 15px 35px rgba(0,0,0,.35);
}

.card button{
    width:100%;

    padding:14px;

    border:none;

    border-radius:30px;

    background:#2f8a3f;

    color:white;

    font-weight:bold;

    font-size:16px;

    cursor:pointer;

    transition:.3s;
}

.card button:hover{
    background:#236b31;
}

.card button:hover{
    background:#1b5e20;
}

.card h3{
    font-size:22px;
    color:#111;

    margin:10px 0;
}

.card p{
    font-size:36px;
    font-weight:bold;
    color:#1e7e34;
    text-shadow:0 2px 5px rgba(0,0,0,.15);
    margin:10px 0 20px;
}

header{
    background-image:url("../img/camuflado.jpg");
    background-size:cover;
    background-position:center;

    display:flex;
    align-items:center;

    padding:15px 40px;

    position:fixed;
    top:0;
    left:0;

    width:100%;
    box-sizing:border-box;

    z-index:1000;
}

.logo{
    display:flex;
    align-items:center;
    gap:15px;
}

.menu{
    margin-left:auto;
    margin-right:40px;
    display:flex;
    gap:60px;
}

.carrito{
    color:white;
    font-size:28px;
    display:flex;
    align-items:center;
}

nav a{
    color:white;
    text-decoration:none;
    font-weight:bold;
    font-size:20px;
}

nav a:hover{
    color:#c9a96a;
}

.overlay{
    background:rgba(0,0,0,.75);

    padding:50px;

    max-width:900px;
    width:80%;

    border-radius:15px;

    display:flex;
    flex-direction:column;

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

    text-align:center;

    color:white;
    margin:auto;
    
}

.overlay h1{
    font-size:64px;
    margin:0 0 20px 0;
}

.overlay p{
    font-size:28px;
    
    margin-bottom:40px;
}

.overlay button{
    display:block;
    margin:30px auto 0 auto;
    margin-top:20px;
    padding:15px 35px;
    border:none;
    background:#c9a96a;
    cursor:pointer;
    font-size:18px;
}

.beneficios{
    display:flex;
    justify-content:center;
    gap:25px;
    padding:40px 20px;
    flex-wrap:wrap;
}

.beneficio{
    width:280px;
    padding:20px;
    text-align:center;

    background:rgba(255,255,255,.9);
    border-radius:15px;
}

.beneficio h3{
    color:#222;
    font-size:22px;
}

.beneficio p{
    color:#555;
    font-size:16px;
}

.footer{
    background-image: url("../img/camuflado.jpg");
    background-size: cover;
    background-position: center;
    padding: 10px 20px; /* antes probablemente tenías 60px o más */
}

.footer-contenido{
    text-align: center;
    max-width: 1000px;
    margin: auto;
}

.footer-contenido h2{
    color: #d4af37;
    font-size: 2.3rem;
    margin-bottom: 15px;
}

.footer-contenido p{
    color: #d4af37;
    font-size: 1.2rem;
    margin: 8px 0;
    font-weight: bold;
}

.redes{
    margin: 15px 0;
}

.footer-redes a{
    color: #d4af37;
    font-size: 2rem;
    margin: 0 12px;
    transition: 0.3s;
}

.redes a:hover{
    color:white;
}

.footer-links{
    margin-top: 15px;
    display:flex;
    justify-content:center;
    gap:30px;
    flex-wrap:wrap;
}

.footer-links a{
    color: #d4af37;
    text-decoration: none;
    margin: 0 15px;
    font-size: 1rem;
    font-weight: bold;
}

.footer-links a:hover{
    color: white;
}

.copyright{
    color: #d4af37 !important;
    font-size: 1rem;
    margin-top: 15px;
}

.redes a{
    color:#c9a96a;
}

.beneficio:hover{
    transform:translateY(-10px);
    box-shadow:0 15px 30px rgba(0,0,0,.15);
}

.nosotros{
    max-width: 750px;
    margin: 60px auto;
    padding: 25px 35px; /* antes 40px 50px */

    background: rgba(255,255,255,.88);
    border-radius: 15px;

    text-align: center;
    box-shadow: 0 8px 25px rgba(0,0,0,.25);
}

.nosotros-contenido{
    max-width:700px;
    margin:auto;

    background:rgba(255,255,255,.92);
    padding:40px;

    border-radius:15px;

    box-shadow:0 8px 20px rgba(0,0,0,.15);
}

.nosotros h2{
    font-size: 42px;
    margin-bottom: 15px;
}

.nosotros p{
    font-size: 18px;
    line-height: 1.5;
    max-width: 650px;
    margin: auto;
}

.redes{
    margin:20px 0;
}

.redes a{
    color:#c9a96a;
    text-decoration:none;
    margin:0 15px;
}

.redes a:hover{
    color:white;
}

.destacados{
    padding: 80px 20px 40px;
}

.destacados h2{
    text-align:center;
    color:white;
    font-size:50px;
    margin-bottom:40px;
    text-shadow:3px 3px 8px rgba(0,0,0,.8);
}

.explorar{
    padding:60px 0;
}

.explorar h2{
    text-align:center;
    color:white;
    font-size:55px;
    margin-bottom:40px;
    text-shadow:0 4px 10px rgba(0,0,0,.5);
}

.slider-productos{
    display:flex;
    gap:25px;
    overflow-x:auto;
    padding:20px 40px;
    scroll-behavior:smooth;
}

.slider-productos::-webkit-scrollbar{
    height:8px;
}

.slider-productos::-webkit-scrollbar-thumb{
    background:#c9a96a;
    border-radius:20px;
}

.mini-card{
    min-width:280px;
    background:rgba(255,255,255,.92);
    border-radius:15px;
    overflow:hidden;
    text-align:center;
    box-shadow:0 8px 20px rgba(0,0,0,.3);
    transition:.3s;
}

.mini-card:hover{
    transform:translateY(-8px);
}

.mini-card img{
    width:100%;
    height:220px;
    object-fit:cover;
}

.mini-card h3{
    padding:15px;
    font-size:24px;
}

.carousel-container{
    position:relative;
    display:flex;
    align-items:center;
    width:90%;
    margin:auto;
}

.carousel {
    position: relative;
    width: 90%;
    margin: 40px auto;
    overflow: hidden;
}

.carousel-track{
    display:flex;
    gap:20px;
}

.carousel-item{
    min-width:calc((100% - 60px) / 4);
    background:rgba(255,255,255,.95);
    border-radius:15px;
    overflow:hidden;
    text-align:center;
}

.carousel-item img{
    width:100%;
    height:220px;
    object-fit:contain;
    background:white;
}

.carousel-item h3{
    font-size:18px;
    padding:15px;
}

.flecha-tiro{
    position:absolute;
    top:50%;
    transform:translateY(-50%);

    width:50px;
    height:50px;

    border:none;
    border-radius:50%;

    background:rgba(0,0,0,.7);
    color:white;

    font-size:24px;
    cursor:pointer;

    z-index:10;

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

.izquierda{
    left:-25px;
}

.derecha{
    right:-25px;
}

.logo{
    display:flex;
    align-items:center;
    gap:15px;
}

.logo img{
    width:55px;
    height:55px;
    border-radius:50%;
    background:white;
    padding:3px;
}

.logo h1{
    color:white;
    font-size:32px;
    letter-spacing:3px;
    margin:0;
}

.menu a{
    color:white;
    text-decoration:none;
    font-size:20px;
    font-weight:bold;
}

.carrito{
    position:relative;
    color:white;
    font-size:28px;
    cursor:pointer;
}

.carrito span{
    position:absolute;
    top:-8px;
    right:-12px;

    width:22px;
    height:22px;

    border-radius:50%;
    background:#c9a96a;
    color:black;

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

    font-size:12px;
    font-weight:bold;
}
.marcas{
    padding:40px 0;
    border-top:1px solid rgba(255,255,255,.15);
    border-bottom:1px solid rgba(255,255,255,.15);
}

.logos-marcas{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:45px;
    flex-wrap:wrap;
}

.logos-marcas img{
    height:70px;
    width:auto;
    object-fit:contain;
}

.logos-marcas{
    gap:40px;
}

.logos-marcas img:hover{
    opacity:1;
    filter:none;
    transform:scale(1.08);
}

/* VIDEOS */

.videos{
    display:flex;
    justify-content:center;
    gap:30px;
    flex-wrap:wrap;
    margin:60px auto;
}

.video-card{
    position:relative;
    width:350px;
    overflow:hidden;
    border-radius:15px;
    text-decoration:none;
    transition:0.3s;
}

.video-card img{
    width:100%;
    height:200px;
    object-fit:cover;
    display:block;
    border-radius:15px;
}

.video-card:hover{
    transform:scale(1.03);
}

.play-btn{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
    width:70px;
    height:70px;
    background:rgba(0,0,0,0.7);
    border-radius:50%;
    color:white;
    font-size:30px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.contacto-footer p,
.contacto-footer a,
.footer-copy {
    color: #d4af37;
    font-weight: bold;
}

.contacto-footer i{
    color: #d4af37;
    margin-right: 10px;
}

.whatsapp-float,
.instagram-float,
.youtube-float{
    position: fixed;
    width: 65px;
    height: 65px;
    border-radius: 50%;
    text-align: center;
    line-height: 65px;
    font-size: 34px;
    color: white;
    right: 25px;
    z-index: 999;
    box-shadow: 0 4px 10px rgba(0,0,0,.4);
    transition: 0.3s;
}

.youtube-float{
    background: #ff0000;
    bottom: 220px;
}

.instagram-float{
    background: #E4405F;
    bottom: 140px;
}

.whatsapp-float{
    background: #25D366;
    bottom: 60px;
}

.youtube-float:hover,
.instagram-float:hover,
.whatsapp-float:hover{
    transform: scale(1.1);
}

/* =========================
   PAGINAS LEGALES PREMIUM
========================= */

.legal{
    max-width: 1000px;
    margin: 80px auto;
    padding: 60px;
    background: rgba(0,0,0,.82);
    border: 1px solid rgba(212,175,55,.25);
    border-radius: 25px;
    backdrop-filter: blur(12px);
    box-shadow:
        0 0 30px rgba(212,175,55,.08),
        0 15px 40px rgba(0,0,0,.6);
}

.legal h1{
    text-align:center;
    color:#fff;
    font-size:52px;
    margin-bottom:45px;
    position:relative;
}

.legal h1::after{
    content:"";
    display:block;
    width:120px;
    height:3px;
    background:#d4af37;
    margin:18px auto 0;
    border-radius:20px;
}

.legal p{
    color:#d7d7d7;
    font-size:20px;
    line-height:1.9;
    margin-bottom:28px;
    padding-left:22px;
    border-left:3px solid #d4af37;
}

.legal p:hover{
    color:#fff;
    transition:.3s;
}

.volver{
    position:fixed;
    top:140px;
    left:35px;

    width:60px;
    height:60px;

    border-radius:50%;
    background:#111;

    border:1px solid rgba(212,175,55,.35);

    color:#d4af37;

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

    text-decoration:none;

    font-size:24px;

    transition:.3s;
}

.volver:hover{
    background:#d4af37;
    color:#111;
    transform:translateX(-4px);
}

.legal-tag{
    display:block;
    text-align:center;
    color:#d4af37;
    letter-spacing:6px;
    font-size:13px;
    font-weight:700;
    margin-bottom:15px;
}

.modal-aviso{
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.85);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

.modal-contenido{
    width: 650px;
    max-width: 90%;
    background: #111;
    color: white;
    padding: 30px;
    border: 2px solid #c9a44d;
    border-radius: 15px;
    text-align: center;
    position: relative;
}

.modal-contenido h2{
    color: #c9a44d;
    margin-bottom: 20px;
}

.modal-contenido p{
    font-size: 20px;
    line-height: 1.8;
    text-align: center;
    max-width: 700px;
    margin: 0 auto 35px auto;
}

.modal-contenido button{
    background: #c9a44d;
    color: black;
    border: none;
    padding: 12px 25px;
    border-radius: 8px;
    cursor: pointer;
    font-weight: bold;
}
.panel-carrito{
    position:fixed;
    top:0;
    right:-400px;

    width:380px;
    height:100vh;

    background:#111;

    color:white;

    transition:.4s;

    z-index:9999;

    box-shadow:-5px 0 15px rgba(0,0,0,.4);
}

.panel-carrito.activo{
    right:0;
}

.panel-header{
    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:20px;

    border-bottom:1px solid #333;
}

.cerrar{
    font-size:30px;
    cursor:pointer;
}

#items-carrito{
    padding:20px;
    overflow-y:auto;
    height:70%;
}

.panel-footer{
    position:absolute;
    bottom:0;
    width:100%;

    padding:20px;

    border-top:1px solid #333;

    background:#1a1a1a;
}

.btn-finalizar{
    width:100%;
    padding:15px;

    border:none;

    background:#c9a44d;

    color:black;

    font-weight:bold;

    cursor:pointer;

    border-radius:8px;
}

.dropdown{
    position:relative;
}

.dropdown-content{
    display:none;
    position:absolute;
    top:100%;
    left:0;

    background:#111;
    min-width:320px;

    border-radius:10px;
    padding:15px;

    max-height:80vh;
    overflow-y:auto;

    z-index:9999;

    box-shadow:0 0 15px rgba(0,0,0,.5);
}

.dropdown:hover .dropdown-content{
    display:block;
}

.categoria{
    color:#c9a96a;
    font-weight:bold;
    font-size:18px;
    text-transform:uppercase;
    margin-top:15px;
    margin-bottom:10px;

    border-bottom:1px solid rgba(201,169,106,.3);
    padding-bottom:5px;
}

.categoria a{
    display:block;
    color:white;
    text-decoration:none;
    font-weight:normal;
    font-size:16px;

    padding:4px 0;
    margin-left:15px;
}

.categoria a:hover{
    color:#c9a96a;
}

.descripcion{
    color:#2c8a44;
    font-size:14px;
    min-height:50px;
    margin:10px 0;
    line-height:1.4;
    font-weight:bold;

    margin-bottom: 15px;
}

.precio{
    font-size: 32px;
    font-weight: bold;
    color: #1e7e34;
}

.btn-whatsapp:hover{
    background:#1ebe5d;
}

#titulo-categoria{
    text-align:center;
    color:white;
    font-size:48px;
    margin:40px 0;
    text-transform:uppercase;
}

@media(max-width:1200px){
    .productos-grid{
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:768px){
    .productos-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:480px){
    .productos-grid{
        grid-template-columns:1fr;
    }
}

.stock{
    font-size: 14px;
    font-weight: bold;

    margin-bottom: 5px;
}

.modal-contenido{
    position: relative;

    max-width: 700px;

    background: #080808;

    border: 2px solid #cfa53a;

    border-radius: 20px;

    padding: 50px;

    text-align: center;

    color: white;
}

.logo-modal{
    display:block;
    width:120px;
    height:auto;

    margin:0 auto 30px auto;
}

.modal-contenido h2{
    color: #cfa53a;

    font-size: 38px;

    margin-bottom: 30px;
}

.modal-contenido p{
    font-size: 22px;

    line-height: 1.8;

    max-width: 550px;

    margin: 0 auto 35px auto;
}

#cerrar-modal{
    background: #cfa53a;

    color: black;

    border: none;

    padding: 15px 40px;

    border-radius: 10px;

    font-weight: bold;

    cursor: pointer;
}

#cerrar-modal:hover{
    transform: scale(1.05);

    transition: .3s;
}

.descripcion{
    font-size:16px;
    line-height:1.4;

    min-height:70px;

    color:#2a7c4f;
}

.btn-volver{
    position: fixed;
    top: 90px;
    left: 15px;

    z-index: 999999;

    background: #111;
    border: 2px solid #c9a44d;
    color: #c9a44d;

    padding: 10px 18px;
    border-radius: 25px;

    text-decoration: none;
    font-weight: bold;

    display: inline-block;
}

.catalogo-grid{
    display:flex;
    justify-content:center;
    align-items:flex-start;
    gap:15px;
    flex-wrap:wrap;

    max-width:900px;
    margin:40px auto;
}

#carousel-destacados{
    overflow:hidden;
    width:100%;
}

#productos{
    display:flex;
    gap:20px;
    padding:20px;
}

#productos .card{
    flex:0 0 280px;
}

#track-nuevos{
    display:flex;
    gap:20px;
}

#track-nuevos .carousel-item{
    min-width:calc((100% - 60px) / 4);

    background:rgba(255,255,255,.95);

    border-radius:15px;

    overflow:hidden;

    text-align:center;
}

.nuevos-ingresos{
    padding: 60px 20px;
}

.nuevos-ingresos h2{
    text-align:center;
    color:white;
    font-size:55px;
    margin-bottom:40px;
}

#track-nuevos{
    display:flex;
    gap:20px;
}

#track-nuevos .carousel-item{
    min-width:300px;
    flex-shrink:0;
}

.buscador{
    display:flex;
    align-items:center;
    margin:0 40px;
}

.buscador input{
    width:300px;
    padding:10px 15px;
    border:none;
    border-radius:30px 0 0 30px;
    outline:none;
    font-size:15px;
}

.buscador button{
    padding:10px 15px;
    border:none;
    background:#d4af37;
    color:#000;
    border-radius:0 30px 30px 0;
    cursor:pointer;
    font-size:16px;
}

.buscador button:hover{
    opacity:0.9;
}

.btn-volver{
    background:none;
    border:none;
    color:#d4af37;
    font-size:28px;
    cursor:pointer;
    margin-right:20px;
    transition:0.3s;
}

#header-container header{
    display:flex;
    align-items:center;
    width:100%;
}

.btn-atras{
    background:none;
    border:none;
    color:#d4af37;
    font-size:30px;
    cursor:pointer;
    margin-right:18px;
}

.btn-atras:hover{
    color:white;
    transform:translateX(-4px);
}

.contacto-page{
    padding:180px 20px 80px;
    text-align:center;
}

.contacto-page h1{
    color:white;
    font-size:60px;
    margin-bottom:40px;
}

.contacto-box{
    max-width:700px;
    margin:auto;

    background:rgba(255,255,255,.95);

    padding:40px;

    border-radius:25px;

    box-shadow:0 10px 30px rgba(0,0,0,.3);
}

.contacto-box p{
    font-size:24px;
    color:#222;
    margin:25px 0;
}

.contacto-box i{
    color:#c9a44d;
    margin-right:10px;
}

.btn-contacto{
    display:inline-block;

    margin-top:25px;

    background:#25D366;
    color:white;

    text-decoration:none;

    padding:15px 30px;

    border-radius:30px;

    font-weight:bold;
    font-size:18px;
}

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

.item-carrito{
    display:flex;
    align-items:center;
    gap:15px;
    margin-bottom:15px;
    padding:12px;
    border-bottom:1px solid #ddd;
}

.item-carrito img{
    width:70px;
    height:70px;
    object-fit:cover;
    border-radius:8px;
}

.item-carrito h4{
    margin:0;
    font-size:16px;
    color:#222;
}

.item-carrito p{
    margin:5px 0 0;
    color:#1e7e34;
    font-weight:bold;
}

.item-carrito button{
    margin-left:auto;
    width:35px;
    height:35px;
    border:none;
    border-radius:50%;
    background:#c0392b;
    color:white;
    font-size:18px;
    cursor:pointer;
}

.item-carrito button:hover{
    background:#922b21;
}

.panel-footer{
    padding:20px;
    border-top:1px solid #ddd;
}

#total-carrito{
    color:#1e7e34;
    font-size:24px;
    margin-bottom:15px;
}

.btn-finalizar{
    width:100%;
    padding:15px;
    border:none;
    border-radius:12px;
    background:#c9a96a;
    color:#111;
    font-weight:bold;
    font-size:18px;
    cursor:pointer;
    transition:.3s;
}

.btn-finalizar:hover{
    background:#b89555;
}

.panel-carrito h2,
.item-carrito h4,
#total-carrito{
    color:#c9a44d;
}

.item-carrito p{
    color:#1e7e34;
}

.panel-carrito{
    color:#c9a44d;
}

.cerrar{
    color:white;
}

.info-item-carrito{
    flex:1;
}

.cantidad-carrito{
    display:flex;
    align-items:center;
    gap:10px;
    margin:10px 0;
}

.cantidad-carrito button{
    width:35px;
    height:35px;
    border:none;
    border-radius:50%;
    background:#d4af5a;
    color:#000;
    font-size:20px;
    font-weight:bold;
    cursor:pointer;
    transition:0.3s;
}

.cantidad-carrito button:hover{
    transform:scale(1.1);
    background:#e0bf73;
}

.info-item-carrito strong{
    display:block;
    margin-top:4px;
    color:#c9a44d;
    font-size:13px;
}

.btn-eliminar{
    background:#c0392b !important;
    color:white !important;
}

.panel-carrito{
    box-sizing:border-box;
    width:420px;
    max-width:100%;
    padding-bottom:0;
}

.panel-header{
    padding:25px;
}

#items-carrito{
    height:calc(100vh - 230px);
    overflow-y:auto;
    padding:20px;
}

.item-carrito{
    display:grid;
    grid-template-columns:70px 1fr 40px;
    gap:15px;
    align-items:center;
    padding:18px 0;
}

.item-carrito img{
    width:70px;
    height:70px;
    object-fit:cover;
    border-radius:10px;
}

.info-item-carrito h4{
    color:#c9a44d;
    margin:0 0 5px;
    font-size:16px;
}

.info-item-carrito p{
    color:#1e7e34;
    margin:0;
    font-weight:bold;
}

.cantidad-carrito{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    margin:10px 0;
}

.cantidad-carrito button{
    width:30px;
    height:30px;
    border-radius:50%;
    border:none;
    background:#c9a44d;
    color:#111;
    font-weight:bold;
    cursor:pointer;
}

.cantidad-carrito{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    background:#111;
    border:1px solid #d4af5a;
    border-radius:30px;
    padding:5px 12px;
    width:max-content;
}

.info-item-carrito strong{
    color:#c9a44d;
    font-size:14px;
}

.btn-eliminar{
    width:35px;
    height:35px;
    border-radius:50%;
    border:none;
    background:#c0392b;
    color:white;
    font-weight:bold;
    cursor:pointer;
}

.panel-footer{
    box-sizing:border-box;
    width:100%;
    padding:25px;
}

.btn-finalizar{
    width:100%;
    height:60px;

    border:none;
    border-radius:40px;

    background:#d4b13f;
    color:#000;

    font-size:18px;
    font-weight:700;

    cursor:pointer;

    transition:.3s;
}

.btn-finalizar:hover{
    transform:translateY(-2px);
    background:#e0bc48;
}

.aviso-descuento{
    display:inline-flex;
    align-items:center;
    gap:10px;

    margin:15px 0 20px;
    padding:12px 20px;

    background:#111;
    color:#c9a44d;

    border:1px solid #c9a44d;
    border-radius:30px;

    font-size:16px;
    font-weight:bold;
}

.aviso-descuento i{
    color:#c9a44d;
}

.precio-contado{
    margin-top:10px;
    font-size:22px;
    font-weight:bold;
    color:#c9a44d;
}

.checkout-container{
    padding:150px 20px 80px;
    max-width:800px;
    margin:auto;
    text-align:center;
}

.checkout-container h1{
    color:white;
    font-size:55px;
    margin-bottom:35px;
}

#resumen-compra,
#form-checkout{
    background:rgba(255,255,255,.95);
    border-radius:25px;
    padding:30px;
    margin-bottom:25px;
    box-shadow:0 10px 30px rgba(0,0,0,.35);
}

.item-checkout{
    display:flex;
    justify-content:space-between;
    gap:20px;
    padding:15px 0;
    border-bottom:1px solid #ddd;
    font-size:18px;
}

#form-checkout input,
#form-checkout select{
    width:100%;
    box-sizing:border-box;
    padding:15px;
    margin-bottom:15px;
    border-radius:12px;
    border:1px solid #ccc;
    font-size:16px;
}

#total-final{
    margin:25px 0;
}

#total-final h2{
    color:#1e7e34;
    font-size:34px;
}

.descuento{
    color:#c0392b;
    font-weight:bold;
}

.item-checkout{
    display:grid;
    grid-template-columns:80px 1fr auto;
    align-items:center;
    gap:15px;
    padding:18px 0;
    border-bottom:1px solid #ddd;
    text-align:left;
}

.item-checkout img{
    width:80px;
    height:80px;
    object-fit:cover;
    border-radius:12px;
    background:white;
}

.item-checkout h3{
    margin:0;
    color:#111;
    font-size:20px;
}

.item-checkout p{
    margin:6px 0 0;
    color:#555;
    font-weight:bold;
}

.item-checkout strong{
    color:#1e7e34;
    font-size:20px;
}

.datos-transferencia{
    display:none;
    margin:30px auto;
    padding:30px;
    max-width:750px;

    background:linear-gradient(145deg, #111, #1c1c1c);
    border:2px solid #c9a44d;
    border-radius:25px;

    color:white;
    box-shadow:0 15px 35px rgba(0,0,0,.35);
}

.datos-transferencia h3{
    color:#c9a44d;
    font-size:26px;
    text-align:center;
    margin-bottom:25px;
}

.datos-transferencia p{
    color:white;
    font-size:17px;
    margin:12px 0;
}

.datos-transferencia strong{
    color:#c9a44d;
}

#monto-transferencia{
    margin-top:20px;
    padding:15px;
    background:#0b3d1d;
    border-radius:12px;
    text-align:center;
    font-size:22px;
    color:white;
}

.instruccion-transferencia{
    margin-top:25px;
    padding:18px;
    background:rgba(201,164,77,.12);
    border-left:5px solid #c9a44d;
    border-radius:12px;
}

.instruccion-transferencia p{
    color:#f1f1f1;
    line-height:1.6;
    font-size:15px;
}

.btn-whatsapp-pago{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;

    background:#1f8b34;
    color:white;

    font-size:28px;
    font-weight:700;
    letter-spacing:1px;

    padding:18px 40px;

    border:none;
    border-radius:14px;

    cursor:pointer;

    transition:.3s;
}

.btn-whatsapp-pago:hover{
    background:#25d366;
    transform:translateY(-3px);
    box-shadow:0 10px 25px rgba(37,211,102,.35);
}

.btn-whatsapp-pago i{
    font-size:34px;
}

.body-gracias{
    margin:0;
    min-height:100vh;
    background:#0f8f3a;
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:Arial, sans-serif;
}

.body-gracias::before{
    display:none;
}

.gracias-pago{
    text-align:center;
    color:white;
    padding:40px;
    max-width:720px;
}

/* ===== GRACIAS / CONFIRMACION ===== */

.body-gracias{
    margin:0;
    min-height:100vh;
    background:#0f8f3a;
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:Arial, sans-serif;
}

.body-gracias::before{
    display:none;
}

.gracias-pago{
    text-align:center;
    color:white;
    padding:40px;
    max-width:760px;
}

.logo-confirmacion{
    display:flex;
    justify-content:center;
    margin-bottom:35px;
}

.logo-circulo{
    width:180px;
    height:180px;
    border:5px solid white;
    border-radius:50%;
    overflow:hidden;

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

    position:relative;
    animation:logoAparece .8s ease;
    box-shadow:0 0 35px rgba(255,255,255,.35);
}

.logo-circulo img{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:50%;
}

.logo-circulo::before,
.logo-circulo::after{
    content:"";
    position:absolute;
    top:50%;
    left:50%;

    width:180px;
    height:180px;

    border:3px solid rgba(255,255,255,.35);
    border-radius:50%;

    transform:translate(-50%, -50%) scale(1);
    animation:ondaExterior 3s infinite;
}

.logo-circulo::after{
    animation-delay:1.5s;
}

.gracias-pago h1{
    font-size:52px;
    margin:35px 0 18px;
}

.gracias-pago p{
    font-size:21px;
    line-height:1.5;
    margin-bottom:25px;
}

.gracias-pago h2{
    font-size:34px;
    color:white;
    margin-bottom:35px;
}

.gracias-pago .btn-whatsapp-pago,
#form-checkout .btn-whatsapp-pago{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    margin:35px auto 0;
}

/* ===== BOTON MERCADO PAGO ===== */

.btn-whatsapp-pago.btn-mercadopago{
    background:#FFE600 !important;
    color:#2D3277 !important;

    border:none;
    border-radius:8px;

    padding:16px 34px;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;

    margin:35px auto 0;

    font-family:'Segoe UI', Arial, sans-serif;
    font-size:20px;
    font-weight:700;

    cursor:pointer;
    transition:.25s;
}

.btn-whatsapp-pago.btn-mercadopago:hover{
    background:#F7D800 !important;
    transform:translateY(-2px);
    box-shadow:0 10px 20px rgba(0,0,0,.15);
}

.mp-logo{
    height:28px;
    width:auto;
    display:block;
}

/* ===== ANIMACIONES ===== */

@keyframes logoAparece{
    0%{
        transform:scale(.3);
        opacity:0;
    }

    70%{
        transform:scale(1.08);
        opacity:1;
    }

    100%{
        transform:scale(1);
        opacity:1;
    }
}

@keyframes ondaExterior{
    0%{
        transform:translate(-50%, -50%) scale(1);
        opacity:.8;
    }

    100%{
        transform:translate(-50%, -50%) scale(2);
        opacity:0;
    }
}

.btn-whatsapp-pago.btn-mercadopago{
    background:#FFE600 !important;
    color:#2D3277 !important;
    box-shadow:none;
}

.btn-whatsapp-pago.btn-mercadopago:hover{
    background:#F7D800 !important;
    box-shadow:0 10px 20px rgba(0,0,0,.15);
}

.logo-circulo{
    overflow:visible !important;
}

.logo-circulo img{
    position:relative;
    z-index:2;
}

.logo-circulo::before,
.logo-circulo::after{
    content:"";
    position:absolute;
    top:50%;
    left:50%;

    width:180px;
    height:180px;

    border:3px solid rgba(255,255,255,.35);
    border-radius:50%;

    transform:translate(-50%, -50%) scale(1);
    animation:ondaExterior 3s infinite;

    z-index:1;
}

.logo-circulo::after{
    animation-delay:1.5s;
}

.btn-whatsapp-pago{
    background:linear-gradient(
        135deg,
        #111111,
        #222222
    );

    color:white;

    border:2px solid #25D366;

    box-shadow:
        0 10px 25px rgba(0,0,0,.35);

    padding:22px 45px;
    border-radius:18px;

    font-size:22px;
    font-weight:700;

    transition:.3s;
}

.btn-whatsapp-pago:hover{
    transform:translateY(-4px);

    box-shadow:
        0 0 25px rgba(37,211,102,.4);
}

.btn-volver{
    position:fixed;

    top:100px;
    left:25px;

    width:55px;
    height:55px;

    border-radius:50%;

    background:#111;
    color:#fff;

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

    text-decoration:none;

    border:2px solid #c9a96a;

    font-size:22px;

    z-index:999;

    transition:.3s;
}

.btn-volver:hover{
    transform:translateX(-4px);

    background:#1c1c1c;

    box-shadow:
        0 0 20px rgba(201,169,106,.4);
}

.btn-volver{
    position:fixed;
    top:35px;
    left:35px;

    width:58px;
    height:58px;

    border-radius:50%;

    background:rgba(255,255,255,.12);
    color:white;

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

    text-decoration:none;

    border:2px solid rgba(255,255,255,.8);

    font-size:24px;

    z-index:9999;

    backdrop-filter:blur(6px);

    transition:.3s;
}

.btn-volver:hover{
    transform:translateX(-4px);
    background:rgba(255,255,255,.22);
    box-shadow:0 0 25px rgba(255,255,255,.25);
}

.fila-form{
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:15px;
}

@media(max-width:600px){
    .fila-form{
        grid-template-columns:1fr;
    }
}

.factura-opcional{
    margin-top:15px;
    text-align:left;
}

.factura-opcional label{
    color:#222;
    font-size:16px;
    font-weight:600;

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

    cursor:pointer;
}

.factura-opcional input{
    width:18px;
    height:18px;
    cursor:pointer;
}

.factura-opciones{
    margin-top:15px;
    margin-bottom:20px;

    display:flex;
    gap:30px;
    align-items:center;
    flex-wrap:wrap;
}

.factura-opciones label{
    display:flex;
    align-items:center;
    gap:8px;

    font-size:16px;
    font-weight:600;
    color:#333;

    cursor:pointer;
}

.factura-opciones input[type="checkbox"]{
    width:18px;
    height:18px;
    margin:0;
}

.info-retiro{
    display:none;

    margin:20px 0;
    padding:20px;

    background:#111;
    color:white;

    border-radius:18px;
    border:2px solid #c9a96a;

    box-shadow:0 10px 25px rgba(0,0,0,.35);
}

.mapa-retiro{
    height:180px;
    border-radius:14px;

    background:
        linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px),
        linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px),
        linear-gradient(135deg, #1f2b1f, #324832);

    background-size:35px 35px, 35px 35px, cover;

    position:relative;
    overflow:hidden;

    margin-bottom:18px;
}

.mapa-retiro::before{
    content:"San Martín 101";
    position:absolute;
    bottom:18px;
    left:20px;

    color:#c9a96a;
    font-size:18px;
    font-weight:700;
}

.pin-shooter{
    position:absolute;
    top:50%;
    left:50%;

    transform:translate(-50%, -50%);

    width:70px;
    height:70px;

    border-radius:50%;
    background:white;

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

    border:4px solid #c9a96a;

    box-shadow:
        0 0 0 12px rgba(201,169,106,.20),
        0 0 30px rgba(201,169,106,.45);
}

.pin-shooter img{
    width:58px;
    height:58px;
    object-fit:contain;
    border-radius:50%;
}

.datos-retiro h3{
    color:#c9a96a;
    margin-bottom:10px;
}

.datos-retiro p{
    font-size:16px;
    line-height:1.5;
    margin-bottom:8px;
}

.info-retiro{
    display:none;
    margin:25px 0;

    border-radius:18px;
    overflow:hidden;

    border:2px solid #c9a96a;

    box-shadow:
        0 12px 30px rgba(0,0,0,.35);
}

.imagen-retiro{
    width:100%;
    display:block;
    border-radius:16px;
}

.info-retiro{
    display:none;
    margin:30px 0 40px;
}

.imagen-retiro{
    width:100%;
    border-radius:18px;
    display:block;

    box-shadow:
        0 15px 35px rgba(0,0,0,.25);
}

/* ===== DETALLE PRODUCTO LIMPIO / RESPONSIVE ===== */

.detalle-producto{
    padding: 135px 16px 70px;
    width: 100%;
    box-sizing: border-box;
}

.detalle-box{
    width: min(1250px, calc(100vw - 32px));
    margin: 0 auto;
    background: rgba(255,255,255,.96);
    border-radius: 28px;
    padding: 38px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 40px;
    align-items: center;
    box-sizing: border-box;
    overflow: hidden;
}

.galeria-producto{
    width: 100%;
    min-width: 0;
    text-align: center;
}

#foto-principal{
    width: 100%;
    max-width: 500px;
    height: 390px;
    object-fit: contain;
    background: white;
    display: block;
    margin: 0 auto;
}

.miniaturas{
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 20px;
}

.miniaturas img{
    width: 88px;
    height: 88px;
    object-fit: contain;
    cursor: pointer;
    border: 2px solid #c9a44d;
    border-radius: 10px;
    background: white;
    transition: .25s;
}

.miniaturas img:hover{
    transform: scale(1.05);
}

.info-producto{
    width: 100%;
    min-width: 0;
    text-align: center;
    box-sizing: border-box;
}

.info-producto h1{
    font-size: 40px;
    line-height: 1.1;
    margin: 0 0 18px;
    color: #111;
}

.datos-extra{
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 14px;
    color: #333;
}

.datos-extra span{
    background: #f3f3f3;
    border: 1px solid #ddd;
    border-radius: 20px;
    padding: 7px 12px;
    font-size: 14px;
}

.descripcion-detalle{
    font-size: 21px;
    color: #1e7e34;
    font-weight: bold;
    line-height: 1.35;
    margin: 16px auto;
    max-width: 520px;
}

.precio-detalle{
    font-size: 42px;
    color: #1e7e34;
    font-weight: bold;
    margin: 22px 0 8px;
}

.precio-contado{
    font-size: 21px;
    font-weight: bold;
    color: #c9a44d;
    margin: 12px 0;
}

.aviso-descuento{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 10px auto 22px;
    padding: 12px 22px;
    background: #111;
    color: #c9a44d;
    border: 1px solid #c9a44d;
    border-radius: 30px;
    font-size: 15px;
    font-weight: bold;
    max-width: 100%;
    box-sizing: border-box;
}

.stock-detalle{
    font-size: 25px;
    font-weight: bold;
    margin: 18px 0;
    color: #111;
}

.stock-agotado{
    color: #c0392b;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 15px;
}

.stock-bajo{
    color: #d49100;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 15px;
}

.medios-pago{
    display: flex;
    justify-content: center;
    gap: 14px;
    flex-wrap: wrap;
    margin: 24px auto;
    width: 100%;
    box-sizing: border-box;
}

.medio{
    width: 145px;
    min-height: 82px;
    background: #f8f8f8;
    border: 1px solid #ddd;
    border-radius: 14px;
    padding: 14px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    box-sizing: border-box;
    transition: .25s;
}

.medio:hover{
    transform: translateY(-4px);
    box-shadow: 0 8px 18px rgba(0,0,0,.14);
}

.medio i{
    font-size: 27px;
    color: #c9a96a;
}

.medio span{
    font-size: 14px;
    font-weight: bold;
    color: #333;
}

.beneficios-producto{
    margin-top: 22px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    font-size: 18px;
    color: #333;
    text-align: center;
}

.btn-whatsapp,
.btn-comprar,
.btn-sin-stock{
    display: block;
    width: 90%;
    max-width: 430px;
    margin: 24px auto 0;
    padding: 16px;
    border-radius: 12px;
    text-align: center;
    font-weight: bold;
    box-sizing: border-box;
}

.btn-sin-stock{
    background: #777;
    color: white;
    border: none;
}

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

.relacionados{
    width: min(1250px, calc(100vw - 32px));
    margin: 45px auto 0;
    padding: 34px;
    background: rgba(255,255,255,.96);
    border-radius: 25px;
    box-sizing: border-box;
}

.relacionados h2{
    text-align: center;
    color: #111;
    font-size: 34px;
    margin: 0 0 28px;
}

.relacionados-grid{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    gap: 22px;
}

.relacionado-card{
    background: white;
    border-radius: 18px;
    padding: 18px;
    text-align: center;
    cursor: pointer;
    box-shadow: 0 8px 18px rgba(0,0,0,.18);
    transition: .3s;
}

.relacionado-card:hover{
    transform: translateY(-6px);
}

.relacionado-card img{
    width: 100%;
    height: 175px;
    object-fit: contain;
}

.relacionado-card h3{
    color: #111;
    font-size: 21px;
    margin: 12px 0 8px;
}

.relacionado-card p{
    color: #1e7e34;
    font-size: 23px;
    font-weight: bold;
    margin: 0;
}

@media(max-width: 900px){

    .detalle-producto{
        padding: 125px 10px 50px;
    }

    .detalle-box{
        grid-template-columns: 1fr;
        padding: 24px;
        gap: 26px;
        width: calc(100vw - 20px);
    }

    #foto-principal{
        height: 300px;
    }

    .info-producto h1{
        font-size: 30px;
    }

    .descripcion-detalle{
        font-size: 18px;
    }

    .precio-detalle{
        font-size: 34px;
    }

    .aviso-descuento{
        font-size: 14px;
        border-radius: 18px;
    }

    .medios-pago{
        gap: 12px;
    }

    .medio{
        width: 100%;
        max-width: 320px;
    }

    .relacionados{
        width: calc(100vw - 20px);
        padding: 24px;
    }
}

@media(max-width: 520px){

    .detalle-producto{
        padding-top: 115px;
    }

    #foto-principal{
        height: 245px;
    }

    .miniaturas img{
        width: 72px;
        height: 72px;
    }

    .info-producto h1{
        font-size: 27px;
    }

    .precio-detalle{
        font-size: 30px;
    }
}

#relacionados-container{
    width:95%;
    max-width:1400px;
    margin:40px auto;
}

.relacionados{
    background:white;
    border-radius:25px;
    padding:40px;
}

.relacionados h2{
    text-align:center;
    margin-bottom:30px;
    color:#111;
}

.relacionados-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:25px;
}

.relacionado-card{
    background:#f5f5f5;
    border-radius:15px;
    overflow:hidden;
    cursor:pointer;
    transition:.3s;
    text-align:center;
}

.relacionado-card:hover{
    transform:translateY(-5px);
}

.relacionado-card img{
    width:100%;
    height:220px;
    object-fit:cover;
}

.relacionado-card h3{
    padding:15px 10px 5px;
}

.relacionado-card p{
    color:#198754;
    font-weight:bold;
    padding-bottom:15px;
}

/* ===== RELACIONADOS CARRUSEL PRO ===== */

#relacionados-container{
    max-width: 1250px;
    margin: 45px auto 80px;
    padding: 0 20px;
}

.relacionados{
    background: rgba(255,255,255,.95);
    border-radius: 28px;
    padding: 35px;
    box-shadow: 0 15px 35px rgba(0,0,0,.28);
}

.relacionados-header h2{
    text-align: center;
    font-size: 38px;
    color: #111;
    margin: 0 0 30px;
}

.relacionados-carrusel-wrap{
    position: relative;
}

.relacionados-carrusel{
    display: flex;
    gap: 25px;
    overflow-x: auto;
    scroll-behavior: smooth;
    padding: 10px 5px 20px;
}

.relacionados-carrusel::-webkit-scrollbar{
    height: 8px;
}

.relacionados-carrusel::-webkit-scrollbar-thumb{
    background: #c9a44d;
    border-radius: 20px;
}

.relacionado-card{
    flex: 0 0 310px;
    background: #f7f7f7;
    border-radius: 22px;
    overflow: hidden;
    cursor: pointer;
    transition: .3s;
    box-shadow: 0 8px 22px rgba(0,0,0,.18);
}

.relacionado-card:hover{
    transform: translateY(-7px);
    box-shadow: 0 14px 30px rgba(0,0,0,.28);
}

.relacionado-card img{
    width: 100%;
    height: 260px;
    object-fit: contain;
    background: white;
    display: block;
}

.relacionado-info{
    padding: 22px 18px 28px;
    text-align: center;
}

.relacionado-info h3{
    font-size: 24px;
    color: #111;
    margin: 0 0 18px;
}

.relacionado-info p{
    font-size: 34px;
    color: #1e7e34;
    font-weight: bold;
    margin: 0;
}

.relacionados-flecha{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: none;
    background: #111;
    color: #c9a44d;
    font-size: 38px;
    font-weight: bold;
    cursor: pointer;
    z-index: 5;
    box-shadow: 0 6px 18px rgba(0,0,0,.35);
}

.relacionados-flecha:hover{
    background: #c9a44d;
    color: #111;
}

.relacionados-flecha.izquierda{
    left: -18px;
}

.relacionados-flecha.derecha{
    right: -18px;
}

@media(max-width: 700px){
    .relacionado-card{
        flex-basis: 260px;
    }

    .relacionado-card img{
        height: 220px;
    }

    .relacionados{
        padding: 25px 15px;
    }
}




/* =========================================================
   SHOOTER PREMIUM V2 - ESTILO WEB REFERENCIA
   Pegar al final del CSS o usar este archivo completo.
========================================================= */

:root{
    --sh-black:#050505;
    --sh-black-2:#0d0d0d;
    --sh-card:#111111;
    --sh-card-2:#181818;
    --sh-gold:#c9a44d;
    --sh-gold-2:#f0d08a;
    --sh-muted:#bdbdbd;
    --sh-border:rgba(201,164,77,.28);
    --sh-green:#1f8b34;
}

html{
    scroll-behavior:smooth;
}

body{
    background:
        radial-gradient(circle at 20% 0%, rgba(201,164,77,.10), transparent 32%),
        linear-gradient(rgba(0,0,0,.72), rgba(0,0,0,.82)),
        url("../img/fondo.jpg") !important;
    background-size:cover !important;
    background-position:center !important;
    background-attachment:fixed !important;
    color:white;
    font-family:"Segoe UI", Arial, sans-serif;
}

body::before{
    background:
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px) !important;
    background-size:80px 80px !important;
    opacity:.45;
}

/* HEADER */

.header-premium{
    background:rgba(5,5,5,.92) !important;
    backdrop-filter:blur(14px);
    border-bottom:1px solid var(--sh-border);
    box-shadow:0 12px 35px rgba(0,0,0,.45);
    padding:14px 38px !important;
    min-height:78px;
    gap:24px;
}

.logo-premium{
    text-decoration:none;
    color:white;
}

.logo-premium img{
    width:58px !important;
    height:58px !important;
    border:2px solid var(--sh-gold);
    background:#111 !important;
    padding:4px !important;
}

.logo-premium h1{
    font-size:28px !important;
    letter-spacing:5px !important;
    color:white !important;
}

.logo-premium span{
    display:block;
    color:var(--sh-gold);
    font-size:12px;
    letter-spacing:2px;
    text-transform:uppercase;
    margin-top:2px;
}

.menu-premium{
    margin-left:auto !important;
    margin-right:20px !important;
    gap:34px !important;
    align-items:center;
}

.menu-premium a{
    position:relative;
    font-size:14px !important;
    letter-spacing:2px;
    text-transform:uppercase;
    color:#f5f5f5 !important;
    padding:8px 0;
}

.menu-premium a::after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:0;
    height:2px;
    background:var(--sh-gold);
    transition:.3s;
}

.menu-premium a:hover{
    color:var(--sh-gold) !important;
}

.menu-premium a:hover::after{
    width:100%;
}

.header-actions-premium{
    display:flex;
    align-items:center;
    gap:18px;
}

.buscador-premium{
    margin:0 !important;
    display:flex;
    border:1px solid rgba(255,255,255,.12);
    border-radius:999px;
    overflow:hidden;
    background:rgba(255,255,255,.06);
}

.buscador-premium input{
    width:190px !important;
    background:transparent !important;
    color:white;
    border:none !important;
    border-radius:0 !important;
    padding:10px 14px !important;
}

.buscador-premium input::placeholder{
    color:#aaa;
}

.buscador-premium button{
    background:var(--sh-gold) !important;
    border:none !important;
    color:#111 !important;
    width:44px;
    cursor:pointer;
}

.carrito-premium{
    width:48px;
    height:48px;
    border:1px solid var(--sh-border);
    border-radius:50%;
    background:rgba(255,255,255,.06);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:20px !important;
    transition:.3s;
}

.carrito-premium:hover{
    background:var(--sh-gold);
    color:#111;
    transform:translateY(-2px);
}

.carrito-premium span{
    background:var(--sh-gold) !important;
    color:#111 !important;
}

.mega-premium{
    background:rgba(8,8,8,.98) !important;
    border:1px solid var(--sh-border);
    box-shadow:0 20px 60px rgba(0,0,0,.65);
}

/* HERO */

.hero-premium{
    position:relative;
    min-height:92vh;
    margin-top:0 !important;
    padding:140px 7vw 80px !important;
    justify-content:flex-start !important;
    overflow:hidden;
    background:
        linear-gradient(90deg, rgba(0,0,0,.92) 0%, rgba(0,0,0,.70) 42%, rgba(0,0,0,.18) 100%),
        url("../img/fondo.jpg");
    background-size:cover;
    background-position:center;
}

.hero-premium::after{
    content:"";
    position:absolute;
    inset:auto 0 0 0;
    height:180px;
    background:linear-gradient(transparent, #050505);
}

.hero-premium-overlay{
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at 20% 35%, rgba(201,164,77,.18), transparent 32%),
        linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.80));
}

.hero-premium-content{
    position:relative;
    z-index:2;
    width:min(850px, 100%);
    text-align:left;
}

.hero-eyebrow{
    display:inline-flex;
    padding:10px 18px;
    border:1px solid var(--sh-border);
    color:var(--sh-gold-2);
    border-radius:999px;
    background:rgba(201,164,77,.08);
    font-size:13px;
    font-weight:800;
    letter-spacing:3px;
    text-transform:uppercase;
    margin-bottom:28px;
}

.hero-premium h1{
    color:white;
    font-size:clamp(54px, 7vw, 108px);
    line-height:.92;
    letter-spacing:2px;
    margin:0 0 24px;
    text-transform:uppercase;
    text-shadow:0 20px 50px rgba(0,0,0,.8);
}

.hero-premium p{
    color:#d8d8d8;
    max-width:620px;
    font-size:20px;
    line-height:1.6;
    margin:0 0 34px;
}

.hero-actions{
    display:flex;
    gap:18px;
    flex-wrap:wrap;
}

.btn-hero{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:180px;
    padding:16px 26px;
    border-radius:999px;
    text-decoration:none;
    text-transform:uppercase;
    letter-spacing:2px;
    font-weight:900;
    transition:.3s;
}

.btn-hero-primary{
    background:linear-gradient(135deg, var(--sh-gold), #8d6822);
    color:#111;
    box-shadow:0 12px 30px rgba(201,164,77,.28);
}

.btn-hero-secondary{
    color:white;
    border:1px solid rgba(255,255,255,.25);
    background:rgba(255,255,255,.08);
}

.btn-hero:hover{
    transform:translateY(-4px);
}

/* SECTION HEAD */

.section-head-premium{
    text-align:center;
    margin:0 auto 36px;
}

.section-head-premium span{
    color:var(--sh-gold);
    text-transform:uppercase;
    letter-spacing:3px;
    font-weight:900;
    font-size:13px;
}

.section-head-premium h2,
main h2,
.nuevos-ingresos h2,
.explorar h2{
    color:white !important;
    font-size:clamp(34px, 5vw, 62px) !important;
    margin:10px 0 0 !important;
    text-shadow:0 14px 35px rgba(0,0,0,.85) !important;
    text-transform:uppercase;
    letter-spacing:2px;
}

/* CATEGORIAS */

.categorias-premium{
    position:relative;
    z-index:3;
    padding:80px 6vw 45px;
    background:#050505;
}

.categorias-grid-premium{
    display:grid;
    grid-template-columns:repeat(5, minmax(160px, 1fr));
    gap:18px;
    max-width:1450px;
    margin:auto;
}

.categoria-premium-card{
    min-height:250px;
    position:relative;
    overflow:hidden;
    border-radius:24px;
    text-decoration:none;
    background:
        linear-gradient(180deg, rgba(255,255,255,.06), rgba(0,0,0,.70)),
        #111;
    border:1px solid rgba(255,255,255,.10);
    display:flex;
    align-items:flex-end;
    padding:24px;
    transition:.35s;
}

.categoria-premium-card::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at top right, rgba(201,164,77,.26), transparent 35%),
        linear-gradient(45deg, rgba(0,0,0,.20), rgba(0,0,0,.75));
    z-index:1;
}

.categoria-premium-card div{
    position:relative;
    z-index:2;
}

.categoria-premium-card span{
    color:var(--sh-gold);
    font-weight:900;
    letter-spacing:2px;
}

.categoria-premium-card h3{
    color:white;
    font-size:30px;
    margin:10px 0;
    text-transform:uppercase;
}

.categoria-premium-card p{
    color:#cfcfcf;
    margin:0;
    line-height:1.4;
}

.categoria-premium-card:hover{
    transform:translateY(-8px);
    border-color:var(--sh-gold);
    box-shadow:0 20px 50px rgba(0,0,0,.55);
}

/* CARDS PRODUCTOS */

main,
.nuevos-ingresos,
.explorar{
    background:#050505 !important;
    padding:70px 0 !important;
}

.carousel-container{
    width:min(1450px, 94%) !important;
}

.carousel{
    width:100% !important;
    margin:30px auto !important;
}

#productos,
#track-nuevos,
#carousel-track{
    gap:24px !important;
    padding:24px !important;
}

.card,
.carousel-item,
.relacionado-card{
    background:linear-gradient(180deg, #171717, #0b0b0b) !important;
    border:1px solid rgba(255,255,255,.10);
    border-radius:26px !important;
    color:white !important;
    box-shadow:0 18px 40px rgba(0,0,0,.45) !important;
    overflow:hidden;
}

.card{
    position:relative;
    padding:18px !important;
}

.badge{
    position:absolute;
    top:16px;
    left:16px;
    right:auto !important;
    background:var(--sh-gold) !important;
    color:#111 !important;
    z-index:5;
    letter-spacing:1px;
}

.card img,
.carousel-item img{
    background:#0f0f0f !important;
    border-radius:20px;
    width:100% !important;
    height:260px !important;
    object-fit:contain !important;
    padding:14px;
    box-sizing:border-box;
}

.card h3,
.carousel-item h3,
.relacionado-card h3{
    color:white !important;
    font-size:21px !important;
}

.card .descripcion,
.card p.descripcion{
    color:#bfbfbf !important;
    font-size:14px !important;
    font-weight:500 !important;
    min-height:60px;
}

.card .precio,
.card p.precio,
.card p,
.carousel-item .precio{
    color:var(--sh-gold) !important;
    font-size:32px !important;
    text-shadow:none !important;
}

.card button,
.btn-finalizar,
.btn-comprar{
    background:linear-gradient(135deg, var(--sh-gold), #8d6822) !important;
    color:#111 !important;
    border:none !important;
    font-weight:900 !important;
    text-transform:uppercase;
    letter-spacing:1px;
}

.card button:hover,
.btn-finalizar:hover{
    filter:brightness(1.1);
    transform:translateY(-2px);
}

.btn-whatsapp{
    background:#0f7d3a !important;
    border-radius:999px !important;
}

/* FLECHAS */

.flecha,
.relacionados-flecha{
    width:52px !important;
    height:52px !important;
    border-radius:50% !important;
    border:1px solid var(--sh-border) !important;
    background:rgba(5,5,5,.90) !important;
    color:var(--sh-gold) !important;
    font-size:30px !important;
    cursor:pointer;
    box-shadow:0 10px 25px rgba(0,0,0,.45);
    transition:.25s;
}

.flecha:hover{
    background:var(--sh-gold) !important;
    color:#111 !important;
}

/* MARCAS Y VIDEOS */

.marcas{
    background:#050505;
    border-color:rgba(201,164,77,.18) !important;
}

.logos-marcas img{
    filter:grayscale(1) brightness(1.5);
    opacity:.65;
    transition:.3s;
}

.logos-marcas img:hover{
    filter:none;
    opacity:1;
}

.videos{
    background:#050505;
    margin:0 auto !important;
    padding:70px 20px;
}

.video-card{
    border:1px solid rgba(255,255,255,.12);
    box-shadow:0 18px 45px rgba(0,0,0,.45);
}

/* FOOTER */

.footer{
    background:
        linear-gradient(rgba(0,0,0,.88), rgba(0,0,0,.92)),
        url("../img/camuflado.jpg") !important;
    border-top:1px solid var(--sh-border);
    padding:46px 20px !important;
}

/* CARRITO */

.panel-carrito{
    background:#070707 !important;
    border-left:1px solid var(--sh-border);
}

.item-carrito{
    border-bottom:1px solid rgba(255,255,255,.10) !important;
}

.item-carrito img{
    background:#111;
    object-fit:contain !important;
}

/* CHECKOUT PREMIUM */

.checkout-container{
    max-width:1180px !important;
    padding:150px 22px 90px !important;
}

.checkout-container h1{
    text-transform:uppercase;
    letter-spacing:2px;
    font-size:clamp(38px, 5vw, 68px) !important;
}

#resumen-compra,
#form-checkout{
    background:rgba(10,10,10,.92) !important;
    border:1px solid var(--sh-border);
    color:white;
    box-shadow:0 18px 50px rgba(0,0,0,.55) !important;
}

#form-checkout input,
#form-checkout select{
    background:#111 !important;
    color:white !important;
    border:1px solid rgba(255,255,255,.14) !important;
}

#form-checkout input:focus,
#form-checkout select:focus{
    outline:none;
    border-color:var(--sh-gold) !important;
}

.item-checkout{
    border-bottom:1px solid rgba(255,255,255,.12) !important;
}

.item-checkout h3{
    color:white !important;
}

.item-checkout p{
    color:#aaa !important;
}

.item-checkout strong,
#total-final h2{
    color:var(--sh-gold) !important;
}

.factura-opciones label{
    color:#ddd !important;
}

/* GRACIAS */

.body-gracias{
    background:
        radial-gradient(circle at center, rgba(201,164,77,.16), transparent 42%),
        linear-gradient(135deg, #030303, #111) !important;
}

.logo-circulo{
    border-color:var(--sh-gold) !important;
}

/* RESPONSIVE */

@media(max-width:1100px){
    .menu-premium{
        gap:18px !important;
    }

    .buscador-premium input{
        width:130px !important;
    }

    .categorias-grid-premium{
        grid-template-columns:repeat(2, 1fr);
    }
}

@media(max-width:820px){
    .header-premium{
        flex-wrap:wrap;
        padding:12px 18px !important;
    }

    .menu-premium{
        order:3;
        width:100%;
        justify-content:center;
        flex-wrap:wrap;
        margin:8px 0 0 !important;
    }

    .header-actions-premium{
        margin-left:auto;
    }

    .hero-premium{
        padding-top:190px !important;
        min-height:86vh;
    }

    .hero-premium-content{
        text-align:center;
    }

    .hero-actions{
        justify-content:center;
    }

    .categorias-grid-premium{
        grid-template-columns:1fr;
    }
}

@media(max-width:520px){
    .logo-premium h1{
        font-size:22px !important;
    }

    .logo-premium span{
        display:none;
    }

    .buscador-premium{
        display:none !important;
    }

    .hero-premium h1{
        font-size:46px;
    }

    .card,
    #productos .card{
        flex:0 0 260px !important;
    }

    .whatsapp-float,
    .instagram-float,
    .youtube-float{
        width:52px;
        height:52px;
        line-height:52px;
        font-size:26px;
    }
}

.hero{
    position: relative;
    min-height: 700px;
    overflow: hidden;
}

.hero::before{
    content:"";
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,0.95) 0%,
            rgba(0,0,0,0.75) 35%,
            rgba(0,0,0,0.40) 60%,
            rgba(0,0,0,0.10) 100%
        ),
        url("../img/armeria-hero.jpg");

    background-size: cover;
    background-position: center right;

    z-index:1;
}

.hero-content{
    position:relative;
    z-index:2;
}

.hero h1{
    text-shadow:
        0 0 20px rgba(0,0,0,.9),
        0 0 40px rgba(0,0,0,.8);
}



/* =========================================================
   SHOOTER HERO FINAL - ARMERÍA DE FONDO DIFUMINADA
   Guardar la imagen como: /img/armeria-hero.png
========================================================= */

.hero-premium{
    position:relative !important;
    min-height:92vh !important;
    margin-top:0 !important;
    padding:140px 7vw 80px !important;
    justify-content:flex-start !important;
    align-items:center !important;
    overflow:hidden !important;

    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.96) 0%,
            rgba(0,0,0,.90) 26%,
            rgba(0,0,0,.62) 48%,
            rgba(0,0,0,.28) 72%,
            rgba(0,0,0,.14) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0,0,0,.42) 0%,
            rgba(0,0,0,.06) 42%,
            rgba(0,0,0,.88) 100%
        ),
        url("../img/armeria-hero.png") !important;

    background-size:cover !important;
    background-position:center right !important;
    background-repeat:no-repeat !important;
}

/* Oscurece suavemente detrás del texto sin tapar la armería */
.hero-premium-overlay{
    position:absolute !important;
    inset:0 !important;
    background:
        radial-gradient(circle at 16% 45%, rgba(201,164,77,.18), transparent 28%),
        linear-gradient(
            90deg,
            rgba(0,0,0,.68) 0%,
            rgba(0,0,0,.42) 34%,
            rgba(0,0,0,.10) 62%,
            rgba(0,0,0,.00) 100%
        ) !important;
    z-index:1 !important;
}

/* Fade inferior para unir hero con secciones */
.hero-premium::after{
    content:"" !important;
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    height:180px !important;
    background:linear-gradient(transparent, #050505 88%) !important;
    z-index:1 !important;
    pointer-events:none !important;
}

/* Viñeta cinematográfica */
.hero-premium::before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:
        radial-gradient(circle at center, transparent 38%, rgba(0,0,0,.64) 100%) !important;
    z-index:1 !important;
    pointer-events:none !important;
}

.hero-premium-content{
    position:relative !important;
    z-index:2 !important;
    width:min(760px, 100%) !important;
    text-align:left !important;
}

.hero-premium h1{
    max-width:760px !important;
    text-shadow:
        0 8px 22px rgba(0,0,0,.95),
        0 18px 55px rgba(0,0,0,.9) !important;
}

.hero-premium p{
    text-shadow:0 6px 18px rgba(0,0,0,.9) !important;
}

.hero-eyebrow{
    backdrop-filter:blur(8px) !important;
}

/* Barra de beneficios estilo referencia, debajo del hero */
.beneficios-premium-bar{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:0;
    background:#080808;
    border-top:1px solid rgba(201,164,77,.18);
    border-bottom:1px solid rgba(201,164,77,.18);
}

.beneficio-premium-item{
    display:flex;
    gap:16px;
    align-items:center;
    padding:26px 34px;
    border-right:1px solid rgba(255,255,255,.08);
}

.beneficio-premium-item i{
    color:#c9a44d;
    font-size:32px;
}

.beneficio-premium-item strong{
    display:block;
    color:white;
    text-transform:uppercase;
    letter-spacing:1px;
    font-size:15px;
}

.beneficio-premium-item span{
    display:block;
    color:#aaa;
    margin-top:4px;
    font-size:14px;
}

@media(max-width:900px){
    .hero-premium{
        background-position:center center !important;
    }

    .hero-premium-content{
        width:100% !important;
    }

    .beneficios-premium-bar{
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:560px){
    .hero-premium{
        padding:185px 24px 80px !important;
        min-height:86vh !important;
        background-position:center center !important;
    }

    .hero-premium h1{
        font-size:44px !important;
    }

    .hero-premium p{
        font-size:16px !important;
    }

    .beneficios-premium-bar{
        grid-template-columns:1fr;
    }
}




/* =========================================================
   AJUSTE HERO FINAL - imagen más visible + texto más chico
========================================================= */

.hero-premium{
    min-height:84vh !important;
    padding:128px 7vw 70px !important;

    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.82) 0%,
            rgba(0,0,0,.68) 25%,
            rgba(0,0,0,.38) 48%,
            rgba(0,0,0,.16) 74%,
            rgba(0,0,0,.08) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0,0,0,.30) 0%,
            rgba(0,0,0,.04) 42%,
            rgba(0,0,0,.72) 100%
        ),
        url("../img/armeria-hero.png") !important;

    background-size:cover !important;
    background-position:center right !important;
}

.hero-premium-overlay{
    background:
        radial-gradient(circle at 15% 45%, rgba(201,164,77,.13), transparent 26%),
        linear-gradient(
            90deg,
            rgba(0,0,0,.48) 0%,
            rgba(0,0,0,.34) 34%,
            rgba(0,0,0,.06) 62%,
            rgba(0,0,0,.00) 100%
        ) !important;
}

.hero-premium::before{
    background:
        radial-gradient(circle at center, transparent 44%, rgba(0,0,0,.42) 100%) !important;
}

.hero-premium-content{
    width:min(680px, 100%) !important;
}

.hero-premium h1{
    font-size:clamp(44px, 5.6vw, 82px) !important;
    line-height:.96 !important;
    letter-spacing:1px !important;
    margin-bottom:22px !important;
}

.hero-premium p{
    font-size:18px !important;
    max-width:610px !important;
    line-height:1.55 !important;
}

.hero-eyebrow{
    font-size:12px !important;
    padding:9px 17px !important;
    margin-bottom:24px !important;
}

.btn-hero{
    padding:15px 24px !important;
    min-width:170px !important;
    font-size:14px !important;
}

@media(max-width:820px){
    .hero-premium{
        min-height:82vh !important;
        padding-top:175px !important;
        background-position:center center !important;
    }

    .hero-premium h1{
        font-size:46px !important;
    }
}

@media(max-width:520px){
    .hero-premium h1{
        font-size:38px !important;
    }

    .hero-premium p{
        font-size:15px !important;
    }
}




/* =========================================================
   CATEGORÍAS CARRUSEL PRO - fotos reales
   Imágenes esperadas en /img/categorias/
========================================================= */

.categorias-carrusel-section{
    padding:75px 6vw 55px !important;
    overflow:hidden;
}

.categorias-top{
    max-width:1450px;
    margin:0 auto 28px;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
}

.section-head-left{
    text-align:left !important;
    margin:0 !important;
}

.categorias-flechas{
    display:flex;
    align-items:center;
    gap:12px;
}

.cat-flecha{
    width:48px;
    height:48px;
    border-radius:50%;
    border:1px solid rgba(201,164,77,.35);
    background:rgba(255,255,255,.06);
    color:#c9a44d;
    font-size:18px;
    cursor:pointer;
    transition:.25s;
}

.cat-flecha:hover{
    background:#c9a44d;
    color:#111;
    transform:translateY(-3px);
}

.categorias-carrusel{
    max-width:1450px;
    margin:auto;
    display:flex;
    gap:20px;
    overflow-x:auto;
    scroll-behavior:smooth;
    padding:8px 4px 24px;
    scrollbar-width:thin;
    scrollbar-color:#c9a44d #111;
}

.categorias-carrusel::-webkit-scrollbar{
    height:8px;
}

.categorias-carrusel::-webkit-scrollbar-track{
    background:#111;
    border-radius:20px;
}

.categorias-carrusel::-webkit-scrollbar-thumb{
    background:#c9a44d;
    border-radius:20px;
}

.categoria-real{
    flex:0 0 315px;
    min-height:360px !important;
    background-size:cover !important;
    background-position:center !important;
    background-repeat:no-repeat !important;
    border:1px solid rgba(201,164,77,.28) !important;
    border-radius:24px !important;
    padding:24px !important;
    box-shadow:0 18px 45px rgba(0,0,0,.48);
}

.categoria-real::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(0,0,0,.18) 0%,
            rgba(0,0,0,.40) 42%,
            rgba(0,0,0,.92) 100%
        ),
        radial-gradient(circle at 50% 20%, rgba(201,164,77,.16), transparent 38%);
    z-index:1;
    transition:.35s;
}

.categoria-real::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(90deg, rgba(201,164,77,.16), transparent 48%);
    opacity:0;
    z-index:1;
    transition:.35s;
}

.categoria-real div{
    position:relative;
    z-index:2;
    width:100%;
}

.categoria-real span{
    color:#c9a44d;
    font-size:13px;
    letter-spacing:3px;
}

.categoria-real h3{
    font-size:28px !important;
    line-height:1.05;
    margin:12px 0 10px !important;
}

.categoria-real p{
    color:#d5d5d5 !important;
    font-size:15px;
    min-height:42px;
}

.categoria-real small{
    display:inline-flex;
    margin-top:20px;
    padding:10px 16px;
    border:1px solid rgba(201,164,77,.45);
    color:#c9a44d;
    text-transform:uppercase;
    font-weight:900;
    letter-spacing:1px;
    border-radius:999px;
}

.categoria-real:hover{
    transform:translateY(-9px) scale(1.015) !important;
    border-color:#c9a44d !important;
    box-shadow:
        0 24px 60px rgba(0,0,0,.62),
        0 0 28px rgba(201,164,77,.18);
}

.categoria-real:hover::before{
    background:
        linear-gradient(
            180deg,
            rgba(0,0,0,.08) 0%,
            rgba(0,0,0,.25) 42%,
            rgba(0,0,0,.88) 100%
        ),
        radial-gradient(circle at 50% 20%, rgba(201,164,77,.24), transparent 40%);
}

.categoria-real:hover::after{
    opacity:1;
}

@media(max-width:760px){
    .categorias-top{
        align-items:flex-start;
        flex-direction:column;
    }

    .categoria-real{
        flex-basis:280px;
        min-height:330px !important;
    }
}



/* =========================================================
   SHOOTER HOME UNIFICADA V4
   Productos con estética similar al carrusel de categorías
========================================================= */

main,
.nuevos-ingresos,
.explorar{
    position:relative !important;
    background:#050505 !important;
    padding:74px 0 86px !important;
    overflow:hidden !important;
}

main::before,
.nuevos-ingresos::before,
.explorar::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px);
    background-size:80px 80px;
    opacity:.35;
    pointer-events:none;
}

.section-title-shop{
    position:relative;
    z-index:2;
    width:min(1600px, 92%);
    margin:0 auto 34px;
    text-align:left;
}

.section-title-shop span{
    display:block;
    color:#c9a44d;
    font-size:14px;
    letter-spacing:5px;
    font-weight:900;
    text-transform:uppercase;
    margin-bottom:14px;
}

.section-title-shop h2{
    color:white !important;
    font-size:clamp(42px, 5vw, 76px) !important;
    line-height:.95 !important;
    letter-spacing:3px !important;
    text-transform:uppercase !important;
    margin:0 !important;
    text-align:left !important;
    text-shadow:0 14px 34px rgba(0,0,0,.85) !important;
}

main .carousel-container,
.nuevos-ingresos .carousel-container,
.explorar .carousel-container{
    position:relative;
    z-index:2;
    width:min(1600px, 92%) !important;
    margin:0 auto !important;
    display:flex !important;
    align-items:center !important;
}

main .carousel,
.nuevos-ingresos .carousel,
.explorar .carousel{
    width:100% !important;
    margin:0 auto !important;
    overflow:hidden !important;
}

#productos,
#track-nuevos,
#carousel-track{
    display:flex !important;
    gap:20px !important;
    padding:0 4px 22px !important;
}

#productos .card,
#track-nuevos .carousel-item,
#carousel-track .carousel-item{
    position:relative !important;
    flex:0 0 335px !important;
    width:335px !important;
    min-width:335px !important;
    height:430px !important;
    padding:0 !important;
    margin:0 !important;
    border-radius:24px !important;
    overflow:hidden !important;
    background:#111 !important;
    border:1px solid rgba(201,164,77,.25) !important;
    box-shadow:0 18px 45px rgba(0,0,0,.52) !important;
    text-align:left !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-end !important;
    transition:.35s !important;
}

#productos .card::before,
#track-nuevos .carousel-item::before,
#carousel-track .carousel-item::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:
        linear-gradient(
            180deg,
            rgba(0,0,0,.08) 0%,
            rgba(0,0,0,.32) 42%,
            rgba(0,0,0,.94) 100%
        );
    pointer-events:none;
}

#productos .card::after,
#track-nuevos .carousel-item::after,
#carousel-track .carousel-item::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(90deg, rgba(201,164,77,.14), transparent 50%);
    opacity:.65;
    pointer-events:none;
    transition:.3s;
}

#productos .card img,
#track-nuevos .carousel-item img,
#carousel-track .carousel-item img{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    object-position:center !important;
    padding:28px !important;
    margin:0 !important;
    border-radius:0 !important;
    background:linear-gradient(180deg, #181818, #070707) !important;
    box-sizing:border-box !important;
    filter:brightness(.84) contrast(1.04) saturate(.95);
    transition:.45s;
}

#productos .card h3,
#productos .card .descripcion,
#productos .card p,
#productos .card button,
#productos .card .btn-whatsapp,
#productos .card .badge,
#track-nuevos .carousel-item h3,
#track-nuevos .carousel-item p,
#carousel-track .carousel-item h3,
#carousel-track .carousel-item p{
    position:relative !important;
    z-index:2 !important;
}

#productos .card .badge,
.card .badge,
.badge{
    position:absolute !important;
    top:20px !important;
    left:20px !important;
    right:auto !important;
    z-index:3 !important;
    background:#c9a44d !important;
    color:#111 !important;
    border-radius:999px !important;
    padding:8px 16px !important;
    font-size:13px !important;
    font-weight:900 !important;
    letter-spacing:2px !important;
    text-transform:uppercase !important;
}

#productos .card h3,
#track-nuevos .carousel-item h3,
#carousel-track .carousel-item h3{
    color:white !important;
    font-size:27px !important;
    line-height:1.05 !important;
    margin:0 24px 10px !important;
    padding:0 !important;
    text-align:left !important;
    text-shadow:0 5px 16px rgba(0,0,0,.90);
}

#productos .card .descripcion,
#productos .card p.descripcion{
    color:#e5e5e5 !important;
    font-size:15px !important;
    font-weight:500 !important;
    line-height:1.35 !important;
    min-height:auto !important;
    margin:0 24px 18px !important;
    text-align:left !important;
    text-shadow:0 4px 12px rgba(0,0,0,.9);
}

#productos .card p,
#productos .card .precio,
#track-nuevos .carousel-item p,
#carousel-track .carousel-item p{
    color:#c9a44d !important;
    font-size:31px !important;
    line-height:1 !important;
    font-weight:900 !important;
    margin:0 24px 22px !important;
    padding:0 !important;
    text-align:left !important;
    text-shadow:0 6px 18px rgba(0,0,0,.95) !important;
}

#productos .card button,
#track-nuevos .carousel-item button,
#carousel-track .carousel-item button{
    align-self:flex-start !important;
    width:auto !important;
    margin:0 24px 26px !important;
    padding:12px 22px !important;
    border-radius:999px !important;
    border:1px solid rgba(201,164,77,.45) !important;
    background:rgba(0,0,0,.28) !important;
    color:#c9a44d !important;
    font-size:14px !important;
    font-weight:900 !important;
    letter-spacing:2px !important;
    text-transform:uppercase !important;
    box-shadow:none !important;
}

#productos .card button:hover,
#track-nuevos .carousel-item button:hover,
#carousel-track .carousel-item button:hover{
    background:#c9a44d !important;
    color:#111 !important;
    transform:translateY(-2px) !important;
}

#productos .card .btn-whatsapp{
    align-self:flex-start !important;
    width:auto !important;
    margin:0 24px 26px !important;
    padding:12px 20px !important;
    border-radius:999px !important;
    background:rgba(0,0,0,.35) !important;
    border:1px solid rgba(37,211,102,.65) !important;
    color:#25d366 !important;
    font-size:14px !important;
    letter-spacing:1px !important;
    text-transform:uppercase !important;
}

#productos .card:hover,
#track-nuevos .carousel-item:hover,
#carousel-track .carousel-item:hover{
    transform:translateY(-9px) scale(1.01) !important;
    border-color:#c9a44d !important;
    box-shadow:
        0 24px 60px rgba(0,0,0,.68),
        0 0 30px rgba(201,164,77,.18) !important;
}

#productos .card:hover img,
#track-nuevos .carousel-item:hover img,
#carousel-track .carousel-item:hover img{
    transform:scale(1.055);
    filter:brightness(.92) contrast(1.12) saturate(1);
}

main .flecha,
.nuevos-ingresos .flecha,
.explorar .flecha{
    position:absolute !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    width:58px !important;
    height:58px !important;
    border-radius:50% !important;
    border:1px solid rgba(201,164,77,.40) !important;
    background:rgba(5,5,5,.82) !important;
    color:#c9a44d !important;
    font-size:32px !important;
    font-weight:900 !important;
    z-index:10 !important;
    box-shadow:0 12px 30px rgba(0,0,0,.45) !important;
    transition:.25s !important;
}

main .flecha:hover,
.nuevos-ingresos .flecha:hover,
.explorar .flecha:hover{
    background:#c9a44d !important;
    color:#111 !important;
}

main .flecha.izquierda,
.nuevos-ingresos .flecha.izquierda,
.explorar .flecha.izquierda{
    left:-78px !important;
}

main .flecha.derecha,
.nuevos-ingresos .flecha.derecha,
.explorar .flecha.derecha{
    right:-78px !important;
}

#track-nuevos{
    min-height:430px;
}

.categorias-carrusel-section{
    padding-top:74px !important;
    padding-bottom:74px !important;
}

.categorias-carrusel{
    gap:20px !important;
}

@media(max-width:1300px){
    #productos .card,
    #track-nuevos .carousel-item,
    #carousel-track .carousel-item{
        flex-basis:300px !important;
        width:300px !important;
        min-width:300px !important;
        height:410px !important;
    }

    main .flecha.izquierda,
    .nuevos-ingresos .flecha.izquierda,
    .explorar .flecha.izquierda{
        left:-25px !important;
    }

    main .flecha.derecha,
    .nuevos-ingresos .flecha.derecha,
    .explorar .flecha.derecha{
        right:-25px !important;
    }
}

@media(max-width:760px){
    main,
    .nuevos-ingresos,
    .explorar{
        padding:54px 0 68px !important;
    }

    .section-title-shop h2{
        font-size:42px !important;
    }

    #productos .card,
    #track-nuevos .carousel-item,
    #carousel-track .carousel-item{
        flex-basis:275px !important;
        width:275px !important;
        min-width:275px !important;
        height:390px !important;
    }

    #productos .card h3,
    #track-nuevos .carousel-item h3,
    #carousel-track .carousel-item h3{
        font-size:23px !important;
    }

    #productos .card p,
    #productos .card .precio,
    #track-nuevos .carousel-item p,
    #carousel-track .carousel-item p{
        font-size:27px !important;
    }
}




/* =========================================================
   SHOOTER HOME COMPACTA V5
   Menos distancia entre secciones + títulos más prolijos
========================================================= */

/* Menos aire entre secciones */
main,
.nuevos-ingresos,
.explorar{
    padding:42px 0 52px !important;
    min-height:auto !important;
}

.categorias-carrusel-section{
    padding-top:54px !important;
    padding-bottom:46px !important;
}

/* Títulos más chicos, más elegantes */
.section-title-shop{
    width:min(1600px, 92%) !important;
    margin:0 auto 24px !important;
}

.section-title-shop span{
    color:#c9a44d !important;
    font-size:12px !important;
    letter-spacing:6px !important;
    font-weight:900 !important;
    margin-bottom:10px !important;
    opacity:.95;
}

.section-title-shop h2{
    font-size:clamp(34px, 4vw, 56px) !important;
    line-height:1 !important;
    letter-spacing:4px !important;
    color:#f4f4f4 !important;
    text-shadow:
        0 8px 20px rgba(0,0,0,.9),
        0 0 22px rgba(201,164,77,.10) !important;
}

/* Título de categorías también más prolijo */
.section-head-premium{
    margin-bottom:24px !important;
}

.section-head-premium span{
    font-size:12px !important;
    letter-spacing:6px !important;
    color:#c9a44d !important;
}

.section-head-premium h2{
    font-size:clamp(34px, 4vw, 56px) !important;
    line-height:1 !important;
    letter-spacing:4px !important;
    color:#f4f4f4 !important;
    margin-top:10px !important;
}

/* Cards un poco más compactas y parejas */
#productos .card,
#track-nuevos .carousel-item,
#carousel-track .carousel-item{
    flex-basis:310px !important;
    width:310px !important;
    min-width:310px !important;
    height:385px !important;
    border-radius:22px !important;
}

/* Imágenes más controladas */
#productos .card img,
#track-nuevos .carousel-item img,
#carousel-track .carousel-item img{
    padding:22px !important;
    filter:brightness(.88) contrast(1.05) saturate(.98);
}

/* Texto más chico, más ordenado */
#productos .card h3,
#track-nuevos .carousel-item h3,
#carousel-track .carousel-item h3{
    font-size:22px !important;
    margin:0 22px 8px !important;
    letter-spacing:.2px !important;
}

#productos .card .descripcion,
#productos .card p.descripcion{
    font-size:13.5px !important;
    line-height:1.32 !important;
    margin:0 22px 14px !important;
    color:#d7d7d7 !important;
}

#productos .card p,
#productos .card .precio,
#track-nuevos .carousel-item p,
#carousel-track .carousel-item p{
    font-size:26px !important;
    margin:0 22px 18px !important;
    color:#d8b24a !important;
}

/* Botones más finos */
#productos .card button,
#track-nuevos .carousel-item button,
#carousel-track .carousel-item button,
#productos .card .btn-whatsapp{
    margin:0 22px 22px !important;
    padding:10px 18px !important;
    font-size:12px !important;
    letter-spacing:2.5px !important;
}

/* Badges más chicos */
#productos .card .badge,
.card .badge,
.badge{
    top:18px !important;
    left:18px !important;
    padding:7px 14px !important;
    font-size:11px !important;
    letter-spacing:2.5px !important;
}

/* Track sin tanto alto muerto */
#productos,
#track-nuevos,
#carousel-track{
    padding-bottom:12px !important;
}

#track-nuevos{
    min-height:385px !important;
}

/* Flechas más pequeñas y alineadas */
main .flecha,
.nuevos-ingresos .flecha,
.explorar .flecha{
    width:48px !important;
    height:48px !important;
    font-size:25px !important;
}

/* Menos separación desde el final de una sección a la siguiente */
main + .nuevos-ingresos,
.nuevos-ingresos + .explorar{
    margin-top:0 !important;
}

/* Fondo de secciones más limpio */
main::before,
.nuevos-ingresos::before,
.explorar::before{
    opacity:.22 !important;
}

/* Responsive */
@media(max-width:1300px){
    #productos .card,
    #track-nuevos .carousel-item,
    #carousel-track .carousel-item{
        flex-basis:285px !important;
        width:285px !important;
        min-width:285px !important;
        height:370px !important;
    }
}

@media(max-width:760px){
    main,
    .nuevos-ingresos,
    .explorar{
        padding:36px 0 46px !important;
    }

    .section-title-shop h2,
    .section-head-premium h2{
        font-size:34px !important;
        letter-spacing:2px !important;
    }

    .section-title-shop span,
    .section-head-premium span{
        font-size:11px !important;
        letter-spacing:4px !important;
    }

    #productos .card,
    #track-nuevos .carousel-item,
    #carousel-track .carousel-item{
        flex-basis:260px !important;
        width:260px !important;
        min-width:260px !important;
        height:355px !important;
    }
}

/* ===== TITULOS DE PRODUCTOS ===== */

.card h3,
.producto-card h3,
.carousel-item h3 {

    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.3px;

    color: #f5f5f5;

    margin-top: 14px;
    margin-bottom: 8px;

    text-shadow:
        0 2px 10px rgba(0,0,0,.7);
}

/* ===== DESCRIPCIONES ===== */

.card .descripcion,
.card p.descripcion {

    font-size: 14px;
    line-height: 1.4;

    color: rgba(255,255,255,.75);

    margin-top: 8px;
}

/* ===== PRECIOS ===== */

.card .precio,
.card p.precio {

    font-size: 22px;
    font-weight: 800;

    color: #d8b24a;

    letter-spacing: 1px;
}

.section-title-shop h2,
.section-head-premium h2 {

    font-size: clamp(42px, 4vw, 58px);

    letter-spacing: 3px;
    line-height: 1;

    color: #f5f5f5;

    text-shadow:
        0 8px 20px rgba(0,0,0,.8);
}




/* =========================================================
   SHOOTER FIX FINAL V7
   Títulos más chicos + flechas cerca + marcas/logos prolijos
   Este bloque pisa reglas anteriores con más especificidad.
========================================================= */

/* ===== TITULOS GRANDES DE SECCIONES ===== */
body .section-head-premium h2,
body .section-title-shop h2,
body .categorias-top .section-head-premium h2,
body #categorias-premium .section-head-premium h2,
body main .section-title-shop h2,
body .nuevos-ingresos .section-title-shop h2,
body .explorar .section-title-shop h2,
body main h2,
body .nuevos-ingresos h2,
body .explorar h2{
    font-size:42px !important;
    line-height:1.05 !important;
    letter-spacing:.5px !important;
    text-transform:none !important;
    text-align:left !important;
    margin:0 !important;
    color:#f5f5f5 !important;
}

/* Etiquetas doradas */
body .section-head-premium span,
body .section-title-shop span{
    font-size:12px !important;
    letter-spacing:6px !important;
    line-height:1 !important;
    margin-bottom:10px !important;
}

/* Contenedor título categorías */
body .categorias-top{
    width:min(1600px, 88%) !important;
    max-width:none !important;
    margin:0 auto 28px !important;
    align-items:flex-start !important;
}

/* ===== TITULOS DENTRO DE TARJETAS DE CATEGORÍAS ===== */
body #categorias-premium .categoria-real h3,
body #categorias-premium .categoria-premium-card h3,
body .categorias-carrusel .categoria-real h3,
body .categorias-carrusel .categoria-premium-card h3{
    font-size:22px !important;
    line-height:1.08 !important;
    letter-spacing:.2px !important;
    font-weight:800 !important;
    text-transform:none !important;
    margin:8px 0 6px !important;
    color:#ffffff !important;
}

/* Texto descriptivo de categorías */
body #categorias-premium .categoria-real p,
body #categorias-premium .categoria-premium-card p,
body .categorias-carrusel .categoria-real p,
body .categorias-carrusel .categoria-premium-card p{
    font-size:13px !important;
    line-height:1.35 !important;
    max-width:260px !important;
}

/* Numeración */
body #categorias-premium .categoria-real span,
body #categorias-premium .categoria-premium-card span{
    font-size:12px !important;
    letter-spacing:3px !important;
}

/* Botón explorar de categorías */
body #categorias-premium .categoria-real small,
body #categorias-premium .categoria-premium-card small{
    font-size:11px !important;
    padding:9px 14px !important;
    letter-spacing:1.5px !important;
}

/* Tamaño parejo de cards de categorías */
body .categorias-carrusel{
    width:min(1600px, 88%) !important;
    max-width:none !important;
    margin:0 auto !important;
    gap:22px !important;
}

body #categorias-premium .categoria-real,
body #categorias-premium .categoria-premium-card{
    flex:0 0 350px !important;
    width:350px !important;
    min-width:350px !important;
    height:330px !important;
    min-height:330px !important;
}

/* Flechas de categorías cerca del título */
body .categorias-flechas{
    margin-top:8px !important;
}

body .cat-flecha{
    width:46px !important;
    height:46px !important;
}

/* ===== PRODUCTOS: TITULOS Y CARDS MÁS PROLIJAS ===== */
body #productos .card h3,
body #track-nuevos .carousel-item h3,
body #carousel-track .carousel-item h3,
body .card h3,
body .carousel-item h3{
    font-size:19px !important;
    line-height:1.15 !important;
    font-weight:800 !important;
    letter-spacing:.2px !important;
    text-transform:none !important;
    margin:0 22px 8px !important;
}

body #productos .card .descripcion,
body #productos .card p.descripcion{
    font-size:13px !important;
    line-height:1.32 !important;
}

body #productos .card p,
body #productos .card .precio,
body #track-nuevos .carousel-item p,
body #carousel-track .carousel-item p{
    font-size:25px !important;
}

/* Flechas de productos más cerca de los cuadros */
body main .flecha.izquierda,
body .nuevos-ingresos .flecha.izquierda,
body .explorar .flecha.izquierda,
body .flecha.izquierda,
body .izquierda{
    left:8px !important;
}

body main .flecha.derecha,
body .nuevos-ingresos .flecha.derecha,
body .explorar .flecha.derecha,
body .flecha.derecha,
body .derecha{
    right:8px !important;
}

/* ===== SECCIÓN MARCAS / LOGOS ===== */
body .marcas{
    background:#050505 !important;
    padding:34px 0 !important;
    border-top:1px solid rgba(201,164,77,.22) !important;
    border-bottom:1px solid rgba(201,164,77,.22) !important;
}

body .logos-marcas{
    width:min(1500px, 92%) !important;
    margin:0 auto !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    gap:34px !important;
    flex-wrap:wrap !important;
}

body .logos-marcas img{
    width:92px !important;
    height:92px !important;
    object-fit:contain !important;
    border-radius:50% !important;
    background:#070707 !important;
    border:1px solid rgba(201,164,77,.28) !important;
    padding:6px !important;
    filter:none !important;
    opacity:1 !important;
    transition:.25s !important;
}

body .logos-marcas img:hover{
    transform:translateY(-4px) scale(1.04) !important;
    border-color:#c9a44d !important;
    box-shadow:0 0 22px rgba(201,164,77,.18) !important;
}

/* Mobile */
@media(max-width:760px){
    body .section-head-premium h2,
    body .section-title-shop h2,
    body .categorias-top .section-head-premium h2,
    body #categorias-premium .section-head-premium h2,
    body main .section-title-shop h2,
    body .nuevos-ingresos .section-title-shop h2,
    body .explorar .section-title-shop h2,
    body main h2,
    body .nuevos-ingresos h2,
    body .explorar h2{
        font-size:32px !important;
    }

    body #categorias-premium .categoria-real,
    body #categorias-premium .categoria-premium-card{
        flex-basis:280px !important;
        width:280px !important;
        min-width:280px !important;
        height:300px !important;
        min-height:300px !important;
    }

    body #categorias-premium .categoria-real h3,
    body #categorias-premium .categoria-premium-card h3{
        font-size:19px !important;
    }

    body .logos-marcas img{
        width:72px !important;
        height:72px !important;
    }
}


/* ===== TITULO VIDEOS ===== */
.videos-titulo{
    text-align:center;
    margin:30px auto 40px;
}

.videos-titulo span{
    display:block;
    color:#c9a44d;
    font-size:12px;
    font-weight:700;
    letter-spacing:6px;
    margin-bottom:10px;
    text-transform:uppercase;
}

.videos-titulo h2{
    color:#fff;
    font-size:48px;
    font-weight:800;
    margin:0 0 12px;
    text-transform:uppercase;
}

.videos-titulo p{
    color:#a5a5a5;
    font-size:15px;
    max-width:600px;
    margin:auto;
}

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

.footer{
    background:
        linear-gradient(rgba(0,0,0,.88), rgba(0,0,0,.95)),
        url("../img/camuflado.jpg");
    background-size:cover;
    background-position:center;
    padding:55px 20px 35px;
    border-top:1px solid rgba(201,164,77,.25);
}

.footer-contenido{
    max-width:1200px;
    margin:auto;
    text-align:center;
}

.footer-contenido h2{
    color:#d8b24a;
    font-size:38px;
    letter-spacing:3px;
    margin-bottom:22px;
}

.footer-contenido p{
    color:#e2e2e2;
    font-size:18px;
    margin:10px 0;
}

.footer-redes{
    margin:28px 0;
    display:flex;
    justify-content:center;
    gap:18px;
}

.footer-redes a{
    width:48px;
    height:48px;
    border-radius:50%;
    border:1px solid rgba(201,164,77,.45);
    color:#d8b24a;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
    text-decoration:none;
    transition:.25s;
}

.footer-redes a:hover{
    background:#d8b24a;
    color:#111;
    transform:translateY(-4px);
}

.footer-links{
    display:flex;
    justify-content:center;
    gap:24px;
    flex-wrap:wrap;
    margin-top:25px;
    padding-top:25px;
    border-top:1px solid rgba(255,255,255,.08);
}

.footer-links a{
    color:#d8b24a;
    text-decoration:none;
    font-size:15px;
    font-weight:700;
}

.footer-links a:hover{
    color:white;
}

.copyright{
    margin-top:22px !important;
    color:#aaa !important;
    font-size:14px !important;
}


/* =========================================================
   PÁGINAS LEGALES SHOOTER - VERSIÓN FINAL PREMIUM
   Pegar al final o reemplazar estilos.css por este archivo.
========================================================= */

body.legal-body{
    min-height:100vh !important;
    background:
        linear-gradient(90deg, rgba(0,0,0,.72) 0%, rgba(0,0,0,.30) 38%, rgba(0,0,0,.72) 100%),
        linear-gradient(rgba(0,0,0,.52), rgba(0,0,0,.78)),
        url("../img/fondo.jpg") !important;
    background-size:cover !important;
    background-position:center !important;
    background-attachment:fixed !important;
    color:#fff !important;
    font-family:"Segoe UI", Arial, sans-serif !important;
    padding:0 !important;
}

body.legal-body::before{
    content:"" !important;
    position:fixed !important;
    inset:0 !important;
    background:
        linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px),
        linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px) !important;
    background-size:80px 80px !important;
    pointer-events:none !important;
    z-index:0 !important;
}

.legal-header-simple{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    width:100% !important;
    min-height:96px !important;
    padding:18px 44px !important;
    box-sizing:border-box !important;
    background:
        linear-gradient(rgba(0,0,0,.45), rgba(0,0,0,.45)),
        url("../img/camuflado.jpg") !important;
    background-size:cover !important;
    background-position:center !important;
    border-bottom:1px solid rgba(201,164,77,.22) !important;
    z-index:5 !important;
}

.legal-header-simple .logo img{
    width:64px !important;
    height:64px !important;
    border-radius:50% !important;
    border:2px solid rgba(201,164,77,.65) !important;
    background:#fff !important;
    padding:4px !important;
}

.legal-header-simple .logo h1{
    color:#fff !important;
    font-size:34px !important;
    letter-spacing:6px !important;
    margin:0 !important;
    text-shadow:0 4px 15px rgba(0,0,0,.9) !important;
}

.legal-volver,
.volver.legal-volver{
    position:fixed !important;
    top:150px !important;
    left:38px !important;
    width:58px !important;
    height:58px !important;
    border-radius:50% !important;
    background:rgba(5,5,5,.82) !important;
    border:1px solid rgba(201,164,77,.45) !important;
    color:#c9a44d !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-decoration:none !important;
    font-size:24px !important;
    z-index:20 !important;
    box-shadow:0 12px 30px rgba(0,0,0,.55) !important;
    backdrop-filter:blur(8px) !important;
    transition:.25s !important;
}

.legal-volver:hover,
.volver.legal-volver:hover{
    background:#c9a44d !important;
    color:#111 !important;
    transform:translateX(-4px) !important;
}

.legal.legal-card-premium,
main.legal.legal-card-premium{
    position:relative !important;
    z-index:2 !important;
    width:min(1040px, calc(100% - 48px)) !important;
    max-width:1040px !important;
    margin:70px auto 90px !important;
    padding:62px 70px !important;
    box-sizing:border-box !important;
    background:linear-gradient(180deg, rgba(8,8,8,.94), rgba(0,0,0,.88)) !important;
    border:1px solid rgba(201,164,77,.28) !important;
    border-radius:28px !important;
    box-shadow:
        0 25px 80px rgba(0,0,0,.72),
        0 0 35px rgba(201,164,77,.08) !important;
    backdrop-filter:blur(12px) !important;
}

.legal-card-premium .legal-tag{
    display:block !important;
    text-align:center !important;
    color:#c9a44d !important;
    font-size:12px !important;
    line-height:1 !important;
    letter-spacing:7px !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    margin:0 0 16px !important;
}

.legal-card-premium h1{
    color:#fff !important;
    text-align:center !important;
    font-size:clamp(34px, 4vw, 52px) !important;
    line-height:1.08 !important;
    letter-spacing:.3px !important;
    font-weight:900 !important;
    margin:0 0 52px !important;
    text-shadow:0 10px 25px rgba(0,0,0,.82) !important;
}

.legal-card-premium h1::after{
    content:"" !important;
    display:block !important;
    width:110px !important;
    height:3px !important;
    background:#c9a44d !important;
    margin:22px auto 0 !important;
    border-radius:999px !important;
    box-shadow:0 0 14px rgba(201,164,77,.38) !important;
}

.legal-content{
    display:grid !important;
    gap:20px !important;
}

.legal-card-premium p{
    color:#dcdcdc !important;
    font-size:19px !important;
    line-height:1.75 !important;
    margin:0 !important;
    padding:18px 22px 18px 24px !important;
    border-left:3px solid #c9a44d !important;
    background:rgba(255,255,255,.025) !important;
    border-radius:0 14px 14px 0 !important;
    text-align:left !important;
    transition:.25s !important;
}

.legal-card-premium p:hover{
    color:#fff !important;
    background:rgba(201,164,77,.055) !important;
    transform:translateX(4px) !important;
}

@media(max-width:760px){
    .legal-header-simple{
        padding:14px 20px !important;
        min-height:82px !important;
    }

    .legal-header-simple .logo img{
        width:52px !important;
        height:52px !important;
    }

    .legal-header-simple .logo h1{
        font-size:25px !important;
        letter-spacing:4px !important;
    }

    .legal-volver,
    .volver.legal-volver{
        top:105px !important;
        left:18px !important;
        width:48px !important;
        height:48px !important;
        font-size:20px !important;
    }

    .legal.legal-card-premium,
    main.legal.legal-card-premium{
        width:calc(100% - 28px) !important;
        margin:45px auto 60px !important;
        padding:42px 22px !important;
        border-radius:22px !important;
    }

    .legal-card-premium .legal-tag{
        font-size:11px !important;
        letter-spacing:4px !important;
    }

    .legal-card-premium p{
        font-size:16px !important;
        line-height:1.65 !important;
        padding:15px 16px !important;
    }
}




/* =========================================================
   MODAL BIENVENIDA PREMIUM - SHOOTER
========================================================= */

.modal-aviso{
    position:fixed !important;
    inset:0 !important;
    z-index:999999 !important;

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

    padding:24px !important;

    background:
        radial-gradient(circle at 20% 10%, rgba(201,164,77,.14), transparent 28%),
        radial-gradient(circle at 80% 90%, rgba(201,164,77,.08), transparent 30%),
        rgba(0,0,0,.86) !important;

    backdrop-filter:blur(8px) !important;
}

.modal-premium{
    width:min(980px, 94vw) !important;
    min-height:500px !important;

    padding:0 !important;
    overflow:hidden !important;

    display:grid !important;
    grid-template-columns:38% 62% !important;

    background:
        linear-gradient(135deg, rgba(11,11,11,.96), rgba(0,0,0,.98)) !important;

    border:1px solid rgba(201,164,77,.65) !important;
    border-radius:28px !important;

    color:white !important;
    text-align:left !important;

    box-shadow:
        0 35px 90px rgba(0,0,0,.72),
        0 0 0 1px rgba(255,255,255,.04) inset,
        0 0 55px rgba(201,164,77,.12) !important;

    animation:modalShooterIn .45s ease both !important;
}

.modal-imagen{
    position:relative;
    min-height:500px;

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

    background:
        linear-gradient(180deg, rgba(0,0,0,.25), rgba(0,0,0,.86)),
        url("../img/fondo.jpg");

    background-size:cover;
    background-position:center;
}

.modal-imagen::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg, rgba(0,0,0,.70), transparent),
        radial-gradient(circle at center, rgba(201,164,77,.24), transparent 46%);
}

.modal-imagen::after{
    content:"SHOOTER";
    position:absolute;
    bottom:28px;
    left:0;
    right:0;

    text-align:center;

    color:rgba(255,255,255,.10);
    font-size:42px;
    font-weight:900;
    letter-spacing:9px;
}

.modal-premium .logo-modal{
    position:relative !important;
    z-index:2 !important;

    width:170px !important;
    height:170px !important;

    margin:0 !important;
    padding:8px !important;

    object-fit:contain !important;

    border-radius:50% !important;
    background:#fff !important;

    border:3px solid rgba(201,164,77,.75) !important;

    box-shadow:
        0 0 0 12px rgba(201,164,77,.12),
        0 0 45px rgba(201,164,77,.35) !important;
}

.modal-info{
    padding:58px 58px 48px !important;

    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
}

.modal-tag{
    color:#d8b24a !important;
    font-size:12px !important;
    font-weight:900 !important;
    letter-spacing:6px !important;
    text-transform:uppercase !important;
    margin-bottom:14px !important;
}

.modal-info h2{
    color:#fff !important;
    font-size:clamp(36px, 4vw, 56px) !important;
    line-height:1 !important;
    margin:0 0 18px !important;
    font-weight:900 !important;
    letter-spacing:.5px !important;
    text-shadow:0 10px 28px rgba(0,0,0,.75) !important;
}

.modal-subtitulo{
    color:#d7d7d7 !important;
    font-size:17px !important;
    line-height:1.55 !important;
    margin:0 0 24px !important;
    max-width:560px !important;
    text-align:left !important;
}

.modal-alerta{
    display:grid;
    grid-template-columns:46px 1fr;
    gap:16px;

    padding:20px 20px !important;
    margin:0 0 18px !important;

    background:rgba(201,164,77,.09) !important;
    border:1px solid rgba(201,164,77,.28) !important;
    border-left:4px solid #d8b24a !important;
    border-radius:18px !important;
}

.modal-alerta i{
    width:46px;
    height:46px;

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

    border-radius:50%;
    background:rgba(201,164,77,.14);
    color:#d8b24a;
    font-size:21px;
}

.modal-alerta p{
    color:#eeeeee !important;
    font-size:16px !important;
    line-height:1.62 !important;
    margin:0 !important;
    max-width:none !important;
    text-align:left !important;
}

.modal-check{
    display:flex;
    align-items:center;
    gap:10px;

    color:#bfbfbf;
    font-size:14px;
    margin:0 0 28px;
}

.modal-check i{
    color:#d8b24a;
}

#cerrar-modal{
    align-self:flex-start !important;

    background:linear-gradient(135deg, #d8b24a, #b98d28) !important;
    color:#0b0b0b !important;

    border:none !important;
    border-radius:999px !important;

    padding:15px 34px !important;

    font-size:14px !important;
    font-weight:900 !important;
    letter-spacing:2px !important;
    text-transform:uppercase !important;

    cursor:pointer !important;

    box-shadow:0 14px 28px rgba(201,164,77,.22) !important;

    transition:.25s !important;
}

#cerrar-modal:hover{
    transform:translateY(-3px) !important;
    box-shadow:0 20px 34px rgba(201,164,77,.30) !important;
    filter:brightness(1.07);
}

@keyframes modalShooterIn{
    from{
        opacity:0;
        transform:translateY(18px) scale(.97);
    }
    to{
        opacity:1;
        transform:translateY(0) scale(1);
    }
}

@media(max-width:820px){
    .modal-premium{
        grid-template-columns:1fr !important;
        max-height:92vh;
        overflow-y:auto !important;
    }

    .modal-imagen{
        min-height:230px !important;
    }

    .modal-premium .logo-modal{
        width:125px !important;
        height:125px !important;
    }

    .modal-info{
        padding:34px 26px 30px !important;
    }

    .modal-alerta{
        grid-template-columns:1fr !important;
    }

    #cerrar-modal{
        width:100% !important;
        text-align:center !important;
    }
}

@media(max-width:820px){

    .modal-aviso{
        align-items:flex-start !important;
        padding:14px !important;
        overflow-y:auto !important;
    }

    .modal-premium{
        width:100% !important;
        max-width:100% !important;
        min-height:auto !important;
        max-height:none !important;
        grid-template-columns:1fr !important;
        overflow:visible !important;
        border-radius:22px !important;
    }

    .modal-imagen{
        min-height:210px !important;
    }

    .modal-premium .logo-modal{
        width:118px !important;
        height:118px !important;
    }

    .modal-info{
        padding:28px 22px 26px !important;
    }

    .modal-info h2{
        font-size:34px !important;
        line-height:1.05 !important;
    }

    .modal-subtitulo{
        font-size:15px !important;
        line-height:1.55 !important;
    }

    .modal-alerta{
        grid-template-columns:1fr !important;
        padding:18px !important;
    }

    .modal-alerta p{
        font-size:14.5px !important;
        line-height:1.55 !important;
    }

    .modal-check{
        font-size:13px !important;
        align-items:flex-start !important;
    }

    #cerrar-modal{
        width:100% !important;
        padding:15px 20px !important;
        margin-top:6px !important;
    }
}

.modal-aviso{
    transition: opacity .3s ease;
}






body::before{
    pointer-events:none !important;
}

#panel-carrito{
    border:none !important;
}

.panel-carrito:not(.activo){
    right:-450px !important;
    box-shadow:none !important;
}

.carrito-float{
    position:fixed;
    right:25px;
    bottom:300px;
    width:65px;
    height:65px;
    border-radius:50%;
    border:none;
    background:#d4af37;
    color:#050505;
    font-size:28px;
    z-index:999;
    cursor:pointer;
    box-shadow:0 4px 10px rgba(0,0,0,.4);
}

.carrito-float span{
    position:absolute;
    top:-6px;
    right:-6px;
    width:24px;
    height:24px;
    border-radius:50%;
    background:#111;
    color:#d4af37;
    font-size:13px;
    font-weight:900;
    display:flex;
    align-items:center;
    justify-content:center;
}



/* =========================================================
   SHOOTER FIX FINAL: CARRITO FLOTANTE + BUSCADOR + MODAL
========================================================= */

.modal-aviso{
    transition:opacity .28s ease !important;
}

.modal-aviso.modal-cerrando{
    opacity:0 !important;
    pointer-events:none !important;
}

html:not(.modal-abierto),
body:not(.modal-abierto){
    overflow:auto !important;
}

@media(max-width:820px){
    .modal-aviso{
        align-items:flex-start !important;
        padding:14px !important;
        overflow-y:auto !important;
    }

    .modal-premium{
        width:100% !important;
        max-width:100% !important;
        min-height:auto !important;
        max-height:none !important;
        grid-template-columns:1fr !important;
        overflow:visible !important;
        border-radius:22px !important;
    }

    .modal-imagen{
        min-height:210px !important;
    }

    .modal-premium .logo-modal{
        width:118px !important;
        height:118px !important;
    }

    .modal-info{
        padding:28px 22px 26px !important;
    }

    .modal-info h2{
        font-size:34px !important;
        line-height:1.05 !important;
    }

    .modal-subtitulo{
        font-size:15px !important;
        line-height:1.55 !important;
    }

    .modal-alerta{
        grid-template-columns:1fr !important;
        padding:18px !important;
    }

    .modal-alerta p{
        font-size:14.5px !important;
        line-height:1.55 !important;
    }

    .modal-check{
        font-size:13px !important;
        align-items:flex-start !important;
    }

    #cerrar-modal{
        width:100% !important;
        padding:15px 20px !important;
        margin-top:6px !important;
    }
}

/* Oculta solamente el carrito viejo del header */
header .carrito,
#header-container .carrito,
#contador-carrito{
    display:none !important;
}

/* Mantiene activo el panel lateral */
#panel-carrito,
.panel-carrito{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
}

.panel-carrito{
    right:-430px !important;
    border-left:1px solid rgba(212,175,55,.35) !important;
    box-shadow:-20px 0 45px rgba(0,0,0,.65) !important;
}

.panel-carrito.activo{
    right:0 !important;
}

/* Carrito flotante arriba del botón YouTube */
.carrito-float{
    position:fixed !important;
    right:25px !important;
    bottom:300px !important;

    width:65px !important;
    height:65px !important;

    border-radius:50% !important;
    border:1px solid rgba(212,175,55,.55) !important;

    background:#111 !important;
    color:#d4af37 !important;

    font-size:28px !important;

    z-index:9999 !important;

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

    cursor:pointer !important;

    box-shadow:0 4px 12px rgba(0,0,0,.45) !important;
    transition:.3s !important;
}

.carrito-float:hover{
    background:#d4af37 !important;
    color:#111 !important;
    transform:scale(1.08) !important;
}

.carrito-float span{
    position:absolute !important;
    top:-6px !important;
    right:-6px !important;

    width:25px !important;
    height:25px !important;

    border-radius:50% !important;
    background:#d4af37 !important;
    color:#111 !important;

    font-size:13px !important;
    font-weight:900 !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
}

.youtube-float{ bottom:220px !important; }
.instagram-float{ bottom:140px !important; }
.whatsapp-float{ bottom:60px !important; }

@media(max-width:768px){
    .carrito-float{
        right:18px !important;
        bottom:300px !important;
        width:58px !important;
        height:58px !important;
        font-size:24px !important;
    }

    .youtube-float,
    .instagram-float,
    .whatsapp-float{
        right:18px !important;
        width:58px !important;
        height:58px !important;
        line-height:58px !important;
        font-size:29px !important;
    }
}

/* Buscador inteligente */
.buscador{
    position:relative !important;
    z-index:10050 !important;
}

.resultados-busqueda{
    position:absolute !important;
    top:calc(100% + 10px) !important;
    left:0 !important;
    right:0 !important;

    background:rgba(8,8,8,.98) !important;
    border:1px solid rgba(201,164,77,.45) !important;
    border-radius:18px !important;
    overflow:hidden !important;

    box-shadow:0 20px 45px rgba(0,0,0,.55) !important;
    backdrop-filter:blur(8px) !important;

    z-index:999999 !important;
}

.resultado-item,
.resultado-vacio{
    width:100% !important;
    display:block !important;
    text-align:left !important;
    padding:14px 16px !important;
    background:transparent !important;
    border:none !important;
    border-bottom:1px solid rgba(255,255,255,.07) !important;
    color:white !important;
    cursor:pointer !important;
}

.resultado-item strong{
    display:block !important;
    color:#d8b24a !important;
    font-size:14px !important;
    margin-bottom:4px !important;
}

.resultado-item span{
    display:block !important;
    color:#d7d7d7 !important;
    font-size:12px !important;
    line-height:1.35 !important;
}

.resultado-item:hover{
    background:rgba(201,164,77,.12) !important;
}

.resultado-vacio{
    color:#d7d7d7 !important;
    font-size:13px !important;
    cursor:default !important;
}

.resultado-activo{
    outline:2px solid rgba(201,164,77,.85) !important;
    box-shadow:0 0 0 6px rgba(201,164,77,.14), 0 0 30px rgba(201,164,77,.22) !important;
}

@media(max-width:520px){
    .resultados-busqueda{
        position:fixed !important;
        top:88px !important;
        left:12px !important;
        right:12px !important;
    }
}

/* =========================================================
   FIX MODAL + CARRITO FLOTANTE + STOCK
   Pegar al final de css/estilos.css
========================================================= */

.modal-aviso{
    pointer-events:auto !important;
    transition:opacity .25s ease !important;
}

.modal-aviso.modal-cerrando{
    opacity:0 !important;
    pointer-events:none !important;
}

#cerrar-modal{
    position:relative !important;
    z-index:9999999 !important;
    pointer-events:auto !important;
    cursor:pointer !important;
}

.modal-contenido,
.modal-premium,
.modal-info{
    pointer-events:auto !important;
}

html,
body{
    overflow:auto;
}

@media(max-width:820px){
    .modal-aviso{
        align-items:flex-start !important;
        padding:14px !important;
        overflow-y:auto !important;
    }

    .modal-premium{
        width:100% !important;
        max-width:100% !important;
        min-height:auto !important;
        max-height:none !important;
        grid-template-columns:1fr !important;
        overflow:visible !important;
        border-radius:22px !important;
    }

    .modal-imagen{
        min-height:210px !important;
    }

    .modal-premium .logo-modal{
        width:118px !important;
        height:118px !important;
    }

    .modal-info{
        padding:28px 22px 26px !important;
    }

    .modal-info h2{
        font-size:34px !important;
        line-height:1.05 !important;
    }

    .modal-subtitulo{
        font-size:15px !important;
        line-height:1.55 !important;
    }

    .modal-alerta{
        grid-template-columns:1fr !important;
        padding:18px !important;
    }

    .modal-alerta p{
        font-size:14.5px !important;
        line-height:1.55 !important;
    }

    .modal-check{
        font-size:13px !important;
        align-items:flex-start !important;
    }

    #cerrar-modal{
        width:100% !important;
        padding:15px 20px !important;
        margin-top:6px !important;
    }
}

/* Carrito flotante */
header .carrito,
#header-container .carrito,
#contador-carrito{
    display:none !important;
}

.carrito-float{
    position:fixed !important;
    right:25px !important;
    bottom:300px !important;
    width:65px !important;
    height:65px !important;
    border-radius:50% !important;
    border:1px solid rgba(212,175,55,.55) !important;
    background:#111 !important;
    color:#d4af37 !important;
    font-size:28px !important;
    z-index:99999 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    cursor:pointer !important;
    box-shadow:0 4px 12px rgba(0,0,0,.45) !important;
    transition:.3s !important;
}

.carrito-float:hover{
    background:#d4af37 !important;
    color:#111 !important;
    transform:scale(1.08) !important;
}

.carrito-float span{
    position:absolute !important;
    top:-6px !important;
    right:-6px !important;
    width:25px !important;
    height:25px !important;
    border-radius:50% !important;
    background:#d4af37 !important;
    color:#111 !important;
    font-size:13px !important;
    font-weight:900 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
}

.youtube-float{ bottom:220px !important; }
.instagram-float{ bottom:140px !important; }
.whatsapp-float{ bottom:60px !important; }

.panel-carrito{
    right:-430px !important;
}

.panel-carrito.activo{
    right:0 !important;
}

/* Estado sin stock */
.sin-stock-card{
    opacity:.72;
    filter:grayscale(.25);
}

.btn-sin-stock,
button:disabled{
    opacity:.55 !important;
    cursor:not-allowed !important;
    background:#333 !important;
    color:#aaa !important;
    border:1px solid rgba(255,255,255,.15) !important;
}

.stock-alerta{
    display:block;
    color:#ff5a5a;
    font-weight:800;
    margin:6px 0;
}

.stock-ok{
    display:block;
    color:#44d26a;
    font-weight:700;
    margin:6px 0;
}

.item-sin-stock{
    border:1px solid rgba(255,90,90,.35);
}

.logo-modal{
    width:120px !important;
    height:120px !important;
    object-fit:contain !important;
    border-radius:50% !important;
}

.modal-aviso{
    position:fixed !important;
    inset:0 !important;
    z-index:999999 !important;
    background:rgba(0,0,0,.88) !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
}

.modal-contenido{
    max-width:900px !important;
    width:90% !important;
    max-height:90vh !important;
    overflow:auto !important;
    background:#050505 !important;
    border:1px solid #d4af37 !important;
    border-radius:25px !important;
    padding:30px !important;
}

.modal-imagen{
    text-align:center !important;
}

#cerrar-modal{
    cursor:pointer !important;
    pointer-events:auto !important;
}

.modal-aviso[style*="display: none"]{
    display:none !important;
    pointer-events:none !important;
}

body::before,
body::after{
    pointer-events:none !important;
}

/* ===== PRODUCTOS EN GRILLA 4 POR HILERA ===== */

#carousel-destacados,
#carousel-nuevos,
#carousel{
    overflow: visible !important;
}

#productos,
#track-nuevos,
#carousel-track{
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 28px !important;
    width: 100% !important;
}

.carousel-container{
    max-width: 1650px !important;
    margin: 0 auto !important;
    padding: 0 40px !important;
}

.card,
.carousel-item{
    width: 100% !important;
    min-width: 0 !important;
}

.flecha{
    display: none !important;
}

@media(max-width:1200px){
    #productos,
    #track-nuevos,
    #carousel-track{
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

@media(max-width:850px){
    #productos,
    #track-nuevos,
    #carousel-track{
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media(max-width:520px){
    #productos,
    #track-nuevos,
    #carousel-track{
        grid-template-columns: 1fr !important;
    }
}

/* ===== DROPDOWN CON SCROLL TOUCH ===== */

.dropdown-menu,
.submenu,
.menu-desplegable{
    max-height:70vh !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    -webkit-overflow-scrolling:touch !important;
    touch-action:pan-y !important;
    overscroll-behavior:contain !important;
}

/* Para que el touch no quede bloqueado por capas internas */
.dropdown-menu *,
.submenu *,
.menu-desplegable *{
    touch-action:auto !important;
}

/* Ocultar barra scroll del menú */

.dropdown-menu,
.megamenu,
.submenu {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;

    scrollbar-width: none;      /* Firefox */
    -ms-overflow-style: none;   /* IE y Edge viejo */
}

.dropdown-menu::-webkit-scrollbar,
.megamenu::-webkit-scrollbar,
.submenu::-webkit-scrollbar {
    width: 0;
    display: none;
}

/* ===== MENÚ PRODUCTOS CON TOUCH Y SIN BARRA BLANCA ===== */

.dropdown-content.mega-premium{
    max-height:75vh !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    -webkit-overflow-scrolling:touch !important;
    touch-action:pan-y !important;

    scrollbar-width:none !important;
    -ms-overflow-style:none !important;
}

.dropdown-content.mega-premium::-webkit-scrollbar{
    width:0 !important;
    display:none !important;
}


/* ===== CATÁLOGO / PRODUCTOS POR CATEGORÍA 3 POR HILERA ===== */

.productos-grid,
.catalogo-grid,
#productos-catalogo,
#lista-productos{
    display:grid !important;
    grid-template-columns:repeat(3, 1fr) !important;
    gap:28px !important;
    max-width:1450px !important;
    margin:0 auto !important;
    padding:40px 35px !important;
}

.productos-grid .card,
.catalogo-grid .card,
#productos-catalogo .card,
#lista-productos .card{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    border-radius:24px !important;
    background:linear-gradient(180deg, #171717, #070707) !important;
    border:1px solid rgba(212,175,55,.22) !important;
    box-shadow:0 18px 40px rgba(0,0,0,.45) !important;
}

.productos-grid .card img,
.catalogo-grid .card img,
#productos-catalogo .card img,
#lista-productos .card img{
    width:100% !important;
    height:260px !important;
    object-fit:contain !important;
    background:#0d0d0d !important;
    border-radius:18px !important;
    padding:18px !important;
}

@media(max-width:1100px){
    .productos-grid,
    .catalogo-grid,
    #productos-catalogo,
    #lista-productos{
        grid-template-columns:repeat(2, 1fr) !important;
    }
}

@media(max-width:650px){
    .productos-grid,
    .catalogo-grid,
    #productos-catalogo,
    #lista-productos{
        grid-template-columns:1fr !important;
        padding:25px 18px !important;
    }
}

/* ===== CATÁLOGO MÁS PROLIJO ===== */

.productos-grid,
.catalogo-grid,
#productos-catalogo,
#lista-productos{
    max-width:1250px !important;
    margin:0 auto !important;
    padding:35px 25px !important;
    display:grid !important;
    grid-template-columns:repeat(3, minmax(260px, 1fr)) !important;
    gap:26px !important;
    justify-items:center !important;
}

.productos-grid .card,
.catalogo-grid .card,
#productos-catalogo .card,
#lista-productos .card{
    max-width:360px !important;
    min-height:560px !important;
    padding:28px !important;
}

.productos-grid .card img,
.catalogo-grid .card img,
#productos-catalogo .card img,
#lista-productos .card img{
    height:210px !important;
    padding:14px !important;
}

.productos-grid .card h3,
.catalogo-grid .card h3,
#productos-catalogo .card h3,
#lista-productos .card h3{
    font-size:22px !important;
}

.productos-grid .precio,
.catalogo-grid .precio,
#productos-catalogo .precio,
#lista-productos .precio{
    font-size:34px !important;
}

@media(max-width:1050px){
    .productos-grid,
    .catalogo-grid,
    #productos-catalogo,
    #lista-productos{
        grid-template-columns:repeat(2, 1fr) !important;
    }
}

@media(max-width:650px){
    .productos-grid,
    .catalogo-grid,
    #productos-catalogo,
    #lista-productos{
        grid-template-columns:1fr !important;
    }
}

.sin-stock{
    width:100%;
    padding:14px;
    border:none;
    border-radius:40px;
    background:#5a5a5a;
    color:#fff;
    font-weight:700;
    cursor:not-allowed;
}

/* ===== CARRUSELES TOUCH + FLECHAS ===== */

#carousel-destacados,
#carousel-nuevos,
#carousel{
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-behavior:smooth !important;
    -webkit-overflow-scrolling:touch !important;
    touch-action:pan-x !important;
    scrollbar-width:none !important;
}

#carousel-destacados::-webkit-scrollbar,
#carousel-nuevos::-webkit-scrollbar,
#carousel::-webkit-scrollbar{
    display:none !important;
}

/* Destacados y nuevos ingresos en carrusel normal */
#productos,
#track-nuevos{
    display:flex !important;
    gap:28px !important;
    width:max-content !important;
}

#productos .card,
#track-nuevos .carousel-item{
    flex:0 0 350px !important;
    max-width:350px !important;
}

/* Explorar más productos en 2 pisos */
#carousel-track{
    display:grid !important;
    grid-auto-flow:column !important;
    grid-template-rows:repeat(2, auto) !important;
    grid-auto-columns:300px !important;
    gap:28px !important;
    width:max-content !important;
}

#carousel-track .carousel-item{
    width:300px !important;
    max-width:300px !important;
    min-height:360px !important;
}

/* Flechas visibles y cerca del carrusel */
.flecha{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:58px !important;
    height:58px !important;
    border-radius:50% !important;
    border:1px solid rgba(212,175,55,.45) !important;
    background:rgba(10,10,10,.85) !important;
    color:#d4af37 !important;
    font-size:28px !important;
    cursor:pointer !important;
    z-index:20 !important;
}

.flecha:hover{
    background:#d4af37 !important;
    color:#111 !important;
}

/* Mobile */
@media(max-width:768px){
    #productos .card,
    #track-nuevos .carousel-item{
        flex:0 0 280px !important;
        max-width:280px !important;
    }

    #carousel-track{
        grid-auto-columns:260px !important;
    }

    #carousel-track .carousel-item{
        width:260px !important;
        max-width:260px !important;
    }
}

/* ===== CONTACTO PREMIUM SHOOTER ===== */

.contacto-page{
    min-height:100vh;
    padding:150px 20px 80px;
    background:
        linear-gradient(rgba(0,0,0,.60), rgba(0,0,0,.88)),
        url("../img/fondo.jpg") center/cover fixed no-repeat;
    display:flex;
    flex-direction:column;
    align-items:center;
}

.contacto-page h1{
    color:#fff;
    font-size:58px;
    font-weight:900;
    letter-spacing:2px;
    margin-bottom:45px;
    text-shadow:0 8px 25px rgba(0,0,0,.8);
}

.contacto-box{
    width:min(900px, 92vw);
    background:linear-gradient(180deg, rgba(20,20,20,.95), rgba(5,5,5,.98));
    border:1px solid rgba(212,175,55,.45);
    border-radius:28px;
    padding:55px 45px;
    color:#fff;
    box-shadow:0 25px 70px rgba(0,0,0,.65);
}

.contacto-box p{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    font-size:25px;
    margin:24px 0;
    color:#e8e8e8;
}

.contacto-box i{
    color:#d4af37;
    font-size:28px;
    width:34px;
    text-align:center;
}

.btn-contacto{
    display:flex;
    justify-content:center;
    align-items:center;
    width:fit-content;
    margin:45px auto 0;
    padding:18px 42px;
    border-radius:50px;
    background:#18c85a;
    color:#fff;
    text-decoration:none;
    font-size:20px;
    font-weight:900;
    box-shadow:0 15px 35px rgba(24,200,90,.25);
    transition:.3s;
}

.btn-contacto:hover{
    transform:translateY(-4px);
    background:#12a94b;
}

@media(max-width:700px){
    .contacto-page{
        padding:120px 16px 60px;
    }

    .contacto-page h1{
        font-size:42px;
    }

    .contacto-box{
        padding:35px 22px;
    }

    .contacto-box p{
        font-size:18px;
        justify-content:flex-start;
        align-items:flex-start;
    }

    .btn-contacto{
        width:100%;
        font-size:17px;
    }
}

/* ===== PRODUCTO DETALLE PREMIUM TIPO SHOOTER ===== */

.detalle-producto{
    padding:125px 35px 60px !important;
}

.producto-premium-box{
    max-width:1450px;
    margin:0 auto;
    display:grid;
    grid-template-columns:58% 42%;
    gap:35px;
    background:#070707;
    border:1px solid rgba(201,164,77,.28);
    border-radius:22px;
    padding:25px;
    box-shadow:0 30px 80px rgba(0,0,0,.75);
}

.producto-galeria-premium{
    display:grid;
    grid-template-columns:95px 1fr;
    gap:20px;
}

.miniaturas-premium{
    display:flex;
    flex-direction:column;
    gap:14px;
}

.miniaturas-premium img{
    width:90px;
    height:90px;
    object-fit:contain;
    background:#101010;
    border:1px solid rgba(201,164,77,.35);
    border-radius:10px;
    padding:8px;
    cursor:pointer;
}

.foto-principal-premium{
    position:relative;
    background:#0d0d0d;
    border:1px solid rgba(201,164,77,.22);
    border-radius:14px;
    min-height:560px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
}

.foto-principal-premium img{
    width:100%;
    height:540px;
    object-fit:contain;
    transition:.35s;
}

.foto-principal-premium:hover img{
    transform:scale(1.10);
}

.zoom-texto{
    position:absolute;
    right:18px;
    bottom:16px;
    color:#ddd;
    font-size:13px;
    text-transform:uppercase;
}

.producto-info-premium{
    color:white;
    padding:18px 10px;
}

.breadcrumb-producto{
    color:#c9a44d;
    font-size:12px;
    letter-spacing:1px;
    text-transform:uppercase;
    margin-bottom:18px;
}

.producto-info-premium h1{
    color:white;
    font-size:54px;
    line-height:.95;
    text-transform:uppercase;
    margin:0 0 10px;
}

.marca-producto{
    color:#c9a44d;
    font-size:20px;
    font-weight:900;
    text-transform:uppercase;
    margin:0 0 12px;
}

.rating-producto{
    color:#c9a44d;
    font-size:18px;
    margin-bottom:22px;
}

.rating-producto span{
    color:#ccc;
    font-size:14px;
    margin-left:8px;
}

.precio-detalle-premium{
    color:#c9a44d;
    font-size:48px;
    font-weight:900;
    margin:18px 0 6px;
}

.precio-contado-premium{
    color:#777;
    font-size:22px;
    font-weight:800;
    text-decoration:line-through;
    margin:0 0 15px;
}

.estado-producto{
    display:flex;
    align-items:center;
    gap:10px;
    color:#cfcfcf;
    text-transform:uppercase;
    font-size:14px;
    margin-bottom:22px;
}

.estado-producto .disponible,
.estado-producto .agotado{
    width:11px;
    height:11px;
    border-radius:50%;
    display:inline-block;
}

.estado-producto .disponible{
    background:#27d45d;
}

.estado-producto .agotado{
    background:#e53935;
}

.descripcion-premium{
    color:#d8d8d8;
    font-size:17px;
    line-height:1.55;
    margin-bottom:25px;
}

.btn-comprar-premium,
.btn-whatsapp-premium,
.btn-sin-stock-premium{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    padding:17px;
    border-radius:8px;
    font-size:15px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:1px;
    text-decoration:none;
    margin-bottom:12px;
}

.btn-comprar-ahora{
    width:100%;
    height:60px;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;

    background:linear-gradient(
        135deg,
        #d4af37,
        #c99a2e
    );

    color:#000;
    font-size:20px;
    font-weight:800;
    letter-spacing:2px;
    text-transform:uppercase;

    border:none;
    border-radius:14px;

    cursor:pointer;

    transition:
        transform .20s ease,
        box-shadow .20s ease,
        background .20s ease;

    box-shadow:
        0 10px 25px rgba(212,175,55,.25);
}

.btn-comprar-ahora:active{
    transform:scale(.97);

    box-shadow:
        0 5px 15px rgba(212,175,55,.20);
}

.btn-comprar-ahora i{
    transition:.25s;
}

.btn-comprar-ahora:hover i{
    transform:translateX(4px);
}

.btn-whatsapp-premium{
    background:#070707;
    color:white;
    border:1px solid rgba(201,164,77,.45);
}

.btn-sin-stock-premium{
    background:#333;
    color:#aaa;
    border:none;
}

.beneficios-premium-producto{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:12px;
    margin-top:28px;
}

.beneficios-premium-producto div{
    text-align:center;
    border-left:1px solid rgba(201,164,77,.22);
    padding:14px 8px;
}

.beneficios-premium-producto i{
    color:#c9a44d;
    font-size:24px;
    margin-bottom:8px;
}

.beneficios-premium-producto strong{
    display:block;
    font-size:13px;
    text-transform:uppercase;
}

.beneficios-premium-producto span{
    color:#aaa;
    font-size:12px;
}

.relacionados-premium{
    background:#070707 !important;
    border:1px solid rgba(201,164,77,.28);
    color:white;
}

.relacionados-premium h2{
    color:white !important;
}

@media(max-width:950px){
    .producto-premium-box{
        grid-template-columns:1fr;
    }

    .producto-galeria-premium{
        grid-template-columns:1fr;
    }

    .miniaturas-premium{
        flex-direction:row;
        order:2;
        overflow-x:auto;
    }

    .foto-principal-premium{
        min-height:360px;
    }

    .foto-principal-premium img{
        height:340px;
    }

    .producto-info-premium h1{
        font-size:36px;
    }

    .beneficios-premium-producto{
        grid-template-columns:1fr;
    }
}

/* ===== AJUSTE BOTÓN WHATSAPP DETALLE ===== */

.btn-whatsapp-premium{
    max-width: 520px !important;
    margin: 22px 0 25px !important;
    border-radius: 10px !important;
    border: 1px solid rgba(201,164,77,.65) !important;
    background: #080808 !important;
    color: #fff !important;
    box-shadow: 0 0 18px rgba(201,164,77,.08) !important;
}

.btn-whatsapp-premium:hover{
    background: #111 !important;
    border-color: #25D366 !important;
    color: #25D366 !important;
}

/* ===== BOTONES FLOTANTES EN PRODUCTO ===== */

.carrito-float{
    position: fixed !important;
    right: 25px !important;
    bottom: 300px !important;
    width: 65px !important;
    height: 65px !important;
    border-radius: 50% !important;
    background: #111 !important;
    color: #d4af37 !important;
    border: 1px solid rgba(212,175,55,.55) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 28px !important;
    z-index: 99999 !important;
    cursor: pointer !important;
}

.carrito-float span{
    position: absolute !important;
    top: -6px !important;
    right: -6px !important;
    width: 25px !important;
    height: 25px !important;
    border-radius: 50% !important;
    background: #d4af37 !important;
    color: #111 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.youtube-float{ bottom: 220px !important; }
.instagram-float{ bottom: 140px !important; }
.whatsapp-float{ bottom: 60px !important; }

/* ===== PRECIOS PREMIUM ===== */

.precio-box-premium{
    margin:25px 0;
}

.precio-tarjeta-label{
    display:flex;
    align-items:center;
    gap:10px;
    color:#c9a44d;
    font-size:15px;
    font-weight:700;
    margin-bottom:15px;
}

.precio-tarjeta-label i{
    font-size:18px;
}

.precio-detalle-premium{
    font-size:78px;
    font-weight:900;
    color:#d4af37;
    line-height:1;
    margin-bottom:20px;
}

.precio-contado-box{
    display:flex;
    align-items:center;
    gap:12px;
    padding:14px 20px;
    border-radius:12px;
    border:1px solid rgba(37,211,102,.35);
    background:rgba(37,211,102,.08);
    width:fit-content;
}

.precio-contado-box i{
    color:#25D366;
    font-size:22px;
}

.precio-contado-box span{
    color:#ccc;
    font-size:15px;
}

.precio-contado-box strong{
    color:#25D366;
    font-size:24px;
}

.medios-pago-premium{
    display:flex;
    gap:20px;
    align-items:center;
    margin:25px 0;
    color:#d4af37;
    font-size:34px;
}

.medios-pago-premium i{
    transition:.3s;
}

.medios-pago-premium i:hover{
    transform:scale(1.15);
}

/* ===== FIX FINAL DETALLE PRODUCTO ===== */

.producto-info-premium{
    position: sticky !important;
    top: 130px !important;
    align-self: start !important;
    max-width: 560px !important;
}

.producto-info-premium h1{
    font-size: 44px !important;
    line-height: 1.02 !important;
    margin-bottom: 10px !important;
}

.marca-producto{
    font-size: 17px !important;
}

.rating-producto{
    font-size: 15px !important;
    margin-bottom: 16px !important;
}

.precio-detalle-premium{
    font-size: 58px !important;
    margin: 12px 0 16px !important;
}

.precio-tarjeta-label{
    font-size: 13px !important;
    margin-bottom: 8px !important;
}

.precio-contado-box{
    padding: 11px 16px !important;
    gap: 10px !important;
}

.precio-contado-box span{
    font-size: 14px !important;
}

.precio-contado-box strong{
    font-size: 20px !important;
}

.medios-pago-premium{
    font-size: 27px !important;
    gap: 16px !important;
    margin: 18px 0 !important;
}

.estado-producto{
    font-size: 13px !important;
    margin-bottom: 16px !important;
}

.descripcion-premium{
    font-size: 16px !important;
    margin-bottom: 18px !important;
}

.btn-whatsapp-premium,
.btn-comprar-premium,
.btn-sin-stock-premium{
    max-width: 460px !important;
    padding: 14px 18px !important;
    font-size: 13px !important;
    margin-bottom: 12px !important;
}

.beneficios-premium-producto{
    max-width: 520px !important;
    gap: 8px !important;
    margin-top: 22px !important;
}

.beneficios-premium-producto div{
    padding: 12px 6px !important;
}

.beneficios-premium-producto i{
    font-size: 21px !important;
}

.beneficios-premium-producto strong{
    font-size: 12px !important;
}

.beneficios-premium-producto span{
    font-size: 11px !important;
}

@media(max-width:950px){
    .producto-info-premium{
        position: static !important;
        max-width: 100% !important;
    }

    .producto-info-premium h1{
        font-size: 34px !important;
    }

    .precio-detalle-premium{
        font-size: 46px !important;
    }
}

/* ===== PANEL CARRITO PREMIUM ===== */

.panel-carrito{
    width:390px !important;
    max-width:92vw !important;
    background:#070707 !important;
    border-left:1px solid rgba(212,175,55,.35) !important;
    box-shadow:-20px 0 60px rgba(0,0,0,.75) !important;
    color:#fff !important;
}

.panel-header{
    padding:28px !important;
    border-bottom:1px solid rgba(212,175,55,.20) !important;
}

.panel-header h2,
.panel-footer h3{
    color:#d4af37 !important;
}

.panel-header button{
    background:#d4af37 !important;
    color:#111 !important;
    border:none !important;
    width:32px !important;
    height:32px !important;
    border-radius:50% !important;
    font-weight:900 !important;
}

.panel-footer{
    padding:28px !important;
    background:#111 !important;
    border-top:1px solid rgba(212,175,55,.25) !important;
}

.panel-footer button{
    width:100% !important;
    padding:15px !important;
    border:none !important;
    border-radius:40px !important;
    background:#d4af37 !important;
    color:#111 !important;
    font-weight:900 !important;
}

.volver{
    position:absolute;
    top:25px;
    left:25px;
    color:#d4af37;
    text-decoration:none;
    font-size:15px;
    font-weight:600;
    opacity:.8;
}

.volver:hover{
    opacity:1;
}

.item-carrito{
    cursor:pointer;
}

.item-carrito{
    display:grid;
    grid-template-columns:90px 1fr 45px;

    align-items:center;

    gap:18px;

    padding:18px 0;
}

.item-carrito img{
    width:90px;
    height:90px;

    object-fit:contain;

    background:#fff;

    border-radius:12px;
}

.info-item-carrito{
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.info-item-carrito h4{
    margin-bottom:8px;
    line-height:1.3;
}

#items-carrito{
    padding:25px;
}

/* FIX CARRITO PRODUCTO.HTML */

#items-carrito{
    height:calc(100vh - 260px) !important;
    padding:26px 26px 150px !important;
    overflow-y:auto !important;
}

.item-carrito{
    display:flex;
    align-items:center;
    gap:15px;
    padding:20px;
    cursor:pointer;
}

.item-carrito img{
    width:80px;
    height:80px;
    object-fit:contain;
    border-radius:10px;
    background:#fff;
}

.info-item-carrito{
    flex:1;
}

.btn-eliminar{
    flex-shrink:0;
}

.info-item-carrito h4{
    font-size:18px !important;
    line-height:1.25 !important;
}

.info-item-carrito p{
    font-size:20px !important;
}

.stock-ok,
.stock-alerta{
    display:none !important;
}

.cantidad-carrito{
    margin:12px 0 !important;
}

.info-item-carrito strong{
    font-size:16px !important;
    line-height:1.25 !important;
}

.carrito-float{
    right:32px !important;
    bottom:350px !important;
}

.panel-footer .btn-finalizar{
    width:100% !important;
    height:60px !important;
    border:none !important;
    border-radius:40px !important;
    background:#d4b13f !important;
    color:#000 !important;
    font-size:18px !important;
    font-weight:800 !important;
}

.panel-carrito.activo ~ .carrito-float{
    display:none !important;
}

#items-carrito{
    height:calc(100vh - 250px) !important;
    padding:25px 25px 180px !important;
}

.item-carrito{
    padding:22px 0 !important;
}

.item-carrito img{
    width:82px !important;
    height:82px !important;
    object-fit:contain !important;
}

/* FIX FINAL CARRITO */

.panel-carrito{
    overflow:hidden !important;
}

#items-carrito{
    height:calc(100vh - 255px) !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    padding:25px 28px 230px !important;
    box-sizing:border-box !important;
}

/* Oculta barra lateral */
#items-carrito::-webkit-scrollbar{
    width:0 !important;
}

#items-carrito{
    scrollbar-width:none;
}

.item-carrito{
    display:grid !important;
    grid-template-columns:90px 1fr 42px !important;
    gap:18px !important;
    align-items:center !important;
    padding:22px 0 !important;
    margin:0 !important;
}

.item-carrito img{
    width:86px !important;
    height:86px !important;
    object-fit:contain !important;
    background:white !important;
    border-radius:12px !important;
}

.info-item-carrito{
    min-width:0 !important;
}

.info-item-carrito h4{
    font-size:18px !important;
    margin:0 0 8px !important;
}

.info-item-carrito p{
    font-size:20px !important;
    margin:0 0 8px !important;
}

.info-item-carrito strong{
    font-size:16px !important;
}

.cantidad-carrito{
    margin:8px 0 !important;
}

.panel-carrito.activo ~ .carrito-float{
    display:none !important;
}

/* Touch / efecto al carrito */
.carrito-float{
    transition:.25s !important;
    cursor:pointer !important;
}

.carrito-float:active{
    transform:scale(.9) !important;
}

/* ===== EFECTO BOTÓN COMPRAR AHORA - DETALLE PRODUCTO ===== */

.btn-comprar-premium{
    width:100% !important;
    max-width:460px !important;
    min-height:58px !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:12px !important;

    background:linear-gradient(135deg,#d4af37,#b98218) !important;
    color:#050505 !important;

    border:1px solid rgba(255,255,255,.12) !important;
    border-radius:14px !important;

    font-size:15px !important;
    font-weight:900 !important;
    letter-spacing:2px !important;
    text-transform:uppercase !important;

    cursor:pointer !important;

    box-shadow:
        0 10px 24px rgba(212,175,55,.22),
        inset 0 1px 0 rgba(255,255,255,.35) !important;

    transition:
        transform .22s ease,
        box-shadow .22s ease,
        background .22s ease !important;
}

.btn-comprar-premium:hover{
    transform:translateY(-4px) scale(1.015) !important;

    background:linear-gradient(135deg,#f0cf66,#d4af37) !important;

    box-shadow:
        0 18px 38px rgba(212,175,55,.38),
        0 0 22px rgba(212,175,55,.22),
        inset 0 1px 0 rgba(255,255,255,.45) !important;
}

.btn-comprar-premium:active{
    transform:scale(.96) !important;

    box-shadow:
        0 6px 16px rgba(212,175,55,.22) !important;
}

.btn-comprar-premium i{
    transition:transform .22s ease !important;
}

.btn-comprar-premium:hover i{
    transform:translateX(6px) rotate(-8deg) !important;
}

/* ============================= */
/* FIX RESPONSIVE MOBILE SHOOTER */
/* ============================= */

@media (max-width: 768px){

    html,
    body{
        width:100%;
        max-width:100%;
        overflow-x:hidden !important;
    }

    .header-premium{
        height:auto !important;
        min-height:96px !important;
        padding:12px 16px !important;
        flex-wrap:wrap !important;
        gap:12px !important;
    }

    .logo-premium{
        gap:10px !important;
    }

    .logo-premium img{
        width:58px !important;
        height:58px !important;
    }

    .logo-premium h1{
        font-size:26px !important;
        letter-spacing:6px !important;
    }

    .logo-premium span{
        font-size:11px !important;
        letter-spacing:3px !important;
    }

    .menu-premium{
        width:100% !important;
        display:flex !important;
        justify-content:center !important;
        gap:18px !important;
        flex-wrap:wrap !important;
        order:3 !important;
    }

    .menu-premium a{
        font-size:13px !important;
        letter-spacing:2px !important;
    }

    .header-actions-premium{
        margin-left:auto !important;
        gap:10px !important;
    }

    .buscador-premium{
        width:190px !important;
        height:44px !important;
    }

    .buscador-premium input{
        font-size:14px !important;
        padding:0 12px !important;
    }

    .buscador-premium button{
        width:48px !important;
    }

    .hero-premium{
        min-height:calc(100vh - 130px) !important;
        padding:150px 22px 60px !important;
        background-position:center !important;
    }

    .hero-content-premium{
        max-width:100% !important;
    }

    .hero-content-premium h1,
    .hero-title,
    .titulo-hero{
        font-size:42px !important;
        line-height:1.05 !important;
        letter-spacing:2px !important;
    }

    .hero-content-premium p{
        font-size:17px !important;
        line-height:1.5 !important;
    }

    .hero-actions{
        flex-direction:column !important;
        align-items:stretch !important;
        width:100% !important;
    }

    .btn-hero,
    .btn-hero-secundario{
        width:100% !important;
        justify-content:center !important;
    }

    section{
        padding-left:18px !important;
        padding-right:18px !important;
    }

    .productos-grid,
    #productos,
    #catalogo-productos{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:22px !important;
        padding:20px 12px !important;
    }

    .card,
    .producto-card{
        width:100% !important;
        max-width:360px !important;
        margin:0 auto !important;
        padding:20px !important;
        min-height:auto !important;
    }

    .card img,
    .producto-card img{
        height:230px !important;
        object-fit:contain !important;
        background:#fff !important;
    }

    .card h3{
        font-size:22px !important;
    }

    .card .precio,
    .precio{
        font-size:34px !important;
    }

    .stock{
        font-size:26px !important;
    }

    .carousel,
    .carousel-contenedor,
    #carousel,
    #carousel-destacados,
    #carousel-nuevos{
        overflow-x:auto !important;
        scroll-snap-type:x mandatory !important;
        -webkit-overflow-scrolling:touch !important;
    }

    .carousel-track,
    #carousel-track,
    #track-nuevos{
        display:flex !important;
        gap:18px !important;
    }

    .carousel-item{
        min-width:78vw !important;
        max-width:78vw !important;
        scroll-snap-align:center !important;
    }

    .categoria-card{
        min-width:82vw !important;
        max-width:82vw !important;
    }

    .detalle-producto{
        padding:130px 14px 40px !important;
    }

    .detalle-premium{
        display:flex !important;
        flex-direction:column !important;
        gap:28px !important;
    }

    .galeria-premium,
    .info-premium{
        width:100% !important;
        max-width:100% !important;
    }

    .info-premium h1{
        font-size:42px !important;
        line-height:1.05 !important;
    }

    .precio-premium{
        font-size:52px !important;
    }

    .btn-comprar-premium,
    .btn-whatsapp-premium{
        max-width:100% !important;
        width:100% !important;
    }

    .carrito-float,
    .youtube-float,
    .instagram-float,
    .whatsapp-float{
        right:14px !important;
        width:58px !important;
        height:58px !important;
        font-size:24px !important;
    }

    .carrito-float{ bottom:250px !important; }
    .youtube-float{ bottom:180px !important; }
    .instagram-float{ bottom:110px !important; }
    .whatsapp-float{ bottom:40px !important; }

    .panel-carrito{
        width:100% !important;
        max-width:100% !important;
    }
}

@media (max-width: 480px){

    .logo-premium h1{
        font-size:22px !important;
        letter-spacing:4px !important;
    }

    .buscador-premium{
        width:150px !important;
    }

    .menu-premium{
        gap:12px !important;
    }

    .menu-premium a{
        font-size:12px !important;
    }

    .hero-content-premium h1,
    .hero-title,
    .titulo-hero{
        font-size:34px !important;
    }

    .hero-content-premium p{
        font-size:15px !important;
    }

    .card img{
        height:200px !important;
    }

    .card .precio,
    .precio{
        font-size:30px !important;
    }

    .info-premium h1{
        font-size:34px !important;
    }

    .precio-premium{
        font-size:44px !important;
    }
}