.container-topbar {
    background: #1b365d;
    padding: 10px 0 14px;
}

.container-topbar .mod-custom {
    margin: 0;
    padding-left: 70px !important;
}

.topbar-contacts {
    display: flex;
    align-items: center;
    gap: 40px;
    color: #fff;
    font: 16px "Open Sans", sans-serif;
}

/* ============================= */
/* Шапка */
/* ============================= */

.header.container-header {
    background: #fff !important;
    background-image: none !important;
    
    z-index: 9999;
    box-shadow: 0 3px 12px rgba(0,0,0,.12);
}

.header.container-header .grid-child {
    background: transparent !important;
}

.header.container-header .container-nav {
    background: #fff !important;
}

/* ============================= */
/* Меню */
/* ============================= */

.container-nav {
    border-top: 1px solid #e6e6e6;
    border-bottom: 1px solid #e6e6e6;
    transition: background .35s ease, box-shadow .35s ease;
}

.container-nav .mod-menu > li > a {
    color: #1b365d !important;
    font-size: 18px !important;
    font-weight: 400;
    text-transform: uppercase;
    padding: 12px 18px;
    margin: 0 3px;
    border-radius: 6px;
    transition: all .3s ease;
}

.container-nav .mod-menu > li > a:hover {
    background: #1b365d;
    color: #fff !important;
}

.container-nav .mod-menu > li.active > a,
.container-nav .mod-menu > li.current > a {
    background: #0d6efd;
    color: #fff !important;
}

/* ============================= */
/* Випадаюче меню */
/* ============================= */

/* ============================= */
/* Випадаюче меню */
/* ============================= */

/* Тільки верхні пункти меню */
.container-nav > .mod-menu > .metismenu-item {
    position: relative;
}

.container-nav .mm-collapse {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    min-width: 270px;
    padding: 4px 0; /* було 10px */
    margin: 0;
    border-top: 3px solid #1b365d;
    box-shadow: 0 5px 15px rgba(0,0,0,.15);
    z-index: 9999;
}

.container-nav .metismenu-item:hover > .mm-collapse {
    display: block !important;
}

/* Прибираємо зайві відступи у вкладених пунктах */
.container-nav .mm-collapse .metismenu-item {
    display: block;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1;
}

.container-nav .mm-collapse a {
   display: block;
    padding: 8px 16px !important;
    margin: 0 !important;
    color: #1b365d !important;
    font-size: 16px !important;
    font-weight: 500;
    line-height: 1.35;
    text-transform: none;
    white-space: normal;
}

.container-nav .mm-collapse a:hover {
    background: #1b365d;
    color: #fff !important;
}

.container-nav .mm-toggler {
    display: none;
}
/* ============================= */
/* Заголовок сторінки */
/* ============================= */

.page-header h1 {
    text-align: center;
    color: #0057c8;
    font-size: 36px;
    font-weight: 700;
    margin: 30px 0 45px;
    position: relative;
    padding-bottom: 15px;
}

.page-header h1:after {
    content: "";
    position: absolute;
    width: 120px;
    height: 4px;
    background: #0057c8;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    border-radius: 5px;
}

/* ============================= */
/* Анімація шапки */
/* ============================= */

.container-topbar,
.navbar-brand,
.navbar-brand img {
    transition: all .35s ease;
}

/* Ховаємо верхню синю смугу */

.header-small .container-topbar {
    display: none;
}
/* Плавно ховаємо логотип */

.navbar-brand {
    overflow: hidden;
}

.header-small .navbar-brand {
    display: none;
}
/* Меню трохи компактніше */

