/* Довідник закритої МФО v2 — стилі. Mobile-first. Брейкпойнти: 640px (tablet), 1000px (desktop). Змінні — у tokens.css */
@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes fade{from{opacity:0}to{opacity:1}}
@keyframes pop{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}
@keyframes sheet{from{transform:translateY(100%)}to{transform:none}}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--fb);font-size:17px;line-height:1.6;min-height:100vh}
body.has-bar{padding-bottom:76px}
h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}
ul,ol{padding:0;list-style:none}
a{color:var(--accentText);text-underline-offset:3px}
a:hover{color:var(--ink)}
button{font:inherit;color:inherit;margin:0;cursor:pointer}
::selection{background:var(--accent);color:var(--accentInk)}
:focus-visible{outline:3px solid var(--accentText);outline-offset:2px}
[hidden]{display:none!important}
.container{max-width:1200px;margin:0 auto;padding:0 var(--pad)}
.ico{flex:none;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:var(--sw);stroke-linecap:var(--cap);stroke-linejoin:var(--join)}
.ico--s{width:16px;height:16px}.ico--m{width:18px;height:18px}.ico--l{width:22px;height:22px}.ico--xl{width:32px;height:32px}
.skip{position:absolute;left:12px;top:-80px;z-index:200;padding:12px 18px;background:var(--accent);color:var(--accentInk);border-radius:var(--rb);font-weight:600;text-decoration:none}
.skip:focus{top:12px;outline:3px solid var(--accentText);outline-offset:2px;color:var(--accentInk)}

