:root {
    --primary: #1058A2;
    --secondary: #4F835F;
    --light: #F6F7F8;
    --dark: #1A2A36;
}

body {
    font-family: 'Quicksand', sans-serif;
    font-weight: 600;
}

p {
    font-size: 17px;
    font-weight: 600;
    line-height: 30px;
    color: gray;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Quicksand', sans-serif;
    font-weight: 700;
}

h1 {
    font-size: 1.75rem;
}

@media (max-width: 767.98px) {
    h1 {
        font-size: 1.5rem;
    }
}

.page-header h1 {
    font-size: 2.75rem;
}

@media (max-width: 991.98px) {
    .page-header h1 {
        font-size: 2.25rem;
    }
}

@media (max-width: 767.98px) {
    .page-header h1 {
        font-size: 1.75rem;
    }
}

.text-primary {
    color: var(--primary) !important;
}

.bg-primary {
    background-color: var(--primary) !important;
}

.border-primary {
    border-color: var(--primary) !important;
}

.fw-medium {
    font-weight: 500 !important;
}

.fw-bold {
    font-weight: 700 !important;
}

.fw-black {
    font-weight: 900 !important;
}

.back-to-top {
    position: fixed;
    display: none;
    right: 45px;
    bottom: 45px;
    z-index: 99;
}


#spinner {
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s ease-out, visibility 0s linear .5s;
    z-index: 99999;
}

#spinner.show {
    transition: opacity .5s ease-out, visibility 0s linear 0s;
    visibility: visible;
    opacity: 1;
}


.btn {
    font-weight: 500;
    transition: .5s;
}

.btn.btn-primary,
.btn.btn-outline-primary:hover {
    color: #FFFFFF;
}

.btn-primary {
    background-color: var(--secondary) !important;
    border-color: var(--secondary) !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background-color: #3d6949 !important;
    border-color: #3d6949 !important;
}

.btn-outline-primary {
    color: var(--secondary) !important;
    border-color: var(--secondary) !important;
}

.btn-outline-primary:hover {
    background-color: var(--secondary) !important;
    border-color: var(--secondary) !important;
}

.btn-outline-secondary {
    color: var(--secondary) !important;
    border-color: var(--secondary) !important;
}

.btn-outline-secondary:hover {
    background-color: var(--secondary) !important;
    border-color: var(--secondary) !important;
    color: #FFFFFF !important;
}

.bg-secondary {
    background-color: var(--secondary) !important;
}

.text-secondary {
    color: var(--secondary) !important;
}

.btn-square {
    width: 38px;
    height: 38px;
}

.btn-sm-square {
    width: 32px;
    height: 32px;
}

.btn-lg-square {
    width: 48px;
    height: 48px;
}

.btn-square,
.btn-sm-square,
.btn-lg-square {
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: normal;
}

.navbar.sticky-top {
    top: -100px;
    transition: .5s;
}

.navbar .navbar-brand,
.navbar a.btn {
    height: 75px;
}

.navbar .navbar-nav .nav-link {
    margin-right: 30px;
    padding: 25px 0;
    color: var(--dark);
    font-size: 17px;
    font-weight: 600;
    text-transform: capitalize; 
    outline: none;
}

.navbar .navbar-nav .nav-link:hover,
.navbar .navbar-nav .nav-link.active {
    color: var(--primary);
}

.navbar .dropdown-toggle::after {
    border: none;
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    vertical-align: middle;
    margin-left: 8px;
}

@media (max-width: 991.98px) {
    .navbar .navbar-nav .nav-link  {
        margin-right: 0;
        padding: 10px 0;
    }

    .navbar .navbar-nav {
        border-top: 1px solid #EEEEEE;
    }
}

@media (min-width: 992px) {
    .navbar .nav-item .dropdown-menu {
        display: block;
        border: none;
        margin-top: 0;
        top: 150%;
        opacity: 0;
        visibility: hidden;
        transition: .5s;
    }

    .navbar .nav-item:hover .dropdown-menu {
        top: 100%;
        visibility: visible;
        transition: .5s;
        opacity: 1;
    }
}


.owl-carousel-inner {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    background: rgba(0, 0, 0, .1);
}

@media (max-width: 768px) {
    .header-carousel .owl-carousel-item {
        position: relative;
        min-height: 500px;
    }

    .header-carousel .owl-carousel-item img {
        position: absolute;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .header-carousel .owl-carousel-item p {
        font-size: 16px !important;
    }
}

.header-carousel .owl-dots {
    position: absolute;
    width: 60px;
    height: 100%;
    top: 0;
    right: 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.header-carousel .owl-dots .owl-dot {
    position: relative;
    width: 45px;
    height: 45px;
    margin: 5px 0;
    background: #FFFFFF;
    box-shadow: 0 0 30px rgba(255, 255, 255, .9);
    border-radius: 45px;
    transition: .5s;
}

.header-carousel .owl-dots .owl-dot.active {
    width: 60px;
    height: 60px;
}

.header-carousel .owl-dots .owl-dot img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    padding: 2px;
    border-radius: 45px;
    transition: .5s;
}

.page-header {
    background: rgba(0, 0, 0, .1) url(../img/c1.jpeg) center center no-repeat;
    background-size: cover;
    min-height: 400px;
}
.page-header .container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    text-align: left;
    transform: translateY(35px);
}
.breadcrumb-item + .breadcrumb-item::before {
    color: var(--light);
}


@media (min-width: 992px) {
    .container.about {
        max-width: 100% !important;
    }

    .about-text  {
        padding-right: calc(((100% - 960px) / 2) + .75rem);
    }
}

@media (min-width: 1200px) {
    .about-text  {
        padding-right: calc(((100% - 1140px) / 2) + .75rem);
    }
}

@media (min-width: 1400px) {
    .about-text  {
        padding-right: calc(((100% - 1320px) / 2) + .75rem);
    }
}


/*** Service ***/
.row.g-4 > [class*="col-"] {
    display: flex;
}

.service-item {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 10px 35px rgba(0, 0, 0, .08);
}

.service-item img {
    width: 100%;
    height: 220px;
    object-fit: cover;
}

.service-item .position-relative {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 35px;
    padding-top: 0;
}

.service-icon {
    position: relative;
    margin: -50px 0 15px 0;
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary);
    background: #FFFFFF;
    border-radius: 100px;
    box-shadow: 0 0 45px rgba(0, 0, 0, .08);
    transition: .5s;
}

.service-item:hover .service-icon {
    color: #FFFFFF;
    background: var(--secondary);
}

.service-item h4 {
    min-height: 56px;
    display: flex;
    align-items: flex-start;
    margin-bottom: 10px;
    line-height: 1.3;
    font-size: 20px;
}

.service-item p {
    flex: 1;
    margin-bottom: 15px;
}

.service-item .btn {
    align-self: flex-start;
    margin-top: auto;
    background-color: var(--primary);
    border-color: var(--primary);
    color: #FFFFFF;
    padding: 12px 28px;
}

.service-item .btn:hover {
    background-color: #0c4174;
    border-color: #0c4174;
    color: #FFFFFF;
}


/*** Feature ***/
@media (min-width: 992px) {
    .container.feature {
        max-width: 100% !important;
    }

    .feature-text  {
        padding-left: calc(((100% - 960px) / 2) + .75rem);
    }
}

@media (min-width: 1200px) {
    .feature-text  {
        padding-left: calc(((100% - 1140px) / 2) + .75rem);
    }
}

@media (min-width: 1400px) {
    .feature-text  {
        padding-left: calc(((100% - 1320px) / 2) + .75rem);
    }
}


#portfolio-flters li {
    display: inline-block;
    font-weight: 500;
    color: var(--dark);
    cursor: pointer;
    transition: .5s;
    border-bottom: 2px solid transparent;
}

#portfolio-flters li:hover,
#portfolio-flters li.active {
    color: var(--secondary);
    border-color: var(--secondary);
}

.portfolio-container.row {
    display: block !important;
}

.portfolio-container.row > .portfolio-item {
    float: left;
    display: block;
}

.portfolio-container.row::after {
    content: "";
    display: table;
    clear: both;
}

.portfolio-item {
    width: 100%;
    box-sizing: border-box;
}

@media (min-width: 768px) {
    .portfolio-item {
        width: 50%;
    }
}

@media (min-width: 992px) {
    .portfolio-item {
        width: 33.3333%;
    }
}

.portfolio-img {
    position: relative;
}

.portfolio-img img {
    width: 100%;
    height: 230px;
    object-fit: cover;
    display: block;
}

.portfolio-img::before,
.portfolio-img::after {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    top: 0;
    background: var(--primary);
    transition: .5s;
}

.portfolio-img::before {
    left: 50%;
}

.portfolio-img::after {
    right: 50%;
}

.portfolio-item:hover .portfolio-img::before {
    width: 51%;
    left: 0;
}

.portfolio-item:hover .portfolio-img::after {
    width: 51%;
    right: 0;
}

.portfolio-btn {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    z-index: 1;
    transition: .5s;
}

.portfolio-item:hover .portfolio-btn {
    opacity: 1;
    transition-delay: .3s;
}


@media (min-width: 992px) {
    .container.quote {
        max-width: 100% !important;
    }

    .quote-text  {
        padding-right: calc(((100% - 960px) / 2) + .75rem);
    }
}

@media (min-width: 1200px) {
    .quote-text  {
        padding-right: calc(((100% - 1140px) / 2) + .75rem);
    }
}

@media (min-width: 1400px) {
    .quote-text  {
        padding-right: calc(((100% - 1320px) / 2) + .75rem);
    }
}


.team-item {
    box-shadow: 0 0 45px rgba(0, 0, 0, .08);
}

.team-item img {
    border-radius: 8px 60px 0 0;
}

.team-item .team-social {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    background: #FFFFFF;
    transition: .5s;
}

/* ==========================================
   TESTIMONIAL CAROUSEL
========================================== */

.testimonial-carousel {
    position: relative;
}


/* Side white overlays */

.testimonial-carousel::before,
.testimonial-carousel::after {
    position: absolute;
    content: "";
    top: 0;
    height: 100%;
    background: rgba(255, 255, 255, 1);
    z-index: 1;
    pointer-events: none;
}

.testimonial-carousel::before {
    left: 0;
    width: 0;
}

.testimonial-carousel::after {
    right: 0;
    width: 0;
}


/* Desktop overlays */

@media (min-width: 768px) {

    .testimonial-carousel::before,
    .testimonial-carousel::after {
        width: 150px;
    }

}

@media (min-width: 992px) {

    .testimonial-carousel::before,
    .testimonial-carousel::after {
        width: 220px;
    }

}


/* ==========================================
   NAVIGATION ARROWS
========================================== */

.testimonial-carousel .owl-nav {

    position: absolute;

    top: 50%;
    left: 50%;

    width: 100%;

    transform: translate(-50%, -50%);

    display: flex !important;

    justify-content: space-between;

    align-items: center;

    opacity: 1;

    z-index: 5;

    pointer-events: none;
}


/* Arrow buttons */

.testimonial-carousel .owl-nav .owl-prev,
.testimonial-carousel .owl-nav .owl-next {

    position: relative;

    width: 45px;
    height: 45px;

    display: flex !important;

    align-items: center;
    justify-content: center;

    padding: 0;

    margin: 0;

    background: transparent !important;

    border: none;

    color: #245475;

    font-size: 38px;

    line-height: 1;

    pointer-events: auto;

    transition: .3s ease;
}


/* Left arrow */

.testimonial-carousel .owl-nav .owl-prev {
    margin-left: 10px;
}


/* Right arrow */

.testimonial-carousel .owl-nav .owl-next {
    margin-right: 10px;
}


/* Hover */

.testimonial-carousel .owl-nav .owl-prev:hover,
.testimonial-carousel .owl-nav .owl-next:hover {

    color: #427454;

    background: transparent !important;

    transform: scale(1.12);
}


/* ==========================================
   REMOVE IMAGE AREA
========================================== */

.testimonial-carousel .testimonial-img {

    position: relative;

    width: 100%;

    height: 55px;

    margin-bottom: 20px !important;

    display: flex;

    align-items: center;

    justify-content: center;
}


/* Hide old image */

.testimonial-carousel .testimonial-img img {
    display: none !important;
}


/* ==========================================
   QUOTE ICON
========================================== */

.testimonial-carousel .testimonial-img .btn-square {

    position: relative;

    left: auto;
    bottom: auto;

    transform: none;

    width: 55px;
    height: 55px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin: 0 auto;

    background: #427454 !important;

    color: #fff;

    border-radius: 50% !important;

    z-index: 3;
}


/* Quote icon */

.testimonial-carousel .testimonial-img .btn-square i {

    font-size: 18px;

    color: #fff !important;
}


/* ==========================================
   TESTIMONIAL TEXT
========================================== */

.testimonial-carousel .owl-item .testimonial-text {

    margin-bottom: 30px;

    padding: 25px 35px !important;

    background: #fff;

    box-shadow: 0 8px 35px rgba(0, 0, 0, .06);

    transform: scale(.85);

    transition: .5s;

    border-radius: 8px !important;
}


/* Center testimonial */

.testimonial-carousel .owl-item.center .testimonial-text {

    transform: scale(1);

}


/* Paragraph */

.testimonial-carousel .testimonial-text p {

    color: #777;

    font-size: 16px;

    line-height: 1.8;

    margin-bottom: 18px;

}


/* Name */

.testimonial-carousel .testimonial-text h5 {

    color: #19313f;

    font-size: 19px;

    font-weight: 700;

}


/* Company */

.testimonial-carousel .testimonial-text span {

    color: #999;

    font-size: 14px;

}


/* ==========================================
   TABLET
========================================== */

@media (max-width: 991px) {

    .testimonial-carousel .owl-nav {
        width: calc(100% - 20px);
    }

    .testimonial-carousel .owl-nav .owl-prev,
    .testimonial-carousel .owl-nav .owl-next {
        font-size: 32px;
    }

}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 767px) {

    .testimonial-carousel::before,
    .testimonial-carousel::after {
        width: 0;
    }

    .testimonial-carousel .owl-nav {

        width: 100%;

        top: 48%;
    }

    .testimonial-carousel .owl-nav .owl-prev {
        margin-left: 0;
    }

    .testimonial-carousel .owl-nav .owl-next {
        margin-right: 0;
    }

    .testimonial-carousel .owl-nav .owl-prev,
    .testimonial-carousel .owl-nav .owl-next {

        width: 38px;
        height: 38px;

        font-size: 28px;
    }

    .testimonial-carousel .owl-item .testimonial-text {

        padding: 22px 45px !important;

        transform: scale(.95);
    }

    .testimonial-carousel .owl-item.center .testimonial-text {

        transform: scale(1);
    }

    .testimonial-carousel .testimonial-text p {

        font-size: 14px;

        line-height: 1.7;
    }

}


/* ==========================================
   SMALL MOBILE
========================================== */

@media (max-width: 480px) {

    .testimonial-carousel .owl-nav .owl-prev,
    .testimonial-carousel .owl-nav .owl-next {

        font-size: 25px;

        width: 32px;
        height: 32px;
    }

    .testimonial-carousel .testimonial-text {

        padding-left: 38px !important;
        padding-right: 38px !important;
    }

}

@media (min-width: 992px) {
    .container.contact {
        max-width: 100% !important;
    }

    .contact-text  {
        padding-left: calc(((100% - 960px) / 2) + .75rem);
    }
}

@media (min-width: 1200px) {
    .contact-text  {
        padding-left: calc(((100% - 1140px) / 2) + .75rem);
    }
}

@media (min-width: 1400px) {
    .contact-text  {
        padding-left: calc(((100% - 1320px) / 2) + .75rem);
    }
}


.footer .btn.btn-social {
    margin-right: 5px;
    color: #9B9B9B;
    border: 1px solid #9B9B9B;
    border-radius: 38px;
    transition: .3s;
}

.footer .btn.btn-social:hover {
    color: var(--secondary);
    border-color: var(--light);
}

.footer .btn.btn-link {
    display: block;
    margin-bottom: 5px;
    padding: 0;
    text-align: left;
    color: #9B9B9B;
    font-weight: normal;
    text-transform: capitalize;
    transition: .3s;
}

.footer .btn.btn-link::before {
    position: relative;
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 10px;
}

.footer .btn.btn-link:hover {
    color: #FFFFFF;
    letter-spacing: 1px;
    box-shadow: none;
}

.footer .copyright {
    padding: 25px 0;
    border-top: 1px solid rgba(256, 256, 256, .1);
}

.footer .copyright a {
    color: var(--light);
}


.footer-premium {
    position: relative;
    background:
        radial-gradient(circle, rgba(255,255,255,.04) 1px, transparent 1px) 0 0 / 24px 24px,
        var(--dark);
    overflow: hidden;
}

.footer-premium::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--secondary), var(--primary), var(--secondary));
}

.footer-premium::after {
    content: "";
    position: absolute;
    bottom: -160px;
    right: -120px;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(16, 88, 162, .18), transparent 70%);
    pointer-events: none;
}

.footer-logo {
    max-height: 46px;
}

.footer-logo-wrap {
    display: inline-block;
    background: #FFFFFF;
    border-radius: 12px;
    padding: 10px 18px;
}

.footer-about {
    color: rgba(255, 255, 255, 0.6) !important;
    font-size: 16px !important;
    line-height: 1.85 !important;
}

.footer-heading {
    color: #FFFFFF;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .5px;
    text-transform: uppercase;
    margin-bottom: 26px;
    position: relative;
    padding-bottom: 12px;
}

.footer-heading::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 34px;
    height: 3px;
    border-radius: 3px;
    background: linear-gradient(90deg, var(--secondary), var(--primary));
}

.footer-link {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    color: rgba(255, 255, 255, 0.62);
    font-weight: 500;
    font-size: 16px;
    text-decoration: none;
    transition: .3s;
}

.footer-link::before {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: var(--secondary);
    font-size: 12px;
    transition: transform .3s ease;
}

.footer-link:hover {
    color: #FFFFFF;
    transform: translateX(4px);
}

.footer-link:hover::before {
    transform: translateX(3px);
}

.footer-contact-row {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 12px;
}

.footer-contact-icon {
    width: 38px;
    height: 38px;
    min-width: 38px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--secondary);
    font-size: 14px;
    transition: .3s;
}

.footer-contact-row:hover .footer-contact-icon {
    background: var(--secondary);
    color: #FFFFFF;
    transform: rotate(-6deg);
}

.footer-contact-row p {
    color: rgba(255, 255, 255, 0.65) !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
    font-weight: 500 !important;
    padding-top: 2px;
}

.footer-social-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.14);
    color: #FFFFFF;
    font-size: 15px;
    transition: .3s;
}

.footer-social-btn:hover {
    background: linear-gradient(135deg, var(--secondary), var(--primary));
    border-color: transparent;
    color: #FFFFFF;
    transform: translateY(-4px);
}

.footer-bottom-border {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    color: rgba(255, 255, 255, 0.55);
    font-size: 15px;
}


.partners-strip {
    overflow: hidden;
    position: relative;
    width: 100%;
}

.partners-strip::before,
.partners-strip::after {
    content: "";
    position: absolute;
    top: 0;
    height: 100%;
    width: 80px;
    z-index: 2;
}

.partners-strip::before {
    left: 0;
    background: rgba(255, 255, 255, 1);
}

.partners-strip::after {
    right: 0;
    background: rgba(255, 255, 255, 1);
}

.partners-track {
    display: inline-flex;
    align-items: center;
    gap: 80px;
    white-space: nowrap;
    animation: partners-scroll 45s linear infinite;
}

.partners-track span {
    font-family: 'Quicksand', sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: var(--dark);
    opacity: 0.55;
}

@keyframes partners-scroll {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-50%);
    }
}

.partners-track img {
    height: 64px;
    width: auto;
    object-fit: contain;
    transition: transform .4s ease, filter .4s ease;
}

.partners-track img:hover {
    transform: scale(1.15) translateY(-6px);
    filter: drop-shadow(0 10px 20px rgba(0, 0, 0, .15));
}

.partners-strip:hover .partners-track {
    animation-play-state: paused;
}



.clients-strip {
    overflow: hidden;
    position: relative;
    width: 100%;
}

.clients-strip::before,
.clients-strip::after {
    content: "";
    position: absolute;
    top: 0;
    height: 100%;
    width: 80px;
    z-index: 2;
}

.clients-strip::before {
    left: 0;
    background: rgba(255, 255, 255, 1);
}

.clients-strip::after {
    right: 0;
    background: rgba(255, 255, 255, 1);
}

.clients-track {
    display: inline-flex;
    align-items: center;
    gap: 80px;
    white-space: nowrap;
    animation: clients-scroll 45s linear infinite;
}

.clients-track img {
    height: 64px;
    width: auto;
    object-fit: contain;
    transition: transform .4s ease, filter .4s ease;
}

.clients-track img:hover {
    transform: scale(1.15) translateY(-6px);
    filter: drop-shadow(0 10px 20px rgba(0, 0, 0, .15));
}

.clients-strip:hover .clients-track {
    animation-play-state: paused;
}

@keyframes clients-scroll {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-50%);
    }
}


.stat-card {
    padding: 24px 16px;
    border-radius: 16px;
    transition: .4s;
}

.stat-card:hover {
    background-color: rgba(255, 255, 255, 0.06);
    transform: translateY(-8px);
}

.stat-card .btn-lg-square {
    transition: .4s;
    animation: stat-icon-pulse 2.4s ease-in-out infinite;
}

@keyframes stat-icon-pulse {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.25);
    }
    50% {
        box-shadow: 0 0 0 12px rgba(255, 255, 255, 0);
    }
}

.stat-card:hover .btn-lg-square {
    transform: scale(1.12) rotate(8deg);
}

.wd-card {
    transition: .4s;
    cursor: default;
}

.wd-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px rgba(0, 0, 0, .12) !important;
}

.wd-card i {
    transition: .4s;
}

.wd-card:hover i {
    color: var(--primary) !important;
    transform: scale(1.15);
}

.wd-card p {
    font-size: 16px !important;
}

.wd-card img {
    transition: transform .4s ease, filter .4s ease;
}

.wd-card:hover img {
    transform: scale(1.12);
    filter: drop-shadow(0 10px 20px rgba(0, 0, 0, .15));
}

.approach-icon {
    transition: .4s;
}

.approach-icon:hover {
    transform: scale(1.12) rotate(-8deg);
    background-color: var(--primary) !important;
}

.cta-spacer {
    margin-bottom: 60px;
}



.sticky-sidebar {
    position: sticky;
    top: 110px;
}

.sidebar-nav a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    border-radius: 10px;
    color: var(--dark);
    font-weight: 700;
    font-size: 15px;
    text-decoration: none;
    transition: .3s;
    margin-bottom: 6px;
}

.sidebar-nav a i {
    color: var(--primary);
    width: 20px;
    text-align: center;
}

.sidebar-nav a:hover {
    background: var(--light);
    color: var(--primary);
    transform: translateX(4px);
}

.content-card {
    background: #FFFFFF;
    border-left: 4px solid var(--primary);
    border-radius: 12px;
    box-shadow: 0 10px 35px rgba(0,0,0,.06);
    padding: 40px;
    margin-bottom: 32px;
    scroll-margin-top: 110px;
}

.content-card.accent-secondary {
    border-left-color: var(--secondary);
}

.content-card .card-icon {
    width: 56px;
    height: 56px;
    border-radius: 12px;
    background: var(--light);
    color: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    margin-bottom: 18px;
}

.content-card.accent-secondary .card-icon {
    color: var(--secondary);
}


.v-timeline {
    position: relative;
    padding-left: 90px;
}

.v-timeline::before {
    content: "";
    position: absolute;
    left: 34px;
    top: 8px;
    bottom: 8px;
    width: 2px;
    background: repeating-linear-gradient(to bottom, var(--primary) 0, var(--primary) 8px, transparent 8px, transparent 16px);
}

.v-timeline-item {
    position: relative;
    padding-bottom: 70px;
}

.v-timeline-item:last-child {
    padding-bottom: 0;
}

.v-timeline-node {
    position: absolute;
    left: -90px;
    top: 0;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: var(--primary);
    color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    z-index: 1;
    transition: .4s;
}

.v-timeline-item:hover .v-timeline-node {
    background: var(--secondary);
    transform: scale(1.1);
}

@media (max-width: 767.98px) {
    .v-timeline { padding-left: 60px; }
    .v-timeline::before { left: 19px; }
    .v-timeline-node { left: -60px; width: 50px; height: 50px; font-size: 18px; }
}




@keyframes float-bob {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-16px);
    }
}

.floating-icon {
    animation: float-bob 3.5s ease-in-out infinite;
}

/* ==========================================================================
   Image-based icon helpers (recolor toward brand colors via CSS filter)
   ========================================================================== */

.icon-img {
    width: 48px;
    height: 48px;
    object-fit: contain;
}

.tint-primary {
    filter: brightness(0) saturate(100%) invert(20%) sepia(54%) saturate(1955%) hue-rotate(180deg) brightness(95%) contrast(101%);
}

.tint-secondary {
    filter: brightness(0) saturate(100%) invert(64%) sepia(29%) saturate(724%) hue-rotate(60deg) brightness(94%) contrast(88%);
}

.tint-white {
    filter: brightness(0) invert(1);
}

.icon-circle-bg {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: var(--light);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
    transition: .35s;
}

.wd-card:hover .icon-circle-bg {
    background: var(--secondary);
}

.wd-card:hover .icon-circle-bg img {
    filter: brightness(0) invert(1) !important;
}

.floating-icon.delay-1 {
    animation-delay: .5s;
}

.floating-icon.delay-2 {
    animation-delay: 1s;
}

/* ==========================================================================
   Support page — unique layout pieces
   ========================================================================== */

.support-hero {
    position: relative;
    background-color: var(--primary);
    padding: 90px 0 130px;
    overflow: hidden;
}

.support-hero::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 80px;
    background: #FFFFFF;
    clip-path: polygon(0 100%, 100% 0, 100% 100%);
}

.support-hero-icon {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.15);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 24px;
    animation: stat-icon-pulse 2.4s ease-in-out infinite;
}

.support-float-card {
    position: relative;
    margin-top: -90px;
    z-index: 3;
    border-radius: 18px;
    box-shadow: 0 25px 60px rgba(0, 0, 0, .15);
    background: #FFFFFF;
    transition: .4s;
}

.support-float-card:hover {
    transform: translateY(-6px);
}

.pill-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: var(--light);
    border-radius: 50px;
    padding: 14px 24px;
    font-weight: 700;
    color: var(--dark);
    transition: .4s;
}

.pill-badge i {
    color: var(--secondary);
}

.pill-badge:hover {
    background: var(--secondary);
    color: #FFFFFF;
    transform: translateY(-4px) rotate(-1.5deg);
}

.pill-badge:hover i {
    color: #FFFFFF;
}

.process-timeline {
    position: relative;
}

.process-timeline::before {
    content: "";
    position: absolute;
    top: 45px;
    left: 8%;
    right: 8%;
    height: 3px;
    background: repeating-linear-gradient(to right, var(--primary) 0, var(--primary) 10px, transparent 10px, transparent 20px);
}

@media (max-width: 991.98px) {
    .process-timeline::before {
        display: none;
    }
}

.process-step-circle {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    background: var(--primary);
    color: #FFFFFF;
    font-size: 32px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 24px;
    position: relative;
    z-index: 1;
    transition: .4s;
    animation: process-circle-pulse 2.6s ease-in-out infinite;
}

@keyframes process-circle-pulse {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(16, 88, 162, 0.25);
    }
    50% {
        box-shadow: 0 0 0 14px rgba(16, 88, 162, 0);
    }
}

.process-step:hover .process-step-circle {
    background: var(--secondary);
    transform: scale(1.1) rotate(-6deg);
}


.why-choose {
    padding: 100px 0;
    background: #fff;
    overflow: hidden;
    position: relative;
}

.why-choose .container {
    width: 1320px;
    max-width: 95%;
    margin: auto;
}

.section-title {
    text-align: center;
    margin-bottom: 70px;
}

.section-title span {
    display: inline-block;
    color: var(--secondary);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 2px;
    margin-bottom: 12px;
}

