/* zavedeniyam.css — «Заведениям» /zavedeniyam of the MOS-HOOKAH demo (018, build P6, agent venues, 28.09).
   Skeleton tl consulting: hero → who it is for (five venue types as tabs, tl menu switcher) → what we take on
   (tl catering B4: list + a pair of overlapping photos) → on your own or with us (S02 logic) → numbers (S01) and five
   cooperation models with big numbers (tl consulting packages) → turnkey zone tabs over the R17 photo → Colizeum case
   (S01 numbers) → owner questions → a live person with QR + three-field form.
   Units: calc(N * var(--u)); px only for 1px lines. Motion: transform and opacity only (reduced motion — base.css). */

body[data-page="zavedeniyam"] { background: var(--bg); }

/* ---------- 8.B1 hero ---------- */
.zv-hero { position: relative; height: 100vh; min-height: calc(720 * var(--u)); overflow: hidden; background: var(--bg); }
.zv-hero__bg { position: absolute; inset: 0; will-change: transform; }
.zv-hero__bg .ph { position: absolute; inset: 0; background: var(--bg); }
.zv-hero__bg img { object-position: 12% 50%; }
.zv-hero__bg::after { content: ""; position: absolute; inset: 0; pointer-events: none;
  background:
    linear-gradient(90deg, rgba(11,11,12,.95) 0%, rgba(11,11,12,.8) 28%, rgba(11,11,12,.42) 50%, rgba(11,11,12,0) 70%),
    linear-gradient(0deg, rgba(11,11,12,.92) 0%, rgba(11,11,12,.35) 22%, rgba(11,11,12,0) 42%),
    linear-gradient(180deg, rgba(11,11,12,.6) 0%, rgba(11,11,12,0) 20%); }
.zv-hero__in { position: relative; z-index: 2; height: 100%; display: flex; align-items: flex-end; padding-bottom: calc(104 * var(--u)); }
.zv-hero__txt { width: calc(760 * var(--u)); will-change: transform; }
.zv-hero__h { margin-top: calc(22 * var(--u)); }
.zv-hero__sub { margin-top: calc(26 * var(--u)); max-width: calc(560 * var(--u)); }
.zv-hero__cta { margin-top: calc(40 * var(--u)); display: flex; align-items: center; gap: calc(30 * var(--u)); }
.zv-hero__scroll { position: absolute; z-index: 2; left: 50%; bottom: calc(34 * var(--u)); transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: 12px; letter-spacing: .3em; text-transform: uppercase; color: var(--text-3); }
.zv-hero__scroll i { display: block; width: 1px; height: calc(46 * var(--u)); background: linear-gradient(var(--cyan), transparent); transform-origin: top; animation: zv-drip 2.4s var(--ease) infinite; }
@keyframes zv-drip { 0% { transform: scaleY(0); opacity: 1; } 60% { transform: scaleY(1); opacity: 1; } 100% { transform: scaleY(1); opacity: 0; } }

/* ---------- 8.B2 who it is for: tabs + stage ---------- */
.zv-seg { position: relative; background: var(--bg); padding-top: calc(150 * var(--u)); }
.zv-seg__head { text-align: center; }
.zv-seg__head .h1 { margin: calc(18 * var(--u)) auto 0; max-width: calc(980 * var(--u)); }
.zv-seg__head .txt { margin: calc(24 * var(--u)) auto 0; max-width: calc(640 * var(--u)); }
.zv-seg__tabs { margin-top: calc(64 * var(--u)); display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); }
.zv-seg__tab { position: relative; display: flex; align-items: baseline; gap: calc(12 * var(--u)); padding: calc(22 * var(--u)) calc(14 * var(--u)) calc(24 * var(--u)) 0;
  text-align: left; font-size: var(--t-xs); letter-spacing: .2em; text-transform: uppercase; font-weight: 600; color: var(--text-3); border-top: 1px solid var(--line-2); transition: none; }
