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

.flex-wrap {
    display: flex;
    flex-wrap: wrap;
}

.button {
    display: inline-block;
    font-weight: 600;
    font-size: 20px;
    border-radius: 100px;
    padding: 13.5px 21.5px;
    color: #fff;
    background-color: #000;
    border: none;
    transition: all 0.3s ease-in-out;
    cursor: pointer;
    text-transform: uppercase;
    letter-spacing: -0.02em
}

.button-primary {
    background-color: #003074;
}

.button-primary:hover,
.button:hover {
    background-color: #b29570;
    color: #fff;
}

.cs-hero-heading {
    font-size: 54px;
    font-weight: 600;
    color: #001c72;
    margin-bottom: 28px;
}

.cs-hero .cs-hero-heading {
    text-transform: uppercase;
}

.cs-heading {
    font-size: 36px;
    line-height: 42px;
    color: #001c72;
    font-weight: 600;
}

.cs-wrapper {
    margin: 0 auto;
    padding: 0 60px;
}

.cs-hero {
    padding: 176px 0 209px;
    position: relative;
}

.cs-hero-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
}

.cs-hero-desc {
    font-size: 20px;
    color: #001c72;
    font-weight: 500;
}

.cs-hero-wrapper {
    max-width: 1274px;
    position: relative;
    z-index: 2;
}

.faq-main {
    padding: 64px 0 122px;
}

.faq-wrapper {
    max-width: 1248px;
}

.faq-tab-list {
    display: flex;
    justify-content: space-between;
    list-style: none;
    gap: 20px;
    margin-bottom: 20px;
}

.faq-tabs {
    max-width: 797px;
    margin: 0 auto 52px auto;
}

.faq-tab-list li {
    font-size: 20px;
    cursor: pointer;
    font-weight: 700;
    padding: 10px 0;
    color: #aaa8aa;
    position: relative;
}

.faq-tab-list li::after {
    content: "";
    position: absolute;
    bottom: 7px;
    left: 0;
    width: 0;
    height: 2px;
    background-color: #001c72;
    transition: all 0.3s ease-in-out;
}

.faq-tab-list li:hover::after {
    width: 100%;
}

.faq-tab-list li:hover {
    color: #001c72;
}

.faq-tab-list li.active {
    color: #001c72;
}

.faq-tab-list li.active::after {
    width: 100%;
}

.faq-tab-select {
    display: none;

}

/* Accordion style */
.faq-item {
    border-radius: 5px;
    overflow: hidden;
    margin-bottom: 30px;
}

.faq-question {
    background: #fbfaf6;
    color: #090909;
    padding: 23px 37px;
    font-weight: 500;
    cursor: pointer;
    font-size: 20px;
    line-height: 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 35px;
}

.faq-question .faq-icon {
    width: 23px;
    transition: all 0.3s ease;
}

.faq-question i::after {
    opacity: 1;
}

.faq-item.active .faq-icon {
    transform: rotate(90deg);
    filter: brightness(0) invert(1);
}

.faq-item.active .faq-question {
    background: #002b6b;
    color: #fff;
}

.faq-answer {
    display: none;
    padding: 26px 37px 34px 37px;
    background: #fbfaf6;
    font-size: 15px;
    line-height: 24px;
    color: #505050;
    font-weight: 500;
}

.faq-answer p {
    margin-bottom: 0;
}

.faq-cta {
    margin-top: 106px;
    background: #fbfaf6;
 	align-items:center;
	position:relative;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	padding:93px 31px;
	border-radius:6px;
	min-height:394px;
}




.faq-cta-heading {
    font-size: 36px;
    line-height: 48px;
    color: #000000;
    font-weight: 500;
    margin-bottom: 11px;
}

.faq-cta-desc {
    font-size: 15px;
    line-height: 1.6;
    max-width: 485px;
    font-weight: 500;
    color: #505050;
    margin-bottom: 26px;
}

/* Contact Page */
.contact-main {
    padding: 65px 0 122px;
}

.contact-main-heading {
    color: #000;
    margin-bottom: 18px;
}

.contact-main-desc {
    font-size: 20px;
    color: #000;
    font-weight: 500;
    line-height: 35px;
    margin-bottom: 40px;
}

.contact-main-wrapper {
    max-width: 1275px;
}

.contact-form {
    background: #fafafa;
    padding: 80px 40px;
    color: #000;
}

.conact-form-inner {
    max-width: 830px;
    margin: 0 auto;
}

.form-row {
    display: flex;
    gap: 30px;
    margin-bottom: 30px;
}

.contact-form .input,
.contact-form .textarea,
.gfield input[type="text"],
.gfield input[type="number"],
.gfield input[type="email"],
.gfield textarea,
.gfield .gfield_select {
    width: 100%;
    padding: 11px 25px 13px 25px !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
    border: 1px solid transparent;
    border-radius: 40px !important;
    outline: none !important;
    background-color: #fff !important;
    font-weight: 500 !important;
    border: 0 !important;
    box-shadow: none !important;
}

.gfield input[type="text"],
.gfield input[type="number"],
.gfield input[type="email"],
.gfield .gfield_select {
    height: 50px !important;
}

.gfield .gfield_select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background: #fff url(../images/arrow-down-blue.svg) no-repeat right 19px center / 16px !important;
}

#wrapper .ginput_container_number {
    position: relative;
}

#wrapper .ginput_container_number:after {
    content: '';
    background: #ffffff;
    display: block;
    width: 31px;
    height: calc(100% - 10px);
    position: absolute;
    right: 16px;
    z-index: 9999;
    top: 5px;
}

