@font-face{font-family:'Cormorant Fallback';src:local('Georgia');size-adjust:83%;ascent-override:108.4%;descent-override:33.7%;line-gap-override:0%}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400 700;font-display:swap;size-adjust:97%;src:url(fonts/cormorant-cyrillic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400 700;font-display:swap;size-adjust:97%;src:url(fonts/cormorant-latin.woff2?v=2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url(fonts/inter-cyrillic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url(fonts/inter-latin.woff2?v=2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+FEFF,U+FFFD}
:root{--bg-deep:#3f6b45;--gold:#D4A843;--text:#FCF6EE;--parch:#EDE4D5;--hd:'Cormorant Garamond','Cormorant Fallback',Georgia,serif;--sans:'Inter',system-ui,sans-serif;--r-xl:20px;--ease:cubic-bezier(.16,1,.3,1)}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
body{background:var(--bg-deep);color:var(--text);font:400 1.06rem/1.7 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
/* Иконка PDF: высоту задаём ЯВНО, иначе глобальное img{height:auto} перебивает атрибут
   height="20", и до декодирования AVIF высота равна нулю. Замер Lighthouse 13.08:
   рост иконки с 0 до 20 px двигал section.cal высотой 5870 px и давал CLS 0.823 на
   мобильном. Правило обязано жить в КРИТИЧЕСКОМ листе: в основном оно приедет поздно. */
#schPdfLink img{width:20px;height:20px;flex:0 0 auto}
a{color:inherit;text-decoration:none}
.bg-waves{position:fixed;inset:0;z-index:-1;overflow:hidden;background:var(--bg-deep)}
.hdr{position:fixed;top:12px;left:50%;transform:translateX(-50%);width:calc(100vw - 48px);max-width:1152px;z-index:200;background:rgba(18,38,24,.93);backdrop-filter:blur(16px) saturate(1.1);-webkit-backdrop-filter:blur(16px) saturate(1.1);border:1px solid rgba(255,240,220,.14);border-radius:var(--r-xl);box-shadow:0 6px 24px rgba(10,24,14,.22)}
.hdr__row{display:flex;align-items:center;justify-content:space-between;height:48px;padding:0 24px}
.hdr__burger{display:none}.hdr__cross{display:inline-block;width:1.3em;height:1.3em;font-size:1.35rem;color:var(--gold);background:currentColor;-webkit-mask:url(img/chrism-mask.avif) center/contain no-repeat;mask:url(img/chrism-mask.avif) center/contain no-repeat;vertical-align:-0.28em}.hdr__cross svg{display:none!important}.hdr__name{font:600 .95rem/1 var(--hd);color:var(--parch);letter-spacing:2px;text-transform:uppercase}.hdr__nav{display:flex;gap:24px}.hdr__nav a{font:.8rem/1 var(--sans);font-weight:500;color:rgba(237,228,213,.78);text-transform:uppercase;letter-spacing:.5px}
@media(max-width:1120px){.hdr__nav{display:none}}
.hero{position:relative;min-height:100vh;display:flex;align-items:flex-end;overflow:hidden}
.hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 20%}
/* ГЕОМЕТРИЯ ЗДЕСЬ ОБЯЗАНА СОВПАДАТЬ С trinity-style.css, иначе страница прыгает.
   Поймано 13.08.2026 замером Lighthouse: CLS 0.117-0.311 на семи страницах при 0.009 на
   главной. Причина: 20.06 сюда легло padding:120px 0 56px, 20.07 основной лист ужали до
   84px 0 20px коммитом «global hero diet», а эту копию не обновили. Основной лист грузится
   асинхронно (preload+onload), поэтому первый кадр рисовался со старым отступом, и при его
   приезде содержимое подскакивало на 72 пикселя. Шрифт заголовка нужен по той же причине:
   без него высота строки другая. Менять только парой с trinity-style.css. */
.page-hero{padding:84px 0 20px;background:transparent;text-align:center;position:relative;overflow:hidden}
.page-hero__title{font:400 clamp(2.4rem,5vw,3.8rem)/1.05 var(--hd);color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.5);margin-bottom:0;letter-spacing:0.5px}.page-hero__tag{color:#EDE4D5}.page-hero__sub{color:#FFE1A8}
/* Reveal-on-scroll initial state in critical (render-blocking) CSS so above-the-fold sections do not flash visible then hide when the async sheet lands. reveal.js adds .revealed; reduced-motion + no-JS stay visible. */
.reveal{opacity:0;transform:translateY(32px)}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}
.cal__weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;margin-bottom:1px}
/* РЕЗЕРВ ПОД КАЛЕНДАРЬ. #calGrid лежит в разметке ПУСТЫМ, а заполняет его скрипт, который
   стоит НИЖЕ по документу. Браузер успевает нарисовать кадр до него, и приезд содержимого
   двигал section.cal высотой 5870 px: замер Lighthouse 13.08 дал CLS 0.823 на мобильном,
   трижды побайтово одинаково. Высота снимается скриптом сразу после grid.innerHTML,
   поэтому завышенный резерв не виден: он живёт ровно один кадр, до заполнения.
   Цифры замерены: десктоп 6 рядов по 196 плюс зазоры = 1188, мобильный столбец ~5500. */
/* ВКЛАДКИ КАТЕГОРИЙ. Правила жили ТОЛЬКО в trinity-style.css, а он грузится асинхронно.
   До его приезда это голые кнопки браузера: другой шрифт, другие отступы, другая высота
   строки. Когда лист доезжал, ряд перестраивался и двигал ленту высотой 6915 px.
   Замер Lighthouse 13.08: вклад 0.251 у section#gridView плюс 0.070 у самих кнопок,
   в сумме почти весь CLS 0.298 этой страницы. Скопирована ГЕОМЕТРИЯ: отступы, шрифт,
   рамка, скругление, перенос. Цвета и наведение остались в основном листе, на раскладку
   они не влияют. Менять только парой с trinity-style.css. */
.cat-tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:32px;padding:4px}
.cat-tab{padding:8px 18px;font:.7rem/1 var(--sans);font-weight:600;color:#fff;cursor:pointer;white-space:nowrap;flex-shrink:0;border:1px solid rgba(255,255,255,.15);border-radius:40px;position:relative;text-transform:uppercase;letter-spacing:.5px}
/* ШАПКА ГЕРОЯ. Размеров шрифта для этого блока в критическом листе не было вовсе, и все
   его строки рисовались базовым 16.96px вместо своих 11-13px. Замер 13.08 на 412px:
   герой 317px на одном критическом против 264px с обоими листами, разница 53px, и она
   двигала ВСЮ ленту новостей. Больше всех давал .page-hero__official-jur: 106px вместо 49.
   Скопированы только размеры и межстрочные интервалы, цвета остались в основном листе.
   Мобильная ветка обязательна: без неё заголовок остаётся 38.4px вместо 28.8px. */
.page-hero__tag{font-family:var(--sans);font-size:.82rem;line-height:1.5;letter-spacing:.3px;display:block;text-align:center;margin-bottom:10px}
.page-hero__official{line-height:1.42}
.page-hero__official-lead{display:block;font-weight:600;text-transform:uppercase;letter-spacing:1px;font-size:.92em}
.page-hero__official-name{display:block;margin-top:2px}
.page-hero__official-jur{display:block;font-size:.86em;margin-top:4px;line-height:1.45}
@media(max-width:640px){.page-hero{padding:80px 0 16px}.page-hero__title{font-size:1.8rem}}
/* КАРТОЧКА НОВОСТИ. Ни .card, ни .card__fig в критическом листе не было, и до приезда
   основного у картинки не резервировался бокс: aspect-ratio 16/10 живёт только там.
   Замер 13.08 на 412px: лента 6042px на одном критическом против 6504px с обоими, то есть
   каждая из 18 карточек подрастала примерно на 26px, когда лист доезжал. Это последнее
   слагаемое CLS ленты после героя и вкладок. Скопирована ГЕОМЕТРИЯ: соотношение сторон,
   заполнение бокса картинкой, направление колонки. Цвета и наведение в основном листе. */
.card{display:flex;flex-direction:column;border-radius:var(--r-xl);overflow:hidden}
.card__fig{position:relative;width:100%;margin:0;overflow:hidden;aspect-ratio:16/10}
.card__fig img{width:100%;height:100%;object-fit:cover}
/* КОНТЕЙНЕР СОДЕРЖИМОГО. Правила .w не было в критическом листе вовсе, и до приезда
   основного вся полоса содержимого была шире на величину боковых отступов: 412px вместо
   380px на телефоне. Это меняло перенос строк у всего, что внутри. Замер 13.08 на 412px:
   ряд вкладок категорий занимал 3 ряда вместо 6, то есть 112px вместо 223, и разница в
   111px двигала ленту. Через .w проходит и ширина карточек, отсюда же расхождение по их
   картинке и телу. Одно правило закрывает три слагаемых сразу.
   Медиазапросы скопированы все: 24px по умолчанию, 16px до 768 и до 640, 10px до 960. */
.w{max-width:var(--content-max);margin:0 auto;padding:0 24px}
@media(max-width:960px){.w{padding:0 10px}}
@media(max-width:768px){.w{padding:0 16px}}
@media(max-width:640px){.w{padding:0 16px}}
/* ТЕЛО КАРТОЧКИ И СЕКЦИЯ ЛЕНТЫ. Последние слагаемые CLS ленты, замеренные 13.08 на 412px:
   тело 96px вместо 122, заголовок 67 вместо 52, дата 20 вместо 10, и всё это на каждой из
   18 карточек. Плюс боковые отступы .news-section, от которых зависит перенос ряда вкладок
   (149px вместо 223). Скопированы отступы и шрифты, цвета остались в основном листе. */
.news-section{padding:0 0 88px}
@media(max-width:768px){.news-section{padding-left:16px;padding-right:16px}}
@media(max-width:640px){.news-section{padding:0 16px 64px}}
.card__body{padding:22px 24px 28px;flex:1;display:flex;flex-direction:column}
.card__date{font:.65rem/1 var(--sans);text-transform:uppercase;letter-spacing:2px;font-weight:600;margin-bottom:10px;display:block}
.card__title{font:400 1.25rem/1.3 var(--hd);flex:1}
/* АККОРДЕОН ДУХОВЕНСТВА И ФОТОГАЛЕРЕЯ. Правил не было в критическом листе вовсе, и до
   приезда основного каждая плитка рисовалась на полную высоту картинки. Замер 13.08 на
   412px: плитка 499px вместо 56, весь блок духовенства 8753 вместо 1418, галерея 1222
   вместо 277. Это и есть почти весь CLS страницы «О храме».
   Скопирована ГЕОМЕТРИЯ: раскладка, высота свёрнутой плитки, соотношение раскрытой,
   абсолютное позиционирование картинки, сетка галереи с квадратными ячейками.
   Цвета, тени, рамки и переходы остались в основном листе. */
.dukh-frame{border-radius:var(--r-lg);overflow:hidden}
.dukh-tiles{display:flex;height:470px;gap:0}
.dukh-tile{position:relative;flex:0 1 11.6%;min-width:0;overflow:hidden;margin-left:-16px}
.dukh-tile:first-child{margin-left:0}
.dukh-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--focus,50% 22%);display:block}
#d-1:checked~.dukh-tiles .dukh-tile:nth-child(1),#d-2:checked~.dukh-tiles .dukh-tile:nth-child(2),#d-3:checked~.dukh-tiles .dukh-tile:nth-child(3),#d-4:checked~.dukh-tiles .dukh-tile:nth-child(4),#d-5:checked~.dukh-tiles .dukh-tile:nth-child(5),#d-6:checked~.dukh-tiles .dukh-tile:nth-child(6),#d-7:checked~.dukh-tiles .dukh-tile:nth-child(7),#d-8:checked~.dukh-tiles .dukh-tile:nth-child(8),#d-9:checked~.dukh-tiles .dukh-tile:nth-child(9),#d-10:checked~.dukh-tiles .dukh-tile:nth-child(10){flex:1 1 0}
@media(max-width:680px){
  .dukh-tiles{flex-direction:column;height:auto}
  .dukh-tile{flex:0 0 auto;height:56px;margin-left:0;margin-top:-10px}
  .dukh-tile:first-child{margin-top:0}
  #d-1:checked~.dukh-tiles .dukh-tile:nth-child(1),#d-2:checked~.dukh-tiles .dukh-tile:nth-child(2),#d-3:checked~.dukh-tiles .dukh-tile:nth-child(3),#d-4:checked~.dukh-tiles .dukh-tile:nth-child(4),#d-5:checked~.dukh-tiles .dukh-tile:nth-child(5),#d-6:checked~.dukh-tiles .dukh-tile:nth-child(6),#d-7:checked~.dukh-tiles .dukh-tile:nth-child(7),#d-8:checked~.dukh-tiles .dukh-tile:nth-child(8),#d-9:checked~.dukh-tiles .dukh-tile:nth-child(9),#d-10:checked~.dukh-tiles .dukh-tile:nth-child(10){flex-basis:auto;height:auto;aspect-ratio:4/5}
}
.photo-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}
@media(max-width:640px){.photo-gallery{grid-template-columns:repeat(2,1fr)}}
.photo-gallery a{display:block;border-radius:12px;overflow:hidden;aspect-ratio:1;position:relative}
.photo-gallery img{width:100%;height:100%;object-fit:cover}
/* СЛУЖЕБНЫЕ И КАЛЕНДАРНЫЕ ПРАВИЛА. Замер 13.08 на 412px, страница расписания:
   h2.sr-only рисовался обычным текстом на 43px вместо скрытого 1px, ячейка дня 202px
   вместо 260, шапка месяца 86 вместо 44. .sr-only касается ВСЕХ страниц: без него
   заголовки для читалок экрана видны до приезда основного листа и двигают всё под собой.
   Скопирована геометрия, цвета и фоны остались в основном листе. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.month-top{display:flex;flex-direction:column;align-items:center;gap:20px;margin-bottom:8px}
.month-nav{display:flex;align-items:center;justify-content:center;gap:32px;margin-bottom:0}
@media(max-width:960px){
  .month-nav{justify-content:space-between;width:100%;gap:16px;margin-bottom:0}
  .month-top{gap:8px;margin-bottom:0}
  .cel{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;min-height:auto;padding:14px 16px;border-radius:12px;border:1px solid rgba(212,168,67,.2);-webkit-tap-highlight-color:transparent;width:100%;max-width:700px;margin-left:auto;margin-right:auto}
}
/* БИОГРАФИИ КЛИРИКОВ. Тот же аккордеон, вторая его половина. Правил не было в критическом
   листе, поэтому до приезда основного показывались ВСЕ биографии сразу: замер 13.08 на
   412px дал 5658px вместо 648. Это остаток CLS страницы после починки самих плиток. */
