/* Все стили оставлены как сейчас с небольшими добавками */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: 'Inter', sans-serif;
  background: #f6f2ed;
  color: #1c1c1c;
  scroll-behavior: smooth;
}

h1, h2, h3 {
  font-family: 'Playfair Display', serif;
  font-weight: 500;
}

.hero {
  height: 90vh;
  background: url("assets/hero.jpg") center/cover no-repeat;
  position: relative;
}

.overlay {
  position: absolute;
  inset: 0;
  background: white; 
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 20px;


/*  
  background-image: url(hero-decor.jpg);
  background-size: cover;
  background-position: center;
  background-color: rgba(0, 0, 0, 0.4);
  background-blend-mode: darken;
  color: white;
  padding: 20px;
*/
}

.hero h1 { font-size: 64px; letter-spacing: 4px; }
.hero p { opacity: 0.7; }
.hero-img { width: 100px; animation: float 4s ease-in-out infinite; }


@keyframes float { 0%,100%{transform:translateY(0);} 50%{transform:translateY(-10px);} }

section { padding: 80px 10%; }
.about p { max-width: 600px; opacity: 0.8; margin-bottom:20px; }
.about-gallery { display:flex; gap:15px; flex-wrap:wrap; }
.about-gallery img { width:calc(33% - 10px); border-radius:10px; transition:0.5s; }
.about-gallery img:hover { transform:scale(1.05); opacity:0.9; }

/* Календарь */
.calendar-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); gap:15px; margin-top:20px; }
.slot { padding:12px; border-radius:8px; border:1px solid #ccc; background:#fff; cursor:pointer; transition:0.3s; }
.slot:hover { background:#1c1c1c; color:white; transform:scale(1.05); }
.slot.booked { background:#ccc; cursor:not-allowed; }

/* Бронирование */
.booking { display:flex; flex-direction:column; gap:20px; }
.booking form { display:flex; flex-direction:column; gap:15px; }
.booking input { padding:10px; border:1px solid #ccc; border-radius:5px; }
.booking button { padding:10px; border:none; border-radius:5px; background:#1c1c1c; color:white; cursor:pointer; transition:0.3s; }
.booking button:hover { background:#333; }

/* FAKE GOOGLE BUTTON.google-btn { background:white; border:1px solid #ccc; border-radius:5px; padding:8px 12px; font-size:14px; cursor:pointer; display:inline-flex; align-items:center; gap:8px; transition:0.3s; }
.google-btn:hover { background:#f1f1f1; }
.google-btn img { display:inline-block; } */


.hint { opacity:0.6; font-size:14px; }
footer { text-align:center; padding:40px; opacity:0.5; }

/* Анимация появления */
.fade-in { opacity:0; transform:translateY(30px); transition:0.8s ease; }
.fade-in.show { opacity:1; transform:translateY(0); }

@media(max-width:768px){
  section{padding:60px 6%;}
  .hero h1{font-size:40px;}
  .about-gallery img{width:calc(50% - 10px);}
}
