/*!
Theme Name: Achieve Digital
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: achieve-digital
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Achieve Digital is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/


@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

html, body, .lenis .lenis-scroller, .lenis.lenis-smooth {
    scroll-behavior: auto !important;
}

html,
body {
    overflow-x: hidden;
}
body {
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-weight: normal;
    font-style: normal;
    color: #060318;
    font-size: 1rem;    
}


.navbar_main {
    padding-block: 1rem;
    position: relative;
    z-index: 999;
    transform: none;
    background-color: rgb(255 255 255 / 90%);
    backdrop-filter: blur(5px);
}
.navbar_main.is-fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
}
.navbar_main::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: #B5C1DB;
    background: linear-gradient(90deg, rgba(181, 193, 219, 0) 0%, rgba(181, 193, 219, 1) 50%, rgba(181, 193, 219, 0) 100%);
}
.navbar-nav {
	flex-direction: row;
}

.site_branding img {
    width: 100%;
    height: auto;
}
.site_branding {
    flex: 0 0 auto;
    width: 200px;
}
.nav_main > .nav-item > .nav-link {
    color: #747784;
    font-size: 1rem;
    font-weight: 500;
}
.navbar-nav.nav_main {
    column-gap: 2.4rem;
}
.nav_main > .nav-item {
    position: relative;
}

.nav_main > .nav-item.current_page_item > .nav-link,
.nav_main > .nav-item.current-menu-item > .nav-link {
	color: #101C50;
}
.nav_call {
    font-size: 1rem;
    text-decoration: none;
    color: #1E2C3A;
    font-weight: 600;
}
.nav_tools {
    align-items: center;
    gap: 0.5rem;
}
.banner_btns {
    margin-bottom: 3rem;
}


.btn.btn-primary,
.request_quote_form input[type="submit"] {
    background-color: #101C50;
    border-color: #101C50;
    border-radius: 3rem;
    padding: .75rem 1.5rem;
    font-weight: 500;
    color: #fff;
}
.btn.btn-primary:hover,
.request_quote_form input[type="submit"]:hover {
    background-color: #3271c9;
    border-color: #3572c6;
}
.btn.btn-outline-secondary {
    border-color: #C6CBDD;
    border-radius: 3rem;
    padding: .75rem 1.5rem;
    font-weight: 500;
    color: #121d4e;
}
.btn.btn-outline-secondary:hover,
.btn.btn-outline-light:hover {
    background-color: #cbcfde;
    color: #121d4e;
}
.btn.btn-outline-secondary:active,
.btn.btn-outline-light:active {
    color: #121d4e;
}
.btn.btn-outline-light {
    border-color: #C6CBDD;
    border-radius: 3rem;
    padding: .75rem 1.5rem;
    font-weight: 500;
    color: #ffffff;
}

.btn.header_call {
    width: 3.12rem;
    height: 3.12rem;
    padding: 0 !important;
    line-height: 3.12rem;
}

.ti_title_texts h4 {
    font-size: 1.2rem;
    text-transform: uppercase;
}






.hero {
    padding-block: 3rem;
}
.banner_texts > h3 {
    color: #555457;
    font-size: 3.15rem;
    font-weight: 700;
}
.banner_texts > h2 {
    font-size: 4rem;
    font-weight: 800;
	color: #060318;
}
.hero_text {
    margin-bottom: 2rem;
}




.ti_item > p {
    font-size: 1rem;
}
.ti_titles {
    border-right: 2px solid #ccc;
    flex: 0 0 auto;
    width: 18%;
}
.ti_slider {
    flex: 0 0 auto;
    width: 82%;
    padding-inline-start: 2rem;
}
.ti_title_texts > h2 {
    margin: 0;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 1.8rem;
}
.ti_count {
    font-size: 2.2rem;
    font-weight: 800;
    line-height: 1.2;
    margin-block-end: .4rem;
}
.ti_icon {
    margin-block-end: .6rem;
}

.service_grid {
    padding-block: 8rem;
    position: relative;
    z-index: 1;
}
.service_grid:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: url('assets/images/bg_02.webp') center center / contain no-repeat;
    width: 690px;
    height: 630px;
    z-index: -1;
    pointer-events: none;
}
.service_grid_card,
.clng_card,
.technology-card {
    padding: 2rem;
    border: 2px solid #539EFF;
    border-radius: 2rem;
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between;
}

.service_overview {
    padding-block-start: 8rem;
}
.grad_b::before,
.grad_b::after {
    content: "";
    position: absolute;    
    left: 50%;
    width: 12rem;
    height: 2px;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 0) 100%);
    z-index: 1;
    margin-left: -6rem;
    transition: transform .4s ease;
}

.grad_b::before {
    top: -2px;
}
.grad_b::after {
    bottom: -2px;
}

.grad_b:hover:before {
    transform: translateX(-3rem);
}
.grad_b:hover:after {
    transform: translateX(3rem);
}

.sg_cont {
    gap: 1rem;
}
.sg_icon {
    flex: 0 0 auto;
    width: 44px;
}
.sg_text {
    flex: 1 1 auto;
}
.sg_link {
    text-decoration: none;
    background-color: #F6F7F8;
    border-radius: 2rem;
    padding: .6rem 1.4rem;
    color: #060318;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 1rem;
    font-weight: 500;
}
.sg_link:hover {
    color: #717afb;
}
.sg_text h4 {
    font-size: 1.6rem;
    font-weight: 700;
}
.sg_text p {
    font-size: 1rem;
}

.sec_heading h2 {
    font-size: 3.8rem;
    font-weight: 700;
}
.sec_heading {
    margin-bottom: 2rem;
}



.get_help_title {
    flex: 0 0 auto;
    width: 50%;
    text-align: right;
    border-right: 2px solid #D4D4D4;
    padding-inline-end: 2rem;
}
.get_help_title > h2 {
    font-size: 1.8rem;
    font-weight: 600;
    margin: 0;
}
.schedule_call {
    gap: 1rem;
    align-items: center;
}
.sc_icon>span {
    display: block;
    width: 3.4rem;
    height: 3.4rem;
    background: #7869FF;
    background: linear-gradient(rgb(120, 105, 255) 0%, rgb(83, 158, 255) 100%);
    border-radius: 50%;
    text-align: center;
    line-height: 3.4rem;
}
.sc_text {
    display: none;
}
.sc_number {
    font-size: 2rem;
    font-weight: 700;
    color: #060318;
}
.sc_number a {
    text-decoration: none;
    color: inherit;
}
.get_help {
    gap: 2rem;
    align-items: center;
    justify-content: center;
}
.get_help_row {
    margin-top: 4rem;
}
.why_ach_row {
    gap: 2rem;
}
.why_ach_left {
    flex: 0 0 auto;
    width: calc(30% - 1rem);
}
.why_ach_right {
    flex: 0 0 auto;
    width: calc(70% - 1rem);
}
.process_row {
    gap: 2.4rem;
    justify-content: center;
}
.process_card {
    flex: 0 0 auto;
    width: calc(25% - 1.80rem);
    border: 2px solid #539EFF;
    padding: 2rem .8rem;
    border-radius: 1.4rem;
    position: relative;
}
.process_card h4 {
    text-align: center;
    font-size: 1rem;
    font-weight: 600;
}
.process_arrow {
    position: absolute;
    right: -2.35rem;
    top: 50%;
    margin-top: -.8rem;
    display: inline-block;
}
.process_card:nth-of-type(even) .process_arrow {
    transform: scaleY(-1);
}
.process_card:nth-child(4) .process_arrow {
    display: none;
}
.why_ach_title {
    font-size: 2.4rem;
    font-weight: 700;
}
.why_ach_list li + li {
    margin-top: .8rem;    
}

.process_title {
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
}
.why_achieve {
    padding-block-end: 8rem;
    z-index: 1;
    position: relative;
}
.why_achieve:after {
    content: "";
    background: url("assets/images/bg_01.webp") center center / contain no-repeat;
    width: 1200px;
    height: 600px;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
    pointer-events: none;
}

.industries {
    padding-block: 6rem;
    background: url('assets/images/industries_bg.png') center center / cover no-repeat;
}

.industries_marquee {
  width: 100%;
  overflow: hidden;
}

.industries_list,
.industries_list2 {
  display: flex;
  width: max-content;
  gap: 1.4rem;
}
.industry_pill {
    flex-shrink: 0;
    background-color: #192027;
    padding: 1.5rem 4rem;
    display: inline-block;
    color: #fff;
    border-radius: 4rem;
}





.eng_right {
    padding-inline-start: 2.5rem;
}
.eng_left {
    padding-inline-end: 2.5rem;
}
.engagement {
    padding-block-start: 8rem;
    position: relative;
    z-index: 1;
}
.engagement:after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    background: url('assets/images/bg_03.webp') center center / contain no-repeat;
    width: 960px;
    height: 815px;
    z-index: -1;
    pointer-events: none;
}
.engagement_img img {
    width: 100%;
    height: auto;
    border-radius: 1.5rem;
}
.eng_list_item h5 {
    font-size: 1.6rem;
    font-weight: 700;
}
.eng_list_item {
    position: relative;
    padding-inline-start: 2rem;
}
.eng_check_icon {
    position: absolute;
    left: 0;
}
.eng_list_item + .eng_list_item {
    margin-block-start: 1.5rem;
}


.cta_box {
    background: url('assets/images/cta_bg.webp') center center / cover no-repeat;
    border-radius: 2.8rem;
    padding: 3rem;
}
.cta_title {
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 2rem;
}
.cta_actions .sc_number {
    color: #fff;
}




.testimonials {
    padding-block-end: 8rem;
}
.testimonials-swiper .swiper-slide {
    height: auto;
}
.testimonial_card {
    border: 2px solid #539EFF;
    border-radius: 1.8rem;
    padding: 2.5rem;
    height: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
    cursor: default;
}
.testimonial_user {
    align-items: center;
    gap: 1rem;
    margin-block-start: auto;
}
.testimonial_text {
    font-size: 1.25rem;
    margin-bottom: 2rem;
}
.swiper-pagination.testimonials-pagination {
    position: static;
}
.quote-icon {
    margin-bottom: 1.5rem;
}
.tes_user_img {
    flex: 0 0 auto;
    width: 56px;
}
.tes_user_img img {
    width: 56px;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 50%;
    height: auto;
}
.tes_user_info h6 {
    font-size: 1.25rem;
    font-weight: 700;
}
.tes_user_info small {
    font-size: 1rem;
    color: #707796;
}



.tech_insights {
    padding-block: 8rem;
    background: url("assets/images/bg_04.webp") center center / cover no-repeat;
}

.post_grid_card img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    object-position: center;
    border-radius: 1.2rem;
    margin-bottom: 1.4rem;
}

.post_date .date {
    font-size: 1.4rem;
    font-weight: 700;
}
.post_date {
    border-left: 3px solid #FEBB0E;
    padding-left: .5rem;
    line-height: 1;
    margin-bottom: 1rem;
}
.post_grid_title {
    font-size: 1.5rem;
    font-weight: 700;
    color: #101C50;
}
.post_grid_title a {
    text-decoration: none;
    color: inherit;
}
.post_cta {
    font-weight: 500;
    text-decoration: none;
    color: #101C50;
}




.faqs {
    padding-block: 8rem;
}
.acc_faqs .accordion-item + .accordion-item {
    margin-top: 1rem;
}
.acc_faqs .faq_item {
    border: 2px solid #F5F5F5;
    border-radius: .8rem;  
    position: relative;  
}
.faq_item.grad_b {
    border-color: #539EFF;
}
.acc_faqs .accordion-button {
    background-color: transparent;
    font-size: 1.15rem;
    font-weight: 600;
    box-shadow: none;
}
.faq_item .accordion-body p {
    font-size: 1rem;
    line-height: 1.6;
    margin: 0;
}
.faqs_title {
    width: 50%;
    flex: 0 0 auto;
}
.faqs_subtext {
    flex: 0 0 auto;
    width: 30%;
}
.service_faqs .faq_item {
    border-width: 1px 0;
    border-radius: 0;
    padding-inline-end: 30%;
    position: relative;
    padding-inline-start: 1rem;
    padding-block: 2rem;
}
.service_faqs .faq_item.grad_b,
.service_faqs .faq_item {
    border-color: #e8edf3;
}
.service_faqs .faq_item.grad_b:after,
.service_faqs .faq_item.grad_b::before {
    content: none;
}
.serv_faq_count {
    width: 7rem;
}
.service_faqs .accordion-button {
    padding: 0;
    background-color: transparent !important;
    box-shadow: none;
    font-size: 1.8rem;
    font-weight: 700;
    position: static;
}
.service_faqs .accordion-button::after {
    position: absolute;
    right: 1rem;
}
.service_faqs .accordion-body {
    padding: 0;
    padding-inline-start: 7rem;
}

.site_footer {
    background-color: #1C252E;
    padding-block-start: 4rem;
    padding-block-end: 2rem;
}
.footer_primary {
    padding-block-end: 3rem;
}
.privacy_links {
    text-align: right;
}
.footer_copyright {
    border-top: 1px solid #555B69;
    padding-block-start: 1.4rem;
    color: #fff;
}
.con_lst_item {
    color: #fff;
    font-weight: 500;
}
.con_lst_item + .con_lst_item {
    margin-top: 1rem;
}
.con_lst_item a {
    color: inherit;
    text-decoration: none;
}
.brand_footer {
    margin-block-end: 2rem;
}
.social_link_item {
    display: block;
    width: 3rem;
    height: 3rem;
    background: linear-gradient(rgb(120, 105, 255) 0%, rgb(83, 158, 255) 100%);;
    border-radius: 50%;
    text-align: center;
    line-height: 3rem;
    color: #fff;
    transition: transform .3s ease;
}
.footer_links {
    padding-block: 5rem;
}
.social_link_item:hover {
    transform: scale(.95);
}
.social_links {
    gap: .5rem;
}
.footer_right {
    gap: 1rem;
    justify-content: flex-end;
}
.menu_card h4 {
    color: #fff;
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 1.5rem;
}
.menu_card .menu .menu-item a,
.privacy_links .menu .menu-item a {
    color: #fff;
    text-decoration: none;
    line-height: 2rem;
}
.menu_card .menu .menu-item a:hover,
.privacy_links .menu .menu-item a:hover,
.con_lst_item a:hover {
    color: #3D86F5;
}
.menu_card .menu,
.privacy_links .menu {
    margin: 0;
    padding: 0;
    list-style: none;
}
.privacy_links .menu {
    display: flex;
    justify-content: flex-end;
    gap: 3rem;
}


.floating_wa_btn {
    position: fixed;
    right: 2rem;
    bottom: 2rem;
    opacity: 0;
    z-index: 99;
}
.floating_wa_btn > a {
    display: block;
    width: 3.5rem;
    height: 3.5rem;
    background-color: #31D444;
    border-radius: 50%;
    text-align: center;
    line-height: 3rem;
}
.page_banner_img {
  position: relative;
  overflow: hidden;
  height: 70vh; 
  margin-top: 6rem;
}

.page_banner_img img {
  width: 100%;
  height: 120%; 
  object-fit: cover;
  will-change: transform;
}
.page_banner {
    padding-block-start: 6rem;
}

.pb_title {
    font-size: 4rem;
    font-weight: 800;
    cursor: default;
    user-select: none;
    position: relative;
}
.serv_banner .pb_title::after {
    content: "";
    position: absolute;
    right: -40px;
    top: 2rem;
    background: url('assets/images/arrow.svg') center center / cover no-repeat;
    width: 74px;
    height: 35px;
}
.pb_title img {
    display: none;
    width: 8rem;
    height: 4rem;
    border-radius: 4rem;
    object-fit: cover;
}
.page_banner:after {
    content: "";
    position: absolute;
    inset: 0;
    background: url(assets/images/banner_bg.webp);
    z-index: -1;
}
.pb_badge {
    display: inline-block;
    background-color: #f0f1f5;
    padding: .4rem 1rem;
    border-radius: 3rem;
    color: #3559f9;
}

.fp_card {
    padding: 2rem;
    background-color: #f7f8ff;
    border-radius: 2rem;
}
.fs_nav {
    position: absolute;
    right: 2rem;
    bottom: 2rem;
    display: flex;
    gap: .6rem
}
.fs_nav [class*="fs_nav"] {
    width: 3rem;
    height: 3rem;
    text-align: center;
    line-height: 2.8rem;
    border: 1px solid #121d4e;
    cursor: pointer;
    border-radius: 50%;
    z-index: 99;
    transition: background-color .3s ease;
    background-color: #f7f8ff;
}
.fs_nav [class*="fs_nav"]:hover {
    background-color: #121d4e;
    color: #fff;
}
.tag {
    display: inline-block;
    background-color: #ebecf5;
    padding: .4rem 1rem;
    border-radius: 3rem;
    color: #3559f9;
    margin-bottom: 1rem;
}
.featured_post {
    padding-block-start: 6rem;
}
.blog_search_input.form-control {
    height: 3.6rem;
    border-radius: 4rem;
    padding: .8rem 2rem;
}
.blog_search_btn {
    position: absolute;
    top: 4px;
    right: 4px;
    bottom: 4px;
    width: 3.064rem;
    border-radius: 50%;
    padding: 0;
    text-align: center;
    height: 3.064rem;
}
.blog_search_btn:hover {
    background-color: #f0f1f5;
}
.row.fs_card {
    --bs-gutter-x: 5rem;
}
.fs_card_text h2 {
    font-size: 2.6rem;
    font-weight: 700;
    margin-bottom: 1.4rem;
}
.fs_card_text h2 a {
    color: inherit;
    text-decoration: none;
}
.fs_card_img img {
    width: 100%;
    height: auto;
    aspect-ratio: 4/3;
    border-radius: 1.2rem;
    object-fit: cover;
}
.pagination_wrapper {
    display: flex;
    justify-content: center;
    gap: .6rem;
}
.page-numbers {
    width: 2.4rem;
    height: 2.4rem;
    border: 1px solid #cbd3e4;
    border-radius: 50%;
    text-align: center;
    line-height: 2.4rem;
    color: #a0a9bd;
    text-decoration: none;
    transition: all .3s ease;
}

.page-numbers.current {
    background-color: #121d4e;
    color: #fff;
    border-color: #121d4e;
}
.page-numbers:not(.current):hover {
    border-color: #131d4c;
    color: #131d4c;
}
.post_banner img {
    width: 100%;
    height: auto;
    aspect-ratio: 9 / 4;
    border-radius: 1.5rem;
    object-fit: cover;
}
.post_banner {
    margin-top: 4rem;
}
.post_content {
    padding-block-start: 4rem;
    padding-block-end: 6rem;
}

.related_posts {
    padding-block-end: 6rem;
}
.post_meta {
    display: flex;
    justify-content: center;
    gap: 2rem;
}
.post_meta > span {
    color: #989ba7;
    font-size: .9rem;
    position: relative;
}
.post_meta > span:not(:last-child):after {
    content: "";
    width: .25rem;
    height: .25rem;
    background-color: #a2a6b5;
    position: absolute;
    right: -16px;
    top: 50%;
    border-radius: 50%;
    margin-top: -.125rem;
}
.post-navigation .nav-links {
    display: flex;
    justify-content: space-between;
    background-color: #f6f8fd;
    padding: 1.4rem;
    border-radius: 1rem;
    gap: 1rem;
}
.post-navigation .nav-item {
    display: flex;
    align-items: center;
    gap: 1rem;
}
.post-navigation .nav-item .nav-thumb {
    flex: 0 0 auto;
    width: 100px;
}
.nav-content {
    flex: 1 1;
}
.nav-content > span {
    display: block;
}
.nav-subtitle {
    font-size: 1.2rem;
    font-weight: 600;
    color: #121d4e;
}
.post-navigation a {
    text-decoration: none;
}
.nav-links > [class*="nav-"] {
    flex: 0 0 auto;
    width: calc((100% - 1rem) / 2);
}

.post-navigation .nav-item .nav-thumb img {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    border-radius: .5rem;
}
.related-posts-swiper .swiper-pagination {
    position: static;
    margin-top: 2rem;
}
.post_content .container {
    padding-left: 15%;
    position: relative;
}
.post_share {
    position: absolute;
    left: 0;
}
.post_share_wrapper {
    position: relative;
    padding-top: 6rem;
}
.share_label {
    display: inline-block;
    transform: rotate(90deg);
    transform-origin: center;
    position: absolute;
    top: 40px;
    left: -20px;
    white-space: nowrap;
}
.share_list {
    display: flex;
    flex-direction: column;
    width: 2rem;
}
.share_list > a, .share_list > button {
    width: 2.4rem;
    display: block;
    height: 2.4rem;
    text-align: center;
    line-height: 2.4rem;
    border-radius: 50%;
    border: 0;
    padding: 0;
    color: #535660;
    background-color: transparent;
}
.share_list > a:hover, 
.share_list > button:hover {
    background-color: #d1d4dd;
    color: #121d4e;
}


.mision_vision {
    padding: 6rem 0;
}
.mv_top_title h2 {
    font-size: 3rem;
    font-weight: 600;
    text-transform: uppercase;
}
.overview_images {
    width: 320px;
    position: relative;
    height: 375px;
    margin-inline: auto;
}
.overview_images img {
  position: absolute;
  inset: 0;
  width: 100%;
  border-radius: 20px;
  transform-origin: center;
  transition: transform 0.45s ease;
}

/* DOM ORDER → VISUAL STATE */
.overview_images img:nth-child(1) {
  transform: rotate(-11deg) ;
}

