/*
Theme Name: Storefront Child
Template: storefront
Version: 1.0
*/

/* LOGO */

.custom-logo{
max-width:120px;
}
/* ============================= */
/* TOP BAR SLIDER */
/* ============================= */

.topbar-slider{
background:#000;
color:#fff;
overflow:hidden;
width:100%;
}

.topbar-track{
display:flex;
transition:transform .6s ease;
}

.topbar-item{
min-width:100%;
text-align:center;
padding:10px 0;

font-size:18px;
font-weight:600;
letter-spacing:.5px;
}

/* EMOJIS MAS GRANDES */

.topbar-item .emoji{
font-size:26px;
margin-right:10px;
vertical-align:middle;
}

/* ============================= */
/* NAVIGATION */
/* ============================= */

.main-navigation{
background:rgba(0,0,0,0.85);
}

.main-navigation ul{
display:flex;
justify-content:center;
align-items:center;
gap:40px;
padding:16px 0;
margin:0;
list-style:none;
}

.main-navigation ul li a{
position:relative;
color:#fff;
text-decoration:none;
font-weight:500;
transition:all .3s ease;
}

/* CTA OFERTAS */

.cta-ofertas{
background:#D4AF37;
color:#fff;
font-weight:600;
padding:8px 18px;
border-radius:6px;
animation:ctaPulse 2s infinite;
transition:all .3s ease;
text-transform: uppercase;
}

/* ANIMACION SUAVE */

@keyframes ctaPulse{

0%{
transform:scale(1);
box-shadow:0 0 0 0 rgba(212,175,55,0.6);
}

70%{
transform:scale(1.05);
box-shadow:0 0 0 10px rgba(212,175,55,0);
}

100%{
transform:scale(1);
}

}

.cta-ofertas:hover{
animation:none;
background:#000;
color:#D4AF37;
transform:translateY(-2px);
}

.main-navigation a{
    padding: 0 1em 0.150684em;
}

.main-navigation ul {
    padding:5px 0px;
}

/* hover menu */

.main-navigation ul li a:hover{
color:#D4AF37;
}

/* underline animation */

.main-navigation ul li a::after{
content:"";
position:absolute;
left:50%;
bottom:-6px;
width:0;
height:2px;
background:#D4AF37;
transform:translateX(-50%);
transition:all .3s ease;
}

.main-navigation ul li a:hover::after{
width:100%;
}

/* SLIDER CONTAINER */

.homepage-slider{
    max-width: 1200px;
    margin:10px auto;
    padding: 20px;
}

/* BORDER RADIUS */

.homepage-slider .n2-ss-slider{
border-radius:14px;
overflow:hidden;
}

/* ============================= */
/* PRODUCT GRID */
/* ============================= */

.products-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:30px;
}


/* ============================= */
/* PRODUCT CARD */
/* ============================= */

.product-card{
background:#fff;
border-radius:12px;
padding:16px;
display:flex;
flex-direction:column;
height:100%;
box-shadow:0 5px 15px rgba(0,0,0,0.05);
transition:.3s;
}

.product-card:hover{
transform:translateY(-5px);
box-shadow:0 10px 30px rgba(0,0,0,0.12);
}


/* ============================= */
/* PRODUCT IMAGE */
/* ============================= */

.product-image img{
width:100%;
height:260px;
object-fit:contain;
transition:transform .4s ease;
}

.product-card:hover .product-image img{
transform:scale(1.05);
}


/* ============================= */
/* PRODUCT INFO */
/* ============================= */

.product-info{
display:flex;
flex-direction:column;
flex:1;
}

.product-title{
font-size:16px;
font-weight:600;
margin:12px 0;
min-height:52px;
line-height:1.3;
}

.product-price{
font-size:20px;
font-weight:bold;
margin-bottom:14px;
}

/* ============================= */
/* PRODUCT BUTTONS */
/* ============================= */

.product-buttons{
margin-top:auto;
display:flex;
gap:10px;
justify-content:center;
flex-wrap:nowrap;
}

.product-buttons a{
white-space:nowrap;
}


/* ============================= */
/* BASE BUTTON STYLE */
/* ============================= */

.product-buttons a,
.woocommerce a.button{

display:inline-flex;
align-items:center;
justify-content:center;

padding:10px 18px;
font-size:14px;
font-weight:600;

border-radius:6px;
text-decoration:none;

white-space:nowrap;

background:transparent;
border:2px solid #000;
color:#000;

transition:all .3s ease;
}


/* ============================= */
/* BUY NOW BUTTON */
/* ============================= */

.buy-now:hover{
    background:#D4AF37 !important;
    border-color:#D4AF37 !important;
    color:#000;

    transform:translateY(-3px) !important;
    box-shadow:0 8px 18px rgba(0,0,0,0.25) !important;
}


/* ============================= */
/* ADD TO CART BUTTON */
/* ============================= */

.woocommerce a.button:hover{
    background:#e5e5e5;
    border-color:#d1d1d1;
    color:#000;

    transform:translateY(-3px);
    box-shadow:0 8px 18px rgba(0,0,0,0.25);
}

/* ============================= */
/* FIX WOOCOMMERCE CATALOG GRID */
/* ============================= */

/* PRODUCT GRID */


.woocommerce ul.products{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:30px;

    padding:0;
    margin:0;
    list-style:none;

    align-items:stretch;
}

/* PRODUCT ITEM */

.woocommerce ul.products li.product{
width:100% !important;
margin:0 !important;

background:#fff;
border-radius:12px;
padding:16px;

display:flex;
flex-direction:column;
justify-content:space-between;

box-shadow:0 5px 15px rgba(0,0,0,0.05);
transition:.3s;
}