.section-title h2 {
    font-size: 34px;
    font-weight: 700;
    color: var(--dark);
    margin-bottom: 18px;
}

.section-title h2 span {
    color: var(--secondary);
}

.section-title p {
    max-width: 760px;
    margin: auto;
    color: #666;
    line-height: 1.8;
    font-size: 16px;
}

.why-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
}

.why-column {
    width: 30%;
    display: flex;
    flex-direction: column;
    gap: 35px;
}

.why-card {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 28px;
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, .08);
    transition: .4s;
    position: relative;
}

.why-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px rgba(16, 88, 162, .15);
}

.icon {
    width: 72px;
    height: 72px;
    min-width: 72px;
    border-radius: 50%;
    background: #eef8f1;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: .4s;
}

.icon i {
    color: var(--secondary);
    font-size: 28px;
}

.icon img {
    width: 34px;
    height: 34px;
    object-fit: contain;
}

.why-card:hover .icon {
    background: var(--secondary);
}

.why-card:hover .icon img {
    filter: brightness(0) invert(1);
}

.content h4 {
    color: var(--dark);
    font-size: 22px;
    margin-bottom: 10px;
}

.content p {
    color: #666;
    line-height: 1.8;
    font-size: 15px;
}

.center-image {
    width: 40%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.circle {
    width: 520px;
    height: 520px;
    border-radius: 50%;
    background: linear-gradient(135deg,#f7fbff,#edf7ff);
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.circle::before {
    content: "";
    position: absolute;
    width: 620px;
    height: 620px;
    border: 2px dashed #d7e4ef;
    border-radius: 50%;
    animation: rotateRing 30s linear infinite;
}

.circle::after {
    content: "";
    position: absolute;
    width: 440px;
    height: 440px;
    border-radius: 50%;
    border: 1px solid rgba(79,131,95,.2);
}

.circle img {
    width: 430px;
    max-width: 100%;
    position: relative;
    z-index: 10;
    animation: floatImage 4s ease-in-out infinite;
}

.floating {
    position: absolute;
    width: 65px;
    height: 65px;
    border-radius: 50%;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 15px 35px rgba(0,0,0,.12);
    z-index: 20;
    animation: floating 4s ease-in-out infinite;
}

.floating i {
    color: var(--dark);
    font-size: 24px;
}

.floating img {
    width: 30px;
    height: 30px;
    object-fit: contain;
}

.one {
    top: 25px;
    left: 70px;
}

.two {
    top: 100px;
    right: -10px;
}

.three {
    bottom: 80px;
    left: -15px;
}

.four {
    bottom: 35px;
    right: 80px;
}

@keyframes rotateRing {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

@keyframes floatImage {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-15px); }
    100% { transform: translateY(0px); }
}

@keyframes floating {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-10px); }
    100% { transform: translateY(0px); }
}

@media (max-width: 1200px) {
    .circle { width: 450px; height: 450px; }
    .circle::before { width: 530px; height: 530px; }
    .circle::after { width: 380px; height: 380px; }
    .circle img { width: 360px; }
}

@media (max-width: 992px) {
    .why-wrapper { flex-direction: column; }
    .center-image { width: 100%; order: -1; margin-bottom: 40px; }
    .why-column { width: 100%; }
    .circle { width: 360px; height: 360px; }
    .circle::before { width: 420px; height: 420px; }
    .circle::after { width: 300px; height: 300px; }
    .circle img { width: 280px; }
    .section-title h2 { font-size: 34px; }
}

@media (max-width: 576px) {
    .why-choose { padding: 70px 0; }
    .section-title h2 { font-size: 28px; }
    .circle { width: 280px; height: 280px; }
    .circle::before { width: 330px; height: 330px; }
    .circle::after { width: 230px; height: 230px; }
    .circle img { width: 220px; }
    .icon { width: 60px; height: 60px; min-width: 60px; }
    .icon i { font-size: 22px; }
    .content h4 { font-size: 18px; }
}

.about-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 70px;
}

.section-subtitle {
    display: inline-block;
    color: var(--secondary);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 15px;
}

.about-content h2 {
    font-size: 34px;
    color: var(--dark);
    line-height: 1.25;
    margin-bottom: 22px;
}

.about-content h2 span {
    color: var(--secondary);
}

.about-content p {
    font-size: 16px;
    line-height: 28px;
    color: #5B6472;
    margin-bottom: 35px;
}

.about-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    margin-bottom: 38px;
}

.about-features .feature {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 18px;
    border: 1px solid #E5EDF2;
    border-radius: 12px;
    transition: .3s;
}

.about-features .feature:hover {
    border-color: var(--secondary);
}

.about-features .feature i {
    width: 52px;
    height: 52px;
    min-width: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--secondary));
    color: #FFFFFF;
    font-size: 20px;
    transition: .35s;
}

.about-features .feature:hover i {
    transform: scale(1.05);
}

.about-features .feature span {
    font-weight: 500;
    color: var(--dark);
    line-height: 28px;
    font-size: 15px;
}

.about-btn {
    display: inline-block;
    padding: 15px 35px;
    background-color: var(--secondary);
    color: #FFFFFF;
    text-decoration: none;
    border-radius: 50px;
    font-weight: 700;
    transition: .35s;
}

.about-btn:hover {
    background-color: #3d6949;
    color: #FFFFFF;
    transform: translateY(-4px);
    box-shadow: 0 15px 35px rgba(79, 131, 95, .35);
}

.about-image {
    position: relative;
}

.about-image .image-box {
    overflow: hidden;
    border-radius: 25px;
}

.about-image .image-box img {
    width: 100%;
    display: block;
    border-radius: 25px;
    transition: .5s;
}

.about-image .image-box:hover img {
    transform: scale(1.05);
}

.experience-card {
    position: absolute;
    left: -30px;
    bottom: 40px;
    background: #FFFFFF;
    padding: 25px;
    border-radius: 18px;
    text-align: center;
    box-shadow: 0 15px 40px rgba(0, 0, 0, .12);
    animation: experienceCardFloat 4s ease-in-out infinite;
}

.experience-card h3 {
    font-size: 42px;
    color: var(--primary);
    margin-bottom: 5px;
}

.experience-card p {
    color: #5B6472;
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 0;
}

@keyframes experienceCardFloat {
    0%, 100% { transform: translateY(0); }
    50%      { transform: translateY(-10px); }
}

@media (max-width: 991.98px) {
    .about-wrapper { grid-template-columns: 1fr; }
    .about-content { order: 2; }
    .about-image { order: 1; margin-bottom: 50px; }
    .about-content h2 { font-size: 30px; }
    .about-features { grid-template-columns: 1fr; }
    .experience-card { left: 20px; bottom: 20px; }
}

@media (max-width: 575.98px) {
    .about-content h2 { font-size: 28px; }
    .about-content p { font-size: 16px; line-height: 28px; }
    .about-features .feature { padding: 14px; }
}


.about-hero {
    position: relative;
    background:
        linear-gradient(180deg, rgba(26,42,54,.82), rgba(26,42,54,.7)),
        url(../img/web\ site\ team-01.jpg) center center / cover no-repeat;
    padding: 130px 0 110px;
    overflow: hidden;
}

.about-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle, rgba(255,255,255,.05) 1px, transparent 1px) 0 0 / 26px 26px;
    pointer-events: none;
}

.about-hero .breadcrumb-item a,
.about-hero .breadcrumb-item.active {
    font-weight: 600;
}

.about-trust-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 38px;
    position: relative;
    z-index: 1;
}

.about-trust-item {
    display: flex;
    align-items: baseline;
    gap: 8px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.18);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    padding: 12px 22px;
    border-radius: 50px;
    color: rgba(255, 255, 255, 0.85);
    font-size: 14px;
    font-weight: 600;
}

.about-trust-item strong {
    color: #FFFFFF;
    font-size: 20px;
    font-weight: 700;
}

.section-divider-nodes {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 130px;
    margin: 0 auto 16px;
}

.section-divider-nodes span {
    width: 6px;
    height: 6px;
    min-width: 6px;
    border-radius: 50%;
    background: var(--secondary);
}

.section-divider-nodes .divider-line {
    flex: 1;
    height: 2px;
    background: linear-gradient(90deg, var(--secondary), var(--primary));
    border-radius: 2px;
}

.section-divider-nodes.align-start {
    margin: 0 0 16px;
}

.check-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin: 26px 0 32px;
}

.check-list-item {
    display: flex;
    align-items: center;
    gap: 14px;
}

.check-list-item .check-icon {
    width: 34px;
    height: 34px;
    min-width: 34px;
    border-radius: 50%;
    background: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
}

.check-list-item .check-icon i {
    color: #FFFFFF;
    font-size: 13px;
}

.check-list-item span {
    font-weight: 600;
    color: var(--dark);
    font-size: 17px;
}

.cta-premium {
    position: relative;
    background: linear-gradient(120deg, var(--primary) 0%, #0c4174 100%);
    overflow: hidden;
}

.cta-premium::before {
    content: "";
    position: absolute;
    top: -120px;
    right: -80px;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(79,131,95,.35), transparent 70%);
    pointer-events: none;
}

.cta-premium::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle, rgba(255,255,255,.06) 1px, transparent 1px) 0 0 / 24px 24px;
    pointer-events: none;
}


.why-simple-card {
    height: 100%;
    padding: 40px 28px;
    background: #FFFFFF;
    border: 1px solid #E5EDF2;
    border-radius: 16px;
    text-align: center;
    transition: .4s;
}

.why-simple-card:hover {
    transform: translateY(-10px);
    border-color: transparent;
    box-shadow: 0 20px 50px rgba(16, 88, 162, .12);
}

.why-simple-icon {
    width: 78px;
    height: 78px;
    margin: 0 auto 24px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--secondary));
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .4s;
}

.why-simple-icon i {
    font-size: 30px;
    color: #FFFFFF;
}

.why-simple-card:hover .why-simple-icon {
    transform: scale(1.08) rotate(-6deg);
}

.why-simple-card h5 {
    font-size: 19px;
    color: var(--dark);
    margin-bottom: 12px;
}

.why-simple-card p {
    font-size: 15px !important;
    line-height: 1.7 !important;
    color: #666;
    margin-bottom: 0;
}

@media (max-width: 767.98px) {
    .why-simple-card {
        padding: 32px 22px;
    }
}

.why-split-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 70px;
}

.why-split-content h2 {
    font-size: 34px;
    color: var(--dark);
    line-height: 1.25;
    margin: 15px 0 20px;
}

.why-split-content h2 span {
    color: var(--secondary);
}

.why-split-content > p {
    font-size: 17px;
    line-height: 30px;
    color: #5B6472;
    margin-bottom: 35px;
}

.why-split-list {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.why-split-item {
    display: flex;
    align-items: flex-start;
    gap: 18px;
}

.why-split-icon {
    width: 62px;
    height: 62px;
    min-width: 62px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--secondary));
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .35s;
}

.why-split-icon i {
    color: #FFFFFF;
    font-size: 24px;
}

.why-split-item:hover .why-split-icon {
    transform: scale(1.08) rotate(-6deg);
}

.why-split-item h5 {
    font-size: 21px;
    color: var(--dark);
    margin-bottom: 8px;
}

.why-split-item p {
    font-size: 16px !important;
    line-height: 1.75 !important;
    color: #666;
    margin-bottom: 0;
}

.why-split-image {
    position: relative;
}

.why-split-image-box {
    overflow: hidden;
    border-radius: 25px;
}

.why-split-image-box img {
    width: 100%;
    display: block;
    border-radius: 25px;
    transition: .5s;
}

.why-split-image-box:hover img {
    transform: scale(1.05);
}

.why-split-badge {
    position: absolute;
    left: -30px;
    bottom: 40px;
    background: #FFFFFF;
    padding: 25px;
    border-radius: 18px;
    text-align: center;
    box-shadow: 0 15px 40px rgba(0, 0, 0, .12);
    animation: experienceCardFloat 4s ease-in-out infinite;
}

.why-split-badge h3 {
    font-size: 42px;
    color: var(--primary);
    margin-bottom: 5px;
}

.why-split-badge p {
    color: #5B6472;
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 0;
}

@media (max-width: 991.98px) {
    .why-split-wrapper { grid-template-columns: 1fr; }
    .why-split-image { order: -1; margin-bottom: 50px; }
    .why-split-content h2 { font-size: 30px; }
    .why-split-badge { left: 20px; bottom: 20px; }
}

@media (max-width: 575.98px) {
    .why-split-content h2 { font-size: 28px; }
    .why-split-content > p { font-size: 16px; line-height: 28px; }
}


.dcs-section {
    background: linear-gradient(180deg, #f8fbff 0%, #eef6fb 100%);
}

.dcs-image-card {
    position: relative;
}

.dcs-image-card img {
    width: 100%;
    height: 380px;
    object-fit: cover;
    border-radius: 24px;
    display: block;
    box-shadow: 0 25px 50px rgba(0, 0, 0, .12);
    transition: .4s;
}

.dcs-image-card:hover img {
    transform: scale(1.03);
}

.dcs-floating-icon {
    position: absolute;
    width: 70px;
    height: 70px;
    background: #FFFFFF;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 15px 35px rgba(0, 0, 0, .15);
    animation: float-bob 4s ease-in-out infinite;
}

.dcs-floating-icon i {
    color: var(--primary);
    font-size: 26px;
}

.dcs-icon-top {
    top: -20px;
    left: -20px;
}

.dcs-icon-bottom {
    bottom: -20px;
    right: -20px;
    animation-delay: 2s;
}

.dcs-tag {
    display: inline-block;
    padding: 8px 18px;
    background: #eaf4ee;
    color: var(--secondary);
    border-radius: 30px;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 1px;
    margin-bottom: 18px;
}

.dcs-title {
    font-size: 2.1rem;
    color: var(--dark);
    line-height: 1.25;
    margin-bottom: 20px;
}

.dcs-text {
    font-size: 17px !important;
    color: #667085;
    line-height: 1.9 !important;
    margin-bottom: 30px;
}

.dcs-feature-box {
    background: #FFFFFF;
    border: 1px solid #e7eef5;
    border-radius: 18px;
    padding: 18px 20px;
    display: flex;
    align-items: center;
    gap: 16px;
    height: 100%;
    font-size: 17px;
    font-weight: 600;
    color: var(--dark);
    transition: .35s;
}

.dcs-feature-box i {
    width: 48px;
    height: 48px;
    min-width: 48px;
    border-radius: 50%;
    background: var(--primary);
    color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    transition: .35s;
}

.dcs-feature-box:hover {
    background: var(--primary);
    border-color: var(--primary);
    color: #FFFFFF;
    transform: translateY(-6px);
}

.dcs-feature-box:hover i {
    background: #FFFFFF;
    color: var(--primary);
}

@media (max-width: 991.98px) {
    .dcs-image-card img { height: 300px; }
    .dcs-title { font-size: 1.75rem; }
}

@media (max-width: 767.98px) {
    .dcs-image-card img { height: 240px; }
    .dcs-floating-icon { width: 55px; height: 55px; }
    .dcs-floating-icon i { font-size: 20px; }
    .dcs-icon-top { top: -12px; left: -12px; }
    .dcs-icon-bottom { bottom: -12px; right: -12px; }
    .dcs-title { font-size: 1.4rem; }
    .dcs-text { font-size: 17px !important; }
    .dcs-feature-box { padding: 14px 16px; font-size: 17px; }
    .dcs-feature-box i { width: 40px; height: 40px; min-width: 40px; font-size: 15px; }
}

.dcs-mgmt-section {
    background: #f8fbfd;
}

.dcs-service-card {
    position: relative;
    background: #FFFFFF;
    border-radius: 20px;
    padding: 35px 30px;
    border: 1px solid #e7eef5;
    box-shadow: 0 15px 40px rgba(0, 0, 0, .06);
    transition: .35s;
    height: 100%;
}

.dcs-service-card:hover {
    transform: translateY(-8px);
    border-color: var(--primary);
    box-shadow: 0 25px 50px rgba(16, 88, 162, .18);
}

.dcs-service-icon {
    width: 70px;
    height: 70px;
    border-radius: 18px;
    background: linear-gradient(135deg, var(--secondary), var(--primary));
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 25px;
}

.dcs-service-icon i {
    color: #FFFFFF;
    font-size: 28px;
}

.dcs-service-number {
    position: absolute;
    top: 25px;
    right: 25px;
    font-size: 42px;
    font-weight: 700;
    color: #edf2f7;
    line-height: 1;
}

.dcs-service-card h5 {
    font-size: 22px;
    color: var(--dark);
    margin-bottom: 12px;
}

.dcs-service-card p {
    color: #667085;
    margin: 0;
    line-height: 1.8;
}

.dcs-service-card:hover h5,
.dcs-service-card:hover p {
    color: var(--primary);
}

@media (max-width: 767.98px) {
    .dcs-service-card { padding: 30px 25px; }
    .dcs-service-number { font-size: 34px; }
}

.cta-banner {
    position: relative;
    padding: 70px 0;
    background: url("../img/wireless-network-banner.jpg") center center/cover no-repeat;
}

.cta-banner::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,.55);
}

.cta-banner .container {
    position: relative;
    z-index: 2;
}

.cta-banner .row {
    min-height: 260px;
    align-items: center;
}

.cta-banner .col-lg-7 {
    text-align: left;
}

.cta-tag {
    display: inline-block;
    padding: 7px 18px;
    border: 1px solid rgba(255,255,255,.3);
    border-radius: 30px;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 1px;
    margin-bottom: 18px;
}

.cta-banner h2 {
    color: #fff;
    font-size: 44px;
    font-weight: 700;
    margin-bottom: 18px;
    text-align: left;
}

.cta-banner p {
    color: #fff;
    font-size: 17px;
    line-height: 1.8;
    margin-bottom: 30px;
    text-align: left;
    max-width: 650px;
}

.cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 13px 30px;
    background: #245475;
    color: #fff;
    text-decoration: none;
    border-radius: 50px;
    font-weight: 600;
}

.cta-btn:hover {
    background: #427454;
    color: #fff;
}

@media (max-width: 991px) {
    .cta-banner { padding: 60px 0; }
    .cta-banner .col-lg-7 { text-align: left; }
    .cta-banner h2,
    .cta-banner p { text-align: left; }
}

@media (max-width: 767px) {
    .cta-banner { padding: 50px 0; }
    .cta-banner h2 { font-size: 30px; }
    .cta-banner p { font-size: 17px; }
}


/* ==========================================================================
   Server & Storage — "Benefits at a Glance" dark numbered icon grid
   Scoped "dcs-benefit-*" so it can't collide with anything else.
   ========================================================================== */

.dcs-benefits {
    background-color: var(--dark);
    padding: 100px 0;
}

.dcs-benefits-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.dcs-benefit-card {
    padding: 40px 32px;
    border-right: 1px solid rgba(255, 255, 255, 0.08);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    text-align: center;
    transition: .35s;
}

.dcs-benefits-grid > .dcs-benefit-card:nth-child(4n) {
    border-right: none;
}

.dcs-benefit-card:hover {
    background-color: rgba(255, 255, 255, 0.03);
    transform: translateY(-10px);
}

.dcs-benefit-num {
    font-size: 13px;
    font-weight: 700;
    color: var(--secondary);
    letter-spacing: 1px;
    margin-bottom: 10px;
    display: block;
}

.dcs-benefit-icon {
    width: 84px;
    height: 84px;
    margin: 0 auto 20px;
    animation: dcs-benefit-float 3.5s ease-in-out infinite;
    transition: transform .4s ease;
}

.dcs-benefit-icon svg {
    width: 100%;
    height: 100%;
    display: block;
    filter: drop-shadow(0 4px 10px rgba(16, 88, 162, .25));
}

.dcs-benefit-card:hover .dcs-benefit-icon {
    transform: scale(1.15) rotate(-4deg);
}

.dcs-benefit-card h6 {
    color: #FFFFFF;
    margin-bottom: 8px;
    font-size: 17px;
}

.dcs-benefit-card p {
    color: rgba(255, 255, 255, 0.55) !important;
    font-size: 17px !important;
    font-weight: 500 !important;
    line-height: 1.6 !important;
    margin-bottom: 0;
}

.dcs-benefits-grid > .dcs-benefit-card:nth-child(1) .dcs-benefit-icon { animation-delay: 0s; }
.dcs-benefits-grid > .dcs-benefit-card:nth-child(2) .dcs-benefit-icon { animation-delay: .3s; }
.dcs-benefits-grid > .dcs-benefit-card:nth-child(3) .dcs-benefit-icon { animation-delay: .6s; }
.dcs-benefits-grid > .dcs-benefit-card:nth-child(4) .dcs-benefit-icon { animation-delay: .9s; }
.dcs-benefits-grid > .dcs-benefit-card:nth-child(5) .dcs-benefit-icon { animation-delay: 1.2s; }
.dcs-benefits-grid > .dcs-benefit-card:nth-child(6) .dcs-benefit-icon { animation-delay: 1.5s; }
.dcs-benefits-grid > .dcs-benefit-card:nth-child(7) .dcs-benefit-icon { animation-delay: 1.8s; }
.dcs-benefits-grid > .dcs-benefit-card:nth-child(8) .dcs-benefit-icon { animation-delay: 2.1s; }

@keyframes dcs-benefit-float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

@media (max-width: 991.98px) {
    .dcs-benefits-grid { grid-template-columns: repeat(2, 1fr); }
    .dcs-benefits-grid > .dcs-benefit-card:nth-child(4n) { border-right: 1px solid rgba(255, 255, 255, 0.08); }
    .dcs-benefits-grid > .dcs-benefit-card:nth-child(2n) { border-right: none; }
}

@media (max-width: 575.98px) {
    .dcs-benefits-grid { grid-template-columns: 1fr; }
    .dcs-benefits-grid > .dcs-benefit-card { border-right: none !important; }
}


/* ==========================================================================
   Microsoft Advanced Infrastructure page — centered icon-card row
   (used for the 4-up "Our Infrastructure Services" grid)
   ========================================================================== */

.dcs-icon-card {
    background: #FFFFFF;
    border-radius: 20px;
    padding: 40px 30px;
    text-align: center;
    height: 100%;
    box-shadow: 0 15px 40px rgba(0, 0, 0, .06);
    transition: .35s;
}

.dcs-icon-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(16, 88, 162, .15);
}

.dcs-icon-circle {
    width: 80px;
    height: 80px;
    margin: 0 auto 24px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--secondary));
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .35s;
}

.dcs-icon-circle i {
    color: #FFFFFF;
    font-size: 30px;
}

.dcs-icon-card:hover .dcs-icon-circle {
    transform: scale(1.08) rotate(-6deg);
}

.dcs-icon-card h5 {
    font-size: 20px;
    color: var(--dark);
    margin-bottom: 12px;
}

.dcs-icon-card p {
    color: #667085;
    font-size: 17px;
    line-height: 1.75;
    margin-bottom: 0;
}

@media (max-width: 767.98px) {
    .dcs-icon-card {
        padding: 32px 22px;
    }
}


/* ==========================================================================
   Microsoft Advanced Infrastructure page — image-topped expertise card
   (used for the 8-up "Infrastructure Expertise" grid)
   ========================================================================== */

.dcs-expert-card {
    position: relative;
    background: #FFFFFF;
    border-radius: 20px;
    overflow: hidden;
    height: 100%;
    box-shadow: 0 15px 40px rgba(0, 0, 0, .08);
    transition: .4s;
}

.dcs-expert-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px rgba(16, 88, 162, .15);
}

.dcs-expert-card img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block;
    transition: .5s;
}

.dcs-expert-card:hover img {
    transform: scale(1.06);
}

.dcs-expert-icon {
    width: 70px;
    height: 70px;
    background: #FFFFFF;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 185px;
    left: 24px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .12);
    transition: .35s;
}

.dcs-expert-icon i {
    font-size: 26px;
    color: var(--primary);
}

.dcs-expert-card:hover .dcs-expert-icon {
    background: var(--secondary);
}

.dcs-expert-card:hover .dcs-expert-icon i {
    color: #FFFFFF;
}

.dcs-expert-card h5 {
    margin: 55px 24px 12px;
    font-size: 19px;
    color: var(--dark);
    min-height: 52px;
}

.dcs-expert-card p {
    margin: 0 24px 24px;
    color: #667085;
    font-size: 17px;
    line-height: 1.75;
}

@media (max-width: 767.98px) {
    .dcs-expert-card img { height: 190px; }
    .dcs-expert-icon { top: 155px; width: 60px; height: 60px; }
    .dcs-expert-icon i { font-size: 22px; }
    .dcs-expert-card h5 { margin-top: 45px; font-size: 18px; }
}

.ss-intro {
    padding: 100px 0;
    background: #FFFFFF;
}

.ss-image {
    position: relative;
}

.ss-image img {
    width: 100%;
    height: 520px;
    object-fit: cover;
    border-radius: 25px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, .12);
}

.ss-experience-box {
    position: absolute;
    bottom: 30px;
    left: 30px;
    background: var(--primary);
    color: #FFFFFF;
    padding: 25px;
    border-radius: 18px;
    width: 220px;
    box-shadow: 0 20px 40px rgba(16, 88, 162, .3);
}

.ss-experience-box h3 {
    margin: 0;
    font-size: 48px;
    font-weight: 700;
    color: #FFFFFF;
}

.ss-experience-box span {
    display: block;
    margin-top: 6px;
    font-size: 15px;
    line-height: 1.5;
    font-weight: 500;
}

.ss-tag {
    display: inline-block;
    background: #eaf4ee;
    color: var(--secondary);
    padding: 8px 18px;
    border-radius: 30px;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: .5px;
    margin-bottom: 20px;
}

.ss-title {
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--dark);
    margin-bottom: 20px;
    line-height: 1.25;
}

.ss-text {
    color: #667085;
    line-height: 1.9;
    margin-bottom: 18px;
    font-size: 17px;
}

.ss-feature {
    background: #f8fafc;
    border: 1px solid #e5edf4;
    border-radius: 15px;
    padding: 18px 20px;
    font-weight: 600;
    color: var(--dark);
    display: flex;
    align-items: center;
    gap: 12px;
    transition: .3s;
    height: 100%;
}

.ss-feature i {
    color: var(--secondary);
    font-size: 20px;
}

.ss-feature:hover {
    background: var(--primary);
    color: #FFFFFF;
    transform: translateY(-5px);
}

.ss-feature:hover i {
    color: #FFFFFF;
}

.ss-stats-row {
    display: flex;
    gap: 40px;
    margin: 40px 0;
    flex-wrap: wrap;
}

.ss-stat-item h4 {
    color: var(--primary);
    font-size: 34px;
    font-weight: 700;
    margin-bottom: 5px;
}

.ss-stat-item span {
    color: #777;
    font-size: 14px;
}

.ss-btn {
    display: inline-block;
    background: var(--primary);
    color: #FFFFFF;
    text-decoration: none;
    padding: 15px 34px;
    border-radius: 50px;
    font-weight: 700;
    transition: .3s;
}

.ss-btn:hover {
    background: var(--secondary);
    color: #FFFFFF;
    transform: translateY(-3px);
}

@media (max-width: 991.98px) {
    .ss-intro { padding: 80px 0; }
    .ss-image img { height: 420px; }
    .ss-title { font-size: 2rem; }
}

@media (max-width: 767.98px) {
    .ss-image img { height: 280px; }
    .ss-experience-box { width: 180px; padding: 18px; bottom: 15px; left: 15px; }
    .ss-experience-box h3 { font-size: 34px; }
    .ss-title { font-size: 1.6rem; }
    .ss-stats-row { gap: 25px; }
}


.ss-benefits {
    background: var(--dark);
    padding: 100px 0;
    position: relative;
    overflow: hidden;
}

.ss-benefits::before {
    content: "";
    position: absolute;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(16, 88, 162, .15) 0%, transparent 70%);
    top: -180px;
    left: -150px;
}

.ss-benefits::after {
    content: "";
    position: absolute;
    width: 450px;
    height: 450px;
    background: radial-gradient(circle, rgba(79, 131, 95, .15) 0%, transparent 70%);
    bottom: -180px;
    right: -120px;
}

.ss-benefits .container {
    position: relative;
    z-index: 2;
}

.ss-benefits h1 {
    color: #FFFFFF;
    font-size: 2.1rem;
}