.header-small .container-nav .mod-menu > li > a {
    padding-top: 8px;
    padding-bottom: 8px;
    font-size: 16px;
}
.kpkl-hero{
    background:linear-gradient(135deg,#0057B8,#0086ff);
    color:#fff;
    border-radius:22px;
    padding:80px 40px;
    text-align:center;
    margin:30px 0 50px;
    box-shadow:0 20px 60px rgba(0,0,0,.15);
}

.kpkl-badge{
    display:inline-block;
    background:rgba(255,255,255,.15);
    padding:8px 18px;
    border-radius:30px;
    margin-bottom:25px;
    font-weight:600;
}

.kpkl-hero h1{
    font-size:54px;
    font-weight:800;
    margin-bottom:20px;
}

.kpkl-hero p{
    font-size:22px;
    max-width:850px;
    margin:auto;
    line-height:1.7;
}

.kpkl-hero .btn{
    margin-top:35px;
    border-radius:50px;
    padding:14px 40px;
    font-size:20px;
    font-weight:700;
}

@media(max-width:768px){

.kpkl-hero{
padding:50px 20px;
}

.kpkl-hero h1{
font-size:36px;
}

.kpkl-hero p{
font-size:18px;
}

}

.pg-msnr-container{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:35px;
    margin:60px auto;
}

.kpkl-video-card{
    background:#fff;
    border-radius:18px;
    overflow:hidden;
    box-shadow:0 10px 35px rgba(0,0,0,.08);
    transition:.35s;
}

.kpkl-video-card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 50px rgba(0,0,0,.18);
}

.kpkl-video-card a{
    text-decoration:none;
    color:#222;
}

.kpkl-video-thumb{
    position:relative;
    overflow:hidden;
}

.kpkl-video-thumb img{
    width:100%;
    display:block;
    transition:.4s;
}

.kpkl-video-card:hover img{
    transform:scale(1.08);
}

.kpkl-play{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    width:74px;
    height:74px;
    border-radius:50%;
    background:#ffc107;
    color:#000;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:34px;
    font-weight:bold;
    box-shadow:0 8px 25px rgba(0,0,0,.3);
}

.kpkl-video-info{
    padding:25px;
}

.kpkl-video-info h3{
    font-size:22px;
    margin:0 0 10px;
}

.kpkl-video-info span{
    color:#0d6efd;
    font-weight:600;
}

/* Картка */
.pg-item-box{
    border-radius:16px;
    overflow:hidden;
    background:#fff;
    box-shadow:0 8px 25px rgba(0,0,0,.12);
    transition:.3s;
    margin-bottom:30px;
}

.pg-item-box:hover{
    transform:translateY(-8px);
    box-shadow:0 18px 45px rgba(0,0,0,.25);
}

/* Картинка */
.pg-item-box-image{
    position:relative;
    aspect-ratio:16/9;
    overflow:hidden;
    background:#000;
}

.pg-item-box-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.4s;
}

.pg-item-box:hover img{
    transform:scale(1.08);
}

/* Темний градієнт */
.pg-item-box-image:after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:45%;
    background:linear-gradient(transparent,rgba(0,0,0,.75));
}

/* Заголовок */
.pg-item-box-title{
    position:absolute;
    left:18px;
    right:18px;
    bottom:18px;
    z-index:20;
    color:#fff;
    font-size:18px;
    font-weight:700;
    line-height:1.4;
    text-shadow:0 2px 8px rgba(0,0,0,.7);
}

.pg-item-box-title a{
    color:#fff !important;
    text-decoration:none;
}

/* Прибрати сіру смугу */
.pg-item-box-info{
    padding:0;
    background:transparent;
}

/* Іконки */
.pg-item-box-icons-box{
    position:absolute;
    top:12px;
    right:12px;
    z-index:30;
    display:flex;
    gap:8px;
}

.pg-item-box-icons-box a{
    width:38px;
    height:38px;
    border-radius:50%;
    background:rgba(0,0,0,.55);
    display:flex;
    align-items:center;
    justify-content:center;
    transition:.25s;
}

.pg-item-box-icons-box a:hover{
    background:#0d6efd;
    transform:scale(1.1);
}

.pg-item-box-icons-box svg{
    fill:#fff;
    width:18px;
    height:18px;
}

