/* Оболочка нового дизайна doctorvika.ru для всех страниц сайта.
   Меняет только вид: шапку, подвал, шрифт, палитру. Содержимое страниц,
   заголовки, тексты и разметка для поиска не трогаются.
   Значения взяты из прототипа (homepage.css, home-redesign.css, 20.10.2026).
   Свои классы с префиксом dv-, чтобы не столкнуться со стилями старых страниц. */

@font-face{font-family:Inter;src:url('/dv2/inter-variable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}

/* палитра нового дизайна: старые переменные страниц переназначаем на новые значения */
:root{
  --dv-page:#fffefd; --dv-white:#fff; --dv-ink:#282326; --dv-ink-soft:#51464a; --dv-muted:#786a6d;
  --dv-terracotta:#b34332; --dv-terracotta-hover:#963627; --dv-wine:#4d2f3d; --dv-yellow:#f4cf65;
  --dv-peach:#fbe8de; --dv-beige:#ece3d7; --dv-line:#e5dfdb; --dv-soft:#f7f2ed;
  --bg:var(--dv-page); --bg-deep:var(--dv-soft); --cream:var(--dv-white);
  --ink:var(--dv-ink); --ink2:var(--dv-ink-soft); --muted:var(--dv-muted); --line:var(--dv-line);
  --accent:var(--dv-terracotta); --accent-soft:#c96a55;
  --serif:Inter,Arial,sans-serif; --sans:Inter,Arial,sans-serif; --mono:Inter,Arial,sans-serif;
}
html body{background:var(--dv-page);color:var(--dv-ink);font-family:Inter,Arial,sans-serif;font-synthesis:none}
::selection{background:var(--dv-yellow);color:var(--dv-ink)}
/* заголовки старых страниц были засечками: в новом дизайне всё Inter, полужирный, плотнее */
html body :is(h1,h2,h3,h4){font-family:Inter,Arial,sans-serif;letter-spacing:-.025em}
html body h1{font-weight:600}
html body :is(h2,h3){font-weight:600}
html body :is(.italic-accent,.italic-soft,h1 i,h2 i){font-style:normal}

/* ── шапка ── */
.dv-shell{max-width:1320px;margin:0 auto;padding:0 48px}
.dv-header-wrap{position:relative;z-index:30;background:var(--dv-page)}
.dv-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:22px 0}
.dv-brand{width:174px;flex:none;display:block}
.dv-brand img{display:block;width:100%;height:auto}
.dv-nav{display:flex;align-items:center;gap:25px;font:400 14px/1.4 Inter,Arial,sans-serif;color:var(--dv-ink)}
.dv-nav>a{padding:8px 0;color:var(--dv-ink);text-decoration:none}
.dv-nav>a:hover,.dv-nav>a[aria-current="page"]{color:var(--dv-terracotta)}
.dv-nav>a.dv-btn{padding:9px 17px}
.dv-nav>a.dv-btn:hover{color:var(--dv-ink)}
.dv-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:43px;padding:9px 17px;border-radius:10px;font:550 14px/1.4 Inter,Arial,sans-serif;text-decoration:none;transition:background .15s,border-color .15s;white-space:nowrap}
.dv-btn-outline{background:#fff;border:1px solid #adb8aa;color:var(--dv-ink)}
.dv-btn-outline:hover{background:#f0f3ec;border-color:#74846f}
.dv-btn-primary{background:var(--dv-terracotta);border:1px solid var(--dv-terracotta);color:#fff}
.dv-btn-primary:hover{background:var(--dv-terracotta-hover)}
.dv-ico{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
.dv-menu-btn{display:none;width:44px;height:44px;padding:10px;border:1px solid var(--dv-line);border-radius:8px;background:#fff;color:var(--dv-ink);cursor:pointer}
.dv-menu-btn .dv-ico{width:22px;height:22px}

/* ── подвал ── */
.dv-footer{margin-top:50px;padding:0 0 30px;font-family:Inter,Arial,sans-serif;color:var(--dv-ink)}
.dv-footer-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;padding-top:36px;border-top:1px solid var(--dv-line)}
.dv-footer-cols>*{min-width:0}
.dv-footer-logo{display:inline-flex;max-width:100%;margin-bottom:12px}
.dv-footer-logo img{display:block;width:158px;max-width:100%;height:auto}
.dv-footer-brand p{max-width:290px;margin:0;color:var(--dv-ink-soft);font-size:14px;line-height:1.55}
.dv-footer-cols .dv-footer-h{margin:0 0 16px;color:var(--dv-wine);font-size:14px;font-weight:550;line-height:1.4;letter-spacing:.04em;text-transform:uppercase}
.dv-footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:9px;font-size:14px;line-height:1.5}
.dv-footer-links a{max-width:100%;color:var(--dv-ink);text-decoration:none;overflow-wrap:anywhere}
.dv-footer-links a:hover{color:var(--dv-terracotta)}
.dv-footer-links>span{color:var(--dv-ink-soft)}
.dv-footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px 30px;margin-top:30px;padding-top:22px;border-top:1px solid var(--dv-line);color:var(--dv-ink-soft);font-size:13px}
.dv-footer-bottom a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.dv-footer-emergency{margin:18px 0 0;color:var(--dv-ink-soft);font-size:14px}
.dv-footer-license{max-width:920px;margin:16px 0 0;color:#697064;font-size:13px;line-height:1.6;overflow-wrap:anywhere}

@media(max-width:1150px){.dv-shell{padding:0 34px}.dv-nav{gap:19px;font-size:13px}.dv-brand{width:160px}}
@media(max-width:900px){.dv-shell{padding:0 27px}.dv-nav{gap:13px}.dv-brand{width:144px}.dv-footer-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 40px}}
/* меню-бургер с 980 px: при 960 пункты меню переносились в две строки,
   при 820 «Личный кабинет» вылезал за край (замер 21.10) */
@media(max-width:980px){
  .dv-header{padding:18px 0}
  .dv-brand{width:160px}
  .dv-menu-btn{display:grid;place-items:center;margin-right:-4px}
  .dv-nav{display:none;position:absolute;top:74px;left:0;right:0;z-index:5;padding:14px;border:1px solid var(--dv-line);border-radius:12px;background:#fff;box-shadow:0 18px 40px -24px rgba(40,35,38,.35);font-size:16px}
  .dv-nav.is-open{display:grid;gap:2px}
  .dv-nav>a{padding:11px 10px}
  .dv-nav>a.dv-btn{justify-content:space-between;margin-top:6px;padding:11px 16px}
}
@media(max-width:760px){
  .dv-shell{padding:0 20px}
  .dv-footer{margin-top:40px}
  .dv-footer-cols{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:28px}
  .dv-footer-bottom{flex-direction:column;align-items:flex-start;gap:10px}
}
@media(max-width:370px){.dv-shell{padding:0 16px}}
@media(prefers-reduced-motion:reduce){.dv-btn{transition:none}}

/* кнопки в шапке — той же формы, что в кабинете (21.10, Никита) */
.dv-header .dv-btn{border-radius:10px}
