/* =========================================
   ОБЩИЕ НАСТРОЙКИ
========================================= */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Montserrat',sans-serif;
    color:#0b4a78;
    background:#ffffff;
    overflow-x:hidden;
    margin-left:280px;
    transition:margin-left .4s ease;
}

a{
    text-decoration:none;
}

a:hover{
    text-decoration:none;
}

.layout_padding{
    padding:90px 0;
}

.layout_padding-top{
    padding-top:90px;
}

.layout_padding-bottom{
    padding-bottom:90px;
}

.layout_padding2{
    padding:45px 0;
}

.layout_padding2-top{
    padding-top:45px;
    padding-bottom:45px;
}

.layout_padding2-bottom{
    padding-bottom:45px;
}

/* =========================================
   ЗАГОЛОВКИ
========================================= */

.heading_container{
    display:flex;
    flex-direction:column;
}

.heading_container h2{
    position:relative;
    padding-left:10px;
    border-left:7px solid #264385;
    font-weight:700;
}

/* =========================================
   HERO AREA
========================================= */

.hero_area{

    position:relative;

    min-height:100vh;

    padding-top:0;

}

/* =========================================
   HEADER
========================================= */
/* Кнопка открытия */
body.sidebar-closed{
    margin-left:0;

}
body.sidebar-closed .sidebar-toggle{

    left:-10px;
}
.sidebar-toggle{

    position:fixed;

    top:20px;

    left:290px;          /* 280px ширина панели - 30px */

    width:55px;

    height:55px;

    border:none;

    border-radius:16px;

    background:#0b4a78;

    color:white;

    font-size:24px;

    cursor:pointer;

    z-index:100001;

    box-shadow:0 6px 20px rgba(0,0,0,.25);

    transition:left .4s ease,
               transform .3s ease;
}
.sidebar-toggle:hover{
    transform:scale(1.08);

    background:rgba(255,255,255,.2);
}
.header_section{

    transition:0.4s ease;

    position:fixed;

    top:0;

    left:0;

    width:280px;

    height:100vh;

    background:linear-gradient(
    180deg,
    #0b4a78 0%,
    #09385a 100%
);

    z-index:99999;

    overflow-y:auto;
}

.header_section .container-fluid{
    padding-left:25px;
    padding-right:25px;
}

.header_section.closed{

    transform:translateX(-100%);
}

.custom_nav-container{

    display:flex;

    flex-direction:column;

    height:100%;
}

.navbar-brand{

    display:flex;

    justify-content:center;

    align-items:center;

    margin:30px 0;
}

.navbar-brand img{

    width:220px;

    height:auto;

    display:block;

    margin:0 auto;
}
.logo-wrapper{

    margin:25px;

    background:white;

    border-radius:15px;

    padding:20px;

    border-radius:15px;

    text-align:center;

    backdrop-filter:blur(10px);
}
/* =========================================
   MENU
========================================= */

.navbar-collapse{

    display:flex;

    flex-direction:column;

    height:100%;

    width:100%;
}

.top-menu{

    display:flex;

    flex-direction:column;

    align-items:flex-start;

    width:100%;

    margin-top:40px;

    flex:1;
}

.top-menu li{
    position:relative;
}

.top-menu li a{

    display:block;

    color:white;

    padding:15px 20px;

    text-decoration:none;

    border-left:4px solid transparent;

    transition:all .3s ease;
}

.top-menu li a:hover{

    background:rgba(255,255,255,.08);

    border-left:4px solid #ffffff;

    padding-left:30px;
}
.top-menu li a.active{

    background:rgba(255,255,255,.12);

    border-left:4px solid #ffffff;

    padding-left:30px;
}
/* =========================================
   DROPDOWN
========================================= */

.dropdown{
    display:none;
    position:absolute;
    top:100%;
    left:0;
    min-width:250px;
    background:#ffffff;
    box-shadow:0 5px 15px rgba(0,0,0,.15);
    z-index:99999;
}

.dropdown a{
    color:#222 !important;
    padding:12px 15px;
    border-bottom:1px solid #eee;
}

.dropdown a:hover{
    background:#264385;
}

.dropdown-menu-custom:hover .dropdown{
    display:block;
}

/* =========================================
   USER PANEL
========================================= */

.User_option{

    margin-top:auto;

    width:100%;

    padding:20px;

    border-top:1px solid rgba(255,255,255,.15);
}

.User_option a{
    color:white;
    font-weight:500;
}

/* =========================================
   LANGUAGE
========================================= */
.language-switcher{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:6px;

    width:100%;

    padding:15px 0;
}

.lang-btn{

    min-width:55px;

    height:36px;

    border:1px solid rgba(255,255,255,.25);

    border-radius:8px;

    background:transparent;

    color:white;

    font-size:14px;

    font-weight:600;

    cursor:pointer;

    transition:.3s;
}

.lang-btn:hover{

    background:rgba(255,255,255,.25);

    transform:translateY(-2px);
}

.lang-btn.active{

    background:white;

    color:#0b4a78;

    border-color:white;

    box-shadow:none;
}

#languageSelect:hover{
    background:#43a047; 
}

/* =========================================
   Slide
========================================= */
.hero-slider{

    position:absolute;

    top:0;
    left:0;

    width:100%;
    height:90%;

    overflow:hidden;

    z-index:1;
}
.slide{

    position:absolute;

    width:100%;
    height:100%;

    opacity:0;

    transition:opacity 1.5s ease-in-out;
}
.slider-btn{

    position:absolute;

    top:50%;

    transform:translateY(-50%);

    width:60px;

    height:60px;

    border:none;

    border-radius:50%;

    backdrop-filter:blur(8px);

    background:rgba(0,0,0,0.25);

    color:white;

    font-size:30px;

    cursor:pointer;

    z-index:99999;

    pointer-events:auto;

    transition:0.3s;
}
.slider-btn:hover{

    background:rgba(255,255,255,0.5);

    transform:translateY(-50%) scale(1.1);
}

