body,
h1,
h2,
h3,
h4,
h5,
h6,
li,
p,
ul {
    margin: 0
}

.cta h1::after,
.nav-container li a:after {
    position: absolute;
    left: 0;
    content: '.';
    color: transparent
}

.hero-image img,
.logo img {
    object-position: center;
    object-fit: cover
}

html {
    scroll-behavior: smooth
}

:root {
    --bg-color: #FFEFD6;
    --white-font: #FFFFFF;
    --orange-font: #DD7F24;
    --red: #FF1919;
    --black-font: black;
    --black: black;
    --gray-font: #5d5d5d;
    --bg-gredient: linear-gradient(225.83deg, #00AAFF 11.34%, #96DCFF 35.49%, #0878FF 69.01%, #0878FF 98.59%);
    --bg-gredient1: linear-gradient(95.28deg, rgba(133, 214, 255, 0.8) 2.8%, #28B7FF 97.16%);
    --primary-gold: #0055B8;
    --blue1: #045098;
    --blue2: #0878FF;
    --blue-bg: #D9F2FF;
    --btn-green: #518F5D;
    --green-shade: #386A42;
    --light-green: #D9FFE1
}

* {
    box-sizing: border-box;
    font-family: Poppins, sans-serif
}

body {
    padding: 0;
    border: 0
}

a {
    text-decoration: none;
    color: inherit
}

li,
ul {
    padding: 0;
    list-style: none
}

.container {
    margin-inline: auto;
    width: 90%
}

@media(max-width:576px) {
    .container {
        max-width: 540px
    }
}

@media(min-width:768px) {
    .container {
        max-width: 720px
    }
}

@media(min-width:992px) {
    .container {
        max-width: 960px
    }
}

@media(min-width:1200px) {
    .container {
        max-width: 1140px
    }
}

@media (min-width:1300px) {
    .container {
        max-width: 1240px
    }
}

.heading {
    color: var(--orange-font);
    margin-bottom: 30px;
    font-size: 3rem
}

@media (max-width:768px) {
    .heading {
        font-size: 2.3rem
    }
}

.primary-btn {
    height: 40px;
    padding-inline: 40px;
    font-size: 1.2rem;
    letter-spacing: 1px;
    border-radius: 20px;
    background-color: var(--primary-gold);
    color: #fff;
    border: 2px solid transparent;
    transition: .3s
}

.hero-content h1 span,
.secondary-btn {
    color: var(--blue1)
}

.primary-btn:hover {
    border: 2px solid var(--primary-gold);
    background-color: transparent;
    color: var(--primary-gold)
}

.secondary-btn {
    background-color: var(--blue-bg);
    border-radius: 20px;
    border: 1px solid transparent;
    height: 40px;
    font-size: initial;
    padding-inline: 20px;
    margin-inline: 20px;
    transition: .3s
}

.hero-container,
.hero-content,
.navbar-section,
footer {
    color: var(--black-font)
}

.secondary-btn:hover {
    background-color: var(--white-font);
    border-color: var(--blue1)
}

.gradient-border {
    position: relative;
    border: none
}

.gradient-border::before {
    content: "";
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    z-index: -1;
    background: var(--border-gredient);
    border-radius: inherit;
    background-clip: border-box
}

.navbar-section {
    display: flex;
    list-style: none;
    font-weight: 600;
    padding: 0 55px;
    justify-content: space-between;
    align-items: center;
    position: fixed;
    width: 100%;
    height: 100px;
    text-transform: capitalize;
    background: #fff;
    border-bottom: 1px solid rgba(255, 255, 255, .18);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    z-index: 10
}

.cta h1,
.hero-section,
.nav-container li a,
.project-hero-section,
.slide,
.slides,
footer {
    position: relative
}

.about-hero-section,
.hero-section,
.qoutes-section,
.services-container,
.strength-img {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover
}

.logo img {
    height: auto;
    width: 120px
}

.logo {
    overflow: visible
}

.menu-icon {
    display: none;
    width: 25px
}

.hero-image img,
.menu-close-icon img,
.menu-icon img,
.teamcardimage {
    width: 100%;
    height: auto
}

.menu-close-icon {
    display: none;
    max-width: 40px
}

.nav-container {
    display: flex;
    justify-content: space-around;
    align-items: center;
    width: 50%;
    transition: .3s ease-out
}

.nav-container li {
    margin-left: 10px
}

.nav-container li>a {
    padding-bottom: 10px;
    font-weight: 400
}

.nav-container li a,
.nav-container li a:after,
.nav-container li a:before {
    transition: .5s
}

.nav-container li a:after {
    bottom: 0;
    right: 0;
    margin: auto;
    width: 0%;
    background: var(--gray-font);
    height: 1px
}

.nav-container li a:hover:after,
.slider1 {
    width: 100%
}

.hero-section {
    height: 100vh;
    width: 100%;
    min-height: 400px;
    overflow: hidden
}

.hero-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -1
}

.hero-container {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    height: 100%
}

.hero-content {
    width: 50%;
    background-color: rgba(0, 0, 0, .45);
    text-align: center
}

.hero-content h1 {
    font-size: 3rem;
    line-height: 80px;
    margin-block: 20px
}

.hero-content p {
    font-weight: 500;
    margin-bottom: 30px;
    font-size: 18px;
    line-height: 27.28px
}

@media (max-width:1200px) {
    .hero-content h1 {
        font-size: 2.8rem
    }
}

.achivements-section {
    padding-block: 2%;
    background-color: #333;
    color: var(--white-font)
}

.achivements-section .achivements-wrapper {
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: space-between
}

.achivements-section .achivements {
    width: calc(25% - 20px);
    text-align: center
}

.achivements span {
    font-size: 1.8rem;
    font-weight: 700
}

.achivements p {
    font-size: 14px
}

.achivements .primary-btn {
    display: flex;
    align-items: center;
    width: fit-content;
    margin-top: 10px
}

.achivements-wrapper .achivements:nth-child(5) p {
    font-size: 16px
}

@media screen and (max-width:991px) {
    .achivements-section .achivements-wrapper {
        flex-wrap: wrap;
        margin-top: 5%;
        margin-bottom: 5
    }

    .achivements-section .achivements {
        width: calc(33.33% - 20px);
        align-items: center;
        text-align: center
    }

    .achivements-wrapper .achivements:first-child {
        width: 100%;
        text-align: center
    }

    .achivements-wrapper .achivements:nth-child(5) {
        width: 100%
    }

    .achivements .primary-btn {
        margin-inline: auto
    }
}

@media screen and (max-width:600px) {
    .achivements-section .achivements {
        width: 100%;
        text-align: left
    }

    .achivements-wrapper .achivements:first-child,
    .achivements-wrapper .achivements:nth-child(2),
    .achivements-wrapper .achivements:nth-child(3),
    .achivements-wrapper .achivements:nth-child(4) {
        display: flex;
        align-items: center;
        justify-content: space-between;
        max-width: 300px;
        margin-inline: auto
    }

    .achivements span {
        margin-top: 0
    }
}

.about-section {
    margin-block: 5%;
    color: var(--black)
}

.about-container {
    display: flex;
    align-items: center;
    gap: 50px;
    justify-content: space-between
}

.about-section .img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 25px
}

