/********** Template CSS **********/
h1,
h2,
.font-weight-bold {
    font-weight: 700 !important;
}

h3,
h4,
.font-weight-semi-bold {
    font-weight: 600 !important;
}

h5,
h6,
.font-weight-medium {
    font-weight: 500 !important;
}

.btn {
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    transition: .5s;
}

.btn-primary,
.btn-secondary,
.btn-primary:hover,
.btn-secondary:hover {
    color: #FFFFFF;
}

.btn-primary:hover {
    background: var(--bs-secondary-gradient);
    border-color: var(--bs-secondary-gradient);
}

.btn-secondary:hover {
    background: var(--bs-primary);
    border-color: var(--bs-primary);
}

.btn-square {
    width: 36px;
    height: 36px;
}

.btn-sm-square {
    width: 28px;
    height: 28px;
}

.btn-lg-square {
    width: 46px;
    height: 46px;
}

.btn-square,
.btn-sm-square,
.btn-lg-square {
    padding-left: 0;
    padding-right: 0;
    text-align: center;
}

.back-to-top {
    position: fixed;
    display: none;
    right: 45px;
    bottom: 45px;
    z-index: 99;
}

.navbar-light .navbar-nav .nav-link {
    font-family: 'Montserrat', sans-serif;
    position: relative;
    margin-left: 25px;
    padding: 30px 0;
    font-size: 18px;
    font-weight: 500;
    color: var(--bs-dark);
    outline: none;
    transition: .5s;
}

.sticky-top.navbar-light .navbar-nav .nav-link {
    padding: 20px 0;
}

.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link.active {
    color: var(--bs-primary);
}

@media (min-width: 992px) {
    .navbar-light .navbar-nav .nav-link::before {
        position: absolute;
        content: "";
        width: 0;
        height: 5px;
        bottom: 0;
        left: 50%;
        background: var(--bs-primary);
        transition: .5s;
    }

    .navbar-light .navbar-nav .nav-link:hover::before,
    .navbar-light .navbar-nav .nav-link.active::before {
        width: 100%;
        left: 0;
    }

    .navbar-light .navbar-nav .nav-link.nav-contact::before {
        display: none;
    }
}

@media (max-width: 991.98px) {
    .navbar-light .navbar-nav .nav-link  {
        margin-left: 0;
        padding: 10px 0;
    }
}

.carousel-caption {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(18, 15, 45, .5);
    z-index: 1;
}

@media (max-width: 576px) {
    .carousel-caption h5 {
        font-size: 14px;
        font-weight: 500 !important;
    }

    .carousel-caption h1 {
        font-size: 30px;
        font-weight: 600 !important;
    }
}

.carousel-control-prev,
.carousel-control-next {
    width: 10%;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    width: 3rem;
    height: 3rem;
}

.carousel-indicators {
    align-items: flex-end;
}

.carousel-indicators [data-bs-target] {
    width: 5px;
    height: 25px;
}

.carousel-indicators .active {
    height: 45px;
}

.service-item div {
    z-index: 1;
}

.service-item div::after {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    top: 0;
    left: 0;
    border-radius: 2px 2px 0 0;
    transition: .5s;
    z-index: -1;
}

.service-item div:hover::after {
    width: 100%;
    background: var(--bs-primary);
}

.service-item * {
    transition: .5s;
}

.service-item:hover * {
    color: var(--bs-light) !important;
}

.bg-offer {
    background: linear-gradient(rgba(18, 15, 45, .5), rgba(18, 15, 45, .5)), url(../img/bg1.jpeg) top right no-repeat;
    background-size: cover;
    background-attachment: fixed;
}

.bg-contact {
    background: linear-gradient(rgba(18, 15, 45, .5), rgba(18, 15, 45, .5)), url(../img/bg.jpg) top right no-repeat;
    background-size: cover;
    background-attachment: fixed;
}

.offer-pricing{
	background: linear-gradient(rgba(18, 15, 45, .5), rgba(18, 15, 45, .5)), url(../img/newimage2.jpg) top right no-repeat;
    background-size: cover;
    background-attachment: fixed;
}

.blog-date {
    position: absolute;
    width: 90px;
    height: 65px;
    top: 75px;
    left: -25px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background: var(--bs-secondary-gradient);
}

.blog-date::after {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    top: -25px;
    left: 0;
    border: 13px solid;
    border-color: transparent #D34351 #D34351 transparent;
    z-index: -1;
}


.partner-carousel .partner-item{
    background:#fff;
    border-radius:12px;
    padding:25px;
    margin:12px;
    height:150px;

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

    border:1px solid #edf1f5;

    transition:.35s;
}

.partner-carousel .partner-item:hover{
    transform:translateY(-6px);
    box-shadow:0 15px 40px rgba(0,0,0,.12);
}

.partner-carousel .partner-item img{
    max-width:160px;
    max-height:70px;
    width:auto;
    filter:grayscale(100%);
    opacity:.75;
    transition:.4s;
}

.partner-carousel .partner-item:hover img{
    filter:none;
    opacity:1;
    transform:scale(1.05);
}

.investment-card{

    background:#fff;

    border-radius:18px;

    overflow:hidden;

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

    transition:.35s;

    margin:10px;

}

.investment-card:hover{

    transform:translateY(-8px);

}

.investment-image{

    position:relative;

    overflow:hidden;

}

.investment-image img{

    height:260px;

    width:100%;

    object-fit:cover;

    transition:.5s;

}

.investment-card:hover img{

    transform:scale(1.08);

}

.investment-image .badge{

    position:absolute;

    top:18px;

    left:18px;

    padding:10px 18px;

    font-size:12px;

    letter-spacing:1px;

}

