*,

*::before,

*::after {

    box-sizing: border-box;

    margin: 0;

    padding: 0;

}



html {

    overflow-x: hidden;

    font-size: 1.025vw;

    line-height: 1.15;

    scroll-behavior: smooth;

}



body {

    font-weight: normal;

    font-size: 1rem;

    line-height: 1.5;

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

    -webkit-font-smoothing: antialiased;

    -moz-osx-font-smoothing: grayscale;

}



img,

picture,

video,

canvas,

svg {

    display: block;

    max-width: 100%;

}



input,

button,

textarea,

select {

    font: inherit;

}



a {

    text-decoration: none;

    color: inherit;

}



p {

    font-weight: 400;

    font-size: 1rem;

    line-height: 1.75rem;

}



ul,

ol {

    list-style: none;

}



table {

    border-collapse: collapse;

    border-spacing: 0;

}



.container {

    max-width: 82rem;

}



.btn {

    color: #fff;

    font-weight: 400;

    font-size: .9375rem;

    text-align: center;

    background: #EB3B2F;

    padding: .5rem 1.25rem;

    border-radius: 5rem;

}



.download-link {

    display: inline-block;

    position: relative;

    font-size: .9375rem;

    color: #CBDEE8;

    text-decoration: none;

    font-weight: 400;

    transition: color 0.3s ease;

    padding-right: 1.25rem;

}



.download-link::after {

    content: '';

    position: absolute;

    top: 50%;

    right: 0;

    transform: translateY(-50%);

    width: .75rem;

    height: .75rem;

    background: url('../images/home/up-arrow.webp') no-repeat center/contain;

    transition: transform 0.3s ease;

}



.download-link:hover {

    color: #fff;

}



.download-link:hover::after {

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

}



/* header starts*/

header {

    position: fixed;

    top: 0;

    width: 100%;

    transition: top 0.1s ease-in-out;

    z-index: 999;

    background-color: #1E1F21;

    padding: 0.5rem 0;

}



header.scrolled-up {

    background-color: #1E1F21;

}



.navbar-brand img {

    height: 2rem;

}



ul.navbar-nav {

    gap: 3rem;

}



ul.navbar-nav li a {

    font-weight: 400;

    font-size: .75rem;

    text-transform: uppercase;

    color: #DCF2FF;

}

ul.navbar-nav li a:hover,
ul.navbar-nav li a:focus{
    color: #EB3B2F;
}



/* header ends */



/* hero-section starts */

.hero-section {

    background: linear-gradient(180deg, #1E1F21 38.61%, #828282 100%);

    color: #fff;

}



.hero-section .text-part {

    padding: 5rem 0;

}



.hero-section .text-part h1 {

    font-family: 'Poppins';

    font-weight: 500;

    font-size: 3.5rem;

    line-height: 4rem;

    letter-spacing: -0.1rem;

    text-align: center;

    margin-bottom: 1rem;

}



.hero-section .text-part .btn-wrapper {

    gap: 1.5rem;

    margin-top: 2.5rem;

}



.swiper {

    width: 100%;

}



.swiper-slide img {

    width: 100%;

    height: 13.5rem;

    object-fit: cover;

    border-radius: 1rem;

}



.swiper-wrapper {

    transition-timing-function: linear !important;

    margin-bottom: 1.25rem !important;

}



.about-section {

    padding: 5rem 0;

}



.h2-title {

    color: #FFFFFF;

    font-family: 'Poppins';

    font-weight: 500;

    font-size: 3rem;

    line-height: 3.5rem;

    letter-spacing: -0.1rem;



}



.about-section p {

    color: #CBDEE8;

    line-height: 2rem;

}



.about-section ul li {

    list-style-type: disc;

    line-height: 2rem;

    color: #CBDEE8;

    font-size: 1rem;

}



.about-section .btn-wrapper {

    margin-top: 1.75rem;

}



.image-section img {

    width: 100%;

}



.services {

    padding: 5rem 0;

    background: #F3ECEB;

    background: linear-gradient(270deg, rgba(243, 236, 235, 1) 50%, rgba(255, 255, 255, 1) 50%);

}



.services .h2-title {

    color: #191919;

}



.services #serviceTabs {

    margin-top: 4rem;

    display: block;

    line-height: 2.5rem;

}



.services #serviceTabs .nav-link {

    font-weight: 400;

    font-size: 1rem;

    color: #606060;

    background-color: transparent;

    padding: 0;

    text-align: left;

    width: auto;

}



.services #serviceTabs .nav-link.active,

.services #serviceTabs .show>.nav-link {

    color: #EB3B2F;

    text-decoration: underline;

}



.services .arrow-bar {

    gap: 1rem;

    margin-right: 1.5rem;

}



.services .arrow-bar button {

    border: 0;

    background: #fff;

}



.services .arrow-bar button svg {

    height: 1.25rem;

    width: 1.25rem;

}



.services .arrow-bar button:hover svg path{

    stroke:#EB3B2F;

}





.arrow-bar button.active-arrow svg path {

    stroke: #EB3B2F;

}



.services .service-card {

    display: flex;

    align-items: center;

    height: 100%;

    padding-left: 3rem;

}



#serviceContent .tab-pane img {

    width: 17.5rem;

    height: 15rem;

    object-fit: contain;

    margin-bottom: 2rem;

}



#serviceContent .tab-pane h3 {

    font-family: 'Poppins';

    font-weight: 500;

    font-size: 1.75rem;

    color: #191919;

    margin-bottom: 1.25rem;

}