.about-section .img-container {
    width: 50%;
    height: 100%;
    font-size: 0
}

.about-container .img-wrapper {
    width: 100%;
    font-size: 0
}

.about-content,
.form,
.img-container {
    width: 50%
}

.section-name {
    font-size: 38px;
    font-weight: 700;
    color: var(--black)
}

.about-section .section-name {
    color: var(--black);
    margin-block: 20px;
    display: block
}

.about-section h1 {
    font-size: 1.5rem;
    margin-block: 20px;
    font-weight: 500
}

.close,
.contactform label,
.service-name {
    font-weight: 700
}

.about-content p {
    margin-bottom: 20px;
    text-align: justify;
    font-size: 20px
}

.project .project-content h1,
.why-choose p {
    font-size: 18px
}

.why-choose {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 20px;
    width: 550px;
    margin-block: 20px;
    border: 1px solid var(--gray-font);
    padding: 20px;
    border-radius: 20px
}

.why-choose img {
    width: 25px;
    height: 25px;
    aspect-ratio: 1/1
}

.why-choose p {
    margin-top: 10px;
    color: var(--gray-font);
    text-align: justify
}

.contact-section,
.service-details-section,
.services-section {
    margin-block: 5%
}

.services-container {
    background-image: url(./assets/service-bg.webp);
    min-height: 200px;
    width: 100%;
    padding-top: 5%;
    display: flex;
    align-items: end;
    justify-content: center
}

