
:root{--blue:#0B3DC9;--blue-d:#0832A8;--dark:#0E1116;--gray:#5F6571;--muted:#5F6571;--ok:#11793C;--line:#E3E5E8;--card:#F2F3F5;--accent:#D2440F;--w:1360px}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Onest,system-ui,sans-serif;color:var(--dark);background:#fff;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
svg{display:block;flex:none}
.wrap{max-width:calc(var(--w) + 80px);margin:0 auto;padding:0 40px}

/* header */
.top{display:flex;align-items:center;justify-content:space-between;gap:24px;height:64px}
.brand{display:flex;align-items:center;gap:16px}
.logo{font-family:Unbounded,Onest,sans-serif;font-weight:800;font-size:16px;letter-spacing:-.01em;word-spacing:.12em;line-height:1;white-space:nowrap;text-transform:uppercase}
.logo b{color:var(--blue);font-weight:800}
.vline{width:1px;height:32px;background:var(--line)}
.tagline{font-size:12px;line-height:1.3;color:var(--gray)}
.info{display:flex;align-items:center;gap:8px;font-size:13px;white-space:nowrap}
.info.sm{font-size:12px;line-height:1.3;color:var(--gray)}
.contacts{display:flex;align-items:center;gap:8px}
.phone{font-size:16px;font-weight:600;color:var(--blue);margin-right:12px;white-space:nowrap}
.msg{width:34px;height:34px;border:1px solid var(--line);border-radius:8px;display:grid;place-items:center;transition:border-color .2s}
.msg:hover{border-color:var(--blue)}
.msg svg{width:20px;height:20px}
.nav{display:flex;align-items:center;justify-content:flex-start;height:64px;border-top:1px solid var(--line)}
.menu{display:flex;gap:36px;font-size:14px}
.menu a:hover{color:var(--blue)}
.menu .hl{font-weight:600}
.menu .sale{color:var(--accent);font-weight:600;display:flex;align-items:center;gap:8px}
.menu .sale:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}.menu .sale:hover{color:#D4400E}

.st-line.on{color:var(--ok);font-weight:500;display:inline-flex;align-items:center;gap:6px}
.st-line.on:before{content:"";width:7px;height:7px;border-radius:50%;background:#1FA35B;box-shadow:0 0 0 0 rgba(31,163,91,.5);animation:onl 2s infinite}
@keyframes onl{70%{box-shadow:0 0 0 6px rgba(31,163,91,0)}100%{box-shadow:0 0 0 0 rgba(31,163,91,0)}}
/* split button */
.btn{display:inline-flex;align-items:stretch;border-radius:8px;font-size:15px;font-weight:500;border:1px solid var(--line);background:#fff;color:var(--blue);transition:background .2s,border-color .2s}
.btn .l{display:flex;align-items:center;gap:10px;padding:15px 22px}
.btns .btn{height:54px}.btns .btn .l{padding-top:0;padding-bottom:0}
.btn .a{display:flex;align-items:center;padding:0 16px;border-left:1px solid var(--line);transition:transform .2s}
.btn:hover{border-color:var(--blue)}
.btn:hover .a svg{transform:translateX(3px)}
.btn svg{transition:transform .2s}
.btn.pr{background:linear-gradient(135deg,#2A5BEA 0%,#0B3DC9 55%,#0A33AE 100%);border-color:#0B3DC9;color:#fff}
.btn.pr .a{border-color:#3A63D6}
.btn.pr:hover{background:linear-gradient(135deg,#1E4FDD 0%,#0936B5 55%,#082C98 100%)}
.btn.sm{height:34px;font-size:13px;white-space:nowrap;flex:none}.btn.sm .l{padding:0 18px}.btn.sm .a{padding:0 12px}

/* hero */
.hero{display:grid;grid-template-columns:minmax(0,1fr) 520px;gap:24px;padding:8px 0 24px;height:auto;min-height:clamp(520px,calc(100vh - 200px),720px);min-height:clamp(520px,calc(100svh - 200px),720px)}
.hero-card{min-width:0;background:var(--card);border-radius:16px;padding:clamp(28px,5vh,52px) 48px clamp(24px,4.4vh,44px);display:flex;flex-direction:column;justify-content:space-between}
.kp{display:inline-flex;align-items:center;gap:12px;height:54px;padding:0 16px 0 12px;background:#fff;border:1px solid var(--line);border-radius:8px;transition:box-shadow .25s,transform .25s}
.kp:hover{border-color:var(--blue);box-shadow:0 8px 24px rgba(11,61,201,.12)}
.kp-ic{flex:none;animation:kpFloat 4s ease-in-out infinite}
@keyframes kpFloat{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-3px) rotate(-1deg)}}
.kp-t b{display:block;font-size:15px;font-weight:600;line-height:1.2}
.kp-t small{display:block;margin-top:2px;font-size:12px;color:var(--gray)}
.kp-a{color:var(--blue);margin-left:6px;transition:transform .2s}
.kp:hover .kp-a{transform:translateX(3px)}
.eb-hero{margin-top:clamp(44px,7.6vh,72px);font-weight:600;color:var(--blue)}
.eyebrow{font-size:13px}
h1{text-wrap:balance;font-weight:600;font-size:clamp(36px,5.6vh,52px);max-width:760px;line-height:1.06;letter-spacing:-.025em;margin:clamp(12px,2.2vh,20px) 0 clamp(14px,2.6vh,24px)}
.sub{font-size:17px;line-height:1.45;color:var(--gray)}
.btns{display:flex;align-items:stretch;gap:12px;margin-top:clamp(20px,3.8vh,36px);flex-wrap:wrap}
.proof{display:inline-flex;align-items:center;gap:14px;margin-top:clamp(16px,2.6vh,24px);font-size:14px;color:var(--dark)}
.proof .av{display:flex}
.proof .av img{width:34px;height:34px;border-radius:50%;object-fit:cover;border:2px solid var(--card);margin-left:-10px}
.proof .av img:first-child{margin-left:0}
.proof .av img{animation:avWave 3.2s ease-in-out infinite;transition:transform .35s cubic-bezier(.3,1.5,.5,1),opacity .35s}
.proof .av img:nth-child(2){animation-delay:.25s}.proof .av img:nth-child(3){animation-delay:.5s}.proof .av img:nth-child(4){animation-delay:.75s}
.proof .av img.swap{animation:none;transform:scale(.4) rotate(-20deg);opacity:0}
@keyframes avWave{0%,60%,100%{translate:0 0}30%{translate:0 -3px}}
.proof u{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px;transition:text-decoration-color .2s,color .2s}
.proof:hover u{color:var(--blue);text-decoration-color:var(--blue)}
.proof b{font-weight:600}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;background:#fff;border-radius:12px;margin-top:clamp(20px,3vh,48px)}
.stat{padding:10px 18px 11px;opacity:0;transform:translateY(10px);animation:stIn .6s cubic-bezier(.2,.7,.2,1) forwards}
.stat + .stat{border-left:1px solid var(--line)}
.stat:nth-child(1){animation-delay:.2s}.stat:nth-child(2){animation-delay:.35s}.stat:nth-child(3){animation-delay:.5s}
@keyframes stIn{to{opacity:1;transform:none}}
.stat b.gr{background:linear-gradient(100deg,#0B3DC9 0%,#0B3DC9 30%,#6E95FF 45%,#0B3DC9 60%,#0B3DC9 100%);background-size:250% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 5s 1.2s ease-in-out infinite}
.stat:nth-child(2) b.gr{animation-duration:6.2s;animation-delay:2.9s}
.stat:nth-child(3) b.gr{animation-duration:7.4s;animation-delay:4.6s}
@keyframes shine{0%{background-position:100% 0}45%,100%{background-position:0 0}}
.stat b{white-space:nowrap}
.stat b{display:block;font-weight:500;font-size:22px;line-height:1.15;letter-spacing:-.02em}
.stat > span{display:block;margin-top:2px;font-size:12px;line-height:1.3;color:var(--gray);text-wrap:balance}
.st-top{display:flex;align-items:flex-end;justify-content:flex-start;gap:12px;white-space:nowrap}
.stat .stat @keyframes spDraw{to{stroke-dashoffset:0}}
@keyframes spFade{to{opacity:1}}
@keyframes spPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.5)}}
@keyframes spBar{to{transform:scaleY(1)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important}html{scroll-behavior:auto}}
.photo{position:relative;border-radius:16px;overflow:hidden;background:#C9CDD3}
.photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.72) contrast(1.06) brightness(1.03)}
.photo:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(160deg,rgba(11,61,201,.16),rgba(11,61,201,.04) 55%,rgba(11,61,201,.18));mix-blend-mode:color;pointer-events:none}
.photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,17,22,0) 58%,rgba(10,20,50,.5) 100%)}
.photo img.sl{opacity:0;transform:scale(1.06);transition:opacity 1.4s ease,transform 7s ease-out}
.photo img.sl.on{opacity:1;transform:scale(1)}
@media (prefers-reduced-motion:reduce){.photo img.sl{transform:none;transition:opacity .8s ease}}
.arrows button{transition:transform .2s}.arrows button:hover{transform:translateY(-2px)}
.counter{position:absolute;left:28px;bottom:28px;z-index:1;color:#fff;font-size:14px}
.arrows{position:absolute;right:28px;bottom:28px;z-index:1;display:flex;gap:8px}
.arrows button{width:44px;height:44px;border:0;border-radius:8px;background:#fff;display:grid;place-items:center;cursor:pointer}

/* quick calc */
.calc{background:var(--card);color:var(--dark);border-radius:16px;padding:56px 48px;display:grid;grid-template-columns:1fr 600px;gap:56px;margin:16px 0 40px}
.calc h2{font-weight:600;font-size:clamp(32px,3.2vw,44px);line-height:1.08;letter-spacing:-.025em;margin:20px 0 20px;text-wrap:balance}
.calc h2 em{font-style:normal;color:var(--blue)}
.calc .lead{font-size:17px;line-height:1.45;color:var(--gray);max-width:460px}
.calc-left{display:flex;flex-direction:column;justify-content:space-between;gap:40px}
.mgr{display:flex;align-items:center;gap:16px;padding-top:24px;border-top:1px solid #D5D8DD}
.mgr-ph{position:relative;width:64px;height:64px;border-radius:50%;flex:none;background:#fff;display:grid;place-items:center;border:1px solid var(--line)}
.mgr-ph:before{content:"";position:absolute;inset:-6px;border-radius:50%;background:conic-gradient(from 0deg,rgba(11,61,201,0) 0deg,rgba(11,61,201,0) 200deg,rgba(11,61,201,.85) 330deg,rgba(11,61,201,0) 360deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1.5px));mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1.5px));animation:mgrSpin 3.6s linear infinite}
.mgr-ph:after{content:"";position:absolute;right:1px;bottom:1px;width:13px;height:13px;border-radius:50%;background:#1FA35B;border:2px solid var(--card);transform:scale(0);transition:transform .3s}
.mgr.on .mgr-ph:after{transform:scale(1)}
@keyframes mgrSpin{to{transform:rotate(360deg)}}
.mgr-ph img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.mgr b{display:block;font-weight:500;font-size:16px}
.mgr span{display:block;margin-top:4px;font-size:13px;color:var(--gray)}
.cf{display:flex;flex-direction:column;gap:20px;background:#fff;border-radius:12px;padding:32px}
.cf-lbl{font-size:13px;color:var(--gray);margin-bottom:10px}
.types{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.type input{position:absolute;opacity:0;pointer-events:none}
.type span{display:flex;flex-direction:column;gap:4px;height:100%;padding:12px 14px;border:1px solid var(--line);border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s,color .2s,border-color .2s}
.type small{font-size:12px;font-weight:400;color:var(--gray)}
.type:hover span{border-color:#646A76}
.type input:checked+span{border-color:var(--blue);background:#F0F4FF;color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}
.type input:focus-visible+span{outline:2px solid var(--blue);outline-offset:2px}
.row{display:grid;grid-template-columns:1fr 160px;gap:8px}
.fld{display:block}
.fld input{width:100%;height:52px;padding:0 16px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--dark);font:inherit;font-size:15px;outline:none;transition:border-color .2s}
.fld input::placeholder{color:#5F6571}
.fld input:focus{border-color:var(--blue)}
.fld input.err{border-color:#E5383B}
.prog{margin-bottom:4px}
.prog-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px}
.prog-msg{font-size:14px;font-weight:500;color:var(--dark);transition:opacity .25s,transform .25s}
.prog-msg.sw{opacity:0;transform:translateY(4px)}
.prog-msg.good{color:var(--ok)}
.prog-pc{font-size:13px;color:var(--gray);font-variant-numeric:tabular-nums}
.prog-bar{height:6px;border-radius:6px;background:#EEF0F3;overflow:hidden}
.prog-bar i{display:block;height:100%;width:0;border-radius:6px;background:linear-gradient(90deg,#2A5BEA,#0B3DC9);transition:width .6s cubic-bezier(.3,1.2,.5,1),background .4s}
.prog-bar i.done{background:linear-gradient(90deg,#2FBF6B,#1FA35B)}
.fld{position:relative}
.fld .ok{position:absolute;right:14px;top:50%;margin-top:-9px;opacity:0;transform:scale(.4);transition:opacity .25s,transform .35s cubic-bezier(.3,1.6,.5,1);pointer-events:none}
.fld.valid .ok{opacity:1;transform:scale(1)}
.fld.valid input{border-color:#9ED9B6}
.fld input[name=meters]{padding-right:40px}
.fld input[name=meters]::-webkit-inner-spin-button{display:none}
.cf-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:4px}
.est{font-size:13px;color:var(--gray)}
.est b{display:block;margin-top:2px;font-size:24px;font-weight:600;color:var(--dark);letter-spacing:-.01em}
button.btn{cursor:pointer;font:inherit;font-size:15px;font-weight:500}
.consent{font-size:12px;color:#5F6571;line-height:1.4}
.cf-ok{font-size:18px;line-height:1.5;padding:40px 0}
/* works */
.works{padding:40px 0 56px}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}
.sec-head h2{font-weight:600;font-size:clamp(32px,3.2vw,44px);line-height:1.08;letter-spacing:-.025em;margin-top:20px}
.sec-head h2 em{font-style:normal;color:var(--blue)}
.car-nav{display:flex;align-items:center;gap:16px}
.car-cnt{font-size:14px;color:var(--gray);min-width:52px;text-align:right}
.car-btn{width:48px;height:48px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--blue);display:grid;place-items:center;cursor:pointer;transition:border-color .2s,opacity .2s}
.car-btn:hover{border-color:var(--blue)}
.car-btn:disabled{opacity:.35;cursor:default;border-color:var(--line)}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.flt{height:40px;padding:0 18px;border-radius:8px;border:1px solid var(--line);background:#fff;font:inherit;font-size:14px;font-weight:500;color:var(--dark);cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:border-color .2s,color .2s,background .2s}
.flt sup{font-size:11px;color:var(--gray);vertical-align:0}
.flt:hover{border-color:#646A76}
.flt.on{border-color:var(--blue);color:var(--blue);background:#F0F4FF;box-shadow:inset 0 0 0 1px var(--blue)}
.flt.on sup{color:var(--blue)}
.wk-media{position:relative;height:300px;border-radius:16px;overflow:hidden;background:var(--card)}
.wk-media img,.wk-media iframe{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover}
.wk-media img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.wk-info{padding:14px 2px 0}
.wk-info h3{font-weight:600;font-size:16px;letter-spacing:-.01em}
.wk-info p{margin-top:4px;font-size:13px;color:var(--gray)}
.tbd{color:#646A76}
.wk-cta .wk-media{background:var(--card);display:flex;flex-direction:column;justify-content:space-between;padding:28px}
.wk-cta h3{font-weight:600;font-size:24px;line-height:1.1;letter-spacing:-.02em}
.wk-cta p{margin-top:14px;font-size:15px;line-height:1.45;color:var(--gray)}
.empty{margin-top:16px;padding:24px;border:1px dashed var(--line);border-radius:16px;color:var(--gray);font-size:15px}
@media (max-width:640px){.wk-media{height:360px}.sec-head{flex-direction:column;align-items:flex-start}}

/* works rail */
.wk-go{display:block;cursor:pointer}
.wk-go:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,61,201,0) 35%,rgba(8,28,90,.55) 100%);opacity:0;transition:opacity .4s;pointer-events:none}
.go-pill{position:absolute;left:50%;bottom:22px;z-index:2;display:inline-flex;align-items:center;gap:10px;padding:11px 16px 11px 18px;border-radius:30px;background:#fff;color:var(--blue);font-size:14px;font-weight:600;white-space:nowrap;transform:translate(-50%,14px);opacity:0;transition:opacity .35s,transform .45s cubic-bezier(.2,.75,.2,1);box-shadow:0 10px 24px rgba(8,28,90,.25)}
.go-pill svg{transition:transform .3s}
.go-corner{position:absolute;right:14px;top:14px;z-index:2;width:38px;height:38px;border-radius:50%;background:#fff;color:var(--blue);display:grid;place-items:center;transform:scale(.6) rotate(-30deg);opacity:0;transition:opacity .3s,transform .45s cubic-bezier(.3,1.5,.5,1)}
.wk-go:hover:after,.wk-go:focus-visible:after{opacity:1}
.wk-go:hover .go-pill,.wk-go:focus-visible .go-pill{opacity:1;transform:translate(-50%,0)}
.wk-go:hover .go-pill svg{transform:translateX(3px)}
.wk-go:hover .go-corner,.wk-go:focus-visible .go-corner{opacity:1;transform:none}
.wk-go:hover img{transform:scale(1.06)}
.wk2 .wk-media img{transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.wk2-main .wk-info{cursor:pointer}
@media (hover:none){.go-corner{opacity:1;transform:none}}

.rail{overflow:hidden;margin:0 -40px;padding:0 40px}
.track2{display:flex;gap:20px;transition:transform .9s cubic-bezier(.2,.75,.2,1);will-change:transform}
.wk2{display:flex;flex:none}
.wk2[hidden]{display:none}
.wk2-main{width:380px;flex:none;cursor:pointer}
.wk2.on .wk2-main{cursor:default}
.wk2 .wk-media{height:340px;transition:box-shadow .6s}
.wk2.on .wk-media{box-shadow:0 24px 60px rgba(11,61,201,.18)}
.pan{width:0;overflow:hidden;transition:width .8s cubic-bezier(.2,.75,.2,1)}
.wk2.on .pan{width:340px}
.pan-in{width:340px;height:340px;padding:0 0 0 20px}
.pan-in > *{opacity:0;transform:translateX(-14px);transition:opacity .45s,transform .5s}
.wk2.on .pan-in > *{opacity:1;transform:none;transition-delay:.45s}
.pan-in{display:flex;flex-direction:column}
.pan-in .btn{margin-top:auto}
.spi-n{font-size:12px;font-weight:600;color:var(--blue)}
.pan h3{margin-top:8px;font-size:20px;font-weight:600;letter-spacing:-.01em}
.spi-place{margin-top:6px;font-size:14px;color:var(--gray);display:flex;gap:6px;align-items:center}
.spi-place:before{content:"";width:14px;height:14px;flex:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230B3DC9' stroke-width='2'%3E%3Cpath d='M12 21s6.5-5.8 6.5-11a6.5 6.5 0 1 0-13 0c0 5.2 6.5 11 6.5 11z'/%3E%3Ccircle cx='12' cy='10' r='2.3'/%3E%3C/svg%3E") center/contain no-repeat}
.pan ul{list-style:none;margin-top:16px;display:grid;gap:8px}
.pan li{display:flex;gap:10px;font-size:14px;line-height:1.4;opacity:0;transform:translateX(-8px);transition:opacity .4s,transform .4s}
.wk2.on .pan li{opacity:1;transform:none}
.wk2.on .pan li:nth-child(1){transition-delay:.25s}.wk2.on .pan li:nth-child(2){transition-delay:.38s}.wk2.on .pan li:nth-child(3){transition-delay:.51s}.wk2.on .pan li:nth-child(4){transition-delay:.64s}
.pan li:before{content:"";flex:none;width:16px;height:16px;margin-top:2px;border-radius:50%;background:#F0F4FF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%230B3DC9' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/10px no-repeat}
.spi-meta{display:flex;justify-content:space-between;margin:18px 0;padding-top:14px;border-top:1px solid var(--line);font-size:13px;color:var(--gray)}
.spi-meta b{color:var(--dark);font-weight:600}
.spi-meta b.tbd{color:#646A76;font-weight:500}
.pan .btn{width:100%}.pan .btn .l{flex:1;justify-content:center}
.pan li{display:flex;gap:10px;font-size:14px;line-height:1.4;opacity:0;transform:translateX(-8px);transition:opacity .4s,transform .4s}
.wk2.on .pan li{opacity:1;transform:none}
.wk2.on .pan li:nth-child(1){transition-delay:.6s}.wk2.on .pan li:nth-child(2){transition-delay:.72s}.wk2.on .pan li:nth-child(3){transition-delay:.84s}.wk2.on .pan li:nth-child(4){transition-delay:.96s}
.pan-in{background:#fff}
.pan ul{list-style:none;margin-top:14px;display:grid;gap:8px}
.sp-bar2{margin-top:20px;height:3px;border-radius:3px;background:var(--line);overflow:hidden;max-width:380px}
.sp-bar2 i{display:block;height:100%;width:0;background:var(--blue)}
.sp-bar2 i.run{width:100%;transition:width linear}
@media (max-width:1024px){.wk2.on .wk2-main .wk-info{display:none}.wk2{flex-direction:column}.wk2-main{width:min(86vw,380px)}.pan{width:auto;max-height:0;transition:max-height .8s}.wk2.on .pan{width:auto;max-height:420px}.pan-in{width:min(86vw,380px);height:auto;padding:16px 0 0}}

@media (max-width:1200px){.calc{grid-template-columns:1fr;gap:40px}}
@media (max-width:640px){.calc{padding:32px 20px}.cf{padding:20px}.types{grid-template-columns:1fr 1fr}.row{grid-template-columns:1fr}}

/* prices */
.prices{padding:48px 0 32px}
.pr-lead{max-width:440px;font-size:15px;line-height:1.5;color:var(--gray)}
.pr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pr-card{display:flex;flex-direction:column;background:var(--card);border-radius:16px;padding:28px;border:1px solid transparent;transition:border-color .3s,box-shadow .3s,transform .3s}
.pr-card:hover{border-color:#C9D3F2;box-shadow:0 20px 50px rgba(11,61,201,.10);transform:translateY(-3px)}
.pr-card.feat{background:#fff;border-color:var(--blue);box-shadow:0 20px 50px rgba(11,61,201,.12)}
.pr-badge{display:inline-block;margin-bottom:14px;padding:5px 10px;border-radius:6px;background:#E8EEFF;color:var(--blue);font-size:12px;font-weight:600}
.pr-badge.hot{background:var(--accent);color:#fff}
.pr-top h3{font-size:20px;font-weight:600;letter-spacing:-.01em}
.pr-top p{margin-top:8px;font-size:14px;line-height:1.45;color:var(--gray);min-height:40px}
.pr-price{margin:24px 0 16px;font-size:36px;font-weight:600;letter-spacing:-.03em;color:var(--dark)}
.pr-price small{font-size:16px;font-weight:500;color:var(--gray);letter-spacing:0}
.pr-price span{font-size:15px;font-weight:500;color:var(--gray);letter-spacing:0}
.pr-card.feat .pr-price{color:var(--blue)}
.pr-inc{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px}
.pr-inc li{font-size:12px;padding:5px 10px;border-radius:20px;background:#fff;border:1px solid var(--line);color:var(--dark)}
.pr-card.feat .pr-inc li{background:#F5F7FC}
.pr-go{margin-top:auto;align-self:stretch}.pr-go .l{flex:1}
.pr-extra{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:16px;margin-top:16px}
.pr-x{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 24px;border-radius:12px;border:1px solid var(--line);font-size:15px}
.pr-x b{font-weight:600;font-size:18px}
.pr-link{color:var(--blue);font-weight:500;transition:border-color .2s,background .2s}
.pr-link:hover{border-color:var(--blue);background:#F5F7FF}
.pr-link svg{transition:transform .2s}.pr-link:hover svg{transform:translateX(3px)}
@media (max-width:1024px){.prices .sec-head{flex-direction:column;align-items:flex-start}}
@media (max-width:860px){.pr-grid,.pr-extra{grid-template-columns:1fr}}
@media (max-width:1100px){.geo .sec-head,.reviews .sec-head{flex-direction:column;align-items:flex-start}.geo .pr-lead{max-width:560px}}
.sec-head .btn .l{white-space:nowrap}

/* comparison cards */
.cmp{padding:36px 0 40px}
.cmp .sec-head{margin-bottom:20px}
.pc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;counter-reset:pc}
.pc{display:flex;flex-direction:column;background:var(--card);border:1px solid transparent;border-radius:14px;padding:20px 20px 18px;opacity:0;transform:translateY(14px);transition:opacity .6s,transform .6s cubic-bezier(.2,.7,.2,1),border-color .25s,background .25s}
.cmp.in .pc{opacity:1;transform:none}
.pc:hover{background:#fff;border-color:#C9D3F2}
.pc-ic{display:block;width:56px;height:56px;border-radius:14px;object-fit:cover;margin-bottom:14px;box-shadow:0 8px 18px rgba(11,61,201,.18);transition:transform .35s cubic-bezier(.3,1.5,.5,1)}
img.pc-ic{box-shadow:0 8px 18px rgba(14,17,22,.14)}
.pc:hover .pc-ic{transform:translateY(-3px) rotate(-3deg)}
.pc-k{font-size:12px;font-weight:500;color:var(--gray);text-transform:uppercase;letter-spacing:.05em}
.pc-us{position:relative;margin-top:14px;padding-left:30px;font-size:16px;font-weight:600;line-height:1.3;color:var(--dark)}
.pc-us:before{content:"";position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;background:var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 6v12M6 12h12' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") center/12px no-repeat;transform:scale(0)}
.cmp.in .pc-us:before{animation:ckPop .45s cubic-bezier(.3,1.7,.5,1) forwards;animation-delay:calc(var(--d,0ms) + .35s)}
@keyframes ckPop{to{transform:scale(1)}}
.pc{position:relative;counter-increment:pc}
.pc:after{content:counter(pc,decimal-leading-zero);position:absolute;top:16px;right:18px;font-size:22px;font-weight:600;letter-spacing:-.02em;color:#D3DCF5;transition:color .25s}
.pc:hover:after{color:var(--blue)}
.pc-k{padding-right:40px}
.pc-them{position:relative;margin-top:auto;padding:12px 0 0 30px;font-size:13px;line-height:1.4;color:#646A76;border-top:1px solid #E2E5EA}
.pc-us{margin-bottom:16px}
.pc-them:before{content:"";position:absolute;left:0;top:12px;width:20px;height:20px;border-radius:50%;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 12h10' fill='none' stroke='%239AA0AA' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") center/12px no-repeat;border:1px solid #E2E5EA;box-sizing:border-box}
.pc-them span{color:#5F6571}
@media (max-width:640px){.cmp .sec-head{flex-direction:column;align-items:flex-start}}
@media (prefers-reduced-motion:reduce){.stp{opacity:1;transform:none}.stp-line i{width:100%;transition:none}.pc{opacity:1;transform:none}.pc-us:before{transform:none;animation:none}}

/* vertical carousel cards */
.pc-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;margin:0 -40px;padding:4px 40px 8px;scroll-padding:0 40px}
.pc-grid::-webkit-scrollbar{display:none}
.pc-grid{-webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 140px),rgba(0,0,0,.15) 100%);mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 140px),rgba(0,0,0,.15) 100%);transition:-webkit-mask-image .3s}
.pc-grid.end{-webkit-mask-image:none;mask-image:none}
.pc-grid.nudge{animation:pcNudge 1.2s ease-in-out .2s 1}
@keyframes pcNudge{0%,100%{transform:translateX(0)}40%{transform:translateX(-46px)}70%{transform:translateX(-46px)}}
.pc-more{display:none}

.pc{flex:0 0 calc((100% - 48px)/4.55);scroll-snap-align:start;padding:12px 12px 18px}
.pc-media{height:170px;border-radius:10px;overflow:hidden;margin-bottom:16px;position:relative}
.pc-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.pc:hover .pc-media img{transform:scale(1.05)}
.pc-media.ic{display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,#FFFFFF 0%,#E9EEFC 60%,#DCE4FA 100%)}
.pc-media.ic .pc-ic{width:76px;height:76px;margin:0;border-radius:20px}
.pc-3d{width:96px;height:96px;overflow:visible;animation:kpFloat 4.6s ease-in-out infinite}
.pc:nth-child(2n) .pc-3d{animation-duration:5.2s;animation-delay:.5s}.pc:nth-child(3n) .pc-3d{animation-duration:4.9s;animation-delay:1s}
.pc:hover .pc-3d{animation-play-state:paused;transform:translateY(-4px) rotate(-4deg) scale(1.04);transition:transform .35s}
.pc-k,.pc-us,.pc-them{margin-left:8px;margin-right:8px}
.pc:after{top:20px;left:20px;right:auto;font-size:12px;font-weight:600;letter-spacing:0;color:var(--blue);background:#fff;padding:4px 8px;border-radius:6px;box-shadow:0 2px 8px rgba(14,17,22,.08);z-index:2}
.pc:hover:after{color:var(--blue)}
.pc-k{padding-right:0}
.cmp .car-nav{display:flex;gap:8px;align-items:center}
.cmp .car-nav .btn{margin-left:8px}
@media (max-width:1100px){.pc{flex-basis:calc((100% - 24px)/2.6)}}
@media (max-width:640px){.pc{flex-basis:78%}.pc-grid{margin:0 -16px;padding:4px 16px 8px;scroll-padding:0 16px}}

/* guarantees strip */
.gsec{display:grid;grid-template-columns:260px 1fr;gap:40px;align-items:center;margin:8px 0 24px;padding:36px 40px;border-radius:16px;background:#F4F6FB;border:1px solid #E3E8F5}
.g-head h2{font-weight:600;font-size:34px;line-height:1.08;letter-spacing:-.025em;margin-top:12px}
.g-head h2 em{font-style:normal;color:var(--blue)}
.g-list{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.g-it{display:flex;flex-direction:column;gap:14px;padding:20px;border-radius:12px;background:#fff;transition:transform .3s,box-shadow .3s}
.g-it:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(11,61,201,.10)}
.g-ic{width:52px;height:52px;overflow:visible;animation:kpFloat 4.4s ease-in-out infinite}
.g-it:nth-child(2) .g-ic{animation-duration:5s;animation-delay:.6s}.g-it:nth-child(3) .g-ic{animation-duration:4.7s;animation-delay:1.1s}.g-it:nth-child(4) .g-ic{animation-duration:5.3s;animation-delay:.3s}
.g-it p{font-size:15px;font-weight:600;line-height:1.35}
@media (max-width:1100px){.gsec{grid-template-columns:1fr;gap:20px;padding:28px}.g-list{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.g-list{grid-template-columns:1fr}.gsec{padding:22px}}

/* geography: address check */
.geo h2{max-width:720px}
.chk{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center;padding:32px 40px}
.chk-l{padding-top:6px}
.chk-l .chk-cta{margin-bottom:24px}
.chk-l .chk-cta p{font-size:26px}
.chk-l .chk-quick{margin-bottom:0}
.chk-r .chk-res{min-height:0;margin-top:12px}
.chk-r .chk-res:empty,.chk-res .chk-idle{margin:0}
@media (max-width:1024px){.chk{grid-template-columns:1fr;gap:20px;padding:24px}}
.geo h2{font-weight:600;font-size:clamp(32px,3.2vw,44px);line-height:1.08;letter-spacing:-.025em;margin:20px 0 18px;text-wrap:balance}
.geo h2 em{font-style:normal;color:var(--blue)}
.geo-lead{font-size:16px;line-height:1.5;color:var(--gray);max-width:440px}
.chk{background:var(--card);border-radius:16px}
.chk{position:relative}
.chk:before{content:"";position:absolute;right:0;top:0;bottom:0;width:440px;border-radius:0 16px 16px 0;background:repeating-radial-gradient(circle at 100% 50%,rgba(11,61,201,.06) 0 1px,transparent 1px 46px);animation:radar 8s ease-in-out infinite;pointer-events:none}
@keyframes radar{0%,100%{opacity:.6}50%{opacity:1}}
.chk > *{position:relative;z-index:1}
.chk-l{display:block}
.chk-l .chk-quick{margin-top:20px}
.chk-l .chk-cta{margin-bottom:0}
.loc3d{position:relative;width:64px;height:76px}
.loc3d svg{display:block;width:64px;height:76px;position:relative;z-index:1;animation:pinBob 2.6s ease-in-out infinite}
@keyframes pinBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.loc3d .rip{position:absolute;left:50%;bottom:-2px;width:40px;height:12px;margin-left:-20px;border-radius:50%;border:2px solid rgba(11,61,201,.35);animation:rip 2.6s ease-out infinite}
.loc3d .rip.d2{animation-delay:1.3s}
@keyframes rip{0%{transform:scale(.3);opacity:.9}100%{transform:scale(2.4);opacity:0}}
.loc3d.drop svg{animation:pinDrop .8s cubic-bezier(.3,1.6,.5,1)}
@keyframes pinDrop{0%{transform:translateY(-40px) scale(.8);opacity:0}100%{transform:none;opacity:1}}
.chk-quick button{animation:chipIn .5s cubic-bezier(.2,.75,.2,1) backwards}
.chk-quick button:nth-of-type(1){animation-delay:.1s}.chk-quick button:nth-of-type(2){animation-delay:.18s}.chk-quick button:nth-of-type(3){animation-delay:.26s}.chk-quick button:nth-of-type(4){animation-delay:.34s}.chk-quick button:nth-of-type(5){animation-delay:.42s}
@keyframes chipIn{from{opacity:0;transform:translateY(8px)}}
.chk-facts div{animation:chkIn .5s cubic-bezier(.2,.75,.2,1) backwards}.chk-facts div:nth-child(2){animation-delay:.1s}.chk-facts div:nth-child(3){animation-delay:.2s}
.chk-cta{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px}
.chk-cta p{font-size:20px;font-weight:600;line-height:1.25;letter-spacing:-.01em}
.chk-cta em{font-style:normal;color:var(--blue)}
.chk-arrow{flex:none;margin:6px 6px -14px 0;animation:chkBob 1.8s ease-in-out infinite}
@keyframes chkBob{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}
.chk-field.glow{animation:chkGlow 2.2s ease-in-out infinite}
@keyframes chkGlow{0%,100%{box-shadow:0 0 0 0 rgba(11,61,201,.0);border-color:var(--line)}50%{box-shadow:0 0 0 7px rgba(11,61,201,.12);border-color:#7E9BF0}}
.q-ic{width:28px;height:28px;flex:none;margin-right:2px;animation:kpFloat 4s ease-in-out infinite}
.chk-quick{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;font-size:13px;color:var(--gray)}
.chk-quick button{height:32px;padding:0 14px;border-radius:20px;border:1px solid var(--line);background:#fff;font:inherit;font-size:13px;color:var(--dark);cursor:pointer;transition:border-color .2s,color .2s}
.chk-quick button{transition:border-color .2s,color .2s,opacity .26s,transform .26s}
.chk-quick button.swap{opacity:0;transform:translateY(-6px)}
.chk-quick button:hover{border-color:var(--blue);color:var(--blue)}
.chk-field{position:relative;display:flex;align-items:center;gap:12px;height:60px;padding:0 18px;background:#fff;border:1.5px solid var(--line);border-radius:12px;transition:border-color .2s,box-shadow .2s}
.chk-field:focus-within{border-color:var(--blue);box-shadow:0 0 0 4px rgba(11,61,201,.08)}
.chk-field input{flex:1;border:0;outline:none;background:none;font:inherit;font-size:17px;color:var(--dark)}
.chk-field input::placeholder{color:#5F6571}
.chk-sug{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:30;list-style:none;background:#fff;border-radius:12px;box-shadow:0 18px 40px rgba(14,17,22,.14);padding:6px;max-height:300px;overflow:auto}
.chk-sug li{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:8px;cursor:pointer;font-size:15px}
.chk-sug li small{color:var(--gray);font-size:13px}
.chk-sug li.act,.chk-sug li:hover{background:#F0F4FF}
.chk-sug li mark{background:none;color:var(--blue);font-weight:600}
.chk-res{margin-top:12px}
.chk-idle{font-size:13px;color:#5F6571;padding:2px}
.chk-ok{background:#fff;border-radius:12px;padding:22px 22px 20px;animation:chkIn .5s cubic-bezier(.2,.75,.2,1)}
@keyframes chkIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.chk-ok h3{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:600;letter-spacing:-.01em}
.chk-ok h3:before{content:"";flex:none;width:26px;height:26px;border-radius:50%;background:#1FA35B url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/15px no-repeat}
.chk-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0 18px}
.chk-facts div{background:#F5F7FB;border-radius:10px;padding:12px 14px}
.chk-facts span{display:block;font-size:12px;color:var(--gray)}
.chk-facts b{display:block;margin-top:4px;font-size:17px;font-weight:600}
.chk-facts .free b{color:var(--ok)}
.chk-ok .btn{width:100%}.chk-ok .btn .l{flex:1;justify-content:center}
.chk-note{margin-top:10px;font-size:12px;color:#5F6571}
.chk-ok.idle h3{color:#646A76}
.chk-ok.idle h3:before{background:#E6E9EF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239AA0AA' stroke-width='2.2'%3E%3Cpath d='M12 21s6.5-5.8 6.5-11a6.5 6.5 0 1 0-13 0c0 5.2 6.5 11 6.5 11z'/%3E%3Ccircle cx='12' cy='10' r='2.3'/%3E%3C/svg%3E") center/14px no-repeat}
.chk-ok.idle .chk-facts b{color:#646A76}
.chk-ok.idle .chk-facts .free b{color:var(--ok)}
.chk-ok.miss h3:before{background-color:var(--blue)}
.chk-ok{animation:none}
.chk-ok.pop h3:before{animation:ckPop .5s cubic-bezier(.3,1.7,.5,1)}
.flip{animation:flipIn .45s cubic-bezier(.2,.75,.2,1)}
@keyframes flipIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.chk-facts b{display:block}
.chk-facts div{animation:none}
.chk-ok.pop .chk-facts div{animation:factPulse .6s ease}
.chk-ok.pop .chk-facts div:nth-child(2){animation-delay:.08s}.chk-ok.pop .chk-facts div:nth-child(3){animation-delay:.16s}
@keyframes factPulse{40%{background:#E6EDFF}}
.chk{align-items:center}

@media (max-width:640px){.chk{padding:18px}.chk-facts{grid-template-columns:1fr 1fr}}

/* stages */
.stp-list{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:16px;position:relative;padding-top:8px}
.stp-line{position:absolute;left:24px;right:24px;top:31px;height:2px;background:var(--line)}
.stp-line i{display:block;height:100%;width:0;background:linear-gradient(90deg,#2A5BEA,#0B3DC9);transition:width 1.6s cubic-bezier(.3,.7,.2,1)}
.stages.in .stp-line i{width:100%}
.stp{position:relative;opacity:0;transform:translateY(14px);transition:opacity .5s,transform .6s cubic-bezier(.2,.75,.2,1)}
.stages.in .stp{opacity:1;transform:none}
.stp-n{position:relative;z-index:1;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#fff;border:2px solid var(--line);font-weight:600;font-size:15px;color:var(--gray);transition:background .4s,border-color .4s,color .4s}
.stages.in .stp-n{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 8px 20px rgba(11,61,201,.25)}
.stp h3{margin-top:20px;font-size:17px;font-weight:600;line-height:1.3}
.stp p{margin-top:8px;font-size:14px;line-height:1.5;color:var(--gray)}
@media (max-width:1100px){.stp-list{grid-template-columns:1fr;gap:24px}.stp-line{left:23px;right:auto;top:8px;bottom:8px;width:2px;height:auto}.stp-line i{width:100%;height:0;transition:height 1.6s}.stages.in .stp-line i{height:100%}.stp{padding-left:68px}.stp-n{position:absolute;left:0;top:0}.stp h3{margin-top:10px}}
/* reviews */
.rv-marks{display:flex;gap:24px;flex-wrap:wrap}
.rvm{display:inline-flex;align-items:center;gap:10px}
.rvm b{display:block;font-size:13px;font-weight:600}.rvm small{display:block;font-size:12px;color:var(--gray)}
.rv-grid{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/4);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain;cursor:grab}
.rv-grid::-webkit-scrollbar{display:none}
.rv-grid.drag{scroll-snap-type:none;scroll-behavior:auto;cursor:grabbing;user-select:none}
.rv{scroll-snap-align:start}
.rv .rv-t{flex:none}.rv .rv-a{margin-top:auto}
.rv-side{display:flex;align-items:center;gap:32px;flex-wrap:wrap}
@media (max-width:1100px){.rv-grid{grid-auto-columns:calc((100% - 16px)/2)}}
@media (max-width:640px){.rv-grid{grid-auto-columns:86%;margin:0 -16px;padding:0 16px;scroll-padding:0 16px}.rv-side{gap:16px}.rv-marks{gap:12px 20px}}
.rv{background:var(--card);border-radius:16px;padding:26px;display:flex;flex-direction:column;gap:16px;transition:background .3s,box-shadow .3s}
.rv:hover{background:#fff;box-shadow:0 16px 40px rgba(11,61,201,.08)}
.rv-stars{color:#F5B81B;letter-spacing:2px;font-size:16px}
.rv-t{font-size:15px;line-height:1.55;color:#5F6571;flex:1}
.rv-a{display:flex;align-items:center;gap:12px}
.rv-av{width:40px;height:40px;border-radius:50%;background:#E3E8F5}
.rv-a b{display:block;font-size:14px;color:#5F6571}.rv-a small{font-size:12px;color:#646A76}
.rv-score{display:inline-flex;align-items:center;gap:12px}.rv-score>b{font-size:40px;font-weight:600;line-height:1;color:var(--ink,#0E1116)}.rv-score small{display:block;font-size:12px;color:var(--gray)}
.rv-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.rv-top time{font-size:12px;color:#646A76}
.rv-t{display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}.rv.open .rv-t{-webkit-line-clamp:unset;display:block}
.rv-more{align-self:flex-start;margin:-14px 0 -8px;padding:8px 0;border:0;background:none;font:inherit;font-size:13px;font-weight:600;color:var(--blue);cursor:pointer}.rv-more[hidden]{display:none}
.rv-av{display:grid;place-items:center;flex:none;font-size:14px;font-weight:600;color:var(--blue)}
/* partners */
.pt-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.pt{height:96px;border-radius:12px;border:1px dashed #D5DBE8;display:grid;place-items:center;font-size:12px;color:#646A76;transition:border-color .3s,background .3s}
.pt:hover{border-color:var(--blue);background:#F7F9FF}
.pt-mq{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.pt-track{display:flex;gap:12px;width:max-content;animation:ptmq 32s linear infinite}
.pt-mq:hover .pt-track{animation-play-state:paused}
.pt-track .pt{flex:none;width:220px}
@keyframes ptmq{to{transform:translateX(calc(-50% - 6px))}}
@media (max-width:640px){.pt-track{animation-duration:24s}.pt-track .pt{width:160px}}
@media (prefers-reduced-motion:reduce){.pt-track{animation:none}.pt-mq{overflow-x:auto}}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.btn.busy{opacity:.6;pointer-events:none}
.snd-err{margin-top:10px;font-size:13px;line-height:1.45;color:#C2341A}.snd-err a{font-weight:600;white-space:nowrap}
.mgr .mgr-in{margin:0;display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,#2F5FE0,#0B3DC9);color:#fff;font-size:26px;font-weight:600}
@supports (height:100dvh){.gal,.mdl{bottom:auto;height:100dvh}.mnav{bottom:auto;height:calc(100dvh - 64px)}}
@media (max-width:640px){.gal-p,.gal-n{bottom:max(14px,env(safe-area-inset-bottom))}.gal-bar{bottom:max(26px,calc(env(safe-area-inset-bottom) + 12px))}}
.kpsec{overflow-x:clip}
p,li,small,.rv-t,.spi-lead,.stp p{text-wrap:pretty}
h2,h3,.ct-cta>b{text-wrap:balance}
.ct-ic{display:grid;place-items:center;width:44px;height:44px;margin-bottom:10px;border-radius:12px;background:#fff;color:var(--blue);box-shadow:0 1px 2px rgba(14,17,22,.05)}
.ct-ic-b{margin-bottom:0;flex:none;background:var(--blue);color:#fff}
/* inner pages */
.pol{max-width:820px;font-size:16px;line-height:1.65;color:#2B2F36}.pol h2{font-size:22px;font-weight:600;margin:32px 0 10px}.pol p{margin:0 0 14px}.pol a{color:var(--blue);text-decoration:underline}
main.pg > section.pol{margin-top:28px}
.gift-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.gift{position:relative;display:flex;flex-direction:column;gap:10px;padding:26px;border-radius:16px;background:var(--card);min-width:0}
.gift .tag{align-self:flex-start;padding:4px 9px;border-radius:6px;background:var(--accent);color:#fff;font-size:12px;font-weight:600}
.gift .th{margin-top:6px;font-size:clamp(34px,3.4vw,46px);font-weight:600;letter-spacing:-.035em;line-height:1;color:var(--blue)}.gift .th small{font-size:16px;font-weight:500;letter-spacing:0;color:var(--gray)}
.gift b{font-size:19px;font-weight:600;line-height:1.25;letter-spacing:-.01em}.gift p{font-size:14px;line-height:1.55;color:var(--gray)}
.gift.hot{background:linear-gradient(140deg,#2F5FE0,#0B3DC9 60%,#0832A8);color:#fff}.gift.hot .th,.gift.hot .th small{color:#fff}.gift.hot p{color:rgba(255,255,255,.82)}.gift.hot .tag{background:#fff;color:var(--blue)}
.pg-cards.two{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:1100px){.gift-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.gift-grid,.pg-cards.two{grid-template-columns:minmax(0,1fr)}.gift{padding:22px}}

.pg-prices{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;align-items:start}
.pg-tbl{background:var(--card);border-radius:16px;padding:24px 26px}.pg-tbl h3{font-size:20px;font-weight:600;letter-spacing:-.01em;margin-bottom:12px}
.pg-tbl table{width:100%;border-collapse:collapse;font-size:15px}.pg-tbl th{text-align:left;font-size:12px;font-weight:500;color:var(--gray);padding:6px 0;border-bottom:1px solid #DCDFE4}.pg-tbl td{padding:11px 0;border-bottom:1px solid #E6E8EC}.pg-tbl tr:last-child td{border-bottom:0}
.pg-tbl th+th,.pg-tbl td+td{text-align:right;padding-left:12px}.pg-tbl td+td{font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}.pg-tbl td.b{color:var(--blue)}
.pg-tbl .note{margin-top:14px;font-size:13px;line-height:1.55;color:var(--gray)}.pg-side{display:grid;gap:16px}
@media (max-width:900px){.pg-prices{grid-template-columns:minmax(0,1fr)}}
@media (max-width:420px){.pg-tbl{padding:20px 16px}.pg-tbl table{font-size:14px}}
.rv-all{margin-top:20px}.rv-all a{font-weight:600;font-size:15px;color:var(--blue)}.rv-all a:hover{text-decoration:underline}
main.pg > section.pg-hero{margin-top:0;padding:28px 0 0}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--gray)}.crumbs a{color:var(--blue)}.crumbs a:hover{text-decoration:underline}
.pg-hero .eyebrow{margin-top:28px;color:var(--blue);font-weight:500}
.pg-h1{font-size:clamp(32px,4.4vw,56px);max-width:960px;margin:14px 0 16px}.pg-h1 em{font-style:normal;color:var(--blue)}
.pg-lead{font-size:clamp(16px,1.4vw,19px);line-height:1.55;color:var(--gray);max-width:720px}
.pg-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pg-card{background:var(--card);border-radius:16px;padding:28px;display:flex;flex-direction:column;gap:10px;min-width:0}
.pg-card b{font-size:20px;font-weight:600;letter-spacing:-.01em;line-height:1.25}.pg-card p{font-size:15px;line-height:1.55;color:var(--gray)}
.pg-card .k{font-size:13px;font-weight:600;color:var(--blue)}
.pg-card.accent{background:var(--blue);color:#fff}.pg-card.accent p{color:rgba(255,255,255,.82)}.pg-card.accent .k{color:#BFD0FF}
.pg-box{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:32px 36px;border-radius:16px;background:#F4F6FB;border:1px solid #E3E8F5}
.pg-box h2{font-weight:600;font-size:clamp(24px,2.4vw,32px);letter-spacing:-.02em;line-height:1.15}.pg-box p{margin-top:8px;color:var(--gray);font-size:15px;line-height:1.55;max-width:620px}
.pg-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:center}
.pg-split h2{font-weight:600;font-size:clamp(28px,3vw,42px);line-height:1.1;letter-spacing:-.025em;margin:16px 0 18px}.pg-split h2 em{font-style:normal;color:var(--blue)}
.pg-split p{font-size:16px;line-height:1.65;color:#3A3F48;margin-top:12px}
.pg-pics{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pg-pics img{width:100%;height:100%;aspect-ratio:3/4;object-fit:cover;border-radius:14px}
.pg-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.pg-fact{padding:22px 24px;border-radius:14px;background:var(--card)}.pg-fact b{display:block;font-size:clamp(28px,3vw,40px);font-weight:500;letter-spacing:-.03em;color:var(--blue);line-height:1}.pg-fact span{display:block;margin-top:8px;font-size:14px;color:var(--gray)}
.pg-cta{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:clamp(28px,4vw,48px);border-radius:20px;background:linear-gradient(120deg,#2F5FE0,#0B3DC9 60%,#0832A8);color:#fff}
.pg-cta h2{font-weight:600;font-size:clamp(26px,3vw,40px);letter-spacing:-.025em;line-height:1.1;color:#fff}.pg-cta p{margin-top:10px;color:rgba(255,255,255,.82);font-size:16px;max-width:560px}
.pg-cta .btn{background:#fff;color:var(--blue);flex:none}.pg-cta .btn .a{border-left-color:rgba(11,61,201,.2)}
.rvf-score{display:flex;align-items:center;gap:14px;margin-top:22px}.rvf-score>b{font-size:44px;font-weight:600;line-height:1}.rvf-score small{display:block;font-size:13px;color:var(--gray)}
.rvf-grid{columns:3 300px;column-gap:16px}
.rvf{break-inside:avoid;display:flex;flex-direction:column;gap:14px;margin:0 0 16px;padding:24px;border-radius:16px;background:var(--card)}
.rvf-t{font-size:15px;line-height:1.6;color:#4A4F59}
.rvf.is-hidden{display:none}.rvf-btn{display:flex;justify-content:center;margin-top:8px}.rvf-btn[hidden]{display:none}.rvf-btn .btn{min-width:260px}
@media (max-width:1024px){.pg-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.pg-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pg-split{grid-template-columns:minmax(0,1fr)}}
@media (max-width:760px){.pg-box,.pg-cta{flex-direction:column;align-items:flex-start}.pg-cta .btn{width:100%}}
@media (max-width:640px){.pg-cards{grid-template-columns:minmax(0,1fr)}.pg-card{padding:22px}.pg-box{padding:24px 20px}main.pg > section.pg-hero{padding-top:16px}}
/* reveal: появление блоков при прокрутке */
.js-rv [data-rv]{opacity:0}
.js-rv [data-rv].rv-go{opacity:1;animation:rvUp .8s cubic-bezier(.2,.7,.2,1) backwards;animation-delay:var(--rv-d,0s)}
.js-rv [data-rv="left"].rv-go{animation-name:rvLeft}.js-rv [data-rv="right"].rv-go{animation-name:rvRight}
.js-rv [data-rv="zoom"].rv-go{animation-name:rvZoom}.js-rv [data-rv="fade"].rv-go{animation-name:rvFade;animation-duration:1s}
@keyframes rvUp{from{opacity:0;transform:translateY(36px)}}
@keyframes rvLeft{from{opacity:0;transform:translateX(-56px)}}
@keyframes rvRight{from{opacity:0;transform:translateX(56px)}}
@keyframes rvZoom{from{opacity:0;transform:scale(.94)}}
@keyframes rvFade{from{opacity:0}}
main{overflow-x:clip}
@media (max-width:760px){.js-rv [data-rv="left"].rv-go,.js-rv [data-rv="right"].rv-go{animation-name:rvUp}}
@media (prefers-reduced-motion:reduce){.js-rv [data-rv]{opacity:1}.js-rv [data-rv].rv-go{animation:none}}
/* contacts */
.ct-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.ct{display:flex;flex-direction:column;gap:6px;padding:22px;border-radius:14px;background:var(--card);transition:background .3s,box-shadow .3s}
a.ct:hover{background:#fff;box-shadow:0 14px 34px rgba(11,61,201,.08)}
.ct>span{font-size:12px;color:var(--gray)}
.ct>b{font-size:18px;font-weight:600}
.ct>small{font-size:13px;color:var(--gray)}
.ct-big>b{font-size:24px;color:var(--blue)}
.ct-msg{display:flex;gap:8px;margin:4px 0}
.ct-msg .msg{width:42px;height:42px;background:#fff}
.ct-cta{grid-column:1/-1;flex-direction:row;align-items:center;gap:24px;background:#F4F6FB;border:1px solid #E3E8F5}
.ct-cta>b{font-size:20px;white-space:nowrap}.ct-cta p{flex:1;font-size:14px;color:var(--gray)}
@media (max-width:1100px){.pt-grid{grid-template-columns:repeat(3,1fr)}.ct-grid{grid-template-columns:1fr 1fr}.ct-cta{flex-direction:column;align-items:flex-start}}
@media (max-width:640px){.ct-grid{grid-template-columns:1fr}}
/* footer */
.ft{margin-top:var(--gap);background:#0E1116;color:#C9CDD5;padding:64px 0 28px}
.ft-in{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.ft .logo{color:#fff;font-size:17px}.ft .logo b{color:#6E95FF}
.ft-brand p{margin:14px 0 18px;font-size:14px;line-height:1.5;color:#9AA0AB;max-width:320px}
.ft-brand a,.ft-brand span{display:block;font-size:14px;margin-top:6px;color:#C9CDD5}
.ft-ph{font-size:20px!important;font-weight:600;color:#fff!important}
.ft h4{font-size:13px;font-weight:600;color:#fff;margin-bottom:14px;letter-spacing:.03em}
.ft-in > div > a{display:block;font-size:14px;color:#9AA0AB;margin-top:9px;transition:color .2s}
.ft-in > div > a:hover{color:#fff}
.ft-bot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:48px;padding-top:22px;border-top:1px solid #23272F;font-size:12px;color:#8A909C}
.ft-bot a{color:#8A909C}.ft-bot a:hover{color:#fff}
@media (max-width:900px){.ft-in{grid-template-columns:1fr 1fr}.ft-brand{grid-column:1/-1}}
/* modal */
.mdl{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:16px}
.mdl[hidden]{display:none}
.mdl-bg{position:absolute;inset:0;background:rgba(14,17,22,.55);backdrop-filter:blur(4px);animation:mdlFade .3s ease}
.mdl-box{position:relative;display:grid;grid-template-columns:300px minmax(0,1fr);width:min(860px,100%);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto;background:#fff;border-radius:20px;box-shadow:0 40px 100px rgba(14,17,22,.3);animation:mdlIn .45s cubic-bezier(.2,.75,.2,1)}
@keyframes mdlFade{from{opacity:0}}
@keyframes mdlIn{from{opacity:0;transform:translateY(24px) scale(.97)}}
.mdl.out .mdl-bg{animation:mdlFade .25s ease reverse forwards}.mdl.out .mdl-box{animation:mdlIn .25s ease reverse forwards}
.mdl-x{position:absolute;right:14px;top:14px;z-index:2;width:40px;height:40px;border-radius:50%;border:0;background:#F2F3F5;color:var(--dark);display:grid;place-items:center;cursor:pointer;transition:background .2s,transform .3s}
.mdl-x:hover{background:#E6E9EF;transform:rotate(90deg)}
.mdl-side{background:linear-gradient(160deg,#2A5BEA,#0B3DC9 60%,#082C98);color:#fff;padding:36px 28px;border-radius:20px 0 0 20px;position:relative;overflow:hidden}
.mdl-side:after{content:"";position:absolute;right:-70px;bottom:-70px;width:220px;height:220px;border-radius:50%;border:30px solid rgba(255,255,255,.07)}
.mdl-k{display:inline-block;padding:5px 10px;border-radius:6px;background:var(--accent);font-size:12px;font-weight:600}
.mdl-side ul{list-style:none;margin-top:22px;display:grid;gap:14px;position:relative;z-index:1}
.mdl-side li{display:flex;gap:10px;font-size:14px;line-height:1.45}
.mdl-side li:before{content:"";flex:none;width:18px;height:18px;margin-top:1px;border-radius:50%;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%230B3DC9' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat}
.mdl-f{display:flex;flex-direction:column;gap:12px;padding:40px 36px 30px}
.mdl-f h3{font-size:26px;font-weight:600;letter-spacing:-.02em;padding-right:40px}
.mdl-s{font-size:14px;color:var(--gray);margin-bottom:6px}
.mdl-f .btn{margin-top:6px}.mdl-f .btn .l{flex:1;justify-content:center}
.mdl-ok{padding:60px 36px;text-align:center}
.mdl-ok .ok-c{width:64px;height:64px;margin:0 auto 18px;border-radius:50%;background:#1FA35B url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/32px no-repeat;animation:ckPop .5s cubic-bezier(.3,1.7,.5,1)}
.mdl-ok h3{font-size:24px;font-weight:600}.mdl-ok p{margin-top:8px;color:var(--gray)}
body.lock{overflow:hidden}
@media (max-width:760px){.mdl{padding:0;place-items:end stretch}.mdl-box{grid-template-columns:minmax(0,1fr);width:100%;max-height:92vh;max-height:92dvh;border-radius:20px 20px 0 0;animation-name:mdlUp}.mdl-side{border-radius:20px 20px 0 0;padding:24px 22px}.mdl-side ul{margin-top:14px}.mdl-f{padding:24px 20px 28px}.mdl-f h3{font-size:22px}}
@keyframes mdlUp{from{transform:translateY(40px);opacity:0}}

/* kp section */
.kpsec{display:grid;grid-template-columns:520px 1fr;gap:72px;align-items:center;padding:48px 0 72px}
.doc-wrap{position:relative;height:620px;perspective:1400px}
.doc,.doc-sheet{position:absolute;inset:30px 40px 30px 30px;background:#fff;border-radius:6px;box-shadow:0 1px 2px rgba(14,17,22,.06),0 24px 60px rgba(11,61,201,.10)}
.doc-sheet.back2{transform:rotate(-6deg) translate(-14px,10px);background:#E9EDF7}
.doc-sheet.back1{transform:rotate(-3deg) translate(-6px,4px);background:#F3F5FA}
.doc{padding:34px 34px 28px;transform:rotate(1.2deg);transition:transform .5s cubic-bezier(.2,.7,.2,1);display:flex;flex-direction:column;border:1px solid #EEF0F4}
.doc-wrap:hover .doc{transform:rotate(0) translateY(-6px)}
.doc-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:2px solid var(--blue)}
.doc-logo{font-weight:700;font-size:13px;letter-spacing:.04em}.doc-logo b{color:var(--blue)}
.doc-kind{margin-top:22px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--gray)}
.doc-title{margin-top:6px;font-size:19px;font-weight:600;letter-spacing:-.01em}
.doc-sub{margin-top:6px;font-size:11px;color:var(--blue);font-weight:500}
.doc-tbl{margin-top:16px;font-size:12px}
.doc-row{display:grid;grid-template-columns:1fr 56px 76px;gap:10px;align-items:center;padding:7px 0;border-bottom:1px solid #EEF0F3}
.doc-row span:nth-child(n+2){text-align:right;display:flex;justify-content:flex-end}
.doc-row.th{color:var(--gray);font-size:11px;padding-top:0}
.doc-row.tot{border-bottom:0;font-weight:600;padding-top:12px}
.sk{display:inline-block;height:8px;border-radius:4px;background:#E6E9EF;vertical-align:middle}
.sk.dk{background:#C9D3F2;height:10px}
.doc-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:flex-end;padding-top:18px;border-top:1px dashed #DDE1E8}
.doc-req p,.doc-sign p{font-size:10px;color:var(--gray);margin-bottom:6px}
.doc-sign p{margin:6px 0 0;text-align:right}
.doc-req .sk{display:block;margin-top:6px}
.doc-sign .sk{display:block;height:1px;border-radius:0;background:#646A76}
.doc-seal{position:absolute;right:26px;bottom:70px;width:112px;height:112px;opacity:.9;transform:rotate(-14deg);animation:seal 1s 0s cubic-bezier(.3,1.6,.5,1) both}
.doc-seal text{text-transform:uppercase}
@keyframes seal{from{opacity:0;transform:rotate(-30deg) scale(1.5)}to{opacity:.9;transform:rotate(-14deg) scale(1)}}
.kp-body h2{font-weight:600;font-size:clamp(32px,3.2vw,44px);line-height:1.08;letter-spacing:-.025em;margin:20px 0 32px}
.kp-body .kp-list{margin-bottom:36px}
.kp-body h2 em{font-style:normal;color:var(--blue)}
.kp-list{display:grid;grid-template-columns:1fr;gap:0}
.kp-it{display:grid;grid-template-columns:44px 1fr;gap:8px;border-top:1px solid var(--line);padding:16px 0}
.kp-n{font-size:12px;color:var(--blue);font-weight:600}
.kp-it b{display:block;font-size:17px;font-weight:600}
.kp-n{padding-top:3px}
.kp-it p{margin-top:4px;font-size:14px;line-height:1.45;color:var(--gray)}
@media (max-width:1200px){.kpsec{grid-template-columns:1fr;gap:24px}.doc-wrap{max-width:520px;width:100%;margin:0 auto}}
@media (max-width:640px){.doc-wrap{height:auto;padding:18px 14px 22px}.doc-sheet{inset:18px 14px 22px 14px}.doc{position:relative;inset:auto;padding:22px}.kp-list{grid-template-columns:1fr}}

@media (max-width:1200px){.tagline,.info.sm{display:none}.menu{gap:24px}}
@media (max-width:1280px) and (min-width:1025px){.hero{grid-template-columns:minmax(0,1fr) minmax(0,38%)}.hero-card{padding-left:36px;padding-right:36px}}
@media (max-width:1024px){.hero{grid-template-columns:minmax(0,1fr);height:auto}.hero-card{min-width:0}.photo{min-height:360px}.nav .menu{display:none}}
@media (max-width:640px){
  .wrap{padding:0 16px}.info,.phone{display:none}.btn.sm{display:none}
  .hero-card{padding:32px 20px;min-height:0}h1{font-size:29px}.stats{grid-template-columns:1fr;gap:0}.stat+.stat{border-left:0;border-top:1px solid var(--line)}.btn{width:100%}.btn .l{flex:1}
}


/* polish: browser surfaces */
::selection{background:#D6E0FF;color:#0E1116}
html{scroll-behavior:smooth;scroll-padding-top:16px}
input,textarea{caret-color:var(--blue)}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:6px}
.btn:focus-visible,.msg:focus-visible{outline-offset:2px}
.pr-price,.stat b,.est b,.chk-facts b,.car-cnt,.prog-pc,.phone,.ct-big b,.counter{font-variant-numeric:tabular-nums}
html{scrollbar-color:#C9D3F2 transparent}
::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#C9D3F2;border-radius:10px;border:2px solid #fff}::-webkit-scrollbar-track{background:transparent}
.rv-stars{color:#D98E04}
/* polish: mobile nav */
.burger{display:none;width:44px;height:44px;border-radius:10px;border:1px solid var(--line);background:#fff;cursor:pointer;place-items:center;flex:none}
.burger span{display:block;width:18px;height:2px;background:var(--dark);border-radius:2px;position:relative;transition:background .2s}
.burger span:before,.burger span:after{content:"";position:absolute;left:0;width:18px;height:2px;background:var(--dark);border-radius:2px;transition:transform .3s cubic-bezier(.2,.75,.2,1)}
.burger span:before{top:-6px}.burger span:after{top:6px}
.burger[aria-expanded="true"] span{background:transparent}
.burger[aria-expanded="true"] span:before{transform:translateY(6px) rotate(45deg)}
.burger[aria-expanded="true"] span:after{transform:translateY(-6px) rotate(-45deg)}
.mnav{position:fixed;inset:64px 0 0;z-index:90;background:#fff;padding:12px 16px 32px;overflow:auto;transform:translateY(-8px);opacity:0;pointer-events:none;transition:opacity .25s,transform .35s cubic-bezier(.2,.75,.2,1)}
.mnav.open{opacity:1;transform:none;pointer-events:auto}
.mnav a.ml{display:flex;justify-content:space-between;align-items:center;padding:16px 4px;border-bottom:1px solid var(--line);font-size:18px;font-weight:500}
.mnav a.ml.hl{font-weight:600}.mnav a.ml.sale{color:var(--accent)}
.mnav .mn-ct{margin-top:24px;display:grid;gap:12px}
.mnav .mn-ph{font-size:22px;font-weight:600;color:var(--blue)}
.mnav .mn-msg{display:flex;gap:8px}
@media (max-width:1024px){.burger{display:grid}header.wrap{position:sticky;top:0;z-index:95;background:#fff}.nav{display:none}}
@media (max-width:640px){.eb-hero{margin-top:0}.msg{width:44px;height:44px}.chk-quick button{height:40px}.flt{height:44px}.car-btn{width:48px;height:48px}.top{height:64px}}
/* section rhythm */
:root{--gap:clamp(72px,8vw,128px)}
main > section:not(.hero){margin-top:var(--gap);margin-bottom:0}
.works,.kpsec,.prices,.cmp{padding-top:0;padding-bottom:0}
.calc{margin-bottom:0}
.gsec{margin-top:calc(var(--gap) * .6)}
main > section:last-child{margin-bottom:var(--gap)}
.sec-head{margin-bottom:32px}

/* описание объекта в панели */
.spi-lead{margin-top:10px;font-size:13px;line-height:1.5;color:#5F6571}
/* галерея объекта */
.gal{position:fixed;inset:0;z-index:200;background:rgba(10,14,24,.92);display:none;align-items:center;justify-content:center;flex-direction:column;padding:56px 72px 64px}
.gal.on{display:flex}
.gal-img{max-width:100%;max-height:100%;object-fit:contain;border-radius:10px;user-select:none;-webkit-user-drag:none}
.gal-fig{flex:1;min-height:0;width:100%;display:flex;align-items:center;justify-content:center}
.gal-bar{position:absolute;left:0;right:0;bottom:18px;display:flex;justify-content:center;gap:16px;color:#fff;font-size:14px}
.gal-bar b{font-weight:600}
.gal-bar span{opacity:.6}
.gal-x,.gal-p,.gal-n{position:absolute;border:0;background:rgba(255,255,255,.1);color:#fff;width:48px;height:48px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}
.gal-x:hover,.gal-p:hover,.gal-n:hover{background:rgba(255,255,255,.22)}
.gal-x{top:16px;right:16px;font-size:24px;line-height:1}
.gal-p{left:16px;top:50%;margin-top:-24px}
.gal-n{right:16px;top:50%;margin-top:-24px}
@media (max-width:640px){.gal{padding:56px 10px 60px}.gal-p,.gal-n{top:auto;bottom:8px;margin:0;width:42px;height:42px}.gal-p{left:12px}.gal-n{right:12px}}

@media (max-width:640px){header .top .contacts{display:none}}
.mn-msg{display:flex;gap:10px;margin:16px 0 18px}.mn-msg .msg{width:48px;height:48px}.mn-msg .msg svg{width:26px;height:26px}
@media (max-width:640px){.top{gap:12px}}
@media (max-width:1024px){.top .contacts{margin-left:auto}}
@media (max-width:1024px){.top .info{display:none}}
@media (max-width:860px){.top .btn.sm{display:none}}
@media (max-width:360px){h1{font-size:26px}}

/* узкие экраны: карусель по полям контейнера, сетка КП сжимается */
.kpsec>*{min-width:0}
@media (max-width:640px){.rail{margin:0 -16px;padding:0 16px}}
@media (max-width:400px){.cmp .car-nav{flex-wrap:wrap;row-gap:10px}.cmp .car-nav .btn{margin-left:0}}

/* активный объект: фото + панель на общей подложке */
.wk2{border-radius:24px;transition:background .6s,padding .6s,box-shadow .6s}
.wk2.on{background:#F2F5FC;padding:16px;box-shadow:0 24px 60px rgba(11,61,201,.10)}
.wk2.on .wk-media{box-shadow:none}
.wk2.on .pan-in{background:transparent}
@media (min-width:1025px){.wk2.on .wk-info{display:none}.wk2.on .pan-in{padding-left:28px}}
@media (max-width:1024px){.wk2.on{padding:10px}.wk2.on .pan-in{padding:16px 6px 6px}}
/* перетаскивание карусели */
.rail{touch-action:pan-y;cursor:grab}
.rail.drag{cursor:grabbing;user-select:none;-webkit-user-select:none}
.rail.drag .track2{transition:none}
.rail img{-webkit-user-drag:none;user-select:none}

/* партнёры: текстовые плашки до получения логотипов */
.pt{border:1px solid #E3E8F5;background:#fff;padding:0 12px;text-align:center}
.pt-n{font-size:16px;font-weight:600;letter-spacing:-.01em;color:#1B1F27;line-height:1.2}
.pt img{max-width:78%;max-height:44px;object-fit:contain;filter:grayscale(1);opacity:.8;transition:filter .3s,opacity .3s}
.pt:hover img{filter:none;opacity:1}
.pt{min-width:0}.pt-n{overflow-wrap:anywhere;hyphens:manual}
@media (max-width:640px){.pt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pt{height:80px}.pt-n{font-size:15px}}
.pt img{max-width:80%;max-height:40px;width:auto;height:auto}
@media (max-width:640px){.pt img{max-height:32px}}
@media (max-width:640px){.pt{padding:0 8px}.pt img{max-width:90%;max-height:34px}}
