/* desktop view - Hover Menu */

/*@media all and (min-width: 992px) {

	.navbar .nav-item .dropdown-menu{ display: none; }

	.navbar .nav-item:hover .nav-link{   }

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

	.navbar .nav-item .dropdown-menu{ margin-top:0; }

}



/* Banner */
.no-border-benefits {
	border: none !important;
	box-shadow: none !important;

}

.no-border-benefits {
    position: relative;
}





#banner-section-home .carousel-inner {
    max-height: 550px;

    height: 100%;

    /*background-color: rgba(255, 0, 0, 0.1);*/
}

#banner-section-home .carousel-inner > .carousel-item {
    min-height: 550px;

    /*background-color: #777;*/
}

/*
.inner .fs-heading {
  font-size: 2.5rem;
}
*/
.banner-overlay {
    background-color: #082a46;

    position: absolute;

    top: 0;

    right: 0;

    bottom: 0;

    left: 0;

    opacity: 0;
}

.banner-badge {
    position: absolute;

    top: 24px;

    right: 8px;

    text-align: right;
}

.banner-content.fs-heading {
    font-size: 2.5rem !important;
}

.banner-content-group > * {
    transition: all ease 1s;

    will-change: transform, opacity;

    opacity: 0;

    transform: translateX(-100%);
}

.carousel-item.active .banner-content {
    transform: translateX(0);

    opacity: 1;
}

.carousel-item.active .banner-content-group > .btn {
    transform: translateX(0);

    opacity: 1;

    transition-delay: 0.8s;
}

.banner-content {
    color: #ffffff;

    line-height: 1.2;

    font-weight: 900;
}

#banner-section-home .carousel-indicators > button {
    width: 16px;

    height: 16px;

    background-color: #fff;

    border-radius: 50%;

    opacity: 1;

    margin-right: 10px;
}

#banner-section-home .carousel-indicators > button.active {
    background-color: var(--bs-primary);
}

#banner-section .fs-banner-heading {
    font-size: 3.2rem;
}

#banner-1 {
    background: #082a46 url('../images/home-banner-slide/banner1.jpg') no-repeat center center / cover;
}

#banner-2 {
    background: #082a46 url('../images/home-banner-slide/banner2.jpg') no-repeat center center / cover;
}

#banner-3 {
    background: #082a46 url('../images/home-banner-slide/banner3.jpg') no-repeat center center / cover;
}

#banner-4 {
    background: #082a46 url('../images/home-banner-slide/banner4.jpg') no-repeat center center / cover;
}

#banner-section-home .carousel-indicators > button {
    background-color: #ffffff;
}

#banner-section-home .carousel-item .banner-content {
    /* animation-delay: 1s; */
}

#banner-section-home .carousel-item .btn-primary {
    /* animation-delay: 2s; */
}

#banner-section-home .carousel-item .banner-badge {
    /* animation-delay: 3s; */
}

/* Client icons */

.client-logos {
    list-style: none;

    padding: 0;

    display: grid;

    align-items: center;

    grid-template-columns: repeat(auto-fit, minmax(110px, 2fr));

    grid-column-gap: 5%;
    margin-top: 25px;
}

.client-logos li {
    width: 100%;
    
    overflow: hidden;

    margin-bottom: 0px;
}

.client-logos li img {
    height: 100%;
    width: 100%;
}

/* Specialize */

#specialize .card {
    border: 0;
}

#specialize .specialize-card {
    background-color: #ffffff;

    color: #3c3c3c;

    border-radius: 6px;

    box-shadow: 0px 3px 6px #00000029;

    padding: 25px;

    max-width: 320px;

    margin: 0 auto;

    line-height: 1.2;

    font-size: 0.9375rem;
}

#specialize .specialize-card > .card-body {
    padding: 25px 0;

    font-size: 1rem;

    padding-bottom: 0.5rem;
}

#specialize .specialize-card .img-thumb {
    overflow: hidden;

    min-height: 200px;
}

#specialize .specialize-card .img-thumb img {
    height: 200px;

    transition: transform 0.5s;

    max-width: 100%;
}

#specialize .specialize-card .img-thumb img:hover,
#specialize .specialize-card .img-thumb img:focus {
    transform: scale(1.2);

    transition: all 0.5s;
}

.grid-body {
    padding: 20px;
}

.grid-body h4 {
    text-transform: uppercase;
    font-size: 24px;
}

.grid-body .borBott {
    border-top: 1px solid #ddd;
    padding: 10px 0 0 0;
}

.grid-body .borBott span {
    border-left: 1px solid #ddd;
    padding-left: 20px;
}

/* Expertise */

#expertise {
    background: #f7fcff url('../images/home-bg-img-expertise.svg') 0% 0% / cover no-repeat padding-box;
}

.expertise-card {
    height: 100%;

    text-align: center;

    background-color: #ffffff;

    color: #5d5e62;

    margin: 0 auto;

    line-height: 1.2;
}

/* Stats */

#stats > .container {
    background: #fff url('../images/worldmap.svg') no-repeat center center / 73%;
}

/* Recent Projects */

#recent-project-carousel .carousel-item > .container > .row {
    padding-left: 5rem;

    padding-right: 5rem;
}

.project-details-section {
    margin-right: -3rem;

    z-index: 1;
}

.carousel-control-prev-icon .dropdown-toggle::after {
    display: inline-block;

    margin-left: 0.255em;

    vertical-align: 0.255em;

    content: '';

    border-top: 0.3em solid;

    border-right: 0.3em solid transparent;

    border-bottom: 0;

    border-left: 0.3em solid transparent;
}

.carousel-control-next-icon,
.carousel-control-prev-icon {
    background-color: #fff;

    border: 1px solid #245184;

    border-radius: 50%;

    width: 35px;

    height: 35px;

    background-size: 50%;
}

.project-image {
    margin-left: -3rem;
}

.project-image img {
    max-width: 100%;
    max-height: 500px;
}

.project-details {
    background-color: #245184;

    color: #ddfeff;

    padding: 3rem;
    max-width: 100%;
    height: 450px;
}

.project-name {
    color: #ffffff;

    font-weight: bold;

    font-size: 3rem;

    line-height: 1.2;
}

#recent-projects-carousel {
    display: flex;

    gap: 1rem;
}

#recent-projects-carousel .carousel-control-next,
#recent-projects-carousel .carousel-control-prev {
    position: static;

    width: auto;
}

