/* ==========================================================================
   KMU.GOV.UA mobile CSS — applied to nir.gov.ua
   Extracted 2026-04-13
   Loaded via head_common.html for ALL devices (desktop + mobile templates)
   ========================================================================== */

/* --- GOV.UA logo text — hide on mobile --- */
@media (max-width: 991px) {
    header .main-logo_text { display: none !important; }
}

/* --- Container padding on tablet/mobile --- */
@media (max-width: 991.98px) {
    .gov-container { padding-left: 20px; padding-right: 20px; }
}

/* --- Headings — mobile sizes --- */
@media (max-width: 767.98px) {
    .heading-2 { font-size: 20px; line-height: 24px; }
    .heading-3 { font-size: 20px; line-height: 24px; }
}

/* --- Spacing utilities reduction on mobile --- */
@media (max-width: 767px) {
    .mt-40 { margin-top: 15px; }
    .mt-50 { margin-top: 15px; }
    .mb-30 { margin-bottom: 20px; }
    .mb-40 { margin-bottom: 15px; }
    .pt-40 { padding-top: 15px; }
    .pb-40 { padding-bottom: 15px; }
}

@media (min-width: 320px) and (max-width: 767px) {
    .mt-60 { margin-top: 15px; }
    .mt-80 { margin-top: 15px; }
    .mt-100 { margin-top: 15px; }
    .mt-120 { margin-top: 15px; }
    .mb-60 { margin-bottom: 15px; }
    .mb-80 { margin-bottom: 15px; }
    .mb-120 { margin-bottom: 15px; }
    .pt-60 { padding-top: 15px; }
    .pt-80 { padding-top: 15px; }
    .pt-100 { padding-top: 15px; }
    .pb-60 { padding-bottom: 15px; }
    .pb-80 { padding-bottom: 15px; }
    .pb-100 { padding-bottom: 15px; }
}

@media (min-width: 768px) and (max-width: 1199px) {
    .mt-60 { margin-top: 30px; }
    .mt-80 { margin-top: 40px; }
    .mt-100 { margin-top: 60px; }
    .mt-120 { margin-top: 70px; }
    .mb-60 { margin-bottom: 30px; }
    .mb-80 { margin-bottom: 40px; }
    .mb-120 { margin-bottom: 70px; }
    .pt-60 { padding-top: 40px; }
    .pt-80 { padding-top: 50px; }
    .pt-100 { padding-top: 60px; }
    .pb-60 { padding-bottom: 40px; }
    .pb-80 { padding-bottom: 50px; }
    .pb-100 { padding-bottom: 60px; }
}

@media (max-width: 767.98px) {
    .mb-100 { margin-bottom: 60px; }
}

@media (max-width: 991.98px) {
    .pr-60 { padding-right: 0; }
}

/* --- Horizontal rule --- */
@media (max-width: 767.98px) {
    hr.npa { border-top: none; margin: 30px 0 0; }
}

/* --- Main news section — mobile --- */
@media screen and (max-width: 768px) {
    .main-news .news-list { margin-top: 30px; margin-bottom: 30px; }
    .main-news .main-item { margin-left: -40px; margin-right: -40px; }
    .gov-news.columns { columns: 1; }
    .gov-news .news-list { margin-top: 0; }
    .all-news { margin-top: 20px; }
}

@media screen and (max-width: 600px) {
    .main_item_text { margin-bottom: 0; padding-top: 10px; height: unset; }
    .main-news .news-item { padding-left: 0; height: unset; }
}

@media (max-width: 768px) {
    .main-news .news-item .title {
        overflow: hidden;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        text-overflow: ellipsis;
        max-height: 71px;
    }
}

@media screen and (max-width: 768px) {
    .main-page-news-list li:nth-child(2n) { margin-left: 0; }
    .main-page-news-list li {
        float: none; width: 100%; display: block;
        position: relative; margin-bottom: 20px;
    }
}

/* --- News detail — mobile --- */
@media (max-width: 991px) {
    .news__item--inner { padding-left: 0; }
}

