/* ═══════════════════════════════════════════
   HERO
═══════════════════════════════════════════ */
.hero {
  min-height: 100vh;
  display: flex; align-items: flex-end;
  padding: 0 56px 80px;
  position: relative; overflow: hidden;
}

.hero-bg {
  position: absolute; inset: 0;
  background: linear-gradient(155deg, #1E3014 0%, #152309 50%, #0D160A 100%);
}

/* органічні blob-и */
.hero-blob {
  position: absolute; border-radius: 50%;
  filter: blur(1px);
  animation: blobMove 18s ease-in-out infinite;
}
.hero-blob1 {
  width: 600px; height: 600px;
  background: radial-gradient(ellipse, rgba(74,100,56,.35), transparent 68%);
  top: -120px; right: -60px;
  border-radius: 61% 39% 72% 28%/47% 58% 42% 53%;
  animation-duration: 16s;
}
.hero-blob2 {
  width: 420px; height: 420px;
  background: radial-gradient(ellipse, rgba(184,135,46,.12), transparent 65%);
  bottom: 60px; right: 180px;
  border-radius: 43% 57% 35% 65%/58% 42% 58% 42%;
  animation-duration: 22s; animation-delay: -8s;
}
@keyframes blobMove {
  0%,100% { transform: rotate(0deg) scale(1); }
  33%     { transform: rotate(6deg) scale(1.05); border-radius: 35% 65% 55% 45%/50% 55% 45% 50%; }
  66%     { transform: rotate(-4deg) scale(.96); border-radius: 55% 45% 40% 60%/45% 60% 40% 55%; }
}

/* ботанічна ілюстрація */
.hero-plant {
  position: absolute; right: 72px; top: 50%;
  transform: translateY(-50%);
  opacity: .16; pointer-events: none;
}

/* контент */
.hero-content { position: relative; z-index: 2; max-width: 820px; }

.hero-tag {
  display: flex; align-items: center; gap: 16px;
  font-family: var(--sans); font-size: 11px; font-weight: 400;
  letter-spacing: .28em; text-transform: uppercase; color: var(--sage);
  margin-bottom: 30px;
  opacity: 0; transform: translateY(16px);
  animation: upIn .7s ease .2s forwards;
}
.hero-tag::before { content:''; width:36px; height:1px; background:var(--sage); flex-shrink:0; }

.hero-h1 {
  font-family: var(--serif);
  font-size: clamp(52px, 6.5vw, 92px);
  font-weight: 500; line-height: 1.03; color: var(--cream);
  margin-bottom: 28px;
  opacity: 0; transform: translateY(24px);
  animation: upIn .95s ease .4s forwards;
}
.hero-h1 em { font-style: italic; color: var(--sage); }

.hero-desc {
  font-family: var(--sans); font-size: 17px; font-weight: 300;
  line-height: 1.85; color: rgba(242,232,214,.82);
  max-width: 480px; margin-bottom: 48px;
  opacity: 0; transform: translateY(16px);
  animation: upIn .7s ease .7s forwards;
}

.hero-cta {
  display: flex; align-items: center; gap: 32px;
  opacity: 0; transform: translateY(16px);
  animation: upIn .7s ease .9s forwards;
}

.btn-solid {
  font-family: var(--sans); font-size: 11px; font-weight: 500;
  letter-spacing: .22em; text-transform: uppercase;
  display: inline-block; padding: 16px 44px;
  background: var(--moss); color: var(--cream); text-decoration: none;
  position: relative; overflow: hidden; transition: color .3s;
}
.btn-solid::before {
  content: ''; position: absolute; inset:0;
  background: var(--soil); transform: translateX(-101%);
  transition: transform .42s cubic-bezier(.76,0,.24,1);
}
.btn-solid:hover::before { transform: translateX(0); }
.btn-solid span { position: relative; z-index: 1; }

.btn-text {
  font-family: var(--sans); font-size: 11px; font-weight: 500;
  letter-spacing: .2em; text-transform: uppercase;
  color: var(--sand); text-decoration: none;
  display: flex; align-items: center; gap: 10px;
  transition: color .3s;
}
.btn-text:hover { color: var(--cream); }
.btn-text svg { transition: transform .3s; }
.btn-text:hover svg { transform: translateX(5px); }

/* stats */
.hero-stats {
  position: absolute; bottom: 0; right: 0; z-index: 2;
  display: flex;
  background: rgba(8,14,6,.72); backdrop-filter: blur(16px);
  border-top: 1px solid rgba(242,232,214,.08);
  opacity: 0; animation: upIn .6s ease 1.1s forwards;
}
.stat-box { padding: 20px 32px; border-left: 1px solid rgba(242,232,214,.08); text-align: center; }
.stat-box:first-child { border-left: none; }
.stat-n { font-family: var(--serif); font-size: 32px; font-weight: 400; color: var(--cream); line-height: 1; }
.stat-l { font-family: var(--sans); font-size: 10px; font-weight: 400; letter-spacing: .2em; text-transform: uppercase; color: var(--sage); margin-top: 5px; }

/* scroll hint */
.hero-scroll {
  position: absolute; right: 56px; top: 50%; z-index: 2;
  transform: translateY(-50%);
  display: flex; flex-direction: column; align-items: center; gap: 9px;
  opacity: 0; animation: fadeIn .8s ease 1.3s forwards;
}
.hero-scroll span { font-size: 9px; letter-spacing: .32em; text-transform: uppercase; color: rgba(242,232,214,.38); writing-mode: vertical-rl; }
.scroll-bar { width: 1px; height: 50px; background: linear-gradient(to bottom, rgba(242,232,214,.38), transparent); animation: scrollPulse 2.5s ease-in-out infinite 1.3s; }
@keyframes scrollPulse { 0%,100%{opacity:.4} 50%{opacity:1} }

@keyframes upIn { to { opacity:1; transform:translateY(0); } }
@keyframes fadeIn { to { opacity:1; } }