#recent-projects-carousel .carousel-control-next-icon,
#recent-projects-carousel .carousel-control-prev-icon {
    background-image: url(../images/icon-next.svg);

    background-size: 50% 50%;

    border: 1px solid #dddddd;

    border-radius: 50%;
}

#recent-projects-carousel .carousel-control-prev-icon {
    transform: rotate(-180deg);
}

/*------------------------------------

--------------------------------------

	INNER PAGES STYLES

--------------------------------------

--------------------------------------*/

#banner-section-3d {
    min-height: 550px;

    background: #082a46 url('../images/home-banner-slide/bentley.jpg') no-repeat center center / cover;
}

.bs3dHeading {
    font-size: 100px;
    position: absolute;
    bottom: 0;

}

/* Banner Section */

#banner-section {
    width: 100%;
    color: #c2c7e4;
    background-color: #245184;
    padding-top: 50px;
}

.inner-banner-caption {
    padding: 8px 0;
    /*display: none;*/
}

.nav-breadcrumb {
    position: absolute;

    top: 100%;

    transform: translateY(-50%);

    width: calc(100% - 1.5rem);

    display: flex;

    justify-content: center;

    align-items: center;

    flex-direction: column;

    padding: 1.5rem 1rem;

    color: var(--bs-secondary);

    background-color: #f7f7f7;

    box-shadow: 0px 3px 25px #00000029;

    border-radius: 0.25rem;

    text-align: center;

}

.nav-breadcrumb .selected {
    color: var(--bs-default);
}

.nav-breadcrumb li a {
    border-right: 1px solid #b8b7b7;

    padding-right: 20px;
}

/*------------- About us - Team Page Styles -------------*/

#main-content {
    color: var(--bs-default);
}

/*

#main-content a {

  text-decoration: underline;

}

*/

.leadership-highlights {
    --skew-x: 16deg;

    display: inline-block;

    transform: skewX(calc(-1 * var(--skew-x)));

    padding: 2rem;

    margin-left: 1.5rem;
}

.leadership-highlights::before {
    content: '';

    display: inline-block;

    position: absolute;

    top: 0;

    left: 0;

    bottom: 20%;

    right: 40%;

    z-index: -1;

    background-color: var(--bs-primary);
}

.leadership-highlights > div > span {
    transform: skewX(var(--skew-x));
}

.leadership-highlights .strip {
    width: 350px;
}

.mv-card > div {
    display: flex;

    align-items: center;

    gap: 1rem;

    background-color: #ffffff;

    box-shadow: 0px 3px 6px #00000029;

    padding: 0.75rem 1rem;
}

.mv-card > .hover-content,
.mv-card:hover > .content {
    display: none;
}

.mv-card > .content,
.mv-card:hover > .hover-content {
    display: flex;
}

.mv-card .hover-content {
    font-size: 16px/24px;
}

/*------------- About us - Leadership Page Styles -------------*/

/* Specialize */

#innerSpecialize {
    background: #f7f7f7;
}

#innerSpecialize .specialize-card {
    background-color: #ffffff;

    color: #3c3c3c;

    border-radius: 6px;

    box-shadow: 0px 3px 6px #00000029;

    padding: 25px;

    max-width: 320px;

    margin: 0 auto;

    line-height: 1.2;

    font-size: 0.9375rem;
}

#innerSpecialize .specialize-card > .card-body {
    padding: 25px 0;

    font-size: 1rem;

    padding-bottom: 0.5rem;
}

#innerSpecialize .specialize-card .img-thumb {
    /* overflow: hidden; */

    min-height: 200px;
}

#innerSpecialize .specialize-card .img-thumb img {
    /* transition: transform 0.5s; */

    max-width: 100%;
}

/* #innerSpecialize .specialize-card .img-thumb img:hover,

#innerSpecialize .specialize-card .img-thumb img:focus {

  transform: scale(1.2);

  transition: all 0.5s;

} */

#innerSpecialize .specialize-card .img-thumb {
    position: relative;

    perspective: 1000px;
}

#innerSpecialize .specialize-card .img-thumb > .flipper {
    transition: transform 0.8s;

    transform-style: preserve-3d;
}

#innerSpecialize .specialize-card .img-thumb > .flipper > * {
    -webkit-backface-visibility: hidden;

    backface-visibility: hidden;
}

#innerSpecialize .specialize-card .img-thumb .social-links {
    position: absolute;

    top: 0;

    width: 100%;

    height: 100%;

    display: flex;

    justify-content: space-evenly;

    align-items: center;

    background-color: var(--bs-secondary);

    transform: rotateY(180deg) translateZ(1px);
}

#innerSpecialize .specialize-card .img-thumb:focus > .flipper,
#innerSpecialize .specialize-card .img-thumb:hover > .flipper {
    transform: rotateY(180deg);
}

#profile-modal {
    color: #333333de;

    background-color: #002c37cc;
}

#profile-modal .modal-header {
    padding-bottom: 0;

    border-bottom: none;
}

.profile-modal img {
    height: fit-content;
}

.prev-profile,
.next-profile {
    width: 2rem;

    height: 2rem;

    background-color: transparent;

    border: 1px solid #dddddd;

    border-radius: 50%;

    background-color: #fff;

    background-image: url(../images/icon-next-pro.svg);

    background-repeat: no-repeat;

    background-position: center center;
}

.prev-profile {
    transform: rotate(180deg);
}

/*--------------- Projects Page ---------------*/

#projects-filter {
    /*color: #333333de;*/

    font-size: 1.25rem;
}

#projects-filter select {
    background-color: var(--bs-secondary);

    color: #ffffff;
}

.project-card {
    padding: 1.25rem;

    border-radius: 0.375rem;

    box-shadow: 0px 0px 6px #00000029;
}

.project-card .img-thumb img {
    width: 100%;
    min-height: 450px;
    max-height: 100%;
}

.project-card .project-details {
    display: flex;

    flex-direction: column;

    justify-content: space-between;
}

.project-card .project-name {
    color: #ccd9dc;

    font-size: 1.5rem;

    font-weight: 600;
}

.project-card .project-description {
    color: #ccd9dc;

    font-size: 1.25rem;

    margin-top: 0.75rem;

    overflow: hidden;
}

.truncate {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

#projects-list .project-card {
    height: 100%;
}

.project-card .flipper {
    transition: transform 0.8s;

    transform-style: preserve-3d;
}

.project-card .flipper > * {
    -webkit-backface-visibility: hidden;

    backface-visibility: hidden;
}

.project-card .img-thumb {
    position: relative;
}

