/* Экспериментальные версии лендинга /land1…3. Токены бренда из @barev/ui, у каждой версии свой главный приём: v1 — переписка с ботом, v2 — огромное «Barev» и таймлайн, v3 — бирка для ключей с подарком. */ .v-wrap { max-width: 1200px; margin: 0 auto; padding: 16px 20px 32px; display: flex; flex-direction: column; gap: 16px; } .v-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; } .v1 :is(a, button):focus-visible, .v2 :is(a, button):focus-visible, .v3 :is(a, button):focus-visible { outline: 3px solid var(--bc-accent); outline-offset: 3px; } /* общая шапка */ .vh { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 8px 8px 20px; border-radius: 999px; background: #fff; } .vh__logo { display: inline-flex; flex-shrink: 0; white-space: nowrap; text-decoration: none; } .vh__right { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; } .vh__langs { display: flex; flex-wrap: wrap; } .vh__cta { background: var(--bc-dark); color: #fff; } .vh--dark { background: rgba(255, 255, 255, 0.06); } .vh--dark .lang { color: var(--bc-bg); } .vh--dark .lang[aria-current='true'] { background: var(--bc-pink); color: var(--bc-plum); } .vh--dark .vh__cta { background: var(--bc-pink); color: var(--bc-plum); } .vh--dark .lang-menu__current { background: rgba(255, 255, 255, 0.1); } .vh--dark .lang-menu__list { background: var(--bc-plum); box-shadow: 0 8px 30px rgba(0, 0, 0, 0.35), inset 0 0 0 1px rgba(255, 255, 255, 0.08); } .v-footer { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; padding: 20px 24px; font-size: 14px; font-weight: 600; color: var(--bc-plum); } .v-footer a { color: inherit; } .v-footer--dark { color: var(--bc-pink); } /* ═════════ v1 · Чат ═════════ */ .v1 { min-height: 100vh; background-color: #e7eef9; /* обои чата: мелкие точки цвета бренда */ background-image: radial-gradient(rgba(18, 38, 77, 0.07) 1.2px, transparent 1.4px); background-size: 18px 18px; color: var(--bc-blue-ink); } .v1-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 460px); gap: 40px; align-items: center; padding: 48px 8px 24px; } .v1-title { margin: 0; font-family: var(--bc-font-head); font-weight: 800; font-size: clamp(38px, 5.2vw, 68px); line-height: 1; letter-spacing: -0.03em; color: var(--bc-plum); text-wrap: balance; } .v1-sub { margin: 20px 0 0; max-width: 46ch; font-size: 19px; line-height: 1.5; } .v1-chat { display: flex; flex-direction: column; gap: 10px; padding: 16px; border-radius: 32px; background: rgba(255, 255, 255, 0.55); box-shadow: 0 20px 60px rgba(18, 38, 77, 0.12); } .v1-chat__head { display: flex; align-items: center; gap: 12px; padding: 4px 6px 10px; border-bottom: 1px solid rgba(18, 38, 77, 0.1); } .v1-chat__head small { display: block; font-size: 13px; opacity: 0.7; } .v1-avatar { width: 42px; height: 42px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: var(--bc-plum); color: var(--bc-pink); font-family: var(--bc-font-head); font-weight: 800; font-size: 20px; } .v1-chat__log { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; } /* одна сцена при загрузке: сообщения появляются по очереди */ .v1-msg, .v1-keys { animation: v1-pop 0.35s ease-out both; animation-delay: var(--d, 0s); } @keyframes v1-pop { from { opacity: 0; transform: translateY(10px) scale(0.98); } } @media (prefers-reduced-motion: reduce) { .v1-msg, .v1-keys { animation: none; } } .v1-msg { position: relative; max-width: 85%; padding: 10px 14px 20px; border-radius: 20px; font-size: 15px; line-height: 1.4; } .v1-msg time { position: absolute; right: 12px; bottom: 5px; font-size: 11px; opacity: 0.55; } .v1-msg--bot { align-self: flex-start; background: #fff; color: var(--bc-ink); border-bottom-left-radius: 6px; } .v1-msg--me { align-self: flex-end; background: var(--bc-pink); color: var(--bc-plum); border-bottom-right-radius: 6px; } .v1-keys { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; max-width: 85%; } .v1-key { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 12px; border-radius: 14px; background: rgba(18, 38, 77, 0.1); color: var(--bc-blue-ink); font-weight: 600; font-size: 14px; text-align: center; text-decoration: none; } .v1-key:hover { background: rgba(18, 38, 77, 0.16); color: var(--bc-blue-ink); } .v1-key--main { background: var(--bc-plum); color: #fff; } .v1-key--main:hover { background: #5e1835; color: #fff; } .v1-card, .v1-why { padding: 32px; border-radius: 32px; background: #fff; } .v1-h2 { margin: 0; font-family: var(--bc-font-head); font-weight: 700; font-size: 30px; letter-spacing: -0.02em; color: var(--bc-plum); } .v1-muted { margin: 8px 0 0; max-width: 60ch; color: var(--bc-ink-2); } .v1-groups { margin-top: 22px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; } .v1-group h3 { margin: 0 0 10px; display: flex; align-items: center; gap: 8px; font-family: var(--bc-font-head); font-size: 18px; font-weight: 700; color: var(--bc-ink); } .v1-group__keys { display: flex; flex-direction: column; gap: 6px; } .v1-svc { display: flex; justify-content: space-between; align-items: center; gap: 10px; min-height: 48px; padding: 8px 16px; border-radius: 14px; background: var(--bc-bg); color: var(--bc-ink-2); font-weight: 500; text-decoration: none; } .v1-svc > span:last-child { font-size: 13px; white-space: nowrap; } .v1-svc--live { background: var(--bc-home); color: var(--bc-home-ink); font-weight: 700; } .v1-svc--live:hover { color: var(--bc-home-ink); box-shadow: inset 0 0 0 2px var(--bc-home-ink); } .v1-why__grid { margin-top: 20px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; } .v1-why__item { display: flex; flex-direction: column; gap: 6px; padding: 18px 20px; border-radius: 20px 20px 20px 6px; background: #e7eef9; line-height: 1.45; } .v1-why__item b { font-family: var(--bc-font-head); font-size: 18px; color: var(--bc-ink); } .v1-final { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 460px); gap: 32px; align-items: center; padding: 40px; border-radius: 32px; background: var(--bc-plum); color: #fff; } .v1-final__title { margin: 0; font-family: var(--bc-font-head); font-weight: 800; font-size: clamp(34px, 4.4vw, 56px); line-height: 1; letter-spacing: -0.03em; color: var(--bc-pink); } .v1-final p { margin: 14px 0 0; max-width: 44ch; font-size: 17px; line-height: 1.5; color: #f4dce5; } /* поле ввода с уже набранным «Barev!» — вся строка открывает бота */ .v1-compose { display: flex; align-items: center; gap: 10px; padding: 8px 8px 8px 22px; border-radius: 999px; background: #fff; color: var(--bc-ink); text-decoration: none; } .v1-compose:hover { color: var(--bc-ink); } .v1-compose__text { flex: 1; font-size: 18px; font-weight: 500; } .v1-compose__text::after { content: ''; display: inline-block; width: 2px; height: 1.1em; margin-left: 2px; vertical-align: -0.15em; background: var(--bc-accent); animation: v1-caret 1s steps(1) infinite; } @keyframes v1-caret { 50% { opacity: 0; } } @media (prefers-reduced-motion: reduce) { .v1-compose__text::after { animation: none; } } .v1-compose__send { width: 48px; height: 48px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: var(--bc-accent); color: #fff; } /* ═════════ v2 · Первый месяц ═════════ */ .v2 { min-height: 100vh; background: var(--bc-plum); color: var(--bc-bg); } .v2-hero { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: 'word hello' 'text text'; gap: 8px 24px; padding: 40px 8px 24px; } /* главный элемент версии: слово во всю ширину */ .v2-word { grid-area: word; font-family: var(--bc-font-head); font-weight: 800; font-style: italic; font-size: clamp(110px, 21vw, 300px); line-height: 0.82; letter-spacing: -0.05em; color: var(--bc-pink); } .v2-hello { grid-area: hello; align-self: center; margin: 0; padding: 0; list-style: none; font-family: var(--bc-font-head); font-size: clamp(18px, 2vw, 26px); font-weight: 500; line-height: 1.35; color: #e9c9d5; text-align: right; } .v2-hero__text { grid-area: text; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 24px; align-items: end; margin-top: 28px; } .v2-title { margin: 0; font-family: var(--bc-font-head); font-weight: 700; font-size: clamp(30px, 3.6vw, 48px); line-height: 1.05; letter-spacing: -0.02em; text-wrap: balance; } .v2-sub { margin: 0; max-width: 44ch; font-size: 18px; line-height: 1.5; color: #f4dce5; } .v2-line { position: relative; margin: 16px 0 0; padding: 0; list-style: none; display: flex; flex-direction: column; } /* ось времени */ .v2-line::before { content: ''; position: absolute; left: 129px; top: 28px; bottom: 28px; width: 2px; background: rgba(246, 195, 211, 0.3); } .v2-step { position: relative; display: grid; grid-template-columns: 110px minmax(0, 1fr) auto; gap: 40px; align-items: center; padding: 26px 24px 26px 0; border-top: 1px solid rgba(246, 195, 211, 0.16); } .v2-step::before { content: ''; position: absolute; left: 123px; top: 50%; width: 14px; height: 14px; margin-top: -7px; border-radius: 50%; background: var(--bc-plum); border: 2px solid var(--bc-pink); } .v2-step[data-live='true']::before { background: var(--bc-home); border-color: var(--bc-home); box-shadow: 0 0 0 6px rgba(168, 195, 138, 0.25); } .v2-step__when { font-family: var(--bc-font-head); font-weight: 700; font-size: 18px; color: var(--bc-pink); text-align: right; } .v2-step__body h2 { margin: 0; font-family: var(--bc-font-head); font-weight: 700; font-size: clamp(22px, 2.4vw, 30px); letter-spacing: -0.01em; } .v2-step__body p { margin: 6px 0 0; max-width: 52ch; line-height: 1.5; color: #e9c9d5; } .v2-step[data-soon='true'] .v2-step__body { opacity: 0.72; } .v2-step__meta { display: flex; align-items: center; gap: 10px; justify-content: flex-end; } .v2-chip { padding: 8px 14px; border-radius: 999px; border: 1.5px solid rgba(246, 195, 211, 0.5); font-size: 14px; font-weight: 600; white-space: nowrap; } .v2-step[data-live='true'] .v2-chip { border-color: var(--bc-home); color: var(--bc-home); } .v2-btn { height: 44px; padding: 0 20px; background: var(--bc-home); color: var(--bc-home-ink); } .v2-btn:hover { color: var(--bc-home-ink); opacity: 0.9; } .v2-final { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 24px; margin-top: 16px; padding: 40px; border-radius: 32px; background: var(--bc-pink); color: var(--bc-plum); } .v2-final h2 { margin: 0; font-family: var(--bc-font-head); font-weight: 800; font-size: clamp(32px, 4vw, 52px); letter-spacing: -0.03em; } .v2-final p { margin: 8px 0 0; max-width: 46ch; font-size: 17px; line-height: 1.5; } .v2-final__cta { background: var(--bc-plum); color: #fff; height: 56px; padding: 0 30px; } .v2-final__cta:hover { color: #fff; opacity: 0.92; } /* ═════════ v3 · Подарок от агентства ═════════ */ .v3 { min-height: 100vh; background: var(--bc-bg); color: var(--bc-ink); } .v3-hero { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 40px; align-items: center; padding: 40px 8px 16px; } .v3-kicker { display: inline-block; padding: 8px 14px; border-radius: 999px; background: #fff; font-size: 14px; font-weight: 600; color: var(--bc-plum); } .v3-title { margin: 18px 0 0; font-family: var(--bc-font-head); font-weight: 800; font-size: clamp(44px, 6.4vw, 88px); line-height: 0.95; letter-spacing: -0.04em; color: var(--bc-plum); text-wrap: balance; } .v3-sub { margin: 20px 0 0; max-width: 44ch; font-size: 19px; line-height: 1.5; } .v3-cta { margin-top: 26px; height: 58px; padding: 0 32px; font-size: 17px; } /* главный элемент версии: бирка для ключей на шнурке */ .v3-tagwrap { position: relative; display: flex; flex-direction: column; align-items: center; color: var(--bc-plum); /* бирка и шнурок поворачиваются вместе, конец шнурка входит в отверстие */ transform: rotate(-6deg); } .v3-string { position: relative; z-index: 1; width: 120px; height: 120px; margin-bottom: -58px; } .v3-tag { --hole: 16px; position: relative; width: min(380px, 100%); aspect-ratio: 3 / 4; padding: 72px 32px 32px; border-radius: 40px 40px 28px 28px; background: var(--bc-perks); color: var(--bc-plum); display: flex; flex-direction: column; gap: 10px; box-shadow: 0 24px 50px rgba(74, 16, 40, 0.18); -webkit-mask: radial-gradient(circle at 50% 38px, transparent var(--hole), #000 calc(var(--hole) + 0.5px)); mask: radial-gradient(circle at 50% 38px, transparent var(--hole), #000 calc(var(--hole) + 0.5px)); } .v3-tag__hole { position: absolute; left: 50%; top: 38px; width: calc(var(--hole) * 2 + 10px); height: calc(var(--hole) * 2 + 10px); margin: calc(var(--hole) * -1 - 5px) 0 0 calc(var(--hole) * -1 - 5px); border-radius: 50%; border: 3px solid rgba(74, 16, 40, 0.25); } .v3-tag__label { font-family: var(--bc-font-head); font-style: italic; font-size: 24px; font-weight: 500; } .v3-tag__title { margin-top: auto; font-family: var(--bc-font-head); font-weight: 800; font-size: clamp(44px, 5vw, 64px); line-height: 0.95; letter-spacing: -0.03em; } .v3-tag__code { padding-top: 12px; border-top: 2px dashed rgba(74, 16, 40, 0.3); font-size: 15px; font-weight: 600; } .v3-h2 { margin: 0; font-family: var(--bc-font-head); font-weight: 700; font-size: 30px; letter-spacing: -0.02em; color: var(--bc-plum); } .v3-steps { padding: 32px; border-radius: 32px; background: #fff; } .v3-steps ol { margin: 20px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; } .v3-steps li { display: flex; flex-direction: column; gap: 6px; padding: 20px; border-radius: 24px; background: var(--bc-bg); line-height: 1.45; } .v3-steps li b { font-family: var(--bc-font-head); font-size: 18px; } .v3-steps li > span:last-child { color: var(--bc-ink-2); } .v3-num { width: 36px; height: 36px; margin-bottom: 6px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: var(--bc-plum); color: var(--bc-pink); font-family: var(--bc-font-head); font-weight: 800; } .v3-benefits { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px; padding: 32px; border-radius: 32px; background: #fff; } .v3-deal { display: flex; flex-direction: column; gap: 18px; } .v3-deal__card { display: flex; flex-direction: column; gap: 6px; padding: 24px; border-radius: 26px; background: var(--bc-home); color: var(--bc-home-ink); text-decoration: none; } .v3-deal__card:hover { color: var(--bc-home-ink); box-shadow: inset 0 0 0 2px var(--bc-home-ink); } .v3-deal__card b { font-family: var(--bc-font-head); font-weight: 800; font-size: 26px; line-height: 1.1; } .v3-deal__go { margin-top: 10px; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; } .v3-list { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; justify-content: center; gap: 14px; font-size: 17px; } .v3-list li { display: flex; align-items: center; gap: 12px; } .v3-list svg { flex: none; color: var(--bc-accent); } .v3-final { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; padding: 24px 28px; border-radius: 28px; background: var(--bc-pink); color: var(--bc-plum); } .v3-final p { margin: 0; max-width: 60ch; font-weight: 500; line-height: 1.5; } /* ═════════ адаптив ═════════ */ @media (max-width: 900px) { .v1-hero, .v1-final, .v3-hero, .v3-benefits { grid-template-columns: minmax(0, 1fr); } .v1-groups, .v1-why__grid, .v3-steps ol { grid-template-columns: minmax(0, 1fr); } .v2-hero__text { grid-template-columns: minmax(0, 1fr); } } @media (max-width: 720px) { .v-wrap { padding: 12px 16px 24px; } .vh { flex-wrap: nowrap; padding: 8px 8px 8px 16px; } .vh__right { flex-wrap: nowrap; } .vh__langs { display: none; } .v1-hero { padding: 24px 0 8px; gap: 24px; } .v1-card, .v1-why, .v1-final, .v3-steps, .v3-benefits { padding: 22px; border-radius: 28px; } .v1-msg, .v1-keys { max-width: 92%; } .v2-hero { grid-template-columns: minmax(0, 1fr); grid-template-areas: 'word' 'hello' 'text'; padding: 24px 0 8px; } .v2-hello { display: flex; flex-wrap: wrap; gap: 4px 14px; text-align: left; font-size: 17px; } .v2-line::before { left: 6px; } .v2-step { grid-template-columns: minmax(0, 1fr); gap: 10px; padding: 22px 0 22px 30px; } .v2-step::before { left: 0; top: 30px; margin-top: 0; } .v2-step__when { text-align: left; } .v2-step__meta { justify-content: flex-start; flex-wrap: wrap; } .v2-final { padding: 28px 22px; border-radius: 28px; } .v3-hero { padding: 24px 0 8px; } .v3-tag { width: min(300px, 86%); padding: 64px 24px 24px; } } /* ═════════ v4 · Табло прилёта ═════════ */ .v4 { min-height: 100vh; /* небо над Звартноцем: от светло-голубого к цвету страницы */ background: linear-gradient(180deg, #cfdcf3 0, #e9eff9 520px, var(--bc-bg) 1100px); color: var(--bc-blue-ink); } .v4-hero { padding: 48px 8px 8px; } .v4-title { margin: 0; max-width: 18ch; font-family: var(--bc-font-head); font-weight: 800; font-size: clamp(38px, 5.4vw, 72px); line-height: 0.98; letter-spacing: -0.03em; color: var(--bc-plum); text-wrap: balance; } .v4-sub { margin: 18px 0 0; max-width: 54ch; font-size: 19px; line-height: 1.5; } /* главный элемент версии: табло */ .v4-board { padding: 22px 24px 12px; border-radius: 28px; background: var(--bc-dark); color: #f3eee6; box-shadow: 0 24px 60px rgba(18, 38, 77, 0.22); } .v4-board__head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 0 6px 14px; border-bottom: 1px solid rgba(255, 255, 255, 0.12); } .v4-board__name { font-family: var(--bc-font-head); font-weight: 800; font-size: 30px; color: var(--bc-perks); } .v4-board__city { font-weight: 600; font-variant-numeric: tabular-nums; opacity: 0.75; } .v4-table { width: 100%; border-collapse: collapse; } .v4-table th { padding: 14px 6px 8px; text-align: left; font-size: 13px; font-weight: 600; color: rgba(243, 238, 230, 0.55); } .v4-table td { padding: 8px 6px; border-top: 1px solid rgba(255, 255, 255, 0.07); vertical-align: middle; } .v4-code { font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; color: var(--bc-perks); } .v4-name a { text-decoration: none; } .v4-flaps { display: inline-flex; flex-wrap: wrap; gap: 2px; } .v4-gap { width: 0.5em; } .v4-flap { position: relative; min-width: 0.9em; padding: 3px 2px; border-radius: 4px; background: #2c2826; font-family: var(--bc-font-head); font-weight: 700; font-size: 19px; line-height: 1.2; text-align: center; color: #f3eee6; animation: v4-flip 0.42s cubic-bezier(0.3, 0.6, 0.4, 1) both; animation-delay: calc(var(--i) * 28ms + 200ms); } /* линия сгиба пластинки */ .v4-flap::after { content: ''; position: absolute; left: 0; right: 0; top: 50%; height: 1px; background: rgba(0, 0, 0, 0.55); } @keyframes v4-flip { 0% { transform: rotateX(90deg); color: transparent; } 60% { transform: rotateX(-12deg); } } @media (prefers-reduced-motion: reduce) { .v4-flap { animation: none; } } .v4-table tr[data-live='true'] .v4-flap { background: #33402b; color: #e4f2d4; } .v4-table tr[data-live='false'] .v4-flap { color: rgba(243, 238, 230, 0.6); } .v4-price { white-space: nowrap; font-variant-numeric: tabular-nums; } .v4-status { display: inline-block; padding: 5px 12px; border-radius: 999px; font-size: 13px; font-weight: 700; white-space: nowrap; background: rgba(255, 255, 255, 0.08); color: rgba(243, 238, 230, 0.7); } .v4-table tr[data-live='true'] .v4-status { background: var(--bc-home); color: var(--bc-home-ink); } /* посадочный талон с отрывным корешком */ .v4-pass { --notch: 18px; display: grid; grid-template-columns: minmax(0, 1fr) 300px; border-radius: 28px; background: #fff; color: var(--bc-ink); -webkit-mask: radial-gradient(circle at calc(100% - 300px) 0, transparent var(--notch), #000 calc(var(--notch) + 0.5px)) top / 100% 51% no-repeat, radial-gradient(circle at calc(100% - 300px) 100%, transparent var(--notch), #000 calc(var(--notch) + 0.5px)) bottom / 100% 51% no-repeat; mask: radial-gradient(circle at calc(100% - 300px) 0, transparent var(--notch), #000 calc(var(--notch) + 0.5px)) top / 100% 51% no-repeat, radial-gradient(circle at calc(100% - 300px) 100%, transparent var(--notch), #000 calc(var(--notch) + 0.5px)) bottom / 100% 51% no-repeat; } .v4-pass__main { padding: 28px 32px; } .v4-pass__title { font-family: var(--bc-font-head); font-weight: 700; font-size: 22px; color: var(--bc-plum); } .v4-pass__grid { margin: 18px 0 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; } .v4-pass__grid dt { font-size: 13px; color: var(--bc-ink-2); } .v4-pass__grid dd { margin: 4px 0 0; font-family: var(--bc-font-head); font-weight: 700; font-size: 19px; line-height: 1.2; } .v4-pass__stub { display: flex; flex-direction: column; justify-content: center; gap: 12px; padding: 28px; border-left: 2px dashed var(--bc-line); background: var(--bc-perks); } .v4-pass__cta { background: var(--bc-plum); color: #fff; } .v4-pass__cta:hover { color: #fff; opacity: 0.92; } .v4-pass__link { text-align: center; font-size: 14px; font-weight: 600; color: var(--bc-plum); } /* ═════════ v5 · Калькулятор Barev+ ═════════ */ .v5 { min-height: 100vh; background: var(--bc-learn); color: var(--bc-learn-ink); } .v5-hero { padding: 48px 8px 8px; } .v5-title { margin: 0; max-width: 16ch; font-family: var(--bc-font-head); font-weight: 800; font-size: clamp(40px, 5.6vw, 76px); line-height: 0.96; letter-spacing: -0.035em; text-wrap: balance; } .v5-sub { margin: 16px 0 0; font-size: 19px; line-height: 1.5; } .v5-calc { display: grid; grid-template-columns: minmax(0, 380px) minmax(0, 1fr); gap: 12px; } .v5-inputs, .v5-result { padding: 28px; border-radius: 32px; background: #fff; } .v5-inputs { display: flex; flex-direction: column; gap: 18px; color: var(--bc-ink); } .v5-seg { display: flex; flex-direction: column; gap: 6px; } .v5-seg button { min-height: 48px; padding: 0 18px; border-radius: 16px; border: 2px solid var(--bc-line); background: #fff; font: inherit; font-weight: 600; text-align: left; cursor: pointer; color: var(--bc-ink); } .v5-seg button[aria-checked='true'] { background: var(--bc-learn-ink); border-color: var(--bc-learn-ink); color: #fff; } .v5-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-weight: 600; } .v5-row .bc-stepper { background: var(--bc-bg); } .v5-row .bc-stepper button { background: #fff; } .v5-result { display: flex; flex-direction: column; gap: 28px; } /* главный элемент версии: экономия крупным числом */ .v5-save { display: flex; flex-direction: column; gap: 4px; } .v5-save__label { font-weight: 600; font-size: 17px; } .v5-save__num { font-family: var(--bc-font-head); font-weight: 800; font-size: clamp(64px, 9vw, 128px); line-height: 0.95; letter-spacing: -0.045em; font-variant-numeric: tabular-nums; color: var(--bc-learn-ink); } .v5-save__year { font-size: 16px; color: var(--bc-ink-2); } .v5-bars { display: flex; flex-direction: column; gap: 14px; } .v5-bar { display: grid; grid-template-columns: 170px minmax(0, 1fr) auto; gap: 14px; align-items: center; } .v5-bar__label { font-weight: 600; color: var(--bc-ink); } .v5-bar__label small { display: block; font-size: 12px; font-weight: 500; color: var(--bc-ink-2); } .v5-bar__track { height: 18px; border-radius: 999px; background: var(--bc-bg); overflow: hidden; } .v5-bar__fill { display: block; height: 100%; border-radius: 999px; transition: width 0.3s ease; } @media (prefers-reduced-motion: reduce) { .v5-bar__fill { transition: none; } } .v5-bar__fill--without { background: #b9b2a8; } .v5-bar__fill--with { background: var(--bc-learn-ink); } .v5-bar__num { min-width: 96px; text-align: right; font-weight: 700; font-variant-numeric: tabular-nums; color: var(--bc-ink); } .v5-breakeven { margin: 0; padding: 14px 18px; border-radius: 18px; background: var(--bc-bg); color: var(--bc-ink); line-height: 1.45; } .v5-more { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 24px; padding: 28px 32px; border-radius: 32px; background: var(--bc-learn-ink); color: #fff; } .v5-more h2 { margin: 0 0 12px; font-family: var(--bc-font-head); font-weight: 700; font-size: 22px; } .v5-more ul { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; } .v5-more li { display: flex; align-items: baseline; gap: 8px; padding: 10px 16px; border-radius: 999px; background: rgba(255, 255, 255, 0.1); } .v5-more li b { font-family: var(--bc-font-head); color: var(--bc-learn); } .v5-more__cta { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; max-width: 340px; } .v5-more__cta .bc-btn { background: #fff; color: var(--bc-learn-ink); } .v5-more__cta p { margin: 0; font-size: 14px; line-height: 1.45; color: #ddd8fb; } /* ═════════ v6 · Для агентств ═════════ */ .v6 { min-height: 100vh; background: #ece6dc; color: var(--bc-ink); } /* главный элемент версии: лист договора */ .v6-doc { position: relative; margin-top: 16px; padding: 56px 64px 48px; border-radius: 6px; background: #fffdf9; box-shadow: 0 1px 0 rgba(0, 0, 0, 0.04), 0 30px 60px rgba(74, 16, 40, 0.1); } .v6-doc__top { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; padding-bottom: 18px; border-bottom: 2px solid var(--bc-plum); font-size: 14px; } .v6-tag { font-weight: 700; color: var(--bc-plum); } .v6-date { color: var(--bc-ink-2); } .v6-title { margin: 28px 0 0; max-width: 22ch; font-family: var(--bc-font-head); font-weight: 800; font-size: clamp(32px, 4.4vw, 56px); line-height: 1.02; letter-spacing: -0.03em; color: var(--bc-plum); text-wrap: balance; } .v6-sub { margin: 16px 0 0; max-width: 60ch; font-size: 18px; line-height: 1.55; } .v6-body { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 48px; margin-top: 40px; } .v6-clauses { display: flex; flex-direction: column; gap: 30px; } .v6-clause h2 { margin: 0 0 12px; font-family: var(--bc-font-head); font-weight: 700; font-size: 22px; } .v6-clause h2 span { color: var(--bc-accent); } .v6-clause ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; } .v6-clause li { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 8px; line-height: 1.55; max-width: 64ch; } .v6-num { font-weight: 700; font-variant-numeric: tabular-nums; color: var(--bc-ink-2); } .v6-example { align-self: start; position: sticky; top: 16px; display: flex; flex-direction: column; gap: 8px; padding: 24px; border-radius: 20px; background: var(--bc-perks); color: var(--bc-plum); } .v6-example__title { font-family: var(--bc-font-head); font-weight: 700; font-size: 18px; } .v6-example__calc, .v6-example__pct { font-variant-numeric: tabular-nums; line-height: 1.45; } .v6-example__pct { font-weight: 700; } .v6-example__result { margin-top: 6px; padding-top: 12px; border-top: 2px solid rgba(74, 16, 40, 0.25); font-family: var(--bc-font-head); font-weight: 800; font-size: 28px; line-height: 1.1; } .v6-example p { margin: 4px 0 0; font-size: 13px; line-height: 1.45; opacity: 0.8; } .v6-sign { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px; margin-top: 56px; } .v6-sign__line { position: relative; display: flex; flex-direction: column; gap: 8px; padding-top: 52px; font-size: 14px; color: var(--bc-ink-2); } .v6-sign__line > span { display: block; border-bottom: 1.5px solid var(--bc-ink); } .v6-stamp { position: absolute; right: 16px; top: -36px; width: 128px; height: 128px; color: var(--bc-accent); opacity: 0.85; transform: rotate(-14deg); font-family: var(--bc-font-head); mix-blend-mode: multiply; } .v6-cta { margin-top: 40px; height: 58px; padding: 0 34px; font-size: 17px; } /* ═════════ адаптив v4–v6 ═════════ */ @media (max-width: 900px) { .v4-pass, .v5-calc, .v6-body { grid-template-columns: minmax(0, 1fr); } .v4-pass { -webkit-mask: none; mask: none; } .v4-pass__stub { border-left: none; border-top: 2px dashed var(--bc-line); border-radius: 0 0 28px 28px; } .v6-example { position: static; } } @media (max-width: 720px) { .v4-hero, .v5-hero { padding: 24px 0 4px; } .v4-board { padding: 16px 12px 8px; border-radius: 24px; } /* табло на телефоне: рейс и статус сверху, название под ними */ .v4-table thead { display: none; } .v4-table tr { display: grid; grid-template-columns: auto 1fr auto; gap: 6px 10px; padding: 10px 4px; border-top: 1px solid rgba(255, 255, 255, 0.07); } .v4-table td { padding: 0; border: none; } .v4-code { grid-column: 1; grid-row: 1; } .v4-price { grid-column: 2; grid-row: 1; font-size: 14px; } .v4-table td:last-child { grid-column: 3; grid-row: 1; } .v4-name { grid-column: 1 / -1; grid-row: 2; } .v4-flap { font-size: 16px; } .v4-pass__main, .v4-pass__stub { padding: 22px; } .v4-pass__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .v5-inputs, .v5-result, .v5-more { padding: 22px; border-radius: 28px; } .v5-bar { grid-template-columns: minmax(0, 1fr) auto; } .v5-bar__track { grid-column: 1 / -1; grid-row: 2; } .v6-doc { padding: 28px 20px 32px; } .v6-sign { grid-template-columns: minmax(0, 1fr); gap: 40px; } .v6-cta { width: 100%; } }