@media screen and (max-width: 991px) {
    .news__title--logo { margin-top: 0; }
    .news__item--attach { padding-left: 0; }
    .news__item--navigation .prev { padding-left: 15px; }
    .news__item--navigation .next { padding-right: 15px; }
}

@media (max-width: 767px) {
    .news__item--navigation .prev a:hover .link::before { left: 0; }
    .news__item--navigation .next a:hover .link::before { right: 0; }
    .news__wrapper .news__item--share { position: static; margin-bottom: 20px; }
}

/* --- Editor content — mobile --- */
@media (max-width: 767px) {
    .editor-content h2, .editor-content .h2 {
        font-size: 24px; font-weight: 600; line-height: 32px;
    }
    .editor-content h3, .editor-content .h3 {
        font-size: 20px; font-weight: 600; line-height: 30px;
    }
}

@media screen and (max-width: 768px) {
    .editor-content pre:first-child { float: none; display: block; text-align: left; }
    .editor-content pre:last-child { float: none; display: block; text-align: left; }
    .gallery_iframe { height: 350px; }
}

/* --- Header — mobile menu --- */
@media screen and (max-width: 991px) {
    header .header-bg { padding: 0 0 30px; }
    header .main-title .icon { margin-bottom: 10px; }
    header .main-search .icon { bottom: 3px; }
    header .menu-for-small-devices .menu-container .submenu .submenu-container {
        padding-left: 20px; padding-right: 20px;
    }
    header .menu-for-small-devices .menu-container .submenu .submenu-container .sub-submenu {
        padding-left: 20px; padding-right: 20px;
    }
    header ::-webkit-scrollbar-track { background-color: rgb(48, 77, 124); opacity: 0; }
    header ::-webkit-scrollbar { width: 1px; height: 1px; background-color: rgb(48, 77, 124); opacity: 0; }
    header ::-webkit-scrollbar-thumb { opacity: 0; background-color: rgb(48, 77, 124); }
    header .menu-for-small-devices { overflow: hidden scroll; }
    header .menu-for-small-devices .menu-container { padding-left: 30px; padding-right: 30px; }
    header .menu-for-small-devices .menu-container .showSubmenu.active { background-color: transparent; }
    header .menu-for-small-devices .menu-container .showSubmenu.active + .submenu { left: 0; visibility: visible; }
    header .menu-for-small-devices .menu-container .submenu { left: 100%; visibility: hidden; }
    header .menu-for-small-devices .menu-container .submenu .submenu-container .showSubSubmenu.active + .sub-submenu-container { left: 0; }
    header .menu-for-small-devices .menu-container .submenu .submenu-container .sub-submenu-container { display: block; left: 100%; }
    .menu-for-small-devices .submenu { height: 100vh !important; }
    .menu-for-small-devices { height: 100vh; }
    header .submenu-container { height: 100vh; }
}

@media (max-width: 991.98px) {
    header .menu-container .menu { max-width: 100%; margin-left: 0; margin-right: 0; }
    header .menu-container .menu a { display: block; }
    header .menu-container .showSubmenu { border-bottom: none; }
}

@media screen and (max-width: 768px) {
    header .main-title .h1 { letter-spacing: 0.15rem; font-size: 160%; }
}

/* --- Search form — mobile --- */
@media screen and (max-width: 991px) {
    .search-form {
        top: 0; width: 100%; height: 105vh;
        z-index: 1036; overflow: scroll;
    }
    .search-form::-webkit-scrollbar { width: 0; }
    .search-form label { margin-bottom: 15px; }
}

/* --- Breadcrumbs — mobile --- */
@media (max-width: 991.98px) {
    .main-breadcrumbs { padding-left: 15px; padding-right: 20px; padding-bottom: 24px; }
}

