/* Дополнения для WordPress-версии */
.deep-row .thumb img.pi,.cursor-img img.pi{object-position:var(--opd,50% 50%)}
@media (max-width:900px){.deep-row .thumb img.pi{object-position:var(--opm,var(--opd,50% 50%))}}
.gl-text{max-width:72ch}
.gl-text h2{font-size:clamp(22px,2vw,28px);color:var(--navy);margin:36px 0 14px}
.gl-text p,.gl-text li{line-height:1.7;color:var(--ink)}
.gl-text p+p{margin-top:12px}
.gl-text img{max-width:100%;height:auto;border-radius:16px}
.gl-text a{color:var(--navy);font-weight:600}
.lg-sec h3{font-size:clamp(18px,1.6vw,22px);color:var(--navy);margin:20px 0 10px}
.lg-sec ol{padding-left:22px;margin:0}
/* Панель администратора не перекрывает шапку */
.admin-bar .header{top:32px}
@media (max-width:782px){.admin-bar .header{top:46px}}
.screen-reader-text{position:absolute!important;left:-9999px}
/* Шапка на всех страницах как на главной: сплошная, без стекла */
.svc .header,.svc .header.solid{background:var(--surface);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 1px 0 rgba(4,31,74,.08)}
/* На телефоне панель администратора уезжает при прокрутке — шапка остаётся у края экрана */
@media (max-width:600px){.admin-bar .header{top:0}}
/* Дополнительные карточки «Новичкам» (если их больше трёх) */
.bento-more{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap,18px);margin-top:var(--gap,18px)}
.bento-more .card{min-height:0}
.bento-more .card>.ph{aspect-ratio:16/10;height:auto}
@media (max-width:1100px){.bento-more{grid-template-columns:1fr 1fr}}
@media (max-width:700px){.bento-more{grid-template-columns:1fr}.bento-more .card>.ph{aspect-ratio:4/3}}
/* Карточки с цифрами: сколько карточек — столько колонок (до 4) */
.program{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}
.prog .n{overflow-wrap:anywhere}
@media (max-width:980px){.program{grid-template-columns:1fr}}
/* Превью видео без обложки — первый кадр */
.ph video.pi{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;background:#06284a}
/* Галерея: быстрые клики по стрелкам больше не выделяют фото синим */
#mediaDlg,#mediaDlg *{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
#mediaDlg img,#mediaDlg video{-webkit-user-drag:none}
#mediaDlg ::selection{background:transparent}

/* ---------- 404: «тут слишком глубоко» ---------- */
.svc main.gl404,.gl404{position:relative;overflow:hidden;min-height:100vh;display:flex;align-items:flex-start;color:#fff;
  background:linear-gradient(180deg,#0E4C72 0%,var(--deep) 38%,var(--deeper) 100%);padding:calc(var(--hh,84px) + clamp(28px,6vh,72px)) 0 clamp(80px,10vh,120px)}
.gl404::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(60% 45% at 70% 0%,rgba(159,220,232,.22),transparent 70%)}
.gl404-in{position:relative;z-index:1;max-width:1320px}
.gl404-depth{margin:0;font-family:var(--display);font-weight:600;line-height:.82;letter-spacing:-.04em;
  font-size:clamp(110px,22vw,300px);color:var(--sun);opacity:.9;
  -webkit-mask-image:linear-gradient(180deg,#000 35%,rgba(0,0,0,.15) 100%);mask-image:linear-gradient(180deg,#000 35%,rgba(0,0,0,.15) 100%)}
.gl404-depth span{font-size:.28em;letter-spacing:0;margin-left:.12em;vertical-align:.2em;opacity:.7}
.gl404 h1{margin-top:clamp(18px,3vw,34px);font-size:clamp(32px,4.4vw,64px);line-height:1.04;color:#fff;max-width:14ch}
.gl404-lead{margin:18px 0 0;max-width:46ch;font-size:clamp(17px,1.4vw,20px);line-height:1.55;color:rgba(255,255,255,.78)}
.gl404-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.gl404-links a{padding:10px 16px;border-radius:999px;font-weight:600;font-size:15px;color:#fff;text-decoration:none;
  background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.22);transition:background .25s,color .25s}
.gl404-links a:hover,.gl404-links a:focus-visible{background:#fff;color:var(--navy)}
.gl404-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.gl404-home{background:#fff;color:var(--navy)}
.gl404-call{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.45)}
.gl404-call:hover{background:rgba(255,255,255,.1)}
.gl404 a:focus-visible,.gl404 button:focus-visible{outline:2px solid var(--sun);outline-offset:3px}
/* пузыри: одно спокойное движение снизу вверх */
.gl404-bubbles{position:absolute;inset:0;pointer-events:none}
.gl404-bubbles i{position:absolute;bottom:-40px;border-radius:50%;border:1.5px solid rgba(255,255,255,.45);
  background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.35),rgba(255,255,255,0) 60%);animation:glRise linear infinite}
.gl404-bubbles i:nth-child(1){left:72%;width:14px;height:14px;animation-duration:9s}
.gl404-bubbles i:nth-child(2){left:76%;width:8px;height:8px;animation-duration:7s;animation-delay:2s}
.gl404-bubbles i:nth-child(3){left:80%;width:20px;height:20px;animation-duration:12s;animation-delay:1s}
.gl404-bubbles i:nth-child(4){left:68%;width:6px;height:6px;animation-duration:8s;animation-delay:4s}
.gl404-bubbles i:nth-child(5){left:84%;width:10px;height:10px;animation-duration:10s;animation-delay:5s}
.gl404-bubbles i:nth-child(6){left:74%;width:12px;height:12px;animation-duration:11s;animation-delay:7s}
@keyframes glRise{0%{transform:translate3d(0,0,0);opacity:0}10%{opacity:1}100%{transform:translate3d(-18px,-110vh,0);opacity:0}}
@media (max-width:760px){.gl404{align-items:flex-start}.gl404-bubbles i{left:auto!important;right:12%}.gl404-bubbles i:nth-child(even){right:22%}}
@media (prefers-reduced-motion:reduce){.gl404-bubbles{display:none}}

/* на 404 подвала нет — только глубина */
.error404 .footer,.error404 .strip{display:none!important}
.error404 .gl404{min-height:100vh}
