/* Больничный справочник — мир «Стенд у поста».
   Ширина: без узкого центрального контейнера. Секции full-bleed с боковыми
   clamp-полями; читаемый текст ограничен по мере строки (~68ch) внутри «листа». */

:root{
  --wall:#D9E2DA; --wall-deep:#C7D3C9;
  --paper:#FCFCFA; --paper-edge:#EEEBE2;
  --ink:#1F2C46; --ink-soft:#44506B; --ink-faint:#6B7690;
  --marker:#FFD65C; --marker-soft:#FFE79A;
  --alarm:#B7402F; --alarm-deep:#9C3423;
  --pin-blue:#5E7391; --pin-red:#C24A38;
  --frame:#AEB9AF;
  --hand:#2E5941;
  --pad: clamp(18px, 5vw, 84px);   /* боковое поле секций/листов */
  --measure: 68ch;                 /* мера читаемой строки */
  --radius: 3px;
}
*{margin:0;padding:0;box-sizing:border-box}
::selection{background:var(--marker);color:var(--ink)}
html{scroll-behavior:smooth}
body{
  font-family:'Onest',system-ui,-apple-system,sans-serif;color:var(--ink);
  background:
    radial-gradient(1400px 700px at 72% -12%, #E6EEE6 0%, transparent 60%),
    linear-gradient(180deg,var(--wall) 0%,var(--wall-deep) 100%);
  background-attachment:fixed;
  font-size:17.5px;line-height:1.62;-webkit-font-smoothing:antialiased;
}
a{color:var(--ink)}
a:focus-visible,button:focus-visible{outline:3px solid var(--ink);outline-offset:3px;border-radius:2px}
h1,h2,h3{font-family:'Bitter',Georgia,serif;line-height:1.18;letter-spacing:-.01em}

/* ── Шапка-табличка у двери ── */
.site-head{
  display:flex;align-items:center;justify-content:space-between;gap:16px 22px;flex-wrap:wrap;
  padding:22px var(--pad) 0;
}
.sign-plate{
  background:var(--paper);border:1px solid #D8D4C8;border-radius:var(--radius);
  padding:9px 22px 11px;box-shadow:0 2px 5px rgba(31,44,70,.14);text-decoration:none;color:var(--ink);
  position:relative;
}
.sign-plate .name{display:block;font-family:'Bitter',serif;font-weight:700;font-size:21px}
.sign-plate .role{font-size:13px;color:var(--ink-soft);margin-top:1px}
.site-nav{display:flex;gap:6px 20px;flex-wrap:wrap;font-size:15.5px}
.site-nav a{text-decoration:none;color:var(--ink-soft);border-bottom:2px solid transparent;padding-bottom:2px;white-space:nowrap}
.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--ink);border-bottom-color:var(--marker)}