/* ---------- Кнопки ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;min-width:0;padding:8px 14px;border:1.5px solid transparent;border-radius:var(--rb);font-weight:600;font-size:16px;line-height:1.2;text-align:center;text-decoration:none;overflow-wrap:anywhere}
.btn--primary{background:var(--accent);color:var(--accentInk);border-color:var(--accent)}
.btn--primary:hover{filter:brightness(1.08);color:var(--accentInk)}
.btn--ghost{background:transparent;color:var(--ink);border:1px solid var(--ink2)}
.btn--ghost:hover{background:var(--surface2)}
.btn--lg{min-height:52px;font-size:18px}
.btn--block{width:100%}
.btn--outline{width:100%;min-height:48px;background:transparent;border-color:var(--accent);color:var(--accentText)}
.btn--outline:hover{background:var(--soft)}
.ibtn{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--line);border-radius:var(--rp);background:var(--surface);color:var(--ink)}
.ibtn:hover{background:var(--surface2)}
@media(min-width:640px){.btn{min-height:48px}.btn--lg{min-height:52px}}

/* ---------- Панель «Слабовидящим» ---------- */
.a11y-bar{background:var(--surface2);border-bottom:2px solid var(--ink)}
.a11y-bar__in{display:flex;flex-wrap:wrap;align-items:center;gap:14px 40px;padding-top:14px;padding-bottom:14px}
.a11y-grp{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.a11y-lbl{font-weight:700;font-size:15px;letter-spacing:.04em;text-transform:uppercase}
.a11y-sq{width:48px;height:48px;padding:0;border:2px solid var(--ink);border-radius:var(--r);font-weight:700;line-height:1;background:var(--bg);color:var(--ink)}
.a11y-sq[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
.a11y-sq[data-s="b"]{background:#000;color:#fff}.a11y-sq[data-s="w"]{background:#fff;color:#000}.a11y-sq[data-s="c"]{background:#9DD1FF;color:#063462}
.a11y-sq[data-s][aria-pressed="true"]{box-shadow:0 0 0 3px var(--bg),0 0 0 6px var(--ink)}
.a11y-opt{display:flex;align-items:center;gap:10px;min-height:44px;padding:0;border:0;background:transparent;font-weight:600;font-size:15px;letter-spacing:.04em;text-transform:uppercase;text-align:left}
.a11y-opt input{width:24px;height:24px;margin:0;accent-color:var(--ink)}
.a11y-off{margin-left:auto;min-height:48px;padding:0 22px;border:2px solid var(--ink);border-radius:var(--r);background:var(--bg);font-weight:700;font-size:15px;letter-spacing:.04em;text-transform:uppercase}
.a11y-off:hover{background:var(--surface2)}

/* ---------- Шапка ---------- */
.hdr{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.hdr__in{display:flex;align-items:center;gap:16px;min-height:60px}
.logo{display:inline-flex;align-items:center;gap:10px;min-width:0;margin-right:auto;color:var(--ink);text-decoration:none}
.logo:hover{color:var(--ink)}
.logo__mark{flex:none;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r);background:var(--accent);color:var(--accentInk);overflow:hidden}
.logo__mark .ico{width:20px;height:20px;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.logo__mark-img{width:100%;height:100%;object-fit:cover}
.logo__text{min-width:0;font-family:var(--fh);font-weight:var(--hw);font-size:18px;letter-spacing:var(--ht);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hdr__nav{display:none;align-items:center;gap:22px}
.hdr__nav a{padding:10px 0;color:var(--ink);font-weight:500;font-size:15px;text-decoration:none;white-space:nowrap}
.hdr__nav a:hover{color:var(--accentText)}
.hdr__tools{display:flex;align-items:center;gap:6px;flex:none}
.a11y-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;padding:0;border:1px solid var(--line);border-radius:var(--rp);background:var(--surface);font-weight:600;font-size:14.5px}
.a11y-btn:hover,.a11y-btn[aria-pressed="true"]{background:var(--surface2)}
.a11y-btn span{display:none}
.hdr__theme{display:none}
[data-theme="dark"] .i-moon,[data-theme="light"] .i-sun{display:none}
.burger .i-close,.burger[aria-expanded="true"] .i-menu{display:none}
.burger[aria-expanded="true"] .i-close{display:block}
.menu{border-top:1px solid var(--line);background:var(--bg)}
.menu__in{display:flex;flex-direction:column;padding-top:4px;padding-bottom:12px}
.menu a,.menu__theme{display:flex;align-items:center;gap:10px;min-height:48px;padding:0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);font-weight:500;font-size:17px;text-decoration:none;text-align:left}
.menu a:hover{color:var(--accentText)}
.menu__theme{border-bottom:0;margin-top:4px}
@media(min-width:640px){
  .logo__text{font-size:20px}.hdr__tools{gap:8px}
  .a11y-btn{padding:0 14px}.a11y-btn span{display:inline}
  .hdr__theme{display:inline-flex}.menu__theme{display:none}
}
@media(min-width:1000px){.hdr__nav{display:flex}.burger,.menu{display:none!important}}

/* ---------- Hero ---------- */
.hero{padding-top:var(--hp)}
.hero__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
.hero__text{display:flex;flex-direction:column;align-items:flex-start;gap:14px;min-width:0}
.hero__status{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 9px;border-radius:var(--rp);background:var(--bad-bg);color:var(--bad);font-weight:600;font-size:14px;line-height:1.3}
.hero h1{font-family:var(--fh);font-weight:var(--hw);letter-spacing:var(--ht);font-size:clamp(26px,7.4vw,32px);line-height:1.1;overflow-wrap:break-word}
.hero h1 span{color:var(--accentText)}
.hero__lead{max-width:62ch;color:var(--ink2);font-size:16px;line-height:1.55;text-wrap:pretty}
.notice{display:flex;align-items:flex-start;gap:8px;padding:8px 14px;background:var(--soft);border-radius:var(--r);font-size:14.5px;line-height:1.45}
.notice .ico{margin-top:2px;color:var(--accentText)}
.notice span{color:var(--ink2)}
.hero__art{display:none}
.hero__art svg{display:block;width:100%;height:auto}
@media(min-width:640px){
  .hero__text{gap:18px}
  .hero h1{font-size:clamp(30px,4vw,46px)}
  .hero__lead{font-size:18px}
  /* Варіанти героя: data-hero на .hero = split | centered | left | card (за скіном: editorial=left, clean/warm=split, soft=centered, strict=card) */
  .hero[data-hero="split"] .hero__grid{grid-template-columns:minmax(0,1.5fr) minmax(0,.5fr);gap:48px;align-items:center}
  .hero[data-hero="split"] .hero__art{display:block;max-width:260px;width:100%;justify-self:center}
  .hero[data-hero="centered"] .hero__grid{justify-items:center;text-align:center}
  .hero[data-hero="centered"] .hero__text{align-items:center}
  .hero[data-hero="centered"] h1{max-width:22ch}
  .hero[data-hero="centered"] .hero__art{display:block;order:-1;max-width:150px;width:100%}
  .hero[data-hero="card"] .hero__grid{grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:40px;align-items:center;padding:36px 40px;background:var(--surface2);border-radius:var(--rl)}
  .hero[data-hero="card"] .hero__art{display:block;max-width:200px;width:100%;justify-self:center}
}

/* ---------- Pills ---------- */
.pills{padding-top:20px}
.pills ul{display:flex;gap:8px;padding:3px;overflow-x:auto;scrollbar-width:none}
.pills ul::-webkit-scrollbar{display:none}
.pills li{flex:none}
.pills a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:1px solid var(--line);border-radius:var(--rp);color:var(--ink);font-weight:500;font-size:15.5px;text-decoration:none;white-space:nowrap}
.pills a:hover{border-color:var(--accent);background:var(--soft);color:var(--ink)}
@media(min-width:640px){.pills ul{flex-wrap:wrap;overflow:visible}}

/* ---------- Секції ---------- */
.section{padding-top:var(--sec);scroll-margin-top:80px}
.section--first{padding-top:calc(var(--sec) * .6);scroll-margin-top:76px}
.section h2,.h2{font-family:var(--fh);font-weight:var(--hw);letter-spacing:var(--ht);font-size:clamp(24px,3vw,34px);line-height:1.15;text-wrap:balance}
.section__lead{margin-top:8px;max-width:62ch;color:var(--ink2);font-size:16.5px;line-height:1.55;text-wrap:pretty}
.head-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.ad-link{flex:none;margin:-12px 0;padding:12px 0 12px 8px;border:0;background:transparent;color:var(--ink2);font-weight:500;font-size:13px;line-height:1.2;text-decoration:underline dotted;text-underline-offset:3px}
.ad-link:hover{color:var(--ink)}

/* ---------- Картки МФО ---------- */
.cards{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:16px;align-items:stretch}
.card{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "metrics" "actions";gap:14px;align-content:start;min-width:0;padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--rl)}
.card--featured{grid-column:1/-1;padding:18px;background:var(--soft);border-color:var(--accent)}
.card.is-extra{display:none}
.cards.is-open .card.is-extra{display:grid}
.card__head{grid-area:head;display:flex;flex-direction:column;gap:10px;min-width:0}
.card__top{display:flex;align-items:center;gap:12px;min-width:0}
.card__tile{flex:none;width:72px;height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r);background:var(--soft);color:var(--accentText);font-family:var(--fh);font-weight:var(--hw);font-size:18px;overflow:hidden}
.card__tile img{width:100%;height:100%;object-fit:contain;border-radius:inherit;background:#fff;padding:4px}
.card--featured .card__tile{background:var(--surface)}
.card__id{min-width:0;flex:1 1 auto}
.card__name{font-family:var(--fh);font-weight:var(--hw);letter-spacing:var(--ht);font-size:20px;line-height:1.2;overflow-wrap:anywhere}
.card__legal{max-width:100%;margin-top:2px;font-size:14px;line-height:1.4;color:var(--ink2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card__labels{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}
.tag{display:inline-flex;align-items:center;gap:6px;padding:3px 11px;border:1.5px solid var(--accent);border-radius:var(--rp);color:var(--ink);font-weight:600;font-size:13.5px;line-height:1.4}
button.tag{padding:3px 11px 3px 8px;border:0;background:var(--accent);color:var(--accentInk)}
button.tag:hover{filter:brightness(1.1)}
.metrics{grid-area:metrics;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:12px;border-top:1px solid var(--line)}
.metrics>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.metrics dt{order:2;font-size:13px;line-height:1.3;color:var(--ink2)}
.metrics dd{order:1;font-family:var(--fn);font-weight:600;font-size:17px;line-height:1.25;overflow-wrap:anywhere}
.card__act{grid-area:actions;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:4px 10px;align-content:end}
.more-btn{margin-top:12px}
@media(min-width:640px){
  .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}
  .card,.card.is-extra{display:grid}
  .card{gap:18px;padding:22px}
  .card--featured{padding:30px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-template-areas:"head metrics" "actions metrics";grid-template-rows:auto 1fr;gap:24px 56px}
  .card__name{font-size:22px}
  .metrics{display:flex;flex-direction:column;gap:0;padding-top:0;align-self:start}
  .metrics>div{flex-direction:row;justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;border-bottom:1px solid var(--line)}
  .metrics dt{order:1;font-size:15px}
  .metrics dd{order:2;font-size:18px}
  .card__act{grid-template-columns:repeat(2,minmax(0,1fr))}
  .card--featured .metrics{align-self:center}
  .card--featured .metrics>div{padding:16px 0}
  .card--featured .metrics dd{font-size:26px}
  .card--featured .card__name{font-size:30px}
  .card--featured .card__tile{width:92px;height:60px;font-size:24px}
  .card--featured .btn{min-height:54px}
  .more-btn{display:none}
}
@media(min-width:1000px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* ---------- Хронологія ---------- */
.tl{position:relative;max-width:760px;margin-top:24px}
.tl__line,.tl__fill{position:absolute;left:15px;top:16px;bottom:16px;width:2px}
.tl__line{background:var(--line)}
.tl__fill{background:var(--accent);transform-origin:top}
.tl ol{position:relative;display:flex;flex-direction:column;gap:22px}
.tl li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:16px}
.tl__ico{width:32px;height:32px;color:var(--c);background:var(--bg);border-radius:50%}
.tl__body{min-width:0;padding-top:2px}
.tl__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}
.tl time{font-family:var(--fn);font-weight:600;font-size:14.5px;color:var(--ink2)}
.badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 6px;border-radius:var(--rp);background:var(--cbg);color:var(--c);font-weight:600;font-size:13.5px;line-height:1.3}
.tl h3{margin:4px 0 2px;font-family:var(--fh);font-weight:var(--hw);font-size:19px;line-height:1.3;letter-spacing:var(--ht)}
.tl p{color:var(--ink2);font-size:16px;line-height:1.55;text-wrap:pretty}
.tl .src{margin-top:6px;font-size:13.5px}
.st-ok{--c:var(--ok);--cbg:var(--ok-bg)}.st-renewed{--c:var(--info);--cbg:var(--info-bg)}.st-paused{--c:var(--warn);--cbg:var(--warn-bg)}.st-revoked{--c:var(--bad);--cbg:var(--bad-bg)}.st-note{--c:var(--gray);--cbg:var(--gray-bg)}

