/**
 * IDEALAB responsive layer
 *
 * Адаптивні стилі для теми Byte та головних сторінок:
 * - українська: page ID 2670
 * - англійська: page ID 2936
 *
 * Version: 1.0.0
 */

/* ============================================================
   1. Загальна безпека адаптивного макета
   ============================================================ */

html,
body {
    max-width: 100%;
    overflow-x: hidden;
}

img,
svg,
video,
iframe {
    max-width: 100%;
}

.elementor img {
    height: auto;
}

.site,
.site-main,
.elementor,
.elementor-section,
.elementor-container,
.elementor-column,
.elementor-widget-wrap {
    min-width: 0;
}

/* Довгі українські та англійські заголовки */
body.page-id-2670 h1,
body.page-id-2670 h2,
body.page-id-2670 h3,
body.page-id-2936 h1,
body.page-id-2936 h2,
body.page-id-2936 h3 {
    overflow-wrap: anywhere;
    word-break: normal;
}

/* ============================================================
   2. Desktop header
   ============================================================ */

.site-header2 .menu-bar .menu-container {
    width: min(100% - 32px, 1310px);
}

.site-header2 .menu-bar .site-logo {
    flex: 0 0 auto;
}

.site-header2 .menu-bar .site-logo img {
    width: auto;
    max-width: 180px;
    max-height: 72px;
    object-fit: contain;
}

.site-header2 .menu-bar .main-navigation {
    min-width: 0;
}

.site-header2 .menu-bar .main-navigation > .menu-ul {
    align-items: center;
    justify-content: center;
    row-gap: 0;
}

.site-header2 .menu-bar .main-navigation li a {
    white-space: normal;
    text-align: center;
}

.site-header2 .menu-bar .component {
    flex: 0 0 auto;
}

/* ============================================================
   3. Mobile header
   ============================================================ */

.mobile-menu {
    width: 100%;
    background: #ffffff;
    z-index: 999;
}

.mobile-menu .menu-bar {
    min-height: 76px;
}

.mobile-menu .site-logo img {
    display: block;
    width: auto;
    max-width: 170px;
    max-height: 56px;
    object-fit: contain;
}

.mobile-menu .menu-element {
    flex: 0 0 auto;
}

.mobile-menu .search-icon,
.mobile-menu .menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin: 0;
    border-radius: 8px;
}

.mobile-menu .menu-toggle {
    margin-left: 4px;
}

.mobile-menu .menu-ul {
    max-height: calc(100vh - 76px);
    overflow-y: auto;
    overscroll-behavior: contain;
}

.mobile-menu .menu-ul li {
    width: 100%;
}

.mobile-menu .menu-ul li a {
    min-height: 44px;
    padding: 10px 12px;
    line-height: 1.35;
}

.mobile-menu .menu-ul .sub-menu {
    padding-left: 14px;
}

/* Polylang у мобільному меню */
.mobile-menu .lang-item a,
.mobile-menu .pll-parent-menu-item > a {
    justify-content: flex-start;
}

/* ============================================================
   4. Головна сторінка: загальні обмеження
   ============================================================ */

body.page-id-2670 .elementor-section > .elementor-container,
body.page-id-2936 .elementor-section > .elementor-container {
    width: min(100% - 40px, 1320px);
}

/* Hero */
body.page-id-2670 .hero-particles .wrapper,
body.page-id-2936 .hero-particles .wrapper {
    width: min(100% - 40px, 1000px) !important;
    max-width: 100%;
}

body.page-id-2670 .hero-particles .title,
body.page-id-2936 .hero-particles .title {
    font-size: clamp(36px, 4vw, 48px) !important;
    line-height: 1.12;
}

/* Усі основні заголовки секцій */
body.page-id-2670 .section-title,
body.page-id-2936 .section-title {
    width: 100% !important;
    max-width: 1000px;
}

body.page-id-2670 .section-title .subtitle,
body.page-id-2936 .section-title .subtitle {
    font-size: clamp(36px, 4.5vw, 56px) !important;
    line-height: 1.12;
}

/* Зображення у блоці "Про кафедру" */
body.page-id-2670 .elementor-element-0fa78b3 img,
body.page-id-2936 .elementor-element-0fa78b3 img {
    width: 100%;
    height: auto !important;
    max-height: 420px;
    object-fit: contain;
}