.services-container .section-name,
.teamcardcontent p {
    color: #fff
}

.services-container>div {
    color: #fff;
    background-color: #333;
    display: flex;
    align-items: center;
    flex-direction: column;
    width: 300px;
    border-radius: 20px 20px 0 0;
    padding-block: 20px
}

.services-wrapper {
    display: flex;
    align-items: stretch;
    justify-content: space-evenly;
    flex-wrap: wrap;
    margin-top: 5%;
    width: 95%
}

.service {
    width: 30%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column
}

.serviceiconholder {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100px
}

.service .primary-btn,
.service-number {
    display: flex;
    align-items: center;
    margin-inline: auto
}

.serviceiconholder img {
    width: 75px;
    height: auto
}

.service-number {
    width: 50px;
    height: 50px;
    background-color: var(--red);
    color: #fff;
    font-size: 20px;
    justify-content: center;
    border-radius: 50%
}

.banner-section,
.projects-section {
    padding-block: 5%;
    background-color: #333
}

.service-name {
    margin-block: 20px;
    color: var(--primary-gold);
    font-size: 24px;
    text-align: center
}

.service p {
    text-align: justify;
    color: var(--gray-font)
}

.service .primary-btn {
    justify-content: center;
    width: fit-content;
    margin-top: 20px
}

.footer-btn a,
.hero-btn a,
.section-title {
    display: block
}

.serviceul {
    width: 90%
}

.servicelist {
    list-style: circle;
    font-size: 20px;
    margin-top: 2%
}

li.servicelist::marker {
    margin-right: 2%
}

.projects-section {
    margin-top: 5%;
    color: #fff
}

.projects-container .section-name {
    color: #fff;
    display: block;
    text-align: center
}

.projects-container p {
    color: #fff;
    text-align: center
}

.banner h1,
.footer-about p,
.footer-item h1,
.footer-wrapper,
.newsletter input,
.strength-img {
    color: var(--white-font)
}

.projects-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 20px;
    gap: 50px
}

.project {
    width: calc(50% - 50px)
}

.project .img-container {
    width: 100%;
    height: 400px
}

.hero .img-wrapper img,
.icon-wrapper img,
.project .img-container img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.primary-btn.round {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    padding: 0
}

.primary-btn.round img {
    width: 20px;
    height: 20px;
    object-fit: cover
}

.project .project-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 10px
}

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

    #topnav,
    .menu-icon {
        display: block
    }

    .navbar-section {
        padding: 10px;
        height: 70px
    }

    .logo img {
        width: 80px;
        height: auto;
        margin-top: 1%
    }

    .expanded {
        width: 50% !important;
        padding: 10px
    }

    #topnav {
        width: 0%;
        transition: width .3s;
        overflow: hidden;
        position: fixed;
        z-index: 2;
        right: 0;
        top: 0;
        min-height: 100vh;
        overflow-y: scroll;
        background: var(--primary-gold);
        color: #fff
    }

    .nav-container.responsive .menu-close-icon {
        position: absolute;
        top: 0
    }

    .nav-container li a::after {
        background: 0 0
    }

    .nav-container li {
        float: none;
        display: flex;
        flex-direction: column;
        text-align: left;
        margin-top: 20px;
        margin-left: 20px
    }

    .project {
        width: 100%
    }
}

.strength-img {
    width: 33.333%;
    aspect-ratio: 5/3;
    display: flex;
    align-items: flex-end;
    justify-content: left;
    padding-bottom: 20px;
    padding-left: 20px
}

.banner {
    width: 80%;
    margin-inline: auto;
    border: 18px solid var(--primary-gold);
    border-radius: 50px;
    min-height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 30px;
    background-color: #3794ff
}

.banner h1 {
    font-size: 2rem;
    width: 70%;
    text-align: center
}

.banner-section .primary-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    margin-inline: auto
}

.cta {
    display: flex;
    flex-direction: column;
    padding-block: 30px
}

.cta h1 {
    text-align: left;
    width: 90%;
    margin-top: 20px
}