/* ---------- Таблиці-списки (Данные компании / Архив) ---------- */
.dl{margin-top:20px;max-width:760px;border-top:1px solid var(--line)}
.dl>div{display:grid;grid-template-columns:minmax(110px,.8fr) minmax(0,1.2fr);gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}
.dl dt{color:var(--ink2);font-size:15px;line-height:1.5}
.dl dd{font-weight:600;overflow-wrap:anywhere}
.dl--split>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.dl--split dt{line-height:1.4}.dl--split dd{text-align:right}

/* ---------- Порівняння ---------- */
.cmp{margin-top:22px;max-width:900px;font-size:clamp(13.5px,3.7vw,16px);line-height:1.35}
.cmp__row{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1fr) minmax(0,1fr);border-bottom:1px solid var(--line)}
.cmp__row--head{align-items:end;border-bottom:2px solid var(--ink)}
.cmp__c{padding:12px clamp(6px,2vw,18px);font-weight:600;overflow-wrap:anywhere}
.cmp__c:first-child{padding-left:0;color:var(--ink2);font-weight:500}
.cmp__row--head .cmp__c{font-weight:700}
.cmp__row--head .cmp__c:first-child{color:var(--ink2);font-weight:700}
.cmp__c:last-child{background:var(--soft)}
.cmp__c small{display:block;font-weight:500;font-size:.88em;color:var(--ink2)}
.cmp .ok{color:var(--ok)}.cmp .bad{color:var(--bad)}
.note{margin-top:12px;font-size:13.5px;line-height:1.5;color:var(--ink2)}