.ss-benefits-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

.ss-benefit-card {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 18px;
    padding: 35px 28px;
    transition: .35s;
    position: relative;
    overflow: hidden;
    text-align: center;
}

.ss-benefit-card:hover {
    transform: translateY(-10px);
    border-color: var(--primary);
    box-shadow: 0 18px 45px rgba(0, 0, 0, .35);
}

.ss-benefit-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 4px;
    height: 0;
    background: linear-gradient(var(--primary), var(--secondary));
    transition: .4s;
}

.ss-benefit-card:hover::before {
    height: 100%;
}

.ss-benefit-num {
    display: none;
}

.ss-benefit-icon {
    width: 70px;
    height: 70px;
    margin: 0 auto 22px;
    animation: ss-benefit-float 3.5s ease-in-out infinite;
}

.ss-benefit-icon svg {
    width: 70px;
    height: 70px;
    display: block;
    filter: drop-shadow(0 4px 10px rgba(16, 88, 162, .25));
}

.ss-benefit-card:hover .ss-benefit-icon {
    transform: scale(1.08) rotate(-4deg);
}

.ss-benefits-grid > .ss-benefit-card:nth-child(1) .ss-benefit-icon { animation-delay: 0s; }
.ss-benefits-grid > .ss-benefit-card:nth-child(2) .ss-benefit-icon { animation-delay: .3s; }
.ss-benefits-grid > .ss-benefit-card:nth-child(3) .ss-benefit-icon { animation-delay: .6s; }
.ss-benefits-grid > .ss-benefit-card:nth-child(4) .ss-benefit-icon { animation-delay: .9s; }
.ss-benefits-grid > .ss-benefit-card:nth-child(5) .ss-benefit-icon { animation-delay: 1.2s; }
.ss-benefits-grid > .ss-benefit-card:nth-child(6) .ss-benefit-icon { animation-delay: 1.5s; }
.ss-benefits-grid > .ss-benefit-card:nth-child(7) .ss-benefit-icon { animation-delay: 1.8s; }
.ss-benefits-grid > .ss-benefit-card:nth-child(8) .ss-benefit-icon { animation-delay: 2.1s; }

@keyframes ss-benefit-float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

.ss-benefit-card h6 {
    color: #FFFFFF;
    font-size: 21px;
    font-weight: 700;
    margin-bottom: 15px;
    line-height: 1.4;
}

.ss-benefit-card p {
    color: #c8d1dc;
    font-size: 17px;
    line-height: 1.8;
    margin: 0;
}

@media (max-width: 1200px) {
    .ss-benefits-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 767.98px) {
    .ss-benefits { padding: 70px 0; }
    .ss-benefits h1 { font-size: 1.5rem; }
    .ss-benefits-grid { grid-template-columns: 1fr; gap: 20px; }
    .ss-benefit-card { padding: 28px 22px; }
    .ss-benefit-icon, .ss-benefit-icon svg { width: 60px; height: 60px; }
}


.bdr-services {
    background: var(--dark);
    padding: 100px 0;
    position: relative;
    overflow: hidden;
}

.bdr-services::before {
    content: "";
    position: absolute;
    width: 480px;
    height: 480px;
    background: radial-gradient(circle, rgba(16, 88, 162, .15) 0%, transparent 70%);
    top: -180px;
    right: -140px;
}

.bdr-services::after {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    background: radial-gradient(circle, rgba(79, 131, 95, .15) 0%, transparent 70%);
    bottom: -160px;
    left: -120px;
}

.bdr-services .container {
    position: relative;
    z-index: 2;
}

.bdr-services h1 {
    color: #FFFFFF;
    font-size: 2.1rem;
}

.bdr-services-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 24px;
}

.bdr-service-card {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 16px;
    padding: 32px 20px;
    text-align: center;
    transition: .35s;
}

.bdr-service-card:hover {
    transform: translateY(-8px);
    border-color: var(--primary);
    background: rgba(255, 255, 255, .05);
    box-shadow: 0 18px 40px rgba(0, 0, 0, .3);
}

.bdr-service-icon {
    width: 58px;
    height: 58px;
    margin: 0 auto 18px;
    border-radius: 50%;
    background: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .35s;
}

.bdr-service-icon i {
    color: #FFFFFF;
    font-size: 21px;
}

.bdr-service-card:hover .bdr-service-icon {
    transform: scale(1.1) rotate(-6deg);
}

.bdr-service-card h6 {
    color: #FFFFFF;
    font-size: 14.5px;
    line-height: 1.4;
    margin-bottom: 0;
}

@media (max-width: 1200px) {
    .bdr-services-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 767.98px) {
    .bdr-services { padding: 70px 0; }
    .bdr-services h1 { font-size: 1.5rem; }
    .bdr-services-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
    .bdr-service-card { padding: 26px 16px; }
}

@media (max-width: 480px) {
    .bdr-services-grid { grid-template-columns: 1fr; }
}

/* ==========================================================================
   RFID Solutions page — Types of RFID Systems: horizontal split-icon cards
   on a light background. Distinct on purpose from every other icon-grid on
   the site (which are all vertical icon-on-top): here the icon sits beside
   the copy in a large tinted rounded-square, with a colored top accent bar
   distinguishing Passive (blue) from Active (green).
   ========================================================================== */

.rfid-split-card {
    display: flex;
    align-items: flex-start;
    gap: 24px;
    background: #FFFFFF;
    border-radius: 20px;
    padding: 36px 32px;
    height: 100%;
    box-shadow: 0 15px 40px rgba(0, 0, 0, .06);
    border-top: 4px solid transparent;
    transition: .35s;
}

.rfid-split-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(16, 88, 162, .15);
}

.rfid-split-primary {
    border-top-color: var(--primary);
}

.rfid-split-secondary {
    border-top-color: var(--secondary);
}

.rfid-split-icon {
    width: 96px;
    height: 96px;
    min-width: 96px;
    border-radius: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .35s;
}

.rfid-split-primary .rfid-split-icon {
    background: rgba(16, 88, 162, .08);
}

.rfid-split-secondary .rfid-split-icon {
    background: rgba(79, 131, 95, .08);
}

.rfid-split-card:hover .rfid-split-icon {
    transform: scale(1.06) rotate(-4deg);
}

.rfid-split-icon svg {
    width: 56px;
    height: 56px;
    display: block;
}

.rfid-split-content h5 {
    font-size: 22px;
    color: var(--dark);
    margin-bottom: 10px;
}

.rfid-split-content p {
    color: #667085;
    font-size: 17px;
    line-height: 1.75;
    margin-bottom: 0;
}

@media (max-width: 767.98px) {
    .rfid-split-card {
        flex-direction: column;
        align-items: flex-start;
        padding: 28px 24px;
    }

    .rfid-split-icon {
        width: 76px;
        height: 76px;
        min-width: 76px;
    }

    .rfid-split-icon svg {
        width: 44px;
        height: 44px;
    }
}

.rfid-app-icon {
    width: 46px;
    height: 46px;
    margin: 0 auto 16px;
    animation: rfid-app-float 3.5s ease-in-out infinite;
}

.rfid-app-icon svg {
    width: 100%;
    height: 100%;
    display: block;
    filter: drop-shadow(0 4px 8px rgba(16, 88, 162, .25));
}

.bdr-service-card:hover .rfid-app-icon {
    transform: scale(1.1) rotate(-6deg);
}

@keyframes rfid-app-float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-6px); }
}

.bdr-services-grid > .bdr-service-card:nth-child(1) .rfid-app-icon { animation-delay: 0s; }
.bdr-services-grid > .bdr-service-card:nth-child(2) .rfid-app-icon { animation-delay: .2s; }
.bdr-services-grid > .bdr-service-card:nth-child(3) .rfid-app-icon { animation-delay: .4s; }
.bdr-services-grid > .bdr-service-card:nth-child(4) .rfid-app-icon { animation-delay: .6s; }
.bdr-services-grid > .bdr-service-card:nth-child(5) .rfid-app-icon { animation-delay: .8s; }
.bdr-services-grid > .bdr-service-card:nth-child(6) .rfid-app-icon { animation-delay: 1s; }
.bdr-services-grid > .bdr-service-card:nth-child(7) .rfid-app-icon { animation-delay: 1.2s; }
.bdr-services-grid > .bdr-service-card:nth-child(8) .rfid-app-icon { animation-delay: 1.4s; }
.bdr-services-grid > .bdr-service-card:nth-child(9) .rfid-app-icon { animation-delay: 1.6s; }
.bdr-services-grid > .bdr-service-card:nth-child(10) .rfid-app-icon { animation-delay: 1.8s; }
.bdr-services-grid > .bdr-service-card:nth-child(11) .rfid-app-icon { animation-delay: 2s; }

.uc-gradient-text {
    background: linear-gradient(90deg, var(--primary), var(--secondary), var(--primary));
    background-size: 200% auto;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: uc-gradient-shift 4s linear infinite;
}

@keyframes uc-gradient-shift {
    0% { background-position: 0% center; }
    100% { background-position: 200% center; }
}

.uc-presence-dot {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--secondary);
    box-shadow: 0 0 0 3px #FFFFFF;
}

.uc-presence-dot::before {
    content: "";
    position: absolute;
    inset: -6px;
    border-radius: 50%;
    border: 2px solid var(--secondary);
    animation: uc-pulse-ring 1.8s ease-out infinite;
}

@keyframes uc-pulse-ring {
    0% { transform: scale(.6); opacity: .9; }
    100% { transform: scale(2.2); opacity: 0; }
}

/* Expanding signal-wave icon — used for the 4 Core Components cards */
.uc-wave-icon {
    position: relative;
    width: 74px;
    height: 74px;
    margin: 0 auto 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(16, 88, 162, .08);
}

.uc-wave-icon i {
    font-size: 28px;
    color: var(--primary);
    position: relative;
    z-index: 2;
}

.uc-wave-icon::before,
.uc-wave-icon::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    border: 2px solid var(--primary);
    opacity: 0;
    animation: uc-wave-expand 2.4s ease-out infinite;
}

.uc-wave-icon::after {
    animation-delay: 1.2s;
}

@keyframes uc-wave-expand {
    0% { transform: scale(1); opacity: .55; }
    100% { transform: scale(1.7); opacity: 0; }
}

.uc-component-card {
    position: relative;
    background: #FFFFFF;
    border-radius: 20px;
    padding: 36px 28px;
    text-align: center;
    height: 100%;
    box-shadow: 0 15px 40px rgba(0, 0, 0, .06);
    transition: .35s;
}

.uc-component-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(16, 88, 162, .15);
}

.uc-component-card:hover .uc-wave-icon {
    transform: scale(1.06);
}

.uc-component-card h5 {
    font-size: 19px;
    color: var(--dark);
    margin-bottom: 10px;
}

.uc-component-card p {
    color: #667085;
    font-size: 15px;
    line-height: 1.75;
    margin-bottom: 0;
}

@media (max-width: 767.98px) {
    .uc-component-card { padding: 28px 20px; }
    .uc-wave-icon { width: 62px; height: 62px; }
    .uc-wave-icon i { font-size: 24px; }
}

/* ==========================================================================
   Unified Communication page — "Secure & Reliable Collaboration" full-bleed
   image band with color overlay and inline icon points. Deliberately
   different from every other section on the page (no card grid, no plain
   gradient block) — a background photo anchors the message instead.
   ========================================================================== */

.uc-collab-band {
    position: relative;
    padding: 90px 0;
    margin-bottom: 50px;
    overflow: hidden;
}

.uc-collab-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}

.uc-collab-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, rgba(16, 88, 162, .93) 0%, rgba(12, 65, 116, .9) 55%, rgba(26, 42, 54, .93) 100%);
    z-index: 1;
}

.uc-collab-band .container {
    position: relative;
    z-index: 2;
}

.uc-collab-point {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    text-align: center;
}

.uc-collab-point-icon {
    width: 62px;
    height: 62px;
    min-width: 62px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .28);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .35s;
}

.uc-collab-point-icon i {
    font-size: 24px;
    color: #FFFFFF;
}

.uc-collab-point:hover .uc-collab-point-icon {
    background: var(--secondary);
    border-color: var(--secondary);
    transform: translateY(-6px);
}

.uc-collab-point h6 {
    color: #FFFFFF;
    font-size: 17px;
    margin-bottom: 0;
}

.uc-collab-point p {
    color: rgba(255, 255, 255, .75);
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 0;
}

@media (max-width: 767.98px) {
    .uc-collab-band { padding: 60px 0; margin-bottom: 30px; }
}

.waf-stat-row {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 8px;
}

.waf-stat-chip {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #FFFFFF;
    border: 1px solid #e7eef5;
    border-radius: 50px;
    padding: 12px 22px 12px 14px;
    box-shadow: 0 10px 30px rgba(16, 88, 162, .08);
    transition: .35s;
}

.waf-stat-chip:hover {
    transform: translateY(-4px);
    border-color: var(--primary);
    box-shadow: 0 15px 35px rgba(16, 88, 162, .18);
}

.waf-stat-chip-icon {
    width: 38px;
    height: 38px;
    min-width: 38px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--secondary));
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    font-size: 15px;
}

.waf-stat-chip strong {
    display: block;
    color: var(--dark);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
}

.waf-stat-chip span {
    display: block;
    color: #8a94a3;
    font-size: 12px;
    font-weight: 600;
}

/* -- Attack-vector "threat grid" band (dark, dotted background) -- */
.waf-threats {
    position: relative;
    background:
        radial-gradient(circle, rgba(255,255,255,.05) 1px, transparent 1px) 0 0 / 26px 26px,
        linear-gradient(160deg, #142230 0%, var(--dark) 55%, #0f1a24 100%);
    padding: 100px 0;
    overflow: hidden;
}

.waf-threats::before {
    content: "";
    position: absolute;
    top: -160px;
    right: -110px;
    width: 380px;
    height: 380px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(16, 88, 162, .3), transparent 70%);
    pointer-events: none;
}

.waf-threats::after {
    content: "";
    position: absolute;
    bottom: -180px;
    left: -120px;
    width: 380px;
    height: 380px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(79, 131, 95, .25), transparent 70%);
    pointer-events: none;
}

.waf-threats .container {
    position: relative;
    z-index: 2;
}

.waf-threats h1 {
    color: #FFFFFF;
    font-size: 2.1rem;
}

.waf-threats-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--secondary);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 12px;
}

.waf-threat-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 22px;
}

.waf-threat-card {
    position: relative;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 16px;
    padding: 30px 22px 26px;
    text-align: center;
    overflow: hidden;
    transition: .35s;
}

.waf-threat-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, var(--primary), var(--secondary));
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .4s ease;
}

.waf-threat-card:hover::before {
    transform: scaleX(1);
}

.waf-threat-card:hover {
    transform: translateY(-8px);
    background: rgba(255, 255, 255, .07);
    box-shadow: 0 20px 45px rgba(0, 0, 0, .35);
    border-color: rgba(255, 255, 255, .18);
}

.waf-threat-num {
    position: absolute;
    top: 14px;
    right: 16px;
    font-size: 12px;
    font-weight: 700;
    color: rgba(255, 255, 255, .25);
    letter-spacing: 1px;
}

.waf-threat-icon {
    width: 58px;
    height: 58px;
    margin: 0 auto 18px;
    border-radius: 16px;
    background: rgba(16, 88, 162, .18);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .35s;
}

.waf-threat-icon i {
    color: #FFFFFF;
    font-size: 22px;
}

.waf-threat-card:hover .waf-threat-icon {
    background: linear-gradient(135deg, var(--primary), var(--secondary));
    transform: scale(1.08) rotate(-6deg);
}

.waf-threat-card h6 {
    color: #FFFFFF;
    font-size: 14.5px;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 0;
}

@media (max-width: 1200px) {
    .waf-threat-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 767.98px) {
    .waf-threats { padding: 70px 0; }
    .waf-threats h1 { font-size: 1.6rem; }
    .waf-threat-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
    .waf-threat-card { padding: 24px 16px 20px; }
}

@media (max-width: 480px) {
    .waf-threat-grid { grid-template-columns: 1fr; }
}

/* -- Real-time protection stat cards (Secure Web Applications section) -- */
.waf-glass-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-top: 40px;
}

.waf-glass-card {
    position: relative;
    background: #FFFFFF;
    border-radius: 18px;
    padding: 32px 26px;
    text-align: center;
    box-shadow: 0 15px 40px rgba(0, 0, 0, .06);
    overflow: hidden;
    transition: .35s;
}

.waf-glass-card::before {
    content: "";
    position: absolute;
    left: 12%;
    right: 12%;
    top: 0;
    height: 3px;
    background: linear-gradient(90deg, transparent, var(--primary), var(--secondary), transparent);
}

.waf-glass-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(16, 88, 162, .16);
}

.waf-glass-icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 18px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(16, 88, 162, .1), rgba(79, 131, 95, .12));
    display: flex;
    align-items: center;
    justify-content: center;
    animation: waf-icon-float 3.6s ease-in-out infinite;
}

.waf-glass-icon i {
    font-size: 24px;
    color: var(--primary);
}

.waf-glass-row > div:nth-child(1) .waf-glass-icon { animation-delay: 0s; }
.waf-glass-row > div:nth-child(2) .waf-glass-icon { animation-delay: .4s; }
.waf-glass-row > div:nth-child(3) .waf-glass-icon { animation-delay: .8s; }

@keyframes waf-icon-float {
    0%, 100% { transform: translateY(0); }
    50%      { transform: translateY(-6px); }
}

.waf-glass-card h5 {
    font-size: 19px;
    color: var(--dark);
    margin-bottom: 8px;
}

.waf-glass-card p {
    color: #667085;
    font-size: 14.5px;
    line-height: 1.7;
    margin-bottom: 0;
}

@media (max-width: 767.98px) {
    .waf-glass-row { grid-template-columns: 1fr; }
}

/* -- PCI DSS compliance card (certification style, gold accent) -- */
.waf-compliance-card {
    position: relative;
    background: linear-gradient(160deg, #ffffff 0%, #fbf8f0 100%);
    border: 1px solid #efe3c2;
    border-radius: 22px;
    padding: 42px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, .08);
    overflow: hidden;
}

.waf-compliance-card::after {
    content: "";
    position: absolute;
    top: -80px;
    right: -80px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(232, 199, 122, .25), transparent 70%);
    pointer-events: none;
}

.waf-compliance-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #fff6e2;
    border: 1px solid #f0dfa8;
    color: #a9791b;
    padding: 8px 18px;
    border-radius: 30px;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: .5px;
    text-transform: uppercase;
    margin-bottom: 22px;
}

.waf-compliance-badge i {
    color: #E8C77A;
}

.waf-compliance-card h3 {
    font-size: 26px;
    color: var(--dark);
    margin-bottom: 16px;
}

.waf-compliance-card p {
    color: #667085;
    font-size: 17px;
    line-height: 1.85;
    margin-bottom: 26px;
}

.waf-compliance-points {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.waf-compliance-point {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.waf-compliance-point-icon {
    width: 32px;
    height: 32px;
    min-width: 32px;
    border-radius: 50%;
    background: linear-gradient(135deg, #E8C77A, #c99a3f);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 2px;
}

.waf-compliance-point-icon i {
    color: #FFFFFF;
    font-size: 12px;
}

.waf-compliance-point span {
    font-weight: 600;
    color: var(--dark);
    font-size: 16px;
    line-height: 1.6;
}

@media (max-width: 767.98px) {
    .waf-compliance-card { padding: 30px 26px; }
    .waf-compliance-card h3 { font-size: 22px; }
}

/* -- Benefits grid (premium numbered cards, replaces plain checklist) -- */
.waf-benefit-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 22px;
}

.waf-benefit-card {
    position: relative;
    background: #FFFFFF;
    border: 1px solid #e7eef5;
    border-radius: 18px;
    padding: 30px 22px;
    text-align: center;
    transition: .35s;
    overflow: hidden;
}

.waf-benefit-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, var(--primary), var(--secondary));
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .4s ease;
}

.waf-benefit-card:hover::before {
    transform: scaleX(1);
}

.waf-benefit-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 45px rgba(16, 88, 162, .14);
    border-color: transparent;
}

.waf-benefit-num {
    position: absolute;
    top: 12px;
    right: 16px;
    font-size: 12px;
    font-weight: 700;
    color: #cfd8e3;
    letter-spacing: 1px;
}

.waf-benefit-icon {
    width: 56px;
    height: 56px;
    margin: 0 auto 16px;
    border-radius: 14px;
    background: var(--light);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .35s;
}

.waf-benefit-icon i {
    color: var(--primary);
    font-size: 21px;
}

.waf-benefit-card:hover .waf-benefit-icon {
    background: linear-gradient(135deg, var(--primary), var(--secondary));
}

.waf-benefit-card:hover .waf-benefit-icon i {
    color: #FFFFFF;
}

.waf-benefit-card h6 {
    color: var(--dark);
    font-size: 14.5px;
    font-weight: 700;
    line-height: 1.45;
    margin-bottom: 0;
}

@media (max-width: 1200px) {
    .waf-benefit-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 767.98px) {
    .waf-benefit-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
    .waf-benefit-card { padding: 24px 16px; }
}

@media (max-width: 480px) {
    .waf-benefit-grid { grid-template-columns: 1fr; }
}


.vpn-vs {
    position: relative;
    background:
        radial-gradient(circle, rgba(255,255,255,.05) 1px, transparent 1px) 0 0 / 26px 26px,
        linear-gradient(160deg, #142230 0%, var(--dark) 55%, #0f1a24 100%);
    padding: 100px 0;
    overflow: hidden;
}

.vpn-vs::before {
    content: "";
    position: absolute;
    top: -160px;
    left: -110px;
    width: 380px;
    height: 380px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(16, 88, 162, .28), transparent 70%);
    pointer-events: none;
}

.vpn-vs::after {
    content: "";
    position: absolute;
    bottom: -180px;
    right: -120px;
    width: 380px;
    height: 380px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(79, 131, 95, .24), transparent 70%);
    pointer-events: none;
}

.vpn-vs .container {
    position: relative;
    z-index: 2;
}

.vpn-vs h1 {
    color: #FFFFFF;
    font-size: 2.1rem;
}

.vpn-vs-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--secondary);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 12px;
}

.vpn-vs-grid {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    margin-top: 20px;
}

.vpn-vs-badge {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 66px;
    height: 66px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--secondary));
    color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .5px;
    box-shadow: 0 0 0 8px rgba(20, 34, 48, 1), 0 15px 35px rgba(0, 0, 0, .4);
    z-index: 3;
    animation: vpn-badge-pulse 2.6s ease-in-out infinite;
}

@keyframes vpn-badge-pulse {
    0%, 100% { box-shadow: 0 0 0 8px rgba(20, 34, 48, 1), 0 0 0 0 rgba(16, 88, 162, .35); }
    50%      { box-shadow: 0 0 0 8px rgba(20, 34, 48, 1), 0 0 0 14px rgba(16, 88, 162, 0); }
}

.vpn-vs-card {
    position: relative;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 20px;
    padding: 38px 34px;
    transition: .35s;
    overflow: hidden;
}

.vpn-vs-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 4px;
}

.vpn-vs-ipsec::before {
    background: linear-gradient(90deg, #c0392b, #e08e5b);
}

.vpn-vs-ssl::before {
    background: linear-gradient(90deg, var(--primary), var(--secondary));
}

.vpn-vs-card:hover {
    transform: translateY(-6px);
    background: rgba(255, 255, 255, .06);
    box-shadow: 0 20px 45px rgba(0, 0, 0, .35);
}

.vpn-vs-header {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 26px;
}

.vpn-vs-icon {
    width: 56px;
    height: 56px;
    min-width: 56px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
}

.vpn-vs-ipsec .vpn-vs-icon {
    background: rgba(192, 57, 43, .18);
    color: #e08e5b;
}

.vpn-vs-ssl .vpn-vs-icon {
    background: rgba(79, 131, 95, .2);
    color: var(--secondary);
}

.vpn-vs-header h4 {
    color: #FFFFFF;
    font-size: 21px;
    margin-bottom: 4px;
}

.vpn-vs-header span {
    color: rgba(255, 255, 255, .45);
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .5px;
}

.vpn-vs-list {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.vpn-vs-list-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.vpn-vs-list-item i {
    margin-top: 4px;
    font-size: 14px;
}

.vpn-vs-ipsec .vpn-vs-list-item i {
    color: #e08e5b;
}

.vpn-vs-ssl .vpn-vs-list-item i {
    color: var(--secondary);
}

.vpn-vs-list-item span {
    color: rgba(255, 255, 255, .72);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
}

@media (max-width: 991.98px) {
    .vpn-vs-grid { grid-template-columns: 1fr; gap: 60px; }
    .vpn-vs-badge { top: 0; margin-top: -33px; }
}

@media (max-width: 767.98px) {
    .vpn-vs { padding: 70px 0; }
    .vpn-vs-card { padding: 30px 24px; }
}

.vpn-layer-strip {
    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: 18px;
    flex-wrap: wrap;
    margin-top: 40px;
}

.vpn-layer-chip {
    flex: 1 1 220px;
    max-width: 260px;
    background: #FFFFFF;
    border: 1px solid #e7eef5;
    border-radius: 18px;
    padding: 26px 22px;
    text-align: center;
    box-shadow: 0 15px 40px rgba(0, 0, 0, .06);
    transition: .35s;
}

.vpn-layer-chip:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(16, 88, 162, .15);
}

.vpn-layer-chip .vpn-layer-tag {
    display: inline-block;
    padding: 5px 14px;
    border-radius: 30px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .5px;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.vpn-layer-chip.is-legacy .vpn-layer-tag {
    background: #fbeee9;
    color: #c0392b;
}

.vpn-layer-chip.is-modern .vpn-layer-tag {
    background: #eaf4ee;
    color: var(--secondary);
}

.vpn-layer-chip h6 {
    color: var(--dark);
    font-size: 17px;
    margin-bottom: 6px;
}

.vpn-layer-chip p {
    color: #8a94a3;
    font-size: 13.5px;
    font-weight: 600;
    margin-bottom: 0;
}

.vpn-layer-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #c7d2de;
    font-size: 20px;
}

@media (max-width: 767.98px) {
    .vpn-layer-strip { flex-direction: column; align-items: center; }
    .vpn-layer-arrow { transform: rotate(90deg); }
}


   .client-hero {
    padding: 120px 0;
    background: #fff;
    overflow: hidden;
}

.hero-tag {
    display: inline-block;
    padding: 8px 20px;
    background: #EAF2EC;
    color: #427454;
    border-radius: 30px;
    font-weight: 600;
    margin-bottom: 20px;
}

.client-hero h1 {
    font-size: 58px;
    font-weight: 700;
    line-height: 1.15;
    color: #1f2937;
    margin-bottom: 25px;
}

.client-hero p {
    font-size: 18px;
    line-height: 1.9;
    color: #6b7280;
    max-width: 600px;
}

.hero-btns {
    margin-top: 40px;
    display: flex;
    gap: 20px;
}

.hero-btns .btn-primary {
    background: #245475;
    border: none;
    padding: 14px 35px;
}

.hero-btns .btn-outline-primary {
    border: 2px solid #245475;
    color: #245475;
    padding: 14px 35px;
}

.hero-image {
    position: relative;
}

.main-img {
    border-radius: 25px;
    box-shadow: 0 30px 70px rgba(0, 0, 0, .12);
}

.floating-card {
    position: absolute;
    background: #fff;
    padding: 20px;
    border-radius: 20px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, .12);
    width: 220px;
    transition: .4s;
}

.floating-card:hover {
    transform: translateY(-10px);
}

.floating-card.card1 {
    left: -40px;
    top: 60px;
}

.floating-card.card2 {
    right: -30px;
    bottom: 50px;
}

.floating-card h5 {
    color: #245475;
    font-weight: 600;
}

.floating-card p {
    font-size: 14px;
    margin: 0;
}

@media (max-width: 991px) {
    .client-hero h1 {
        font-size: 40px;
    }

    .hero-btns {
        flex-direction: column;
    }

    .floating-card.card1,
    .floating-card.card2 {
        display: none;
    }
}