.project-card .project-details {
    position: absolute;

    top: 0;

    width: 100%;

    height: 100%;

    padding: 2rem;

    transform: rotateY(180deg);
}

.project-card:hover .flipper {
    transform: rotateY(180deg);
}

#booking-modal,
#thank-you-modal {
    background-color: #002c37cc;
}

#booking-modal .modal-header {
    background-color: #f3f3f3;
}

#booking-modal .nav.nav-tabs {
    transform: translateY(-100%);
    font-weight: 600;
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
}

#booking-modal .nav-tabs .nav-link {
    background-color: var(--bs-secondary);

    padding-left: 2.5rem;

    padding-right: 2.5rem;

    color: #ffffff;
}

#booking-modal .nav-tabs .nav-link.active {
    background-color: #ffffff;

    color: #484845;
}

#booking-modal label {
    color: #333333de;

    font-weight: 600;
}

#booking-modal ::-webkit-input-placeholder,
#booking-modal ::placeholder,
#booking-modal .note,
.note,
#booking-modal input[type='reset'] {
    color: #b5b5b5;
}

#booking-modal .extension {
    color: #4d4d4d;

    font-size: 0.9375em;
}

#thank-you-modal .modal-body {
    color: #103843;

    text-align: center;
}

#thank-you-modal img {
    max-width: 100%;
}

/* Project Details Styles */

.project-card-details {
    padding: 1.25rem;

    border-radius: 0.375rem;

    box-shadow: 0px 0px 6px #00000029;

    background-color: #ffffff;
}

.project-detail-info {
    padding: 20px 0;
}

.project-detail-name {
    color: var(--bs-secondary);

    font-size: 22px;

    font-weight: 600;

    margin-bottom: 10px;
}

.pag-det-pagination {
    padding: 15px 0;

    color: var(--bs-secondary);
}

.pag-det-pagination a {
    text-decoration: none !important;

    font-size: 16px;

    color: var(--bs-secondary);
}

.pagination {
    justify-content: center;
}

.slides {
    position: relative;

    align-items: center;

    justify-content: center;

    position: absolute;

    align-items: center;

    justify-content: center;

    bottom: 20px;

    left: 0;

    right: 0;
}

.arrow {
    border: solid var(--bs-secondary);

    border-width: 0 2px 2px 0;

    display: inline-block;

    padding: 2px;

    position: relative;

    top: -3px;

    color: var(--bs-secondary);
}

.right {
    transform: rotate(-45deg);

    -webkit-transform: rotate(-45deg);
}

.left {
    transform: rotate(135deg);

    -webkit-transform: rotate(135deg);
}

.up {
    transform: rotate(-135deg);

    -webkit-transform: rotate(-135deg);
}

.down {
    transform: rotate(45deg);

    -webkit-transform: rotate(45deg);
}

/* Contact Us Styles */

.ready-to-talk {
    background: url(../images/read-to-talk.jpg) no-repeat center top/cover;

    padding: 100px 0;
}

.ready-to-talk .col-lg-5 {
    padding-left: 40px;
}

.ready-to-talk a {
    text-decoration: none !important;
}

#getin-touch .getin-touch-hea {
    background: #245184;

    padding: 50px 0 90px 0;
}

#getin-touch .getin-touch-hea h2 {
    color: #fff;
}

#getin-touch .getin-touch-form {
    background: #fff;

    box-shadow: 0 0 10px #ccc;

    margin: 20px 0;

    padding: 40px;
}

#pills-tab li {
    border-bottom: 2px solid #c5c5c5;

    text-transform: uppercase;
}

.nav-pills .nav-link {
    padding: 0.5rem 0rem;
    margin: 0 1rem;
}

.nav-pills .nav-item:first-child button.nav-link {
    margin: 0 !important;
}

.nav-pills .nav-item:last-child button.nav-link {
    margin: 0 !important;
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
    border-bottom: 2px solid #fec407;

    background-color: #fff;

    color: #fec407;
}

.nav-pills .nav-link {
    color: #245184;

    text-transform: uppercase;

    font-weight: 600;
}

.tabs-address {
    text-align: left;
}

/* Blog Styles */

#stayuptodate-section {
    background: var(--bs-secondary);

    color: var(--bs-white);
}

#stayuptodate-section .fs-heading {
    color: var(--bs-white) !important;
}

.blog-articles .card {
    border: 0;
}

.blog-articles.blog-card {
    background-color: #ffffff;

    color: #3c3c3c;

    border-radius: 6px;

    box-shadow: 0px 3px 6px #00000029;

    padding: 25px;

    max-width: 320px;

    margin: 0;

    line-height: 1.2;

    font-size: 0.9375rem;
}

.blog-articles .blog-card > .card-body {
    padding: 25px 0;

    font-size: 1rem;

    padding-bottom: 0.5rem;
}

.blog-articles .blog-card .img-thumb {
    overflow: hidden;

    /*min-height: 200px;*/
}

.blog-articles .blog-card .img-thumb img {
    height: auto;

    transition: transform 0.5s;

    width: 100%;
}

.blog-articles .blog-card a {
    text-decoration: none !important;
}

.blog-featured .content {
    background-color: #f7f7f7;
}

.blog-featured .content .col-lg-6 {
    overflow: hidden;
}

.blog-featured .content .rft-cont {
    padding: 40px;
}

.blog-featured .content .lft-img {
    min-height: 365px;
}

.blog-fea-label span,
.blog-fea-label label {
    display: inline-block;

    padding: 3px 10px;

    font-size: 16px;

    margin-bottom: 10px;
}

.blog-detail-info span {
    display: inline-block;

    margin-right: 20px;
}

.blog-detail-info .blog-author a {
    color: var(--bs-secondary);

    text-decoration: none !important;
}

.blog-fea-label span {
    background: var(--bs-primary);
}

.blog-fea-label label {
    background: var(--bs-secondary);

    color: var(--bs-white);
}

.blog-title {}

.blog-text {
    font-size: 16px;
}

.pagination .page-link {
    text-decoration: none !important;
}

.page-item .page-link {
    border-radius: 4px;

    margin-right: 5px;

    padding: 0.375rem 1rem;

    border: 0;

    color: var(--bs-secondary);
}

.page-item.active .page-link {
    background: var(--bs-secondary);

    border-color: var(--bs-secondary);
}

/*.blog-articles .blog-card .img-thumb img:hover,

.blog-articles .blog-card .img-thumb img:focus {

  transform: scale(1.2);

  transition: all 0.5s;

}*/

/* Blog Full Page Styles */

