/*Default Items*/
:root {
    --color-primary: #ad0d2f;
    --font-body: "Outfit", sans-serif;
}

body {
    font-family: var(--font-body);
    font-size: 16px;
    font-weight: 200;
    overflow: hidden;
}

html {
    overflow-x: hidden;
    scroll-behavior: smooth;
}

.swiper-container {
    overflow: hidden;
}

.swiper-wrapper {
    will-change: transform;
}

a {
    color: #000;
    text-decoration: none;
    display: inline-block;
}

img {
    max-width: 100%;
}

ul {
    padding: 0px;
    margin: 0px;
}

li {
    list-style: none;
}

.base-padding {
    padding: 70px 0;
}

button {
    border: none;
}

.gray-bg {
    background-color: #f7f7f7;
}

.text-justify {
    text-align: justify;
}

.color-theme {
    color: #910000;
    ;
}

.nmlink {
    color: var(--color-primary);
}

.nmlink:hover {
    color: #931b1b;
}

/*Default Items ends*/
/*header*/
header {
    transition: .3s;
    padding: 0px 0px;
    z-index: 99;
    width: 100%;
    position: fixed;
}

header.sticky {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
}

header.sticky.sticky-active {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    background: #FFF;
    box-shadow: 0px 0px 6px 1px rgb(0 0 0 / 9%);
    position: fixed;
}

header.sticky.sticky-active .iase-menu li a {
    color: #000;
    padding: 21px 0;
}

header.sticky.sticky-active .header-top-row {
    display: none;
}

.logo {
    margin: 4px 0;
    width: 159px;
}

.logo.dark {
    display: none;
}

header.sticky.sticky-active .logo {
    display: none;
}

header.sticky.sticky-active .logo.dark {
    width: 120px;
    display: block;
}

header.sticky.sticky-active .main-menu>ul>li>a {
    padding: 25px 0;
}

header.sticky-active .iase-logo .logo-dark {
    display: block;
}

header.sticky-active .iase-logo .logo {
    display: none;
}

/*header*/
/* Main menu*/
.hz69-menu {
    display: flex;
    gap: 30px;
    justify-content: space-between;
    align-items: center;
}

.hz-m-c3 {
    display: flex;
    align-items: center;
    gap: 25px;
}

.main-menu ul {
    display: flex;
    justify-content: flex-end;
    gap: 37px;
}

.main-menu ul li a {
    color: #ffffff;
    display: block;
    padding: 42px 0;
    font-weight: 500;
    font-size: 15px;
    gap: 5px;
}

header.sticky.sticky-active .main-menu ul li a {
    color: #000000;
}