.partners-section {
    position: relative;
    padding: 120px 0;
    overflow: hidden;
    background: linear-gradient(135deg, #08111f, #101c2d, #08111f);
}

.partners-section::before {
    content: "";
    position: absolute;
    width: 600px;
    height: 600px;
    border-radius: 50%;
    background: rgba(66, 116, 84, .12);
    filter: blur(150px);
    top: -250px;
    left: -200px;
}

.partners-section::after {
    content: "";
    position: absolute;
    width: 500px;
    height: 500px;
    border-radius: 50%;
    background: rgba(36, 84, 117, .12);
    filter: blur(140px);
    right: -180px;
    bottom: -180px;
}

.partners-section .section-heading {
    text-align: center;
    max-width: 760px;
    margin: 0 auto 70px;
    position: relative;
    z-index: 5;
}

.partners-section .section-heading span {
    display: inline-block;
    padding: 10px 24px;
    background: rgba(66, 116, 84, .15);
    color: #7ce2a3;
    border: 1px solid rgba(124, 226, 163, .25);
    border-radius: 50px;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 18px;
}

.partners-section .section-heading h2 {
    color: #fff;
    font-size: 46px;
    font-weight: 700;
    margin-bottom: 18px;
    line-height: 1.2;
}

.partners-section .section-heading p {
    color: #bfc9d6;
    font-size: 18px;
    line-height: 1.8;
}

.partners-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 28px;
    position: relative;
    z-index: 5;
}

.partner-card {
    position: relative;
    background: #ffffff;
    border-radius: 22px;
    height: 140px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px;
    overflow: hidden;
    cursor: pointer;
    transition: all .45s ease;
    border: 1px solid rgba(0, 0, 0, .06);
    box-shadow:
        0 15px 35px rgba(0, 0, 0, .08),
        0 4px 15px rgba(0, 0, 0, .05);
    animation:
        fadeUp .8s ease forwards,
        floating 5s ease-in-out infinite;
}

.partner-card::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 0;
    height: 4px;
    background: linear-gradient(90deg, #427454, #245475);
    transition: .5s;
}

.partner-card:hover::after {
    width: 100%;
}

.partner-card::before {
    content: "";
    position: absolute;
    width: 60px;
    height: 240%;
    background: rgba(255, 255, 255, .7);
    left: -120px;
    top: -60%;
    transform: rotate(25deg);
    transition: 1s;
}

.partner-card:hover::before {
    left: 240px;
}

.partner-card:hover {
    transform: translateY(-12px);
    border-color: #427454;
    box-shadow:
        0 30px 60px rgba(36, 84, 117, .18),
        0 15px 30px rgba(66, 116, 84, .12);
}

.partner-card img {
    max-width: 140px;
    max-height: 60px;
    width: auto;
    height: auto;
    object-fit: contain;
    transition: all .4s ease;
    filter: none;
    opacity: 1;
}

.partner-card:hover img {
    transform: scale(1.08);
}

.partner-card:nth-child(2n) { animation-delay: .5s; }
.partner-card:nth-child(3n) { animation-delay: 1s; }
.partner-card:nth-child(4n) { animation-delay: 1.5s; }

@keyframes floating {
    0%, 100% { transform: translateY(0); }
    50%      { transform: translateY(-7px); }
}

@keyframes fadeUp {
    0%   { opacity: 0; transform: translateY(40px); }
    100% { opacity: 1; transform: translateY(0); }
}

@media (max-width: 1200px) {
    .partners-grid { grid-template-columns: repeat(5, 1fr); }
}

@media (max-width: 992px) {
    .partners-grid { grid-template-columns: repeat(4, 1fr); gap: 22px; }
}

@media (max-width: 768px) {
    .partners-section { padding: 90px 0; }
    .partners-section .section-heading h2 { font-size: 34px; }
    .partners-grid { grid-template-columns: repeat(3, 1fr); gap: 18px; }
    .partner-card { height: 115px; padding: 18px; }
    .partner-card img { max-width: 105px; max-height: 48px; }
}

@media (max-width: 576px) {
    .partners-grid { grid-template-columns: repeat(2, 1fr); }
    .partners-section .section-heading h2 { font-size: 28px; }
    .partners-section .section-heading p { font-size: 15px; }
    .partner-card { height: 100px; }
    .partner-card img { max-width: 90px; }
}



.value-section {
    padding: 120px 0;
    background: #F8FAFC;
}

.section-small {
    color: #427454;
    font-weight: 600;
    letter-spacing: 1px;
}

.value-section h2 {
    font-size: 46px;
    font-weight: 700;
    margin: 20px 0;
    color: #1f2937;
}

.value-section p {
    color: #6b7280;
    line-height: 1.9;
    margin-bottom: 20px;
}

.image-stack {
    position: relative;
    height: 520px;
}

.img-one {
    width: 85%;
    border-radius: 25px;
    box-shadow: 0 25px 60px rgba(0, 0, 0, .10);
}

.img-two {
    position: absolute;
    width: 55%;
    bottom: 0;
    right: 0;
    border-radius: 20px;
    border: 8px solid #fff;
    box-shadow: 0 25px 60px rgba(0, 0, 0, .12);
}

.mini-box {
    background: #fff;
    padding: 30px;
    border-radius: 20px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, .08);
    transition: .4s;
}

.mini-box:hover {
    transform: translateY(-8px);
}

.mini-box h4 {
    font-size: 34px;
    font-weight: 700;
    color: #245475;
}

.mini-box span {
    color: #6b7280;
}

@media (max-width: 991px) {
    .image-stack { height: auto; }

    .img-two {
        position: relative;
        width: 75%;
        margin-top: -70px;
        left: 90px;
    }
}


/* ==========================================================================
   Why Wayzon (trust cards)
   ========================================================================== */

.trust-section {
    padding: 100px 0;
    background: #f8fafc;
}

.section-badge {
    display: inline-block;
    background: #EAF2EC;
    color: #427454;
    padding: 8px 18px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 20px;
}

.trust-section .section-heading {
    font-size: 42px;
    font-weight: 700;
    color: #1f2937;
}

.section-text {
    max-width: 700px;
    margin: 20px auto 0;
    color: #6b7280;
    line-height: 1.8;
}

.trust-card {
    background: #fff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 15px 40px rgba(0, 0, 0, .06);
    transition: .35s;
    height: 100%;
}

.trust-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 25px 60px rgba(0, 0, 0, .12);
}

.trust-card img {
    width: 100%;
    height: 220px;
    object-fit: cover;
}

.trust-card h5 {
    color: #245475;
    padding: 25px 25px 10px;
    font-weight: 600;
}

.trust-card p {
    padding: 0 25px 30px;
    color: #6b7280;
    line-height: 1.8;
}


/* ==========================================================================
   Commitment Section (full-bleed image + glass cards)
   ========================================================================== */

.commitment-section {
    padding: 120px 0;
    background: #f7f9fc;
}

.commitment-section .container-fluid {
    padding: 0;
}

.commitment-wrapper {
    position: relative;
    overflow: hidden;
    border-radius: 30px;
    min-height: 850px;
    display: flex;
    align-items: stretch;
    box-shadow: 0 30px 80px rgba(0, 0, 0, .15);
}

.commitment-image {
    position: absolute;
    inset: 0;
}

.commitment-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.commitment-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(8, 19, 31, .92) 0%,
        rgba(8, 19, 31, .75) 35%,
        rgba(8, 19, 31, .35) 65%,
        rgba(8, 19, 31, .10) 100%
    );
}

.commitment-content {
    position: relative;
    z-index: 5;
    width: 620px;
    padding: 90px 0 90px 70px;
}

.commitment-tag {
    display: inline-block;
    padding: 10px 24px;
    border-radius: 40px;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .15);
    color: #7CE2A3;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-size: 13px;
    margin-bottom: 22px;
}

.commitment-content h2 {
    color: #fff;
    font-size: 52px;
    line-height: 1.15;
    margin-bottom: 25px;
    font-weight: 700;
}

.commitment-content > p {
    color: #d8dee8;
    line-height: 1.9;
    font-size: 17px;
    margin-bottom: 40px;
}

.commitment-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

.commit-card {
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    border: 1px solid rgba(255, 255, 255, .15);
    border-radius: 20px;
    padding: 24px;
    min-height: 180px;
    transition: .35s;
}

.commit-card:hover {
    transform: translateY(-8px);
    background: rgba(255, 255, 255, .12);
    border-color: #427454;
}

.icon-box {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    background: #427454;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 24px;
    margin-bottom: 18px;
}

.commit-card h5 {
    color: #fff;
    margin-bottom: 12px;
    font-size: 22px;
}

.commit-card p {
    color: #d8dee8;
    margin: 0;
    line-height: 1.8;
    font-size: 15px;
}

@media (max-width: 1200px) {
    .commitment-content {
        width: 560px;
        padding: 70px 40px;
    }

    .commitment-content h2 {
        font-size: 44px;
    }
}

@media (max-width: 991px) {
    .commitment-wrapper {
        display: block;
        min-height: auto;
    }

    .commitment-image {
        position: relative;
        height: 420px;
    }

    .commitment-content {
        width: 100%;
        padding: 60px 35px;
        background: #08131F;
    }

    .commitment-grid {
        grid-template-columns: 1fr;
    }

    .commitment-content h2 {
        font-size: 38px;
    }
}

@media (max-width: 576px) {
    .commitment-section { padding: 70px 0; }
    .commitment-image { height: 300px; }
    .commitment-content { padding: 40px 25px; }
    .commitment-content h2 { font-size: 30px; }
    .commitment-content > p { font-size: 15px; }
    .commit-card { padding: 20px; min-height: auto; }
}











.ih-process-section {
    padding: 110px 0;
    background: #f7f9fc;
    overflow: hidden;
}

.ih-process-section .container {
    max-width: 1500px;
    margin: auto;
    padding: 0 40px;
}

.dcs-tag {
    display: inline-block;
    padding: 8px 22px;
    background: #edf4ef;
    color: #427454;
    border-radius: 40px;
    font-weight: 600;
    font-size: 14px;
    letter-spacing: 1px;
    margin-bottom: 18px;
}

.dcs-title {
    font-size: 48px;
    font-weight: 700;
    color: #222;
    margin-bottom: 15px;
}

.ih-process-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(320px, 1fr));
    gap: 35px;
    margin-top: 70px;
}

.ih-process-card {
    position: relative;
    background: rgba(255, 255, 255, .75);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    border-radius: 28px;
    padding: 45px;
    min-height: 320px;
    border: 1px solid rgba(255, 255, 255, .7);
    box-shadow: 0 15px 40px rgba(0, 0, 0, .08);
    transition: .4s ease;
    overflow: hidden;
}

.ih-process-card::before {
    content: "";
    position: absolute;
    top: -70px;
    right: -70px;
    width: 170px;
    height: 170px;
    border-radius: 50%;
    background: rgba(36, 84, 117, .05);
    transition: .4s;
}

.ih-process-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 25px 55px rgba(36, 84, 117, .12);
}

.ih-process-card:hover::before {
    transform: scale(1.4);
}

.ih-process-num {
    width: 90px;
    height: 90px;
    border-radius: 22px;
    background: #edf4ef;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 30px;
    font-size: 30px;
    color: #427454;
    position: relative;
}

.ih-process-num span {
    position: absolute;
    right: -10px;
    top: -10px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #245475;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 13px;
    font-weight: 600;
}

.ih-process-card h6 {
    font-size: 28px;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 18px;
}

.ih-process-card p {
    font-size: 17px;
    color: #667085;
    line-height: 1.9;
    margin: 0;
}

.ih-process-arrow {
    display: none;
}

@media (max-width: 1400px) {
    .ih-process-section .container {
        max-width: 1320px;
        padding: 0 30px;
    }

    .ih-process-row {
        grid-template-columns: repeat(3, 1fr);
        gap: 30px;
    }
}

@media (max-width: 1200px) {
    .ih-process-section .container {
        padding: 0 25px;
    }

    .ih-process-row {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .ih-process-section {
        padding: 80px 0;
    }

    .ih-process-section .container {
        padding: 0 15px;
    }

    .dcs-title {
        font-size: 34px;
    }

    .ih-process-row {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .ih-process-card {
        padding: 35px;
        min-height: auto;
    }

    .ih-process-card h6 {
        font-size: 24px;
    }

    .ih-process-card p {
        font-size: 16px;
    }
}

@media (max-width: 576px) {
    .dcs-title {
        font-size: 28px;
    }

    .dcs-tag {
        font-size: 13px;
    }

    .ih-process-num {
        width: 75px;
        height: 75px;
        font-size: 24px;
    }

    .ih-process-card {
        padding: 30px;
    }
}

.benefits-section {
    background: #f7f9fc;
    padding: 100px 0;
}

.benefits-subtitle {
    max-width: 650px;
    margin: auto;
    color: #667085;
    line-height: 1.8;
}

.benefit-card {
    display: flex;
    align-items: center;
    gap: 25px;
    background: #fff;
    padding: 32px;
    border-radius: 22px;
    height: 100%;
    border: 1px solid #eef2f7;
    transition: .35s;
    box-shadow: 0 12px 30px rgba(0, 0, 0, .05);
}

.benefit-card:hover {
    transform: translateY(-8px);
    border-color: #427454;
    box-shadow: 0 22px 50px rgba(36, 84, 117, .12);
}

.benefit-icon {
    min-width: 80px;
    width: 80px;
    height: 80px;
    border-radius: 20px;
    background: #edf4ef;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #427454;
    font-size: 30px;
    transition: .35s;
}

.benefit-card:hover .benefit-icon {
    background: #427454;
    color: #fff;
}

.benefit-content h4 {
    font-size: 22px;
    margin-bottom: 10px;
    color: #1f2937;
    font-weight: 600;
}

.benefit-content p {
    margin: 0;
    color: #667085;
    line-height: 1.8;
}

@media (max-width: 768px) {
    .benefit-card {
        flex-direction: column;
        text-align: center;
    }
}

.sec-hero-btn {
    display: inline-flex;
    align-items: center;
    padding: 15px 34px;
    background: var(--primary);
    color: #FFFFFF;
    border-radius: 50px;
    font-weight: 700;
    text-decoration: none;
    transition: .35s;
}

.sec-hero-btn:hover {
    background: #0c4174;
    color: #FFFFFF;
    transform: translateY(-3px);
    box-shadow: 0 15px 35px rgba(16, 88, 162, .3);
}

/* -- "Comprehensive Security Approach" banner (icon + eyebrow + text) -- */
.sec-approach {
    padding: 60px 0;
    background: linear-gradient(120deg, #eef6fb 0%, #eaf4ee 100%);
}

.sec-approach-icon {
    width: 90px;
    height: 90px;
    margin: 0 auto;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), var(--secondary));
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 15px 35px rgba(16, 88, 162, .25);
    animation: sec-approach-pulse 2.6s ease-in-out infinite;
}

.sec-approach-icon i {
    color: #FFFFFF;
    font-size: 34px;
}

@keyframes sec-approach-pulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(16, 88, 162, .25), 0 15px 35px rgba(16, 88, 162, .25); }
    50%      { box-shadow: 0 0 0 14px rgba(16, 88, 162, 0), 0 15px 35px rgba(16, 88, 162, .25); }
}

.sec-approach-eyebrow {
    display: inline-block;
    color: var(--secondary);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.sec-approach h2 {
    font-size: 1.9rem;
    color: var(--dark);
    margin-bottom: 14px;
}

.sec-approach p {
    color: #667085;
    font-size: 17px;
    line-height: 1.85;
    margin-bottom: 0;
}

@media (max-width: 767.98px) {
    .sec-approach { padding: 45px 0; text-align: center; }
    .sec-approach h2 { font-size: 1.5rem; }
}

/* -- Security Integration Services (icon cards) -- */
.sec-service-card {
    background: #FFFFFF;
    border-radius: 20px;
    padding: 34px 28px;
    height: 100%;
    box-shadow: 0 15px 40px rgba(0, 0, 0, .06);
    transition: .35s;
}

.sec-service-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(16, 88, 162, .15);
}

.sec-service-icon {
    width: 64px;
    height: 64px;
    margin-bottom: 20px;
    border-radius: 16px;
    background: linear-gradient(135deg, var(--primary), var(--secondary));
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .35s;
}

.sec-service-icon i {
    color: #FFFFFF;
    font-size: 24px;
}

.sec-service-card:hover .sec-service-icon {
    transform: scale(1.08) rotate(-6deg);
}

.sec-service-card h6 {
    color: var(--dark);
    font-size: 18px;
    margin-bottom: 10px;
}

.sec-service-card p {
    color: #667085;
    font-size: 15.5px;
    line-height: 1.7;
    margin-bottom: 0;
}

@media (max-width: 767.98px) {
    .sec-service-card { padding: 26px 22px; }
}





.navbar .navbar-nav .nav-link {
    position: relative;
    margin-right: 30px;
    padding: 25px 0;
    color: var(--dark);
    font-size: 17px;
    font-weight: 600;
    text-transform: capitalize;
    outline: none;
}
 
.navbar .navbar-nav .nav-link::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 18px;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--primary), var(--secondary));
    transition: width .35s ease;
}
 
.navbar .navbar-nav .nav-link:hover,
.navbar .navbar-nav .nav-link.active {
    color: var(--primary);
}
 
.navbar .navbar-nav .nav-link:hover::after,
.navbar .navbar-nav .nav-link.active::after {
    width: 100%;
}
 
.navbar .dropdown-toggle::after {
    border: none;
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    vertical-align: middle;
    margin-left: 8px;
    transition: transform .35s ease;
}
 
.navbar .nav-item:hover .dropdown-toggle::after {
    transform: rotate(180deg);
}
 
@media (max-width: 991.98px) {
    .navbar .navbar-nav .nav-link {
        margin-right: 0;
        padding: 10px 0;
    }
 
    .navbar .navbar-nav .nav-link::after {
        display: none;
    }
 
    .navbar .navbar-nav {
        border-top: 1px solid #EEEEEE;
    }
}
 
@media (min-width: 992px) {
    .navbar .nav-item .dropdown-menu {
        display: block;
        border: none;
        margin-top: 0;
        top: 130%;
        opacity: 0;
        visibility: hidden;
        transition: opacity .35s ease, visibility .35s ease, top .35s ease;
    }
 
    .navbar .nav-item:hover .dropdown-menu {
        top: 100%;
        visibility: visible;
        opacity: 1;
        transition: opacity .35s ease, visibility .35s ease, top .35s ease;
    }
}
 
.mega-menu {
    left: 0;
    right: 0;
    width: 100%;
    margin-top: 0;
    padding: 48px 0;
    border: none;
    border-top: 3px solid var(--primary);
    border-radius: 0;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.15);
}
 
.mega-menu .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 48px;
    display: grid;
    grid-template-columns: repeat(3, 1fr) 1.2fr;
    align-items: start;
    gap: 48px;
}
 
.mega-menu-col {
    padding: 0;
}
 
.mega-menu-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.6px;
    color: var(--primary);
    text-decoration: none;
    margin: 0 0 20px;
    padding-bottom: 12px;
    border-bottom: 1px solid #eef1f6;
    transition: color .25s ease, border-color .25s ease;
}
 
.mega-menu-heading i {
    font-size: 12px;
    color: var(--secondary);
    opacity: 0;
    transform: translateX(-6px);
    transition: opacity .25s ease, transform .25s ease;
}
 
.mega-menu-heading:hover {
    color: var(--secondary);
    border-color: var(--secondary);
}
 
.mega-menu-heading:hover i {
    opacity: 1;
    transform: translateX(0);
}
 
.mega-menu-col ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
 
.mega-menu-col ul li {
    margin-bottom: 10px;
}
 
.mega-menu-col ul li:last-child {
    margin-bottom: 0;
}
 
.mega-menu-col ul li a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 6px 8px;
    border-radius: 10px;
    color: #4b5563;
    font-size: 15.5px;
    font-weight: 600;
    line-height: 1.4;
    text-decoration: none;
    transition: color .2s ease, background-color .2s ease, transform .2s ease;
}
 
.mega-menu-col ul li a i {
    width: 34px;
    height: 34px;
    min-width: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    background: var(--light);
    color: var(--primary);
    font-size: 14px;
    transition: background .3s ease, color .3s ease, transform .3s ease;
}
 
.mega-menu-col ul li a:hover {
    color: var(--secondary);
    background-color: #f4f9f6;
    transform: translateX(4px);
}
 
.mega-menu-col ul li a:hover i {
    background: linear-gradient(135deg, var(--primary), var(--secondary));
    color: #FFFFFF;
    transform: scale(1.1) rotate(-6deg);
}
 
@media (max-width: 991.98px) {
    .mega-menu {
        padding: 24px 0;
        box-shadow: none;
    }
 
    .mega-menu .container {
        grid-template-columns: 1fr;
        gap: 28px;
        padding: 0 24px;
    }
 
    .mega-menu-col {
        padding-bottom: 20px;
        border-bottom: 1px solid #eef1f6;
    }
 
    .mega-menu-col:last-child {
        border-bottom: none;
        padding-bottom: 0;
    }
}
 
.promo-card {
    height: auto;
    aspect-ratio: 1 / 1;
    max-height: 260px;
}
 
@media (max-width: 991.98px) {
    .promo-card {
        aspect-ratio: auto;
        max-height: none;
        min-height: 220px;
    }
}
 
.promo-card {
    background: linear-gradient(135deg, var(--primary) 0%, #0c4174 60%, var(--secondary) 130%);
    border: none;
    justify-content: center;
}
 
.promo-card .promo-tag {
    color: #9fe8bd;
}
 
.promo-card .promo-heading {
    color: #FFFFFF;
}
 
.promo-card .promo-link {
    color: #FFFFFF;
}
 
.promo-card .promo-link:hover {
    color: #9fe8bd;
}
 
/* =========================================================
   SECTION
========================================================= */

.stats-section-exec {
    position: relative;
    width: 100%;
    background: #192d3b;

    padding-top: 68px !important;
    padding-bottom: 68px !important;

    margin-bottom: 25px !important;

    overflow: hidden;

    font-family: "Quicksand", sans-serif;
}


/* Subtle background lighting */

.stats-section-exec::before {
    content: "";
    position: absolute;

    width: 420px;
    height: 420px;

    top: -220px;
    left: -160px;

    background: rgba(25, 120, 178, 0.055);

    border-radius: 50%;

    filter: blur(80px);

    pointer-events: none;
}

.stats-section-exec::after {
    content: "";
    position: absolute;

    width: 380px;
    height: 380px;

    right: -180px;
    bottom: -220px;

    background: rgba(79, 155, 114, 0.035);

    border-radius: 50%;

    filter: blur(80px);

    pointer-events: none;
}


/* =========================================================
   CONTAINER
========================================================= */

.stats-section-exec .container {
    position: relative;
    z-index: 2;

    width: 100%;
    max-width: 1280px;
}


/* =========================================================
   HEADING AREA
========================================================= */

.stats-section-exec .row.align-items-end {
    margin-bottom: 42px !important;
}


/* Eyebrow */

.stats-exec-eyebrow {
    display: block;

    margin-bottom: 9px;

    font-family: "Quicksand", sans-serif;

    font-size: 17px;
    line-height: 1.2;

    font-weight: 700;

    letter-spacing: 0.5px;

    color: #4f9b72;
}


/* Main Heading */

.stats-section-exec h1 {
    margin: 0;

    font-family: "Quicksand", sans-serif;

    font-size: 38px;
    line-height: 1.2;

    font-weight: 700;

    letter-spacing: -0.5px;

    color: #ffffff;
}


/* Hide description */

.stats-exec-sub {
    display: none !important;
}


/* =========================================================
   CARD GRID
========================================================= */

.stats-section-exec .row.g-4 {
    --bs-gutter-x: 24px;
    --bs-gutter-y: 24px;

    margin-right: calc(var(--bs-gutter-x) * -0.5);
    margin-left: calc(var(--bs-gutter-x) * -0.5);
}


/* =========================================================
   FORCE 4 EQUAL CARDS
========================================================= */

@media (min-width: 992px) {

    .stats-section-exec .col-lg-3 {
        flex: 0 0 25%;
        width: 25%;
    }

}


/* =========================================================
   GLASS CARD
========================================================= */

.stat-exec-card {
    position: relative;

    width: 100%;

    height: 215px;
    min-height: 215px;

    padding: 30px 24px;

    display: flex;
    flex-direction: column;

    align-items: center;
    justify-content: center;

    text-align: center;

    /* Premium glass */

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.075),
            rgba(255, 255, 255, 0.035)
        );

    border: 1px solid rgba(105, 170, 205, 0.23);

    border-radius: 18px;

    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.09),
        inset 0 -1px 0 rgba(255, 255, 255, 0.025),
        inset 0 0 30px rgba(255, 255, 255, 0.012),
        0 12px 35px rgba(0, 0, 0, 0.14);

    overflow: hidden;

    transition:
        transform 0.4s ease,
        background 0.4s ease,
        border-color 0.4s ease,
        box-shadow 0.4s ease;
}


/* =========================================================
   GLASS TOP HIGHLIGHT
========================================================= */

.stat-exec-card::before {
    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 1px;

    background: rgba(255, 255, 255, 0.14);

    pointer-events: none;
}


/* =========================================================
   GLASS BLUE LIGHT
========================================================= */

.stat-exec-card::after {
    content: "";

    position: absolute;

    width: 130px;
    height: 130px;

    top: -75px;
    right: -55px;

    background: rgba(25, 120, 178, 0.10);

    border-radius: 50%;

    filter: blur(30px);

    pointer-events: none;

    transition:
        background 0.4s ease,
        transform 0.4s ease;
}


/* =========================================================
   CARD HOVER
========================================================= */

.stat-exec-card:hover {
    transform: translateY(-8px);

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.105),
            rgba(255, 255, 255, 0.045)
        );

    border-color: rgba(35, 130, 184, 0.42);

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.12),
        inset 0 0 30px rgba(255, 255, 255, 0.018),
        0 18px 42px rgba(0, 0, 0, 0.20),
        0 0 28px rgba(24, 117, 172, 0.09);
}

.stat-exec-card:hover::after {
    background: rgba(25, 120, 178, 0.15);
    transform: scale(1.15);
}


/* =========================================================
   ICON CONTAINER
========================================================= */

.stat-exec-badge {
    position: relative;

    z-index: 2;

    width: 58px;
    height: 58px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 17px;

    background: rgba(25, 120, 178, 0.075);

    border: 1px solid rgba(53, 143, 194, 0.18);

    border-radius: 14px;

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 5px 15px rgba(0, 0, 0, 0.08);

    transition:
        background 0.35s ease,
        border-color 0.35s ease,
        transform 0.35s ease;
}


/* =========================================================
   SVG ICON
========================================================= */

.stat-exec-badge svg {
    width: 45px;
    height: 45px;

    display: block;

    fill: none;

    stroke: #2382b8;

    stroke-width: 2.6;

    stroke-linecap: round;
    stroke-linejoin: round;

    transition:
        transform 0.35s ease,
        filter 0.35s ease;
}


/* Icon hover */

.stat-exec-card:hover .stat-exec-badge {
    background: rgba(25, 120, 178, 0.11);

    border-color: rgba(35, 130, 184, 0.28);

    transform: translateY(-2px);
}

.stat-exec-card:hover .stat-exec-badge svg {
    transform: scale(1.08);

    filter:
        drop-shadow(0 0 5px rgba(35, 130, 184, 0.30));
}


/* =========================================================
   NUMBER
========================================================= */

.stat-exec-number {
    position: relative;

    z-index: 2;

    margin: 0;

    font-family: "Quicksand", sans-serif;

    font-size: 40px;

    line-height: 1;

    font-weight: 700;

    letter-spacing: -0.8px;

    color: #ffffff;

    text-shadow:
        0 2px 12px rgba(0, 0, 0, 0.18);
}


/* =========================================================
   LABEL
========================================================= */

.stat-exec-label {
    position: relative;

    z-index: 2;

    margin: 10px 0 0;

    font-family: "Quicksand", sans-serif;

    font-size: 16px;

    line-height: 1.35;

    font-weight: 600;

    letter-spacing: 0.1px;

    color: rgba(255, 255, 255, 0.82);

    text-align: center;
}


/* =========================================================
   PLUS SYMBOL
========================================================= */

