/* RESET & GLOBAL STYLES */
*,
dl,
ol,
ul {
    padding: 0;
    margin: 0;
}

* {
    box-sizing: border-box;
    font-family: 'Rubik';
}

li {
    list-style: none;
}

li,
p {
    font-family: 'Rubik';
    font-size: 1rem; /* 16px */
    line-height: 1.5; /* 24px (for readability) */
    color: #2f2f2f;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Rubik';
    color: #000000;
    line-height: 1.3;
}

a,
img {
    transition: 0.4s;
}

a {
    font-family: 'Rubik';
    font-weight: normal;
    text-decoration: none;
    font-size: 1rem;
    line-height: 1.5;
    color: #000;
}


.container {
    max-width: 1230px;
    margin: 0 auto; /* CHANGED: ensure centered container */
}

.bg-color {
    background-color: #f3f7fa;
}

img {
    max-width: 100%;
}

.padd {
    padding: 60px 0;
}

/* COLOR VARIABLES */
:root {
    --first-clr: #033469;   /* Deep Blue */
    --second-clr: #0673a6;  /* Lighter Blue */
    --third-clr: #000000;   /* Black */
    --fifth-clr: #f3be1e;   /* Yellow */
}

/* TYPOGRAPHY */
html {
    font-size: 16px; /* 1rem = 16px */
}

h1 {
    font-size: 2rem; /* 32px */
}

h2 {
    font-size: 1.5rem; /* 24px */
}

h3 {
    font-size: 1.25rem; /* 20px */
}

h4 {
    font-size: 1.5rem; /* 24px */
}

h5 {
    font-size: 1.25rem; /* 20px */
}

h6 {
    font-size: 1rem; /* 16px */
}

