@charset "UTF-8";
/* Font Family*/
@import url("https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Raleway:ital,wght@0,100..900;1,100..900&family=Urbanist:ital,wght@0,100..900;1,100..900&display=swap");

/* ========================= Css Variables Start ======================== */
:root {
    /* Font Family */
    --body-font: "Urbanist", sans-serif;
    --heading-font: "Urbanist", sans-serif;
    --secondary-font: "Raleway", sans-serif;
    /* ========================= Theme Color Start ============================= */
    /* Base Color */
    --base-h: 145;
    --base-s: 63%;
    --base-l: 49%;
    --base: var(--base-h) var(--base-s) var(--base-l);
    --base-d-100: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.1);
    --base-d-200: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.2);
    --base-d-300: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.3);
    --base-d-400: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.4);
    --base-d-500: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.5);
    --base-d-600: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.6);
    --base-d-700: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.7);
    --base-d-800: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.8);
    --base-d-900: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.9);
    --base-d-1000: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 1);
    --base-l-100: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.1);
    --base-l-200: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.2);
    --base-l-300: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.3);
    --base-l-400: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.4);
    --base-l-500: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.5);
    --base-l-600: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.6);
    --base-l-700: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.7);
    --base-l-800: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.8);
    --base-l-900: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.9);
    --base-l-1000: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 1);
    /* ========================= Theme Color End ============================= */
    /* ========================= Color Variables Start =========================== */
    --white: 0 0% 100%;
    --body-color: 220 10% 46%;
    --heading-color: 224 71% 4%;
    --dark-h: 240;
    --dark-s: 100%;
    --dark-l: 11%;
    --dark: var(--dark-h) var(--dark-s) var(--dark-l);
    --dark-d-100: var(--dark-h) var(--dark-s) calc(var(--dark-l) - var(--dark-l) * 0.1);
    --dark-d-200: var(--dark-h) var(--dark-s) calc(var(--dark-l) - var(--dark-l) * 0.2);
    --dark-d-300: var(--dark-h) var(--dark-s) calc(var(--dark-l) - var(--dark-l) * 0.3);
    --dark-d-400: var(--dark-h) var(--dark-s) calc(var(--dark-l) - var(--dark-l) * 0.4);
    --dark-d-500: var(--dark-h) var(--dark-s) calc(var(--dark-l) - var(--dark-l) * 0.5);
    --dark-l-100: var(--dark-h) calc(var(--dark-s)) calc(var(--dark-l) + (100% - var(--dark-l)) * 0.1);
    --dark-l-200: var(--dark-h) calc(var(--dark-s)) calc(var(--dark-l) + (100% - var(--dark-l)) * 0.2);
    --dark-l-300: var(--dark-h) calc(var(--dark-s)) calc(var(--dark-l) + (100% - var(--dark-l)) * 0.3);
    --dark-l-400: var(--dark-h) calc(var(--dark-s)) calc(var(--dark-l) + (100% - var(--dark-l)) * 0.4);
    --dark-l-500: var(--dark-h) calc(var(--dark-s)) calc(var(--dark-l) + (100% - var(--dark-l)) * 0.5);
    --black: 0 0% 0%;
    --light: 218 14% 84%;
    --border-color: 240 5% 92%;
    --border-light: 220 13% 91%;
    --border-black: 216 31% 17%;
    --section-bg: 220 14% 96%;
    --light-bg: 210 20% 98%;
    --background-color: 0 0% 100%;
    /* ================================ Box Shadow Start =============================== */
    --header-box-shadow: 0px -1px 15px 3px hsl(var(--black) / 0.3);
    --mobile-box-shadow: 0px -1px 5px 0px hsl(var(--black) / 0.92);
    --box-shadow: 0px 2px 15px hsl(var(--black) / 0.05);
    /* ================================ Box Shadow End =============================== */
    /* ============================== Bootstrap Modifier Start ============================== */
    /* Primary Color */
    --primary-h: 224;
    --primary-s: 71%;
    --primary-l: 4%;
    --primary: var(--primary-h) var(--primary-s) var(--primary-l);
    --primary-d-100: var(--primary-h) var(--primary-s) calc(var(--primary-l) - var(--primary-l) * 0.1);
    --primary-d-200: var(--primary-h) var(--primary-s) calc(var(--primary-l) - var(--primary-l) * 0.2);
    --primary-d-300: var(--primary-h) var(--primary-s) calc(var(--primary-l) - var(--primary-l) * 0.3);
    --primary-d-400: var(--primary-h) var(--primary-s) calc(var(--primary-l) - var(--primary-l) * 0.4);
    --primary-d-500: var(--primary-h) var(--primary-s) calc(var(--primary-l) - var(--primary-l) * 0.5);
    --primary-l-100: var(--primary-h) calc(var(--primary-s)) calc(var(--primary-l) + (100% - var(--primary-l)) * 0.1);
    --primary-l-200: var(--primary-h) calc(var(--primary-s)) calc(var(--primary-l) + (100% - var(--primary-l)) * 0.2);
    --primary-l-300: var(--primary-h) calc(var(--primary-s)) calc(var(--primary-l) + (100% - var(--primary-l)) * 0.3);
    --primary-l-400: var(--primary-h) calc(var(--primary-s)) calc(var(--primary-l) + (100% - var(--primary-l)) * 0.4);
    --primary-l-500: var(--primary-h) calc(var(--primary-s)) calc(var(--primary-l) + (100% - var(--primary-l)) * 0.5);
    /* Secondary Color */
    --secondary-h: 217;
    --secondary-s: 21%;
    --secondary-l: 27%;
    --secondary: var(--secondary-h) var(--secondary-s) var(--secondary-l);
    --secondary-d-100: var(--secondary-h) var(--secondary-s) calc(var(--secondary-l) - var(--secondary-l) * 0.1);
    --secondary-d-200: var(--secondary-h) var(--secondary-s) calc(var(--secondary-l) - var(--secondary-l) * 0.2);
    --secondary-d-300: var(--secondary-h) var(--secondary-s) calc(var(--secondary-l) - var(--secondary-l) * 0.3);
    --secondary-d-400: var(--secondary-h) var(--secondary-s) calc(var(--secondary-l) - var(--secondary-l) * 0.4);
    --secondary-d-500: var(--secondary-h) var(--secondary-s) calc(var(--secondary-l) - var(--secondary-l) * 0.5);
    --secondary-l-100: var(--secondary-h) calc(var(--secondary-s)) calc(var(--secondary-l) + (100% - var(--secondary-l)) * 0.1);
    --secondary-l-200: var(--secondary-h) calc(var(--secondary-s)) calc(var(--secondary-l) + (100% - var(--secondary-l)) * 0.2);
    --secondary-l-300: var(--secondary-h) calc(var(--secondary-s)) calc(var(--secondary-l) + (100% - var(--secondary-l)) * 0.3);
    --secondary-l-400: var(--secondary-h) calc(var(--secondary-s)) calc(var(--secondary-l) + (100% - var(--secondary-l)) * 0.4);
    --secondary-l-500: var(--secondary-h) calc(var(--secondary-s)) calc(var(--secondary-l) + (100% - var(--secondary-l)) * 0.5);
    /* Success Color */
    --success-h: 142;
    --success-s: 71%;
    --success-l: 45%;
    --success: var(--success-h) var(--success-s) var(--success-l);
    --success-d-100: var(--success-h) var(--success-s) calc(var(--success-l) - var(--success-l) * 0.1);
    --success-d-200: var(--success-h) var(--success-s) calc(var(--success-l) - var(--success-l) * 0.2);
    --success-d-300: var(--success-h) var(--success-s) calc(var(--success-l) - var(--success-l) * 0.3);
    --success-d-400: var(--success-h) var(--success-s) calc(var(--success-l) - var(--success-l) * 0.4);
    --success-d-500: var(--success-h) var(--success-s) calc(var(--success-l) - var(--success-l) * 0.5);
    --success-l-100: var(--success-h) calc(var(--success-s)) calc(var(--success-l) + (100% - var(--success-l)) * 0.1);
    --success-l-200: var(--success-h) calc(var(--success-s)) calc(var(--success-l) + (100% - var(--success-l)) * 0.2);
    --success-l-300: var(--success-h) calc(var(--success-s)) calc(var(--success-l) + (100% - var(--success-l)) * 0.3);
    --success-l-400: var(--success-h) calc(var(--success-s)) calc(var(--success-l) + (100% - var(--success-l)) * 0.4);
    --success-l-500: var(--success-h) calc(var(--success-s)) calc(var(--success-l) + (100% - var(--success-l)) * 0.5);
    /* Danger Color */
    --danger-h: 0;
    --danger-s: 84%;
    --danger-l: 60%;
    --danger: var(--danger-h) var(--danger-s) var(--danger-l);
    --danger-d-100: var(--danger-h) var(--danger-s) calc(var(--danger-l) - var(--danger-l) * 0.1);
    --danger-d-200: var(--danger-h) var(--danger-s) calc(var(--danger-l) - var(--danger-l) * 0.2);
    --danger-d-300: var(--danger-h) var(--danger-s) calc(var(--danger-l) - var(--danger-l) * 0.3);
    --danger-d-400: var(--danger-h) var(--danger-s) calc(var(--danger-l) - var(--danger-l) * 0.4);
    --danger-d-500: var(--danger-h) var(--danger-s) calc(var(--danger-l) - var(--danger-l) * 0.5);
    --danger-l-100: var(--danger-h) calc(var(--danger-s)) calc(var(--danger-l) + (100% - var(--danger-l)) * 0.1);
    --danger-l-200: var(--danger-h) calc(var(--danger-s)) calc(var(--danger-l) + (100% - var(--danger-l)) * 0.2);
    --danger-l-300: var(--danger-h) calc(var(--danger-s)) calc(var(--danger-l) + (100% - var(--danger-l)) * 0.3);
    --danger-l-400: var(--danger-h) calc(var(--danger-s)) calc(var(--danger-l) + (100% - var(--danger-l)) * 0.4);
    --danger-l-500: var(--danger-h) calc(var(--danger-s)) calc(var(--danger-l) + (100% - var(--danger-l)) * 0.5);
    /* Warning Color */
    --warning-h: 47;
    --warning-s: 100%;
    --warning-l: 50%;
    --warning: var(--warning-h) var(--warning-s) var(--warning-l);
    --warning-d-100: var(--warning-h) var(--warning-s) calc(var(--warning-l) - var(--warning-l) * 0.1);
    --warning-d-200: var(--warning-h) var(--warning-s) calc(var(--warning-l) - var(--warning-l) * 0.2);
    --warning-d-300: var(--warning-h) var(--warning-s) calc(var(--warning-l) - var(--warning-l) * 0.3);
    --warning-d-400: var(--warning-h) var(--warning-s) calc(var(--warning-l) - var(--warning-l) * 0.4);
    --warning-d-500: var(--warning-h) var(--warning-s) calc(var(--warning-l) - var(--warning-l) * 0.5);
    --warning-l-100: var(--warning-h) calc(var(--warning-s)) calc(var(--warning-l) + (100% - var(--warning-l)) * 0.1);
    --warning-l-200: var(--warning-h) calc(var(--warning-s)) calc(var(--warning-l) + (100% - var(--warning-l)) * 0.2);
    --warning-l-300: var(--warning-h) calc(var(--warning-s)) calc(var(--warning-l) + (100% - var(--warning-l)) * 0.3);
    --warning-l-400: var(--warning-h) calc(var(--warning-s)) calc(var(--warning-l) + (100% - var(--warning-l)) * 0.4);
    --warning-l-500: var(--warning-h) calc(var(--warning-s)) calc(var(--warning-l) + (100% - var(--warning-l)) * 0.5);
    /* Info Color */
    --info-h: 217;
    --info-s: 91%;
    --info-l: 60%;
    --info: var(--info-h) var(--info-s) var(--info-l);
    --info-d-100: var(--info-h) var(--info-s) calc(var(--info-l) - var(--info-l) * 0.1);
    --info-d-200: var(--info-h) var(--info-s) calc(var(--info-l) - var(--info-l) * 0.2);
    --info-d-300: var(--info-h) var(--info-s) calc(var(--info-l) - var(--info-l) * 0.3);
    --info-d-400: var(--info-h) var(--info-s) calc(var(--info-l) - var(--info-l) * 0.4);
    --info-d-500: var(--info-h) var(--info-s) calc(var(--info-l) - var(--info-l) * 0.5);
    --info-l-100: var(--info-h) calc(var(--info-s)) calc(var(--info-l) + (100% - var(--info-l)) * 0.1);
    --info-l-200: var(--info-h) calc(var(--info-s)) calc(var(--info-l) + (100% - var(--info-l)) * 0.2);
    --info-l-300: var(--info-h) calc(var(--info-s)) calc(var(--info-l) + (100% - var(--info-l)) * 0.3);
    --info-l-400: var(--info-h) calc(var(--info-s)) calc(var(--info-l) + (100% - var(--info-l)) * 0.4);
    --info-l-500: var(--info-h) calc(var(--info-s)) calc(var(--info-l) + (100% - var(--info-l)) * 0.5);
    /* ============================== Bootstrap Modifier End ============================== */
}

/* ========================= Css Variables End =========================== */
/* Fully Fit image Css */
.fit-image {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

/* ============================= Display Flex Css Start ============================= */
.flex-wrap, .form--radio {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flex-align {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.flex-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.flex-between {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

/* ============================= Display Flex Css End ============================= */
/* ===================== Font Size For responsive devices Start =================== */
.fs-10 {
    font-size: 0.625rem;
}

.fs-11 {
    font-size: 0.6875rem;
}

.fs-12 {
    font-size: 0.75rem;
}

.fs-13 {
    font-size: 0.8125rem;
}

.fs-14 {
    font-size: 0.875rem;
}

.fs-15 {
    font-size: 0.9375rem;
}

.fs-16 {
    font-size: 1rem;
}

@media screen and (max-width: 1199px) {
    .fs-16 {
        font-size: 0.9375rem;
    }
}

.fs-17 {
    font-size: 1.0625rem;
}

@media screen and (max-width: 1199px) {
    .fs-17 {
        font-size: 1rem;
    }
}

@media screen and (max-width: 767px) {
    .fs-17 {
        font-size: 0.9375rem;
    }
}

.fs-18 {
    font-size: 1.125rem;
}

@media screen and (max-width: 1399px) {
    .fs-18 {
        font-size: 1.0625rem;
    }
}

@media screen and (max-width: 767px) {
    .fs-18 {
        font-size: 1rem;
    }
}

.fs-20 {
    font-size: 1.25rem;
}

@media screen and (max-width: 1399px) {
    .fs-20 {
        font-size: 1.125rem;
    }
}

@media screen and (max-width: 767px) {
    .fs-20 {
        font-size: 1.0625rem;
    }
}

/* ===================== Font Size For responsive devices End =================== */
/* ================================= Common Typography Css Start =========================== */
* {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

body {
    font-family: var(--body-font);
    color: hsl(var(--body-color));
    word-break: break-word;
    background-color: hsl(var(--light-bg));
    min-height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

p {
    font-weight: 400;
    margin: 0;
    color: hsl(var(--body-color));
    font-size: 1rem;
    line-height: 1.3;
}

span {
    display: inline-block;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    font-family: var(--heading-font);
    color: hsl(var(--heading-color));
    line-height: 1.1;
    font-weight: 700;
}

h1 {
    font-size: 4rem;
}

@media screen and (max-width: 1399px) {
    h1 {
        font-size: 3.375rem;
    }
}

@media screen and (max-width: 1199px) {
    h1 {
        font-size: 3rem;
    }
}

@media screen and (max-width: 991px) {
    h1 {
        font-size: 2.625rem;
    }
}

@media screen and (max-width: 767px) {
    h1 {
        font-size: 2.25rem;
    }
}

@media screen and (max-width: 575px) {
    h1 {
        font-size: 2rem;
    }
}

h2 {
    font-size: 3rem;
}

@media screen and (max-width: 1399px) {
    h2 {
        font-size: 2.625rem;
    }
}

@media screen and (max-width: 1199px) {
    h2 {
        font-size: 2.25rem;
    }
}

@media screen and (max-width: 991px) {
    h2 {
        font-size: 2rem;
    }
}

@media screen and (max-width: 575px) {
    h2 {
        font-size: 1.75rem;
    }
}

h3 {
    font-size: 2.5rem;
}

@media screen and (max-width: 1399px) {
    h3 {
        font-size: 2.375rem;
    }
}

@media screen and (max-width: 1199px) {
    h3 {
        font-size: 2.25rem;
    }
}

@media screen and (max-width: 991px) {
    h3 {
        font-size: 2rem;
    }
}

@media screen and (max-width: 767px) {
    h3 {
        font-size: 1.75rem;
    }
}

@media screen and (max-width: 575px) {
    h3 {
        font-size: 1.5rem;
    }
}

h4 {
    font-size: 2rem;
}

@media screen and (max-width: 1399px) {
    h4 {
        font-size: 1.75rem;
    }
}

@media screen and (max-width: 1199px) {
    h4 {
        font-size: 1.625rem;
    }
}

@media screen and (max-width: 991px) {
    h4 {
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 575px) {
    h4 {
        font-size: 1.25rem;
    }
}

h5 {
    font-size: 1.5rem;
}

@media screen and (max-width: 1199px) {
    h5 {
        font-size: 1.375rem;
    }
}

@media screen and (max-width: 991px) {
    h5 {
        font-size: 1.25rem;
    }
}

@media screen and (max-width: 767px) {
    h5 {
        font-size: 1.125rem;
    }
}

h6 {
    font-size: 1.25rem;
}

@media screen and (max-width: 1199px) {
    h6 {
        font-size: 1.125rem;
    }
}

@media screen and (max-width: 991px) {
    h6 {
        font-size: 1rem;
    }
}

h1>a,
h2>a,
h3>a,
h4>a,
h5>a,
h6>a {
    font-weight: inherit;
    font-size: inherit;
    color: inherit;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
    line-height: inherit;
}

a {
    display: inline-block;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
    text-decoration: none;
    color: hsl(var(--base));
}

a:hover {
    color: hsl(var(--base-d-200));
}

img {
    max-width: 100%;
    height: auto;
}

select {
    cursor: pointer;
}

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

button {
    border: 0;
    background-color: transparent;
}

button:focus {
    outline: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

/* ================================= Common Typography Css End =========================== */
/* ================================= Custom Classes Css Start =========================== */
/* Column Extra Small Screen */
@media screen and (min-width: 425px) and (max-width: 575px) {
    .col-xsm-6 {
        width: 50%;
    }
}

/* Section Background */
.section-bg {
    background-color: hsl(var(--section-bg));
}

.text-muted {
    color: hsl(var(--black)/0.6) !important;
}

/* Bg Image Css */
.bg-img {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

/* Hide Scroll bar Css For Custom Modal */
.scroll-hide {
    position: absolute;
    overflow-y: hidden;
    padding-right: 17px;
    top: 0;
    left: 0;
    width: 100%;
}

@media screen and (max-width: 991px) {
    .scroll-hide {
        padding-right: 0;
    }
}

.scroll-hide-sm {
    position: absolute;
    overflow-y: hidden;
    top: 0;
    left: 0;
    width: calc(100% - 0px);
}

/* Overlay Start */
.body-overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    content: "";
    left: 0;
    top: 0;
    background-color: hsl(var(--black)/0.6);
    z-index: 99;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
    visibility: hidden;
    opacity: 0;
}

.body-overlay.show {
    visibility: visible;
    opacity: 1;
}

.gradient-text {
    background-image: -webkit-gradient(linear, left top, left bottom, from(hsl(var(--base-d-200))), to(hsl(var(--base))));
    background-image: linear-gradient(180deg, hsl(var(--base-d-200)) 0%, hsl(var(--base)) 100%);
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
}

.gradient-text::-moz-selection {
    color: hsl(var(--white));
    -webkit-text-fill-color: hsl(var(--white));
    background: transparent;
}

.gradient-text::selection {
    color: hsl(var(--white));
    -webkit-text-fill-color: hsl(var(--white));
    background: transparent;
}

.sidebar-overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    content: "";
    left: 0;
    top: 0;
    background-color: hsl(var(--black)/0.6);
    z-index: 99;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
    visibility: hidden;
    opacity: 0;
}

.sidebar-overlay.show {
    visibility: visible;
    opacity: 1;
    z-index: 999;
}

/* Overlay End */
/* ================================= Custom Classes Css End =========================== */
/* ====================== Custom Container Start ==================== */
@media (min-width: 1400px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1344px;
    }
}

[service-card-animation] {
    will-change: transform, opacity, filter;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
}

/* ====================== Custom Container End ==================== */
/* ================================= Background Color Css Start =========================== */
.bg--base {
    background-color: hsl(var(--base)) !important;
}

.bg--primary {
    background-color: hsl(var(--primary)) !important;
}

.bg--secondary {
    background-color: hsl(var(--secondary)) !important;
}

.bg--success {
    background-color: hsl(var(--success)) !important;
}

.bg--danger {
    background-color: hsl(var(--danger)) !important;
}

.bg--warning {
    background-color: hsl(var(--warning)) !important;
}

.bg--info {
    background-color: hsl(var(--info)) !important;
}

/* ================================= Background Color Css End =========================== */
/* ================================= Color Css Start =========================== */
.text--base {
    color: hsl(var(--base)) !important;
}

.text--color {
    color: hsl(var(--body-color)) !important;
}

.text--primary {
    color: hsl(var(--primary)) !important;
}

.text--secondary {
    color: hsl(var(--secondary)) !important;
}

.text--success {
    color: hsl(var(--success)) !important;
}

.text--danger {
    color: hsl(var(--danger)) !important;
}

.text--warning {
    color: hsl(var(--warning)) !important;
}

.text--info {
    color: hsl(var(--info)) !important;
}

.text--dark {
    color: hsl(var(--dark)) !important;
}

/* ================================= Color Css End =========================== */
.py-150 {
    padding-block: 150px !important;
}

@media screen and (max-width: 1199px) {
    .py-150 {
        padding-block: 120px !important;
    }
}

@media screen and (max-width: 575px) {
    .py-150 {
        padding-block: 80px !important;
    }
}

.pt-150 {
    padding-top: 150px !important;
}

@media screen and (max-width: 1199px) {
    .pt-150 {
        padding-top: 120px !important;
    }
}

@media screen and (max-width: 575px) {
    .pt-150 {
        padding-top: 80px !important;
    }
}

.pb-150 {
    padding-bottom: 150px !important;
}

@media screen and (max-width: 1199px) {
    .pb-150 {
        padding-bottom: 120px !important;
    }
}

@media screen and (max-width: 575px) {
    .pb-150 {
        padding-bottom: 80px !important;
    }
}

.py-120 {
    padding-block: 120px !important;
}

@media screen and (max-width: 1199px) {
    .py-120 {
        padding-block: 80px !important;
    }
}

@media screen and (max-width: 575px) {
    .py-120 {
        padding-block: 60px !important;
    }
}

.pt-120 {
    padding-top: 120px !important;
}

@media screen and (max-width: 1199px) {
    .pt-120 {
        padding-top: 80px !important;
    }
}

@media screen and (max-width: 575px) {
    .pt-120 {
        padding-top: 60px !important;
    }
}

.pb-120 {
    padding-bottom: 120px !important;
}

@media screen and (max-width: 1199px) {
    .pb-120 {
        padding-bottom: 80px !important;
    }
}

@media screen and (max-width: 575px) {
    .pb-120 {
        padding-bottom: 60px !important;
    }
}

.py-60 {
    padding-block: 60px !important;
}

@media screen and (max-width: 1199px) {
    .py-60 {
        padding-block: 40px !important;
    }
}

@media screen and (max-width: 575px) {
    .py-60 {
        padding-block: 30px !important;
    }
}

.pt-60 {
    padding-top: 60px !important;
}

@media screen and (max-width: 1199px) {
    .pt-60 {
        padding-top: 40px !important;
    }
}

@media screen and (max-width: 575px) {
    .pt-60 {
        padding-top: 30px !important;
    }
}

.pb-60 {
    padding-bottom: 60px !important;
}

@media screen and (max-width: 1199px) {
    .pb-60 {
        padding-bottom: 40px !important;
    }
}

@media screen and (max-width: 575px) {
    .pb-60 {
        padding-bottom: 30px !important;
    }
}

.my-150 {
    margin-block: 150px !important;
}

@media screen and (max-width: 1199px) {
    .my-150 {
        margin-block: 120px !important;
    }
}

@media screen and (max-width: 575px) {
    .my-150 {
        margin-block: 80px !important;
    }
}

.mt-150 {
    margin-top: 150px !important;
}

@media screen and (max-width: 1199px) {
    .mt-150 {
        margin-top: 120px !important;
    }
}

@media screen and (max-width: 575px) {
    .mt-150 {
        margin-top: 80px !important;
    }
}

.mb-150 {
    margin-bottom: 150px !important;
}

@media screen and (max-width: 1199px) {
    .mb-150 {
        margin-bottom: 120px !important;
    }
}

@media screen and (max-width: 575px) {
    .mb-150 {
        margin-bottom: 80px !important;
    }
}

.my-120 {
    margin-block: 120px !important;
}

@media screen and (max-width: 1199px) {
    .my-120 {
        margin-block: 80px !important;
    }
}

@media screen and (max-width: 575px) {
    .my-120 {
        margin-block: 60px !important;
    }
}

.mt-120 {
    margin-top: 120px !important;
}

@media screen and (max-width: 1199px) {
    .mt-120 {
        margin-top: 80px !important;
    }
}

@media screen and (max-width: 575px) {
    .mt-120 {
        margin-top: 60px !important;
    }
}

.mb-120 {
    margin-bottom: 120px !important;
}

@media screen and (max-width: 1199px) {
    .mb-120 {
        margin-bottom: 80px !important;
    }
}

@media screen and (max-width: 575px) {
    .mb-120 {
        margin-bottom: 60px !important;
    }
}

.my-60 {
    margin-block: 60px !important;
}

@media screen and (max-width: 1199px) {
    .my-60 {
        margin-block: 40px !important;
    }
}

@media screen and (max-width: 575px) {
    .my-60 {
        margin-block: 30px !important;
    }
}

.mt-60 {
    margin-top: 60px !important;
}

@media screen and (max-width: 1199px) {
    .mt-60 {
        margin-top: 40px !important;
    }
}

@media screen and (max-width: 575px) {
    .mt-60 {
        margin-top: 30px !important;
    }
}

.mb-60 {
    margin-bottom: 60px !important;
}

@media screen and (max-width: 1199px) {
    .mb-60 {
        margin-bottom: 40px !important;
    }
}

@media screen and (max-width: 575px) {
    .mb-60 {
        margin-bottom: 30px !important;
    }
}

/* ================================= Border Color Css Start =========================== */
.border--base {
    border-color: hsl(var(--base)) !important;
}

.border--primary {
    border-color: hsl(var(--primary)) !important;
}

.border--secondary {
    border-color: hsl(var(--secondary)) !important;
}

.border--success {
    border-color: hsl(var(--success)) !important;
}

.border--danger {
    border-color: hsl(var(--danger)) !important;
}

.border--warning {
    border-color: hsl(var(--warning)) !important;
}

.border--info {
    border-color: hsl(var(--info)) !important;
}

/* ================================= Border Color Css End =========================== */
/* =========================== Accordion Css start ============================= */
.custom--accordion .accordion-item {
    overflow: hidden;
    border-radius: 12px;
    border: 1px solid hsl(var(--border-light));
    background-color: hsl(var(--white));
    color: hsl(var(--body-color));
    padding: 24px;
}

.custom--accordion .accordion-item:not(:last-child) {
    margin-bottom: 16px;
}

.custom--accordion .accordion-header {
    line-height: 1.4;
}

.custom--accordion .accordion-body {
    background-color: hsl(var(--white));
    padding: 0;
    padding-top: 24px;
}

.custom--accordion .accordion-button {
    background: hsl(var(--white));
    color: var(--heading-color);
    font-size: 1rem;
    padding: 0;
    font-weight: 700;
}

.custom--accordion .accordion-button::after {
    background-image: none;
}

.custom--accordion .accordion-button:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
}

.custom--accordion .accordion-button:not(.collapsed) {
    -webkit-box-shadow: none;
    box-shadow: none;
}

.custom--accordion .accordion-button:not(.collapsed)::after {
    background-image: none;
}

.custom--accordion .accordion-button[aria-expanded=true]::after, .custom--accordion .accordion-button[aria-expanded=false]::after {
    font-family: "icomoon";
    position: absolute;
    right: 0;
    height: unset;
    width: unset;
    content: "\e98a";
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
    top: 50% !important;
    -webkit-transform: translateY(-50%) rotate(180deg);
    transform: translateY(-50%) rotate(180deg);
    font-size: 1.125rem;
    color: hsl(var(--body-color));
}

.custom--accordion .accordion-button[aria-expanded=false]::after {
    -webkit-transform: translateY(-50%) rotate(0deg);
    transform: translateY(-50%) rotate(0deg);
    content: "\e99e";
}

.custom--accordion.contact-accordion .accordion-button {
    font-size: 1.1875rem;
}

@media screen and (max-width: 1199px) {
    .custom--accordion.contact-accordion .accordion-button {
        font-size: 1.0625rem;
    }
}

.custom--accordion.contact-accordion .accordion-body {
    font-size: 1.125rem;
}

@media screen and (max-width: 1199px) {
    .custom--accordion.contact-accordion .accordion-body {
        font-size: 1rem;
    }
}

/* ================================= Accordion Css End =========================== */
/* ================================= Button Css Start =========================== */
.btn-check:checked+.btn,
.btn.active,
.btn.show,
.btn:first-child:active,
:not(.btn-check)+.btn:active {
    color: none;
    background-color: none;
    border-color: none;
}

.pill {
    border-radius: 32px !important;
}

.btn {
    color: hsl(var(--white)) !important;
    font-weight: 700;
    padding: 15px 26px;
    border-radius: 8px;
    position: relative;
    z-index: 1;
    border: 1px solid transparent;
    display: inline-block !important;
    font-size: 1.125rem;
    line-height: 1.3;
    font-family: var(--heading-font);
}

.btn:has(.icon) {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 6px;
}

.btn:has(.icon) .icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 22px;
}

@media screen and (max-width: 767px) {
    .btn {
        padding: 11px 20px;
        font-size: 1.0625rem;
    }
}

@media screen and (max-width: 575px) {
    .btn {
        font-size: 1rem;
    }
}

.btn:hover, .btn:focus, .btn:focus-visible {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}

.btn:active {
    top: 1px;
}

.btn--lg {
    padding: 19px 30px;
    font-size: 1.25rem;
}

@media screen and (max-width: 767px) {
    .btn--lg {
        padding: 17px 20px;
        font-size: 1.125rem;
    }
}

.btn--md {
    padding: 10px 22px;
}

@media screen and (max-width: 767px) {
    .btn--md {
        padding: 10px 16px;
        font-size: 1.0625rem;
    }
}

.btn--sm {
    padding: 9px 16px;
    font-size: 1rem;
}

@media screen and (max-width: 767px) {
    .btn--sm {
        padding: 6px 12px;
    }
}

.btn--xsm {
    padding: 6px 12px;
    font-size: 0.875rem;
    border-radius: 4px;
}

@media screen and (max-width: 767px) {
    .btn--xsm {
        padding: 5px 10px;
    }
}

.btn--white {
    background: hsl(var(--white));
    color: #175031 !important;
    border: 1px solid hsl(var(--base)) !important;
    -webkit-box-shadow: 0 0 20px 0 rgba(139, 234, 179, 0.15), 0 5px 5px -1px rgba(27, 122, 67, 0.25);
    box-shadow: 0 0 20px 0 rgba(139, 234, 179, 0.15), 0 5px 5px -1px rgba(27, 122, 67, 0.25);
}

.btn--white:hover, .btn--white:focus .btn--white:focus-visible {
    background: #175031 !important;
    color: hsl(var(--white)) !important;
    border: 1px solid #175031 !important;
}

.btn--base-light {
    background: #072c18;
    color: #8beab3 !important;
    border: 1px solid hsl(var(--base)) !important;
    -webkit-box-shadow: 0 0 20px 0 rgba(139, 234, 179, 0.15), 0 5px 5px -1px rgba(27, 122, 67, 0.25);
    box-shadow: 0 0 20px 0 rgba(139, 234, 179, 0.15), 0 5px 5px -1px rgba(27, 122, 67, 0.25);
}

.btn--base-light:hover, .btn--base-light:focus .btn--base-light:focus-visible {
    border: 1px solid hsl(var(--base)) !important;
    background: hsl(var(--base)) !important;
    color: #072c18 !important;
}

.btn--primary {
    background-color: hsl(var(--primary)) !important;
    border-color: hsl(var(--primary)) !important;
}

.btn--primary:hover, .btn--primary:focus .btn--primary:focus-visible {
    background-color: hsl(var(--primary-d-200)) !important;
    border: 1px solid hsl(var(--primary-d-200)) !important;
}

.btn-outline--primary {
    background-color: transparent !important;
    border: 1px solid hsl(var(--primary)) !important;
    color: hsl(var(--primary)) !important;
}

.btn-outline--primary:hover, .btn-outline--primary:focus .btn-outline--primary:focus-visible {
    background-color: hsl(var(--primary)) !important;
    color: hsl(var(--white)) !important;
}

.btn--base {
    background-color: hsl(var(--base)) !important;
    border-color: hsl(var(--base)) !important;
}

.btn--base:hover, .btn--base:focus .btn--base:focus-visible {
    background-color: hsl(var(--base-d-200)) !important;
    border: 1px solid hsl(var(--base-d-200)) !important;
}

.btn-outline--base {
    background-color: transparent !important;
    border: 1px solid hsl(var(--base)) !important;
    color: hsl(var(--base)) !important;
}

.btn-outline--base:hover, .btn-outline--base:focus .btn-outline--base:focus-visible {
    background-color: hsl(var(--base)) !important;
    color: hsl(var(--white)) !important;
}

.btn--secondary {
    background-color: hsl(var(--secondary)) !important;
    border-color: hsl(var(--secondary)) !important;
}

.btn--secondary:hover, .btn--secondary:focus .btn--secondary:focus-visible {
    background-color: hsl(var(--secondary-d-200)) !important;
    border: 1px solid hsl(var(--secondary-d-200)) !important;
}

.btn-outline--secondary {
    background-color: transparent !important;
    border: 1px solid hsl(var(--secondary)) !important;
    color: hsl(var(--secondary)) !important;
}

.btn-outline--secondary:hover, .btn-outline--secondary:focus .btn-outline--secondary:focus-visible {
    background-color: hsl(var(--secondary)) !important;
    color: hsl(var(--white)) !important;
}

.btn--danger {
    background-color: hsl(var(--danger)) !important;
    border-color: hsl(var(--danger)) !important;
}

.btn--danger:hover, .btn--danger:focus .btn--danger:focus-visible {
    background-color: hsl(var(--danger-d-200)) !important;
    border: 1px solid hsl(var(--danger-d-200)) !important;
}

.btn-outline--danger {
    background-color: transparent !important;
    border: 1px solid hsl(var(--danger)) !important;
    color: hsl(var(--danger)) !important;
}

.btn-outline--danger:hover, .btn-outline--danger:focus .btn-outline--danger:focus-visible {
    background-color: hsl(var(--danger)) !important;
    color: hsl(var(--white)) !important;
}

.btn--warning {
    background-color: hsl(var(--warning)) !important;
    border-color: hsl(var(--warning)) !important;
}

.btn--warning:hover, .btn--warning:focus .btn--warning:focus-visible {
    background-color: hsl(var(--warning-d-200)) !important;
    border: 1px solid hsl(var(--warning-d-200)) !important;
}

.btn-outline--warning {
    background-color: transparent !important;
    border: 1px solid hsl(var(--warning)) !important;
    color: hsl(var(--warning)) !important;
}

.btn-outline--warning:hover, .btn-outline--warning:focus .btn-outline--warning:focus-visible {
    background-color: hsl(var(--warning)) !important;
    color: hsl(var(--white)) !important;
}

.btn--info {
    background-color: hsl(var(--info)) !important;
    border-color: hsl(var(--info)) !important;
}

.btn--info:hover, .btn--info:focus .btn--info:focus-visible {
    background-color: hsl(var(--info-d-200)) !important;
    border: 1px solid hsl(var(--info-d-200)) !important;
}

.btn-outline--info {
    background-color: transparent !important;
    border: 1px solid hsl(var(--info)) !important;
    color: hsl(var(--info)) !important;
}

.btn-outline--info:hover, .btn-outline--info:focus .btn-outline--info:focus-visible {
    background-color: hsl(var(--info)) !important;
    color: hsl(var(--white)) !important;
}

.btn--dark {
    background-color: hsl(var(--dark)) !important;
    border-color: hsl(var(--dark)) !important;
}

.btn--dark:hover, .btn--dark:focus .btn--dark:focus-visible {
    background-color: hsl(var(--dark-d-200)) !important;
    border: 1px solid hsl(var(--dark-d-200)) !important;
}

.btn-outline--dark {
    background-color: transparent !important;
    border: 1px solid hsl(var(--dark)) !important;
    color: hsl(var(--dark)) !important;
}

.btn-outline--dark:hover, .btn-outline--dark:focus .btn-outline--dark:focus-visible {
    background-color: hsl(var(--dark)) !important;
    color: hsl(var(--white)) !important;
}

.btn--success {
    background-color: hsl(var(--success)) !important;
    border-color: hsl(var(--success)) !important;
}

.btn--success:hover, .btn--success:focus .btn--success:focus-visible {
    background-color: hsl(var(--success-d-200)) !important;
    border: 1px solid hsl(var(--success-d-200)) !important;
}

.btn-outline--success {
    background-color: transparent !important;
    border: 1px solid hsl(var(--success)) !important;
    color: hsl(var(--success)) !important;
}

.btn-outline--success:hover, .btn-outline--success:focus .btn-outline--success:focus-visible {
    background-color: hsl(var(--success)) !important;
    color: hsl(var(--white)) !important;
}

/* ================================= Button Css End =========================== */
/* ================================= Card Css Start =========================== */
.custom--card {
    border-radius: 12px;
    background-color: hsl(var(--section-bg));
    border: 0;
    --inner-p: 24px;
    border: 1px solid hsl(var(--border-color));
    overflow: hidden;
}

@media screen and (max-width: 575px) {
    .custom--card {
        --inner-p: 16px;
    }
}

.custom--card .card-header {
    background-color: hsl(var(--section-bg));
    padding: 0;
    border-bottom: 1px solid hsl(var(--border-color));
    padding: calc(var(--inner-p) / 2) var(--inner-p);
}

.custom--card .card-title {
    margin-bottom: 0;
}

.custom--card .card-body {
    background-color: hsl(var(--white));
    padding: var(--inner-p);
}

.custom--card .card-footer {
    background-color: transparent;
    border: 0;
    padding: 0;
    padding-top: var(--inner-p);
}

/* ================================= Card Css End =========================== */
/* ================================= Form Css Start =========================== */
/* Form Label */
.form--label {
    margin-bottom: 4px;
    color: hsl(var(--black));
    font-weight: 400;
    line-height: 160%;
    font-size: 1.125rem;
}

@media screen and (max-width: 767px) {
    .form--label {
        font-size: 1rem;
    }
}

.form-group {
    margin-bottom: 1rem;
}

.form--control {
    border-radius: 12px;
    font-weight: 400;
    outline: none;
    width: 100%;
    padding: 13px 16px;
    background-color: transparent;
    border: 1px solid hsl(var(--section-bg));
    color: hsl(var(--heading-color)) !important;
    line-height: 1.55;
    font-size: 1.125rem;
    background: hsl(var(--white)/0.5);
    -webkit-backdrop-filter: blur(11px);
    backdrop-filter: blur(11px);
}

@media screen and (max-width: 767px) {
    .form--control {
        font-size: 1rem;
    }
}

.form--control::-webkit-input-placeholder {
    color: hsl(var(--body-color));
}

.form--control::-moz-placeholder {
    color: hsl(var(--body-color));
}

.form--control:-ms-input-placeholder {
    color: hsl(var(--body-color));
}

.form--control::-ms-input-placeholder {
    color: hsl(var(--body-color));
}

.form--control::placeholder {
    color: hsl(var(--body-color));
}

.form--control:focus {
    border-color: hsl(var(--base));
}

.form--control:disabled, .form--control[readonly] {
    background-color: hsl(var(--black)/0.03);
    opacity: 1;
    border: 0;
}

.form--control[type=password] {
    color: hsl(var(--black)/0.5);
}

.form--control[type=password]:focus {
    color: hsl(var(--black));
}

.form--control[type=file] {
    line-height: var(--file-line-height);
    padding: 0;
    position: relative;
}

.form--control[type=file]::-webkit-file-upload-button {
    border: 1px solid hsl(var(--black)/0.08);
    padding: 3px;
    border-radius: 4px;
    background-color: hsl(var(--base)) !important;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
    line-height: 25px;
    position: relative;
    margin-left: var(--file-margin-left);
    color: hsl(var(--white)) !important;
}

.form--control[type=file]::file-selector-button {
    border: 1px solid hsl(var(--black)/0.08);
    padding: 3px;
    border-radius: 4px;
    background-color: hsl(var(--base)) !important;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
    line-height: 25px;
    position: relative;
    margin-left: var(--file-margin-left);
    color: hsl(var(--white)) !important;
}

@media screen and (max-width: 767px) {
    .form--control[type=file]::-webkit-file-upload-button {
        padding: 2px;
        font-size: 0.875rem;
        line-height: 20px;
    }

    .form--control[type=file]::file-selector-button {
        padding: 2px;
        font-size: 0.875rem;
        line-height: 20px;
    }
}

.form--control[type=file]::-webkit-file-upload-button:hover {
    background-color: hsl(var(--base));
    border: 1px solid hsl(var(--base));
    color: hsl(var(--black));
}

.form--control[type=file]::file-selector-button:hover {
    background-color: hsl(var(--base));
    border: 1px solid hsl(var(--base));
    color: hsl(var(--black));
}

/* Form Control End */
textarea.form--control {
    height: 150px;
}

@media screen and (max-width: 1199px) {
    textarea.form--control {
        height: 120px;
    }
}

@media screen and (max-width: 991px) {
    textarea.form--control {
        height: 100px;
    }
}

@media screen and (max-width: 767px) {
    textarea.form--control {
        height: 80px;
    }
}

/* Autofill Css */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    -webkit-transition: background-color 5000s ease-in-out 0s;
    transition: background-color 5000s ease-in-out 0s;
}

input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px transparent inset;
    -webkit-text-fill-color: hsl(var(--black)) !important;
    caret-color: hsl(var(--black));
}

/* Autofill Css End */
/* Show Hide Password */
input#your-password,
input#confirm-password {
    padding-right: 50px;
}

.password-show-hide {
    position: absolute;
    right: 20px;
    z-index: 5;
    cursor: pointer;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color: hsl(var(--white)/0.4);
}

/* --------------- Number Arrow None --------------------- */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
}

input[type=number] {
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
    appearance: textfield;
}

/* Custom Checkbox Design */
.form--check {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
}

.form--check a {
    display: inline;
}

.form--check .form-check-input {
    -webkit-box-shadow: none;
    box-shadow: none;
    background-color: transparent;
    box-shadow: none !important;
    border: 0;
    position: relative;
    border-radius: 6px;
    width: 18px;
    height: 18px;
    border: 2px solid #C3C6CC;
    cursor: pointer;
    margin-top: 0;
}

.form--check .form-check-input:checked {
    background-color: hsl(var(--base)) !important;
    border-color: hsl(var(--base)) !important;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.form--check .form-check-input:checked[type=checkbox] {
    background-image: none;
}

.form--check .form-check-input:checked::before {
    position: absolute;
    content: "";
    width: 12px;
    height: 12px;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='white'%3E%3Cpath d='M7.629 13.314 4.286 9.97l-1.143 1.143 4.486 4.486L16.857 6.37l-1.143-1.143z'/%3E%3C/svg%3E");
}

.form--check .form-check-label {
    font-weight: 500;
    cursor: pointer;
    font-size: 1.125rem;
    color: hsl(var(--heading-color));
    line-height: 1.2;
}

@media screen and (max-width: 767px) {
    .form--check .form-check-label {
        font-size: 1rem;
    }
}

/* Custom Radio Design */
.form--radio .form-check-input {
    -webkit-box-shadow: none;
    box-shadow: none;
    border: 1px solid hsl(var(--black)/0.2);
    position: relative;
    background-color: transparent;
    cursor: pointer;
    width: 16px;
    height: 16px;
}

.form--radio .form-check-input:active {
    -webkit-filter: brightness(100%);
    filter: brightness(100%);
}

.form--radio .form-check-input:checked {
    background-color: transparent;
    border-color: hsl(var(--base));
}

.form--radio .form-check-input:checked[type=radio] {
    background-image: none;
}

.form--radio .form-check-input:checked::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 7px;
    height: 7px;
    background-color: hsl(var(--base));
    border-radius: 50%;
    z-index: 999;
}

.form--radio .form-check-label {
    font-weight: 600;
    width: calc(100% - 16px);
    padding-left: 12px;
    cursor: pointer;
    font-size: 0.875rem;
}

/*  Custom Switch Design */
.form--switch {
    --width: 44px;
    --height: 24px;
    --offset: 2px;
    --color: hsl(var(--base));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    cursor: pointer;
    gap: 8px;
}

.form--switch .form-check-input {
    width: var(--width);
    height: var(--height);
    border: none;
    margin-top: 0px;
    border-radius: 999px;
    position: relative;
    background: hsl(var(--border-color)) !important;
    cursor: pointer;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
}

.form--switch .form-check-input::before {
    --size: calc(var(--height) * 0.8333333333);
    content: "";
    width: var(--size);
    height: var(--size);
    background-color: hsl(var(--white));
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    border-radius: 2px;
    left: var(--offset);
    border-radius: 50%;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
}

.form--switch .form-check-input:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
}

.form--switch .form-check-input:checked {
    background-image: none;
    background: var(--color) !important;
}

.form--switch .form-check-input:checked::before {
    left: calc(100% - (var(--size) + var(--offset)));
    background-color: hsl(var(--white)) !important;
}

.form--switch .form-check-label {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 100%;
    color: hsl(var(--gray-l-500));
    cursor: pointer;
}

.form--switch.base {
    --color: hsl(var(--base));
}

.form--switch.primary {
    --color: hsl(var(--primary));
}

.form--switch.success {
    --color: hsl(var(--success));
}

.form--switch.danger {
    --color: hsl(var(--danger));
}

.form--switch.warning {
    --color: hsl(var(--warning));
}

.form--switch.info {
    --color: hsl(var(--info));
}

/*  Custom Switch End Design */
/* ================================= Form Css End =========================== */
/* --======================Custom Input group Start ======================*/
.input-group {
    border-radius: 12px;
    border: 1px solid hsl(var(--section-bg));
    overflow: hidden;
}

.input-group .form--control {
    border-width: 0px !important;
}

.input-group-text {
    background-color: transparent;
    position: relative;
    color: hsl(var(--black));
    border: 0;
}

.input-group-text:has(.icon) {
    padding-inline: 16px 0px;
}

.input-group-text:has(.icon)::after {
    display: none;
}

.input-group-text::after {
    content: "";
    position: absolute;
    height: 28px;
    width: 1px;
    background-color: hsl(var(--section-bg));
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 1px;
}

.input-group:focus-within {
    border: 1px solid hsl(var(--base));
    border-color: hsl(var(--base));
}

.input-group .form--control[readonly] {
    background: hsl(var(--black)/0.03) !important;
}

.input-group .form--control[readonly]:focus {
    border-color: hsl(var(--black)/0.3);
}

.input-group .form--control:focus {
    -webkit-box-shadow: unset !important;
    box-shadow: unset !important;
}

.input-group:has(.form--control[readonly]) {
    background: hsl(var(--black)/0.03) !important;
}

.input-group:has(.form--control[readonly]):focus-within {
    border-color: hsl(var(--black)/0.03) !important;
}

/* --======================Custom Input group End ======================*/
/* ================================= Modal Css Start =========================== */
.custom--modal .modal-header {
    border-bottom: 1px solid hsl(var(--border-color)/0.5);
    padding: 16px;
}

.custom--modal .modal-header .btn-close {
    background-image: none;
    font-size: 1.25rem;
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
    color: hsl(var(--text-color)) !important;
    padding: 0;
    background-color: transparent;
    height: 30px;
    width: 30px;
    display: grid;
    place-content: center;
    border-radius: 50%;
    border: 1px solid hsl(var(--text-color));
}

.custom--modal .modal-header .btn-close i {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.custom--modal .modal-header .btn-close:hover {
    color: hsl(var(--dark)) !important;
    border-color: hsl(var(--dark));
}

.custom--modal .modal-header .btn-close:focus, .custom--modal .modal-header .btn-close:active {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}

.custom--modal .input-group {
    background-color: hsl(var(--section-bg)) !important;
}

.custom--modal .input-group .form--control {
    background-color: transparent !important;
}

.custom--modal .modal-content {
    background-color: hsl(var(--white));
    border-radius: 12px;
    overflow: hidden;
    border: 0;
}

.custom--modal .modal-body {
    padding: 16px;
}

.custom--modal .modal-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 16px;
    border-top: 1px solid hsl(var(--border-color)/0.5);
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.modal .modal-dialog {
    -webkit-transition: -webkit-transform 0.3s ease-out !important;
    transition: -webkit-transform 0.3s ease-out !important;
    transition: transform 0.3s ease-out !important;
    transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out !important;
    -webkit-transform: scale(0.9) !important;
    transform: scale(0.9) !important;
}

.modal.show .modal-dialog {
    -webkit-transform: scale(1) !important;
    transform: scale(1) !important;
}

.modal-dialog-scrollable .modal-content {
    min-height: 500px;
}

/* ================================= Modal Css End =========================== */
/* ================================= Pagination Css Start =========================== */
.pagination-wrapper {
    margin-top: 24px;
    padding-top: 16px;
    border-top: 1px solid hsl(var(--border-color)/0.4);
}

.pagination {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.pagination .page-item {
    cursor: pointer;
}

.pagination .page-item.active .page-link {
    background-color: hsl(var(--base));
    color: hsl(var(--white));
    border-color: hsl(var(--base));
}

.pagination .page-item.active .page-link:hover {
    background-color: hsl(var(--base-d-100));
    color: hsl(var(--white));
    border-color: hsl(var(--base));
}

.pagination .page-item.disabled .page-link {
    background-color: hsl(var(--section-bg));
    color: hsl(var(--body-color));
    border-color: hsl(var(--section-bg));
}

.pagination .page-item .page-link {
    --size: 40px;
    border: 0;
    margin: 0 5px;
    border-radius: 8px;
    height: var(--size);
    width: var(--size);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: transparent;
    font-weight: 500;
    padding: 0;
    color: hsl(var(--body-color));
    font-size: 0.875rem;
}

@media screen and (max-width: 1199px) {
    .pagination .page-item .page-link {
        --size: 32px;
    }
}

.pagination .page-item .page-link:hover {
    background-color: hsl(var(--base)/0.1);
    color: hsl(var(--base));
}

.pagination .page-item .page-link:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
}

/* ================================= Pagination Css End =========================== */
/* ================================= Table Css Start =========================== */
.customer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    gap: 12px;
    text-align: left;
}

@media screen and (max-width: 575px) {
    .customer {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        text-align: right;
    }
}

.customer__thumb {
    --size: 32px;
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    overflow: hidden;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.customer__name {
    font-weight: 600;
    color: hsl(var(--heading-color));
}

.table {
    margin: 0;
    border-collapse: collapse;
    border-collapse: separate;
    border-spacing: 0px 0px;
    overflow: hidden;
    border-radius: 12px;
    background: hsl(var(--white));
    -webkit-box-shadow: 0 0 4px 0 hsl(var(--black)/0.04), 0 4px 8px 0 hsl(var(--black)/0.06);
    box-shadow: 0 0 4px 0 hsl(var(--black)/0.04), 0 4px 8px 0 hsl(var(--black)/0.06);
}

.table thead tr th {
    background-color: #eef5f0;
    text-align: left;
    padding: 12px 24px;
    color: hsl(var(--body-color));
    font-size: 1.125rem;
    border: 0;
    font-weight: 400;
}

.table thead tr th:not(:first-child) {
    border-left: 0;
}

.table thead tr th:first-child {
    text-align: left;
}

.table thead tr th:last-child {
    text-align: right;
}

.table tbody {
    border: 0 !important;
}

.table tbody tr:last-child {
    border-bottom: 0;
}

.table tbody tr:last-child td {
    border-bottom: 0;
}

.table tbody tr:last-child td:first-child {
    border-radius: 0px 0 0 12px;
}

.table tbody tr:last-child td:last-child {
    border-radius: 0 0px 12px 0;
}

.table tbody tr td {
    text-align: left;
    vertical-align: middle;
    padding: 24px;
    border-width: 1px;
    border: 0;
    color: hsl(var(--heading-color)/0.8);
    font-size: 1.125rem;
    border-bottom: 1px solid hsl(var(--border-light));
    background-color: transparent;
}

.table tbody tr td::before {
    content: attr(data-label);
    color: hsl(var(--heading-color));
    font-weight: 600;
    font-size: 1rem;
    display: none;
    width: 45% !important;
    text-align: left;
}

.table tbody tr td:first-child {
    text-align: left;
}

.table tbody tr td:last-child {
    text-align: right;
}

@media (max-width: 991px) {
    .table-responsive--md thead {
        display: none;
    }

    .table-responsive--md tbody .form--check {
        display: none;
    }

    .table-responsive--md tbody tr:has(td .empty-data) {
        background-color: transparent;
    }

    .table-responsive--md tbody td:has(.empty-data) {
        width: 100%;
        background-color: transparent;
    }

    .table-responsive--md tbody td:has(.empty-data)::before {
        display: none;
    }

    .table-responsive--md tbody tr {
        display: block;
    }

    .table-responsive--md tbody tr:nth-child(even) {
        background-color: hsl(var(--section-bg)/0.4);
    }

    .table-responsive--md tbody tr:last-child td {
        border-bottom: 1px solid hsl(var(--black)/0.05);
    }

    .table-responsive--md tbody tr td {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        gap: 15px;
        text-align: right;
        padding: 16px !important;
        border: none;
        border-bottom: 1px solid hsl(var(--black)/0.05);
        max-width: unset;
        background-color: transparent;
    }

    .table-responsive--md tbody tr td:last-child {
        border: none;
    }

    .table-responsive--md tbody tr td:first-child {
        text-align: right;
        border-left: 0;
    }

    .table-responsive--md tbody tr td::before {
        display: block;
    }
}

@media (max-width: 1199px) {
    .table-responsive--lg thead {
        display: none;
    }

    .table-responsive--lg tbody .form--check {
        display: none;
    }

    .table-responsive--lg tbody tr:has(td .empty-data) {
        background-color: transparent;
    }

    .table-responsive--lg tbody td:has(.empty-data) {
        width: 100%;
        background-color: transparent;
    }

    .table-responsive--lg tbody td:has(.empty-data)::before {
        display: none;
    }

    .table-responsive--lg tbody tr {
        display: block;
    }

    .table-responsive--lg tbody tr:nth-child(even) {
        background-color: hsl(var(--section-bg)/0.4);
    }

    .table-responsive--lg tbody tr:last-child td {
        border-bottom: 1px solid hsl(var(--black)/0.05);
    }

    .table-responsive--lg tbody tr td {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        gap: 15px;
        text-align: right;
        padding: 16px !important;
        border: none;
        border-bottom: 1px solid hsl(var(--black)/0.05);
        max-width: unset;
        background-color: transparent;
    }

    .table-responsive--lg tbody tr td:last-child {
        border: none;
    }

    .table-responsive--lg tbody tr td:first-child {
        text-align: right;
        border-left: 0;
    }

    .table-responsive--lg tbody tr td::before {
        display: block;
    }
}

@media (max-width: 1399px) {
    .table-responsive--xl thead {
        display: none;
    }

    .table-responsive--xl tbody .form--check {
        display: none;
    }

    .table-responsive--xl tbody tr:has(td .empty-data) {
        background-color: transparent;
    }

    .table-responsive--xl tbody td:has(.empty-data) {
        width: 100%;
        background-color: transparent;
    }

    .table-responsive--xl tbody td:has(.empty-data)::before {
        display: none;
    }

    .table-responsive--xl tbody tr {
        display: block;
    }

    .table-responsive--xl tbody tr:nth-child(even) {
        background-color: hsl(var(--section-bg)/0.4);
    }

    .table-responsive--xl tbody tr:last-child td {
        border-bottom: 1px solid hsl(var(--black)/0.05);
    }

    .table-responsive--xl tbody tr td {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        gap: 15px;
        text-align: right;
        padding: 16px !important;
        border: none;
        border-bottom: 1px solid hsl(var(--black)/0.05);
        max-width: unset;
        background-color: transparent;
    }

    .table-responsive--xl tbody tr td:last-child {
        border: none;
    }

    .table-responsive--xl tbody tr td:first-child {
        text-align: right;
        border-left: 0;
    }

    .table-responsive--xl tbody tr td::before {
        display: block;
    }
}

@media (max-width: 1599px) {
    .table-responsive--xxl thead {
        display: none;
    }

    .table-responsive--xxl tbody .form--check {
        display: none;
    }

    .table-responsive--xxl tbody tr:has(td .empty-data) {
        background-color: transparent;
    }

    .table-responsive--xxl tbody td:has(.empty-data) {
        width: 100%;
        background-color: transparent;
    }

    .table-responsive--xxl tbody td:has(.empty-data)::before {
        display: none;
    }

    .table-responsive--xxl tbody tr {
        display: block;
    }

    .table-responsive--xxl tbody tr:nth-child(even) {
        background-color: hsl(var(--section-bg)/0.4);
    }

    .table-responsive--xxl tbody tr:last-child td {
        border-bottom: 1px solid hsl(var(--black)/0.05);
    }

    .table-responsive--xxl tbody tr td {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        gap: 15px;
        text-align: right;
        padding: 16px !important;
        border: none;
        border-bottom: 1px solid hsl(var(--black)/0.05);
        max-width: unset;
        background-color: transparent;
    }

    .table-responsive--xxl tbody tr td:last-child {
        border: none;
    }

    .table-responsive--xxl tbody tr td:first-child {
        text-align: right;
        border-left: 0;
    }

    .table-responsive--xxl tbody tr td::before {
        display: block;
    }
}

/* ================================= Table Css End =========================== */
/* ================================= Tab Css Start =========================== */
.custom--tab-wrapper {
    margin-bottom: 50px;
    overflow: auto hidden;
    text-align: center;
}

@media screen and (max-width: 1199px) {
    .custom--tab-wrapper {
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 991px) {
    .custom--tab-wrapper {
        margin-bottom: 32px;
    }
}

.custom--tab {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 0px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    border-bottom: 0;
    position: relative;
    gap: 8px;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.custom--tab .nav-item {
    border-bottom: 0;
}

.custom--tab .nav-item .nav-link {
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
    background: hsl(var(--white));
    position: relative;
    overflow: hidden;
    font-weight: 700;
    border-radius: 12px;
    border: 0;
    line-height: 1;
    font-size: 1.5rem;
    color: hsl(var(--body-color));
    padding: 16px 34px;
    line-height: 1.2;
    white-space: nowrap;
}

@media screen and (max-width: 1199px) {
    .custom--tab .nav-item .nav-link {
        padding: 12px 24px;
        font-size: 1.25rem;
    }
}

@media screen and (max-width: 991px) {
    .custom--tab .nav-item .nav-link {
        padding: 10px 20px;
        font-size: 1.125rem;
    }
}

@media screen and (max-width: 575px) {
    .custom--tab .nav-item .nav-link {
        padding: 8px 16px;
        font-size: 1rem;
    }
}

.custom--tab .nav-item .nav-link.active {
    color: #8BEAB3;
    border-color: #175031;
    background-color: #175031;
}

.custom--tab .nav-item .nav-link.active:hover {
    color: #8BEAB3;
}

.custom--tab .nav-item .nav-link:hover {
    color: hsl(var(--heading-color));
}

/* ================================= Tab Css End =========================== */
/* ================================= Badge Css Start =========================== */
.badge {
    padding: 4px 10px;
    border: 1px solid hsl(var(--badge-color));
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 140%;
    color: hsl(var(--badge-color));
    background-color: hsl(var(--badge-color)/0.1);
    border: 0;
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
}

.badge::before {
    content: "";
    --size: 6px;
    height: var(--size);
    width: var(--size);
    border-radius: 50%;
    background-color: hsl(var(--badge-color));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.badge--lg {
    font-size: 1rem;
    font-weight: 500;
}

.badge--base {
    --badge-color: var(--base);
}

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

.badge--secondary {
    --badge-color: var(--secondary);
}

.badge--success {
    --badge-color: var(--success);
}

.badge--danger {
    --badge-color: var(--danger);
}

.badge--warning {
    --badge-color: var(--warning);
}

.badge--info {
    --badge-color: var(--info);
}

.badge--dark {
    --badge-color: var(--black);
}

/* ================================= Badge Css End =========================== */
/* ====================================== Alert Css Start =============================== */
.alert {
    margin-bottom: 0;
    background-color: hsl(var(--alert-color)/0.03);
    border: 1px solid hsl(var(--alert-color)/0.2);
    font-weight: 400;
    padding: 20px;
    border-radius: 12px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 20px;
}

@media screen and (max-width: 991px) {
    .alert {
        padding: 16px;
    }
}

@media screen and (max-width: 575px) {
    .alert {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

.alert__icon {
    line-height: 1;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-size: 0.75rem;
    height: 20px;
    width: 20px;
    display: grid;
    place-content: center;
    background: hsl(var(--alert-color));
    color: hsl(var(--white));
    border-radius: 50%;
    -webkit-box-shadow: 0 0 0 3px hsl(var(--white)), 0 0 0 6px hsl(var(--alert-color)/0.5), 0 0 0 9px hsl(var(--white)), 0 0 0 12px hsl(var(--alert-color)/0.15);
    box-shadow: 0 0 0 3px hsl(var(--white)), 0 0 0 6px hsl(var(--alert-color)/0.5), 0 0 0 9px hsl(var(--white)), 0 0 0 12px hsl(var(--alert-color)/0.15);
    margin: 6px;
}

.alert__content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

@media screen and (max-width: 575px) {
    .alert__content {
        width: 100%;
        margin-top: 6px;
    }
}

.alert__title {
    font-size: 1rem;
    color: hsl(var(--heading-color));
    font-weight: 600;
    font-family: var(--heading-font);
    margin-bottom: 6px;
}

.alert__desc {
    color: hsl(var(--body-color));
    display: block;
    font-size: 0.9375rem;
}

@media screen and (max-width: 424px) {
    .alert__desc {
        font-size: 0.875rem;
    }
}

.alert__link {
    position: relative;
}

.alert .btn-close {
    background: transparent;
    padding: 0;
    color: hsl(var(--alert-color));
    font-size: 1.25rem;
    top: 16px;
    right: 16px;
    -webkit-box-shadow: none;
    box-shadow: none;
}

@media screen and (max-width: 991px) {
    .alert .btn-close {
        top: 10px;
        right: 10px;
    }
}

.alert--base {
    --alert-color: var(--base);
}

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

.alert--success {
    --alert-color: var(--success);
}

.alert--info {
    --alert-color: var(--info);
}

.alert--danger {
    --alert-color: var(--danger);
}

.alert--warning {
    --alert-color: var(--warning);
}

.alert--secondary {
    --alert-color: var(--secondary);
}

/* ====================================== Alert Css End =============================== */
/* ================================= preload Css Start =========================== */
.preloader {
    position: fixed;
    z-index: 999999999;
    background-color: hsl(var(--black));
    width: 100%;
    height: 100%;
}

.loader-p {
    border: 0 solid transparent;
    border-radius: 50%;
    width: 150px;
    height: 150px;
    position: absolute;
    top: calc(50vh - 75px);
    left: calc(50vw - 75px);
}

.loader-p:before,
.loader-p:after {
    content: "";
    border: 1em solid hsl(var(--base));
    border-radius: 50%;
    width: inherit;
    height: inherit;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-animation: loader 2s linear infinite;
    animation: loader 2s linear infinite;
    opacity: 0;
}

.loader-p:before {
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s;
}

@-webkit-keyframes loader {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
        opacity: 0;
    }

    50% {
        opacity: 1;
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0;
    }
}

@keyframes loader {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
        opacity: 0;
    }

    50% {
        opacity: 1;
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0;
    }
}

/* ================================= preload Css End ===========================  */
/* ============= Header Start Here ======================= */
.header {
    --gap: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 32px;
    width: calc(100% - var(--gap) * 2);
    position: fixed;
    top: var(--gap);
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 999;
}

@media screen and (max-width: 1199px) {
    .header {
        --gap: 12px;
        padding: 24px;
    }
}

@media screen and (max-width: 1199px) {
    .header {
        --gap: 8px;
        padding: 16px;
    }
}

@media screen and (max-width: 991px) {
    .header {
        padding: 12px;
    }
}

.header.is-black .header-logo {
    color: hsl(var(--black));
    -webkit-animation: rotateLogo 0.5s ease-in-out 0s 1 forwards !important;
    animation: rotateLogo 0.5s ease-in-out 0s 1 forwards !important;
}

.header.is-black .header-auth-btn {
    border: 2px solid hsl(var(--black));
    background: transparent;
    color: hsl(var(--black));
}

.header.is-white .header-logo {
    -webkit-animation: rotateReverse 0.5s ease-in-out 0s 1 forwards;
    animation: rotateReverse 0.5s ease-in-out 0s 1 forwards;
}

.header-logo {
    width: 100%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    color: hsl(var(--white));
    max-width: -webkit-max-content;
    max-width: -moz-max-content;
    max-width: max-content;
}

@media screen and (max-width: 991px) {
    .header-logo svg {
        width: 32px;
        height: 32px;
    }
}

@media screen and (max-width: 767px) {
    .header-logo svg {
        width: 28px;
        height: 28px;
    }
}

@media screen and (max-width: 575px) {
    .header-logo svg {
        width: 24px;
        height: 24px;
    }
}

.header-logo:hover {
    color: hsl(var(--white));
}

.header-auth-btn {
    --size: 40px;
    width: var(--size);
    height: var(--size);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 12px;
    border: 2px solid hsl(var(--white));
    background: hsl(var(--white)/0.05);
    -webkit-backdrop-filter: blur(7.5px);
    backdrop-filter: blur(7.5px);
    cursor: pointer;
    color: hsl(var(--white));
    font-size: 24px;
}

@media screen and (max-width: 991px) {
    .header-auth-btn {
        --size: 32px;
        border-radius: 8px;
        font-size: 20px;
    }
}

@media screen and (max-width: 767px) {
    .header-auth-btn {
        --size: 28px;
        border-radius: 6px;
        font-size: 16px;
    }
}

@media screen and (max-width: 575px) {
    .header-auth-btn {
        --size: 24px;
        border-radius: 4px;
    }
}

@-webkit-keyframes rotateReverse {
    0% {
        -webkit-transform: rotate(720deg);
        transform: rotate(720deg);
    }

    100% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

@keyframes rotateReverse {
    0% {
        -webkit-transform: rotate(720deg);
        transform: rotate(720deg);
    }

    100% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

@-webkit-keyframes rotateLogo {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(720deg);
        transform: rotate(720deg);
    }
}

@keyframes rotateLogo {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(720deg);
        transform: rotate(720deg);
    }
}

.dropdown-menu {
    padding: 12px;
    border: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    background-color: hsl(var(--white));
    border-radius: 12px;
    display: unset !important;
    visibility: hidden;
    opacity: 0;
    position: absolute !important;
    border: 1px solid hsl(var(--black)/0.03);
    -webkit-box-shadow: 0 20px 25px -5px hsl(var(--black)/0.1), 0 8px 10px -6px hsl(var(--black)/0.1);
    box-shadow: 0 20px 25px -5px hsl(var(--black)/0.1), 0 8px 10px -6px hsl(var(--black)/0.1);
}

.dropdown-menu.show {
    visibility: visible;
    opacity: 1;
}

.header-auth {
    position: relative;
    z-index: 999;
}

.header-auth-dropdown {
    position: absolute;
    top: 100%;
    background-color: hsl(var(--white)/0.1);
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    width: 240px;
    right: 0;
    border: 1px solid hsl(var(--white)/0.05);
    -webkit-box-shadow: 0px 5px 12px hsl(var(--white)/0.05);
    box-shadow: 0px 5px 12px hsl(var(--white)/0.05);
    padding: 12px;
    border-radius: 12px;
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
    -webkit-transform: scale(0.75);
    transform: scale(0.75);
    -webkit-transform-origin: top right;
    transform-origin: top right;
    opacity: 0;
    visibility: hidden;
}

.header-auth-link {
    font-size: 18px;
    color: hsl(var(--white));
    font-weight: 500;
    padding: 8px;
    text-shadow: 0px 2px 4px hsl(var(--black)/0.5);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 6px;
    position: relative;
}

.header-auth-link .icon {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.header-auth-link .arrow-icon {
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(-90deg);
    transform: translateY(-50%) rotate(-90deg);
}

.header-auth-item:last-child {
    border-top: 1px solid hsl(var(--white)/0.1);
    margin-top: 12px;
}

.header-auth-item:last-child .icon {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    color: hsl(var(--danger));
}

.header-auth:hover .header-auth-dropdown {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
    visibility: visible;
}

.header.is-black .header-auth-dropdown {
    background-color: hsl(var(--section-bg));
    border: 1px solid hsl(var(--black)/0.05);
}

.header.is-black .header-auth-link {
    color: hsl(var(--black));
    text-shadow: 0px 2px 4px hsl(var(--white)/0.5);
}

.header.is-black .header-auth-item:last-child {
    border-top: 1px solid hsl(var(--black)/0.1);
}

/* ================================= Header Css End =========================== */
/* ========================= Footer CSS Start ============================= */
.footer {
    margin-top: auto;
    background-color: hsl(var(--dark));
    overflow: hidden;
}

@media screen and (max-width: 1199px) {
    .footer-info {
        margin-bottom: 32px;
    }
}

.footer-info-logo {
    max-width: 220px;
    width: 100%;
    margin-bottom: 16px;
}

.footer-info-desc {
    color: hsl(var(--white));
    margin-bottom: 24px;
    font-size: 18px;
    line-height: 1.6;
}

.footer-info-social {
    --size: 56px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 8px;
}

@media screen and (max-width: 1399px) {
    .footer-info-social {
        --size: 50px;
    }
}

@media screen and (max-width: 1199px) {
    .footer-info-social {
        --size: 46px;
    }
}

.footer-info-social-link {
    color: hsl(var(--white));
    width: var(--size);
    height: var(--size);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 12px;
    background-color: hsl(var(--body-color)/0.25);
}

@media screen and (max-width: 1399px) {
    .footer-info-social-link {
        border-radius: 8px;
    }
}

.footer-info-social-link:hover {
    background-color: hsl(var(--base));
    color: hsl(var(--white));
}

.footer-wrapper {
    margin-top: 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 767px) {
    .footer-wrapper {
        margin-top: 32px;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        gap: 32px;
    }
}

@media screen and (max-width: 575px) {
    .footer-wrapper {
        margin-top: 0;
        gap: 24px;
    }
}

.footer-wrapper-btn {
    --btn-s: 48px;
    padding: 4px 4px 4px 24px;
    background-color: hsl(var(--white));
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px;
    border-radius: 50px;
    font-size: 20px;
    font-weight: 700;
    color: hsl(var(--heading-color));
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
}

@media screen and (max-width: 1399px) {
    .footer-wrapper-btn {
        --btn-s: 40px;
        font-size: 16px;
    }
}

@media screen and (max-width: 767px) {
    .footer-wrapper-btn {
        --btn-s: 36px;
        font-size: 15px;
        gap: 10px;
    }
}

.footer-wrapper-btn .icon {
    height: var(--btn-s);
    width: var(--btn-s);
    border-radius: 50%;
    background-color: hsl(var(--base));
    display: grid;
    place-content: center;
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
    font-size: calc(var(--btn-s) * 0.75);
}

.footer-wrapper-btn:hover {
    color: hsl(var(--white));
    background-color: hsl(var(--base));
}

.footer-wrapper-btn:hover .icon {
    background-color: hsl(var(--white));
    color: hsl(var(--base));
}

@media screen and (max-width: 767px) {
    .footer-item {
        margin-bottom: 32px;
    }
}

.footer-item-title {
    color: hsl(var(--white));
    padding-bottom: 8px;
    margin-bottom: 16px;
    position: relative;
}

.footer-item-title::before, .footer-item-title::after {
    content: "";
    position: absolute;
    width: 65px;
    height: 3px;
    left: 0;
    bottom: 0;
    background-color: hsl(var(--base));
    border-radius: 40px;
    overflow: hidden;
}

.footer-item-title::after {
    width: 10px;
    background-color: hsl(var(--dark));
    -webkit-animation: bar_dot 5s linear infinite;
    animation: bar_dot 5s linear infinite;
    border-radius: 0 !important;
}

@-webkit-keyframes bar_dot {
    from {
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px);
    }

    to {
        -webkit-transform: translateX(65px);
        transform: translateX(65px);
    }
}

@keyframes bar_dot {
    from {
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px);
    }

    to {
        -webkit-transform: translateX(65px);
        transform: translateX(65px);
    }
}

.footer-item-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 16px;
}

.footer-item-link {
    color: hsl(var(--border-light));
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    font-size: 20px;
    line-height: 1.6;
    font-weight: 500;
}

@media screen and (max-width: 1399px) {
    .footer-item-link {
        font-size: 18px;
    }
}

@media screen and (max-width: 991px) {
    .footer-item-link {
        font-size: 16px;
    }
}

.footer-review {
    --gap: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: var(--gap);
}

@media screen and (max-width: 1399px) {
    .footer-review {
        --gap: 24px;
    }
}

@media screen and (max-width: 767px) {
    .footer-review {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        width: 100%;
    }
}

.footer-review-item-logo {
    text-align: center;
    margin-bottom: 6px;
}

@media screen and (max-width: 767px) {
    .footer-review-item-logo img {
        height: 20px;
    }
}

.footer-review-item-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
}

.footer-review-item-content .title {
    color: hsl(var(--light));
    font-size: 12px;
    font-weight: 500;
    line-height: 140%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.review-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.review-list-item {
    color: hsl(var(--warning));
}

.review-list-item svg {
    height: 16px;
    width: 16px;
}

@media screen and (max-width: 1399px) {
    .review-list-item svg {
        height: 12px;
        width: 12px;
    }
}

@media screen and (max-width: 575px) {
    .review-list-item svg {
        height: 9px;
        width: 9px;
    }
}

.footer-bottom {
    border-top: 1px solid hsl(var(--border-black));
    padding-block: 16px;
    text-align: center;
}

.footer-bottom-text {
    color: hsl(var(--light));
    font-size: 16px;
    font-weight: 400;
    line-height: 140%;
}

.footer-text {
    margin-top: clamp(3.4375rem, 2.7549rem + 2.9126vw, 6.25rem);
    text-align: center;
    white-space: nowrap;
    font-family: var(--secondary-font);
    font-size: clamp(3.375rem, 0.0073rem + 14.3689vw, 17.25rem);
    font-weight: 900;
    line-height: 120%;
    letter-spacing: -3.048px;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(-161.59%, hsl(var(--body-color))), color-stop(79.45%, transparent));
    background: linear-gradient(180deg, hsl(var(--body-color)) -161.59%, transparent 79.45%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: -2%;
}

/* ========================= Footer CSS End ============================= */
/* ===================== Scroll to Top Start ================================= */
.scroll-top {
    position: fixed;
    right: 30px;
    bottom: 30px;
    color: hsl(var(--white));
    width: 48px;
    height: 48px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 50%;
    z-index: 5;
    -webkit-transition: 0.5s;
    transition: 0.5s;
    cursor: pointer;
    -webkit-transform: scale(0);
    transform: scale(0);
    background-color: hsl(var(--base));
    display: none;
}

.scroll-top:hover {
    color: hsl(var(--white));
    background-color: hsl(var(--base-d-100));
}

.scroll-top.show {
    -webkit-transform: scale(1);
    transform: scale(1);
}

/* ===================== Scroll to Top End ================================= */
/* ================================= Template Selection Css Start =========================== */
::-moz-selection {
    color: hsl(var(--white));
    background: hsl(var(--base-d-100));
}

::selection {
    color: hsl(var(--white));
    background: hsl(var(--base-d-100));
}

/* ================================= Template Selection Css End ===========================  */
/* ========================= Social Icon CSS Start ======================== */
.social {
    position: absolute;
    bottom: 32px;
    left: 32px;
}

@media screen and (max-width: 1399px) {
    .social {
        bottom: 24px;
        left: 24px;
    }
}

@media screen and (max-width: 1199px) {
    .social {
        display: none;
    }
}

.social-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 12px;
}

.social-link {
    --icon-size: 40px;
    width: var(--icon-size);
    height: var(--icon-size);
    display: grid;
    place-content: center;
    border-radius: 12px;
    border: 1px solid hsl(var(--white)/0.25);
    background: hsl(var(--white)/0.05);
    -webkit-backdrop-filter: blur(7.5px);
    backdrop-filter: blur(7.5px);
    color: hsl(var(--white));
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.social-link:hover {
    background: hsl(var(--base));
    color: hsl(var(--white));
}

/* ========================= Social Icon CSS End ========================== */
/* ====================== Breadcrumb Css Start ==================== */
.breadcrumb-list {
    border-radius: 250px;
    border: 2px solid hsl(var(--base));
    background: hsl(var(--base)/0.15);
    padding: 6px 18px;
    display: inline-block;
    margin-bottom: 16px;
}

@media screen and (max-width: 1199px) {
    .breadcrumb-list {
        padding: 6px 16px;
    }
}

.breadcrumb-list-item {
    color: hsl(var(--base)/0.5);
    font-size: 20px;
    font-weight: 700;
    line-height: 140%;
}

@media screen and (max-width: 1199px) {
    .breadcrumb-list-item {
        font-size: 18px;
    }

    .breadcrumb-list-item:not(:last-child) {
        margin-right: 4px;
    }
}

@media screen and (max-width: 767px) {
    .breadcrumb-list-item {
        font-size: 16px;
    }
}

.breadcrumb-list-item.active {
    color: hsl(var(--base));
    pointer-events: none;
}

/* ====================== Breadcrumb Css End ==================== */
/* ====================== Section Heading ==================== */
.section-heading {
    --outer-m: 50px;
    --name-fs: 20px;
    --desc-fs: 18px;
    --extra-fs: 104px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: var(--outer-m);
}

@media screen and (max-width: 1599px) {
    .section-heading {
        --outer-m: 40px;
        --name-fs: 18px;
        --extra-fs: 84px;
    }
}

@media screen and (max-width: 1199px) {
    .section-heading {
        --outer-m: 32px;
        --name-fs: 16px;
        --extra-fs: 64px;
        --desc-fs: 16px;
    }
}

@media screen and (max-width: 767px) {
    .section-heading {
        --extra-fs: 48px;
    }
}

.section-heading-content {
    max-width: -webkit-max-content;
    max-width: -moz-max-content;
    max-width: max-content;
    width: 100%;
}

.section-heading-name {
    font-size: var(--name-fs);
    font-weight: 500;
    color: hsl(var(--black));
    margin-bottom: 12px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
}

.section-heading-name .icon {
    color: hsl(var(--base));
    font-size: calc(var(--name-fs) * 1.25);
}

.section-heading-name .text {
    position: relative;
    --overlay-bg: hsl(var(--light-bg));
    width: 180px;
    white-space: nowrap;
    overflow: hidden;
    text-transform: uppercase;
}

.section-heading-name .text::before, .section-heading-name .text::after {
    position: absolute;
    content: "";
    width: 50px;
    height: 100%;
    top: 0;
    z-index: 2;
}

.section-heading-name .text::after {
    left: 0;
    background: linear-gradient(235deg, transparent 0%, var(--overlay-bg) 100%);
}

.section-heading-name .text::before {
    right: 0;
    background: -webkit-gradient(linear, left top, right top, from(transparent), to(var(--overlay-bg)));
    background: linear-gradient(90deg, transparent 0%, var(--overlay-bg) 100%);
}

.section-heading-title {
    font-size: var(--extra-fs);
    font-weight: 900;
    line-height: 87%;
}

.section-heading-title .highlight {
    color: hsl(var(--body-color));
    display: block;
}

.section-heading-subheading {
    color: hsl(var(--body-color));
    font-weight: 400;
}

.section-heading-desc {
    max-width: 536px;
    width: 100%;
    font-size: var(--desc-fs);
    color: hsl(var(--black));
}

@media screen and (max-width: 991px) {
    .section-heading-desc {
        display: none;
    }
}

.section-heading[variant=light] .section-heading-name {
    color: hsl(var(--white));
}

.section-heading[variant=light] .section-heading-name .text {
    --overlay-bg: hsl(var(--black)) 036;
}

.section-heading[variant=light] .section-heading-title {
    color: hsl(var(--white));
}

.section-heading[variant=light] .section-heading-desc {
    color: hsl(var(--light));
}

.section-heading-subtitle {
    --extra-x-fs: 180px;
    font-size: var(--extra-x-fs);
    font-weight: 900;
    line-height: 87%;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(-331.4%, hsl(var(--white))), to(transparent));
    background: linear-gradient(180deg, hsl(var(--white)) -331.4%, transparent 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

@media screen and (max-width: 1399px) {
    .section-heading-subtitle {
        --extra-x-fs: 140px;
    }
}

@media screen and (max-width: 1199px) {
    .section-heading-subtitle {
        --extra-x-fs: 110px;
    }
}

@media screen and (max-width: 991px) {
    .section-heading-subtitle {
        --extra-x-fs: 80px;
    }
}

@media screen and (max-width: 767px) {
    .section-heading-subtitle {
        --extra-x-fs: 70px;
    }
}

@media screen and (max-width: 575px) {
    .section-heading-subtitle {
        --extra-x-fs: 64px;
    }
}

@media screen and (max-width: 424px) {
    .section-heading-subtitle {
        --extra-x-fs: 48px;
    }
}

.section-heading[align=center] {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.section-heading[align=center] .section-heading-name {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.section-heading[space-bottom=true] {
    margin-bottom: -30px;
}

@media screen and (max-width: 1199px) {
    .section-heading[space-bottom=true] {
        margin-bottom: -10px;
    }
}

@media screen and (max-width: 424px) {
    .section-heading[space-bottom=true] {
        margin-bottom: -6px;
    }
}

.section-heading-bar {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    height: 4px;
    background-color: hsl(var(--body-color));
    margin-left: 36px;
    margin-bottom: 20px;
}

/* ====================== Section Heading End ==================== */
.nav-menu {
    position: fixed;
    bottom: 40px;
    z-index: 999999;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    max-width: 615px;
    width: 100%;
    border-radius: 12px;
    padding: 6px 32px;
}

@media screen and (max-width: 1399px) {
    .nav-menu {
        max-width: 500px;
    }
}

@media screen and (max-width: 1199px) {
    .nav-menu {
        padding: 8px 20px;
        bottom: 32px;
    }
}

@media screen and (max-width: 767px) {
    .nav-menu {
        padding: 8px 16px;
        max-width: calc(100vw - 32px);
        bottom: 24px;
    }
}

@media screen and (max-width: 575px) {
    .nav-menu {
        bottom: 20px;
    }
}

.nav-menu::before {
    content: "";
    z-index: -1;
    background: hsl(var(--heading-color));
    position: absolute;
    height: calc(100% - 2px);
    width: calc(100% - 2px);
    inset: 1px;
    border-radius: 12px;
    -webkit-box-shadow: 0 1px 1px -0.5px hsl(var(--black)/0.04), 0 3px 3px -1.5px hsl(var(--black)/0.04), 0 3px 6px -2px hsl(var(--white)/0.64) inset, 0 0 8px -2px hsl(var(--white)/0.48) inset;
    box-shadow: 0 1px 1px -0.5px hsl(var(--black)/0.04), 0 3px 3px -1.5px hsl(var(--black)/0.04), 0 3px 6px -2px hsl(var(--white)/0.64) inset, 0 0 8px -2px hsl(var(--white)/0.48) inset;
}

.nav-menu::after {
    content: "";
    z-index: -2;
    background: -webkit-gradient(linear, left bottom, left top, from(transparent), to(hsl(var(--base))));
    background: linear-gradient(0deg, transparent 0%, hsl(var(--base)) 100%);
    position: absolute;
    inset: 0;
    border-radius: 12px;
}

.nav-menu-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.nav-menu-link {
    color: hsl(var(--white));
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 130%;
}

@media screen and (max-width: 991px) {
    .nav-menu-link {
        font-size: 1rem;
    }
}

.nav-menu-inbox-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 40px;
    height: 40px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 6px;
    background: hsl(var(--base));
    color: hsl(var(--white));
    -webkit-box-shadow: 0 0 2.232px 0 hsl(var(--base)/0.1), 0 4.465px 8.93px 0 hsl(var(--base)/0.1);
    box-shadow: 0 0 2.232px 0 hsl(var(--base)/0.1), 0 4.465px 8.93px 0 hsl(var(--base)/0.1);
    font-size: 24px;
}

.nav-menu-item--has-mega:hover .mega-menu {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateX(-50%) translateY(0);
    transform: translateX(-50%) translateY(0);
    -webkit-transition: opacity 0.25s, visibility 0.25s, -webkit-transform 0.25s;
    transition: opacity 0.25s, visibility 0.25s, -webkit-transform 0.25s;
    transition: opacity 0.25s, visibility 0.25s, transform 0.25s;
    transition: opacity 0.25s, visibility 0.25s, transform 0.25s, -webkit-transform 0.25s;
}

.nav-menu-contact-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    border-radius: 10px;
    background: hsl(var(--base));
    color: hsl(var(--white));
    padding: 7px 7px 7px 24px;
    -webkit-box-shadow: 0 0 4px 0 hsl(var(--base)/0.1), 0 8px 16px 0 hsl(var(--base)/0.1);
    box-shadow: 0 0 4px 0 hsl(var(--base)/0.1), 0 8px 16px 0 hsl(var(--base)/0.1);
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 130%;
}

@media screen and (max-width: 1399px) {
    .nav-menu-contact-link {
        padding: 6px 6px 6px 16px;
        font-size: 1.125rem;
    }
}

.nav-menu-contact-link .icon {
    --size: 42px;
    color: hsl(var(--base));
    background-color: hsl(var(--white));
    height: var(--size);
    width: var(--size);
    border-radius: 8px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 22px;
    overflow: hidden;
}

.nav-menu-contact-link .icon i {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform: translate(0px, 2px);
    transform: translate(0px, 2px);
    text-shadow: -42px 0px hsl(var(--base));
}

.nav-menu-contact-link:hover {
    color: hsl(var(--white));
    background-color: hsl(var(--base-l-100));
}

.nav-menu-contact-link:hover i {
    -webkit-transform: translate(42px, 2px);
    transform: translate(42px, 2px);
}

.mega-menu {
    position: absolute;
    bottom: calc(100% + 12px);
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(8px);
    transform: translateX(-50%) translateY(8px);
    width: 880px;
    border-radius: 20px;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-shadow: 0 24px 64px hsl(var(--black)/0.13), 0 0 0 1px hsl(var(--black)/0.06);
    box-shadow: 0 24px 64px hsl(var(--black)/0.13), 0 0 0 1px hsl(var(--black)/0.06);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.25s 0.15s, visibility 0.25s 0.15s, -webkit-transform 0.25s 0.15s;
    transition: opacity 0.25s 0.15s, visibility 0.25s 0.15s, -webkit-transform 0.25s 0.15s;
    transition: opacity 0.25s 0.15s, visibility 0.25s 0.15s, transform 0.25s 0.15s;
    transition: opacity 0.25s 0.15s, visibility 0.25s 0.15s, transform 0.25s 0.15s, -webkit-transform 0.25s 0.15s;
    background-color: hsl(var(--white));
}

@media screen and (max-width: 1199px) {
    .mega-menu {
        width: 700px;
    }
}

@media screen and (max-width: 991px) {
    .mega-menu {
        width: 650px;
    }
}

@media screen and (max-width: 767px) {
    .mega-menu {
        width: 550px;
    }
}

@media screen and (max-width: 575px) {
    .mega-menu {
        width: 100%;
    }
}

.mega-menu__left {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    padding: 36px 32px 0;
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media screen and (max-width: 1199px) {
    .mega-menu__left {
        padding: 24px 24px 0;
    }
}

@media screen and (max-width: 575px) {
    .mega-menu__left {
        display: none;
    }
}

.mega-menu__badge {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    background: hsl(var(--white));
    color: hsl(var(--base));
    border-radius: 100px;
    padding: 6px 14px 6px 10px;
    font-weight: 600;
    margin-bottom: 22px;
    -ms-flex-item-align: start;
    align-self: flex-start;
}

@media screen and (max-width: 1199px) {
    .mega-menu__badge {
        font-size: 14px;
    }
}

.mega-menu__badge i {
    font-size: 15px;
}

.mega-menu__title {
    font-weight: 900;
    color: hsl(var(--heading-color));
    margin-bottom: 14px;
}

.mega-menu__highlight {
    color: hsl(var(--base));
    display: block;
}

.mega-menu__desc {
    font-size: 0.9375rem;
    color: hsl(var(--black));
    line-height: 1.6;
    margin-bottom: 24px;
    max-width: 240px;
    font-weight: 500;
}

.mega-menu__cta {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    background: hsl(var(--heading-color));
    color: hsl(var(--white));
    border-radius: 100px;
    padding: 4px 4px 4px 20px;
    font-size: 1rem;
    font-weight: 700;
    -ms-flex-item-align: start;
    align-self: flex-start;
    -webkit-transition: background 0.2s;
    transition: background 0.2s;
}

.mega-menu__cta:hover {
    color: hsl(var(--white));
    background: hsl(var(--base));
}

.mega-menu__cta:hover .mega-menu__cta-icon {
    background: hsl(var(--black));
}

.mega-menu__cta-icon {
    --size: 36px;
    width: var(--size);
    height: var(--size);
    background: hsl(var(--base));
    border-radius: 100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 20px;
    color: hsl(var(--white));
}

.mega-menu__thumb {
    margin-top: auto;
    text-align: center;
}

.mega-menu__thumb img {
    max-width: 90%;
    display: block;
    margin: 0 auto;
}

@media screen and (max-width: 1399px) {
    .mega-menu__thumb img {
        max-width: 80%;
    }
}

.mega-menu__right {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    background: hsl(var(--white));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 24px 32px;
}

@media screen and (max-width: 1199px) {
    .mega-menu__right {
        padding: 16px 24px;
    }
}

.mega-menu__item {
    border-bottom: 1px solid hsl(var(--border-color));
}

.mega-menu__item:last-child {
    border-bottom: none;
}

.mega-menu__link {
    --inner-p: 28px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    padding-block: var(--inner-p);
    padding-right: 20px;
    -webkit-transition: background 0.2s;
    transition: background 0.2s;
    position: relative;
    z-index: 1;
    --size: 56px;
}

@media screen and (max-width: 1399px) {
    .mega-menu__link {
        --inner-p: 20px;
    }
}

@media screen and (max-width: 1199px) {
    .mega-menu__link {
        --size: 48px;
        --inner-p: 16px;
    }
}

.mega-menu__link::after {
    content: "";
    position: absolute;
    z-index: -1;
    background: hsl(var(--base-l-900));
    border-radius: 10px;
    height: var(--size);
    width: var(--size);
    left: 0;
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
}

.mega-menu__link:hover::after {
    height: 100%;
    width: 100%;
    border-radius: 0;
}

.mega-menu__link:hover .mega-menu__name {
    color: hsl(var(--base));
}

.mega-menu__link:hover .mega-menu__arrow {
    -webkit-transform: translateY(-50%) rotate(-90deg);
    transform: translateY(-50%) rotate(-90deg);
}

.mega-menu__icon {
    width: var(--size);
    height: var(--size);
    min-width: var(--size);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: hsl(var(--base));
    font-size: calc(var(--size) * 0.6);
}

.mega-menu__info {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2px;
}

.mega-menu__name {
    font-size: 1.125rem;
    font-weight: 700;
    color: hsl(var(--heading-color));
    line-height: 1.3;
    -webkit-transition: color 0.2s;
    transition: color 0.2s;
}

@media screen and (max-width: 1199px) {
    .mega-menu__name {
        font-size: 17px;
    }
}

.mega-menu__text {
    font-size: 0.9375rem;
    color: hsl(var(--body-color));
}

@media screen and (max-width: 1199px) {
    .mega-menu__text {
        font-size: 0.875rem;
        font-weight: 500;
    }
}

.mega-menu__arrow {
    color: hsl(var(--heading-color));
    font-size: 24px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-transition: -webkit-transform 0.2s;
    transition: -webkit-transform 0.2s;
    transition: transform 0.2s;
    transition: transform 0.2s, -webkit-transform 0.2s;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(-90deg);
    transform: translateY(-50%) rotate(-90deg);
    right: 0;
}

@media screen and (max-width: 1199px) {
    .mega-menu__arrow {
        font-size: 17px;
    }
}

.banner {
    height: 100dvh;
    position: relative;
    overflow: hidden;
}

.banner-control {
    height: 100%;
    padding: 16px;
}

@media screen and (max-width: 1599px) {
    .banner-control {
        padding: 12px;
    }
}

@media screen and (max-width: 575px) {
    .banner-control {
        padding: 8px;
    }
}

.banner-wrapper {
    position: relative;
    z-index: 1;
    border-radius: 32px;
    height: 100%;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media screen and (max-width: 1599px) {
    .banner-wrapper {
        border-radius: 24px;
    }
}

.banner-wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background: hsl(var(--dark)/0.5);
}

.banner-bg {
    position: absolute;
    inset: 0;
    z-index: -4;
}

.banner-bg video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.banner-text {
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(20%);
    transform: translateX(-50%) translateY(20%);
    width: 100%;
    font-family: var(--secondary-font);
    font-size: clamp(3.375rem, 0.0073rem + 14.3689vw, 17.25rem);
    white-space: nowrap;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -5.248px;
    font-weight: 900;
    line-height: 1.4;
    text-align: center;
    background: -webkit-gradient(linear, left top, left bottom, from(hsl(var(--white)/0.08)), to(transparent));
    background: linear-gradient(180deg, hsl(var(--white)/0.08) 0%, transparent 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    -webkit-backdrop-filter: blur(0.65px);
    backdrop-filter: blur(0.65px);
    z-index: -3;
}

@media screen and (max-width: 1199px) {
    .banner-text {
        letter-spacing: -4px;
    }
}

.banner-light-shape {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 0;
    z-index: -1;
    color: hsl(var(--base));
}

.banner-content {
    max-width: 1268px;
    width: 100%;
    margin-inline: auto;
    padding-block: 24vh;
}

@media screen and (max-width: 1399px) {
    .banner-content {
        max-width: 1100px;
    }
}

@media screen and (max-width: 1199px) {
    .banner-content {
        max-width: 1000px;
    }
}

@media screen and (max-width: 991px) {
    .banner-content {
        max-width: 720px;
    }
}

@media screen and (max-width: 767px) {
    .banner-content {
        max-width: 620px;
        padding-inline: 6px;
    }
}

@media screen and (max-width: 575px) {
    .banner-content {
        max-width: 520px;
    }
}

.banner-content-title {
    font-size: 102px;
    line-height: 1.3;
    text-align: center;
    color: hsl(var(--white));
    font-weight: 900;
    margin-bottom: 32px;
}

@media screen and (max-width: 1599px) {
    .banner-content-title {
        font-size: 80px;
    }
}

@media screen and (max-width: 1399px) {
    .banner-content-title {
        font-size: 70px;
    }
}

@media screen and (max-width: 1199px) {
    .banner-content-title {
        font-size: 64px;
    }
}

@media screen and (max-width: 991px) {
    .banner-content-title {
        font-size: 52px;
        margin-bottom: 24px;
    }
}

@media screen and (max-width: 575px) {
    .banner-content-title {
        font-size: 44px;
        margin-bottom: 16px;
    }
}

@media screen and (max-width: 424px) {
    .banner-content-title {
        margin-bottom: 8px;
    }
}

.banner-content-title .highlight-text {
    position: relative;
    z-index: 1;
    padding-inline: 20px;
}

@media screen and (max-width: 1399px) {
    .banner-content-title .highlight-text {
        padding-inline: 16px;
    }
}

.banner-content-title .highlight-text::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: hsl(var(--base));
    border-radius: 22px;
    -webkit-transform: rotate(-2.5deg);
    transform: rotate(-2.5deg);
}

@media screen and (max-width: 1399px) {
    .banner-content-title .highlight-text::after {
        border-radius: 16px;
    }
}

@media screen and (max-width: 575px) {
    .banner-content-title .highlight-text::after {
        border-radius: 10px;
    }
}

.banner-content-desc {
    color: hsl(var(--white));
    text-align: center;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.3;
}

@media screen and (max-width: 1399px) {
    .banner-content-desc {
        font-size: 22px;
    }
}

@media screen and (max-width: 991px) {
    .banner-content-desc {
        font-size: 18px;
    }
}

@media screen and (max-width: 575px) {
    .banner-content-desc {
        font-size: 16px;
        font-weight: 400;
    }
}

.review {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: -webkit-max-content;
    max-width: -moz-max-content;
    max-width: max-content;
    width: 100%;
    margin-inline: auto;
    gap: 8px;
    padding: 8px;
    border-radius: 12px;
    border: 1px solid hsl(var(--white)/0.2);
    background: hsl(var(--white)/0.15);
    -webkit-backdrop-filter: blur(11.1px);
    backdrop-filter: blur(11.1px);
    margin-bottom: 44px;
}

@media screen and (max-width: 575px) {
    .review {
        margin-bottom: 24px;
    }
}

@media screen and (max-width: 767px) {
    .review {
        margin-bottom: 16px;
    }
}

.review-thumb {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.review-thumb-img {
    --size: 32px;
    width: var(--size);
    height: var(--size);
    border-radius: 8px;
    background-color: hsl(var(--white));
    -webkit-box-shadow: 0 0 6px 0 hsl(var(--black)/0.02), 0 2px 4px 0 hsl(var(--black)/0.08);
    box-shadow: 0 0 6px 0 hsl(var(--black)/0.02), 0 2px 4px 0 hsl(var(--black)/0.08);
    display: grid;
    place-items: center;
    position: relative;
}

@media screen and (max-width: 991px) {
    .review-thumb-img {
        --size: 24px;
        border-radius: 6px;
    }
}

.review-thumb-img:not(:first-child) {
    margin-left: -10px;
}

@media screen and (max-width: 991px) {
    .review-thumb-img:not(:first-child) {
        margin-left: -6px;
    }
}

.review-thumb-img:first-child {
    z-index: 1;
}

.review-thumb-img:last-child {
    z-index: -1;
}

.review-thumb-img img {
    max-width: 24px;
}

@media screen and (max-width: 991px) {
    .review-thumb-img img {
        max-width: 18px;
    }
}

.review-content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
}

.review-rating {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.review-rating .icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    color: hsl(var(--warning));
}

@media screen and (max-width: 991px) {
    .review-rating .icon svg {
        width: 16px;
        height: 16px;
    }
}

.review-count {
    color: hsl(var(--white));
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
}

@media screen and (max-width: 991px) {
    .review-count {
        font-size: 16px;
    }
}

.video {
    height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 1;
    position: relative;
    margin-bottom: 150vh;
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(hsl(var(--black)/0.4)));
    background: linear-gradient(180deg, transparent 0%, hsl(var(--black)/0.4) 100%);
}

.video-wrapper {
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 480px;
    width: 40%;
    will-change: transform;
    opacity: 1;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-transform-origin: 50% 50% 0px;
    transform-origin: 50% 50% 0px;
    -webkit-transform: perspective(1200px) translateY(10px) rotateX(50deg);
    transform: perspective(1200px) translateY(10px) rotateX(50deg);
    position: relative;
}

@media screen and (max-width: 1399px) {
    .video-wrapper {
        height: 400px;
    }
}

@media screen and (max-width: 1199px) {
    .video-wrapper {
        height: 380px;
    }
}

.video video {
    width: 100%;
    height: 100%;
    border-radius: 0px;
    display: block;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    -webkit-transform-origin: center center;
    transform-origin: center center;
}

.faq-section {
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.faq-cta {
    --inner-p: 40px;
    --inner-gap: 32px;
    --title-size: 32px;
    text-align: center;
}

@media screen and (max-width: 1399px) {
    .faq-cta {
        --title-size: 28px;
        --inner-p: 32px;
        --inner-gap: 24px;
    }
}

@media screen and (max-width: 1199px) {
    .faq-cta {
        --title-size: 24px;
    }
}

@media screen and (max-width: 991px) {
    .faq-cta {
        --inner-p: 24px;
        --inner-gap: 16px;
    }
}

@media screen and (max-width: 767px) {
    .faq-cta {
        --title-size: 20px;
    }
}

@media screen and (max-width: 575px) {
    .faq-cta {
        --inner-p: 16px;
    }
}

.faq-cta-wrapper {
    padding: var(--inner-p);
    border-radius: 8px;
    border: 1px solid hsl(var(--border-color)/0.4);
    background: hsl(var(--section-bg)/0.1);
    overflow: hidden;
    position: relative;
    z-index: 1;
}

.faq-cta-wrapper::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 470px;
    height: 470px;
    border-radius: 50%;
    background: conic-gradient(from 90deg at 50% 50%, #2a3b55 0deg, #1f2e26 54deg, #1a1d23 108deg, hsl(var(--base)/0.3) 162deg, #2b3c5c 208.8deg, #1a1d23 270deg, #2b4d4c 306deg, #2a3b55 360deg);
    -webkit-filter: blur(140px);
    filter: blur(140px);
}

@-moz-document url-prefix() {
    .faq-cta-wrapper::before {
        opacity: 0.4;
    }
}

.faq-cta-thumbs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    margin-bottom: var(--inner-gap);
    --img-size: 48px;
}

@media screen and (max-width: 575px) {
    .faq-cta-thumbs {
        --img-size: 40px;
    }
}

.faq-cta-thumbs img {
    border-radius: 50%;
    border: 2px solid hsl(var(--white));
    width: var(--img-size);
    height: var(--img-size);
    -o-object-fit: cover;
    object-fit: cover;
}

.faq-cta-thumbs img.center-image {
    --img-size: 56px;
    position: relative;
    z-index: 1;
    margin-inline: -16px;
}

@media screen and (max-width: 575px) {
    .faq-cta-thumbs img.center-image {
        --img-size: 44px;
        margin-inline: -12px;
    }
}

.faq-cta-title {
    font-size: var(--title-size);
    color: hsl(var(--heading-color));
}

.faq-cta-desc {
    color: hsl(var(--heading-color));
    margin-bottom: var(--inner-gap);
}

.faq-thumb {
    border-radius: 12px;
    overflow: hidden;
}

.service-section {
    position: relative;
    z-index: 2;
    background-color: hsl(var(--white));
    overflow: hidden;
    min-height: 100vh;
}

.service-card {
    --radius: 40px;
    --card-bg: 38 100% 96%;
    --inner-p: 32px;
    --thumb-w: 50%;
    --gap: 48px;
    --outer-gap: 48px;
    --text-fs: 18px;
    --icon-size: 56px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: var(--inner-p);
    padding-left: calc(var(--inner-p) * 1.75);
    gap: var(--gap);
    background-color: hsl(var(--card-bg));
    border-radius: var(--radius);
    position: relative;
    will-change: transform;
    -webkit-perspective: 500px;
    perspective: 500px;
}

@media screen and (max-width: 1399px) {
    .service-card {
        --radius: 30px;
        --inner-p: 24px;
        --gap: 32px;
        --outer-gap: 32px;
        --text-fs: 16px;
        --icon-size: 40px;
    }
}

@media screen and (max-width: 1199px) {
    .service-card {
        --gap: 24px;
        --radius: 24px;
        --inner-p: 20px;
        --thumb-w: 40%;
    }
}

@media screen and (max-width: 991px) {
    .service-card {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: var(--inner-p);
        gap: 36px;
    }
}

@media screen and (max-width: 575px) {
    .service-card {
        --radius: 20px;
        --inner-p: 16px;
        --icon-size: 32px;
    }
}

.service-card.style-two {
    padding: 0;
    --thumb-w: 53%;
    background-color: transparent;
}

.service-card:not(:last-child) {
    margin-bottom: var(--outer-gap);
}

.service-card.card-two {
    --card-bg: 226, 100%, 97%;
}

.service-card.card-three {
    --card-bg: 152, 81%, 96%;
}

.service-card.card-four {
    --card-bg: 0, 86%, 97%;
}

.service-card.card-five {
    --card-bg: 270, 100%, 98%;
}

.service-card-content {
    width: calc(100% - (var(--thumb-w) + var(--gap)));
}

@media screen and (max-width: 991px) {
    .service-card-content {
        width: 100%;
    }
}

.service-card-title {
    margin-bottom: 10px;
}

.service-card-title a {
    position: relative;
}

.service-card-title a::after {
    content: "";
    position: absolute;
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
    height: 2px;
    width: 0px;
    background-color: hsl(var(--black));
    bottom: 0;
    left: 0;
}

.service-card-title:hover a {
    color: hsl(var(--black));
}

.service-card-title:hover a::after {
    width: 100%;
}

.service-card-desc {
    color: hsl(var(--secondary));
    font-size: var(--text-fs);
    line-height: 160%;
    margin-bottom: 24px;
}

.service-card-info {
    margin-bottom: var(--outer-gap);
}

.service-card-info .title {
    margin-bottom: 8px;
    line-height: 1.4;
}

.service-card-info-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 12px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.service-card-info-item {
    width: calc(50% - 6px);
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 6px;
    color: hsl(var(--secondary));
    font-size: var(--text-fs);
}

@media screen and (max-width: 1199px) {
    .service-card-info-item {
        font-size: 15px;
    }
}

@media screen and (max-width: 575px) {
    .service-card-info-item {
        width: 100%;
    }
}

.service-card-info-item::before {
    content: "";
    width: 12px;
    height: 2px;
    background-color: hsl(var(--secondary));
}

.service-card-tech {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 8px;
}

.service-card-tech-item {
    width: var(--icon-size);
    height: var(--icon-size);
    border-radius: 12px;
    display: grid;
    place-content: center;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.61);
    padding: 6px;
}

@media screen and (max-width: 1199px) {
    .service-card-tech-item {
        border-radius: 8px;
    }
}

.service-card-link {
    --size: 56px;
    height: var(--size);
    width: var(--size);
    position: absolute;
    top: 20px;
    right: 20px;
    border-radius: 12px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.6);
    -webkit-box-shadow: 0 0 12px 0 hsl(var(--black)/0.1);
    box-shadow: 0 0 12px 0 hsl(var(--black)/0.1);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    color: hsl(var(--black));
    font-size: calc(var(--size) * 0.65);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    opacity: 0;
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
    visibility: hidden;
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
}

@media screen and (max-width: 1199px) {
    .service-card-link {
        --size: 56px;
    }
}

.service-card:hover .service-card-link {
    visibility: visible;
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
}

.service-card-thumb {
    border-radius: calc(var(--radius) / 1.33);
    overflow: hidden;
    width: var(--thumb-w);
    position: relative;
}

@media screen and (max-width: 991px) {
    .service-card-thumb {
        width: 100%;
    }
}

.service-card-btn {
    margin-top: var(--outer-gap);
}

.service-card-btn .btn {
    border-radius: 12px;
}

.services-wrapper .service-card:nth-child(odd) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

@media screen and (max-width: 991px) {
    .services-wrapper .service-card:nth-child(odd) {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

.tween-section {
    background-color: hsl(var(--dark));
    border-radius: 40px;
}

@media screen and (max-width: 1399px) {
    .tween-section {
        border-radius: 32px;
    }
}

@media screen and (max-width: 1199px) {
    .tween-section {
        border-radius: 24px;
    }
}

@media screen and (max-width: 575px) {
    .tween-section {
        border-radius: 20px;
    }
}

.tween-section .products-section {
    background-color: transparent;
    border-radius: 0;
}

.tween-section.style-two {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.products-section {
    background-color: hsl(var(--dark));
    min-height: 100vh;
    border-radius: 40px;
    overflow-x: clip;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media screen and (max-width: 1399px) {
    .products-section {
        border-radius: 32px;
    }
}

@media screen and (max-width: 1199px) {
    .products-section {
        border-radius: 24px;
    }
}

@media screen and (max-width: 575px) {
    .products-section {
        border-radius: 20px;
    }
}

.products-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    gap: 64px;
    will-change: transform;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

@media screen and (max-width: 1599px) {
    .products-wrapper {
        gap: 48px;
    }
}

@media screen and (max-width: 991px) {
    .products-wrapper {
        gap: 32px;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

.product-item {
    --content-w: 240px;
    --extra-w: 320px;
    --gap: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--gap);
    padding: 24px 40px;
    border-radius: 40px;
    position: relative;
    overflow: hidden;
    z-index: 1;
    width: 100%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 1399px) {
    .product-item {
        --content-w: 240px;
        --extra-w: 280px;
        --gap: 32px;
        border-radius: 32px;
    }
}

@media screen and (max-width: 1199px) {
    .product-item {
        --extra-w: 200px;
        --gap: 24px;
        border-radius: 24px;
    }
}

@media screen and (max-width: 991px) {
    .product-item {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 24px;
    }
}

@media screen and (max-width: 575px) {
    .product-item {
        border-radius: 20px;
    }
}

.product-item-bg {
    position: absolute;
    inset: 0;
    z-index: -2;
}

.product-item::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    -webkit-backdrop-filter: blur(50px);
    backdrop-filter: blur(50px);
    background-color: hsl(var(--dark)/0.6);
}

.product-item .title {
    color: hsl(var(--light));
    line-height: 1.6;
}

@media screen and (max-width: 1399px) {
    .product-item .title {
        font-size: 0.875rem;
    }
}

.product-item-content {
    --gap: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--gap);
    width: var(--content-w);
}

@media screen and (max-width: 1399px) {
    .product-item-content {
        --gap: 20px;
    }
}

@media screen and (max-width: 991px) {
    .product-item-content {
        --gap: 16px;
        width: 100%;
        margin-bottom: 60px;
    }
}

.product-item-logo {
    max-width: 180px;
    width: 100%;
}

@media screen and (max-width: 1399px) {
    .product-item-logo {
        max-width: 160px;
    }
}

.product-item-desc {
    font-size: 1.125rem;
    line-height: 1.6;
    color: hsl(var(--light));
}

@media screen and (max-width: 1399px) {
    .product-item-desc {
        font-size: 1rem;
    }
}

@media screen and (max-width: 1199px) {
    .product-item-desc {
        font-size: 0.9375rem;
    }
}

.product-item-info {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--gap);
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 991px) {
    .product-item-info {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.product-item-info-list .item {
    font-size: 1.125rem;
    line-height: 1.4;
    color: hsl(var(--white));
    font-weight: 700;
    margin-top: 8px;
}

@media screen and (max-width: 1399px) {
    .product-item-info-list .item {
        font-size: 1rem;
    }
}

@media screen and (max-width: 1199px) {
    .product-item-info-list .item {
        font-size: 0.875rem;
    }
}

.product-item-info-date .time {
    font-size: 1.125rem;
    line-height: 1.4;
    color: hsl(var(--white));
    font-weight: 700;
}

@media screen and (max-width: 1399px) {
    .product-item-info-date .time {
        font-size: 1rem;
    }
}

@media screen and (max-width: 1199px) {
    .product-item-info-date .time {
        font-size: 0.875rem;
    }
}

.product-item-thumb {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    text-align: right;
}

.product-item-thumb img {
    border-radius: 40px;
}

@media screen and (max-width: 1399px) {
    .product-item-thumb img {
        border-radius: 32px;
        max-width: 390px;
        width: 100%;
    }
}

@media screen and (max-width: 1199px) {
    .product-item-thumb img {
        max-width: 360px;
        border-radius: 20px;
    }
}

@media screen and (max-width: 991px) {
    .product-item-thumb img {
        max-width: 100%;
    }
}

@media screen and (max-width: 575px) {
    .product-item-thumb img {
        border-radius: 16px;
    }
}

@media screen and (max-width: 991px) {
    .product-item-thumb {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }
}

.product-item-extra {
    width: var(--extra-w);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 991px) {
    .product-item-extra {
        width: 100%;
    }
}

.product-item-extra .item {
    font-size: 1.125rem;
    line-height: 1.4;
    color: hsl(var(--white));
    font-weight: 700;
    margin-top: 8px;
    display: block;
}

@media screen and (max-width: 1399px) {
    .product-item-extra .item {
        font-size: 1rem;
    }
}

@media screen and (max-width: 1199px) {
    .product-item-extra .item {
        font-size: 0.875rem;
    }
}

.product-item-extra .item:hover {
    text-decoration: underline;
}

.product-item-extra-link {
    color: hsl(var(--white));
    font-size: 20px;
    font-weight: 700;
    line-height: 140%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
}

@media screen and (max-width: 1399px) {
    .product-item-extra-link {
        font-size: 1rem;
    }
}

@media screen and (max-width: 1199px) {
    .product-item-extra-link {
        font-size: 0.9375rem;
    }
}

.product-item-extra-link .icon {
    -webkit-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
    font-size: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 1399px) {
    .product-item-extra-link .icon {
        font-size: 20px;
    }
}

@media screen and (max-width: 1199px) {
    .product-item-extra-link .icon {
        font-size: 18px;
    }
}

.product-item-extra-link:hover {
    color: hsl(var(--white)/0.6);
}

.product-item-extra-link:hover .text {
    text-decoration: underline;
}

.product-item-extra-link:hover .icon {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.stories-section {
    overflow-x: clip;
}

.stories-wrapper {
    --item-w: 90px;
    --item-h: 550px;
    --height-round: 40px;
    --radius: 20px;
    --gap: 24px;
    --view-width: 860px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: var(--gap);
    width: 100%;
    padding: 60px 0;
    position: relative;
    overflow: hidden;
    height: var(--item-h);
}

@media screen and (max-width: 1399px) {
    .stories-wrapper {
        --item-w: 75px;
        --item-h: 500px;
        --view-width: 720px;
    }
}

@media screen and (max-width: 1199px) {
    .stories-wrapper {
        --item-w: 70px;
        --item-h: 420px;
        --view-width: 520px;
        --radius: 16px;
    }
}

@media screen and (max-width: 991px) {
    .stories-wrapper {
        --item-w: 60px;
        --item-h: 360px;
        --view-width: 355px;
        --radius: 12px;
    }
}

@media screen and (max-width: 767px) {
    .stories-wrapper {
        --item-h: 300px;
        --view-width: 350px;
    }
}

@media screen and (max-width: 575px) {
    .stories-wrapper {
        --item-w: 40px;
        --item-h: 250px;
        --view-width: 240px;
        --gap: 8px;
        --radius: 8px;
        width: 336px;
        overflow-x: clip;
    }
}

.stories-item {
    height: calc(var(--item-h) - var(--height-round) * 2);
    width: var(--item-w);
    -ms-flex-negative: 0;
    flex-shrink: 0;
    border-radius: var(--radius);
    overflow: hidden;
    position: relative;
    -webkit-transition: width 0.8s cubic-bezier(0.4, 0, 0.2, 1), height 0.8s cubic-bezier(0.4, 0, 0.2, 1);
    transition: width 0.8s cubic-bezier(0.4, 0, 0.2, 1), height 0.8s cubic-bezier(0.4, 0, 0.2, 1);
    -webkit-transition: width 0.8s ease, height 0.8s ease, opacity 0.8s ease;
    transition: width 0.8s ease, height 0.8s ease, opacity 0.8s ease;
    cursor: pointer;
}

.stories-item.sm-height {
    height: calc(var(--item-h) - var(--height-round));
}

.stories-item-top {
    opacity: 0;
    visibility: hidden;
}

.stories-item-logo {
    position: absolute;
    top: 24px;
    left: 24px;
    max-width: 126px;
    width: 100%;
    z-index: 2;
}

@media screen and (max-width: 991px) {
    .stories-item-logo {
        max-width: 110px;
        top: 10px;
        left: 10px;
    }
}

.stories-item-sound {
    --size: 48px;
    position: absolute;
    top: 24px;
    right: 24px;
    z-index: 2;
    height: var(--size);
    width: var(--size);
    display: grid;
    place-content: center;
    border-radius: 50%;
    border: 1px solid hsl(var(--white)/0.62);
    background: hsla(var(--white)/0.21);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    cursor: pointer;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    z-index: 3;
}

@media screen and (max-width: 1199px) {
    .stories-item-sound {
        --size: 40px;
        top: 16px;
        right: 16px;
    }

    .stories-item-sound svg {
        width: 20px;
        height: 20px;
    }
}

@media screen and (max-width: 991px) {
    .stories-item-sound {
        --size: 32px;
        top: 12px;
        right: 12px;
    }

    .stories-item-sound svg {
        width: 16px;
        height: 16px;
    }
}

.stories-item-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
    display: none;
}

.stories-item-content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 24px;
    z-index: 2;
    opacity: 0;
    visibility: hidden;
    white-space: nowrap;
}

@media screen and (max-width: 1199px) {
    .stories-item-content {
        padding: 16px;
    }
}

.stories-item-content-inner {
    padding: 24px;
}

@media screen and (max-width: 991px) {
    .stories-item-content-inner {
        padding: 12px;
    }
}

@media screen and (max-width: 991px) and (max-width: 1199px) {
    .stories-item-content-inner {
        padding: 16px;
    }
}

@media screen and (max-width: 991px) and (max-width: 991px) {
    .stories-item-content-inner {
        padding: 12px;
    }
}

.stories-item-content::after {
    content: "";
    inset: 0;
    position: absolute;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(hsl(var(--black)/0.15)));
    background: linear-gradient(180deg, transparent 0%, hsl(var(--black)/0.15) 100%);
    -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(50%, hsl(var(--black))));
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, hsl(var(--black)) 50%);
    mask-image: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(50%, hsl(var(--black))));
    mask-image: linear-gradient(to bottom, transparent 0%, hsl(var(--black)) 50%);
    z-index: -1;
}

.stories-item-content .name {
    font-size: 1.25rem;
    font-weight: 700;
    color: hsl(var(--white));
}

@media screen and (max-width: 1199px) {
    .stories-item-content .name {
        font-size: 1.125rem;
    }
}

@media screen and (max-width: 991px) {
    .stories-item-content .name {
        font-size: 1rem;
    }
}

.stories-item-content .mail {
    font-size: 1rem;
    color: hsl(var(--white));
}

@media screen and (max-width: 1199px) {
    .stories-item-content .mail {
        font-size: 0.875rem;
    }
}

@media screen and (max-width: 991px) {
    .stories-item-content .mail {
        font-size: 0.75rem;
    }
}

.stories-item::after {
    content: "";
    inset: 0;
    position: absolute;
    background: hsl(var(--dark)/0.8);
    z-index: 2;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
}

.stories-item.stories-view {
    width: var(--view-width);
    height: var(--item-h);
}

.stories-item.stories-view::after {
    opacity: 0;
}

.stories-item.stories-view .stories-item-name {
    opacity: 0;
    visibility: hidden;
}

.stories-item.stories-view .stories-item-video {
    -webkit-animation: pauseControl 1s forwards linear;
    animation: pauseControl 1s forwards linear;
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
}

@-webkit-keyframes pauseControl {
    100% {
        opacity: 1;
        visibility: visible;
    }
}

@keyframes pauseControl {
    100% {
        opacity: 1;
        visibility: visible;
    }
}

.stories-item.stories-view .stories-item-top {
    opacity: 1;
    visibility: visible;
}

.stories-item.stories-view .stories-item-content {
    opacity: 1;
    visibility: visible;
}

.stories-item-img {
    width: 100%;
    height: 100%;
}

.stories-item-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.stories-item-name {
    z-index: 3;
    position: absolute;
    inset: 0;
    color: hsl(var(--white));
    font-size: 1.5rem;
    font-weight: 700;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-transform: scale(-1);
    transform: scale(-1);
    letter-spacing: 8px;
}

@media screen and (max-width: 1399px) {
    .stories-item-name {
        font-size: 1.25rem;
    }
}

@media screen and (max-width: 991px) {
    .stories-item-name {
        font-size: 1.0625rem;
    }
}

@media screen and (max-width: 767px) {
    .stories-item-name {
        font-size: 1rem;
    }
}

@media screen and (max-width: 575px) {
    .stories-item-name {
        font-size: 0.875rem;
        letter-spacing: 3px;
    }
}

@media screen and (max-width: 424px) {
    .stories-item-name {
        font-size: 0.75rem;
    }
}

.stories-item-arrow {
    position: absolute;
    inset: 0;
    z-index: 3;
    opacity: 0;
    visibility: hidden;
}

.stories-item-arrow .icon {
    --size: 40px;
    width: var(--size);
    height: var(--size);
    display: grid;
    place-content: center;
    position: absolute;
    bottom: 24px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transition: all linear 0.1s;
    transition: all linear 0.1s;
    color: hsl(var(--white));
    font-size: 48px;
}

@media screen and (max-width: 1199px) {
    .stories-item-arrow .icon {
        --size: 32px;
        bottom: 16px;
        font-size: 40px;
    }
}

@media screen and (max-width: 991px) {
    .stories-item-arrow .icon {
        --size: 28px;
        bottom: 8px;
        font-size: 28px;
    }
}

@media screen and (max-width: 991px) {
    .stories-item-arrow .icon {
        font-size: 20px;
    }
}

@media screen and (max-width: 424px) {
    .stories-item-arrow .icon {
        font-size: 18px;
    }
}

.stories-item.left-item .arrow-left {
    opacity: 1;
    visibility: visible;
}

.stories-item.right-item .arrow-right {
    opacity: 1;
    visibility: visible;
}

.stories-item:hover .arrow-left .icon {
    -webkit-transform: translateX(-60%) !important;
    transform: translateX(-60%) !important;
}

.stories-item:hover .arrow-right .icon {
    -webkit-transform: translateX(-40%) !important;
    transform: translateX(-40%) !important;
}

.statistics-heading {
    --outer-gap: 72px;
    --thumb-size: 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: var(--outer-gap);
}

@media screen and (max-width: 1399px) {
    .statistics-heading {
        --thumb-size: 60px;
    }
}

@media screen and (max-width: 991px) {
    .statistics-heading {
        --thumb-size: 48px;
        --outer-gap: 50px;
    }
}

@media screen and (max-width: 575px) {
    .statistics-heading {
        --thumb-size: 40px;
        --outer-gap: 24px;
    }
}

@media screen and (max-width: 575px) {
    .statistics-heading {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
}

@media screen and (max-width: 575px) {
    .statistics-heading-auth {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 8px;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.statistics-heading-auth .thumb img {
    height: var(--thumb-size);
    width: var(--thumb-size);
    border-radius: 100%;
    border: 3px solid hsl(var(--white));
    background: #8beab3;
    position: relative;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.statistics-heading-auth .thumb img:first-child {
    z-index: 1;
}

.statistics-heading-auth .thumb img:not(:last-child) {
    margin-right: -20px;
}

@media screen and (max-width: 575px) {
    .statistics-heading-auth .thumb img:not(:last-child) {
        margin-right: -16px;
    }
}

.statistics-heading-auth .title {
    color: hsl(var(--body-color));
    font-size: 18px;
    font-weight: 600;
    line-height: 120%;
    margin-top: 10px;
}

@media screen and (max-width: 1199px) {
    .statistics-heading-auth .title {
        font-size: 16px;
    }
}

@media screen and (max-width: 991px) {
    .statistics-heading-auth .title {
        font-size: 14px;
    }
}

@media screen and (max-width: 575px) {
    .statistics-heading-auth .title {
        margin: 0;
    }
}

.statistics-heading-desc {
    font-weight: 500;
    line-height: 140%;
    max-width: 910px;
    width: 100%;
    margin-left: auto;
}

@media screen and (max-width: 1399px) {
    .statistics-heading-desc {
        font-size: 36px;
        max-width: 720px;
    }
}

@media screen and (max-width: 1199px) {
    .statistics-heading-desc {
        font-size: 28px;
        max-width: 600px;
    }
}

@media screen and (max-width: 991px) {
    .statistics-heading-desc {
        font-size: 24px;
        max-width: 460px;
    }
}

@media screen and (max-width: 767px) {
    .statistics-heading-desc {
        font-size: 19px;
        max-width: 360px;
    }
}

@media screen and (max-width: 575px) {
    .statistics-heading-desc {
        max-width: unset;
        font-size: 24px;
        margin-top: 12px;
    }
}

.statistics-wrapper {
    --inner-gap: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.statistics-item:not(:first-child) {
    margin-left: var(--inner-gap);
    padding-left: var(--inner-gap);
    border-left: 1px solid hsl(var(--border-color)/0.8);
}

@media screen and (max-width: 991px) {
    .statistics-item {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        text-align: center;
    }
}

.statistics-item-count {
    font-weight: 600;
    margin-bottom: 6px;
}

@media screen and (max-width: 1199px) {
    .statistics-item-count {
        font-size: 42px;
    }
}

@media screen and (max-width: 991px) {
    .statistics-item-count {
        font-size: 36px;
    }
}

@media screen and (max-width: 767px) {
    .statistics-item-count {
        font-size: 24px;
        font-weight: 700;
    }
}

.statistics-item-title {
    color: hsl(var(--body-color));
    font-weight: 500;
    font-size: 1.125rem;
    line-height: 140%;
}

@media screen and (max-width: 1199px) {
    .statistics-item-title {
        font-size: 16px;
    }
}

@media screen and (max-width: 767px) {
    .statistics-item-title {
        font-size: 14px;
    }
}

.brand-slider {
    --count: 6;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 40px;
}

@media screen and (max-width: 991px) {
    .brand-slider {
        --count: 3;
        gap: 32px 0;
    }
}

@media screen and (max-width: 424px) {
    .brand-slider {
        --count: 2;
    }
}

.brand-slider-item {
    width: calc(100% / var(--count));
    text-align: center;
}

.brand-slider-item:first-child {
    text-align: left;
}

.brand-slider-item:last-child {
    text-align: end;
}

@media screen and (max-width: 991px) {
    .brand-slider-item {
        text-align: center !important;
    }
}

.brand-slider-item img {
    max-height: 38px;
    -o-object-fit: contain;
    object-fit: contain;
}

@media screen and (max-width: 767px) {
    .brand-slider-item img {
        max-height: 32px;
    }
}

@media screen and (max-width: 575px) {
    .brand-slider-item img {
        max-height: 28px;
    }
}

.tech-slider-section {
    overflow: hidden;
    isolation: isolate;
    contain: paint;
    background-color: hsl(var(--section-bg));
}

.tech-slider {
    padding-block: 48px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-perspective: 1000px;
    perspective: 1000px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    will-change: transform;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    backface-visibility: hidden;
}

@media screen and (max-width: 991px) {
    .tech-slider {
        padding-block: 32px;
    }
}

@media screen and (max-width: 767px) {
    .tech-slider {
        padding-block: 24px;
    }
}

.tech-slider-item {
    color: hsl(var(--body-color));
    padding-inline: 32px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 991px) {
    .tech-slider-item {
        padding-inline: 24px;
    }
}

@media screen and (max-width: 767px) {
    .tech-slider-item {
        padding-inline: 16px;
    }
}

.why-choose {
    --divide-width: 274px;
    --inner-s: 200px;
    --radius: 20px;
    --gap: 20px;
    --circle-size: 700px;
    --inner-p: 48px 36px;
}

@media screen and (max-width: 1599px) {
    .why-choose {
        --gap: 16px;
        --inner-p: 36px 28px;
    }
}

@media screen and (max-width: 1199px) {
    .why-choose {
        --inner-p: 32px 24px;
        --divide-width: 200px;
        --inner-s: 150px;
        --radius: 16px;
    }
}

@media screen and (max-width: 767px) {
    .why-choose {
        --radius: 12px;
        --inner-p: 24px;
    }
}

.why-choose:has(.top-left-card:hover, .top-left-card.active) .choose-control-corner.left-top {
    opacity: 1;
    visibility: visible;
}

.why-choose:has(.top-right-card:hover, .top-right-card.active) .choose-control-corner.right-top {
    opacity: 1;
    visibility: visible;
}

.why-choose:has(.bottom-left-card:hover, .bottom-left-card.active) .choose-control-corner.left-bottom {
    opacity: 1;
    visibility: visible;
}

.why-choose:has(.bottom-right-card:hover, .bottom-right-card.active) .choose-control-corner.right-bottom {
    opacity: 1;
    visibility: visible;
}

.choose-card-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: var(--gap);
}

@media screen and (max-width: 575px) {
    .choose-card-wrapper {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

.choose-card {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding: var(--inner-p);
    border: 1px solid hsl(var(--light));
    border-radius: var(--radius);
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.choose-card:hover, .choose-card.active {
    border-color: transparent;
}

.choose-card:hover::after, .choose-card.active::after {
    opacity: 1;
    visibility: visible;
}

.choose-card:hover::before, .choose-card.active::before {
    opacity: 1;
    visibility: visible;
}

.choose-card::after {
    content: "";
    position: absolute;
    width: var(--circle-size);
    height: var(--circle-size);
    border-radius: var(--circle-size);
    background: hsl(var(--base));
    -webkit-filter: blur(300px);
    filter: blur(300px);
    z-index: -1;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    opacity: 0;
    visibility: hidden;
}

.choose-card.top-left-card::after {
    top: 80%;
    left: 60%;
}

.choose-card.top-right-card::after {
    top: 80%;
    right: 60%;
}

.choose-card.bottom-left-card::after {
    bottom: 80%;
    left: 60%;
}

.choose-card.bottom-right-card::after {
    bottom: 80%;
    right: 60%;
}

.choose-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: var(--radius);
    z-index: -1;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border: 2px solid hsl(var(--base));
    opacity: 0;
    visibility: hidden;
}

.choose-card-icon {
    margin-bottom: 30px;
    font-size: 100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 1599px) {
    .choose-card-icon {
        margin-bottom: 20px;
        font-size: 80px;
    }
}

@media screen and (max-width: 1199px) {
    .choose-card-icon {
        margin-bottom: 16px;
        font-size: 60px;
    }
}

@media screen and (max-width: 767px) {
    .choose-card-icon {
        font-size: 48px;
    }
}

.choose-card-title {
    font-weight: 700;
    margin-bottom: 32px;
    line-height: 1.2;
    color: hsl(var(--black));
    max-width: 300px;
    width: 100%;
}

@media screen and (max-width: 1599px) {
    .choose-card-title {
        margin-bottom: 24px;
        font-size: 2.25rem;
    }
}

@media screen and (max-width: 1199px) {
    .choose-card-title {
        margin-bottom: 20px;
        font-size: 1.75rem;
    }
}

@media screen and (max-width: 767px) {
    .choose-card-title {
        font-size: 1.5rem;
    }
}

.choose-card-desc {
    color: hsl(var(--heading-color));
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 160%;
}

@media screen and (max-width: 1599px) {
    .choose-card-desc {
        font-size: 1.0625rem;
    }
}

@media screen and (max-width: 1199px) {
    .choose-card-desc {
        font-size: 1rem;
    }
}

.choose-divide {
    width: var(--divide-width);
    border-radius: var(--radius);
    overflow: hidden;
}

.choose-divide img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: left center;
    object-position: left center;
}

.choose-control-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-block: 20px;
    gap: var(--gap);
}

.choose-control {
    height: var(--divide-width);
    width: var(--divide-width);
    border-radius: var(--radius);
    overflow: hidden;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    border: 1px solid hsl(var(--light));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
}

.choose-control-corner {
    position: absolute;
    top: -25px;
    left: -25px;
    height: calc(100% + 50px);
    width: calc(100% + 50px);
    color: hsl(var(--base));
    -webkit-transform: rotate(var(--corner-rotate));
    transform: rotate(var(--corner-rotate));
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.choose-control-corner.left-top {
    --corner-rotate: 0deg;
}

.choose-control-corner.right-top {
    --corner-rotate: 90deg;
}

.choose-control-corner.left-bottom {
    --corner-rotate: 265deg;
}

.choose-control-corner.right-bottom {
    --corner-rotate: 180deg;
}

.choose-control-inner {
    height: var(--inner-s);
    width: var(--inner-s);
    border-radius: 50%;
    border: 1px solid hsl(var(--light));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
}

@media screen and (max-width: 1199px) {
    .choose-control-inner img {
        max-width: 90px;
    }
}

.choose-control-shape {
    height: calc(100% - 8px);
    width: calc(100% - 8px);
    position: absolute;
    top: 4px;
    left: 4px;
    color: hsl(var(--base));
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

@media screen and (max-width: 1199px) {
    .choose-control-shape svg {
        height: 65px;
        width: 75px;
    }
}

.choose-control-image {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    height: var(--divide-width);
    border-radius: var(--radius);
    overflow: hidden;
}

.choose-control-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: left center;
    object-position: left center;
}

.coverage-section {
    --radius: 20px;
}

@media screen and (max-width: 1199px) {
    .coverage-section {
        --radius: 16px;
    }
}

@media screen and (max-width: 575px) {
    .coverage-section {
        --radius: 12px;
    }
}

.coverage-thumb {
    border-radius: 20px;
    overflow: hidden;
    height: 800px;
}

@media screen and (max-width: 1199px) {
    .coverage-thumb {
        height: 650px;
    }
}

.coverage-thumb video {
    display: block;
}

.coverage-wrapper {
    position: relative;
}

.coverage-item {
    --inner-gap: 32px;
    padding: var(--inner-gap);
    border-radius: var(--radius);
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white));
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

@media screen and (max-width: 1199px) {
    .coverage-item {
        --inner-gap: 20px;
    }
}

.coverage-item:not(:last-child) {
    margin-bottom: 24px;
}

@media screen and (max-width: 1199px) {
    .coverage-item:not(:last-child) {
        margin-bottom: 20px;
    }
}

.coverage-item-title {
    margin-bottom: 8px;
    line-height: 1.3;
}

.coverage-item-desc {
    margin-bottom: var(--inner-gap);
    color: hsl(var(--secondary));
    font-size: 1.125rem;
    max-width: 610px;
    width: 100%;
    line-height: 1.6;
}

@media screen and (max-width: 1199px) {
    .coverage-item-desc {
        font-size: 1rem;
    }
}

.coverage-tag-title {
    font-size: 0.875rem;
    color: hsl(var(--body-color));
    margin-bottom: 4px;
}

.coverage-tag-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.coverage-tag-link {
    padding: 5px 16px;
    line-height: 1.4;
    color: hsl(var(--black));
    font-weight: 700;
    border: 1px solid hsl(var(--section-bg));
    border-radius: 32px;
}

@media screen and (max-width: 575px) {
    .coverage-tag-link {
        padding: 4px 12px;
        font-size: 0.875rem;
    }
}

.design-process-section {
    position: relative;
    z-index: 1;
    overflow: hidden;
    border-radius: 40px 40px 0 0;
}

@media screen and (max-width: 1399px) {
    .design-process-section {
        border-radius: 32px 32px 0 0;
    }
}

@media screen and (max-width: 1199px) {
    .design-process-section {
        border-radius: 24px 24px 0 0;
    }
}

.design-process-section-shape {
    position: absolute;
    inset: 0;
    z-index: -2;
    border-radius: var(--radius);
}

.design-process-section.style-two::after {
    display: none;
}

.design-process-section::after {
    content: "";
    position: absolute;
    --s-height: 746px;
    height: var(--s-height);
    width: var(--s-height);
    border-radius: 50%;
    background-color: hsl(var(--base));
    z-index: -3;
    -webkit-filter: blur(225px);
    filter: blur(225px);
    top: 0;
    left: 0;
    -webkit-transform: translate(-90%, -10%);
    transform: translate(-90%, -10%);
}

.design-process-section::before {
    content: "";
    position: absolute;
    height: 140px;
    width: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(hsl(var(--dark))));
    background: linear-gradient(180deg, transparent 0%, hsl(var(--dark)) 100%);
    z-index: -1;
    bottom: 20px;
    left: 0;
}

.design-process-row {
    --count: 4;
    --gap: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--gap);
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 991px) {
    .design-process-row {
        --count: 2;
    }
}

@media screen and (max-width: 575px) {
    .design-process-row {
        --count: 1;
    }
}

.design-process-card {
    --radius: 20px;
    --inner-p: 32px;
    --icon-size: 56px;
    --inner-gap: 150px;
    width: calc(100% / var(--count) - (var(--gap) - var(--gap) / var(--count)));
    padding: var(--inner-p);
    border-radius: var(--radius);
    background: hsl(var(--white)/0.07);
    -webkit-backdrop-filter: blur(9px);
    backdrop-filter: blur(9px);
    will-change: transform, opacity, filter;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

@media screen and (max-width: 1399px) {
    .design-process-card {
        --radius: 16px;
        --inner-p: 24px;
        --icon-size: 48px;
        --inner-gap: 100px;
    }
}

@media screen and (max-width: 1199px) {
    .design-process-card {
        --inner-p: 20px;
        --inner-gap: 60px;
    }
}

.design-process-card-icon {
    height: var(--icon-size);
    width: var(--icon-size);
    border-radius: 15px;
    color: hsl(var(--white));
    border: 1px solid hsl(var(--white)/0.23);
    background: hsl(var(--white)/0.07);
    -webkit-backdrop-filter: blur(9px);
    backdrop-filter: blur(9px);
    display: grid;
    place-content: center;
    margin-bottom: var(--inner-gap);
    font-size: 24px;
}

@media screen and (max-width: 1199px) {
    .design-process-card-icon {
        border-radius: 12px;
    }
}

.design-process-card-title {
    color: hsl(var(--white));
    margin-bottom: 12px;
}

.design-process-card-desc {
    color: hsl(var(--light));
    line-height: 1.6;
}

@media screen and (max-width: 1199px) {
    .design-process-card-desc {
        font-size: 15px;
    }
}

.design-build {
    margin-top: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 22px 24px;
    border: 1px solid hsl(var(--white)/0.23);
    background: hsl(var(--white)/0.07);
    border-radius: 20px;
    -webkit-backdrop-filter: blur(9px);
    backdrop-filter: blur(9px);
    gap: 20px;
}

@media screen and (max-width: 1399px) {
    .design-build {
        padding: 20px;
        border-radius: 16px;
    }
}

@media screen and (max-width: 1199px) {
    .design-build {
        padding: 16px;
    }
}

@media screen and (max-width: 575px) {
    .design-build {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
}

.design-build-content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.design-build-title {
    color: hsl(var(--white));
    line-height: 1.4;
}

@media screen and (max-width: 767px) {
    .design-build-title {
        margin-bottom: 8px;
    }
}

.design-build-desc {
    color: hsl(var(--light));
    line-height: 1.6;
    font-size: 18px;
}

@media screen and (max-width: 1399px) {
    .design-build-desc {
        font-size: 16px;
    }
}

@media screen and (max-width: 767px) {
    .design-build-desc {
        font-size: 15px;
        line-height: 1.4;
    }
}

.design-build-btn {
    --btn-s: 48px;
    padding: 4px 24px 4px 4px;
    background-color: hsl(var(--white));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px;
    border-radius: 50px;
    font-size: 20px;
    font-weight: 700;
    color: hsl(var(--heading-color));
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
}

@media screen and (max-width: 1399px) {
    .design-build-btn {
        --btn-s: 40px;
        font-size: 16px;
    }
}

@media screen and (max-width: 767px) {
    .design-build-btn {
        --btn-s: 36px;
        font-size: 15px;
        gap: 10px;
    }
}

.design-build-btn .icon {
    height: var(--btn-s);
    width: var(--btn-s);
    border-radius: 50%;
    background-color: hsl(var(--base));
    display: grid;
    place-content: center;
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
}

@media screen and (max-width: 1399px) {
    .design-build-btn .icon svg {
        height: 24px;
        width: 24px;
    }
}

@media screen and (max-width: 767px) {
    .design-build-btn .icon svg {
        height: 20px;
        width: 20px;
    }
}

.design-build-btn:hover {
    color: hsl(var(--white));
    background-color: hsl(var(--base));
}

.design-build-btn:hover .icon {
    background-color: hsl(var(--white));
    color: hsl(var(--base));
}

.testimonial-section {
    overflow: hidden;
}

.testimonial-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 40px;
}

@media screen and (max-width: 575px) {
    .testimonial-wrapper {
        gap: 16px;
    }
}

.testimonial-control {
    --size: 80px;
    height: var(--size);
    width: var(--size);
    border-radius: 50%;
    color: hsl(var(--body-color));
    border: 2px solid hsl(var(--body-color));
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
    font-size: 48px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.testimonial-control.testimonial-control__left i {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

@media screen and (max-width: 1399px) {
    .testimonial-control {
        --size: 64px;
        font-size: 36px;
    }
}

@media screen and (max-width: 1199px) {
    .testimonial-control {
        --size: 56px;
        font-size: 32px;
    }
}

@media screen and (max-width: 767px) {
    .testimonial-control {
        --size: 48px;
        font-size: 28px;
    }
}

@media screen and (max-width: 575px) {
    .testimonial-control {
        --size: 36px;
        font-size: 24px;
    }
}

.testimonial-control svg {
    width: calc(var(--size) / 2);
    height: calc(var(--size) / 2);
}

.testimonial-control:hover {
    background-color: hsl(var(--base));
    border-color: hsl(var(--base));
    color: hsl(var(--white));
}

.stacked-cards {
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.stacked-card {
    z-index: 2;
    -webkit-transform: translateY(0) rotate(4deg) translateX(0);
    transform: translateY(0) rotate(4deg) translateX(0);
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transition: -webkit-transform 0.4s ease 0.1s;
    transition: -webkit-transform 0.4s ease 0.1s;
    transition: transform 0.4s ease 0.1s;
    transition: transform 0.4s ease 0.1s, -webkit-transform 0.4s ease 0.1s;
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    border-radius: 24px;
}

.stacked-card--current {
    -webkit-user-select: auto;
    -moz-user-select: auto;
    -ms-user-select: auto;
    user-select: auto;
    position: relative;
    z-index: 10;
    opacity: 1;
    -webkit-transform: rotate(0deg) translateX(0%) scale(1);
    transform: rotate(0deg) translateX(0%) scale(1);
}

.stacked-card--current .testimonial-item {
    --card-bg: #000021;
    background: var(--card-bg);
    -webkit-transition: background-color 0s;
    transition: background-color 0s;
}

.stacked-card--next {
    z-index: 5;
    -webkit-transform: translateY(0) rotate(-4deg) translateX(0);
    transform: translateY(0) rotate(-4deg) translateX(0);
}

.stacked-card--out {
    -webkit-animation: card-out 0.4s cubic-bezier(0.8, 0.2, 0.1, 0.8);
    animation: card-out 0.4s cubic-bezier(0.8, 0.2, 0.1, 0.8);
    -webkit-transform: translateY(0) rotate(-4deg) translateX(0);
    transform: translateY(0) rotate(-4deg) translateX(0);
    z-index: 1;
}

.stacked-card--current+.stacked-card {
    -webkit-transform: translateY(0) rotate(-4deg) translateX(0);
    transform: translateY(0) rotate(-4deg) translateX(0);
    z-index: 1;
}

@-webkit-keyframes card-out {
    0% {
        z-index: 20;
        -webkit-transform: translateY(0px) rotate(-4deg);
        transform: translateY(0px) rotate(-4deg);
    }

    50% {
        -webkit-transform: translateY(-80%) rotate(-8deg) translateX(-40px);
        transform: translateY(-80%) rotate(-8deg) translateX(-40px);
        opacity: 1;
    }

    80% {
        z-index: 1;
        opacity: 0.4;
    }

    100% {
        -webkit-transform: translateY(-50px) rotate(4deg) translateX(0);
        transform: translateY(-50px) rotate(4deg) translateX(0);
        opacity: 0;
    }
}

@keyframes card-out {
    0% {
        z-index: 20;
        -webkit-transform: translateY(0px) rotate(-4deg);
        transform: translateY(0px) rotate(-4deg);
    }

    50% {
        -webkit-transform: translateY(-80%) rotate(-8deg) translateX(-40px);
        transform: translateY(-80%) rotate(-8deg) translateX(-40px);
        opacity: 1;
    }

    80% {
        z-index: 1;
        opacity: 0.4;
    }

    100% {
        -webkit-transform: translateY(-50px) rotate(4deg) translateX(0);
        transform: translateY(-50px) rotate(4deg) translateX(0);
        opacity: 0;
    }
}

.testimonial-item {
    --radius: 40px;
    --thumb-w: 390px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-radius: var(--radius);
    background: #141443;
    -webkit-transition: background-color 0s linear 1s;
    transition: background-color 0s linear 1s;
    width: 100%;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

@media screen and (max-width: 1199px) {
    .testimonial-item {
        --thumb-w: 320px;
    }
}

@media screen and (max-width: 991px) {
    .testimonial-item {
        --thumb-w: 220px;
        --radius: 24px;
    }
}

@media screen and (max-width: 767px) {
    .testimonial-item {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        --radius: 20px;
        --thumb-w: 320px;
        padding: 40px 24px 0;
    }
}

@media screen and (max-width: 575px) {
    .testimonial-item {
        --radius: 16px;
    }
}

@media screen and (max-width: 424px) {
    .testimonial-item {
        --radius: 12px;
    }
}

.testimonial-item-watermark {
    position: absolute;
    inset: 0;
    color: hsl(var(--white)/0.03);
    font-size: 336px;
    font-style: normal;
    font-weight: 800;
    line-height: 85%;
    text-transform: uppercase;
    font-family: "Bebas Neue", sans-serif;
    z-index: -1;
    padding: 16px;
    letter-spacing: 5px;
    white-space: nowrap;
}

@media screen and (max-width: 991px) {
    .testimonial-item-watermark {
        font-size: 240px;
    }
}

@media screen and (max-width: 767px) {
    .testimonial-item-watermark {
        font-size: 200px;
        text-align: center;
        -ms-flex-line-pack: end;
        align-content: end;
    }
}

.testimonial-item-thumb {
    width: var(--thumb-w);
}

@media screen and (max-width: 767px) {
    .testimonial-item-thumb {
        margin-inline: auto;
    }
}

@media screen and (max-width: 575px) {
    .testimonial-item-thumb {
        max-width: var(--thumb-w);
        width: 100%;
    }
}

.testimonial-item-content {
    width: calc(100% - var(--thumb-w));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 40px;
}

@media screen and (max-width: 991px) {
    .testimonial-item-content {
        padding: 24px;
    }
}

@media screen and (max-width: 767px) {
    .testimonial-item-content {
        padding: 0;
        width: 100%;
    }
}

.testimonial-item-title {
    color: hsl(var(--white));
    margin-bottom: 16px;
    max-width: 560px;
    width: 100%;
}

@media screen and (max-width: 575px) {
    .testimonial-item-title {
        margin-bottom: 8px;
    }
}

.testimonial-item-desc {
    color: hsl(var(--light));
    margin-bottom: 32px;
    max-width: 532px;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .testimonial-item-desc {
        margin-bottom: 24px;
    }
}

@media screen and (max-width: 575px) {
    .testimonial-item-desc {
        margin-bottom: 16px;
    }
}

.testimonial-item-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 600px;
    width: 100%;
}

.testimonial-item-auth .name {
    color: hsl(var(--white));
    margin-bottom: 4px;
}

.testimonial-item-auth .designation {
    color: hsl(var(--light));
}

.text-cta {
    overflow: hidden;
    position: relative;
    cursor: pointer;
    border-radius: 0 0 40px 40px;
}

@media screen and (max-width: 1399px) {
    .text-cta {
        border-radius: 0 0 32px 32px;
    }
}

@media screen and (max-width: 1199px) {
    .text-cta {
        border-radius: 0 0 24px 24px;
    }
}

.text-cta-title {
    font-size: clamp(13.75rem, -0.2083rem + 18.6111vw, 22.125rem);
    font-weight: 900;
    line-height: 86%;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(-331.4%, hsl(var(--white))), to(transparent));
    background: linear-gradient(180deg, hsl(var(--white)) -331.4%, transparent 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    white-space: nowrap;
}

@media screen and (max-width: 1199px) {
    .text-cta-title {
        font-size: clamp(7.5rem, 4.6591rem + 12.1212vw, 13.75rem);
        white-space: wrap;
        text-align: center;
    }
}

.text-cta-bg {
    z-index: 1;
    background-image: radial-gradient(circle, transparent, hsl(var(--dark)) 40%);
    position: absolute;
    inset: 0%;
    -webkit-transform: scale(2.5);
    transform: scale(2.5);
    pointer-events: none;
    will-change: transform;
}

.text-cta-btn {
    z-index: 2;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    display: grid;
    place-content: center;
    position: absolute;
    will-change: transform;
}

.text-cta-btn .btn {
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
}

.text-cta-btn .btn:hover {
    -webkit-transform: scale(1.15);
    transform: scale(1.15);
}

.partner-slider-item {
    height: 150px;
    width: 312px !important;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 12px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.5);
}

@media screen and (max-width: 1399px) {
    .partner-slider-item {
        width: 250px !important;
        height: 120px;
    }

    .partner-slider-item img {
        max-width: 130px;
    }
}

@media screen and (max-width: 1199px) {
    .partner-slider-item {
        width: 220px !important;
        height: 110px;
    }

    .partner-slider-item img {
        max-width: 120px;
    }
}

@media screen and (max-width: 991px) {
    .partner-slider-item {
        width: 200px !important;
        height: 100px;
    }

    .partner-slider-item img {
        max-width: 110px;
    }
}

@media screen and (max-width: 575px) {
    .partner-slider-item {
        width: 160px !important;
        height: 80px;
    }

    .partner-slider-item img {
        max-width: 90px;
    }
}

.partner-slider-wrapper {
    position: relative;
    --bg-color: hsl(var(--light-bg));
}

.partner-slider-wrapper::after {
    content: "";
    position: absolute;
    top: 0;
    left: -12px;
    width: 112px;
    height: 100%;
    background: -webkit-gradient(linear, left top, right top, from(var(--bg-color)), to(transparent));
    background: linear-gradient(90deg, var(--bg-color) 0%, transparent 100%);
    z-index: 2;
}

.partner-slider-wrapper::before {
    content: "";
    position: absolute;
    top: 0;
    right: -12px;
    width: 112px;
    height: 100%;
    background: -webkit-gradient(linear, right top, left top, from(var(--bg-color)), to(transparent));
    background: linear-gradient(-90deg, var(--bg-color) 0%, transparent 100%);
    z-index: 2;
}

.about-banner {
    height: 100dvh;
    position: relative;
    overflow: hidden;
}

.about-banner-control {
    height: 100%;
    padding: 16px;
}

@media screen and (max-width: 1599px) {
    .about-banner-control {
        padding: 12px;
    }
}

@media screen and (max-width: 575px) {
    .about-banner-control {
        padding: 8px;
    }
}

.about-banner-wrapper {
    position: relative;
    z-index: 1;
    border-radius: 32px;
    height: 100%;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media screen and (max-width: 1599px) {
    .about-banner-wrapper {
        border-radius: 24px;
    }
}

.about-banner-wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background: hsl(var(--dark)/0.5);
}

.about-banner-bg {
    position: absolute;
    inset: 0;
    z-index: -4;
}

.about-banner-bg video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.about-banner-text {
    position: absolute;
    bottom: -90px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100%;
    font-family: var(--secondary-font);
    font-size: 280px;
    white-space: nowrap;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -5.248px;
    font-weight: 900;
    line-height: 1.4;
    text-align: center;
    background: -webkit-gradient(linear, left top, left bottom, from(hsl(var(--white)/0.04)), to(transparent));
    background: linear-gradient(180deg, hsl(var(--white)/0.04) 0%, transparent 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    -webkit-backdrop-filter: blur(1px);
    backdrop-filter: blur(1px);
    z-index: -3;
}

.about-banner-content {
    max-width: 1268px;
    width: 100%;
    margin-inline: auto;
    padding-block: 16vh;
    text-align: center;
}

@media screen and (max-width: 1399px) {
    .about-banner-content {
        max-width: 1000px;
    }
}

@media screen and (max-width: 1199px) {
    .about-banner-content {
        max-width: 900px;
    }
}

@media screen and (max-width: 991px) {
    .about-banner-content {
        max-width: 720px;
    }
}

@media screen and (max-width: 767px) {
    .about-banner-content {
        max-width: 620px;
        padding-inline: 6px;
    }
}

@media screen and (max-width: 575px) {
    .about-banner-content {
        max-width: 520px;
    }
}

.about-banner-content .name {
    border-radius: 50px;
    border: 2px solid hsl(var(--base));
    background: hsl(var(--base)/0.15);
    padding: 6px 18px;
    display: inline-block;
    color: hsl(var(--base));
    font-size: 20px;
    font-weight: 700;
    line-height: 140%;
    margin-bottom: 20px;
}

@media screen and (max-width: 1399px) {
    .about-banner-content .name {
        font-size: 18px;
    }
}

@media screen and (max-width: 767px) {
    .about-banner-content .name {
        font-size: 16px;
        margin-bottom: 16px;
    }
}

.about-banner-content-title {
    font-size: 102px;
    line-height: 1.1;
    text-align: center;
    color: hsl(var(--white));
    font-weight: 900;
    margin-bottom: 16px;
}

@media screen and (max-width: 1599px) {
    .about-banner-content-title {
        font-size: 80px;
    }

    .about-banner-content-title .img {
        max-width: 200px;
    }
}

@media screen and (max-width: 1399px) {
    .about-banner-content-title {
        font-size: 70px;
    }

    .about-banner-content-title .img {
        max-width: 148px;
    }
}

@media screen and (max-width: 1199px) {
    .about-banner-content-title {
        font-size: 64px;
    }
}

@media screen and (max-width: 991px) {
    .about-banner-content-title {
        font-size: 52px;
    }

    .about-banner-content-title .img {
        max-width: 134px;
    }
}

@media screen and (max-width: 575px) {
    .about-banner-content-title {
        font-size: 44px;
    }

    .about-banner-content-title .img {
        max-width: 104px;
    }
}

@media screen and (max-width: 424px) {
    .about-banner-content-title {
        margin-bottom: 12px;
    }
}

.about-banner-content-desc {
    color: hsl(var(--light));
    text-align: center;
    font-size: 18px;
    line-height: 1.6;
}

@media screen and (max-width: 991px) {
    .about-banner-content-desc {
        font-size: 16px;
    }
}

.about-banner-content-action {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 24px;
    margin-top: 48px;
}

@media screen and (max-width: 1399px) {
    .about-banner-content-action {
        margin-top: 32px;
    }
}

@media screen and (max-width: 575px) {
    .about-banner-content-action {
        gap: 16px;
    }
}

@media screen and (max-width: 424px) {
    .about-banner-content-action {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 16px;
    }

    .about-banner-content-action .btn {
        width: 100%;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.scale-image {
    overflow: hidden;
    height: 100dvh;
}

.scale-image-img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transform: scale(2);
    transform: scale(2);
}

.about-story {
    --inner-p: 40px;
    --radius: 40px;
    background-color: hsl(var(--white));
    border-radius: var(--radius);
    padding: var(--inner-p);
    height: 100%;
}

@media screen and (max-width: 1399px) {
    .about-story {
        --inner-p: 32px;
        --radius: 32px;
    }
}

@media screen and (max-width: 991px) {
    .about-story {
        --inner-p: 24px;
        --radius: 24px;
    }
}

@media screen and (max-width: 575px) {
    .about-story {
        --inner-p: 20px;
        --radius: 20px;
    }
}

.about-story-serial {
    font-size: 20px;
    font-weight: 500;
    color: hsl(var(--light));
    margin-bottom: 96px;
}

@media screen and (max-width: 1399px) {
    .about-story-serial {
        margin-bottom: 64px;
    }
}

@media screen and (max-width: 575px) {
    .about-story-serial {
        margin-bottom: 48px;
    }
}

.about-story-count {
    --extra-fs: 104px;
    font-size: var(--extra-fs);
}

@media screen and (max-width: 1599px) {
    .about-story-count {
        --extra-fs: 84px;
    }
}

@media screen and (max-width: 1199px) {
    .about-story-count {
        --extra-fs: 64px;
    }
}

@media screen and (max-width: 767px) {
    .about-story-count {
        --extra-fs: 48px;
    }
}

.about-story-title {
    margin-bottom: 12px;
}

.about-story-desc {
    font-size: 1.125rem;
}

.ceo-video {
    overflow: hidden;
}

.ceo-video-wrapper {
    position: relative;
}

.ceo-video-play {
    --radius: 40px;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: var(--radius) var(--radius) 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: clamp(47.5rem, -11.8166rem + 95.672vw, 100rem);
    margin-inline: auto;
}

@media screen and (max-width: 1399px) {
    .ceo-video-play {
        --radius: 32px;
    }
}

@media screen and (max-width: 991px) {
    .ceo-video-play {
        --radius: 24px;
    }
}

@media screen and (max-width: 575px) {
    .ceo-video-play {
        --radius: 20px;
    }
}

@media screen and (max-width: 991px) {
    .ceo-video-play {
        width: 100%;
        height: auto;
    }
}

@media screen and (max-width: 575px) {
    .ceo-video-play {
        aspect-ratio: 2/2.25;
    }
}

.ceo-video-button {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    cursor: pointer;
}

.ceo-video-button img {
    -webkit-animation: rotate 7s linear infinite;
    animation: rotate 7s linear infinite;
}

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

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

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

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

.tween-section:has(.project-cycle) {
    border-radius: 0;
}

.project-cycle {
    position: relative;
    z-index: 1;
    background-color: hsl(var(--dark));
}

.project-cycle::after {
    content: "";
    position: absolute;
    height: 350px;
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(hsl(var(--dark))));
    background: linear-gradient(180deg, transparent 0%, hsl(var(--dark)) 100%);
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: -1;
}

.project-cycle .project-cycle-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.project-cycle .section-heading-name .text {
    position: relative;
    --overlay-bg: 225 90% 12%;
    --overlay-bg: 0 100% 50%;
}

.project-cycle .section-heading-name .text::after {
    left: 0;
    background: linear-gradient(235deg, transparent 0%, var(--overlay-bg) 100%);
}

.project-cycle .section-heading-name .text::before {
    right: 0;
    background: -webkit-gradient(linear, left top, right top, from(transparent), to(var(--overlay-bg)));
    background: linear-gradient(90deg, transparent 0%, var(--overlay-bg) 100%);
}

.project-cycle-row {
    --count: 3;
    --gap: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: var(--gap);
}

@media screen and (max-width: 991px) {
    .project-cycle-row {
        --count: 2;
    }
}

@media screen and (max-width: 575px) {
    .project-cycle-row {
        --count: 1;
    }
}

.project-cycle-card {
    --inner-p: 32px;
    --radius: 20px;
    width: calc(100% / var(--count) - (var(--gap) - var(--gap) / var(--count)));
    padding: var(--inner-p);
    border-radius: var(--radius);
    text-align: center;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

@media screen and (max-width: 1399px) {
    .project-cycle-card {
        --inner-p: 24px;
        --radius: 16px;
    }
}

@media screen and (max-width: 767px) {
    .project-cycle-card {
        --inner-p: 20px;
        --radius: 12px;
    }
}

.project-cycle-card::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: hsl(var(--white)/0.15);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    z-index: -1;
}

.project-cycle-card-icon {
    position: relative;
    z-index: 1;
}

.project-cycle-card-icon-inner {
    --icon-size: 64px;
    width: var(--icon-size);
    height: var(--icon-size);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 84px;
    background-color: #4a5772;
    border-radius: 12px;
    color: hsl(var(--white));
    margin-inline: auto;
    font-size: 28px;
}

@media screen and (max-width: 1399px) {
    .project-cycle-card-icon-inner {
        margin-bottom: 60px;
    }
}

@media screen and (max-width: 1199px) {
    .project-cycle-card-icon-inner {
        --icon-size: 52px;
        margin-bottom: 48px;
        border-radius: 8px;
    }
}

@media screen and (max-width: 767px) {
    .project-cycle-card-icon-inner {
        margin-bottom: 42px;
    }
}

.project-cycle-card-icon .shape-image {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 100%;
}

.project-cycle-card-icon .shape-image:has(.bottom-circle) {
    bottom: -50%;
    top: 0;
    -webkit-transform: translate(-50%, -25%);
    transform: translate(-50%, -25%);
}

@media screen and (max-width: 1399px) {
    .project-cycle-card-icon .shape-image:has(.bottom-circle) {
        -webkit-transform: translate(-50%, -15%);
        transform: translate(-50%, -15%);
    }
}

.project-cycle-card-icon .shape-image:has(.top-circle) {
    bottom: 0;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
}

.project-cycle-card-title {
    margin-bottom: 4px;
    color: hsl(var(--white));
}

.project-cycle-card-desc {
    color: hsl(var(--light));
}

.team-section {
    overflow: hidden;
    isolation: isolate;
    contain: paint;
    --gap: 12px;
}

@media screen and (max-width: 991px) {
    .team-section {
        --gap: 8px;
    }
}

@media screen and (max-width: 575px) {
    .team-section {
        --gap: 6px;
    }
}

.team-slider {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    will-change: transform;
    gap: calc(var(--gap) * 2);
    -webkit-perspective: 1000px;
    perspective: 1000px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    will-change: transform;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    backface-visibility: hidden;
}

.team-item {
    --this-bg: 210 20% 98%;
    --card-w: 312px;
    --radius: 20px;
    --inner-gap: 12px;
    width: var(--card-w) !important;
    border-radius: var(--radius);
    overflow: hidden;
    position: relative;
    background: hsl(var(--this-bg));
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 1399px) {
    .team-item {
        --card-w: 280px;
        --radius: 16px;
    }
}

@media screen and (max-width: 991px) {
    .team-item {
        --card-w: 240px;
        --radius: 12px;
    }
}

@media screen and (max-width: 575px) {
    .team-item {
        --card-w: 210px;
    }
}

.team-item-content {
    position: absolute;
    bottom: var(--inner-gap);
    width: calc(100% - var(--inner-gap) * 2);
    left: var(--inner-gap);
    right: var(--inner-gap);
    border-radius: 16px;
    border: 1px solid hsl(var(--white)/0.16);
    background: hsl(var(--white)/0.08);
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    padding: 16px 24px;
}

@media screen and (max-width: 991px) {
    .team-item-content {
        padding: 12px 16px;
        border-radius: 12px;
    }
}

@media screen and (max-width: 575px) {
    .team-item-content {
        padding: 12px;
        border-radius: 8px;
    }
}

.team-item-name {
    color: hsl(var(--white));
    margin-bottom: 2px;
}

.team-item-designation {
    color: hsl(var(--white));
    font-size: 14px;
}

.our-activity-item {
    --inner-p: 24px;
    --radius: 20px;
    border-radius: var(--radius);
    background-color: hsl(var(--white));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    overflow: hidden;
}

.our-activity-item:not(:last-child) {
    margin-bottom: 16px;
}

@media screen and (max-width: 1199px) {
    .our-activity-item {
        --inner-p: 16px;
        --radius: 16px;
    }
}

.our-activity-item-content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding: var(--inner-p);
}

.our-activity-item-content .top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    margin-bottom: 6px;
}

.our-activity-item-content .sponsor {
    padding: 4px 10px;
    border-radius: 250px;
    border: 1px solid hsl(var(--base));
    background: hsl(var(--base)/0.1);
    color: hsl(var(--base));
    font-size: 14px;
    font-weight: 700;
    line-height: 150%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.our-activity-item-content .date {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    color: hsl(var(--black));
}

.our-activity-item-content .date .icon {
    font-size: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.our-activity-item-thumb {
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 991px) {
    .our-activity-item-thumb img {
        max-height: 80px;
    }
}

@media screen and (max-width: 575px) {
    .our-activity-item-thumb {
        display: none;
    }
}

.activity-box {
    --radius: 40px;
    --inner-p: 40px;
    background-color: hsl(var(--white));
    border-radius: var(--radius);
    height: 100%;
    overflow: hidden;
    position: relative;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media screen and (max-width: 1199px) {
    .activity-box {
        --inner-p: 24px;
        --radius: 24px;
    }
}

@media screen and (max-width: 991px) {
    .activity-box {
        height: 450px;
    }
}

.activity-box::before {
    content: "";
    position: absolute;
    top: 32px;
    left: -2px;
    width: calc(100% + 4px);
    height: calc(100% - 32px);
    background: linear-gradient(to right, hsl(var(--section-bg)) 1px, transparent 1px), linear-gradient(to bottom, hsl(var(--section-bg)) 1px, transparent 1px);
    background-size: 36px 36px;
    opacity: 0.5;
    z-index: -1;
}

.activity-box-title {
    padding: var(--inner-p) var(--inner-p) 0;
    line-height: 1.1;
}

.activity-box-list {
    position: relative;
    overflow: hidden;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.activity-box-item {
    display: inline-block;
    padding: 14px 28px;
    border-radius: 250px;
    border: 1px solid hsl(var(--base));
    background: hsl(var(--base-l-900));
    background: hsl(var(--base-l-900));
    color: hsl(var(--heading-color));
    font-size: 18px;
    font-weight: 700;
    line-height: 140%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none;
    white-space: nowrap;
    position: absolute;
}

@media screen and (max-width: 1399px) {
    .activity-box-item {
        padding: 10px 20px;
        font-size: 16px;
    }
}

@media screen and (max-width: 767px) {
    .activity-box-item {
        padding: 8px 16px;
        font-size: 14px;
    }
}

.gallery-thumb img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 12px;
}

@media screen and (max-width: 767px) {
    .gallery-thumb img {
        border-radius: 8px;
    }
}

.about-cta {
    padding: 60px 0;
    position: relative;
    z-index: 1;
    background: linear-gradient(-45deg, hsl(var(--base)), #23a6d5, hsl(var(--base)), #23d5ab);
    background-size: 400% 400%;
    -webkit-animation: bgPositionChange 50s;
    animation: bgPositionChange 50s;
}

@-webkit-keyframes bgPositionChange {
    0% {
        background-position: 0% 50%;
    }

    25% {
        background-position: 100% 50%;
    }

    100% {
        background-position: 0% 50%;
    }
}

@keyframes bgPositionChange {
    0% {
        background-position: 0% 50%;
    }

    25% {
        background-position: 100% 50%;
    }

    100% {
        background-position: 0% 50%;
    }
}

@media screen and (max-width: 991px) {
    .about-cta {
        padding: 40px 0;
    }
}

.about-cta-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    display: none;
}

.about-cta-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 24px;
}

@media screen and (max-width: 575px) {
    .about-cta-wrapper {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        text-align: center;
    }
}

.about-cta-content .title {
    --extra-fs: 104px;
    font-size: var(--extra-fs);
    font-weight: 900;
    color: hsl(var(--white));
}

@media screen and (max-width: 1599px) {
    .about-cta-content .title {
        --extra-fs: 84px;
    }
}

@media screen and (max-width: 1199px) {
    .about-cta-content .title {
        --extra-fs: 64px;
    }
}

@media screen and (max-width: 991px) {
    .about-cta-content .title {
        --extra-fs: 56px;
    }
}

@media screen and (max-width: 767px) {
    .about-cta-content .title {
        --extra-fs: 42px;
    }
}

.about-cta-content .tag {
    font-weight: 900;
    line-height: 110%;
    color: hsl(var(--white));
}

@media screen and (max-width: 991px) {
    .about-cta-content .tag {
        font-size: 28px;
    }
}

@media screen and (max-width: 767px) {
    .about-cta-content .tag {
        font-size: 24px;
    }
}

.about-cta-link {
    --icon-s: 40px;
    --fs: 32px;
    font-size: var(--fs);
    font-weight: 700;
    line-height: 125%;
    color: hsl(var(--white));
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
}

@media screen and (max-width: 1199px) {
    .about-cta-link {
        --icon-s: 32px;
        --fs: 28px;
    }
}

@media screen and (max-width: 991px) {
    .about-cta-link {
        --icon-s: 24px;
        --fs: 20px;
    }
}

@media screen and (max-width: 767px) {
    .about-cta-link {
        --icon-s: 20px;
        --fs: 18px;
    }
}

.about-cta-link svg {
    height: var(--icon-s);
    width: var(--icon-s);
}

.about-cta-link svg path {
    stroke: hsl(var(--white));
}

.about-cta-link:hover {
    color: hsl(var(--white));
    -webkit-transform: translateX(6px);
    transform: translateX(6px);
    text-decoration: underline;
}

.page-banner {
    background-position: bottom center;
    position: relative;
    z-index: 1;
}

.page-banner-shape1 {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}

@media screen and (max-width: 1399px) {
    .page-banner-shape1 {
        max-width: 260px;
    }
}

@media screen and (max-width: 1199px) {
    .page-banner-shape1 {
        max-width: 200px;
    }
}

@media screen and (max-width: 991px) {
    .page-banner-shape1 {
        max-width: 160px;
    }
}

@media screen and (max-width: 575px) {
    .page-banner-shape1 {
        max-width: 100px;
    }
}

.page-banner-shape2 {
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
}

@media screen and (max-width: 1399px) {
    .page-banner-shape2 {
        max-width: 300px;
    }
}

@media screen and (max-width: 1199px) {
    .page-banner-shape2 {
        max-width: 230px;
    }
}

@media screen and (max-width: 991px) {
    .page-banner-shape2 {
        max-width: 180px;
    }
}

@media screen and (max-width: 575px) {
    .page-banner-shape2 {
        max-width: 100px;
    }
}

.page-banner-content {
    text-align: center;
}

.page-banner-content.style-left {
    text-align: left;
}

@media screen and (max-width: 991px) {
    .page-banner-content.style-left {
        text-align: center;
    }
}

.page-banner-content.style-left .page-banner-desc {
    margin-left: 0;
}

.page-banner-title {
    --extra-fs: 104px;
    color: hsl(var(--white));
    font-size: var(--extra-fs);
    font-weight: 900;
    line-height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(hsl(var(--white))), to(hsl(var(--body-color))));
    background: linear-gradient(180deg, hsl(var(--white)) 0%, hsl(var(--body-color)) 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    padding-bottom: 24px;
}

@media screen and (max-width: 1599px) {
    .page-banner-title {
        --extra-fs: 84px;
        padding-bottom: 20px;
    }
}

@media screen and (max-width: 1199px) {
    .page-banner-title {
        --extra-fs: 64px;
        padding-bottom: 16px;
    }
}

@media screen and (max-width: 767px) {
    .page-banner-title {
        --extra-fs: 48px;
        padding-bottom: 12px;
    }
}

.page-banner-desc {
    max-width: 740px;
    width: 100%;
    margin: 0 auto;
    font-size: 1.125rem;
    color: hsl(var(--light));
    line-height: 150%;
}

@media screen and (max-width: 767px) {
    .page-banner-desc {
        font-size: 1rem;
    }
}

@media screen and (max-width: 575px) {
    .page-banner-desc {
        font-size: 0.9375rem;
    }
}

.page-banner-contact-info {
    margin-top: 72px;
}

@media screen and (max-width: 1199px) {
    .page-banner-contact-info {
        margin-top: 60px;
    }
}

@media screen and (max-width: 767px) {
    .page-banner-contact-info {
        margin-top: 48px;
    }
}

@media screen and (max-width: 575px) {
    .page-banner-contact-info {
        margin-top: 36px;
    }
}

.page-banner-contact-info .title {
    font-size: 1.125rem;
    color: hsl(var(--light));
    line-height: 160%;
}

@media screen and (max-width: 767px) {
    .page-banner-contact-info .title {
        font-size: 1rem;
    }
}

@media screen and (max-width: 575px) {
    .page-banner-contact-info .title {
        font-size: 0.9375rem;
    }
}

.page-banner-contact-info .value {
    font-size: 1.25rem;
    color: hsl(var(--light));
    line-height: 140%;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .page-banner-contact-info .value {
        font-size: 1.125rem;
    }
}

@media screen and (max-width: 575px) {
    .page-banner-contact-info .value {
        font-size: 1.0625rem;
    }
}

.page-banner-thumb {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: -1;
    max-width: 50%;
    width: 100%;
    text-align: left;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.page-banner-thumb.sm-style {
    max-width: 34%;
}

@media screen and (max-width: 1199px) {
    .page-banner-thumb.sm-style {
        max-width: 28%;
    }
}

.page-banner-thumb img {
    max-height: 100%;
}

@media screen and (max-width: 991px) {
    .page-banner-thumb {
        display: none;
    }
}

.service-choose-thumb {
    border-radius: 40px;
    overflow: hidden;
}

@media screen and (max-width: 1399px) {
    .service-choose-thumb {
        border-radius: 32px;
    }
}

@media screen and (max-width: 991px) {
    .service-choose-thumb {
        border-radius: 24px;
    }
}

@media screen and (max-width: 575px) {
    .service-choose-thumb {
        border-radius: 20px;
    }
}

.service-choose-list-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px;
}

.service-choose-list-item:not(:last-child) {
    margin-bottom: 24px;
    border-bottom: 1px solid hsl(var(--section-bg));
    padding-bottom: 24px;
}

.service-choose-list-item .count {
    font-size: 1.125rem;
    color: hsl(var(--body-color));
}

@media screen and (max-width: 991px) {
    .service-choose-list-item .count {
        font-size: 1rem;
    }
}

.service-choose-list-item .title {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    text-align: left;
}

@media screen and (max-width: 991px) {
    .service-choose-list-item .arrow svg {
        height: 24px;
        width: 24px;
    }
}

@media screen and (max-width: 575px) {
    .service-choose-list-item .arrow svg {
        height: 20px;
        width: 20px;
    }
}

.bg-pattern {
    position: relative;
    z-index: 1;
}

.bg-pattern::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(to right, hsl(var(--border-light)) 1px, transparent 1px), linear-gradient(to bottom, hsl(var(--border-light)) 1px, transparent 1px);
    background-size: 20px 20px;
    -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 0%, hsl(var(--black)) 60%, transparent 100%);
    mask-image: radial-gradient(ellipse 70% 60% at 50% 0%, hsl(var(--black)) 60%, transparent 100%);
    opacity: 0.1;
    z-index: -1;
}

.service-process-content {
    position: relative;
    cursor: -webkit-grab;
    cursor: grab;
}

.service-process-title {
    color: hsl(var(--light));
    text-align: center;
    font-size: 335px;
    font-weight: 900;
    line-height: 80%;
    letter-spacing: -23px;
    white-space: nowrap;
}

@media screen and (max-width: 1399px) {
    .service-process-title {
        font-size: 275px;
        letter-spacing: -15px;
    }
}

@media screen and (max-width: 1199px) {
    .service-process-title {
        font-size: 235px;
    }
}

@media screen and (max-width: 991px) {
    .service-process-title {
        font-size: 170px;
        letter-spacing: -10px;
    }
}

@media screen and (max-width: 767px) {
    .service-process-title {
        font-size: 124px;
        letter-spacing: 0;
    }
}

@media screen and (max-width: 767px) {
    .service-process-title {
        font-size: clamp(4rem, -0.7059rem + 23.5294vw, 7.75rem);
    }
}

.service-process-list {
    position: absolute;
    inset: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

.service-process-list-item {
    border-radius: 250px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--section-bg));
    color: hsl(var(--black));
    font-size: 32px;
    font-weight: 700;
    line-height: 125%;
    padding: 12px 25px;
}

@media screen and (max-width: 1499px) {
    .service-process-list-item {
        font-size: 24px;
        padding: 12px 20px;
    }
}

@media screen and (max-width: 1399px) {
    .service-process-list-item {
        font-size: 22px;
        padding: 12px 20px;
    }
}

@media screen and (max-width: 1199px) {
    .service-process-list-item {
        font-size: 18px;
        padding: 12px 20px;
    }
}

@media screen and (max-width: 991px) {
    .service-process-list-item {
        font-size: 17px;
        padding: 10px 18px;
    }
}

@media screen and (max-width: 767px) {
    .service-process-list-item {
        font-size: 16px;
        padding: 8px 16px;
    }
}

@media screen and (max-width: 575px) {
    .service-process-list-item {
        font-size: 14px;
    }
}

@media screen and (max-width: 424px) {
    .service-process-list-item {
        font-size: 12px;
        padding: 4px 8px;
    }
}

.our-offer-item {
    padding-block: 48px;
    border-bottom: 1px solid hsl(var(--border-light));
    cursor: pointer;
    position: relative;
    overflow: hidden;
}

@media screen and (max-width: 991px) {
    .our-offer-item {
        padding-block: 32px;
    }
}

.our-offer-item:first-child {
    border-top: 1px solid hsl(var(--border-light));
}

.our-offer-item-title, .our-offer-item-desc {
    color: hsl(var(--white));
    mix-blend-mode: difference;
    position: relative;
    z-index: 2;
}

.our-offer-item-title {
    max-width: 896px;
    width: 100%;
    margin-bottom: 8px;
    line-height: 115%;
}

.our-offer-item-desc {
    color: hsl(var(--body-color));
    font-size: 18px;
    line-height: 160%;
    max-width: 640px;
    width: 100%;
    height: 0px;
    overflow: hidden;
    -webkit-transition: height 0.3s ease-in-out;
    transition: height 0.3s ease-in-out;
    mix-blend-mode: difference;
}

@media screen and (max-width: 991px) {
    .our-offer-item-desc {
        font-size: 16px;
    }
}

.our-offer-item-thumb {
    border-radius: 20px;
    overflow: hidden;
    max-width: 210px;
    position: absolute;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
    top: 0;
    z-index: 1;
}

@media screen and (max-width: 991px) {
    .our-offer-item-thumb {
        max-width: 170px;
        border-radius: 12px;
        display: none;
    }
}

.our-offer-item-thumb img {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.our-offer-item:hover .our-offer-item-thumb {
    opacity: 1;
}

.our-offer-item:hover .our-offer-item-title, .our-offer-item:hover .our-offer-item-desc {
    color: hsl(var(--white));
    mix-blend-mode: difference;
    position: relative;
    z-index: 2;
}

.industries {
    position: relative;
    z-index: 1;
}

.industries::after, .industries::before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: clamp(9.375rem, -187.3587rem + 262.3116vw, 42rem);
    height: 100%;
    background-image: linear-gradient(to right, hsl(var(--base)) 1px, transparent 1px), linear-gradient(to bottom, hsl(var(--base)) 1px, transparent 1px);
    background-size: 20px 20px;
    -webkit-mask-image: radial-gradient(ellipse 70% 90% at 100% 50%, hsl(var(--black)) 30%, transparent 70%);
    mask-image: radial-gradient(ellipse 70% 90% at 100% 50%, hsl(var(--black)) 30%, transparent 70%);
    opacity: 0.125;
    z-index: -1;
}

.industries::after {
    right: auto;
    -webkit-transform: scale(-1);
    transform: scale(-1);
    left: 0;
}

.industries-item {
    border-radius: 20px;
    overflow: hidden;
    position: relative;
}

@media screen and (max-width: 1399px) {
    .industries-item {
        border-radius: 16px;
    }
}

@media screen and (max-width: 767px) {
    .industries-item {
        border-radius: 12px;
    }
}

.industries-item-content {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding: 24px;
    background: -webkit-gradient(linear, left bottom, left top, from(hsl(var(--black))), to(transparent));
    background: linear-gradient(0deg, hsl(var(--black)) 0%, transparent 100%);
}

@media screen and (max-width: 1399px) {
    .industries-item-content {
        padding: 20px;
    }
}

@media screen and (max-width: 767px) {
    .industries-item-content {
        padding: 16px;
    }
}

.industries-item-title {
    color: hsl(var(--white));
    margin-bottom: 4px;
}

.industries-item-desc {
    color: hsl(var(--border-light));
    font-size: 18px;
    line-height: 160%;
    height: 0px;
    overflow: hidden;
    -webkit-transition: height 0.3s ease-in-out;
    transition: height 0.3s ease-in-out;
}

@media screen and (max-width: 1399px) {
    .industries-item-desc {
        font-size: 16px;
    }
}

.system-card {
    padding: 24px;
    border-radius: 20px;
    border: 1px solid hsl(var(--section-bg));
    background: hsl(var(--white));
    height: 100%;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.system-card:hover {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
    -webkit-box-shadow: 0 10px 20px hsl(var(--black)/0.05);
    box-shadow: 0 10px 20px hsl(var(--black)/0.05);
}

@media screen and (max-width: 1199px) {
    .system-card {
        padding: 20px;
        border-radius: 16px;
    }
}

.system-card-icon {
    --size: 56px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: var(--size);
    height: var(--size);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 24px;
    background-color: hsl(var(--danger)/0.1);
    color: hsl(var(--danger));
    border-radius: 12px;
}

@media screen and (max-width: 1199px) {
    .system-card-icon {
        border-radius: 8px;
    }
}

@media screen and (max-width: 991px) {
    .system-card-icon {
        --size: 48px;
    }
}

.system-card-title {
    color: hsl(var(--heading-color));
    margin-bottom: 4px;
}

@media screen and (max-width: 991px) {
    .system-card-title {
        font-size: 26px;
    }
}

@media screen and (max-width: 575px) {
    .system-card-title {
        font-size: 24px;
    }
}

.approach-wrapper {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 24px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.approach-content-title {
    margin-bottom: 16px;
}

.approach-content-desc {
    color: hsl(var(--black));
}

.approach-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 16px;
}

.approach-list-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
}

.approach-list-item .icon {
    --size: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: var(--size);
    height: var(--size);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: hsl(var(--base));
    color: hsl(var(--white));
    border-radius: 50%;
    font-size: 12px;
}

.approach-list-item .text {
    color: hsl(var(--black));
    font-size: 18px;
    font-weight: 700;
    line-height: 140%;
}

.approach-card {
    --this-color: var(--danger);
    background-color: hsl(var(--this-color)/0.1);
    padding: 24px;
    border-radius: 12px;
    border: 1px solid hsl(var(--this-color));
}

@media screen and (max-width: 1199px) {
    .approach-card {
        padding: 20px;
    }
}

@media screen and (max-width: 991px) {
    .approach-card {
        padding: 16px;
        border-radius: 8px;
    }
}

.approach-card.style-two {
    --this-color: var(--base);
}

.approach-card-title {
    margin-bottom: 8px;
    color: hsl(var(--black));
    font-size: 18px;
    font-weight: 700;
    line-height: 140%;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
    line-height: 1;
}

.approach-card-title::before {
    content: "";
    width: 16px;
    height: 16px;
    background-color: hsl(var(--this-color));
    border-radius: 50%;
    display: block;
}

.approach-card-list-item {
    color: hsl(var(--secondary));
    font-size: 18px;
    line-height: 160%;
}

@media screen and (max-width: 1399px) {
    .approach-card-list-item {
        font-size: 16px;
    }
}

.approach-card-list-item:not(:last-child) {
    margin-bottom: 4px;
}

.approach-card-list-item .icon {
    color: hsl(var(--this-color));
}

.benefit-item {
    --gap: 24px;
    --inner-w: 58%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--gap);
    --radius: 24px;
}

.benefit-item:not(:last-child) {
    margin-bottom: 48px;
}

@media screen and (max-width: 767px) {
    .benefit-item:not(:last-child) {
        margin-bottom: 32px;
    }
}

.benefit-item:nth-child(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

@media screen and (max-width: 1199px) {
    .benefit-item {
        --radius: 20px;
    }
}

@media screen and (max-width: 991px) {
    .benefit-item {
        --radius: 16px;
    }
}

@media screen and (max-width: 767px) {
    .benefit-item {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important;
        --inner-w: 100%;
        --radius: 12px;
    }
}

.benefit-item-inner {
    border-radius: var(--radius);
    width: calc(var(--inner-w) - var(--gap) / 2);
    position: relative;
    overflow: hidden;
}

.benefit-item-inner .thumb {
    height: 100%;
}

.benefit-item-inner .thumb img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.benefit-item-inner-content {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 40px 32px;
    background: hsl(var(--white)/0.05);
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
    width: 100%;
}

@media screen and (max-width: 1199px) {
    .benefit-item-inner-content {
        padding: 32px 24px;
    }
}

@media screen and (max-width: 991px) {
    .benefit-item-inner-content {
        padding: 16px;
    }
}

.benefit-item-inner .count {
    font-weight: 900;
    color: hsl(var(--white));
    margin-bottom: 10px;
    line-height: 90%;
}

.benefit-item-inner .title {
    color: hsl(var(--white));
    font-size: 18px;
    font-weight: 500;
    line-height: 160%;
}

.benefit-item-content {
    --this-bg: 140 14% 96%;
    border-radius: var(--radius);
    width: calc(100% - var(--inner-w) - var(--gap) / 2);
    padding: 40px 24px;
    background: radial-gradient(162.76% 50% at 50% 50%, transparent 0%, hsl(var(--this-bg)) 100%);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 24px;
    position: relative;
    z-index: 1;
}

@media screen and (max-width: 1199px) {
    .benefit-item-content {
        padding: 32px 24px;
    }
}

@media screen and (max-width: 991px) {
    .benefit-item-content {
        padding: 24px;
    }
}

@media screen and (max-width: 767px) {
    .benefit-item-content {
        width: 100%;
        padding: 32px 24px;
    }
}

.benefit-item-content::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(to right, hsl(var(--black)) 1px, transparent 1px), linear-gradient(to bottom, hsl(var(--black)) 1px, transparent 1px);
    background-size: 32px 32px;
    -webkit-mask-image: radial-gradient(ellipse 70% 50% at 50% 50%, hsl(var(--black)) 30%, transparent 90%);
    mask-image: radial-gradient(ellipse 70% 50% at 50% 50%, hsl(var(--black)) 30%, transparent 90%);
    opacity: 0.05;
    z-index: -1;
}

.benefit-item-content .title {
    font-size: 72px;
    font-weight: 900;
    line-height: 80%;
    letter-spacing: -3px;
}

@media screen and (max-width: 1399px) {
    .benefit-item-content .title {
        font-size: 56px;
        letter-spacing: -2px;
    }
}

@media screen and (max-width: 1199px) {
    .benefit-item-content .title {
        font-size: 40px;
        letter-spacing: -1px;
    }
}

@media screen and (max-width: 991px) {
    .benefit-item-content .title {
        font-size: 32px;
    }
}

@media screen and (max-width: 575px) {
    .benefit-item-content .title {
        font-size: 28px;
    }
}

.benefit-item-content .desc {
    color: hsl(var(--heading-color));
    font-size: 18px;
    font-weight: 500;
    line-height: 160%;
}

@media screen and (max-width: 575px) {
    .benefit-item-content .desc {
        font-size: 16px;
    }
}

.service-tech-title {
    color: hsl(var(--border-light));
    text-align: center;
    font-size: 200px;
    font-weight: 900;
    line-height: 80%;
    white-space: nowrap;
}

@media screen and (max-width: 1399px) {
    .service-tech-title {
        font-size: 168px;
    }
}

@media screen and (max-width: 1199px) {
    .service-tech-title {
        font-size: 140px;
    }
}

@media screen and (max-width: 991px) {
    .service-tech-title {
        font-size: 105px;
        position: absolute;
        z-index: -1;
        left: 0;
        top: -10%;
    }
}

@media screen and (max-width: 767px) {
    .service-tech-title {
        font-size: 80px;
    }
}

@media screen and (max-width: 575px) {
    .service-tech-title {
        font-size: clamp(2.75rem, -0.0735rem + 14.1176vw, 5rem);
    }
}

@media screen and (max-width: 424px) {
    .service-tech-title {
        top: -5%;
    }
}

.service-tech-wrapper {
    --count: 5;
    --gap: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: var(--gap);
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100%;
}

@media screen and (max-width: 991px) {
    .service-tech-wrapper {
        --count: 3;
        -webkit-transform: unset;
        transform: unset;
        top: 0;
        position: relative;
    }
}

@media screen and (max-width: 767px) {
    .service-tech-wrapper {
        --gap: 16px;
    }
}

@media screen and (max-width: 424px) {
    .service-tech-wrapper {
        --count: 2;
    }
}

.service-tech-item {
    width: calc((100% - var(--gap) * (var(--count) - 1)) / var(--count));
    padding: 50px 24px;
    border-radius: 20px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.5);
    -webkit-backdrop-filter: blur(7.5px);
    backdrop-filter: blur(7.5px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

@media screen and (max-width: 1399px) {
    .service-tech-item img {
        max-height: 70px;
        -o-object-fit: contain;
        object-fit: contain;
    }
}

.profile-card,
.my-ticket-card {
    --gap: 40px;
    --inner-p: 56px;
    --radius: 40px;
    border-radius: var(--radius);
    padding: var(--inner-p);
    border: 1px solid hsl(var(--white));
    background: -webkit-gradient(linear, left bottom, left top, from(hsl(var(--black)/0.015)), to(hsl(var(--white)/0.5)));
    background: linear-gradient(0deg, hsl(var(--black)/0.015) 0%, hsl(var(--white)/0.5) 100%);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--gap);
}

@media screen and (max-width: 1399px) {

    .profile-card,
    .my-ticket-card {
        --inner-p: 48px;
        --radius: 32px;
    }
}

@media screen and (max-width: 1199px) {

    .profile-card,
    .my-ticket-card {
        --inner-p: 36px;
        --radius: 24px;
    }
}

@media screen and (max-width: 991px) {

    .profile-card,
    .my-ticket-card {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

@media screen and (max-width: 575px) {

    .profile-card,
    .my-ticket-card {
        --inner-p: 24px;
        --radius: 20px;
    }
}

@media screen and (max-width: 424px) {

    .profile-card,
    .my-ticket-card {
        --inner-p: 16px;
        --radius: 16px;
    }
}

.profile-card-sidebar,
.my-ticket-card-sidebar {
    width: 40%;
}

@media screen and (max-width: 991px) {

    .profile-card-sidebar,
    .my-ticket-card-sidebar {
        width: 100%;
    }
}

.profile-card-thumb .image,
.my-ticket-card-thumb .image {
    --size: 200px;
    height: var(--size);
    width: var(--size);
    border-radius: 50%;
    overflow: hidden;
    border: 1px solid hsl(var(--black)/0.05);
    margin-bottom: 16px;
}

@media screen and (max-width: 1399px) {

    .profile-card-thumb .image,
    .my-ticket-card-thumb .image {
        --size: 160px;
    }
}

.profile-card-thumb .document-upload,
.my-ticket-card-thumb .document-upload {
    --gap: 20px;
}

@media screen and (max-width: 1399px) {

    .profile-card-thumb .document-upload .btn,
    .my-ticket-card-thumb .document-upload .btn {
        font-size: 14px;
        padding: 12px 12px;
    }
}

.profile-card-content,
.my-ticket-card-content {
    margin-top: 32px;
    padding: 20px;
    border-radius: 16px;
    background-color: hsl(var(--black)/0.02);
}

.profile-card-content .item,
.my-ticket-card-content .item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    gap: 12px;
    font-size: 18px;
}

@media screen and (max-width: 1399px) {

    .profile-card-content .item,
    .my-ticket-card-content .item {
        font-size: 16px;
    }
}

@media screen and (max-width: 424px) {

    .profile-card-content .item,
    .my-ticket-card-content .item {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
}

.profile-card-content .item:not(:last-child),
.my-ticket-card-content .item:not(:last-child) {
    margin-bottom: 16px;
    padding-bottom: 16px;
    border-bottom: 1px dashed hsl(var(--black)/0.05);
}

@media screen and (max-width: 1399px) {

    .profile-card-content .item:not(:last-child),
    .my-ticket-card-content .item:not(:last-child) {
        margin-bottom: 12px;
        padding-bottom: 12px;
    }
}

.profile-card-content .item .label,
.my-ticket-card-content .item .label {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    color: hsl(var(--black)/0.75);
    min-width: 140px;
}

.profile-card-content .item .value,
.my-ticket-card-content .item .value {
    color: hsl(var(--heading-color));
    font-weight: 500;
}

.profile-card-body,
.my-ticket-card-body {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding-left: calc(var(--gap));
    border-left: 1px solid hsl(var(--black)/0.05);
}

@media screen and (max-width: 991px) {

    .profile-card-body,
    .my-ticket-card-body {
        padding-left: 0;
        border-left: 0;
        padding-top: calc(var(--gap));
        border-top: 1px solid hsl(var(--black)/0.05);
    }
}

.my-ticket-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 24px;
    margin-bottom: calc(var(--gap) / 2);
    padding-bottom: calc(var(--gap) / 2);
    border-bottom: 1px solid hsl(var(--black)/0.05);
}

.my-ticket-header .badge {
    white-space: nowrap;
}

.my-ticket-header-content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.ticket-view-card {
    --inner-p: 24px;
    --radius: 32px;
    border-radius: var(--radius);
    border: 1px solid hsl(var(--black)/0.03);
    background: -webkit-gradient(linear, left bottom, left top, from(hsl(var(--black)/0.015)), to(hsl(var(--white)/0.5)));
    background: linear-gradient(0deg, hsl(var(--black)/0.015) 0%, hsl(var(--white)/0.5) 100%);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

.ticket-view-card-header {
    padding: var(--inner-p);
    border-bottom: 1px solid hsl(var(--black)/0.05);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 24px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.ticket-view-card-header .date {
    font-weight: 500px;
    color: hsl(var(--black));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 6px;
}

.ticket-view-card-header .date .icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.ticket-view-card-body {
    padding: var(--inner-p);
}

.ticket-view-card-body .desc {
    font-size: 18px;
}

.ticket-view-card .attachment-file {
    margin-top: var(--inner-p);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 16px;
}

.ticket-view-card .attachment-file-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
    padding: 10px 16px;
    border: 1px solid hsl(var(--base)/0.1);
    background-color: hsl(var(--base)/0.1);
    font-weight: 600;
    border-radius: 12px;
}

/* ============================================================
 Sitemap Tree start
 ============================================================ */
.site-map-desc {
    font-size: 24px;
    max-width: 620px;
    width: 100%;
    text-align: center;
    margin-inline: auto;
    font-weight: 500;
    color: hsl(var(--heading-color));
}

.sitemap-tree-wrapper {
    overflow-x: auto;
}

.sitemap-tree {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 80px;
}

@media screen and (max-width: 1399px) {
    .sitemap-tree {
        gap: 60px;
    }
}

@media screen and (max-width: 1199px) {
    .sitemap-tree {
        gap: 50px;
    }
}

.sm-section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.sm-section__label {
    position: relative;
    background: hsl(var(--base));
    color: hsl(var(--white));
    font-size: 1rem;
    padding: 10px 28px;
    font-weight: 700;
    letter-spacing: 0.02em;
    border-radius: 8px;
    z-index: 1;
    text-align: center;
}

@media screen and (max-width: 1399px) {
    .sm-section__label {
        font-size: 0.9125rem;
        padding: 9px 20px;
    }
}

@media screen and (max-width: 1199px) {
    .sm-section__label {
        font-size: 0.875rem;
        padding: 8px 16px;
    }
}

.sm-section__label a {
    color: hsl(var(--white));
    text-decoration: none;
}

.sm-section__label::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 1px;
    height: 24px;
    background: hsl(var(--base));
}

.sm-section__branches {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding-top: 24px;
}

.sm-branch {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 4px;
}

.sm-branch::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: hsl(var(--base));
}

.sm-branch::after {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 1px;
    height: 20px;
    background: hsl(var(--base));
}

.sm-branch:first-child::before {
    left: 50%;
}

.sm-branch:last-child::before {
    right: 50%;
}

.sm-branch:first-child:last-child::before {
    display: none;
}

.sm-branch>.sm-node {
    margin-top: 20px;
}

.sm-branch--has-child>.sm-node {
    position: relative;
}

.sm-branch--has-child>.sm-node::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 1px;
    height: 20px;
    background: hsl(var(--base));
}

.sm-sub-branches {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding-top: 20px;
}

.sm-sub-branches .sm-branch {
    padding: 0 8px;
}

.sm-node {
    border: 1px solid hsl(var(--base)/0.4);
    border-radius: 8px;
    padding: 7px 14px;
    background: hsl(var(--white));
    font-size: 14px;
    font-weight: 500;
    color: hsl(var(--black));
    white-space: nowrap;
    -webkit-transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
    line-height: 1.5;
}

@media screen and (max-width: 1399px) {
    .sm-node {
        padding: 7px 12px;
        font-size: 13px;
    }
}

@media screen and (max-width: 1199px) {
    .sm-node {
        padding: 6px 5px;
        font-size: 12px;
    }
}

.sm-node a {
    color: inherit;
    text-decoration: none;
}

.sm-node:hover {
    background: hsl(var(--base));
    border-color: hsl(var(--base));
    color: hsl(var(--white));
}

.sm-node:hover a {
    color: hsl(var(--white));
}

/* ============================================================
 Sitemap Tree end
============================================================ */
/* ======================  Plugin Customization Start  ======================*/
/* ======================  Select2 Start  ======================*/
:root {
    --s-height: 56px;
    --select-border: hsl(var(--section-bg));
    --select-bg: var(--white);
    --select-shadow: none;
    --border-radius: 12px;
    --font-size: 18px;
    --font-weight: 400;
    --select-width: 100%;
    --select-color: hsl(var(--heading-color));
    --arrow-color: hsl(var(--body-color));
}

@media screen and (max-width: 767px) {
    :root {
        --font-size: 16px;
    }
}

.select2-group {
    position: relative;
}

.select2-group .icon {
    position: absolute;
    left: 12px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 2;
}

.select2-group .select2-container--default :is(.select2-selection--multiple, .select2-selection--single) {
    padding-left: 36px;
}

.selection {
    display: block;
}

.select2 .dropdown-wrapper {
    display: none;
}

.select2-container--default :is(.select2-selection--multiple, .select2-selection--single) {
    border: 1px solid var(--select-border);
    background: hsl(var(--select-bg));
    border-radius: var(--border-radius);
    min-height: var(--s-height);
    padding-inline: 4px;
    -webkit-box-shadow: var(--select-shadow);
    box-shadow: var(--select-shadow);
}

.select2-container--default.select2-container--focus :is(.select2-selection--multiple, .select2-selection--single),
.select2-container--default.select2-container--open :is(.select2-selection--multiple, .select2-selection--single) {
    border-color: hsl(var(--base));
}

.select2-container--default .select2-results__option--selected {
    background-color: hsl(var(--black)/0.05);
}

.select2-dropdown {
    border: 1px solid hsl(var(--black)/0.2) !important;
    min-width: 140px;
    border-radius: var(--border-radius) !important;
    margin-top: 4px !important;
    background-color: hsl(var(--white));
}

.select2-container--default .select2-results__option--selected {
    background-color: hsl(var(--section-bg)) !important;
    color: hsl(var(--heading-color)) !important;
}

.select2-container--default .select2-results__option--highlighted {
    background-color: hsl(var(--section-bg)/0.5) !important;
    color: hsl(var(--heading-color)) !important;
}

.select2-results__option {
    padding: 6px 10px;
    color: hsl(var(--black));
    font-size: var(--font-size);
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: hsl(var(--gray-color)/0.1);
    border: 0;
    font-size: 0.75rem;
    font-weight: 500;
    color: hsl(var(--black));
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    gap: 6px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: var(--s-height);
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: var(--arrow-color) transparent transparent transparent;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
    border-color: transparent transparent var(--arrow-color) transparent;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: var(--s-height);
    font-size: var(--font-size);
    color: var(--select-color);
    font-weight: var(--font-weight);
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__display {
    padding-left: 6px;
    padding-right: 0;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    border: 0;
}

.select2-search--dropdown {
    display: block;
    padding: 8px;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
    border: 1px solid var(--select-border);
    outline: 0;
    border-radius: var(--border-radius);
    padding: 6px 16px;
    font-size: var(--font-size);
    color: hsl(var(--black));
    background-color: hsl(var(--white));
}

.select2-container:has(.select2-selection--multiple,
    .select2-selection--single) {
    width: var(--select-width) !important;
}

.img-flag-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 6px;
    font-size: 1.125rem;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    .img-flag-inner {
        font-size: 1rem;
    }
}

.select2-selection--single:has(.img-flag) {
    border: 0;
    padding: 0;
    min-height: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.select2-selection--single:has(.img-flag) .select2-selection__rendered {
    height: auto;
    line-height: normal;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.select2-selection--single:has(.img-flag) .select2-selection__arrow {
    height: 22px;
}

.img-flag {
    width: 22px;
    height: 16px;
    border-radius: 2px;
    -o-object-fit: cover;
    object-fit: cover;
}

.select2-results__options::-webkit-scrollbar {
    width: 5px;
    height: 5px;
}

.select2-results__options::-webkit-scrollbar-track {
    background-color: hsl(var(--select-border));
}

.select2-results__options::-webkit-scrollbar-thumb {
    background-color: hsl(var(--black)/0.2);
}

/* ======================  Select2 End  ======================*/
/* ================= Slick Arrow & Dots css Start ================ */
.slick-initialized.slick-slider {
    margin: 0 -10px;
}

.slick-initialized.slick-slider .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.slick-initialized.slick-slider .slick-slide {
    height: auto;
    padding: 0 10px;
}

.slick-initialized.slick-slider .slick-slide>div {
    height: 100%;
}

.slick-arrow {
    --size: 40px;
    position: absolute;
    z-index: 1;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    border: none;
    width: var(--size);
    height: var(--size);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 50%;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
    background-color: hsl(var(--white));
    color: hsl(var(--black));
    font-size: 16px;
    -webkit-filter: drop-shadow(0px 8px 16px hsl(var(--black)/0.08)) drop-shadow(0px 0px 4px hsl(var(--black)/0.04));
    filter: drop-shadow(0px 8px 16px hsl(var(--black)/0.08)) drop-shadow(0px 0px 4px hsl(var(--black)/0.04));
}

@media screen and (max-width: 991px) {
    .slick-arrow {
        width: 36px;
        height: 36px;
    }
}

@media screen and (max-width: 575px) {
    .slick-arrow {
        width: 32px;
        height: 32px;
        font-size: 0.875rem;
    }
}

.slick-arrow:hover {
    border-color: hsl(var(--base));
    background-color: hsl(var(--base));
    color: hsl(var(--white));
}

.slick-next {
    right: -20px;
}

@media screen and (max-width: 991px) {
    .slick-next {
        right: -10px;
    }
}

@media screen and (max-width: 575px) {
    .slick-next {
        right: 0px;
    }
}

.slick-prev {
    left: -20px;
}

@media screen and (max-width: 991px) {
    .slick-prev {
        left: -10px;
    }
}

@media screen and (max-width: 575px) {
    .slick-prev {
        left: 0px;
    }
}

/* Dots Css Start */
.slick-dots {
    text-align: center;
    padding-top: 20px;
}

.slick-dots li {
    display: inline-block;
}

.slick-dots li button {
    border: none;
    background-color: hsl(var(--black)/0.06);
    color: hsl(var(--heading-color));
    margin: 0 3px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    text-indent: -9999px;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
}

.slick-dots li.slick-active button {
    background: hsl(var(--base));
    width: 48px;
    border-radius: 24px;
    color: hsl(var(--base));
}

/* ================= Slick Arrow & Dots css Start ================ */
/* ======================  Plugin Customization End  ======================*/
/* ======================  Pages Design Start  ======================*/
.contact-banner {
    background-position: bottom center;
}

.contact-banner-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.contact-banner-content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.contact-banner-title {
    --extra-fs: 104px;
    color: hsl(var(--white));
    font-size: var(--extra-fs);
    font-weight: 900;
    line-height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(hsl(var(--white))), to(#999));
    background: linear-gradient(180deg, hsl(var(--white)) 0%, #999 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    padding-bottom: 10px;
}

@media screen and (max-width: 1599px) {
    .contact-banner-title {
        --extra-fs: 84px;
    }
}

@media screen and (max-width: 1199px) {
    .contact-banner-title {
        --extra-fs: 64px;
    }
}

@media screen and (max-width: 767px) {
    .contact-banner-title {
        --extra-fs: 48px;
    }
}

.contact-banner-desc {
    max-width: 375px;
    width: 100%;
    color: hsl(var(--body-color));
}

@media screen and (max-width: 991px) {
    .contact-banner-desc {
        display: none;
    }
}

.contact-banner-desc .highlight {
    color: hsl(var(--white));
}

.contact-form {
    --inner-p: 48px 40px;
    --radius: 40px;
    padding: var(--inner-p);
    border-radius: var(--radius);
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white));
    -webkit-backdrop-filter: blur(11px);
    backdrop-filter: blur(11px);
}

@media screen and (max-width: 1399px) {
    .contact-form {
        --radius: 32px;
        --inner-p: 40px 32px;
    }
}

@media screen and (max-width: 991px) {
    .contact-form {
        --radius: 24px;
        --inner-p: 32px 24px;
    }
}

@media screen and (max-width: 575px) {
    .contact-form {
        --radius: 20px;
        --inner-p: 24px 20px;
    }
}

.contact-service-select {
    padding-block: 8px;
}

.contact-service-select .title {
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 100%;
    color: hsl(var(--heading-color));
    margin-bottom: 16px;
}

.contact-service-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 32px;
}

@media screen and (max-width: 1399px) {
    .contact-service-list {
        gap: 24px;
    }
}

@media screen and (max-width: 1199px) {
    .contact-service-list {
        gap: 16px;
    }
}

.contact-submit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 48px;
}

@media screen and (max-width: 991px) {
    .contact-submit {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        gap: 16px;
    }
}

.contact-submit-btn {
    --btn-bg: 148 73% 10%;
    --btn-s: 48px;
    padding: 4px 24px 4px 4px;
    background-color: hsl(var(--btn-bg));
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    border-radius: 50px;
    font-size: 20px;
    font-weight: 700;
    color: #8BEAB3;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

@media screen and (max-width: 1399px) {
    .contact-submit-btn {
        --btn-s: 40px;
        font-size: 16px;
    }
}

@media screen and (max-width: 767px) {
    .contact-submit-btn {
        --btn-s: 36px;
        font-size: 15px;
        gap: 10px;
    }
}

.contact-submit-btn .icon {
    height: var(--btn-s);
    width: var(--btn-s);
    border-radius: 50%;
    background-color: hsl(var(--base));
    display: grid;
    place-content: center;
    color: #072C18;
}

@media screen and (max-width: 1399px) {
    .contact-submit-btn .icon svg {
        height: 24px;
        width: 24px;
    }
}

@media screen and (max-width: 767px) {
    .contact-submit-btn .icon svg {
        height: 20px;
        width: 20px;
    }
}

.contact-submit-desc a {
    color: hsl(var(--heading-color));
    text-decoration: underline;
}

.contact-info {
    margin-top: 40px;
}

.contact-info-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 12px 24px 12px 12px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 12px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.61);
    -webkit-backdrop-filter: blur(11px);
    backdrop-filter: blur(11px);
    gap: 8px;
}

.contact-info-item:not(:last-child) {
    margin-bottom: 12px;
}

.contact-info-item .icon {
    --icon-size: 56px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: var(--icon-size);
    height: var(--icon-size);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 10px;
    border: 1px solid hsl(var(--white));
    background: #F9FAFB;
    -webkit-box-shadow: 0 0 4.667px 0 hsl(var(--black)/0.04), 0 4.667px 9.333px 0 hsl(var(--black)/0.06);
    box-shadow: 0 0 4.667px 0 hsl(var(--black)/0.04), 0 4.667px 9.333px 0 hsl(var(--black)/0.06);
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 1199px) {
    .contact-info-item .icon {
        --icon-size: 48px;
    }
}

@media screen and (max-width: 767px) {
    .contact-info-item .icon {
        --icon-size: 40px;
    }
}

.contact-info-item .wrapper {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.contact-info-item .title {
    line-height: 1.6;
    color: hsl(var(--body-color));
}

.contact-info-item .value {
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
}

.contact-info-item .arrow-link {
    --icon-size: 32px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: var(--icon-size);
    height: var(--icon-size);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 8px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.61);
    -webkit-box-shadow: 0 0 12px 0 hsl(var(--black)/0.1);
    box-shadow: 0 0 12px 0 hsl(var(--black)/0.1);
    -webkit-backdrop-filter: blur(11px);
    backdrop-filter: blur(11px);
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
}

.contact-info-item:hover {
    background-color: hsl(var(--base)/0.05);
    border-color: hsl(var(--base)/0.1);
}

.contact-info-item:hover .value {
    color: hsl(var(--base));
}

.contact-info-item:hover .arrow-link {
    background-color: hsl(var(--base));
    color: hsl(var(--white));
}



.faq-content-wrapper {
    max-width: 464px;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 991px) {
    .faq-content-wrapper {
        max-width: 100%;
    }
}

.faq-content {
    padding: 24px;
    border-radius: 20px;
}

.faq-content-desc {
    margin-bottom: 24px;
}

.faq-content-link .icon {
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
}

.faq-content-link a {
    text-decoration: underline;
}

.faq-content-link a:hover {
    color: hsl(var(--black));
}

.faq-content-link a:hover .icon {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.proposal-form {
    max-width: 1096px;
    width: 100%;
    margin: 0 auto;
}

.proposal-form .form--control {
    padding: 11px 16px;
    background: hsl(var(--white));
    font-size: 16px;
    line-height: 1.5;
}

.proposal-form .form--control::-webkit-input-placeholder {
    color: hsl(var(--body-color)/0.5);
}

.proposal-form .form--control::-moz-placeholder {
    color: hsl(var(--body-color)/0.5);
}

.proposal-form .form--control:-ms-input-placeholder {
    color: hsl(var(--body-color)/0.5);
}

.proposal-form .form--control::-ms-input-placeholder {
    color: hsl(var(--body-color)/0.5);
}

.proposal-form .form--control::placeholder {
    color: hsl(var(--body-color)/0.5);
}

.proposal-form .form--label {
    color: hsl(var(--secondary));
    font-size: 16px;
}

.proposal-form .proposal-form-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 24px;
}

.proposal-form .proposal-form-block:not(:last-child) .proposal-form-row {
    padding-bottom: 32px;
    margin-bottom: 32px;
    border-bottom: 1px solid #E5E7EB;
}

@media screen and (max-width: 991px) {
    .proposal-form .proposal-form-block:not(:last-child) .proposal-form-row {
        padding-bottom: 24px;
        margin-bottom: 24px;
    }
}

.proposal-form .proposal-form-block-title {
    color: hsl(var(--black));
    line-height: 1.25;
    max-width: 312px;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .proposal-form .proposal-form-block-title {
        max-width: 200px;
        font-size: 1.05rem;
    }
}

@media screen and (max-width: 575px) {
    .proposal-form .proposal-form-block-title {
        max-width: 100%;
    }
}

@media screen and (max-width: 575px) {
    .proposal-form .proposal-form-block {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

.proposal-form-row {
    max-width: 536px;
    width: 100%;
}

@media screen and (max-width: 575px) {
    .proposal-form-row {
        max-width: 100%;
    }
}

.proposal-form-select {
    border-radius: 12px;
    border: 1px solid #F3F4F6;
    background: hsl(var(--white));
    width: 100%;
    height: 48px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-inline: 16px;
    cursor: pointer;
}

.proposal-form-select:has(input:checked) {
    border-color: hsl(var(--base)/0.2);
    background-color: hsl(var(--base)/0.05);
}

.proposal-form-select:not(:last-child) {
    margin-bottom: 16px;
}

.proposal-form-select .form-check-input:checked[type=radio] {
    --bs-form-check-bg-image: none;
}

.proposal-form-select .form-check-label {
    font-size: 16px;
    font-weight: 700;
}

.custom-proposal {
    --inner-p: 56px;
    --radius: 40px;
    border-radius: var(--radius);
    padding: var(--inner-p);
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.5);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    overflow: hidden;
}

@media screen and (max-width: 1199px) {
    .custom-proposal {
        --inner-p: 48px;
        --radius: 32px;
    }
}

@media screen and (max-width: 991px) {
    .custom-proposal {
        --inner-p: 40px;
        --radius: 24px;
    }
}

@media screen and (max-width: 767px) {
    .custom-proposal {
        --inner-p: 32px;
        --radius: 20px;
    }
}

.custom-proposal-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 32px;
    height: 100%;
}

.custom-proposal-badge {
    color: hsl(var(--base));
    font-weight: 700;
    line-height: 160%;
    padding: 6px 12px;
    border-radius: 24px;
    border: 1px solid hsl(var(--base));
    margin-bottom: 12px;
}

.custom-proposal-title {
    font-weight: 900;
    color: hsl(var(--black));
    margin-bottom: 20px;
}

.custom-proposal-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 12px;
}

.custom-proposal-list-item {
    font-size: 18px;
    color: hsl(var(--black));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
}

.custom-proposal-list-item .icon {
    width: 20px;
    height: 20px;
    display: grid;
    place-content: center;
    border: 2px solid hsl(var(--base));
    font-size: 10px;
    color: hsl(var(--base));
    border-radius: 50%;
}

.custom-proposal-supporter {
    margin-bottom: calc(-1 * var(--inner-p));
    margin-left: calc(-1 * var(--inner-p));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    gap: 12px;
}

@media screen and (max-width: 991px) {
    .custom-proposal-supporter {
        margin-bottom: 0;
        margin-left: 0;
    }
}

.custom-proposal-supporter .thumb {
    max-width: 380px;
}

@media screen and (max-width: 1199px) {
    .custom-proposal-supporter .thumb {
        max-width: 220px;
    }
}

.custom-proposal-supporter .content {
    margin-bottom: var(--inner-p);
}

.custom-proposal-supporter .content .designation {
    color: hsl(var(--body-color));
    line-height: 1.6;
}

.btn--base-light:has(.arrow-icon) {
    position: relative;
    padding-left: calc(var(--btn-s) + 16px);
    --btn-s: 48px;
}

@media screen and (max-width: 1399px) {
    .btn--base-light:has(.arrow-icon) {
        --btn-s: 40px;
    }
}

@media screen and (max-width: 767px) {
    .btn--base-light:has(.arrow-icon) {
        --btn-s: 36px;
    }
}

.btn--base-light .arrow-icon {
    left: 3px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    height: var(--btn-s);
    width: var(--btn-s);
    border-radius: 50%;
    background-color: hsl(var(--base));
    display: grid !important;
    place-content: center;
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
    font-size: 32px;
    color: hsl(var(--black));
}

@media screen and (max-width: 1399px) {
    .btn--base-light .arrow-icon {
        font-size: 28px;
    }
}

@media screen and (max-width: 767px) {
    .btn--base-light .arrow-icon {
        font-size: 22px;
    }
}

.btn--base-light:hover .arrow-icon {
    background-color: hsl(var(--white));
}

.document-upload {
    --gap: 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: var(--gap);
    cursor: pointer;
    border-radius: 12px;
    border: 1px solid hsl(var(--base)/0.1);
    background: hsl(var(--white)/0.5);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    padding: 8px;
}

@media screen and (max-width: 1399px) {
    .document-upload {
        --gap: 24px;
    }
}

@media screen and (max-width: 575px) {
    .document-upload {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
}

.document-upload-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
}

.document-upload-content .icon {
    color: hsl(var(--base));
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-size: 24px;
}

.document-upload-content .content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.document-upload-content .content .title {
    color: hsl(var(--heading-color));
    font-size: 16px;
    font-weight: 700;
    line-height: 160%;
}

.document-upload-content .content .note {
    color: hsl(var(--body-color));
    font-size: 11px;
    line-height: 140%;
}

.document-upload .btn {
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.visit-location {
    position: relative;
    z-index: 1;
    background-color: hsl(var(--dark));
    border-radius: 40px;
}

@media screen and (max-width: 1399px) {
    .visit-location {
        border-radius: 32px;
    }
}

@media screen and (max-width: 1199px) {
    .visit-location {
        border-radius: 24px;
    }
}

@media screen and (max-width: 575px) {
    .visit-location {
        border-radius: 20px;
    }
}

.visit-location::after, .visit-location::before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: clamp(9.375rem, -187.3587rem + 262.3116vw, 42rem);
    height: 100%;
    background-image: linear-gradient(to right, hsl(var(--base)) 1px, transparent 1px), linear-gradient(to bottom, hsl(var(--base)) 1px, transparent 1px);
    background-size: 20px 20px;
    -webkit-mask-image: radial-gradient(ellipse 70% 90% at 100% 50%, hsl(var(--black)) 30%, transparent 70%);
    mask-image: radial-gradient(ellipse 70% 90% at 100% 50%, hsl(var(--black)) 30%, transparent 70%);
    opacity: 0.125;
    z-index: -1;
}

.visit-location::after {
    right: auto;
    -webkit-transform: scale(-1);
    transform: scale(-1);
    left: 0;
}

.location-card {
    --inner-p: 40px;
    padding: var(--inner-p);
    border-radius: 20px;
    background-color: hsl(var(--white)/0.07);
    -webkit-backdrop-filter: blur(9px);
    backdrop-filter: blur(9px);
    height: 100%;
}

@media screen and (max-width: 1199px) {
    .location-card {
        --inner-p: 32px;
        border-radius: 16px;
    }
}

@media screen and (max-width: 767px) {
    .location-card {
        --inner-p: 24px;
        border-radius: 12px;
    }
}

.location-card-area {
    margin-bottom: 100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
}

@media screen and (max-width: 1199px) {
    .location-card-area {
        margin-bottom: 80px;
    }
}

@media screen and (max-width: 767px) {
    .location-card-area {
        margin-bottom: 60px;
    }
}

.location-card-area .thumb {
    width: 55px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    border-radius: 8px;
    overflow: hidden;
}

.location-card-area .name {
    color: hsl(var(--white));
}

.location-card-desc {
    color: hsl(var(--white));
    line-height: 140%;
    margin-bottom: 20px;
}

.location-card-desc .small-text {
    display: block;
    font-size: 18px;
    line-height: 140%;
}

@media screen and (max-width: 991px) {
    .location-card-desc .small-text {
        font-size: 16px;
    }
}

.location-card-link {
    color: hsl(var(--white)/0.5);
    font-size: 18px;
    font-weight: 700;
    line-height: 140%;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 6px;
}

.location-card-link .text {
    text-decoration: underline;
}

.location-card-link .icon {
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
    font-size: 20px;
}

.location-card-link:hover .icon {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.faq-content-wrapper {
    max-width: 464px;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 991px) {
    .faq-content-wrapper {
        max-width: 100%;
    }
}

.faq-content {
    padding: 24px;
    border-radius: 20px;
}

.faq-content-desc {
    margin-bottom: 24px;
}

.faq-content-link .icon {
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
}

.faq-content-link a {
    text-decoration: underline;
}

.faq-content-link a:hover {
    color: hsl(var(--black));
}

.faq-content-link a:hover .icon {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* =========================================== Account Css Start =========================*/
.account-section {
    --radius-bg: #101216;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    height: 100vh;
    background-color: hsl(var(--light-bg));
}

.account-heading {
    padding: 16px;
}

@media screen and (max-width: 1599px) {
    .account-heading {
        padding: 0;
    }
}

.account-heading .logo {
    margin-bottom: 24px;
}

.account-heading-desc {
    color: hsl(var(--white));
    max-width: 652px;
    width: 100%;
    font-weight: 500;
    margin-bottom: 32px;
}

@media screen and (max-width: 1599px) {
    .account-heading-desc {
        font-size: 24px;
        line-height: 1.3;
    }
}

@media screen and (max-width: 1399px) {
    .account-heading-desc {
        font-size: 20px;
        margin-bottom: 24px;
    }
}

.account-heading-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 16px;
}

@media screen and (max-width: 1399px) {
    .account-heading-list {
        gap: 12px;
    }
}

.account-heading-list-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
}

.account-heading-list-item .icon {
    height: 28px;
    width: 28px;
    border-radius: 6px;
    background-color: hsl(var(--white));
    display: grid;
    place-items: center;
    color: hsl(var(--black));
}

@media screen and (max-width: 1599px) {
    .account-heading-list-item .icon {
        height: 24px;
        width: 24px;
        font-size: 14px;
    }
}

@media screen and (max-width: 1399px) {
    .account-heading-list-item .icon {
        height: 20px;
        width: 20px;
        border-radius: 4px;
    }
}

.account-heading-list-item .text {
    color: hsl(var(--white));
}

@media screen and (max-width: 1599px) {
    .account-heading-list-item .text {
        font-size: 18px;
    }
}

@media screen and (max-width: 1399px) {
    .account-heading-list-item .text {
        font-size: 16px;
    }
}

.account-left {
    height: 100%;
    width: 56%;
    position: relative;
    z-index: 1;
    padding: 32px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 1599px) {
    .account-left {
        padding: 24px;
    }
}

@media screen and (max-width: 991px) {
    .account-left {
        display: none;
    }
}

.account-left-round {
    --radius: 28px;
    position: absolute;
    right: 0;
    bottom: 0;
    width: 148px;
    height: 104px;
    background: hsl(var(--light-bg));
    border-radius: var(--radius) 0 0 0;
    z-index: 3;
}

@media screen and (max-width: 1599px) {
    .account-left-round {
        --radius: 20px;
    }
}

.account-left-round::after {
    content: "";
    position: absolute;
    right: 0px;
    top: -45px;
    width: 45px;
    height: 45px;
    background: transparent;
    border-bottom-right-radius: var(--radius);
    -webkit-box-shadow: 20px 20px 0 0 hsl(var(--light-bg));
    box-shadow: 20px 20px 0 0 hsl(var(--light-bg));
}

.account-left-round::before {
    content: "";
    position: absolute;
    left: -45px;
    bottom: 0;
    width: 45px;
    height: 45px;
    background: transparent;
    border-top-left-radius: var(--radius);
    -webkit-box-shadow: -20px -20px 0 0 hsl(var(--light-bg));
    box-shadow: -20px -20px 0 0 hsl(var(--light-bg));
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.account-left-bg {
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: 0px 30px 30px 0px;
    overflow: hidden;
}

@media screen and (max-width: 1599px) {
    .account-left-bg {
        border-radius: 0px 20px 20px 0px;
    }
}

.account-left-bg video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.account-left .account-slider-arrow {
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    bottom: 24px;
    right: 0;
    z-index: 3;
    gap: 12px;
}

.account-left .account-slider-arrow .slick-arrow {
    background: hsl(var(--white));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 56px;
    height: 56px;
    padding: 16px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 12px;
    font-size: 1.75rem;
    position: unset;
    -webkit-transform: unset;
    transform: unset;
    color: hsl(var(--black));
}

@media screen and (max-width: 1599px) {
    .account-left .account-slider-arrow .slick-arrow {
        font-size: 1.5rem;
        width: 48px;
        height: 48px;
    }
}

.account-left .account-slider-arrow .slick-arrow:hover {
    -webkit-box-shadow: 0 0 20px 4px hsl(var(--black)/0.05);
    box-shadow: 0 0 20px 4px hsl(var(--black)/0.05);
    color: hsl(var(--black));
}

.account-slider {
    margin: 0 -10px;
}

.account-slider-item {
    padding: 40px 48px;
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    border-radius: 40px;
    overflow: hidden;
    background-color: hsl(var(--white)/0.13);
    position: relative;
    z-index: 1;
}

@media screen and (max-width: 1599px) {
    .account-slider-item {
        padding: 24px 32px;
        border-radius: 24px;
    }
}

@media screen and (max-width: 1399px) {
    .account-slider-item {
        padding: 16px 20px;
        border-radius: 16px;
    }
}

.account-slider-item .bg {
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: 40px;
    overflow: hidden;
}

.account-slider-item .title {
    color: hsl(var(--white));
    margin-bottom: 20px;
    line-height: 1.25;
}

@media screen and (max-width: 1599px) {
    .account-slider-item .title {
        font-size: 1.75rem;
        margin-bottom: 12px;
    }
}

@media screen and (max-width: 1399px) {
    .account-slider-item .title {
        font-size: 1.375rem;
    }
}

.account-slider-item .desc {
    color: hsl(var(--border-light));
    font-size: 1.75rem;
    line-height: 1.35;
    margin-bottom: 50px;
}

@media screen and (max-width: 1599px) {
    .account-slider-item .desc {
        font-size: 1.375rem;
    }
}

@media screen and (max-width: 1399px) {
    .account-slider-item .desc {
        font-size: 1.125rem;
    }
}

.account-slider-item .name {
    color: hsl(var(--white));
    margin-bottom: 2px;
}

@media screen and (max-width: 1599px) {
    .account-slider-item .name {
        font-size: 1.25rem;
    }
}

@media screen and (max-width: 1399px) {
    .account-slider-item .name {
        font-size: 1.125rem;
    }
}

.account-slider-item .designation {
    color: hsl(var(--light));
    font-size: 18px;
}

@media screen and (max-width: 1599px) {
    .account-slider-item .designation {
        font-size: 1.0625rem;
    }
}

@media screen and (max-width: 1399px) {
    .account-slider-item .designation {
        font-size: 1rem;
    }
}

.account-slider-item-round {
    --radius: 28px;
    position: absolute;
    right: 0;
    bottom: 0;
    width: 148px;
    height: 104px;
    background: var(--radius-bg);
    border-radius: var(--radius) 0 0 0;
    z-index: 3;
}

@media screen and (max-width: 1599px) {
    .account-slider-item-round {
        --radius: 20px;
    }
}

.account-slider-item-round::after {
    content: "";
    position: absolute;
    right: 0px;
    top: -45px;
    width: 45px;
    height: 45px;
    background: transparent;
    border-bottom-right-radius: var(--radius);
    -webkit-box-shadow: 20px 20px 0 0 var(--radius-bg);
    box-shadow: 20px 20px 0 0 var(--radius-bg);
}

.account-slider-item-round::before {
    content: "";
    position: absolute;
    left: -45px;
    bottom: 0;
    width: 45px;
    height: 45px;
    background: transparent;
    border-top-left-radius: var(--radius);
    -webkit-box-shadow: -20px -20px 0 0 var(--radius-bg);
    box-shadow: -20px -20px 0 0 var(--radius-bg);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.account-slider .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.account-slider .slick-slide {
    height: auto;
    padding: 0 10px;
}

.account-slider .slick-slide>div {
    height: 100%;
}

.account-content {
    height: 100%;
    width: 44%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 40px;
    overflow-y: auto;
    position: relative;
    z-index: 1;
}

@media screen and (max-width: 1599px) {
    .account-content {
        padding: 32px;
    }
}

@media screen and (max-width: 991px) {
    .account-content {
        padding: 24px;
        width: 100%;
    }
}

.account-form {
    width: 100%;
    max-width: 550px;
    margin-block: auto;
    height: -webkit-max-content;
    height: -moz-max-content;
    height: max-content;
}

.account-form-title {
    margin-bottom: 12px;
}

.account-form-desc {
    margin-bottom: 32px;
    color: hsl(var(--secondary));
    font-size: 1.25rem;
    max-width: 455px;
    width: 100%;
}

@media screen and (max-width: 991px) {
    .account-form-desc {
        font-size: 1.125rem;
    }
}

.account-form .form-check-label {
    font-size: 1rem;
}

.account-form button.btn {
    margin-block: 32px;
}

.social-auth {
    width: 100%;
}

.social-auth__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 16px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.social-auth__item {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.social-auth__link {
    border-radius: 12px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white));
    -webkit-box-shadow: 0 0 6px 0 hsl(var(--black)/0.02), 0 2px 4px 0 hsl(var(--black)/0.08);
    box-shadow: 0 0 6px 0 hsl(var(--black)/0.02), 0 2px 4px 0 hsl(var(--black)/0.08);
    color: hsl(var(--secondary));
    font-size: 1.125rem;
    font-weight: 500;
    width: 100%;
    padding: 15px 16px;
    line-height: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 8px;
}

.social-auth__link img {
    width: 24px;
    height: 24px;
}

.social-auth__link:hover {
    -webkit-box-shadow: 0 0 6px 0 hsl(var(--black)/0.08), 0 2px 4px 0 hsl(var(--black)/0.15);
    box-shadow: 0 0 6px 0 hsl(var(--black)/0.08), 0 2px 4px 0 hsl(var(--black)/0.15);
    color: hsl(var(--black));
}

.social-auth__divide {
    text-align: center;
    position: relative;
    z-index: 1;
    margin-block: 16px;
}

.social-auth__divide::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background-color: hsl(var(--black)/0.2);
    height: 1px;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100%;
}

.social-auth__divide span {
    padding-inline: 6px;
    background-color: hsl(var(--light-bg));
    color: hsl(var(--body-color));
    font-size: 14px;
}

.forgot-password {
    color: hsl(var(--danger));
    font-size: 1rem;
    font-weight: 500;
}

.forgot-password:hover {
    text-decoration: underline;
    color: hsl(var(--danger));
}

.account-external {
    font-size: 1.125rem;
    color: hsl(var(--body-color));
    text-align: center;
}

@media screen and (max-width: 1399px) {
    .account-external {
        font-size: 1rem;
    }
}

.account-external a {
    color: hsl(var(--heading-color));
    font-weight: 700;
}

.account-external a:hover {
    text-decoration: underline;
}

/* ============================================ Account Css End ====================================*/
.visit-banner {
    min-height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    z-index: 1;
    padding-block: 60px;
}

.visit-banner-shape {
    position: absolute;
    inset: 0;
    z-index: -1;
    background-repeat: repeat-x;
    -webkit-animation: slide 200s linear infinite;
    animation: slide 200s linear infinite;
}

@-webkit-keyframes slide {
    0% {
        background-position: 0 0;
    }

    100% {
        background-position: 3840px 0;
    }
}

@keyframes slide {
    0% {
        background-position: 0 0;
    }

    100% {
        background-position: 3840px 0;
    }
}

.visit-banner-wrapper {
    max-width: 1120px;
    margin: 0 auto;
    padding-inline: 16px;
}

.visit-banner-title {
    font-size: 102px;
    font-weight: 800;
    line-height: 120%;
    color: hsl(var(--base-d-600));
}

@media screen and (max-width: 1599px) {
    .visit-banner-title {
        font-size: 90px;
    }
}

@media screen and (max-width: 1399px) {
    .visit-banner-title {
        font-size: 84px;
    }
}

@media screen and (max-width: 1199px) {
    .visit-banner-title {
        font-size: 72px;
    }
}

@media screen and (max-width: 991px) {
    .visit-banner-title {
        font-size: 60px;
    }
}

@media screen and (max-width: 575px) {
    .visit-banner-title {
        font-size: 48px;
    }
}

.visit-banner-title .highlight-text {
    background: url(../images/thumbs/bd.png) lightgray 50%/cover no-repeat;
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-repeat: repeat-x;
    -webkit-animation: slide-text 100s linear infinite;
    animation: slide-text 100s linear infinite;
}

@-webkit-keyframes slide-text {
    0% {
        background-position: 0 0;
    }

    100% {
        background-position: 1920px 0;
    }
}

@keyframes slide-text {
    0% {
        background-position: 0 0;
    }

    100% {
        background-position: 1920px 0;
    }
}

.visit-banner-subtitle {
    font-weight: 400;
}

@media screen and (max-width: 1199px) {
    .visit-banner-subtitle {
        font-size: 40px;
    }
}

@media screen and (max-width: 991px) {
    .visit-banner-subtitle {
        font-size: 32px;
    }
}

@media screen and (max-width: 575px) {
    .visit-banner-subtitle {
        font-size: 24px;
    }
}

.visit-banner-desc {
    max-width: 940px;
    margin: 0 auto;
    margin-block: 32px;
    color: hsl(var(--secondary));
    font-size: 24px;
    font-weight: 400;
    line-height: 150%;
}

@media screen and (max-width: 1199px) {
    .visit-banner-desc {
        font-size: 20px;
        margin-block: 24px;
    }
}

@media screen and (max-width: 991px) {
    .visit-banner-desc {
        font-size: 18px;
        margin-block: 20px;
    }
}

@media screen and (max-width: 575px) {
    .visit-banner-desc {
        font-size: 17px;
    }
}

.visit-banner-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 24px;
    margin-top: 48px;
}

@media screen and (max-width: 1399px) {
    .visit-banner-btn {
        margin-top: 32px;
    }
}

@media screen and (max-width: 575px) {
    .visit-banner-btn {
        gap: 16px;
    }
}

@media screen and (max-width: 424px) {
    .visit-banner-btn {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 16px;
    }

    .visit-banner-btn .btn {
        width: 100%;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.visit-service-card-wrapper {
    --count: 3;
    --gap: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: var(--gap);
}

@media screen and (max-width: 991px) {
    .visit-service-card-wrapper {
        --count: 2;
    }
}

@media screen and (max-width: 767px) {
    .visit-service-card-wrapper {
        --count: 1;
    }
}

.visit-service-card {
    --inner-p: 32px;
    --radius: 20px;
    width: calc(100% / var(--count) - (var(--gap) - var(--gap) / var(--count)));
    padding: var(--inner-p);
    border-radius: var(--radius);
    text-align: center;
    position: relative;
    z-index: 1;
    overflow: hidden;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.61);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

@media screen and (max-width: 1399px) {
    .visit-service-card {
        --inner-p: 24px;
        --radius: 16px;
    }
}

@media screen and (max-width: 767px) {
    .visit-service-card {
        --inner-p: 20px;
        --radius: 12px;
    }
}

.visit-service-card-icon {
    position: relative;
    z-index: 1;
}

.visit-service-card-icon-inner {
    --icon-size: 64px;
    width: var(--icon-size);
    height: var(--icon-size);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 84px;
    border-radius: 12px;
    color: hsl(var(--black));
    margin-inline: auto;
    border: 1px solid hsl(var(--white));
    background-color: hsl(var(--white));
    -webkit-box-shadow: 0 0 12px 0 hsl(var(--black)/0.1);
    box-shadow: 0 0 12px 0 hsl(var(--black)/0.1);
}

@media screen and (max-width: 1399px) {
    .visit-service-card-icon-inner {
        margin-bottom: 60px;
    }
}

@media screen and (max-width: 1199px) {
    .visit-service-card-icon-inner {
        --icon-size: 52px;
        margin-bottom: 48px;
        border-radius: 8px;
    }
}

@media screen and (max-width: 767px) {
    .visit-service-card-icon-inner {
        margin-bottom: 42px;
    }
}

.visit-service-card-icon .shape-image {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 100%;
}

.visit-service-card-icon .shape-image:has(.bottom-circle) {
    bottom: -50%;
    top: 0;
    -webkit-transform: translate(-50%, -25%);
    transform: translate(-50%, -25%);
}

@media screen and (max-width: 1399px) {
    .visit-service-card-icon .shape-image:has(.bottom-circle) {
        -webkit-transform: translate(-50%, -15%);
        transform: translate(-50%, -15%);
    }
}

.visit-service-card-icon .shape-image:has(.top-circle) {
    bottom: 0;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
}

.visit-service-card-title {
    margin-bottom: 4px;
    color: hsl(var(--black));
}

.visit-service-card-desc {
    color: hsl(var(--secondary));
    font-size: 18px;
}

.hotel-card {
    padding: 12px;
    border-radius: 20px;
    background: hsl(var(--white));
}

@media screen and (max-width: 1199px) {
    .hotel-card {
        padding: 8px;
        border-radius: 16px;
    }
}

.hotel-card-thumb {
    border-radius: 16px;
    overflow: hidden;
}

@media screen and (max-width: 1199px) {
    .hotel-card-thumb {
        border-radius: 12px;
    }
}

.hotel-card-content {
    padding: 16px 12px;
}

.hotel-card-title {
    line-height: 130%;
}

.hotel-card-desc {
    color: hsl(var(--secondary));
    line-height: 160%;
}

@media screen and (max-width: 1399px) {
    .hotel-card-desc {
        font-size: 15px;
    }
}

.hotel-card-location {
    margin-block: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
}

@media screen and (max-width: 1399px) {
    .hotel-card-location {
        font-size: 15px;
    }
}

@media screen and (max-width: 1199px) {
    .hotel-card-location {
        margin-block: 12px;
    }
}

.hotel-card-location .icon {
    color: hsl(var(--base));
}

@media screen and (max-width: 1399px) {
    .hotel-card-location .icon svg {
        height: 18px;
        width: 18px;
    }
}

.hotel-card-amenities .title {
    color: hsl(var(--heading-color));
    line-height: 160%;
    margin-bottom: 6px;
}

@media screen and (max-width: 1399px) {
    .hotel-card-amenities .title {
        font-size: 15px;
    }
}

.hotel-card .amenities-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 16px;
}

@media screen and (max-width: 1399px) {
    .hotel-card .amenities-list {
        gap: 6px 12px;
    }
}

.hotel-card .amenities-list-item {
    color: hsl(var(--heading-color));
    font-weight: 500;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
}

@media screen and (max-width: 1399px) {
    .hotel-card .amenities-list-item {
        font-size: 14px;
    }
}

.hotel-card .amenities-list-item .icon {
    --size: 24px;
    height: var(--size);
    width: var(--size);
    color: hsl(var(--base-d-500));
    border-radius: 4px;
    display: grid;
    place-content: center;
    background-color: hsl(var(--base)/0.1);
}

.discover-card {
    position: relative;
    z-index: 1;
    border-radius: 20px;
    overflow: hidden;
}

@media screen and (max-width: 1199px) {
    .discover-card {
        border-radius: 16px;
    }
}

.discover-card::after {
    content: "";
    position: absolute;
    inset: 0;
    opacity: 0.7;
    background: hsl(var(--black));
}

.discover-card-content {
    position: absolute;
    inset: 0;
    z-index: 2;
    padding: 48px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

@media screen and (max-width: 1399px) {
    .discover-card-content {
        padding: 32px;
    }
}

@media screen and (max-width: 1199px) {
    .discover-card-content {
        padding: 24px;
    }
}

@media screen and (max-width: 991px) {
    .discover-card-content {
        padding: 16px;
    }
}

.discover-card-content .icon {
    --size: 56px;
    width: var(--size);
    height: var(--size);
    display: grid;
    place-content: center;
    border-radius: 16px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.6);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    margin-bottom: 16px;
}

@media screen and (max-width: 1399px) {
    .discover-card-content .icon {
        --size: 48px;
        margin-bottom: 12px;
    }
}

@media screen and (max-width: 1199px) {
    .discover-card-content .icon {
        --size: 40px;
        border-radius: 12px;
        margin-bottom: 8px;
        padding: 9px;
    }
}

@media screen and (max-width: 991px) {
    .discover-card-content .icon {
        --size: 36px;
        border-radius: 8px;
        margin-bottom: 6px;
        padding: 6px;
    }
}

.discover-card-content .title {
    color: hsl(var(--white));
    line-height: 130%;
}

.discover-card-content .desc {
    color: hsl(var(--white));
    line-height: 160%;
    margin-bottom: 16px;
}

@media screen and (max-width: 991px) {
    .discover-card-content .desc {
        margin-bottom: 12px;
        font-size: 14px;
    }
}

.discover-card-content .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 8px;
}

@media screen and (max-width: 991px) {
    .discover-card-content .list {
        gap: 4px;
    }
}

.discover-card-content .item {
    color: hsl(var(--white));
    font-size: 18px;
    font-weight: 700;
    line-height: 140%;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
}

@media screen and (max-width: 1399px) {
    .discover-card-content .item {
        font-size: 17px;
    }
}

@media screen and (max-width: 1199px) {
    .discover-card-content .item {
        font-size: 15px;
    }
}

@media screen and (max-width: 991px) {
    .discover-card-content .item {
        font-size: 14px;
    }
}

.discover-card-content .item::before {
    content: "";
    display: block;
    height: 8px;
    width: 8px;
    border-radius: 50%;
    background-color: hsl(var(--base));
}

/* ================================= Tab Css Start =========================== */
.trip-tabs {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    border-bottom: 0;
    gap: 24px;
    margin-bottom: 32px;
    width: 100%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 991px) {
    .trip-tabs {
        gap: 16px;
    }
}

.trip-tabs .nav-item {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

@media screen and (max-width: 767px) {
    .trip-tabs .nav-item {
        -webkit-box-flex: unset;
        -ms-flex: unset;
        flex: unset;
        width: calc(50% - 8px);
    }
}

.trip-tabs .nav-item .nav-link {
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
    position: relative;
    overflow: hidden;
    font-weight: 700;
    border-radius: 40px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.6);
    -webkit-backdrop-filter: blur(11px);
    backdrop-filter: blur(11px);
    padding: 32px;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    color: hsl(var(--black));
    height: 100%;
}

@media screen and (max-width: 1399px) {
    .trip-tabs .nav-item .nav-link {
        padding: 28px;
        border-radius: 32px;
    }
}

@media screen and (max-width: 1199px) {
    .trip-tabs .nav-item .nav-link {
        padding: 24px;
        border-radius: 24px;
    }
}

@media screen and (max-width: 991px) {
    .trip-tabs .nav-item .nav-link {
        padding: 20px 16px;
        border-radius: 16px;
    }
}

.trip-tabs .nav-item .nav-link .image {
    margin-bottom: 8px;
}

.trip-tabs .nav-item .nav-link .day {
    font-weight: 400;
    line-height: 160%;
}

.trip-tabs .nav-item .nav-link .title {
    line-height: 130%;
    font-weight: 700;
}

.trip-tabs .nav-item .nav-link.active {
    color: hsl(var(--white));
    border-color: hsl(var(--base));
    background-color: hsl(var(--base));
}

.trip-tabs .nav-item .nav-link.active:hover {
    color: hsl(var(--white));
    background-color: hsl(var(--base));
}

.trip-tabs .nav-item .nav-link.active .image {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
}

.trip-tabs .nav-item .nav-link:hover {
    background-color: hsl(var(--white));
}

.trip-detail {
    --radius: 40px;
    border-radius: var(--radius);
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.6);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    padding: 40px;
}

@media screen and (max-width: 1399px) {
    .trip-detail {
        padding: 32px;
        border-radius: 32px;
    }
}

@media screen and (max-width: 1199px) {
    .trip-detail {
        padding: 28px;
        border-radius: 24px;
    }
}

@media screen and (max-width: 991px) {
    .trip-detail {
        border-radius: 16px;
    }
}

.trip-detail-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

@media screen and (max-width: 767px) {
    .trip-detail-header {
        gap: 8px;
    }
}

.trip-detail-header .icon {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    --size: 64px;
    width: var(--size);
    height: var(--size);
    display: grid;
    place-content: center;
    border-radius: 12px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--base));
    padding: 12px;
}

@media screen and (max-width: 767px) {
    .trip-detail-header .icon {
        --size: 52px;
        padding: 8px;
    }
}

.trip-detail-header .icon img {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
}

.trip-detail-header .content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.trip-detail-header .content .day {
    font-size: 14px;
    line-height: 1.5;
    color: hsl(var(--secondary));
    display: block;
}

.trip-detail-item {
    padding: 24px;
    border-radius: 16px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.6);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

@media screen and (max-width: 1199px) {
    .trip-detail-item {
        border-radius: 12px;
    }
}

@media screen and (max-width: 767px) {
    .trip-detail-item {
        padding: 16px;
        gap: 8px;
    }
}

@media screen and (max-width: 575px) {
    .trip-detail-item {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
}

.trip-detail-item .icon {
    --size: 56px;
    width: var(--size);
    height: var(--size);
    display: grid;
    place-content: center;
    border-radius: 8px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white));
    color: hsl(var(--base));
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.trip-detail-item .content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.trip-detail-item .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
}

.trip-detail-item .inner .trip-badge {
    color: hsl(var(--base));
    font-size: 14px;
    font-weight: 600;
    line-height: 150%;
    padding-inline: 8px;
    border-radius: 250px;
    background: hsl(var(--success)/0.05);
}

.trip-detail-item .inner .title {
    color: hsl(var(--heading-color));
    font-size: 18px;
    font-weight: 700;
    line-height: 140%;
}

.trip-detail-item .inner .desc {
    color: hsl(var(--secondary));
    font-size: 16px;
    line-height: 160%;
}

.trip-detail-item-wrapper {
    --icon-size: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 24px;
    position: relative;
}

@media screen and (max-width: 991px) {
    .trip-detail-item-wrapper {
        gap: 16px;
    }
}

@media screen and (max-width: 767px) {
    .trip-detail-item-wrapper {
        gap: 12px;
    }
}

.trip-detail-item-wrapper .check-icon {
    width: var(--icon-size);
    height: var(--icon-size);
    display: grid;
    place-content: center;
    border-radius: 50%;
    background: hsl(var(--base));
    color: hsl(var(--white));
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-size: 18px;
    position: relative;
    z-index: 2;
}

.trip-detail-item-wrapper:not(:last-child) {
    padding-bottom: 24px;
}

.trip-detail-item-wrapper:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 50%;
    left: calc(var(--icon-size) / 2);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 2px;
    height: 100%;
    border-left: 2px dashed hsl(var(--base-l-600));
}

/* ================================= Tab Css End =========================== */
.partner-card-wrapper {
    --count: 3;
    --gap: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: var(--gap);
}

@media screen and (max-width: 991px) {
    .partner-card-wrapper {
        --count: 2;
    }
}

@media screen and (max-width: 767px) {
    .partner-card-wrapper {
        --count: 1;
    }
}

.partner-card {
    --inner-p: 32px;
    --radius: 20px;
    width: calc(100% / var(--count) - (var(--gap) - var(--gap) / var(--count)));
    padding: var(--inner-p);
    border-radius: var(--radius);
    text-align: center;
    position: relative;
    z-index: 1;
    overflow: hidden;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.61);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    --icon-bg: 39 100% 49%;
}

@media screen and (max-width: 1399px) {
    .partner-card {
        --inner-p: 24px;
        --radius: 16px;
    }
}

@media screen and (max-width: 767px) {
    .partner-card {
        --inner-p: 20px;
        --radius: 12px;
    }
}

.partner-card:nth-child(2) {
    --icon-bg: 204 100% 48%;
}

.partner-card:nth-child(3) {
    --icon-bg: 332 93% 58%;
}

.partner-card-icon {
    position: relative;
    z-index: 1;
}

.partner-card-icon-inner {
    --icon-size: 64px;
    width: var(--icon-size);
    height: var(--icon-size);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 24px;
    border-radius: 12px;
    color: hsl(var(--white));
    margin-inline: auto;
    border: 1px solid hsl(var(--white));
    background-color: hsl(var(--icon-bg));
    -webkit-box-shadow: 0 0 12px 0 hsl(var(--black)/0.1);
    box-shadow: 0 0 12px 0 hsl(var(--black)/0.1);
}

@media screen and (max-width: 1199px) {
    .partner-card-icon-inner {
        --icon-size: 52px;
        border-radius: 8px;
    }
}

.partner-card-icon .shape-image {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: -1;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    -webkit-mask-image: url("../images/shapes/black-line.svg");
    mask-image: url("../images/shapes/black-line.svg");
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: hsl(var(--icon-bg));
}

.partner-card-icon .shape-image img {
    opacity: 0;
}

.partner-card-title {
    margin-bottom: 4px;
    color: hsl(var(--black));
}

.partner-card-desc {
    color: hsl(var(--secondary));
    font-size: 18px;
}

.nature-section {
    --position-gap: 40px;
    padding-block: 90px 50px;
    position: relative;
    z-index: 1;
}

@media screen and (max-width: 1399px) {
    .nature-section {
        padding-block: 70px 40px;
        --position-gap: 32px;
    }
}

@media screen and (max-width: 1199px) {
    .nature-section {
        padding-block: 60px 40px;
    }
}

@media screen and (max-width: 991px) {
    .nature-section {
        padding-block: 60px 40px;
        --position-gap: 24px;
    }
}

@media screen and (max-width: 575px) {
    .nature-section {
        --position-gap: 16px;
    }
}

.nature-section-title {
    background: url(../images/thumbs/bd.png) lightgray 50%/cover no-repeat;
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-repeat: repeat-x;
    -webkit-animation: slide-text 100s linear infinite;
    animation: slide-text 100s linear infinite;
    font-size: clamp(4.25rem, 0.6129rem + 15.5184vw, 18.75rem);
    white-space: nowrap;
    font-weight: 900;
    line-height: 110%;
    text-align: center;
    position: relative;
    z-index: -1;
    margin-bottom: calc(-1 * var(--text-bd-h) / 2);
}

.nature-section-preview {
    border-radius: 40px;
    overflow: hidden;
    position: relative;
}

@media screen and (max-width: 1399px) {
    .nature-section-preview {
        border-radius: 32px;
    }
}

@media screen and (max-width: 1199px) {
    .nature-section-preview {
        border-radius: 24px;
    }
}

@media screen and (max-width: 991px) {
    .nature-section-preview {
        border-radius: 20px;
    }
}

@media screen and (max-width: 767px) {
    .nature-section-preview {
        border-radius: 16px;
    }
}

.nature-section-preview .control-btn {
    position: absolute;
    top: var(--position-gap);
    right: var(--position-gap);
    z-index: 10;
    border-radius: 250px;
    background: hsl(var(--white)/0.25);
    padding: 4px 12px;
    color: hsl(var(--white));
}

@media screen and (max-width: 767px) {
    .nature-section-preview .control-btn {
        font-size: 14px;
        padding: 3px 8px;
    }
}

@media screen and (max-width: 767px) {
    .nature-section-preview .control-btn {
        display: none;
    }
}

.nature-section-preview-button {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    cursor: pointer;
}

@media screen and (max-width: 991px) {
    .nature-section-preview-button {
        max-width: 76px;
    }
}

@media screen and (max-width: 767px) {
    .nature-section-preview-button {
        max-width: 64px;
    }
}

.nature-section-preview-button img {
    -webkit-animation: rotate 7s linear infinite;
    animation: rotate 7s linear infinite;
}

@media screen and (max-width: 767px) {
    .nature-section-preview-button {
        display: none;
    }
}

.nature-section-preview-content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: var(--position-gap);
}

.nature-section-preview-content .status {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    color: hsl(var(--white));
    font-size: 1.125rem;
    margin-bottom: 8px;
    position: relative;
    line-height: 1.6;
}

@media screen and (max-width: 991px) {
    .nature-section-preview-content .status {
        font-size: 1rem;
    }
}

@media screen and (max-width: 767px) {
    .nature-section-preview-content .status {
        font-size: 0.875rem;
    }
}

.nature-section-preview-content .status::before {
    content: "";
    width: 8px;
    height: 8px;
    background-color: hsl(var(--base));
    border-radius: 50%;
}

.nature-section-preview-content .title {
    color: hsl(var(--white));
    margin-bottom: 4px;
}

.nature-section-preview-content .desc {
    color: hsl(var(--white));
    font-size: 18px;
    line-height: 1.6;
}

@media screen and (max-width: 991px) {
    .nature-section-preview-content .desc {
        font-size: 1rem;
    }
}

@media screen and (max-width: 767px) {
    .nature-section-preview-content .desc {
        font-size: 0.875rem;
    }
}

.visit-plan {
    background: linear-gradient(281deg, hsl(var(--white)) 0%, hsl(var(--section-bg)) 55%, hsl(var(--section-bg)) 90%);
}

.visit-plan-card {
    --inner-p: 100px;
    --footer-p: 40px;
    border-radius: 40px;
    overflow: hidden;
}

@media screen and (max-width: 1399px) {
    .visit-plan-card {
        border-radius: 32px;
        --footer-p: 32px;
        --inner-p: 80px;
    }
}

@media screen and (max-width: 1199px) {
    .visit-plan-card {
        border-radius: 24px;
        --footer-p: 24px;
        --inner-p: 60px;
    }
}

@media screen and (max-width: 991px) {
    .visit-plan-card {
        border-radius: 20px;
        --footer-p: 20px;
        --inner-p: 40px;
    }
}

@media screen and (max-width: 767px) {
    .visit-plan-card {
        border-radius: 16px;
        --footer-p: 16px;
        --inner-p: 24px;
    }
}

.visit-plan-card-body {
    padding: var(--inner-p);
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.6);
    -webkit-backdrop-filter: blur(11px);
    backdrop-filter: blur(11px);
    text-align: center;
}

.visit-plan-card-btn {
    margin-bottom: 24px;
}

.visit-plan-card-btn .btn {
    font-size: 16px;
    padding: 13px 26px;
}

.visit-plan-card-btn .btn svg {
    width: 20px;
    height: 20px;
}

.visit-plan-card-location {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 10px 20px;
    gap: 10px;
    border-radius: 250px;
    background: hsl(var(--base)/0.15);
    color: hsl(var(--base-d-500));
    font-size: 18px;
    font-weight: 700;
    line-height: 140%;
    margin-bottom: 40px;
}

@media screen and (max-width: 991px) {
    .visit-plan-card-location {
        margin-bottom: 32px;
    }
}

@media screen and (max-width: 767px) {
    .visit-plan-card-location {
        font-size: 1rem;
    }
}

.visit-plan-card-title {
    margin-bottom: 12px;
    font-weight: 600;
}

.visit-plan-card-desc {
    margin-bottom: 48px;
    max-width: 578px;
    width: 100%;
    margin-inline: auto;
    color: hsl(var(--black));
    font-size: 18px;
    line-height: 160%;
}

@media screen and (max-width: 991px) {
    .visit-plan-card-desc {
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 767px) {
    .visit-plan-card-desc {
        font-size: 1rem;
        margin-bottom: 32px;
    }
}

.visit-plan-card-duration {
    font-size: 14px;
    line-height: 150%;
}

.visit-plan-card-footer {
    padding: var(--footer-p);
    background-color: hsl(var(--base));
}

.visit-plan-card-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    gap: 24px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.visit-plan-card-info .item {
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.visit-plan-card-info .item .label {
    color: hsl(var(--white));
    line-height: 160%;
}

.visit-plan-card-info .item .value {
    color: hsl(var(--white));
    font-size: 20px;
    font-weight: 700;
    line-height: 140%;
}

@media screen and (max-width: 991px) {
    .visit-plan-card-info .item .value {
        font-size: 1.125rem;
    }
}

@media screen and (max-width: 767px) {
    .visit-plan-card-info .item .value {
        font-size: 1rem;
    }
}

.visit-plan-card-info .item .value:hover {
    text-decoration: underline;
}

.saas-product-wrapper {
    --gap-x: 32px;
    --gap-y: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: var(--gap-y) var(--gap-x);
}

@media screen and (max-width: 991px) {
    .saas-product-wrapper {
        --gap-x: 24px;
        --gap-y: 48px;
    }
}

@media screen and (max-width: 767px) {
    .saas-product-wrapper {
        --gap-x: 16px;
        --gap-y: 32px;
    }
}

.saas-product {
    width: calc(50% - var(--gap-x) / 2);
}

@media screen and (max-width: 575px) {
    .saas-product {
        width: 100%;
    }
}

.saas-product-thumb {
    border-radius: 20px;
    overflow: hidden;
    margin-bottom: 10px;
}

@media screen and (max-width: 1199px) {
    .saas-product-thumb {
        border-radius: 16px;
    }
}

@media screen and (max-width: 991px) {
    .saas-product-thumb {
        border-radius: 12px;
    }
}

.saas-product-title {
    margin-bottom: 4px;
    line-height: 1.3;
}

.saas-product-desc {
    font-size: 18px;
    line-height: 1.6;
    color: hsl(var(--heading-color));
}

@media screen and (max-width: 991px) {
    .saas-product-desc {
        font-size: 1rem;
    }
}

.portfolio {
    position: relative;
    z-index: 1;
}

.portfolio-shape {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50%;
    z-index: -1;
}

.portfolio-name {
    color: hsl(var(--base));
    font-size: 18px;
    font-weight: 500;
    line-height: 140%;
    padding: 4px 12px;
    border-radius: 250px;
    background: hsl(var(--base)/0.15);
    border: 1px solid hsl(var(--base));
    display: inline-block;
}

@media screen and (max-width: 991px) {
    .portfolio-name {
        font-size: 1rem;
        margin-bottom: 4px;
    }
}

@media screen and (max-width: 767px) {
    .portfolio-name {
        font-size: 0.875rem;
    }
}

.portfolio-title {
    max-width: 860px;
    width: 100%;
    margin: 0 auto 36px;
}

.portfolio-thumb {
    border-radius: 40px;
    overflow: hidden;
}

@media screen and (max-width: 1399px) {
    .portfolio-thumb {
        border-radius: 32px;
    }
}

@media screen and (max-width: 1199px) {
    .portfolio-thumb {
        border-radius: 24px;
    }
}

@media screen and (max-width: 991px) {
    .portfolio-thumb {
        border-radius: 20px;
    }
}

@media screen and (max-width: 767px) {
    .portfolio-thumb {
        border-radius: 16px;
    }
}

.portfolio-content {
    margin-block: 64px;
}

@media screen and (max-width: 991px) {
    .portfolio-content {
        margin-block: 48px;
    }
}

@media screen and (max-width: 767px) {
    .portfolio-content {
        margin-block: 32px;
    }
}

.portfolio-content-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 24px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 16px;
}

.portfolio-content .portfolio-share {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 18px;
}

@media screen and (max-width: 575px) {
    .portfolio-content .portfolio-share {
        gap: 12px;
    }
}

.portfolio-content .portfolio-share-title {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 140%;
    color: hsl(var(--heading-color));
}

@media screen and (max-width: 991px) {
    .portfolio-content .portfolio-share-title {
        font-size: 1.125rem;
    }
}

@media screen and (max-width: 575px) {
    .portfolio-content .portfolio-share-title {
        font-size: 1rem;
    }
}

.portfolio-content .portfolio-share-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 30px;
}

@media screen and (max-width: 991px) {
    .portfolio-content .portfolio-share-list {
        gap: 24px;
    }
}

@media screen and (max-width: 575px) {
    .portfolio-content .portfolio-share-list {
        gap: 16px;
    }
}

.portfolio-content .portfolio-share-icon {
    color: hsl(var(--heading-color));
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.portfolio-content .portfolio-share-icon svg {
    width: 20px;
    height: 20px;
}

@media screen and (max-width: 991px) {
    .portfolio-content .portfolio-share-icon svg {
        width: 18px;
        height: 18px;
    }
}

@media screen and (max-width: 575px) {
    .portfolio-content .portfolio-share-icon svg {
        width: 16px;
        height: 16px;
    }
}

.portfolio-content .portfolio-share-icon:hover {
    color: hsl(var(--base));
}

.portfolio-content .desc {
    color: hsl(var(--secondary));
    font-size: 18px;
    line-height: 160%;
    margin-bottom: 48px;
}

@media screen and (max-width: 991px) {
    .portfolio-content .desc {
        font-size: 1rem;
        margin-bottom: 36px;
    }
}

@media screen and (max-width: 767px) {
    .portfolio-content .desc {
        margin-bottom: 24px;
    }
}

.portfolio-info {
    border-radius: 20px;
    border: 1px solid hsl(var(--border-light));
    background: hsl(var(--white)/0.6);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    padding: 24px;
    height: 100%;
}

@media screen and (max-width: 1199px) {
    .portfolio-info {
        padding: 16px;
        border-radius: 16px;
    }
}

@media screen and (max-width: 767px) {
    .portfolio-info {
        border-radius: 12px;
    }
}

.portfolio-info-title {
    margin-bottom: 24px;
}

@media screen and (max-width: 1199px) {
    .portfolio-info-title {
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 767px) {
    .portfolio-info-title {
        margin-bottom: 16px;
    }
}

.portfolio-info-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 8px;
}

.portfolio-info-list:has(.portfolio-info-icon) {
    gap: 12px;
}

.portfolio-info-item {
    color: hsl(var(--heading-color));
    line-height: 140%;
    font-weight: 700;
    border: 1px solid hsl(var(--border-light));
    background: hsl(var(--white)/0.6);
    border-radius: 250px;
    padding: 8px 15px;
}

@media screen and (max-width: 1199px) {
    .portfolio-info-item {
        padding: 6px 10px;
        font-size: 15px;
    }
}

@media screen and (max-width: 767px) {
    .portfolio-info-item {
        padding: 4px 10px;
    }
}

.portfolio-info-icon {
    --size: 40px;
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    background: hsl(var(--white)/0.6);
    border: 1px solid hsl(var(--border-light));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 8px;
}

.portfolio-details .mb-80 {
    margin-bottom: 80px;
}

@media screen and (max-width: 1199px) {
    .portfolio-details .mb-80 {
        margin-bottom: 60px;
    }
}

@media screen and (max-width: 767px) {
    .portfolio-details .mb-80 {
        margin-bottom: 50px;
    }
}

.portfolio-details-thumb {
    border-radius: 20px;
    overflow: hidden;
}

.portfolio-details-thumb img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

@media screen and (max-width: 1199px) {
    .portfolio-details-thumb {
        border-radius: 16px;
    }
}

@media screen and (max-width: 767px) {
    .portfolio-details-thumb {
        border-radius: 12px;
    }
}

.portfolio-details-content .title {
    margin-bottom: 40px;
}

@media screen and (max-width: 1199px) {
    .portfolio-details-content .title {
        margin-bottom: 32px;
    }
}

@media screen and (max-width: 767px) {
    .portfolio-details-content .title {
        margin-bottom: 24px;
    }
}

.portfolio-details-content .desc {
    font-size: 18px;
    line-height: 160%;
}

@media screen and (max-width: 991px) {
    .portfolio-details-content .desc {
        font-size: 16px;
    }
}

.portfolio-details-card-wrapper {
    --gap: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: var(--gap);
}

@media screen and (max-width: 1199px) {
    .portfolio-details-card-wrapper {
        --gap: 32px;
    }
}

@media screen and (max-width: 767px) {
    .portfolio-details-card-wrapper {
        --gap: 24px;
    }
}

.portfolio-details-card {
    width: calc(50% - var(--gap) / 2);
}

.portfolio-details-card .icon {
    --size: 48px;
    width: var(--size);
    height: var(--size);
    border-radius: 12px;
    background: hsl(var(--success)/0.05);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 16px;
    font-size: calc(var(--size) * 0.75);
}

.portfolio-details-card .desc {
    color: hsl(var(--black));
    font-size: 18px;
    font-weight: 700;
    line-height: 140%;
}

.visit-service {
    border-bottom: 4px solid hsl(var(--border-color)/0.4);
}

body:has(.booking-section, .support-section) {
    background-color: hsl(var(--white));
}

.page-shape {
    --this-h: 1060px;
    position: absolute;
    height: var(--this-h);
    width: 100%;
    z-index: -1;
}

.page-shape::after {
    content: "";
    position: absolute;
    height: 200px;
    width: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(hsl(var(--white))));
    background: linear-gradient(180deg, transparent 0%, hsl(var(--white)) 100%);
    bottom: 0;
    left: 0;
}

.page-shape-thumb {
    height: 100%;
    width: 100%;
}

.booking-section {
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.booking-section-text {
    position: absolute;
    width: 100%;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 0.4;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(-489.91%, hsl(var(--black))), to(transparent));
    background: linear-gradient(180deg, hsl(var(--black)) -489.91%, transparent 100%);
    background-clip: text;
    white-space: nowrap;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: clamp(3.5rem, 0.825rem + 13.375vw, 16.875rem);
    font-style: normal;
    font-weight: 900;
    line-height: 0.8;
    z-index: -1;
}

.booking-section-title {
    text-align: center;
    max-width: 800px;
    width: 100%;
    margin-inline: auto;
}

.support-section {
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.support-section-text {
    position: absolute;
    width: 100%;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 0.4;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(-489.91%, hsl(var(--black))), to(transparent));
    background: linear-gradient(180deg, hsl(var(--black)) -489.91%, transparent 100%);
    background-clip: text;
    white-space: nowrap;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: clamp(3.5rem, 0.825rem + 13.375vw, 16.875rem);
    font-style: normal;
    font-weight: 900;
    line-height: 0.8;
    z-index: -1;
    text-align: center;
}

.support-section-wrapper {
    max-width: 1096px;
    width: 100%;
    margin-inline: auto;
}

.support-section-title {
    text-align: center;
    margin-bottom: 24px;
}

.support-section-form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 72px;
    background-color: hsl(var(--white));
    border-radius: 12px;
    gap: 12px;
    margin-bottom: 20px;
    -webkit-box-shadow: 0 617px 173px 0 transparent, 0 395px 158px 0 hsl(var(--base)/0.01), 0 222px 133px 0 hsl(var(--base)/0.05), 0 99px 99px 0 hsl(var(--base)/0.09), 0 25px 54px 0 hsl(var(--base)/0.1);
    box-shadow: 0 617px 173px 0 transparent, 0 395px 158px 0 hsl(var(--base)/0.01), 0 222px 133px 0 hsl(var(--base)/0.05), 0 99px 99px 0 hsl(var(--base)/0.09), 0 25px 54px 0 hsl(var(--base)/0.1);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    padding-inline: 24px;
}

.support-section-form-input {
    width: 100%;
    height: 100%;
    border: 0;
    outline: 0;
    font-size: 1.125rem;
}

.support-section-form-input::-webkit-input-placeholder {
    color: hsl(var(--body-color));
}

.support-section-form-input::-moz-placeholder {
    color: hsl(var(--body-color));
}

.support-section-form-input:-ms-input-placeholder {
    color: hsl(var(--body-color));
}

.support-section-form-input::-ms-input-placeholder {
    color: hsl(var(--body-color));
}

.support-section-form-input::placeholder {
    color: hsl(var(--body-color));
}

.support-cta {
    --radius: 40px;
    border-radius: var(--radius);
    background: hsl(var(--dark));
    overflow: hidden;
}

@media screen and (max-width: 1199px) {
    .support-cta {
        --radius: 32px;
    }
}

@media screen and (max-width: 767px) {
    .support-cta {
        --radius: 20px;
    }
}

.support-cta-thumb {
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.support-cta-content {
    --inner-p: 80px;
    padding: var(--inner-p);
    padding-left: 0;
}

@media screen and (max-width: 1199px) {
    .support-cta-content {
        --inner-p: 60px;
    }
}

@media screen and (max-width: 991px) {
    .support-cta-content {
        padding-left: var(--inner-p);
    }
}

@media screen and (max-width: 767px) {
    .support-cta-content {
        --inner-p: 32px;
    }
}

@media screen and (max-width: 575px) {
    .support-cta-content {
        --inner-p: 24px;
    }
}

.support-cta-title {
    font-size: 3.5rem;
    color: hsl(var(--white));
    margin-bottom: 24px;
    line-height: 1;
}

@media screen and (max-width: 1399px) {
    .support-cta-title {
        font-size: 3rem;
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 1199px) {
    .support-cta-title {
        font-size: 2.5rem;
    }
}

@media screen and (max-width: 767px) {
    .support-cta-title {
        font-size: 2rem;
    }
}

@media screen and (max-width: 575px) {
    .support-cta-title {
        font-size: 1.75rem;
        line-height: 1.3;
    }
}

.support-cta-desc {
    color: hsl(var(--white));
    font-size: 16px;
    line-height: 160%;
}

.support-cta-time {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-block: 48px;
}

@media screen and (max-width: 1399px) {
    .support-cta-time {
        margin-block: 40px;
    }
}

@media screen and (max-width: 1199px) {
    .support-cta-time {
        margin-block: 32px;
    }
}

.support-cta-time .icon {
    --size: 120px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: var(--size);
}

@media screen and (max-width: 1199px) {
    .support-cta-time .icon {
        --size: 90px;
    }
}

@media screen and (max-width: 767px) {
    .support-cta-time .icon {
        --size: 70px;
    }
}

.support-cta-time .content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-left: 15px;
    padding-left: 15px;
    border-left: 1px solid hsl(var(--white)/0.5);
}

.support-cta-time .content .title {
    color: hsl(var(--white));
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 130%;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid hsl(var(--white)/0.5);
}

@media screen and (max-width: 1199px) {
    .support-cta-time .content .title {
        font-size: 1.125rem;
    }
}

.support-cta-time .content .day,
.support-cta-time .content .time {
    color: hsl(var(--white));
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 140%;
}

@media screen and (max-width: 1199px) {

    .support-cta-time .content .day,
    .support-cta-time .content .time {
        font-size: 1rem;
    }
}

.support-cta-time .content .holiday {
    color: hsl(var(--base));
}

.support-cta-btn {
    margin-top: 56px;
    --btn-s: 48px;
    padding: 4px 24px 4px 4px;
    background-color: hsl(var(--white));
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px;
    border-radius: 50px;
    font-size: 20px;
    font-weight: 700;
    color: hsl(var(--heading-color));
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
}

@media screen and (max-width: 1399px) {
    .support-cta-btn {
        --btn-s: 40px;
        font-size: 16px;
        margin-top: 48px;
    }
}

@media screen and (max-width: 767px) {
    .support-cta-btn {
        --btn-s: 36px;
        font-size: 15px;
        gap: 10px;
    }
}

.support-cta-btn .icon {
    height: var(--btn-s);
    width: var(--btn-s);
    border-radius: 50%;
    background-color: hsl(var(--base));
    display: grid;
    place-content: center;
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
}

@media screen and (max-width: 1399px) {
    .support-cta-btn .icon svg {
        height: 24px;
        width: 24px;
    }
}

@media screen and (max-width: 767px) {
    .support-cta-btn .icon svg {
        height: 20px;
        width: 20px;
    }
}

.support-cta-btn:hover {
    color: hsl(var(--white));
    background-color: hsl(var(--base));
}

.support-cta-btn:hover .icon {
    background-color: hsl(var(--white));
    color: hsl(var(--base));
}

body:has(.career-section) .page-shape::after {
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(hsl(var(--light-bg))));
    background: linear-gradient(180deg, transparent 0%, hsl(var(--light-bg)) 100%);
}

.career-section {
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.career-section-text {
    position: absolute;
    width: 100%;
    top: -10%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 0.4;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(-489.91%, hsl(var(--black))), to(transparent));
    background: linear-gradient(180deg, hsl(var(--black)) -489.91%, transparent 100%);
    background-clip: text;
    white-space: nowrap;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: clamp(6.25rem, -0.125rem + 31.875vw, 38.125rem);
    font-weight: 900;
    line-height: 0.6;
    z-index: -1;
    text-align: center;
}

.career-section-title {
    --extra-fs: 104px;
    font-size: var(--extra-fs);
    font-weight: 900;
    text-align: center;
    margin-bottom: 20px;
    line-height: 1;
}

@media screen and (max-width: 1599px) {
    .career-section-title {
        --extra-fs: 84px;
    }
}

@media screen and (max-width: 1199px) {
    .career-section-title {
        --extra-fs: 64px;
    }
}

@media screen and (max-width: 767px) {
    .career-section-title {
        --extra-fs: 48px;
    }
}

.career-section-desc {
    color: hsl(var(--black));
    text-align: center;
    font-size: 22px;
    line-height: 160%;
    max-width: 850px;
    width: 100%;
    margin: 0 auto 32px;
}

.career-section-thumb {
    border-radius: 20px;
    overflow: hidden;
    margin-top: 50px;
}

.why-join-card {
    --inner-p: 32px;
    padding: var(--inner-p);
    border-radius: 20px;
    background-color: hsl(var(--white));
}

@media screen and (max-width: 1199px) {
    .why-join-card {
        --inner-p: 24px;
    }
}

.why-join-card-icon {
    --thumb-s: 150px;
    width: var(--thumb-s);
    height: var(--thumb-s);
    margin-bottom: 120px;
}

@media screen and (max-width: 1199px) {
    .why-join-card-icon {
        --thumb-s: 120px;
        margin-bottom: 90px;
    }
}

@media screen and (max-width: 767px) {
    .why-join-card-icon {
        --thumb-s: 100px;
        margin-bottom: 70px;
    }
}

.why-join-card-title {
    margin-bottom: 6px;
}

.career-gallery-thumb {
    border-radius: 16px;
    overflow: hidden;
}



.open-job-card {
    --inner-p: 40px;
    --inner-gap: 120px;
    background-color: hsl(var(--white));
    border-radius: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    padding: var(--inner-p);
    gap: var(--inner-gap);
}

.open-job-card:not(:last-child) {
    margin-bottom: 24px;
}

@media screen and (max-width: 1199px) {
    .open-job-card {
        --inner-p: 32px;
        --inner-gap: 80px;
    }
}

@media screen and (max-width: 991px) {
    .open-job-card {
        --inner-gap: 60px;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
}

@media screen and (max-width: 767px) {
    .open-job-card {
        --inner-p: 24px;
        border-radius: 16px;
        --inner-gap: 50px;
    }
}

.open-job-card-content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.open-job-card-title {
    margin-bottom: 16px;
}

.open-job-card-title .status {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    color: hsl(var(--warning));
    font-size: 18px;
    font-weight: 700;
    line-height: 140%;
    padding: 6px 10px;
    border-radius: 4px;
    border: 1px solid hsl(var(--warning));
}

.open-job-card-desc {
    font-size: 18px;
    line-height: 160%;
    margin-bottom: 32px;
}

.open-job-card-location {
    color: hsl(var(--black));
    font-size: 18px;
    font-weight: 700;
}

.open-job-card-btn {
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.job-card {
    --inner-p: 40px;
    background-color: hsl(var(--white));
    border-radius: 20px;
    padding: var(--inner-p);
}

@media screen and (max-width: 1199px) {
    .job-card {
        --inner-p: 32px;
    }
}

@media screen and (max-width: 767px) {
    .job-card {
        --inner-p: 24px;
        border-radius: 16px;
    }
}

.job-card-category {
    margin-bottom: 56px;
    font-size: 18px;
    color: hsl(var(--body-color));
}

@media screen and (max-width: 1199px) {
    .job-card-category {
        margin-bottom: 48px;
    }
}

@media screen and (max-width: 767px) {
    .job-card-category {
        margin-bottom: 32px;
    }
}

.job-card-title {
    margin-bottom: 8px;
}

.job-card-type {
    color: hsl(var(--body-color));
    line-height: 160%;
    margin-bottom: 40px;
}

@media screen and (max-width: 1199px) {
    .job-card-type {
        margin-bottom: 32px;
    }
}

@media screen and (max-width: 767px) {
    .job-card-type {
        margin-bottom: 24px;
    }
}

.job-card-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 12px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.job-card-salary {
    background-color: hsl(var(--success)/0.05);
    color: hsl(var(--success));
    font-weight: 700;
    font-size: 20px;
    border-radius: 4px;
    padding: 10px 16px;
}

@media screen and (max-width: 1199px) {
    .job-card-salary {
        padding: 6px 12px;
        font-size: 18px;
    }
}

@media screen and (max-width: 767px) {
    .job-card-salary {
        padding: 6px 12px;
        font-size: 16px;
    }
}

.job-card-salary .currency {
    font-size: 16px;
    color: hsl(var(--success)/0.5);
}

@media screen and (max-width: 767px) {
    .job-card-salary .currency {
        font-size: 14px;
    }
}

.job-card-link {
    font-size: 20px;
    font-weight: 700;
    color: hsl(var(--black));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media screen and (max-width: 1199px) {
    .job-card-link {
        font-size: 18px;
    }
}

@media screen and (max-width: 767px) {
    .job-card-link {
        font-size: 16px;
    }
}

.job-card-link .icon {
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 24px;
    margin-top: 2px;
}

@media screen and (max-width: 1199px) {
    .job-card-link .icon {
        font-size: 18px;
    }
}

.job-card-link:hover .icon {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.policy-section {
    padding-block: 80px;
}

@media screen and (max-width: 991px) {
    .policy-section {
        padding-block: 60px;
    }
}

.policy-block:not(:last-child) {
    margin-bottom: 24px;
}

.policy-block-title {
    line-height: 160%;
}

.policy-block-desc, .policy-block-list li {
    line-height: 160%;
    font-weight: 500;
    color: hsl(var(--secondary));
    font-size: 1.25rem;
}

@media screen and (max-width: 1199px) {
    .policy-block-desc, .policy-block-list li {
        font-size: 1.125rem;
    }
}

@media screen and (max-width: 991px) {
    .policy-block-desc, .policy-block-list li {
        font-size: 1rem;
    }
}

.community-wrapper {
    position: relative;
    --left-p: 200px;
    z-index: 1;
}

@media screen and (max-width: 991px) {
    .community-wrapper {
        --left-p: 130px;
    }
}

@media screen and (max-width: 575px) {
    .community-wrapper {
        --left-p: 100px;
    }
}

.community-wrapper::after {
    content: "";
    position: absolute;
    top: 0;
    left: calc(var(--left-p) * 0.75);
    height: 100%;
    width: 4px;
    background-color: hsl(var(--base)/0.5);
    z-index: -1;
}

.community-block {
    --gap: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: var(--gap);
}

@media screen and (max-width: 767px) {
    .community-block {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        --gap: 24px;
    }
}

.community-block:not(:last-child) {
    margin-bottom: 40px;
}

.community-block-year {
    position: absolute;
    top: 0;
    left: 0;
}

.community-block-content {
    padding-left: var(--left-p);
    width: 60%;
    position: relative;
}

@media screen and (max-width: 767px) {
    .community-block-content {
        width: 100%;
    }
}

.community-block-content::after {
    --size: 20px;
    content: "";
    top: 0;
    left: calc(var(--left-p) * 0.75 - (var(--size) / 2 - 2px));
    position: absolute;
    width: var(--size);
    height: var(--size);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-radius: 4px;
    background: hsl(var(--base));
}

.community-block-thumb {
    width: 40%;
}

.community-block-thumb img {
    border-radius: 16px;
}

@media screen and (max-width: 767px) {
    .community-block-thumb {
        width: 100%;
        padding-left: var(--left-p);
    }
}

.community-block-title {
    color: hsl(var(--black));
    margin-bottom: 6px;
    line-height: 125%;
}

.community-block-title .name {
    font-size: 18px;
    font-weight: 700;
    line-height: 140%;
}

.community-block-date {
    font-size: 18px;
    color: hsl(var(--black));
    margin-bottom: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
}

.community-block-date .icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 20px;
}

@media screen and (max-width: 1199px) {
    .community-block-date .icon {
        font-size: 18px;
    }
}

@media screen and (max-width: 1199px) {
    .community-block-date {
        font-size: 16px;
    }
}

.community-block-desc {
    color: hsl(var(--black));
    font-size: 18px;
    line-height: 160%;
}

@media screen and (max-width: 1199px) {
    .community-block-desc {
        font-size: 16px;
    }
}

.ui-card {
    --inner-p: 32px;
    --radius: 20px;
    padding: var(--inner-p);
    border-radius: var(--radius);
    text-align: center;
    position: relative;
    z-index: 1;
    overflow: hidden;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.61);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding-bottom: 16px;
}

.ui-card.style-left {
    text-align: left;
    --inner-p: 24px;
}

.ui-card.style-left .ui-card-icon-inner {
    margin-left: 0;
}

@media screen and (max-width: 1399px) {
    .ui-card {
        --inner-p: 24px;
        --radius: 16px;
    }
}

@media screen and (max-width: 767px) {
    .ui-card {
        --inner-p: 20px;
        --radius: 12px;
    }
}

.ui-card-icon {
    position: relative;
    z-index: 1;
}

.ui-card-icon-inner {
    --icon-size: 64px;
    width: var(--icon-size);
    height: var(--icon-size);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 24px;
    border-radius: 12px;
    color: hsl(var(--base));
    margin-inline: auto;
    border: 1px solid hsl(var(--white));
    background-color: hsl(var(--white));
    -webkit-box-shadow: 0 0 12px 0 hsl(var(--black)/0.1);
    box-shadow: 0 0 12px 0 hsl(var(--black)/0.1);
    font-size: 32px;
}

@media screen and (max-width: 1199px) {
    .ui-card-icon-inner {
        --icon-size: 52px;
        margin-bottom: 20px;
        border-radius: 8px;
        font-size: 28px;
    }
}

.ui-card-icon .shape-image {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 100%;
}

.ui-card-icon .shape-image:has(.bottom-circle) {
    bottom: -50%;
    top: 0;
    -webkit-transform: translate(-50%, -25%);
    transform: translate(-50%, -25%);
}

@media screen and (max-width: 1399px) {
    .ui-card-icon .shape-image:has(.bottom-circle) {
        -webkit-transform: translate(-50%, -15%);
        transform: translate(-50%, -15%);
    }
}

.ui-card-icon .shape-image:has(.top-circle) {
    bottom: 0;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
}

.ui-card-title {
    margin-bottom: 8px;
    color: hsl(var(--black));
}

.ui-card-desc {
    color: hsl(var(--secondary));
    font-size: 18px;
}

.ui-card-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 6px;
    padding-top: 16px;
    margin-top: 30px;
    border-top: 1px dashed hsl(var(--light));
    font-size: 18px;
    color: hsl(var(--black));
    font-weight: 700;
}

.ui-card-link .icon {
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 24px;
}

.ui-card-link:hover .icon {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    color: hsl(var(--base));
}

.ui-card-category {
    margin-top: 32px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 8px;
}

.ui-card-category .item {
    border-radius: 999px;
    border: 1px solid hsl(var(--base));
    background-color: hsl(var(--base)/0.1);
    color: hsl(var(--base));
    font-size: 14px;
    font-weight: 500;
    padding: 2px 8px;
}

.comparison-section {
    background-color: hsl(var(--dark));
    border-radius: 40px;
}

@media screen and (max-width: 1399px) {
    .comparison-section {
        border-radius: 32px;
    }
}

@media screen and (max-width: 1199px) {
    .comparison-section {
        border-radius: 24px;
    }
}

@media screen and (max-width: 575px) {
    .comparison-section {
        border-radius: 20px;
    }
}

.comparison-section .section-heading-name .text {
    --overlay-bg: hsl(var(--dark)) !important;
}

.comparison-section .section-heading-desc {
    max-width: 460px;
}

.comparison-wrapper {
    --row-border-color: hsl(var(--secondary));
    --row-h: 100px;
    --inner-p: 16px;
    --col-w: 20%;
    --radius: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border-radius: var(--radius);
    border: 1px solid hsl(var(--white)/0.15);
    overflow: hidden;
}

@media screen and (max-width: 1199px) {
    .comparison-wrapper {
        --row-h: 80px;
        --inner-p: 12px;
        --inner-p: 12px;
    }
}

@media screen and (max-width: 991px) {
    .comparison-wrapper {
        --col-w: 25%;
    }
}

@media screen and (max-width: 767px) {
    .comparison-wrapper {
        --col-w: 50%;
    }
}

.comparison-card {
    width: var(--col-w);
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.comparison-card:not(:last-child) {
    border-right: 1px solid var(--row-border-color);
}

.comparison-card-header {
    height: var(--row-h);
    padding: var(--inner-p);
    border-bottom: 1px solid var(--row-border-color);
    background: hsl(var(--white)/0.04);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
}

.comparison-card-header .title {
    color: hsl(var(--white));
    font-size: 18px;
    font-weight: 700;
    line-height: 140%;
    display: block;
}

@media screen and (max-width: 1199px) {
    .comparison-card-header .title {
        font-size: 16px;
    }
}

@media screen and (max-width: 991px) {
    .comparison-card-header .title {
        font-size: 0.875rem;
    }
}

.comparison-card-header .desc {
    color: hsl(var(--body-color));
    line-height: 150%;
    font-size: 0.875rem;
}

@media screen and (max-width: 1199px) {
    .comparison-card-header .desc {
        font-size: 0.8125rem;
    }
}

.comparison-card-header .count {
    color: hsl(var(--body-color)/0.5);
    position: absolute;
    top: 12px;
    right: 12px;
}

@media screen and (max-width: 1199px) {
    .comparison-card-header .count {
        font-size: 1rem;
    }
}

.comparison-card-header .highlight {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    line-height: 150%;
    font-weight: 700;
    font-size: 0.875rem;
    color: hsl(var(--white));
    padding: 3px 11px;
    border-radius: 6px;
    border: 1px solid hsl(var(--white));
    background: linear-gradient(67deg, transparent -28.05%, #7b61ff 24.03%, hsl(var(--base)) 76.11%, transparent 128.19%);
    right: 16px;
}

@media screen and (max-width: 1199px) {
    .comparison-card-header .highlight {
        font-size: 0.75rem;
        padding: 2px 5px;
        border-radius: 4px;
    }
}

@media screen and (max-width: 991px) {
    .comparison-card-header .highlight {
        font-size: 0.65rem;
    }
}

.comparison-card-item {
    height: var(--row-h);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: var(--inner-p);
    background: hsl(var(--white)/0.07);
}

.comparison-card-item:not(:last-child) {
    border-bottom: 1px solid var(--row-border-color);
}

.comparison-card-base {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
}

.comparison-card-base .icon {
    font-size: 36px;
    color: hsl(var(--white));
}

@media screen and (max-width: 1199px) {
    .comparison-card-base .icon {
        font-size: 28px;
    }
}

@media screen and (max-width: 991px) {
    .comparison-card-base .icon {
        font-size: 24px;
    }
}

.comparison-card-base .text {
    color: hsl(var(--white));
    font-size: 18px;
    font-weight: 700;
    line-height: 140%;
}

@media screen and (max-width: 1199px) {
    .comparison-card-base .text {
        font-size: 0.9125rem;
    }
}

.comparison-card-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
}

.comparison-card-info .icon {
    --icon-color: var(--body-color);
    width: 20px;
    height: 20px;
    font-size: 0.65rem;
    border: 2px solid hsl(var(--icon-color));
    background-color: hsl(var(--icon-color)/0.4);
    color: hsl(var(--icon-color));
    border-radius: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 991px) {
    .comparison-card-info .icon {
        width: 17px;
        height: 17px;
        font-size: 0.6rem;
    }
}

.comparison-card-info .text {
    color: hsl(var(--light));
    font-size: 18px;
    font-weight: 400;
    line-height: 120%;
}

@media screen and (max-width: 1199px) {
    .comparison-card-info .text {
        font-size: 0.9125rem;
    }
}

@media screen and (max-width: 991px) {
    .comparison-card-info .text {
        font-size: 0.875rem;
    }
}

.comparison-card-empty {
    color: hsl(var(--white));
}

.comparison-card.base-card .comparison-card-header {
    background: hsl(var(--white)/0.11);
}

.comparison-card.base-card .comparison-card-item {
    background: hsl(var(--white)/0.11);
}

.comparison-card.base-card .comparison-card-info .icon {
    --icon-color: var(--base);
}

.comparison-card.base-card .comparison-card-info .text {
    color: hsl(var(--white));
}

@media screen and (max-width: 1399px) {
    .comparison-card.base-card .btn {
        font-size: 1rem !important;
    }
}

@media screen and (max-width: 1399px) {
    .comparison-card.base-card .btn {
        font-size: 0.9125rem !important;
        padding: 9px 12px;
    }
}

@media screen and (max-width: 767px) {
    .comparison-card:last-child .comparison-card-header, .comparison-card:nth-last-child(2) .comparison-card-header {
        border-top: 1px solid var(--row-border-color);
    }
}

.tech-grid {
    --cols: 6;
    --gap: 24px;
    display: grid;
    grid-template-columns: repeat(var(--cols), 1fr);
    gap: var(--gap);
}

@media screen and (max-width: 1399px) {
    .tech-grid {
        --cols: 5;
        --gap: 20px;
    }
}

@media screen and (max-width: 1199px) {
    .tech-grid {
        --cols: 4;
        --gap: 16px;
    }
}

@media screen and (max-width: 991px) {
    .tech-grid {
        --cols: 3;
    }
}

@media screen and (max-width: 767px) {
    .tech-grid {
        --cols: 2;
        --gap: 12px;
    }
}

@media screen and (max-width: 424px) {
    .tech-grid {
        --cols: 2;
        --gap: 10px;
    }
}

.tech-card {
    --card-p: 28px 16px;
    --card-radius: 16px;
    background: hsl(var(--white));
    border: 1px solid hsl(var(--black)/0.05);
    border-radius: var(--card-radius);
    -webkit-box-shadow: 0 1px 2px hsl(var(--black)/0.03);
    box-shadow: 0 1px 2px hsl(var(--black)/0.03);
    padding: var(--card-p);
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px;
    -webkit-transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
    transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    transition: transform 0.3s ease, box-shadow 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
}

@media screen and (max-width: 1399px) {
    .tech-card {
        --card-p: 24px 14px;
        --card-radius: 14px;
        gap: 12px;
    }
}

@media screen and (max-width: 767px) {
    .tech-card {
        --card-p: 20px 12px;
        --card-radius: 12px;
        gap: 10px;
    }
}

.tech-card:hover {
    -webkit-transform: translateY(-4px);
    transform: translateY(-4px);
}

.tech-card-img {
    height: 56px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 1199px) {
    .tech-card-img {
        height: 48px;
    }
}

@media screen and (max-width: 767px) {
    .tech-card-img {
        height: 40px;
    }
}

.tech-card-img img {
    height: 100%;
}

.tech-card-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 4px;
}

.tech-card-title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.25;
    color: hsl(var(--black));
    margin-bottom: 0;
}

@media screen and (max-width: 1199px) {
    .tech-card-title {
        font-size: 20px;
    }
}

@media screen and (max-width: 767px) {
    .tech-card-title {
        font-size: 18px;
    }
}

.tech-card-desc {
    font-size: 0.875rem;
    line-height: 1.2;
    color: hsl(var(--black));
}

@media screen and (max-width: 1199px) {
    .tech-card-desc {
        font-size: 0.8125rem;
    }
}

@media screen and (max-width: 767px) {
    .tech-card-desc {
        font-size: 0.75rem;
    }
}

body:has(.plan-section) .page-shape::after {
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(hsl(var(--light-bg))));
    background: linear-gradient(180deg, transparent 0%, hsl(var(--light-bg)) 100%);
}

.plan-section {
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.plan-section-text {
    position: absolute;
    width: 100%;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 0.4;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(-489.91%, hsl(var(--black))), to(transparent));
    background: linear-gradient(180deg, hsl(var(--black)) -489.91%, transparent 100%);
    background-clip: text;
    white-space: nowrap;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 900;
    line-height: 0.6;
    z-index: -1;
    text-align: center;
    font-size: clamp(4rem, -4.6667rem + 43.3333vw, 20.25rem);
}

.plan-section-title {
    --extra-fs: 104px;
    font-size: var(--extra-fs);
    font-weight: 900;
    text-align: center;
    margin-bottom: 40px;
    line-height: 1;
}

@media screen and (max-width: 1599px) {
    .plan-section-title {
        --extra-fs: 84px;
    }
}

@media screen and (max-width: 1199px) {
    .plan-section-title {
        --extra-fs: 64px;
    }
}

@media screen and (max-width: 767px) {
    .plan-section-title {
        --extra-fs: 48px;
    }
}

.plan-toggle {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: hsl(var(--white));
    border-radius: 250px;
    padding: 6px;
    -webkit-box-shadow: 0 0 2px hsl(var(--black)/0.04), 0 4px 4px hsl(var(--black)/0.06);
    box-shadow: 0 0 2px hsl(var(--black)/0.04), 0 4px 4px hsl(var(--black)/0.06);
    margin-bottom: 40px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.plan-toggle-btn {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    border-radius: 250px;
    padding: 5px 20px;
    border: none;
    background-color: transparent;
    color: hsl(var(--black));
    cursor: pointer;
    white-space: nowrap;
    -webkit-transition: background-color 0.25s ease, color 0.25s ease, -webkit-box-shadow 0.25s ease;
    transition: background-color 0.25s ease, color 0.25s ease, -webkit-box-shadow 0.25s ease;
    transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease;
    transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease, -webkit-box-shadow 0.25s ease;
}

.plan-toggle-btn--active {
    background-color: hsl(var(--base));
    color: hsl(var(--white));
    padding-inline: 15px;
    width: 127px;
    -webkit-box-shadow: 0 0 2px hsl(var(--black)/0.04), 0 8px 8px hsl(var(--black)/0.08);
    box-shadow: 0 0 2px hsl(var(--black)/0.04), 0 8px 8px hsl(var(--black)/0.08);
}

.plan-toggle-btn:hover {
    color: hsl(var(--base));
}

.plan-card-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

@media screen and (max-width: 1599px) {
    .plan-card-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 767px) {
    .plan-card-grid {
        grid-template-columns: 1fr;
    }
}

.plan-card {
    --card-p: 16px;
    background-color: hsl(var(--white));
    border-radius: 20px;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
}

.plan-card--featured {
    background-color: hsl(var(--black));
}

.plan-card--featured .plan-card-name,
.plan-card--featured .plan-card-amount,
.plan-card--featured .plan-card-period {
    color: hsl(var(--white));
}

.plan-card--featured .plan-card-cancel {
    color: hsl(var(--light));
}

.plan-card--featured .plan-card-ideal {
    color: hsl(var(--white));
}

.plan-card--featured .plan-card-btn {
    background-color: hsl(var(--base-d-400));
    border-color: hsl(var(--base));
    color: hsl(var(--base-l-200));
    -webkit-box-shadow: 0 0 20px 0 hsl(var(--base)/0.15), 0 5px 5px -1px hsl(var(--base)/0.25);
    box-shadow: 0 0 20px 0 hsl(var(--base)/0.15), 0 5px 5px -1px hsl(var(--base)/0.25);
}

.plan-card-badge {
    position: absolute;
    top: 20px;
    right: var(--card-p);
    padding: 3px 11px;
    border-radius: 6px;
    border: 1px solid hsl(var(--white));
    background: linear-gradient(31deg, transparent 28%, hsl(var(--base)) 24%, hsl(var(--info)) 76%, transparent 128%);
    font-size: 14px;
    font-weight: 700;
    color: hsl(var(--white));
    line-height: 1.5;
    white-space: nowrap;
}

.plan-card-header {
    padding: 24px var(--card-p) 0;
}

.plan-card-name {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.25;
    color: hsl(var(--black));
    margin-bottom: 4px;
}

.plan-card-price {
    line-height: 0;
    margin-bottom: 4px;
}

.plan-card-amount {
    font-size: 48px;
    font-weight: 700;
    line-height: 1.15;
    color: hsl(var(--black));
}

@media screen and (max-width: 1199px) {
    .plan-card-amount {
        font-size: 40px;
    }
}

.plan-card-amount--contact {
    font-size: 36px;
}

@media screen and (max-width: 1199px) {
    .plan-card-amount--contact {
        font-size: 30px;
    }
}

.plan-card-period {
    font-size: 18px;
    font-weight: 400;
    line-height: 1.6;
    color: hsl(var(--black));
}

.plan-card-cancel {
    font-size: 14px;
    color: hsl(var(--body-color));
    line-height: 1.5;
    margin-bottom: 0;
}

.plan-card-body {
    background-color: hsl(var(--light-bg));
    border-radius: 15px;
    margin: 12px var(--card-p) 0;
    padding: 16px;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    overflow: hidden;
}

.plan-card-includes {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.4;
    color: hsl(var(--black));
    margin-bottom: 16px;
}

.plan-card-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 14px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.plan-card-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 8px;
    font-size: 16px;
    color: hsl(var(--secondary));
    line-height: 1.4;
}

.plan-card-item-icon {
    width: 18px;
    height: 18px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-top: 1px;
}

.plan-card-item-icon svg {
    display: block;
    width: 100%;
    height: 100%;
}

.plan-card-footer {
    padding: 16px var(--card-p);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 10px;
    margin-top: auto;
}

.plan-card-ideal {
    line-height: 1.4;
    color: hsl(var(--black));
    margin-bottom: 0;
}

.review-section {
    position: relative;
}

.review-section::after {
    content: "";
    background: -webkit-gradient(linear, left top, left bottom, color-stop(-61.2%, transparent), color-stop(67.76%, hsl(var(--light-bg))));
    background: linear-gradient(180deg, transparent -61.2%, hsl(var(--light-bg)) 67.76%);
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 300px;
}

.review-col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 24px;
}

.review-card {
    background-color: hsl(var(--white));
    border-radius: 18px;
    padding: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.review-card-stars {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 4px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 24px;
}

.review-card-stars i {
    color: hsl(var(--warning));
    font-size: 20px;
}

.review-card-text {
    font-size: 22px;
    font-weight: 400;
    line-height: 1.6;
    color: hsl(var(--black));
    margin-bottom: 0;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

@media screen and (max-width: 1199px) {
    .review-card-text {
        font-size: 18px;
    }
}

.review-card-author {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    margin-top: 80px;
}

.review-card-avatar {
    width: 56px;
    height: 56px;
    border-radius: 17px;
    overflow: hidden;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.review-card-avatar img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center top;
    object-position: center top;
}

.review-card-avatar--green {
    background-color: hsl(var(--base)/0.26);
}

.review-card-avatar--purple {
    background-color: hsl(var(--primary)/0.26);
}

.review-card-avatar--cyan {
    background-color: hsl(var(--info)/0.26);
}

.review-card-name {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    color: hsl(var(--black));
    margin-bottom: 0;
}

.review-card-role {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6;
    color: hsl(var(--body-color));
    margin-bottom: 0;
}

.review-media {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    height: 615px;
    background-color: hsl(var(--base)/0.1);
}

@media screen and (max-width: 991px) {
    .review-media {
        height: 420px;
    }
}

@media screen and (max-width: 767px) {
    .review-media {
        height: 320px;
    }
}

.review-media-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center top;
    object-position: center top;
}

.review-media-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 229px;
    z-index: 1;
}

.review-media-overlay::after {
    content: "";
    inset: 0;
    position: absolute;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(hsl(var(--black)/0.15)));
    background: linear-gradient(180deg, transparent 0%, hsl(var(--black)/0.15) 100%);
    -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(50%, hsl(var(--black))));
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, hsl(var(--black)) 50%);
    mask-image: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(50%, hsl(var(--black))));
    mask-image: linear-gradient(to bottom, transparent 0%, hsl(var(--black)) 50%);
    z-index: -1;
}

.review-media-play {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background-color: hsl(var(--white)/0.15);
    border: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    cursor: pointer;
}

.review-media-play i {
    color: hsl(var(--white));
    font-size: 18px;
}

.work-flow-content {
    display: grid;
    grid-template-columns: 1fr 1.15fr;
    gap: 80px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 60px;
}

@media screen and (max-width: 1199px) {
    .work-flow-content {
        grid-template-columns: 1fr;
        gap: 48px;
    }
}

.work-flow-image {
    background-color: hsl(var(--white));
    border-radius: 17px;
    overflow: hidden;
    height: 654px;
}

@media screen and (max-width: 991px) {
    .work-flow-image {
        height: 460px;
    }
}

@media screen and (max-width: 767px) {
    .work-flow-image {
        height: 340px;
    }
}

.work-flow-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center top;
    object-position: center top;
}

.work-flow-timeline {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    height: 100%;
    z-index: 1;
}

.work-flow-timeline::after {
    content: "";
    position: absolute;
    left: 19px;
    top: 0;
    bottom: 0;
    border-left: 2px dashed hsl(var(--border-light));
    z-index: -1;
}

.work-flow-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 24px;
    padding-bottom: 64px;
}

@media screen and (max-width: 1199px) {
    .work-flow-item {
        padding-bottom: 40px;
    }
}

.work-flow-item:last-child {
    padding-bottom: 0;
}

.work-flow-dot {
    width: 40px;
    height: 40px;
    border-radius: 200px;
    background-color: hsl(var(--success)/0.26);
    -ms-flex-negative: 0;
    flex-shrink: 0;
    position: relative;
}

.work-flow-dot::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 20px;
    height: 20px;
    border-radius: 200px;
    background-color: hsl(var(--base));
}

.work-flow-text {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding-top: 6px;
}

.work-flow-title {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.25;
    color: hsl(var(--black));
    margin-bottom: 8px;
}

@media screen and (max-width: 1199px) {
    .work-flow-title {
        font-size: 26px;
    }
}

@media screen and (max-width: 767px) {
    .work-flow-title {
        font-size: 22px;
    }
}

.work-flow-desc {
    font-size: 18px;
    font-weight: 400;
    line-height: 1.6;
    color: hsl(var(--secondary));
    margin-bottom: 0;
}

@media screen and (max-width: 1199px) {
    .work-flow-desc {
        font-size: 16px;
    }
}

.ability-card {
    --ability-p: 40px;
    background-color: hsl(var(--white));
    border-radius: 20px;
    padding: var(--ability-p);
    height: 100%;
}

@media screen and (max-width: 1199px) {
    .ability-card {
        --ability-p: 28px;
    }
}

@media screen and (max-width: 767px) {
    .ability-card {
        --ability-p: 20px;
    }
}

.ability-card--dark {
    background-color: hsl(var(--dark));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.ability-card--dark .ability-card-title {
    color: hsl(var(--white));
}

.ability-card--dark .ability-card-desc {
    color: hsl(var(--white)/0.8);
}

.ability-card-icon {
    width: 64px;
    height: 64px;
    margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
    .ability-card-icon {
        margin-bottom: 24px;
    }
}

.ability-card-icon img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.ability-card-title {
    font-weight: 700;
    line-height: 1.25;
    color: hsl(var(--black));
    margin-bottom: 8px;
}

.ability-card-desc {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6;
    color: hsl(var(--secondary));
    margin-bottom: 0;
}

.ability-card-btn {
    padding-top: 40px;
}

body:has(.service-preview) {
    --preview-gap: 200px;
    --inner-p: 150px;
}

@media screen and (max-width: 1399px) {
    body:has(.service-preview) {
        --inner-p: 120px;
        --preview-gap: 150px;
    }
}

@media screen and (max-width: 575px) {
    body:has(.service-preview) {
        --inner-p: 80px;
        --preview-gap: 100px;
    }
}

body:has(.service-preview) .page-banner {
    padding-block: var(--inner-p) calc(var(--inner-p) + var(--preview-gap)) !important;
}

.service-preview {
    position: relative;
    margin-top: calc(-1 * var(--preview-gap));
    z-index: 1;
}

.service-preview .service-preview-thumb {
    border-radius: 24px;
    overflow: hidden;
}

.service-preview .service-preview-thumb img {
    width: 100%;
    height: auto;
    display: block;
}

.service-preview .service-preview-text {
    color: hsl(var(--body-color));
    text-align: center;
    font-weight: 100;
}

.service-preview .service-preview-text span {
    font-weight: 700;
    color: hsl(var(--black));
    display: inline;
}

.service-process-item {
    background-color: #fff;
    border-radius: 20px;
    min-height: 160px;
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 32px;
    margin-bottom: 16px;
}

.service-process-item-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 4px;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    max-width: 82%;
}

.service-process-item-title {
    font-size: 28px;
    font-weight: 700;
    line-height: 1.2;
    color: hsl(var(--black));
    margin-bottom: 0;
}

@media screen and (max-width: 575px) {
    .service-process-item-title {
        font-size: 22px;
    }
}

.service-process-item-desc {
    font-size: 18px;
    font-weight: 400;
    line-height: 1.6;
    color: hsl(var(--body-color));
    margin-bottom: 0;
}

@media screen and (max-width: 575px) {
    .service-process-item-desc {
        font-size: 15px;
    }
}

.service-process-item-num {
    position: absolute;
    right: 0;
    top: 0;
    font-weight: 700;
    line-height: 1.15;
    color: hsl(var(--section-bg));
    white-space: nowrap;
}

.service-process-item-btn {
    margin-top: 40px;
}

.service-process-preview {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 16px;
}

.service-process-preview-main {
    position: relative;
    background-color: #cefafe;
    border-radius: 24px;
    overflow: hidden;
    aspect-ratio: 626/835;
    cursor: pointer;
}

.service-process-preview-main.is-playing .service-process-preview-main-img,
.service-process-preview-main.is-playing .service-process-preview-play,
.service-process-preview-main.is-playing .service-process-preview-progress {
    opacity: 0;
    visibility: hidden;
}

.service-process-preview-main.is-playing .service-process-preview-video {
    opacity: 1;
    visibility: visible;
}

.service-process-preview-main-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    display: block;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
}

.service-process-preview-video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    background-color: hsl(var(--black));
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
}

.service-process-preview-play {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 96px;
    height: 96px;
    border-radius: 50%;
    background-color: hsl(var(--white)/0.15);
    border: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    cursor: pointer;
    -webkit-transition: background-color 0.3s ease, opacity 0.3s ease, -webkit-transform 0.3s ease;
    transition: background-color 0.3s ease, opacity 0.3s ease, -webkit-transform 0.3s ease;
    transition: background-color 0.3s ease, transform 0.3s ease, opacity 0.3s ease;
    transition: background-color 0.3s ease, transform 0.3s ease, opacity 0.3s ease, -webkit-transform 0.3s ease;
}

.service-process-preview-play svg {
    margin-left: 4px;
    height: 60px;
    width: 60px;
}

@media screen and (max-width: 575px) {
    .service-process-preview-play {
        width: 72px;
        height: 72px;
    }

    .service-process-preview-play svg {
        width: 24px;
        height: 24px;
    }
}

.service-process-preview-thumbs {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 13px;
}

.service-process-preview-thumb {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    aspect-ratio: 1/1;
    background-color: var(--thumb-bg, #dcfce7);
    cursor: pointer;
    -webkit-transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
    transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    transition: transform 0.3s ease, box-shadow 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
}

.service-process-preview-thumb:nth-child(1) {
    --thumb-bg: #fef3c6;
}

.service-process-preview-thumb:nth-child(2) {
    --thumb-bg: #dcfce7;
}

.service-process-preview-thumb:nth-child(3) {
    --thumb-bg: #e0e7ff;
}

.service-process-preview-thumb:nth-child(4) {
    --thumb-bg: #dcfce7;
}

.service-process-preview-thumb img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    display: block;
}

.portfolio-item {
    --radius: 20px;
    position: relative;
    border-radius: var(--radius);
    overflow: hidden;
    height: 100%;
}

@media screen and (max-width: 1199px) {
    .portfolio-item {
        --radius: 16px;
    }
}

.portfolio-item-thumb {
    height: 100%;
}

.portfolio-item-content {
    position: absolute;
    padding: 24px;
    padding-top: 48px;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
}

@media screen and (max-width: 1199px) {
    .portfolio-item-content {
        padding: 16px;
        padding-top: 36px;
    }
}

.portfolio-item-content::after {
    content: "";
    inset: 0;
    position: absolute;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(50%, hsl(var(--black))));
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, hsl(var(--black)) 50%);
    mask-image: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(50%, hsl(var(--black))));
    mask-image: linear-gradient(to bottom, transparent 0%, hsl(var(--black)) 50%);
    z-index: -1;
    background: -webkit-gradient(linear, left bottom, left top, from(#030712), color-stop(155.71%, transparent));
    background: linear-gradient(0deg, #030712 0%, transparent 155.71%);
}

.portfolio-item-content:has(.btn) {
    background: -webkit-gradient(linear, left bottom, left top, from(#030712), color-stop(155.71%, transparent));
    background: linear-gradient(0deg, #030712 0%, transparent 155.71%);
    inset: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 40px 24px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
}

@media screen and (max-width: 1199px) {
    .portfolio-item-content:has(.btn) {
        padding: 16px;
        padding-top: 36px;
    }

    .portfolio-item-content:has(.btn) .btn {
        padding: 12px;
        font-size: 0.9125rem;
    }
}

.portfolio-item-content:has(.btn)::after {
    display: none;
}

.portfolio-item-text {
    color: hsl(var(--white));
}

@media screen and (max-width: 1199px) {
    .portfolio-item-text {
        font-size: 1.75rem;
    }
}

.portfolio-item-title {
    color: hsl(var(--white));
    line-height: 140%;
}

.portfolio-item-desc {
    color: hsl(var(--white));
    line-height: 160%;
}

@media screen and (max-width: 1199px) {
    .portfolio-item-desc {
        font-size: 0.9125rem;
    }
}

.service-contact-info {
    position: relative;
    --inner-p: 32px 40px;
    --outer-g: 32px;
}

@media screen and (max-width: 575px) {
    .service-contact-info {
        --inner-p: 24px 32px;
        --outer-g: 24px;
    }
}

@media screen and (max-width: 424px) {
    .service-contact-info {
        --inner-p: 16px;
        --outer-g: 16px;
    }
}

.service-contact-info .thumb {
    border-radius: 20px;
    overflow: hidden;
}

@media screen and (max-width: 575px) {
    .service-contact-info .thumb {
        border-radius: 16px;
    }
}

.service-contact-info .content {
    position: absolute;
    padding: var(--inner-p);
    width: calc(100% - var(--outer-g) * 2);
    bottom: var(--outer-g);
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    border-radius: 16px;
}

.service-contact-info .content-link {
    font-size: 20px;
    font-weight: 700;
    color: hsl(var(--black));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 32px;
}

@media screen and (max-width: 575px) {
    .service-contact-info .content-link {
        font-size: 18px;
        gap: 16px;
    }
}

@media screen and (max-width: 575px) {
    .service-contact-info .content-link {
        font-size: 16px;
    }
}

.service-contact-info .content-link:not(:last-child) {
    margin-bottom: 8px;
}

.service-contact-info .content-link .title {
    min-width: 90px;
    white-space: nowrap;
}

@media screen and (max-width: 575px) {
    .service-contact-info .content-link .title {
        min-width: unset;
    }
}

.service-cta {
    text-align: center;
}

.service-cta-title {
    max-width: 1200px;
    width: 100%;
    margin-inline: auto;
    --extra-fs: 104px;
    font-size: var(--extra-fs);
    font-weight: 900;
    text-align: center;
    margin-bottom: 20px;
    line-height: 1;
}

@media screen and (max-width: 1599px) {
    .service-cta-title {
        --extra-fs: 84px;
    }
}

@media screen and (max-width: 1199px) {
    .service-cta-title {
        --extra-fs: 64px;
    }
}

@media screen and (max-width: 767px) {
    .service-cta-title {
        --extra-fs: 48px;
    }
}

.service-cta-title span {
    color: hsl(var(--base));
    display: inline;
}

.service-cta-desc {
    color: hsl(var(--black));
    font-size: 24px;
    line-height: 160%;
    margin-bottom: 48px;
}

@media screen and (max-width: 1199px) {
    .service-cta-desc {
        font-size: 20px;
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 767px) {
    .service-cta-desc {
        font-size: 18px;
        margin-bottom: 32px;
    }
}

.service-cta.style-two .service-cta-title {
    max-width: 1240px;
}

.service-cta.style-two .service-cta-title span {
    color: hsl(var(--body-color));
    display: inline;
}

.solutions-banner {
    position: relative;
    overflow: hidden;
    z-index: 1;
}

@media screen and (max-width: 991px) {
    .solutions-banner {
        text-align: center;
    }
}

.solutions-banner-text {
    position: absolute;
    width: 100%;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 0.4;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(-489.91%, hsl(var(--black))), to(transparent));
    background: linear-gradient(180deg, hsl(var(--black)) -489.91%, transparent 100%);
    background-clip: text;
    white-space: nowrap;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 900;
    line-height: 0.6;
    z-index: -1;
    text-align: center;
    font-size: clamp(4rem, -4.6667rem + 43.3333vw, 20.25rem);
}

.solutions-banner-title {
    --extra-fs: 100px;
    font-size: var(--extra-fs);
    font-weight: 900;
    margin-bottom: 4px;
    line-height: 1;
}

@media screen and (max-width: 1599px) {
    .solutions-banner-title {
        --extra-fs: 84px;
    }
}

@media screen and (max-width: 1199px) {
    .solutions-banner-title {
        --extra-fs: 64px;
    }
}

@media screen and (max-width: 767px) {
    .solutions-banner-title {
        --extra-fs: 48px;
    }
}

.solutions-banner-title span {
    color: hsl(var(--body-color));
    display: inline;
}

.solutions-banner-desc {
    font-size: 18px;
    line-height: 160%;
    color: hsl(var(--secondary));
    margin-bottom: 32px;
    max-width: 536px;
    width: 100%;
}

@media screen and (max-width: 575px) {
    .solutions-banner-desc {
        margin-bottom: 24px;
    }
}

.solutions-banner-action {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 16px;
}

@media screen and (max-width: 1199px) {
    .solutions-banner-action .btn {
        padding: 12px 22px;
        font-size: 1rem;
    }
}

@media screen and (max-width: 991px) {
    .solutions-banner-action {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.solutions-banner-thumb {
    -webkit-transform: scale(1.15);
    transform: scale(1.15);
    -webkit-transform-origin: left;
    transform-origin: left;
}

@media screen and (max-width: 1499px) {
    .solutions-banner-thumb {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }
}

@media screen and (max-width: 991px) {
    .solutions-banner-thumb {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

.solution-app-view {
    border-radius: 20px;
    overflow: hidden;
    height: 100%;
}

.solution-app-note {
    padding: 28px 32px;
    border-radius: 20px;
    border: 2px solid hsl(var(--white)/0.5);
    background: hsl(var(--base));
    -webkit-box-shadow: 0 103px 29px 0 transparent, 0 66px 26px 0 hsl(var(--base)/0.03), 0 37px 22px 0 hsl(var(--base)/0.1), 0 17px 17px 0 hsl(var(--base)/0.17), 0 4px 9px 0 hsl(var(--base)/0.2);
    box-shadow: 0 103px 29px 0 transparent, 0 66px 26px 0 hsl(var(--base)/0.03), 0 37px 22px 0 hsl(var(--base)/0.1), 0 17px 17px 0 hsl(var(--base)/0.17), 0 4px 9px 0 hsl(var(--base)/0.2);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 16px;
}

@media screen and (max-width: 1199px) {
    .solution-app-note {
        padding: 20px 24px;
    }
}

@media screen and (max-width: 991px) {
    .solution-app-note {
        border-radius: 16px;
    }
}

@media screen and (max-width: 424px) {
    .solution-app-note {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

.solution-app-note .icon {
    --size: 64px;
    width: var(--size);
    height: var(--size);
    border-radius: 12px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.6);
    -webkit-box-shadow: 0 0 12px 0 hsl(var(--white)/0.1);
    box-shadow: 0 0 12px 0 hsl(var(--white)/0.1);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    color: hsl(var(--base));
    display: grid;
    place-content: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-size: calc(var(--size) * 0.6);
}

@media screen and (max-width: 1199px) {
    .solution-app-note .icon {
        --size: 48px;
    }
}

.solution-app-note .content {
    font-size: 20px;
    color: hsl(var(--white));
}

@media screen and (max-width: 1199px) {
    .solution-app-note .content {
        font-size: 18px;
    }
}

.app-need-section {
    background-color: hsl(var(--dark));
}

.app-need-section .section-heading .text {
    --overlay-bg: hsl(var(--dark)) !important;
}

.app-need-col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 24px;
    height: 100%;
}

.app-need-card {
    --card-p: 32px;
    padding: var(--card-p);
    border-radius: 20px;
    background: hsl(var(--white)/0.15);
    backdrop-filter: blur(11px);
    -webkit-backdrop-filter: blur(11px);
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

@media screen and (max-width: 1199px) {
    .app-need-card {
        --card-p: 24px;
    }
}

.app-need-card--featured {
    -webkit-box-flex: 1.8;
    -ms-flex: 1.8;
    flex: 1.8;
}

@media screen and (max-width: 991px) {
    .app-need-card--featured {
        -webkit-box-flex: 0;
        -ms-flex: none;
        flex: none;
        min-height: 280px;
    }
}

.app-need-card--mvp {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media screen and (max-width: 991px) {
    .app-need-card--mvp {
        min-height: 160px;
    }
}

.app-need-card-icon {
    width: 48px;
    height: 48px;
    margin-bottom: auto;
    color: hsl(var(--white));
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 1199px) {
    .app-need-card-icon {
        width: 40px;
        height: 40px;
    }
}

.app-need-card-icon svg {
    width: 100%;
    height: 100%;
}

.app-need-card-body {
    margin-top: 80px;
}

@media screen and (max-width: 1199px) {
    .app-need-card-body {
        margin-top: 56px;
    }
}

.app-need-card-title {
    font-size: 24px;
    font-weight: 700;
    color: hsl(var(--white));
    line-height: 1.3;
    margin-bottom: 4px;
}

@media screen and (max-width: 1199px) {
    .app-need-card-title {
        font-size: 20px;
    }
}

.app-need-card-desc {
    font-size: 16px;
    color: hsl(var(--light));
    line-height: 1.6;
    margin-bottom: 0;
}

.app-need-card-mvp-title {
    font-size: 48px;
    font-weight: 900;
    color: hsl(var(--white));
    line-height: 1.1;
    margin-bottom: 0;
}

@media screen and (max-width: 1199px) {
    .app-need-card-mvp-title {
        font-size: 40px;
    }
}

@media screen and (max-width: 767px) {
    .app-need-card-mvp-title {
        font-size: 36px;
    }
}

.app-need-cta {
    padding: 28px 32px;
    border-radius: 20px;
    border: 2px solid hsl(var(--base));
    background: hsl(var(--white));
    -webkit-box-shadow: 0 103px 29px 0 transparent, 0 66px 26px 0 hsl(var(--base)/0.03), 0 37px 22px 0 hsl(var(--base)/0.1), 0 17px 17px 0 hsl(var(--base)/0.17), 0 4px 9px 0 hsl(var(--base)/0.2);
    box-shadow: 0 103px 29px 0 transparent, 0 66px 26px 0 hsl(var(--base)/0.03), 0 37px 22px 0 hsl(var(--base)/0.1), 0 17px 17px 0 hsl(var(--base)/0.17), 0 4px 9px 0 hsl(var(--base)/0.2);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 24px;
    margin-top: 24px;
}

@media screen and (max-width: 1199px) {
    .app-need-cta {
        padding: 24px 28px;
    }
}

@media screen and (max-width: 991px) {
    .app-need-cta {
        border-radius: 16px;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
}

@media screen and (max-width: 424px) {
    .app-need-cta {
        padding: 20px 24px;
    }
}

.app-need-cta-content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.app-need-cta-title {
    font-size: 32px;
    font-weight: 700;
    color: hsl(var(--base));
    line-height: 1.25;
    margin-bottom: 4px;
}

@media screen and (max-width: 1199px) {
    .app-need-cta-title {
        font-size: 26px;
    }
}

@media screen and (max-width: 991px) {
    .app-need-cta-title {
        font-size: 22px;
    }
}

.app-need-cta-desc {
    font-size: 18px;
    color: hsl(var(--secondary));
    line-height: 1.6;
    margin-bottom: 0;
}

@media screen and (max-width: 1199px) {
    .app-need-cta-desc {
        font-size: 16px;
    }
}

.app-process-section .section-heading-title-muted {
    color: hsl(var(--secondary));
}

.app-process-card {
    position: relative;
    overflow: hidden;
    background: hsl(var(--section-bg));
    border-radius: 40px;
    padding: 32px;
    height: 100%;
    min-height: 560px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media screen and (max-width: 1199px) {
    .app-process-card {
        border-radius: 28px;
        padding: 24px;
        min-height: 480px;
    }
}

@media screen and (max-width: 991px) {
    .app-process-card {
        min-height: 600px;
        border-radius: 24px;
    }
}

@media screen and (max-width: 575px) {
    .app-process-card {
        min-height: 500px;
    }
}

@media screen and (max-width: 424px) {
    .app-process-card {
        min-height: 420px;
    }
}

.app-process-included {
    position: relative;
    z-index: 1;
}

.app-process-included-title {
    font-size: 18px;
    font-weight: 700;
    color: hsl(var(--black));
    text-decoration: underline;
    margin-bottom: 12px;
}

.app-process-included-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 18px;
}

.app-process-included-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 6px;
    font-size: 20px;
    color: hsl(var(--secondary));
    line-height: 1.2;
}

@media screen and (max-width: 1199px) {
    .app-process-included-item {
        font-size: 17px;
    }
}

.app-process-included-icon {
    color: hsl(var(--base));
    -ms-flex-negative: 0;
    flex-shrink: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.app-process-card-thumb {
    position: absolute;
    bottom: 0;
    left: -8%;
    width: 118%;
    z-index: 0;
}

.app-process-card-thumb img {
    width: 100%;
    height: auto;
    display: block;
}

.app-process-steps {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
    height: 100%;
}

.app-process-steps::before {
    content: "";
    position: absolute;
    left: 27px;
    top: 56px;
    bottom: 28px;
    width: 2px;
    background: hsl(var(--border-light));
    z-index: 0;
}

@media screen and (max-width: 1199px) {
    .app-process-steps::before {
        left: 23px;
        top: 48px;
    }
}

@media screen and (max-width: 767px) {
    .app-process-steps::before {
        left: 21px;
    }
}

.app-process-step {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 16px;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 16px 0;
    position: relative;
}

.app-process-step-num {
    --size: 56px;
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    background: hsl(var(--white));
    border: 2px solid hsl(var(--base)/0.2);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 700;
    color: hsl(var(--black));
    -ms-flex-negative: 0;
    flex-shrink: 0;
    position: relative;
    z-index: 1;
}

@media screen and (max-width: 1199px) {
    .app-process-step-num {
        --size: 48px;
        font-size: 20px;
    }
}

@media screen and (max-width: 767px) {
    .app-process-step-num {
        --size: 44px;
        font-size: 18px;
    }
}

.app-process-step-body {
    padding-top: 8px;
}

.app-process-step-title {
    font-size: 32px;
    font-weight: 700;
    color: hsl(var(--black));
    line-height: 1.25;
    margin-bottom: 4px;
}

@media screen and (max-width: 1199px) {
    .app-process-step-title {
        font-size: 26px;
    }
}

@media screen and (max-width: 991px) {
    .app-process-step-title {
        font-size: 22px;
    }
}

.app-process-step-desc {
    font-size: 18px;
    color: hsl(var(--secondary));
    line-height: 1.6;
    margin-bottom: 0;
}

@media screen and (max-width: 1199px) {
    .app-process-step-desc {
        font-size: 16px;
    }
}

.app-process-step--active .app-process-step-num {
    background: hsl(var(--base));
    border-color: hsl(var(--base)/0.3);
    color: hsl(var(--white));
}

@media (min-width: 992px) {
    .core-app {
        padding-bottom: 0 !important;
    }
}

.core-app .section-heading-title {
    line-height: 110%;
}

.core-app .section-heading-desc {
    max-width: 432px;
}

.core-app-feature-col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.core-app-feature {
    --outer-gap: 100px;
    --border-position: 60px;
    --top-position: 12px;
    --border-h: 60px;
    --radius: 16px;
    position: relative;
}

@media screen and (max-width: 1399px) {
    .core-app-feature {
        --outer-gap: 60px;
    }
}

@media screen and (max-width: 1199px) {
    .core-app-feature {
        --outer-gap: 40px;
        --border-position: 40px;
        --border-h: 40px;
        --radius: 12px;
    }
}

@media screen and (max-width: 991px) {
    .core-app-feature {
        --outer-gap: 24px;
    }
}

.core-app-feature .dot {
    --size: 6px;
    position: absolute;
    height: var(--size);
    width: var(--size);
    background-color: hsl(var(--base));
    top: calc(var(--top-position) - var(--size) / 2);
    border-radius: 50%;
}

@media screen and (max-width: 991px) {
    .core-app-feature .dot {
        display: none;
    }
}

.core-app-feature:not(:last-child) {
    padding-bottom: var(--outer-gap);
}

.core-app-feature:not(:last-child)::after {
    content: "";
    position: absolute;
    height: 100%;
    width: calc(var(--border-position) - 16px);
    top: var(--top-position);
}

@media screen and (max-width: 991px) {
    .core-app-feature:not(:last-child)::after {
        display: none;
    }
}

.core-app-feature:first-child::before, .core-app-feature:last-child::before {
    content: "";
    position: absolute;
    height: var(--border-h);
    width: calc(var(--border-position) - 16px);
    top: var(--top-position);
    border-top: 1px dashed hsl(var(--base));
}

@media screen and (max-width: 991px) {
    .core-app-feature:first-child::before, .core-app-feature:last-child::before {
        display: none;
    }
}

.core-app-feature:nth-child(2)::before {
    content: "";
    position: absolute;
    height: var(--border-h);
    width: calc(var(--border-position) - 16px);
    top: var(--top-position);
    border-top: 1px dashed hsl(var(--base));
}

@media screen and (max-width: 991px) {
    .core-app-feature:nth-child(2)::before {
        display: none;
    }
}

.core-app-feature-title {
    font-size: 24px;
    font-weight: 700;
    color: hsl(var(--black));
    line-height: 1.3;
    margin-bottom: 8px;
}

@media screen and (max-width: 1199px) {
    .core-app-feature-title {
        font-size: 20px;
    }
}

.core-app-feature-desc {
    font-size: 18px;
    color: hsl(var(--secondary));
    line-height: 1.6;
    margin-bottom: 0;
}

@media screen and (max-width: 1199px) {
    .core-app-feature-desc {
        font-size: 16px;
    }
}

.core-app-feature-col--left .core-app-feature {
    text-align: right;
}

.core-app-feature-col--left .core-app-feature::after {
    right: calc(-1 * var(--border-position));
    border-right: 1px dashed hsl(var(--base));
}

@media screen and (max-width: 991px) {
    .core-app-feature-col--left .core-app-feature {
        text-align: left;
    }
}

.core-app-feature-col--left .core-app-feature:first-child::after {
    border-top-right-radius: var(--radius);
}

.core-app-feature-col--left .core-app-feature:first-child::before {
    border-top-right-radius: var(--radius);
}

.core-app-feature-col--left .core-app-feature:nth-child(2)::after {
    border-bottom-right-radius: var(--radius);
}

.core-app-feature-col--left .core-app-feature:last-child::before {
    border-bottom-right-radius: var(--radius);
    border-top: 0;
    border-bottom: 1px dashed hsl(var(--base));
    top: calc(-1 * var(--border-h) + var(--top-position));
}

.core-app-feature-col--left .core-app-feature::before {
    right: calc(-1 * var(--border-position));
}

.core-app-feature-col--left .core-app-feature .dot {
    right: -14px;
}

.core-app-feature-col--right .core-app-feature::after {
    left: calc(-1 * var(--border-position));
    border-left: 1px dashed hsl(var(--base));
}

.core-app-feature-col--right .core-app-feature:first-child::after {
    border-top-left-radius: var(--radius);
}

.core-app-feature-col--right .core-app-feature:first-child::before {
    border-top-left-radius: var(--radius);
}

.core-app-feature-col--right .core-app-feature:nth-child(2)::after {
    border-bottom-left-radius: var(--radius);
}

.core-app-feature-col--right .core-app-feature:last-child::before {
    border-bottom-left-radius: var(--radius);
    border-top: 0;
    border-bottom: 1px dashed hsl(var(--base));
    top: calc(-1 * var(--border-h) + var(--top-position));
}

.core-app-feature-col--right .core-app-feature::before {
    left: calc(-1 * var(--border-position));
}

.core-app-feature-col--right .core-app-feature .dot {
    left: -14px;
}

.core-app-phone {
    text-align: center;
}

.core-app-phone img {
    width: 100%;
    max-width: 525px;
    height: auto;
    display: block;
    margin: 0 auto;
}

@media screen and (max-width: 1399px) {
    .core-app-phone img {
        max-width: 440px;
    }
}

@media screen and (max-width: 1199px) {
    .core-app-phone img {
        max-width: 400px;
    }
}

.app-tech-section .service-process-title {
    font-size: 215px;
    letter-spacing: -12px;
    line-height: 85%;
}

@media screen and (max-width: 1399px) {
    .app-tech-section .service-process-title {
        font-size: 184px;
    }
}

@media screen and (max-width: 1199px) {
    .app-tech-section .service-process-title {
        font-size: 154px;
        letter-spacing: -6px;
    }
}

@media screen and (max-width: 991px) {
    .app-tech-section .service-process-title {
        font-size: 110px;
        letter-spacing: -4px;
    }
}

@media screen and (max-width: 767px) {
    .app-tech-section .service-process-title {
        font-size: 78px;
        letter-spacing: 0px;
    }
}

@media screen and (max-width: 575px) {
    .app-tech-section .service-process-title {
        font-size: clamp(2.8125rem, 0.2243rem + 12.9412vw, 4.875rem);
    }
}

.app-tech-section .service-process-list {
    --width: 244px;
    --height: 200px;
    --size: 100px;
    --radius: 20px;
    position: relative;
    margin-top: calc(-1 * var(--size) / 1.5);
}

@media screen and (max-width: 1399px) {
    .app-tech-section .service-process-list {
        --width: 200px;
        --height: 180px;
        --size: 80px;
        --radius: 16px;
    }
}

@media screen and (max-width: 1199px) {
    .app-tech-section .service-process-list {
        --width: 170px;
        --height: 140px;
        --size: 50px;
    }
}

@media screen and (max-width: 991px) {
    .app-tech-section .service-process-list {
        --width: 124px;
        --height: 110px;
        --size: 40px;
    }
}

@media screen and (max-width: 767px) {
    .app-tech-section .service-process-list {
        --radius: 12px;
        --width: 94px;
        --height: 90px;
    }
}

@media screen and (max-width: 575px) {
    .app-tech-section .service-process-list {
        --width: 64px;
        --height: 64px;
        --size: 30px;
    }
}

.app-tech-section .service-process-list-item {
    width: var(--width);
    height: var(--height);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0;
    border-radius: var(--radius);
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.5);
    -webkit-backdrop-filter: blur(7.5px);
    backdrop-filter: blur(7.5px);
}

.app-tech-section .service-process-list-item img {
    height: var(--size);
    width: var(--size);
}

.ai-tech {
    --thumb-s: 72px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 1060px;
    width: 100%;
    margin: 80px auto 0;
}

@media screen and (max-width: 1199px) {
    .ai-tech {
        margin: 64px auto 0;
        --thumb-s: 64px;
    }
}

@media screen and (max-width: 991px) {
    .ai-tech {
        --thumb-s: 48px;
    }
}

@media screen and (max-width: 767px) {
    .ai-tech {
        --thumb-s: 36px;
        margin: 48px auto 0;
    }
}

@media screen and (max-width: 575px) {
    .ai-tech {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 24px;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.ai-tech-item {
    max-width: var(--thumb-s);
}

.why-ai .section-heading-desc {
    max-width: 480px;
}

.why-ai-wrapper {
    --radius: 20px;
    --width: 312px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    --count: 3;
    --gap: 16px;
}

@media screen and (max-width: 1399px) {
    .why-ai-wrapper {
        --width: 260px;
    }
}

@media screen and (max-width: 1199px) {
    .why-ai-wrapper {
        --width: 220px;
    }
}

@media screen and (max-width: 991px) {
    .why-ai-wrapper {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: var(--gap);
        --radius: 16px;
    }
}

@media screen and (max-width: 767px) {
    .why-ai-wrapper {
        --count: 2;
    }
}

@media screen and (max-width: 424px) {
    .why-ai-wrapper {
        --count: 1;
    }
}

.why-ai-item {
    border-radius: var(--radius);
    background-color: var(--card-bg);
    padding: 24px;
    width: var(--width);
    position: relative;
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
    cursor: default;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 1199px) {
    .why-ai-item {
        padding: 16px;
    }
}

.why-ai-item:nth-child(1) {
    --card-bg: #e6d1ed;
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
}

.why-ai-item:nth-child(1):hover {
    z-index: 2;
    -webkit-transform: rotate(-10deg) translateY(-25px) scale(1.05);
    transform: rotate(-10deg) translateY(-25px) scale(1.05);
}

.why-ai-item:nth-child(2) {
    --card-bg: #fce0ee;
    -webkit-transform: rotate(-6deg);
    transform: rotate(-6deg);
}

.why-ai-item:nth-child(2):hover {
    z-index: 2;
    -webkit-transform: rotate(-6deg) translateY(-25px) scale(1.05);
    transform: rotate(-6deg) translateY(-25px) scale(1.05);
}

.why-ai-item:nth-child(3) {
    --card-bg: #ffdfb8;
    -webkit-transform: rotate(-2deg);
    transform: rotate(-2deg);
}

.why-ai-item:nth-child(3):hover {
    z-index: 2;
    -webkit-transform: rotate(-2deg) translateY(-25px) scale(1.05);
    transform: rotate(-2deg) translateY(-25px) scale(1.05);
}

.why-ai-item:nth-child(4) {
    --card-bg: #fcd4bd;
    -webkit-transform: rotate(2deg);
    transform: rotate(2deg);
}

.why-ai-item:nth-child(4):hover {
    z-index: 2;
    -webkit-transform: rotate(2deg) translateY(-25px) scale(1.05);
    transform: rotate(2deg) translateY(-25px) scale(1.05);
}

.why-ai-item:nth-child(5) {
    --card-bg: #ccdff1;
    -webkit-transform: rotate(6deg);
    transform: rotate(6deg);
}

.why-ai-item:nth-child(5):hover {
    z-index: 2;
    -webkit-transform: rotate(6deg) translateY(-25px) scale(1.05);
    transform: rotate(6deg) translateY(-25px) scale(1.05);
}

.why-ai-item:nth-child(6) {
    --card-bg: #cef1e1;
    -webkit-transform: rotate(10deg);
    transform: rotate(10deg);
}

.why-ai-item:nth-child(6):hover {
    z-index: 2;
    -webkit-transform: rotate(10deg) translateY(-25px) scale(1.05);
    transform: rotate(10deg) translateY(-25px) scale(1.05);
}

.why-ai-item:not(:first-child) {
    margin-left: -9%;
}

@media screen and (max-width: 991px) {
    .why-ai-item {
        -webkit-transform: unset !important;
        transform: unset !important;
        margin: 0 !important;
        width: calc(100% / var(--count) - (var(--gap) - var(--gap) / var(--count)));
    }
}

.why-ai-item-icon {
    --size: 56px;
    width: var(--size);
    height: var(--size);
    border-radius: 16px;
    border: 1px solid hsl(var(--border-light));
    background: hsl(var(--white));
    display: grid;
    place-items: center;
    color: hsl(var(--black));
    margin-bottom: 80px;
    font-size: 24px;
}

@media screen and (max-width: 1199px) {
    .why-ai-item-icon {
        margin-bottom: 48px;
    }
}

.why-ai-item-counter {
    margin-bottom: 32px;
}

@media screen and (max-width: 1199px) {
    .why-ai-item-counter {
        margin-bottom: 32px;
    }
}

.why-ai-item-counter .count {
    font-size: 80px;
    color: hsl(var(--black));
    font-weight: 900;
    line-height: 110%;
    display: block;
}

@media screen and (max-width: 1399px) {
    .why-ai-item-counter .count {
        font-size: 64px;
    }
}

@media screen and (max-width: 1199px) {
    .why-ai-item-counter .count {
        font-size: 48px;
    }
}

.why-ai-item-counter .name {
    color: hsl(var(--black));
    line-height: 110%;
    letter-spacing: 5px;
    text-transform: uppercase;
    margin-top: -4px;
    display: block;
}

@media screen and (max-width: 1399px) {
    .why-ai-item-counter .name {
        font-size: 0.875rem;
    }
}

.why-ai-item .desc {
    color: hsl(var(--body-color));
    font-size: 18px;
    line-height: 160%;
}

@media screen and (max-width: 1399px) {
    .why-ai-item .desc {
        font-size: 1rem;
    }
}

.agent-work-section {
    position: relative;
    z-index: 1;
    background-color: hsl(var(--dark));
    border-radius: 40px;
}

@media screen and (max-width: 1399px) {
    .agent-work-section {
        border-radius: 32px;
    }
}

@media screen and (max-width: 1199px) {
    .agent-work-section {
        border-radius: 24px;
    }
}

@media screen and (max-width: 575px) {
    .agent-work-section {
        border-radius: 20px;
    }
}

.agent-work-section::after, .agent-work-section::before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: clamp(9.375rem, -187.3587rem + 262.3116vw, 42rem);
    height: 100%;
    background-image: linear-gradient(to right, hsl(var(--base)) 1px, transparent 1px), linear-gradient(to bottom, hsl(var(--base)) 1px, transparent 1px);
    background-size: 20px 20px;
    -webkit-mask-image: radial-gradient(ellipse 70% 90% at 100% 50%, hsl(var(--black)) 30%, transparent 70%);
    mask-image: radial-gradient(ellipse 70% 90% at 100% 50%, hsl(var(--black)) 30%, transparent 70%);
    opacity: 0.125;
    z-index: -1;
}

.agent-work-section::after {
    right: auto;
    -webkit-transform: scale(-1);
    transform: scale(-1);
    left: 0;
}

.agent-work-section .section-heading .text {
    --overlay-bg: hsl(var(--dark)) !important;
}

.agent-flow-wrap {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
    overflow: hidden;
    border-radius: 20px;
}

@media screen and (max-width: 1199px) {
    .agent-flow-wrap {
        border-radius: 16px;
    }
}

@media screen and (max-width: 991px) {
    .agent-flow-wrap {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.agent-col {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    border: 1px dashed hsl(var(--body-color));
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    padding: 32px 20px 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    z-index: 9;
}

@media screen and (max-width: 1199px) {
    .agent-col {
        padding: 24px 16px 60px;
        border-radius: 16px;
    }
}

@media screen and (max-width: 991px) {
    .agent-col {
        -webkit-box-flex: unset;
        -ms-flex: unset;
        flex: unset;
        width: calc(50% - 10px);
    }
}

@media screen and (max-width: 424px) {
    .agent-col {
        width: 100%;
    }
}

.agent-col-title {
    font-weight: 700;
    color: hsl(var(--white));
    text-align: center;
    margin-bottom: 40px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 1199px) {
    .agent-col-title {
        margin-bottom: 32px;
    }
}

.agent-col-wrapper {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
    gap: 40px;
}

@media screen and (max-width: 1399px) {
    .agent-col-wrapper {
        gap: 32px;
    }
}

@media screen and (max-width: 1199px) {
    .agent-col-wrapper {
        gap: 24px;
    }
}

.agent-col-footer {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    background-color: hsl(var(--base));
    color: hsl(var(--white));
    font-size: 1.25rem;
    font-weight: 700;
    text-align: center;
    padding: 12px;
}

@media screen and (max-width: 1199px) {
    .agent-col-footer {
        font-size: 1rem;
        padding: 6px;
    }
}

.agent-flow-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 6px;
    text-align: center;
}

.agent-flow-icon {
    --size: 80px;
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    border: 1px solid hsl(var(--light));
    display: grid;
    place-items: center;
    color: hsl(var(--white));
    -ms-flex-negative: 0;
    flex-shrink: 0;
    background: hsl(var(--dark));
    font-size: 32px;
}

@media screen and (max-width: 1399px) {
    .agent-flow-icon {
        --size: 68px;
        font-size: 28px;
    }
}

@media screen and (max-width: 1199px) {
    .agent-flow-icon {
        --size: 58px;
        font-size: 24px;
    }
}

@media screen and (max-width: 991px) {
    .agent-flow-icon {
        --size: 56px;
    }
}

.agent-flow-name {
    color: hsl(var(--white));
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.4;
}

@media screen and (max-width: 1199px) {
    .agent-flow-name {
        font-size: 1rem;
    }
}

@media screen and (max-width: 767px) {
    .agent-flow-name {
        font-size: 0.9125rem;
    }
}

.agent-flow-svg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 2;
    overflow: visible;
}

.agent-flow-svg .agent-flow-path {
    fill: none;
    stroke: hsl(var(--secondary)/0.75);
    stroke-width: 1.5;
}

.agent-flow-svg .agent-flow-dot {
    fill: hsl(var(--base));
    -webkit-filter: drop-shadow(0 0 5px hsl(var(--base)/0.75));
    filter: drop-shadow(0 0 5px hsl(var(--base)/0.75));
}

.mcp-diagram {
    position: relative;
}

.mcp-providers {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 24px;
}

@media screen and (max-width: 991px) {
    .mcp-providers {
        gap: 16px;
    }
}

@media screen and (max-width: 767px) {
    .mcp-providers {
        gap: 12px;
    }
}

.mcp-provider-card {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    height: 150px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 20px;
    border: 1px solid hsl(var(--white)/0.8);
    background: hsl(var(--white)/0.6);
    -webkit-backdrop-filter: blur(11px);
    backdrop-filter: blur(11px);
    overflow: hidden;
}

@media screen and (max-width: 1399px) {
    .mcp-provider-card {
        height: 120px;
    }
}

@media screen and (max-width: 991px) {
    .mcp-provider-card {
        height: 90px;
        border-radius: 16px;
    }
}

@media screen and (max-width: 991px) {
    .mcp-provider-card {
        height: 60px;
        border-radius: 12px;
    }
}

.mcp-claude-logo {
    height: 48px;
}

@media screen and (max-width: 1399px) {
    .mcp-claude-logo {
        height: 40px;
    }
}

@media screen and (max-width: 991px) {
    .mcp-claude-logo {
        height: 28px;
    }
}

@media screen and (max-width: 991px) {
    .mcp-claude-logo {
        height: 18px;
    }
}

.mcp-claude-logo img {
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.mcp-center-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-block: 60px;
}

@media screen and (max-width: 991px) {
    .mcp-center-row {
        padding-block: 48px;
    }
}

.mcp-server-wrap {
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
}

.mcp-server-glow {
    position: absolute;
    inset: -24px;
    border-radius: 48px;
    background: linear-gradient(40deg, hsl(var(--base)) 0%, hsl(var(--warning)) 100%);
    -webkit-filter: blur(40px);
    filter: blur(40px);
    opacity: 0.5;
    pointer-events: none;
}

.mcp-server-card {
    position: relative;
    z-index: 1;
    width: 280px;
    height: 220px;
    border-radius: 24px;
    background: hsl(var(--dark));
    border: 1px solid hsl(var(--white));
    -webkit-box-shadow: 0 25px 50px -12px hsl(var(--white)/0.25);
    box-shadow: 0 25px 50px -12px hsl(var(--white)/0.25);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 16px;
}

@media screen and (max-width: 991px) {
    .mcp-server-card {
        height: 160px;
        border-radius: 16px;
        width: 200px;
    }
}

@media screen and (max-width: 575px) {
    .mcp-server-card {
        height: 140px;
        border-radius: 12px;
        width: 180px;
    }
}

.mcp-server-icon {
    --size: 120px;
    width: var(--size);
    height: var(--size);
}

@media screen and (max-width: 1399px) {
    .mcp-server-icon {
        --size: 90px;
    }
}

@media screen and (max-width: 991px) {
    .mcp-server-icon {
        --size: 60px;
    }
}

@media screen and (max-width: 575px) {
    .mcp-server-icon {
        --size: 40px;
    }
}

.mcp-server-label {
    color: hsl(var(--white));
}

@media screen and (max-width: 991px) {
    .mcp-server-label {
        font-size: 16px;
    }
}

.mcp-outputs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 24px;
}

@media screen and (max-width: 991px) {
    .mcp-outputs {
        gap: 16px;
    }
}

@media screen and (max-width: 767px) {
    .mcp-outputs {
        gap: 12px;
    }
}

@media screen and (max-width: 575px) {
    .mcp-outputs {
        gap: 5px;
    }
}

.mcp-output-card {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    height: 180px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 8px;
    border-radius: 20px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.6);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

@media screen and (max-width: 1399px) {
    .mcp-output-card {
        height: 150px;
    }
}

@media screen and (max-width: 991px) {
    .mcp-output-card {
        height: 120px;
        border-radius: 16px;
    }
}

@media screen and (max-width: 991px) {
    .mcp-output-card {
        height: 100px;
        border-radius: 12px;
    }
}

.mcp-output-icon {
    --size: 80px;
    width: var(--size);
    height: var(--size);
}

@media screen and (max-width: 1399px) {
    .mcp-output-icon {
        --size: 60px;
    }
}

@media screen and (max-width: 991px) {
    .mcp-output-icon {
        --size: 40px;
    }
}

@media screen and (max-width: 575px) {
    .mcp-output-icon {
        --size: 30px;
    }
}

.mcp-output-icon img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.mcp-output-label {
    font-size: 1.25rem;
    font-weight: 700;
    color: hsl(var(--black));
    line-height: 1.3;
}

@media screen and (max-width: 1199px) {
    .mcp-output-label {
        font-size: 1.125rem;
    }
}

@media screen and (max-width: 991px) {
    .mcp-output-label {
        font-size: 1rem;
    }
}

@media screen and (max-width: 575px) {
    .mcp-output-label {
        font-size: 0.875rem;
    }
}

.mcp-flow-svg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
    overflow: visible;
}

.mcp-flow-svg .mcp-flow-path {
    fill: none;
    stroke: hsl(var(--secondary)/0.25);
    stroke-width: 1.5;
    stroke-dasharray: 6 5;
}

.mcp-flow-svg .mcp-flow-dot {
    fill: hsl(var(--base));
    -webkit-filter: drop-shadow(0 0 6px hsl(var(--base)/0.75));
    filter: drop-shadow(0 0 6px hsl(var(--base)/0.75));
}

.ai-approach-section .section-heading-desc {
    max-width: 480px;
}

.ai-approach-img {
    width: 100%;
    border-radius: 24px;
    overflow: hidden;
}

@media screen and (max-width: 1199px) {
    .ai-approach-img {
        border-radius: 16px;
    }
}

.ai-approach-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    display: block;
}

.ai-approach-cards {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 16px;
}

.ai-approach-card {
    background: hsl(var(--white));
    border-radius: 20px;
    padding: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 4px;
}

@media screen and (max-width: 1199px) {
    .ai-approach-card {
        padding: 20px;
        border-radius: 16px;
    }
}

@media screen and (max-width: 991px) {
    .ai-approach-card {
        border-radius: 12px;
    }
}

.ai-approach-card-title {
    font-weight: 700;
    color: hsl(var(--black));
    line-height: 1.3;
}

.ai-approach-card-desc {
    font-size: 1.125rem;
    color: hsl(var(--secondary));
    line-height: 1.6;
}

@media screen and (max-width: 1199px) {
    .ai-approach-card-desc {
        font-size: 1rem;
    }
}

@media screen and (max-width: 991px) {
    .ai-approach-card-desc {
        font-size: 0.9375rem;
    }
}

.aiwhy-choose .section-heading-desc {
    max-width: 480px;
}

.aiwhy-cards-col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 24px;
    height: 100%;
}

@media screen and (max-width: 991px) {
    .aiwhy-cards-col {
        gap: 16px;
    }
}

.aiwhy-card {
    background: hsl(var(--white));
    border-radius: 20px;
    padding: 24px;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 1399px) {
    .aiwhy-card {
        padding: 20px;
    }
}

@media screen and (max-width: 1199px) {
    .aiwhy-card {
        border-radius: 16px;
    }
}

@media screen and (max-width: 991px) {
    .aiwhy-card {
        border-radius: 12px;
    }
}

.aiwhy-card-icon {
    --size: 64px;
    width: var(--size);
    height: var(--size);
    border-radius: 12px;
    background: hsl(var(--white)/0.61);
    border: 1px solid hsl(var(--white));
    -webkit-backdrop-filter: blur(11px);
    backdrop-filter: blur(11px);
    -webkit-box-shadow: 0 0 12px hsl(var(--black)/0.1);
    box-shadow: 0 0 12px hsl(var(--black)/0.1);
    display: grid;
    place-items: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    color: hsl(var(--base));
    font-size: 32px;
}

@media screen and (max-width: 991px) {
    .aiwhy-card-icon {
        --size: 52px;
        font-size: 28px;
    }
}

.aiwhy-card-icon img {
    width: 32px;
    height: 32px;
    -o-object-fit: contain;
    object-fit: contain;
    font-size: 24px;
}

.aiwhy-card-content {
    margin-top: 40px;
}

@media screen and (max-width: 1199px) {
    .aiwhy-card-content {
        margin-top: 32px;
    }
}

@media screen and (max-width: 991px) {
    .aiwhy-card-content {
        margin-top: 20px;
    }
}

.aiwhy-card-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: hsl(var(--black));
    line-height: 1.3;
    margin-bottom: 4px;
}

@media screen and (max-width: 1199px) {
    .aiwhy-card-title {
        font-size: 1.25rem;
    }
}

@media screen and (max-width: 991px) {
    .aiwhy-card-title {
        font-size: 1.125rem;
    }
}

.aiwhy-card-desc {
    font-size: 1rem;
    color: hsl(var(--secondary));
    line-height: 1.6;
}

.aiwhy-center-card {
    position: relative;
    border-radius: 20px;
    background: #cefafe;
    overflow: hidden;
    height: 100%;
    min-height: 550px;
}

.aiwhy-center-card img {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

@media screen and (max-width: 1399px) {
    .aiwhy-center-card {
        min-height: 480px;
    }
}

@media screen and (max-width: 1199px) {
    .aiwhy-center-card {
        border-radius: 16px;
        min-height: 420px;
    }
}

@media screen and (max-width: 991px) {
    .aiwhy-center-card {
        min-height: 380px;
        border-radius: 12px;
    }
}

@media screen and (max-width: 767px) {
    .aiwhy-center-card {
        min-height: 320px;
    }
}

.aiwhy-center-img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: top center;
    object-position: top center;
    display: block;
}

.aiwhy-center-play {
    --size: 64px;
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    background: hsl(var(--white)/0.15);
    display: grid;
    place-items: center;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border: none;
    cursor: pointer;
    -webkit-transition: background linear 0.3s;
    transition: background linear 0.3s;
    font-size: 1.5rem;
    color: hsl(var(--white));
}

.aiwhy-center-play:hover {
    background: hsl(var(--base)/0.3);
}

.aiwhy-center-play img {
    width: 40px;
    height: 40px;
    -o-object-fit: contain;
    object-fit: contain;
}

.ux-road-section .section-heading-desc {
    max-width: 470px;
}

.ux-road-section .ux-road-card {
    border-radius: 20px;
    padding: 32px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    overflow: hidden;
}

.ux-road-section .ux-road-card__title {
    font-size: clamp(24px, 2.5vw, 40px);
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 0;
}

.ux-road-section .ux-road-card__desc {
    font-size: 18px;
    line-height: 1.6;
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .ux-road-section .ux-road-card__desc {
        font-size: 16px;
    }
}

.ux-road-section .ux-road-card--dark {
    background-color: hsl(var(--heading-color));
    min-height: 600px;
}

.ux-road-section .ux-road-card--dark .ux-road-card__title,
.ux-road-section .ux-road-card--dark .ux-road-card__desc {
    color: hsl(var(--white));
}

@media screen and (max-width: 1199px) {
    .ux-road-section .ux-road-card--dark {
        min-height: 400px;
    }
}

.ux-road-section .ux-road-card--green {
    background-color: hsl(var(--base)/0.15);
    min-height: 288px;
}

.ux-road-section .ux-road-card--green .ux-road-card__title {
    color: hsl(var(--base));
}

.ux-road-section .ux-road-card--green .ux-road-card__desc {
    color: hsl(var(--heading-color));
}

.ux-road-section .ux-road-card--gray {
    background-color: hsl(var(--section-bg));
    min-height: 288px;
}

.ux-road-section .ux-road-card--gray .ux-road-card__title {
    color: hsl(var(--heading-color));
}

.ux-road-section .ux-road-card--gray .ux-road-card__desc {
    color: hsl(var(--body-color));
}

@media (min-width: 992px) {
    .ux-how-work .ux-how-left {
        position: sticky;
        top: 100px;
    }
}

.ux-how-work .ux-how-left__title {
    font-size: clamp(48px, 5.5vw, 96px);
    font-weight: 900;
    line-height: 1;
    margin-top: 16px;
    margin-bottom: 24px;
    color: hsl(var(--heading-color));
}

.ux-how-work .ux-how-left__green {
    color: hsl(var(--base));
}

.ux-how-work .ux-how-left__gray {
    color: hsl(var(--body-color));
}

.ux-how-work .ux-how-left__desc {
    font-size: 18px;
    line-height: 1.6;
    color: hsl(var(--heading-color));
    max-width: 493px;
}

@media screen and (max-width: 767px) {
    .ux-how-work .ux-how-left__desc {
        font-size: 16px;
    }
}

.ux-how-steps {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 40px;
}

.ux-how-steps::before {
    content: "";
    position: absolute;
    left: 27px;
    top: 0;
    bottom: 0;
    width: 2px;
    background: -webkit-gradient(linear, left top, left bottom, from(hsl(var(--base)/0.5)), to(hsl(var(--base)/0.05)));
    background: linear-gradient(to bottom, hsl(var(--base)/0.5), hsl(var(--base)/0.05));
}

.ux-how-step {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 35px;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.ux-how-step__num {
    min-width: 56px;
    width: 56px;
    height: 56px;
    border-radius: 250px;
    background-color: hsl(var(--base));
    border: 2px solid hsl(var(--base)/0.3);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 700;
    color: hsl(var(--white));
    position: relative;
    z-index: 1;
}

.ux-how-step__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 4px;
    padding-top: 8px;
}

.ux-how-step__title {
    font-size: clamp(22px, 2vw, 32px);
    font-weight: 700;
    line-height: 1.25;
    color: hsl(var(--heading-color));
    margin-bottom: 0;
}

.ux-how-step__desc {
    font-size: 18px;
    line-height: 1.6;
    color: hsl(var(--heading-color));
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .ux-how-step__desc {
        font-size: 16px;
    }
}

.ux-how-step__week {
    display: block;
    font-size: 16px;
    font-weight: 700;
    color: hsl(var(--base));
    letter-spacing: 5px;
    text-transform: uppercase;
    margin-top: 4px;
}

.ux-focus {
    position: relative;
    z-index: 1;
    background-color: hsl(var(--dark));
    border-radius: 40px;
}

@media screen and (max-width: 1399px) {
    .ux-focus {
        border-radius: 32px;
    }
}

@media screen and (max-width: 1199px) {
    .ux-focus {
        border-radius: 24px;
    }
}

@media screen and (max-width: 575px) {
    .ux-focus {
        border-radius: 20px;
    }
}

.ux-focus::after, .ux-focus::before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: clamp(9.375rem, -187.3587rem + 262.3116vw, 42rem);
    height: 100%;
    background-image: linear-gradient(to right, hsl(var(--base)) 1px, transparent 1px), linear-gradient(to bottom, hsl(var(--base)) 1px, transparent 1px);
    background-size: 20px 20px;
    -webkit-mask-image: radial-gradient(ellipse 70% 90% at 100% 50%, hsl(var(--black)) 30%, transparent 70%);
    mask-image: radial-gradient(ellipse 70% 90% at 100% 50%, hsl(var(--black)) 30%, transparent 70%);
    opacity: 0.125;
    z-index: -1;
}

.ux-focus::after {
    right: auto;
    -webkit-transform: scale(-1);
    transform: scale(-1);
    left: 0;
}

.ux-focus .section-heading .text,
.ux-focus .section-heading-name .text {
    --overlay-bg: hsl(var(--dark)) !important;
}

.ux-focus .section-heading-name {
    color: hsl(var(--white));
}

.ux-focus-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 56px;
}

.ux-focus-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
}

.ux-focus__title {
    font-size: clamp(40px, 9vw, 120px);
    font-weight: 900;
    line-height: 1.1;
    color: hsl(var(--white));
    text-transform: uppercase;
    margin-top: 16px;
    margin-bottom: 24px;
}

@media screen and (max-width: 1199px) {
    .ux-focus__title {
        font-size: clamp(32px, 7vw, 80px);
    }
}

@media screen and (max-width: 767px) {
    .ux-focus__title {
        font-size: clamp(28px, 8vw, 56px);
    }
}

.ux-focus__gray {
    color: hsl(var(--body-color));
}

.ux-focus__green {
    color: hsl(var(--base));
}

.ux-focus__desc {
    font-size: 18px;
    line-height: 1.6;
    color: hsl(var(--white));
    max-width: 681px;
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .ux-focus__desc {
        font-size: 16px;
    }
}

.ux-process-card {
    --inner-p: 32px;
    --inner-gap: 80px;
    --radius: 20px;
    border: 1px solid hsl(var(--white));
    background-color: hsl(var(--white));
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    padding: var(--inner-p);
    border-radius: var(--radius);
    height: 100%;
}

.ux-process-card .count {
    color: hsl(var(--base));
    margin-bottom: var(--inner-gap);
}

.ux-process-card .title {
    margin-bottom: 4px;
}

.ux-process-card .desc {
    line-height: 160%;
    font-size: 18px;
    color: hsl(var(--secondary));
}

@media screen and (max-width: 1199px) {
    .ux-process-card {
        --inner-p: 24px;
        --radius: 16px;
        --inner-gap: 60px;
    }
}

@media screen and (max-width: 991px) {
    .ux-process-card {
        --inner-p: 20px;
        --radius: 12px;
    }
}

@media screen and (max-width: 575px) {
    .ux-process-card {
        --inner-p: 16px;
        --inner-gap: 40px;
    }
}

.saas-trusted {
    background-color: hsl(var(--section-bg));
    padding-block: 80px;
}

@media screen and (max-width: 1199px) {
    .saas-trusted {
        padding-block: 60px;
    }
}

@media screen and (max-width: 767px) {
    .saas-trusted {
        padding-block: 40px;
    }
}

.saas-trusted-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 40px;
}

@media screen and (max-width: 991px) {
    .saas-trusted-inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 32px;
    }
}

.saas-trusted-heading {
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 991px) {
    .saas-trusted-heading {
        text-align: center;
    }
}

.saas-trusted-label {
    font-size: 20px;
    font-weight: 700;
    color: hsl(var(--body-color));
    margin-bottom: 4px;
    line-height: 1.2;
}

@media screen and (max-width: 767px) {
    .saas-trusted-label {
        font-size: 18px;
    }
}

@media screen and (max-width: 575px) {
    .saas-trusted-label {
        font-size: 16px;
    }
}

.saas-trusted-title {
    font-size: 64px;
    font-weight: 700;
    color: hsl(var(--heading-color));
    line-height: 1.1;
    margin-bottom: 0;
}

@media screen and (max-width: 1399px) {
    .saas-trusted-title {
        font-size: 56px;
    }
}

@media screen and (max-width: 1199px) {
    .saas-trusted-title {
        font-size: 40px;
    }
}

@media screen and (max-width: 991px) {
    .saas-trusted-title {
        text-align: center;
    }
}

@media screen and (max-width: 767px) {
    .saas-trusted-title {
        font-size: 32px;
    }
}

@media screen and (max-width: 575px) {
    .saas-trusted-title {
        font-size: 24px;
    }
}

.saas-trusted-stats {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 40px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 1199px) {
    .saas-trusted-stats {
        gap: 24px;
    }
}

@media screen and (max-width: 991px) {
    .saas-trusted-stats {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.saas-trusted-stat {
    text-align: left;
}

.saas-trusted-number {
    font-size: 64px;
    font-weight: 600;
    color: hsl(var(--heading-color));
    line-height: 1.1;
    margin-bottom: 4px;
}

@media screen and (max-width: 1399px) {
    .saas-trusted-number {
        font-size: 56px;
    }
}

@media screen and (max-width: 1199px) {
    .saas-trusted-number {
        font-size: 40px;
    }
}

@media screen and (max-width: 991px) {
    .saas-trusted-number {
        text-align: center;
    }
}

@media screen and (max-width: 767px) {
    .saas-trusted-number {
        font-size: 32px;
    }
}

@media screen and (max-width: 575px) {
    .saas-trusted-number {
        font-size: 24px;
    }
}

.saas-trusted-number .accent {
    color: hsl(var(--base));
}

.saas-trusted-desc {
    font-size: 18px;
    font-weight: 500;
    color: hsl(var(--body-color));
    line-height: 1.4;
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .saas-trusted-desc {
        font-size: 16px;
    }
}

@media screen and (max-width: 575px) {
    .saas-trusted-desc {
        font-size: 15px;
    }
}

.saas-trusted-divider {
    width: 1px;
    height: 100px;
    background-color: hsl(var(--light));
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 767px) {
    .saas-trusted-divider {
        display: none;
    }
}

.saas-reality-content {
    display: grid;
    grid-template-columns: 1fr 40%;
    gap: 48px;
    margin-top: 60px;
}

@media screen and (max-width: 1199px) {
    .saas-reality-content {
        grid-template-columns: 1fr 42%;
        gap: 36px;
    }
}

@media screen and (max-width: 991px) {
    .saas-reality-content {
        grid-template-columns: 1fr;
        gap: 48px;
    }
}

.saas-reality-junctions {
    border-right: 1px solid hsl(var(--light));
    padding-right: 48px;
}

@media screen and (max-width: 1199px) {
    .saas-reality-junctions {
        padding-right: 36px;
    }
}

@media screen and (max-width: 991px) {
    .saas-reality-junctions {
        border-right: none;
        padding-right: 0;
    }
}

.saas-reality-meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-bottom: 16px;
    border-bottom: 1px solid hsl(var(--light));
    margin-bottom: 0;
}

.saas-reality-meta-label, .saas-reality-meta-value {
    font-size: 14px;
    font-weight: 400;
    color: hsl(var(--body-color));
    text-transform: uppercase;
    letter-spacing: 4px;
    line-height: 1.6;
}

.saas-reality-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.saas-reality-item {
    padding-block: 24px;
    border-bottom: 1px solid hsl(var(--light));
}

.saas-reality-item.active .saas-reality-desc {
    display: block;
}

.saas-reality-item-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 24px;
    cursor: pointer;
}

@media screen and (max-width: 767px) {
    .saas-reality-item-row {
        gap: 16px;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.saas-reality-num {
    font-size: 18px;
    font-weight: 400;
    color: hsl(var(--heading-color));
    -ms-flex-negative: 0;
    flex-shrink: 0;
    line-height: 1.6;
}

.saas-reality-title {
    font-size: 40px;
    font-weight: 700;
    color: hsl(var(--heading-color));
    line-height: 1.2;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-bottom: 0;
}

@media screen and (max-width: 1199px) {
    .saas-reality-title {
        font-size: 32px;
    }
}

@media screen and (max-width: 767px) {
    .saas-reality-title {
        font-size: 26px;
    }
}

@media screen and (max-width: 575px) {
    .saas-reality-title {
        font-size: 22px;
    }
}

.saas-reality-tag {
    font-size: 14px;
    font-weight: 700;
    color: hsl(var(--base));
    text-transform: uppercase;
    letter-spacing: 4px;
    white-space: nowrap;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    line-height: 1.6;
}

.saas-reality-desc {
    font-size: 18px;
    font-weight: 400;
    color: hsl(var(--body-color));
    line-height: 1.6;
    margin-top: 12px;
    margin-left: 42px;
    margin-bottom: 0;
    max-width: 600px;
    display: none;
}

@media screen and (max-width: 767px) {
    .saas-reality-desc {
        margin-left: 0;
        font-size: 16px;
    }
}

.saas-reality-data {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.saas-reality-stat {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 16px;
    padding-block: 20px;
    border-bottom: 1px solid hsl(var(--light));
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media screen and (max-width: 991px) {
    .saas-reality-stat {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }
}

@media screen and (max-width: 424px) {
    .saas-reality-stat {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

.saas-reality-stat-num {
    font-size: 160px;
    font-weight: 900;
    color: hsl(var(--heading-color));
    line-height: 0.8;
    margin-bottom: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.saas-reality-stat-num .accent {
    color: hsl(var(--base));
}

@media screen and (max-width: 1199px) {
    .saas-reality-stat-num {
        font-size: 120px;
    }
}

@media screen and (max-width: 767px) {
    .saas-reality-stat-num {
        font-size: 96px;
    }
}

@media screen and (max-width: 575px) {
    .saas-reality-stat-num {
        font-size: 80px;
    }
}

.saas-reality-stat-desc {
    font-size: 20px;
    font-weight: 700;
    color: hsl(var(--heading-color));
    line-height: 1.3;
    text-align: right;
    margin-bottom: 0;
    max-width: 280px;
}

@media screen and (max-width: 1199px) {
    .saas-reality-stat-desc {
        font-size: 18px;
    }
}

@media screen and (max-width: 575px) {
    .saas-reality-stat-desc {
        font-size: 16px;
    }
}

.saas-reality-bars {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 20px;
    padding-block: 28px;
    border-bottom: 1px solid hsl(var(--light));
}

.saas-reality-bar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
}

.saas-reality-bar-label {
    font-size: 18px;
    font-weight: 400;
    color: hsl(var(--heading-color));
    white-space: nowrap;
    width: 150px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    line-height: 1.6;
}

@media screen and (max-width: 1199px) {
    .saas-reality-bar-label {
        font-size: 16px;
        width: 130px;
    }
}

@media screen and (max-width: 575px) {
    .saas-reality-bar-label {
        width: 110px;
        font-size: 14px;
    }
}

.saas-reality-bar-track {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    height: 4px;
    background-color: hsl(var(--light));
    border-radius: 250px;
    overflow: hidden;
}

.saas-reality-bar-fill {
    height: 100%;
    background-color: hsl(var(--base));
    border-radius: 250px;
}

.saas-reality-bar-pct {
    font-size: 18px;
    font-weight: 700;
    color: hsl(var(--heading-color));
    white-space: nowrap;
    width: 40px;
    text-align: right;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    line-height: 1.6;
}

@media screen and (max-width: 575px) {
    .saas-reality-bar-pct {
        font-size: 14px;
    }
}

.saas-reality-quote {
    margin-top: 24px;
    background-color: hsl(var(--heading-color));
    border-radius: 15px;
    padding: 28px 24px 20px;
    position: relative;
    overflow: hidden;
}

.saas-reality-quote::after {
    --size: 135px;
    content: "";
    position: absolute;
    height: var(--size);
    width: var(--size);
    background-color: hsl(var(--base));
    -webkit-filter: blur(70px);
    filter: blur(70px);
    top: calc(-1 * var(--size) / 2);
    right: calc(-1 * var(--size) / 2);
}

.saas-reality-quote-text {
    font-size: 20px;
    font-weight: 700;
    color: hsl(var(--white));
    line-height: 1.3;
    margin-bottom: 28px;
}

.saas-reality-quote-text .accent {
    color: hsl(var(--base));
}

@media screen and (max-width: 1199px) {
    .saas-reality-quote-text {
        font-size: 18px;
    }
}

.saas-reality-quote-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.saas-reality-quote-author {
    font-size: 13px;
    font-weight: 700;
    color: hsl(var(--body-color));
    text-transform: uppercase;
    letter-spacing: 4px;
    line-height: 1.6;
}

.saas-reality-quote-cta {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
    font-size: 16px;
    font-weight: 700;
    color: hsl(var(--base));
    text-decoration: none;
    -webkit-transition: opacity 0.2s ease;
    transition: opacity 0.2s ease;
}

.saas-reality-quote-cta:hover {
    opacity: 0.8;
    color: hsl(var(--base));
}

.saas-solution-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 40px;
    padding-block: 32px;
    border-top: 1px solid hsl(var(--light));
}

.saas-solution-item:last-child {
    border-bottom: 1px solid hsl(var(--light));
}

@media screen and (max-width: 1199px) {
    .saas-solution-item {
        gap: 28px;
        padding-block: 24px;
    }
}

@media screen and (max-width: 767px) {
    .saas-solution-item {
        gap: 20px;
        padding-block: 20px;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
}

.saas-solution-num {
    font-size: 64px;
    font-weight: 400;
    color: hsl(var(--light));
    line-height: 1.6;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 80px;
    text-align: left;
}

@media screen and (max-width: 1199px) {
    .saas-solution-num {
        font-size: 48px;
        width: 60px;
    }
}

@media screen and (max-width: 767px) {
    .saas-solution-num {
        font-size: 36px;
        width: 48px;
    }
}

@media screen and (max-width: 575px) {
    .saas-solution-num {
        font-size: 28px;
        width: 38px;
    }
}

.saas-solution-content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.saas-solution-title {
    font-size: 32px;
    font-weight: 700;
    color: hsl(var(--heading-color));
    line-height: 1.25;
    margin-bottom: 8px;
}

@media screen and (max-width: 1199px) {
    .saas-solution-title {
        font-size: 26px;
    }
}

@media screen and (max-width: 767px) {
    .saas-solution-title {
        font-size: 22px;
    }
}

@media screen and (max-width: 575px) {
    .saas-solution-title {
        font-size: 18px;
    }
}

.saas-solution-desc {
    font-size: 18px;
    font-weight: 400;
    color: hsl(var(--body-color));
    line-height: 1.6;
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .saas-solution-desc {
        font-size: 16px;
    }
}

@media screen and (max-width: 575px) {
    .saas-solution-desc {
        font-size: 14px;
    }
}

.saas-feature-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 24px;
    margin-top: 60px;
}

@media screen and (max-width: 1199px) {
    .saas-feature-grid {
        gap: 20px;
    }
}

@media screen and (max-width: 991px) {
    .saas-feature-grid {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }
}

@media screen and (max-width: 767px) {
    .saas-feature-grid {
        grid-template-columns: 1fr;
        gap: 16px;
        margin-top: 40px;
    }
}

.saas-feature-card {
    --card-bg: hsl(var(--white));
    --card-title-color: hsl(var(--heading-color));
    --card-desc-color: hsl(var(--body-color));
    --icon-color: hsl(var(--base));
    --card-min-height: 285px;
    background-color: var(--card-bg);
    border-radius: 20px;
    padding: 32px;
    min-height: var(--card-min-height);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 35px;
    overflow: hidden;
    position: relative;
    grid-column: span 3;
}

@media screen and (max-width: 1399px) {
    .saas-feature-card {
        padding: 28px;
    }
}

@media screen and (max-width: 1199px) {
    .saas-feature-card {
        border-radius: 16px;
        padding: 24px;
    }
}

@media screen and (max-width: 991px) {
    .saas-feature-card {
        grid-column: span 3;
    }
}

@media screen and (max-width: 767px) {
    .saas-feature-card {
        grid-column: auto;
        min-height: auto;
        border-radius: 14px;
        padding: 20px;
        gap: 24px;
    }
}

.saas-feature-card--large {
    --card-bg: hsl(var(--heading-color));
    --card-title-color: hsl(var(--white));
    --card-desc-color: hsl(var(--border-light));
    --card-min-height: 320px;
    grid-column: span 4;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 991px) {
    .saas-feature-card--large {
        grid-column: span 3;
    }
}

.saas-feature-card--medium {
    --card-min-height: 250px;
    grid-column: span 4;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 991px) {
    .saas-feature-card--medium {
        grid-column: span 3;
    }
}

.saas-feature-card--wide {
    grid-column: span 5;
    gap: 64px;
}

@media screen and (max-width: 991px) {
    .saas-feature-card--wide {
        grid-column: span 3;
    }
}

@media screen and (max-width: 767px) {
    .saas-feature-card--wide {
        gap: 24px;
    }
}

.saas-feature-card--gray {
    --card-bg: hsl(var(--section-bg));
}

.saas-feature-card--green {
    --card-bg: #f1fcf5;
}

.saas-feature-card--green-light {
    --card-bg: #ecf8f2;
}

.saas-feature-card--white {
    --card-bg: hsl(var(--white));
}

.saas-feature-card--yellow {
    --card-bg: #fdfde9;
    --icon-color: #eab308;
}

.saas-feature-card--dark {
    --icon-color: hsl(var(--white));
}

.saas-feature-card-icon-inner {
    width: 64px;
    height: 64px;
    border-radius: 12px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.61);
    -webkit-box-shadow: 0 0 12px 0 hsl(var(--black)/0.1);
    box-shadow: 0 0 12px 0 hsl(var(--black)/0.1);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    color: var(--icon-color);
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-size: 36px;
}

@media screen and (max-width: 1199px) {
    .saas-feature-card-icon-inner {
        width: 56px;
        height: 56px;
        border-radius: 10px;
        font-size: 32px;
    }
}

@media screen and (max-width: 767px) {
    .saas-feature-card-icon-inner {
        width: 52px;
        height: 52px;
    }
}

.saas-feature-card-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 4px;
    margin-top: auto;
    max-width: 360px;
}

.saas-feature-card-title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3;
    color: var(--card-title-color);
    margin-bottom: 0;
}

@media screen and (max-width: 1199px) {
    .saas-feature-card-title {
        font-size: 22px;
    }
}

@media screen and (max-width: 767px) {
    .saas-feature-card-title {
        font-size: 20px;
    }
}

.saas-feature-card-desc {
    font-size: 18px;
    font-weight: 400;
    line-height: 1.6;
    color: var(--card-desc-color);
    margin-bottom: 0;
}

@media screen and (max-width: 1199px) {
    .saas-feature-card-desc {
        font-size: 16px;
    }
}

.saas-path-section {
    position: relative;
    z-index: 1;
    background-color: hsl(var(--dark));
    border-radius: 40px;
}

@media screen and (max-width: 1399px) {
    .saas-path-section {
        border-radius: 32px;
    }
}

@media screen and (max-width: 1199px) {
    .saas-path-section {
        border-radius: 24px;
    }
}

@media screen and (max-width: 575px) {
    .saas-path-section {
        border-radius: 20px;
    }
}

.saas-path-section::after, .saas-path-section::before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: clamp(9.375rem, -187.3587rem + 262.3116vw, 42rem);
    height: 100%;
    background-image: linear-gradient(to right, hsl(var(--base)) 1px, transparent 1px), linear-gradient(to bottom, hsl(var(--base)) 1px, transparent 1px);
    background-size: 20px 20px;
    -webkit-mask-image: radial-gradient(ellipse 70% 90% at 100% 50%, hsl(var(--black)) 30%, transparent 70%);
    mask-image: radial-gradient(ellipse 70% 90% at 100% 50%, hsl(var(--black)) 30%, transparent 70%);
    opacity: 0.125;
    z-index: -1;
}

.saas-path-section::after {
    right: auto;
    -webkit-transform: scale(-1);
    transform: scale(-1);
    left: 0;
}

.saas-path-section .section-heading .text {
    --overlay-bg: hsl(var(--dark)) !important;
}

.saas-path-rail {
    position: relative;
    padding-top: 6px;
}

.saas-path-line, .saas-path-progress {
    position: absolute;
    top: 40px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    height: 4px;
    border-radius: 999px;
}

@media screen and (max-width: 1199px) {
    .saas-path-line, .saas-path-progress {
        top: 36px;
    }
}

@media screen and (max-width: 991px) {
    .saas-path-line, .saas-path-progress {
        top: 30px;
    }
}

@media screen and (max-width: 767px) {
    .saas-path-line, .saas-path-progress {
        top: 20px !important;
        -webkit-transform: unset !important;
        transform: unset !important;
        left: 22px;
    }
}

.saas-path-progress {
    left: 100px;
    -webkit-transform: unset;
    transform: unset;
}

@media screen and (max-width: 991px) {
    .saas-path-progress {
        left: 80px;
    }
}

@media screen and (max-width: 767px) {
    .saas-path-progress {
        left: 22px;
    }
}

.saas-path-line {
    width: calc(100% - 200px);
    background-color: hsl(var(--border-black));
}

@media screen and (max-width: 1199px) {
    .saas-path-line {
        width: calc(100% - 128px);
    }
}

@media screen and (max-width: 767px) {
    .saas-path-line {
        width: 4px;
        height: 100%;
    }
}

.saas-path-progress {
    width: calc((100% - 144px) / 4);
    background-color: hsl(var(--base));
}

@media screen and (max-width: 1199px) {
    .saas-path-progress {
        width: calc((100% - 128px) / 4);
    }
}

@media screen and (max-width: 767px) {
    .saas-path-progress {
        width: 4px;
        height: 25%;
    }
}

.saas-path-list {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 32px;
    position: relative;
    z-index: 1;
}

@media screen and (max-width: 1199px) {
    .saas-path-list {
        gap: 24px;
    }
}

@media screen and (max-width: 991px) {
    .saas-path-list {
        gap: 16px;
    }
}

@media screen and (max-width: 767px) {
    .saas-path-list {
        grid-template-columns: repeat(1, 1fr);
        gap: 16px;
    }
}

.saas-path-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    color: hsl(var(--white));
    gap: 24px;
}

.saas-path-item.active .saas-path-count {
    color: hsl(var(--white));
    background-color: hsl(var(--base));
    border-color: hsl(var(--white));
}

@media screen and (max-width: 767px) {
    .saas-path-item {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        text-align: left;
    }
}

.saas-path-count {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    border: 1px solid hsl(var(--light));
    background-color: hsl(var(--white));
    -webkit-box-shadow: 0 4px 4px 0 hsl(var(--black)/0.25), 0 -18px 41px 0 rgba(46, 204, 112, 0.15), 0 -74px 74px 0 rgba(46, 204, 112, 0.13), 0 -166px 99px 0 rgba(46, 204, 112, 0.08), 0 -295px 118px 0 rgba(46, 204, 112, 0.02), 0 -460px 129px 0 rgba(46, 204, 112, 0);
    box-shadow: 0 4px 4px 0 hsl(var(--black)/0.25), 0 -18px 41px 0 rgba(46, 204, 112, 0.15), 0 -74px 74px 0 rgba(46, 204, 112, 0.13), 0 -166px 99px 0 rgba(46, 204, 112, 0.08), 0 -295px 118px 0 rgba(46, 204, 112, 0.02), 0 -460px 129px 0 rgba(46, 204, 112, 0);
    color: hsl(var(--light));
    font-size: 40px;
    font-weight: 900;
    line-height: 1.2;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 1199px) {
    .saas-path-count {
        width: 64px;
        height: 64px;
        font-size: 34px;
    }
}

@media screen and (max-width: 991px) {
    .saas-path-count {
        width: 48px;
        height: 48px;
        font-size: 24px;
    }
}

.saas-path-content {
    max-width: 224px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2px;
}

.saas-path-title {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.25;
    color: hsl(var(--white));
    margin-bottom: 0;
}

@media screen and (max-width: 1199px) {
    .saas-path-title {
        font-size: 28px;
    }
}

@media screen and (max-width: 991px) {
    .saas-path-title {
        font-size: 20px;
    }
}

.saas-path-desc {
    font-size: 18px;
    font-weight: 400;
    line-height: 1.6;
    color: hsl(var(--white));
    margin-bottom: 0;
}

@media screen and (max-width: 1199px) {
    .saas-path-desc {
        font-size: 16px;
    }
}

@media screen and (max-width: 991px) {
    .saas-path-desc {
        font-size: 15px;
    }
}

body:has(.cyber-risk-section) .page-banner {
    --inner-p: 250px;
    padding-block: var(--inner-p);
}

@media screen and (max-width: 1399px) {
    body:has(.cyber-risk-section) .page-banner {
        --inner-p: 200px;
    }
}

@media screen and (max-width: 1199px) {
    body:has(.cyber-risk-section) .page-banner {
        --inner-p: 180px;
    }
}

@media screen and (max-width: 991px) {
    body:has(.cyber-risk-section) .page-banner {
        --inner-p: 160px;
    }
}

@media screen and (max-width: 767px) {
    body:has(.cyber-risk-section) .page-banner {
        --inner-p: 120px;
    }
}

@media screen and (max-width: 575px) {
    body:has(.cyber-risk-section) .page-banner {
        --inner-p: 90px;
    }
}

body:has(.cyber-risk-section) .page-banner .page-banner-desc {
    max-width: 532px;
    margin-left: 0;
    margin-bottom: 48px;
}

body:has(.cyber-risk-section) .page-banner .page-banner-title {
    max-width: 940px;
}

.cyber-risk-section {
    background-color: hsl(var(--dark));
    overflow: hidden;
}

.cyber-risk-section .slick-list {
    overflow: unset;
    overflow-x: clip;
}

.cyber-risk-slider-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 24px;
    margin-top: 100px;
}

@media screen and (max-width: 1399px) {
    .cyber-risk-slider-wrapper {
        gap: 16px;
    }
}

.cyber-risk-slider {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    min-width: 0;
}

.cyber-risk-slider .slick-slide {
    height: inherit !important;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    padding-inline: 12px;
}

.cyber-risk-slider .slick-slide>div {
    width: 100%;
}

@media screen and (max-width: 991px) {
    .cyber-risk-slider .slick-slide {
        padding-inline: 0;
    }
}

.cyber-risk-card {
    --card-bg: #000042;
    background-color: var(--card-bg);
    border-radius: 20px;
    height: 100%;
    overflow: hidden;
    position: relative;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    padding: 80px 48px;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    gap: 130px;
}

@media screen and (max-width: 1399px) {
    .cyber-risk-card {
        padding: 40px 24px;
        gap: 100px;
    }
}

@media screen and (max-width: 1199px) {
    .cyber-risk-card {
        gap: 80px;
    }
}

@media screen and (max-width: 991px) {
    .cyber-risk-card {
        padding: 36px 20px;
    }
}

@media (min-width: 992px) {
    .cyber-risk-slider .slick-center .cyber-risk-card {
        -webkit-transform: scaleY(1.2);
        transform: scaleY(1.2);
    }

    .cyber-risk-slider .slick-center .cyber-risk-card .cyber-risk-card-content,
    .cyber-risk-slider .slick-center .cyber-risk-card .cyber-risk-card-icon {
        -webkit-transform: scaleY(0.8);
        transform: scaleY(0.8);
    }
}

.cyber-risk-card-blob {
    position: absolute;
    width: 590px;
    height: 590px;
    border-radius: 50%;
    background: radial-gradient(circle at 40% 40%, hsl(var(--base)/0.18) 0%, hsl(var(--dark)/0.1) 40%, transparent 68%);
    top: -297px;
    left: -297px;
    pointer-events: none;
    z-index: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.cyber-risk-card-icon {
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

.cyber-risk-card-icon img {
    --size: 124px;
    width: var(--size);
    height: var(--size);
    width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

@media screen and (max-width: 1199px) {
    .cyber-risk-card-icon img {
        --size: 90px;
    }
}

.cyber-risk-card-content {
    position: relative;
    z-index: 1;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

.cyber-risk-card-title {
    font-size: 2.5rem;
    font-weight: 900;
    color: hsl(var(--white));
    line-height: 1.1;
    margin-bottom: 12px;
}

@media screen and (max-width: 1399px) {
    .cyber-risk-card-title {
        font-size: 2rem;
    }
}

@media screen and (max-width: 1199px) {
    .cyber-risk-card-title {
        font-size: 1.75rem;
    }
}

@media screen and (max-width: 991px) {
    .cyber-risk-card-title {
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 767px) {
    .cyber-risk-card-title {
        font-size: 1.375rem;
    }
}

.cyber-risk-card-desc {
    font-size: 1rem;
    color: hsl(var(--white)/0.75);
    line-height: 1.6;
}

@media screen and (max-width: 767px) {
    .cyber-risk-card-desc {
        font-size: 0.9375rem;
    }
}

.cyber-risk-arrow {
    --size: 80px;
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    border: 1px solid hsl(var(--white)/0.5);
    background: transparent;
    color: hsl(var(--white));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    cursor: pointer;
    -webkit-transition: background-color 0.3s ease, border-color 0.3s ease;
    transition: background-color 0.3s ease, border-color 0.3s ease;
}

.cyber-risk-arrow i {
    font-size: calc(var(--size) / 2);
}

.cyber-risk-arrow.cyber-risk-arrow--prev i {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.cyber-risk-arrow:hover {
    background-color: hsl(var(--white)/0.08);
    border-color: hsl(var(--white)/0.8);
}

@media screen and (max-width: 1399px) {
    .cyber-risk-arrow {
        --size: 64px;
    }
}

@media screen and (max-width: 1199px) {
    .cyber-risk-arrow {
        --size: 56px;
    }
}

@media screen and (max-width: 991px) {
    .cyber-risk-arrow {
        --size: 48px;
    }
}

@media screen and (max-width: 424px) {
    .cyber-risk-arrow {
        display: none;
    }
}

.cyber-protect-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 16px;
}

@media screen and (max-width: 991px) {
    .cyber-protect-list {
        gap: 12px;
    }
}

.cyber-protect-item {
    background-color: hsl(var(--white));
    border-radius: 20px;
    padding: 24px;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 16px;
}

.cyber-protect-item-icon {
    width: 24px;
    height: 24px;
    background-color: #defaea;
    border-radius: 50%;
    display: grid;
    place-content: center;
    font-size: 10px;
    color: hsl(var(--base));
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-top: 4px;
}

.cyber-protect-item-content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.cyber-protect-item-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: hsl(var(--heading-color));
    line-height: 1.3;
    margin-bottom: 4px;
}

@media screen and (max-width: 1199px) {
    .cyber-protect-item-title {
        font-size: 1.25rem;
    }
}

@media screen and (max-width: 991px) {
    .cyber-protect-item-title {
        font-size: 1.125rem;
    }
}

.cyber-protect-item-desc {
    font-size: 1.125rem;
    color: hsl(var(--body-color));
    line-height: 1.6;
    margin-bottom: 0;
}

@media screen and (max-width: 1199px) {
    .cyber-protect-item-desc {
        font-size: 1rem;
    }
}

@media screen and (max-width: 767px) {
    .cyber-protect-item-desc {
        font-size: 0.9375rem;
    }
}

.cyber-protect-img-wrapper {
    border-radius: 20px;
    overflow: hidden;
    height: 100%;
}

.cyber-protect-img-wrapper img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    display: block;
}

.hapi-tool-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 32px;
}

@media screen and (max-width: 1199px) {
    .hapi-tool-list {
        gap: 24px;
    }
}

@media screen and (max-width: 991px) {
    .hapi-tool-list {
        gap: 16px;
    }
}

.hapi-tool-item {
    border-radius: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    padding: 24px;
    overflow: hidden;
    background: linear-gradient(135deg, hsl(var(--base)) 0%, transparent 100%);
    z-index: 1;
    position: relative;
}

.hapi-tool-item::after {
    content: "";
    position: absolute;
    inset: 2px;
    background-color: hsl(var(--dark));
    z-index: -1;
    border-radius: inherit;
}

.hapi-tool-item-icon {
    width: 32px;
    height: 32px;
    background-color: hsl(var(--white));
    border-radius: 4px;
    -webkit-box-shadow: 0 0 4px 0 hsl(var(--black)/0.1);
    box-shadow: 0 0 4px 0 hsl(var(--black)/0.1);
    display: grid;
    place-content: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-size: 24px;
    color: hsl(var(--base));
}

.hapi-tool-item-title {
    font-weight: 700;
    color: hsl(var(--white));
}

.hapi-tool-img {
    border-radius: 20px;
    background: linear-gradient(135deg, hsl(var(--base)) 0%, transparent 100%);
    z-index: 1;
    padding: 2px;
}

.hapi-tool-img img {
    width: 100%;
    display: block;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: inherit;
}

.cyber-process .section-heading-desc {
    max-width: 440px;
}

.cyber-process .ux-how-steps {
    gap: 70px;
    max-width: 1110px;
    width: 100%;
    margin-inline: auto;
}

.cyber-plan-grid {
    margin-top: 80px;
}

@media screen and (max-width: 1199px) {
    .cyber-plan-grid {
        margin-top: 60px;
    }
}

@media screen and (max-width: 991px) {
    .cyber-plan-grid {
        margin-top: 42px;
    }
}

.cyber-plan-card {
    background-color: hsl(var(--section-bg));
    border-radius: 20px;
    overflow: hidden;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.cyber-plan-card-header {
    padding: 16px 16px 0;
}

.cyber-plan-card-name {
    font-size: 1.25rem;
    font-weight: 700;
    color: hsl(var(--heading-color));
    line-height: 1.4;
}

.cyber-plan-card-body {
    background-color: hsl(var(--white));
    border-radius: 20px;
    padding: 16px;
    margin-top: 12px;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.cyber-plan-card-tagline {
    font-size: 1rem;
    color: hsl(var(--body-color));
    line-height: 1.6;
    margin-bottom: 20px;
}

.cyber-plan-card--featured {
    background: linear-gradient(75.8deg, transparent 0%, #7b61ff 45%, hsl(var(--base)) 75%, transparent 120%);
}

@media (min-width: 992px) {
    .cyber-plan-card--featured {
        -webkit-transform: scaleY(1.05);
        transform: scaleY(1.05);
    }

    .cyber-plan-card--featured .cyber-plan-card-body *,
    .cyber-plan-card--featured .cyber-plan-card-header * {
        -webkit-transform: scaleY(0.98);
        transform: scaleY(0.98);
    }
}

.cyber-plan-card--featured .cyber-plan-card-name {
    color: hsl(var(--white));
}

.cyber-plan-card--featured .cyber-plan-card-body {
    background-color: hsl(var(--dark));
}

.cyber-plan-card--featured .cyber-plan-card-tagline {
    color: hsl(var(--white)/0.75);
}

.cyber-plan-card--featured .cyber-plan-features-title {
    color: hsl(var(--white));
}

.cyber-plan-card--featured .cyber-plan-list-item {
    color: hsl(var(--light));
}

.cyber-plan-card--featured .cyber-plan-list-item.cyber-plan-list-item--check .fas {
    color: hsl(var(--base));
}

.cyber-plan-card--featured .cyber-plan-list-item.cyber-plan-list-item--bonus .fas {
    color: hsl(var(--warning));
}

.cyber-plan-price-box {
    background-color: hsl(var(--light-bg));
    border-radius: 15px;
    padding: 16px;
    margin-bottom: 24px;
}

.cyber-plan-card--featured .cyber-plan-price-box {
    background-color: hsl(var(--white)/0.12);
}

.cyber-plan-price {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    gap: 4px;
    margin-bottom: 16px;
}

.cyber-plan-amount {
    font-size: 4rem;
    font-weight: 700;
    color: hsl(var(--heading-color));
    line-height: 1.15;
}

@media screen and (max-width: 1399px) {
    .cyber-plan-amount {
        font-size: 3.25rem;
    }
}

@media screen and (max-width: 1199px) {
    .cyber-plan-amount {
        font-size: 2.75rem;
    }
}

.cyber-plan-amount--custom {
    font-size: 3.25rem;
}

@media screen and (max-width: 1199px) {
    .cyber-plan-amount--custom {
        font-size: 2.5rem;
    }
}

.cyber-plan-card--featured .cyber-plan-amount {
    color: hsl(var(--white));
}

.cyber-plan-period {
    font-size: 1.125rem;
    color: hsl(var(--body-color));
    line-height: 1.6;
}

.cyber-plan-card--featured .cyber-plan-period {
    color: hsl(var(--white)/0.6);
}

.cyber-plan-features {
    margin-bottom: 24px;
}

.cyber-plan-features:last-child {
    margin-bottom: 0;
}

.cyber-plan-features-title {
    font-size: 1.125rem;
    font-weight: 700;
    color: hsl(var(--heading-color));
    line-height: 1.4;
    margin-bottom: 16px;
}

.cyber-plan-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 16px;
}

.cyber-plan-list-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    font-size: 1.125rem;
    color: hsl(var(--secondary));
    line-height: 1.2;
}

@media screen and (max-width: 1199px) {
    .cyber-plan-list-item {
        font-size: 1rem;
    }
}

.cyber-plan-list-item .icon {
    width: 18px;
    height: 18px;
    font-size: 8px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.cyber-plan-list-item .icon:not(:has(svg)) {
    border-radius: 50%;
    color: hsl(var(--base));
    border: 1px solid hsl(var(--base));
}

.cyber-plan-list-item .icon svg {
    height: 18px;
    width: 18px;
    color: hsl(var(--base));
}

.cyber-cta {
    text-align: center;
}

.cyber-cta-name {
    border-radius: 250px;
    border: 2px solid hsl(var(--danger));
    background: hsl(var(--danger)/0.15);
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    padding: 6px 18px;
    font-weight: 700;
    font-size: 20px;
    line-height: 140%;
    color: hsl(var(--danger));
    position: relative;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
    margin-bottom: 32px;
}

@media screen and (max-width: 1199px) {
    .cyber-cta-name {
        font-size: 18px;
    }
}

@media screen and (max-width: 991px) {
    .cyber-cta-name {
        font-size: 17px;
    }
}

@media screen and (max-width: 767px) {
    .cyber-cta-name {
        font-size: 16px;
    }
}

.cyber-cta-name::before {
    content: "";
    width: 10px;
    height: 10px;
    background-color: hsl(var(--danger));
    border-radius: 50%;
}

.cyber-cta-title {
    max-width: 1200px;
    width: 100%;
    margin-inline: auto;
    font-size: var(--extra-fs);
    font-weight: 900;
    text-align: center;
    margin-bottom: 12px;
    line-height: 1;
    color: hsl(var(--white));
    --extra-fs: 104px;
}

@media screen and (max-width: 1599px) {
    .cyber-cta-title {
        --extra-fs: 84px;
    }
}

@media screen and (max-width: 1199px) {
    .cyber-cta-title {
        --extra-fs: 64px;
    }
}

@media screen and (max-width: 767px) {
    .cyber-cta-title {
        --extra-fs: 48px;
    }
}

.cyber-cta-title span {
    display: inline;
}

.cyber-cta-desc {
    font-size: 18px;
    color: hsl(var(--white));
    margin-bottom: 24px;
}

.tech-cover-section {
    position: relative;
    z-index: 1;
    background-color: hsl(var(--dark));
    border-radius: 40px;
}

.tech-cover-section .section-heading-desc {
    max-width: 400px;
    width: 100%;
}

@media screen and (max-width: 1399px) {
    .tech-cover-section {
        border-radius: 32px;
    }
}

@media screen and (max-width: 1199px) {
    .tech-cover-section {
        border-radius: 24px;
    }
}

@media screen and (max-width: 575px) {
    .tech-cover-section {
        border-radius: 20px;
    }
}

.tech-cover-section::after, .tech-cover-section::before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: clamp(9.375rem, -187.3587rem + 262.3116vw, 42rem);
    height: 100%;
    background-image: linear-gradient(to right, hsl(var(--base)) 1px, transparent 1px), linear-gradient(to bottom, hsl(var(--base)) 1px, transparent 1px);
    background-size: 20px 20px;
    -webkit-mask-image: radial-gradient(ellipse 70% 90% at 100% 50%, hsl(var(--black)) 30%, transparent 70%);
    mask-image: radial-gradient(ellipse 70% 90% at 100% 50%, hsl(var(--black)) 30%, transparent 70%);
    opacity: 0.125;
    z-index: -1;
}

.tech-cover-section::after {
    right: auto;
    -webkit-transform: scale(-1);
    transform: scale(-1);
    left: 0;
}

.tech-cover-section .section-heading .text {
    --overlay-bg: hsl(var(--dark)) !important;
}

.cover-card {
    --cover-card-p: 32px;
    --cover-card-icon-size: 80px;
    --cover-card-icon-inner: 40px;
    --cover-card-radius: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    padding: var(--cover-card-p);
    border: 1px solid hsl(var(--white)/0.12);
    border-radius: var(--cover-card-radius);
    background-color: hsl(var(--black)/0.15);
    -webkit-backdrop-filter: blur(11px);
    backdrop-filter: blur(11px);
    -webkit-transition: border-color 0.3s ease, background-color 0.3s ease;
    transition: border-color 0.3s ease, background-color 0.3s ease;
}

@media screen and (max-width: 1399px) {
    .cover-card {
        --cover-card-p: 24px;
    }
}

@media screen and (max-width: 1199px) {
    .cover-card {
        --cover-card-p: 20px;
        --cover-card-icon-size: 68px;
        --cover-card-icon-inner: 34px;
        --cover-card-radius: 16px;
    }
}

@media screen and (max-width: 575px) {
    .cover-card {
        --cover-card-p: 16px;
        --cover-card-icon-size: 60px;
        --cover-card-icon-inner: 30px;
        --cover-card-radius: 12px;
    }
}

.cover-card:hover {
    background-color: hsl(var(--white)/0.15);
    border-color: transparent;
}

.cover-card-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: var(--cover-card-icon-size);
    height: var(--cover-card-icon-size);
    border-radius: 12px;
    -webkit-transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
    transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
    margin-bottom: clamp(60px, 7vw, 92px);
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-size: var(--cover-card-icon-inner);
    color: hsl(var(--white));
    border-radius: 12px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.6);
    -webkit-box-shadow: 0 0 12px 0 hsl(var(--black)/0.1);
    box-shadow: 0 0 12px 0 hsl(var(--black)/0.1);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

@media screen and (max-width: 1199px) {
    .cover-card-icon {
        font-size: 28px;
    }
}

@media screen and (max-width: 575px) {
    .cover-card-icon {
        font-size: 24px;
    }
}

.cover-card-title {
    font-weight: 700;
    color: hsl(var(--white));
    margin-bottom: 12px;
    line-height: 1.3;
}

.cover-card-desc {
    font-size: 1rem;
    font-weight: 400;
    color: hsl(var(--light));
    line-height: 1.6;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin-bottom: 24px;
}

@media screen and (max-width: 575px) {
    .cover-card-desc {
        font-size: 0.9375rem;
    }
}

.tech-use-cases-section {
    overflow: hidden;
    position: relative;
}

.tech-use-cases-section::after {
    content: "";
    position: absolute;
    top: 0;
    height: 100%;
    width: var(--left-side-gap);
    background-color: hsl(var(--light-bg));
}

.use-cases-arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.use-cases-arrow .slick-arrow {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    border: 1px solid hsl(var(--black)/0.5);
    font-size: 30px;
    background: transparent;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    cursor: pointer;
    color: hsl(var(--heading-color));
    -webkit-transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
    transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
    position: unset;
    -webkit-transform: unset;
    transform: unset;
    top: 0;
    left: 0;
    font-size: 50px;
}

@media screen and (max-width: 1199px) {
    .use-cases-arrow .slick-arrow {
        width: 64px;
        height: 64px;
        font-size: 36px;
    }
}

@media screen and (max-width: 575px) {
    .use-cases-arrow .slick-arrow {
        width: 52px;
        height: 52px;
        font-size: 32px;
    }
}

.use-cases-arrow .slick-arrow--next {
    border-color: hsl(var(--base));
    color: hsl(var(--base));
}

.use-cases-arrow .slick-arrow:hover {
    background-color: hsl(var(--base));
    border-color: hsl(var(--base));
    color: hsl(var(--white));
}

.use-cases-slider .slick-list {
    overflow: visible;
}

.use-cases-slider .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.use-cases-slider .slick-slide {
    padding-right: 24px;
    height: inherit;
}

.use-cases-slider .slick-slide>div {
    height: 100%;
}

@media screen and (max-width: 575px) {
    .use-cases-slider .slick-slide {
        padding-right: 16px;
    }
}

.use-case-card {
    --uc-w: 424px;
    --uc-p: 32px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    padding: var(--uc-p);
    background-color: hsl(var(--white));
    border-radius: 20px;
    width: var(--uc-w) !important;
}

@media screen and (max-width: 1399px) {
    .use-case-card {
        --uc-p: 28px;
        --uc-w: 400px;
    }
}

@media screen and (max-width: 1199px) {
    .use-case-card {
        --uc-p: 24px;
        --uc-w: 380px;
        border-radius: 16px;
    }
}

@media screen and (max-width: 575px) {
    .use-case-card {
        --uc-p: 20px;
        --uc-w: 300px;
        border-radius: 14px;
    }
}

.use-case-card-icon {
    width: 64px;
    height: 64px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 12px;
    border: 1px solid hsl(var(--border-color));
    background: hsl(var(--white)/0.61);
    backdrop-filter: blur(11px);
    -webkit-backdrop-filter: blur(11px);
    -webkit-box-shadow: 0 0 12px 0 hsl(var(--black)/0.1);
    box-shadow: 0 0 12px 0 hsl(var(--black)/0.1);
    color: hsl(var(--base));
    margin-bottom: clamp(28px, 5vw, 64px);
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-size: 32px;
}

.use-case-card-title {
    font-size: clamp(1.25rem, 2vw, 1.75rem);
    font-weight: 700;
    color: hsl(var(--heading-color));
    line-height: 1.15;
    margin-bottom: 12px;
}

.use-case-card-desc {
    font-size: 1rem;
    font-weight: 400;
    color: hsl(var(--body-color));
    line-height: 1.6;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin-bottom: 24px;
}

@media screen and (max-width: 575px) {
    .use-case-card-desc {
        font-size: 0.9375rem;
    }
}

.use-case-card-quote {
    margin-top: auto;
    background-color: hsl(var(--base)/0.08);
    border-left: 3px solid hsl(var(--base));
    border-radius: 12px;
    padding: 16px;
}

.use-case-card-quote p {
    font-style: italic;
    color: hsl(var(--base));
    font-size: 0.9375rem;
    line-height: 1.6;
    margin: 0;
}

.tech-choose-card {
    --thumb-w: 236px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 24px;
    border-radius: 20px;
    background: hsl(var(--white));
    overflow: hidden;
}

@media screen and (max-width: 575px) {
    .tech-choose-card {
        gap: 16px;
    }
}

@media screen and (max-width: 424px) {
    .tech-choose-card {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 0;
    }
}

@media screen and (max-width: 1199px) {
    .tech-choose-card {
        --thumb-w: 180px;
    }
}

.tech-choose-card-thumb {
    width: var(--thumb-w);
}

@media screen and (max-width: 424px) {
    .tech-choose-card-thumb {
        width: 100%;
        height: 240px;
    }
}

.tech-choose-card-content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding: 40px 24px 40px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media screen and (max-width: 1199px) {
    .tech-choose-card-content {
        padding: 24px 16px 24px 0;
    }
}

@media screen and (max-width: 424px) {
    .tech-choose-card-content {
        padding: 24px;
    }
}

.tech-choose-card-title {
    max-width: 320px;
    width: 100%;
    margin-bottom: 6px;
}

.tech-choose-card-desc {
    color: hsl(var(--secondary));
    font-size: 18px;
}

.tech-choose-card-link {
    margin-top: auto;
    color: hsl(var(--black));
    font-size: 18px;
    font-weight: 700;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
}

.tech-choose-card-link .icon {
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
}

.tech-choose-card-link:hover {
    text-decoration: underline;
    color: hsl(var(--black));
}

.tech-choose-card-link:hover .icon {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.tech-struc-card {
    padding: 24px;
    border-radius: 20px;
    background-color: hsl(var(--white));
    height: 100%;
}

@media screen and (max-width: 1199px) {
    .tech-struc-card {
        padding: 16px;
        border-radius: 16px;
    }
}

.tech-struc-card-thumb {
    border-radius: 16px;
    overflow: hidden;
}

@media screen and (max-width: 1199px) {
    .tech-struc-card-thumb {
        border-radius: 12px;
    }
}

.tech-struc-card-content {
    margin-top: 32px;
}

@media screen and (max-width: 1199px) {
    .tech-struc-card-content {
        margin-top: 24px;
    }
}

.tech-struc-card-subtitle {
    color: hsl(var(--base));
    font-weight: 700;
    line-height: 160%;
    letter-spacing: 5px;
    margin-bottom: 10px;
}

@media screen and (max-width: 1199px) {
    .tech-struc-card-subtitle {
        font-size: 14px;
    }
}

.tech-struc-card-desc {
    margin-top: 4px;
    color: hsl(var(--secondary));
}

.tech-plan-card {
    --plan-radius: 20px;
    height: 100%;
    background-color: hsl(var(--white));
    border-radius: var(--plan-radius);
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media screen and (max-width: 1199px) {
    .tech-plan-card {
        --plan-radius: 16px;
    }
}

@media screen and (max-width: 575px) {
    .tech-plan-card {
        --plan-radius: 14px;
    }
}

.tech-plan-card-header {
    padding: 16px;
    background-color: hsl(var(--white));
    border-radius: var(--plan-radius);
    -webkit-box-shadow: 0px 0px 4px 0px hsl(var(--black)/0.04), 0px 4px 8px 0px hsl(var(--black)/0.06);
    box-shadow: 0px 0px 4px 0px hsl(var(--black)/0.04), 0px 4px 8px 0px hsl(var(--black)/0.06);
}

.tech-plan-card-inner {
    position: relative;
    background-color: hsl(var(--section-bg));
    border-radius: 15px;
    padding: 24px;
    margin-bottom: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 4px;
}

@media screen and (max-width: 1199px) {
    .tech-plan-card-inner {
        border-radius: 12px;
        padding: 20px;
    }
}

@media screen and (max-width: 575px) {
    .tech-plan-card-inner {
        padding: 16px;
    }
}

.tech-plan-card.active .tech-plan-card-inner {
    background-color: hsl(var(--black));
}

.tech-plan-card-badge {
    font-size: 1rem;
    font-weight: 700;
    color: hsl(var(--base));
    letter-spacing: 5px;
    line-height: 1.6;
    margin-bottom: 7px;
}

.tech-plan-card-popular {
    position: absolute;
    top: 24px;
    right: 16px;
    border: 1px solid hsl(var(--white));
    border-radius: 6px;
    padding: 4px 11px;
    font-size: 14px;
    font-weight: 700;
    color: hsl(var(--white));
    line-height: 1.5;
    background: linear-gradient(31deg, transparent 0%, #7b61ff 35%, hsl(var(--base)) 65%, transparent 100%);
}

.tech-plan-card-info {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.tech-plan-card-title {
    font-size: clamp(1.375rem, 2vw, 1.75rem);
    font-weight: 700;
    line-height: 1.2;
    color: hsl(var(--heading-color));
    margin-bottom: 4px;
}

.tech-plan-card.active .tech-plan-card-title {
    color: hsl(var(--white));
}

.tech-plan-card-desc {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.6;
    color: hsl(var(--secondary));
}

.tech-plan-card.active .tech-plan-card-desc {
    color: hsl(var(--light));
}

.tech-plan-card-price {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    gap: 4px;
    margin-top: clamp(12px, 3vw, 24px);
}

.tech-plan-card-amount {
    font-size: clamp(2.5rem, 5vw, 4rem);
    font-weight: 700;
    line-height: 1.15;
    color: hsl(var(--heading-color));
}

.tech-plan-card.active .tech-plan-card-amount {
    color: hsl(var(--white));
}

.tech-plan-card-unit {
    font-size: 1.125rem;
    font-weight: 400;
    line-height: 1.6;
    color: hsl(var(--secondary));
    padding-bottom: 6px;
}

.tech-plan-card.active .tech-plan-card-unit {
    color: hsl(var(--light));
}

.tech-plan-card-features {
    padding: 24px;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

@media screen and (max-width: 1199px) {
    .tech-plan-card-features {
        padding: 20px;
    }
}

@media screen and (max-width: 575px) {
    .tech-plan-card-features {
        padding: 16px;
    }
}

.tech-plan-card-features-title {
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.4;
    color: hsl(var(--heading-color));
    margin-bottom: 12px;
}

.tech-plan-card-features-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 24px;
}

@media screen and (max-width: 575px) {
    .tech-plan-card-features-list {
        gap: 16px;
    }
}

.tech-plan-card-features-list li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    font-size: 1.125rem;
    font-weight: 400;
    color: hsl(var(--secondary));
    line-height: 1.2;
}

@media screen and (max-width: 1199px) {
    .tech-plan-card-features-list li {
        font-size: 1rem;
    }
}

.tech-plan-card-features-list li .icon-check-circle-fill {
    font-size: 1.125rem;
    color: hsl(var(--base));
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.mvp-banner .page-banner-title {
    -webkit-text-fill-color: unset;
}

.mvp-banner .page-banner-title span {
    display: block;
}

@media (min-width: 992px) {
    .mvp-banner .page-banner-content {
        text-align: left;
    }

    .mvp-banner .page-banner-desc {
        margin-left: 0;
        margin-bottom: 32px;
    }
}

.mvp-banner-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 24px;
    margin-bottom: 64px;
}

@media screen and (max-width: 991px) {
    .mvp-banner-btn {
        margin-block: 32px;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

@media screen and (max-width: 424px) {
    .mvp-banner-btn {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .mvp-banner-btn .btn {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.mvp-banner-note {
    color: hsl(var(--base));
    font-size: 18px;
    font-weight: 500;
    line-height: 120%;
    letter-spacing: 5px;
    text-transform: uppercase;
}

.mvp-banner-flow {
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    background: hsl(var(--white)/0.1);
    border-radius: 20px;
    overflow: hidden;
    padding: 32px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0;
    height: 100%;
}

@media screen and (max-width: 1199px) {
    .mvp-banner-flow {
        padding: 24px;
        border-radius: 16px;
    }
}

@media screen and (max-width: 991px) {
    .mvp-banner-flow {
        max-width: 540px;
        margin: 0 auto;
    }
}

.mvp-flow-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 24px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.mvp-flow-title {
    font-size: 14px;
    font-weight: 500;
    color: hsl(var(--white));
    letter-spacing: 5px;
    text-transform: uppercase;
    line-height: 1.2;
    margin: 0;
}

.mvp-flow-cards {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 16px;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.mvp-flow-card {
    background: hsl(var(--white)/0.12);
    border-radius: 15px;
    overflow: hidden;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    min-height: 140px;
    cursor: pointer;
    -webkit-transition: background 0.4s ease;
    transition: background 0.4s ease;
}

.mvp-flow-card.active {
    background: hsl(var(--base));
}

.mvp-flow-card.active .mvp-flow-card-inner {
    opacity: 1;
}

@media screen and (max-width: 767px) {
    .mvp-flow-card {
        min-height: 120px;
    }
}

.mvp-flow-card-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 4px;
    height: 100%;
    padding: 20px;
    opacity: 0.3;
    -webkit-transition: opacity 0.4s ease;
    transition: opacity 0.4s ease;
}

.mvp-flow-card-icon {
    width: 44px;
    height: 44px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: hsl(var(--white));
    margin-bottom: 2px;
}

.mvp-flow-card-icon svg {
    width: 100%;
    height: 100%;
}

.mvp-flow-card-label {
    font-size: 14px;
    font-weight: 500;
    color: hsl(var(--white));
    letter-spacing: 5px;
    text-transform: uppercase;
    line-height: 1.2;
}

.mvp-flow-card-title {
    font-size: 28px;
    font-weight: 700;
    color: hsl(var(--white));
    line-height: 1.25;
    margin: 0;
}

@media screen and (max-width: 1199px) {
    .mvp-flow-card-title {
        font-size: 24px;
    }
}

@media screen and (max-width: 767px) {
    .mvp-flow-card-title {
        font-size: 22px;
    }
}

.mvp-process-wrapper {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    border-radius: 15px;
    overflow: hidden;
    margin-top: 60px;
}

@media screen and (max-width: 1199px) {
    .mvp-process-wrapper {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media screen and (max-width: 767px) {
    .mvp-process-wrapper {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 424px) {
    .mvp-process-wrapper {
        grid-template-columns: 1fr;
    }
}

.mvp-process-card {
    padding: 24px;
    min-height: 300px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    background: hsl(var(--white));
    cursor: pointer;
    -webkit-transition: background 0.35s ease;
    transition: background 0.35s ease;
}

.mvp-process-card:not(:last-child) {
    border-right: 1px solid hsl(var(--border-color));
}

@media screen and (min-width: 768px) and (max-width: 1199px) and (max-width: 1199px) {
    .mvp-process-card:nth-child(3) {
        border-right: 0;
    }
}

@media (min-width: 768px) and (max-width: 1199px) {
    .mvp-process-card:nth-child(1), .mvp-process-card:nth-child(2), .mvp-process-card:nth-child(3) {
        border-bottom: 1px solid hsl(var(--border-color));
    }
}

@media (min-width: 425px) and (max-width: 767px) {
    .mvp-process-card {
        border-bottom: 1px solid hsl(var(--border-color));
    }
}

@media screen and (min-width: 425px) and (max-width: 767px) and (max-width: 1199px) {
    .mvp-process-card:nth-child(2), .mvp-process-card:nth-child(4) {
        border-right: 0;
    }
}

@media (min-width: 425px) and (max-width: 767px) {
    .mvp-process-card:last-child, .mvp-process-card:nth-last-child(2) {
        border-bottom: 0;
    }
}

@media screen and (max-width: 424px) {
    .mvp-process-card {
        border-right: 0 !important;
    }

    .mvp-process-card:not(:last-child) {
        border-bottom: 1px solid hsl(var(--border-color));
    }
}

.mvp-process-card:hover {
    background: hsl(var(--base));
}

.mvp-process-card:hover .mvp-process-num,
.mvp-process-card:hover .mvp-process-icon,
.mvp-process-card:hover .mvp-process-card-title,
.mvp-process-card:hover .mvp-process-card-desc {
    color: hsl(var(--white));
}

@media screen and (max-width: 1199px) {
    .mvp-process-card {
        min-height: 260px;
    }
}

@media screen and (max-width: 767px) {
    .mvp-process-card {
        min-height: 200px;
    }
}

@media screen and (max-width: 424px) {
    .mvp-process-card {
        min-height: 160px;
    }
}

.mvp-process-card-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.mvp-process-num {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.6;
    color: hsl(var(--heading-color));
    -webkit-transition: color 0.35s ease;
    transition: color 0.35s ease;
}

.mvp-process-icon {
    font-size: 22px;
    color: hsl(var(--heading-color));
    -webkit-transition: color 0.35s ease;
    transition: color 0.35s ease;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.mvp-process-card-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 6px;
}

.mvp-process-card-title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3;
    color: hsl(var(--heading-color));
    margin: 0;
    -webkit-transition: color 0.35s ease;
    transition: color 0.35s ease;
}

@media screen and (max-width: 1199px) {
    .mvp-process-card-title {
        font-size: 22px;
    }
}

@media screen and (max-width: 767px) {
    .mvp-process-card-title {
        font-size: 20px;
    }
}

.mvp-process-card-desc {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6;
    color: hsl(var(--body-color));
    margin: 0;
    -webkit-transition: color 0.35s ease;
    transition: color 0.35s ease;
}

@media screen and (max-width: 767px) {
    .mvp-process-card-desc {
        font-size: 14px;
    }
}

.mvp-report-info {
    padding: 24px;
    border-radius: 20px;
    border: 1px solid hsl(var(--white)/0.15);
    background-color: hsl(var(--white)/0.05);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

@media screen and (max-width: 1399px) {
    .mvp-report-info {
        padding: 20px;
        border-radius: 16px;
    }
}

@media screen and (max-width: 1199px) {
    .mvp-report-info {
        padding: 16px;
    }
}

@media screen and (max-width: 991px) {
    .mvp-report-info {
        border-radius: 12px;
    }
}

.mvp-report-info .count {
    color: hsl(var(--base));
    margin-bottom: 40px;
}

.mvp-report-info .title {
    color: hsl(var(--light));
    line-height: 120%;
    letter-spacing: 5px;
    text-transform: uppercase;
    font-weight: 500;
}

@media screen and (max-width: 1399px) {
    .mvp-report-info .title {
        letter-spacing: 3px;
        font-size: 14px;
    }
}

.mvp-report {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    padding: 20px 0;
}

@media screen and (max-width: 991px) {
    .mvp-report {
        padding: 40px 0 0;
    }
}

.mvp-cycle-widget {
    position: relative;
    width: 100%;
    max-width: 460px;
    aspect-ratio: 1/1;
    margin: 0 auto;
}

@media screen and (max-width: 1199px) {
    .mvp-cycle-widget {
        max-width: 380px;
    }
}

@media screen and (max-width: 991px) {
    .mvp-cycle-widget {
        max-width: 460px;
    }
}

@media screen and (max-width: 767px) {
    .mvp-cycle-widget {
        max-width: 360px;
    }
}

@media screen and (max-width: 424px) {
    .mvp-cycle-widget {
        max-width: 300px;
    }
}

.mvp-cycle-glow {
    position: absolute;
    border-radius: 250px;
    -webkit-filter: blur(40px);
    filter: blur(40px);
    opacity: 0.5;
    pointer-events: none;
    background: linear-gradient(23deg, hsl(var(--base)), hsl(var(--warning)));
}

.mvp-cycle-glow.glow-top-right {
    width: 26%;
    height: 11%;
    top: 10%;
    right: 12%;
}

.mvp-cycle-glow.glow-right {
    width: 28%;
    height: 11%;
    top: 54%;
    right: 3%;
}

.mvp-cycle-glow.glow-bottom-right {
    width: 26%;
    height: 11%;
    bottom: 6%;
    right: 16%;
}

.mvp-cycle-rings {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
    border-radius: 50%;
    border: 1px dashed hsl(var(--secondary));
    -webkit-animation: rotateFull 10s linear infinite;
    animation: rotateFull 10s linear infinite;
}

.mvp-cycle-rings::after {
    content: "";
    position: absolute;
    inset: 20px;
    border: 1px dashed hsl(var(--secondary));
    border-radius: 50%;
}

.mvp-cycle-rings::before {
    content: "";
    position: absolute;
    inset: 40px;
    border: 2px solid transparent;
    border-top-color: hsl(var(--base));
    border-right-color: hsl(var(--base));
    border-radius: 50%;
    -webkit-animation: rotateFull 10s linear infinite;
    animation: rotateFull 10s linear infinite;
}

@-webkit-keyframes rotateFull {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes rotateFull {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

.mvp-cycle-center {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center;
    width: 58%;
    pointer-events: none;
}

.mvp-cycle-label {
    display: block;
    font-size: 13px;
    font-weight: 500;
    color: hsl(var(--base));
    letter-spacing: 5px;
    text-transform: uppercase;
    line-height: 1.2;
    margin-bottom: 10px;
}

@media screen and (max-width: 1199px) {
    .mvp-cycle-label {
        font-size: 11px;
        letter-spacing: 3px;
    }
}

@media screen and (max-width: 767px) {
    .mvp-cycle-label {
        font-size: 10px;
        margin-bottom: 6px;
    }
}

.mvp-cycle-title {
    font-size: 48px;
    font-weight: 900;
    line-height: 0.92;
    color: hsl(var(--white));
    margin: 0;
}

.mvp-cycle-title .mvp-cycle-muted {
    color: hsl(var(--body-color));
}

@media screen and (max-width: 1199px) {
    .mvp-cycle-title {
        font-size: 38px;
    }
}

@media screen and (max-width: 767px) {
    .mvp-cycle-title {
        font-size: 30px;
    }
}

@media screen and (max-width: 424px) {
    .mvp-cycle-title {
        font-size: 24px;
    }
}

.mvp-cycle-badge {
    position: absolute;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 7px;
    padding: 7px 15px 7px 12px;
    border-radius: 250px;
    border: 1px solid transparent;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
    white-space: nowrap;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.mvp-cycle-badge.mvp-badge--dark {
    background: hsl(var(--black));
    color: hsl(var(--white));
    border-color: hsl(var(--white)/0.2);
}

.mvp-cycle-badge.mvp-badge--light {
    background: hsl(var(--white));
    color: hsl(var(--heading-color));
    border-color: hsl(var(--border-color));
}

.mvp-cycle-badge .mvp-badge-icon {
    font-size: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: hsl(var(--base));
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 1199px) {
    .mvp-cycle-badge {
        font-size: 13px;
        padding: 6px 12px 6px 10px;
        gap: 6px;
    }

    .mvp-cycle-badge .mvp-badge-icon {
        font-size: 15px;
    }
}

@media screen and (max-width: 767px) {
    .mvp-cycle-badge {
        font-size: 11px;
        padding: 5px 10px 5px 8px;
        gap: 5px;
    }

    .mvp-cycle-badge .mvp-badge-icon {
        font-size: 13px;
    }
}

@media screen and (max-width: 424px) {
    .mvp-cycle-badge {
        font-size: 10px;
        padding: 4px 9px 4px 7px;
    }

    .mvp-cycle-badge .mvp-badge-icon {
        font-size: 12px;
    }
}

.mvp-badge--idea {
    top: 3%;
    left: 50%;
}

.mvp-badge--build {
    top: 26.5%;
    left: 90.7%;
}

.mvp-badge--product {
    top: 73.5%;
    left: 90.7%;
}

.mvp-badge--measure {
    top: 97%;
    left: 50%;
}

.mvp-badge--data {
    top: 73.5%;
    left: 9.3%;
}

.mvp-badge--learn {
    top: 26.5%;
    left: 9.3%;
}

.mvp-scalable .section-heading {
    margin-bottom: 60px;
}

.mvp-scalable-top {
    margin-bottom: 40px;
}

.mvp-scalable-card {
    height: 100%;
    padding: 24px;
    border-radius: 20px;
    border: 1px solid hsl(var(--white));
    background: hsl(var(--white)/0.61);
    -webkit-backdrop-filter: blur(11px);
    backdrop-filter: blur(11px);
}

@media screen and (max-width: 1399px) {
    .mvp-scalable-card {
        padding: 22px;
    }
}

@media screen and (max-width: 767px) {
    .mvp-scalable-card {
        padding: 20px;
        border-radius: 16px;
    }
}

.mvp-scalable-card-label {
    display: inline-block;
    margin-bottom: 18px;
    color: hsl(var(--base));
    font-size: 16px;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: 5px;
    text-transform: uppercase;
}

@media screen and (max-width: 767px) {
    .mvp-scalable-card-label {
        font-size: 14px;
        letter-spacing: 4px;
    }
}

.mvp-scalable-card-title {
    margin-bottom: 20px;
    padding-bottom: 18px;
    border-bottom: 1px solid hsl(var(--border-color));
    color: hsl(var(--heading-color));
    font-size: 32px;
    font-weight: 700;
    line-height: 1.15;
}

@media screen and (max-width: 1399px) {
    .mvp-scalable-card-title {
        font-size: 28px;
    }
}

@media screen and (max-width: 767px) {
    .mvp-scalable-card-title {
        font-size: 24px;
        margin-bottom: 18px;
        padding-bottom: 16px;
    }
}

.mvp-scalable-card-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.mvp-scalable-card-list li {
    position: relative;
    padding-left: 18px;
    color: hsl(var(--heading-color));
    font-size: 18px;
    font-weight: 400;
    line-height: 1.6;
}

.mvp-scalable-card-list li::before {
    content: "✦";
    position: absolute;
    top: 0;
    left: 0;
    color: hsl(var(--base));
    font-size: 14px;
}

@media screen and (max-width: 767px) {
    .mvp-scalable-card-list li {
        font-size: 16px;
    }
}

.mvp-growth-engine {
    padding: 24px;
    border-radius: 20px;
    border: 1px solid hsl(var(--base));
    background: hsl(var(--white)/0.61);
    -webkit-backdrop-filter: blur(11px);
    backdrop-filter: blur(11px);
}

@media screen and (max-width: 1399px) {
    .mvp-growth-engine {
        padding: 22px;
    }
}

@media screen and (max-width: 767px) {
    .mvp-growth-engine {
        padding: 20px;
        border-radius: 16px;
    }
}

.mvp-growth-engine-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 24px;
}

@media screen and (max-width: 1199px) {
    .mvp-growth-engine-header {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
}

.mvp-growth-engine-title-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
}

.mvp-growth-engine-icon {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: hsl(var(--base));
    font-size: 22px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 767px) {
    .mvp-growth-engine-icon {
        font-size: 20px;
    }
}

.mvp-growth-engine-title {
    margin: 0;
    color: hsl(var(--heading-color));
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3;
}

@media screen and (max-width: 1199px) {
    .mvp-growth-engine-title {
        font-size: 22px;
    }
}

@media screen and (max-width: 767px) {
    .mvp-growth-engine-title {
        font-size: 20px;
    }
}

.mvp-growth-engine-label {
    color: hsl(var(--base));
    font-size: 16px;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: 5px;
    text-transform: uppercase;
    white-space: nowrap;
}

@media screen and (max-width: 767px) {
    .mvp-growth-engine-label {
        font-size: 14px;
        letter-spacing: 4px;
    }
}

.mvp-growth-stage {
    height: 100%;
    padding: 18px;
    border-radius: 15px;
    border: 1px solid hsl(var(--border-color));
    background-color: hsl(var(--white));
}

@media screen and (max-width: 767px) {
    .mvp-growth-stage {
        padding: 16px;
        border-radius: 12px;
    }
}

.mvp-growth-stage-code {
    display: inline-block;
    margin-bottom: 12px;
    color: hsl(var(--base));
    font-size: 16px;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: 5px;
    text-transform: uppercase;
}

@media screen and (max-width: 767px) {
    .mvp-growth-stage-code {
        font-size: 14px;
        letter-spacing: 4px;
    }
}

.mvp-growth-stage-title {
    margin-bottom: 4px;
    color: hsl(var(--heading-color));
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3;
}

@media screen and (max-width: 1199px) {
    .mvp-growth-stage-title {
        font-size: 22px;
    }
}

@media screen and (max-width: 767px) {
    .mvp-growth-stage-title {
        font-size: 20px;
    }
}

.mvp-growth-stage-desc {
    margin-bottom: 0;
    color: hsl(var(--body-color));
    font-size: 18px;
    font-weight: 400;
    line-height: 1.6;
}

@media screen and (max-width: 767px) {
    .mvp-growth-stage-desc {
        font-size: 16px;
    }
}

.mvp-tech-section .section-heading {
    margin-bottom: 60px;
}

.mvp-tech-grid {
    border-radius: 20px;
    overflow: hidden;
    background-color: hsl(var(--white));
}

@media screen and (max-width: 767px) {
    .mvp-tech-grid {
        border-radius: 16px;
    }
}

.mvp-tech-grid>[class*=col-]:not(:nth-child(3n)) .mvp-tech-card {
    border-right: 1px solid hsl(var(--border-color));
}

.mvp-tech-grid>[class*=col-]:nth-child(-n+3) .mvp-tech-card {
    border-bottom: 1px solid hsl(var(--border-color));
}

@media screen and (max-width: 991px) {
    .mvp-tech-grid>[class*=col-]:nth-child(2n) .mvp-tech-card {
        border-right: 0;
    }

    .mvp-tech-grid>[class*=col-]:not(:nth-child(2n)) .mvp-tech-card {
        border-right: 1px solid hsl(var(--border-color));
    }

    .mvp-tech-grid>[class*=col-]:nth-child(-n+4) .mvp-tech-card {
        border-bottom: 1px solid hsl(var(--border-color));
    }

    .mvp-tech-grid>[class*=col-]:nth-child(n+5) .mvp-tech-card {
        border-bottom: 0;
    }
}

@media screen and (max-width: 767px) {
    .mvp-tech-grid>[class*=col-] .mvp-tech-card {
        border-right: 0 !important;
        border-bottom: 1px solid hsl(var(--border-color)) !important;
    }

    .mvp-tech-grid>[class*=col-]:last-child .mvp-tech-card {
        border-bottom: 0 !important;
    }
}

.mvp-tech-card {
    min-height: 200px;
    padding: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    background-color: hsl(var(--white));
}

@media screen and (max-width: 1199px) {
    .mvp-tech-card {
        min-height: 180px;
    }
}

@media screen and (max-width: 767px) {
    .mvp-tech-card {
        min-height: auto;
        padding: 20px;
    }
}

.mvp-tech-card-label {
    color: hsl(var(--base));
    font-size: 16px;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: 5px;
    text-transform: uppercase;
    display: inline-block;
}

@media screen and (max-width: 767px) {
    .mvp-tech-card-label {
        font-size: 14px;
        letter-spacing: 4px;
    }
}

.mvp-tech-card-logos {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 24px;
    margin-top: 40px;
}

@media screen and (max-width: 767px) {
    .mvp-tech-card-logos {
        gap: 18px;
        margin-top: 32px;
    }
}

.mvp-tech-card-logo {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.mvp-tech-card-logo img {
    height: 30px;
    width: auto;
    -o-object-fit: contain;
    object-fit: contain;
}

.qa-overview .section-heading {
    margin-bottom: 0;
}

.qa-overview .section-heading-title {
    max-width: 624px;
    margin-bottom: 0;
}

.qa-overview-content {
    max-width: 624px;
}

.qa-overview-muted {
    color: hsl(var(--body-color));
}

.qa-overview-desc {
    max-width: 536px;
    font-size: 18px;
    line-height: 1.6;
    color: hsl(var(--heading-color));
    margin-top: 24px;
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .qa-overview-desc {
        font-size: 16px;
    }
}

.qa-overview-card {
    background-color: hsl(var(--white));
    border-radius: 20px;
    padding: 24px;
    min-height: 154px;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 16px;
}

@media screen and (max-width: 1199px) {
    .qa-overview-card {
        border-radius: 16px;
    }
}

@media screen and (max-width: 991px) {
    .qa-overview-card {
        min-height: 100%;
    }
}

@media screen and (max-width: 767px) {
    .qa-overview-card {
        border-radius: 12px;
        padding: 20px;
        gap: 12px;
    }
}

.qa-overview-card__title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.25;
    color: hsl(var(--base));
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .qa-overview-card__title {
        font-size: 22px;
    }
}

.qa-overview-card__desc {
    font-size: 16px;
    line-height: 1.6;
    color: hsl(var(--heading-color));
    margin-bottom: 0;
    max-width: 264px;
}

.qa-test-section {
    position: relative;
    z-index: 1;
    background-color: hsl(var(--dark));
    border-radius: 0 0 40px 40px;
}

@media screen and (max-width: 1399px) {
    .qa-test-section {
        border-radius: 0 0 32px 32px;
    }
}

@media screen and (max-width: 1199px) {
    .qa-test-section {
        border-radius: 0 0 24px 24px;
    }
}

@media screen and (max-width: 575px) {
    .qa-test-section {
        border-radius: 0 0 20px 20px;
    }
}

.qa-test-section::after, .qa-test-section::before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: clamp(9.375rem, -187.3587rem + 262.3116vw, 42rem);
    height: 100%;
    background-image: linear-gradient(to right, hsl(var(--base)) 1px, transparent 1px), linear-gradient(to bottom, hsl(var(--base)) 1px, transparent 1px);
    background-size: 20px 20px;
    -webkit-mask-image: radial-gradient(ellipse 70% 90% at 100% 50%, hsl(var(--black)) 30%, transparent 70%);
    mask-image: radial-gradient(ellipse 70% 90% at 100% 50%, hsl(var(--black)) 30%, transparent 70%);
    opacity: 0.125;
    z-index: -1;
}

.qa-test-section::after {
    right: auto;
    -webkit-transform: scale(-1);
    transform: scale(-1);
    left: 0;
}

.qa-test-section .section-heading .text {
    --overlay-bg: hsl(var(--dark)) !important;
}

.qa-test-activity {
    height: 320px;
    position: relative;
    overflow: hidden;
}

.qa-choose-section .section-heading {
    margin-bottom: 40px;
}

@media screen and (max-width: 1199px) {
    .qa-choose-section .section-heading {
        margin-bottom: 32px;
    }
}

@media screen and (max-width: 767px) {
    .qa-choose-section .section-heading {
        margin-bottom: 24px;
    }
}

.qa-choose-card {
    background-color: hsl(var(--white));
    border-radius: 20px;
    padding: 24px;
    height: 100%;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

@media screen and (max-width: 1199px) {
    .qa-choose-card {
        border-radius: 16px;
    }
}

@media screen and (max-width: 767px) {
    .qa-choose-card {
        border-radius: 12px;
        padding: 20px;
    }
}

.qa-choose-card__icon {
    width: 32px;
    height: 32px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: hsl(var(--base));
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-bottom: 64px;
}

@media screen and (max-width: 1199px) {
    .qa-choose-card__icon {
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 767px) {
    .qa-choose-card__icon {
        margin-bottom: 32px;
    }
}

.qa-choose-card__icon svg {
    width: 100%;
    height: 100%;
    display: block;
}

.qa-choose-card__title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.25;
    color: hsl(var(--black));
    margin-bottom: 4px;
}

@media screen and (max-width: 767px) {
    .qa-choose-card__title {
        font-size: 22px;
    }
}

.qa-choose-card__desc {
    font-size: 16px;
    line-height: 1.6;
    color: hsl(var(--body-color));
    margin-bottom: 0;
    max-width: 326px;
}

/* ======================  Pages Design End  ======================*/
/*# sourceMappingURL=main.css.map */