.vertical {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

.skewback {
    clip-path: polygon(0 0, -100% 0, 100% 100%, 0 100%);
}

.nav-button {
    display: none;
}

.menu-button {
    display: none;
    border: none;
    background: none;
    color: #FFF;
    float: right;
    font-size: 25px;
    padding: 0;
    line-height: 0;
}

.menu-button svg {
    width: 50px;
    height: 50px;
}

.menu-side-button {
    margin-right: 10px;
}

.menu-side-button svg {
    width: 18px;
    height: 18px;
    fill: #FFF;
}

.menu-button svg {
    width: 18px;
    height: 18px;
    fill: #FFF;
}

header.sticky.sticky-active .menu-side-button svg {
    fill: #000000;
}

.close-btn {
    position: absolute;
    right: 40px;
    top: 40px;
}

.close-btn svg {
    fill: #FFF
}

.has-sub-menu {
    position: relative;
}

.has-sub-menu .sub-menu {
    visibility: hidden;
    position: absolute;
    background: #FFF;
    display: flex;
    flex-direction: column;
    gap: 0px;
    width: 241px;
    display: none;
    padding-bottom: 15px;
    /* border-bottom-left-radius: 10px; */
    /* border-bottom-right-radius: 10px; */
}

.has-sub-menu .sub-menu li {
    height: 40px;
}

.has-sub-menu .sub-menu>li>a {
    display: block;
    padding: 12px 23px;
    text-transform: none;
    font-size: 14px;
    color: #000;
}

.has-sub-menu.active .sub-menu {
    display: block;
}

/* Main menu ends*/
/*main slider*/
.main-slider img {
    width: 100%;
}

.swiper-pagination {
    margin: 0 0 5px;
}

.main-slider .swiper-pagination-bullet {
    background: #FFF;
    width: 12px;
    height: 12px;
}

.main-slider .swiper-pagination-bullet-active {
    background: var(--color-primary);
    width: 23px;
    border-radius: 50px;
}

/*main slider ends*/
/*WhatsApp floating*/
.floatingwhatsapp {
    position: fixed;
    bottom: 10px;
    right: 10px;
    z-index: 99;
    background: #4dc247;
    display: flex;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    box-shadow: -4px 4px 7px 0px rgb(0 0 0 / 20%);
    justify-content: center;
    align-items: center;
}

.floatingwhatsapp svg {
    width: 27px;
    height: 27px;
    fill: #FFF;
}

/*WhatsApp floating ends*/
/*Offcanvas*/
.offcanvas {
    background: var(--color-primary);
    color: #FFF;
}

.offcanvas-backdrop.show {
    opacity: 1;
    background: #00000078;
    backdrop-filter: blur(5px);
}

.row-offcanvas-navbar {
    position: relative;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-transition: 300ms ease all;
    -o-transition: 300ms ease all;
    transition: 300ms ease all;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    backface-visibility: hidden;
}

.row-offcanvas-navbar.right.active {
    -webkit-transform: translate(-250px, 0);
    -ms-transform: translate(-250px, 0);
    -o-transform: translate(-250px, 0);
    transform: translate(-250px, 0);
    -webkit-transform: translate3d(-250px, 0, 0);
    transform: translate3d(-250px, 0, 0);
}

.offcanvas h4 {
    font-size: 28px;
    font-weight: 500;
}

.offcanvas-body {
    padding: 50px;
}

.offcanvas,
.offcanvas-lg,
.offcanvas-md,
.offcanvas-sm,
.offcanvas-xl,
.offcanvas-xxl {
    --bs-offcanvas-width: 500px;
}

.sidebar-address {
    margin: 17px 0 60px;
}

.sidebar-address li {
    margin: 13px 0 15px;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 12px;
}

.sidebar-address li a {
    color: #FFF;
}

.sidebar-address li svg {
    fill: #ffffff;
    width: 21px;
    height: 30px;
    flex-shrink: 0;
    position: relative;
    top: 0px;
}

.sidebar-social {
    margin: 11px 0 0;
}

.sidebar-social li {
    display: inline-block;
    font-size: 38px;
    margin: 0 13px 0 0;
}

.sidebar-social li a {
    -webkit-transition: .2s all;
}

.sidebar-social li a svg {
    fill: #ffffff;
    width: 30px;
    height: 30px;
}

.sidebar-social li a:hover {
    color: #FFF;
    -webkit-transition: .2s all;
}

.sidebar-popup-about {
    margin: 0px 0 50px;
}

.sidebar-popup-about p {}

.offcanvas .btn-close {
    font-size: 20px;
    margin-right: 10px;
    margin-top: 10px;
    background: no-repeat;
}

.offcanvas .btn-close:focus {
    box-shadow: none;
}

.offcanvas .btn-close svg {
    fill: #ffffff;
    width: 22px;
    height: 30px;
}

/*Offcanvas ends*/
/*Buttons*/
.btn-s1 {
    background: var(--color-primary);
    display: inline-flex;
    align-items: center;
    color: #FFF;
    padding: 12px 24px;
    border-radius: 45px;
    gap: 8px;
    transition: background 0.3s ease, transform 0.3s ease;
    position: relative;
    overflow: hidden;
}

.btn-s1:hover {
    background: #990323;
}

.btn-s1 svg {
    width: 10px;
    height: 10px;
    fill: #FFF;
    transition: transform 0.3s ease;
}

.btn-s1:hover svg {
    transform: rotate(45deg);
}

.btn-s1.white {
    border: 1px solid #FFF;
    background-color: transparent;
}

/*Buttons ends*/
/*Main Slider*/
.main-slider {
    width: 100%;
    overflow: hidden;
}

.main-slider .swiper-slide {
    position: relative;
}

.main-slider .swiper-slide h2,
.main-slider .swiper-slide p,
.main-slider .swiper-slide a {
    opacity: 0;
    transform: translateY(30px);
}

.swiper-title {
    position: absolute;
    top: 37%;
    padding: 0 0 0 60px;
    width: 40%;
}

.swiper-title h2 {
    color: #FFF;
    font-size: 4vw;
    font-weight: 800;
}

.swiper-title p {
    color: #FFF;
    font-size: 18px;
}

/*Main Slider ends*/
/*Titles*/
.title-s1 {
    font-weight: 500;
    margin: 0 0 30px;
    font-size: 34px;
}

.title-s1 span {
    font-weight: 200;
}

.title-s2 {
    font-weight: 500;
    margin: 0 0 30px;
    font-size: 34px;
}

/*Titles ends*/
/*Service Carouse*/
.service-carousel-container {
    margin: 0 -10px;
}

.service-carousel {
    padding: 0 10px;
}

.service-carousel-section {
    background: var(--color-primary);
    overflow: hidden;
}

.dotted-bg {
    position: absolute;
    right: 0px;
    bottom: 0;
}

.dotted-bg {
    position: absolute;
    right: -190px;
    bottom: -201px;
    animation: spin 90s linear infinite;
    width: 600px;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.service-carousel-btns {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin: 0 0 40px;
}

.service-carousel-prev-btn,
.service-carousel-next-btn {
    border: 1px solid #FFF;
    padding: 6px 19px;
    border-radius: 50px;
    line-height: 18px;
}

.service-carousel-btns svg {
    width: 22px;
    height: 23px;
    fill: #FFF;
}

.service-carousel-thumbnail {
    color: #FFF;
    padding: 30px;
    border: .5px solid #FFF;
    border-radius: 15px;
    margin: 5px 3px 29px;
    transition: all 0.3s ease;
    background-color: transparent;
    position: relative;
    display: block;
    overflow: hidden;
    background: var(--color-primary);
}

.service-carousel-thumbnail-contents {
    position: relative;
    z-index: 9;
}

.service-carousel-thumbnail::before {
    content: "";
    position: absolute;
    height: 350px;
    width: 100px;
    -webkit-transition: all 0.8s;
    -ms-transition: all 0.8s;
    transition: all 0.8s;
    background: #bd1933;
    right: -100px;
    bottom: -60px;
    transform: rotate(30deg);
    box-shadow: 0 -16px 0 30px #bd1933, 0 -16px 0 60px #bd1933, 0 -16px 0 90px #bd1933;
}

.service-carousel-thumbnail:hover:before {
    background: rgba(255, 255, 255, 0.4);
    box-shadow: 0 -16px 0 30px rgba(255, 255, 255, 0.1), 0 -16px 0 60px rgba(255, 255, 255, 0.1), 0 -16px 0 90px rgba(255, 255, 255, 0.1);
    opacity: 0.5;
    transform: rotate(30deg) scale(1.5);
}

.services-page .service-carousel-thumbnail:before {
    display: none;
}

.service-carousel-thumbnail:hover {
    box-shadow: -2px 4px 11px 0px #00000036;
    border: .5px solid #2a2a2a;
    background-color: #2a2a2a;
    transition: all 0.3s ease;
    transform: scale(1.04);
}

.service-carousel-thumbnail svg {
    transition: transform 1.5s ease;
    transform-style: preserve-3d;
}

.service-carousel-thumbnail:hover svg {
    transform: rotateY(360deg);
}

.service-carousel-icon {
    width: 50px;
    height: 80px;
    fill: #FFF;
}

.services-page .service-carousel-thumbnail {
    color: #000000;
    padding: 30px;
    border: .5px dashed #8d8d8d;
    border-radius: 15px;
    margin: 5px 3px 29px;
    transition: all 0.3s ease;
    background-color: transparent;
    position: relative;
    display: block;
}

.services-page .service-carousel-icon {
    width: 50px;
    height: 80px;
    fill: #ad122f;
}

.services-page .service-carousel-thumbnail button svg {
    fill: #414040;
    width: 15px;
    height: 15px;
}

.service-carousel-thumbnail h3 {
    font-size: 22px;
}

.service-carousel-thumbnail button {
    background: none;
    display: block;
    text-align: right;
    width: 100%;
}

.service-carousel-thumbnail button svg {
    display: inline-block;
    fill: #FFF;
    width: 20px;
    height: 30px;
    transition: transform 0.3s ease;
}

.service-carousel-thumbnail:hover button svg {
    transition: transform 0.3s ease;
    transform: rotate(45deg);
}

.service-carousel-pagination {
    margin: 3px 0 13px;
    display: flex;
    justify-content: center;
}

.service-carousel-pagination .swiper-pagination-bullet {
    background: #FFF;
    width: 12px;
    height: 12px;
}

.service-carousel-pagination .swiper-pagination-bullet-active {
    background: #fffafb;
    border-radius: 50px;
}

/*Service Carouse Ends*/

/*Box Hover Layers Light*/
.box-hover-layers-light {
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.box-hover-layers-light::before {
    content: "";
    position: absolute;
    height: 350px;
    width: 100px;
    -webkit-transition: all 0.8s;
    -ms-transition: all 0.8s;
    transition: all 0.8s;
    background: #e5e5e5;
    right: -100px;
    bottom: -60px;
    transform: rotate(30deg);
    box-shadow: 0 -16px 0 30px #eaeaea, 0 -16px 0 60px #f1f1f1, 0 -16px 0 90px #f8f8f8;
}

.box-hover-layers-light:hover:before {
    background: #e5e5e5;
    box-shadow: 0 -16px 0 30px #eaeaea, 0 -16px 0 60px #f1f1f1, 0 -16px 0 90px #f8f8f8;
    opacity: 0.7;
    transform: rotate(30deg) scale(1.5);
}

/*Box Hover Layers Light ends*/
/*Why choose*/
.why-choose-thumbnail {
    padding-right: 30px;
    background: #fff;
    border-radius: 12px;
    padding: 16px 30px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 0 0 rgba(0, 0, 0, 0);
    /* start with no shadow */
    text-align: left;
}

.why-choose-thumbnail:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.1);
}

.why-choose-thumbnail svg {
    width: 60px;
    height: 60px;
    fill: var(--color-primary);
    margin: 10px 0 17px;
    transition: transform 0.4s ease, fill 0.3s ease;
}

.why-choose-thumbnail:hover svg {
    transform: scale(1.15);
    fill: #c61732;
    /* a deeper version of your primary for contrast */
}

.why-choose-thumbnail h3 {
    font-size: 19px;
    margin-bottom: 10px;
    transition: color 0.3s ease;
}

.why-choose-thumbnail:hover h3 {
    color: var(--color-primary);
}

.why-choose-thumbnail p {
    transition: color 0.3s ease;
}

.why-choose-thumbnail:hover p {
    color: #444;
}

/*Why choose ends*/
/*Vision Mission*/
.image50-left {
    height: 100%;
    width: 50%;
    position: absolute;
    left: 0;
    top: 0;
    background-size: cover;
    background-position: center center;
}

.image50-right {
    height: 100%;
    width: 50%;
    position: absolute;
    right: 0;
    top: 0;
    background-size: cover;
    background-position: center center;
}

.vision-mission-content {
    padding: 100px 0;
}

/*Vision Mission ends*/
/*Counter Section*/
.counter-section {
    background-image: url('../images/counter-bg.webp');
    background-color: #b91818;
    background-attachment: fixed;
    background-size: cover;
    padding: 100px 0;
    background-position: center center;
}

.counter-box {
    display: flex;
    gap: 22px;
    color: #FFF;
    align-items: center;
}

.counter-box svg {
    width: 70px;
    height: 70px;
    fill: #FFF;
    transition: transform 0.5s ease, fill 0.5s ease;
}

.counter-box:hover svg {
    transition: transform 0.5s ease, fill 0.5s ease;
    transform: scale(1.05) rotate(4.5deg)
}

.counter-box .counter {
    font-size: 50px;
    font-weight: 600;
    line-height: 38px;
}

.counter-number sup {
    font-size: 45px;
    top: 0;
}

.counter-box p {
    margin: 4px 0 0;
}

/*Counter Section ends*/
/*Join us*/
.join-us-contact-box {
    position: absolute;
    bottom: 30px;
    left: 30px;
    display: flex;
    align-items: center;
    background: #FFF;
    border-radius: 7px;
    padding: 25px;
    gap: 11px;
}

.join-us-icon-box {
    background-color: var(--color-primary);
    border-radius: 50%;
    padding: 10px;
}

.join-us-icon-box svg {
    width: 26px;
    height: 26px;
    fill: #FFF;
}

.join-us-phone {
    display: flex;
    flex-direction: column;
}

.join-us-phone span {
    color: var(--color-primary);
}

.join-us-phone a {
    font-weight: 600;
}

.quick-contact-form {
    padding: 40px;
    position:relative;
}

.quick-contact-form::after {
    position: absolute;
    content: '';
    right: 20px;
    bottom: 50px;
    width: 120px;
    height: 57px;
    background: #f7f7f7;
}


.quick-contact-form input[type='text'],
.quick-contact-form input[type='email'],
.quick-contact-form input[type='number'] {
    width: 100%;
    border: none;
    border-bottom: 1px solid #CCC;
    background-color: transparent;
    height: 50px;
    margin: 0 0 23px;
}

.quick-contact-form textarea {
    width: 100%;
    border: none;
    border-bottom: 1px solid #CCC;
    background-color: transparent;
    height: 100px;
    margin: 0 0 10px;
    resize: none;
    margin: 0 0 23px;
}

.quick-contact-form input[type='text']:focus,
.quick-contact-form input[type='email']:focus,
.quick-contact-form input[type='number'],
.quick-contact-form textarea:focus {
    outline: none;
}

/*Join us ends*/
/*Footer*/
footer {
    color: #FFF;
    background-image: url(../images/footer-bg.svg);
    background-size: cover;
    background-position: center top;
    padding-top: 80px;
}

.footer-logo {
    width: 180px;
}

footer a {
    color: #FFF;
}

footer h2 {
    font-size: 26px;
    margin: 0 0 25px;
}

.socialmedia-links {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
}

.socialmedia-links li a svg {
    width: 35px;
    height: 35px;
    fill: #9d9d9d;
}

.socialmedia-links li a:hover svg {
    width: 35px;
    height: 35px;
    fill: #ffffff;
}

.footer-contact li {
    position: relative;
    padding-left: 37px;
    margin: -3px 0 30px;
}

.footer-contact li svg {
    width: 24px;
    height: 24px;
    fill: var(--color-primary);
    position: absolute;
    left: 0px;
    top: 0px;
}

.footer-contact li a:hover {
    color: #ec466a;
}

.footer-contact li h3 {
    font-size: 18px;
    margin: 0 0 16px;
}

.footer-contact li b {
    text-transform: uppercase;
    border-left: 2px solid var(--color-primary);
    padding-left: 10px;
    margin: 0 0 10px;
    display: block;
    line-height: 15px;
    font-size: 16px;
}

.quick-links {
    display: flex;
    gap: 15px;
    flex-direction: column;
}

.quick-links li a:hover {
    color: #ec466a;
}

.footer-base {
    background-color: #282828;
    padding: 39px 0;
    margin: 60px 0 0;
}

.footer-base-links {
    display: flex;
    justify-content: flex-end;
    gap: 30px;
}

/*Footer ends*/
/*Innerpage*/
.page-header {
    background: url(../images/header-bg.webp) var(--color-primary);
    padding: 181px 0 100px;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}

.page-header::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: #75001696;
    top: 0px;
}