/* FONT-FACE */
@font-face {
    font-family: 'Rubik';
    src: url('../fonts/Rubik-SemiBold.woff2') format('woff2'),
         url('../fonts/Rubik-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Rubik';
    src: url('../fonts/Rubik-Regular.woff2') format('woff2'),
         url('../fonts/Rubik-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Rubik';
    src: url('../fonts/Rubik-Bold.woff2') format('woff2'),
         url('../fonts/Rubik-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Rubik';
    src: url('../fonts/Rubik-Medium.woff2') format('woff2'),
         url('../fonts/Rubik-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

/* HEADER */
.top-line {
    width: 100%;
    height: 7px;
    background: var(--second-clr);
    display: none;
}

/* CHANGED: Added a subtle gradient to top-bar for a more modern look */
.top-bar {
    /* background: var(--first-clr); */ /* OLD */
    background: linear-gradient(90deg, var(--first-clr) 0%, var(--second-clr) 100%); /* CHANGED */
    padding: 10px 0;
}

.top-bar .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.top-contact {
    display: flex;
    gap: 25px;
    justify-content: center;
}

.top-social ul {
    display: flex;
    align-items: center;
}

.top-icon {
    display: flex;
    align-items: center;
    gap: 10px;
}

.top-icon i,
.top-icon a {
    color: #fff;
}

.top-social ul li a {
    font-size: 17px;
    padding: 0 7px;
    color: #fff;
}

.top-social ul li a:hover {
    color: #fff;
}

.bottom-bar {
    background: #fff;
}

a.navbar-brand img {
    width: 235px;
    height: auto;
}

.navbar-expand-lg .navbar-nav .nav-link {
    padding: 18px 22px;
    color: #000;
    font-size: 16px;
    font-weight: 400;
}

.navbar-expand-lg li.nav-item.active .nav-link {
    color: var(--third-clr);
}

.clk_btn {
    position: absolute;
    top: 18px;
    right: 2px;
    z-index: 99;
    cursor: pointer;
    color: var(--third-clr);
}

li.nav-item {
    position: relative;
}

ul.dropdown-menu {
    position: absolute;
    min-width: 300px;
    border: none;
    background: linear-gradient(135deg, var(--second-clr) 0%, var(--first-clr) 100%);
    padding: 10px;
}

.navbar-expand-lg .navbar-nav ul.dropdown-menu li a.nav-link {
    color: #fff;
    width: 100%;
    display: block;
    padding: 0;
}

ul.dropdown-menu li {
    padding: 8px 10px;
    position: relative;
    margin-bottom: 5px;
    border-bottom: 1px solid #eee;
}

ul.dropdown-menu li:hover {
    background: #fff;
    border-radius: 4px;
}

.navbar-expand-lg .navbar-nav ul.dropdown-menu li:hover a.nav-link {
    color: #000;
    transform: translateX(15px);
}

ul.navbar-nav li.nav-item:hover ul.dropdown-menu {
    display: block;
}

/* CHANGED: Slightly bigger padding & improved hover effect on nav button */
.nav-btn a {
    background: var(--fifth-clr);
    padding: 10px 28px; /* CHANGED */
    border-radius: 30px;
    color: #000;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    transition: all 0.4s ease;
    z-index: 9;
    display: inline-block;
}

/* Fixing syntax: removed extra '4);' */
.nav-btn a:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    background: var(--second-clr);
    border-radius: 50%;
    z-index: -1;
    transition: width 0.6s ease, height 0.6s ease;
}

.nav-btn a:hover {
    background: var(--second-clr);
    color: #fff; /* CHANGED: text turns white on hover */
}

.nav-btn a:hover:after {
    width: 200px;
    height: 200px;
}

.top-social {
    position: relative;
}

.top-social:before {
    position: absolute;
    content: "";
    width: 2px;
    height: 100%;
    background: #fff;
    left: -15px;
    opacity: 0.5;
}

ul.dropdown-menu li:before {
    position: absolute;
    content: ">>";
    font-size: 15px;
    color: var(--first-clr);
    opacity: 0;
    transform: translateX(-15px);
    transition: 0.4s ease;
    left: 4px;
}

ul.dropdown-menu li:hover:before {
    transform: translateX(0);
    opacity: 1;
}

.web-forms input,
.web-forms textarea {
    width: 100%;
    border: none;
    padding: 6px 10px;
    border-radius: 30px;
    background: #f3f3f3;
}

.web-forms label {
    font-size: 14px;
    margin-bottom: 7px;
}

.web-forms textarea {
    height: 110px;
}

.web-forms input[type="submit"] {
    background: var(--first-clr);
    color: #fff;
    padding: 10px 10px;
}

.modal-header .btn-close {
    background: var(--first-clr);
    opacity: 1;
    color: #fff;
    line-height: 0;
}

.sticky {
    width: 100%;
    top: 0;
    left: 0;
    z-index: 99;
    animation: slidetop 1s ease-in-out backwards;
    box-shadow: rgba(0, 0, 0, 0.24) 0 3px 8px;
    background: #fff;
}

.sticky .top-bar {
    display: none;
}

@keyframes slidetop {
    from {
        transform: translateY(-100%);
    }
    to {
        transform: translateY(0);
    }
}

/* BANNER */
/* CHANGED: Added gradient background for a more vibrant hero section */
.banner-sec {
    background: linear-gradient(135deg, var(--second-clr) 0%, var(--first-clr) 100%);
    position: relative;
}

.banner-sec::before {
    position: absolute;
    content: "";
    background: url(../imgs/banner-pattern.png);
    width: 100%;
    height: 100%;
    background-size: contain;
    background-repeat: no-repeat;
}

.slide {
    position: relative;
}

.slide__img img {
    width: 100%;
    height: 100%;
    object-fit: fill;
    opacity: 1 !important;
    transition: transform 0.3s ease; /* CHANGED: subtle transform on hover */
}

.slide__img img:hover {
    /* transform: scale(1.03); */ /* CHANGED: slight zoom on hover */
}

.slide__content {
    padding: 110px 0;
    padding-left: 55px;
    width: 90%;
}

.slide__content--headings h2 {
    font-size: 43px;
    margin: 10px 0 20px;
    color: #fff;
    text-transform: capitalize;
}

.slide__content--headings p {
    color: #ffffff;
    margin-bottom: 20px;
    position: relative;
    padding-left: 20px;
}

.slide__content--headings .animated {
    transition: all 0.5s ease;
}

.slider [data-animation-in] {
    transition: opacity 0.5s ease 0.3s;
}

.slide__content--headings h5 {
    color: #fff;
    font-weight: normal;
    font-size: 15px;
    position: relative;
    padding-left: 45px;
}

.slide__content .nav-btn a:hover {
    background: #fff;
    color: var(--first-clr);
}

.slide__content--headings h5:before {
    position: absolute;
    content: "";
    width: 35px;
    height: 2px;
    background: #fff;
    left: 0;
    top: 7px;
}

.slide__content--headings p:before {
    position: absolute;
    content: "";
    width: 2px;
    height: 100%;
    background: #fff;
    left: 0;
    top: 2px;
}

.slide__img {
    position: absolute;
    width: 54%;
    top: 0;
    height: 100%;
    right: 0;
}

/* COUNTER */
.counter-box {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #000000;
    width: 90%;
}

.counter-box h4 {
    font-size: 50px;
    font-weight: 500;
    color: var(--third-clr);
}

.counter-box p {
    font-size: 18px;
    margin: 0;
    color: var(--first-clr);
}

/* IMG HOVER */
.about-img {
    width: 90%;
    height: auto;
    overflow: hidden;
    border-radius: 20px;
}

.img-hover {
    position: relative;
    overflow: hidden;
    z-index: 9;
    transition: transform 0.4s ease; /* CHANGED */
}

.img-hover:hover {
    transform: scale(1.02); /* CHANGED: slight zoom on entire container */
}

.img-hover:before,
.img-hover:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 0;
    background: #fff;
    opacity: 0.2;
    transition: all 0.5s ease;
    z-index: 9;
}

.img-hover:before {
    top: 0;
}

.img-hover:after {
    bottom: 0;
    left: 0;
}

.img-hover:hover img {
    transform: scale(1.1);
}

.img-hover:hover:before {
    height: 50%;
}

.img-hover:hover:after {
    height: 50%;
}

/* ABOUT */
h2.title {
    font-size: 38px;
    color: var(--first-clr);
}

.about-text ul li {
    display: inline-block;
    width: 48%;
    margin-bottom: 15px;
    font-size: 18px;
    position: relative;
    padding-left: 20px;
    opacity: 0.8;
}

.about-text ul li:before {
    position: absolute;
    content: ">";
    font-size: 17px;
    font-weight: bold;
    left: 0;
}

/* PARTNER */
.partner-text {
    position: relative;
    background: #ececec;
    padding: 40px 30px;
}

.partner-text:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    background: #ececec;
    z-index: -1;
    top: 0;
    left: -75px;
}

.partner-img {
    width: 33%;
    text-align: center;
    margin: 30px;
}

.partner-img img {
    margin: auto;
}

/* SERVICES */
.service-sec {
    background: linear-gradient(135deg, var(--second-clr) 0%, var(--first-clr) 100%);
}

.service-box {
    background: #ffffff;
    padding: 30px;
    border-radius: 5px;
    position: relative;
    transition: 0.4s ease;
    overflow: hidden;
    z-index: 9;
    margin-bottom: 20px;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.service-box:before {
    position: absolute;
    content: "";
    background: url(../imgs/s-pattern.png);
    background-size: cover;
    width: 57%;
    height: 100%;
    right: 0;
    background-repeat: no-repeat;
    top: 0;
    filter: brightness(0);
}

.ser-icon {
    width: 75px;
    height: 75px;
    background: var(--first-clr);
    display: grid;
    place-content: center;
    border-radius: 50%;
    margin-bottom: 15px;
    padding: 15px;
}

.ser-txt h4 {
    font-size: 19px;
    margin: 10px 0;
    transition: 0.4s ease;
}

.ser-txt p {
    transition: 0.4s ease;
}

a.read-more {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--first-clr);
    border-bottom: 1px solid var(--first-clr);
    width: max-content;
}

a.read-more i {
    transform: rotate(-45deg);
}

.service-box:after {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    background: var(--fifth-clr);
    top: 0;
    right: 0;
    transition: 0.5s ease;
}

.service-box:hover {
    box-shadow: 0 8px 16px rgba(0,0,0,0.15); /* CHANGED: more pronounced shadow on hover */
}

.service-box:hover:after {
    width: 100%;
    z-index: -1;
}

.service-box:hover:before {
    /* filter: brightness(100); */
}

.service-box:hover .ser-icon {
    background: var(--first-clr);
}

.service-box:hover .ser-icon img {
    /* filter: none; */
}

/* PROCESS */
.work-img {
    width: 85%;
    margin: auto;
    border-radius: 20px;
}

.work-flex {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
    position: relative;
}

.work-num {
    font-size: 60px;
    font-weight: 500;
    color: var(--fifth-clr);
    text-shadow: 0px 4px 8.28px rgb(3 52 105);
}

.work-txt {
    width: 80%;
}

.work-process-sec h2.title {
    /* color: var(--fifth-clr); */
}

.work-txt h4 {
    font-size: 20px;
    color: var(--first-clr);
}

.work-flex:nth-child(2) {
    flex-direction: row-reverse;
}

.work-flex:nth-child(2) .work-txt {
    text-align: right;
}

.work-flex:before {
    position: absolute;
    content: "";
    width: 70px;
    height: 70px;
    background: url(../imgs/arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    right: 0;
    top: 80px;
    filter: brightness(0);
}

.work-flex:nth-child(2):before {
    left: 0;
    right: inherit;
    transform: scaleX(-1);
}

.work-flex:last-child:before {
    display: none;
}

.work-flex:last-child {
    margin: 0;
}

/* NEWSLETTER */
.newletter-sec {
    background: url(../imgs/bg-1.jpg);
    background-size: contain;
    width: 100%;
    background-repeat: no-repeat;
}

.news-form {
    background: #ffffff;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    border-radius: 25px;
    overflow: hidden;
}

.news-form h4,
.news-form label {
    /* color: #fff; */
}

.form-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* TESTIMONIAL */
.testimonial-sec {
    background: #e8e8e8;
    position: relative;
    z-index: 9;
}

.testimonial-sec:before {
    position: absolute;
    content: "";
    background: url(../imgs/test-pattern.png);
    width: 100%;
    height: 100%;
    z-index: -1;
}

.testimonial-box {
    padding: 25px;
    background: linear-gradient(135deg, var(--second-clr) 0%, var(--first-clr) 100%);
    color: #fff;
    border-radius: 10px;
    transition: 0.4s ease;
    width: 98%;
}

.test-icon img {
    margin: 20px 0;
    filter: invert(1);
}

.testimonial-box p {
    font-style: italic;
    opacity: 0.8;
    color: #fff;
}

.test-info {
    display: flex;
    align-items: center;
    margin-top: 20px;
}

.t-img img {
    width: 60px;
    height: 60px;
    object-fit: cover;
    border-radius: 100%;
    border: 1px solid #000;
    margin-right: 15px;
}

.test-info h5 {
    font-size: 18px;
    margin: 0;
    color: #fff;
}

.testimonial-box:hover,
.slick-center .testimonial-box {
    background: var(--fifth-clr);
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.slick-center .testimonial-box p,
.testimonial-box:hover p {
    color: #000;
}

.slick-center .test-icon img,
.testimonial-box:hover .test-icon img {
    filter: invert(0);
}

.slick-center .test-info h5,
.testimonial-box:hover h5 {
    color: var(--first-clr);
}

.slick-center .test-info span,
.testimonial-box:hover span {
    color: #000;
}

/* BLOG */
.blog-img img {
    width: 100%;
    height: 300px;
    object-fit: cover;
}

.blog-img {
    width: 100%;
    overflow: hidden;
    border-radius: 10px;
    position: relative;
    z-index: 9;
}

.date {
    background: var(--fifth-clr);
    display: grid;
    place-content: center;
    width: max-content;
    padding: 10px 20px;
    position: absolute;
    bottom: 0;
    z-index: 99;
    font-size: 17px;
    font-weight: 500;
    text-align: center;
    color: #000;
}

.blog-text h2 {
    font-size: 28px;
    margin: 20px 0 10px;
    color: var(--first-clr);
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2; /* number of lines to show */
    line-clamp: 2;
    -webkit-box-orient: vertical;
}

.blog-text a.read-more {
    /* color: #000; */
}

.blog-box.side-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #eee;
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.blog-box.side-box .blog-img {
    width: 30%;
}

.blog-box.side-box .blog-img img {
    height: 125px;
}

.blog-box.side-box .blog-text {
    width: 67%;
}

.blog-box.side-box .blog-text h2 {
    font-size: 20px;
    font-weight: 400;
    margin: 10px 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
}

.date-2 {
    color: var(--first-clr);
    font-weight: 500;
}

.blog-box.latest-box {
    width: 95%;
}

.blog-detail-box ul li,
.blog-detail-box ol li {
    margin-bottom: 10px;
    list-style: inside circle;
}

b,
strong {
    font-weight: 600;
}

.blog-detail-box p b,
.blog-detail-box p strong,
.blog-detail-box li b,
.blog-detail-box li strong {
    font-weight: 500;
}

/* FOOTER */
.footer {
    background: linear-gradient(135deg, var(--second-clr) 0%, var(--first-clr) 100%);
    padding: 60px 0 20px;
	position:relative;
	z-index:9;
}

.footer-img img {
    /*background: #fff;*/
    width: 220px;
    height: auto;
    /*padding: 6px;*/
}

h4.f-title {
    color: #fff;
    font-size: 24px;
    margin: 0 0 15px;
    padding: 0 0 15px;
    position: relative;
}

h4.f-title:before {
    position: absolute;
    content: "";
    width: 55px;
    height: 2px;
    background: var(--fifth-clr);
    bottom: 0;
}

.footer-links ul li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 8px;
}

.footer-links ul li a,
.footer p {
    color: #fff;
    font-size: 15px;
}

.footer-links ul li:before {
    position: absolute;
    content: ">";
    font-size: 18px;
    left: 0;
    color: var(--fifth-clr);
    font-weight: bold;
}

ul.footer-box li {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
}

ul.footer-box li i {
    width: 35px;
    height: 35px;
    background: var(--fifth-clr);
    border-radius: 50%;
    color: #000000;
    font-size: 14px;
    display: grid;
    place-content: center;
    margin-right: 10px;
}

ul.footer-box li a {
    width: 75%;
    color: #fff;
}

.social-icons ul {
    display: flex;
}

.social-icons ul li a {
    width: 35px;
    height: 35px;
    background: var(--fifth-clr);
    border-radius: 50%;
    margin: 0 7px 0 0;
    color: #000000;
    font-size: 14px;
    transition: 0.4s ease;
    display: grid;
    place-content: center;
}

.social-icons ul li a:hover {
    background: var(--second-clr);
    color: #fff;
}

.footer-padding {
/*     padding-left: 50px; */
}

.copyrights {
    padding: 20px 0 0;
    margin: 20px 0 0;
    text-align: center;
    border-top: 1px solid #eee;
    color: #fff; /* CHANGED: ensure footer text is visible */
}

.copyrights a {
    text-align: center;
    color: #fff;
}

.footer-padding {
/*     padding-left: 50px; */
}


.social-icons ul li a {
    width: 35px;
    height: 35px;
    background: var(--fifth-clr);
    border-radius: 50%;
    margin: 0 7px 0 0;
    color: #000000;
    font-size: 14px;
    transition: .4s ease;
    display: grid;
    place-content: center;
}

.social-icons ul {
    display: flex
}

.social-icons ul li a:hover {
    background: var(--second-clr);
    color: #fff;
}
.social-icons ul li a:hover {
    background: var(--second-clr);
    color: #fff;
}
/* ======Inner pages ========== */

.inner-banner {
    padding: 110px 0;
    position: relative;
    background: linear-gradient(135deg, var(--second-clr) 0%, var(--first-clr) 100%);
    overflow: hidden;
}

.inner-text {
    width: 90%;
}

.inner-text h2 {
    color: #fff;
    font-size: 50px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1; /* number of lines to show */
    line-clamp: 2;
    -webkit-box-orient: vertical;
}

.inner-text ul {
    display: flex;
    align-items: center;
}

.inner-text ul li a {
    color: #fff;
}

.inner-text ul li span {
    color: #ddd;
    margin: 0 5px;
}

.animation-box>div {
    width: 60px;
    height: 60px;
    margin: 10px;
    background: #fff;
    opacity: .2;
    position: absolute;
}
div#clipPath {
    right: 30px;
    opacity: .3;
}

div#currentTime {
    top: 10px;
}

div#composite {
    top: 20px;
    left: 50%;
    opacity: .1;
}