/* Приховати зайве */
.pg-category-box-rating,
.pg-item-box-tags,
.pg-item-box-descripton{
    display:none!important;
}

/* Кнопка Play */
.pg-item-box-image:before{
    content:"▶";
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    width:72px;
    height:72px;
    border-radius:50%;
    background:rgba(255,0,0,.92);
    color:#fff;
    font-size:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:15;
    transition:.3s;
}

.pg-item-box:hover .pg-item-box-image:before{
    transform:translate(-50%,-50%) scale(1.15);
}

/* Адаптивність */
@media (max-width:768px){

.pg-item-box-title{
    font-size:16px;
}

.pg-item-box-image:before{
    width:56px;
    height:56px;
    font-size:28px;
}

}

/* ===== Новини в один ряд ===== */

/* Картка новини */
.com-content-category-blog__item.blog-item{
    display:grid;
    grid-template-columns:320px 1fr;
    gap:25px;
    align-items:start;
    margin:0 0 35px;
    padding:20px;
    border:1px solid #ddd;
    border-radius:12px;
    background:#fff;
}

/* Фото */
.com-content-category-blog__item.blog-item .item-image{
    margin:0 !important;
    float:none !important;
    width:100% !important;
    max-width:none !important;
}

.com-content-category-blog__item.blog-item .item-image img{
    width:100%;
    display:block;
    border-radius:8px;
}

/* Текст */
.com-content-category-blog__item.blog-item .item-content{
    display:block;
    min-width:0;
}

.com-content-category-blog__item.blog-item .page-header{
    margin:0 0 10px;
}

.com-content-category-blog__item.blog-item h2{
    margin:0;
    font-size:28px;
}

.com-content-category-blog__item.blog-item .article-info{
    margin:10px 0 15px;
}

.com-content-category-blog__item.blog-item .readmore{
    margin-top:20px;
}

/* Мобільна версія */
@media (max-width:768px){

.com-content-category-blog__item.blog-item{
    grid-template-columns:1fr;
}

}
/* Заголовок новини */

.com-content-article h1{

    font-size:52px;
    font-weight:800;
    line-height:1.2;
    color:#1b365d;
    margin-bottom:25px;
    text-align:center;

}

/* Дата */

.com-content-article .article-info{

    text-align:center;
    color:#666;
    font-size:17px;
    margin-bottom:35px;

}

.com-content-article .article-info dt,
.com-content-article .category-name{
    display:none;
}

/* Основний текст */

.com-content-article p{

    font-size:24px;
    line-height:1.95;
    color:#1b365d;
    font-weight:400;
    margin-bottom:28px;

}

/* Виділення */

.com-content-article strong,
.com-content-article b{

    color:#0057c8;
    font-weight:700;

}

/* Посилання */

.com-content-article a{

    color:#0057c8;
    font-weight:600;

}

.com-content-article a:hover{

    color:#ffc107;

}

/* Заголовок галереї */

.com-content-article h3{

    font-size:36px;
    text-align:center;
    color:#1b365d;
    margin:60px 0 30px;
    position:relative;

}

.com-content-article h3::after{

    content:"";
    display:block;
    width:120px;
    height:4px;
    margin:15px auto 0;
    background:#ffc107;
    border-radius:4px;

}

/* Фото */

.com-content-article img{

    border-radius:14px;

}

/* Мобільна */

@media(max-width:768px){

.com-content-article h1{
    font-size:36px;
}

.com-content-article p{
    font-size:20px;
}

}
/* Основний текст новини */

.com-content-article .com-content-article__body{
    font-size:30px !important;
    line-height:1.9 !important;
    color:#1b365d;
}

/* Для всіх вкладених елементів */

.com-content-article .com-content-article__body p,
.com-content-article .com-content-article__body div,
.com-content-article .com-content-article__body span,
.com-content-article .com-content-article__body li{
    font-size:inherit !important;
    line-height:inherit !important;
    color:inherit !important;
}