.overview_images img:nth-child(2) {
  transform: rotate(11deg);
}

.overview_images img:nth-child(3) {
  transform: rotate(0deg);
}

.overview_item:not(:last-child) {
    margin-bottom: 18rem;
}
.overview_item h4 {
    font-size: 3rem;
    font-weight: 800;
    margin-bottom: 2rem;
}
.overview_item p {
    font-size: 1.8rem;
    line-height: 1.8;
}
.mv_top_title {
    margin-bottom: 6rem;
}
.overview_texts {
    margin-block: 14rem;
}
.mv_title_area {
    position: relative;
}

.our_values {
    padding-block: 6rem;
}
.ov_row {
    display: flex
;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2rem;
}
.ov_card {
    flex: 0 0 auto;
    width: calc((100% - 4rem) / 3);
    border-radius: 1.4rem;
    padding: 2rem;
    text-align: center;
    border: 2px solid #539EFF;
}
.ceo_message {
    padding-block-end: 8rem;
}
.cm_card {
    align-items: center;
}
.cm_card:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 4rem;
    bottom: 0;
    background-color: #E8EAF3;
    z-index: -1;
    border-radius: 2rem;
    background: url("assets/images/cta_bg.webp") center center / cover no-repeat;
}
.ceo_img {
    flex: 0 0 auto;
    width: 38%;
}
.ceo_text {
    flex: 0 0 auto;
    width: 62%;
    padding: 8rem 4rem 4rem 4rem;
}
.ceo_text h4 {
    font-size: 2.4rem;
    font-weight: 700;
}
.ceo_text p {
    font-size: 1.15rem;
    margin-bottom: 2rem;
}
.ceo_text h2 {
    font-size: 1.6rem;
    margin-bottom: 2rem;
}

