/* =========================================================
   «Точка роста. Закон авокадо» — landing styles
   Brand: avocado. Green family base + single warm "seed/pit" accent
   (terracotta #B5662B = точка роста). Display: Unbounded · Body: Manrope.
   Radius scale: cards 22px · buttons pill · inputs 14px · images 22px
   ========================================================= */

:root{
  --cream:        #F2F1E2;   /* page bg, green-tinted cream (avocado flesh edge) */
  --cream-2:      #EAEAD3;
  --cream-3:      #E1E3C7;
  --ink:          #232E1C;   /* dark avocado green — text + dark sections */
  --ink-2:        #2C3A22;
  --green:        #6F8B3C;   /* brand flesh green */
  --green-deep:   #566E2C;
  --green-bright: #88A84C;
  --seed:         #B5662B;   /* ACCENT — pit / точка роста (passes AA on white) */
  --seed-deep:    #95511F;
  --seed-soft:    #D98B4A;
  --muted:        #5E6A4F;   /* muted green-grey text on cream */
  --muted-light:  rgba(242,241,226,.74);
  --line:         rgba(35,46,28,.13);

  --font-display: 'Unbounded', system-ui, -apple-system, sans-serif;
  --font-sans:    'Manrope', system-ui, -apple-system, 'Segoe UI', sans-serif;

  --r-card: 22px;
  --r-img:  22px;
  --r-input:14px;

  --shadow-sm: 0 4px 18px rgba(35,46,28,.07);
  --shadow-md: 0 18px 44px rgba(35,46,28,.12);
  --shadow-lg: 0 30px 80px rgba(35,46,28,.20);
  --shadow-seed: 0 16px 40px rgba(181,102,43,.30);

  --maxw: 1240px;
  --ease: cubic-bezier(.16,1,.3,1);
}