/* Виділення */

.com-content-article .com-content-article__body b,
.com-content-article .com-content-article__body strong{
    color:#0057c8;
    font-weight:700;
}

/* ===== Галерея під текстом ===== */

.kp-gallery{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
    gap:18px;
    margin:50px 0 20px;
}

.kp-gallery img{
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    border-radius:14px;
    cursor:pointer;
    box-shadow:0 10px 25px rgba(0,0,0,.15);
    transition:.35s;
}

.kp-gallery img:hover{
    transform:scale(1.04);
    box-shadow:0 18px 45px rgba(0,0,0,.28);
}

.kp-gallery h3{
    grid-column:1/-1;
    font-size:32px;
    color:#1b365d;
    font-weight:700;
    margin:0 0 15px;
    padding-bottom:10px;
    border-bottom:4px solid #ffc107;
}

@media (max-width:768px){

.kp-gallery{
    grid-template-columns:1fr;
    gap:14px;
}

.kp-gallery h3{
    font-size:26px;
}

}
/* ===== Фотогалерея ===== */
#kpLightbox{
    display:none;
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.9);
    z-index:99999;
    justify-content:center;
    align-items:center;
    cursor:zoom-out;
}

#kpLightbox img{
    max-width:92%;
    max-height:92%;
    border-radius:10px;
    box-shadow:0 15px 40px rgba(0,0,0,.5);
}

.kp-gallery-item{
    display:block;
}

.kp-close{

    position:absolute;
    top:20px;
    right:30px;

    color:#fff;
    font-size:48px;
    line-height:1;

    cursor:pointer;
    z-index:1000000;

    transition:.25s;

    user-select:none;

}

.kp-close:hover{

    color:#ffc107;

}

/* ========================= */
/* Lightbox */
/* ========================= */

#kpLightbox{
    display:none;
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.92);
    z-index:99999;

    justify-content:center;
    align-items:center;
}

#kpLightbox img{
    max-width:90%;
    max-height:90%;
    border-radius:12px;
    box-shadow:0 15px 45px rgba(0,0,0,.45);
}

/* Закриття */

.kp-close{

    position:absolute;
    top:20px;
    right:30px;

    color:#fff;
    font-size:54px;
    font-weight:300;

    cursor:pointer;

    transition:.25s;

    user-select:none;
}

.kp-close:hover{

    color:#ffc107;

}

/* Стрілки */

.kp-prev,
.kp-next{

    position:absolute;
    top:50%;

    transform:translateY(-50%);

    width:64px;
    height:64px;

    border-radius:50%;

    background:rgba(255,255,255,.18);

    color:#fff;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:42px;
    font-weight:700;

    cursor:pointer;

    transition:.25s;

    user-select:none;
}

.kp-prev{

    left:25px;

}

.kp-next{

    right:25px;

}

.kp-prev:hover,
.kp-next:hover{

    background:#ffc107;
    color:#000;

    transform:translateY(-50%) scale(1.12);

}

/* Телефон */

@media (max-width:768px){

    .kp-prev,
    .kp-next{

        width:50px;
        height:50px;

        font-size:30px;

    }

    .kp-prev{

        left:10px;

    }

    .kp-next{

        right:10px;

    }

    .kp-close{

        right:15px;
        top:10px;

        font-size:42px;

    }

}

/* ===== Заплановані події ===== */

.home-events-plan .mod-articles-items{
    list-style:none;
    padding:0;
    margin:0;
}

.home-events-plan .mod-articles-items li{
    margin-bottom:30px;
}

.home-events-plan .mod-articles-item{

    background:#fff;

    border-radius:18px;

    overflow:hidden;

    border:1px solid #dfe3e7;

    box-shadow:0 10px 25px rgba(0,0,0,.08);

    transition:.3s;

}