.what_we_do {
    padding-block: 8rem;
}
.wwd_card {
    border: 2px solid #539EFF;
    padding: 2rem;
    border-radius: 2rem;
    height: 100%;
}
.wwe_count {
    font-size: 1.5rem;
    font-weight: 800;
    margin-bottom: 6rem;
}


.cta_box2 {
    background: url("assets/images/cta2_bg.webp") center center / cover no-repeat;
    padding: 4rem;
    border-radius: 2rem;
}
.cta_section {
    padding-block: 8rem;
}
.cta_box2 .cta_title,
.cta_box2 .sc_label,
.cta_box2 .cta_actions .sc_number {
    color: #121d4e;
}
.wwd_image.wwd_image3 {
    padding-top: 14rem;    
}
.wwd_image.wwd_image1 {
    padding-top: 9rem;
}
.wwd_image.wwd_image1 img {
    aspect-ratio: 3 / 4;
    object-fit: cover;
    object-position: center;
    width: 330px;
}
.wwd_image.wwd_image2,
.wwd_image.wwd_image3 {
    width: 100%;
    object-fit: cover;
}
.wwd_image.wwd_image2 img, .wwd_image.wwd_image3 img {
    aspect-ratio: 2.5 / 3.7;
}
.portfolio_link .portfolio_btn {
    display: inline-block;
    position: relative;
}
.pl_icon {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
}
.portfolio_link {
    margin-top: 7rem;
    text-align: center;
}
.serv_banner .row {
    --bs-gutter-x: 4rem;
}

