/* BeAngler — Aqua Light стиль для статичних сторінок опензони (content-сервіс).
 *
 * Самодостатній стиль сторінок фіч/лендінгу (піксель-в-піксель з прототипом
 * landing-variants). НЕ чіпає openzone.css (його ще ділять сторінки водойм,
 * legal та affiliate) — ті лишаються на старому шелі до окремої міграції.
 * Рендер підставляє <link> на цей файл лише для сторінок, переведених на новий вигляд.
 */

  /* ============ Дизайн-токени — Aqua Light ============ */
  :root{
    --bg:          #ffffff;
    --bg-2:        #f4faf9;
    --panel:       #ffffff;
    --deep:        #eef7f6;
    --teal:        #0d7377;
    --teal-2:      #14919b;
    --aqua:        #0ad1c8;
    --aqua-ink:    #068a84;   /* темніша аква для тексту на білому */
    --mint:        #eafffe;
    --ink:         #0b2e30;
    --ink-soft:    #47686a;
    --ink-faint:   #7a9a9a;
    --border:      #dce9e8;
    --border-2:    #bfe3e0;
    --danger:      #dc2626;
    --phone-chrome: #0b565a;
    --radius-lg: 26px;
    --radius-md: 18px;
    --radius-sm: 12px;
    --container: 1180px;
    --header-h: 72px;
    --font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    --font-mono: ui-monospace, SFMono-Regular, Menlo, monospace;
    --shadow-sm: 0 2px 10px rgba(6,60,62,.06);
    --shadow-md: 0 16px 40px rgba(6,60,62,.10);
  }
  *,*::before,*::after{ box-sizing:border-box; }
  [hidden]{ display:none !important; }
  html{ scroll-behavior:smooth; }
  html,body{ margin:0; padding:0; max-width:100%; overflow-x:hidden; }
  body{ background:var(--bg); color:var(--ink);
    font-family:var(--font); line-height:1.55; -webkit-font-smoothing:antialiased; }
  img,svg{ max-width:100%; display:block; }
  a{ color:inherit; text-decoration:none; }
  ul{ list-style:none; margin:0; padding:0; }
  button{ font:inherit; color:inherit; background:none; border:none; cursor:pointer;
    appearance:none; -webkit-appearance:none; -moz-appearance:none; outline-offset:0; }
  input{ font:inherit; color:inherit; appearance:none; -webkit-appearance:none; -moz-appearance:none; }
  h1,h2,h3,h4,p{ margin:0; }
  h1,h2,h3{ font-family:var(--font); font-weight:800; letter-spacing:-.02em; line-height:1.09; }
  section{ scroll-margin-top:calc(var(--header-h) + 12px); }
  :focus-visible{ outline:2px solid var(--aqua-ink); outline-offset:3px; border-radius:6px; }

  .container{ max-width:var(--container); margin:0 auto; padding-inline:20px; }
  @media (min-width:768px){ .container{ padding-inline:32px; } }

  .mono{ font-family:var(--font-mono); }
  .eyebrow{ display:inline-flex; align-items:center; gap:9px; font-family:var(--font-mono);
    font-size:.74rem; font-weight:500; letter-spacing:.22em; text-transform:uppercase; color:var(--aqua-ink); }
  .eyebrow::before{ content:""; width:22px; height:1px; background:linear-gradient(90deg,transparent,var(--aqua)); }
  .eyebrow.on-photo{ color:var(--mint); }
  .eyebrow.on-photo::before{ background:linear-gradient(90deg,transparent,var(--mint)); }

  .section-head{ max-width:660px; margin-bottom:48px; }
  .section-head h2{ margin-top:16px; font-size:clamp(1.9rem,4vw,2.9rem); color:var(--ink); }
  .section-head p{ margin-top:16px; font-size:1.06rem; color:var(--ink-soft); }
  .grad{ background:linear-gradient(120deg,var(--teal-2),var(--aqua) 60%,var(--teal)); -webkit-background-clip:text; background-clip:text; color:transparent; }

  /* ============ Buttons ============ */
  .btn{ display:inline-flex; align-items:center; justify-content:center; gap:9px; padding:14px 26px;
    border-radius:999px; font-weight:700; font-size:.95rem; letter-spacing:-.01em; white-space:nowrap;
    border:none;
    transition:transform .15s ease, filter .2s ease, background .2s ease, box-shadow .2s ease, color .2s ease; }
  .btn:active{ transform:translateY(1px); }
  .btn-primary{ background:linear-gradient(120deg,var(--aqua),var(--teal-2)); color:#053b3c; filter:drop-shadow(0 10px 18px rgba(10,209,200,.35)); }
  .btn-primary:hover{ filter:drop-shadow(0 13px 24px rgba(10,209,200,.48)); transform:translateY(-1px); }
  .btn-ghost{ background:#fff; color:var(--teal); box-shadow:inset 0 0 0 1px var(--border-2); }
  .btn-ghost:hover{ background:var(--deep); box-shadow:inset 0 0 0 1px var(--aqua); transform:translateY(-1px); }
  .btn-ghost.on-photo{ background:rgba(255,255,255,.12); color:#fff; box-shadow:inset 0 0 0 1px rgba(255,255,255,.4); backdrop-filter:blur(6px); }
  .btn-ghost.on-photo:hover{ background:rgba(255,255,255,.22); box-shadow:inset 0 0 0 1px #fff; transform:translateY(-1px); }
  .btn-block{ width:100%; }
  .btn-sm{ padding:10px 18px; font-size:.85rem; }

  /* ============ Header ============ */
  .site-header{ position:fixed; left:0; right:0; top:0; z-index:50; height:var(--header-h);
    background:linear-gradient(0deg, rgba(255,255,255,.42) 0%, rgba(255,255,255,.52) 45%, rgba(255,255,255,.64) 100%);
    backdrop-filter:blur(9px); border-bottom:1px solid var(--border); }
  .site-header .container{ height:100%; display:flex; align-items:center; gap:20px; }
  .brand{ display:inline-flex; align-items:center; }
  .brand-logo{ height:48px; width:auto; display:block; }
  .main-nav{ margin-left:auto; }
  .main-nav ul{ display:flex; gap:28px; align-items:center; }
  .main-nav a{ font-size:.92rem; font-weight:600; color:var(--ink); transition:color .15s; }
  .main-nav a:hover{ color:var(--aqua-ink); }
  .header-cta{ display:flex; align-items:center; gap:12px; margin-left:26px; }
  @media (max-width:860px){ .main-nav{ display:none; } .header-cta{ margin-left:auto; } }

  /* ============ Телефон-макет — переюзний фрейм ============ */
  .phone-frame{ position:relative; display:flex; flex-direction:column;
    background:var(--phone-color,#2b2b2d); border-radius:var(--phone-r,44px); padding:9px;
    box-shadow:0 30px 60px rgba(6,40,42,.4), 0 6px 16px rgba(6,40,42,.25);
    border:1px solid rgba(255,255,255,.14);
    transition:transform .3s ease, box-shadow .3s ease; }
  .phone-frame:hover{ transform:scale(1.04);
    box-shadow:0 42px 80px rgba(6,40,42,.5), 0 10px 26px rgba(6,40,42,.32); }
  .phone-btn{ position:absolute; background:var(--phone-color,#2b2b2d);
    border:1px solid rgba(255,255,255,.22); box-shadow:0 1px 2px rgba(0,0,0,.3); }
  .phone-btn-volup{ left:-3px; top:96px; width:3px; height:32px; border-radius:2px 0 0 2px; border-right:none; }
  .phone-btn-voldown{ left:-3px; top:136px; width:3px; height:32px; border-radius:2px 0 0 2px; border-right:none; }
  .phone-btn-power{ right:-3px; top:108px; width:3px; height:52px; border-radius:0 2px 2px 0; border-left:none; }
  .phone-statusbar{ flex:none; height:32px; background:var(--phone-chrome); color:#fff;
    display:flex; align-items:center; justify-content:space-between; padding:0 18px;
    border-radius:calc(var(--phone-r,44px) - 9px) calc(var(--phone-r,44px) - 9px) 0 0; }
  .phone-statusbar .phone-clock{ font-size:.72rem; font-weight:600; font-variant-numeric:tabular-nums; letter-spacing:.02em; }
  .phone-statusbar .phone-camera{ width:7px; height:7px; border-radius:50%; background:rgba(0,0,0,.55);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.12); }
  .phone-statusbar .phone-battery{ width:21px; height:10px; border:1.2px solid #fff; border-radius:2.5px;
    padding:1.5px; position:relative; }
  .phone-statusbar .phone-battery::after{ content:""; position:absolute; top:50%; right:-3px; transform:translateY(-50%);
    width:1.6px; height:4px; background:#fff; border-radius:0 1px 1px 0; }
  .phone-statusbar .phone-battery-fill{ display:block; width:100%; height:100%; background:#fff; border-radius:.5px; }
  .phone-screen{ flex:1; width:100%; overflow:hidden; position:relative;
    background:linear-gradient(160deg,var(--deep),var(--mint)); display:grid; place-items:center; }
  .phone-screen img{ position:absolute; left:0; top:0; width:100%; height:calc(100% + 30px); margin-top:-30px;
    object-fit:cover; object-position:top; opacity:0; transition:opacity .6s ease; }
  .phone-screen img.is-fitted{ height:100%; margin-top:0; }
  .phone-screen img.is-active{ opacity:1; }
  .phone-screen svg{ width:44px; height:44px; color:var(--border-2); }
  .phone-navbar{ flex:none; height:30px; background:var(--phone-chrome);
    display:flex; align-items:center; justify-content:space-evenly;
    border-radius:0 0 calc(var(--phone-r,44px) - 9px) calc(var(--phone-r,44px) - 9px); }
  .phone-navbar svg{ width:15px; height:15px; color:#fff; }
  .phone-navbar .phone-nav-home{ width:14px; height:14px; border-radius:50%; background:#fff; }
  .phone-navbar .phone-nav-recents{ width:13px; height:13px; border:1.4px solid #fff; border-radius:2.5px; }

  /* ============ Сторінка фічі — хлібні крихти + хіро ============ */
  .breadcrumb{ padding-top:calc(var(--header-h) + 26px); display:flex; align-items:center; gap:8px;
    font-size:.86rem; color:var(--ink-faint); }
  .breadcrumb a{ color:var(--aqua-ink); font-weight:600; }
  .breadcrumb a:hover{ text-decoration:underline; }
  .page-hero{ padding:22px 0 30px; }
  .page-hero .feature-row{ display:flex; align-items:center; gap:56px; }
  .page-hero h1{ font-size:clamp(2.2rem,4.6vw,3.4rem); margin-top:18px; color:var(--ink); }
  .page-hero .lede{ margin-top:18px; font-size:1.1rem; color:var(--ink-soft); max-width:560px; }
  .page-hero .hero-cta{ display:flex; flex-wrap:wrap; gap:14px; margin-top:30px; }
  .page-hero .feature-phone-wrap{ flex:none; width:250px; display:flex; justify-content:center; }
  .page-hero .feature-phone{ width:250px; height:551px; --phone-r:44px; }
  @media (max-width:960px){ .page-hero .feature-row{ flex-direction:column; gap:28px; } }

  /* ============ Картки (переюзні) ============ */
  .card{ background:var(--panel); border:1px solid var(--border); border-radius:var(--radius-md);
    padding:36px 30px 40px; box-shadow:var(--shadow-sm); transition:border-color .2s, transform .2s, box-shadow .2s; }
  .card:hover{ border-color:var(--border-2); transform:translateY(-3px); box-shadow:var(--shadow-md); }
  .card .ic{ width:52px; height:52px; border-radius:15px; display:grid; place-items:center; margin-bottom:18px;
    background:linear-gradient(135deg,var(--aqua),var(--teal-2)); border:none; color:#fff;
    box-shadow:0 10px 22px rgba(10,209,200,.28); }
  .card .ic svg{ width:24px; height:24px; }
  /* T-2800: фото-картка (гайди) — обкладинка на ВСЮ ширину картки, впритул до верху
     (негативні маржі гасять padding картки 36/30/40), округлені лише верхні кути. */
  /* Фото бліду до ЗОВНІШНЬОГО краю картки (padding 36/30/40 + border 1px), радіус
     верхніх кутів = радіусу картки (тому НЕ overflow:hidden — він різав би по
     внутрішньому краю, роблячи радіус на 1px меншим). */
  /* T-3234: фото гайдів стандартні 1600×800 (2:1) — коробка тієї ж пропорції, щоб
     object-fit:cover не обрізав кадр (фото лягає рівно по боксу без кропу). */
  .card-img{ width:calc(100% + 62px); max-width:200%; aspect-ratio:2/1; height:auto; object-fit:cover; display:block;
    background:var(--bg-2); margin:-37px -31px 20px; border-radius:var(--radius-md) var(--radius-md) 0 0; }
  /* T-2800: обкладинка сторінки гайда (те саме фото, що на картці). */
  .page-cover{ padding:24px 0 0; }
  .page-cover .container{ max-width:760px; }
  /* T-3234: те саме фото 1600×800 — box 2:1 замість фіксованої clamp-висоти. */
  .page-cover-img{ width:100%; aspect-ratio:2/1; height:auto; object-fit:cover;
    border-radius:var(--radius-md); display:block; background:var(--bg-2); box-shadow:var(--shadow-sm); }
  .card h3{ font-size:1.22rem; font-family:var(--font); font-weight:800; color:var(--ink); }
  .card p{ margin-top:12px; color:#3c5658; font-size:.95rem; line-height:1.6; }
  /* Картка з email (напр. /contacts «How can we help?») — email притиснутий донизу
     блока й виділений бренд-кольором. */
  .card:has(.card-email){ display:flex; flex-direction:column; }
  .card-email{ margin-top:auto; padding-top:16px; color:var(--aqua-ink); font-weight:700;
    font-size:.98rem; word-break:break-word; transition:color .15s; }
  .card-email:hover{ color:var(--teal); text-decoration:underline; }

  /* ============ Секції-грати можливостей ============ */
  .mini-section{ padding:56px 0 10px; }
  .mini-grid{ display:grid; gap:20px; grid-template-columns:repeat(4,1fr); }
  .mini-grid.cols-3{ grid-template-columns:repeat(3,1fr); }
  @media (max-width:960px){ .mini-grid, .mini-grid.cols-3{ grid-template-columns:repeat(2,1fr); } }
  @media (max-width:560px){ .mini-grid, .mini-grid.cols-3{ grid-template-columns:1fr; } }

  /* ============ Стаття (довгий SEO-текст) ============ */
  .article{ padding:60px 0 20px; }
  .article .container{ max-width:760px; }
  .article-block{ }
  .article-block + .article-block{ margin-top:52px; }
  .article-block h2{ margin-top:38px; font-size:clamp(1.4rem,2.6vw,1.9rem); color:var(--ink); }
  .article-block h3{ margin-top:26px; }
  /* перший елемент тіла статті — без зайвого верхнього відступу (є padding у .article) */
  .article-block > :first-child{ margin-top:0; }
  .article-block p{ margin-top:16px; color:var(--ink-soft); font-size:1.02rem; line-height:1.75; }
  .article-block p + p{ margin-top:16px; }
  .article-block a{ color:var(--aqua-ink); font-weight:700; text-decoration:underline;
    text-decoration-color:var(--border-2); text-underline-offset:3px; }
  .article-block a:hover{ text-decoration-color:var(--aqua-ink); }
  .article-list{ margin-top:18px; display:flex; flex-direction:column; gap:12px; }
  .article-list li{ padding:16px 20px; background:var(--bg-2); border-radius:var(--radius-sm);
    border:1px solid var(--border); color:var(--ink-soft); font-size:.97rem; line-height:1.6; }
  .article-list li strong{ color:var(--ink); }

  /* Списки у вільному bodyHtml (гайди, фіч-статті) */
  .article-block ul, .article-block ol{ margin-top:18px; display:flex; flex-direction:column;
    gap:12px; padding-left:0; list-style:none; }
  .article-block ol{ counter-reset:li; }
  .article-block li{ position:relative; color:var(--ink-soft); font-size:1.02rem; line-height:1.75; }
  .article-block li strong{ color:var(--ink); }
  .article-block ul > li{ padding-left:26px; }
  .article-block ul > li::before{ content:""; position:absolute; left:6px; top:.66em;
    width:7px; height:7px; border-radius:999px; background:var(--teal); }
  .article-block ol > li{ counter-increment:li; padding-left:40px; }
  .article-block ol > li::before{ content:counter(li); position:absolute; left:0; top:.05em;
    width:26px; height:26px; border-radius:999px; display:grid; place-items:center;
    background:var(--teal); color:#fff; font-size:.82rem; font-weight:700; }
  .article-block li > ul, .article-block li > ol{ margin-top:12px; }

  /* Таблиці у вільному bodyHtml — обгорнуті в .table-wrap (скрол на вузькому екрані) */
  .table-wrap{ margin-top:22px; overflow-x:auto; border:1px solid var(--border);
    border-radius:var(--radius-md); box-shadow:var(--shadow-sm); -webkit-overflow-scrolling:touch; }
  .article-block table{ width:100%; border-collapse:collapse; font-size:.95rem; }
  .article-block thead th{ background:var(--deep); color:var(--ink); text-align:left;
    font-weight:700; font-size:.78rem; letter-spacing:.03em; text-transform:uppercase;
    padding:13px 16px; white-space:nowrap; border-bottom:1px solid var(--border); }
  .article-block tbody td{ padding:13px 16px; color:var(--ink-soft); line-height:1.6;
    border-bottom:1px solid var(--border); vertical-align:top; }
  .article-block tbody tr:nth-child(even){ background:var(--bg-2); }
  .article-block tbody tr:last-child td{ border-bottom:none; }
  .article-block tbody td:first-child{ color:var(--ink); font-weight:600; }

  /* ============ FAQ ============ */
  .faq{ padding:40px 0 90px; }
  .faq .container{ max-width:760px; }
  .faq-item{ border-bottom:1px solid var(--border); padding:22px 0; }
  .faq-item summary{ cursor:pointer; list-style:none; display:flex; align-items:center;
    justify-content:space-between; gap:16px; font-weight:700; font-size:1.05rem; color:var(--ink); }
  .faq-item summary::-webkit-details-marker{ display:none; }
  .faq-item summary .plus{ flex:none; width:24px; height:24px; border-radius:999px; display:grid;
    place-items:center; background:var(--deep); color:var(--teal); transition:transform .2s ease; }
  .faq-item summary .plus svg{ width:12px; height:12px; }
  .faq-item[open] summary .plus{ transform:rotate(45deg); }
  .faq-item p{ margin-top:14px; color:var(--ink-soft); font-size:.98rem; line-height:1.7; max-width:none; }

  /* ============ Фінальний CTA ============ */
  .final-cta{ padding:20px 0 80px; text-align:center; }
  .final-cta .section-head{ margin:0 auto 0; }
  .final-cta .eyebrow{ justify-content:center; }
  .final-cta .hero-cta{ display:flex; justify-content:center; flex-wrap:wrap; gap:14px; margin-top:30px; }

  /* ============ Footer ============ */
  .site-footer{ border-top:1px solid var(--border); padding:64px 0 32px; color:var(--ink-soft); font-size:.88rem; }
  .footer-grid{ display:grid; grid-template-columns:1.3fr repeat(3,1fr); gap:32px 24px; }
  /* Мобільний футер: бренд на всю ширину зверху, а 3 короткі колонки лінків —
     поряд у рядок (а не кожна на власному рядку з купою пустоти). */
  @media (max-width:760px){
    .footer-grid{ grid-template-columns:repeat(3,1fr); gap:28px 16px; }
    .footer-brand{ grid-column:1 / -1; }
  }
  .footer-brand .brand-logo{ height:36px; }
  .footer-brand p{ margin-top:14px; max-width:260px; color:var(--ink-soft); font-size:.88rem; }
  .footer-social{ display:flex; gap:10px; margin-top:18px; }
  .footer-social a{ width:36px; height:36px; border-radius:999px; display:grid; place-items:center;
    color:var(--ink-faint); box-shadow:inset 0 0 0 1px var(--border-2); transition:background .15s, color .15s; }
  .footer-social a:hover{ background:var(--deep); color:var(--aqua-ink); }
  .footer-social svg{ width:17px; height:17px; }
  .footer-col h4{ font-family:var(--font); font-size:.8rem; font-weight:700; letter-spacing:.05em;
    text-transform:uppercase; color:var(--ink); margin-bottom:14px; }
  .footer-col ul{ display:flex; flex-direction:column; gap:11px; }
  .footer-col a{ color:var(--ink-soft); font-size:.9rem; font-weight:500; transition:color .15s; }
  .footer-col a:hover{ color:var(--aqua-ink); }
  /* Нижній відступ прибирає перекриття копірайту закріпленим app-банером
     (на сторінках без #cta-final/#platforms банер не ховається — див. aqua.js). */
  .footer-bottom{ margin-top:40px; padding:24px 0 65px; border-top:1px solid var(--border); }
  .footer-bottom .container{ text-align:center; }

  /* ===== Закріплений app-банер ===== */
  .app-banner{ position:fixed; left:0; right:0; bottom:0; z-index:60;
    display:flex; align-items:center; justify-content:center; gap:16px; flex-wrap:wrap; padding:12px 18px;
    background:linear-gradient(180deg, rgba(255,255,255,.42) 0%, rgba(255,255,255,.52) 45%, rgba(255,255,255,.64) 100%);
    backdrop-filter:blur(14px); border-top:1px solid var(--border-2);
    box-shadow:0 -16px 44px rgba(6,60,62,.14); color:var(--ink);
    transition:transform .38s ease, opacity .38s ease; }
  .app-banner.is-hidden{ transform:translateY(120%); opacity:0; pointer-events:none; }
  /* T-2800: доки відкрито афілейтний попап зі сторами — нижній банер повністю ховаємо
     (окремо від .is-hidden, щоб IntersectionObserver його не повертав). */
  .app-banner.banner-suppressed{ display:none !important; }
  .app-banner__actions{ display:flex; gap:20px; flex-wrap:wrap; }
  .store-btn{ display:inline-flex; transition:transform .15s; }
  .store-btn:hover{ transform:translateY(-1px); }
  .store-btn img{ height:48px; width:auto; display:block; }
  @media (max-width:520px){ .app-banner{ gap:8px; padding:10px 12px; } }

  /* ============ Попап Web / Android / iOS ============ */
  .modal-backdrop{ position:fixed; inset:0; z-index:100; display:none; align-items:center; justify-content:center;
    padding:20px; background:rgba(6,40,42,.5); backdrop-filter:blur(4px); opacity:0; transition:opacity .2s ease; }
  .modal-backdrop.is-open{ display:flex; opacity:1; }
  .modal-card{ position:relative; width:100%; max-width:420px; background:var(--panel);
    border:1px solid var(--border); border-radius:var(--radius-lg); padding:34px 30px 30px;
    box-shadow:var(--shadow-md); transform:translateY(10px) scale(.98); transition:transform .2s ease; }
  .modal-backdrop.is-open .modal-card{ transform:translateY(0) scale(1); }
  .modal-close{ position:absolute; top:14px; right:14px; width:32px; height:32px; border-radius:999px;
    display:grid; place-items:center; color:var(--ink-soft); transition:background .15s, color .15s; }
  .modal-close:hover{ background:var(--deep); color:var(--ink); }
  .modal-close svg{ width:16px; height:16px; }
  .modal-card .platform-badge{ margin-top:0; align-self:flex-start; font-family:var(--font-mono); font-size:.72rem;
    letter-spacing:.08em; text-transform:uppercase; color:var(--aqua-ink); background:var(--deep);
    border:1px solid var(--border-2); border-radius:999px; padding:5px 11px; display:inline-block; }
  .modal-card h3{ margin-top:14px; font-size:1.4rem; font-family:var(--font); color:var(--ink); text-align:center; }
  .modal-card p{ margin-top:10px; color:var(--ink-soft); font-size:.95rem; }
  .modal-form{ display:flex; flex-direction:column; gap:10px; margin-top:20px; }
  .modal-form input{ padding:13px 18px; border-radius:999px; border:none; box-shadow:inset 0 0 0 1px var(--border-2);
    background:var(--bg-2); font-size:.92rem; transition:box-shadow .15s; }
  .modal-form input:focus-visible{ box-shadow:inset 0 0 0 1px var(--aqua); }
  .modal-success{ display:flex; align-items:center; gap:10px; margin-top:20px; padding:14px 16px;
    border-radius:var(--radius-md); background:var(--mint); color:var(--aqua-ink); font-size:.92rem; font-weight:600; }
  .modal-success svg{ width:20px; height:20px; flex:none; }
  .modal-card .modal-error{ margin-top:-2px; font-size:.85rem; color:var(--danger) !important; }
  .modal-qr{ margin-top:20px; display:flex; justify-content:center; }
  .modal-qr img{ width:180px; height:180px; border-radius:var(--radius-md); border:1px solid var(--border); padding:10px; background:#fff; }
  .modal-panel .btn{ margin-top:20px; }
  .modal-note{ margin-top:12px; font-size:.82rem; color:var(--ink-faint); text-align:center; }
  /* T-2800: стори в афілейтному попапі — по центру під текстом. */
  .aff-panel .app-banner__actions{ justify-content:center; margin-top:22px; }
  .modal-captcha{ margin-top:4px; display:flex; flex-direction:column; gap:8px; }
  .modal-captcha label{ font-size:.85rem; font-weight:600; color:var(--ink); }
  .modal-captcha .g-recaptcha{ margin:2px 0; display:flex; justify-content:center; }

/* ============ Лендінг-індекс (Aqua Light) ============ */
  .hero{ position:relative; min-height:100vh; display:flex; align-items:center;
    padding:calc(var(--header-h) + 40px) 0; overflow:hidden; }
  .hero-bg{ position:absolute; inset:0; background-size:cover; background-position:center; }
  .hero-overlay{ position:absolute; inset:0;
    background:
      radial-gradient(60% 80% at 80% 15%, rgba(10,209,200,.22), transparent 60%),
      linear-gradient(180deg, rgba(6,40,42,.15) 0%, rgba(4,30,32,.5) 55%, rgba(4,26,28,.82) 100%); }
  .hero .container{ position:relative; max-width:820px; margin-right:auto; }
  .hero h1{ font-size:clamp(2.6rem,6.6vw,4.7rem); margin-top:22px; color:#fff; text-shadow:0 6px 40px rgba(0,0,0,.4); }
  .hero h1 .grad{ background:linear-gradient(120deg,var(--mint),var(--aqua) 55%,#5fe9e1); -webkit-background-clip:text; background-clip:text; color:transparent; }
  .hero .lede{ margin-top:22px; font-size:1.2rem; color:#e6faf8; max-width:620px; text-shadow:0 2px 18px rgba(0,0,0,.5); }
  .hero-cta{ display:flex; flex-wrap:wrap; gap:14px; margin-top:34px; }
  .hero-slides{ position:absolute; left:0; right:0; bottom:22px; display:flex; gap:9px; justify-content:center; z-index:3; }
  .hero-slides button{ width:30px; height:4px; border-radius:2px; background:rgba(255,255,255,.34); transition:background .2s; }
  .hero-slides button[aria-current="true"]{ background:var(--mint); box-shadow:0 0 12px var(--aqua); }
  .hero-bg{ background-image:linear-gradient(135deg,#0b565a 0%,#0d7377 45%,#14919b 100%); }
  .hero-phone-wrap{ position:relative; height:0; z-index:6; }
  .hero-phone{ position:absolute; top:-413px; right:8%; width:250px; height:551px; }
  @media (max-width:960px){ .hero-phone{ display:none; } }

  /* ============ Телефони поруч із блоками можливостей ============ */
  .feature-row{ display:flex; align-items:center; gap:56px; }
  .feature-row + .feature-row{ margin-top:-100px; }
  .feature-row--rev{ flex-direction:row-reverse; }
  .feature-row .card{ flex:1 1 0; }
  .feature-phone-wrap{ flex:none; width:250px; display:flex; justify-content:center; }
  .feature-phone{ width:250px; height:551px; --phone-r:44px; }
  @media (max-width:960px){
    .feature-row, .feature-row--rev{ flex-direction:column; gap:28px; }
    /* десктопне «сходинкове» накладання рядків (−100px) на вузькому екрані
       затягувало текст наступного блока на телефон попереднього — скидаємо. */
    .feature-row + .feature-row{ margin-top:40px; }
  }

  /* ============ Features ============ */
  .features{ padding:76px 0 30px; }
  .bento{ display:flex; flex-direction:column; }
  .card.is-plain{ position:relative; background:none; border:none; box-shadow:none; padding:4px 0 4px 30px; }
  .card.is-plain:hover{ transform:none; box-shadow:none; border-color:transparent; }
  .card.is-plain::before{ content:""; position:absolute; left:0; top:2px; bottom:2px; width:4px; border-radius:3px;
    background:linear-gradient(180deg,var(--aqua),var(--teal-2)); }
  .card.is-plain.no-accent{ padding-left:0; }
  .card.is-plain.no-accent::before{ display:none; }
  .card.is-plain.has-gallery{ display:flex; align-items:flex-start; gap:32px; }
  .card.is-plain.has-gallery .feature-text{ flex:0 1 auto; max-width:500px; min-width:0; }
  .card.is-plain.text-snug{ flex:0 1 auto; max-width:520px; margin-left:auto; }
  .depth-illustration{ flex:none; width:190px; height:190px; }
  .depth-illustration .pin{ fill:var(--panel); stroke:var(--teal); stroke-width:2; }
  .depth-illustration .pin-dot{ fill:var(--teal); }
  .card.is-plain .ic{ background:linear-gradient(135deg,var(--mint),var(--deep)); border:none; border-radius:50%;
    width:60px; height:60px; margin-bottom:18px; color:var(--teal); box-shadow:0 10px 22px rgba(10,209,200,.22); }
  .card.is-plain .ic svg{ width:28px; height:28px; }
  .card.is-plain h3{ font-size:1.9rem; background:linear-gradient(120deg,var(--teal-2),var(--aqua) 65%,var(--teal));
    -webkit-background-clip:text; background-clip:text; color:transparent; }
  .card-link{ display:inline-flex; align-items:center; gap:6px; margin-top:16px;
    color:var(--aqua-ink); font-weight:700; font-size:.92rem; }
  .card-link svg{ width:14px; height:14px; transition:transform .15s ease; }
  .card-link:hover svg{ transform:translateX(3px); }
  .platforms{ padding:40px 0 96px; }
  .platform-grid{ display:grid; gap:18px; grid-template-columns:repeat(3,1fr); }
  @media (max-width:860px){ .platform-grid{ grid-template-columns:1fr; } }
  .platform-card{ background:var(--panel); border:1px solid var(--border); border-radius:var(--radius-lg);
    padding:30px 26px; display:flex; flex-direction:column; box-shadow:var(--shadow-sm); }
  .platform-card:hover{ border-color:var(--border-2); box-shadow:var(--shadow-md); }
  .platform-icon{ width:52px; height:52px; border-radius:15px; display:grid; place-items:center; margin-bottom:18px;
    background:var(--deep); border:1px solid var(--border-2); color:var(--teal); }
  .platform-icon svg{ width:26px; height:26px; }
  .platform-icon .icn{ width:26px; height:26px; background:var(--teal);
    -webkit-mask:var(--i) center/contain no-repeat; mask:var(--i) center/contain no-repeat; }
  .platform-card h3{ font-size:1.3rem; font-family:var(--font); color:var(--ink); }
  .platform-card p{ margin-top:10px; color:var(--ink-soft); font-size:.95rem; flex:1; }
  .platform-card .btn{ margin-top:20px; }
  .platform-badge{ align-self:flex-start; margin-top:14px; font-family:var(--font-mono); font-size:.72rem;
    letter-spacing:.08em; text-transform:uppercase; color:var(--aqua-ink); background:var(--deep);
    border:1px solid var(--border-2); border-radius:999px; padding:5px 11px; }

/* ============ Селектор мови (підвал) ============ */
/* Кнопка мови — ненав'язлива: прозорий фон (розчиняється у хедері), приглушений
   текст/шеврон, рамка лише на hover/focus. */
.lang-select{ appearance:none; -webkit-appearance:none; -moz-appearance:none;
  background-color:transparent; color:var(--ink-soft); border:1px solid transparent;
  border-radius:999px; padding:7px 30px 7px 12px; font-family:var(--font);
  font-size:.85rem; font-weight:600; cursor:pointer;
  transition:background-color .15s ease, border-color .15s ease, color .15s ease, box-shadow .15s ease;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%237a9a9a' stroke-width='1.6'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 12px center; }
.lang-select:hover{ background-color:rgba(255,255,255,.5); border-color:var(--border-2); color:var(--ink); }
.lang-select:focus-visible{ outline:none; border-color:var(--border-2); box-shadow:0 0 0 3px rgba(10,209,200,.15); }

/* ============ Центрований hero (каталог /features, /pricing, утилітарні) ============ */
.page-hero--center{ text-align:center; }
.page-hero--center .eyebrow{ justify-content:center; }
.page-hero--center .lede{ margin-left:auto; margin-right:auto; }
.page-hero--center .hero-cta{ justify-content:center; }