/* Картки та внутрішні елементи */
body.page-id-2670 .service-box,
body.page-id-2936 .service-box,
body.page-id-2670 .portfolio-carousel,
body.page-id-2936 .portfolio-carousel,
body.page-id-2670 .blogpost,
body.page-id-2936 .blogpost {
    max-width: 100%;
}

/* ============================================================
   5. Ноутбуки та невеликі desktop
   ============================================================ */

@media (max-width: 1199px) {

    /* Перемикаємо тему на її мобільний header */
    .site-header2 {
        display: none !important;
    }

    .mobile-menu {
        display: block !important;
    }

    body.page-id-2670 .elementor-section > .elementor-container,
    body.page-id-2936 .elementor-section > .elementor-container {
        width: min(100% - 36px, 960px);
    }

    body.page-id-2670 .hero-particles,
    body.page-id-2936 .hero-particles {
        background-size: cover !important;
        background-position: center center !important;
    }

    body.page-id-2670 .hero-particles .title,
    body.page-id-2936 .hero-particles .title {
        font-size: clamp(34px, 4.5vw, 46px) !important;
    }
}

/* ============================================================
   6. Планшети
   ============================================================ */

@media (max-width: 991px) {

    .mobile-menu .menu-bar {
        padding: 14px 24px;
    }

    body.page-id-2670 .elementor-section > .elementor-container,
    body.page-id-2936 .elementor-section > .elementor-container {
        width: min(100% - 32px, 760px);
    }

    /* Основні вертикальні відступи секцій */
    body.page-id-2670 .elementor-element-3010a85,
    body.page-id-2936 .elementor-element-3010a85,
    body.page-id-2670 .elementor-element-9f5ae26,
    body.page-id-2936 .elementor-element-9f5ae26,
    body.page-id-2670 .elementor-element-8f9e14b,
    body.page-id-2936 .elementor-element-8f9e14b,
    body.page-id-2670 .elementor-element-d4176eb,
    body.page-id-2936 .elementor-element-d4176eb {
        padding-top: 64px !important;
        padding-bottom: 64px !important;
    }

    /* Зайві spacer-и на планшеті */
    body.page-id-2670 .elementor-element-545f757,
    body.page-id-2936 .elementor-element-545f757,
    body.page-id-2670 .elementor-element-c321f43,
    body.page-id-2936 .elementor-element-c321f43,
    body.page-id-2670 .elementor-element-39a5dae,
    body.page-id-2936 .elementor-element-39a5dae {
        --spacer-size: 40px !important;
    }

    /* Блок "Про кафедру" */
    body.page-id-2670 .elementor-element-de32648 > .elementor-container,
    body.page-id-2936 .elementor-element-de32648 > .elementor-container {
        row-gap: 28px;
    }

    /* Три напрями: дві картки + третя по центру */
    body.page-id-2670 .elementor-element-8f15242 > .elementor-container,
    body.page-id-2936 .elementor-element-8f15242 > .elementor-container {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    body.page-id-2670 .elementor-element-8f15242 > .elementor-container > .elementor-column,
    body.page-id-2936 .elementor-element-8f15242 > .elementor-container > .elementor-column {
        width: 50% !important;
    }

    body.page-id-2670 .elementor-element-8f15242 > .elementor-container > .elementor-column:last-child,
    body.page-id-2936 .elementor-element-8f15242 > .elementor-container > .elementor-column:last-child {
        width: 50% !important;
    }

    body.page-id-2670 .section-title .subtitle,
    body.page-id-2936 .section-title .subtitle {
        font-size: clamp(34px, 6vw, 46px) !important;
    }

    body.page-id-2670 .elementor-element-0fa78b3 img,
    body.page-id-2936 .elementor-element-0fa78b3 img {
        max-height: 360px;
    }
}

/* ============================================================
   7. Мобільні телефони
   ============================================================ */

@media (max-width: 767px) {

    .mobile-menu .menu-bar {
        min-height: 68px;
        padding: 10px 16px;
    }

    .mobile-menu .site-logo img {
        max-width: 145px;
        max-height: 48px;
    }

    .mobile-menu .menu-ul {
        padding: 16px 12px 22px;
        max-height: calc(100vh - 68px);
    }

    .mobile-menu .menu-ul li a {
        padding: 11px 10px;
    }

    .search-window .search-close {
        top: 20px;
        right: 20px;
    }

    .search-window form {
        left: 16px;
        right: 16px;
    }

    .search-window .form-group input[type="text"],
    .search-window .form-group input[type="search"] {
        height: 58px;
        padding: 8px 64px 8px 16px;
        font-size: 16px;
    }

    .search-window .form-group input[type="submit"],
    .search-window .form-group button {
        width: 58px;
        height: 58px;
        line-height: 58px;
    }

    body.page-id-2670 .elementor-section > .elementor-container,
    body.page-id-2936 .elementor-section > .elementor-container {
        width: min(100% - 24px, 100%);
    }

    /* Hero */
    body.page-id-2670 .hero-particles,
    body.page-id-2936 .hero-particles {
        min-height: auto;
        background-size: cover !important;
        background-position: center center !important;
    }

    body.page-id-2670 .hero-particles .wrapper,
    body.page-id-2936 .hero-particles .wrapper {
        width: 100% !important;
        padding-left: 16px;
        padding-right: 16px;
    }

    body.page-id-2670 .hero-particles .title,
    body.page-id-2936 .hero-particles .title {
        font-size: clamp(28px, 9vw, 38px) !important;
        line-height: 1.1;
    }

    body.page-id-2670 .hero-particles .desc-subtitle,
    body.page-id-2936 .hero-particles .desc-subtitle {
        display: inline;
    }

    /* Основні секції */
    body.page-id-2670 .elementor-element-3010a85,
    body.page-id-2936 .elementor-element-3010a85,
    body.page-id-2670 .elementor-element-9f5ae26,
    body.page-id-2936 .elementor-element-9f5ae26,
    body.page-id-2670 .elementor-element-8f9e14b,
    body.page-id-2936 .elementor-element-8f9e14b,
    body.page-id-2670 .elementor-element-d4176eb,
    body.page-id-2936 .elementor-element-d4176eb {
        padding-top: 44px !important;
        padding-bottom: 44px !important;
    }

    body.page-id-2670 .elementor-element-545f757,
    body.page-id-2936 .elementor-element-545f757,
    body.page-id-2670 .elementor-element-c321f43,
    body.page-id-2936 .elementor-element-c321f43,
    body.page-id-2670 .elementor-element-39a5dae,
    body.page-id-2936 .elementor-element-39a5dae {
        --spacer-size: 20px !important;
    }

    body.page-id-2670 .section-title .subtitle,
    body.page-id-2936 .section-title .subtitle {
        font-size: clamp(29px, 8vw, 38px) !important;
        line-height: 1.14;
    }

    body.page-id-2670 .section-title .title,
    body.page-id-2936 .section-title .title {
        font-size: clamp(16px, 4.5vw, 19px);
        line-height: 1.55;
    }

    /* Три напрями — по одній картці */
    body.page-id-2670 .elementor-element-8f15242 > .elementor-container > .elementor-column,
    body.page-id-2936 .elementor-element-8f15242 > .elementor-container > .elementor-column,
    body.page-id-2670 .elementor-element-8f15242 > .elementor-container > .elementor-column:last-child,
    body.page-id-2936 .elementor-element-8f15242 > .elementor-container > .elementor-column:last-child {
        width: 100% !important;
    }

    body.page-id-2670 .elementor-element-8f15242 .elementor-widget-wrap,
    body.page-id-2936 .elementor-element-8f15242 .elementor-widget-wrap {
        padding-left: 0;
        padding-right: 0;
    }

    /* Зображення "Про кафедру" */
    body.page-id-2670 .elementor-element-0fa78b3 img,
    body.page-id-2936 .elementor-element-0fa78b3 img {
        max-height: 300px;
    }

    /* Кнопки */
    body.page-id-2670 .single-button a,
    body.page-id-2936 .single-button a,
    body.page-id-2670 .hero-particles a,
    body.page-id-2936 .hero-particles a {
        max-width: 100%;
        white-space: normal;
        text-align: center;
    }

    /* Footer */
    .site-footer {
        text-align: center;
    }

    .site-footer .copyright-text {
        line-height: 1.5;
    }
}

/* ============================================================
   8. Маленькі мобільні
   ============================================================ */

@media (max-width: 480px) {

    .mobile-menu .menu-bar {
        padding-left: 12px;
        padding-right: 10px;
    }

    .mobile-menu .site-logo img {
        max-width: 130px;
    }

    .mobile-menu .search-icon,
    .mobile-menu .menu-toggle {
        width: 40px;
        height: 40px;
    }

    body.page-id-2670 .elementor-section > .elementor-container,
    body.page-id-2936 .elementor-section > .elementor-container {
        width: min(100% - 20px, 100%);
    }

    body.page-id-2670 .hero-particles .wrapper,
    body.page-id-2936 .hero-particles .wrapper {
        padding-left: 10px;
        padding-right: 10px;
    }

    body.page-id-2670 .hero-particles .title,
    body.page-id-2936 .hero-particles .title {
        font-size: clamp(25px, 9.5vw, 33px) !important;
    }

    body.page-id-2670 .section-title .subtitle,
    body.page-id-2936 .section-title .subtitle {
        font-size: clamp(27px, 9vw, 34px) !important;
    }

    body.page-id-2670 .elementor-element-3010a85,
    body.page-id-2936 .elementor-element-3010a85,
    body.page-id-2670 .elementor-element-9f5ae26,
    body.page-id-2936 .elementor-element-9f5ae26,
    body.page-id-2670 .elementor-element-8f9e14b,
    body.page-id-2936 .elementor-element-8f9e14b,
    body.page-id-2670 .elementor-element-d4176eb,
    body.page-id-2936 .elementor-element-d4176eb {
        padding-top: 36px !important;
        padding-bottom: 36px !important;
    }
}


/* IDEALAB RESPONSIVE V1.1 START */

/**
 * IDEALAB responsive corrections v1.1
 *
 * Виправляє конфлікт із byte-elementor-addons:
 * - style3 wrapper height: 920px;
 * - absolute positioning із зовнішнього Custom CSS;
 * - вертикальне розділення фонового зображення та контенту.
 */

/* ============================================================
   1. Мобільний логотип
   ============================================================ */

.mobile-menu .site-logo {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    min-width: 72px;
}

.mobile-menu .site-logo a {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 88px;
    height: 58px;
    overflow: visible;
}

.mobile-menu .site-logo a img {
    display: block;
    width: 72px !important;
    height: 56px !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain;
    object-position: left center;
}

/* ============================================================
   2. Планшети та невеликі ноутбуки
   ============================================================ */

@media (max-width: 1199px) {

    /*
     * На мобільних пристроях прибираємо невідповідне фонове
     * зображення та залишаємо чистий фірмовий hero.
     */
    body.page-id-2670 .elementor-element-6d3aed1 .hero-particles,
    body.page-id-2936 .elementor-element-6d3aed1 .hero-particles {
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        width: 100% !important;
        height: auto !important;
        min-height: 540px !important;

        padding: 92px 32px 72px !important;

        background-color: #141b4d !important;
        background-image: none !important;
        overflow: hidden;
    }

    /*
     * Скасовуємо absolute, bottom, left та margin із Custom CSS.
     * Також перекриваємо height: 800/920px із плагіна.
     */
    body.page-id-2670 .hero-particles.style3 .wrapper,
    body.page-id-2936 .hero-particles.style3 .wrapper,
    body.page-id-2670 .hero-particles .wrapper,
    body.page-id-2936 .hero-particles .wrapper {
        position: relative !important;

        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        inset: auto !important;

        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-content: center !important;
        align-items: center !important;
        justify-content: center !important;

        width: min(100%, 920px) !important;
        max-width: 920px !important;
        height: auto !important;
        min-height: 0 !important;

        margin: 0 auto !important;
        padding: 0 !important;

        text-align: center !important;
        background: transparent !important;
        transform: none !important;
    }

    body.page-id-2670 .hero-particles.style3 .wrapper .content,
    body.page-id-2936 .hero-particles.style3 .wrapper .content,
    body.page-id-2670 .hero-particles .wrapper .content,
    body.page-id-2936 .hero-particles .wrapper .content {
        position: relative !important;
        width: 100% !important;
        max-width: 920px !important;

        margin: 0 !important;
        padding: 0 !important;

        text-align: center !important;
    }

    /*
     * У hero використовується фонове зображення Elementor,
     * тому внутрішні image/single-img на мобільному не потрібні.
     */
    body.page-id-2670 .hero-particles.style3 .wrapper .image,
    body.page-id-2936 .hero-particles.style3 .wrapper .image,
    body.page-id-2670 .hero-particles.style3 .wrapper .single-img,
    body.page-id-2936 .hero-particles.style3 .wrapper .single-img,
    body.page-id-2670 .hero-particles.style3 .wrapper .single-image,
    body.page-id-2936 .hero-particles.style3 .wrapper .single-image,
    body.page-id-2670 .hero-particles.style3 .wrapper .shape,
    body.page-id-2936 .hero-particles.style3 .wrapper .shape {
        display: none !important;
    }

    body.page-id-2670 .hero-particles .title,
    body.page-id-2936 .hero-particles .title {
        width: 100%;
        max-width: 900px;

        margin: 0 auto 24px !important;

        color: #ffffff;
        font-size: clamp(36px, 5vw, 52px) !important;
        line-height: 1.08 !important;
        text-align: center;
    }

    body.page-id-2670 .hero-particles .description,
    body.page-id-2936 .hero-particles .description {
        width: 100% !important;
        max-width: 760px;

        margin: 0 auto 36px !important;

        color: rgba(255, 255, 255, 0.88);
        text-align: center;
    }

    body.page-id-2670 .hero-particles .description p,
    body.page-id-2936 .hero-particles .description p {
        margin: 0;
        color: inherit;
        font-size: clamp(17px, 2vw, 21px);
        line-height: 1.55;
    }

    body.page-id-2670 .hero-particles .button-set,
    body.page-id-2936 .hero-particles .button-set {
        position: relative;
        z-index: 2;

        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 12px;

        width: 100%;
        margin: 0;
    }

    body.page-id-2670 .hero-particles .button-set a,
    body.page-id-2936 .hero-particles .button-set a {
        display: inline-flex;
        align-items: center;
        justify-content: center;

        min-height: 48px;
        margin: 0 !important;
        padding: 13px 28px !important;

        font-size: 16px;
        line-height: 1.2;
    }

    /*
     * Частинки залишаються декоративним тлом і не впливають
     * на позиціонування текстового контенту.
     */
    body.page-id-2670 .hero-particles #particles-js,
    body.page-id-2936 .hero-particles #particles-js {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        pointer-events: none;
    }
}

