/* Шрифт Inter (OFL) лежит на нашем сервере — без запросов к Google */
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-400.woff) format("woff")}
@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-500.woff) format("woff")}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-600.woff) format("woff")}
/* Layout: designer mockup — dark header and hero, light #f7f7f7 bands with white rounded cards, dark calculator band, light footer */
:root{
  color-scheme:only light;
  --dark:#1d1d1d;
  --hero:#0b0b0b;
  --panel:#121317;
  --light:#f7f7f7;
  --card:#ffffff;
  --ink:#1b1b1b;
  --muted:#7a7a7a;
  --on-dark:#ffffff;
  --on-dark-muted:#9b9b9b;
  --line-dark:#3a3a3a;
  --line-light:#e6e6e6;
  --accent:#ff6b00;
  --accent-hover:#ff8226;
  --font:"Inter","Segoe UI",Arial,sans-serif;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{margin:0;background:var(--light);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.5}
a{color:inherit}
img{display:block;max-width:100%}
h1,h2,h3,p{margin:0}
h1,h2,h3{text-wrap:balance;font-weight:600;letter-spacing:-.02em;line-height:1.08}
h1{font-size:clamp(38px,5.4vw,68px)}
h2{font-size:clamp(32px,4.2vw,52px)}
h3{font-size:19px;font-weight:500;letter-spacing:0;line-height:1.3}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.w{max-width:1240px;margin-inline:auto;padding-inline:clamp(16px,4vw,40px)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:16px 26px;border-radius:14px;border:1px solid currentColor;background:transparent;color:inherit;font:400 17px var(--font);text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.btn svg{width:20px;height:20px;flex:none}
.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}
.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.btn.ghost-dark{border-color:#5a5a5a;color:var(--on-dark)}
.btn.ghost-dark:hover{border-color:#fff}
.btn.ghost-light{border-color:var(--ink);color:var(--ink)}
.btn.ghost-light:hover{background:var(--card)}
.actions{display:flex;flex-wrap:wrap;gap:16px}

header{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--dark);color:var(--on-dark)}
.bar{display:flex;align-items:center;gap:28px;min-height:76px}
.logo{margin-right:auto;display:block}
.logo img{height:34px;width:auto}
nav{display:flex;gap:26px;font-size:15px}
nav a{text-decoration:none;color:#d8d8d8}
nav a:hover,nav a[aria-current]{color:#fff}
.pill{background:#fff;color:var(--ink);border-radius:12px;padding:11px 20px;font-size:15px;text-decoration:none;white-space:nowrap}
.pill:hover{background:#ececec}
#menuBtn{display:none;background:transparent;color:#fff;border:1px solid var(--line-dark);border-radius:12px;padding:10px 14px;font:15px var(--font);cursor:pointer}
@media(max-width:980px){
  #menuBtn{display:inline-flex}
  nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;background:var(--dark);border-top:1px solid var(--line-dark);padding:6px clamp(16px,4vw,40px) 14px}
  nav.open{display:flex}
  nav a{padding:12px 0;border-bottom:1px solid var(--line-dark)}
  nav a:last-child{border:0}
}
@media(max-width:560px){.pill{display:none}}

.hero{background:var(--hero);color:var(--on-dark);position:relative;overflow:hidden}
.hero .w{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:24px;min-height:620px;padding-block:72px 0}
.hero-text{display:flex;flex-direction:column;gap:26px;padding-bottom:72px;min-width:0;position:relative;z-index:1}
.eyebrow{color:var(--accent);font-size:15px;letter-spacing:.04em;text-transform:uppercase}
.hero .lead{color:#e6e6e6;font-size:18px;max-width:34ch}
.hero .actions{margin-top:28px}
.hero-img{align-self:end;margin-right:calc(-1 * clamp(16px,4vw,40px));min-width:0}
.hero-img img{width:100%;height:auto;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 18%),linear-gradient(180deg,transparent 0,#000 14%);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0,#000 18%),linear-gradient(180deg,transparent 0,#000 14%);mask-composite:intersect}
@media(max-width:900px){
  .hero .w{grid-template-columns:minmax(0,1fr);min-height:0}
  .hero-text{padding-bottom:0}
  .hero-img{margin-inline:calc(-1 * clamp(16px,4vw,40px))}
}

section{padding-block:clamp(64px,9vw,120px)}
.head{display:flex;flex-direction:column;gap:22px;margin-bottom:48px;max-width:760px}
.head p{color:var(--ink);font-size:16px;max-width:62ch}
.cards{display:grid;gap:16px}
.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.c2{grid-template-columns:repeat(2,minmax(0,1fr))}
.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:980px){.c3,.c4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.c3,.c4,.c2{grid-template-columns:minmax(0,1fr)}}
.card{background:var(--card);border-radius:20px;padding:26px 26px 28px;display:flex;flex-direction:column;gap:18px;min-width:0}
.card p{color:var(--muted);font-size:16px}
.tech .card{min-height:260px}
.tech .card p{margin-top:auto;color:var(--ink)}
.tech .top{display:flex;align-items:center;gap:12px}
.num{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:26px;padding-inline:8px;border:1px solid var(--ink);border-radius:999px;font-size:13px}
.tech .row2{margin-top:16px}

.products{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,2.1fr);gap:40px;align-items:start}
.products .head{margin:0}
.products .card{min-height:300px}
.products .card .more{margin-top:auto}
.more{color:var(--ink);font-weight:500;text-decoration:none;display:inline-flex;align-items:center;gap:8px}
.more:hover{color:var(--accent)}
.more svg{width:18px;height:18px}
@media(max-width:980px){.products{grid-template-columns:minmax(0,1fr)}}

.uspd{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.uspd-img{margin-left:calc(-1 * max(clamp(16px,4vw,40px),(100vw - 1240px)/2 + clamp(16px,4vw,40px)))}
.uspd .head{margin-bottom:32px}
.uspd .card{min-height:230px}
.uspd .card p{margin-top:auto}
@media(max-width:980px){.uspd{grid-template-columns:minmax(0,1fr)}.uspd-img{margin-left:calc(-1 * clamp(16px,4vw,40px))}}

.partner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;margin-bottom:56px}
.partner .head{margin:0}
.partner .actions{margin-top:20px}
.benefits .card{min-height:230px}
.benefits .card p{margin-top:auto}
@media(max-width:980px){.partner{grid-template-columns:minmax(0,1fr)}}

.calc{background:var(--dark);color:var(--on-dark)}
.calc .w{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:56px;align-items:start}
.calc .head p{color:#e6e6e6}
.feats{display:flex;flex-direction:column;gap:30px}
.feat{display:flex;gap:22px;align-items:flex-start}
.feat .ico{width:58px;height:58px;flex:none;border:1px solid #fff;border-radius:14px;display:flex;align-items:center;justify-content:center}
.feat .ico svg{width:26px;height:26px}
.feat h3{font-size:18px}
.feat p{color:var(--on-dark-muted);font-size:16px;margin-top:6px}
form{background:var(--panel);border-radius:24px;padding:30px clamp(20px,3vw,40px) 36px;display:flex;flex-direction:column;gap:22px;min-width:0}
.fl{display:block;font-size:16px;margin-bottom:10px}
select,input[type=text]{width:100%;height:56px;padding:0 20px;font:16px var(--font);color:#fff;background:transparent;border:1px solid #4a4a4a;border-radius:14px;color-scheme:dark}
select option{background:var(--panel)}
.stepper{display:flex;align-items:center;border:1px solid #4a4a4a;border-radius:14px;height:56px}
.stepper button{width:64px;height:100%;background:transparent;border:0;color:#fff;font-size:26px;line-height:1;cursor:pointer}
.stepper input{flex:1;min-width:0;height:100%;border:0;background:transparent;font:16px var(--font);color:#fff;padding:0 8px;text-align:left}
.stepper input:focus{outline:none}
.stepper:focus-within{border-color:#8a8a8a}
.res{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.res label{position:relative;cursor:pointer}
.res input{position:absolute;opacity:0;pointer-events:none}
.res span{display:flex;align-items:center;justify-content:center;height:52px;border:1px solid #4a4a4a;border-radius:14px;background:#1d1e22;font-size:16px;transition:border-color .15s,background .15s}
.res input:checked+span{border-color:var(--accent);background:#2a1a0e}
.res input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
form .btn.primary{width:100%;height:60px;margin-top:6px}
.err{color:#ff8a80;font-size:14px;min-height:20px;margin-top:-8px}
#summary{border:1px solid #4a4a4a;border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:10px}
#summary pre{margin:0;font:14px/1.6 var(--font);white-space:pre-wrap;color:#e6e6e6;overflow-wrap:anywhere}
#summary p{color:var(--on-dark-muted);font-size:14px}
@media(max-width:980px){.calc .w{grid-template-columns:minmax(0,1fr)}}

footer{background:var(--light);padding-block:64px 36px;font-size:16px}
.fgrid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.6fr) minmax(0,.9fr) minmax(0,1.5fr);gap:32px;align-items:start}
.fgrid img.flogo{height:56px;width:auto}
.fgrid .tag{color:var(--muted);margin-top:24px}
.fgrid h4{margin:0 0 18px;font-size:14px;font-weight:500;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.fgrid ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.fgrid ul a{text-decoration:none;color:#555}
.fgrid ul a:hover{color:var(--accent)}
.fgrid li{color:#555}
.map{display:block;border-radius:24px;overflow:hidden}
.map img{width:100%;height:auto}
.fbottom{display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;margin-top:56px;color:#555;font-size:15px}
.fbottom a{color:#555}
@media(max-width:980px){.fgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.fgrid{grid-template-columns:minmax(0,1fr)}}

.sub .w{display:flex;flex-direction:column;gap:24px;padding-block:72px 88px;min-height:0;grid-template-columns:none}
.wip{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--on-dark-muted);border:1px solid var(--line-dark);border-radius:999px;padding:5px 12px;align-self:flex-start}
.sub .lead{color:#e6e6e6;max-width:60ch}
.plan{margin:0;padding:0;list-style:none;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.plan li{background:#17181b;border-radius:16px;padding:20px 22px;color:#e6e6e6}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

nav{gap:6px;align-items:center}
nav>a,.more-btn{padding:9px 14px;border-radius:10px;color:#cfcfcf;font:400 15px var(--font);transition:background .15s,color .15s}
nav>a:hover,.more-btn:hover,.more-menu.open .more-btn{background:#2a2a2a;color:#fff}
nav>a[aria-current],.more-btn.is-active{color:#fff;background:#2a2a2a}
.more-menu{position:relative}
.more-btn{display:inline-flex;align-items:center;gap:6px;background:transparent;border:0;cursor:pointer}
.more-btn svg{transition:transform .15s}
.more-menu.open .more-btn svg{transform:rotate(180deg)}
.dd{display:none;position:absolute;top:calc(100% + 10px);left:0;min-width:250px;background:#262626;border:1px solid #333;border-radius:14px;padding:6px;flex-direction:column;box-shadow:0 18px 40px rgba(0,0,0,.4)}
.more-menu.open .dd{display:flex}
.dd a{padding:11px 14px;border-radius:10px;text-decoration:none;color:#e6e6e6;font-size:15px}
.dd a:hover,.dd a[aria-current]{background:#333;color:#fff}
@media(max-width:980px){
  nav{align-items:stretch;gap:0}
  nav>a,nav .dd a{padding:13px 0;border-radius:0;background:transparent!important;border-bottom:1px solid var(--line-dark)}
  .more-btn{display:none}
  .more-menu{order:9}
  nav>a[aria-current],nav .dd a[aria-current]{color:var(--accent)}
  .dd{display:flex;position:static;min-width:0;background:transparent;border:0;padding:0;box-shadow:none}
}

.slider{min-width:0;display:flex;flex-direction:column;gap:20px}
.track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 32px)/3);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding-bottom:4px}
.track::-webkit-scrollbar{display:none}
.track .card{scroll-snap-align:start;min-height:300px}
.track .card .more{margin-top:auto}
.slider-nav{display:flex;gap:10px;justify-content:flex-end}
.arrow{width:52px;height:52px;border-radius:14px;border:1px solid var(--ink);background:transparent;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,opacity .15s}
.arrow svg{width:22px;height:22px}
.arrow:hover{background:var(--card)}
.arrow:disabled{opacity:.3;cursor:default;background:transparent}
@media(max-width:980px){.track{grid-auto-columns:calc((100% - 16px)/2)}}
@media(max-width:620px){.track{grid-auto-columns:82%}}

.uspd-img{margin-left:0!important;display:flex;justify-content:center}
.uspd-img img{width:auto;max-width:100%;max-height:600px;filter:drop-shadow(0 30px 40px rgba(0,0,0,.18))}
@media(max-width:980px){.uspd-img img{max-height:440px}}

.roles-hero .w{padding-block:72px 64px}
.roles-hero h1{max-width:18ch}
.chips{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}
.chip{display:inline-flex;align-items:center;gap:12px;padding:12px 18px 12px 12px;border:1px solid #3a3a3a;border-radius:14px;text-decoration:none;color:#fff;font-size:16px;transition:border-color .15s,background .15s}
.chip:hover{border-color:var(--accent);background:#17181b}
.chip .num{border-color:#5a5a5a;color:#cfcfcf}
.role-sec{scroll-margin-top:90px}
.role{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px;align-items:start}
.role .head{margin:0;position:sticky;top:110px}
.role .head .num{align-self:flex-start}
.role .promise{font-size:20px;font-weight:500;line-height:1.35}
.role .head p:not(.promise){color:var(--muted)}
.role .actions{margin-top:8px}
.role .card{min-height:190px}
.role .card p{margin-top:auto}
@media(max-width:980px){.role{grid-template-columns:minmax(0,1fr)}.role .head{position:static}}

.role .head{position:static}

.uspd-img img{filter:none}

.uspd-img img{filter:drop-shadow(0 30px 40px rgba(0,0,0,.18))}

.cases-hero .w{padding-block:72px 64px}
.cases-hero h1{max-width:20ch}
.cases-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media(max-width:760px){.cases-grid{grid-template-columns:minmax(0,1fr)}}
.case-card{--brand:#1b1b1b;background:var(--card);border-radius:24px;padding:32px;display:flex;flex-direction:column;gap:24px;min-height:340px;transition:background .25s,color .25s;cursor:default;outline:none}
.case-logo{height:88px;display:flex;align-items:center}
.case-logo img{max-height:72px;width:auto;max-width:220px;transition:filter .25s}
.case-logo span{display:inline-flex;align-items:center;justify-content:center;width:180px;height:72px;border:1.5px dashed #cfcfcf;border-radius:14px;color:var(--muted);font-size:14px;transition:border-color .25s,color .25s}
.case-body{display:flex;flex-direction:column;gap:10px}
.case-body h3{font-size:26px;font-weight:600;letter-spacing:-.01em}
.case-obj{font-size:15px;color:var(--muted);transition:color .25s}
.case-body p:not(.case-obj){color:#555;font-size:16px;transition:color .25s}
.case-more{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:500}
.case-more svg{width:18px;height:18px;transition:transform .25s}
.case-card:hover,.case-card:focus-visible{background:var(--brand);color:#fff}
.case-card:hover .case-obj,.case-card:hover .case-body p,.case-card:focus-visible .case-obj,.case-card:focus-visible .case-body p{color:rgba(255,255,255,.85)}
.case-card:hover .case-logo span,.case-card:focus-visible .case-logo span{border-color:rgba(255,255,255,.6);color:#fff}
.case-logo img{padding:8px 12px;margin-left:-12px;border-radius:14px;background:transparent;transition:background .25s,box-shadow .25s}
.case-card:hover .case-logo img,.case-card:focus-visible .case-logo img{background:#fff;box-shadow:0 6px 18px -8px rgba(0,0,0,.35)}
.case-card:hover .case-more svg{transform:translateX(4px)}
@media(prefers-reduced-motion:reduce){.case-card,.case-more svg{transition:none}}

.done{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 20px;margin-top:20px}
.done-label{font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:var(--on-dark-muted);padding-bottom:18px}
.done-hand{position:relative;display:inline-flex;align-items:baseline;gap:14px;font-family:"Caveat","Segoe Print","Comic Sans MS",cursive;color:var(--accent);line-height:1;padding-bottom:14px}
.done-num{font-size:clamp(72px,10vw,120px);font-weight:700;transform:rotate(-4deg);display:inline-block;clip-path:inset(0 0 0 0);animation:write 1.4s cubic-bezier(.6,.05,.3,1) .4s both}
.done-unit{font-size:clamp(32px,4vw,46px);font-weight:600;color:#fff;transform:rotate(-3deg);display:inline-block;animation:write .9s cubic-bezier(.6,.05,.3,1) 1.6s both}
.done-line{position:absolute;left:0;right:0;bottom:0;width:100%;height:18px;overflow:visible}
.done-line path{fill:none;stroke:var(--accent);stroke-width:4;stroke-linecap:round;stroke-dasharray:320;stroke-dashoffset:0;animation:draw .8s ease-out 2.4s both}
@keyframes write{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes draw{from{stroke-dashoffset:320}to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){.done-num,.done-unit,.done-line path{animation:none}}

.hero.sub .w{align-items:flex-start;text-align:left}

.done{flex-direction:column;align-items:flex-start;gap:6px;margin-top:16px}
.done-label{padding-bottom:0}
.done-hand{font-family:var(--font);padding-bottom:16px;align-items:baseline}
.done-num{font-size:clamp(72px,10vw,120px);font-weight:600;letter-spacing:-.04em;transform:none;font-variant-numeric:tabular-nums}
.done-unit{font-size:clamp(26px,3vw,36px);font-weight:500;transform:none}


.hero.sub.cases-hero .w,.hero.sub.roles-hero .w{align-items:flex-start;text-align:left;padding-block:72px 64px}
.cases-hero h1,.roles-hero h1{max-width:18ch;margin:0}
.cases-hero .lead{max-width:60ch}

.done-hand{white-space:nowrap}
.tw{display:inline}
.done-pre{font-size:clamp(26px,3vw,36px);font-weight:500;color:#fff}
.done-num,.done-unit{animation:none!important;clip-path:none!important}
.caret{display:inline-block;width:3px;height:.9em;background:var(--accent);margin-left:6px;align-self:center;font-size:clamp(48px,6vw,80px);animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.done-line path{animation:none;stroke-dashoffset:320;transition:stroke-dashoffset .8s ease-out}
.done-hand.typed .done-line path{stroke-dashoffset:0}
@media(prefers-reduced-motion:reduce){.caret{animation:none}.done-line path{transition:none}}
@media(max-width:560px){.done-hand{white-space:normal;flex-wrap:wrap}}

.tw .caret{width:4px;height:.75em;font-size:inherit;vertical-align:baseline;margin-left:6px;transform:translateY(.08em)}
.tw{font-size:clamp(72px,10vw,120px);line-height:1}

.cases-hero{position:relative;overflow:hidden}
.cases-hero .w{position:relative;z-index:1}
.city{position:absolute;left:0;right:0;bottom:0;width:100%;height:85%;pointer-events:none;opacity:.95;
-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.12) 0,rgba(0,0,0,.12) 40%,#000 75%);mask-image:linear-gradient(90deg,rgba(0,0,0,.12) 0,rgba(0,0,0,.12) 40%,#000 75%)}
@media(max-width:760px){.city{height:60%;opacity:.5}}

.roles-hero{position:relative;overflow:hidden}
.roles-hero .w{position:relative;z-index:1}
.blueprint{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;
-webkit-mask-image:linear-gradient(90deg,transparent 0,transparent 35%,#000 65%);mask-image:linear-gradient(90deg,transparent 0,transparent 35%,#000 65%)}
@media(max-width:760px){.blueprint{opacity:.35}}

.uspd-3d{position:relative;width:100%;max-width:560px;aspect-ratio:1/1.05;margin-inline:auto}
.uspd-3d::after{content:"";position:absolute;left:18%;right:18%;bottom:2%;height:7%;background:radial-gradient(ellipse at center,rgba(0,0,0,.22),transparent 70%);z-index:0}
.uspd-3d canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;cursor:grab;touch-action:pan-y;opacity:0;transition:opacity .6s}
.uspd-3d canvas:active{cursor:grabbing}
.uspd-3d .poster{position:absolute;inset:6% 12%;width:76%;height:88%;object-fit:contain;transition:opacity .6s;filter:none}
.uspd-3d.ready canvas{opacity:1}
.uspd-3d.ready .poster{opacity:0}
.uspd-3d .hint{position:absolute;left:50%;bottom:-4px;transform:translateX(-50%);z-index:2;font-size:13px;color:var(--muted);display:inline-flex;gap:6px;align-items:center;opacity:0;transition:opacity .4s;white-space:nowrap}
.uspd-3d.ready .hint{opacity:1}
.uspd-3d.touched .hint{opacity:0}

.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.site-banner{background:var(--accent);color:#fff;font-size:15px}
.site-banner .w{display:flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding-block:8px;flex-wrap:wrap;text-align:center}
.site-banner a{color:#fff;font-weight:500}
.site-banner button{background:transparent;border:0;color:#fff;font-size:22px;line-height:1;cursor:pointer;padding:0 4px;opacity:.8}
.site-banner button:hover{opacity:1}

.tech-hero{position:relative;overflow:hidden}
.tech-hero .w{position:relative;z-index:1}
.netbg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,transparent 0,transparent 38%,#000 66%);mask-image:linear-gradient(90deg,transparent 0,transparent 38%,#000 66%)}
@media(max-width:760px){.netbg{opacity:.35}}

.tech-hero h1{max-width:13ch}
.tech-hero .lead{max-width:44ch}
.tech-hero .netbg{-webkit-mask-image:linear-gradient(90deg,transparent 0,transparent 46%,#000 70%);mask-image:linear-gradient(90deg,transparent 0,transparent 46%,#000 70%)}
@media(max-width:900px){.tech-hero .netbg{opacity:.3}}

/* ---------- страница кейса ---------- */
a.case-card{text-decoration:none;color:inherit}
.case-hero{position:relative;overflow:hidden;--brand:#ff6b00}
.case-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 55% 80% at 85% 30%,color-mix(in srgb,var(--brand) 38%,transparent),transparent 70%);opacity:.55;pointer-events:none}
.case-hero .w{position:relative;z-index:1;padding-block:48px 56px}
.back{color:#cfcfcf;text-decoration:none;font-size:15px;align-self:flex-start}
.back:hover{color:#fff}
.case-head{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:8px}
.case-head-logo{width:120px;height:120px;border-radius:24px;background:#fff;display:flex;align-items:center;justify-content:center;padding:14px;flex:none}
.case-head-logo img{max-width:100%;max-height:100%;object-fit:contain}
.case-head-logo span{color:#999;font-size:13px}
.case-head h1{font-size:clamp(36px,5vw,60px);margin:6px 0 10px}
.case-head .lead{margin:0}
.case-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:28px;width:100%}
.case-facts div{border:1px solid #333;border-radius:16px;padding:14px 18px;min-width:0}
.case-facts span{display:block;font-size:13px;color:var(--on-dark-muted)}
.case-facts b{display:block;font-size:18px;font-weight:500;margin-top:4px;overflow-wrap:anywhere}
@media(max-width:760px){.case-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
.case-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px;align-items:start}
@media(max-width:980px){.case-layout{grid-template-columns:minmax(0,1fr)}}
.gallery{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:200px 200px;gap:12px;margin-bottom:28px}
.gallery.one{grid-template-columns:1fr;grid-template-rows:420px}
.gallery .ph{border:0;padding:0;border-radius:20px;overflow:hidden;background:#e9e9e7;cursor:zoom-in;min-width:0}
.gallery .ph:first-child{grid-row:1/3}
.gallery .ph img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.gallery .ph:hover img{transform:scale(1.03)}
.gallery .ph.empty{display:flex;align-items:center;justify-content:center;color:#999;font-size:14px;cursor:default;border:1.5px dashed #d0d0cd;background:#fafaf9}
.gallery:has(.ph:only-child) .ph:first-child{grid-row:auto}
@media(max-width:620px){.gallery{grid-template-columns:1fr 1fr;grid-template-rows:220px 140px}.gallery .ph:first-child{grid-column:1/3;grid-row:auto}}
.case-text{background:var(--card);border-radius:20px;padding:28px 30px;display:flex;flex-direction:column;gap:10px}
.case-text h2{font-size:22px;margin-top:10px}
.case-text h2:first-child{margin-top:0}
.case-text p{color:#444;white-space:pre-line}
.case-video{margin-top:20px;border-radius:20px;overflow:hidden;aspect-ratio:16/9;background:#111;max-width:100%}
.case-video iframe{width:100%;height:100%;border:0;display:block}
.case-video.empty,.case-video.link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#cfcfcf;text-decoration:none;aspect-ratio:auto;padding:40px 20px}
.case-video.empty small{color:#888}
.case-video.link{flex-direction:row;gap:14px;font-weight:500;color:#fff}
.case-video .play{width:44px;height:44px;border-radius:50%;background:var(--accent);position:relative;flex:none}
.case-video .play::after{content:"";position:absolute;left:17px;top:13px;border-left:14px solid #fff;border-top:9px solid transparent;border-bottom:9px solid transparent}
.case-side{display:flex;flex-direction:column;gap:16px;position:sticky;top:96px}
@media(max-width:980px){.case-side{position:static}}
.case-side .card{min-height:0}
.case-side .card h3{font-size:18px;font-weight:600}
.case-side .card p{color:#555}
.case-nav{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:32px}
.case-nav a{background:var(--card);border-radius:16px;padding:18px 22px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:4px}
.case-nav a:hover{box-shadow:inset 0 0 0 1px var(--ink)}
.case-nav a span{font-size:13px;color:var(--muted)}
.case-nav a:last-child{text-align:right}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;cursor:zoom-out}
.lightbox img{max-width:100%;max-height:100%;border-radius:12px}

/* LEGO-конструктор */

/* ---------- конструктор LEGO ---------- */
.lego-sec{background:var(--light)}
.lego{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
@media(max-width:980px){.lego{grid-template-columns:minmax(0,1fr)}}
.lego .head{margin:0}
.lego-eyebrow{color:var(--accent);font-size:15px;letter-spacing:.04em;text-transform:uppercase}
.lego-palette{display:flex;flex-wrap:wrap;gap:22px 12px;margin-top:20px;padding-top:10px}
.brick{--c:#ccc;--t:#111;position:relative;display:inline-flex;align-items:center;justify-content:center;height:46px;padding:0 18px;border:0;border-radius:6px;background:var(--c);color:var(--t);font:500 15px var(--font);cursor:pointer;box-shadow:inset 0 -5px 0 rgba(0,0,0,.18),0 2px 0 rgba(0,0,0,.08);transition:transform .15s,box-shadow .15s;white-space:nowrap}
.brick::before{content:"";position:absolute;left:12px;right:12px;top:-7px;height:8px;background:radial-gradient(ellipse 7px 5px at 50% 70%,var(--c) 92%,transparent 100%) 0 0/24px 8px repeat-x;filter:brightness(1.08)}
.brick.w3{min-width:120px}.brick.w4{min-width:170px}
.lego-palette .brick:hover{transform:translateY(-3px)}
.lego-palette .brick:active{transform:translateY(0)}
.lego-palette .brick.used{opacity:.35}
.lego-build{display:flex;flex-direction:column;gap:18px}
.lego-stage{position:relative;background:#fff;border-radius:24px;min-height:440px;padding:40px 24px 28px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;overflow:hidden}
.lego-stage::before{content:"";position:absolute;inset:0;background:radial-gradient(circle,#ececea 1.5px,transparent 1.6px) 0 0/22px 22px;opacity:.8}
.lego-stack{position:relative;display:flex;flex-direction:column-reverse;align-items:center;gap:10px;margin-bottom:10px}
.lego-stack .brick{animation:drop .45s cubic-bezier(.3,1.5,.5,1)}
.lego-stack .brick:nth-child(odd){transform:translateX(-14px)}.lego-stack .brick:nth-child(even){transform:translateX(14px)}
.lego-stack .brick:hover{filter:brightness(1.05)}
.lego-stack .brick::after{content:"×";position:absolute;right:-8px;top:-8px;width:20px;height:20px;border-radius:50%;background:#1b1b1b;color:#fff;font-size:13px;line-height:20px;text-align:center;opacity:0;transition:opacity .15s}
.lego-stack .brick:hover::after{opacity:1}
@keyframes drop{from{opacity:0;translate:0 -60px}to{opacity:1;translate:0 0}}
.brick.base{min-width:300px;height:56px;font-weight:600;font-size:16px;cursor:default;position:relative;z-index:1}
.lego-plate{position:relative;width:min(100%,420px);height:14px;margin-top:8px;border-radius:4px;background:#d9d9d6;box-shadow:inset 0 -4px 0 rgba(0,0,0,.08)}
.lego-hint{position:absolute;top:24px;left:24px;right:24px;text-align:center;color:var(--muted);font-size:15px;z-index:1}
.lego-sum{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.lego-sum span{display:block;font-size:13px;color:var(--muted)}
.lego-sum b{font-size:30px;font-weight:600;font-variant-numeric:tabular-nums}
.lego-actions{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:620px){.brick.w4{min-width:150px}.brick.base{min-width:220px}.lego-stage{min-height:380px}}
@media(prefers-reduced-motion:reduce){.lego-stack .brick{animation:none}}

/* чертёж не заходит под текст и кнопки */
.roles-hero .lead{max-width:560px}
@media(max-width:1199px){.roles-hero .chips{max-width:600px}}
.blueprint.bp-faint{opacity:.35}

/* LEGO: из модулей вырастает дом */
.lego-stage{min-height:480px}
.lego-roofwrap{position:relative;width:min(330px,100%);height:96px;margin-bottom:6px;z-index:1}
.lego-roofwrap.pop{animation:drop .5s cubic-bezier(.3,1.5,.5,1)}
.lego-roof{position:absolute;inset:0;background:linear-gradient(180deg,#d9573f,#b8402b);clip-path:polygon(50% 0,100% 100%,0 100%)}
.lego-roof::after{content:"";position:absolute;left:0;right:0;bottom:0;height:8px;background:rgba(0,0,0,.18)}
.lego-roofwrap .chimney{position:absolute;right:22%;top:14px;width:22px;height:44px;background:#5b5f66;border-radius:3px 3px 0 0;box-shadow:inset 0 -4px 0 rgba(0,0,0,.2)}
.lego-roofwrap .chimney i{position:absolute;left:3px;bottom:44px;width:16px;height:16px;border-radius:50%;background:#d6d6d3;opacity:0}
.lego-roofwrap.cozy .chimney i{animation:smoke 2.4s ease-out infinite}
.lego-roofwrap.cozy .chimney i:nth-child(2){animation-delay:.8s}.lego-roofwrap.cozy .chimney i:nth-child(3){animation-delay:1.6s}
@keyframes smoke{0%{opacity:0;transform:translate(0,0) scale(.5)}20%{opacity:.8}100%{opacity:0;transform:translate(14px,-46px) scale(1.5)}}
.lego-stack{gap:8px;margin-bottom:8px}
.lego-stack .brick,.lego-stack .brick:nth-child(odd),.lego-stack .brick:nth-child(even){transform:none;width:280px;min-width:0;padding:0 50px;
background:linear-gradient(#ffe7a3,#ffd36b) 14px 50%/22px 22px no-repeat,linear-gradient(#ffe7a3,#ffd36b) calc(100% - 14px) 50%/22px 22px no-repeat,var(--c)}
.lego-stack .brick:first-child{background:linear-gradient(#ffe7a3,#ffd36b) 14px 50%/22px 22px no-repeat,linear-gradient(#7a4a2a,#5e3820) calc(100% - 16px) 100%/22px 34px no-repeat,var(--c)}
.brick.base{min-width:0;width:320px}
.lego-tree{position:absolute;left:calc(50% - 215px);bottom:42px;width:44px;height:96px;z-index:1;transition:opacity .4s}
.lego-tree::before{content:"";position:absolute;left:4px;top:0;width:36px;height:64px;border-radius:50% 50% 45% 45%;background:#4caf6a;box-shadow:inset -6px -6px 0 rgba(0,0,0,.12)}
.lego-tree::after{content:"";position:absolute;left:18px;bottom:0;width:8px;height:36px;background:#7a4a2a;border-radius:2px}
@media(max-width:620px){.lego-stack .brick,.lego-stack .brick:nth-child(odd),.lego-stack .brick:nth-child(even){width:250px;padding:0 44px;font-size:14px}.brick.base{width:280px;min-width:0}.lego-tree{display:none}}

/* Схема построения комплекса (Технология) */
.scheme-sec{background:var(--light)}
.scheme-head{max-width:880px}
.scheme-wrap{margin-top:36px;background:#fff;border-radius:24px;padding:28px;overflow-x:auto;-webkit-overflow-scrolling:touch}
.scheme-wrap:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.scheme-svg{display:block;width:100%;min-width:920px;height:auto;font-family:var(--font)}
.scheme-svg .flow{animation:schemeflow 1.4s linear infinite}
.scheme-svg .flow.rev{animation-direction:reverse}
@keyframes schemeflow{to{stroke-dashoffset:-12}}
.scheme-hint{display:none;margin-top:12px;font-size:14px;color:var(--muted)}
@media(max-width:960px){.scheme-hint{display:block}.scheme-wrap{padding:18px;border-radius:18px}}
@media(prefers-reduced-motion:reduce){.scheme-svg .flow{animation:none}}

/* Конструктор: тёмный блок-формула (заменяет карточки) */
.scheme-sec .kdi{margin-bottom:88px;background:#121212;color:#f2f2f0;border-radius:28px;padding:56px}
.kdi-top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;align-items:end}
.kdi-top h2{color:#fff;margin:0}
.kdi-top p{color:#a9a9a6;margin:0}
.kdi-formula{list-style:none;margin:48px 0 0;padding:0;display:flex;align-items:stretch;gap:10px}
.kdi-block{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:8px;padding:20px 18px;border:1px solid #2e2e2e;border-radius:18px;background:#1a1a1a;transition:border-color .2s,transform .2s}
.kdi-block:hover{border-color:#555;transform:translateY(-3px)}
.kdi-block svg{width:30px;height:30px;color:#fff;margin-bottom:10px}
.kdi-block b{font-weight:500;font-size:16px;color:#fff}
.kdi-block span{font-size:13px;line-height:1.45;color:#8d8d8a}
.kdi-join{align-self:center;font-size:22px;color:#5c5c59;flex:none}
.kdi-join.eq{color:var(--accent)}
.kdi-result{flex:1.25 1 0;background:var(--accent);border-color:var(--accent);justify-content:flex-end}
.kdi-result:hover{border-color:var(--accent)}
.kdi-result b{font-size:18px;line-height:1.25}
.kdi-result span{color:rgba(255,255,255,.85)}
.kdi-rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:48px;border-top:1px solid #2a2a2a}
.kdi-rules>div{padding:28px 28px 0 0}
.kdi-rules>div+div{padding-left:28px;border-left:1px solid #2a2a2a}
.kdi-rules .n{font-size:13px;color:#7a7a77}
.kdi-rules h3{margin:10px 0 8px;font-size:18px;font-weight:500;color:#fff}
.kdi-rules p{margin:0;font-size:15px;color:#a9a9a6}
@media(max-width:1100px){.kdi-formula{flex-wrap:wrap}.kdi-join{display:none}.kdi-block{flex:1 1 calc(33.333% - 10px)}.kdi-result{flex-basis:100%}}
@media(max-width:760px){.scheme-sec .kdi{padding:32px 20px;border-radius:22px;margin-bottom:56px}.kdi-top{grid-template-columns:1fr;gap:16px}.kdi-formula{margin-top:32px}.kdi-block{flex-basis:calc(50% - 10px)}.kdi-rules{grid-template-columns:1fr;margin-top:32px}.kdi-rules>div,.kdi-rules>div+div{padding:22px 0 0;border-left:0}.kdi-rules>div+div{margin-top:22px;border-top:1px solid #2a2a2a}}

.kdi-result{justify-content:center;align-items:center;text-align:center}

/* Бейдж «Запатентованная технология» */
.patent-badge{display:inline-flex;align-self:flex-start;width:fit-content;align-items:center;gap:8px;margin-bottom:18px;padding:7px 14px 7px 10px;border:1px solid var(--accent);border-radius:999px;font-size:14px;font-weight:500;color:var(--ink)}
.patent-badge svg{width:18px;height:18px;color:var(--accent)}

/* Преимущества технологии: бенто-сетка */
.adv-sec{padding-block:clamp(72px,9vw,120px);background:#fff}
.adv-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;align-items:end;margin-bottom:40px}
.adv-head h2{margin:0}.adv-head p{margin:0;color:var(--muted)}
.adv-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(220px,auto);gap:16px}
.adv{position:relative;display:flex;flex-direction:column;gap:10px;padding:28px;border-radius:24px;background:var(--light);overflow:hidden;transition:transform .25s}
.adv:hover{transform:translateY(-4px)}
.adv h3{margin:0;font-size:20px;font-weight:500}
.adv p{margin:0;font-size:15px;line-height:1.5;color:var(--muted)}
.adv-n{position:absolute;top:22px;right:26px;font-size:13px;color:#a3a3a0;font-variant-numeric:tabular-nums}
.adv-ic{width:34px;height:34px;margin-bottom:auto;color:var(--ink)}
.a-wire{grid-column:span 2;grid-row:span 2;background:#121212;color:#fff}
.a-wire h3{font-size:30px;color:#fff;margin-top:4px}.a-wire p{color:#a9a9a6;max-width:440px}.a-wire .adv-n{color:#6b6b68}
.adv-dia{margin-top:auto;width:100%;height:auto}
.adv-dia .m{fill:none;stroke:#8d8d8a;stroke-width:1}
.adv-dia .w{fill:none;stroke:#5c5c59;stroke-width:.8}
.adv-dia .r{fill:none;stroke:#ff6b00;stroke-width:1.2}
.adv-dia .bus{fill:none;stroke:#ff6b00;stroke-width:1.6;stroke-dasharray:4 3;animation:advbus 2.6s linear infinite}
.adv-dia .sh{fill:none;stroke:#fff;stroke-width:1.2}
.adv-dia .t{font:500 11px var(--font);fill:#8d8d8a}.adv-dia .t.o{fill:#fff}
@keyframes advbus{to{stroke-dashoffset:-14}}
.a-fast{grid-column:span 2;flex-direction:row;align-items:flex-end;gap:24px}
.a-fast>div:first-of-type{flex:1;display:flex;flex-direction:column;gap:10px;align-self:stretch;justify-content:flex-end}
.adv-floors{display:flex;flex-direction:column-reverse;gap:6px;flex:none}
.adv-floors span{display:block;width:96px;height:22px;border-radius:5px;background:#fff;border:1px solid #dcdcd8;position:relative;opacity:0;animation:advfloor .5s cubic-bezier(.3,1.4,.5,1) forwards;animation-delay:var(--d)}
.adv-floors span::after{content:"";position:absolute;left:50%;top:50%;width:26px;height:8px;margin:-4px 0 0 -13px;border-radius:2px;border:1.4px solid var(--accent)}
.adv-sec.in .adv-floors span{animation-play-state:running}
@keyframes advfloor{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}
.adv-dots{display:flex;margin-bottom:auto}
.adv-dots i{width:34px;height:34px;border-radius:50%;background:var(--c);border:3px solid var(--light);margin-left:-10px}
.adv-dots i:first-child{margin-left:0}
.a-data,.a-pat{grid-column:span 2;flex-direction:row;align-items:center;gap:22px}
.a-data .adv-ic,.a-pat .adv-ic{margin:0;width:48px;height:48px;flex:none}
.a-data>div,.a-pat>div{display:flex;flex-direction:column;gap:10px}
.a-pat{background:#fff;border:1.5px solid var(--accent)}
.a-pat .adv-ic{color:var(--accent)}
@media(max-width:1020px){.adv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.a-wire,.a-fast,.a-data,.a-pat{grid-column:span 2}.a-wire{grid-row:auto}}
@media(max-width:620px){.adv-head{grid-template-columns:1fr;gap:14px}.adv-grid{grid-template-columns:1fr;grid-auto-rows:auto}.adv,.a-wire,.a-fast,.a-data,.a-pat{grid-column:auto}.adv{padding:24px}.a-wire h3{font-size:24px}.a-fast{flex-direction:column;align-items:flex-start}.a-data,.a-pat{flex-direction:column;align-items:flex-start}.adv-ic{margin-bottom:6px}}
@media(prefers-reduced-motion:reduce){.adv-dia .bus{animation:none}.adv-floors span{animation:none;opacity:1}}

/* Преимущество 07: почти нет человеческого фактора */
.a-human{grid-column:1/-1;gap:28px}
.hf-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:end;padding-right:40px}
.hf-head h3{font-size:30px;line-height:1.15}
.hf-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;counter-reset:hf;position:relative}
.hf-steps::before{content:"";position:absolute;left:18px;right:18px;top:18px;height:0;border-top:1.5px dashed #c9c9c4}
.hf-steps li{position:relative;display:flex;flex-direction:column;gap:6px;counter-increment:hf}
.hf-steps li::before{content:counter(hf);display:grid;place-items:center;width:36px;height:36px;margin-bottom:12px;border-radius:50%;background:#fff;border:1.5px solid var(--ink);font-size:14px;font-weight:600;position:relative}
.hf-steps b{font-weight:500;font-size:17px}
.hf-steps span{font-size:15px;line-height:1.5;color:var(--muted)}
.hf-result{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;margin:0;padding:12px 20px 12px 14px;border-radius:999px;background:var(--accent);color:#fff!important;font-size:16px!important;font-weight:500}
.hf-result svg{width:22px;height:22px;flex:none}
@media(max-width:1020px){.hf-head{grid-template-columns:1fr;gap:12px}.hf-steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}.hf-steps::before{display:none}}
@media(max-width:620px){.a-human{grid-column:auto}.hf-head{padding-right:30px}.hf-head h3{font-size:24px}.hf-steps{grid-template-columns:1fr}.hf-result{border-radius:16px}}

/* Наши патенты */
.pat-sec{background:var(--light);padding-block:clamp(72px,9vw,120px)}
.pat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.pat-card{all:unset;box-sizing:border-box;cursor:zoom-in;display:flex;flex-direction:column;gap:16px;padding:28px 28px 22px;border-radius:24px;background:#fff;transition:transform .25s,box-shadow .25s}
.pat-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px -24px rgba(0,0,0,.35)}
.pat-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.pat-paper{position:relative;display:flex;flex-direction:column;align-items:center;gap:9px;aspect-ratio:1/1.414;padding:12% 12% 10%;background:#fdfcf8;border:1px solid #e3e1da;box-shadow:inset 0 0 0 6px #fff,inset 0 0 0 7px #d9cfb4;transform:rotate(-1.2deg);transition:transform .25s}
.pat-card:nth-child(2) .pat-paper{transform:rotate(.8deg)}.pat-card:nth-child(3) .pat-paper{transform:rotate(-.4deg)}
.pat-card:hover .pat-paper{transform:rotate(0)}
.pat-emblem{width:22%;aspect-ratio:1;border-radius:50%;border:1.5px solid #c8b98e;margin-bottom:6px}
.pat-l{height:6px;border-radius:3px;background:#d9d6cc}.w40{width:40%}.w60{width:60%}.w80{width:80%}
.pat-lines{display:flex;flex-direction:column;gap:7px;width:100%;margin-top:10%}
.pat-lines i{height:3px;border-radius:2px;background:#ebe8df}.pat-lines i:nth-child(odd){width:92%}
.pat-seal{position:absolute;right:12%;bottom:8%;width:20%;aspect-ratio:1;border-radius:50%;border:2px solid var(--accent);opacity:.7;box-shadow:inset 0 0 0 4px rgba(255,107,0,.12)}
.pat-cap{display:flex;flex-direction:column;gap:2px}
.pat-cap b{font-weight:500;font-size:17px}.pat-cap span{font-size:14px;color:var(--muted)}
.pat-lb{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;gap:16px;padding:24px;background:rgba(10,10,10,.88)}
.pat-lb[hidden]{display:none}
.pat-lb figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:14px;max-height:100%}
.pat-view img{display:block;max-width:min(88vw,820px);max-height:80vh;object-fit:contain;background:#fff}
.pat-view .pat-paper.big{width:min(70vw,52vh);transform:none}
.pat-lb figcaption{color:#ddd;font-size:15px}
.pat-x{position:absolute;top:16px;right:20px;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:26px;cursor:pointer}
.pat-nav{flex:none;width:48px;height:48px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:28px;line-height:1;cursor:pointer}
.pat-x:hover,.pat-nav:hover{background:rgba(255,255,255,.22)}
@media(max-width:900px){.pat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.pat-grid{grid-template-columns:1fr 1fr;gap:12px}.pat-card{padding:16px 16px 14px;border-radius:18px}.pat-cap b{font-size:15px}.pat-cap span{font-size:12px}.pat-nav{position:absolute;bottom:20px}.pat-nav.prev{left:calc(50% - 60px)}.pat-nav.next{right:calc(50% - 60px)}}
.patent-badge{text-decoration:none}.patent-badge:hover{background:#fff}
.pat-link{color:var(--accent);text-decoration:none;font-size:15px;font-weight:500}.pat-link:hover{text-decoration:underline}

/* Патенты: реальные сканы */
.pat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.pat-thumb{display:block;transform:rotate(-1.2deg);transition:transform .25s}
.pat-card:nth-child(2) .pat-thumb{transform:rotate(.8deg)}.pat-card:nth-child(3) .pat-thumb{transform:rotate(-.5deg)}.pat-card:nth-child(4) .pat-thumb{transform:rotate(1deg)}
.pat-card:hover .pat-thumb{transform:rotate(0) scale(1.02)}
.pat-thumb img{display:block;width:100%;height:auto;aspect-ratio:520/736;object-fit:cover;border:1px solid #e3e1da;box-shadow:0 10px 24px -16px rgba(0,0,0,.4);background:#fff}
.pat-docs{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.pat-docs a{display:inline-flex;align-items:center;gap:8px;padding:11px 16px;border-radius:12px;background:#fff;color:var(--ink);text-decoration:none;font-size:15px;transition:background .15s}
.pat-docs a:hover{background:#ececea}
.pat-docs svg{width:18px;height:18px;color:var(--accent)}
@media(max-width:1020px){.pat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Виды разветвителей */
.sp-sec{background:#fff;padding-block:clamp(72px,9vw,120px)}
.sp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sp-card{display:flex;flex-direction:column;gap:6px;padding:16px 16px 26px;border-radius:24px;background:var(--light);transition:transform .25s}
.sp-card:hover{transform:translateY(-4px)}
.sp-fig{background:#fff;border-radius:16px;padding:14px 10px;margin-bottom:14px}
.sp-sym{display:block;width:100%;max-width:300px;margin:0 auto;height:auto;font-family:var(--font)}
.sp-type{padding:0 10px;font-size:13px;color:var(--muted)}
.sp-card h3{margin:0;padding:0 10px;font-size:24px;font-weight:600}
.sp-card p{margin:4px 0 0;padding:0 10px;font-size:15px;line-height:1.5;color:var(--muted)}
.sp-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 32px;margin-top:28px;padding:22px 26px;border:1px solid #e3e1da;border-radius:18px;font-size:14px;color:var(--muted)}
.sp-legend span{display:flex;align-items:center;gap:14px}
.sp-legend svg{width:54px;height:20px;flex:none}
.ms-sec{padding-block:clamp(72px,9vw,120px)}
@media(max-width:1020px){.sp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.sp-grid{grid-template-columns:1fr}.sp-legend{grid-template-columns:1fr;padding:18px}}
.sp-more{margin-top:28px}

/* Иконки ресурсов */
.adv-res{display:flex;gap:6px;margin-bottom:auto;flex-wrap:wrap;padding-right:22px}
.res-ic{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#fff;color:var(--c)}
.res-ic svg{width:20px;height:20px}

/* ===== Продукты ===== */
.pr-hero .lead{max-width:46ch}
.pr-sec{padding-block:clamp(72px,9vw,120px)}
.pr-light{background:var(--light)}
.pr-uspd{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:56px;align-items:center}
.pr-tag{display:inline-block;margin-bottom:14px;padding:5px 12px;border-radius:999px;border:1px solid var(--accent);color:var(--accent);font-size:13px;font-weight:500}
.pr-uspd-txt h2{margin:0}
.pr-uspd-txt .promise{margin:10px 0 14px;font-size:20px;color:var(--ink)}
.pr-uspd-txt>p{color:var(--muted)}
.pr-feat{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:18px 24px}
.pr-feat li{display:flex;gap:12px;align-items:flex-start}
.pr-feat span{display:flex;flex-direction:column;font-size:14px;color:var(--muted);line-height:1.45}
.pr-feat b{font-weight:500;font-size:16px;color:var(--ink)}
.pr-ic{width:24px;height:24px;flex:none;color:var(--accent);margin-top:1px}
.pr-specs{margin-top:28px;padding:18px 20px;border:1.5px dashed #d4d2cb;border-radius:16px;display:flex;flex-direction:column;gap:4px;font-size:14px;color:var(--muted)}
.pr-specs b{color:var(--ink);font-weight:500;font-size:15px}
.pr-uspd-txt .actions{margin-top:28px}
.pr-sub{margin:8px 0 16px;font-size:20px;font-weight:500}
.pr-grid+.pr-sub{margin-top:40px}
.pr-grid{display:grid;gap:16px}
.pr-grid.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.pr-grid.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.pr-grid.g2{grid-template-columns:repeat(3,minmax(0,1fr))}
.pr-card{display:flex;flex-direction:column;gap:8px;padding:16px 16px 22px;border-radius:22px;background:#fff;text-decoration:none;color:inherit;transition:transform .25s,box-shadow .25s}
.pr-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px -28px rgba(0,0,0,.35)}
.pr-fig{background:var(--light);border-radius:14px;padding:10px 6px;margin-bottom:10px}
.pr-light .pr-fig{background:#f7f7f5}
.pr-card h3{margin:0;padding:0 8px;font-size:22px;font-weight:600}
.pr-card p{margin:0;padding:0 8px;font-size:15px;line-height:1.5;color:var(--muted);flex:1}
.pr-link{display:inline-flex;align-items:center;gap:8px;margin:10px 8px 0;color:var(--accent);text-decoration:none;font-size:15px;font-weight:500}
.pr-link svg{width:16px;height:16px}
.pr-link:hover{text-decoration:underline}
.pr-more{justify-content:space-between;background:#121212;color:#fff;padding:26px}
.pr-more span{font-size:22px;font-weight:500;line-height:1.25}
.pr-more b{display:inline-flex;align-items:center;gap:8px;font-weight:500;font-size:15px;color:#ff8a3d}
.pr-more b svg{width:16px;height:16px}
.pr-plain{background:#fff;padding:28px}
.pr-plain h3,.pr-plain p{padding:0}.pr-plain .pr-link{margin-left:0}
.pr-big{width:40px;height:40px;color:var(--ink);margin-bottom:28px}
.pr-dark{background:#121212;color:#fff;border-radius:28px;padding:56px}
.pr-dark h2{color:#fff}.pr-dark .adv-head p{color:#a9a9a6}
.pr-sw{display:flex;flex-direction:column;gap:8px;padding:24px;border:1px solid #2e2e2e;border-radius:18px;background:#1a1a1a}
.pr-sw .pr-big{color:#fff;margin-bottom:18px;width:34px;height:34px}
.pr-sw h3{margin:0;font-size:19px;font-weight:500;color:#fff}
.pr-sw p{margin:0;font-size:14px;line-height:1.5;color:#8d8d8a}
.pr-cta{display:flex;justify-content:space-between;align-items:center;gap:32px;padding:44px 48px;border-radius:28px;background:#fff}
.pr-cta h2{margin:0 0 8px}.pr-cta p{margin:0;color:var(--muted)}
.pr-cta .btn.ghost-dark{color:var(--ink);border-color:var(--ink)}
@media(max-width:1020px){.pr-uspd{grid-template-columns:1fr;gap:28px}.pr-grid.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.pr-grid.g3,.pr-grid.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.pr-cta{flex-direction:column;align-items:flex-start}}
@media(max-width:620px){.pr-grid.g4,.pr-grid.g3,.pr-grid.g2{grid-template-columns:1fr}.pr-feat{grid-template-columns:1fr}.pr-dark{padding:32px 20px;border-radius:22px}.pr-cta{padding:28px 22px}}

/* УСПД: поток данных вместо списка */
.pr-flow{display:flex;align-items:stretch;gap:8px;margin-top:28px}
.pr-step{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:4px;padding:16px;border-radius:16px;background:#fff;font-size:13px;line-height:1.4;color:var(--muted)}
.pr-step b{font-size:15px;font-weight:500;color:var(--ink)}
.pr-step-ic{display:grid;place-items:center;width:38px;height:38px;margin-bottom:8px;border-radius:11px;background:var(--light);color:var(--ink)}
.pr-step-ic svg{width:22px;height:22px}
.pr-step.on{background:#121212;color:#a9a9a6}
.pr-step.on b{color:#fff}
.pr-step.on .pr-step-ic{background:var(--accent);color:#fff}
.pr-flow-ar{align-self:center;flex:none;color:#b5b5b0}
.pr-flow-ar svg{width:18px;height:18px;display:block}
@media(max-width:620px){.pr-flow{flex-direction:column}.pr-flow-ar{transform:rotate(90deg)}}
.pr-grid.g2x{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:620px){.pr-grid.g2x{grid-template-columns:1fr}}

/* Программы: подробные блоки */
.pr-sw-sec{background:#fff}
.pr-app{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:center;padding:56px 0;border-top:1px solid #ecebe7}
.pr-app:first-of-type{border-top:0;padding-top:16px}
.pr-app.rev .pr-app-txt{order:2}
.pr-app h3{margin:0;font-size:clamp(28px,3vw,40px);font-weight:600;letter-spacing:-.01em}
.pr-app .promise{margin:10px 0 12px;font-size:19px;color:var(--ink)}
.pr-app-txt>p:not(.promise){color:var(--muted);margin:0}
.pr-checks{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:10px}
.pr-checks li{display:flex;align-items:center;gap:10px;font-size:16px}
.pr-checks svg{width:18px;height:18px;flex:none;color:var(--accent)}
.pr-app-shot{position:relative;display:flex;justify-content:center}
.pr-browser{position:relative;width:100%;border-radius:16px;background:#fff;border:1px solid #e3e1da;box-shadow:0 30px 60px -40px rgba(0,0,0,.35);overflow:hidden}
.pr-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:#f1f0ec;border-bottom:1px solid #e3e1da}
.pr-bar span{width:10px;height:10px;border-radius:50%;background:#d6d4cd}
.pr-bar em{margin-left:12px;padding:3px 12px;border-radius:6px;background:#fff;font-style:normal;font-size:12px;color:#9a9a96}
.pr-screen{aspect-ratio:16/10;padding:18px;display:flex;gap:14px;background:#fafaf8}
.pr-ph{position:absolute;left:50%;top:55%;transform:translate(-50%,-50%);padding:8px 14px;border-radius:999px;background:rgba(18,18,18,.82);color:#fff;font-size:13px;white-space:nowrap}
.sk-dash{flex-direction:column}
.sk-row{display:flex;gap:10px}.sk-kpi{flex:1;height:56px;border-radius:10px;background:#fff;border:1px solid #ecebe7}
.sk-chart{flex:1;display:flex;align-items:flex-end;gap:10px;padding:14px;border-radius:10px;background:#fff;border:1px solid #ecebe7}
.sk-chart span{flex:1;border-radius:4px 4px 0 0;background:#e9e8e3}.sk-chart span:nth-child(6){background:var(--accent)}
.sk-side{width:22%;border-radius:10px;background:#efeee9}
.sk-main{flex:1;display:flex;flex-direction:column;gap:8px}
.sk-tr{display:flex;gap:8px;padding:10px;border-radius:8px;background:#fff;border:1px solid #ecebe7}
.sk-tr i{height:8px;border-radius:4px;background:#e4e3de;flex:1}.sk-tr i:first-child{flex:2}
.sk-plan{width:42%;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;align-content:start;padding:10px;border-radius:10px;background:#fff;border:1px solid #ecebe7}
.sk-plan span{aspect-ratio:1.4;border-radius:5px;background:#e6f2e9}.sk-plan span.al{background:#ffe1d1;box-shadow:inset 0 0 0 1.5px var(--accent)}
.pr-phone{position:relative;width:min(260px,70%);aspect-ratio:9/18.5;border-radius:38px;background:#121212;padding:12px;box-shadow:0 30px 60px -36px rgba(0,0,0,.5)}
.pr-notch{position:absolute;left:50%;top:18px;transform:translateX(-50%);width:70px;height:18px;border-radius:12px;background:#000;z-index:1}
.pr-pscreen{height:100%;border-radius:28px;background:#fafaf8;padding:44px 14px 14px;display:flex;flex-direction:column;gap:10px}
.sk-ttl{display:block;width:55%;height:12px;border-radius:6px;background:#dcdbd5}
.sk-card{height:90px;border-radius:14px;background:#121212}.sk-card.s2{height:60px;background:#fff;border:1px solid #ecebe7}
@media(max-width:1020px){.pr-app{grid-template-columns:minmax(0,1fr);gap:28px;padding:40px 0}.pr-app.rev .pr-app-txt{order:0}}
.pr-screen{min-height:240px}
.sk-plan{flex:0 0 42%;width:auto}
.sk-plan span{aspect-ratio:auto;height:30px}
.sk-main{min-width:0}

/* Умный учёт: живые скриншоты */
.pr-live{display:flex;flex-direction:column;align-items:center;gap:18px}
.pr-phone-live{width:min(280px,72vw);aspect-ratio:auto;padding:10px;border-radius:44px}
.pr-shots{position:relative;aspect-ratio:320/680;border-radius:34px;overflow:hidden;background:#fff}
.pr-shots img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s}
.pr-shots img.on{opacity:1}
.pr-dots{display:flex;gap:8px}
.pr-dots button{width:8px;height:8px;padding:0;border:0;border-radius:4px;background:#d6d4cd;cursor:pointer;transition:width .3s,background .3s}
.pr-dots button.on{width:24px;background:var(--accent)}

/* Умный учёт: промо-панель с iPhone */
.pr-promo{position:relative;width:100%;max-width:560px;margin:0 auto;padding:44px 28px 0;border-radius:28px;overflow:hidden;background:radial-gradient(120% 80% at 80% 100%,#3a3a3d 0,#2a2a2c 45%,#222224 100%);display:flex;flex-direction:column;align-items:center;gap:18px}
.pr-caps{position:relative;width:100%;min-height:104px;text-align:center}
.pr-cap{position:absolute;inset:0;opacity:0;transform:translateY(8px);transition:opacity .5s,transform .5s}
.pr-cap.on{opacity:1;transform:none}
.pr-cap h4{margin:0 0 8px;color:#fff;font-size:clamp(22px,2.4vw,30px);font-weight:700;line-height:1.1;letter-spacing:-.01em}
.pr-cap p{margin:0 auto;max-width:36ch;color:#c9c9c6;font-size:15px;line-height:1.45}
.pr-promo .pr-dots button{background:#55555a}.pr-promo .pr-dots button.on{background:var(--accent)}
.iphone{position:relative;width:min(290px,70vw);margin-top:6px;margin-bottom:-90px;padding:4px;border-radius:54px;background:linear-gradient(150deg,#8a8a8f 0%,#3a3a3e 12%,#1a1a1c 40%,#2c2c2f 70%,#6b6b70 100%);box-shadow:0 50px 80px -30px rgba(0,0,0,.75),inset 0 0 0 1px rgba(255,255,255,.25)}
.ibezel{background:#050505;border-radius:50px;padding:9px}
.iscreen{position:relative;border-radius:42px;overflow:hidden;background:#fff}
.iscreen .pr-shots{border-radius:0}
.island{position:absolute;left:50%;top:9px;transform:translateX(-50%);width:31%;height:26px;border-radius:16px;background:#000;z-index:2}
.island::after{content:"";position:absolute;right:14%;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:radial-gradient(circle at 40% 40%,#2a3550,#05070c 70%)}
.ib{position:absolute;width:4px;border-radius:2px;background:linear-gradient(90deg,#2a2a2d,#7a7a7f,#2a2a2d)}
.ib1{left:-3px;top:17%;height:5%}.ib2{left:-3px;top:25%;height:9%}.ib3{left:-3px;top:36%;height:9%}.ib4{right:-3px;top:28%;height:14%}
@media(max-width:620px){.pr-promo{padding:32px 18px 0;border-radius:22px}.pr-caps{min-height:118px}.iphone{margin-bottom:-70px}}

/* Экраны приложения, нарисованные кодом */
.iscreen{container-type:inline-size;aspect-ratio:320/692}
.iscreen .pr-shots{position:absolute;inset:0;aspect-ratio:auto}
.app-scr{position:absolute;inset:0;display:flex;flex-direction:column;background:#fff;color:#1b1b1b;font-family:var(--font);font-size:4.4cqw;opacity:0;transition:opacity .6s}
.app-scr.on{opacity:1}
.as-st{display:flex;justify-content:space-between;align-items:center;padding:4.6cqw 7.5cqw 0 9cqw;height:11.5cqw}
.as-st b{font-weight:600;font-size:1.05em}
.as-st span{display:flex;align-items:center;gap:1.4cqw}
.as-wifi{width:4.6cqw;height:4.6cqw}
.as-bat{position:relative;display:block;width:6.6cqw;height:3.2cqw;border:1px solid #1b1b1b;border-radius:1cqw;padding:.45cqw}
.as-bat i{display:block;height:100%;width:80%;background:#1b1b1b;border-radius:.4cqw}
.as-hd{display:grid;grid-template-columns:8cqw 1fr 8cqw;align-items:center;padding:5cqw 5cqw 3cqw;text-align:center;font-size:1.08em;font-weight:500}
.as-back{width:5.6cqw;height:5.6cqw}
.as-body{flex:1;display:flex;flex-direction:column;gap:2.4cqw;padding:0 4.5cqw;overflow:hidden}
.as-user{display:flex;align-items:center;gap:3cqw;padding:3.6cqw 4cqw;border-radius:3cqw;background:#2f2f31;color:#fff;margin-bottom:1cqw}
.as-user div{flex:1;display:flex;flex-direction:column;gap:.6cqw}
.as-user small{font-size:.72em;color:#cfcfcf}
.as-user b{font-weight:500;font-size:.98em;line-height:1.25}
.as-uic{width:7.5cqw;height:7.5cqw;flex:none}.as-out{width:5.4cqw;height:5.4cqw;flex:none}
.as-row{display:flex;align-items:center;gap:3cqw;padding:3.4cqw 3.6cqw;border-radius:2.6cqw;background:#ececec;font-size:.86em}
.as-row span{flex:1}
.as-row em{font-style:normal;color:#8d8d8d;font-size:.95em}
.as-sm{padding:3cqw 3.6cqw;font-size:.8em}.as-sm em{color:#1b1b1b}
.as-ric{width:5.4cqw;height:5.4cqw;flex:none}
.as-or{color:#ff6b00}
.as-chev{width:4.6cqw;height:4.6cqw;color:#555;flex:none}
.as-tabs{display:flex;gap:6cqw;padding:0 0 2cqw;border-bottom:1px solid #e3e3e3;font-size:.78em;margin-bottom:1.2cqw}
.as-tabs span{position:relative;padding-bottom:1.4cqw}
.as-tabs span.on{font-weight:500}
.as-tabs span.on::after{content:"";position:absolute;left:0;right:0;bottom:-2.2cqw;height:2px;background:#1b1b1b}
.as-pill{align-self:flex-start;display:inline-flex;align-items:center;gap:1.4cqw;margin-top:1.5cqw;padding:1.4cqw 3.4cqw;border:1.5px solid #ff6b00;border-radius:999px;font-size:.78em}
.as-dd{width:3.6cqw;height:3.6cqw}
.as-h{margin:2cqw 0 1cqw;font-size:1.02em;line-height:1.25}
.as-chart{position:relative;margin-left:10cqw;height:52cqw;border:1px solid #1b1b1b;border-radius:3cqw;overflow:visible}
.as-chart svg{position:absolute;inset:0;width:100%;height:100%;border-radius:3cqw}
.as-ylab{position:absolute;left:-10cqw;top:0;bottom:0;width:8.5cqw}
.as-ylab span{position:absolute;right:0;transform:translateY(50%);font-size:.66em;color:#555}
.as-btn{margin-top:auto;margin-bottom:3cqw;padding:3.4cqw;border-radius:2.6cqw;background:#2f2f31;color:#fff;text-align:center;font-size:.82em}
.as-tab{display:flex;justify-content:space-around;align-items:center;padding:3.6cqw 6cqw 2cqw;border-top-left-radius:6cqw;border-top-right-radius:6cqw;box-shadow:0 -2px 10px rgba(0,0,0,.05)}
.as-tab svg{width:6.6cqw;height:6.6cqw;color:#c9c9c9}
.as-tab svg.on{color:#ff6b00}
.as-home{display:block;width:36%;height:1.3cqw;margin:2.2cqw auto 2.4cqw;border-radius:1cqw;background:#1b1b1b}

/* Продукты: фон «печатная плата» */
.pr-hero{position:relative;overflow:hidden}
.pr-hero .w{position:relative;z-index:1}
.pcbbg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,transparent 0,transparent 40%,#000 66%);mask-image:linear-gradient(90deg,transparent 0,transparent 40%,#000 66%)}
@media(max-width:760px){.pcbbg{opacity:.4;-webkit-mask-image:none;mask-image:none}}

/* Магистральные: широкие карточки + полоса-ссылка */
.pr-grid.g2w{grid-template-columns:repeat(2,minmax(0,1fr))}
.pr-wide{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-template-rows:auto auto 1fr auto;column-gap:18px;align-items:start;padding:16px}
.pr-wide .pr-fig{grid-row:1/5;margin:0;height:100%;display:flex;align-items:center}
.pr-wide h3{padding:10px 0 0}.pr-wide p{padding:0}.pr-wide .pr-link{margin:10px 0 8px}
.pr-band{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:16px;padding:22px 26px;border-radius:22px;background:#121212;color:#fff;text-decoration:none;transition:background .2s}
.pr-band:hover{background:#1d1d1f}
.pr-band span{display:flex;flex-direction:column;gap:4px;font-size:14px;color:#a9a9a6}
.pr-band b{font-size:19px;font-weight:500;color:#fff}
.pr-band i{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:50%;background:var(--accent);color:#fff;transition:transform .2s}
.pr-band:hover i{transform:translateX(4px)}
.pr-band i svg{width:22px;height:22px}
@media(max-width:1020px){.pr-grid.g2w{grid-template-columns:1fr}}
@media(max-width:620px){.pr-wide{grid-template-columns:1fr}.pr-wide .pr-fig{grid-row:auto;margin-bottom:6px}.pr-wide h3,.pr-wide p,.pr-wide .pr-link{padding-left:8px;margin-left:8px}.pr-band{padding:18px 20px}}

/* Умный учёт: подробнее */
.sm-more{padding:8px 0 56px}
.sm-title{margin:0 0 20px;font-size:24px;font-weight:600}
.sm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.sm-f{display:flex;flex-direction:column;gap:6px;padding:22px;border-radius:20px;background:var(--light);transition:transform .25s}
.sm-f:hover{transform:translateY(-3px)}
.sm-ic{display:grid;place-items:center;width:42px;height:42px;margin-bottom:10px;border-radius:12px;background:#fff;color:var(--accent)}
.sm-ic svg{width:22px;height:22px}
.sm-f h4{margin:0;font-size:17px;font-weight:500}
.sm-f p{margin:0;font-size:14.5px;line-height:1.5;color:var(--muted)}
.sm-start{margin-top:14px;padding:26px 28px;border-radius:20px;background:#121212;color:#fff}
.sm-start h4{margin:0 0 18px;font-size:18px;font-weight:500}
.sm-start ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;counter-reset:sm}
.sm-start li{position:relative;display:flex;flex-direction:column;gap:4px;padding-left:44px;counter-increment:sm;font-size:14px;color:#a9a9a6;line-height:1.45}
.sm-start li::before{content:counter(sm);position:absolute;left:0;top:-2px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--accent);color:#fff;font-weight:600;font-size:14px}
.sm-start b{color:#fff;font-weight:500;font-size:15.5px}
@media(max-width:1020px){.sm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sm-start ol{grid-template-columns:1fr}}
@media(max-width:620px){.sm-grid{grid-template-columns:1fr}.sm-start{padding:22px 20px}}

/* Главная: крупная картинка первого экрана */
@media(min-width:901px){
  .hero:has(.hero-img) .w{min-height:680px;grid-template-columns:minmax(0,1fr) minmax(0,.9fr)}
  .hero-img{position:absolute;right:0;bottom:0;width:min(58vw,980px);margin:0;z-index:0}
  .hero-text .btn.ghost-dark{background:rgba(10,10,10,.55);backdrop-filter:blur(4px)}
  .hero-img img{display:block}
}


.partner-art{display:block;width:100%;height:auto;border-radius:28px}
@media(prefers-reduced-motion:reduce){.partner-art animate,.partner-art animateTransform{display:none}}

/* Страница «Умный учёт» */
.uu-hero{position:relative;overflow:hidden}
.uu-hero .w{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:40px;align-items:center;padding-block:72px 0}
.uu-txt{display:flex;flex-direction:column;gap:22px;padding-bottom:72px}
.uu-txt h1{margin:0}.uu-txt .lead{max-width:36ch}
.uu-phone{position:relative;align-self:end;padding-top:8px}
.uu-phone::before{content:"";position:absolute;left:50%;top:40%;width:120%;aspect-ratio:1;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(255,107,0,.22),transparent 60%);pointer-events:none}
.uu-phone .iphone{width:min(320px,72vw);margin:0 auto -110px}
.uu-phone .pr-dots{position:absolute;right:0;top:50%;flex-direction:column;transform:translateY(-50%)}
.uu-phone .pr-dots button{background:#55555a}.uu-phone .pr-dots button.on{width:8px;height:24px;background:var(--accent)}
.uu-desc{background:#fff}
.uu-admin{background:var(--light)}
.uu-admin-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:48px;align-items:center}
.uu-admin-txt h2{margin:12px 0 14px}.uu-admin-txt>p{color:var(--muted);margin:0}
.ad-browser{container-type:inline-size}
.ad-app{display:grid;grid-template-columns:24% 1fr;min-height:30cqw;font-family:var(--font);font-size:1.45cqw;color:#1b1b1b;background:#fafaf8}
.ad-side{display:flex;flex-direction:column;gap:.4em;padding:1.6em 1em;background:#121212;color:#bdbdba}
.ad-logo{color:#fff;font-size:1.25em;margin-bottom:1em;display:flex;flex-direction:column}.ad-logo small{color:#ff6b00;font-weight:500;font-size:.62em}
.ad-nav{display:flex;align-items:center;gap:.7em;padding:.6em .7em;border-radius:.6em}
.ad-nav svg{width:1.3em;height:1.3em}
.ad-nav.on{background:#2a2a2d;color:#fff}
.ad-main{padding:1.6em;display:flex;flex-direction:column;gap:1.2em}
.ad-top{display:flex;justify-content:space-between;align-items:center}
.ad-top b{font-size:1.2em;font-weight:600}
.ad-btn{padding:.55em 1em;border-radius:.6em;background:#ff6b00;color:#fff;font-size:.9em}
.ad-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:.8em}
.ad-kpi{padding:.8em 1em;border-radius:.7em;background:#fff;border:1px solid #ecebe7;display:flex;flex-direction:column;gap:.2em}
.ad-kpi small{font-size:.78em;color:#8d8d8a}.ad-kpi b{font-size:1.45em;font-weight:600}
.ad-card{padding:1em 1.1em;border-radius:.7em;background:#fff;border:1px solid #ecebe7}
.ad-ct{font-weight:500;margin-bottom:.6em}
.ad-card table{width:100%;border-collapse:collapse;font-size:.88em}
.ad-card th{text-align:left;font-weight:500;color:#8d8d8a;padding:.4em .3em;border-bottom:1px solid #ecebe7}
.ad-card td{padding:.5em .3em;border-bottom:1px solid #f2f1ed}
.ad-st{font-style:normal;padding:.15em .6em;border-radius:1em;font-size:.9em;background:#e6f4ea;color:#1e7a3c}
.ad-st.warn{background:#ffe8dc;color:#c24d00}
@media(max-width:900px){.uu-hero .w{grid-template-columns:minmax(0,1fr)}.uu-txt{padding-bottom:0}.uu-phone .iphone{margin-bottom:-90px}.uu-phone .pr-dots{right:4px}.uu-admin-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:620px){.ad-app{font-size:2.3cqw}.ad-kpis{grid-template-columns:repeat(2,1fr)}.ad-card th:nth-child(4),.ad-card td:nth-child(4){display:none}}

/* ===== Варианты страницы «Умный учёт» ===== */
.var-bar{background:#ff6b00;color:#fff;font-size:14px}
.var-bar .w{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-block:10px}
.var-bar span{margin-right:6px;opacity:.85}
.var-bar a{color:#fff;text-decoration:none;padding:5px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.5)}
.var-bar a.on{background:#fff;color:#ff6b00;border-color:#fff;font-weight:500}
.v-white{background:#fff}.v-light{background:var(--light)}
/* V1 сцена */
.v1-hero{position:relative;overflow:hidden;text-align:center}
.v1-hero .w{display:block;padding-block:72px 0}
.v1-top{display:flex;flex-direction:column;align-items:center;gap:20px}
.v1-top h1{margin:0;max-width:16ch}.v1-top .lead{max-width:52ch;margin:0}
.v1-stage{position:relative;max-width:1000px;margin:48px auto 0;height:560px}
.v1-stage::before{content:"";position:absolute;left:50%;top:55%;width:720px;height:720px;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(255,107,0,.22),transparent 60%)}
.v1-phone{position:absolute;left:50%;top:0;transform:translateX(-50%)}
.v1-phone .iphone{width:300px;margin:0}
.v1-phone .pr-dots{position:absolute;left:50%;bottom:-30px;transform:translateX(-50%)}
.v1-call{position:absolute;width:250px;display:grid;grid-template-columns:44px 1fr;column-gap:12px;text-align:left;padding:14px 16px;border-radius:18px;background:rgba(32,32,35,.85);border:1px solid #333337;backdrop-filter:blur(8px)}
.v1-call span{grid-row:1/3;display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#ff6b00;color:#fff}
.v1-call span svg{width:22px;height:22px}
.v1-call b{color:#fff;font-weight:500;font-size:15px;align-self:end}.v1-call small{color:#a9a9a6;font-size:13px}
.v1-call.c0{left:2%;top:70px}.v1-call.c1{left:6%;top:260px}.v1-call.c2{right:2%;top:110px}.v1-call.c3{right:6%;top:300px}
.v1-call::after{content:"";position:absolute;top:50%;width:70px;border-top:1px dashed rgba(255,107,0,.6)}
.v1-call.c0::after,.v1-call.c1::after{left:100%}.v1-call.c2::after,.v1-call.c3::after{right:100%}
/* V2 история */
.v2-hero .lead{max-width:48ch}
.v2-story{background:#fff}
.v2-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px}
.v2-sticky{position:sticky;top:90px;height:calc(100vh - 120px);min-height:560px;display:flex;align-items:center;justify-content:center}
.v2-sticky::before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(255,107,0,.16),transparent 62%)}
.v2-phone .iphone{width:min(300px,34vh*.9);margin:0}
.v2-step{min-height:72vh;display:flex;flex-direction:column;justify-content:center;gap:10px;opacity:.28;transition:opacity .4s}
.v2-step.on{opacity:1}
.v2-n{font-size:15px;font-weight:600;color:var(--accent)}
.v2-step h3{margin:0;font-size:clamp(28px,3.2vw,44px);font-weight:600;letter-spacing:-.01em}
.v2-step p{margin:0;max-width:40ch;font-size:18px;color:var(--muted)}
/* V3 витрина */
.v3-hero{position:relative;overflow:hidden;background:radial-gradient(90% 120% at 85% 30%,#ffd8bf 0,#fff1e8 35%,#faf8f5 70%)}
.v3-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;padding-block:72px 40px}
.v3-txt{display:flex;flex-direction:column;gap:22px}
.v3-txt h1{margin:0;color:var(--ink)}.v3-txt .lead{color:var(--muted);max-width:40ch;margin:0}
.v3-eb{color:var(--accent)!important}
.v3-stage{position:relative;height:620px}
.v3-phone{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) perspective(1400px) rotateY(-16deg) rotateX(6deg) rotateZ(2deg)}
.v3-phone .iphone{width:280px;margin:0}
.v3-phone .pr-dots{position:absolute;left:50%;bottom:-36px;transform:translateX(-50%)}
.v3-phone .pr-dots button{background:#e2c7b4}
.v3-float{position:absolute;display:flex;align-items:center;gap:10px;padding:12px 16px 12px 12px;border-radius:16px;background:rgba(255,255,255,.9);box-shadow:0 20px 40px -20px rgba(80,40,10,.35);backdrop-filter:blur(8px);animation:v3f 6s ease-in-out infinite;z-index:2}
.v3-float small{display:block;font-size:12px;color:#8d8d8a}.v3-float b{font-size:15px;font-weight:600}
.v3-ic{display:grid;place-items:center;width:36px;height:36px;border-radius:10px}.v3-ic svg{width:20px;height:20px}
.v3-float.f1{left:0;top:90px}.v3-float.f2{right:0;top:160px;animation-delay:-1.5s}.v3-float.f3{left:4%;bottom:110px;flex-direction:column;align-items:flex-start;animation-delay:-3s}.v3-float.f4{right:4%;bottom:60px;animation-delay:-4.5s}
.v3-spark{width:120px;height:40px}
@keyframes v3f{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
/* Админ-панель */
.adm-sec{background:#121212;color:#fff;padding-block:clamp(72px,9vw,120px)}
.adm-sec h2{color:#fff;margin:12px 0 0}.adm-sec .adv-head p{color:#a9a9a6}
.adm-wrap{display:grid;grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr);gap:32px;align-items:start}
.adm-tabs{display:flex;flex-direction:column;gap:8px}
.adm-tab{all:unset;cursor:pointer;display:flex;gap:14px;align-items:flex-start;padding:16px;border-radius:16px;border:1px solid transparent;transition:background .2s,border-color .2s}
.adm-tab:hover{background:#1a1a1c}
.adm-tab.on{background:#1d1d20;border-color:#333337}
.adm-tab:focus-visible{outline:2px solid var(--accent)}
.adm-ti{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:11px;background:#262629;color:#bdbdba}
.adm-tab.on .adm-ti{background:var(--accent);color:#fff}
.adm-ti svg{width:20px;height:20px}
.adm-tab b{display:block;font-weight:500;font-size:16px;color:#fff;margin-bottom:4px}
.adm-tab small{display:block;font-size:13.5px;line-height:1.45;color:#8d8d8a}
.adm-tab:not(.on) small{display:none}
.adm-shot .pr-browser{border-color:#2e2e2e}
.adm-screens{position:relative}
.adm-scr{display:none}.adm-scr.on{display:grid;animation:admIn .35s ease}
@keyframes admIn{from{opacity:0}to{opacity:1}}
.ad-seg{display:flex;gap:.3em;padding:.25em;border-radius:.6em;background:#efeee9;font-size:.85em}.ad-seg i{font-style:normal;padding:.3em .7em;border-radius:.45em;color:#6b6b68}.ad-seg i.on{background:#fff;color:#1b1b1b}
.ad-list{display:flex;flex-direction:column}
.ad-li{display:grid;grid-template-columns:1fr auto auto;column-gap:1em;align-items:center;padding:.7em .2em;border-bottom:1px solid #f2f1ed}
.ad-li b{font-weight:500;font-size:.95em}.ad-li span{grid-column:1;color:#8d8d8a;font-size:.85em}.ad-li em{grid-row:1/3;grid-column:2;font-style:normal;color:#8d8d8a;font-size:.85em}.ad-li .ad-st{grid-row:1/3;grid-column:3}
.ad-st.new{background:#fff1e8;color:#c24d00}.ad-st.work{background:#eef0ff;color:#3d4bc4}
.ad-two{display:grid;grid-template-columns:1.1fr 1fr;gap:.9em}
.ad-form{display:flex;flex-direction:column;gap:.4em}.ad-form small{color:#8d8d8a;font-size:.8em;margin-top:.3em}
.ad-in{padding:.6em .8em;border-radius:.5em;border:1px solid #e3e1da;background:#fafaf8;font-size:.9em}.ad-ta{min-height:5em}
.ad-form .ad-btn{align-self:flex-start;margin-top:.6em}
.adm-feats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:40px;padding-top:32px;border-top:1px solid #2a2a2a}
.adm-f{display:flex;flex-direction:column;gap:6px;color:#a9a9a6;font-size:14px}
.adm-f svg{width:26px;height:26px;color:var(--accent);margin-bottom:6px}.adm-f b{color:#fff;font-weight:500;font-size:16px}
@media(max-width:1020px){.adm-wrap{grid-template-columns:minmax(0,1fr)}.adm-tabs{flex-direction:row;overflow-x:auto}.adm-tab{flex:none}.adm-tab small{display:none!important}.adm-feats{grid-template-columns:repeat(2,minmax(0,1fr))}
 .v1-stage{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:32px}.v1-phone{position:relative;left:auto;transform:none;grid-column:1/-1;justify-self:center;margin-bottom:40px}.v1-call{position:relative;inset:auto!important;width:auto}.v1-call::after{display:none}
 .v2-grid{grid-template-columns:minmax(0,1fr);gap:0}.v2-sticky{top:70px;height:auto;min-height:0;padding:20px 0;z-index:1;background:#fff}.v2-phone .iphone{width:190px}.v2-step{min-height:60vh}
 .v3-grid{grid-template-columns:minmax(0,1fr)}.v3-stage{height:600px}}
@media(max-width:620px){.v1-stage{grid-template-columns:1fr}.adm-tab{padding:12px}.adm-feats{grid-template-columns:1fr}.ad-two{grid-template-columns:1fr}.v3-float.f1,.v3-float.f3{left:0}.v3-float.f2,.v3-float.f4{right:0}.v3-phone .iphone{width:240px}.v2-step h3{font-size:26px}}
@media(prefers-reduced-motion:reduce){.v3-float{animation:none}}
.v2-story{overflow:clip}
.v2-sticky::before{max-width:100vw;max-height:100vw}
.v1-hero .v1-top,.v1-hero .v1-top h1,.v1-hero .v1-top .lead{text-align:center}
.v1-hero .w{align-items:center}
/* v2m-fix */@media(max-width:620px){.v2-phone .iphone{width:150px}.v2-sticky{padding:12px 0}.v2-step{min-height:85vh;justify-content:flex-end;padding-bottom:12vh}}
/* pr-cta-fix */
.pr-cta>div:first-child{flex:1;min-width:0;max-width:640px}
.pr-cta h2{font-size:clamp(26px,2.8vw,38px);line-height:1.15;letter-spacing:-.01em;text-wrap:balance}
.pr-cta p{max-width:52ch}
.pr-cta .actions{flex:none;flex-wrap:nowrap}
@media(max-width:1020px){.pr-cta .actions{flex-wrap:wrap}}
.v3-txt h1{font-size:clamp(44px,5.6vw,80px);line-height:1;letter-spacing:-.02em}
.v3-promise{margin:-6px 0 0;font-size:clamp(22px,2.2vw,30px);line-height:1.2;font-weight:500;color:var(--ink);text-wrap:balance}

/* Страница УСПД SA16 */
.up-stage{display:flex;align-items:center;justify-content:center}
.up-stage .uspd-3d{width:min(440px,90%);max-width:440px}
.up-hero .v3-float.f1{left:0;top:70px}.up-hero .v3-float.f2{right:0;top:220px}.up-hero .v3-float.f4{left:6%;bottom:60px;right:auto}
.up-flow{display:flex;align-items:stretch;gap:10px}
.up-step{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:6px;padding:22px;border-radius:20px;background:var(--light)}
.up-step span{display:grid;place-items:center;width:46px;height:46px;margin-bottom:12px;border-radius:13px;background:#fff;color:var(--ink)}
.up-step span svg{width:24px;height:24px}
.up-step b{font-weight:500;font-size:17px}.up-step small{font-size:14px;color:var(--muted);line-height:1.45}
.up-step.on{background:#121212;color:#fff}.up-step.on small{color:#a9a9a6}.up-step.on span{background:var(--accent);color:#fff}
.up-arr{align-self:center;flex:none;color:#b5b5b0}.up-arr svg{width:20px;height:20px;display:block}
.up-specs{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;align-items:start}
.up-specs h2{margin:0 0 10px}.up-note{color:var(--muted);margin:0}
.up-docs{display:flex;flex-direction:column;gap:8px;margin-top:28px}
.up-docs a{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:14px;background:var(--light);color:var(--ink);text-decoration:none;font-size:15px;transition:background .15s}
.up-docs a:hover{background:#ecebe7}.up-docs svg{width:20px;height:20px;color:var(--accent)}
.up-table{width:100%;border-collapse:collapse;font-size:16px}
.up-table th{text-align:left;font-weight:400;color:var(--muted);padding:16px 16px 16px 0;border-bottom:1px solid #ecebe7;width:55%}
.up-table td{padding:16px 0;border-bottom:1px solid #ecebe7;color:#b0aea8}
@media(max-width:1020px){.up-flow{flex-wrap:wrap}.up-step{flex-basis:calc(50% - 10px)}.up-arr{display:none}.up-specs{grid-template-columns:minmax(0,1fr)}}
@media(max-width:620px){.up-step{flex-basis:100%}.up-stage .uspd-3d{width:78%}.up-table{font-size:14.5px}}

.uspd-3d.static canvas{pointer-events:none;cursor:default}.uspd-3d.static .hint{display:none}

.case-video video{width:100%;height:100%;display:block;object-fit:cover;background:#111}

/* gallery: photos without cropping */
.gallery:has(.g-row){display:flex;flex-direction:column;gap:12px}
.gallery .g-row{display:flex;gap:12px;align-items:flex-start}
.gallery .g-row .ph{flex:1 1 0;grid-row:auto;grid-column:auto}
.gallery .g-row .ph img{height:auto;display:block;object-fit:fill}
@media(max-width:620px){.gallery .g-row{gap:8px}.gallery:has(.g-row){gap:8px}.gallery .g-row .ph{border-radius:14px}}
nav.case-nav{position:static;background:none;border-top:0;padding:0}@media(max-width:620px){nav.case-nav{grid-template-columns:1fr 1fr;gap:10px}}

/* АРМ SA16: real screenshots */
.pr-app.pr-app-wide{grid-template-columns:minmax(0,1fr);gap:32px}
.pr-app-wide .pr-app-txt{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:56px;align-items:start}
.pr-app-wide .pr-app-txt>*{grid-column:1}
.pr-app-wide .pr-app-txt .pr-checks{grid-column:2;grid-row:1/6;margin-top:0;align-self:end}
.arm-shot{flex-direction:column;gap:16px}
.arm-tabs{display:flex;gap:6px;flex-wrap:wrap}
.arm-tab{border:1px solid #e3e1da;background:#fff;color:var(--ink);font:inherit;font-size:14px;padding:8px 14px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.arm-tab:hover{border-color:var(--ink)}
.arm-tab.on{background:var(--ink);border-color:var(--ink);color:#fff}
.arm-screens{position:relative;aspect-ratio:1600/884;background:#f0f2f5}
.arm-scr{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;opacity:0;transition:opacity .35s}
.arm-scr.on{opacity:1}
.arm-caps{min-height:24px}
.arm-cap{display:none;margin:0;color:var(--muted);font-size:15px}
.arm-cap.on{display:block}
@media(max-width:1020px){.pr-app-wide .pr-app-txt{grid-template-columns:minmax(0,1fr)}.pr-app-wide .pr-app-txt .pr-checks{grid-column:1;grid-row:auto;margin-top:16px}}
@media(max-width:620px){.arm-tabs{flex-wrap:nowrap;overflow-x:auto;margin-inline:-16px;padding:0 16px 4px;scrollbar-width:none}.arm-tabs::-webkit-scrollbar{display:none}.arm-tab{flex:none;font-size:13px;padding:7px 12px}}
@media(prefers-reduced-motion:reduce){.arm-scr{transition:none}}
.pr-app-wide .pr-app-txt .pr-tag{justify-self:start}
.arm-screens{cursor:zoom-in}
.arm-lb{position:fixed;inset:0;z-index:100;background:rgba(10,10,10,.88);display:flex;align-items:center;justify-content:center;padding:16px;cursor:zoom-out}
.arm-lb img{max-width:100%;max-height:100%;border-radius:10px;box-shadow:0 30px 80px rgba(0,0,0,.5)}

/* ===== Пособие по монтажу (montazh.html) ===== */
.mz-hero{background:var(--dark);color:#fff;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:32px 32px}
.mz-hero .w{padding-block:56px 48px}
.mz-back{color:#bdbdb8;text-decoration:none;font-size:15px}
.mz-back:hover{color:#fff}
.mz-hero .eyebrow{color:var(--accent);margin:28px 0 8px}
.mz-hero h1{margin:0;font-size:clamp(34px,5vw,60px);line-height:1.05;font-weight:600;letter-spacing:-.02em;max-width:16ch}
.mz-hero .lead{color:#bdbdb8;max-width:60ch;margin:18px 0 0}
.mz-progress{margin-top:32px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;max-width:640px}
.mz-bar{flex:1 1 240px;height:8px;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden}
.mz-bar i{display:block;height:100%;background:var(--accent);border-radius:99px;transition:width .35s}
.mz-progress span{font-size:15px;color:#d8d8d4}.mz-progress b{color:#fff}
.mz-reset{background:none;border:1px solid rgba(255,255,255,.25);color:#d8d8d4;border-radius:99px;padding:6px 14px;font:inherit;font-size:14px;cursor:pointer}
.mz-reset:hover{border-color:#fff;color:#fff}
.mz-sec{padding-block:clamp(48px,6vw,80px)}
.mz-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:56px;align-items:start}
.mz-steps{display:flex;flex-direction:column;gap:20px}
.mz-step{background:var(--card);border-radius:24px;padding:32px;border:1.5px solid transparent;transition:border-color .3s;scroll-margin-top:96px}
.mz-step.on{border-color:var(--ink)}
.mz-step-head{display:flex;align-items:center;gap:12px}
.mz-n{font-size:14px;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}
.mz-tag{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}
.mz-step.complete .mz-n{color:#1e7a3c}
.mz-step h3{margin:10px 0 10px;font-size:clamp(22px,2.4vw,28px);font-weight:600;letter-spacing:-.01em}
.mz-step>p{margin:0;color:#555}
.mz-checks{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}
.mz-checks label{display:flex;align-items:flex-start;gap:12px;padding:8px 10px;margin-inline:-10px;border-radius:10px;cursor:pointer}
.mz-checks label:hover{background:#f5f4f0}
.mz-checks input{position:absolute;opacity:0;pointer-events:none}
.mz-box{flex:none;width:22px;height:22px;border-radius:7px;border:1.5px solid #c9c7c0;margin-top:1px;position:relative;transition:background .2s,border-color .2s}
.mz-checks input:checked+.mz-box{background:#1e7a3c;border-color:#1e7a3c}
.mz-checks input:checked+.mz-box::after{content:"";position:absolute;left:7px;top:3px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.mz-checks input:focus-visible+.mz-box{outline:2px solid var(--ink);outline-offset:2px}
.mz-checks input:checked~span:last-child{color:var(--muted);text-decoration:line-through;text-decoration-color:#c9c7c0}
.mz-tip{margin:18px 0 0;padding:14px 16px;border-radius:14px;background:#fbf6ef;color:#5a4a36;font-size:15px}
.mz-tip b{color:var(--ink)}
.mz-mats{margin-top:18px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.mz-mats small{width:100%;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:2px}
.mz-mats span{font-size:13px;padding:5px 10px;border-radius:99px;background:#f1f0ec}
.mz-side{position:relative;height:100%}
.mz-sticky{position:sticky;top:96px}
.mz-scheme{--mz-bg:#fff;background:#fff;border-radius:24px;padding:20px;color:var(--ink)}
.mz-svg{display:block;width:100%;height:auto}
.mz-svg .mz-t{font-size:9px;fill:currentColor;font-family:var(--font)}
.mz-svg .mz-tw{fill:var(--mz-bg);font-size:8px;font-weight:600}
.mz-l{color:#cfcdc6;transition:color .35s,opacity .35s}
.mz-l.past{color:var(--ink)}
.mz-l.cur{color:var(--accent)}
.mz-l[data-l="1"].cur,.mz-l[data-l="1"].past{color:#9a988f}
.mz-l[data-l="8"].cur{color:#1e7a3c}
.mz-l[data-l="2"].past{opacity:.28}
.mz-now{display:flex;gap:10px;align-items:baseline;margin:16px 4px 10px;font-size:15px;color:var(--muted)}
.mz-now em{font-style:normal;color:var(--ink);font-weight:500}
.mz-nav{display:grid;grid-template-columns:1fr 1fr;gap:4px}
.mz-nav a{display:flex;gap:8px;align-items:center;padding:7px 10px;border-radius:10px;text-decoration:none;color:var(--muted);font-size:14px;line-height:1.25}
.mz-nav a i{font-style:normal;font-size:12px;font-variant-numeric:tabular-nums}
.mz-nav a:hover{background:#fff;color:var(--ink)}
.mz-nav a.on{background:#fff;color:var(--ink)}
.mz-nav a.ok i{color:#1e7a3c}
.mz-light{background:#fff}
.mz-errs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:8px}
.mz-errs article{background:var(--light,#f5f5f3);border-radius:20px;padding:24px}
.mz-errs b{display:block;font-size:18px;font-weight:600;margin-bottom:8px}
.mz-errs p{margin:0;color:#555;font-size:15px}
@media(max-width:1020px){.mz-grid{grid-template-columns:minmax(0,1fr);gap:24px}.mz-side{order:-1;position:sticky;top:84px;z-index:5;height:auto}.mz-sticky{position:static;display:flex;align-items:center;gap:12px;padding:8px 14px 8px 8px;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-radius:16px;box-shadow:0 10px 30px -20px rgba(0,0,0,.4)}.mz-scheme{flex:none;width:64px;padding:4px;border-radius:10px}.mz-svg .mz-t{display:none}.mz-nav{display:none}.mz-now{margin:0;flex-direction:column;gap:2px;font-size:13px}.mz-now em{font-size:16px}.mz-errs{grid-template-columns:repeat(2,minmax(0,1fr))}.mz-step-scheme{display:block}}
@media(max-width:620px){.mz-step{padding:24px}.mz-errs{grid-template-columns:minmax(0,1fr)}.mz-hero .w{padding-block:40px 36px}}
@media(prefers-reduced-motion:reduce){.mz-l,.mz-bar i,.mz-step{transition:none}}

/* ===== Контакты (kontakty.html) ===== */
.kt-hero{background:var(--dark);color:#fff;background-image:radial-gradient(600px 300px at 85% 20%,rgba(255,107,0,.16),transparent 70%),linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:auto,32px 32px,32px 32px}
.kt-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center;padding-block:72px 64px}
.kt-hero .eyebrow{color:var(--accent);margin:0 0 10px}
.kt-hero h1{margin:0;font-size:clamp(38px,5vw,64px);line-height:1.04;font-weight:600;letter-spacing:-.02em;max-width:13ch}
.kt-hero .lead{color:#bdbdb8;max-width:48ch;margin:18px 0 0}
.kt-now{margin:28px 0 0;color:#bdbdb8;font-size:15px;display:flex;align-items:center;gap:10px}
.kt-now b{color:#fff;font-weight:600;font-variant-numeric:tabular-nums}
.kt-dot{width:8px;height:8px;border-radius:50%;background:#3fc06a;box-shadow:0 0 0 0 rgba(63,192,106,.6);animation:ktp 2s infinite}
@keyframes ktp{70%{box-shadow:0 0 0 10px rgba(63,192,106,0)}100%{box-shadow:0 0 0 0 rgba(63,192,106,0)}}
.kt-cards{display:flex;flex-direction:column;gap:12px}
.kt-big{display:flex;align-items:center;gap:16px;padding:18px 18px 18px 20px;border-radius:20px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);transition:background .2s,border-color .2s}
.kt-big:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2)}
.kt-big>div{flex:1;min-width:0}
.kt-big small{display:block;font-size:13px;color:#9a9a96}
.kt-ic{flex:none;width:48px;height:48px;border-radius:14px;background:rgba(255,107,0,.14);color:var(--accent);display:grid;place-items:center}
.kt-ic svg{width:24px;height:24px}
.kt-phone{color:#fff;text-decoration:none;font-size:clamp(24px,2.6vw,34px);font-weight:600;letter-spacing:-.01em;white-space:nowrap}
.kt-mail,.kt-addr{color:#fff;text-decoration:none;font-size:clamp(18px,1.8vw,22px);font-weight:500}
.kt-phone:hover,.kt-mail:hover{color:var(--accent)}
.kt-copy{flex:none;width:44px;height:44px;border-radius:12px;border:1px solid rgba(255,255,255,.18);background:none;color:#d8d8d4;display:grid;place-items:center;cursor:pointer}
.kt-copy svg{width:20px;height:20px}
.kt-copy:hover{border-color:#fff;color:#fff}
.kt-sec{padding-block:clamp(56px,7vw,96px)}
.kt-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:40px;align-items:start;margin-top:8px}
.kt-sec .kt-form{display:flex;flex-direction:column;gap:12px;background:none;padding:0;border-radius:0;box-shadow:none;color:var(--ink)}
.kt-q{display:flex;gap:16px;background:var(--card);border-radius:22px;padding:24px}
.kt-q>div{flex:1;min-width:0}
.kt-q b{display:block;font-size:19px;font-weight:600;margin-bottom:14px}
.kt-n{flex:none;width:32px;height:32px;border-radius:50%;background:var(--ink);color:#fff;font-size:14px;font-weight:600;display:grid;place-items:center}
.kt-hint{margin:0;color:var(--muted);font-size:15px}
.kt-chips,.kt-topics{display:flex;flex-wrap:wrap;gap:8px}
.kt-chip{border:1px solid #e3e1da;background:#fff;color:var(--ink);font:inherit;font-size:15px;padding:9px 16px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.kt-chip:hover{border-color:var(--ink)}
.kt-chip.on{background:var(--ink);border-color:var(--ink);color:#fff}
.kt-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.kt-fields label{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--muted)}
.kt-fields .kt-wide{grid-column:1/-1}
.kt-fields input,.kt-fields textarea{font:inherit;font-size:16px;color:var(--ink);border:1px solid #e3e1da;border-radius:12px;padding:12px 14px;background:#fff;resize:vertical}
.kt-fields input:focus,.kt-fields textarea:focus{outline:none;border-color:var(--ink)}
.kt-trap{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.kt-letter{position:sticky;top:96px}
.kt-env{position:relative;background:#fff;border-radius:22px;padding:26px 28px 30px;box-shadow:0 30px 60px -40px rgba(0,0,0,.35);overflow:hidden;
  background-image:repeating-linear-gradient(135deg,#ff6b00 0 14px,#fff 14px 22px,#1d1d1d 22px 36px,#fff 36px 44px);background-size:100% 6px;background-repeat:no-repeat;background-position:top}
.kt-lhead{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid #ecebe7;font-size:15px}
.kt-lhead span{width:46px;color:var(--muted);flex:none}
.kt-lhead b{font-weight:600}
.kt-body{padding-top:16px;min-height:170px}
.kt-msg p{margin:0 0 4px;font-size:16px;line-height:1.5}
.kt-stamp{position:absolute;right:22px;top:22px;width:62px;height:62px;border-radius:12px;background:#1d1d1d;display:grid;place-items:center;transform:rotate(6deg);opacity:.15;transition:opacity .4s,transform .4s;outline:2px dashed #1d1d1d;outline-offset:3px}
.kt-stamp img{width:40px;height:auto}
.kt-letter.ready .kt-stamp{opacity:1;transform:rotate(-4deg)}
.kt-letter.sent .kt-env{animation:ktfly .7s ease-in forwards}
@keyframes ktfly{to{transform:translate(40px,-30px) rotate(4deg);opacity:.0}}
.kt-err{margin:12px 0 0;color:#c8102e;font-size:15px;min-height:1px}
.kt-acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.kt-ok{margin:14px 0 0;padding:14px 16px;border-radius:14px;background:#fbf6ef;color:#5a4a36;font-size:15px}
.kt-ok.good{background:#e6f4ea;color:#1e7a3c}
.kt-light{background:#fff}
.kt-mapgrid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:48px;align-items:center}
.kt-map{position:relative;display:block;border-radius:24px;overflow:hidden;aspect-ratio:16/10;background:#eee}
.kt-map img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.kt-map:hover img{transform:scale(1.03)}
.kt-pulse{position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 0 rgba(255,107,0,.6);animation:ktp2 2s infinite}
@keyframes ktp2{70%{box-shadow:0 0 0 26px rgba(255,107,0,0)}100%{box-shadow:0 0 0 0 rgba(255,107,0,0)}}
.kt-where .eyebrow{color:var(--accent);margin:0 0 8px}
.kt-where h2{margin:0;font-size:clamp(30px,3.4vw,44px);font-weight:600;letter-spacing:-.015em}
.kt-addr2{font-size:20px;margin:14px 0 6px}
.kt-note{color:var(--muted);margin:0}
.kt-facts{display:flex;gap:32px;margin-top:32px;padding-top:24px;border-top:1px solid #ecebe7}
.kt-facts b{display:block;font-size:30px;font-weight:600;letter-spacing:-.01em}
.kt-facts span{color:var(--muted);font-size:15px}
.kt-toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);opacity:0;z-index:60;background:#1d1d1d;color:#fff;padding:12px 20px;border-radius:14px;font-size:15px;transition:opacity .25s,transform .25s;box-shadow:0 20px 40px -20px rgba(0,0,0,.5)}
.kt-toast.on{opacity:1;transform:translate(-50%,0)}
@media(max-width:1020px){.kt-hero-grid,.kt-grid,.kt-mapgrid{grid-template-columns:minmax(0,1fr);gap:32px}.kt-letter{position:static}}
@media(max-width:620px){.kt-hero-grid{padding-block:48px 40px}.kt-fields{grid-template-columns:1fr}.kt-q{padding:20px 18px;gap:12px}.kt-big{padding:14px;gap:12px}.kt-ic{width:40px;height:40px}.kt-phone{font-size:22px}}
@media(prefers-reduced-motion:reduce){.kt-dot,.kt-pulse{animation:none}.kt-letter.sent .kt-env{animation:none}}

/* contacts hero: live city network */
.kt-hero{position:relative;overflow:hidden;background-image:radial-gradient(700px 360px at 70% 40%,rgba(255,107,0,.12),transparent 70%)}
.kt-net{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.kt-hero>.w{position:relative;z-index:1}
.kt-big{background:rgba(29,29,29,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.kt-big:hover{background:rgba(40,40,40,.7)}

/* temporary background switcher on contacts */
.kt-bgsw{position:absolute;right:max(16px,calc((100vw - 1160px)/2));top:16px;z-index:2;display:flex;align-items:center;gap:4px;padding:4px;border-radius:999px;background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(6px);font-size:13px}
.kt-bgsw span{color:#9a9a96;padding:0 6px 0 10px}
.kt-bgsw button{border:0;background:none;color:#d8d8d4;font:inherit;padding:6px 12px;border-radius:999px;cursor:pointer}
.kt-bgsw button:hover{color:#fff}
.kt-bgsw button.on{background:#ff6b00;color:#fff}
@media(max-width:620px){.kt-bgsw{left:16px;right:16px;overflow-x:auto;scrollbar-width:none}.kt-bgsw span{display:none}.kt-bgsw button{flex:none}}

/* ===== Окно заявки (lead-modal.js) ===== */
html.lm-open{overflow:hidden}
.lm{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px}
.lm-back{position:absolute;inset:0;background:rgba(10,10,10,.6);backdrop-filter:blur(4px);opacity:0;transition:opacity .2s}
.lm-box{position:relative;width:min(520px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:24px;padding:32px;box-shadow:0 40px 80px -30px rgba(0,0,0,.5);transform:translateY(16px) scale(.98);opacity:0;transition:transform .2s,opacity .2s}
.lm.on .lm-back{opacity:1}.lm.on .lm-box{transform:none;opacity:1}
.lm-close{position:absolute;right:16px;top:14px;width:40px;height:40px;border:0;border-radius:12px;background:#f1f0ec;color:var(--ink);font-size:24px;line-height:1;cursor:pointer}
.lm-close:hover{background:#e6e4de}
.lm-eb{margin:0 0 6px;color:var(--accent);font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.lm-box h2{margin:0;font-size:30px;font-weight:600;letter-spacing:-.015em}
.lm-topic{margin:10px 0 0;display:inline-block;padding:6px 12px;border-radius:999px;background:#f5f4f0;font-size:14px;color:#555}
.lm .lm-form{display:flex;flex-direction:column;gap:12px;margin-top:20px;background:none;padding:0;border-radius:0}
.lm-form label{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--muted)}
.lm-form input,.lm-form textarea{font:inherit;font-size:16px;color:var(--ink);border:1px solid #e3e1da;border-radius:12px;padding:12px 14px;background:#fff;resize:vertical}
.lm-form input:focus,.lm-form textarea:focus{outline:none;border-color:var(--ink)}
.lm-trap{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.lm-err{margin:0;color:#c8102e;font-size:14px;min-height:1px}
.lm-send{justify-content:center}
.lm-small{margin:0;font-size:12px;color:var(--muted);line-height:1.4}
.lm-done{text-align:center;padding:16px 0 4px}
.lm-ok{width:64px;height:64px;margin:0 auto 14px;border-radius:50%;background:#fbf0e6;position:relative}
.lm-ok::after{content:"!";position:absolute;inset:0;display:grid;place-items:center;font-size:30px;font-weight:600;color:var(--accent)}
.lm-done.good .lm-ok{background:#e6f4ea}
.lm-done.good .lm-ok::after{content:"";inset:auto;left:25px;top:14px;width:12px;height:24px;border:solid #1e7a3c;border-width:0 3px 3px 0;transform:rotate(45deg);position:absolute}
.lm-done h3{margin:0 0 6px;font-size:24px;font-weight:600}
.lm-done p{margin:0;color:#555}
.lm-alt{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:18px}
@media(max-width:620px){.lm{align-items:flex-end;padding:0}.lm-box{border-radius:24px 24px 0 0;padding:26px 20px 24px;max-height:92vh}.lm-box h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){.lm-back,.lm-box{transition:none}}

/* ===== Пособие по монтажу v2 (montazh.html) ===== */
.mz2-hero h1{max-width:18ch}
.mz2-hero .mz-progress{max-width:820px}
.mz2-mode{margin-top:28px;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.mz2-mode span{color:#bdbdb8;font-size:15px;margin-right:6px}
.mz2-mode button{border:1px solid rgba(255,255,255,.25);background:none;color:#e8e8e4;font:inherit;font-size:15px;padding:8px 16px;border-radius:999px;cursor:pointer}
.mz2-mode button.on{background:#fff;color:var(--ink);border-color:#fff}
.mz2-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:48px;align-items:start;padding-block:clamp(40px,5vw,72px)}
.mz2-toc{position:sticky;top:96px}
.mz2-toc nav{display:flex!important;flex-direction:column;align-items:stretch;gap:2px;position:static;background:none;padding:0;border:0}
.mz2-toc a{display:flex;gap:10px;align-items:baseline;padding:8px 12px;border-radius:12px;text-decoration:none;color:var(--muted);font-size:15px;line-height:1.3}
.mz2-toc a i{font-style:normal;font-size:12px;min-width:20px;font-variant-numeric:tabular-nums}
.mz2-toc a:hover{color:var(--ink);background:#fff}
.mz2-toc a.on{color:var(--ink);background:#fff;font-weight:500}
.mz2-toc a.ok i{color:#1e7a3c}
.mz2-body{display:flex;flex-direction:column;gap:20px;min-width:0}
.mz2-sec{background:var(--card);border-radius:24px;padding:clamp(24px,3vw,40px);scroll-margin-top:96px}
.mz2-head{display:flex;align-items:center;gap:12px}
.mz2-num{font-size:14px;font-weight:600;color:var(--muted)}
.mz2-sec h2{margin:10px 0 8px;font-size:clamp(26px,3vw,36px);font-weight:600;letter-spacing:-.015em}
.mz2-lead{margin:0 0 20px;color:#555;max-width:62ch}
.mz2-steps{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:12px;counter-reset:s}
.mz2-st{display:flex;gap:14px;padding:16px 18px;border-radius:16px;background:#f7f6f3}
.mz2-sn{flex:none;width:28px;height:28px;border-radius:50%;background:var(--ink);color:#fff;font-size:13px;font-weight:600;display:grid;place-items:center;margin-top:1px}
.mz2-st h4{margin:2px 0 6px;font-size:17px;font-weight:600}
.mz2-st ul{margin:0;padding-left:18px;color:#444;font-size:15.5px;line-height:1.55}
.mz2-st li+li{margin-top:4px}
.mz2-gal{display:flex;gap:10px;overflow-x:auto;margin-top:20px;padding-bottom:6px;scroll-snap-type:x mandatory;scrollbar-width:thin}
.mz2-ph{flex:none;border:0;padding:0;border-radius:14px;overflow:hidden;background:#eee;cursor:zoom-in;scroll-snap-align:start}
.mz2-ph img{display:block;height:220px;width:auto}
.mz2-ph.wide img{height:auto;width:100%}
.mz2-gcap{margin:6px 0 0;font-size:13px;color:var(--muted)}
.mz2-scheme{margin:20px 0 0}
.mz2-scheme .mz2-ph{width:100%;max-width:640px}
.mz2-scheme figcaption{margin-top:8px;font-size:14px;color:var(--muted);max-width:64ch}
.mz2-tools{margin-top:20px}
.mz2-tools h4{margin:0 0 10px;font-size:17px;font-weight:600}
.mz2-tgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.mz2-tgrid div{padding:14px 16px;border-radius:14px;border:1px solid #ecebe7}
.mz2-tgrid b{display:block;font-size:15px;margin-bottom:4px}
.mz2-tgrid span{font-size:14px;color:#555}
.mz2-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.mz2-rules div{padding:18px;border-radius:16px;background:#f7f6f3}
.mz2-rules b{display:block;font-size:16px;margin-bottom:4px}
.mz2-rules p{margin:0;font-size:15px;color:#444}
.mz2-plate{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}
.mz2-plate div{padding:16px 18px;border-radius:16px;border:1.5px solid #ecebe7}
.mz2-plate div:first-child{border-color:var(--accent)}
.mz2-plate b{display:block;font-size:15.5px;margin-bottom:4px}
.mz2-plate p{margin:0;font-size:14.5px;color:#555}
.mz2-errs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.mz2-errs article{padding:18px;border-radius:16px;background:#f7f6f3}
.mz2-errs b{display:block;font-size:16px;margin-bottom:4px}
.mz2-errs p{margin:0;font-size:15px;color:#444}
.mz2-nums{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.mz2-nums div{padding:14px 16px;border-radius:14px;border:1px solid #ecebe7}
.mz2-nums b{display:block;font-size:20px;font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.mz2-nums span{font-size:14px;color:#555}
.mz2-gloss{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 24px;margin:0}
.mz2-gloss div{padding:12px 0;border-bottom:1px solid #ecebe7}
.mz2-gloss dt{font-weight:600}
.mz2-gloss dd{margin:2px 0 0;color:#555;font-size:15px}
.mz2-cta{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;background:var(--dark);color:#fff;border-radius:24px;padding:clamp(24px,3vw,40px)}
.mz2-cta h2{margin:0 0 6px;font-size:clamp(24px,2.6vw,32px);font-weight:600}
.mz2-cta p{margin:0;color:#bdbdb8}
.mz2-lb{position:fixed;inset:0;z-index:210;background:rgba(10,10,10,.92);display:flex;align-items:center;justify-content:center;padding:56px 64px}
.mz2-lb[hidden]{display:none}
.mz2-lb img{max-width:100%;max-height:100%;border-radius:10px}
.mz2-lbx,.mz2-lbp,.mz2-lbn{position:absolute;border:0;background:rgba(255,255,255,.12);color:#fff;width:48px;height:48px;border-radius:14px;font-size:28px;line-height:1;cursor:pointer}
.mz2-lbx{right:16px;top:16px}.mz2-lbp{left:12px;top:50%;transform:translateY(-50%)}.mz2-lbn{right:12px;top:50%;transform:translateY(-50%)}
.mz2-lbx:hover,.mz2-lbp:hover,.mz2-lbn:hover{background:rgba(255,255,255,.22)}
.mz2-lbc{position:absolute;bottom:14px;left:0;right:0;text-align:center;margin:0;color:#bdbdb8;font-size:14px}
@media(max-width:1020px){.mz2-grid{grid-template-columns:minmax(0,1fr);gap:16px;padding-top:0}.mz2-toc{position:sticky;top:76px;z-index:5;margin-inline:-16px;background:rgba(245,245,243,.96);backdrop-filter:blur(8px);padding:10px 0}.mz2-toc nav{flex-direction:row;overflow-x:auto;padding:0 16px;scrollbar-width:none}.mz2-toc nav::-webkit-scrollbar{display:none}.mz2-toc a{flex:none;background:#fff;border-radius:999px;padding:7px 14px;font-size:14px}.mz2-toc a.on{background:var(--ink);color:#fff}.mz2-tgrid,.mz2-nums{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.mz2-tgrid,.mz2-nums,.mz2-rules,.mz2-errs,.mz2-plate,.mz2-gloss{grid-template-columns:minmax(0,1fr)}.mz2-st{padding:14px;gap:12px}.mz2-ph img{height:180px}.mz2-lb{padding:56px 8px}.mz2-lbp,.mz2-lbn{top:auto;bottom:8px;transform:none}}
@media print{header,footer,.mz2-toc,.mz2-mode,.mz-progress,.mz2-gal,.mz2-gcap,.mz2-cta,.mz-back,.mz2-lb{display:none!important}.mz-hero{background:none!important;color:#000}.mz-hero .lead{color:#333}.mz2-grid{display:block;padding:0}.mz2-sec{break-inside:avoid-page;padding:12px 0;border-radius:0}.mz2-st{background:none;border:1px solid #ddd}}

/* монтаж: анимированный фон шапки */
.mz2-hero{position:relative;overflow:hidden}
.mzbg{position:absolute;inset:0;pointer-events:none}
.mz2-hero>.w{position:relative;z-index:1}
.mz2-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--dark) 0%,rgba(29,29,29,.85) 35%,rgba(29,29,29,0) 60%);pointer-events:none;z-index:0}
@media(max-width:900px){.mz2-hero::after{background:rgba(29,29,29,.55)}}

/* ===== Главная: продукты с УСПД-флагманом ===== */
.pr2-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:40px;flex-wrap:wrap}
.pr2-head h2{margin:0}
.pr2-head p{margin:14px 0 0;font-size:16px;max-width:56ch}
.pr2-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px}
.pr2-main{flex-direction:row;align-items:center;gap:16px;padding:20px 36px 20px 8px}
.pr2-model{flex:0 0 48%;min-width:0}
.pr2-model .uspd-3d{max-width:460px}
.pr2-txt{display:flex;flex-direction:column;gap:14px;min-width:0}
.pr2-txt .pr-tag{align-self:flex-start;margin:0}
.pr2-txt h3{font-size:clamp(26px,2.6vw,34px);font-weight:600;letter-spacing:-.015em;margin:0}
.pr2-txt>p{margin:0;color:var(--muted);font-size:16px}
.pr2-feat{list-style:none;margin:4px 0 6px;padding:0;display:flex;flex-direction:column;gap:12px}
.pr2-feat li{display:flex;flex-direction:column;gap:2px;padding-left:28px;position:relative}
.pr2-feat li::before{content:"";position:absolute;left:0;top:3px;width:18px;height:18px;border-radius:50%;background:#fbf0e6}
.pr2-feat li::after{content:"";position:absolute;left:6px;top:7px;width:5px;height:8px;border:solid var(--accent);border-width:0 2px 2px 0;transform:rotate(45deg)}
.pr2-feat b{font-weight:500;font-size:15.5px}
.pr2-feat span{color:var(--muted);font-size:14.5px}
.pr2-side{display:flex;flex-direction:column;gap:16px}
.pr2-side .card{flex:1}
.pr2-side .card .more{margin-top:auto}
@media(max-width:980px){.pr2-grid{grid-template-columns:minmax(0,1fr)}.pr2-side{flex-direction:row}.pr2-side .card{flex:1 1 0}}
@media(max-width:700px){.pr2-main{flex-direction:column;align-items:stretch;padding:20px 20px 24px}.pr2-model{flex:none}.pr2-model .uspd-3d{max-width:300px}.pr2-side{flex-direction:column}}

/* ===== Калькулятор: превью внешнего калькулятора ===== */
.cx .cx-w{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(32px,5vw,72px);align-items:center}
.cx .eyebrow{margin:0 0 14px}
.cx h2,.cx h1{margin:0;font-size:clamp(32px,4vw,50px);line-height:1.08;letter-spacing:-.02em;font-weight:600}
.cx-lead{margin:18px 0 0;color:#cfcfcf;font-size:17px;max-width:46ch}
.cx-steps{list-style:none;margin:28px 0 0;padding:0;display:flex;flex-direction:column;gap:14px;counter-reset:cx}
.cx-steps li{counter-increment:cx;display:grid;grid-template-columns:36px 1fr;column-gap:14px;align-items:center}
.cx-steps li::before{content:counter(cx);grid-row:span 2;width:36px;height:36px;border-radius:50%;border:1px solid #3a3a3a;display:grid;place-items:center;font-size:14px;color:#fff}
.cx-steps b{font-weight:500;font-size:16px}
.cx-steps span{color:#9a9a9a;font-size:14px}
.cx-act{margin-top:32px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.cx-note{color:#8a8a8a;font-size:13px}
.cx-prev{display:block;text-decoration:none;color:inherit;perspective:1200px}
.cx-win{background:#fff;color:#141414;border-radius:18px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.06);transform:rotateY(-6deg) rotateX(2deg);transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s}
.cx-prev:hover .cx-win,.cx-prev:focus-visible .cx-win{transform:none;box-shadow:0 50px 90px -30px rgba(0,0,0,.75),0 0 0 1px rgba(255,255,255,.1)}
.cx-bar{display:flex;align-items:center;gap:6px;padding:12px 16px;background:#f1f0ec;border-bottom:1px solid #e4e2dc}
.cx-bar i{width:10px;height:10px;border-radius:50%;background:#d6d4cd}
.cx-bar span{margin-left:10px;flex:1;background:#fff;border-radius:8px;padding:5px 12px;font-size:12.5px;color:#666}
.cx-body{padding:22px 24px 24px;display:flex;flex-direction:column;gap:12px}
.cx-tabs{display:flex;gap:8px;margin-bottom:4px}
.cx-tabs span{display:inline-flex;align-items:center;gap:8px;padding:7px 14px 7px 8px;border-radius:999px;background:#f5f4f0;font-size:13.5px;color:#777}
.cx-tabs span.on{background:#141414;color:#fff}
.cx-tabs em{font-style:normal;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:11.5px;background:rgba(127,127,127,.2)}
.cx-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.cx-fields label{display:flex;flex-direction:column;gap:6px;font-size:12.5px;color:#888}
.cx-fields b{font-weight:500;font-size:17px;color:#141414;border:1px solid #e3e1da;border-radius:10px;padding:9px 12px}
.cx-lbl{font-size:12.5px;color:#888;margin-top:4px}
.cx-chips{display:flex;flex-wrap:wrap;gap:8px}
.cx-chips span{padding:7px 12px;border-radius:999px;border:1px solid #e3e1da;font-size:13.5px;color:#555}
.cx-chips span.on{border-color:var(--accent);color:var(--accent);background:#fff6ef}
.cx-sum{margin-top:8px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-radius:12px;background:#f5f4f0}
.cx-sum div{display:flex;flex-direction:column;gap:7px;min-width:0;flex:1}
.cx-sum div span{font-size:13px;color:#777}
.cx-sum i{display:block;height:7px;border-radius:4px;background:#e2e0d9;width:80%}
.cx-sum i:nth-child(3){width:62%}.cx-sum i:nth-child(4){width:70%}
.cx-sum b{flex:none;background:var(--accent);color:#fff;font-weight:500;font-size:13.5px;padding:10px 14px;border-radius:10px}
.cx-page{min-height:calc(100vh - 76px);display:flex;align-items:center}
.cx-page .w{width:100%}
@media(max-width:900px){.cx .cx-w{grid-template-columns:minmax(0,1fr)}.cx-win{transform:none}}
@media(max-width:520px){.cx-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.cx-fields b{font-size:15px;padding:8px 9px}.cx-body{padding:18px 16px 20px}.cx-sum b{font-size:12.5px;padding:9px 10px}}
@media(prefers-reduced-motion:reduce){.cx-win{transition:none}}

/* ===== УСПД: характеристики, фото и видео (заглушки) ===== */
.uo-head{margin-bottom:36px}
.uo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:210px;gap:14px}
.uo-ph{border-radius:18px;border:1.5px dashed #d4d2cb;background:repeating-linear-gradient(135deg,#fff 0 14px,#faf9f6 14px 28px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--muted);text-align:center;padding:16px}
.uo-ph span{width:52px;height:52px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:0 6px 18px -8px rgba(0,0,0,.25)}
.uo-ph span svg{width:24px;height:24px}
.uo-ph b{font-weight:500;font-size:14.5px}
.uo-video{grid-column:span 2;grid-row:span 2}
.uo-video .uo-play{width:76px;height:76px;background:var(--accent);color:#fff}
.uo-video .uo-play svg{width:30px;height:30px;margin-left:4px}
.up-table td{color:var(--ink)}
@media(max-width:980px){.uo-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:180px}.up-specs{grid-template-columns:minmax(0,1fr);gap:28px}}
@media(max-width:560px){.uo-grid{grid-auto-rows:150px}.up-table th{width:42%}.up-table{font-size:15px}}
/* счётчик «150 объектов»: текст скрыт до начала анимации печати */
.done-hand.pre .tw>:not(.caret){display:none}

.up-table td.tbd{color:#b0aea8}

/* УСПД: виджет «опрос приборов» — проигрывается один раз при появлении */
.up-side{position:sticky;top:110px}
.pw{margin-top:28px;border-radius:20px;background:#121212;color:#fff;padding:20px 20px 18px;box-shadow:0 30px 60px -30px rgba(0,0,0,.45)}
.pw-head{display:flex;align-items:center;gap:10px;font-size:14px;color:#cfcfcf;margin-bottom:14px}
.pw-dot{width:8px;height:8px;border-radius:50%;background:#3a3a3a;transition:background .4s}
.pw.run .pw-dot{background:#2fbf71}
.pw ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.pw li{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;background:#1c1c1e}
.pw-ic{flex:none;width:36px;height:36px;border-radius:10px;background:#262628;display:grid;place-items:center;color:#9a9a9a;transition:color .4s,background .4s}
.pw-ic svg{width:19px;height:19px}
.pw-t{display:flex;flex-direction:column;min-width:0;flex:1}.pw-t b{font-weight:500;font-size:15px}.pw-t small{font-size:12.5px;color:#8d8d8d}
.pw-s{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:#6f6f6f;opacity:0;transform:translateX(6px);transition:opacity .4s,transform .4s,color .4s}
.pw-s i{width:7px;height:7px;border-radius:50%;background:#2fbf71}
.pw.run li .pw-s{opacity:1;transform:none;color:#b9e8cf}
.pw.run li .pw-ic{background:rgba(255,107,0,.14);color:var(--accent)}
.pw li:nth-child(1) *{transition-delay:.3s}.pw li:nth-child(2) *{transition-delay:.8s}.pw li:nth-child(3) *{transition-delay:1.3s}.pw li:nth-child(4) *{transition-delay:1.8s}
.pw-foot{margin-top:14px;display:flex;flex-direction:column;gap:6px;font-size:13px;color:#8d8d8d}
.pw-foot span{display:flex;align-items:center;gap:8px;opacity:.35;transition:opacity .5s,color .5s}
.pw-foot span::before{content:"";width:14px;height:14px;border-radius:50%;border:1.5px solid currentColor;flex:none}
.pw.done .pw-foot span{opacity:1;color:#d6d6d6}
.pw.done .pw-foot span::before{background:var(--accent);border-color:var(--accent)}
.pw.done .pw-foot span:nth-child(2){transition-delay:.4s}
@media(max-width:980px){.up-side{position:static}}
@media(prefers-reduced-motion:reduce){.pw *{transition:none!important}}
.pw ul,.pw li{width:100%;box-sizing:border-box;max-width:none}

/* Баннер: главный текст + подробности + кнопка, текст переносится целиком */
.site-banner .w{justify-content:center;gap:10px 18px;padding-block:10px}
.site-banner .sb-txt{display:flex;flex-direction:column;gap:2px;min-width:0;text-align:center;line-height:1.35}
.site-banner .sb-txt b{font-weight:600}
.site-banner .sb-txt span{font-size:14px;opacity:.92}
.site-banner .sb-btn{flex:none;background:#fff;color:var(--accent);text-decoration:none;font-weight:500;font-size:14px;padding:7px 14px;border-radius:999px;white-space:nowrap}
.site-banner .sb-btn:hover{background:#fff4ec}

/* ===== Появление страницы и блоков (anim.js) ===== */
html.js-anim header{animation:pgHead .7s cubic-bezier(.2,.75,.25,1) backwards}
html.js-anim main{overflow-x:clip}
/* первый экран: сразу при отрисовке, без ожидания скриптов */
html.js-anim main>:first-child>.w>*>*:not(canvas):not(.v3-float),html.js-anim main>:first-child>.w>:is(h1,h2,p,span,a,img,.btns,.eyebrow){animation:rvUp 1s cubic-bezier(.16,.84,.3,1) backwards}
html.js-anim main>:first-child>.w>*>:nth-child(2),html.js-anim main>:first-child>.w>:nth-child(2){animation-delay:130ms}
html.js-anim main>:first-child>.w>*>:nth-child(3),html.js-anim main>:first-child>.w>:nth-child(3){animation-delay:260ms}
html.js-anim main>:first-child>.w>*>:nth-child(4),html.js-anim main>:first-child>.w>:nth-child(4){animation-delay:390ms}
html.js-anim main>:first-child>.w>*>:nth-child(5),html.js-anim main>:first-child>.w>:nth-child(5){animation-delay:520ms}
html.js-anim main>:first-child>.w>*>:nth-child(n+6),html.js-anim main>:first-child>.w>:nth-child(n+6){animation-delay:650ms}
html.js-anim .rv:not(.in){opacity:0}
html.js-anim .rv.in{animation-duration:1s;animation-timing-function:cubic-bezier(.16,.84,.3,1);animation-delay:var(--rv-d,0ms);animation-fill-mode:both}
html.js-anim .rv-up.in{animation-name:rvUp}
html.js-anim .rv-head.in{animation-name:rvHead}
html.js-anim .rv-zoom.in{animation-name:rvZoom;animation-duration:1.1s}
html.js-anim .rv-left.in{animation-name:rvLeft}
html.js-anim .rv-right.in{animation-name:rvRight}
@keyframes pgHead{from{opacity:0;translate:0 -16px}}
@keyframes rvUp{from{opacity:0;translate:0 26px}}
@keyframes rvHead{from{opacity:0;translate:0 22px}}
@keyframes rvZoom{from{opacity:0;scale:.93}}
@keyframes rvLeft{from{opacity:0;translate:-56px 0}}
@keyframes rvRight{from{opacity:0;translate:56px 0}}
@media(prefers-reduced-motion:reduce){html.js-anim header,html.js-anim .rv.in,html.js-anim main>:first-child>.w>*,html.js-anim main>:first-child>.w>*>*{animation:none}html.js-anim .rv{opacity:1}}

/* Телефон с экранами приложения: листание влево-вправо (phone-slider.js) */
.pr-swipe .iscreen{touch-action:pan-y;cursor:grab;-webkit-user-select:none;user-select:none;outline:none}
.pr-swipe .iscreen:focus-visible{box-shadow:0 0 0 3px var(--accent)}
.pr-swipe .iscreen.dragging{cursor:grabbing}
.pr-swipe .pr-shots>*{opacity:1;transition:transform .55s cubic-bezier(.22,.8,.25,1);will-change:transform}
.pr-swipe .pr-shots>img{pointer-events:none}
@media(prefers-reduced-motion:reduce){.pr-swipe .pr-shots>*{transition:none}}

/* Политика обработки персональных данных */
.pol-hero .w{padding-block:72px 56px}
.pol-sec{background:#fff;padding-block:clamp(48px,6vw,88px)}
.pol-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:56px;align-items:start}
.pol-toc{position:sticky;top:96px;font-size:15px}
.pol-toc b{display:block;margin-bottom:12px;color:var(--muted);font-weight:500;font-size:13px;letter-spacing:.06em;text-transform:uppercase}
.pol-toc ol{margin:0;padding-left:20px;display:grid;gap:8px;color:var(--muted)}
.pol-toc a{color:var(--ink);text-decoration:none}.pol-toc a:hover{color:var(--accent)}
.pol-body{max-width:760px}
.pol-s{scroll-margin-top:96px;padding:0}.pol-s+.pol-s{margin-top:40px}
.pol-s h2{font-size:clamp(22px,2.2vw,28px);margin:0 0 16px;line-height:1.2}
.pol-s h2 span{color:var(--accent)}
.pol-s p{margin:0 0 12px;line-height:1.6;color:#2b2b2b}
.pol-s p b{font-weight:600;color:var(--ink)}
.pol-s a{color:var(--accent)}
@media(max-width:860px){.pol-grid{grid-template-columns:minmax(0,1fr);gap:28px}.pol-toc{position:static}}
.lm-small a,.kt-consent a{color:inherit;text-decoration:underline}
.kt-consent{margin:12px 0 0;font-size:13px;color:var(--muted);line-height:1.4}
.adm-img{width:100%;height:auto;display:none;background:#f8f8f7}.adm-img.on{display:block}

/* светлый фирменный цвет кейса: при наведении текст тёмный */
.case-card.light:hover,.case-card.light:focus-visible{color:#1b1b1b}
.case-card.light:hover .case-obj,.case-card.light:hover .case-body p,.case-card.light:focus-visible .case-obj,.case-card.light:focus-visible .case-body p{color:rgba(27,27,27,.75)}
.case-card.light:hover .case-logo span{border-color:rgba(27,27,27,.35);color:#1b1b1b}
.case-addr{margin:8px 0 0;padding-left:18px;display:grid;gap:4px}

html.case-wait .case-hero .w,html.case-wait main>section{visibility:hidden}

/* Кнопки магазинов приложений */
.stores{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.store{display:inline-flex;align-items:center;gap:10px;padding:9px 16px 9px 12px;border-radius:14px;background:#1b1b1b;color:#fff;text-decoration:none;border:1px solid #1b1b1b;transition:background .2s,border-color .2s,transform .2s}
.store svg{width:22px;height:22px;flex:none;color:var(--accent)}
.store span{display:grid;line-height:1.15}
.store small{font-size:11px;color:#bdbdbb}
.store b{font-size:15.5px;font-weight:600}
.store:hover{background:#000;transform:translateY(-1px)}
.stores.on-dark .store{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.28)}
.stores.on-dark .store:hover{background:rgba(255,255,255,.14);border-color:#fff}
.pol-grid.pol-single{grid-template-columns:minmax(0,780px)}

/* Галочка согласия на обработку персональных данных */
.consent-cb{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.45;cursor:pointer;margin:4px 0 2px;text-align:left}
.consent-cb input{width:18px;height:18px;margin:1px 0 0;flex:none;accent-color:var(--accent);cursor:pointer}
.consent-cb a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.fbottom .freq{display:block;margin-top:6px;font-size:13px;color:#777}
.fbottom .flinks{display:flex;flex-wrap:wrap;gap:8px 24px}
/* Плашка про cookie */
.cookie-note{position:fixed;right:16px;bottom:16px;z-index:70;max-width:420px;display:flex;align-items:center;gap:14px;padding:14px 14px 14px 18px;border-radius:16px;background:#1b1b1b;color:#e6e6e6;font-size:14px;line-height:1.45;box-shadow:0 18px 40px -18px rgba(0,0,0,.5);opacity:0;transform:translateY(12px);transition:opacity .4s,transform .4s}
.cookie-note.on{opacity:1;transform:none}
.cookie-note a{color:#fff;text-decoration:underline;text-underline-offset:2px}
.cookie-note button{flex:none;height:38px;padding:0 16px;border-radius:10px;border:0;background:var(--accent);color:#fff;font:inherit;font-weight:500;cursor:pointer}
@media(max-width:520px){.cookie-note{left:12px;right:12px;bottom:12px;max-width:none}}

/* Заставка: логотип собирается из осколков */
html.pl-on body::after{content:"";position:fixed;inset:0;background:#1b1b1b;z-index:9998}
html.pl-on{overflow:hidden}
html.pl-on header,html.pl-on header *,html.pl-on main,html.pl-on main *{animation-play-state:paused!important}
#pl{position:fixed;inset:0;z-index:9999;background:#1b1b1b;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;transition:opacity .6s ease,visibility .6s}
#pl .pl-logo{width:min(260px,58vw);height:auto;overflow:visible;transition:transform .6s cubic-bezier(.4,0,.2,1)}
#pl .pl-s{transform:translate(var(--dx),var(--dy)) rotate(var(--r)) scale(.6);opacity:0}
#pl.go .pl-s{transform:none;opacity:1;transition:transform .75s cubic-bezier(.2,.9,.25,1.08) var(--d),opacity .4s ease var(--d)}
#pl .pl-bar{width:min(180px,40vw);height:3px;border-radius:2px;background:rgba(255,255,255,.12);overflow:hidden}
#pl .pl-bar i{display:block;height:100%;background:#ff6b00;transform:scaleX(0);transform-origin:left;transition:transform .35s ease}
#pl.out{opacity:0;visibility:hidden}
#pl.out .pl-logo{transform:scale(1.08)}
@media(prefers-reduced-motion:reduce){#pl{display:none}html.pl-on body::after{display:none}}