.blog-fullpage-img {
    min-height: 365px;

    overflow: hidden;
}

.blog-fullpage-img .rounded.overflow-hidden {
    max-height: 526px;
}

.blog-fullpage-cont {}

.latestBlog ul {
    padding: 0;

    margin: 0;
}

.latestBlog li {
    font-size: 16px;

    line-height: auto;

    margin-bottom: 25px;

    font-weight: 600;
}

.latestBlog li .lp-thmb {
    max-width: 155px;

    overflow: hidden;
}

.latestBlog li .lp-thmb img {
    min-height: 115px;
}

.latestBlog li a {
    color: var(--bs-primary) !important;

    text-decoration: none !important;
}

.latestBlog li a:hover {
    color: var(--bs-secondary) !important;
}

.wrapper {
    column-count: 2;

    column-gap: 50px;

    padding: 50px;
}

.col-wrapper {
    column-gap: 30px;

    padding: 30px;
}

.col-wrapper.two {
    column-count: 2;
}

/* Career Styles */

.open-position {}

.open-position .job-row .job-title {
    max-width: calc(50% - 20px);

    flex: 1 0 calc(33.333% - 20px);
}

.open-position .job-row .job-city {
    max-width: calc(33.333% - 20px);

    flex: 1 0 calc(50% - 20px);
}

.open-position .job-row .job-city img {
    width: 13px;
}

/* Benefit Styles */

#benefit .card {
    padding: 15px;

    box-shadow: 0 3px 6px #ddd;

    border: 0;
}

#benefit .card .card-body img {
    width: 45px;

    margin-bottom: 20px;
}

#benefit .card .card-title {
    line-height: 21px;

    font-size: 20px;

    margin-bottom: 10px;
}

#benefit .card-text {
    font-size: 18px;

    line-height: normal;
}

#blog-sharing {
    background: #f7faff;
}

#blog-sharing .blog-share-sm a img {
    width: 60px;
}

/* Services Styles */

.services {
    color: var(--bs-white);
}

.services-sec {
    position: relative;

    padding: 70px 0;
}

.services .services-banner {
    position: absolute;

    top: 0;

    right: 0;

    bottom: 0;

    left: 0;
}

.services .services-banner.tab1 {
    background: url(../images/services_bim-banner.jpg) no-repeat center top/cover;
}

.services .ser-listing {
    padding-left: 40px;

    position: relative;
}

.services .ser-listing ul {
    padding: 0;

    margin-top: 20px;

    list-style: none;

    text-transform: uppercase;
}

.services .ser-listing ul li {
    margin-bottom: 10px;

    font-size: 16px;
}

.services-banner-overlay {
    background-color: #000;

    position: absolute;

    top: 0;

    right: 0;

    bottom: 0;

    left: 0;

    opacity: 0.6;
}

.services .nav-link {
    font-size: 16px;
}

.service-2nSec {
    background: url(../images/ser-2nsection.jpg) no-repeat center top/cover;

    padding: 100px 0;

    color: var(--bs-white);

    position: relative;
}

.service-2nSec .col-lg-5 {
    padding-left: 40px;
}

.service-2nSec a {
    text-decoration: none !important;
}

.service-2nSec h3 {
    color: var(--bs-white) !important;
}

.custom-scroll {
    /* max-height: 400px;

  overflow-y: auto;*/
}

/* Service Details Styles */
.benefits-section {
    border-width: 2px;
    border-style: solid;
    border-color: var(--bs-secondary);
    padding: 40px;
}

.benefits-section .benefits h4.mt-5 {
    margin-top: 10px !important;
}

