/* прогон 24 · ночь 28→29.10: телефон, пропорции, механики; шапки */

/* ── «Тесты» одно небо (sky23) на телефоне: правое небо уезжало за левый край (специфичность), теперь каждая коробка — своя половина той же картины */
@media (max-width:1023.98px){
  :root[data-look=leaf] .v-sky23 .d7-lv .d7-sky img,:root[data-look=leaf] .v-sky23 .d7-ty .d7-sky img{width:200%!important;height:100%!important;object-fit:cover!important}
  :root[data-look=leaf] .v-sky23 .d7-lv .d7-sky img{left:0!important}
  :root[data-look=leaf] .v-sky23 .d7-ty .d7-sky img{left:-100%!important;opacity:1!important}
}
/* ── «Пилигрим» в коробке на телефоне: текст прилипал к краю коробки */
@media (max-width:1023.98px){
  :root[data-look=leaf] .v-two22 .r17-pil .r17-txt{padding:calc(16 * var(--u)) calc(20 * var(--u)) calc(22 * var(--u))!important;box-sizing:border-box}
}
/* ── «Между уроками» на телефоне: крестьяне Дюрера были ростом с сцену «Подслушников» — меньше, площадь ниже */
@media (max-width:760px){
  :root[data-look=leaf] .v-two22 .pz-box{--pz-fh:min(250px,64vw)!important;--pz-dh1:min(232px,calc((var(--pz-fw) - 20px) / 1.3))!important}
}
/* ── ✛-разделитель на телефоне: знак лежал на заголовке раздела («I Направления») и стоял в большой пустоте — ближе к верху, с отступом от заголовка */
@media (max-width:1023.98px){
  html:is([data-rh="live"],[data-rh="big"],[data-rh="glow"]) :is([data-sec="courses"],[data-sec="tests"],[data-sec="prices"],[data-sec="zapis"]):not([hidden])::before{height:calc(48 * var(--u))!important;margin:calc((var(--sec) - 28) * var(--u)) auto calc((var(--sec) * -1 + 30) * var(--u))!important}
}
/* ── «С чего начать» на телефоне: Грамматика (193 px) стояла в рамке 160 px и ногами заходила на раму доски — фигура целиком над доской, с тенью под ногами */
@media (max-width:1023.98px){
  :root[data-look=leaf] .v-door18c .dr-fig{height:auto!important;margin-bottom:calc(14 * var(--u))!important;position:relative}
  :root[data-look=leaf] .v-door18c .dr-fig::after{content:"";position:absolute;left:18%;right:22%;bottom:calc(-5 * var(--u));height:calc(10 * var(--u));border-radius:50%;background:radial-gradient(closest-side,rgba(36,38,43,.22),transparent);z-index:-1}
}
/* ── «Цены» на телефоне (листается вбок): карточки разной высоты оставляли под «Пробным» пустоту ≈ 200 px — одна высота у всех трёх */
@media (max-width:1023.98px){ :root[data-look=leaf] [data-sec=prices] .lf19-sw{align-items:stretch!important} }
/* ── гладкость: живой ✛ крутится от прокрутки силами CSS (scroll-driven animation) — раньше скрипт на каждом кадре пересчитывал стили всей страницы (на телефоне ≈ 1 с работы на одну прокрутку) */
@supports (animation-timeline: view()){
  html:is([data-rh="live"],[data-rh="big"],[data-rh="glow"]) :is([data-sec="courses"],[data-sec="prices"]):not([hidden])::before{animation:s24-cw linear both;animation-timeline:view()}
  html:is([data-rh="live"],[data-rh="big"],[data-rh="glow"]) :is([data-sec="tests"],[data-sec="zapis"]):not([hidden])::before{animation:s24-ccw linear both;animation-timeline:view()}
  @keyframes s24-cw{from{transform:rotate(330deg)}to{transform:rotate(-330deg)}}
  @keyframes s24-ccw{from{transform:rotate(-330deg)}to{transform:rotate(330deg)}}
  @media (prefers-reduced-motion:reduce){ html [data-sec]::before{animation:none!important} }
  html[data-theatre="off"] [data-sec]::before{animation:none!important}
}
/* ── подвал на телефоне: ссылки на документы были 20 px в высоту — палец промахивается */
@media (max-width:1023.98px){ :root[data-look=leaf] #contacts a[href*="privacy"],:root[data-look=leaf] #contacts a[href*="consent"],:root[data-look=leaf] #contacts a[href*="polit"],:root[data-look=leaf] #contacts a[href*="soglas"]{display:inline-block;padding-block:12px} }
#pult .pu-done::before{content:"Ночь 24 · "}
/* ── ✛ на телефоне: от знака до заголовка было 38 / 94 / 118 / 158 px — один шаг */
@media (max-width:1023.98px){ html:is([data-rh="live"],[data-rh="big"],[data-rh="glow"]) :is([data-sec="tests"],[data-sec="prices"],[data-sec="zapis"]):not([hidden]) > .sec{margin-top:0!important} }
/* ── телефон: кнопка «Меню» в шапке и выпадающий список разделов (рецензент R, п. 1) */
.lf24-mb,.lf24-nav{display:none}
@media (max-width:1023.98px){
  header.bar .lf24-mb{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:64px;padding:0 14px;margin-left:8px;border:1px solid rgba(36,38,43,.35);border-radius:8px;background:transparent;color:#24262b;font:500 15px/1 var(--f-text,Vollkorn,Georgia,serif);cursor:pointer}
  header.bar .lf24-mb[aria-expanded=true]{background:#24262b;color:#fbf8f1}
  header.bar > .btn{margin-left:auto}
  header.bar .lf24-nav:not([hidden]){display:grid;position:absolute;top:100%;left:0;right:0;padding:6px 16px 14px;background:#fbf8f1;box-shadow:0 14px 30px rgba(36,38,43,.14);border-top:1px solid rgba(36,38,43,.08)}
  header.bar .lf24-nav a{display:flex;align-items:center;min-height:48px;border-bottom:1px solid rgba(36,38,43,.07);text-decoration:none;color:#24262b;font:400 19px/1.2 var(--f-head,"EB Garamond",Georgia,serif)}
  header.bar .lf24-nav a:last-child{border-bottom:0}
}
/* ── телефон: «Цены» — общая высота карточек давала 550 px пустого зелёного под «Пробным» (R, п. 3) — вернула как было */
@media (max-width:1023.98px){ :root[data-look=leaf] [data-sec=prices] .lf19-sw{align-items:start!important} }
/* ── телефон, первый экран: между кнопкой и крыльями было ≈ 125 px пустоты — ангел (вместе с облаками) выше на 80 px, шапка короче (R, п. 2) */
@media (max-width:1023.98px){ :root[data-look=leaf] .v-angel17.hero{height:calc(1040 * var(--u))!important} :root[data-look=leaf] .v-angel17 .angel{top:calc(400 * var(--u))!important} header.bar .wordmark{white-space:nowrap} }
/* ── «Запись одной строкой»: подсказка ошибки была бледным золотом по кости и ломала ряд «поле + кнопка» (R, п. 5) — тёмная охра, строкой под рядом */
:root:not([data-look=r18]) #quick.v-pen22 .z-err{order:9;flex:1 0 100%;margin:8px 0 0;color:#6b4a12!important;font:italic 500 max(15px, calc(16 * var(--u)))/1.35 var(--f-text,Vollkorn,Georgia,serif)}
:root:not([data-look=r18]) #quick.v-pen22 [aria-invalid=true]{outline:2px solid #8a6a1f;outline-offset:1px}
:root:not([data-look=r18]) #quick.v-pen22 .qform > .q-note,:root:not([data-look=r18]) #quick.v-pen22 .qform > .q-bot{order:10}
/* ── «Учим на совесть» на телефоне: под карточкой игры был пустой пол — сцена ниже, фигуры ближе к карточке (R, п. 6) */
@media (max-width:1023.98px){ :root[data-look=leaf] .v-hon18 .h18-scene{height:calc(200 * var(--u))!important;margin-top:0!important} }
/* ── «Подслушники» на телефоне: сцена выше (16:10 → 4:3), люди крупнее и ближе к росту крестьян Дюрера рядом (R, п. 7) */
@media (max-width:760px){ :root[data-look=leaf] .v-two22 .nw-club .paint{aspect-ratio:4/3!important} }
/* ── «Отзывы»: стрелка «B1 → B2» почти не видна (R, п. 8) */
:root[data-look=leaf] .rv17-stat i{color:#e9cf8e!important;opacity:1!important}
/* ── мелкий листок на углу «Подслушников» торчал обрезком (R, п. 9; правило «мелкие рисунки — нет») */
:root[data-look=leaf] .v-two22 .r17-leaf{display:none!important}
/* ── ритм на телефоне: между разделами было 96–136 px пустоты — ровный шаг ≈ 64 px (R, п. 4) */
@media (max-width:1023.98px){
  :root[data-look=leaf] main > [data-sec="reviews"]:not([hidden]){margin-top:-52px}
  :root[data-look=leaf] main > [data-sec="how"]:not([hidden]){margin-top:-34px}
  :root[data-look=leaf] main > [data-sec="faq"]:not([hidden]){margin-top:-32px}
  :root[data-look=leaf] main > [data-sec="channel"]:not([hidden]){margin-top:-60px}
}