/* ---------- Відгуки ---------- */
.rev-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.rev-head p{margin-top:12px;max-width:60ch;color:var(--ink2);font-size:18px;line-height:1.55;text-wrap:pretty}
.rev-nav{display:flex;gap:8px}
.rev-nav button{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border:1.5px solid var(--ink2);border-radius:var(--rp);background:transparent}
.rev-nav button:hover{background:var(--surface2)}
.revs{display:flex;gap:16px;margin-top:28px;padding-bottom:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}
.rev{flex:0 0 min(340px,86%);min-width:0;display:flex;flex-direction:column;gap:14px;padding:24px;scroll-snap-align:start;background:var(--surface);border:1px solid var(--line);border-radius:var(--rl);box-shadow:var(--shadow)}
.rev__who{display:flex;align-items:center;gap:12px}
.rev__ava{flex:none;width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--soft);font-weight:700;font-size:16px;letter-spacing:.02em}
.rev__name{font-weight:700;line-height:1.3}
.rev__date{font-size:14px;color:var(--ink2);line-height:1.3}
.stars{display:flex;gap:3px;color:var(--accentText)}
.star{width:20px;height:20px;stroke-width:1.6;stroke-linejoin:round}
.star--on{fill:currentColor}
.rev p{font-size:17px;line-height:1.6;text-wrap:pretty}
@media(min-width:1000px){.rev{flex:1 1 0}.rev-nav{display:none}}

