/* Тихая пасека — общий стиль */

:root{
  --cream:#FBF5E9;
  --cream-2:#F4EDE0;
  --paper:#FFFFFF;
  --honey:#C88A26;
  --honey-dark:#A06818;
  --honey-glow:#F5D678;
  --wood:#3A2818;
  --wood-soft:#6A5240;
  --forest:#4A6A3A;
  --forest-soft:#7A9A6A;
  --line:rgba(58,40,24,0.12);
  --line-soft:rgba(58,40,24,0.06);
  --shadow-sm:0 2px 12px rgba(58,40,24,0.06);
  --shadow-md:0 8px 24px rgba(58,40,24,0.12);
  --radius:8px;
  --radius-sm:4px;

  /* Насыщенный янтарь для хиро и акцентов — глубокий тёмный фон вместо блёклого кремового */
  --ink-warm:#1C1006;
  --ink-warm-2:#2A1808;
  --amber-mid:#C97A16;
  --amber-bright:#FFB43C;
  --amber-hot:#FFD772;
  --amber-glow:rgba(255,180,60,0.5);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter','Helvetica Neue',system-ui,-apple-system,sans-serif;
  color:var(--wood);
  background:var(--cream);
  line-height:1.65;
  font-size:17px;
  -webkit-font-smoothing:antialiased;
  position:relative;
}
img,svg{max-width:100%;display:block}

/* Базовый фон сайта — не плоский белый, а лёгкая тёплая глубина: два еле
   заметных янтарных пятна по углам, тонкий узор сот и бумажное зерно.
   Три слоя ниже нуля по z-index — под любым контентом, не мешают чтению. */
