/* BASE */
* {margin:0; padding:0; box-sizing:border-box;}
body {font-family:'Inter', sans-serif; background:#F3F3F3; color:#1b1b1b; line-height:1.5;}

/* HEADER */
.header {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:18px 8%;
  position:fixed;
  top:0;
  width:100%;
  background:rgba(255,255,255,0.95);
  backdrop-filter:blur(8px);
  z-index:1000;
}
.logo {
  font-size:22px;
  font-family:'Cormorant Garamond', serif;
  font-weight:600;
  color:#5B466B;
}
.nav a {
  margin-left:24px;
  text-decoration:none;
  color:#5B466B;
  transition:.3s;
}
.nav a:hover { color:#8480B2; }
.hamburger {
  display:none;
  flex-direction:column;
  cursor:pointer;
  gap:5px;
  position:relative;
  z-index:3000; /* выше шапки и меню */
}
.hamburger span {
  height:3px;
  width:25px;
  background:#5B466B;
  border-radius:2px;
}

/* MOBILE MENU */
.mobile-menu {
  position: fixed;
  top:0;
  right:0;
  width:70%;
  height:100%;
  background:#FFFFFF;
  padding: 10px 20px 20px;
  flex-direction: column;
  gap:20px;
  box-shadow: -2px 0 12px rgba(0,0,0,0.1);
  z-index: 2500; /* выше overlay, но ниже гамбургера */
  transform: translateX(100%);
  transition: transform 0.4s ease;
  display:flex;
}
.mobile-menu.show { transform: translateX(0); }
.menu-overlay {
  position: fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background: rgba(0,0,0,0.2);
  z-index: 2000; /* ниже меню */
  opacity:0;
  pointer-events:none;
  transition: opacity 0.4s ease;
}
.menu-overlay.show { opacity:1; pointer-events:auto; }
.aa {color:#5B466B;}
.menu-header { display:flex; justify-content:flex-end; }
.close-menu {
  font-size:28px;
  cursor:pointer;
  color:#5B466B;
  font-weight:600;
}

/* Мобильные правки */
@media(max-width:768px){
  .nav { display:none; }
  .hamburger { display:flex; }

  .hero, .hero-content, .hero-image { text-align:center; }
}

/* HERO */
.hero {display:flex; flex-wrap: wrap; justify-content: center; padding:140px 8% 100px; background: #F3F3F3;}
.hero-content {flex:1 1 500px; max-width:500px; margin-bottom:40px;}
.hero-title{font-family:'Cormorant Garamond', serif; font-weight:300; font-size:54px; line-height:1.2; color:#5B466B;}
.hero-title span{font-weight:600; color:#8480B2;}
.hero-subtitle{margin-top:16px; font-size:18px; color:#5B466B; max-width:420px;}
.btn-primary{display:inline-block; margin-top:30px; padding:14px 34px; background:#8480B2; color:#fff; text-decoration:none; border-radius:30px; transition:.3s;}
.btn-primary:hover{background:#5B466B;}
.hero-image {flex:1 1 500px; display:flex; flex-direction:column; align-items:center; text-align:center;}
.hero-image img {max-width:500px; width:100%; border-radius:20px; box-shadow: 0 8px 20px rgba(0,0,0,0.15); margin:20px 0;}
.product-name {font-family:'Cormorant Garamond', serif; font-size:28px; font-weight:400; margin-bottom:12px; color:#5B466B;}

/* ЦЕНА И КНОПКА */
.product-action {display:flex; justify-content:center; align-items:center; gap:16px; margin-top:16px; flex-wrap:wrap;}
.product-price {font-family:'Cormorant Garamond', serif; font-size:22px; color:#8480B2; font-weight:600;}
.btn-outline {display:inline-block; padding:12px 30px; border:2px solid #8480B2; color:#8480B2; text-decoration:none; border-radius:30px; font-size:16px; font-weight:500; transition:.3s;}
.btn-outline:hover {background:#8480B2; color:#fff;}

/* CATALOG */
.catalog{padding:80px 8%; background:#FFFFFF;}
.section-title{font-family:'Cormorant Garamond', serif; font-weight:400; font-size:36px; margin-bottom:40px; text-align:center; color:#5B466B;}
.products{display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:32px;}
.product-card{background:#F3F3F3; border-radius:20px; overflow:hidden; box-shadow:0 6px 18px rgba(0,0,0,0.08); transition:.3s;}
.product-card:hover{transform:translateY(-8px);}
.product-image img{width:100%; display:block; transition:.3s;}
.product-card:hover img{transform:scale(1.05);}
.product-info{padding:18px; text-align:center;}
.product-info h3{font-family:'Cormorant Garamond', serif; font-size:22px; font-weight:300; margin-bottom:8px; color:#5B466B;}
.product-info .description{font-size:16px; color:#5B466B; margin-bottom:6px;}
.price{font-size:18px; color:#8480B2; font-weight:600; margin-bottom:12px;}
.btn-secondary{display:inline-block; padding:10px 26px; border:1px solid #8480B2; color:#8480B2; text-decoration:none; border-radius:30px; transition:.3s;}
.btn-secondary:hover{background:#8480B2; color:#fff;}

/* ABOUT */
.about{padding:80px 8%; background:#F3F3F3; text-align:center;}
.about p{max-width:650px; margin:0 auto; font-size:18px; color:#5B466B;}

/* REVIEWS */
.reviews{padding:80px 8%; background:#FFFFFF;}
.review-cards{display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:32px; margin-top:40px;}
.review-card{background:#F3F3F3; padding:24px; border-radius:20px; box-shadow:0 6px 18px rgba(0,0,0,0.08); text-align:center;}
.review-card img{width:70px; height:70px; border-radius:50%; margin-bottom:12px;}
.review-card h4{font-family:'Cormorant Garamond', serif; font-weight:400; margin-bottom:6px; color:#5B466B;}
.stars{color:#8480B2; margin-bottom:8px;}

/* FOOTER */
.footer{padding:40px 8%; background:#FFFFFF; text-align:center; border-top:1px solid #eee;}
.socials a{margin:0 10px; text-decoration:none; color:#5B466B; transition:.3s;}
.socials a:hover{color:#8480B2;}

/* SUBSCRIBE */
.subscribe{padding:80px 8%; background:#FFFFFF; text-align:center; border-radius:20px; margin:60px 8%;}
.subscribe-content h2{font-family:'Cormorant Garamond', serif; font-weight:400; font-size:32px; margin-bottom:16px; color:#5B466B;}
.subscribe-content p{font-size:16px; color:#5B466B; margin-bottom:24px;}
.subscribe-form{display:flex; justify-content:center; flex-wrap:wrap; gap:12px;}
.subscribe-form input[type="email"]{padding:14px 20px; border:1px solid #8480B2; border-radius:30px; width:250px; font-size:16px; color:#5B466B;}
.subscribe-form button{padding:14px 34px; border:none; border-radius:30px; background:#8480B2; color:#fff; font-size:16px; cursor:pointer; transition:.3s;}
.subscribe-form button:hover{background:#5B466B;}

/* Мини-описание товара под фото */
.product-mini-desc {font-family:'Inter', sans-serif; font-size:15px; color:#5B466B; text-align:center; margin-top:12px; max-width:420px; line-height:1.4;}
@media(max-width: 768px){
  .hero {
    flex-direction: column;
    padding: 120px 6% 60px;
  }
  .hero-content, .hero-image {
    flex: 1 1 100%;
    max-width: 100%;
  }
  .hero-title {
    font-size: 38px;
  }
  .hero-subtitle {
    font-size: 16px;
    margin-top: 12px;
  }
}
/* Мини-описание товара под фото */
.product-mini-desc {
  font-family: 'Inter', sans-serif;
  font-size: 15px;
  color: #555;
  text-align: center;
  margin-top: 12px;
  max-width: 420px;
  line-height: 1.4;
}