/* =====================================================
   🎨 ЦВЕТОВЫЕ ПЕРЕМЕННЫЕ — меняй здесь, изменится везде
   ===================================================== */
:root {
  --color-bg:         #fdf8f2;
  --color-accent:     #d4aa20;
  --color-text:       #3a3128;
  --color-text-mid:   #6b5d52;
  --color-text-light: #9a8c82;
}

/* =====================================================
   🔁 СБРОС И БАЗА
   ===================================================== */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  background-color: var(--color-bg);
  font-family: 'Jost', sans-serif;
  color: var(--color-text);
  overflow-x: hidden;
}

/* =====================================================
   🔄 УТИЛИТЫ ДЛЯ ЗЕРКАЛИРОВАНИЯ КАРТИНОК
   Используй как class="flip-h", class="flip-v", или оба
   ===================================================== */
.flip-h { transform: scaleX(-1); }
.flip-v { transform: scaleY(-1); }
.flip-h.flip-v { transform: scale(-1, -1); }


/* =====================================================
   БЛОК 1 — HERO
   ===================================================== */
.hero {
  position: relative;
  width: 100%;

  /* 📏 Высота: 100vh = весь экран. Меняй под себя */
  height: 100vh;
  min-height: 560px;

  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;

  /* 🎨 Фон — однотонный кремовый
     Чтобы добавить текстуру бумаги/льна, можно сюда:
     background-image: url('images/paper-texture.jpg');
     background-size: cover; opacity нельзя на section,
     но можно через псевдоэлемент ::before — спроси если нужно */
  background-color: var(--color-bg);
}

/* --- PNG-декор по углам --- */
.hero__deco {
  position: absolute;
  z-index: 1;

  /* 🔍 Прозрачность углов: 0 = невидим, 1 = полный
     Рекомендую 0.82–0.92 для PNG-картинок */
  opacity: 0.88;

  animation: decoFade 1.4s ease-out both;
}
@keyframes decoFade {
  from { opacity: 0; transform: scale(0.94); }
  to   { opacity: 0.88; transform: scale(1); }
}

/* Позиционирование углов
   Меняй числа если картинка заходит слишком далеко или мало */
.hero__deco--tl {
  top: -10px;
  left: -10px;
  /* 🔄 Если нужно подвинуть: top: 20px; left: 20px; */
}
.hero__deco--tr {
  top: -10px;
  right: -10px;
  /* 🔄 Зеркально отражается через class="flip-h" в HTML */
}
.hero__deco--bl {
  bottom: 80px; /* 80px — чтобы не перекрывалось волной */
  left: -10px;
}
.hero__deco--br {
  bottom: 80px;
  right: -10px;
}

/* PNG-картинки внутри углов
   Размер задаётся через style="width:220px" прямо в HTML */
.hero__deco img {
  display: block;
  max-width: 100%;

  /* 💡 Тонкая тень делает PNG "живее" на кремовом фоне */
  filter: drop-shadow(2px 6px 12px rgba(80, 60, 20, 0.12));
}

/* --- Центральный контент --- */
.hero__content {
  position: relative;
  z-index: 2;
  text-align: center;
  padding: 40px 32px;
  animation: fadeUp 1s ease-out 0.3s both;
}
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(22px); }
  to   { opacity: 1; transform: translateY(0); }
}

.hero__eyebrow {
  font-family: 'Jost', sans-serif;
  font-weight: 300;
  color: var(--color-text-light);
  letter-spacing: 0.3em;
  text-transform: uppercase;
  font-size: clamp(10px, 1.2vw, 13px);
  margin-bottom: 20px;
  animation: fadeUp 1s ease-out 0.5s both;
}

.hero__names {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-weight: 300;
  color: var(--color-text);
  line-height: 1.0;

  /* 📏 Размер имён */
  font-size: clamp(58px, 10vw, 128px);
}

.hero__amp {
  font-size: 0.55em;
  font-style: normal;
  color: var(--color-accent);
  margin: 0 12px;
  vertical-align: middle;
}

.hero__divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin: 22px auto;
  animation: fadeUp 1s ease-out 0.7s both;
}
.hero__divider-line {
  display: block;
  width: 70px;
  height: 1px;
  background: var(--color-accent);
  opacity: 0.55;
}
.hero__divider-dot {
  color: var(--color-accent);
  font-size: 8px;
  opacity: 0.75;
}

