
:root{

--navy:#0b1f3a;
--teal:#0e7f7a;
--gold:#c8a84b;
--cream:#f8f5ef;

}

body{

font-family:'DM Sans',sans-serif;
background:var(--cream);

}

.custom-navbar{

background:rgba(11,31,58,.95);
backdrop-filter:blur(10px);

}

.logo-box{

width:38px;
height:38px;

background:linear-gradient(135deg,#0e7f7a,#12a89f);

border-radius:8px;

display:flex;
align-items:center;
justify-content:center;

font-weight:700;
color:#fff;

}

.logo-title{

color:#fff;
font-size:14px;
font-weight:600;

}

.logo-sub{

color:#c8a84b;
font-size:11px;

}

.nav-link{

color:#fff;
margin-left:8px;

}

.hero-section{

min-height:100vh;

display:flex;
align-items:center;

padding-top:100px;

background:
linear-gradient(rgba(11,31,58,.90),
rgba(14,127,122,.60)),
url('lab-img.jfif');

background-size:cover;
background-position:center;

}

.hero-tag{

display:inline-block;

padding:8px 16px;

border-radius:30px;

background:rgba(200,168,75,.15);

color:#c8a84b;

margin-bottom:20px;

}

.hero-title{

font-family:'Playfair Display',serif;

font-size:60px;

color:#fff;

}

.hero-title span{

color:#12a89f;

font-style:italic;

}

.hero-text{

color:#ddd;

margin:30px 0;

line-height:1.8;

}

.hero-btn{

padding:14px 30px;

}

.pi-card{

padding:45px;

background:rgba(255,255,255,.08);

border-radius:20px;

backdrop-filter:blur(15px);

color:#fff;

}

.pi-image{

width:110px;
height:110px;

margin-bottom:20px;

border-radius:50%;

display:flex;
justify-content:center;
align-items:center;

font-size:36px;

border:3px solid #c8a84b;

background:linear-gradient(135deg,#0e7f7a,#0b1f3a);

}

.pi-card h2{

color:#12a89f;

font-family:'Playfair Display',serif;

}

@media(max-width:991px){

.hero-title{

font-size:42px;

}

.pi-card{

margin-top:30px;

}

}

/* ABOUT */

.about-section{

background:#fff;

padding:100px 0;

}

.section-tag{

font-size:13px;

letter-spacing:2px;

text-transform:uppercase;

font-weight:700;

color:#0e7f7a;

margin-bottom:10px;

}

.section-title{

font-family:'Playfair Display',serif;

font-size:42px;

font-weight:700;

color:#0b1f3a;

}

.divider{

width:70px;

height:3px;

background:linear-gradient(90deg,#0e7f7a,#c8a84b);

margin-top:20px;

margin-bottom:20px;

}

.about-profile{

background:#f8f5ef;

padding:35px;

border-radius:18px;

border:1px solid #ddd;

height:100%;

}
.profile-img-lg img{ 
    border-radius:15px;
}
.profile-img-lg{

width:100%;

aspect-ratio:3/3.5;

/* background:linear-gradient(135deg,#0e7f7a,#0b1f3a); */

border-radius:15px;

display:flex;

justify-content:center;

align-items:center;

font-size:70px;

font-family:'Playfair Display',serif;

color:rgba(255,255,255,.3);

margin-bottom:25px;

}

.profile-name{

font-family:'Playfair Display',serif;

font-weight:700;

}

.profile-role{

color:#0e7f7a;

font-size:14px;

font-weight:600;

margin:10px 0;

text-transform:uppercase;

}

.profile-inst{

font-size:14px;

color:#666;

margin-bottom:25px;

}

.profile-link{

display:flex;

align-items:center;

gap:12px;

padding:12px;

border:1px solid #ddd;

border-radius:10px;

margin-bottom:10px;

text-decoration:none;

color:#555;

transition:.3s;

}

.profile-link:hover{

border-color:#0e7f7a;

background:#f4fffd;

color:#0e7f7a;

}

.link-icon{

width:25px;

height:25px;

display:flex;

justify-content:center;

align-items:center;

background:#0e7f7a;

color:#fff;

border-radius:5px;

font-size:12px;

}

.about-content h3{

font-family:'Playfair Display',serif;

margin-bottom:20px;

margin-top:20px;

}

.about-content p{

line-height:1.9;

color:#555;

}

.edu-item{

display:flex;

gap:15px;

margin-bottom:20px;

}

.edu-dot{

width:12px;

height:12px;

border-radius:50%;

background:#0e7f7a;

margin-top:8px;

flex-shrink:0;

}

.edu-deg{

font-weight:600;

}

.edu-inst{

font-size:14px;

color:#666;

}

.edu-year{

font-size:13px;

font-weight:600;

color:#0e7f7a;

}

.membership-text{

color:#666;

line-height:1.8;

}

@media(max-width:991px){

.about-profile{

margin-bottom:30px;

}

.section-title{

font-size:32px;

}

}

/*=========================
        RESEARCH
=========================*/

.research-section{

    background:#f8f9fb;
    padding:100px 0;

}

.section-lead{

    max-width:850px;
    color:#666;
    line-height:1.8;
    font-size:17px;

}

.research-card{

    background:#fff;
    border-radius:18px;
    padding:35px;
    transition:.35s;
    border:1px solid #ececec;
    box-shadow:0 10px 30px rgba(0,0,0,.05);

}

.research-card:hover{

    transform:translateY(-10px);

    box-shadow:0 18px 40px rgba(0,0,0,.12);

    border-color:#0e7f7a;

}

.research-icon{

    width:75px;
    height:75px;

    display:flex;
    justify-content:center;
    align-items:center;

    border-radius:50%;

    background:linear-gradient(135deg,#0e7f7a,#0b1f3a);

    font-size:34px;

    margin-bottom:25px;

}

.research-card h4{

    font-family:'Playfair Display',serif;

    font-size:24px;

    color:#0b1f3a;

    margin-bottom:18px;

}

.research-card p{

    color:#666;

    line-height:1.8;

    margin-bottom:25px;

}

.research-tags{

    display:flex;

    flex-wrap:wrap;

    gap:10px;

}

.research-tags span{

    background:#eef8f7;

    color:#0e7f7a;

    padding:8px 14px;

    border-radius:30px;

    font-size:13px;

    font-weight:600;

}

@media(max-width:991px){

.research-card{

padding:25px;

}

.research-card h4{

font-size:21px;

}

}

@media(max-width:576px){

.research-icon{

width:65px;
height:65px;
font-size:28px;

}

.section-lead{

font-size:15px;

}

}


/*=============================
      PUBLICATIONS
==============================*/

.publications-section{

background:#ffffff;

padding:100px 0;

}

.publication-filter{

display:flex;

justify-content:center;

flex-wrap:wrap;

gap:12px;

}

.filter-btn{

padding:10px 22px;

border:none;

border-radius:30px;

background:#eef5f5;

color:#0b1f3a;

font-weight:600;

transition:.3s;

}

.filter-btn:hover,
.filter-btn.active{

background:#0e7f7a;

color:#fff;

}

.publication-list{

display:flex;

flex-direction:column;

gap:25px;

margin-top:50px;

}

.publication-card{

background:#fff;

padding:30px;

border-radius:18px;

border:1px solid #ececec;

box-shadow:0 8px 25px rgba(0,0,0,.05);

transition:.35s;

}

.publication-card:hover{

transform:translateY(-5px);

border-color:#0e7f7a;

box-shadow:0 20px 40px rgba(0,0,0,.10);

}

.pub-top{

margin-bottom:12px;

}

.journal-year{

display:inline-block;

background:#eef8f7;

color:#0e7f7a;

padding:8px 14px;

border-radius:30px;

font-size:13px;

font-weight:700;

}

.publication-card h4{

font-family:'Playfair Display',serif;

font-size:24px;

color:#0b1f3a;

line-height:1.5;

margin:15px 0;

}

.authors{

color:#666;

font-size:15px;

margin-bottom:15px;

}

.journal{

display:flex;

justify-content:space-between;

align-items:center;

flex-wrap:wrap;

gap:10px;

font-weight:600;

color:#0b1f3a;

}

.journal span{

color:#0e7f7a;

font-size:14px;

}

.btn-publication{

display:inline-block;

padding:15px 35px;

background:#0b1f3a;

color:#fff;

border-radius:40px;

font-weight:600;

text-decoration:none;

transition:.3s;

}

.btn-publication:hover{

background:#0e7f7a;

color:#fff;

}

@media(max-width:768px){

.publication-card{

padding:22px;

}

.publication-card h4{

font-size:20px;

}

.journal{

flex-direction:column;

align-items:flex-start;

}

.filter-btn{

font-size:13px;

padding:8px 18px;

}

}


/*================================
          AWARDS
================================*/

.awards-section{

background:#f8f5ef;

padding:100px 0;

}

.awards-divider{

background:linear-gradient(90deg,#c8a84b,#0e7f7a);

}

.award-card{

background:#fff;

border-radius:18px;

padding:28px;

display:flex;

align-items:flex-start;

gap:20px;

height:100%;

border:1px solid #ececec;

box-shadow:0 10px 25px rgba(0,0,0,.05);

transition:.35s;

position:relative;

}

.award-card:hover{

transform:translateY(-8px);

border-color:#c8a84b;

box-shadow:0 18px 35px rgba(0,0,0,.12);

}

.award-icon{

width:70px;

height:70px;

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

font-size:30px;

background:linear-gradient(135deg,#c8a84b,#0e7f7a);

flex-shrink:0;

}

.award-content{

flex:1;

}

.award-content h5{

font-family:'Playfair Display',serif;

font-size:22px;

color:#0b1f3a;

margin:14px 0 10px;

line-height:1.5;

}

.award-content p{

margin:0;

color:#666;

line-height:1.7;

}

.award-badge{

display:inline-block;

padding:6px 14px;

font-size:12px;

font-weight:700;

border-radius:30px;

text-transform:uppercase;

letter-spacing:1px;

}

.award-badge.international{

background:#eaf7ff;

color:#0077b6;

}

.award-badge.national{

background:#eef8f7;

color:#0e7f7a;

}

.award-year{

font-size:22px;

font-weight:700;

color:#c8a84b;

margin-left:15px;

white-space:nowrap;

}

@media(max-width:768px){

.award-card{

flex-direction:column;

text-align:center;

align-items:center;

}

.award-year{

margin:15px 0 0;

}

.award-content h5{

font-size:20px;

}

}
/*==========================
        TEAM
==========================*/

.team-section{

background:#ffffff;
padding:100px 0;

}

.team-feature{

background:#f8f5ef;
padding:45px;
border-radius:20px;
margin-bottom:70px;
border:1px solid #ececec;

}
.pi-avatar img{
border-radius:50%;
}
.pi-avatar{

width:130px;
height:130px;

margin:auto;

display:flex;
align-items:center;
justify-content:center;

border-radius:18px;

background:linear-gradient(135deg,#0e7f7a,#0b1f3a);

font-family:'Playfair Display',serif;
font-size:48px;
font-weight:700;
color:#fff;

}

.pi-label{

display:inline-block;

font-size:13px;

letter-spacing:2px;

text-transform:uppercase;

font-weight:700;

color:#0e7f7a;

margin-bottom:12px;

}

.pi-name{

font-family:'Playfair Display',serif;

font-size:34px;

color:#0b1f3a;

margin-bottom:10px;

}

.pi-role{

color:#777;
font-weight:600;
margin-bottom:20px;

}

.pi-desc{

line-height:1.9;
color:#555;

}

.team-heading{

font-family:'Playfair Display',serif;

font-size:28px;

color:#0b1f3a;

margin-bottom:30px;

}

.member-card{

background:#fff;

border:1px solid #ececec;

border-radius:18px;

padding:30px 20px;

text-align:center;

transition:.35s;

height:100%;

box-shadow:0 8px 20px rgba(0,0,0,.05);

}

.member-card:hover{

transform:translateY(-8px);

border-color:#0e7f7a;

box-shadow:0 18px 35px rgba(0,0,0,.10);

}

.member-avatar{

width:80px;
height:80px;

margin:auto auto 20px;

border-radius:50%;

display:flex;
align-items:center;
justify-content:center;

background:linear-gradient(135deg,#0e7f7a,#0b1f3a);

font-size:26px;

font-weight:700;

color:#fff;

}

.member-card h5{

font-size:20px;

font-family:'Playfair Display',serif;

margin-bottom:10px;

color:#0b1f3a;

}

.member-card p{

margin:0;

font-size:15px;

color:#777;

}

.alumni-avatar{

background:linear-gradient(135deg,#c8a84b,#8a6e2a);

}

@media(max-width:991px){

.team-feature{

text-align:center;

}

.pi-name{

font-size:28px;

}

}

@media(max-width:576px){

.team-feature{

padding:30px 20px;

}

.member-card{

padding:25px 15px;

}

.team-heading{

font-size:24px;

}

}
/*==========================
        FUNDING
==========================*/

.funding-section{

    background:#f8f9fb;
    padding:100px 0;

}

.fund-card{

    background:#ffffff;

    padding:35px;

    border-radius:20px;

    border:1px solid #ececec;

    box-shadow:0 10px 30px rgba(0,0,0,.05);

    transition:.35s;

}

.fund-card:hover{

    transform:translateY(-8px);

    border-color:#0e7f7a;

    box-shadow:0 20px 40px rgba(0,0,0,.12);

}

.fund-agency{

    display:inline-block;

    background:linear-gradient(135deg,#0e7f7a,#0b1f3a);

    color:#fff;

    padding:8px 18px;

    border-radius:30px;

    font-size:13px;

    font-weight:700;

    letter-spacing:1px;

    margin-bottom:20px;

}

.fund-title{

    font-family:'Playfair Display',serif;

    font-size:24px;

    color:#0b1f3a;

    line-height:1.5;

    margin-bottom:18px;

}

.fund-meta{

    color:#666;

    line-height:1.8;

    font-size:15px;

    margin-bottom:0;

}

/* Responsive */

@media(max-width:991px){

    .fund-card{

        padding:28px;

    }

    .fund-title{

        font-size:22px;

    }

}

@media(max-width:576px){

    .fund-card{

        padding:22px;

    }

    .fund-title{

        font-size:20px;

    }

    .fund-agency{

        font-size:12px;

        padding:7px 16px;

    }

}
/*=================================
        OPEN POSITIONS
==================================*/

.positions-section{

    background:linear-gradient(135deg,#0b1f3a,#0e7f7a);

    padding:100px 0;

}

.positions-divider{

    background:linear-gradient(
        90deg,
        rgba(255,255,255,.6),
        rgba(200,168,75,.8)
    );

}

.position-card{

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(10px);

    border:1px solid rgba(255,255,255,.15);

    border-radius:20px;

    padding:35px;

    color:#fff;

    transition:.35s;

}

.position-card:hover{

    transform:translateY(-8px);

    background:rgba(255,255,255,.12);

    border-color:#c8a84b;

    box-shadow:0 20px 40px rgba(0,0,0,.25);

}

.position-badge{

    display:inline-block;

    padding:8px 16px;

    border-radius:30px;

    font-size:12px;

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:1px;

    margin-bottom:20px;

}

.position-badge.open{

    background:#198754;

    color:#fff;

}

.position-badge.seasonal{

    background:#ffc107;

    color:#222;

}

.position-card h4{

    font-family:'Playfair Display',serif;

    font-size:26px;

    margin-bottom:18px;

    color:#fff;

}

.position-card p{

    color:rgba(255,255,255,.85);

    line-height:1.8;

    margin-bottom:30px;

}

.position-btn{

    display:inline-block;

    padding:12px 28px;

    border:2px solid #c8a84b;

    border-radius:40px;

    color:#fff;

    text-decoration:none;

    font-weight:600;

    transition:.3s;

}

.position-btn:hover{

    background:#c8a84b;

    color:#0b1f3a;

}

@media(max-width:991px){

    .position-card{

        padding:28px;

    }

    .position-card h4{

        font-size:22px;

    }

}

@media(max-width:576px){

    .position-card{

        padding:22px;

    }

    .position-card h4{

        font-size:20px;

    }

    .position-btn{

        width:100%;

        text-align:center;

    }

}
/*==========================
        CONTACT
==========================*/

.contact-section{

background:#ffffff;

padding:100px 0;

}

.contact-card,
.map-card{

background:#fff;

border:1px solid #ececec;

border-radius:20px;

padding:35px;

box-shadow:0 10px 30px rgba(0,0,0,.05);

height:100%;

}

.contact-item{

display:flex;

gap:20px;

margin-bottom:30px;

}

.contact-item:last-child{

margin-bottom:0;

}

.contact-icon{

width:60px;

height:60px;

flex-shrink:0;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

background:linear-gradient(135deg,#0e7f7a,#0b1f3a);

color:#fff;

font-size:24px;

}

.contact-item h5{

font-family:'Playfair Display',serif;

font-size:22px;

color:#0b1f3a;

margin-bottom:8px;

}

.contact-item p{

margin:0;

color:#666;

line-height:1.8;

}

.contact-item a{

color:#0e7f7a;

text-decoration:none;

font-weight:600;

}

.contact-item a:hover{

text-decoration:underline;

}

.contact-links{

display:flex;

flex-wrap:wrap;

gap:15px;

margin-top:5px;

}

.map-card{

display:flex;

flex-direction:column;

justify-content:center;

align-items:center;

text-align:center;

}

.map-icon{

width:120px;

height:120px;

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

font-size:60px;

background:linear-gradient(135deg,#0e7f7a,#0b1f3a);

color:#fff;

margin-bottom:25px;

}

.map-card h4{

font-family:'Playfair Display',serif;

font-size:30px;

color:#0b1f3a;

margin-bottom:15px;

}

.map-card p{

color:#666;

line-height:1.8;

margin-bottom:25px;

}

.map-btn{

display:inline-block;

padding:12px 30px;

border-radius:40px;

background:#0e7f7a;

color:#fff;

text-decoration:none;

font-weight:600;

transition:.3s;

}

.map-btn:hover{

background:#0b1f3a;

color:#fff;

}

@media(max-width:768px){

.contact-card,
.map-card{

padding:25px;

}

.contact-item{

flex-direction:column;

text-align:center;

align-items:center;

}

.contact-links{

justify-content:center;

}

.map-card h4{

font-size:24px;

}

}
/*==================================
            NEWS SECTION
==================================*/

.news-section{

    padding:100px 0;

    background:#f8f9fb;

}

/*======================
      LIVE TICKER
======================*/

.news-ticker{

    display:flex;

    align-items:center;

    overflow:hidden;

    border-radius:12px;

    background:#0b1f3a;

}

.ticker-label{

    background:#0e7f7a;

    color:#fff;

    padding:16px 24px;

    font-weight:600;

    white-space:nowrap;

}

.ticker-wrapper{

    overflow:hidden;

    width:100%;

}

.ticker-track{

    display:flex;

    align-items:center;

    white-space:nowrap;

    animation:tickerMove 35s linear infinite;

}

.ticker-track span{

    display:inline-block;

    color:#fff;

    padding:16px 40px;

    font-size:15px;

}

.ticker-track strong{

    color:#c8a84b;

}

@keyframes tickerMove{

    from{

        transform:translateX(100%);

    }

    to{

        transform:translateX(-100%);

    }

}

/*======================
      NEWS CARD
======================*/

.news-card{

    display:flex;

    gap:25px;

    background:#fff;

    border-radius:18px;

    padding:28px;

    margin-bottom:25px;

    border:1px solid #ececec;

    transition:.35s;

    box-shadow:0 10px 25px rgba(0,0,0,.05);

}

.news-card:hover{

    transform:translateY(-6px);

    border-color:#0e7f7a;

    box-shadow:0 18px 35px rgba(0,0,0,.10);

}

/*======================
        DATE
======================*/

.news-date{

    min-width:90px;

    background:#0b1f3a;

    border-radius:15px;

    color:#fff;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    padding:15px;

}

.news-date .day{

    font-size:32px;

    font-weight:700;

    line-height:1;

}

.news-date .month{

    color:#c8a84b;

    font-size:14px;

    margin:8px 0 3px;

}

.news-date .year{

    font-size:13px;

}

/*======================
      CONTENT
======================*/

.news-content{

    flex:1;

}

.news-category{

    display:inline-block;

    padding:6px 15px;

    border-radius:30px;

    font-size:12px;

    font-weight:600;

    margin-bottom:15px;

}

.news-category.paper{

    background:#dff6ec;

    color:#0e7f7a;

}

.news-category.award{

    background:#fff6d8;

    color:#a87800;

}

.news-category.lab{

    background:#e6efff;

    color:#2355b7;

}

.news-content h4{

    font-family:'Playfair Display',serif;

    font-size:25px;

    color:#0b1f3a;

    margin-bottom:12px;

    line-height:1.4;

}

.news-content p{

    color:#666;

    line-height:1.8;

    margin:0;

}

/*======================
   ANNOUNCEMENTS
======================*/

.announcement-box{

    background:#fff;

    border-radius:18px;

    padding:30px;

    border:1px solid #ececec;

    box-shadow:0 10px 30px rgba(0,0,0,.06);

}

.announcement-box h3{

    font-family:'Playfair Display',serif;

    margin-bottom:25px;

    color:#0b1f3a;

}

.announcement-item{

    padding:18px 0;

    border-bottom:1px solid #eee;

}

.announcement-item:last-child{

    border-bottom:none;

}

.announcement-tag{

    display:inline-block;

    background:#0e7f7a;

    color:#fff;

    padding:6px 14px;

    border-radius:20px;

    font-size:12px;

    margin-bottom:12px;

}

.announcement-item p{

    margin-bottom:8px;

    color:#555;

    line-height:1.7;

}

.announcement-item small{

    color:#999;

}

/*======================
      RESPONSIVE
======================*/

@media(max-width:991px){

.news-card{

    flex-direction:column;

}

.news-date{

    width:90px;

}

.announcement-box{

    margin-top:40px;

}

}

@media(max-width:768px){

.news-section{

    padding:70px 0;

}

.news-content h4{

    font-size:21px;

}

.news-ticker{

    flex-direction:column;

}

.ticker-label{

    width:100%;

    text-align:center;

}

.news-card{

    padding:22px;

}

}

@media(max-width:576px){

.news-content h4{

    font-size:19px;

}

.news-date{

    width:80px;

}

.news-date .day{

    font-size:28px;

}

.ticker-track span{

    padding:15px 25px;

    font-size:14px;

}

}
/*=========================
      FADE ANIMATION
=========================*/

.fade-up{

    opacity:0;

    transform:translateY(40px);

    transition:all .8s ease;

}

.fade-up.show{

    opacity:1;

    transform:translateY(0);

}
/*=================================
          GALLERY SECTION
==================================*/

.gallery-section{
    padding:100px 0;
    background:#f8f9fb;
}

/*=========================
      FILTER BUTTONS
=========================*/

.gallery-filter{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:15px;
}

.gallery-btn{

    padding:10px 24px;

    border:none;

    border-radius:40px;

    background:#e9ecef;

    color:#0b1f3a;

    font-weight:600;

    transition:.35s;

}

.gallery-btn:hover,
.gallery-btn.active{

    background:#0e7f7a;

    color:#fff;

}

/*=========================
      GALLERY CARD
=========================*/

.gallery-card{

    position:relative;

    overflow:hidden;

    border-radius:20px;

    cursor:pointer;

    transition:.35s;

    box-shadow:0 12px 25px rgba(0,0,0,.08);

}

.gallery-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 40px rgba(0,0,0,.15);

}

.gallery-thumb{

    height:300px;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:70px;

    color:#fff;

    transition:.4s;

}

.gallery-card:hover .gallery-thumb{

    transform:scale(1.08);

}

/*=========================
      OVERLAY
=========================*/

.gallery-overlay{

    position:absolute;

    left:0;
    right:0;
    bottom:0;

    padding:25px;

    background:linear-gradient(
        transparent,
        rgba(0,0,0,.85)
    );

    color:#fff;

}

.gallery-overlay h5{

    font-family:'Playfair Display',serif;

    margin-bottom:8px;

    font-size:22px;

}

.gallery-overlay span{

    font-size:14px;

    color:#ddd;

}

/*=========================
      BACKGROUND COLORS
=========================*/

.bg-one{
background:linear-gradient(135deg,#0b1f3a,#0e7f7a);
}

.bg-two{
background:linear-gradient(135deg,#c8a84b,#92400e);
}

.bg-three{
background:linear-gradient(135deg,#064e3b,#0e7f7a);
}

.bg-four{
background:linear-gradient(135deg,#1e3a5f,#0e7f7a);
}

.bg-five{
background:linear-gradient(135deg,#0b1f3a,#1e3a5f);
}

.bg-six{
background:linear-gradient(135deg,#1a1a2e,#16213e);
}

.bg-seven{
background:linear-gradient(135deg,#92400e,#c8a84b);
}

.bg-eight{
background:linear-gradient(135deg,#065f46,#064e3b);
}

.bg-nine{
background:linear-gradient(135deg,#4c1d95,#7c3aed);
}

.bg-ten{
background:linear-gradient(135deg,#166534,#15803d);
}

.bg-eleven{
background:linear-gradient(135deg,#0c4a6e,#0369a1);
}

.bg-twelve{
background:linear-gradient(135deg,#9f1239,#be185d);
}

/*=========================
      FILTER ANIMATION
=========================*/

.gallery-item{

    transition:.4s;

}

.gallery-item.hide{

    opacity:0;

    transform:scale(.8);

    pointer-events:none;

    display:none;

}

/*=========================
      RESPONSIVE
=========================*/

@media(max-width:991px){

.gallery-thumb{

    height:260px;

}

}

@media(max-width:768px){

.gallery-section{

    padding:70px 0;

}

.gallery-thumb{

    height:220px;

    font-size:55px;

}

.gallery-overlay{

    padding:20px;

}

.gallery-overlay h5{

    font-size:19px;

}

}

@media(max-width:576px){

.gallery-filter{

    gap:10px;

}

.gallery-btn{

    font-size:13px;

    padding:8px 18px;

}

.gallery-thumb{

    height:200px;

    font-size:50px;

}

.gallery-overlay h5{

    font-size:17px;

}

}
/*==============================
        LIGHTBOX
==============================*/

.lightbox{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.88);

    display:none;

    justify-content:center;

    align-items:center;

    z-index:99999;

    padding:20px;

}

.lightbox.show{

    display:flex;

}

.lightbox-content{

    width:100%;

    max-width:700px;

    background:#fff;

    border-radius:20px;

    padding:40px;

    text-align:center;

    position:relative;

    animation:zoomIn .35s ease;

}

.lightbox-close{

    position:absolute;

    top:15px;

    right:18px;

    width:42px;

    height:42px;

    border:none;

    border-radius:50%;

    background:#dc3545;

    color:#fff;

    font-size:22px;

    cursor:pointer;

}

.lightbox-image{

    height:320px;

    border-radius:16px;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:90px;

    color:#fff;

    margin-bottom:30px;

    background:linear-gradient(135deg,#0b1f3a,#0e7f7a);

}

.lightbox-content h3{

    font-family:'Playfair Display',serif;

    color:#0b1f3a;

    margin-bottom:15px;

}

.lightbox-content p{

    color:#666;

    line-height:1.8;

}

.lightbox-nav{

    display:flex;

    justify-content:center;

    gap:15px;

    margin-top:30px;

}

@keyframes zoomIn{

    from{

        opacity:0;

        transform:scale(.8);

    }

    to{

        opacity:1;

        transform:scale(1);

    }

}

@media(max-width:768px){

.lightbox-content{

    padding:25px;

}

.lightbox-image{

    height:220px;

    font-size:70px;

}

.lightbox-nav{

    flex-direction:column;

}

.lightbox-nav .btn{

    width:100%;

}

}
/*==============================
            FOOTER
==============================*/



/*======================================
            INST FOOTER
=======================================*/

.inst-footer{
    background:#0D555E;
    color:#fff;
    padding:70px 0 20px;
    position:relative;
    overflow:hidden;
}

.inst-footer a{
    text-decoration:none;
    transition:.3s;
}

/*======================================
LOGO
=======================================*/

.footer-logo{
    max-width:170px;
}

.footer-about{
    font-size:16px;
    line-height:1.8;
    color:#f5f5f5;
}

/*======================================
ABOUT BUTTON
=======================================*/

.about-btn{
    display:inline-block;
    background:#ff8b2c;
    color:#fff;
    padding:10px 28px;
    border-radius:50px;
    font-weight:600;
    margin-top:10px;
}

.about-btn:hover{
    background:#ff6f00;
    color:#fff;
}

/*======================================
TITLE
=======================================*/

.footer-title{

    font-size:24px;

    font-weight:700;

    margin-bottom:25px;

    color:#fff;

    position:relative;

}

.footer-title::after{

    content:"";

    width:45px;

    height:3px;

    background:#ff8b2c;

    position:absolute;

    left:0;

    bottom:-8px;

}

/*======================================
LINKS
=======================================*/

.footer-links{

    list-style:none;

    padding:0;

    margin:0;

}

.footer-links li{

    margin-bottom:15px;

}

.footer-links a{

    color:#fff;

    font-size:17px;

}

.footer-links i{

    color:#fff;

    margin-right:10px;

    font-size:14px;

}

.footer-links a:hover{

    color:#ff8b2c;

    padding-left:8px;

}

/*======================================
CIF
=======================================*/

.footer-cif{

    width:100%;

    border-radius:10px;

    margin-top:10px;

}

.footer-text{

    color:#f2f2f2;

    line-height:1.8;

    font-size:15px;

}

.read-more{

    color:#ff8b2c;

    font-weight:600;

}

.read-more:hover{

    color:#fff;

}

/*======================================
CONTACT
=======================================*/

.contact-item{

    display:flex;

    align-items:flex-start;

    gap:15px;

    margin-bottom:22px;

}

.contact-item i{

    width:18px;

    color:#ff8b2c;

    font-size:18px;

    margin-top:5px;

}

.contact-item span{

    line-height:1.8;

}

/*======================================
SOCIAL
=======================================*/

.social-icons{

    display:flex;

    gap:15px;

    margin:25px 0;

}

.social-icons a{

    width:46px;

    height:46px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#fff;

    font-size:20px;

}

.social-icons a:nth-child(1){

    background:#3b5998;

}

.social-icons a:nth-child(2){

    background:#1da1f2;

}

.social-icons a:nth-child(3){

    background:#0077b5;

}

.social-icons a:nth-child(4){

    background:#ff0000;

}

.social-icons a:hover{

    transform:translateY(-5px);

}

/*======================================
COUNTER
=======================================*/

.visitor-counter img{

    width:170px;

    border:2px solid #ddd;

    background:#fff;

    padding:4px;

}

.footer-small{

    margin-top:10px;

    font-size:15px;

    color:#eee;

}

/*======================================
BOTTOM
=======================================*/

.footer-divider{

    border-color:rgba(255,255,255,.2);

    margin:40px 0 20px;

}

.footer-policy{

    margin-bottom:15px;

}

.footer-policy a{

    color:#fff;

    padding:0 10px;

}

.footer-policy a:hover{

    color:#ff8b2c;

}

.footer-copy{

    font-size:15px;

    color:#f2f2f2;

}

/*======================================
SCROLL BUTTON
=======================================*/

.scrollTop{

    width:55px;

    height:55px;

    position:fixed;

    right:20px;

    bottom:20px;

    background:#000;

    color:#fff;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    cursor:pointer;

    z-index:999;

    font-size:22px;

    transition:.3s;

}

.scrollTop:hover{

    background:#ff8b2c;

}
.scroll-top{

    position:fixed;

    right:25px;

    bottom:25px;

    width:50px;

    height:50px;

    border:none;

    border-radius:50%;

    background:#0e7f7a;

    color:#fff;

    font-size:22px;

    cursor:pointer;

    display:none;

    z-index:999;

    transition:.3s;

}

.scroll-top:hover{

    background:#c8a84b;

    color:#08172d;

}

/*======================================
RESPONSIVE
=======================================*/

@media(max-width:991px){

.inst-footer{

text-align:center;

}

.footer-title::after{

left:50%;

transform:translateX(-50%);

}

.contact-item{

justify-content:center;

text-align:left;

}

.social-icons{

justify-content:center;

}

.footer-logo{

margin:auto;

display:block;

}

}

@media(max-width:768px){

.inst-footer{

padding:50px 0 20px;

}

.footer-title{

font-size:22px;

}

.footer-links a{

font-size:16px;

}

.footer-copy{

font-size:14px;

}

}

@media(max-width:576px){

.footer-title{

font-size:20px;

}

.footer-about{

font-size:15px;

}

.footer-text{

font-size:14px;

}

.contact-item span{

font-size:14px;

}

.social-icons a{

width:42px;

height:42px;

font-size:18px;

}

.visitor-counter img{

width:140px;

}

}