/* =========================================================
   Первый экран, логотип и бегущая строка
   ========================================================= */
.hero { position: relative; min-height: 92vh; min-height: 92svh; display: flex; align-items: center; justify-content: center; padding: 110px var(--gutter) 90px; text-align: center; overflow: hidden; isolation: isolate; }
.hero__bg, .hero__bg img { position: absolute; inset: 0; width: 100%; height: 100%; }
.hero__bg { z-index: -2; }
.hero__bg img { object-fit: cover; object-position: center 30%; animation: hero-zoom 30s ease-out both; }
@keyframes hero-zoom { from { transform: scale(1.06); } }
.hero::before { content: ""; position: absolute; inset: 0; z-index: -1;
  background:
    radial-gradient(40% 46% at 50% 50%, rgba(8, 21, 15, .7), rgba(8, 21, 15, .25) 75%, transparent),
    linear-gradient(90deg, rgba(8, 21, 15, .55), transparent 35%, transparent 65%, rgba(8, 21, 15, .45)),
    linear-gradient(180deg, rgba(8, 21, 15, .6) 0%, rgba(8, 21, 15, .2) 25%, rgba(8, 21, 15, .2) 60%, var(--forest) 100%); }
.hero__in { position: relative; max-width: 680px; }
.hero__lead { margin: 0 auto 30px; max-width: 30em; font: 400 clamp(17px, 1.5vw, 20px)/1.5 var(--sans); color: #fff; text-shadow: 0 2px 14px rgba(0, 0, 0, .8); }
.hero__actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; margin-bottom: 30px; }
.hero__actions .btn--line { background: rgba(8, 21, 15, .45); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.hero__rating { display: inline-flex; align-items: center; gap: 12px; padding: 8px 18px; border-radius: 999px; background: rgba(8, 21, 15, .5); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); text-decoration: none; font-size: 13.5px; color: rgba(241, 236, 223, .85); }
.hero__rating b { font: 600 26px/1 var(--display); color: var(--gold-hi); }
.hero__rating .stars { color: var(--gold); font-size: 12px; }

/* логотип: вектор + живой шрифт */
.lockup { --lw: min(78vw, 380px); display: flex; flex-direction: column; align-items: center; width: var(--lw); margin: 0 auto 26px; text-decoration: none; filter: drop-shadow(0 6px 22px rgba(0, 0, 0, .65)); }
.lockup__emblem { width: 70%; height: auto; }
.lockup__name { display: block; margin-top: 2%; font: 700 calc(var(--lw) * .22)/1 var(--logo); letter-spacing: .02em; text-transform: uppercase; background: linear-gradient(180deg, #fcecb6 0%, #e4c174 40%, #ab7c2f 76%, #e7c57b 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.lockup__sub { display: flex; align-items: center; justify-content: center; gap: 4%; width: 100%; margin-top: 4%; padding-left: .45em; font: 600 calc(var(--lw) * .062)/1 var(--logo); letter-spacing: .45em; text-transform: uppercase; color: #ecd59c; }
.lockup__sub svg { flex: none; width: 22%; height: 12px; color: var(--gold); }
.lockup__sub .flip { transform: scaleX(-1); }
.lockup--foot { --lw: 200px; margin: 0; filter: none; }

/* бегущая строка */
.ticker { overflow: hidden; padding: 16px 0; background: linear-gradient(90deg, #a77a31, #e8c87f 50%, #a77a31); color: #1a1408; }
.ticker__track { display: flex; align-items: center; gap: 26px; width: max-content; animation: run 40s linear infinite; }
.ticker span { white-space: nowrap; font: 700 15px/1 var(--display); letter-spacing: .2em; text-transform: uppercase; }
.ticker i { flex: none; width: 6px; height: 6px; transform: rotate(45deg); border: 1px solid #1a1408; opacity: .7; }
@keyframes run { to { transform: translateX(-50%); } }

@media (max-width: 600px) {
  .ticker span { font-size: 13px; }
  .hero { padding: 110px var(--gutter) 70px; }
  .hero__actions .btn { flex: 1 1 100%; }
}
/* на телефоне в кадре светящееся зеркало-кольцо */
@media (max-width: 760px) { .hero__bg img { object-position: 62% center; } }