/* ---------- FAQ ---------- */
.faq{margin-top:28px;max-width:840px;border-bottom:1px solid var(--line)}
.faq__item{border-top:1px solid var(--line)}
.faq__q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 4px;border:0;background:transparent;text-align:left;font-family:var(--fh);font-weight:var(--hw);font-size:clamp(18px,2.2vw,21px);line-height:1.3;letter-spacing:var(--ht);color:var(--ink)}
.faq__q:hover{color:var(--accentText)}
.faq__q:focus-visible{outline-offset:-3px}
.faq__q span{min-width:0;overflow-wrap:anywhere}
.faq__q .ico{width:22px;height:22px;transition:transform .25s ease}
.faq__q[aria-expanded="true"] .ico{transform:rotate(180deg)}
.faq__a{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .3s ease}
.faq__a>div{overflow:hidden}
.faq__item:has(.faq__q[aria-expanded="true"]) .faq__a{grid-template-rows:1fr;visibility:visible}
.faq__a p{padding:0 4px 22px;max-width:68ch;color:var(--ink2);font-size:17px;line-height:1.65;text-wrap:pretty}

/* ---------- SEO ---------- */
.seo{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;margin-top:32px;align-items:start}
.toc{padding:16px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
.toc b{display:block;margin-bottom:8px;font-size:14px;color:var(--ink2)}
.toc a{display:block;padding:9px 0;color:var(--ink);font-weight:500;line-height:1.35;text-decoration:none}
.toc a:hover{color:var(--accentText);text-decoration:underline}
.seo__text{max-width:68ch;min-width:0}
.seo article{padding-bottom:36px;scroll-margin-top:88px}
.seo h3{margin-bottom:12px;font-family:var(--fh);font-weight:var(--hw);letter-spacing:var(--ht);font-size:clamp(22px,2.6vw,28px);line-height:1.2;text-wrap:balance}
.seo article p{font-size:18px;line-height:1.7;text-wrap:pretty}
.seo article p+p{margin-top:14px}
@media(min-width:1000px){
  .seo{grid-template-columns:250px minmax(0,1fr);gap:72px}
  .toc{position:sticky;top:96px;padding:4px 0 4px 20px;background:none;border:0;border-left:2px solid var(--line);border-radius:0}
}

/* ---------- Підвал ---------- */
.ftr{margin-top:var(--sec);background:var(--ftBg);color:var(--ftInk);border-top:var(--ftBd,none)}
.ftr__in{padding-top:44px;padding-bottom:24px}
.ftr__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;font-size:15px;line-height:1.6}
.ftr__brand,.ftr__contact{grid-column:1/-1}
.ftr__grid>*{min-width:0}
.ftr .logo{color:var(--ftInk)}
.ftr .logo__text{font-size:20px;overflow-wrap:anywhere;white-space:normal}
.ftr__note{margin-top:14px;max-width:46ch;color:var(--ftMute);text-wrap:pretty}
.ftr__note+.ftr__note{margin-top:10px;font-size:14px;scroll-margin-top:90px}
.ftr h4{margin:0 0 10px;font-size:13.5px;font-weight:700;color:var(--ftHi)}
.ftr li{display:block}
.ftr li a{display:inline-block;padding:5px 0;color:var(--ftInk);text-decoration:none}
.ftr a:hover{color:var(--ftHi);text-decoration:underline}
.ftr :focus-visible{outline-color:var(--ftHi)}
.ftr__contact p{color:var(--ftMute)}
.ftr__contact a{display:inline-block;margin-top:2px;padding:4px 0;color:var(--ftHi);font-weight:600;overflow-wrap:anywhere}
.ftr__contact p+p{margin-top:10px;font-size:14px}
.ftr__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 24px;margin-top:32px;padding-top:18px;border-top:1px solid var(--ftLine);font-size:13.5px;color:var(--ftMute)}
@media(min-width:640px){.ftr__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ftr__contact{grid-column:auto}}
@media(min-width:1000px){.ftr__grid{grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr))}.ftr__brand{grid-column:auto}}