.stat-exec-number span {
    display: inline-block;
}


/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1200px) {

    .stats-section-exec {
        padding-top: 72px !important;
        padding-bottom: 72px !important;
    }

    .stats-section-exec .container {
        max-width: 1280px;
    }

    .stats-section-exec .row.g-4 {
        --bs-gutter-x: 24px;
    }

    .stat-exec-card {
        height: 215px;
        min-height: 215px;

        padding: 32px 25px;
    }

    .stat-exec-number {
        font-size: 40px;
    }

    .stat-exec-label {
        font-size: 16px;
    }
}


/* =========================================================
   EXTRA LARGE DESKTOP
========================================================= */

@media (min-width: 1400px) {

    .stats-section-exec .container {
        max-width: 1320px;
    }

    .stats-section-exec .row.g-4 {
        --bs-gutter-x: 26px;
    }

    .stat-exec-card {
        height: 220px;
        min-height: 220px;
    }

    .stat-exec-number {
        font-size: 42px;
    }

    .stat-exec-label {
        font-size: 16px;
    }
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .stats-section-exec {
        padding-top: 55px !important;
        padding-bottom: 55px !important;
    }

    .stats-section-exec .row.align-items-end {
        margin-bottom: 35px !important;
    }

    .stats-section-exec h1 {
        font-size: 32px;
    }

    .stat-exec-card {
        height: 205px;
        min-height: 205px;
    }

    .stat-exec-number {
        font-size: 36px;
    }

    .stat-exec-label {
        font-size: 15px;
    }
}


/* =========================================================
   MOBILE TABLET
========================================================= */

@media (max-width: 767px) {

    .stats-section-exec {
        padding-top: 48px !important;
        padding-bottom: 48px !important;
    }

    .stats-section-exec .row.align-items-end {
        margin-bottom: 30px !important;
    }

    .stats-section-exec h1 {
        font-size: 29px;
        line-height: 1.25;

        text-align: center;
    }

    .stats-exec-eyebrow {
        font-size: 16px;
        text-align: center;
    }

    .stats-section-exec .row.g-4 {
        --bs-gutter-x: 16px;
        --bs-gutter-y: 16px;
    }

    .stat-exec-card {
        height: 195px;
        min-height: 195px;

        padding: 25px 18px;
    }

    .stat-exec-number {
        font-size: 34px;
    }

    .stat-exec-label {
        font-size: 15px;
    }

    .stat-exec-badge {
        width: 55px;
        height: 55px;

        margin-bottom: 15px;
    }

    .stat-exec-badge svg {
        width: 42px;
        height: 42px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 575px) {

    .stats-section-exec {
        padding-top: 42px !important;
        padding-bottom: 42px !important;

        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .stats-section-exec h1 {
        font-size: 25px;
    }

    .stats-exec-eyebrow {
        font-size: 15px;
    }

    .stats-section-exec .row.g-4 {
        --bs-gutter-x: 14px;
        --bs-gutter-y: 14px;
    }

    .stat-exec-card {
        height: 185px;
        min-height: 185px;

        padding: 22px 12px;

        border-radius: 16px;
    }

    .stat-exec-badge {
        width: 52px;
        height: 52px;

        margin-bottom: 13px;

        border-radius: 13px;
    }

    .stat-exec-badge svg {
        width: 39px;
        height: 39px;
    }

    .stat-exec-number {
        font-size: 30px;
    }

    .stat-exec-label {
        font-size: 14px;
        line-height: 1.3;
    }
}


/* =========================================================
   EXTRA SMALL MOBILE
========================================================= */

@media (max-width: 400px) {

    .stats-section-exec h1 {
        font-size: 23px;
    }

    .stat-exec-card {
        height: 175px;
        min-height: 175px;
    }

    .stat-exec-badge {
        width: 48px;
        height: 48px;
    }

    .stat-exec-badge svg {
        width: 36px;
        height: 36px;
    }

    .stat-exec-number {
        font-size: 28px;
    }

    .stat-exec-label {
        font-size: 13px;
    }
}

/* =========================================================
   WAYZON PREMIUM SOLUTIONS
========================================================= */

.wayzon-solutions-page {

    --wz-navy: #172d3c;
    --wz-navy-2: #1b3444;

    --wz-blue: #245475;
    --wz-blue-light: #75bce0;

    --wz-green: #427454;
    --wz-green-light: #78bd8c;

    width: 100%;

    margin: 0;

    padding: 0;

    background: var(--wz-navy);

    color: #f4f8fa;

    font-family: "Quicksand", sans-serif;

    overflow: hidden;
}


/* RESET */

.wayzon-solutions-page *,
.wayzon-solutions-page *::before,
.wayzon-solutions-page *::after {
    box-sizing: border-box;
}


.wayzon-solutions-page h1,
.wayzon-solutions-page h2,
.wayzon-solutions-page h3,
.wayzon-solutions-page p {
    font-family: "Quicksand", sans-serif;
}


.wayzon-solutions-page a {
    text-decoration: none;
}


.wz-container {

    width: 100%;

    max-width: 1280px;

    margin: 0 auto;

    padding-left: 28px;

    padding-right: 28px;
}


/* =========================================================
   EYEBROW
========================================================= */

.wz-eyebrow {

    display: inline-block;

    margin-bottom: 13px;

    color: var(--wz-green-light);

    font-size: 14px;

    font-weight: 700;

    letter-spacing: 1.1px;

    text-transform: uppercase;
}


/* =========================================================
   HERO
========================================================= */

.wz-solutions-hero {

    padding: 90px 0 80px;

    background: #172d3c;
}


.wz-hero-content {

    max-width: 920px;
}


.wz-hero-content h1 {

    margin: 0 0 25px;

    color: #ffffff;

    font-size: 52px;

    line-height: 1.12;

    font-weight: 700;

    letter-spacing: -.8px;
}


.wz-hero-content h1 span {

    display: block;

    color: #82a9bd;
}


.wz-hero-content p {

    max-width: 900px;

    margin: 0 0 18px;

    color: rgba(244,248,250,.86);

    font-size: 17px !important;

    line-height: 1.82;

    font-weight: 500;
}


.wz-hero-content p strong {
    color: #ffffff;
}


/* =========================================================
   SECTION HEADING
========================================================= */

.wz-section-heading {

    max-width: 850px;

    margin: 0 auto 50px;

    text-align: center;
}


.wz-section-heading h2 {

    margin: 0 0 17px;

    color: #ffffff;

    font-size: 40px;

    line-height: 1.2;

    font-weight: 700;
}


.wz-section-heading h2 span {
    color: #82a9bd;
}


.wz-section-heading p {

    max-width: 800px;

    margin: 0 auto;

    color: rgba(244,248,250,.84);

    font-size: 17px !important;

    line-height: 1.8;

    font-weight: 500;
}


/* =========================================================
   SOLUTIONS SECTION
========================================================= */

.wz-solutions-section {

    padding: 88px 0 105px;

    background: #1b3444;
}


.wz-solution-grid {

    display: grid;

    grid-template-columns: repeat(2,minmax(0,1fr));

    gap: 30px;

    align-items: stretch;
}


/* =========================================================
   MAIN CARD
========================================================= */

.wz-solution-card {

    position: relative;

    display: flex;

    flex-direction: column;

    overflow: hidden;

    background: rgba(20,43,57,.62);

    border: 1px solid rgba(130,176,199,.18);

    border-radius: 22px;

    backdrop-filter: blur(20px);

    -webkit-backdrop-filter: blur(20px);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.035),
        0 18px 45px rgba(0,0,0,.14);

    transition:
        transform .4s ease,
        background .4s ease,
        border-color .4s ease,
        box-shadow .4s ease;
}


.wz-solution-card:hover {

    transform: translateY(-7px);

    background: rgba(24,50,65,.76);

    border-color: rgba(77,145,189,.34);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.06),
        0 25px 55px rgba(0,0,0,.19);
}


/* =========================================================
   MAIN IMAGE
========================================================= */

.wz-card-image {

    position: relative;

    width: 100%;

    height: 255px;

    overflow: hidden;
}


.wz-card-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    opacity: .78;

    transition:
        transform .6s ease,
        opacity .5s ease;
}


.wz-solution-card:hover .wz-card-image img {

    transform: scale(1.06);

    opacity: .94;
}


.wz-image-overlay {

    position: absolute;

    inset: 0;

    background: rgba(8,27,38,.38);
}


/* =========================================================
   CARD NUMBER
========================================================= */

.wz-card-number {

    position: absolute;

    top: 20px;

    left: 20px;

    z-index: 5;

    width: 50px;

    height: 50px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 14px;

    background: rgba(20,43,57,.84);

    border: 1px solid rgba(255,255,255,.16);

    color: #ffffff;

    font-size: 14px;

    font-weight: 700;

    backdrop-filter: blur(14px);

    -webkit-backdrop-filter: blur(14px);
}


/* =========================================================
   CARD CONTENT
========================================================= */

.wz-card-content {

    padding: 34px 32px 38px;
}


.wz-card-category {

    display: inline-block;

    margin-bottom: 10px;

    color: var(--wz-green-light);

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 1px;

    text-transform: uppercase;
}


.wz-card-content h3 {

    margin: 0 0 17px;

    color: #ffffff;

    font-size: 29px;

    line-height: 1.25;

    font-weight: 700;
}


.wz-card-content > p {

    margin: 0 0 30px;

    color: rgba(244,248,250,.84);

    font-size: 17px !important;

    line-height: 1.8;

    font-weight: 500;
}


/* =========================================================
   SERVICE LIST
========================================================= */

.wz-solution-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
    width: 100%;
}
/* =========================================================
   CLICKABLE LIST CARD
========================================================= */

.wz-list-item {
    position: relative;
    display: flex;
    align-items: center;
    gap: 17px;
    width: 100%;
    min-height: 88px;
    padding: 16px 18px;
    background: rgba(20,43,57,.62);
    border: 1px solid rgba(130,176,199,.18);
    border-radius: 15px;
    color: inherit;
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.035),
        inset 0 -1px 0 rgba(0,0,0,.12),
        0 7px 20px rgba(0,0,0,.10);
    transition:
        transform .35s ease,
        background .35s ease,
        border-color .35s ease,
        box-shadow .35s ease;
}


/* top glass line */

.wz-list-item::before {

    content: "";

    position: absolute;

    top: 0;

    left: 18px;

    right: 18px;

    height: 1px;

    background: rgba(255,255,255,.05);

    pointer-events: none;
}


/* =========================================================
   LIST HOVER
========================================================= */

.wz-list-item:hover {

    transform: translateX(6px);

    background: rgba(28,59,75,.78);

    border-color: rgba(77,145,189,.35);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.055),
        0 12px 28px rgba(0,0,0,.17);
}


/* =========================================================
   SERVICE ICON
========================================================= */

.wz-service-icon {

    position: relative;

    flex: 0 0 48px;

    width: 48px;

    height: 48px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 13px;

    background: rgba(28,76,105,.38);

    border: 1px solid rgba(77,157,202,.38);

    color: #75bce0;

    font-size: 20px;

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.055),
        0 5px 14px rgba(0,0,0,.12);

    transition:
        transform .3s ease,
        background .3s ease,
        border-color .3s ease,
        color .3s ease;
}


/* Green alternate icons */

.wz-list-item:nth-child(odd) .wz-service-icon {

    background: rgba(52,103,73,.34);

    border-color: rgba(105,174,128,.38);

    color: #78bd8c;
}


/* =========================================================
   ICON HOVER
========================================================= */

.wz-list-item:hover .wz-service-icon {

    transform: scale(1.08);

    background: rgba(35,91,124,.52);

    border-color: rgba(91,173,218,.55);

    color: #8bd1f0;
}


.wz-list-item:nth-child(odd):hover .wz-service-icon {

    background: rgba(57,113,79,.48);

    border-color: rgba(113,190,137,.55);

    color: #89cb9a;
}


/* =========================================================
   SERVICE TEXT
========================================================= */

.wz-list-item > div {

    flex: 1;

    min-width: 0;
}


.wz-list-item strong {

    display: block;

    margin: 0 0 5px;

    color: #ffffff;

    font-size: 17px;

    line-height: 1.35;

    font-weight: 600;
}


.wz-list-item small {

    display: block;

    margin: 0;

    color: rgba(224,235,241,.76);

    font-size: 15.7px;

    line-height: 1.55;

    font-weight: 400;
}


/* =========================================================
   ARROW
========================================================= */

.wz-list-arrow {

    flex: 0 0 28px;

    width: 28px;

    height: 28px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    color: rgba(117,188,224,.55);

    font-size: 11px;

    transition:
        transform .3s ease,
        color .3s ease,
        background .3s ease;
}


.wz-list-item:hover .wz-list-arrow {

    transform: translateX(3px);

    color: #8bd1f0;

    background: rgba(36,84,117,.35);
}


/* =========================================================
   WHY CHOOSE
========================================================= */

.wz-why-section {

    padding: 100px 0;

    background: #172d3c;
}


.wz-why-grid {

    display: grid;

    grid-template-columns: repeat(4,minmax(0,1fr));

    gap: 22px;
}


.wz-why-card {

    position: relative;

    padding: 30px 25px 32px;

    background: rgba(20,43,57,.62);

    border: 1px solid rgba(130,176,199,.18);

    border-radius: 20px;

    backdrop-filter: blur(18px);

    -webkit-backdrop-filter: blur(18px);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.035),
        0 15px 38px rgba(0,0,0,.13);

    transition:
        transform .4s ease,
        background .4s ease,
        border-color .4s ease;
}


.wz-why-card:hover {

    transform: translateY(-7px);

    background: rgba(27,55,70,.76);

    border-color: rgba(83,151,188,.35);
}


.wz-why-icon {

    width: 54px;

    height: 54px;

    display: flex;

    align-items: center;

    justify-content: center;

    margin-bottom: 22px;

    border-radius: 15px;

    background: rgba(52,103,73,.30);

    border: 1px solid rgba(105,174,128,.34);

    color: #78bd8c;

    font-size: 21px;
}


.wz-why-number {

    display: block;

    margin-bottom: 7px;

    color: var(--wz-green-light);

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 1px;
}


.wz-why-card h3 {

    margin: 0 0 12px;

    color: #ffffff;

    font-size: 21px;

    line-height: 1.3;

    font-weight: 700;
}


.wz-why-card p {

    margin: 0;

    color: rgba(244,248,250,.76);

    font-size: 17px !important;

    line-height: 1.72;

    font-weight: 500;
}


/* =========================================================
   OUR APPROACH
========================================================= */

.wz-approach-section {

    padding: 100px 0 110px;

    background: #1b3444;
}


.wz-approach-grid {

    display: grid;

    grid-template-columns: repeat(4,minmax(0,1fr));

    gap: 20px;
}


/* =========================================================
   APPROACH CARD
========================================================= */

.wz-approach-card {

    position: relative;

    display: flex;

    flex-direction: column;

    overflow: hidden;

    background: rgba(20,43,57,.62);

    border: 1px solid rgba(130,176,199,.18);

    border-radius: 19px;

    backdrop-filter: blur(18px);

    -webkit-backdrop-filter: blur(18px);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.035),
        0 12px 30px rgba(0,0,0,.12);

    transition:
        transform .4s ease,
        background .4s ease,
        border-color .4s ease,
        box-shadow .4s ease;
}


.wz-approach-card:hover {

    transform: translateY(-8px);

    background: rgba(27,55,70,.76);

    border-color: rgba(77,145,189,.34);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.06),
        0 22px 45px rgba(0,0,0,.19);
}


/* =========================================================
   APPROACH IMAGE
========================================================= */

.wz-approach-image {

    position: relative;

    width: 100%;

    height: 205px;

    overflow: hidden;
}


.wz-approach-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    opacity: .78;

    transition:
        transform .65s ease,
        opacity .5s ease;
}


.wz-approach-card:hover .wz-approach-image img {

    transform: scale(1.07);

    opacity: .93;
}


.wz-approach-image-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(8,27,38,.12) 0%,
            rgba(8,27,38,.30) 50%,
            rgba(8,27,38,.78) 100%
        );
}


/* =========================================================
   APPROACH NUMBER
========================================================= */

.wz-approach-number {

    position: absolute;

    top: 16px;

    left: 16px;

    z-index: 3;

    width: 43px;

    height: 43px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 12px;

    background: rgba(20,43,57,.84);

    border: 1px solid rgba(255,255,255,.16);

    color: #ffffff;

    font-size: 12px;

    font-weight: 700;

    backdrop-filter: blur(13px);

    -webkit-backdrop-filter: blur(13px);
}


/* =========================================================
   APPROACH ICON
========================================================= */

.wz-approach-icon {

    position: absolute;

    right: 16px;

    bottom: 16px;

    z-index: 3;

    width: 48px;

    height: 48px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 14px;

    background: rgba(36,84,117,.60);

    border: 1px solid rgba(100,177,218,.35);

    color: #82c8e8;

    font-size: 19px;

    backdrop-filter: blur(14px);

    -webkit-backdrop-filter: blur(14px);

    transition:
        transform .35s ease,
        background .35s ease,
        border-color .35s ease;
}


.wz-approach-card:nth-child(odd) .wz-approach-icon {

    background: rgba(55,105,74,.56);

    border-color: rgba(111,184,135,.35);

    color: #84c995;
}


.wz-approach-card:hover .wz-approach-icon {

    transform: scale(1.08);

    background: rgba(36,91,124,.72);

    border-color: rgba(100,183,225,.50);
}


.wz-approach-card:nth-child(odd):hover .wz-approach-icon {

    background: rgba(57,113,79,.70);

    border-color: rgba(119,194,143,.50);
}


/* =========================================================
   APPROACH CONTENT
========================================================= */

.wz-approach-content {

    flex: 1;

    padding: 25px 23px 30px;
}


.wz-approach-label {

    display: inline-block;

    margin-bottom: 8px;

    color: #72ad83;

    font-size: 14px;

    font-weight: 700;

    letter-spacing: 1.2px;
}


.wz-approach-content h3 {

    margin: 0 0 12px;

    color: #ffffff;

    font-size: 24px;

    line-height: 1.25;

    font-weight: 700;
}


.wz-approach-content p {

    margin: 0;

    color: rgba(224,235,241,.76);

    font-size: 17px !important;

    line-height: 1.72;

    font-weight: 500;
}


/* =========================================================
   APPROACH FLOW
========================================================= */

.wz-approach-flow {

    display: flex;

    align-items: center;

    justify-content: center;

    flex-wrap: wrap;

    gap: 16px;

    margin-top: 48px;
}


.wz-approach-flow span {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    min-width: 100px;

    height: 40px;

    padding: 0 16px;

    border-radius: 50px;

    background: rgba(20,43,57,.62);

    border: 1px solid rgba(130,176,199,.18);

    color: rgba(255,255,255,.84);

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 1px;

    backdrop-filter: blur(12px);

    -webkit-backdrop-filter: blur(12px);
}