.quote-top {
    height: 40px;
    background: url(https://elogictech.com/assets/frontend/images/quote-top.svg) no-repeat center center/8%;
}

.quote-bottom {
    height: 40px;
    background: url(https://elogictech.com/assets/frontend/images/quote-bottom.svg) no-repeat center center/8%;
}

/*
.benefits {

  border-width: 2px;

  border-style: solid;

  border-color: var(--bs-secondary);

  padding: 40px;

}

.benefits:before,

.benefits:after {

  font-size: 120px;

  position: absolute;

  left: 0;

  right: 0;

  text-align: center;

}

.benefits:before {

  content: open-quote;

  top: -20px;

}

.benefits:after {

  content: close-quote;

  bottom: 40px;

}
*/

/* Events Page */

.event-list-icons .btn {
    height: 2rem;

    width: 2rem;

    border-radius: 0.25rem;

    background-position: center;

    background-size: 1.25rem;

    background-repeat: no-repeat;

    background-color: #f3f3f3;
}

.event-list-icons .btn.selected {
    background-color: var(--bs-secondary);
}

.event-list-icons .grid-icon {
    background-image: url(../images/icon-grid.svg);
}

.event-list-icons .grid-icon.selected {
    background-image: url(../images/icon-grid-selected.svg);
}

.event-list-icons .list-icon {
    background-image: url(../images/icon-list.svg);
}

.event-list-icons .list-icon.selected {
    background-image: url(../images/icon-list-selected.svg);
}

.event-list {
    display: grid;

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

    grid-gap: 2rem;
}

.event {
    position: relative;
}

.event-card.expanded .event:before {
    content: '';

    display: inline-block;

    height: 2rem;

    width: 2rem;

    background: #ffffff;
    border: 7px solid #fff;

    position: absolute;

    bottom: 0px;

    left: 50%;

    transform: translate(-50%, 50%) rotate(45deg);

    z-index: 1;
}

.event-card.expanded .event:after {
    content: '';
    height: 100%;
    width: 100%;
    background: #ffffff;
    border: 5px solid #bfdbe1;
    position: absolute;
    bottom: -6px;
    left: 0;
    transform: ;
    z-index: -1;
}

.event-card .event-image {
    border-radius: 0.25rem;

    object-fit: cover;

    width: 100%;
    height: 350px;
}

.event-card .event-card-content-wrapper {
    padding: 0 1rem;
}

.event-card-content {
    background-color: #ffffff;

    border-radius: 0.25rem;

    margin-top: -3rem;

    transform: translateZ(1px);

    padding: 1.5rem;

    color: #5d5e62;
    min-height: 337px;
}

.event-card .event-name {
    color: #2b2b28;

    font-size: 1.5rem;

    font-weight: 600;

    margin-bottom: 0.5rem;
}

.event-card .event-name:hover {
    color: var(--bs-secondary);

    cursor: pointer;
}

.event-card-content > div {
    font-size: 1rem;
}

.event-card-content > .btn-primary {
    display: block;
}

.event-card .event-tag {
    background-color: var(--bs-primary);

    color: #ffffff;

    border-radius: 1rem;

    padding: 0.25rem 1rem;
}

.event-card .event-date {
    background: url(../images/icon-date.svg) no-repeat left center;

    padding-left: 1.25rem;

    margin-left: 0.5rem;

    white-space: nowrap;

    line-height: 2;
}

.event-card .event-location {
    display: none;

    background: url(../images/icon-location.svg) no-repeat left center;

    padding-left: 0.875rem;

    margin-left: 0.5rem;

    white-space: nowrap;

    line-height: 2;
}

.event-card .event-description {
    margin-top: 1rem;

    font-size: 1.125rem;

    display: -webkit-box;

    -webkit-line-clamp: 5;

    -webkit-box-orient: vertical;

    overflow: hidden;
    min-height: 127px;
}

.event-details-wrapper {
    display: none;
    background-color: #bfdbe1;
    padding: 3rem 0;
    margin-top: 0rem;
}

.event-details-wrapper .website-link {
    color: #2b2b28;

    font-weight: 600;
}

.event-details-wrapper .page-link {
    font-size: 1rem;

    background-color: transparent;
}

.event-details-wrapper .page-link:hover {
    background-color: #e9ecef;
}

.list-view .event-list {
    grid-template-columns: 100%;

    grid-gap: 1rem;
}

.list-view .event-list .event {
    display: flex;

    padding-bottom: 1rem;
}

.list-view .event-list .event-card .event-image {
    width: 30%;
}

.list-view .event-list .event-card .event-card-content-wrapper {
    width: 70%;
}

.list-view .event-list .event-card .event-card-content {
    margin-top: 0;

    padding: 1rem 1.25rem;
}

.list-view .event-card .event-date {
    background: url(../images/icon-clock.svg) no-repeat left center;

    padding-left: 1.375rem;
}

.list-view .event-list .event-card-content > .btn-primary {
    display: inline;
}

.list-view .event-list .event-location {
    display: inline;
}

/* Case study Details*/

.csd-rgt-listing {
    padding: 0;

    margin: 0;

    list-style: none;
}

.csd-rgt-listing li {
    margin-bottom: 25px;

    border-radius: 5px;

    padding: 15px;

    box-shadow: 5px 5px 25px #ccc;
}

.csd-rgt-listing li img {
    min-height: 150px;
}

.csd-rgt-listing li p {
    font-size: 16px;

    line-height: normal;

    padding: 14px 0 0 0;

    margin-bottom: 0;
}

.vinfo {
    background: #ebf4ff;

    padding: 40px;

    border-radius: 22px;
}

.csmeplistview {
    background: #b7d0ef;

    border-radius: 15px;

    padding: 15px;

    border: #90b3dd solid 2px;

    font-size: 18px;
}

.csmeplistinfo {
    position: relative;
}

.csmeplistinfo:after {
    content: ' ';

    width: 2px;

    height: 30px;

    margin: 0 auto;

    position: absolute;

    left: 0;

    right: 0;

    background: #014b88;
}

.csmeplistviews {
    background: #afd5bc;

    border-radius: 15px;

    padding: 15px;

    border: #85c299 solid 2px;

    font-size: 18px;
}

.csmeplist {
    background: #1563c5;

    width: 50px;

    height: 50px;

    padding: 2% 2% 2% 1.6%;

    color: #fff;

    font-size: 20px;

    border-radius: 50px;

    border: 0;

    margin: 0 auto;

    position: relative;

    top: 20px;

    z-index: 1;

    left: -2px;

    line-height: 21px;

    text-align: center;
}

.csmeplist.cir-green {
    background: #27b353;
}

/* 3D Visualization Special */

.packery img {
    max-width: 100%;
}

.grid-item {
    width: 23%;
    border: 1px solid #ddd;

    padding: 10px;
    right: 0;
    overflow: hidden;
}

.grid-item img {
    width: 100%;
}

.grid-item--width2 {
    width: 35%;
}

.grid-item--width3 {
    width: 45%;
}

/* Case study */

.casestudy.grid .grid-item {
    width: 30%;
}

.casestudy .grid-item img {
    min-height: 125px;
}

.casestudy.grid .grid-item {
    border: 1px solid #ddd;

    padding: 0px;
    margin: 5px;
}

.casestudy .grid-item h4 {
    font-size: 18px;
}

.casestudy .grid-item p {
    font-size: 16px;
}

.casestudy .grid-item {
    width: 100%;
}

.casestudy .grid-item a {
    font-size: 16px;
}

.casestudy-topSec ul {
    list-style: none;

    padding: 0;

    margin: 0 0 35px 0;

    display: flex;
}
.casestudy-topSec li {
    position: relative;

    margin-right: 10px;

    margin-bottom: 20px;

    height: 400px;

    overflow: hidden;

    min-width: 19%;
    
    right: 1.4%;
}
.casestudy-topSec li label {
    font-weight: 600;

    font-size: 18px;
}
.casestudy-topSec li span {
    display: block;

    font-size: 14px;

    padding: 15px 0 0 0;
}

.casestudy-topSec img {
    max-width: none !important;
}
.mask1 {
    background: #000;

    opacity: 0.6;

    position: absolute;

    width: 100%;

    height: 100%;
}

.maskText {
    position: absolute;

    bottom: 0;

    z-index: 2;

    color: #fff;

    padding: 20px 20px 10px 20px;

    line-height: normal;
}

.box1 {
    border: 1px solid #eee;

    padding: 20px;

    font-size: 16px;
}

.list-group {
    padding: 0 0 0 30px;
    margin-bottom: 20px;
}

.img-effect-revit {
    --skew-x: 16deg;
    display: inline-block;
    transform: skewX(calc(-1 * var(--skew-x)));
    padding: 2rem;
    transform: skew(0turn, 0deg);
    position: relative;
}

.img-effect-revit:before {
    content: '';
    display: inline-block;
    position: absolute;
    
    z-index: -1;
    background-color: var(--bs-primary);
}



.img-effect {
    --skew-x: 10deg;
    display: inline-block;
    transform: skewX(calc(-1 * var(--skew-x)));
    padding: 2rem;
    margin-left: 1.5rem;
    
}

.img-effect:before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 0;
    left: -6px;
    bottom: 50%;
    right: 40%;
    z-index: -1;
    background-color: var(--bs-primary);
}

.bg-diamond {
    background-color: #fff !important;
    overflow: hidden;
}

.img-effect span {
    transform: skewX(var(--skew-x));
}

.img-effect .d-inline-block img {
    transform: scale(1.5) !important;
}

.img-effect.map iframe {
    transform: scale(1.25) !important;
}

.cont-phone img,
.cont-email img,
.cont-mobile img {
    margin-right: 10px;
}

.cont-phone img {
    margin-right: 0;
}

.btn-check,
.btn-check:focus + .btn-primary,
.btn-primary:focus {
    box-shadow: none;
}

#project .row.pt-5.pt-lg-6.gx-5 {
    padding-top: 0 !important;
}