#wrapper .gfield_error input[type="text"],
#wrapper .gfield_error input[type="number"],
#wrapper .gfield_error input[type="email"],
#wrapper .gfield_error textarea,
#wrapper .gfield_error .gfield-choice-input {
    border: 1px solid var(--gf-local-border-color) !important;
}

.contact-form .gfield textarea {
    padding: 23px 25px !important;
    height: 188px !important;
}



.agree-checkbox .gfield_checkbox .gform-field-label {
    font-family: "Montserrat", sans-serif;
    color: #000;
    margin-left: 16px;
    font-size: 15px;
    line-height: 1.6;
    font-weight: 500;
}

.agree-checkbox .gfield_checkbox .gform-field-label a {
    color: #000;
}

.agree-checkbox input[type="checkbox"] {
    position: relative;
    appearance: none;
    width: 22px;
    height: 22px;
    border: 1px solid #afafaf !important;
    border-radius: 3px !important;
    -webkit-appearance: none;
    background: transparent !important;
    outline: 0 !important;
}

#wrapper .gform_fields {
    row-gap: 30px;
    column-gap: 30px;
}

#wrapper .gfield--type-select,
#wrapper .gfield--type-number {
    margin-bottom: 0;
}

#wrapper .gfield--type-textarea {
    margin-bottom: 22px;
}

.agree-checkbox input[type="checkbox"]:checked::before {
    content: none;
}

.agree-checkbox input[type="checkbox"]:checked::after {
    content: "";
    position: absolute;
    left: 3px;
    top: 3px;
    width: 12px;
    height: 12px;
    border-width: 0 2px 2px 0;
    background: #003074;
    border-radius: 3px;
}

#wrapper .contact-form .gform-footer {
    margin-top: 39px;
    justify-content: center;
}

#wrapper .contact-form .gform_button {
    background-color: #003074;
    font-weight: 600;
    font-size: 20px;
    border-radius: 100px;
    padding: 13.5px 48px;
    height: 50px;
    text-transform: uppercase;
}

.contact-form .input::placeholder,
.contact-form .textarea::placeholder {
    color: #000;
}

.contact-form select.input {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background: #fff url('../images/arrow-down-blue.svg') no-repeat right 19px center;
    background-size: 16px;
}

.contact-form .checkbox {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    margin-bottom: 25px;
}

.form-textarea {
    margin-bottom: 22px;
}

.cs-checkbox {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    cursor: pointer;
    position: relative;
    font-size: 15px;
    line-height: 1.6;
    font-weight: 500;
    user-select: none;
    margin-top: -8px;
}

.cs-checkmark-inner {
    width: 100%;
    height: 100%;
    border-radius: 3px;
}

.cs-checkbox input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}

.cs-checkmark {
    width: 22px;
    height: 22px;
    border: 1px solid #afafaf;
    border-radius: 3px;
    display: inline-block;
    flex-shrink: 0;
    transition: all 0.2s ease;
    background-color: transparent;
    position: relative;
    padding: 3.5px;
}

.cs-checkbox input[type="checkbox"]:checked+.cs-checkmark .cs-checkmark-inner {
    background-color: #003074;
    border-color: #003074;
}

.cs-checkbox a {
    color: inherit;
}

.contact-form .btn-submit {
    margin-top: 39px;
}

.contact-form .btn-submit .button {
    padding: 13.5px 48px;

}

.contact-info-wrapper {
    max-width: 1275px;
}

.contact-info-content {
    display: flex;
    flex-wrap: wrap;
    row-gap: 50px;
}

.contact-info-content .left {
    width: 47.2%;
    padding: clamp(0px, 4.271vw, 82px) 30px 0 33px;
}

.contact-info-content .left-inner {
    padding-left: clamp(0px, 4.792vw, 92px);
}

.contact-info-content .right {
    width: 52.8%;
    padding-right: 10px;
}

.contact-info-location {
    font-weight: 600;
    font-size: 36px;
    line-height: 42px;
    color: #001c72;
    margin-bottom: 51px;
}

.contact-info .cs-hero-heading {
    margin-bottom: 33px;
}

.contact-info-img img {
    width: 100%;
    object-fit: cover;
    border-radius: 6px;
    height: auto;
}

.contact-info-list {
    display: flex;
    flex-direction: column;
    gap: 28px;
    margin-left: 5px;
}

.contact-info-item {
    font-weight: 600;
    font-size: 20px;
    color: #001c72;
    display: flex;
    align-items: center;
    gap: 38px;
}

.contact-info-item img {
    max-width: 30px;
}

.contact-info-item a {
    color: inherit;
}

.contact-info-item a span {
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.contact-info-bottom {
    height: 130px;
    background-color: #003074;
    margin-top: -59px;
}

.contact-page .cs-hero {
    padding: 187px 0 190px;
}

/* About page */
.about-page .cs-hero {
    padding: 161px 0 194px;
}

.about-page .cs-hero-heading {
    margin-bottom: 46px;
}

.about-page .cs-hero-wrapper {
    max-width: 1280px;
}

.about-page .cs-hero-desc {
    font-size: 36px;
    line-height: 1.25;
    max-width: 920px;
}

.why-choose-section {
    padding: 90px 0 96px;
}

.why-choose-wrapper {
    max-width: 1216px;
}

.why-choose-section .why-choose-heading {
    color: #000;
    margin-bottom: 22px;
}

.why-choose-desc {
    font-size: 20px;
    line-height: 1.4;
    font-weight: 500;
    color: #000;
    max-width: 635px;
    margin: 0 auto 24px auto;
}

.why-choose-video {
    aspect-ratio: 1096/616;
    overflow: hidden;
    position: relative;
    border-radius: 6px;
    cursor: pointer;
}

.why-choose-video .overlay-video {
    content: "";
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.25);
    border-radius: 6px;
    z-index: 3;
}