/* --- Timeline — mobile --- */
@media screen and (max-width: 768px) {
    .timeline-block .timeline-item { padding-left: 70px; }
    .timeline-block .timeline-item::after { left: 50px; }
    .timeline-block .timeline-item::before { left: 40px; }
    .timeline-block .timeline-item .time { left: 0; }
    .timeline-block .timeline-item .desctiption .preview * { margin: 0 auto 10px; float: none; }
    .timeline-block .timeline-item .desctiption.prev .preview { float: none; margin-bottom: 10px; }
    .timeline-block .timeline-item .desctiption.prev .preview img { float: none; margin-bottom: 0; }
    #timelineResult { margin-top: 30px; }
    .timeline-load-more { padding-left: 115px; }
}

/* --- Page title — mobile --- */
@media (max-width: 991px) {
    .page_title { width: 100%; padding-left: 10px; padding-right: 10px; }
}

@media screen and (max-width: 991px) {
    .page_title-logo { margin-top: 0; }
}

@media (max-width: 991.98px) {
    .page_title { text-align: center; }
    .page_title-text { margin-top: 0; padding-top: 15px; font-size: 24px; }
    .page_title p { margin-top: 0; padding-top: 15px; font-size: 14px; line-height: 18px; }
}

/* --- Footer — mobile --- */
@media (max-width: 991.98px) {
    footer .footer-block { margin: 0 auto 10px; }
}

@media screen and (max-width: 991px) {
    footer .footer-bottom .social-links ul li { padding-left: 25px; padding-right: 25px; }
}

@media (max-width: 768px) {
    footer .footer-official-site { margin-left: 0; }
    footer .footer-official-site a { position: relative; left: -14px; }
}

/* --- Scroll to top — mobile --- */
@media (max-width: 767px) {
    .scrollToTop { right: 15px; bottom: 15px; }
}

/* --- Share button — mobile --- */
@media (max-width: 767px) {
    .services_share { float: none; left: 15px; margin-top: 10px; }
}

/* --- Site map button — mobile --- */
@media (max-width: 767px) {
    .site-map_btn { position: relative; margin-left: auto; margin-right: auto; display: flex; }
}

@media screen and (max-width: 768px) {
    .site-map_not-found ul li a { font-size: 0.875rem; }
}

/* --- Form elements — mobile --- */
@media (max-width: 991.98px) {
    .form select, .form textarea,
    .form input[type="text"], .form input[type="password"],
    .form input[type="email"], .form input[type="url"],
    .form input[type="search"], .form input[type="tel"],
    .form input[type="number"], .form input[type="date"] {
        font-size: 16px;
    }
    .form input { font-size: 13px; }
    .form textarea, .form .textarea { margin-bottom: 15px; }
}

@media (max-width: 767.98px) {
    .form label { font-size: 10px; }
    .form textarea, .form .textarea { min-height: 80px; }
}

/* --- Filter toggle — mobile --- */
@media (max-width: 767px) {
    .legislation__form, .form-galleries, .timeline-form {
        transition: 0.5s ease-in-out; display: none;
    }
    .show_hide_filters {
        height: 50px; line-height: 50px; display: block;
        position: relative; cursor: pointer; text-align: center;
        margin-bottom: 10px; background-color: rgb(238, 240, 243);
    }
    .show_hide_filters.active::before { transform: rotate(180deg); }
    .show_hide_filters.active + form { display: block; margin-top: 0; padding-top: 0; }
    #pageTitle { margin: 0; }
}

/* --- Digest / subscribe — mobile --- */
@media (max-width: 767.98px) {
    .digest-home { display: block; margin-top: 25px; padding: 17px; min-height: auto; }
    .digest-home .article-level-3 {
        font-size: 24px; letter-spacing: normal;
        text-align: left; padding-top: 70px;
    }
    .digest-home .article-level-3::before { width: 40px; height: 40px; left: 0; top: 10px; }
    .digest-home-subtitle { max-width: 206px; }
    .digest-home label { flex-direction: column; }
    .digest-home label input { width: 100%; margin-bottom: 20px; }
    .digest-home label .submit_button {
        text-align: center; max-width: 106px; min-width: 106px;
        width: 100%; font-size: 14px; max-height: 36px; min-height: 36px;
        margin-left: auto; margin-right: 0;
    }
}