.zv-seg__tab::before { content: ""; position: absolute; left: 0; right: 0; top: -1px; height: 1px; background: var(--grad); transform: scaleX(0); transform-origin: left; transition: transform .8s var(--ease); }
.zv-seg__tab b { font-size: calc(13 * var(--u)); letter-spacing: .08em; color: var(--text-3); transition: none; }
.zv-seg__tab:hover { color: var(--text-2); }
.zv-seg__tab.is-on { color: var(--text); }
.zv-seg__tab.is-on::before { transform: none; }
.zv-seg__tab.is-on b { color: var(--cyan); }
.zv-seg__stage { position: relative; height: min(100vh, calc(840 * var(--u))); min-height: calc(640 * var(--u)); overflow: hidden; background: var(--bg-3); }
.zv-seg__pane { position: absolute; inset: 0; opacity: 0; transition: opacity .9s var(--ease); pointer-events: none; }
.zv-seg__pane.is-on { opacity: 1; pointer-events: auto; z-index: 1; }
.zv-seg__img { position: absolute; inset: 0; overflow: hidden; background: var(--bg-3); }
.zv-seg__img img { width: 100%; height: 100%; object-fit: cover; object-position: 30% 50%; transform: scale(1.07); transition: transform 2.2s var(--ease); }
.zv-seg__pane.is-on .zv-seg__img img { transform: scale(1); }
.zv-seg__img::after { content: ""; position: absolute; inset: 0; pointer-events: none;
  background:
    linear-gradient(270deg, rgba(11,11,12,.93) 0%, rgba(11,11,12,.8) 30%, rgba(11,11,12,.25) 55%, rgba(11,11,12,0) 70%),
    linear-gradient(0deg, rgba(11,11,12,.7) 0%, rgba(11,11,12,0) 36%),
    linear-gradient(180deg, rgba(11,11,12,.55) 0%, rgba(11,11,12,0) 18%); }
.zv-seg__in { position: relative; height: 100%; align-items: center; }
.zv-seg__txt { grid-column: 8 / span 5; }
.zv-seg__txt > * { opacity: 0; transform: translateY(26px); transition: opacity .8s var(--ease), transform .9s var(--ease); }
.zv-seg__pane.is-on .zv-seg__txt > * { opacity: 1; transform: none; }
.zv-seg__pane.is-on .zv-seg__txt > :nth-child(2) { transition-delay: .08s; }
.zv-seg__pane.is-on .zv-seg__txt > :nth-child(3) { transition-delay: .2s; }
.zv-seg__pane.is-on .zv-seg__txt > :nth-child(4) { transition-delay: .32s; }
.zv-seg__n { font-size: calc(15 * var(--u)); letter-spacing: .2em; color: var(--cyan); }
.zv-seg__name { margin-top: calc(14 * var(--u)); }
.zv-seg__arg { margin-top: calc(22 * var(--u)); color: var(--text); max-width: calc(520 * var(--u)); }
.zv-seg__facts { margin: calc(40 * var(--u)) 0 0; display: grid; grid-template-columns: 1fr 1fr; gap: var(--gap); }
.zv-seg__facts div { padding-top: calc(18 * var(--u)); border-top: 1px solid var(--line-2); }
.zv-seg__facts dt { font-size: calc(34 * var(--u)); line-height: 1; white-space: nowrap; }
.zv-seg__facts dd { margin: calc(12 * var(--u)) 0 0; font-size: var(--t-s); line-height: 1.5; color: var(--text-2); }