.page-header h1 {
    text-align: center;
    color: #FFF;
    font-size: 42px;
}

.hz-breadcrumb {
    display: flex;
    justify-content: center;
    gap: 33px;
}

.hz-breadcrumb li {
    color: #FFF;
    position: relative;
}

.hz-breadcrumb li svg {
    fill: #FFF;
    position: absolute;
    right: -24px;
    top: 9px;
    width: 12px;
    height: 12px;
}

.hz-breadcrumb li:last-child::after {
    display: none;
}

.hz-breadcrumb li a {
    color: #d43553;
}

.innerpage {
    padding: 80px 0;
}

/*Innerpage Ends*/
/*Feature Box Styles*/
.feature-box-s1 {
    text-align: center;
    border: 1px dashed #ababab;
    padding: 20px;
    border-radius: 0px;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.feature-box-s1 img {
    margin: 0 0 18px;
}

.feature-box-s1 h3 {
    font-size: 21px;
}

.feature-box-s2 {
    background: #fff;
    border-radius: 12px;
    padding: 30px 25px;
    margin-bottom: 28px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    border: 1px solid #eaeaea;
    min-height: 200px;
}

.feature-box-s2:hover {
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.08);
    transform: translateY(-4px);
    border-color: #ccc;
}

.feature-box-s2 h5 {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 15px;
    color: #ad0d2f;
    /* your ESSE theme red */
}

