:root {
--dark1: #1C1C1C;
    --dark2: #454545;
    --light_white: #F9F9F9;
    --primary_color: #1351D8;
    --primary_color2: #4F8DFF;
    --primary_light: #F3F6FD;
    --primary_light2: rgb(19 81 216 / 10%);
    --gray: #D9D9D9;
    --font_syne: "Syne", sans-serif;
    --font_yantramanv: "Yantramanav", sans-serif;
    --font_dm: "DM Sans", sans-serif;
    --yellow_color: #FFD600;
}

*,
*:before,
*:after {
margin: 0;
    padding: 0;
    box-sizing: border-box;
}

ul {
list-style: none;
    margin: 0;
    padding: 0;
}

a {
text-decoration: none !important;
}

input:focus,
textarea:focus,
button:focus {
outline: none;
    box-shadow: none;
}

body {
font-size: 16px;
    font-family: "DM Sans", sans-serif;
    line-height: 1.5;
    font-weight: 400;
    overflow-x: hidden;
}

img {
max-width: 100%;
}

.custom-container {
max-width: 1550px;
    margin: 0 auto;
    padding: 0 15px;
}

.custom-row {
display: flex;
    width: 100%;
}

.flex-1 {
flex: 1;
}

.w-full {
width: 100%;
}

.card-h:hover .theme-btn i {
transition: transform .5s;
    transform: rotate(45deg);
}

.theme-btn {
font-size: 18px;
    font-weight: 400;
    color: var(--light_white);
    background: var(--primary_color);
    display: inline-flex;
    align-items: center;
    padding: 13px 26px;
    border-radius: 30px;
    position: relative;
    cursor: pointer;
    transition: .3s;
    z-index: 1;
    overflow: hidden;
    text-decoration: none !important;
    gap: 10px;
}

.theme-btn::after,
.theme-btn::before {
content: "";
    width: 50%;
    height: 0;
    background: var(--dark1);
    border-radius: 30px 0 0 30px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    transition: .3s;
}

.theme-btn::after {
top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    border-radius: 0 30px 30px 0;
}

.theme-btn:hover {
color: var(--light_white);
}

.theme-btn:hover::after,
.theme-btn:hover::before {
height: 100%;
}

.theme-btn:hover i {
transition: transform .5s;
    transform: rotate(45deg);
}

.theme-btn:hover i {
fill: #ffffff;
}

.simple-shadow {
box-shadow: 0px 4px 20px 5px rgba(0,0,0,0.03);
    border-radius: 10px;
    background: #ffffff;
    padding: 10px;
}

.section-subtitle {
font-family: var(--font_syne);
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 5px;
    color: var(--primary_color);
    margin: 0;
    text-transform: uppercase;
}

.section-title {
font-family: var(--font_yantramanv);
    font-size: 60px;
    font-weight: 700;
    line-height: 56px;
    letter-spacing: -1px;
}

.fade-in {
animation: fadeIn 1s cubic-bezier(.97,.01,.92,1);
}

.bounce-in {
animation: bounceIn 0.5s ease;
    animation-delay: 1s;
    visibility: hidden;
    animation-fill-mode: forwards;
}

.pop-in {
animation: popIn 1.5s ease;
}

.header-area {
border-bottom: 1px solid var(--gray);
    /* padding: 26px 0; */
    position: sticky;
    top: 0;
    z-index: 1024;
    background: #ffffff;
}

.header-area .header-left {
gap: 68px;
}

.header-area .header-left .header-left-right {
display: none;
    align-items: center;
    gap: 8px;
}

.header-area .header-left .menu-bar {
display: none;
    width: 53px;
    height: 53px;
    text-align: center;
    line-height: 53px;
    font-size: 26px;
    border-radius: 10px;
    transition: .3s;
    color: var(--dark1);
    background: rgb(19 81 216 / 10%);
    color: var(--primary_color);
}

.header-area .logo {
display: block;
}

.header-area .logo img {
display: block;
    max-width: 166px;
}

.header-area .navbar-wrapper .close-menu-bar {
display: none;
    position: absolute;
    right: 80px;
    top: 20px;
    width: 45px;
    height: 45px;
    text-align: center;
    line-height: 45px;
    border-radius: 50%;
    border: 1px solid rgb(28 28 28 / 10%);
    font-size: 20px;
    cursor: pointer;
    transition: .3s;
}

.header-area .navbar-wrapper .close-menu-bar:hover {
color: red;
    border-color: red;
}

.header-area .navbar-wrapper > ul {
display: flex;
    align-items: center;
    gap: 40px;
}

.header-area .navbar-wrapper > ul > li > ul {
display: none;
}

.header-area .navbar-wrapper ul li .dropdown-menu-item-icon {
display: none;
    width: 35px;
    height: 35px;
    text-align: center;
    line-height: 35px;
    border-radius: 10px;
    cursor: pointer;
    transition: .3s;
    background: rgb(19 81 216 / 10%);
    color: var(--primary_color);
}

.header-area .navbar-wrapper ul li a {
color: var(--dark1);
    font-size: 18px;
    font-weight: 500;
    position: relative;
    text-decoration: none;
    transition: .3s;
}

.header-area .navbar-wrapper ul li a:hover {
color: #1351D8;
}

.header-area .navbar-wrapper > ul > li {
line-height: 106px;
}

.header-area .navbar-wrapper ul li.mega-menu-item a {
padding-right: 16px;
}

.header-area .navbar-wrapper ul li.mega-menu-item > a:after {
content: "";
    border-left: 5px solid transparent;
    border-top: 5px solid var(--dark1);
    border-right: 5px solid transparent;
    border-bottom: 5px solid transparent;
    position: absolute;
    right: 0;
    top: 10px;
}

.header-area .navbar-wrapper ul li .mega-menu {
position: absolute;
    left: 0;
    width: 100%;
    z-index: 1024;
    background: rgba(0,0,0,0.5);
    height: 100vh;
    overflow-x: hidden;
    transition: .1s;
    opacity: 0;
    visibility: hidden;
    border-top: 1px solid var(--gray);
}