.prev-btn{

    left:25px;
}

.next-btn{

    right:25px;
}
.slide.active{

    opacity:1;
}

.slide img{

    width:100%;
    height:110%;

    object-fit:cover;
}
.hero-slider::after{

    content:"";

    position:absolute;

    top:0;
    left:0;

    width:100%;
    height:100%;

    background:rgba(0,0,0,.35);

    pointer-events:none;

    z-index:2;
}

/* =========================================
   SLIDER
========================================= */

.slider_section{
    position:relative;

    z-index:10;
    min-height:90vh;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
 }

.slider_section .detail-box h1{

    position:relative;

    top:-100px;

    color:#3554d1;

    font-size:4rem;

    font-weight:700;

    text-shadow:
        -1px -1px 0 #ffffff,
         1px -1px 0 #ffffff,
        -1px  1px 0 #ffffff,
         1px  1px 0 #ffffff;
}

.slider_section .detail-box p{
    margin-top:25px;
}
/* =========================================
   ABOUT SECTION
========================================= */



.about_section .row{
    align-items:center;
}

.about_section .img-box{
    margin-bottom:30px;
}

.about_section .img-box img{
    width:100%;
    border-radius:10px;
}

.about_section .detail-box{
    padding:10px;
}

.about_section .detail-box p{
    margin-top:15px;
    line-height:1.8;
    text-align:justify;
}

/* =========================================
   SALE SECTION
========================================= */

.sale_section{
    background:#ffffff;
}

.sale_section .heading_container{
    align-items:center;
    margin-bottom:35px;
}

.sale_section .sale_container{

    display:flex;

    flex-wrap:nowrap;

    gap:25px;

    width:max-content;

    animation:saleGallery 35s linear infinite;
}

.sale_section .sale_container .box{

    flex:0 0 350px;
    margin:.65%;
    background:#ffffff;
    border-radius:10px;
    overflow:hidden;
    box-shadow:0 5px 15px rgba(0,0,0,.08);
    transition:.3s;
}

.sale_section .sale_container .box{

    transition:transform .4s ease;

    transform-origin:center center;
}

.sale_section .sale_container .box:hover{

    transform:scale(1.08);

    z-index:10;
}
.sale_section .sale_container{

    align-items:center;
}
.sale_section .sale_container .box{

    position:relative;
}
.sale_section .sale_container .box:hover{

    transform:scale(1.2);

    z-index:10;

    box-shadow:0 15px 35px rgba(0,0,0,.25);
}
.sale_section .sale_container .box .img-box{

    overflow:hidden;

    border-radius:10px;
}

.sale_section .sale_container .box .img-box img{

    width:100%;

    height:250px;

    object-fit:cover;

    transition:transform .5s ease;
}
.sale_section .sale_container .box:hover .img-box img{

    transform:scale(1.12);
    filter:brightness(1.08);

}

.sale_section .sale_container .box .detail-box{
    padding:15px;
}

.sale_section .sale_container .box .detail-box h6{
    font-size:18px;
    font-weight:700;
    text-transform:uppercase;
}

.sale_section .sale_container .box .detail-box p{
    margin-top:10px;
}
.gallery-wrapper{

    overflow:hidden;

    width:100%;
}

.sale_section .sale_container:hover{

    animation-play-state:paused;
}

@keyframes saleGallery{

    from{
        transform:translateX(0);
    }

    to{
        transform:translateX(-50%);
    }
}
/* =========================================
   TASKS SECTION
========================================= */

.tasks_container{
    width:100%;
}

.task-block{

    background:#ffffff;

    padding:25px;

    margin-bottom:25px;

    border-radius:12px;

    box-shadow:0 5px 15px rgba(0,0,0,.08);

    transition:.3s;
}

.task-block:hover{

    transform:translateY(-4px);
}

.task-block h4{

    color:#0f2480;

    font-weight:700;

    margin-bottom:15px;
}

.task-block p{

    line-height:1.8;

    text-align:justify;
}

.task-block ul{

    padding-left:25px;
}

.task-block li{

    margin-bottom:10px;
}

/* =========================================
   SCIENCE SECTION
========================================= */

.science-card{

    background:#ffffff;

    padding:25px;

    border-radius:12px;

    margin-bottom:25px;

    box-shadow:0 5px 15px rgba(0,0,0,.08);

    transition:.3s;
}

.science-card:hover{

    transform:translateY(-5px);

    box-shadow:0 10px 25px rgba(0,0,0,.12);
}

.science-card h4{

    color:#0f2480;

    margin-bottom:15px;

    font-weight:700;
}

.science-card p{

    text-align:justify;

    line-height:1.8;
}

.science-card ul{

    padding-left:20px;
}

.science-card li{

    margin-bottom:10px;
}

/* =========================================
   TEAM SECTION
========================================= */

.team-card{

    background:#ffffff;

    text-align:center;

    padding:30px;

    border-radius:15px;

    margin-bottom:30px;

    box-shadow:0 5px 15px rgba(0,0,0,.08);

    transition:.3s;

}

.team-card:hover{

    transform:translateY(-8px);

    box-shadow:0 15px 30px rgba(0,0,0,.12);
}

.team-card img{

    width:150px;

    height:150px;

    object-fit:cover;

    border-radius:50%;

    border:4px solid #0f2480;

    margin-bottom:20px;
}

.team-card h4{

    color:#0f2480;

    font-weight:700;

    margin-bottom:10px;
}

.team-card p{

    color:#555;

    line-height:1.7;
}
/* =========================================
   PROJECT LEADER
========================================= */

.leader_section{

    padding:80px 0;
}

.leader-title{

    color:#0b4a78;

    font-size:48px;

    font-weight:700;

    margin-bottom:50px;
}