#serviceContent .tab-pane p {

    color: #191919;

    margin-bottom: 1.5rem;

}



.why-us {

    background: url('../images/home/why-us-bg.webp') no-repeat bottom;

    background-size: cover;

}



.why-us-image img {

    width: 100%;

    height: auto;

    display: block;

}



.why-us-overlay {

    display: flex;

    position: relative;

    top: -6rem;

}



.why-us-overlay .why-us-text {

    color: #fff;

    background-color: #EB3B2F;

    width: 45%;

    padding: 4rem;

    max-height: 29.5rem;

}



.why-us-overlay .why-us-text h2 {

    font-size: 2.5rem;

    line-height: 3rem;

    margin-bottom: 1.5rem;

    color: #FFFFFF;

}



.why-us-overlay .why-us-text p {

    font-weight: 400;

    font-size: 1.125rem;

    line-height: 2rem;

    color: #FFFFFF;

}



.why-us-overlay .why-us-stats {

    width: 55%;

}



.why-us-overlay .why-us-stats .stat {

    background-color: #1A1C23;

    padding: 1.5rem;

    width: 14.75rem;

    height: 14.75rem;

    position: relative;

}



.why-us-overlay .why-us-stats .stat h3 {

    font-weight: 300;

    font-size: 2.5rem;

    color: #ECF4F9;

}



.why-us-overlay .why-us-stats .stat p {

    color: #BABFC3;

    font-weight: 400;

    font-size: 1rem;

    line-height: 1.5rem;

    text-align: right;

    position: absolute;

    bottom: 0.75rem;

    right: 1.5rem;

    left: 1.5rem;

}



.clients {

    padding: 3rem 0;

}



.clients img {

    width: auto;

    height: auto;

    object-fit: contain;

}



.latest-news {

    padding: 3rem 0;

}



.latest-news .news-swiper {

    margin-left: calc((100vw - 82rem) / 2 + calc(var(--bs-gutter-x, 1.5rem) * 0.5));

    margin-right: 0;

}





.latest-news h2 {

    color: #191919;

    font-family: Poppins;

    font-weight: 500;

    font-size: 2rem;

    line-height: 2.5rem;

    margin-bottom: 3rem;



}



.latest-news .news-card {

    background: #F5F6F8;

    padding: 1.5rem 2rem;

    border-radius: 1rem;

    position: relative;

    min-height: 15.625rem;

}



.latest-news .news-card .date {

    color: #747474;

    font-weight: 400;

    font-size: .9375rem;



}



.latest-news .news-card h4 {

    color: #191919;

    font-weight: 500;

    font-size: 1.25rem;

    line-height: 1.875rem;

}



.latest-news .read-more-btn {

    position: absolute;

    bottom: 1.5rem;

}



.read-more {

    display: inline-block;

    position: relative;

    font-size: .9375rem;

    background: #fff;

    color: #191919;

    padding: .5rem 1rem;

    border-radius: 3.125rem;

    font-weight: 400;

    transition: color 0.3s ease;

    padding-right: 2.5rem;

}



.read-more::after {

    content: '';

    position: absolute;

    top: 50%;

    right: 0.5rem;

    transform: translateY(-50%);

    width: 1.25rem;

    height: 1.25rem;

    background: url('../images/home/read-more-arrow.webp') no-repeat center/contain;

    transition: transform 0.3s ease;

}





.read-more:hover::after {

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

}



.news-swiper-nav {

    justify-content: space-between;

    margin-top: 3rem;

    width: 6.25rem;

    border: 1px solid #EDEDEE;

    padding: .875rem 1.125rem;

    border-radius: 6.25rem;

}



.news-custom-prev:hover svg path,

.news-custom-next:hover svg path {

    stroke: #191919;

}



footer {

    background: url('../images/home/footer-bg.webp') no-repeat center/cover;

    padding: 5rem 0;

}



footer h4 {

    color: #CDCDCD;

    font-weight: 500;

    font-size: 1rem;

    letter-spacing: 0%;

    margin-bottom: 1rem;

}



footer ul {

    column-gap: 1.25rem;

    row-gap: .5rem;

    padding-left: 1rem;

}



footer ul li {

    list-style-type: disc;

}



footer ul.footer-services li {

    width: 30%;

}



footer ul li::marker {

    color: #9E9E9E;

}



footer ul li a {

    color: #9E9E9E;

    font-weight: 300;

    font-size: .875rem;

    line-height: 1.375rem;

    text-decoration: underline;

}



footer .footer-quick li {

    width: 45%;

}



footer .social-links li {

    list-style-type: none;

}



footer .social-links img {

    width: 1.5rem;

    height: 1.5rem;

}



footer hr {

    color: #272727;

    opacity: 1;

    margin: 2rem 0;

}



footer address,

footer address p {

    color: #9E9E9E;

    font-weight: 300;

    font-size: .875rem;

    line-height: 1.25rem;

}



footer address ul {

    padding-left: 0;

}



footer address ul li {

    list-style-type: none;

    line-height: 1.5rem;

}



footer .certifications {

    padding-left: 0;

}



footer .certifications li {

    list-style-type: none;

}



footer .certifications img {

    width: 4.6rem;

    height: 4.6rem;

}



footer .copyright p {

    color: #8C8C8C;

    font-weight: 300;

    font-size: .875rem;

}



footer .copyright p a {

    text-decoration: underline;

}



footer .site-by p {

    color: #8C8C8C;

    font-weight: 300;

    font-size: .875rem;

}