.wz-approach-flow i {

    color: var(--wz-green-light);

    font-size: 15px;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width:1100px) {

    .wz-solution-grid {

        grid-template-columns: repeat(2,minmax(0,1fr));
    }


    .wz-why-grid {

        grid-template-columns: repeat(2,minmax(0,1fr));
    }


    .wz-approach-grid {

        grid-template-columns: repeat(2,minmax(0,1fr));
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width:767px) {

    .wz-container {

        padding-left: 20px;

        padding-right: 20px;
    }


    .wz-solutions-hero {

        padding: 65px 0 55px;
    }


    .wz-hero-content h1 {

        font-size: 40px;
    }


    .wz-solutions-section,
    .wz-why-section,
    .wz-approach-section {

        padding: 70px 0 75px;
    }


    .wz-section-heading {

        margin-bottom: 38px;
    }


    .wz-section-heading h2 {

        font-size: 32px;
    }


    .wz-solution-grid {

        grid-template-columns: 1fr;

        gap: 25px;
    }


    .wz-card-image {

        height: 235px;
    }


    .wz-card-content {

        padding: 30px 25px 34px;
    }


    .wz-card-content h3 {

        font-size: 27px;
    }


    .wz-list-item {

        min-height: 84px;

        padding: 15px;

        gap: 14px;
    }


    .wz-service-icon {

        flex: 0 0 45px;

        width: 45px;

        height: 45px;

        font-size: 18px;
    }


    .wz-list-item strong {

        font-size: 16px;
    }


    .wz-list-item small {

        font-size: 14px;
    }


    .wz-list-arrow {

        flex: 0 0 24px;

        width: 24px;

        height: 24px;
    }


    .wz-why-grid {

        grid-template-columns: 1fr;

        gap: 18px;
    }


    .wz-approach-grid {

        grid-template-columns: 1fr;

        gap: 18px;
    }


    .wz-approach-image {

        height: 220px;
    }


    .wz-approach-content p {

        font-size: 17px !important;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width:480px) {

    .wz-container {

        padding-left: 16px;

        padding-right: 16px;
    }


    .wz-hero-content h1 {

        font-size: 33px;
    }


    .wz-section-heading h2 {

        font-size: 28px;
    }


    .wz-card-image {

        height: 210px;
    }


    .wz-card-content {

        padding: 27px 19px 31px;
    }


    .wz-card-content h3 {

        font-size: 24px;
    }


    .wz-list-item {

        align-items: flex-start;

        min-height: 0;

        padding: 14px;

        gap: 12px;
    }


    .wz-service-icon {

        flex: 0 0 42px;

        width: 42px;

        height: 42px;

        font-size: 17px;
    }


    .wz-list-item strong {

        font-size: 15px;
    }


    .wz-list-item small {

        font-size: 13px;

        line-height: 1.5;
    }


    .wz-list-arrow {

        display: none;
    }


    .wz-approach-image {

        height: 200px;
    }


    .wz-approach-content {

        padding: 23px 18px 28px;
    }


    .wz-approach-content h3 {

        font-size: 22px;
    }


    .wz-approach-content p {

        font-size: 17px !important;

        line-height: 1.7;
    }


    .wz-approach-flow {

        display: grid;

        grid-template-columns: 1fr 1fr;

        width: 100%;

        gap: 8px;

        margin-top: 35px;
    }


    .wz-approach-flow i {

        display: none;
    }


    .wz-approach-flow span {

        width: 100%;

        min-width: 0;
    }

}






























/* =========================================================
   WAYZON INFOTECH
   CAREER PAGE - COMPLETE CSS
   ========================================================= */

   :root {
    --wz-green: #427454;
    --wz-green-dark: #345f45;
    --wz-green-light: #eaf2ed;

    --wz-blue: #245475;
    --wz-blue-dark: #193f59;
    --wz-blue-light: #e8f0f5;

    --wz-dark: #19313f;
    --wz-text: #53636b;
    --wz-muted: #7b898f;

    --wz-white: #ffffff;
    --wz-bg: #f6f8f9;
    --wz-light: #f1f5f3;

    --wz-border: #e3eaed;

    --wz-shadow:
        0 18px 50px rgba(25, 49, 63, 0.07);

    --wz-shadow-soft:
        0 10px 30px rgba(25, 49, 63, 0.05);

    --wz-radius: 18px;
}


/* =========================================================
   GLOBAL
========================================================= */

.wz-career-page {
    width: 100%;
    overflow: hidden;

    background: var(--wz-bg);

    font-family: "Quicksand", sans-serif;

    color: var(--wz-text);
}

.wz-career-page *,
.wz-career-page *::before,
.wz-career-page *::after {
    box-sizing: border-box;
}

.wz-career-page .wz-container {
    width: 100%;
    max-width: 1200px;

    margin-left: auto;
    margin-right: auto;

    padding-left: 20px;
    padding-right: 20px;
}

.wz-career-page img {
    max-width: 100%;
}

.wz-career-page a {
    text-decoration: none;
}

/* =========================================================
   CAREER HERO - SPLIT BANNER
========================================================= */

.wz-career-hero {
    position: relative;

    min-height: 480px;

    display: flex;
    align-items: center;

    background: #19313f;

    overflow: hidden;
}


/* Main container */

.wz-career-hero .wz-container {
    position: relative;
    z-index: 2;
}


/* =========================================================
   HERO INNER
========================================================= */

.wz-career-hero-inner {
    display: grid;

    grid-template-columns: 1fr 0.9fr;

    align-items: center;

    gap: 55px;

    min-height: 480px;
}


/* =========================================================
   LEFT CONTENT
========================================================= */

.wz-career-hero-content {
    padding: 70px 0;

    max-width: 650px;
}


/* Eyebrow */

.wz-career-eyebrow {
    display: flex;
    align-items: center;

    gap: 10px;

    margin-bottom: 18px;

    color: #cbdcd2;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 2.5px;

    text-transform: uppercase;
}

.wz-career-eyebrow span {
    display: block;

    width: 30px;
    height: 2px;

    background: #427454;
}


/* Heading */

.wz-career-hero h1 {
    margin: 0 0 22px;

    color: #ffffff;

    font-size: clamp(40px, 5vw, 62px);

    line-height: 1.08;

    font-weight: 700;

    letter-spacing: -1px;
}

.wz-career-hero h1 strong {
    display: block;

    color: #bcd3c5;

    font-weight: 700;
}


/* Paragraph */

.wz-career-hero p {
    max-width: 600px;

    margin: 0 0 30px;

    color: rgba(255,255,255,.78);

    font-size: 16px;

    line-height: 1.8;
}


/* Button */

.wz-career-hero-btn {
    display: inline-flex;
    align-items: center;

    gap: 11px;

    padding: 14px 23px;

    background: #427454;

    color: #ffffff !important;

    border-radius: 7px;

    font-size: 14px;

    font-weight: 700;

    transition:
        background .25s ease,
        transform .25s ease;
}

.wz-career-hero-btn:hover {
    background: #245475;

    color: #ffffff !important;

    transform: translateY(-2px);
}

.wz-career-hero-btn i {
    transition: transform .25s ease;
}

.wz-career-hero-btn:hover i {
    transform: translateX(4px);
}


/* =========================================================
   RIGHT IMAGE
========================================================= */

.wz-career-hero-image {
    position: relative;

    height: 100%;

    min-height: 480px;

    display: flex;

    align-items: center;

    justify-content: flex-end;
}


/* Image frame */

.wz-career-image-frame {
    position: relative;

    width: 100%;

    max-width: 520px;

    height: 390px;

    overflow: hidden;

    border-radius: 22px;

    border: 1px solid rgba(255,255,255,.15);

    box-shadow:
        0 25px 60px rgba(0,0,0,.25);
}


/* Image */

.wz-career-image-frame img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition: transform .6s ease;
}


/* Subtle image zoom */

.wz-career-image-frame:hover img {
    transform: scale(1.04);
}


/* =========================================================
   IMAGE DECORATION
========================================================= */

.wz-career-image-frame::after {
    content: "";

    position: absolute;

    inset: 0;

    background: rgba(25,49,63,.12);

    pointer-events: none;
}


/* Green accent */

.wz-career-hero-image::before {
    content: "";

    position: absolute;

    right: -15px;
    bottom: 40px;

    width: 110px;
    height: 110px;

    border: 2px solid #427454;

    border-radius: 50%;

    opacity: .65;
}


/* =========================================================
   DESKTOP DECORATION
========================================================= */

.wz-career-hero::after {
    content: "";

    position: absolute;

    left: -180px;
    bottom: -230px;

    width: 500px;
    height: 500px;

    border: 1px solid rgba(255,255,255,.08);

    border-radius: 50%;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .wz-career-hero-inner {
        grid-template-columns: 1fr 1fr;

        gap: 30px;
    }

    .wz-career-hero h1 {
        font-size: 42px;
    }

    .wz-career-hero p {
        font-size: 15px;
    }

    .wz-career-image-frame {
        height: 340px;

        border-radius: 18px;
    }

    .wz-career-hero-image {
        min-height: 400px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .wz-career-hero {
        min-height: auto;
    }

    .wz-career-hero-inner {
        display: flex;

        flex-direction: column;

        gap: 0;

        min-height: auto;
    }


    /* Content */

    .wz-career-hero-content {
        order: 1;

        padding: 60px 0 35px;

        max-width: none;
    }

    .wz-career-hero h1 {
        font-size: 36px;

        letter-spacing: -.5px;
    }

    .wz-career-hero p {
        font-size: 15px;
    }


    /* Image */

    .wz-career-hero-image {
        order: 2;

        width: 100%;

        min-height: auto;

        padding-bottom: 50px;

        justify-content: center;
    }

    .wz-career-image-frame {
        width: 100%;

        max-width: none;

        height: 280px;

        border-radius: 16px;
    }


    .wz-career-hero-image::before {
        right: 5px;

        bottom: 25px;

        width: 75px;
        height: 75px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 400px) {

    .wz-career-hero-content {
        padding-top: 50px;
    }

    .wz-career-hero h1 {
        font-size: 31px;
    }

    .wz-career-hero p {
        font-size: 14px;
    }

    .wz-career-image-frame {
        height: 240px;
    }

}

/* =========================================================
   SECTION HEADER
========================================================= */

.wz-career-section-head {
    max-width: 760px;

    margin: 0 auto 55px;

    text-align: center;
}

.wz-career-section-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    margin-bottom: 13px;

    color: var(--wz-green);

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 2px;

    text-transform: uppercase;
    margin-top: 50px;
}

.wz-career-section-label::before {
    content: "";

    width: 22px;
    height: 2px;

    background: var(--wz-green);
}


.wz-career-section-head h2 {
    margin: 0 0 17px;

    color: var(--wz-dark);

    font-size: 43px;

    line-height: 1.18;

    font-weight: 700;

    letter-spacing: -.7px;
}

.wz-career-section-head h2 span {
    color: var(--wz-blue);
}


.wz-career-section-head p {
    max-width: 720px;

    margin: 0 auto;

    color: var(--wz-text);

    font-size: 16px;

    line-height: 1.85;
}


/* =========================================================
   WHY CARDS GRID
========================================================= */

.wz-career-expect-grid {
    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 20px;
}


/* =========================================================
   EXPECT CARD
========================================================= */

.wz-career-expect-card {
    position: relative;

    min-height: 285px;

    padding: 30px 26px;

    background: #f8faf9;

    border: 1px solid #e5ebe8;

    border-radius: 16px;

    overflow: hidden;

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        background .3s ease;
}


/* Number */

.wz-career-expect-number {
    position: absolute;

    top: 20px;
    right: 22px;

    color: #dce7e0;

    font-size: 48px;

    line-height: 1;

    font-weight: 700;
}


/* Hover card */

.wz-career-expect-card:hover {
    transform: translateY(-7px);

    background: #ffffff;

    box-shadow: var(--wz-shadow);

    border-color: #dce5e0;
}


/* =========================================================
   EXPECT ICON
========================================================= */

.wz-career-expect-icon {
    position: relative;
    z-index: 2;

    width: 55px;
    height: 55px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 25px;

    background: var(--wz-green-light);

    color: var(--wz-green);

    border-radius: 13px;

    font-size: 20px;

    transition:
        background .3s ease,
        color .3s ease;
}

.wz-career-expect-card:hover .wz-career-expect-icon {
    background: var(--wz-green);

    color: #ffffff;
}


/* =========================================================
   EXPECT CONTENT
========================================================= */

.wz-career-expect-card h3 {
    position: relative;
    z-index: 2;

    margin: 0 0 13px;

    color: var(--wz-dark);

    font-size: 18px;

    line-height: 1.4;

    font-weight: 700;
}

.wz-career-expect-card p {
    position: relative;
    z-index: 2;

    margin: 0;

    color: var(--wz-text);

    font-size: 16px;

    line-height: 1.85;
}


/* =========================================================
   CURRENT OPENINGS
========================================================= */

.wz-career-openings {
    padding: 95px 0;

    background: var(--wz-bg);
}


/* =========================================================
   OPENINGS HEADER
========================================================= */

.wz-career-openings-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 30px;

    margin-bottom: 45px;
}

.wz-career-openings-title .wz-career-section-label {
    margin-bottom: 10px;
}

.wz-career-openings-title h2 {
    margin: 0;

    color: var(--wz-dark);

    font-size: 42px;

    line-height: 1.2;

    font-weight: 700;
}

.wz-career-openings-title h2 span {
    color: var(--wz-blue);
}


/* Positions count */

.wz-career-openings-count {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    padding: 10px 15px;

    background: #ffffff;

    border: 1px solid var(--wz-border);

    border-radius: 30px;

    color: var(--wz-text);

    font-size: 13px;

    font-weight: 600;

    white-space: nowrap;
}

.wz-career-openings-count span {
    width: 7px;
    height: 7px;

    background: var(--wz-green);

    border-radius: 50%;
}


/* =========================================================
   JOB CARD
========================================================= */

.wz-job-card {
    position: relative;

    margin-bottom: 35px;

    background: #ffffff;

    border: 1px solid var(--wz-border);

    border-radius: 20px;

    box-shadow: var(--wz-shadow-soft);

    overflow: hidden;

    transition:
        box-shadow .3s ease,
        transform .3s ease;
}

.wz-job-card:hover {
    transform: translateY(-4px);

    box-shadow: var(--wz-shadow);
}


/* =========================================================
   JOB TOP
========================================================= */

.wz-job-top {
    display: grid;

    grid-template-columns: 60px minmax(0, 1fr) auto;

    align-items: center;

    gap: 20px;

    padding: 28px 32px;

    background: #ffffff;

    border-bottom: 1px solid var(--wz-border);
}


/* Job number */

.wz-job-number {
    width: 52px;
    height: 52px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: var(--wz-green-light);

    color: var(--wz-green);

    border-radius: 12px;

    font-size: 15px;

    font-weight: 700;
}


/* =========================================================
   JOB TITLE
========================================================= */

.wz-job-title h3 {
    margin: 0 0 11px;

    color: var(--wz-dark);

    font-size: 28px;

    line-height: 1.2;

    font-weight: 700;
}


/* =========================================================
   JOB META
========================================================= */

.wz-job-meta {
    display: flex;
    flex-wrap: wrap;

    gap: 8px 18px;
}

.wz-job-meta span {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    color: var(--wz-muted);

    font-size: 13px;

    font-weight: 600;
}

.wz-job-meta span i {
    color: var(--wz-green);

    font-size: 12px;
}


/* =========================================================
   TOP APPLY BUTTON
========================================================= */

.wz-job-apply-top {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    padding: 12px 18px;

    background: var(--wz-blue);

    color: #ffffff !important;

    border-radius: 7px;

    font-size: 13px;

    font-weight: 700;

    white-space: nowrap;

    transition:
        background .25s ease;
}

.wz-job-apply-top:hover {
    background: var(--wz-green);

    color: #ffffff !important;
}

.wz-job-apply-top i {
    font-size: 11px;

    transition: transform .25s ease;
}

.wz-job-apply-top:hover i {
    transform: translateX(4px);
}


/* =========================================================
   JOB CONTENT
========================================================= */

.wz-job-content {
    display: grid;

    grid-template-columns: minmax(0, 1fr) 300px;

    gap: 38px;

    padding: 35px 32px;
}


/* =========================================================
   JOB MAIN
========================================================= */

.wz-job-main {
    min-width: 0;
}

.wz-job-main h4 {
    position: relative;

    margin: 0 0 17px;

    padding-left: 14px;

    color: var(--wz-dark);

    font-size: 21px;

    line-height: 1.3;

    font-weight: 700;
}

.wz-job-main h4::before {
    content: "";

    position: absolute;

    left: 0;
    top: 3px;

    width: 4px;
    height: 22px;

    background: var(--wz-green);

    border-radius: 5px;
}


.wz-job-main > p {
    margin: 0 0 30px;

    color: var(--wz-text);

    font-size: 16px;

    line-height: 1.85;
}

.wz-job-main > p strong {
    color: var(--wz-dark);

    font-weight: 700;
}


/* =========================================================
   JOB LIST
========================================================= */

.wz-job-list {
    margin: 0 0 28px;

    padding: 0;

    list-style: none;
}

.wz-job-list li {
    position: relative;

    display: flex;

    align-items: flex-start;

    gap: 13px;

    margin-bottom: 14px;

    color: #53636b;

    font-size: 16px;

    line-height: 1.75;

    transition: none;
}


/* Green check */

.wz-job-list li::before {
    content: "✓";

    flex: 0 0 auto;

    width: 24px;
    height: 24px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-top: 2px;

    background: var(--wz-green-light);

    color: var(--wz-green);

    border-radius: 50%;

    font-size: 11px;

    font-weight: 800;
}


/* NO LIST HOVER */

.wz-job-list li:hover {
    color: #53636b;

    transform: none;
}


/* =========================================================
   REQUIREMENTS BOX
========================================================= */

.wz-job-requirements {
    margin-top: 32px;

    padding: 26px 27px;

    background: #f3f7f4;

    border-left: 4px solid var(--wz-green);

    border-radius: 0 15px 15px 0;
}

.wz-job-requirements h4 {
    margin-top: 0;
}


/* =========================================================
   SIDEBAR
========================================================= */

.wz-job-sidebar {
    align-self: start;

    position: sticky;

    top: 25px;

    padding: 10px;

    background: #f8faf9;

    border: 1px solid #e3eae6;

    border-radius: 17px;

    box-shadow: none;
}


/* =========================================================
   SIDEBAR BOX
========================================================= */

.wz-job-side-box {
    display: flex;
    align-items: center;

    gap: 14px;

    padding: 15px 12px;

    border-radius: 11px;

    transition: none;
}

.wz-job-side-box:hover {
    background: transparent;

    transform: none;
}


/* =========================================================
   SIDEBAR ICON
========================================================= */

.wz-job-side-icon {
    flex: 0 0 auto;

    width: 46px;
    height: 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: var(--wz-green-light);

    color: var(--wz-green);

    border-radius: 11px;

    font-size: 17px;

    transition: none;
}

.wz-job-side-box:hover .wz-job-side-icon {
    background: var(--wz-green-light);

    color: var(--wz-green);

    transform: none;
}


/* =========================================================
   SIDEBAR LABEL
========================================================= */

.wz-job-side-label {
    margin-bottom: 3px;

    color: #829096;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 1.2px;

    text-transform: uppercase;
}


/* =========================================================
   SIDEBAR VALUE
========================================================= */

.wz-job-side-value {
    color: var(--wz-dark);

    font-size: 17px;

    line-height: 1.4;

    font-weight: 700;
}


/* =========================================================
   CONTACT BOX
========================================================= */

.wz-job-contact {
    margin-top: 9px;

    padding: 8px;

    background: #eaf1ed;

    border-radius: 13px;
}


/* =========================================================
   CONTACT LINKS
========================================================= */

.wz-job-contact a {
    display: flex;
    align-items: center;

    gap: 12px;

    padding: 11px 7px;

    color: var(--wz-dark) !important;

    border-radius: 9px;

    transition: none;
}

.wz-job-contact a:hover {
    background: transparent;

    color: var(--wz-dark) !important;

    transform: none;
}


/* =========================================================
   CONTACT ICON
========================================================= */

.wz-job-contact a > i {
    flex: 0 0 auto;

    width: 39px;
    height: 39px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: var(--wz-green);

    color: #ffffff;

    border-radius: 50%;

    font-size: 13px;

    transition: none;
}

.wz-job-contact a:hover > i {
    background: var(--wz-green);

    color: #ffffff;

    transform: none;
}


/* =========================================================
   CONTACT TEXT
========================================================= */

.wz-job-contact a span {
    display: flex;
    flex-direction: column;

    min-width: 0;

    color: var(--wz-dark);

    font-size: 14px;

    line-height: 1.45;

    font-weight: 700;
}

.wz-job-contact a small {
    margin-bottom: 2px;

    color: #7c898f;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 1px;

    text-transform: uppercase;
}


/* =========================================================
   JOB BOTTOM
========================================================= */

.wz-job-bottom {
    display: flex;
    align-items: center;
    justify-content: flex-end;

    padding: 22px 32px;

    background: #f8faf9;

    border-top: 1px solid var(--wz-border);
}


/* =========================================================
   MAIN APPLY BUTTON
========================================================= */

.wz-job-apply {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    padding: 13px 21px;

    background: var(--wz-green);

    color: #ffffff !important;

    border-radius: 7px;

    font-size: 14px;

    font-weight: 700;

    transition:
        background .25s ease;
}

.wz-job-apply:hover {
    background: var(--wz-blue);

    color: #ffffff !important;
}

.wz-job-apply i {
    font-size: 12px;

    transition: transform .25s ease;
}

.wz-job-apply:hover i {
    transform: translateX(4px);
}


/* =========================================================
   RESUME / NO SUITABLE OPENING
========================================================= */

.wz-career-resume {
    padding: 85px 0;

    background: #ffffff;
}

.wz-resume-box {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 50px;

    padding: 48px 50px;

    background: var(--wz-blue);

    border-radius: 20px;

    overflow: hidden;
}


/* Decorative circle */

.wz-resume-box::after {
    content: "";

    position: absolute;

    right: -100px;
    top: -180px;

    width: 430px;
    height: 430px;

    border: 1px solid rgba(255,255,255,.12);

    border-radius: 50%;

    pointer-events: none;
}


/* Second circle */

.wz-resume-box::before {
    content: "";

    position: absolute;

    right: 30px;
    bottom: -240px;

    width: 420px;
    height: 420px;

    border: 1px solid rgba(255,255,255,.08);

    border-radius: 50%;

    pointer-events: none;
}


/* =========================================================
   RESUME CONTENT
========================================================= */

.wz-resume-content {
    position: relative;

    z-index: 2;

    max-width: 700px;
}

.wz-resume-label {
    display: flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 15px;

    color: #c6d9ce;

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 1.8px;

    text-transform: uppercase;
}

.wz-resume-label span {
    width: 25px;
    height: 2px;

    background: var(--wz-green);
}


.wz-resume-content h2 {
    margin: 0 0 16px;

    color: #ffffff;

    font-size: 35px;

    line-height: 1.2;

    font-weight: 700;
}

.wz-resume-content h2 strong {
    color: #c4d8cc;

    font-weight: 700;
}


.wz-resume-content p {
    margin: 0;

    color: rgba(255,255,255,.78);

    font-size: 15px;

    line-height: 1.85;
}


/* =========================================================
   RESUME CONTACT
========================================================= */

.wz-resume-contact {
    position: relative;

    z-index: 2;

    display: flex;
    flex-direction: column;

    align-items: stretch;

    gap: 12px;

    min-width: 230px;
}


/* Email */

.wz-resume-mail {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    padding: 13px 18px;

    background: rgba(255,255,255,.09);

    color: #ffffff !important;

    border: 1px solid rgba(255,255,255,.16);

    border-radius: 8px;

    font-size: 13px;

    font-weight: 600;

    transition: none;
}

.wz-resume-mail:hover {
    background: rgba(255,255,255,.09);

    color: #ffffff !important;
}

.wz-resume-mail i {
    color: #c4d8cc;
}


/* Resume button */

.wz-resume-btn {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    padding: 14px 20px;

    background: #ffffff;

    color: var(--wz-blue) !important;

    border-radius: 8px;

    font-size: 14px;

    font-weight: 700;

    transition:
        background .25s ease,
        color .25s ease;
}

.wz-resume-btn:hover {
    background: var(--wz-green);

    color: #ffffff !important;
}

.wz-resume-btn i {
    transition: transform .25s ease;
}

.wz-resume-btn:hover i {
    transform: translateX(4px);
}


/* =========================================================
   REMOVE RED STYLES
========================================================= */

.wz-career-page .text-danger,
.wz-career-page .text-red,
.wz-career-page .danger,
.wz-career-page .required,
.wz-career-page .error {
    color: inherit !important;
}


/* =========================================================
   REMOVE UNWANTED LIST HOVER
========================================================= */

.wz-career-page ul li:hover {
    transform: none !important;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1100px) {

    .wz-career-expect-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .wz-job-content {
        grid-template-columns: minmax(0, 1fr) 280px;

        gap: 25px;
    }

    .wz-job-top {
        grid-template-columns: 55px minmax(0, 1fr) auto;

        padding: 25px;
    }

    .wz-job-content {
        padding: 30px 25px;
    }

    .wz-job-bottom {
        padding: 20px 25px;
    }

    .wz-resume-box {
        padding: 40px;
    }
}


/* =========================================================
   TABLET / SMALL LAPTOP
========================================================= */

@media (max-width: 991px) {

    .wz-career-hero {
        min-height: 400px;
    }

    .wz-career-hero-content {
        padding: 75px 0;
    }

    .wz-career-section-head h2,
    .wz-career-openings-title h2 {
        font-size: 36px;
    }


    /* Job layout */

    .wz-job-content {
        display: block;
    }

    .wz-job-main {
        margin-bottom: 35px;
    }

    .wz-job-sidebar {
        position: static;

        display: grid;

        grid-template-columns: repeat(3, 1fr);

        gap: 5px;
    }

    .wz-job-contact {
        grid-column: 1 / -1;

        display: grid;

        grid-template-columns: 1fr 1fr;

        gap: 5px;
    }

    .wz-job-contact a {
        padding: 12px;
    }


    /* Resume */

    .wz-resume-box {
        flex-direction: column;

        align-items: flex-start;

        gap: 30px;
    }

    .wz-resume-contact {
        width: 100%;

        max-width: 350px;

        flex-direction: row;

        align-items: center;
    }

    .wz-resume-mail,
    .wz-resume-btn {
        flex: 1;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    /* Global */

    .wz-career-page .wz-container {
        padding-left: 16px;
        padding-right: 16px;
    }


    /* Hero */

    .wz-career-hero {
        min-height: 370px;
    }

    .wz-career-hero-content {
        padding: 65px 0;
    }

    .wz-career-eyebrow {
        font-size: 11px;

        letter-spacing: 2px;
    }

    .wz-career-hero h1 {
        font-size: 36px;

        letter-spacing: -.5px;
    }

    .wz-career-hero p {
        font-size: 15px;

        line-height: 1.7;
    }


    /* Why */

    .wz-career-why {
        padding: 65px 0;
    }

    .wz-career-section-head {
        margin-bottom: 35px;
    }

    .wz-career-section-head h2 {
        font-size: 30px;
    }

    .wz-career-section-head p {
        font-size: 15px;
    }


    /* Cards */

    .wz-career-expect-grid {
        grid-template-columns: 1fr;

        gap: 14px;
    }

    .wz-career-expect-card {
        min-height: auto;

        padding: 26px 23px;
    }


    /* Openings */

    .wz-career-openings {
        padding: 65px 0;
    }

    .wz-career-openings-head {
        display: block;

        margin-bottom: 30px;
    }

    .wz-career-openings-title h2 {
        font-size: 31px;
    }

    .wz-career-openings-count {
        margin-top: 17px;
    }


    /* Job */

    .wz-job-card {
        border-radius: 15px;

        margin-bottom: 25px;
    }

    .wz-job-top {
        display: grid;

        grid-template-columns: 48px minmax(0, 1fr);

        gap: 15px;

        padding: 22px 18px;
    }

    .wz-job-number {
        width: 45px;
        height: 45px;

        font-size: 13px;
    }

    .wz-job-title h3 {
        font-size: 23px;
    }

    .wz-job-meta {
        display: block;
    }

    .wz-job-meta span {
        margin-bottom: 6px;

        font-size: 12px;
    }


    /* Apply top button */

    .wz-job-apply-top {
        grid-column: 1 / -1;

        width: 100%;

        margin-top: 5px;
    }


    /* Job content */

    .wz-job-content {
        padding: 25px 18px;
    }

    .wz-job-main {
        margin-bottom: 25px;
    }

    .wz-job-main h4 {
        font-size: 20px;
    }

    .wz-job-main > p {
        font-size: 15px;

        line-height: 1.8;
    }


    /* List */

    .wz-job-list li {
        gap: 10px;

        font-size: 15px;

        line-height: 1.7;
    }

    .wz-job-list li::before {
        width: 22px;
        height: 22px;

        font-size: 10px;
    }


    /* Requirements */

    .wz-job-requirements {
        padding: 22px 18px;
    }


    /* Sidebar */

    .wz-job-sidebar {
        display: block;

        padding: 7px;
    }

    .wz-job-side-box {
        padding: 13px 10px;
    }

    .wz-job-side-icon {
        width: 43px;
        height: 43px;

        font-size: 16px;
    }

    .wz-job-side-value {
        font-size: 16px;
    }


    /* Contact */

    .wz-job-contact {
        display: block;

        padding: 8px;
    }

    .wz-job-contact a {
        padding: 11px 6px;
    }

    .wz-job-contact a > i {
        width: 38px;
        height: 38px;
    }


    /* Bottom */

    .wz-job-bottom {
        padding: 18px;
    }

    .wz-job-apply {
        width: 100%;
    }


    /* Resume */

    .wz-career-resume {
        padding: 60px 0;
    }

    .wz-resume-box {
        padding: 32px 22px;

        border-radius: 16px;
    }

    .wz-resume-content h2 {
        font-size: 28px;
    }

    .wz-resume-content p {
        font-size: 14px;
    }

    .wz-resume-contact {
        display: flex;

        flex-direction: column;

        align-items: stretch;

        width: 100%;

        max-width: none;
    }

    .wz-resume-mail,
    .wz-resume-btn {
        width: 100%;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 400px) {

    .wz-career-hero h1 {
        font-size: 31px;
    }

    .wz-career-hero p {
        font-size: 14px;
    }

    .wz-career-section-head h2 {
        font-size: 27px;
    }

    .wz-career-openings-title h2 {
        font-size: 28px;
    }

    .wz-job-title h3 {
        font-size: 21px;
    }

    .wz-job-main h4 {
        font-size: 19px;
    }

    .wz-job-list li {
        font-size: 14px;
    }

    .wz-job-side-value {
        font-size: 15px;
    }

    .wz-resume-content h2 {
        font-size: 25px;
    }

}
/* ============================================================
   WAYZON NAVBAR — FULL PREMIUM CSS
   Desktop + Mobile + Glass Mega Menu
   ============================================================ */


/* ============================================================
   ROOT COLORS
   ============================================================ */

   :root {

    --primary: #245475;
    --secondary: #4a8862;

    --dark: #172d3c;

    --light: #eaf2ec;

    --nav-text: #405563;

    --nav-border: rgba(36, 84, 117, 0.12);

}


/* ============================================================
   BASE NAVBAR
   ============================================================ */

.navbar.sticky-top {

    top: -100px;

    transition: .5s ease;
}


.navbar {

    font-family: "Quicksand", sans-serif;

    background: rgba(255, 255, 255, .97) !important;

    border-bottom: 1px solid rgba(36, 84, 117, .08);

    box-shadow:
        0 4px 20px rgba(23, 45, 60, .05);
}


.navbar .navbar-brand,
.navbar a.btn {

    height: 75px;
}


/* ============================================================
   LOGO
   ============================================================ */

.navbar .navbar-brand {

    display: flex;

    align-items: center;

    background: rgba(255,255,255,.65);
}


.navbar .navbar-brand img {

    max-height: 60px;

    width: auto;

    object-fit: contain;
}


/* ============================================================
   NAV LINKS
   ============================================================ */

.navbar .navbar-nav .nav-link {

    position: relative;

    margin-right: 30px;

    padding: 25px 0;

    color: var(--dark);

    font-size: 17px;

    font-weight: 600;

    text-transform: capitalize;

    outline: none;

    transition:
        color .3s ease;
}


/* underline */

.navbar .navbar-nav .nav-link::after {

    content: "";

    position: absolute;

    left: 0;

    bottom: 18px;

    width: 0;

    height: 2px;

    border-radius: 10px;

    background: #4a8862;

    transition: width .35s ease;
}


/* hover */

.navbar .navbar-nav .nav-link:hover,
.navbar .navbar-nav .nav-link.active {

    color: #4a8862;
}


.navbar .navbar-nav .nav-link:hover::after,
.navbar .navbar-nav .nav-link.active::after {

    width: 100%;
}


/* ============================================================
   DROPDOWN ARROW
   ============================================================ */

.navbar .dropdown-toggle::after {

    border: none;

    content: "\f107";

    font-family: "Font Awesome 6 Free";

    font-weight: 900;

    vertical-align: middle;

    margin-left: 8px;

    transition:
        transform .35s ease;
}


.navbar .nav-item:hover .dropdown-toggle::after {

    transform: rotate(180deg);
}


/* ============================================================
   DESKTOP DROPDOWN
   ============================================================ */

@media (min-width: 992px) {

    .navbar .nav-item .dropdown-menu {

        display: block;

        border: none;

        margin-top: 0;

        top: 130%;

        opacity: 0;

        visibility: hidden;

        transition:
            opacity .35s ease,
            visibility .35s ease,
            top .35s ease;
    }


    .navbar .nav-item:hover .dropdown-menu {

        top: 100%;

        visibility: visible;

        opacity: 1;
    }


    /* mobile toggle hidden */

    .solutions-toggle {

        display: none !important;
    }

}


/* ============================================================
   MEGA MENU
   ============================================================ */

.mega-menu {

    position: absolute;

    left: 0;

    right: 0;

    width: 100%;

    margin-top: 0;

    padding: 45px 0;

    border: none !important;

    border-top: 3px solid #4a8862 !important;

    border-radius: 0 0 20px 20px;

    background: rgba(255, 255, 255, .94) !important;

    box-shadow:
        0 25px 55px rgba(23, 45, 60, .14),
        0 8px 20px rgba(23, 45, 60, .05);

    backdrop-filter: blur(18px);

    -webkit-backdrop-filter: blur(18px);

    overflow: hidden;
}


/* glass shine */

.mega-menu::before {

    content: "";

    position: absolute;

    top: 0;

    left: 0;

    right: 0;

    height: 1px;

    background: rgba(255,255,255,.95);

    pointer-events: none;
}


/* subtle background glow */

.mega-menu::after {

    content: "";

    position: absolute;

    width: 350px;

    height: 350px;

    right: -150px;

    top: -200px;

    border-radius: 50%;

    background: rgba(74,136,98,.07);

    filter: blur(50px);

    pointer-events: none;
}


/* ============================================================
   MEGA MENU CONTAINER
   ============================================================ */

.mega-menu .container {

    position: relative;

    z-index: 2;

    max-width: 1250px;

    margin: 0 auto;

    padding: 0 45px;

    display: grid;

    grid-template-columns:
        repeat(3, 1fr)
        1.15fr;

    align-items: start;

    gap: 42px;
}


/* ============================================================
   MEGA MENU COLUMN
   ============================================================ */

.mega-menu-col {

    padding: 0;

    position: relative;
}


/* ============================================================
   MEGA MENU HEADING
   ============================================================ */

.mega-menu-heading {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 10px;

    text-transform: uppercase;

    font-size: 14px;

    font-weight: 700;

    letter-spacing: .8px;

    color: #245475;

    text-decoration: none;

    margin: 0 0 18px;

    padding-bottom: 12px;

    border-bottom:
        1px solid rgba(36,84,117,.12);

    transition:
        color .3s ease,
        border-color .3s ease;
}


.mega-menu-heading:hover {

    color: #4a8862;

    border-color:
        rgba(74,136,98,.35);
}


.mega-menu-heading i {

    font-size: 11px;

    color: #4a8862;

    opacity: 0;

    transform: translateX(-7px);

    transition:
        opacity .25s ease,
        transform .25s ease;
}


.mega-menu-heading:hover i {

    opacity: 1;

    transform: translateX(0);
}


/* ============================================================
   MEGA MENU LIST
   ============================================================ */

.mega-menu-col ul {

    list-style: none;

    padding: 0;

    margin: 0;
}


.mega-menu-col ul li {

    margin-bottom: 8px;
}


.mega-menu-col ul li:last-child {

    margin-bottom: 0;
}


/* ============================================================
   MEGA MENU LINKS
   ============================================================ */

.mega-menu-col ul li a {

    position: relative;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 7px 9px;

    border-radius: 11px;

    border: 1px solid transparent;

    color: #4b5f6b;

    background: rgba(255,255,255,.30);

    font-size: 15px;

    font-weight: 600;

    line-height: 1.4;

    text-decoration: none;

    transition:
        color .25s ease,
        background .25s ease,
        border-color .25s ease,
        transform .25s ease;
}


.mega-menu-col ul li a:hover {

    color: #245475;

    background:
        rgba(234,242,236,.78);

    border-color:
        rgba(74,136,98,.14);

    transform: translateX(4px);
}


/* ============================================================
   MENU ICON
   ============================================================ */

.mega-menu-col ul li a i {

    width: 35px;

    height: 35px;

    min-width: 35px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 10px;

    background:
        rgba(234,242,236,.75);

    color: #4a8862;

    border:
        1px solid rgba(74,136,98,.10);

    font-size: 14px;

    transition:
        background .3s ease,
        color .3s ease,
        transform .3s ease,
        box-shadow .3s ease;
}


.mega-menu-col ul li a:hover i {

    background: #4a8862;

    color: #ffffff;

    transform:
        scale(1.08)
        rotate(-5deg);

    box-shadow:
        0 6px 15px rgba(74,136,98,.22);
}


/* ============================================================
   PROFESSIONAL SERVICES PROMO CARD
   ============================================================ */

.promo-card {

    position: relative;

    height: auto;

    min-height: 250px;

    aspect-ratio: auto;

    padding: 26px !important;

    display: flex;

    flex-direction: column;

    justify-content: center;

    overflow: hidden;

    border-radius: 18px !important;

    background:
        linear-gradient(
            135deg,
            rgba(36,84,117,.97),
            rgba(29,68,90,.96)
        ) !important;

    border:
        1px solid rgba(255,255,255,.16) !important;

    box-shadow:
        0 16px 35px rgba(23,45,60,.18),
        inset 0 1px 0 rgba(255,255,255,.12);

    backdrop-filter: blur(18px);

    -webkit-backdrop-filter: blur(18px);
}


/* promo glow */

.promo-card::before {

    content: "";

    position: absolute;

    width: 180px;

    height: 180px;

    top: -100px;

    right: -55px;

    border-radius: 50%;

    background:
        rgba(255,255,255,.08);

    filter: blur(4px);

    pointer-events: none;
}


.promo-card::after {

    content: "";

    position: absolute;

    width: 160px;

    height: 160px;

    left: -60px;

    bottom: -110px;

    border-radius: 50%;

    background:
        rgba(74,136,98,.25);

    filter: blur(30px);

    pointer-events: none;
}


/* ============================================================
   PROMO TAG
   ============================================================ */

.promo-card .promo-tag {

    position: relative;

    z-index: 2;

    margin-bottom: 8px;

    color: #9bd3aa;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 1.3px;

    text-transform: uppercase;
}


/* ============================================================
   PROMO HEADING
   ============================================================ */

.promo-card .promo-heading {

    position: relative;

    z-index: 2;

    margin-bottom: 18px;

    color: #ffffff;

    font-size: 20px;

    line-height: 1.4;

    font-weight: 700;
}


/* ============================================================
   EXPLORE SERVICES BUTTON
   ============================================================ */

.promo-card .promo-link {

    position: relative;

    z-index: 3;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 9px;

    width: fit-content;

    min-height: 43px;

    padding: 0 17px;

    border-radius: 10px;

    background:
        rgba(74,136,98,.90);

    border:
        1px solid rgba(151,210,166,.35);

    color: #ffffff !important;

    font-size: 13px;

    font-weight: 700;

    text-decoration: none;

    box-shadow:
        0 8px 18px rgba(0,0,0,.16),
        inset 0 1px 0 rgba(255,255,255,.12);

    transition:
        transform .3s ease,
        background .3s ease,
        box-shadow .3s ease;
}


.promo-card .promo-link:hover {

    transform: translateY(-2px);

    background: #4a8862;

    color: #ffffff !important;

    box-shadow:
        0 12px 25px rgba(74,136,98,.28);
}


.promo-card .promo-link i {

    font-size: 11px;

    transition:
        transform .3s ease;
}


.promo-card .promo-link:hover i {

    transform: translateX(4px);
}


/* ============================================================
   GET A QUOTE BUTTON
   ============================================================ */

.navbar .btn-primary {

    background: #4a8862 !important;

    border-color: #4a8862 !important;

    color: #ffffff !important;

    font-family: "Quicksand", sans-serif;

    font-weight: 700;

    box-shadow: none;

    transition:
        background .3s ease,
        border-color .3s ease,
        transform .3s ease,
        box-shadow .3s ease;
}


.navbar .btn-primary:hover {

    background: #3d7553 !important;

    border-color: #3d7553 !important;

    color: #ffffff !important;

    transform: translateY(-1px);

    box-shadow:
        0 8px 20px rgba(74,136,98,.24);
}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 991.98px) {


    /* ---------- Logo ---------- */

    .navbar-brand img {

        max-height: 55px !important;
    }


    /* ---------- Navbar ---------- */

    .navbar {

        background:
            rgba(255,255,255,.97) !important;

        backdrop-filter: blur(15px);

        -webkit-backdrop-filter: blur(15px);
    }


    /* ---------- Navigation ---------- */

    .navbar-nav {

        width: 100%;

        border-top:
            1px solid #eeeeee;
    }


    .navbar-nav .nav-link {

        margin-right: 0;

        padding: 12px 16px !important;

        font-size: 16px;

        border-bottom:
            1px solid #f0f0f0;
    }


    .navbar .navbar-nav .nav-link::after {

        display: none;
    }


    /* ========================================================
       SOLUTIONS MOBILE ROW
    ======================================================== */

    .solutions-nav {

        width: 100%;
    }


    .solutions-mobile-row {

        display: flex !important;

        align-items: center;

        width: 100%;
    }


    .solutions-main-link {

        flex: 1 1 auto;

        padding:
            12px 16px !important;

        border-bottom:
            none !important;
    }


    /* ---------- Toggle ---------- */

    .solutions-toggle {

        display: flex !important;

        margin-left: auto;

        background: transparent;

        border: none;

        width: 48px;

        height: 48px;

        min-width: 48px;

        align-items: center;

        justify-content: center;

        color: var(--dark);

        font-size: 14px;

        border-bottom:
            1px solid #f0f0f0;

        transition:
            transform .3s ease,
            color .3s ease;
    }


    .solutions-toggle[aria-expanded="true"] {

        transform: rotate(180deg);

        color: #4a8862;
    }


    /* ========================================================
       MOBILE MEGA MENU
    ======================================================== */

    .navbar .nav-item .dropdown-menu.mega-menu {

        position: static;

        float: none;

        width: 100%;

        max-width: 100%;

        margin: 0;

        padding: 10px 0 18px;

        display: none;

        opacity: 1;

        visibility: visible;

        transition: none;

        max-height: 65vh;

        overflow-y: auto;

        -webkit-overflow-scrolling: touch;

        background:
            rgba(247,250,249,.97) !important;

        border:
            1px solid rgba(36,84,117,.10) !important;

        border-radius: 0;

        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.8),
            0 8px 20px rgba(23,45,60,.06);

        backdrop-filter: blur(15px);

        -webkit-backdrop-filter: blur(15px);
    }


    .navbar .nav-item .dropdown-menu.mega-menu.show {

        display: block;
    }


    /* ---------- Mega container ---------- */

    .mega-menu .container {

        display: block;

        padding: 0 16px;

        gap: 0;
    }


    /* ---------- Columns ---------- */

    .mega-menu-col {

        padding-bottom: 16px;

        margin-bottom: 16px;

        border-bottom:
            1px solid #e7edf0;
    }


    .mega-menu-col:last-child {

        border-bottom: none;

        margin-bottom: 0;

        padding-bottom: 0;
    }


    /* ---------- Heading ---------- */

    .mega-menu-heading {

        font-size: 14px;

        margin-bottom: 12px;
    }


    /* ---------- Links ---------- */

    .mega-menu-col ul li {

        margin-bottom: 6px;
    }


    .mega-menu-col ul li a {

        padding: 10px 8px;

        font-size: 15px;

        border-radius: 10px;

        background:
            rgba(255,255,255,.55);
    }


    .mega-menu-col ul li a:hover {

        background:
            rgba(234,242,236,.85);

        transform: translateX(3px);
    }


    /* ---------- Icons ---------- */

    .mega-menu-col ul li a i {

        width: 31px;

        height: 31px;

        min-width: 31px;

        font-size: 13px;

        border-radius: 9px;
    }


    /* ---------- Promo ---------- */

    .promo-card {

        aspect-ratio: auto;

        max-height: none;

        min-height: 155px;

        padding: 22px !important;

        border-radius: 16px !important;
    }


    .promo-card .promo-heading {

        font-size: 19px;
    }


    .promo-card .promo-link {

        min-height: 44px;

        padding: 0 18px;
    }


    /* ---------- Navbar scroll ---------- */

    .navbar-collapse {

        max-height:
            calc(100vh - 75px);

        overflow-y: auto;

        -webkit-overflow-scrolling: touch;
    }


    /* ---------- Quote button ---------- */

    .navbar .btn.d-none.d-lg-block {

        display: block !important;

        margin: 16px;

        width:
            calc(100% - 32px);

        text-align: center;

        padding: 14px !important;

        height: auto;

        background: #4a8862 !important;

        border-color: #4a8862 !important;

        color: #ffffff !important;
    }

}


/* ============================================================
   SMALL PHONES
   ============================================================ */

@media (max-width: 575.98px) {


    .navbar-brand img {

        max-height: 45px !important;
    }


    .navbar-nav .nav-link,
    .solutions-main-link {

        font-size: 15px;
    }


    .mega-menu-col ul li a {

        font-size: 14px;
    }


    .mega-menu-col ul li a i {

        width: 30px;

        height: 30px;

        min-width: 30px;
    }


    .promo-card {

        min-height: 145px;

        padding: 20px !important;
    }


    .promo-card .promo-heading {

        font-size: 18px;
    }

}
/* ============================================================
   SOLUTIONS HERO — PREMIUM DARK
   ============================================================ */

   .wz-solutions-hero {
    position: relative;
    width: 100%;
    min-height: 720px;
    padding: 95px 0 105px;
    overflow: hidden;

    background:
        radial-gradient(
            circle at 82% 35%,
            rgba(16, 88, 162, 0.20),
            transparent 32%
        ),
        radial-gradient(
            circle at 15% 75%,
            rgba(79, 131, 95, 0.14),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #07131d 0%,
            #0b1b27 50%,
            #101f29 100%
        );

    color: #ffffff;
}


/* subtle grid */

.wz-solutions-hero::before {
    content: "";
    position: absolute;
    inset: 0;

    background-image:
        linear-gradient(
            rgba(255,255,255,.025) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.025) 1px,
            transparent 1px
        );

    background-size: 55px 55px;

    mask-image: linear-gradient(
        to bottom,
        black,
        transparent 90%
    );

    pointer-events: none;
}