.serv_excerpt {
    padding-top: 6rem;
}
.wwd_card h4 {
    font-size: 1.8rem;
    font-weight: 700;
}


.portfolio {
    padding-block: 8rem;
}
.port_nav_tab {
    margin-bottom: 3rem;
    gap: 1rem;
}
.portfolio-card-link {
    text-decoration: none;
    color: inherit;
    display: block;
}

.port_tab_pane .row {
    --bs-gutter-y: 2rem;
    --bs-gutter-x: 6rem;
}
.portfolio-card {
    border: none;
    transition: all 0.35s ease;
}
.portfolio-card:hover {
    transform: translateY(-8px);
}
.portfolio-img-wrapper {
    overflow: hidden;
    border-radius: 30px;
    border: 1px solid #f4f6ff;
}
.portfolio_title {
    font-size: 2rem;
    font-weight: 700;
    margin-top: 1rem;
}
.portfolio-img {
    transition: transform 0.6s ease;
    height: auto;
    object-fit: cover;
    aspect-ratio: 1 / 1;
}
.portfolio-card:hover .portfolio-img {
    transform: scale(1.08);
}
.portfolio-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom,rgba(0,0,0,0.1),rgba(0,0,0,0.6));
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.4s ease;
}
.portfolio-link-icon {
    width: 56px;
    height: 56px;
    background: #101C50;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    transform: scale(0.7);
    transition: transform 0.35s ease;
}
.portfolio-tech-overlay {
    position: absolute;
    bottom: 25px;
    left: 16px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    z-index: 2;
    transform: translateY(10px);
    transition: all 0.4s ease;
}
.portfolio-tech {
    background: rgb(255 255 255 / 69%);
    font-size: 15px;
    font-weight: 500;
    padding: 8px 15px;
    border-radius: 20px;
    backdrop-filter: blur(6px);
    color: #121d4e;
}
.portfolio .nav-pills .nav-link {
    border: none !important;
    background-color: #f5f6fa;
    color: #101C50;
    font-size: 20px;
    transition: all 0.3s ease;
}
.portfolio .nav-pills .nav-link.active,
.portfolio .nav-pills .show > .nav-link {
    background-color: #101C50 !important;
    color: #ffffff !important;
    box-shadow: none;
}
.portfolio .nav-pills .nav-link:not(.active):hover {
    background-color: #e6e9f2;
    color: #101C50;
}
.portfolio-card:hover .portfolio-overlay {
    opacity: 1;
}
.portfolio-card:hover .portfolio-link-icon {
    transform: scale(1);
}
.portfolio-card:hover .portfolio-tech-overlay {
    transform: translateY(0);
}