/* --- WCAG / accessibility — mobile --- */
@media (max-width: 767.98px) {
    .wcag-form-md-hidden { display: none; }
    .wcag-btn-prev { line-height: 21px; }
    .link-skip { font-size: 12px; line-height: 16px; }
    .link-skip-btn { font-size: 12px; line-height: 16px; border-radius: 24px; }
}

/* --- Layout columns — mobile --- */
@media (max-width: 768px) {
    .l-col-3 { flex: 0 0 100%; max-width: 100%; }
    .l-col-4 { flex: 0 0 100%; max-width: 100%; }
}

@media (max-width: 480px) {
    .l-container { padding-right: 15px; padding-left: 15px; }
}

/* --- Article level headings — tablet --- */
@media (max-width: 991px) {
    .article-level-2, .article-title-2 { font-size: 144.444%; }
    .article-level-3, .article-title-3 { font-size: 133.333%; }
    .article-level-4, .article-title-4 { font-size: 111.111%; }
}

/* --- Not found / error page — mobile --- */
@media (max-width: 767px) {
    .not-found_title { font-size: 24px !important; }
    .not-found_link { margin: 30px auto 20px; }
    .not-found_line { margin-bottom: 30px; }
    .not-found_error-code { font-size: 60px !important; margin-bottom: 20px; }
    .not-found_error-description { font-size: 24px; margin-bottom: 20px; }
    .not-found_error-proposition * { line-height: 1.2em; }
}

@media (max-width: 991px) {
    .not-found_icon { margin-bottom: 20px; }
}

/* --- Header top bar — KMU exact styles (mobile only) --- */
@media (max-width: 991px) {
    .header-top {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 10px 20px;
        height: 70px;
    }
}