.cta h1::after {
    top: -10px;
    margin: auto;
    width: 25%;
    background: linear-gradient(90deg, #fff 0, rgba(255, 255, 255, .31) 123.02%);
    height: 2.5px
}

.contactform {
    width: 90%;
    margin-inline: auto
}

.contact-container,
.contactform .row {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.team,
footer {
    justify-content: center
}

.contactform .row div {
    width: 45%;
    margin-block: 20px
}

.contactform input,
textarea {
    width: 100%;
    margin-top: 10px;
    padding: 10px;
    border: none;
    font-size: 16px;
    outline: 0;
    border-radius: 10px
}

.contactform button {
    margin-top: 20px;
    height: 50px
}

footer {
    display: flex
}

.footer-container {
    width: 40%;
    background-color: #fff;
    padding-block: 5%;
    padding-left: 100px;
    padding-right: 20px;
    display: flex;
    align-items: center;
    justify-content: center
}

.footer-container h3 {
    font-size: 1.8rem;
    margin-block: 10px;
    font-weight: 500
}

.social-icons {
    display: flex;
    align-items: center;
    justify-content: left;
    gap: 20px
}

.social-icons img {
    width: 35px;
    height: 35px;
    object-fit: cover
}

.footer-wrapper {
    display: flex;
    align-items: flex-start;
    justify-content: space-evenly;
    gap: 20px;
    width: 60%;
    background-color: #333;
    padding-block: 5%;
    padding-inline: 20px
}

.footer-about p {
    text-align: justify;
    width: 100%;
    max-width: 300px
}

.footer-about img,
.footer-logo {
    width: 200px;
    height: auto
}

.footer-item h1 {
    font-size: 20px;
    margin-bottom: 10px;
    font-weight: 500
}

.about h2 {
    font-size: 2rem
}

.footer-item ul {
    line-height: 2rem
}

.footer-about img {
    object-fit: cover
}

.footer-item li a .icon-wrapper {
    width: 30px;
    padding: 7px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #0af;
    border-radius: 50%
}

.footer-item li a,
.logo-wrapper {
    align-items: center;
    gap: 10px;
    display: flex
}

.newsletter input {
    background-color: transparent;
    outline: 0;
    padding: 10px;
    width: 80%;
    border: 1px solid var(--white-font);
    border-radius: 10px
}

.newsletter input::placeholder {
    color: var(--white-font)
}

.logo-wrapper {
    justify-content: flex-start;
    margin-top: 20px
}

.logo-wrapper img {
    width: 30px;
    height: 30px;
    object-fit: cover
}

.footer-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: column;
    height: 100%
}

.footer-btn a:first-child {
    margin-bottom: 60px
}

.footer-btn a img {
    width: 40px;
    height: 40px
}

@media (max-width:991px) {
    .footer-wrapper {
        flex-wrap: wrap;
        justify-content: space-between;
        row-gap: 50px;
        width: 100%
    }

    .footer-item {
        width: 50%;
        flex: 0 0 auto
    }

    .footer-btn {
        flex-direction: row
    }

    .footer-btn a:first-child {
        margin-block: 0
    }

    .footer-container {
        padding-left: 20px;
        width: 100%
    }

    footer {
        display: flex;
        align-items: center;
        flex-direction: column
    }
}

.hero {
    display: flex;
    height: 90vh;
    align-items: center;
    justify-content: center
}

.hero .img-wrapper {
    width: 100%;
    height: 100%
}

.hero-btn {
    border-radius: 20px;
    text-transform: uppercase;
    background-color: var(--primary-gold);
    border: 1px solid var(--primary-merlot);
    color: var(--primary-merlot);
    font-size: 16px
}

.hero-btn a {
    padding-inline: 20px;
    padding-block: 5px
}

.hero-btn:hover {
    transition: .3s;
    background-color: var(--white-font)
}

.wrapper {
    overflow: hidden;
    width: 100%;
    z-index: 1
}

.slides {
    display: flex;
    top: 0;
    left: -100%;
    width: 14500px
}

.slides.shifting {
    transition: left .2s ease-out
}

.slide {
    width: 100vw;
    transition: 1s;
    border-radius: 2px
}

.control {
    position: absolute;
    top: 50%;
    width: 50px;
    height: 50px;
    background: rgba(255, 255, 255, .592);
    border-radius: 50px;
    margin-top: -20px;
    box-shadow: 1px 1px 10px rgba(0, 0, 0, .3);
    z-index: 2;
    border: none
}

.next,
.prev {
    background-size: 22px;
    background-position: center;
    background-repeat: no-repeat;
    cursor: pointer
}

.prev {
    background-image: url(https://cdn0.iconfinder.com/data/icons/navigation-set-arrows-part-one/32/ChevronLeft-512.png);
    left: 10px
}

.next {
    background-image: url(https://cdn0.iconfinder.com/data/icons/navigation-set-arrows-part-one/32/ChevronRight-512.png);
    right: 10px
}

.next:active,
.prev:active {
    transform: scale(.8)
}

.lightbox {
    display: none;
    position: fixed;
    z-index: 1000;
    padding-top: 60px;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, .9)
}

.lightbox-content {
    margin: auto;
    display: block;
    width: 80%;
    max-width: 700px
}

.close {
    position: absolute;
    top: 20px;
    right: 35px;
    color: #fff;
    font-size: 40px;
    transition: .3s
}

.close:focus,
.close:hover {
    color: #bbb;
    text-decoration: none;
    cursor: pointer
}

.team-page-section {
    margin-top: 5%
}

.team-page-section .img-wrapper img {
    width: 100%;
    height: auto;
    object-fit: cover
}

.team-page-section .container {
    display: flex;
    align-items: flex-start;
    gap: 50px
}

.amenity,
.form div {
    gap: 20px;
    display: flex
}

.team-page-section .content span {
    font-weight: 700;
    color: var(--blue1);
    letter-spacing: 2px;
    display: block;
    font-size: .8rem;
    margin-bottom: 20px
}

.team-page-section .content p {
    margin-top: 30px;
    text-align: justify;
    line-height: 25px
}

@media (max-width:1024px) {
    .about-section {
        padding-bottom: 5%
    }

    .why-choose {
        width: 90%;
        text-align: left;
        margin-inline: auto
    }

    .about-container,
    .team-page-section .container {
        flex-direction: column
    }

    .about-container .about-content {
        width: 95%;
        margin-bottom: 5%;
        padding: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center
    }

    .about-container .img-container {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column-reverse;
        gap: 20px;
        width: 100%;
        margin-inline: auto
    }

    .about-container .img-wrapper {
        margin-inline: auto;
        position: static;
        width: 100%
    }

    .service {
        width: calc(50% - 30px)
    }

    .control {
        top: unset;
        bottom: 10%
    }
}

.js-scroll {
    opacity: 0;
    transition: opacity .5s;
    overflow: hidden
}

.js-scroll.scrolled {
    opacity: 1
}

.scrolled.fade-in {
    animation: 1s ease-in-out both fade-in
}

.scrolled.fade-in-bottom {
    animation: 1s ease-in-out both fade-in-bottom
}

.scrolled.slide-left {
    animation: 1s ease-in-out both slide-in-left
}

.scrolled.slide-right {
    animation: 1s ease-in-out both slide-in-right
}

@keyframes fade-in {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes fade-in-bottom {
    0% {
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes slide-in-left {
    0% {
        -webkit-transform: translateX(-100px);
        transform: translateX(-100px)
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }
}

@keyframes slide-in-right {
    0% {
        -webkit-transform: translateX(100px);
        transform: translateX(100px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }
}

.about-hero-section {
    position: relative;
    height: 70vh;
    background-image: url(./projectphotos/JVL\ Page\ Industries/jvl-arial2.webp);
    width: 100%;
    min-height: 400px;
    color: var(--white-font)
}

.about-hero-section .hero-content {
    color: var(--white-font);
    width: 100% !important
}

.about-hero-section .hero-container {
    justify-content: flex-start;
    color: var(--white-font)
}

@media (max-width:992px) {

    .cta h1,
    .hero-content {
        width: 90%
    }

    .hero-section {
        height: 100vh
    }

    .hero-container {
        flex-direction: column-reverse;
        padding-block: 30px
    }

    .hero-container .img-wrapper {
        width: 60%
    }

    .hero-content h1 {
        font-size: 2.8rem;
        line-height: 50px
    }

    .cta {
        flex-direction: column;
        align-items: center
    }

    .cta h1 {
        text-align: center
    }

    .cta h1::after {
        height: 0
    }

    .cta div {
        flex-wrap: wrap;
        flex-direction: row;
        align-items: center;
        justify-content: center
    }

    .about-hero-section .hero-container {
        flex-direction: row;
        padding-block: 30px
    }
}

.call-us-container {
    position: absolute;
    bottom: -20px;
    right: 20%;
    padding: 10px;
    background-color: var(--white-font);
    border-top: 4px solid var(--primary-gold);
    color: var(--black-font);
    box-shadow: 0 17px 35px 0 #00000024;
    padding-inline: 20px;
    min-width: 300px
}

.call-us-container h3,
.section-title {
    color: var(--primary-gold);
    font-weight: 600
}

.call-us-container h3 {
    font-size: 2rem;
    margin-block: 10px
}

.about-para h4,
.qoutes-container span {
    font-size: 20px
}

.about-para {
    background-color: #fffeea;
    padding: 20px;
    margin-bottom: 30px
}

.about-para h4 {
    font-weight: 400
}

.qoutes-section {
    padding-block: 30px;
    background-image: url(./projectphotos/JVL\ Page\ Industries/jvl-arial.webp);
    width: 100%;
    color: var(--white-font);
    margin-block: 5%
}

.qoutes-section .qoutes-container {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    flex-direction: column;
    gap: 20px;
    text-align: center
}

.qoutes-container h3 {
    font-size: 2.3rem
}

.qoutes-container .primary-btn {
    display: flex;
    align-items: center;
    justify-content: center
}

.amenities {
    width: 40%
}

.form input,
.form textarea {
    border: none;
    border-bottom: 1px solid var(--primary-gold);
    width: 100%;
    padding: 10px;
    margin-bottom: 20px;
    background-color: #eee
}

.form textarea {
    resize: none;
    height: 100px
}

.form h3 {
    font-size: 2.5rem;
    margin-bottom: 20px
}

.amenity {
    align-items: center;
    margin-block: 10px
}

.amenity p {
    margin-bottom: 30px
}

.service2 h4,
.serviceiconholder.holder1 {
    margin: 2%
}

.service.service1 {
    width: 45%;
    padding: 3%
}

.service.service2 {
    width: 29%;
    margin: 2%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center
}

.serviceiconholder.holder1 {
    width: 100%;
    display: flex;
    height: auto
}

.serviceiconholder.holder1 img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    display: block;
}

.service2 p {
    margin: 3%
}

@media (max-width:767px) {
    .strength-img {
        width: 50%
    }

    .footer-wrapper {
        flex-direction: row;
        justify-content: center
    }

    .amenities,
    .footer-item,
    .form,
    .service.service2 {
        width: 100%
    }

    .footer-about {
        text-align: center
    }

    .footer-about p {
        margin-inline: auto
    }

    .logo-wrapper {
        justify-content: center
    }

    .contact-container {
        flex-direction: column
    }

    .amenities {
        margin-top: 30px
    }

    .service.service1 {
        width: 100%;
        padding: 3%
    }
}

.service-details-container {
    background-color: #fffeea;
    padding: 4%
}

.service-details-container h2 {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 20px
}

.headingholder h1,
.otherdetailsholder h5 {
    font-weight: 500;
    color: var(--primary-gold)
}

.service-details-container ul li {
    list-style: disc;
    font-size: 1rem;
    margin-top: 10px;
    max-width: 400px
}

.service-details-container div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px
}

.service-details-container p {
    margin-bottom: 20px
}

@media (max-width:600px) {

    .contactform .row,
    .service {
        flex-direction: column
    }

    .about,
    .banner,
    .contactform .row div,
    .footer-container,
    .footer-wrapper,
    .newsletter iframe,
    .service {
        width: 100%
    }

    .service {
        margin: 3%;
        display: flex;
        justify-content: center;
        align-content: center;
        align-items: center
    }

    .banner h1 {
        width: 90%
    }

    .social-icons {
        gap: 10px
    }

    .footer-container h3 {
        font-size: 1.5rem
    }

    .service-details-container div {
        flex-direction: column;
        align-items: flex-start
    }
}

.projectsimagesholder {
    width: 90%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    margin: 5%
}

.detailholder,
.projectdetails,
.team,
.teamcardholder {
    align-items: center;
    display: flex
}

.projectsimagesholder img {
    width: 30%;
    height: auto;
    margin: 1%
}

.team {
    background: #111;
    flex-direction: column
}

.team h2 {
    color: #fff;
    font-size: 34px;
    margin: 3%
}

.teamcardholder {
    justify-content: center;
    flex-wrap: wrap;
    width: 90%;
    margin-bottom: 3%;
    height: auto
}

.teamcard {
    width: 20%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin: 2%
}

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

.teamcardcontent {
    width: 100%;
    display: flex;
    flex-direction: column
}

.teamcardcontent h3 {
    color: #fff;
    font-size: 24px
}

.projectdetails {
    justify-content: center;
    flex-direction: column;
    margin-top: 3%
}

.detailholder {
    justify-content: center;
    flex-direction: column;
    width: 90%
}

.headingholder {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin: 2%
}

.headingholder h1 {
    font-size: 34px
}

.otherdetails {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
    border-top: 1px solid #045098;
    border-bottom: 1px solid #045098
}

.otherdetailsholder {
    width: 20%;
    margin: 1%
}

.otherdetailsholder h5 {
    font-size: 18px;
    margin: 2% 0
}

.dropdown-content {
    display: none;
    margin: 3% 0
}

.dropdown-toggle {
    cursor: pointer;
    color: var(--primary-gold);
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    font-size: 16px
}

.dropdown-content p {
    background-color: #f1f1f1;
    padding: 15px;
    border-radius: 5px
}

.why {
    width: 30%;
    margin: 1%
}

@media (max-width:500px) {
    .expanded {
        width: 75% !important
    }

    .hero-content h1 {
        font-size: 2.2rem
    }

    .hero-content p {
        font-size: 14px
    }

    .about-content h1 {
        font-size: 2.2rem;
        text-align: center
    }

    .section-name {
        text-align: center;
        display: block
    }

    .strength-img,
    .teamcard {
        width: 100%
    }

    .control {
        bottom: 40px
    }

    .next {
        right: 10%
    }

    .prev {
        left: 10%
    }

    .call-us-container {
        right: 50%;
        transform: translateX(50%)
    }

    .projectsimagesholder img {
        width: 100%;
        height: auto;
        margin: 3%
    }

    .teamcardholder {
        flex-direction: column;
        margin-top: 3%;
        margin-bottom: 3%
    }

    .otherdetails {
        flex-direction: column;
        padding: 2% 0
    }

    .otherdetailsholder {
        width: 100%;
        margin: 3% 0
    }

    .why {
        width: 100%;
        margin: 1%
    }
}

.cta-buttons-section {
    background-color: #333;
    padding-block: 5%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 30px;
    flex-wrap: wrap;
    /* Ensure wrapping on smaller screens */
}

.cta-buttons-section .primary-btn {
    color: white;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    /* Center content */
    gap: 10px;
    transition: transform 0.3s ease, padding 0.3s;
    /* Smooth transition */
    padding: 15px 30px;
    /* Larger click area */
    text-transform: uppercase;
    font-weight: 600;
    font-size: 1rem;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    /* Subtle shadow */
    min-width: 200px;
    /* Consistent width */
}

/* Specific Button Colors */
.cta-btn-call {
    background: linear-gradient(135deg, #007bff 0%, #0056b3 100%);
}

.cta-btn-whatsapp {
    background: linear-gradient(135deg, #25D366 0%, #128C7E 100%);
}

.cta-btn-email {
    background: linear-gradient(135deg, #ea4335 0%, #c5221f 100%);
}

.cta-buttons-section .primary-btn:hover {
    transform: translateY(-5px);
    /* Lift effect */
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3);
    color: white;
    /* Keep text white */
    border: none;
    /* No border on hover */
}

.cta-buttons-section svg {
    width: 24px;
    height: 24px;
    fill: currentColor;
    /* Icon takes text color */
}

@media (max-width: 768px) {
    .cta-buttons-section {
        flex-direction: column;
        gap: 20px;
    }

    .cta-buttons-section .primary-btn {
        width: 80%;
        /* Full width on mobile */
        max-width: 300px;
    }
}

/* Values Section Styles */
.values-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}

.value-card {
    background: #fff;
    padding: 30px 20px;
    border-radius: 20px;
    text-align: center;
    width: 150px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.value-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.value-card h1 {
    color: var(--primary-gold);
    font-size: 3rem;
    margin-bottom: 10px;
    line-height: 1;
}

.value-card p {
    font-weight: 600;
    font-size: 1.1rem;
    color: var(--black-font);
    margin: 0;
}

@media (max-width: 768px) {
    .value-card {
        width: calc(50% - 20px);
        /* Two col on mobile */
    }
}

@media (max-width: 480px) {
    .value-card {
        width: 100%;
        /* Full width on very small screens */
    }
}