:root {
    --container-width: 1432px;
    --font-text: 'General Sans', ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
        'Segoe UI Symbol', 'Noto Color Emoji';

    --color-white: #ffffff;
    --color-black: #000000;

    --color-primary: #034ea2;
    --color-primary-50: #ebf4ff;
    --color-primary-100: #b3cae3;
    --color-primary-200: #6895c7;
    --color-primary-300: #034ea2;
    --color-primary-400: #00377b;
    --color-primary-500: #002561;

    --color-secondary: #f7941d;
    --color-secondary-100: #fddfbb;
    --color-secondary-200: #fabf78;
    --color-secondary-300: #f7941d;
    --color-secondary-400: #b76e11;
    --color-secondary-500: #905501;

    --color-gray: #7f8182;
    --color-gray-100: #f4f5f6;
    --color-gray-200: #e9ecef;
    --color-gray-300: #dee2e6;
    --color-gray-400: #ced4da;
    --color-gray-500: #adb5bd;
    --color-gray-600: #6c757d;
    --color-gray-700: #495057;
    --color-gray-800: #343a40;
    --color-gray-900: #090a0b;

    --gradient-blue: linear-gradient(92.92deg, #002561 0%, #034ea2 80.77%, #034ea2 100%);
    --gradient-1: linear-gradient(90deg, #034ea2 0.03%, #f7941d 100%);
    --gradient-border: linear-gradient(white, white) padding-box,
        linear-gradient(to right, var(--color-primary), var(--color-secondary)) border-box;
    --gradient-border-gray: linear-gradient(var(--color-gray-100), var(--color-gray-100)) padding-box,
        linear-gradient(to right, var(--color-primary), var(--color-secondary)) border-box;

    --font-h1: 70px;
    --font-h2: 56px;
    --font-h3: 40px;
    --font-h4: 32px;
    --font-h5: 24px;
    --font-h6: 20px;
    --text-lg: 20px;
    --text-md: 18px;
    --text-base: 16px;
    --text-sm: 14px;
    --text-xs: 12px;

    --transition: all 0.3s ease-in-out;

    --section-top-padding: 80px;
    --section-bottom-padding: 80px;
}

@font-face {
    font-family: 'General Sans';
    src: url('../fonts/GeneralSans-Semibold.woff2') format('woff2'),
        url('../fonts/GeneralSans-Semibold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'General Sans';
    src: url('../fonts/GeneralSans-Italic.woff2') format('woff2'),
        url('../fonts/GeneralSans-Italic.woff') format('woff');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'General Sans';
    src: url('../fonts/GeneralSans-Medium.woff2') format('woff2'),
        url('../fonts/GeneralSans-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'General Sans';
    src: url('../fonts/GeneralSans-Bold.woff2') format('woff2'), url('../fonts/GeneralSans-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'General Sans';
    src: url('../fonts/GeneralSans-Regular.woff2') format('woff2'),
        url('../fonts/GeneralSans-Regular.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

*,
*:after,
*:before {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
html {
    -webkit-text-size-adjust: none; /* Prevent font scaling in landscape */
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    scroll-behavior: inherit;
}
body {
    margin: 0;
    margin: 0;
    padding: 0;
    font-family: var(--font-text);
    background-color: var(--color-white);
    color: var(--color-gray-900);
    font-size: var(--text-md);
    font-weight: 300;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}
img {
    border: 0;
    vertical-align: top;
    max-width: 100%;
    height: auto;
}
ul,
ol {
    margin: 0 0 24px 0;
    padding: 0;
    list-style-position: inside;
}
a {
    --_a-color: var(--a-color, --color-primary);
    color: var(--_a-color);
    text-decoration: none;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}
button {
    border: unset;
    background: unset;
    text-decoration: none;
    font-family: var(--font-text);
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    cursor: pointer;
}
button:focus {
    outline: 0;
}
a,
input,
button {
    outline: none !important;
}
input,
textarea,
select {
    outline: none;
    resize: none;
    font-family: var(--font-text);
}
p {
    padding-bottom: 16px;
}

strong {
    font-weight: 600;
}

svg {
    display: block;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    clip: rect(0, 0, 0, 0);
    overflow: hidden;
    padding: 0;
    margin: -1px;
    border: 0;
}

/* ================================
   Global Component Styles - START
================================ */

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    margin: 0;
    padding: 0 0 16px 0;
    font-weight: 600;
    font-family: var(--font-text);
    color: inherit;
    line-height: 1.2;
}

h1 strong,
h2 strong,
h3 strong,
h4 strong,
h5 strong,
h6 strong,
.h1 strong,
.h2 strong,
.h3 strong,
.h4 strong,
.h5 strong,
.h6 strong {
    font-weight: 600;
    color: var(--color-primary);
}

.h1,
h1 {
    font-size: var(--font-h1);
    font-family: var(--font-text);
    line-height: 1;
}
.h2,
h2 {
    font-size: var(--font-h2);
    font-family: var(--font-text);
    line-height: 1.2;
}
.h3,
h3 {
    font-size: var(--font-h3);
    font-family: var(--font-text);
    line-height: 1.2;
    font-weight: 500;
}
.h4,
h4 {
    font-size: var(--font-h4);
    font-family: var(--font-text);
    line-height: 1.2;
    font-weight: 500;
}
.h5,
h5 {
    font-size: var(--font-h5);
    font-family: var(--font-text);
    line-height: 1.5;
    font-weight: 500;
}
.h6,
h6 {
    font-size: var(--font-h6);
    font-family: var(--font-text);
    line-height: 1.5;
}

.container {
    width: 100%;
    max-width: var(--container-width);
    margin: 0 auto;
    padding-left: 16px;
    padding-right: 16px;
}

.cover-img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.btn {
    padding: 12px 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 8px;
    background: var(--color-primary);
    border: 2px solid var(--color-secondary);
    border-radius: 48px;
    font-family: var(--font-text);
    font-size: 18px;
    line-height: 24px;
    font-weight: 500;
    color: var(--color-white);
    transition: var(--transition);
    cursor: pointer;
    box-shadow: none;
}
.btn:hover,
.btn:focus {
    background: var(--color-secondary);
    color: var(--color-white);
    box-shadow: none;
}
.btn:hover svg,
.btn:focus svg {
    transform: translate(8px, 0px);
}
.btn svg {
    flex-shrink: 0;
    transition: transform 0.3s;
}

.is-outline {
    background: transparent;
    border-color: var(--color-primary);
    color: var(--color-primary);
}
.is-outline:hover,
.is-outline:focus {
    background: var(--color-primary);
    color: var(--color-white);
}

.is-white {
    background: var(--color-white);
    border-color: var(--color-secondary);
    color: var(--color-primary);
}
.is-white:hover,
.is-white:focus {
    background: var(--color-secondary);
    color: var(--color-white);
}

.is-white-outline {
    background: transparent;
    border-color: var(--color-white);
    color: var(--color-white);
}
.is-white-outline:hover,
.is-white-outline:focus {
    background: var(--color-secondary);
    color: var(--color-white);
}

.is-gradient {
    border-color: transparent;
    color: var(--color-primary);
    background: linear-gradient(white, white) padding-box,
        linear-gradient(to right, var(--color-primary), var(--color-secondary)) border-box;
}
.is-gradient:hover,
.is-gradient:focus {
    background: linear-gradient(white, white) padding-box,
        linear-gradient(to right, var(--color-primary), var(--color-secondary)) border-box;
    color: var(--color-secondary);
}

.is-link {
    background: transparent;
    border: 0;
    padding: 0;
    border-radius: 0;
    color: var(--color-primary);
}
.is-link:hover,
.is-link:focus {
    background: transparent;
    color: var(--color-secondary);
}

.is-block {
    width: 100%;
}

.is-section-gray {
    background: var(--color-gray-100);
}

.point-list ul {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0;
    gap: 8px;
    list-style: none;
}
.point-list ul li {
    position: relative;
    padding-left: 32px;
}
.point-list ul li::before {
    content: '';
    width: 24px;
    height: 24px;
    position: absolute;
    left: 0;
    top: 0;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.12109 14.873C2.22739 15.0699 2.43347 15.2129 2.68652 15.2129H8.09863V15.2139H15.3213L18.043 19.9404C18.2076 20.2265 18.0574 20.5889 17.7422 20.6758L5.94629 20.6768C5.67963 20.6768 5.4175 20.6063 5.18652 20.4727C4.95551 20.3389 4.76329 20.1467 4.62988 19.915L2.30371 15.875C2.17043 15.6434 2.0996 15.3807 2.09961 15.1133C2.09962 15.0324 2.10844 14.9523 2.12109 14.873ZM14.8125 3.95605C14.9351 3.74346 15.1706 3.65502 15.3867 3.69824C15.4419 3.77109 15.4967 3.85069 15.5479 3.93945L21.5625 14.3838C21.7095 14.639 21.7981 14.8826 21.8135 15.1191C21.8287 15.3536 21.7724 15.5876 21.6191 15.8262L18.9961 19.9102C18.7938 20.2251 18.5097 20.4749 18.1826 20.5957C18.3318 20.382 18.3606 20.0896 18.2168 19.8398L11.9697 8.99316L11.9404 8.94238L14.8125 3.95605ZM14.3496 3.20215C14.5856 3.19066 14.7798 3.2331 14.9473 3.31641L11.7295 8.87598L11.7002 8.92676L11.71 8.94336L8.21387 15.0137H2.68652C2.35907 15.0137 2.14806 14.6696 2.28809 14.3838C2.29366 14.3736 2.2979 14.3626 2.30371 14.3525L8.2666 4.19824L8.26758 4.19922V4.19824C8.39471 3.9775 8.57501 3.79192 8.79199 3.65918C9.009 3.52644 9.2559 3.45084 9.50977 3.43848L14.3496 3.20215ZM15.1172 3.42285C15.1451 3.44405 15.1735 3.465 15.2002 3.48926C15.1532 3.49435 15.1068 3.50464 15.0615 3.51855L15.1172 3.42285Z' fill='white' stroke='white' stroke-width='0.2'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
}

/* Header Style Start */

.header-wrap {
    position: relative;
    height: 92px;
}
.header-wrap header {
    position: fixed;
    top: 0;
    height: 92px;
    z-index: 9999;
    width: 100%;
    background: var(--gradient-blue);
    display: flex;
    align-items: center;
    transition: var(--var-transition);
}
.header-wrap.sticky header {
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
}
.header-wrap header > .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.header-wrap header .logo a {
    display: block;
}
.header-wrap .header-right {
    display: flex;
    align-items: center;
    gap: 24px;
}
.header-wrap .header-right .mobile-cta {
    display: none;
    padding: 16px 16px 24px;
    flex-shrink: 0;
}
.menu > ul {
    display: flex;
    /* gap: 24px; */
    margin: 0;
    list-style-type: none;
}
.menu > ul > li {
    display: flex;
    /* gap: 8px; */
    color: var(--color-white);
}
.menu > ul > li > a {
    display: block;
    font-size: 18px;
    line-height: 1.5;
    font-weight: 500;
    padding: 32px 0;
    color: var(--color-white);
    transition: var(--transition);
}
.menu > ul > li > a:hover {
    color: var(--color-secondary);
}
.nav-link-toggle {
    pointer-events: none;
    align-self: center;
}
.menu-toggle {
    display: none;
    color: var(--color-white);
}
.menu-toggle .icon-x,
.menu-toggle.active .icon-menu {
    display: none;
}
.menu-toggle.active .icon-x {
    display: block;
}
.menu > ul > li:hover .mega-menu {
    opacity: 1;
    visibility: visible;
}
.mega-menu {
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    background: rgba(255, 255, 255, 1);
    padding: 48px 0;
    color: var(--color-gray-900);
    max-height: 80dvh;
    overflow: auto;
    opacity: 0;
    visibility: hidden;
    transition: var(--transition);
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
}

.mega-menu .mega-menu-title {
    font-weight: 500;
    padding-bottom: 32px;
    color: var(--color-primary-400);
}

.menu-product-list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -12px;
    row-gap: 24px;
}
.menu-product-list .menu-product-list-item {
    width: 25%;
    padding: 0 12px;
}

.menu-product-item {
    height: 100%;
    display: flex;
    flex-direction: column;
    background: var(--color-gray-100);
    border-radius: 8px;
    padding: 24px;
    gap: 12px;
    border: 1px solid var(--color-gray-300);
    position: relative;
    z-index: 1;
}
.menu-product-item::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border: 1px solid transparent;
    border-radius: 8px;
    background: linear-gradient(var(--color-gray-100), var(--color-gray-100)) padding-box,
        linear-gradient(to right, var(--color-primary), var(--color-secondary)) border-box;
    z-index: -1;
    transition: var(--transition);
    opacity: 0;
}
.menu-product-item .menu-product-item-title {
    font-size: var(--text-md);
    font-weight: 500;
}
.menu-product-item .menu-product-item-text {
    font-size: var(--text-sm);
    font-weight: 300;
    letter-spacing: 0.008em;
}
.menu-product-item .menu-product-item-cta {
    padding-top: 4px;
    margin-top: auto;
}
.menu-product-item:hover {
    border-color: transparent;
}
.menu-product-item:hover::after {
    opacity: 1;
}

/* Header Style End */

/* Tab Style Start */
[data-tab-panel] {
    display: none;
    opacity: 0;
    transform: translate(0, 15px);
    transition: opacity 0.3s ease-in-out, transform 0.3s linear;
}

[data-tab-panel].active {
    display: block;
    opacity: 1;
    transform: translate(0, 0px);
}

[data-tab-target].is-mobile {
    display: none;
    width: 100%;
}

.tab-nav {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}
.tab-nav::after {
    content: '';
    width: 100%;
    height: 2px;
    position: absolute;
    left: 0;
    bottom: 0;
    background: var(--gradient-1);
}
.tab-nav-item {
    padding: 12px 24px;
    border-radius: 12px 12px 0 0;
    font-size: var(--text-md);
    font-weight: 500;
    color: var(--color-gray-900);
    transition: var(--transition);
    position: relative;
    z-index: 1;
    text-align: left;
}
.tab-nav-item:hover {
    color: var(--color-primary);
}
.tab-nav-item:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border: 2px solid transparent;
    border-bottom-width: 0;
    border-radius: 12px 12px 0 0;
    background: linear-gradient(white, white) padding-box,
        linear-gradient(to right, var(--color-primary), var(--color-secondary)) border-box;
    z-index: -1;
    transition: var(--transition);
    opacity: 0;
}
.tab-nav-item.is-mobile {
    border: 2px solid var(--color-gray-200);
    border-radius: 12px;
    padding-right: 32px;
    padding-left: 16px;
    font-size: var(--text-base);
}
.tab-nav-item.is-mobile:before {
    content: '';
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translate(0, -50%);
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M6 9l6 6l6 -6' /%3E%3C/svg%3E");
    background-repeat: no-repeat;
    transition: var(--transition);
}
.tab-nav-item.is-mobile.active:before {
    transform: translate(0, -50%) rotate(180deg);
}
.tab-nav-item.is-mobile:after {
    border-bottom-width: 2px;
    border-radius: 12px;
    width: calc(100% + 4px);
    height: calc(100% + 4px);
    inset: -2px;
}
.tab-nav-item.active {
    position: relative;
    z-index: 1;
    color: var(--color-primary);
}
.tab-nav-item.active::after {
    opacity: 1;
}

.tab-content {
    padding-top: 24px;
}

/* Tab Style End */

/* Sticky Note Style Start */
.sticky-note {
    background: var(--color-secondary);
    padding: 10px 0;
    position: sticky;
    top: 92px;
    z-index: 1234;
}
.sticky-note .container {
    display: flex;
    align-items: center;
}
.sticky-note-content {
    font-size: var(--text-md);
    font-weight: 500;
    color: var(--color-gray-900);
    width: 100%;
    text-align: center;
}
.sticky-note-content .btn.is-link {
    margin-left: 8px;
    color: var(--color-gray-900);
    text-decoration: underline;
}
.sticky-note-content .btn.is-link:hover {
    color: var(--color-white);
}
.sticky-note .note-close {
    color: var(--color-gray-900);
}
/* Sticky Note Style End */

/* Footer Style Start */
.footer-wrap {
    position: relative;
    overflow: hidden;
    background: var(--gradient-blue);
    color: var(--color-gray-100);
    padding: 160px 80px 40px;
}
.footer-wrap .footer-shape-top {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    display: flex;
    color: var(--color-white);
}
.footer-wrap .footer-shape-top.is-shape-gray {
    color: var(--color-gray-100);
}
.footer-wrap .footer-shape-top .f-shape {
    flex-shrink: 0;
}
.footer-wrap .footer-shape-top .shape-line {
    width: 100%;
    background: currentColor;
}
.footer-row {
    display: flex;
    justify-content: space-between;
    gap: 48px;
    padding-bottom: 40px;
}
.footer-row .col-contact-info .f-logo {
    padding-bottom: 16px;
}
.footer-row .col-contact-info .f-logo a {
    display: inline-block;
}
.footer-row .col-contact-info .f-info-text {
    font-size: var(--text-md);
}
.footer-row .col-contact-info .f-info-text .cta {
    padding-top: 8px;
}
.footer-row .col-contact-info .f-info-text .social-links {
    padding-top: 24px;
}
.footer-row .col-contact-info {
    max-width: 277px;
}

.footer-title {
    font-size: var(--font-h5);
    line-height: 1.5;
    font-weight: 500;
    padding-bottom: 24px;
}
.quick-links {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.quick-links li a {
    display: inline-block;
    color: var(--color-gray-100);
    transition: var(--transition);
    font-size: var(--text-md);
}
.quick-links li a:hover {
    color: var(--color-secondary);
}

.social-links {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}
.social-links a {
    display: block;
    color: var(--color-white);
    transition: var(--transition);
}
.social-links a:hover {
    color: var(--color-secondary);
}

.copyright-wrap {
    position: relative;
    padding-top: 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.copyright-wrap:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 1px;
    background: #ffffff;
    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0) 0%,
        rgba(255, 255, 255, 0.32) 50%,
        rgba(255, 255, 255, 0) 100%
    );
}

.terms-link {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 24px;
}
.terms-link li a {
    display: inline-block;
    color: var(--color-gray-100);
    transition: var(--transition);
    font-size: var(--text-md);
}
.terms-link li a:hover {
    color: var(--color-secondary);
}

/* Footer Style End */

/* Banner Style Start */
.banner-section {
    position: relative;
    overflow: hidden;
}
.banner-section .cover-img {
    opacity: 0.5;
}
.banner-section .banner-row {
    display: flex;
    flex-wrap: wrap;
    position: relative;
}
.banner-section .banner-row .banner-col-left {
    width: 50%;
    padding: 94px 0 94px 16px;
}
.banner-section .banner-content {
    margin-left: auto;
    max-width: 700px;
    width: 100%;
}
.banner-section .banner-content .banner-logo {
    padding-bottom: 16px;
    overflow: hidden;
}
.banner-section .banner-content .banner-content-text {
    max-width: 570px;
    font-weight: 300;
    font-size: var(--text-md);
}
.banner-section .banner-content .banner-content-cta {
    padding-top: 8px;
}
.banner-section .banner-row .banner-col-right {
    width: 50%;
    display: grid;
    place-items: center;
    padding: 16px;
}
/* Banner Style End */

.title-wrap {
    text-align: center;
    padding-bottom: 40px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.title-wrap :is(h1, h2, h3, h4, h5, p) {
    padding-bottom: 0;
    margin-bottom: 0;
}
.title-wrap p {
    max-width: 926px;
    margin: 0 auto;
}
.title-wrap .cta {
    padding-top: 8px;
}

.title-wrap.is-title-left {
    text-align: left;
}
.title-wrap.is-title-left p {
    margin: 0;
}
.title-wrap.is-title-white {
    color: var(--color-white);
}
.title-wrap.is-title-white :is(h1, h2, h3, h4, h5) strong {
    color: var(--color-secondary);
}

.statistics-section {
    padding-top: var(--section-top-padding);
    padding-bottom: var(--section-bottom-padding);
    background: linear-gradient(95.69deg, #b3cae3 0%, #ebf4ff 100%);
}

.statistics-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 -12px;
    row-gap: 24px;
}
.statistics-list-item {
    width: 20%;
    padding: 0 12px;
}
.statistic-item {
    height: 100%;
    display: flex;
    flex-direction: column;
    text-align: center;
    gap: 12px;
    border: 2px solid transparent;
    border-radius: 24px;
    padding: 24px;
    background: var(--gradient-border);
    font-weight: 400;
}
.statistic-item :is(h3, p, h2) {
    padding-bottom: 0;
}
.statistic-item .h3 {
    color: var(--color-primary);
}

.trusted-clients-section {
    padding-top: var(--section-top-padding);
    padding-bottom: var(--section-bottom-padding);
}

.trusted-clients-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 40px;
}
.trusted-clients-list .trusted-client-item {
    max-width: 190px;
}

.solutions-section {
    padding-top: var(--section-top-padding);
    padding-bottom: var(--section-bottom-padding);
}
.solutions-section .tabs {
    max-width: 1162px;
    margin: 0 auto;
}
.solutions-section .tabs .tab-nav {
    justify-content: center;
}
.solution-tab-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0 -12px;
    row-gap: 24px;
    padding-top: 16px;
}
.solution-tab-row .solution-tab-col-left {
    width: 50%;
    padding: 0 12px;
    display: grid;
    place-items: center;
}
.solution-tab-row .solution-tab-col-right {
    width: 50%;
    padding: 0 12px;
}
.solution-tab-row .solution-tab-col-right .cta {
    padding-top: 8px;
}

.industry-section {
    padding-top: var(--section-top-padding);
    padding-bottom: var(--section-bottom-padding);
}

.embla {
    overflow: hidden;
    position: relative;
}
.embla__container {
    display: flex;
}
.embla__slide {
    flex: 0 0 100%;
    min-width: 0;
}

.slider-dot {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding-top: 40px;
}
.slider-dot .embla__dot {
    width: 16px;
    height: 16px;
    border-radius: 100%;
    background: var(--color-secondary-200);
    box-shadow: 0 0 0 var(--color-secondary-100);
    transition: var(--transition);
}

.slider-dot .embla__dot.embla__dot--selected {
    background: var(--color-secondary);
    box-shadow: 0 0 0 6px var(--color-secondary-100);
}
.slider-dot.is-hide-desktop {
    display: none;
}

.slider-arrow {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
    background: var(--color-secondary);
    color: var(--color-gray-900);
    position: absolute;
    top: calc(50% - 28px);
    transform: translate(0px, -50%);
}

.slider-arrow.embla__prev {
    left: -80px;
}
.slider-arrow.embla__next {
    right: -80px;
}

.slider-actions.is-arrow-center {
    display: flex;
    justify-content: center;
    gap: 12px;
    padding-top: 40px;
}
.slider-actions.is-arrow-center .slider-arrow {
    position: relative;
    top: 0;
    left: 0;
    right: 0;
    transform: translate(0, 0);
}

.industry-slider-wrap {
    --slide-spacing: 24px;
    --slide-size: 33.33%;
    overflow: visible;
}
.industry-slider-wrap .industry-slider-viewport {
    overflow: hidden;
}
.industry-slider-wrap .embla__container {
    touch-action: pan-y pinch-zoom;
    margin-left: calc(var(--slide-spacing) * -1);
}
.industry-slider-wrap .embla__slide {
    padding-left: var(--slide-spacing);
    flex: 0 0 var(--slide-size);
}

.industry-item {
    position: relative;
    overflow: hidden;
    border-radius: 24px;
    aspect-ratio: 1 / 1.221;
}
.industry-item .industry-item-title {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    padding: 42px 32px;
    color: var(--color-white);
    text-align: center;
    font-weight: 500;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    background: linear-gradient(180deg, rgba(0, 37, 97, 0) 0%, rgba(0, 37, 97, 0) 50%, var(--color-primary) 100%);
}
.industry-item .industry-item-title .h4 {
    font-weight: 500;
    padding: 0;
    transition: var(--transition);
}
.industry-item .industry-item-overlay {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border-radius: 24px;
    background: var(--color-primary);
    color: var(--color-white);
    display: flex;
    flex-direction: column;
    gap: 24px;
    transition: var(--transition);
    font-size: var(--text-base);
    opacity: 0;
    visibility: hidden;
}
.industry-item .industry-item-overlay .h4 {
    padding-bottom: 12px;
    font-weight: 500;
}
.industry-item .industry-item-info {
    height: 100%;
    overflow: auto;
    padding: 32px 32px 0;
}
.industry-item .industry-item-cta {
    margin-top: auto;
    flex-shrink: 0;
    padding: 0 32px 32px;
}
.industry-item .industry-item-solve-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.industry-item .industry-item-solve-title {
    font-weight: 500;
    padding-bottom: 0;
}
.industry-item .industry-item-solve-list ul {
    margin: 0;
}

.industry-item:hover .industry-item-overlay,
.industry-item:focus .industry-item-overlay {
    opacity: 1;
    visibility: visible;
}
.industry-item:hover .industry-item-title .h4,
.industry-item:focus .industry-item-title .h4 {
    opacity: 0;
    transform: translate(0, 30px);
}

.expert-services-section {
    padding-top: var(--section-top-padding);
    padding-bottom: var(--section-bottom-padding);
}
.expert-services-section .tabs {
    max-width: 1162px;
    margin: 0 auto;
}
.expert-service-tabs {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -12px;
}
.expert-service-tabs .expert-service-tab-nav {
    width: 50%;
    padding: 0 12px;
}
.expert-service-tabs .expert-service-tab-nav .expert-service-nav-item {
    padding: 24px 0;
    max-width: 450px;
    width: 100%;
    border-bottom: 1px solid var(--color-secondary);
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: var(--font-h5);
    font-weight: 500;
    color: var(--color-gray-900);
    transition: var(--transition);
}
.expert-service-tabs .expert-service-tab-nav .expert-service-nav-item:hover {
    color: var(--color-primary);
}
.expert-service-tabs .expert-service-tab-nav .expert-service-nav-item .icon {
    transform: rotate(90deg);
    color: var(--color-primary);
    transition: var(--transition);
}
.expert-service-tabs .expert-service-tab-nav .expert-service-nav-item:last-child {
    border-bottom: 0;
}
.expert-service-tabs .expert-service-tab-nav .expert-service-nav-item.active {
    color: var(--color-primary);
}
.expert-service-tabs .expert-service-tab-nav .expert-service-nav-item.active .icon {
    transform: rotate(0deg);
}
.expert-service-tabs .tab-content {
    width: 50%;
    padding: 0 12px;
}

.expert-service-item .expert-service-item-title {
    color: var(--color-primary);
}
.expert-service-item .expert-service-item-img {
    position: relative;
    aspect-ratio: 1 / 0.421;
    overflow: hidden;
    border-radius: 24px;
    margin-bottom: 16px;
}
.expert-service-item .expert-service-item-text {
    padding-bottom: 16px;
}
.expert-service-item .expert-service-item-cta {
    padding-top: 8px;
}

.transformation-cta-section {
    padding-top: var(--section-top-padding);
    padding-bottom: var(--section-bottom-padding);
    background: var(--gradient-blue);
    position: relative;
    overflow: hidden;
}
.transformation-cta-section .container {
    position: relative;
    z-index: 1;
}
.transformation-cta-section .title-wrap {
    max-width: 686px;
    padding-bottom: 0;
}

.transformation-cta-left-img,
.transformation-cta-right-img {
    position: absolute;
    bottom: 0;
}
.transformation-cta-left-img {
    left: 0;
}
.transformation-cta-right-img {
    right: 0;
}

.home-about-section {
    position: relative;
    padding: 458px 0 80px;
    background: var(--color-primary);
    color: var(--color-white);
}
.home-about-section .home-about-bg-img,
.home-about-section .home-about-img-overlay {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.home-about-section .home-about-img-overlay {
    background: linear-gradient(
        180deg,
        rgba(0, 37, 97, 0) 0%,
        rgba(0, 37, 97, 0) 40%,
        var(--color-primary) 70%,
        var(--color-primary) 100%
    );
    z-index: 1;
}
.home-about-section .container {
    position: relative;
    z-index: 2;
}

.home-about-row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -12px;
    align-items: center;
    padding-bottom: 24px;
}
.home-about-row .home-about-col-left {
    width: 41.66666667%;
    padding: 0 12px;
}
.home-about-row .home-about-col-left p {
    padding-bottom: 0;
}
.home-about-row .home-about-col-right {
    width: 58.33333333%;
    padding: 0 12px;
}

.about-statistics {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -12px;
    row-gap: 24px;
}
.about-statistics .about-statistics-item {
    width: 25%;
    padding: 0 12px;
    border-right: 1px solid var(--color-secondary);
    font-size: var(--text-base);
    text-align: center;
}
.about-statistics .about-statistics-item:last-child {
    border-right: 0;
}
.about-statistics-item .about-statistics-item-title {
    font-size: var(--font-h3);
    font-weight: 500;
    padding-bottom: 8px;
}

.contact-section {
    padding-top: var(--section-top-padding);
    padding-bottom: var(--section-bottom-padding);
}
.contact-row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -12px;
    row-gap: 24px;
}
.contact-row .contact-col-left {
    width: 41.66666667%;
    padding: 0 12px;
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.contact-row .contact-col-right {
    width: 58.33333333%;
    padding: 0 12px;
}

.contact-form-box {
    padding: 32px;
    height: 100%;
    margin-left: 36px;
    border-radius: 24px;
    border: 2px solid transparent;
    background: var(--gradient-border-gray);
}

.contact-info-box {
    background: var(--color-gray-100);
    border-radius: 24px;
    padding: 40px;
}

.contact-info-box-item {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: 1px solid var(--color-gray-300);
}

.contact-info-box-item:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: 0;
}

.contact-info-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.contact-info-item-icon {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--color-white);
    border: 1px solid var(--color-gray-300);
    border-radius: 100%;
    color: var(--color-secondary);
}

