/* =========================================================================
   Главная: первый экран, преимущества, промо, выбор по потребности, сезон, о компании, поддержка.
   ========================================================================= */

/* ── Первый экран ── */
.hero { position: relative; overflow: hidden; background: var(--c-deep); color: #fff; }
.hero__word { position: absolute; left: -.04em; bottom: -.18em; font: 700 clamp(120px, 19vw, 300px)/1 var(--font-head); letter-spacing: -.04em; color: rgba(255, 255, 255, .03); white-space: nowrap; pointer-events: none; user-select: none; }
.hero__inner { position: relative; display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); gap: 24px 48px; align-items: center; min-height: min(660px, calc(100svh - var(--hdr-h) - 120px)); padding-block: clamp(40px, 6vw, 72px); }
.hero__title { font-size: clamp(30px, 3.4vw, 50px); line-height: 1.08; letter-spacing: -.025em; max-width: 16ch; }
.hero__title em, .promo__title em { font-style: normal; color: var(--c-green-lite); }
.hero__lead { margin: 22px 0 0; max-width: 34em; font-size: 17px; color: var(--c-muted-dk); }
.hero__facts { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
.hero__facts li { padding: 8px 14px; border: 1px solid rgba(255, 255, 255, .14); border-radius: 999px; font-size: 14px; color: #d3dee7; }
.hero__price { margin: 26px 0 0; font: 600 26px/1 var(--font-head); color: #fff; }
.hero__price-note { font: 400 15px/1 var(--font-body); color: var(--c-muted-dk); margin-left: 6px; }
.hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.hero__visual { position: relative; display: grid; place-items: center; min-height: 460px; }
.hero__img { width: min(400px, 82%); height: auto; filter: drop-shadow(0 34px 44px rgba(0, 0, 0, .45)); }
.tag { position: absolute; display: grid; gap: 3px; max-width: 220px; padding: 11px 15px; border-radius: 14px; background: var(--c-deep-2); border: 1px solid var(--c-line-dk); }
.tag__label { font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--c-muted-dk); }
.tag__val { font: 600 14px/1.3 var(--font-head); color: #fff; }
.tag__val b, .tag__val span { color: var(--c-green-lite); font-weight: 600; }
.tag--a { left: 0; bottom: 14%; }
.tag--b { right: 0; top: 10%; }
.tag--light { background: #fff; border-color: var(--c-line); }
.tag--light .tag__label { color: var(--c-muted); }
.tag--light .tag__val { color: var(--c-ink); }
.tag--light .tag__val span { color: var(--c-green-ink); }

/* ── Преимущества (полоса под первым экраном) ── */
.benefits { background: var(--c-ink); color: #fff; border-top: 1px solid var(--c-line-dk); }
.benefits__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.benefit { display: grid; grid-template-rows: auto auto 1fr auto; gap: 8px; padding: 30px 26px 28px; border-left: 1px solid var(--c-line-dk); transition: background-color .18s; }
.benefit:first-child { border-left: 0; padding-left: 0; }
.benefit:hover { background: rgba(255, 255, 255, .03); }
.benefit__ico { width: 28px; height: 28px; margin-bottom: 8px; color: var(--c-green-lite); }
.benefit__title { font: 600 15px/1.3 var(--font-head); color: #fff; }
.benefit__text { font-size: 14px; line-height: 1.55; color: var(--c-muted-dk); }
.benefit__more { display: inline-flex; align-items: center; gap: 6px; margin-top: 8px; font-size: 14px; font-weight: 600; color: var(--c-green-lite); }
.benefit__more .ico { width: 13px; height: 13px; transition: transform .2s var(--ease); }
.benefit:hover .benefit__more .ico { transform: translateX(3px); }

/* ── Промо товаров ── */
.promo { position: relative; overflow: hidden; background: #fff; border-bottom: 1px solid var(--c-line); }
.promo--reverse { background: var(--c-bg-alt); }
.promo__word { position: absolute; right: -.04em; top: 50%; transform: translateY(-50%); font: 700 clamp(100px, 15vw, 230px)/1 var(--font-head); letter-spacing: -.04em; color: rgba(13, 31, 45, .035); white-space: nowrap; pointer-events: none; user-select: none; }
.promo--reverse .promo__word { right: auto; left: -.04em; }
.promo__inner { position: relative; display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 32px 64px; align-items: center; padding-block: clamp(48px, 6vw, 88px); }
.promo--reverse .promo__visual { order: 2; }
.promo__visual { position: relative; display: grid; place-items: center; min-height: 440px; }
.promo__img { width: min(330px, 74%); height: auto; filter: drop-shadow(0 28px 34px rgba(13, 31, 45, .18)); }
.promo__title { font-size: clamp(26px, 2.6vw, 40px); max-width: 18ch; color: var(--c-ink); }
.promo__title em { color: var(--c-green-ink); }
.promo__text { margin: 18px 0 0; max-width: 36em; font-size: 17px; color: var(--c-muted); }
.elements { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 28px; }
.elements__item { display: grid; align-content: start; gap: 12px; padding: 16px; border: 1px solid var(--c-line); border-radius: 16px; background: #fff; }
.elements__sym { display: grid; place-items: center; width: 46px; height: 46px; border: 1.5px solid var(--c-green); border-radius: 10px; font: 700 16px/1 var(--font-head); color: var(--c-green-ink); }
.elements__text { display: grid; gap: 3px; font-size: 13.5px; line-height: 1.4; color: var(--c-muted); hyphens: auto; }
.elements__text b { font: 600 13.5px/1.3 var(--font-body); color: var(--c-ink); }
.promo__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }

/* ── Выбор по потребности (вкладки) ── */
.tabs__list { display: flex; gap: 8px; margin-bottom: 28px; overflow-x: auto; scrollbar-width: none; }
.tabs__list::-webkit-scrollbar { display: none; }
.tabs__tab { flex: 0 0 auto; padding: 11px 20px; border: 1.5px solid var(--c-line-strong); border-radius: 999px; background: #fff; color: var(--c-ink); font: 600 14px/1.2 var(--font-body); cursor: pointer; white-space: nowrap; transition: background-color .15s, border-color .15s, color .15s; }
.tabs__tab:hover { border-color: var(--c-ink); }
.tabs__tab[aria-selected="true"] { background: var(--c-ink); border-color: var(--c-ink); color: #fff; }
.tabs__panels { display: grid; grid-template-columns: minmax(0, 1fr); }
.tabs__panel { grid-area: 1 / 1; min-width: 0; visibility: hidden; opacity: 0; transition: opacity .2s; }
.tabs__panel.is-active { visibility: visible; opacity: 1; }
.tabs__more { margin-top: 24px; }

/* ── Сезон ── */
.season { position: relative; overflow: hidden; background: var(--c-deep); color: #fff; }
.season__inner { position: relative; display: grid; grid-template-columns: minmax(0, 1fr); justify-items: center; padding-block: clamp(56px, 7vw, 96px) clamp(40px, 5vw, 64px); }
.season__title { font-size: clamp(36px, 11.6vw, 196px); line-height: .95; letter-spacing: -.045em; text-align: center; color: #fff; white-space: nowrap; }
.season__products { display: flex; align-items: flex-end; justify-content: center; gap: clamp(8px, 3vw, 36px); margin-top: calc(-1 * clamp(40px, 7vw, 110px)); }
.season__img { width: auto; filter: drop-shadow(0 28px 34px rgba(0, 0, 0, .5)); }
.season__img--main { height: clamp(200px, 28vw, 400px); }
.season__img--side { height: clamp(150px, 21vw, 300px); }
.season__foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px 40px; width: 100%; margin-top: 40px; padding-top: 28px; border-top: 1px solid var(--c-line-dk); }
.season__text { margin: 0; max-width: 40em; font-size: 17px; color: var(--c-muted-dk); }

/* ── О компании ── */
.about-strip__grid { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: 28px 64px; align-items: start; }
.about-strip__title { max-width: 16ch; }
.about-strip__lead { margin: 0 0 20px; font-size: 19px; color: var(--c-ink); }
.about-strip__body .checklist { margin-bottom: 24px; color: var(--c-muted); }

/* ── Поддержка и вопросы ── */
.support__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 32px 64px; align-items: start; }
.support__lead { margin: 16px 0 24px; font-size: 17px; color: var(--c-muted); }
.support__links { display: grid; gap: 2px; margin-bottom: 28px; border-top: 1px solid var(--c-line); }
.support__links a { display: flex; align-items: center; gap: 12px; padding: 14px 0; border-bottom: 1px solid var(--c-line); font-weight: 600; color: var(--c-ink); }
.support__links a:hover { color: var(--c-green-ink); }
.support__links .ico { width: 18px; height: 18px; color: var(--c-green); }
.support__links .ico--whatsapp { color: var(--c-wa); }
.support__actions { display: flex; flex-wrap: wrap; gap: 12px; }
.support__faq .faq { border-top: 0; }
.support__faq .faq__item:first-child .faq__btn { padding-top: 6px; }

/* ── Адаптив ── */
@media (max-width: 1100px) {
	.benefits__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.benefit { padding: 26px 22px; border-bottom: 1px solid var(--c-line-dk); }
	.benefit:nth-child(odd) { border-left: 0; padding-left: 0; }
}
@media (max-width: 900px) {
	.hero__inner { grid-template-columns: minmax(0, 1fr); min-height: 0; }
	.hero__title { font-size: clamp(24px, 7vw, 40px); }
	.hero__visual { min-height: 0; padding-block: 8px 24px; }
	.hero__img { width: min(300px, 64vw); }
	.tag--a { left: 0; bottom: 18%; }
	.tag--b { right: 0; top: 4%; }
	.promo__inner { grid-template-columns: minmax(0, 1fr); }
	.promo__title { font-size: clamp(22px, 6.2vw, 34px); }
	.promo--reverse .promo__visual { order: 0; }
	.promo__visual { min-height: 0; padding-block: 8px; }
	.promo__img { width: min(240px, 56vw); }
	.about-strip__grid, .support__grid { grid-template-columns: 1fr; }
	.season__foot { justify-content: center; text-align: center; }
}
@media (max-width: 560px) {
	.elements { grid-template-columns: 1fr; }
	.elements__item { grid-template-columns: 46px 1fr; align-items: center; }
	.hero__lead, .promo__text { font-size: 16px; }
	.hero__actions .btn, .promo__actions .btn { width: 100%; }
	.tag { padding: 8px 11px; max-width: 170px; }
	.tag__val { font-size: 12.5px; }
	.tag__label { font-size: 11px; }
	.benefits__grid { width: auto; max-width: none; display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: var(--gut); gap: 12px; margin-inline: 0; padding: 20px var(--gut); scrollbar-width: none; }
	.benefits__grid::-webkit-scrollbar { display: none; }
	.benefit, .benefit:nth-child(odd) { flex: 0 0 78%; scroll-snap-align: start; padding: 20px; border: 1px solid var(--c-line-dk); border-radius: var(--r-card); }
	.season__foot .btn { width: 100%; }
	.support__actions .btn { width: 100%; }
}