.feature-box-s2 p {
    font-size: 15px;
    color: #555;
    line-height: 1.6;
    margin: 0;
}

.bx-s1 {
    border: 1px dashed #aaaaaa;
    margin: 0 0 30px;
    text-align: center;
    padding: 14px;
}

.bx-s1 img {}

.bx-s1 p {
    font-weight: 500;
    padding: 6px;
    min-height: 63px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.box-s1 {
    border: 1px solid #e9e9e9;
    padding: 30px;
    margin: 0 0 30px;
}

.box-s1 ul {
    padding-left: 20px;
    margin-bottom: 15px;
}

.box-s1 ul li {
    position: relative;
    font-size: 15px;
    line-height: 24px;
    color: #444444;
    padding-left: 18px;
    margin-bottom: 10px;
}

.box-s1 ul li::before {
    content: '•';
    position: absolute;
    left: 0;
    top: 0;
    color: #ad0d2f;
    font-size: 18px;
    line-height: 1;
}

/*Feature Box Styles ends*/
/*Feature List styles*/
.feature-list-s1 {
    list-style: none;
    padding: 0;
    margin: 0;
}

.feature-list-s1 li {
    position: relative;
    padding-left: 28px;
    margin-bottom: 18px;
    font-size: 16px;
    line-height: 1.6;
    color: #444;
}

.feature-list-s1 li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 2px;
    color: #ad0d2f;
    /* ESSE primary theme color */
    font-weight: bold;
    font-size: 16px;
}