.dukh-bios{margin-top:20px;min-height:130px}
.dukh-bio{display:none}
#d-1:checked~.dukh-bios .dukh-bio:nth-child(1),#d-2:checked~.dukh-bios .dukh-bio:nth-child(2),#d-3:checked~.dukh-bios .dukh-bio:nth-child(3),#d-4:checked~.dukh-bios .dukh-bio:nth-child(4),#d-5:checked~.dukh-bios .dukh-bio:nth-child(5),#d-6:checked~.dukh-bios .dukh-bio:nth-child(6),#d-7:checked~.dukh-bios .dukh-bio:nth-child(7),#d-8:checked~.dukh-bios .dukh-bio:nth-child(8),#d-9:checked~.dukh-bios .dukh-bio:nth-child(9),#d-10:checked~.dukh-bios .dukh-bio:nth-child(10){display:block}
/* ВНУТРЕННОСТИ ЯЧЕЙКИ ДНЯ И ШАПКА МЕСЯЦА. Остаток CLS расписания после починки самой
   ячейки. Замер 13.08 на 412px: служба 86px вместо 50, праздник 58 вместо 93, шапка
   месяца 29 вместо 66, кнопки навигации 19 вместо 44. По отдельности мелочь, но ячеек
   в месяце сорок две. Скопирована геометрия и шрифты, фоны и рамки в основном листе. */