.leader-card{

    display:flex;

    align-items:flex-start;

    gap:50px;

    background:#ffffff;

    border-radius:25px;

    padding:40px;

    box-shadow:0 15px 40px rgba(0,0,0,.08);
}
.leader-content{

    flex:1;

    display:flex;

    flex-direction:column;

    justify-content:flex-start;
}
.leader-photo{

    flex:0 0 350px;
}

.leader-photo img{

    width:350px;

    height:500px;

    object-fit:cover;

    border-radius:20px;
}
.leader-name{

    font-size:56px;

    font-weight:500;

    color:#0b4a78;

    line-height:1.1;

    margin-bottom:30px;
}

.leader-info h3{

    font-size:42px;

    color:#0b4a78;

    margin-bottom:10px;
}

.leader-position{

    font-size:20px;

    color:#3554d1;

    font-weight:600;

    margin-bottom:25px;
}
.leader-description{

    font-size:24px;

    line-height:1.7;

    color:#0b4a78;

    font-weight:600;

    max-width:700px;
}
.leader-info p{

    font-size:18px;

    line-height:1.8;

    margin-bottom:20px;
}

.leader-info h4{

    margin-top:25px;

    margin-bottom:15px;

    color:#0b4a78;

    font-weight:700;
}

.leader-info ul{

    padding-left:20px;
}

.leader-info li{

    margin-bottom:12px;

    font-size:18px;
}
.section-title{

    font-size: 32px;    /* увеличенный размер */

    font-weight: 700;

    color: #0b4a78;

    margin-top: 40px;

    margin-bottom: 20px;

    line-height: 1.3;
}
/* =========================================
   MODERN CONTACTS
========================================= */

.contact-wrapper{

    display:flex;

    min-height:700px;

    border-radius:20px;

    overflow:hidden;

    background:#f5f6fa;
}

.contact-map{

    width:50%;
}

.contact-map iframe{

    width:100%;

    height:100%;

    border:none;
}

.contact-info{

    width:50%;

    padding:60px;

    background:#f5f6fa;
}

.contact-label{

    font-size:18px;

    color:#555;
}

.contact-info h2{

    font-size:70px;

    line-height:1;

    color:#08142e;

    margin:30px 0 80px;

    font-weight:700;
}

.contact-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:50px;
}

.contact-grid h5{

    color:#888;

    margin-bottom:15px;

    font-size:18px;
}

.contact-grid p{

    color:#08142e;

    font-size:28px;

    margin-bottom:10px;
}

.social-links{

    display:flex;

    gap:15px;

    flex-wrap:wrap;
}

.social-links a{

    width:55px;

    height:55px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:#ffffff;

    border-radius:12px;

    text-decoration:none;

    color:#08142e;

    font-size:24px;

    transition:.3s;
}

.social-links a:hover{

    transform:translateY(-5px);

    background:#0f2480;

    color:white;
}

/* =========================================
   INFO SECTION
========================================= */

.info_section{

    background:#0f2480;

    color:white;

    padding:90px 0 45px;
}

.info_section h5{

    font-size:24px;

    margin-bottom:25px;
}

.info_section .info_contact > div{

    display:flex;

    align-items:center;

    margin:20px 0;
}

.info_section .info_contact .img-box{

    width:35px;

    display:flex;

    justify-content:center;
}

.info_section .info_contact p{

    margin:0;
}

.info_section .info_contact img{

    margin-right:12px;
}

.info_section .info_info p{

    line-height:1.8;
}

.info_section a{

    color:white;
}

/* =========================================
   university-footer
========================================= */

.university-footer{

    background:linear-gradient(
    180deg,
    #0b4a78 0%,
    #0a3d63 100%
);

    text-align:center;

    padding-top:50px;

    padding-bottom:25px;
}

.footer-logo img{

    max-width:550px;

    width:90%;

    height:auto;
}

.footer-copy{

    margin-top:30px;

    color:white;

    font-size:22px;

    font-weight:500;
}
.project-tasks{
    display:flex;
    flex-direction:column;
    gap:20px;
    margin-top:60px;
}

.task-card{

    display:flex;

    align-items:center;

    background:#ffffff;

    border-radius:22px;

    overflow:hidden;

    box-shadow:0 8px 25px rgba(0,0,0,.08);

    transition:all .3s ease;
}

.task-card:hover{

    transform:translateY(-5px);

    box-shadow:0 15px 40px rgba(0,0,0,.12);
}
.task-icon{

    flex:0 0 430px;

    height:170px;

    background:#f7f9fc;

    display:flex;

    align-items:center;

    justify-content:center;
}

.task-icon img{

    width:90%;

    max-width:360px;

    max-height:1000px;

    object-fit:contain;
}
.task-content{

    flex:1;

    padding:35px 40px;
}
.task-content h3{

    color:#0b4a78;

    font-size:28px;

    font-weight:700;

    line-height:1.4;

    margin-bottom:15px;
}
.task-card:hover .task-icon img{

    transform:scale(1.1);
}

.task-card h3{

    color:#0b4a78;

    margin-bottom:20px;
}

.task-card p{

    color:#0b4a78;

    line-height:1.8;
}
.project-goal{

    background:#ffffff;

    border-radius:25px;

    padding:35px 40px;

    box-shadow:0 8px 25px rgba(0,0,0,.08);

    display:flex;

    align-items:flex-start;

    gap:30px;

    margin-top:40px;
}

.goal-title{

    width:220px;

    flex-shrink:0;

    font-size:32px;

    font-weight:700;

    color:#0b4a78;

    line-height:1.3;
}
.goal-text{

    flex:1;

    font-size:20px;

    line-height:1.8;

    color:#0b4a78;
}
/* =========================================
   SCROLL TOP BUTTON
========================================= */