/* ============================================================
   3. Планшети
   ============================================================ */

@media (max-width: 991px) {

    body.page-id-2670 .elementor-element-6d3aed1 .hero-particles,
    body.page-id-2936 .elementor-element-6d3aed1 .hero-particles {
        min-height: 500px !important;
        padding: 72px 28px 64px !important;
    }

    body.page-id-2670 .hero-particles .title,
    body.page-id-2936 .hero-particles .title {
        max-width: 760px;
        font-size: clamp(34px, 5.7vw, 46px) !important;
    }

    body.page-id-2670 .hero-particles .description,
    body.page-id-2936 .hero-particles .description {
        max-width: 680px;
        margin-bottom: 32px !important;
    }
}

/* ============================================================
   4. Мобільні телефони
   ============================================================ */

@media (max-width: 767px) {

    .mobile-menu .site-logo {
        min-width: 62px;
    }

    .mobile-menu .site-logo a {
        width: 72px;
        height: 52px;
    }

    .mobile-menu .site-logo a img {
        width: 62px !important;
        height: 50px !important;
    }

    body.page-id-2670 .elementor-element-6d3aed1 .hero-particles,
    body.page-id-2936 .elementor-element-6d3aed1 .hero-particles {
        min-height: 460px !important;
        padding: 60px 18px 52px !important;
    }

    body.page-id-2670 .hero-particles.style3 .wrapper,
    body.page-id-2936 .hero-particles.style3 .wrapper,
    body.page-id-2670 .hero-particles .wrapper,
    body.page-id-2936 .hero-particles .wrapper {
        width: 100% !important;
        padding: 0 !important;
    }

    body.page-id-2670 .hero-particles .title,
    body.page-id-2936 .hero-particles .title {
        margin-bottom: 20px !important;
        font-size: clamp(29px, 8vw, 38px) !important;
        line-height: 1.1 !important;
    }

    body.page-id-2670 .hero-particles .description,
    body.page-id-2936 .hero-particles .description {
        margin-bottom: 28px !important;
    }

    body.page-id-2670 .hero-particles .description p,
    body.page-id-2936 .hero-particles .description p {
        font-size: 17px;
        line-height: 1.5;
    }

    body.page-id-2670 .hero-particles .button-set,
    body.page-id-2936 .hero-particles .button-set {
        gap: 10px;
    }

    body.page-id-2670 .hero-particles .button-set a,
    body.page-id-2936 .hero-particles .button-set a {
        min-height: 46px;
        padding: 12px 23px !important;
        font-size: 15px;
    }
}