.why-choose-video video,
.why-choose-video iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 0;
    z-index: 1;
}

.play-icon {
    position: absolute;
    bottom: 33px;
    left: 47px;
    width: 60px;
    height: 60px;
    object-fit: contain;
    z-index: 4;
    cursor: pointer;
}

.why-choose-video.play::before,
.why-choose-video.youtube-video::before {
    display: none;
}

.core-values {
    padding: 55px 0 35px;
    background-color: #fbfaf6;
}

.core-values .core-values-swiper {
    padding-bottom: 30px;
}

.swiper .swiper-pagination.cs-pagination {
    top: auto;
    bottom: 0;
    height: 3px;
    background-color: #afafaf;
}

.cs-pagination.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background-color: #001c72;
}

.core-values-wrapper {
    max-width: 1365px;
}

.core-values-heading {
    font-size: 36px;
    line-height: 1.167;
    font-weight: 500;
    color: #000;
    margin-bottom: 100px;
}

.core-values-link {
    font-size: 20px;
    font-weight: 500;
    color: #000;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.core-values-content .left {
    width: 30%;
    padding-right: 50px;
    padding-top: 79px;
}

.core-values-content .right {
    width: 70%;
    padding-right: 27px;
}

.core-values-item {
    color: #000;
}

.core-values-img {
    aspect-ratio: 1;
    overflow: hidden;
    margin-bottom: 9px;
}

.core-values-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.core-values-title {
    font-weight: 600;
    font-size: 20px;
    margin-bottom: 7px;
    letter-spacing: -0.02em;
}

.core-values-desc {
    font-size: 15px;
    line-height: 20px;
    max-width: 99%;
}

.science-driven {
    padding: 105px 0 71px;
}

.science-driven-wrapper {
    max-width: 1450px;
}

.science-driven-img {
    aspect-ratio: 645/647;
    overflow: hidden;
}

.science-driven-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 6px;
}

.science-driven-content .left {
    width: 53.9%;
    padding-right: 70px;
}

.science-driven-content .right {
    width: 46.1%;
    padding-top: 53px;
    padding-right: 31px;
}

.science-driven-heading {
    margin-bottom: 33px;
}

.science-driven-desc {
    font-size: 15px;
    line-height: 1.6;
    color: #000;
    margin-bottom: 91px;
}

.science-driven-desc p {
    margin-bottom: 10px;
}

.science-driven-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 87px 10px;
    padding-right: 20px;
}

.science-driven-list .title {
    margin-bottom: 3px;
}

.science-driven-list .text {
    font-size: 20px;
    line-height: 1.1;
    font-weight: 600;
    margin-bottom: 5px;
    color: #001c72;
    font-weight: 500;
    max-width: 80%;
}


.heading-with-line {
    position: relative;
    margin-bottom: 66px;
    padding-left: 30px;
}

.heading-with-line .cs-heading {
    margin: 0;
    position: relative;
    z-index: 2;
    max-width: 400px;
}

.heading-with-line .line {
    position: absolute;
    top: 23px;
    left: 300px;
    right: 0;
    height: 1px;
    background-color: #002366;
    z-index: 1;
}

.ab-revolution-wrapper {
    max-width: 1442px;
}

.ab-revolution-boxs {
    display: flex;
    flex-wrap: wrap;
    max-width: 1138px;
    margin: 0 auto;
}

.ab-revolution-boxs .left {
    width: 43.5%;
    margin-right: 11.6%;
}

.ab-revolution-boxs .right {
    width: 44.9%;
}

.ab-revolution-boxs .box {
    position: relative;
    padding-left: 37px;
}

.ab-revolution-boxs .box::before {
    content: "";
    position: absolute;
    width: 9px;
    height: 9px;
    background-color: #001c72;
    top: 17px;
    left: 0;
}

.ab-revolution-boxs .box .title {
    margin-bottom: 12px;
    letter-spacing: -0.02em;
    font-weight: 500;
}

.ab-revolution-boxs .box .desc {
    font-size: 15px;
    line-height: 22px;
    color: #001c72;
}

.ab-revolution-box-large {
    border-radius: 6px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 328px;
    margin-top: 36px;
    position: relative;
    padding: 77px 95px;
}

.ab-revolution-box-large .content {
    font-weight: 500;
    font-size: 15px;
    line-height: 22px;
    color: #fff;
    max-width: 400px;
}

.ab-revolution-box-large .title {
    font-weight: 500;
    font-size: 54px;
    color: #fff;
    letter-spacing: -0.02em;
    position: absolute;
    bottom: 26px;
    right: 54px;
    margin-bottom: 0;
}

.ab-revolution {
    padding-bottom: 130px;
}

.ab-partners {
    padding-bottom: 96px;
}

.ab-partners-main .left {
    width: 51%;
    padding-right: clamp(70px, 5.625vw, 108px);
    padding-left: clamp(0px, 2.031vw, 39px);
}

.ab-partners-main .right {
    width: 49%;
}


.partners-right img {
    width: 100%;
    border-radius: 6px;
    object-fit: cover;
}

.partners-title {
    margin-bottom: 72px;
    margin-top: -7px;
    max-width: 400px;
}

.partner-list {
    display: flex;
    flex-direction: column;
    gap: 21px;
}

.partner-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #001c72;
    cursor: pointer;
    padding-bottom: 8px;
}

.partner-header .title {
    letter-spacing: -0.02em;
    margin: 0;
}