#scrollTopBtn{

    position:fixed;

    right:20px;

    bottom:20px;

    width:50px;

    height:50px;

    border:none;

    border-radius:50%;

    background:#0f2480;

    color:#FFFFFF;

    font-size:22px;

    cursor:pointer;

    display:none;

    z-index:9999;

    box-shadow:0 5px 15px rgba(0,0,0,.3);
}

#scrollTopBtn:hover{

    background:#3554d1;
}

/* =========================================
   ANIMATION SUPPORT
========================================= */

.animate-text{

    opacity:1;
}

/* =========================================
   TABLET
========================================= */

@media (max-width:992px){

    .top-menu{

        flex-wrap:wrap;
    }

    .slider_section .detail-box h1{

        font-size:3rem;
    }

    .sale_section .sale_container .box{

        flex-basis:48%;
    }

}

/* =========================================
   MOBILE
========================================= */

@media (max-width:768px){

    .navbar-collapse{

    display:flex;

    flex-direction:column;

    height:100%;

    width:100%;
}

    .top-menu{

        flex-direction:column;

        width:100%;
    }

    .top-menu li{

        width:100%;
        text-align:center;
    }

    .dropdown{

        position:static;

        width:100%;
    }

    .User_option{

    width:100%;

    padding:20px;

    border-top:1px solid rgba(255,255,255,.15);
}

    .slider_section .detail-box h1{

        font-size:2rem;
    }

    .sale_section .sale_container .box{

        flex-basis:100%;
    }

    .team-card{

        margin-bottom:20px;
    }

}

/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width:576px){

    .navbar-brand img{

        width:70px;
    }

    .slider_section .detail-box h1{

        font-size:1.5rem;
    }

    .team-card img{

        width:120px;
        height:120px;
    }

    .footer_section p{

        width:95%;
    }

}
/* =========================================
   DEAL SECTION
========================================= */

.deal_section{

    position:relative;

    min-height:100vh;

    background:
        linear-gradient(
            rgba(7,35,58,.82),
            rgba(7,35,58,.82)
        ),
        url("../images/hero-bg.jpg");

    background-size:cover;

    background-position:center;

    background-attachment:fixed;

    padding:80px 0 120px;
}
.deal_section .container-fluid{

    position:relative;

    z-index:2;
}
.deal-header{

    width:70%;

    margin:0 auto 80px;
}

.deal-subtitle{

    color:#ff6a00;

    font-size:14px;

    text-transform:uppercase;

    font-weight:600;
}

.deal-header h2{

    margin-top:15px;

    color:#ffffff;

    font-size:60px;

    font-weight:800;

    line-height:1.1;

    text-transform:uppercase;
}

.deal-cards{

    display:flex;

    gap:25px;

    justify-content:center;
}

.deal-card{

    background:#e8e8e8;

    width:33%;

    min-height:520px;

    margin-bottom:100px;

    padding:30px;

    border-radius:8px;

    display:flex;

    flex-direction:column;

    transition:.3s;
}

.deal-card:hover{

    transform:translateY(-10px);
}

.deal-card h3{

    color:#08142e;

    font-size:28px;

    font-weight:800;

    margin-bottom:25px;

    text-transform:uppercase;
}

.deal-card p{

    color:#555;

    line-height:1.8;
}

.deal-card img{

    margin-top:auto;

    width:220px;

    border-radius:8px;
}
.about_section .img-box,
.sale_section .img-box,
.team-card img{

    opacity:0;

    transform:translateY(40px);

    transition:
        opacity .8s ease,
        transform .8s ease;
}

.about_section .img-box.show,
.sale_section .img-box.show,
.team-card img.show{

    opacity:1;

    transform:translateY(0);
}

.about_section .img-box img,
.sale_section .img-box img{

    opacity:0;

    transform:scale(.85);

    transition:
        opacity 1s ease,
        transform 1s ease;
}

.about_section .img-box.show img,
.sale_section .img-box.show img{

    opacity:1;

    transform:scale(1);
}
.science-accordion{

    max-width:1200px;

    margin:0 auto 100px;
}

.accordion-item{

    background:rgba(255,255,255,.92);

    backdrop-filter:blur(12px);

    border:1px solid rgba(255,255,255,.25);

    border-radius:25px;

    margin-bottom:25px;

    overflow:hidden;

    box-shadow:0 12px 35px rgba(0,0,0,.18);
}

.accordion-header{

    width:100%;

    border:none;

    background:none;

    padding:30px 40px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    cursor:pointer;

    color:#0b4a78;

    font-size:28px;

    font-weight:700;

    font-family:'Montserrat',sans-serif;

    text-align:left;

    transition:.3s;
}

.accordion-header:hover{

    background:#f7f9fc;
}

.accordion-icon{

    font-size:24px;

    transition:.3s;
}

.accordion-item.active .accordion-icon{

    transform:rotate(180deg);
}

.accordion-content{

    max-height:0;

    overflow:hidden;

    transition:max-height .4s ease;
}

.accordion-content p{

    padding:0 40px 35px;

    margin:0;

    color:#0b4a78;

    font-size:20px;

    line-height:1.9;

    text-align:justify;
}
.science-intro{

    max-width:1000px;

    margin:0 auto 60px;

    text-align:center;

    color:white;
}

.science-intro p{

    font-size:22px;

    line-height:2;

    margin-bottom:25px;

    opacity:.95;
}
.science-divider{

    text-align:center;

    color:white;

    font-size:18px;

    font-weight:600;

    letter-spacing:2px;

    text-transform:uppercase;

    margin:60px 0 40px;
}

.science-divider::after{

    content:"";

    display:block;

    width:120px;

    height:3px;

    background:white;

    margin:15px auto 0;

    border-radius:10px;
}
.science-intro-card{

    max-width:1000px;

    margin:50px auto 70px;

    padding:45px 55px;

    background:rgba(255,255,255,.92);

    backdrop-filter:blur(12px);

    border-radius:30px;

    box-shadow:0 15px 40px rgba(0,0,0,.20);

    color:#0b4a78;
}