.header-area .navbar-wrapper ul > li:hover > .mega-menu {
opacity: 1;
    visibility: visible;
    transition: .3s;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner {
background: #ffffff;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .left {
flex: 1;
    padding: 66px 105px 0 0;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-link-wrap {
border-bottom: 1px solid #D9D9D9;
    padding: 0 0 66px 0;
}

.header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-link-wrap {
display: grid !important;
    grid-template-columns: 1fr 1fr;
    column-gap: 50px;
    row-gap: 24px;
    flex-wrap: wrap;
}

.header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-link-wrap {
width: 100%;
}

.header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-portfolio-card {
display: flex;
    gap: 24px;
}

.header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-portfolio-card .img-box {
border-radius: 10px;
    max-width: 233px;
    width: 100%;
    flex: none;
}

.header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-portfolio-card .img-box img {
object-fit: cover;
    width: 100%;
    height: 100%;
    display: block;
    margin: 0;
    border-radius: 10px;
}

.header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-portfolio-card h3 {
font-family: var(--font_yantramanv);
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -0.5px;
}

.header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-portfolio-card h3 a {
line-height: 1;
    color: var(--dark1);
}

.header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-portfolio-card p {
font-size: 16px;
    line-height: 26px;
    color: rgb(28 28 28 / 70%);
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards {
display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin-top: 10px;
    line-height: 1;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards .mega-menu-service-card {
border-radius: 10px;
    background: rgba(19, 81, 216, 0.03);
    padding: 15px;
    display: flex;
    align-items: center;
    gap: 26px;
    line-height: 1;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards .mega-menu-service-card .icon {
width: 70px;
    height: 70px;
    flex: none;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(19, 81, 216, 0.1);
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards .mega-menu-service-card .icon img {
display: block;
    margin: 0;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards .mega-menu-service-card .content h2,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards .mega-menu-service-card .content h2 a {
font-size: 17px;
    line-height: 1;
    color: var(--primary_color);
    margin-bottom: 5px;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards .mega-menu-service-card .content p {
margin-bottom: 0;
    line-height: 1;
    font-size: 17px;
    color: rgb(28 28 28 / 85%);
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-links {
gap: 130px;
    padding-right: 25px;
}

.header-area .navbar-wrapper .mega-menu-link h3 {
font-size: 16px;
    color: rgb(28 28 28 / 90%);
    margin-bottom: 32px;
    line-height: 1;
    font-weight: 600;
}

.header-area .navbar-wrapper .mega-menu-link ul li {
line-height: 1;
}

.header-area .navbar-wrapper .mega-menu-link ul li + li {
margin-top: 25px;
}

.header-area .navbar-wrapper .mega-menu-link ul li a {
color: rgb(28 28 28 / 75%);
    padding: 0;
    font-weight: 400;
    display: block;
}

.header-area .navbar-wrapper .mega-menu-link ul li a:hover {
color: var(--primary_color);
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-meu-footer {
padding: 30px 0 30px 0;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-meu-footer p {
margin-bottom: 0;
    font-size: 16px;
    color: rgb(28 28 28 / 75%);
    line-height: 1;
    font-weight: 400;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-meu-footer p a {
color: var(--primary_color);
}

.header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-meu-footer p a i {
height: 16px;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-meu-footer .mega-menu-social {
gap: 22px;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-meu-footer .mega-menu-social li {
line-height: 1;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-meu-footer .mega-menu-social li a {
display: block;
    font-size: 22px;
    color: var(--primary_color);
    padding-right: 0;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .right {
position: relative;
    z-index: 1;
    padding: 50px 0 50px 50px;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .right .mega-menu-ads {
display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .right::before {
content: "";
    position: absolute;
    height: 100%;
    width: 1500px;
    z-index: -1;
    background: #F6F6F6;
    left: 0;
    top: 0;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .right img {
display: block;
    border-radius: 10px;
    margin-bottom: 30px;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .right h2 {
font-family: var(--font_yantramanv);
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.5px;
    margin-bottom: 10px;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .right p {
font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: rgb(28 28 28 / 70%);
    margin-bottom: 15px;
}

.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .right a {
display: inline-block;
    color: var(--primary_color);
    border-bottom: 1px solid var(--primary_color);
    line-height: 1;
    padding-right: 0;
    font-size: 16px;
    font-weight: 500;
}

.header-area .header-contact-info {
gap: 40px;
}

.header-area .header-contact-info .phone-number {
font-size: 18px;
    line-height: 1;
    position: relative;
    padding: 0 40px;
    font-weight: 500;
}

.header-area .header-contact-info .phone-number:before,
.header-area .header-contact-info .phone-number:after {
content: "";
    width: 2px;
    height: 34px;
    border-radius: 10px;
    position: absolute;
    left: 0;
    background: var(--gray);
    top: 50%;
    margin-top: -17px;
}

.header-area .header-contact-info .phone-number:after {
left: auto;
    right: 0;
}

.header-area .header-contact-info .phone-number a {
display: block;
    color: var(--primary_color);
    font-weight: 700;
    letter-spacing: 0.5px;
    font-size: 16px;
    margin-bottom: 10px;
}

.header-area .header-contact-info .phone-number a i {
height: 14px;
}

.header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-meu-footer p a:hover i {
transition: transform .5s;
    transform: rotate(45deg);
}

.header-area .header-contact-info .phone-number a:hover i {
transition: transform .5s;
    transform: rotate(45deg);
}

.hero-empowerment-area {
background: linear-gradient(180deg, rgba(243, 246, 253, 0.7) 0%, rgba(243, 246, 253, 0) 86.26%);
    padding-top: 124px;
    padding-bottom: 100px;
}

.hero-empowerment-area .custom-row {
gap: 75px;
    border-bottom: 1px solid var(--gray);
}

.hero-empowerment-area .custom-row * {
margin: 0;
}

.hero-empowerment-area .custom-row > * {
flex: 1;
}

.hero-empowerment-area .hero-empowerment-right-content {
max-width: 716px;
    width: 100%;
    flex: none;
}

.hero-empowerment-area .hero-empowerment-right-content .top-content .mobile {
display: none;
}

.hero-empowerment-area .hero-empowerment-left-content h5 {
margin-bottom: 16px;
}

.hero-empowerment-area .hero-empowerment-left-content h1 {
font-size: 88px;
    font-weight: 500;
    line-height: 82px;
    letter-spacing: -2px;
    margin-bottom: 40px;
    font-family: var(--font_yantramanv);
}

.hero-empowerment-area .hero-empowerment-left-content p {
font-size: 25px;
    font-weight: 300;
    margin-bottom: 30px;
}

.hero-empowerment-area .hero-empowerment-left-content .btns-group {
gap: 16px;
}

.hero-empowerment-area .hero-empowerment-left-content .btns-group > * {
font-weight: 500;
}

.hero-empowerment-area .hero-empowerment-right-content .top-content {
position: relative;
    margin-bottom: 24px;
}

.hero-empowerment-area .hero-empowerment-right-content .top-content img {
display: block;
    border-radius: 10px;
    width: 100%;
}

.hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box {
position: absolute;
    bottom: 0;
    left: 0;
    background: #ffffff;
    border-radius: 10px;
    padding: 41px 71px;
}

.hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-body {
gap: 30px;
}

.hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-content {
gap: 10px;
}

.hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-content h1 {
font-family: var(--font_syne);
    font-size: 48px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.5px;
}

.hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-content p {
font-size: 16px;
    font-weight: 400;
    color: var(--primary_color);
    line-height: 1.3;
}

.hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-content p span {
color: var(--dark1);
    opacity: .85;
    display: block;
}

.hero-section-wrap {
padding-bottom: 110px;
    overflow: hidden;
}

.hero-section-wrap .hero-section-content-wrap {
padding-top: 310px;
}

.hero-section-wrap .hero-section-content-wrap {
background: linear-gradient(180deg, rgba(243, 246, 253, 0.7) 0%, rgba(243, 246, 253, 0) 86.26%);
    padding-top: 310px;
    padding-bottom: 110px;
}

.hero-section-wrap .hero-section-content-wrap .bg-shape {
position: absolute;
    left: 0;
    top: 90px;
    pointer-events: none;
}

.hero-section-wrap .hero-section-content-wrap .hero-section-content {
max-width: 981px;
    width: 100%;
    margin: auto;
}

.hero-section-wrap .hero-section-content-wrap .hero-section-content h5 {
margin-bottom: 30px;
}

.hero-section-wrap .hero-section-content-wrap .hero-section-content h1 {
font-size: 94px;
    line-height: 88px;
    letter-spacing: -2px;
    font-weight: 500;
    margin-bottom: 30px;
}

.hero-section-wrap .hero-section-content-wrap .hero-section-content p {
font-size: 25px;
    line-height: 38px;
    color: rgb(28 28 28 / 80%);
    max-width: 612px;
    margin: 0 auto 45px auto;
}

.hero-service-wrap.hero-section-wrap {
padding-bottom: 0;
}

.hero-service-wrap .hero-section-content-wrap .hero-section-content {
max-width: 1014px;
    margin-bottom: 135px;
}

.hero-service-wrap .hero-section-content-wrap .hero-section-content h5 {
font-size: 16px;
    display: inline-block;
    border-radius: 30px;
    background: rgb(19 81 216 / 10%);
    padding: 11px 31px;
    text-transform: capitalize;
    font-family: var(--font_dm);
    letter-spacing: 0;
    font-size: 16px;
    font-weight: 500;
    line-height: 19px;
    margin-bottom: 30px;
}

.hero-service-wrap .hero-section-content-wrap .hero-section-content h1 {
font-size: 88px;
    line-height: 82px;
    margin-bottom: 35px;
}

.hero-service-wrap .hero-section-content-wrap .hero-section-content p {
max-width: 100%;
    font-size: 25px;
    margin-bottom: 0;
}

.hero-service-about {
background: #F3F6FD;
    border-radius: 10px;
    padding: 55px 60px 75px 60px;
}

.hero-service-about .section-header {
margin-bottom: 35px;
}

.hero-service-about .section-header .section-title {
margin-bottom: 20px;
}

.hero-service-about .section-header p {
max-width: 100%;
    margin-bottom: 0;
}

.hero-service-about img {
display: block;
    width: 100%;
    border-radius: 10px;
    margin-bottom: 35px;
}

.hero-service-about .hero-service-about-body p {
font-size: 20px;
    font-weight: 400;
    line-height: 34px;
    color: rgb(28 28 28 / 90%);
    margin-bottom: 10px;
    border-bottom: 1px solid rgb(28 28 28 / 20%);
    padding-bottom: 28px;
}

.hero-service-about .hero-service-about-body {
padding: 0 50px;
}

.hero-service-about .hero-service-about-body ul {
display: flex;
    width: 100%;
    justify-content: space-between;
}

.hero-service-about .hero-service-about-body ul li {
display: flex;
    align-items: center;
    gap: 18px;
    font-size: 20px;
    font-weight: 500;
    line-height: 1;
    color: rgb(28 28 28 / 90%);
}

.hero-service-about .hero-service-about-body ul li i {
width: 19px;
    height: 19px;
    line-height: 19px;
    background: var(--primary_color);
    text-align: center;
    border-radius: 50%;
    font-size: 14px;
    color: #ffffff;
}

.company-service-area {
padding: 0 0 0 0;
}

.hero-about-wrap .hero-section-content-wrap {
padding-bottom: 40px;
}

.hero-overview-wrap .hero-section-content-wrap .hero-section-content {
margin-bottom: 0;
    max-width: 1200px;
/*    max-width: 893px;*/
}

.solution-page .company-service-area {
padding-top: 0px;
    padding-bottom: 220px;
}

.client-area {
    padding-bottom: 50px;
    overflow: hidden;
}

.client-area .clients {
gap: 30px;
    padding-right: 20px;
    margin-right: 20px;
}

.client-area .clients .client-logo {
min-width: 330px;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 150px;
}

.client-area .clients .client-logo img {
display: block;
    max-width: 80px;
}

.how-we-do-area {
padding-top: 30px;
}

.how-we-do-area .custom-row .how-we-do-bg {
position: absolute;
    z-index: -1;
    left: 0;
    bottom: 0;
}

.how-we-do-area .custom-container > .custom-row {
background: var(--dark1);
    border-radius: 10px;
    padding: 50px;
    position: relative;
    z-index: 1;
}

.how-we-do-area .how-we-do-left-content {
flex: none;
    width: 255px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
}

.how-we-do-area .how-we-do-left-content .top .section-title {
color: #ffffff;
    font-weight: 700;
    letter-spacing: -2px;
    margin-bottom: 13px;
}

.how-we-do-area .how-we-do-left-content .top .section-subtitle {
margin-bottom: 20px;
    color: var(--primary_color2);
}

.how-we-do-area .how-we-do-left-content .top p {
color: #ffffff;
    opacity: 0.8;
    font-size: 20px;
    font-weight: 300;
    margin: 0;
}

.how-we-do-area .how-we-do-right-content {
flex: 1;
    padding: 20px 0;
}

.how-we-do-area .how-we-do-left-content .theme-btn::before,
.how-we-do-area .how-we-do-left-content .theme-btn::after {
background: #ffffff;
}

.how-we-do-area .how-we-do-left-content .theme-btn:hover {
color: var(--dark1);
}

.how-we-do-area .how-we-do-left-content .theme-btn:hover svg path {
fill: var(--dark1);
}

.how-we-do-area .how-we-do-right-content .how-we-do-items {
gap: 100px;
}

.how-we-do-card {
display: flex;
    align-items: center;
    background: #ffffff;
    border-radius: 10px;
    padding: 15px 32px 15px 15px;
    gap: 26px;
    position: relative;
    min-width: 255px;
}

.how-we-do-card .how-we-do-icon {
width: 70px;
    height: 70px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none;
    background: var(--primary_light2);
}

.how-we-do-card .how-we-do-content {
font-size: 17px;
    font-weight: 500;
    line-height: 1;
}

.how-we-do-card .how-we-do-content h4 {
color: var(--primary_color);
    font-size: 17px;
    margin-bottom: 5px;
}

.how-we-do-card .how-we-do-content p {
margin: 0;
    color: rgb(28 28 28 / 85%);
}

.how-we-do-area .how-we-do-right-content .how-we-do-items + .how-we-do-items {
margin-top: 80px;
}

.how-we-do-area .how-we-do-right-content .how-we-do-items .how-we-do-card .circle-shape {
position: absolute;
    left: -10px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #ffffff;
    top: 50%;
    margin-top: -10px;
}

.how-we-do-area .how-we-do-right-content .how-we-do-items .how-we-do-card .circle-shape:before {
content: "";
    border-radius: 50%;
    background: var(--primary_color);
    width: 10px;
    height: 10px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.how-we-do-area .how-we-do-right-content .how-we-do-items:first-child .how-we-do-card:first-child .circle-shape {
display: none;
}

.how-we-do-area .how-we-do-right-content .how-we-do-items .how-we-do-card .line-shape {
position: absolute;
    background-image: url(../imgs/linenew.png);
    background-repeat: no-repeat;
    height: 1px;
    width: 268px;
    background-size: cover;
    z-index: -1;
    right: -100px;
    top: 50%;
}

.how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card + .how-we-do-card .line-shape {
right: auto;
    left: -100px;
}

.how-we-do-area .how-we-do-right-content .how-we-do-items:first-child .how-we-do-card:last-child .line-shape {
height: 181px;
    /* border-right: 1px dashed #ffffff;
    border-bottom: 1px dashed #ffffff;
    border-radius: 0 30px 30px 0; */
    background-image: url(../imgs/linenew2.png);
    background-repeat: round;
}

.how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card:first-child .line-shape {
background-image: url(../imgs/dashed-line.svg);
}

.how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card:first-child .line-shape {
right: auto;
    left: -84px;
    background-image: url(../imgs/linenew3.png);
    background-repeat: round;
}

.how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card:first-child .line-shape {
height: 181px;
    /* border-bottom: 1px dashed #ffffff;
    border-left: 1px dashed #ffffff;
    border-radius: 30px 0 0 30px; */
}

.how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card .circle-shape {
left: auto;
    right: -10px;
}

.how-we-do-area .how-we-do-right-content .how-we-do-items:last-child .how-we-do-card .line-shape {
display: none;
}


.service-area .service-section-header {
margin-bottom: 95px;
}

.section-header .section-subtitle {
margin-bottom: 22px;
}

.section-header .section-title {
letter-spacing: -1px;
    margin: 0;
}

.section-header p {
font-size: 20px;
    font-weight: 400;
    line-height: 28px;
    max-width: 655px;
    color: rgb(28 28 28 / 80%);
}

.services-list {
gap: 30px;
}

.services-list .service-card {
flex: 1;
}

.service-card {
padding: 42px 28px 36px 28px;
    position: relative;
}

.service-card img {
display: block;
    height: 45px;
    margin-bottom: 30px;
}

.service-card h3 {
font-family: var(--font_yantramanv);
    font-size: 24px;
    font-weight: 500;
    line-height: 25px;
    margin-bottom: 0; 
    line-height: 1;
    margin-bottom: 18px;
}

.service-card h3 a {
color: var(--dark1);
}

.service-card p {
margin-bottom: 0;
    font-weight: 400;
    line-height: 24px;
    color: rgb(28 28 28 / 70%);
}

.services-list {
display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}

.solution-page .service-area {
padding-top: 0;
}

.case-studio-area {
background: var(--primary_light);
    padding-top: 140px;
    padding-bottom: 140px;
}

.case-studio-area .custom-container {
max-width: 1340px;
}

.case-studio-area .case-studio-header {
margin-bottom: 60px;
}

.case-studio-area .case-studio-header .section-subtitle {
margin-bottom: 22px;
}

.case-studio-area .case-studio .case-studio-tabs {
background: #ffffff;
    border: none;
    padding: 12px;
    border-radius: 10px;
    margin-bottom: 40px;
    justify-content: space-between;
}

.case-studio-area .case-studio .case-studio-tabs .nav-item {
margin: 0;
}

.case-studio-area .case-studio .case-studio-tabs .nav-item button {
border: none;
    font-family: var(--font_yantramanv);
    font-size: 20px;
    font-weight: 400;
    line-height: 1;
    color: rgb(28 28 28 / 80%);
    border-radius: 10px;
    transition: .5s;
    padding: 15px 40px;
    display: block;
}

.case-studio-area .case-studio .case-studio-tabs .nav-item button.active {
background: var(--dark1);
    color: #ffffff;
    transition: .0s;
}

.case-studio-area .case-studio .case-studio-tab-content .case-studio-body {
gap: 24px;
}

.case-studio-area .case-studio .case-studio-tab-content .case-studio-body .left {
background: #ffffff;
    padding: 24px;
    border-radius: 10px;
    gap: 24px;
    width: 748px;
}

.case-studio-area .case-studio .case-studio-tab-content .case-studio-body .case-studio-img-card {
position: relative;
    padding: 0;
    overflow: hidden;
}

.case-studio-area .case-studio .case-studio-tab-content .case-studio-body .case-studio-img-card .case-studio-cat {
display: inline-block;
    border-radius: 10px;
    color: var(--primary_color);
    font-size: 14px;
    font-weight: 500;
    line-height: 18px;
    background: var(--primary_light2);
    padding: 8px 21px;
    position: absolute;
    left: 24px;
    top: 24px;
}

.case-studio-area .case-studio .case-studio-tab-content .case-studio-body .case-studio-img-card img {
display: block;
    width: 100%;
    border-radius: 10px;
    height: 100%;
    object-fit: cover;
}

.case-studio-area .case-studio .case-studio-tab-content .case-studio-body .right {
width: 518px;
    flex: none;
}

.case-studio-area .case-studio .case-studio-tab-content .case-studio-body .right .case-studio-contents {
background: #ffffff;
    border-radius: 10px;
    padding: 67px 50px 50px 53px;
    height: 100%;
}

.case-studio-area .case-studio .case-studio-tab-content .case-studio-body .right .case-studio-contents p {
margin-bottom: 20px;
    font-size: 18px;
    font-weight: 400;
    line-height: 26px;
}

.case-studio-area .case-studio .case-studio-tab-content .case-studio-body .right .case-studio-contents .theme-btn {
width: 53px;
    height: 53px;
    line-height: 56px;
    padding: 0;
    text-align: center;
    display: block;
    margin-left: auto;
}

.about-area {
padding-top: 220px;
    padding-bottom: 110px;
}

.about-area .custom-row {
width: 100%;
}

.about-area .left-content {
max-width: 385px;
    width: 100%;
    flex: none;
}

.about-area .left-content .section-subtitle {
margin-bottom: 22px;
}

.about-area .left-content .section-title {
margin-bottom: 25px;
}

.about-area .left-content p {
font-size: 20px;
    font-weight: 400;
    line-height: 29px;
    color: rgb(28 28 28 / 80%);
    margin-bottom: 60px;
}

.about-area .left-content ul li {
color: rgb(28 28 28 / 80%);
    display: flex;
    align-items: center;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.2;
    gap: 18px;
}

.about-area .left-content ul li + li {
margin-top: 30px;
}

.about-area .left-content ul li i {
width: 20px;
    height: 20px;
    border-radius: 50%;
    text-align: center;
    line-height: 20px;
    background: var(--primary_color);
    color: #ffffff;
    font-size: 14px;
}

.about-area .right-content {
max-width: 897px;
    width: 100%;
}

.about-timeline .about-timeline-item {
width: 362px;
    background: var(--primary_light);
    border-radius: 10px;
    padding: 40px;
    position: relative;
    transition: .3s;
}

.about-timeline .about-timeline-item:before {
content: "";
    height: calc(100% + 68px);
    /* border-left: 1px dashed var(--primary_color); */
    background: url(../imgs/line-shape-4.png) no-repeat;
    background-size: cover;
    width: 1px;
    position: absolute;
    left: -87px;
    top: 70px;
}

.about-timeline .about-timeline-item:last-child::before {
display: none;
}

.about-timeline .about-timeline-item .line-shape {
position: absolute;
    right: 0;
    bottom: 0;
    transition: .3s;
    opacity: 0;
    pointer-events: none;
}

.about-timeline .about-timeline-item + .about-timeline-item {
margin-top: 68px;
}

.about-timeline .about-timeline-item:nth-child(odd) {
margin-left: auto;
}

.about-timeline .about-timeline-item:nth-child(even)::before {
left: auto;
    right: -87px;
}

.about-timeline .about-timeline-item h3 {
font-family: var(--font_yantramanv);
    font-size: 24px;
    font-weight: 500;
    line-height: 25px;
    letter-spacing: -0.5px;
    margin-bottom: 15px;
}

.about-timeline .about-timeline-item p {
font-size: 18px;
    font-weight: 400;
    line-height: 26px;
    color: rgb(28 28 28 / 70%);
    margin-bottom: 0;
}

.about-timeline .about-timeline-item:hover {
background: var(--dark1);
    transition: all 1.3s;
}

.about-timeline .about-timeline-item:hover h3 {
color: #ffffff;
}

.about-timeline .about-timeline-item:hover p {
color: rgb(255 255 255 / 70%);
}

.about-timeline .about-timeline-item:hover .line-shape {
opacity: 1;
}

.about-timeline .about-timeline-item .number {
position: absolute;
    background: var(--primary_light);
    width: 53px;
    height: 53px;
    line-height: 53px;
    text-align: center;
    border-radius: 50%;
    color: var(--primary_color);
    font-size: 22px;
    font-weight: 700;
    letter-spacing: -0.5px;
    left: -113px;
    top: 60px;
}

.about-timeline .about-timeline-item:nth-child(even) .number {
left: auto;
    right: -113px;
}

.about-service3-area {
background: var(--dark1);
    padding: 50px 0;
    margin-bottom: 50px;
}

.about-service3-area .custom-row {
gap: 153px;
}

.about-service3-area .img-box {
flex: none;
    max-width: 748px;
    width: 100%;
    border-radius: 20px;
}

.about-service3-area .img-box img {
display: block;
    width: 100%;
    border-radius: 10px;
}

.about-service3-area h1 {
color: #ffffff;
    font-family: var(--font_yantramanv);
    font-size: 60px;
    font-weight: 700;
    line-height: 60px;
    letter-spacing: -2px;
    margin-bottom: 40px;
}

.about-service3-area p {
font-size: 20px;
    font-weight: 300;
    line-height: 34px;
    color: rgb(255 255 255 / 80%);
    margin-bottom: 0;
}

.about-service3-area p + p {
margin-top: 25px;
}

.about-service3-area ul {
display: flex;
    margin-top: 50px;
    gap: 60px;
}

.about-service3-area ul li {
display: flex;
    align-items: center;
    gap: 16px;
    font-size: 20px;
    color: rgb(255 255 255 / 80%);
    line-height: 1;
}

.about-service3-area ul li i {
height: 19px;
    width: 19px;
    line-height: 19px;
    font-size: 14px;
    color: var(--dark1);
    text-align: center;
    background: #558BFF;
    border-radius: 50%;
}

.about-service3-area .content-box p + p {
margin-top: 35px;
}

.project-area {
overflow: hidden;
    background: rgb(19 81 216 / 5%);
    position: relative;
    padding-top: 55px;
    padding-bottom: 55px;
}

.project-area .project-left-details {
max-width: 393px;
    min-width: 393px;
    z-index: 2;
}

.project-area .project-left-details::before {
content: "";
    height: 100%;
    position: absolute;
    width: 1500px;
    z-index: -1;
    background: #f4f6fe;
    right: 56%;
}

.project-area .project-left-details .section-subtitle {
margin-bottom: 22px;
}

.project-area .project-left-details .section-title {
margin-bottom: 25px;
    letter-spacing: -2px;
}

.project-area .project-left-details p {
font-size: 20px;
    font-weight: 300;
    line-height: 29px;
    color: rgb(28 28 28 / 80%);
    margin-bottom: 35px;
}

.project-area .project-left-details ul {
border-top: 1px solid rgb(28 28 28 / 20%);
    padding-top: 25px;
}

.project-area .project-left-details ul li {
color: rgb(28 28 28 / 80%);
    display: flex;
    align-items: center;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.2;
    gap: 18px;
}

.project-area .project-left-details ul li + li {
margin-top: 30px;
}

.project-area .project-left-details ul li i {
width: 20px;
    height: 20px;
    border-radius: 50%;
    text-align: center;
    line-height: 20px;
    background: var(--primary_color);
    color: #ffffff;
    font-size: 14px;
}

.project-area .project-right-slider {
max-width: 1086px;
    width: 100%;
    transform: translateX(198px);
}

.portfolio-items .portfolio-indigo-box .project-item h2 a,
.portfolio-items .portfolio-bluebase .project-item h2 a,
.portfolio-items .portfolio-black-box .project-item h2 a,
.portfolio-items .portfolio-black-box .project-item h2 a,
.project-area .project-right-slider .project-right-slider-inner .project-item:nth-child(4) h2 a,
.project-area .project-right-slider .project-right-slider-inner .project-item:first-child h2 a {
color: #ffffff;
}

.project-item .project-item-inner {
position: relative;
    transition: all .2s;
}

.project-item .project-item-inner:hover {
transform: scale(1.05);
    transition: all .2s;
}

.project-item .project-item-inner h2 {
font-family: var(--font_yantramanv);
    font-size: 46px;
    font-weight: 500;
    line-height: 41px;
    letter-spacing: -2px;
    position: absolute;
    left: 24px;
    top: 34px;
    margin-bottom: 0;
}

.project-item .project-item-inner h2 a {
color: var(--dark1);
}

.project-item .project-item-inner img {
display: block;
    width: 362px;
    height: 595px;
    object-fit: cover;
    border-radius: 10px;
}

.project-area .project-right-slider .project-right-slider-inner .project-slider {
padding-bottom: 55px;
}

.project-area .project-right-slider .project-right-slider-inner .swiper-pagination {
bottom: 0;
    width: max-content;
    /* height: 4px; */
    display: inline-flex;
    left: auto;
    right: 80px;
    background: var(--gray);
    border-radius: 10px;
}

.hero-service-wrap.hero-portfolio-wrap .hero-section-content {
margin-bottom: 0;
    max-width: 1109px;
}

.hero-portfolio-wrap .hero-portfolio-body {
border-bottom: 1px solid #D9D9D9;
    padding-bottom: 135px;
}

.hero-portfolio-wrap .hero-section-content-wrap {
padding-bottom: 120px;
}

.portfolio-items {
display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 24px;
}

.portfolio-sample-details {
position: relative;
    border-radius: 10px;
    background: #F1F1F1;
    padding: 25px 30px 25px 30px;
    margin-top: 24px;
    z-index: 1;
}

.portfolio-sample-details .bg-shape {
position: absolute;
    right: 0;
    bottom: 0;
    pointer-events: none;
}

.portfolio-sample-details h3 {
font-family: var(--font_yantramanv);
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.5px;
    margin-bottom: 15px;
}

.portfolio-sample-details h3 a {
display: inline-flex;
    align-items: center;
    color: var(--dark1);
    gap: 8px;
}

.portfolio-sample-details h3 a i {
font-size: 18px;
}

.portfolio-sample-details h3 a:hover i {
transition: transform .5s;
    transform: rotate(45deg);
}

.portfolio-sample-details p {
font-size: 18px;
    line-height: 26px;
    color: rgb(28 28 28 / 70%);
    margin-bottom: 0;
}

.portfolio-items {
border-bottom: 1px solid #D9D9D9;
    padding-bottom: 100px;
    margin-bottom: 100px;
}

.portfolio-items .portfolio-black-box .portfolio-sample-details {
background: var(--dark1);
}

.portfolio-items .portfolio-indigo-box .portfolio-sample-details h3 a,
.portfolio-items .portfolio-bluebase .portfolio-sample-details h3 a,
.portfolio-items .portfolio-black-box .portfolio-sample-details h3 a {
color: #ffffff;
}

.portfolio-items .portfolio-indigo-box .portfolio-sample-details p,
.portfolio-items .portfolio-bluebase .portfolio-sample-details p,
.portfolio-items .portfolio-black-box .portfolio-sample-details p {
color: rgb(255 255 255 / 70%);
}

.portfolio-items .portfolio-gray-box .portfolio-sample-details {
background: #CECDCB;
}

.portfolio-items .portfolio-bluebase .portfolio-sample-details {
background: #62759A;
}

.portfolio-items .portfolio-yellow-box .portfolio-sample-details {
background: #EEEEDD;
}

.portfolio-items .portfolio-darkgray-box .portfolio-sample-details {
background: #999999;
}

.portfolio-items .portfolio-indigo-box .portfolio-sample-details {
background: #443355;
}

#map {
max-width: 663px;
    margin: auto;
    position: relative;
}

.map-location-item {
position: absolute;
    width: 5px;
    height: 5px;
    border-radius: 50%;
}

#map .map-location-item:nth-child(2) {
left: 44%;
    top: 20%;
}

#map .map-location-item:nth-child(3) {
left: auto;
    right: 13%;
    top: 32%;
}

#map .map-location-item:nth-child(4) {
left: auto;
    right: 29%;
    top: 47%;
}

#map .map-location-item:nth-child(5) {
left: 52%;
    top: auto;
    bottom: 31%;
}

#map .map-location-item:nth-child(6) {
left: auto;
    top: auto;
    bottom: 19%;
    right: 13%;
}

.map-location-item .map-location-item-inner {
position: absolute;
    opacity: 0;
    visibility: hidden;
    box-shadow: 0px 3px 15px 3.75px #00000008;
    border-radius: 8px;
    padding: 35px 40px;
    background: #ffffff;
    z-index: 9;
    width: 246px;
    display: flex;
    align-items: flex-start;
    gap: 16px;
}

.map-location-item .map-location-item-inner h3 {
font-size: 17px;
    margin: 0;
    font-family: var(--font_yantramanv);
    font-weight: 500;
/*    line-height: 15px;*/
    letter-spacing: -0.375px;
    margin-bottom: 5px;
}

.map-location-item .map-location-item-inner p {
font-size: 14px;
    line-height: 16.5px;
    margin: 0;
}

.map-location-item .circle {
background: var(--primary_color);
    width: 5px;
    height: 5px;
    border-radius: 50%;
    position: absolute;
    cursor: pointer;
}

.map-location-item .circle:after,
.map-location-item .circle:before {
content: "";
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background: #1351D826;
    left: -4px;
    top: -4px;
    position: absolute;
}

.map-location-item .circle:after {
width: 21px;
    height: 21px;
    left: -8px;
    top: -8px;
}

.map-location-item:hover .map-location-item-inner {
opacity: 1;
    visibility: visible;
}

.contact-area {
    padding-top: 0px !important;
    padding-bottom: 50px !important;
}

.portfolio-page .contact-area {
padding-top: 0;
}

.contact-area .custom-row {
gap: 24px;
}

.contact-area .contact-form-wrap {
background: var(--primary_light);
    border-radius: 10px;
    padding: 62px 58px 58px 58px;
}

.contact-area .contact-form-wrap .contact-form-body .section-subtitle {
margin-bottom: 24px;
}

.contact-area .contact-form-wrap .contact-form-body .section-title {
font-size: 50px;
    line-height: 50px;
    letter-spacing: -1px;
    margin-bottom: 35px;
}

.contact-area .contact-form-wrap .contact-form-body p {
font-size: 20px;
    line-height: 29px;
    font-weight: 400;
    border-bottom: 1px solid rgb(28 28 28 / 20%);
    margin-bottom: 0;
    padding-bottom: 30px;
    margin-bottom: 38px;
}

.contact-area .contact-form-wrap .contact-form-body p a {
font-weight: 500;
    color: var(--primary_color);
}

.contact-form .input-row {
display: flex;
    width: 100%;
    gap: 15px;
}

.contact-form .input-row .input-group {
margin-bottom: 25px;
}

.contact-form .input-row .input-group label {
display: block;
    color: var(--dark1);
    opacity: 0.9;
    font-size: 15px;
    line-height: 1;
    font-weight: 400;
    width: 100%;
    margin-bottom: 16px;
}

.contact-form .input-row .input-group textarea::placeholder,
.contact-form .input-row .input-group input::placeholder {
color: rgb(28 28 28 / 55%);
}

.contact-form .input-row .input-group textarea,
.contact-form .input-row .input-group input {
width: 100%;
    border: 1px solid rgb(16 24 40 / 20%);
    font-size: 16px;
    border-radius: 5px;
    padding: 7px 15px;
    display: block;
}

.contact-form .input-row .input-group textarea {
resize: none;
    height: 130px;
}

.contact-form .input-row .input-group.phone-number input {
padding-left: 66px;
}

.contact-form .input-row .input-group.input-checkbox {
align-items: center;
    gap: 12px;
    margin-bottom: 30px;
}

.contact-form .input-row .input-group.input-checkbox input {
width: 22px;
    height: 22px;
    border-radius: 4px;
}

.contact-form .input-row .input-group.input-checkbox label {
width: auto;
    margin: 0;
    font-size: 16px;
    color: rgb(28 28 28 / 80%);
}

.contact-form .input-row .input-group.input-checkbox label a {
color: rgb(28 28 28 / 80%);
    display: inline-block;
    border-bottom: 1px solid;
}

.contact-form .input-row .input-group .theme-btn {
width: 100%;
    border: none;
    text-align: center;
    justify-content: center;
    border-radius: 5px;
}

.contact-form .input-row .input-group .theme-btn::before {
border-radius: 5px 0 0 5px;
}

.contact-form .input-row .input-group .theme-btn::after {
border-radius: 0 5px 5px 0;
}

.contact-area .contact-infos {
background: var(--primary_light);
    border-radius: 10px;
    padding: 35px 42px;
    max-width: 362px;
    width: 100%;
}

.contact-area .contact-infos .contact-infos-inner {
display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}

.contact-area .contact-infos .contact-info {
border-bottom: 1px solid rgb(28 28 28 / 20%);
    padding-bottom: 40px;
    margin-bottom: 40px;
    max-width: 150px;
}

.contact-area .contact-infos .contact-info img {
display: block;
    margin-bottom: 30px;
}

.contact-area .contact-infos .contact-info h3 {
font-size: 24px;
    font-family: var(--font_yantramanv);
    line-height: 1;
    margin-bottom: 18px;
}

.contact-area .contact-infos .contact-info p {
color: rgb(28 28 28 / 80%);
    line-height: 24px;
    margin: 0;
}

.contact-area2 {
padding-bottom: 180px;
    overflow: inherit;
}

.contact-map-wrap {
box-shadow: 0px 4px 20px 5px rgba(0,0,0,0.03);
    border-radius: 10px;
    padding: 10px 0 0 0;
    position: relative;
}

.contact-map-wrap h4 {
position: absolute;
    color: var(--primary_color);
    background: rgb(19 81 216 / 10%);
    border-radius: 10px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    padding: 10px 20px;
    margin-bottom: 0;
    right: 70px;
    top: 50px;
}

.contact-inner-info-box {
margin-top: 24px;
    gap: 24px;
}

.contact-inner-info-box .contact-info-box {
flex: 1;
    text-align: center;
}

.contact-info-box {
padding: 10px 0 10px 0;
}

.contact-info-box .icon {
background: #F3F6FD;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    margin: auto auto 22px auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.contact-info-box .icon i {
color: var(--primary_color);
    font-size: 30px;
}

.contact-info-box h4 {
font-family: var(--font_yantramanv);
    font-size: 30px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -0.5px;
    margin-bottom: 18px;
}

.contact-info-box p {
font-size: 18px;
    font-weight: 400;
    line-height: 1;
    color: rgb(28 28 28 / 80%);
    margin-bottom: 20px;
}

.contact-info-box h6 {
font-size: 18px;
    font-weight: 500;
    line-height: 1;
    color: var(--primary_color);
    margin-bottom: 0;
}

.contact-info-box h6 a {
color: var(--primary_color);
}

.contact-location-area {
background: var(--dark1);
    padding: 10px 0;
    position: relative;
}

.contact-location-area .bg-shape {
position: absolute;
    left: 0;
    bottom: 0;
    opacity: 0.6;
    pointer-events: none;
}

.contact-location-area .contact-location-left-content {
max-width: 559px;
    width: 100%;
    flex: none;
    padding: 60px 176px 60px 0;
    border-right: 1px solid rgb(255 255 255 / 20%);
}

.contact-location-area .contact-location-left-content .contact-location-left-body .section-subtitle {
color: var(--primary_color2);
    margin-bottom: 25px;
}

.contact-location-area .contact-location-left-content .contact-location-left-body .section-title {
color: #ffffff;
    letter-spacing: -2px;
    font-family: var(--font_yantramanv);
    font-size: 60px;
    margin-bottom: 35px;
}

.contact-location-area .contact-location-left-content .contact-location-left-body p {
font-size: 20px;
    font-weight: 400;
    line-height: 28px;
    color: rgb(255 255 255 / 80%);
    margin-bottom: 0;
}

.contact-locations-list {
display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
}

.contact-location-box {
width: 100%;
    background: #ffffff;
    display: flex;
    align-items: center;
    border-radius: 10px;
    max-width: 362px;
    width: 100%;
    gap: 32px;
    padding: 40px 30px;
}

.contact-location-box .number {
background: #E7EEFB;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    text-align: center;
    line-height: 80px;
    font-size: 26px;
    font-weight: 500;
    color: var(--primary_color);
    flex: none;
}

.contact-location-box .content h3 {
font-family: var(--font_yantramanv);
    font-size: 22px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.5px;
    margin-bottom: 15px;
}

.contact-location-box .content p {
font-size: 15px;
    font-weight: 400;
    line-height: 22px;
    color: rgb(28 28 28 / 80%);
    margin-bottom: 0;
}

.footer-area {
position: relative;
    background: var(--dark1);
    padding-top: 30px;
}

.footer-area .bg-shape {
position: absolute;
    bottom: 0;
    right: 0;
    pointer-events: none;
}

.footer-area .footer-top .custom-row:before {
content: "";
    width: 1px;
    background: rgba(255 255 255 / 20%);
    height: 180px;
    position: absolute;
    left: 50%;
}

.footer-area .footer-top .custom-row {
border-bottom: 1px solid rgba(255 255 255 / 20%);
    padding-bottom: 10px;
    position: relative;
}

.footer-area .footer-top .left-content .logo {
display: inline-block;
    margin-bottom: 18px;
}

.footer-area .footer-top .left-content .logo img {
display: block;
}

.footer-area .footer-top .left-content p {
color: rgba(255 255 255 / 80%);
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 0;
}

.footer-area .footer-top .right-content .right-content-inner h2 {
color: #ffffff;
    font-size: 28px;
    letter-spacing: -0.5px;
    line-height: 1.1;
    margin-bottom: 15px;
    font-family: var(--font_yantramanv);
}

.footer-area .footer-top .right-content .right-content-inner p {
color: rgba(255 255 255 / 80%);
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 25px;
}

.footer-area .footer-top .right-content .right-content-inner .theme-btn {
padding: 11px 24px;
}

.footer-area .footer-all-links-wrap {
gap: 60px;
    flex: 1;
    padding-right: 50px;
    padding-left: 0;
}

.footer-links h3 {
font-size: 15px;
    font-weight: 500;
    line-height: 1;
    color: #ffffff;
    margin-bottom: 20px;
}

.footer-links ul li + li {
margin-top: 12px;
}

.footer-links ul li a {
display: flex;
    align-items: center;
    color: rgba(255 255 255 / 80%);
    line-height: 22px;
    font-size: 14px;
    font-weight: 400;
    gap: 8px;
}

.footer-area .footer-bottom {
padding-top: 20px;
}

.footer-area .footer-bottom .custom-row {
border-bottom: 1px solid rgba(255 255 255 / 20%);
    padding-bottom: 20px;
}

.footer-area .footer-bottom .footer-contact-info {
border-left: 1px solid rgba(255 255 255 / 20%);
    padding: 0 0 0 50px;
}

.footer-area .footer-bottom .footer-contact-info .footer-contact-info-item + .footer-contact-info-item {
margin-top: 25px;
}

.footer-area .footer-bottom .footer-contact-info .footer-contact-info-item h4 {
color: #ffffff;
    font-size: 15px;
    line-height: 1;
    margin-bottom: 10px;
}

.footer-area .footer-bottom .footer-contact-info .footer-contact-info-item p,
.footer-area .footer-bottom .footer-contact-info .footer-contact-info-item p a {
color: rgba(255 255 255 / 80%);
    line-height: 24px;
    margin-bottom: 0;
    font-size: 14px;
}

.footer-area .footer-bottom .footer-contact-info .footer-contact-info-item p a:hover {
color: #ffffff;
}

.copyright-area {
padding: 20px 0 20px 0;
}

.copyright-area .social-links {
gap: 18px;
}

.copyright-area .social-links li a {
color: #D2D2D2;
    font-size: 20px;
}

.copyright-area p {
font-size: 14px;
    color: rgb(249 249 249 / 80%);
    font-weight: 400;
    margin-bottom: 0;
}

/* Tamaño fijo de la imagen de experience */
.hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-body img {
    width: 70px;
    height: 70px;
    object-fit: contain;
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@keyframes bounceIn {
    0% {
        opacity: 0;
        transform: scale(.3);
    }
    50% {
        opacity: 1;
        transform: scale(1.05);
    }
    70% { transform: scale(.9); }
    100% { transform: scale(1); visibility: visible; }
}

@keyframes popIn {
    0% {
        transform: scale(0);
    }
    100% {
        transform: scale(1);
    }
}

/* ============================================================
   RESPONSIVE STYLES
   Merged from responsive(2).css
   ============================================================ */

@media (max-width: 1920px) {
    .service-card img {
width: auto;
    }
}

/* RESPONSIVE: reglas consolidadas para (hasta 1700px) */
@media (max-width: 1700px) {
    footer,
section {
overflow: hidden;
    }

    .theme-btn {
font-size: 14px;
        padding: 10px 22px;
    }

    .how-we-do-area .how-we-do-left-content .theme-btn {
padding-top: 14px;
        padding-bottom: 14px;
    }

    .header-area .header-contact-info .phone-number {
padding: 0 20px;
    }

    .header-area .header-contact-info,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-link-wrap {
gap: 20px;
    }

    .hero-empowerment-area .custom-row {
gap: 40px;
    }

    .header-area .logo img {
max-width: 140px;
    }

    .header-area .navbar-wrapper > ul > li {
line-height: 70px;
    }

    .hero-section-wrap .hero-section-content-wrap {
padding-top: 236px;
        padding-bottom: 70px;
    }

    .hero-service-wrap .hero-section-content-wrap {
padding-top: 30px;
        padding-bottom: 160px;
    }

    .service-card p {
font-size: 14px;
    }

    .about-service3-area ul li,
.about-area .left-content ul li,
.how-we-do-card .how-we-do-content p {
font-size: 15px;
    }

    .hero-empowerment-area .hero-empowerment-right-content {
max-width: 600px;
        width: 100%;
        flex: none;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-links {
padding-right: 0;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-links {
gap: 70px;
    }

    .header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-portfolio-card .img-box {
max-width: 174px;
    }

    .header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-portfolio-card p br {
display: none;
    }

    .custom-container {
max-width: 1200px;
        max-width: 1310px;
    }

    .header-area .navbar-wrapper > ul {
gap: 30px;
    }

    .header-area .header-left {
gap: 50px;
    }

    .section-header .section-subtitle {
margin-bottom: 15px;
    }

    .section-subtitle {
font-size: 12px;
    }

    .case-studio-area .case-studio .case-studio-tab-content .case-studio-body .right .case-studio-contents p,
.footer-area .footer-top .left-content p,
.footer-area .footer-top .right-content .right-content-inner p,
.about-timeline .about-timeline-item p,
.about-area .left-content p,
.how-we-do-area .how-we-do-left-content .top p,
.header-area .header-contact-info .phone-number,
.header-area .navbar-wrapper ul li a {
font-size: 16px;
    }

    .portfolio-sample-details p {
font-size: 13px;
        line-height: 19px;
    }

    .project-area .project-left-details p {
font-size: 15px;
        line-height: 21px;
    }

    .hero-empowerment-area .hero-empowerment-left-content h1 {
font-size: 66px;
        line-height: 1;
        letter-spacing: -1px;
        font-weight: 500;
    }

    .how-we-do-area {
padding-top: 45px;
    }

    .hero-service-about .hero-service-about-body {
padding-right: 40px;
        padding-left: 40px;
    }

    .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box {
padding: 30px 37px;
    }

    .client-area .clients .client-logo {
min-width: 200px;
        height: 102px;
    }

    .client-area .clients .client-logo img {
max-width: 80px;
    }

    .how-we-do-area .custom-container > .custom-row {
padding-right: 40px;
        padding-left: 40px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items + .how-we-do-items {
margin-top: 60px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items:first-child .how-we-do-card:last-child .line-shape {
height: 152px;
        width: 195px;
        right: -30px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card:first-child .line-shape {
height: 152px;
        width: 300px;
    }

    .how-we-do-area .how-we-do-left-content .top .section-title,
.about-area .left-content .section-title {
font-size: 50px;
    }

    .section-header .section-title,
.project-area .project-left-details .section-title {
font-size: 45px;
        line-height: 42px;
    }

    .section-header p {
font-size: 15px;
        line-height: 21px;
    }

    .about-service3-area h1 {
font-size: 45px;
        line-height: 45px;
        letter-spacing: -1.5px;
    }

    .hero-section-wrap .hero-section-content-wrap .hero-section-content h1 {
font-size: 70px;
        line-height: 66px;
        max-width: 719px;
        margin: auto auto 15px auto;
    }

    .hero-service-wrap .hero-section-content-wrap .hero-section-content h1 {
font-size: 66px;
        max-width: 861px;
        margin-bottom: 25px;
    }

    .hero-service-wrap .hero-section-content-wrap .hero-section-content p br,
.hero-service-wrap .hero-section-content-wrap .hero-section-content h1 br {
display: none;
    }

    .service-card {
padding: 40px 24px 32px 24px;
    }

    .hero-service-wrap .hero-section-content-wrap .hero-section-content p {
font-size: 22px;
    }

    .portfolio-sample-details h3 {
font-size: 18px;
    }

    .portfolio-sample-details h3 svg {
width: 8px;
    }

    .project-item .project-item-inner h2 {
font-size: 34px;
        line-height: 30px;
    }

    .about-timeline .about-timeline-item .number {
left: -113px;
    }

    .about-timeline .about-timeline-item:before {
left: -85px;
    }

    .about-timeline .about-timeline-item:nth-child(even) .number {
right: -113px;
    }

    .about-timeline .about-timeline-item:nth-child(even)::before {
right: -87px;
    }

    .project-area .project-left-details ul li i,
.about-service3-area ul li i {
height: 16px;
        width: 16px;
        line-height: 16px;
        font-size: 12px;
    }

    .hero-section-wrap .hero-section-content-wrap .hero-section-content p {
line-height: 31px;
        max-width: 440px;
        margin-bottom: 30px;
    }

    .hero-service-wrap .hero-section-content-wrap .hero-section-content p {
max-width: 708px;
        margin-bottom: 0;
    }

    .hero-service-wrap .hero-section-content-wrap .hero-section-content {
margin-bottom: 50px;
    }

    .hero-service-about {
padding: 48px 50px 40px 50px;
    }

    .hero-service-wrap .hero-section-content-wrap .hero-section-content p,
.hero-section-wrap .hero-section-content-wrap .hero-section-content p {
font-size: 18px;
    }

    .about-area .left-content {
padding-right: 20px;
    }

    .hero-service-wrap .hero-section-content-wrap .hero-section-content p {
line-height: 28px;
    }

    .contact-area .contact-infos {
padding: 35px 40px;
        max-width: 280px;
        width: 100%;
    }

    .contact-area .contact-form-wrap {
padding: 58px 50px 50px 50px;
    }

    .contact-form .input-row .input-group label {
margin-bottom: 10px;
    }

    .contact-form .input-row .input-group {
margin-bottom: 20px;
    }

    .contact-area {
padding: 120px 0;
    }

    .about-area {
padding: 0 0 50px 0;
    }

    .service-area {
padding: 0 0 50px 0;
    }

    .solution-page .company-service-area, .company-service-area {
padding-bottom: 50px;
    }

    .hero-section-wrap {
padding-bottom: 90px;
    }

    .project-area .project-left-details ul li,
.about-service3-area p,
.hero-service-about .hero-service-about-body ul li,
.hero-service-about .hero-service-about-body p {
font-size: 15px;
    }

    .about-service3-area p {
line-height: 25px;
    }

    .hero-service-about .hero-service-about-body p {
line-height: 25px;
        padding-top: 24px;
        padding-bottom: 24px;
    }

    .hero-service-about img {
margin-bottom: 32px;
    }

    .footer-links ul li a {
white-space: nowrap;
    }

    .portfolio-sample-details {
padding-left: 24px;
        padding-right: 24px;
    }

    .service-area .service-section-header p {
max-width: 491px;
    }

    .service-area .service-section-header {
margin-bottom: 70px;
    }

    .case-studio-area {
padding: 50px 0;
        margin-bottom: 50px;
    }

    .case-studio-area .case-studio-header {
margin-bottom: 45px;
    }

    .case-studio-area .case-studio-header h1 {
margin-bottom: 0;
    }

    .about-area .left-content ul li i {
width: 14px;
        height: 14px;
        line-height: 14px;
        font-size: 10px;
    }

    .about-area .left-content ul li + li {
margin-top: 25px;
    }

    .about-area .left-content p {
margin-bottom: 50px;
    }

    .about-service3-area .img-box {
max-width: 561px;
    }

    .about-service3-area .custom-row {
gap: 110px;
    }

    .about-service3-area .content-box {
max-width: 464px;
    }

    .about-service3-area .content-box p + p {
margin-top: 25px;
    }

    .about-service3-area ul {
margin-top: 40px;
    }

    .hero-portfolio-wrap .hero-section-content-wrap {
padding-bottom: 0px;
    }

    .service-area .service-section-header p,
.hero-service-about .section-header p {
font-size: 15px;
    }

    .hero-service-about .section-header .section-title {
margin-bottom: 10px;
        font-size: 45px;
    }

    .hero-service-about .section-header .section-subtitle {
margin-bottom: 8px;
    }

    .service-area .service-section-header .section-title {
font-size: 45px;
        line-height: 42px;
    }

    .hero-portfolio-wrap .hero-section-content-wrap .hero-section-content {
margin-bottom: 0;
    }

    .hero-portfolio-wrap .hero-section-content-wrap .hero-section-content p {
max-width: 799px;
    }

    .hero-portfolio-wrap .hero-portfolio-body {
padding-bottom: 100px;
    }

    .contact-area2 {
padding-bottom: 50px;
    }

    .contact-page .hero-portfolio-wrap .hero-portfolio-body {
border-bottom: none;
        padding-bottom: 30px;
    }

    .contact-map-wrap h4 {
top: 37px;
        right: 53px;
    }

    .contact-info-box .icon {
width: 52px;
        height: 52px;
        margin-bottom: 22px;
    }

    .contact-info-box .icon i {
font-size: 24px;
    }

    .contact-info-box h4 {
font-size: 22px;
    }

    .contact-info-box h6,
.contact-info-box p {
font-size: 13px;
        line-height: 21px;
    }

    .contact-info-box p {
margin-bottom: 16px;
    }

    .contact-info-box h4 {
margin-bottom: 14px;
    }

    .contact-info-box {
padding-top: 10px;
        padding-bottom: 10px;
    }

    .contact-location-area .contact-location-left-content .contact-location-left-body .section-title {
font-size: 45px;
        line-height: 42px;
        letter-spacing: -1.5px;
    }

    .contact-location-area .contact-location-left-content .contact-location-left-body p {
font-size: 15px;
        line-height: 21px;
    }

    .contact-location-area .contact-location-left-content {
max-width: 419px;
        padding-right: 132px;
    }

    .contact-location-area {
padding: 40px 0;
margin-bottom: 50px;
    }

    .contact-location-box {
padding: 30px 48px 30px 22px;
        max-width: 271px;
    }

    .contact-location-box .number {
width: 60px;
        height: 60px;
        line-height: 60px;
        font-size: 19px;
    }

    .contact-location-box .content h3 {
font-size: 16px;
        margin-bottom: 10px;
    }

    .contact-location-box .content p {
font-size: 11px;
        line-height: 16.5px;
    }

    .contact-locations-list {
gap: 45px;
    }

    .contact-location-box {
gap: 24px;
    }

    .about-page .company-service-area {
padding-top: 0px;
    }

    .about-page .hero-service-wrap .hero-section-content-wrap {
padding-bottom: 50px;
    }

    .service-card img {
width: 37px;
    }

    .map-location-item .map-location-item-inner {
width: 180px;
        padding: 24px 40px;
    }
    .custom-container {
max-width: 1230px;
    }

    .hero-empowerment-area .hero-empowerment-left-content p {
font-size: 18px;
        line-height: 28px;
        max-width: 438px;
    }

    .hero-empowerment-area .custom-row {
gap: 55px;
    }

    .hero-empowerment-area .hero-empowerment-right-content {
max-width: 572px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items {
gap: 93px;
    }

    .how-we-do-card {
gap: 20px;
        min-width: 205px;
    }

    .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-content h1 {
font-size: 40px;
    }

    .footer-area .footer-top .right-content .right-content-inner h2 {
font-size: 24px;
    }

    .contact-area .contact-infos .contact-info h3,
.about-timeline .about-timeline-item .number,
.about-area .about-timeline .about-timeline-item h3,
.service-card h3 {
font-size: 18px;
    }

    .contact-area .contact-form-wrap .contact-form-body p,
.case-studio-area .case-studio .case-studio-tabs .nav-item button {
font-size: 15px;
    }

    .header-area .header-contact-info .phone-number a,
.footer-area .footer-bottom .footer-contact-info .footer-contact-info-item h4,
.footer-links h3,
.footer-area .footer-top .right-content .right-content-inner p,
.footer-area .footer-top .left-content p,
.about-timeline .about-timeline-item p,
.case-studio-area .case-studio .case-studio-tab-content .case-studio-body .right .case-studio-contents p {
font-size: 14px;
    }

    .contact-form .input-row .input-group textarea,
.contact-form .input-row .input-group input,
.contact-form .input-row .input-group.input-checkbox label,
.how-we-do-card .how-we-do-content p,
.how-we-do-card .how-we-do-content h4 {
font-size: 13px;
    }

    .hero-section-wrap .hero-section-content-wrap .hero-section-content h5,
.copyright-area p,
.footer-area .footer-bottom .footer-contact-info .footer-contact-info-item p,
.footer-links ul li a,
.footer-area .theme-btn,
.footer-area .footer-top .right-content .right-content-inner .theme-btn,
.contact-form .input-row .input-group label,
.contact-area .contact-infos .contact-info p,
.service-card p,
.hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-content p {
font-size: 12px;
    }

    .footer-links ul li a span,
.section-subtitle,
.case-studio-area .case-studio .case-studio-tab-content .case-studio-body .case-studio-img-card .case-studio-cat {
font-size: 10px;
    }

    .contact-area .contact-form-wrap .contact-form-body p {
padding-bottom: 22px;
        margin-bottom: 28px;
    }

    .contact-form .input-row .input-group.input-checkbox {
margin-bottom: 20px;
    }

    .contact-form .input-row .input-group textarea {
height: 97px;
    }

    .contact-form .input-row .input-group.input-checkbox input {
width: 16px;
        height: 16px;
    }

    .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-content p {
line-height: 1.4;
    }

    .services-list .service-card {
padding-top: 38px;
        padding-bottom: 32px;
    }

    .case-studio-area .case-studio-header h1 {
font-size: 45px;
        line-height: 42px;
    }

    .service-card p {
line-height: 20px;
    }

    .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box {
padding: 27px 45px;
    }

    .how-we-do-card .how-we-do-icon {
width: 60px;
        height: 60px;
    }

    .how-we-do-card .how-we-do-icon img {
width: 24px;
    }

    .case-studio-area .custom-container {
max-width: 1045px;
    }

    .case-studio-area .case-studio .case-studio-tab-content .case-studio-body .right {
width: 100%;
        max-width: 426px;
    }

    .case-studio-area .case-studio .case-studio-tab-content .case-studio-body .right .case-studio-contents .theme-btn {
width: 44px;
        height: 44px;
        line-height: 48px;
    }

    .case-studio-area .case-studio .case-studio-tab-content .case-studio-body .right .case-studio-contents {
padding: 50px 36px 40px 36px;
    }

    .about-timeline .about-timeline-item {
width: 278px;
    }

    .about-timeline .about-timeline-item h3 {
margin-bottom: 8px;
    }

    .about-timeline .about-timeline-item {
padding: 30px 28px;
    }

    .about-timeline .about-timeline-item .number {
width: 48px;
        height: 48px;
        line-height: 48px;
    }

    .about-timeline .about-timeline-item .number {
left: -111px;
    }

    .about-area .right-content {
max-width: 728px;
    }

    .project-area .project-right-slider {
max-width: 894px;
    }

    .footer-area .footer-top .right-content .right-content-inner p,
.footer-area .footer-top .left-content p {
line-height: 24px;
    }

    .contact-area .contact-form-wrap .contact-form-body .section-title {
margin-bottom: 16px;
    }

    .contact-area .contact-form-wrap .contact-form-body .section-subtitle {
margin-bottom: 14px;
    }

    .contact-area .contact-infos .contact-info {
padding-bottom: 35px;
        margin-bottom: 5px;
    }

    .contact-area .contact-infos .contact-info img {
width: 35px;
        margin-bottom: 25px;
    }

    .footer-area .footer-top .right-content .right-content-inner h2,
.contact-area .contact-infos .contact-info h3 {
margin-bottom: 15px;
    }

    .footer-links ul li a {
line-height: 1;
    }

    .footer-area .footer-bottom .footer-contact-info .footer-contact-info-item p {
line-height: 35px;
    }

    .copyright-area .social-links li a img {
width: 16px;
    }

    .footer-area .footer-top .custom-row {
padding-bottom: 25px;
    }

    .footer-area .footer-bottom {
padding-top: 20px;
    }

    .header-area .navbar-wrapper > ul > li {
line-height: 80px;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .right {
padding: 30px 0 30px 30px;
    }

    .header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-portfolio-card p,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards .mega-menu-service-card .content p,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards .mega-menu-service-card .content h2,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards .mega-menu-service-card .content h2 a,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .right a,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .right p,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-meu-footer p a,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-meu-footer p,
.header-area .navbar-wrapper .mega-menu-link h3,
.header-area .navbar-wrapper .mega-menu-link ul li a {
font-size: 12px;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .left {
padding-top: 30px;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .left {
padding-right: 97px;
    }

    .header-area .navbar-wrapper .mega-menu-link ul li + li {
margin-top: 22px;
    }

    .header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-portfolio-card h3,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .right h2 {
font-size: 18px;
    }

    .header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-portfolio-card p,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .right p {
line-height: 19.5px;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .right img {
margin-bottom: 23px;
        width: 252px;
    }

    .header-area .navbar-wrapper .mega-menu-link h3 {
margin-bottom: 27px;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-link-wrap {
padding-bottom: 30px;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards .mega-menu-service-card .icon {
width: 52px;
        height: 52px;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards .mega-menu-service-card .icon img {
width: 22px;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards .mega-menu-service-card {
gap: 20px;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards .mega-menu-service-card {
padding: 12px;
    }

    .header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-portfolio-card h3 {
margin-bottom: 6px;
    }

    .header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-portfolio-card p {
margin-bottom: 0;
    }

    .header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-link-wrap {
column-gap: 39px;
        row-gap: 18px;
    }

    .hero-overview-wrap .hero-section-content-wrap {
padding-bottom: 30px;
    }

    .hero-overview-wrap .hero-section-content-wrap .hero-section-content {
max-width: 651px;
        margin-bottom: 0;
    }

    .about-service3-area .content-box {
max-width: inherit;
        padding-right: 100px;
    }

    .about-service3-area .custom-row {
gap: 97px;
    }

    .service-card h3 {
margin-bottom: 14px;
    }

    .service-card img {
margin-bottom: 25px;
    }

    .about-timeline .about-timeline-item h3 {
font-size: 15px;
        line-height: 21px;
        margin-bottom: 6px;
    }

    .about-timeline .about-timeline-item p {
font-size: 13px;
        line-height: 19.5px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items + .how-we-do-items {
margin-top: 60px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items .how-we-do-card .line-shape {
width: 100px;
    }

    .project-item .project-item-inner img {
height: 446px;
    }

    .hero-service-wrap .hero-section-content-wrap .hero-section-content h5 {
padding: 6px 23px;
    }
    .custom-container {
max-width: 1170px;
    }

    .header-area .logo img {
max-width: 125px;
    }

    .header-area .header-left {
gap: 63px;
    }

    .header-area .header-contact-info {
gap: 29px;
    }

    .theme-btn,
.header-area .header-contact-info .phone-number,
.header-area .navbar-wrapper ul li a {
font-size: 13px;
    }

    .header-area .navbar-wrapper ul li.mega-menu-item > a:after {
border-width: 4px;
        top: 7px;
    }

    .header-area .navbar-wrapper > ul {
gap: 30px;
    }

    .header-area .header-contact-info .phone-number a {
font-size: 12px;
        margin-bottom: 8px;
    }

    .header-area .header-contact-info .phone-number a i {
height: 10px;
    }

    .header-area .header-contact-info .phone-number {
padding: 0 35px;
    }

    .header-area .header-contact-info .theme-btn {
padding: 10px 19px;
    }

    .header-area .navbar-wrapper > ul > li {
line-height: 78px;
    }

    .hero-empowerment-area {
padding-top: 93px;
    }

    .hero-empowerment-area .custom-row {
padding-bottom: 93px;
    }

    .hero-section-wrap .hero-section-content-wrap .hero-section-content h5 {
/*        font-size: 10px;*/
        margin-bottom: 25px;
    }

    .hero-section-wrap .hero-section-content-wrap .hero-section-content h1 {
margin-bottom: 20px;
    }

    .hero-empowerment-area .hero-empowerment-left-content h1 {
font-size: 66px;
        line-height: 61.5px;
        margin-bottom: 30px;
    }

    .hero-empowerment-area .hero-empowerment-left-content p {
font-size: 18px;
        line-height: 28.5px;
        max-width: 438px;
    }

    .hero-empowerment-area .hero-empowerment-right-content {
max-width: 537px;
    }

    .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-content p {
font-size: 12px;
    }

    .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box {
padding: 30px 51px;
    }

    .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-body img {
width: 70px;
    }

    .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-content h1 {
font-size: 36px;
    }

    .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-body {
gap: 20px;
    }

    .hero-section-wrap .hero-section-content-wrap .hero-section-content p {
line-height: 28px;
    }

    .client-area .clients .client-logo {
height: 112px;
        width: 247px;
    }

    

    .homepage .how-we-do-area {
padding-top: 45px;
    }

    .section-subtitle {
font-size: 10px;
    }

    .how-we-do-area .how-we-do-left-content .top .section-title {
font-size: 45px;
    }

    .how-we-do-area .how-we-do-left-content .top .section-subtitle {
margin-bottom: 8px;
    }

    .how-we-do-area .how-we-do-left-content .top p {
font-size: 15px;
    }

    .how-we-do-card {
min-width: 191px;
        padding: 11px;
        gap: 20px;
    }

    .how-we-do-card .how-we-do-icon {
width: 52px;
        height: 52px;
    }

    .how-we-do-card .how-we-do-icon img {
width: 20px;
    }

    .how-we-do-card .how-we-do-content p,
.how-we-do-card .how-we-do-content h4 {
font-size: 12px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items {
gap: 68px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items + .how-we-do-items {
margin-top: 60px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items .how-we-do-card .line-shape {
width: 168px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items:first-child .how-we-do-card:last-child .line-shape {
height: 135px;
        right: -30px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card:first-child .line-shape {
height: 135px;
        left: -60px;
        width: 190px;
    }

    .homepage .service-area {
padding: 50px 0;
    }

    .section-title {
font-size: 45px;
    }

    .homepage .service-area .section-header .section-subtitle {
margin-bottom: 12px;
    }

    .section-header p {
font-size: 15px;
        line-height: 21px;
        max-width: 491px;
    }

    .service-area .service-section-header {
margin-bottom: 65px;
    }

    .service-card {
padding: 40px 24px 32px 24px;
    }

    .service-card h3 {
font-size: 18px;
    }

    .service-card p {
font-size: 12px;
        line-height: 18px;
    }

    .services-list {
gap: 22px;
    }

    .service-card img {
height: 36px;
        margin-bottom: 25px;
    }

    .case-studio-area .custom-container {
max-width: 982px;
    }

    .case-studio-area .case-studio .case-studio-tabs .nav-item button {
font-size: 15px;
        padding: 11px 30px;
    }

    .case-studio-area .case-studio-header {
margin-bottom: 50px;
    }

    .case-studio-area .case-studio .case-studio-tabs {
margin-bottom: 30px;
    }

    .case-studio-area .case-studio .case-studio-tab-content .case-studio-body .left {
width: auto;
        flex: 1;
        padding: 18px;
        gap: 18px;
    }

    .case-studio-area .case-studio .case-studio-tab-content .case-studio-body .right {
width: 100%;
        max-width: 403px;
    }

    .case-studio-area .case-studio .case-studio-tab-content .case-studio-body .case-studio-img-card .case-studio-cat {
font-size: 10px;
    }

    .case-studio-area .case-studio .case-studio-tab-content .case-studio-body .right .case-studio-contents p {
font-size: 13px;
        line-height: 19px;
    }

    .case-studio-area .case-studio .case-studio-tab-content .case-studio-body .right .case-studio-contents {
padding: 48px 36px 38px 40px;
    }

    .project-area .project-left-details {
max-width: 276px;
        min-width: 276px;
    }

    .project-area .project-left-details::before {
right: 60%;
    }

    .about-area .left-content p {
font-size: 15px;
        line-height: 21px;
    }

    .case-studio-area .case-studio .case-studio-tab-content .case-studio-body .case-studio-img-card .case-studio-cat {
left: 18px;
        top: 18px;
    }

    .case-studio-area .case-studio .case-studio-tab-content .case-studio-body .case-studio-img-card img {
height: 96%;
        margin-top: 6%;
    }

    .map-location-item .map-location-item-inner {
padding: 17px 43px 24px 15px;
        width: 200px;
    }

    .header-area .header-contact-info .phone-number:before,
.header-area .header-contact-info .phone-number:after {
height: 25px;    
        top: 65%;
    }

    .footer-area .theme-btn,
.footer-area .footer-top .right-content .right-content-inner .theme-btn {
height: 31px;
    }
    .solution-page .hero-overview-wrap .hero-section-content-wrap .hero-section-content {
max-width: 761px;
    }

    .header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-meu-footer p a i {
height: 10px;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-meu-footer .mega-menu-social li a,
.copyright-area .social-links li a {
font-size: 18px;
    }
}


@media (max-width: 1345px) {
    .header-area {
padding: 10px 0;
    }

    .header-area .navbar-wrapper > ul > li > a {
        flex: 1;
        display: flex;
        align-items: center;
        min-height: 36px;
    }

    .header-area .navbar-wrapper {
position: fixed;
        width: 100%;
        height: 100%;
        left: 0;
        opacity: 0;
        visibility: hidden;
        overflow-x: hidden;
        top: 0;
        z-index: 9999;
        background: rgb(28 28 28 / 50%);
        padding: 70px 84px 70px 60px;
        transition: .3s;
        display: block !important;
    }

    .header-area .navbar-wrapper.active {
opacity: 1;
        visibility: visible;
    }

    .header-area .navbar-wrapper::before {
content: "";
        position: fixed;
        width: calc(100% - 60px);
        height: 100%;
        background: #ffffff;
        left: -70px;
        top: 0;
        transition: .3s;
    }

    .header-area .navbar-wrapper.active::before {
left: 0;
    }

    .header-area .navbar-wrapper > ul {
flex-direction: column;
        align-items: flex-start;
        gap: 0;
    }

    .header-area .navbar-wrapper > ul > li {
line-height: 1;
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        border-bottom: 1px solid #D2D2D2;
        padding: 5px 0;
        z-index: 9;
        min-height: 46px;
    }

    .header-area .navbar-wrapper > ul > li:last-child {
border-bottom: none;
        padding-bottom: 0;
    }

    .header-area .navbar-wrapper ul li.mega-menu-item > a:after {
display: none;
    }

    .header-area .navbar-wrapper ul li.mega-menu-item a {
padding-right: 0;
    }

    .header-area .header-left {
flex: 1;
        justify-content: space-between;
        padding-right: 40px;
        gap: 20px;
    }

    .header-area .navbar-wrapper ul li .dropdown-menu-item-icon,
.header-area .navbar-wrapper .close-menu-bar,
.header-area .header-left .menu-bar {
display: block;
    }

    .header-area .header-left .header-left-right {
display: flex;
    }

    .header-area .navbar-wrapper ul li .mega-menu {
position: relative;
        max-height: 0;
        overflow-x: hidden;
        border: none;
        height: auto;
    }

    .header-area .navbar-wrapper ul > li.active {
padding-bottom: 20px;
    }

    .header-area .navbar-wrapper ul > li.active > .mega-menu {
max-height: 2000px;
        opacity: 1;
        visibility: visible;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-links,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-link-wrap {
gap: 40px;
    }

    .header-area .navbar-wrapper .mega-menu-link ul li a {
font-size: 14px;
        line-height: 1.1;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .left {
padding-right: 40px;
    }

    .header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-portfolio-card .img-box {
max-width: 130px;
    }

    .how-we-do-area .custom-container > .custom-row {
flex-direction: column;
        gap: 70px;
    }

    .how-we-do-area .how-we-do-left-content {
gap: 50px;
    }

    .about-area .custom-row {
flex-direction: column;
        align-items: flex-start !important;
        gap: 70px;
    }

    .about-area .left-content {
max-width: 100%;
    }

    .contact-area .custom-row {
flex-wrap: wrap;
    }

    .footer-area .footer-all-links-wrap {
gap: 50px;
        padding-right: 70px;
    }

    .footer-area .footer-bottom .footer-contact-info {
padding-left: 70px;
    }

    .about-service3-area .img-box {
max-width: 548px;
    }

    .about-service3-area .custom-row {
gap: 70px;
    }

    .contact-location-area .contact-location-left-content {
padding-right: 70px;
        max-width: 400px;
    }

    .contact-location-area .contact-location-left-content .contact-location-left-body .section-title br {
display: none;
    }

    .contact-location-box,
.contact-locations-list {
gap: 20px;
    }
}

@media (max-width: 1200px) {
    .project-area .project-left-details {
max-width: 100%;
        min-width: 100%;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .custom-container {
flex-wrap: wrap;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .right {
padding-left: 20px;
        max-width: 300px;
    }

    .header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .custom-container {
flex-direction: column;
    }

    .hero-empowerment-area .custom-row {
flex-direction: column;
        align-items: flex-start !important;
        gap: 75px;
    }

    .hero-section-wrap .hero-section-content-wrap .hero-section-content h5 {
margin-bottom: 18px;
    }

    .hero-section-wrap .hero-section-content-wrap .hero-section-content h1 {
font-size: 64px;
        line-height: 1.1;
    }

    .custom-container {
padding: 0 20px;
    }

    .client-area {
padding-bottom: 90px;
    }

    .client-area .clients .client-logo {
min-width: 200px;
        height: 110px;
    }

    .how-we-do-area {
padding-top: 0;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items {
flex-wrap: wrap;
        gap: 50px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items + .how-we-do-items {
margin-top: 50px;
    }

    .project-item .project-item-inner h2 {
font-size: 36px;
        line-height: 1;
    }

    .service-area .service-section-header {
flex-direction: column;
        align-items: flex-start !important;
        margin-bottom: 65px;
    }

    .service-area .service-section-header .section-title {
margin-bottom: 20px;
    }

    .services-list {
display: grid !important;
        grid-template-columns: 1fr 1fr 1fr;
        flex-wrap: wrap;
    }

    .case-studio-area .case-studio .case-studio-tab-content .case-studio-body {
flex-direction: column;
    }

    .case-studio-area .case-studio .case-studio-tab-content .case-studio-body .case-studio-img-card img {
height: 100%;
        object-fit: cover;
    }

    .case-studio-area .case-studio .case-studio-tab-content .case-studio-body .right {
width: 100%;
    }

    .case-studio-area .case-studio .case-studio-tab-content .case-studio-body .left {
max-width: 100%;
    }

    .case-studio-area .case-studio .case-studio-tabs {
justify-content: center;
    }

    .solution-page .about-area,
.company-service-area {
padding-bottom: 0px;
    }

    .project-area .custom-row {
flex-direction: column;
        gap: 70px;
    }

    .project-area .project-left-details::before {
display: none;
    }

    .contact-area {
padding-top: 100px;
    }

    .hero-service-about .section-header {
flex-direction: column;
        align-items: flex-start !important;
    }

    .hero-service-about .section-header {
gap: 50px;
    }

    .about-service3-area h1 br,
.footer-area .footer-top .custom-row::before {
display: none;
    }

    .footer-area .footer-top .custom-row {
flex-direction: column;
        align-items: flex-start !important;
        gap: 70px;
    }

    .footer-area .footer-bottom .custom-row {
flex-direction: column;
        gap: 70px;
    }

    .footer-area .footer-bottom .footer-contact-info {
border: none;
        padding: 0;
    }

    .footer-area .footer-all-links-wrap {
padding: 0;
        gap: 30px;
    }

    .about-service3-area .img-box {
max-width: 400px;
    }

    .about-service3-area h1 {
font-size: 45px;
        line-height: 1.2;
        margin-bottom: 30px;
    }
}

/* RESPONSIVE: reglas consolidadas para (hasta 820px) */
@media (max-width: 820px) {
    .how-we-do-area .how-we-do-right-content .how-we-do-items {
gap: 30px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items + .how-we-do-items {
margin-top: 30px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card:first-child .line-shape,
.how-we-do-area .how-we-do-right-content .how-we-do-items:first-child .how-we-do-card:last-child .line-shape {
height: 120px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card:first-child .line-shape {
width: 200px;
        left: -30px;
    }

    .about-area .left-content,
.hero-empowerment-area .custom-container {
padding: 0 50px;
    }

    .about-area .right-content {
margin: auto;
    }

    .contact-area .custom-row {
justify-content: center;
    }

    .footer-area .footer-top .custom-row {
padding-left: 50px;
        padding-right: 50px;
    }
    .contact-page .contact-location-area .custom-row {
flex-direction: column;
        align-items: flex-start !important;
    }

    .contact-page .contact-location-area .contact-location-left-content {
max-width: 100%;
    }

    .portfolio-page .portfolio-items {
grid-template-columns: 1fr 1fr;
    }

    .solution-page .hero-service-about {
padding: 42px 42px 58px 42px;
    }

    .solution-page .hero-service-about .hero-service-about-body {
padding-bottom: 0;
    }

    .solution-page .services-list {
grid-template-columns: 1fr 1fr;
    }

    .solution-page .about-service3-area .custom-row {
flex-direction: column;
    }

    .solution-page .about-service3-area .img-box {
max-width: 100%;
    }

    .solution-page .about-service3-area .content-box {
padding-right: 0;
    }

    .about-service3-area .custom-row {
flex-direction: column;
        align-items: flex-start !important;
    }

    .about-service3-area .content-box {
padding-right: 0;
    }

    .about-service3-area .img-box {
max-width: 100%;
    }
}


@media (max-width: 912px) {
    .hero-empowerment-area .custom-container {
padding: 0 20px;
    }

    .footer-area .footer-top .custom-row {
padding-left: 0;
        padding-right: 0;
    }

    .about-area .left-content {
padding: 0;
    }

    .contact-area .contact-form-wrap {
width: 100%;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .custom-container,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-link-wrap {
flex-wrap: wrap;
        flex-direction: column;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-meu-footer {
flex-wrap: wrap;
        justify-content: center !important;
        text-align: center;
        width: 100%;
        gap: 15px;
    }

    .header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-link-wrap {
column-gap: 20px;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .left {
padding-right: 0;
        padding-top: 10px;
    }

    .header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-link-wrap,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards {
grid-template-columns: 1fr;
    }

    .header-area .custom-row {
gap: 10px;
    }

    .header-area .header-right {
/* order: 0;
        width: 100%; */
        display: none;
    }

    .header-area .header-right .header-contact-info {
justify-content: space-between;
        padding: 0;
        gap: 20px;
    }

    .header-area .header-contact-info .phone-number {
padding: 0;
        font-size: 16px;
    }

    .header-area .header-contact-info .phone-number a {
font-size: 14px;
        margin-bottom: 5px;
    }

    .service-area .service-section-header .section-title br,
.hero-section-wrap .hero-section-content-wrap .hero-section-content h1 br,
.header-area .header-contact-info .phone-number::before,
.header-area .header-contact-info .phone-number::after {
display: none;
    }

    .header-area .header-contact-info .theme-btn {
font-size: 14px;
        padding-top: 8px;
        padding-bottom: 8px;
    }

    .header-area .header-left {
order: 1;
        width: 100%;
        padding: 0;
    }

    .section-title {
font-size: 40px;
        line-height: 1.1;
    }

    .section-header .section-subtitle {
margin-bottom: 15px;
    }

    .section-header p {
line-height: 26px;
    }

    .hero-empowerment-area .custom-row {
padding-bottom: 90px;
    }

    .hero-empowerment-area .hero-empowerment-left-content h1 {
font-size: 58px;
        line-height: 1;
        margin-bottom: 30px;
    }

    .how-we-do-area .how-we-do-left-content {
width: 100%;
    }

    .hero-empowerment-area .theme-btn {
font-size: 16px;
    }

    .hero-section-wrap .hero-section-content-wrap .hero-section-content h1 {
font-size: 44px;
        margin-bottom: 20px;
    }

    .hero-section-wrap .hero-section-content-wrap .hero-section-content p {
font-size: 20px;
        line-height: 1.6;
    }

    .hero-section-wrap .hero-section-content-wrap .hero-section-content p br {
display: none;
    }

    .contact-inner-info-box {
flex-direction: column;
    }

    .contact-inner-info-box .contact-info-box {
width: 100%;
    }

    .service-area {
padding: 100px 0;
    }

    .portfolio-items,
.services-list {
grid-template-columns: 1fr 1fr;
    }

    .contact-location-area .custom-row {
gap: 50px;
    }

    .contact-location-area .custom-row,
.about-service3-area .custom-row {
flex-direction: column;
        align-items: flex-start !important;
    }

    .contact-location-area .contact-location-left-content,
.about-service3-area .img-box {
max-width: 100%;
    }

    .contact-location-area .contact-location-left-content {
padding: 0;
        border: none;
    }

    .about-timeline {
padding-left: 80px;
    }

    .about-timeline .about-timeline-item:nth-child(odd) {
margin-left: 0;
    }

    .about-timeline .about-timeline-item:nth-child(even) .number,
.about-timeline .about-timeline-item .number {
right: auto;
        left: -80px;
        top: 22px;
    }

    .about-timeline .about-timeline-item:before,
.about-timeline .about-timeline-item:nth-child(even)::before {
right: auto;
        left: -55px;
    }

    .about-timeline .about-timeline-item {
max-width: 100%;
    }

    .project-area .project-right-slider {
/* max-width: 362px; */
        transform: translateX(0);
    }

    .header-area .custom-row {
flex-direction: column;
    }

    .contact-area .contact-infos {
max-width: 100%;
    }

    .contact-area .contact-form-wrap {
padding-left: 60px;
    }

    .contact-area .contact-form-wrap {
padding-right: 60px;
    }

    .footer-area .footer-all-links-wrap {
display: grid !important;
        grid-template-columns: 1fr 1fr 1fr;
        row-gap: 70px;
    }

    .hero-service-about {
padding: 42px 42px 58px 42px;
    }

    .hero-service-about .hero-service-about-body {
padding: 0;
    }

    .hero-service-about .hero-service-about-body ul {
flex-direction: column;
        gap: 20px;
    }

    .hero-service-about .hero-service-about-body ul li i {
flex: none;
    }

    .contact-map-wrap {
padding: 40px 20px 40px 0;
    }

    .about-service3-area h1 {
font-size: 34px;
    }

    .about-service3-area .content-box {
padding-right: 0;
    }
}

@media (max-width: 699px) {
    .how-we-do-area .how-we-do-right-content .how-we-do-items {
flex-direction: column;
        gap: 30px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items + .how-we-do-items {
margin-top: 30px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items .how-we-do-card .line-shape {
height: 131px;
        background-image: url(../imgs/line-shape-3.png);
        background-repeat: round;
        width: 200px;
        right: -30px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card:first-child .line-shape,
.how-we-do-area .how-we-do-right-content .how-we-do-items:first-child .how-we-do-card:last-child .line-shape {
height: 131px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card:first-child .line-shape {
left: -30px;
        width: 200px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items:first-child .how-we-do-card:nth-child(odd) .circle-shape,
.how-we-do-area .how-we-do-right-content .how-we-do-items:first-child .how-we-do-card:first-child .circle-shape {
display: block;
        left: auto;
        right: -10px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items:first-child .how-we-do-card:nth-child(even) .line-shape {
right: auto;
        left: -30px;
        transform: rotate(180deg);
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card:nth-child(odd) .circle-shape {
right: auto;
        left: -10px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card:nth-child(even) .line-shape {
left: auto;
        right: -30px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items:last-child .how-we-do-card .circle-shape {
display: none;
    }

    .case-studio-area .case-studio .case-studio-tab-content .case-studio-body .left {
flex-direction: column;
    }
}

@media (max-width: 585px) {
    .project-area .project-left-details .section-title,
.how-we-do-area .how-we-do-left-content .top .section-title,
.about-service3-area h1,
.about-area .left-content .section-title,
.section-header .section-title {
font-size: 40px;
    }

    .hero-empowerment-area .hero-empowerment-right-content .top-content img.desktop {
display: none;
    }

    .hero-empowerment-area .hero-empowerment-right-content .mobile {
display: block;
    }

    .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box {
position: relative;
        width: 100%;
        margin-top: 24px;
    }

    .contact-form .input-row .input-group.input-checkbox {
flex-direction: row;
        flex-wrap: nowrap;
    }

    .project-item .project-item-inner img {
width: 100%;
        height: 575px;
    }

    .contact-locations-list,
.portfolio-items,
.services-list {
grid-template-columns: 1fr;
    }

    .contact-location-area .right {
width: 100%;
    }

    .contact-location-box {
max-width: 100%;
    }

    .about-service3-area ul {
flex-direction: column;
    }

    .about-service3-area ul {
gap: 20px;
    }

    .contact-form .input-row {
flex-direction: column;
        gap: 0;
    }

    .contact-area .contact-form-wrap {
padding: 60px 40px;
    }

    .contact-area .contact-form-wrap .contact-form-body .section-title {
font-size: 40px;
        line-height: 1;
        margin-bottom: 15px;
    }

    .contact-area .contact-form-wrap .contact-form-body .section-subtitle {
margin-bottom: 14px;
    }

    .copyright-area .custom-row {
flex-direction: column;
        text-align: center;
        gap: 20px;
    }

    .header-area .navbar-wrapper::before {
width: calc(100% - 30px);
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .custom-container {
padding: 0;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards {
gap: 10px;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-links {
flex-direction: column;
    }

    .header-area .navbar-wrapper {
padding-right: 60px;
        padding-left: 30px;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .right {
padding-right: 20px;
    }

    .about-timeline .about-timeline-item + .about-timeline-item {
margin-top: 28px;
    }

    .about-timeline .about-timeline-item:before {
height: calc(100% + 28px);
    }

    .project-area .project-left-details {
max-width: 100%;
        min-width: 100%;
    }
}

@media (max-width: 485px) {
    .hero-empowerment-area .hero-empowerment-left-content h1 {
font-size: 38px;
        margin-bottom: 20px;
    }

    .hero-empowerment-area .hero-empowerment-left-content p {
font-size: 18px;
        margin-bottom: 20px;
    }

    .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-body {
gap: 20px;
    }

    .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-content h1 {
font-size: 38px;
    }

    .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-content p {
font-size: 14px;
    }

    .hero-section-wrap .hero-section-content-wrap .hero-section-content h1 {
font-size: 36px;
        margin-bottom: 15px;
    }

    .hero-section-wrap .hero-section-content-wrap .hero-section-content p {
margin-bottom: 30px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items .how-we-do-card .line-shape {
border-radius: 10px;
        width: 100px;
        right: -20px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card .line-shape,
.how-we-do-area .how-we-do-right-content .how-we-do-items:first-child .how-we-do-card:nth-child(even) .line-shape {
left: -20px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card .line-shape,
.how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card:first-child .line-shape,
.how-we-do-area .how-we-do-right-content .how-we-do-items:first-child .how-we-do-card:last-child .line-shape {
border-radius: 10px;
    }

    .how-we-do-area .how-we-do-right-content .how-we-do-items:nth-child(2) .how-we-do-card:nth-child(even) .line-shape {
right: -20px;
    }

    .how-we-do-area .custom-container > .custom-row {
padding: 50px 20px;
    }

    .case-studio-area .case-studio .case-studio-tabs {
flex-direction: column;
        align-items: center;
        gap: 8px;
    }

    .project-area .project-right-slider .project-right-slider-inner .swiper-pagination {
right: 50%;
        transform: translateX(50%);
    }

    .project-area .project-left-details {
min-width: auto;
    }

    .contact-area .contact-infos {
padding-left: 40px;
        padding-right: 40px;
    }

    .footer-area .footer-all-links-wrap {
grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 425px) {
    .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box img {
width: 35px;
    }

    .hero-empowerment-area .hero-empowerment-right-content .top-content .experience-box .experience-body {
gap: 10px;
    }

    .footer-area .footer-all-links-wrap {
grid-template-columns: 1fr;
    }

    .footer-area .footer-top .right-content .right-content-inner p br,
.footer-area .footer-top .left-content p br {
display: none;
    }
}

@media (max-width:390px) {
    .homepage .service-area,
.client-area,
.about-area,
.project-area {
padding-top: 100px;
        padding-bottom: 100px;
    }

    .homepage .how-we-do-area,
.hero-empowerment-area,
.footer-area {
padding-top: 100px;
    }

    .footer-area {
padding-top: 100px;
    }

    .about-service3-area {
padding-top: 100px;
        padding-bottom: 100px;
    }

    .hero-service-wrap .hero-section-content-wrap,
.contact-area {
padding-bottom: 0px;
    }

    .portfolio-page .portfolio-items {
grid-template-columns: 1fr;
    }

    .contact-location-area {
padding-top: 100px;
        padding-bottom: 100px;
    }

    .contact-area2 {
padding-bottom: 100px;
    }

    .about-page .company-service-area {
padding-top: 30px;
    }

    .solution-page .services-list {
grid-template-columns: 1fr;
    }
}

@media (max-width: 376px) {
    .hero-empowerment-area .hero-empowerment-left-content .btns-group {
        flex-direction: column;
        align-items: flex-start;
    }

    .header-area .logo img {
        max-width: 100px;
    }

    .header-area .header-left {
        gap: 10px;
        min-width: 0;
    }

    .header-area .header-left .header-left-right {
        gap: 5px;
        min-width: 0;
    }

    .header-area .header-left .menu-bar {
        width: 45px;
        height: 45px;
        line-height: 45px;
        font-size: 22px;
        flex-shrink: 0;
    }

    .header-area .header-left .header-left-right {
        display: flex;
    }

    .header-area .header-left .header-left-right .theme-btn {
        justify-content: center;
        text-align: center;
        gap: 6px;
        min-width: 0;
    }

    .language-selector img {
        width: 24px;
        height: 24px;
    }
}

@media only screen and (min-width: 912px) and (max-width: 1345px) {
    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .custom-container,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-link-wrap {
flex-wrap: wrap;
        flex-direction: column;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-meu-footer {
flex-wrap: wrap;
        justify-content: center !important;
        text-align: center;
        width: 100%;
        gap: 15px;
    }

    .header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-link-wrap {
column-gap: 20px;
    }

    .header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .left {
padding-right: 0;
        padding-top: 10px;
    }

    .header-area .navbar-wrapper ul li .mega-menu.mega-menu-portfolio .mega-menu-inner .mega-menu-link-wrap,
.header-area .navbar-wrapper ul li .mega-menu .mega-menu-inner .mega-menu-service-cards {
grid-template-columns: 1fr;
    }

    .header-area .custom-row {
gap: 10px;
    }

    .header-area .header-right {
/* order: 0;
        width: 100%; */
        display: none;
    }

    .header-area .header-right .header-contact-info {
justify-content: space-between;
        padding: 0;
        gap: 20px;
    }

    .header-area .header-contact-info .phone-number {
padding: 0;
        font-size: 16px;
    }

    .header-area .header-contact-info .phone-number a {
font-size: 14px;
        margin-bottom: 5px;
    }

    .service-area .service-section-header .section-title br,
.hero-section-wrap .hero-section-content-wrap .hero-section-content h1 br,
.header-area .header-contact-info .phone-number::before,
.header-area .header-contact-info .phone-number::after {
display: none;
    }

    .header-area .header-contact-info .theme-btn {
font-size: 14px;
        padding-top: 8px;
        padding-bottom: 8px;
    }

    .header-area .header-left {
order: 1;
        width: 100%;
        padding: 0;
    }

    .footer-area .footer-top .custom-row {
padding-left: 0;
        padding-right: 0;
    }

    .contact-area .contact-form-wrap {
width: 100%;
    }

    .contact-area .contact-infos {
max-width: 100%;
    }

    .contact-area .contact-form-wrap {
padding-left: 60px;
    }

    .contact-area .contact-form-wrap {
padding-right: 60px;
    }

    .footer-area .footer-all-links-wrap {
display: grid !important;
        grid-template-columns: 1fr 1fr 1fr;
        row-gap: 70px;
    }
}


.language-selector button {
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    cursor: pointer;
}

.language-selector img {
    width: 30px;
    height: 30px;
    display: block;
}

/* ============================================================
   CONTACT FORM ALERTS
   ============================================================ */

#alert-message {
    width: 100%;
}

#alert-message .alert {
    margin: 0;
    padding: 16px 18px;
    border-radius: 8px;
    font-family: var(--font_dm);
    font-size: 15px;
    line-height: 1.5;
}

#alert-message .alert h3 {
    margin: 0 0 5px;
    font-family: var(--font_dm);
    font-size: 20px;
    font-weight: 600;
    line-height: 1.3;
}

#alert-message .alert p {
    margin: 0;
    font-size: 14px;
    line-height: 1.5;
    padding: 0 !important;
    border-bottom: none !important;
}

#alert-message .alert-success {
    color: #155724;
    background: #eaf7ef;
    border: 1px solid #b7dfc5;
}

#alert-message .alert-error {
    color: #842029;
    background: #fdf0f1;
    border: 1px solid #f1b8bd;
}

#submit .loader {
    width: 16px;
    height: 16px;
    margin-left: 10px;
    vertical-align: middle;
}

.phone-input-group {
    display: flex;
    gap: 5px;
    width: 100%;
}

.phone-input-group select {
    width: 50px;
    min-width: 50px;
    flex: 0 0 50px;

    border: 1px solid rgb(16 24 40 / 20%);
    border-radius: 5px;

    font-size: 13px;
    font-weight: 400;
    color: rgb(28 28 28 / 55%);
    background-color: #fff;

    height: auto;
    line-height: normal;

    outline: none;
    box-shadow: none;
}

.phone-input-group select:focus {
    outline: none;
    box-shadow: none;
    border-color: rgb(16 24 40 / 20%);
}

.phone-input-group input {
    width: 100%;
    min-width: 0;
    flex: 1;
}

/* ============================================================
   CONTACT CUSTOM LAYOUT
   ============================================================ */

.contact-custom-layout {
    display: flex !important;
    width: 100% !important;
    gap: 20px !important;
    align-items: stretch !important;
    box-sizing: border-box !important;
}

.contact-custom-form {
    flex: 0 1 calc(45% - 10px) !important;
    width: calc(45% - 10px) !important;
    max-width: none !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.contact-custom-infos {
    flex: 1 1 calc(55% - 10px) !important;
    width: calc(55% - 10px) !important;
    max-width: none !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.contact-custom-info {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
}

.contact-custom-info iframe {
    width: 100% !important;
    max-width: 100% !important;
    border: 0;
    display: block;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 900px) {

    .contact-custom-layout {
        flex-direction: column !important;
        gap: 25px !important;
    }

    .contact-custom-form,
    .contact-custom-infos {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        min-width: 0 !important;
    }

    .contact-custom-details {
        flex-direction: column;
        gap: 15px;
    }

    .contact-custom-info iframe {
        width: 100% !important;
        height: 400px !important;
        aspect-ratio: auto !important;
    }
}


/* ============================================================
   MOVIL
   ============================================================ */

@media (max-width: 576px) {

    .contact-custom-layout {
        gap: 20px !important;
    }

    .contact-custom-info iframe {
        height: 300px !important;
    }
}