.partner-header .title sup {
    font-size: 20px;
    top: -0.3em;
    position: relative;
}

.partner-header .icon {
    transition: all 0.3s ease-in-out;
    max-width: 17px;
    width: 100%;
}

.partner-list {
    padding-left: clamp(20px, 4.479vw, 86px);
}

.partner-item.active .icon {
    transform: rotate(180deg);
}

.partner-content {
    display: none;
    padding: 19px 5px 45px 5px;
    color: #000;
    font-size: 15px;
    line-height: 22px;
}

.partner-item.active .partner-content {
    display: block;
}

.partner-content p {
    margin-bottom: 10px;
}

.partner-image-mobile {
    display: none;
    margin-top: 15px;
}

.partner-image-pc,
.partner-image-mobile {
    aspect-ratio: 1;
    overflow: hidden;
}

.partner-image-pc img,
.partner-image-mobile img {
    border-radius: 6px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.about-page .certification-section {
    background-color: #fbfaf6;
    padding: 31px 0 153px;
}

.about-page .cert-item {
    background-color: #fbfaf6;

}

.about-page .cert-item img {
    mix-blend-mode: multiply;
}

.about-page .certification-paginations {
    margin-bottom: 0;
}

.off-presence {
    background-color: #fbfaf6;
    padding-bottom: 74px;
}

.off-presence-wrapper {
    max-width: 1456px;
}

.off-presence-heading {
    margin-bottom: 38px;
    text-align: center;
}

.offline-thumb {
    width: 100%;
    aspect-ratio: 1/1;
    border-radius: 6px;
    overflow: hidden;
    margin-bottom: 18px;
}

.offline-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.offline-name,
.offline-date {
    font-size: 20px;
    line-height: 25px;
    color: #001c72;
    letter-spacing: -0.02em;
    font-weight: 600;
    margin-bottom: 0;
}

.off-presence .offline-swiper {
    padding-bottom: 57px;
}

.offline-link {
    display: block;
    text-decoration: none;
    color: inherit;
    text-align: center;
}

/* Happy Customer Page */
.happy-customers-page .cs-hero {
    padding-bottom: 188px;
}

.happy-customers-page .cs-hero .cs-hero-heading,
.happy-customers-page .cs-hero .cs-hero-desc {
    color: #fff;
}

.happy-customers-page .cs-hero .cs-hero-desc {
    max-width: 612px;
}

.customers-say {
    padding: 76px 0 120px;
}

.customers-say-heading {
    font-size: 54px;
    line-height: 60px;
    font-weight: 600;
    margin-bottom: 18px;
}

.customers-say-desc {
    font-size: 20px;
    line-height: 28px;
    font-weight: 500;
}

.customers-say-wrapper {
    max-width: 1357px;
}

.customers-say-header {
    max-width: 830px;
    margin: 0 auto 22px auto;
}

.customers-say .video-panels {
    display: flex;
    gap: 13px;
    height: 641px;
    overflow: hidden;
}

.customers-say .overlay-video {
    position: absolute;
    inset: 0;
    background-color: rgb(178, 149, 112, 0.25);
    z-index: 3;
}

.customers-say .panel {
    flex: 1;
    position: relative;
    border-radius: 2px;
    overflow: hidden;
    transition: all 1s ease;
    cursor: pointer;
}

.customers-say .panel.hovered,
.customers-say .panel.active {
    flex: 1.78;
}


.customers-say .panel video,
.customers-say .panel iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 0;
}

.video-poster {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 2;
    transition: all 0.4s ease;
    pointer-events: none;
}

.customers-say .play-icon {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 4;
}

.video-panels-swiper .panel {
    aspect-ratio: 630/351;
    cursor: default;
}

.video-panels-swiper {
    display: none;
}

.our-customer-carousel-wrapper {
    display: flex;
    overflow: hidden;
    background-color: #b29570;
    padding: 14.5px 0;
    margin-bottom: 30px;
}

.our-customer-carousel {
    display: flex;
    animation: scroll 15s linear infinite;
}

.our-customer-carousel .item {
    display: flex;
    align-items: center;
    margin-right: 125px;
    min-width: 148px;
}

.our-customer-carousel .item img {
    max-width: 129px;
    margin: 0 auto;
    height: auto;
}

.our-customer-carousel .item p {
    font-size: 20px;
    font-weight: 500;
    color: #fff;
}

@keyframes scroll {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(calc(-100%));
    }
}


.testimonials-gallery-slider .gallery-row-1 {
    margin-left: -33px;
    margin-bottom: 15px;
}

.testimonials-gallery-slider .gallery-row-2 {
    margin-left: -170px;
}

.testimonials-gallery-slider .gallery-item {
    width: 248px;
}

.testimonials-gallery-slider .gallery-item img {
    width: 100%;
    height: 302px;
    object-fit: cover;
    border-radius: 18px;
}

.testimonials-gallery-slider-wrapper {
    max-width: 1475px;
}

.testimonials-gallery-slider-wrapper .inner {
    position: relative;
    padding-bottom: 79px;
}

.testimonials-main {
    padding: 130px 0 175px;
}

.testimonials-main-wrapper {
    max-width: 1600px;
}

.testimonials-main-heading {
    margin-bottom: 71px;
}

.testimonials-main-content .left {
    padding-left: clamp(0px, 6.094vw, 117px);
    margin-top: -4px;
    padding-right: 50px;
    width: 34.46%;
}

.testimonials-main-content .right {
    background-color: #fbfaf6;
    width: 65.54%;
}

.testimonials-main-desc {
    padding-left: 10px;
}