div#changeKeyframes {
    bottom: -29px;
    right: 160px;
    opacity: .4;
}

div#double {
    left: 0;
    bottom: -31px;
}

.about-pg-img {
    position: relative;

}

.img-1 {
    position: relative;
    border-radius: 25px;
    width: 95%;
}

.img-1 img {
    width: 100%;
    height: 600px;
    object-fit: cover;
    border-radius: 25px;
}

.img-2 img {
    width: 250px;
    height: 200px;
    position: absolute;
    bottom: 0;
    right: 0;
    border-top: 15px solid #fff;
    border-left: 15px solid #fff;
    border-radius: 0;
    border-bottom-right-radius: 25px;
}

.about-btn a {
    display: flex;
    align-items: center;
    gap: 10px;
    border-radius: 30px;
    border: 2px solid var(--first-clr);
    font-size: 17px;
    padding: 16px 9px;
    width: max-content;
    background: linear-gradient(135deg, var(--second-clr) 0%, var(--first-clr) 100%);
    color: #fff;
}

.about-btn a i {
    font-size: 32px;
}

.about-btn {
    position: absolute;
    top: 0;
    padding: clamp(1rem, 0.9135rem + 0.3846vw, 1.375rem);
    background: #fff;
    writing-mode: vertical-lr;
    margin-bottom: 2em !important;
    z-index: 9;
}