body::before{
  content:"";position:fixed;inset:0;z-index:-3;pointer-events:none;
  background:
    radial-gradient(ellipse 1000px 700px at -6% -8%, rgba(245,196,90,0.55), transparent 62%),
    radial-gradient(ellipse 900px 800px at 106% 26%, rgba(200,138,38,0.32), transparent 60%),
    radial-gradient(ellipse 800px 650px at 26% 112%, rgba(245,196,90,0.35), transparent 58%),
    var(--cream);
}
body::after{
  content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;
  opacity:0.11;mix-blend-mode:multiply;
  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.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
html::before{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72'%3E%3Cpath d='M21 0 L63 0 L84 36 L63 72 L21 72 L0 36 Z' fill='none' stroke='%238A5410' stroke-width='1.2' stroke-opacity='0.16'/%3E%3C/svg%3E");
  background-size:84px 72px;
  mask-image:radial-gradient(ellipse 1400px 1100px at 50% 0%, #000 0%, transparent 85%);
  -webkit-mask-image:radial-gradient(ellipse 1400px 1100px at 50% 0%, #000 0%, transparent 85%);
}

/* --- Типографика --- */
h1,h2,h3,h4{
  font-family:'Cormorant Garamond','Playfair Display',Georgia,serif;
  font-weight:500;
  color:var(--wood);
  line-height:1.2;
  letter-spacing:-0.005em;
}
h1{font-size:clamp(2.2rem,5vw,3.6rem);font-weight:500}
h2{font-size:clamp(1.75rem,3.5vw,2.4rem)}
h3{font-size:1.35rem;font-weight:600}
h4{font-size:1.05rem;font-weight:600}

p{margin-bottom:1em}
p:last-child{margin-bottom:0}

a{color:var(--honey-dark);text-decoration:none;transition:color .2s}
a:hover{color:var(--honey)}

.container{max-width:1120px;margin:0 auto;padding:0 24px}
.narrow{max-width:760px;margin-left:auto;margin-right:auto}

/* --- Шапка сайта --- */
.site-header{
  padding:20px 0;
  border-bottom:1px solid var(--line-soft);
  background:rgba(251,245,233,0.92);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  position:sticky;top:0;z-index:100;
}
.site-header .container{
  display:flex;align-items:center;justify-content:space-between;gap:32px;
}
.brand{
  display:flex;align-items:center;gap:12px;
  font-family:'Cormorant Garamond',serif;
  font-size:1.45rem;font-weight:600;
  color:var(--wood);
  letter-spacing:0.005em;
}
.brand:hover{color:var(--wood)}
.brand-mark{
  width:36px;height:36px;
  display:grid;place-items:center;
  background:var(--honey);
  border-radius:50%;
  color:#fff;
}
.nav{display:flex;gap:28px;align-items:center}
.nav a{
  color:var(--wood-soft);
  font-size:0.94rem;
  padding:6px 0;
  border-bottom:2px solid transparent;
  transition:color .18s,border-color .18s;
}
.nav a:hover,.nav a.active{
  color:var(--wood);
  border-bottom-color:var(--honey);
}
.nav-toggle{
  display:none;
  background:none;border:none;
  padding:8px;cursor:pointer;
  color:var(--wood);
}
.nav-toggle svg{width:26px;height:26px}

/* --- Кнопки --- */
.btn{
  display:inline-block;
  padding:14px 30px;
  background:var(--wood);
  color:var(--cream);
  border-radius:var(--radius-sm);
  font-size:0.95rem;
  font-weight:500;
  letter-spacing:0.03em;
  transition:transform .15s,background .15s;
  border:none;cursor:pointer;
  font-family:inherit;
}
.btn:hover{background:var(--honey-dark);color:var(--cream);transform:translateY(-2px)}
.btn-outline{
  background:transparent;
  color:var(--wood);
  border:1px solid var(--wood);
}
.btn-outline:hover{background:var(--wood);color:var(--cream)}
.btn-honey{background:var(--honey)}
.btn-honey:hover{background:var(--honey-dark)}
.btn-row{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}

/* --- Hero: насыщенный янтарный экран, а не блёклый кремовый --- */
.hero{
  position:relative;overflow:hidden;
  padding:150px 0 0;
  background:
    radial-gradient(ellipse 900px 620px at 18% -6%, rgba(255,183,66,0.5), transparent 60%),
    radial-gradient(ellipse 700px 700px at 92% 30%, rgba(255,150,40,0.28), transparent 62%),
    linear-gradient(165deg, var(--ink-warm) 0%, var(--ink-warm-2) 45%, #4A2A0C 100%);
  color:#FFF3DC;
}
.hero-bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.hero-comb{
  position:absolute;inset:0;opacity:0.09;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72'%3E%3Cpath d='M21 0 L63 0 L84 36 L63 72 L21 72 L0 36 Z' fill='none' stroke='%23FFD772' stroke-width='1.4'/%3E%3C/svg%3E");
  background-size:84px 72px;
  mask-image:radial-gradient(ellipse 900px 500px at 30% 20%, #000 0%, transparent 75%);
  -webkit-mask-image:radial-gradient(ellipse 900px 500px at 30% 20%, #000 0%, transparent 75%);
}
.hero-glow{position:absolute;border-radius:50%;filter:blur(60px);pointer-events:none}
.hero-glow-1{width:420px;height:420px;top:-140px;left:6%;background:radial-gradient(circle,rgba(255,215,114,0.55),transparent 70%);animation:heroGlowPulse 7s ease-in-out infinite}
.hero-glow-2{width:340px;height:340px;bottom:-100px;right:8%;background:radial-gradient(circle,rgba(255,150,40,0.4),transparent 70%);animation:heroGlowPulse 9s ease-in-out infinite reverse}
@keyframes heroGlowPulse{0%,100%{opacity:0.6;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}
#pollenCanvas{position:absolute;inset:0;z-index:1;pointer-events:none;width:100%;height:100%}

.hero-grid{
  position:relative;z-index:2;
  display:grid;grid-template-columns:1.15fr 0.85fr;gap:32px;align-items:center;
  padding-bottom:64px;
}
.hero-copy{max-width:600px}
.hero-eyebrow{
  color:var(--amber-hot);
  font-size:0.8rem;
  letter-spacing:0.18em;
  text-transform:uppercase;
  margin-bottom:22px;
  font-weight:600;
}
.hero h1{max-width:560px;color:#FFF6E6;text-shadow:0 4px 30px rgba(0,0,0,0.35)}
.hero h1 em{color:var(--amber-hot);font-style:italic}
.hero .lead{
  max-width:520px;margin:24px 0 36px;
  font-size:1.12rem;color:rgba(255,243,220,0.8);
}
.hero .btn-row{justify-content:flex-start}

.btn-glow{background:var(--amber-mid);box-shadow:0 10px 30px -6px var(--amber-glow)}
.btn-glow:hover{background:var(--amber-bright);color:var(--ink-warm);box-shadow:0 14px 38px -6px var(--amber-glow)}
.btn-outline-light{border-color:rgba(255,243,220,0.55);color:#FFF3DC}
.btn-outline-light:hover{background:#FFF3DC;color:var(--ink-warm)}

.hero-stats{display:flex;gap:36px;margin-top:8px;flex-wrap:wrap}
.hero-stat{display:flex;flex-direction:column}
.hero-stat-num{
  font-family:'Cormorant Garamond',serif;font-weight:600;
  font-size:2.4rem;line-height:1;color:var(--amber-hot);
}
.hero-stat-cap{font-size:0.82rem;color:rgba(255,243,220,0.65);margin-top:4px}

/* --- Иллюстрация: банка мёда, капля, пчёлы --- */
.hero-art{position:relative;display:flex;justify-content:center;align-items:center;min-height:340px}
.hero-jar-wrap{position:relative;animation:jarFloat 5s ease-in-out infinite}
@keyframes jarFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.hero-jar{filter:drop-shadow(0 30px 40px rgba(0,0,0,0.45))}
.jar-shine{animation:jarShine 4s ease-in-out infinite}
@keyframes jarShine{0%,100%{opacity:0.35}50%{opacity:0.6}}
.hero-drip{position:absolute;top:-58px;left:50%;transform:translateX(-50%);transform-origin:top center;animation:dripStretch 2.6s ease-in infinite}
@keyframes dripStretch{
  0%{transform:translateX(-50%) scaleY(0.6);opacity:0}
  15%{opacity:1}
  70%{transform:translateX(-50%) scaleY(1.15);opacity:1}
  85%{transform:translateX(-50%) translateY(50px) scaleY(0.9);opacity:0}
  100%{opacity:0;transform:translateX(-50%) translateY(50px)}
}
.hero-bee{position:absolute;filter:drop-shadow(0 6px 10px rgba(0,0,0,0.35))}
.hero-bee-1{top:8%;right:2%;animation:beeFly1 6s ease-in-out infinite}
.hero-bee-2{bottom:14%;left:0%;animation:beeFly2 7.5s ease-in-out infinite}
@keyframes beeFly1{
  0%,100%{transform:translate(0,0) rotate(0deg)}
  25%{transform:translate(-18px,-14px) rotate(-8deg)}
  50%{transform:translate(6px,-26px) rotate(4deg)}
  75%{transform:translate(-10px,-8px) rotate(-4deg)}
}
@keyframes beeFly2{
  0%,100%{transform:translate(0,0) rotate(0deg)}
  30%{transform:translate(16px,-18px) rotate(10deg)}
  60%{transform:translate(-4px,-30px) rotate(-6deg)}
}

.hero-wave{display:block;width:100%;height:auto;position:relative;z-index:2;margin-top:0}

@media(prefers-reduced-motion:reduce){
  .hero-glow,.hero-jar-wrap,.hero-drip,.hero-bee{animation:none !important}
}

.hero-small{padding:70px 0 50px;text-align:center}
.hero-small h1{margin-bottom:16px}
.hero-small .lead{max-width:640px;margin:0 auto;color:var(--wood-soft);font-size:1.1rem}

/* --- Появление блоков при прокрутке (effects.js, IntersectionObserver) --- */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s cubic-bezier(0.16,1,0.3,1)}
.reveal.in-view{opacity:1;transform:translateY(0)}
.products .product-card.reveal:nth-child(2){transition-delay:.08s}
.products .product-card.reveal:nth-child(3){transition-delay:.16s}

/* --- Секции --- */
section{padding:80px 0}
section.tight{padding:60px 0}
.section-subtle{background:var(--cream-2)}
.section-dark{background:var(--wood);color:var(--cream)}
.section-dark h2{color:var(--cream)}
.section-dark p{color:rgba(251,245,233,0.75)}

.section-title{text-align:center;margin-bottom:56px}
.section-title h2{margin-bottom:12px}
.section-title p{color:var(--wood-soft);max-width:560px;margin:0 auto}

/* --- Три преимущества --- */
.features{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:44px;
}
.feature{text-align:center}
.feature-icon{
  width:60px;height:60px;margin:0 auto 22px;
  background:rgba(200,138,38,0.14);
  border-radius:50%;
  display:grid;place-items:center;
  color:var(--honey-dark);
}
.feature-icon svg{width:26px;height:26px}
.feature h3{margin-bottom:10px}
.feature p{color:var(--wood-soft);font-size:0.97rem}

/* --- Каталог --- */
.filter-bar{
  display:flex;gap:8px;flex-wrap:wrap;
  justify-content:center;margin-bottom:40px;
}
.chip{
  padding:8px 18px;
  border:1px solid var(--line);
  background:transparent;
  border-radius:30px;
  font-size:0.9rem;
  color:var(--wood-soft);
  cursor:pointer;
  transition:all .2s;
  font-family:inherit;
}
.chip:hover,.chip.active{background:var(--wood);color:var(--cream);border-color:var(--wood)}

.products{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
  gap:24px;
}
.product-card{
  background:var(--paper);
  border-radius:var(--radius);
  overflow:hidden;
  box-shadow:var(--shadow-sm);
  transition:box-shadow .25s,transform .25s;
  display:flex;flex-direction:column;
  position:relative;
}
.product-card:hover{
  box-shadow:0 16px 36px -10px rgba(200,138,38,0.45),var(--shadow-md);
  transform:translateY(-5px);
}
.product-image{position:relative;overflow:hidden}
.product-image::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,0.5) 46%,transparent 62%);
  transform:translateX(-120%);transition:transform .7s ease;
}
.product-card:hover .product-image::after{transform:translateX(120%)}
.product-image{
  aspect-ratio:4/3;
  background:linear-gradient(135deg,#F8E9C4,#F5D678 60%,#E8B048);
  display:grid;place-items:center;
  padding:20px;
}
.product-image.deep{background:linear-gradient(135deg,#D89A38,#8B5A20)}
.product-image.forest{background:linear-gradient(135deg,#B8CFA0,#7A9A6A)}
.product-image.dark{background:linear-gradient(135deg,#5A3818,#2A1808)}
.product-image svg{width:80%;max-height:100%;height:auto}
.product-body{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1}
.product-tag{
  display:inline-block;
  font-size:0.72rem;
  text-transform:uppercase;
  letter-spacing:0.12em;
  color:var(--honey-dark);
  margin-bottom:6px;
  font-weight:600;
}
.product-body h3{margin-bottom:6px;font-size:1.2rem}
.product-desc{
  color:var(--wood-soft);
  font-size:0.95rem;
  margin-bottom:16px;
  flex:1;
}
.product-foot{
  display:flex;align-items:baseline;justify-content:space-between;
  padding-top:14px;
  border-top:1px solid var(--line-soft);
}
.product-price{
  font-family:'Cormorant Garamond',serif;
  font-size:1.5rem;color:var(--wood);font-weight:600;
}
.product-meta{color:var(--wood-soft);font-size:0.85rem}

.shop-note{
  max-width:720px;margin:60px auto 0;
  padding:24px 28px;
  background:var(--cream-2);
  border-left:3px solid var(--honey);
  border-radius:0 var(--radius) var(--radius) 0;
}
.shop-note h4{margin-bottom:8px}
.shop-note p{color:var(--wood-soft);font-size:0.95rem}

/* --- Цитата --- */
.pull-quote{
  max-width:780px;margin:0 auto;
  text-align:center;
}
.pull-quote blockquote{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(1.4rem,2.6vw,1.95rem);
  line-height:1.45;
  font-style:italic;
  color:var(--wood);
  position:relative;
  padding:0 30px;
}
.pull-quote blockquote::before{
  content:'\201C';
  position:absolute;left:-12px;top:-40px;
  color:var(--honey);
  font-size:5em;line-height:1;
  font-style:normal;
  font-family:Georgia,serif;
}
.pull-quote cite{
  display:block;margin-top:24px;
  font-style:normal;font-size:0.88rem;
  color:var(--wood-soft);
  letter-spacing:0.08em;
  text-transform:uppercase;
  font-weight:600;
}

/* --- CTA banner --- */
.cta-banner{
  text-align:center;
  padding:72px 40px;
  background:
    radial-gradient(ellipse 400px 200px at 30% 20%,rgba(245,214,120,0.15),transparent 60%),
    linear-gradient(135deg,var(--wood),#4A3222);
  color:var(--cream);
  border-radius:12px;
}
.cta-banner h2{color:var(--cream);margin-bottom:16px}
.cta-banner p{color:rgba(251,245,233,0.75);margin:0 auto 32px;max-width:520px}
.cta-banner .btn{background:var(--honey)}
.cta-banner .btn:hover{background:var(--honey-glow);color:var(--wood)}

/* --- Прозаический текст --- */
.prose{max-width:720px;margin:0 auto}
.prose h2{margin-top:56px;margin-bottom:20px;font-size:1.8rem}
.prose h2:first-child{margin-top:0}
.prose h3{margin-top:32px;margin-bottom:12px}
.prose p{color:var(--wood-soft)}
.prose ul{margin:16px 0 20px 22px}
.prose li{margin-bottom:8px;color:var(--wood-soft)}
.prose .drop-cap::first-letter{
  font-family:'Cormorant Garamond',serif;
  font-size:3.6em;line-height:.9;
  float:left;padding:6px 12px 0 0;
  color:var(--honey-dark);
  font-weight:600;
}

/* --- Команда --- */
.team{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:28px;margin-top:24px;
}
.team-card{
  text-align:center;
  padding:24px 16px;
}
.team-avatar{
  width:90px;height:90px;
  margin:0 auto 16px;
  background:linear-gradient(135deg,var(--forest-soft),var(--forest));
  border-radius:50%;
  display:grid;place-items:center;
  color:var(--cream);
  font-family:'Cormorant Garamond',serif;
  font-size:2rem;font-weight:600;
}
.team-name{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:600;color:var(--wood);margin-bottom:2px}
.team-role{font-size:0.85rem;color:var(--wood-soft);text-transform:uppercase;letter-spacing:0.08em;margin-bottom:10px}
.team-bio{font-size:0.92rem;color:var(--wood-soft)}

/* --- Инфо-список для visit --- */
.info-list{
  max-width:760px;margin:40px auto;
  border-top:1px solid var(--line);
}
.info-row{
  display:grid;
  grid-template-columns:200px 1fr;
  gap:32px;
  padding:22px 0;
  border-bottom:1px solid var(--line);
}
.info-row dt{
  font-family:'Cormorant Garamond',serif;
  font-size:1.2rem;font-weight:600;
  color:var(--wood);
}
.info-row dd{color:var(--wood-soft)}
@media(max-width:640px){.info-row{grid-template-columns:1fr;gap:6px;padding:18px 0}}

/* --- Route steps --- */
.route-steps{max-width:720px;margin:24px auto 0;counter-reset:step}
.route-step{
  display:flex;gap:20px;
  padding:20px 0;
  border-bottom:1px dashed var(--line);
}
.route-step:last-child{border-bottom:none}
.route-step::before{
  counter-increment:step;
  content:counter(step);
  flex-shrink:0;
  width:38px;height:38px;
  background:var(--honey);
  color:#fff;
  border-radius:50%;
  display:grid;place-items:center;
  font-family:'Cormorant Garamond',serif;
  font-size:1.15rem;font-weight:600;
}
.route-step h4{margin-bottom:4px}
.route-step p{color:var(--wood-soft);font-size:0.95rem;margin:0}

/* --- Контакты --- */
.contact-grid{
  display:grid;
  grid-template-columns:1fr 1.4fr;
  gap:56px;
  align-items:start;
}
@media(max-width:820px){.contact-grid{grid-template-columns:1fr;gap:40px}}

.contact-list{list-style:none}
.contact-item{
  padding:18px 0;
  border-bottom:1px solid var(--line);
}
.contact-item:first-child{padding-top:0}
.contact-item:last-child{border-bottom:none;padding-bottom:0}
.contact-label{
  color:var(--wood-soft);
  font-size:0.78rem;
  text-transform:uppercase;
  letter-spacing:0.1em;
  margin-bottom:6px;
  font-weight:600;
}
.contact-value{font-size:1.05rem;color:var(--wood)}
.contact-value a{color:var(--wood)}
.contact-value a:hover{color:var(--honey-dark)}
.contact-hint{font-size:0.87rem;color:var(--wood-soft);margin-top:4px}

/* --- Форма --- */
.form-card{
  background:var(--paper);
  padding:34px 32px 32px;
  border-radius:var(--radius);
  box-shadow:var(--shadow-sm);
}
.form-card h3{margin-bottom:8px}
.form-card .form-intro{color:var(--wood-soft);font-size:0.93rem;margin-bottom:22px}
.form-field{margin-bottom:20px}
.form-field label{
  display:block;
  font-size:0.82rem;
  font-weight:600;
  color:var(--wood);
  margin-bottom:6px;
  letter-spacing:0.03em;
}
.form-field label .req{color:var(--honey-dark)}
.form-field input,
.form-field textarea{
  width:100%;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:6px;
  font:inherit;
  color:var(--wood);
  background:var(--cream);
  transition:border-color .2s,background .2s;
}
.form-field input:focus,
.form-field textarea:focus{
  outline:none;
  border-color:var(--honey);
  background:#fff;
}
.form-field textarea{min-height:130px;resize:vertical}
.form-note{
  font-size:0.82rem;
  color:var(--wood-soft);
  margin-top:14px;
}

/* Статусные сообщения формы */
.form-msg{
  margin-top:18px;padding:12px 16px;border-radius:6px;
  font-size:0.93rem;line-height:1.5;
}
.form-msg:empty{display:none}
.form-msg.loading{
  background:rgba(200,138,38,0.10);color:var(--honey-dark);
  border:1px solid rgba(200,138,38,0.28);
}
.form-msg.ok{
  background:rgba(74,106,58,0.14);color:#365828;
  border:1px solid rgba(74,106,58,0.35);
}
.form-msg.err{
  background:rgba(180,60,40,0.10);color:#8a2818;
  border:1px solid rgba(180,60,40,0.32);
}

/* Демо-бейдж (показывается только когда CFG.DEMO и нет боевого канала) */
.demo-badge{
  display:none;
  margin:0 0 20px;
  padding:10px 14px;
  background:rgba(200,138,38,0.12);
  border-left:3px solid var(--honey);
  border-radius:0 4px 4px 0;
  font-size:0.85rem;
  color:var(--wood-soft);
}
.demo-badge b{color:var(--honey-dark)}

/* Двухколоночная форма (для visit) */
.form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.form-grid .full{grid-column:1 / -1}
@media(max-width:600px){.form-grid{grid-template-columns:1fr}}

/* Чекбокс-согласие */
.consent{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:14px 16px;
  background:var(--cream-2);
  border-radius:6px;
  border:1px solid var(--line-soft);
  cursor:pointer;
  transition:border-color .2s,background .2s;
}
.consent:hover{border-color:var(--honey);background:rgba(200,138,38,0.06)}
.consent input[type=checkbox]{
  margin-top:3px;
  width:18px;height:18px;
  accent-color:var(--honey-dark);
  flex-shrink:0;
  cursor:pointer;
}
.consent-text{
  font-size:0.88rem;
  color:var(--wood-soft);
  line-height:1.5;
}
.consent-text a{
  color:var(--honey-dark);
  border-bottom:1px dotted var(--honey-dark);
}
.consent-text a:hover{color:var(--honey)}

/* Тизер-полоса на главной */
.teaser-band{
  display:grid;
  grid-template-columns:1fr auto;
  gap:36px;
  align-items:center;
  padding:36px 40px;
  background:
    radial-gradient(ellipse 400px 200px at 0% 0%, rgba(245,214,120,0.35), transparent 65%),
    var(--cream-2);
  border-radius:12px;
  border-left:3px solid var(--honey);
  box-shadow:0 14px 32px -18px rgba(58,40,24,0.35);
  max-width:960px;
  margin:0 auto;
}
.teaser-band h3{
  font-size:1.55rem;
  margin-bottom:8px;
  font-weight:600;
}
.teaser-band p{
  color:var(--wood-soft);
  font-size:0.98rem;
  margin:0;
}
.teaser-marks{
  display:flex;gap:20px;
  margin-top:14px;
  flex-wrap:wrap;
}
.teaser-marks span{
  font-size:0.85rem;
  color:var(--honey-dark);
  font-weight:600;
  letter-spacing:0.03em;
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.teaser-marks span::before{
  content:"·";
  color:var(--honey);
  font-size:1.4em;
  line-height:0;
}
@media(max-width:720px){
  .teaser-band{grid-template-columns:1fr;padding:28px 24px;text-align:center}
  .teaser-marks{justify-content:center}
}

/* --- Карта плейсхолдер --- */
.map-placeholder{
  margin-top:40px;
  aspect-ratio:16/7;
  background:
    linear-gradient(135deg,#DFE6D0,#B4C4A0);
  border-radius:var(--radius);
  overflow:hidden;position:relative;
  border:1px solid var(--line);
}
.map-placeholder svg{position:absolute;inset:0;width:100%;height:100%}
.map-pin{
  position:absolute;
  top:50%;left:50%;
  transform:translate(-50%,-100%);
  color:var(--honey-dark);
}
.map-pin svg{width:44px;height:44px}
.map-caption{
  position:absolute;
  bottom:16px;left:20px;
  padding:8px 14px;
  background:rgba(251,245,233,0.92);
  border-radius:20px;
  font-size:0.85rem;
  color:var(--wood);
  backdrop-filter:blur(6px);
}

/* --- Двухколоночный блок --- */
.two-col{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:64px;
  align-items:center;
}
@media(max-width:820px){.two-col{grid-template-columns:1fr;gap:36px}}
.illus-block{
  aspect-ratio:4/5;
  background:linear-gradient(160deg,#E8D89C,#C88A26);
  border-radius:var(--radius);
  padding:36px;
  display:grid;place-items:center;
  position:relative;overflow:hidden;
}
.illus-block svg{width:100%;height:auto;max-height:100%}

/* --- Подвал --- */
.site-footer{
  background:var(--wood);
  color:rgba(251,245,233,0.72);
  padding:60px 0 24px;
  margin-top:100px;
  font-size:0.92rem;
}
.site-footer .container{
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  gap:40px;
  padding-bottom:36px;
  border-bottom:1px solid rgba(251,245,233,0.1);
}
.footer-brand{
  color:var(--cream);
  font-family:'Cormorant Garamond',serif;
  font-size:1.35rem;
  margin-bottom:14px;
  font-weight:600;
}
.site-footer h4{
  font-family:'Inter',sans-serif;
  font-size:0.72rem;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--cream);
  margin-bottom:18px;
  font-weight:600;
}
.site-footer ul{list-style:none}
.site-footer li{margin-bottom:8px}
.site-footer a{color:rgba(251,245,233,0.72)}
.site-footer a:hover{color:var(--honey-glow)}
.footer-bottom{
  padding-top:24px;
  color:rgba(251,245,233,0.4);
  font-size:0.82rem;
  text-align:center;
}

/* --- Адаптация хиро --- */
@media(max-width:900px){
  .hero-grid{grid-template-columns:1fr;text-align:center;padding-bottom:48px}
  .hero-copy{max-width:600px;margin:0 auto}
  .hero h1,.hero .lead{margin-left:auto;margin-right:auto}
  .hero .btn-row,.hero-stats{justify-content:center}
  .hero-art{min-height:260px;margin-top:12px}
  .hero-jar{width:200px;height:auto}
}

/* --- Мобильная адаптация --- */
@media(max-width:760px){
  section{padding:56px 0}
  .hero{padding:56px 0 0}
  .hero-small{padding:50px 0 32px}
  .nav-toggle{display:block}
  .nav{
    display:none;
    position:absolute;
    top:100%;left:0;right:0;
    flex-direction:column;
    background:var(--cream);
    padding:20px 24px;
    gap:6px;
    border-bottom:1px solid var(--line);
    box-shadow:var(--shadow-sm);
  }
  .nav a{padding:12px 0;border-bottom:1px solid var(--line-soft);width:100%}
  .site-header.nav-open .nav{display:flex}
  .site-footer .container{grid-template-columns:1fr;gap:32px}
  .cta-banner{padding:48px 24px}
  .contact-grid{gap:32px}
}