.portfolio-details .category-badge {
    font-size: 20px;
    padding: 10px 20px;
    border-radius: 30px;
    color: #ffffff;
}
.icon-circle {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #e9f7ff;
    display: flex;
    align-items: center;
    justify-content: center;
}
.icon-circle svg{
    width: 25px;
    height: 25px;
    color: #101c50;
}
.meta-info-section {
    margin-bottom: 50px;
}
.tech-pill {
    background-color: #101c50;
    color: #fff;
    padding: 10px 18px;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 500;
}
.image-wrapper {
    position: relative;
    display: inline-block;
}
.image-wrapper img {
    position: relative;
    z-index: 2;
    border-radius: 24px;
}
.image-bg {
    position: absolute;
    inset: auto -30px -30px auto;
    width: 100%;
    height: 100%;
    background: rgba(0, 200, 255, 0.2);
    border-radius: 24px;
    z-index: 1;
}
.project-gallery {
    background: #f7f7f7;
    padding-block-start: 8rem;
    padding-block-end: 5rem;
}
.project-gallery .swiper-slide {
    display: flex;
    align-items: center;
    justify-content: center;
}
.project-gallery img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.project-gallery .swiper {
    padding-bottom: 40px;
}
.challenge-and-solution {
    padding-block: 8rem;
}
.cs-icon img {
    width: 50px;
    margin-bottom: 20px;
}