.science-intro-card p{

    font-size:22px;

    line-height:2;

    text-align:justify;

    margin-bottom:25px;
}

.science-intro-card p:last-child{

    margin-bottom:0;
}
.science-badge{

    display:inline-block;

    padding:10px 25px;

    background:#0b4a78;

    color:white;

    border-radius:50px;

    font-size:14px;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    margin-bottom:25px;
}
/* =========================================
   STAFF SECTION
========================================= */

.staff-intro{
    max-width:1000px;
    margin:40px auto 60px;
    text-align:center;
    font-size:20px;
    line-height:1.9;
    color:#0b4a78;
}

.staff-list{
    display:flex;
    flex-direction:column;
    gap:30px;
}

.staff-member{
    display:flex;
    gap:35px;

    background:#ffffff;

    padding:30px;

    border-radius:25px;

    box-shadow:0 8px 25px rgba(0,0,0,.08);

    transition:.3s;
}

.staff-member:hover{
    transform:translateY(-5px);

    box-shadow:0 15px 40px rgba(0,0,0,.12);
}

.staff-photo{
    flex:0 0 180px;
}

.staff-photo img{
    width:180px;
    height:220px;

    object-fit:cover;

    border-radius:20px;

    border:4px solid #0b4a78;
}

.staff-info{
    flex:1;
}

.staff-info h3{
    color:#0b4a78;

    font-size:34px;

    font-weight:700;

    margin-bottom:10px;
}

.staff-position{
    color:#3554d1;

    font-size:20px;

    font-weight:600;

    margin-bottom:25px;
}

.staff-work{
    color:#0b4a78;

    font-size:18px;

    line-height:1.9;

    text-align:justify;
}
@media(max-width:768px){

    .staff-member{
        flex-direction:column;
        align-items:center;
        text-align:center;
    }

    .staff-photo img{
        width:220px;
        height:260px;
    }

    .staff-work{
        text-align:left;
    }
}
.results-intro{

    max-width:900px;

    margin:0 auto 80px;

    text-align:center;

    color:white;

    font-size:22px;

    line-height:1.9;
}

.timeline{

    position:relative;

    max-width:1500px;

    margin:0 auto;

    padding:70px 0;
}

.timeline::before{

    content:"";

    position:absolute;

    top:0;
    left:50%;

    transform:translateX(-50%);

    width:4px;

    height:100%;

    background:rgba(255,255,255,.25);
}

.timeline-progress{

    position:absolute;

    top:0;
    left:50%;

    transform:translateX(-50%);

    width:4px;

    height:0;

    background:white;

    transition:height .3s ease;
}

.timeline-item{

    position:relative;

    width:100%;

    margin-bottom:100px;

    opacity:0;

    transition:all .8s ease;
}
.timeline-item.left{
    display:flex;
    justify-content:flex-start;
}

.timeline-item.right{
    display:flex;
    justify-content:flex-end;
}

.timeline-item.show{

    opacity:1;

    transform:translateX(0);
}

.timeline-item::before{

    content:"";

    position:absolute;

    top:55px;

    left:50%;

    transform:translateX(-50%);

    width:30px;

    height:30px;

    border-radius:50%;

    background:white;

    border:6px solid #0b4a78;

    box-shadow:0 0 20px rgba(255,255,255,.4);

    z-index:10;
}

.timeline-item.left::before{

    left:50%;

    transform:translateX(-50%);
}

.timeline-item.right::before{

    left:50%;

    transform:translateX(-50%);
}

.timeline-card{

    width:46%;

    min-height:320px;

    display:flex;

    align-items:flex-start;

    gap:30px;

    background:rgba(255,255,255,.96);

    border-radius:28px;

    padding:35px;

    box-shadow:0 12px 35px rgba(0,0,0,.15);

    transition:.3s ease;
}
.timeline-icon{

    flex:0 0 120px;

    width:120px;

    height:120px;

    border-radius:24px;

    overflow:hidden;

    background:#eef3fb;
}
.timeline-icon img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.4s ease;
}
.timeline-card:hover .timeline-icon img{

    transform:scale(1.08);
}
.timeline-content{

    flex:1;
}
.timeline-card:hover .timeline-icon{

    transform:scale(1.08);

    transition:.3s ease;
}
.timeline-card:hover{

    transform:translateY(-6px);

    box-shadow:0 20px 45px rgba(0,0,0,.20);
}

.timeline-card h3{

    color:#0b4a78;

    font-size:22px;

    font-weight:700;

    margin-bottom:12px;

    line-height:1.3;
    
    min-height:58px;

    display:flex;

    align-items:center;
}

.timeline-card p{

    color:#0b4a78;

    font-size:15px;

    line-height:1.8;

    text-align:justify;
}

@media(max-width:768px){

    .timeline::before,
    .timeline-progress{

        left:20px;
    }

    .timeline-item{

        width:100%;

        left:0 !important;

        padding-left:50px;
    }

    .timeline-item::before{

        left:9px !important;
    }
   
}
@media(max-width:768px){

    .timeline-card{

        flex-direction:column;

        align-items:center;

        text-align:center;
    }

    .timeline-content p{

        text-align:left;
    }
}
/* ==========================================
   INTERNATIONAL COOPERATION
========================================== */

/* HERO */

.cooperation_hero{
    position: relative;
    min-height: 100vh;

    display: flex;
    align-items: center;

    padding: 120px 0 80px;

    background:
        url("../images/cooperation/cooperation-bg.jpg")
        center center/cover no-repeat;
}

.cooperation_overlay{
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            135deg,
            rgba(5, 35, 72, 0.88),
            rgba(5, 35, 72, 0.72)
        );
}

.cooperation_hero .container{
    position: relative;
    z-index: 2;
}

.cooperation_hero_content{
    max-width: 900px;

    margin: 0 auto;

    text-align: center;

    color: #ffffff;
}