.about-btn a:hover {
    background: transparent;
    color: var(--first-clr);
}

.feature-box {
    padding: 35px;
    border: 1px solid Var(--third-clr);
    border-radius: 25px;
    width: 95%;
    margin: 0 auto 50px;
    transition: .4s ease;
}

.f-icon img {
    width: 100px;
    height: 90px;
    object-fit: contain;
    margin-bottom: 20px;
}

.feature-box:hover {
    background: var(--second-clr);
    transform: translateY(20px);
        border-color: var(--second-clr);
}

.feature-box:hover img , .col-lg-4:nth-child(2) .feature-box img {
    filter: invert(1);
}

.col-lg-4:nth-child(2) .feature-box {
      background: linear-gradient(135deg, var(--second-clr) 0%, var(--first-clr) 100%);
      transform: translateY(20px);
      border-color: var(--second-clr);
}

.col-lg-4:nth-child(2) .feature-box h4 ,.col-lg-4:nth-child(2) .feature-box p ,.feature-box:hover h4 , .feature-box:hover p {
    color: #fff;
}

.cl-arrow a {
    display: flex;
    align-items: center;
    gap: 5px;
    border-bottom: 1px solid #000;
    width: max-content;
    /* color: white; */
}

.cl-arrow a i {
    transform: rotate(-45deg);
}