.project-results {
    padding-block: 8rem;
    background: linear-gradient(180deg, #1a2254 0%, #151c45 100%);
}
.result-item {
  padding: 10px 0;
}
.result-value {
  font-size: 3rem;
  font-weight: 700;
  color: #00d4ff;
  line-height: 1.1;
}
.result-label {
  margin-top: 8px;
  font-size: 0.95rem;
  color: rgba(255, 255, 255, 0.85);
}


.key-features {
    padding-block-start: 8rem;
}
.projectGallerySwiper .swiper-slide img {
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    border-radius: 1.2rem;
}
.feature-card {
    background: #f3f5f7;
    border-radius: 14px;
    padding: 18px 20px;
    gap: 14px;
}
.feature-number {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: linear-gradient(0deg, #539EFF 0%, #7869FF 100%);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.9rem;
    flex-shrink: 0;
}
.feature-card p {
    color: #0f1b4c;
    font-size: 0.95rem;
}

.technology-section {
    padding: 100px 0;
}
.technology-title {
  font-weight: 700;
  font-size: 1.6rem;
  color: #0f1b4c;
}
.tech-card {
    margin: 20px 0;
}
.technology-subtitle {
    color: #6b7280;
    font-size: 0.95rem;
}
.technology-tech {
    background: #f7f8fa;
    border-radius: 18px;
    padding: 20px 10px;
    height: 100%;
}
.technology-tech img {
    width: 42px;
    height: 42px;
    margin-bottom: 10px;
}
.technology-tech span {
    display: block;
    font-size: 0.85rem;
    font-weight: 500;
    color: #4b5563;
}



.service-features-section {
    background: #000;
    color: #fff;
    margin-bottom: 100px;
    position: relative;
}
.ux-left {
    background: #0d0d0d;
    padding-left: 40px;
}
.ux-menu li {
    color: #6c6c6c;
    font-size: 1.05rem;
    margin-bottom: 28px;
    cursor: pointer;
}
.ux-menu li.active {
    color: #ffffff;
}
.ux-image img {
    object-fit: cover;
}
.ux-content {
    padding: 60px;
}
.ux-menu h4 {
    font-size: 3rem;
    text-transform: uppercase;
    font-weight: 200;
}
.ux-content h2 {
    font-size: 4.4rem;
}
.ux-content p {
    color: #b5b5b5;
    font-size: 1.4rem;
    line-height: 1.7;
}
.ux-list {
  list-style: none;
  padding-left: 0;
}
.ux-list li::before {
  content: "+";
  margin-right: 10px;
  color: #ffffff;
}
.ux-list li {
  margin-bottom: 10px;
  font-size: 0.95rem;
}



.footer {
    background-color: #161820;
    color: #fff;
    padding-block-start: 6rem;
    padding-block-end: 2rem;
}

/* Top CTA */
.cta-subtitle {
    color: #ffffff;
    font-size: 0.85rem;
    letter-spacing: 1px;
}

.cta-title {
  font-size: clamp(3rem, 6vw, 6rem);
  font-weight: 800;
  letter-spacing: 2px;
  margin-top: 10px;
}

/* Social pills */
.cta-social span {
  background: #111;
  border: 1px solid #222;
  padding: 6px 14px;
  font-size: 0.7rem;
  border-radius: 20px;
  color: #aaa;
}
.col-md-4.lts_right {
    text-align: center;
}
/* Circle Button */
.cta-circle {
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background-color: #161820;
    border: 1px solid #2d303c;
    color: #fff;
    font-size: 0.75rem;
    text-align: center;
    will-change: transform;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    padding: 1.4rem;
}
.btn-wrap {
    display: inline-block;
    position: relative;
}

.magnetic-btn .fill {
  position: absolute;
    content: "";
    width: 0;
    height: 0;
    left: 50%;
    top: 50%;
    z-index: -1;
    border-radius: 100%;
    transition: all 1s;
    background-color: #5e92fa;
    transform: translate(-50%, -50%);
}
.magnetic-btn:hover .fill {
    width: 400px;
    height: 400px;
}

/* Brand */
.brand-text {
    color: #aaa;
    max-width: 280px;
}

.footer_card_title {
    font-size: 1.4rem;
    font-weight: 700;
    margin-block-end: 2rem;
}
.location-text {
  color: #aaa;
}

/* Newsletter */
.newsletter-box {
  display: flex;
  border: 1px solid #222;
  border-radius: 6px;
  overflow: hidden;
}
.newsletter-box input {
  background: transparent;
  border: none;
  color: #fff;
  padding: 10px;
  width: 100%;
}
.newsletter-box button {
  background: #3D86F5;
  border: none;
  padding: 0 14px;
}
.footer_bottom {
    border-top: 1px solid #20232e;
    padding-block-start: 2rem;
}
.copyright-text {
    color: #aaa;
}
/* Footer links */
.privacy_links a {
  color: #aaa;
  text-decoration: none;
}
.privacy_links a:not(:first-child) {
  margin-left: 16px;
}
.privacy_links a:hover {
  color: #3D86F5;
}

.ux_image,
.ux_nav {
    width: 50%;
    flex: 0 0 auto;
}
.ux_image {
    position: relative;
    height: 100%;
}
 
.ux_image img {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    display: block;
    object-fit: cover;
}
.ux_panel {
    padding-block: 15rem;
}
 
.ux_left_cont {
    display: flex;
    height: 100%;
    align-items: center;
}
.ux_left {
    height: 100vh;
}
.ux_image img {
  will-change: transform, opacity;
}

.floating_req_btn {
    position: fixed;
    right: -64px;
    rotate: -90deg;
    top: 15rem;
    z-index: 99;
}
.floating_req_btn .btn-primary {
    border-radius: 5px;
    z-index: 999 !important;
}
.portfolio_banner {
    padding-block-end: 8rem;
}
.portfolio_banner > .container > .row {
    --bs-gutter-x: 4.5rem;
    --bs-gutter-y: 2rem;
}




.request_quote .modal-content {
    border-radius: 2rem;
    border: 0;
}
.request_quote .modal-body {
    padding: 15px;
}
.request_quote_img img {
    width: 100%;
    height: 100%;
    border-radius: 1.2rem;
}
.row.request_quote_row {
}
.request_quote_img {
    border-radius: 1rem;
}
.request_quote_form {
    padding: 3rem;
}
.request_quote .btn-close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 2.2rem;
    height: 2.2rem;
    border: 1px solid #ccc;
    border-radius: 50%;
}


/* Wrapper */
.cf7-bootstrap input, .cf7-bootstrap textarea {
    width: 100%;
    background: #ffffff;
    border: 1px solid #e9e9e9;
    border-radius: 8px;
    padding: 10px 15px;
    font-size: 14px;
    color: #101010;
}
.cf7-bootstrap input:focus,
.cf7-bootstrap textarea:focus {
    border-color: #0f1b4cc0;
    outline: none;
}

.cf7-bootstrap ::placeholder {
  color: #5f5f5f;
}
.wpcf7 form .wpcf7-response-output {
    margin: 0 !important;
    border-radius: .4rem;
}
.request_quote_form > h2 {
    font-weight: 700;
}
.request_quote_form > p {
    color: #767676;
}



@media screen and (max-width: 1367px) {
    .ux-content h2 {
        font-size: 3.8rem;
    }
    .wwd_image.wwd_image1 {
        padding-top: 5rem;
    }
    .wwd_card {
        padding: 2rem 1rem;
    }
    .ux-menu h4 {
        font-size: 2.4rem;
    }
    .ux-content p {
        font-size: 1.2rem;
    }
    .ux_panel {
        padding-block: 8rem;
    }
}
@media screen and (max-width: 1280px) {
    .cm_card {
        align-items: flex-end;
    }
    .mv_top_title h2 {
        font-size: 2.4rem;
    }
}
@media screen and (max-width: 1200px) {
    .nav_tools .btn.btn-primary:not(.header_call) {
        display: none;
    }
    .result-value {
        font-size: 2rem;
    }
}

@media screen and (max-width: 1024px) {
    .ceo_text p {
        font-size: 1rem;
        margin-bottom: 1rem;
    }
    .ceo_text h2 {
        font-size: 1rem;
        margin-bottom: 1rem;
    }
    .ceo_text {
        padding: 7rem 2rem 3rem 2rem;
    }
    .service_faqs .accordion-body {
        padding-inline-start: 3rem;
    }
    .wwe_count {
        margin-bottom: 1rem;
    }
    .pb_title {
        font-size: 3rem;
    }
    .ux-content {
        padding: 40px;
    }
    .ux-content h2 {
        font-size: 2.8rem;
    }
    .ux-content p {
        font-size: .9rem;
    }
    .ux-menu h4 {
        font-size: 1.8rem;
    }
    .ux_panel .row {
        flex-direction: column;
    }
    .ux_panel .row .col-6 {
        width: 100%;
    }
    .service_faqs .faq_item {
        padding-inline-end: 2.2rem;
        padding-block: 1rem;
    }
    .service_faqs .accordion-button {
        font-size: 1.4rem;
    }
    .serv_faq_count {
        width: 3rem;
    }
    .cta_section {
        padding-block: 4rem;
    }
}
@media screen and (max-width: 991px) {
    .container, .container-lg, .container-md, .container-sm {
        max-width: 100%;
    }
    .banner_texts > h3 {
        font-size: 2rem;
    }
    .banner_texts > h2 {
        font-size: 3rem;
    }
    body {
        font-size: 0.9rem;
    }
    .banner_btns {
        gap: .5rem !important;
        margin-bottom: 1.5rem;
    }
    .btn.btn-primary,
    .btn.btn-outline-secondary {
        padding: .7rem 1rem;
        font-size: .9rem;
    }
    .ti_title_texts h4 {
        font-size: 1rem;
    }
    .ti_title_texts > h2 {
        font-size: 1.2rem;
    }
    .ti_icon > img {
        width: 2rem;
        height: auto;
    }
    .sec_heading h2 {
        font-size: 2.4rem;
    }
    .service_grid,
    .industries,
    .tech_insights,
    .faqs,
    .what_we_do,
    .project-gallery,
    .challenge-and-solution,
    .project-results {
        padding-block: 4rem;
    }
    .sec_heading {
        margin-bottom: 1rem;
    }
    .row.sg_row {
        row-gap: 1.4rem;
    }
    .get_help_row {
        margin-top: 3rem;
    }
    .service_grid_card {
        padding: 1.2rem;
        border-radius: 1.2rem;
    }
    .why_ach_row {
        flex-direction: column;
    }
    .why_ach_right,
    .why_ach_left {
        width: 100%;
    }
    .why_ach_left {
        text-align: center;
    }
    .why_achieve,
    .portfolio_banner,    
    .testimonials,
    .ceo_message {
        padding-block-end: 4rem;
    }
    .industry_pill {
        padding: 1rem 3rem;
    }
    .process_card {
        padding: 1rem .6rem;
        border-radius: 1.2rem;
    }
    .process_card h4 {
        font-size: .8rem;
    }
    .pb_title {
        font-size: 3rem;
        line-height: 1.2;
    }
    .page_banner,
    .service_overview,
    .portfolio,
    .key-features,    
    .engagement {
        padding-block-start: 4rem;
    }
    .page_banner_img {
        margin-top: 4rem;
    }
    .portfolio_link {
        margin-top: 3rem;
    }
    
    .port_tab_pane .row {
        --bs-gutter-y: 3rem;
    }
    .portfolio {
        padding-block-end: 0;
    }
}


@media screen and (max-width: 820px) {
    .portfolio_banner > .container > .row {
        --bs-gutter-x: 1rem;
    }
    .ceo_text h4 {
        font-size: 1.4rem;
    }
    .overview_item p {
        font-size: 1.4rem;
    }
    .overview_item h4 {
        font-size: 2.2rem;
    }
    .overview_images {
        width: 250px;
        height: 295px;
    }
    .what_we_do .row {
        row-gap: 2rem;
    }
    .wwd_card h4 {
        font-size: 1.2rem;
    }
    .what_we_do .col-md-3 {
        width: 50%;
    }
    .nav_tools,
    .nav_collapse {
        display: none !important;
    }
    .nav_mobile {
        position: fixed;
        top: 0;
        bottom: 0;
        left: 0;
        height: 100vh;
        background-color: #fff;
        padding-inline: 2rem;
        z-index: -1;
        padding-block-start: 1.4rem;
        padding-block-end: 2rem;
        width: 300px;
        box-shadow: 1px 2px 11px rgb(18 29 78 / 9%);
        transform: translateX(-400px);
        transition: transform .3s ease;
        z-index: 999;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        overflow-y: auto;
    }
    .navbar-nav.nav_main {
        flex-direction: column;
        margin-block: 2rem;
    }
    .nav_mobile.show {
        transform: translateX(0);
    }
    .navbar_main {
        padding-block: 1.4rem;
    }
    .mobile_branding img {
        max-width: 160px;
        height: auto;
    }
    .nav_main > .nav-item > .nav-link {
        font-size: 1.4rem;
    }
    .mobile_nav_tools .btn.btn-primary:not(.header_call) {
        font-size: .8rem;
    }
    .mobile_nav_tools .btn.btn-primary.header_call {
        width: 2.8rem;
        height: 2.8rem;
        line-height: 2.8rem;
    }
    .mobile_nav_tools {
        gap: .2rem;
    }
    .menu_toggle {
        width: 2rem;
        height: 2rem;
        border: 0;
        background-color: #fff;
        padding: 0;
        position: relative;
    }
    .menu_toggle span:nth-child(1) {
        top: 4px;
        -webkit-transform-origin: left center;
        -moz-transform-origin: left center;
        -o-transform-origin: left center;
        transform-origin: left center;
    }
    .menu_toggle.open span:nth-child(1) {
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg);
        top: 4px;
        left: 6px;
    }
    .menu_toggle span:nth-child(2) {
        top: 16px;
        -webkit-transform-origin: left center;
        -moz-transform-origin: left center;
        -o-transform-origin: left center;
        transform-origin: left center;
    }
    .menu_toggle.open span:nth-child(2) {
        width: 0%;
        opacity: 0;
    }
    .menu_toggle span:nth-child(3) {
        top: 27px;
        -webkit-transform-origin: left center;
        -moz-transform-origin: left center;
        -o-transform-origin: left center;
        transform-origin: left center;
    }
    .menu_toggle.open span:nth-child(3) {
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg);
        left: 6px;
    }
    .menu_toggle span {
        display: block;
        position: absolute;
        height: 2px;
        width: 100%;
        background: #121d4e;
        border-radius: 9px;
        opacity: 1;
        left: 0;
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transition: .25s ease-in-out;
        -moz-transition: .25s ease-in-out;
        -o-transition: .25s ease-in-out;
        transition: .25s ease-in-out;
    }
    .sg_cont {
        flex-direction: column;
    }
    .eng_left {
        padding-inline-end: .75rem;
    }
    .eng_right {
        padding-inline-start: .7rem;
    }
    .cta_box2 {
        padding: 3rem;
    }
    .cta_title,
    .pb_title {
        font-size: 2.4rem;
    }
    .testimonial_text {
        font-size: 1rem;
        margin-bottom: 1.4rem;
    }
    .testimonial_card {
        padding: 2rem;
        border-radius: 1.2rem;
    }
    .footer_card_title {
        font-size: 1rem;
        margin-block-end: 1rem;
    }
    .eng_list_item h5 {
        font-size: 1rem;
    }
    .sec_heading h2 {
        font-size: 2rem;
    }
    .cm_card:after {
        top: 0;
    }
    .ceo_text {
        padding: 3rem 2rem;
    }
    .port_tab_pane .row {
        --bs-gutter-y: 2rem;
    }
    .portfolio_title {
        font-size: 1.4rem;
        margin-top: 0.5rem;
    }
    
}
@media screen and (max-width: 767px) {
    .portfolio .nav-pills .nav-link {
        font-size: 14px;
    }
    .port_nav_tab {
        margin-bottom: 2rem;
        gap: .5rem;
    }
    .mision_vision {
        padding: 3rem 0 1rem;
    }
    .overview_item h4 {
        font-size: 1.6rem;
        margin: 0;
    }
    .overview_item p {
        font-size: 1rem;
    }
    .overview_images {
        width: 100%;
        height: auto;
        display: flex;
        gap: 1rem;
    }
    .overview_texts {
        margin-block: 2rem;
    }
    .overview_item:not(:last-child),
    .mv_top_title {
        margin-bottom: 2rem;
    }
    .overview_images img {
        position: static;
        transform: none !important;
        flex: 0 0 auto;
        width: calc((100% - 2rem) / 3);
    }
    .footer_links .row {
        row-gap: 2rem;
    }
    .fl_right .col-md-3 {
        width: 50%;
    }
    .ti_slider,
    .ti_titles {
        width: 100%;
        padding-inline-start: 0;
        border: 0;
    }
    .trust_indices {
        flex-direction: column;
        gap: 2rem !important;
    }
    .hero .row,
    .portfolio_banner > .container > .row {
        flex-direction: column-reverse;
    }
    .banner_img img {
        max-width: 360px;
    }
    section.hero {
        text-align: center;
    }
    .banner_btns,
    .cer_grid  {
        justify-content: center;
    }
    .engagement .row {
        row-gap: 2rem;
    }
    .cta_img img {
        max-width: 70px;
        margin-top: -4rem;
    }
    .serv_banner .pb_title::after,
    .ux_nav {
        display: none;
    }
    .serv_excerpt,
    .wwd_image.wwd_image1 {
        padding-top: 0;
    }
    .wwd_image.wwd_image3 {
        padding-top: 4rem;
    }
    .wwd_text {
        margin-bottom: 2rem;
    }
    .ux_left {
        position: absolute;
        inset: 0;
    }
    .ux_image {
        width: 100%;
    }
    .ux-content {
        position: relative;
        z-index: 1;
    }
    .ux_image::after {
        content: "";
        position: absolute;
        inset: 0;
        background-color: rgb(0 0 0 / 79%);
    }
    .challenge-and-solution .row {
        --bs-gutter-y: 2rem;
    }
}
@media screen and (max-width: 575px) {
    
    .cm_card {
        flex-direction: column;
        align-items: center;
        padding: 2rem;
    }
    .ceo_img {
        width: 68%;
    }
    .ceo_text {
        width: 100%;
        padding: 0;
        margin-top: 2rem;
        text-align: center;
    }
    .service-features-section {
        margin-bottom: 3rem;
    }
    .service_faqs .accordion-button {
        font-size: 1rem;
    }
    .wwd_image.wwd_image1 img {
        width: 100%;
        margin-bottom: 2rem;
        aspect-ratio: 4 / 3;
    }
    .lets-talk-section .row {
        flex-direction: column-reverse;
        row-gap: 2rem;
    }
    .lts_left,
    .fl_left,
    .footer_bottom,
    .privacy_links {
        text-align: center;
    }
    .social_links {
        justify-content: center;
    }
    .brand-text {
        margin-inline: auto;
    }
    .footer_links {
        padding-block: 3rem;
    }
    .banner_texts > h2 {
        font-size: 2rem;
    }
    .banner_texts > h3 {
        font-size: 1.4rem;
    }
    .banner_texts h4 {
        font-size: 1rem;
    }
    .get_help {
        flex-wrap: wrap;
    }
    .get_help_title {
        width: 100%;
        text-align: center;
        border-right: 0;
        padding-inline-end: 0;
    }
    .process_card {
        width: calc(50% - 1.80rem);
    }
    .process_card:nth-child(4) .process_arrow {
        display: inline-block;
    }
    .process_card:nth-child(2) .process_arrow,
    .process_card:nth-child(4) .process_arrow,
    .process_card:nth-child(6) .process_arrow {
        display: none;
    }
    .why_ach_title,
    .process_title,
    .sec_heading h2,
    .cta_title,
    .pb_title,
    .mv_top_title h2 {
        font-size: 1.8rem;
    }
    .sec_heading.faq_hd {
        flex-direction: column;
        justify-content: center;
    }
    .faqs_title,
    .faqs_subtext {
        width: 100%;
        text-align: center;
    }
    .floating_req_btn {
        right: -58px;        
    }
    .page_banner_img {
        height: 50vh;
    }
}
@media screen and (max-width: 480px) {
    .what_we_do .col-md-3 {
        width: 100%;
    }
    .service_faqs .faq_item {
        padding-inline: 0;
    }
    .ux-content {
        padding: 2rem;
    }
    .serv_faq_count {
        width: 2rem;
    }
    .service_faqs .accordion-body {
        padding-inline-start: 2rem;
    }
    .sg_text h4 {
        font-size: 1.4rem;
    }
    .service_grid, .industries, .tech_insights, .faqs,
    .challenge-and-solution, .project-results, .project-gallery {
        padding-block: 3rem;
    }
    .testimonials,
    .ceo_message {
        padding-block-end: 3rem;
    }
    .key-features,
    .engagement {
        padding-block-start: 3rem;
    }
    .industry_pill {
        padding: .8rem 1.5rem;
    }
    .cta_box2 {
        padding: 2rem;
    }
    .post_grid_title {
        font-size: 1.2rem;
    }
    .industries_list, .industries_list2 {
        gap: .8rem;
    }
    .result-value {
        font-size: 1.4rem;
    }
        
}