/* glowing corner */

.wz-solutions-hero::after {
    content: "";
    position: absolute;

    width: 500px;
    height: 500px;

    right: -230px;
    top: -220px;

    border-radius: 50%;

    background: rgba(79,131,95,.12);

    filter: blur(20px);

    pointer-events: none;
}


/* ============================================================
   CONTAINER
   ============================================================ */

.wz-solutions-hero-container {
    position: relative;
    z-index: 2;

    width: min(1250px, 92%);
    min-height: 560px;

    margin: auto;

    display: grid;
    grid-template-columns: 1.02fr .98fr;

    align-items: center;

    gap: 70px;
}


/* ============================================================
   LEFT CONTENT
   ============================================================ */

.wz-solutions-hero-content {
    position: relative;
    z-index: 5;

    max-width: 650px;
}


/* ============================================================
   EYEBROW
   ============================================================ */

.wz-solutions-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 11px;

    margin-bottom: 23px;

    color: #6fa77e;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 2.5px;
    text-transform: uppercase;
}

.wz-solutions-eyebrow span {
    width: 36px;
    height: 2px;

    display: block;

    border-radius: 10px;

    background: #4f835f;

    box-shadow: 0 0 12px rgba(79,131,95,.55);
}


/* ============================================================
   HEADING
   ============================================================ */

.wz-solutions-hero h1 {
    margin: 0 0 27px;

    color: #f5f8fa;

    font-size: clamp(42px, 5vw, 66px);

    line-height: 1.08;

    font-weight: 500;

    letter-spacing: -2px;
}

.wz-solutions-hero h1 strong {
    display: block;

    margin-top: 5px;

    color: #5f9b70;

    font-weight: 700;

    text-shadow:
        0 0 35px rgba(79,131,95,.15);
}


/* ============================================================
   PARAGRAPHS
   ============================================================ */

.wz-solutions-hero p {
    max-width: 620px;

    margin: 0 0 17px;

    color: rgba(231,239,243,.68);

    font-size: 16px;

    line-height: 1.85;

    font-weight: 500;
}

.wz-solutions-hero p b {
    color: #a9d2b4;

    font-weight: 700;
}

.wz-solutions-hero-second {
    color: rgba(231,239,243,.52) !important;
}


/* ============================================================
   BUTTON
   ============================================================ */

.wz-solutions-hero-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 13px;

    margin-top: 18px;

    padding: 15px 24px;

    border: 1px solid rgba(111,167,126,.30);

    border-radius: 10px;

    background:
        linear-gradient(
            135deg,
            #4f835f,
            #3d6e4d
        );

    color: #ffffff !important;

    font-size: 14px;
    font-weight: 700;

    text-decoration: none;

    box-shadow:
        0 15px 35px rgba(0,0,0,.28),
        0 0 25px rgba(79,131,95,.10);

    transition: all .35s ease;
}

.wz-solutions-hero-btn i {
    transition: transform .35s ease;
}

.wz-solutions-hero-btn:hover {
    transform: translateY(-3px);

    box-shadow:
        0 20px 40px rgba(0,0,0,.38),
        0 0 30px rgba(79,131,95,.20);
}

.wz-solutions-hero-btn:hover i {
    transform: translateX(5px);
}


/* ============================================================
   RIGHT VISUAL
   ============================================================ */

.wz-solutions-hero-visual {
    position: relative;

    min-height: 560px;

    display: flex;

    align-items: center;
    justify-content: center;
}


/* ============================================================
   IMAGE
   ============================================================ */

.wz-solutions-image-wrap {
    position: relative;
    z-index: 3;

    width: min(500px, 100%);
    height: 470px;

    padding: 8px;

    border-radius: 30px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.13),
            rgba(255,255,255,.035)
        );

    border: 1px solid rgba(255,255,255,.13);

    box-shadow:
        0 35px 80px rgba(0,0,0,.45),
        0 0 60px rgba(16,88,162,.08);

    backdrop-filter: blur(15px);

    transform: rotate(1deg);

    transition: all .5s ease;
}

.wz-solutions-image-wrap:hover {
    transform: rotate(0deg) translateY(-6px);

    box-shadow:
        0 40px 90px rgba(0,0,0,.52),
        0 0 70px rgba(16,88,162,.12);
}


/* image */

.wz-solutions-hero-image {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    border-radius: 23px;
}


/* dark image overlay */

.wz-solutions-image-wrap::after {
    content: "";

    position: absolute;

    inset: 8px;

    border-radius: 23px;

    background:
        linear-gradient(
            135deg,
            rgba(7,19,29,.12),
            transparent 50%,
            rgba(79,131,95,.12)
        );

    pointer-events: none;
}


/* ============================================================
   DECORATIVE CIRCLES
   ============================================================ */

.wz-solutions-circle {
    position: absolute;

    border-radius: 50%;

    pointer-events: none;
}

.wz-solutions-circle-one {
    width: 450px;
    height: 450px;

    top: 50%;
    left: 50%;

    transform: translate(-50%, -50%);

    border: 1px solid rgba(79,131,95,.17);

    box-shadow:
        0 0 0 35px rgba(79,131,95,.025),
        0 0 0 75px rgba(16,88,162,.018);
}

.wz-solutions-circle-two {
    width: 100px;
    height: 100px;

    right: -5px;
    top: 65px;

    border: 1px solid rgba(16,88,162,.25);

    background: rgba(16,88,162,.06);

    box-shadow:
        inset 0 0 30px rgba(16,88,162,.08);
}


/* ============================================================
   FLOATING ICON CARDS
   ============================================================ */

.wz-solutions-float-card {
    position: absolute;

    z-index: 6;

    width: 64px;
    height: 64px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 16px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.12),
            rgba(255,255,255,.045)
        );

    border: 1px solid rgba(255,255,255,.15);

    color: #70a77e;

    font-size: 21px;

    backdrop-filter: blur(18px);

    box-shadow:
        0 18px 40px rgba(0,0,0,.38),
        inset 0 1px 0 rgba(255,255,255,.08);

    transition: all .35s ease;
}

.wz-solutions-float-card:hover {
    transform: translateY(-6px) scale(1.06);

    border-color: rgba(79,131,95,.4);

    box-shadow:
        0 22px 45px rgba(0,0,0,.45),
        0 0 25px rgba(79,131,95,.12);
}


/* server */

.wz-solutions-float-one {
    left: 3px;
    top: 140px;

    animation: wzFloatOne 5s ease-in-out infinite;
}


/* security */

.wz-solutions-float-two {
    right: 2px;
    top: 245px;

    color: #5792c4;

    animation: wzFloatTwo 5.5s ease-in-out infinite;
}


/* network */

.wz-solutions-float-three {
    left: 55px;
    bottom: 60px;

    animation: wzFloatThree 5.2s ease-in-out infinite;
}


/* ============================================================
   ANIMATION
   ============================================================ */

@keyframes wzFloatOne {
    0%,100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-10px);
    }
}

@keyframes wzFloatTwo {
    0%,100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(11px);
    }
}

@keyframes wzFloatThree {
    0%,100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1100px) {

    .wz-solutions-hero-container {
        gap: 40px;
    }

    .wz-solutions-hero h1 {
        font-size: 48px;
    }

    .wz-solutions-image-wrap {
        width: 430px;
        height: 430px;
    }

    .wz-solutions-circle-one {
        width: 390px;
        height: 390px;
    }
}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 991.98px) {

    .wz-solutions-hero {
        min-height: auto;

        padding: 70px 0 80px;
    }

    .wz-solutions-hero-container {
        width: 90%;

        grid-template-columns: 1fr;

        gap: 60px;

        text-align: center;
    }

    .wz-solutions-hero-content {
        max-width: 680px;

        margin: auto;
    }

    .wz-solutions-eyebrow {
        justify-content: center;
    }

    .wz-solutions-hero h1 {
        font-size: clamp(38px, 7vw, 52px);
    }

    .wz-solutions-hero p {
        margin-left: auto;
        margin-right: auto;

        font-size: 15px;
    }

    .wz-solutions-hero-visual {
        min-height: 500px;
    }

    .wz-solutions-image-wrap {
        width: min(500px, 90%);
        height: 460px;
    }
}


/* ============================================================
   SMALL MOBILE
   ============================================================ */

@media (max-width: 575.98px) {

    .wz-solutions-hero {
        padding: 55px 0 65px;
    }

    .wz-solutions-hero-container {
        gap: 45px;
    }

    .wz-solutions-eyebrow {
        font-size: 10px;

        letter-spacing: 1.7px;
    }

    .wz-solutions-hero h1 {
        font-size: 35px;

        letter-spacing: -1px;
    }

    .wz-solutions-hero p {
        font-size: 14px;

        line-height: 1.75;
    }

    .wz-solutions-hero-second {
        display: none;
    }

    .wz-solutions-hero-btn {
        width: 100%;
        max-width: 280px;

        padding: 14px 20px;
    }

    .wz-solutions-hero-visual {
        min-height: 390px;
    }

    .wz-solutions-image-wrap {
        width: 92%;
        height: 350px;

        border-radius: 23px;
    }

    .wz-solutions-hero-image {
        border-radius: 17px;
    }

    .wz-solutions-image-wrap::after {
        inset: 8px;

        border-radius: 17px;
    }

    .wz-solutions-circle-one {
        width: 320px;
        height: 320px;
    }

    .wz-solutions-circle-two {
        width: 60px;
        height: 60px;

        right: -5px;
        top: 25px;
    }

    .wz-solutions-float-card {
        width: 48px;
        height: 48px;

        border-radius: 12px;

        font-size: 16px;
    }

    .wz-solutions-float-one {
        left: -2px;
        top: 85px;
    }

    .wz-solutions-float-two {
        right: -2px;
        top: 180px;
    }

    .wz-solutions-float-three {
        left: 25px;
        bottom: 20px;
    }
}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    .wz-solutions-float-one,
    .wz-solutions-float-two,
    .wz-solutions-float-three {
        animation: none;
    }
}


/* ============================================================
   WAYZON — FLOATING WHATSAPP BUTTON
   ============================================================ */

   .wz-floating-contact.wz-whatsapp-float {
    position: fixed;

    left: 25px;
    bottom: 25px;

    width: 60px;
    height: 60px;

    z-index: 99999;

    display: flex;
    align-items: center;
    justify-content: center;
}


/* ============================================================
   WHATSAPP BUTTON
   ============================================================ */

.wz-whatsapp-float a {
    position: relative;

    z-index: 10;

    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #25D366;

    color: #ffffff !important;

    font-size: 28px;

    text-decoration: none !important;

    box-shadow:
        0 8px 25px rgba(0, 0, 0, 0.28);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}


/* WhatsApp icon */

.wz-whatsapp-float a i {
    position: relative;

    z-index: 20;

    line-height: 1;
}


/* ============================================================
   RIPPLE BASE
   ============================================================ */

.wz-whatsapp-float .wz-ripple,
.wz-whatsapp-float .wz-ripple::before,
.wz-whatsapp-float .wz-ripple::after {

    content: "";

    position: absolute;

    left: 50%;
    top: 50%;

    width: 58px;
    height: 58px;

    border-radius: 50%;

    border: 2px solid #25D366;

    transform: translate(-50%, -50%);

    pointer-events: none;

    box-sizing: border-box;
}


/* ============================================================
   RIPPLE 1
   ============================================================ */

.wz-whatsapp-float .wz-ripple {
    animation:
        wzWhatsappRipple 2.4s ease-out infinite;
}


/* ============================================================
   RIPPLE 2
   ============================================================ */

.wz-whatsapp-float .wz-ripple::before {
    animation:
        wzWhatsappRipple 2.4s ease-out infinite;

    animation-delay: 0.8s;
}


/* ============================================================
   RIPPLE 3
   ============================================================ */

.wz-whatsapp-float .wz-ripple::after {
    animation:
        wzWhatsappRipple 2.4s ease-out infinite;

    animation-delay: 1.6s;
}


/* ============================================================
   RIPPLE ANIMATION
   ============================================================ */

@keyframes wzWhatsappRipple {

    0% {
        width: 58px;
        height: 58px;

        opacity: 0.65;
    }

    60% {
        opacity: 0.18;
    }

    100% {
        width: 110px;
        height: 110px;

        opacity: 0;
    }
}


/* ============================================================
   HOVER
   ============================================================ */

.wz-whatsapp-float a:hover {

    color: #ffffff !important;

    text-decoration: none !important;

    transform: scale(1.08);

    box-shadow:
        0 12px 35px rgba(37, 211, 102, 0.40);
}


/* ============================================================
   OPTIONAL: SLIGHT FLOATING MOVEMENT
   ============================================================ */

.wz-whatsapp-float a {
    animation:
        wzWhatsappFloat 3s ease-in-out infinite;
}

@keyframes wzWhatsappFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-4px);
    }
}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 767.98px) {

    .wz-floating-contact.wz-whatsapp-float {

        left: 18px;
        bottom: 18px;

        width: 54px;
        height: 54px;
    }


    .wz-whatsapp-float a {

        width: 52px;
        height: 52px;

        font-size: 25px;
    }


    .wz-whatsapp-float .wz-ripple,
    .wz-whatsapp-float .wz-ripple::before,
    .wz-whatsapp-float .wz-ripple::after {

        width: 52px;
        height: 52px;
    }


    @keyframes wzWhatsappRipple {

        0% {
            width: 52px;
            height: 52px;

            opacity: 0.65;
        }

        60% {
            opacity: 0.18;
        }

        100% {
            width: 95px;
            height: 95px;

            opacity: 0;
        }
    }
}


/* ============================================================
   SMALL MOBILE
   ============================================================ */

@media (max-width: 400px) {

    .wz-floating-contact.wz-whatsapp-float {

        left: 14px;
        bottom: 14px;

        width: 50px;
        height: 50px;
    }


    .wz-whatsapp-float a {

        width: 49px;
        height: 49px;

        font-size: 23px;
    }


    .wz-whatsapp-float .wz-ripple,
    .wz-whatsapp-float .wz-ripple::before,
    .wz-whatsapp-float .wz-ripple::after {

        width: 49px;
        height: 49px;
    }
}


/* ============================================================
   ACCESSIBILITY
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    .wz-whatsapp-float a,
    .wz-whatsapp-float .wz-ripple,
    .wz-whatsapp-float .wz-ripple::before,
    .wz-whatsapp-float .wz-ripple::after {

        animation: none;
    }
}
/* Contact text - normal footer color */
.footer-contact-link {
    color: rgba(255, 255, 255, 0.65) !important;
    text-decoration: none !important;
}

.footer-contact-link:hover {
    color: rgba(255, 255, 255, 0.80) !important;
    text-decoration: none !important;
}


/* Copyright text */
.footer-bottom-border {
    color: rgba(255, 255, 255, 0.65) !important;
}


/* Wayzon company link */
.footer-company-link {
    color: rgba(255, 255, 255, 0.65) !important;
    text-decoration: none !important;
}

.footer-company-link:hover {
    color: rgba(255, 255, 255, 0.80) !important;
}


/* Avinya Infotech */
.footer-developer-link {
    color: rgba(255, 255, 255, 0.65) !important;
    text-decoration: none !important;
}

.footer-developer-link:hover {
    color: rgba(255, 255, 255, 0.80) !important;
}


/* Remove Bootstrap green/primary color */
.footer-bottom-border a.text-primary,
.footer-bottom-border a.text-white {
    color: rgba(255, 255, 255, 0.65) !important;
    text-decoration: none !important;
}
.hero-btns .btn-outline-primary:hover {
    color: #fff !important;
}
/* =========================================================
   WAYZON HEADER CAROUSEL
========================================================= */

.header-carousel {
    position: relative;
    width: 100%;
    overflow: hidden;
}


/* =========================================================
   SLIDE
========================================================= */

.header-carousel .owl-carousel-item {
    position: relative;
    min-height: 620px;
    overflow: hidden;
}


/* Banner Image */

.header-carousel .owl-carousel-item > img {
    width: 100% !important;
    height: 620px !important;
    display: block;
    object-fit: cover;
    object-position: center;
}


/* =========================================================
   NO OVERLAY
========================================================= */

.header-carousel .owl-carousel-item::before {
    display: none !important;
}


/* =========================================================
   CONTENT WRAPPER
========================================================= */

.header-carousel .owl-carousel-inner {
    position: absolute;

    top: 0;
    left: 0;
    right: 0;
    bottom: 0;

    display: flex;
    align-items: center;

    z-index: 2;
}


/* =========================================================
   CONTENT
========================================================= */

.header-carousel .banner-content {
    max-width: 650px;
    padding-bottom: 15px;
}


/* =========================================================
   LABEL
========================================================= */

.header-carousel .banner-label {
    display: inline-flex;
    align-items: center;

    margin-bottom: 15px;
    padding-left: 13px;

    border-left: 3px solid #427454;

    color: #427454;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 2px;
    text-transform: uppercase;
}


/* =========================================================
   TITLE
========================================================= */