.feature-list-s1 strong {
    color: #000;
    font-weight: 600;
}

.eng-box {
    border: 1px solid #eee;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
    transition: all 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
    margin: 0 0 30px;
}

.eng-box:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.eng-box-content {
    padding: 20px;
    flex: 1;
}

.eng-box-content h4 {
    font-size: 18px;
    font-weight: 600;
    color: #ad0d2f;
    margin-bottom: 12px;
    text-transform: uppercase;
}

.eng-box-content ul {
    padding-left: 16px;
    list-style: disc;
    font-size: 14px;
    color: #444;
    line-height: 1.7;
    min-height: 159px;
    list-style: disc;
}

.eng-box-content ul li {
    list-style: disc;
}

.icon-box-grid {
    row-gap: 30px;
}

.icon-box {
    padding: 30px 20px;
    border: 1px solid #eee;
    border-radius: 12px;
    transition: all 0.3s ease;
    background: #fff;
    height: 100%;
}

.icon-box:hover {
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
    transform: translateY(-5px);
}

.icon-box img {
    margin-bottom: 15px;
}

.icon-box h5 {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 10px;
    color: #222;
}

.icon-box p {
    font-size: 15px;
    color: #555;
    line-height: 1.6;
}

.check-list {
    list-style: none;
    padding-left: 0;
    margin: 0px 0 30px;
}

.check-list li::before {
    content: '\2713';
    color: #ad0d2f;
    margin-right: 8px;
}

.pm-box {
    border: 1px solid #eee;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
    transition: all 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
    margin: 20px 0 10px;
}

.pm-box:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.pm-box-content {
    padding: 20px;
    flex: 1;
}

.pm-box-content h4 {
    font-size: 18px;
    font-weight: 600;
    color: #ad0d2f;
    margin-bottom: 12px;
    text-transform: uppercase;
}

.pm-box-content ul {
    padding-left: 16px;
    font-size: 14px;
    color: #444;
    line-height: 1.7;
    min-height: 101px;
}

.pm-box-content ul li {
    list-style: disc;
}

.consultancy-box {
    background: #fff;
    border-radius: 8px;
    padding: 20px;
    border: 1px solid #eee;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.04);
    transition: all 0.3s ease;
    height: 100%;
    min-height: 161px;
    margin: 0 0 30px;
}

.consultancy-box:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.consultancy-box h5 {
    font-size: 16px;
    color: #ad0d2f;
    font-weight: 600;
    margin-bottom: 8px;
}

