/* DARU UI: общий слой поверх кита и шаблонов. Кнопки-стекло, фон-туман, запрет движения на hover. */

/* ---------- фон: туман без центрального пятна ---------- */
body::before{
	content:"";position:fixed;inset:-12%;z-index:-3;pointer-events:none;
	background:
		radial-gradient(44% 50% at 10% 16%,rgba(124,58,237,.22),transparent 70%),
		radial-gradient(40% 46% at 90% 20%,rgba(63,214,125,.14),transparent 70%),
		radial-gradient(46% 52% at 82% 90%,rgba(139,92,246,.20),transparent 70%),
		radial-gradient(44% 48% at 14% 86%,rgba(20,140,84,.18),transparent 70%),
		radial-gradient(34% 36% at 52% 50%,rgba(69,134,146,.05),transparent 72%);
	background-repeat:no-repeat;background-size:100% 100%;background-position:0 0;
	}
body::after{display:none!important}
@keyframes daruFogDrift{
	0%{transform:translate3d(-2%,-1%,0) rotate(0deg) scale(1)}
	50%{transform:translate3d(2.5%,2%,0) rotate(2deg) scale(1.06)}
	100%{transform:translate3d(-1%,3%,0) rotate(-2deg) scale(1.03)}}
.wow-gl{display:none!important}
.daru-fog{position:fixed;inset:0;width:100vw;height:100vh;z-index:-2;opacity:.95;pointer-events:none}

/* ---------- кнопки: стекло, срез двух углов, свечение по форме среза ---------- */
.b,.btn,.lv-btn,.lv-btn2,.ckb button,.lead .btn,.zak__form .btn,.calc__out .b,.sng-cta .b,.sng-author .b,.toc-act .b,.hero__cta .b,.hs__btn{
	--cut:16px;
	background:rgba(255,255,255,.035)!important;
	border:1px solid rgba(255,255,255,.24)!important;
	color:#fff!important;
	-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.07)!important;
	clip-path:polygon(var(--cut) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%,0 var(--cut))!important;
	text-shadow:none!important;transform:none!important;translate:none!important;scale:none!important;
	transition:border-color .22s,color .22s,background-color .28s,filter .28s!important}
.b--s{--cut:11px}
.dock .b{--cut:0;clip-path:none!important;border-radius:50%!important}
.b--a,.lv-btn:not(.lv-btn2),.sng-cta .b,.lead .btn,.zak__form .btn,.calc__out .b{
	border-color:var(--acc,#458692)!important;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.07),inset 0 0 0 1px rgba(69,134,146,.22)!important;
	filter:drop-shadow(0 0 8px rgba(69,134,146,.3))}
.b:hover,.btn:hover,.lv-btn:hover,.lv-btn2:hover,.ckb button:hover,.lead .btn:hover,.zak__form .btn:hover,.calc__out .b:hover,.sng-cta .b:hover,.sng-author .b:hover,.toc-act .b:hover,.hs__btn:hover,
.b--a:hover{
	background:rgba(69,134,146,.12)!important;
	border-color:#7fc4d1!important;
	color:#fff!important;
	text-shadow:none!important;transform:none!important;translate:none!important;scale:none!important;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.1)!important;
	filter:drop-shadow(0 0 9px rgba(69,134,146,.55)) drop-shadow(0 0 20px rgba(139,92,246,.4))!important}
.b:active,.btn:active,.lv-btn:active{transform:none!important;background:rgba(255,255,255,.09)!important}
.b::before,.b--a::before{display:block}
.darc .lv-btn::after,.darc .lv-btn2::after{display:none!important}
.darc .lv-btn,.darc .lv-btn2{will-change:auto;padding:0 24px;min-height:44px;display:inline-flex;align-items:center}
.b,.btn{min-height:44px}
.b--s{min-height:36px}

