
  :root{
    --chart:#1366d6,#18a0e0,#0e9f8e,#7c5cfc,#2da86a,#3b5bdb;
    --blue:#1366d6; --blue-d:#0f56b8; --cyan:#18a0e0; --soft:#e7f1fd; --soft2:#f3f8ff;
    --ink:#0e1726; --muted:#5a6a80; --line:#e2e8f2; --bg:#fff; --bg2:#f7faff;
    --good:#1a7d52; --warn:#a26a06;
    --r:14px; --r-sm:10px;
    --shadow:0 1px 2px rgba(14,23,38,.04),0 4px 14px rgba(14,23,38,.06);
    --shadow-hi:0 6px 24px rgba(var(--blue-rgb),.16),0 1px 2px rgba(14,23,38,.06);
    --blue-rgb:19,102,214; --ink2:#1a2740;
    --blue-bright:#1d7fe8; --blue-100:#d6e5fa; --blue-150:#c2d4ea; --blue-200:#d4e6fb;
  }
  *{box-sizing:border-box}
  html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:'Inter',system-ui,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;font-style:normal}
  i,em{font-style:normal}
  .mono{font-family:'IBM Plex Mono',ui-monospace,monospace}
  a{color:var(--blue);text-decoration:none;cursor:pointer}
  button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit;font-style:normal}
  input,select,textarea{font-family:inherit}
  h1,h2,h3,h4{margin:0;line-height:1.18;letter-spacing:-.015em;font-weight:700}
  h1{font-size:36px;letter-spacing:-.025em;font-weight:800}
  h2{font-size:26px}
  h3{font-size:18px}
  p{margin:0}
  .wrap{max-width:1180px;margin:0 auto;padding:0 20px}

  /* HEADER */
  .header{position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid var(--line);z-index:50}
  .nav{display:flex;align-items:center;gap:18px;padding:13px 0}
  .brand{display:flex;align-items:center;gap:10px;cursor:pointer;margin-right:auto}
  .brand-mark{height:40px;width:auto;object-fit:contain;display:block}
  .brand-name{font-weight:800;letter-spacing:-.01em;font-size:17px}
  .brand-name span{color:var(--blue)}
  .nav-links{display:flex;gap:6px;align-items:center}
  .nav-link{padding:9px 13px;border-radius:9px;font-size:14.5px;font-weight:500;color:var(--muted);transition:.15s;white-space:nowrap;position:relative}
  .nav-link:hover{color:var(--ink);background:var(--bg2)}
  /* persistent top-right cart button */
  .cart-btn{display:flex;align-items:center;gap:8px;padding:9px 15px;border-radius:10px;background:var(--soft);color:var(--blue);font-weight:600;font-size:14px;cursor:pointer;transition:.15s;white-space:nowrap}
  .cart-btn:hover{background:var(--blue-100);transform:translateY(-1px)}
  .cart-btn svg{width:17px;height:17px}
  .cart-btn .badge{background:var(--blue);color:#fff;border-radius:99px;padding:1px 7px;font-size:12px;min-width:18px;text-align:center;font-family:'IBM Plex Mono',monospace}
  .cart-btn .badge.zero{background:var(--muted);opacity:.55}
  .hamburger{display:none;width:38px;height:38px;border-radius:9px;background:var(--bg2);align-items:center;justify-content:center}
  .hamburger span{display:block;width:18px;height:2px;background:var(--ink);position:relative}
  .hamburger span::before,.hamburger span::after{content:"";position:absolute;left:0;width:18px;height:2px;background:var(--ink)}
  .hamburger span::before{top:-6px}
  .hamburger span::after{top:6px}

  /* HERO */
  .hero{position:relative;padding:76px 0 88px;background:linear-gradient(180deg,var(--soft2) 0%,#fbfdff 60%,#fff 100%)}
@media (max-width:700px){.hero{padding:44px 0 56px}}
  /* scroll-down hint bridging the hero → categories transition */
  .scroll-down{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);width:44px;height:44px;border-radius:50%;background:#fff;box-shadow:var(--shadow-hi);display:grid;place-items:center;color:var(--blue);cursor:pointer;z-index:3}
  .scroll-down svg{width:20px;height:20px}
  /* floating scroll-to-top button */
  .to-top{position:fixed;right:22px;bottom:22px;width:46px;height:46px;border-radius:50%;background:var(--blue);color:#fff;box-shadow:0 6px 20px rgba(var(--blue-rgb),.35);display:grid;place-items:center;opacity:0;visibility:hidden;transform:translateY(12px);transition:.25s;z-index:90}
  .to-top.show{opacity:1;visibility:visible;transform:translateY(0)}
  .to-top:hover{background:var(--blue-d)}
  .to-top svg{width:22px;height:22px}
  .hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
  .hero-left .eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--blue);background:var(--soft);padding:6px 12px;border-radius:99px;margin-bottom:18px}
  .hero-left .eyebrow::before{content:"";width:7px;height:7px;border-radius:99px;background:var(--blue)}
  .hero-left h1{max-width:560px}
  .hero-left h1 span{color:var(--blue)}
  .hero-left .lede{margin-top:24px;color:var(--muted);font-size:16.5px;max-width:520px;line-height:1.7}
  /* journey strip під h1: [беремо на себе: трансфер → проживання → лікування] → результат */
  .hero-journey{margin-top:32px;display:flex;align-items:flex-start;justify-content:center;gap:12px;max-width:520px}
  .hj-step{display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center}
  .hj-ico{width:46px;height:46px;border-radius:14px;background:var(--soft);color:var(--blue);display:flex;align-items:center;justify-content:center}
  .hj-ico svg{width:22px;height:22px}
  .hj-lab{font-size:11.5px;font-weight:600;color:var(--muted);letter-spacing:.01em;white-space:nowrap}
  /* рамка «все беремо на себе» навколо кроків, які закриває сервіс */
  .hj-group{position:relative;display:flex;align-items:flex-start;gap:12px;border:1.5px dashed var(--blue-150);border-radius:18px;padding:16px 16px 12px}
  .hj-group-lab{position:absolute;top:-12px;left:50%;transform:translateX(-50%);display:inline-flex;align-items:center;gap:5px;background:var(--blue);color:#fff;font-size:11px;font-weight:700;letter-spacing:.02em;padding:4px 11px;border-radius:99px;white-space:nowrap;box-shadow:0 3px 10px rgba(var(--blue-rgb),.25)}
  .hj-group-lab svg{width:12px;height:12px;flex:none}
  /* акцент на лікуванні: трохи більше коло, заливка брендовим, центр вирівняний з рештою */
  .hj-step-main{margin-top:-2px}
  .hj-step-main .hj-ico{width:50px;height:50px;background:var(--blue);color:#fff;box-shadow:0 3px 10px rgba(var(--blue-rgb),.18)}
  .hj-step-main .hj-ico svg{width:23px;height:23px}
  .hj-step-main .hj-lab{color:var(--blue)}
  .hj-arrow{width:20px;height:20px;color:var(--blue-150);flex:none;margin-top:13px}
  .hj-arrow-soft{color:var(--blue-100)}
  /* елементи поза рамкою опускаємо на висоту її верхнього padding, щоб центри збігались */
  .hero-journey>.hj-arrow{margin-top:29px}
  .hero-journey>.hj-step{margin-top:16px}
  .hj-note{margin-top:14px;font-size:13px;color:var(--muted);max-width:520px;line-height:1.55}
  .hero-actions{margin-top:34px;display:flex;gap:10px;flex-wrap:wrap}
  .btn-pri{padding:13px 22px;border-radius:11px;background:var(--blue);color:#fff;font-weight:600;font-size:15px;transition:.15s;box-shadow:0 4px 12px rgba(var(--blue-rgb),.2)}
  .btn-pri:hover{background:var(--blue-d);transform:translateY(-1px)}
  /* trust line under hero actions */
  .hero-trust{margin-top:34px;display:flex;align-items:flex-start;gap:10px;padding-top:30px;border-top:1px solid var(--line);color:var(--muted);font-size:14px;max-width:520px;line-height:1.5}
  .hero-trust svg{width:18px;height:18px;color:var(--good);flex:none;margin-top:1px}

  /* hero-right: rotating compare card */
  .hero-right{position:relative}
  .compare-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 28px;box-shadow:var(--shadow-hi);max-width:480px;margin-left:auto;position:relative;overflow:hidden;min-height:248px}
  .compare-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
  .compare-card-head .lab{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}
  /* the rotating slide */
  .compare-slide{transition:opacity .45s ease,transform .45s ease}
  .compare-slide.out{opacity:0;transform:translateY(-10px)}
  .compare-slide.in{opacity:1;transform:translateY(0)}
  .cmp-svc{font-size:18px;font-weight:700;letter-spacing:-.01em;margin-bottom:14px}
  .cmp-row{display:grid;grid-template-columns:1fr auto;align-items:center;padding:11px 0;border-bottom:1px dashed var(--line);font-size:14px}
  .cmp-row .where{color:var(--muted);font-size:12.5px;margin-top:2px}
  .cmp-row .price{font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:16px;text-align:right}
  .cmp-row.eu .price{color:#b35}
  .cmp-row.ua .price{color:var(--blue)}
  .cmp-save{margin-top:16px;padding:13px 15px;background:#e9f7ef;border-radius:11px;display:flex;justify-content:space-between;align-items:center;font-size:13.5px;border:1px solid #d6efe0}
  .cmp-save b{color:var(--good);font-family:'IBM Plex Mono',monospace;font-size:17px}
  .compare-dots{display:flex;gap:8px;justify-content:center;margin-top:16px}
  .compare-dots .dot{width:11px;height:7px;border-radius:99px;background:var(--line);transition:.2s;cursor:pointer}
  .compare-dots .dot:hover{background:var(--blue-150)}
  .compare-dots .dot.on{background:var(--blue);width:17px}
  .quiz-banner{background:linear-gradient(135deg,var(--blue) 0%,var(--blue-bright) 60%,var(--cyan) 100%);color:#fff;border-radius:20px;padding:40px 44px;display:grid;grid-template-columns:1.5fr auto;gap:30px;align-items:center;box-shadow:0 12px 40px rgba(var(--blue-rgb),.25);position:relative;overflow:hidden}
  .quiz-banner::before{content:"";position:absolute;right:-80px;top:-80px;width:280px;height:280px;border-radius:50%;background:rgba(255,255,255,.08)}
  .quiz-banner::after{content:"";position:absolute;right:60px;bottom:-100px;width:200px;height:200px;border-radius:50%;background:rgba(255,255,255,.06)}
  .quiz-banner .qb-inner{position:relative;z-index:1}
  .quiz-banner h2{color:#fff;font-size:28px;letter-spacing:-.025em}
  .quiz-banner .qb-text{margin-top:10px;color:rgba(255,255,255,.92);font-size:16px;max-width:560px}
  .quiz-banner .btn-quiz{position:relative;z-index:1;padding:16px 28px;background:#fff;color:var(--blue);border-radius:12px;font-weight:700;font-size:16px;display:inline-flex;align-items:center;gap:10px;box-shadow:0 4px 14px rgba(0,0,0,.15);transition:.15s;white-space:nowrap}
  .quiz-banner .btn-quiz:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.18)}

  /* SECTION */
  section{padding:64px 0;scroll-margin-top:80px}
  .sec-head{margin-bottom:30px}
  .sec-head .eyebrow{display:inline-block;font-size:12.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--blue);margin-bottom:10px}
  .sec-head h2{font-size:30px;letter-spacing:-.025em;max-width:760px}
  .sec-head .lede{margin-top:10px;color:var(--muted);font-size:16px;max-width:680px}

  /* PARTNERS — slow auto-scrolling marquee of logos only (non-interactive) */
  .partner-marquee{overflow:hidden;position:relative;padding:6px 0;
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
    mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
  .partner-track{display:flex;gap:18px;width:max-content;animation:pmScroll 45s linear infinite}
  @keyframes pmScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
  .pm-item{height:74px;min-width:158px;flex:none;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px 22px;box-shadow:0 1px 3px rgba(14,23,38,.05)}
  .pm-item img{max-height:48px;max-width:120px;object-fit:contain}
  .pm-item img.pm-inv{filter:invert(1)}
  .pm-item svg{width:36px;height:36px}
  .pm-mono{font-weight:800;font-size:22px;font-family:'IBM Plex Mono',monospace;letter-spacing:-.02em}
  .pm-wm{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;white-space:nowrap}
  .pm-wm b{font-family:Georgia,'Times New Roman',serif;font-weight:600}
  .pm-wm i{font-style:normal;color:#9a9a9a}
  .pm-wm-monada b{font-size:21px;letter-spacing:.14em;color:#3a3a3a}
  .pm-wm-monada i{font-size:9px;letter-spacing:.2em;margin-top:4px}
  .pm-wm-europa b{font-size:20px;letter-spacing:.12em;color:#b8902f}
  .pm-wm-europa i{font-size:7px;letter-spacing:.1em;margin-top:4px}
  @media (prefers-reduced-motion:reduce){ .partner-track{animation:none;flex-wrap:wrap;width:auto;justify-content:center} }

  /* CATEGORIES (blue-accented cards) */
  .cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
  .cat-card{background:#fff;border:1.5px solid var(--line);border-radius:16px;padding:24px;cursor:pointer;transition:.2s;display:flex;flex-direction:column;gap:12px;text-align:left;position:relative;overflow:hidden}
  .cat-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:var(--blue);transition:.2s}
  .cat-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hi);border-color:var(--blue);background:linear-gradient(180deg,#fff,var(--soft2))}
  .cat-card:hover::before{width:4px}
  .cat-card:hover .cat-icon{background:var(--blue);color:#fff}
  .cat-card.active{border-color:var(--blue);background:linear-gradient(180deg,#fff,var(--soft2))}
  .cat-card.active::before{width:4px}
  .cat-card.active .cat-icon{background:var(--blue);color:#fff}
  .cat-icon{width:52px;height:52px;border-radius:13px;background:var(--soft);color:var(--blue);display:grid;place-items:center;transition:.2s}
  .cat-icon svg{width:26px;height:26px}
  .cat-title{font-size:19px;font-weight:700;letter-spacing:-.01em}
  .cat-blurb{color:var(--muted);font-size:14px;flex:1;line-height:1.5}
  .cat-meta{display:flex;justify-content:space-between;align-items:center;padding-top:14px;margin-top:4px;border-top:1px solid var(--line)}
  .cat-meta .count{font-size:13px;color:var(--ink);font-weight:600}
  .cat-meta .count b{font-family:'IBM Plex Mono',monospace;color:var(--blue)}
  .cat-meta .go{font-size:12.5px;color:var(--muted);display:flex;align-items:center;gap:4px}
  /* footnote under the category grid (explains the * in the calculator note) */
  .cat-foot-note{font-size:12.5px;color:var(--muted);margin-top:18px;line-height:1.5}

  /* ============== CATEGORY VIEW (in-page screen) ============== */
  .cat-view{display:none;background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .cat-view.show{display:block;animation:fadeIn .25s ease}
  .cat-view-top{padding:22px 0 0}
  .cat-view-back{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:14px;font-weight:600;padding:8px 12px;border-radius:9px;background:#fff;border:1px solid var(--line);transition:.15s}
  .cat-view-back:hover{color:var(--ink);border-color:var(--ink)}
  .cat-view-head{margin:18px 0 22px;display:flex;align-items:center;gap:14px}
  .cat-view-head .cv-icon{width:50px;height:50px;border-radius:13px;background:var(--blue);color:#fff;display:grid;place-items:center;flex:none}
  .cat-view-head .cv-icon svg{width:25px;height:25px}
  .cat-view-head h2{font-size:26px}
  .cat-view-head .cv-sub{color:var(--muted);font-size:14px;margin-top:3px}
  .cat-view-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:44px;align-items:start;padding-bottom:48px}
  /* subcategory groups */
  .subcat{background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:16px;overflow:hidden}
  .subcat-head{padding:15px 18px;background:linear-gradient(135deg,var(--soft),#fff);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}
  .subcat-head h3{font-size:16px;color:var(--blue)}
  .subcat-head .sc-count{font-size:12px;color:var(--muted);font-family:'IBM Plex Mono',monospace}
  .subcat-body{padding:4px 0}
  .svc-line{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:12px 18px;border-bottom:1px solid var(--line);transition:.12s;cursor:pointer}
  .svc-line:last-child{border-bottom:0}
  .svc-line:hover{background:var(--bg2)}
  .svc-line .svc-check{width:24px;height:24px;border-radius:7px;border:1.5px solid var(--line);display:grid;place-items:center;font-size:13px;color:transparent;font-weight:700;transition:.15s;background:#fff;flex:none}
  .svc-line.on{background:#f1fbf5}
  .svc-line.on .svc-check{background:var(--good);border-color:var(--good);color:#fff}
  .svc-line .svc-nm{font-weight:600;font-size:14.5px}
  .svc-line .svc-nm .consult-tag{display:inline-block;margin-left:7px;font-size:10.5px;font-weight:600;color:var(--blue);background:var(--soft);padding:1px 7px;border-radius:99px;vertical-align:middle}
  .svc-line .svc-pr{font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:15px;text-align:right;white-space:nowrap;color:var(--ink)}
  .svc-line .svc-pr small{display:block;font-weight:400;color:var(--muted);font-size:11px}

  /* ============== CALCULATOR (right of category view) ============== */
  .calc-side{position:sticky;top:80px}
  .calc-box{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
  .calc-head{padding:18px;background:var(--ink);color:#fff}
  .calc-head .clbl{font-size:11px;text-transform:uppercase;letter-spacing:.08em;opacity:.7}
  .calc-head .ctotal{font-family:'IBM Plex Mono',monospace;font-size:30px;font-weight:600;margin-top:2px;letter-spacing:-.01em}
  .calc-head .ctotal .from{font-size:14px;opacity:.7;font-weight:400;margin-right:4px}
  .calc-head .cuah{font-family:'IBM Plex Mono',monospace;font-size:12px;opacity:.65;margin-top:3px}
  .calc-list{max-height:230px;overflow-y:auto}
  .calc-empty{padding:20px 18px;color:var(--muted);font-size:13px;text-align:center;line-height:1.5}
  .calc-item{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:10px 18px;border-bottom:1px dashed var(--line);font-size:13px}
  .calc-item:last-of-type{border-bottom:0}
  .calc-item .ci-l{display:flex;align-items:center;gap:8px;min-width:0}
  .calc-item .ci-nm{font-weight:600}
  .calc-item .ci-pr{font-family:'IBM Plex Mono',monospace;font-weight:600;white-space:nowrap}
  .calc-item .ci-x{width:20px;height:20px;border-radius:6px;display:grid;place-items:center;color:#b94a4a;font-size:17px;line-height:1;background:transparent;flex:none;cursor:pointer}
  .calc-item .ci-x:hover{background:#fdecec;color:#c44}
  .calc-field{margin-bottom:11px}
  .calc-field label{display:block;font-size:11.5px;color:var(--muted);font-weight:600;margin-bottom:5px;text-transform:uppercase;letter-spacing:.03em}
  .calc-field input,.calc-field select{width:100%;padding:9px 11px;border:1px solid var(--line);border-radius:9px;font-size:14px;outline:none;background:#fff;color:var(--ink)}
  .calc-field input:focus,.calc-field select:focus{border-color:var(--blue)}
  .calc-row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .calc-stepper{display:flex;align-items:center;border:1px solid var(--line);border-radius:9px;overflow:hidden}
  .calc-stepper button{width:34px;height:36px;display:grid;place-items:center;font-size:17px;color:var(--muted);background:#fff;transition:.12s}
  .calc-stepper button:hover{background:var(--bg2);color:var(--ink)}
  .calc-stepper .sv{flex:1;text-align:center;font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:14px}
  .calc-checkbox{display:flex;align-items:center;gap:9px;font-size:13.5px;cursor:pointer;padding:4px 0}
  .calc-checkbox input{width:auto}
  .calc-note-sm{font-size:11px;color:var(--muted);line-height:1.45;margin-top:8px;padding-top:9px;border-top:1px dashed var(--line)}
  /* recommend block — compact, visually separated */
  .crosssell{margin:6px 12px 2px;padding:11px 12px;background:var(--soft2);border:1px dashed var(--blue);border-radius:11px}
  .crosssell .cs-title{font-size:11.5px;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:.04em;display:flex;align-items:center;gap:6px;margin-bottom:3px}
  .crosssell .cs-title svg{width:14px;height:14px}
  .crosssell .cs-reason{font-size:11.5px;color:var(--muted);line-height:1.4;margin-bottom:9px}
  .cs-opt{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 10px;background:#fff;border:1px solid var(--line);border-radius:9px;margin-bottom:6px;font-size:12.5px}
  .cs-opt:last-child{margin-bottom:0}
  .cs-opt .cs-nm{font-weight:600}
  .cs-opt .cs-add{padding:5px 12px;border-radius:8px;background:var(--soft);color:var(--blue);font-weight:600;font-size:12.5px;transition:.12s}
  .cs-opt .cs-add:hover{background:var(--blue);color:#fff}
  .cs-opt.added .cs-add{background:var(--good);color:#fff}
  .calc-cta{width:100%;padding:14px;background:var(--blue);color:#fff;font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center;gap:8px;transition:.15s}
  .calc-cta:hover{background:var(--blue-d)}
  .calc-cta:disabled{background:var(--line);color:var(--muted);cursor:not-allowed}
  .calc-footnote{font-size:11px;color:var(--muted);line-height:1.5;padding:12px 18px 16px;background:#fff}
  .calc-footnote b{color:var(--ink);font-weight:600}
  .cart-empty-state{text-align:center;color:var(--muted);font-size:14px;padding:50px 20px;line-height:1.6}
  .cart-empty-state svg{width:40px;height:40px;color:var(--line);margin-bottom:12px}
  .cp-checkout{width:100%;padding:14px;border-radius:11px;background:var(--blue);color:#fff;font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center;gap:8px;transition:.15s}
  .cp-checkout:hover{background:var(--blue-d)}
  .cp-checkout:disabled{background:var(--line);color:var(--muted);cursor:not-allowed}
  .cp-note{font-size:11.5px;color:var(--muted);text-align:center;margin-top:10px;line-height:1.45}
  .cart-waiting{display:none;padding:48px 26px;text-align:center;flex:1;flex-direction:column;justify-content:center}
  .cart-waiting.show{display:flex}
  .cart-waiting .cw-ic{width:64px;height:64px;border-radius:50%;background:#e7f7ee;color:var(--good);display:grid;place-items:center;margin:0 auto 18px}
  .cart-waiting .cw-ic svg{width:32px;height:32px}
  .cart-waiting h3{font-size:21px;color:var(--good);margin-bottom:10px}
  .cart-waiting p{color:var(--muted);font-size:14.5px;line-height:1.6;max-width:300px;margin:0 auto}

  /* HOW IT WORKS */
  .how-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-top:8px}
  .how-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px 24px;position:relative}
  .how-card .hw-num{font-family:'IBM Plex Mono',monospace;font-size:13px;color:#fff;font-weight:700;background:var(--blue);width:36px;height:36px;border-radius:10px;display:grid;place-items:center;margin-bottom:14px}
  .how-card h3{font-size:17px}
  .how-card p{margin-top:8px;color:var(--muted);font-size:14px;line-height:1.55}

  /* TRUST / ABOUT */
  /* секція-смуга bg2 з плавними краями, щоб не було різких стиків фону */
  .band{background:linear-gradient(180deg,#fff 0%,var(--bg2) 12%,var(--bg2) 88%,#fff 100%)}
  .trust-lead{background:linear-gradient(135deg,var(--soft) 0%,#fff 75%);border:1px solid var(--blue-200);border-left:4px solid var(--blue);border-radius:18px;padding:36px 40px;margin-bottom:26px;box-shadow:var(--shadow-hi)}
  .trust-lead h2{font-size:26px;letter-spacing:-.02em;max-width:620px}
  .trust-lead .tl-points{margin-top:18px;display:grid;grid-template-columns:1fr 1fr;gap:14px 26px;max-width:880px}
  .tl-point{display:flex;gap:10px;align-items:flex-start}
  .tl-point svg{width:18px;height:18px;color:var(--good);flex:none;margin-top:2px}
  .tl-point p{color:var(--muted);font-size:15px;line-height:1.55}
  .about-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px}
  .about-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}
  .about-card .num{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--blue);font-weight:600;letter-spacing:.04em}
  .about-card h3{margin-top:8px;font-size:17px}
  .about-card p{margin-top:8px;color:var(--muted);font-size:14px;line-height:1.55}

  /* FOOTER */
  footer{border-top:1px solid var(--line);background:var(--bg2);padding:48px 0 28px;margin-top:0}
  .foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:32px}
  .foot-grid h4{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:14px;font-weight:600}
  .foot-grid p, .foot-grid a{font-size:14px;color:var(--ink);line-height:1.7}
  .foot-grid a{color:var(--ink);display:block}
  .foot-grid a:hover{color:var(--blue)}
  /* посилання-заглушки без href не мають виглядати клікабельними */
  .foot-grid a:not([href]){cursor:default}
  .foot-grid a:not([href]):hover{color:var(--ink)}
  .foot-brand p{color:var(--muted);font-size:14px;margin-top:10px;max-width:280px}
  .foot-bottom{margin-top:36px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;font-size:12.5px;color:var(--muted)}

  /* QUIZ MODAL */
  .modal-bg{position:fixed;inset:0;background:rgba(14,23,38,.55);backdrop-filter:blur(4px);display:none;z-index:200;padding:24px;overflow-y:auto}
  .modal-bg.show{display:block;animation:fadeIn .2s ease}
  @keyframes fadeIn{from{opacity:0}to{opacity:1}}
  .modal{max-width:780px;margin:32px auto;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 24px 60px rgba(14,23,38,.3);animation:slideUp .25s ease}
  @keyframes slideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
  .modal-head{padding:18px 26px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px}
  .modal-head .title{font-weight:700;font-size:16px}
  .modal-head .x{width:34px;height:34px;border-radius:9px;background:var(--bg2);color:var(--muted);font-size:18px;display:grid;place-items:center;font-weight:500}
  .modal-head .x:hover{background:var(--line);color:var(--ink)}
  .progress{height:4px;background:var(--line)}
  .progress-bar{height:100%;background:linear-gradient(90deg,var(--blue),var(--cyan));transition:width .25s ease;width:20%}
  .quiz-body{padding:32px 32px 28px}
  .quiz-step{display:none}
  .quiz-step.active{display:block;animation:fadeStep .25s ease}
  @keyframes fadeStep{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
  .quiz-step .qt{font-size:22px;font-weight:700;letter-spacing:-.015em}
  .quiz-step .qs{margin-top:6px;color:var(--muted);font-size:14.5px}
  .qcards{margin-top:22px;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
  .qcard{background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:16px;text-align:left;display:flex;flex-direction:column;gap:8px;transition:.15s;cursor:pointer;font-family:inherit}
  .qcard:hover{border-color:var(--blue);background:var(--soft2);transform:translateY(-1px)}
  .qcard.picked{border-color:var(--blue);background:var(--soft)}
  .qcard .ico{width:32px;height:32px;border-radius:9px;background:var(--soft);color:var(--blue);display:grid;place-items:center}
  .qcard .ico svg{width:18px;height:18px}
  .qcard .lab{font-weight:600;font-size:14.5px}
  .qcard .hint{color:var(--muted);font-size:12.5px;line-height:1.4}
  .qfoot{margin-top:24px;display:flex;justify-content:space-between;align-items:center;gap:10px}
  .qback{padding:10px 16px;border-radius:9px;color:var(--muted);font-size:14px;font-weight:500;background:transparent}
  .qback:hover{color:var(--ink);background:var(--bg2)}
  .qback.hidden{visibility:hidden}
  .qstep-num{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--muted)}

  /* RESULT */
  .result-head{padding:28px 32px 4px}
  .result-head h3{font-size:22px}
  .result-head .sub{color:var(--muted);font-size:14px;margin-top:6px}
  .result-body{padding:20px 32px 28px;display:grid;grid-template-columns:1.4fr 1fr;gap:24px}
  .res-block h4{font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;font-weight:600}
  .res-svc{display:grid;grid-template-columns:1fr max-content 26px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px;gap:10px}
  .res-svc .pr{text-align:right}
  .res-svc:hover{border-color:var(--blue)}
  .res-svc .ns{font-weight:600;font-size:14px}
  .res-svc .nsx{color:var(--muted);font-size:12.5px;margin-top:1px}
  .res-svc .pr{font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:14.5px;white-space:nowrap}
  .res-svc .toggle{width:26px;height:26px;border-radius:7px;border:1.5px solid var(--line);display:grid;place-items:center;cursor:pointer;font-size:14px;color:var(--muted);font-weight:600;transition:.15s;background:#fff}
  .res-svc.added .toggle{background:var(--good);color:#fff;border-color:var(--good)}
  .res-svc.added{background:#f1fbf5;border-color:#cfe8d9}
  /* clinic result badges — names only, colored */
  .res-clinic-badges{display:flex;flex-wrap:wrap;gap:8px}
  .res-clinic-badge{padding:7px 13px;border-radius:99px;font-weight:600;font-size:13.5px;color:#fff;background:var(--blue);box-shadow:0 1px 2px rgba(14,23,38,.1)}
  .calc{background:linear-gradient(135deg,var(--soft),#fff);border:1px solid var(--soft);border-radius:12px;padding:18px;margin-top:16px}
  .calc-rrow{display:flex;justify-content:space-between;font-size:13.5px;padding:4px 0}
  .calc-rtot{margin-top:10px;padding-top:10px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:baseline}
  .calc-rtot .l{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
  .calc-rtot .v{font-family:'IBM Plex Mono',monospace;font-size:24px;font-weight:700;color:var(--blue)}
  .calc-ruah{text-align:right;font-size:12px;color:var(--muted);font-family:'IBM Plex Mono',monospace;margin-top:2px}
  .result-actions{padding:0 32px 28px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}

  /* RESPONSIVE */
  @media(max-width:980px){
    .calc-side{position:static}
    .cat-view-grid{grid-template-columns:1fr;gap:18px}
  }
  @media(max-width:880px){
    .hero-grid{grid-template-columns:1fr;gap:32px}
    .hero-right{order:-1}
    .compare-card{max-width:100%}
    .about-grid{grid-template-columns:1fr}
    .how-grid{grid-template-columns:1fr}
    .foot-grid{grid-template-columns:1fr 1fr}
    .quiz-banner{grid-template-columns:1fr;padding:32px 28px;text-align:left}
    .quiz-banner .btn-quiz{justify-self:start}
  }
  @media(max-width:720px){
    h1{font-size:28px}
    .hero-journey{gap:5px;margin-top:26px}
    .hj-ico{width:40px;height:40px;border-radius:12px}
    .hj-ico svg{width:19px;height:19px}
    .hj-step-main .hj-ico{width:44px;height:44px}
    .hj-step-main .hj-ico svg{width:20px;height:20px}
    .hj-lab{font-size:10px}
    .hj-arrow{width:14px;height:14px;margin-top:13px}
    .hj-group{gap:5px;padding:12px 8px 9px;border-radius:14px}
    .hj-group-lab{font-size:10px;padding:3px 9px;top:-10px}
    .hero-journey>.hj-arrow{margin-top:25px}
    .hero-journey>.hj-step{margin-top:12px}
    .hj-note{font-size:12.5px;margin-top:12px}
    h2{font-size:22px}
    .sec-head h2{font-size:24px}
    section{padding:48px 0}
    .nav{gap:8px}
    .nav-links{display:none}
    .hamburger{display:flex}
    .quiz-body{padding:24px 20px}
    .result-head{padding:20px 20px 4px}
    .result-body{padding:16px 20px 20px;gap:18px;grid-template-columns:1fr}
    .result-actions{padding:0 20px 20px}
    .qcards{grid-template-columns:1fr 1fr;gap:8px}
    .trust-lead{padding:26px 22px}
    .trust-lead .tl-points{grid-template-columns:1fr;gap:12px}
    .cat-view-head h2{font-size:22px}
    .svc-line{grid-template-columns:auto 1fr auto;padding:12px 14px;gap:10px}
    .calc-row2{grid-template-columns:1fr}
  }
  /* Mobile nav drawer */
  .mob-drawer{display:none;position:fixed;top:0;right:0;bottom:0;width:280px;background:#fff;z-index:60;padding:24px 22px;box-shadow:-8px 0 32px rgba(14,23,38,.2);transform:translateX(100%);transition:.25s}
  .mob-drawer.show{display:block;transform:translateX(0)}
  .mob-drawer a{display:block;padding:14px 0;font-size:16px;font-weight:600;color:var(--ink);border-bottom:1px solid var(--line)}
  .mob-drawer a:last-child{border-bottom:0}
  .mob-backdrop{display:none;position:fixed;inset:0;background:rgba(14,23,38,.4);z-index:55}
  .mob-backdrop.show{display:block}

  /* ===== HERO eyebrow: flag + location + stat chips ===== */
  .hero-eyebrow{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:28px}
  .hero-loc{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:800;color:var(--ink);letter-spacing:-.01em}
  .hero-loc .flag{font-size:20px;line-height:1}
  .hero-stats-inline{display:flex;gap:8px;flex-wrap:wrap}
  .hero-stat-chip{display:inline-flex;align-items:baseline;gap:5px;background:var(--soft);color:var(--blue);padding:5px 12px;border-radius:99px;font-size:12.5px;font-weight:600}
  .hero-stat-chip b{font-family:'IBM Plex Mono',monospace;font-size:14px}

  /* ===== NAV CTA "Що вас бентежить?" ===== */
  .nav-cta{display:flex;flex-direction:column;align-items:flex-start;padding:7px 15px;border-radius:11px;background:var(--soft);transition:.15s;line-height:1.18;text-align:left}
  .nav-cta .nc-main{font-weight:700;font-size:14px;color:var(--blue)}
  .nav-cta:hover{background:var(--blue-100);transform:translateY(-1px)}

  /* ===== QUIZ banner moved into hero-right (compact) ===== */
  .hero-right .quiz-banner{grid-template-columns:1fr;padding:24px 28px;gap:14px;border-radius:16px;margin-top:16px;max-width:480px;margin-left:auto;box-shadow:0 8px 26px rgba(var(--blue-rgb),.22)}
  .hero-right .quiz-banner h2{font-size:20px}
  .hero-right .quiz-banner .qb-text{font-size:13.5px;margin-top:6px}
  .hero-right .quiz-banner .btn-quiz{padding:12px 20px;font-size:14.5px;justify-self:stretch;justify-content:center;width:100%}

  /* ===== FULL-PAGE views (category + cart) ===== */
  .page-view{display:none;background:var(--bg2);min-height:calc(100vh - 60px)}
  /* full-screen pages use more of the viewport width than the landing */
  .page-view .wrap{max-width:1360px}
  .page-view.show{display:block;animation:fadeIn .2s ease}
  body.page-open .landing{display:none}

  /* category top switcher pills */
  .cat-switch{display:flex;gap:8px;overflow-x:auto;padding:16px 0 6px;-webkit-overflow-scrolling:touch}
  .cat-switch::-webkit-scrollbar{height:0}
  .cat-pill{display:inline-flex;align-items:center;gap:8px;padding:9px 15px;border-radius:99px;border:1.5px solid var(--line);background:#fff;font-weight:600;font-size:13.5px;color:var(--muted);white-space:nowrap;transition:.15s;cursor:pointer;flex:none}
  .cat-pill:hover{border-color:var(--blue);color:var(--blue)}
  .cat-pill.active{background:var(--blue);border-color:var(--blue);color:#fff}
  .cat-pill svg{width:16px;height:16px}

  /* ===== CART PAGE ===== */
  .cart-page-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:44px;align-items:start;padding:18px 0 56px}
  .cart-col h3.cart-sec-h{font-size:15px;margin:22px 0 10px;color:var(--ink)}
  .cart-col h3.cart-sec-h:first-child{margin-top:0}
  .cart-sec-h.sec-h-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px}
  .cart-sec-h.sec-h-toggle .sht-title{font-size:16px;font-weight:700;color:var(--ink);display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}
  .cart-sec-h.sec-h-toggle small{font-weight:400;font-size:13.5px;color:var(--muted)}
  /* toggle switch */
  .switch{position:relative;display:inline-flex;cursor:pointer;flex-shrink:0}
  .switch input{position:absolute;opacity:0;width:0;height:0}
  .switch .sw-track{width:44px;height:25px;border-radius:13px;background:#cdd6e1;transition:background .18s;display:block}
  .switch .sw-knob{position:absolute;top:3px;left:3px;width:19px;height:19px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .18s}
  .switch input:checked + .sw-track{background:var(--blue)}
  .switch input:checked + .sw-track .sw-knob{transform:translateX(19px)}
  .cart-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}
  .cart-group-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;border-bottom:1px solid var(--line);background:var(--bg2)}
  .cart-group-head .cgh-l b{font-size:17px;font-weight:700}
  /* custom clinic dropdown (native select can't style its open list) */
  .cdd{position:relative;max-width:340px}
  .cdd-btn{display:flex;align-items:center;gap:9px;width:100%;padding:9px 13px;
    border:1.5px solid var(--line);border-radius:10px;font-size:13.5px;font-weight:600;color:var(--ink);
    background:#fff;outline:none;cursor:pointer;transition:border-color .15s, box-shadow .15s;text-align:left}
  .cdd-btn small{font-weight:500;color:var(--muted);font-size:12.5px}
  .cdd-btn svg{margin-left:auto;flex-shrink:0;color:var(--muted);transition:transform .18s}
  .cdd:hover .cdd-btn{border-color:var(--blue)}
  .cdd.open .cdd-btn{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb, var(--blue) 15%, transparent)}
  .cdd.open .cdd-btn svg{transform:rotate(180deg)}
  .cdd-list{position:absolute;top:calc(100% + 6px);right:0;min-width:100%;width:max-content;max-width:340px;z-index:60;
    background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px rgba(16,32,56,.14);
    max-height:320px;overflow:auto;padding:5px;
    opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .16s, transform .16s}
  .cdd.open .cdd-list{opacity:1;transform:translateY(0);pointer-events:auto}
  .cdd-opt{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:9px 11px;border-radius:8px;cursor:pointer;font-size:13.5px}
  .cdd-opt:hover{background:var(--bg2)}
  .cdd-opt.on{background:color-mix(in srgb, var(--blue) 10%, #fff)}
  .cdd-opt.on .co-nm{color:var(--blue)}
  .cdd-opt .co-nm{font-weight:600;color:var(--ink);white-space:nowrap}
  .cdd-opt .co-meta{font-size:12.5px;color:var(--muted);white-space:nowrap}
  /* collapsible transfer/lodging cards */
  #transportCard,#accomCard{overflow:hidden;max-height:640px;
    transition:max-height .3s ease, opacity .22s ease, padding .3s ease, border-width .3s}
  #transportCard.collapsed,#accomCard.collapsed{max-height:0;opacity:0;padding-top:0!important;padding-bottom:0!important;border-width:0}
  /* brief highlight when prices recalc after a clinic pick */
  @keyframes pricePulse{0%{transform:scale(1);color:var(--blue)}45%{transform:scale(1.07);color:var(--blue)}100%{transform:scale(1)}}
  .price-pulse{animation:pricePulse .5s ease}
  .cart-svc-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line)}
  .cart-svc-row:last-child{border-bottom:0}
  .cart-svc-row .csr-nm{font-weight:600;font-size:14.5px}
  .cart-svc-row .csr-sub{color:var(--muted);font-size:12px;margin-top:2px}
  .cart-svc-row .csr-pr{font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:14.5px;text-align:right;white-space:nowrap}
  .cart-svc-row .csr-actions{display:flex;gap:12px;margin-top:6px}
  .cart-svc-row .csr-act{font-size:11.5px;font-weight:600;cursor:pointer}
  .cart-svc-row .csr-act.rm{color:#c44}
  .cart-svc-row .csr-act.swap{color:var(--blue)}
  .cart-svc-row .csr-act:hover{text-decoration:underline}
  .cart-svc-row .csr-swap{margin-top:9px;display:none}
  .cart-svc-row .csr-swap.show{display:block}
  .cart-svc-row .csr-swap select{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px}
  .cart-summary{position:sticky;top:80px;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}
  .cart-summary-head{padding:18px;background:var(--ink);color:#fff}
  .cart-summary-head .l{font-size:11px;text-transform:uppercase;letter-spacing:.08em;opacity:.7}
  .cart-summary-head .v{font-family:'IBM Plex Mono',monospace;font-size:30px;font-weight:600;margin-top:2px}
  .cart-summary-head .v .from{font-size:14px;opacity:.7;font-weight:400;margin-right:4px}
  .cart-summary-head .uah{font-family:'IBM Plex Mono',monospace;font-size:12px;opacity:.65;margin-top:3px}
  .cart-summary-body{padding:16px 18px}
  .cart-summary-row{display:flex;justify-content:space-between;font-size:13px;padding:5px 0;color:var(--muted)}
  .cart-summary-row b{color:var(--ink);font-family:'IBM Plex Mono',monospace;font-weight:600}
  .room-class{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:11px}
  .room-opt{border:1.5px solid var(--line);border-radius:10px;padding:10px 8px;text-align:center;cursor:pointer;transition:.12s;background:#fff}
  .room-opt:hover{border-color:var(--blue)}
  .room-opt.on{border-color:var(--blue);background:var(--soft)}
  .room-opt .ro-nm{font-weight:700;font-size:12.5px}
  .room-opt .ro-pr{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--muted);margin-top:2px}

  /* ===== SPECIAL PROGRAMS (corporate + fitness-for-work) ===== */
  .prog-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
  .prog-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px;display:flex;flex-direction:column;gap:12px}
  .prog-card .pg-ic{width:50px;height:50px;border-radius:13px;background:var(--soft);color:var(--blue);display:grid;place-items:center}
  .prog-card .pg-ic svg{width:25px;height:25px}
  .prog-card h3{font-size:18px}
  .prog-card .pg-short{color:var(--muted);font-size:14px;line-height:1.55}
  .prog-card .pg-more{display:none;color:var(--muted);font-size:13.5px;line-height:1.6;padding-top:12px;margin-top:2px;border-top:1px dashed var(--line)}
  .prog-card .pg-more.show{display:block}
  .prog-card .pg-actions{display:flex;gap:10px;align-items:center;margin-top:auto;padding-top:6px;flex-wrap:wrap}
  .prog-card .pg-toggle{font-size:13px;font-weight:600;color:var(--blue);cursor:pointer;display:inline-flex;align-items:center;gap:5px}
  .prog-card .pg-note{font-size:11px;color:var(--muted);margin-top:8px;line-height:1.45}

  /* corporate band before footer */
  .corp-band{background:linear-gradient(135deg,var(--ink),var(--ink2));color:#fff;border-radius:20px;padding:32px 38px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}
  .corp-band h2{color:#fff;font-size:24px}
  .corp-band p{color:rgba(255,255,255,.85);font-size:15px;margin-top:8px;max-width:620px}
  .corp-band .btn-quiz{background:#fff;color:var(--ink);padding:14px 24px;border-radius:11px;font-weight:700;white-space:nowrap}

  /* ===== LEAD FORM (contacts) ===== */
  .lead-card{background:linear-gradient(135deg,var(--soft),#fff 70%);border:1px solid var(--soft);border-radius:18px;padding:34px 38px}
  .lead-card h2{font-size:24px;letter-spacing:-.02em}
  .lead-card .lead-sub{color:var(--muted);font-size:15px;margin-top:8px;max-width:560px;line-height:1.55}
  .lead-form{margin-top:20px;display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}
  .lead-form .lf-field{display:flex;flex-direction:column;gap:6px}
  .lead-form label{font-size:12px;color:var(--muted);font-weight:600}
  .lead-form input,.lead-form select{padding:11px 13px;border:1px solid var(--line);border-radius:10px;font-size:14.5px;outline:none;background:#fff}
  .lead-form input:focus,.lead-form select:focus{border-color:var(--blue)}
  .lead-form .btn-pri{height:44px}
  .lead-note{margin-top:14px;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--good);font-weight:600}
  .lead-note svg{width:16px;height:16px}
  .lead-sent{display:none;margin-top:16px;padding:14px 16px;background:#e7f7ee;border:1px solid #cfe8d9;border-radius:12px;color:var(--good);font-weight:600;font-size:14px}
  .lead-sent.show{display:flex;align-items:center;gap:8px}

  /* ===== bigger QUIZ modal on desktop ===== */
  @media(min-width:721px){
    .modal{max-width:920px}
    .quiz-body{padding:44px 48px 40px}
    .quiz-step .qt{font-size:27px}
    .quiz-step .qs{font-size:16px;margin-top:8px}
    .qcards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-top:28px}
    .qcard{padding:20px}
    .qcard .lab{font-size:15.5px}
    .qcard .hint{font-size:13px}
    .modal-head{padding:22px 32px}
    .modal-head .title{font-size:18px}
  }

  /* ===== responsive: cart, programs, lead, mobile compact category cards ===== */
  @media(max-width:980px){
    .cart-page-grid{grid-template-columns:1fr}
    .cart-summary{position:static}
    .prog-grid{grid-template-columns:1fr}
    .lead-form{grid-template-columns:1fr}
    .corp-band{grid-template-columns:1fr;text-align:left}
    .corp-band .btn-quiz{justify-self:start}
  }
  @media(max-width:720px){
    .hero-right .quiz-banner{max-width:100%}
    /* mobile: category cards collapse to icon + name + count + button */
    .cat-card .cat-blurb{display:none}
    .cat-card{flex-direction:row;align-items:center;flex-wrap:wrap;padding:16px 18px;gap:14px}
    .cat-card .cat-icon{width:44px;height:44px}
    .cat-card .cat-title{font-size:16px;flex:1}
    .cat-card .cat-meta{width:100%;border-top:1px solid var(--line);padding-top:12px;margin-top:0}
    .room-class{grid-template-columns:1fr}
  }


/* ===== ТЕМИ / THEMES =======================================================
   Кольорові варіанти сайту. Дефолт (без data-theme на <html>) = синя (:root вище).
   Перемикач унизу праворуч (#theme-switch у veloramed.html) ставить data-theme і
   зберігає вибір у localStorage('vm-theme'). Щоб ДОДАТИ/ЗМІНИТИ тему — редагуй лише
   блоки нижче (значення токенів). Більше ніде нічого міняти не треба. */
html[data-theme="teal"]{--blue:#0d949f;--blue-d:#0a767f;--cyan:#22b8c2;--soft:#e1f3f5;--soft2:#f0fafb;--ink:#16232b;--muted:#5d6b73;--line:#e0e7e9;--bg2:#f4f8f8;--blue-rgb:13,148,159;--ink2:#173a40;--blue-bright:#11a3b0;--blue-100:#cfeaed;--blue-150:#bce0e4;--blue-200:#cdeaed;--chart:#0d949f,#22b8c2,#0e9f8e,#7c5cfc,#2da86a,#3b5bdb;}
html[data-theme="aqua"]{--blue:#0fa6b4;--blue-d:#0c8590;--cyan:#2f7df0;--soft:#dff3f5;--soft2:#eefafb;--ink:#10314a;--muted:#566b7a;--line:#dde7eb;--bg2:#f1f8f9;--blue-rgb:15,166,180;--ink2:#1a2740;--blue-bright:#1d7fe8;--blue-100:#cdeef0;--blue-150:#b8e2e6;--blue-200:#cdeef0;--chart:#0fa6b4,#2f7df0,#0e9f8e,#7c5cfc,#2da86a,#3b5bdb;}

/* перемикач тем — тимчасовий віджет (обрати фінальний колір; потім блок + #theme-switch у html можна видалити) */
#theme-switch{position:fixed;right:22px;bottom:78px;z-index:95;display:flex;gap:6px;background:#fff;border:1px solid var(--line);border-radius:99px;padding:6px;box-shadow:var(--shadow-hi)}
#theme-switch button{width:22px;height:22px;border-radius:50%;border:2px solid #fff;outline:1px solid var(--line);cursor:pointer;padding:0;transition:.15s}
#theme-switch button[data-set="blue"]{background:#1366d6}
#theme-switch button[data-set="teal"]{background:#0d949f}
#theme-switch button[data-set="aqua"]{background:#0fa6b4}
#theme-switch button.active{outline:2px solid var(--ink);transform:scale(1.12)}