/* ---------- reset ---------- */
*,*::before,*::after{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body{
  font-family:var(--font-sans);
  background:var(--cream);
  color:var(--ink);
  line-height:1.6;
  font-weight:450;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
button{ font-family:inherit; cursor:pointer; border:none; background:none; }
ul{ list-style:none; }
section{ position:relative; }
:focus-visible{ outline:2px solid var(--seed); outline-offset:3px; border-radius:4px; }

/* ---------- typography ---------- */
.h2{
  font-family:var(--font-display);
  font-weight:700;
  font-size:clamp(1.8rem,1.2rem + 2.5vw,3rem);
  line-height:1.1;
  letter-spacing:-.02em;
  color:var(--ink);
}
.h2 em, .hero__title em, .lead__text em, .why__text em{
  font-style:normal;
  color:var(--seed);
}
.eyebrow{
  display:inline-flex; align-items:center; gap:.5rem;
  font-family:var(--font-display);
  font-size:.7rem;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--seed-deep);
  margin-bottom:1.2rem;
}
.eyebrow::before{ content:""; width:1.6rem; height:2px; background:var(--seed); border-radius:2px; }
.section-head{ max-width:64ch; margin:0 auto 3.2rem; text-align:center; }
.section-head .eyebrow{ margin-bottom:1rem; }
.section-sub{ margin-top:1.1rem; color:var(--muted); font-size:1.08rem; max-width:52ch; margin-inline:auto; }
.section-head--light .h2{ color:var(--cream); }
.section-head--light .section-sub{ color:var(--muted-light); }
.section-head--light .h2 em{ color:var(--green-bright); }

/* ---------- layout helpers ---------- */
.about__inner,.why__inner,.gain__inner,.how__inner,.requests__inner,
.who__inner,.format__inner,.author__inner,.reviews__inner,.faq__inner,
.lead__inner,.hero__inner,.nav__inner,.footer__inner,.pain__inner,.avideo__inner{
  width:min(100% - 2.6rem, var(--maxw));
  margin-inline:auto;
  position:relative; z-index:1;
}
section.why,section.gain,section.requests,section.who,
section.format,section.author,section.reviews,section.faq{ padding-block:clamp(4.5rem,3rem + 7vw,8rem); }

/* ---------- buttons ---------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  font-family:var(--font-display); font-weight:600; font-size:.95rem; letter-spacing:-.01em;
  padding:1rem 1.9rem; border-radius:999px;
  transition:transform .35s var(--ease), box-shadow .35s var(--ease), background .3s, color .3s;
  white-space:nowrap; will-change:transform;
}
.btn--sm{ padding:.72rem 1.3rem; font-size:.86rem; }
.btn--lg{ padding:1.15rem 2rem; font-size:1.02rem; }
.btn--full{ width:100%; }
.btn--solid{ background:var(--seed); color:#fff; box-shadow:var(--shadow-seed); }
.btn--solid:hover{ background:var(--seed-deep); transform:translateY(-3px); box-shadow:0 22px 50px rgba(181,102,43,.40); }
.btn--solid:active{ transform:translateY(-1px) scale(.99); }
.btn--ghost{ background:transparent; color:var(--ink); border:1.5px solid rgba(35,46,28,.24); }
.btn--ghost:hover{ border-color:var(--seed); color:var(--seed-deep); transform:translateY(-3px); }
.btn--green{ background:var(--green); color:#fff; box-shadow:var(--shadow-md); }
.btn--green:hover{ background:var(--green-deep); transform:translateY(-3px); }
.btn--light{ background:var(--cream); color:var(--ink); }
.btn--light:hover{ background:#fff; transform:translateY(-3px); }

.link-arrow{ display:inline-flex; align-items:center; gap:.5rem; font-family:var(--font-display); font-weight:600; font-size:.95rem; color:var(--seed-deep); margin-top:1.6rem; }
.link-arrow span{ transition:transform .35s var(--ease); }
.link-arrow:hover span{ transform:translateX(6px); }

/* =========================================================
   NAV
   ========================================================= */
.nav{ position:fixed; inset:0 0 auto 0; z-index:100; transition:background .4s var(--ease), box-shadow .4s, padding .4s; padding-block:.55rem; }
.nav__inner{ display:flex; align-items:center; gap:1.5rem; height:62px; }
.nav.is-scrolled{ background:rgba(242,241,226,.86); backdrop-filter:blur(14px); box-shadow:0 1px 0 var(--line); }
@supports not (backdrop-filter:blur(1px)){ .nav.is-scrolled{ background:var(--cream); } }

.brand{ display:flex; align-items:center; gap:.6rem; color:var(--ink); }
.brand__mark{ width:36px; height:36px; flex:none; transition:transform .5s var(--ease); }
.brand:hover .brand__mark{ transform:rotate(-7deg) scale(1.07); }
.brand__name{ font-family:var(--font-display); font-weight:700; font-size:1rem; line-height:1; display:flex; flex-direction:column; letter-spacing:-.02em; }
.brand__name span{ color:var(--seed); font-weight:500; font-size:.82rem; }
.brand--light{ color:var(--cream); }

.nav__links{ display:flex; gap:1.6rem; margin-left:auto; }
.nav__links a{ font-size:.94rem; font-weight:550; color:var(--ink); position:relative; padding:.2rem 0; }
.nav__links a::after{ content:""; position:absolute; left:0; bottom:-2px; width:0; height:2px; background:var(--seed); transition:width .3s var(--ease); }
.nav__links a:hover{ color:var(--seed-deep); }
.nav__links a:hover::after{ width:100%; }
.nav__cta{ flex:none; }

.nav__burger{ display:none; flex-direction:column; gap:5px; width:42px; height:42px; align-items:center; justify-content:center; }
.nav__burger span{ width:22px; height:2px; background:var(--ink); border-radius:2px; transition:.35s var(--ease); }
.nav__burger[aria-expanded="true"] span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.nav__burger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.nav__burger[aria-expanded="true"] span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

/* =========================================================
   HERO
   ========================================================= */
.hero{ min-height:100dvh; display:flex; align-items:center; padding-top:96px; padding-bottom:48px; overflow:hidden; }
.hero__glow{
  position:absolute; z-index:0; top:-20%; right:-12%; width:78vw; height:78vw; max-width:880px; max-height:880px;
  background:radial-gradient(closest-side, rgba(136,168,76,.40), rgba(111,139,60,.16) 55%, transparent 72%);
  filter:blur(8px); pointer-events:none; animation:floatGlow 16s ease-in-out infinite alternate;
}
.hero__grain{
  position:absolute; inset:0; z-index:1; pointer-events:none; opacity:.5;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");
  mix-blend-mode:multiply;
}
.hero__inner{ position:relative; z-index:2; display:grid; grid-template-columns:1.05fr .95fr; align-items:center; gap:clamp(2rem,4vw,4rem); }

.hero__title{
  font-family:var(--font-display); font-weight:800;
  font-size:clamp(2.4rem,1.4rem + 5vw,4.6rem); line-height:1.02; letter-spacing:-.03em;
  color:var(--ink); margin:.4rem 0 1.4rem;
}
.hero__title em{ display:inline-block; position:relative; }
.hero__sub{ font-size:clamp(1.05rem,1rem + .4vw,1.28rem); color:var(--muted); max-width:36ch; }
.hero__actions{ display:flex; flex-wrap:wrap; gap:1rem; margin-top:2rem; }
.hero__note{ margin-top:1.4rem; font-size:.9rem; color:var(--muted); letter-spacing:.01em; font-weight:550; }
.hero__note b{ color:var(--seed-deep); font-weight:700; }

.hero__visual{ position:relative; }
.hero__photo{
  position:relative; border-radius:46% 46% var(--r-img) var(--r-img)/ 30% 30% var(--r-img) var(--r-img);
  overflow:hidden; aspect-ratio:4/4.4; box-shadow:var(--shadow-lg); border:1px solid rgba(255,255,255,.4);
}
.hero__photo img{ width:100%; height:100%; object-fit:cover; transform:scale(1.04); }
.hero__photo--cover{ border-radius:var(--r-img); aspect-ratio:853/1280; max-width:384px; margin-inline:auto; }
.hero__photo--cover img{ transform:none; }
.float-chip{
  position:absolute; z-index:3; font-family:var(--font-display); font-weight:500;
  font-size:.92rem; color:var(--ink);
  background:rgba(255,255,255,.86); backdrop-filter:blur(8px);
  padding:.55rem 1.1rem; border-radius:999px; box-shadow:var(--shadow-md);
  border:1px solid rgba(255,255,255,.6); white-space:nowrap;
}
.float-chip--1{ top:10%; left:-8%; animation:floatY 6s ease-in-out infinite; }
.float-chip--2{ top:44%; right:-10%; animation:floatY 7.5s ease-in-out infinite .6s; }
.float-chip--3{ bottom:14%; left:-5%; animation:floatY 6.8s ease-in-out infinite 1.1s; }
.float-seed{
  position:absolute; z-index:3; bottom:6%; right:6%; width:96px; height:96px; border-radius:50%;
  background:var(--seed); color:#fff; display:flex; flex-direction:column; align-items:center; justify-content:center;
  text-align:center; box-shadow:var(--shadow-seed); font-family:var(--font-display); line-height:1.1;
  animation:floatY 8s ease-in-out infinite .3s;
}
.float-seed b{ font-size:1.5rem; font-weight:700; }
.float-seed span{ font-size:.62rem; font-weight:500; letter-spacing:.04em; margin-top:.15rem; }

.hero__scroll{ position:absolute; left:50%; bottom:22px; transform:translateX(-50%); z-index:3; width:26px; height:42px; border:2px solid rgba(35,46,28,.3); border-radius:999px; }
.hero__scroll span{ position:absolute; left:50%; top:8px; width:4px; height:8px; border-radius:2px; background:var(--seed); transform:translateX(-50%); animation:scrollDot 1.8s ease-in-out infinite; }

@keyframes floatY{ 0%,100%{ transform:translateY(0) rotate(-1deg); } 50%{ transform:translateY(-14px) rotate(1.5deg); } }
@keyframes floatGlow{ 0%{ transform:translate(0,0) scale(1); } 100%{ transform:translate(-4%,6%) scale(1.12); } }
@keyframes scrollDot{ 0%{ opacity:0; top:8px; } 30%{ opacity:1; } 60%{ opacity:1; top:24px; } 100%{ opacity:0; top:24px; } }

/* =========================================================
   PAIN / HOOK band (dark)
   ========================================================= */
.pain{ background:var(--ink); color:var(--cream); padding-block:clamp(4rem,3rem + 5vw,6.5rem); overflow:hidden; }
.pain__inner{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,4vw,4rem); align-items:center; }
.pain__head .h2{ color:var(--cream); }
.pain__head .h2 em{ color:var(--green-bright); }
.pain__head p{ color:var(--muted-light); margin-top:1.2rem; font-size:1.12rem; max-width:40ch; }
.pain__chips{ display:flex; flex-wrap:wrap; gap:.8rem; margin-bottom:1.8rem; }
.pain__chips li{ background:rgba(242,241,226,.08); border:1px solid rgba(242,241,226,.16); padding:.7rem 1.2rem; border-radius:14px; font-weight:550; font-size:.98rem; }
.pain__chips li::before{ content:""; display:inline-block; width:.5rem; height:.5rem; border-radius:50%; background:var(--seed-soft); margin-right:.6rem; vertical-align:middle; }
.pain__statement{ background:linear-gradient(135deg,var(--green),var(--green-deep)); border-radius:var(--r-card); padding:2rem; box-shadow:var(--shadow-md); }
.pain__statement p{ font-size:1.1rem; line-height:1.55; }
.pain__statement b{ font-family:var(--font-display); font-weight:600; }