.testimonials-main-desc .number {
    font-weight: 600;
    font-size: 108px;
    color: #001c72;
    margin-bottom: 7px;
}

.testimonials-main-desc .text {
    font-size: 20px;
    line-height: 28px;
    font-weight: 500;
    color: #000;
    max-width: 320px;
}

.testimonial-slider-wrap {
    position: relative;
}

.testimonials-main .quote-mark {
    font-weight: 600;
    font-size: 156px;
    color: rgb(0, 28, 114, 0.2);
    letter-spacing: -0.02em;
    line-height: 1;

}

.testimonials-main .tes-content {
    margin-top: -69px;
    padding-left: clamp(30px, 4.479vw, 86px);
}

.testimonials-main .tes-text {
    font-weight: 600;
    font-size: 20px;
    letter-spacing: -0.02em;
    line-height: 28px;
    color: #001c72;
    max-width: 510px;
}

.testimonials-main .tes-line {
    background-color: #003074;
    width: 280px;
    height: 1px;
    margin: 23px 0 20px;
}

.testimonials-main .tes-author {
    font-size: 20px;
    font-weight: 700;
    color: #001c72;
    letter-spacing: -0.02em;
    margin-bottom: 0;
}

.testimonial-bottom {
    display: flex;
    align-items: center;
    position: absolute;
    bottom: 33px;
    right: clamp(20px, 4.688vw, 90px);
    z-index: 2;
    gap: 45px;
}

.testimonials-main-item {
    padding: 13px 34px 57px 34px;
}

.testimonials-main .avatars {
    display: flex;
}

.testimonials-main .avatars .item {
    width: 54px;
    height: 54px;
    border: 3px solid #fdf5e6;
    background-color: #b29570;
    border-radius: 50%;
    margin-left: -15px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.testimonials-main .avatars .item:first-child {
    margin-left: 0;
}

.testimonials-main .avatars .item p {
    font-weight: 700;
    font-size: 14px;
    letter-spacing: -0.02em;
    color: #fff;
    line-height: 1;
}

.avatars img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}

.tes-nav {
    display: flex;
    gap: clamp(28px, 3.073vw, 59px);
    position: relative;
}

.tes-nav-button {
    width: 12px;
}

.tnp-field input[type="submit"] {
    position: inherit;
    cursor: pointer;
    width: 50px;
}

/* responsive */
@media (max-width:1200px) {
    .contact-info-content .left {
        width: 47.2%;
        padding: 0 30px 0 0;
    }

    .contact-info-content .left-inner {
        padding-left: 0;
    }

    .contact-info-location {
        margin-bottom: 30px;
    }

    .contact-info .cs-hero-heading {
        margin-bottom: 20px;
    }

    .contact-info-list {
        gap: 20px;
        margin-left: 0;
    }

    .contact-info-item {
        gap: 24px;
    }



    .core-values-content .left {
        padding: 20px 30px 20px 0;
    }

    .core-values-heading {
        margin-bottom: 70px;
    }

    .core-values-content .right {
        padding-right: 0;
    }

    .science-driven-content .right {
        padding: 0;
    }

    .science-driven-list {
        padding-right: 0;
        gap: 40px 10px;
    }

    .science-driven-desc {
        margin-bottom: 60px;
    }

    .science-driven-list .text {
        max-width: 100%;
    }

    .science-driven-content .left {
        padding-right: 50px;
    }

    .ab-revolution-boxs {
        gap: 50px;
    }

    .heading-with-line {
        padding-left: 0;
    }

    .ab-revolution-boxs .left,
    .ab-revolution-boxs .right {
        width: calc(50% - 25px);
        margin-right: 0;
        padding-left: 25px;
    }

    .ab-revolution-box-large .title {
        bottom: 10px;
    }

    .ab-partners-main .left {
        padding-left: 0;
    }

    .partner-list {
        padding-left: 20px;
    }

    .partners-title {
        margin-bottom: 50px;
    }

    .partner-content {
        padding: 20px 5px;
    }

    .testimonial-bottom {
        position: static;
        padding-left: 10px;
        margin-top: 20px;
    }

    .testimonials-main-item {
        padding: 0;
    }

    .testimonials-main-content .right {
        padding: 20px 30px 50px 30px;
    }

    .testimonials-main .tes-content {
        padding-left: 10px;
    }

    .testimonials-main-content .left {
        padding-left: 0;
    }
}


