/* =====================================================================
   NewNeuro — Промпт 2 · Универсальный ШАБЛОН-КОНСТРУКТОР профиля
   Опирается на stage_01 (ds.css). Здесь — только специфика страницы.
   ===================================================================== */

.nn-profile .page{max-width:1240px;margin:0 auto;padding:0 24px 140px;}

/* ---- Верхняя строка: лого + хлебные крошки ---- */
.nn-profile .site-top{max-width:1240px;margin:0 auto;padding:18px 24px 6px;display:flex;align-items:center;gap:22px;}
.nn-profile .site-top img{height:38px;width:auto;}
.nn-profile .crumbs{font-size:13px;color:var(--text-3);display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.nn-profile .crumbs a{color:var(--text-2);text-decoration:none;}
.nn-profile .crumbs a:hover{color:var(--primary);}
.nn-profile .crumbs .sep{color:var(--line);}
.nn-profile .crumbs .cur{color:var(--ink);}

/* ---- HERO ---- */
.nn-profile .hero{display:grid;grid-template-columns:340px 1fr;gap:36px;align-items:start;margin-top:8px;}
.nn-profile .hero__media{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/5;
  background:linear-gradient(160deg,#eef5fb,#dcecfa);box-shadow:var(--sh);}
.nn-profile .hero__media img{width:100%;height:100%;object-fit:cover;object-position:top center;}
.nn-profile .hero__play{position:absolute;top:14px;right:14px;width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.94);
  display:flex;align-items:center;justify-content:center;box-shadow:0 3px 12px rgba(17,20,24,.22);cursor:pointer;transition:.15s;}
.nn-profile .hero__play:hover{transform:scale(1.07);}
.nn-profile .hero__play svg{width:18px;height:18px;color:var(--brand);margin-left:3px;}
.nn-profile .hero__vlabel{position:absolute;left:14px;bottom:13px;color:#fff;font-size:12.5px;font-weight:700;
  background:rgba(11,40,70,.5);padding:5px 11px;border-radius:var(--pill);backdrop-filter:blur(3px);}
.nn-profile .hero__info{padding-top:4px;}
.nn-profile .hero__statuses{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:16px;}
.nn-profile .status{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:700;padding:7px 13px;border-radius:var(--pill);}
.nn-profile .status--prием{background:#fff5e0;color:#9a7400;}
.nn-profile .status--prием .dot{width:8px;height:8px;border-radius:50%;background:#E0A100;}
.nn-profile .status--online{background:var(--blue-50);color:var(--primary);}
.nn-profile .status--online svg{width:15px;height:15px;}
.nn-profile .hero__name{font-size:34px;line-height:1.12;font-weight:900;letter-spacing:-.015em;margin:0 0 8px;}
.nn-profile .hero__role{font-size:17px;color:var(--text-2);margin:0 0 22px;line-height:1.4;}
.nn-profile .hero__facts{display:flex;flex-wrap:wrap;gap:34px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:18px;}
.nn-profile .fact{display:flex;flex-direction:column;gap:4px;}
.nn-profile .fact .k{font-size:12.5px;color:var(--text-3);}
.nn-profile .fact .v{font-size:17px;font-weight:700;color:var(--ink);}
.nn-profile .hero__branch{display:flex;align-items:center;gap:9px;font-size:15px;color:var(--text-2);margin-bottom:24px;}
.nn-profile .hero__branch svg{width:18px;height:18px;color:var(--brand);flex:none;}
.nn-profile .hero__cta{display:flex;flex-wrap:wrap;gap:12px;}
.nn-profile .hero__cta .btn--primary{min-width:230px;}

/* ---- Sticky якорь-навигация (scroll-spy) ---- */
.nn-profile .pnav{position:sticky;top:var(--top-offset,0px);z-index:40;background:rgba(255,255,255,.93);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);margin-top:8px;}
.nn-profile .pnav__in{max-width:1240px;margin:0 auto;padding:0 24px;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;}
.nn-profile .pnav__in::-webkit-scrollbar{display:none;}
.nn-profile .pnav a{flex:none;font-size:14px;font-weight:700;text-decoration:none;color:var(--text-2);
  padding:15px 14px;border-bottom:3px solid transparent;white-space:nowrap;transition:.15s;}
.nn-profile .pnav a:hover{color:var(--primary);}
.nn-profile .pnav a.on{color:var(--primary);border-bottom-color:var(--brand);}

/* ---- Блок профиля ---- */
.nn-profile .pblock{padding:42px 0 8px;scroll-margin-top:calc(var(--top-offset,0px) + 70px);border-top:1px solid var(--line);}
.nn-profile .pblock:first-of-type{border-top:0;}
.nn-profile .pblock__head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px;flex-wrap:wrap;}
.nn-profile .pblock__head h2{font-size:26px;font-weight:900;letter-spacing:-.01em;margin:0;}
.nn-profile .pblock__head p{margin:6px 0 0;color:var(--text-2);font-size:15px;max-width:560px;}
/* мета-аннотация конструктора (видна только в режиме разметки) */
.nn-profile .modnote{font-size:11.5px;font-weight:700;letter-spacing:.04em;color:var(--brand);background:var(--blue-50);
  border:1px dashed #aacdec;border-radius:var(--pill);padding:5px 12px;white-space:nowrap;}
.nn-profile .modnote--off{color:var(--text-3);background:var(--gray-50);border-color:var(--line);}
.nn-profile body:not(.show-notes) .modnote{display:none;}

/* блок, выключенный в конструкторе */
.nn-profile [data-block][hidden]{display:none;}
.nn-profile [hidden]{display:none !important;}

/* ---- Услуги / занятия ---- */
.nn-profile .svc{display:flex;flex-direction:column;}
.nn-profile .svc__row{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding:15px 0;border-bottom:1px solid var(--line);}
.nn-profile .svc__row:last-child{border-bottom:0;}
.nn-profile .svc__name{font-size:16px;font-weight:700;}
.nn-profile .svc__desc{font-size:13.5px;color:var(--text-2);margin-top:3px;max-width:560px;line-height:1.5;}
.nn-profile .svc__price{font-size:17px;font-weight:700;white-space:nowrap;color:var(--ink);}
.nn-profile .svc__city-toggle{margin-bottom:8px;}

/* ---- Биография / опыт ---- */
.nn-profile .bio{font-size:16px;line-height:1.75;color:var(--ink);max-width:760px;}
.nn-profile .bio p{margin:0 0 16px;}
.nn-profile .edu{position:relative;padding-left:26px;max-width:760px;}
.nn-profile .edu::before{content:"";position:absolute;left:6px;top:6px;bottom:6px;width:2px;background:var(--line);}
.nn-profile .edu__item{position:relative;padding:0 0 22px;}
.nn-profile .edu__item:last-child{padding-bottom:0;}
.nn-profile .edu__item::before{content:"";position:absolute;left:-23px;top:5px;width:11px;height:11px;border-radius:50%;
  background:#fff;border:2.5px solid var(--brand);}
.nn-profile .edu__year{font-size:13px;font-weight:700;color:var(--brand);}
.nn-profile .edu__t{font-size:16px;font-weight:700;margin:2px 0 2px;}
.nn-profile .edu__org{font-size:14px;color:var(--text-2);}

/* ---- Отзывы (агрегат + карточки) ---- */
.nn-profile .rev-aggr{display:flex;align-items:center;gap:24px;flex-wrap:wrap;background:var(--blue-25);border:1px solid var(--line);
  border-radius:var(--r-lg);padding:20px 24px;margin-bottom:22px;}
.nn-profile .rev-aggr__score{font-size:46px;font-weight:900;line-height:1;color:var(--primary);}
.nn-profile .rev-aggr__meta{flex:1;min-width:200px;}
.nn-profile .rev-aggr__stars{color:var(--warning);font-size:18px;letter-spacing:2px;}
.nn-profile .rev-aggr__sub{font-size:13.5px;color:var(--text-2);margin-top:4px;}
.nn-profile .rev-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}

/* ---- Научная методика / патенты ---- */
.nn-profile .method{background:var(--blue-25);border:1px solid var(--line);border-radius:var(--r-lg);padding:26px 28px;}
.nn-profile .method h3{margin:0 0 10px;font-size:20px;font-weight:700;}
.nn-profile .method p{margin:0 0 14px;font-size:15px;line-height:1.7;color:var(--ink);max-width:680px;}
.nn-profile .method__stats{display:flex;flex-wrap:wrap;gap:30px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line);}
.nn-profile .method__stat .n{font-size:30px;font-weight:900;color:var(--primary);line-height:1;}
.nn-profile .method__stat .l{font-size:13px;color:var(--text-2);margin-top:5px;}

/* ---- Конструктор блоков (плавающая панель) ---- */
.nn-profile .fab{position:fixed;right:22px;bottom:22px;z-index:60;display:inline-flex;align-items:center;gap:9px;
  background:var(--ink);color:#fff;border:0;border-radius:var(--pill);padding:13px 19px;font-family:inherit;
  font-size:14px;font-weight:700;cursor:pointer;box-shadow:var(--sh-md);transition:.15s;}
.nn-profile .fab:hover{background:#000;}
.nn-profile .fab svg{width:17px;height:17px;}
.nn-profile .constructor{position:fixed;right:22px;bottom:78px;z-index:61;width:320px;max-height:78vh;overflow-y:auto;
  background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-md);padding:20px;
  transform:translateY(12px) scale(.98);opacity:0;pointer-events:none;transition:transform .18s ease;}
.nn-profile .constructor.open{transform:none;opacity:1;pointer-events:auto;}
.nn-profile .constructor h3{margin:0 0 4px;font-size:16px;font-weight:900;}
.nn-profile .constructor .sub{margin:0 0 16px;}
.nn-profile .preset-row{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:8px;}
.nn-profile .preset{font-family:inherit;font-size:12.5px;font-weight:700;padding:9px 8px;border-radius:var(--r-sm);
  border:1.5px solid var(--line);background:#fff;color:var(--text-2);cursor:pointer;transition:.15s;text-align:center;}
.nn-profile .preset:hover{border-color:var(--brand);color:var(--primary);}
.nn-profile .preset.on{background:var(--primary);border-color:var(--primary);color:#fff;}
.nn-profile .constructor__toggles{margin-top:14px;border-top:1px solid var(--line);padding-top:14px;display:flex;flex-direction:column;gap:2px;}
.nn-profile .tg{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 4px;font-size:13.5px;cursor:pointer;border-radius:8px;}
.nn-profile .tg:hover{background:var(--gray-50);}
.nn-profile .tg span{display:flex;align-items:center;gap:9px;}
.nn-profile .tg .lock{font-size:11px;color:var(--text-3);}
.nn-profile .sw-toggle{position:relative;width:38px;height:22px;border-radius:var(--pill);background:#cdd6e0;transition:.18s;flex:none;}
.nn-profile .sw-toggle::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:.18s;box-shadow:0 1px 3px rgba(0,0,0,.2);}
.nn-profile input:checked+.sw-toggle{background:var(--primary);}
.nn-profile input:checked+.sw-toggle::after{transform:translateX(16px);}
.nn-profile .tg input{display:none;}
.nn-profile .notes-toggle{display:flex;align-items:center;gap:9px;font-size:12.5px;color:var(--text-2);margin-top:14px;
  padding-top:14px;border-top:1px solid var(--line);cursor:pointer;}

/* ---- Mobile sticky CTA ---- */
.nn-profile .msticky{display:none;}

/* ---- Модалка-заглушка Clientix ---- */
.nn-profile .cx-overlay{position:fixed;inset:0;z-index:80;background:rgba(17,28,42,.55);backdrop-filter:blur(2px);
  display:none;align-items:center;justify-content:center;padding:20px;}
.nn-profile .cx-overlay.open{display:flex;}
.nn-profile .cx-modal{width:min(460px,100%);background:#fff;border-radius:var(--r-lg);box-shadow:var(--sh-md);overflow:hidden;}
.nn-profile .cx-modal__head{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--line);}
.nn-profile .cx-modal__head b{font-size:15px;}
.nn-profile .cx-modal__x{width:34px;height:34px;border-radius:50%;background:var(--gray-50);border:0;font-size:18px;color:var(--text-2);cursor:pointer;}
.nn-profile .cx-modal__body{padding:6px;}

/* =====================================================================
   STAGE 04 · ДОРАБОТКА: STICKY-ПОСТЕР + НОВЫЕ БЛОКИ + НОВЫЙ ПОРЯДОК
   ===================================================================== */

/* ---- Двухколоночный каркас: sticky-постер слева, контент справа ---- */
/* v2: уже сайдбар (300), шире контент (~848px под Merriweather) */
.nn-profile .profile{max-width:1240px;margin:0 auto;padding:0 24px 140px;
  display:grid;grid-template-columns:300px minmax(0,1fr);gap:48px;align-items:start;}

/* Левый sticky-постер */
.nn-profile .poster{position:sticky;top:calc(var(--top-offset,0px) + 74px);display:flex;flex-direction:column;}
.nn-profile .poster__media{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/5;
  background:#fff;box-shadow:var(--sh);}
.nn-profile .poster__media img{width:100%;height:100%;object-fit:cover;object-position:top center;}
.nn-profile .poster__play{
  position:absolute; top:14px; right:14px;
  width:52px; height:52px; border:0; border-radius:50%; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  background:var(--primary);
  box-shadow:0 0 0 1px rgba(255,255,255,.5) inset, 0 0 0 4px rgba(255,255,255,.28), 0 8px 22px rgba(11,95,165,.4);
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.nn-profile .poster__play:hover{ transform:scale(1.06); background:var(--brand); box-shadow:0 0 0 1px rgba(255,255,255,.55) inset, 0 0 0 5px rgba(255,255,255,.34), 0 10px 26px rgba(11,95,165,.46); }
.nn-profile .poster__play svg{ display:block; width:20px; height:20px; color:#fff; transform:translateX(2px); }

/* ---- Play-кнопка в карточке врача: тач ≥44px, визуал — как у постера (без видимой рамки/кольца) ---- */
.nn-profile .scard__play{
  position:absolute; top:10px; right:10px;
  width:46px; height:46px; border:0; border-radius:50%; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  background:var(--primary);
  box-shadow:0 0 0 1px rgba(255,255,255,.5) inset, 0 0 0 4px rgba(255,255,255,.28), 0 6px 18px rgba(11,95,165,.4);
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.nn-profile .scard__play:hover{ transform:scale(1.07); background:var(--brand); box-shadow:0 0 0 1px rgba(255,255,255,.55) inset, 0 0 0 5px rgba(255,255,255,.34), 0 8px 22px rgba(11,95,165,.46); }
.nn-profile .scard__play svg{ display:block; width:17px; height:17px; color:#fff; transform:translateX(1.5px); }
/* Реальное фото врача в карточке (верх, как плейсхолдер) */
.nn-profile .scard__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center;}

/* ---- Общая видео-модалка (постер + карточки врачей) ---- */
.nn-profile .vmodal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;}
.nn-profile .vmodal[hidden]{display:none;}
.nn-profile .vmodal__backdrop{position:absolute;inset:0;background:rgba(11,28,46,.74);backdrop-filter:blur(3px);}
.nn-profile .vmodal__dialog{position:relative;width:100%;max-width:880px;}
.nn-profile .vmodal__frame{position:relative;aspect-ratio:16/9;background:#0B1C2E;border-radius:var(--r-lg);overflow:hidden;
  box-shadow:0 24px 70px rgba(0,0,0,.45);}
.nn-profile .vmodal__iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.nn-profile .vmodal__ph{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;
  color:#CFE0F0;font-size:15px;font-weight:700;text-align:center;padding:0 20px;}
.nn-profile .vmodal__ph svg{width:46px;height:46px;color:rgba(255,255,255,.5);}
.nn-profile .vmodal__close{position:absolute;top:-54px;right:0;width:44px;height:44px;border-radius:50%;background:#fff;border:0;
  display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 3px 12px rgba(0,0,0,.3);color:var(--ink);transition:.15s;}
.nn-profile .vmodal__close:hover{transform:scale(1.06);}
.nn-profile .vmodal__close svg{width:20px;height:20px;}
@media (max-width:900px){
  .nn-profile .vmodal__close{top:-50px;}
}
.nn-profile .poster__vlabel{position:absolute;left:14px;bottom:13px;color:#fff;font-size:12.5px;font-weight:700;
  background:rgba(11,40,70,.5);padding:5px 11px;border-radius:var(--pill);backdrop-filter:blur(3px);}

.nn-profile .poster__rating{display:flex;align-items:center;gap:8px;margin-top:16px;}
.nn-profile .poster__rating .star{color:#F2A100;font-size:19px;line-height:1;}
.nn-profile .poster__rating b{font-size:18px;font-weight:900;}
.nn-profile .poster__rating .rev{color:var(--text-2);font-size:14px;}
.nn-profile .poster__statuses{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.nn-profile .poster__facts{margin-top:16px;border-top:1px solid var(--line);}
.nn-profile .poster__fact{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:11px 0;border-bottom:1px solid var(--line);}
.nn-profile .poster__fact .k{font-size:13.5px;color:var(--text-3);}
.nn-profile .poster__fact .v{font-size:14.5px;font-weight:700;text-align:right;}
.nn-profile .poster__price{margin-top:16px;}
.nn-profile .poster__price .v{font-size:27px;font-weight:900;color:var(--ink);line-height:1;}
.nn-profile .poster__price .k{font-size:13px;color:var(--text-3);display:block;margin-top:5px;}
.nn-profile .poster__cta{display:flex;flex-direction:column;gap:10px;margin-top:18px;}
.nn-profile .poster__cta .btn{width:100%;}

/* Шапка контента справа (имя, роль, филиал) */
.nn-profile .pmain{min-width:0;}
.nn-profile .phead{margin-bottom:8px;}
.nn-profile .phead__name{font-size:33px;font-weight:900;letter-spacing:-.015em;line-height:1.12;margin:0 0 10px;}
.nn-profile .phead__role{font-size:17px;color:var(--text-2);margin:0 0 14px;line-height:1.45;}
.nn-profile .phead__branch{display:flex;align-items:center;gap:9px;font-size:15px;color:var(--text-2);}
.nn-profile .phead__branch svg{width:18px;height:18px;color:var(--brand);flex:none;}
.nn-profile .phead__rating{display:none;align-items:center;gap:8px;margin:0 0 12px;}
.nn-profile .phead__rating .star{color:#F2A100;font-size:17px;}
.nn-profile .phead__rating b{font-weight:900;}
.nn-profile .phead__rating .rev{color:var(--text-2);font-size:13.5px;}

/* первый блок без верхней линии/большого отступа (идёт сразу под phead) */
.nn-profile .pmain>.pblock:first-of-type{border-top:0;padding-top:30px;}

/* ---- Цифры доверия ---- */
.nn-profile .tnums{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;}
.nn-profile .tnum{background:var(--blue-25);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px 22px;}
.nn-profile .tnum .n{font-size:31px;font-weight:900;color:var(--primary);line-height:1;letter-spacing:-.01em;}
.nn-profile .tnum .l{font-size:13px;color:var(--text-2);margin-top:9px;line-height:1.45;}

/* ---- Кому показан приём (чек-лист) ---- */
.nn-profile .indic{display:grid;grid-template-columns:1fr 1fr;gap:14px 34px;}
.nn-profile .indic__item{display:flex;gap:12px;align-items:flex-start;font-size:15.5px;line-height:1.5;}
.nn-profile .indic__item svg{width:22px;height:22px;color:var(--success);flex:none;margin-top:1px;}

/* ---- Как проходит приём (шаги) ---- */
.nn-profile .steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;}
.nn-profile .step__n{width:42px;height:42px;border-radius:50%;background:var(--blue-50);color:var(--primary);
  font-weight:900;display:flex;align-items:center;justify-content:center;font-size:18px;margin-bottom:14px;}
.nn-profile .step__t{font-size:16px;font-weight:700;margin-bottom:6px;line-height:1.3;overflow-wrap:anywhere;}
.nn-profile .step__d{font-size:14px;color:var(--text-2);line-height:1.55;overflow-wrap:anywhere;}

/* промежуточный desktop-диапазон: контентная колонка узкая → 4 шага в 2 колонки
   (читаемо, без тесноты и без горизонтального переполнения) */
@media (min-width:901px) and (max-width:1040px){
  .nn-profile .steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 22px;}
}

/* ---- Повторный CTA + мостик к программе восстановления ---- */
.nn-profile .bridge{background:var(--primary);color:#fff;border-radius:var(--r-xl);padding:34px 38px;
  display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;}
.nn-profile .bridge__t{max-width:560px;}
.nn-profile .bridge__t h3{color:#fff;font-size:24px;font-weight:900;margin:0 0 8px;letter-spacing:-.01em;}
.nn-profile .bridge__t p{color:rgba(255,255,255,.86);margin:0;font-size:15px;line-height:1.6;}
.nn-profile .bridge__cta{display:flex;gap:12px;flex-wrap:wrap;}
.nn-profile .bridge .btn--primary{background:#fff;color:var(--primary);}
.nn-profile .bridge .btn--primary:hover{background:#eaf2fb;box-shadow:none;}
.nn-profile .bridge .btn--secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.65);}
.nn-profile .bridge .btn--secondary:hover{background:rgba(255,255,255,.12);}

/* ---- Слайдер: вкладки города ---- */
.nn-profile .slider-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px;}

/* ---- Embed-режим (в сравнении / iframe): прячем хром ---- */
.nn-profile body.embed .site-top, .nn-profile body.embed .fab, .nn-profile body.embed .constructor{display:none !important;}
.nn-profile body.embed .profile{padding-top:20px;}

/* ===================== MOBILE (точка ~900px) ===================== */

/* =====================================================================
   БЕЛАЯ ТЕМА — фон страниц белый (как на основном сайте). Блоки отделяются
   карточками / тонкими границами #E2E8F0 / мягкими тенями и светло-голубыми
   акцентами. Базовый фон меняется в ds.css (body); это — слой «отделения».
   Порядок и структуру блоков НЕ меняем.
   ===================================================================== */

/* Sticky-сайдбар — светло-голубая карточка #F2F8FD, явно отделяется от белого */
.nn-profile .poster{background:var(--blue-25);border:1px solid var(--line);border-radius:var(--r-xl);
  box-shadow:var(--sh-sm);padding:14px 14px 18px;}
.nn-profile .poster .poster__media{box-shadow:none;}
.nn-profile .poster__info{padding:0 4px;}
.nn-profile .poster__facts{border-top-color:#d8e6f3;}
.nn-profile .poster__fact{border-bottom-color:#d8e6f3;}

/* Секции без собственной карточки (списки/чипы/текст) — белые карточки с
   тонкой границей и очень мягкой тенью; часть — на #F5F7FA для ритма «через
   одну». Блоки с собственными карточками/акцентами (запись, методика, отзывы,
   документы, мостик, слайдер) внешней рамки не получают — двойных рамок нет. */
/* v2: заголовок секции занимает доступную ширину (не схлопывается в узкий столбик,
   когда лид-текст отсутствует, а пометка CMS скрыта) */
.nn-profile .pblock__head>div:first-child{flex:1 1 auto;min-width:0;}

/* Секции БЕЗ собственной карточки. v2: текстовые секции разгружены — без рамок и
   теней, живут прямо на странице, разделяются воздухом и чередованием фона
   (белый / #F5F7FA), максимум — тонкая верхняя линия #E2E8F0. Карточный вид
   сохраняют только настоящие карточные элементы (постер, виджет Clientix, отзывы,
   карточки слайдера, аккордеоны документов, плашка-мостик) — через свои стили. */
.nn-profile .pmain>.pblock{border-top:0;padding:0;margin-top:40px;}
.nn-profile .pmain>.pblock:first-of-type{padding-top:0;margin-top:6px;}

/* v2: секции разделяются воздухом (~40px) и чередованием фона — без hairline-разделителей */
.nn-profile .pmain>#b-socials, .nn-profile .pmain>#b-priem, .nn-profile .pmain>#b-media, .nn-profile .pmain>#b-reviews, .nn-profile .pmain>#b-standards, .nn-profile .pmain>#b-docs, .nn-profile .pmain>#b-others, .nn-profile .pmain>#b-prices, .nn-profile .pmain>#b-contacts{
  border-top:0;padding-top:0;margin-top:40px;}

/* мягкие тонированные банды #F5F7FA — ритм «через одну», воздухом, не линиями */
.nn-profile .pmain>#b-help, .nn-profile .pmain>#b-about{
  background:var(--gray-50);border-radius:var(--r-xl);padding:34px 40px;margin-top:40px;}

/* «Готовы начать восстановление?» — светло-голубая плашка #E8F2FB вместо тёмной;
   бренд-синий CTA #0B5FA5 без изменений */
.nn-profile .bridge{background:var(--blue-50);color:var(--ink);}
.nn-profile .bridge__t h3{color:var(--ink);}
.nn-profile .bridge__t p{color:var(--text-2);}
.nn-profile .bridge .btn--primary{background:var(--primary);color:#fff;}
.nn-profile .bridge__cta .btn{white-space:nowrap;}
.nn-profile .bridge .btn--primary:hover{background:var(--primary-hover);box-shadow:0 6px 16px rgba(11,95,165,.22);}
.nn-profile .bridge .btn--secondary{background:#fff;color:var(--primary);border-color:var(--primary);}
.nn-profile .bridge .btn--secondary:hover{background:var(--blue-25);}

/* Чипы «с чем помогает» — светло-голубая заливка #F2F8FD, без белого на белом.
   Активные фильтр-чипы остаются бренд-синими (.chip--active). */
.nn-profile .chips .chip:not(.chip--active){background:var(--blue-25);}
.nn-profile .chips .chip:not(.chip--active):hover{background:var(--blue-50);border-color:var(--brand);color:var(--primary);}

/* =====================================================================
   STAGE 06 v2 · НОВЫЕ КОМПОНЕНТЫ (реструктуризация под логику пациента)
   Только desktop-проход. Палитра/шрифт/AA сохранены.
   ===================================================================== */

/* ---- Hero: короткий лид-абзац под регалиями ---- */
.nn-profile .phead__lead{font-size:16px;line-height:1.7;color:var(--text-2);margin:14px 0 0;max-width:680px;}

/* ---- Соцсети + Wikipedia (бейджи-ссылки, заглушки, CMS-тумблер) ---- */
.nn-profile .socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;align-items:center;}
.nn-profile .socials__label{font-size:13px;color:var(--text-3);margin-right:2px;}
.nn-profile .social-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;
  border:1px solid var(--line);border-radius:var(--pill);background:#fff;color:var(--text-2);
  font-size:14px;font-weight:700;text-decoration:none;transition:.15s;cursor:pointer;}
.nn-profile .social-link:hover{border-color:var(--brand);color:var(--primary);background:var(--blue-25);}
.nn-profile .social-link svg{width:18px;height:18px;flex:none;}
.nn-profile .social-link--wiki{border-color:#c7d5e6;}
.nn-profile .social-link .ic{height:22px;min-width:22px;display:flex;align-items:center;justify-content:center;flex:none;background:transparent;border:0;border-radius:0;}
.nn-profile .social-link .ic img{height:20px;width:auto;object-fit:contain;display:block;}
.nn-profile .social-link .ic--yt img{height:16px;}
.nn-profile .social-link .ic--wiki img{height:16px;}

/* ---- Лента-слайдер логотипов СМИ ---- */
.nn-profile .rail{position:relative;}
.nn-profile .rail__track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;
  -webkit-overflow-scrolling:touch;padding:2px;}
.nn-profile .rail__track::-webkit-scrollbar{display:none;}
.nn-profile .media-logo{flex:0 0 auto;scroll-snap-align:start;height:84px;min-width:172px;padding:0 24px;
  display:flex;align-items:center;justify-content:center;text-align:center;
  border:1px solid var(--line);border-radius:var(--r-lg);background:#fff;box-shadow:var(--sh-sm);
  font-size:15px;font-weight:700;color:var(--text-2);line-height:1.25;}
.nn-profile .rail__arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;
  background:#fff;border:1px solid var(--line);box-shadow:var(--sh);display:flex;align-items:center;justify-content:center;
  color:var(--primary);font-size:20px;line-height:1;cursor:pointer;z-index:4;transition:.15s;}
.nn-profile .rail__arrow:hover{border-color:var(--brand);}
.nn-profile .rail__arrow.l{left:-10px;} .nn-profile .rail__arrow.r{right:-10px;}

/* ---- «С чем помогает»: ключевые теги + кнопка «Все направления» ---- */
.nn-profile .help-foot{margin-top:18px;}

/* ---- Стандарты профессора Гимранова: вертикальный степпер ---- */
.nn-profile .std-steps{display:grid;grid-template-columns:1fr;gap:0;margin-top:8px;}
.nn-profile .std-step{display:grid;grid-template-columns:52px 1fr;column-gap:20px;align-items:start;
  position:relative;padding-bottom:30px;}
.nn-profile .std-step:last-child{padding-bottom:0;}
.nn-profile .std-step__n{grid-column:1;grid-row:1 / span 2;width:52px;height:52px;border-radius:50%;
  background:var(--primary);color:#fff;font-weight:900;font-size:21px;
  display:flex;align-items:center;justify-content:center;z-index:2;font-variant-numeric:tabular-nums;}
.nn-profile .std-step__t{grid-column:2;grid-row:1;align-self:center;font-size:19px;font-weight:700;line-height:1.3;margin:0;}
.nn-profile .std-step__d{grid-column:2;grid-row:2;margin-top:6px;font-size:15px;line-height:1.65;color:var(--text-2);max-width:660px;}
.nn-profile .std-step:not(:last-child)::before{content:"";position:absolute;left:25px;top:56px;bottom:-4px;
  width:2px;background:var(--line);}

.nn-profile .principles{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-top:34px;}
.nn-profile .principle{display:flex;gap:13px;align-items:flex-start;padding:16px 18px;background:var(--blue-25);
  border:1px solid #dceafa;border-radius:var(--r-lg);}
.nn-profile .principle svg{width:22px;height:22px;color:var(--brand);flex:none;margin-top:1px;}
.nn-profile .principle b, .nn-profile .principle__t{font-size:15px;font-weight:700;display:block;margin:0 0 3px;}
.nn-profile .principle span{font-size:13.5px;color:var(--text-2);line-height:1.5;}
.nn-profile .sub-title{font-size:14px;font-weight:700;color:var(--text-3);letter-spacing:.04em;
  text-transform:uppercase;margin:34px 0 4px;}

/* ---- Приём: что даёт первичный приём ---- */
.nn-profile .priem-gives{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 30px;margin:4px 0 28px;}
.nn-profile .priem-gives li{display:flex;gap:11px;align-items:flex-start;font-size:15px;line-height:1.5;list-style:none;}
.nn-profile .priem-gives svg{width:20px;height:20px;color:var(--success);flex:none;margin-top:1px;}
.nn-profile .priem-gives{padding:0;}

/* ---- «Приём»: чек-лист «что входит» — свёрнутый аккордеон под расписанием ---- */
.nn-profile .priem-acc{border:1px solid var(--line);border-radius:var(--r-lg);background:#fff;
  box-shadow:var(--sh-sm);overflow:hidden;margin-top:16px;}
.nn-profile .priem-acc .contact-acc__body{padding-top:2px;}
.nn-profile .priem-acc .priem-gives{margin:0;}

/* ---- Патенты: галерея-слайдер фото + лайтбокс ---- */
.nn-profile .gallery{position:relative;margin-top:6px;}
.nn-profile .gallery__cap{font-size:14.5px;color:var(--text-2);margin:0 0 14px;font-weight:700;}
.nn-profile .gallery__track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;
  -webkit-overflow-scrolling:touch;padding:2px;}
.nn-profile .gallery__track::-webkit-scrollbar{display:none;}
.nn-profile .gallery__item{flex:0 0 180px;scroll-snap-align:start;aspect-ratio:3/4;border:1px solid var(--line);
  border-radius:var(--r);overflow:hidden;background:linear-gradient(160deg,#eef5fb,#dcecfa);
  position:relative;cursor:pointer;display:flex;align-items:flex-end;padding:12px;transition:.18s;box-shadow:var(--sh-sm);}
.nn-profile .gallery__item:hover{box-shadow:var(--sh-md);transform:translateY(-2px);}
.nn-profile .gallery__item::before{content:"";position:absolute;inset:0;background:
  repeating-linear-gradient(135deg,rgba(9,150,222,.05) 0 12px,transparent 12px 24px);}
.nn-profile .gallery__item .cap{position:relative;font-size:12px;color:var(--primary);font-weight:700;line-height:1.35;}
.nn-profile .gallery__item .zoom{position:absolute;top:10px;right:10px;width:30px;height:30px;border-radius:50%;
  background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;color:var(--primary);}
.nn-profile .gallery__item .zoom svg{width:15px;height:15px;}

/* лайтбокс */
.nn-profile .lightbox{position:fixed;inset:0;background:rgba(11,40,70,.78);z-index:90;display:none;
  align-items:center;justify-content:center;padding:32px;backdrop-filter:blur(3px);}
.nn-profile .lightbox.open{display:flex;}
.nn-profile .lightbox__fig{max-width:520px;width:100%;background:#fff;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-md);}
.nn-profile .lightbox__img{background:#fff;position:relative;width:100%;
  display:flex;align-items:center;justify-content:center;color:var(--primary);font-weight:700;text-align:center;}
.nn-profile .lightbox__cap{padding:16px 20px;font-size:14px;color:var(--text-2);display:flex;justify-content:space-between;align-items:flex-start;gap:14px;}
.nn-profile .lightbox__cap #lbCap{flex:1 1 auto;min-width:0;}
.nn-profile .lightbox__cap #lbIdx{flex:0 0 auto;white-space:nowrap;}
.nn-profile .lightbox__x{position:absolute;top:20px;right:24px;width:44px;height:44px;border-radius:50%;border:0;
  background:rgba(255,255,255,.94);color:var(--ink);font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.nn-profile .lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:0;
  background:rgba(255,255,255,.92);color:var(--ink);font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.nn-profile .lightbox__nav.l{left:24px;} .nn-profile .lightbox__nav.r{right:24px;}

/* =====================================================================
   STAGE 06 v2 · РЕАЛЬНЫЙ КОНТЕНТ (фото, цифры, ссылки, галереи)
   ===================================================================== */

/* ---- Постер: реальное фото + теги-специальности ---- */
.nn-profile .poster__media img.photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center;}
.nn-profile .poster__tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px;}
/* (1) Теги-специальности: плотнее заливка #E8F2FB без бордюра — читаются на светлой карточке */
.nn-profile .poster__tag{font-size:12.5px;font-weight:700;color:var(--primary);background:var(--blue-50);
  border:0;border-radius:var(--pill);padding:6px 12px;}
.nn-profile .poster__tag:hover{background:#DCEAFA;}

/* ---- Чипы-специальности в карточке слайдера специалистов (.scard) ---- */
.nn-profile .scard__tags{display:flex;flex-wrap:wrap;gap:5px;min-height:50px;align-content:flex-start;}
.nn-profile .scard__tags:empty{display:none;}
.nn-profile .scard__chip{font-size:12px;font-weight:700;color:var(--primary);background:var(--blue-50);
  border-radius:var(--pill);padding:4px 9px;line-height:1.2;}
.nn-profile .scard__chip--more{display:inline-flex;align-items:center;gap:5px;background:#fff;color:var(--primary);
  border:1px solid var(--line);cursor:pointer;font-family:inherit;transition:.16s ease;}
.nn-profile .scard__chip--more::after{content:'';width:5px;height:5px;flex:none;
  border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;
  transform:translateX(-1px) rotate(-45deg);transition:transform .16s ease;}
.nn-profile .scard__chip--more:hover{background:var(--blue-50);border-color:var(--primary);}
.nn-profile .scard__chip--more:hover::after{transform:translateX(1px) rotate(-45deg);}
.nn-profile .scard__chip--more:focus-visible{outline:2px solid var(--primary);outline-offset:2px;}

/* ---- Анимированный счётчик «За 37+ лет» — единый брендовый блок ---- */
/* v3: десктопный слайдер специалистов должен прокручиваться (нужно для бесшовной
   бесконечной ленты со стрелками); полоса прокрутки скрыта */
@media (min-width:901px){
  .nn-profile .slider-track{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;}
  .nn-profile .slider-track::-webkit-scrollbar{display:none;}
}
/* v4: ОДНА КОМПАКТНАЯ СТРОКА — ячейки по ширине содержимого (не равные колонки),
   все 5 чисел одного размера ~32px, короткие подписи в 2 строки, ровный низ.
   Целевая высота панели ~130px. */
.nn-profile .counter{background:var(--blue-25);border:1px solid var(--line);border-radius:var(--r-xl);
  padding:26px 26px;display:flex;justify-content:space-between;align-items:flex-start;gap:0;
  color:var(--ink);position:relative;overflow:hidden;box-shadow:none;}
.nn-profile .counter__item{text-align:center;padding:0 20px;position:relative;display:flex;flex-direction:column;
  align-items:center;justify-content:flex-start;gap:8px;}
.nn-profile .counter__item:first-child{padding-left:4px;}
.nn-profile .counter__item:last-child{padding-right:4px;}
/* хайрлайн между ячейками — фикс-высота, выровнен по верху чисел */
.nn-profile .counter__item+.counter__item::before{content:"";position:absolute;left:0;top:2px;height:46px;width:1px;
  background:var(--line);}
.nn-profile .counter__n{font-size:clamp(22px,2.7vw,32px);font-weight:900;letter-spacing:-.015em;line-height:1;
  color:var(--primary);font-variant-numeric:tabular-nums;white-space:nowrap;}
.nn-profile .counter__l{font-size:12px;font-weight:400;color:var(--text-3);line-height:1.45;
  letter-spacing:.02em;max-width:16ch;min-height:2.9em;}
.nn-profile .counter__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px;}
.nn-profile .counter__head h2{margin:0;}
/* (5) Дубль рейтинга у заголовка скрыт — рейтинг остаётся плашкой на фото + в блоке отзывов */
.nn-profile .counter__rating{display:none;}
/* десктоп: счётчик остаётся сеткой; обёртка нейтральна, стрелки/точки скрыты */
.nn-profile .counter-wrap{position:relative;}
.nn-profile .counter__arrow, .nn-profile .counter__dots{display:none;}

/* ---- Соцсети «Профессор Гимранов в:» — доп. цвета иконок ---- */

/* ---- Адрес приёма в блоке «Приём и запись» ---- */
.nn-profile .priem-address{display:flex;align-items:center;gap:11px;font-size:15.5px;font-weight:700;
  color:var(--ink);background:var(--blue-25);border:1px solid #dceafa;border-radius:var(--r-lg);
  padding:14px 18px;margin:0 0 26px;}
.nn-profile .priem-address svg{width:21px;height:21px;color:var(--brand);flex:none;}
.nn-profile .priem-address .sub{font-weight:400;color:var(--text-2);font-size:13.5px;}

/* ---- Рейтинги на площадках (полоса доверия в отзывах) ---- */
.nn-profile .ratings-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:24px;}
.nn-profile .rating-card{border:1px solid var(--line);border-radius:var(--r-lg);padding:15px 14px;background:#fff;
  text-align:center;box-shadow:var(--sh-sm);}
.nn-profile .rating-card .src{font-size:12.5px;font-weight:700;color:var(--text-2);min-height:34px;
  display:flex;align-items:center;justify-content:center;line-height:1.25;}
.nn-profile .rating-card .val{font-size:25px;font-weight:900;color:var(--primary);margin-top:4px;line-height:1;}
.nn-profile .rating-card .rstars{color:#F2A100;font-size:13px;letter-spacing:1.5px;margin-top:5px;}

/* ---- Стандарты: плашка-дифференциатор ТМС ---- */
.nn-profile .std-highlight{display:flex;gap:13px;align-items:center;background:var(--blue-50);
  border:1px solid #dceafa;border-radius:var(--r-lg);padding:16px 20px;margin:0 0 28px;
  font-size:15px;line-height:1.55;}
.nn-profile .std-highlight svg{width:24px;height:24px;color:var(--brand);flex:none;}
.nn-profile .std-highlight b{font-weight:700;}

/* ---- Биография: цитата + вехи ---- */
.nn-profile .bio-quote{border-left:3px solid var(--brand);padding:4px 0 4px 22px;margin:26px 0 6px;
  font-size:19px;line-height:1.6;font-style:italic;color:var(--ink);}
.nn-profile .milestones{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-top:28px;}
.nn-profile .milestone{padding:15px 17px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);}
.nn-profile .milestone .y{font-weight:900;color:var(--primary);font-size:16px;font-variant-numeric:tabular-nums;}
.nn-profile .milestone .t{font-size:13.5px;color:var(--text-2);margin-top:5px;line-height:1.45;}

/* ---- Галереи с реальными фото (патенты, книги, сертификаты) ---- */
.nn-profile .gallery+.gallery{margin-top:28px;}
.nn-profile .gallery__item{flex:0 0 188px;scroll-snap-align:start;aspect-ratio:3/4;border:1px solid var(--line);
  border-radius:var(--r);overflow:hidden;background:#eef5fb;position:relative;cursor:pointer;
  transition:.18s;box-shadow:var(--sh-sm);display:block;padding:0;}
.nn-profile .gallery__item:hover{box-shadow:var(--sh-md);transform:translateY(-2px);}
.nn-profile .gallery__item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center;}
.nn-profile .gallery__item--book{aspect-ratio:3/4.2;}
.nn-profile .gallery__item .zoom{position:absolute;top:10px;right:10px;width:30px;height:30px;border-radius:50%;
  background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;color:var(--primary);z-index:2;}
.nn-profile .gallery__item .zoom svg{width:15px;height:15px;}
.nn-profile .gallery__item .cap{position:absolute;left:0;right:0;bottom:0;z-index:2;color:#fff;font-size:11.5px;
  font-weight:700;line-height:1.3;padding:26px 11px 11px;
  background:linear-gradient(transparent,rgba(11,40,70,.82));}
/* плейсхолдер при отсутствии картинки */
.nn-profile .gallery__item.is-fallback{background:linear-gradient(160deg,#eef5fb,#dcecfa);}
.nn-profile .gallery__item.is-fallback img{display:none;}
.nn-profile .gallery__item.is-fallback .cap{position:relative;color:var(--primary);background:none;padding:12px;
  display:flex;align-items:flex-end;height:100%;box-sizing:border-box;}

/* лайтбокс с реальным фото */
.nn-profile .lightbox__img{padding:0;flex:1 1 auto;min-height:0;}
.nn-profile .lightbox__img img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block;margin:0 auto;}
.nn-profile .lightbox__fig{display:flex;flex-direction:column;max-width:min(620px,92vw);width:fit-content;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);background:#fff;}
.nn-profile .lightbox__cap{flex:0 0 auto;}

/* ---- Логотипы СМИ — реальные изображения ---- */
.nn-profile .media-logo{text-decoration:none;}
.nn-profile .media-logo img{max-height:46px;max-width:132px;object-fit:contain;display:block;}

/* ---- Горизонтальный таймлайн (вехи 1991—2025) ---- */
.nn-profile .timeline{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:32px;}
.nn-profile .timeline::before{content:"";position:absolute;top:8px;left:10%;right:10%;height:2px;background:var(--line);}
.nn-profile .tl{position:relative;text-align:center;padding:0 10px;min-width:0;}
.nn-profile .tl__dot{width:16px;height:16px;border-radius:50%;background:var(--primary);border:3px solid #fff;
  box-shadow:0 0 0 1px var(--line);margin:0 auto;position:relative;z-index:1;}
.nn-profile .tl__y{font-weight:900;color:var(--primary);font-size:16px;margin-top:13px;font-variant-numeric:tabular-nums;}
.nn-profile .tl__t{font-size:12.5px;color:var(--text-2);margin-top:6px;line-height:1.4;overflow-wrap:anywhere;}

/* ---- Вертикальная лента записей (.cvl) — колоночный родственник .timeline ---- */
.nn-profile .cvl{position:relative;}
.nn-profile .cvl::before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:var(--line);}
.nn-profile .cvl__i{position:relative;padding-left:26px;padding-bottom:14px;}
.nn-profile .cvl__i:last-child{padding-bottom:0;}
.nn-profile .cvl__d{position:absolute;left:1px;top:5px;z-index:1;width:12px;height:12px;border-radius:50%;
  background:var(--primary);border:3px solid #fff;box-shadow:0 0 0 1px var(--line);}
.nn-profile .cvl__y{font-size:14px;font-weight:900;color:var(--primary);font-variant-numeric:tabular-nums;}
.nn-profile .cvl__t{font-size:15.5px;color:var(--ink);margin-top:3px;line-height:1.45;}
.nn-profile .cvl__more{align-self:flex-start;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #cfe4f6;border-radius:var(--pill);padding:7px 16px;color:var(--primary);font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:.15s;margin-top:14px;}
.nn-profile .cvl__more:hover{background:var(--blue-25);border-color:var(--brand);}
.nn-profile .cvl__i:last-child{padding-bottom:0;}
.nn-profile .contact-acc__h{margin:0;font-size:inherit;font-weight:inherit;}

/* интермедиатный desktop: узкая колонка — компактнее padding и подписи */
@media (min-width:901px) and (max-width:1180px){
  .nn-profile .counter{padding:24px 14px;}
  .nn-profile .counter__item{padding:0 10px;}
  .nn-profile .counter__l{font-size:10.5px;letter-spacing:.01em;}
}
/* ---- Плашка признания (благодарность мэра) ---- */
.nn-profile .recognition{display:flex;gap:13px;align-items:center;background:var(--blue-25);
  border:1px solid #dceafa;border-radius:var(--r-lg);padding:15px 19px;margin-top:26px;font-size:15px;line-height:1.5;}
.nn-profile .recognition svg{width:24px;height:24px;color:var(--brand);flex:none;}
.nn-profile .recognition b{font-weight:700;}

/* =====================================================================
   STAGE 06 v2 · ПОЛИРОВКА (телефон в записи, объединённые отзывы, услуги)
   ===================================================================== */

/* ---- Телефон рядом с адресом в «Приём и запись» ---- */
.nn-profile .priem-address{flex-wrap:wrap;justify-content:space-between;}
.nn-profile .priem-address__txt{flex:1 1 260px;min-width:0;}
.nn-profile .priem-address__tel{display:inline-flex;align-items:center;gap:8px;font-size:15.5px;font-weight:700;
  color:var(--primary);text-decoration:none;white-space:nowrap;}
.nn-profile .priem-address__tel svg{width:17px;height:17px;color:var(--brand);flex:none;}
.nn-profile .priem-address__tel:hover{text-decoration:underline;}

/* ---- Объединённая плашка доверия (рейтинг + площадки) ---- */
.nn-profile .rev-trust{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--blue-25);
  overflow:hidden;margin-bottom:16px;box-shadow:var(--sh-sm);}
.nn-profile .rev-trust__hero{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:22px 26px;}
.nn-profile .rev-trust__score{font-size:52px;font-weight:900;line-height:1;color:var(--primary);font-variant-numeric:tabular-nums;}
.nn-profile .rev-trust__meta{flex:1;min-width:180px;}
.nn-profile .rev-trust__stars{color:#F2A100;font-size:20px;letter-spacing:2px;}
.nn-profile .rev-trust__sub{font-size:13.5px;color:var(--text-2);margin-top:5px;}
.nn-profile .rev-trust__all{flex:none;}
.nn-profile .rev-plat{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:4px;}
.nn-profile .rev-plat__card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:16px;min-width:0;
  background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-sm);
  padding:24px 16px 22px;text-decoration:none;transition:.18s ease;}
.nn-profile .rev-plat__card:hover{box-shadow:var(--sh);transform:translateY(-2px);border-color:#dceafa;}
/* вордмарк площадки — единый чистый стиль, одинаковая высота карточек */
.nn-profile .rev-plat__brand{height:28px;display:flex;align-items:center;justify-content:center;}
.nn-profile .wm{font-size:19px;font-weight:800;letter-spacing:-.02em;line-height:1;white-space:nowrap;color:var(--ink);max-width:100%;}
/* узкий десктоп (901–1100): вордмарки площадок не должны распирать колонки сетки */
@media (min-width:901px) and (max-width:1100px){.nn-profile .wm{font-size:16px;}.nn-profile .wm--google{font-size:18px;}}
.nn-profile .wm b{font-weight:800;}
.nn-profile .wm--prodoctorov b{color:var(--brand);}
.nn-profile .wm--sber b{color:#21A038;}
.nn-profile .wm--yandex b{color:#FC3F1D;}
.nn-profile .wm--google{font-family:Arial,'Helvetica Neue',sans-serif;font-size:22px;letter-spacing:-.6px;}
/* крупная чистая оценка + звёзды под ней */
.nn-profile .rev-plat__score{font-size:38px;font-weight:900;line-height:1;color:var(--primary);
  font-variant-numeric:tabular-nums;letter-spacing:-.01em;}
.nn-profile .rev-plat__stars{color:#F2A100;font-size:13px;letter-spacing:2.5px;}
.nn-profile .rev-foot{margin-top:22px;display:flex;justify-content:center;}
.nn-profile .rev-foot .btn:disabled{opacity:.55;cursor:default;color:var(--text-3);border-color:var(--line);}

/* ---- Контакты и как добраться ---- */
.nn-profile .contact{border:1px solid var(--line);border-radius:var(--r-lg);background:#fff;box-shadow:var(--sh-sm);overflow:hidden;}
.nn-profile .contact__head{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;
  padding:24px 26px;background:var(--blue-25);border-bottom:1px solid #dceafa;}
.nn-profile .contact__rows{display:grid;gap:16px;flex:1;min-width:260px;}
.nn-profile .contact__row{display:flex;align-items:flex-start;gap:13px;}
.nn-profile .contact__row>svg{width:21px;height:21px;color:var(--brand);flex:none;margin-top:2px;}
.nn-profile .contact__row .k{display:block;font-size:12px;color:var(--text-3);letter-spacing:.04em;text-transform:uppercase;margin-bottom:2px;}
.nn-profile .contact__row .v{display:block;font-size:15.5px;font-weight:700;color:var(--ink);line-height:1.4;text-decoration:none;}
.nn-profile a.contact__row .v, .nn-profile .contact__row a.v{color:var(--primary);white-space:nowrap;}
.nn-profile .contact__row a.v:hover{text-decoration:underline;}
.nn-profile .contact__cta .btn{white-space:nowrap;}

.nn-profile .contact-acc{border-top:1px solid var(--line);}
.nn-profile .contact-acc:first-of-type{border-top:0;}
.nn-profile .contact-acc__head{width:100%;display:flex;align-items:center;gap:13px;padding:18px 26px;background:none;border:0;
  font-family:inherit;font-size:16.5px;font-weight:700;color:var(--ink);cursor:pointer;text-align:left;transition:.15s;}
.nn-profile .contact-acc__head:hover{background:var(--gray-50);}
.nn-profile .contact-acc__head .lead{width:20px;height:20px;color:var(--brand);flex:none;}
.nn-profile .contact-acc__head span{flex:1;}
.nn-profile .contact-acc__head .caret{width:19px;height:19px;color:var(--text-3);flex:none;transition:transform .2s ease;}
.nn-profile .contact-acc:has(.contact-acc__body:not([hidden])) .caret{transform:rotate(180deg);}
.nn-profile .contact-acc:has(.contact-acc__body:not([hidden])) .contact-acc__head{color:var(--primary);}
.nn-profile .contact-acc__body{padding:4px 26px 24px;}
.nn-profile .route{margin:0 0 16px;padding:0;list-style:none;counter-reset:rt;display:grid;gap:11px;}
.nn-profile .route li{position:relative;padding-left:38px;font-size:15px;line-height:1.55;color:var(--text-2);counter-increment:rt;}
.nn-profile .route li::before{content:counter(rt);position:absolute;left:0;top:-1px;width:26px;height:26px;border-radius:50%;
  background:var(--blue-50);color:var(--primary);font-weight:900;font-size:13px;font-variant-numeric:tabular-nums;
  display:flex;align-items:center;justify-content:center;}
.nn-profile .contact-acc__text{margin:0 0 16px;font-size:15px;line-height:1.6;color:var(--text-2);}
.nn-profile .map-stub{display:flex;align-items:center;justify-content:center;gap:10px;height:190px;border-radius:var(--r);
  border:1.5px dashed #bcd6ee;color:var(--brand);font-size:13.5px;font-weight:700;
  background:repeating-linear-gradient(135deg,#f2f8fd,#f2f8fd 16px,#eaf4fc 16px,#eaf4fc 32px);}
.nn-profile .map-stub svg{width:26px;height:26px;opacity:.8;}

/* — Элементы, существующие только на мобиле: на десктопе (эталон) скрыты — */
.nn-profile .priem-city{display:none;}
.nn-profile .rev-plat__arrow, .nn-profile .rev-plat__dots{display:none;}

/* — Тогглы «полный / короткий» текст: на десктопе показываем ПОЛНЫЕ варианты,
     короткие прячем (раньше CSS не было → текст дублировался). — */
.nn-profile .crumbs__ell{display:none;}

/* — Рейтинг-плашка на фото — теперь и на десктопе: в левом верхнем углу .poster__media,
     кликабельна → скролл к отзывам. Рейтинг под фото (.poster__rating) на десктопе скрыт. — */
.nn-profile .poster__ratingbadge{display:inline-flex;align-items:center;gap:5px;position:absolute;bottom:12px;left:12px;z-index:3;
  background:rgba(17,28,42,.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
  color:#fff;text-decoration:none;padding:5px 10px;border-radius:var(--pill);
  font-size:12px;font-weight:700;min-height:30px;white-space:nowrap;box-shadow:0 2px 8px rgba(0,0,0,.22);cursor:pointer;transition:.15s;}
.nn-profile .poster__ratingbadge:hover{background:rgba(17,28,42,.62);}
.nn-profile .poster__ratingbadge .star{color:#FFC53D;font-size:13px;line-height:1;}
.nn-profile .poster__ratingbadge b{font-weight:900;}
.nn-profile .poster__ratingbadge .rb-rev{opacity:.92;font-weight:700;}
.nn-profile .poster__rating{display:none;}

/* — Правая колонка .pcol: на десктопе обычный grid-элемент 2-й колонки,
     внутри — нормальный поток phead → lead → pmain (= эталон). — */
.nn-profile .pcol{min-width:0;}

/* — (1) Воздух под навигацией на десктопе: фото и ФИО не липнут к разделителю — */
@media (min-width:901px){
  .nn-profile .profile{padding-top:32px;}
}

/* =====================================================================
   ЕДИНЫЙ МОБИЛЬНЫЙ БЛОК · ≤900px
   ---------------------------------------------------------------------
   Все мобильные правила профиля v2 собраны здесь, по порядку страницы
   сверху вниз. Десктоп (≥901px) не затрагивается. Брейкпоинт = 900 и
   совпадает с интермедиатными desktop-блоками (min-width:901px …), без
   зоны конфликта. Те же DOM/классы, что и на десктопе — без дублей.
   ===================================================================== */
@media (max-width:900px){

  /* — Каркас: одна колонка; постер статичен; место под нижний фикс-бар — */
  .nn-profile .profile{grid-template-columns:minmax(0,1fr);gap:0;
    padding:0 16px calc(108px + env(safe-area-inset-bottom,0px));}
  .nn-profile .poster{position:static;top:auto;padding:12px 12px 16px;}
  .nn-profile .poster__media{aspect-ratio:1/1;max-width:340px;margin:0 0 4px;}
  .nn-profile .poster__rating{display:none;}          /* рейтинг переезжает к имени */
  .nn-profile .poster__cta{display:none;}             /* цена+CTA уезжают в нижний фикс-бар */

  /* — Шапка контента: подложка #F5F7FA, имя + рейтинг под именем — */
  .nn-profile .phead{margin-top:18px;background:var(--gray-50);border-radius:var(--r-lg);padding:18px;}
  .nn-profile .phead__rating{display:flex;}
  .nn-profile .phead__name{font-size:27px;}
  .nn-profile .phead__lead{line-height:1.6;margin-top:12px;}
  .nn-profile .pblock__head h2{font-size:22px;}

  /* — Ритм секций: воздух (~32px), без линий; меньший инсет банд — */
  .nn-profile .pmain>.pblock{margin-top:32px;}
  .nn-profile .pmain>.pblock:first-of-type{padding-top:34px;margin-top:6px;}
  .nn-profile .pmain>#b-socials, .nn-profile .pmain>#b-priem, .nn-profile .pmain>#b-media, .nn-profile .pmain>#b-reviews, .nn-profile .pmain>#b-standards, .nn-profile .pmain>#b-docs, .nn-profile .pmain>#b-others, .nn-profile .pmain>#b-prices, .nn-profile .pmain>#b-contacts{padding-top:0;margin-top:32px;}
  .nn-profile .pmain>#b-help, .nn-profile .pmain>#b-about{padding:24px 18px;margin-top:32px;}

  /* — (4) Счётчик: горизонтальный слайдер из 5 карточек-цифр (свайп-лента),
     scroll-snap, стрелки-шевроны у краёв + точки. Тот же убывающий порядок,
     число ~30px, короткие подписи. Анимация цифр — при попадании ленты
     в зону видимости (логика IntersectionObserver сохранена). — */
  .nn-profile .counter{display:flex;flex-wrap:nowrap;justify-content:flex-start;grid-template-columns:none;gap:0;overflow-x:auto;scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;scrollbar-width:none;padding:26px 6px 28px;}
  .nn-profile .counter::-webkit-scrollbar{display:none;}
  .nn-profile .counter__item+.counter__item::before{display:none;}
  /* (5) постранично: одна карточка в кадре, снап по центру.
     (4-fix) симметричные паддинги для ВСЕХ карточек, включая крайние —
     гасим протекание :first-child/:last-child из десктопной строки; контент
     центрируем; распорки ::before/::after центрируют крайние карточки в кадре. */
  .nn-profile .counter::before, .nn-profile .counter::after{content:"";flex:0 0 9%;}
  .nn-profile .counter__item, .nn-profile .counter__item:first-child, .nn-profile .counter__item:last-child{flex:0 0 82%;scroll-snap-align:center;grid-column:auto;
    padding:2px 14px;align-items:center;text-align:center;}
  .nn-profile .counter__n{font-size:30px;}
  .nn-profile .counter__l{font-size:12px;letter-spacing:.02em;}
  .nn-profile .counter__arrow{display:flex;align-items:center;justify-content:center;position:absolute;
    top:calc(50% - 11px);transform:translateY(-50%);width:44px;height:44px;border:0;border-radius:50%;
    z-index:4;cursor:pointer;color:var(--primary);font-size:18px;line-height:1;
    background:radial-gradient(circle 16px at 50% 50%,rgba(255,255,255,.92) 0 16px,transparent 16px);
    filter:drop-shadow(0 2px 6px rgba(17,20,24,.22));}
  .nn-profile .counter__arrow.l{left:2px;} .nn-profile .counter__arrow.r{right:2px;}
  .nn-profile .counter__dots{display:flex;margin-top:16px;}
  .nn-profile .counter__dots i{background:rgba(11,95,165,.28);}
  .nn-profile .counter__dots i.on{background:var(--brand);}

  /* — (3) Соцсети: бейджи переносятся (flex-wrap базовый), тач ≥44px (.social-link) — */

  /* — (4) Приём: дубль-адрес и строка-город удалены из разметки (адрес+телефон
     теперь только в «Контактах»); чек-лист «что входит» свёрнут в аккордеон под
     расписанием — на мобиле его внутренний список идёт в 1 колонку. — */
  .nn-profile .priem-gives{grid-template-columns:1fr;gap:9px;}
  .nn-profile .tslot{min-height:44px;display:inline-flex;align-items:center;}
  .nn-profile .day{min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;}

  /* — (5) СМИ: лента-свайп; стрелки внутрь краёв, 44px, поверх лого + точки — */
  .nn-profile .rail__track{padding-bottom:2px;}
  .nn-profile .rail__arrow{display:flex;width:44px;height:44px;background:rgba(255,255,255,.96);
    border:1px solid var(--line);box-shadow:0 3px 12px rgba(17,20,24,.20);font-size:22px;}
  .nn-profile .rail__arrow.l{left:6px;} .nn-profile .rail__arrow.r{right:6px;}
  .nn-profile .rail__dots, .nn-profile .gallery__dots{display:flex;}

  /* — (7) Заболевания: ровные чипы, короткий заголовок, «Все направления» во всю ширину — */
  .nn-profile .chips{gap:8px;}
  .nn-profile .chip{min-height:38px;display:inline-flex;align-items:center;}
  .nn-profile .help-foot .btn{width:100%;justify-content:center;}

  /* — (8) Стандарты: степпер, колонка номера 44px; принципы в 1 колонку — */
  .nn-profile .std-steps{margin-top:4px;}
  .nn-profile .std-step{grid-template-columns:44px 1fr;column-gap:14px;}
  .nn-profile .std-step__n{width:44px;height:44px;font-size:18px;}
  .nn-profile .std-step:not(:last-child)::before{left:21px;top:48px;}
  .nn-profile .principles{grid-template-columns:1fr;}

  /* — (9) О враче: таймлайн → вертикальный список; вехи в 1 колонку — */
  .nn-profile .timeline{grid-template-columns:1fr;gap:0;margin-top:18px;}
  .nn-profile .timeline::before{display:none;}
  .nn-profile .tl{text-align:left;display:grid;grid-template-columns:18px 1fr;column-gap:12px;
    row-gap:2px;padding:10px 0;align-items:start;}
  .nn-profile .tl__dot{grid-column:1;grid-row:1;margin:5px 0 0;}
  .nn-profile .tl__y{grid-column:2;grid-row:1;margin-top:0;}
  .nn-profile .tl__t{grid-column:2;grid-row:2;margin-top:2px;line-height:1.5;}
  .nn-profile .milestones{grid-template-columns:1fr;}

  /* — (6) Отзывы: плашка стопкой; площадки — горизонтальный слайдер (~2 + подгляд);
     карточки-отзывы 1 кол; «ещё» и «Все отзывы» во всю ширину — */
  .nn-profile .rev-trust__hero{flex-direction:column;align-items:flex-start;gap:14px;}
  .nn-profile .rev-trust__all{width:100%;}
  .nn-profile .rev-platwrap{position:relative;}
  .nn-profile .rev-plat{display:flex;grid-template-columns:none;gap:12px;overflow-x:auto;
    scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:2px;}
  .nn-profile .rev-plat::-webkit-scrollbar{display:none;}
  .nn-profile .rev-plat__card{flex:0 0 46%;scroll-snap-align:start;}
  .nn-profile .rev-plat__arrow{display:flex;position:absolute;top:50%;transform:translateY(-50%);
    width:44px;height:44px;border-radius:50%;align-items:center;justify-content:center;
    background:rgba(255,255,255,.96);border:1px solid var(--line);
    box-shadow:0 3px 12px rgba(17,20,24,.20);color:var(--primary);font-size:22px;line-height:1;
    z-index:6;cursor:pointer;}
  .nn-profile .rev-plat__arrow.l{left:6px;} .nn-profile .rev-plat__arrow.r{right:6px;}
  .nn-profile .rev-plat__dots{display:flex;}
  .nn-profile .rev-grid{grid-template-columns:1fr;}
  .nn-profile .rev-foot .btn{width:100%;}

  /* — (10) Документы: галерея-свайп с подглядыванием; лайтбокс ≥44px — */
  .nn-profile .gallery__track{padding-bottom:2px;}
  .nn-profile .lightbox{padding:20px;}
  .nn-profile .lightbox__x{top:14px;right:14px;}
  .nn-profile .lightbox__nav{width:44px;height:44px;font-size:22px;}
  .nn-profile .lightbox__nav.l{left:10px;} .nn-profile .lightbox__nav.r{right:10px;}

  /* — (11) Услуги/цены: строка стопкой, цена под названием — */
  .nn-profile .svc__row{flex-direction:column;align-items:flex-start;gap:6px;}
  .nn-profile .svc__price{font-size:18px;}

  /* — (12) Контакты: шапка стопкой, аккордеоны во всю ширину, карта по ширине — */
  .nn-profile .contact__head{padding:20px;gap:18px;}
  .nn-profile .contact__cta{width:100%;}
  .nn-profile .contact__cta .btn{width:100%;}
  .nn-profile .contact-acc__head{padding:16px 20px;min-height:44px;}
  .nn-profile .contact-acc__body{padding-left:20px;padding-right:20px;}

  /* — (13) Слайдер «по городу»: свайп + точки + тап-стрелки ≥44px + подглядывание — */
  .nn-profile .slider-mock{padding:18px 16px 20px;}
  .nn-profile .slider-track{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px;}
  .nn-profile .slider-track::-webkit-scrollbar{display:none;}
  .nn-profile .slider-track>*{scroll-snap-align:start;}
  .nn-profile .slider-arrow{display:flex;align-items:center;justify-content:center;width:44px;height:44px;
    border-radius:50%;background:rgba(255,255,255,.96);border:1px solid var(--line);
    box-shadow:0 3px 12px rgba(17,20,24,.20);color:var(--primary);font-size:22px;line-height:1;
    top:50%;z-index:6;}
  .nn-profile .slider-arrow.l{left:6px;right:auto;}
  .nn-profile .slider-arrow.r{right:6px;left:auto;}

  /* — (13) Мостик CTA: стопкой, кнопки во всю ширину; длинный текст переносится
     (иначе nowrap-кнопка «Программа восстановления» даёт горизонт. скролл на 320). — */
  .nn-profile .bridge{padding:26px 22px;}
  .nn-profile .bridge__cta{width:100%;flex-direction:column;}
  .nn-profile .bridge__cta .btn{flex:none;white-space:normal;}

  /* — Нижний фикс-бар записи (safe-area iPhone); звонок = прямой набор tel: — */
  .nn-profile .msticky{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;
    border-top:1px solid var(--line);align-items:center;gap:10px;
    padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));
    box-shadow:0 -6px 18px rgba(17,20,24,.10);}
  .nn-profile .msticky .btn{flex:1;min-height:50px;}
  .nn-profile .msticky__call{flex:none !important;width:50px;min-height:50px;padding:0;}
}

/* =====================================================================
   STAGE 06 v2 · ДОВОДКА ШАПКИ + МОБИЛЬНОЙ ЛОГИКИ (этот проход)
   Только @media(max-width:900px). Десктоп (≥901px) = эталон, не затронут.
   Правила идут ПОСЛЕ основного мобильного блока — переопределяют его там,
   где поведение изменилось (порядок шапки, цена+CTA в постере, стрелки).
   ===================================================================== */
@media (max-width:900px){

  /* — Каркас: flex-колонка; .pcol раскрывается (display:contents), и порядок
       задаётся через flex-order: ИМЯ/РОЛЬ → ФОТО(+цена+CTA) → ЛИД → КОНТЕНТ. — */
  .nn-profile .profile{display:flex;flex-direction:column;align-items:stretch;}
  .nn-profile .pcol{display:contents;}
  .nn-profile .phead{order:1;}
  .nn-profile .poster{order:2;}
  .nn-profile .phead__lead{order:3;}
  .nn-profile .pmain{order:4;display:flex;flex-direction:column;}

  /* Мобильный порядок (flex-order в .pmain): СЧЁТЧИК → ПРИЁМ → ВРАЧИ → остальное.
     Логика: если расписание занято — человек сразу выбирает другого врача. */
  .nn-profile #b-counter{order:-3;}
  .nn-profile #b-priem{order:-2;}
  .nn-profile #b-others{order:-1;}

  /* — Тогглы текста: показываем КОРОТКИЕ, прячем полные — */
  .nn-profile .crumbs>a:not(.crumbs__mid), .nn-profile .crumbs .sep, .nn-profile .crumbs .cur, .nn-profile .crumbs__ell{display:none;}
  .nn-profile .crumbs__mid{display:inline-flex;align-items:center;}
  .nn-profile .crumbs__mid::before{content:"‹";margin-right:6px;font-size:17px;line-height:1;color:var(--text-2);}

  /* — Шапка (имя + строка-позиционирование): карточка #F5F7FA.
       Рейтинг — НЕ здесь, а плашкой на фото (см. .poster__ratingbadge). — */
  .nn-profile .phead{margin:14px 0 0;background:var(--gray-50);border-radius:var(--r-lg);padding:16px 16px 18px;}
  .nn-profile .phead__rating{display:none;}
  .nn-profile .phead__name{font-size:26px;margin:0 0 8px;}
  .nn-profile .phead__role{font-size:14.5px;margin:0;line-height:1.5;}

  /* — (4) Лид «сшит» с карточкой постера: тот же фон, нулевой зазор,
       верхние углы 0 / нижние var(--r-lg) — визуально одна карточка:
       фото → теги → цена → CTA → текст — */
  .nn-profile .phead__lead{margin:10px 0 0;background:#fff;border:1px solid var(--line);
    border-radius:var(--r-lg);padding:16px;font-size:14.5px;line-height:1.6;color:var(--text-2);text-align:left;}
  .nn-profile .phead__lead::before{content:"О приёме";display:block;font-size:12px;color:var(--text-3);
    letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;}

  /* — Постер: фото-квадрат на всю ширину карточки; рейтинг-плашка в ЛЕВОМ
       верхнем углу; play остаётся справа сверху; цена + «Записаться» на всю ширину;
       блок .poster__facts (стаж/степень) показываем ЧИТАЕМО, как на десктопе. — */
  .nn-profile .poster__media{aspect-ratio:1/1;max-width:none;margin:0 0 14px;}
  .nn-profile .poster__ratingbadge{display:inline-flex;align-items:center;gap:5px;position:absolute;bottom:10px;left:10px;z-index:3;
    background:rgba(17,28,42,.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
    color:#fff;text-decoration:none;padding:5px 10px;border-radius:var(--pill);
    font-size:12px;font-weight:700;min-height:30px;box-shadow:0 2px 8px rgba(0,0,0,.22);}
  .nn-profile .poster__ratingbadge .star{color:#FFC53D;font-size:13px;line-height:1;}
  .nn-profile .poster__ratingbadge b{font-weight:900;}
  .nn-profile .poster__ratingbadge .rb-rev{opacity:.92;font-weight:700;}
  .nn-profile .poster__rating{display:none;}
  .nn-profile .poster__tags{margin-top:14px;}
  .nn-profile .poster__price{margin-top:16px;}
  .nn-profile .poster__cta{display:flex;margin-top:14px;}
  .nn-profile .poster__cta .btn{width:100%;min-height:50px;}
  /* (4) нижние углы карточки 0 — лид продолжает её */
  .nn-profile .poster{border-radius:var(--r-lg) var(--r-lg) 0 0;border-bottom:0;}

  /* — pnav: на мобиле оставляем 5 высокоценных пунктов в порядке
       Запись · Отзывы · Цены · Контакты · Заболевания; остальные прячем.
       Компактнее (padding/шрифт), чтобы без скролла влезало ≥4; у правого края —
       затухание-градиент + видимый край следующего пункта (peek); свайп сохранён. — */
  /* (4) Паритет якорей: ВСЕ 10 пунктов видны и на мобиле (лента-скролл + авто-центрирование). */
  /* (4) order-\u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0443\u0431\u0440\u0430\u043d\u044b \u2014 \u044f\u043a\u043e\u0440\u044f \u0438\u0434\u0443\u0442 \u0432 DOM-\u043f\u043e\u0440\u044f\u0434\u043a\u0435 (\u0441\u043e\u0432\u043f\u0430\u0434\u0430\u0435\u0442 \u0441 \u043f\u0440\u043e\u043a\u0440\u0443\u0442\u043a\u043e\u0439) */
  .nn-profile .pnav__in{padding:0 16px;gap:2px;
    -webkit-mask-image:linear-gradient(to right,transparent 0,#000 24px,#000 calc(100% - 24px),transparent 100%);
    mask-image:linear-gradient(to right,transparent 0,#000 24px,#000 calc(100% - 24px),transparent 100%);}
  .nn-profile .pnav a{font-size:13px;padding:13px 10px;border-bottom-width:2px;}
  .nn-profile .pnav::after{display:none;}

  /* — Стрелки ВСЕХ каруселей (СМИ, галереи, площадки отзывов, нижний слайдер):
       видимый кружок ~32px (radial-gradient), тень по форме круга (drop-shadow),
       тач-зона 44px, прижаты к краям (2px). — */
  .nn-profile .rail__arrow, .nn-profile .rev-plat__arrow, .nn-profile .slider-arrow{
    width:44px;height:44px;border:0;box-shadow:none;color:var(--primary);
    font-size:19px;line-height:1;display:flex;align-items:center;justify-content:center;
    background:radial-gradient(circle 16px at 50% 50%,rgba(255,255,255,.84) 0 16px,transparent 16px);
    filter:drop-shadow(0 2px 6px rgba(17,20,24,.24));}
  .nn-profile .rail__arrow.l, .nn-profile .rev-plat__arrow.l, .nn-profile .slider-arrow.l{left:2px;right:auto;}
  .nn-profile .rail__arrow.r, .nn-profile .rev-plat__arrow.r, .nn-profile .slider-arrow.r{right:2px;left:auto;}

  /* — «О враче» (per-breakpoint поведение из ОДНОГО DOM — для разработчика):
       мобайл = вводный абзац + аккордеоны; десктоп = проза + таймлайн.
       Длинные детали и горизонтальный таймлайн на мобиле скрыты — их содержимое
       перенесено в тела аккордеонов «Опыт работы» / «Образование» / «Повышение
       квалификации». — */
}

/* (8-v4) Двухъярусный счётчик не принят (слишком высокий) — вернулись к одной
   компактной строке; правила ярусов удалены, .counter__item--reg визуально не отличается. */

/* =====================================================================
   (3) СТРЕЛКИ ВСЕХ КАРУСЕЛЕЙ — без кругов-подложек, только шеврон.
   SVG ~24px (stroke 2.5, round caps), цвет primary + белое свечение
   drop-shadow — читается и на белых карточках, и поверх фото патентов.
   Прижаты к крайним краям контейнера (left:0/right:0), тап-зона
   44×44 прозрачная. Правило идёт последним в файле и без media —
   перебивает прежние круги/фоны на обоих брейкпоинтах. display НЕ
   трогаем (скрытые на десктопе стрелки остаются скрытыми).
   ===================================================================== */
.nn-profile .rail__arrow, .nn-profile .rev-plat__arrow, .nn-profile .slider-arrow, .nn-profile .counter__arrow{
  width:44px;height:44px;padding:0;border:0;border-radius:0;
  background:none;box-shadow:none;
  -webkit-backdrop-filter:none;backdrop-filter:none;
  align-items:center;justify-content:center;
  color:var(--primary);line-height:1;cursor:pointer;
  filter:drop-shadow(0 0 3px rgba(255,255,255,.95)) drop-shadow(0 1px 2px rgba(255,255,255,.8));
  transition:color .15s;}
.nn-profile .rail__arrow svg, .nn-profile .rev-plat__arrow svg, .nn-profile .slider-arrow svg, .nn-profile .counter__arrow svg{
  width:24px;height:24px;display:block;}
.nn-profile .rail__arrow.l, .nn-profile .rev-plat__arrow.l, .nn-profile .slider-arrow.l, .nn-profile .counter__arrow.l{left:0;right:auto;}
.nn-profile .rail__arrow.r, .nn-profile .rev-plat__arrow.r, .nn-profile .slider-arrow.r, .nn-profile .counter__arrow.r{right:0;left:auto;}
/* hover — лёгкое усиление цвета, без появления кругов */
.nn-profile .rail__arrow:hover, .nn-profile .rev-plat__arrow:hover, .nn-profile .slider-arrow:hover, .nn-profile .counter__arrow:hover{
  background:none;border-color:transparent;color:var(--brand);}

/* Вертикально — по центру МЕДИА-зоны: компенсируем капшен над треком
   (≈+18px) и точки под треком на мобиле (≈0.5×23px) — шеврон по центру
   фото/логотипов, а не подписи. */
.nn-profile .gallery:has(.gallery__cap) .rail__arrow{top:calc(50% + 18px);}
@media (min-width:901px){
  .nn-profile [data-rail] .rail__arrow{top:44px;}
}
@media (max-width:900px){
  .nn-profile [data-rail] .rail__arrow{top:calc(50% - 12px);}
  .nn-profile .gallery .rail__arrow{top:calc(50% - 12px);}
  .nn-profile .gallery:has(.gallery__cap) .rail__arrow{top:calc(50% + 6px);}
  .nn-profile .rev-plat__arrow{top:calc(50% - 12px);}
}

/* =====================================================================
   ЗАХОД: теги · ФИО в карточках · drag-scroll · лид-сшивка · счётчик
   постранично · принципы-слайдер · карточки-аккордеоны
   ===================================================================== */

/* (3) Стрелки слайдера выше карточек: .scard:hover{translateY(-3px)} поднимал
   карточку над стрелками */
.nn-profile .slider-arrow{z-index:5;}

/* (3) Drag-scroll мышью: grab/grabbing; во время драга снап выключен,
   клики по детям подавляются (порог 6px — в JS) */
.nn-profile .drag-scroll{cursor:grab;}
.nn-profile .drag-scroll.is-dragging{cursor:grabbing;user-select:none;-webkit-user-select:none;scroll-snap-type:none;}
.nn-profile .drag-scroll.is-dragging *{pointer-events:none;}

/* (6) «Принципы работы»: обёртка-слайдер. Десктоп — сетка как была,
   стрелки и точки скрыты. */
.nn-profile .principles-wrap{position:relative;margin-top:34px;}
.nn-profile .principles-wrap .principles{margin-top:0;}
.nn-profile .principles-wrap .slider-arrow, .nn-profile .principles-wrap .dots{display:none;}
@media (max-width:900px){
  .nn-profile .principles-wrap .principles{display:flex;grid-template-columns:none;gap:10px;
    overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;
    scrollbar-width:none;padding:2px;}
  .nn-profile .principles-wrap .principles::-webkit-scrollbar{display:none;}
  .nn-profile .principles-wrap .principle{flex:0 0 84%;scroll-snap-align:center;}
  .nn-profile .principles-wrap .slider-arrow{display:flex;top:calc(50% - 12px);}
  .nn-profile .principles-wrap .dots{display:flex;margin-top:14px;}
}

/* (7) Аккордеоны «О враче» + «Что входит в первичный приём» — единые карточки:
   фон #F5F7FA, рамка #E2E8F0, radius var(--r-lg), между пунктами 10px */
.nn-profile .about-m .contact-acc, .nn-profile .priem-acc, .nn-profile .cvl-acc{background:var(--gray-50);border:1px solid var(--line);
  border-radius:var(--r-lg);overflow:hidden;box-shadow:none;}
.nn-profile .about-m .contact-acc+.contact-acc{margin-top:10px;}
.nn-profile .about-m .contact-acc__head, .nn-profile .priem-acc .contact-acc__head, .nn-profile .cvl-acc .contact-acc__head{padding:15px 16px;}
.nn-profile .about-m .contact-acc__body, .nn-profile .priem-acc .contact-acc__body, .nn-profile .cvl-acc .contact-acc__body{padding:0 16px 16px;}
.nn-profile .about-m .contact-acc__head:hover, .nn-profile .priem-acc .contact-acc__head:hover, .nn-profile .cvl-acc .contact-acc__head:hover{background:#EEF1F6;}
/* (5) Мобайл: шире поле под текст аккордеонов «О враче» / «Что входит» —
   меньше боковых паддингов, читаемый кегль; десктоп не затронут. */
@media (max-width:900px){
  .nn-profile .about-m .contact-acc__body, .nn-profile .priem-acc .contact-acc__body{padding:0 12px 14px;
    font-size:14px;line-height:1.6;hyphens:none;overflow-wrap:break-word;}
}

/* =====================================================================
   ЗАХОД: умный фикс-бар · Jivo-мок · мульти-неделя расписания · заявка
   ===================================================================== */

/* (4) Расписание: диапазон недели в шапке, кнопки-дни, пустая неделя */
.nn-profile .sched .sched__head{align-items:flex-start;}
.nn-profile .sched__title{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1 1 auto;}
.nn-profile .sched__title h3{line-height:1.25;}
.nn-profile .sched__range{font-size:13px;font-weight:700;color:var(--primary);font-variant-numeric:tabular-nums;letter-spacing:.01em;}
.nn-profile .sched .day{font-family:inherit;-webkit-appearance:none;appearance:none;}
.nn-profile .sched .day:disabled{cursor:not-allowed;}
.nn-profile .sched__nav button:disabled{opacity:.4;cursor:default;border-color:var(--line);background:#fff;}
.nn-profile .sched__empty{display:flex;align-items:center;justify-content:center;gap:10px;text-align:center;
  background:var(--gray-50);border:1px solid var(--line);border-radius:var(--r);
  padding:22px 18px;margin-bottom:20px;font-size:14.5px;font-weight:700;color:var(--text-2);}
.nn-profile .sched__empty svg{width:20px;height:20px;color:var(--text-3);flex:none;}

/* (4) Мок-форма «Оставить заявку» */
.nn-profile .lead-modal{width:min(440px,100%);}
.nn-profile .lead-form{display:flex;flex-direction:column;gap:14px;padding:18px 20px 20px;}
.nn-profile .lead-field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;color:var(--text-2);}
.nn-profile .lead-field input, .nn-profile .lead-field textarea{font-family:inherit;font-size:16px;color:var(--ink);
  border:1.5px solid var(--line);border-radius:var(--r-sm);padding:12px 14px;background:#fff;
  min-height:48px;width:100%;box-sizing:border-box;transition:.15s;resize:vertical;font-weight:400;}
.nn-profile .lead-field textarea{min-height:84px;line-height:1.5;}
.nn-profile .lead-field input::placeholder, .nn-profile .lead-field textarea::placeholder{color:var(--text-3);font-weight:400;}
.nn-profile .lead-field input:focus, .nn-profile .lead-field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--blue-50);}
.nn-profile .lead-form .btn{margin-top:4px;min-height:50px;}
.nn-profile .lead-note{margin:0;font-size:12px;color:var(--text-3);line-height:1.5;}
.nn-profile .lead-done{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:30px 24px 28px;}
.nn-profile .lead-done__ic{width:56px;height:56px;border-radius:50%;background:var(--blue-50);color:var(--primary);
  display:flex;align-items:center;justify-content:center;}
.nn-profile .lead-done__ic svg{width:28px;height:28px;}
.nn-profile .lead-done b{font-size:18px;}
.nn-profile .lead-done p{margin:0;font-size:14.5px;color:var(--text-2);line-height:1.6;max-width:320px;}
.nn-profile .lead-done .btn{margin-top:6px;}

/* (2) Jivo-мок: плавающий круг 56px, правый нижний угол */
.nn-profile .env-jivo{position:fixed;right:16px;bottom:16px;z-index:55;width:56px;height:56px;border-radius:50%;
  border:0;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 18px rgba(11,95,165,.34);cursor:pointer;
  transition:bottom .22s ease,transform .15s ease,background .15s ease;}
.nn-profile .env-jivo:hover{background:var(--primary-hover);transform:scale(1.05);}
.nn-profile .env-jivo svg{width:26px;height:26px;}

/* (1) Умный фикс-бар записи: по умолчанию спрятан под нижним краем;
   выезжает, когда CTA постера ушла из вьюпорта вверх (body.bar-on задаёт JS).
   (2) Jivo поднимается над баром, когда бар виден. */
@media (max-width:900px){
  .nn-profile .msticky{transform:translateY(115%);transition:transform .22s ease;will-change:transform;}
  body.bar-on .nn-profile .msticky{transform:translateY(0);}
  .nn-profile .env-jivo{bottom:calc(16px + env(safe-area-inset-bottom,0px));}
  body.bar-on .nn-profile .env-jivo{bottom:calc(70px + env(safe-area-inset-bottom,0px) + 12px);}
}

/* =====================================================================
   ███ МОК ОКРУЖЕНИЯ — на проде заменяется реальной шапкой/подвалом сайта ███
   Самодостаточная секция: все селекторы с префиксом .env-, литеральные цвета
   живого сайта newneuro.ru (НЕ токены страницы), стили страницы не трогаются
   и не наследуются. Шрифт — общий Merriweather (как на сайте).
   ===================================================================== */

/* ---------- ШАПКА: верхняя белая полоса (десктоп) ---------- */
.nn-profile .env-header{display:block;width:100%;}
.nn-profile .env-top{background:#fff;border-bottom:1px solid #e7e7e7;}
.nn-profile .env-top__in{max-width:1240px;margin:0 auto;padding:14px 24px;display:flex;align-items:flex-start;
  justify-content:space-between;gap:26px;flex-wrap:wrap;}
.nn-profile .env-branch{display:flex;flex-direction:column;align-items:flex-start;gap:8px;}
.nn-profile .env-pill{display:inline-flex;align-items:center;justify-content:center;min-width:212px;
  color:#fff;font-weight:700;font-size:14px;padding:9px 22px;border-radius:6px;text-align:center;
  box-shadow:0 2px 5px rgba(0,0,0,.12);}
.nn-profile .env-pill--msk{background:linear-gradient(180deg,#34b5ec,#1c9fdd);}
.nn-profile .env-pill--pyat{background:linear-gradient(180deg,#33b96a,#1e9d49);}
.nn-profile .env-branch__addr{display:flex;align-items:center;gap:7px;font-size:14px;color:#333;}
.nn-profile .env-branch__addr svg{width:15px;height:18px;color:#2aa0de;flex:none;}
.nn-profile .env-branch__row{display:flex;align-items:center;gap:14px;}
.nn-profile .env-tel{display:inline-flex;align-items:center;gap:7px;font-size:15px;font-weight:700;color:#222;text-decoration:none;white-space:nowrap;}
.nn-profile .env-tel svg{width:15px;height:15px;color:#2aa0de;flex:none;}
.nn-profile .env-tel:hover{color:#1c9fdd;}
.nn-profile .env-write{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:8px 15px;
  border:1.5px solid #cfd6dd;border-radius:6px;background:#fff;color:#222;font-family:inherit;
  font-size:14px;font-weight:700;cursor:pointer;transition:.15s;}
.nn-profile .env-write svg{width:15px;height:15px;color:#2aa0de;}
.nn-profile .env-write:hover{border-color:#2aa0de;color:#1c9fdd;}
.nn-profile .env-slogan{text-align:center;padding-top:2px;}
.nn-profile .env-slogan__t{font-size:15px;font-weight:700;color:#2c2c2c;line-height:1.3;}
.nn-profile .env-slogan__s{font-size:15px;font-weight:700;color:#1c8fd6;line-height:1.3;margin-top:7px;padding-top:7px;border-top:1px solid #d3d3d3;}
.nn-profile .env-utility{display:flex;flex-direction:column;align-items:flex-end;gap:12px;}
.nn-profile .env-social{display:flex;gap:9px;}
.nn-profile .env-social a{color:#8b929b;display:inline-flex;transition:.15s;}
.nn-profile .env-social a svg{width:17px;height:17px;}
.nn-profile .env-social a:hover{color:#1c9fdd;}
.nn-profile .env-a11y{display:inline-flex;align-items:center;gap:9px;min-height:40px;padding:7px 13px;
  border:1px solid #cfd6dd;border-radius:6px;background:#fff;color:#555;font-family:inherit;
  font-size:12px;font-weight:700;line-height:1.15;text-align:left;cursor:pointer;transition:.15s;}
.nn-profile .env-a11y svg{width:20px;height:20px;color:#2aa0de;flex:none;}
.nn-profile .env-a11y:hover{border-color:#2aa0de;}

/* ---------- ШАПКА: синяя полоса со скошенным белым углом ---------- */
.nn-profile .env-nav{background:#1fa0e0;position:relative;}
.nn-profile .env-nav__in{max-width:1240px;margin:0 auto;display:flex;align-items:stretch;min-height:64px;
  padding-right:24px;position:relative;overflow:hidden;}
.nn-profile .env-logo{background:#fff;display:flex;align-items:center;padding:8px 48px 8px 24px;margin-right:14px;
  clip-path:polygon(0 0,100% 0,calc(100% - 34px) 100%,0 100%);flex:none;}
.nn-profile .env-logo__white, .nn-profile .env-logo__inv{height:42px;width:auto;}
.nn-profile .env-logo__white{display:block;}
.nn-profile .env-logo__inv{display:none;}
.nn-profile .env-menu{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:11px;overflow:hidden;}
.nn-profile .env-menu a{color:#fff;font-weight:700;font-size:15px;text-decoration:none;white-space:nowrap;transition:.15s;}
.nn-profile .env-menu a:hover{color:#eaf6ff;text-decoration:underline;}
.nn-profile .env-menu__sep{color:rgba(255,255,255,.55);font-size:14px;}
.nn-profile .env-search{display:inline-flex;align-items:center;justify-content:center;width:44px;background:transparent;
  border:0;color:#fff;cursor:pointer;flex:none;}
.nn-profile .env-search svg{width:21px;height:21px;}
.nn-profile .env-burger{display:none;}
.nn-profile .env-mobmenu{display:none;}

/* ---------- ПОДВАЛ ---------- */
.nn-profile .env-footer{background:#2f2f2f;color:#cfcfcf;padding:40px 0 38px;}
.nn-profile .env-footer__in{max-width:1240px;margin:0 auto;padding:0 24px;}
.nn-profile .env-foot-title{text-align:center;color:#fff;font-size:24px;font-weight:700;line-height:1.3;margin:0 0 28px;text-wrap:balance;}
.nn-profile .env-revs{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin-bottom:32px;}
.nn-profile .env-rev{position:relative;flex:0 0 auto;width:152px;min-height:98px;background:#fff;border-radius:8px;
  padding:20px 14px 13px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
  text-decoration:none;box-shadow:0 4px 11px rgba(0,0,0,.28);transition:.15s;}
.nn-profile .env-rev:hover{transform:translateY(-2px);box-shadow:0 7px 16px rgba(0,0,0,.34);}
.nn-profile .env-rev__tab{position:absolute;top:0;right:0;background:#6f6f6f;color:#fff;font-weight:700;font-size:14px;
  padding:3px 11px;border-radius:0 8px 0 9px;font-variant-numeric:tabular-nums;}
.nn-profile .env-rev__wm{color:#5e5e5e;font-weight:900;font-size:17px;letter-spacing:-.01em;line-height:1.05;
  display:inline-flex;align-items:center;gap:5px;text-align:center;}
.nn-profile .env-rev__wm svg{width:18px;height:18px;flex:none;}
.nn-profile .env-wm--yell b{color:#b8202e;}
.nn-profile .env-wm--yell i{font-style:normal;font-size:11px;font-weight:700;color:#8a8a8a;}
.nn-profile .env-wm--prod{font-size:13.5px;letter-spacing:-.02em;}
.nn-profile .env-wm--doktu b{color:#e08a1e;}
.nn-profile .env-wm--meds svg{color:#2db5a3;}
.nn-profile .env-wm--sber{font-size:13px;flex-direction:column;gap:2px;}
.nn-profile .env-wm--sber svg{color:#3aa55a;width:20px;height:20px;}
.nn-profile .env-rev__stars{color:#8d8d8d;font-size:13px;letter-spacing:2px;}
.nn-profile .env-rev__stars i{color:#d0d0d0;font-style:normal;}

.nn-profile .env-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;border-top:1px solid #454545;padding-top:28px;}
.nn-profile .env-col__h{color:#3fa9e8;font-size:20px;font-weight:700;margin:0 0 16px;position:relative;padding-bottom:10px;}
.nn-profile .env-col__h::after{content:"";position:absolute;left:0;bottom:0;width:40px;height:2px;background:#3fa9e8;}
.nn-profile .env-col__txt{font-size:14.5px;line-height:1.65;color:#c7c7c7;margin:0;}
.nn-profile .env-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:13px;}
.nn-profile .env-links li{display:flex;align-items:center;gap:10px;font-size:14.5px;}
.nn-profile .env-links li svg{width:18px;height:18px;color:#3fa9e8;flex:none;}
.nn-profile .env-links a{color:#4fb0ec;text-decoration:none;transition:.15s;}
.nn-profile .env-links a:hover{color:#7cc6f3;text-decoration:underline;}
.nn-profile .env-lic__no{font-size:14px;color:#d4d4d4;margin:0 0 7px;font-variant-numeric:tabular-nums;}
.nn-profile .env-lic__img{margin-top:14px;width:132px;height:152px;border:1px solid #565656;border-radius:4px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#8a8a8a;
  font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  background:repeating-linear-gradient(135deg,#3a3a3a,#3a3a3a 9px,#343434 9px,#343434 18px);}
.nn-profile .env-lic__img svg{width:30px;height:30px;}
.nn-profile .env-contact{display:flex;align-items:flex-start;gap:10px;font-size:14.5px;line-height:1.55;color:#c7c7c7;margin:0 0 16px;}
.nn-profile .env-contact svg{width:18px;height:18px;color:#3fa9e8;flex:none;margin-top:2px;}
.nn-profile .env-contact a{color:#4fb0ec;text-decoration:none;}
.nn-profile .env-contact a:hover{text-decoration:underline;}

/* ---------- МОК ОКРУЖЕНИЯ · промежуточный десктоп (узкое меню) ---------- */
@media (min-width:901px) and (max-width:1140px){
  .nn-profile .env-logo{padding:8px 30px 8px 18px;margin-right:10px;clip-path:polygon(0 0,100% 0,calc(100% - 26px) 100%,0 100%);}
  .nn-profile .env-logo__white, .nn-profile .env-logo__inv{height:36px;}
  .nn-profile .env-menu{gap:7px;}
  .nn-profile .env-menu a{font-size:12.5px;}
  .nn-profile .env-menu__sep{font-size:12px;}
}

/* ---------- МОК ОКРУЖЕНИЯ · мобайл ≤900px ---------- */
@media (max-width:900px){
  .nn-profile .env-top{display:none;}
  .nn-profile .env-nav__in{min-height:56px;padding:0 14px;align-items:center;justify-content:space-between;overflow:visible;}
  .nn-profile .env-logo{background:transparent;clip-path:none;padding:0;margin:0;}
  .nn-profile .env-logo__white{display:none;}
  .nn-profile .env-logo__inv{display:block;height:34px;filter:brightness(0) invert(1);}
  .nn-profile .env-menu, .nn-profile .env-search{display:none;}
  .nn-profile .env-burger{display:inline-flex;align-items:center;justify-content:center;width:44px;height:38px;
    background:transparent;border:1.5px solid rgba(255,255,255,.75);border-radius:6px;color:#fff;cursor:pointer;}
  .nn-profile .env-burger svg{width:22px;height:22px;}
  .nn-profile .env-mobmenu{display:block;background:#1c98d6;border-top:1px solid rgba(255,255,255,.2);}
  .nn-profile .env-mobmenu[hidden]{display:none;}
  .nn-profile .env-mobmenu a{display:block;color:#fff;font-weight:700;font-size:15px;text-decoration:none;
    padding:13px 16px;min-height:44px;border-top:1px solid rgba(255,255,255,.16);box-sizing:border-box;}
  .nn-profile .env-mobmenu a:first-child{border-top:0;}
  .nn-profile .env-mobmenu a:active{background:rgba(255,255,255,.12);}

  .nn-profile .env-footer{padding:30px 0 30px;}
  .nn-profile .env-foot-title{font-size:20px;margin:0 0 22px;}
  .nn-profile .env-revs{gap:10px;margin-bottom:26px;}
  .nn-profile .env-rev{flex:0 0 calc(33.333% - 7px);width:auto;min-height:84px;padding:18px 8px 11px;gap:8px;}
  .nn-profile .env-rev__wm{font-size:12px;gap:3px;}
  .nn-profile .env-wm--sber{font-size:10.5px;}
  .nn-profile .env-rev__wm svg{width:14px;height:14px;}
  .nn-profile .env-rev__stars{font-size:11px;letter-spacing:1.5px;}
  .nn-profile .env-cols{grid-template-columns:1fr;gap:26px;}
}

.nn-profile .specmodal{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(17,20,24,.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:0;transition:opacity .2s ease;}
.nn-profile .specmodal.open{opacity:1;}
.nn-profile .specmodal__box{position:relative;background:#fff;border-radius:var(--r-lg);box-shadow:var(--sh-md);max-width:440px;width:100%;max-height:80vh;overflow:auto;padding:30px 28px 28px;border-top:3px solid var(--primary);transform:translateY(10px) scale(.97);transition:transform .2s cubic-bezier(.2,.8,.2,1);}
.nn-profile .specmodal.open .specmodal__box{transform:none;}
.nn-profile .specmodal__close{position:absolute;top:14px;right:14px;width:32px;height:32px;border:0;border-radius:50%;background:var(--gray-50);color:var(--text-3);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.16s ease;}
.nn-profile .specmodal__close:hover{background:var(--blue-50);color:var(--primary);}
.nn-profile .specmodal__close:focus-visible{outline:2px solid var(--primary);outline-offset:2px;}
.nn-profile .specmodal__close svg{width:16px;height:16px;}
.nn-profile .specmodal__fio{font-family:'Merriweather',Georgia,serif;font-size:19px;font-weight:700;line-height:1.3;color:var(--ink);padding-right:34px;margin-bottom:5px;letter-spacing:-.01em;}
.nn-profile .specmodal__sub{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin-bottom:16px;}
.nn-profile .specmodal__list{display:flex;flex-wrap:wrap;gap:8px;}
.nn-profile .specmodal__list span{font-size:13px;font-weight:600;color:var(--primary);background:var(--blue-50);border:1px solid transparent;border-radius:var(--pill);padding:7px 13px;line-height:1.2;transition:.16s ease;}
.nn-profile .specmodal__list span:hover{border-color:var(--primary);}
.nn-profile .note__link{color:var(--primary);text-decoration:underline;text-underline-offset:2px;font-weight:600;}

/* Видеоблок в конце страницы */
.nn-profile .vblock{max-width:1180px;margin:48px auto;padding:0 20px;}
.nn-profile .vblock__title{font-family:'Merriweather',serif;font-size:22px;font-weight:700;color:var(--ink);margin:0 0 16px;}
.nn-profile .vblock__card{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;padding:0;border-radius:var(--r-lg);overflow:hidden;cursor:pointer;background:linear-gradient(135deg,var(--primary),var(--brand));transition:filter .18s;}
.nn-profile .vblock__card:hover{filter:brightness(1.04);}
.nn-profile .vblock__thumb{width:100%;height:100%;object-fit:cover;display:block;}
.nn-profile .vblock__thumb.is-empty{display:none;}
@media (max-width:900px){ .nn-profile .vblock{margin:36px auto;} .nn-profile .vblock__title{font-size:19px;} }

/* P2+P3: play-кнопка — центровка треугольника, чуть крупнее, цвет как на ховере */
.nn-profile .scard__play{ background:var(--brand); }
.nn-profile .poster__play{ background:var(--brand); }
.nn-profile .scard__play svg{ transform:translateX(0); width:19px; height:19px; }
.nn-profile .poster__play svg{ transform:translateX(0); width:22px; height:22px; }

/* P4: видеоблок — глубина + ховер, аккуратнее на мобайле */
.nn-profile .vblock__card{ box-shadow:0 12px 32px -10px rgba(11,20,40,.3); transition:transform .2s ease, box-shadow .2s ease, filter .2s ease; }
.nn-profile .vblock__card:hover{ transform:translateY(-3px); box-shadow:0 18px 44px -10px rgba(11,20,40,.38); filter:brightness(1.03); }
@media (max-width:900px){ .nn-profile .vblock{ padding:0 16px; } }

/* P5: блок «о враче» — убрать ярлык «О приёме», убрать рамку на мобайле, развести с подзаголовком */
.nn-profile .phead__lead::before{ content:none !important; }
.nn-profile .phead__lead{ background:transparent !important; border:0 !important; padding:0 !important; margin-top:22px; }

/* ОТЗЫВЫ: карточки площадок — серые, расцветают на наведении + мотив колец */
.nn-profile .rev-plat__card{ position:relative; overflow:hidden; filter:grayscale(1); opacity:1;
  transition:filter .3s ease, opacity .3s ease, transform .25s ease, box-shadow .3s ease, border-color .3s ease; }
.nn-profile .rev-plat__card>*{ position:relative; z-index:1; }
.nn-profile .rev-plat__card::before, .nn-profile .rev-plat__card::after{ content:""; position:absolute; border-radius:50%;
  border:5px solid var(--blue-50); opacity:.85; pointer-events:none; z-index:0; }
.nn-profile .rev-plat__card::before{ width:44px; height:44px; top:-16px; right:-14px; }
.nn-profile .rev-plat__card::after{ width:32px; height:32px; bottom:-12px; left:-12px; }
.nn-profile .rev-plat__card:hover{ filter:none; opacity:1; transform:translateY(-4px);
  box-shadow:0 14px 30px -10px rgba(11,95,165,.28); border-color:#dceafa; }
.nn-profile .rev-plat__stars{ color:var(--brand); }

.nn-profile .rev-plat__card::before, .nn-profile .rev-plat__card::after{ display:none; }

/* Стрелки слайдера специалистов — по центру квадратного фото (ПК) */
@media (min-width:901px){
  .nn-profile .slider-arrow{ top:140px; transform:translateY(-50%); }
}

/* ===== Отзывы пациентов v2: фильтр + лента ===== */
.nn-profile .rev-trust--compact{margin-bottom:18px;}
.nn-profile .rev2{margin-top:4px;}
.nn-profile .rev2-bar{display:flex;flex-direction:column;gap:12px;background:var(--gray-50);border:1px solid var(--line);border-radius:var(--r-lg);padding:14px 16px;}
.nn-profile .rev2-bar__row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;}
.nn-profile .rev2-bar__row--top{justify-content:space-between;}
.nn-profile .rev2-doc{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;color:var(--primary);background:var(--blue-50);border:1px solid #cfe4f6;border-radius:var(--pill);padding:7px 14px;line-height:1.2;}
.nn-profile .rev2-doc svg{width:15px;height:15px;flex:none;}
.nn-profile .rev2-sort{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text-2);}
.nn-profile .rev2-sort__sel{font-family:inherit;font-size:13px;font-weight:600;color:var(--ink);background-color:#fff;border:1px solid var(--line);border-radius:var(--r-sm);padding:8px 32px 8px 12px;cursor:pointer;min-height:36px;
  appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235A6677' stroke-width='2' stroke-linecap='round'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right 10px center;background-size:15px;}
.nn-profile .rev2-sort__sel:focus{outline:2px solid var(--primary);outline-offset:1px;}
.nn-profile .rev2-group{display:flex;flex-wrap:wrap;gap:6px;}
.nn-profile .rev2-tog{font-family:inherit;font-size:13px;font-weight:700;color:var(--text-2);background:#fff;border:1.5px solid var(--line);border-radius:var(--pill);padding:7px 13px;cursor:pointer;transition:.15s;line-height:1.2;min-height:36px;}
.nn-profile .rev2-tog:hover{border-color:var(--brand);color:var(--brand);}
.nn-profile .rev2-tog.is-on{background:var(--primary);border-color:var(--primary);color:#fff;}
.nn-profile .rev2-tog--star.is-on{background:#F2A100;border-color:#F2A100;color:#fff;}
.nn-profile .rev2-sep{width:1px;align-self:stretch;min-height:24px;background:var(--line);margin:0 3px;}
.nn-profile .rev2-more-wrap{position:relative;margin-left:auto;}
.nn-profile .rev2-filtbtn{display:inline-flex;align-items:center;gap:7px;font-family:inherit;font-size:13px;font-weight:700;color:var(--primary);background:#fff;border:1.5px solid var(--primary);border-radius:var(--pill);padding:7px 14px;cursor:pointer;min-height:36px;line-height:1.2;transition:.15s;}
.nn-profile .rev2-filtbtn:hover{background:var(--blue-25);}
.nn-profile .rev2-filtbtn svg{width:15px;height:15px;flex:none;}
.nn-profile .rev2-filtbtn__badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;border-radius:var(--pill);background:var(--primary);color:#fff;}
.nn-profile .rev2-pop{position:absolute;top:calc(100% + 8px);right:0;width:320px;max-width:calc(100vw - 40px);background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-md);padding:16px;z-index:30;}
.nn-profile .rev2-pop__sec{margin-bottom:14px;}
.nn-profile .rev2-pop__sec h4{font-family:'Merriweather',serif;font-size:13px;margin:0 0 8px;color:var(--ink);}
.nn-profile .rev2-checks{display:flex;flex-wrap:wrap;gap:7px;}
.nn-profile .rev2-checks--scroll{max-height:240px;overflow:auto;-webkit-overflow-scrolling:touch;}
.nn-profile .rev2-acc{border-top:1px solid var(--line);}
.nn-profile .rev2-acc:first-child{border-top:0;}
.nn-profile .rev2-acc__head{display:flex;align-items:center;gap:8px;width:100%;background:#fff;border:0;padding:12px 2px;cursor:pointer;font-family:inherit;color:var(--ink);position:sticky;top:0;z-index:2;}
.nn-profile .rev2-acc__title{font-family:'Merriweather',serif;font-size:14px;font-weight:700;}
.nn-profile .rev2-acc__badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;border-radius:var(--pill);background:var(--primary);color:#fff;}
.nn-profile .rev2-acc__chev{width:16px;height:16px;margin-left:auto;color:var(--text-3);transition:transform .2s;flex:none;}
.nn-profile .rev2-acc--collapsed .rev2-acc__chev{transform:rotate(-90deg);}
.nn-profile .rev2-acc--collapsed .rev2-acc__body{display:none;}
.nn-profile .rev2-acc__body{padding:2px 2px 12px;}
.nn-profile .rev2-search{position:relative;margin-bottom:10px;}
.nn-profile .rev2-search input{width:100%;font-family:inherit;font-size:16px;padding:9px 12px 9px 34px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--gray-50);color:var(--ink);}
.nn-profile .rev2-search input:focus{outline:none;border-color:var(--brand);background:#fff;box-shadow:0 0 0 3px rgba(9,150,222,.14);}
.nn-profile .rev2-search svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);width:15px;height:15px;color:var(--text-3);pointer-events:none;}
.nn-profile .rev2-search__empty{font-size:12.5px;color:var(--text-3);padding:4px 2px;}
@media (min-width:641px){
  .nn-profile .rev2-pop{max-height:min(72vh,560px);overflow:auto;}
  .nn-profile .rev2-pop__foot{position:sticky;bottom:0;background:#fff;padding-top:12px;margin-top:0;box-shadow:0 -6px 14px rgba(17,20,24,.06);}
}
.nn-profile .rev2-check{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--text-2);cursor:pointer;background:var(--gray-50);border:1px solid var(--line);border-radius:var(--pill);padding:6px 11px;transition:.12s;}
.nn-profile .rev2-check:hover{border-color:var(--brand);}
.nn-profile .rev2-check input{accent-color:var(--primary);width:14px;height:14px;flex:none;margin:0;}
.nn-profile .rev2-check input:checked + span{color:var(--primary);font-weight:700;}
.nn-profile .rev2-pop__foot{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:12px;margin-top:2px;}
.nn-profile .rev2-pop__clear{font-family:inherit;font-size:12.5px;font-weight:600;color:var(--text-3);background:none;border:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px;}
.nn-profile .rev2-pop__clear:hover{color:var(--ink);}
.nn-profile .rev2-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:16px 2px 14px;flex-wrap:wrap;}
.nn-profile .rev2-count{font-size:13px;color:var(--text-3);font-weight:600;}
.nn-profile .rev2-reset{font-family:inherit;font-size:13px;font-weight:700;color:var(--primary);background:none;border:0;cursor:pointer;padding:0;}
.nn-profile .rev2-reset:hover{text-decoration:underline;}
.nn-profile .rev2-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px;}
.nn-profile .rev2-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-sm);transition:.18s;}
.nn-profile .rev2-card:hover{box-shadow:var(--sh-md);transform:translateY(-3px);}
.nn-profile .rev2-media{position:relative;display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:16/10;border:0;padding:0;margin:0;}
.nn-profile .rev2-media--video{cursor:pointer;background:linear-gradient(135deg,var(--primary),var(--brand));}
.nn-profile .rev2-media--cover{background:#0b2740 center/cover no-repeat;}
.nn-profile .rev2-media--cover::after{content:"";position:absolute;left:0;right:0;bottom:0;height:46%;background:linear-gradient(to top,rgba(11,20,30,.6),transparent);pointer-events:none;}
.nn-profile .rev2-media--cover .rev2-play{position:relative;z-index:1;}
.nn-profile .rev2-media--cover .rev2-media__tag{z-index:1;}
.nn-profile .rev2-media--photo{background:linear-gradient(160deg,#eef5fb,#dfeefb);color:var(--primary);}
.nn-profile .rev2-media--photo svg{width:38px;height:38px;opacity:.6;}
.nn-profile .rev2-play{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#fff;box-shadow:0 6px 20px rgba(0,0,0,.32);transition:.16s;}
.nn-profile .rev2-media--video:hover .rev2-play{transform:scale(1.08);box-shadow:0 8px 26px rgba(0,0,0,.42);}
.nn-profile .rev2-play svg{width:24px;height:24px;transform:translateX(1px);fill:var(--primary);}
.nn-profile .rev2-media__tag{position:absolute;left:12px;bottom:10px;font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#fff;background:rgba(17,20,24,.45);border-radius:var(--pill);padding:4px 10px;}
.nn-profile .rev2-foot{display:flex;justify-content:center;margin-top:18px;}
.nn-profile .rev2-more{min-width:220px;height:44px;padding:0 22px;border-radius:var(--pill);background:#fff;border:1px solid var(--primary);color:var(--primary);font-weight:700;font-size:14px;cursor:pointer;transition:.15s;}
.nn-profile .rev2-more:hover{background:var(--blue-25);}
.nn-profile .rev2-media--photo .rev2-media__tag{color:var(--primary);background:rgba(255,255,255,.82);}
.nn-profile .rev2-audio{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--blue-25);border-bottom:1px solid var(--line);font-size:13px;font-weight:700;color:var(--primary);}
.nn-profile .rev2-audio__ic{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--blue-50);flex:none;}
.nn-profile .rev2-audio__ic svg{width:16px;height:16px;}
.nn-profile .rev2-card__body{display:flex;flex-direction:column;gap:9px;padding:16px 18px;flex:1;}
.nn-profile .rev2-card__stars{font-size:15px;letter-spacing:2px;line-height:1;}
.nn-profile .rev2-card__stars span{color:#E2E8F0;}
.nn-profile .rev2-card__stars span.on{color:#F2A100;}
.nn-profile .rev2-card__title{font-family:'Merriweather',serif;font-size:15.5px;font-weight:700;line-height:1.4;color:var(--ink);margin:0;}
.nn-profile .rev2-card__who{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-size:13px;}
.nn-profile .rev2-card__name{font-weight:700;color:var(--ink);}
.nn-profile .rev2-card__loc{color:var(--text-3);}
.nn-profile .rev2-card__docs{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px;}
.nn-profile .rev2-docchip{font-size:12px;font-weight:700;color:var(--primary);background:var(--blue-50);border-radius:var(--pill);padding:4px 10px;line-height:1.2;}
.nn-profile .rev2-docmore{font-family:inherit;font-size:12px;font-weight:700;color:var(--primary);background:#fff;border:1px solid var(--line);border-radius:var(--pill);padding:4px 9px;cursor:pointer;line-height:1.2;}
.nn-profile .rev2-docmore:hover{background:var(--blue-50);border-color:var(--primary);}
.nn-profile .rev2-card__foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:6px;font-size:12px;}
.nn-profile .rev2-card__src{color:var(--text-2);font-weight:700;display:inline-flex;align-items:center;}
.nn-profile .rev2-src-logo{height:22px;width:auto;max-width:130px;object-fit:contain;display:block;}
.nn-profile .rev2-card__src--link{transition:opacity .15s;}
.nn-profile .rev2-card__src--link:hover{opacity:.65;}
.nn-profile .rev2-card__date{color:var(--text-3);font-variant-numeric:tabular-nums;margin-left:auto;}
.nn-profile .rev2-empty{padding:30px 20px;text-align:center;color:var(--text-2);font-size:14px;border:1px dashed var(--line);border-radius:var(--r-lg);background:var(--gray-50);}
@media (max-width:560px){
  .nn-profile .rev2-grid{grid-template-columns:1fr;}
  .nn-profile .rev2-bar__row--top{flex-direction:column;align-items:stretch;}
  .nn-profile .rev2-sort{justify-content:space-between;}
  .nn-profile .rev2-sort__sel{flex:1;}
  .nn-profile .rev2-sep{display:none;}
  .nn-profile .rev2-more-wrap{margin-left:0;width:100%;}
  .nn-profile .rev2-filtbtn{width:100%;justify-content:center;}
  .nn-profile .rev2-pop{right:auto;left:0;width:100%;}
}

/* ===== Отзывы v2 — мобильная панель: bottom-sheet + scroll-чипы ===== */
.nn-profile .rev2-sheet-head{display:none;}
.nn-profile .rev2-applyD{display:none;}.nn-profile .rev2-applyM{display:inline;}
.nn-profile .rev2-sheet-backdrop{position:fixed;inset:0;background:rgba(17,20,24,.5);z-index:1000;opacity:0;transition:opacity .25s ease;}
.nn-profile .rev2-sheet-backdrop.open{opacity:1;}
@media (max-width:640px){
  .nn-profile .rev2-bar{padding:12px;}
  .nn-profile .rev2-group[data-facet="format"]{flex:1 1 100%;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;overflow:visible;}
  .nn-profile .rev2-group[data-facet="format"] .rev2-tog{min-height:44px;padding:10px 4px;font-size:13px;text-align:center;justify-content:center;}
  .nn-profile .rev2-more-wrap{flex:1 1 100%;margin-left:0;}
  .nn-profile .rev2-filtbtn{width:100%;justify-content:center;min-height:46px;font-size:14px;}

  .nn-profile .rev2-pop, .nn-profile .rev2-pop[hidden]{display:flex;flex-direction:column;position:fixed;left:0;right:0;bottom:0;top:auto;width:100%;max-width:none;height:auto;max-height:88vh;border-radius:20px 20px 0 0;padding:0;box-shadow:0 -12px 40px rgba(0,0,0,.28);z-index:1001;transform:translateY(100%);visibility:hidden;transition:transform .3s cubic-bezier(.2,.8,.2,1),visibility .3s;}
  .nn-profile .rev2-pop.rev2-pop--open{transform:none;visibility:visible;}
  .nn-profile .rev2-sheet-head{display:flex;align-items:center;justify-content:center;position:relative;padding:16px 16px 10px;flex:none;}
  .nn-profile .rev2-sheet-grab{position:absolute;top:7px;left:50%;transform:translateX(-50%);width:40px;height:4px;border-radius:var(--pill);background:#d4dbe4;}
  .nn-profile .rev2-sheet-title{font-family:'Merriweather',serif;font-size:16px;margin:4px 0 0;color:var(--ink);}
  .nn-profile .rev2-sheet-x{position:absolute;right:12px;top:12px;width:34px;height:34px;border:0;border-radius:50%;background:var(--gray-50);color:var(--text-2);display:flex;align-items:center;justify-content:center;cursor:pointer;}
  .nn-profile .rev2-sheet-x svg{width:17px;height:17px;}
  .nn-profile .rev2-pop__body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:6px 16px 12px;}
  .nn-profile .rev2-pop__sec{margin-bottom:18px;}
  .nn-profile .rev2-pop__sec h4{font-size:14px;margin:0 0 6px;}
  .nn-profile .rev2-checks{flex-direction:column;flex-wrap:nowrap;gap:0;}
  .nn-profile .rev2-checks--scroll{max-height:36vh;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior:contain;}
  .nn-profile .rev2-acc__head{padding:14px 2px;}
  .nn-profile .rev2-acc__body{padding-bottom:10px;}
  .nn-profile .rev2-check{width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:13px 2px;min-height:48px;font-size:14px;}
  .nn-profile .rev2-check:last-child{border-bottom:0;}
  .nn-profile .rev2-check input{width:20px;height:20px;}
  .nn-profile .rev2-pop__foot{position:sticky;bottom:0;flex:none;background:#fff;border-top:1px solid var(--line);padding:12px 16px calc(12px + env(safe-area-inset-bottom));margin-top:0;gap:12px;box-shadow:0 -4px 16px rgba(17,20,24,.06);}
  .nn-profile .rev2-pop__clear{flex:none;font-size:14px;}
  .nn-profile .rev2-pop__apply{flex:1;min-height:48px;font-size:15px;}
  .nn-profile .rev2-applyD{display:none;}
  .nn-profile .rev2-applyM{display:inline;}
  .nn-profile .rev2-grid{gap:14px;}
}

/* Расписание — недельная лента-карусель (7 дней, тянется как слайдер) */
.nn-profile .sched__head{align-items:center;}
.nn-profile .sched__nav{display:flex;gap:8px;flex:none;}
.nn-profile .sched__arrow{width:36px;height:36px;border-radius:50%;border:0;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none;transition:background .15s,transform .15s,opacity .15s;box-shadow:0 3px 10px rgba(11,95,165,.28);}
.nn-profile .sched__arrow:hover{background:var(--brand);}
.nn-profile .sched__arrow:active{transform:scale(.94);}
.nn-profile .sched__arrow:disabled{opacity:.35;background:#fff;border:1.5px solid var(--line);color:var(--text-3);box-shadow:none;cursor:default;}
.nn-profile .sched__arrow svg{width:17px;height:17px;}
.nn-profile .sched__range{font-size:13px;font-weight:700;color:var(--primary);font-variant-numeric:tabular-nums;letter-spacing:.01em;}
.nn-profile .sched__wk-vp{overflow:hidden;touch-action:pan-y;margin:14px 0 8px;cursor:grab;}
.nn-profile .sched__wk-vp.is-dragging{cursor:grabbing;user-select:none;-webkit-user-select:none;}
.nn-profile .sched__wk-track{display:flex;will-change:transform;}
.nn-profile .sched__wk{flex:0 0 100%;display:grid;grid-template-columns:repeat(7,1fr);gap:10px;}
.nn-profile .sched__day{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:1px;padding:9px 4px;border:1.5px solid var(--line);border-radius:13px;background:#fff;cursor:pointer;font-family:inherit;color:var(--text-2);transition:border-color .15s,background .15s,color .15s,opacity .15s;-webkit-appearance:none;appearance:none;}
.nn-profile .sched__day:hover{border-color:var(--brand);}
.nn-profile .sched__day.is-off{opacity:.4;}
.nn-profile .sched__day.is-on{background:var(--primary);border-color:var(--primary);color:#fff;opacity:1;}
.nn-profile .sched__dow{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.02em;}
.nn-profile .sched__dnum{font-size:18px;font-weight:800;line-height:1.05;}
.nn-profile .sched__dmon{font-size:9px;opacity:.75;text-transform:lowercase;}
@media (max-width:900px){
  .nn-profile .sched__day{padding:8px 2px;min-height:50px;border-radius:12px;}
  .nn-profile .sched__dnum{font-size:17px;}
  .nn-profile .sched__arrow{width:38px;height:38px;}
}

/* Якорь-диапазон + всплывающий календарь + моб. сетка дней */
.nn-profile .sched{position:relative;}
.nn-profile .sched__head{position:relative;}
.nn-profile .sched__range{display:inline-flex;align-items:center;gap:7px;align-self:flex-start;margin-top:6px;background:var(--blue-25);border:1px solid #cfe4f6;border-radius:var(--pill);padding:6px 13px 6px 11px;cursor:pointer;font-family:inherit;font-size:13px;font-weight:700;color:var(--primary);font-variant-numeric:tabular-nums;letter-spacing:.01em;transition:background .15s,border-color .15s,box-shadow .15s;}
.nn-profile .sched__range:hover{background:var(--blue-50);border-color:var(--brand);box-shadow:0 2px 8px rgba(11,95,165,.12);}
.nn-profile .sched__range .scal-ic{width:15px;height:15px;flex:none;color:var(--brand);}
.nn-profile .sched__arrow{width:40px;height:40px;}
.nn-profile .sched__arrow svg{width:19px;height:19px;}
.nn-profile .sched__wk-vp{margin:16px 0 18px;}
.nn-profile .sched__wk .day{margin:0;}
.nn-profile .sched__wk .day--off{cursor:pointer;}
.nn-profile .scal{position:absolute;top:calc(100% + 8px);left:0;z-index:40;width:min(300px,100%);background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 14px 36px rgba(17,20,24,.17);padding:14px 14px 12px;}
.nn-profile .scal[hidden]{display:none;}
.nn-profile .scal__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px;}
.nn-profile .scal__title{font-size:14px;font-weight:800;color:var(--ink);}
.nn-profile .scal__nav{width:30px;height:30px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--primary);cursor:pointer;font-size:17px;line-height:1;display:flex;align-items:center;justify-content:center;transition:.15s;flex:none;}
.nn-profile .scal__nav:hover{border-color:var(--brand);background:var(--blue-25);}
.nn-profile .scal__wd{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin-bottom:5px;}
.nn-profile .scal__wd span{font-size:10px;font-weight:700;color:var(--text-3);text-align:center;}
.nn-profile .scal__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;}
.nn-profile .scal__cell{height:34px;border:0;background:transparent;border-radius:9px;font-family:inherit;font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.12s;padding:0;}
.nn-profile .scal__cell--empty{visibility:hidden;cursor:default;}
.nn-profile .scal__cell--out{color:var(--text-3);opacity:.3;cursor:default;}
.nn-profile .scal__cell--dim{color:var(--text-3);opacity:.5;}
.nn-profile .scal__cell--dim:hover{background:var(--gray-50);}
.nn-profile .scal__cell--open{background:var(--blue-50);color:var(--primary);font-weight:800;}
.nn-profile .scal__cell--open:hover{background:var(--brand);color:#fff;}
@media (max-width:640px){
  .nn-profile .sched__wk{grid-template-columns:repeat(4,1fr);}
}

/* Полные месяцы в чипах (без переноса) + крупнее подпись под расписанием */
.nn-profile .sched__wk .day .dmon{font-size:10.5px;white-space:nowrap;}
.nn-profile .sched__note{font-size:14px;line-height:1.55;margin:22px 0 20px;}

/* фикс съезжающих недель: страница строго по ширине вьюпорта */
.nn-profile .sched__wk{min-width:0;}
/* кнопка-диапазон — в одну строку */
.nn-profile .sched__range{white-space:nowrap;}
/* подпись: иконка сверху, «Все врачи…» с новой строки */
.nn-profile .sched__note{align-items:flex-start;}
.nn-profile .sched__note > svg{margin-top:2px;}
/* пилюля «выберите другого врача» — как кнопка-календарь, с иконкой врача */
.nn-profile .note-pill{display:inline-flex;align-items:center;gap:5px;vertical-align:middle;white-space:nowrap;background:var(--blue-25);border:1px solid #cfe4f6;border-radius:var(--pill);padding:3px 10px 3px 8px;margin:1px 0;color:var(--primary);font-weight:700;text-decoration:none;transition:background .15s,border-color .15s;}
.nn-profile .note-pill:hover{background:var(--blue-50);border-color:var(--brand);}
.nn-profile .note-pill .np-ic{width:14px;height:14px;flex:none;}

/* подпись: строка-действие + мелкая приписка */
.nn-profile [data-sched-note-text]{display:flex;flex-direction:column;gap:5px;min-width:0;}
.nn-profile .note__arr{vertical-align:-2px;color:var(--brand);margin:0 1px;}
.nn-profile .note__fine{font-size:12.5px;color:var(--text-3);line-height:1.45;}

/* Карточка отзыва: текст + «Показать подробнее» */
.nn-profile .rev2-card__text{font-size:13.5px;line-height:1.55;color:var(--text-2);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.nn-profile .rev2-card__more{align-self:flex-start;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #cfe4f6;border-radius:var(--pill);padding:7px 16px;color:var(--primary);font-weight:600;font-size:12.5px;cursor:pointer;transition:background .15s,border-color .15s;}
.nn-profile .rev2-card__more:hover{background:var(--blue-25);border-color:var(--brand);}

/* Модалка отзыва */
.nn-profile .revm{position:fixed;inset:0;z-index:140;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(11,42,71,.55);overflow-y:auto;}
.nn-profile .revm[hidden]{display:none;}
.nn-profile .revm__dialog{position:relative;background:#fff;border-radius:var(--r-lg);max-width:560px;width:100%;box-shadow:0 24px 60px rgba(0,0,0,.28);max-height:calc(100vh - 40px);overflow:hidden;display:flex;flex-direction:column;}
.nn-profile .revm__x{position:absolute;top:14px;right:14px;width:34px;height:34px;border:none;background:var(--gray-50);border-radius:50%;color:var(--text-2);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.15s;}
.nn-profile .revm__x:hover{background:var(--blue-50);color:var(--primary);}
.nn-profile .revm__x svg{width:18px;height:18px;}
.nn-profile .revm__top{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding-right:38px;margin-bottom:12px;}
.nn-profile .revm__stars{font-size:15px;letter-spacing:2px;line-height:1;white-space:nowrap;}
.nn-profile .revm__stars span{color:#E2E8F0;}
.nn-profile .revm__stars span.on{color:#F2A100;}
.nn-profile .revm__who{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;}
.nn-profile .revm__name{font-weight:700;color:var(--ink);}
.nn-profile .revm__loc{font-size:13px;color:var(--text-3);}
.nn-profile .revm__date{margin-left:auto;font-size:12.5px;color:var(--text-3);white-space:nowrap;}
.nn-profile .revm__title{font-family:'Merriweather',serif;font-size:17px;font-weight:700;line-height:1.4;color:var(--ink);margin:0 0 10px;}
.nn-profile .revm__text{font-size:14.5px;line-height:1.65;color:var(--text-2);margin:0 0 16px;}
.nn-profile .revm__reply{background:var(--blue-25);border:1px solid #cfe4f6;border-radius:var(--r);padding:14px 16px;margin-bottom:16px;}
.nn-profile .revm__reply-h{display:flex;align-items:center;gap:7px;font-weight:700;color:var(--primary);font-size:13.5px;margin-bottom:6px;}
.nn-profile .revm__reply-h svg{width:16px;height:16px;flex:none;}
.nn-profile .revm__reply-b{font-size:13.5px;line-height:1.6;color:var(--text-2);margin:0;}
.nn-profile .revm__foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:12.5px;color:var(--text-3);border-top:1px solid var(--line);padding-top:12px;}
.nn-profile .revm__src{display:inline-flex;align-items:center;}
.nn-profile .revm__src img{height:16px;width:auto;vertical-align:middle;}
.nn-profile .revm__branch{color:var(--text-3);}
.nn-profile .revm__scroll{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:26px 26px 22px;}
@media(max-width:560px){.nn-profile .revm__scroll{padding:22px 18px 18px;}.nn-profile .revm__date{margin-left:0;width:100%;}}

/* Аудио-плеер в карточке отзыва */
.nn-profile .rev2-aud{display:flex;flex-direction:column;gap:10px;padding:14px 15px;background:var(--blue-25);border-bottom:1px solid var(--line);}
.nn-profile .rev2-aud audio{display:none;}
.nn-profile .rev2-aud__tag{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--primary);}
.nn-profile .rev2-aud__tag svg{width:15px;height:15px;flex:none;}
.nn-profile .rev2-aud__main{display:flex;align-items:center;gap:12px;}
.nn-profile .rev2-aud__play{flex:none;width:40px;height:40px;border:none;border-radius:50%;background:var(--primary);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .1s;}
.nn-profile .rev2-aud__play:hover{background:var(--brand);}
.nn-profile .rev2-aud__play:active{transform:scale(.94);}
.nn-profile .rev2-aud__play svg{width:18px;height:18px;}
.nn-profile .rev2-aud__play .ic-pause{display:none;}
.nn-profile .rev2-aud.is-playing .ic-play{display:none;}
.nn-profile .rev2-aud.is-playing .ic-pause{display:block;}
.nn-profile .rev2-aud__center{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px;}
.nn-profile .rev2-aud__track{position:relative;height:18px;display:flex;align-items:center;cursor:pointer;touch-action:none;}
.nn-profile .rev2-aud__rail{position:absolute;left:0;right:0;height:5px;border-radius:999px;background:#cfe0f2;}
.nn-profile .rev2-aud__fill{position:absolute;left:0;height:5px;width:0;border-radius:999px;background:var(--primary);pointer-events:none;}
.nn-profile .rev2-aud__thumb{position:absolute;left:0;top:50%;width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid var(--primary);box-shadow:0 1px 4px rgba(11,42,71,.25);transform:translate(-50%,-50%);transition:width .1s,height .1s;pointer-events:none;}
.nn-profile .rev2-aud__track:hover .rev2-aud__thumb{width:17px;height:17px;}
.nn-profile .rev2-aud__track:focus-visible{outline:none;}
.nn-profile .rev2-aud__track:focus-visible .rev2-aud__thumb{width:17px;height:17px;box-shadow:0 0 0 4px rgba(9,150,222,.25);}
.nn-profile .rev2-aud__times{display:flex;justify-content:space-between;font-size:11px;color:var(--text-3);font-variant-numeric:tabular-nums;}
.nn-profile .rev2-aud__rate{flex:none;border:1px solid #cfe4f6;background:#fff;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700;color:var(--primary);cursor:pointer;transition:background .15s,border-color .15s;min-width:44px;}
.nn-profile .rev2-aud__rate:hover{background:var(--blue-50);border-color:var(--brand);}

/* — «О враче»: стопка лент .cvl-acc — */
.nn-profile .bio+.cvl-acc{margin-top:26px;}
.nn-profile .cvl-acc+.cvl-acc{margin-top:10px;}
.nn-profile .cvl+.contact-acc__text{margin:14px 0 0;}

/* ===================== Доводка адаптива: тач-таргеты, шеврон, iOS, подвал под фикс-баром ===================== */
.nn-profile .contact-acc__head[aria-expanded="true"] .caret{transform:rotate(180deg);}
@media (max-width:900px){
  .nn-profile .cx-modal__x{width:44px;height:44px;}
  .nn-profile .revm__x{width:44px;height:44px;top:9px;right:9px;}
  .nn-profile .specmodal__close{width:44px;height:44px;top:8px;right:8px;}
  .nn-profile .sched__arrow{width:44px;height:44px;}
  .nn-profile .chip{position:relative;}
  .nn-profile .chip::before{content:"";position:absolute;inset:-3px;border-radius:inherit;}
  .nn-profile .lead-field input, .nn-profile .lead-field textarea, .nn-profile .rev2-search input{font-size:16px;}
  body.bar-on .env-footer{padding-bottom:calc(84px + env(safe-area-inset-bottom,0px));}
}


/* ==== Модалка мессенджеров ==== */
.nn-profile .msgmodal{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:16px;}
.nn-profile .msgmodal[hidden]{display:none;}
.nn-profile .msgmodal__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.55);}
.nn-profile .msgmodal__dialog{position:relative;width:100%;max-width:600px;background:#fff;border-radius:20px;padding:28px;box-shadow:0 24px 60px rgba(0,0,0,.28);}
.nn-profile .msgmodal__close{position:absolute;top:16px;right:16px;width:36px;height:36px;border:none;border-radius:50%;background:#f1f5f9;color:#334155;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.nn-profile .msgmodal__close svg{width:18px;height:18px;}
.nn-profile .msgmodal__title{margin:0 0 20px;font-size:28px;font-weight:800;color:#0f172a;}
.nn-profile .msgmodal__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.nn-profile .msgmodal__item{display:flex;align-items:center;gap:12px;padding:16px;border-radius:16px;background:#f8fafc;text-decoration:none;transition:background .15s;}
.nn-profile .msgmodal__item:hover{background:#eef2f7;}
.nn-profile .msgmodal__item--wide{grid-column:1/-1;}
.nn-profile .msgmodal__ic{flex:none;width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;}
.nn-profile .msgmodal__ic svg{width:22px;height:22px;}
.nn-profile .msgmodal__ic--tg{background:#29a9eb;}
.nn-profile .msgmodal__ic--wa{background:#25d366;}
.nn-profile .msgmodal__ic--max{background:#6a5cff;}
.nn-profile .msgmodal__ic--mail{background:#f4b400;}
.nn-profile .msgmodal__txt{display:flex;flex-direction:column;line-height:1.25;min-width:0;}
.nn-profile .msgmodal__txt b{font-size:16px;font-weight:700;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.nn-profile .msgmodal__txt i{font-style:normal;font-size:13px;color:#64748b;}
@media (max-width:640px){.nn-profile .msgmodal__grid{grid-template-columns:1fr;}.nn-profile .msgmodal__title{font-size:22px;}.nn-profile .msgmodal__dialog{padding:20px;}}

.nn-profile .msgmodal__slot{border:2px dashed #cbd5e1;border-radius:14px;padding:20px;background:repeating-linear-gradient(45deg,#f8fafc,#f8fafc 10px,#f1f5f9 10px,#f1f5f9 20px);color:#475569;font-size:14px;line-height:1.55;}
.nn-profile .msgmodal__slot b{color:#0f172a;}
.nn-profile .msgmodal__slot ul{margin:12px 0 0;padding-left:18px;}
.nn-profile .msgmodal__slot li{margin:5px 0;word-break:break-all;}

.nn-profile .contact-photos{margin-top:18px;}
.nn-profile .contact-photos__title{margin:0 0 10px;font-size:18px;font-weight:700;color:#0f172a;}
.nn-profile .map-stub--photos{min-height:130px;}

/* Длинный заголовок слайдера: аккуратный перенос на узких экранах */
.nn-profile #b-others .pblock__head h2{text-wrap:balance;}

/* Фото сотрудника в модалке специализаций */
.nn-profile .specmodal__photo{width:56px;height:56px;border-radius:50%;object-fit:cover;object-position:top center;display:block;margin:0 0 10px;border:1px solid var(--line);background:#fff;}

/* ===================== Форма записи из витрины Clientix ===================== */
.nn-profile .cxb-when{margin:0 0 4px;font-size:14.5px;font-weight:700;color:var(--primary);background:var(--blue-25);border:1px solid #cfe4f6;border-radius:var(--r-sm);padding:10px 14px;}
.nn-profile .cxb-hp{position:absolute;left:-9999px;top:-9999px;height:1px;width:1px;opacity:0;}
.nn-profile .cxb-error{margin:0;font-size:13px;font-weight:700;color:#b3261e;}
.nn-profile .cxb-note{margin:0;font-size:11.5px;line-height:1.5;color:var(--text-3);font-weight:400;}
/* Согласие на обработку данных — отдельная галка (ст. 9 закона №152-ФЗ).
   Квадрат не сжимается: длинный текст рядом иначе продавливает его в полоску. */
.nn-profile .cxb-consent{display:flex;align-items:flex-start;gap:9px;margin:0;font-size:12.5px;line-height:1.45;color:var(--text-2);font-weight:400;cursor:pointer;}
.nn-profile .cxb-consent input{flex:none;width:17px;height:17px;margin:1px 0 0;accent-color:var(--primary);cursor:pointer;}
.nn-profile .cxb-consent a{color:var(--primary);text-decoration:underline;}
.nn-profile .cxb-consent.is-required{color:#B42318;}
.nn-profile .cxb-consent.is-required input{outline:2px solid #B42318;outline-offset:2px;}
.nn-profile .cxb-done{padding:18px 20px 22px;text-align:center;}
.nn-profile .cxb-done__title{margin:0 0 8px;font-size:19px;font-weight:800;color:var(--ink);}
.nn-profile .cxb-done__text{margin:0;font-size:14px;line-height:1.6;color:var(--text-2);}

/* Чипы выбора услуги над сеткой расписания (несколько услуг у карточки) */
.nn-profile .cxsvc{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 2px;}
.nn-profile .cxsvc__btn{font-family:inherit;font-size:13px;font-weight:700;line-height:1.3;padding:8px 14px;border-radius:var(--pill);border:1.5px solid var(--line);background:#fff;color:var(--text-2);cursor:pointer;transition:.15s;text-align:left;}
.nn-profile .cxsvc__btn:hover{border-color:var(--brand);background:var(--blue-25);color:var(--primary);}
.nn-profile .cxsvc__btn--on{background:var(--blue-50);border-color:var(--brand);color:var(--primary);}
.nn-profile .cxsvc.is-loading{opacity:.55;pointer-events:none;}

/* Блок «Видео»: сетка дополнительных роликов сотрудника */
.nn-profile .nnvids{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;}
/* auto-fit вместо auto-fill: два ролика занимают всю ширину пополам,
   один — всю ширину; пустых колонок справа не остаётся. */
.nn-profile .nnvids__card{width:100%;aspect-ratio:16/9;min-height:0;}
.nn-profile .nnvids__title{margin:8px 0 0;font-size:13.5px;font-weight:700;color:var(--text-2);line-height:1.45;}

/* Яндекс-карта внутри «Как добраться?» — вместо отдельной кнопки «Смотреть на карте» */
.nn-profile .nn-map{margin:0 0 16px;border-radius:var(--r);overflow:hidden;border:1px solid var(--line);}
.nn-profile .nn-map iframe{display:block;width:100%;height:280px;border:0;}

/* ===================== Пакет полировки 0.21.0 ===================== */

/* Кнопка Play на видео-карточках («Как мы работаем», блок «Видео») —
   кружок из макета с увеличением при наведении. */
.nn-profile .vblock__play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;background:rgba(9,150,222,.92);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 1px rgba(255,255,255,.5) inset,0 0 0 6px rgba(255,255,255,.28),0 12px 30px rgba(11,95,165,.4);transition:transform .18s ease,background .18s ease;pointer-events:none;}
.nn-profile .vblock__play svg{width:26px;height:26px;margin-left:3px;}
.nn-profile .vblock__card:hover .vblock__play{transform:translate(-50%,-50%) scale(1.08);background:var(--brand);}

/* Принципы работы: стрелки ленты — только на мобильной ширине, как в макете. */
@media (min-width:901px){
  .nn-profile .principles-wrap > .rail__arrow{display:none;}
}

/* Реальный чат Jivo приподнимается над выехавшим фикс-баром записи. */
@media (max-width:900px){
  body.bar-on jdiv jdiv[class*="wrap"], body.bar-on #jvlabelWrap, body.bar-on jdiv[id*="jivo"]{bottom:84px !important;}
}

/* Галерея фото в контактах на странице команды: три кадра в ряд.
   Четыре — только в карточках сотрудников, там блок шире. */
.nn-profile .ccard .gallery__item{flex:0 0 calc(33.333% - 8px);}
@media (max-width:900px){
  .nn-profile .ccard .gallery__item{flex:0 0 60%;}
}

/* «Что входит в приём»: обычный вес текста, как в макете. */
.nn-profile .priem-gives li{font-weight:400;}

/* Адрес-ссылка и подпись под картой в «Как добраться?» — как на главной. */
.nn-profile .nn-addr{margin:0 0 12px;font-size:15px;line-height:1.55;}
.nn-profile .nn-addr a{color:var(--primary);text-decoration:none;border-bottom:1px solid rgba(11,95,165,.3);}
.nn-profile .nn-addr a:hover{border-bottom-color:var(--brand);}
.nn-profile .nn-map__link{display:inline-flex;margin-top:10px;font-size:13.5px;font-weight:700;color:var(--primary);text-decoration:none;}
.nn-profile .nn-map__link:hover{color:var(--brand);}