.product-card{
display:flex;
flex-direction:column;
height:100%;
}

.product-info{
display:flex;
flex-direction:column;
flex:1;
}

.product-buttons{
margin-top:auto;
}

/* HOVER CARD */

.woocommerce ul.products li.product:hover{
transform:translateY(-5px);
box-shadow:0 10px 30px rgba(0,0,0,0.12);
}

/* IMAGE */

.woocommerce ul.products li.product img{
height:260px;
object-fit:contain;
}

/* TITLE */

.woocommerce ul.products li.product h2{
font-size:16px;
font-weight:600;
min-height:50px;
}

/* PRICE */

.woocommerce ul.products li.product .price{
font-size:20px;
font-weight:700;
margin-bottom:10px;
}

/* BUTTON */

.woocommerce ul.products li.product .button{
margin-top:auto;
}


@media (max-width:1024px){

.woocommerce ul.products{
grid-template-columns:repeat(3,1fr);
}

}

@media (max-width:768px){

.woocommerce ul.products{
grid-template-columns:repeat(2,1fr);
}

}

@media (max-width:480px){

.woocommerce ul.products{
grid-template-columns:1fr;
}

}

/* FOOTER */


.site-footer{
    background:#07152b;
    color:#fff;
    padding:60px 0 20px;
}

.footer-container{
    max-width:1200px;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:40px;
    padding:0 20px;
}

.footer-col h3{
    font-size:20px;
    margin-bottom:20px;
}

.footer-widget ul{
    list-style:none;
    padding:0;
    margin:0;
}

.footer-widget ul li{
    margin-bottom:10px;
}

.footer-widget a{
    color:#cfd6e6;
    text-decoration:none;
}

.footer-widget a:hover{
    color:#fff;
}

.footer-divider{
    height:1px;
    background:rgba(255,255,255,.1);
    margin:40px auto;
    max-width:1200px;
}

.footer-bottom{
    max-width:1200px;
    margin:auto;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:0 20px;
    font-size:14px;
}

.payment-icons img{
    height:26px;
}

/* ============================= */
/* FOOTER CONTENT */
/* ============================= */

.site-footer{
color:#fff;
}

/* Títulos de columnas */

.site-footer .footer-col h2,
.site-footer .footer-col h3{
font-size:22px;
font-weight:600;
color:#ffffff;
margin-bottom:20px;
}

/* Links del footer */

.site-footer a{
color:#ffffff;
text-decoration:none;
}

.site-footer a:hover{
opacity:.8;
}

/* Menús del footer */

.site-footer .menu{
list-style:none;
padding:0;
margin:0;
}

.site-footer .menu li{
margin-bottom:10px;
}

.site-footer .menu li a{
font-size:15px;
color:#ffffff !important;
}


/* ============================= */
/* CONTACT INFO */
/* ============================= */

.footer-contact{
margin-top:10px;
}

.footer-contact-item{
display:flex;
align-items:center;
gap:10px;
margin-bottom:12px;
font-size:15px;
color:#ffffff;
}

/* iconos */

.footer-contact-item svg{
flex-shrink:0;
width:18px;
height:18px;
color:#ffffff;
}

/* texto */

.footer-contact-item span{
line-height:1.4;
}


/* ============================= */
/* LOGO */
/* ============================= */

.site-footer .wp-block-image{
margin-bottom:20px;
}

.site-footer .wp-block-image img{
border-radius:6px;
}


/* ============================= */
/* RESPONSIVE */
/* ============================= */

@media (max-width:768px){

.footer-contact-item{
justify-content:center;
}

.site-footer .footer-col{
text-align:center;
}

}


@media (max-width:900px){

    .footer-container{
        grid-template-columns:1fr 1fr;
    }

}

@media (max-width:600px){

    .footer-container{
        grid-template-columns:1fr;
        text-align:center;
    }

    .footer-bottom{
        flex-direction:column;
        gap:10px;
    }

}

/* ========================= */
/* FEATURED PRODUCT SECTIONS */
/* ========================= */

.featured-products-section{
padding:80px 0;
background:#fff;
}

.section-title{
font-size:32px;
font-weight:700;
margin-bottom:50px;
}


/* GRID */

.products-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:30px;
}

/* PRODUCT CARD */

.product-card{
background:#fff;
border-radius:12px;
overflow:hidden;
transition:.3s;
border:1px solid #f1f1f1;
}

.product-card:hover{
transform:translateY(-6px);
box-shadow:0 10px 25px rgba(0,0,0,.08);
}


/* IMAGE */

.product-image{
display:block;
padding:20px;
background:#fafafa;
}

.product-image img{
width:100%;
height:auto;
object-fit:cover;
}


/* INFO */

.product-info{
padding:18px;
text-align:center;
}

.product-title{
font-size:16px;
font-weight:600;
margin-bottom:10px;
}

.product-price{
display:block;
font-size:18px;
font-weight:700;
color:#000;
margin-bottom:15px;
}


/* BUTTONS */

.product-buttons{
display:flex;
flex-direction:column;
gap:10px;
}

.buy-now{
background:#000;
color:#fff;
padding:10px;
border-radius:6px;
text-decoration:none;
font-size:14px;
transition:.3s;
}

.buy-now:hover{
background:#333;
}


/* Add to cart button */

.product-buttons .button{
background:#f5f5f5;
border:none;
padding:10px;
border-radius:6px;
font-size:14px;
}


/* ========================= */
/* RESPONSIVE */
/* ========================= */

@media(max-width:1024px){

.products-grid{
grid-template-columns:repeat(3,1fr);
}

}

@media(max-width:768px){

.products-grid{
grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:480px){

.products-grid{
grid-template-columns:1fr;
}

}