/* Страница «Консультации» (пересобрана 25.09) — разметка в
   templates/pages/consultations.html, «сегодня» и «на связи» — static/js/priem.js.
   Первый экран — тёмная плита тем же языком, что главная карточка кабинета
   (lk-apple.css, .ap-hero), но без фото: вместо обложки неделя приёма.
   Ниже — светлые блоки: белое и рамка, без бежевого. */
.pr-top{padding:18px 0 8px}
.pr-top .crumbs{margin-bottom:18px}

.pr-plate{position:relative;isolation:isolate;overflow:hidden;display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:center;
  padding:clamp(24px,3.4vw,48px);border-radius:28px;background:var(--night);color:#fff;box-shadow:var(--veil)}
/* вместо размытой обложки — размытые пятна палитры сайта */
.pr-plate::before{content:"";position:absolute;inset:-20%;z-index:-1;pointer-events:none;filter:blur(24px);
  background:radial-gradient(38% 48% at 10% 18%,rgba(179,149,219,.42),transparent 70%),
             radial-gradient(34% 44% at 88% 88%,rgba(189,115,99,.32),transparent 70%),
             radial-gradient(30% 40% at 72% 8%,rgba(86,61,135,.7),transparent 70%)}
.pr-plate__b{display:flex;flex-direction:column;align-items:flex-start;gap:14px;min-width:0}
.pr-eyebrow{font-size:var(--fs-micro);font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(255,255,255,.72)}
.pr-h1{margin:0;font-family:'Arsenal',Georgia,serif;font-weight:700;font-size:var(--fs-num);
  line-height:1.08;letter-spacing:-.01em;color:#fff;text-wrap:balance}
.pr-facts{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 0;padding:0;list-style:none}
.pr-facts li{padding:7px 14px;border-radius:999px;font-size:var(--fs-note);
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18)}
.pr-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}
/* кнопки — общие .nx-btn: тот же ховер и то же свечение из-под кнопки, что
   по всему сайту. Плита тёмная — берёт светлую палитру свечения так же, как
   .topbar и .cd в glow.css; контурная кнопка перекрашена под тёмный фон */
.pr-plate{--glow:var(--btn-glow-light);--glow-off:var(--btn-glow-light-off);
  --glow-base:var(--btn-glow-light-base);--glow-base-off:var(--btn-glow-light-base-off)}