.hero__date {
  font-family: 'Jost', sans-serif;
  font-weight: 300;
  color: var(--color-text-mid);
  letter-spacing: 0.22em;
  text-transform: uppercase;
  font-size: clamp(14px, 1.8vw, 20px);
  animation: fadeUp 1s ease-out 0.9s both;
}
.hero__date-dot {
  color: var(--color-accent);
  margin: 0 12px;
}

.hero__city {
  font-family: 'Jost', sans-serif;
  font-weight: 300;
  color: var(--color-text-light);
  letter-spacing: 0.35em;
  text-transform: uppercase;
  font-size: clamp(10px, 1.2vw, 13px);
  margin-top: 10px;
  animation: fadeUp 1s ease-out 1.0s both;
}

/* =====================================================
   〰️ ВОЛНОВЫЕ ПЕРЕХОДЫ МЕЖДУ БЛОКАМИ
   Принцип: SVG-волна в конце каждого блока,
   цвет волны = цвет фона СЛЕДУЮЩЕГО блока.
   Так создаётся "рваный" органичный переход.
   ===================================================== */
.hero__wave,
.story__wave {
  position: absolute;
  bottom: -1px; /* -1px убирает тонкую щель на некоторых экранах */
  left: 0;
  width: 100%;

  /* 📏 Высота волны — насколько "глубокая"
     Меняй height: больше = глубже волна */
  height: 90px;

  /* Убедись что волна поверх контента */
  z-index: 3;
  line-height: 0;
}

.hero__wave svg,
.story__wave svg {
  display: block;
  width: 100%;
  height: 100%;
}


/* =====================================================
   БЛОК 2 — ИСТОРИЯ
   ===================================================== */
.story {
  position: relative;

  /* 🎨 Фон блока истории
     ВАЖНО: если меняешь этот цвет — меняй также
     fill у волны в .hero__wave в index.html! */
  background-color: #faf4ec;

  /* 📏 Отступы сверху и снизу
     Сверху увеличен — волна "съедает" часть пространства */
  padding: 70px 24px 100px;

  text-align: center;
  overflow: hidden;
}

.story__inner {
  /* 📏 Макс ширина текста — на широких экранах не растягивается */
  max-width: 600px;
  margin: 0 auto;
}

.story__label {
  font-family: 'Jost', sans-serif;
  font-weight: 300;
  color: var(--color-text-light);
  letter-spacing: 0.3em;
  text-transform: uppercase;
  font-size: clamp(10px, 1.1vw, 12px);
  margin-bottom: 18px;
}

.story__title {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-weight: 300;
  color: var(--color-text);

  /* 📏 Размер заголовка */
  font-size: clamp(34px, 5vw, 58px);

  line-height: 1.1;
  margin-bottom: 32px;
}

.story__text {
  font-family: 'Jost', sans-serif;
  font-weight: 300;
  color: var(--color-text-mid);
  line-height: 1.9;

  /* 📏 Размер текста истории */
  font-size: clamp(15px, 1.6vw, 18px);
}
.story__text p + p { margin-top: 18px; }

.story__divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin: 40px auto;
}
.story__divider-line {
  display: block;
  width: 80px;
  height: 1px;
  background: var(--color-accent);
  opacity: 0.4;
}
.story__divider-icon {
  font-size: 20px;
  opacity: 0.72;
}

.story__sign {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-weight: 300;
  color: var(--color-text-light);
  font-size: clamp(16px, 1.8vw, 20px);
}


/* =====================================================
   📱 ПЛАНШЕТ — до 1024px
   ===================================================== */
@media (max-width: 1024px) {
  /* Картинки по углам — немного меньше */
  .hero__deco--tl img,
  .hero__deco--tr img { width: 160px !important; }
  .hero__deco--bl img,
  .hero__deco--br img { width: 130px !important; }
}

/* =====================================================
   📱 ТЕЛЕФОН — до 600px
   ===================================================== */
@media (max-width: 600px) {
  .hero {
    height: 100svh;
    min-height: 580px;
  }

  /* На телефоне углы совсем маленькие, чтобы не мешали тексту */
  .hero__deco--tl img,
  .hero__deco--tr img { width: 110px !important; }
  .hero__deco--bl img,
  .hero__deco--br img { width: 90px !important; }

  .hero__divider-line { width: 44px; }

  .story {
    padding: 60px 20px 80px;
  }

  .hero__wave,
  .story__wave {
    /* 📏 Высота волны на телефоне — можно меньше */
    height: 60px;
  }
}


/* =====================================================
   ➕ СТИЛИ СЛЕДУЮЩИХ БЛОКОВ — добавляй сюда ниже
   ===================================================== */