.home-events-plan .mod-articles-item:hover{

    transform:translateY(-6px);

    box-shadow:0 20px 45px rgba(0,0,0,.18);

}

.home-events-plan .mod-articles-item-content{

    display:block !important;

}

/* Фото */

.home-events-plan .mod-articles-image{

    margin:0 !important;

}

.home-events-plan .mod-articles-image img{

    width:100%;
    max-height:320px;

    object-fit:contain;

}

/* Заголовок */

.home-events-plan .mod-articles-title{

    margin:0;

    padding:15px 18px;

    font-size:18px;

    line-height:1.3;

    font-weight:600;

}

.home-events-plan .mod-articles-title a{

    color:#1b365d !important;

    text-decoration:none;

}

.home-events-plan .mod-articles-title a:hover{

    color:#0d6efd !important;

}

/* ===== Новини ===== */

.home-events-news .mod-articles-items{
    list-style:none;
    margin:0;
    padding:0;
}

.home-events-news .mod-articles-items li{
    margin-bottom:22px;
}

.home-events-news .mod-articles-item{

    background:#fff;

    border:1px solid #dfe3e7;
    border-left:6px solid #1b365d;

    border-radius:16px;

    overflow:hidden;

    box-shadow:0 8px 20px rgba(0,0,0,.08);

    transition:.3s;

}

.home-events-news .mod-articles-item:hover{

    transform:translateY(-4px);

    box-shadow:0 16px 35px rgba(0,0,0,.16);

}

.home-events-news .mod-articles-item-content{

    display:flex !important;
    align-items:center;
    gap:20px;

    padding:18px;

}

/* Фото */

.home-events-news .mod-articles-image{

    flex:0 0 220px;

    margin:0 !important;

}

.home-events-news .mod-articles-image img{

    width:220px;
    height:150px;

    object-fit:cover;

    border-radius:12px;

    display:block;

}

/* Заголовок */

.home-events-news .mod-articles-title{

    margin:0;

    flex:1;

    font-size:22px;

    line-height:1.35;

    font-weight:700;

}

.home-events-news .mod-articles-title a{

    color:#1b365d !important;
    text-decoration:none;

}

.home-events-news .mod-articles-title a:hover{

    color:#0d6efd !important;

}

/* Мобільна версія */

@media (max-width:768px){

.home-events-news .mod-articles-item-content{

    display:block !important;

}

.home-events-news .mod-articles-image{

    width:100%;
    margin-bottom:15px !important;

}

.home-events-news .mod-articles-image img{

    width:100%;
    height:auto;

}

.home-events-news .mod-articles-title{

    font-size:19px;

}

}
.footer-grid{

    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:40px;

}

.footer-col h4{

    color:#6aa9ff;
    margin-bottom:20px;
    font-size:22px;

}

.footer-col a,
.footer-col p{

    display:block;

    color:#fff;

    margin-bottom:12px;

    text-decoration:none;

}

.footer-col a:hover{

    color:#6aa9ff;

}

.footer-copy{

    margin-top:40px;

    padding-top:20px;

    border-top:1px solid rgba(255,255,255,.2);

    text-align:center;

    color:#ddd;

}

