/* ==========================================================================
   v54 — жидкое стекло, лавандовая основа, тексты Fontshare, тарифы как в
   референсе, круговые графики из точек, политика возврата и согласие.
   Грузится после v53.css; тот же приём специфичности :root:not(#v).

   • Основной цвет — фиолетовый/лавандовый (просьба пользователя): акцент,
     ссылки, фокус, выделенный тариф. Синий остаётся только у звёзд и PS.
   • Жидкое стекло (LiquidButton): кромку рисует стопка внутренних бликов,
     середина — слабый оттенок своего цвета (--lg-tint, 6–14%), без неона и
     без цветных ореолов; в Chromium с мышью фон под стеклом «течёт»
     (#lq-glass — турбулентность из glass.js), иначе — матовое размытие.
   • Текстовые стили — 16 ролей из пяти гарнитур Fontshare (см. DESIGN.md).
   ========================================================================== */

/* 0. Гарнитуры Fontshare (свои файлы) ------------------------------------ */
@font-face{font-family:"Clash Display";src:url("../assets/fonts/clash-display-500.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Clash Display";src:url("../assets/fonts/clash-display-600.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Clash Display";src:url("../assets/fonts/clash-display-700.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Satoshi";src:url("../assets/fonts/satoshi-500.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Satoshi";src:url("../assets/fonts/satoshi-700.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Fira Sans";src:url("../assets/fonts/fira-sans-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Fira Sans";src:url("../assets/fonts/fira-sans-400-italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Azeret Mono";src:url("../assets/fonts/azeret-mono-500.woff2") format("woff2");font-weight:500;font-display:swap}

/* 1. Токены: лаванда — основной цвет, гарнитуры ролей, стекло ------------- */
:root:not(#v){
  --accent:#b9a6ff;--accent-hard:#d8ccff;
  --accent-fill:rgba(170,148,255,.16);--accent-fill-hover:rgba(170,148,255,.26);
  --accent-edge:rgba(185,166,255,.6);--accent-soft:rgba(170,148,255,.1);
  --lav:#b9a6ff;--brand:#8b5cf6;
  --dg-from:rgba(190,175,255,.36);--dg-to:rgba(160,150,255,.2);

  --f-wordmark:"Clash Display","Manrope",system-ui,sans-serif;     /* знак, слова-полутона, латинские имена */
  --f-num:"Satoshi","Manrope",system-ui,sans-serif;                /* цены и крупные числа */
  --f-note:"Fira Sans","Manrope",system-ui,sans-serif;              /* пояснения, юридический текст */
  --f-data:"Azeret Mono",ui-monospace,"SF Mono",Menlo,monospace;    /* номера заказов, подписи осей */

  /* жидкое стекло: стопка внутренних бликов (тёмная тема) */
  --lg-tint:var(--lav);
  --lq-rim:inset 3px 3px .5px -3.5px rgba(255,255,255,.09),inset -3px -3px .5px -3.5px rgba(255,255,255,.85),
           inset 1px 1px 1px -.5px rgba(255,255,255,.6),inset -1px -1px 1px -.5px rgba(255,255,255,.6),
           inset 0 0 2px 2px rgba(255,255,255,.05);
  --lq-haze:inset 0 0 6px 6px color-mix(in srgb,var(--lg-tint) 12%,transparent);
  --lq-drop:0 0 8px rgba(0,0,0,.03),0 2px 6px rgba(0,0,0,.08),0 0 12px rgba(0,0,0,.15);
  --lq-fill:color-mix(in srgb,var(--lg-tint) 7%,rgba(255,255,255,.015));
  --lq-fill-hover:color-mix(in srgb,var(--lg-tint) 12%,rgba(255,255,255,.03));
}
:root[data-theme="light"]:not(#v){
  --accent:#5b3fd1;--accent-hard:#45309f;
  --accent-fill:rgba(91,63,209,.1);--accent-fill-hover:rgba(91,63,209,.16);
  --accent-edge:rgba(91,63,209,.48);--accent-soft:rgba(91,63,209,.07);
  --lav:#5b3fd1;
  --dg-from:rgba(70,50,170,.3);--dg-to:rgba(40,40,90,.22);
  --lq-rim:inset 3px 3px .5px -3px rgba(0,0,0,.55),inset -3px -3px .5px -3px rgba(0,0,0,.5),
           inset 1px 1px 1px -.5px rgba(0,0,0,.32),inset -1px -1px 1px -.5px rgba(0,0,0,.32),
           inset 0 0 2px 2px rgba(0,0,0,.03);
  --lq-haze:inset 0 0 6px 6px color-mix(in srgb,var(--lg-tint) 8%,transparent);
  --lq-drop:0 0 6px rgba(0,0,0,.03),0 2px 6px rgba(0,0,0,.07),0 0 12px rgba(255,255,255,.15);
  --lq-fill:color-mix(in srgb,var(--lg-tint) 5%,rgba(255,255,255,.45));
  --lq-fill-hover:color-mix(in srgb,var(--lg-tint) 9%,rgba(255,255,255,.6));
}

/* 2. Жидкое стекло — кнопки и переключатели --------------------------------- */
:root:not(#v) .btn,:root:not(#v) .menu-btn,:root:not(#v) .hwf__up,:root:not(#v) .pseg,:root:not(#v) .chip,
:root:not(#v) .seg,:root:not(#v) .pick-seg,:root:not(#v) .cart-btn,:root:not(#v) .account-btn,:root:not(#v) .hdr-btn,
:root:not(#v) .menu__close,:root:not(#v) .charts-tools__group,:root:not(#v) .charts-tools__toggle,:root:not(#v) .pagelinks a,
:root:not(#v) .menu-lang,:root:not(#v) .menu-theme,:root:not(#v) .set-opt{
  border-color:transparent;background:var(--lq-fill);
  box-shadow:var(--lq-drop),var(--lq-rim),var(--lq-haze);
  -webkit-backdrop-filter:blur(10px) saturate(160%);backdrop-filter:blur(10px) saturate(160%);
  transition:background-color .3s var(--e-out),box-shadow .3s var(--e-out),color .2s}
:root:not(#v) .btn:hover,:root:not(#v) .menu-btn:hover,:root:not(#v) .hwf__up:hover,:root:not(#v) .chip:hover,
:root:not(#v) .cart-btn:hover,:root:not(#v) .account-btn:hover,:root:not(#v) .hdr-btn:hover,:root:not(#v) .menu__close:hover,
:root:not(#v) .pagelinks a:hover{background:var(--lq-fill-hover);border-color:transparent}
/* покупка — тот же стеклянный материал, оттенок лаванды сильнее */
:root:not(#v) .btn--primary,:root:not(#v) .btn--grad,:root:not(#v) .btn--solid,:root:not(#v) .card__foot .btn,
:root:not(#v) .pick-add,:root:not(#v) .custom-amount__foot .btn{
  --lg-tint:var(--lav);background:color-mix(in srgb,var(--lav) 16%,transparent);
  box-shadow:var(--lq-drop),var(--lq-rim),inset 0 0 6px 6px color-mix(in srgb,var(--lav) 18%,transparent)}
:root:not(#v) .btn--primary:hover,:root:not(#v) .btn--grad:hover,:root:not(#v) .btn--solid:hover,
:root:not(#v) .card__foot .btn:hover,:root:not(#v) .pick-add:hover{background:color-mix(in srgb,var(--lav) 24%,transparent)}
/* светлое стекло — кнопка выделенного тарифа (как белая кнопка референса) */
:root:not(#v) .btn--light{color:#16171c;background:color-mix(in srgb,#fff 82%,var(--lav) 8%);
  box-shadow:var(--lq-drop),inset 1px 1px 1px -.5px rgba(255,255,255,.9),inset -1px -1px 1px -.5px rgba(0,0,0,.18),
             inset 0 0 6px 6px color-mix(in srgb,var(--lav) 12%,transparent)}
:root:not(#v) .btn--light:hover{background:#fff;color:#16171c}
:root[data-theme="light"]:not(#v) .btn--light{color:#fff;background:color-mix(in srgb,var(--lav) 88%,#16171c)}
:root[data-theme="light"]:not(#v) .btn--light:hover{background:var(--lav);color:#fff}
/* «течёт»: Chromium + мышь */
html.lq-refract:not(#v) .btn,html.lq-refract:not(#v) .menu-btn,html.lq-refract:not(#v) .hwf__up,
html.lq-refract:not(#v) .pseg,html.lq-refract:not(#v) .chip,html.lq-refract:not(#v) .cart-btn,
html.lq-refract:not(#v) .pagelinks a{
  -webkit-backdrop-filter:url(#lq-glass) saturate(150%);backdrop-filter:url(#lq-glass) saturate(150%)}
:root:not(#v) .pseg__thumb{border:0;background:color-mix(in srgb,var(--lg-tint) 16%,rgba(255,255,255,.08));
  box-shadow:var(--lq-rim),inset 0 0 4px 3px color-mix(in srgb,var(--lg-tint) 16%,transparent)}
:root[data-theme="light"]:not(#v) .pseg__thumb{background:rgba(255,255,255,.85)}

/* 3. Жидкое стекло — карточки и панели --------------------------------------- */
:root:not(#v) .card,:root:not(#v) .tile,:root:not(#v) .plan__card,:root:not(#v) .quick,:root:not(#v) .trust__item,
:root:not(#v) .faq__item,:root:not(#v) .notice,:root:not(#v) .summary,:root:not(#v) .cart-item,:root:not(#v) .pay-card,
:root:not(#v) .chart,:root:not(#v) .product-projection__item,:root:not(#v) .showcase-banner,:root:not(#v) .donut,
:root:not(#v) .custom-amount,:root:not(#v) .form-block,:root:not(#v) .empty,:root:not(#v) .pricing__perks,
:root:not(#v) .menu__bot,:root:not(#v) .fx-ring,:root:not(#v) .faq-cta,:root:not(#v) .faq-video{
  border-color:transparent;background:var(--lq-fill);
  box-shadow:var(--lq-drop),var(--lq-rim),inset 0 0 8px 6px color-mix(in srgb,var(--lg-tint) 7%,transparent)}
:root:not(#v) .card:hover,:root:not(#v) .tile:hover,:root:not(#v) .plan__card:hover,:root:not(#v) .trust__item:hover,
:root:not(#v) .faq__item:hover,:root:not(#v) .product-projection__item:hover,:root:not(#v) .donut:hover{
  background:var(--lq-fill-hover);border-color:transparent;
  box-shadow:var(--lq-drop),var(--lq-rim),inset 0 0 10px 7px color-mix(in srgb,var(--lg-tint) 11%,transparent)}
html.lq-refract:not(#v) .plan__card,html.lq-refract:not(#v) .quick,html.lq-refract:not(#v) .trust__item,
html.lq-refract:not(#v) .donut,html.lq-refract:not(#v) .tile{
  -webkit-backdrop-filter:url(#lq-glass) saturate(150%);backdrop-filter:url(#lq-glass) saturate(150%)}
/* оттенок стекла — цвет смысла */
:root:not(#v) .card--stars,:root:not(#v) .quick,:root:not(#v) .product-projection__item:nth-child(1){--lg-tint:var(--c-stars)}
:root:not(#v) .card--premium,:root:not(#v) .pricing--premium,:root:not(#v) .product-projection__item:nth-child(2){--lg-tint:var(--c-premium)}
:root:not(#v) .card--giftcard,:root:not(#v) .tile--cat-playstation,:root:not(#v) .product-projection__item:nth-child(3){--lg-tint:var(--c-ps)}
:root:not(#v) .card--tier-ess,:root:not(#v) .plan--ess,:root:not(#v) .product-projection__item:nth-child(4){--lg-tint:var(--c-ess)}
:root:not(#v) .card--tier-ext,:root:not(#v) .plan--ext{--lg-tint:var(--c-ext)}
:root:not(#v) .card--tier-dlx,:root:not(#v) .plan--dlx{--lg-tint:var(--c-dlx)}
:root:not(#v) .tile--cat-telegram{--lg-tint:var(--c-premium)}
/* шапка — стекло без цветной каймы над текстом */
:root:not(#v) .header.is-scrolled .header__bar{background:color-mix(in srgb,var(--bg) 70%,transparent);
  box-shadow:var(--lq-drop),var(--lq-rim)}
/* телефон: стеклянным кнопкам нужен воздух — тема уходит в меню (там есть
   переключатель), зазор 6px, ряд помещается в панель без выноса за край */
@media (max-width:440px){
  :root:not(#v) .header .theme-toggle{display:none}
  :root:not(#v) .header__bar{gap:6px;padding:0 5px 0 12px}
}

/* 4. Текстовые стили (роли) ------------------------------------------------- */
:root:not(#v) .logo__word,:root:not(#v) .hwf__brand strong{font-family:var(--f-wordmark);font-weight:600;letter-spacing:-.01em}
:root:not(#v) .halftone{font-family:var(--f-wordmark)}
:root:not(#v) .plan--ess .plan__term,:root:not(#v) .plan--ext .plan__term,:root:not(#v) .plan--dlx .plan__term,
:root:not(#v) .product-projection__item small,:root:not(#v) .showcase-banner__big{font-family:var(--f-wordmark);letter-spacing:.01em}
:root:not(#v) .plan__price,:root:not(#v) .quick__price,:root:not(#v) .price,:root:not(#v) .product-art__value,
:root:not(#v) .custom-amount__price,:root:not(#v) .pick-price__num,:root:not(#v) .donut__total b,:root:not(#v) .summary__row--total{
  font-family:var(--f-num);font-weight:700;letter-spacing:-.025em}
:root:not(#v) .plan__per,:root:not(#v) .quick__note,:root:not(#v) .hwf__about,:root:not(#v) .hwf__legal,
:root:not(#v) .consent__text,:root:not(#v) .policy__body{font-family:var(--f-note)}
:root:not(#v) .plan__per,:root:not(#v) .quick__note{font-style:italic}
:root:not(#v) .chart-label,:root:not(#v) .chart-value,:root:not(#v) .pay-card__title i,:root:not(#v) .pay-card__code,
:root:not(#v) .pay-addr__code,:root:not(#v) .donut__val em,:root:not(#v) .product-art__serial{font-family:var(--f-data);letter-spacing:0}

/* 5. Тарифы как в референсе ------------------------------------------------ */
:root:not(#v) .pricing{position:relative;isolation:isolate;gap:var(--s-7);margin-top:var(--s-6);padding:var(--s-8) 0 var(--s-7)}
:root:not(#v) .pricing__stars{position:absolute;z-index:-1;top:0;bottom:0;left:calc(50% - 50vw);width:100vw;pointer-events:none;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent)}
:root:not(#v) .pricing__stars canvas{position:absolute;inset:0;display:block}
:root:not(#v) .pricing__head{display:grid;justify-items:center;gap:var(--s-3);text-align:center}
:root:not(#v) .pricing__title{margin:0;font:600 clamp(32px,4.4vw,52px)/1.05 var(--f-sans);letter-spacing:-.03em;color:var(--text)}
:root:not(#v) .pricing__sub{margin:0 0 var(--s-4);max-width:52ch;font:400 clamp(16px,1.4vw,18px)/1.5 var(--f-sans);color:var(--text-dim)}
:root:not(#v) .pricing__head .pseg{max-width:100%}
:root:not(#v) .pricing__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-5);perspective:none;align-items:center;
  max-width:1080px;margin:0 auto;width:100%}
:root:not(#v) .plan{display:flex}
:root:not(#v) .plan__card{align-items:center;text-align:center;gap:var(--s-2);padding:var(--s-7) var(--s-6) var(--s-6);transform:none}
@media (min-width:900px) and (hover:hover){
  :root:not(#v) .plan:nth-child(1) .plan__card,:root:not(#v) .plan:nth-child(3) .plan__card{transform:none}
  :root:not(#v) .plan:hover .plan__card,:root:not(#v) .plan:focus-within .plan__card{transform:none}
}
:root:not(#v) .plan--best .plan__card{padding-top:var(--s-8);padding-bottom:var(--s-7);
  box-shadow:var(--lq-drop),var(--lq-rim),inset 0 0 0 1.5px color-mix(in srgb,var(--lg-tint) 70%,#fff 20%),
             inset 0 0 10px 7px color-mix(in srgb,var(--lg-tint) 12%,transparent)}
:root:not(#v) .plan__badge{top:0;left:50%;right:auto;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:6px;
  min-height:32px;padding:0 14px;border:0;color:var(--text);font:600 13px/1 var(--f-sans);letter-spacing:0;white-space:nowrap;
  background:color-mix(in srgb,var(--bg) 70%,var(--lg-tint) 12%);box-shadow:var(--lq-rim),inset 0 0 4px 3px color-mix(in srgb,var(--lg-tint) 20%,transparent);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
:root:not(#v) .plan__badge .i{color:var(--lg-tint);fill:currentColor}
:root:not(#v) .plan__glyph{width:44px;height:44px;margin-bottom:var(--s-1)}
:root:not(#v) .plan__term{justify-content:center;font-size:24px}
:root:not(#v) .plan__lead{max-width:30ch;min-height:2.9em}
:root:not(#v) .plan__price{justify-content:center;margin-top:var(--s-4);font-size:clamp(44px,4.4vw,58px)}
:root:not(#v) .plan__cur{font-family:var(--f-num);font-weight:700;font-size:.62em;color:var(--text)}
:root:not(#v) .plan__unit{margin-left:2px;font:500 15px/1 var(--f-sans);letter-spacing:0;color:var(--text-dim)}
:root:not(#v) .plan__per{min-height:1.5em;color:var(--text-mute)}
:root:not(#v) .plan--best .plan__per{color:var(--accent)}
:root:not(#v) .plan__list{width:100%;text-align:left}
:root:not(#v) .plan__perks{margin:var(--s-3) 0 var(--s-5);padding-top:0;border-top:0}
:root:not(#v) .plan__perks li{color:var(--text)}
:root:not(#v) .plan__perks .i{color:var(--lg-tint)}
:root:not(#v) .pricing__perks{max-width:1080px;margin:0 auto;width:100%}
@media (max-width:899px){
  :root:not(#v) .pricing{padding-top:var(--s-6)}
  :root:not(#v) .pricing__grid{grid-template-columns:1fr;gap:var(--s-6);max-width:520px}
  :root:not(#v) .plan--best{order:-1}
}

/* 6. Звёзды, капля, круговые графики --------------------------------------- */
.starfield,[data-starfield]{position:relative}
.bubble-layer{position:fixed;inset:0;z-index:4;pointer-events:none;opacity:0}
.bubble__drop{position:absolute;left:0;top:0;border-radius:50%;will-change:transform;
  background:color-mix(in srgb,var(--lav) 6%,rgba(255,255,255,.03));
  box-shadow:var(--lq-rim),inset 0 0 6px 4px color-mix(in srgb,var(--lav) 14%,transparent),0 4px 14px rgba(0,0,0,.18);
  -webkit-backdrop-filter:blur(2px) saturate(170%) brightness(1.06);backdrop-filter:blur(2px) saturate(170%) brightness(1.06)}
.bubble__drop.glass--refract{-webkit-backdrop-filter:var(--glass-filter) saturate(170%) brightness(1.06);backdrop-filter:var(--glass-filter) saturate(170%) brightness(1.06)}
.bubble__drop--head::after{content:"";position:absolute;left:22%;top:16%;width:24%;height:16%;border-radius:50%;
  background:rgba(255,255,255,.55);transform:rotate(-30deg)}
:root[data-theme="light"] .bubble__drop{box-shadow:var(--lq-rim),inset 0 0 6px 4px color-mix(in srgb,var(--lav) 10%,transparent),0 4px 12px rgba(22,23,28,.12)}

:root:not(#v) .donut{position:relative;display:grid;gap:var(--s-5);padding:var(--s-5);border-radius:var(--r-tile)}
:root:not(#v) .donut__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-4);flex-wrap:wrap}
:root:not(#v) .donut__title h3{margin:0;font:600 17px/1.25 var(--f-sans)}
:root:not(#v) .donut__title p{margin:4px 0 0;font:400 13px/1.45 var(--f-note);color:var(--text-mute)}
:root:not(#v) .donut__tabs .pseg__opt{min-height:40px;padding:0 14px;font-size:13px}
:root:not(#v) .donut__body{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--s-5);align-items:center}
:root:not(#v) .donut__ring{position:relative;width:184px;height:184px}
:root:not(#v) .donut__ring canvas{width:100%;height:100%;display:block}
:root:not(#v) .donut__total{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;text-align:center;pointer-events:none}
:root:not(#v) .donut__total b{font-size:30px;line-height:1;color:var(--text)}
:root:not(#v) .donut__total span{margin-top:4px;font:500 12px/1.2 var(--f-sans);color:var(--text-mute)}
:root:not(#v) .donut__legend{list-style:none;margin:0;padding:0;display:grid;gap:4px}
:root:not(#v) .donut__row{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);min-height:44px;padding:0 12px;
  border-radius:14px;cursor:default;transition:background-color .25s var(--e-out)}
:root:not(#v) .donut__row.is-on{background:color-mix(in srgb,var(--seg) 12%,transparent)}
:root:not(#v) .donut__name{display:inline-flex;align-items:center;gap:10px;font:500 14px/1.3 var(--f-sans);color:var(--text)}
:root:not(#v) .donut__dot{width:10px;height:10px;border-radius:50%;border:2px solid var(--seg);box-sizing:border-box;flex:none}
:root:not(#v) .donut__val{display:inline-flex;align-items:baseline;gap:10px;font:600 14px/1 var(--f-num);color:var(--text-dim)}
:root:not(#v) .donut__val em{font-style:normal;font-size:12px;color:var(--text-mute);min-width:3.5ch;text-align:right}
:root:not(#v) .donuts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:var(--s-4);margin-top:var(--s-5)}
@media (max-width:519px){
  :root:not(#v) .donut__body{grid-template-columns:1fr;justify-items:center}
  :root:not(#v) .donut__legend{width:100%}
}

/* 7. Графики: пыль в столбиках, точечная сетка у линий -------------------- */
:root:not(#v) .chart-grid--dash{stroke-dasharray:4 8;stroke:color-mix(in srgb,var(--tone,var(--text)) 18%,transparent)}
:root:not(#v) .chart-dotgrid{fill:color-mix(in srgb,var(--tone,var(--text)) 22%,transparent)}
:root:not(#v) .chart-ref{stroke:var(--accent);stroke-width:1;stroke-dasharray:4 4;opacity:.7}
:root:not(#v) .chart-ref__dot{fill:var(--accent);stroke:var(--bg);stroke-width:2}
:root:not(#v) .chart-line__area{fill-opacity:.08}

/* 8. FAQ: ровные круги, политики ------------------------------------------- */
:root:not(#v) .faq__item summary{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);list-style:none}
:root:not(#v) .faq__item summary::-webkit-details-marker{display:none}
:root:not(#v) .faq__item summary::after,:root:not(#v) .faq__item[open] summary::after{
  content:"";flex:0 0 36px;width:36px;height:36px;min-width:36px;aspect-ratio:1/1;padding:0;box-sizing:border-box;border-radius:50%;
  border:0;color:var(--text);
  background:linear-gradient(currentColor,currentColor) center/14px 1.5px no-repeat,
             linear-gradient(currentColor,currentColor) center/1.5px 14px no-repeat,
             var(--lq-fill);
  box-shadow:var(--lq-rim),inset 0 0 4px 3px color-mix(in srgb,var(--lg-tint) 12%,transparent);
  font-size:0;transform:rotate(0);transition:transform .6s var(--spr-pop,var(--e-out))}
:root:not(#v) .faq__item[open] summary::after{transform:rotate(45deg)}
:root:not(#v) .policy{--lg-tint:var(--lav)}
:root:not(#v) .policy__body{display:grid;gap:var(--s-4);padding:var(--s-2) 22px 22px;max-width:68ch;font-size:15.5px;line-height:1.6;color:var(--text-dim)}
:root:not(#v) .policy__body h3{margin:var(--s-2) 0 0;font:600 15px/1.3 var(--f-sans);letter-spacing:0;color:var(--text)}
:root:not(#v) .policy__body ul,:root:not(#v) .policy__body ol{margin:0;padding-left:1.2em;display:grid;gap:6px}
:root:not(#v) .policy__body p{margin:0;padding:0;max-width:none}
@media (max-width:640px){:root:not(#v) .policy__body{padding:var(--s-2) 20px 18px}}
:root:not(#v) .policy__note{font-style:italic;color:var(--text-mute)}

/* 9. Согласие перед оплатой -------------------------------------------------- */
:root:not(#v) .consent{position:relative;display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:start;margin-top:18px;
  padding:12px 14px;border-radius:16px;cursor:pointer;background:var(--lq-fill);box-shadow:var(--lq-rim)}
:root:not(#v) .consent input{position:absolute;opacity:0;width:24px;height:24px;margin:12px 0 0 14px;left:0;top:0;cursor:pointer}
:root:not(#v) .consent__box{width:24px;height:24px;border-radius:8px;background:var(--lq-fill);
  box-shadow:var(--lq-rim),inset 0 0 0 1.5px color-mix(in srgb,var(--tone,var(--text)) 30%,transparent);transition:background-color .25s,box-shadow .25s}
:root:not(#v) .consent input:checked + .consent__box{background:color-mix(in srgb,var(--lav) 70%,transparent);
  box-shadow:var(--lq-rim),inset 0 0 0 1.5px var(--lav)}
:root:not(#v) .consent input:checked + .consent__box::after{content:"";position:absolute;left:23px;top:16px;width:6px;height:11px;
  border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
:root:not(#v) .consent input:focus-visible + .consent__box{outline:2px solid var(--accent);outline-offset:3px}
:root:not(#v) .consent__text{font-size:14px;line-height:1.45;color:var(--text-dim)}
:root:not(#v) .consent__text a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}

/* 10. Подвал: «eroot» целиком ---------------------------------------------- */
:root:not(#v) .hwf__word{height:clamp(120px,19vw,300px);margin-top:var(--s-4);margin-bottom:var(--s-4)}

/* 11. Меньше движения и прозрачности ----------------------------------------- */
@media (prefers-reduced-motion:reduce){
  .bubble-layer{display:none}
  :root:not(#v) .faq__item summary::after{transition:none}
}
@media (prefers-reduced-transparency:reduce){
  :root:not(#v) .btn,:root:not(#v) .card,:root:not(#v) .tile,:root:not(#v) .plan__card,:root:not(#v) .quick{
    -webkit-backdrop-filter:none;backdrop-filter:none;background:var(--surface)}
}