/*------------------------------------------------
--------------- Responsive Styles ---------------
------------------------------------------------*/

/* For extremely small screen devices (595px and below) */
@media only screen and (max-width: 480px) {
    .project-details {
        height: auto !important;
    }

    .project-details p {
        font-size: 16px !important;
    }

    .leadership-highlights .strip {
        width: 100% !important;
        font-size: 1.1rem;
        font-weight: 400 !important;
        line-height: normal !important;
    }

    /*.py-section { padding-top: 20px; padding-bottom: 100px;}*/
    #booking-modal .nav-tabs .nav-link {
        padding-left: 1.6rem;
        padding-right: 1.6rem;
    }

    .bg-diamond iframe {
        width: 80%;
        height: 100%;
    }

    .img-effect {
        margin-top: 20px;
    }

    .img-effect span {
        transform: inherit;
    }

    #hideAftersumitButton .px-5,
    #hideAftersumitQuote .px5 {
        /* padding-right: 1rem !important;
        padding-left: 1rem !important;
        margin-left: 8px !important; */
    }
}

@media only screen and (max-width: 595px) {
    #banner-section-home .carousel-indicators > button {
        width: 12px;

        height: 12px;

        margin-right: 6px;
    }
}

/* Small screen devices (600px and above) */

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

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

    .banner-badge img {
        max-width: 80%;
    }

    .fs-heading,
    .project-name {
        font-size: 2rem;
    }

    #banner-section-home .fs-banner-heading {
        font-size: 3rem;
    }

    .fs-big-heading {
        font-size: 3rem;
    }

    .project-details {
        padding: 2rem;
    }

    .project-image {
        margin-left: 0;

        margin-bottom: -3rem;
    }

    .project-details-section {
        padding-top: 0 !important;

        padding-bottom: 0 !important;

        margin-top: -3rem;

        margin-right: 0;
    }

    #recent-projects-carousel {
        gap: 0.5rem;
    }

    .grid-item {
        width: 40%;
    }
}

/* Medium screen devices (768px and above) */

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

    /*.expertise-card { max-width: 425px;}*/
    .inner .fs-heading {
        font-size: 2.0rem;
    }

    .inner-banner-caption p {
        font-size: 1rem;
    }

    .fs-heading,
    .project-name {
        font-size: 1.5rem !important;
    }

    #banner-section-home .py-section-home {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    #banner-section-home .carousel-inner {
        max-height: 650px;
        height: 100%;
    }

    #banner-section-home .carousel-inner > .carousel-item {
        min-height: 650px;
    }

    .banner-badge {
        position: inherit;

        text-align: center;
    }

    .banner-badge img {
        max-width: 50%;
    }

    .banner-badge,
    .banner-btn {
        margin: 0 auto;

        text-align: center;
    }

    .banner-content {
        text-align: center;
    }

    .grid-item {
        width: 100%;
    }

    .project-card .img-thumb img {
        width: 100%;
        min-height: 250px;
        max-height: 100%;
    }
	
	.img-thumb-leader img {
        width: 100%;
        min-height: 350px;
        max-height: 100%;
    }
	
}

/* Medium screen devices (768px and above) */
@media only screen and (max-width: 767px) {
    /*.py-section { padding-top: 40px; padding-bottom: 100px;}*/

    .specialize-card .img-thumb img {
        /* min-height: 200px; */

        height: 100%;
    }

    .specialize-card {
        max-width: 100%;
    }

    .expertise-card {
        max-width: 100%;
    }

    #banner-section-home .carousel-inner .container {
        padding-top: 0;
    }

    #banner-section-home .carousel-inner .container .py-section {
        padding-top: 50px;
    }

    #recent-projects-carousel .carousel-inner .container {
        width: 100%;

        padding-top: 0px;

        padding-bottom: 5px;
    }

    .hidden-sm {
        display: none;
    }

    .open-position .job-row .job-title {
        max-width: calc(100% - 20px);

        flex: 1 0 calc(100% - 20px);
    }

    .open-position .job-row .job-city {
        max-width: calc(100% - 20px);

        flex: 1 0 calc(100% - 20px);
    }

    .grid-item {
        width: 100% !important;
    }
	.img-thumb-leader img {
        width: 100%;
        min-height: 350px;
        max-height: 100%;
        margin-top: 50px;
    }
}

@media only screen and (min-width: 1000px) {
    /*.py-section { padding-bottom: 100px;}*/
    .nameDesignation{
        padding-top: 90px;
        padding-left: 30px;
    }
	.img-thumb-leader img {
        width: 100%;
        min-height: 400px;
        max-height: 100%;
    }
}
@media only screen and (max-width: 1200px) {
    .leadersList{
        margin-right: 100px;
    }
	.img-thumb-leader img {
        width: 100%;
        min-height: 450px;
        max-height: 100%;
        margin-top: 50px;
    }
}



* {
    box-sizing: border-box;
}

/* force scrollbar */

html {
    overflow-y: scroll;
}

body {
    font-family: sans-serif;
}

/* ---- grid ---- */

.grid {
    /*background: #DDD;*/
}

/* clear fix */

.grid:after {
    content: '';

    display: block;

    clear: both;
}

/* ---- .grid-item ---- */

.grid-item {
    width: 33.333%;
}

.grid-item {
    float: left;
}

.casestudy .grid-item img {
    display: block;
    max-width: 100%;
}

/*
.grid.casestudy .grid-item img { height: 120px;}
*/

@media only screen and (max-width: 360px) {
    #banner-section-home .carousel-item .banner-content.fs-heading {
        font-size: 1.6rem !important;
    }
}

.accordion-collapse {
    border: 0;
}

.accordion-button {
    padding: 0px;
    font-weight: bold;
    border: 0;
    font-size: 18px;
    color: #333333;
    text-align: left;
    border-bottom: 1px solid #ddd;
}

.accordion-button:focus {
    box-shadow: none;
    border: none;
}