/* ── Красный листок 103/112 ── */
.alarm-note{
  position:relative;background:var(--alarm);color:#fff;border-radius:var(--radius);
  padding:15px 18px 14px;box-shadow:0 6px 14px rgba(156,52,35,.32);font-size:15.5px;line-height:1.45;
}
.alarm-note::before{content:"";position:absolute;top:-9px;left:26px;width:16px;height:16px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%, #E88A75, var(--pin-red) 55%, #7E2A1C);box-shadow:0 2px 3px rgba(0,0,0,.3)}
.alarm-note strong{display:block;font-size:16.5px;margin-bottom:2px}
.alarm-note .tel{font-family:'Bitter',serif;font-weight:700;font-size:23px;letter-spacing:.02em}
.alarm-note.inline{transform:rotate(.8deg);max-width:44ch}

/* ── Главная: доска-стенд ── */
.board{padding:26px var(--pad) 0}
.board-frame{
  border:6px solid var(--frame);border-radius:6px;position:relative;
  background:linear-gradient(178deg,#E3EAE2,#DBE3DB 70%,#D3DCD4);
  box-shadow:inset 0 2px 12px rgba(31,44,70,.10), 0 12px 34px rgba(31,44,70,.13);
  padding:clamp(24px,4vw,52px);
}
.board h1{font-weight:700;font-size:clamp(36px,5.6vw,58px);max-width:16ch}
.board .sub{margin-top:12px;max-width:56ch;color:var(--ink-soft);font-size:18.5px}
.board .alarm-note{position:absolute;top:clamp(16px,3vw,32px);right:clamp(16px,3vw,32px);
  width:min(250px,40vw);transform:rotate(1.6deg)}
.board .alarm-note::before{left:50%;margin-left:-8px}
.board .alarm-note .tel{display:block;margin-top:3px;font-size:25px}

.sheets{display:grid;gap:clamp(16px,2.4vw,26px);margin-top:clamp(28px,4vw,44px);
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
@media (min-width:940px){.sheets{grid-template-columns:repeat(4,1fr)}}
.sheet{position:relative;display:block;text-decoration:none;background:var(--paper);border-radius:2px;
  padding:24px 22px 20px;min-height:172px;
  box-shadow:0 3px 8px rgba(31,44,70,.16), 0 14px 24px -14px rgba(31,44,70,.22);
  transition:transform .22s cubic-bezier(.22,.61,.36,1), box-shadow .22s ease}
.sheet:nth-child(1){transform:rotate(-.5deg)} .sheet:nth-child(2){transform:rotate(.4deg)}
.sheet:nth-child(3){transform:rotate(-.3deg)} .sheet:nth-child(4){transform:rotate(.6deg)}
.sheet:hover{transform:rotate(0) translateY(-3px);box-shadow:0 8px 18px rgba(31,44,70,.2),0 22px 34px -16px rgba(31,44,70,.28)}
.sheet::before{content:"";position:absolute;top:-8px;left:50%;margin-left:-7px;width:14px;height:14px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%, #9FB2C9, var(--pin-blue) 55%, #33415C);box-shadow:0 2px 3px rgba(0,0,0,.28)}
.sheet h2{font-family:'Bitter',serif;font-weight:700;font-size:20px;line-height:1.25}
.sheet p{margin-top:8px;font-size:14.5px;color:var(--ink-soft)}
.sheet .go{display:inline-block;margin-top:14px;font-weight:600;font-size:14.5px;border-bottom:3px solid var(--marker);padding-bottom:1px}

/* Императивная строка на главной */
.imperative{padding:clamp(36px,5vw,60px) var(--pad) 0;text-align:center}
.imperative p{font-family:'Bitter',serif;font-weight:600;font-size:clamp(20px,2.7vw,27px);
  max-width:34ch;margin:0 auto;line-height:1.35}
.imperative .hand{font-family:'Caveat',cursive;font-weight:600;font-size:clamp(19px,2.4vw,25px);
  color:var(--alarm-deep);display:block;margin-top:6px;transform:rotate(-1deg)}

/* Блоки главной: «самое читаемое», «как мы пишем» */
.home-strips{padding:clamp(40px,6vw,72px) var(--pad) 0;display:grid;gap:clamp(22px,3vw,40px);
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.home-strips .paper{margin:0}

/* ── Внутренние страницы: лист статьи + поле-сайдбар ── */
.page{padding:clamp(20px,3.4vw,40px) var(--pad) 0}
.article-grid{display:grid;gap:clamp(22px,3vw,44px)}
@media (min-width:1000px){
  .article-grid{
    grid-template-columns:minmax(0,76ch) clamp(300px,28vw,400px);
    gap:clamp(32px,5vw,80px);
    justify-content:center;
    align-items:start;
  }
  .article-grid .paper{margin:0}
  .margins{position:sticky;top:20px}
}
.article-grid .prose > *{max-width:none}
/* Поле с заметками (стикеры на пинах) */
.margins{display:flex;flex-direction:column;gap:16px}
.mcard{position:relative;background:var(--paper);border-radius:2px;padding:16px 18px 17px;
  box-shadow:0 3px 8px rgba(31,44,70,.13), 0 14px 24px -16px rgba(31,44,70,.2)}
.mcard::before{content:"";position:absolute;top:-7px;left:18px;width:13px;height:13px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%, #9FB2C9, var(--pin-blue) 55%, #33415C);box-shadow:0 2px 3px rgba(0,0,0,.28)}
.mcard-h{font-family:'Bitter',serif;font-weight:700;font-size:14px;margin-bottom:8px;color:var(--ink)}
.mcard ul{list-style:none;display:flex;flex-direction:column}
.mcard.toc a{display:block;padding:5px 0;font-size:14.5px;color:var(--ink-soft);text-decoration:none;
  border-bottom:1px dashed #E9E5DA;line-height:1.35}
.mcard.toc li:last-child a{border-bottom:0}
.mcard.toc a:hover{color:var(--ink)}
.mcard.near a{display:block;padding:7px 0;font-size:15px;color:var(--ink);text-decoration:none;
  border-bottom:1px dashed #E9E5DA;line-height:1.35}
.mcard.near li:last-child a{border-bottom:0}
.mcard.near a:hover{background:linear-gradient(90deg,var(--marker-soft),transparent 92%)}
.margins .alarm-note.inline{max-width:none;transform:rotate(.7deg)}
.margins .alarm-note.inline .tel{display:block;font-size:22px;margin-top:3px}
.margins .alarm-note.inline::before{left:20px}
.crumbs{font-size:14px;color:var(--ink-faint);margin-bottom:14px;display:flex;gap:8px;flex-wrap:wrap}
.crumbs a{color:var(--ink-soft);text-decoration:none}
.crumbs a:hover{text-decoration:underline;text-decoration-color:var(--marker)}
.crumbs span[aria-hidden]{color:var(--ink-faint)}

.paper{
  position:relative;background:var(--paper);border-radius:2px;
  box-shadow:0 4px 10px rgba(31,44,70,.15), 0 24px 46px -22px rgba(31,44,70,.24);
  padding:clamp(26px,4vw,60px) clamp(24px,4vw,64px) clamp(30px,4vw,56px);
}
.paper::before,.paper::after{content:"";position:absolute;top:-8px;width:14px;height:14px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%, #9FB2C9, var(--pin-blue) 55%, #33415C);box-shadow:0 2px 3px rgba(0,0,0,.28)}
.paper::before{left:32px} .paper::after{right:32px}

.paper h1{font-weight:700;font-size:clamp(28px,3.8vw,42px);max-width:20ch}
.paper .lead{margin-top:14px;font-size:19px;color:var(--ink-soft);max-width:var(--measure)}

/* Текст статьи — читаемая колонка внутри широкого листа */
.prose{margin-top:8px}
.prose > *{max-width:var(--measure)}
.prose h2{font-weight:700;font-size:clamp(22px,2.7vw,29px);margin:34px 0 4px}
.prose h3{font-weight:600;font-size:clamp(18px,2.1vw,22px);margin:26px 0 2px;font-family:'Bitter',serif}
.prose p{margin-top:12px}
.prose ul,.prose ol{margin:12px 0 0 0;padding-left:1.35em}
.prose li{margin-top:7px;padding-left:.2em}
.prose li::marker{color:var(--ink-faint)}
.prose strong{font-weight:700}
.prose a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--marker);
  text-decoration-thickness:2px;text-underline-offset:2px}
.prose a:hover{background:linear-gradient(transparent 60%, var(--marker-soft) 60%)}

/* Таблицы — на бумаге, широкие */
.prose .tablewrap{max-width:100%;overflow-x:auto;margin-top:18px}
.prose table{border-collapse:collapse;width:100%;max-width:760px;font-size:16px}
.prose th{text-align:left;font-family:'Bitter',serif;font-weight:600;font-size:14px;color:var(--ink-soft);
  padding:8px 16px 8px 0;border-bottom:2px solid #DDD9CE}
.prose td{padding:11px 16px 11px 0;border-bottom:1px solid #E7E3D8}

/* Дисклеймер-абзац в конце статьи */
.prose .disclaimer{max-width:var(--measure);margin-top:30px;padding-top:16px;border-top:1px solid #E7E3D8;
  font-size:14px;color:var(--ink-faint);font-style:normal}

/* Рукописная пометка */
.hand-note{font-family:'Caveat',cursive;font-weight:500;font-size:22px;color:var(--hand);
  transform:rotate(-1.1deg);display:inline-block;margin-top:20px;max-width:52ch}

/* Маркер */
mark{background:linear-gradient(104deg, transparent 2%, var(--marker) 4%, var(--marker-soft) 96%, transparent 98%);
  padding:0 .18em;border-radius:2px;color:inherit}

/* Список-дверцы (хабы): широкий грид ссылок, заполняет лист */
.doorlist{margin-top:22px;display:grid;gap:2px 40px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));max-width:100%}
.doorlist a{display:flex;justify-content:space-between;align-items:baseline;gap:14px;text-decoration:none;
  padding:13px 4px;border-bottom:1px dashed #C9CFC4;font-weight:500;font-size:17px;color:var(--ink)}
.doorlist a:hover{background:linear-gradient(90deg,var(--marker-soft),transparent 88%)}
.doorlist .tag{font-size:12.5px;color:var(--ink-faint);white-space:nowrap;font-family:'Onest',sans-serif}

/* ── Футер ── */
.site-foot{margin-top:clamp(56px,8vw,100px);background:var(--ink);color:#C7CEDD;font-size:14.5px}
.site-foot .in{padding:30px var(--pad) 38px;display:grid;gap:12px}
.site-foot strong{color:#fff}
.site-foot .em{color:#F0C7BF}
.site-foot a{color:#E4E9F3;text-decoration-color:#5E7391}
.site-foot .row{display:flex;gap:22px;flex-wrap:wrap;margin-top:6px}

@media (max-width:600px){
  body{font-size:16.5px}
  .board .alarm-note{position:static;width:auto;margin-top:20px;transform:rotate(.8deg)}
  .board .alarm-note::before{left:26px;margin-left:0}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .sheet{transition:none}
  body{background-attachment:scroll}
}
