body {
  font-family: Arial, sans-serif;
  margin: 0;
  background: #f8f8f8;
}

header {
  background: #040106fb;
  color: white;
  text-align: center;
  padding: 20px;
}




/* SECTIONS */
section {
  padding: 20px;
}

/* GRID SYSTEM */
.card {
  background: white;
  padding: 20px;
  text-align: center;
  border-radius: 8px;
}

.grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}

.product-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
  padding: 20px;
}

.product-card {
  position: relative;
  width: 100%;
  aspect-ratio: 4/5;
  overflow: hidden;
  border-radius: 10px;
}

.product-price {

  width: 100%;
  aspect-ratio: 4/5;
  overflow: hidden;
  border-radius: 10px;
}

.product-card img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity 0.4s ease;
}

/* Default image */
.main-img {
  opacity: 1;
}

/* Hover image hidden */
.hover-img {
  opacity: 0;
}

/* On hover → swap */
.product-card:hover .main-img {
  opacity: 0;
}

.product-card:hover .hover-img {
  opacity: 1;
}

.product-card img {
  transition: .5s;
}

.product-card:hover img {
  transform: scale(1.08);
}

/* ==========================
 IMAGE ZOOM VIEWER
========================== */

.image-modal{
display:none;
position:fixed;
z-index:2000;
top:0;
left:0;

width:100%;
height:100%;
background:rgba(0,0,0,.95);
justify-content:center;
align-items:center;
}

.image-modal img{
max-width:80%;
max-height:80%;
object-fit:contain;
}

.close-modal{
position:absolute;
top:30px;
right:40px;
font-size:35px;
color:white;
cursor:pointer;
}

.prev-btn,
.next-btn{
position:absolute;
top:50%;
transform:translateY(-50%);
background:none;
border:none;
color:white;
font-size:50px;
cursor:pointer;
}

.prev-btn{
left:40px;
}

.next-btn{
right:40px;
}

.product-info{
position:absolute;
bottom:30px;
right:30px;
background:white;
padding:20px;
border-radius:15px;
text-align:center;
}

.product-info h2{
color:red;
}

#cartBtn{
background:black;
color:white;
padding:12px 25px;
border:none;
border-radius:10px;
cursor:pointer;
}

#cartBtn:hover{
background:#444;
}


/* ===========================
   Price cart
=========================== */

.product-cart {
  background: white;
  border-radius: 15px;
  padding: 15px;
  overflow: hidden;
  text-align: center;
  box-shadow: 0 5px 15px rgba(0, 0, 0, .2);
}


.product-cart img {
  position: relative;
  /* IMPORTANT */
  width: 100%;
  height: 300px;
  object-fit: cover;
  border-radius: 10px;
  display: block;
}

.product-cart h3 {
  margin: 15px 0 5px;
}

.price {
  font-size: 22px;
  font-weight: bold;
  color: red;
}

.cart-btn {
  background: black;
  color: white;
  padding: 12px 25px;
  border: none;
  border-radius: 20px;
  cursor: pointer;
}

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

footer {
  background: #222;
  color: white;
  padding: 10px;
}

.footer_nav {
  width: 90%;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 30px;
}

.footer-menu {
  display: flex;
  flex-direction: column;
}

.footer-menu a {
  width: 200px;
  height: 30px;
  color: gray;
  text-decoration: none;
}

.block-2 {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  padding: 20px;

}

.inch_logo {
  width: 120px;
}

.footer_text {
  margin: 0;
}

.copywright {
  text-align: center;
  color: gray;
}
@media(max-width:900px){

    .nav{
        flex-wrap:wrap;
    }

    .menu-btn{
        display:block;
    }

    .nav-links{
        display:none;

        width:100%;
        flex-direction:row;
        text-align:center;

        background:#111;
        margin-top:15px;
    }

    .nav-links.active{
        display:flex;
    }

    .nav-links a{
        padding:15px;
        border-top:1px solid #333;
    }

    .search-box{
        order:4;
        width:100%;
        margin-top:1px;
    }

    .search-box input{
        width:100%;
    }

}

@media(max-width:768px) {
  .menu-btn {
    display: inline;
  }

  .nav-links {
    display: none;
    position: absolute;
    top: 70px;
    left: 0;
    width: 100%;
    background: black;
    justify-content: center;
    gap: 5px;
  }

  .nav-links.active {
    display: flex;
  }

  .nav-links a {
    font-size: 14px;
  }

  .nav {
    position: relative;
    height: 70px;
  }
}

@media (max-width:768px) {
  .menu-btn {
    display: block;
    font-size: 30px;
    cursor: pointer;
  }

  .nav-links {
    display: none;
    position: absolute;
    top: 70px;
    left: 0;
    width: 100%;
    background: black;
    z-index: 999;
    gap:0px;
  }

  .nav-links.active {
    display: flex;
  }
  .nav-links a {
    width: 100%;
    height: auto;
    padding: 18px;
    text-align: center;
    border-top: 1px solid #333;
  }
  .grid {
    grid-template-columns: 1fr;
  }
}