/*
 * Тема «Свет миру» — стили поверх Kadence. Макет: https://claude.ai/artifact/Lfogt52zScmeiGjaM1hPmY
 * Порядок: шрифты · переменные · общее · шапка · мобильное меню · подвал · заголовки и крошки · главная ·
 * карточки и архив · запись · раздел «Сведения» · таблицы · галерея · поиск, 404 · навигация · контакты ·
 * версия для слабовидящих.
 */

/* ---------- Шрифты (со своего сервера, лицензия SIL OFL) ---------- */
@font-face { font-family: 'Golos Text'; font-style: normal; font-weight: 400; font-display: swap; src: url(../fonts/golos-text-cyrillic-400.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Golos Text'; font-style: normal; font-weight: 400; font-display: swap; src: url(../fonts/golos-text-latin-400.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Golos Text'; font-style: normal; font-weight: 500; font-display: swap; src: url(../fonts/golos-text-cyrillic-500.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Golos Text'; font-style: normal; font-weight: 500; font-display: swap; src: url(../fonts/golos-text-latin-500.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Golos Text'; font-style: normal; font-weight: 600; font-display: swap; src: url(../fonts/golos-text-cyrillic-600.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Golos Text'; font-style: normal; font-weight: 600; font-display: swap; src: url(../fonts/golos-text-latin-600.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Golos Text'; font-style: normal; font-weight: 700; font-display: swap; src: url(../fonts/golos-text-cyrillic-700.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Golos Text'; font-style: normal; font-weight: 700; font-display: swap; src: url(../fonts/golos-text-latin-700.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'PT Serif'; font-style: normal; font-weight: 400; font-display: swap; src: url(../fonts/pt-serif-cyrillic-400.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'PT Serif'; font-style: normal; font-weight: 400; font-display: swap; src: url(../fonts/pt-serif-latin-400.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'PT Serif'; font-style: normal; font-weight: 700; font-display: swap; src: url(../fonts/pt-serif-cyrillic-700.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'PT Serif'; font-style: normal; font-weight: 700; font-display: swap; src: url(../fonts/pt-serif-latin-700.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* ---------- Переменные ---------- */
:root {
	--sm-green: #3F7A51;
	--sm-green-d: #2F5E3E;
	--sm-ink: #1B2620;
	--sm-text: #26302A;
	--sm-body: #3E4A42;
	--sm-muted: #5A665E;
	--sm-line: #E3E9E4;
	--sm-line2: #D5DED7;
	--sm-soft: #F5F8F5;
	--sm-soft2: #F3F6F3;
	--sm-tint: #EDF3EE;
	--sm-row: #F7FAF7;
	--sm-footer: #2E4D39;
	--sm-footer-line: #436250;
	--sm-footer-muted: #C9DCCB;
	--sm-footer-head: #A9C9AE;
	--sm-vk: #0077FF;
	--sm-radius: 10px;
	--global-body-font-family: 'Golos Text', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
	--global-heading-font-family: var(--global-body-font-family);
	--sm-mask-phone: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M22%2016.92v3a2%202%200%200%201-2.18%202%2019.79%2019.79%200%200%201-8.63-3.07%2019.5%2019.5%200%200%201-6-6%2019.79%2019.79%200%200%201-3.07-8.67A2%202%200%200%201%204.11%202h3a2%202%200%200%201%202%201.72%2012.84%2012.84%200%200%200%20.7%202.81%202%202%200%200%201-.45%202.11L8.09%209.91a16%2016%200%200%200%206%206l1.27-1.27a2%202%200%200%201%202.11-.45%2012.84%2012.84%200%200%200%202.81.7A2%202%200%200%201%2022%2016.92z%22%3E%3C/path%3E%3C/svg%3E");
	--sm-mask-map-pin: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2010c0%204.993-5.539%2010.193-7.399%2011.799a1%201%200%200%201-1.202%200C9.539%2020.193%204%2014.993%204%2010a8%208%200%200%201%2016%200%22%3E%3C/path%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2210%22%20r%3D%223%22%3E%3C/circle%3E%3C/svg%3E");
	--sm-mask-mail: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20width%3D%2220%22%20height%3D%2216%22%20x%3D%222%22%20y%3D%224%22%20rx%3D%222%22%3E%3C/rect%3E%3Cpath%20d%3D%22m22%207-8.97%205.7a1.94%201.94%200%200%201-2.06%200L2%207%22%3E%3C/path%3E%3C/svg%3E");
	--sm-mask-vk: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22m9.489.004.729-.003h3.564l.73.003.914.01.433.007.418.011.403.014.388.016.374.021.36.025.345.03.333.033c1.74.196%202.933.616%203.833%201.516.9.9%201.32%202.092%201.516%203.833l.034.333.029.346.025.36.02.373.025.588.012.41.013.644.009.915.004.98-.001%203.313-.003.73-.01.914-.007.433-.011.418-.014.403-.016.388-.021.374-.025.36-.03.345-.033.333c-.196%201.74-.616%202.933-1.516%203.833-.9.9-2.092%201.32-3.833%201.516l-.333.034-.346.029-.36.025-.373.02-.588.025-.41.012-.644.013-.915.009-.98.004-3.313-.001-.73-.003-.914-.01-.433-.007-.418-.011-.403-.014-.388-.016-.374-.021-.36-.025-.345-.03-.333-.033c-1.74-.196-2.933-.616-3.833-1.516-.9-.9-1.32-2.092-1.516-3.833l-.034-.333-.029-.346-.025-.36-.02-.373-.025-.588-.012-.41-.013-.644-.009-.915-.004-.98.001-3.313.003-.73.01-.914.007-.433.011-.418.014-.403.016-.388.021-.374.025-.36.03-.345.033-.333c.196-1.74.616-2.933%201.516-3.833.9-.9%202.092-1.32%203.833-1.516l.333-.034.346-.029.36-.025.373-.02.588-.025.41-.012.644-.013.915-.009ZM6.79%207.3H4.05c.13%206.24%203.25%209.99%208.72%209.99h.31v-3.57c2.01.2%203.53%201.67%204.14%203.57h2.84c-.78-2.84-2.83-4.41-4.11-5.01%201.28-.74%203.08-2.54%203.51-4.98h-2.58c-.56%201.98-2.22%203.78-3.8%203.95V7.3H10.5v6.92c-1.6-.4-3.62-2.34-3.71-6.92Z%22%3E%3C/path%3E%3C/svg%3E");
	--sm-mask-download: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21%2015v4a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2v-4%22%3E%3C/path%3E%3Cpolyline%20points%3D%227%2010%2012%2015%2017%2010%22%3E%3C/polyline%3E%3Cline%20x1%3D%2212%22%20x2%3D%2212%22%20y1%3D%2215%22%20y2%3D%223%22%3E%3C/line%3E%3C/svg%3E");
}

/* ---------- Общее ---------- */
body { font-family: var(--global-body-font-family); color: var(--sm-text); background: #FFFFFF; }
a { color: var(--sm-green); }
a:hover { color: var(--sm-green-d); }
:focus-visible { outline: 3px solid var(--sm-green); outline-offset: 2px; }
.sm-container { box-sizing: border-box; max-width: 1248px; margin: 0 auto; padding: 0 24px; }
.sm-narrow { max-width: 848px; }
.sm-icon { flex-shrink: 0; display: block; }
.sm-muted { color: var(--sm-muted); }
.sm-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 22px; border-radius: 8px; font: inherit; font-weight: 600; font-size: 16px; text-decoration: none; cursor: pointer; border: 1px solid #C5D3C8; background: #FFFFFF; color: var(--sm-ink); }
.sm-btn--primary { background: var(--sm-green); border-color: var(--sm-green); color: #FFFFFF; }
.sm-btn--primary:hover { background: var(--sm-green-d); color: #FFFFFF; }
.sm-eyebrow { margin: 0 0 12px; font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--sm-muted); }
.sm-h1, .entry-header .entry-title, .page-header .page-title, .archive-title { font-size: 40px; line-height: 1.15; font-weight: 700; letter-spacing: -.02em; color: var(--sm-ink); margin: 0 0 24px; }
.sm-section-head { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; flex-wrap: wrap; margin-bottom: 28px; }
.sm-section-head h2 { margin: 0; font-size: 32px; font-weight: 700; letter-spacing: -.01em; color: var(--sm-ink); }
.sm-section-head a { font-weight: 600; text-decoration: none; }
body.sm-noscroll { overflow: hidden; }
.content-area { margin-top: 0; margin-bottom: 80px; }
.site-container, .content-container.site-container { max-width: 1248px; padding-left: 24px; padding-right: 24px; }
.content-width-narrow .content-container.site-container { max-width: 808px; }
.entry-content-wrap { padding: 0; }
.content-bg, body.content-style-unboxed .site { background: #FFFFFF; }

/* ---------- Шапка ---------- */
.sm-header { background: #FFFFFF; color: var(--sm-ink); }
.sm-topbar { background: var(--sm-soft2); border-bottom: 1px solid var(--sm-line); font-size: 14px; }
.sm-topbar__inner { min-height: 40px; display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.sm-topbar__nav ul { display: flex; gap: 24px; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; }
.sm-topbar__nav a { color: var(--sm-body); text-decoration: none; }
.sm-topbar__nav a:hover, .sm-topbar__nav .current-menu-item > a { color: var(--sm-green); }
.sm-vision-toggle { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 0; border: 0; background: none; font: inherit; font-weight: 500; color: var(--sm-ink); cursor: pointer; }
.sm-brandbar { min-height: 96px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.sm-brand { display: flex; align-items: center; gap: 16px; color: var(--sm-ink); text-decoration: none; }
.sm-brand:hover { color: var(--sm-ink); }
.sm-brand__logo { width: 64px; height: 64px; object-fit: contain; }
.sm-brand__text { display: flex; flex-direction: column; gap: 2px; }
.sm-brand__name { font-size: 21px; font-weight: 700; line-height: 1.2; letter-spacing: -.01em; }
.sm-brand__sub { font-size: 14px; line-height: 1.3; color: var(--sm-muted); }
.sm-brandbar__side { display: flex; align-items: center; gap: 20px; }
.sm-contact { display: flex; align-items: center; gap: 10px; }
.sm-contact__icon { color: var(--sm-green); }
.sm-contact__text { display: flex; flex-direction: column; gap: 2px; }
.sm-contact__phone { font-size: 19px; font-weight: 700; color: var(--sm-ink); text-decoration: none; }
.sm-contact__addr { font-size: 13px; color: var(--sm-muted); }
.sm-vk { width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; color: var(--sm-vk); }
.sm-vk:hover { color: #0062D1; }
.sm-burger { display: none; width: 44px; height: 44px; border: 0; border-radius: 8px; background: var(--sm-green); color: #FFFFFF; align-items: center; justify-content: center; cursor: pointer; }
.sm-mainnav { background: var(--sm-green); }
.sm-mainnav ul { display: flex; gap: 36px; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; }
.sm-mainnav a { display: block; padding: 16px 0 13px; border-bottom: 3px solid transparent; color: #FFFFFF; font-size: 16px; font-weight: 500; text-decoration: none; }
.sm-mainnav a:hover { color: #FFFFFF; border-bottom-color: rgba(255, 255, 255, .5); }
.sm-mainnav .current-menu-item > a, .sm-mainnav .current-menu-ancestor > a, .sm-mainnav .current-page-ancestor > a, .sm-mainnav .current_page_parent > a { border-bottom-color: #FFFFFF; }
.sm-mainnav a:focus-visible, .sm-footer a:focus-visible { outline-color: #FFFFFF; }

/* ---------- Мобильное меню ---------- */
.sm-drawer { position: fixed; inset: 0; z-index: 10000; background: #FFFFFF; overflow: auto; display: flex; flex-direction: column; }
.sm-drawer[hidden] { display: none; }
.sm-drawer__head { min-height: 68px; padding: 0 16px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--sm-line); flex-shrink: 0; }
.sm-brand--compact { gap: 10px; }
.sm-brand--compact .sm-brand__logo { width: 44px; height: 44px; }
.sm-brand--compact .sm-brand__name { font-size: 15px; max-width: 220px; }
.sm-drawer__close { width: 44px; height: 44px; border: 0; border-radius: 8px; background: #F0F5F1; display: flex; align-items: center; justify-content: center; color: var(--sm-ink); cursor: pointer; }
.sm-drawer__main ul, .sm-drawer__secondary ul { list-style: none; margin: 0; padding: 0; }
.sm-drawer__main { padding: 8px 16px 0; }
.sm-drawer__main li + li { border-top: 1px solid #EDF1EE; }
.sm-drawer__main a { display: block; padding: 14px 0; font-size: 19px; font-weight: 600; line-height: 1.3; color: var(--sm-ink); text-decoration: none; }
.sm-drawer__secondary { margin: 12px 16px 0; padding: 12px 16px; border-radius: var(--sm-radius); background: var(--sm-soft); }
.sm-drawer__secondary a { display: block; padding: 8px 0; font-size: 16px; color: var(--sm-body); text-decoration: none; }
.sm-drawer__foot { margin-top: auto; padding: 16px; display: flex; flex-direction: column; align-items: stretch; gap: 6px; border-top: 1px solid var(--sm-line); }
.sm-drawer__foot .sm-vision-toggle, .sm-drawer__vk { justify-content: center; min-height: 44px; font-size: 15px; }
.sm-drawer__vk { display: flex; align-items: center; gap: 8px; color: var(--sm-ink); text-decoration: none; font-weight: 500; }
.sm-drawer__vk .sm-icon { color: var(--sm-vk); }

/* ---------- Подвал ---------- */
.sm-footer { background: var(--sm-footer); color: #E6EFE7; font-size: 15px; line-height: 1.6; }
.sm-footer a { color: #FFFFFF; text-decoration: none; }
.sm-footer a:hover { color: #D9EADB; text-decoration: underline; }
.sm-footer__grid { padding-top: 56px; padding-bottom: 40px; display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 40px; }
.sm-footer__about p { margin: 16px 0 0; color: var(--sm-footer-muted); }
.sm-footer__brand { display: flex; align-items: center; gap: 12px; }
.sm-footer__logo { width: 56px; height: 56px; border-radius: 50%; background: #FFFFFF; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.sm-footer__logo img { width: 48px; height: 48px; object-fit: contain; }
.sm-footer__name { font-size: 17px; font-weight: 600; line-height: 1.3; color: #FFFFFF; }
.sm-footer__title { margin: 0 0 14px; font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--sm-footer-head); }
.sm-footer__row { display: flex; gap: 10px; align-items: flex-start; margin-bottom: 12px; }
.sm-footer__row .sm-icon { margin-top: 4px; color: var(--sm-footer-head); }
.sm-footer__phones { display: flex; flex-direction: column; gap: 4px; }
.sm-footer__muted { color: var(--sm-footer-muted); margin-left: 6px; }
.sm-footer__sections ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.sm-footer__bottom { border-top: 1px solid var(--sm-footer-line); font-size: 14px; color: var(--sm-footer-muted); }
.sm-footer__bottom-inner { padding-top: 20px; padding-bottom: 20px; display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; }
.sm-footer__vk { display: inline-flex; align-items: center; gap: 8px; }

/* ---------- Крошки ---------- */
.sm-crumbs { display: flex; flex-wrap: wrap; gap: 8px; margin: 28px 0 20px; font-size: 14px; color: var(--sm-muted); }
.sm-crumbs a { color: var(--sm-muted); text-decoration: none; }
.sm-crumbs a:hover { color: var(--sm-green); text-decoration: underline; }
.sm-crumbs [aria-current] { color: var(--sm-ink); }

/* ---------- Главная ---------- */
.sm-hero { display: grid; grid-template-columns: repeat(auto-fit, minmax(340px, 1fr)); gap: 48px; align-items: center; padding-top: 56px; padding-bottom: 48px; }
.sm-hero__text > * { margin: 0 0 20px; }
.sm-hero__text .sm-kicker { font-size: 14px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--sm-green); margin-bottom: 20px; }
.sm-hero__text h1 { font-size: 48px; line-height: 1.1; font-weight: 700; letter-spacing: -.02em; color: var(--sm-ink); }
.sm-hero__text p { font-size: 18px; line-height: 1.6; color: var(--sm-body); max-width: 520px; }
.sm-hero__text .wp-block-buttons { gap: 12px; margin-top: 8px; }
.sm-hero__text .wp-block-button__link { min-height: 48px; display: inline-flex; align-items: center; padding: 0 22px; border-radius: 8px; font-weight: 600; font-size: 16px; background: var(--sm-green); color: #FFFFFF; }
.sm-hero__text .wp-block-button.is-style-outline .wp-block-button__link { background: transparent; color: var(--sm-ink); border: 1px solid #C5D3C8; }
.sm-hero__img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 12px; display: block; height: auto; }
/* Слайдер первого экрана: та же рамка 4:3, плавная смена, точки и пауза поверх фото */
.sm-slider { position: relative; aspect-ratio: 4 / 3; border-radius: 12px; overflow: hidden; background: var(--sm-soft); }
.sm-slider__track, .sm-slide { position: absolute; inset: 0; }
.sm-slide { opacity: 0; visibility: hidden; transition: opacity .8s ease, visibility 0s linear .8s; }
.sm-slide.is-active { opacity: 1; visibility: visible; transition: opacity .8s ease, visibility 0s; }
.sm-slider .sm-hero__img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; border-radius: 0; }
.sm-slider__controls { position: absolute; left: 50%; bottom: 12px; transform: translateX(-50%); display: flex; align-items: center; gap: 2px; padding: 4px 8px; border-radius: 999px; background: rgba(27, 38, 32, .55); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
.sm-slider__dots { display: flex; gap: 2px; }
.sm-slider__dot, .sm-slider__pause { width: 24px; height: 24px; padding: 0; border: 0; background: none; display: flex; align-items: center; justify-content: center; cursor: pointer; color: #FFFFFF; }
.sm-slider__dot span { width: 8px; height: 8px; border-radius: 50%; background: rgba(255, 255, 255, .55); transition: background .2s, transform .2s; }
.sm-slider__dot[aria-current="true"] span { background: #FFFFFF; transform: scale(1.25); }
.sm-slider__dot:hover span { background: #FFFFFF; }
.sm-slider__controls :focus-visible { outline: 2px solid #FFFFFF; outline-offset: 1px; border-radius: 50%; }
/* Kadence красит кнопки при наведении/фокусе своим фоном — у своих кнопок сбрасываем */
.sm-slider__dot:hover, .sm-slider__dot:focus, .sm-slider__pause:hover, .sm-slider__pause:focus { background: none; box-shadow: none; color: #FFFFFF; }
.sm-vision-toggle:hover, .sm-vision-toggle:focus { background: none; box-shadow: none; color: var(--sm-green); }
.sm-drawer__close:hover, .sm-drawer__close:focus { background: var(--sm-tint); box-shadow: none; color: var(--sm-ink); }
.sm-burger:hover, .sm-burger:focus { background: var(--sm-green-d); box-shadow: none; color: #FFFFFF; }
.sm-vbtn:hover, .sm-vbtn:focus { box-shadow: none; }
.sm-slider__ic-play, .sm-slider.is-paused .sm-slider__ic-pause { display: none; }
.sm-slider.is-paused .sm-slider__ic-play { display: block; }
@media (prefers-reduced-motion: reduce) { .sm-slide, .sm-slide.is-active { transition: none; } }
html.sm-vision .sm-slider { aspect-ratio: auto; }
html.sm-vision .sm-slider__track, html.sm-vision .sm-slide { position: static; }
html.sm-vision .sm-slide:not(.is-active), html.sm-vision .sm-slider__controls { display: none; }
.sm-quick { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; padding-bottom: 64px; }
.sm-quick__item { display: flex; align-items: center; gap: 14px; padding: 20px; border: 1px solid #E0E7E2; border-radius: var(--sm-radius); color: var(--sm-ink); font-weight: 600; font-size: 16px; line-height: 1.35; text-decoration: none; }
.sm-quick__item:hover { border-color: var(--sm-green); color: var(--sm-ink); }
.sm-quick__icon { width: 44px; height: 44px; border-radius: 8px; background: var(--sm-tint); color: var(--sm-green); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.sm-band { background: var(--sm-soft); padding: 64px 0; }
.sm-home-gallery { padding-top: 64px; padding-bottom: 72px; }

/* ---------- Карточки новостей ---------- */
.sm-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 24px; }
.sm-card { background: #FFFFFF; border-radius: 12px; overflow: hidden; display: flex; flex-direction: column; }
.sm-card__img { width: 100%; aspect-ratio: 4 / 3; height: auto; object-fit: cover; display: block; }
.sm-card__body { padding: 20px 22px 24px; display: flex; flex-direction: column; gap: 10px; }
.sm-card__date { font-size: 14px; color: var(--sm-muted); }
.sm-card__title { margin: 0; font-size: 19px; line-height: 1.35; font-weight: 600; }
.sm-card__title a { color: var(--sm-ink); text-decoration: none; }
.sm-card__title a:hover { color: var(--sm-green); }
.sm-card__text { margin: 0; font-size: 15px; line-height: 1.55; color: var(--sm-body); }

/* Лента новостей (архив Kadence): дата над заголовком, без рамок. */
.loop-entry { box-shadow: none !important; background: transparent !important; border-radius: 0; }
.loop-entry .post-thumbnail { border-radius: var(--sm-radius); overflow: hidden; margin-bottom: 14px; }
.loop-entry .entry-content-wrap { padding: 0 !important; }
.loop-entry .entry-meta { font-size: 14px; color: var(--sm-muted); margin: 0 0 8px; }
.loop-entry .entry-title { font-size: 19px; line-height: 1.35; font-weight: 600; margin: 0 0 8px; }
.loop-entry .entry-title a { color: var(--sm-ink); text-decoration: none; }
.loop-entry .entry-title a:hover { color: var(--sm-green); }
.loop-entry .entry-summary { font-size: 15px; line-height: 1.55; color: var(--sm-body); margin: 0; }
.loop-entry .entry-summary p { margin: 0; }
.grid-cols { row-gap: 36px; column-gap: 28px; }

/* Боковая колонка ленты: ВК, «80 лет Победы», НОКО. */
.primary-sidebar .widget { border: 1px solid #E0E7E2; border-radius: var(--sm-radius); padding: 18px; margin-bottom: 20px; }
.primary-sidebar .widget:has(> a:only-child img), .primary-sidebar .widget:has(> img:only-child) { padding: 0; border: 0; }
.primary-sidebar .widget img { border-radius: var(--sm-radius); border: 1px solid #E0E7E2; display: block; max-width: 100%; height: auto; }
.primary-sidebar .widget h3 { margin: 0 0 10px; font-size: 16px; font-weight: 600; display: flex; align-items: center; gap: 8px; }
.primary-sidebar .widget h3.sm-ic-vk::before { content: ""; width: 22px; height: 22px; background: var(--sm-vk); -webkit-mask: var(--sm-mask-vk) center / contain no-repeat; mask: var(--sm-mask-vk) center / contain no-repeat; }

/* ---------- Запись ---------- */
.single-post .entry-header { margin-bottom: 0; }
.single-post .entry-meta { font-size: 15px; color: var(--sm-muted); margin-bottom: 10px; }
.single-post .post-thumbnail, .single-post .article-post-thumbnail { border-radius: 12px; overflow: hidden; margin: 18px 0 24px; }
.single-content p, .single-content li { font-size: 18px; line-height: 1.7; color: var(--sm-text); }
.single-content figure.wp-block-image img { border-radius: 12px; }
.post-navigation { border-top: 1px solid var(--sm-line); margin-top: 32px; padding-top: 20px; }
.post-navigation a { text-decoration: none; }
.sm-related { background: var(--sm-soft); padding: 56px 0 64px; margin-top: 48px; width: 100vw; position: relative; left: 50%; right: 50%; margin-left: -50vw; margin-right: -50vw; }
.sm-related .sm-section-head h2 { font-size: 28px; }

/* ---------- Раздел «Сведения» ---------- */
.sm-section { display: flex; flex-wrap: wrap; gap: 48px; align-items: flex-start; }
.sm-section__aside { flex: 1 1 260px; max-width: 300px; }
.sm-section__main { flex: 999 1 560px; min-width: 0; }
.sm-subnav ul { list-style: none; margin: 0; padding: 0; border-left: 2px solid var(--sm-line); font-size: 15px; line-height: 1.4; }
.sm-subnav a { display: block; padding: 8px 14px; color: var(--sm-body); text-decoration: none; }
.sm-subnav a:hover { color: var(--sm-green); }
.sm-subnav .current-menu-item > a { margin-left: -2px; border-left: 2px solid var(--sm-green); color: var(--sm-green); font-weight: 600; background: #F0F5F1; }
.sm-page .entry-content > h2, .sm-page .entry-content > h3 { color: var(--sm-ink); }
.sm-page .entry-content p { font-size: 17px; line-height: 1.65; }

/* ---------- Таблицы документов (блок «Таблица», стиль «Полосы») ---------- */
.wp-block-table { margin: 0 0 28px; }
.wp-block-table table { border: 1px solid var(--sm-line); border-radius: var(--sm-radius); border-collapse: separate; border-spacing: 0; overflow: hidden; width: 100%; }
.wp-block-table td, .wp-block-table th { border: 0; border-top: 1px solid var(--sm-line); padding: 14px 18px; font-size: 16px; line-height: 1.45; vertical-align: middle; }
.wp-block-table tr:first-child td, .wp-block-table thead th, .wp-block-table tbody:first-child tr:first-child td { border-top: 0; }
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) { background: #FFFFFF; }
.wp-block-table.is-style-stripes tbody tr:nth-child(even) { background: var(--sm-row); }
.wp-block-table.is-style-stripes { border-bottom: 0; }
.wp-block-table td:last-child:not(:first-child) { text-align: right; white-space: nowrap; }
.wp-block-table td:last-child:not(:first-child) a { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; text-decoration: none; }
.wp-block-table td:last-child:not(:first-child) a::before { content: ""; width: 16px; height: 16px; background: currentColor; -webkit-mask: var(--sm-mask-download) center / contain no-repeat; mask: var(--sm-mask-download) center / contain no-repeat; }
.wp-block-table figcaption { font-size: 14px; color: var(--sm-muted); }

/* ---------- Галерея и альбомы ---------- */
.sm-albums { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 32px 24px; }
.sm-albums--row { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 20px; }
.sm-album { display: flex; flex-direction: column; gap: 10px; color: var(--sm-ink); text-decoration: none; }
.sm-album:hover { color: var(--sm-green); }
.sm-album__img { width: 100%; aspect-ratio: 4 / 3; height: auto; object-fit: cover; border-radius: var(--sm-radius); display: block; }
.sm-album__title { font-weight: 600; font-size: 17px; line-height: 1.35; }
.sm-album__count { font-size: 14px; color: var(--sm-muted); }
.sm-album-meta { font-size: 15px; color: var(--sm-muted); margin: -12px 0 20px; }
/* промежуток задаётся переменной, по которой WordPress считает ширину фото — иначе 4 колонки не влезают и рвутся по 3 */
.entry-content .wp-block-gallery.has-nested-images { --wp--style--unstable-gallery-gap: 12px; gap: 12px; }
.wp-block-gallery.has-nested-images figure.wp-block-image img { border-radius: 8px; }
/* превью в сетке одинаковые 4:3 (вертикальные кадры не раздувают ряд); при увеличении кадр показывается целиком */
.entry-content .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) { align-self: flex-start; flex-grow: 0; }
.entry-content .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) img { aspect-ratio: 4 / 3; height: auto; object-fit: cover; }
.sm-pagenav { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; border-top: 1px solid var(--sm-line); padding-top: 20px; margin-top: 32px; font-size: 15px; }
.sm-pagenav a { text-decoration: none; font-weight: 600; }
.sm-pagenav a + a { color: var(--sm-body); font-weight: 400; }

/* ---------- Поиск и 404 ---------- */
.sm-search { display: flex; gap: 10px; flex-wrap: wrap; margin: 0 0 16px; }
.sm-search input[type="search"] { flex: 1 1 320px; height: 48px; box-sizing: border-box; padding: 0 16px; border: 1px solid #C5D3C8; border-radius: 8px; font: inherit; font-size: 17px; color: var(--sm-ink); background: #FFFFFF; }
.sm-results { margin: 16px 0 32px; }
.sm-result { padding: 20px 0; border-top: 1px solid var(--sm-line); display: flex; flex-direction: column; gap: 6px; }
.sm-result:last-child { border-bottom: 1px solid var(--sm-line); }
.sm-result__type { font-size: 13px; color: var(--sm-muted); }
.sm-result__title { margin: 0; font-size: 20px; font-weight: 600; line-height: 1.35; }
.sm-result__title a { text-decoration: none; }
.sm-result__text { margin: 0; font-size: 16px; line-height: 1.55; color: var(--sm-body); }
mark { background: #E4EFE6; color: inherit; padding: 0 2px; border-radius: 3px; }
.sm-404 { max-width: 640px; margin: 72px auto 24px; display: flex; flex-direction: column; gap: 20px; align-items: flex-start; }
.sm-404 .sm-h1 { margin: 0; }
.sm-404 p { margin: 0; font-size: 18px; line-height: 1.6; color: var(--sm-body); }
.sm-404__code { font-size: 15px; font-weight: 600; color: var(--sm-green); }
.sm-404 .sm-search { width: 100%; }
.sm-404__links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 8px; }
.sm-404__links a { min-height: 44px; padding: 0 18px; border: 1px solid var(--sm-line2); border-radius: 8px; display: inline-flex; align-items: center; color: var(--sm-ink); font-weight: 500; text-decoration: none; }

/* ---------- Постраничная навигация ---------- */
.sm-pager { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin: 40px 0 0; font-size: 16px; font-weight: 600; }
.sm-pager__num, .sm-pager__arrow { min-width: 44px; height: 44px; box-sizing: border-box; padding: 0 8px; border: 1px solid var(--sm-line2); border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; color: var(--sm-ink); text-decoration: none; }
.sm-pager__arrow { padding: 0 14px; }
.sm-pager a:hover { border-color: var(--sm-green); color: var(--sm-green); }
.sm-pager__num.is-current { background: var(--sm-green); border-color: var(--sm-green); color: #FFFFFF; }
.sm-pager__arrow.is-disabled { border-color: #EBEFEC; color: #A3ADA6; }
.sm-pager__gap { min-width: 28px; text-align: center; color: var(--sm-muted); }

/* ---------- Иконки в тексте страниц (классы блоков: sm-ic-phone, sm-ic-pin, sm-ic-mail) ---------- */
.sm-ic-phone, .sm-ic-pin, .sm-ic-mail { display: flex; align-items: center; gap: 10px; }
.sm-ic-phone::before, .sm-ic-pin::before, .sm-ic-mail::before { content: ""; width: 20px; height: 20px; flex-shrink: 0; background: var(--sm-green); -webkit-mask: center / contain no-repeat; mask: center / contain no-repeat; }
.sm-ic-phone::before { -webkit-mask-image: var(--sm-mask-phone); mask-image: var(--sm-mask-phone); }
.sm-ic-pin::before { -webkit-mask-image: var(--sm-mask-map-pin); mask-image: var(--sm-mask-map-pin); }
.sm-ic-mail::before { -webkit-mask-image: var(--sm-mask-mail); mask-image: var(--sm-mask-mail); }
.sm-contacts-label { font-size: 13px !important; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--sm-muted); margin: 0 0 14px !important; }
.sm-phone-big { margin: 0 0 12px !important; line-height: 1.3 !important; }
.sm-phone-big a { font-size: 24px; font-weight: 700; color: var(--sm-ink); text-decoration: none; }
.sm-phone-big span { display: block; font-size: 15px; color: var(--sm-muted); }

.sm-people td:first-child { color: var(--sm-muted); }
.sm-people td:last-child { font-weight: 600; }

/* ---------- Лента новостей (home.php): крошки и заголовок на всю ширину, ниже карточки и боковая колонка ---------- */
.sm-newslist { display: flex; flex-wrap: wrap; gap: 48px; align-items: flex-start; }
.sm-newslist__main { flex: 999 1 560px; min-width: 0; }
.sm-newslist__aside { flex: 1 1 280px; max-width: 320px; }
.sm-newslist .sm-cards { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 36px 28px; }
.sm-cards--flat .sm-card { background: transparent; border-radius: 0; overflow: visible; gap: 10px; }
.sm-cards--flat .sm-card__media img { border-radius: var(--sm-radius); }
.sm-cards--flat .sm-card__body { padding: 4px 0 0; }
.sm-newslist__aside .widget { border: 1px solid #E0E7E2; border-radius: var(--sm-radius); padding: 18px; margin-bottom: 20px; }
.sm-newslist__aside .widget:has(> a:only-child img) { padding: 0; border: 0; }
.sm-newslist__aside .widget img { border-radius: var(--sm-radius); border: 1px solid #E0E7E2; display: block; max-width: 100%; height: auto; }
.sm-newslist__aside .widget h3 { margin: 0 0 10px; font-size: 16px; font-weight: 600; display: flex; align-items: center; gap: 8px; }
.sm-newslist__aside .widget h3.sm-ic-vk::before { content: ""; width: 22px; height: 22px; background: var(--sm-vk); -webkit-mask: var(--sm-mask-vk) center / contain no-repeat; mask: var(--sm-mask-vk) center / contain no-repeat; }

/* ---------- Телефон и планшет ---------- */
@media (max-width: 1023px) {
	.sm-topbar, .sm-mainnav, .sm-contact { display: none; }
	.sm-burger { display: flex; }
	.sm-brandbar { min-height: 68px; gap: 12px; border-bottom: 1px solid var(--sm-line); }
	.sm-brand { gap: 10px; }
	.sm-brand__logo { width: 44px; height: 44px; }
	.sm-brand__name { font-size: 15px; }
	.sm-brand__sub { display: none; }
	.sm-brandbar__side { gap: 4px; }
	.sm-vk .sm-icon { width: 30px; height: 30px; }
}
@media (max-width: 767px) {
	.sm-container, .site-container, .content-container.site-container { padding-left: 16px; padding-right: 16px; }
	.sm-h1, .entry-header .entry-title, .page-header .page-title, .archive-title { font-size: 30px; }
	.sm-hero { padding-top: 16px; padding-bottom: 28px; gap: 16px; }
	.sm-hero__media { order: -1; }
	.sm-hero__text h1 { font-size: 30px; line-height: 1.15; }
	.sm-hero__text p { font-size: 16px; }
	.sm-quick { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding-bottom: 32px; }
	.sm-quick__item { flex-direction: column; align-items: flex-start; gap: 10px; padding: 14px; min-height: 104px; font-size: 14px; }
	.sm-quick__icon { width: auto; height: auto; background: none; }
	.sm-band, .sm-related { padding: 32px 0; }
	.sm-section-head h2 { font-size: 24px; }
	.sm-cards { gap: 16px; }
	.sm-card__body { padding: 16px; }
	.sm-pager__text { display: none; }
	/* «Сведения» на телефоне: сначала содержимое, список подразделов — под ним */
	.sm-section { gap: 32px; }
	.sm-section__aside { order: 2; max-width: none; border-top: 1px solid var(--sm-line); padding-top: 24px; }
	.sm-pager__arrow { padding: 0; }
	.single-content p, .single-content li { font-size: 17px; }
	.wp-block-table td, .wp-block-table th { padding: 12px 14px; font-size: 15px; }
	.wp-block-table td:last-child:not(:first-child) { white-space: normal; }
}

/* ---------- Версия для слабовидящих (ГОСТ Р 52872-2019) ---------- */
.sm-vpanel { display: none; }
.sm-alt { display: none; }
html.sm-vision { --v-bg: #FFFFFF; --v-fg: #000000; --v-fs: 27px; --v-ls: 0; --v-lh: 1.5; --v-ff: 'Golos Text', Arial, sans-serif; }
html.sm-vision[data-v-scheme="wb"] { --v-bg: #000000; --v-fg: #FFFFFF; }
html.sm-vision[data-v-scheme="blue"] { --v-bg: #9DD1FF; --v-fg: #063462; }
html.sm-vision[data-v-scheme="beige"] { --v-bg: #F7F3D6; --v-fg: #4D4B43; }
html.sm-vision[data-v-scheme="green"] { --v-bg: #3B2716; --v-fg: #A9E44D; }
html.sm-vision[data-v-size="0"] { --v-fs: 18px; }
html.sm-vision[data-v-size="2"] { --v-fs: 36px; }
html.sm-vision[data-v-ls="1"] { --v-ls: .05em; }
html.sm-vision[data-v-ls="2"] { --v-ls: .12em; }
html.sm-vision[data-v-lh="1"] { --v-lh: 1.8; }
html.sm-vision[data-v-lh="2"] { --v-lh: 2.2; }
html.sm-vision[data-v-font="serif"] { --v-ff: 'PT Serif', Georgia, serif; }
html.sm-vision, html.sm-vision body { background: var(--v-bg) !important; }
/* :where() — без веса селектора, чтобы правила заголовков ниже (h1–h3) были сильнее общего */
html.sm-vision body :where(*:not(svg, svg *, img)) {
	background-color: var(--v-bg) !important; background-image: none !important; color: var(--v-fg) !important;
	border-color: var(--v-fg) !important; box-shadow: none !important; text-shadow: none !important;
	font-family: var(--v-ff) !important; letter-spacing: var(--v-ls) !important; line-height: var(--v-lh) !important;
	font-size: var(--v-fs) !important; transition: none !important; animation: none !important;
}
html.sm-vision body h1 { font-size: calc(var(--v-fs) * 1.6) !important; }
html.sm-vision body h2 { font-size: calc(var(--v-fs) * 1.35) !important; }
html.sm-vision body h3 { font-size: calc(var(--v-fs) * 1.15) !important; }
html.sm-vision body a { text-decoration: underline !important; text-underline-offset: .15em; }
html.sm-vision svg { color: var(--v-fg) !important; }
html.sm-vision svg[stroke], html.sm-vision svg [stroke]:not([stroke="none"]) { stroke: var(--v-fg) !important; }
html.sm-vision .sm-icon[fill="currentColor"] { fill: var(--v-fg) !important; }
html.sm-vision *::before, html.sm-vision *::after { background-color: var(--v-fg) !important; }
html.sm-vision :focus-visible { outline: 3px solid var(--v-fg) !important; outline-offset: 3px; }
html.sm-vision .sm-mainnav a, html.sm-vision .sm-pager__num.is-current { border-bottom-width: 3px; }
html.sm-vision .sm-pager__num.is-current, html.sm-vision .sm-btn--primary { background-color: var(--v-fg) !important; color: var(--v-bg) !important; }
html.sm-vision[data-v-img="gray"] img { filter: grayscale(1) !important; }
html.sm-vision[data-v-img="hide"] img { display: none !important; }
html.sm-vision[data-v-img="hide"] .sm-alt { display: block; margin: .3em 0; padding: .5em .8em; border: 2px dashed var(--v-fg); border-radius: 6px; }
html.sm-vision .sm-vpanel { display: block; border-bottom: 3px solid var(--v-fg) !important; }
html.sm-vision .sm-vpanel, html.sm-vision .sm-vpanel * { font-size: 16px !important; letter-spacing: 0 !important; line-height: 1.3 !important; font-family: 'Golos Text', Arial, sans-serif !important; }
.sm-vpanel__inner { padding-top: 16px; padding-bottom: 16px; display: flex; flex-wrap: wrap; gap: 20px 32px; align-items: flex-end; }
.sm-vpanel__group { display: flex; flex-direction: column; gap: 6px; }
.sm-vpanel__label { font-weight: 700; }
.sm-vpanel__opts { display: flex; gap: 6px; flex-wrap: wrap; }
.sm-vbtn { min-width: 44px; min-height: 44px; padding: 0 12px; border: 2px solid currentColor; border-radius: 6px; background: transparent; color: inherit; font-weight: 700; cursor: pointer; }
html.sm-vision .sm-vbtn[aria-pressed="true"] { background-color: var(--v-fg) !important; color: var(--v-bg) !important; }
html.sm-vision .sm-vbtn.is-a1 { font-size: 16px !important; }
html.sm-vision .sm-vbtn.is-a2 { font-size: 21px !important; }
html.sm-vision .sm-vbtn.is-a3 { font-size: 26px !important; }
html.sm-vision .sm-vbtn.is-serif { font-family: 'PT Serif', Georgia, serif !important; }
html.sm-vision .sm-vbtn.is-bw { background-color: #FFFFFF !important; color: #000000 !important; border-color: #000000 !important; }
html.sm-vision .sm-vbtn.is-wb { background-color: #000000 !important; color: #FFFFFF !important; border-color: #FFFFFF !important; }
html.sm-vision .sm-vbtn.is-blue { background-color: #9DD1FF !important; color: #063462 !important; border-color: #063462 !important; }
html.sm-vision .sm-vbtn.is-beige { background-color: #F7F3D6 !important; color: #4D4B43 !important; border-color: #4D4B43 !important; }
html.sm-vision .sm-vbtn.is-green { background-color: #3B2716 !important; color: #A9E44D !important; border-color: #A9E44D !important; }
html.sm-vision .sm-vbtn[class*="is-"][aria-pressed="true"]:not(.is-a1):not(.is-a2):not(.is-a3):not(.is-serif) { box-shadow: 0 0 0 3px var(--v-bg), 0 0 0 6px var(--v-fg) !important; }
.sm-vpanel__off { margin-left: auto; padding: 0 16px; }
html.sm-vision .sm-vision-toggle { display: none; }
/* крупный шрифт — всё в одну колонку, шапка переносится по строкам */
html.sm-vision .sm-cards, html.sm-vision .sm-albums, html.sm-vision .sm-quick, html.sm-vision .sm-hero, html.sm-vision .sm-footer__grid { grid-template-columns: 1fr !important; }
html.sm-vision .sm-section, html.sm-vision .sm-newslist, html.sm-vision .sm-brandbar, html.sm-vision .sm-brandbar__side { flex-direction: column; align-items: flex-start; }
html.sm-vision .sm-section__aside, html.sm-vision .sm-newslist__aside { max-width: none; order: 2; }
html.sm-vision .sm-contact__text { min-width: 0; }
html.sm-vision .sm-brandbar { padding-top: 16px; padding-bottom: 16px; gap: 12px; }