.pr-plate .nx-btn--ghost{color:#fff;border-color:rgba(255,255,255,.4)}
.pr-plate .nx-btn--ghost:hover{color:#fff;border-color:#fff}
.pr-plate .nx-btn:focus-visible{outline-color:#fff}
.pr-phones{margin:0;font-size:var(--fs-note);color:rgba(255,255,255,.72);font-variant-numeric:tabular-nums}

/* часы приёма — вывеской, как внизу главной: подпись и крупные цифры
   шрифтом заголовка. Ряд «Пн…Вс» снят (Даня, 13.10): плашки с кольцом на
   сегодняшнем читались как запись на день, а нажать их нельзя */
.pr-week{display:grid;gap:14px;padding:22px;border-radius:20px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}
.pr-week__hours{display:grid;gap:4px;margin:0;font-size:var(--fs-note);color:rgba(255,255,255,.7)}
.pr-week__hh{font-family:'Arsenal',Georgia,serif;font-weight:400;
  font-size:clamp(1.7rem,2.6vw,2.4rem);line-height:1.05;letter-spacing:-.01em;color:#fff;
  font-variant-numeric:lining-nums tabular-nums}
.pr-week__now{margin:0;display:flex;align-items:center;gap:8px;font-weight:600;font-size:var(--fs-note)}
.pr-week__now::before{content:"";width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.4)}
.pr-week__now[data-state="on"]::before{background:#7EE2A8;box-shadow:0 0 0 4px rgba(126,226,168,.18)}

/* ── светлые блоки ─────────────────────────────────────────────────── */
/* Система светлых блоков (24.09, язык «Эпл»: белый холст, холодный серый
   #f5f5f7 плит, волосяные линии, чернильный текст, фиолетовые только числа).
   Сетка: 12 колонок с шагом 24 px внутри .container (1200 px на 1440) —
   заголовки, линии и плиты стоят на одной левой вертикали.
   Ритм: плита → первый заголовок 64 px · между группами 96 · заголовок →
   содержимое 24 · поля строки 24 · абзацы 16 · вопросы → итоговая плита 40.
   На телефоне 40 / 64 / 16.
   Компоненты:
   · .pr-h2 — заголовок раздела на всю ширину, без ручных переносов;
   · .pr-rows > .pr-row — строки на волосяных линиях (правила, вопросы);
     у правил в колонке 1 порядковый номер 01…, текст — колонки 2–12;
   · .pr-tile — серая плита (шаги, адрес, итоговая плашка), поля --pr-pad;
   · .pr-step — колонка ряда шагов: цифра, заголовок, под ним серый текст;
   · .pr-q — аккордеон: вопрос во всю ширину, знак «+» справа, ответ ≤ 8 колонок;
   · кнопки — только общие .nx-btn. Тексты из CMS, число строк любое. */
.pr-sec{--pr-tile:#f5f5f7;--pr-hair:rgba(42,35,54,.13);--pr-gap:24px;--pr-pad:clamp(20px,3.4vw,48px);
  --pr-h2:clamp(30px,3.4vw,44px);--pr-lh:1.5;color:var(--ink)}
body.page-clean .block.pr-sec{padding:96px 0 0}
body.page-clean .block.pr-sec--first{padding-top:64px}
body.page-clean .block.pr-sec--last{padding-bottom:120px}
.pr-sec .pr-h2{margin:0 0 var(--pr-gap);font-size:var(--pr-h2);line-height:1.1;letter-spacing:-.015em;
  color:var(--ink);text-wrap:balance}
.pr-sec h3{color:var(--ink);letter-spacing:-.005em}
.pr-text > *{margin:0}
.pr-text > * + *{margin-top:16px}
/* жирное внутри серого текста (шаги, ответы) — тем же серым: чёрное слово
   посреди серой фразы читалось впритык (решение Дани 25.09) */
.pr-text b,.pr-text strong{font-weight:700;color:inherit}

/* строки на волосяных линиях */
.pr-rows{margin:0;padding:0;list-style:none;border-bottom:1px solid var(--pr-hair)}
.pr-row{border-top:1px solid var(--pr-hair)}

/* что важно знать: номер — колонка 1, фраза — колонки 2–12 */
.pr-rules{counter-reset:rl}
.pr-rule{counter-increment:rl;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));
  column-gap:var(--pr-gap);align-items:baseline;padding:24px 0;
  font-size:var(--fs-lede);line-height:var(--pr-lh);color:var(--muted);text-wrap:pretty}
.pr-rule::before{content:counter(rl,decimal-leading-zero);grid-column:1;font-size:var(--fs-note);
  font-weight:700;letter-spacing:.06em;color:var(--violet);font-variant-numeric:tabular-nums}
.pr-rule > *{grid-column:2 / -1;margin:0}
.pr-rule b,.pr-rule strong{font-weight:700;color:var(--ink)}
/* жирное начало правила — своей строкой, серое пояснение под ним */
.pr-rule .pr-lead{display:block;margin-bottom:6px}

/* серая плита; итоговая плашка — та же плита, класс pr-other без добавок
   держит test_consultations (по нему режется страница) */
.pr-tile,.pr-other{padding:var(--pr-pad);border-radius:28px;background:var(--pr-tile)}
/* плита шагов — без заливки, фон как у всей страницы; отдельный блок
   обозначен только тонкой рамкой по контуру (решение Дани 25.09) */
.pr-tile.pr-howto{background:none;border:1px solid var(--pr-hair)}

/* как записаться: шаги в ряд, колонками с волосяной линией между ними —
   2 шага занимают ширину плиты пополам, 3 — третями (Даня 25.09: столбиком
   справа оставалась пустота). Внутри шага цифра, под ней заголовок, под
   ним серый текст: заголовок и текст рядом двумя колонками на ширине
   ноутбука вставали в 30 px друг от друга */
.pr-steps{counter-reset:st;margin:0;padding:0 0 32px;list-style:none;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.pr-step{counter-increment:st;padding:0 clamp(20px,3vw,40px)}
.pr-step:first-child{padding-left:0}
.pr-step:last-child{padding-right:0}
.pr-step + .pr-step{border-left:1px solid var(--pr-hair)}
.pr-step::before{content:counter(st);display:block;margin-bottom:18px;font-family:'Arsenal',Georgia,serif;
  font-weight:700;font-size:var(--fs-numeral);line-height:1;color:var(--violet);font-variant-numeric:tabular-nums}
.pr-step h3{margin:0;font-size:var(--fs-h3);line-height:1.25}
.pr-step .pr-text{text-wrap:pretty;font-size:var(--fs-lg);line-height:1.6;color:var(--muted)}
.pr-step h3 + .pr-text{margin-top:12px}
.pr-howto__cta{margin:0;padding-top:28px;border-top:1px solid var(--pr-hair);
  display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--pr-gap)}
/* стрелка в кружке — как у «Узнать подробнее» в шапке (.topbar__arr) и
   «Записаться на приём» на главной (.nx-exp__cta-arr): на фиолетовой кнопке
   кружок белый, на светлой — фиолетовый; правый отступ кнопки поджат,
   кружок садится к краю. Тот же приём у «Обо мне» (.ab-arr в about.css) */
.pr-arr{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;flex:0 0 auto;
  background:var(--violet);color:#fff;font-size:var(--fs-note);line-height:1;font-style:normal;
  transition:transform .4s var(--dl-ease)}
.nx-btn--primary .pr-arr{background:#fff;color:var(--violet)}
.nx-btn:has(.pr-arr){padding-right:11px;gap:14px}
.nx-btn:hover .pr-arr{transform:translateX(2px)}
/* кнопка записи — по центру плиты (решение Дани 25.09) */
.pr-howto__cta .nx-btn{grid-column:1 / -1;justify-self:center}

/* команда — колонки 1–8, как добраться — плита в колонках 9–12 */
.pr-about{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--pr-gap);align-items:start}
.pr-about__text{grid-column:1 / 9;max-width:80ch;font-size:var(--fs-lede);line-height:1.6;
  color:var(--muted-strong);text-wrap:pretty}
.pr-place{grid-column:9 / -1;display:flex;flex-direction:column;align-items:stretch;gap:16px;min-width:0}
.pr-place__h{margin:0;font-family:inherit;font-size:var(--fs-tag);font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--muted)}
.pr-place__addr{margin:0;font-family:'Arsenal',Georgia,serif;font-weight:700;
  font-size:var(--fs-h3);line-height:1.25;color:var(--ink);overflow-wrap:anywhere}