.consultancy-box p {
    color: #444;
    line-height: 1.6;
}

@media (max-width: 767px) {
    .consultancy-box h5 {
        font-size: 15px;
    }
}

.consultancy-box {
    background: #fff;
    border-radius: 8px;
    padding: 40px 30px 10px;
    border: 1px solid #eee;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.04);
    transition: all 0.3s ease;
    height: 100%;
}

.consultancy-box ul li {
    margin: 0 0 11px;
}

.consultancy-box ul li strong {
    display: block;
    margin: 0 0 10px;
    font-size: 18px;
}

.consultancy-box:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.consultancy-box h5 {
    font-size: 23px;
    color: #ad0d2f;
    font-weight: 600;
    margin-bottom: 12px;
}

.asbuilt-box {
    background: #ffffff;
    border-radius: 10px;
    padding: 40px 29px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
    height: 100%;
    transition: all 0.3s ease;
    min-height: 282px;
    margin: 0 0 30px;
}

.asbuilt-box:hover {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
}

.asbuilt-box h4 {
    font-size: 20px;
    font-weight: 600;
    color: #333;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
}

.asbuilt-box ul {
    padding-left: 20px;
    margin-bottom: 0;
}

.asbuilt-box ul li {
    margin-bottom: 6px;
    color: #444;
    list-style: disc;
}

.icon-img {
    width: 42px;
    margin-right: 10px;
}

.software-box {
    background: #fff;
    padding: 20px;
    border: 1px solid #eee;
    border-radius: 6px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
    height: 100%;
    min-height: 271px;
    margin: 0 0 30px;
}

.software-box h5 {
    font-size: 17px;
    font-weight: 600;
    margin-bottom: 12px;
    color: #ad0d2f;
}

.software-box ul {
    padding-left: 8px;
    margin: 0 0 0 10px;
    ;
    font-size: 14px;
    line-height: 1.7;
    color: #333;
}

.software-box ul li {
    list-style: disc;
}

.list-style-1 {
    margin-left: 7px;
}

.list-style-1 li {
    margin: 0 0 10px;
    position: relative;
    padding-left: 17px;
    font-size: 15px;
}

.list-style-1 li::before {
    content: "";
    position: absolute;
    left: 0px;
    top: 0px;
    color: #ad0d2f;
}

.list-style-2 {
    margin: 0 0 0 20px;
}

.list-style-2 li {
    list-style: disc;
    margin: 0 0 15px;
}

/*Feature List styles ends*/
/*HSE Accordian*/
.custom-accordion .accordion-item {
    border: none;
    margin-bottom: 15px;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.custom-accordion .accordion-button {
    background-color: #d7d7d7;
    font-weight: 600;
    font-size: 1.1rem;
    color: #333;
    padding: 1rem 1.25rem;
    transition: background-color 0.3s ease;
}

.custom-accordion .accordion-button:not(.collapsed) {
    background-color: #c61732;
    color: #fff;
}

.custom-accordion .accordion-body {
    padding: 1.25rem 1.5rem;
    background-color: #fff;
}

.custom-accordion h4,
.custom-accordion h5 {
    margin-top: 1rem;
    color: #c61732;
    font-weight: 600;
}

.custom-accordion ul {
    padding-left: 1.25rem;
    list-style-type: disc;
}

.custom-accordion ul li {
    margin-bottom: 0.5rem;
    color: #555;
    list-style: disc;
}

.accordion-button {
    background-color: #f6f8fa;
    font-weight: 600;
    font-size: 1.1rem;
    color: #333;
}

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

.accordion-button:not(.collapsed) {
    background-color: #c61732;
    color: #fff;
}

.menu-tabs {
    list-style: none;
    padding-left: 0;
}

.menu-tabs li {
    display: inline-block;
    margin-right: 20px;
}

.menu-tabs a {
    color: #c61732;
    text-decoration: none;
    font-weight: 500;
}

.flat-list {
    list-style-type: disc;
    margin-left: 20px;
    padding-left: 0;
}

.accordion-body p {
    margin-bottom: 1rem;
}

/*HSE Accordian ends*/
/*Careers*/
.career-bx {
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.05);
    padding: 30px;
    margin-bottom: 30px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 1px solid #eaeaea;
}

.career-bx:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
}

.career-bx h2 {
    font-size: 24px;
    font-weight: 600;
    color: var(--color-primary);
    margin-bottom: 15px;
}

.career-bx h3 {
    font-size: 18px;
    margin-top: 25px;
    font-weight: 500;
    color: var(--color-primary);
}

.career-bx p {
    font-size: 16px;
    line-height: 1.7;
    color: #333333;
}

.career-bx ul {
    padding-left: 20px;
}

.career-bx ul li {
    list-style: disc;
    margin-bottom: 10px;
    color: #444444;
}

/*Careers ends*/
/*Vision mission*/
.vision-card {
    background: #f8f9fa;
    border-radius: 8px;
    padding: 20px;
    align-items: flex-start;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
    transition: transform 0.3s ease;
    margin: 0 0 20px;
}