.cel__svc{display:flex;flex-direction:column;gap:10px;flex-shrink:0}
.cel__feast{font:italic 500 .92rem/1.28 var(--hd);color:#5C3A28;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;height:calc(3 * 1.28em);flex-shrink:0}
.month-nav button{background:rgba(212,168,67,.18);border:1px solid rgba(255,240,220,.4);color:#fff;width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:1.1rem;transition:all .25s;display:flex;align-items:center;justify-content:center}
@media(max-width:960px){
  .cel__svc{order:2;width:100%;margin-top:6px;padding-top:8px;border-top:1px solid rgba(212,168,67,.15);display:flex;flex-direction:column;gap:12px}
  .cel__feast{display:block!important;font:italic 500 1.42rem/1.3 var(--hd);color:#5C3A28;flex:1 1 100%;order:1;height:auto;min-height:0;max-height:none;overflow:visible;-webkit-line-clamp:none;line-clamp:none}
  .month-hdr{position:sticky;top:70px;z-index:100;margin:0 36px;padding:10px 10px;background:rgba(18,38,24,.62);border:1px solid rgba(255,240,220,.10);border-radius:999px;box-shadow:0 6px 24px rgba(10,24,14,.22);-webkit-backdrop-filter:blur(14px) saturate(1.1);backdrop-filter:blur(14px) saturate(1.1)}
  .month-nav button{width:44px;height:44px;font-size:1rem;color:#fff!important;background:rgba(212,168,67,.25)!important;box-shadow:0 2px 8px rgba(44,26,14,.2)!important;border:1px solid rgba(255,240,220,.2)!important}
}
/* ОТСТУПЫ СЕКЦИЙ ВЕРХНЕГО УРОВНЯ. Их не было в критическом листе, и каждая секция
   начиналась не там, где потом. Замер 13.08: календарь уезжал на 49px при полностью
   совпавшем герое, то есть отличался отступ самой секции. Взяты только padding и
   margin, остальное в основном листе. */
.cal{padding:12px 0 48px}
.about-section{padding:0 0 48px}
/* НАВИГАЦИЯ ПО РАЗДЕЛАМ. Правил не было в критическом листе: замер 13.08 дал высоту
   58px вместо 40, и вся страница «О храме» под ней уезжала на 22px. Последнее
   слагаемое её CLS. Скопирована геометрия, цвета в основном листе. */
.secnav{position:sticky;top:68px;z-index:150;width:calc(100vw - 96px);max-width:1152px;margin:6px auto 22px;background:rgba(18,38,24,.62);backdrop-filter:blur(14px) saturate(1.1);-webkit-backdrop-filter:blur(14px) saturate(1.1);border:1px solid rgba(255,240,220,.10);border-radius:var(--r-lg);box-shadow:0 6px 24px rgba(10,24,14,.22)}
.secnav a{display:inline-flex;align-items:center;gap:7px;font:600 .76rem/1 var(--sans);color:rgba(237,228,213,.72);letter-spacing:.2px;white-space:nowrap;position:relative;transition:color .25s var(--ease)}
/* СТРОКА НАВИГАЦИИ. Правило .secnav я скопировал прошлой правкой, но высота сидит не в
   нём, а в .secnav__row: замер 13.08 дал 88px вместо 40. Мобильная ветка обязательна,
   там высота 38 и горизонтальная прокрутка вместо переноса. */
.secnav__row{display:flex;justify-content:space-between;align-items:center;gap:8px;height:40px;padding:0 20px}
@media(max-width:1000px){.secnav{width:calc(100vw - 32px);max-width:none;top:64px;border-radius:var(--r);margin-top:18px}}
@media(max-width:1000px){.secnav__row{justify-content:flex-start;height:38px;padding:0 14px;gap:18px;overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}}
@media(max-width:1000px){.secnav__row::-webkit-scrollbar{display:none}}
#calGrid{min-height:1188px}
@media(max-width:960px){#calGrid{min-height:5200px}}
.cal__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(128px,auto);gap:2px}
@media(max-width:960px){.cal__weekdays{display:none}.cal__grid{display:flex;flex-direction:column;gap:6px}}

/* Добавлено 07.08.2026 по ночному прогону PSI. Обе строки ДУБЛИРУЮТ правила из
   trinity-style.css, и дублируют намеренно: основной лист едет асинхронно, 154 КБ, и до
   его прихода правила из него не действуют.
   1) .skip-link без position:absolute стоит в потоке, занимает бокс 201x20 и сдвигает
      main вниз на 29px. Это корень CLS всего сайта: замер с обезвреженной ссылкой дал
      новости 0.5149 -> 0, главную 0.1605 -> 0, расписание 1.4941 -> 0.4931.
   2) Резерв высоты ленты новостей лежал в асинхронном листе (trinity-style.css:985) и
      потому не работал: до применения листа #newsGrid имеет нулевую высоту при любом
      min-height внутри этого же листа. */
.skip-link{position:absolute;top:-100%;left:50%;transform:translateX(-50%);z-index:999;background:#14281a;color:#F5EDE0;padding:12px 24px;border-radius:0 0 8px 8px;font:600 .85rem/1 system-ui,sans-serif;letter-spacing:.5px;text-decoration:none;transition:top .2s}
.skip-link:focus{top:0}
/* Резерв 800px, поставленный 07.08, оказался вчетверо меньше правды. Замер 13.08 на
   412px: реальная высота первой страницы ленты 6504px при 18 карточках, то есть после
   заполнения всё под сеткой уезжало на 5700px. Цифры замерены, не выведены: карточка
   на мобильном около 350px вместе с зазором, PAGE_SIZE карточек в столбец; на десктопе
   три колонки, то есть шесть рядов примерно по 380px.
   Резерв снимается в renderPage() сразу после заполнения, поэтому завышение не видно:
   оно живёт ровно до первой отрисовки карточек. Тот же приём, что у #calGrid выше. */
@media(max-width:640px){body:not(.home) #newsGrid{min-height:6500px}}
@media(min-width:641px) and (max-width:960px){body:not(.home) #newsGrid{min-height:3300px}}
@media(min-width:961px){body:not(.home) #newsGrid{min-height:2300px}}
/* Мобильный кегль названия шапки, 14.08.2026. Без этих трёх веток название МИГАЛО на
   каждой холодной загрузке: первый кадр рисовался по базовому .hdr__name (15.2px), а после
   прихода основного листа падал до 10.24, минус 33%. Ветки обязаны стоять во ВСЕХ ТРЁХ
   источниках критического CSS, иначе мигание остаётся у того, кому не досталось.
   Сторож check_critical_css.py внутрь @media НЕ ЗАХОДИТ (сказано в его докстроке), поэтому
   расхождение здесь он не поймает: сверять глазами. */
@media(max-width:1120px){.hdr .hdr__name{font-size:clamp(.75rem,2.5vw,.95rem);letter-spacing:.6px;white-space:nowrap}}@media(max-width:400px){.hdr .hdr__name{font-size:.75rem;letter-spacing:.4px}}@media(max-width:345px){.hdr .hdr__name{font-size:.64rem;letter-spacing:.2px}}
@media(max-width:1120px){.hdr .hdr__cross{font-size:1.15rem}}