/* =========================================================
   WHY AVOCADO (metaphor)
   ========================================================= */
.why__inner{ display:grid; grid-template-columns:.95fr 1.05fr; gap:clamp(2rem,4vw,4.5rem); align-items:center; }
.why__media{ position:relative; }
.why__media img{ width:100%; border-radius:var(--r-img); box-shadow:var(--shadow-md); aspect-ratio:4/4.2; object-fit:cover; }
.why__media--board img{ aspect-ratio:3/2; }
.why__media-tag{
  position:absolute; bottom:1.2rem; left:50%; transform:translateX(-50%);
  background:var(--seed); color:#fff; font-family:var(--font-display); font-weight:500; font-size:.86rem;
  padding:.65rem 1.3rem; border-radius:999px; box-shadow:var(--shadow-md); white-space:nowrap;
}
.why__text p{ color:var(--muted); font-size:1.1rem; margin-top:1.3rem; max-width:52ch; }
.why__text .why__lead{ color:var(--ink); font-size:1.25rem; font-weight:600; }
.why__signals{ display:grid; grid-template-columns:repeat(2,1fr); gap:.8rem; margin-top:2rem; }
.why__signals li{ display:flex; align-items:center; gap:.7rem; font-weight:550; color:var(--ink); background:var(--cream-2); padding:.85rem 1.1rem; border-radius:14px; }
.why__signals li.no{ color:var(--seed-deep); }
.why__signals .mk{ font-family:var(--font-display); font-weight:700; color:var(--green-deep); }
.why__signals li.no .mk{ color:var(--seed); }

/* =========================================================
   REQUESTS (quote chips)
   ========================================================= */