/* ---------- hover: ничего не двигается, не растёт, не прыгает ---------- */
.case:hover .case__viz,
.st-card:hover,.st-card:hover .st-card__gl,
.svc__c:hover,.case:hover,.post:hover,.dash__c:hover,.kpi__i:hover,
.darc-feat:hover,.darc-rev:hover,.darc-kpi__i:hover,.darc-lp__c:hover,
[data-hoverfx] .case:hover,[data-hoverfx] .svc__c:hover,
.darc-logo__i:hover img,
.rel__c:hover,.blg-card:hover,.adj a:hover,.cny-card:hover,
.shot:hover .shot__media,.shot:hover .shot__media img,.shot:hover .shot__no,
.live-card:hover,.lf-card:hover,.mk-card:hover{
	transform:none!important;translate:none!important;scale:none!important}
[style*="perspective"]{transform:none!important}
.b[style*="translate"],.btn[style*="translate"],[data-magnet]{transform:none!important}
.zak__links a:hover{padding-left:0!important}

/* ---------- чип-кнопки и пагинация: тоже стекло ---------- */
.blg-chip,.pgn .page-numbers{background:rgba(255,255,255,.03)!important;border:1px solid rgba(255,255,255,.2)!important;color:var(--mut,#a1a1a1)!important}
.blg-chip:hover,.pgn .page-numbers:hover{background:rgba(255,255,255,.06)!important;border-color:#7fc4d1!important;color:#fff!important}
.blg-chip.on,.pgn .page-numbers.current{background:rgba(69,134,146,.14)!important;border-color:var(--acc,#458692)!important;color:#fff!important}

/* ---------- панели и карточки: стекло вместо плотной заливки ---------- */
.sng-toc,.sng-author,.sng-cta,.blg-card,.rel__c,.svc__c,.adj a,.cny-card{
	background:rgba(10,10,10,.62)!important;
	border-color:rgba(255,255,255,.13)!important}
.sng-cta{background:linear-gradient(135deg,rgba(69,134,146,.14),rgba(10,10,10,.5))!important;border-color:rgba(69,134,146,.7)!important}
.blg-card:hover,.rel__c:hover,.svc__c:hover,.adj a:hover{border-color:rgba(127,196,209,.7)!important}

/* ---------- производительность: размытие только у шапки и кнопок, без blur под карточками ---------- */
.svc__c,.case,.kpi__i,.dash__c,.post,.cta__form,.console,.rule,.mark,.sng-toc,.sng-author,.sng-cta,.blg-card,.rel__c,.adj a,.cny-card,.lf-card,.live-card,.darc-feat,.darc-rev,.darc-kpi__i,.darc-lp__c,.blg-chip,.pgn .page-numbers{
	-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.hd,.mnav,.hero__id{-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important}
.hd{background:rgba(10,10,10,.52)!important;-webkit-backdrop-filter:blur(22px) saturate(1.5)!important;backdrop-filter:blur(22px) saturate(1.5)!important}
[data-theme="light"] .hd{background:rgba(244,242,236,.55)!important}
body::before{will-change:auto;animation:none!important}
/* ---------- фигуры: без смешивания слоёв ---------- */
.wow-mandala{mix-blend-mode:normal!important;opacity:.11!important}
.wow-field{z-index:-1!important}
@media(max-width:760px){.wow-mandala{opacity:.07!important}}

/* ---------- свет за курсором на кнопках, без движения ---------- */
.b:hover,.btn:hover,.lv-btn:hover,.lv-btn2:hover,.ckb button:hover,.lead .btn:hover,.zak__form .btn:hover,.calc__out .b:hover,.sng-cta .b:hover,.sng-author .b:hover,.toc-act .b:hover,.hero__cta .b:hover,.hs__btn:hover,.b--a:hover{
	background-image:radial-gradient(110px 70px at var(--mx,50%) var(--my,50%),rgba(127,196,209,.32),rgba(139,92,246,.14) 55%,transparent 78%)!important}

/* ---------- виджеты плагина: никаких сдвигов и увеличений ---------- */
.darc-qw__b:hover,.darc-qw__b:hover::after,.darc-ring:hover,.darc-lp__c:hover,.darc-logo__i:hover img{transform:none!important;translate:none!important;scale:none!important}
.hd__drop-p,.hd__drop:hover .hd__drop-p,.hd__drop-p:hover{transform:translate(-50%,0)!important}
/* ---------- быстрые услуги: карточки ---------- */
.qk{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0}
.qk__c{display:flex;flex-direction:column;gap:12px;padding:22px 22px 20px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.13);border-radius:6px;transition:border-color .22s,box-shadow .28s;min-width:0}
.qk__c:hover{border-color:rgba(127,196,209,.7);box-shadow:0 0 30px rgba(111,181,194,.14)}
.qk__top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.qk__s{color:var(--mut,var(--lv-mut,#a1a1a1))}
.qk__tag{padding:3px 8px;border:1px solid var(--acc,#458692);color:#9fd3dd;border-radius:999px}
.qk__t{margin:0;font-family:'IBM Plex Mono',monospace;font-size:18px;font-weight:600;line-height:1.25;color:var(--txt,var(--lv-tx,#fff))}
.qk__p{font-family:'IBM Plex Mono',monospace;font-size:22px;font-weight:500;color:#9fd3dd}
.qk__d{margin:0;font-size:14.5px;line-height:1.55;color:var(--mut,var(--lv-mut,#a1a1a1))}
.qk__b{margin:0;padding:0;list-style:none;display:grid;gap:7px;font-size:14px;line-height:1.45;color:var(--txt,var(--lv-tx,#e8e8e8))}
.qk__b li{position:relative;padding-left:20px}
.qk__b li::before{content:"";position:absolute;left:0;top:.5em;width:10px;height:5px;border-left:1.5px solid #3fd67d;border-bottom:1.5px solid #3fd67d;transform:rotate(-45deg) translateY(-2px)}
.qk__f{margin:2px 0 0;padding:12px 0 0;border-top:1px solid rgba(255,255,255,.1);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.qk__f dt{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut,var(--lv-mut,#8a8a8a))}
.qk__f dd{margin:3px 0 0;font-size:13px;line-height:1.35;color:var(--txt,var(--lv-tx,#e8e8e8))}
.qk__a{margin-top:auto;padding-top:8px;display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px}
.qk__pay{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#9fd3dd;text-decoration:none;border-bottom:1px solid rgba(159,211,221,.4)}
.qk__pay:hover{color:#fff;border-color:#fff}
.qk__lead{max-width:760px;margin:0 0 24px;font-size:15.5px;line-height:1.6;color:var(--mut,var(--lv-mut,#a1a1a1))}
@media(max-width:1100px){.qk{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.qk{grid-template-columns:1fr}.qk__f{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* ссылка «Оплатить онлайн» видна только когда ЮKassa подключена */
.daru-pay{display:none!important}
body.daru-pay-on .daru-pay{display:inline-block!important}

/* ---------- страница оплаты ---------- */
.pay__f{display:grid;gap:14px;max-width:560px;margin:8px 0 0}
.pay__l{display:grid;gap:6px;font-size:13px;color:var(--mut,#a1a1a1)}
.pay__l[hidden]{display:none}
.pay__l input,.pay__l select{height:44px;padding:0 14px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.22);border-radius:4px;color:#fff;font:inherit;font-size:15px}
.pay__l input:focus,.pay__l select:focus{outline:0;border-color:#7fc4d1;box-shadow:0 0 0 3px rgba(111,181,194,.16)}
.pay__l select option{background:#0a0a0a;color:#fff}
.pay__c{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.5;color:var(--mut,#a1a1a1)}
.pay__c input{margin-top:3px}
.pay__n{margin:0;font-size:13px;color:var(--mut,#8a8a8a)}
.pay__msg{display:grid;gap:4px;max-width:560px;margin:0 0 18px;padding:14px 16px;border:1px solid rgba(255,255,255,.2);border-radius:6px;background:rgba(255,255,255,.03);font-size:14.5px}
.pay__msg b{color:#fff}
.pay__msg span{color:var(--mut,#a1a1a1)}
.pay__msg--ok{border-color:#3fd67d}
.pay__msg--err{border-color:#ff6b6b}
/* движение выключено на уровне сайта: токены wow-пака плагина */
:root{--wfx-mag:off;--wfx-cur:none}
html[data-darc-off~="parallax"] [data-parallax]{transform:none!important}

/* ---------- герой страниц услуг: заголовок на всю строку, под ним текст слева и карточка справа ---------- */
.darc .lv-h1{font-size:clamp(30px,3.6vw,44px);min-height:0}
@media(min-width:921px){
.darc .lv-hero:has(>div:first-child:not([style])){row-gap:0;align-items:start}
.darc .lv-hero>div:first-child:not([style]){display:contents}
.darc .lv-hero>div:first-child:not([style])>.lv-kick,.darc .lv-hero>div:first-child:not([style])>.lv-h1{grid-column:1/-1}
.darc .lv-hero>div:first-child:not([style])>.lv-lead{grid-column:1;grid-row:3}
.darc .lv-hero>div:first-child:not([style])>.lv-cta{grid-column:1;grid-row:4}
.darc .lv-hero:has(>div:first-child:not([style]))>.lv-rv{grid-column:2;grid-row:3/5;align-self:center}
}

/* ---------- мобайл: плавающее видео не плавает поверх контента ---------- */
@media(max-width:960px){
	.vdot{display:none!important}
}

/* ---------- кнопка отзывов в заголовке секции ---------- */
.sec__hd .b--s{align-self:center;flex:none;white-space:nowrap}

/* ---------- сабмит главной формы: главный акцент страницы ---------- */
.cta__form .btn,.zak__form .btn{
	background:rgba(69,134,146,.22)!important;
	border-color:var(--acc,#458692)!important;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.1)!important;
	filter:drop-shadow(0 0 10px rgba(69,134,146,.4))}
.cta__form .btn:hover,.zak__form .btn:hover{
	background:rgba(69,134,146,.34)!important;
	border-color:#7fc4d1!important;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.12)!important;
	filter:drop-shadow(0 0 12px rgba(69,134,146,.6)) drop-shadow(0 0 24px rgba(139,92,246,.45))!important}

/* ---------- бургер: без круглой обводки, полоски разной длины ---------- */
.burger{border:0;border-radius:0}
.menu-open .burger svg path:nth-child(3){transform:translateY(-5px) rotate(-45deg) scaleX(1.1667)}

/* ---------- поля форм: срез углов, как у кнопок ---------- */
.f input,.f textarea,.zak__form .f input,.zak__form .f textarea,.pay__l input,.pay__l select{
	--fcut:12px;
	border-radius:0!important;
	clip-path:polygon(var(--fcut) 0,100% 0,100% calc(100% - var(--fcut)),calc(100% - var(--fcut)) 100%,0 100%,0 var(--fcut))!important;
	border:1px solid rgba(255,255,255,.2)!important;
	background:rgba(0,0,0,.45)!important;
	transition:border-color .2s,background-color .2s!important}
.f input:hover,.f textarea:hover,.zak__form .f input:hover,.zak__form .f textarea:hover,.pay__l input:hover,.pay__l select:hover{border-color:rgba(255,255,255,.34)!important}
.f input:focus,.f textarea:focus,.zak__form .f input:focus,.zak__form .f textarea:focus,.pay__l input:focus,.pay__l select:focus{
	border-color:var(--acc,#458692)!important;
	background:rgba(69,134,146,.07)!important;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important}
.pay__l input,.pay__l select{border-radius:0!important}
.pay__l select option{background:#0a0a0a;color:#fff}