@media screen and (min-width: 768px) {
    .request_quote .modal-dialog {
        max-width: 720px;
    }
}
@media screen and (min-width: 821px) {
    
    .port_tab_item:nth-of-type(even) {
        margin-block-start: 4rem;
    }
    .nav_main > .nav-item:not(:last-child):after {
        content: "";
        position: absolute;
        width: .2rem;
        height: .2rem;
        background-color: #ccc;
        right: -1.2rem;
        top: 50%;
        border-radius: 50%;
    }

    .menu_toggle,
    .nav_mobile {
		display: none;
	}
    .row.post_grid_row {
        --bs-gutter-x: 4rem;
    }
}
@media screen and (min-width: 992px) {
    .request_quote .modal-dialog {
        max-width: 980px;
    }
    .port_tab_item:nth-of-type(even) {
        margin-block-start: 5rem;
    }
	.row.sg_row {
        column-gap: 1.5rem;
        row-gap: 3rem;
    }
    .sg_row .col-md-4 {
        width: calc((100% - 3rem) / 3);
    }
    .cta_texts {
        padding-inline-end: 15rem;
    }

}
@media screen and (min-width: 1367px) {
    .port_tab_item:nth-of-type(even) {
        margin-block-start: 8rem;
    }
}
@media (min-width: 1600px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1560px;
    }
}