/* ---------- Плаваючі елементи (лише <640) ---------- */
.offer-bar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:none;align-items:center;gap:12px;padding:10px var(--pad) calc(10px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--surface) 96%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);animation:sheet .28s cubic-bezier(.2,.8,.2,1) both}
.offer-bar.is-on{display:flex}
.offer-bar .card__tile{width:76px;height:48px;font-size:20px}
.offer-bar__t{min-width:0;flex:1 1 auto}
.offer-bar__t b{display:block;font-family:var(--fh);font-weight:var(--hw);font-size:17px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.offer-bar__t span{display:block;font-size:13.5px;line-height:1.3;color:var(--ink2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.offer-bar .btn{flex:none;padding:8px 20px}
.to-top{position:fixed;right:14px;bottom:18px;z-index:39;display:none;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink);box-shadow:0 2px 12px rgba(0,0,0,.2)}
.to-top.is-on{display:inline-flex}
.to-top.is-raised{bottom:84px}
.to-top .ico{width:22px;height:22px;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
@media(min-width:640px){.offer-bar,.offer-bar.is-on,.to-top,.to-top.is-on{display:none}body.has-bar{padding-bottom:0}}

/* ---------- Модалки ---------- */
.modal{position:fixed;inset:0;z-index:100;display:none;align-items:flex-end;justify-content:center;background:rgba(8,12,18,.55);animation:fade .2s both}
.modal.is-open{display:flex}
.dlg{display:flex;flex-direction:column;width:100%;max-height:90vh;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--rl) var(--rl) 0 0;box-shadow:0 24px 80px rgba(0,0,0,.35);overflow:hidden;outline:0;animation:sheet .32s cubic-bezier(.2,.8,.2,1) both}
.dlg__grab{flex:none;display:flex;justify-content:center;padding-top:10px}
.dlg__grab::before{content:"";width:44px;height:5px;border-radius:3px;background:var(--line)}
.dlg__head{flex:none;display:flex;gap:16px;align-items:flex-start;justify-content:space-between;padding:16px 20px}
.dlg__head>div{min-width:0;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.dlg__head h2{font-family:var(--fh);font-weight:var(--hw);font-size:clamp(22px,3vw,28px);line-height:1.2;letter-spacing:var(--ht);overflow-wrap:anywhere}
.dlg__head small{font-size:14.5px;line-height:1.4;color:var(--ink2);overflow-wrap:anywhere}
.dlg__head .ibtn{flex:none;width:46px;height:46px}
.dlg__body{flex:1 1 auto;overflow-y:auto;padding:4px 20px 8px}
.dlg__body--tabs{padding-top:20px;min-height:250px}
.dlg__foot{flex:none;display:flex;flex-direction:column;gap:4px;padding:16px 20px;border-top:1px solid var(--line)}
.dlg p{font-size:17px;line-height:1.6;text-wrap:pretty}
.dlg__body>p{margin-bottom:14px}
.dlg__body>p.muted{margin-bottom:0;color:var(--ink2)}
@media(min-width:640px){
  .modal{align-items:center;padding:24px}
  .dlg{width:min(660px,100%);max-height:min(88vh,760px);border-radius:var(--rl);animation:pop .24s ease-out both}
  .dlg__grab{display:none}
  .dlg__head,.dlg__foot{padding:20px 28px}
  .dlg__body{padding:4px 28px 8px}.dlg__body--tabs{padding-top:24px}
}
.tabs-wrap{position:relative;flex:none}
.tabs{display:flex;overflow-x:auto;scrollbar-width:none;padding:0 12px;border-bottom:1px solid var(--line)}
.tabs::-webkit-scrollbar{display:none}
.tabs button{flex:none;min-height:48px;padding:0 18px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--ink2);font-weight:600;font-size:16px;line-height:1.2;white-space:nowrap}
.tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--accent)}
.tabs button:focus-visible{outline-offset:-3px}
.tabs-wrap__more{position:absolute;right:0;top:0;bottom:1px;width:64px;display:none;align-items:center;justify-content:flex-end;padding-right:10px;pointer-events:none;background:linear-gradient(90deg,transparent,var(--surface) 65%)}
.tabs-wrap.has-more .tabs-wrap__more{display:flex}
.tbl{border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.tbl__row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr);border-top:1px solid var(--line)}
.tbl__row:first-child{border-top:0;background:var(--surface2);font-weight:700;font-size:14px;line-height:1.3}
.tbl__row>div{padding:14px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}
.tbl__row:first-child>div{padding:12px 14px}
.tbl__row>div:first-child{font-weight:400;color:var(--ink2);font-size:15px}
.tbl__row:first-child>div:first-child{font-weight:700}
.tbl--2 .tbl__row{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
.grp{margin-bottom:22px}
.grp h3{margin:0 0 8px;font-size:15px;font-weight:700;color:var(--ink2);line-height:1.3}
.grp li{display:flex;gap:10px;align-items:flex-start;line-height:1.5}
.grp li+li{margin-top:8px}
.grp .ico{margin-top:2px;color:var(--accentText)}
.dl--modal{margin:0;max-width:none;border:0}
.dl--modal>div{grid-template-columns:minmax(100px,.8fr) minmax(0,1.4fr);padding:14px 0}
.dl--modal>div:last-child{border-bottom:0}
.ticks{margin:0 0 20px;display:flex;flex-direction:column;gap:10px}
.ticks li{display:flex;gap:10px;align-items:flex-start;line-height:1.5}
.ticks .ico{margin-top:2px;color:var(--ok)}
.disc{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;background:var(--surface2);border:1.5px solid var(--ink2);border-radius:var(--r)}
.disc .ico{width:22px;height:22px;margin-top:1px}
.disc p{font-weight:600;line-height:1.5}

/* ---------- Анімації при скролі (прогресивно) ---------- */
@supports (animation-timeline:view()){
  .reveal,.tl li{animation:rise linear both;animation-timeline:view();animation-range:entry 0% entry 40%}
  .tl li{animation-range:entry 0% entry 45%}
  .tl__fill{animation:grow linear both;animation-timeline:view();animation-range:cover 5% cover 55%}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* ---------- Режим «Слабовидящим» ---------- */
[data-a11y="1"] *{animation:none!important;transition:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
[data-a11y="1"][data-scheme="w"]{--a-bg:#FFFFFF;--a-s2:#EDEDED;--a-ink:#000000;color-scheme:light}
[data-a11y="1"][data-scheme="b"]{--a-bg:#000000;--a-s2:#1C1C1C;--a-ink:#FFFFFF;color-scheme:dark}
[data-a11y="1"][data-scheme="c"]{--a-bg:#9DD1FF;--a-s2:#C4E3FF;--a-ink:#063462;color-scheme:light}
:root[data-a11y="1"][data-scheme]{
  --bg:var(--a-bg);--surface:var(--a-bg);--surface2:var(--a-s2);--ink:var(--a-ink);--ink2:var(--a-ink);--line:var(--a-ink);
  --accent:var(--a-ink);--accentInk:var(--a-bg);--accentText:var(--a-ink);--soft:var(--a-s2);
  --ok:var(--a-ink);--ok-bg:var(--a-s2);--info:var(--a-ink);--info-bg:var(--a-s2);--warn:var(--a-ink);--warn-bg:var(--a-s2);--bad:var(--a-ink);--bad-bg:var(--a-s2);--gray:var(--a-ink);--gray-bg:var(--a-s2);
  --ftBg:var(--a-bg);--ftInk:var(--a-ink);--ftMute:var(--a-ink);--ftHi:var(--a-ink);--ftLine:var(--a-ink);--ftBd:3px solid var(--a-ink)
}
[data-a11y="1"][data-fs="2"]{--z:1.25}
[data-a11y="1"][data-fs="3"]{--z:1.5}
[data-a11y="1"] .page,[data-a11y="1"] .dlg{zoom:var(--z,1)}
[data-noimg="1"] [data-img]{display:none!important}
