/* =====================================
   HERO PRODUCTOS
===================================== */

.productos-hero{
    position: relative;
    min-height: 50vh;

    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;

    background:
    linear-gradient(
        rgba(0,0,0,.75),
        rgba(0,0,0,.60)
    ),
    url('../imagenes/nosotros/nosotros.jpg')
    center center/cover no-repeat;

    padding: 120px 20px 80px;
}

.productos-hero-content{
    max-width: 850px;
    color: white;
}

.productos-hero-content span{
    display: inline-block;
    background: rgba(255,255,255,.15);
    backdrop-filter: blur(10px);
    padding: 8px 18px;
    border-radius: 30px;
    margin-bottom: 20px;
}

.productos-hero-content h1{
    font-size: clamp(2.5rem,5vw,4.5rem);
    font-weight: 800;
    margin-bottom: 20px;
}

.productos-hero-content p{
    font-size: 1.1rem;
    line-height: 1.8;
}

/* =====================================
   SECCION PRODUCTOS
===================================== */

.productos-section{
    padding: 90px 8%;
    background: #f8f9fa;
}

.productos-section h2{
    text-align: center;
    font-size: 2.5rem;
    margin-bottom: 20px;
}

/* =====================================
   ESTADISTICAS
===================================== */

.catalog-stats{
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 25px;

    max-width: 900px;
    margin: 0 auto 60px;
}

.catalog-stats div{
    background: white;
    padding: 25px;
    border-radius: 20px;
    text-align: center;

    box-shadow:
    0 10px 25px rgba(0,0,0,.05);
}

.catalog-stats h3{
    color: #e60012;
    font-size: 2rem;
    margin-bottom: 10px;
}

.catalog-stats p{
    color: #666;
}

/* =====================================
   FILTRO
===================================== */

.filtros{
    display: flex;
    justify-content: center;
    margin-bottom: 50px;
}

#filtroCategoria{

    min-width: 260px;

    padding: 14px 20px;

    border: none;

    border-radius: 50px;

    background: white;

    box-shadow:
    0 8px 20px rgba(0,0,0,.08);

    font-size: 1rem;

    cursor: pointer;

    outline: none;
}

/* =====================================
   GRID
===================================== */

.grid{
    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(300px,1fr));

    gap:30px;

    max-width:1300px;

    margin:auto;
}

/* =====================================
   CARD PRODUCTO
===================================== */

.product-card{

    background:#fff;

    border-radius:24px;

    overflow:hidden;

    transition:.35s ease;

    box-shadow:
    0 10px 30px rgba(0,0,0,.06);

    display:flex;

    flex-direction:column;
}

.product-card:hover{

    transform:translateY(-10px);

    box-shadow:
    0 20px 40px rgba(0,0,0,.12);
}

/* =====================================
   IMAGEN
===================================== */

.product-image{

    height:300px;

    display:flex;

    align-items:center;

    justify-content:center;

    padding:25px;

    background:
    linear-gradient(
        135deg,
        #f8f9fa,
        #eef2f5
    );
}

.product-image img{

    max-width:100%;

    max-height:250px;

    object-fit:contain;

    transition:.4s;
}

.product-card:hover .product-image img{

    transform:scale(1.08);
}

/* =====================================
   INFO PRODUCTO
===================================== */

.product-info{

    padding:25px;

    display:flex;

    flex-direction:column;

    flex-grow:1;
}

.product-category{

    display:inline-block;

    align-self:flex-start;

    background:#e60012;

    color:white;

    padding:7px 15px;

    border-radius:30px;

    font-size:.8rem;

    font-weight:700;

    margin-bottom:15px;
}

.product-info h3{

    font-size:1.2rem;

    margin-bottom:12px;

    min-height:55px;
}

.product-type{

    color:#00a63f;

    font-weight:700;

    margin-bottom:15px;
}

.product-info p{

    color:#666;

    line-height:1.7;

    margin-bottom:25px;

    flex-grow:1;
}

/* =====================================
   BOTON
===================================== */

.product-btn{

    text-decoration:none;

    text-align:center;

    background:#00a63f;

    color:white;

    padding:14px;

    border-radius:50px;

    font-weight:700;

    transition:.3s;
}

.product-btn:hover{

    background:#008535;

    transform:translateY(-2px);
}

/* =====================================
   CTA FINAL
===================================== */

.catalogo-cta{

    margin-top:100px;

    background:#111;

    color:white;

    text-align:center;

    border-radius:25px;

    padding:70px 40px;
}

.catalogo-cta h2{

    color:white;

    margin-bottom:20px;
}

.catalogo-cta p{

    max-width:700px;

    margin:auto;

    line-height:1.8;

    margin-bottom:25px;
}

.catalogo-cta a{

    display:inline-block;

    padding:14px 28px;

    background:#e60012;

    color:white;

    text-decoration:none;

    border-radius:50px;

    font-weight:700;

    transition:.3s;
}

.catalogo-cta a:hover{

    transform:translateY(-3px);
}

/* =====================================
   WHATSAPP
===================================== */

.whatsapp-btn{

    position:fixed;

    bottom:25px;

    right:25px;

    width:65px;

    height:65px;

    border-radius:50%;

    background:#25D366;

    color:white;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:2rem;

    text-decoration:none;

    box-shadow:
    0 8px 25px rgba(0,0,0,.2);

    z-index:999;

    transition:.3s;
}

.whatsapp-btn:hover{

    transform:scale(1.1);
}

/* =====================================
   TABLET
===================================== */

@media(max-width:992px){

    .catalog-stats{

        grid-template-columns:
        repeat(3,1fr);
    }

    .grid{

        grid-template-columns:
        repeat(auto-fit,minmax(260px,1fr));
    }
}

/* =====================================
   MOBILE
===================================== */

@media(max-width:768px){

    .productos-hero{

        min-height:40vh;

        padding-top:120px;
    }

    .productos-hero-content h1{

        font-size:2.2rem;
    }

    .productos-hero-content p{

        font-size:1rem;
    }

    .catalog-stats{

        grid-template-columns:1fr;

        gap:15px;
    }

    .productos-section{

        padding:70px 6%;
    }

    #filtroCategoria{

        width:100%;
    }

    .grid{

        grid-template-columns:1fr;
    }

    .product-image{

        height:240px;
    }

    .product-info h3{

        min-height:auto;
    }
}

/* =====================================
   SMALL MOBILE
===================================== */

@media(max-width:480px){

    .productos-hero-content h1{

        font-size:1.9rem;
    }

    .productos-section h2{

        font-size:2rem;
    }

    .product-image{

        height:220px;
    }
}