/* ---------- 8.B3 what we take on ---------- */
.zv-take { background: var(--bg-2); }
.zv-take__head { text-align: center; }
.zv-take__head .h1 { margin: calc(18 * var(--u)) auto 0; max-width: calc(980 * var(--u)); }   /* scaleX(1.1) before the reveal stays inside the page */
.zv-take__head .txt { margin: calc(24 * var(--u)) auto 0; max-width: calc(720 * var(--u)); }
.zv-take__in { margin-top: calc(90 * var(--u)); align-items: start; }
.zv-take__pair { grid-column: 1 / span 6; position: relative; padding-bottom: calc(150 * var(--u)); }
.zv-take__big { width: 86%; will-change: transform; }
.zv-take__big .ph { aspect-ratio: 4 / 3; }
.zv-take__small { position: absolute; right: 0; bottom: 0; width: 48%; z-index: 2; will-change: transform; }
.zv-take__small .ph { aspect-ratio: 4 / 3; box-shadow: 0 30px 70px rgba(0,0,0,.6); outline: 1px solid var(--line); }
.zv-take__small img { object-position: 92% 50%; }   /* the row of hookahs at the counter, not the sofas */
.zv-take__list { grid-column: 8 / span 5; counter-reset: t; }
.zv-take__list li { display: grid; grid-template-columns: calc(54 * var(--u)) 1fr; gap: calc(12 * var(--u)); padding: calc(24 * var(--u)) 0; border-top: 1px solid var(--line); }
.zv-take__list li:last-child { border-bottom: 1px solid var(--line); }
.zv-take__list .num { font-size: calc(15 * var(--u)); color: var(--cyan); letter-spacing: .1em; padding-top: 2px; }
.zv-take__list p { margin-top: calc(10 * var(--u)); font-size: var(--t-s); line-height: 1.55; color: var(--text-2); max-width: calc(460 * var(--u)); }

/* ---------- 8.B4 on your own or with us ---------- */
.zv-vs { background: var(--bg); }
.zv-vs__head { text-align: center; }
.zv-vs__head .h1 { margin: calc(18 * var(--u)) auto 0; max-width: calc(1040 * var(--u)); }
.zv-vs__head .txt { margin: calc(24 * var(--u)) auto 0; max-width: calc(680 * var(--u)); }
.zv-vs__t { --lab: calc(230 * var(--u)); position: relative; margin: calc(72 * var(--u)) auto 0; max-width: calc(1180 * var(--u)); }
.zv-vs__hl { position: absolute; top: 0; bottom: 0; right: 0; left: calc(var(--lab) + (100% - var(--lab)) / 2); pointer-events: none;
  background: radial-gradient(90% 70% at 50% 0%, rgba(153,33,255,.18), rgba(66,207,245,.04) 60%, rgba(0,0,0,0)); }
.zv-vs__hl::before { content: ""; position: absolute; inset: 0; padding: 1px; background: var(--grad);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor;
  mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0); opacity: .9; }
.zv-vs__tab { position: relative; width: 100%; border-collapse: collapse; table-layout: fixed; }
.zv-vs__tab col, .zv-vs__tab tr > :first-child { width: var(--lab); }
.zv-vs__tab th, .zv-vs__tab td { text-align: left; vertical-align: middle; padding: calc(26 * var(--u)) calc(34 * var(--u)); border-top: 1px solid var(--line); font-weight: 400; }
.zv-vs__tab thead th, .zv-vs__tab thead td { border-top: 0; padding-top: calc(38 * var(--u)); padding-bottom: calc(30 * var(--u)); font-size: var(--t-h4); line-height: 1.3; letter-spacing: .06em; text-transform: uppercase; font-weight: 600; }
.zv-vs__tab tbody th { padding-left: 0; font-size: var(--t-xs); letter-spacing: .24em; text-transform: uppercase; font-weight: 600; color: var(--text-3); }
.zv-vs__tab td { font-size: calc(17 * var(--u)); line-height: 1.4; }
.zv-vs__tab .zv-vs__self { color: var(--text-3); }
.zv-vs__tab thead .zv-vs__self { color: var(--text-2); }
.zv-vs__tab .zv-vs__us { color: var(--text); }
.zv-vs__tab tbody .zv-vs__self, .zv-vs__tab tbody .zv-vs__us { position: relative; padding-left: calc(64 * var(--u)); }
.zv-vs__tab tbody .zv-vs__self::before { content: ""; position: absolute; left: calc(32 * var(--u)); top: 50%; width: calc(14 * var(--u)); height: 1px; background: var(--text-3); }
.zv-vs__tab tbody .zv-vs__us::before { content: ""; position: absolute; left: calc(32 * var(--u)); top: 50%; width: calc(14 * var(--u)); height: calc(7 * var(--u)); margin-top: calc(-6 * var(--u));
  border-left: 1.5px solid var(--cyan); border-bottom: 1.5px solid var(--cyan); transform: rotate(-45deg); }
.zv-vs__tab tbody tr:last-child > * { padding-bottom: calc(36 * var(--u)); }