.cl-arrow a:hover {
    color: var(--second-clr);
    border-color: var(--second-clr);
}

/* main{
    background-color: #ffffff;
    background-image: url(../imgs/bg-path.png);
    background-position: center center;
    background-size: auto;
    background-repeat: repeat;
    background-attachment: scroll;
}
 */

.faq-flex {
    display: flex;
    align-items: center;
    gap: 29px;
    margin-top: 30px;
}

.faq-flex img {
    width: 175px;
}

.faq-txt {
    position: sticky;
    top: 0;
    width: 92%;
}

.default-accordion-box {
    position: relative;
    /* border-left: 1px solid #cdcdcd; */
}

.default-accordion-box .block {
    position: relative;
    /* margin: 0 0 15px 0; */
}

.default-accordion-box .block:last-child {
    margin-bottom: 0;
}

.default-accordion-box .block .acc-btn {
    position: relative;
    font-size: 18px;
    line-height: normal;
    color: #000;
    cursor: pointer;
    padding: 25px 15px;
    /* background-color: #fff; */
    padding-left: 100px;
    letter-spacing: 1px;
    text-transform: capitalize;
    -webkit-transition: all 500ms ease;
    -moz-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
    transition: all 500ms ease;
    border-bottom: 1px solid #cdcdcd;
}

.default-accordion-box .block .acc-btn:before {
    position: absolute;
    left: 40px;
    top: 30px;
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    line-height: 22px;
    content: "\f067";
    font-family: "Font Awesome 5 Free";
    -webkit-transition: all 500ms ease;
    -moz-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
    transition: all 500ms ease;
    width: 30px;
    height: 30px;
    background: var(--first-clr);
    display: grid;
    place-content: center;
    border-radius: 100%;
}

.default-accordion-box .block .acc-btn.active {
    position: relative;
    background-color: var(--second-clr);
    color: #fff
}

.default-accordion-box .block .acc-btn.active:before {
    content: "\f068";
    color: #000;
    background: #fff;
}

.default-accordion-box .block .acc-content {
    position: relative;
    display: none
}