/* ============================================================
   5. Маленькі телефони
   ============================================================ */

@media (max-width: 480px) {

    .mobile-menu .site-logo {
        min-width: 56px;
    }

    .mobile-menu .site-logo a {
        width: 64px;
        height: 48px;
    }

    .mobile-menu .site-logo a img {
        width: 56px !important;
        height: 46px !important;
    }

    body.page-id-2670 .elementor-element-6d3aed1 .hero-particles,
    body.page-id-2936 .elementor-element-6d3aed1 .hero-particles {
        min-height: 430px !important;
        padding: 52px 14px 46px !important;
    }

    body.page-id-2670 .hero-particles .title,
    body.page-id-2936 .hero-particles .title {
        font-size: clamp(27px, 8.5vw, 34px) !important;
    }

    body.page-id-2670 .hero-particles .description p,
    body.page-id-2936 .hero-particles .description p {
        font-size: 16px;
    }

    body.page-id-2670 .hero-particles .button-set,
    body.page-id-2936 .hero-particles .button-set {
        flex-direction: column;
        align-items: stretch;
        width: min(100%, 280px);
        margin-left: auto;
        margin-right: auto;
    }

    body.page-id-2670 .hero-particles .button-set a,
    body.page-id-2936 .hero-particles .button-set a {
        width: 100%;
    }
}