.investment-content{

    padding:30px;

}

.investment-content h4{

    font-weight:700;

    margin-bottom:15px;

}

.investment-content p{

    color:#6c757d;

    min-height:80px;

}

.investment-content small{

    text-transform:uppercase;

    color:#888;

    letter-spacing:1px;

}

.investment-content h5{

    font-weight:700;

    margin-top:5px;

}

.investment-cta{

    background:#011c5f;

    border-radius:20px;

    padding:40px;

}


.investor-highlight{

    background:#f8f9fa;

}

.investor-card{

    position:relative;

    overflow:hidden;

    background:linear-gradient(135deg,#021B52,#0A4DA6);

    border-radius:25px;

    padding:70px;

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

}

.investor-card::before{

    content:"";

    position:absolute;

    width:420px;

    height:420px;

    right:-150px;

    top:-150px;

    border-radius:50%;

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

}

.investor-card::after{

    content:"";

    position:absolute;

    width:300px;

    height:300px;

    left:-120px;

    bottom:-120px;

    border-radius:50%;

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

}

/* Badge */

.opportunity-badge{

    position:absolute;

    top:25px;

    right:25px;

    background:#FFC107;

    color:#000;

    font-size:14px;

    font-weight:700;

    padding:12px 25px;

    border-radius:40px;

    box-shadow:0 0 20px rgba(255,193,7,.8);

    animation:badgePulse 2s infinite;

    z-index:100;

}

/* Metrics */

.metric-box{

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

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

    backdrop-filter:blur(8px);

    border-radius:15px;

    padding:25px;

    text-align:center;

    transition:.4s;

}

.metric-box:hover{

    transform:translateY(-8px);

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

}

.metric-box h2{

    color:#FFC107;

    font-weight:700;

    margin-bottom:8px;

}

.metric-box span{

    color:#fff;

    font-size:14px;

}

/* Image */

.project-preview{

    position:relative;

}

.project-preview img{

    border-radius:20px;

    border:8px solid rgba(255,255,255,.12);

    transition:.5s;

}

.project-preview:hover img{

    transform:scale(1.03);

}

/* Status */

.project-status{

    position:absolute;

    bottom:25px;

    left:25px;

    background:#fff;

    color:#021B52;

    font-weight:700;

    padding:14px 24px;

    border-radius:40px;

    display:flex;

    align-items:center;

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

}

.pulse{

    width:12px;

    height:12px;

    background:#28a745;

    border-radius:50%;

    margin-right:12px;

    animation:pulse 1.5s infinite;

}

/* Animations */

@keyframes pulse{

0%{

box-shadow:0 0 0 0 rgba(40,167,69,.7);

}

70%{

box-shadow:0 0 0 15px rgba(40,167,69,0);

}

100%{

box-shadow:0 0 0 0 rgba(40,167,69,0);

}

}

@keyframes badgePulse{

0%,100%{

transform:scale(1);

}

50%{

transform:scale(1.08);

box-shadow:0 0 35px rgba(255,193,7,1);

}

}

/* Mobile */

@media(max-width:991px){

.investor-card{

padding:40px 30px;

}

.opportunity-badge{

position:relative;

top:auto;

right:auto;

display:inline-block;

margin-bottom:30px;

}

}


.approach-card{

background:#fff;

padding:35px;

border-radius:18px;

height:100%;

text-align:center;

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

transition:.4s;

}

.approach-card:hover{

transform:translateY(-10px);

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

}

.icon-box{

width:80px;

height:80px;

margin:auto;

margin-bottom:25px;

border-radius:50%;

background:linear-gradient(135deg,#011c5f,#0a4da6);

display:flex;

align-items:center;

justify-content:center;

font-size:32px;

color:#fff;

}

.approach-card h4{

font-weight:700;

margin-bottom:15px;

}

.approach-card p{

color:#6c757d;

line-height:1.8;

}

.approach-center{

text-align:center;

padding:40px 20px;

}

.center-circle{

width:180px;

height:180px;

margin:auto;

border-radius:50%;

background:#fff;

display:flex;

align-items:center;

justify-content:center;

box-shadow:0 20px 60px rgba(0,0,0,.12);

animation:floatLogo 4s ease-in-out infinite;

}

@keyframes floatLogo{

0%,100%{

transform:translateY(0);

}

50%{

transform:translateY(-10px);

}

}

/* Featured Card */

.approach-feature{
    background:#fff;
    padding:55px 40px;
    border-radius:20px;
    text-align:center;
    box-shadow:0 12px 35px rgba(0,0,0,.08);
    border-top:5px solid #0d6efd;
}

.feature-icon{
    width:90px;
    height:90px;
    margin:auto;
    border-radius:50%;
    background:#0d6efd;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:38px;
    margin-bottom:25px;
}

/* Equal Cards */

.approach-card{

    background:#fff;
    border-radius:18px;
    padding:35px 25px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.35s;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    border-top:4px solid transparent;
	
}

.approach-card:hover{

    transform:translateY(-8px);
    border-top:4px solid #0d6efd;
    box-shadow:0 18px 40px rgba(0,0,0,.12);

}

.icon-box{

    width:75px;
    height:75px;
    margin:auto;
    border-radius:50%;
    background:#eaf3ff;
    color:#0d6efd;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:30px;
    margin-bottom:22px;
    transition:.3s;

}

.approach-card:hover .icon-box{

    background:#0d6efd;
    color:#fff;

}

.approach-card h4{

    font-size:22px;
    font-weight:700;
    color:#0d6efd;
    margin-bottom:15px;

}

.approach-card p{

    color:#6c757d;
    line-height:1.8;
    margin-bottom:0;
    flex-grow:1;

}
