/* 108Букетов — новая главная (v2), страница /test/ */

:root{
  --ink:#1B1726;
  --ink-2:#241E33;
  --ink-3:#171320;
  --ink-line:#3A3348;
  --paper:#FBF7F1;
  --blush:#F1E7DD;
  --blush-2:#EADFD3;
  --rose:#C23652;
  --rose-deep:#9C2740;
  --rose-text:#B22D49;
  --rose-price:#A8293F;
  --gold:#D9A24A;
  --sage:#6E7F5C;
  --sage-deep:#566448;
  --sage-ink:#3F5233;
  --sage-bg:#EEF2E8;
  --text:#241E33;
  --muted:#5A5163;
  --muted-2:#4E4659;
  --muted-3:#6E6578;
  --on-ink:#F6EFE8;
  --on-ink-muted:#C2B9CD;
  --on-ink-dim:#958CA6;
  --line:#DED2C2;
  --line-2:#E5D8C9;
  --line-3:#CDBFAE;
  --display:"Unbounded","Golos Text",Arial,sans-serif;
  --body:"Golos Text","PT Sans",Arial,sans-serif;
  --wrap:1248px;
  --gutter:clamp(16px,4vw,48px);
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
@media (prefers-reduced-motion:reduce){ html{ scroll-behavior:auto; } }
body.v2{
  margin:0; background:var(--paper); color:var(--text);
  font:400 16px/1.5 var(--body); -webkit-font-smoothing:antialiased;
  overflow-x:clip;
}
/* базовые правила — через :where(), чтобы не перебивать классы компонентов */
:where(.v2) img{ display:block; max-width:100%; height:auto; }
:where(.v2) a{ color:inherit; }
:where(.v2) h1, :where(.v2) h2, :where(.v2) h3{ margin:0; text-wrap:balance; }
:where(.v2) p{ margin:0; }
:where(.v2) :focus-visible{ outline:3px solid var(--rose); outline-offset:2px; }
:where(.v2) [id]{ scroll-margin-top:84px; }
[hidden]{ display:none !important; }
.v2-wrap{ max-width:var(--wrap); margin-inline:auto; padding-inline:var(--gutter); }
.v2-sr{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

/* ---------- кнопки и поля ---------- */
.v2-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  min-height:52px; padding:0 26px; border-radius:999px; border:1.5px solid transparent;
  font:700 15.5px/1.15 var(--body); text-decoration:none; text-align:center;
  cursor:pointer; white-space:nowrap; transition:background .15s, color .15s, border-color .15s;
}
.v2-btn svg{ width:18px; height:18px; flex:none; }
.v2-btn--sm{ min-height:44px; padding:0 18px; font-size:14.5px; }
.v2-btn--lg{ min-height:56px; font-size:16.5px; }
.v2-btn--block{ display:flex; width:100%; }
.v2-btn--rose{ background:var(--rose); color:#FFF6F2; }
.v2-btn--rose:hover{ background:var(--rose-deep); color:#FFF6F2; }
.v2-btn--ink{ background:var(--ink); color:var(--paper); }
.v2-btn--ink:hover{ background:#2E2742; color:var(--paper); }
.v2-btn--outline{ border-color:var(--ink); color:var(--ink); background:transparent; }
.v2-btn--outline:hover{ background:var(--ink); color:var(--paper); }
.v2-btn[disabled]{ opacity:.6; cursor:wait; }

.v2-input{
  width:100%; min-width:0; min-height:52px; padding:0 18px;
  border:1.5px solid var(--line-3); border-radius:14px; background:#fff;
  font:500 16px var(--body); color:var(--text);
}
.v2-input::placeholder{ color:#9A90A3; }
.v2-input:focus{ outline:none; border-color:var(--rose); box-shadow:0 0 0 3px rgba(194,54,82,.16); }
.v2-input--pill{ border-radius:999px; background:var(--paper); padding:0 20px; }
.v2-input--dark{ min-height:46px; border-radius:12px; border-color:var(--ink-line); background:var(--ink-2); color:var(--on-ink); font-weight:600; }

/* подсказки городов */
.v2-suggest-wrap{ position:relative; flex:1 1 140px; min-width:0; display:flex; }
.v2-suggest-wrap .v2-input{ flex:1; }
.v2-suggest{
  position:absolute; z-index:30; left:0; right:0; top:calc(100% + 6px); max-height:280px; overflow-y:auto;
  margin:0; padding:6px; list-style:none; background:#fff; border:1.5px solid var(--line); border-radius:16px;
  box-shadow:0 18px 40px -18px rgba(27,23,38,.45);
}
.v2-suggest li{ padding:10px 12px; border-radius:10px; font-size:15px; color:var(--text); cursor:pointer; }
.v2-suggest li.is-active, .v2-suggest li:hover{ background:var(--blush); }
.v2-suggest li mark{ background:none; color:var(--rose); font-weight:700; }

/* ---------- шапка ---------- */
.v2-header{
  position:sticky; top:0; top:env(safe-area-inset-top,0px); z-index:40;
  background:rgba(251,247,241,.94); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.v2-header-row{ display:flex; align-items:center; justify-content:space-between; gap:20px; padding-block:12px; }
.v2-logo{ display:flex; align-items:center; gap:10px; text-decoration:none; flex:none; }
.v2-logo .logo-mark{ width:34px; height:34px; flex:none; }
.v2-logo-word{ font:800 17px/1 var(--display); letter-spacing:.01em; color:var(--text); white-space:nowrap; }
.v2-logo-word span{ color:var(--rose); }
.v2-logo--light .v2-logo-word{ color:var(--on-ink); }
.v2-logo--light .v2-logo-word span{ color:#E4869A; }
.v2-nav{ display:flex; align-items:center; gap:24px; }
.v2-nav a{ font-weight:600; font-size:14.5px; color:var(--muted); text-decoration:none; white-space:nowrap; }
.v2-nav a:hover{ color:var(--ink); }
.v2-header-actions{ display:flex; align-items:center; gap:10px; flex:none; }
.v2-icon-btn{ width:44px; height:44px; border-radius:50%; border:1.5px solid; display:flex; align-items:center; justify-content:center; }
.v2-icon-btn svg{ width:19px; height:19px; }
.v2-icon-btn--tg{ color:#2F86C8; border-color:#B9D6EE; }
.v2-icon-btn--wa{ color:#2F8F4E; border-color:#BFE1C9; }
@media (max-width:1140px){ .v2-nav{ display:none; } }
@media (max-width:640px){ .v2-icon-btn{ display:none; } }
@media (max-width:400px){
  .v2-logo-word{ font-size:15px; }
  .v2-logo .logo-mark{ width:30px; height:30px; }
  .v2-header .v2-btn--sm{ padding:0 14px; font-size:13.5px; }
}

/* ---------- общие для разделов ---------- */
.v2-section{ padding-block:clamp(48px,5vw,72px); }
.v2-section--blush{ background:var(--blush); }
.v2-section--ink{ background:var(--ink); color:var(--on-ink); }
.v2-eyebrow{ font-weight:700; font-size:12.5px; line-height:1.2; letter-spacing:.14em; text-transform:uppercase; color:var(--rose); }
.v2-section--ink .v2-eyebrow{ color:var(--gold); }
.v2-head{ max-width:760px; }
.v2-head--wide{ max-width:1000px; }
.v2-h1{ font:700 clamp(31px,3.8vw,52px)/1.06 var(--display); letter-spacing:-.015em; color:var(--ink); }
.v2-h1 em, .v2-h2 em{ font-style:normal; color:var(--rose); }
.v2-h2{ margin-top:12px; font:700 clamp(27px,3.2vw,42px)/1.08 var(--display); letter-spacing:-.01em; color:var(--ink); }
.v2-section--ink .v2-h2{ color:var(--on-ink); }
#ai .v2-h2{ font-size:clamp(26px,2.9vw,38px); line-height:1.12; }
.v2-sub{ margin-top:14px; max-width:780px; font-size:17px; line-height:1.55; color:var(--muted); }
.v2-section--ink .v2-sub{ color:var(--on-ink-muted); }
.v2-note{ margin-top:12px; font-size:14px; line-height:1.5; color:var(--muted); }
.v2-scallop{ height:26px; }
.v2-scallop--blush-ink{ background:radial-gradient(circle at 13px 0, transparent 13px, var(--ink) 13.5px) top/26px 30px repeat-x, var(--blush); }
.v2-scallop--ink-paper{ background:radial-gradient(circle at 13px 26px, transparent 13px, var(--paper) 13.5px) bottom/26px 30px repeat-x, var(--ink); }

/* ---------- первый экран ---------- */
.v2-hero{ padding-block:clamp(24px,4vw,56px) clamp(48px,5vw,80px); }
.v2-hero-grid{ display:flex; flex-wrap:wrap; align-items:center; gap:clamp(24px,5vw,72px); }
.v2-hero-copy{ flex:1 1 470px; min-width:0; display:flex; flex-direction:column; gap:20px; }
.v2-lede{ max-width:560px; font-size:clamp(16px,1.25vw,18.5px); line-height:1.55; color:var(--muted-2); }

.v2-check{
  max-width:560px; margin:0; padding:18px; background:#fff; border:1.5px solid var(--line); border-radius:22px;
  box-shadow:0 20px 44px -28px rgba(27,23,38,.45); display:flex; flex-direction:column; gap:12px;
}
.v2-check-label{ font-weight:700; font-size:15px; color:var(--ink); }
.v2-check-row{ display:flex; flex-wrap:wrap; gap:10px; }

.v2-check-row .v2-btn{ flex:none; }
.v2-check-hint{ font-size:13.5px; line-height:1.45; color:var(--muted-3); }
.v2-check-result{ display:flex; flex-direction:column; gap:12px; padding-top:14px; border-top:1.5px dashed #E2D6C8; }
.v2-check-head{ display:flex; align-items:center; gap:8px; font-weight:700; font-size:15.5px; line-height:1.35; color:var(--ink); }
.v2-check-head svg{ width:18px; height:18px; flex:none; color:var(--sage-deep); }
.v2-check-head.is-bad svg{ color:var(--rose); }
.v2-check-result.is-loading .v2-check-chips,
.v2-check-result.is-loading .v2-check-cta{ display:none; }
.v2-check-chips{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:8px; }
.v2-chip{ display:inline-flex; align-items:center; gap:7px; padding:7px 12px; border-radius:999px; font-weight:600; font-size:13.5px; line-height:1.2; text-decoration:none; }
.v2-chip::before{ content:""; width:8px; height:8px; border-radius:50%; background:currentColor; flex:none; }
.v2-chip--free{ background:var(--sage-bg); color:var(--sage-ink); }
.v2-chip--taken{ background:#F3EEEA; color:#7A6F80; }
.v2-chip--taken::before{ background:#B9AEBF; }
a.v2-chip--taken:hover{ color:var(--ink); }
.v2-check-cta{ display:flex; flex-wrap:wrap; align-items:center; gap:10px 16px; }
.v2-check-cta span{ flex:1 1 180px; font-size:13.5px; line-height:1.4; color:var(--muted-3); }

.v2-proof{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:10px 26px; font-size:14px; line-height:1.4; color:var(--muted-2); }
.v2-proof li{ display:flex; align-items:center; gap:8px; }
.v2-proof svg{ width:18px; height:18px; flex:none; color:var(--rose); }
.v2-proof b{ color:var(--ink); }

.v2-hero-media{ flex:1 1 420px; min-width:0; position:relative; padding-bottom:36px; }
.v2-collage{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.v2-collage-tile{ position:relative; margin:0; border-radius:20px; overflow:hidden; aspect-ratio:1/1; background:var(--cat-bg, var(--blush-2)); }
.v2-collage-tile:nth-child(even){ transform:translateY(36px); }
.v2-collage-tile img{ width:100%; height:100%; object-fit:cover; }
.v2-collage-tile figcaption{
  position:absolute; top:12px; left:12px; padding:6px 11px; border-radius:999px;
  background:rgba(251,247,241,.92); font-weight:700; font-size:12px; letter-spacing:.04em; color:var(--ink);
}

/* техкарта букета */
.v2-techcard{
  background:var(--paper); border:1px solid var(--line-2); border-radius:20px; padding:22px 22px 18px;
  box-shadow:0 22px 44px -30px rgba(27,23,38,.55);
}
.v2-techcard--float{
  position:absolute; z-index:2; left:-24px; top:34%; width:250px; padding:14px 16px 13px;
  border:0; border-radius:16px; box-shadow:0 18px 36px -14px rgba(27,23,38,.55);
}
.v2-techcard-top{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
.v2-techcard-top span{ font-weight:700; font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--rose); }
.v2-techcard-top i{ width:13px; height:13px; border-radius:50%; border:2px solid var(--line-3); background:var(--blush); }
.v2-techcard-name{ margin-top:8px; font:700 15px/1.2 var(--display); color:var(--ink); }
.v2-techcard-meta{ margin:12px 0 4px; font-size:13px; color:var(--muted-3); }
.v2-techcard-title{ font:700 20px/1.2 var(--display); color:var(--ink); }
.v2-techcard-foot{ margin-top:8px; padding-top:8px; border-top:1px solid #E2D6C8; font-size:12px; color:var(--muted-3); }
.v2-techcard-disk{ margin-top:14px; padding-top:12px; border-top:1px dashed #DCCFBF; font-size:13px; line-height:1.5; color:var(--muted-3); overflow-wrap:anywhere; }
.v2-spec{ margin:14px 0 0; display:flex; flex-direction:column; gap:7px; font-size:14.5px; line-height:1.35; color:var(--muted-2); }
.v2-spec > div{ display:flex; align-items:baseline; gap:8px; }
.v2-spec dt{ flex:1 1 auto; min-width:0; display:flex; align-items:baseline; gap:8px; }
.v2-spec dt::after{ content:""; flex:1 1 12px; min-width:12px; border-bottom:1.5px dotted var(--line-3); transform:translateY(-3px); }
.v2-spec dd{ margin:0; flex:none; font-weight:700; color:var(--ink); font-variant-numeric:tabular-nums; white-space:nowrap; }
.v2-spec--sm{ margin-top:8px; gap:5px; font-size:13px; }

/* ---------- кто уже работает ---------- */
.v2-ticker{ background:var(--blush); border-block:1px solid var(--line-2); padding-block:18px; }
.v2-ticker-row{ display:flex; flex-wrap:wrap; align-items:center; gap:10px 26px; }
.v2-ticker-title{ font-weight:700; font-size:14.5px; color:var(--ink); }
.v2-ticker-list{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:8px 22px; flex:1 1 560px; min-width:0; }
.v2-ticker-list li{ font-size:14px; color:var(--muted); }
.v2-ticker-list a{ font-weight:700; color:var(--ink); text-decoration:none; }
.v2-ticker-list a:hover{ text-decoration:underline; }
.v2-ticker-more{ font-weight:700; font-size:14px; color:var(--rose-text); text-decoration:none; white-space:nowrap; }

/* ---------- каталоги ---------- */
.v2-cat,
.v2-collage-tile{ --cat-bg:#FFFFFF; --cat-title:var(--ink); --cat-muted:var(--muted); --cat-price:var(--rose-price);
  --cat-pill-bg:var(--sage-bg); --cat-free:var(--sage-ink); --cat-taken:#7B4452; }
.v2-tone--barbie{ --cat-bg:#F4D3DA; --cat-muted:#5A4652; --cat-pill-bg:rgba(255,255,255,.72); }
.v2-tone--oblako{ --cat-bg:#E7EFF1; --cat-muted:#46535A; --cat-pill-bg:rgba(255,255,255,.72); }
.v2-tone--temnaya{ --cat-bg:#151222; --cat-title:#F6EFE8; --cat-muted:#B7AEC2; --cat-price:#F3A2B2;
  --cat-pill-bg:rgba(255,255,255,.12); --cat-free:#D3E6C4; --cat-taken:#F3B8C4; }
.v2-tone--shokolad{ --cat-bg:#4A342A; --cat-title:#F6EFE8; --cat-muted:#D9C8BE; --cat-price:#F6B4C1;
  --cat-pill-bg:rgba(255,255,255,.14); --cat-free:#D3E6C4; --cat-taken:#F6C3CD; }

.v2-cat-grid{ margin-top:32px; display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:18px; }
.v2-cat{ border-radius:22px; overflow:hidden; display:flex; flex-direction:column; min-width:0; background:var(--cat-bg); color:var(--cat-muted); }
.v2-cat-photos{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:3px; }
.v2-cat-photos img{ width:100%; aspect-ratio:1/1; object-fit:cover; }
.v2-cat-photos img:first-child{ grid-column:span 2; grid-row:span 2; height:100%; }
.v2-cat-photos--one{ grid-template-columns:1fr; }
.v2-cat-photos--one img:first-child{ grid-column:auto; grid-row:auto; }
.v2-cat-body{ padding:18px 20px 20px; display:flex; flex-direction:column; gap:9px; flex:1; }
.v2-cat h3{ font:700 21px/1.1 var(--display); color:var(--cat-title); }
.v2-cat-tagline{ font-size:14.5px; line-height:1.45; }
.v2-cat-price{ margin-top:2px; display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 10px; }
.v2-cat-price b{ font:700 22px/1 var(--display); color:var(--cat-price); white-space:nowrap; }
.v2-cat-price span{ font-size:13px; }
.v2-cat-usage{ font-size:13px; line-height:1.4; }
.v2-cat-status{
  margin-top:2px; align-self:flex-start; display:inline-flex; align-items:center; gap:7px;
  padding:6px 11px; border-radius:999px; background:var(--cat-pill-bg); color:var(--cat-free);
  font-weight:700; font-size:13px; line-height:1.2;
}
.v2-cat-status::before{ content:""; width:8px; height:8px; border-radius:50%; background:currentColor; flex:none; }
.v2-cat-status.is-taken{ color:var(--cat-taken); }
.v2-cat-ctas{ margin-top:auto; padding-top:6px; display:flex; flex-direction:column; align-items:center; gap:10px; }
.v2-cat-link{ font-weight:700; font-size:14px; color:var(--cat-title); }

/* ---------- что внутри ---------- */
.v2-inside{ margin-top:32px; display:flex; flex-wrap:wrap; align-items:flex-start; gap:28px; }
.v2-inside-photos{ flex:1 1 560px; min-width:0; }
.v2-angles{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.v2-angles img{ width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:12px; }
.v2-angles .v2-angle-main{ grid-column:span 2; grid-row:span 2; height:100%; border-radius:16px; }
.v2-video-tile{
  grid-column:span 2; display:flex; align-items:center; gap:14px; min-width:0; padding:14px 16px;
  border:0; border-radius:12px; background:var(--ink); color:var(--on-ink);
  font:inherit; text-align:left; cursor:pointer;
}
.v2-video-tile b{ display:block; font-size:15px; }
.v2-video-tile small{ display:block; margin-top:3px; font-size:13px; line-height:1.35; color:#B7AEC2; }
.v2-play{ flex:none; width:48px; height:48px; border-radius:50%; background:var(--rose); display:flex; align-items:center; justify-content:center; transition:background .15s; }
.v2-play svg{ width:20px; height:20px; color:#FFF6F2; }
.v2-video-tile:hover .v2-play{ background:var(--rose-deep); }
.v2-inside-side{ flex:1 1 340px; min-width:0; display:flex; flex-direction:column; gap:16px; }
.v2-twins{ display:flex; align-items:center; gap:12px; padding:14px; border-radius:18px; background:var(--blush-2); }
.v2-twins img{ flex:none; width:72px; height:72px; border-radius:12px; object-fit:cover; }
.v2-twins p{ min-width:0; font-size:13.5px; line-height:1.45; color:var(--muted-2); }
.v2-twins b{ color:var(--ink); }
.v2-inside[hidden]{ display:none; }
/* «Примеры: 1 2 3 4» — переключают букет в блоке */
.v2-examples{ margin-top:26px; display:flex; flex-wrap:wrap; align-items:center; gap:10px 14px; }
.v2-examples ~ .v2-inside{ margin-top:18px; }
.v2-examples-label{ font:700 15px/1.2 var(--display); color:var(--ink); }
.v2-examples-tabs{ display:flex; flex-wrap:wrap; gap:8px; }
.v2-example{
  width:44px; height:44px; border-radius:50%; border:1.5px solid var(--line-3); background:var(--paper); color:var(--ink);
  font:700 16px/1 var(--display); cursor:pointer; transition:background .15s, border-color .15s, color .15s;
}
.v2-example:hover{ border-color:var(--ink); }
.v2-example[aria-selected="true"]{ background:var(--ink); border-color:var(--ink); color:var(--on-ink); }
.v2-example:focus-visible{ outline:3px solid var(--rose); outline-offset:2px; }

/* ---------- почему не нейросеть ---------- */
.v2-vs{ margin-top:32px; display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr)); gap:18px; }
.v2-vs-card{ border-radius:22px; padding:18px; display:flex; flex-wrap:wrap; gap:18px; min-width:0; }
.v2-vs-card > img,
.v2-vs-placeholder{ flex:1 1 170px; max-width:220px; width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:14px; }
.v2-vs-card > div:last-child{ flex:1 1 220px; min-width:0; display:flex; flex-direction:column; gap:10px; }
.v2-vs-card--real{ background:var(--paper); color:var(--text); }
.v2-vs-card--ai{ background:var(--ink-2); border:1.5px dashed #5C5370; }
.v2-vs-label{ font-weight:700; font-size:11.5px; letter-spacing:.12em; text-transform:uppercase; }
.v2-vs-card--real .v2-vs-label{ color:#4A5A3C; }
.v2-vs-card--ai .v2-vs-label{ color:#EE93A6; }
.v2-vs-card h3{ font:700 18px/1.2 var(--display); }
.v2-vs-card--real h3{ color:var(--ink); }
.v2-vs-card--ai h3{ color:var(--on-ink); }
.v2-vs-placeholder{
  border:1.5px dashed #6E6578; background:repeating-linear-gradient(135deg,#2B2440 0 12px,#241E33 12px 24px);
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; padding:16px; text-align:center;
}
.v2-vs-placeholder b{ font:700 54px/1 var(--display); color:#6E6578; }
.v2-vs-placeholder span{ font-size:13px; line-height:1.35; color:#B7AEC2; }
.v2-ticks{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; font-size:14px; line-height:1.4; }
.v2-ticks li{ display:flex; gap:9px; }
.v2-ticks svg{ flex:none; width:17px; height:17px; margin-top:1px; color:var(--sage-deep); }
.v2-vs-card--real .v2-ticks{ color:var(--muted-2); }
.v2-ticks--no{ color:var(--on-ink-muted); }
.v2-ticks--no svg{ color:#EE93A6; }
.v2-reasons{ margin-top:18px; display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr)); gap:14px; }
.v2-reasons > div{ background:var(--ink-2); border:1px solid var(--ink-line); border-radius:18px; padding:20px; display:flex; flex-direction:column; gap:8px; }
.v2-reasons h3{ font:600 16px/1.25 var(--display); color:var(--on-ink); }
.v2-reasons p{ font-size:14px; line-height:1.5; color:var(--on-ink-muted); }
.v2-ai-foot{ margin-top:22px; padding-top:18px; border-top:1px solid var(--ink-line); display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px 32px; }
.v2-ai-foot p{ flex:1 1 480px; min-width:0; max-width:700px; font-size:16.5px; line-height:1.5; color:var(--on-ink); }
.v2-sources{ margin-top:12px; font-size:12px; line-height:1.5; color:var(--on-ink-dim); }

/* ---------- результаты клиентов ---------- */
.v2-cases-head{ display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:20px 40px; }
.v2-cases-head .v2-head{ flex:1 1 520px; min-width:0; max-width:680px; }
.v2-bignums{ margin:0; display:flex; gap:28px; }
.v2-bignums dt{ font:700 40px/1 var(--display); color:var(--ink); }
.v2-bignums dd{ margin:6px 0 0; max-width:17ch; font-size:13.5px; line-height:1.35; color:var(--muted); }
.v2-cases{ margin-top:32px; display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,255px),1fr)); gap:18px; }
.v2-case{ background:#fff; border:1px solid var(--line-2); border-radius:22px; overflow:hidden; display:flex; flex-direction:column; min-width:0; }
.v2-case-shot{ display:flex; justify-content:center; padding:22px 16px; background:var(--case-bg, var(--blush)); text-decoration:none; }
/* телефон со скрином мобильной версии сайта — как на старой главной; размеры от --pw */
.v2-phone{
  --pw:168px; position:relative; display:block; flex:none; width:var(--pw); aspect-ratio:375/812;
  padding:calc(var(--pw)*.035); border-radius:calc(var(--pw)*.17); background:#0D0A14;
  box-shadow:0 22px 40px -22px rgba(27,23,38,.7), inset 0 0 0 1.5px rgba(255,255,255,.12);
  transition:transform .25s ease;
}
.v2-case-shot:hover .v2-phone{ transform:translateY(-4px); }
.v2-phone-screen{ position:relative; display:flex; flex-direction:column; width:100%; height:100%; overflow:hidden; border-radius:calc(var(--pw)*.135); background:var(--bar,#fff); }
.v2-phone-status{
  flex:none; height:calc(var(--pw)*.13); display:flex; align-items:center; justify-content:space-between;
  padding:0 calc(var(--pw)*.1) 0 calc(var(--pw)*.115); font:700 calc(var(--pw)*.058)/1 var(--body); color:#1B1726;
}
.v2-phone-status::after{ content:""; position:absolute; top:calc(var(--pw)*.03); left:50%; width:calc(var(--pw)*.3); height:calc(var(--pw)*.085); margin-left:calc(var(--pw)*-.15); border-radius:99px; background:#0D0A14; }
.v2-phone-status svg{ width:auto; height:calc(var(--pw)*.05); }
.v2-phone-screen img{ flex:1; min-height:0; width:100%; height:auto; object-fit:cover; object-position:top; }
.v2-case-body{ padding:18px 20px 20px; display:flex; flex-direction:column; gap:12px; flex:1; }
.v2-case-result{ display:flex; align-items:center; gap:12px; }
.v2-case-result > b{ font:700 32px/1 var(--display); color:var(--rose); }
.v2-case-icon svg{ display:block; width:34px; height:34px; color:var(--rose); }
.v2-case-result > span:last-child{ font-weight:700; font-size:14px; line-height:1.25; color:var(--ink); }
.v2-case blockquote{ margin:0; font-size:14.5px; line-height:1.5; color:var(--muted-2); }
.v2-case-who{ margin-top:auto; padding-top:12px; border-top:1px solid #EFE6DC; font-size:13px; line-height:1.4; color:var(--muted-3); }
.v2-case-who b{ color:var(--ink); }
.v2-case-who a{ color:var(--rose-text); }

/* ---------- сколько стоит фотобаза ---------- */
.v2-price-grid{ margin-top:30px; display:flex; flex-wrap:wrap; gap:18px; align-items:stretch; }
.v2-table-box{ flex:2 1 640px; min-width:0; display:flex; flex-direction:column; border-radius:20px; border:1.5px solid var(--line); background:var(--paper); overflow:hidden; }
.v2-table-scroll{ overflow-x:auto; }
.v2-table{ width:100%; min-width:700px; border-collapse:collapse; font-size:14.5px; line-height:1.45; color:var(--muted-2); }
.v2-table th, .v2-table td{ padding:15px 18px; text-align:left; vertical-align:top; border-top:1px solid var(--line-2); }
.v2-table thead th{ border-top:0; font:600 15px/1.3 var(--display); color:var(--ink); }
.v2-table tbody th{ width:16%; font-weight:700; color:var(--ink); }
.v2-table .v2-table-hl{ background:var(--ink); color:var(--on-ink); border-top-color:var(--ink-line); }
.v2-table-note{ margin-top:auto; padding:14px 18px 16px; border-top:1px solid var(--line-2); font-size:13.5px; line-height:1.5; color:var(--muted); }
.v2-price-side{ flex:1 1 300px; min-width:0; display:flex; flex-direction:column; gap:18px; }
.v2-per{ background:var(--paper); border-radius:20px; padding:22px; display:flex; flex-direction:column; gap:8px; }
.v2-per b{ font:700 34px/1 var(--display); color:var(--rose); }
.v2-per p{ font-size:14.5px; line-height:1.5; color:var(--muted-2); }
.v2-calc{ flex:1; margin:0; background:var(--ink); color:var(--on-ink); border-radius:20px; padding:22px; display:flex; flex-direction:column; gap:12px; }
.v2-calc-title{ font-weight:700; font-size:14px; }
.v2-calc > label{ font-size:13px; color:#B7AEC2; }
.v2-calc-growth{ margin:0; padding:0; border:0; display:flex; flex-wrap:wrap; gap:8px; }
.v2-calc-growth label, .v2-pick label{ position:relative; }
.v2-calc-growth input, .v2-pick input{ position:absolute; inset:0; width:100%; height:100%; margin:0; opacity:0; cursor:pointer; }
.v2-calc-growth span{ display:inline-flex; align-items:center; min-height:44px; padding:0 14px; border-radius:999px; border:1.5px solid var(--ink-line); color:var(--on-ink-muted); font-weight:700; font-size:14px; }
.v2-calc-growth input:checked + span{ background:var(--rose); border-color:var(--rose); color:#FFF6F2; }
.v2-calc-growth input:focus-visible + span{ outline:3px solid #F3A2B2; outline-offset:2px; }
.v2-calc-out{ font-size:14px; line-height:1.4; color:var(--on-ink-muted); }
.v2-calc-out b{ color:var(--on-ink); white-space:nowrap; }
.v2-calc-out #calcMonth{ font:700 22px/1.2 var(--display); }
.v2-calc-note{ font-size:12px; line-height:1.45; color:var(--on-ink-dim); }

/* ---------- как купить и тарифы ---------- */
.v2-steps{ list-style:none; counter-reset:step; margin:30px 0 0; padding:0; display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr)); gap:12px; }
.v2-steps li{ counter-increment:step; padding:16px 18px 18px; border-radius:18px; background:var(--blush); display:flex; flex-direction:column; gap:6px; }
.v2-steps li::before{
  content:counter(step); width:30px; height:30px; border-radius:50%; background:var(--ink); color:var(--paper);
  display:flex; align-items:center; justify-content:center; font:700 13px/1 var(--display);
}
.v2-steps li:last-child::before{ background:var(--rose); }
.v2-steps b{ font-size:15.5px; color:var(--ink); }
.v2-steps span{ font-size:13.5px; line-height:1.45; color:var(--muted-2); }
.v2-plans{ margin-top:18px; display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr)); gap:18px; align-items:stretch; }
.v2-plan{ border:1.5px solid var(--line); border-radius:22px; padding:24px; background:#fff; display:flex; flex-direction:column; gap:12px; }
.v2-plan h3{ font:700 19px/1.25 var(--display); color:var(--ink); }
.v2-plan-price{ font:700 30px/1 var(--display); color:var(--ink); }
.v2-plan-price span{ font:500 15px var(--body); color:var(--muted-3); }
.v2-plan-meta{ font-size:14px; color:var(--muted-3); }
.v2-ticks--plan{ margin-top:4px; font-size:14.5px; color:var(--muted-2); }
.v2-ticks--plan .v2-tick-no svg{ color:var(--rose-price); }
.v2-plan .v2-btn{ margin-top:auto; white-space:normal; }
.v2-plan--main{ background:var(--ink); border-color:var(--ink); color:var(--on-ink); }
.v2-plan--main h3, .v2-plan--main .v2-plan-price{ color:var(--on-ink); }
.v2-plan--main .v2-plan-meta, .v2-plan--main .v2-plan-price span{ color:#B7AEC2; }
.v2-plan--main .v2-ticks{ color:#D8D0E2; }
.v2-plan--main .v2-ticks svg{ color:#A7C08F; }
.v2-plans-foot{ margin-top:16px; display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 24px; font-size:14px; line-height:1.5; color:var(--muted); }
.v2-plans-foot a{ font-weight:700; color:var(--rose-text); }

/* ---------- вопросы ---------- */
.v2-faq{ margin-top:26px; display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr)); gap:0 48px; align-items:start; }
.v2-faq details{ border-top:1px solid #D9CBBB; }
.v2-faq summary{ position:relative; padding:18px 40px 18px 0; list-style:none; cursor:pointer; font-weight:700; font-size:17px; line-height:1.35; color:var(--ink); }
.v2-faq summary::-webkit-details-marker{ display:none; }
.v2-faq summary::after{ content:"+"; position:absolute; right:6px; top:15px; font:500 24px/1 var(--body); color:var(--rose); }
.v2-faq details[open] summary::after{ content:"−"; }
.v2-faq details p{ padding:0 0 18px; font-size:15px; line-height:1.55; color:var(--muted); }
.v2-faq details a{ font-weight:700; color:var(--rose-text); }

/* ---------- заявка ---------- */
.v2-final{ display:flex; flex-wrap:wrap; gap:36px 64px; align-items:flex-start; }
.v2-final-copy{ flex:1 1 420px; min-width:0; display:flex; flex-direction:column; gap:16px; }
.v2-final-copy .v2-h2, .v2-final-copy .v2-sub{ margin-top:0; }
.v2-taken{ margin-top:6px; border-radius:18px; border:1px solid var(--ink-line); overflow:hidden; }
.v2-taken-head{ padding:14px 18px; display:flex; flex-wrap:wrap; justify-content:space-between; gap:6px 16px; background:var(--ink-2); font-size:13.5px; color:var(--on-ink-muted); }
.v2-taken-head b{ color:var(--on-ink); }
.v2-taken dl{ margin:0; padding:4px 18px 10px; font-size:14px; line-height:1.5; }
.v2-taken dl > div{ display:flex; flex-wrap:wrap; gap:2px 14px; padding:9px 0; border-bottom:1px solid #2E2740; }
.v2-taken dl > div:last-child{ border-bottom:0; }
.v2-taken dt{ flex:0 0 116px; font-weight:700; color:var(--on-ink); }
.v2-taken dd{ margin:0; flex:1 1 240px; min-width:0; color:var(--on-ink-muted); }
.v2-direct{ display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.v2-chan{ display:inline-flex; align-items:center; gap:9px; min-height:48px; padding:0 18px; border-radius:999px; border:1.5px solid var(--ink-line); color:var(--on-ink); font-weight:700; font-size:14.5px; text-decoration:none; }
.v2-chan:hover{ border-color:#6E6578; }
.v2-chan svg{ width:18px; height:18px; flex:none; }
.v2-chan--tg svg{ color:#57A9E6; }
.v2-chan--wa svg{ color:#5BC274; }
.v2-chan--max svg{ color:#A18BFF; }
.v2-direct-phone{ font-size:14.5px; color:var(--on-ink-muted); }
.v2-direct-phone a{ color:var(--on-ink); font-weight:700; text-decoration:none; white-space:nowrap; }

.v2-lead{ position:relative; flex:1 1 400px; min-width:0; margin:0; padding:26px; border-radius:24px; background:var(--paper); color:var(--text); display:flex; flex-direction:column; gap:14px; }
.v2-lead-title{ font:700 20px/1.2 var(--display); color:var(--ink); }
.v2-field{ min-width:0; display:flex; flex-direction:column; gap:6px; }
.v2-field-row .v2-field{ flex:1 1 180px; }
.v2-field label{ font-weight:700; font-size:14px; color:var(--ink); }
.v2-field-row{ display:flex; flex-wrap:wrap; gap:14px; }
.v2-field.has-error .v2-input{ border-color:var(--rose); }
.v2-field-err{ font-size:13px; line-height:1.35; color:var(--rose-deep); }
.v2-pick{ margin:0; padding:0; border:0; min-width:0; }
.v2-pick legend{ padding:0; margin-bottom:8px; font-weight:700; font-size:14px; color:var(--ink); }
.v2-pick-row{ display:flex; flex-wrap:wrap; gap:8px; }
.v2-pick span{ display:inline-flex; align-items:center; min-height:44px; padding:0 14px; border-radius:999px; border:1.5px solid var(--line-3); background:#fff; color:var(--muted-2); font-weight:600; font-size:14px; }
.v2-pick input:checked + span{ border-color:var(--ink); background:var(--ink); color:var(--paper); }
.v2-pick input:focus-visible + span{ outline:3px solid var(--rose); outline-offset:2px; }
.v2-consent{ font-size:12.5px; line-height:1.45; color:var(--muted-3); }
.v2-consent a{ color:inherit; }
.v2-lead-result{ display:flex; flex-direction:column; gap:2px; padding:14px 16px; border-radius:14px; font-size:14.5px; line-height:1.45; }
.v2-lead-result.is-ok{ background:var(--sage-bg); color:var(--sage-ink); }
.v2-lead-result.is-fail{ background:#FBE7EA; color:#8E2239; }
.v2-hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }

/* ---------- подвал ---------- */
.v2-footer{ background:var(--ink-3); color:#B7AEC2; padding-block:28px; }
.v2-footer-row{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px 32px; font-size:13.5px; line-height:1.5; }
.v2-footer-links{ display:flex; flex-wrap:wrap; gap:8px 24px; }
.v2-footer-links a{ color:var(--on-ink); font-weight:600; text-decoration:none; }
.v2-footer-links a:hover{ text-decoration:underline; }

/* ---------- липкая кнопка на телефоне ---------- */
.v2-bar{ display:none; }
.v2-bar-tg{ flex:0 0 48px; height:48px; border-radius:50%; background:#2B2440; display:flex; align-items:center; justify-content:center; color:#57A9E6; }
.v2-bar-tg svg{ width:20px; height:20px; }

/* ---------- окно с видео ---------- */
.v2-video{ width:min(92vw,520px); max-height:92vh; padding:0; border:0; border-radius:20px; background:var(--ink); color:var(--on-ink); overflow:hidden; }
.v2-video::backdrop{ background:rgba(15,12,22,.78); }
.v2-video-title{ padding:16px 60px 12px 18px; font-weight:700; font-size:15px; }
.v2-video video{ display:block; width:100%; max-height:80vh; background:#000; }
.v2-video-close-form{ position:absolute; top:8px; right:8px; margin:0; }
.v2-video-close{ width:40px; height:40px; border:0; border-radius:50%; background:rgba(255,255,255,.12); color:var(--on-ink); display:flex; align-items:center; justify-content:center; cursor:pointer; }
.v2-video-close svg{ width:18px; height:18px; }

/* ---------- телефон ---------- */
@media (max-width:640px){
  .v2-hero-media{ order:-1; flex-basis:100%; padding-bottom:0; }
  .v2-hero-copy{ gap:16px; }
  .v2-check{ padding:14px; }
  .v2-check-row{ gap:8px; }
  .v2-check-row .v2-btn{ padding:0 18px; }
  .v2-collage{ grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; }
  .v2-collage-tile{ aspect-ratio:3/4; border-radius:12px; }
  .v2-collage-tile:nth-child(even){ transform:none; }
  .v2-collage-tile figcaption{ display:none; }
  .v2-techcard--float{ display:none; }

  .v2-cat-grid, .v2-cases{
    grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:84%;
    overflow-x:auto; scroll-snap-type:x mandatory; overscroll-behavior-x:contain;
    margin-inline:calc(var(--gutter) * -1); padding-inline:var(--gutter); scroll-padding-inline:var(--gutter);
    padding-bottom:8px; scrollbar-width:none;
  }
  .v2-cat-grid::-webkit-scrollbar, .v2-cases::-webkit-scrollbar{ display:none; }
  .v2-cat, .v2-case{ scroll-snap-align:start; }

  .v2-steps li{ display:grid; grid-template-columns:30px 1fr; column-gap:12px; row-gap:2px; padding:14px 16px; }
  .v2-steps li::before{ grid-row:span 2; }
  .v2-bignums{ gap:22px; }
  .v2-bignums dt{ font-size:34px; }
  .v2-lead{ padding:20px; }
  .v2-faq summary{ font-size:16px; }

  .v2-bar{
    position:fixed; left:12px; right:12px; bottom:calc(12px + env(safe-area-inset-bottom,0px)); z-index:60;
    display:flex; gap:8px; padding:8px; border-radius:999px; background:rgba(27,23,38,.96);
    box-shadow:0 12px 30px -10px rgba(27,23,38,.6); transition:transform .25s ease, opacity .25s ease;
  }
  .v2-bar .v2-btn{ flex:1; min-height:48px; }
  .v2-bar.is-hidden{ transform:translateY(130%); opacity:0; pointer-events:none; }
  .v2-footer{ padding-bottom:calc(96px + env(safe-area-inset-bottom,0px)); }
}
@media (prefers-reduced-motion:reduce){ .v2-bar{ transition:none; } }