@media(max-width:992px){

.footer-grid{

    grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:600px){

.footer-grid{

    grid-template-columns:1fr;

}

}

.footer{
    border-top:4px solid #0d6efd;
}

/* ============================= */
/* Менша шапка */
/* ============================= */

.navbar-brand{
    padding: 10px 0;
}

.navbar-brand img{
    max-height: 85px;
    width: auto;
    transition: .3s;
}

.navbar-brand a{
    display:flex;
    align-items:center;
}

.header.container-header .grid-child{
    padding-top:8px;
    padding-bottom:8px;
}

.modal {
    z-index: 10001 !important;
}

.modal-backdrop {
    z-index: 10000 !important;
}

.ph-pswp-wrapper{
    display:flex;
    justify-content:center;
    align-items:center;
    width:100%;
    height:100%;
}

.ph-pswp-video-wrapper{
    width:min(960px,90vw);
    aspect-ratio:16/9;
}

.ph-pswp-video-wrapper iframe{
    width:100%;
    height:100%;
    border:0;
    border-radius:12px;
}
.pswp{
    z-index:20000 !important;
}

.pswp__top-bar{
    z-index:20001 !important;
}

.pswp__button--close{
    z-index:20002 !important;
}

/* Контейнер категорій */
.pg-categories-items-box{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:30px;
    margin:30px 0;
}

/* На телефоні */
@media (max-width:768px){
    .pg-categories-items-box{
        grid-template-columns:1fr;
    }
}

/* Картка */
.pg-category-box{
    display:flex;
    align-items:center;
    background:#fff;
    border:1px solid #e5e5e5;
    border-radius:16px;
    overflow:hidden;
    box-shadow:0 8px 24px rgba(0,0,0,.08);
    transition:.25s;
}

.pg-category-box:hover{
    transform:translateY(-5px);
    box-shadow:0 16px 40px rgba(0,0,0,.15);
}

/* Фото */
.pg-category-box-image{
    width:240px;
    flex-shrink:0;
}

.pg-category-box-image img{
    width:100%;
    height:180px;
    object-fit:cover;
    display:block;
}

/* Інформація */
.pg-category-box-info{
    flex:1;
    padding:24px;
}

.pg-category-box-title{
    font-size:24px;
    font-weight:700;
    line-height:1.3;
}

.pg-category-box-title a{
    color:#222;
    text-decoration:none;
}

.pg-category-box-title a:hover{
    color:#0d6efd;
}

.pg-category-box-count{
    display:inline-block;
    margin-top:10px;
    padding:5px 12px;
    border-radius:20px;
    background:#0d6efd;
    color:#fff;
    font-size:14px;
}

/* Планшети */
@media (max-width:992px){
    .pg-category-box{
        flex-direction:column;
    }

    .pg-category-box-image{
        width:100%;
    }

    .pg-category-box-image img{
        height:220px;
    }

    .pg-category-box-info{
        width:100%;
    }
}
/* ===== Контейнер категорій ===== */

.pg-categories-items-box{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:30px;
}


/* ===== Картка ===== */

.pg-category-box{
    background:#fff;
    border-radius:16px;
    overflow:hidden;
    box-shadow:0 8px 24px rgba(0,0,0,.08);
    transition:.3s;
}

.pg-category-box:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 45px rgba(0,0,0,.16);
}


/* ===== Фото ===== */

.pg-category-box-image{
    overflow:hidden;
}

.pg-category-box-image img{
    display:block;
    width:100%;
    aspect-ratio:16/9;
    object-fit:cover;
    transition:.4s;
}

.pg-category-box:hover img{
    transform:scale(1.06);
}


/* ===== Текст ===== */

.pg-category-box-info{
    padding:18px;
}

.pg-category-box-title{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    font-size:20px;
    font-weight:700;
}

.pg-category-box-title a{
    color:#1b4f8a;
    text-decoration:none;
    flex:1;
}

.pg-category-box-title a:hover{
    color:#0d6efd;
}

.pg-category-box-count{
    background:#0d6efd;
    color:#fff;
    border-radius:999px;
    padding:3px 10px;
    font-size:13px;
}

.pg-category-box-title svg{
    display:none;
}
.pg-category-box-image{
    width:100%;
    overflow:hidden;
}

.pg-category-box-image img{
    display:block;
    width:100%;
    height:220px;      /* можна 240 або 250 */
    object-fit:cover;
    border-radius:12px 12px 0 0;
}
.teacher-card{
    background:#fff;
    border-radius:18px;
    padding:25px;
    border:1px solid #d9e4ef;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.3s;
    overflow:hidden;
}

.teacher-card:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 40px rgba(0,0,0,.15);
}