.default-accordion-box .block .content {
    position: relative;
    padding: 35px 40px 25px;
    background: #fff
}

.default-accordion-box .block .acc-content.current {
    display: block
}

.default-accordion-box .block:last-child .acc-btn {
    border: none;
}

.about-partner {
    background: var(--third-clr);
}

.about-partner img {
    filter: invert(1);
}

.service-pg .service-box:hover {
    box-shadow: rgb(25 24 24 / 32%) 0px 2px 8px 0px;
}

.blog-de-img {
    border-radius: 25px;
    position: relative;
    margin: 25px 0;
}

.blog-info {
    display: flex;
    align-items: center;
    gap: 30px;
    position: absolute;
    left: 40px;
    bottom: 0;
    z-index: 9;
}

.bl-date, .bl-author {
    display: flex;
    align-items: center;
    gap: 5px;
    background: #fff;
    padding: 8px 15px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.blog-detail-box h3 , .blog-detail-box h4 {
    /* font-size: 26px; */
    color: #666;
}

.blog-de-img img {
    width: 100%;
    height: 400px;
    object-fit: cover;
}

.navigation-blog ul {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.navigation-blog ul li a , .navigation-blog ul li span {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 19px;
    font-weight: 500;
}

.navigation-blog ul li a:hover {
    color: var(--second-clr);
    opacity: .5;
}

.related-blogs ul li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #ddd;
    padding-bottom: 15px;
    margin-bottom: 15px;
}

.rl-img {
    width: 30%;
}

.rl-text {
    width: 65%;
}

.rl-text h2 {
    font-size: 17px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2; /* number of lines to show */
    line-clamp: 2;
    -webkit-box-orient: vertical;
    font-weight: 400;
}

.rl-img img {
    width: 100%;
    height: 80px;
    object-fit: cover;
    border-radius: 10px;
}

.related-blogs {
    background: #f6f6f6;
    padding: 25px;
    border-radius: 25px;
}

.blog-detail-box {
    width: 97%;
}

.side-contact {
    background: var(--second-clr);
    padding: 40px 25px;
    border-radius: 25px;
    text-align: center;
}

.side-contact img {
    width: 120px;
    margin-bottom: 20px;
    filter: invert(1);
}

.side-contact h5 {
    color: #fff;
}

.side-contact .nav-btn a:hover {
    background: #fff;!;!i;!;
    color: var(--first-clr);
}



.service-sidebar {
    width: 100%;
    position: sticky;
    position: -webkit-sticky;
    top: 100px;
}

.service-list {
    width: 100%;
    background: #f6f6f6;
    padding: 25px;
    border-radius: 25px;
}


.service-list ul {
    padding: 0;
    margin: 10px 0 0 0;
}

.service-list ul li {
    margin: 0 0 20px 0;
    background-color: #ffffff;
    position: relative;
    border-left: 4px solid var(--second-clr);
    display: flex;
    gap: 10px;
    align-items: center;
    box-shadow: rgb(161 161 161 / 23%) 0px 2px 8px 0px;
    border-radius: 0 8px;
    overflow: hidden;
    padding: 15px 10px;
}

.service-list li a {
    display: block;
    transition: all 0.5s;
    cursor: pointer;
    position: relative;
    z-index: 9;
    width: 100%;
    font-size: 17px;
}

.service-list ul li img {
    width: 30px;
    margin-left: 10px;
	filter: invert(1);
}

.service-list ul li:hover img {
    filter: brightness(100);
}

.service-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 0;
    height: 100%;
    background-color: var(--first-clr);
    transition: all 0.5s;
    color: #000;
}

.service-list ul li a:hover {
    color: var(--tertiary-color);
}

.service-list ul li:hover {
    /* border-left: 4px solid #000; */
}

.service-list ul li:hover::before {
    width: 100%;
}

.service-list ul li:hover a {
    color: #fff;
}

.web-forms.service-form {
    padding: 25px;
    background: var(--second-clr);
    border-radius: 25px;
}

.contact-box {
    text-align: center;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    background: linear-gradient(135deg, var(--second-clr) 0%, var(--first-clr) 100%);
    padding:  35px 25px;
    border-radius: 25px;
    min-height: 260px;
    position: relative;
    transition: .4s ease;
}

.map-sec {
    position: relative;
}



.contact-box i {
    width: 75px;
    height: 75px;
    background: var(--fifth-clr);
    margin-bottom: 15px;
    display: grid;
    place-content: center;
    color: #000000;
    font-size: 35px;
    border-radius: 100%;
}

.contact-box span {
    margin: 10px 0;
    color: #fff;
    font-size: 19px;
}

.contact-box a {
    color: #fff;
}

.contact-box:hover {
    background: var(--second-clr);
    transform: translateY(-15px);
}

ul.slick-dots {
    display: flex;
    align-items: center;
    margin-top: 20px;
    justify-content: center;
    gap: 5px;
}

ul.slick-dots li button {
    width: 12px;
    height: 12px;
    font-size: 0;
    border: 2px solid var(--second-clr);
    background: #fff;
    border-radius: 100%;
    /* outline: 2px solid #fff; */
}

ul.slick-dots li.slick-active button {
    background: #fff;
    transform: scale(1.2);
}

