body{
    background-color: white;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
    max-width: 100%;
}

header{
    width: calc(97.0%);
    background-color: mediumpurple;
    justify-content: center;
    margin: 0;
    position: absolute;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    text-align: center;
    position: absolute;
    justify-content: space-between;
    display: flex;
}

.branding{
    color: white;
}

.logo{
     font-size:.85rem;
     color:#d8cdcd;
     margin-bottom:15px;
}

.products{
     margin: 40px auto;
     padding: 20px;
     background-color: #f9f9f9;
     border: 1px solid #ddd;
     box-shadow: 0 0 10px rgba(0,0,0,.1);
     border-radius: 12px;
     max-width: 1100px;
     text-align: center;
}

#item-grid{
     display:grid;
     grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
     gap:20px;
}

.item{
    background: white;
    box-shadow:0 8px 18px rgba(0,0,0,.08);
    transition:.3s;
    width: 90%;
    height: 500px;
    box-shadow: 5px 5px 15px rgba(0, 0 ,0, 0.8);
    justify-content: center;
    align-items: center;
    margin: 0.75%;
    border-radius: 12px;
}

.item img{
    object-fit: cover;
    width: calc(100%);
    border-radius: 12px;
}

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

.check{
    background-color: mediumpurple;
    width: 350px;
  height: 30px;
  padding: 20px;
  border-color: white;
  border-radius: 50px;
  text-decoration: none;
  color: white;
}

.padding
{
    padding: 90px;
}

.back-btn{
     width: calc(99.8%);
     background-color: mediumpurple;
     height: 30px;
     padding: 20px;
     border-radius: 22px;
     margin-bottom: 12px;
     color: white;
     cursor: pointer;
}

.product-img{
    width: calc(100%);
    height: calc(80%);
    border-radius: 22px;
    box-shadow: 5px 5px 15px rgba(0, 0 ,0, 0.8);
}

.purchase{
    justify-content: center;
    align-items: center;
    text-align: center;
}

.purchase-btn{
     width: calc(99.8%);
     min-width: calc(99.8%);
     background-color: mediumpurple;
     height: 30px;
     padding: 20px;
     border-radius: 22px;
     text-decoration: none;
     color: white;
}

.currency{
    font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
    font-size: 27px;
}

.price{
    font-family: co;
     font-size: 25px;
     color:#777;
     margin-bottom:15px;
}

.rating-overlay {
    position: relative;
    top: 5px;
    right: 5px;
    background-color: rgba(0, 0, 0, 0.6);
    color: white;
    padding: 3px 6px;
    border-radius: 5px;
    font-size: 0.8rem;
    font-weight: bold;
}

footer{
    color: #777;
     margin: 40px auto;
     padding: 20px;
     background-color: #f9f9f9;
     border: 1px solid #ddd;
     box-shadow: 0 0 10px rgba(0,0,0,.1);
     border-radius: 12px;
     max-width: 1100px;
     text-align: center;
}

.item-name{
    color: #777;
    margin: 5px;
    font-family: 'Times New Roman', Times, serif;
    font-size: 25px;
}

.legal-links {
  margin-top: 15px;
  text-align: center;
}

.legal-links a {
  color: mediumpurple;
  font-weight: 600;
  text-decoration: none;
  margin: 0 10px;
}

.legal-links a:hover {
  text-decoration: underline;
}

/* Overlay background */
.nav-overlay {
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100vw;
  background: rgba(0,0,0,0.4);
  backdrop-filter: blur(5px);
  z-index: 8;
  display: none;
}

.nav-overlay.show {
  display: block;
}

/* Ensure nav appears above overlay */
.nav {
  z-index: 10;
}

.nav { display: flex; gap: 15px; }

.nav a { 
  color: white; 
  text-decoration: none; 
  font-weight: 500;
}

.menu-btn { 
  display: none; 
  font-size: 28px; 
  cursor: pointer;
  color: whitesmoke;
}

@media (max-width: 768px) {
      .nav { display: none; flex-direction: column; background: mediumpurple; position: absolute; top: 60px; right: 0; width: 200px; padding: 20px; border-radius: 8px; }
      .nav.show { display: flex; }
      .menu-btn { display: block; }
}
