:root{
  --brand:#1a45b4;
  --brand-2:#1e50bf;
  --brand-dark:#123da0;
  --brand-deep:#0d2f85;
  --brand-night:#081f5c;
  --brand-soft:#e8eefb;
  --cyan:#47bbe6;
  --cyan-soft:#e2f4fb;
  --grad:linear-gradient(105deg,#0d2f85 0%,#1a45b4 55%,#1e50bf 100%);
  --display:"Montserrat","Golos Text",system-ui,sans-serif;
  --bg:#eef2fa;
  --card:#ffffff;
  --text:#15202d;
  --muted:#586779;
  --line:#e2e8f0;
  --orange:#ee8a12;
  --orange-soft:#fff4e3;
  --red:#c8182b;
  --radius:14px;
  --radius-s:10px;
  --font:"Golos Text",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --ease:cubic-bezier(.22,1,.36,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:16px}
body{margin:0;background:var(--bg);color:var(--text);font:400 16px/1.5 var(--font);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0}
h1,h2,h3,p,ul,ol{margin:0}
ul{padding:0;list-style:none}
svg{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
:focus-visible{outline:3px solid var(--cyan);outline-offset:2px;border-radius:6px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;z-index:200;background:#fff;color:var(--brand);padding:10px 16px;border-radius:8px;font-weight:600}
.skip:focus{left:8px}
.wrap{max-width:1840px;margin:0 auto;padding:0 clamp(16px,2.6vw,48px)}

/* ---------- header ---------- */
.util{background:var(--brand-night);color:#c8d6f5;font-size:14px}
.util .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:38px}
.util a{display:inline-flex;align-items:center;gap:8px;transition:color .15s}
.util a:hover{color:#fff}
.util svg{width:18px;height:18px}
.util-right{display:flex;gap:20px}
.head{position:relative;overflow:hidden;isolation:isolate;background:var(--grad);color:#fff}
.head::before,.head::after{content:"";position:absolute;z-index:-1;border-radius:50%;pointer-events:none}
.head::before{width:2400px;height:2400px;left:max(420px,calc(50% - 160px));top:-1150px;background:#2153c6;box-shadow:-14px 0 0 -4px rgba(71,187,230,.35)}
.head::after{width:2400px;height:2400px;left:max(450px,calc(50% - 130px));top:-1150px;border:3px solid rgba(255,255,255,.5)}
.head .wrap{display:flex;align-items:center;gap:24px;min-height:108px;padding-block:16px}
.logo{flex-shrink:0;display:block}
.logo img{width:236px;height:68px}
.head-tools{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:10px;width:min(780px,100%)}
.search{display:flex;width:100%;background:#fff;border-radius:999px;padding:4px;box-shadow:0 0 0 0 rgba(255,255,255,.4);transition:box-shadow .2s}
.search:focus-within{box-shadow:0 0 0 4px rgba(71,187,230,.55)}
.search input{flex:1;min-width:0;border:0;outline:0;background:none;padding:8px 16px;color:var(--text);font-size:15px}
.search input::placeholder{color:#7d8a99}
.search button{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--grad);color:#fff;transition:filter .15s}
.search button:hover{filter:brightness(1.15)}
.head-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px 16px;font-size:14px}
.head-links a{color:#dbe9f8;transition:color .15s}
.head-links a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.menu-btn{display:none;align-items:center;gap:8px;height:44px;padding:0 14px;border-radius:var(--radius-s);background:rgba(255,255,255,.14);color:#fff;font-weight:600}
.menu-btn:hover{background:rgba(255,255,255,.22)}
.hot{background:var(--card);border-bottom:1px solid var(--line);font-size:14px;font-weight:600}
.hot .wrap{display:flex;align-items:center;gap:10px 24px;flex-wrap:wrap;min-height:60px;padding-block:10px}
.hot a{display:inline-flex;align-items:center;gap:8px;color:var(--brand-deep)}
.hot svg{color:var(--cyan)}
.hot a:hover{text-decoration:underline;text-underline-offset:3px}
.hot svg{width:18px;height:18px}
.hot .hot-red{margin-left:auto;color:var(--red)}
.hot .today-mini{display:none}
.hot .chip-m,.search-btn,.ticker-more,.ticker-all{display:none}
.hot-main{display:flex;flex-wrap:wrap;gap:8px}
.hot .chip{gap:8px;padding:8px 16px;border-radius:999px;background:var(--grad);color:#fff;transition:filter .15s,transform .15s}
.hot .chip svg{color:var(--cyan)}
.hot .chip:hover{text-decoration:none;filter:brightness(1.15)}
.hot .chip:active{transform:scale(.97)}
.hot .chip-light{background:var(--cyan-soft);color:var(--brand-deep)}
.hot .chip-light svg{color:var(--brand)}
.hot .chip-light:hover{background:#cdeaf7;filter:none}

.concept{display:inline-block;align-self:center;margin:0;padding:2px 10px;border-radius:999px;background:var(--orange);color:#fff;font-size:12px;font-weight:600;line-height:1.6;white-space:nowrap}

.c-short{display:none}
@media (max-width:1440px){.c-short{display:inline}.c-long{display:none}}

/* ---------- layout ---------- */
.layout{display:grid;grid-template-columns:clamp(264px,15vw,300px) minmax(0,1fr) clamp(296px,18vw,340px);grid-template-areas:"left center right";gap:24px;padding-top:24px;padding-bottom:48px;align-items:start}
.col-left{grid-area:left;display:grid;gap:16px}
.col-center{grid-area:center;display:grid;grid-template-columns:minmax(0,1fr);gap:20px;min-width:0}
.col-left,.col-right{min-width:0}
.col-right{grid-area:right;display:grid;gap:16px}

.block{background:var(--card);border-radius:var(--radius);overflow:hidden}
.block-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:14px 18px 0}
.block-head h2,.block-head h3{font:800 13px/1.3 var(--display);text-transform:uppercase;letter-spacing:.02em;color:var(--brand-deep)}
.block-body{padding:12px 18px 18px;font-size:14px}
.rss{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;color:var(--brand);background:var(--cyan-soft)}
.rss svg{width:16px;height:16px}

/* main menu */
.col-left .menu{background:none;border-radius:0}
.menu ul{padding:0;display:grid;gap:2px}
.menu a{display:flex;align-items:center;gap:12px;padding:6px 10px 6px 6px;border-radius:12px;font-size:15px;font-weight:500;line-height:1.3;transition:background .15s,color .15s}
.menu .mi{display:grid;place-items:center;width:34px;height:34px;flex-shrink:0;border-radius:10px;background:var(--card);color:var(--brand);box-shadow:inset 0 0 0 1px var(--line);transition:background .2s,color .2s,box-shadow .2s}
.menu .mi svg{width:18px;height:18px}
.menu a:hover{background:var(--card);color:var(--brand-deep)}
.menu a:hover .mi,.menu a[aria-current] .mi{background:var(--grad);color:#fff;box-shadow:none}
.menu a[aria-current]{background:var(--card);color:var(--brand-deep);font-weight:600}

.quality{display:grid;gap:10px}
.quality a{position:relative;overflow:hidden;isolation:isolate;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-radius:var(--radius);background:var(--grad);color:#fff;font-weight:600;font-size:15px;line-height:1.3;transition:filter .15s,transform .15s}
.quality a::after{content:"";position:absolute;z-index:-1;width:240px;height:240px;right:-150px;top:-60px;border-radius:50%;border:2px solid rgba(255,255,255,.4);background:#2153c6}
.quality a:hover{filter:brightness(1.12)}
.quality a:active{transform:scale(.98)}
.quality svg{width:26px;height:26px;color:var(--cyan)}

.ticks li{position:relative;padding-left:22px;margin-top:8px;line-height:1.35}
.ticks li::before{content:"";position:absolute;left:2px;top:.35em;width:9px;height:9px;border-radius:2px;background:var(--cyan);transform:rotate(45deg)}
.ticks a:hover,.dated a:hover,.notices a:hover,.more-links a:hover{color:var(--brand);text-decoration:underline;text-underline-offset:3px}
.more-links{display:grid;gap:4px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.more-links a{color:var(--brand);font-weight:500}
.dated li{display:grid;gap:2px;padding:9px 0;border-top:1px solid var(--line);line-height:1.35}
.dated li:first-child{border-top:0;padding-top:2px}
.dated time{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}

/* ---------- center ---------- */
.ticker{display:flex;align-items:center;gap:14px;background:var(--card);border-radius:var(--radius);padding:10px 16px;font-size:15px;min-height:48px}
.ticker b{flex-shrink:0;padding:5px 12px;border-radius:999px;background:var(--grad);color:#fff;font:800 11px/1.3 var(--display);text-transform:uppercase;letter-spacing:.03em}
.ticker-items{position:relative;flex:1;min-width:0}
.ticker-items a{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--brand-dark);animation:tick .5s var(--ease)}
.ticker-items a[hidden]{display:none}
.ticker-items a:hover{text-decoration:underline;text-underline-offset:3px}
@keyframes tick{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

.hero{display:flex;border-radius:var(--radius);overflow:hidden;background:var(--brand-deep);aspect-ratio:1695/613}
.hero-static{flex:0 0 39.1%;display:block}
.hero-static img{width:100%;height:100%;object-fit:cover}
.slider{position:relative;flex:1;min-width:0;overflow:hidden}
.slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .6s var(--ease),visibility 0s .6s}
.slide.is-active{opacity:1;visibility:visible;transition:opacity .6s var(--ease)}
.slide img{width:100%;height:100%;object-fit:cover}
.slider .nav{position:absolute;top:50%;translate:0 -50%;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.88);color:var(--brand-dark);opacity:0;transition:opacity .2s,background .15s}
.slider:hover .nav,.slider:focus-within .nav{opacity:1}
.slider .nav:hover{background:#fff}
.slider .prev{left:12px}.slider .next{right:12px}
.dots{position:absolute;left:0;right:0;top:12px;display:flex;justify-content:center;gap:6px;flex-wrap:wrap;padding:0 56px}
.dot{width:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.55);transition:width .3s var(--ease),background .2s}
.dot.is-active{width:22px;background:#fff}

.news,.news-teaser,.invite-wide,.videos,.past,.facnews{background:var(--card);border-radius:var(--radius);padding:22px 24px 24px}
.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px 24px;flex-wrap:wrap;margin-bottom:18px}
.section-head h2{position:relative;padding-left:16px;font:800 24px/1.15 var(--display);text-transform:uppercase;letter-spacing:.01em;color:var(--brand-deep)}
.section-head h2::before{content:"";position:absolute;left:0;top:.12em;bottom:.12em;width:5px;border-radius:3px;background:linear-gradient(var(--cyan),var(--brand))}
.feeds{display:flex;flex-wrap:wrap;gap:8px;width:100%}
.feeds li{display:flex;align-items:center;gap:6px}
.feeds a{display:inline-block;padding:6px 12px;border-radius:999px;background:var(--cyan-soft);color:var(--brand-deep);font-size:13px;font-weight:500;line-height:1.3;transition:background .15s,color .15s}
.feeds a:hover{background:var(--brand);color:#fff}
.new{font-size:11px;font-weight:700;color:var(--red);text-transform:uppercase}
.link-more{display:inline-flex;align-items:center;gap:6px;color:var(--brand);font-weight:600;font-size:15px;padding-top:6px}
.link-more svg{width:18px;height:18px;transition:transform .2s var(--ease)}
.link-more:hover svg,.btn-more:hover svg{transform:translateX(3px)}

.news-list{display:grid}
.news-item{display:grid;grid-template-columns:220px 1fr;gap:20px;padding:18px 0;border-top:1px solid var(--line)}
.news-item:first-child{border-top:0;padding-top:4px;grid-template-columns:1fr;gap:16px;padding-bottom:24px}
.news-item:first-child .news-img{aspect-ratio:16/8}
.news-item:first-child h3{font-size:24px;line-height:1.3}
.news-item:first-child p{font-size:16px;-webkit-line-clamp:4}
.news-img{display:block;border-radius:var(--radius-s);overflow:hidden;isolation:isolate;transform:translateZ(0);aspect-ratio:3/2;background:var(--brand-soft)}
.news-img img{width:100%;height:100%;object-fit:cover;backface-visibility:hidden;will-change:transform}
.news-item time{display:block;font-size:13px;color:var(--muted);margin-bottom:4px}
.news-item h3{font-size:18px;font-weight:600;line-height:1.35;color:var(--brand-deep)}
.news-item h3 a:hover{color:var(--brand);text-decoration:underline;text-underline-offset:3px}
.news-item p{margin-top:8px;color:#36424f;font-size:15px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.btn-more{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:8px;min-height:50px;border-radius:999px;background:var(--grad);color:#fff;font:700 14px/1 var(--display);text-transform:uppercase;letter-spacing:.02em;transition:filter .15s}
.btn-more:hover{filter:brightness(1.15)}
.btn-more svg{transition:transform .2s var(--ease)}

.video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px 24px}
.video{display:grid;grid-template-columns:132px 1fr;gap:14px;align-items:center;font-size:15px;font-weight:500;line-height:1.35}
.video .thumb{position:relative;border-radius:8px;overflow:hidden;aspect-ratio:3/2}
.video .thumb img{width:100%;height:100%;object-fit:cover}
.video .thumb i{position:absolute;inset:0;display:grid;place-items:center;background:rgba(13,47,133,.35);color:#fff;transition:background .2s}
.video .thumb i svg{width:30px;height:30px;padding:6px;border-radius:50%;background:var(--cyan)}
.video:hover .thumb i{background:rgba(10,30,60,.05)}
.video:hover span:last-child{color:var(--brand)}

.past-list{columns:2;column-gap:32px}
.past-list li{break-inside:avoid;display:grid;grid-template-columns:96px 1fr;gap:12px;padding:8px 0;font-size:15px;line-height:1.4}
.past-list time{color:var(--muted);font-size:14px}
.past-list a:hover{color:var(--brand);text-decoration:underline;text-underline-offset:3px}

.fac-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px 18px}
.fac{display:flex;flex-direction:column;gap:10px}
.fac-img{display:block;border-radius:var(--radius-s);overflow:hidden;isolation:isolate;transform:translateZ(0);aspect-ratio:3/2;background:var(--brand-soft)}
.fac-img img{width:100%;height:100%;object-fit:cover;backface-visibility:hidden;will-change:transform}
.fac h3{font-size:15px;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.fac h3 a:hover{color:var(--brand)}
.fac-tag{align-self:flex-start;margin-top:auto;padding:4px 10px;border-radius:8px;background:var(--cyan-soft);color:var(--brand-deep);font-size:12px;font-weight:500;line-height:1.35}
.fac-tag:hover{background:var(--brand);color:#fff}

/* ---------- right ---------- */
.pay{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:var(--radius);background:var(--card);color:var(--brand-dark);font-size:13px;line-height:1.35;transition:box-shadow .2s}
.pay svg{width:40px;height:40px;padding:8px;border-radius:10px;background:var(--grad);color:var(--cyan)}
.pay b{display:block;font-size:15px;margin-bottom:2px}
.pay:hover{box-shadow:0 0 0 2px var(--cyan)}
.side-slider{position:relative;background:var(--card);border-radius:var(--radius);overflow:hidden}
.side-slide{display:none}
.side-slide.is-active{display:block;animation:fade .45s var(--ease)}
.side-slide img{width:100%;aspect-ratio:260/220;object-fit:cover}
@keyframes fade{from{opacity:.2}to{opacity:1}}
.side-nav{display:flex;align-items:center;justify-content:space-between;padding:6px 8px}
.side-nav button{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:var(--brand-dark);transition:background .15s}
.side-nav button:hover{background:var(--brand-soft)}
.side-nav .count{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.today{background:var(--orange-soft)}
.today .block-head{background:var(--orange);padding:12px 18px}
.today .block-head h3{color:#fff}
.today .ticks li::before{background:var(--orange)}
.today-date{display:flex;gap:10px;line-height:1.45}
.today-date svg{color:var(--orange);margin-top:2px}
.today-date a{color:var(--brand);text-decoration:underline;text-underline-offset:3px}
.today-date em{font-style:normal;font-weight:600}
.today .ticks{margin-top:10px;padding-top:6px;border-top:1px solid #f3d9b4}
.js .notices:not(.is-open) .n-more{display:none}
.notice-more,.invite-more{display:flex;align-items:center;justify-content:center;width:100%;min-height:40px;margin-top:10px;border-radius:999px;background:var(--cyan-soft);color:var(--brand-deep);font-weight:600;font-size:14px;transition:background .15s}
.notice-more:hover,.invite-more:hover{background:#cdeaf7}
.invite-more{width:auto;padding:0 22px;margin-top:6px}
.invite-filter{margin:14px 0 18px}
.invite-cols li[hidden],.invite-more[hidden]{display:none}
/* мои пары */
.mypairs{margin-top:12px;padding-top:12px;border-top:1px solid #f3d9b4;font-size:14px}
.mp-start{display:flex;align-items:center;justify-content:center;width:100%;min-height:40px;border-radius:999px;background:var(--orange);color:#fff;font-weight:600;font-size:14px;transition:filter .15s}
.mp-start:hover{filter:brightness(1.08)}
.mp-intro{margin:0 0 10px;line-height:1.4;color:var(--muted)}
.mp-field{display:block;margin-bottom:8px}
.mp-field span{display:block;margin-bottom:3px;font-size:12px;font-weight:600;color:var(--muted)}
.mp-field select{width:100%;height:38px;padding:0 10px;border:1px solid #f0d2a6;border-radius:var(--radius-s);background:#fff;color:var(--text);font:inherit;font-size:14px}
.mp-field select:disabled{opacity:.55}
.mp-field select:focus-visible{outline:2px solid var(--brand);outline-offset:1px}
.mp-cancel{margin-top:4px;color:var(--brand);font-weight:600;font-size:13px}
.mp-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;line-height:1.35}
.mp-head b{overflow-wrap:anywhere}
.mp-change{flex-shrink:0;color:var(--brand);font-size:13px;font-weight:600}
.mp-change:hover,.mp-cancel:hover,.mp-full:hover{text-decoration:underline;text-underline-offset:3px}
.mp-note{margin:8px 0 0;color:var(--muted);line-height:1.4}
.mp-note a{color:var(--brand);text-decoration:underline}
.mp-next{margin:8px 0 0;font-weight:600;font-size:13px}
.mp-next:first-letter{text-transform:uppercase}
.mp-list{list-style:none;margin:8px 0 0;padding:0}
.mp-pair{display:grid;grid-template-columns:44px 1fr;gap:10px;padding:8px 0;border-top:1px dashed #f0d2a6}
.mp-pair:first-child{border-top:0}
.mp-time{display:flex;flex-direction:column;font-size:12px;line-height:1.3;color:var(--muted);font-variant-numeric:tabular-nums}
.mp-time b{font-size:14px;color:var(--text)}
.mp-what{min-width:0;line-height:1.35}
.mp-what b{display:block;font-weight:600}
.mp-what small{display:block;margin-top:2px;font-size:12px;color:var(--muted)}
.mp-what em{display:inline-block;margin-bottom:3px;padding:1px 8px;border-radius:999px;background:var(--orange);color:#fff;font-style:normal;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.mp-pair.is-now{margin:0 -8px;padding:8px;border-radius:var(--radius-s);background:#fff;border-top-color:transparent;box-shadow:0 0 0 1px #f0d2a6}
.mp-pair.is-past{opacity:.5}
.mp-full{display:inline-block;margin-top:8px;color:var(--brand);font-weight:600;font-size:13px}
.mp-tabs{display:flex;gap:2px;margin:10px 0 2px;padding:3px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px #f0d2a6}
.mp-tabs button{flex:1;min-height:30px;padding:0 8px;border-radius:999px;color:var(--text);font-size:13px;font-weight:600;transition:background .15s,color .15s}
.mp-tabs button:hover{color:var(--orange)}
.mp-tabs button[aria-pressed=true]{background:var(--orange);color:#fff}
.mp-tabs button:focus-visible{outline:2px solid var(--brand);outline-offset:1px}
.mp-who{margin:0 0 10px}
.mp-body .mp-next{margin-top:12px;text-transform:none}
.mp-body .mp-next:first-letter{text-transform:uppercase}
.mp-body .mp-next.is-today{color:var(--orange)}
.mp-body>.mp-list:first-child{margin-top:4px}
.mp-slot{padding-top:10px}
.mp-slot .mp-tabs button{min-height:36px;font-size:14px}
.mp-sum{display:none}
.mp-slot .mp-sum{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;border-radius:var(--radius-s);text-align:left}
.mp-slot .mp-sum:focus{outline:none}
.mp-slot .mp-sum:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.mp-badge{flex-shrink:0;min-width:76px;padding:5px 8px;border-radius:999px;background:var(--orange-soft);color:#b35f00;font:800 12px/1.3 var(--display);text-align:center;text-transform:uppercase;letter-spacing:.03em;font-variant-numeric:tabular-nums}
.mp-badge.is-now{background:var(--orange);color:#fff}
.mp-sum-t{flex:1;min-width:0;line-height:1.3}
.mp-sum-t small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mp-sum-t b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:600;font-size:14px;color:var(--brand-dark)}
.mp-sum-t small{margin-top:2px;font-size:12px;color:var(--muted)}
.mp-sum i{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--cyan-soft);color:var(--brand);transition:transform .25s var(--ease)}
.mp-sum svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.mp-slot .mypairs.is-open .mp-sum i{transform:rotate(180deg)}
.mp-slot .mypairs:not(.is-open) .mp-all{display:none}
.mp-slot .mypairs.is-open .mp-all{margin:8px 4px 4px 2px;padding-top:12px;border-top:1px solid var(--line)}
.mp-slot .mypairs{margin:0;padding:8px 8px 8px 10px;border:0;border-radius:var(--radius);background:var(--card)}
.soon .block-head{position:relative;overflow:hidden;isolation:isolate;background:var(--grad);padding:12px 18px}
.soon .block-head::after{content:"";position:absolute;z-index:-1;width:200px;height:200px;right:-120px;top:-40px;border-radius:50%;border:2px solid rgba(255,255,255,.45);background:#2153c6}
.soon .block-head h3{color:#fff}
.soon-list a{font-weight:500}
.where{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--muted)}
.where svg{width:13px;height:13px}
.report{display:block;padding:14px 18px;border-radius:var(--radius);background:#fff;border:2px solid #1b1b1b;font-size:14px;line-height:1.3;transition:background .15s}
.report span{display:inline-block;margin-top:6px;padding:2px 8px;background:var(--red);color:#fff;font-weight:700;text-transform:uppercase;letter-spacing:.02em}
.report:hover{background:#fff6f6}
.notices li{padding:12px 0;border-top:1px solid var(--line)}
.notices li:first-child{border-top:0;padding-top:2px}
.notices time{font-size:13px;color:var(--muted)}
.notices b{display:block;margin:2px 0 4px;line-height:1.35}
.notices p{color:#3d4957;line-height:1.45}
.notices p a{color:var(--brand);font-weight:500}

/* ---------- footer ---------- */
.site-footer{position:relative;overflow:hidden;isolation:isolate;background:var(--grad);color:#d3def7;font-size:14px}
.site-footer::before{content:"";position:absolute;z-index:-1;width:2400px;height:2400px;left:calc(50% - 22px);top:-1000px;border-radius:50%;background:#2153c6;border:3px solid rgba(255,255,255,.4)}
.foot-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding-top:40px;padding-bottom:36px}
.vcard img{margin-bottom:16px}
.vcard .fn{color:#fff;font-weight:600;font-size:15px;margin-bottom:12px}
.contacts{display:grid;gap:10px}
.ct{display:flex;align-items:flex-start;gap:12px;line-height:1.4}
.ct i{display:grid;place-items:center;width:34px;height:34px;flex-shrink:0;border-radius:50%;background:rgba(255,255,255,.1);color:var(--cyan)}
.ct i svg{width:17px;height:17px}
.ct small{display:block;font-size:12px;color:#a9bde8}
.ct span{color:#fff}
.foot-list{display:flex;flex-direction:column;gap:10px}
.vcard .foot-list{margin-top:16px;font-size:13px}
.site-footer a{color:#fff}
.site-footer a:hover{text-decoration:underline;text-underline-offset:3px}
.links{display:flex;flex-direction:column;gap:14px}
.hotline{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border-radius:var(--radius-s);background:rgba(255,255,255,.07)}
.hotline b{color:#fff}
.hotline a{font-weight:600}
.hotline small{display:block;font-weight:400;font-size:13px;color:#c3d2f2}
.socials{display:flex;gap:10px}
.socials a{display:block;border-radius:50%;transition:transform .15s}
.socials a:hover{transform:translateY(-2px)}
.bottom{background:var(--brand-night);color:#a9b9e0;font-size:13px}
.bottom .wrap{padding-top:18px;padding-bottom:18px;display:grid;gap:6px}
.bottom a{color:#d4e2f2}

/* ---------- drawer ---------- */
.drawer{position:fixed;left:0;right:0;top:0;height:100vh;height:100lvh;z-index:100;background:rgba(6,20,40,.55)}
.drawer[hidden]{display:none}
.drawer-panel{position:absolute;left:0;top:0;height:100%;width:min(360px,88vw);background:var(--card);overflow:auto;overscroll-behavior:contain;padding:calc(12px + env(safe-area-inset-top)) 12px calc(96px + env(safe-area-inset-bottom));animation:slidein .3s var(--ease)}
@keyframes slidein{from{transform:translateX(-100%)}to{transform:none}}
.drawer-top{display:flex;justify-content:space-between;align-items:center;padding:6px 8px 12px}
.drawer-top button{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--bg)}
.drawer-panel .menu a{padding:7px 8px}
.drawer-panel .menu .mi{background:var(--brand-soft);box-shadow:none}
.drawer-panel .menu a:hover,.drawer-panel .menu a[aria-current]{background:var(--brand-soft)}
.drawer-extra{display:flex;flex-wrap:wrap;gap:8px 16px;padding:16px 12px;margin-top:8px;border-top:1px solid var(--line);font-size:14px;color:var(--brand)}

/* ---------- cookie ---------- */
.cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:90;max-width:760px;margin:0 auto;display:flex;align-items:center;gap:16px;padding:14px 16px 14px 20px;border-radius:var(--radius);background:var(--brand-night);color:#dbe7f5;font-size:12.5px;line-height:1.45;box-shadow:0 12px 32px rgba(5,25,50,.35)}
.cookie[hidden]{display:none}
.cookie button{flex-shrink:0;padding:10px 18px;border-radius:999px;background:#fff;color:var(--brand-dark);font-weight:600;font-size:14px}
.cookie button:hover{background:var(--brand-soft)}

/* ---------- «показать ещё» и короткие ссылки (работают только на телефоне) ---------- */
.more-btn{display:none}
.lm-short{display:none}
.cookie-actions{display:flex;gap:8px;flex-shrink:0}
.cookie-more{display:none}


/* ---------- страницы разделов ---------- */
.sec{display:grid;grid-template-columns:clamp(264px,15vw,300px) minmax(0,1fr);gap:24px;padding-top:24px;padding-bottom:56px;align-items:start}
.sec-menu{position:sticky;top:16px}
.sec-main{min-width:0}
.sec-hero{position:relative;overflow:hidden;isolation:isolate;padding:28px 32px 30px;border-radius:var(--radius);background:var(--grad);color:#fff}
.sec-hero::before,.sec-hero::after{content:"";position:absolute;z-index:-1;border-radius:50%}
.sec-hero::after{width:560px;height:560px;right:-250px;top:-220px;border:2px solid rgba(255,255,255,.4);background:#2153c6}
.sec-hero::before{width:300px;height:300px;right:-40px;bottom:-210px;border:2px solid rgba(71,187,230,.55)}
.sec-icon{position:absolute;z-index:0;pointer-events:none;right:96px;top:50%;transform:translateY(-50%);color:rgba(255,255,255,.9)}
.sec-icon svg{width:112px;height:112px;stroke-width:1.1}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:14px;color:#c8d6f5}
.crumbs a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.sec-hero h1{max-width:30ch;margin-top:14px;font:800 clamp(24px,2.6vw,34px)/1.15 var(--display);text-transform:uppercase;letter-spacing:.01em;text-wrap:balance}
.sec-intro{display:grid;gap:8px;max-width:72ch;margin-top:14px;color:#dbe6fb;font-size:15px}
.sec-count{display:inline-block;margin-top:18px;padding:6px 14px;border-radius:999px;background:rgba(255,255,255,.14);font-size:14px;font-weight:600}
.sec-tools{display:flex;align-items:center;gap:16px;margin-top:20px}
.sec-filter{display:flex;align-items:center;gap:10px;flex:1;max-width:520px;height:48px;padding:0 18px;border-radius:999px;background:var(--card);color:var(--muted);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .15s}
.sec-filter:focus-within{box-shadow:inset 0 0 0 2px var(--brand)}
.sec-filter input{flex:1;min-width:0;border:0;outline:0;background:none;color:var(--text);font-size:15px}
.sec-found{font-size:14px;color:var(--muted)}
.filters-btn{position:relative;display:inline-flex;align-items:center;gap:8px;height:48px;padding:0 20px;border-radius:999px;background:var(--card);color:var(--brand-deep);box-shadow:inset 0 0 0 1px var(--line);font-weight:600;font-size:15px;transition:background .2s,color .2s,box-shadow .2s}
.filters-btn:hover{box-shadow:inset 0 0 0 1px var(--brand)}
.filters-btn[aria-expanded=true]{background:var(--grad);color:#fff;box-shadow:none}
.filters-dot{position:absolute;top:9px;right:12px;width:10px;height:10px;border-radius:50%;background:var(--dot,var(--cyan));box-shadow:0 0 0 2px var(--card)}
.filters-dot[hidden]{display:none}
.legend{margin-top:14px;padding:16px 18px;border-radius:var(--radius);background:var(--card);animation:tick .35s var(--ease)}
.legend[hidden]{display:none}
.legend p{font-size:14px;color:var(--muted)}
.legend ul{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.legend button{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 6px 0 12px;border-radius:999px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line);font-size:14px;font-weight:500;transition:background .2s,color .2s,box-shadow .2s}
.legend i{width:12px;height:12px;border-radius:50%;background:linear-gradient(135deg,var(--c1),var(--c2))}
.legend button span{min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:var(--card);color:var(--muted);font-size:12px;font-weight:600;line-height:24px;text-align:center}
.legend button:hover{box-shadow:inset 0 0 0 1px var(--c1)}
.legend button[aria-pressed=true]{background:linear-gradient(135deg,var(--c1),var(--c2));color:#fff;box-shadow:none}
.legend button[aria-pressed=true] i{background:#fff}
.legend button[aria-pressed=true] span{background:rgba(255,255,255,.22);color:#fff}
.sec-group{margin-top:28px}
.sec-group:first-child{margin-top:20px}
.sec-group h2{position:relative;padding-left:14px;font:800 15px/1.3 var(--display);text-transform:uppercase;color:var(--brand-deep);text-wrap:balance}
.sec-group h2::before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:4px;border-radius:2px;background:var(--cyan)}
.sec-group h2+.tiles{margin-top:14px}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.tile[hidden]{display:none}
.tile a{position:relative;overflow:hidden;isolation:isolate;display:flex;flex-direction:column;gap:6px;height:100%;min-height:118px;padding:16px 18px 18px;border-radius:var(--radius);background:var(--card);transition:transform .3s var(--ease),box-shadow .3s}
.tile a::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(135deg,var(--c1) 0%,var(--c2) 100%);opacity:0;transition:opacity .3s}
.tile-art{position:absolute;z-index:-1;right:-26px;bottom:-30px;color:rgba(255,255,255,.16);opacity:0;transform:translate(16px,16px) rotate(-12deg) scale(.85);transition:opacity .3s,transform .5s var(--ease)}
.tile-art svg{width:118px;height:118px;stroke-width:1.3}
.tile a:hover,.tile a:focus-visible{transform:translateY(-3px);box-shadow:0 16px 32px -12px var(--c1)}
.tile a:hover::before,.tile a:focus-visible::before{opacity:1}
.tile a:hover .tile-art,.tile a:focus-visible .tile-art{opacity:1;transform:none}
.tile-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
.tile-n{font:800 13px/1 var(--display);color:var(--c1);letter-spacing:.04em;transition:color .3s}
.tile-go{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--cyan-soft);color:var(--brand);transition:background .3s,color .3s,transform .3s var(--ease)}
.tile-go svg{width:16px;height:16px}
.tile-text{display:flex;flex-direction:column;gap:6px;flex:1}
.tile-title{font-weight:600;font-size:16px;line-height:1.3;color:var(--text);transition:color .3s}
.tile-note{font-size:14px;color:var(--muted);line-height:1.4;transition:color .3s}
.tile-host{margin-top:auto;padding-top:6px;font-size:13px;color:var(--muted);transition:color .3s}
.tile a:hover :is(.tile-title,.tile-n),.tile a:focus-visible :is(.tile-title,.tile-n){color:#fff}
.tile a:hover :is(.tile-note,.tile-host),.tile a:focus-visible :is(.tile-note,.tile-host){color:rgba(255,255,255,.82)}
.tile a:hover .tile-go,.tile a:focus-visible .tile-go{background:rgba(255,255,255,.2);color:#fff;transform:translateX(2px)}
.tile.has-img a{padding-top:0}
.cover{position:relative;overflow:hidden;isolation:isolate;display:flex;flex-direction:column;justify-content:center;height:136px;margin:0 -18px 14px;padding:0 22px;color:#fff;line-height:1.05}
.cover b,.cover small{display:block}
.cover::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(120deg,transparent 55%,rgba(255,255,255,.12));opacity:0;transition:opacity .4s}
.tile a:hover .cover::after{opacity:1}
/* газета */
.cv-gazeta{align-items:center;padding:0;background:#f3eee3 repeating-linear-gradient(0deg,transparent 0 5px,rgba(120,100,60,.05) 5px 6px);color:#4a4a4a;text-align:center}
.cv-g-top{font:600 11px/1 var(--font);letter-spacing:.62em;text-transform:uppercase;margin-right:-.62em}
.cv-g-mast{margin-top:4px;padding:2px 0;border-block:1px solid #b9b2a3;font:700 27px/1 Georgia,"PT Serif","Times New Roman",serif;text-transform:uppercase;letter-spacing:-.01em;color:#3b3b3b}
.cv-g-tag{margin-top:6px;font:500 12px/1 var(--font);color:#d0141f}
.cv-g-bar{position:absolute;left:0;right:0;bottom:0;padding:5px 0;background:#e3131c;color:#fff;font:700 10px/1 var(--font);letter-spacing:.5em;text-transform:uppercase}
/* вестник */
.cv-vestnik{align-items:center;text-align:center;background:radial-gradient(120% 90% at 20% 0%,#7cc4ff 0%,transparent 60%),linear-gradient(135deg,#1858c4,#3b8fe6)}
.cv-vestnik::before{content:"";position:absolute;z-index:-1;left:-30%;right:-30%;top:58%;height:120px;border-radius:50%;border-top:2px solid rgba(255,255,255,.35)}
.cv-v-k{font:italic 400 14px/1.2 Georgia,"PT Serif",serif;color:#e6f1ff}
.cv-v-t{margin:4px 0;font:800 27px/1 var(--display);text-transform:uppercase;letter-spacing:.01em}
/* интеллект */
.cv-intel{background:linear-gradient(90deg,#1b4f8f 0 64%,#173b6b 64%);}
.cv-intel::before{content:"";position:absolute;z-index:-1;right:-40px;top:-50px;width:170px;height:170px;border-radius:50%;border:18px solid rgba(255,255,255,.06)}
.cv-i-k{position:absolute;top:16px;right:18px;font:500 11px/1.15 var(--font);text-align:right;color:#cfe0f7}
.cv-i-t{font:800 17px/1.12 var(--display);text-transform:uppercase}
.cv-i-t b{display:inline;color:var(--cyan)}
/* шаг в науку */
.cv-step{flex-direction:row;align-items:center;gap:14px;background:linear-gradient(135deg,#24486a,#3d6d93)}
.cv-step svg{width:58px;height:58px;stroke:#fff;stroke-width:2.2}
.cv-step b{font:700 23px/1 var(--font);text-transform:uppercase;letter-spacing:.01em}
.cv-step small{margin-top:5px;font:700 10px/1 var(--font);letter-spacing:.24em;text-transform:uppercase;color:#d5e4f2}
/* видеогалерея */
.cv-video{flex-direction:row;align-items:center;gap:12px;padding:0 18px;background:linear-gradient(115deg,#2350c8 0 13%,#f5bf22 13% 19%,#12297a 19%)}
.cv-play{display:grid;place-items:center;width:46px;height:46px;flex-shrink:0;border-radius:50%;background:#fff;color:#12297a;box-shadow:0 8px 20px rgba(0,0,0,.25)}
.cv-play svg{width:24px;height:24px;margin-left:3px}
.cv-video b{font:800 italic 17px/1 var(--display);text-transform:uppercase}
/* сми */
.cv-smi{background:radial-gradient(90% 120% at 85% 50%,#1a3d8f,#060d24 70%)}
.cv-wave{position:absolute;z-index:-1;left:0;right:0;bottom:0;height:70%;display:flex;align-items:flex-end;gap:5px;padding:0 10px;opacity:.55}
.cv-wave i{flex:1;border-radius:2px 2px 0 0;background:linear-gradient(0deg,#1d6bff,#47bbe6)}
.cv-smi b{font:800 46px/1 var(--display)}
.cv-smi small{margin-top:4px;font:700 13px/1 var(--font);letter-spacing:.3em;text-transform:uppercase}
/* соцсети */
.cv-social{flex-direction:row;align-items:center;gap:16px;padding-left:0;background:linear-gradient(110deg,#fff 40%,color-mix(in srgb,var(--s2) 22%,#fff));color:#1b1f2a}
.cv-social::before{content:"";position:absolute;z-index:-1;right:-34px;top:-44px;width:84px;height:84px;border-radius:50%;background:linear-gradient(135deg,var(--s1),var(--s2));opacity:.9}
.cv-disc{display:grid;place-items:center;width:132px;height:132px;margin-left:-38px;flex-shrink:0;border-radius:50%;background:var(--disc,linear-gradient(135deg,var(--s1),var(--s2)));box-shadow:0 0 0 10px color-mix(in srgb,var(--s1) 18%,transparent)}
.cv-disc img{width:52px;height:52px;margin-left:30px}
.cv-social[style*="transparent"] .cv-disc img{width:64px;height:64px;border-radius:16px}
.cv-name b{font:800 14px/1.05 var(--display);text-transform:uppercase;letter-spacing:.01em}
.cv-name small{margin:2px 0;font:500 12px/1.1 var(--font);text-transform:uppercase;letter-spacing:.04em;color:#4b5565}
.cv-own .cv-name b:first-child{font-size:16px}
.tile a:hover .cv-disc img{transform:scale(1.08)}
.cv-disc img{transition:transform .4s var(--ease)}
/* пункты раздела: сгруппированный список, как в настройках телефона */
.tiles:not(:has(.has-img)){display:block;border-radius:16px;background:var(--card);overflow:hidden}
.tile:not(.has-img) a{flex-direction:row;align-items:center;gap:14px;min-height:60px;padding:11px 14px;border-radius:0;background:none;transform:none!important;box-shadow:none;transition:background .2s,box-shadow .2s}
.tile:not(.has-img) a::before{display:none}
.tile:not(.has-img):not(:first-child) a::after{content:"";position:absolute;left:64px;right:0;top:0;height:1px;background:var(--line)}
.tile:not(.has-img) a:is(:hover,:active){background:#f5f8fe;box-shadow:inset 0 0 0 1px #d7e1f5!important}
.tile:not(.has-img) a:hover .tile-title{color:var(--brand)!important}
.tile:not(.has-img) a:hover .tile-go{color:var(--brand)!important}
.tile:not(.has-img) .tile-art{position:static;order:-1;display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border-radius:10px;background:linear-gradient(135deg,var(--c1),var(--c2));color:#fff;opacity:1;transform:none}
.tile:not(.has-img) .tile-art svg{width:20px;height:20px;stroke-width:1.9}
.tile:not(.has-img) .tile-top{display:contents}
.tile-n{display:none}
.tile:not(.has-img) .tile-go{order:3;width:auto;height:auto;background:none!important;color:#a3afc2!important;transform:none!important}
.tile:not(.has-img) .tile-go svg{display:none}
.tile:not(.has-img) .tile-go::after{content:"›";font-size:24px;line-height:1}
.tile:not(.has-img) .tile-text{gap:2px}
.tile:not(.has-img) .tile-title{font-size:15px;color:var(--text)!important}
.tile:not(.has-img) :is(.tile-note,.tile-host){font-size:13px;color:var(--muted)!important;padding-top:0}
.tile.has-img .tile-art{display:none}
/* компьютер: темы карточками в две колонки, одиночные пункты и длинные списки тоже */
.sec-subs{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:16px}
.sec-col{display:flex;flex-direction:column;gap:12px;min-width:0}
.sec-col>.sec-sub{margin:0}
.sec-group>h2+.sec-subs{margin-top:14px}
.sec-group:not(.sec-sub)>.tiles:not(:has(.has-img)){columns:2;column-gap:0}
.sec-group:not(.sec-sub)>.tiles:not(:has(.has-img))>.tile{break-inside:avoid}
.sub-h{display:flex;align-items:center;gap:8px;margin:20px 4px 8px;font:700 12px/1.2 var(--font);text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.sub-h i{width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,var(--c1),var(--c2))}
.sub-h span{margin-left:auto;font-weight:600;letter-spacing:0}
.sec-group>h2+.sec-sub .sub-h{margin-top:12px}
.sec-fold{margin-top:8px;border-radius:16px;background:var(--card);overflow:hidden}
.sec-fold summary{display:flex;align-items:center;gap:14px;min-height:62px;padding:12px 14px;cursor:pointer;list-style:none;-webkit-tap-highlight-color:transparent}
.sec-fold summary::-webkit-details-marker{display:none}
.sec-fold summary i{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;border-radius:11px;background:linear-gradient(135deg,var(--c1),var(--c2));color:#fff}
.sec-fold summary i svg{width:20px;height:20px}
.sec-fold summary b{flex:1;font-weight:600;font-size:16px;line-height:1.3}
.fold-n{min-width:26px;height:26px;padding:0 8px;border-radius:999px;background:var(--bg);color:var(--muted);font-size:13px;font-weight:600;line-height:26px;text-align:center}
.fold-chev{display:grid;color:#a3afc2;transition:transform .25s var(--ease)}
.fold-chev svg{width:18px;height:18px}
.sec-fold[open] .fold-chev{transform:rotate(90deg)}
.sec-fold[open] summary{box-shadow:inset 0 -1px 0 var(--line)}
.sec-fold[open] .fold-n{background:linear-gradient(135deg,var(--c1),var(--c2));color:#fff}
.sec-fold .tiles{border-radius:0!important}
.sec-empty{margin-top:20px;padding:20px;border-radius:var(--radius);background:var(--card);color:var(--muted)}
.sec-empty a{color:var(--brand);text-decoration:underline;text-underline-offset:3px}
.sec-owner{margin-top:28px;font-size:13px;color:var(--muted)}


/* ---------- главная: рассказ о вузе ---------- */
.about{background:var(--card);border-radius:var(--radius);padding:22px 24px 24px}
.about-lead{margin:-6px 0 18px;max-width:60ch;color:var(--muted);font-size:16px}
.about-stats{position:relative;overflow:hidden;isolation:isolate;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;border-radius:var(--radius);background:rgba(255,255,255,.14)}
.about-stats::before{content:"";position:absolute;inset:0;z-index:-2;background:var(--grad)}
.about-stats::after{content:"";position:absolute;z-index:-1;width:900px;height:900px;right:-560px;top:-520px;border-radius:50%;border:2px solid rgba(255,255,255,.35);background:#2153c6;opacity:.7}
.about-stats li{display:flex;flex-direction:column;gap:6px;padding:20px 22px;background:rgba(13,47,133,.35);color:#d8e4fb;font-size:14px;line-height:1.35}
.about-stats b{font:800 clamp(30px,2.6vw,44px)/1 var(--display);color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap}
.about-stats li:nth-child(4n+1) b{color:var(--cyan)}
.era-rail{position:relative;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));margin-top:26px}
.era-rail::before{content:"";position:absolute;left:0;right:0;top:9px;height:2px;background:var(--line)}
.era-rail button{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:26px 8px 6px 0;text-align:left;color:var(--muted)}
.era-rail button::before{content:"";position:absolute;left:0;top:3px;width:14px;height:14px;border-radius:50%;background:var(--card);box-shadow:inset 0 0 0 2px #b8c4d8;transition:background .2s,box-shadow .2s,transform .25s var(--ease)}
.era-rail button::after{content:"";position:absolute;left:0;right:0;top:9px;height:2px;background:var(--brand);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.era-rail button.is-past::after,.era-rail button[aria-selected=true]::after{transform:scaleX(1)}
.era-rail button[aria-selected=true]::after{transform:scaleX(.5)}
.era-rail button.is-past::before{background:var(--brand);box-shadow:none}
.era-rail button[aria-selected=true]::before{background:var(--cyan);box-shadow:0 0 0 4px rgba(71,187,230,.3);transform:scale(1.2)}
.era-rail b{font:800 20px/1 var(--display);color:var(--brand-deep);transition:color .2s}
.era-rail span{font-size:13px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.era-rail button:hover b,.era-rail button[aria-selected=true] b{color:var(--brand)}
.era-rail button[aria-selected=true] span{color:var(--text)}
.eras{margin-top:18px}
.era{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:stretch}
.js .era:not(.is-active){display:none}
.js .era.is-active{animation:tick .45s var(--ease)}
.no-js-hint{display:none}
.era-pic{position:relative;margin:0;border-radius:var(--radius);overflow:hidden;background:var(--brand-soft);min-height:320px}
.era-pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.era-pic figcaption{position:absolute;left:0;right:0;bottom:0;padding:28px 16px 12px;background:linear-gradient(transparent,rgba(8,31,92,.8));color:#fff;font-size:13px;line-height:1.35}
.era-text{display:flex;flex-direction:column;gap:12px;align-self:stretch;padding:6px 0}
.era-years{align-self:flex-start;padding:4px 12px;border-radius:999px;background:var(--cyan-soft);color:var(--brand-deep);font:800 13px/1.3 var(--display);letter-spacing:.02em}
.era-text h3{font:800 clamp(22px,1.9vw,30px)/1.15 var(--display);text-transform:uppercase;color:var(--brand-deep);text-wrap:balance}
.era-text p{color:#36424f;font-size:16px;line-height:1.6}
.era-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:8px}
.era-more{display:inline-flex;align-items:center;gap:8px;color:var(--brand);font-weight:600}
.era-more svg{width:18px;height:18px;transition:transform .2s var(--ease)}
.era-more:hover svg{transform:translateX(3px)}
.era-step{display:flex;gap:8px}
.era-step button{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--bg);color:var(--brand-deep);transition:background .15s,color .15s}
.era-step button:hover{background:var(--brand);color:#fff}
.era-step button:disabled{opacity:.35;pointer-events:none}
@media (max-width:1100px){
  .about-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .about-stats li:nth-child(4n+1) b{color:#fff}
  .about-stats li:nth-child(odd) b{color:var(--cyan)}
  .era{grid-template-columns:1fr;gap:18px}
  .era-pic{min-height:0;aspect-ratio:3/2}
}
@media (max-width:640px){
  .about{padding:22px 18px}
  .about-lead{font-size:15px}
  .about-stats li{padding:16px 14px}
  .about-stats b{font-size:28px}
  .about-stats li>span{font-size:13px}
  .era-rail{display:flex;overflow-x:auto;scrollbar-width:none;margin-inline:-18px;padding:0 18px;scroll-padding:0 18px}
  .era-rail::-webkit-scrollbar{display:none}
  .era-rail::before{left:18px;right:18px;width:auto}
  .era-rail button{flex:0 0 108px}
  .era-text p{font-size:15px}
  .era-nav{flex-wrap:wrap}
}

.invite-cols{columns:2;column-gap:40px;font-size:15px}
.invite-cols li{break-inside:avoid;margin:0 0 10px}
.invite-cols a:hover{color:var(--brand);text-decoration:underline;text-underline-offset:3px}
@media (max-width:640px){.invite-cols{columns:1}.invite-wide{padding:22px 18px}}

/* ---------- главная: выпускники ---------- */
.grads,.campus{background:var(--card);border-radius:var(--radius);padding:22px 24px 24px}
.grads-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}
.grads-big{display:flex;align-items:center;gap:18px}
.grads-big b{font:800 clamp(56px,5vw,80px)/.9 var(--display);background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.grads-big span{max-width:26ch;font-size:16px;line-height:1.45;color:#36424f}
.employers{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.employers li{padding:10px 16px;border-radius:12px;background:var(--bg);color:var(--brand-deep);font:800 15px/1.2 var(--display);letter-spacing:.01em}
.grads-note{margin-top:10px;font-size:14px;color:var(--muted)}
.grads-bars h3{margin-bottom:14px;font-size:15px;font-weight:600;color:var(--text)}
.bars{display:grid;gap:9px}
.bars li{display:grid;grid-template-columns:minmax(0,190px) minmax(0,1fr) 44px;align-items:center;gap:12px;font-size:14px}
.bar{height:10px;border-radius:999px;background:var(--bg);overflow:hidden}
.bar i{display:block;height:100%;width:var(--v);border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--cyan));transform-origin:left}
.js .bars:not(.is-in) .bar i{transform:scaleX(0)}
.bars .bar i{transition:transform 1s var(--ease)}
.bars li b{font-variant-numeric:tabular-nums;color:var(--brand-deep);text-align:right}

/* ---------- главная: карта корпусов ---------- */
.campus-grid{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:16px;height:520px}
.places{overflow:auto;display:grid;gap:6px;align-content:start;padding-right:4px;scrollbar-width:thin}
.place{display:grid;gap:3px;width:100%;padding:12px 14px;border-radius:12px;background:var(--bg);text-align:left;font-size:14px;line-height:1.35;transition:background .15s,box-shadow .15s}
.place:hover{box-shadow:inset 0 0 0 1px var(--brand)}
.place.is-active{background:var(--grad);color:#fff}
.pl-n{font:800 11px/1.3 var(--display);text-transform:uppercase;letter-spacing:.04em;color:var(--brand)}
.place b{font-weight:600;font-size:15px;color:var(--brand-deep)}
.pl-what{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--muted);font-size:13px}
.pl-addr{display:flex;align-items:center;gap:4px;color:var(--text)}
.pl-addr svg{width:14px;height:14px;color:var(--brand)}
.pl-tr{color:var(--muted);font-size:12.5px}
.place.is-active :is(.pl-n,b,.pl-what,.pl-addr,.pl-tr,.pl-addr svg){color:#fff}
.place.is-active .pl-n{color:var(--cyan)}
.campus-map{position:relative;border-radius:var(--radius);overflow:hidden;background:var(--brand-soft);z-index:0}
.map-wait{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:14px}
.osu-pin{display:grid;place-items:center;width:34px;height:34px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);background:var(--grad);box-shadow:0 6px 14px rgba(13,47,133,.35);border:2px solid #fff}
.osu-pin span{transform:rotate(45deg);color:#fff;font:800 11px/1 var(--display);letter-spacing:-.02em}
.osu-pin.is-active{background:linear-gradient(135deg,var(--cyan),var(--brand))}
.leaflet-popup-content-wrapper{border-radius:12px}
.leaflet-popup-content{margin:12px 14px;font:400 13px/1.45 var(--font);color:var(--text)}
.leaflet-popup-content b{display:block;font-size:14px;color:var(--brand-deep)}
@media (max-width:1100px){
  .grads-grid{grid-template-columns:minmax(0,1fr)}
  .campus-grid{grid-template-columns:1fr;height:auto}
  .campus-map{order:-1;height:360px}
  .places{max-height:none;overflow:visible;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
}
@media (max-width:640px){
  .grads,.campus{padding:22px 18px}
  .grads-big{gap:12px}
  .grads-big span{font-size:14px}
  .employers li{padding:8px 12px;font-size:13px}
  .bars li{grid-template-columns:minmax(0,1fr) 40px;grid-template-areas:"n v" "b b";gap:4px 8px}
  .bar-name{grid-area:n}.bars li b{grid-area:v}.bar{grid-area:b}
  .campus-map{height:300px}
  .places{grid-template-columns:1fr}
}

/* ---------- лента новостей ---------- */
.feed-page{display:grid;grid-template-columns:clamp(264px,15vw,300px) minmax(0,1fr) clamp(296px,18vw,340px);gap:24px;padding-top:24px;padding-bottom:56px;align-items:start}
.feed-main{min-width:0}
.feed-side{position:sticky;top:16px;display:grid;gap:16px;min-width:0}
.feed-filter{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.feed-filter button{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 8px 0 18px;border-radius:999px;background:var(--card);color:var(--brand-deep);box-shadow:inset 0 0 0 1px var(--line);font-weight:600;font-size:15px;transition:background .2s,color .2s,box-shadow .2s}
.feed-filter button:hover{box-shadow:inset 0 0 0 1px var(--brand)}
.feed-filter button span{min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:var(--bg);color:var(--muted);font-size:13px;line-height:28px;text-align:center}
.feed-filter button[aria-pressed=true]{background:var(--grad);color:#fff;box-shadow:none}
.feed-filter button[aria-pressed=true] span{background:rgba(255,255,255,.2);color:#fff}
.feed-top{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:800px;margin:-24px auto 0;padding:18px 0 12px;background:linear-gradient(var(--bg) 80%,transparent)}
.feed-top h1{font:800 24px/1.1 var(--display);text-transform:uppercase;color:var(--brand-deep)}
.feed-top .feed-filter{display:flex;gap:2px;margin:0;padding:4px;border-radius:999px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line)}
.feed-top .feed-filter button{height:34px;padding:0 6px 0 14px;gap:6px;font-size:14px;box-shadow:none;background:none}
.feed-top .feed-filter button:hover{box-shadow:none;color:var(--brand)}
.feed-top .feed-filter button span{min-width:22px;height:22px;padding:0 6px;font-size:12px;line-height:22px}
.feed-top .feed-filter button[aria-pressed=true]{background:var(--grad);color:#fff}
.feed{display:grid;gap:16px;max-width:800px;margin:6px auto 0}

.post{display:flex;flex-direction:column;gap:12px;padding:18px;border-radius:20px;background:var(--card);box-shadow:0 1px 2px rgba(13,47,133,.06)}
.post[hidden]{display:none}
.post-date{font-size:13px;color:var(--muted)}
.post-text{display:grid;gap:8px;margin-top:-6px}
.post-text h3{font-size:18px;font-weight:600;line-height:1.35;color:var(--brand-deep);text-wrap:pretty}
.post-text h3 a:hover{color:var(--brand)}
.post-text p{color:#3d4957;font-size:15px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.post-img{display:block;aspect-ratio:3/2;border-radius:14px;background:var(--brand-soft);overflow:hidden;isolation:isolate}
.post-img img{width:100%;height:100%;object-fit:cover}
.post-actions{display:flex;gap:8px}
.post-actions>*{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 14px;border-radius:999px;background:var(--bg);color:var(--brand-deep);font-size:14px;font-weight:600;transition:background .15s,color .15s}
.post-actions>*:hover{background:var(--brand);color:#fff}
.post-actions svg{width:16px;height:16px}
.post-share{margin-left:auto}
.post-share.is-done{background:var(--brand);color:#fff}
@media (min-width:1101px){.post{padding:22px;gap:14px}.post-date{font-size:14px}.post-text h3{font-size:23px;line-height:1.3}.post-text p{font-size:17px;line-height:1.55}}
.feed-main .btn-more{max-width:800px;margin-inline:auto}
.feed-main .btn-more{margin-top:28px}
.feeds-col{display:grid;gap:8px}
.feeds-col li{justify-content:space-between}
@media (max-width:1599px){
  .feed-page{grid-template-columns:minmax(0,1fr) 300px}
  .feed-page .sec-menu{display:none}
}
@media (max-width:900px){
  .teaser-grid{grid-template-columns:1fr 1fr}
  .feed-page{grid-template-columns:minmax(0,1fr);padding-top:16px}
  .feed-side{position:static;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
}
@media (max-width:640px){
  .teaser-grid{gap:18px 14px}
  .teaser h3{font-size:15px;color:var(--text)}
  .feed-top{margin:-16px -16px 0;padding:12px 16px 10px}
  .feed-top h1{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .feed-top .feed-filter{flex:1;overflow:visible}
  .feed-top .feed-filter button{flex:1;justify-content:center;padding:0 8px;font-size:14px}
  .feed-top .feed-filter button span{display:none}
  .feed{gap:12px}
  .post{padding:14px;gap:10px;border-radius:18px}
  .post-text h3{font-size:16px}
  .post-text p{font-size:14px}
  .post-img{border-radius:12px}
  .feed-filter{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  .feed-filter button{flex-shrink:0}
  .feed-side{grid-template-columns:1fr}
}

/* ---------- responsive ---------- */
@media (max-width:1599px){
  .layout{grid-template-columns:minmax(0,1fr) 288px;grid-template-areas:"center right" "left left"}
  .col-left{grid-template-columns:repeat(3,1fr);align-items:start}
  .col-left .menu{display:none}
  .sec{grid-template-columns:minmax(0,1fr)}
  .sec-menu{display:none}
  .quality{grid-column:1/-1;grid-template-columns:1fr 1fr}
  .menu-btn{display:inline-flex}
  .head-links{display:none}
}
@media (max-width:900px){
  .wrap{padding:0 16px}
  .layout{display:flex;flex-direction:column;gap:16px;padding-top:16px}
  .col-center,.col-right{display:contents}
  .col-center>*,.col-right>*{order:5;width:100%;min-width:0}
  .col-center>.hero{height:auto;aspect-ratio:1032/613;flex-shrink:0}
  .col-center>.ticker{order:1}
  .col-center>.hero{order:2}
  .col-right>.today{order:3}
  .col-right>.soon{order:4}
  .col-right>.pay,.col-right>.side-slider,.col-right>.report,.col-right>.invite,.col-right>.notice{order:6}
  .col-left{order:7;grid-template-columns:1fr 1fr}
  .side-slider{max-width:420px;width:100%;align-self:center}
  .head .wrap{flex-wrap:wrap;gap:12px;min-height:0;padding-top:12px;padding-bottom:12px}
  .head-tools{width:100%;margin:0}
  .head-links{display:none}
  .head::before,.head::after{left:auto;right:-2330px}
  .hero-static{display:none}
  .hero{aspect-ratio:1032/613}
  .video-grid{grid-template-columns:1fr 1fr}
  .fac-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  body{font-size:15px}
  .util .wrap{font-size:13px}
  .util-right a:last-child{display:none}
  .concept{order:1;margin-left:4px;font-size:11px;padding:1px 8px}
  .c-long{display:none}
  .logo img{width:177px;height:51px}
  .menu-btn span{display:none}
  .logo{order:1}
  .menu-btn{order:2;margin-left:auto;padding:0 10px}
  .head-tools{order:3}
  .cookie p{max-height:28vh;overflow:auto}
  .hot .hot-red{margin-left:0}
  .news,.videos,.past,.facnews{padding:18px 16px}
  .section-head h2{font-size:22px}
  .feeds{justify-content:flex-start}
  .news-item{grid-template-columns:112px 1fr;gap:14px}
  .news-item h3{font-size:16px}
  .news-item p{display:none}
  .news-item:first-child p{display:-webkit-box}
  .news-item:first-child h3{font-size:19px}
  .hot .hot-red{margin-left:0}
  .hot-main{width:100%}
  .video-grid,.fac-grid{grid-template-columns:1fr}
  .fac{display:grid;grid-template-columns:112px 1fr;gap:4px 14px}
  .fac-img{grid-row:span 2}
  .fac-tag{margin-top:4px}
  .past-list{columns:1}
  .col-right,.col-left{grid-template-columns:1fr}
  .quality{grid-template-columns:1fr}
  .slider .nav{opacity:1;width:34px;height:34px}
  .dots{display:none}
  .foot-grid{grid-template-columns:1fr;gap:28px}
  .site-footer::before{left:auto;right:-2340px}
  .cookie{flex-direction:column;align-items:stretch}
}
@media (max-width:640px){
  body{font-size:16px;line-height:1.55}
  .wrap{padding:0 16px}
  .layout{gap:24px;padding-top:20px;padding-bottom:32px}

  /* шапка: кнопки студента одним рядом, ссылки списком */
  .hot{font-weight:500}
  .hot .wrap{display:grid;gap:12px;padding-block:14px}
  .hot-main{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
  .hot .chip{flex-direction:column;justify-content:center;gap:4px;min-height:54px;padding:7px 4px;border-radius:10px;font-size:11.5px;font-weight:600;line-height:1.15;text-align:center}
  .hot .chip svg{width:18px;height:18px}
  .hot .wrap>a{justify-content:space-between;padding:2px 0;font-size:14px}
  .hot .wrap>a::after{content:"›";font-size:20px;line-height:1;color:var(--muted)}

  /* карточки свободнее */
  .news,.videos,.past,.facnews{padding:22px 18px}
  .block-head{padding:16px 18px 0}
  .block-body{padding:12px 18px 20px;font-size:15px}
  .section-head{flex-wrap:nowrap;align-items:center;margin-bottom:16px}
  .section-head h2{font-size:17px;letter-spacing:0;padding-left:12px}
  .site-footer::before{display:none}
  .link-more{flex-shrink:0;padding:6px 12px;border-radius:999px;background:var(--cyan-soft);font-size:14px}
  .lm-full{display:none}
  .lm-short{display:inline}

  /* ленты одной строкой с прокруткой */
  .news .section-head{flex-wrap:wrap}
  .feeds{flex-wrap:nowrap;overflow-x:auto;margin:0 -18px;padding:2px 18px 4px;width:calc(100% + 36px);scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent)}
  .feeds::-webkit-scrollbar{display:none}
  .feeds li{flex-shrink:0}
  .feeds a{white-space:nowrap}

  /* списки спокойнее */
  .news-item{padding:16px 0}
  .news-item h3{font-size:16px;font-weight:600;color:var(--text);line-height:1.35}
  .news-item:first-child h3{color:var(--brand-deep);font-size:20px}
  .news-item:first-child .news-img{aspect-ratio:3/2}
  /* лента: первая новость крупно, остальные плиткой в два столбца */
  .news-list{grid-template-columns:1fr 1fr;gap:20px 14px}
  .news-item{grid-template-columns:1fr;gap:8px;padding:0;border-top:0}
  .news-item:first-child{grid-column:1/-1;padding-bottom:20px;border-bottom:1px solid var(--line)}
  .news-item .news-img{aspect-ratio:3/2;border-radius:12px}
  .news-item time{margin-bottom:2px;font-size:12px}
  .news-item:not(:first-child) h3{font-size:15px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
  .past-list li{grid-template-columns:1fr;gap:2px;padding:10px 0}
  .past-list time{font-size:13px}
  .fac{gap:2px 14px}
  .fac h3{font-size:15px}
  .fac-tag{padding:0;background:none;color:var(--muted);font-size:13px;font-weight:400}
  .video{grid-template-columns:120px 1fr}
  .ticks li{margin-top:12px}
  .notices li{padding:14px 0}

  /* показать ещё */
  [data-limit]:not(.is-open)>.m-extra{display:none}
  .more-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;margin-top:12px;border-radius:999px;background:var(--cyan-soft);color:var(--brand-deep);font-weight:600;font-size:15px}
  .block-body .more-btn{margin-top:14px}

  /* cookies компактно */
  .cookie{left:12px;right:12px;bottom:12px;padding:14px;gap:12px;font-size:13px}
  .cookie p{max-height:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .cookie.open p{display:block;max-height:40vh;overflow:auto}
  .cookie-actions{width:100%}
  .cookie-actions button{flex:1;padding:11px 12px}
  .cookie-more{display:block;background:rgba(255,255,255,.12)!important;color:#fff!important}

  /* подвал */
  .foot-grid{gap:24px;padding-top:28px;padding-bottom:24px}
  .vcard img{width:177px;height:51px;margin-bottom:12px}
  .vcard .fn{font-size:16px;line-height:1.35;margin-bottom:16px}
  .ct{align-items:center;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.08)}
  .ct span{font-size:15px;font-weight:600}
  .ct small{font-weight:400}
  a.ct:active{background:rgba(255,255,255,.16)}
  .site-footer a.ct:hover,.site-footer .foot-list a:hover,.site-footer .hotline a:hover{text-decoration:none}
  .foot-list{gap:0}
  .vcard .foot-list{margin-top:14px;font-size:14px}
  .foot-list a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.12);line-height:1.35}
  .foot-list a:first-child{border-top:1px solid rgba(255,255,255,.12)}
  .foot-list a::after{content:"›";font-size:22px;line-height:1;color:#a9bde8}
  .links{gap:20px}
  .hotline{padding:16px;border-radius:14px}
  .hotline a{display:block;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.1);font-size:16px}
  .hotline small{margin-bottom:2px;font-size:12px}
  .socials{order:-1;justify-content:space-between;padding:4px 0 2px}
  .socials img{width:42px;height:42px}
  .bottom{font-size:12px}
  .bottom .wrap{gap:12px;padding-top:20px;padding-bottom:24px}
  .bottom .sep{display:none}
  .bottom p:has(.sep){display:grid;gap:8px;font-size:13px}

  /* разделы */
  .sec{padding-top:16px;padding-bottom:32px}
  .sec-hero{padding:20px 18px 22px}
  .sec-hero::after{width:360px;height:360px;right:-230px;top:-150px}
  .sec-hero h1{font-size:23px}
  .sec-tools{flex-wrap:wrap;gap:8px}
  .sec-filter{max-width:none;flex:1 1 0;min-width:0;height:46px;padding:0 16px}
  .filters-btn{width:46px;height:46px;padding:0;justify-content:center;flex-shrink:0}
  .fl-txt{display:none}
  .filters-dot{top:8px;right:8px}
  .sec-found{flex-basis:100%}
  .sec-found:empty{display:none}
  .legend{padding:14px 16px}
  .sec-icon{right:-8px;top:18px;transform:none;opacity:.35}
  .sec-icon svg{width:96px;height:96px}
  .sec-group h2+.tiles{margin-top:10px}

  .sec-subs{display:flex;flex-direction:column;align-items:stretch;gap:8px}
  .sec-col{display:contents}
  .sec-group:not(.sec-sub)>.tiles:not(:has(.has-img)){columns:auto}
  .sec-group>h2+.sec-subs{margin-top:12px}
  /* обложки «Медиа»: лента с прокруткой вбок */
  .tiles:has(.has-img){display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px;padding:2px 16px 8px;scroll-padding:0 16px;scrollbar-width:none}
  .tiles:has(.has-img)::-webkit-scrollbar{display:none}
  .tile.has-img{flex:0 0 74%;scroll-snap-align:start}
  .tile.has-img a{flex-direction:column;align-items:stretch;gap:0;padding:0 14px 14px;box-shadow:none}
  .tile.has-img .tile-go{position:absolute;right:12px;bottom:12px;width:28px;height:28px}
  .cover{height:124px;margin:0 -14px 12px}
  .tile.has-img .tile-text{padding-right:34px}
  .tile.has-img .tile-title{font-size:15px}
}
/* ---------- телефон: компактная главная ---------- */
@media (max-width:640px){
  .hot .wrap>a{display:none}
  .hot-main{grid-template-columns:repeat(5,1fr)!important;gap:5px!important}
  .hot .chip{font-size:11px!important;padding:7px 2px!important}
  .hot .chip-m{display:flex}
  .col-right>.pay{display:none}
  .ticker{flex-wrap:wrap;gap:10px;padding:8px 8px 8px 12px}
  .ticker-items a{font-size:14px}
  .ticker-more{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--cyan-soft);color:var(--brand);transition:transform .25s var(--ease)}
  .ticker-more svg{width:16px;height:16px}
  .ticker-more[aria-expanded=true]{transform:rotate(90deg)}
  .ticker.is-open .ticker-items{display:none}
  .ticker.is-open b{margin-right:auto}
  .ticker-all{flex-basis:100%;display:grid;padding:2px 4px 4px}
  .ticker-all[hidden]{display:none}
  .ticker-all li{display:grid;gap:2px;padding:9px 0;border-top:1px solid var(--line);font-size:14px;line-height:1.35}
  .ticker-all time{font-size:12px;color:var(--muted)}
  .ticker-all a{color:var(--brand-deep);font-weight:500}
  .col-right>.notice{display:none}
  .col-right>.side-slider{display:none}
  .head .wrap{gap:8px}
  .search-btn{display:grid;place-items:center;order:2;margin-left:auto;width:40px;height:40px;border-radius:var(--radius-s);background:rgba(255,255,255,.14);color:#fff}
  .search-btn[aria-expanded=true]{background:#fff;color:var(--brand)}
  .menu-btn{order:3;margin-left:0!important;width:40px;height:40px;padding:0!important;justify-content:center}
  .head-tools{display:none}
  .head.is-search .head-tools{display:flex;animation:tick .25s var(--ease)}
  .hot .wrap>a.today-mini{display:flex;align-items:center;justify-content:flex-start;gap:8px;padding:0 2px;font-size:13px;font-weight:500;color:var(--text)}
  .hot .wrap>a.today-mini::after{content:none}
  .today-mini svg{width:16px;height:16px;color:var(--orange)}
  .today-mini b{margin-left:auto;font-weight:600;color:var(--brand)}
  .col-right>.today{display:none}
  .col-right>.soon{order:6}
  .hot .wrap{padding-block:10px}
  .drawer-extra .hot-red{color:var(--red)}
  .layout{gap:14px}
  .block-head{padding:14px 16px 0}
  .block-body{padding:10px 16px 14px;font-size:14px}
  .section-head{margin-bottom:12px}
  .section-head h2{font-size:16px}
  .more-btn{min-height:40px;margin-top:8px;font-size:14px}
  /* сегодня и скоро */
  .today .block-head,.soon .block-head{padding:10px 16px}
  .soon .where{display:none}
  .dated li{padding:7px 0}
  /* история */
  .about,.grads,.campus,.videos,.invite-wide{padding:18px 16px}
  .about-lead{display:none}
  .about-stats li:nth-child(n+5){display:none}
  .about-stats li{padding:12px 12px 14px;gap:4px}
  .about-stats b{font-size:24px}
  .about-stats li>span{font-size:12px;line-height:1.3}
  .era-rail{margin-top:16px}
  .era-rail button{flex-basis:92px;padding-top:24px}
  .era-rail b{font-size:17px}
  .era-rail span{font-size:12px}
  .eras{margin-top:12px}
  .era{gap:12px}
  .era-pic{aspect-ratio:16/9}
  .era-pic figcaption{font-size:12px;padding:20px 12px 8px}
  .era-text{gap:8px}
  .era-text h3{font-size:19px}
  .era-text p{font-size:14px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
  .era-step button{width:38px;height:38px}
  .era-more{font-size:14px}
  /* выпускники */
  .grads-grid{gap:18px}
  .grads-big b{font-size:48px}
  .grads-big span{font-size:13px}
  .employers{flex-wrap:nowrap;overflow-x:auto;margin:14px -16px 0;padding:0 16px;scrollbar-width:none}
  .employers::-webkit-scrollbar{display:none}
  .employers li{flex-shrink:0;padding:7px 12px;font-size:12px}
  .grads-note{font-size:12px}
  .grads-bars h3{font-size:13px;margin-bottom:10px}
  .bars{gap:6px}
  .bars li{font-size:13px;gap:2px 8px}
  .bar{height:6px}
  /* карта */
  .campus-map{height:240px}
  .places{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:8px;margin:0 -16px;padding:0 16px 4px;scroll-padding:0 16px;scrollbar-width:none}
  .places::-webkit-scrollbar{display:none}
  .places li{flex:0 0 78%;scroll-snap-align:start;display:flex}
  .place{padding:10px 12px;font-size:13px}
  .place b{font-size:14px}
  .pl-what{-webkit-line-clamp:1}
  .pl-tr{display:none}
  /* видео лентой */
  .video-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0 -16px;padding:0 16px;scrollbar-width:none}
  .video-grid::-webkit-scrollbar{display:none}
  .video{flex:0 0 62%;scroll-snap-align:start;grid-template-columns:1fr;gap:8px;font-size:14px}
  /* правая и левая колонки */
  .pay{padding:12px 14px}
  .pay svg{width:34px;height:34px;padding:7px}
  .side-slider{max-width:300px}
  .report{padding:12px 14px;font-size:13px}
  .notices li{padding:10px 0}
  .notices p{font-size:13px}
  .quality a{padding:12px 14px;font-size:14px}
  .ticks li{margin-top:8px}
}
@media (max-width:380px){.logo img{width:150px;height:43px}.concept{font-size:10px;padding:1px 6px}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}

/* ---------- внутренние страницы /doc/... ---------- */
.doc-hero h1{max-width:40ch}
.doc-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.doc-chips span{padding:6px 14px;border-radius:999px;background:rgba(255,255,255,.14);font-size:14px;font-weight:600}
.doc-sub{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px}
.doc-sub>*{padding:8px 15px;border-radius:999px;background:var(--card);font-size:14px;font-weight:500;line-height:1.3;box-shadow:inset 0 0 0 1px var(--line);transition:background .15s,color .15s}
.doc-sub>.sub-label{padding:8px 4px 8px 0;background:none;box-shadow:none;font-size:13px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}
.doc-sub .sub-more{display:none}
.doc-sub.is-open .sub-more{display:inline-block}
.doc-sub .sub-toggle{background:var(--brand-soft);color:var(--brand);font-weight:600;box-shadow:none}
.doc-sub .sub-toggle:hover{background:var(--brand);color:#fff}
.doc-sub a:hover{background:var(--brand-soft);color:var(--brand)}
.doc-sub [aria-current]{background:var(--brand);color:#fff;box-shadow:none}
.doc{display:flex;flex-direction:column;gap:14px;margin-top:20px;padding:clamp(20px,2.4vw,36px);border-radius:var(--radius);background:var(--card);font-size:16px;line-height:1.6}
.doc>p,.doc-note>p,.doc-fold-body>p,.doc>.doc-list,.doc-fold-body>.doc-list{max-width:82ch}
.doc p a,.doc-list a,.doc-table td a,.u-block a,.doc-note a{color:var(--brand);text-decoration:underline;text-decoration-color:rgba(26,69,180,.3);text-underline-offset:3px;transition:text-decoration-color .15s}
.doc p a:hover,.doc-list a:hover,.doc-table td a:hover,.u-block a:hover,.doc-note a:hover{text-decoration-color:currentColor}
.doc a.tel{white-space:nowrap}
.doc h2{position:relative;margin-top:14px;padding-left:14px;font:800 16px/1.3 var(--display);text-transform:uppercase;color:var(--brand-deep);text-wrap:balance}
.doc h2::before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:4px;border-radius:2px;background:var(--cyan)}
.doc>h2:first-child{margin-top:0}
.doc strong{font-weight:650}
.doc-lead{font-size:18px;color:var(--brand-deep)}
.doc-list{display:grid;gap:8px;padding-left:0}
.doc-list>li{position:relative;padding-left:22px}
.doc-list>li::before{content:"";position:absolute;left:4px;top:.68em;width:7px;height:7px;border-radius:50%;background:var(--cyan)}
ol.doc-list{counter-reset:n}
ol.doc-list>li{counter-increment:n;padding-left:30px}
ol.doc-list>li::before{content:counter(n);top:.1em;left:0;width:22px;height:22px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font:700 12px/1 var(--display)}
.doc-note{display:flex;flex-direction:column;gap:10px;padding:18px 22px;border-radius:var(--radius-s);background:var(--orange-soft);box-shadow:inset 4px 0 0 var(--orange)}
.doc-form,.doc-empty{padding:16px 20px;border-radius:var(--radius-s);background:var(--brand-soft);color:var(--brand-deep)}
.doc-fig img{border-radius:var(--radius-s);max-height:520px;width:auto}
.doc-img.small{display:inline-block;vertical-align:middle;margin:4px 8px 4px 0;border-radius:8px}
.doc-banner{display:inline-flex;align-self:flex-start;border-radius:var(--radius-s);overflow:hidden;transition:transform .2s var(--ease)}
.doc-banner:hover{transform:translateY(-2px)}
.doc-banner figure{margin:0}

/* документы и ссылки */
.doc-files,.doc-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:10px}
.doc-files a,.doc-links a{display:flex;align-items:center;gap:14px;height:100%;padding:13px 16px;border-radius:12px;background:var(--bg);transition:background .15s,box-shadow .2s,transform .2s var(--ease)}
.doc-files a:hover,.doc-links a:hover{background:var(--card);box-shadow:0 10px 26px -14px rgba(13,47,133,.45),inset 0 0 0 1px var(--line);transform:translateY(-1px)}
.f-badge{flex-shrink:0;display:grid;place-items:center;width:42px;height:48px;border-radius:6px 14px 6px 6px;background:#c8182b;color:#fff;font:800 11px/1 var(--display);letter-spacing:.04em}
.f-doc,.f-rtf,.f-odt{background:#1a5bd6}.f-xls,.f-ods{background:#0f7a55}.f-zip,.f-rar,.f-7z{background:#6b7f99}.f-ppt{background:#d46a00}
.doc-links i{flex-shrink:0;display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:linear-gradient(135deg,var(--c1),var(--c2));color:#fff}
.doc-links i svg{width:20px;height:20px}
.f-name{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;font-weight:550;line-height:1.35;overflow-wrap:anywhere}
.f-name small{font-weight:400;font-size:13.5px;color:var(--muted)}
.f-go{color:#a3afc2;transition:color .15s,transform .2s var(--ease)}
.f-go svg{width:18px;height:18px}
:is(.doc-files,.doc-links) a:hover .f-go{color:var(--brand);transform:translateX(2px)}
:is(.doc-files,.doc-links) a:hover .f-name{color:var(--brand)}

/* люди и подразделения */
.doc-people{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:14px}
.person{display:flex;gap:18px;padding:18px;border-radius:var(--radius);background:var(--bg)}
.p-photo{flex-shrink:0}
.p-photo img,.p-noimg{width:104px;height:135px;border-radius:12px;object-fit:cover;background:var(--brand-soft)}
.p-noimg{display:grid;place-items:center;color:var(--brand)}
.p-noimg svg{width:40px;height:40px;stroke-width:1.3}
.p-body{display:flex;flex-direction:column;gap:6px;min-width:0}
.p-role{font:700 12.5px/1.35 var(--display);letter-spacing:.03em;text-transform:uppercase;color:var(--brand)}
.p-name{font-size:18px;font-weight:650;line-height:1.3}
.p-name a:hover{color:var(--brand)}
.p-info{font-size:14.5px;line-height:1.45;color:var(--muted)}
.p-contacts{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.p-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;background:var(--card);font-size:13.5px;font-weight:500;box-shadow:inset 0 0 0 1px var(--line);transition:background .15s,color .15s}
.p-chip:hover{background:var(--brand);color:#fff}
.p-chip svg{width:15px;height:15px}
.p-recv{display:flex;gap:8px;margin-top:4px;padding:9px 12px;border-radius:10px;background:var(--card);font-size:13.5px;line-height:1.4;color:var(--muted)}
.p-recv svg{width:16px;height:16px;margin-top:1px;color:var(--orange)}
.doc-unit{display:grid;grid-template-columns:1fr;gap:12px}
.doc-unit .person{padding:20px 24px}
.doc-unit:not(:has(.person)){grid-template-columns:1fr}
.doc-unit .person{position:relative;overflow:hidden;isolation:isolate;align-items:center;gap:22px;padding:24px;background:var(--grad);color:#fff}
.doc-unit .person::after{content:"";position:absolute;z-index:-1;width:340px;height:340px;right:-140px;top:-150px;border-radius:50%;border:2px solid rgba(255,255,255,.35);background:#2153c6}
.doc-unit .person::before{content:"";position:absolute;z-index:-1;width:200px;height:200px;right:-30px;bottom:-140px;border-radius:50%;border:2px solid rgba(71,187,230,.55)}
.doc-unit .p-photo img,.doc-unit .p-noimg{width:120px;height:156px;border-radius:16px;box-shadow:0 0 0 4px rgba(255,255,255,.18),0 18px 30px -16px rgba(0,0,0,.6)}
.doc-unit .p-noimg{background:rgba(255,255,255,.14);color:#fff}
.doc-unit .p-role{display:inline-block;align-self:flex-start;padding:4px 10px;border-radius:999px;background:rgba(71,187,230,.22);color:#bfe9f8}
.doc-unit .p-name{font:800 clamp(19px,1.5vw,22px)/1.25 var(--display);color:#fff}
.doc-unit .p-name a:hover{color:var(--cyan)}
.doc-unit .p-info{color:#d3def7}
.doc-unit .p-chip{background:rgba(255,255,255,.14);box-shadow:none;color:#fff}
.doc-unit .p-chip:hover{background:#fff;color:var(--brand)}
.doc-unit .p-recv{background:rgba(255,255,255,.1);color:#d3def7}
.u-info{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));align-content:start;gap:12px;padding:0;background:none}
.u-block{padding:16px 18px;border-radius:var(--radius);background:var(--bg);box-shadow:inset 0 0 0 1px var(--line)}
.u-block h3{display:flex;align-items:center;gap:10px;margin-bottom:10px;font:700 12.5px/1.3 var(--display);letter-spacing:.04em;text-transform:uppercase;color:var(--brand-deep)}
.u-block h3 i{display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;border-radius:9px;background:linear-gradient(135deg,var(--brand),var(--cyan));color:#fff}
.u-block h3 i svg{width:16px;height:16px}
.u-block ul{display:grid;gap:6px;font-size:14.5px;line-height:1.45}
.u-block p{font-size:15px;line-height:1.55}
.u-kv{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:6px;border-bottom:1px dashed var(--line)}
.u-kv:last-child{border-bottom:0;padding-bottom:0}
.u-kv span{color:var(--muted)}
.u-kv b{font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--brand-deep)}
.u-tel{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.u-tel a{display:inline-flex;align-items:center;padding:5px 12px;border-radius:999px;background:var(--brand);color:#fff!important;text-decoration:none!important;font-weight:600;font-variant-numeric:tabular-nums;transition:background .15s}
.u-tel a:hover{background:var(--brand-deep)}
.u-tel small{font-size:13px;color:var(--muted)}
.u-block .doc-img.small{display:inline;margin:0 6px 0 0}

/* суммы */
.doc-amounts{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:10px}
.doc-amounts li{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border-radius:var(--radius-s);background:linear-gradient(160deg,var(--brand-soft),var(--cyan-soft))}
.am-label{font-size:14px;line-height:1.35;color:var(--muted)}
.am-val{font:800 clamp(20px,1.6vw,24px)/1.15 var(--display);color:var(--brand-deep);white-space:nowrap}
.am-note{font-size:13px;color:var(--brand)}
.am-text{grid-column:1/-1;background:var(--bg)!important}

/* таблицы */
.doc-table{display:flex;flex-direction:column;gap:10px}
.doc-filter{display:flex;align-items:center;gap:10px;max-width:420px;height:44px;padding:0 16px;border-radius:999px;background:var(--bg);color:var(--muted);transition:box-shadow .15s}
.doc-filter:focus-within{box-shadow:inset 0 0 0 2px var(--brand)}
.doc-filter input{flex:1;min-width:0;border:0;outline:0;background:none;color:var(--text);font-size:15px}
.dt-scroll{overflow-x:auto;border-radius:12px;box-shadow:inset 0 0 0 1px var(--line)}
.doc-table table{width:100%;border-collapse:separate;border-spacing:0;font-size:14.5px;line-height:1.45}
.doc-table th,.doc-table td{padding:10px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.doc-table thead th{position:sticky;top:0;background:var(--brand);color:#fff;font-weight:600;font-size:13.5px}
.doc-table thead th:first-child{border-top-left-radius:12px}.doc-table thead th:last-child{border-top-right-radius:12px}
.doc-table tbody tr:nth-child(even) td{background:#f7f9fd}
.doc-table tbody tr:hover td{background:var(--brand-soft)}
.doc-table tr.grp th{background:var(--cyan-soft);color:var(--brand-deep);font:700 13.5px/1.35 var(--display)}
.doc-table tbody tr:last-child>*{border-bottom:0}
.doc-table td:first-child{font-variant-numeric:tabular-nums}
.dt-empty{color:var(--muted);font-size:14px}
.doc-cal table{width:auto;font-size:13px;text-align:center}
.doc-cal th,.doc-cal td{padding:6px 8px;text-align:center;border-bottom:0;font-variant-numeric:tabular-nums}
.doc-cal th.month{background:var(--brand-soft)!important;color:var(--brand-deep);font-weight:650;font-size:12.5px}
.doc-cal tbody tr:nth-child(even) td{background:none}
.doc-cal td.relax{background:#fde7e9!important;color:var(--red);font-weight:600}
.doc-cal td.week{background:#e0e7fc!important;color:var(--brand-deep);font-weight:600}

/* расписание звонков */
.doc-bells{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:10px}
.doc-bells li{position:relative;display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:var(--radius-s);background:var(--bg);transition:background .2s}
.b-n{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border-radius:12px;background:var(--brand-soft);color:var(--brand);font:800 17px/1 var(--display)}
.b-n::after{content:"пара";position:absolute;left:16px;bottom:5px;width:42px;text-align:center;font:600 9px/1 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.b-t{display:flex;align-items:center;gap:8px;font-size:18px;font-variant-numeric:tabular-nums}
.b-t b{font-weight:650}
.b-t i{width:16px;height:2px;border-radius:1px;background:#a3afc2}
.b-state{position:absolute;right:14px;top:8px;font-size:11.5px;font-weight:600;color:var(--orange)}
.doc-bells li.is-now{background:var(--grad);color:#fff}
.doc-bells li.is-now .b-n{background:rgba(255,255,255,.18);color:#fff}
.doc-bells li.is-now .b-n::after,.doc-bells li.is-now .b-state{color:#c8d6f5}
.doc-bells li.is-now .b-t i{background:var(--cyan)}
.doc-bells li.is-past{opacity:.55}

/* видео, вставки, раскрывашки, переключатели */
.doc-videos{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:14px}
.doc-videos a{display:flex;flex-direction:column;gap:6px;height:100%}
.v-thumb{position:relative;display:block;aspect-ratio:16/10;border-radius:12px;overflow:hidden;background:var(--brand-night)}
.v-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--ease)}
.v-thumb i{position:absolute;inset:0;display:grid;place-items:center;color:#fff}
.v-thumb i svg{width:46px;height:46px;padding:12px;border-radius:50%;background:rgba(13,47,133,.75);transition:background .2s}
.doc-videos a:hover img{transform:scale(1.05)}
.doc-videos a:hover .v-thumb i svg{background:var(--brand)}
.doc-videos b{font-weight:600;line-height:1.35}
.doc-videos a:hover b{color:var(--brand)}
.doc-videos small{font-size:13px;color:var(--muted)}
.doc-embed{position:relative;aspect-ratio:16/9;max-width:880px;border-radius:var(--radius-s);overflow:hidden;background:var(--brand-night)}
.doc-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.doc-embed.map{aspect-ratio:4/3}
.doc-fold{border-radius:var(--radius-s);background:var(--bg)}
.doc-fold summary{display:flex;align-items:center;gap:12px;padding:15px 18px;cursor:pointer;list-style:none;font-weight:650;font-size:16.5px}
.doc-fold summary::-webkit-details-marker{display:none}
.doc-fold summary span{flex:1}
.doc-fold summary i{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--card);color:var(--brand);transition:transform .25s var(--ease)}
.doc-fold summary i svg{width:16px;height:16px}
.doc-fold[open] summary i{transform:rotate(90deg)}
.doc-fold summary:hover{color:var(--brand)}
.doc-fold-body{display:flex;flex-direction:column;gap:12px;padding:0 18px 18px}
.doc-fold-body :is(.doc-files,.doc-links) a{background:var(--card)}
.doc-toggles{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.doc-toggles span{margin-right:4px;font-size:14px;color:var(--muted)}
.doc-toggles a{padding:8px 15px;border-radius:999px;background:var(--bg);font-size:14px;font-weight:500;transition:background .15s,color .15s}
.doc-toggles a:hover{background:var(--brand-soft);color:var(--brand)}
.doc-toggles a[aria-current]{background:var(--brand);color:#fff}

/* подвал страницы */
.doc-meta{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:14px;padding:14px 20px;border-radius:var(--radius-s);background:var(--card);font-size:13.5px;color:var(--muted)}
.doc-meta p{display:flex;align-items:flex-start;gap:8px}
.doc-meta svg{width:16px;height:16px;margin-top:2px}
.doc-orig{margin-top:12px}
.doc-orig a{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--brand);font-weight:500}
.doc-orig svg{width:15px;height:15px}
@media (max-width:1100px){.doc-unit{grid-template-columns:1fr}}
@media (max-width:640px){
  .doc{padding:18px 16px;border-radius:12px;font-size:15.5px}
  .person{flex-direction:column;gap:12px}
  .p-photo img,.p-noimg{width:88px;height:114px}
  .doc-table table{font-size:13.5px}
  .doc-table th,.doc-table td{padding:8px 10px}
}
.doc-doclist{display:grid;gap:8px}
.doc-doclist>li>.f-row{display:flex;flex-direction:column;gap:6px;padding:12px 16px;border-radius:12px;background:var(--bg);transition:background .15s,box-shadow .2s}
.doc-doclist>li>.f-row:hover{background:var(--card);box-shadow:inset 0 0 0 1px var(--line)}
.f-main{display:flex;align-items:center;gap:14px}
.f-main .f-badge{width:36px;height:42px;font-size:10px}
.f-main i{flex-shrink:0;display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--c1),var(--c2));color:#fff}
.f-main i svg{width:18px;height:18px}
.f-main:hover .f-name{color:var(--brand)}
.f-row>small{padding-left:50px;font-size:13.5px;line-height:1.45;color:var(--muted)}
.f-more{display:flex;flex-wrap:wrap;gap:6px;padding-left:50px}
.f-more a{padding:4px 10px;border-radius:8px;background:var(--card);font-size:13px;line-height:1.35;color:var(--brand);box-shadow:inset 0 0 0 1px var(--line)}
.f-more a:hover{background:var(--brand);color:#fff}
.f-plain{padding:4px 16px}
.doc-bells{padding:0}
@media (max-width:640px){.f-row>small,.f-more{padding-left:0}}
.doc-kv{display:grid;margin:0;border-radius:12px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--line)}
.doc-kv>div{display:grid;grid-template-columns:minmax(140px,220px) minmax(0,1fr);gap:16px;padding:12px 16px;border-top:1px solid var(--line)}
.doc-kv>div:first-child{border-top:0}
.doc-kv>div:nth-child(even){background:#f7f9fd}
.doc-kv dt{font-size:14px;color:var(--muted)}
.doc-kv dd{display:flex;align-items:flex-start;gap:10px;margin:0;font-weight:550;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.doc-kv dd>span{flex:1}
.kv-copy{position:relative;flex-shrink:0;display:grid;place-items:center;width:32px;height:32px;margin-top:-4px;border-radius:8px;color:var(--brand);transition:background .15s}
.kv-copy:hover{background:var(--brand-soft)}
.kv-copy svg{width:17px;height:17px}
.kv-ok{position:absolute;right:38px;top:5px;padding:3px 8px;border-radius:6px;background:var(--brand-deep);color:#fff;font-size:12px;font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s}
.kv-copy.is-done .kv-ok{opacity:1}
.v-all .v-thumb{display:grid;place-items:center;background:var(--grad)}
.v-all .v-thumb i svg{width:56px;height:56px;padding:0;background:none;stroke-width:1.4}
@media (max-width:640px){.doc-kv>div{grid-template-columns:1fr;gap:2px}}
.doc-table.wide thead th{min-width:130px;font-size:12.5px;line-height:1.35}
.doc-table.wide thead th:first-child{min-width:90px}
.doc-table.wide .dt-scroll{max-height:80vh}
.doc-events{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,460px),1fr));gap:12px}
.ev{display:flex;gap:16px;padding:18px;border-radius:var(--radius);background:var(--bg)}
.ev-date{flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;width:78px;height:78px;border-radius:14px;background:var(--grad);color:#fff;text-align:center}
.ev-date b{font:800 26px/1 var(--display)}
.ev-date span{margin-top:4px;font-size:11px;line-height:1.2;color:#c8d6f5}
.ev-body{display:flex;flex-direction:column;gap:8px;min-width:0}
.ev-body h3{font-size:17px;font-weight:650;line-height:1.3;text-wrap:balance}
.ev-body h3 a:hover{color:var(--brand)}
.ev-body p{font-size:14.5px;line-height:1.5;color:var(--muted)}
.ev-body p a{color:var(--brand)}
.ev-more{display:inline-flex;align-items:center;gap:6px;margin-top:auto;font-size:14px;font-weight:600;color:var(--brand)}
.ev-more svg{width:15px;height:15px;transition:transform .2s var(--ease)}
.ev-more:hover svg{transform:translateX(2px)}
@media (max-width:640px){.ev{flex-direction:column}.ev-date{flex-direction:row;gap:8px;width:auto;height:auto;padding:8px 12px;align-self:flex-start}.ev-date span{margin:0}}

/* телефонный справочник */
.ph-tools{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px}
.ph-tools .sec-filter{max-width:620px}
.ph-nav{position:relative}
.ph-nav summary{display:flex;align-items:center;gap:8px;height:48px;padding:0 18px;border-radius:999px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);cursor:pointer;list-style:none;font-weight:550;font-size:15px}
.ph-nav summary::-webkit-details-marker{display:none}
.ph-nav summary svg{width:18px;height:18px;color:var(--brand)}
.ph-nav ul{position:absolute;z-index:20;left:0;top:56px;width:min(520px,86vw);max-height:60vh;overflow:auto;padding:8px;border-radius:var(--radius);background:var(--card);box-shadow:0 20px 40px -12px rgba(13,47,133,.35),inset 0 0 0 1px var(--line)}
.ph-nav a{display:block;padding:8px 12px;border-radius:8px;font-size:13.5px;line-height:1.35}
.ph-nav a:hover{background:var(--brand-soft);color:var(--brand)}
.ph-print{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:550;color:var(--brand)}
.ph-print .f-badge{width:30px;height:34px;font-size:9px}
.ph-list{gap:26px}
.ph-group[hidden]{display:none}
.ph-group h2{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.ph-group h2 span{padding:2px 9px;border-radius:999px;background:var(--brand-soft);color:var(--brand);font:600 12px/1.5 var(--font)}
.ph-group ul{display:grid;border-radius:12px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--line)}
.ph-group li{display:grid;grid-template-columns:minmax(0,1.3fr) 120px minmax(0,1.4fr);gap:14px;align-items:center;padding:11px 16px;border-top:1px solid var(--line)}
.ph-group li:first-child{border-top:0}
.ph-group li:nth-child(even){background:#f7f9fd}
.ph-group li[hidden]{display:none}
.ph-who{display:flex;flex-direction:column;gap:2px;min-width:0}
.ph-role{font-size:13.5px;line-height:1.35;color:var(--muted)}
.ph-who b{font-weight:600;line-height:1.35}
.ph-room{display:inline-flex;align-items:center;gap:5px;font-size:13.5px;font-variant-numeric:tabular-nums;color:var(--brand-deep)}
.ph-room svg{width:15px;height:15px;color:var(--cyan)}
.ph-tels{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.ph-in{font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}
mark.ph-hit{background:#ffe9b3;color:inherit;border-radius:3px}
@media (max-width:900px){.ph-group li{grid-template-columns:1fr;gap:6px}}
@media (max-width:640px){.ph-tools .sec-filter{flex-basis:100%;max-width:none}}

/* вакансии */
.vac-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start;margin-top:20px}
.vac-side{position:sticky;top:16px}
.vac-tools{display:flex;flex-wrap:wrap;gap:12px}
.vac-sort select{height:48px;padding:0 40px 0 18px;border:0;border-radius:999px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);font:inherit;font-size:15px;color:var(--text);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a45b4' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px;cursor:pointer}
.vac-flags{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px}
.vac-flags button{padding:8px 14px;border-radius:999px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);font-size:14px;font-weight:500;transition:background .15s,color .15s}
.vac-flags button:hover{color:var(--brand)}
.vac-flags button[aria-pressed=true]{background:var(--brand);color:#fff;box-shadow:none}
.vac-flags-sep{margin-left:8px;font-size:13.5px;color:var(--muted)}
.vac-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr));gap:12px;margin-top:12px}
.vac[hidden]{display:none}
.vac{display:flex;flex-direction:column;gap:10px;padding:18px 20px;border-radius:var(--radius);background:var(--card);transition:box-shadow .2s}
.vac:hover{box-shadow:0 14px 30px -18px rgba(13,47,133,.5)}
.vac:target{box-shadow:0 0 0 3px var(--cyan)}
.vac header{display:flex;flex-direction:column;gap:6px}
.vac h3{font-size:18px;font-weight:650;line-height:1.3;text-wrap:balance}
.vac-pay{font:800 20px/1.2 var(--display);color:var(--brand-deep)}
.vac-pay.none{font:500 14px/1.4 var(--font);color:var(--muted)}
.vac-req,.vac-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:14.5px;line-height:1.45}
.vac-req svg,.vac-row svg{width:17px;height:17px;color:var(--cyan)}
.vac-req span:first-of-type,.vac-row span{flex:1;min-width:0}
.vac-row b{font-weight:600}
.vac-inst{flex:0 0 auto!important;padding:2px 8px;border-radius:6px;background:var(--brand-soft);color:var(--brand);font-size:12.5px;font-weight:650}
.vac-duty summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--brand)}
.vac-duty p{margin-top:6px;font-size:14px;line-height:1.5;color:var(--muted)}
.vac-note{font-size:13.5px;line-height:1.45;color:var(--muted)}
.vac footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:auto;padding-top:8px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.vac-flex{padding:2px 8px;border-radius:6px;background:#e3f6ee;color:#0f7a55;font-weight:600}
@media (max-width:1100px){.vac-layout{grid-template-columns:1fr}.vac-side{position:static;order:-1}}

/* персона и публикации */
.doc-profile{display:flex;gap:24px;padding:22px;border-radius:var(--radius);background:linear-gradient(160deg,var(--brand-soft),var(--cyan-soft))}
.doc-profile .p-photo img,.doc-profile .p-noimg{width:150px;height:195px;border-radius:14px;object-fit:cover}
.pr-body{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1}
.pr-name{margin:0!important;padding:0!important;font:800 clamp(20px,1.8vw,26px)/1.2 var(--display)!important;text-transform:none!important;color:var(--brand-deep)}
.pr-name::before{display:none}
.pr-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px 20px;margin:6px 0 0}
.pr-facts dt{font-size:12.5px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--brand)}
.pr-facts dd{margin:2px 0 0;font-size:15px;line-height:1.4}
.doc-pubs{display:grid;gap:8px;padding:0;list-style:none}
.doc-pubs li{display:flex;gap:14px;padding:12px 16px;border-radius:12px;background:var(--bg);font-size:14.5px;line-height:1.5}
.pub-year{flex-shrink:0;width:48px;font:800 15px/1.4 var(--display);color:var(--brand)}
.doc-pubs b{font-weight:650}
.doc-pubs span{color:var(--muted)}
.pub-src{display:inline-flex;align-items:center;gap:5px;margin-left:8px;padding:2px 9px;border-radius:7px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);font-size:12.5px;font-weight:600;color:var(--brand);white-space:nowrap}
.pub-src svg{width:14px;height:14px}
.pub-src:hover{background:var(--brand);color:#fff}
@media (max-width:640px){.doc-profile{flex-direction:column}.doc-pubs li{flex-direction:column;gap:4px}}
.doc-pubs-box{display:flex;flex-direction:column;gap:10px}
.doc-pubs li[hidden]{display:none}

/* дисциплины и сведения */
.doc-disc{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:8px}
.doc-disc li{display:flex;flex-direction:column;gap:8px;padding:13px 16px;border-radius:12px;background:var(--bg)}
.doc-disc b{font-weight:600;line-height:1.35}
.doc-disc span{display:flex;flex-wrap:wrap;gap:6px}
.doc-disc a{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:8px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);font-size:13px;font-weight:550;color:var(--brand)}
.doc-disc a[href*=".pdf"]::before{content:"PDF";font:800 9px/1 var(--display);padding:3px 4px;border-radius:3px;background:var(--red);color:#fff}
.doc-disc a:hover{background:var(--brand);color:#fff}
.doc-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin:0;padding:16px 18px;border-radius:var(--radius-s);background:linear-gradient(160deg,var(--brand-soft),var(--cyan-soft))}
.doc-facts dt{font-size:12.5px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--brand)}
.doc-facts dd{margin:2px 0 0;font-weight:600;line-height:1.35}
.doc-links li.spec small{font:700 12px/1.3 var(--display);letter-spacing:.04em;color:var(--c1)}
.doc-links li.spec i{box-shadow:0 6px 14px -8px var(--c1)}

/* состояния наведения, которых не хватало */
/* заголовок свёрнутой группы ведёт себя как обычный пункт раздела (.tile:not(.has-img)) */
.sec-fold summary{transition:background .2s,box-shadow .2s}
.sec-fold summary b{transition:color .3s}
.fold-chev{transition:transform .25s var(--ease),color .3s}
.sec-fold summary:is(:hover,:active){background:#f5f8fe;box-shadow:inset 0 0 0 1px #d7e1f5}
.sec-fold summary:hover .fold-n{background:var(--brand-soft);color:var(--brand)}
.sec-fold summary:hover b{color:var(--brand)}
.sec-fold summary:hover .fold-chev{color:var(--brand)}
.vac-duty summary:hover,.ph-nav summary:hover{color:var(--brand-deep)}
.ph-nav summary{transition:background .15s,box-shadow .15s}
.ph-nav summary:hover{background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand-soft)}
.drawer-extra a{transition:color .15s}
.drawer-extra a:hover{color:var(--brand)}
.drawer-extra a.hot-red:hover{color:#8f0f1e}
.hot .hot-red{transition:color .15s}
.hot .hot-red:hover{color:#8f0f1e;text-decoration:underline;text-underline-offset:3px}
.logo{transition:opacity .2s}
.logo:hover{opacity:.85}
.rss{transition:background .15s,color .15s}
.rss:hover{background:var(--brand);color:#fff}
.dot:hover{background:#fff}
.hero-static,.side-slide,.post-img{overflow:hidden}
.hero-static img,.side-slide img,.post-img img{transition:transform .5s var(--ease)}
.hero-static:hover img,.side-slide:hover img,.post-img:hover img{transform:scale(1.04)}
.ticker-more:hover{background:var(--brand);color:#fff}
.search-btn{transition:background .15s}
.search-btn:hover{background:rgba(255,255,255,.26)}
.today-mini{transition:color .15s}
.today-mini:hover b{color:var(--brand-deep);text-decoration:underline;text-underline-offset:3px}
.cookie-more{transition:background .15s}
.cookie-more:hover{background:rgba(255,255,255,.22)!important}
.ph-print{transition:color .15s}
.ph-print:hover{color:var(--brand-deep);text-decoration:underline;text-underline-offset:3px}
.sec-filter:hover,.doc-filter:hover{box-shadow:inset 0 0 0 1px #c4cfe0}
.vac-sort select{transition:box-shadow .15s}
.vac-sort select:hover{box-shadow:inset 0 0 0 1px #c4cfe0}
a.tel:hover{text-decoration-color:currentColor}
.ev{transition:box-shadow .2s,background .2s}
.ev:hover{background:var(--card);box-shadow:inset 0 0 0 1px var(--line),0 12px 26px -16px rgba(13,47,133,.4)}
.person{transition:box-shadow .2s}
.doc-people .person:hover{box-shadow:inset 0 0 0 1px var(--line),0 12px 26px -16px rgba(13,47,133,.4)}
.doc-pubs li{transition:background .15s}
.doc-pubs li:hover{background:var(--brand-soft)}
.doc-disc li{transition:background .15s}
.doc-disc li:hover{background:var(--brand-soft)}
.ph-group li{transition:background .15s}
.ph-group li:hover{background:var(--brand-soft)!important}
.doc-amounts li{transition:transform .2s var(--ease),box-shadow .2s}
.doc-amounts li:hover{transform:translateY(-2px);box-shadow:0 12px 24px -16px rgba(13,47,133,.5)}
.doc-bells li:not(.is-now):hover{background:var(--brand-soft)}
.doc-kv>div{transition:background .15s}
.doc-kv>div:hover{background:var(--brand-soft)}
.u-block{transition:box-shadow .2s}
.u-block:hover{box-shadow:inset 0 0 0 1px #c4cfe0}
@media (prefers-reduced-motion:reduce){.hero-static:hover img,.side-slide:hover img,.post-img:hover img,.doc-amounts li:hover{transform:none}}

/* видеогалерея на главной */
.vg{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:20px;align-items:start}
.vg-thumb{position:relative;display:block;overflow:hidden;border-radius:14px;aspect-ratio:16/9;background:var(--brand-night)}
.vg-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.vg-thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,31,92,0) 45%,rgba(8,31,92,.55));transition:opacity .3s}
.vg-thumb i{position:absolute;z-index:1;left:50%;top:50%;display:grid;place-items:center;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--brand);box-shadow:0 10px 24px -8px rgba(0,0,0,.5);transition:transform .3s var(--ease),background .2s,color .2s}
.vg-thumb i svg{width:22px;height:22px;margin-left:3px}
.vg-dur{position:absolute;z-index:1;right:10px;bottom:10px;padding:3px 8px;border-radius:6px;background:rgba(8,20,50,.78);color:#fff;font-size:12.5px;font-weight:600;font-variant-numeric:tabular-nums}
.vg-main{display:flex;flex-direction:column;gap:14px}
.vg-main .vg-thumb{border-radius:18px}
.vg-main .vg-thumb i{width:74px;height:74px;margin:-37px 0 0 -37px}
.vg-main .vg-thumb i svg{width:30px;height:30px}
.vg-main .vg-dur{right:14px;bottom:14px;font-size:14px;padding:4px 10px}
.vg-body{display:flex;flex-direction:column;gap:4px;min-width:0}
.vg-tag{align-self:flex-start;padding:3px 10px;border-radius:999px;background:var(--cyan-soft);color:var(--brand);font:700 11.5px/1.4 var(--display);letter-spacing:.04em;text-transform:uppercase}
.vg-main b{font:800 clamp(18px,1.4vw,22px)/1.25 var(--display);color:var(--brand-deep);text-wrap:balance;transition:color .2s}
.vg-body small{font-size:13px;color:var(--muted)}
.vg-list{display:grid;gap:8px}
.vg-item{display:grid;grid-template-columns:minmax(120px,42%) 1fr;gap:14px;align-items:center;padding:8px;margin:-8px 0;border-radius:14px;transition:background .2s,box-shadow .2s}
.vg-item .vg-thumb{border-radius:10px}
.vg-item .vg-thumb i{width:36px;height:36px;margin:-18px 0 0 -18px}
.vg-item .vg-thumb i svg{width:16px;height:16px;margin-left:2px}
.vg-item .vg-dur{right:6px;bottom:6px;font-size:11.5px;padding:2px 6px}
.vg-item b{font-size:15px;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;transition:color .2s}
.vg-item:hover{background:#f5f8fe;box-shadow:inset 0 0 0 1px #d7e1f5}
:is(.vg-main,.vg-item):hover .vg-thumb img{transform:scale(1.05)}
:is(.vg-main,.vg-item):hover .vg-thumb i{transform:scale(1.1);background:var(--brand);color:#fff}
.vg-main:hover b,.vg-item:hover b{color:var(--brand)}
@media (max-width:1100px){.vg{grid-template-columns:1fr}.vg-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.vg-item{grid-template-columns:1fr;margin:0;padding:0}.vg-item:hover{background:none;box-shadow:none}}
@media (max-width:640px){.vg-list{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0 -16px;padding:0 16px 4px;scrollbar-width:none}.vg-list::-webkit-scrollbar{display:none}.vg-item{flex:0 0 72%;scroll-snap-align:start}}
@media (prefers-reduced-motion:reduce){:is(.vg-main,.vg-item):hover .vg-thumb img,:is(.vg-main,.vg-item):hover .vg-thumb i{transform:none}}

/* страница ролика */
.doc-movie{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:28px;align-items:start}
.mv-main{display:flex;flex-direction:column;gap:10px;min-width:0}
.mv-main .doc-embed{max-width:none;border-radius:16px}
.mv-title{margin:6px 0 0!important;padding:0!important;font:800 clamp(19px,1.6vw,24px)/1.25 var(--display)!important;text-transform:none!important;color:var(--text)!important;text-wrap:balance}
.mv-title::before{display:none}
.mv-meta{font-size:14px;font-weight:600;color:var(--muted)}
.mv-descr{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border-radius:12px;background:var(--bg);font-size:15px;line-height:1.55}
.mv-docs h3,.mv-side h3{margin-bottom:8px;font:700 12.5px/1.3 var(--display);letter-spacing:.04em;text-transform:uppercase;color:var(--brand-deep)}
.mv-docs ul{display:grid;gap:6px}
.mv-docs a{color:var(--brand);text-decoration:underline;text-decoration-color:rgba(26,69,180,.3);text-underline-offset:3px}
.mv-docs a:hover{text-decoration-color:currentColor}
.mv-side ul{display:grid;gap:6px}
.mv-side a{display:grid;grid-template-columns:168px 1fr;gap:12px;align-items:start;padding:6px;margin:0 -6px;border-radius:12px;transition:background .2s,box-shadow .2s}
.mv-side a:hover{background:#f5f8fe;box-shadow:inset 0 0 0 1px #d7e1f5}
.mv-thumb{position:relative;display:block;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:var(--brand-night)}
.mv-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.mv-side a:hover .mv-thumb img{transform:scale(1.05)}
.mv-dur{position:absolute;right:5px;bottom:5px;padding:1px 6px;border-radius:5px;background:rgba(8,20,50,.82);color:#fff;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}
.mv-side-body{display:flex;flex-direction:column;gap:4px;min-width:0}
.mv-side-body b{font-size:14.5px;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;transition:color .2s}
.mv-side a:hover b{color:var(--brand)}
.mv-side-body small{font-size:12.5px;color:var(--muted)}
@media (max-width:1100px){.doc-movie{grid-template-columns:1fr}}
@media (max-width:640px){.mv-side a{grid-template-columns:140px 1fr}}
@media (prefers-reduced-motion:reduce){.mv-side a:hover .mv-thumb img{transform:none}}
.mv-meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 16px}
.mv-alt{display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:500;color:var(--muted);transition:color .15s}
.mv-alt svg{width:14px;height:14px}
.mv-alt:hover{color:var(--brand)}

/* Compact home news: an illustrated lead and three thumbnail stories. */
.home-news{background:var(--card);border-radius:var(--radius);padding:22px 24px 24px}
.home-news .section-head{margin-bottom:18px;align-items:center;gap:16px}
.home-news .link-more{display:inline-flex;align-items:center;gap:8px;font-size:13px;white-space:nowrap}
.home-news-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:24px;align-items:stretch}
.home-news-card{min-width:0}
.home-news-card a{border-radius:10px}
.home-news-copy{min-width:0}
.home-news-card h3{font-size:15.5px;line-height:1.4;font-weight:650;color:var(--brand-deep);overflow-wrap:anywhere;transition:color .18s}
.home-news-card time{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;line-height:1.4;margin-bottom:7px;font-variant-numeric:tabular-nums}
.home-news-card a:hover h3{color:var(--brand);text-decoration:underline;text-underline-offset:3px}
.home-news-picture{display:block;overflow:hidden;background:var(--brand-soft);border-radius:9px}
.home-news-picture img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s var(--ease)}
.home-news-card a:hover img{transform:scale(1.035)}
.home-news-lead a{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;min-height:290px;height:100%;padding:22px;overflow:hidden;background:var(--brand-night);border-radius:12px}
.home-news-lead .home-news-picture{position:absolute;inset:0;border-radius:inherit}
.home-news-lead .home-news-picture img{object-position:center 30%}
.home-news-lead a::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(4,16,40,.02) 12%,rgba(4,16,40,.38) 40%,rgba(4,16,40,.92) 72%,#041028 100%);pointer-events:none}
.home-news-lead .home-news-copy{position:relative;z-index:1;margin-top:110px}
.home-news-lead h3{font-size:20px;line-height:1.35;font-weight:700;color:#fff;text-wrap:pretty}
.home-news-lead a:hover h3{color:#fff}
.home-news-lead time{color:#e4edff}
.home-news-lead time::before{content:"";width:18px;height:3px;border-radius:2px;background:var(--cyan)}
.home-news-list{display:grid;grid-template-rows:repeat(3,1fr)}
.home-news-list article{display:flex;align-items:center;padding:14px 0}
.home-news-list article:first-child{padding-top:0}
.home-news-list article:last-child{padding-bottom:0}
.home-news-list article+article{border-top:1px solid var(--line)}
.home-news-list a{display:grid;grid-template-columns:88px minmax(0,1fr);gap:14px;align-items:center;width:100%}
.home-news-list .home-news-picture{height:76px}
.post[id]{scroll-margin-top:24px}
.post:target{outline:2px solid var(--brand);outline-offset:4px}
@media(max-width:1100px) and (min-width:701px){
 .home-news-grid{gap:18px}
 .home-news-list a{grid-template-columns:72px minmax(0,1fr);gap:12px}
 .home-news-card h3{font-size:14px}
 .home-news-lead h3{font-size:18px}
}
@media(max-width:700px){
 .home-news{padding:18px 16px}
 .home-news-grid{grid-template-columns:minmax(0,1fr);gap:18px}
 .home-news-lead a{min-height:240px;padding:18px}
 .home-news-lead h3{font-size:19px;line-height:1.35}
 .home-news-lead .home-news-copy{margin-top:85px}
 .home-news-list a{grid-template-columns:76px minmax(0,1fr);gap:13px}
 .home-news-list .home-news-picture{height:68px}
 .home-news-list article{padding:12px 0}
 .home-news-card h3{font-size:15px;line-height:1.4}
 .home-news-lead h3{font-size:19px}
 .home-news .link-more{font-size:12px;gap:5px}
}
@media(prefers-reduced-motion:reduce){
 .home-news-picture img,.home-news-card h3{transition:none}
 .home-news-card a:hover img{transform:none}
}

/* Common frame for sidebar services and original campaign artwork. */
.quality a,.pay,.report,.side-slider{border:1px solid var(--line);box-shadow:0 2px 8px rgba(13,47,133,.025)}
.quality a{background:var(--card);color:var(--brand-deep);padding:16px;gap:14px;font-size:14px;line-height:1.4;transition:border-color .18s,box-shadow .18s}
.quality a::after{display:none}
.quality a svg,.pay svg{flex:none;width:38px;height:38px;padding:9px;border-radius:10px;background:var(--brand-soft);color:var(--brand)}
.quality a:hover,.pay:hover{filter:none;border-color:var(--brand);box-shadow:0 3px 12px rgba(13,47,133,.07)}
.pay{padding:16px;gap:14px}
.pay span{min-width:0;color:var(--muted);font-size:12px;line-height:1.45}
.pay b{color:var(--brand-deep);font-size:14px;margin-bottom:4px}
.side-slider{padding:0;border-radius:var(--radius)}
.side-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px;border-bottom:1px solid var(--line)}
.side-heading h3{font:800 13px/1.3 var(--display);text-transform:uppercase;letter-spacing:.02em;color:var(--brand-deep)}
.side-heading>span{font-size:11px;color:var(--muted)}
.side-slide[hidden]{display:none}
.side-slide.is-active{animation:none}
.side-art{display:flex;align-items:center;justify-content:center;aspect-ratio:260/220;margin:12px;padding:8px;background:var(--bg);border-radius:10px;overflow:hidden}
.side-slide .side-art img{width:100%;height:100%;aspect-ratio:auto;object-fit:contain;border-radius:5px;transform:none;transition:none}
.side-slide:hover .side-art img{transform:none}
.side-caption{display:grid;gap:10px;padding:2px 16px 16px}
.side-caption b{font-size:14px;font-weight:650;line-height:1.4;color:var(--brand-deep)}
.side-action{display:flex;align-items:center;gap:7px;color:var(--brand);font-size:12px;font-weight:600}
.side-action svg{width:15px;height:15px}
.side-slide:hover .side-action{text-decoration:underline;text-underline-offset:3px}
.side-nav{padding:10px 14px;border-top:1px solid var(--line);background:var(--bg)}
.side-nav[hidden]{display:none}
.side-nav button{width:40px;height:40px;background:var(--card);border:1px solid var(--line);border-radius:10px}
.side-nav button:hover{background:var(--brand);border-color:var(--brand);color:#fff}
.side-nav .count{font-size:12px}
.report{padding:16px;border-left:3px solid var(--red);background:var(--card);color:var(--text);font-size:13px;line-height:1.45}
.report b{display:block;font-weight:600}
.report span{padding:0;margin-top:9px;background:none;color:var(--red);font-size:12px;letter-spacing:0;text-transform:none}
.report span::after{content:" →"}
.report:hover{background:var(--card);border-color:var(--red)}
@media(max-width:700px){.side-heading{padding:14px}.quality a,.pay,.report{padding:14px}}

/* ---------- страница новости (news-<id>.html) ---------- */
.art-page{padding-top:20px;padding-bottom:56px;display:flex;flex-direction:column}
.art-crumbs{margin-bottom:16px;color:var(--muted)}
.art-crumbs a{color:var(--brand)}
.art-head{display:flex;flex-direction:column;gap:10px}
.art-head time{font-size:14px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.art-head h1{margin:0;font:700 clamp(26px,3vw,42px)/1.16 var(--display);color:var(--text)}
.art-gallery{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,1fr);gap:12px;margin-top:22px}
.art-shot{margin:0;border-radius:var(--radius);overflow:hidden;background:var(--card);box-shadow:0 1px 2px rgba(13,47,133,.08)}
.art-shot img{display:block;width:100%;height:100%;object-fit:cover}
.art-shot-lead{aspect-ratio:16/9}
.art-thumbs{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:1fr;gap:12px;min-height:0}
.art-thumbs .art-shot{aspect-ratio:4/3}
.art-body{margin-top:26px;display:flex;flex-direction:column;gap:14px;font-size:17px;line-height:1.7;color:var(--text)}
.art-body p{margin:0}
.art-body a{color:var(--brand);text-decoration:underline;text-underline-offset:3px}
.art-body img.art-img{display:block;width:auto;max-width:100%;max-height:520px;border-radius:var(--radius-s)}
.art-body ul,.art-body ol{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:6px}
.art-body blockquote{margin:0;padding:12px 16px;border-left:3px solid var(--brand);background:var(--brand-soft);border-radius:var(--radius-s)}
.art-table{overflow-x:auto}
.art-body table{width:100%;border-collapse:collapse;font-size:14px}
.art-body td,.art-body th{padding:8px 10px;border:1px solid var(--line);text-align:left}
.art-foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:26px;padding-top:18px;border-top:1px solid var(--line)}
.art-orig{margin-left:auto;font-size:14px;color:var(--muted);display:inline-flex;align-items:center;gap:6px}
.art-orig:hover{color:var(--brand)}
.art-more{margin-top:28px;padding:20px clamp(16px,2vw,24px);border-radius:var(--radius);background:var(--card);box-shadow:0 1px 2px rgba(13,47,133,.06)}
.art-more h2{margin:0 0 12px;font:700 18px/1.2 var(--display)}
.art-more .ticks{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;font-size:15px}
.art-more .ticks li{display:flex;gap:12px;align-items:baseline}
.art-more .ticks time{flex:none;font-size:13px;color:var(--muted)}
@media(max-width:1000px){.art-gallery{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}}
@media(max-width:820px){
 .art-gallery{grid-template-columns:minmax(0,1fr)}
 .art-thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}
 .art-thumbs .art-shot{aspect-ratio:1/1}
}
@media(max-width:600px){
 .art-page{padding-top:14px;padding-bottom:40px}
 .art-head h1{font-size:24px}
 .art-gallery{gap:8px}
 .art-thumbs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .art-body{font-size:16px;line-height:1.62;margin-top:18px}
 .art-orig{margin-left:0}
}