/*Vision mission ends*/
.asbuilt-info-box {
    /* background-color: #f9f9f9; */
    border: 1px dashed #cacaca;
    border-radius: 8px;
    padding: 24px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
    transition: box-shadow 0.3s ease;
}

.asbuilt-info-box:hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.07);
}

.asbuilt-title {
    font-size: 23px;
    font-weight: 600;
    color: #ad0d2f;
    margin-bottom: 16px;
}

.asbuilt-list {
    list-style-type: disc;
    padding-left: 20px;
    margin: 0;
}

.asbuilt-list li {
    line-height: 1.8;
    color: #333;
    list-style: disc;
}

/*Privacy Policy*/
.privacy-policy-section {
    background-color: #f9f9f9;
    padding: 60px 20px;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    color: #333;
}

.privacy-policy-section .container {
    max-width: 960px;
    margin: auto;
    background: #fff;
    padding: 40px;
    border-radius: 12px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.05);
}

.policy-title {
    font-size: 32px;
    font-weight: 700;
    color: var(--color-primary);
    margin-bottom: 30px;
}

.policy-heading {
    font-size: 20px;
    font-weight: 600;
    margin-top: 40px;
    margin-bottom: 15px;
    color: var(--color-primary);
}

.privacy-policy-section p {
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 15px;
}

.privacy-policy-section a {
    color: var(--color-primary);
    text-decoration: underline;
}

.privacy-policy-section a:hover {
    color: #d91740;
    text-decoration: none;
}

/*Privacy Policy ends*/
/*Cursor animation*/
.cursor-anim {
    width: 12px;
    height: 12px;
    position: fixed;
    top: 0;
    left: 0;
    background: var(--color-primary);
    border-radius: 50%;
    pointer-events: none;
    z-index: 999;
}

/*Cursor animation ends*/
/*Projects Page*/
.project-box {
    border: dashed 1px var(--color-primary);
    padding: 11px;
    position: relative;
    overflow: hidden;
    margin: 0 0 30px;
}

.project-box:hover {}

.project-box img {
    position: relative;
    transition: all 0.2s ease-in-out;
    ;
    top: 0px;
}

.project-box:hover img {

    top: -5px;
    transition: all 0.2s ease-in-out;
    ;
}

.project-box::after {
    content: '';
    position: absolute;
    width: 150%;
    height: 208px;
    background: var(--color-primary);
    bottom: -80px;
    right: -130px;
    transform: rotate(169deg);
}

.project-box h3 {
    position: relative;
    z-index: 9;
    color: #FFF;
    font-size: 21px;
    line-height: 27px;
    font-weight: 300;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 0px 3px;
    justify-content: space-between;
}

.project-box button {
    width: 45px;
    height: 45px;
    position: relative;
    line-height: 38px;
    z-index: 9;
    background: #ffffff82;
    border-radius: 50%;
    display: flex;
    margin-right: -1px;
    transition: all 0.2s ease-in-out;
    align-items: center;
    flex-shrink: 0;
    justify-content: center;
}

.project-box button svg {
    fill: var(--color-primary);
    width: 18px;
    height: 17px;
    transition: all 0.2s ease-in-out;
}

.project-box:hover button {
    transition: all 0.2s ease-in-out;
    background: #ffffff;

}

.project-box:hover button svg {
    transition: all 0.2s ease-in-out;
    transform: rotate(45deg);
}





.project-meta li {
    margin-bottom: 0.3rem;
    color: #000000;
}


.section-title {
    font-size: 21px;
    font-weight: 600;
    color: var(--color-primary);
    border-left: 4px solid var(--color-primary);
    padding-left: 10px;
    margin-bottom: 1rem;
}

.project-list,
.project-outcomes {
    list-style: none;
    padding-left: 19px;
    margin-bottom: 0;
}

.project-list li,
.project-outcomes li {
    padding: 0.5rem 0;
    position: relative;
    font-size: 1.05rem;
    color: #444;
}

.project-list li::before {
    content: "•";
    color: var(--color-primary);
    font-weight: bold;
    display: inline-block;
    width: 1rem;
    margin-left: -1.2rem;
}


.project-outcomes li::before {
    content: "•";
    color: var(--color-primary);
    font-weight: bold;
    display: inline-block;
    width: 1rem;
    margin-left: -1.2rem;
}

/*Projects Page ends*/