/* ---------- 8.B5 numbers + five models ---------- */
.zv-mod { background: var(--bg-2); }
.zv-nums { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.zv-nums > div { display: flex; flex-direction: column; align-items: center; text-align: center; padding: calc(44 * var(--u)) calc(22 * var(--u)) calc(40 * var(--u)); border-left: 1px solid var(--line); }
.zv-nums > div:first-child { border-left: 0; }
.zv-nums__v { font-size: calc(54 * var(--u)); line-height: 1; white-space: nowrap; }
.zv-nums > div:first-child .zv-nums__v { background: var(--grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.zv-nums .small { margin-top: calc(16 * var(--u)); max-width: calc(250 * var(--u)); color: var(--text-2); }
.zv-mod__head { margin-top: calc(130 * var(--u)); align-items: end; row-gap: calc(24 * var(--u)); }
.zv-mod__h { grid-column: 1 / span 6; }
.zv-mod__h .h1 { margin-top: calc(18 * var(--u)); }
.zv-mod__lead { grid-column: 8 / span 5; }
.zv-mod__lead .lead { color: var(--text); }
.zv-mod__lead .txt { margin-top: calc(14 * var(--u)); font-size: var(--t-s); }
.zv-pk { margin-top: calc(64 * var(--u)); border-bottom: 1px solid var(--line); }
.zv-pk__i { position: relative; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--gap); align-items: start; padding: calc(38 * var(--u)) 0; border-top: 1px solid var(--line); }
.zv-pk__i::before { content: ""; position: absolute; left: 0; right: 0; top: -1px; height: 1px; background: var(--grad); transform: scaleX(0); transform-origin: left; transition: transform .9s var(--ease); }
.zv-pk__i::after { content: ""; position: absolute; inset: 0 calc(-1 * var(--pad)); background: linear-gradient(90deg, rgba(153,33,255,.09), rgba(66,207,245,.03) 60%, rgba(0,0,0,0)); opacity: 0; transition: opacity .6s var(--ease); pointer-events: none; z-index: 0; }
.zv-pk__i > * { position: relative; z-index: 1; }
.zv-pk__i:hover::before { transform: none; }
.zv-pk__i:hover::after { opacity: 1; }
.zv-pk__n { grid-column: 1 / span 2; position: relative; display: block; font-size: calc(104 * var(--u)); line-height: .82; }
.zv-pk__n b { display: block; font-weight: 700; transition: opacity .6s var(--ease), transform .8s var(--ease); }
.zv-pk__n b + b { position: absolute; left: 0; top: 0; opacity: 0; }
.zv-pk__i:hover .zv-pk__n b { transform: translateX(calc(10 * var(--u))); }
.zv-pk__i:hover .zv-pk__n b:first-child { opacity: 0; }
.zv-pk__i:hover .zv-pk__n b + b { opacity: 1; }
.zv-pk__main { grid-column: 3 / span 3; padding-top: calc(6 * var(--u)); }
.zv-pk__tag { font-size: var(--t-xs); letter-spacing: .24em; text-transform: uppercase; color: var(--cyan); font-weight: 600; margin-bottom: calc(12 * var(--u)); }
.zv-pk__d { grid-column: 6 / span 4; padding-top: calc(6 * var(--u)); color: var(--text-2); max-width: calc(440 * var(--u)); }
.zv-pk__side { grid-column: 10 / span 3; padding-top: calc(6 * var(--u)); display: flex; flex-direction: column; align-items: flex-start; gap: calc(18 * var(--u)); }
.zv-pk__who { font-size: var(--t-s); line-height: 1.5; color: var(--text-2); }
.zv-pk__who span { display: block; margin-bottom: 6px; font-size: var(--t-xs); letter-spacing: .22em; text-transform: uppercase; color: var(--text-3); font-weight: 600; }
.zv-pk__go { font-size: var(--t-xs); letter-spacing: .2em; text-transform: uppercase; font-weight: 600; color: var(--text); }

/* ---------- 8.B6 turnkey zone: photo banner + six tabs ---------- */
.zv-zona { position: relative; background: var(--bg); padding-bottom: calc(150 * var(--u)); }
.zv-zona__ban { position: relative; height: min(100vh, 56.25vw); min-height: calc(660 * var(--u)); overflow: hidden; background: var(--bg-3); }
.zv-zona__bg { position: absolute; inset: calc(-70 * var(--u)) 0; will-change: transform; }
.zv-zona__bg .ph { position: absolute; inset: 0; }
.zv-zona__bg img { object-position: 60% 50%; }
.zv-zona__ban::after { content: ""; position: absolute; inset: 0; pointer-events: none;
  background:
    linear-gradient(90deg, rgba(11,11,12,.9) 0%, rgba(11,11,12,.7) 28%, rgba(11,11,12,.2) 50%, rgba(11,11,12,0) 64%),
    linear-gradient(0deg, rgba(11,11,12,1) 0%, rgba(11,11,12,.55) 18%, rgba(11,11,12,0) 44%),
    linear-gradient(180deg, rgba(11,11,12,.6) 0%, rgba(11,11,12,0) 22%); }
.zv-zona__cap { position: relative; z-index: 1; height: 100%; display: flex; align-items: flex-end; padding-bottom: calc(80 * var(--u)); }
.zv-zona__head { width: calc(600 * var(--u)); }
.zv-zona__head .h1 { margin-top: calc(18 * var(--u)); }
.zv-zona__head .txt { margin-top: calc(24 * var(--u)); color: var(--text-2); max-width: calc(520 * var(--u)); }
.zv-zona__head .btn { margin-top: calc(36 * var(--u)); }
.zv-zona__in { margin-top: calc(90 * var(--u)); align-items: start; }
.zv-zona__tabs { grid-column: 1 / span 5; display: grid; }
.zv-zona__tab { position: relative; display: grid; grid-template-columns: calc(52 * var(--u)) 1fr calc(22 * var(--u)); align-items: center; gap: calc(10 * var(--u)); padding: calc(20 * var(--u)) 0;
  text-align: left; font-size: calc(15 * var(--u)); letter-spacing: .06em; text-transform: uppercase; color: var(--text-3); border-bottom: 1px solid var(--line); transition: none; }
.zv-zona__tab:first-child { border-top: 1px solid var(--line); }
.zv-zona__tab b { font-size: calc(13 * var(--u)); letter-spacing: .1em; font-weight: 700; transition: none; }
.zv-zona__tab span { transition: transform .6s var(--ease); }
.zv-zona__tab i { position: relative; height: 1px; background: currentColor; opacity: 0; transform: translateX(-10px); transition: opacity .4s var(--ease), transform .6s var(--ease); }
.zv-zona__tab i::after { content: ""; position: absolute; right: 0; top: -3px; width: 7px; height: 7px; border-top: 1px solid currentColor; border-right: 1px solid currentColor; transform: rotate(45deg); }
.zv-zona__tab::before { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 1px; background: var(--grad); transform: scaleX(0); transform-origin: left; }
.zv-zona__tab:hover { color: var(--text-2); }
.zv-zona__tab.is-on { color: var(--text); }
.zv-zona__tab.is-on b { color: var(--cyan); }
.zv-zona__tab.is-on span { transform: translateX(calc(6 * var(--u))); }
.zv-zona__tab.is-on i { opacity: 1; transform: none; }
.zv-zona__tab.is-on::before { transform: none; transition: transform .8s var(--ease); }
.zv-zona__in.is-auto .zv-zona__tab.is-on::before { transform: scaleX(0); animation: zv-fill var(--auto, 6.5s) linear forwards; }
@keyframes zv-fill { to { transform: scaleX(1); } }
.zv-zona__right { grid-column: 7 / span 6; display: flex; flex-direction: column; align-self: stretch; }
.zv-zona__panes { display: grid; margin-bottom: calc(34 * var(--u)); }
.zv-zona__pane { grid-area: 1 / 1; opacity: 0; transform: translateY(16px); transition: opacity .6s var(--ease), transform .8s var(--ease); pointer-events: none; }
.zv-zona__pane.is-on { opacity: 1; transform: none; pointer-events: auto; }
.zv-zona__pn { font-size: calc(120 * var(--u)); line-height: .85; background: var(--grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.zv-zona__pt { margin-top: calc(26 * var(--u)); }
.zv-zona__pane .lead { margin-top: calc(18 * var(--u)); max-width: calc(560 * var(--u)); }
.zv-zona__note { margin-top: auto; padding-top: calc(22 * var(--u)); border-top: 1px solid var(--line); max-width: calc(560 * var(--u)); }

/* ---------- Colizeum case + the client's B2B venues ---------- */
.zv-case { background: var(--bg); }
.zv-case__in { align-items: end; }
.zv-case__ph { grid-column: 1 / span 7; }
.zv-case__ph .ph { aspect-ratio: 16 / 10; }
.zv-case__txt { grid-column: 9 / span 4; }
.zv-case__txt .h1 { margin-top: calc(18 * var(--u)); font-family: var(--f-disp); font-weight: 700; font-size: calc(64 * var(--u)); letter-spacing: .01em; text-transform: none; }
.zv-case__sub { margin-top: calc(14 * var(--u)); font-size: var(--t-xs); letter-spacing: .24em; text-transform: uppercase; color: var(--text-2); font-weight: 600; }
.zv-case__q { margin: calc(30 * var(--u)) 0 0; font-size: calc(19 * var(--u)); line-height: 1.45; color: var(--text); padding-left: calc(22 * var(--u)); border-left: 1px solid var(--violet); }
.zv-case__src { margin-top: calc(22 * var(--u)); }
.zv-case__src .lnk { color: var(--text-2); }
.zv-case__nums { margin: calc(70 * var(--u)) 0 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.zv-case__nums > div { padding: calc(40 * var(--u)) calc(30 * var(--u)) calc(36 * var(--u)); border-left: 1px solid var(--line); }
.zv-case__nums > div:first-child { border-left: 0; padding-left: 0; }
.zv-case__nums dt { font-size: calc(120 * var(--u)); line-height: .9; }
.zv-unit { font-size: .46em; margin-left: .08em; letter-spacing: 0; }
.zv-case__nums dd { margin: calc(18 * var(--u)) 0 0; font-size: var(--t-m); color: var(--text-2); }
.zv-refs { margin-top: calc(130 * var(--u)); row-gap: calc(24 * var(--u)); align-items: stretch; }
.zv-refs__head { grid-column: 1 / span 4; }
.zv-refs__head .h2 { margin-top: calc(18 * var(--u)); }
.zv-refs__head .txt { margin-top: calc(22 * var(--u)); font-size: var(--t-s); }
.zv-ref { grid-column: span 4; padding: calc(34 * var(--u)); border: 1px solid var(--line); background: linear-gradient(160deg, rgba(153,33,255,.08), rgba(66,207,245,.03)); }
.zv-refs__head + .zv-ref { grid-column: 5 / span 4; }
.zv-ref__kind { font-size: var(--t-xs); letter-spacing: .24em; text-transform: uppercase; color: var(--cyan); font-weight: 600; }
.zv-ref__t { margin-top: calc(10 * var(--u)); }
.zv-ref__d { margin-top: calc(14 * var(--u)); font-size: var(--t-s); line-height: 1.55; color: var(--text-2); }
.zv-ref__dl { margin: calc(22 * var(--u)) 0 0; }
.zv-ref__dl div { padding: calc(14 * var(--u)) 0; border-top: 1px solid var(--line); }
.zv-ref__dl dt { font-size: var(--t-xs); letter-spacing: .24em; text-transform: uppercase; color: var(--text-3); font-weight: 600; }
.zv-ref__dl dd { margin: 6px 0 0; font-size: var(--t-s); line-height: 1.5; }

/* ---------- 8.B7 questions ---------- */
.zv-faq { background: var(--bg-2); border-top: 1px solid var(--line); }
.zv-faq__head { grid-column: 1 / span 4; position: sticky; top: calc(var(--hdr) + 30 * var(--u)); align-self: start; }
.zv-faq__head .h1 { margin-top: calc(18 * var(--u)); }
.zv-faq__head .txt { margin-top: calc(26 * var(--u)); font-size: var(--t-s); max-width: calc(360 * var(--u)); }
.zv-nw { white-space: nowrap; }
.zv-faq__go { display: inline-block; margin-top: calc(22 * var(--u)); color: var(--text); letter-spacing: .06em; }
.zv-faq__list { grid-column: 6 / span 7; }

/* ---------- 8.B8 calculation: manager + form ---------- */
.zv-calc { background: radial-gradient(70% 90% at 78% 40%, rgba(153,33,255,.13), rgba(0,0,0,0) 62%), var(--bg); border-top: 1px solid var(--line); }
.zv-calc__in { align-items: start; row-gap: calc(60 * var(--u)); }
.zv-calc__info { grid-column: 1 / span 6; }
.zv-calc__info .h1 { margin-top: calc(18 * var(--u)); }
.zv-calc__info .txt { margin-top: calc(24 * var(--u)); max-width: calc(520 * var(--u)); }
.zv-mgr { margin-top: calc(48 * var(--u)); display: flex; align-items: center; gap: calc(30 * var(--u)); padding: calc(26 * var(--u)); border: 1px solid var(--line); max-width: calc(600 * var(--u)); background: rgba(20,20,20,.5); }
.zv-mgr__qr { flex: none; display: block; width: calc(132 * var(--u)); padding: calc(10 * var(--u)); background: #0b0b0c; border: 1px solid var(--line-2); transition: none; }
.zv-mgr__qr:hover { border-color: var(--cyan); }
.zv-mgr__qr img { width: 100%; height: auto; }
.zv-mgr__name { font-size: var(--t-h3); line-height: 1.2; letter-spacing: .05em; text-transform: uppercase; }
.zv-mgr__role { margin-top: 6px; font-size: var(--t-xs); letter-spacing: .22em; text-transform: uppercase; color: var(--cyan); font-weight: 600; }
.zv-mgr__links { margin-top: calc(16 * var(--u)); display: flex; flex-wrap: wrap; gap: calc(8 * var(--u)) calc(22 * var(--u)); font-size: var(--t-m); }
.zv-mgr .small { margin-top: calc(12 * var(--u)); }
.zv-form { grid-column: 8 / span 5; position: relative; padding: calc(42 * var(--u)) calc(44 * var(--u)) calc(38 * var(--u)); border: 1px solid var(--line-2); background: rgba(20,20,20,.82);
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
.zv-form .over { margin-bottom: calc(22 * var(--u)); }
.zv-form .fld { margin-bottom: calc(20 * var(--u)); }
.zv-form__chip { display: flex; align-items: center; gap: 8px; width: max-content; max-width: 100%; margin: calc(-6 * var(--u)) 0 calc(20 * var(--u)); padding: 8px 10px 8px 14px; border: 1px solid var(--cyan);
  font-size: var(--t-xs); letter-spacing: .14em; text-transform: uppercase; color: var(--text-2); }
.zv-form__chip b { color: var(--cyan); font-weight: 600; }
.zv-form__chip button { width: 22px; height: 22px; display: grid; place-items: center; font-size: 15px; line-height: 1; color: var(--text-2); }
.zv-form__chip button:hover { color: var(--text); }
.zv-form__chip[hidden], .zv-form [hidden] { display: none; }
.zv-form__go { margin-top: calc(14 * var(--u)); }
.zv-form__note { margin-top: calc(16 * var(--u)); }
.zv-form__note .lnk { color: var(--text-2); }
.zv-form__done { animation: zv-in .9s var(--ease) both; }
.zv-form__thanks { margin-top: calc(14 * var(--u)); }
.zv-form__done .lead { margin-top: calc(18 * var(--u)); }
.zv-form__done .lnk { display: inline-block; margin-top: calc(26 * var(--u)); color: var(--text); }
@keyframes zv-in { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }

/* an image that is not there yet (generation in progress) leaves a quiet dark frame, not a broken-image icon */
img.is-broken { opacity: 0 !important; }

/* screenshot mode: final states, no scroll-driven offsets */
html.shot .zv-hero__bg, html.shot .zv-hero__txt, html.shot .zv-take__big, html.shot .zv-take__small, html.shot .zv-zona__bg { transform: none !important; }