.accordion-button:not (.collapsed) {
    background: none;
    color: #dc3545;
}

.accordion-body {
    padding: 15px;
    background-color: #f6f6f6;
}

.accordion-button::after {
    width: auto;
    height: auto;
    content: "+";
    font-size: 40px;
    background-image: none;
    font-weight: 100;
    color: #1b6ce5;
    transform: translateY(-4px);
}

.accordion-button:not (.collapsed)::after {
    width: auto;
    height: auto;
    background-image: none;
    content: "-";
    font-size: 48px;
    transform: translate(-5px, -4px);
    transform: rotate(0deg);
}

.accordion-button:not(.collapsed)::after {
    background-image: none;
}
  #teamShowcase {
            background: #f7f7f7;
            padding: 0 0 50px 0;
        }

        #teamShowcase .member-profile {
            background-color: #ffffff;
            color: #3c3c3c;
            border-radius: 6px;
            box-shadow: 0px 3px 6px #00000029;
            padding: 25px;
            max-width: 320px;
            margin: 0 auto;
            line-height: 1.2;
            font-size: 0.9375rem;
        }

        #teamShowcase .member-profile > .profile-content {
            padding: 25px 0;
            font-size: 1rem;
            padding-bottom: 0.5rem;
        }

        /* Default photo container for 200x200 images */
        #teamShowcase .member-profile .photo-container {
            min-height: 200px;
            position: relative;
            perspective: 1000px;
            width: 200px;
            margin: 0 auto;
        }

        #teamShowcase .member-profile .photo-container img {
            max-width: 100%;
            width: 200px;
            height: 200px;
            object-fit: cover;
            border-radius: 8px;
        }

        /* Large photo container for 256x354 images */
        #teamShowcase .member-profile .photo-container.large {
            min-height: 354px;
            width: 256px;
        }

        #teamShowcase .member-profile .photo-container.large img {
            width: 256px;
            height: 354px;
        }

        #teamShowcase .member-profile .photo-container > .flip-animation {
            transition: transform 0.8s;
            transform-style: preserve-3d;
        }

        #teamShowcase .member-profile .photo-container > .flip-animation > * {
            -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
        }

        #teamShowcase .member-profile .photo-container .contact-overlay {
            position: absolute;
            top: 0;
            width: 100%;
            height: 100%;
            display: flex;
            justify-content: space-evenly;
            align-items: center;
            background-color: var(--bs-secondary);   
            transform: rotateY(180deg) translateZ(1px);
            border-radius: 8px;
        }

        #teamShowcase .member-profile .photo-container:focus > .flip-animation,
        #teamShowcase .member-profile .photo-container:hover > .flip-animation {
            transform: rotateY(180deg);
        }

        .contact-overlay a {
            width: 40px;
            height: 40px;
            background: #fff;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: transform 0.3s;
        }

        .contact-overlay a:hover {
            transform: scale(1.1);
        }

        .contact-overlay svg {
            width: 20px;
            height: 20px;
            fill: #0077b5;
        }

        .truncate-text {
            overflow: hidden;
            display: -webkit-box;
            -webkit-line-clamp: var(--line-clamp, 1);
            -webkit-box-orient: vertical;
        }

        .weight-semibold {
            font-weight: 600;
        }

        /* Section titles */
        .section-title {
            text-align: center;
            font-size: 1.5rem;
            font-weight: 600;
            margin-bottom: 30px;
            color: #333;
        }

        .team-section {
            margin-bottom: 50px;
        }
@media only screen and (min-width: 100px) and (max-width: 768px) {
    #banner-section-home .carousel-item .banner-content.fs-heading {
        font-size: 1.5rem !important;
    }
}

@media only screen and (min-width: 768px) and (max-width: 1000px) {
    #banner-section-home .carousel-item .banner-content.fs-heading {
        font-size: 1.3rem !important;
    }
    .casestudy-downloadSec button{
        margin-bottom: 10px;
    }
}

@media only screen and (min-width: 1000px) and (max-width: 1400px) {
    #banner-section-home .carousel-item .banner-content.fs-heading {
        font-size: 1.9rem !important;
    }
}

.mt-for-moblie{
	@media (max-width: 767px) {
		margin-top: 48px !important;
			
	}
}


.form-control.is-valid, .was-validated .form-control:valid {
    border-color: #198754;
    padding-right: calc(1.5em + .75rem);
    background-image: url(data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e);
    background-repeat: no-repeat;
    background-position: right calc(.375em + .1875rem) center;
    background-size: calc(.75em + .375rem) calc(.75em + .375rem);
}
a.service-item:hover {
   text-decoration: none !important;
}
.service-item{
    color: #000000 !important; 
    border: none !important;
    border-bottom: none !important;
    text-decoration-style: none !important;
}
.desktop-services-menu {
    position: relative;
}
*{
    font-family: sans-serif;
}
.desktop-services-dropdown {
    position: absolute;
    top: 100%;
    left: 15%;
    background: #245184;
    min-width: 300px;
    max-height: 850px;
    overflow-y: auto;
    scrollbar-width: none;          /* Firefox */
    -ms-overflow-style: none;
    z-index: 1000;
    box-shadow: 0 4px 20px rgba(0,0,0,0.15);
    display: none;
    padding: 16px;
}

.desktop-services-dropdown.active {
    display: block;
}

.desktop-service-section:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.desktop-service-section.hidden {
    display: none;
}

/* Removed the desktop-service-title and desktop-service-content styles since we're skipping that level */
.desktop-service-accordion {
    margin-bottom: 10px;
}
.desktop-service-accordion-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    font-weight: 600;
    font-size: 16px;
    color:#ffffff;
    transition: all 0.3s ease;
    padding: 6px 10px;
}
.desktop-service-accordion-header:hover {
    background: #fec407;
    color: #245184;
    border-color: #fec407;
}
.desktop-service-accordion-header.active {
    background: #fec407 !important;
    color: #245184 !important;
    border-color: #fec407;
}

.desktop-service-accordion-icon {
    transition: transform 0.3s ease;
    font-size: 14px;
}

.desktop-service-accordion-icon.rotated {
    transform: rotate(180deg);
}

.desktop-service-accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    padding: 0 15px;
}

.desktop-service-accordion-content.expanded {
    max-height: 468px;
    padding: -1px;
}
.desktop-service-link {
    display: block;
    padding: 8px 0;
    color:rgb(255, 255, 255) !important;
    text-decoration: none;
    font-size: 13px;
    transition: color 0.2s ease;
    border-bottom: 1px solid #f8f9fa;
}