.contact-info-item-content {
    flex: 1;
}

.contact-info-item-content h3 {
    color: var(--color-primary);
    font-weight: 500;
    padding-bottom: 6px;
    margin: 0;
}

.contact-info-item-content p {
    font-size: var(--text-md);
    font-weight: 300;
    color: var(--color-gray-900);
    padding-top: 6px;
    padding-bottom: 0;
    line-height: 1.6;
}

.contact-info-item-content p a {
    display: inline-block;
    color: var(--color-gray-900);
    text-decoration: none;
    transition: var(--transition);
}

.contact-info-item-content p a:hover {
    color: var(--color-secondary);
}

.home-resources-section {
    padding-top: var(--section-top-padding);
    padding-bottom: var(--section-bottom-padding);
}
.resources-slider-wrap {
    --slide-spacing: 24px;
    --slide-size: 33.33%;
    overflow: visible;
}
.resources-slider-wrap .resources-slider-viewport {
    overflow: hidden;
}
.resources-slider-wrap .embla__container {
    touch-action: pan-y pinch-zoom;
    margin-left: calc(var(--slide-spacing) * -1);
}
.resources-slider-wrap .embla__slide {
    padding-left: var(--slide-spacing);
    flex: 0 0 var(--slide-size);
}

.resource-item {
    padding: 24px;
    border-radius: 24px;
    background: var(--color-white);
    border: 1px solid var(--color-gray-300);
    display: flex;
    flex-direction: column;
    gap: 24px;
    height: 100%;
}
.resource-item .resource-item-img {
    position: relative;
    aspect-ratio: 1 / 0.542;
    overflow: hidden;
}
.resource-item .resource-item-img > a {
    display: block;
    position: relative;
    aspect-ratio: 1 / 0.542;
}
.resource-item .resource-item-img .cover-img {
    border-radius: 16px;
}
.resource-item .resource-item-tag {
    position: absolute;
    left: 0;
    top: 0;
    padding: 8px 0 0 8px;
    z-index: 1;
}
.resource-item .resource-item-title {
    padding-bottom: 0;
}
.resource-item .resource-item-title a {
    display: inline-block;
    color: var(--color-gray-900);
    transition: var(--transition);
}
.resource-item .resource-item-title a:hover {
    color: var(--color-secondary);
}
.resource-item .resource-item-cta {
    margin-top: auto;
    padding-top: 8px;
}