/* IDEALAB RESPONSIVE V1.1 END */


/* IDEALAB RESPONSIVE V1.2 START */

/**
 * IDEALAB responsive corrections v1.2
 *
 * - скасовує залишкове вертикальне зміщення hero-content;
 * - запобігає обрізанню першого рядка заголовка;
 * - зменшує порожній простір між hero та секцією "Про кафедру".
 */

@media (max-width: 767px) {

    /*
     * Повне скасування залишкових transform/top,
     * які можуть надходити зі стилів hero style3.
     */
    body.page-id-2670 .hero-particles.style3,
    body.page-id-2936 .hero-particles.style3 {
        overflow: hidden !important;
    }

    body.page-id-2670 .hero-particles.style3 .wrapper,
    body.page-id-2936 .hero-particles.style3 .wrapper,
    body.page-id-2670 .hero-particles.style3 .wrapper .content,
    body.page-id-2936 .hero-particles.style3 .wrapper .content {
        position: relative !important;

        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;

        margin-top: 0 !important;
        margin-bottom: 0 !important;

        transform: none !important;
        translate: none !important;
    }

    body.page-id-2670 .elementor-element-6d3aed1 .hero-particles,
    body.page-id-2936 .elementor-element-6d3aed1 .hero-particles {
        height: auto !important;
        min-height: 0 !important;

        padding-top: 74px !important;
        padding-right: 18px !important;
        padding-bottom: 56px !important;
        padding-left: 18px !important;
    }

    body.page-id-2670 .hero-particles .title,
    body.page-id-2936 .hero-particles .title {
        position: relative !important;

        top: auto !important;
        bottom: auto !important;

        margin-top: 0 !important;
        margin-bottom: 22px !important;

        padding-top: 0 !important;

        transform: none !important;

        font-size: clamp(28px, 7.8vw, 36px) !important;
        line-height: 1.16 !important;
    }

    /*
     * Компактніший перехід до секції "Про кафедру".
     */
    body.page-id-2670 .elementor-element-3010a85,
    body.page-id-2936 .elementor-element-3010a85 {
        padding-top: 28px !important;
        padding-bottom: 42px !important;
    }

    body.page-id-2670 .elementor-element-545f757,
    body.page-id-2936 .elementor-element-545f757 {
        --spacer-size: 8px !important;
    }

    body.page-id-2670 .elementor-element-de32648,
    body.page-id-2936 .elementor-element-de32648 {
        margin-top: 0 !important;
    }
}

@media (max-width: 480px) {

    body.page-id-2670 .elementor-element-6d3aed1 .hero-particles,
    body.page-id-2936 .elementor-element-6d3aed1 .hero-particles {
        padding-top: 68px !important;
        padding-right: 14px !important;
        padding-bottom: 48px !important;
        padding-left: 14px !important;
    }

    body.page-id-2670 .hero-particles .title,
    body.page-id-2936 .hero-particles .title {
        font-size: clamp(27px, 7.7vw, 32px) !important;
        line-height: 1.17 !important;
    }

    body.page-id-2670 .hero-particles .description,
    body.page-id-2936 .hero-particles .description {
        margin-bottom: 26px !important;
    }

    body.page-id-2670 .elementor-element-3010a85,
    body.page-id-2936 .elementor-element-3010a85 {
        padding-top: 22px !important;
    }

    body.page-id-2670 .elementor-element-545f757,
    body.page-id-2936 .elementor-element-545f757 {
        --spacer-size: 0px !important;
    }
}

/* IDEALAB RESPONSIVE V1.2 END */