/*Hz WhatsApp Chat box*/
.hz-whatsapp-chat-box-whatsapp-button {
    width: 45px;
    height: 48px;
    background-color: #25d366;
    position: fixed;
    right: 16px;
    bottom: 16px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.hz-whatsapp-chat-box-whatsapp-button svg {
    fill: #FFF;
    width: 24px;
    height: 24px;
}

.hz-whatsapp-chat-box-container {
    position: fixed;
    right: 16px;
    bottom: 16px;
    width: 320px;
    z-index: 9;
}

.hz-whatsapp-chat-box {
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
    border-radius: 10px;
    position: relative;
    z-index: 9;
    background: #fff;
    display: none;
}

.hz-whatsapp-chat-box-textarea button {
    background-color: transparent;
    position: absolute;
    right: 7px;
    background-color: #25d366;
    border-radius: 50%;
    width: 33px;
    height: 33px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.hz-whatsapp-chat-box-header button {
    background-color: transparent;
    position: absolute;
    right: 10px;
}

.hz-whatsapp-chat-box-header button svg {
    width: 14px;
    height: 15px;
}

.hz-whatsapp-chat-box-header {
    background-color: #25d366;
    display: flex;
    gap: 6px;
    align-items: center;
    padding: 18px 17px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.hz-whatsapp-chat-box-header h4 {
    color: #FFF;
    margin: 0;
    font-size: 16px;
}

.hz-whatsapp-chat-box-header svg {
    fill: #FFF;
    width: 20px;
    height: 20px;
}

.hz-whatsapp-chat-box-body {
    background: #f9fafb;
    padding: 18px;
    min-height: 256px;
}

.hz-whatsapp-chat-box-mesage {
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
    padding: 16px;
    background-color: #FFF;
    border-radius: 7px;
    width: 79%;
}

.hz-whatsapp-chat-box-mesage p {
    margin: 0;
    font-weight: 400;
    font-size: 17px;
}

.hz-whatsapp-chat-box-textarea {
    border-top: 1px solid #e2e8f0;
    display: flex;
    background: #FFF;
    justify-content: space-between;
    padding: 18px;
    align-items: center;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

.hz-whatsapp-chat-box-textarea svg {
    fill: #ffffff;
    width: 16px;
    height: 16px;
}

.hz-whatsapp-chat-box-textarea input[type='text'] {
    resize: none;
    border: 1px solid #e8e8e8;
    padding: 10px;
    border-radius: 6px;
    height: 42px;
    width: 86%;
    font-size: 15px;
}

.hz-whatsapp-chat-box-textarea input[type='text']:focus {

    outline: 1px solid #25d366;
}

/*Hz WhatsApp Chat box ends*/



/*Thank you forom page*/
.success
{
	text-align: center;
	background: var(--color-primary);
	padding: 40px 30px;
}
.success h2
{
	margin: 0 0 15px;
	font-size: 55px;
	color: #ffffff;
}
.success p
{
	color: #ffffff;
	font-size: 18px;
	line-height: 29px;
}
.success p a.wsp
{
	color: #FFF;
	background: #490613;
	display: inline-block;
	padding: 0 10px;
	border-radius: 50px;
	margin: 7px 0;
}
.success p a.call
{
	color: #ffffff;
	border: 1px solid #ede2e4;
	display: inline-block;
	padding: 0 10px;
	border-radius: 50px;
}
/*Thank you  form page ends*/

/*404*/
.notfoundpage
{
	text-align:center;
	display: inline-block;
	border: 7px solid var(--color-primary);
	padding: 20px;
}
.notfoundpage h1
{
	font-size: 140px;
	line-height: 100px;
	margin: 0px 0 10px;
	color: var(--color-primary);
}
.notfoundpage h2
{
	font-size: 80px;
	text-transform: uppercase;
	margin: 0;
	color: var(--color-primary);
}
.notfoundpage h3
{
	font-weight: 200;
	color: var(--color-primary);
}
/*404 ends*/

/*Team Members*/
.team-box {
    border-top-left-radius: 60px;
    border-top-right-radius: 60px;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    padding: 24px 14px 14px;
    text-align: center;
    transition: all 0.3s ease;
    flex-direction: column;
    justify-content: center;
    margin: 0 0 10px;
}

.team-box img {
    width: 80%;
    margin: 0 auto 15px auto;
    border-top-left-radius: 40px;
    border-top-right-radius: 40px;
}

.team-box h3 {
    font-size: 18px;
    font-weight: 600;
    color: #222;
    margin-bottom: 6px;
}

.team-box p {
    color: #666;
    margin: 0;
}

.team-box:hover {
    transform: translateY(-6px);
    box-shadow: 0 8px 18px rgba(0,0,0,0.12);
}
/*Team Members ends*/

/**/
.choose-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 14px;
}

.choose-list li {
    background: #fff;
    width: 33.33%;
    border-radius: 8px;
    padding: 15px 13px;
    margin-bottom: 12px;
    font-size: 1rem;
    line-height: 1.6;
    color: #333;
    box-shadow: 0 3px 10px rgba(0,0,0,0.05);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.choose-head
{
    position: relative;
    padding: 0 0 0 34px;
    line-height: 19px;
    margin: 0 0 10px;
    font-size: 15px;
}
.choose-list li:hover {
    transform: translateY(-4px);
    box-shadow: 0 6px 16px rgba(0,0,0,0.1);
}

.choose-list .icon {
    margin-right: 8px;
    background: var(--color-primary); /* green check color */
    font-size: 13px;
    position: absolute;
    left: 0px;
    top: 2px;
    color: #FFF;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    text-align: center;
    line-height: 30px;
}
.esse-section {
  background: #f9f9f9;
}


.industry-list,
.gain-list {
  list-style: none;
  padding-left: 0;
}

.industry-list li,
.gain-list li {
  font-size: 1rem;
  margin-bottom: 0.6rem;
  line-height: 1.5;
}

/**/