.badge {
    display: inline-block;
    font-size: var(--text-sm);
    font-weight: 500;
    color: var(--color-gray-900);
    padding: 4px 18px;
    border: 2px solid var(--color-primary-100);
    background: var(--color-primary-50);
    border-radius: 42px;
}

.video-play-icon {
    position: absolute;
    inset: 0;
    margin: auto;
    width: 50px;
    height: 50px;
    background: rgba(255, 255, 255, 0.24);
    border: 1px solid rgba(255, 255, 255, 0.28);
    color: var(--color-white);
    border-radius: 100%;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
}
.video-play-icon:before {
    content: '';
    position: absolute;
    width: 80px;
    height: 80px;
    top: -15px;
    left: -15px;
    background: rgba(255, 255, 255, 0.16);
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 100%;
}

.testimonial-section {
    padding-top: var(--section-top-padding);
    padding-bottom: var(--section-bottom-padding);
}

.testimonial-slider-wrap {
    --slide-spacing: 24px;
    --slide-size: 92%;
    overflow: visible;
}
.testimonial-slider-wrap .testimonial-slider-viewport {
    overflow: hidden;
}
.testimonial-slider-wrap .embla__container {
    touch-action: pan-y pinch-zoom;
    margin-left: calc(var(--slide-spacing) * -1);
}
.testimonial-slider-wrap .embla__slide {
    padding-left: var(--slide-spacing);
    flex: 0 0 var(--slide-size);
    max-width: 1424px;
    opacity: 0.3;
    transition: opacity 0.3s;
}
.testimonial-slider-wrap .embla__slide.is-snapped {
    opacity: 1;
}

.testimonial-item {
    border-radius: 24px;
    border: 2px solid transparent;
    background: var(--gradient-border-gray);
    padding: 40px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    height: 100%;
}
.testimonial-item .testimonial-item-img {
    width: 34.09%;
}
.testimonial-item .testimonial-item-img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    border-radius: 24px;
}
.testimonial-item .testimonial-item-content {
    width: 65.91%;
    padding-left: 40px;
    display: flex;
    flex-direction: column;
}

.testimonial-item .testimonial-item-text {
    padding: 0 60px;
    font-size: var(--font-h3);
    line-height: 1.2;
}
.testimonial-item .quote-icon {
    color: var(--color-secondary-200);
}
.testimonial-item .quote-icon svg {
    max-width: 140px;
    height: auto;
}
.testimonial-item .quote-icon.is-bottom-quote {
    margin-left: auto;
}
.testimonial-item .testimonial-item-by {
    padding: 0 50px;
}
.testimonial-item .testimonial-item-by .h4 {
    padding-bottom: 8px;
    color: var(--color-primary);
}
.testimonial-item .testimonial-item-by p {
    padding-bottom: 0;
}
