:root{
  --ef-ink:#16283c; --ef-text:#4e6579; --ef-muted:#7f95a9;
  --ef-line:#dfe8f2; --ef-line-soft:#e9eff7; --ef-wash:#f4f8fc;
  --ef-blue:#3685c6; --ef-blue-hover:#2a72b5; --ef-blue-light:#74b9f0;
  --ef-cyan:#38bdf8; --ef-frame:#2470ad; --ef-night:#08131e;
  --ef-font-sans:"Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --ef-sh-blue:0 4px 18px rgba(54,133,198,.32); --ef-sh-blue-lg:0 8px 28px rgba(54,133,198,.42);
  --ef-sh-lg:0 16px 48px rgba(30,45,61,.13); --ef-ease-out:cubic-bezier(.16,1,.3,1);
  --efh-border:#e0e9f4; --efh-bg:#f4f7fb; --efh-muted:#697f96; --efh-text:#2a3b4d; --efh-ink:#1e2d3d;
  --efh-ease:cubic-bezier(.25,.46,.45,.94);
}
.ef-hdr,.ef-hdr *,.ef-foot,.ef-foot *{box-sizing:border-box}
.ef-hdr,.ef-foot{font-family:var(--ef-font-sans);line-height:1.4;-webkit-font-smoothing:antialiased}
@keyframes bob{0%,100%{transform:translateY(-1px)}50%{transform:translateY(2px)}}
@keyframes spin{to{transform:rotate(360deg)}}
.ef-hdr{position:relative;z-index:20;background:#fff;font-family:var(--ef-font-sans);box-shadow:0 12px 34px -20px rgba(30,45,61,.28)}
.ef-hdr-wrap{max-width:1240px;margin:0 auto;padding:0 48px;display:flex;align-items:center;height:100%}
.ef-hdr-top{background:var(--ef-frame);border-bottom:none;height:38px;font-size:12.5px;color:rgba(255,255,255,.75);font-weight:600}
.ef-hdr-top span{color:rgba(255,255,255,.75)}
.ef-hdr-top .ef-hdr-wrap{justify-content:space-between}
.ht-l{display:flex;align-items:center;gap:14px}
.ht-r{display:flex;align-items:center;gap:16px}
.ht-mail{display:inline-flex;align-items:center;gap:7px;padding:4px 11px;border-radius:20px;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:600;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.22);color:#fff;transition:all .25s var(--efh-ease)}
.ht-mail:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.35)}
.ht-sep{width:1px;height:13px;background:rgba(255,255,255,.20)}
.ht-lnk{color:rgba(255,255,255,.85);font-size:12.5px;font-weight:600;text-decoration:none;transition:color .25s var(--efh-ease);white-space:nowrap}
.ht-lnk:hover{color:#fff}
.ht-socs{display:flex;gap:7px}
.ht-soc{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:transparent;border:1px solid rgba(255,255,255,.25);color:rgba(255,255,255,.8);transition:all .2s}
.ht-soc.wa:hover{background:#25D366;border-color:#25D366;color:#fff}
.ht-soc.tg:hover{background:#229ED9;border-color:#229ED9;color:#fff}
.ef-hdr-mid{background:#fff;border-bottom:1px solid var(--efh-border);height:84px}
.ef-hdr-mid .ef-hdr-wrap{gap:36px}
.hm-logo{display:flex;align-items:center;flex-shrink:0;text-decoration:none;color:var(--efh-ink);font-size:19px;font-weight:900;letter-spacing:.4px;gap:10px}
.hm-logo img{height:52px;display:block}
.hm-search{flex:1;max-width:560px;display:flex;align-items:stretch;height:48px;border:1.5px solid var(--efh-border);border-radius:12px;overflow:hidden;background:#fff;transition:border-color .2s}
.hm-search:focus-within{border-color:var(--ef-blue)}
.hm-search .si{display:flex;align-items:center;padding-left:16px;color:var(--efh-muted)}
.hm-search input{flex:1;min-width:0;border:none;outline:none;padding:0 14px;font-family:inherit;font-size:14px;color:var(--efh-ink);background:transparent}
.hm-search button{flex-shrink:0;align-self:center;height:40px;margin:4px;border-radius:9px;background:var(--ef-blue);border:none;cursor:pointer;padding:0 26px;color:#fff;font-family:inherit;font-size:14px;font-weight:700;letter-spacing:.3px;box-shadow:0 3px 10px rgba(54,133,198,.3);transition:background .2s var(--efh-ease)}
.hm-search button:hover{background:var(--ef-blue-hover)}
.hm-phone{flex-shrink:0;text-align:right}
.hm-phone a{display:block;font-size:19px;font-weight:800;color:var(--efh-ink);letter-spacing:-.3px;line-height:1.05;text-decoration:none}
.hm-phone span{display:inline-block;margin-top:3px;cursor:pointer;font-size:12px;font-weight:600;color:var(--ef-blue)}
.hm-ico{flex-shrink:0;display:flex;align-items:center;gap:4px}
.hm-ico a{display:flex;flex-direction:column;align-items:center;gap:4px;width:58px;padding:4px 0;text-decoration:none;font-size:10.5px;font-weight:600;color:var(--efh-muted);transition:color .25s var(--efh-ease)}
.hm-ico a .bx{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--efh-bg);border:1px solid var(--efh-border);color:var(--efh-ink);font-style:normal;transition:all .25s var(--efh-ease)}
.hm-ico a:hover{color:var(--efh-ink)}
.hm-ico a:hover .bx{background:#eaf0f7;border-color:var(--efh-muted)}
.ef-hdr-nav{background:#fff;border-bottom:1px solid var(--efh-border);box-shadow:0 2px 12px rgba(30,45,61,.05);height:54px}
.ef-hdr-nav .ef-hdr-wrap{align-items:stretch;position:relative}
.hn-cat{align-self:center;height:44px;background:var(--ef-blue);color:#fff;border:none;padding:0 24px;border-radius:10px;font-family:inherit;font-size:14px;font-weight:700;letter-spacing:.2px;cursor:pointer;display:flex;align-items:center;gap:12px;margin-right:18px;box-shadow:0 4px 20px rgba(54,133,198,.25);transition:background .25s var(--efh-ease),box-shadow .4s ease-out;text-decoration:none;white-space:nowrap}
.hn-cat:hover,.hn-cat.open{background:var(--ef-blue-hover);box-shadow:0 6px 30px rgba(54,133,198,.4)}
.hn-cat .brg{position:relative;width:17px;height:12px;display:inline-block}
.hn-cat .brg i{position:absolute;left:0;width:17px;height:2px;border-radius:1px;background:#fff;transition:all .22s var(--efh-ease);font-style:normal}
.hn-cat .brg i:nth-child(1){top:0}
.hn-cat .brg i:nth-child(2){top:5px}
.hn-cat .brg i:nth-child(3){top:10px}
.hn-cat.open .brg i:nth-child(1){top:5px;transform:rotate(45deg)}
.hn-cat.open .brg i:nth-child(2){opacity:0}
.hn-cat.open .brg i:nth-child(3){top:5px;transform:rotate(-45deg)}
.hn-cat .chev{transition:transform .22s;opacity:.9}
.hn-cat.open .chev{transform:rotate(180deg)}
.hn-menu{display:flex;flex:1;align-items:stretch}
.hn-dd{position:relative;display:flex;align-items:stretch}
.hn-dd>a,.hn-dd>span{display:flex;align-items:center;gap:6px;padding:0 17px;font-size:13.5px;font-weight:600;text-decoration:none;color:var(--efh-text);position:relative;transition:all .25s var(--efh-ease);white-space:nowrap;cursor:pointer}
.hn-dd:hover>a,.hn-dd:hover>span{color:var(--efh-ink);background:var(--efh-bg)}
.hn-u{position:absolute;left:11px;right:11px;bottom:0;height:2px;border-radius:2px;background:var(--ef-blue);transform:scaleX(0);transition:transform .25s var(--efh-ease)}
.hn-dd:hover .hn-u{transform:scaleX(1)}
.hn-chev{opacity:.5;transition:transform .22s}
.hn-dd:hover .hn-chev{transform:rotate(180deg)}
.hn-panel{position:absolute;top:100%;left:0;min-width:252px;background:#fff;border:1px solid var(--efh-border);border-top:2px solid var(--ef-blue);border-radius:0 0 12px 12px;box-shadow:0 16px 48px rgba(30,45,61,.13);padding:8px;z-index:250;opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .2s var(--efh-ease),transform .26s var(--efh-ease)}
.hn-dd:hover .hn-panel{opacity:1;transform:translateY(0);pointer-events:auto}
.hn-sec{padding:6px 13px 4px;font-size:9.5px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--efh-muted);border-top:1px solid var(--efh-border);margin-top:4px}
.hn-sec:first-child{border-top:none;margin-top:0}
.hn-panel a{display:flex;align-items:center;gap:10px;padding:8px 13px;border-radius:8px;font-size:13px;font-weight:500;color:var(--efh-text);text-decoration:none;transition:background .18s,color .18s}
.hn-panel a::before{content:"";width:5px;height:5px;border-radius:50%;background:rgba(54,133,198,.35);flex-shrink:0}
.hn-panel a:hover{background:var(--efh-bg);color:var(--efh-ink)}
#efMega{position:absolute;top:100%;left:48px;right:48px;background:#fff;border:1px solid var(--efh-border);border-top:2px solid var(--ef-blue);border-radius:0 0 14px 14px;box-shadow:0 24px 60px rgba(30,45,61,.18);z-index:260;display:none}
#efMega.open{display:flex}
.mg-rail{width:305px;flex-shrink:0;border-right:1px solid var(--efh-border);padding:10px 8px;max-height:calc(100vh - 250px);overflow-y:auto;scrollbar-width:thin}
.mg-rail a{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:9px;font-size:12.5px;font-weight:600;color:var(--efh-text);text-decoration:none;transition:all .15s}
.mg-rail a img{width:22px;height:22px;object-fit:contain;flex-shrink:0}
.mg-rail a b{flex:1;font-weight:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.mg-rail a .n{font-size:10.5px;color:var(--efh-muted);font-weight:600}
.mg-rail a:hover{background:var(--efh-bg);color:var(--efh-ink)}
.mg-rail a.act{background:var(--efh-bg);color:var(--efh-ink);box-shadow:inset 3px 0 0 var(--ef-blue)}
.mg-body{flex:1;display:flex;flex-direction:column;padding:16px 20px;max-height:calc(100vh - 250px);overflow-y:auto;scrollbar-width:thin;scrollbar-gutter:stable}
.mg-body::-webkit-scrollbar{width:8px}
.mg-body::-webkit-scrollbar-thumb{background:#c9d8e8;border-radius:4px}
.mg-body::-webkit-scrollbar-track{background:transparent}
.mg-head{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}
.mg-head b{font-size:16px;font-weight:800;color:var(--efh-ink)}
.mg-head span{font-size:11.5px;color:var(--efh-muted);font-weight:600}
.mg-head a{margin-left:auto;font-size:12.5px;font-weight:700;color:var(--ef-blue);text-decoration:none;white-space:nowrap}
.mg-head a:hover{color:var(--ef-blue-hover)}
.mg-cols{display:flex;gap:22px;align-items:flex-start}
.mg-col{flex:1;min-width:0}
.mg-sub{margin-bottom:3px}
.mg-row{display:flex;align-items:center;gap:6px}
.mg-row>a{flex:1;min-width:0;display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:8px;font-size:12.5px;font-weight:500;color:var(--efh-text);text-decoration:none;transition:all .15s}
.mg-row>a::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--efh-border);flex-shrink:0;transition:background .15s}
.mg-row>a:hover{background:rgba(54,133,198,.08);color:var(--ef-blue);font-weight:700}
.mg-row>a:hover::before{background:var(--ef-blue)}
.mg-row>a b{flex:1;font-weight:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.mg-row .n{font-size:10px;color:var(--efh-muted);font-weight:600}
.mg-plus{width:23px;height:23px;flex-shrink:0;border-radius:7px;border:1px solid var(--efh-border);background:#fff;color:var(--efh-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;font-family:inherit;transition:all .15s}
.mg-sub.open .mg-plus{background:var(--ef-blue);border-color:var(--ef-blue);color:#fff}
.mg-kids{display:none;padding-left:24px}
.mg-sub.open .mg-kids{display:block}
.mg-kids a{display:flex;align-items:center;gap:8px;padding:5px 10px;border-radius:7px;font-size:11.5px;font-weight:500;color:var(--efh-muted);text-decoration:none}
.mg-kids a .n{margin-left:auto;font-size:9.5px}
.mg-kids a:hover{color:var(--ef-blue);background:var(--efh-bg)}
.mg-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#12233a;border-radius:12px;padding:13px 16px;margin-top:14px;position:sticky;bottom:0;box-shadow:0 -14px 18px -14px rgba(30,45,61,.35)}
.mg-cta b{display:block;color:#fff;font-size:13px;margin-bottom:2px}
.mg-cta span{color:#9eb2c8;font-size:11.5px;font-weight:600}
.mg-cta a{background:var(--ef-blue);color:#fff;font-size:12.5px;font-weight:700;padding:10px 16px;border-radius:9px;text-decoration:none;white-space:nowrap}
.mg-cta a:hover{background:var(--ef-blue-hover)}
.ef-foot{background:var(--ef-frame);border-top:none;padding:92px 0 26px;font-family:var(--ef-font-sans);position:relative}
.ef-foot::before{content:"";position:absolute;left:0;right:0;top:0;height:68px;background:linear-gradient(180deg,#e2edf8 0,rgba(226,237,248,0) 100%);pointer-events:none}
.ft-grid{display:grid;grid-template-columns:1.35fr 1fr .85fr .95fr;gap:44px;padding-bottom:44px}
.ft-logo img{height:30px;width:auto;filter:brightness(0) invert(1);opacity:.92}
.ft-logo{display:inline-block;margin-bottom:20px;color:#eaf2fa;font-weight:900;letter-spacing:2px;text-decoration:none}
.ft-tel{display:block;font-size:19px;font-weight:800;color:#fff;text-decoration:none;letter-spacing:-.3px}
.ft-tel:hover{color:#bfe0f7}
.ft-mail{display:inline-block;font-size:13px;font-weight:600;color:#d0e2f2;text-decoration:none;margin-top:7px}
.ft-mail:hover{color:#fff}
.ft-hours{font-size:11.5px;color:rgba(255,255,255,.6);margin-top:5px}
.ft-msg{display:flex;gap:8px;margin-top:14px}
.ft-msg a{font-size:11.5px;font-weight:700;color:#eaf4fc;text-decoration:none;border:1px solid rgba(255,255,255,.30);border-radius:999px;padding:6px 13px;transition:all .18s}
.ft-msg a:hover{border-color:#fff;color:#fff}
.ft-rate{display:inline-block;font-size:11.5px;font-weight:600;color:#d0e2f2;text-decoration:none;margin-top:14px}
.ft-rate:hover{color:#fff}
.ft-h{display:inline-flex;align-items:center;gap:10px;font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:#bfe0f7;margin-bottom:14px}
.ft-h::before{content:"";width:20px;height:2px;background:rgba(255,255,255,.45)}
.ft-col a{display:block;font-size:13px;font-weight:500;color:#d0e2f2;text-decoration:none;padding:4.5px 0;transition:color .15s}
.ft-col a:hover{color:#fff}
.ft-col a.ft-more{color:#fff;font-weight:700;margin-top:6px;font-size:12.5px}
.ft-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.14);padding:16px 0;flex-wrap:wrap}
.ft-auth{display:flex;gap:18px}
.ft-auth a{font-size:12.5px;font-weight:600;color:#d0e2f2;text-decoration:none}
.ft-auth a:hover{color:#fff}
.ft-pay{display:flex;gap:8px}
.ft-pay span{font-size:10.5px;font-weight:700;letter-spacing:.5px;color:rgba(255,255,255,.75);border:1px solid rgba(255,255,255,.22);border-radius:9px;padding:5px 11px}
.ft-legal{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid rgba(255,255,255,.14);padding-top:16px;flex-wrap:wrap}
.ft-legal,.ft-legal a{font-size:11px;color:rgba(255,255,255,.6)}
.ft-legal a{text-decoration:none}
.ft-legal a:hover{color:#fff}
.ft-docs{display:flex;gap:22px}
@media (max-width:900px){
.ft-grid{grid-template-columns:1fr 1fr;gap:30px}
.ft-brand{grid-column:1/-1}
.ft-bar,.ft-legal{flex-direction:column;align-items:flex-start}
}
@media (max-width:820px){
.ef-hdr-wrap{padding:0 16px}
.ht-l>span{display:none}
.ht-sep,.ht-socs{display:none}
.ef-hdr-mid{height:auto}
.ef-hdr-mid .ef-hdr-wrap{flex-wrap:wrap;gap:10px 14px;padding-top:12px;padding-bottom:12px}
.hm-logo img{height:36px}
.hm-search{order:3;flex-basis:100%;max-width:none;height:44px}
.hm-phone{margin-left:auto;text-align:right}
.hm-phone a{font-size:16px}
.hm-ico{display:none}
.ef-hdr-nav{height:56px}
.hn-cat{height:40px;padding:0 14px;margin-right:10px;gap:9px}
.hn-menu{overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.hn-menu::-webkit-scrollbar{display:none}
.hn-dd{flex:none}
.hn-dd>a,.hn-dd>span{padding:0 12px;font-size:13px}
.hn-chev{display:none}
.hn-dd:has(>span){display:none}
#efMega{left:0;right:0;flex-direction:column;max-height:65vh;overflow-y:auto;border-radius:0 0 12px 12px}
.mg-rail{width:100%;border-right:none;max-height:none;overflow:visible}
.mg-body{display:none}
}
.ef-foot{background:radial-gradient(62% 130px at 50% 0%, rgba(120,180,225,.38), transparent 72%), linear-gradient(180deg,#e6eff8 0%, #3f86bf 58px, var(--ef-frame) 128px)}
.ef-foot{background:linear-gradient(180deg,#2f74ac 0,var(--ef-frame) 24px);box-shadow:inset 0 1px 0 rgba(165,208,238,.38)}
.ef-foot::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(165,208,238,.55) 22%,rgba(165,208,238,.55) 78%,transparent);pointer-events:none}
@media (max-width:1024px){ .ef-hdr{ display:none; } }

/* обёртка футера из CHISTOVIK (была пропущена class-match'ем): держим ширину 1240 + гасим чужой фон-шестерёнки (в мокапе у .eb-wrap фона нет) */
.ef-foot .eb-wrap{ max-width:1240px; margin:0 auto; padding:0 48px; position:relative; z-index:1; background:none !important; }
@media (max-width:640px){ .ef-foot .eb-wrap{ padding:0 20px; } }
