*{box-sizing:border-box}body{margin:0;background:var(--dm-bg);color:var(--dm-text);font:1.0625rem/1.65 var(--dm-body);overflow-wrap:break-word}a{color:var(--dm-primary);text-underline-offset:.2em}a:hover{color:var(--dm-hover)}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a,input,select,summary,textarea{touch-action:manipulation}:focus-visible{outline:3px solid var(--dm-primary);outline-offset:4px}img,video{max-width:100%;height:auto}iframe{max-width:100%}h1,h2,h3,h4{font-family:var(--dm-heading);line-height:1.35;font-weight:700;overflow-wrap:anywhere}h1{font-size:clamp(1.5rem,3vw,2.5rem)}h2{font-size:clamp(1.25rem,2.3vw,1.8rem)}h3{font-size:1.12rem}p{margin:0 0 1em}[hidden]{display:none!important}.dm-wrap{--dm-gutter:24px;width:min(1240px,calc(100% - 2 * var(--dm-gutter)));margin-inline:auto}.dm-skip{position:fixed;top:8px;left:8px;z-index:1000;padding:12px;background:var(--dm-surface);transform:translateY(-200%)}.dm-skip:focus{transform:none}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap}.dm-header{background:var(--dm-surface);border-bottom:1px solid var(--dm-line);z-index:40}.dm-sticky{position:sticky;top:0}.dm-brand-row{display:flex;align-items:center;gap:24px;min-height:98px;padding-block:12px}.dm-logo{flex-shrink:0;display:inline-flex;align-items:center;gap:12px;text-decoration:none;line-height:1}.dm-logo img{height:auto;max-height:64px;width:auto;max-width:min(100%,70px);object-fit:contain}.dm-logo-name{font:800 1.35rem/1 var(--dm-heading);color:var(--dm-primary);letter-spacing:.02em}.dm-tagline{max-width:440px;font:700 .95rem/1.35 var(--dm-heading);color:var(--dm-primary);letter-spacing:.01em;padding-inline-start:16px;border-inline-start:3px solid var(--dm-accent)}.dm-utilities{display:flex;align-items:center;gap:8px;margin-inline-start:auto}.dm-utilities-menu{display:contents}.dm-control,.dm-cab,.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 14px;border:1px solid var(--dm-line);border-radius:var(--dm-small);background:var(--dm-surface);color:var(--dm-primary);font-weight:600;text-decoration:none;line-height:1.4}.dm-cab{background:var(--dm-accent);border-color:var(--dm-accent);color:#15213a;white-space:nowrap}.dm-cab:hover{color:#15213a;background:#ffdc45}.dm-control:hover,.dm-sub-toggle:hover{background:var(--dm-alt)}.dm-control[aria-pressed=true],.dm-control[aria-expanded=true]{background:var(--dm-primary);border-color:var(--dm-primary);color:var(--dm-surface)}.dm-panel{padding-block:16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.dm-panel>:first-child{flex:1 1 220px;min-width:0}.dm-panel-body{min-width:0}.dm-panel-close{flex:none;margin-inline-start:auto}.dm-panel .input-group>input{flex:1 1 200px;width:auto}.dm-panel fieldset{border:1px solid var(--dm-line);border-radius:12px;padding:16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.dm-panel legend{font-weight:600}.dm-nav-shell{border-top:1px solid var(--dm-line)}.dm-menu,.dm-submenu{list-style:none;margin:0;padding:0}.dm-menu{display:flex;justify-content:space-between;gap:2px;position:relative}.dm-menu-line{display:flex;align-items:center;gap:2px}.dm-menu-line>a,.dm-menu-heading{padding:12px;text-decoration:none;line-height:1.45;font-size:1rem;font-weight:600;display:block;color:var(--dm-text)}.dm-menu-item.active>.dm-menu-line>a{color:var(--dm-primary);text-decoration:underline}.dm-sub-toggle{border:0;background:transparent;color:var(--dm-primary);min-width:44px;min-height:44px;border-radius:8px;display:none;align-items:center;justify-content:center}.dm-sub-toggle::before{content:"";width:.55em;height:.55em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);transition:transform .2s}.dm-open>.dm-menu-line>.dm-sub-toggle::before{transform:rotate(225deg) translate(-2px,-2px)}.dm-js .dm-sub-toggle{display:inline-flex}.dm-submenu{padding:12px;background:var(--dm-surface);border:1px solid var(--dm-line);border-radius:var(--dm-small)}.dm-menu>.dm-menu-item>.dm-mega{position:absolute;inset-inline:0;top:100%;z-index:50;background:var(--dm-surface);border:1px solid var(--dm-line);box-shadow:var(--dm-shadow);max-height:calc(100vh - 170px);overflow:auto}.dm-js .dm-submenu,.dm-js .dm-mega{display:none}.dm-js .dm-menu-item.dm-open>.dm-submenu{display:block}.dm-js .dm-menu>.dm-menu-item.dm-open>.dm-mega{display:block}.dm-submenu .dm-menu-line>:is(a,.dm-menu-heading:not(.dm-mega-gh)){flex:1}.dm-submenu .dm-submenu{border:0;background:var(--dm-alt);padding:4px 10px}.dm-menu-close,.dm-menu-open{display:none}.dm-main{padding-block:0 64px;min-height:55vh;scroll-margin-top:180px}.dm-main>.dm-wrap{padding-top:36px}.dm-band-hero+.dm-wrap{padding-top:0}.dm-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:32px}.dm-has-left{grid-template-columns:260px minmax(0,1fr)}.dm-has-right{grid-template-columns:minmax(0,1fr) 280px}.dm-has-left.dm-has-right{grid-template-columns:220px minmax(0,1fr) 240px}.dm-content{min-width:0}.dm-module{margin-bottom:32px}.dm-module>h2{margin-top:0;margin-bottom:24px}.dm-footer{background:var(--dm-footer);color:var(--dm-footer-text);padding-top:48px}.dm-footer a{color:inherit;display:block;margin-block:8px}.dm-footer :focus-visible{outline-color:#f5c400}.dm-footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1.25fr .8fr;gap:40px}.dm-footer h2{font:700 1rem var(--dm-body);margin:0 0 18px}.dm-footer p,.dm-footer a{font-size:.9rem}.dm-footer .dm-footer-title{font:700 1.6rem var(--dm-heading);color:#f5c400}.dm-footer img.dm-logo-plate{display:block;background:#fff;padding:10px 14px;border-radius:12px;width:min(100%,280px);height:auto}.dm-footer img.dm-logo-white{display:block;width:min(100%,280px);height:auto;filter:brightness(0) invert(1)}.dm-footer-bottom{display:flex;gap:20px;justify-content:space-between;align-items:center;flex-wrap:wrap;border-top:1px solid #ffffff40;margin-top:32px;padding-block:22px;font-size:.85rem}.dm-footer-bottom .mod-custom,.dm-footer-bottom .mod-custom p{display:inline;margin:0}.breadcrumb{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;font-size:.85rem}.article-info{font-size:.85rem;color:var(--dm-muted)}.article-info dd{margin-inline:0}.com-content-article__body{overflow-wrap:anywhere}.com-content-article__body table{display:block;max-width:100%;overflow-x:auto}table{border-collapse:collapse}td,th{padding:8px;border-bottom:1px solid var(--dm-line)}input:not([type=radio]):not([type=checkbox]),select,textarea{max-width:100%;padding:10px;border:1px solid var(--dm-line);border-radius:8px;background:var(--dm-surface);color:var(--dm-text)}.input-group{display:flex;gap:8px;flex-wrap:wrap}.pagination{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0}.pagination a,.pagination span{padding:6px}.btn-primary{background:var(--dm-primary);color:var(--dm-surface)}.com-content-category-blog__item{margin-bottom:32px}.com-content-category-blog__item img{max-height:420px;object-fit:contain}.dm-no-scroll{overflow:hidden}.dm-inner .com-content-article{background:var(--dm-surface);padding:clamp(18px,3vw,40px);border:1px solid var(--dm-line);border-radius:var(--dm-radius)}
/* Шухляда (off-canvas) — вмикається JS за фактичним переповненням рядка меню: html[data-nav=drawer] */
html[data-nav=drawer].dm-js .dm-menu-open{display:inline-flex}html[data-nav=drawer].dm-js .dm-nav-shell{display:none}html[data-nav=drawer].dm-js .dm-nav-shell.dm-open{display:block;position:fixed;inset:0 0 0 auto;width:min(92vw,480px);height:100dvh;overflow-y:auto;background:var(--dm-surface);box-shadow:0 0 0 100vmax #0008;z-index:100}html[data-nav=drawer].dm-js .dm-menu-close{display:flex;margin:16px 0 20px auto}html[data-nav=drawer] .dm-menu{display:block;padding-block:8px}html[data-nav=drawer] .dm-menu-line>a,html[data-nav=drawer] .dm-menu-heading{font-size:1.02rem;flex:1;padding:12px 8px;white-space:normal}html[data-nav=drawer] .dm-menu>.dm-menu-item>.dm-mega,html[data-nav=drawer].dm-js .dm-menu>.dm-menu-item.dm-open>.dm-mega{position:static;display:block;max-height:none;box-shadow:none;border:0;background:none;overflow:visible}html[data-nav=drawer].dm-js .dm-menu>.dm-menu-item>.dm-mega{display:none}html[data-nav=drawer] .dm-sub-toggle{margin-inline-start:auto}
/* Компактний ступінь смуги: менші відступи перед переходом у шухляду */
html:not([data-nav=drawer]) .dm-nav-shell.dm-compact .dm-menu-line>:is(a,.dm-menu-heading:not(.dm-mega-gh)){padding-inline:5px}html:not([data-nav=drawer]) .dm-nav-shell.dm-compact .dm-menu>.dm-has-sub>.dm-menu-line>:is(a,.dm-menu-top){padding-inline-end:18px}html:not([data-nav=drawer]) .dm-nav-shell.dm-compact .dm-menu{gap:0}
/* Вимірювання природної ширини смуги (синхронно, без перемальовки) */
.dm-menu.dm-measure{position:absolute;left:0;top:0;width:max-content;max-width:none;visibility:hidden;pointer-events:none}
@media(max-width:1100px){.dm-tagline{display:none}.dm-layout,.dm-has-left.dm-has-right{grid-template-columns:minmax(0,1fr)}.dm-footer-grid{grid-template-columns:1fr 1fr}.dm-main{scroll-margin-top:110px}}
@media(max-width:600px){.dm-wrap{--dm-gutter:16px}.dm-brand-row{gap:8px;flex-wrap:wrap;min-height:80px}.dm-logo img{max-height:48px;max-width:min(100%,52px)}.dm-logo{min-width:0}.dm-logo-name{font-size:1.1rem}.dm-utilities{gap:4px}.dm-control{font-size:.85rem;padding:8px 10px}.dm-main>.dm-wrap{padding-top:24px}.dm-footer-grid{grid-template-columns:1fr;gap:24px}.dm-footer-bottom{display:block}.dm-inner .com-content-article{padding:18px}.dm-panel{display:block}.dm-panel fieldset{flex-wrap:wrap;gap:8px;padding:12px}.dm-panel fieldset>span{flex-basis:100%}.dm-panel button{margin:0}.dm-panel-close{display:flex;width:fit-content;margin:10px 0 0 auto}.dm-sticky{position:relative}.dm-menu-line>a{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Closed disclosure panels must win over desktop grid and mobile layout rules. */
.dm-js .dm-menu-item:not(.dm-open)>.dm-submenu,.dm-js .dm-menu-item:not(.dm-open)>.dm-mega{display:none}
/* Without JavaScript all navigation remains reachable in document flow. */
html:not(.dm-js) .dm-menu{display:block}html:not(.dm-js) .dm-menu>.dm-menu-item>.dm-mega{position:static;max-height:none;box-shadow:none}
.offline-card{max-width:560px;margin:48px auto;padding:24px;background:var(--dm-surface);border-radius:var(--dm-radius)}.offline-card img{max-width:240px}.offline-card label{display:block}
@media(max-width:600px){.dm-brand-row{display:flex;flex-wrap:nowrap;align-items:center;gap:8px}.dm-utilities{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-inline-start:auto}.dm-utilities .dm-cab{order:1;flex-basis:100%;font-size:.85rem}.dm-main>.dm-wrap{padding-top:24px}.dm-band-hero+.dm-wrap{padding-top:0}.dm-sticky{position:sticky}}
/* Core forms must shrink with the content column, including enlarged text. */
fieldset{min-inline-size:0;max-width:100%}.input-group>*{min-width:0;max-width:100%}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden}.form-control{width:100%}.com-finder .awesomplete{max-width:100%}.com-finder__search input{width:100%}
@media(max-width:600px){.dm-logo img{width:min(122px,100%)}.dm-utilities .dm-cab{white-space:normal;text-align:center}}

/* ===== Крок 16а: десктопна смуга/мегаменю — вмикається, поки рядок меню влазить (html без data-nav=drawer) ===== */
html:not([data-nav=drawer]) .dm-menu>.dm-menu-item>.dm-menu-line>.dm-sub-toggle, html:not([data-nav=drawer]).dm-js .dm-menu>.dm-menu-item .dm-sub-toggle{display:none}
html:not([data-nav=drawer]) .dm-menu>.dm-has-sub>.dm-menu-line>:is(a,.dm-menu-top){padding-inline-end:22px;position:relative}
html:not([data-nav=drawer]) .dm-menu>.dm-has-sub>.dm-menu-line>:is(a,.dm-menu-top)::after{content:"";position:absolute;right:6px;top:calc(50% - 5px);width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);opacity:.6;transition:transform .2s}
html:not([data-nav=drawer]) .dm-menu>.dm-has-sub.dm-hover:not(.dm-esc)>.dm-menu-line>:is(a,.dm-menu-top)::after, html:not([data-nav=drawer]) .dm-menu>.dm-has-sub:focus-within>.dm-menu-line>:is(a,.dm-menu-top)::after{transform:rotate(225deg) translateY(4px);opacity:1}
html:not([data-nav=drawer]) .dm-menu>.dm-menu-item>.dm-menu-line>:is(a,.dm-menu-top){border-radius:10px 10px 0 0}
html:not([data-nav=drawer]) .dm-menu>.dm-has-sub.dm-hover:not(.dm-esc)>.dm-menu-line>:is(a,.dm-menu-top), html:not([data-nav=drawer]) .dm-menu>.dm-has-sub:focus-within>.dm-menu-line>:is(a,.dm-menu-top){background:var(--dm-alt);color:var(--dm-primary)}
html:not([data-nav=drawer]) .dm-menu>.dm-menu-item>.dm-menu-line>:is(a,.dm-menu-top){white-space:nowrap}
/* Мобільний акордеон: кнопка-шеврон лишається */

/* ===== Герой-слайдер ===== */
.dm-band{width:100%}
.dm-band-hero{position:relative;overflow:hidden;background:var(--dm-hero-bg,linear-gradient(135deg,#eef3fb 0%,var(--dm-bg) 45%,#fff3c4 100%))}
.dm-band-hero::before{content:"";position:absolute;inset:auto -10% -30% auto;width:60%;height:140%;background:radial-gradient(closest-side,rgba(11,61,145,.10),transparent 70%);pointer-events:none}
.dm-band-hero::after{content:"";position:absolute;left:-8%;bottom:-40%;width:45%;height:110%;background:radial-gradient(closest-side,rgba(245,196,0,.22),transparent 70%);pointer-events:none}
:root[data-theme=contrast] .dm-band-hero{background:var(--dm-alt)}:root[data-theme=contrast] .dm-band-hero::before,:root[data-theme=contrast] .dm-band-hero::after{display:none}
.dm-hero{position:relative;z-index:1}
.dm-slides{display:grid;position:relative}
/* Десктоп (>900px): слайди стопкою, плавне перехрещення; неактивні не рендеряться і не тягнуть картинок (без JS — усі підряд) */
@media(min-width:901px){
.dm-slides{touch-action:pan-y}
.dm-slide{grid-area:1/1;opacity:0;visibility:hidden}
.dm-slide.is-active,.dm-slide.is-leaving{visibility:visible}
.dm-slide.is-active{opacity:1;z-index:2}.dm-slide.is-leaving{z-index:1}
html:not(.dm-js) .dm-slide{opacity:1;visibility:visible}html:not(.dm-js) .dm-slides{display:block}
/* 1.10.5 — зміна слайдів (параметр стилю «Слайдер: перехід», клас dm-fx-* на .dm-hero). Раніше «мигало»: старий слайд зникав
   миттєво (content-visibility), новий проявлявся з нуля на порожньому тлі, картинка наступного довантажувалась під час переходу.
   Тепер старий слайд гасне повністю (is-leaving, JS знімає після переходу), потім проявляється новий — без накладання (замовник: накладання
   старого банера на новий не подобається); «Зсув» — слайди їдуть поруч. Картинки всіх слайдів вантажаться після load.
   Анімації — лише після першої зміни (.dm-moved), при завантаженні сторінки перший слайд без ефектів. */
.dm-fx-fade .dm-slide,.dm-fx-rise .dm-slide{transition:opacity .35s ease}
.dm-fx-fade .dm-slide.is-active,.dm-fx-rise .dm-slide.is-active{transition:opacity .55s ease .3s}
.dm-fx-rise.dm-moved .dm-slide.is-active .dm-slide-body{animation:dm-rise .7s .38s cubic-bezier(.2,.7,.2,1) both}
.dm-fx-rise.dm-moved .dm-slide.is-active :is(.dm-slide-media,.dm-banner-img) img{animation:dm-settle 1.1s .3s cubic-bezier(.2,.7,.2,1) both}
.dm-fx-slide .dm-slides{overflow:hidden}
.dm-fx-slide.dm-moved .dm-slide.is-active{animation:dm-push-in .75s cubic-bezier(.45,0,.2,1) both}
.dm-fx-slide.dm-moved .dm-slide.is-leaving{opacity:1;animation:dm-push-out .75s cubic-bezier(.45,0,.2,1) both}
}
@keyframes dm-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes dm-settle{from{transform:scale(1.035)}to{transform:none}}
@keyframes dm-push-in{from{transform:translateX(calc(var(--dm-dir,1) * 100%))}to{transform:none}}
@keyframes dm-push-out{from{transform:none}to{transform:translateX(calc(var(--dm-dir,1) * -100%))}}
@media(min-width:901px) and (prefers-reduced-motion:reduce){.dm-hero .dm-slide{transition:opacity .2s linear!important;animation:none!important}.dm-hero .dm-slide *{animation:none!important}}
html:not(.dm-js) .dm-hero-btn{display:none}
.dm-slide-in{display:grid;gap:32px 48px;align-items:center;padding-block:clamp(28px,4vw,48px);min-height:100%}
.dm-slide-split .dm-slide-in{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}
.dm-slide-split.dm-img-left .dm-slide-body{order:2}
.dm-slide-title{font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.12;margin:0 0 18px;font-weight:800;color:var(--dm-text)}
/* 1.6.2: жовту риску над заголовком слайда прибрано (замовник) */
.dm-slide-text{font-size:clamp(1rem,1.3vw,1.15rem);color:var(--dm-muted);max-width:60ch}
.dm-slide-text p:last-child{margin-bottom:0}
.dm-slide-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.btn-pri{background:var(--dm-primary);border-color:var(--dm-primary);color:#fff}.btn-pri:hover{background:var(--dm-hover);border-color:var(--dm-hover);color:#fff}
.btn-sec{background:var(--dm-surface);border-color:var(--dm-primary);color:var(--dm-primary)}.btn-sec:hover{background:var(--dm-alt)}
.dm-slide-btns .btn{border-radius:999px;padding:12px 24px;min-height:50px;font-size:1rem;border-width:2px}
:root[data-theme=contrast] .btn-pri{background:var(--dm-primary);color:#000}
.dm-slide-media{min-width:0;height:100%;display:flex;align-items:center;justify-content:center}
.dm-slide-media img,.dm-slide-banner img{max-height:100%;min-height:0;width:auto;max-width:100%;border-radius:var(--dm-radius);box-shadow:0 18px 44px -18px rgba(11,61,145,.35)}
.dm-slide-plain .dm-slide-in{text-align:center;justify-items:center}
.dm-slide-plain .dm-slide-body{max-width:760px}.dm-slide-plain .dm-slide-title::before{margin-inline:auto}.dm-slide-plain .dm-slide-btns{justify-content:center}
.dm-banner{display:flex;justify-self:center;max-width:100%;height:100%;min-height:0}.dm-slide-banner .dm-slide-in{position:relative}.dm-banner-img{display:flex;align-items:center;justify-content:center;min-height:0;max-width:100%;line-height:0}
/* Кнопки на слайді-постері: накладання ліворуч-унизу (десктоп), під постером (мобільний) */
.dm-slide-banner .dm-slide-btns{position:absolute;left:0;bottom:clamp(28px,4vw,48px);margin:0;justify-content:flex-start;z-index:1}.dm-slide-banner .dm-slide-btns .btn{box-shadow:0 6px 20px -6px rgba(0,0,0,.45)}
/* Десктоп: фіксована висота смуги — слайди не змінюють висоту сторінки; картинка вписується у висоту */
/* 1.11.2: колонка картинки — за її пропорціями (--ar з hero.php; ≈420 px висоти × пропорція, не більше 62 %), решта — тексту.
   Раніше завжди половина: широкий постер 2,35:1 виходив 560×239 з порожнім полем довкола */
@media(min-width:901px){.dm-slide-split .dm-slide-in{grid-template-columns:minmax(0,1fr) minmax(0,min(62%,calc(var(--ar,1.1) * 420px)))}
.dm-slide-split.dm-img-left .dm-slide-in{grid-template-columns:minmax(0,min(62%,calc(var(--ar,1.1) * 420px))) minmax(0,1fr)}}
@media(min-width:901px){.dm-slides{height:clamp(420px,38vw,540px);grid-template-rows:100%;grid-template-columns:100%;overflow:hidden}.dm-slide{min-height:0;overflow:hidden}.dm-slide-in{height:100%;grid-template-rows:100%;box-sizing:border-box}.dm-slide-body{max-height:100%;overflow:hidden}.dm-slide-media img{max-height:100%}}
.dm-hero-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:46px;height:46px;border-radius:50%;border:1px solid var(--dm-line);background:var(--dm-surface);color:var(--dm-primary);opacity:.85;display:inline-flex;align-items:center;justify-content:center;padding:0}
.dm-hero-btn::before{content:"";width:11px;height:11px;border-left:2.5px solid currentColor;border-bottom:2.5px solid currentColor;transform:translateX(2px) rotate(45deg)}
.dm-hero-next::before{transform:translateX(-2px) rotate(-135deg)}
.dm-hero-prev{left:clamp(8px,2vw,28px)}.dm-hero-next{right:clamp(8px,2vw,28px)}
/* 1.11.0: на 901–1330 px стрілки (до ~74 px від краю) налазили на початок тексту — вміст слайда відступає від них; ширше — без змін */
@media(min-width:901px){[data-dm-slider] .dm-slide-in{padding-inline:max(0px,calc(84px - (100vw - min(1240px,100vw - 48px)) / 2))}}
.dm-hero-btn:hover{opacity:1;background:var(--dm-alt)}
/* Телефон/планшет (≤900px, зауваження замовника 23.09.2026): стрічка з нативним гортанням пальцем (scroll-snap) — слайд іде за
   пальцем; усі слайди однакової висоти (найвищий задає висоту смуги), тож сторінка не «стрибає»; картинка — у рамці сталої
   висоти --dm-hero-media, стрілки — посередині цієї рамки (раніше були внизу смуги). Працює і без JS. */
@media(max-width:900px){
.dm-hero{--dm-hero-media:clamp(170px,50vw,320px)}
.dm-slides{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none}.dm-slides::-webkit-scrollbar{display:none}
.dm-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always}
.dm-slide-in{height:100%;align-content:center;gap:18px;padding-block:20px 26px}
.dm-slide-split .dm-slide-in{grid-template-columns:minmax(0,1fr)}.dm-slide-split.dm-img-left .dm-slide-body{order:0}
.dm-slide-media{order:-1;height:var(--dm-hero-media)}
.dm-slide-media img,.dm-slide-banner img{max-height:100%;max-width:100%;width:auto;height:auto}
.dm-banner{height:auto;width:100%;flex-direction:column;align-items:center;gap:18px}.dm-banner-img{height:var(--dm-hero-media);width:100%}
.dm-slide-banner .dm-slide-btns{position:static;justify-content:center}.dm-slide-banner .dm-slide-btns .btn{box-shadow:none}
/* висоту смуги задає найвищий слайд — короткий вступ (4 рядки) і кнопки в ряд зближують висоти постера й текстових слайдів */
.dm-slide-text{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;font-size:1rem}
.dm-slide-title{font-size:clamp(1.3rem,5.4vw,1.9rem)}.dm-slide-title::before{margin-bottom:12px}.dm-slide-btns{margin-top:18px}
/* 1.6.5: стрілки на стрічці прибрано (заважали й стрибали між слайдами) — крапки під слайдом */
.dm-hero-btn{display:none}
.dm-slide-in{padding-bottom:12px}
}
@media(max-width:600px){.dm-slide-btns{gap:8px}.dm-slide-btns .btn{flex:1 1 auto;padding:10px 18px;min-height:46px}}
/* 1.10.5 (зауваження замовника 24.09.2026): телефон вертикально — текстові слайди нижчі (вступ 3 рядки, менший заголовок і рамка
   картинки), бо висоту стрічки задає найвищий слайд і на слайді-банері лишалось ~245 px порожнього поля; висота й далі стала */
@media(max-width:600px){.dm-hero{--dm-hero-media:clamp(150px,44vw,230px)}.dm-slide-in{gap:14px;padding-top:16px}
.dm-slide-text{-webkit-line-clamp:3;line-height:1.5}.dm-slide-title{font-size:clamp(1.2rem,5.2vw,1.55rem);margin-bottom:10px}.dm-slide-btns{margin-top:14px}}
/* 1.10.5: телефон горизонтально (низький екран) — як на комп'ютері: текст і картинка поруч, банер вміщується в екран під шапкою
   (було 612 px при екрані 320); стрічка з гортанням пальцем і крапки лишаються, висота всіх слайдів однакова */
@media(max-width:900px) and (orientation:landscape) and (max-height:500px){
.dm-hero{--dm-hero-media:clamp(130px,calc(100svh - 150px),260px)}
.dm-slide-in{padding-block:12px 6px;gap:14px 28px}
.dm-slide-split .dm-slide-in{grid-template-columns:minmax(0,1fr) minmax(0,min(58%,calc(var(--ar,1.1) * var(--dm-hero-media))))}
.dm-slide-split.dm-img-left .dm-slide-in{grid-template-columns:minmax(0,min(58%,calc(var(--ar,1.1) * var(--dm-hero-media)))) minmax(0,1fr)}
.dm-slide-media{order:0}.dm-slide-split.dm-img-left .dm-slide-media{order:-1}
.dm-slide-title{font-size:clamp(1.05rem,2.6vw,1.35rem);margin-bottom:8px}.dm-slide-text{-webkit-line-clamp:3;font-size:.95rem;line-height:1.45}
.dm-slide-btns{margin-top:12px}.dm-slide-btns .btn{flex:0 1 auto;min-height:44px;padding:8px 18px}
.dm-banner{position:relative;width:fit-content;max-width:100%;justify-self:center}.dm-banner-img{width:auto}.dm-slide-banner .dm-slide-btns{position:absolute;left:12px;bottom:12px;margin:0}.dm-slide-banner .dm-slide-btns .btn{box-shadow:0 6px 20px -6px rgba(0,0,0,.45)}
.dm-hero-dots{padding-bottom:6px}}

/* ===== Швидкі посилання: плитки з іконками одразу під героєм ===== */
/* Власна смуга під слайдером (23.09.2026, замовник: плитки прилипали до слайдера): рівні відступи зверху й знизу, лінія-межа зі слайдером */
.dm-position-quick-links{position:relative;z-index:2;padding-block:28px;border-image:linear-gradient(var(--dm-bg) 0 0) fill 0/0/0 100vw}
.dm-band-hero{border-bottom:1px solid var(--dm-line)}
.dm-position-quick-links .dm-module{margin-bottom:0}
@media(max-width:600px){.dm-position-quick-links{padding-block:20px}}
/* Плитки = пункти меню «Швидкі посилання (головна)» (html/mod_menu/quicklinks.php); іконка — «Зображення посилання» пункту */
/* 1.7.2: до 5 у ряду, ряди порівну (--ql-row з PHP), ширина плитки = частка ряду з --ql-size (4 або 5) — однакова за будь-якої кількості;
   неповний ряд і малий набір — по центру; назва до 2 рядків (…), усі плитки однієї висоти; на вузькому — переносяться, не вужчі за 220 px */
.dm-ql{--g:12px;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--g);list-style:none;margin:0 auto;padding:0;max-inline-size:max(calc((100% - (var(--ql-size,4) - 1) * var(--g)) / var(--ql-size,4) * var(--ql-row,4) + (var(--ql-row,4) - 1) * var(--g)),calc(var(--ql-row,4) * 220px + (var(--ql-row,4) - 1) * var(--g)))}
.dm-ql li{display:flex;flex:0 1 calc((100% - (var(--ql-row,4) - 1) * var(--g)) / var(--ql-row,4));min-width:min(100%,220px);container-type:inline-size}
.dm-ql-t{min-width:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;overflow-wrap:anywhere}
@container (max-width:250px){.dm-ql-a::after{display:none}}
.dm-ql-a{flex:1;min-width:0;display:flex;align-items:center;gap:12px;min-height:70px;padding:12px 16px;border:1px solid var(--dm-line);background:var(--dm-surface);border-radius:14px;text-decoration:none;font-weight:600;color:var(--dm-text);box-shadow:var(--dm-shadow);line-height:1.3}
.dm-ql-a:hover{border-color:var(--dm-primary);color:var(--dm-primary)}
.dm-ql-a::after{content:"→";margin-inline-start:auto;color:var(--dm-primary);opacity:.7}
/* Іконка пункту меню (helper dm_menu_icon): images/ikonky/* — маска за прозорістю в кольорі теми; інша картинка — як є */
.dm-ico{flex:none;width:40px;height:40px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden}
.dm-ico-img img{width:100%;height:100%;object-fit:contain}
.dm-ql .dm-ico:not(.dm-ico-img){background:var(--dm-primary);-webkit-mask:var(--ico,var(--dm-ql-link)) center/24px no-repeat,linear-gradient(#000 0 0);mask:var(--ico,var(--dm-ql-link)) center/24px no-repeat,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
/* Телефон: 2 колонки, непарна остання — на всю ширину; більше 6 плиток — стрічка у 2 ряди, гортається пальцем (≈1,6 колонки видно, праворуч згасання) */
@media(max-width:600px){.dm-ql{--g:8px;display:grid;justify-content:normal;grid-template-columns:repeat(2,minmax(0,1fr));max-inline-size:none}.dm-ql li{min-width:0}.dm-ql li:last-child:nth-child(odd){grid-column:1/-1}
.dm-ql.dm-ql-strip{grid-template-columns:none;grid-template-rows:repeat(2,auto);grid-auto-flow:column;grid-auto-columns:calc((100% - var(--g)) / 1.6);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--dm-gutter);margin-inline:calc(-1 * var(--dm-gutter));padding:4px var(--dm-gutter) 10px;scrollbar-width:none;-webkit-mask:linear-gradient(90deg,#000 calc(100% - 28px),transparent);mask:linear-gradient(90deg,#000 calc(100% - 28px),transparent)}
.dm-ql-strip::-webkit-scrollbar{display:none}.dm-ql-strip li{scroll-snap-align:start}.dm-ql.dm-ql-strip li:last-child:nth-child(odd){grid-column:auto}.dm-ql.is-end{-webkit-mask:none;mask:none}
.dm-ql-a{min-height:60px;padding:10px 12px;gap:10px;font-size:.9rem}.dm-ql-a::after{display:none}.dm-ql .dm-ico{width:34px;height:34px;border-radius:10px}.dm-ql .dm-ico:not(.dm-ico-img){-webkit-mask-size:20px,auto;mask-size:20px,auto}}
:root{
--dm-ql-link:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 13a5 5 0 0 0 7 0l3-3a5 5 0 0 0-7-7l-1 1'/%3E%3Cpath d='M14 11a5 5 0 0 0-7 0l-3 3a5 5 0 0 0 7 7l1-1'/%3E%3C/svg%3E");
--dm-ql-user:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c0-4 3.6-7 8-7s8 3 8 7'/%3E%3C/svg%3E");
--dm-ql-book:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h6a3 3 0 0 1 3 3v13a2 2 0 0 0-2-2H4z'/%3E%3Cpath d='M20 4h-6a3 3 0 0 0-3 3v13a2 2 0 0 1 2-2h7z'/%3E%3C/svg%3E");
--dm-ql-star:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3 2.8 5.7 6.2.9-4.5 4.4 1.1 6.2L12 17.3 6.4 20.2l1.1-6.2L3 9.6l6.2-.9z'/%3E%3C/svg%3E");
--dm-ql-cup:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 21h8M12 17v4M7 4h10v5a5 5 0 0 1-10 0z'/%3E%3Cpath d='M7 6H4v2a3 3 0 0 0 3 3M17 6h3v2a3 3 0 0 1-3 3'/%3E%3C/svg%3E");
--dm-ql-doc:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 3v5h5M9 13h6M9 17h6'/%3E%3C/svg%3E");
--dm-ql-cal:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E");
--dm-ql-mail:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E");
--dm-ql-video:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='6' width='13' height='12' rx='2'/%3E%3Cpath d='m16 10 5-3v10l-5-3z'/%3E%3C/svg%3E");
--dm-ql-info:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v5M12 8h.01'/%3E%3C/svg%3E");
--dm-ql-fb:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000'%3E%3Cpath d='M13.5 22v-8h2.7l.4-3.2h-3.1V8.8c0-.9.3-1.6 1.6-1.6h1.7V4.4c-.3 0-1.3-.1-2.5-.1-2.5 0-4.1 1.5-4.1 4.2v2.3H7.4V14h2.8v8h3.3z'/%3E%3C/svg%3E");
}

/* ===== Секції головної: заголовок + «Усі …», картки, новини+події ===== */
.dm-home .dm-position-breadcrumbs{display:none}
.dm-layout-home{gap:0}.dm-layout-home .blog-featured:not(:has(*)){display:none}.dm-layout-home #system-message-container:empty{display:none}
.dm-module{position:relative}
.dm-module>h2{font-size:clamp(1.35rem,2.4vw,1.85rem)}
.dm-more{display:inline-flex;align-items:center;gap:6px;font-weight:600;text-decoration:none;color:var(--dm-primary);margin-top:18px}
.dm-more:hover{text-decoration:underline}
/* «Усі новини →» — під картками (зауваження замовника 23.09.2026: раніше стояло вгорі праворуч), кнопкою як «Усі події» */
.dm-cards~.dm-more{display:flex;justify-content:center;width:100%;min-height:48px;margin-top:20px;padding:10px 20px;border:2px solid var(--dm-primary);border-radius:999px;background:var(--dm-surface)}.dm-cards~.dm-more:hover{background:var(--dm-alt);text-decoration:none}
@media(max-width:700px){.dm-module>h2{padding-inline-end:0}}
.dm-cards{display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.dm-cards-1{grid-template-columns:minmax(0,1fr)}@media(min-width:701px){.dm-cards-1 .dm-card{flex-direction:row}.dm-cards-1 .dm-card-img{width:320px;flex:0 0 320px;height:auto;align-self:stretch}.dm-cards-1 .dm-card-b{justify-content:center;min-width:0}}.dm-cards-2{grid-template-columns:repeat(2,minmax(0,1fr))}.dm-cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}.dm-cards-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.dm-card{display:flex;flex-direction:column;background:var(--dm-surface);border:1px solid var(--dm-line);border-radius:var(--dm-radius);overflow:hidden;box-shadow:var(--dm-shadow);text-decoration:none;color:var(--dm-text);transition:border-color .15s,box-shadow .15s,transform .15s}
.dm-card:hover{border-color:var(--dm-primary);color:var(--dm-text);box-shadow:0 16px 40px -16px rgba(11,61,145,.35);transform:translateY(-2px)}
.dm-card:hover .dm-card-t{color:var(--dm-primary)}
.dm-card-img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;background:var(--dm-alt)}
.dm-card-empty{background:linear-gradient(135deg,var(--dm-alt),#fff4c2)}
.dm-card-b{display:flex;flex-direction:column;gap:8px;padding:18px 20px 22px}
.dm-cards:not(.dm-cards-media) .dm-card{border-inline-start:5px solid var(--dm-accent)}
.dm-meta{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;font-size:.85rem;color:var(--dm-muted)}
.dm-cat{font-weight:700;color:var(--dm-primary);font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}
.dm-card-t{margin:0;font-size:1.05rem;line-height:1.35;font-family:var(--dm-heading);font-weight:700;color:var(--dm-text)}
.dm-card-p{margin:0;color:var(--dm-muted);font-size:.93rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.dm-home-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:48px;align-items:start}
.dm-home-grid .dm-cards-3{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1100px){.dm-home-grid{grid-template-columns:minmax(0,1fr);gap:8px}}
@media(max-width:900px){.dm-cards-3,.dm-cards-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.dm-cards-2,.dm-cards-3,.dm-cards-4,.dm-home-grid .dm-cards-3{grid-template-columns:minmax(0,1fr)}.dm-cards{gap:16px}}
/* Події (mod_domanum_events) — токени пакета на токени шаблону */
.devents{--dev-pri:var(--dm-primary);--dev-acc:var(--dm-accent);--dev-t:var(--dm-text);--dev-m:var(--dm-muted);--dev-line:var(--dm-line);--dev-alt:var(--dm-alt);--dev-surface:var(--dm-surface);--dev-r:14px;font-family:var(--dm-body)}
.devents .ev-d b{font-family:var(--dm-heading)}
.devents .ev-all{margin-top:16px;width:100%;justify-content:center;border-radius:999px;border-width:2px}
:root[data-theme=contrast] .devents .ev-d,:root[data-theme=contrast] .devents .ev-tasks .ev-d{color:#000}
/* Проведені події: приглушення через opacity не проходило контраст (axe) — приглушуємо кольором */
.dm-main .devents .ev.is-past{opacity:1}.dm-main .devents .ev.is-past :is(.ev-t,.ev-p,.ev-d){color:var(--dm-muted)}.dm-main .devents .b-done,.dm-event .b-done{background:#e6e3dd;color:#474441}
:root[data-theme=contrast] .dm-card-empty{background:var(--dm-alt)}

/* ===== Category blog картками (Новини тощо) ===== */
.dm-blog>h1,.dm-blog>h2{margin-top:0}
.dm-blog .dm-cards{margin-top:8px}
.dm-blog .dm-card-t{font-size:1.02rem}
.dm-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:32px}
.dm-pagination .counter{margin:0;color:var(--dm-muted);font-size:.9rem}
.dm-pagination .pagination{margin:0;gap:6px}
.dm-pagination .page-link{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;padding:6px 10px;border:1px solid var(--dm-line);border-radius:10px;background:var(--dm-surface);text-decoration:none}
.dm-pagination .active .page-link{background:var(--dm-primary);color:#fff;border-color:var(--dm-primary)}
.dm-pagination .disabled .page-link{opacity:.45}
.dm-inner .dm-blog{background:transparent;padding:0;border:0}
/* Стрілки пагінації core (іконковий шрифт Cassiopeia не підключено) */
.icon-angle-double-left::before{content:"«"}.icon-angle-left::before{content:"‹"}.icon-angle-right::before{content:"›"}.icon-angle-double-right::before{content:"»"}
.dm-pagination [class^="icon-angle"]{font-size:1.2rem;line-height:1}

/* ===== Category list (Конкурси та заходи, Всеукраїнські…): підрозділи й матеріали — однакові списки назв без дат ===== */
.dm-catlist>h1{margin:0 0 20px}
.dm-catlist-desc{margin-bottom:24px}
.dm-list{list-style:none;margin:0;padding:0}
.dm-list-n{margin-inline-start:6px;font-size:.85rem;font-weight:400;color:var(--dm-muted);white-space:nowrap}
.dm-list-d{display:block;margin-top:2px;font-size:.9rem;font-weight:400;color:var(--dm-muted)}
.dm-list a::after{content:"";position:absolute;inset-inline-end:22px;top:50%;width:.5em;height:.5em;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:translateY(-50%) rotate(45deg);color:var(--dm-primary);transition:inset-inline-end .15s}
.dm-list a:hover::after{inset-inline-end:16px}
.dm-subcats{margin-bottom:36px}
.dm-catlist-h{font-size:1.1rem;margin:0 0 14px}
.dm-list{background:var(--dm-surface);border:1px solid var(--dm-line);border-radius:var(--dm-small);overflow:hidden}
.dm-list li+li{border-top:1px solid var(--dm-line)}
.dm-list a{position:relative;display:block;padding:15px 52px 15px 20px;color:var(--dm-text);font-weight:600;line-height:1.45;text-decoration:none;text-wrap:pretty;transition:background-color .15s,color .15s}
.dm-list a:hover{background:var(--dm-alt);color:var(--dm-primary)}
.dm-list a:focus-visible{outline-offset:-3px}
.dm-catlist-empty{color:var(--dm-muted)}
@media(max-width:600px){.dm-subcats{margin-bottom:28px}.dm-list a{padding:13px 44px 13px 16px}.dm-list a::after{inset-inline-end:18px}}
@media(prefers-reduced-motion:reduce){.dm-list a,.dm-list a::after{transition:none}}
@media(forced-colors:active){.dm-list{border:1px solid CanvasText}}

/* ===== Крок 14.1: стаття ===== */
.dm-article-head{margin-bottom:20px}
.dm-article-head .dm-meta{margin:0 0 10px;font-size:.9rem}
.dm-article-head h1{margin:0;font-size:clamp(1.45rem,2.6vw,2.15rem);line-height:1.25}
.dm-article-body{font-size:1.0625rem;line-height:1.7}
.dm-article-body>p:first-child{margin-top:0}
.dm-article-body img{height:auto;border-radius:12px}
.dm-article-body figure{margin:24px 0}.dm-article-body figcaption{font-size:.9rem;color:var(--dm-muted);margin-top:8px}
.dm-article-body iframe.video,.dm-article-body iframe[src*="youtube"]{width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:12px}
.dm-article-body blockquote:not(.dm-quote){margin:24px 0;padding:16px 22px;border-left:4px solid var(--dm-accent);background:var(--dm-alt);border-radius:0 12px 12px 0}
.dm-article-body h2,.dm-article-body h3{margin-top:1.6em}
.dm-article-body ul:not(.dm-lcards,.steps,.dgal-grid),.dm-article-body ol:not(.steps){padding-inline-start:1.4em}.dm-article-body .dm-docs>ul{padding-inline-start:0}
.dm-article-body a{text-decoration-thickness:1px}
.dm-article-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
/* Документ (PDF та інші файли): плитка з іконкою та розширенням */
/* Посилання на документ (a.doc — імпортер зі старих {pdf=…}): звичайне текстове посилання + маленька позначка типу файла після назви
   (1.4.2, замовник: раніше була плитка з іконкою — «становиться картинкою»). Звичайні посилання на PDF із JCE не змінюються. */
.dm-article-body a.doc::after{content:"файл";display:inline-block;margin-inline-start:6px;padding:0 6px;border:1px solid currentColor;border-radius:4px;font-size:.68em;font-weight:700;line-height:1.5;letter-spacing:.04em;vertical-align:.12em;text-decoration:none;opacity:.8}
.dm-article-body a.doc-pdf::after,.dm-article-body a.doc[href$=".pdf" i]::after{content:"PDF"}
.dm-article-body a.doc[href$=".docx"]::after,.dm-article-body a.doc[href$=".doc"]::after{content:"DOC"}
.dm-article-body a.doc[href$=".xlsx"]::after,.dm-article-body a.doc[href$=".xls"]::after{content:"XLS"}
.dm-article-body a.doc[href$=".pptx"]::after{content:"PPT"}
.dm-article-body a.doc[href$=".zip"]::after{content:"ZIP"}
/* Галерея, блоки, завдання пакета — на токени шаблону (контраст успадковується) */
.dgal{--dgal-pri:var(--dm-primary);--dgal-acc:var(--dm-accent);--dgal-t:var(--dm-text);--dgal-m:var(--dm-muted);--dgal-r:12px}
.fold,.steps,.empty{--dblk-pri:var(--dm-primary);--dblk-acc:var(--dm-accent);--dblk-t:var(--dm-text);--dblk-m:var(--dm-muted);--dblk-line:var(--dm-line);--dblk-alt:var(--dm-alt);--dblk-surface:var(--dm-surface);--dblk-r:14px}
:root[data-theme=contrast] .fold,:root[data-theme=contrast] .steps,:root[data-theme=contrast] .empty{--dblk-tint:#333;--dblk-tint-h:#444;--dblk-info-bg:#222;--dblk-ok-bg:#1e2e24;--dblk-warn-bg:#332a1a}
.dtasks{--dtask-pri:var(--dm-primary);--dtask-acc:var(--dm-accent);--dtask-t:var(--dm-text);--dtask-m:var(--dm-muted);--dtask-line:var(--dm-line);--dtask-alt:var(--dm-alt);--dtask-surface:var(--dm-surface);--dtask-r:14px}
:root[data-theme=contrast] .dtasks{--dtask-tint:#333}
/* Читайте також */
.dm-related{margin-top:40px}
.dm-related h2{font-size:1.4rem;margin:0 0 18px}
.dm-related .dm-card-t{font-size:.98rem}
.dm-related>p{margin:16px 0 0}
/* Поля com_fields (Подія) — компактний список */
.dm-article .fields-container{margin:16px 0;padding:14px 18px;background:var(--dm-alt);border-radius:12px}
.dm-article .fields-container .field-entry{margin:4px 0}.dm-article .fields-container .field-label{font-weight:600}
/* Старий контент з inline-шрифтами (Verdana/Times у style="") — шрифт шаблону скрізь */
.dm-article-body :is(p,span,li,td,th,div,a,strong,em){font-family:inherit!important}

/* ===== Крок 14.2: панель «Подія» на сторінці заходу; бічна колонка олімпіад ===== */
.dm-event{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:0 0 24px;padding:16px 20px;background:var(--dm-alt);border-radius:14px;border-inline-start:5px solid var(--dm-accent)}
.dm-event.is-done{border-inline-start-color:var(--dm-line)}
.dm-event-i{display:flex;flex-direction:column;gap:4px;font-weight:600;line-height:1.35}
.dm-event-l{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--dm-muted)}
.dm-event .badge{display:inline-flex;align-items:center;align-self:flex-start;height:26px;padding:0 10px;border-radius:999px;font-size:.8rem;font-weight:700}
.dm-event .b-soon{background:var(--dm-surface);color:var(--dm-muted);border:1px dashed var(--dm-line)}.dm-event .b-registration{background:#fff6cc;color:#7a5a00}.dm-event .b-running{background:#e7f6ea;color:#1b6b34}.dm-event .b-done{background:#ececec;color:#666}
:root[data-theme=contrast] .dm-event .badge{background:#333;color:#fff;border:1px solid #aaa}
.dm-event-cta{justify-content:center}.dm-event-cta .btn{border-radius:999px;align-self:flex-start}
.dm-has-right aside .dm-module{position:sticky;top:120px;background:var(--dm-surface);border:1px solid var(--dm-line);border-radius:var(--dm-radius);padding:18px 20px}
.dm-has-right aside .dm-module>h2{font-size:1.1rem;margin-bottom:14px}
.dm-has-right aside .devents{font-size:.92rem}
@media(max-width:1100px){.dm-has-right aside .dm-module{position:static}}

/* ===== Крок 14.3: контакти, пошук, помилки ===== */
.dm-contact>h1{margin:0 0 6px}.dm-contact-pos{color:var(--dm-muted);margin:0 0 24px}
.dm-contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:28px}
.dm-contact-card{display:flex;flex-direction:column;gap:6px;padding:18px 20px 18px 66px;border:1px solid var(--dm-line);border-radius:14px;background:var(--dm-alt);position:relative;font-weight:600;line-height:1.4}
.dm-contact-card::before{content:"";position:absolute;left:16px;top:18px;width:38px;height:38px;border-radius:12px;background:var(--dm-primary);-webkit-mask:var(--dm-ci,var(--dm-ql-info)) center/24px no-repeat;mask:var(--dm-ci,var(--dm-ql-info)) center/24px no-repeat}
.dm-ci-map{--dm-ci:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s7-6.2 7-12a7 7 0 0 0-14 0c0 5.8 7 12 7 12z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E")}
.dm-ci-phone{--dm-ci:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2z'/%3E%3C/svg%3E")}
.dm-ci-mail{--dm-ci:var(--dm-ql-mail)}.dm-ci-web{--dm-ci:var(--dm-ql-link)}
.dm-contact-l{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--dm-muted)}
.dm-contact-card address{font-style:normal}.dm-contact-card a{text-decoration:none}.dm-contact-card a:hover{text-decoration:underline}.dm-contact-card .dm-more{font-size:.9rem;margin-top:4px}
.dm-contact-misc iframe{width:100%;border:0;border-radius:12px}
/* Пошук (core com_finder) */
.com-finder .com-finder__tips,.com-finder .filter-branch,.com-finder .result__taxonomy--Author,.com-finder .result__taxonomy--Type{display:none}
.com-finder .form-inline{margin-bottom:24px}.com-finder .input-group{display:flex;gap:8px;flex-wrap:wrap;max-width:640px}
.com-finder .input-group input{flex:1;min-width:200px;min-height:46px;border-radius:999px;padding:10px 18px}
.com-finder .btn{border-radius:999px;background:var(--dm-primary);color:var(--dm-surface);border-color:var(--dm-primary);min-height:46px}:root[data-theme=contrast] .com-finder .btn{color:#000}
.com-finder .btn .icon-search{display:none}
.com-finder .result__item{padding:18px 0;border-bottom:1px solid var(--dm-line)}
.com-finder .result__title{font-size:1.1rem;margin:0 0 6px;font-family:var(--dm-heading)}.com-finder .result__title a{text-decoration:none}.com-finder .result__title a:hover{text-decoration:underline}
.com-finder .result__description{margin:0 0 6px;color:var(--dm-text)}.com-finder .result__date,.com-finder .result__taxonomy{font-size:.85rem;color:var(--dm-muted);display:inline-flex;gap:10px;margin:0}
.com-finder .result__taxonomy dt{font-weight:400}.com-finder .result__taxonomy dd{margin:0}
.com-finder .search-pagination{margin-top:24px}
.com-finder .form-limit{display:none}
/* Сторінка помилки */
.dm-error-box{max-width:640px;margin:48px auto 72px;text-align:center}
.dm-error-code{font:800 clamp(4rem,12vw,7rem)/1 var(--dm-heading);color:var(--dm-primary);margin:0 0 8px;background:linear-gradient(transparent 68%,var(--dm-accent) 68%,var(--dm-accent) 92%,transparent 92%);display:inline-block;padding:0 .1em}
.dm-error-box h1{margin:8px 0 12px}.dm-error-box p{color:var(--dm-muted)}
.dm-error-search{display:flex;gap:8px;max-width:460px;margin:20px auto}.dm-error-search input{flex:1;border-radius:999px;padding:10px 18px}.dm-error-search .btn{border-radius:999px}
.dm-error-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.dm-error-links .btn{border-radius:999px}
.com-finder .result__title-url{display:none}.com-finder .result__title-link{display:block}
.com-finder hr,.com-finder .result__item+hr{display:none}
.com-finder .result__description{margin-top:4px}
.com-finder .result__date{display:block;margin-bottom:4px}
.com-finder .result__taxonomy--Category::before{content:none}.com-finder .result__taxonomy--Category{gap:4px}
.com-finder fieldset{border:1px solid var(--dm-line);border-radius:14px;padding:16px 20px;margin:0 0 20px}.com-finder legend{font-weight:600;padding:0 6px}
.com-finder .form-inline .btn+.btn{background:var(--dm-surface);color:var(--dm-primary)}

/* Підвал: модулі колонок (chrome domanum → section.dm-module > h2 + вміст) */
.dm-footer .dm-module{margin:0;position:static}.dm-footer .dm-module>h2{font:700 1rem var(--dm-body);margin:0 0 18px;padding:0;color:inherit}
.dm-footer .dm-module p{margin:0 0 8px}.dm-footer .dm-module ul{list-style:none;margin:0;padding:0}.dm-footer .dm-module li{margin-block:8px}
.dm-footer .dm-module a{display:inline-block;margin:0}.dm-footer .dm-module li>a{display:block}
.dm-footer .dm-module .dm-footer-title{font:700 1.6rem var(--dm-heading);color:#f5c400;margin:0 0 8px}

/* ===== Напрями та секції (html/mod_menu/directions.php): одна сітка квадратних плиток «іконка + назва» (23.09.2026) ===== */
.dm-dir-lead{margin:-12px 0 24px;color:var(--dm-muted);max-width:62ch}
/* 1.7.3: до 7 у ряду (--dir-row з PHP, ряди порівну), ширина плитки = частка ряду з --dir-size (6 або 7) — однакова за будь-якої кількості,
   не вужча за 150 px; блок і неповний ряд — по центру. ≤1100 px — до 5 у ряду (--dir-row-t), плитка = ⅕ ряду. */
.dm-dir-list{--g:16px;--m:150px;--r:var(--dir-row,7);--s:var(--dir-size,7);list-style:none;margin:0 auto;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--g);max-inline-size:max(calc((100% - (var(--s) - 1) * var(--g)) / var(--s) * var(--r) + (var(--r) - 1) * var(--g)),calc(var(--r) * var(--m) + (var(--r) - 1) * var(--g)))}
.dm-dir-list li{display:flex;min-width:min(100%,var(--m));container-type:inline-size;flex:0 1 calc((100% - (var(--r) - 1) * var(--g)) / var(--r))}
@media(max-width:1100px) and (min-width:601px){.dm-dir-list{--r:var(--dir-row-t,5);--s:5}}
.dm-dir-a{flex:1;min-width:0;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:14px 8px;min-height:154px;text-align:center;background:var(--dm-surface);border:1px solid var(--dm-line);border-radius:var(--dm-radius);box-shadow:var(--dm-shadow);text-decoration:none;color:var(--dm-text);font-weight:600;line-height:1.3;transition:border-color .15s,box-shadow .15s,transform .15s}
.dm-dir-a:hover{border-color:var(--dm-primary);color:var(--dm-primary);transform:translateY(-3px);box-shadow:0 16px 36px -16px rgba(11,61,145,.35)}
.dm-dir .dm-ico,.dm-dir-list .dm-ico{width:56px;height:56px;border-radius:50%;background:#e8eef9;transition:background .15s}
.dm-dir-a:hover .dm-ico{background:#fff3c4}
:root[data-theme=contrast] .dm-dir-list .dm-ico,:root[data-theme=contrast] .dm-dir-a:hover .dm-ico{background:var(--dm-alt)}
.dm-dir-list .dm-ico:not(.dm-ico-img)::before{content:"";width:28px;height:28px;background:var(--dm-primary);-webkit-mask:var(--ico,var(--dm-ql-link)) center/contain no-repeat;mask:var(--ico,var(--dm-ql-link)) center/contain no-repeat}
.dm-dir-list .dm-ico-img{border-radius:16px;background:none}
/* Назва до 3 рядків, переноси лише цілими словами (без «довкі-лля»), рядки вирівняні. Розмір шрифту — не більший за --fs і такий, щоб
   найдовше слово (--lw знаків, з PHP; ≈0,56 em на знак) вмістилось у ширину плитки (100cqi − поля); довга назва (> 26 знаків,
   dm-dir-long) — --fs менший, щоб повна назва вмістилась у квадрат */
.dm-dir-t{--fs:.95rem;--pad:18px;font-size:max(11px,min(var(--fs),(100cqi - var(--pad)) / (var(--lw,10) * .56)));flex-shrink:0;overflow-wrap:break-word;text-wrap:balance;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
.dm-dir-t.dm-dir-long{--fs:.85rem;line-height:1.25}
/* усі плитки однакові: висота рядів = найвища плитка (aspect-ratio лише мінімум) */
@media(max-width:900px) and (min-width:601px){.dm-dir-list{--g:12px;--m:120px}.dm-dir-a{gap:8px;padding:12px 6px;min-height:140px}.dm-dir-list .dm-ico{width:52px;height:52px}.dm-dir-list .dm-ico:not(.dm-ico-img)::before{width:26px;height:26px}.dm-dir-t{--fs:.88rem;--pad:14px}}
@media(prefers-reduced-motion:reduce){.dm-dir-a:hover{transform:none}}
/* Телефон: якщо плиток більше 4 — стрічка у 2 ряди, гортається пальцем (≈2,4 плитки в ряду видно, праворуч згасання); до 4 — сітка 2×2 */
@media(max-width:600px){
.dm-dir-lead{margin:-8px 0 16px}
.dm-dir-list{display:grid;justify-content:normal;max-inline-size:none;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.dm-dir-list li{min-width:0}
.dm-dir-list.dm-dir-strip{grid-template-columns:none;grid-template-rows:repeat(2,1fr);grid-auto-rows:auto;grid-auto-flow:column;grid-auto-columns:clamp(120px,(100% - 20px) / 2.4,170px);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--dm-gutter);margin-inline:calc(-1 * var(--dm-gutter));padding:4px var(--dm-gutter) 10px;scrollbar-width:none;-webkit-mask:linear-gradient(90deg,#000 calc(100% - 28px),transparent);mask:linear-gradient(90deg,#000 calc(100% - 28px),transparent)}
.dm-dir-strip::-webkit-scrollbar{display:none}.dm-dir-strip li{scroll-snap-align:start}.dm-dir-list.is-end{-webkit-mask:none;mask:none}
.dm-dir-a{gap:10px;padding:12px 6px;min-height:0;border-radius:14px}.dm-dir-a:hover{transform:none}
.dm-dir-list .dm-ico{width:52px;height:52px}.dm-dir-list .dm-ico:not(.dm-ico-img)::before{width:26px;height:26px}
.dm-dir-t{--fs:.85rem;--pad:22px;-webkit-line-clamp:4;line-clamp:4}.dm-dir-t.dm-dir-long{--fs:.78rem}
}

/* ===== Карусель карток на телефоні (зауваження замовника 23.09.2026): «Важливо», «Останні новини» — одна картка на екрані,
   край наступної видно, гортається пальцем (scroll-snap), картки однакової висоти; під нею ← 1 / 4 → (template.js). Десктоп — сітка. ===== */
.dm-car-nav{display:none}
@media(max-width:600px){
.dm-cards.dm-carousel{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:86%;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--dm-gutter);margin-inline:calc(-1 * var(--dm-gutter));padding:4px var(--dm-gutter) 8px;scrollbar-width:none}
.dm-cards.dm-carousel::-webkit-scrollbar{display:none}
.dm-carousel>.dm-card{scroll-snap-align:start}.dm-carousel>.dm-card:hover{transform:none}
.dm-carousel .dm-card-img{aspect-ratio:16/9}.dm-carousel .dm-card-b{padding:14px 16px 18px}.dm-carousel .dm-card-t{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.dm-carousel .dm-card-p{-webkit-line-clamp:2}
.dm-car-nav{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:6px}
.dm-car-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--dm-line);background:var(--dm-surface);color:var(--dm-primary);display:inline-flex;align-items:center;justify-content:center;padding:0}
.dm-car-btn::before{content:"";width:9px;height:9px;border-left:2.5px solid currentColor;border-bottom:2.5px solid currentColor;transform:translateX(2px) rotate(45deg)}
.dm-car-next::before{transform:translateX(-2px) rotate(-135deg)}
.dm-car-btn:disabled{opacity:.35;cursor:default}
.dm-car-count{min-width:48px;text-align:center;font-weight:600;font-size:.9rem;color:var(--dm-muted);font-variant-numeric:tabular-nums}
.dm-car-nav+.dm-more{margin-top:12px}
}

/* ===== Ритм головної (23.09.2026): кожен логічний блок — смуга на всю ширину з власним тлом (біле / пісочне / блакитне),
   однакові відступи, жовта риска над заголовком блоку. Тло на всю ширину — border-image з outset (не впливає на розкладку й
   не дає горизонтальної прокрутки); вміст лишається в .dm-wrap. ===== */
.dm-home{--dm-band-pad:40px}
.dm-home .dm-position-important,.dm-home .dm-home-grid,.dm-home .dm-position-home-sections,.dm-home .dm-position-home-achievements,.dm-home .dm-position-home-partners,.dm-home .dm-layout-home~.dm-position-home-news,.dm-home .dm-layout-home~.dm-position-home-events{padding-block:var(--dm-band-pad);border-image:linear-gradient(var(--dm-band,var(--dm-bg)) 0 0) fill 0/0/0 100vw}
.dm-home .dm-position-important{--dm-band:var(--dm-surface)}
.dm-home .dm-band-hero+.dm-wrap>.dm-position-important:first-child{margin-top:0}
.dm-home .dm-position-home-sections{--dm-band:#eef3fb}
:root[data-theme=contrast] .dm-home .dm-position-home-sections{--dm-band:var(--dm-alt)}
.dm-home .dm-position-important .dm-module,.dm-home .dm-home-grid .dm-module,.dm-home .dm-position-home-sections .dm-module{margin-bottom:0}
.dm-home .dm-main{padding-bottom:0}.dm-home .dm-main>.dm-wrap>:last-child{margin-bottom:0}
.dm-home .dm-module>h2{margin-bottom:16px}
/* картки на білій смузі — тло трохи тепліше, щоб не зливались із нею */
.dm-home .dm-position-important .dm-card{background:var(--dm-bg)}
.dm-home .dm-home-grid{gap:48px}
@media(max-width:1100px){.dm-home .dm-home-grid{gap:0}.dm-home .dm-position-home-events{margin-top:var(--dm-band-pad)}}
@media(max-width:600px){.dm-home{--dm-band-pad:28px}}

/* ===== Лого-блок у шапці (1.4.0): емблема | коротка назва (Unbounded) + повна назва дрібно; на планшеті — лише коротка назва,
   на телефоні — коротка назва у 2 рядки; на екранах <420px — лише емблема (місце займають Пошук/Аа/Меню) ===== */
.dm-lockup{display:flex;flex-direction:column;gap:3px;max-width:460px}
.dm-lockup-title{font:800 1.3rem/1.1 var(--dm-heading);color:var(--dm-primary);letter-spacing:.01em}
.dm-lockup-sub{font:600 .82rem/1.35 var(--dm-body);color:var(--dm-muted);letter-spacing:0}
@media(max-width:1100px){.dm-tagline.dm-lockup{display:flex}.dm-lockup-sub{display:none}.dm-lockup-title{font-size:1.1rem}}
@media(max-width:600px){.dm-tagline.dm-lockup{padding-inline-start:10px;border-inline-start-width:3px;min-width:0}.dm-lockup-title{font-size:.84rem;line-height:1.12;width:min-content;min-width:6.2em}}
@media(max-width:419px){.dm-tagline.dm-lockup{display:none}}
@media(max-width:600px){:root[data-fontsize=l] .dm-tagline.dm-lockup,:root[data-fontsize=xl] .dm-tagline.dm-lockup{display:none}}

/* Закріплена шапка (1.4.0, замовник): лише коли меню згорнуте в кнопку «Меню» (телефон/планшет, html[data-nav=drawer]);
   на десктопі зі смугою меню шапка прокручується разом зі сторінкою. Параметр стилю «Закріплена шапка» вимикає й це. */
.dm-sticky{position:relative}
html[data-nav=drawer] .dm-sticky{position:sticky;top:0}

/* ===== Стилі тексту зі списку «Стилі» JCE (1.5.0; список задає plg_content_domanumgallery → onBeforeWfEditorSettings).
   Без префікса .dm-article-body — працюють і в модулях (mod_custom). У редакторі той самий вигляд дає css/editor.css. ===== */
p.dm-lead{font-size:1.2rem;line-height:1.55;font-weight:500;color:var(--dm-text)}
p.dm-accent{padding:14px 18px;border-inline-start:4px solid var(--dm-accent);background:var(--dm-alt);border-radius:0 12px 12px 0}
p.dm-note{font-size:.875rem;line-height:1.55;color:var(--dm-muted)}
.dm-mark{background:linear-gradient(transparent 52%,#ffe27a 52%);padding-inline:.12em;border-radius:2px}
:root[data-theme=contrast] .dm-mark{background:var(--dm-primary);color:#000}
img.dm-img-frame{border-radius:var(--dm-radius);box-shadow:0 14px 34px -14px rgba(11,61,145,.4)}
table.dm-table-zebra{border:1px solid var(--dm-line);border-radius:12px;overflow:hidden}
.dm-article-body table.dm-table-zebra{display:table;width:100%;overflow:hidden}
table.dm-table-zebra th{background:var(--dm-primary);color:#fff;text-align:start}
:root[data-theme=contrast] table.dm-table-zebra th{color:#000}
table.dm-table-zebra tbody tr:nth-child(even){background:var(--dm-alt)}
table.dm-table-zebra td,table.dm-table-zebra th{padding:10px 14px;border-bottom:0}
table.dm-table-plain,table.dm-table-plain td,table.dm-table-plain th{border:0!important;background:none}
table.dm-table-plain td,table.dm-table-plain th{padding:6px 16px 6px 0}
/* Кнопка (.dm-btn), виноска (.dm-callout), цитата (.dm-quote) — базові стилі в blocks.css пакета (їх бачить і прев'ю вікна «Блок»);
   шаблон підключає blocks.css на кожній сторінці (setup.php) і дає токени/контраст нижче */
.dm-btn,.dm-callout,.dm-quote,.dm-docs,.dm-lcards,.dm-media,.dm-people{--dblk-pri:var(--dm-primary);--dblk-hover:var(--dm-hover);--dblk-acc:var(--dm-accent);--dblk-t:var(--dm-text);--dblk-m:var(--dm-muted);--dblk-line:var(--dm-line);--dblk-alt:var(--dm-alt);--dblk-surface:var(--dm-surface);--dblk-r:14px}
:root[data-theme=contrast] a.dm-btn:not(.dm-btn-sec){color:#000}:root[data-theme=contrast] a.dm-btn:hover{background:#fff;border-color:#fff;color:#000}
:root[data-theme=contrast] .dm-callout{--cb:var(--dm-alt);--c:var(--dm-primary)}
:root[data-theme=contrast] .dm-quote{background:var(--dm-alt)}
:root[data-theme=contrast] .dm-lcards .dm-lcard-ico{background:var(--dm-alt);filter:brightness(0) invert(1)}
:root[data-theme=contrast] .dm-person>.dm-person-ini{background:var(--dm-alt)}

/* ===== Ревізія 1.5.5: text-wrap. Обмеження ширини тексту (68ch) прибрано в 1.5.7 за словом замовника — текст на всю ширину блоку ===== */
.dm-article-body :is(h1,h2,h3,h4){text-wrap:balance}
.dm-article-body p{text-wrap:pretty}
.dm-card-t,.dm-slide-title,.dm-module>h2{text-wrap:balance}

/* ===== 1.6.0 (24.09.2026): компактна головна. «Важливо» — текстові картки-оголошення (без зображень: жовта смуга, дата·розділ,
   назва, 3 рядки вступу, «Детальніше →»); «Останні новини» — картка першої новини + список «дата + назва» (mod_articles/newslist.php). ===== */
.dm-cards:not(.dm-cards-media) .dm-card-b{height:100%;gap:6px;padding:14px 18px}
.dm-cards:not(.dm-cards-media) .dm-card-t{font-size:1.02rem}
.dm-cards:not(.dm-cards-media) .dm-card-p{-webkit-line-clamp:2;font-size:.9rem}
.dm-card-go{margin-top:auto;font-weight:600;font-size:.85rem;color:var(--dm-primary)}
.dm-card:hover .dm-card-go{text-decoration:underline}
.dm-cards:not(.dm-cards-media){gap:16px}
@media(max-width:900px){.dm-cards-3:not(.dm-cards-media):not(.dm-slider){grid-template-columns:minmax(0,1fr)}}
@media(min-width:901px){.dm-cards.dm-slider-m{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:repeat(var(--dm-vis),minmax(0,1fr));overflow:visible;scroll-snap-type:none}.dm-slider-m+.dm-car-nav{display:none}}
/* 1.6.1: карток більше, ніж колонок, — слайдер (3 / 2 / 1 видимі), стрілки й лічильник під ним */
.dm-cards.dm-slider{--dm-vis:3;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--dm-vis) - 1) * 16px) / var(--dm-vis));overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding-block:2px 6px}
.dm-cards.dm-slider::-webkit-scrollbar{display:none}
.dm-slider>.dm-card{scroll-snap-align:start}.dm-slider>.dm-card:hover{transform:none}
.dm-cards-2.dm-slider{--dm-vis:2}.dm-cards-4.dm-slider{--dm-vis:4}
@media(max-width:900px){.dm-cards.dm-slider{--dm-vis:2}}
@media(max-width:600px){.dm-cards.dm-slider{--dm-vis:1;grid-auto-columns:86%}}
.dm-slider+.dm-car-nav{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:8px}
@media(min-width:601px){.dm-slider+.dm-car-nav .dm-car-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--dm-line);background:var(--dm-surface);color:var(--dm-primary);display:inline-flex;align-items:center;justify-content:center;padding:0}.dm-slider+.dm-car-nav .dm-car-btn::before{content:"";width:9px;height:9px;border-left:2.5px solid currentColor;border-bottom:2.5px solid currentColor;transform:translateX(2px) rotate(45deg)}.dm-slider+.dm-car-nav .dm-car-next::before{transform:translateX(-2px) rotate(-135deg)}.dm-slider+.dm-car-nav .dm-car-btn:disabled{opacity:.35;cursor:default}.dm-slider+.dm-car-nav .dm-car-count{min-width:48px;text-align:center;font-weight:600;font-size:.9rem;color:var(--dm-muted);font-variant-numeric:tabular-nums}}
/* 1.6.1: головна компактніша — без жовтої риски над заголовками блоків (замовник), смуги 40/28 px замість 56/40, під заголовком 16 px;
   «Важливо» ще щільніше — 32/24 px */
.dm-home .dm-position-important{--dm-band-pad:32px}
@media(max-width:600px){.dm-home .dm-position-important{--dm-band-pad:24px}}
.dm-newslist{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start}
.dm-newslist-1{grid-template-columns:minmax(0,1fr)}
.dm-news-lead .dm-card-t{font-size:1.12rem}
.dm-news-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--dm-line)}
.dm-news-list li{border-bottom:1px solid var(--dm-line)}
.dm-news-list a{display:flex;flex-direction:column;gap:4px;padding:14px 4px;text-decoration:none;color:var(--dm-text)}
.dm-news-t{margin:0;font:700 .98rem/1.4 var(--dm-heading);color:inherit;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-wrap:balance}
.dm-news-list a:hover .dm-news-t{color:var(--dm-primary);text-decoration:underline;text-decoration-thickness:1px}
.dm-newslist~.dm-more{display:flex;justify-content:center;width:100%;min-height:48px;margin-top:20px;padding:10px 20px;border:2px solid var(--dm-primary);border-radius:999px;background:var(--dm-surface)}.dm-newslist~.dm-more:hover{background:var(--dm-alt);text-decoration:none}
@media(max-width:700px){.dm-newslist{grid-template-columns:minmax(0,1fr);gap:8px}.dm-news-lead .dm-card-img{aspect-ratio:16/9}.dm-news-lead .dm-card-p{-webkit-line-clamp:2}.dm-news-list{border-top:0}.dm-news-list a{padding:12px 2px}.dm-news-t{-webkit-line-clamp:2}}
/* 1.6.3: «Найближчі події» з головної прибрано (замовник) — новини на всю ширину: блок ширший за 900 px → картка першої новини (⅓)
   + список у 2 колонки (⅔), рядки вирівняні між колонками. Container query — щоб у вузькій колонці (поруч із подіями) лишалось як було. */
.dm-position-home-news{container-type:inline-size}
@container (min-width:900px){
.dm-newslist{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:32px}
.dm-news-lead .dm-card-img{aspect-ratio:16/9}
.dm-news-lead .dm-card-p{-webkit-line-clamp:2}
.dm-news-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px;align-content:start;border-top:0}
.dm-news-list li:nth-child(-n+2){border-top:1px solid var(--dm-line)}
.dm-newslist~.dm-more{width:auto;max-width:360px;margin-inline:auto}
}
/* вузький блок (планшет/телефон): 1 + 4, як до 1.6.3 — решта лише на широкому */
@container (max-width:899px){.dm-news-list li:nth-child(n+5){display:none}}
/* 1.6.4: «Усі новини →» — текстове посилання праворуч у рядку заголовка блоку (замість кнопки-«пігулки» під списком, замовник) */
.dm-module:has(>.dm-newslist){display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;column-gap:16px}
.dm-module:has(>.dm-newslist)>h2{grid-row:1;grid-column:1}
.dm-module:has(>.dm-newslist)>.dm-newslist{grid-row:2;grid-column:1/-1}
.dm-module>.dm-newslist~.dm-more{grid-row:1;grid-column:2;display:inline-flex;width:auto;max-width:none;min-height:0;margin:0;padding:4px 0;border:0;border-radius:0;background:none;font-weight:600;font-size:.95rem;white-space:nowrap;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.25em}
.dm-module>.dm-newslist~.dm-more:hover{background:none;text-decoration-thickness:2px}
/* 1.6.5: крапки слайдера героя (≤900px): кнопка 24×24 (ціль дотику), видима крапка 8px, активна — витягнута синя */
.dm-hero-dots{display:none}
@media(max-width:900px){.dm-hero-dots{display:flex;justify-content:center;gap:4px;padding-bottom:14px}
.dm-hero-dots button{width:24px;height:24px;padding:0;border:0;background:none;display:inline-flex;align-items:center;justify-content:center}
.dm-hero-dots button::before{content:"";width:8px;height:8px;border-radius:4px;background:var(--dm-muted);opacity:.45;transition:width .25s,opacity .25s,background .25s}
.dm-hero-dots button[aria-current=true]::before{width:22px;background:var(--dm-primary);opacity:1}}
html:not(.dm-js) .dm-hero-dots{display:none}
/* 1.11.0 — види слайдів з поля «Вигляд слайда» (pkg_domanum 0.7.14; зразок /design/hero-modes/, обрано замовником 24.09.2026) */
/* фото на весь слайд: десктоп і телефон горизонтально — фото на всю смугу, затемнення зліва, білий текст; телефон вертикально — фото зверху */
.dm-slide-cover{position:relative;overflow:hidden}
.dm-cover-img{display:block;object-fit:cover;object-position:var(--fp,50% 50%)}
@media(min-width:901px){
.dm-slide-cover .dm-cover-img{position:absolute;inset:0;width:100%;height:100%}
.dm-slide-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,24,58,.82) 0%,rgba(8,24,58,.55) 38%,rgba(8,24,58,0) 68%);pointer-events:none}
.dm-slide-cover .dm-slide-in{position:relative;z-index:1;grid-template-columns:minmax(0,1fr)}
.dm-slide-cover .dm-slide-body{max-width:560px}
}
@media(max-width:900px){
.dm-slide-cover{display:flex;flex-direction:column}
.dm-slide-cover .dm-cover-img{width:100%;height:calc(var(--dm-hero-media) + 20px);flex:none}
.dm-slide-cover .dm-slide-in{flex:1 1 auto;height:auto;min-height:0;align-content:start;padding-top:16px}
}
@media(max-width:900px) and (orientation:landscape) and (max-height:500px){
.dm-slide-cover{display:block}
.dm-slide-cover .dm-cover-img{position:absolute;inset:0;width:100%;height:100%}
.dm-slide-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,24,58,.85) 0%,rgba(8,24,58,.55) 45%,rgba(8,24,58,0) 75%);pointer-events:none}
.dm-slide-cover .dm-slide-in{position:relative;z-index:1;height:100%;grid-template-columns:minmax(0,1fr)}.dm-slide-cover .dm-slide-body{max-width:62%}
}
@media(min-width:901px),(max-width:900px) and (orientation:landscape) and (max-height:500px){
.dm-slide-cover .dm-slide-title{color:#fff}.dm-slide-cover .dm-slide-text{color:rgba(255,255,255,.9)}
:root:not([data-theme=contrast]) .dm-slide-cover .btn-pri{background:var(--dm-accent,#f5c400);border-color:var(--dm-accent,#f5c400);color:#15213a}
:root:not([data-theme=contrast]) .dm-slide-cover .btn-sec{background:transparent;border-color:#fff;color:#fff}
:root:not([data-theme=contrast]) .dm-slide-cover .btn:focus-visible{outline-color:#fff}
}
/* 1.11.1 — «Уся висота» (фокус whole): фото = висота смуги, ширина за пропорцією; ширше — обрізаються боки, вужче — розмита копія по боках.
   Десктоп і телефон горизонтально — фото праворуч (текст зліва менше закриває фото), телефон вертикально — по центру рамки */
.dm-cover-whole{isolation:isolate}
.dm-cover-whole::before{content:"";position:absolute;inset:-40px;z-index:-1;background:var(--bg) center/cover;filter:blur(30px) saturate(1.2) brightness(.85)}
@media(min-width:901px),(max-width:900px) and (orientation:landscape) and (max-height:500px){.dm-cover-whole .dm-cover-img{inset:0 0 0 auto;width:auto;max-width:none;height:100%;object-fit:fill}}
@media(max-width:900px) and (not ((orientation:landscape) and (max-height:500px))){.dm-cover-whole::before{inset:-40px -40px auto;height:calc(var(--dm-hero-media) + 60px)}
.dm-cover-whole .dm-cover-img{width:auto;max-width:none;align-self:center;object-fit:fill}}
:root[data-theme=contrast] .dm-cover-whole::before{display:none}
/* постер на розмитому тлі: --bg — мала копія картинки (640 px), розмита; світла вуаль під текстом */
.dm-slide-blur{position:relative;overflow:hidden;isolation:isolate}
/* 1.11.4: спроба 1.11.3 (тло на повну яскравість) — замовнику «дуже виділяється», повернуто м'який вигляд 1.11.0 */
.dm-slide-blur::before{content:"";position:absolute;inset:-40px;z-index:-1;background:var(--bg) center/cover;filter:blur(34px) saturate(1.25);opacity:.5}
@media(min-width:901px),(max-width:900px) and (orientation:landscape) and (max-height:500px){.dm-slide-blur::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(251,247,239,.85) 0%,rgba(251,247,239,.55) 55%,rgba(251,247,239,.15) 100%)}
.dm-slide-blur.dm-img-left::after{background:linear-gradient(270deg,rgba(251,247,239,.85) 0%,rgba(251,247,239,.55) 55%,rgba(251,247,239,.15) 100%)}}
@media(max-width:900px) and (not ((orientation:landscape) and (max-height:500px))){.dm-slide-blur::before{inset:-40px -40px auto;height:calc(var(--dm-hero-media) + 100px);opacity:.6}
.dm-slide-blur::after{content:"";position:absolute;inset:calc(var(--dm-hero-media) + 20px) 0 0;z-index:-1;background:linear-gradient(180deg,rgba(251,247,239,0),var(--dm-bg) 60px)}}
/* текст на кольоровому тлі: синє (кнопка соняшникова) / соняшникове (кнопка синя), легкі кола-«хвилі» */
.dm-tone-blue,.dm-tone-sun{position:relative;overflow:hidden;isolation:isolate}
.dm-tone-blue{background:#0b3d91;color:#fff}.dm-tone-sun{background:#f5c400;color:#15213a}
.dm-tone-blue::before,.dm-tone-sun::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 60% 90% at 100% 110%,rgba(255,255,255,.14),transparent 70%),radial-gradient(ellipse 40% 60% at -5% -10%,rgba(255,255,255,.10),transparent 70%),repeating-radial-gradient(circle at 105% 120%,transparent 0 38px,rgba(255,255,255,.06) 38px 40px)}
.dm-tone-sun::before{background:radial-gradient(ellipse 60% 90% at 100% 110%,rgba(255,255,255,.35),transparent 70%),repeating-radial-gradient(circle at 105% 120%,transparent 0 38px,rgba(11,61,145,.07) 38px 40px)}
.dm-tone-blue .dm-slide-title{color:#fff}.dm-tone-blue .dm-slide-text{color:rgba(255,255,255,.88)}
:root:not([data-theme=contrast]) .dm-tone-blue .btn-pri{background:#f5c400;border-color:#f5c400;color:#15213a}:root:not([data-theme=contrast]) .dm-tone-blue .btn-sec{background:transparent;border-color:#fff;color:#fff}:root:not([data-theme=contrast]) .dm-tone-blue .btn:focus-visible{outline-color:#fff}
.dm-tone-sun .dm-slide-title{color:#15213a}.dm-tone-sun .dm-slide-text{color:#2b3550}:root:not([data-theme=contrast]) .dm-tone-sun .btn-sec{background:transparent}
/* контрастний режим: без фото-тла й кольорових підкладок — текст на звичайному тлі */
:root[data-theme=contrast] .dm-slide-cover::after,:root[data-theme=contrast] .dm-slide-blur::before,:root[data-theme=contrast] .dm-slide-blur::after,:root[data-theme=contrast] .dm-tone-blue::before,:root[data-theme=contrast] .dm-tone-sun::before{display:none}
:root[data-theme=contrast] .dm-slide-cover .dm-cover-img{display:none}:root[data-theme=contrast] :is(.dm-tone-blue,.dm-tone-sun){background:none;color:inherit}
:root[data-theme=contrast] :is(.dm-slide-cover,.dm-tone-blue,.dm-tone-sun) :is(.dm-slide-title,.dm-slide-text){color:inherit}

/* ===== 1.7.0 (24.09.2026): сторінка «Новини» — список замість сітки (замовник). Рядок: рамка 4:3 ліворуч (картинка вписана цілком,
   тло — та сама картинка розмита; без картинки — емблема), праворуч дата·розділ, назва, вступ 3 рядки; перша новина першої сторінки
   крупніша; ≤600px — компактно «мініатюра + дата + назва» (перша — фото зверху). Пагінація «← Новіші · N з M · Старіші →». ===== */
.dm-nlist{display:flex;flex-direction:column;gap:14px;margin-top:8px}
.dm-nrow{display:grid;grid-template-columns:220px minmax(0,1fr);gap:22px;align-items:start;padding:14px;background:var(--dm-surface);border:1px solid var(--dm-line);border-radius:var(--dm-radius);text-decoration:none;color:var(--dm-text);transition:border-color .15s,box-shadow .15s}
.dm-nrow:hover{border-color:var(--dm-primary);color:var(--dm-text);box-shadow:0 12px 32px -16px rgba(11,61,145,.35)}
.dm-nrow:hover .dm-nrow-t{color:var(--dm-primary)}
.dm-frame{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;overflow:hidden;border-radius:calc(var(--dm-radius) - 4px);background:var(--dm-alt);isolation:isolate}
.dm-frame::before{content:"";position:absolute;inset:-12%;z-index:-1;background:var(--dm-frame-bg) center/cover no-repeat;filter:blur(14px) saturate(1.1);opacity:.75}
.dm-frame img{width:100%;height:100%;object-fit:contain;display:block}
.dm-frame-empty{background:linear-gradient(135deg,var(--dm-alt),#fff4c2)}.dm-frame-empty::before{content:none}
.dm-frame-empty img{width:46%;height:auto;opacity:.55;filter:grayscale(.2)}
.dm-nrow-b{display:flex;flex-direction:column;gap:6px;min-width:0;padding-block:2px}
.dm-nrow-t{margin:0;font:700 1.12rem/1.35 var(--dm-heading);color:var(--dm-text);text-wrap:balance}
.dm-nrow-p{color:var(--dm-muted);font-size:.95rem;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.dm-nrow-lead{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:28px;padding:18px;align-items:center}
.dm-nrow-lead .dm-nrow-t{font-size:clamp(1.25rem,2vw,1.55rem)}
.dm-nrow-lead .dm-nrow-p{-webkit-line-clamp:5;font-size:1rem}
@media(max-width:900px){.dm-nrow{grid-template-columns:170px minmax(0,1fr);gap:16px}.dm-nrow-p{-webkit-line-clamp:2}.dm-nrow-lead{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.dm-nrow-lead .dm-nrow-p{-webkit-line-clamp:4}}
@media(max-width:600px){
.dm-nlist{gap:10px}
.dm-nrow{grid-template-columns:104px minmax(0,1fr);gap:12px;padding:10px}
.dm-nrow .dm-nrow-p{display:none}
.dm-nrow-t{font-size:.98rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.dm-nrow .dm-meta{font-size:.8rem}
.dm-nrow-lead{grid-template-columns:minmax(0,1fr);gap:12px}
.dm-nrow-lead .dm-frame{aspect-ratio:16/10}
.dm-nrow-lead .dm-nrow-p{display:-webkit-box;-webkit-line-clamp:3;font-size:.93rem}
.dm-nrow-lead .dm-nrow-t{font-size:1.15rem;-webkit-line-clamp:4}
}
:root[data-theme=contrast] .dm-frame::before{content:none}
/* пагінація: «← Новіші · Сторінка N з M · Старіші →» */
.dm-pager{justify-content:space-between;align-items:center;gap:12px;margin-top:28px}
.dm-pager-btn{display:inline-flex;align-items:center;min-height:44px;padding:8px 18px;border:2px solid var(--dm-primary);border-radius:999px;background:var(--dm-surface);color:var(--dm-primary);font-weight:600;text-decoration:none;white-space:nowrap}
a.dm-pager-btn:hover{background:var(--dm-alt)}
span.dm-pager-btn{visibility:hidden}
.dm-pager-n{color:var(--dm-muted);font-size:.92rem;text-align:center}
@media(max-width:600px){.dm-pager{flex-wrap:nowrap;gap:8px}.dm-pager-btn{padding:8px 12px;font-size:.9rem}.dm-pager-n{font-size:.82rem}}
/* широкий екран: рядки у 2 колонки (рядок ≈610px, вступ ≈55 знаків × 4 рядки — читабельно й компактно), перша — на всю ширину */
@media(min-width:1100px){.dm-nlist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.dm-nrow-lead{grid-column:1/-1}.dm-nrow:not(.dm-nrow-lead){grid-template-columns:190px minmax(0,1fr);gap:18px}.dm-nrow:not(.dm-nrow-lead) .dm-nrow-t{font-size:1.02rem}.dm-nrow:not(.dm-nrow-lead) .dm-nrow-p{-webkit-line-clamp:4;font-size:.92rem}}
.dm-nrow-p{max-width:75ch}
.dm-nrow-lead .dm-frame{aspect-ratio:16/10}
@media(min-width:1100px){.dm-nrow:not(.dm-nrow-lead) .dm-nrow-t{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}}

/* ===== 1.7.1 (24.09.2026): хлібні крихти — один тонкий рядок: будиночок › розділ › поточна (приглушена, «…» якщо довга);
   без «Ви тут:»; ≤700px — лише «‹ батьківський розділ». Менші відступи до шапки й до вмісту. ===== */
.dm-position-breadcrumbs .dm-module{margin-bottom:14px}
.dm-main>.dm-wrap:has(>.dm-position-breadcrumbs .dm-crumbs){padding-top:16px}
.dm-crumbs{font-size:.88rem;line-height:1.4}
.dm-crumbs ol{display:flex;flex-wrap:nowrap;align-items:center;list-style:none;margin:0;padding:0;min-width:0}
.dm-crumbs li{display:flex;align-items:center;min-width:0;flex:0 1 auto;white-space:nowrap}
.dm-crumbs li>a,.dm-crumbs li>span{overflow:hidden;text-overflow:ellipsis;padding-block:6px}
.dm-crumbs li+li::before{content:"";flex:none;width:6px;height:6px;margin:0 10px 0 8px;border-top:1.5px solid var(--dm-muted);border-right:1.5px solid var(--dm-muted);transform:rotate(45deg);opacity:.7}
.dm-crumbs a{color:var(--dm-primary);text-decoration:none;font-weight:500}
.dm-crumbs a:hover{text-decoration:underline}
.dm-crumb-home{flex:none}.dm-crumb-home a{display:inline-flex;align-items:center;justify-content:center;min-width:28px;min-height:28px;margin-inline-start:-5px;border-radius:6px}
.dm-crumb-home a:hover{background:var(--dm-alt)}
.dm-crumb-plain span,.dm-crumb-cur span{color:var(--dm-muted)}
.dm-crumb-cur{flex-shrink:100}
.dm-crumbs-back{display:none}
@media(max-width:700px){
.dm-crumbs ol{display:none}
.dm-crumbs-back{display:inline-flex;align-items:center;gap:6px;min-height:36px;font-weight:600;font-size:.92rem;text-decoration:none;color:var(--dm-primary)}
.dm-crumbs-back span{font-size:1.35rem;line-height:1;margin-top:-2px}
.dm-main>.dm-wrap:has(>.dm-position-breadcrumbs .dm-crumbs){padding-top:10px}
.dm-position-breadcrumbs .dm-module{margin-bottom:8px}
}

/* 1.7.5–1.7.6: слайдер карток на телефоні й планшеті (≤900px) — крапки як у банера замість «← 1 / N →» */
.dm-car-dots{display:none}
@media(max-width:900px){.dm-cards+.dm-car-nav .dm-car-btn,.dm-cards+.dm-car-nav .dm-car-count{display:none}
.dm-car-nav .dm-car-dots{display:flex;justify-content:center;flex-wrap:wrap;gap:4px}
.dm-car-dots button{width:24px;height:24px;padding:0;border:0;background:none;display:inline-flex;align-items:center;justify-content:center}
.dm-car-dots button::before{content:"";width:8px;height:8px;border-radius:4px;background:var(--dm-muted);opacity:.45;transition:width .25s,opacity .25s,background .25s}
.dm-car-dots button[aria-current=true]::before{width:22px;background:var(--dm-primary);opacity:1}
.dm-car-nav{margin-top:4px}}
/* 1.7.8: «Читайте також» — телефон (≤600px) карусель .dm-carousel; планшет — три в ряд замість 2 + 1 (картка «висіла» сама), назва ≤4 рядки */
@media(min-width:601px) and (max-width:900px){.dm-related .dm-cards-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.dm-related .dm-card-b{padding:12px 14px 16px}.dm-related .dm-card-t{font-size:.9rem;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}}
/* ===== 1.7.9 (24.09.2026): назви новин — завжди повністю (замовник: довгі обрізались «…»). Обрізання рядків із назв прибрано
   (головна: картка + список «Останні новини», сторінка «Новини», каруселі карток, «Читайте також»); щоб довгі назви не роздували
   блоки — трохи менший шрифт і щільніший інтервал на телефоні/планшеті; вступ під назвою обрізається, як і раніше. ===== */
.dm-news-t,.dm-nrow-t,.dm-card-t,.dm-carousel .dm-card-t,.dm-related .dm-card-t,
.dm-nrow-lead .dm-nrow-t{display:block;-webkit-line-clamp:unset;line-clamp:none;overflow:visible;overflow-wrap:break-word;hyphens:manual}
@media(min-width:1100px){.dm-nrow:not(.dm-nrow-lead) .dm-nrow-t{display:block;-webkit-line-clamp:unset;overflow:visible}}
@media(max-width:900px){.dm-nrow-t{line-height:1.3}.dm-news-t{line-height:1.35}}
/* телефон: назви в списках — основним шрифтом (Golos Text 600; Unbounded дуже широкий — довга назва ставала стовпчиком на 13 рядків).
   1.7.10 (варіант А, замовник): рядки сторінки «Новини» — без мініатюр (афіші в 104 px не читаються) і без рамок: дата + назва,
   тонка лінія між новинами, як «Останні новини» на головній; перша новина — крупно з фото, як була */
@media(max-width:600px){
.dm-nrow-t,.dm-news-t{font:600 1rem/1.35 var(--dm-body)}
.dm-nrow-lead .dm-nrow-t{font:700 1.08rem/1.3 var(--dm-heading)}
.dm-carousel .dm-card-t,.dm-related .dm-card-t{font-size:.95rem;line-height:1.35}
.dm-nlist{gap:0}
.dm-nrow-lead{margin-bottom:8px}
.dm-nrow:not(.dm-nrow-lead){display:block;padding:14px 2px;border:0;border-bottom:1px solid var(--dm-line);border-radius:0;background:none;box-shadow:none}
.dm-nrow:not(.dm-nrow-lead):hover{box-shadow:none}
.dm-nrow:not(.dm-nrow-lead)>.dm-frame{display:none}
.dm-nrow:not(.dm-nrow-lead) .dm-meta{display:block;margin-bottom:4px}
.dm-nrow:not(.dm-nrow-lead) .dm-nrow-t{text-wrap:pretty}
}
/* ===== 1.8.0 (24.09.2026): «розумна» шапка на телефоні/планшеті (замовник: горизонтально закріплена шапка займала 29 % екрана).
   html.dm-smart — режим «Меню ☰» або сенсорний екран: шапка закріплена, при гортанні вниз ховається (top від'ємний — без transform,
   щоб off-canvas меню всередині лишалось position:fixed), угору — повертається; .dm-fab — плаваюча кнопка «Меню ☰» вгорі праворуч,
   поки шапка схована (лише в режимі «Меню ☰»): «матове скло» — білий 82 % + розмиття, тінь; у контрастному режимі — суцільна.
   html[data-line] — сенсорний планшет у режимі смуги: логотип + меню + «Пошук»/«Аа» в один рядок (якщо влазить, template.js).
   Низький екран (телефон горизонтально) — нижча шапка. Десктоп з мишею — без змін (шапка прокручується разом зі сторінкою). ===== */
html.dm-smart .dm-header.dm-sticky{position:sticky;top:0;transition:top .25s ease,box-shadow .25s}
html.dm-smart.dm-scrolled .dm-header.dm-sticky{box-shadow:0 6px 20px -14px rgba(21,33,58,.45)}
html.dm-smart.dm-hdr-hidden .dm-header.dm-sticky{top:calc(-1 * var(--dm-hdr-h, 160px) - 16px);box-shadow:none}
.dm-fab{position:fixed;top:10px;right:24px;z-index:39;border-radius:999px;border-color:rgba(11,61,145,.18);background:rgba(255,255,255,.82);-webkit-backdrop-filter:blur(10px) saturate(1.4);backdrop-filter:blur(10px) saturate(1.4);box-shadow:0 8px 24px -8px rgba(21,33,58,.45);animation:dm-fab-in .2s ease}
@media(max-width:600px){.dm-fab{right:16px}}
@keyframes dm-fab-in{from{opacity:0;transform:translateY(-8px)}}
:root[data-theme=contrast] .dm-fab{background:var(--dm-surface);-webkit-backdrop-filter:none;backdrop-filter:none;border:2px solid var(--dm-primary)}
@media(prefers-reduced-motion:reduce){html.dm-smart .dm-header.dm-sticky{transition:none}}
html[data-line] .dm-tagline{display:none}
html[data-line] .dm-brand-row{min-height:68px;padding-block:8px;gap:18px;position:relative}
html[data-line] .dm-logo img{max-height:48px}
html[data-line] .dm-nav-shell{border:0;flex:1;min-width:0}
html[data-line] .dm-nav-shell>.dm-wrap{width:auto;margin:0}
html[data-line] .dm-menu{justify-content:center;position:static}
html[data-line] .dm-utilities{margin-inline-start:0}
html[data-line] .dm-control{min-height:40px;padding:7px 12px}
@media(max-height:500px) and (orientation:landscape){.dm-brand-row{min-height:56px;padding-block:6px}.dm-logo img{max-height:40px}.dm-lockup-sub{display:none}.dm-lockup-title{font-size:1.05rem}.dm-control{min-height:40px;padding:6px 12px}.dm-fab{top:8px}}
/* ===== 1.8.1 (24.09.2026): «Доступність» замість «Аа» (замовник: «Аа» незрозуміле, «Закрити» окремо, на телефоні незручно).
   Кнопка — око + «Доступність». Десктоп/планшет: спливна картка під кнопкою праворуч (не зсуває сторінку): заголовок + ✕ у кутку,
   перемикачі «Розмір тексту: А · А+ · А++» і «Кольори: Звичайні · Контрастні», діють одразу. Режим «Меню ☰» (телефон): кнопки
   в шапці немає — ті самі перемикачі блоком «Доступність» унизу меню. ===== */
.dm-header{position:relative}
.dm-ico{width:1.2em;height:1.2em;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.dm-access-btn{gap:7px}
html[data-nav=drawer] .dm-access-btn{display:none}
.dm-access-pop{position:absolute;z-index:45;right:max(var(--dm-gutter,24px),(100% - 1240px) / 2);width:min(360px,calc(100% - 2 * var(--dm-gutter,24px)));margin-top:-6px;padding:14px 18px 18px;background:var(--dm-surface);border:1px solid var(--dm-line);border-radius:var(--dm-radius);box-shadow:0 18px 44px -18px rgba(21,33,58,.45)}
.dm-access-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}
.dm-access-head h2,.dm-drawer-access h2{margin:0;font:700 1.05rem/1.3 var(--dm-heading);color:var(--dm-text)}
.dm-x{width:44px;height:44px;margin:0 -10px 0 0;padding:0;border:0;border-radius:50%;background:none;color:var(--dm-muted);font-size:1.15rem;display:inline-flex;align-items:center;justify-content:center}
.dm-x:hover{background:var(--dm-alt);color:var(--dm-primary)}
.dm-acc-group{margin-top:12px}
.dm-acc-l{margin:0 0 6px;font-size:.85rem;font-weight:600;color:var(--dm-muted)}
.dm-seg{display:flex;padding:3px;gap:3px;background:var(--dm-alt);border:1px solid var(--dm-line);border-radius:12px}
.dm-seg button{flex:1 1 0;min-width:0;min-height:44px;padding:6px 8px;border:0;border-radius:9px;background:none;color:var(--dm-text);font-weight:600;line-height:1.2;display:inline-flex;align-items:center;justify-content:center}
.dm-seg button:hover{color:var(--dm-primary)}
.dm-seg button[aria-pressed=true]{background:var(--dm-surface);color:var(--dm-primary);box-shadow:0 1px 3px rgba(21,33,58,.18),inset 0 0 0 2px var(--dm-primary)}
.dm-seg-a{font:700 1rem/1 var(--dm-heading)}.dm-seg-a2{font-size:1.2rem}.dm-seg-a3{font-size:1.42rem}
:root[data-theme=contrast] .dm-seg button[aria-pressed=true]{background:var(--dm-primary);color:var(--dm-surface);box-shadow:none}
.dm-drawer-access{display:none}
/* 1.8.2: у меню ☰ — згорнутий тонкий рядок «око Доступність ⌄» (замовник: розгорнутий блок «кидається в очі», 95 % не потрібен);
   дотик — розгортає ті самі перемикачі; у рядку — поточний стан, якщо змінено */
html[data-nav=drawer] .dm-drawer-access{display:block;margin:14px 0 24px;border-top:1px solid var(--dm-line)}
.dm-drawer-access summary{display:flex;align-items:center;gap:10px;min-height:48px;padding:10px 8px;list-style:none;cursor:pointer;color:var(--dm-muted);font-size:.95rem;font-weight:600}
.dm-drawer-access summary::-webkit-details-marker{display:none}
.dm-drawer-access summary::after{content:"";margin-inline-start:auto;margin-inline-end:9px;width:.5em;height:.5em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);transition:transform .2s}
.dm-drawer-access[open] summary::after{transform:rotate(225deg) translate(-2px,-2px)}
.dm-drawer-access summary:hover,.dm-drawer-access[open] summary{color:var(--dm-primary)}
.dm-acc-now{font-weight:500}
.dm-drawer-access-b{padding:0 8px 8px}
.dm-drawer-access-b .dm-acc-group:first-child{margin-top:4px}
.dm-search-btn{gap:7px}
html[data-line] .dm-search-btn{padding-inline:10px}html[data-line] .dm-search-btn .dm-ctl-t{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
/* ===== 1.9.0 (24.09.2026): пошук — поле .dm-sf (шапка, сторінка /poshuk, 404): лупа в полі, «Знайти»; панель у шапці — поле + ✕ у кутку.
   Сторінка результатів (html/com_finder/search/default.php): «Знайдено N…» + сортування, «Розділи сайту», рядки «розділ · дата /
   назва / уривок», <mark> на всіх формах слова, порожній результат — поради й розділи. ===== */
.dm-sf{position:relative;display:flex;align-items:center;gap:8px;width:100%}
.dm-sf input[type=search]{flex:1;min-width:0;min-height:52px;margin:0;padding:10px 16px 10px 48px;border:2px solid var(--dm-line);border-radius:999px;background:var(--dm-surface);color:var(--dm-text);font-size:1.05rem;-webkit-appearance:none;appearance:none}
.dm-sf input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}
.dm-sf input[type=search]:focus{border-color:var(--dm-primary);outline:3px solid rgba(11,61,145,.18);outline-offset:0}
.dm-sf input::placeholder{color:var(--dm-muted);opacity:.85}
.dm-sf-ico{position:absolute;left:17px;top:50%;width:20px;height:20px;translate:0 -50%;fill:none;stroke:var(--dm-muted);stroke-width:2.2;stroke-linecap:round;pointer-events:none}
.dm-sf-go{flex:none;min-height:52px;padding:0 24px;border:0;border-radius:999px;background:var(--dm-primary);color:var(--dm-surface);font-weight:700;font-size:1rem}
.dm-sf-go:hover{background:var(--dm-hover,#0a3380)}
:root[data-theme=contrast] .dm-sf-go{color:#000}
@media(max-width:600px){.dm-sf input[type=search]{min-height:48px;padding-left:44px;font-size:1rem}.dm-sf-ico{left:15px}.dm-sf-go{min-height:48px;padding:0 16px}}
search{display:block}
.dm-search-panel{display:flex;flex-wrap:nowrap;align-items:center;gap:10px;padding-block:14px}
.dm-search-panel[hidden]{display:none}
.dm-search-panel>.dm-panel-body{flex:1 1 0;min-width:0}
.dm-search-panel .dm-x{margin:0 -8px 0 0}
.dm-finder{max-width:880px}
.dm-finder-h{margin:0 0 18px}
.dm-sf-page{margin-bottom:20px}
.dm-finder-hint{color:var(--dm-muted);max-width:70ch}
.dm-finder-sub{font:700 1.1rem/1.3 var(--dm-heading);margin:22px 0 12px}
.dm-finder-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 20px;margin:10px 0 8px}
.dm-finder-count{margin:0;color:var(--dm-muted)}.dm-finder-count strong{color:var(--dm-text)}
.dm-finder-sort{margin:0;display:inline-flex;padding:3px;gap:3px;background:var(--dm-alt);border:1px solid var(--dm-line);border-radius:999px;font-size:.9rem}
.dm-finder-sort>*{padding:5px 12px;border-radius:999px;text-decoration:none;font-weight:600;line-height:1.3}
.dm-finder-sort a{color:var(--dm-text)}.dm-finder-sort a:hover{color:var(--dm-primary)}
.dm-finder-sort [aria-current]{background:var(--dm-surface);color:var(--dm-primary);box-shadow:inset 0 0 0 2px var(--dm-primary)}
.dm-sr-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--dm-line)}
.dm-sr>a{display:block;padding:16px 4px;border-bottom:1px solid var(--dm-line);color:var(--dm-text);text-decoration:none}
.dm-sr>a:hover .dm-sr-t{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}
.dm-sr-meta{display:flex;flex-wrap:wrap;gap:4px 12px;margin-bottom:4px;font-size:.84rem;color:var(--dm-muted)}
.dm-sr-cat{font-weight:700;color:var(--dm-primary)}
.dm-sr-t{display:block;font:600 1.12rem/1.35 var(--dm-body);color:var(--dm-primary);text-wrap:pretty}
.dm-sr-p{display:block;margin-top:5px;color:var(--dm-muted);font-size:.95rem;line-height:1.55}
.dm-finder mark,.dm-bets mark{background:#fff0a3;color:inherit;border-radius:3px;padding:0 2px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
:root[data-theme=contrast] .dm-finder mark{background:var(--dm-accent,#ff0);color:#000}
.dm-bets ul{list-style:none;margin:0 0 6px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.dm-bets a{display:flex;flex-direction:column;gap:2px;height:100%;padding:14px 16px;background:var(--dm-surface);border:1px solid var(--dm-line);border-radius:var(--dm-radius);text-decoration:none;color:var(--dm-text)}
.dm-bets a:hover{border-color:var(--dm-primary)}
.dm-bets-path{font-size:.8rem;color:var(--dm-muted)}
.dm-bets-t{font-weight:700;color:var(--dm-primary)}
.dm-finder-empty .dm-finder-sub{margin-top:8px}
.dm-finder-tips{margin:0 0 12px;padding-left:1.2em;color:var(--dm-muted)}
.dm-finder-sections{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.dm-finder-sections a{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid var(--dm-line);border-radius:999px;background:var(--dm-surface);text-decoration:none;font-weight:600}
.dm-finder-sections a:hover{border-color:var(--dm-primary)}
.dm-finder .dm-pager{margin-top:24px}
@media(max-width:600px){.dm-panel.dm-search-panel{display:flex;gap:6px}.dm-search-panel .dm-panel-close.dm-x{margin:0 -10px 0 0;width:40px}}
/* на сторінці пошуку крихти зайві (заголовок «Пошук»; на телефоні «‹ Пошук» вело на той самий порожній пошук) */
.dm-main:has(.dm-finder) .dm-crumbs{display:none}

/* ===== 1.10.0 (24.09.2026): мега-панель головного меню — варіант Б замовника (www/design/menu/). Розмітка — html/mod_menu/default.php.
   Панель: ліворуч блок розділу (назва, опис = «Атрибут назви посилання» пункту верхнього рівня, «Увесь розділ →»), праворуч підпункти
   з іконкою («Зображення меню»; немає — перша літера; немає ні в кого — без плиток) і описом; колонки згори вниз (без дірок), групи —
   рядком унизу («пігулки» / список). «Наукові відділення» (усі підпункти — групи) — колонки напрямів. Відкриття з наміром (JS .dm-hover:
   0,15 с / закриття 0,3 с), на сенсорному екрані перший дотик відкриває панель; сторінка під панеллю злегка затемнюється. ===== */
html:not([data-nav=drawer]) .dm-menu>.dm-home{display:none}
html:not([data-nav=drawer]).dm-js .dm-menu>.dm-has-sub.dm-hover>.dm-mega,html:not([data-nav=drawer]).dm-js .dm-menu>.dm-has-sub:focus-within>.dm-mega{display:grid}
html:not([data-nav=drawer]).dm-js .dm-menu>.dm-has-sub.dm-esc>.dm-mega{display:none}
html:not([data-nav=drawer]) .dm-mega{grid-template-columns:minmax(220px,270px) minmax(0,1fr);border-top:3px solid var(--dm-accent);border-radius:0 0 var(--dm-radius) var(--dm-radius);animation:dm-mega-in .16s ease-out}
@keyframes dm-mega-in{from{opacity:0;transform:translateY(-4px)}}
.dm-mega-intro{display:none}
html:not([data-nav=drawer]) .dm-mega-intro{display:block;background:var(--dm-bg);padding:24px;border-inline-end:1px solid var(--dm-line)}
.dm-mega-title{font:700 1.05rem/1.3 var(--dm-heading);color:var(--dm-primary);margin:0 0 8px}
.dm-mega-desc{color:var(--dm-muted);font-size:.93rem;line-height:1.5;margin:0 0 16px}
.dm-mega-all{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:9px 16px;border-radius:var(--dm-small);background:var(--dm-primary);color:var(--dm-surface)!important;font-weight:700;font-size:.93rem;text-decoration:none}
.dm-mega-all:hover{background:var(--dm-hover)}
html:not([data-nav=drawer]) .dm-mega>.dm-submenu{display:block;border:0;border-radius:0;background:none;padding:18px 20px;columns:var(--mc,3) 200px;column-gap:16px}
html:not([data-nav=drawer]) .dm-mega>.dm-submenu>li{break-inside:avoid}
html:not([data-nav=drawer]) .dm-mega>.dm-submenu>.dm-mega-group{column-span:all;margin-top:6px;padding-top:8px;border-top:1px solid var(--dm-line)}
html:not([data-nav=drawer]) .dm-mega>.dm-submenu>.dm-mega-group:first-child{margin-top:0;padding-top:0;border-top:0}
html:not([data-nav=drawer]) .dm-mega .dm-menu-line>:is(a,.dm-menu-heading:not(.dm-mega-gh)){padding:7px 10px;border-radius:8px;line-height:1.35}
html:not([data-nav=drawer]) .dm-mega .dm-menu-line>a:hover{background:var(--dm-alt);color:var(--dm-primary)}
html:not([data-nav=drawer]) .dm-mega .dm-menu-item.active>.dm-menu-line>a{text-decoration:none}
html:not([data-nav=drawer]) .dm-mega a[aria-current=page]{color:var(--dm-primary);background:color-mix(in srgb,var(--dm-primary) 8%,var(--dm-surface));box-shadow:inset 3px 0 var(--dm-primary)}
html:not([data-nav=drawer]) .dm-mega .dm-menu-line>:is(a,.dm-menu-heading:not(.dm-mega-gh)).dm-mega-a{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border-radius:12px}
.dm-mc{display:flex;flex-direction:column;min-width:0}
.dm-md{display:none}
html:not([data-nav=drawer]) .dm-md{display:block;font-weight:400;font-size:.86rem;line-height:1.4;color:var(--dm-muted);margin-top:2px}
.dm-mi{display:none}
html:not([data-nav=drawer]) .dm-mi{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:color-mix(in srgb,var(--dm-primary) 8%,var(--dm-surface));color:var(--dm-primary);overflow:hidden}
.dm-mi.dm-ico-mask::before{content:"";width:22px;height:22px;background:var(--dm-primary);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.dm-mi.dm-ico-img img{width:24px;height:24px;object-fit:contain}
.dm-mi-letter{font:800 .95rem/1 var(--dm-heading)}
html:not([data-nav=drawer]).dm-js .dm-mega .dm-submenu .dm-submenu{display:block;border:0;background:none;padding:2px 0 4px 60px;margin:0}
html:not([data-nav=drawer]).dm-js .dm-mega .dm-submenu .dm-noico .dm-submenu{padding-inline-start:12px}
html:not([data-nav=drawer]).dm-js .dm-mega .dm-submenu .dm-chips{display:flex;flex-wrap:wrap;gap:6px}
html:not([data-nav=drawer]) .dm-mega .dm-chips .dm-menu-line>:is(a,.dm-menu-heading:not(.dm-mega-gh)){font-size:.85rem;padding:3px 12px;border:1px solid var(--dm-line);border-radius:999px;background:var(--dm-surface)}
html:not([data-nav=drawer]) .dm-mega .dm-chips .dm-menu-line>a:hover{border-color:var(--dm-primary)}
html:not([data-nav=drawer]).dm-js .dm-mega .dm-sublist{columns:2 240px;column-gap:24px}
html:not([data-nav=drawer]) .dm-sublist>li{break-inside:avoid}
html:not([data-nav=drawer]) .dm-mega .dm-sublist .dm-menu-line>:is(a,.dm-menu-heading:not(.dm-mega-gh)){position:relative;padding:4px 8px 4px 20px;font-size:.92rem}
html:not([data-nav=drawer]) .dm-mega .dm-sublist .dm-menu-line>:is(a,.dm-menu-heading:not(.dm-mega-gh))::before{content:"›";position:absolute;left:7px;color:var(--dm-muted);font-weight:700}
/* «Наукові відділення»: групи колонками, секції рядками з іконками */
html:not([data-nav=drawer]) .dm-mega-cols>.dm-submenu{columns:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px 24px}
html:not([data-nav=drawer]) .dm-mega-cols>.dm-submenu>.dm-mega-group{margin:0;padding:0;border:0}
html:not([data-nav=drawer]) .dm-mega-gh{display:block;font:700 .72rem/1.3 var(--dm-heading);text-transform:uppercase;letter-spacing:.04em;color:var(--dm-muted);padding:6px 10px 8px}
html:not([data-nav=drawer]) a.dm-mega-gh:hover{color:var(--dm-primary)}
html:not([data-nav=drawer]).dm-js .dm-mega .dm-submenu .dm-mega-rows{padding:0}
html:not([data-nav=drawer]) .dm-mega-rows .dm-menu-line>:is(a,.dm-menu-heading:not(.dm-mega-gh)){display:flex;align-items:center;gap:10px;padding:6px 8px}
html:not([data-nav=drawer]) .dm-mega-rows .dm-mi{width:30px;height:30px;border-radius:8px}
html:not([data-nav=drawer]) .dm-mega-rows .dm-mi.dm-ico-mask::before{width:18px;height:18px}
.dm-ext{color:var(--dm-muted);font-weight:400}
/* Затемнення сторінки під відкритою панеллю (шапка — z-index 40 — над ним) */
html.dm-mega-on body::after{content:"";position:fixed;inset:0;z-index:30;background:rgba(21,33,58,.18);pointer-events:none;animation:dm-mega-in .16s ease-out}
/* Меню ☰: порядок пунктів — як в адмінці (у розмітці групи перенесені в кінець для десктопа) */
html[data-nav=drawer] .dm-mega>.dm-submenu{display:flex;flex-direction:column}
html[data-nav=drawer] .dm-mega>.dm-submenu>li{order:var(--o,0)}
html:not(.dm-js) .dm-mega-intro,html:not(.dm-js) .dm-mi,html:not(.dm-js) .dm-md{display:none}
html:not(.dm-js) .dm-menu>.dm-menu-item>.dm-mega{display:block}
@media(prefers-reduced-motion:reduce){.dm-mega,html.dm-mega-on body::after{animation:none!important}}
/* 1.10.2: телефон — стаття без рамки-картки (біле поле від краю до краю, ширший рядок) і менший заголовок (Unbounded широкий: 23 px давали 6 рядків) */
@media(max-width:600px){.dm-inner .com-content-article{margin-inline:calc(-1 * var(--dm-gutter));padding:20px var(--dm-gutter) 24px;border:0;border-radius:0}
.dm-article-head{margin-bottom:16px}.dm-article-head h1{font-size:1.25rem;line-height:1.3;letter-spacing:-.005em}
.dm-article-body h2{font-size:1.125rem}.dm-article-body h3{font-size:1rem}.dm-article-body h4{font-size:.95rem}}
@media(max-width:374px){.dm-article-head h1{font-size:1.125rem}.dm-article-body h2{font-size:1.0625rem}}

/* 1.10.3: розділ-«Заголовок» у смузі меню — кнопка з виглядом посилання */
.dm-menu-top{appearance:none;border:0;background:transparent;margin:0;font-family:inherit;cursor:pointer;text-align:start;width:auto}
.dm-menu-top:hover{color:var(--dm-hover)}
.dm-menu-top:focus-visible{outline:3px solid var(--dm-accent);outline-offset:-3px}
html[data-nav=drawer] .dm-menu-top{width:100%}
.dm-menu-item.active>.dm-menu-line>.dm-menu-top{color:var(--dm-primary);text-decoration:underline}
/* 1.10.4: пункт типу «Заголовок»/«Роздільник» усередині панелі й меню ☰ — той самий вигляд, що в посилання, але без підсвітки й руки курсора */
.dm-menu-heading:not(.dm-menu-top){cursor:default}