.header-carousel h1 {
    max-width: 620px;

    margin: 0 0 18px;

    color: #245475 !important;

    font-size: 46px;

    line-height: 1.15;

    font-weight: 700;

    letter-spacing: -.5px;

    text-shadow: none;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.header-carousel p {
    max-width: 570px;

    margin: 0 0 27px;

    color: #1F2937 !important;

    font-size: 15px !important;

    line-height: 1.75;

    font-weight: 500;

    text-shadow: none;
}


/* =========================================================
   BUTTON
========================================================= */

.header-carousel .btn-primary {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 7px;

    padding: 12px 24px !important;

    background: #427454 !important;

    border: 1px solid #427454 !important;

    color: #ffffff !important;

    border-radius: 50px;

    font-size: 14px;

    font-weight: 600;

    box-shadow: none;

    transition: all .3s ease;
}


/* Button Hover */

.header-carousel .btn-primary:hover {
    background: #245475 !important;

    border-color: #245475 !important;

    color: #ffffff !important;

    transform: translateY(-2px);
}


/* Arrow */

.header-carousel .btn-primary i {
    font-size: 11px;

    transition: transform .3s ease;
}


.header-carousel .btn-primary:hover i {
    transform: translateX(4px);
}


/* =========================================================
   PREVIEW NAVIGATION
========================================================= */

.header-carousel .owl-dots {
    position: absolute;

    top: 50%;
    right: 42px;

    transform: translateY(-50%);

    display: flex !important;

    flex-direction: column;

    align-items: center;

    gap: 12px;

    z-index: 10;
}


/* =========================================================
   PREVIEW DOT
========================================================= */

.header-carousel .owl-dot {
    width: 62px;
    height: 62px;

    margin: 0 !important;
    padding: 3px !important;

    display: block;

    background: rgba(255,255,255,.75) !important;

    border: 1px solid rgba(36,84,117,.35) !important;

    border-radius: 50% !important;

    overflow: hidden;

    opacity: .85;

    cursor: pointer;

    transition: all .3s ease;
}


/* Preview Image */

.header-carousel .owl-dot img {
    width: 100% !important;
    height: 100% !important;

    display: block !important;

    object-fit: cover;

    border-radius: 50% !important;
}


/* =========================================================
   ACTIVE PREVIEW
========================================================= */

.header-carousel .owl-dot.active {
    width: 76px;
    height: 76px;

    padding: 3px !important;

    background: #ffffff !important;

    border: 3px solid #427454 !important;

    opacity: 1;

    transform: scale(1.05);
}


/* =========================================================
   PREVIEW HOVER
========================================================= */

.header-carousel .owl-dot:hover {
    opacity: 1;

    transform: scale(1.08);
}


/* =========================================================
   HIDE DEFAULT ARROWS
========================================================= */

.header-carousel .owl-nav {
    display: none !important;
}


/* =========================================================
   DESKTOP
========================================================= */

@media (min-width: 1200px) {

    .header-carousel .banner-content {
        padding-left: 15px;
    }

}


/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1199px) {

    .header-carousel .owl-carousel-item {
        min-height: 580px;
    }

    .header-carousel .owl-carousel-item > img {
        height: 580px !important;
    }

    .header-carousel h1 {
        font-size: 42px;
    }

    .header-carousel .owl-dots {
        right: 28px;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .header-carousel .owl-carousel-item {
        min-height: 540px;
    }

    .header-carousel .owl-carousel-item > img {
        height: 540px !important;
    }


    .header-carousel .banner-content {
        max-width: 590px;
    }


    .header-carousel h1 {
        max-width: 560px;

        font-size: 38px;

        line-height: 1.17;
    }


    .header-carousel p {
        max-width: 520px;

        font-size: 14px !important;

        line-height: 1.7;
    }


    .header-carousel .owl-dots {
        right: 20px;

        gap: 9px;
    }


    .header-carousel .owl-dot {
        width: 53px;
        height: 53px;
    }


    .header-carousel .owl-dot.active {
        width: 64px;
        height: 64px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .header-carousel .owl-carousel-item {
        min-height: 570px;
    }


    .header-carousel .owl-carousel-item > img {
        height: 570px !important;
    }


    .header-carousel .owl-carousel-inner {
        align-items: center;
    }


    .header-carousel .banner-content {
        max-width: 100%;

        padding-right: 60px;
    }


    /* Label */

    .header-carousel .banner-label {
        margin-bottom: 12px;

        font-size: 10px;

        letter-spacing: 1.6px;
    }


    /* Title */

    .header-carousel h1 {
        max-width: 470px;

        margin-bottom: 15px;

        font-size: 32px;

        line-height: 1.18;

        color: #245475 !important;
    }


    /* Description */

    .header-carousel p {
        max-width: 430px;

        margin-bottom: 23px;

        font-size: 14px !important;

        line-height: 1.7;

        color: #1F2937 !important;
    }


    /* Button */

    .header-carousel .btn-primary {
        padding: 11px 20px !important;

        font-size: 13px;
    }


    /* Preview */

    .header-carousel .owl-dots {
        right: 10px;

        gap: 8px;
    }


    .header-carousel .owl-dot {
        width: 43px;
        height: 43px;
    }


    .header-carousel .owl-dot.active {
        width: 52px;
        height: 52px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .header-carousel .owl-carousel-item {
        min-height: 530px;
    }


    .header-carousel .owl-carousel-item > img {
        height: 530px !important;
    }


    .header-carousel .banner-content {
        padding-right: 48px;
    }


    .header-carousel h1 {
        max-width: 370px;

        font-size: 28px;

        line-height: 1.2;
    }


    .header-carousel p {
        font-size: 13px !important;

        line-height: 1.65;
    }


    .header-carousel .banner-label {
        font-size: 9px;

        letter-spacing: 1.4px;
    }


    .header-carousel .owl-dots {
        right: 7px;

        gap: 6px;
    }


    .header-carousel .owl-dot {
        width: 37px;
        height: 37px;
    }


    .header-carousel .owl-dot.active {
        width: 45px;
        height: 45px;
    }

}


/* =========================================================
   EXTRA SMALL
========================================================= */

@media (max-width: 360px) {

    .header-carousel h1 {
        font-size: 25px;
    }


    .header-carousel p {
        font-size: 12px !important;
    }


    .header-carousel .owl-dot {
        width: 33px;
        height: 33px;
    }


    .header-carousel .owl-dot.active {
        width: 40px;
        height: 40px;
    }

}
/* ==========================================
   PAGE HEADER - RESPONSIVE HEIGHT
========================================== */

/* Desktop */
.page-header {
    min-height: 400px;
}

/* Tablet */
@media (max-width: 991.98px) {
    .page-header {
        min-height: 300px;
        padding-top: 60px !important;
        padding-bottom: 60px !important;
    }

    .page-header .container {
        transform: translateY(20px);
    }
}

/* Mobile */
@media (max-width: 767.98px) {
    .page-header {
        min-height: 230px;
        padding-top: 45px !important;
        padding-bottom: 45px !important;
        margin-bottom: 30px !important;
    }

    .page-header .container {
        transform: translateY(10px);
    }

    .page-header h1 {
        font-size: 1.75rem;
        margin-bottom: 10px !important;
    }

    .page-header .breadcrumb {
        font-size: 13px;
        margin-bottom: 0;
    }
}

/* Small Mobile */
@media (max-width: 480px) {
    .page-header {
        min-height: 200px;
        padding-top: 35px !important;
        padding-bottom: 35px !important;
    }

    .page-header h1 {
        font-size: 1.5rem;
    }

    .page-header .breadcrumb {
        font-size: 12px;
    }
}






.wz-solutions-hero {
    width: 100%;
    padding: 90px 20px;
    background: #ffffff;
    color: #1f2937;
    font-family: Arial, sans-serif;
    overflow: hidden;
    box-sizing: border-box;
}

.wz-solutions-hero *,
.wz-solutions-hero *::before,
.wz-solutions-hero *::after {
    box-sizing: border-box;
}

.wz-solutions-hero-container {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 0.9fr;
    align-items: center;
    gap: 65px;
}

/* ===== LEFT CONTENT ===== */

.wz-solutions-hero-content {
    width: 100%;
}

.wz-solutions-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 22px;
    color: #287a55;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.wz-solutions-eyebrow span {
    display: inline-block;
    width: 28px;
    height: 3px;
    background: #287a55;
    border-radius: 5px;
}

.wz-solutions-hero-content h1 {
    margin: 0 0 24px;
    color: #172b3a;
    font-size: clamp(34px, 4vw, 52px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -1.2px;
}

.wz-solutions-hero-content h1 strong {
    display: block;
    color: #287a55;
    font-weight: 700;
}

.wz-solutions-hero-content p {
    margin: 0 0 18px;
    color: #667085;
    font-size: 16px;
    line-height: 1.85;
    font-weight: 600;
}

.wz-solutions-hero-content p b {
    color: #253b4b;
    font-weight: 700;
}

.wz-solutions-hero-content .wz-solutions-hero-second {
    margin-bottom: 30px;
    color: #687586;
}

/* ===== CTA BUTTON ===== */

.wz-solutions-hero-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 15px 25px;
    background: #287a55;
    color: #ffffff;
    border: 2px solid #287a55;
    border-radius: 5px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
}

.wz-solutions-hero-btn:hover {
    background: #1d5f40;
    border-color: #1d5f40;
    color: #ffffff;
    transform: translateY(-3px);
}

.wz-solutions-hero-btn i {
    font-size: 14px;
    transition: transform 0.3s ease;
}

.wz-solutions-hero-btn:hover i {
    transform: translateX(4px);
}

/* ===== RIGHT VISUAL ===== */

.wz-solutions-hero-visual {
    position: relative;
    width: 100%;
    min-height: 430px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.wz-solutions-image-wrap {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 390px;
    overflow: hidden;
    border-radius: 12px;
    background: #f1f5f3;
    box-shadow: 0 18px 45px rgba(25, 45, 55, 0.12);
}

.wz-solutions-hero-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 12px;
}

/* ===== DECORATIVE CIRCLES ===== */

.wz-solutions-circle {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.wz-solutions-circle-one {
    width: 210px;
    height: 210px;
    top: -15px;
    right: -20px;
    background: #eaf3ee;
    z-index: 0;
}

.wz-solutions-circle-two {
    width: 145px;
    height: 145px;
    bottom: -10px;
    left: -25px;
    background: #edf2f7;
    z-index: 0;
}

/* ===== FLOATING ICON CARDS ===== */

.wz-solutions-float-card {
    position: absolute;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    background: #ffffff;
    color: #287a55;
    border: 1px solid #e7eee9;
    border-radius: 12px;
    box-shadow: 0 8px 25px rgba(25, 45, 55, 0.12);
    font-size: 22px;
}

.wz-solutions-float-one {
    top: 35px;
    left: -25px;
}

.wz-solutions-float-two {
    top: 48%;
    right: -25px;
}

.wz-solutions-float-three {
    bottom: 25px;
    left: 25px;
}

/* ===== TABLET ===== */

@media (max-width: 991px) {
    .wz-solutions-hero {
        padding: 70px 25px;
    }

    .wz-solutions-hero-container {
        grid-template-columns: 1fr 0.85fr;
        gap: 35px;
    }

    .wz-solutions-hero-content h1 {
        font-size: 36px;
    }

    .wz-solutions-hero-visual {
        min-height: 350px;
    }

    .wz-solutions-image-wrap {
        height: 320px;
    }

    .wz-solutions-float-card {
        width: 48px;
        height: 48px;
        font-size: 19px;
    }
}

/* ===== MOBILE ===== */

@media (max-width: 767px) {
    .wz-solutions-hero {
        padding: 55px 20px;
    }

    .wz-solutions-hero-container {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .wz-solutions-hero-content h1 {
        font-size: 34px;
        letter-spacing: -0.6px;
    }

    .wz-solutions-hero-content p {
        font-size: 16px;
        line-height: 1.75;
    }

    .wz-solutions-hero-visual {
        min-height: 320px;
        margin: 0 8px;
    }

    .wz-solutions-image-wrap {
        height: 310px;
    }

    .wz-solutions-circle-one {
        width: 150px;
        height: 150px;
        right: -10px;
    }

    .wz-solutions-circle-two {
        width: 100px;
        height: 100px;
        left: -10px;
    }

    .wz-solutions-float-one {
        left: -12px;
    }

    .wz-solutions-float-two {
        right: -12px;
    }

    .wz-solutions-float-three {
        left: 15px;
    }
}

/* ===== SMALL MOBILE ===== */

@media (max-width: 400px) {
    .wz-solutions-hero-content h1 {
        font-size: 30px;
    }

    .wz-solutions-hero-visual {
        min-height: 270px;
    }

    .wz-solutions-image-wrap {
        height: 260px;
    }

    .wz-solutions-hero-btn {
        padding: 13px 18px;
        font-size: 14px;
    }
}















/* ==========================================
   WAYZON SOLUTIONS - WHITE THEME
   FONT: QUICKSAND
========================================== */

.wz-solutions-section {
    width: 100%;
    padding: 85px 20px;
    background: #ffffff !important;
    color: #243447;
    font-family: 'Quicksand', sans-serif !important;
    box-sizing: border-box;
}

.wz-solutions-section *,
.wz-solutions-section *::before,
.wz-solutions-section *::after {
    box-sizing: border-box;
    font-family: 'Quicksand', sans-serif !important;
}

.wz-solutions-section .wz-container {
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;
}

/* ==========================================
   SECTION HEADING
========================================== */

.wz-solutions-section .wz-section-heading {
    max-width: 760px;
    margin: 0 auto 55px;
    text-align: center;
}

.wz-solutions-section .wz-eyebrow {
    display: inline-block;
    margin-bottom: 16px;
    color: #237849 !important;
    font-size: 13px;
    font-weight: 700 !important;
    letter-spacing: 2px;
    line-height: 1.6;
    text-transform: uppercase;
}

.wz-solutions-section .wz-section-heading h2 {
    margin: 0 0 20px;
    color: #172b3a !important;
    font-size: clamp(30px, 4vw, 44px);
    font-weight: 700 !important;
    line-height: 1.25;
    letter-spacing: -0.6px;
}

.wz-solutions-section .wz-section-heading h2 span {
    color: #237849 !important;
    font-weight: 700 !important;
}

.wz-solutions-section .wz-section-heading p {
    max-width: 690px;
    margin: 0 auto;
    color: #4b5968 !important;
    font-size: 16px;
    font-weight: 600 !important;
    line-height: 1.85;
}

/* ==========================================
   SOLUTION GRID
========================================== */

.wz-solutions-section .wz-solution-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: 30px;
}

/* ==========================================
   SOLUTION CARD
========================================== */

.wz-solutions-section .wz-solution-card {
    min-width: 0;
    overflow: hidden;
    background: #ffffff !important;
    border: 1px solid #dce6df;
    border-radius: 12px;
    box-shadow: 0 5px 22px rgba(28, 48, 36, 0.07);
    transition: transform 0.3s ease,
                box-shadow 0.3s ease,
                border-color 0.3s ease;
}

.wz-solutions-section .wz-solution-card:hover {
    transform: translateY(-5px);
    border-color: #9bc9ab;
    box-shadow: 0 14px 32px rgba(28, 48, 36, 0.12);
}

/* ==========================================
   CARD IMAGE
========================================== */

.wz-solutions-section .wz-card-image {
    position: relative;
    width: 100%;
    height: 255px;
    overflow: hidden;
    background: #edf2ef;
}

.wz-solutions-section .wz-card-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.5s ease;
}

.wz-solutions-section .wz-solution-card:hover .wz-card-image img {
    transform: scale(1.04);
}

/* Light image overlay */

.wz-solutions-section .wz-image-overlay {
    position: absolute;
    inset: 0;
    background: rgba(17, 35, 27, 0.12);
    pointer-events: none;
}

/* Image number */

.wz-solutions-section .wz-card-number {
    position: absolute;
    top: 18px;
    left: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    background: #ffffff !important;
    color: #237849 !important;
    border: 1px solid #dce9df;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 700 !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.10);
}

/* ==========================================
   CARD CONTENT
========================================== */

.wz-solutions-section .wz-card-content {
    padding: 30px;
    background: #ffffff !important;
}

.wz-solutions-section .wz-card-category {
    display: inline-block;
    margin-bottom: 13px;
    color: #237849 !important;
    font-size: 11px;
    font-weight: 700 !important;
    letter-spacing: 1.3px;
    line-height: 1.7;
    text-transform: uppercase;
}

.wz-solutions-section .wz-card-content h3 {
    margin: 0 0 16px;
    color: #172b3a !important;
    font-size: 24px;
    font-weight: 700 !important;
    line-height: 1.4;
}

.wz-solutions-section .wz-card-content p {
    margin: 0 0 24px;
    color: #4b5968 !important;
    font-size: 15px;
    font-weight: 500 !important;
    line-height: 1.9;
}

/* ==========================================
   SERVICE LIST
========================================== */

.wz-solutions-section .wz-solution-list {
    display: flex;
    flex-direction: column;
    gap: 11px;
    margin-top: 22px;
}

/* Service link card */

.wz-solutions-section .wz-list-item {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr) 20px;
    align-items: center;
    gap: 13px;
    width: 100%;
    padding: 15px;
    background: #ffffff !important;
    border: 1px solid #e0e8e2;
    border-radius: 8px;
    color: #243447 !important;
    text-decoration: none !important;
    transition: background 0.25s ease,
                border-color 0.25s ease,
                transform 0.25s ease,
                box-shadow 0.25s ease;
}

.wz-solutions-section .wz-list-item:hover {
    background: #f2f8f4 !important;
    border-color: #9bc9ab;
    color: #172b3a !important;
    transform: translateX(3px);
    box-shadow: 0 4px 12px rgba(35, 120, 73, 0.06);
}

/* Service icon box */

.wz-solutions-section .wz-service-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    flex-shrink: 0;
    background: #eaf4ed !important;
    border: 1px solid #d5e8da;
    border-radius: 8px;
    color: #237849 !important;
    font-size: 19px;
}

.wz-solutions-section .wz-service-icon i {
    color: #237849 !important;
    font-size: 19px;
}

/* Service title */

.wz-solutions-section .wz-list-item strong {
    display: block;
    margin: 0 0 6px;
    color: #203345 !important;
    font-size: 14px;
    font-weight: 700 !important;
    line-height: 1.55;
    overflow-wrap: anywhere;
}

/* Service description */

.wz-solutions-section .wz-list-item small {
    display: block;
    color: #536273 !important;
    font-size: 12px;
    font-weight: 600 !important;
    line-height: 1.75;
}

/* Arrow icon */

.wz-solutions-section .wz-list-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #237849 !important;
    font-size: 14px;
    transition: transform 0.25s ease;
}

.wz-solutions-section .wz-list-arrow i {
    color: #237849 !important;
}

.wz-solutions-section .wz-list-item:hover .wz-list-arrow {
    transform: translateX(4px);
}

/* ==========================================
   TABLET RESPONSIVE
========================================== */

@media (max-width: 991px) {
    .wz-solutions-section {
        padding: 65px 20px;
    }

    .wz-solutions-section .wz-solution-grid {
        gap: 22px;
    }

    .wz-solutions-section .wz-card-image {
        height: 220px;
    }

    .wz-solutions-section .wz-card-content {
        padding: 24px;
    }

    .wz-solutions-section .wz-card-content h3 {
        font-size: 21px;
    }

    .wz-solutions-section .wz-list-item {
        grid-template-columns: 42px minmax(0, 1fr) 18px;
        gap: 10px;
        padding: 12px;
    }

    .wz-solutions-section .wz-service-icon {
        width: 42px;
        height: 42px;
    }
}

/* ==========================================
   MOBILE RESPONSIVE
========================================== */

@media (max-width: 767px) {
    .wz-solutions-section {
        padding: 50px 16px;
    }

    .wz-solutions-section .wz-section-heading {
        margin-bottom: 35px;
    }

    .wz-solutions-section .wz-section-heading h2 {
        font-size: 31px;
    }

    .wz-solutions-section .wz-section-heading p {
        font-size: 15px;
    }

    .wz-solutions-section .wz-solution-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .wz-solutions-section .wz-card-image {
        height: 230px;
    }

    .wz-solutions-section .wz-card-content {
        padding: 22px 18px;
    }

    .wz-solutions-section .wz-card-content h3 {
        font-size: 22px;
    }

    .wz-solutions-section .wz-card-content p {
        font-size: 15px;
    }

    .wz-solutions-section .wz-list-item {
        grid-template-columns: 42px minmax(0, 1fr) 16px;
        gap: 10px;
        padding: 12px 10px;
    }

    .wz-solutions-section .wz-list-item strong {
        font-size: 13px;
    }

    .wz-solutions-section .wz-list-item small {
        font-size: 12px;
    }

    .wz-solutions-section .wz-service-icon {
        width: 40px;
        height: 40px;
    }
}

/* ==========================================
   SMALL MOBILE
========================================== */

@media (max-width: 380px) {
    .wz-solutions-section .wz-section-heading h2 {
        font-size: 27px;
    }

    .wz-solutions-section .wz-card-content {
        padding: 18px 14px;
    }

    .wz-solutions-section .wz-card-content h3 {
        font-size: 20px;
    }

    .wz-solutions-section .wz-list-item {
        grid-template-columns: 36px minmax(0, 1fr) 14px;
        gap: 8px;
        padding: 10px 8px;
    }

    .wz-solutions-section .wz-service-icon {
        width: 36px;
        height: 36px;
        font-size: 15px;
    }

    .wz-solutions-section .wz-service-icon i {
        font-size: 15px;
    }
}
/* =====================================
   SERVICE ICON VISIBILITY FIX
===================================== */

.wz-solutions-section .wz-service-icon {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #eaf4ed !important;
    border: 1px solid #b8d9c2 !important;
    border-radius: 10px !important;
    color: #237849 !important;
    font-size: 23px !important;
    line-height: 1 !important;
    flex-shrink: 0 !important;
}

.wz-solutions-section .wz-service-icon i {
    display: inline-block !important;
    color: #237849 !important;
    font-family: "Font Awesome 6 Free" !important;
    font-size: 23px !important;
    font-weight: 900 !important;
    font-style: normal !important;
    line-height: 1 !important;
}

/* Microsoft brand icon */
.wz-solutions-section .wz-service-icon i.fa-microsoft {
    font-family: "Font Awesome 6 Brands" !important;
    font-weight: 400 !important;
}

/* =====================================
   SERVICE TITLE - BIGGER & BOLD
===================================== */

.wz-solutions-section .wz-list-item strong {
    display: block !important;
    margin-bottom: 7px !important;
    color: #172b3a !important;
    font-family: 'Quicksand', sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
}

/* =====================================
   SERVICE DESCRIPTION - BIGGER
===================================== */

.wz-solutions-section .wz-list-item small {
    display: block !important;
    color: #4b5968 !important;
    font-family: 'Quicksand', sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.75 !important;
}

/* =====================================
   SERVICE CARDS - MORE SPACING
===================================== */

.wz-solutions-section .wz-list-item {
    grid-template-columns: 54px minmax(0, 1fr) 22px !important;
    gap: 16px !important;
    padding: 18px !important;
    background: #ffffff !important;
    border: 1px solid #dce6df !important;
    border-radius: 10px !important;
}

.wz-solutions-section .wz-list-item:hover {
    background: #f2f8f4 !important;
    border-color: #9bc9ab !important;
}

/* Arrow icon visibility */

.wz-solutions-section .wz-list-arrow {
    color: #237849 !important;
    font-size: 17px !important;
}

.wz-solutions-section .wz-list-arrow i {
    color: #237849 !important;
    font-size: 17px !important;
}

/* =====================================
   MOBILE RESPONSIVE
===================================== */

@media (max-width: 767px) {
    .wz-solutions-section .wz-service-icon {
        width: 46px !important;
        height: 46px !important;
        min-width: 46px !important;
    }

    .wz-solutions-section .wz-service-icon i {
        font-size: 20px !important;
    }

    .wz-solutions-section .wz-list-item {
        grid-template-columns: 46px minmax(0, 1fr) 18px !important;
        gap: 12px !important;
        padding: 14px !important;
    }

    .wz-solutions-section .wz-list-item strong {
        font-size: 16px !important;
    }

    .wz-solutions-section .wz-list-item small {
        font-size: 14px !important;
    }
}

.wz-solutions-section .wz-service-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 54px !important;
    height: 54px !important;
    flex-shrink: 0 !important;
    background: #eaf4ed !important;
    border: 1px solid #b8d9c2 !important;
    border-radius: 10px !important;
    color: #237849 !important;
}

.wz-solutions-section .wz-service-icon svg {
    display: block !important;
    width: 25px !important;
    height: 25px !important;
    stroke: #237849 !important;
    visibility: visible !important;
}
.wz-why-section {
    width: 100%;
    padding: 85px 20px;
    background: #ffffff !important;
    color: #243447;
    font-family: 'Quicksand', sans-serif;
    box-sizing: border-box;
}

.wz-why-section *,
.wz-why-section *::before,
.wz-why-section *::after {
    box-sizing: border-box;
    font-family: 'Quicksand', sans-serif;
}

.wz-why-section .wz-container {
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;
}

/* SECTION HEADING */

.wz-why-section .wz-section-heading {
    max-width: 780px;
    margin: 0 auto 55px;
    text-align: center;
}

.wz-why-section .wz-eyebrow {
    display: inline-block;
    margin-bottom: 16px;
    color: #237849 !important;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 1.6;
}

.wz-why-section .wz-section-heading h2 {
    margin: 0 0 20px;
    color: #172b3a !important;
    font-size: clamp(30px, 4vw, 44px);
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -0.5px;
}

.wz-why-section .wz-section-heading h2 span {
    display: block;
    color: #237849 !important;
    font-weight: 700;
}

.wz-why-section .wz-section-heading p {
    max-width: 700px;
    margin: 0 auto;
    color: #4b5968 !important;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.85;
}

/* CARD GRID */

.wz-why-section .wz-why-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
    align-items: stretch;
}

/* WHY CHOOSE CARDS */

.wz-why-section .wz-why-card {
    position: relative;
    min-width: 0;
    padding: 32px 25px;
    overflow: hidden;
    background: #ffffff !important;
    border: 1px solid #dfe8e2;
    border-radius: 12px;
    box-shadow: 0 5px 22px rgba(28, 48, 36, 0.06);
    transition: transform 0.3s ease,
                border-color 0.3s ease,
                box-shadow 0.3s ease;
}

.wz-why-section .wz-why-card:hover {
    transform: translateY(-6px);
    border-color: #a6cdb3;
    box-shadow: 0 14px 32px rgba(28, 48, 36, 0.11);
}

/* ICON BOX */

.wz-why-section .wz-why-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 25px;
    background: #eaf4ed !important;
    border: 1px solid #c5dfcc;
    border-radius: 12px;
    color: #237849 !important;
    box-shadow: 0 5px 14px rgba(35, 120, 73, 0.08);
    transition: background 0.3s ease, color 0.3s ease;
}

.wz-why-section .wz-why-card:hover .wz-why-icon {
    background: #237849 !important;
    color: #ffffff !important;
}

.wz-why-section .wz-why-icon svg {
    display: block;
    width: 29px;
    height: 29px;
    stroke: currentColor;
    color: inherit;
    fill: none;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* NUMBER */

.wz-why-section .wz-why-number {
    position: absolute;
    top: 32px;
    right: 25px;
    color: #dce9df !important;
    font-size: 34px;
    font-weight: 700;
    line-height: 1;
    pointer-events: none;
}

/* CARD TITLE */

.wz-why-section .wz-why-card h3 {
    position: relative;
    margin: 0 0 15px;
    color: #172b3a !important;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.45;
}

/* CARD DESCRIPTION */

.wz-why-section .wz-why-card p {
    margin: 0;
    color: #4b5968 !important;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.85;
}

/* TABLET */

@media (max-width: 1050px) {
    .wz-why-section {
        padding: 70px 20px;
    }

    .wz-why-section .wz-why-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px;
    }

    .wz-why-section .wz-why-card {
        padding: 28px 24px;
    }

    .wz-why-section .wz-why-card h3 {
        font-size: 21px;
    }
}

/* MOBILE */

@media (max-width: 600px) {
    .wz-why-section {
        padding: 52px 16px;
    }

    .wz-why-section .wz-section-heading {
        margin-bottom: 35px;
    }

    .wz-why-section .wz-section-heading h2 {
        font-size: 30px;
    }

    .wz-why-section .wz-section-heading p {
        font-size: 16px;
    }

    .wz-why-section .wz-why-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .wz-why-section .wz-why-card {
        padding: 26px 22px;
    }

    .wz-why-section .wz-why-icon {
        width: 56px;
        height: 56px;
        margin-bottom: 22px;
    }

    .wz-why-section .wz-why-icon svg {
        width: 27px;
        height: 27px;
    }

    .wz-why-section .wz-why-number {
        top: 28px;
        right: 22px;
        font-size: 30px;
    }

    .wz-why-section .wz-why-card h3 {
        font-size: 21px;
    }

    .wz-why-section .wz-why-card p {
        font-size: 16px;
    }
}