/* Responsive */
@media (max-width:1023px) {

    .cs-hero,
    .about-page .cs-hero {
        padding: 120px 0 150px;
    }

    .contact-info-content .left,
    .contact-info-content .right {
        width: 100%;
        padding: 0;
    }

    .core-values {
        padding: 60px 0;
    }

    .core-values-content .left,
    .core-values-content .right {
        padding: 0;
        width: 100%;
    }

    .core-values-heading {
        margin-bottom: 30px;
    }

    .core-values-content {
        gap: 50px;
    }


    .science-driven-content .left,
    .science-driven-content .right {
        width: 100%;
        padding-right: 0;
    }

    .science-driven-content {
        border-bottom: 2px solid #000;
        gap: 50px;
        padding-bottom: 50px;
    }

    .science-driven-heading {
        margin-bottom: 24px;
    }

    .science-driven-desc {
        margin-bottom: 40px;
    }

    .ab-revolution-boxs .left,
    .ab-revolution-boxs .right {
        width: 100%;
    }

    .heading-with-line .line {
        display: none;
    }

    .heading-with-line {
        margin-bottom: 50px;
    }

    .ab-revolution-boxs {
        gap: 30px;
    }

    .ab-revolution-box-large {
        padding: 50px 40px;
    }

    .ab-revolution-box-large .title {
        position: static;
    }

    .ab-revolution-box-large .content {
        max-width: 100%;
    }

    .ab-partners-main .left {
        width: 100%;
        padding: 0;
    }

    .ab-partners-main .right {
        display: none;
    }

    .partner-list {
        padding-left: 0;
    }

    .partner-image-mobile {
        display: block;
    }

    .customers-say .video-panels {
        display: none;
    }

    .customers-say .video-panels-swiper {
        display: block;
        padding-bottom: 62px;
    }

    .customers-say {
        padding-bottom: 100px;
    }

    .testimonials-gallery-slider .gallery-item {
        width: 200px;
    }

    .testimonials-gallery-slider .gallery-item img {
        height: 250px;
    }

    .testimonials-main-heading {
        margin-bottom: 30px;
    }

    .testimonials-main-content .left {
        width: 100%;
        padding: 0;
        margin-bottom: 50px;
    }

    .testimonial-bottom {
        justify-content: space-between;
    }

    .testimonials-main-content .right {
        width: 100%;
        padding: 30px 40px;
    }

    .testimonials-main {
        padding: 100px 0 120px;
    }

    .testimonials-main-desc .text {
        max-width: 100%;
    }

    .testimonials-main-desc {
        padding-left: 0;
    }

}