.cooperation_subtitle{
    display: inline-block;

    font-size: 18px;
    letter-spacing: 3px;
    text-transform: uppercase;

    opacity: .85;

    margin-bottom: 20px;
}

.cooperation_hero_content h1{
    font-size: 72px;
    font-weight: 800;

    line-height: 1.1;

    margin-bottom: 35px;
}

.cooperation_hero_content p{
    max-width: 850px;

    margin: 0 auto;

    font-size: 20px;
    line-height: 1.9;

    color: rgba(255,255,255,.92);
}


/* LOGOS */

.cooperation_logos{

    margin-top: 60px;

    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;

    gap: 35px;
}

.cooperation_logos img{

    height: 75px;

    background: rgba(255,255,255,.95);

    padding: 15px 25px;

    border-radius: 20px;

    box-shadow: 0 10px 35px rgba(0,0,0,.20);

    transition: .3s ease;
}

.cooperation_logos img:hover{

    transform: translateY(-8px);

    box-shadow: 0 18px 45px rgba(0,0,0,.25);
}

.cooperation_logos span{

    font-size: 36px;
    font-weight: 700;

    color: rgba(255,255,255,.85);
}


/* ==========================================
   PARTNERS
========================================== */

.partners_section{

    padding: 100px 0;

    background: #f7f9fc;
}

.partners_section .heading_container{

    margin-bottom: 60px;
}

.partners_section h2{

    color: #0b4a78;

    font-size: 46px;
    font-weight: 700;
}


.partners_grid{

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 35px;
}


.partner_card{

    background: #ffffff;

    border-radius: 30px;

    padding: 45px 35px;

    text-align: center;

    box-shadow: 0 15px 40px rgba(0,0,0,.08);

    transition: .3s ease;
}

.partner_card:hover{

    transform: translateY(-10px);

    box-shadow: 0 25px 50px rgba(0,0,0,.12);
}


.partner_card img{

    height: 90px;

    max-width: 100%;

    object-fit: contain;

    margin-bottom: 30px;
}


.partner_card h3{

    color: #0b4a78;

    font-size: 28px;
    font-weight: 700;

    margin-bottom: 12px;
}


.partner_card span{

    display: inline-block;

    color: #4f6f8d;

    font-size: 16px;
    font-weight: 600;

    margin-bottom: 25px;
}


.partner_card p{

    color: #5d7389;

    font-size: 16px;

    line-height: 1.9;

    margin: 0;
}


/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width: 992px){

    .cooperation_hero_content h1{

        font-size: 52px;
    }

    .cooperation_hero_content p{

        font-size: 18px;
    }

    .partners_grid{

        grid-template-columns: 1fr;
    }

    .cooperation_logos{

        gap: 20px;
    }

    .cooperation_logos img{

        height: 65px;
    }
}


@media (max-width: 768px){

    .cooperation_hero{

        min-height: auto;

        padding: 120px 0 80px;
    }

    .cooperation_hero_content h1{

        font-size: 40px;
    }

    .cooperation_subtitle{

        font-size: 14px;

        letter-spacing: 2px;
    }

    .cooperation_hero_content p{

        font-size: 16px;

        line-height: 1.8;
    }

    .cooperation_logos{

        flex-direction: column;
    }

    .cooperation_logos span{

        display: none;
    }

    .partner_card{

        padding: 35px 25px;
    }

    .partners_section h2{

        font-size: 34px;
    }

    .partner_card h3{

        font-size: 24px;
    }
}
/* PROFESSOR */

.professor_section{
    padding: 100px 0;
    background: #ffffff;
}

.professor_wrapper{
    display: flex;
    align-items: center;
    gap: 70px;
}

.professor_photo{
    flex: 0 0 350px;
}

.professor_photo img{
    width: 100%;
    border-radius: 35px;
    box-shadow: 0 20px 50px rgba(0,0,0,.15);
}

.professor_info{
    flex: 1;
}

.professor_label{
    color: #0b4a78;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.professor_info h2{
    margin: 15px 0;
    font-size: 48px;
    color: #0b4a78;
    font-weight: 700;
}

.professor_info h4{
    color: #6b7c93;
    margin-bottom: 30px;
}

.professor_info p{
    color: #5d7389;
    line-height: 1.9;
    margin-bottom: 20px;
    text-align: justify;
}

.professor_badges{
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 35px;
}

.badge{
    background: #eef3fb;
    color: #0b4a78;
    padding: 12px 20px;
    border-radius: 30px;
    font-weight: 600;
}

/* CONTRIBUTIONS */

.contribution_section{
    padding: 100px 0;
    background: #f7f9fc;
}
.contribution_section .container{

    max-width:1200px;
}
.contribution_section .heading_container{

    max-width:1100px;

    margin:0 auto 50px;
}

.contribution_section h2{
    color: #0b4a78;
    font-size: 46px;
}

.contribution_section .heading_container p{
    max-width: 800px;
    margin: 20px auto 0;
    color: #5d7389;
}

.contribution_grid{

    display:grid;

    grid-template-columns:repeat(2,minmax(350px,1fr));

    gap:40px;

    max-width:1100px;

    margin:60px auto 0;
}

.contribution_card{

    background:#ffffff;

    border-radius:30px;

    padding:40px 30px;

    text-align:center;

    box-shadow:0 15px 40px rgba(0,0,0,.08);

    transition:.3s ease;
}

.contribution_card:hover{

    transform:translateY(-10px);

    box-shadow:0 25px 50px rgba(0,0,0,.12);
}
.contribution_image{

    position:relative;

    width:220px;

    height:140px;

    margin:0 auto 30px;
}

.contribution_circle{

    position:absolute;

    top:50%;
    left:50%;

    transform:translate(-50%,-50%);

    width:120px;
    height:120px;

    border-radius:50%;

    background:#eef3fb;
}
.contribution_image img{

    position:relative;

    z-index:2;

    width:100%;

    height:140px;

    object-fit:contain;
}