span.prev-btn , span.next-btn {
    width: 35px;
    height: 35px;
    display: grid;
    place-content: center;
    background: var(--first-clr);
    border-radius: 100%;
    color: #fff;
    position: absolute;
    cursor: pointer;
}

span.prev-btn {
    top: -100px;
    right: 65px;
}

span.next-btn {
    top: -100px;
    right: 0;
}

.side-contact .nav-btn a:after {
    background: #fff;
}

.modal-body .web-forms {
    padding: 20px;
}

.modal-header h5 {
    font-size: 26px !important;
}

.slide__content .nav-btn a:after {
    background: #fff;
}
.blog-detail-box h1 , .blog-detail-box h2 {
    color: #333;
    font-size: 32px;
}

.blog-detail-box h3, .blog-detail-box h4 {
    color: #666;
    font-size: 24px;
}

section {
    overflow-x: clip;
}

.copyrights p {
    margin: 0;
}

.news-p p {
    color: #ffff;
}

.partner-box {
    display: flex;
    align-items: center;
    padding: 25px 20px;
    border-radius: 10px;
    gap: 20px;
    border: 1px solid #cdcdcd;
    background: #fff;
    margin-bottom: 25px;
    transition: .4s ease;
}

.ptnr-img img {
    width: 90px;
    height: 90px;
    object-fit: contain;
    display: grid;
    place-content: center;
    /* border-radius: 100%; */
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    background: #fff;
}

.pr-arrow a {display: flex;align-items: center;gap: 2px;text-decoration: underline;}

.pr-arrow a i {
    font-size: 13px;
}

.partner-box:hover {
    background: var(--first-clr);
}

.partner-box:hover h5 , .partner-box:hover p , .partner-box:hover a {
    color: #fff;
}

.ptnr-text {
    width: 80%;
}

.partner-de-img img {
    width: 90%;
    height: auto;
    object-fit: contain;
}

.partner-de-img {
    position: sticky;
    top: 90px;
}

.partner-content ul li {
    margin-bottom: 5px;
}

.partner {
    /* background: #f5f5f5; */
}

.before-bg {
    position : relative;
}

.before-bg:before {
    position: absolute;
    content: "";
    background: url(../imgs/banner-pattern.png);
    width: 100%;
    height: 100%;
    background-size: contain;
    background-repeat: repeat;
    top: 0;
	z-index: -1 ;
}




/*RESPONSIVE QUERY______*/


@media only screen and (max-width: 1280px) {

}

@media only screen and (max-width: 1199px) {

}

@media only screen and (max-width: 1140px) {

}

@media only screen and (max-width: 1024px) {

}

@media only screen and (max-width: 991px) {
    
    .navbar-toggler {
    order: 3;
    border: none;
    background: var(--first-clr);
    padding: 5px 7px;
}

.navbar-toggler span {
    filter: brightness(100);
    width: 23px;
    height: 23px;
}

div#navbarSupportedContent {}

.navbar-collapse {
    position: absolute;
    top: 80px;
    left: 0;
    z-index: 99;
    background: #fff;
    width: 100%;
}

.clk_btn {
    right: 5px;
    top: 0;
    background: var(--second-clr);
    color: #fff;
    width: 25px;
    height: 26px;
    display: grid;
    place-content: center;
}

.navbar-expand-lg .navbar-nav .nav-link {
    padding: 8px 10px;
}

button:focus:not(:focus-visible) {
    box-shadow: none;
}

.container, .container-md, .container-sm {
    max-width: 720px;
}

.top-social {
    display: none;
}

.top-bar .container {
    justify-content: end;
}

.slide__img {
    display: none;
}

.slide__content {
    padding: 100px 0;
    max-width: 720px;
    margin: auto;
}

h2.title {
    font-size: 30px;
}

.partner-text:before {
    display: none;
}

.about-img {
    width: 100%;
    margin-bottom: 20px;
}

.newletter-sec {
    background-size: cover;
    padding: 50px 0;
}

.footer-padding {
    padding: 0;
}

.blog-box.latest-box {
    width: 100%;
    margin-bottom: 30px;
}

h4.f-title {
    margin-top: 15px;
}

.img-1 img {
    height: auto;
    object-position: top;
}

.img-2 img {
    height: 150px !important;
    width: 185px;
}

.default-accordion-box .block .acc-btn {padding-left: 75px;}

.feature-box {
    width: 100%;
    margin: 0 auto 30px;
}

.col-lg-4:nth-child(2) .feature-box {
    transform: inherit;
}

.default-accordion-box .block .acc-btn:before {
    left: 15px;
}

.inner-text h2 {
    font-size: 36px;
}

.inner-banner {
    padding: 80px 0;
}

.contact-box {
    min-height: auto;
    margin-bottom: 20px;
    padding: 30px;
}

.contact-box i {
    width: 60px;
    height: 60px;
    font-size: 25px;
}

.inner-text {width: 100%;}

.blog-de-img img {
    height: auto;
}







}


@media only screen and (max-width: 980px) {

}

@media only screen and (max-width: 840px) {

}


@media only screen and (max-width: 800px) {

}