/* Hamburger icon, search btn, title — mobile only */
@media (max-width: 991px) {

.header-menu-icon {
    display: block;
    width: 48px;
    height: 48px;
    background: transparent url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0ibm9uZSI+PG1hc2sgaWQ9ImEiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgeD0iMCIgeT0iMCIgbWFza1VuaXRzPSJ1c2VyU3BhY2VPblVzZSIgc3R5bGU9Im1hc2stdHlwZTphbHBoYSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMGgyNHYyNEgweiIvPjwvbWFzaz48ZyBtYXNrPSJ1cmwoI2EpIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMyAxOHYtMmgxOHYySDNabTAtNXYtMmgxOHYySDNabTAtNVY2aDE4djJIM1oiLz48L2c+PC9zdmc+") no-repeat center center / 32px 38px;
    border: none;
    padding: 1px 6px;
    cursor: pointer;
}

/* Search button — KMU exact */
.header-search-btn {
    display: block;
    background: transparent;
    border: none;
    padding: 10px 15px;
    color: #fff;
    font-size: 18px;
    font-family: ProbaPro;
    font-weight: 600;
    cursor: pointer;
    height: 45px;
}

.header-search-btn::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 25px;
    margin-right: 8px;
    vertical-align: middle;
    background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTIwLjA2NTQgMTguNTc1TDE2LjA2NTQgMTQuNTc1QzE3LjQ5MDggMTIuNzY4NSAxOC4xNzAxIDEwLjQ4NDcgMTcuOTYzNyA4LjE5MjgyQzE3Ljc1NzMgNS45MDA5NyAxNi42ODA5IDMuNzc1MjIgMTQuOTU1NyAyLjI1MjQ1QzEzLjIzMDUgMC43Mjk2OSAxMC45ODc1IC0wLjA3NDQwNTkgOC42ODc3OSAwLjAwNTQyMjE0QzYuMzg4MDQgMC4wODUyNTAyIDQuMjA2MjMgMS4wNDI5NCAyLjU5MDc1IDIuNjgxNjZDMC45NzUyNjcgNC4zMjAzOSAwLjA0ODg0NSA2LjUxNTY2IDAuMDAxODc2ODYgOC44MTYzMUMtMC4wNDUwOTEzIDExLjExNyAwLjc5MDk2MyAxMy4zNDgyIDIuMzM4MjIgMTUuMDUxNUMzLjg4NTQ3IDE2Ljc1NDggNi4wMjYzOCAxNy44MDA3IDguMzIwOTUgMTcuOTc0NEMxMC42MTU1IDE4LjE0OCAxMi44ODk0IDE3LjQzNjEgMTQuNjc1NCAxNS45ODVMMTguNjc1NCAxOS45ODVDMTguODY5IDIwLjEyODEgMTkuMTA3NyAyMC4xOTY2IDE5LjM0NzcgMjAuMTc3OEMxOS41ODc3IDIwLjE1OSAxOS44MTI5IDIwLjA1NDMgMTkuOTgxOSAxOS44ODI5QzIwLjE1MDkgMTkuNzExNCAyMC4yNTI0IDE5LjQ4NDggMjAuMjY3NyAxOS4yNDQ1QzIwLjI4MzEgMTkuMDA0MyAyMC4yMTEyIDE4Ljc2NjUgMjAuMDY1NCAxOC41NzVaTTkuMDY1MzYgMTUuOTg1QzcuNjgwOSAxNS45ODUgNi4zMjc1MiAxNS41NzQ1IDUuMTc2MzcgMTQuODA1M0M0LjAyNTIzIDE0LjAzNjEgMy4xMjgwMiAxMi45NDI5IDIuNTk4MjEgMTEuNjYzOEMyLjA2ODM5IDEwLjM4NDcgMS45Mjk3NyA4Ljk3NzI0IDIuMTk5ODcgNy42MTkzOEMyLjQ2OTk2IDYuMjYxNTEgMy4xMzY2NSA1LjAxNDIzIDQuMTE1NjIgNC4wMzUyNkM1LjA5NDU4IDMuMDU2MjkgNi4zNDE4NyAyLjM4OTYxIDcuNjk5NzMgMi4xMTk1MUM5LjA1NzYgMS44NDk0MSAxMC40NjUxIDEuOTg4MDQgMTEuNzQ0MSAyLjUxNzg1QzEzLjAyMzIgMy4wNDc2NiAxNC4xMTY1IDMuOTQ0ODcgMTQuODg1NyA1LjA5NjAyQzE1LjY1NDggNi4yNDcxNiAxNi4wNjU0IDcuNjAwNTQgMTYuMDY1NCA4Ljk4NTAxQzE2LjA2NTQgMTAuODQxNSAxNS4zMjc5IDEyLjYyMiAxNC4wMTUxIDEzLjkzNDhDMTIuNzAyNCAxNS4yNDc1IDEwLjkyMTkgMTUuOTg1IDkuMDY1MzYgMTUuOTg1WiIgZmlsbD0iI0IyQjhCRiIvPgo8L3N2Zz4K") no-repeat center center;
    background-size: contain;
}

/* Main title — KMU mobile layout */
.main-title {
    display: block;
    text-align: center;
    text-decoration: none;
    padding: 0;
}

.main-title .icon {
    width: 30px;
    height: 46px;
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    display: block;
    margin: 0 auto 10px;
}

.main-title .h1 {
    text-align: center;
    color: #fff;
    font-family: ProbaPro;
    font-weight: 600;
    font-size: 160%;
    margin: 15px 0 0;
    padding: 0 10px;
    word-wrap: break-word;
}

.main-title .light {
    text-align: center;
    color: #fff;
    font-family: ProbaPro;
    font-weight: 400;
    font-size: 13px;
    margin: 0;
    padding: 0 10px;
}

} /* end @media 991px for header elements */

/* Fix long title on NIR mobile */
@media (max-width: 767px) {
    .main-title .h1 {
        font-size: 22px !important;
        letter-spacing: 0.5px !important;
    }
}