/* метро — кружками цветов линий узла: Кольцевая, Таганско-Краснопресненская
   и Калининская (переход на «Марксистскую») */
.pr-metro{margin:0;display:flex;align-items:center;gap:10px;font-weight:600;font-size:var(--fs-sm)}
.pr-metro__lines{display:inline-flex}
.pr-line{width:16px;height:16px;border-radius:50%;border:2px solid var(--pr-tile)}
.pr-line + .pr-line{margin-left:-6px}
.pr-line--5{background:#8D5B2D}
.pr-line--7{background:#943E90}
.pr-line--8{background:#FFCD1C}
.pr-place__go{margin-top:8px;width:100%}

/* вопросы: вопрос во всю ширину, «+» справа, ответ не шире 8 колонок */
.pr-q > summary{display:flex;align-items:center;justify-content:space-between;gap:var(--pr-gap);
  min-height:44px;padding:24px 0;cursor:pointer;list-style:none;
  font-size:var(--fs-lede);font-weight:600;line-height:1.35;color:var(--ink);transition:color .3s}
.pr-q > summary::-webkit-details-marker{display:none}
.pr-q > summary:hover{color:var(--violet)}
.pr-q > summary:focus-visible{outline:var(--focus);outline-offset:var(--focus-offset);border-radius:6px}
.pr-q__ico{position:relative;flex:none;width:32px;height:32px;border-radius:50%;background:var(--pr-tile);
  transition:background-color .3s,transform .45s cubic-bezier(.4,.05,.2,1)}
.pr-q__ico::before,.pr-q__ico::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;
  margin:-1px 0 0 -6px;border-radius:1px;background:var(--violet)}
.pr-q__ico::after{transform:rotate(90deg)}
.pr-q > summary:hover .pr-q__ico{background:var(--lavender-soft)}
.pr-q[open] .pr-q__ico{transform:rotate(45deg)}
.pr-q > .pr-text{max-width:calc((100% - 11 * var(--pr-gap)) * 8 / 12 + 7 * var(--pr-gap));
  padding:0 0 28px;font-size:var(--fs-lg);line-height:1.6;color:var(--muted-strong);text-wrap:pretty}

/* итог: пояснение забирает всю ширину, кнопка — справа по своему размеру */
.pr-other{margin-top:40px;display:grid;grid-template-columns:minmax(0,1fr) auto;
  column-gap:var(--pr-gap);row-gap:20px;align-items:center}
/* итоговая плашка — в цвет подвала (--night, решение Дани 25.09): последний
   акцент страницы, кнопка белая и светится светлой палитрой, как на плите */
.pr-sec .pr-other{background:var(--night);color:#fff;
  --glow:var(--btn-glow-light);--glow-off:var(--btn-glow-light-off);
  --glow-base:var(--btn-glow-light-base);--glow-base-off:var(--btn-glow-light-base-off)}
.pr-sec .pr-other__h{margin:0 0 6px;font-size:var(--fs-h3);line-height:1.25;color:#fff}
.pr-other p{margin:0;font-size:var(--fs-md);line-height:1.55;color:rgba(255,255,255,.8);text-wrap:pretty}
.pr-other__go{justify-self:end}

@media(max-width:960px){
  .pr-about{row-gap:40px}
  .pr-about__text,.pr-place{grid-column:1 / -1}
  .pr-place__go{width:auto;align-self:flex-start}
  .pr-other{grid-template-columns:minmax(0,1fr)}
  .pr-other__go{justify-self:start}
}
@media(max-width:860px){
  .pr-plate{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:560px){
  .pr-plate{border-radius:24px}
  .pr-week{padding:16px}
  body.page-clean .block.pr-sec{padding-top:64px}
  body.page-clean .block.pr-sec--first{padding-top:40px}
  body.page-clean .block.pr-sec--last{padding-bottom:72px}
  .pr-tile,.pr-other{border-radius:22px}
  .pr-rule{grid-template-columns:32px minmax(0,1fr);column-gap:12px;padding:16px 0;font-size:var(--fs-md)}
  .pr-rule > *{grid-column:2}
  /* шаги столбиком: линия между ними горизонтальная */
  .pr-steps{grid-template-columns:minmax(0,1fr);padding-bottom:20px}
  .pr-step{padding:20px 0}
  .pr-step:first-child{padding-top:0}
  .pr-step + .pr-step{border-left:0;border-top:1px solid var(--pr-hair)}
  .pr-step::before{margin-bottom:12px}
  .pr-step .pr-text{font-size:var(--fs-md)}
  .pr-step h3 + .pr-text{margin-top:14px}
  .pr-howto__cta{display:block;padding-top:20px}
  .pr-howto__cta .nx-btn,.pr-place__go,.pr-other__go{width:100%;align-self:stretch;justify-self:stretch}
  .pr-q > summary{padding:16px 0;font-size:var(--fs-md)}
  .pr-q > .pr-text{max-width:none;padding-bottom:20px;font-size:var(--fs-md)}
  .pr-about__text{font-size:var(--fs-md)}
}

@media(prefers-reduced-motion:reduce){
  .pr-arr{transition:none}
}