.requests{ background:linear-gradient(180deg,var(--cream),var(--cream-2)); }
.requests__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
.req{
  background:linear-gradient(165deg,#ffffff, var(--cream));
  border:1px solid var(--line); border-radius:20px;
  padding:2.4rem 1.7rem 1.5rem; box-shadow:var(--shadow-sm); position:relative; isolation:isolate;
  display:flex; flex-direction:column; min-height:172px;
  transition:transform .45s var(--ease), box-shadow .45s var(--ease), border-color .3s;
}
.req::before{ /* colored top accent bar */
  content:""; position:absolute; left:0; top:0; height:5px; width:100%;
  background:linear-gradient(90deg,var(--green),var(--green-bright)); border-radius:20px 20px 0 0;
  transform:scaleX(.34); transform-origin:left; transition:transform .5s var(--ease);
}
.req:hover{ transform:translateY(-8px); box-shadow:var(--shadow-md); border-color:rgba(111,139,60,.4); }
.req:hover::before{ transform:scaleX(1); }
.req__mark{
  position:absolute; top:-18px; left:1.5rem; z-index:2;
  width:48px; height:48px; border-radius:14px; display:flex; align-items:center; justify-content:center;
  font-family:var(--font-display); font-weight:700; font-size:2.1rem; line-height:1; color:#fff; padding-top:.7rem;
  background:linear-gradient(140deg,var(--green),var(--green-deep)); box-shadow:0 10px 22px rgba(86,110,44,.35);
  transition:transform .45s var(--ease);
}
.req:hover .req__mark{ transform:rotate(-8deg) scale(1.08); }
.req p{ font-size:1.1rem; color:var(--ink); font-weight:600; line-height:1.4; margin-top:.4rem; }
.req__tag{
  margin-top:auto; align-self:flex-start; margin-top:1.2rem;
  font-family:var(--font-display); font-weight:500; font-size:.72rem; letter-spacing:.04em; text-transform:uppercase;
  color:var(--seed-deep); background:rgba(181,102,43,.1); border:1px solid rgba(181,102,43,.22);
  padding:.32rem .8rem; border-radius:999px;
}
/* alternate accent: every 2nd card uses seed/terracotta */
.req:nth-child(3n+2) .req__mark{ background:linear-gradient(140deg,var(--seed),var(--seed-soft)); box-shadow:0 10px 22px rgba(181,102,43,.35); }
.req:nth-child(3n+2)::before{ background:linear-gradient(90deg,var(--seed),var(--seed-soft)); }
.req:nth-child(3n) .req__mark{ background:linear-gradient(140deg,#7c9c44,#9bbb55); }
.requests__note{ text-align:center; margin-top:3rem; font-family:var(--font-display); font-weight:500; font-size:1.08rem; color:var(--green-deep); max-width:60ch; margin-inline:auto; }

/* =========================================================
   HOW IT WORKS (mechanism)
   ========================================================= */
.how{
  color:var(--cream); padding-block:clamp(5rem,3rem + 8vw,9rem); overflow:hidden;
  background:linear-gradient(125deg,#1c2615 0%,#2b3b20 35%,#1f2c18 65%,#34492a 100%);
  background-size:300% 300%; animation:gradShift 22s ease infinite;
}
.how::before{
  content:""; position:absolute; z-index:0; top:-15%; right:-8%; width:48vw; max-width:620px; aspect-ratio:1;
  border-radius:50%; background:radial-gradient(circle,rgba(181,102,43,.45),transparent 68%);
  filter:blur(70px); pointer-events:none; animation:blobFloat 24s ease-in-out infinite;
}
.how__inner{ position:relative; z-index:1; }
.how__grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.4rem; }
.how-card{
  background:rgba(242,241,226,.06); border:1px solid rgba(242,241,226,.18); border-radius:var(--r-card);
  padding:1.9rem; backdrop-filter:blur(4px);
  transition:transform .45s var(--ease), background .35s, border-color .35s, box-shadow .45s var(--ease);
}
.how-card:hover{ transform:translateY(-6px); background:rgba(242,241,226,.11); border-color:rgba(136,168,76,.55); box-shadow:var(--shadow-lg); }
.how-card__num{
  display:flex; align-items:center; justify-content:center; width:2.8rem; height:2.8rem; border-radius:14px;
  background:var(--seed); color:#fff; font-family:var(--font-display); font-weight:700; font-size:1.15rem;
  margin-bottom:1.2rem; box-shadow:var(--shadow-seed);
}
.how-card h3{ font-family:var(--font-display); font-size:1.16rem; font-weight:600; color:var(--cream); margin-bottom:.5rem; letter-spacing:-.01em; }
.how-card p{ color:rgba(244,243,230,.88); font-size:1rem; }

/* ============ AUTHOR ABOUT GAME (video) ============ */
.avideo{ padding-block:clamp(4.5rem,3rem + 7vw,8rem); background:linear-gradient(180deg,var(--cream),var(--cream-2)); overflow:hidden; }
.avideo__inner{ position:relative; z-index:1; }
.avideo__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.6rem; max-width:900px; margin-inline:auto; }
.avideo__grid .vreview{ aspect-ratio:9/16; }

/* =========================================================
   GAIN — BENTO
   ========================================================= */
.gain__inner .section-head{ margin-bottom:3.2rem; }
.bento{ display:grid; grid-template-columns:repeat(3,1fr); grid-auto-rows:minmax(170px,auto); gap:1.4rem; }
.bento__cell{
  border-radius:var(--r-card); padding:1.9rem; background:var(--cream); border:1px solid var(--line);
  box-shadow:var(--shadow-sm); display:flex; flex-direction:column; justify-content:flex-end;
  transition:transform .45s var(--ease), box-shadow .45s var(--ease);
}
.bento__cell:hover{ transform:translateY(-6px); box-shadow:var(--shadow-md); }
.bento__cell h3{ font-family:var(--font-display); font-weight:600; font-size:1.2rem; color:var(--ink); margin-bottom:.4rem; letter-spacing:-.01em; }
.bento__cell p{ color:var(--muted); font-size:.98rem; }
.bento__num{ font-family:var(--font-display); font-weight:700; color:var(--green); font-size:1.1rem; margin-bottom:auto; }
.bento__cell--lead{ grid-row:span 2; padding:0; overflow:hidden; position:relative; justify-content:flex-end; }
.bento__photo{ position:absolute; inset:0; }
.bento__photo img{ width:100%; height:100%; object-fit:cover; }
.bento__cell--lead::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(35,46,28,.15) 25%,rgba(35,46,28,.88)); }
.bento__lead-text{ position:relative; z-index:2; padding:2rem; }
.bento__cell--lead h3{ color:var(--cream); font-size:1.5rem; }
.bento__cell--lead p{ color:var(--muted-light); }
.bento__cell--green{ background:linear-gradient(140deg,var(--green),var(--green-deep)); border:none; }
.bento__cell--green h3{ color:#fff; } .bento__cell--green p{ color:rgba(255,255,255,.86); } .bento__cell--green .bento__num{ color:rgba(255,255,255,.7); }
.bento__cell--seed{ background:linear-gradient(140deg,var(--seed),var(--seed-soft)); border:none; }
.bento__cell--seed h3{ color:#fff; } .bento__cell--seed p{ color:rgba(255,255,255,.9); } .bento__cell--seed .bento__num{ color:rgba(255,255,255,.75); }
.bento__cell--wide{ grid-column:span 2; }
.bento__cell--dark{ background:var(--ink); border:none; }
.bento__cell--dark h3{ color:var(--cream); } .bento__cell--dark p{ color:var(--muted-light); } .bento__cell--dark .bento__num{ color:var(--green-bright); }

/* =========================================================
   MARQUEE
   ========================================================= */
.marquee{ background:var(--seed); color:#fff; padding-block:1.05rem; overflow:hidden; }
.marquee__track{ display:flex; align-items:center; gap:1.8rem; width:max-content; animation:marquee 30s linear infinite; }
.marquee__track span{ font-family:var(--font-display); font-weight:500; font-size:1.25rem; white-space:nowrap; letter-spacing:-.01em; }
.marquee__track i{ font-style:normal; opacity:.6; }
@keyframes marquee{ to{ transform:translateX(-50%); } }

/* =========================================================
   WHO (audience)
   ========================================================= */
.who__inner{ display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(2rem,4vw,4rem); align-items:center; }
.who__media{ position:relative; }
.who__media img{ width:100%; border-radius:var(--r-img); box-shadow:var(--shadow-md); aspect-ratio:4/4.6; object-fit:cover; }
.who__text .eyebrow{ margin-bottom:1rem; }
.who__list{ display:grid; gap:.9rem; margin-top:1.8rem; }
.who__list li{ position:relative; padding-left:2.4rem; color:var(--ink); font-weight:500; font-size:1.05rem; }
.who__list li::before{
  content:""; position:absolute; left:0; top:.05em; width:1.6rem; height:1.6rem; border-radius:8px;
  background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/13px no-repeat;
}
.who__note{ margin-top:2rem; background:var(--cream-2); border-left:4px solid var(--seed); border-radius:0 14px 14px 0; padding:1.2rem 1.4rem; color:var(--ink); font-weight:500; }

/* =========================================================
   FORMAT
   ========================================================= */
.format{ background:linear-gradient(180deg,var(--cream-2),var(--cream)); }
.format__inner{ display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(2rem,4vw,4rem); align-items:center; }
.format__card{ background:var(--cream); border:1px solid var(--line); border-radius:var(--r-card); padding:clamp(1.8rem,1rem + 3vw,2.6rem); box-shadow:var(--shadow-md); }
.format__rows{ display:grid; gap:1.1rem; margin:1.8rem 0; }
.format__row{ display:flex; gap:1rem; align-items:flex-start; padding-bottom:1.1rem; border-bottom:1px solid var(--line); }
.format__row:last-child{ border-bottom:none; padding-bottom:0; }
.format__icon{ flex:none; width:2.6rem; height:2.6rem; border-radius:12px; background:var(--cream-3); display:flex; align-items:center; justify-content:center; }
.format__icon svg{ width:1.3rem; height:1.3rem; stroke:var(--green-deep); fill:none; stroke-width:1.8; }
.format__row b{ display:block; font-family:var(--font-display); font-weight:600; font-size:1rem; color:var(--ink); margin-bottom:.15rem; letter-spacing:-.01em; }
.format__row span{ color:var(--muted); font-size:.96rem; }
.format__media img{ width:100%; border-radius:var(--r-img); box-shadow:var(--shadow-md); aspect-ratio:4/4.6; object-fit:cover; }
.format__media{ position:relative; }
.format__media-tag{ position:absolute; top:1.1rem; left:1.1rem; background:rgba(35,46,28,.78); backdrop-filter:blur(6px); color:var(--cream); font-family:var(--font-display); font-weight:500; font-size:.82rem; padding:.5rem 1rem; border-radius:999px; }

/* =========================================================
   AUTHOR
   ========================================================= */
.author{ background:var(--ink); color:var(--cream); }
.author__inner{ display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(2rem,4vw,4.5rem); align-items:center; }
.author__media{ position:relative; max-width:420px; }
.author__media img{ width:100%; border-radius:var(--r-img) var(--r-img) 46% 46% / var(--r-img) var(--r-img) 30% 30%; box-shadow:var(--shadow-lg); aspect-ratio:4/5; object-fit:cover; }
.author__badge{
  position:absolute; bottom:1.2rem; right:-1.2rem; background:var(--seed); color:#fff;
  width:108px; height:108px; border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center;
  box-shadow:var(--shadow-seed); text-align:center; font-family:var(--font-display);
}
.author__badge b{ font-weight:700; font-size:.95rem; line-height:1.15; padding:0 .5rem; }
.author__text .h2{ color:var(--cream); }
.author__text .eyebrow{ color:var(--seed-soft); }
.author__text .eyebrow::before{ background:var(--seed-soft); }
.author__roles{ display:flex; flex-wrap:wrap; gap:.6rem; margin:1.4rem 0 1.6rem; }
.author__roles span{ background:rgba(242,241,226,.08); border:1px solid rgba(242,241,226,.16); padding:.5rem 1rem; border-radius:999px; font-size:.9rem; font-weight:550; }
.author__text p{ color:var(--muted-light); margin-top:1.1rem; max-width:54ch; }
.author__links{ display:flex; flex-wrap:wrap; gap:1rem; margin-top:1.8rem; }

/* =========================================================
   REVIEWS
   ========================================================= */
.reviews__track{
  display:grid; grid-auto-flow:column; grid-auto-columns:280px; gap:1.4rem;
  overflow-x:auto; padding-bottom:1rem; scroll-snap-type:x mandatory;
  scrollbar-width:thin; scrollbar-color:var(--green) transparent;
}
.reviews__track::-webkit-scrollbar{ height:6px; }
.reviews__track::-webkit-scrollbar-thumb{ background:var(--green); border-radius:999px; }

/* video review cards */
.vreview{
  scroll-snap-align:start; border-radius:var(--r-card); overflow:hidden;
  box-shadow:var(--shadow-md); background:var(--ink); aspect-ratio:9/16; position:relative;
  transition:transform .4s var(--ease), box-shadow .4s var(--ease);
}
.vreview:hover{ transform:translateY(-6px); box-shadow:var(--shadow-lg); }
.vreview__video{ width:100%; height:100%; object-fit:cover; display:block; background:#000; }
.vreview::after{
  content:""; position:absolute; left:50%; top:50%; width:60px; height:60px; transform:translate(-50%,-50%);
  border-radius:50%; background:rgba(181,102,43,.92) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E") center/22px no-repeat;
  box-shadow:0 8px 24px rgba(0,0,0,.35); pointer-events:none; transition:opacity .3s, transform .3s;
}
.vreview.is-playing::after{ opacity:0; transform:translate(-50%,-50%) scale(.6); }
.review{
  scroll-snap-align:start; background:var(--cream); border:1px solid var(--line); border-radius:var(--r-card);
  padding:2rem; box-shadow:var(--shadow-sm); display:flex; flex-direction:column;
  transition:transform .4s var(--ease), box-shadow .4s var(--ease);
}
.review:hover{ transform:translateY(-6px); box-shadow:var(--shadow-md); }
.review blockquote{ font-size:1.08rem; line-height:1.5; color:var(--ink); position:relative; flex:1; }
.review blockquote::before{ content:"”"; font-family:var(--font-display); font-weight:700; font-size:2.6rem; color:var(--green); opacity:.4; position:absolute; top:-1.4rem; left:-.3rem; }
.review figcaption{ display:flex; align-items:center; gap:.8rem; margin-top:1.6rem; font-size:.92rem; color:var(--muted); }
.review figcaption b{ color:var(--ink); font-family:var(--font-display); font-weight:600; }
.review__ava{ width:44px; height:44px; border-radius:50%; flex:none; background:var(--green); color:#fff; display:flex; align-items:center; justify-content:center; font-family:var(--font-display); font-weight:700; font-size:1.05rem; }

/* =========================================================
   FAQ
   ========================================================= */
.faq{ background:linear-gradient(180deg,var(--cream),var(--cream-2)); }
.faq__list{ max-width:780px; margin-inline:auto; display:grid; gap:1rem; }
.faq__item{ background:var(--cream); border:1px solid var(--line); border-radius:18px; overflow:hidden; transition:border-color .3s, box-shadow .3s; }
.faq__item[open]{ border-color:rgba(181,102,43,.4); box-shadow:var(--shadow-sm); }
.faq__item summary{ list-style:none; cursor:pointer; padding:1.3rem 1.6rem; font-family:var(--font-display); font-weight:500; font-size:1.04rem; color:var(--ink); display:flex; align-items:center; justify-content:space-between; gap:1rem; letter-spacing:-.01em; }
.faq__item summary::-webkit-details-marker{ display:none; }
.faq__plus{ position:relative; width:20px; height:20px; flex:none; }
.faq__plus::before,.faq__plus::after{ content:""; position:absolute; background:var(--seed); border-radius:2px; transition:transform .35s var(--ease); }
.faq__plus::before{ top:9px; left:0; width:20px; height:2px; }
.faq__plus::after{ left:9px; top:0; width:2px; height:20px; }
.faq__item[open] .faq__plus::after{ transform:rotate(90deg) scaleX(0); }
.faq__answer{ padding:0 1.6rem 1.4rem; }
.faq__answer p{ color:var(--muted); }

/* =========================================================
   LEAD / FINAL CTA
   ========================================================= */
.lead{ background:var(--ink); color:var(--cream); padding-block:clamp(4.5rem,3rem + 7vw,8rem); overflow:hidden; }
.lead__glow{ position:absolute; z-index:0; top:-30%; left:-10%; width:60vw; height:60vw; max-width:700px; max-height:700px;
  background:radial-gradient(closest-side,rgba(136,168,76,.4),transparent 70%); filter:blur(10px); animation:floatGlow 18s ease-in-out infinite alternate; }
.lead__inner{ position:relative; z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,4vw,4rem); align-items:center; }
.lead__text .h2{ color:var(--cream); }
.lead__text p{ color:var(--muted-light); margin-top:1.2rem; font-size:1.1rem; max-width:42ch; }
.lead__bullets{ display:flex; flex-wrap:wrap; gap:.7rem; margin-top:1.8rem; }
.lead__bullets li{ background:rgba(242,241,226,.1); border:1px solid rgba(242,241,226,.18); padding:.5rem 1rem; border-radius:999px; font-size:.92rem; font-weight:550; }

.lead__form{ background:var(--cream); border-radius:var(--r-card); padding:clamp(1.8rem,1rem + 3vw,2.6rem); box-shadow:var(--shadow-lg); }
.field{ display:flex; flex-direction:column; gap:.45rem; margin-bottom:1.2rem; }
.field label{ font-family:var(--font-display); font-weight:500; color:var(--ink); font-size:.92rem; letter-spacing:-.01em; }
.field input,.select-wrap select{
  width:100%; padding:.95rem 1.1rem; border:1.5px solid rgba(35,46,28,.18); border-radius:var(--r-input);
  font-family:inherit; font-size:1rem; color:var(--ink); background:#fff; transition:border-color .25s, box-shadow .25s;
}
.field input::placeholder{ color:#9aa089; }
.field input:focus,.select-wrap select:focus{ outline:none; border-color:var(--seed); box-shadow:0 0 0 4px rgba(181,102,43,.13); }
.select-wrap{ position:relative; }
.select-wrap::after{ content:""; position:absolute; right:1.1rem; top:50%; width:9px; height:9px; border-right:2px solid var(--seed); border-bottom:2px solid var(--seed); transform:translateY(-65%) rotate(45deg); pointer-events:none; }
.select-wrap select{ appearance:none; cursor:pointer; }
.field__error{ display:none; color:var(--seed-deep); font-size:.85rem; font-weight:600; }
.field.is-invalid input{ border-color:var(--seed-deep); }
.field.is-invalid .field__error{ display:block; }
.lead__privacy{ margin-top:1rem; font-size:.8rem; color:var(--muted); text-align:center; }

/* =========================================================
   FOOTER
   ========================================================= */
.footer{ background:#1A2315; color:var(--cream); padding-top:4rem; }
.footer__inner{ display:grid; grid-template-columns:1.6fr 1fr 1.2fr; gap:2rem; padding-bottom:3rem; }
.footer__tag{ color:var(--muted-light); margin-top:1.1rem; max-width:40ch; font-size:.95rem; }
.footer__nav{ display:flex; flex-direction:column; gap:.8rem; }
.footer__nav a{ color:var(--muted-light); transition:color .25s; }
.footer__nav a:hover{ color:var(--green-bright); }
.footer__contacts{ display:flex; flex-direction:column; gap:.9rem; align-items:flex-start; }
.footer__social{ font-weight:600; position:relative; padding-left:1.4rem; }
.footer__social::before{ content:""; position:absolute; left:0; top:.5em; width:.6rem; height:.6rem; border-radius:50%; background:var(--seed-soft); }
.footer__social:hover{ color:var(--green-bright); }
.footer__bottom{ border-top:1px solid rgba(242,241,226,.12); padding-block:1.6rem; display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap; font-size:.85rem; color:var(--muted-light); width:min(100% - 2.6rem,var(--maxw)); margin-inline:auto; }

/* =========================================================
   REVEAL
   ========================================================= */
.reveal{ opacity:0; transform:translateY(28px); transition:opacity .8s var(--ease), transform .8s var(--ease); }
.reveal.is-visible{ opacity:1; transform:none; }
.reveal[data-index="1"]{ transition-delay:.07s; }
.reveal[data-index="2"]{ transition-delay:.14s; }
.reveal[data-index="3"]{ transition-delay:.21s; }
.reveal[data-index="4"]{ transition-delay:.28s; }
.reveal[data-index="5"]{ transition-delay:.35s; }
.reveal[data-index="6"]{ transition-delay:.42s; }

/* =========================================================
   DECORATIVE LIVING BACKGROUNDS (переливы)
   Soft brand-color blobs drifting behind content. Content sits on
   z-index:1 (see layout helpers), blobs on z-index:0, low opacity.
   ========================================================= */
@keyframes blobFloat{
  0%,100%{ transform:translate(0,0) scale(1); }
  33%{ transform:translate(6%,-7%) scale(1.1); }
  66%{ transform:translate(-6%,5%) scale(.94); }
}
@keyframes gradShift{
  0%{ background-position:0% 50%; }
  50%{ background-position:100% 50%; }
  100%{ background-position:0% 50%; }
}

/* light sections: two soft drifting blobs (green + seed) */
.why,.requests,.gain,.who,.format,.reviews,.faq{ overflow:hidden; }
.why::before,.requests::before,.gain::before,.who::before,.format::before,.reviews::before,.faq::before,
.why::after,.requests::after,.gain::after,.who::after,.format::after,.reviews::after,.faq::after{
  content:""; position:absolute; z-index:0; width:46vw; max-width:600px; aspect-ratio:1; border-radius:50%;
  filter:blur(70px); pointer-events:none;
}
.why::before,.requests::before,.gain::before,.who::before,.format::before,.reviews::before,.faq::before{
  top:-14%; left:-10%; opacity:.3;
  background:radial-gradient(circle,rgba(136,168,76,.5),transparent 72%);
  animation:blobFloat 24s ease-in-out infinite;
}
.why::after,.requests::after,.gain::after,.who::after,.format::after,.reviews::after,.faq::after{
  bottom:-16%; right:-12%; opacity:.24;
  background:radial-gradient(circle,rgba(217,139,74,.5),transparent 72%);
  animation:blobFloat 30s ease-in-out infinite reverse;
}
/* offset alternate sections so blobs don't line up */
.requests::before,.who::before,.faq::before{ left:auto; right:-9%; }
.requests::after,.who::after,.faq::after{ right:auto; left:-10%; }

/* dark sections: animated gradient "перелив" + glow */
.pain,.author,.lead{ overflow:hidden; background-size:300% 300%; animation:gradShift 24s ease infinite; }
.pain{ background-image:linear-gradient(125deg,#1d2715,#27331c,#1b2414,#2f4022); }
.author{ background-image:linear-gradient(135deg,#20291a,#2c3a22,#1e2716,#33452a); }
.lead{ background-image:linear-gradient(130deg,#1d2715,#2a3a20,#202c18,#31432a); }
.pain::after,.author::after{
  content:""; position:absolute; z-index:0; width:50vw; max-width:640px; aspect-ratio:1; border-radius:50%;
  filter:blur(80px); pointer-events:none; opacity:.5;
  background:radial-gradient(circle,rgba(136,168,76,.4),transparent 70%);
  animation:blobFloat 28s ease-in-out infinite;
}
.pain::after{ bottom:-18%; left:-8%; }
.author::after{ top:-15%; right:-8%; background:radial-gradient(circle,rgba(217,139,74,.38),transparent 70%); }

/* floating graphic decorations (drift + scroll parallax), injected by app.js */
.deco{ position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden; }
.deco__item{ position:absolute; will-change:transform; line-height:0; }
.deco__item .ds{ width:100%; height:auto; display:block; transform-origin:center; animation:dsFloat var(--fd,10s) ease-in-out infinite; }
.deco__item--spin .ds{ animation:dsSpin var(--fd,40s) linear infinite; }
@keyframes dsFloat{ 0%,100%{ transform:translateY(0) rotate(var(--r,0deg)); } 50%{ transform:translateY(-18px) rotate(calc(var(--r,0deg) + 5deg)); } }
@keyframes dsSpin{ from{ transform:rotate(0); } to{ transform:rotate(360deg); } }

@media (prefers-reduced-motion:reduce){
  .why::before,.why::after,.requests::before,.requests::after,.gain::before,.gain::after,
  .who::before,.who::after,.format::before,.format::after,.reviews::before,.reviews::after,
  .faq::before,.faq::after,.how::before,.pain::after,.author::after{ animation:none; }
  .how,.pain,.author,.lead{ animation:none; }
  .deco__item .ds{ animation:none; }
}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width:960px){
  .how__grid{ grid-template-columns:repeat(2,1fr); }
  .avideo__grid{ grid-template-columns:1fr; max-width:330px; }
  .nav__links{ position:fixed; inset:0 0 0 auto; width:min(80vw,320px); flex-direction:column; gap:1.4rem;
    background:var(--cream); padding:6rem 2rem 2rem; box-shadow:var(--shadow-lg); transform:translateX(110%);
    transition:transform .45s var(--ease); margin-left:0; z-index:90; }
  .nav__links.is-open{ transform:translateX(0); }
  .nav__links a{ font-size:1.15rem; }
  .nav__burger{ display:flex; order:3; }
  .nav__cta{ margin-left:auto; }

  .hero__inner{ grid-template-columns:1fr; gap:2.5rem; text-align:center; }
  .hero__content{ order:2; }
  .hero__visual{ order:1; max-width:360px; margin-inline:auto; }
  .hero__actions{ justify-content:center; }
  .hero__sub{ margin-inline:auto; }
  .float-chip--1{ left:-2%; } .float-chip--2{ right:-2%; }
  .hero__scroll{ display:none; }

  .pain__inner,.why__inner,.who__inner,.format__inner,.author__inner,.lead__inner{ grid-template-columns:1fr; gap:2.5rem; }
  .why__media,.who__media,.format__media,.author__media{ max-width:440px; margin-inline:auto; }
  .requests__grid{ grid-template-columns:1fr 1fr; }
  .steps,.bento{ grid-template-columns:1fr; }
  .bento__cell--lead{ grid-row:auto; min-height:260px; }
  .bento__cell--wide{ grid-column:auto; }
  .step::before{ display:none; }
  .footer__inner{ grid-template-columns:1fr 1fr; }
  .footer__brand{ grid-column:1 / -1; }
}

@media (max-width:560px){
  .requests__grid,.why__signals,.how__grid{ grid-template-columns:1fr; }
  .footer__inner{ grid-template-columns:1fr; }
  .footer__bottom{ flex-direction:column; }
  .marquee__track span{ font-size:1.05rem; }
  .float-seed{ width:78px; height:78px; }
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{ animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important; }
  .reveal{ opacity:1; transform:none; }
}

/* =========================================================
   BECOME A HOST (master) — added 2026-06-04
   ========================================================= */
.master{ background:linear-gradient(180deg,var(--cream-2),var(--cream)); padding-block:clamp(4.5rem,3rem + 7vw,8rem); overflow:hidden; }
.master__inner{ width:min(100% - 2.6rem,var(--maxw)); margin-inline:auto; position:relative; z-index:1; }
.master__glow{ position:absolute; z-index:0; top:-15%; right:-10%; width:48vw; max-width:620px; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,rgba(157,190,84,.25),transparent 68%); filter:blur(50px); pointer-events:none; }

.promo{ display:flex; align-items:center; gap:1.1rem; justify-content:center; flex-wrap:wrap; text-align:center;
  background:linear-gradient(135deg,var(--seed),var(--seed-soft)); color:#fff; border-radius:var(--r-card);
  padding:1.1rem 1.6rem; box-shadow:var(--shadow-seed); max-width:780px; margin:0 auto 3rem; }
.promo__badge{ font-family:var(--font-display); font-weight:800; font-size:1.6rem; line-height:1; background:rgba(255,255,255,.2); border-radius:14px; padding:.45rem .85rem; }
.promo__text{ font-size:1.05rem; font-weight:550; }
.promo__text b{ font-weight:800; }

.master__grid{ display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(2rem,4vw,4rem); align-items:center; }
.master__media{ position:relative; max-width:420px; }
.master__photo{ overflow:hidden; aspect-ratio:4/5; box-shadow:var(--shadow-lg); border:1px solid rgba(255,255,255,.4);
  border-radius:var(--r-img) var(--r-img) 46% 46% / var(--r-img) var(--r-img) 30% 30%; }
.master__photo img{ width:100%; height:100%; object-fit:cover; }
.master__badge{ position:absolute; bottom:1.1rem; right:-1.1rem; width:106px; height:106px; border-radius:50%;
  background:var(--seed); color:#fff; display:flex; align-items:center; justify-content:center; text-align:center;
  font-family:var(--font-display); box-shadow:var(--shadow-seed); }
.master__badge b{ font-weight:700; font-size:.92rem; line-height:1.15; }

.prices{ display:grid; grid-template-columns:1fr 1fr; gap:1.4rem; }
.price{ position:relative; background:var(--cream); border:1px solid var(--line); border-radius:var(--r-card);
  padding:2.1rem 1.7rem; box-shadow:var(--shadow-sm); display:flex; flex-direction:column;
  transition:transform .4s var(--ease), box-shadow .4s var(--ease); }
.price:hover{ transform:translateY(-6px); box-shadow:var(--shadow-md); }
.price--featured{ border-color:var(--seed); box-shadow:var(--shadow-md); }
.price__crown{ position:absolute; top:-12px; left:50%; transform:translateX(-50%); background:var(--seed); color:#fff;
  font-family:var(--font-display); font-weight:600; font-size:.72rem; letter-spacing:.04em; text-transform:uppercase;
  padding:.35rem .9rem; border-radius:999px; white-space:nowrap; box-shadow:var(--shadow-seed); }
.price h3{ font-family:var(--font-display); font-weight:700; font-size:1.3rem; color:var(--ink); }
.price__note{ color:var(--muted); font-size:.96rem; margin-top:.25rem; min-height:2.6em; }
.price__nums{ display:flex; align-items:baseline; gap:.7rem; margin-top:1rem; flex-wrap:wrap; }
.price__old{ font-size:1.05rem; color:var(--muted); text-decoration:line-through; }
.price__now{ font-family:var(--font-display); font-weight:800; font-size:1.9rem; color:var(--seed-deep); line-height:1; }
.price__tag{ align-self:flex-start; margin-top:.6rem; font-family:var(--font-display); font-weight:500; font-size:.72rem;
  letter-spacing:.04em; text-transform:uppercase; color:var(--seed-deep); background:rgba(181,102,43,.1);
  border:1px solid rgba(181,102,43,.22); padding:.32rem .8rem; border-radius:999px; }
.price__list{ display:grid; gap:.65rem; margin:1.5rem 0 1.7rem; }
.price__list li{ position:relative; padding-left:1.9rem; color:var(--ink); font-weight:500; font-size:.98rem; }
.price__list li::before{ content:""; position:absolute; left:0; top:.05em; width:1.35rem; height:1.35rem; border-radius:7px;
  background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/11px no-repeat; }
.price .btn{ margin-top:auto; }

.master__apply{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,4vw,4rem); align-items:center;
  margin-top:clamp(3rem,2rem + 3vw,5rem); }
.master__apply-text .h2{ font-size:clamp(1.6rem,1.2rem + 1.8vw,2.4rem); }
.master__apply-text p{ color:var(--muted); margin-top:1rem; max-width:42ch; font-size:1.05rem; }

@media (max-width:900px){
  .master__grid,.master__apply{ grid-template-columns:1fr; }
  .master__media{ margin-inline:auto; }
}
@media (max-width:560px){
  .prices{ grid-template-columns:1fr; }
  .price__note{ min-height:0; }
  .promo{ flex-direction:column; }
}

/* nav: second CTA «Стать ведущим» (desktop button + mobile menu link) */
.nav__cta{ display:flex; align-items:center; gap:.6rem; }
.nav__links-extra{ display:none; }
@media (max-width:960px){
  .nav__become{ display:none; }                 /* не тесним верхнюю панель на мобиле */
  .nav__links-extra{ display:inline-block; color:var(--seed-deep); font-weight:600; }
}

/* mobile menu fixes: full-screen backdrop + close (X) above the panel */
.nav__overlay{ position:fixed; inset:0; z-index:1; background:rgba(20,26,15,.5);
  -webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px);
  opacity:0; visibility:hidden; transition:opacity .35s var(--ease), visibility .35s; }
.nav__overlay.is-open{ opacity:1; visibility:visible; }
@media (min-width:961px){ .nav__overlay{ display:none; } }
@media (max-width:960px){
  .nav__burger{ position:relative; z-index:95; }   /* крестик поверх выезжающей панели */
  .nav__links{ z-index:90; overflow-y:auto; }
}

/* fix: overlay sits below the whole nav (z-index:100) but above page content,
   so the menu panel (inside .nav) always renders on top of it */
.nav__overlay{ z-index:90; }

/* fix: when nav is scrolled it has backdrop-filter and becomes the containing
   block for the fixed menu panel -> panel collapsed to nav height. Pin panel to
   the viewport height explicitly and reduce the top offset of the first item. */
@media (max-width:960px){
  .nav__links{ top:0; bottom:auto; height:100vh; height:100dvh; padding-top:4.5rem; }
}

/* contacts block inside the mobile menu (Telegram + phone) */
.nav__contacts{ display:none; }
@media (max-width:960px){
  .nav__contacts{ display:flex; flex-direction:column; gap:1.1rem; margin-top:1.8rem; padding-top:1.5rem;
    border-top:1px solid var(--line); }
  .nav__contacts a{ display:flex; align-items:center; gap:.75rem; font-size:1.02rem; font-weight:600; color:var(--ink); }
  .nav__contacts a::after{ display:none; }            /* без подчёркивания-бара от .nav__links a */
  .nav__contacts a:hover{ color:var(--seed-deep); }
  .nav__contacts svg{ width:1.3rem; height:1.3rem; flex:none; color:var(--seed); }
  .nav__contacts svg.tg{ fill:var(--seed); }
}