@media (max-width: 767px) {
    .button {
        font-size: clamp(14px, 3.733vw, 28px);
        padding: 3.067vw 3.867vw;
    }

    .cs-wrapper {
        padding: 0 clamp(20px, 8vw, 60px);
    }

    .cs-hero,
    .contact-page .cs-hero {
        padding: 14.4vw 0 17.733vw;
    }

    .cs-heading {
        font-size: clamp(18px, 4.8vw, 36px);
        line-height: 1.167;
    }

    .cs-hero-heading {
        font-size: clamp(24px, 6.4vw, 48px);
        margin-bottom: 3px;
    }

    .cs-hero-desc {
        font-size: clamp(14px, 3.733vw, 28px);
        max-width: 86%;
    }

    .form-row {
        flex-direction: column;
    }

    .faq-tab-list {
        display: none;
    }

    .faq-tab-select {
        display: block;
        width: 100%;
        padding: 2.667vw 60px 3.2vw 4.133vw;
        font-family: 'MiSans', sans-serif;
        font-weight: 500;
        color: #001c72;
        font-size: clamp(14px, 3.733vw, 28px);
        border-radius: 40px;
        border: 1px solid #001c72;
        background-color: #fff;

        appearance: none;
        -webkit-appearance: none;
        -moz-appearance: none;

        background-image: url('../images/arrow-down-blue.svg');
        background-repeat: no-repeat;
        background-position: right clamp(15px, 4.4vw, 33px) center;
        background-size: clamp(15px, 4vw, 30px);
    }

    .faq-tabs {
        margin-bottom: clamp(26px, 6.933vw, 52px);
    }

    .faq-tab-select::-ms-expand {
        display: none;
    }


    .faq-main {
        padding: 9.867vw 0 11.467vw;
    }

    .faq-question {
        font-size: clamp(14px, 3.733vw, 28px);
        line-height: 1.2;
        padding: 2.4vw 3.733vw 2.4vw 4.933vw;
    }

    .faq-answer {
        font-size: clamp(12px, 3.2vw, 24px);
        line-height: 1.33;
        padding: 3.467vw 4.933vw 4.533vw 4.933vw;
    }

    .faq-question .faq-icon {
        width: clamp(15px, 4vw, 30px);
    }

    .faq-item {
        margin-bottom: clamp(15px, 4vw, 30px);
    }

    .faq-cta {
        margin-top: 12.8vw;
        padding: 6.933vw 6vw 31.2vw 6vw;
		min-height:90vw;
    }
	
    .faq-cta-desc {
        max-width: 100%;
        font-size: clamp(10px, 2vw, 15px);
        margin-bottom: 4.533vw;
    }

    .faq-cta-heading {
        font-size: clamp(18px, 4.8vw, 36px);
        line-height: 1.2;
        margin-bottom: 1.467vw;
    }

    .contact-main {
        padding: 6.8vw 0 8.4vw;
    }

    .contact-main-desc {
        font-size: clamp(14px, 3.733vw, 28px);
        line-height: 1.2;
        margin-bottom: 8.267vw;
    }

    .contact-main-heading {
        margin-bottom: 1.6vw;
    }

    .contact-form {
        padding: 8.133vw 5.333vw 9.733vw 5.333vw;
    }

    .contact-form .input,
    .contact-form .textarea {
        font-size: clamp(14px, 3.733vw, 28px);
        padding: 2.667vw 4.8vw 3.2vw 4.8vw;
    }

    .contact-form .input,
    .contact-form .textarea,
    .gfield input[type="text"],
    .gfield input[type="number"],
    .gfield input[type="email"],
    .gfield textarea,
    .gfield .gfield_select {
        font-size: clamp(14px, 3.733vw, 28px) !important;
        padding: 2.667vw 4.8vw 3.2vw 4.8vw !important;
        height: auto !important;
    }

    .contact-form select.input {
        background-size: 4vw;
        background-position: right 3.333vw center;
    }

    .cs-checkbox {
        font-size: clamp(12px, 3.2vw, 24px);
        line-height: 1.33;
        margin-left: 3px;
        gap: 2.133vw;
    }

    .contact-form .textarea {
        height: clamp(180px, 32.133vw, 241px);
        border-radius: 24px;
    }

    .cs-checkmark {
        width: clamp(20px, 4.8vw, 36px);
        height: clamp(20px, 4.8vw, 36px);
        padding: 0.933vw;
        margin-top: 0.667vw;
        border-radius: 2px;
    }

    .cs-checkmark-inner {
        border-radius: 2px;
    }

    .form-textarea {
        margin-bottom: 19px;
    }

    .contact-form .btn-submit .button {
        width: 100%;
        padding: 3.067vw 3.867vw;
    }

    .contact-form .btn-submit {
        margin-top: 5.2vw;
    }

    .contact-info .cs-hero-heading {
        margin-bottom: 10px;
    }

    .contact-info-item img {
        max-width: 4.933vw;
        width: 100%;
    }

    .contact-info-content {
        gap: 8.667vw;
    }

    .contact-info-bottom {
        margin-top: -8.933vw;
        height: 17.333vw;
    }

    .contact-info-location {
        margin-bottom: 7.067vw;
        font-size: clamp(18px, 4.8vw, 36px);
        line-height: 1.167;
    }

    .contact-info-item {
        font-size: clamp(14px, 3.733vw, 28px);
        gap: 3.2vw;
    }

    .contact-info-list {
        gap: 3.467vw;
    }

    .about-page .cs-hero {
        padding: 10.667vw 0 12.267vw;
        position: relative;
    }

    .about-page .cs-hero::before {
        content: "";
        position: absolute;
        inset: 0;
        background: url('../images/about/bg-linear.png') no-repeat center;
        background-size: cover;
        z-index: 1;
        pointer-events: none;
        background-position: center 35%;
    }

    .about-page .cs-hero-desc {
        font-size: clamp(14px, 3.733vw, 28px);
        line-height: 1.2;
        max-width: 430px;
    }

    .about-page .cs-hero-heading {
        margin-bottom: 4px;
    }

    .why-choose-section {
        padding: 14.8vw 0 16vw;
    }

    .why-choose-desc {
        font-size: clamp(14px, 3.733vw, 28px);
        line-height: 1.2;
        margin-bottom: 6.267vw;
    }

    .why-choose-section .why-choose-heading {
        margin-bottom: 11px;
    }

    .play-icon {
        width: 9.2vw;
        height: 9.2vw;
        bottom: 4vw;
        left: 4.267vw;
    }

    .core-values {
        padding: 15.067vw 0 15.733vw;
    }

    .core-values-heading {
        margin-bottom: 3.067vw;
        font-size: clamp(18px, 4.8vw, 36px);
    }

    .core-values-link {
        font-size: 3.2vw;
    }

    .core-values .core-values-swiper {
        margin-right: clamp(-60px, -8vw, -20px);
    }

    .core-values-title {
        font-size: clamp(14px, 3.733vw, 28px);
        margin-bottom: 1.333vw;
    }

    .core-values-desc {
        font-size: clamp(12px, 3.2vw, 24px);
        line-height: 1.33;
    }

    .core-values-img {
        margin-bottom: 3.333vw;
    }

    .core-values-content {
        gap: 6.667vw;
    }

    .core-values .core-values-swiper {
        padding-bottom: 6.667vw;
    }

    .core-values-swiper .swiper-pagination.cs-pagination {
        width: calc(100% - (clamp(20px, 8vw, 60px)));
    }

    .science-driven {
        padding: 16.267vw 0 14.667vw;
    }

    .science-driven-content {
        gap: 4.4vw;
    }

    .science-driven-desc {
        font-size: clamp(12px, 3.2vw, 24px);
        line-height: 1.33;
        margin-bottom: 11.067vw;
    }

    .science-driven-heading {
        margin-bottom: 2.667vw;
    }

    .science-driven-desc p {
        margin-bottom: 2.133vw;
    }

    .science-driven-list .text {
        font-size: clamp(14px, 3.733vw, 28px);
        line-height: 1.2;
    }

    .science-driven-list .title {
        margin-bottom: 1.333vw;
    }

    .science-driven-list {
        gap: 11.6vw 5.067vw;
    }

    .science-driven-content {
        padding-bottom: 9.733vw;
    }

    .heading-with-line .cs-heading {
        line-height: 1.22;
    }

    .ab-revolution-boxs .box::before {
        width: 1.667vw;
        height: 1.667vw;
        top: 1.467vw;
    }

    .heading-with-line {
        margin-bottom: 4.8vw;
    }

    .ab-revolution-boxs .left,
    .ab-revolution-boxs .right {
        padding-left: 6.667vw;
    }

    .ab-revolution-boxs .box .desc,
    .ab-revolution-box-large .content {
        font-size: clamp(12px, 3.2vw, 24px);
        line-height: 1.33;
    }

    .ab-revolution-boxs .box .title {
        margin-bottom: 1.333vw;
    }

    .ab-revolution-boxs {
        gap: 5.333vw;
    }

    .ab-revolution-box-large {
        margin-top: 6.533vw;
        padding: 12vw 6.533vw 17.6vw 7.733vw;
        min-height: auto;
    }

    .ab-revolution-box-large .title {
        font-size: clamp(18px, 4.8vw, 36px);
        line-height: 1.167;
        margin-bottom: 2.667vw;
    }

    .ab-revolution {
        padding-bottom: 16.4vw;
    }

    .partners-title {
        max-width: 100%;
        margin-bottom: 5.333vw;
    }

    .partner-header {
        padding-bottom: 4.533vw;
    }

    .ab-partners {
        padding-bottom: 12.8vw;
    }

    .partner-content {
        font-size: clamp(12px, 3.2vw, 24px);
        line-height: 1.33;
        padding: 4.8vw 0.667vw 1.2vw 0.667vw;
    }

    .partner-content p {
        margin-bottom: 2.133vw;
    }

    .partner-image-mobile {
        margin-top: 5.867vw;
    }

    .partner-header .icon {
        max-width: 4.133vw;
    }

    .partner-list {
        gap: 5.733vw;
    }

    .partner-header .title sup {
        font-size: clamp(14px, 3.733vw, 28px);
        top: 0;
        right: -0.2em;
    }

    .about-page .certification-header p {
        max-width: 100%;
    }

    .off-presence-heading {
        margin-bottom: 4.8vw;
        text-align: left;
    }

    .offline-name,
    .offline-date {
        font-size: clamp(14px, 3.733vw, 28px);
        line-height: 1.2;
    }

    .offline-thumb {
        margin-bottom: 3.2vw;
    }

    .off-presence .offline-swiper {
        padding-bottom: 5.333vw;
    }

    .off-presence {
        padding-bottom: 15.867vw;
    }

    .about-page .certification-section {
        padding: 14.667vw 0 9vw;
    }

    .happy-customers-page .cs-hero::before {
        content: "";
        position: absolute;
        inset: 0;
        background: url('../images/about/bg-linear.png') no-repeat center;
        background-size: cover;
        z-index: 1;
        pointer-events: none;
        background-position: center 35%;
    }

    .happy-customers-page .cs-hero {
        padding: clamp(40px, 10.667vw, 80px) 0 clamp(40px, 9.067vw, 68px);
    }

    .happy-customers-page .cs-hero .cs-hero-desc {
        max-width: 450px;
    }

    .customers-say-heading {
        font-size: clamp(24px, 6.4vw, 48px);
        line-height: 1.08;
        margin-bottom: 2vw;
    }

    .customers-say {
        padding: 7.2vw 0 9.067vw;
    }

    .customers-say-desc {
        font-size: clamp(14px, 3.733vw, 28px);
        line-height: 1.2;
    }

    .customers-say-header {
        margin-bottom: 5.333vw;
    }

    .customers-say .panel {
        border-radius: 6px;
    }

    .our-customer-carousel-wrapper {
        padding: 2.733vw 0;
        margin-bottom: 9.067vw;
    }

    .our-customer-carousel .item {
        margin-right: 13.333vw;
        min-width: clamp(80px, 19.733vw, 148px);
    }

    .customers-say .video-panels-swiper {
        padding-bottom: 8.267vw;
    }

    .our-customer-carousel .item p {
        font-size: clamp(11px, 2.667vw, 20px);
    }

    .our-customer-carousel .item img {
        max-width: clamp(75px, 17.2vw, 129px);
    }

    .testimonials-gallery-slider .gallery-row-1 {
        margin-bottom: 10px;
        margin-left: -12vw;
    }

    .testimonials-gallery-slider .gallery-row-2 {
        margin-left: -1.067vw;
    }

    .testimonials-gallery-slider .gallery-item {
        width: 21.467vw;
    }

    .testimonials-gallery-slider .gallery-item img {
        height: 27.467vw;
    }

    .testimonials-gallery-slider-wrapper .inner {
        padding-bottom: 7.067vw;
    }

    .testimonials-main {
        padding: 10.933vw 0 10.667vw;
    }

    .testimonials-main-desc .number {
        font-size: clamp(54px, 14.4vw, 108px);
        line-height: 1;
        margin-bottom: 1.467vw;
    }

    .testimonials-main-heading {
        margin-bottom: 3.333vw;
    }

    .testimonials-main-desc .text {
        font-size: clamp(14px, 3.733vw, 28px);
        line-height: 1.2;
    }

    .testimonials-main-content .left {
        margin-bottom: 5.867vw;
    }

    .testimonials-main-content .right {
        padding: 3.733vw 4.4vw 5.867vw 4.4vw;
    }

    .testimonials-main .tes-text {
        font-size: clamp(14px, 3.733vw, 28px);
        line-height: 1.2;
        max-width: 100%;
    }

    .testimonials-main .tes-content {
        margin-top: -9.733vw;
        padding-left: 0.933vw;
    }

    .testimonials-main .tes-line {
        width: 100%;
        margin: 4.667vw 0 4vw;
    }

    .testimonials-main .tes-author {
        font-size: clamp(14px, 3.733vw, 28px);
        line-height: 1.2;
    }

    .tes-nav-button {
        width: 4.133vw;
    }

    .testimonial-bottom {
        margin-top: 4vw;
        padding-left: 0.667vw;
    }

    .testimonials-main .avatars .item {
        width: 13.867vw;
        height: 13.867vw;
        border-width: 0.8vw;
        margin-left: -4vw;
    }

    .testimonials-main .avatars .item p {
        font-size: clamp(15px, 4vw, 30px);
    }

    .testimonials-main .quote-mark {
        font-size: clamp(78px, 20.8vw, 156px);
    }

    .about-page .certification-header {
        margin-bottom: 4vw;
    }

    .contact-form .gform-theme--foundation .gfield--width-half {
        grid-column: 1/-1 !important;
    }

    #wrapper .gform_fields {
        column-gap: 0;
        row-gap: 4vw;
    }

    .gfield .gfield_select {
        background-size: 4vw !important;
        background-position: right 3.333vw center !important;
    }

    .contact-form .gform-theme--foundation .gfield textarea {
        min-block-size: clamp(180px, 32.133vw, 241px) !important;
    }

    #wrapper .contact-form .gform_button {
        font-size: clamp(14px, 3.733vw, 28px);
        padding: 3.067vw 3.867vw;
        width: 100%;
        height: auto;
        line-height: normal;
    }
}