.desktop-service-link:last-child {
    border-bottom: none;
}

.desktop-service-link:hover {
    color: #fec407 !important;
    text-decoration: none;
    padding-left: 10px;
}

.desktop-services-toggle {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
}

.desktop-services-arrow {
    transition: transform 0.3s ease;
}

.desktop-services-arrow.rotated {
    transform: rotate(180deg);
}
.show-more-sections {
    text-align: center;
    padding: 10px 0;
    margin-top: 10px;
    border-top: 1px solid #eee;
}

/* Row layout for compact categories */
.compact-categories-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-bottom: 30px;
}

.compact-categories-row .service-category.compact-category {
    margin-bottom: 0;
}

/* Compact grid styles for services with 6 or fewer items */
.service-items-grid.compact-grid {
    display: grid;
    grid-template-columns: 1fr 1fr; /* Exactly 2 columns */
    gap: 20px;
    align-items: start;
    max-width: 600px; /* Limit width to make it more compact */
}

.service-items-grid.compact-grid .service-items-column {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.service-items-grid.compact-grid .service-item {
    background: transparent;
    border: none !important;
    font-size: 14px;
    font-weight: 500;
    display: block;
    position: relative;
    overflow: visible;
    transform: none !important;
}


/* Mobile responsiveness for compact grid */
@media (max-width: 768px) {
    .compact-categories-row {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .service-items-grid.compact-grid {
        grid-template-columns: 1fr;
        max-width: 100%;
    }
    
    .service-items-grid.compact-grid .service-item {
        font-size: 14px;
    }
}
/* All Services Modal Styles - Redesigned */
.all-services-container {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.8);
    z-index: 10000;
    display: none !important;
    justify-content: center;
    align-items: center;
    overflow-y: auto;
    padding: 20px;
    opacity: 0;
    
}

.all-services-container.active {
    display: flex !important;
    opacity: 1;
}

.all-services-content {
    background: #ffffff;
    width: 1200px;
    max-width: 95vw;
    max-height: 90vh;
    overflow: hidden;
    position: relative;
    
}

.all-services-header {
    padding: 10px 20px;
    background: #245184;
    color: white;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: sticky;
    top: 0;
    z-index: 1;
}

.all-services-header h3 {
    margin: 0;
    font-size: 28px;
    font-weight: 700;
    letter-spacing: -0.5px;
}

.all-services-close { 
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    border: none;
    color: white;
    font-size: 28px;
    cursor: pointer;
    transition: all 0.3s ease;
    line-height: 1;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}



.all-services-body {
    padding: 25px;
    overflow-y: auto;
    max-height: calc(90vh - 100px);
}

/* New Clean Service Category Styles */
.service-category {
    margin-bottom: 24px;
    border-bottom: 1px solid #e9ecef !important;
    padding: 10px;
}

.service-category:last-child {
    border-bottom: none;
    margin-bottom: 0;
}

.service-category-header {
    background: transparent;
    padding: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

.service-category-header:hover {
    background: transparent;
}

.service-category-header:hover .service-category-title {
    color: #fec407;
}

.service-category-title {
    font-size: 20px;
    font-weight: 700;
    color: #245184;
    margin: 0;
    transition: color 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.service-category-arrow {
    font-size: 20px;
    color: #245184;
    margin-left: 15px;
    transition: all 0.3s ease;
    font-weight: bold;
}

.service-category-content {
    padding: 0;
    background: transparent;
}

.service-items-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
    align-items: start;
}

.service-items-column {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.service-item {
    background: transparent;
    border: none !important;
    border-radius: 0;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    display: block;
    position: relative;
    overflow: visible;
    transform: none !important;
    transition: color 0.3s ease;
}

.service-item::before {
    display: none;
}

.service-item span {
    position: relative;
    z-index: 1;
}

.service-item:hover {
    transform: none !important;
}

.service-item:hover span {
    color: #245184;
    border: none !important;
    border-bottom: none !important;
}

/* View All Services Button */
.view-all-services-btn {
    display: block;
    width: 100%;
    background: linear-gradient(135deg, #fec407 0%, #f4b942 100%);
    color: #000;
    border: none;
    padding: 12px 0px;
    font-weight: 700;
    font-size: 16px;
    cursor: pointer;
    margin-top: 20px;
    border-radius: 8px;
    transition: all 0.3s ease;
    text-align: center;
    text-decoration: none;
    letter-spacing: 0.5px;
    box-shadow: 0 4px 15px rgba(254, 196, 7, 0.3);
}

.view-all-services-btn:hover {
    background: linear-gradient(135deg, #000 0%, #333 100%);
    color: #fec407;
    text-decoration: none;
    transform: translateY(-2px);
    box-shadow: 0 6px 25px rgba(0, 0, 0, 0.3);
}

.view-all-services-btn:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(254, 196, 7, 0.3);
}

/* Mobile responsiveness */
@media (max-width: 768px) {
    .all-services-content{
        display: none!important;
    }
    
    .service-items-grid {
        grid-template-columns: 1fr;
    }
    
    .service-category-title {
        font-size: 20px;
    }
    
    .service-item {
        font-size: 14px;
    }
}

/* Prevent body scroll when modal is open */
body.modal-open {
    overflow: hidden !important;
}
  .custom-select select {
            appearance: none;
            background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");
            background-repeat: no-repeat;
            background-position: right 12px center;
            background-size: 16px;
            padding-right: 40px;
        }
        
        .captcha-container {
            background-color:var(--bs-secondary);
            border-radius: 8px;
            padding: 15px;
            margin: 15px 0;
            color: white;
            display: flex;
            align-items: center;
            gap: 15px;
        }
        
        .captcha-question {
            font-weight: bold;
            font-size: 16px;
        }
        
        .captcha-input {
            width: 220px !important;
            /* text-align: center; */
            background: rgba(255,255,255,0.9);
            border: none;
            border-radius: 4px;
            padding: 8px;
            color: #333;
        }
        
        .error {
            color: #dc3545;
            font-size: 0.875rem;
            margin-top: 5px;
            display: block;
        }
        
        .note {
            font-size: 0.875rem;
            color: #6c757d;
        }
        
        .extension {
            font-size: 0.75rem;
            color: #6c757d;
            display: block;
            margin-top: 5px;
        }
        
        .form-control:focus {
            
            box-shadow: 0 0 0 0.2rem rgba(102, 126, 234, 0.25);
        }
        
        