.contribution_icon{
    font-size: 48px;
    margin-bottom: 20px;
}

.contribution_card h3{

    color:#0b4a78;

    font-size:28px;

    font-weight:700;

    margin-bottom:18px;

    line-height:1.4;
}


.contribution_card p{

    color:#5d7389;

    font-size:16px;

    line-height:1.9;

    margin:0;
}
.contribution_line{

    width:50px;

    height:3px;

    background:#0b4a78;

    border-radius:5px;

    margin:0 auto 25px;
}
@media(max-width:992px){

    .professor_wrapper{
        flex-direction: column;
    }

    .contribution_grid{
        grid-template-columns: 1fr;
    }

    .professor_info h2{
        font-size: 36px;
    }
}
@media(max-width:1200px){

    .contribution_grid{

        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:768px){

    .contribution_grid{

        grid-template-columns:1fr;
    }
}
/*=================================
PUBLICATIONS
=================================*/

.publications_section{

    padding:120px 0;

    background:#ffffff;
}

.publications_section .heading_container{

    max-width:1000px;

    margin:0 auto 70px;
}

.publications_section h2{

    color:#0b4a78;

    font-size:46px;

    font-weight:700;
}

.publications_section .heading_container p{

    color:#5d7389;

    line-height:1.9;

    text-align:center;
}

.publications_grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

    max-width:1300px;

    margin:0 auto;
}

.publication_card{

    background:#ffffff;

    border-radius:30px;

    padding:35px;

    box-shadow:0 15px 40px rgba(0,0,0,.08);

    transition:.3s ease;

    border-top:5px solid #0b4a78;

    display:flex;

    flex-direction:column;

    height:100%;
}

.publication_card:hover{

    transform:translateY(-10px);

    box-shadow:0 25px 50px rgba(0,0,0,.12);
}

.publication_year{

    color:#0b4a78;

    font-size:34px;

    font-weight:800;

    margin-bottom:25px;
}

.publication_card h3{

    color:#0b4a78;

    font-size:22px;

    line-height:1.5;

    margin-bottom:20px;
}

.publication_card span{

    color:#6b7c93;

    font-size:15px;

    font-style:italic;

    margin-bottom:20px;
}

.publication_journal{

    color:#3554d1;

    font-weight:600;

    margin-bottom:20px;
}

.publication_card p{

    color:#5d7389;

    line-height:1.8;

    margin-top:auto;
}

/* Responsive */

@media(max-width:1200px){

    .publications_grid{

        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:768px){

    .publications_grid{

        grid-template-columns:1fr;
    }

    .publications_section h2{

        font-size:36px;
    }
}
/* =========================================
EXPERIMENTS
========================================= */

.experiments_intro,
.setup_section,
.methods_section,
.piv_section,
.research_tasks,
.experiment_result{

    padding:100px 0;
}

.section_title{

    text-align:center;

    margin-bottom:60px;
}

.section_title h2{

    font-size:48px;

    font-weight:700;

    color:#0b4a78;

    margin-bottom:15px;
}

.section_title p{

    max-width:850px;

    margin:auto;

    color:#5d7389;
}

.intro_card,
.setup_card,
.result_card{

    background:#fff;

    border-radius:30px;

    padding:50px;

    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.intro_card h3{

    color:#0b4a78;

    margin-bottom:25px;
}

.intro_card p,
.setup_text p,
.result_card p{

    line-height:2;

    color:#5d7389;
}

/* setup */

.setup_card img{

    width:100%;

    border-radius:20px;

    margin-bottom:35px;
}

/* methods */

.methods_grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:40px;
}

.method_card{

    background:#fff;

    border-radius:30px;

    padding:40px;

    text-align:center;

    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.method_card h3{

    font-size:42px;

    color:#0b4a78;
}

.method_card span{

    display:block;

    margin-bottom:20px;

    color:#6d7f92;
}

/* piv */

.piv_wrapper{

    display:flex;

    gap:60px;

    align-items:center;
}

.piv_text{

    flex:1;
}

.piv_text h2{

    color:#0b4a78;

    margin-bottom:25px;
}

.piv_text p{

    line-height:2;

    color:#5d7389;
}

.piv_image{

    flex:1;
}

.piv_image img{

    width:100%;

    border-radius:25px;

    box-shadow:0 15px 40px rgba(0,0,0,.1);
}

/* tasks */

.tasks_grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:25px;
}

.task_box{

    background:#fff;

    border-radius:20px;

    padding:35px;

    text-align:center;

    font-weight:600;

    color:#0b4a78;

    box-shadow:0 10px 25px rgba(0,0,0,.08);
}

/* result */

.result_card{

    max-width:1000px;

    margin:auto;

    text-align:center;
}

.result_card h2{

    color:#0b4a78;

    margin-bottom:30px;
}

/* mobile */

@media(max-width:992px){

    .methods_grid,
    .tasks_grid{

        grid-template-columns:1fr;
    }

    .piv_wrapper{

        flex-direction:column;
    }

    .section_title h2{

        font-size:36px;
    }
}
/* ==========================
RHEOLOGY
========================== */

.rheology_section{

    padding:120px 0;

    background:#f7f9fc;
}

.rheology_wrapper{

    display:flex;

    align-items:center;

    gap:70px;
}

.rheology_image{

    flex:1;
}

.rheology_image img{

    width:100%;

    border-radius:25px;

    box-shadow:0 15px 40px rgba(0,0,0,.12);
}

.image_caption{

    margin-top:15px;

    font-size:14px;

    color:#6b7c93;

    text-align:center;

    font-style:italic;
}

.rheology_text{

    flex:1;
}

.rheology_text h2{

    font-size:42px;

    color:#0b4a78;

    margin-bottom:30px;
}

.rheology_text p{

    color:#5d7389;

    line-height:2;

    margin-bottom:20px;
}

@media(max-width:992px){

    .rheology_wrapper{

        flex-direction:column;
    }

    .rheology_text h2{

        font-size:32px;
    }
}
/* ==========================================
   COOPERATION DOCUMENT
========================================== */

.cooperation_document_section{

    padding:120px 0;

    background:#ffffff;
}

.cooperation_document_wrapper{

    display:flex;

    align-items:center;

    gap:70px;
}

.cooperation_document_text{

    flex:1;
}

.cooperation_badge{

    display:inline-block;

    padding:10px 20px;

    background:#eef3fb;

    color:#0b4a78;

    border-radius:30px;

    font-size:14px;

    font-weight:700;

    margin-bottom:25px;
}

.cooperation_document_text h2{

    color:#0b4a78;

    font-size:42px;

    font-weight:700;

    line-height:1.3;

    margin-bottom:30px;
}

.cooperation_document_text p{

    color:#5d7389;

    line-height:2;

    margin-bottom:20px;

    text-align:justify;
}

.cooperation_document_image{

    flex:0 0 500px;
}

.cooperation_document_image img{

    width:100%;

    border-radius:25px;

    box-shadow:0 15px 40px rgba(0,0,0,.12);

    transition:.3s;
}

.cooperation_document_image img:hover{

    transform:translateY(-5px);
}

.document_caption{

    margin-top:15px;

    text-align:center;

    color:#6b7c93;

    font-size:14px;

    font-style:italic;
}

@media(max-width:992px){

    .cooperation_document_wrapper{

        flex-direction:column;
    }

    .cooperation_document_image{

        flex:auto;

        width:100%;
    }

    .cooperation_document_text h2{

        font-size:32px;
    }
}
/* =========================================
SCIENTIFIC VISITS
========================================= */

.visits_section{

    padding:100px 0;
}

.visit_card{

    background:#ffffff;

    border-radius:25px;

    padding:40px;

    margin-bottom:35px;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    transition:.3s ease;
}

.visit_card:hover{

    transform:translateY(-5px);
}

.visit_card h3{

    color:#0b4a78;

    font-size:28px;

    margin-bottom:20px;
}

.visit_card p{

    color:#5d7389;

    line-height:1.9;

    margin-bottom:15px;
}

/* =========================================
DOCUMENTS
========================================= */

.documents_section{

    padding:100px 0;

    background:#f7f9fc;
}

.documents_grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:30px;

    margin-top:50px;
}