@media only screen and (max-width: 768px) {

}

@media only screen and (max-width: 767px) {
    
    .container, .container-sm {
        max-width: 540px;
    }
    
    a.navbar-brand img {
    width: 190px;
}

a {
    font-size: 14px;
}

.slide__content--headings h2 {
    font-size: 34px;
}

.counter {
    display: flex;
    justify-content: space-between;
}

.counter-box {
    width: 32%;
    text-align: center;
}

.counter-box h4 {
    font-size: 32px;
}

h4.counter-value.animated {}

.counter-box p {
    font-size: 15px;
}

.about-img img {
    width: 100%;
    height: 300px;
    object-fit: cover;
}

h2.title {
    font-size: 24px;
}

.w-75 {
    width: 100% !important;
}

.work-num {
    font-size: 50px;
}

.mt-5 {
    margin-top: 1.5rem !important;
}

.blog-box.side-box .blog-text h2 {
    font-size: 18px;
}

.blog-box.side-box .blog-img img {
    height: 100px;
}

.padd {
    padding: 40px 0;
}

.footer {
    padding: 40px 0 20px;
}

.footer-img img {
    width: 200px;
}

.social-icons ul li a , ul.footer-box li i {
    width: 30px;
    height: 30px;
}

    
    
    
    

}

@media only screen and (max-width: 667px) {

}

@media only screen and (max-width: 600px) {

}

@media only screen and (max-width: 575px) {
    
    .slide__content {
    padding: 60px 0;
    max-width: 100%;
}

.slide__content--headings h2 {
    font-size: 30px;
}

.work-txt h4 {
    font-size: 18px;
}

.work-flex:before {
    width: 55px;
    height: 55px;
    top: 85px;
}

.col-lg-6.p-5.pb-0 {
    padding: 2rem !important;
}

.testimonial-box {
    width: 100%;
}

.blog-img img {
    height: auto;
}

.blog-text h2 {
    font-size: 20px;
}

h4.f-title {
    font-size: 20px;
}

.navbar-collapse {
    top: 75px;
}

.clk_btn i {
}

.ser-icon {
    width: 60px;
    height: 60px;
    padding: 12px;
}

.default-accordion-box .block .acc-btn {
    font-size: 16px;
    padding: 25px 15px;
    padding-left: 70px;
}

.f-icon img {
    width: 60px;
    height: auto;
    margin-bottom: 10px;
}

.faq-txt {
    width: 100%;
}

.about-btn a {
    font-size: 15px;
    padding: 10px 2px;
}

.about-btn a i {
    font-size: 28px;
}

.feature-box {
    padding: 20px;
}

.inner-banner {
    padding: 70px 0;
}

.animation-box>div {
    width: 45px;
    height: 45px;
}

.inner-text h2 {
    font-size: 32px;
}

.pb-5 {
    padding-bottom: 1.5rem !important;
}

.blog-detail-box h1, .blog-detail-box h2 {
    color: #333;
    font-size: 24px;
}

.blog-info {
    left: 0;
    gap: 20px;
}

.bl-date, .bl-author {
    padding: 6px 10px;
    font-size: 14px;
}

.blog-detail-box {
    width: 100%;
}

.web-forms.service-form , .service-list {
    padding: 20px;
}

.blog-detail-box h3, .blog-detail-box h4 {
    color: #666;
    font-size: 20px;
}

.map iframe {
    width: 100%;
    height: 200px;
}








}

@media only screen and (max-width: 480px) {
    
    .slide__content--headings p {overflow: hidden;display: -webkit-box;-webkit-line-clamp: 2; /* number of lines to show */line-clamp: 2;-webkit-box-orient: vertical;}

.slide__content--headings h2 {
    font-size: 24px;
}

.counter-box h4 {
    font-size: 26px;
}

span.wpcf7-spinner {
    display: none;
}

.footer-img img {
    width: 170px;
}



}

@media only screen and (max-width: 400px) {
    
    .top-icon a.a-1 {
    display: none;
}

.top-contact {
    gap: 15px;
}

a.navbar-brand img {
    width: 150px;
}

.nav-btn a {
    padding: 6px 20px;
}

h2.title {
    font-size: 22px;
}

.work-num {
    font-size: 40px;
}

.work-txt {
    width: 85%;
}

.test-icon img {
    margin: 10px 0;
    width: 30px;
}

.navbar-collapse {
    top: 60px;
}




    
    
    




}

@media only screen and (max-width: 345px) {
    
    .bottom-bar .nav-btn a {
    position: fixed;
    width: max-content;
    right: -37px;
    top: 182px;
    transform: rotate(-90deg);
}

.counter-box {
    width: 100%;
}

.counter {
    flex-wrap: wrap;
}

.about-img img {
    height: 260px;
}

.work-flex , .work-flex:nth-child(2) {
    flex-direction: column;
    margin-bottom: 0;
}

.work-flex:nth-child(2) .work-txt {
    text-align: left;
}

.work-flex:nth-child(2):before {
    left: inherit;
    right: 0;
    transform: none;
    top: 120px;
}



}

@media only screen and (max-width: 360px) {

}


@media only screen and (max-width: 320px) {

}