.document_item{

    background:#fff;

    border-radius:20px;

    overflow:hidden;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    transition:.3s ease;
}

.document_item:hover{

    transform:translateY(-5px);
}

.document_item img{

    width:100%;

    display:block;
}

/* =========================================
MOBILE
========================================= */

@media(max-width:992px){

    .documents_grid{

        grid-template-columns:1fr;
    }

    .visit_card{

        padding:30px;
    }
}
/* =========================================
VISITS HERO
========================================= */

.visits_hero{

    position:relative;

    min-height:70vh;

    display:flex;

    align-items:center;

    justify-content:center;

    background:
        url("../images/visits/lemta-bg.jpg")
        center center/cover no-repeat;
}

.visits_overlay{

    position:absolute;

    inset:0;

    background:rgba(5,35,72,.72);
}

.visits_hero_content{

    position:relative;

    z-index:2;

    text-align:center;

    color:white;
}

.visits_hero_content span{

    display:block;

    letter-spacing:4px;

    margin-bottom:20px;

    font-size:14px;
}

.visits_hero_content h1{

    font-size:72px;

    font-weight:800;

    margin-bottom:25px;
}

.visits_hero_content p{

    max-width:700px;

    margin:auto;

    font-size:22px;

    line-height:1.8;
}
.visits_section{

    position:relative;

    background:
        linear-gradient(
            rgba(255,255,255,.92),
            rgba(255,255,255,.92)
        ),
        url("../images/visits/lemta-bg.jpg");

    background-size:cover;

    background-position:center;

    background-attachment:fixed;
}
.deal_section .section_title h2{

    color:#fff !important;

    font-size:60px;

    font-weight:800;

    letter-spacing:1px;

    text-transform:uppercase;

    text-align:center;

    text-shadow:
        0 3px 10px rgba(0,0,0,.4),
        0 8px 25px rgba(0,0,0,.25);
}
.deal_section .section_title h2{

    border-left:none !important;

    padding-left:0 !important;
}
/* =========================================
IMAGE MODAL
========================================= */

.image-modal{

    display:none;

    position:fixed;

    z-index:9999;

    left:0;
    top:0;

    width:100%;
    height:100%;

    background:rgba(0,0,0,.92);

    justify-content:center;

    align-items:center;

    padding:30px;

    box-sizing:border-box;
}

.modal-content{

    max-height:92vh;

    width:auto;

    max-width:none;

    object-fit:contain;

    background:white;

    padding:15px;

    border-radius:8px;

    box-shadow:
        0 0 40px rgba(0,0,0,.5),
        0 0 0 1px rgba(255,255,255,.1);
}


.close-modal{

    position:absolute;

    top:25px;
    right:40px;

    color:white;

    font-size:50px;

    font-weight:bold;

    cursor:pointer;

    transition:.3s;
}

.close-modal:hover{

    transform:scale(1.2);

    color:#d9d9d9;
}

/* курсор на документах */

.document_item img{

    cursor:pointer;

    transition:.3s;
}

.document_item img:hover{

    transform:scale(1.02);
}
.zoomable-image{

    cursor:pointer;

    transition:.3s ease;
}

.zoomable-image:hover{

    transform:scale(1.02);
}
.cooperation_document_image img{

    cursor:pointer;

    transition:.3s ease;
}

.cooperation_document_image img:hover{

    transform:translateY(-5px);

    box-shadow:0 20px 40px rgba(0,0,0,.18);
}