@use "sass:math";

.indicator {
    position: absolute;
    top: var(--pos-y);
    left: var(--pos-x);
    height: var(--height-set);
    width: var(--width-set);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

:root {
    --theme-color: #068FFF;
    --theme-color2: #54B435;
    --title-color: #001524;
    --body-color: #74757B;
    --smoke-color: #F5F7FA;
    --smoke-color2: #E5F3FF;
    --black-color: #000000;
    --gray-color: #bdbdbd;
    --white-color: #ffffff;
    --light-color: #bdbdbd;
    --yellow-color: #FFB539;
    --success-color: #28a745;
    --error-color: #dc3545;
    --th-border-color: #D9D9D9;
    --title-font: 'Inter', sans-serif;
    --body-font: 'Poppins', sans-serif;
    --icon-font: "Font Awesome 6 Pro";
    --main-container: 1290px;
    --container-gutters: 30px;
    --section-space: 120px;
    --section-space-mobile: 80px;
    --section-title-space: 60px;
    --ripple-ani-duration: 5s
}

html,
body {
    scroll-behavior: auto !important
}

body {
    font-family: var(--body-font);
    font-size: 16px;
    font-weight: 400;
    color: var(--body-color);
    line-height: 26px;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased
}

iframe {
    border: none;
    width: 100%
}

.slick-slide:focus,
button:focus,
a:focus,
a:active,
input,
input:hover,
input:focus,
input:active,
textarea,
textarea:hover,
textarea:focus,
textarea:active {
    outline: none
}

input:focus {
    outline: none;
    box-shadow: none
}

img:not([draggable]),
embed,
object,
video {
    max-width: 100%;
    height: auto
}

ul {
    list-style-type: disc
}

ol {
    list-style-type: decimal
}

table {
    margin: 0 0 1.5em;
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border: 1px solid var(--th-border-color)
}

th {
    font-weight: 700;
    color: var(--title-color)
}

td,
th {
    border: 1px solid var(--th-border-color);
    padding: 9px 12px
}

a {
    color: var(--theme-color);
    text-decoration: none;
    outline: 0;
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s
}

a:hover {
    color: var(--title-color)
}

a:active,
a:focus,
a:hover,
a:visited {
    text-decoration: none;
    outline: 0
}

button {
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s
}

img {
    border: none;
    max-width: 100%
}

ins {
    text-decoration: none
}

pre {
    font-family: var(--body-font);
    background: #f5f5f5;
    color: #666;
    font-size: 14px;
    margin: 20px 0;
    overflow: auto;
    padding: 20px;
    white-space: pre-wrap;
    word-wrap: break-word
}

span.ajax-loader:empty,
p:empty {
    display: none
}

p {
    font-family: var(--body-font);
    margin: 0 0 18px 0;
    color: var(--body-color);
    line-height: 1.75
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a,
p a,
span a {
    font-size: inherit;
    font-family: inherit;
    font-weight: inherit;
    line-height: inherit
}

.h1,
h1,
.h2,
h2,
.h3,
h3,
.h4,
h4,
.h5,
h5,
.h6,
h6 {
    font-family: var(--title-font);
    color: var(--title-color);
    text-transform: none;
    font-weight: 700;
    line-height: 1.4;
    margin: 0 0 15px 0
}

.h1,
h1 {
    font-size: 64px;
    line-height: 1.156
}

.h2,
h2 {
    font-size: 44px;
    line-height: 1.123
}

.h3,
h3 {
    font-size: 36px;
    line-height: 1.278
}

.h4,
h4 {
    font-size: 30px;
    line-height: 1.333
}

.h5,
h5 {
    font-size: 24px;
    line-height: 1.417
}

.h6,
h6 {
    font-size: 20px;
    line-height: 1.5
}

@media (max-width: 1199px) {

    .h1,
    h1 {
        font-size: 48px;
        line-height: 1.3
    }

    .h2,
    h2 {
        font-size: 36px;
        line-height: 1.3
    }

    .h3,
    h3 {
        font-size: 30px
    }

    .h4,
    h4 {
        font-size: 24px
    }

    .h5,
    h5 {
        font-size: 20px
    }

    .h6,
    h6 {
        font-size: 16px
    }
}

@media (max-width: 767px) {

    .h1,
    h1 {
        font-size: 40px
    }

    .h2,
    h2 {
        font-size: 34px;
        line-height: 1.3
    }

    .h3,
    h3 {
        font-size: 26px
    }

    .h4,
    h4 {
        font-size: 22px
    }

    .h5,
    h5 {
        font-size: 18px
    }

    .h6,
    h6 {
        font-size: 16px
    }
}

@media (max-width: 575px) {

    .h1,
    h1 {
        font-size: 34px;
        line-height: 1.35
    }

    .h2,
    h2 {
        font-size: 28px
    }
}

@media (max-width: 375px) {

    .h1,
    h1 {
        font-size: 32px
    }
}

@media (max-width: 1399px) {
    :root {
        --main-container: 1290px
    }
}

@media (min-width: 1560px) {
    .th-container2 {
        width: 100%;
        max-width: 1560px;
        margin-left: auto;
        margin-right: 0;
        padding-left: 0;
        padding-right: 0
    }

    .th-container3 {
        width: 100%;
        max-width: 1560px;
        margin-left: 0;
        margin-right: auto;
        padding-left: 0;
        padding-right: 0
    }

    .th-container3 .container {
        --main-container: 1220px
    }
}

@media (min-width: 1922px) {

    .th-container3,
    .th-container2 {
        margin-right: auto
    }
}

@media only screen and (min-width: 1300px) {

    .container-xxl,
    .container-xl,
    .container-lg,
    .container-md,
    .container-sm,
    .container {
        max-width: calc(var(--main-container) + var(--container-gutters));
        padding-left: calc(var(--container-gutters) / 2);
        padding-right: calc(var(--container-gutters) / 2)
    }

    .container-xxl.px-0,
    .container-xl.px-0,
    .container-lg.px-0,
    .container-md.px-0,
    .container-sm.px-0,
    .container.px-0 {
        max-width: var(--main-container)
    }
}

@media only screen and (min-width: 1300px) {
    .th-container {
        --main-container: 1800px
    }
}

@media only screen and (max-width: 1600px) {
    .container-fluid.px-0 {
        padding-left: 15px !important;
        padding-right: 15px !important
    }

    .container-fluid.px-0 .row {
        margin-left: 0 !important;
        margin-right: 0 !important
    }
}

.container-gallery {
    max-width: 1840px
}

.slick-track>[class*=col] {
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
    padding-right: calc(var(--bs-gutter-x)/ 2);
    padding-left: calc(var(--bs-gutter-x)/ 2);
    margin-top: var(--bs-gutter-y)
}

@media (min-width: 1300px) {
    .row {
        --bs-gutter-x: 30px
    }
}

.gy-30 {
    --bs-gutter-y: 30px
}

.g-0 {
    --bs-gutter-y: 0;
    --bs-gutter-x: 0
}

.gx-0 {
    --bs-gutter-x: 0
}

.gy-40 {
    --bs-gutter-y: 40px
}

.gy-50 {
    --bs-gutter-y: 50px
}

.gx-10 {
    --bs-gutter-x: 10px
}

.gy-10 {
    --bs-gutter-y: 10px
}

@media (min-width: 1299px) {
    .gx-60 {
        --bs-gutter-x: 60px
    }
}

@media (min-width: 1399px) {
    .gx-30 {
        --bs-gutter-x: 30px
    }

    .gx-25 {
        --bs-gutter-x: 25px
    }

    .gx-40 {
        --bs-gutter-x: 40px
    }
}

@media (max-width: 991px) {
    .gy-50 {
        --bs-gutter-y: 40px
    }
}

select,
.form-control,
.form-select,
textarea,
input {
    height: 56px;
    padding: 0 25px 0 25px;
    padding-right: 45px;
    border: 1px solid transparent;
    color: var(--body-color);
    background-color: var(--smoke-color);
    border-radius: 6px;
    font-size: 16px;
    width: 100%;
    font-family: var(--body-font);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

select:focus,
.form-control:focus,
.form-select:focus,
textarea:focus,
input:focus {
    outline: 0;
    box-shadow: none;
    border-color: var(--th-border-color);
    background-color: var(--smoke-color2)
}

select::-moz-placeholder,
.form-control::-moz-placeholder,
.form-select::-moz-placeholder,
textarea::-moz-placeholder,
input::-moz-placeholder {
    color: var(--body-color)
}

select::-webkit-input-placeholder,
.form-control::-webkit-input-placeholder,
.form-select::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
input::-webkit-input-placeholder {
    color: var(--body-color)
}

select:-ms-input-placeholder,
.form-control:-ms-input-placeholder,
.form-select:-ms-input-placeholder,
textarea:-ms-input-placeholder,
input:-ms-input-placeholder {
    color: var(--body-color)
}

select::-webkit-input-placeholder,
.form-control::-webkit-input-placeholder,
.form-select::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
input::-webkit-input-placeholder {
    color: var(--body-color)
}

select::-moz-placeholder,
.form-control::-moz-placeholder,
.form-select::-moz-placeholder,
textarea::-moz-placeholder,
input::-moz-placeholder {
    color: var(--body-color)
}

select:-ms-input-placeholder,
.form-control:-ms-input-placeholder,
.form-select:-ms-input-placeholder,
textarea:-ms-input-placeholder,
input:-ms-input-placeholder {
    color: var(--body-color)
}

select::-ms-input-placeholder,
.form-control::-ms-input-placeholder,
.form-select::-ms-input-placeholder,
textarea::-ms-input-placeholder,
input::-ms-input-placeholder {
    color: var(--body-color)
}

select::placeholder,
.form-control::placeholder,
.form-select::placeholder,
textarea::placeholder,
input::placeholder {
    color: var(--body-color)
}

.form-select,
select {
    display: block;
    width: 100%;
    line-height: 1.5;
    vertical-align: middle;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3E%3C/svg%3E");
    background-position: right 26px center;
    background-repeat: no-repeat;
    background-size: 16px 12px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer
}

.form-select.style2,
select.style2 {
    background-image: url("data:image/svg+xml,%3Csvg width='11' height='6' viewBox='0 0 11 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.87109 1.71094L5.71484 5.62109C5.56901 5.7487 5.41406 5.8125 5.25 5.8125C5.08594 5.8125 4.9401 5.7487 4.8125 5.62109L0.65625 1.71094C0.382812 1.40104 0.373698 1.09115 0.628906 0.78125C0.920573 0.507812 1.23047 0.498698 1.55859 0.753906L5.25 4.25391L8.96875 0.753906C9.27865 0.498698 9.57943 0.498698 9.87109 0.753906C10.1263 1.08203 10.1263 1.40104 9.87109 1.71094Z' fill='%238B929C'/%3E%3C/svg%3E")
}

textarea.form-control,
textarea {
    min-height: 154px;
    padding-top: 16px;
    padding-bottom: 17px
}

textarea.form-control.style2,
textarea.style2 {
    min-height: 100px
}

.input-white select,
.input-white .form-control,
.input-white .form-select,
.input-white textarea,
.input-white input {
    background-color: var(--white-color);
    border-color: var(--white-color)
}

.input-white .form-group>i {
    background-color: var(--white-color)
}

.input-white .form-group>i.fa-chevron-down {
    background-color: var(--white-color)
}

.form-group {
    margin-bottom: var(--bs-gutter-x);
    position: relative
}

.form-group>i {
    display: inline-block;
    position: absolute;
    right: 25px;
    top: 19px;
    font-size: 16px;
    color: var(--body-color)
}

.form-group>i.fa-envelope {
    padding-top: 1px
}

.form-group>i.fa-comment {
    margin-top: -2px
}

.form-group>i.fa-chevron-down {
    width: 17px;
    background-color: var(--smoke-color2)
}

.form-group.has-label>i {
    top: 50px
}

[class*="col-"].form-group>i {
    right: calc((var(--bs-gutter-x) / 2) + 25px)
}

.form-rounded-10 .form-control,
.form-rounded-10 .form-select {
    border-radius: 10px !important
}

.form-rounded-10 .th-btn {
    border-radius: 10px
}

option:checked,
option:focus,
option:hover {
    background-color: var(--theme-color);
    color: var(--white-color)
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0
}

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

input[type="checkbox"] {
    visibility: hidden;
    opacity: 0;
    display: inline-block;
    vertical-align: middle;
    width: 0;
    height: 0;
    display: none
}

input[type="checkbox"]:checked~label:before {
    content: "\f00c";
    color: var(--white-color);
    background-color: var(--theme-color);
    border-color: var(--theme-color)
}

input[type="checkbox"]~label {
    position: relative;
    padding-left: 30px;
    cursor: pointer;
    display: block
}

input[type="checkbox"]~label:before {
    content: "";
    font-family: var(--icon-font);
    font-weight: 700;
    position: absolute;
    left: 0px;
    top: 3.5px;
    background-color: var(--white-color);
    border: 1px solid var(--th-border-color);
    height: 18px;
    width: 18px;
    line-height: 18px;
    border-radius: 4px;
    text-align: center;
    font-size: 12px
}

input[type="checkbox"].style2~label {
    color: #8B929C;
    padding-left: 23px;
    margin-bottom: -0.5em
}

input[type="checkbox"].style2~label:before {
    background-color: rgba(255, 255, 255, 0.1);
    border: 1px solid #8B929C;
    height: 14px;
    width: 14px;
    line-height: 14px;
    border-radius: 3px;
    top: 6px
}

input[type="checkbox"].style2:checked~label:before {
    color: var(--theme-color)
}

input[type="radio"] {
    visibility: hidden;
    opacity: 0;
    display: inline-block;
    vertical-align: middle;
    width: 0;
    height: 0;
    display: none
}

input[type="radio"]~label {
    position: relative;
    padding-left: 30px;
    cursor: pointer;
    line-height: 1;
    display: inline-block;
    font-weight: 600;
    margin-bottom: 0
}

input[type="radio"]~label::before {
    content: "\f111";
    position: absolute;
    font-family: var(--icon-font);
    left: 0;
    top: -2px;
    width: 20px;
    height: 20px;
    padding-left: 0;
    font-size: 0.6em;
    line-height: 19px;
    text-align: center;
    border: 1px solid var(--theme-color);
    border-radius: 100%;
    font-weight: 700;
    background: var(--white-color);
    color: transparent;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease
}

input[type="radio"]:checked~label::before {
    border-color: var(--theme-color);
    background-color: var(--theme-color);
    color: var(--white-color)
}

label {
    margin-bottom: 0.5em;
    margin-top: -0.3em;
    display: block;
    color: var(--body-color);
    font-family: var(--body-font);
    font-size: 16px
}

textarea.is-invalid,
select.is-invalid,
input.is-invalid,
.was-validated input:invalid {
    border: 1px solid var(--error-color) !important;
    background-position: right calc(0.375em + 0.8875rem) center;
    background-image: none
}

textarea.is-invalid:focus,
select.is-invalid:focus,
input.is-invalid:focus,
.was-validated input:invalid:focus {
    outline: 0;
    box-shadow: none
}

textarea.is-invalid {
    background-position: top calc(0.375em + 0.5875rem) right calc(0.375em + 0.8875rem)
}

.row.no-gutters>.form-group {
    margin-bottom: 0
}

.form-messages {
    display: none
}

.form-messages.mb-0 * {
    margin-bottom: 0
}

.form-messages.success {
    color: var(--success-color);
    display: block
}

.form-messages.error {
    color: var(--error-color);
    display: block
}

.form-messages pre {
    padding: 0;
    background-color: transparent;
    color: inherit
}

.swiper-wrapper.row {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

.th-slider.has-shadow {
    padding-left: 12px;
    padding-right: 12px;
    margin: -25px -12px
}

.th-slider.has-shadow .swiper-wrapper {
    padding: 25px 0
}

.swiper-fade .swiper-slide {
    -webkit-transition: 0.6s ease-in-out;
    transition: 0.6s ease-in-out
}

.swiper-fade .swiper-slide-prev {
    opacity: 0
}

.swiper-pagination-bullets {
    position: relative;
    z-index: 3;
    text-align: center;
    margin: 50px 0 -7px 0;
    line-height: 10px;
    height: 10px
}

.swiper-pagination-bullets .swiper-pagination-bullet {
    display: inline-block;
    --swiper-pagination-bullet-size: 10px;
    --swiper-pagination-bullet-horizontal-gap: 8px;
    margin: 5px 7px;
    opacity: 1;
    background-color: var(--th-border-color);
    position: relative;
    cursor: pointer
}

.swiper-pagination-bullets .swiper-pagination-bullet:before {
    content: '';
    position: absolute;
    inset: -5px;
    border: 1px solid var(--th-border-color);
    -webkit-transform: scale(0.2);
    -ms-transform: scale(0.2);
    transform: scale(0.2);
    border-radius: inherit;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: var(--theme-color)
}

.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active:before {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    border-color: var(--theme-color)
}

.has-shadow .swiper-pagination-bullets {
    margin: 40px 0 17px 0
}

.slider-area {
    position: relative
}

.slider-arrow {
    display: inline-block;
    padding: 0;
    background-color: var(--smoke-color2);
    color: var(--theme-color);
    position: absolute;
    top: 50%;
    border: 0;
    left: var(--pos-x, -120px);
    width: var(--icon-size, 56px);
    height: var(--icon-size, 56px);
    line-height: var(--icon-size, 54px);
    font-size: var(--icon-font-size, 20px);
    margin-top: calc(var(--icon-size, 56px) / -2);
    z-index: 3;
    border-radius: 6px
}

.slider-arrow.default {
    position: relative;
    --pos-x: 0;
    margin-top: 0
}

.slider-arrow.icon-sm {
    width: var(--icon-size, 46px);
    height: var(--icon-size, 46px);
    line-height: var(--icon-size, 46px);
    font-size: 18px
}

.slider-arrow.slider-next {
    right: var(--pos-x, -120px);
    left: auto
}

.slider-arrow:hover {
    background-color: var(--theme-color);
    color: var(--white-color);
    border-color: var(--theme-color)
}

.arrow-margin .slider-arrow {
    top: calc(50% - 30px)
}

.arrow-wrap {
    position: relative
}

.arrow-wrap .slider-arrow {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: scale(0.4);
    -ms-transform: scale(0.4);
    transform: scale(0.4)
}

@media (max-width: 1299px) {
    .arrow-wrap .slider-arrow {
        display: none
    }
}

.arrow-wrap:hover .slider-arrow {
    opacity: 1;
    visibility: visible;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

@media (max-width: 1500px) {
    .slider-arrow {
        --arrow-horizontal: -20px;
        --pos-x: -70px
    }
}

@media (max-width: 1399px) {
    .slider-arrow {
        --arrow-horizontal: 40px;
        --pos-x: -17px
    }
}

.icon-box .slider-arrow:not(:last-child) {
    margin-right: 8px
}

@media (max-width: 991px) {
    .slider-arrow {
        --icon-size: 40px;
        line-height: 38px;
        margin-right: 40px;
        font-size: 14px
    }

    .slider-arrow.slider-next {
        margin-right: 0;
        margin-left: 40px
    }

    .slick-dots {
        margin: 40px 0 0 0
    }

    .icon-box .slider-arrow {
        margin-right: 0
    }
}

.slick-3d-active {
    margin-left: -12%;
    margin-right: -12%
}

.slick-3d-active .slick-list {
    padding-left: 30% !important;
    padding-right: 30% !important
}

.slick-3d-active .slick-track {
    max-width: 100% !important;
    -webkit-transform: translate3d(0, 0, 0) !important;
    transform: translate3d(0, 0, 0) !important;
    -webkit-perspective: 100px;
    perspective: 100px
}

.slick-3d-active .slick-slide {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    opacity: 0;
    width: 100% !important;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-transition: opacity 1s, -webkit-transform 1s;
    transition: opacity 1s, -webkit-transform 1s;
    transition: transform 1s, opacity 1s;
    transition: transform 1s, opacity 1s, -webkit-transform 1s
}

.slick-3d-active .slick-3d-next,
.slick-3d-active .slick-3d-prev,
.slick-3d-active .slick-3d-next2,
.slick-3d-active .slick-3d-prev2 {
    display: block
}

.slick-3d-active .slick-current {
    opacity: 1;
    position: relative;
    display: block;
    z-index: 2
}

.slick-3d-active .slick-3d-next {
    opacity: 1;
    -webkit-transform: translate3d(50%, 0, -21px);
    transform: translate3d(50%, 0, -21px);
    z-index: 1;
    -webkit-perspective: 1000px;
    perspective: 1000px
}

.slick-3d-active .slick-3d-next2 {
    opacity: 1;
    -webkit-transform: translate3d(40%, 0, -23px);
    transform: translate3d(40%, 0, -23px);
    z-index: 0;
    -webkit-perspective: 1000px;
    perspective: 1000px
}

.slick-3d-active .slick-3d-prev {
    opacity: 1;
    -webkit-transform: translate3d(-50%, 0, -21px);
    transform: translate3d(-50%, 0, -21px)
}

.slick-3d-active .slick-3d-prev .testi-card {
    box-shadow: none
}

.slick-3d-active .slick-3d-prev2 {
    opacity: 1;
    -webkit-transform: translate3d(-40%, 0, -23px);
    transform: translate3d(-40%, 0, -23px)
}

.th-menu-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 999999;
    width: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: all ease 0.8s;
    transition: all ease 0.8s;
    opacity: 0;
    visibility: hidden
}

.th-menu-wrapper .mobile-logo {
    padding-bottom: 30px;
    padding-top: 40px;
    display: block;
    text-align: center;
    background-color: var(--smoke-color2)
}

.th-menu-wrapper .mobile-logo svg {
    max-width: 185px
}

.th-menu-wrapper .th-menu-toggle {
    border: none;
    font-size: 22px;
    position: absolute;
    right: -16.5px;
    top: 25px;
    padding: 0;
    line-height: 1;
    width: 33px;
    height: 33px;
    line-height: 35px;
    font-size: 18px;
    z-index: 1;
    color: var(--white-color);
    background-color: var(--theme-color);
    border-radius: 50%
}

.th-menu-wrapper .th-menu-toggle:hover {
    background-color: var(--title-color);
    color: var(--white-color)
}

.th-menu-wrapper .th-menu-area {
    width: 100%;
    max-width: 310px;
    background-color: #fff;
    border-right: 3px solid var(--theme-color);
    height: 100%;
    position: relative;
    left: -110%;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all ease 1s;
    transition: all ease 1s;
    z-index: 1
}

.th-menu-wrapper.th-body-visible {
    opacity: 1;
    visibility: visible
}

.th-menu-wrapper.th-body-visible .th-menu-area {
    left: 0;
    opacity: 1;
    visibility: visible
}

.th-mobile-menu {
    overflow-y: scroll;
    max-height: calc(100vh - 200px);
    padding-bottom: 40px;
    margin-top: 33px;
    text-align: left
}

.th-mobile-menu ul {
    margin: 0;
    padding: 0 0
}

.th-mobile-menu ul li {
    border-bottom: 1px solid #fdedf1;
    list-style-type: none
}

.th-mobile-menu ul li li:first-child {
    border-top: 1px solid #fdedf1
}

.th-mobile-menu ul li a {
    display: block;
    position: relative;
    padding: 12px 0;
    line-height: 1.4;
    font-size: 16px;
    text-transform: capitalize;
    color: var(--title-color);
    padding-left: 18px
}

.th-mobile-menu ul li a:before {
    content: '\f105';
    font-family: var(--icon-font);
    position: absolute;
    left: 0;
    top: 12px;
    margin-right: 10px;
    display: inline-block
}

.th-mobile-menu ul li.th-active>a {
    color: var(--theme-color)
}

.th-mobile-menu ul li.th-active>a:before {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg)
}

.th-mobile-menu ul li ul li {
    padding-left: 20px
}

.th-mobile-menu ul li ul li:last-child {
    border-bottom: none
}

.th-mobile-menu ul .th-item-has-children>a .th-mean-expand {
    position: absolute;
    right: 0;
    top: 50%;
    font-weight: 400;
    font-size: 12px;
    width: 25px;
    height: 25px;
    line-height: 25px;
    margin-top: -12.5px;
    display: inline-block;
    text-align: center;
    background-color: var(--smoke-color);
    color: var(--title-color);
    box-shadow: 0 0 20px -8px rgba(173, 136, 88, 0.5);
    border-radius: 50%
}

.th-mobile-menu ul .th-item-has-children>a .th-mean-expand:before {
    content: '\f067';
    font-family: var(--icon-font)
}

.th-mobile-menu ul .th-item-has-children>a:after {
    content: "\f067";
    font-family: var(--icon-font);
    width: 22px;
    height: 22px;
    line-height: 22px;
    display: inline-block;
    text-align: center;
    font-size: 12px;
    border-radius: 50px;
    background-color: var(--smoke-color);
    float: right;
    margin-top: 1px
}

.th-mobile-menu ul .th-item-has-children.th-active>a .th-mean-expand:before {
    content: '\f068'
}

.th-mobile-menu ul .th-item-has-children.th-active>a:after {
    content: "\f068"
}

.th-mobile-menu>ul {
    padding: 0 40px
}

.th-mobile-menu>ul>li:last-child {
    border-bottom: none
}

.th-menu-toggle {
    width: 56px;
    height: 56px;
    padding: 0;
    font-size: 20px;
    border: none;
    background: linear-gradient(
    90deg,
    #B87500 0%,
    #FFD84D 45%,
    #D99A00 100%
);;
    color: var(--white-color);
    display: inline-block;
    border-radius: 5px
}

.th-menu-toggle:hover {
    background-color: var(--title-color)
}

.th-menu-toggle.style-text,
.th-menu-toggle.style-text-white {
    width: auto;
    height: auto;
    background-color: transparent;
    color: var(--title-color);
    font-size: 20px
}

.th-menu-toggle.style-text i,
.th-menu-toggle.style-text-white i {
    margin-right: 10px
}

.th-menu-toggle.style-text-white {
    color: var(--white-color)
}

@media (max-width: 400px) {
    .th-menu-wrapper .th-menu-area {
        width: 100%;
        max-width: 270px
    }

    .th-mobile-menu>ul {
        padding: 0 20px
    }
}

.preloader {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 999;
    background-color: var(--title-color)
}

.preloader .th-btn {
    padding: 15px 20px;
    border-radius: 0;
    font-size: 14px
}

.preloader-inner {
    text-align: center;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center;
    line-height: 1
}

.preloader-inner img {
    display: block;
    margin: 0 auto 0 auto
}

.loader {
    width: 96px;
    box-sizing: content-box;
    height: 48px;
    background: #fff;
    border-color: var(--theme-color);
    border-style: solid;
    border-width: 2px 2px 50px 2px;
    border-radius: 100%;
    position: relative;
    -webkit-animation: 3s yinYang linear infinite;
    animation: 3s yinYang linear infinite
}

.loader:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    background: #fff;
    border: 18px solid var(--theme-color);
    border-radius: 100%;
    width: 12px;
    height: 12px;
    box-sizing: content-box
}

.loader:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background: var(--theme-color);
    border: 18px solid #fff;
    border-radius: 100%;
    width: 12px;
    height: 12px;
    box-sizing: content-box
}

@-webkit-keyframes yinYang {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes yinYang {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.th-btn {
    position: relative;
    z-index: 2;
    overflow: hidden;
    vertical-align: middle;
    display: inline-block;
    border: none;
    text-transform: uppercase;
    text-align: center;
    background: linear-gradient(
    90deg,
    #B87500 0%,
    #FFD84D 45%,
    #D99A00 100%
);;
    color: var(--white-color);
    font-family: var(--title-font);
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    padding: 21px 30px;
    min-width: 170px;
    border-radius: 6px
}

.th-btn:before {
    content: "";
    position: absolute;
    height: calc(100% + 2px);
    width: calc(100% + 30px);
    top: -1px;
    right: 100%;
    background: linear-gradient(
    90deg,
    #003B9E 0%,
    #006CFF 45%,
    #003B9E 100%
);;
    z-index: -1;
    -webkit-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out;
    border-radius: inherit;
    -webkit-clip-path: polygon(calc(100% - 30px) 0, 100% 50%, calc(100% - 30px) 100%, 0 100%, 0 0);
    clip-path: polygon(calc(100% - 30px) 0, 100% 50%, calc(100% - 30px) 100%, 0 100%, 0 0)
}

.th-btn:hover,
.th-btn.active {
    color: var(--white-color);
    box-shadow: none
}

.th-btn:hover:before,
.th-btn.active:before {
    right: -30px
}

.th-btn.style2 {
    background-color: transparent;
    color: var(--white-color);
    border: 1px solid var(--white-color);
    padding: 20px 40px;
    box-shadow: none
}

.th-btn.style2:hover {
    color: var(--title-color);
    border-color: var(--white-color)
}

.th-btn.style2:hover:before,
.th-btn.style2:hover:after {
    background-color: var(--white-color)
}

.th-btn.style3:hover {
    color: var(--title-color)
}

.th-btn.style3:hover:before,
.th-btn.style3:hover:after {
    background-color: var(--white-color)
}

.th-btn.style4 {
    background-color: var(--theme-color2);
    color: var(--white-color)
}

.th-btn.style4:hover {
    color: var(--white-color)
}

.th-btn.style4:hover:before,
.th-btn.style4:hover:after {
    background-color: var(--title-color)
}

.th-btn.style5 {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.th-btn.style5:hover {
    color: var(--theme-color)
}

.th-btn.style5:hover:before,
.th-btn.style5:hover:after {
    background-color: var(--white-color)
}

.th-btn.style6 {
    background-color: var(--title-color)
}

.th-btn.style6:hover {
    color: var(--theme-color)
}

.th-btn.style6:hover:before,
.th-btn.style6:hover:after {
    background-color: var(--white-color)
}

.th-btn.btn-fw {
    width: 100%
}

.th-btn.btn-fw:before,
.th-btn.btn-fw:after {
    display: none
}

.th-btn.btn-fw:hover {
    background-color: var(--title-color)
}

.th-btn.btn-sm {
    padding: 15px 25px;
    min-width: 144px
}

.icon-btn {
    display: inline-block;
    width: var(--btn-size, 56px);
    height: var(--btn-size, 56px);
    line-height: var(--btn-size, 54px);
    font-size: var(--btn-font-size, 20px);
    background-color: var(--icon-bg, #fff);
    color: var(--title-color);
    text-align: center;
    border-radius: 6px;
    border: 1px solid var(--th-border-color);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    position: relative
}

.icon-btn:hover {
    background-color: var(--theme-color);
    color: var(--white-color);
    border-color: var(--theme-color)
}

.icon-btn.style2 {
    background-color: var(--white-color);
    color: var(--theme-color);
    border: none;
    border-radius: 6px;
    line-height: var(--btn-size, 56px)
}

.icon-btn.style2:hover {
    background-color: var(--title-color)
}

.play-btn {
    display: inline-block;
    position: relative;
    z-index: 1
}

.play-btn>i {
    display: inline-block;
    width: var(--icon-size, 56px);
    height: var(--icon-size, 56px);
    line-height: var(--icon-size, 56px);
    text-align: center;
    background-color: var(--white-color);
    color: var(--theme-color);
    font-size: var(--icon-font-size, 1.4em);
    border-radius: 50%;
    z-index: 1;
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s
}

.play-btn:after,
.play-btn:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background-color: var(--white-color);
    z-index: -1;
    border-radius: 50%;
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s
}

.play-btn:after {
    -webkit-animation-delay: 2s;
    animation-delay: 2s
}

.play-btn:hover:after,
.play-btn:hover::before,
.play-btn:hover i {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.play-btn.style2:before,
.play-btn.style2:after {
    background-color: transparent;
    border: 1px solid var(--white-color)
}

.play-btn.style3>i {
    --icon-size: 40px;
    font-size: 14px;
    border: 1px solid;
    background-color: var(--theme-color);
    color: var(--white-color)
}

.play-btn.style3:before,
.play-btn.style3:after {
    background-color: var(--white-color)
}

.play-btn.style3:hover>i {
    background-color: var(--white-color);
    color: var(--theme-color)
}

.play-btn.style3:hover:before,
.play-btn.style3:hover:after {
    background-color: var(--white-color)
}

.link-btn {
    font-weight: 600;
    font-size: 14px;
    display: inline-block;
    line-height: 0.8;
    position: relative;
    padding-bottom: 2px;
    margin-bottom: -2px;
    text-transform: uppercase;
    color: var(--theme-color)
}

.link-btn i {
    margin-left: 5px;
    font-size: 0.9rem
}

.link-btn:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 2px;
    background-color: var(--theme-color);
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s
}

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

.link-btn:hover::before {
    width: 100%
}

.line-btn {
    font-size: 14px;
    font-weight: 600;
    display: inline-block;
    line-height: 0.8;
    position: relative;
    padding-bottom: 4px;
    margin-bottom: -1px;
    text-transform: uppercase;
    color: var(--theme-color)
}

.line-btn i {
    margin-left: 5px;
    font-size: 0.9rem
}

.line-btn:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background-color: var(--theme-color);
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s
}

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

.line-btn:hover::before {
    background-color: var(--theme-color);
    width: 45px
}

.scroll-top {
    position: fixed;
    right: 30px;
    bottom: 30px;
    height: 50px;
    width: 50px;
    cursor: pointer;
    display: block;
    border-radius: 50px;
    z-index: 10000;
    opacity: 1;
    visibility: hidden;
    -webkit-transform: translateY(45px);
    -ms-transform: translateY(45px);
    transform: translateY(45px);
    -webkit-transition: all 300ms linear;
    transition: all 300ms linear
}

.scroll-top:after {
    content: "\f062";
    font-family: var(--icon-font);
    position: absolute;
    text-align: center;
    line-height: 50px;
    font-size: 20px;
    color: #0650ff;
    left: 0;
    top: 0;
    height: 50px;
    width: 50px;
    cursor: pointer;
    display: block;
    z-index: 1;
    border: 2px solid #0650ff;
    box-shadow: none;
    border-radius: 50%
}

.scroll-top svg {
    color: var(--theme-color);
    border-radius: 50%;
    background: var(--white-color)
}

.scroll-top svg path {
    fill: none
}

.scroll-top .progress-circle path {
    stroke: var(--theme-color);
    stroke-width: 20px;
    box-sizing: border-box;
    -webkit-transition: all 400ms linear;
    transition: all 400ms linear
}

.scroll-top.show {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.sec-title {
    margin-bottom: calc(var(--section-title-space) - 8px);
    margin-top: -0.18em;
    text-transform: capitalize;
    font-weight: 700
}

.sub-title {
    display: block;
    font-family: var(--title-font);
    font-size: 20px;
    font-weight: 500;
    color: var(--theme-color2);
    margin-bottom: 24px;
    padding-top: 5px;
    text-transform: uppercase;
    line-height: 28px
}

.sub-title:has(img) {
    margin-top: 0
}

.sub-title.h4 {
    font-size: 30px;
    font-weight: 600;
    line-height: 1;
    margin-top: -0.14em
}

.sub-title img {
    margin: -14px 10px 0 0
}

.sub-title i {
    font-size: 32px;
    margin-right: 10px
}

@media (max-width: 991px) {
    .sub-title i {
        font-size: 24px
    }
}

.sub-title2 {
    display: block;
    font-family: var(--title-font);
    font-size: 18px;
    font-weight: 600;
    color: var(--theme-color2);
    margin-bottom: 10px;
    margin-top: -0.35em
}

.box-title {
    font-size: 24px;
    line-height: 1.417;
    font-weight: 700;
    margin-top: -0.32em
}

.box-title a {
    color: inherit
}

.box-title a:hover {
    color: var(--theme-color)
}

.box-subtitle {
    margin-bottom: 8px
}

.box-title2 {
    font-size: 20px;
    line-height: 1.5;
    font-weight: 700;
    margin-top: -0.35em
}

.box-title2 a {
    color: inherit
}

.box-title2 a:hover {
    color: var(--theme-color)
}

.title-area {
    margin-bottom: calc(var(--section-title-space) - 8px);
    position: relative;
    z-index: 2
}

.title-area .sec-title {
    margin-bottom: 24px
}

.title-area.mb-0 .sec-title {
    margin-bottom: -0.24em
}

.title-area .th-btn {
    margin-top: 20px;
    margin-bottom: 10px
}

.mb-32 {
    margin-bottom: 32px
}

hr.title-line {
    margin-top: 0;
    background-color: var(--th-border-color);
    opacity: 1
}

.sec-btn {
    text-align: center
}

.sec-btn,
.title-line {
    margin-bottom: var(--section-title-space)
}

@media (max-width: 1199px) {
    .sub-title {
        margin-bottom: 20px
    }

    .title-area,
    .sec-title {
        --section-title-space: 60px
    }

    .title-area.mb-45,
    .sec-title.mb-45 {
        margin-bottom: 36px
    }

    .title-area.mb-50,
    .sec-title.mb-50 {
        margin-bottom: 40px
    }

    .sec-btn,
    .title-line {
        --section-title-space: 55px
    }
}

@media (max-width: 991px) {

    .title-area,
    .sec-title {
        --section-title-space: 50px
    }

    .title-area.mb-45,
    .sec-title.mb-45 {
        margin-bottom: 35px
    }

    .sec-btn,
    .title-line {
        --section-title-space: 50px
    }

    .sub-title.h4 {
        font-size: 22px
    }
}

@media (max-width: 375px) {
    .shadow-title {
        font-size: 40px
    }
}

.shape-mockup-wrap {
    z-index: 2;
    position: relative
}

.shape-mockup {
    position: absolute;
    z-index: -1;
    pointer-events: none
}

.shape-mockup.z-index-3 {
    z-index: 3;
    pointer-events: none
}

.shape-mockup.z-index-1 {
    z-index: 1;
    pointer-events: none
}

.shape-mockup .svg-img {
    height: 110px;
    width: 110px
}

.z-index-step1 {
    position: relative;
    z-index: 4 !important
}

.z-index-common {
    position: relative;
    z-index: 3
}

.z-index-3 {
    z-index: 3
}

.z-index-n1 {
    z-index: -1
}

.media-body {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.color-scheme {
    position: fixed;
    right: -1px;
    top: calc(50% - 100px);
    z-index: 99;
    background: var(--black-color);
    padding: 20px 30px;
    border-radius: 10px 0 0 10px;
    max-width: 300px;
    -webkit-transform: translate(100%, 0);
    -ms-transform: translate(100%, 0);
    transform: translate(100%, 0);
    -webkit-transition: 0.4s;
    transition: 0.4s
}

.color-scheme-title {
    font-size: 22px;
    border-bottom: 1px solid var(--th-border-color);
    padding-bottom: 6px;
    color: var(--white-color);
    margin-bottom: 20px
}

.color-scheme-title i {
    font-size: 18px;
    margin-right: 3px
}

.color-scheme-text {
    color: var(--white-color);
    font-size: 14px;
    margin-bottom: 6px
}

.color-scheme .switchIcon {
    position: absolute;
    left: 0;
    top: 10px;
    border: 0;
    background: var(--theme-color);
    color: var(--white-color);
    height: 45px;
    width: 45px;
    border-radius: 5px 0 0 5px;
    -webkit-transform: translate(-100%, 0);
    -ms-transform: translate(-100%, 0);
    transform: translate(-100%, 0)
}

.color-scheme .color-switch-btns {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 18px;
    margin-bottom: 20px
}

.color-scheme .color-switch-btns button {
    padding: 0;
    border: 0;
    background: transparent;
    font-size: 24px;
    color: var(--theme-color);
    text-align: left
}

.color-scheme #thcolorpicker {
    padding: 0 !important;
    border: 2px solid var(--white-color);
    border-radius: 0;
    height: 25px;
    border-radius: 15px;
    overflow: hidden;
    max-width: 170px
}

.color-scheme.active {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0)
}

.badge {
    position: absolute;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: inline-block;
    text-align: center;
    background-color: var(--theme-color);
    color: var(--white-color);
    padding: 0.25em 0.4em;
    font-size: 0.7em;
    border-radius: 50%;
    top: 8px;
    right: 8px;
    font-weight: 400;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out
}

.th-social a {
    display: inline-block;
    width: var(--icon-size, 46px);
    height: var(--icon-size, 46px);
    line-height: var(--icon-size, 46px);
    background-color: var(--smoke-color);
    color: var(--title-color);
    font-size: 16px;
    text-align: center;
    margin-right: 5px;
    border-radius: 6px
}

.th-social a:last-child {
    margin-right: 0
}

.th-social a:hover {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.th-social.color-theme a {
    color: var(--body-color);
    border-color: var(--theme-color)
}

.bg-mask {
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat
}

.box-icon img {
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.box-text {
    margin-bottom: -0.5em
}

.btn-group {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 30px
}

.btn-group.style2 {
    gap: 20px 70px
}

@media (max-width: 767px) {
    .btn-group.style2 {
        gap: 20px 30px
    }
}

@media (max-width: 767px) {
    .btn-group {
        gap: 20px
    }
}

.th-bg-img {
    position: absolute;
    inset: 0
}

.th-bg-img img {
    height: 100%;
    width: 100%;
    object-fit: cover
}

.xdsoft_datetimepicker {
    background-color: var(--white-color);
    z-index: 5
}

.mfp-zoom-in .mfp-content {
    opacity: 0;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    -webkit-transform: scale(0.5);
    -ms-transform: scale(0.5);
    transform: scale(0.5)
}

.mfp-zoom-in.mfp-bg {
    opacity: 0;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease
}

.mfp-zoom-in.mfp-ready .mfp-content {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.mfp-zoom-in.mfp-ready.mfp-bg {
    opacity: 0.7
}

.mfp-zoom-in.mfp-removing .mfp-content {
    -webkit-transform: scale(0.7);
    -ms-transform: scale(0.7);
    transform: scale(0.7);
    opacity: 0
}

.mfp-zoom-in.mfp-removing.mfp-bg {
    opacity: 0
}

.font-icon {
    font-family: var(--icon-font)
}

.font-title {
    font-family: var(--title-font)
}

.font-body {
    font-family: var(--body-font)
}

.fw-extralight {
    font-weight: 100
}

.fw-light {
    font-weight: 300
}

.fw-normal {
    font-weight: 400
}

.fw-medium {
    font-weight: 500
}

.fw-semibold {
    font-weight: 600
}

.fw-bold {
    font-weight: 700
}

.fw-extrabold {
    font-weight: 800
}

.fs-md {
    font-size: 18px
}

.fs-16 {
    font-size: 16px !important
}

.fs-xs {
    font-size: 14px
}

.bg-theme {
    background-color: var(--theme-color) !important
}

.bg-theme2 {
    background-color: var(--theme-color2) !important
}

.bg-smoke {
    background-color: var(--smoke-color) !important
}

.bg-smoke2 {
    background-color: var(--smoke-color2) !important
}

.bg-white {
    background-color: var(--white-color) !important
}

.bg-black {
    background-color: var(--black-color) !important
}

.bg-title {
    background-color: var(--title-color) !important
}

.background-image,
[data-bg-src] {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center
}

.bg-fluid {
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center
}

.bg-auto {
    background-size: auto auto
}

.bg-top-center {
    background-size: auto;
    background-position: top center
}

.bg-bottom-center {
    background-size: auto;
    background-position: bottom center
}

.bg-repeat {
    background-size: auto;
    background-repeat: repeat
}

.bg-bottom-right {
    background-size: auto;
    background-position: bottom right
}

.bg-top-right {
    background-size: auto;
    background-position: top right
}

.bg-top-left {
    background-size: auto;
    background-position: top left
}

.text-theme {
    color: var(--theme-color) !important
}

.text-theme2 {
    color: var(--theme-color2) !important
}

.text-title {
    color: var(--title-color) !important
}

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

.text-white {
    color: var(--white-color) !important
}

.text-light {
    color: var(--light-color) !important
}

.text-yellow {
    color: var(--yellow-color) !important
}

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

.text-error {
    color: var(--error-color) !important
}

.text-inherit {
    color: inherit
}

.text-inherit:hover {
    color: var(--theme-color)
}

a.text-theme:hover,
.text-reset:hover {
    text-decoration: underline
}

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%
}

.position-center {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

[data-overlay] {
    position: relative;
    z-index: 2
}

[data-overlay] [class^="col-"],
[data-overlay] [class*="col-"] {
    z-index: 1
}

[data-overlay]:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1
}

[data-overlay="theme"]:before {
    background-color: var(--theme-color)
}

[data-overlay="title"]:before {
    background-color: var(--title-color)
}

[data-overlay="smoke"]:before {
    background-color: var(--smoke-color)
}

[data-overlay="white"]:before {
    background-color: var(--white-color)
}

[data-overlay="black"]:before {
    background-color: var(--black-color)
}

[data-overlay="overlay1"]:before {
    background-color: #080E1C
}

[data-opacity="1"]:before {
    opacity: .1
}

[data-opacity="2"]:before {
    opacity: .2
}

[data-opacity="3"]:before {
    opacity: .3
}

[data-opacity="4"]:before {
    opacity: .4
}

[data-opacity="5"]:before {
    opacity: .5
}

[data-opacity="6"]:before {
    opacity: .6
}

[data-opacity="7"]:before {
    opacity: .7
}

[data-opacity="8"]:before {
    opacity: .8
}

[data-opacity="9"]:before {
    opacity: .9
}

[data-opacity="10"]:before {
    opacity: 1
}

.ripple-animation,
.play-btn:after,
.play-btn:before {
    -webkit-animation-duration: var(--ripple-ani-duration);
    animation-duration: var(--ripple-ani-duration);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-name: ripple;
    animation-name: ripple
}

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

    30% {
        opacity: 0.4
    }

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

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

    30% {
        opacity: 0.4
    }

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

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

    30% {
        opacity: 0.4
    }

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

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

    30% {
        opacity: 0.4
    }

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

.fancy-animation {
    -webkit-animation: morph 8s ease-in-out infinite;
    animation: morph 8s ease-in-out infinite
}

@-webkit-keyframes morph {
    0% {
        border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%
    }

    50% {
        border-radius: 30% 60% 70% 40% / 50% 60% 30% 60%
    }

    100% {
        border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%
    }
}

@keyframes morph {
    0% {
        border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%
    }

    50% {
        border-radius: 30% 60% 70% 40% / 50% 60% 30% 60%
    }

    100% {
        border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%
    }
}

.movingX {
    -webkit-animation: movingX 8s linear infinite;
    animation: movingX 8s linear infinite
}

@-webkit-keyframes movingX {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    50% {
        -webkit-transform: translateX(50px);
        transform: translateX(50px)
    }

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

@keyframes movingX {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    50% {
        -webkit-transform: translateX(50px);
        transform: translateX(50px)
    }

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

.starani {
    -webkit-animation: starani 6s linear infinite;
    animation: starani 6s linear infinite
}

.starani:nth-child(2) {
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}

.starani:nth-child(3) {
    -webkit-animation-delay: 2s;
    animation-delay: 2s
}

.starani:nth-child(4) {
    -webkit-animation-delay: 3s;
    animation-delay: 3s
}

@-webkit-keyframes starani {
    0% {
        opacity: 1;
        -webkit-transform: scale(1) translateY(0);
        transform: scale(1) translateY(0)
    }

    50% {
        -webkit-transform: scale(0.35) translateY(40px);
        transform: scale(0.35) translateY(40px);
        opacity: 0
    }

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

@keyframes starani {
    0% {
        opacity: 1;
        -webkit-transform: scale(1) translateY(0);
        transform: scale(1) translateY(0)
    }

    50% {
        -webkit-transform: scale(0.35) translateY(40px);
        transform: scale(0.35) translateY(40px);
        opacity: 0
    }

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

.movingCar {
    -webkit-animation: movingCar 25s linear infinite;
    animation: movingCar 25s linear infinite
}

@-webkit-keyframes movingCar {
    0% {
        -webkit-transform: translateX(0) rotateY(0deg);
        transform: translateX(0) rotateY(0deg)
    }

    50% {
        -webkit-transform: translateX(calc(100vw*-1 + 108%));
        transform: translateX(calc(100vw*-1 + 108%))
    }

    51% {
        -webkit-transform: translateX(calc(100vw*-1 + 108%)) rotateY(180deg);
        transform: translateX(calc(100vw*-1 + 108%)) rotateY(180deg)
    }

    100% {
        -webkit-transform: translateX(0) rotateY(180deg);
        transform: translateX(0) rotateY(180deg)
    }
}

@keyframes movingCar {
    0% {
        -webkit-transform: translateX(0) rotateY(0deg);
        transform: translateX(0) rotateY(0deg)
    }

    50% {
        -webkit-transform: translateX(calc(100vw*-1 + 108%));
        transform: translateX(calc(100vw*-1 + 108%))
    }

    51% {
        -webkit-transform: translateX(calc(100vw*-1 + 108%)) rotateY(180deg);
        transform: translateX(calc(100vw*-1 + 108%)) rotateY(180deg)
    }

    100% {
        -webkit-transform: translateX(0) rotateY(180deg);
        transform: translateX(0) rotateY(180deg)
    }
}

.moving {
    -webkit-animation: moving 8s linear infinite;
    animation: moving 8s linear infinite
}

@-webkit-keyframes moving {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    50% {
        -webkit-transform: translateX(-50px);
        transform: translateX(-50px)
    }

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

@keyframes moving {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    50% {
        -webkit-transform: translateX(-50px);
        transform: translateX(-50px)
    }

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

.jump {
    -webkit-animation: jumpAni 7s linear infinite;
    animation: jumpAni 7s linear infinite
}

@-webkit-keyframes jumpAni {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

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

@keyframes jumpAni {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

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

.jump-reverse {
    -webkit-animation: jumpReverseAni 7s linear infinite;
    animation: jumpReverseAni 7s linear infinite
}

@-webkit-keyframes jumpReverseAni {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    50% {
        -webkit-transform: translateY(30px);
        transform: translateY(30px)
    }

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

@keyframes jumpReverseAni {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    50% {
        -webkit-transform: translateY(30px);
        transform: translateY(30px)
    }

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

.spin {
    -webkit-animation: spin 10s linear infinite;
    animation: spin 10s linear infinite
}

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

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

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

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

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

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

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

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

.bg-color-ani,
.color-animate {
    -webkit-animation: bgColor 6s linear infinite;
    animation: bgColor 6s linear infinite
}

@-webkit-keyframes bgColor {
    0% {
        background-color: #F2BA4C
    }

    25% {
        background-color: #81F24C
    }

    50% {
        background-color: #41F27D
    }

    75% {
        background-color: #0500FF
    }

    100% {
        background-color: #F2BA4C
    }
}

@keyframes bgColor {
    0% {
        background-color: #F2BA4C
    }

    25% {
        background-color: #81F24C
    }

    50% {
        background-color: #41F27D
    }

    75% {
        background-color: #0500FF
    }

    100% {
        background-color: #F2BA4C
    }
}

@-webkit-keyframes animate-positive {
    0% {
        width: 0
    }
}

@keyframes animate-positive {
    0% {
        width: 0
    }
}

.bubble_ani,
.fadein,
.scalein,
.slidetopleft,
.slidebottomright,
.slideinleft,
.slideinright,
.slideindown,
.slideinup,
.rollinleft,
.rollinright {
    opacity: 0;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-duration: 1.3s;
    animation-duration: 1.3s;
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
    -webkit-animation-name: var(--animation-name);
    animation-name: var(--animation-name)
}

.bubble_ani {
    -webkit-animation-duration: 7s;
    animation-duration: 7s
}

.swiper-slide-active .fadein {
    --animation-name: fadein
}

.swiper-slide-active .scalein {
    --animation-name: scalein
}

.swiper-slide-active .slidetopleft {
    --animation-name: slidetopleft
}

.swiper-slide-active .slidebottomright {
    --animation-name: slidebottomright
}

.swiper-slide-active .slideinleft {
    --animation-name: slideinleft
}

.swiper-slide-active .slideinright {
    --animation-name: slideinright
}

.swiper-slide-active .slideinup {
    --animation-name: slideinup
}

.swiper-slide-active .slideindown {
    --animation-name: slideindown
}

.swiper-slide-active .rollinleft {
    --animation-name: rollinleft
}

.swiper-slide-active .rollinright {
    --animation-name: rollinright
}

.swiper-slide-active .bubble_ani {
    --animation-name: bubble_ani
}

@-webkit-keyframes fadein {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes fadein {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes slideinup {
    0% {
        opacity: 0;
        -webkit-transform: translateY(100px);
        transform: translateY(100px)
    }

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

@keyframes slideinup {
    0% {
        opacity: 0;
        -webkit-transform: translateY(100px);
        transform: translateY(100px)
    }

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

@-webkit-keyframes bubble_ani {
    0% {
        opacity: 1;
        -webkit-transform: translateY(150px);
        transform: translateY(150px)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-650px);
        transform: translateY(-650px)
    }
}

@keyframes bubble_ani {
    0% {
        opacity: 1;
        -webkit-transform: translateY(150px);
        transform: translateY(150px)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-650px);
        transform: translateY(-650px)
    }
}

@-webkit-keyframes slideinright {
    0% {
        opacity: 0;
        -webkit-transform: translateX(180px);
        transform: translateX(180px)
    }

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

@keyframes slideinright {
    0% {
        opacity: 0;
        -webkit-transform: translateX(180px);
        transform: translateX(180px)
    }

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

@-webkit-keyframes slideindown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-100px);
        transform: translateY(-100px)
    }

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

@keyframes slideindown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-100px);
        transform: translateY(-100px)
    }

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

@-webkit-keyframes slideinleft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100px);
        transform: translateX(-100px)
    }

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

@keyframes slideinleft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100px);
        transform: translateX(-100px)
    }

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

@-webkit-keyframes slidebottomright {
    0% {
        opacity: 0;
        -webkit-transform: translateX(120px) translateY(120px);
        transform: translateX(120px) translateY(120px)
    }

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

@keyframes slidebottomright {
    0% {
        opacity: 0;
        -webkit-transform: translateX(120px) translateY(120px);
        transform: translateX(120px) translateY(120px)
    }

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

@-webkit-keyframes slidetopleft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100px) translateY(-100px);
        transform: translateX(-100px) translateY(-100px)
    }

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

@keyframes slidetopleft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100px) translateY(-100px);
        transform: translateX(-100px) translateY(-100px)
    }

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

.widget_nav_menu ul,
.widget_meta ul,
.widget_pages ul,
.widget_archive ul,
.widget_categories ul,
.wp-block-categories ul {
    list-style: none;
    padding: 0;
    margin: 0 0 0 0
}

.widget_nav_menu a,
.widget_meta a,
.widget_pages a,
.widget_archive a,
.widget_categories a,
.wp-block-categories a {
    font-size: 18px;
    font-weight: 500;
    font-family: var(--title-font);
    display: block;
    background-color: var(--white-color);
    box-shadow: 0px 2px 4px rgba(2, 29, 53, 0.1);
    margin-bottom: 14px;
    padding: 17px 45px 17px 30px;
    font-size: 16px;
    line-height: 1.313;
    color: var(--title-color);
    border-radius: 6px;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.widget_nav_menu a::before,
.widget_meta a::before,
.widget_pages a::before,
.widget_archive a::before,
.widget_categories a::before,
.wp-block-categories a::before {
    content: '\f061';
    position: absolute;
    right: 30px;
    top: 17px;
    font-family: var(--icon-font);
    font-weight: 600;
    color: inherit
}

.widget_nav_menu li,
.widget_meta li,
.widget_pages li,
.widget_archive li,
.widget_categories li,
.wp-block-categories li {
    display: block;
    position: relative
}

.widget_nav_menu li>span,
.widget_meta li>span,
.widget_pages li>span,
.widget_archive li>span,
.widget_categories li>span,
.wp-block-categories li>span {
    color: var(--body-color);
    text-align: center;
    position: absolute;
    right: 0;
    top: 14px;
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s;
    pointer-events: none;
    min-width: 20px;
    text-align: right
}

.widget_nav_menu .menu>li:last-child>a,
.widget_nav_menu>ul>li:last-child>a,
.widget_meta .menu>li:last-child>a,
.widget_meta>ul>li:last-child>a,
.widget_pages .menu>li:last-child>a,
.widget_pages>ul>li:last-child>a,
.widget_archive .menu>li:last-child>a,
.widget_archive>ul>li:last-child>a,
.widget_categories .menu>li:last-child>a,
.widget_categories>ul>li:last-child>a,
.wp-block-categories .menu>li:last-child>a,
.wp-block-categories>ul>li:last-child>a {
    border-bottom: none
}

.widget_nav_menu a:hover,
.widget_meta a:hover,
.widget_pages a:hover,
.widget_archive a:hover,
.widget_categories a:hover,
.wp-block-categories a:hover {
    background-color: #EAEEFA;
    color: var(--theme-color);
    box-shadow: none;
    border-left: 5px solid var(--theme-color)
}

.widget_nav_menu .sub-menu,
.widget_nav_menu .children,
.widget_meta .sub-menu,
.widget_meta .children,
.widget_pages .sub-menu,
.widget_pages .children,
.widget_archive .sub-menu,
.widget_archive .children,
.widget_categories .sub-menu,
.widget_categories .children,
.wp-block-categories .sub-menu,
.wp-block-categories .children {
    margin-left: 10px
}

.wp-block-categories {
    list-style: none;
    padding: 0
}

.wp-block-categories>li:last-child>a {
    border-bottom: none
}

.widget_nav_menu a,
.widget_meta a,
.widget_pages a {
    padding-right: 20px
}

.widget_nav_menu .sub-menu {
    margin-left: 10px
}

.wp-block-archives {
    list-style: none;
    margin: 0;
    padding: 0;
    margin-bottom: 20px
}

.wp-block-archives a:not(:hover) {
    color: inherit
}

.th-blog ul.wp-block-archives li {
    margin: 5px 0
}

.widget {
    padding: var(--widget-padding-y, 40px) var(--widget-padding-x, 40px);
    background-color: var(--smoke-color);
    margin-bottom: 40px;
    position: relative;
    border-radius: 10px
}

.widget[data-overlay]:before {
    z-index: -1
}

.widget .th-social a {
    box-shadow: 0px 2px 14px rgba(4, 6, 66, 0.1)
}

.widget select,
.widget input,
.widget .form-select,
.widget .form-control,
.widget textarea {
    background-color: var(--white-color);
    border-radius: 6px
}

.widget textarea {
    min-height: 120px
}

.widget .form-group>i {
    background-color: var(--white-color)
}

.widget_title {
    position: relative;
    font-size: 24px;
    font-weight: 700;
    font-family: var(--title-font);
    line-height: 1em;
    padding-bottom: 20px;
    margin: -0.12em 0 38px 0
}

.widget_title:after,
.widget_title:before {
    content: '';
    height: 3px;
    width: 100%;
    background-color: var(--th-border-color);
    position: absolute;
    bottom: 0;
    left: 0;
    border-radius: 99px
}

.widget_title:after {
    background-color: var(--theme-color);
    width: 30px
}

.widget-form {
    --bs-gutter-x: 20px
}

.widget .search-form {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.widget .search-form input {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    border-radius: 6px;
    padding-right: 25px;
    border: 1px solid transparent;
    box-shadow: 0px 13px 25px rgba(0, 0, 0, 0.04)
}

.widget .search-form input:focus {
    border-color: var(--theme-color)
}

.widget .search-form button {
    border: none;
    font-size: 16px;
    font-size: 500;
    background-color: var(--theme-color);
    color: var(--white-color);
    display: inline-block;
    padding: 0;
    width: 56px;
    height: 100%;
    text-align: center;
    border-radius: 6px;
    position: absolute;
    top: 0;
    right: 0
}

.widget .search-form button:hover {
    background-color: var(--title-color)
}

.wp-block-tag-cloud a,
.tagcloud a {
    display: inline-block;
    font-size: 14px;
    font-weight: 400;
    font-family: var(--body-font);
    text-transform: capitalize;
    line-height: 1;
    padding: 13px 24px;
    margin-right: 6px;
    margin-bottom: 10px;
    color: var(--body-color);
    background-color: var(--white-color);
    border-radius: 6px
}

.wp-block-tag-cloud a:hover,
.tagcloud a:hover {
    background-color: var(--theme-color);
    color: var(--white-color) !important;
    border-color: var(--theme-color)
}

.wp-block-tag-cloud,
.tagcloud {
    margin-right: -10px;
    margin-bottom: -10px
}

.call-feature {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    gap: 20px
}

.call-feature .box-label {
    color: var(--light-color);
    margin-bottom: 5px
}

.call-feature .box-link {
    color: var(--white-color);
    font-size: 18px;
    font-weight: 600
}

.call-feature .box-link:hover {
    color: var(--theme-color)
}

.widget_banner {
    background-position: bottom center
}

.widget-banner {
    padding-top: 280px
}

.widget-banner .box-title {
    color: var(--white-color)
}

.widget-banner .box-icon {
    width: 60px;
    height: 60px;
    line-height: 60px;
    text-align: center;
    background-color: var(--theme-color);
    color: var(--white-color);
    border-radius: 99px;
    font-size: 22px
}

.sidebar-gallery {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    max-width: 355px
}

.sidebar-gallery .gallery-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    color: var(--white-color);
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translate(-50%, 20px);
    -ms-transform: translate(-50%, 20px);
    transform: translate(-50%, 20px)
}

.sidebar-gallery .gallery-btn:hover {
    color: var(--theme-color)
}

.sidebar-gallery .gallery-thumb {
    overflow: hidden;
    position: relative;
    border-radius: 6px
}

.sidebar-gallery .gallery-thumb:before {
    content: '';
    height: calc(100% - 14px);
    width: calc(100% - 14px);
    background-color: var(--title-color);
    opacity: 0.6;
    position: absolute;
    top: 7px;
    left: 7px;
    border: 1px solid var(--white-color);
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    border-radius: inherit;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.sidebar-gallery .gallery-thumb img {
    width: 100%
}

.sidebar-gallery .gallery-thumb:hover:before {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1)
}

.sidebar-gallery .gallery-thumb:hover .gallery-btn {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.sidebar-gallery .wp-block-image {
    overflow: hidden;
    position: relative;
    border-radius: 5px;
    width: 100% !important
}

.sidebar-gallery .wp-block-image img {
    width: 100%
}

.recent-post {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 20px
}

.recent-post:last-child {
    margin-bottom: 0
}

.recent-post .media-img {
    margin-right: 15px;
    width: 85px;
    overflow: hidden;
    border-radius: 8px;
    position: relative
}

.recent-post .media-img img {
    width: 100%;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.recent-post .media-img:after {
    content: '\f0c1';
    font-family: var(--icon-font);
    position: absolute;
    inset: 0;
    text-align: center;
    line-height: 85px;
    font-size: 24px;
    background-color: rgba(0, 0, 0, 0.7);
    color: var(--theme-color);
    pointer-events: none;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.recent-post .post-title {
    font-weight: 600;
    font-size: 16px;
    line-height: 26px;
    margin: 0 0 8px 0;
    font-family: var(--title-font);
    text-transform: capitalize
}

.recent-post .recent-post-meta a {
    text-transform: capitalize;
    font-size: 14px;
    color: var(--body-color);
    font-family: var(--body-font)
}

.recent-post .recent-post-meta a i {
    margin-right: 6px;
    color: var(--theme-color)
}

.recent-post .recent-post-meta a:hover {
    color: var(--theme-color)
}

.recent-post:hover .media-img img {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1)
}

.recent-post:hover .media-img:after {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.sidebar-area {
    margin-bottom: -10px
}

.sidebar-area ul.wp-block-latest-posts {
    margin-bottom: 0
}

.sidebar-area ul.wp-block-latest-posts li:last-child {
    margin-bottom: 0
}

.sidebar-area select,
.sidebar-area input {
    background-color: var(--white-color)
}

.sidebar-area .widget_nav_menu>ul,
.sidebar-area .widget_nav_menu .menu,
.sidebar-area .widget_meta>ul,
.sidebar-area .widget_meta .menu,
.sidebar-area .widget_pages>ul,
.sidebar-area .widget_pages .menu,
.sidebar-area .widget_archive>ul,
.sidebar-area .widget_archive .menu,
.sidebar-area .widget_categories>ul,
.sidebar-area .widget_categories .menu,
.sidebar-area .wp-block-categories>ul,
.sidebar-area .wp-block-categories .menu {
    margin: 0 0 -14px 0
}

.sidebar-area .wp-block-categories {
    margin: 0px 0 -14px 0
}

.sidebar-area .sidebar-gallery {
    margin-bottom: 0 !important
}

.sidebar-area .widget .wp-block-search {
    margin-bottom: 0
}

.sidebar-area .wp-block-search__label,
.sidebar-area .wp-block-group__inner-container h2 {
    position: relative;
    font-size: 24px;
    font-weight: 700;
    font-family: var(--title-font);
    line-height: 1em;
    padding-bottom: 20px;
    margin: -0.12em 0 38px 0
}

.sidebar-area .wp-block-search__label:after,
.sidebar-area .wp-block-search__label:before,
.sidebar-area .wp-block-group__inner-container h2:after,
.sidebar-area .wp-block-group__inner-container h2:before {
    content: '';
    height: 3px;
    width: 100%;
    background-color: var(--th-border-color);
    position: absolute;
    bottom: 0;
    left: 0
}

.sidebar-area .wp-block-search__label:after,
.sidebar-area .wp-block-group__inner-container h2:after {
    background-color: var(--theme-color);
    width: 40px
}

.sidebar-area ol.wp-block-latest-comments {
    padding: 0;
    margin: 0
}

.sidebar-area ol.wp-block-latest-comments li {
    line-height: 1.5;
    margin: 0 0 20px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    padding-bottom: 20px
}

.sidebar-area ol.wp-block-latest-comments li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none
}

.download-widget-wrap .th-btn {
    width: 100%
}

.download-widget-wrap .th-btn:first-child {
    margin-bottom: 15px
}

.download-widget-wrap .th-btn.style2 {
    color: var(--body-color)
}

.download-widget-wrap .th-btn.style2:before {
    background-color: var(--theme-color)
}

.download-widget-wrap .th-btn.style2:hover {
    color: var(--white-color);
    border-color: var(--theme-color)
}

.widget_call {
    background-color: var(--title-color);
    position: relative;
    padding: 0 !important
}

.widget_call .widget_title {
    color: var(--white-color)
}

.widget-map iframe {
    min-height: 280px
}

.widget-call {
    position: relative;
    z-index: 2;
    overflow: hidden;
    text-align: center;
    padding: 0 10px var(--widget-padding-y, 40px) 10px
}

.widget-call:before {
    content: '';
    width: 368px;
    height: 368px;
    background-color: var(--theme-color);
    border: 6px solid var(--white-color);
    position: absolute;
    bottom: calc(100% - 120px);
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    border-radius: 50%;
    z-index: -1
}

.widget-call .text {
    display: block;
    margin: 22px auto 25px auto;
    color: var(--white-color);
    max-width: 310px
}

.widget-call .call {
    font-size: 30px;
    font-weight: 600;
    color: var(--white-color);
    display: block;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    margin: 30px auto 0 auto
}

.widget-call .call:hover {
    color: var(--theme-color)
}

.widget-call .play-btn {
    --icon-size: 60px
}

.widget-call .play-btn>i {
    font-size: 30px
}

.widget-call .box-title {
    font-weight: 500;
    color: var(--white-color);
    margin-bottom: 35px;
    padding-top: 20px
}

@media (max-width: 1299px) {
    .widget-call .title {
        font-size: 34px
    }
}

.widget_info .th-btn {
    width: 100%;
    margin-bottom: 10px;
    display: block
}

.widget_info .th-video {
    margin-bottom: 20px
}

.info-list {
    margin-top: -16px
}

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

.info-list i {
    color: var(--theme-color);
    width: 16px;
    margin-right: 2px;
    font-size: 16px
}

.info-list strong {
    font-weight: 500;
    color: var(--title-color)
}

.info-list li {
    border-bottom: 1px dashed #D3DBEB;
    padding: 12px 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px
}

.info-list li:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: -0.45em
}

.price_slider_wrapper {
    margin-top: -0.5em
}

.price_slider_wrapper .price_label span {
    display: inline-block;
    color: var(--body-color)
}

.price_slider_wrapper .ui-slider {
    height: 6px;
    position: relative;
    width: 100%;
    background-color: var(--theme-color);
    border: none;
    margin-top: 15px;
    margin-bottom: 25px;
    cursor: pointer;
    border-radius: 0
}

.price_slider_wrapper .ui-slider-range {
    border: none;
    cursor: pointer;
    position: absolute;
    top: 0;
    height: 100%;
    z-index: 1;
    display: block;
    background-color: var(--title-color)
}

.price_slider_wrapper .ui-slider-handle {
    width: 16px;
    height: 16px;
    line-height: 16px;
    border-radius: 50%;
    text-align: center;
    padding: 0;
    cursor: pointer;
    position: absolute;
    margin-top: -5px;
    z-index: 2;
    background-color: var(--white-color);
    border: 3px solid var(--title-color);
    -webkit-transform: translateX(-1px);
    -ms-transform: translateX(-1px);
    transform: translateX(-1px)
}

.price_slider_wrapper .ui-slider-handle:focus {
    outline: none;
    box-shadow: 1.5px 2.598px 10px 0px rgba(0, 0, 0, 0.15)
}

.price_slider_wrapper .ui-slider-handle:last-child {
    -webkit-transform: translateX(-9px);
    -ms-transform: translateX(-9px);
    transform: translateX(-9px)
}

.price_slider_wrapper button,
.price_slider_wrapper .button {
    background-color: var(--theme-color);
    color: var(--white-color);
    font-weight: 500;
    line-height: 1.6;
    text-transform: capitalize;
    text-align: center;
    border: none;
    display: inline-block;
    overflow: hidden;
    position: relative;
    z-index: 2;
    padding: 7px 20px;
    min-width: 100px;
    font-size: 14px;
    border-radius: 0;
    -webkit-transition: 0.4s ease-in;
    transition: 0.4s ease-in
}

.price_slider_wrapper button:hover,
.price_slider_wrapper .button:hover {
    background-color: var(--title-color)
}

.widget_shopping_cart .widget_title {
    margin-bottom: 35px;
    border-bottom: none
}

.widget_shopping_cart ul {
    margin: 0;
    padding: 0
}

.widget_shopping_cart ul li {
    list-style-type: none
}

.widget_shopping_cart .mini_cart_item {
    position: relative;
    padding: 30px 30px 30px 90px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    margin-bottom: 0;
    text-align: left
}

.widget_shopping_cart .mini_cart_item:first-child {
    border-top: 1px solid rgba(0, 0, 0, 0.1)
}

.widget_shopping_cart .cart_list a:not(.remove) {
    display: block;
    color: var(--body-color);
    font-size: 16px;
    font-weight: 500;
    font-family: var(--title-font);
    font-weight: 600;
    color: var(--title-color)
}

@media (max-width: 350px) {
    .widget_shopping_cart .cart_list a:not(.remove) {
        font-size: 12px
    }
}

.widget_shopping_cart .cart_list a:not(.remove):hover {
    color: var(--theme-color)
}

.widget_shopping_cart .cart_list a.remove {
    position: absolute;
    top: 50%;
    left: 95%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    color: var(--body-color)
}

.widget_shopping_cart .cart_list a.remove:hover {
    color: var(--theme-color)
}

.widget_shopping_cart .cart_list img {
    width: 75px;
    height: 75px;
    position: absolute;
    left: 0;
    top: 18px
}

.widget_shopping_cart .quantity {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    white-space: nowrap;
    vertical-align: top;
    margin-right: 20px;
    font-size: 14px;
    font-weight: 500
}

.widget_shopping_cart .total {
    margin-top: 20px;
    font-size: 18px;
    color: var(--title-color);
    font-family: var(--body-font)
}

.widget_shopping_cart .total strong {
    font-family: var(--title-font)
}

.widget_shopping_cart .amount {
    padding-left: 5px
}

.widget_shopping_cart .th-btn {
    margin-right: 15px;
    margin-bottom: 15px
}

@media (max-width: 575px) {
    .widget_shopping_cart .th-btn {
        min-width: 140px
    }
}

.th-video-widget .video-thumb {
    position: relative
}

.th-video-widget .play-btn {
    --icon-size: 60px;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.th-video-widget .play-btn i {
    font-size: 16px
}

.th-video-widget .video-thumb-title {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.4;
    margin-top: 10px;
    margin-bottom: -0.3em
}

.widget_recent_entries ul {
    margin: -0.3em 0 0 0;
    padding: 0;
    list-style: none
}

.widget_recent_entries ul li>a {
    color: var(--body-color);
    font-weight: 500;
    display: inline-block
}

.widget_recent_entries ul li>a:hover {
    color: var(--theme-color)
}

.widget_recent_entries ul li span.post-date {
    font-size: 14px
}

.widget_recent_entries ul li:not(:last-child) {
    border-bottom: 1px solid #dadada;
    padding-bottom: 12px;
    margin-bottom: 12px
}

.widget_recent_comments ul,
.wp-block-latest-comments ul {
    list-style-type: none;
    padding-left: 0
}

ul.widget_recent_comments,
ol.widget_recent_comments,
.wp-block-latest-comments {
    margin-top: -0.11em;
    padding-left: 0
}

.widget_recent_comments ol,
.widget_recent_comments ul,
.wp-block-latest-comments ol,
.wp-block-latest-comments ul {
    margin-bottom: 0
}

.widget_recent_comments li,
.wp-block-latest-comments li {
    margin-bottom: 0;
    color: var(--body-color);
    padding-left: 30px;
    position: relative
}

.widget_recent_comments li:before,
.wp-block-latest-comments li:before {
    content: "\f086";
    position: absolute;
    left: 0;
    top: -1px;
    color: var(--theme-color);
    font-family: var(--icon-font)
}

.widget_recent_comments.has-avatars li,
.wp-block-latest-comments.has-avatars li {
    padding-left: 0;
    padding-bottom: 0 !important
}

.widget_recent_comments.has-avatars li:before,
.wp-block-latest-comments.has-avatars li:before {
    display: none
}

.widget_recent_comments .avatar,
.wp-block-latest-comments .avatar {
    margin-top: 0.4em
}

.widget_recent_comments li:not(:last-child),
.wp-block-latest-comments li:not(:last-child) {
    padding-bottom: 12px
}

.widget_recent_comments article,
.wp-block-latest-comments article {
    line-height: 1.5
}

.widget_recent_comments a,
.wp-block-latest-comments a {
    color: inherit
}

.widget_recent_comments a:hover,
.wp-block-latest-comments a:hover {
    color: var(--theme-color)
}

.wp-block-latest-comments__comment {
    line-height: 1.6
}

.wp-block-latest-comments__comment a {
    color: var(--body-color)
}

.wp-block-latest-comments__comment a:hover {
    color: var(--theme-color)
}

.wp-block-latest-comments__comment:last-child {
    margin-bottom: 0
}

.wp-block-calendar tbody td,
.wp-block-calendar th {
    padding: 10px
}

.wp-block-calendar,
.calendar_wrap {
    position: relative;
    background-color: #fff;
    padding-bottom: 0;
    border: none
}

.wp-block-calendar span[class*="wp-calendar-nav"],
.calendar_wrap span[class*="wp-calendar-nav"] {
    position: absolute;
    top: 9px;
    left: 20px;
    font-size: 14px;
    color: var(--white-color);
    font-weight: 400;
    z-index: 1;
    line-height: 1.7
}

.wp-block-calendar span[class*="wp-calendar-nav"] a,
.calendar_wrap span[class*="wp-calendar-nav"] a {
    color: inherit
}

.wp-block-calendar span.wp-calendar-nav-next,
.calendar_wrap span.wp-calendar-nav-next {
    left: auto;
    right: 20px
}

.wp-block-calendar caption,
.calendar_wrap caption {
    caption-side: top;
    text-align: center;
    color: var(--white-color);
    background-color: var(--theme-color)
}

.wp-block-calendar th,
.calendar_wrap th {
    font-size: 14px;
    padding: 5px 5px;
    border: none;
    text-align: center;
    border-right: 1px solid #fff;
    color: var(--title-color);
    font-weight: 500
}

.wp-block-calendar th:first-child,
.calendar_wrap th:first-child {
    border-left: 1px solid #eee
}

.wp-block-calendar th:last-child,
.calendar_wrap th:last-child {
    border-right: 1px solid #eee
}

.wp-block-calendar table th,
.calendar_wrap table th {
    font-weight: 500
}

.wp-block-calendar td,
.calendar_wrap td {
    font-size: 14px;
    padding: 5px 5px;
    color: #01133c;
    border: 1px solid #eee;
    text-align: center;
    background-color: transparent;
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s
}

.wp-block-calendar #today,
.calendar_wrap #today {
    color: var(--theme-color);
    background-color: var(--white-color);
    border-color: #ededed
}

.wp-block-calendar thead,
.calendar_wrap thead {
    background-color: #fff
}

.wp-block-calendar .wp-calendar-table,
.calendar_wrap .wp-calendar-table {
    margin-bottom: 0
}

.wp-block-calendar .wp-calendar-nav .pad,
.calendar_wrap .wp-calendar-nav .pad {
    display: none
}

.wp-block-calendar a,
.calendar_wrap a {
    color: inherit;
    text-decoration: none
}

.wp-block-calendar a:hover,
.calendar_wrap a:hover {
    color: var(--title-color)
}

.wp-block-calendar {
    margin-bottom: 30px;
    border: none;
    padding-bottom: 0
}

.wp-block-calendar table caption {
    color: var(--white-color)
}

ul.widget_rss,
ul.wp-block-rss,
ol.widget_rss,
ol.wp-block-rss {
    padding-left: 0
}

.widget_rss,
.wp-block-rss {
    list-style-type: none
}

.widget_rss ul,
.wp-block-rss ul {
    margin: -0.2em 0 -0.5em 0;
    padding: 0;
    list-style: none
}

.widget_rss ul .rsswidget,
.wp-block-rss ul .rsswidget {
    color: var(--title-color);
    font-family: var(--theme-font);
    font-size: 18px;
    display: block;
    margin-bottom: 10px
}

.widget_rss ul .rssSummary,
.wp-block-rss ul .rssSummary {
    font-size: 14px;
    margin-bottom: 7px;
    line-height: 1.5
}

.widget_rss ul a,
.wp-block-rss ul a {
    display: block;
    font-weight: 600;
    color: inherit
}

.widget_rss ul a:hover,
.wp-block-rss ul a:hover {
    color: var(--theme-color)
}

.widget_rss ul .rss-date,
.wp-block-rss ul .rss-date {
    font-size: 14px;
    display: inline-block;
    margin-bottom: 5px;
    font-weight: 400;
    color: var(--title-color)
}

.widget_rss ul .rss-date:before,
.wp-block-rss ul .rss-date:before {
    content: "\f073";
    font-family: var(--icon-font);
    margin-right: 10px;
    font-weight: 300;
    color: var(--theme-color)
}

.widget_rss ul cite,
.wp-block-rss ul cite {
    font-weight: 500;
    color: var(--title-color);
    font-family: var(--body-font);
    font-size: 14px
}

.widget_rss ul cite:before,
.wp-block-rss ul cite:before {
    content: "";
    position: relative;
    top: -1px;
    left: 0;
    width: 20px;
    height: 2px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 8px;
    background-color: var(--theme-color)
}

.widget_rss li:not(:last-child),
.wp-block-rss li:not(:last-child) {
    margin-bottom: 16px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    padding-bottom: 16px
}

.widget_rss a:hover,
.wp-block-rss a:hover {
    color: var(--theme-color)
}

.textwidget {
    margin-top: -0.1em
}

.sidebar-area .widget_shopping_cart .th-btn {
    margin-right: 10px;
    padding: 8px 22px;
    font-size: 14px
}

@media (min-width: 1200px) {
    .sidebar-shop .widget {
        padding: 30px
    }
}

@media (min-width: 992px) {
    .sidebar-shop .widget {
        margin-bottom: 24px
    }
}

@media (max-width: 1199px) {
    .widget {
        --widget-padding-y: 30px;
        --widget-padding-x: 30px
    }

    .widget_title {
        font-size: 22px;
        margin: -0.12em 0 28px 0
    }

    .author-widget-wrap .name {
        font-size: 22px
    }
}

@media (max-width: 991px) {
    .sidebar-area {
        padding-top: 30px
    }

    .widget {
        --widget-padding-y: 40px;
        --widget-padding-x: 40px
    }
}

@media (max-width: 767px) {
    .widget {
        padding: 20px;
        border-radius: 10px
    }
}

@media (max-width: 330px) {
    .recent-post .post-title {
        font-size: 14px;
        line-height: 24px
    }

    .recent-post .recent-post-meta a {
        font-size: 12px
    }
}

.footer-widget {
    margin-bottom: 50px
}

.footer-widget,
.footer-widget .widget {
    padding: 0;
    border: none;
    padding-bottom: 0;
    background-color: transparent;
    box-shadow: none
}

.footer-widget .form-group>i {
    color: var(--theme-color);
    top: 18px
}

.footer-widget .widget_title {
    max-width: 270px;
    color: var(--white-color);
    font-weight: 600;
    text-transform: capitalize;
    margin: -0.12em 0 38px 0;
    padding: 0 0 20px 0
}

.footer-widget .widget_title:before {
    display: none
}

.footer-widget .widget_title:after {
    border-radius: 10px;
    height: 2px;
    width: 92px;
    background-color: transparent;
    background-image: -webkit-linear-gradient(left, var(--theme-color), transparent);
    background-image: linear-gradient(to right, var(--theme-color), transparent)
}

.footer-widget .widget_title img {
    margin: -7px 10px 0 0
}

.footer-widget.widget_meta ul,
.footer-widget.widget_pages ul,
.footer-widget.widget_archive ul,
.footer-widget.widget_categories ul,
.footer-widget.widget_nav_menu ul {
    margin-top: -5px
}

.footer-widget.widget_meta .menu,
.footer-widget.widget_meta>ul,
.footer-widget.widget_pages .menu,
.footer-widget.widget_pages>ul,
.footer-widget.widget_archive .menu,
.footer-widget.widget_archive>ul,
.footer-widget.widget_categories .menu,
.footer-widget.widget_categories>ul,
.footer-widget.widget_nav_menu .menu,
.footer-widget.widget_nav_menu>ul {
    margin-bottom: -5px
}

.footer-widget.widget_meta a,
.footer-widget.widget_pages a,
.footer-widget.widget_archive a,
.footer-widget.widget_categories a,
.footer-widget.widget_nav_menu a {
    font-size: 16px;
    font-weight: 400;
    padding: 0 0 0 16px;
    margin-bottom: 16px;
    font-family: var(--body-font);
    color: var(--body-color);
    display: block;
    max-width: 100%;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    padding-right: 0;
    background-color: transparent;
    border: none !important;
    box-shadow: none;
    position: relative
}

.footer-widget.widget_meta a:before,
.footer-widget.widget_pages a:before,
.footer-widget.widget_archive a:before,
.footer-widget.widget_categories a:before,
.footer-widget.widget_nav_menu a:before {
    content: "\f054";
    font-weight: 600;
    left: 0;
    top: 2px;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    font-size: 0.9em;
    background-color: transparent;
    border: none;
    color: var(--theme-color)
}

.footer-widget.widget_meta a:hover,
.footer-widget.widget_pages a:hover,
.footer-widget.widget_archive a:hover,
.footer-widget.widget_categories a:hover,
.footer-widget.widget_nav_menu a:hover {
    background-color: transparent;
    color: var(--theme-color)
}

.footer-widget.widget_meta a:hover:before,
.footer-widget.widget_pages a:hover:before,
.footer-widget.widget_archive a:hover:before,
.footer-widget.widget_categories a:hover:before,
.footer-widget.widget_nav_menu a:hover:before {
    color: var(--theme-color)
}

.footer-widget.widget_meta li>span,
.footer-widget.widget_pages li>span,
.footer-widget.widget_archive li>span,
.footer-widget.widget_categories li>span,
.footer-widget.widget_nav_menu li>span {
    width: auto;
    height: auto;
    position: relative;
    background-color: transparent;
    color: var(--body-color);
    line-height: 1
}

.footer-widget.widget_meta li:last-child a,
.footer-widget.widget_pages li:last-child a,
.footer-widget.widget_archive li:last-child a,
.footer-widget.widget_categories li:last-child a,
.footer-widget.widget_nav_menu li:last-child a {
    margin-bottom: 0
}

.footer-widget .recent-post {
    max-width: 300px;
    margin-bottom: 30px
}

.footer-widget .recent-post .media-img {
    max-width: 90px;
    border-radius: 8px
}

.footer-widget .recent-post .media-img:after {
    line-height: 85px
}

.footer-widget .recent-post .post-title {
    color: var(--white-color);
    font-weight: 500
}

.footer-widget .recent-post:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0
}

.footer-widget .recent-post .recent-post-meta a {
    font-weight: 400;
    line-height: 1.2
}

.footer-widget .recent-post .recent-post-meta i {
    color: var(--theme-color)
}

.footer-widget .recent-post .recent-post-meta a:hover i {
    color: var(--theme-color)
}

.about-logo {
    margin-bottom: 15px
}

.th-widget-about {
    max-width: 320px
}

.th-widget-about .about-logo {
    margin-bottom: 36px
}

.th-widget-about .about-text {
    margin-bottom: 27px;
    margin-top: -0.45em
}

.th-widget-about .th-social {
    margin-top: 20px
}

.footer-text {
    margin-top: -0.5em;
    margin-bottom: 22px
}

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

.social-box .social-title {
    font-size: 20px;
    color: var(--white-color);
    font-weight: 600;
    margin-right: 20px;
    margin-bottom: 0
}

.icon-group a {
    color: var(--white-color);
    font-size: 18px;
    margin-right: 17px
}

.icon-group a:last-child {
    margin-right: 0
}

.newsletter-form {
    position: relative;
    max-width: 465px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px
}

.newsletter-form .th-btn {
    min-width: 145px;
    padding: 21px 20px
}

@media (max-width: 767px) {
    .footer-widget .widget_title {
        margin-bottom: 35px
    }

    .th-widget-about .about-text {
        margin-bottom: 15px
    }

    .social-box.mb-30 {
        margin-bottom: 25px
    }
}

.th-header {
    position: relative;
    z-index: 41
}

.th-header .icon-btn {
    border-radius: 99px
}

.th-header .menu-area {
    position: relative;
    z-index: 2
}

.sticky-wrapper {
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.sticky-wrapper.sticky {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    background-color: var(--white-color);
    -webkit-filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.07));
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.07));
    -webkit-animation: stickyAni 0.4s ease-in-out;
    animation: stickyAni 0.4s ease-in-out
}

@-webkit-keyframes stickyAni {
    0% {
        -webkit-transform: translate3d(0, -40px, 0) scaleY(0.8);
        transform: translate3d(0, -40px, 0) scaleY(0.8);
        opacity: 0.7
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0) scaleY(1);
        transform: translate3d(0, 0, 0) scaleY(1);
        opacity: 1
    }
}

@keyframes stickyAni {
    0% {
        -webkit-transform: translate3d(0, -40px, 0) scaleY(0.8);
        transform: translate3d(0, -40px, 0) scaleY(0.8);
        opacity: 0.7
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0) scaleY(1);
        transform: translate3d(0, 0, 0) scaleY(1);
        opacity: 1
    }
}

.main-menu a {
    display: block;
    position: relative;
    font-weight: 600;
    font-size: 16px;
    font-family: var(--title-font);
    color: #000;
    text-transform: uppercase
}

.main-menu a:hover {
    color: var(--theme-color)
}

.main-menu>ul>li {
    margin: 0 19px
}

.main-menu>ul>li>a {
    padding: 36.5px 0
}

.main-menu>ul>li>a:hover {
    color:  #003ea5
}

.main-menu ul {
    margin: 0;
    padding: 0
}

.main-menu ul li {
    list-style-type: none;
    display: inline-block;
    position: relative
}

.main-menu ul li.menu-item-has-children>a:after {
    content: "\2b";
    display: inline-block;
    position: relative;
    font-family: var(--icon-font);
    margin-left: 4px;
    font-weight: 600;
    top: 0;
    font-size: 0.9em;
    color: inherit;
    -webkit-transition: 0.3s -webkit-transform;
    transition: 0.3s -webkit-transform;
    transition: 0.3s transform;
    transition: 0.3s transform, 0.3s -webkit-transform
}

.main-menu ul li.menu-item-has-children>a:hover:after {
    content: "\f068";
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.main-menu ul li:last-child {
    margin-right: 0 !important
}

.main-menu ul li:first-child {
    margin-left: 0 !important
}

.main-menu ul li:hover>ul.sub-menu {
    visibility: visible;
    opacity: 1;
    -webkit-transform: scaleY(1);
    -ms-transform: scaleY(1);
    transform: scaleY(1);
    z-index: 9
}

.main-menu ul.sub-menu {
    position: absolute;
    text-align: left;
    top: 100%;
    left: 0;
    background-color: var(--white-color);
    visibility: hidden;
    min-width: 230px;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    padding: 7px;
    left: -14px;
    opacity: 0;
    z-index: -1;
    box-shadow: 0px 4px 15px rgba(1, 15, 28, 0.06);
    border-radius: 0;
    -webkit-transform: scaleY(0);
    -ms-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: top center;
    -ms-transform-origin: top center;
    transform-origin: top center;
    -webkit-transition: all 0.4s ease 0s;
    transition: all 0.4s ease 0s
}

.main-menu ul.sub-menu a {
    font-size: 16px;
    line-height: 30px
}

.main-menu ul.sub-menu {
    padding: 18px 20px 18px 18px;
    left: -27px
}

.main-menu ul.sub-menu li {
    display: block;
    margin: 0 0;
    padding: 0px 9px
}

.main-menu ul.sub-menu li.menu-item-has-children>a:after {
    content: "\2b";
    float: right;
    top: 1px;
    display: inline-block
}

.main-menu ul.sub-menu li.menu-item-has-children>a:hover:after {
    content: "\f068";
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.main-menu ul.sub-menu li a {
    position: relative;
    padding-left: 0;
    text-transform: capitalize
}

.main-menu ul.sub-menu li a:before {
    content: "\f55d";
    position: absolute;
    top: 9px;
    left: 10px;
    font-family: var(--icon-font);
    width: 11px;
    height: 11px;
    text-align: center;
    border-radius: 50%;
    display: inline-block;
    font-size: 1em;
    line-height: 1;
    color: var(--theme-color);
    font-weight: 900;
    opacity: 0;
    visibility: visible;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out
}

.main-menu ul.sub-menu li a:hover {
    padding-left: 21px
}

.main-menu ul.sub-menu li a:hover:before {
    visibility: visible;
    opacity: 1;
    left: 0
}

.main-menu ul.sub-menu li ul.sub-menu {
    left: 100%;
    right: auto;
    top: 0;
    margin: 0 0;
    margin-left: 20px
}

.main-menu ul.sub-menu li ul.sub-menu li ul {
    left: 100%;
    right: auto
}

@media (max-width: 1500px) {
    .main-menu>ul>li {
        margin: 0 13px
    }
}

@media (max-width: 1199px) {
    .main-menu>ul>li {
        margin: 0 11px
    }
}

.menu-style1>ul>li {
    margin: 0 14px
}

@media (max-width: 1299px) {
    .menu-style1>ul>li {
        margin: 0 10px
    }
}

.menu-style1>ul>li>a {
    padding: 17px 0;
    color: var(--white-color);
    font-weight: 500
}

.menu-style1>ul>li>a:hover {
    color: var(--theme-color)
}

.simple-icon {
    border: none;
    background-color: transparent;
    padding: 0;
    font-size: 24px;
    position: relative
}

.simple-icon:hover {
    color: var(--theme-color)
}

.simple-icon:has(.badge) {
    padding-right: 8px
}

.simple-icon .badge {
    top: -8px;
    right: 0;
    font-size: 12px;
    background-color: var(--theme-color2)
}

.header-button {
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 30px;
    position: relative;
    z-index: 3
}

.header-button .th-btn {
    margin: 0 0 0 20px
}

.header-button .icon-btn .badge {
    font-size: 12px;
    top: 0;
    right: 0
}

.header-button .icon-btn:hover .badge {
    background-color: var(--title-color)
}

.social-links .social-title {
    font-weight: 500;
    font-size: 16px;
    display: inline-block;
    margin: 0 10px 0 0;
    color: var(--body-color)
}

.social-links a {
    font-size: 16px;
    display: inline-block;
    color: var(--body-color);
    margin: 0 15px 0 0
}

.social-links a:last-child {
    margin-right: 0 !important
}

.social-links a:hover {
    color: var(--theme-color)
}

.header-logo {
    padding-top: 15px;
    padding-bottom: 15px
}

.header-links ul {
    margin: 0;
    padding: 0;
    list-style-type: none
}

.header-links li {
    display: inline-block;
    position: relative;
    font-size: 14px;
    font-weight: 400
}

.header-links li:not(:last-child) {
    margin: 0 55px 0 0
}

.header-links li:not(:last-child):after {
    content: '';
    height: 14px;
    width: 2px;
    background-color: var(--body-color);
    position: absolute;
    top: 0px;
    right: -30px;
    margin-top: 7px;
    opacity: 0.6
}

.header-links li>i {
    margin-right: 6px
}

.header-links li,
.header-links span,
.header-links p,
.header-links a {
    color: var(--body-color)
}

.header-links a:hover {
    color: var(--theme-color)
}

.header-links b,
.header-links strong {
    font-weight: 500;
    margin-right: 6px
}

.header-links .social-links a {
    font-size: 14px
}

.header-notice {
    margin: 0
}

.header-top {
    padding: 12px 0;
    background: linear-gradient(
    90deg,
    #003B9E 0%,
    #006CFF 45%,
    #003B9E 100%
);
    --body-color: #fff
}

.header-top a:hover {
    color: var(--title-color)
}

.dropdown-link {
    position: relative
}

.dropdown-link>a {
    color: var(--body-color)
}

.dropdown-link>a img {
    margin-right: 4px
}

.dropdown-toggle::after {
    content: "\f078";
    border: none;
    font-family: var(--icon-font);
    vertical-align: middle;
    font-weight: 400;
    margin-left: 6px;
    margin-top: -1px
}

.dropdown-menu {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    min-width: auto;
    top: calc(100% + 6px) !important;
    left: 50% !important;
    -webkit-transform: translateX(-50%) !important;
    -ms-transform: translateX(-50%) !important;
    transform: translateX(-50%) !important;
    padding: 8px 20px !important;
    text-align: center;
    border-color: var(--th-border-color)
}

.dropdown-menu li {
    padding-right: 0;
    margin-right: 0
}

.dropdown-menu li:after {
    display: none
}

.dropdown-menu li a {
    display: block
}

.dropdown-menu a {
    color: var(--title-color) !important
}

.dropdown-menu a:hover {
    color: var(--theme-color) !important
}

.dropdown-menu:before {
    content: "";
    position: absolute;
    left: 50%;
    top: -7px;
    width: 14px;
    height: 14px;
    margin-left: -7px;
    background-color: var(--white-color);
    z-index: -1;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 1px solid var(--th-border-color);
    border-left: 1px solid var(--th-border-color)
}

.header-layout1 {
    position: relative
}

.header-layout1 .sticky-wrapper {
    box-shadow: 0px 10px 20px rgba(2, 29, 53, 0.06)
}

.header-layout1 .menu-area {
    position: relative;
    z-index: 2
}

.header-layout1 .header-logo {
    position: relative;
    z-index: 2
}

.header-layout1 .th-menu-toggle {
    margin-left: auto
}

@media (min-width: 1300px) {
    .header-layout1 {
        --main-container: 1620px
    }
}

@media (max-width: 1399px) {
    .header-layout1 .header-button .th-btn {
        display: none
    }
}

@media (max-width: 575px) {
    .header-layout1 .header-logo h2 {
        font-size: 36px
    }

    .header-layout1 .header-logo img {
        max-width: 170px
    }
}

@media (max-width: 375px) {
    .header-layout1 .header-logo img {
        max-width: 150px
    }
}

@media (max-width: 1299px) {
    .unittest-header .main-menu a {
        font-size: 15px
    }

    .unittest-header .main-menu>ul>li {
        margin: 0 11px
    }
}

.header-layout2 .header-top {
    background-color: var(--title-color);
    border-bottom: 1px solid rgba(255, 255, 255, 0.2)
}

.header-layout2 .header-top a:hover {
    color: var(--theme-color)
}

.header-layout2 .header-links li:after {
    opacity: 0.35;
    width: 1px
}

.header-layout2 .header-links li>i {
    color: var(--theme-color)
}

.header-layout2 .main-menu>ul>li>a {
    color: var(--white-color)
}

.header-layout2 .main-menu a:hover {
    color: var(--theme-color2)
}

.header-layout2 .main-menu a:hover:before {
    color: var(--theme-color2)
}

.header-layout2 .menu-area {
    position: relative;
    z-index: 2
}

.header-layout2 .header-logo {
    padding: 0
}

.header-layout2 .search-form {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    border-radius: 99px;
    margin-right: 15px
}

.header-layout2 .search-form input {
    height: 50px;
    width: 250px;
    max-width: 100%;
    border-radius: 99px;
    background-color: rgba(255, 255, 255, 0.1);
    color: var(--white-color)
}

.header-layout2 .search-form input::-moz-placeholder {
    color: var(--white-color)
}

.header-layout2 .search-form input::-webkit-input-placeholder {
    color: var(--white-color)
}

.header-layout2 .search-form input:-ms-input-placeholder {
    color: var(--white-color)
}

.header-layout2 .search-form input::-ms-input-placeholder {
    color: var(--white-color)
}

.header-layout2 .search-form input::placeholder {
    color: var(--white-color)
}

.header-layout2 .search-form button {
    width: 50px;
    height: 50px;
    line-height: 50px;
    min-width: 50px;
    background-color: transparent;
    border-radius: 99px;
    color: var(--white-color);
    font-size: 16px;
    text-align: center;
    border: none;
    padding: 0;
    margin-left: -53px
}

.header-layout2 .search-form button:hover {
    color: var(--theme-color2)
}

.header-layout2 .simple-icon {
    color: var(--white-color)
}

.header-layout2 .simple-icon:hover {
    color: var(--theme-color2)
}

.header-layout2 .sticky-wrapper {
    background-color: var(--title-color)
}

.header-layout2 .th-menu-toggle {
    margin-left: auto
}

.header-layout2 .header-button {
    gap: 15px
}

.header-layout2 .dropdown-link>a {
    color: var(--white-color)
}

@media (min-width: 1300px) {
    .header-layout2 {
        --main-container: 1680px
    }
}

@media (max-width: 1399px) {
    .header-layout2 .search-form {
        display: none
    }
}

@media (max-width: 1299px) {
    .header-layout2 .header-button .th-btn {
        display: none
    }
}

@media (max-width: 991px) {
    .header-layout2 .menu-top {
        padding: 15px 0
    }

    .header-layout2 .header-logo {
        padding: 15px 0
    }

    .header-layout2 .header-logo img {
        max-height: 46px
    }
}

@media (max-width: 375px) {
    .header-layout2 .header-logo img {
        max-height: 38px
    }
}

.header-layout3 {
    position: relative;
    max-width: 1520px;
    margin: 0 auto -100px auto
}

.header-layout3 .container-fluid {
    padding-left: 0;
    padding-right: 22px
}

.header-layout3 .header-top {
    background-color: var(--theme-color)
}

.header-layout3 .header-top .container-fluid {
    padding-left: 310px
}

.header-layout3 .header-links li>i {
    border-color: var(--white-color)
}

.header-layout3 .header-links a:hover {
    color: var(--title-color)
}

.header-layout3 .menu-area {
    position: relative;
    z-index: 2
}

.header-layout3 .main-menu {
    margin-left: 6px
}

.header-layout3 .header-logo {
    position: relative;
    z-index: 2;
    height: 150px;
    margin-top: -50px;
    padding: 45px 39px;
    background-color: #050C14;
    border-radius: 0 0 0 30px;
    -webkit-clip-path: polygon(100% 0, 100% 85px, calc(100% - 38px) 100%, 0 100%, 0 0);
    clip-path: polygon(100% 0, 100% 85px, calc(100% - 38px) 100%, 0 100%, 0 0)
}

.header-layout3 .sticky-wrapper {
    box-shadow: 0px 10px 20px rgba(2, 29, 53, 0.06);
    background-color: var(--white-color);
    border-radius: 0 0 30px 30px;
    max-width: 1520px;
    margin-left: auto;
    margin-right: auto
}

.header-layout3 .sticky-wrapper.sticky .header-logo {
    height: 100%;
    margin-top: 0;
    padding: 19px 39px
}

.header-layout3 .th-menu-toggle {
    margin-left: auto
}

@media (max-width: 1399px) {
    .header-layout3 .header-button .th-btn {
        display: none
    }
}

@media (max-width: 1299px) {
    .header-layout3 {
        margin: 0 auto -30px auto
    }
}

@media (max-width: 991px) {
    .header-layout3 .header-top .container-fluid {
        padding-left: 12px
    }

    .header-layout3 .container-fluid {
        padding-right: 12px
    }

    .header-layout3 .header-logo {
        margin-top: 0;
        height: 100%;
        padding: 15px 12px !important;
        border-radius: 0 0 0 15px;
        -webkit-clip-path: polygon(100% 0, 100% 80%, calc(100% - 25px) 100%, 0 100%, 0 0);
        clip-path: polygon(100% 0, 100% 80%, calc(100% - 25px) 100%, 0 100%, 0 0)
    }

    .header-layout3 .sticky-wrapper {
        border-radius: 0 0 15px 15px
    }
}

@media (max-width: 575px) {
    .header-layout3 .row {
        --bs-gutter-x: 0
    }

    .header-layout3 .header-logo img {
        max-width: 155px
    }
}

.footer-wrapper {
    --th-border-color: rgba(120, 128, 148, 0.4);
    --body-color: #fff;
    position: relative;
    z-index: 2;
    background:linear-gradient(90deg, #003B9E 0%, #006CFF 45%, #003B9E 100%);
    overflow: hidden
}

.footer-wrapper .th-social a {
    background-color: var(--white-color);
    color: var(--title-color)
}

.footer-wrapper .th-social a:hover {
    background-color: var(--theme-color);
    color: var(--white-color) !important
}

.footer-wrapper .social-links a {
    margin: 0 30px 0 0
}

.widget-area {
    padding-top: 100px;
    padding-bottom: 46px
}

.sticky-footer {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%
}

.footer-links ul {
    padding: 0;
    margin: 0
}

.footer-links li {
    font-family: var(--body-font);
    display: inline-block;
    padding-right: 15px;
    margin-right: 10px;
    position: relative
}

.footer-links li:after {
    content: "";
    height: 20px;
    width: 1px;
    background-color: var(--body-color);
    position: absolute;
    top: 50%;
    right: 0;
    margin: -10px 0
}

.footer-links li:last-child {
    margin-right: 0;
    padding-right: 0
}

.footer-links li:last-child:after {
    display: none
}

.footer-links a {
    font-family: inherit;
    color: var(--body-color)
}

.footer-links a:hover {
    color: var(--theme-color)
}

.copyright-wrap {
    padding: 25px 0;
    background-size: 100% auto;
    background-color: #121212
}

.copyright-wrap .copyright-text {
    color: var(--white-color)
}

.copyright-wrap .copyright-text a {
    color: var(--theme-color)
}

.copyright-wrap .copyright-text a:hover {
    color: var(--white-color)
}

.copyright-wrap.bg-title .copyright-text a:hover {
    color: var(--theme-color)
}

.footer-top-wrap {
    padding-top: 50px;
    padding-bottom: 50px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25)
}

.footer-contact {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 15px
}

@media (max-width: 1199px) {
    .footer-contact {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 20px
    }
}

@media (max-width: 575px) {
    .footer-contact {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
        gap: 15px
    }
}

@media (max-width: 360px) {
    .footer-contact {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.footer-contact .box-icon {
    width: 80px;
    height: 80px;
    line-height: 80px;
    background-color: rgba(6, 143, 255, 0.3);
    color: var(--white-color);
    font-size: 36px;
    text-align: center;
    border-radius: 10px
}

.footer-contact .box-title {
    color: var(--white-color);
    font-size: 18px;
    margin-bottom: 7px
}

.footer-contact .box-content {
    max-width: 242px;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center
}

@media (max-width: 991px) {
    .footer-contact .box-content {
        max-width: 235px
    }
}

@media (max-width: 767px) {
    .footer-contact .box-content {
        max-width: 242px
    }
}

.footer-contact .box-text {
    line-height: 24px
}

.footer-contact .box-text a {
    display: block;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    color: inherit
}

.footer-contact .box-text a:hover {
    color: var(--theme-color)
}

.footer-info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 8px
}

.footer-info:last-child {
    margin-bottom: 0
}

.footer-info i {
    color: var(--theme-color);
    min-width: 23px;
    margin-top: 6px
}

.footer-info .fa-envelope {
    -webkit-transform: translateY(1px);
    -ms-transform: translateY(1px);
    transform: translateY(1px)
}

.footer-info .fa-location-dot {
    -webkit-transform: scaleX(1.2);
    -ms-transform: scaleX(1.2);
    transform: scaleX(1.2)
}

.copyright-text {
    margin: 0
}

.copyright-text a {
    color: var(--theme-color)
}

.copyright-text a:hover {
    color: var(--white-color)
}

.footer-newsletter {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 25px;
    padding-left: 60px
}

.footer-newsletter .newsletter-title {
    max-width: 425px;
    margin-bottom: 0
}

.schedule-info {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-bottom: 1px dashed rgba(255, 255, 255, 0.2);
    margin-bottom: 15px;
    padding-bottom: 15px
}

.schedule-info:last-of-type {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none
}

.th-widget-schedule {
    width: 280px;
    max-width: 100%
}

.th-widget-schedule .title {
    color: var(--white-color);
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 16px
}

.newsletter-widget {
    max-width: 304px
}

.newsletter-widget .newsletter-form {
    gap: 0;
    margin-bottom: 25px
}

.newsletter-widget .newsletter-form input {
    border-radius: 6px;
    border: 1px solid var(--th-border-color);
    color: var(--title-color)
}

.newsletter-widget .newsletter-form input::-moz-placeholder {
    color: var(--title-color)
}

.newsletter-widget .newsletter-form input::-webkit-input-placeholder {
    color: var(--title-color)
}

.newsletter-widget .newsletter-form input:-ms-input-placeholder {
    color: var(--title-color)
}

.newsletter-widget .newsletter-form input::-ms-input-placeholder {
    color: var(--title-color)
}

.newsletter-widget .newsletter-form input::placeholder {
    color: var(--title-color)
}

.newsletter-widget .simple-icon {
    position: absolute;
    top: 0;
    right: 0;
    border: none;
    background-color: var(--theme-color);
    height: 100%;
    padding: 0 20px;
    color: var(--white-color);
    border-radius: 0 6px 6px 0
}

.newsletter-widget .simple-icon:hover {
    background-color: var(--theme-color2)
}

.newsletter-widget .footer-text {
    margin-bottom: 22px
}

.newsletter-widget .btn-group {
    gap: 15px
}

.newsletter-form {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    max-width: 500px;
    gap: 10px
}

@media (max-width: 1199px) {
    .newsletter-form {
        max-width: 460px
    }
}

.newsletter-form .form-group {
    margin-bottom: 0;
    width: 100%
}

.newsletter-form .form-group>i {
    color: var(--theme-color)
}

.newsletter-form input {
    background-color: var(--white-color);
    border: none;
    width: 100%
}

.newsletter-form input:focus {
    background-color: var(--white-color);
    color: var(--body-color)
}

.newsletter-form .th-btn {
    min-width: 150px
}

.newsletter-form .newsletter-btn {
    display: inline-block;
    border: none;
    background-color: var(--theme-color);
    color: var(--title-color);
    width: 55px;
    height: 55px;
    line-height: 55px;
    min-width: 55px
}

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

.newsletter-wrap .sec-title {
    margin-bottom: 15px;
    font-weight: 600
}

.newsletter-wrap .newsletter-text {
    margin-bottom: -0.5em;
    max-width: 400px
}

@media (max-width: 991px) {
    .newsletter-wrap {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        text-align: center;
        gap: 25px 0
    }

    .newsletter-wrap .newsletter-form {
        max-width: 100%
    }
}

@media (max-width: 991px) {
    .newsletter-wrap {
        padding: 40px 0
    }

    .newsletter-wrap .newsletter-title {
        font-size: 30px
    }

    .newsletter-wrap .newsletter-text {
        font-size: 16px
    }

    .footer-wrapper .newsletter-form {
        max-width: 400px
    }
}

@media (max-width: 767px) {
    .newsletter-wrap {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        gap: 25px
    }

    .newsletter-wrap .newsletter-title {
        text-align: center;
        margin-left: auto;
        margin-right: auto
    }

    .footer-wrapper .newsletter-form {
        max-width: 550px;
        gap: 15px;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

@media (max-width: 575px) {
    .newsletter-wrap .newsletter-title {
        font-size: 24px
    }

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

    .footer-wrapper .newsletter-form {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

@media (max-width: 991px) {
    .footer-wrapper .widget-area {
        padding-top: var(--section-space-mobile);
        padding-bottom: 30px
    }
}

@media (max-width: 767px) {
    .copyright-text {
        text-align: center
    }
}

.footer-layout2 a:before {
    -webkit-transition: 0.3s;
    transition: 0.3s
}

.footer-layout2 a:hover {
    color: var(--theme-color2) !important
}

.footer-layout2 a:hover:before {
    color: var(--theme-color2) !important
}

.footer-layout2 .newsletter-wrap {
    padding: 80px 0;
    background-color: transparent;
    border-radius: 0;
    border-bottom: 1px solid var(--th-border-color);
    gap: 20px
}

@media (max-width: 991px) {
    .footer-layout2 .newsletter-wrap {
        padding: 60px 0
    }
}

.footer-layout2 .newsletter-content {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 30px
}

@media (max-width: 991px) {
    .footer-layout2 .newsletter-content .email-icon {
        display: none
    }
}

.th-widget-contact {
    max-width: 290px
}

.th-widget-contact .th-social {
    margin-top: 16px
}

.th-widget-contact .footer-info {
    margin-bottom: 4px
}

.info-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 30px
}

.info-box:last-child {
    margin-bottom: 0
}

.info-box_icon {
    width: 30px;
    height: 30px;
    min-width: 30px;
    line-height: 32px;
    font-size: 14px;
    background-color: rgba(255, 255, 255, 0.08);
    color: var(--theme-color2);
    border-radius: 6px;
    text-align: center;
    margin-right: 10px
}

.info-box_text {
    display: block;
    color: var(--body-color);
    margin-top: -0.45em;
    margin-bottom: -0.45em;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center
}

.info-box_link {
    display: inline-block;
    color: var(--body-color)
}

.info-box_link:hover {
    color: var(--theme-color)
}

.th-widget-location {
    background: #0D1A27;
    padding: 30px;
    max-width: 334px;
    margin-top: -25px
}

@media (max-width: 1199px) {
    .th-widget-location {
        margin-top: -10px
    }
}

@media (max-width: 767px) {
    .th-widget-location {
        margin-top: 0
    }
}

.location-box {
    margin-bottom: 25px
}

.location-box:last-child {
    margin-bottom: -0.5em
}

.location-box .box-title {
    font-size: 20px;
    margin-bottom: 13px;
    color: var(--white-color)
}

.footer-layout3 {
    --body-color: #969EB2;
    background-color: #050C14
}

.footer-layout3 .widget-area {
    padding-top: 115px;
    padding-bottom: 56px
}

@media (max-width: 991px) {
    .footer-layout3 .widget-area {
        padding-top: 80px;
        padding-bottom: 35px
    }
}

.footer-layout3 .copyright-wrap {
    background-color: #0D1A27
}

.footer-layout3 .copyright-wrap a:hover {
    color: var(--white-color)
}

.breadcumb-menu {
    max-width: 100%;
    padding: 0;
    margin: 35px 0 -0.5em 0;
    list-style-type: none;
    position: relative
}

.breadcumb-menu li {
    display: inline-block;
    margin-right: 3px;
    padding-right: 3px;
    list-style: none;
    position: relative
}

.breadcumb-menu li:after {
    content: "\f054";
    position: relative;
    margin-left: 6px;
    font-weight: 500;
    font-size: 15px;
    color: inherit;
    font-family: var(--icon-font)
}

.breadcumb-menu li:last-child {
    padding-right: 0;
    margin-right: 0;
    color: var(--theme-color)
}

.breadcumb-menu li:last-child:after {
    display: none
}

.breadcumb-menu li,
.breadcumb-menu a,
.breadcumb-menu span {
    font-family: var(--body-font);
    white-space: normal;
    color: inherit;
    word-break: break-word;
    font-weight: 500;
    font-size: 16px;
    color: var(--white-color)
}

.breadcumb-title {
    margin: -0.18em 0 -0.18em 0;
    line-height: 1.1;
    font-weight: 700;
    color: var(--white-color)
}

.breadcumb-wrapper {
    background-color: var(--smoke-color2);
    padding: 140px 0 140px 0;
    overflow: hidden
}

@media (max-width: 1399px) {
    .breadcumb-wrapper {
        padding: 120px 0 120px 0
    }
}

@media (max-width: 1199px) {
    .breadcumb-menu {
        margin: 25px 0 -0.5em 0
    }
}

@media (max-width: 991px) {
    .breadcumb-wrapper {
        padding: 100px 0 100px 0
    }
}

@media (max-width: 575px) {
    .breadcumb-menu {
        margin: 20px 0 -0.5em 0
    }

    .breadcumb-title {
        font-size: 34px
    }
}

.wp-block-query-pagination-numbers,
.th-pagination {
    margin-bottom: 30px
}

.wp-block-query-pagination-numbers ul,
.th-pagination ul {
    margin: 0;
    padding: 0
}

.wp-block-query-pagination-numbers li,
.th-pagination li {
    display: inline-block;
    margin: 0 3px;
    list-style-type: none
}

.wp-block-query-pagination-numbers li:last-child,
.th-pagination li:last-child {
    margin-right: 0
}

.wp-block-query-pagination-numbers li:first-child,
.th-pagination li:first-child {
    margin-left: 0
}

.wp-block-query-pagination-numbers span,
.wp-block-query-pagination-numbers a,
.th-pagination span,
.th-pagination a {
    display: inline-block;
    text-align: center;
    position: relative;
    border: none;
    color: var(--title-color);
    background-color: var(--smoke-color);
    width: 56px;
    height: 56px;
    line-height: 56px;
    z-index: 1;
    font-size: 18px;
    font-weight: 500;
    border-radius: 6px
}

.wp-block-query-pagination-numbers span.active,
.wp-block-query-pagination-numbers span:hover,
.wp-block-query-pagination-numbers a.active,
.wp-block-query-pagination-numbers a:hover,
.th-pagination span.active,
.th-pagination span:hover,
.th-pagination a.active,
.th-pagination a:hover {
    color: var(--white-color);
    background-color: var(--theme-color)
}

.wp-block-query-pagination-next {
    display: inline-block;
    text-align: center;
    position: relative;
    border: none;
    color: var(--title-color);
    background-color: var(--smoke-color2);
    min-width: 56px;
    height: 56px;
    line-height: 56px;
    z-index: 1;
    font-size: 16px;
    padding: 0 20px;
    font-weight: 500;
    border-radius: 10px;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.wp-block-query-pagination-next.active,
.wp-block-query-pagination-next:hover {
    color: var(--white-color);
    background-color: var(--theme-color);
    border-color: var(--theme-color)
}

@media (max-width: 767px) {

    .wp-block-query-pagination-numbers span,
    .wp-block-query-pagination-numbers a,
    .th-pagination span,
    .th-pagination a {
        width: 40px;
        height: 40px;
        line-height: 40px;
        font-size: 14px
    }
}

blockquote,
.wp-block-quote {
    font-size: 16px;
    line-height: 1.56;
    padding: 30px;
    font-weight: 500;
    display: block;
    position: relative;
    background-color: transparent;
    margin: 35px 0 45px 0;
    color: var(--title-color);
    font-family: var(--body-font);
    font-style: italic;
    border: 1px solid var(--th-border-color) !important;
    border-radius: 15px
}

blockquote p,
.wp-block-quote p {
    font-size: inherit;
    font-family: inherit;
    margin-top: -0.3em;
    margin-bottom: 9px;
    line-height: inherit;
    color: inherit;
    width: 100%;
    position: relative;
    z-index: 3
}

blockquote p a,
.wp-block-quote p a {
    color: inherit
}

blockquote:before,
.wp-block-quote:before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    height: 50px;
    width: 33px;
    background-color: var(--white-color)
}

blockquote:after,
.wp-block-quote:after {
    content: "";
    position: absolute;
    top: -10px;
    left: 0px;
    height: 20px;
    width: 25px;
    background-color: var(--theme-color);
    -webkit-clip-path: path("M2.21945 18.2759C0.775335 16.6762 0 14.8819 0 11.9734C0 6.8553 3.44484 2.26804 8.45438 0L9.70641 2.01506C5.03057 4.65307 4.11643 8.07633 3.75189 10.2347C4.5048 9.82818 5.49044 9.68633 6.45645 9.77992C8.98576 10.0241 10.9795 12.1898 10.9795 14.8819C10.9795 16.2393 10.4625 17.5411 9.54219 18.5009C8.62192 19.4608 7.37376 20 6.07229 20C5.35256 19.9934 4.64126 19.8376 3.97981 19.5416C3.31836 19.2457 2.71996 18.8154 2.21945 18.2759ZM16.24 18.2759C14.7959 16.6762 14.0205 14.8819 14.0205 11.9734C14.0205 6.8553 17.4654 2.26804 22.4749 0L23.7269 2.01506C19.0511 4.65307 18.137 8.07633 17.7724 10.2347C18.5253 9.82818 19.511 9.68633 20.477 9.77992C23.0063 10.0241 25 12.1898 25 14.8819C25 16.2393 24.483 17.5411 23.5627 18.5009C22.6424 19.4608 21.3943 20 20.0928 20C19.3731 19.9934 18.6618 19.8376 18.0003 19.5416C17.3389 19.2457 16.7405 18.8154 16.24 18.2759Z");
    clip-path: path("M2.21945 18.2759C0.775335 16.6762 0 14.8819 0 11.9734C0 6.8553 3.44484 2.26804 8.45438 0L9.70641 2.01506C5.03057 4.65307 4.11643 8.07633 3.75189 10.2347C4.5048 9.82818 5.49044 9.68633 6.45645 9.77992C8.98576 10.0241 10.9795 12.1898 10.9795 14.8819C10.9795 16.2393 10.4625 17.5411 9.54219 18.5009C8.62192 19.4608 7.37376 20 6.07229 20C5.35256 19.9934 4.64126 19.8376 3.97981 19.5416C3.31836 19.2457 2.71996 18.8154 2.21945 18.2759ZM16.24 18.2759C14.7959 16.6762 14.0205 14.8819 14.0205 11.9734C14.0205 6.8553 17.4654 2.26804 22.4749 0L23.7269 2.01506C19.0511 4.65307 18.137 8.07633 17.7724 10.2347C18.5253 9.82818 19.511 9.68633 20.477 9.77992C23.0063 10.0241 25 12.1898 25 14.8819C25 16.2393 24.483 17.5411 23.5627 18.5009C22.6424 19.4608 21.3943 20 20.0928 20C19.3731 19.9934 18.6618 19.8376 18.0003 19.5416C17.3389 19.2457 16.7405 18.8154 16.24 18.2759Z")
}

blockquote cite,
.wp-block-quote cite {
    display: inline-block;
    font-size: 20px;
    line-height: 1;
    font-weight: 500;
    font-style: normal;
    font-family: var(--title-font);
    white-space: nowrap;
    position: absolute;
    bottom: -17px;
    left: 80px;
    background-color: var(--theme-color);
    color: var(--white-color);
    padding: 7px 40px 7px 15px;
    -webkit-clip-path: polygon(0 0, 100% 0, calc(100% - 25px) 100%, 0% 100%);
    clip-path: polygon(0 0, 100% 0, calc(100% - 25px) 100%, 0% 100%);
    border-radius: 10px 0 0 10px
}

blockquote cite br,
.wp-block-quote cite br {
    display: none
}

blockquote.is-large:not(.is-style-plain),
blockquote.is-style-large:not(.is-style-plain),
blockquote.style-left-icon,
blockquote.has-text-align-right,
.wp-block-quote.is-large:not(.is-style-plain),
.wp-block-quote.is-style-large:not(.is-style-plain),
.wp-block-quote.style-left-icon,
.wp-block-quote.has-text-align-right {
    padding: 40px;
    margin-bottom: 30px
}

blockquote.style-left-icon,
.wp-block-quote.style-left-icon {
    font-size: 18px;
    color: var(--body-color);
    font-weight: 400;
    line-height: 1.556;
    background-color: var(--smoke-color);
    padding-left: 160px
}

blockquote.style-left-icon:before,
.wp-block-quote.style-left-icon:before {
    right: unset;
    left: 56px;
    top: 60px;
    font-size: 6rem;
    font-weight: 400;
    line-height: 4rem;
    color: var(--theme-color);
    text-shadow: none
}

blockquote.style-left-icon cite,
.wp-block-quote.style-left-icon cite {
    color: var(--title-color)
}

blockquote.style-left-icon cite:before,
.wp-block-quote.style-left-icon cite:before {
    background-color: var(--title-color);
    top: 8px
}

blockquote:not(:has(>cite)) p:last-child,
.wp-block-quote:not(:has(>cite)) p:last-child {
    margin-bottom: -0.3em
}

blockquote p:has(cite),
.wp-block-quote p:has(cite) {
    padding-bottom: 10px
}

blockquote p cite,
.wp-block-quote p cite {
    margin-top: 20px;
    margin-bottom: -0.5em;
    bottom: -32px
}

.wp-block-pullquote {
    color: var(--white-color);
    padding: 0
}

blockquote.has-very-dark-gray-color {
    color: var(--title-color) !important
}

.wp-block-pullquote blockquote,
.wp-block-pullquote p {
    color: var(--title-color)
}

.wp-block-pullquote cite {
    position: absolute;
    color: var(--white-color) !important
}

.wp-block-column blockquote,
.wp-block-column .wp-block-quote {
    padding: 40px 15px 40px 15px
}

.wp-block-column blockquote:before,
.wp-block-column .wp-block-quote:before {
    width: 100%;
    height: 60px;
    font-size: 30px
}

.wp-block-column blockquote.style-left-icon,
.wp-block-column blockquote.is-large:not(.is-style-plain),
.wp-block-column blockquote.is-style-large:not(.is-style-plain),
.wp-block-column blockquote.has-text-align-right,
.wp-block-column .wp-block-quote.style-left-icon,
.wp-block-column .wp-block-quote.is-large:not(.is-style-plain),
.wp-block-column .wp-block-quote.is-style-large:not(.is-style-plain),
.wp-block-column .wp-block-quote.has-text-align-right {
    padding: 40px 15px 40px 15px
}

.wp-block-column blockquote cite,
.wp-block-column .wp-block-quote cite {
    font-size: 14px;
    left: 20px
}

.wp-block-column blockquote cite:before,
.wp-block-column .wp-block-quote cite:before {
    bottom: 6px
}

.wp-block-pullquote__citation::before,
.wp-block-pullquote cite::before,
.wp-block-pullquote footer::before {
    bottom: 7px
}

.has-cyan-bluish-gray-background-color blockquote,
.has-cyan-bluish-gray-background-color .wp-block-quote {
    background-color: var(--white-color)
}

@media (max-width: 767px) {
    .wp-block-pullquote.is-style-solid-color blockquote {
        max-width: 90%
    }

    blockquote cite,
    .wp-block-quote cite {
        font-size: 18px;
        left: 30px
    }
}

@media (max-width: 575px) {

    .wp-block-quote.is-large:not(.is-style-plain) p,
    .wp-block-quote.is-style-large:not(.is-style-plain) p {
        font-size: 1.2em
    }
}

@media (max-width: 375px) {

    blockquote cite,
    .wp-block-quote cite {
        font-size: 18px;
        padding-left: 22px
    }

    blockquote cite:before,
    .wp-block-quote cite:before {
        width: 20px
    }
}

.blog-meta {
    display: block
}

.blog-meta span,
.blog-meta a {
    display: inline-block;
    font-size: 14px;
    color: var(--body-color);
    font-family: var(--body-font);
    position: relative;
    margin-right: 16px
}

.blog-meta span i,
.blog-meta a i {
    margin-right: 6px;
    color: var(--theme-color)
}

.blog-meta span:last-child,
.blog-meta a:last-child {
    margin-right: 0
}

.blog-meta span:not(:last-child),
.blog-meta a:not(:last-child) {
    padding-right: 20px
}

.blog-meta span:not(:last-child):after,
.blog-meta a:not(:last-child):after {
    content: "";
    height: 16px;
    width: 1px;
    background-color: #d8dde1;
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -8px
}

.blog-meta .author img {
    border-radius: 50%;
    width: 30px;
    height: 30px;
    margin-right: 6px
}

.blog-meta a:hover {
    color: var(--theme-color)
}

@media (max-width: 1199px) {

    .blog-meta span,
    .blog-meta a {
        margin-right: 15px
    }

    .blog-meta span:not(:last-child),
    .blog-meta a:not(:last-child) {
        padding-right: 15px
    }
}

@media (max-width: 575px) {

    .blog-meta span,
    .blog-meta a {
        margin-right: 20px
    }

    .blog-meta span:not(:last-child),
    .blog-meta a:not(:last-child) {
        padding-right: 0
    }

    .blog-meta span:not(:last-child):after,
    .blog-meta a:not(:last-child):after {
        display: none
    }
}

.blog-audio,
.blog-img,
.blog-video {
    line-height: 1px
}

.blog-audio img,
.blog-img img,
.blog-video img {
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.blog-title a {
    color: inherit
}

.blog-title a:hover {
    color: var(--theme-color)
}

.th-blog {
    margin-bottom: 30px
}

.blog-inner-title {
    margin-top: -0.25em;
    margin-bottom: 25px
}

.blog-inner-title i {
    color: var(--theme-color);
    margin-right: 4px
}

@media (min-width: 1300px) {

    .search-active-wrap,
    .blog-author,
    .search-wrap,
    .page-single,
    .blog-single,
    .th-comments-wrap,
    .th-comment-form {
        margin-right: 16px
    }

    .page-single.single-right {
        margin-right: 0;
        margin-left: 16px
    }
}

.blog-single {
    position: relative;
    margin-bottom: 40px;
    border-radius: 10px;
    box-shadow: 0px 6px 30px rgba(0, 0, 0, 0.06);
    overflow: hidden
}

.blog-single .blog-title {
    margin-bottom: 15px;
    font-size: 30px;
    line-height: 1.25
}

.blog-single .blog-text {
    margin-bottom: 27px
}

.blog-single .blog-meta {
    margin: -0.35em 0 16px 0
}

.blog-single .blog-content {
    margin: 0 0 0 0;
    padding: var(--blog-space-y, 40px) var(--blog-space-x, 40px);
    position: relative
}

.blog-single .blog-content .blog-single {
    padding: 20px
}

.blog-single .blog-audio {
    line-height: 1
}

.blog-single .blog-audio,
.blog-single .blog-img,
.blog-single .blog-video {
    position: relative;
    overflow: hidden;
    background-color: var(--smoke-color);
    margin-bottom: 0;
    border-radius: 10px 10px 0 0
}

.blog-single .blog-img .slider-arrow {
    --pos-x: 30px;
    --icon-size: 44px;
    border: none;
    background-color: var(--white-color);
    color: var(--theme-color);
    box-shadow: none;
    visibility: visible;
    opacity: 1
}

.blog-single .blog-img .slider-arrow:hover {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.blog-single .blog-img .play-btn {
    --icon-size: 60px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: calc(var(--icon-size) / -2) 0 0 calc(var(--icon-size) / -2)
}

.share-links-title {
    font-size: 18px;
    color: var(--title-color);
    font-family: var(--title-font);
    font-weight: 500;
    margin: 0 12px 0 0;
    display: inline-block;
    text-transform: capitalize
}

.share-links {
    margin: 0;
    padding: 35px 0 0 0
}

.share-links>.row {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    --bs-gutter-y: 15px
}

.share-links .wp-block-tag-cloud,
.share-links .tagcloud {
    display: inline-block
}

.share-links .wp-block-tag-cloud a,
.share-links .tagcloud a {
    background-color: var(--smoke-color);
    box-shadow: none
}

.share-links .wp-block-tag-cloud a:hover,
.share-links .tagcloud a:hover {
    background-color: var(--theme-color)
}

.share-links .th-social {
    display: inline-block
}

.share-links .th-social a {
    --icon-size: 40px;
    font-size: 14px;
    border-radius: 99px
}

.blog-author {
    margin-top: 40px;
    margin-bottom: 40px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    background-color: var(--smoke-color);
    border-radius: 20px;
    overflow: hidden
}

.blog-author .auhtor-img {
    width: 212px;
    min-height: 100%;
    background-color: #00ffff;
    text-align: center;
    display: grid;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media (max-width: 767px) {
    .blog-author .auhtor-img {
        width: 100%;
        min-height: 200px
    }
}

.blog-author .auhtor-img img {
    width: 96px;
    height: auto;
    object-fit: cover;
    object-position: center center
}

.blog-author .author-name {
    font-size: 24px;
    margin-top: -0.2em;
    margin-bottom: 16px
}

.blog-author .author-text {
    margin-bottom: 0
}

.blog-author .media-body {
    padding: 40px 40px 40px 40px;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center
}

@media (max-width: 767px) {
    .blog-author {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .blog-author .auhtor-img img {
        width: 100%
    }
}

@media (max-width: 575px) {
    .blog-author .media-body {
        padding: 35px 20px 30px 20px
    }
}

.blog-details .blog-single {
    background-color: transparent
}

.blog-details .blog-content>p:last-child {
    margin-bottom: 0
}

.blog-content .wp-block-search .wp-block-search__input {
    box-shadow: none
}

@media (max-width: 1399px) {
    .blog-single .blog-title {
        font-size: 28px;
        line-height: 1.4
    }

    .share-links {
        --blog-space-x: 20px
    }
}

@media (max-width: 1199px) {
    .blog-single {
        --blog-space-x: 20px;
        --blog-space-y: 20px
    }
}

@media (max-width: 991px) {
    .blog-single {
        --blog-space-x: 40px;
        --blog-space-y: 40px
    }

    .blog-single .blog-title {
        font-size: 26px
    }

    .share-links {
        --blog-space-x: 40px
    }
}

@media (max-width: 767px) {
    .share-links {
        --blog-space-x: 20px
    }

    .blog-details .blog-single {
        --blog-space-x: 20px;
        --blog-space-y: 20px
    }

    .blog-single {
        --blog-space-x: 20px;
        --blog-space-y: 20px
    }

    .blog-single .blog-audio,
    .blog-single .blog-video,
    .blog-single .blog-img {
        border-radius: 10px 10px 0 0
    }

    .blog-single .blog-title {
        font-size: 24px;
        line-height: 1.3
    }

    .blog-single .blog-text {
        margin-bottom: 22px
    }

    .blog-single .blog-bottom {
        padding-top: 15px
    }
}

@media (max-width: 575px) {
    .share-links-title {
        margin: 0 15px 5px 0
    }
}

.th-comment-form {
    margin-top: var(--blog-space-y, 40px);
    margin-bottom: 30px;
    padding: var(--blog-space-y, 40px) var(--blog-space-x, 40px);
    position: relative
}

.th-comment-form .row {
    --bs-gutter-x: 20px
}

.th-comment-form .blog-inner-title {
    margin-bottom: 0px
}

.th-comment-form .form-title {
    margin-top: -0.35em
}

.th-comment-form .form-title a#cancel-comment-reply-link {
    font-size: 0.7em;
    text-decoration: underline
}

.th-comment-form .form-text {
    margin-bottom: 25px
}

.th-comment-form .form-group>i {
    color: var(--theme-color)
}

.blog-comment-area {
    margin-bottom: 25px
}

.th-comment-form,
.th-comments-wrap {
    padding: 40px;
    box-shadow: 0px 6px 30px rgba(0, 0, 0, 0.06);
    border-radius: 10px
}

@media (max-width: 767px) {

    .th-comment-form,
    .th-comments-wrap {
        border-radius: 10px
    }
}

.th-comment-form:has(#wp-temp-form-div),
.th-comments-wrap:has(#wp-temp-form-div) {
    padding: 0;
    box-shadow: none;
    display: none
}

.th-comments-wrap {
    margin-top: var(--blog-space-y, 40px);
    margin-bottom: 30px
}

.th-comments-wrap .description p:last-child {
    margin-bottom: -0.5em
}

.th-comments-wrap .comment-respond {
    margin: 30px 0
}

.th-comments-wrap pre {
    background: #ededed;
    color: #666;
    font-size: 14px;
    margin: 20px 0;
    overflow: auto;
    padding: 20px;
    white-space: pre-wrap;
    word-wrap: break-word
}

.th-comments-wrap li {
    margin: 0
}

.th-comments-wrap .th-post-comment {
    padding: 0;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 30px;
    padding-bottom: 30px;
    position: relative;
    border-bottom: 1px solid var(--th-border-color)
}

.th-comments-wrap .th-post-comment ol,
.th-comments-wrap .th-post-comment ul,
.th-comments-wrap .th-post-comment dl {
    margin-bottom: 1rem
}

.th-comments-wrap .th-post-comment ol ol,
.th-comments-wrap .th-post-comment ol ul,
.th-comments-wrap .th-post-comment ul ol,
.th-comments-wrap .th-post-comment ul ul {
    margin-bottom: 0
}

.th-comments-wrap ul.comment-list {
    list-style: none;
    margin: 0;
    padding: 0;
    margin-bottom: -30px
}

.th-comments-wrap ul.comment-list ul ul,
.th-comments-wrap ul.comment-list ul ol,
.th-comments-wrap ul.comment-list ol ul,
.th-comments-wrap ul.comment-list ol ol {
    margin-bottom: 0
}

.th-comments-wrap .comment-avater {
    width: 80px;
    height: 80px;
    margin-right: 20px;
    overflow: hidden;
    border-radius: 8px
}

.th-comments-wrap .comment-avater img {
    width: 100%
}

.th-comments-wrap .comment-content {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-top: -6px;
    position: relative
}

.th-comments-wrap .commented-on {
    font-size: 16px;
    display: inline-block;
    margin-bottom: 2px;
    font-weight: 400;
    color: var(--body-color)
}

.th-comments-wrap .commented-on i {
    color: var(--theme-color);
    margin-right: 7px;
    font-size: 0.9rem
}

.th-comments-wrap .name {
    font-weight: 600;
    margin-bottom: 12px;
    font-size: 18px
}

.th-comments-wrap .comment-top {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.th-comments-wrap .text {
    margin-bottom: 10px
}

.th-comments-wrap .children {
    margin: 0;
    padding: 0;
    list-style-type: none;
    margin-left: 80px
}

.th-comments-wrap .reply_and_edit {
    margin-top: 12px;
    margin-bottom: -0.46em
}

.th-comments-wrap .reply_and_edit a {
    margin-right: 15px
}

.th-comments-wrap .reply_and_edit a:last-child {
    margin-right: 0
}

.th-comments-wrap .reply-btn {
    font-weight: 500;
    font-size: 16px;
    color: var(--body-color);
    display: inline-block
}

.th-comments-wrap .reply-btn i {
    color: var(--theme-color);
    margin-right: 4px
}

.th-comments-wrap .reply-btn:hover {
    color: var(--theme-color)
}

.th-comments-wrap .star-rating {
    font-size: 12px;
    margin-bottom: 10px;
    position: absolute;
    top: 5px;
    right: 0;
    width: 80px
}

.form-submit input[type="submit"] {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.form-submit input[type="submit"]:hover {
    background-color: var(--title-color)
}

.wp-block-post-comments-form textarea,
.wp-block-post-comments-form input:not([type=submit]):not([type=checkbox]):not([type=hidden]) {
    border: 1px solid var(--th-border-color)
}

.wp-block-comment-author-name {
    font-weight: 600
}

ul.comment-list .th-comment-item:last-child>.th-post-comment {
    border-bottom: none;
    padding-bottom: 0
}

ul.comment-list .children .th-comment-item>.th-post-comment {
    padding-bottom: 30px;
    border-bottom: 1px solid var(--th-border-color)
}

ul.comment-list:has(>.th-comment-item ~ .th-comment-item):first-child>.th-post-comment {
    padding-bottom: 30px;
    border-bottom: 1px solid var(--th-border-color)
}

.th-comments-wrap.th-comment-form {
    margin: 0
}

.comment-respond .must-log-in {
    margin-bottom: 0;
    margin-top: 8px
}

@media (max-width: 1199px) {

    .th-comment-form,
    .th-comments-wrap {
        padding: 40px 20px
    }
}

@media (max-width: 1199px) {
    .th-comments-wrap .children {
        margin-left: 40px
    }
}

@media (max-width: 991px) {

    .th-comment-form,
    .th-comments-wrap {
        padding: 40px
    }
}

@media (max-width: 767px) {

    .th-comment-form,
    .th-comments-wrap {
        padding: 40px 20px
    }

    .th-comments-wrap .th-post-comment {
        display: block
    }

    .th-comments-wrap .star-rating {
        position: relative;
        top: 0;
        right: 0
    }

    .th-comments-wrap .comment-top {
        display: block
    }

    .th-comments-wrap .comment-avater {
        margin-right: 0;
        margin-bottom: 25px
    }

    .th-comments-wrap .children {
        margin-left: 40px
    }

    .th-comments-wrap .children {
        margin-left: 30px
    }
}

@media (max-width: 767px) {
    .th-comment-form {
        --blog-space-x: 20px
    }
}

.th-hero-wrapper {
    position: relative;
    z-index: 2
}

.th-hero-bg {
    position: absolute;
    inset: 0
}

.th-hero-bg img {
    height: 100%;
    width: 100%;
    object-fit: cover
}

.hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%
}

.hero-overlay img {
    height: 100%;
    object-fit: cover
}

.hero-overlay-ani {
    position: absolute;
    inset: 0;
    background-color: var(--title-color);
    z-index: 3;
    pointer-events: none
}

.hero-overlay-ani.ani-start {
    -webkit-animation: heroOverlayAni 0.8s linear 0.2s forwards;
    animation: heroOverlayAni 0.8s linear 0.2s forwards
}

@-webkit-keyframes heroOverlayAni {
    from {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes heroOverlayAni {
    from {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

.hero-title {
    font-size: 74px;
    font-weight: 700;
    line-height: 1.135;
    margin-bottom: 20px;
    margin-top: -0.2em
}

.hero-title .title1,
.hero-title .title2 {
    display: block;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    position: relative
}

.text-transparent {
    -webkit-text-stroke: 2px var(--theme-color);
    color: transparent
}

@media (max-width: 767px) {
    .text-transparent {
        -webkit-text-stroke: 1px var(--theme-color)
    }
}

.hero-subtitle {
    display: block;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--theme-color2);
    margin-top: -0.33em;
    margin-bottom: 32px
}

.hero-heading {
    font-size: 30px;
    font-weight: 600;
    margin-bottom: 25px
}

.hero-text {
    margin-bottom: 32px
}

.hero-1 {
    overflow: hidden
}

.hero-1 .icon-box {
    position: absolute;
    top: 50%;
    right: 7.45%;
    width: 56px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 3
}

@media (min-width: 1922px) {
    .hero-1 .icon-box {
        right: 15%
    }
}

@media (max-width: 991px) {
    .hero-1 .icon-box {
        display: none
    }
}

.hero-1 .icon-box .slider-arrow {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.hero-1 .icon-box .slider-arrow:hover {
    background-color: var(--theme-color2)
}

.hero-1 .icon-box .slider-arrow:first-child {
    margin-bottom: 10px
}

.hero-1 .circle-shape {
    position: absolute;
    top: 10%;
    right: -190px;
    -webkit-animation: spin 18s linear infinite;
    animation: spin 18s linear infinite
}

.hero-1 .circle-shape2 {
    position: absolute;
    top: calc(10% + 32px);
    right: -158px;
    -webkit-animation: spinReverse 18s linear infinite;
    animation: spinReverse 18s linear infinite
}

.hero-1 .shape-mockup {
    z-index: 2
}

.hero-1 .bubble_1 {
    position: absolute;
    bottom: 50%;
    left: 2%
}

.hero-1 .bubble_2 {
    position: absolute;
    bottom: 20%;
    left: 6%
}

.hero-1 .bubble_3 {
    position: absolute;
    bottom: 6%;
    left: 14%
}

.hero-1 .bubble_4 {
    position: absolute;
    bottom: 2%;
    left: 4%
}

.video-btn {
    font-size: 18px;
    font-weight: 500;
    color: var(--title-color)
}

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

.video-btn .play-btn {
    font-size: 16px;
    margin-right: 15px
}

.hero-style1 {
    position: relative;
    z-index: 6;
    padding: 190px 0
}

.hero-style1 .hero-title {
    color: var(--white-color);
    text-transform: uppercase
}

.hero-style1 .hero-text {
    color: var(--white-color);
    max-width: 780px
}

.hero-style1 .video-btn {
    color: var(--white-color)
}

.hero-style1 .video-btn:hover {
    color: var(--theme-color)
}

.hero-style1 .btn-group {
    gap: 45px
}

.hero-style1 .sub-title {
    margin-bottom: 30px
}

@media (max-width: 1299px) {
    .hero-title {
        font-size: 64px
    }

    .hero-style1 {
        padding: 150px 0
    }
}

@media (max-width: 1199px) {
    .hero-title {
        font-size: 60px
    }

    .hero-style1 .hero-text {
        max-width: 780px
    }
}

@media (max-width: 991px) {
    .hero-title {
        font-size: 54px;
        line-height: 1.2
    }

    .hero-style1 {
        padding: 110px 0;
        text-align: center;
        margin-left: auto;
        margin-right: auto
    }

    .hero-style1 .hero-text {
        margin-left: auto;
        margin-right: auto
    }

    .hero-style1 .title1,
    .hero-style1 .title2 {
        margin-left: auto;
        margin-right: auto
    }

    .hero-style1 .btn-group {
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

@media (max-width: 767px) {
    .hero-1 .shape-mockup {
        display: none
    }

    .hero-title {
        font-size: 48px
    }
}

@media (max-width: 575px) {
    .hero-title {
        font-size: 36px;
        line-height: 1.3
    }

    .hero-subtitle {
        margin-bottom: 25px;
        font-size: 16px
    }

    .hero-1 .hero-overlay {
        opacity: 1
    }

    .hero-style1 {
        padding: 100px 0
    }

    .hero-style1 .btn-group {
        gap: 30px
    }
}

@media (max-width: 390px) {
    .hero-title {
        font-size: 34px;
        line-height: 1.3
    }
}

@media (max-width: 330px) {
    .hero-title {
        font-size: 32px
    }
}

.hero-title2 {
    font-size: 84px;
    line-height: 1.12;
    margin-top: -0.2em;
    margin-bottom: 18px
}

@media (max-width: 1299px) {
    .hero-title2 {
        font-size: 64px
    }
}

@media (max-width: 1199px) {
    .hero-title2 {
        font-size: 60px
    }
}

@media (max-width: 767px) {
    .hero-title2 {
        font-size: 52px
    }
}

@media (max-width: 575px) {
    .hero-title2 {
        font-size: 44px
    }
}

@media (max-width: 375px) {
    .hero-title2 {
        font-size: 36px
    }
}

.hero-title2 .title1,
.hero-title2 .title2 {
    display: block
}

.hero-title2 .line-text {
    color: var(--theme-color);
    font-weight: 400;
    position: relative
}

.hero-title2 .line-text:after {
    content: '';
    height: 22px;
    width: 100%;
    background-image: url('data:image/svg+xml,<svg width="288" height="22" viewBox="0 0 288 22" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 10.2839C33.4393 5.13087 76.1911 2 123.041 2C194.686 2 256.746 9.32162 287 20" stroke="%2304CE78" stroke-width="3"/></svg>');
    background-size: 288px 22px;
    background-repeat: repeat-x;
    position: absolute;
    bottom: -8px;
    left: 0;
    -webkit-animation: titleFill 3s linear infinite;
    animation: titleFill 3s linear infinite
}

@media (max-width: 575px) {
    .hero-title2 .line-text:after {
        bottom: -12px
    }
}

@-webkit-keyframes titleFill {
    0% {
        width: 0
    }

    80% {
        width: 100%
    }

    100% {
        width: 100%
    }
}

@keyframes titleFill {
    0% {
        width: 0
    }

    80% {
        width: 100%
    }

    100% {
        width: 100%
    }
}

.hero-2 {
    overflow: hidden
}

.hero-2 .hero-img {
    position: absolute;
    bottom: 0;
    right: 8%
}

@media (max-width: 1500px) {
    .hero-2 .hero-img {
        right: 0%
    }
}

@media (max-width: 1299px) {
    .hero-2 .hero-img {
        max-width: 600px
    }
}

@media (max-width: 1199px) {
    .hero-2 .hero-img {
        max-width: 560px
    }
}

@media (max-width: 991px) {
    .hero-2 .hero-img {
        position: relative;
        top: unset;
        right: unset;
        margin-left: auto;
        margin-right: auto;
        padding: 0 15px
    }
}

.hero-2 .hero-shape1,
.hero-2 .hero-shape2,
.hero-2 .hero-shape3,
.hero-2 .hero-shape4,
.hero-2 .hero-shape5 {
    position: absolute;
    z-index: 2
}

.hero-2 .hero-shape1 {
    top: 15%;
    left: 40%;
    -webkit-animation: spin 8s linear infinite;
    animation: spin 8s linear infinite
}

.hero-2 .hero-shape2 {
    bottom: 12%;
    left: 48%;
    -webkit-animation: spin 5s linear infinite;
    animation: spin 5s linear infinite
}

.hero-2 .bubble {
    position: absolute;
    bottom: -40px;
    left: 50px;
    -webkit-animation: heroBubble 10s linear infinite;
    animation: heroBubble 10s linear infinite
}

.hero-2 .bubble_2 {
    -webkit-animation-delay: 2s;
    animation-delay: 2s
}

.hero-2 .bubble_3 {
    -webkit-animation-delay: 4s;
    animation-delay: 4s
}

.hero-2 .bubble_4 {
    -webkit-animation-delay: 6s;
    animation-delay: 6s
}

.hero-2 .bubble_5 {
    -webkit-animation-delay: 8s;
    animation-delay: 8s
}

@-webkit-keyframes heroBubble {
    0% {
        opacity: 1;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }

    20% {
        opacity: 0.9;
        -webkit-transform: translate(100px, 20%);
        transform: translate(100px, 20%);
        bottom: 20%
    }

    40% {
        opacity: 0.8;
        -webkit-transform: translate(0px, 40%);
        transform: translate(0px, 40%);
        bottom: 40%
    }

    60% {
        opacity: 0.6;
        -webkit-transform: translate(80px, 60%);
        transform: translate(80px, 60%);
        bottom: 60%
    }

    80% {
        opacity: 0.3;
        -webkit-transform: translate(0, 80%);
        transform: translate(0, 80%);
        bottom: 80%
    }

    100% {
        opacity: 0;
        -webkit-transform: translate(100px, 100%) scale(0.3);
        transform: translate(100px, 100%) scale(0.3);
        bottom: 100%
    }
}

@keyframes heroBubble {
    0% {
        opacity: 1;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }

    20% {
        opacity: 0.9;
        -webkit-transform: translate(100px, 20%);
        transform: translate(100px, 20%);
        bottom: 20%
    }

    40% {
        opacity: 0.8;
        -webkit-transform: translate(0px, 40%);
        transform: translate(0px, 40%);
        bottom: 40%
    }

    60% {
        opacity: 0.6;
        -webkit-transform: translate(80px, 60%);
        transform: translate(80px, 60%);
        bottom: 60%
    }

    80% {
        opacity: 0.3;
        -webkit-transform: translate(0, 80%);
        transform: translate(0, 80%);
        bottom: 80%
    }

    100% {
        opacity: 0;
        -webkit-transform: translate(100px, 100%) scale(0.3);
        transform: translate(100px, 100%) scale(0.3);
        bottom: 100%
    }
}

.hero-counter {
    border-right: 1px solid rgba(255, 255, 255, 0.3);
    padding-right: 30px
}

.hero-counter-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 50px;
    gap: 30px
}

.hero-counter:last-of-type {
    border-right: none;
    padding-right: 0 !important
}

@media (max-width: 575px) {
    .hero-counter {
        padding-right: 0 !important;
        border-right: none
    }
}

.hero-counter .box-number {
    margin-top: -0.06em;
    font-family: var(--title-font);
    font-size: 30px;
    font-weight: 700;
    margin-bottom: 5px
}

@media (max-width: 375px) {
    .hero-counter .box-number {
        font-size: 24px
    }
}

.hero-counter .box-text {
    font-size: 13px
}

.wave-title {
    position: relative;
    color: var(--theme-color)
}

.wave-title:after {
    content: '';
    height: 20px;
    width: 100%;
    position: absolute;
    bottom: -8px;
    left: 0;
    background-image: url('data:image/svg+xml,<svg width="322" height="18" viewBox="0 0 322 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.67133 -3.05176e-05C19.3099 -3.05176e-05 26.2444 4.1005 31.3094 7.09658C36.181 9.97517 38.9804 11.4752 44.4966 11.4752C50.0128 11.4752 52.7848 9.97517 57.684 7.09658C62.7582 4.1005 69.6558 -3.05176e-05 83.3312 -3.05176e-05C97.0066 -3.05176e-05 103.904 4.1005 108.978 7.09658C113.841 9.97517 116.64 11.4752 122.166 11.4752C127.691 11.4752 130.454 9.97517 135.353 7.09658C140.418 4.1005 147.325 -3.05176e-05 160.991 -3.05176e-05C174.657 -3.05176e-05 181.573 4.1005 186.638 7.09658C191.51 9.97517 194.309 11.4752 199.826 11.4752C205.342 11.4752 208.114 9.97517 213.022 7.09658C218.087 4.1005 224.994 -3.05176e-05 238.66 -3.05176e-05C252.326 -3.05176e-05 259.242 4.1005 264.307 7.09658C269.179 9.97517 271.978 11.4752 277.495 11.4752C283.011 11.4752 285.783 9.97517 290.691 7.09658C295.756 4.1005 302.663 -3.05176e-05 316.329 -3.05176e-05C318.364 -3.05176e-05 320.315 0.343687 321.753 0.955506C321.834 2.92425 321.834 2.60503 321.834 3.47027C321.834 4.33552 321.834 3.47027 321.753 5.56924C320.315 6.18106 318.364 6.52477 316.329 6.52477C310.804 6.52477 308.041 8.02869 303.142 10.9073C298.077 13.8994 291.17 18 277.495 18C263.819 18 256.922 13.8994 251.857 10.9073C246.985 8.02869 244.185 6.52477 238.66 6.52477C233.135 6.52477 230.372 8.02869 225.473 10.9073C220.408 13.8994 213.501 18 199.826 18C186.15 18 179.252 13.8994 174.188 10.9073C169.316 8.02869 166.516 6.52477 160.991 6.52477C155.465 6.52477 152.703 8.02869 147.804 10.9073C142.739 13.8994 135.832 18 122.166 18C108.499 18 101.583 13.8994 96.5184 10.9073C91.6468 8.02869 88.8474 6.52477 83.3312 6.52477C77.815 6.52477 75.043 8.02869 70.1438 10.9073C65.0788 13.8994 58.172 18 44.4966 18C30.8211 18 23.9237 13.8994 18.8587 10.9073C13.9872 8.02869 11.1875 6.52477 5.67133 6.52477C3.63682 6.52477 1.6857 6.18106 0.24708 5.56924C0.247028 3.85106 0.247204 4.20999 0.247204 3.34475C0.247204 2.47951 0.24708 2.60337 0.24708 0.955506C1.56824 0 3.63682 -3.05176e-05 5.67133 -3.05176e-05Z" fill="%23068FFF"/></svg>');
    background-size: auto;
    background-repeat: repeat-x;
    -webkit-animation: waveLine 7s linear infinite;
    animation: waveLine 7s linear infinite
}

@media (max-width: 767px) {
    .wave-title:after {
        background-size: auto 11px
    }
}

@media (max-width: 575px) {
    .wave-title:after {
        background-size: auto 9px
    }
}

@-webkit-keyframes waveLine {
    0% {
        background-position: left 0 center
    }

    50% {
        background-position: left 100% center
    }

    100% {
        background-position: left 0 center
    }
}

@keyframes waveLine {
    0% {
        background-position: left 0 center
    }

    50% {
        background-position: left 100% center
    }

    100% {
        background-position: left 0 center
    }
}

.hero-style2 {
    position: relative;
    z-index: 6;
    padding: 197px 0
}

.hero-style2 .sub-title {
    margin-bottom: 30px
}

.hero-style2 .hero-title {
    text-transform: capitalize;
    color: var(--white-color);
    font-weight: 700;
    margin-bottom: 36px
}

.hero-style2 .box-number,
.hero-style2 .box-text {
    color: var(--white-color)
}

@media (max-width: 1299px) {
    .hero-style2 {
        padding: 160px 0
    }
}

@media (max-width: 1199px) {
    .hero-style2 {
        padding: 120px 0
    }
}

@media (max-width: 991px) {
    .hero-counter-wrap {
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .hero-2 .hero-shape1 {
        left: 30px;
        top: 30px
    }

    .hero-style2 {
        text-align: center;
        padding: 100px 0 40px 0
    }

    .hero-style2 .title1,
    .hero-style2 .title2 {
        margin-left: auto;
        margin-right: auto
    }
}

@media (max-width: 767px) {
    .hero-counter {
        padding-right: 15px
    }

    .hero-counter-wrap {
        gap: 15px
    }
}

.hero-title2 .square-text {
    border: 2px solid;
    line-height: 1.03em;
    padding: 0 10px;
    display: inline-block;
    position: relative
}

.hero-title2 .square-text .dot1,
.hero-title2 .square-text .dot2 {
    position: absolute;
    top: -10px;
    height: calc(100% + 20px);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.hero-title2 .square-text .dot1:before,
.hero-title2 .square-text .dot1:after,
.hero-title2 .square-text .dot2:before,
.hero-title2 .square-text .dot2:after {
    content: '';
    width: 16px;
    height: 16px;
    display: inline-block;
    background-color: var(--theme-color);
    border-radius: 99px
}

@media (max-width: 767px) {

    .hero-title2 .square-text .dot1,
    .hero-title2 .square-text .dot2 {
        top: -7px;
        height: calc(100% + 14px)
    }

    .hero-title2 .square-text .dot1:before,
    .hero-title2 .square-text .dot1:after,
    .hero-title2 .square-text .dot2:before,
    .hero-title2 .square-text .dot2:after {
        width: 12px;
        height: 12px
    }
}

.hero-title2 .square-text .dot1 {
    left: -10px
}

@media (max-width: 767px) {
    .hero-title2 .square-text .dot1 {
        left: -7px
    }
}

.hero-title2 .square-text .dot2 {
    right: -10px
}

@media (max-width: 767px) {
    .hero-title2 .square-text .dot2 {
        right: -7px
    }
}

.hero-tags {
    padding: 4px 16px;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px;
    margin-bottom: 40px;
    position: relative
}

.hero-tags:before {
    content: '';
    position: absolute;
    inset: 0 -35px 0 0;
    background-image: -webkit-linear-gradient(left, #14126A 0%, rgba(0, 8, 82, 0) 100%);
    background-image: linear-gradient(90deg, #14126A 0%, rgba(0, 8, 82, 0) 100%);
    opacity: 0.5;
    mix-blend-mode: color-burn;
    border-radius: 30px 0px 0px 30px
}

@media (max-width: 767px) {
    .hero-tags {
        gap: 10px
    }

    .hero-tags:before {
        inset: 0 -12px 0 0
    }
}

.hero-tags .tag {
    color: var(--white-color);
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px
}

@media (max-width: 767px) {
    .hero-tags .tag {
        font-size: 14px;
        gap: 10px
    }
}

.hero-tags .tag:after {
    content: '';
    height: 2px;
    width: 50px;
    background-color: var(--theme-color)
}

@media (max-width: 767px) {
    .hero-tags .tag:after {
        width: 25px
    }
}

.hero-tags .tag:last-child:after {
    display: none
}

.hero-3 {
    max-width: 1820px;
    margin: 0 auto;
    background-size: 1820px 100%;
    border-radius: 50px
}

.hero-style3 {
    position: relative;
    z-index: 6;
    padding: 276px 0 446px 0
}

.hero-style3 .hero-title2 {
    color: var(--white-color);
    font-weight: 900
}

.hero-style3 .hero-text {
    max-width: 630px;
    color: var(--white-color)
}

.hero-form {
    margin-bottom: -20px
}

.hero-form-wrap {
    background-color: var(--white-color);
    box-shadow: 0px 6px 50px rgba(0, 0, 0, 0.05);
    border-radius: 60px;
    padding: 60px;
    max-width: 1522px;
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 9
}

@media (max-width: 1860px) {
    .hero-form-wrap {
        margin-right: 12px;
        margin-left: 12px
    }
}

@media (max-width: 1600px) {
    .hero-form-wrap {
        max-width: calc(100% - 24px)
    }
}

@media (max-width: 1299px) {
    .hero-form-wrap {
        padding: 45px
    }
}

.hero-form-wrap .form-title {
    margin: 0;
    max-width: 350px;
    padding-right: 55px;
    border-right: 2px solid var(--theme-color);
    margin-right: 55px;
    font-weight: 600
}

@media (max-width: 1299px) {
    .hero-form-wrap .form-title {
        max-width: 300px;
        padding-right: 25px;
        margin-right: 20px
    }
}

.hero-form .row {
    --bs-gutter-x: 20px
}

@media (max-width: 1299px) {
    .hero-3 {
        background-size: 1450px 100%;
        border-radius: 0
    }

    .hero-style3 {
        padding: 160px 0 350px 0
    }
}

@media (max-width: 1199px) {
    .hero-3 {
        margin-bottom: 100px
    }

    .hero-form-wrap {
        bottom: -100px;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .hero-form-wrap .form-title {
        border-right: none;
        padding: 0;
        margin: 0 0 25px 0;
        max-width: 100%;
        text-align: center
    }

    .hero-style3 .hero-text {
        max-width: 550px
    }
}

@media (max-width: 991px) {
    .hero-form-wrap {
        bottom: -180px
    }

    .hero-3 {
        margin-bottom: 180px;
        background-position: left 30% center
    }
}

@media (max-width: 767px) {
    .hero-style3 {
        padding: 130px 0 100px 0;
        text-align: center
    }

    .hero-style3 .hero-text {
        margin-left: auto;
        margin-right: auto
    }

    .hero-3 {
        margin-bottom: 0;
        background-size: cover
    }

    .hero-form-wrap {
        position: static;
        padding: 30px;
        border-radius: 20px
    }
}

.error-content {
    text-align: center
}

.error-img {
    text-align: center;
    margin-bottom: 45px
}

.error-title {
    margin-bottom: 20px
}

.error-text {
    margin-bottom: 35px;
    max-width: 650px;
    margin-left: auto;
    margin-right: auto
}

@media (max-width: 991px) {
    .error-title {
        margin-bottom: 15px
    }

    .error-img {
        margin-bottom: 30px
    }

    .error-text {
        margin-bottom: 25px
    }
}

@media (max-width: 767px) {
    .error-title {
        margin-bottom: 10px
    }
}

.popup-search-box {
    position: fixed;
    top: 0;
    left: 50%;
    background-color: rgba(0, 0, 0, 0.95);
    height: 0;
    width: 0;
    overflow: hidden;
    z-index: 99999;
    opacity: 0;
    visibility: hidden;
    border-radius: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s
}

.popup-search-box button.searchClose {
    width: 60px;
    height: 60px;
    position: absolute;
    top: 40px;
    right: 40px;
    border-width: 1px;
    border-style: solid;
    border-color: var(--theme-color);
    background-color: transparent;
    font-size: 22px;
    border-radius: 50%;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s;
    color: var(--theme-color)
}

.popup-search-box button.searchClose:hover {
    color: var(--body-color);
    background-color: #fff;
    border-color: transparent;
    border-color: transparent;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg)
}

.popup-search-box form {
    position: absolute;
    top: 50%;
    left: 50%;
    display: inline-block;
    padding-bottom: 40px;
    cursor: auto;
    width: 100%;
    max-width: 700px;
    -webkit-transform: translate(-50%, -50%) scale(0);
    -ms-transform: translate(-50%, -50%) scale(0);
    transform: translate(-50%, -50%) scale(0);
    -webkit-transition: -webkit-transform ease 0.4s;
    transition: -webkit-transform ease 0.4s;
    transition: transform ease 0.4s;
    transition: transform ease 0.4s, -webkit-transform ease 0.4s
}

@media (max-width: 1199px) {
    .popup-search-box form {
        max-width: 600px
    }
}

.popup-search-box form input {
    font-size: 18px;
    height: 70px;
    width: 100%;
    border: 2px solid var(--theme-color);
    background-color: transparent;
    padding-left: 30px;
    color: #fff;
    border-radius: 50px
}

.popup-search-box form input::-moz-placeholder {
    color: #fff
}

.popup-search-box form input::-webkit-input-placeholder {
    color: #fff
}

.popup-search-box form input:-ms-input-placeholder {
    color: #fff
}

.popup-search-box form input::-ms-input-placeholder {
    color: #fff
}

.popup-search-box form input::placeholder {
    color: #fff
}

.popup-search-box form button {
    position: absolute;
    top: 0px;
    background-color: transparent;
    border: none;
    color: #fff;
    font-size: 24px;
    right: 12px;
    color: var(--white-color);
    cursor: pointer;
    width: 70px;
    height: 70px;
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s;
    -webkit-transform: scale(1.001);
    -ms-transform: scale(1.001);
    transform: scale(1.001)
}

.popup-search-box form button:hover {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1)
}

.popup-search-box.show {
    opacity: 1;
    visibility: visible;
    width: 100.1%;
    height: 100%;
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s;
    border-radius: 0
}

.popup-search-box.show form {
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
    -webkit-transform: translate(-50%, -50%) scale(1);
    -ms-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1)
}

.sidemenu-wrapper {
    position: fixed;
    z-index: 99999;
    right: 0;
    top: 0;
    height: 100%;
    width: 0;
    background-color: rgba(0, 0, 0, 0.75);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all ease 0.8s;
    transition: all ease 0.8s
}

.sidemenu-wrapper .th-social a {
    box-shadow: none
}

.sidemenu-wrapper .newsletter-widget .btn-group {
    margin-top: 15px
}

.sidemenu-wrapper .closeButton {
    display: inline-block;
    border: 2px solid;
    width: 50px;
    height: 50px;
    line-height: 48px;
    font-size: 24px;
    padding: 0;
    position: absolute;
    top: 20px;
    right: 20px;
    background-color: var(--white-color);
    border-radius: 50%;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s
}

.sidemenu-wrapper .closeButton:hover {
    color: var(--theme-color);
    border-color: var(--theme-color);
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg)
}

.sidemenu-wrapper .sidemenu-content {
    background-color: var(--white-color);
    width: 450px;
    max-width: calc(100% - 15px);
    margin-left: auto;
    padding: 80px 30px;
    height: 100%;
    overflow: scroll;
    position: relative;
    right: -500px;
    cursor: auto;
    -webkit-transition-delay: 1s;
    transition-delay: 1s;
    -webkit-transition: right ease 1s;
    transition: right ease 1s
}

@media (max-width: 375px) {
    .sidemenu-wrapper .sidemenu-content {
        max-width: 100%
    }
}

.sidemenu-wrapper .sidemenu-content::-webkit-scrollbar-track {
    box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.1);
    background-color: #f5f5f5
}

.sidemenu-wrapper .sidemenu-content::-webkit-scrollbar {
    width: 2px;
    background-color: #f5f5f5
}

.sidemenu-wrapper .sidemenu-content select,
.sidemenu-wrapper .sidemenu-content input,
.sidemenu-wrapper .sidemenu-content .form-select,
.sidemenu-wrapper .sidemenu-content .form-control,
.sidemenu-wrapper .sidemenu-content textarea {
    background-color: var(--smoke-color2);
    border-radius: 27px
}

.sidemenu-wrapper .widget {
    padding: 0;
    border: none;
    background-color: transparent
}

.sidemenu-wrapper .info-box_icon {
    background-color: rgba(255, 156, 0, 0.15)
}

.sidemenu-wrapper.show {
    opacity: 1;
    visibility: visible;
    width: 100%;
    -webkit-transition: all ease 0.8s;
    transition: all ease 0.8s
}

.sidemenu-wrapper.show .sidemenu-content {
    right: 0;
    opacity: 1;
    visibility: visible
}

.woocommerce-message,
.woocommerce-info {
    position: relative;
    padding: 11px 20px 11px 50px;
    background-color: var(--theme-color);
    color: var(--white-color);
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 15px;
    border-radius: 6px
}

.woocommerce-message a,
.woocommerce-info a {
    color: var(--white-color);
    text-decoration: underline
}

.woocommerce-message a:hover,
.woocommerce-info a:hover {
    color: var(--title-color)
}

.woocommerce-message:before,
.woocommerce-info:before {
    content: "\f06a";
    font-family: var(--icon-font);
    font-weight: 400;
    margin-right: 10px;
    font-size: 18px;
    position: absolute;
    left: 20px;
    top: 11px
}

.woocommerce-notices-wrapper .woocommerce-message {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.woocommerce-notices-wrapper .woocommerce-message:before {
    content: "\f14a";
    font-weight: 300
}

.woocommerce-form-register,
.woocommerce-form-coupon,
.woocommerce-form-login {
    padding: 35px 40px 35px 40px;
    background-color: var(--white-color);
    box-shadow: 0px 6px 30px rgba(1, 15, 28, 0.1);
    margin-bottom: 0;
    border-radius: 10px
}

@media (max-width: 575px) {

    .woocommerce-form-register,
    .woocommerce-form-coupon,
    .woocommerce-form-login {
        padding: 40px 20px
    }
}

.woocommerce-form-register .form-group,
.woocommerce-form-coupon .form-group,
.woocommerce-form-login .form-group {
    margin-bottom: 20px
}

.woocommerce-form-register .form-group:last-child,
.woocommerce-form-coupon .form-group:last-child,
.woocommerce-form-login .form-group:last-child {
    margin-bottom: 0
}

.woocommerce-form-login-toggle .woocommerce-info {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.woocommerce-form-login-toggle .woocommerce-info a {
    color: inherit
}

.woocommerce-form-login-toggle .woocommerce-info a:hover {
    color: var(--title-color)
}

.woocommerce-form-login-toggle+.row .woocommerce-form-login {
    margin-bottom: 30px
}

.woocommerce-error {
    background-color: var(--error-color);
    color: #fff;
    list-style: none;
    padding: 10px 26px;
    margin: 0 0 30px 0;
    border-radius: 0;
    font-weight: 500;
    font-size: 14px
}

nav.woocommerce-MyAccount-navigation li {
    border: 1px solid #ddd;
    margin: 0;
    border-top: none
}

nav.woocommerce-MyAccount-navigation li:first-child {
    border-top: 1px solid #ddd
}

nav.woocommerce-MyAccount-navigation li a {
    color: var(--title-color);
    font-weight: 700;
    padding: 7px 17px;
    display: block
}

nav.woocommerce-MyAccount-navigation li.is-active a,
nav.woocommerce-MyAccount-navigation li a:hover {
    color: var(--white-color);
    background-color: var(--theme-color)
}

.woocommerce-MyAccount-content h3 {
    margin-top: -0.3em
}

.woocommerce-MyAccount-content .btn {
    background-color: var(--theme-color);
    color: var(--white-color);
    font-size: 14px;
    padding: 10px 25px;
    font-weight: 700
}

.woocommerce-MyAccount-content .btn:hover {
    background-color: var(--title-color);
    color: var(--white-color)
}

table.variations,
.woocommerce-grouped-product-list-item {
    border-collapse: separate;
    border-spacing: 0 15px;
    margin-bottom: 5px;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    border: none
}

table.variations td,
.woocommerce-grouped-product-list-item td {
    border: none;
    vertical-align: middle;
    padding: 0 5px
}

table.variations td:first-child,
.woocommerce-grouped-product-list-item td:first-child {
    padding: 0
}

table.variations label,
.woocommerce-grouped-product-list-item label {
    margin: 0;
    font-size: 14px;
    text-transform: capitalize
}

table.variations label a,
.woocommerce-grouped-product-list-item label a {
    color: var(--title-color)
}

table.variations label a:hover,
.woocommerce-grouped-product-list-item label a:hover {
    color: var(--theme-color)
}

table.variations .label,
.woocommerce-grouped-product-list-item .label {
    border: none
}

table.variations__label,
.woocommerce-grouped-product-list-item__label {
    border: none !important;
    font-weight: 600
}

table.variations__price,
.woocommerce-grouped-product-list-item__price {
    border: none !important
}

table.variations__price .price,
table.variations__price .amount,
.woocommerce-grouped-product-list-item__price .price,
.woocommerce-grouped-product-list-item__price .amount {
    font-size: 18px !important
}

table.variations del,
.woocommerce-grouped-product-list-item del {
    margin-left: 12px
}

.woocommerce-product-attributes th,
.woocommerce-product-attributes td {
    border: 1px solid var(--th-border-color)
}

.woocommerce-product-attributes th p:last-child,
.woocommerce-product-attributes td p:last-child {
    margin-bottom: 0
}

.woocommerce-grouped-product-list.group_table {
    border-collapse: collapse;
    margin-bottom: 15px
}

.woocommerce-grouped-product-list.group_table .woocommerce-Price-amount.amount {
    font-size: 16px;
    color: var(--title-color)
}

.woocommerce-grouped-product-list.group_table label {
    margin: 0 0 0 10px;
    margin: 0 0 0 10px;
    font-family: var(--title-font);
    font-size: 18px
}

.woocommerce-grouped-product-list.group_table .qty-input {
    border-color: #e3e6e9
}

.woocommerce-grouped-product-list.group_table tr {
    border-bottom: 1px solid #e3e6e9
}

.woocommerce-grouped-product-list.group_table tr:last-child {
    border-bottom: none
}

.woocommerce-grouped-product-list.group_table td {
    padding: 30px 5px
}

table.variations {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    position: relative
}

table.variations td {
    padding: 0
}

table.variations td.label {
    padding-right: 10px;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content
}

table.variations select {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    font-weight: 400;
    line-height: 1.5;
    vertical-align: middle;
    margin: 0;
    padding-right: 54px;
    padding-left: 20px;
    height: 50px
}

table.variations .reset_variations {
    margin-left: 16px;
    display: inline-block;
    position: absolute;
    left: 100%;
    bottom: 25px
}

.woosq-product .product .woocommerce-grouped-product-list-item__quantity,
.woosq-product .product .woocommerce-grouped-product-list-item__label,
.woosq-product .product .woocommerce-grouped-product-list-item__price {
    width: auto !important
}

.woocommerce-grouped-product-list-item__label:after,
.woocommerce-grouped-product-list-item__price:after {
    display: none
}

.woocommerce-variation.single_variation {
    margin-bottom: 30px
}

.woocommerce-variation.single_variation .price {
    color: var(--title-color);
    font-weight: 700
}

.wooscp-table-items td.woocommerce-product-attributes-item__value {
    padding-left: 15px !important
}

.wooscp-table-items a.added_to_cart.wc-forward {
    margin-left: 15px;
    text-decoration: underline
}

.tinvwl_added_to_wishlist.tinv-modal.tinv-modal-open {
    z-index: 1111
}

table.woocommerce-product-attributes {
    margin-bottom: 30px
}

#woosq-popup .product_meta {
    margin-top: 20px
}

#woosq-popup .product_title {
    font-size: 24px;
    margin-bottom: 5px
}

#woosq-popup .single-product .product .actions {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 20px
}

#woosq-popup .single-product .product .actions>div {
    height: auto;
    overflow: visible;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content
}

#woosq-popup .single-product .product .actions>div .quantity.style2.woocommerce-grouped-product-list-item__quantity {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content
}

.login-tab {
    margin-bottom: 30px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

.login-tab button.nav-link {
    background-color: var(--smoke-color);
    color: var(--title-color);
    padding: 11px 39px;
    font-size: 18px;
    font-weight: 500;
    border-radius: 15px ​15px 0
}

.login-tab button.nav-link.active {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.star-rating {
    overflow: hidden;
    position: relative;
    width: 100px;
    height: 1.2em;
    line-height: 1.2em;
    display: block;
    font-family: var(--icon-font);
    font-weight: 700;
    font-size: 14px
}

.star-rating:before {
    content: "\e28b\e28b\e28b\e28b\e28b";
    color: #e1e1e1;
    float: left;
    top: 0;
    left: 0;
    position: absolute;
    letter-spacing: 3px
}

.star-rating span {
    overflow: hidden;
    float: left;
    top: 0;
    left: 0;
    position: absolute;
    padding-top: 1.5em
}

.star-rating span:before {
    content: "\e28b\e28b\e28b\e28b\e28b";
    top: 0;
    position: absolute;
    left: 0;
    color: var(--yellow-color);
    letter-spacing: 3px
}

.rating-select label {
    margin: 0;
    margin-right: 10px
}

.rating-select p.stars {
    margin-bottom: 0;
    line-height: 1
}

.rating-select p.stars a {
    position: relative;
    height: 14px;
    width: 18px;
    text-indent: -999em;
    display: inline-block;
    text-decoration: none
}

.rating-select p.stars a::before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 18px;
    height: 14px;
    line-height: 1;
    font-family: var(--icon-font);
    content: "\e28b";
    font-weight: 400;
    text-indent: 0;
    color: var(--yellow-color)
}

.rating-select p.stars a:hover~a::before {
    content: "\e28b";
    font-weight: 400
}

.rating-select p.stars:hover a::before {
    content: "\e28b";
    font-weight: 700
}

.rating-select p.stars.selected a.active::before {
    content: "\e28b";
    font-weight: 700
}

.rating-select p.stars.selected a.active~a::before {
    content: "\e28b";
    font-weight: 400
}

.rating-select p.stars.selected a:not(.active)::before {
    content: "\e28b";
    font-weight: 700
}

@media (max-width: 767px) {

    .woocommerce-message,
    .woocommerce-info {
        font-size: 14px;
        line-height: 22px;
        padding: 10px 15px 10px 37px
    }

    .woocommerce-message:before,
    .woocommerce-info:before {
        font-size: 16px;
        top: 10px;
        left: 15px
    }
}

.th-product {
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s;
    text-align: center
}

.th-product .product-title {
    font-size: 20px;
    margin: 4px 0 6px 0;
    font-weight: 600
}

.th-product .product-title a {
    color: inherit
}

.th-product .product-title a:hover {
    color: var(--theme-color)
}

.th-product .product-category {
    font-size: 14px;
    color: var(--body-color);
    margin-bottom: 0px;
    display: block
}

.th-product .product-category:hover {
    color: var(--theme-color)
}

.th-product .product-tag {
    font-size: 14px;
    position: absolute;
    top: 20px;
    left: 20px;
    background-color: var(--theme-color);
    color: var(--white-color);
    padding: 0 12px;
    min-width: 60px;
    z-index: 3;
    border-radius: 99px;
    line-height: 24px
}

.th-product .woocommerce-product-rating {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px;
    margin-top: 8px;
    margin-bottom: 5px
}

.th-product .star-rating {
    margin: 0 auto 0 auto;
    width: 93px
}

.th-product .price {
    display: block;
    color: var(--theme-color);
    font-weight: 600;
    margin-bottom: -0.4em;
    font-family: var(--body-font)
}

.th-product .price del {
    margin-left: 5px;
    color: var(--body-color)
}

.th-product .product-img {
    --space: 0px;
    background-color: var(--smoke-color);
    overflow: hidden;
    position: relative;
    margin: 0 0 20px 0;
    text-align: center;
    background-color: var(--smoke-color);
    z-index: 2;
    border-radius: 10px
}

.th-product .product-img img {
    width: 100%;
    -webkit-transition: all ease 0.4s;
    transition: all ease 0.4s;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.th-product .actions {
    height: 100%;
    position: absolute;
    top: 5px;
    right: 15px;
    text-align: center;
    z-index: 3;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    display: grid;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    width: 40px
}

.th-product .actions .icon-btn {
    --btn-size: 40px;
    font-size: 14px;
    border-color: var(--white-color);
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.05);
    color: var(--title-color);
    border-radius: 99px;
    margin-bottom: 10px;
    box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.08)
}

.th-product .actions .icon-btn:hover {
    color: var(--white-color);
    border-color: var(--theme-color)
}

.th-product .actions>* {
    margin: 0 0
}

.th-product .actions>*>a {
    margin: 0
}

.th-product .icon-btn {
    -webkit-transform: translateX(30px);
    -ms-transform: translateX(30px);
    transform: translateX(30px);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.th-product .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt,
.th-product .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {
    width: 40px;
    height: 40px;
    line-height: 40px;
    display: inline-block
}

.th-product .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt::before,
.th-product .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt::before {
    position: relative;
    top: 0;
    left: 0;
    line-height: inherit;
    margin: 0;
    font-size: 24px
}

.th-product .tinv-wishlist a {
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    background-color: var(--white-color);
    color: var(--title-color);
    border-radius: 50%
}

.th-product .tinv-wishlist a:hover {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.th-product .add_to_cart_button.added {
    display: none
}

.th-product .added_to_cart {
    display: block;
    width: 40px;
    height: 40px;
    line-height: 38px;
    background-color: var(--title-color);
    color: var(--white-color);
    font-size: 0;
    text-align: center;
    border-radius: 99px;
    border: none;
    margin-bottom: 10px
}

.th-product .added_to_cart:after {
    content: "\f07a";
    position: relative;
    font-family: var(--icon-font);
    font-size: 16px;
    font-weight: 700
}

.th-product .added_to_cart:hover {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.th-product .action-btn {
    background-color: var(--white-color);
    font-size: 14px;
    font-family: var(--title-font);
    text-transform: uppercase;
    font-weight: bold;
    display: inline-block;
    padding: 13px 25px
}

.th-product:hover .product-img img {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1)
}

.th-product:hover .actions {
    margin-top: 0;
    opacity: 1;
    visibility: visible
}

.th-product:hover .icon-btn {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.th-product.list-view {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    text-align: left;
    height: 100%;
    padding: 15px;
    border: 1px solid var(--th-border-color);
    border-radius: 20px
}

.th-product.list-view .product-img {
    --space: 0px;
    width: 94px;
    margin: 0;
    border-radius: 10px;
    display: grid;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center
}

.th-product.list-view .product-img:before {
    --space: 0px
}

.th-product.list-view .product-category {
    font-size: 13px;
    line-height: 23px;
    margin-top: -3px;
    margin-bottom: 2px
}

.th-product.list-view .star-rating {
    margin: 8px 0 0 0;
    width: 80px;
    font-size: 12px
}

.th-product.list-view .star-rating span:before {
    color: var(--yellow-color)
}

.th-product.list-view .product-content {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 0 0 0 15px
}

.th-product.list-view .actions {
    --icon-gap-x: 2px;
    width: 100%;
    right: 0;
    text-align: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

.th-product.list-view .actions .icon-btn {
    --btn-size: 36px;
    --btn-font-size: 14px;
    background-color: var(--theme-color2);
    color: var(--white-color);
    border: none
}

.th-product.list-view .actions .icon-btn:hover {
    background-color: var(--title-color)
}

.th-product.list-view .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt,
.th-product.list-view .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {
    width: 35px;
    height: 35px;
    line-height: 35px
}

.th-product.list-view .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt::before,
.th-product.list-view .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt::before {
    font-size: 20px
}

.th-product.list-view .tinv-wishlist a {
    width: 35px;
    height: 35px;
    line-height: 35px
}

.th-product.list-view .added_to_cart {
    width: 35px;
    height: 35px;
    line-height: 35px
}

.th-product.list-view .added_to_cart:after {
    font-size: 16px
}

.th-product.list-view .tag {
    top: 8px;
    right: 8px;
    padding: 0px 15px
}

.th-product.list-view .product-title {
    font-size: 15px;
    font-weight: 500;
    margin: 0 0 2px 0
}

.th-product.list-view .price {
    font-weight: 600;
    font-size: 13px;
    line-height: 23px;
    color: var(--theme-color)
}

.product-list-area {
    margin-bottom: -24px
}

#productCarousel .slick-arrow {
    top: 37.5%
}

.mfp-content {
    margin: 1.5rem auto
}

.mfp-content .product-details-img {
    padding-top: 15px
}

.mfp-content .product-about {
    padding-top: 20px;
    padding-bottom: 20px
}

.mfp-content .container {
    position: relative
}

.mfp-content .product-big-img {
    margin-top: 12px;
    margin-bottom: 12px
}

.mfp-fade.mfp-bg {
    opacity: 0;
    -webkit-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out
}

.mfp-fade.mfp-bg.mfp-ready {
    opacity: 0.8
}

.mfp-fade.mfp-bg.mfp-removing {
    opacity: 0
}

.mfp-fade.mfp-wrap .mfp-content {
    opacity: 0;
    -webkit-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
    opacity: 1
}

.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
    opacity: 0
}

.woosq-popup {
    border-radius: 10px
}

.woosq-popup .product_meta>span>a:after,
.woosq-popup .product_meta>span>span:after {
    display: none
}

.woosq-product>.product .summary {
    display: grid;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center
}

.woosq-product .thumbnails .slick-list {
    display: block
}

.woosq-product .thumbnails .slick-dots li button {
    width: 12px;
    height: 12px;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    background-color: var(--theme-color);
    opacity: 0.4
}

.woosq-product .thumbnails .slick-dots li button:before {
    display: none
}

.woosq-product .thumbnails .slick-dots li.slick-active button {
    opacity: 1
}

.woosq-product .tinv-wraper {
    display: none
}

.th-sort-bar {
    padding: 10px;
    margin: 0 0 30px 0;
    background-color: var(--smoke-color);
    border-radius: 8px
}

.th-sort-bar .row {
    --bs-gutter-x: 0;
    --bs-gutter-y: 15px
}

.th-sort-bar select {
    height: 50px;
    border: 1px solid var(--th-border-color);
    background-color: var(--white-color);
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    min-width: 250px;
    font-size: 16px;
    margin: 0;
    color: var(--body-color)
}

.th-sort-bar .woocommerce-result-count {
    padding-left: 15px;
    margin-bottom: 0;
    color: var(--body-color)
}

.th-sort-bar .nav a {
    display: inline-block;
    height: 50px;
    width: 50px;
    line-height: 50px;
    border: 1px solid var(--th-border-color);
    background-color: var(--white-color);
    text-align: center;
    position: relative;
    font-family: var(--title-font);
    font-weight: 600;
    font-size: 16px;
    text-transform: capitalize;
    color: var(--body-color);
    margin: 0 0 0 10px;
    border-radius: 5px
}

.th-sort-bar .nav a.active,
.th-sort-bar .nav a:hover {
    color: var(--theme-color)
}

.product-thumb-area {
    position: relative;
    margin-right: 10px
}

.product-thumb-area .product-thumb-tab {
    position: absolute;
    top: 0;
    left: 0
}

.product-thumb-tab {
    --thumb: 120px;
    --gap: 10px;
    max-width: var(--thumb);
    margin-left: calc(0px - var(--thumb)/2);
    position: relative;
    z-index: 3;
    display: grid;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    height: 100%
}

.product-thumb-tab .tab-btn {
    background-color: var(--white-color);
    cursor: pointer;
    height: var(--thumb);
    width: var(--thumb);
    padding: var(--gap)
}

.product-thumb-tab .tab-btn img {
    max-width: 100%
}

.product-thumb-tab .tab-btn:not(:last-of-type) {
    margin-bottom: 20px
}

.product-thumb-tab .indicator {
    position: absolute;
    top: calc(var(--pos-y) + var(--gap));
    left: calc(var(--pos-x) + var(--gap));
    width: calc(var(--width-set) - var(--gap)*2);
    height: calc(var(--height-set) - var(--gap)*2);
    border: 2px solid var(--theme-color);
    pointer-events: none;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.product-big-img {
    background-color: var(--smoke-color2);
    text-align: center;
    overflow: hidden;
    border-radius: 10px
}

.product-big-img .img {
    width: 100%
}

.product-big-img .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.product-big-img .slider-pagination {
    position: absolute;
    bottom: 40px;
    left: 0
}

.product-big-img .slick-dots {
    margin: -11px 0 0 0 !important;
    -webkit-transform: translateY(-30px);
    -ms-transform: translateY(-30px);
    transform: translateY(-30px);
    --border-color: #c0c0c0
}

.img-magnifier-container {
    position: relative
}

.img-magnifier-glass {
    position: absolute;
    box-shadow: inset 0 10px 18px rgba(0, 0, 0, 0.2);
    border-radius: 50%;
    cursor: none;
    width: 200px;
    height: 200px
}

.magnify {
    position: relative;
    cursor: none
}

.magnify .magnifier {
    height: 180px;
    width: 180px;
    position: absolute;
    z-index: 20;
    box-shadow: inset 0 10px 18px rgba(0, 0, 0, 0.2);
    border-radius: 50%;
    background-size: 700%;
    background-repeat: no-repeat;
    margin-left: -90px !important;
    margin-top: -90px !important;
    pointer-events: none;
    display: none
}

.magnify .magnified {
    display: block;
    z-index: 10;
    margin: auto;
    width: 100%;
    height: 100%
}

.magnify img {
    width: 100%;
    height: 100%
}

.quantity {
    position: relative;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    vertical-align: middle
}

.quantity>.screen-reader-text {
    display: inline-block;
    font-weight: 600;
    color: var(--title-color);
    font-family: var(--title-font);
    margin: 0;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
    margin-right: 10px
}

.quantity .qty-btn,
.quantity .qty-input {
    display: inline-block;
    width: 50px;
    height: 50px;
    border: none;
    border-right: none;
    background-color: transparent;
    padding: 0;
    border-radius: 0;
    text-align: center;
    color: var(--body-color);
    font-size: 18px;
    font-weight: 600
}

.quantity .qty-btn:last-child,
.quantity .qty-input:last-child {
    border-right: none
}

.quantity .qty-btn {
    font-size: 16px
}

.product_meta {
    font-weight: 700;
    font-size: 16px;
    font-family: var(--body-font);
    margin: 35px 0 0 0
}

.product_meta>span {
    display: block;
    margin-bottom: 5px;
    color: var(--title-color);
    font-weight: bold
}

.product_meta>span:last-child {
    margin-bottom: 0
}

.product_meta>span a {
    color: inherit
}

.product_meta>span a:hover {
    color: var(--theme-color)
}

.product_meta>span>a,
.product_meta>span>span {
    position: relative;
    color: var(--body-color);
    font-weight: 400
}

.product_meta>span>a:after,
.product_meta>span>span:after {
    content: ",";
    margin-right: 5px
}

.product_meta>span>a:last-child:after,
.product_meta>span>span:last-child:after {
    display: none
}

.product_meta>span>a:first-child,
.product_meta>span>span:first-child {
    margin-left: 7px
}

.product-tab-style1 {
    border-bottom: 1px solid var(--th-border-color);
    margin: 95px auto 40px auto;
    padding-bottom: 40px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 24px
}

#productTabContent {
    margin-bottom: -10px
}

#additional_information {
    margin-bottom: 40px
}

.product-inner-list>ul {
    margin: 0;
    padding: 0;
    list-style-type: none
}

.product-inner-list li {
    position: relative;
    padding-left: 15px
}

.product-inner-list li:before {
    content: "-";
    position: absolute;
    left: 0
}

.share-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--title-color);
    margin-bottom: 8px
}

.share-title i {
    color: var(--theme-color)
}

.summary-content .product-title,
.product-about .product-title {
    font-weight: 700;
    margin: 0 0 18px 0
}

.summary-content .product_title,
.product-about .product_title {
    margin-bottom: 20px !important
}

.summary-content>.price,
.product-about>.price {
    font-family: var(--body-font);
    font-size: 20px;
    font-weight: 600;
    color: var(--title-color);
    display: block;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    margin-bottom: 19px;
    margin-top: -0.2em
}

.summary-content>.price del,
.product-about>.price del {
    color: var(--gray-color);
    margin-left: 15px
}

.summary-content .woocommerce-product-rating,
.summary-content .product-rating,
.product-about .woocommerce-product-rating,
.product-about .product-rating {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    gap: 5px;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    top: 2px;
    font-size: 16px;
    line-height: 20px;
    padding: 0 0 0 0;
    margin: 0 0 0 0;
    margin-bottom: 22px
}

.summary-content .woocommerce-product-rating .star-rating,
.summary-content .product-rating .star-rating,
.product-about .woocommerce-product-rating .star-rating,
.product-about .product-rating .star-rating {
    width: 80px;
    font-size: 12px;
    margin-right: 8px
}

.summary-content .woocommerce-review-link,
.product-about .woocommerce-review-link {
    color: var(--body-color)
}

.summary-content .checklist,
.product-about .checklist {
    margin: 29px 0 29px 0
}

.summary-content .actions,
.product-about .actions {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 15px;
    margin: 32px 0 25px 0
}

.summary-content .actions .th-btn .btn-icon,
.product-about .actions .th-btn .btn-icon {
    padding: 10.5px 15px 10.5px 15px
}

.summary-content .actions .icon-btn,
.product-about .actions .icon-btn {
    border-color: var(--theme-color2);
    background-color: var(--theme-color2);
    color: var(--white-color);
    border-radius: 6px
}

.summary-content .actions .icon-btn:hover,
.product-about .actions .icon-btn:hover {
    background-color: var(--title-color);
    border-color: var(--title-color)
}

.summary-content .share,
.product-about .share {
    margin-top: 25px
}

.summary-content .th-social a,
.product-about .th-social a {
    --icon-size: 40px;
    line-height: 38px;
    font-size: 14px;
    border: 1px solid var(--th-border-color);
    border-radius: 0
}

.summary-content .th-social a:hover,
.product-about .th-social a:hover {
    border-color: var(--theme-color)
}

.summary-content .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt,
.summary-content .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt,
.product-about .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt,
.product-about .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt {
    width: 56px;
    height: 56px;
    line-height: 54px;
    display: inline-block;
    border-radius: 6px;
    background-color: var(--theme-color);
    color: var(--white-color);
    border: none
}

.summary-content .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt::before,
.summary-content .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt::before,
.product-about .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt::before,
.product-about .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt::before {
    position: relative;
    top: 0;
    left: 0;
    line-height: inherit;
    margin: 0;
    font-size: 24px
}

.summary-content .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt:hover,
.summary-content .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt:hover,
.product-about .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart-plus.no-txt:hover,
.product-about .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt:hover {
    background-color: var(--title-color)
}

.summary-content .tinv-wishlist a,
.product-about .tinv-wishlist a {
    display: inline-block;
    width: 56px;
    height: 56px;
    line-height: 56px;
    border-radius: 6px
}

.summary-content .tinv-wishlist a:hover,
.product-about .tinv-wishlist a:hover {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.summary-content .quantity,
.product-about .quantity {
    position: relative
}

.summary-content .quantity:after,
.product-about .quantity:after {
    content: '';
    height: 100%;
    width: 1px;
    background-color: var(--th-border-color);
    position: absolute;
    top: 0;
    left: 55px
}

.summary-content .quantity .qty-input,
.product-about .quantity .qty-input {
    width: 112px;
    height: 56px;
    border: 1px solid var(--th-border-color);
    background-color: transparent;
    color: var(--title-color);
    padding: 0 21px;
    text-align: left;
    font-weight: 500;
    border-radius: 6px
}

.summary-content .quantity .qty-btn,
.product-about .quantity .qty-btn {
    color: var(--title-color);
    background-color: transparent;
    position: absolute;
    right: 21px;
    height: auto;
    width: auto;
    border: none;
    line-height: 16px
}

.summary-content .quantity .quantity-minus,
.product-about .quantity .quantity-minus {
    bottom: 7px
}

.summary-content .quantity .quantity-plus,
.product-about .quantity .quantity-plus {
    top: 12px
}

.woocommerce-Reviews .th-post-comment {
    border-radius: 20px
}

.woocommerce-Reviews .th-post-comment .text {
    margin-bottom: -0.5em
}

.woocommerce-Reviews .th-comments-wrap {
    padding: 0;
    margin-right: 0 !important;
    box-shadow: none
}

.woocommerce-Reviews .th-comment-form {
    padding: 60px;
    background-color: var(--smoke-color);
    box-shadow: none;
    margin-right: 0 !important;
    margin-top: 28px;
    margin-bottom: 40px
}

.woocommerce-Reviews .th-comment-form input,
.woocommerce-Reviews .th-comment-form .form-control {
    background-color: var(--white-color)
}

.woocommerce-Reviews .th-comment-form .blog-inner-title {
    margin-bottom: 10px
}

.woocommerce-Reviews .comment-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 0 24px;
    margin: -12px !important;
    margin-bottom: 28px !important
}

.woocommerce-Reviews .comment-list li {
    width: 50%
}

@media (max-width: 991px) {
    .woocommerce-Reviews .comment-list li {
        width: 100%
    }
}

.woocommerce-Reviews .th-post-comment {
    border: 1px solid var(--th-border-color) !important;
    padding: 40px !important;
    box-shadow: 0px 4px 30px rgba(1, 15, 28, 0.06);
    margin: 12px;
    border-radius: 10px
}

.woocommerce-Reviews .th-post-comment .name {
    margin-bottom: 3px
}

.woocommerce-Reviews .th-post-comment .commented-on {
    margin-bottom: 12px
}

@media (max-width: 1199px) {
    .woocommerce-Reviews .th-post-comment {
        padding: 30px !important
    }
}

@media (max-width: 991px) {
    .woocommerce-Reviews .comment-list {
        grid-template-columns: repeat(1, 1fr)
    }

    .woocommerce-Reviews .th-comment-form {
        padding: 40px
    }
}

@media (max-width: 575px) {
    .woocommerce-Reviews .th-comment-form {
        padding: 40px 20px
    }
}

#description {
    margin-bottom: 30px
}

.product-details .th-comments-wrap {
    margin-top: 0
}

.product-details .border-title {
    position: relative;
    padding-bottom: 20px;
    margin-bottom: 40px
}

.product-details .border-title:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 2px;
    width: 80px;
    background-color: var(--theme-color)
}

.product-inner-title {
    font-size: 32px;
    border-bottom: 1px solid var(--th-border-color);
    padding: 0 0 7px 0;
    margin: 0 0 30px 0
}

.related-product-wrapper {
    padding-top: 115px
}

@media (max-width: 1399px) {
    .th-product.list-view .product-img {
        max-width: 150px
    }
}

@media (max-width: 1299px) {
    .product-thumb-tab {
        --thumb: 100px;
        margin-left: -40px
    }

    .product-thumb-area {
        margin-right: 0
    }
}

@media (max-width: 1199px) {
    .th-sort-bar select {
        min-width: auto
    }

    .product-tab-style1 {
        margin: 55px 0 40px 0
    }

    .summary-content,
    .product-about {
        padding-left: 0
    }
}

@media (max-width: 991px) {
    .product-big-img {
        margin-bottom: 40px
    }

    .product-thumb-tab {
        margin-left: -10px
    }

    .th-product-box.list-view .product-img {
        max-width: 150px
    }

    .th-sort-bar .row {
        --bs-gutter-x: 20px
    }

    .th-sort-bar .nav a:last-child {
        margin-right: 0;
        padding-right: 0
    }

    .th-sort-bar .nav a:last-child:before {
        display: none
    }

    .woosq-product>.product .thumbnails {
        max-height: 400px;
        min-height: 200px;
        padding: 10px
    }
}

@media (max-width: 767px) {
    .th-sort-bar {
        text-align: center;
        padding: 10px 15px 15px 15px
    }

    .th-sort-bar .nav {
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .th-sort-bar select {
        margin: 0 auto
    }

    .th-sort-bar .woocommerce-result-count {
        padding-left: 0
    }

    .th-product-box.list-view .product-img {
        max-width: 130px
    }

    .th-product-box.list-view .actions {
        --btn-size: 30px;
        --btn-font-size: 10px;
        --icon-gap-x: 2px
    }
}

@media (max-width: 575px) {
    .product-about .actions {
        gap: 15px 15px
    }

    .product-thumb-tab {
        --thumb: 74px;
        --gap: 6px
    }

    .product-thumb-tab .tab-btn:not(:last-of-type) {
        margin-bottom: 10px
    }
}

@media (max-width: 375px) {
    .th-product.list-view .product-img {
        max-width: 130px
    }

    .th-product.list-view .product-content {
        padding: 0 15px
    }
}

.woocommerce-cart-form {
    text-align: center
}

.cart_table {
    border: 1px solid #eaf0f2;
    margin-bottom: 45px
}

.cart_table thead {
    background-color: #ecf0f1
}

.cart_table thead th {
    border: none !important
}

.cart_table td:before,
.cart_table th {
    font-family: var(--title-font);
    color: var(--title-color);
    font-weight: 600;
    border: none;
    padding: 27px 15px
}

.cart_table td:before {
    content: attr(data-title);
    position: absolute;
    left: 15px;
    top: 50%;
    vertical-align: top;
    padding: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    display: none
}

.cart_table td {
    border: none;
    border-bottom: 1px solid #f3f3f3;
    color: #8b8b8b;
    padding: 20px 10px;
    position: relative;
    vertical-align: middle
}

.cart_table .product-quantity {
    color: var(--title-color)
}

.cart_table .product-quantity input {
    position: relative;
    top: -2px
}

.cart_table .cart-productname {
    font-weight: 400;
    font-family: var(--body-font);
    color: var(--body-color)
}

.cart_table .cart-productimage {
    display: inline-block;
    border: 2px solid var(--smoke-color)
}

.cart_table .remove {
    color: var(--theme-color);
    font-size: 18px
}

.cart_table .quantity {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.cart_table td.product-quantity {
    min-width: 155px
}

.cart_table .qty-btn {
    border: 2px solid var(--smoke-color) !important;
    background-color: transparent;
    color: #b8c6d0;
    padding: 0;
    width: 30px;
    height: 30px;
    line-height: 28px;
    font-size: 14px;
    border-radius: 4px
}

.cart_table .qty-btn:hover {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.cart_table .qty-input {
    vertical-align: middle;
    border: 2px solid var(--smoke-color);
    width: 60px;
    height: 30px;
    font-size: 14px;
    text-align: center;
    color: var(--title-color);
    font-weight: 700;
    margin: 0 3px;
    border-radius: 4px;
    padding: 0
}

.cart_table .qty-input::-moz-placeholder {
    color: var(--title-color)
}

.cart_table .qty-input::-webkit-input-placeholder {
    color: var(--title-color)
}

.cart_table .qty-input:-ms-input-placeholder {
    color: var(--title-color)
}

.cart_table .qty-input::-ms-input-placeholder {
    color: var(--title-color)
}

.cart_table .qty-input::placeholder {
    color: var(--title-color)
}

.cart_table .qty-input::-webkit-outer-spin-button,
.cart_table .qty-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0
}

.cart_table .qty-input[type="number"] {
    -moz-appearance: textfield
}

.cart_table .actions {
    text-align: right;
    vertical-align: middle;
    padding-left: 20px
}

.cart_table .actions>.th-btn {
    font-size: 16px;
    padding: 20px 28px;
    margin-right: 15px
}

.cart_table .actions>.th-btn:last-child {
    margin-right: 0
}

.cart_table .th-cart-coupon {
    float: left;
    margin: 0;
    width: 455px;
    max-width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.cart_table .th-cart-coupon input {
    width: calc(100% - 200px);
    margin-right: 10px
}

.cart_table .th-cart-coupon .th-btn {
    font-size: 16px;
    padding: 20px 25px;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content
}

.cart_totals {
    border: 1px solid #ecf0f1
}

.cart_totals th,
.cart_totals td {
    vertical-align: top;
    padding: 20px 20px;
    border: none;
    border-bottom: 1px solid #ecf0f1;
    font-size: 14px;
    color: var(--title-color);
    width: 55%
}

.cart_totals th:first-child,
.cart_totals td:first-child {
    width: 45%;
    background-color: #f9fbfb;
    font-weight: 700;
    font-size: 14px;
    color: #333333
}

.cart_totals .shipping-calculator-button {
    display: inline-block;
    border-bottom: 1px solid;
    color: var(--title-color);
    font-weight: 700
}

.cart_totals .shipping-calculator-button:hover {
    color: var(--theme-color)
}

.cart_totals .woocommerce-shipping-destination {
    margin-bottom: 10px
}

.cart_totals .woocommerce-shipping-methods {
    margin-bottom: 0
}

.cart_totals .shipping-calculator-form {
    display: none
}

.cart_totals .shipping-calculator-form p:first-child {
    margin-top: 20px
}

.cart_totals .shipping-calculator-form p:last-child {
    margin-bottom: 0
}

.cart_totals .amount {
    font-weight: 700
}

.cart_totals .order-total .amount {
    color: var(--theme-color)
}

.empty-notice {
    margin: 40px auto
}

@media (max-width: 991px) {
    .cart_table th {
        padding: 23px 8px;
        font-size: 14px
    }

    .cart_table .cart-productname {
        font-size: 14px
    }

    .cart_table .th-cart-coupon {
        width: 100%;
        margin-bottom: 20px;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .cart_table .actions {
        text-align: center
    }

    .cart_table .cart-productimage {
        max-width: 100px
    }
}

@media (max-width: 767px) {
    .cart_table {
        text-align: left;
        min-width: auto;
        border-collapse: separate;
        border-spacing: 0 20px;
        border: none
    }

    .cart_table thead {
        display: none
    }

    .cart_table td {
        padding: 15px;
        display: block;
        width: 100%;
        padding-left: 25%;
        text-align: right;
        border: 1px solid #f3f3f3;
        border-bottom: none
    }

    .cart_table td::before {
        display: block
    }

    .cart_table td:last-child {
        border-bottom: 1px solid #f3f3f3
    }

    .cart_table td.actions {
        padding-left: 15px;
        text-align: center
    }

    .cart_table td.actions>.th-btn {
        margin-top: 10px;
        margin-right: 0;
        display: block;
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content;
        margin-left: auto;
        margin-right: auto
    }

    .cart_table td.actions>.th-btn:last-child {
        margin-right: auto
    }

    .cart_table .th-cart-coupon {
        width: 100%;
        text-align: center;
        float: none;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        display: block;
        padding-bottom: 10px
    }

    .cart_table .th-cart-coupon input {
        width: 100%;
        margin-bottom: 10px
    }

    .cart_totals th,
    .cart_totals td {
        padding: 15px 10px
    }

    .cart_totals th:first-child,
    .cart_totals td:first-child {
        width: 17%;
        line-height: 1.4
    }
}

.woocommerce-checkout .form-group,
.woocommerce-checkout .form-row {
    margin-bottom: 0
}

.woocommerce-checkout .form-select,
.woocommerce-checkout .select2-container,
.woocommerce-checkout .form-control {
    margin-bottom: 0
}

.woocommerce-checkout .select2-container--open .select2-dropdown--below {
    margin-top: 0
}

.woocommerce-checkout .select2-container--open .select2-dropdown--above {
    position: relative;
    bottom: 0
}

.woocommerce-checkout .select2-dropdown {
    border: none;
    border-top: none
}

.woocommerce-checkout .select2-container--default .select2-selection--single {
    border-radius: 27px
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered,
.woocommerce-checkout .select2-container--default .select2-selection--single .form-control:focus {
    color: var(--body-color)
}

.woocommerce-checkout .shipping_address {
    margin-top: -3px
}

.select2-container--default .select2-search--dropdown .select2-search__field {
    border: 1px solid transparent;
    padding: 0
}

.woocommerce-form-login select,
.woocommerce-form-login .form-select,
.woocommerce-form-login .form-control,
.woocommerce-form-login .select2,
.woocommerce-form-login .select2-container,
.woocommerce-form-coupon select,
.woocommerce-form-coupon .form-select,
.woocommerce-form-coupon .form-control,
.woocommerce-form-coupon .select2,
.woocommerce-form-coupon .select2-container,
.woocommerce-checkout select,
.woocommerce-checkout .form-select,
.woocommerce-checkout .form-control,
.woocommerce-checkout .select2,
.woocommerce-checkout .select2-container {
    margin-bottom: var(--bs-gutter-x)
}

#ship-to-different-address {
    margin-top: 15px;
    margin-bottom: 20px
}

.select2-container--default .select2-selection--single {
    height: 56px;
    border: 1px solid transparent;
    background-color: var(--smoke-color2);
    border-radius: 27px
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 56px;
    padding-left: 25px;
    padding-right: 25px
}

.woocommerce-billing-fields .form-row {
    margin-bottom: 0
}

.select2-container--default .select2-selection--single .select2-selection__arrow b:before {
    content: "\f107";
    font-family: var(--icon-font)
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    margin: 0;
    border: none;
    top: 0
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 56px;
    line-height: 56px;
    margin-right: 30px
}

span.select2-selection.select2-selection--single:focus {
    outline: none
}

.checkout-ordertable th,
.checkout-ordertable td {
    border: 1px solid #ededed;
    text-align: right;
    padding: 5px 20px;
    vertical-align: top;
    font-size: 14px;
    font-weight: 600;
    color: #2c3e50
}

.checkout-ordertable th {
    font-weight: 800;
    text-align: left
}

.checkout-ordertable ul {
    margin: 0;
    padding: 0
}

.checkout-ordertable .order-total .amount {
    color: var(--theme-color)
}

.checkout-ordertable input[type="hidden"]~label {
    color: var(--theme-color)
}

.woocommerce-checkout .form-group input:not(:last-child) {
    margin-bottom: var(--bs-gutter-x)
}

.woocommerce-checkout-payment {
    text-align: left
}

.woocommerce-checkout-payment ul {
    margin: 0;
    padding: 0;
    list-style-type: none
}

.woocommerce-checkout-payment ul li {
    padding-top: 12px;
    border-bottom: 1px solid #d8d8d8;
    border-radius: 0;
    font-size: 16px
}

.woocommerce-checkout-payment ul input[type="radio"]~label {
    margin-bottom: 17px;
    color: var(--body-color)
}

.woocommerce-checkout-payment ul input[type="radio"]~label img {
    margin-bottom: -2px;
    margin-left: 10px
}

.woocommerce-checkout-payment .place-order {
    padding-top: 30px
}

.woocommerce-checkout-payment .payment_box {
    color: #a1b1bc;
    background-color: #ecf0f1;
    border: 1px solid #d8d8d8;
    border-bottom: none;
    font-size: 14px;
    padding: 10px 20px;
    border-radius: 4px;
    display: none
}

.woocommerce-checkout-payment .payment_box p {
    margin: 0
}

.th-checkout-wrapper form.woocommerce-form {
    margin-bottom: 30px
}

@media (max-width: 767px) {
    tfoot.checkout-ordertable th {
        display: none
    }

    .woocommerce-checkout-payment ul input[type="radio"]~label img {
        max-width: 150px
    }

    .checkout-ordertable th,
    .checkout-ordertable td {
        padding: 5px 20px 5px 78px
    }
}

.tinv-wishlist input[type="checkbox"] {
    display: inline-block;
    opacity: 1;
    visibility: visible;
    vertical-align: middle;
    width: auto;
    height: auto
}

.tinv-wishlist .tinv-header {
    margin-top: -0.8rem;
    text-transform: capitalize
}

.tinv-wishlist .cart-empty {
    padding: 14px 25px;
    font-weight: 700;
    font-size: 14px;
    padding-left: 45px;
    border-radius: 8px
}

.tinv-wishlist p.return-to-shop .button {
    display: inline-block;
    background-color: var(--theme-color);
    color: #fff;
    font-size: 14px;
    padding: 10px 25px;
    margin-top: 10px;
    font-weight: 700
}

.tinv-wishlist p.return-to-shop .button:hover {
    background-color: var(--title-color);
    color: var(--white-color)
}

.tinv-wishlist table {
    border: none
}

.tinv-wishlist table th {
    color: var(--title-color)
}

.tinv-wishlist table td,
.tinv-wishlist table th {
    padding: 15.3px 10px;
    border-bottom: 1px solid var(--th-border-color);
    text-align: center
}

.tinv-wishlist table thead {
    background-color: var(--smoke-color)
}

.tinv-wishlist .product-cb,
.tinv-wishlist .product-remove {
    width: 40px;
    text-align: center
}

.tinv-wishlist .product-thumbnail {
    width: 110px
}

.tinv-wishlist .stock.in-stock {
    margin-bottom: 0
}

.tinv-wishlist ins {
    text-decoration: none
}

.tinv-wishlist .product-remove button {
    border: none;
    height: 22px;
    width: 22px;
    text-align: center;
    font-size: 12px;
    line-height: 22px;
    border-radius: 0;
    padding-top: 0
}

.tinv-wishlist .product-remove button i {
    line-height: 22px;
    font-size: 16px
}

.tinv-wishlist .tinvwl-mobile {
    display: none
}

.tinv-wishlist .social-buttons {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    max-width: 295px;
    margin-left: auto;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.tinv-wishlist .social-buttons ul {
    padding-left: 0;
    margin-bottom: 0;
    margin-left: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 6px
}

.tinv-wishlist table.tinvwl-table-manage-list {
    font-size: 16px
}

.tinv-wishlist .product-stock .stock {
    display: block
}

.tinv-wishlist .product-stock span {
    display: inline
}

.tinv-wishlist .product-stock i {
    margin-right: 5px
}

.tinv-wishlist .tinv-modal .icon_big_times {
    margin-bottom: 5px;
    color: var(--theme-color)
}

.tinv-wishlist button.button {
    border: none;
    height: 38px;
    line-height: 38px;
    font-size: 14px;
    font-weight: 600;
    background-color: var(--theme-color);
    color: #fff;
    padding: 1px 15px;
    min-width: 140px
}

@media (max-width: 1199px) {
    .tinv-wishlist button.button {
        padding: 1px 8px
    }
}

.tinv-wishlist button.button i {
    font-size: 18px !important;
    margin-right: 3px !important
}

.tinv-wishlist button.button:hover {
    background-color: var(--title-color);
    color: #fff
}

.tinv-wishlist .tinvwl-buttons-group button i {
    font-size: 14px
}

.tinv-wishlist th,
.tinv-wishlist td.product-name {
    font-size: 16px;
    font-weight: 600;
    font-family: var(--title-font)
}

.tinv-wishlist td.product-name a {
    color: var(--body-color)
}

.tinv-wishlist td.product-name a:hover {
    color: var(--theme-color)
}

.tinv-wishlist td.product-price del {
    margin-left: 8px;
    font-size: 0.9em
}

.tinv-wishlist .social-buttons>span {
    font-weight: 700;
    margin-right: 10px;
    font-family: var(--title-font);
    color: var(--title-color)
}

.tinv-wishlist .social-buttons li {
    display: inline-block;
    margin-right: 0
}

.tinv-wishlist .social-buttons li a.social {
    background-color: var(--theme-color);
    color: #fff;
    width: 30px;
    height: 30px;
    line-height: 30px;
    font-size: 14px;
    display: inline-block;
    text-align: center;
    border-radius: 50px;
    margin-left: 3px
}

.tinv-wishlist .social-buttons li a.social:first-child {
    margin-left: 0
}

.tinv-wishlist .social-buttons li a.social i {
    line-height: inherit
}

.tinv-wishlist .social-buttons li a.social:hover {
    background-color: var(--title-color);
    color: var(--white-color)
}

@media (max-width: 991px) {
    .tinvwl-full {
        display: none
    }

    .tinv-wishlist .tinvwl-mobile {
        display: block
    }

    .tinvwl-txt {
        display: inline-block !important
    }

    .product-stock {
        width: 40px;
        text-align: center
    }
}

@media (max-width: 767px) {
    .tinv-wishlist table {
        table-layout: fixed;
        border-bottom: 1px solid var(--th-border-color)
    }

    .tinv-wishlist table.tinvwl-table-manage-list tbody td.product-remove,
    .tinv-wishlist table.tinvwl-table-manage-list thead th:not(.product-name) {
        display: none
    }

    .tinv-wishlist table td,
    .tinv-wishlist table th {
        border: 1px solid var(--th-border-color)
    }

    .tinv-wishlist table.tinvwl-table-manage-list tbody td {
        display: block;
        width: 100% !important;
        text-align: center
    }

    .product-name {
        text-align: center
    }

    .tinv-wishlist table td,
    .tinv-wishlist table th {
        border-bottom: none
    }

    .tinv-wishlist table tfoot {
        border-bottom: 1px solid var(--th-border-color)
    }

    .tinv-wishlist .social-buttons {
        max-width: 100%;
        margin-left: unset;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .tinv-wishlist .social-buttons ul {
        margin-left: unset;
        margin-top: 5px
    }

    .tinvwl-txt {
        display: inline-block !important
    }
}

.contact-sec1 {
    position: relative;
    border-radius: 10px;
    padding: 60px;
    margin-top: -190px;
    z-index: 3;
    background-color: var(--title-color)
}

@media (max-width: 767px) {
    .contact-sec1 {
        padding: 30px
    }
}

@media (max-width: 375px) {
    .contact-sec1 {
        padding: 20px
    }
}

.contact-form1 {
    background-color: var(--white-color);
    border: 2px solid var(--theme-color);
    border-radius: 10px;
    margin-bottom: -180px
}

@media (max-width: 1199px) {
    .contact-form1 {
        margin-bottom: 0
    }
}

.contact-form1 .row {
    --bs-gutter-x: 20px
}

.contact-form1 .form-title {
    background-color: var(--theme-color);
    color: var(--white-color);
    text-align: center;
    padding: 12px;
    border-radius: 6px 6px 0 0;
    margin: 0
}

.contact-form1 .input-wrap {
    padding: 40px
}

@media (max-width: 575px) {
    .contact-form1 .input-wrap {
        padding: 20px
    }
}

.contact-form1 .form-group>i {
    background-color: var(--white-color);
    color: var(--theme-color)
}

.contact-form1 .form-control,
.contact-form1 .form-select {
    background-color: var(--white-color);
    border: 1px solid var(--th-border-color)
}

.location-card {
    background-color: var(--white-color);
    box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.06);
    border-radius: 30px;
    padding: 30px 40px;
    margin-bottom: 10px;
    position: relative
}

@media (max-width: 375px) {
    .location-card {
        padding: 30px 20px
    }
}

.location-card:after {
    content: '';
    position: absolute;
    top: 0;
    left: 30px;
    height: 4px;
    width: calc(100% - 60px);
    background-image: -webkit-radial-gradient(50% 50%, 50% 50%, var(--theme-color) 56.77%, rgba(4, 206, 120, 0) 100%);
    background-image: radial-gradient(50% 50% at 50% 50%, var(--theme-color) 56.77%, rgba(4, 206, 120, 0) 100%)
}

.location-card .box-title {
    border-bottom: 1px solid var(--th-border-color);
    text-align: center;
    padding-bottom: 22px;
    margin-bottom: 24px
}

.location-card .footer-info {
    margin-bottom: 12px
}

.location-card .footer-info:last-of-type {
    margin-bottom: 0
}

.location-card.active:after {
    background-image: -webkit-radial-gradient(50% 50%, 50% 50%, var(--theme-color2) 56.77%, rgba(4, 206, 120, 0) 100%);
    background-image: radial-gradient(50% 50% at 50% 50%, var(--theme-color2) 56.77%, rgba(4, 206, 120, 0) 100%)
}

.contact-feature {
    background-color: var(--white-color);
    padding: 20px 10px 20px 20px;
    box-shadow: 0px 10px 50px rgba(0, 0, 0, 0.08);
    border-radius: 10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 15px
}

.contact-feature .box-icon {
    width: 70px;
    height: 70px;
    line-height: 70px;
    font-size: 40px;
    color: var(--white-color);
    background-color: var(--theme-color);
    border-radius: 8px;
    text-align: center
}

.contact-feature .box-title {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 4px
}

@media (max-width: 1199px) {
    .contact-feature .box-title {
        font-size: 22px
    }
}

.contact-feature .box-text {
    line-height: 24px;
    max-width: 240px
}

.contact-feature .box-text a {
    display: block;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    color: inherit
}

.contact-feature .box-text a:hover {
    color: var(--theme-color)
}

.contact-feature .th-social a {
    --icon-size: 40px;
    border-radius: 10px
}

.contact-feature .th-social a:not(:hover) {
    color: var(--title-color)
}

@media (max-width: 1299px) {
    .contact-feature .th-social a:not(:last-child) {
        margin-right: 3px
    }
}

.contact-form {
    border-radius: 10px;
    overflow: hidden;
    padding: 60px;
    z-index: 2
}

.contact-form:before {
    z-index: -1
}

.contact-form .form-title {
    margin-top: -0.26em;
    margin-bottom: 25px;
    color: var(--white-color);
    text-align: center
}

.contact-form .row {
    --bs-gutter-x: 20px
}

.contact-form .form-group>i {
    color: var(--theme-color)
}

.contact-form .th-btn {
    margin-top: 10px;
    background-color: var(--white-color);
    color: var(--theme-color)
}

.contact-form .th-btn:hover {
    background-color: var(--title-color)
}

@media (max-width: 991px) {
    .contact-form {
        padding: 40px
    }
}

@media (max-width: 575px) {
    .contact-form {
        padding: 40px 20px
    }
}

.contact-form-img {
    text-align: right
}

@media (max-width: 1199px) {
    .contact-form-img {
        text-align: center;
        margin-top: 40px
    }
}

.form-text {
    font-size: 16px
}

.contact-map {
    line-height: 0px;
    width: 1005
}

.contact-map iframe {
    width: 100%;
    height: 680px
}

@media (max-width: 1199px) {
    .contact-map iframe {
        height: 400px
    }
}

@media (max-width: 991px) {
    .contact-map iframe {
        height: 350px
    }
}

.img-box1 {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    gap: 30px;
    margin-right: 50px;
    position: relative
}

@media (max-width: 575px) {
    .img-box1 {
        gap: 8px
    }
}

@media (max-width: 1299px) {
    .img-box1 {
        margin-right: 0
    }
}

.img-box1 .box-shape {
    top: -80px;
    left: -80px;
    position: absolute
}

.img-box1 .img1 {
    padding: 15px 0 15px 12px;
    border: 2px dashed var(--theme-color);
    border-radius: 10px;
    position: relative
}

.img-box1 .img1:before {
    content: '';
    height: 140px;
    width: 240px;
    max-width: 90%;
    position: absolute;
    bottom: -2px;
    left: -2px;
    background-color: var(--theme-color);
    border-radius: 0 0 0 10px
}

.img-box1 .img1 img {
    border-radius: 10px;
    -webkit-transform: translateX(2px);
    -ms-transform: translateX(2px);
    transform: translateX(2px);
    height: 100%;
    object-fit: cover
}

.img-box1 .img2 {
    margin-top: 30px
}

@media (max-width: 575px) {
    .img-box1 .img2 {
        margin-top: 8px
    }
}

.img-box1 .img2 img {
    border-radius: 10px
}

.feature-circle {
    background-color: var(--white-color);
    text-align: center;
    padding: 35px 8px;
    border: 2px dashed var(--theme-color);
    border-radius: 10px
}

.feature-circle .box-title {
    font-size: 20px;
    margin: 5px 0 -0.3em 0
}

.feature-circle .circle {
    position: relative
}

.feature-circle .circle-num {
    color: var(--title-color);
    font-size: 30px;
    font-weight: bold;
    font-family: var(--title-font);
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.about-feature {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 15px;
    text-align: left
}

.about-feature-wrap {
    display: inline-grid;
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 40px
}

@media (max-width: 575px) {
    .about-feature-wrap {
        grid-template-columns: auto;
        gap: 25px
    }
}

.about-feature .box-icon {
    width: 60px;
    height: 60px;
    line-height: 60px;
    text-align: center;
    background-color: var(--smoke-color2);
    border-radius: 8px
}

.about-feature .box-title {
    font-size: 18px;
    margin-bottom: 5px
}

.about-signature {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px
}

.about-signature .box-img {
    border-radius: 6px;
    overflow: hidden
}

.btn-group .about-signature {
    margin-left: 10px
}

@media (max-width: 767px) {
    .btn-group .about-signature {
        margin-left: 0
    }
}

.img-box3 {
    position: relative;
    z-index: 2
}

.img-box3 .img1 img {
    border-radius: 10px
}

.img-box3 .img2 {
    position: absolute;
    right: 0;
    bottom: 0;
    background-color: var(--smoke-color2);
    border-radius: 10px;
    padding: 6px;
    max-width: 60%
}

.img-box3 .img2 img {
    border-radius: 8px
}

.img-box3 .shape1 {
    position: absolute;
    right: 0;
    top: 35px;
    z-index: -1;
    -webkit-animation: jumpAni 7s linear infinite;
    animation: jumpAni 7s linear infinite
}

.img-box3 .shape1 img {
    max-width: -webkit-max-content;
    max-width: -moz-max-content;
    max-width: max-content
}

@media (max-width: 1199px) {
    .img-box3 {
        max-width: 600px;
        margin-left: auto;
        margin-right: auto
    }
}

.year-box {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    gap: 10px;
    margin-top: 10px;
    text-align: left;
    position: relative;
    z-index: 3;
    background-color: var(--white-color);
    padding: 6px 10px 0 0;
    border-radius: 10px
}

.year-box .box-number {
    font-size: 64px;
    color: var(--theme-color);
    font-weight: 700;
    line-height: 1
}

.year-box .box-title {
    font-size: 20px;
    margin: 0
}

.th-team {
    position: relative
}

.th-team .box-img {
    position: relative;
    overflow: hidden
}

.th-team .box-img img {
    width: 100%;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.th-team .box-desig {
    font-size: 14px;
    display: block;
    margin-bottom: -0.5em
}

.th-team .th-social {
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.th-team .th-social a {
    --icon-size: 40px;
    background-color: var(--white-color);
    color: var(--theme-color);
    border: 1px solid var(--theme-color)
}

.th-team .th-social a:hover {
    background-color: var(--theme-color);
    color: var(--white-color)
}

.th-team .box-title {
    margin-bottom: 2px
}

.team-card {
    position: relative;
    overflow: hidden
}

.team-card .box-img {
    border-radius: 10px
}

.team-card .box-img:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    height: 0;
    width: 100%;
    border-radius: inherit;
    background-color: var(--title-color);
    opacity: 0;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.team-card .box-content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 30px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 3
}

.team-card .box-content:before {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    height: 100%;
    width: calc(100% - 100px);
    background-color: var(--smoke-color2);
    border-radius: 0 0 0 10px;
    z-index: -1;
    -webkit-clip-path: polygon(0 0, calc(100% - 35px) 0%, 100% 100%, 0% 100%);
    clip-path: polygon(0 0, calc(100% - 35px) 0%, 100% 100%, 0% 100%)
}

.team-card .icon-btn {
    --btn-size: 40px;
    border: none;
    background-color: var(--theme-color);
    color: var(--white-color)
}

.team-card .icon-btn i {
    -webkit-transition: -webkit-transform 0.3s ease-in-out;
    transition: -webkit-transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out
}

.team-card .box-title {
    font-size: 20px
}

.team-card .box-desig {
    color: var(--theme-color)
}

.team-card .th-social {
    position: absolute;
    bottom: 0;
    right: 30px;
    width: 40px;
    visibility: hidden;
    opacity: 0
}

.team-card .th-social a {
    margin-bottom: 8px
}

.team-card:hover .box-img img {
    -webkit-transform: scale(1.06);
    -ms-transform: scale(1.06);
    transform: scale(1.06)
}

.team-card:hover .box-img:after {
    height: 100%;
    opacity: 0.8
}

.team-card:hover .th-social {
    visibility: visible;
    opacity: 1;
    bottom: 72px
}

.team-card:hover .icon-btn i {
    -webkit-transform: rotate(45deg) translate(-1px, -1px);
    -ms-transform: rotate(45deg) translate(-1px, -1px);
    transform: rotate(45deg) translate(-1px, -1px)
}

@media (max-width: 767px) {
    .team-card {
        max-width: 440px;
        margin-left: auto;
        margin-right: auto
    }
}

@media (max-width: 360px) {
    .team-card .box-content {
        padding: 20px
    }

    .team-card .box-content:before {
        width: calc(100% - 75px)
    }

    .team-card .th-social {
        right: 20px
    }

    .team-card:hover .th-social {
        bottom: 62px
    }
}

.team-counter {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 25px;
    padding: 30px 0;
    border-bottom: 1px solid var(--th-border-color);
    margin-bottom: 40px
}

.team-counter .box-number {
    font-size: 50px;
    font-weight: 700;
    font-family: var(--title-font);
    color: var(--title-color);
    margin-bottom: 0
}

.team-counter .counter-text {
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 0
}

.team-details {
    margin-left: 20px
}

@media (max-width: 1299px) {
    .team-details {
        margin-left: 0px
    }
}

.team-details-img {
    margin-right: 30px
}

@media (max-width: 1299px) {
    .team-details-img {
        margin-right: 0
    }
}

.team-details-img img {
    border-radius: 10px
}

.team-details .box-desig {
    color: var(--theme-color);
    font-weight: 500;
    margin-bottom: 25px
}

.team-details .team-info {
    margin-bottom: 4px
}

.team-details .team-info i {
    color: var(--theme-color);
    margin-right: 5px
}

.team-details .team-info a {
    color: var(--title-color);
    font-weight: 600
}

.team-details .team-info a:hover {
    color: var(--theme-color)
}

.team-details .th-social {
    margin-top: 34px
}

.team-details .th-social a {
    background-color: var(--th-border-color)
}

.team-details .th-social a:hover {
    background-color: var(--theme-color)
}

.skill-feature {
    text-align: left
}

.skill-feature:not(:last-child) {
    margin-bottom: 30px
}

.skill-feature_title,
.skill-feature .progress-value {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 10px;
    margin-top: -0.3em;
    font-family: var(--title-font);
    color: var(--title-color)
}

.skill-feature .progress {
    position: relative;
    height: 3px;
    background-color: var(--th-border-color);
    overflow: visible;
    border-radius: 0
}

.skill-feature .progress-bar {
    background-color: var(--theme-color);
    height: 5px;
    margin: -1px 0;
    border-radius: inherit;
    overflow: visible;
    position: relative
}

.skill-feature .progress-value {
    position: absolute;
    top: -30px;
    right: 0px
}

.team-contact-form {
    background-color: var(--smoke-color);
    border-radius: 10px;
    padding: 60px
}

.team-contact-form .form-title {
    margin-top: -0.16em;
    margin-bottom: 25px;
    text-align: center
}

.team-contact-form .form-group>i {
    color: var(--theme-color)
}

@media (max-width: 1199px) {
    .team-contact-form {
        padding: 40px
    }
}

@media (max-width: 575px) {
    .team-contact-form {
        padding: 40px 20px
    }
}

.testi-card {
    background-color: var(--white-color);
    box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.04);
    border-radius: 20px;
    position: relative;
    padding: 40px 30px 40px 40px
}

@media (max-width: 575px) {
    .testi-card {
        padding: 30px 20px 30px 30px;
        borr: 15px
    }
}

.testi-card.bg-smoke {
    box-shadow: none
}

.testi-card .box-profile {
    margin-top: 35px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    z-index: 3;
    gap: 15px
}

.testi-card .box-img {
    width: 56px;
    min-width: 56px;
    border-radius: 99px
}

.testi-card .box-img img {
    border-radius: inherit
}

.testi-card .box-title {
    font-size: 20px;
    font-weight: 600;
    margin: 0 0 3px 0
}

.testi-card .box-desig {
    font-size: 14px;
    margin-bottom: 0;
    display: block
}

.testi-card .box-quote {
    position: absolute;
    bottom: 40px;
    right: 40px
}

@media (max-width: 575px) {
    .testi-card .box-quote {
        right: 30px;
        bottom: 30px
    }
}

.testi-card .box-review {
    color: var(--yellow-color);
    margin-bottom: 20px
}

.testi-card .box-review i {
    margin-right: 5px
}

.testi-card .box-review i:last-child {
    margin-right: 0px
}

.box-profile {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px
}

.box-profile .box-img img {
    border-radius: 6px
}

.testi-box-area {
    background-color: var(--white-color);
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.06);
    border-radius: 10px;
    position: relative;
    z-index: 3
}

.testi-box-img {
    position: relative;
    height: 100%
}

@media (max-width: 991px) {
    .testi-box-img {
        max-height: 450px
    }
}

.testi-box-img * {
    height: 100%
}

.testi-box-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px
}

.testi-box-slide {
    padding: 60px;
    position: relative
}

@media (max-width: 1199px) {
    .testi-box-slide {
        padding: 40px
    }
}

@media (max-width: 375px) {
    .testi-box-slide {
        padding: 40px 20px
    }
}

.testi-box-slide .icon-box {
    position: absolute;
    bottom: 60px;
    right: 80px;
    gap: 0
}

@media (max-width: 1199px) {
    .testi-box-slide .icon-box {
        bottom: 40px;
        right: 40px
    }
}

@media (max-width: 575px) {
    .testi-box-slide .icon-box {
        display: none
    }
}

.testi-box .box-title {
    margin-bottom: 5px
}

.testi-box .box-desig {
    display: block;
    margin-bottom: -0.5em
}

.testi-box .box-text {
    margin-top: -0.5em;
    margin-bottom: 40px;
    font-style: italic
}

.testi-box .box-img {
    width: 80px
}

.testi-box .box-review {
    margin: 0 0 27px 0;
    color: var(--yellow-color)
}

.testi-box .box-review i {
    margin: 0 2px
}

.testi-grid-img {
    height: 100%
}

.testi-grid-img * {
    height: 100%
}

.testi-grid-img img {
    height: 100%;
    width: 100%;
    border-radius: 10px;
    object-fit: cover
}

.testi-grid-slide {
    position: relative;
    padding-left: 50px
}

@media (max-width: 1299px) {
    .testi-grid-slide {
        padding-left: 10px
    }
}

@media (max-width: 991px) {
    .testi-grid-slide {
        padding-left: 0;
        padding-top: 40px
    }
}

.testi-grid-slide .icon-box {
    margin-top: 50px
}

.testi-grid-quote {
    position: absolute;
    right: 0;
    bottom: -12%;
    font-size: 300px;
    color: #E4EFF8
}

@media (max-width: 1299px) {
    .testi-grid-quote {
        bottom: 0
    }
}

@media (max-width: 575px) {
    .testi-grid-quote {
        font-size: 200px
    }
}

.testi-grid-quote i {
    line-height: 0.63
}

.testi-grid .box-title {
    margin-bottom: 5px
}

.testi-grid .box-desig {
    display: block;
    margin-bottom: -0.5em
}

.testi-grid .box-text {
    margin-top: -0.5em;
    margin-bottom: 40px;
    font-style: italic
}

.testi-grid .box-img {
    width: 80px
}

.testi-grid .box-review {
    margin: 0 0 27px 0;
    color: var(--yellow-color)
}

.testi-grid .box-review i {
    margin: 0 2px
}

.counter-card {
    text-align: center
}

.counter-card-wrap {
    --th-border-color: rgba(255, 255, 255, 0.3);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 80px 0
}

.counter-card-wrap .divider {
    width: 1px;
    height: 175px;
    background-color: var(--th-border-color)
}

.counter-card-wrap .divider:last-of-type {
    display: none
}

.counter-card .box-icon {
    width: 92px;
    height: 92px;
    line-height: 92px;
    background-image: url('data:image/svg+xml,<svg width="93" height="94" viewBox="0 0 93 94" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M47.4858 2.35636C55.7133 4.1267 60.1559 12.7468 67.3926 17.0442C75.016 21.5713 87.0571 20.2067 90.9568 28.1713C94.8361 36.0941 86.759 44.7719 85.2223 53.459C83.7528 61.7668 86.6672 70.9505 82.1316 78.0633C77.3922 85.4958 69.1939 91.0143 60.4716 92.2735C52.0774 93.4854 45.0328 86.4302 36.7479 84.6152C27.5711 82.6048 16.5573 87.1208 9.36342 81.077C2.16678 75.0308 0.456568 64.0744 1.13757 54.6977C1.76262 46.0914 9.5601 40.1868 12.9106 32.2354C16.4065 23.9391 14.3822 12.9887 21.1928 7.10316C28.0716 1.15866 38.5991 0.444151 47.4858 2.35636Z" stroke="%23068FFF" stroke-width="2" stroke-dasharray="8 8"/></svg>');
    margin: 0 auto 20px auto;
    background-size: 100% 100%;
    position: relative;
    z-index: 2
}

.counter-card .box-icon:before {
    content: '';
    position: absolute;
    inset: 7px;
    background-color: var(--white-color);
    -webkit-clip-path: path("M39.3256 1.5968C46.2161 3.07946 49.9368 10.2988 55.9975 13.8979C62.3821 17.6893 72.4666 16.5465 75.7326 23.2168C78.9814 29.8521 72.2169 37.1198 70.93 44.3953C69.6992 51.353 72.14 59.0444 68.3415 65.0014C64.3722 71.226 57.5061 75.8478 50.2012 76.9024C43.171 77.9173 37.2712 72.0087 30.3326 70.4886C22.647 68.8049 13.4229 72.587 7.3981 67.5253C1.37092 62.4617 -0.0613862 53.2856 0.508951 45.4327C1.03243 38.2249 7.56282 33.2798 10.3689 26.6205C13.2967 19.6724 11.6013 10.5014 17.3052 5.57224C23.0662 0.59372 31.8829 -0.00467747 39.3256 1.5968Z");
    clip-path: path("M39.3256 1.5968C46.2161 3.07946 49.9368 10.2988 55.9975 13.8979C62.3821 17.6893 72.4666 16.5465 75.7326 23.2168C78.9814 29.8521 72.2169 37.1198 70.93 44.3953C69.6992 51.353 72.14 59.0444 68.3415 65.0014C64.3722 71.226 57.5061 75.8478 50.2012 76.9024C43.171 77.9173 37.2712 72.0087 30.3326 70.4886C22.647 68.8049 13.4229 72.587 7.3981 67.5253C1.37092 62.4617 -0.0613862 53.2856 0.508951 45.4327C1.03243 38.2249 7.56282 33.2798 10.3689 26.6205C13.2967 19.6724 11.6013 10.5014 17.3052 5.57224C23.0662 0.59372 31.8829 -0.00467747 39.3256 1.5968Z");
    z-index: -1;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.counter-card .box-icon img {
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.counter-card .box-number {
    font-size: 40px;
    color: var(--theme-color);
    font-weight: 700;
    margin-bottom: 0px;
    margin-top: -0.18em
}

@media (max-width: 1199px) {
    .counter-card .box-number {
        font-size: 36px
    }
}

.counter-card .box-text {
    font-size: 20px;
    color: var(--white-color);
    font-weight: 500
}

@media (max-width: 1199px) {
    .counter-card .box-text {
        font-size: 18px
    }
}

@media (max-width: 991px) {
    .counter-card .box-text {
        font-size: 15px
    }
}

.counter-card:hover .box-icon:before {
    -webkit-transform: rotate(-98deg);
    -ms-transform: rotate(-98deg);
    transform: rotate(-98deg)
}

.counter-card:hover .box-icon img {
    -webkit-transform: rotateY(180deg);
    transform: rotateY(180deg)
}

@media (max-width: 767px) {
    .counter-card {
        -webkit-box-flex: 50%;
        -webkit-flex: 50%;
        -ms-flex: 50%;
        flex: 50%;
        padding-left: 10px;
        padding-right: 10px
    }

    .counter-card-wrap {
        text-align: center;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        position: relative
    }

    .counter-card-wrap .divider {
        display: none
    }

    .counter-card-wrap:after {
        content: '';
        height: 100%;
        width: 1px;
        position: absolute;
        top: 0;
        left: 50%;
        background-color: var(--th-border-color)
    }

    .counter-card:nth-child(1),
    .counter-card:nth-child(3) {
        padding-bottom: 30px;
        border-bottom: 1px solid var(--th-border-color);
        margin-bottom: 30px
    }
}

.blog-card {
    border-radius: 10px;
    box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.06);
    background-color: var(--white-color)
}

.blog-card .blog-content {
    padding: 30px;
    position: relative;
    z-index: 3
}

.blog-card .box-title {
    margin-bottom: 12px;
    font-weight: 600
}

.blog-card .box-title a {
    background-image: -webkit-linear-gradient(right, var(--theme-color), var(--theme-color));
    background-image: linear-gradient(to left, var(--theme-color), var(--theme-color));
    background-repeat: no-repeat;
    background-position: bottom left;
    background-size: 0 2px;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out
}

.blog-card .box-title a:hover {
    background-size: 100% 2px
}

.blog-card .blog-img {
    position: relative
}

.blog-card .blog-img:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0;
    background: -webkit-linear-gradient(top, rgba(0, 21, 36, 0) .52%, #001524 100%);
    background: linear-gradient(180deg, rgba(0, 21, 36, 0) .52%, #001524 100%);
    border-radius: 10px;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    opacity: 0.8
}

.blog-card .blog-img img {
    width: 100%;
    border-radius: 10px
}

.blog-card .blog-meta {
    margin: -0.4em 0 23px 0
}

.blog-card .blog-meta span>i,
.blog-card .blog-meta a>i {
    color: var(--theme-color)
}

.blog-card .blog-date {
    background-color: var(--theme-color);
    color: var(--white-color);
    position: absolute;
    right: 30px;
    bottom: -35px;
    border-radius: 6px;
    overflow: hidden;
    z-index: 3
}

.blog-card .blog-date span {
    width: 65px;
    line-height: 35px;
    font-size: 18px;
    font-weight: 500;
    display: block;
    text-align: center
}

.blog-card .blog-date span:first-child {
    background-color: var(--white-color);
    color: var(--theme-color);
    font-weight: 600
}

.blog-card:hover .blog-img:after {
    height: 100%
}

@media (max-width: 1299px) {
    .blog-card .blog-img {
        margin-bottom: 15px
    }

    .blog-card .box-title {
        font-size: 22px
    }

    .blog-card .blog-content {
        padding: 20px
    }

    .blog-card .blog-date {
        right: 20px
    }
}

@media (max-width: 1199px) {
    .blog-card .blog-img {
        margin-bottom: 0
    }

    .blog-card .blog-content {
        padding: 30px
    }
}

@media (max-width: 991px) {
    .blog-card .blog-img {
        margin-bottom: 15px
    }

    .blog-card .box-title {
        font-size: 20px
    }

    .blog-card .blog-content {
        padding: 20px
    }
}

@media (max-width: 767px) {
    .blog-card .blog-img {
        margin-bottom: 0
    }

    .blog-card .blog-content {
        padding: 30px
    }

    .blog-card .box-title {
        font-size: 24px
    }
}

@media (max-width: 575px) {
    .blog-card .box-title {
        font-size: 22px
    }
}

@media (max-width: 350px) {
    .blog-card .blog-img {
        margin-bottom: 15px
    }

    .blog-card .blog-content {
        padding: 18px
    }

    .blog-card .box-title {
        font-size: 20px
    }
}

.blog-box {
    position: relative;
    border-radius: 10px
}

.blog-box .blog-img {
    border-radius: 10px;
    overflow: hidden;
    position: relative
}

.blog-box .blog-img:after {
    content: '';
    position: absolute;
    inset: 0;
    background: -webkit-linear-gradient(269.05deg, rgba(0, 21, 36, 0) 34.01%, rgba(0, 21, 36, 0) 34.01%, rgba(0, 21, 36, 0.72) 64.46%, #001524 99.21%);
    background: linear-gradient(180.95deg, rgba(0, 21, 36, 0) 34.01%, rgba(0, 21, 36, 0) 34.01%, rgba(0, 21, 36, 0.72) 64.46%, #001524 99.21%);
    border-radius: inherit
}

.blog-box .blog-img img {
    width: 100%;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.blog-box .box-title {
    font-size: 22px;
    color: var(--white-color);
    margin-bottom: 20px;
    font-weight: 600
}

.blog-box .box-title a {
    background-image: -webkit-linear-gradient(right, var(--theme-color), var(--theme-color));
    background-image: linear-gradient(to left, var(--theme-color), var(--theme-color));
    background-repeat: no-repeat;
    background-position: bottom left;
    background-size: 0 2px;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out
}

.blog-box .box-title a:hover {
    background-size: 100% 2px
}

.blog-box .blog-meta {
    margin: -0.3em 0 18px 0
}

.blog-box .blog-meta span,
.blog-box .blog-meta a {
    color: var(--white-color)
}

.blog-box .blog-meta span:hover,
.blog-box .blog-meta a:hover {
    color: var(--theme-color)
}

.blog-box .blog-meta span>i,
.blog-box .blog-meta a>i {
    color: var(--theme-color)
}

.blog-box .blog-content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 3;
    padding: 30px 30px 23px 30px
}

.blog-box .category {
    color: var(--white-color)
}

.blog-box .category:hover {
    color: var(--theme-color)
}

.blog-box .box-btn {
    color: var(--white-color);
    font-size: 20px
}

.blog-box .box-btn:hover {
    color: var(--theme-color);
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

.blog-box .box-bottom {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    padding-top: 23px
}

.blog-box:hover .blog-img img {
    -webkit-transform: scale(1.08);
    -ms-transform: scale(1.08);
    transform: scale(1.08)
}

@media (max-width: 1299px) {
    .blog-box .blog-content {
        padding: 20px
    }
}

@media (max-width: 1199px) {
    .blog-box .blog-content {
        padding: 30px
    }
}

@media (max-width: 991px) {
    .blog-box .blog-content {
        padding: 20px
    }

    .blog-box .box-title {
        font-size: 20px
    }
}

@media (max-width: 767px) {
    .blog-box .blog-content {
        padding: 30px
    }

    .blog-box .box-title {
        font-size: 24px
    }
}

@media (max-width: 575px) {
    .blog-box .box-title {
        font-size: 22px
    }
}

@media (max-width: 410px) {
    .blog-box .box-title {
        font-size: 20px
    }
}

@media (max-width: 350px) {
    .blog-box .blog-content {
        padding: 18px
    }

    .blog-box .box-title {
        font-size: 20px
    }

    .blog-box .box-bottom {
        padding-top: 18px
    }
}

.brand-box {
    display: grid;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    text-align: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-height: 78px
}

.brand-sec1 {
    padding: 60px 0;
    border-top: 4px solid var(--white-color)
}

.brand-card {
    display: grid;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    text-align: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-height: 80px
}

.brand-card img {
    -webkit-filter: grayscale(100) opacity(1);
    filter: grayscale(100) opacity(1);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.brand-card:hover img {
    -webkit-filter: none;
    filter: none
}

.checklist ul {
    padding-left: 0;
    list-style: none;
    text-align: left;
    margin-bottom: 0
}

.checklist.list-two-column ul {
    display: inline-grid;
    grid-template-columns: auto auto;
    gap: 0 40px
}

@media (max-width: 575px) {
    .checklist.list-two-column ul {
        grid-template-columns: auto
    }

    .checklist.list-two-column ul li {
        text-align: initial
    }
}

.checklist li {
    color: var(--title-color);
    font-weight: 400;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 10px
}

.checklist li>i {
    color: var(--theme-color);
    line-height: 26px
}

.checklist li:not(:last-child) {
    margin-bottom: 10px
}

.checklist.body-color li {
    color: var(--body-color)
}

.checklist.body-color li b {
    color: var(--title-color);
    font-weight: 600
}

.checklist.style2 li {
    font-weight: 500
}

.checklist.style2 li>i {
    font-size: 22px
}

.mega-hover {
    position: relative;
    overflow: hidden;
    z-index: 2
}

.mega-hover:after,
.mega-hover:before {
    content: "";
    position: absolute;
    pointer-events: none;
    opacity: 1;
    z-index: -1
}

.mega-hover:before {
    top: 0;
    right: 51%;
    bottom: 0;
    left: 50%;
    background: rgba(255, 255, 255, 0.3)
}

.mega-hover:after {
    top: 50%;
    right: 0;
    bottom: 50%;
    left: 0;
    background: rgba(255, 255, 255, 0.4)
}

.mega-hover:hover:before {
    left: 0;
    right: 0;
    opacity: 0;
    -webkit-transition: all 900ms linear;
    transition: all 900ms linear
}

.mega-hover:hover:after {
    top: 0;
    bottom: 0;
    opacity: 0;
    -webkit-transition: all 900ms linear;
    transition: all 900ms linear
}

.bg-img {
    position: absolute;
    inset: 0;
    height: 100%;
    width: 100%
}

.bg-img img {
    width: 100%;
    height: 100%
}

.th-video {
    position: relative;
    border-radius: 20px
}

.th-video img {
    border-radius: inherit
}

.th-video .play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.video-sec1 {
    padding-bottom: 190px
}

.video-sec1 .play-btn {
    --icon-size: 90px;
    font-size: 20px
}

.rounded-10 {
    border-radius: 10px
}

.rounded-20 {
    border-radius: 20px
}

@media (max-width: 767px) {
    .rounded-20 {
        border-radius: 10px
    }
}

.rounded-30 {
    border-radius: 30px
}

@media (max-width: 767px) {
    .rounded-30 {
        border-radius: 15px
    }
}

.call-1 a:hover {
    color: var(--white-color)
}

.btn-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px 30px
}

.filter-menu {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 10px;
    text-align: center;
    margin-bottom: 60px
}

@media (max-width: 1199px) {
    .filter-menu {
        margin-bottom: 50px
    }
}

@media (max-width: 991px) {
    .filter-menu {
        margin-top: -15px;
        margin-bottom: 45px;
        gap: 6px
    }
}

.filter-menu .th-btn {
    padding: 15px 20px;
    min-width: auto;
    background: -webkit-linear-gradient(top, #C2D4FF 37.5%, #F0F4FF 100%);
    background: linear-gradient(180deg, #C2D4FF 37.5%, #F0F4FF 100%);
    box-shadow: 0px 2px 10px rgba(184, 191, 208, 0.5)
}

.filter-menu .th-btn:before {
    background: -webkit-linear-gradient(top, #F9FAFD 0%, rgba(249, 250, 253, 0) 78.65%);
    background: linear-gradient(180deg, #F9FAFD 0%, rgba(249, 250, 253, 0) 78.65%)
}

.filter-menu .th-btn.active {
    background: -webkit-linear-gradient(top, var(--theme-color2) 37.5%, #E3EBFF 100%);
    background: linear-gradient(180deg, var(--theme-color2) 37.5%, #E3EBFF 100%);
    color: var(--white-color);
    box-shadow: 0px 3px 15px #B0BAD3
}

.filter-menu .th-btn.active:before {
    background: -webkit-linear-gradient(top, #A3BDFF 0%, rgba(155, 184, 255, 0) 78.65%);
    background: linear-gradient(180deg, #A3BDFF 0%, rgba(155, 184, 255, 0) 78.65%)
}

@media (max-width: 991px) {
    .filter-menu .th-btn {
        padding: 13px 17px
    }
}

@media (max-width: 1199px) {
    p.mb-40 {
        margin-bottom: 35px
    }

    p.mb-45 {
        margin-bottom: 38px
    }
}

.about-feature-area {
    max-width: 400px
}

@media (max-width: 1199px) {
    .about-feature-area {
        margin: 0 auto 40px auto
    }
}

.about-feature-area .about-feature {
    margin-bottom: 30px
}

.about-feature-area .about-feature:last-child {
    margin-bottom: 0
}

.img-box2 {
    position: relative
}

@media (max-width: 1199px) {
    .img-box2 {
        text-align: center
    }
}

.img-box2 .img1 img,
.img-box2 .img2 img {
    border-radius: 999px
}

.img-box2 .img1 {
    background-color: var(--theme-color);
    border-radius: 999px;
    padding: 0 20px 0 0;
    margin-left: 40px;
    display: inline-block
}

.img-box2 .img2 {
    border: 5px solid var(--theme-color);
    position: absolute;
    bottom: 0;
    left: -160px;
    border-radius: 999px
}

@media (max-width: 1299px) {
    .img-box2 .img2 {
        bottom: -80px;
        left: -80px
    }
}

@media (max-width: 1199px) {
    .img-box2 .img2 {
        bottom: 0;
        left: 0
    }
}

@media (max-width: 575px) {
    .img-box2 .img2 {
        max-width: 50%
    }
}

.accordion-card {
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    border-radius: 10px;
    overflow: hidden;
    background-color: var(--smoke-color);
    text-align: left;
    position: relative;
    z-index: 3
}

.accordion-card:not(:last-child) {
    margin-bottom: 24px
}

.accordion-card .accordion-button {
    font-size: 20px;
    font-weight: 700;
    font-family: var(--title-font);
    border: 0;
    border-color: var(--th-border-color);
    color: var(--title-color);
    background-color: transparent;
    border-radius: 0;
    padding: 22px 45px 22px 30px;
    min-height: 56px;
    gap: 10px;
    margin-bottom: 0;
    text-align: left;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    position: relative
}

.accordion-card .accordion-button:after {
    content: "\f055";
    height: 100%;
    width: auto;
    line-height: 1;
    background-color: transparent;
    background-image: none;
    font-family: var(--icon-font);
    color: var(--theme-color);
    font-weight: 900;
    font-size: 22px;
    display: grid;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    position: absolute;
    top: 0;
    right: 30px;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out
}

.accordion-card .accordion-button:focus {
    outline: none;
    box-shadow: none
}

.accordion-card .accordion-button:not(.collapsed) {
    box-shadow: none;
    border-radius: 0
}

.accordion-card .accordion-button:not(.collapsed):after {
    content: '\f056';
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    color: var(--title-color)
}

.accordion-card .accordion-collapse {
    border: none
}

.accordion-card .accordion-body {
    border-radius: 0;
    border: none;
    padding: 0px 30px 30px 30px;
    margin-top: -7px
}

.accordion-card .faq-text {
    margin-bottom: -0.48em
}

.accordion-card:has(.show) {
    border-radius: 10px
}

@media (max-width: 767px) {
    .accordion-card .accordion-button {
        font-size: 18px
    }
}

@media (max-width: 575px) {
    .accordion-card .accordion-button {
        font-size: 16px
    }
}

.service-card {
    position: relative;
    text-align: center;
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.05);
    background-color: var(--white-color);
    border-radius: 10px;
    z-index: 2
}

.service-card .box-img {
    -webkit-clip-path: polygon(100% 0, 100% 100%, calc(100% - 100px) 100%, 50% calc(100% - 32px), 100px 100%, 0 100%, 0 0);
    clip-path: polygon(100% 0, 100% 100%, calc(100% - 100px) 100%, 50% calc(100% - 32px), 100px 100%, 0 100%, 0 0);
    border-radius: 10px 10px 0 0;
    overflow: hidden
}

.service-card .box-img img {
    width: 100%;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.service-card .box-content {
    padding: 0 30px 40px 30px
}

.service-card .box-icon {
    border-radius: 99px;
    margin: -16px auto 30px auto;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.service-card .box-title {
    margin-bottom: 15px
}

.service-card .box-title a:hover {
    color: var(--theme-color)
}

.service-card .box-text {
    margin-bottom: 22px
}

.service-card .th-btn:before {
    background-color: var(--theme-color2)
}

.service-card:hover .box-img img {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1)
}

.service-card:hover .box-icon img {
    -webkit-transform: rotateY(180deg);
    transform: rotateY(180deg)
}

.service-box {
    background-color: var(--white-color);
    border-radius: 10px;
    padding: 40px;
    border: 1px solid var(--th-border-color);
    overflow: hidden;
    position: relative
}

@media (max-width: 375px) {
    .service-box {
        padding: 30px
    }
}

.service-box .box-img {
    margin-bottom: 30px
}

.service-box .box-title {
    margin-bottom: 14px
}

.service-box .box-text {
    margin-bottom: 22px;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.service-box .box-shape {
    position: absolute;
    width: 76px;
    height: 76px;
    background-color: var(--theme-color);
    border-radius: 99px;
    opacity: 0.1;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.service-box .box-shape:nth-child(1) {
    right: -22px;
    bottom: 22px
}

.service-box .box-shape:nth-child(2) {
    right: 22px;
    bottom: -22px
}

.service-box .box-shape:nth-child(3) {
    bottom: -13px;
    right: -13px
}

.service-box .th-btn {
    color: var(--theme-color);
    padding: 15px 25px;
    min-width: 140px;
    border: 1px solid var(--th-border-color);
    background-color: var(--white-color)
}

.service-box .th-btn:hover {
    border-color: var(--title-color)
}

.service-box:hover .box-shape {
    background-color: var(--theme-color2)
}

.service-box:hover .box-shape:nth-child(2) {
    right: -22px;
    bottom: 22px
}

.service-box:hover .box-shape:nth-child(1) {
    bottom: -13px;
    right: -13px
}

.service-box:hover .box-shape:nth-child(3) {
    right: 22px;
    bottom: -22px
}

.page-title {
    margin-top: -0.16em;
    margin-bottom: 20px
}

.page-img {
    margin-bottom: 40px;
    overflow: hidden;
    border-radius: 10px
}

.page-img img {
    width: 100%
}

.page-single {
    margin-bottom: 30px
}

.service-feature {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: var(--smoke-color);
    border-radius: 10px;
    padding: 20px;
    gap: 20px
}

.service-feature-wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px
}

@media (max-width: 1299px) {
    .service-feature-wrap {
        gap: 24px
    }
}

@media (max-width: 767px) {
    .service-feature-wrap {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (max-width: 575px) {
    .service-feature-wrap {
        grid-template-columns: repeat(1, 1fr)
    }
}

@media (max-width: 1299px) {
    .service-feature {
        padding: 10px;
        gap: 15px
    }
}

@media (max-width: 1199px) {
    .service-feature {
        padding: 0
    }
}

@media (max-width: 991px) {
    .service-feature {
        padding: 10px
    }
}

@media (max-width: 575px) {
    .service-feature {
        padding: 20px;
        gap: 20px
    }
}

.service-feature .box-icon {
    width: 60px;
    height: 60px;
    line-height: 60px;
    min-width: 60px;
    text-align: center;
    background-color: var(--smoke-color2);
    border-radius: 8px
}

.service-feature .box-title {
    font-size: 20px;
    margin: 0
}

@media (max-width: 1199px) {
    .service-feature .box-title {
        font-size: 18px
    }
}

.process-card {
    position: relative;
    z-index: 2;
    text-align: center;
    max-width: 285px
}

.process-card-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between
}

@media (max-width: 1199px) {
    .process-card-wrap {
        gap: 20px
    }
}

@media (max-width: 991px) {
    .process-card-wrap {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 40px
    }
}

@media (max-width: 767px) {
    .process-card-wrap {
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

.process-card:after {
    content: url('data:image/svg+xml,<svg width="231" height="20" viewBox="0 0 231 20" fill="none" xmlns="http://www.w3.org/2000/svg"><line x1="16" y1="9.9126" x2="216" y2="9.9126" stroke="%23068FFF" stroke-dasharray="4 4"/><path d="M230.092 9.87538L216.043 18.3208L215.754 1.93077L230.092 9.87538Z" fill="%23068FFF"/><circle cx="8.5" cy="9.9126" r="7" stroke="%23068FFF" stroke-width="3"/></svg>');
    position: absolute;
    top: 29%;
    left: 98%;
    z-index: -1
}

@media (max-width: 1299px) {
    .process-card:after {
        left: 82%
    }
}

@media (max-width: 1199px) {
    .process-card:after {
        left: 48%
    }
}

@media (max-width: 991px) {
    .process-card:after {
        left: 82%
    }
}

@media (max-width: 767px) {
    .process-card:after {
        display: none
    }
}

@media (max-width: 991px) {
    .process-card:nth-child(even):after {
        display: none
    }
}

.process-card:last-child:after {
    display: none
}

.process-card .box-img {
    width: 188px;
    height: 210px;
    margin: 0 auto 30px auto;
    padding: 8px;
    position: relative;
    z-index: 2;
    background-color: var(--theme-color);
    -webkit-clip-path: path("M100.25 5.13429C96.3825 2.90138 91.6175 2.90137 87.75 5.13429L9.41541 50.3608C5.54789 52.5937 3.16541 56.7203 3.16541 61.1861V151.639C3.16541 156.105 5.54789 160.231 9.4154 162.464L87.75 207.691C91.6175 209.924 96.3825 209.924 100.25 207.691L178.585 162.464C182.452 160.231 184.835 156.105 184.835 151.639V61.1861C184.835 56.7203 182.452 52.5937 178.585 50.3608L100.25 5.13429Z");
    clip-path: path("M100.25 5.13429C96.3825 2.90138 91.6175 2.90137 87.75 5.13429L9.41541 50.3608C5.54789 52.5937 3.16541 56.7203 3.16541 61.1861V151.639C3.16541 156.105 5.54789 160.231 9.4154 162.464L87.75 207.691C91.6175 209.924 96.3825 209.924 100.25 207.691L178.585 162.464C182.452 160.231 184.835 156.105 184.835 151.639V61.1861C184.835 56.7203 182.452 52.5937 178.585 50.3608L100.25 5.13429Z")
}

.process-card .box-img img {
    margin-top: 1px;
    -webkit-clip-path: path("M81 1.95413C84.094 0.167805 87.906 0.167806 91 1.95413L166.169 45.3532C169.263 47.1396 171.169 50.4408 171.169 54.0135V140.812C171.169 144.384 169.263 147.686 166.169 149.472L91 192.871C87.906 194.657 84.094 194.657 81 192.871L5.83054 149.472C2.73653 147.686 0.830544 144.384 0.830544 140.812V54.0135C0.830544 50.4408 2.73653 47.1396 5.83054 45.3532L81 1.95413Z");
    clip-path: path("M81 1.95413C84.094 0.167805 87.906 0.167806 91 1.95413L166.169 45.3532C169.263 47.1396 171.169 50.4408 171.169 54.0135V140.812C171.169 144.384 169.263 147.686 166.169 149.472L91 192.871C87.906 194.657 84.094 194.657 81 192.871L5.83054 149.472C2.73653 147.686 0.830544 144.384 0.830544 140.812V54.0135C0.830544 50.4408 2.73653 47.1396 5.83054 45.3532L81 1.95413Z")
}

.process-card .box-title {
    margin-bottom: 13px
}

.gallery-card {
    position: relative;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.gallery-card-wrap {
    max-width: 1814px;
    margin: 0 auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
    padding-left: 12px;
    padding-right: 12px;
    overflow: hidden
}

@media (max-width: 1199px) {
    .gallery-card-wrap {
        gap: 24px
    }
}

@media (max-width: 767px) {
    .gallery-card-wrap {
        max-width: 540px;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.gallery-card .box-img {
    position: relative;
    z-index: 2;
    overflow: hidden;
    border-radius: 10px
}

.gallery-card .box-img img {
    width: 100%;
    height: 320px;
    object-fit: cover
}

@media (max-width: 767px) {
    .gallery-card .box-img img {
        height: 80px;
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out
    }
}

.gallery-card .box-img:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0;
    background: -webkit-linear-gradient(top, rgba(0, 21, 36, 0.09) 0%, var(--theme-color) 100%);
    background: linear-gradient(180deg, rgba(0, 21, 36, 0.09) 0%, var(--theme-color) 100%);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.gallery-card .box-content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 30px;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    visibility: hidden;
    opacity: 0;
    z-index: 3;
    -webkit-transform: translateY(40px);
    -ms-transform: translateY(40px);
    transform: translateY(40px)
}

@media (max-width: 1199px) {
    .gallery-card .box-content {
        padding: 20px
    }
}

@media (max-width: 767px) {
    .gallery-card .box-content {
        padding: 30px
    }
}

@media (max-width: 375px) {
    .gallery-card .box-content {
        padding: 20px
    }
}

.gallery-card .box-title {
    font-weight: 600;
    color: var(--white-color);
    margin-bottom: 4px
}

.gallery-card .box-title a:hover {
    color: var(--title-color)
}

.gallery-card .box-text {
    color: var(--white-color)
}

.gallery-card.item-active {
    -webkit-box-flex: 2;
    -webkit-flex: 2;
    -ms-flex: 2;
    flex: 2
}

@media (max-width: 991px) {
    .gallery-card.item-active {
        -webkit-box-flex: 3.5;
        -webkit-flex: 3.5;
        -ms-flex: 3.5;
        flex: 3.5
    }
}

.gallery-card.item-active .box-img:after {
    height: 100%
}

.gallery-card.item-active .box-img img {
    height: 320px
}

.gallery-card.item-active .box-content {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.gallery-sec1 {
    padding-top: 120px;
    margin-top: -120px
}

.gallery-box {
    position: relative;
    margin-bottom: var(--bs-gutter-x)
}

.gallery-box .box-img {
    position: relative;
    z-index: 2;
    overflow: hidden;
    border-radius: 10px
}

.gallery-box .box-img img {
    width: 100%;
    object-fit: cover
}

@media (max-width: 991px) {
    .gallery-box .box-img img {
        min-height: 280px;
        max-height: 350px
    }
}

.gallery-box .box-img:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0;
    background-color: var(--title-color);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    opacity: 0.7
}

.gallery-box .box-content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 20px 0 20px 20px;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    visibility: hidden;
    opacity: 0;
    z-index: 3
}

.gallery-box .box-content:before {
    content: '';
    position: absolute;
    inset: 0 20px 0 0;
    background-color: var(--white-color);
    border-radius: 6px;
    z-index: -1
}

.gallery-box .icon-btn {
    --btn-size: 40px;
    background-color: var(--theme-color);
    color: var(--white-color);
    border: none
}

.gallery-box .icon-btn:hover {
    background-color: var(--title-color)
}

.gallery-box .box-title {
    margin-bottom: 2px
}

@media (max-width: 375px) {
    .gallery-box .box-title {
        font-size: 22px
    }
}

.gallery-box .box-text {
    font-size: 14px;
    color: var(--theme-color)
}

.gallery-box:hover .box-img:after {
    height: 100%
}

.gallery-box:hover .box-content {
    bottom: 30px;
    left: 30px;
    right: 30px;
    visibility: visible;
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

@media (max-width: 375px) {
    .gallery-box:hover .box-content {
        bottom: 20px;
        left: 20px;
        right: 20px
    }
}

.project-meta-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 29px 30px;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 820px;
    border-radius: 0 0 10px 10px;
    background-color: var(--white-color);
    box-shadow: 0px 10px 50px rgba(0, 0, 0, 0.08);
    position: relative;
    z-index: 3;
    margin: 0 auto -70px auto
}

@media (max-width: 767px) {
    .project-meta-wrap {
        gap: 20px 7px;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 0 20px 0;
        border-radius: 10px
    }
}

.project-meta-wrap:before,
.project-meta-wrap:after {
    content: '';
    position: absolute;
    top: 1px;
    border-style: solid;
    display: inline-block;
    z-index: -1
}

@media (max-width: 991px) {

    .project-meta-wrap:before,
    .project-meta-wrap:after {
        display: none
    }
}

.project-meta-wrap:before {
    border-width: 0 0 30px 30px;
    border-color: transparent transparent var(--gray-color) transparent;
    left: -30px
}

.project-meta-wrap:after {
    border-width: 30px 0 0 30px;
    border-color: transparent transparent transparent var(--gray-color);
    right: -30px
}

.project-meta-wrap .line {
    background-color: var(--th-border-color);
    height: 40px;
    width: 1px
}

@media (max-width: 767px) {
    .project-meta-wrap .line {
        display: none
    }
}

.project-meta .box-title {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 2px
}

@media (max-width: 767px) {
    .project-meta {
        -webkit-box-flex: calc(50% - 4px);
        -webkit-flex: calc(50% - 4px);
        -ms-flex: calc(50% - 4px);
        flex: calc(50% - 4px)
    }
}

.project-details .page-title {
    text-align: center
}

.project-details .page-text {
    max-width: 890px;
    margin: 0 auto 32px auto;
    text-align: center
}

.project-nav {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-top: 1px solid var(--th-border-color);
    border-bottom: 1px solid var(--th-border-color);
    padding: 17px 0;
    margin-top: 22px
}

.project-nav .icon-btn {
    --btn-size: 46px;
    font-size: 16px;
    border-radius: 99px;
    border: none;
    background-color: var(--theme-color);
    color: var(--white-color)
}

.project-nav .icon-btn:hover {
    background-color: var(--theme-color2)
}

.project-nav .nav-btn {
    color: var(--title-color);
    font-family: var(--title-font);
    font-weight: 500
}

.project-nav .nav-btn:first-child .icon-btn {
    margin-right: 5px
}

.project-nav .nav-btn:last-child .icon-btn {
    margin-left: 5px
}

.project-nav .nav-btn:hover {
    color: var(--theme-color)
}

.price-card {
    text-align: center;
    padding: 60px;
    border-radius: 10px;
    position: relative;
    z-index: 2
}

.price-card-wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px
}

@media (max-width: 991px) {
    .price-card-wrap {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (max-width: 767px) {
    .price-card-wrap {
        grid-template-columns: repeat(1, 1fr)
    }
}

@media (max-width: 1199px) {
    .price-card {
        padding: 45px
    }
}

.price-card:before,
.price-card:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: var(--smoke-color2);
    border-radius: inherit;
    z-index: -1;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.price-card:after {
    background-color: var(--theme-color);
    opacity: 0.9;
    z-index: -2
}

.price-card .box-icon {
    background-color: var(--theme-color);
    border-radius: 10px;
    padding: 33px 20px;
    max-width: 250px;
    margin: 0 auto;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.price-card .box-icon img {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out
}

.price-card .box-title {
    margin: 24px 5px
}

.price-card .box-price {
    font-size: 44px;
    margin: 0;
    color: var(--theme-color);
    margin: -0.28em 0
}

.price-card .box-price .currency {
    font-size: 18px
}

.price-card .checklist {
    text-align: center;
    margin: 33px 0 33px 0
}

.price-card .checklist li {
    color: var(--body-color);
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

.price-card .checklist li.unavailable i {
    color: var(--body-color)
}

.price-card.item-active:before {
    top: 70px;
    left: 80px;
    height: 100px;
    width: calc(100% - 160px);
    z-index: -1
}

.price-card.item-active .checklist li {
    --body-color: #fff
}

.price-card.item-active .checklist li i {
    color: var(--white-color)
}

.price-card.item-active .box-price {
    color: var(--white-color)
}

.price-card.item-active .box-icon {
    background-color: var(--white-color)
}

.price-card.item-active .box-icon img {
    -webkit-filter: none;
    filter: none
}

.price-card.item-active .box-title {
    color: var(--white-color)
}

.price-card.item-active .th-btn {
    background-color: var(--white-color);
    color: var(--theme-color)
}

.price-tab {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    gap: 10px
}

.price-tab .th-btn {
    min-width: auto
}

.price-tab .th-btn.active:before {
    background-color: var(--theme-color2)
}

.px-5 {
    padding-right: 5px;
    padding-left: 5px
}

.px-10 {
    padding-right: 10px;
    padding-left: 10px
}

.px-15 {
    padding-right: 15px;
    padding-left: 15px
}

.px-20 {
    padding-right: 20px;
    padding-left: 20px
}

.px-25 {
    padding-right: 25px;
    padding-left: 25px
}

.px-30 {
    padding-right: 30px;
    padding-left: 30px
}

.px-35 {
    padding-right: 35px;
    padding-left: 35px
}

.px-40 {
    padding-right: 40px;
    padding-left: 40px
}

.px-45 {
    padding-right: 45px;
    padding-left: 45px
}

.px-50 {
    padding-right: 50px;
    padding-left: 50px
}

.py-5 {
    padding-top: 5px;
    padding-bottom: 5px
}

.py-10 {
    padding-top: 10px;
    padding-bottom: 10px
}

.py-15 {
    padding-top: 15px;
    padding-bottom: 15px
}

.py-20 {
    padding-top: 20px;
    padding-bottom: 20px
}

.py-25 {
    padding-top: 25px;
    padding-bottom: 25px
}

.py-30 {
    padding-top: 30px;
    padding-bottom: 30px
}

.py-35 {
    padding-top: 35px;
    padding-bottom: 35px
}

.py-40 {
    padding-top: 40px;
    padding-bottom: 40px
}

.py-45 {
    padding-top: 45px;
    padding-bottom: 45px
}

.py-50 {
    padding-top: 50px;
    padding-bottom: 50px
}

.pt-5 {
    padding-top: 5px
}

.pt-10 {
    padding-top: 10px
}

.pt-15 {
    padding-top: 15px
}

.pt-20 {
    padding-top: 20px
}

.pt-25 {
    padding-top: 25px
}

.pt-30 {
    padding-top: 30px
}

.pt-35 {
    padding-top: 35px
}

.pt-40 {
    padding-top: 40px
}

.pt-45 {
    padding-top: 45px
}

.pt-50 {
    padding-top: 50px
}

.pb-5 {
    padding-bottom: 5px
}

.pb-10 {
    padding-bottom: 10px
}

.pb-15 {
    padding-bottom: 15px
}

.pb-20 {
    padding-bottom: 20px
}

.pb-25 {
    padding-bottom: 25px
}

.pb-30 {
    padding-bottom: 30px
}

.pb-35 {
    padding-bottom: 35px
}

.pb-40 {
    padding-bottom: 40px
}

.pb-45 {
    padding-bottom: 45px
}

.pb-50 {
    padding-bottom: 50px
}

.pl-5 {
    padding-left: 5px
}

.pl-10 {
    padding-left: 10px
}

.pl-15 {
    padding-left: 15px
}

.pl-20 {
    padding-left: 20px
}

.pl-25 {
    padding-left: 25px
}

.pl-30 {
    padding-left: 30px
}

.pl-35 {
    padding-left: 35px
}

.pl-40 {
    padding-left: 40px
}

.pl-45 {
    padding-left: 45px
}

.pl-50 {
    padding-left: 50px
}

.pr-5 {
    padding-right: 5px
}

.pr-10 {
    padding-right: 10px
}

.pr-15 {
    padding-right: 15px
}

.pr-20 {
    padding-right: 20px
}

.pr-25 {
    padding-right: 25px
}

.pr-30 {
    padding-right: 30px
}

.pr-35 {
    padding-right: 35px
}

.pr-40 {
    padding-right: 40px
}

.pr-45 {
    padding-right: 45px
}

.pr-50 {
    padding-right: 50px
}

.pb-60 {
    padding-bottom: 60px
}

.mx-5 {
    margin-right: 5px;
    margin-left: 5px
}

.mx-10 {
    margin-right: 10px;
    margin-left: 10px
}

.mx-15 {
    margin-right: 15px;
    margin-left: 15px
}

.mx-20 {
    margin-right: 20px;
    margin-left: 20px
}

.mx-25 {
    margin-right: 25px;
    margin-left: 25px
}

.mx-30 {
    margin-right: 30px;
    margin-left: 30px
}

.mx-35 {
    margin-right: 35px;
    margin-left: 35px
}

.mx-40 {
    margin-right: 40px;
    margin-left: 40px
}

.mx-45 {
    margin-right: 45px;
    margin-left: 45px
}

.mx-50 {
    margin-right: 50px;
    margin-left: 50px
}

.my-5 {
    margin-top: 5px;
    margin-bottom: 5px
}

.my-10 {
    margin-top: 10px;
    margin-bottom: 10px
}

.my-15 {
    margin-top: 15px;
    margin-bottom: 15px
}

.my-20 {
    margin-top: 20px;
    margin-bottom: 20px
}

.my-25 {
    margin-top: 25px;
    margin-bottom: 25px
}

.my-30 {
    margin-top: 30px;
    margin-bottom: 30px
}

.my-35 {
    margin-top: 35px;
    margin-bottom: 35px
}

.my-40 {
    margin-top: 40px;
    margin-bottom: 40px
}

.my-45 {
    margin-top: 45px;
    margin-bottom: 45px
}

.my-50 {
    margin-top: 50px;
    margin-bottom: 50px
}

.mt-5 {
    margin-top: 5px
}

.mt-10 {
    margin-top: 10px
}

.mt-15 {
    margin-top: 15px
}

.mt-20 {
    margin-top: 20px
}

.mt-25 {
    margin-top: 25px
}

.mt-30 {
    margin-top: 30px
}

.mt-35 {
    margin-top: 35px
}

.mt-40 {
    margin-top: 40px
}

.mt-45 {
    margin-top: 45px
}

.mt-50 {
    margin-top: 50px
}

.mb-5 {
    margin-bottom: 5px
}

.mb-10 {
    margin-bottom: 10px
}

.mb-15 {
    margin-bottom: 15px
}

.mb-20 {
    margin-bottom: 20px
}

.mb-25 {
    margin-bottom: 25px
}

.mb-30 {
    margin-bottom: 30px
}

.mb-35 {
    margin-bottom: 35px
}

.mb-40 {
    margin-bottom: 40px
}

.mb-45 {
    margin-bottom: 45px
}

.mb-50 {
    margin-bottom: 50px
}

.ml-5 {
    margin-left: 5px
}

.ml-10 {
    margin-left: 10px
}

.ml-15 {
    margin-left: 15px
}

.ml-20 {
    margin-left: 20px
}

.ml-25 {
    margin-left: 25px
}

.ml-30 {
    margin-left: 30px
}

.ml-35 {
    margin-left: 35px
}

.ml-40 {
    margin-left: 40px
}

.ml-45 {
    margin-left: 45px
}

.ml-50 {
    margin-left: 50px
}

.mr-5 {
    margin-right: 5px
}

.mr-10 {
    margin-right: 10px
}

.mr-15 {
    margin-right: 15px
}

.mr-20 {
    margin-right: 20px
}

.mr-25 {
    margin-right: 25px
}

.mr-30 {
    margin-right: 30px
}

.mr-35 {
    margin-right: 35px
}

.mr-40 {
    margin-right: 40px
}

.mr-45 {
    margin-right: 45px
}

.mr-50 {
    margin-right: 50px
}

.mb-60 {
    margin-bottom: 60px
}

.mb-33 {
    margin-bottom: 33px
}

.mb-28 {
    margin-bottom: 28px
}

.mt-n1 {
    margin-top: -.25rem
}

.mt-n2 {
    margin-top: -.45rem
}

.mt-n3 {
    margin-top: -0.8rem
}

.mt-n4 {
    margin-top: -1.5rem
}

.mt-n5 {
    margin-top: -3rem
}

.mb-n1 {
    margin-bottom: -.25rem
}

.mb-n2 {
    margin-bottom: -.45rem
}

.mb-n3 {
    margin-bottom: -0.8rem
}

.mb-n4 {
    margin-bottom: -1.5rem
}

.mb-n5 {
    margin-bottom: -3rem
}

.space,
.space-top {
    padding-top: var(--section-space)
}

.space,
.space-bottom {
    padding-bottom: var(--section-space)
}

.space-extra,
.space-extra-top {
    padding-top: calc(var(--section-space) - 30px)
}

.space-extra,
.space-extra-bottom {
    padding-bottom: calc(var(--section-space) - 30px)
}

.space-extra2,
.space-extra2-top {
    padding-top: calc(var(--section-space) - 40px)
}

.space-extra2,
.space-extra2-bottom {
    padding-bottom: calc(var(--section-space) - 40px)
}

@media (max-width: 991px) {

    .space,
    .space-top {
        padding-top: var(--section-space-mobile)
    }

    .space,
    .space-bottom {
        padding-bottom: var(--section-space-mobile)
    }

    .space-extra,
    .space-extra-top {
        padding-top: calc(var(--section-space-mobile) - 30px)
    }

    .space-extra,
    .space-extra-bottom {
        padding-bottom: calc(var(--section-space-mobile) - 30px)
    }

    .space-top-md-none {
        padding-top: 0
    }

    .space-extra2,
    .space-extra2-top {
        padding-top: 70px
    }

    .space-extra2,
    .space-extra2-bottom {
        padding-bottom: 70px
    }
}

/* Header Logo Size */
.header-logo img {
    width: 100% ;
    height: 99px ;
    max-width: 100%;
}

@media (max-width: 991px) {
    .header-logo img,
    .mobile-logo img {
        width: 170px !important;
        height: auto !important;
        max-width: 170px !important;
    }
}

/* =========================================================
   TAI MING SHENG PTE. LTD. — Custom Styles
   Link this AFTER the theme's main stylesheet(s) so these
   rules can override the defaults where needed.
   ========================================================= */

:root {
  --tms-primary: #0d6efd;   /* main brand blue — change to match your logo */
  --tms-primary-dark: #0a4fb0;
  --tms-accent: #17c3b2;    /* teal accent, evokes "clean/hygiene" */
  --tms-dark: #0f1b2d;
  --tms-light-bg: #f4f8fb;
  --tms-text: #4b5a6a;
  --tms-white: #ffffff;
  --tms-radius: 10px;
}

/* ---------- Global text tweaks ---------- */
body {
  color: var(--tms-text);
}

.sec-title .text-theme {
  color: var(--tms-primary);
}

.sub-title {
  color: var(--tms-primary);
  font-weight: 600;
  letter-spacing: 0.5px;
}

/* ---------- Hero Section ---------- */
.hero-style1 .title2 .text-transparent {
  -webkit-text-stroke: 1px var(--tms-white);
  color: transparent;
}

.hero-style1 .hero-text {
  max-width: 640px;
  line-height: 1.7;
}

.btn-group .th-btn.style3 {
  background: var(--tms-primary);
  border: none;
  transition: background 0.3s ease, transform 0.2s ease;
}

.btn-group .th-btn.style3:hover {
  background: var(--tms-primary-dark);
  transform: translateY(-2px);
}

/* Outline "Contact Us" button variant added inline in index.php */
.btn-group .th-btn.style3[style*="transparent"]:hover {
  background: var(--tms-white) !important;
  color: var(--tms-dark) !important;
}

/* ---------- About / Checklist Section ---------- */
.checklist.style2 ul li {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 0;
  font-weight: 500;
}

.checklist.style2 ul li i {
  color: var(--tms-accent);
  font-size: 18px;
  flex-shrink: 0;
}

/* ---------- Service Cards ---------- */
.service-box {
  background: var(--tms-white);
  border-radius: var(--tms-radius);
  padding: 30px 24px;
  text-align: center;
  box-shadow: 0 6px 20px rgba(15, 27, 45, 0.06);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  height: 100%;
}

.service-box:hover {
  transform: translateY(-6px);
  box-shadow: 0 14px 30px rgba(15, 27, 45, 0.12);
}

.service-box .box-img {
  margin-bottom: 18px;
}

.service-box .box-title a {
  color: var(--tms-dark);
  font-size: 20px;
  font-weight: 600;
}

.service-box .box-title a:hover {
  color: var(--tms-primary);
}

.service-box .box-text {
  font-size: 15px;
  line-height: 1.6;
  margin-bottom: 18px;
}

/* ---------- Counter Stats ---------- */
.counter-card .box-number {
  color: var(--tms-white);
  font-weight: 700;
}

.counter-card .box-text {
  color: rgba(255, 255, 255, 0.85);
}

/* ---------- Programs / Process Cards ---------- */
.process-card {
  background: var(--tms-light-bg);
  border-radius: var(--tms-radius);
  padding: 28px;
  text-align: center;
  transition: background 0.3s ease;
}

.process-card:hover {
  background: var(--tms-white);
  box-shadow: 0 10px 24px rgba(15, 27, 45, 0.08);
}

.process-card .box-title {
  color: var(--tms-dark);
  margin: 16px 0 8px;
}

/* ---------- CTA Banner ---------- */
section[data-bg-src*="cta_bg"] .sec-title.text-white {
  font-size: clamp(28px, 4vw, 42px);
}

section[data-bg-src*="cta_bg"] .th-btn.style3 {
  background: var(--tms-accent);
  border: none;
}

section[data-bg-src*="cta_bg"] .th-btn.style3:hover {
  background: var(--tms-white);
  color: var(--tms-dark);
}

/* ---------- Team Cards ---------- */
.th-team.team-card .box-desig {
  color: var(--tms-primary);
  font-size: 14px;
  font-weight: 500;
}

/* ---------- Gallery / Work Section ---------- */
.gallery-box {
  border-radius: var(--tms-radius);
  overflow: hidden;
}

.gallery-box .box-title a {
  color: var(--tms-dark);
}

/* ---------- Testimonials ---------- */
.testi-grid .box-review i {
  color: #ffb400;
  margin-right: 2px;
}

.testi-grid .box-title {
  color: var(--tms-dark);
  margin-top: 12px;
}

/* ---------- Blog Cards ---------- */
.blog-box .box-bottom .category {
  background: var(--tms-light-bg);
  color: var(--tms-primary);
  border-radius: 20px;
  padding: 4px 14px;
  font-size: 13px;
  font-weight: 600;
}

/* ---------- Newsletter ---------- */
.newsletter-form .form-control {
  border-radius: 30px 0 0 30px;
  border: none;
  padding: 14px 20px;
}

.newsletter-form .th-btn.style6 {
  border-radius: 0 30px 30px 0;
  background: var(--tms-accent);
  border: none;
}

/* ---------- Responsive tweaks ---------- */
@media (max-width: 768px) {
  .hero-style1 .hero-text {
    max-width: 100%;
  }

  .btn-group {
    flex-direction: column;
    gap: 12px;
  }
}

/* =========================================
   TMS 3 SLIDE HERO
========================================= */

.th-hero-wrapper.hero-1 {
    position: relative;
    overflow: hidden;
}

.th-hero-wrapper.hero-1 .swiper-slide {
    overflow: hidden;
}

.th-hero-wrapper.hero-1 .hero-inner {
    min-height: 720px;
    display: flex;
    align-items: center;
    position: relative;
    background-size: cover;
    background-position: center;
}

.th-hero-wrapper.hero-1 .hero-style1 {
    position: relative;
    z-index: 5;
    max-width: 720px;
}

.th-hero-wrapper.hero-1 .hero-title {
    margin-bottom: 20px;
}

.th-hero-wrapper.hero-1 .hero-text {
    max-width: 680px;
    line-height: 1.8;
}

.th-hero-wrapper.hero-1 .btn-group {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}


/* BLUE + GOLD TEXT */

.th-hero-wrapper.hero-1 .text-transparent {
    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}


/* GOLD BUTTON */

.th-hero-wrapper.hero-1 .th-btn.style3:first-child {
    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    border: none;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .th-hero-wrapper.hero-1 .hero-inner {
        min-height: 650px;
    }

    .th-hero-wrapper.hero-1 .hero-style1 {
        max-width: 600px;
    }

    .th-hero-wrapper.hero-1 .hero-text {
        font-size: 15px;
        line-height: 1.7;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .th-hero-wrapper.hero-1 .hero-inner {
        min-height: 650px;
        padding: 100px 0 80px;
        background-position: center;
    }

    .th-hero-wrapper.hero-1 .hero-style1 {
        max-width: 100%;
        text-align: left;
    }

    .th-hero-wrapper.hero-1 .hero-title {
        font-size: 36px;
        line-height: 1.15;
    }

    .th-hero-wrapper.hero-1 .hero-text {
        font-size: 14px;
        line-height: 1.7;
        margin-bottom: 25px;
    }

    .th-hero-wrapper.hero-1 .btn-group {
        gap: 10px;
    }

    .th-hero-wrapper.hero-1 .btn-group .th-btn {
        padding: 12px 20px;
        font-size: 14px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .th-hero-wrapper.hero-1 .hero-inner {
        min-height: 680px;
    }

    .th-hero-wrapper.hero-1 .hero-title {
        font-size: 30px;
    }

    .th-hero-wrapper.hero-1 .hero-text {
        font-size: 13px;
    }

    .th-hero-wrapper.hero-1 .btn-group {
        flex-direction: column;
        align-items: flex-start;
    }

}s/* =====================================================
   TMS MODERN HERO SLIDER
===================================================== */

.tms-hero {
    position: relative;
    width: 100%;
    overflow: hidden;
    background: #002d72;
}

.tmsHeroSlider,
.tms-hero .swiper-wrapper,
.tms-hero .swiper-slide {
    width: 100%;
    height: 100%;
}

.tms-hero-slide {
    position: relative;
    min-height: 720px;
    display: flex;
    align-items: center;
    overflow: hidden;
}


/* =====================================================
   BACKGROUND IMAGE
===================================================== */

.tms-hero-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.tms-hero-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}


/* =====================================================
   DARK BLUE OVERLAY
===================================================== */

.tms-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;

    background:
        linear-gradient(
            90deg,
            rgba(0, 32, 90, 0.98) 0%,
            rgba(0, 45, 115, 0.92) 35%,
            rgba(0, 61, 145, 0.62) 58%,
            rgba(0, 0, 0, 0.10) 100%
        );
}


/* =====================================================
   GOLD DECORATIVE EDGE
===================================================== */

.tms-hero-slide::before {
    content: "";
    position: absolute;
    z-index: 3;

    top: -20%;
    left: 47%;

    width: 7px;
    height: 145%;

    background: linear-gradient(
        180deg,
        #b87500 0%,
        #ffd84d 45%,
        #d99a00 100%
    );

    transform: rotate(8deg);
    box-shadow: 0 0 25px rgba(255, 210, 70, 0.45);
}


/* =====================================================
   SECOND GOLD LINE
===================================================== */

.tms-hero-slide::after {
    content: "";
    position: absolute;
    z-index: 3;

    top: -20%;
    left: 48.5%;

    width: 2px;
    height: 145%;

    background: #fff;

    opacity: 0.55;

    transform: rotate(8deg);
}


/* =====================================================
   CONTENT
===================================================== */

.tms-hero-content {
    position: relative;
    z-index: 5;

    width: 58%;
    max-width: 700px;

    padding: 80px 0;
}


/* =====================================================
   SMALL TITLE
===================================================== */

.tms-small-title {
    display: flex;
    align-items: center;
    gap: 12px;

    margin-bottom: 22px;

    color: #ffffff;

    font-size: 16px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.tms-small-title span {
    display: block;

    width: 45px;
    height: 3px;

    background: linear-gradient(
        90deg,
        #b87500 0%,
        #ffd84d 45%,
        #d99a00 100%
    );

    border-radius: 5px;
}


/* =====================================================
   HEADING
===================================================== */

.tms-hero-content h1 {
    margin: 0 0 25px;

    color: #ffffff;

    font-size: clamp(48px, 5vw, 76px);
    font-weight: 700;

    line-height: 1.08;
    letter-spacing: -1.5px;
}

.tms-hero-content h1 strong {
    display: block;

    background: linear-gradient(
        90deg,
        #b87500 0%,
        #ffd84d 45%,
        #d99a00 100%
    );

    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;

    font-weight: 800;
}


/* =====================================================
   PARAGRAPH
===================================================== */

.tms-hero-content p {
    max-width: 620px;

    margin: 0 0 35px;

    color: rgba(255, 255, 255, 0.88);

    font-size: 17px;
    line-height: 1.8;
}


/* =====================================================
   BUTTONS
===================================================== */

.tms-hero-buttons {
    display: flex;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
}

.tms-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;

    min-height: 55px;
    padding: 0 28px;

    border-radius: 50px;

    font-size: 15px;
    font-weight: 700;

    text-decoration: none;

    transition: all 0.35s ease;
}


/* GOLD BUTTON */

.tms-btn-gold {
    color: #002d72;

    background: linear-gradient(
        90deg,
        #b87500 0%,
        #ffd84d 45%,
        #d99a00 100%
    );

    box-shadow:
        0 8px 25px rgba(255, 193, 7, 0.25);
}

.tms-btn-gold:hover {
    color: #002d72;

    transform: translateY(-3px);

    box-shadow:
        0 12px 30px rgba(255, 193, 7, 0.4);
}

.tms-btn-gold i {
    transition: transform 0.3s ease;
}

.tms-btn-gold:hover i {
    transform: translateX(5px);
}


/* OUTLINE BUTTON */

.tms-btn-outline {
    color: #ffffff;

    border: 1px solid rgba(255, 255, 255, 0.8);

    background: rgba(255, 255, 255, 0.05);
}

.tms-btn-outline:hover {
    color: #002d72;

    background: #ffffff;

    border-color: #ffffff;

    transform: translateY(-3px);
}


/* =====================================================
   SLIDE NUMBER
===================================================== */

.tms-slide-number {
    position: absolute;

    z-index: 6;

    right: 45px;
    bottom: 45px;

    display: flex;
    align-items: center;
    gap: 12px;

    color: #ffffff;

    font-size: 14px;
    font-weight: 700;
}

.tms-slide-number div {
    width: 55px;
    height: 2px;

    background: linear-gradient(
        90deg,
        #b87500 0%,
        #ffd84d 45%,
        #d99a00 100%
    );
}


/* =====================================================
   ARROWS
===================================================== */

.tms-slider-arrows {
    position: absolute;

    z-index: 10;

    right: 45px;
    top: 50%;

    transform: translateY(-50%);

    display: flex;
    flex-direction: column;
    gap: 12px;
}

.tms-slider-arrows button {
    width: 52px;
    height: 52px;

    border-radius: 50%;

    border: 1px solid rgba(255, 255, 255, 0.6);

    background: rgba(0, 39, 100, 0.75);

    color: #ffffff;

    cursor: pointer;

    transition: all 0.3s ease;
}

.tms-slider-arrows button:hover {
    color: #002d72;

    background: linear-gradient(
        90deg,
        #b87500 0%,
        #ffd84d 45%,
        #d99a00 100%
    );

    border-color: #ffd84d;
}


/* =====================================================
   PAGINATION
===================================================== */

.tms-pagination {
    position: absolute;

    z-index: 10;

    left: 50% !important;
    bottom: 35px !important;

    transform: translateX(-50%);

    display: flex;
    justify-content: center;
    gap: 8px;
}

.tms-pagination .swiper-pagination-bullet {
    width: 9px;
    height: 9px;

    margin: 0 !important;

    opacity: 1;

    background: rgba(255, 255, 255, 0.5);
}

.tms-pagination .swiper-pagination-bullet-active {
    width: 30px;

    border-radius: 20px;

    background: linear-gradient(
        90deg,
        #b87500 0%,
        #ffd84d 45%,
        #d99a00 100%
    );
}


/* =====================================================
   SLIDE ANIMATION
===================================================== */

.tmsHeroSlider .swiper-slide-active .tms-hero-content {
    animation: tmsContentAnimation 1s ease forwards;
}

@keyframes tmsContentAnimation {

    from {
        opacity: 0;
        transform: translateX(-60px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.tmsHeroSlider .swiper-slide-active .tms-hero-bg img {
    animation: tmsImageZoom 6s ease forwards;
}

@keyframes tmsImageZoom {

    from {
        transform: scale(1.08);
    }

    to {
        transform: scale(1);
    }
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1199px) {

    .tms-hero-slide {
        min-height: 650px;
    }

    .tms-hero-content {
        width: 65%;
    }

    .tms-hero-slide::before {
        left: 52%;
    }

    .tms-hero-slide::after {
        left: 53.5%;
    }

    .tms-slider-arrows {
        right: 25px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .tms-hero-slide {
        min-height: 680px;

        align-items: center;
    }

    .tms-hero-bg img {
        object-position: center;
    }

    .tms-hero-overlay {
        background:
            linear-gradient(
                90deg,
                rgba(0, 32, 90, 0.96) 0%,
                rgba(0, 45, 115, 0.85) 70%,
                rgba(0, 45, 115, 0.55) 100%
            );
    }

    /* Hide diagonal lines on mobile */

    .tms-hero-slide::before,
    .tms-hero-slide::after {
        display: none;
    }

    .tms-hero-content {
        width: 100%;
        max-width: 100%;

        padding: 80px 20px 100px;
    }

    .tms-small-title {
        font-size: 12px;
        letter-spacing: 1px;
    }

    .tms-small-title span {
        width: 30px;
    }

    .tms-hero-content h1 {
        font-size: 40px;
        line-height: 1.12;
        letter-spacing: -0.5px;
    }

    .tms-hero-content p {
        font-size: 14px;
        line-height: 1.7;
        max-width: 100%;
    }

    .tms-hero-buttons {
        gap: 10px;
    }

    .tms-btn {
        min-height: 48px;
        padding: 0 20px;
        font-size: 13px;
    }

    .tms-slider-arrows {
        right: 15px;
        top: auto;
        bottom: 65px;

        transform: none;

        flex-direction: row;
    }

    .tms-slider-arrows button {
        width: 40px;
        height: 40px;
    }

    .tms-slide-number {
        display: none;
    }

    .tms-pagination {
        bottom: 25px !important;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .tms-hero-slide {
        min-height: 650px;
    }

    .tms-hero-content {
        padding-left: 18px;
        padding-right: 18px;
    }

    .tms-hero-content h1 {
        font-size: 34px;
    }

    .tms-hero-content p {
        font-size: 13px;
    }

    .tms-btn {
        min-height: 45px;
        padding: 0 17px;
    }

}

/* =========================================
   NEW ABOUT DESIGN
========================================= */

.about-new-section {
    position: relative;
    padding: 70px 0;
    background: #ffffff;
    overflow: hidden;
}

.about-new-layout {
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    gap: 70px;
    align-items: center;
}


/* =========================================
   CONTENT
========================================= */

.about-new-content {
    position: relative;
    z-index: 2;
}

.about-new-label {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    color: #B87500;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.about-new-label span {
    width: 38px;
    height: 3px;
    border-radius: 10px;
    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );
}


.about-new-title {
    margin: 0 0 22px;
    color: #003B9E;
    font-size: 36px;
    line-height: 1.18;
    font-weight: 800;
}

.about-new-title span {
    display: block;
    margin-top: 5px;
    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}


/* =========================================
   PARAGRAPHS
========================================= */

.about-new-p {
    margin: 0 0 16px;
    color: #000000 !important;
    line-height: 1.7;
    font-size: 16px;
    text-align: justify;
}

.about-p20 {
    font-size: 20px;
}

.about-p18 {
    font-size: 18px;
}

.about-p16 {
    font-size: 16px;
}


/* =========================================
   LIGHT HIGHLIGHT
========================================= */

.about-light-highlight {
    display: inline;
    padding: 3px 7px;
    border-radius: 4px;
    font-weight: 700;
    text-decoration: none !important;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
    transition: all 0.3s ease;
}


/* LIGHT BLUE */
.blue-highlight {
    color: #003B9E !important;
    background: #EAF3FF !important;
}

.blue-highlight:hover {
    color: #ffffff !important;
    background: #006CFF !important;
}


/* LIGHT GOLD */
.gold-highlight {
    color: #8A5A00 !important;
    background: #FFF4CC !important;
}

.gold-highlight:hover {
    color: #ffffff !important;
    background: #D99A00 !important;
}


/* =========================================
   TWO FEATURES
========================================= */

.about-new-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-top: 25px;
}

.about-feature-box {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 18px;
    background: #F8FBFF;
    border: 1px solid #DCEBFA;
    border-radius: 12px;
    transition: all 0.35s ease;
}

.about-feature-box:hover {
    transform: translateY(-5px);
    border-color: #FFD84D;
    box-shadow: 0 12px 28px rgba(0, 59, 158, 0.10);
}

.about-feature-icon {
    width: 43px;
    height: 43px;
    min-width: 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );
    border-radius: 10px;
    font-size: 16px;
}

.about-feature-box h3 {
    margin: 0 0 5px;
    color: #003B9E;
    font-size: 17px;
    line-height: 1.3;
    font-weight: 800;
}

.about-feature-box p {
    margin: 0;
    color: #000000;
    font-size: 14px;
    line-height: 1.5;
}


/* =========================================
   BUTTON
========================================= */

.about-new-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 25px;
    padding: 13px 22px;
    color: #ffffff !important;
    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );
    border-radius: 6px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none !important;
    transition: all 0.35s ease;
}

.about-new-btn:hover {
    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );
}


/* =========================================
   IMAGE AREA
========================================= */

.about-new-images {
    position: relative;
    min-height: 520px;
}

.about-image-main {
    position: absolute;
    top: 0;
    right: 0;
    width: 88%;
    height: 420px;
    overflow: hidden;
    border-radius: 25px 25px 25px 80px;
    box-shadow: 0 20px 45px rgba(0, 59, 158, 0.18);
    z-index: 2;
}

.about-image-main img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.7s ease;
}

.about-image-main:hover img {
    transform: scale(1.06);
}


/* SMALL IMAGE */

.about-image-small {
    position: absolute;
    left: 0;
    bottom: 5px;
    width: 48%;
    height: 190px;
    padding: 7px;
    background: #ffffff;
    border: 2px solid #FFD84D;
    border-radius: 15px;
    z-index: 4;
    box-shadow: 0 12px 30px rgba(0, 59, 158, 0.15);
}

.about-image-small img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 9px;
}


/* EXPERIENCE */

.about-image-badge {
    position: absolute;
    right: 15px;
    bottom: 35px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 20px;
    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );
    border-radius: 10px;
    z-index: 5;
    box-shadow: 0 12px 30px rgba(0, 59, 158, 0.25);
}

.about-image-badge > strong {
    color: #FFD84D;
    font-size: 34px;
    line-height: 1;
    font-weight: 900;
}

.about-image-badge > strong span {
    color: #ffffff;
}

.about-image-badge small {
    display: block;
    color: #FFD84D;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1px;
}

.about-image-badge b {
    display: block;
    color: #ffffff;
    font-size: 13px;
}


/* DECORATION */

.about-image-decoration {
    position: absolute;
    top: -20px;
    left: 20px;
    width: 100px;
    height: 100px;
    border: 3px dashed #D99A00;
    border-radius: 50%;
    z-index: 1;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .about-new-section {
        padding: 55px 0;
    }

    .about-new-layout {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .about-new-images {
        max-width: 650px;
        width: 100%;
        margin: 0 auto;
        order: -1;
    }

    .about-new-title {
        font-size: 32px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .about-new-section {
        padding: 40px 0;
    }

    .about-new-layout {
        gap: 35px;
    }

    .about-new-images {
        min-height: 390px;
    }

    .about-image-main {
        width: 88%;
        height: 315px;
        border-radius: 18px 18px 18px 55px;
    }

    .about-image-small {
        width: 50%;
        height: 140px;
    }

    .about-image-badge {
        right: 0;
        bottom: 15px;
        padding: 11px 14px;
    }

    .about-image-badge > strong {
        font-size: 26px;
    }

    .about-new-title {
        font-size: 27px;
    }

    .about-p20 {
        font-size: 20px;
    }

    .about-p18 {
        font-size: 18px;
    }

    .about-p16 {
        font-size: 16px;
    }

    .about-new-features {
        grid-template-columns: 1fr;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 450px) {

    .about-new-images {
        min-height: 340px;
    }

    .about-image-main {
        height: 275px;
        width: 87%;
    }

    .about-image-small {
        height: 115px;
    }

    .about-image-badge {
        bottom: 5px;
        padding: 9px 11px;
    }

    .about-image-badge > strong {
        font-size: 22px;
    }

    .about-image-badge small {
        font-size: 8px;
    }

    .about-image-badge b {
        font-size: 11px;
    }

    .about-image-decoration {
        width: 75px;
        height: 75px;
    }

}

/* =========================================================
   TMS ABOUT SECTION
========================================================= */

.tms-about-section {
    position: relative;
    padding: 40px 0 !important;
    background: #ffffff !important;
    overflow: hidden;
}


/* =========================================================
   LAYOUT
========================================================= */

.tms-about-layout {
    display: grid;
    grid-template-columns: 0.95fr 1.05fr;
    gap: 65px;
    align-items: center;
}


/* =========================================================
   LEFT IMAGE AREA
========================================================= */

.tms-about-images {
    position: relative;
    width: 100%;
    height: 530px;
}


/* BACK IMAGE */

.tms-about-back-image {
    position: absolute;
    top: 5px;
    left: 25px;

    width: 78%;
    height: 410px;

    overflow: hidden;

    border-radius: 25px 25px 25px 65px;

    background: #ffffff;

    border: 6px solid #ffffff;

    box-shadow:
        0 18px 40px rgba(0, 59, 158, 0.14);

    z-index: 1;
}

.tms-about-back-image img {
    width: 100%;
    height: 100%;
    display: block;

    object-fit: cover;

    transition: transform .6s ease;
}

.tms-about-back-image:hover img {
    transform: scale(1.05);
}


/* FRONT IMAGE */

.tms-about-front-image {
    position: absolute;

    right: 0;
    bottom: 0;

    width: 78%;
    height: 350px;

    padding: 6px;

    background: #ffffff;

    border: 1px solid #E4EFFF;

    overflow: hidden;

    border-radius: 25px 75px 25px 75px;

    box-shadow:
        0 20px 45px rgba(0, 59, 158, 0.20);

    z-index: 3;
}

.tms-about-front-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    border-radius: 19px 69px 19px 69px;

    transition: transform .6s ease;
}

.tms-about-front-image:hover img {
    transform: scale(1.04);
}


/* =========================================================
   GOLD RING
========================================================= */

.tms-about-ring {
    position: absolute;

    top: 55px;
    left: 15px;

    width: 32px;
    height: 32px;

    border: 4px solid #FFD84D;

    border-radius: 50%;

    background: #ffffff;

    z-index: 5;
}

.tms-about-ring::after {
    content: "";

    position: absolute;

    width: 9px;
    height: 9px;

    top: 7px;
    left: 7px;

    border-radius: 50%;

    background: #B87500;
}


/* GOLD DOT */

.tms-about-gold-dot {
    position: absolute;

    left: 35px;
    bottom: 20px;

    width: 24px;
    height: 24px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    border-radius: 50%;

    z-index: 5;
}


/* =========================================================
   RIGHT CONTENT
========================================================= */

.tms-about-content {
    position: relative;
    z-index: 5;
}


/* LABEL */

.tms-about-label {
    display: flex;
    align-items: center;
    gap: 11px;

    margin-bottom: 13px;

    color: #B87500;

    font-size: 13px;
    font-weight: 800;

    letter-spacing: 1.5px;
}

.tms-about-label i {
    width: 38px;
    height: 3px;

    display: inline-block;

    border-radius: 10px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );
}


/* =========================================================
   TITLE
========================================================= */

.tms-about-title {
    margin: 0 0 20px;

    color: #003B9E;

    font-size: 36px;

    line-height: 1.18;

    font-weight: 800;
}

.tms-about-title span {
    display: block;

    margin-top: 4px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}


/* =========================================================
   PARAGRAPHS
========================================================= */

.tms-about-p {
    margin: 0 0 16px;

    color: #000000 !important;

    line-height: 1.7;

    font-weight: 500;
    text-align: justify;
}



/* =========================================================
   LIGHT HIGHLIGHTS
========================================================= */

.tms-highlight {
    display: inline;

    padding: 2px 6px;

    border-radius: 4px;

    font-weight: 700;

    text-decoration: none !important;

    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;

    transition: all .3s ease;
}


/* LIGHT BLUE */

.blue-highlight {
    color: #0054B8 !important;
    background: #EAF3FF !important;
}

.blue-highlight:hover {
    color: #ffffff !important;
    background: #006CFF !important;
}


/* LIGHT GOLD */

.gold-highlight {
    color: #966300 !important;
    background: #FFF3C7 !important;
}

.gold-highlight:hover {
    color: #ffffff !important;
    background: #D99A00 !important;
}


/* =========================================================
   TWO FEATURE BOXES
========================================================= */

.tms-about-features {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 14px;

    margin-top: 22px;
}


.tms-feature-box {
    display: flex;

    align-items: flex-start;

    gap: 12px;

    padding: 16px;

    background: #F7FBFF;

    border: 1px solid #DCEBFA;

    border-radius: 12px;

    transition: all .35s ease;
}

.tms-feature-box:hover {
    transform: translateY(-4px);

    border-color: #FFD84D;

    box-shadow:
        0 12px 28px rgba(0, 59, 158, 0.10);
}


.tms-feature-icon {
    width: 43px;
    height: 43px;

    min-width: 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    color: #ffffff;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );

    border-radius: 50%;

    font-size: 15px;
}


.tms-feature-box h3 {
    margin: 0 0 5px;

    color: #003B9E;

    font-size: 17px;

    line-height: 1.3;

    font-weight: 800;
}


.tms-feature-box p {
    margin: 0;

    color: #000000;

    font-size: 14px;

    line-height: 1.5;
}


/* =========================================================
   BUTTON
========================================================= */

.tms-about-btn {
    display: inline-flex;

    align-items: center;

    gap: 10px;

    margin-top: 23px;

    padding: 13px 22px;

    color: #ffffff !important;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );

    border-radius: 6px;

    font-size: 14px;

    font-weight: 700;

    text-decoration: none !important;

    transition: all .35s ease;
}

.tms-about-btn:hover {
    color: #ffffff !important;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    transform: translateY(-2px);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .tms-about-section {
        padding: 55px 0 !important;
    }

    .tms-about-layout {
        grid-template-columns: 1fr;

        gap: 45px;
    }

    .tms-about-images {
        max-width: 650px;

        margin: 0 auto;

        height: 500px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .tms-about-section {
        padding: 40px 0 !important;
    }

    .tms-about-layout {
        gap: 35px;
    }

    .tms-about-images {
        height: 410px;

        width: 100%;
    }


    .tms-about-back-image {
        top: 0;
        left: 5px;

        width: 82%;
        height: 310px;

        border-radius: 20px 20px 20px 50px;
    }


    .tms-about-front-image {
        right: 0;
        bottom: 0;

        width: 78%;
        height: 270px;

        border-radius: 20px 55px 20px 55px;
    }

    .tms-about-front-image img {
        border-radius: 14px 49px 14px 49px;
    }


    .tms-about-ring {
        top: 35px;
        left: 20px;

        width: 27px;
        height: 27px;
    }


    .tms-about-gold-dot {
        left: 20px;
        bottom: 5px;

        width: 20px;
        height: 20px;
    }


    .tms-about-title {
        font-size: 28px;
    }


    .tms-p20 {
        font-size: 16px !important;
        font-weight: 500;
        text-align: justify;
    }

    .tms-p18 {
        font-size: 18px !important;
    }

    .tms-p16 {
        font-size: 16px !important;
    }


    .tms-about-features {
        grid-template-columns: 1fr;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 450px) {

    .tms-about-images {
        height: 360px;
    }

    .tms-about-back-image {
        width: 83%;
        height: 275px;
    }

    .tms-about-front-image {
        width: 79%;
        height: 235px;
    }

    .tms-about-title {
        font-size: 25px;
    }

    .tms-feature-box {
        padding: 14px;
    }

}

/* =========================================
   ABOUT IMAGE + CONTENT SAME TOP LEVEL
========================================= */

.tms-about-section .tms-about-layout {
    display: grid !important;
    grid-template-columns: 48% 52% !important;
    gap: 0 !important;
    align-items: start !important;
}

.tms-about-section .tms-about-images {
    position: relative !important;
    width: 100% !important;
    height: 530px !important;
    margin: 0 !important;
    top: 0 !important;
}

.tms-about-section .tms-about-content {
    position: relative !important;
    width: 100% !important;
    padding-left: 35px !important;
    margin: 0 !important;
    top: 0 !important;
}


/* IMAGE START EXACTLY WITH ABOUT LABEL */

.tms-about-section .tms-about-back-image {
    top: 0 !important;
    left: 0 !important;
}


/* FRONT IMAGE */

.tms-about-section .tms-about-front-image {
    right: 0 !important;
    bottom: 0 !important;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 991px) {

    .tms-about-section .tms-about-layout {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
        align-items: start !important;
    }

    .tms-about-section .tms-about-images {
        height: 450px !important;
        order: 1 !important;
    }

    .tms-about-section .tms-about-content {
        padding-left: 0 !important;
        order: 2 !important;
    }

}

/* Increase About Image Height */

.tms-about-section .tms-about-images {
    height: 620px !important;
}

.tms-about-section .tms-about-back-image {
    height: 500px !important;
}

.tms-about-section .tms-about-front-image {
    height: 390px !important;
}

/* =========================================
   WHY CHOOSE US
========================================= */

.tms-why-section {
    position: relative;
    padding: 85px 0;
    background-image: url("assets/img/normal/about_2_1.jpg");
    background-size: cover;
    background-position: center;
    overflow: hidden;
}

.tms-why-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 59, 158, 0.88);
    z-index: 1;
}

.tms-why-section .container {
    position: relative;
    z-index: 2;
}


/* =========================================
   HEADING
========================================= */

.tms-why-heading {
    max-width: 850px;
    margin: 0 auto 55px;
    text-align: center;
}

.tms-why-subtitle {
    display: inline-block;
    margin-bottom: 15px;

    color: #FFD84D;

    font-size: 13px;
    font-weight: 800;
    letter-spacing: 4px;
}

.tms-why-heading h2 {
    margin: 0 0 18px;

    color: #ffffff;

    font-size: 42px;
    line-height: 1.2;
    font-weight: 800;
}

.tms-why-heading h2 span {
    color: #FFD84D;
}

.tms-why-heading p {
    max-width: 720px;
    margin: 0 auto;

    color: rgba(255,255,255,0.85);

    font-size: 17px;
    line-height: 1.7;
}


/* =========================================
   GRID
========================================= */

.tms-why-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    row-gap: 55px;
}


/* =========================================
   ITEM
========================================= */

.tms-why-item {
    position: relative;

    padding: 0 28px;

    text-align: center;

    border-right: 1px solid rgba(255,216,77,0.35);
}

.tms-why-item:nth-child(4) {
    border-right: none;
}


/* =========================================
   RUNNING NUMBER
========================================= */

.tms-why-number {
    margin-bottom: 15px;

    color: #FFD84D;

    font-size: 32px;
    line-height: 1;

    font-weight: 800;
}


/* =========================================
   ICON
========================================= */

.tms-why-icon {
    width: 88px;
    height: 88px;

    margin: 0 auto 20px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #ffffff;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    border-radius: 50%;

    font-size: 28px;

    box-shadow:
        0 0 0 7px rgba(255,216,77,0.10);

    transition: all .4s ease;
}

.tms-why-item:hover .tms-why-icon {
    transform: translateY(-6px);
}


/* =========================================
   TITLE
========================================= */

.tms-why-item h3 {
    margin: 0;

    color: #ffffff;

    font-size: 20px;
    line-height: 1.35;
    font-weight: 800;
}


/* =========================================
   LINE
========================================= */

.tms-why-line {
    display: block;

    width: 42px;
    height: 3px;

    margin: 16px auto;

    border-radius: 10px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    transition: width .4s ease;
}

.tms-why-item:hover .tms-why-line {
    width: 70px;
}


/* =========================================
   DESCRIPTION
========================================= */

.tms-why-item p {
    max-width: 240px;

    margin: 0 auto;

    color: rgba(255,255,255,0.80);

    font-size: 15px;
    line-height: 1.7;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .tms-why-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .tms-why-item:nth-child(2),
    .tms-why-item:nth-child(4),
    .tms-why-item:nth-child(6) {
        border-right: none;
    }

    .tms-why-item:nth-child(7) {
        border-right: 1px solid rgba(255,216,77,0.35);
    }

    .tms-why-heading h2 {
        font-size: 35px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .tms-why-section {
        padding: 55px 0;
    }

    .tms-why-heading {
        margin-bottom: 40px;
    }

    .tms-why-subtitle {
        font-size: 10px;
        letter-spacing: 2px;
    }

    .tms-why-heading h2 {
        font-size: 28px;
    }

    .tms-why-heading p {
        font-size: 15px;
    }

    .tms-why-grid {
        grid-template-columns: 1fr;
        row-gap: 0;
    }

    .tms-why-item,
    .tms-why-item:nth-child(7) {
        padding: 30px 15px;

        border-right: none;

        border-bottom: 1px solid rgba(255,216,77,0.25);
    }

    .tms-why-item:first-child {
        padding-top: 0;
    }

    .tms-why-item:last-child {
        border-bottom: none;
    }

    .tms-why-number {
        font-size: 28px;
    }

    .tms-why-icon {
        width: 75px;
        height: 75px;
        font-size: 24px;
    }

    .tms-why-item h3 {
        font-size: 19px;
    }

    .tms-why-item p {
        font-size: 14px;
    }
}

.tms-why-number {
    margin-bottom: 15px;
    color: #FFD84D;
    font-size: 38px;
    line-height: 1;
    font-weight: 800;
}

.tms-number-247 {
    letter-spacing: 1px;
}

/* ================================
   3 FEATURES - SAME ROW
================================ */

.tms-why-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    width: 100%;
    max-width: 1050px;
    margin: 0 auto;
}


/* EACH FEATURE */

.tms-why-item {
    position: relative;
    padding: 0 35px;
    text-align: center;
    border-right: 1px solid rgba(255, 216, 77, 0.35);
}


/* REMOVE LAST LINE */

.tms-why-item:last-child {
    border-right: none;
}


/* NUMBER */

.tms-why-number {
    margin-bottom: 15px;
    color: #FFD84D;
    font-size: 40px;
    line-height: 1;
    font-weight: 800;
}


/* ICON */

.tms-why-icon {
    width: 88px;
    height: 88px;
    margin: 0 auto 20px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #fff;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    border-radius: 50%;

    font-size: 28px;

    box-shadow: 0 0 0 7px rgba(255,216,77,0.10);
}


/* TITLE */

.tms-why-item h3 {
    margin: 0;

    color: #fff;

    font-size: 20px;
    line-height: 1.35;
    font-weight: 800;
}


/* GOLD LINE */

.tms-why-line {
    display: block;

    width: 42px;
    height: 3px;

    margin: 16px auto;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    border-radius: 10px;
}


/* DESCRIPTION */

.tms-why-item p {
    max-width: 250px;
    margin: 0 auto;

    color: rgba(255,255,255,0.80);

    font-size: 15px;
    line-height: 1.7;
}


/* ================================
   TABLET
================================ */

@media (max-width: 991px) {

    .tms-why-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .tms-why-item {
        padding: 0 18px;
    }

    .tms-why-number {
        font-size: 34px;
    }

    .tms-why-item h3 {
        font-size: 17px;
    }

}


/* ================================
   MOBILE
================================ */

@media (max-width: 767px) {

    .tms-why-grid {
        grid-template-columns: 1fr;
        max-width: 100%;
    }

    .tms-why-item {
        padding: 30px 15px;

        border-right: none;
        border-bottom: 1px solid rgba(255,216,77,0.30);
    }

    .tms-why-item:last-child {
        border-bottom: none;
    }

    .tms-why-number {
        font-size: 32px;
    }

}

/* ================================
   COMPACT 3 FEATURE ALIGNMENT
================================ */

.tms-why-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    width: 100% !important;
    max-width: 900px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.tms-why-item {
    padding: 0 15px !important;
    text-align: center !important;
    border-right: 1px solid rgba(255,216,77,0.35);
}

/* NUMBER */

.tms-why-number {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;

    margin: 0 0 12px !important;

    color: #FFD84D !important;
    font-size: 40px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

/* ICON */

.tms-why-icon {
    width: 82px !important;
    height: 82px !important;

    margin: 0 auto 18px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    font-size: 27px !important;
}

/* TITLE */

.tms-why-item h3 {
    margin: 0 auto !important;

    max-width: 270px !important;

    font-size: 19px !important;
    line-height: 1.3 !important;
}

/* LINE */

.tms-why-line {
    width: 42px !important;
    height: 3px !important;

    margin: 14px auto !important;
}

/* DESCRIPTION */

.tms-why-item p {
    max-width: 240px !important;
    margin: 0 auto !important;

    font-size: 15px !important;
    line-height: 1.6 !important;
}

/* LAST COLUMN */

.tms-why-item:last-child {
    border-right: none !important;
}


/* MOBILE */

@media (max-width: 767px) {

    .tms-why-grid {
        grid-template-columns: 1fr !important;
        max-width: 100% !important;
    }

    .tms-why-item {
        padding: 25px 10px !important;
        border-right: none !important;
        border-bottom: 1px solid rgba(255,216,77,0.3);
    }

    .tms-why-item:last-child {
        border-bottom: none !important;
    }

}

/* NUMBER BELOW ICON */

.tms-why-item {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
}

.tms-why-icon {
    order: 1 !important;
    margin: 0 auto 12px !important;
}

.tms-why-number {
    order: 2 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    margin: 0 0 14px !important;

    color: #FFD84D !important;
    font-size: 40px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

.tms-why-item h3 {
    order: 3 !important;
}

.tms-why-line {
    order: 4 !important;
}

.tms-why-item p {
    order: 5 !important;
}

.tms-why-section {
    position: relative;
    padding: 85px 0;
    background-image: url("assets/img/normal/about_2_1.jpg");
    background-size: cover;
    background-position: center;
    overflow: hidden;
}

.tms-why-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 59, 158, 0.88);
    z-index: 1;
}

.tms-why-section .container {
    position: relative;
    z-index: 2;
}


/* HEADING */

.tms-why-heading {
    max-width: 850px;
    margin: 0 auto 55px;
    text-align: center;
}

.tms-why-subtitle {
    display: inline-block;
    margin-bottom: 15px;
    color: #FFD84D;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 4px;
}

.tms-why-heading h2 {
    margin: 0 0 18px;
    color: #fff;
    font-size: 42px;
    line-height: 1.2;
    font-weight: 800;
}

.tms-why-heading h2 span {
    color: #FFD84D;
}

.tms-why-heading p {
    max-width: 720px;
    margin: 0 auto;
    color: rgba(255,255,255,.85);
    font-size: 17px;
    line-height: 1.7;
}


/* 3 FEATURES */

.tms-why-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    max-width: 950px;
    margin: 0 auto;
}


/* ITEM */

.tms-why-item {
    padding: 0 25px;
    text-align: center;
    border-right: 1px solid rgba(255,216,77,.35);
}

.tms-why-item:last-child {
    border-right: none;
}


/* ICON */

.tms-why-icon {
    width: 82px;
    height: 82px;
    margin: 0 auto 14px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #fff;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    border-radius: 50%;
    font-size: 27px;
}


/* NUMBER BELOW ICON */

.tms-why-number {
    min-height: 45px;
    margin-bottom: 12px;

    color: #FFD84D;
    font-size: 40px;
    font-weight: 800;
    line-height: 1;
}


/* TITLE */

.tms-why-item h3 {
    margin: 0;
    color: #fff;
    font-size: 19px;
    line-height: 1.35;
    font-weight: 800;
}


/* LINE */

.tms-why-line {
    display: block;
    width: 42px;
    height: 3px;
    margin: 15px auto;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );
}


/* DESCRIPTION */

.tms-why-item p {
    max-width: 245px;
    margin: 0 auto;

    color: rgba(255,255,255,.80);
    font-size: 15px;
    line-height: 1.65;
}


/* MOBILE */

@media (max-width: 767px) {

    .tms-why-section {
        padding: 60px 0;
    }

    .tms-why-heading h2 {
        font-size: 29px;
    }

    .tms-why-heading p {
        font-size: 15px;
    }

    .tms-why-grid {
        grid-template-columns: 1fr;
        max-width: 100%;
    }

    .tms-why-item {
        padding: 30px 10px;
        border-right: none;
        border-bottom: 1px solid rgba(255,216,77,.30);
    }

    .tms-why-item:last-child {
        border-bottom: none;
    }

}

.tms-why-section {
    padding: 40px 0 !important;
}

.tms-why-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    width: 100% !important;
    max-width: 1150px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.tms-why-item {
    padding: 0 20px !important;
}

.tms-why-grid {
    max-width: 1300px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.tms-why-item {
    padding: 0 10px !important;
}

.tms-services-section {
    padding: 40px 0 !important;
    background: #fff !important;
    overflow: hidden;
}

/* HEADING */

.tms-services-heading {
    max-width: 800px;
    margin: 0 auto 40px;
    text-align: center;
}

.tms-services-label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: 12px;
    color: #003B9E;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 3px;
}

.tms-services-label span {
    width: 30px;
    height: 2px;
    background: #FFD84D;
}

.tms-services-heading h2 {
    margin: 0 0 12px;
    color: #08203f;
    font-size: 38px;
    font-weight: 800;
}

.tms-services-heading h2 strong {
    color: #003B9E;
}

.tms-services-heading p {
    margin: 0;
    color: #555;
    font-size: 16px;
    line-height: 1.6;
}


/* SLIDER */

.tms-services-slider {
    width: 100%;
    overflow: hidden;
}

.tms-services-track {
    display: flex;
    width: max-content;
    gap: 22px;
    animation: tmsServiceScroll 35s linear infinite;
}


/* CARD */

.tms-service-card {
    flex: 0 0 300px;
    width: 300px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e2e8f2;
    border-radius: 18px;
    box-shadow: 0 8px 25px rgba(0, 59, 158, .08);
    transition: .3s ease;
}

.tms-service-card:hover {
    transform: translateY(-7px);
    border-color: #FFD84D;
}


/* IMAGE */

.tms-service-image {
    position: relative;
    height: 180px;
    overflow: hidden;
}

.tms-service-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .5s ease;
}

.tms-service-card:hover img {
    transform: scale(1.08);
}


/* NUMBER */

.tms-service-number {
    position: absolute;
    left: 15px;
    bottom: 15px;

    width: 45px;
    height: 45px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #003B9E;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    border-radius: 50%;
    font-size: 14px;
    font-weight: 900;
}


/* CONTENT */

.tms-service-content {
    padding: 20px;
}

.tms-service-content h3 {
    margin: 0 0 9px;
    color: #003B9E;
    font-size: 19px;
    font-weight: 800;
}

.tms-service-content p {
    height: 70px;
    margin: 0 0 15px;
    color: #555;
    font-size: 13px;
    line-height: 1.6;
}


/* BUTTON */

.tms-service-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    padding: 8px 14px;

    color: #fff !important;
    background: linear-gradient(
        90deg,
        #003B9E,
        #006CFF,
        #003B9E
    );

    border-radius: 6px;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none !important;
}


/* NONSTOP AUTO SCROLL */

@keyframes tmsServiceScroll {

    0% {
        transform: translateX(0);
    }

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

}


/* PAUSE ON HOVER */

.tms-services-track:hover {
    animation-play-state: paused;
}


/* MOBILE */

@media (max-width: 767px) {

    .tms-services-section {
        padding: 45px 0 !important;
    }

    .tms-services-heading h2 {
        font-size: 28px;
    }

    .tms-services-heading p {
        font-size: 14px;
    }

    .tms-services-track {
        gap: 15px;
        animation-duration: 28s;
    }

    .tms-service-card {
        flex: 0 0 280px;
        width: 280px;
    }

}

/* =========================================================
   ABOUT SECTION
========================================================= */

.tms-about-section {
    position: relative;
    overflow: hidden;
    padding: 100px 0 110px;
    background: #f7f6f4;
}


/* =========================================================
   DARK LEFT BACKGROUND SHAPE
========================================================= */

.tms-about-bg-shape {
    position: absolute;
    left: -12%;
    top: 0;
    width: 42%;
    height: 100%;
    background: #15161b;
    clip-path: polygon(0 0, 100% 0, 82% 100%, 0 100%);
    z-index: 0;
}


/* =========================================================
   MAIN LAYOUT
========================================================= */

.tms-about-layout {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns: 48% 52%;
    align-items: center;

    max-width: 1250px;
    margin: 0 auto;
}


/* =========================================================
   LEFT IMAGE AREA
========================================================= */

.tms-about-images {
    position: relative;

    width: 620px;
    height: 570px;

    margin-left: -25px;
}


/* =========================================================
   MAIN CIRCLE IMAGE
========================================================= */

.tms-about-main-image {
    position: absolute;

    width: 535px;
    height: 535px;

    left: 25px;
    top: 5px;

    border-radius: 50%;

    border: 14px solid #ffffff;

    overflow: hidden;

    z-index: 2;
}


.tms-about-main-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    display: block;
}


/* =========================================================
   SMALL CIRCLE IMAGE
========================================================= */

.tms-about-small-image {
    position: absolute;

    width: 245px;
    height: 245px;

    right: 0;
    bottom: 5px;

    border-radius: 50%;

    border: 12px solid #ffffff;

    overflow: hidden;

    z-index: 5;

    background: #fff;
}


.tms-about-small-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    display: block;
}


/* =========================================================
   DOT PATTERN
========================================================= */

.tms-about-dots {
    position: absolute;

    width: 100px;
    height: 100px;

    left: 0;
    bottom: 15px;

    background-image: radial-gradient(
        #777 1.5px,
        transparent 1.5px
    );

    background-size: 16px 16px;

    opacity: .45;

    z-index: 1;
}


/* =========================================================
   RIGHT CONTENT
========================================================= */

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


/* =========================================================
   ABOUT LABEL
========================================================= */

.tms-about-label {
    display: flex;
    align-items: center;
    gap: 12px;

    margin-bottom: 15px;

    color: #2454d8;

    font-size: 19px;
    font-weight: 500;

    font-style: italic;

    text-transform: uppercase;
}


.tms-label-square {
    position: relative;

    width: 9px;
    height: 9px;

    background: #2454d8;

    display: inline-block;
}


.tms-label-square::after {
    content: "";

    position: absolute;

    width: 7px;
    height: 7px;

    left: 7px;
    top: 7px;

    background: #ffad00;
}


/* =========================================================
   TITLE
========================================================= */

.tms-about-title {
    margin: 0 0 18px;

    max-width: 600px;

    font-size: 39px;
    line-height: 1.22;

    font-weight: 700;

    color: #252525;
}


.tms-about-title span {
    color: #ffad00;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.tms-about-description {
    max-width: 620px;

    margin: 0 0 28px;

    font-size: 16px;
    line-height: 1.7;

    color: #000;
    text-align: justify;
}


/* =========================================================
   ABOUT ITEM
========================================================= */

.tms-about-item {
    display: flex;
    align-items: center;

    gap: 22px;

    margin-bottom: 22px;
}


/* =========================================================
   ICON
========================================================= */

.tms-about-icon {
    position: relative;

    flex: 0 0 60px;

    width: 60px;
    height: 60px;

    border-radius: 50%;

    background: #ffad00;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #fff;

    font-size: 24px;
}


.tms-about-icon span {
    position: absolute;

    right: -3px;
    top: -7px;

    width: 23px;
    height: 23px;

    border-radius: 50%;

    background: #2454d8;

    border: 2px solid #fff;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #fff;

    font-size: 10px;
    font-weight: 700;
}


/* =========================================================
   ITEM CONTENT
========================================================= */

.tms-about-item-content {
    flex: 1;

    background: linear-gradient(
        90deg,
        #eeeeee,
        transparent
    );

    padding: 8px 15px;
}


.tms-about-item-content h4 {
    margin: 0 0 7px;

    font-size: 19px;
    line-height: 1.3;

    color: #292929;

    font-weight: 700;
}


.tms-about-item-content p {
    margin: 0;

    color: #666;

    font-size: 15px;
    line-height: 1.55;
    text-align: justify;
}


/* =========================================================
   BUTTON
========================================================= */

.tms-about-btn {
    display: inline-flex;

    align-items: center;
    gap: 15px;

    margin-top: 15px;

    padding: 15px 25px;

    background: #2454d8;

    color: #fff !important;

    text-decoration: none;

    font-size: 16px;
    font-weight: 600;

    transition: all .3s ease;

    clip-path: polygon(
        0 0,
        92% 0,
        100% 50%,
        92% 100%,
        0 100%
    );
}


.tms-about-btn i {
    font-size: 14px;
}


.tms-about-btn:hover {
    background: #ffad00;

    transform: translateX(5px);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1199px) {

    .tms-about-layout {
        grid-template-columns: 46% 54%;
    }

    .tms-about-images {
        width: 500px;
        height: 500px;
    }

    .tms-about-main-image {
        width: 430px;
        height: 430px;
    }

    .tms-about-small-image {
        width: 190px;
        height: 190px;
    }

    .tms-about-title {
        font-size: 34px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .tms-about-section {
        padding: 70px 0 70px;
    }


    /* Remove desktop dark shape */
    .tms-about-bg-shape {
        display: none;
    }


    .tms-about-layout {
        display: flex;
        flex-direction: column;

        gap: 55px;
    }


    /* IMAGE AREA */

    .tms-about-images {
        width: 100%;
        max-width: 430px;

        height: 390px;

        margin: 0 auto;
    }


    .tms-about-main-image {
        width: 330px;
        height: 330px;

        left: 5px;
        top: 0;

        border-width: 10px;
    }


    .tms-about-small-image {
        width: 155px;
        height: 155px;

        right: 0;
        bottom: 0;

        border-width: 9px;
    }


    .tms-about-dots {
        width: 70px;
        height: 70px;

        bottom: 0;
        left: 0;

        background-size: 12px 12px;
    }


    /* CONTENT */

    .tms-about-content {
        padding: 0 15px;
    }


    .tms-about-label {
        font-size: 16px;
    }


    .tms-about-title {
        font-size: 30px;
        line-height: 1.25;
    }


    .tms-about-description {
        font-size: 15px;
        line-height: 1.7;
    }


    .tms-about-item {
        align-items: flex-start;
        gap: 14px;
    }


    .tms-about-icon {
        flex: 0 0 52px;

        width: 52px;
        height: 52px;

        font-size: 19px;
    }


    .tms-about-item-content {
        padding: 5px 10px;
    }


    .tms-about-item-content h4 {
        font-size: 16px;
    }


    .tms-about-item-content p {
        font-size: 14px;
    }


    .tms-about-btn {
        font-size: 13px;
        padding: 13px 20px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 400px) {

    .tms-about-images {
        height: 340px;
    }


    .tms-about-main-image {
        width: 285px;
        height: 285px;
    }


    .tms-about-small-image {
        width: 135px;
        height: 135px;
    }


    .tms-about-title {
        font-size: 27px;
    }

}

/* Main Button */
.tms-about-btn {
    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );
}


/* Icon */
.tms-about-icon {
    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );
}


/* Highlighted heading */
.tms-about-title span {
    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}


/* About label */
.tms-about-label {
    color: #006CFF;
}

.tms-about-bg-shape {
    position: absolute;
    left: -12%;
    top: 0;
    width: 42%;
    height: 100%;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );

    clip-path: polygon(
        0 0,
        100% 0,
        82% 100%,
        0 100%
    );

    z-index: 0;
}

/* =========================================================
   TMS SERVICES SECTION
========================================================= */

.tms-services-section {
    position: relative;
    overflow: hidden;

    padding: 100px 0 110px;

    background: #f7f7f7;
}


/* =========================================================
   HEADING
========================================================= */

.tms-services-heading {
    max-width: 780px;

    margin: 0 auto 55px;

    text-align: center;
}


.tms-services-label {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    color: #006CFF;

    font-size: 16px;

    font-weight: 600;

    font-style: italic;

    letter-spacing: 1px;
}


.tms-services-label span {
    display: inline-block;

    width: 35px;
    height: 2px;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );
}


.tms-services-heading h2 {
    margin: 12px 0 15px;

    color: #222;

    font-size: 42px;

    line-height: 1.2;

    font-weight: 700;
}


.tms-services-heading h2 strong {
    display: block;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;

    background-clip: text;
}


.tms-services-heading p {
    max-width: 650px;

    margin: 0 auto;

    color: #777;

    font-size: 16px;

    line-height: 1.7;
}


/* =========================================================
   SLIDER
========================================================= */

.tms-services-slider {
    position: relative;

    width: 100%;

    overflow: hidden;
}


.tms-services-track {
    display: flex;

    gap: 30px;

    width: max-content;

    animation: tmsServiceScroll 40s linear infinite;
}


/* AUTO SCROLL */

@keyframes tmsServiceScroll {

    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }

}


/* Pause on hover */

.tms-services-slider:hover .tms-services-track {
    animation-play-state: paused;
}


/* =========================================================
   SERVICE CARD
========================================================= */

.tms-service-card {
    position: relative;

    width: 370px;

    min-width: 370px;

    background: #fff;

    border: 3px solid transparent;

    overflow: hidden;

    box-shadow:
        0 10px 35px rgba(0, 59, 158, 0.10);

    transition:
        background .4s ease,
        transform .4s ease,
        border-color .4s ease,
        box-shadow .4s ease;
}


.tms-service-card:hover,
.tms-service-card.active {

    background: #15161b;

    border-color: #FFD84D;

    transform: translateY(-8px);

    box-shadow:
        0 18px 45px rgba(0, 59, 158, 0.20);
}


/* =========================================================
   IMAGE
========================================================= */

.tms-service-image {
    position: relative;

    height: 245px;

    overflow: visible;

    background: #ddd;
}


.tms-service-image img {
    display: block;

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform .5s ease;
}


.tms-service-card:hover .tms-service-image img {
    transform: scale(1.06);
}


/* =========================================================
   IMAGE WHITE CURVE
========================================================= */

.tms-service-image::after {

    content: "";

    position: absolute;

    left: 0;

    right: 0;

    bottom: -1px;

    height: 65px;

    background: #fff;

    clip-path: polygon(
        0 30%,
        20% 48%,
        40% 72%,
        50% 100%,
        60% 72%,
        80% 48%,
        100% 30%,
        100% 100%,
        0 100%
    );

    z-index: 2;

    transition: background .4s ease;
}


.tms-service-card:hover .tms-service-image::after,
.tms-service-card.active .tms-service-image::after {
    background: #15161b;
}


/* =========================================================
   NUMBER
========================================================= */

.tms-service-number {

    position: absolute;

    top: 15px;

    right: 15px;

    z-index: 15;

    width: 48px;

    height: 48px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    color: #fff;

    font-size: 13px;

    font-weight: 700;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );

    border: 3px solid #fff;

    transition: all .4s ease;
}


.tms-service-card:hover .tms-service-number,
.tms-service-card.active .tms-service-number {

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    transform: scale(1.08);
}


/* =========================================================
   CENTER ICON
========================================================= */

.tms-service-icon {

    position: absolute;

    left: 50%;

    bottom: -45px;

    transform: translateX(-50%);

    z-index: 20;

    width: 92px;

    height: 92px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    border: 7px solid #fff;

    color: #fff;

    font-size: 29px;

    box-shadow:
        0 6px 20px rgba(0, 0, 0, 0.12);

    transition: all .4s ease;
}


.tms-service-icon i {

    display: block;

    color: #fff;

    line-height: 1;

    font-size: 29px;
}


/* HOVER ICON */

.tms-service-card:hover .tms-service-icon,
.tms-service-card.active .tms-service-icon {

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );

    transform:
        translateX(-50%)
        scale(1.08);
}


/* =========================================================
   CONTENT
========================================================= */

.tms-service-content {

    position: relative;

    z-index: 10;

    padding: 58px 30px 35px;

    text-align: center;

    background: #fff;

    transition: background .4s ease;
}


.tms-service-card:hover .tms-service-content,
.tms-service-card.active .tms-service-content {

    background: #15161b;
}


/* =========================================================
   TITLE
========================================================= */

.tms-service-content h3 {

    margin: 0 0 14px;

    color: #222;

    font-size: 21px;

    line-height: 1.3;

    font-weight: 700;

    transition: color .4s ease;
}


.tms-service-card:hover .tms-service-content h3,
.tms-service-card.active .tms-service-content h3 {

    color: #fff;
}


/* =========================================================
   TEXT
========================================================= */

.tms-service-content p {

    margin: 0 0 23px;

    color: #777;

    font-size: 15px;

    line-height: 1.7;

    transition: color .4s ease;
}


.tms-service-card:hover .tms-service-content p,
.tms-service-card.active .tms-service-content p {

    color: #d7d7d7;
}


/* =========================================================
   BUTTON
========================================================= */

.tms-service-btn {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 12px;

    padding: 12px 20px;

    min-width: 145px;

    text-decoration: none !important;

    color: #fff !important;

    font-size: 14px;

    font-weight: 600;

    border-radius: 3px;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );

    transition: all .35s ease;
}


.tms-service-btn:hover {

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    transform: translateX(4px);
}


/* =========================================================
   NEXT BUTTON
========================================================= */

.tms-service-next {

    position: absolute;

    right: 25px;

    top: 50%;

    transform: translateY(-50%);

    z-index: 50;

    width: 58px;

    height: 58px;

    border: none;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    cursor: pointer;

    color: #fff;

    font-size: 17px;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );

    box-shadow:
        0 6px 20px rgba(0, 59, 158, .30);

    transition: all .3s ease;
}


.tms-service-next:hover {

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    transform:
        translateY(-50%)
        scale(1.1);
}


.tms-service-next i {
    color: #fff;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1199px) {

    .tms-service-card {

        width: 340px;

        min-width: 340px;
    }

    .tms-service-next {

        right: 15px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .tms-services-section {

        padding: 70px 0 75px;
    }


    .tms-services-heading {

        padding: 0 20px;

        margin-bottom: 40px;
    }


    .tms-services-heading h2 {

        font-size: 30px;
    }


    .tms-services-heading p {

        font-size: 14px;
    }


    .tms-services-label {

        font-size: 14px;
    }


    .tms-services-track {

        gap: 20px;

        animation-duration: 30s;
    }


    .tms-service-card {

        width: 310px;

        min-width: 310px;
    }


    .tms-service-image {

        height: 210px;
    }


    .tms-service-icon {

        width: 74px;

        height: 74px;

        bottom: -37px;

        font-size: 23px;

        border-width: 6px;
    }


    .tms-service-icon i {

        font-size: 23px;
    }


    .tms-service-content {

        padding:
            50px
            22px
            30px;
    }


    .tms-service-content h3 {

        font-size: 19px;
    }


    .tms-service-content p {

        font-size: 14px;
    }


    .tms-service-next {

        width: 48px;

        height: 48px;

        right: 10px;

        font-size: 14px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 400px) {

    .tms-service-card {

        width: 290px;

        min-width: 290px;
    }


    .tms-service-image {

        height: 195px;
    }

}

/* =========================================
   ACTIVE CARD - BLUE THEME
========================================= */

.tms-service-card:hover,
.tms-service-card.active {
    background: linear-gradient(
        135deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );

    border-color: #FFD84D;

    transform: translateY(-8px);

    box-shadow: 0 18px 45px rgba(0, 59, 158, 0.25);
}


/* =========================================
   ACTIVE IMAGE CURVE
========================================= */

.tms-service-card:hover .tms-service-image::after,
.tms-service-card.active .tms-service-image::after {
    background: #006CFF;
}


/* =========================================
   ACTIVE CONTENT
========================================= */

.tms-service-card:hover .tms-service-content,
.tms-service-card.active .tms-service-content {
    background: transparent;
}


/* =========================================
   ACTIVE TITLE
========================================= */

.tms-service-card:hover .tms-service-content h3,
.tms-service-card.active .tms-service-content h3 {
    color: #fff;
}


/* =========================================
   ACTIVE DESCRIPTION
========================================= */

.tms-service-card:hover .tms-service-content p,
.tms-service-card.active .tms-service-content p {
    color: rgba(255, 255, 255, 0.90);
}


/* =========================================
   ACTIVE ICON = GOLD
========================================= */

.tms-service-card:hover .tms-service-icon,
.tms-service-card.active .tms-service-icon {
    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    color: #fff;

    transform: translateX(-50%) scale(1.08);
}


/* =========================================
   ACTIVE NUMBER = GOLD
========================================= */

.tms-service-card:hover .tms-service-number,
.tms-service-card.active .tms-service-number {
    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    color: #fff;
}


/* =========================================
   ACTIVE BUTTON = GOLD
========================================= */

.tms-service-card:hover .tms-service-btn,
.tms-service-card.active .tms-service-btn {
    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    color: #fff !important;
}

/* =========================================================
   FIX ACTIVE BLUE CARD WHITE GAP
   Paste this at the VERY END of CSS
========================================================= */


/* CARD */

.tms-service-card {
    overflow: hidden;
}


/* IMAGE */

.tms-service-image {
    position: relative;
    overflow: visible;
    margin-bottom: 0;
}


/* NORMAL IMAGE CURVE */

.tms-service-image::after {
    content: "";

    position: absolute;

    left: -2px;
    right: -2px;

    bottom: -1px;

    height: 68px;

    background: #fff;

    z-index: 2;

    clip-path: polygon(
        0 25%,
        15% 38%,
        30% 52%,
        45% 72%,
        50% 100%,
        55% 72%,
        70% 52%,
        85% 38%,
        100% 25%,
        100% 100%,
        0 100%
    );
}


/* =========================================================
   ACTIVE CARD
========================================================= */

.tms-service-card:hover,
.tms-service-card.active {

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );

    border: 2px solid #FFD84D;

    transform: translateY(-8px);
}


/* ACTIVE IMAGE AREA */

.tms-service-card:hover .tms-service-image,
.tms-service-card.active .tms-service-image {
    background: #006CFF;
}


/* ACTIVE CURVE */

.tms-service-card:hover .tms-service-image::after,
.tms-service-card.active .tms-service-image::after {

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );

    bottom: -2px;
}


/* =========================================================
   ACTIVE CONTENT
========================================================= */

.tms-service-card:hover .tms-service-content,
.tms-service-card.active .tms-service-content {

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );

    margin-top: -1px;
}


/* Remove any white border between image/content */

.tms-service-card:hover .tms-service-content,
.tms-service-card.active .tms-service-content {

    border-top: none !important;
}


/* =========================================================
   ACTIVE TITLE
========================================================= */

.tms-service-card:hover .tms-service-content h3,
.tms-service-card.active .tms-service-content h3 {
    color: #fff;
}


/* =========================================================
   ACTIVE DESCRIPTION
========================================================= */

.tms-service-card:hover .tms-service-content p,
.tms-service-card.active .tms-service-content p {
    color: rgba(255, 255, 255, 0.92);
}


/* =========================================================
   GOLD ICON
========================================================= */

.tms-service-card:hover .tms-service-icon,
.tms-service-card.active .tms-service-icon {

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    border-color: #fff;

    transform:
        translateX(-50%)
        scale(1.08);
}


/* =========================================================
   GOLD NUMBER
========================================================= */

.tms-service-card:hover .tms-service-number,
.tms-service-card.active .tms-service-number {

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );
}


/* =========================================================
   GOLD BUTTON
========================================================= */

.tms-service-card:hover .tms-service-btn,
.tms-service-card.active .tms-service-btn {

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    color: #fff !important;
}

/* =========================================
   SERVICES SECTION BACKGROUND
========================================= */

.tms-services-section {
    background: #f3f7ff !important;
}


/* Optional soft blue decorative background */

.tms-services-section::before {
    content: "";
    position: absolute;

    width: 450px;
    height: 450px;

    top: -180px;
    left: -180px;

    border-radius: 50%;

    background: rgba(0, 108, 255, 0.06);

    pointer-events: none;
}


.tms-services-section::after {
    content: "";
    position: absolute;

    width: 400px;
    height: 400px;

    right: -180px;
    bottom: -150px;

    border-radius: 50%;

    background: rgba(255, 216, 77, 0.08);

    pointer-events: none;
}


/* Keep content above decoration */

.tms-services-section .container,
.tms-services-section .tms-services-slider {
    position: relative;
    z-index: 2;
}

/* =========================================================
   TMS INDUSTRIES SECTION
========================================================= */

.tms-industries-section {
    position: relative;
    overflow: hidden;

    padding: 40px 0;

    background: #ffffff;
}


/* =========================================================
   HEADING
========================================================= */

.tms-industries-heading {
    max-width: 760px;

    margin: 0 auto 58px;

    text-align: center;
}


.tms-industries-label {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 12px;

    color: #006CFF;

    font-size: 15px;

    font-weight: 700;

    font-style: italic;

    letter-spacing: 1px;
}


.tms-industries-label i {
    display: block;

    width: 32px;
    height: 3px;

    border-radius: 5px;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );
}


.tms-industries-heading h2 {
    margin: 14px 0 16px;

    color: #222222;

    font-size: 42px;

    line-height: 1.2;

    font-weight: 700;
}


.tms-industries-heading h2 strong {
    display: block;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;

    background-clip: text;
}


.tms-industries-heading p {
    max-width: 670px;

    margin: 0 auto;

    color: #777777;

    font-size: 16px;

    line-height: 1.75;
}


/* =========================================================
   SLIDER
========================================================= */

.tms-industries-slider {
    width: 100%;

    overflow: hidden;
}


.tms-industries-track {
    display: flex;

    align-items: flex-start;

    gap: 32px;

    width: max-content;

    animation:
        tmsIndustriesScroll
        45s
        linear
        infinite;
}


.tms-industries-slider:hover
.tms-industries-track {
    animation-play-state: paused;
}


@keyframes tmsIndustriesScroll {

    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }

}


/* =========================================================
   INDUSTRY ITEM
========================================================= */

.tms-industry-item {
    width: 270px;

    min-width: 270px;

    text-align: center;
}


/* =========================================================
   CIRCLE IMAGE
========================================================= */

.tms-industry-image {
    position: relative;

    width: 270px;
    height: 270px;

    padding: 7px;

    border-radius: 50%;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    box-shadow:
        0 8px 25px rgba(0, 59, 158, 0.12);

    transition:
        transform .4s ease,
        box-shadow .4s ease;
}


/* INNER WHITE BORDER */

.tms-industry-image::before {
    content: "";

    position: absolute;

    inset: 7px;

    border-radius: 50%;

    border: 3px solid #ffffff;

    z-index: 2;

    pointer-events: none;
}


/* IMAGE */

.tms-industry-image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    border-radius: 50%;

    transition:
        transform .5s ease;
}


/* =========================================================
   BLUE HOVER OVERLAY
========================================================= */

.tms-industry-overlay {
    position: absolute;

    inset: 7px;

    z-index: 3;

    border-radius: 50%;

    background: linear-gradient(
        135deg,
        rgba(0, 59, 158, 0.05),
        rgba(0, 108, 255, 0.35)
    );

    opacity: 0;

    transition: opacity .4s ease;

    pointer-events: none;
}


.tms-industry-item:hover
.tms-industry-overlay {
    opacity: 1;
}


/* =========================================================
   HOVER IMAGE
========================================================= */

.tms-industry-item:hover
.tms-industry-image {

    transform: translateY(-10px);

    box-shadow:
        0 18px 40px rgba(0, 59, 158, 0.28);
}


.tms-industry-item:hover
.tms-industry-image img {

    transform: scale(1.07);
}


/* =========================================================
   TITLE
========================================================= */

.tms-industry-item h3 {

    margin: 19px 0 0;

    color: #222222;

    font-size: 19px;

    line-height: 1.35;

    font-weight: 700;

    transition:
        color .3s ease,
        transform .3s ease;
}


.tms-industry-item:hover h3 {

    color: #006CFF;

    transform: translateY(-2px);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .tms-industries-section {
        padding: 80px 0 85px;
    }

    .tms-industries-heading h2 {
        font-size: 36px;
    }

    .tms-industry-item {
        width: 230px;
        min-width: 230px;
    }

    .tms-industry-image {
        width: 230px;
        height: 230px;
    }

    .tms-industries-track {
        gap: 25px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .tms-industries-section {
        padding: 65px 0 70px;
    }


    .tms-industries-heading {
        padding: 0 20px;

        margin-bottom: 42px;
    }


    .tms-industries-heading h2 {
        font-size: 30px;
    }


    .tms-industries-heading p {
        font-size: 14px;
    }


    .tms-industries-label {
        font-size: 13px;
    }


    .tms-industry-item {
        width: 190px;
        min-width: 190px;
    }


    .tms-industry-image {
        width: 190px;
        height: 190px;

        padding: 6px;
    }


    .tms-industry-image::before {
        inset: 6px;
    }


    .tms-industry-overlay {
        inset: 6px;
    }


    .tms-industry-item h3 {
        margin-top: 15px;

        font-size: 16px;
    }


    .tms-industries-track {
        gap: 20px;

        animation-duration: 35s;
    }

}

/* =========================================================
   TMS CTA SECTION
   BLUE + GOLD THEME
========================================================= */

.tms-cta-section {

    position: relative;

    padding: 40px 0;

    background: #f3f7ff;

    overflow: hidden;
}


/* =========================================================
   MAIN WRAPPER
========================================================= */

.tms-cta-wrapper {

    position: relative;

    display: grid;

    grid-template-columns: 1.15fr .85fr;

    align-items: center;

    gap: 55px;

    padding: 65px 45px;

    border-radius: 24px;

    overflow: hidden;

    background: linear-gradient(
        115deg,
        #003B9E 0%,
        #006CFF 48%,
        #003B9E 100%
    );

    box-shadow:
        0 20px 55px rgba(0, 59, 158, .20);
}


/* =========================================================
   LEFT CONTENT
========================================================= */

.tms-cta-content {

    position: relative;

    z-index: 5;
}


.tms-cta-label {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 18px;

    color: #FFD84D;

    font-size: 15px;

    font-weight: 800;

    letter-spacing: 1.3px;
}


.tms-cta-label i {

    display: block;

    width: 28px;

    height: 3px;

    border-radius: 5px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );
}


/* =========================================================
   HEADING
========================================================= */

.tms-cta-content h2 {

    max-width: 650px;

    margin: 0 0 20px;

    color: #ffffff;

    font-size: 42px;

    line-height: 1.18;

    font-weight: 700;
}


.tms-cta-content h2 span {

    display: inline;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;

    background-clip: text;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.tms-cta-content p {

    max-width: 650px;

    margin: 0 0 14px;

    color: rgba(255, 255, 255, .88);

    font-size: 16px;

    line-height: 1.75;
}


.tms-cta-content p strong {

    color: #FFD84D;

    font-weight: 700;
}


.tms-cta-small-text {

    color: rgba(255, 255, 255, .75) !important;
}


/* =========================================================
   BUTTONS
========================================================= */

.tms-cta-buttons {

    display: flex;

    align-items: center;

    gap: 14px;

    margin-top: 28px;
}


.tms-cta-btn {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 18px;

    min-height: 54px;

    padding: 7px 8px 7px 24px;

    border-radius: 50px;

    text-decoration: none !important;

    font-size: 15px;

    font-weight: 700;

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}


.tms-cta-btn span {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 40px;

    height: 40px;

    border-radius: 50%;
}


/* PRIMARY */

.tms-cta-primary {

    color: #ffffff;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    box-shadow:
        0 8px 22px rgba(184, 117, 0, .30);
}


.tms-cta-primary span {

    background: #ffffff;

    color: #003B9E;
}


/* SECONDARY */

.tms-cta-secondary {

    color: #ffffff;

    border: 1px solid rgba(255, 255, 255, .55);

    background: rgba(255, 255, 255, .08);
}


.tms-cta-secondary span {

    background: #ffffff;

    color: #006CFF;
}


/* HOVER */

.tms-cta-btn:hover {

    color: #ffffff;

    transform: translateY(-4px);
}


.tms-cta-primary:hover {

    box-shadow:
        0 12px 30px rgba(184, 117, 0, .40);
}


.tms-cta-secondary:hover {

    background: #ffffff;

    color: #003B9E;
}


.tms-cta-secondary:hover span {

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    color: #ffffff;
}


/* =========================================================
   RIGHT INFO AREA
========================================================= */

.tms-cta-info {

    position: relative;

    z-index: 5;

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 14px;
}


.tms-cta-info-box {

    min-height: 112px;

    display: flex;

    align-items: center;

    gap: 14px;

    padding: 18px;

    border-radius: 15px;

    border: 1px solid rgba(255, 255, 255, .18);

    background: rgba(0, 25, 90, .28);

    backdrop-filter: blur(8px);

    transition:
        transform .3s ease,
        border-color .3s ease,
        background .3s ease;
}


.tms-cta-info-box:hover {

    transform: translateY(-5px);

    border-color: #FFD84D;

    background: rgba(0, 59, 158, .55);
}


/* =========================================================
   INFO ICON
========================================================= */

.tms-cta-icon {

    flex-shrink: 0;

    width: 50px;

    height: 50px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    color: #003B9E;

    font-size: 17px;
}


/* =========================================================
   INFO TEXT
========================================================= */

.tms-cta-info-box span {

    display: block;

    margin-bottom: 5px;

    color: #FFD84D;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: .8px;
}


.tms-cta-info-box a {

    display: block;

    color: #ffffff !important;

    font-size: 14px;

    line-height: 1.45;

    text-decoration: none !important;

    word-break: break-word;
}


.tms-cta-info-box p {

    margin: 0;

    color: #ffffff;

    font-size: 14px;

    line-height: 1.45;
}


/* =========================================================
   DECORATIVE CIRCLES
========================================================= */

.tms-cta-circle {

    position: absolute;

    border-radius: 50%;

    pointer-events: none;
}


.tms-cta-circle-one {

    width: 230px;

    height: 230px;

    right: -90px;

    top: -110px;

    background: rgba(255, 255, 255, .06);
}


.tms-cta-circle-two {

    width: 220px;

    height: 220px;

    left: -130px;

    bottom: -140px;

    background: rgba(255, 216, 77, .07);
}


.tms-cta-ring {

    position: absolute;

    width: 42px;

    height: 42px;

    right: 45px;

    bottom: 35px;

    border: 4px solid #FFD84D;

    border-radius: 50%;

    opacity: .8;

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .tms-cta-wrapper {

        grid-template-columns: 1fr;

        gap: 40px;

        padding: 55px 35px;
    }


    .tms-cta-content h2 {

        font-size: 36px;
    }


    .tms-cta-info {

        max-width: 700px;

        width: 100%;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .tms-cta-section {

        padding: 50px 15px;
    }


    .tms-cta-wrapper {

        padding: 42px 22px;

        border-radius: 18px;

        gap: 35px;
    }


    .tms-cta-content h2 {

        font-size: 29px;

        line-height: 1.25;
    }


    .tms-cta-content p {

        font-size: 14px;

        line-height: 1.7;
    }


    .tms-cta-buttons {

        flex-direction: column;

        align-items: stretch;

        width: 100%;
    }


    .tms-cta-btn {

        width: 100%;
    }


    .tms-cta-info {

        grid-template-columns: 1fr;

        gap: 12px;
    }


    .tms-cta-info-box {

        min-height: 90px;
    }


    .tms-cta-ring {

        right: 20px;

        bottom: 20px;
    }

}

/* =========================================================
   ABOUT PAGE - TAI MING SHENG
   BLUE + GOLD THEME
========================================================= */


/* =========================================================
   ABOUT BANNER
========================================================= */

.about-gold-banner {
    position: relative;
    min-height: 280px;
    display: flex;
    align-items: center;
    overflow: hidden;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 50%,
        #003B9E 100%
    );
}

.about-banner-content {
    position: relative;
    z-index: 3;
    text-align: center;
    padding: 65px 0;
}

.about-banner-content h1 {
    margin: 0 0 15px;
    color: #fff;
    font-size: 48px;
    font-weight: 800;
    letter-spacing: 1px;
}

.about-banner-menu {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;

    margin: 0;
    padding: 0;

    list-style: none;

    color: #fff;
    font-size: 15px;
}

.about-banner-menu a {
    color: #FFD84D;
    font-weight: 700;
    text-decoration: none;
}

.about-banner-menu a:hover {
    color: #fff;
}

.about-banner-menu span {
    color: rgba(255,255,255,.7);
}


/* Decorative shapes */

.about-banner-shape {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.about-banner-shape.shape-one {
    width: 280px;
    height: 280px;
    right: -100px;
    top: -130px;

    border: 55px solid rgba(255,216,77,.12);
}

.about-banner-shape.shape-two {
    width: 180px;
    height: 180px;
    left: -70px;
    bottom: -90px;

    border: 35px solid rgba(255,255,255,.08);
}


/* =========================================================
   ABOUT SECTION
========================================================= */

.new-about-section {
    position: relative;
    padding: 40px 0 !important;
    background: #fff !important;
}

.new-about-layout {
    display: grid;
    grid-template-columns: 46% 54%;
    align-items: center;
    gap: 55px;
}


/* LEFT IMAGE */

.new-about-images {
    position: relative;
    min-height: 540px;
}

.about-main-image {
    position: absolute;
    top: 0;
    left: 0;

    width: 88%;
    height: 500px;

    overflow: hidden;

    border-radius: 25px 25px 25px 75px;

    box-shadow: 0 18px 45px rgba(0,59,158,.16);
}

.about-main-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}


/* Experience */

.about-experience-card {
    position: absolute;
    right: 0;
    bottom: 0;

    display: flex;
    align-items: center;
    gap: 14px;

    min-width: 225px;
    padding: 20px 22px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    border-radius: 18px 18px 18px 55px;

    box-shadow: 0 15px 35px rgba(0,0,0,.18);
}

.about-experience-card > strong {
    color: #003B9E;
    font-size: 42px;
    line-height: 1;
    font-weight: 900;
}

.about-experience-card > strong span {
    font-size: 25px;
}

.about-experience-card small {
    display: block;
    color: #003B9E;
    font-size: 12px;
    font-weight: 600;
}

.about-experience-card b {
    display: block;
    color: #003B9E;
    font-size: 17px;
    font-weight: 800;
}


/* =========================================================
   ABOUT CONTENT
========================================================= */

.new-about-content {
    position: relative;
}

.new-about-subtitle {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 15px;

    color: #003B9E;

    font-size: 13px;
    font-weight: 800;
    letter-spacing: 3px;
    text-transform: uppercase;
}

.new-about-subtitle i {
    display: inline-block;

    width: 35px;
    height: 3px;

    background: #FFD84D;
}


.new-about-title {
    margin: 0 0 20px;

    color: #09234a;

    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;
}

.new-about-title strong {
    display: block;
    color: #003B9E;
}


.new-about-text {
    margin: 0 0 18px;

    color: #000;

    font-size: 17px;
    line-height: 1.75;
    text-align: justify;
}


/* Highlight */

.about-highlight {
    color: #003B9E;
    font-weight: 800;
    text-decoration: none;

    transition: .3s ease;
}

.about-highlight:hover {
    color: #006CFF;
}


/* Button */

.new-about-button-wrap {
    margin-top: 25px;
}

.new-about-button {
    display: inline-flex;
    align-items: center;
    gap: 12px;

    padding: 13px 23px;

    color: #fff !important;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 50%,
        #003B9E 100%
    );

    border-radius: 7px;

    font-size: 14px;
    font-weight: 700;

    text-decoration: none !important;

    transition: .3s ease;
}

.new-about-button:hover {
    color: #003B9E !important;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    transform: translateY(-2px);
}


/* =========================================================
   CLEANING EXPERTISE
========================================================= */

.cleaning-expertise-section {
    position: relative;
    padding: 40px 0 !important;
    background: #fff !important;
}


.cleaning-expertise-heading {
    max-width: 750px;
    margin: 0 auto 45px;
    text-align: center;
}

.cleaning-expertise-label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    margin-bottom: 12px;

    color: #003B9E;

    font-size: 13px;
    font-weight: 800;
    letter-spacing: 3px;
}

.cleaning-expertise-label span {
    width: 30px;
    height: 2px;
    background: #FFD84D;
}


.cleaning-expertise-heading h2 {
    margin: 0;

    color: #09234a;

    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;
}

.cleaning-expertise-heading h2 strong {
    color: #003B9E;
}


/* =========================================================
   EXPERTISE GRID
========================================================= */

.cleaning-expertise-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}


/* CARD */

.expertise-card {
    position: relative;

    padding: 27px 25px 25px;

    background: #fff;

    border: 1px solid #e3eaf5;
    border-radius: 18px;

    box-shadow: 0 8px 28px rgba(0,59,158,.07);

    transition: all .35s ease;
}

.expertise-card:hover {
    transform: translateY(-7px);

    border-color: #FFD84D;

    box-shadow: 0 18px 38px rgba(0,59,158,.13);
}


/* TOP */

.expertise-top {
    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-bottom: 20px;
}


/* Number */

.expertise-number {
    color: #003B9E;

    font-size: 15px;
    font-weight: 900;

    letter-spacing: 1px;
}


/* Icon */

.expertise-icon {
    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #003B9E;

    background: linear-gradient(
        135deg,
        #FFF1B8,
        #FFD84D
    );

    border-radius: 15px;

    font-size: 22px;

    transition: .3s ease;
}

.expertise-card:hover .expertise-icon {
    color: #fff;

    background: linear-gradient(
        90deg,
        #003B9E,
        #006CFF
    );

    transform: rotate(-4deg);
}


/* Content */

.expertise-card h3 {
    margin: 0 0 12px;

    color: #003B9E;

    font-size: 20px;
    line-height: 1.35;
    font-weight: 800;
}

.expertise-card p {
    min-height: 90px;

    margin: 0;

    color: #555;

    font-size: 14px;
    line-height: 1.65;
}


/* Gold line */

.expertise-line {
    display: block;

    width: 40px;
    height: 3px;

    margin-top: 18px;

    background: linear-gradient(
        90deg,
        #B87500,
        #FFD84D,
        #D99A00
    );

    border-radius: 5px;
}


/* =========================================================
   CONTACT CTA
========================================================= */

.contact-cta-section {
    position: relative;

    padding: 75px 0;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #0058D4 50%,
        #003B9E 100%
    );

    overflow: hidden;
}

.contact-cta-section::before {
    content: "";

    position: absolute;

    width: 350px;
    height: 350px;

    right: -150px;
    top: -150px;

    border: 55px solid rgba(255,216,77,.10);

    border-radius: 50%;
}

.contact-cta-section::after {
    content: "";

    position: absolute;

    width: 220px;
    height: 220px;

    left: -100px;
    bottom: -120px;

    border: 35px solid rgba(255,255,255,.07);

    border-radius: 50%;
}


.contact-cta-wrap {
    position: relative;
    z-index: 2;

    display: grid;

    grid-template-columns: 55% 45%;

    gap: 50px;

    align-items: center;
}


/* CTA CONTENT */

.contact-cta-content {
    padding-right: 20px;
}

.contact-cta-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 15px;

    color: #FFD84D;

    font-size: 13px;
    font-weight: 800;
    letter-spacing: 3px;
}

.contact-cta-label i {
    width: 32px;
    height: 3px;

    display: inline-block;

    background: #FFD84D;
}


.contact-cta-content h2 {
    margin: 0 0 18px;

    color: #fff;

    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;
}

.contact-cta-content h2 strong {
    display: block;
    color: #FFD84D;
}


.contact-cta-content p {
    margin: 0 0 15px;

    color: rgba(255,255,255,.88);

    font-size: 16px;
    line-height: 1.7;
}


/* CTA Button */

.contact-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;

    margin-top: 15px;

    padding: 12px 20px;

    color: #003B9E !important;

    background: linear-gradient(
        90deg,
        #B87500,
        #FFD84D,
        #D99A00
    );

    border-radius: 7px;

    font-size: 13px;
    font-weight: 800;

    text-decoration: none !important;

    transition: .3s ease;
}

.contact-cta-btn span {
    width: 28px;
    height: 28px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #003B9E;

    color: #fff;

    border-radius: 50%;
}

.contact-cta-btn:hover {
    transform: translateY(-3px);
}


/* =========================================================
   CONTACT DETAILS
========================================================= */

.contact-cta-details {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}


.contact-info-box {
    display: flex;
    align-items: center;
    gap: 13px;

    min-height: 85px;

    padding: 15px;

    background: rgba(255,255,255,.09);

    border: 1px solid rgba(255,255,255,.15);

    border-radius: 12px;

    transition: .3s ease;
}

.contact-info-box:hover {
    background: rgba(255,255,255,.15);
    border-color: rgba(255,216,77,.55);

    transform: translateY(-3px);
}


.contact-info-icon {
    width: 43px;
    height: 43px;
    min-width: 43px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #003B9E;

    background: #FFD84D;

    border-radius: 50%;

    font-size: 15px;
}


.contact-info-text {
    min-width: 0;
}

.contact-info-text span {
    display: block;

    margin-bottom: 4px;

    color: #FFD84D;

    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
}

.contact-info-text strong,
.contact-info-text a {
    display: block;

    color: #fff !important;

    font-size: 13px;
    line-height: 1.4;
    font-weight: 700;

    text-decoration: none !important;

    word-break: break-word;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .new-about-layout {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .new-about-images {
        min-height: 500px;
    }

    .about-main-image {
        width: 85%;
    }

    .cleaning-expertise-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .contact-cta-wrap {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .contact-cta-content {
        padding-right: 0;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    /* Banner */

    .about-gold-banner {
        min-height: 220px;
    }

    .about-banner-content {
        padding: 50px 0;
    }

    .about-banner-content h1 {
        font-size: 34px;
    }

    .about-banner-menu {
        font-size: 13px;
    }


    /* About */

    .new-about-section {
        padding: 35px 0 !important;
    }

    .new-about-images {
        min-height: 390px;
    }

    .about-main-image {
        width: 90%;
        height: 350px;

        border-radius: 20px 20px 20px 55px;
    }

    .about-experience-card {
        right: 0;

        min-width: 190px;

        padding: 15px 17px;

        border-radius: 15px 15px 15px 40px;
    }

    .about-experience-card > strong {
        font-size: 34px;
    }

    .about-experience-card b {
        font-size: 14px;
    }

    .new-about-title {
        font-size: 29px;
    }

    .new-about-text {
        font-size: 15px;
        line-height: 1.7;
    }


    /* Expertise */

    .cleaning-expertise-section {
        padding: 50px 0 !important;
    }

    .cleaning-expertise-heading {
        margin-bottom: 30px;
    }

    .cleaning-expertise-heading h2 {
        font-size: 29px;
    }

    .cleaning-expertise-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .expertise-card {
        padding: 22px 20px;
    }

    .expertise-card p {
        min-height: auto;
    }


    /* CTA */

    .contact-cta-section {
        padding: 50px 0;
    }

    .contact-cta-content h2 {
        font-size: 29px;
    }

    .contact-cta-content p {
        font-size: 14px;
    }

    .contact-cta-details {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .contact-info-box {
        min-height: 75px;
    }

}

/* =========================================================
   TMS OUR APPROACH SECTION
========================================================= */

.tms-approach-section {
    padding: 40px 0;
    background: #f5f9ff;
    overflow: hidden;
}

.tms-approach-heading {
    max-width: 850px;
    margin: 0 auto 45px;
    text-align: center;
}

.tms-approach-label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 12px;

    color: #003B9E;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 3px;
}

.tms-approach-label span {
    width: 32px;
    height: 2px;
    background: #FFD84D;
}

.tms-approach-heading h2 {
    margin: 0 0 15px;
    color: #08203f;
    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;
}

.tms-approach-heading h2 strong {
        color: #003B9E;
}

.tms-approach-heading p {
    max-width: 720px;
    margin: 0 auto;
    color: #555;
    font-size: 15px;
    line-height: 1.7;
}


/* APPROACH GRID */

.tms-approach-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}


/* APPROACH CARD */

.tms-approach-card {
    position: relative;
    padding: 28px 25px 25px;
    min-height: 285px;

    background: #ffffff;
    border: 1px solid #e3eaf5;
    border-radius: 18px;

    box-shadow: 0 10px 30px rgba(0, 59, 158, 0.07);

    overflow: hidden;
    transition: all 0.35s ease;
}

.tms-approach-card:hover {
    transform: translateY(-8px);
    border-color: #FFD84D;
    box-shadow: 0 18px 40px rgba(0, 59, 158, 0.14);
}


/* TOP */

.tms-approach-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 22px;
}

.tms-approach-number {
    color: #003B9E;
    font-size: 15px;
    font-weight: 900;
}


/* ICON */

.tms-approach-icon {
    width: 55px;
    height: 55px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #003B9E;
    background: linear-gradient(
        135deg,
        #fff8d8 0%,
        #FFD84D 100%
    );

    border-radius: 14px;
    font-size: 21px;

    transition: all 0.35s ease;
}

.tms-approach-card:hover .tms-approach-icon {
    color: #ffffff;
    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 50%,
        #003B9E 100%
    );
}


/* CONTENT */

.tms-approach-card h3 {
    margin: 0 0 12px;

    color: #08203f;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.35;
}

.tms-approach-card p {
    margin: 0;

    color: #666;
    font-size: 14px;
    line-height: 1.7;
}


/* GOLD LINE */

.tms-approach-line {
    display: block;

    width: 45px;
    height: 3px;

    margin-top: 20px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 50%,
        #D99A00 100%
    );

    border-radius: 10px;

    transition: width 0.35s ease;
}

.tms-approach-card:hover .tms-approach-line {
    width: 85px;
}


/* =========================================================
   TMS WHAT WE PROVIDE SECTION
========================================================= */

.tms-provide-section {
    padding: 40px 0;
    background: #ffffff;
    overflow: hidden;
}

.tms-provide-heading {
    max-width: 850px;
    margin: 0 auto 45px;
    text-align: center;
}

.tms-provide-label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 12px;

    color: #003B9E;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 3px;
}

.tms-provide-label span {
    width: 32px;
    height: 2px;
    background: #FFD84D;
}

.tms-provide-heading h2 {
    margin: 0 0 15px;

    color: #08203f;
    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;
}

.tms-provide-heading h2 strong {
    color: #003B9E;
}

.tms-provide-heading p {
    max-width: 720px;
    margin: 0 auto;

    color: #555;
    font-size: 15px;
    line-height: 1.7;
}


/* PROVIDE GRID */

.tms-provide-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}


/* PROVIDE CARD */

.tms-provide-card {
    position: relative;

    padding: 28px 25px 25px;
    min-height: 275px;

    background: #f8fbff;
    border: 1px solid #e2eaf5;
    border-radius: 18px;

    box-shadow: 0 8px 25px rgba(0, 59, 158, 0.06);

    overflow: hidden;
    transition: all 0.35s ease;
}

.tms-provide-card:hover {
    transform: translateY(-8px);

    background: #ffffff;
    border-color: #FFD84D;

    box-shadow: 0 18px 40px rgba(0, 59, 158, 0.13);
}


/* TOP */

.tms-provide-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 22px;
}

.tms-provide-number {
    color: #003B9E;
    font-size: 15px;
    font-weight: 900;
}


/* ICON */

.tms-provide-icon {
    width: 55px;
    height: 55px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #003B9E;

    background: linear-gradient(
        135deg,
        #fff8d8 0%,
        #FFD84D 100%
    );

    border-radius: 14px;

    font-size: 21px;

    transition: all 0.35s ease;
}

.tms-provide-card:hover .tms-provide-icon {
    color: #ffffff;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 50%,
        #003B9E 100%
    );
}


/* CONTENT */

.tms-provide-card h3 {
    margin: 0 0 12px;

    color: #08203f;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.35;
}

.tms-provide-card p {
    margin: 0;

    color: #666;
    font-size: 14px;
    line-height: 1.7;
}


/* GOLD LINE */

.tms-provide-line {
    display: block;

    width: 45px;
    height: 3px;

    margin-top: 20px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 50%,
        #D99A00 100%
    );

    border-radius: 10px;

    transition: width 0.35s ease;
}

.tms-provide-card:hover .tms-provide-line {
    width: 85px;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .tms-approach-grid,
    .tms-provide-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .tms-approach-heading h2,
    .tms-provide-heading h2 {
        font-size: 34px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .tms-approach-section,
    .tms-provide-section {
        padding: 55px 0;
    }

    .tms-approach-heading,
    .tms-provide-heading {
        margin-bottom: 30px;
    }

    .tms-approach-heading h2,
    .tms-provide-heading h2 {
        font-size: 28px;
    }

    .tms-approach-heading p,
    .tms-provide-heading p {
        font-size: 14px;
    }

    .tms-approach-grid,
    .tms-provide-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .tms-approach-card,
    .tms-provide-card {
        min-height: auto;
        padding: 23px 20px;
    }

    .tms-approach-card h3,
    .tms-provide-card h3 {
        font-size: 18px;
    }

    .tms-approach-card p,
    .tms-provide-card p {
        font-size: 13px;
    }

}

/* =========================================================
   CONTACT PAGE
   BLUE + GOLD THEME
========================================================= */


/* =========================
   CONTACT MAIN SECTION
========================= */

.neelan-contact-section {
    padding: 40px 0;
    background: #f5f9ff;
}

.neelan-contact-left {
    padding-right: 35px;
}


/* =========================
   CONTACT LABEL
========================= */

.omnit-about-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 15px;

    color: #003B9E;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 3px;
}

.omnit-about-label::before {
    content: "";
    width: 30px;
    height: 2px;
    background: #FFD84D;
}


/* =========================
   CONTACT TITLE
========================= */

.neelan-contact-title {
    margin: 0 0 22px;

    color: #08203f;
    font-size: 42px;
    line-height: 1.2;
    font-weight: 800;
}

.neelan-contact-title span {
    display: block;
    color: #003B9E;
}


/* =========================
   DESCRIPTION
========================= */

.neelan-contact-description {
    margin: 0 0 16px;

    color: #5d6673;
    font-size: 15px;
    line-height: 1.8;
}


/* =========================
   CONTACT DETAILS
========================= */

.neelan-contact-detail {
    display: flex;
    align-items: flex-start;
    gap: 18px;

    margin-top: 25px;
    padding: 0;

    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}


.neelan-contact-detail-icon {
    width: 54px;
    height: 54px;
    min-width: 54px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #003B9E;

    background: linear-gradient(
        135deg,
        #fff8d8 0%,
        #FFD84D 100%
    );

    border-radius: 50%;

    font-size: 18px;
}


.neelan-contact-detail-content {
    padding-top: 2px;
}


.neelan-contact-detail-content h4 {
    margin: 0 0 8px;

    color: #08203f;
    font-size: 17px;
    font-weight: 800;
}


.neelan-contact-detail-content p {
    margin: 4px 0;

    color: #626b78;
    font-size: 14px;
    line-height: 1.6;
}


.neelan-contact-detail-content p strong {
    color: #08203f;
}


.neelan-contact-detail-content a {
    color: #003B9E;
    text-decoration: none;
    transition: 0.3s ease;
}


.neelan-contact-detail-content a:hover {
    color: #B87500;
}


/* =========================
   NEED CLEANING SUPPORT
========================= */

.neelan-contact-support {
    margin-top: 30px;
    padding: 22px 25px;

    background: #ffffff;

    border-left: 4px solid #FFD84D;
    border-radius: 0 12px 12px 0;

    box-shadow: 0 8px 25px rgba(0, 59, 158, 0.06);
}


.neelan-contact-support h4 {
    margin: 0 0 10px;

    color: #003B9E;
    font-size: 18px;
    font-weight: 800;
}


.neelan-contact-support p {
    margin: 0 0 8px;

    color: #626b78;
    font-size: 14px;
    line-height: 1.7;
}


.neelan-contact-support p:last-child {
    margin-bottom: 0;
}


.neelan-contact-support p strong {
    color: #08203f;
}


/* =========================================================
   CONTACT FORM
========================================================= */

.neelan-contact-form-box {
    position: relative;

    padding: 35px 35px 32px;

    background: #ffffff;

    border: 1px solid #e2eaf5;
    border-top: 4px solid #FFD84D;

    border-radius: 18px;

    box-shadow: 0 15px 40px rgba(0, 59, 158, 0.09);
}


/* FORM SUBTITLE */

.neelan-form-subtitle {
    display: block;

    margin-bottom: 8px;

    color: #003B9E;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}


/* FORM TITLE */

.neelan-form-title {
    margin: 0 0 25px;

    color: #08203f;
    font-size: 27px;
    font-weight: 800;
    line-height: 1.3;
}


/* =========================
   FORM GROUP
========================= */

.neelan-form-group {
    margin-bottom: 17px;
}


.neelan-form-group label {
    display: block;

    margin-bottom: 7px;

    color: #08203f;
    font-size: 13px;
    font-weight: 700;
}


/* =========================
   INPUT WRAPPER
========================= */

.neelan-input-wrapper {
    position: relative;
}


.neelan-input-wrapper > i {
    position: absolute;

    left: 16px;
    top: 50%;

    transform: translateY(-50%);

    color: #003B9E;

    font-size: 15px;

    z-index: 2;
}


.neelan-input-wrapper input,
.neelan-input-wrapper select,
.neelan-input-wrapper textarea {
    width: 100%;

    border: 1px solid #dce5f1;
    border-radius: 8px;

    background: #f8fbff;

    color: #333;

    font-family: inherit;
    font-size: 14px;

    outline: none;

    transition: all 0.3s ease;
}


.neelan-input-wrapper input,
.neelan-input-wrapper select {
    height: 52px;
    padding: 0 16px 0 45px;
}


.neelan-input-wrapper textarea {
    min-height: 120px;

    padding: 15px 16px 15px 45px;

    resize: vertical;
}


/* SELECT */

.neelan-input-wrapper select {
    appearance: auto;
    cursor: pointer;
}


/* PLACEHOLDER */

.neelan-input-wrapper input::placeholder,
.neelan-input-wrapper textarea::placeholder {
    color: #9aa4b2;
}


/* FOCUS */

.neelan-input-wrapper input:focus,
.neelan-input-wrapper select:focus,
.neelan-input-wrapper textarea:focus {
    border-color: #006CFF;

    background: #ffffff;

    box-shadow: 0 0 0 3px rgba(0, 108, 255, 0.08);
}


/* TEXTAREA ICON */

.neelan-textarea-wrapper > i {
    top: 18px;
    transform: none;
}


/* =========================================================
   SUBMIT BUTTON
========================================================= */

.neelan-submit-wrapper {
    margin-top: 8px;
}


.neelan-contact-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    min-width: 170px;
    height: 50px;

    padding: 0 22px;

    color: #ffffff !important;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 50%,
        #003B9E 100%
    );

    border: none;
    border-radius: 7px;

    font-size: 14px;
    font-weight: 700;

    cursor: pointer;

    transition: all 0.35s ease;
}


.neelan-contact-submit i {
    font-size: 14px;
}


.neelan-contact-submit:hover {
    transform: translateY(-2px);

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 50%,
        #D99A00 100%
    );

    color: #08203f !important;

    box-shadow: 0 8px 20px rgba(184, 117, 0, 0.20);
}


/* =========================================================
   GOOGLE MAP
========================================================= */

.neelan-contact-map {
    margin-top: 60px;

    width: 100%;

    padding: 7px;

    background: #ffffff;

    border-top: 4px solid #FFD84D;
    border-radius: 15px;

    overflow: hidden;

    box-shadow: 0 12px 35px rgba(0, 59, 158, 0.10);
}


.neelan-contact-map iframe {
    display: block;

    width: 100%;
    height: 430px;

    border: 0;

    border-radius: 10px;
}


/* =========================================================
   CONTACT BANNER
========================================================= */

.about-gold-banner {
    position: relative;

    min-height: 280px;

    display: flex;
    align-items: center;
    justify-content: center;

    overflow: hidden;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );
}


.about-gold-banner .about-banner-content {
    position: relative;
    z-index: 3;

    text-align: center;
}


.about-gold-banner h1 {
    margin: 0 0 10px;

    color: #ffffff;

    font-size: 44px;
    font-weight: 800;
}


.about-gold-banner .about-banner-menu {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    margin: 0;
    padding: 0;

    list-style: none;
}


.about-gold-banner .about-banner-menu li {
    color: #ffffff;

    font-size: 14px;
}


.about-gold-banner .about-banner-menu a {
    color: #FFD84D;

    text-decoration: none;
}


.about-gold-banner .about-banner-menu span {
    color: #FFD84D;
}


/* BANNER SHAPES */

.about-gold-banner .about-banner-shape {
    position: absolute;

    border-radius: 50%;

    background: rgba(255, 216, 77, 0.12);

    pointer-events: none;
}


.about-gold-banner .shape-one {
    width: 300px;
    height: 300px;

    left: -100px;
    top: -120px;
}


.about-gold-banner .shape-two {
    width: 400px;
    height: 400px;

    right: -150px;
    bottom: -250px;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .neelan-contact-section {
        padding: 35px 0;
    }

    .neelan-contact-left {
        padding-right: 0;
        margin-bottom: 40px;
    }

    .neelan-contact-title {
        font-size: 36px;
    }

    .neelan-contact-form-box {
        padding: 30px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .about-gold-banner {
        min-height: 220px;
    }

    .about-gold-banner h1 {
        font-size: 32px;
    }

    .about-gold-banner .about-banner-menu li {
        font-size: 13px;
    }


    .neelan-contact-section {
        padding: 50px 0;
    }


    .neelan-contact-title {
        font-size: 29px;
        line-height: 1.25;
    }


    .neelan-contact-description {
        font-size: 14px;
        line-height: 1.7;
    }


    .neelan-contact-detail {
        gap: 13px;
        margin-top: 22px;
    }


    .neelan-contact-detail-icon {
        width: 48px;
        height: 48px;
        min-width: 48px;

        font-size: 16px;
    }


    .neelan-contact-detail-content h4 {
        font-size: 16px;
    }


    .neelan-contact-detail-content p {
        font-size: 13px;

        word-break: break-word;
    }


    .neelan-contact-support {
        padding: 18px 20px;
    }


    .neelan-contact-form-box {
        padding: 25px 18px;
        border-radius: 14px;
    }


    .neelan-form-title {
        font-size: 23px;
    }


    .neelan-form-group {
        margin-bottom: 15px;
    }


    .neelan-input-wrapper input,
    .neelan-input-wrapper select {
        height: 50px;
    }


    .neelan-input-wrapper textarea {
        min-height: 110px;
    }


    .neelan-contact-submit {
        width: 100%;
    }


    .neelan-contact-map {
        margin-top: 40px;
    }


    .neelan-contact-map iframe {
        height: 320px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .about-gold-banner {
        min-height: 200px;
    }

    .about-gold-banner h1 {
        font-size: 28px;
    }

    .neelan-contact-title {
        font-size: 26px;
    }

    .neelan-form-title {
        font-size: 21px;
    }

    .neelan-contact-detail-content {
        min-width: 0;
    }

}

/* =====================================================
   TMS SERVICES PAGE
===================================================== */

.tms-services-page {
    position: relative;
    padding: 40px 0;
    background: #ffffff;
    overflow: hidden;
}


/* =====================================================
   HEADING
===================================================== */

.tms-service-heading {
    text-align: center;
    max-width: 850px;
    margin: 0 auto 60px;
}

.tms-service-label {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #0057d9;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.5px;
    margin-bottom: 15px;
}

.tms-service-label i {
    display: block;
    width: 35px;
    height: 2px;
    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );
}

.tms-service-heading h2 {
    margin: 0;
    font-size: 48px;
    line-height: 1.15;
    font-weight: 700;
    color: #11131a;
}

.tms-service-heading h2 strong {
    display: inline;
    color: #0057d9;
}

.tms-service-heading > p {
    margin: 15px 0 20px;
    font-size: 20px;
    color: #777d89;
}

.tms-service-intro {
    max-width: 800px;
    margin: 0 auto;
    font-size: 16px;
    line-height: 1.8;
    color: #6d727c;
}

.tms-service-intro strong {
    color: #0057d9;
}


/* =====================================================
   SERVICE GRID
===================================================== */

.tms-service-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}


/* =====================================================
   SERVICE CARD
===================================================== */

.tms-service-card {
    position: relative;
    min-height: 10px;
    padding: 55px 38px 35px;
    background: #f3f3f4;
    border-radius: 20px 20px 85px 20px;
    overflow: hidden;
    transition: all 0.45s ease;
    z-index: 1;
}


/* =====================================================
   DECORATIVE SHAPES
===================================================== */

.tms-card-shape {
    position: absolute;
    pointer-events: none;
    transition: all 0.5s ease;
    z-index: -1;
}

.tms-card-shape.shape-gold {
    width: 135px;
    height: 135px;
    top: -75px;
    right: -35px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    border-radius: 50%;
}

.tms-card-shape.shape-blue {
    width: 100px;
    height: 150px;
    top: 25px;
    right: -55px;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );

    border-radius: 55% 0 55% 55%;
    transform: rotate(-25deg);
    opacity: 0;
}


/* =====================================================
   ICON
===================================================== */

.tms-service-icon {
    position: relative;
    width: 92px;
    height: 92px;
    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 25px;

    background: #ffffff;
    border-radius: 50%;

    border: 1px dashed #006CFF;

    box-shadow: 0 0 0 8px rgba(255, 255, 255, 0.65);

    transition: all 0.4s ease;
}

.tms-service-icon i {
    font-size: 32px;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );

    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;

    transition: all 0.4s ease;
}


/* =====================================================
   NUMBER
===================================================== */

.tms-service-number {
    position: absolute;
    top: 32px;
    left: 38px;

    font-size: 12px;
    font-weight: 700;
    color: #006CFF;

    opacity: 0;
    transition: all 0.4s ease;
}


/* =====================================================
   TITLE
===================================================== */

.tms-service-card h3 {
    position: relative;
    margin: 0 0 14px;

    font-size: 24px;
    line-height: 1.25;
    font-weight: 700;

    color: #20232a;

    transition: all 0.4s ease;

    text-align: center;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.tms-service-card > p {
    position: relative;

    margin: 0 0 18px;

    font-size: 16px;
    line-height: 1.7;

    color: #000;

    text-align: justify;

    transition: all 0.4s ease;
}


/* =====================================================
   LIST
===================================================== */

.tms-service-card ul {
    position: relative;

    margin: 0;
    padding: 0;

    list-style: none;

    max-height: 0;
    overflow: hidden;

    transition: max-height 0.4s ease;
}

.tms-service-card ul li {
    position: relative;

    padding-left: 18px;
    margin-bottom: 7px;

    font-size: 14px;
    color: #6d727c;
}

.tms-service-card ul li::before {
    content: "";
    position: absolute;

    left: 0;
    top: 9px;

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: #D99A00;
}


/* =====================================================
   READ MORE
===================================================== */

.tms-read-more {
    position: absolute;

    left: 38px;
    bottom: 30px;

    display: inline-flex;
    align-items: center;
    gap: 10px;

    font-size: 14px;
    font-weight: 600;

    color: #30343b;
    text-decoration: none;

    transition: all 0.4s ease;
}

.tms-read-more span {
    width: 28px;
    height: 28px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    color: #ffffff;

    transition: all 0.4s ease;
}

.tms-read-more i {
    font-size: 11px;
}


/* =====================================================
   HOVER CARD
===================================================== */

.tms-service-card:hover {
    background: #14151b;
    transform: translateY(-8px);
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.16);
}


/* blue shape show */

.tms-service-card:hover .shape-blue {
    opacity: 1;
}


/* gold shape */

.tms-service-card:hover .shape-gold {
    width: 145px;
    height: 145px;
}


/* icon */

.tms-service-card:hover .tms-service-icon {
    background: #1954d1;
    border-color: #ffffff;
    box-shadow: 0 0 0 8px rgba(0, 108, 255, 0.18);
}

.tms-service-card:hover .tms-service-icon i {
    -webkit-text-fill-color: #ffffff;
    background: none;
}


/* number */

.tms-service-card:hover .tms-service-number {
    opacity: 1;
    color: #FFD84D;
}


/* title */

.tms-service-card:hover h3 {
    color: #ffffff;
}


/* paragraph */

.tms-service-card:hover > p {
    color: #eeeeee;

    text-align: justify;
}


/* list */

.tms-service-card:hover ul {
    max-height: 180px;
}

.tms-service-card:hover ul li {
    color: #d5d7dc;
}


/* button */

.tms-service-card:hover .tms-read-more {
    color: #FFD84D;
}

.tms-service-card:hover .tms-read-more span {
    transform: rotate(-45deg);
}


/* =====================================================
   CTA
===================================================== */

.tms-service-cta {
    padding: 40px 0px;
    background: #ffffff;
}

.tms-service-cta-box {
    position: relative;
    overflow: hidden;

    padding: 25px 15px;

    text-align: center;

    border-radius: 25px;

    background:
        linear-gradient(
            90deg,
            #003B9E 0%,
            #006CFF 45%,
            #003B9E 100%
        );

    box-shadow: 0 20px 50px rgba(0, 59, 158, 0.18);
}

.tms-service-cta-box::before {
    content: "";
    position: absolute;

    width: 250px;
    height: 250px;

    left: -100px;
    top: -120px;

    border-radius: 50%;

    background: rgba(255,255,255,0.08);
}

.tms-service-cta-box span {
    position: relative;

    font-size: 13px;
    font-weight: 700;

    letter-spacing: 2px;

    color: #FFD84D;
}

.tms-service-cta-box h2 {
    position: relative;

    margin: 12px 0;

    color: #ffffff;

    font-size: 40px;
    line-height: 1.2;
}

.tms-service-cta-box h2 strong {
    color: #FFD84D;
}

.tms-service-cta-box p {
    position: relative;

    max-width: 700px;
    margin: 0 auto 28px;

    color: #ffffff;
    opacity: 0.9;

    font-size: 16px;
    line-height: 1.7;
}

.tms-cta-btn {
    position: relative;

    display: inline-flex;
    align-items: center;
    gap: 12px;

    padding: 14px 24px;

    border-radius: 50px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    color: #ffffff;

    font-size: 14px;
    font-weight: 700;

    text-decoration: none;

    transition: all 0.3s ease;
}

.tms-cta-btn:hover {
    transform: translateY(-3px);
    color: #ffffff;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .tms-service-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .tms-service-heading h2 {
        font-size: 40px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .tms-services-page {
        padding: 35px 0;
    }

    .tms-service-grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .tms-service-heading {
        margin-bottom: 40px;
    }

    .tms-service-heading h2 {
        font-size: 34px;
    }

    .tms-service-heading > p {
        font-size: 17px;
    }

    .tms-service-intro {
        font-size: 14px;
    }

    .tms-service-card {
        min-height: 470px;
        padding: 45px 28px 35px;
    }

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

    .tms-read-more {
        left: 28px;
    }

    .tms-service-cta {
        padding-bottom: 70px;
    }

    .tms-service-cta-box {
        padding: 50px 25px;
    }

    .tms-service-cta-box h2 {
        font-size: 30px;
    }

}




/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .tms-service-card {
        min-height: 490px;
    }

    .tms-service-icon {
        width: 82px;
        height: 82px;
    }

    .tms-service-icon i {
        font-size: 28px;
    }

}

/* =========================================================
   TMS SERVICE CARDS - FINAL OVERRIDE
========================================================= */

.services-alternate-section {
    background: #fff !important;
    padding: 80px 0 !important;
}

.services-alternate-section .container {
    max-width: 1200px !important;
}


/* ================= CARD ================= */

.services-alternate-section .service-alt-item {
    position: relative !important;

    display: grid !important;
    grid-template-columns: 1fr 1fr !important;

    min-height: 460px !important;

    margin-bottom: 35px !important;
    padding: 0 !important;

    background: #f3f3f4 !important;

    border: none !important;
    border-radius: 0 0 85px 0 !important;

    overflow: hidden !important;

    box-shadow: none !important;

    transition: all .4s ease !important;
}


/* ================= REVERSE ================= */

.services-alternate-section .service-alt-item.reverse {
    grid-template-columns: 1fr 1fr !important;
}


/* ================= IMAGE ================= */

.services-alternate-section .service-alt-image {
    position: relative !important;

    width: 100% !important;
    height: 460px !important;
    min-height: 460px !important;

    overflow: hidden !important;
}

.services-alternate-section .service-alt-image img {
    width: 100% !important;
    height: 100% !important;

    min-height: 460px !important;

    object-fit: cover !important;

    display: block !important;
}


/* ================= CONTENT ================= */

.services-alternate-section .service-alt-content {
    position: relative !important;
    z-index: 10 !important;

    padding: 55px 55px !important;

    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}


/* ================= NUMBER ================= */

.services-alternate-section .service-alt-content small {
    width: 48px !important;
    height: 48px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    margin: 0 0 20px !important;

    border-radius: 50% !important;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    ) !important;

    color: #fff !important;

    font-size: 15px !important;
    font-weight: 700 !important;

    flex-shrink: 0 !important;
}


/* ================= TITLE ================= */

.services-alternate-section .service-alt-content h3 {
    margin: 0 0 15px !important;

    color: #07182b !important;

    font-size: 32px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;

    transition: color .4s ease !important;
}


/* ================= DESCRIPTION ================= */

.services-alternate-section .service-alt-content p {
    margin: 0 0 20px !important;

    color: #657084 !important;

    font-size: 16px !important;
    line-height: 1.75 !important;

    transition: color .4s ease !important;
}


/* ================= LIST ================= */

.services-alternate-section .service-alt-content ul {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;

    gap: 8px 20px !important;

    margin: 0 0 25px !important;
    padding: 0 !important;

    list-style: none !important;
}

.services-alternate-section .service-alt-content ul li {
    position: relative !important;

    padding-left: 17px !important;

    color: #425066 !important;

    font-size: 14px !important;

    transition: color .4s ease !important;
}

.services-alternate-section .service-alt-content ul li::before {
    content: "" !important;

    position: absolute !important;

    left: 0 !important;
    top: 8px !important;

    width: 6px !important;
    height: 6px !important;

    border-radius: 50% !important;

    background: #FFD84D !important;
}


/* ================= BUTTON ================= */

.services-alternate-section .service-alt-btn {
    width: fit-content !important;

    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;

    padding: 12px 20px !important;

    border-radius: 30px !important;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    ) !important;

    color: #fff !important;

    font-size: 14px !important;
    font-weight: 700 !important;

    text-decoration: none !important;

    transition: all .3s ease !important;
}

.services-alternate-section .service-alt-btn i {
    width: 30px !important;
    height: 30px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    border-radius: 50% !important;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    ) !important;

    color: #fff !important;
}


/* =========================================================
   GOLD CORNER
========================================================= */

.services-alternate-section .service-alt-item::before {
    content: "" !important;

    position: absolute !important;

    top: 0 !important;
    right: 0 !important;

    width: 120px !important;
    height: 120px !important;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    ) !important;

    border-radius: 0 0 0 100% !important;

    z-index: 20 !important;

    transition: all .4s ease !important;
}


/* =========================================================
   HOVER = BLUE / DARK BLUE
========================================================= */

.services-alternate-section .service-alt-item:hover {
    background: linear-gradient(
        135deg,
        #003B9E 0%,
        #006CFF 50%,
        #003B9E 100%
    ) !important;

    transform: translateY(-5px) !important;

    box-shadow: 0 20px 50px rgba(0, 59, 158, .20) !important;
}


.services-alternate-section .service-alt-item:hover::before {
    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    ) !important;

    transform: scale(1.05) !important;
}


/* hover text */

.services-alternate-section .service-alt-item:hover h3 {
    color: #fff !important;
}

.services-alternate-section .service-alt-item:hover p {
    color: #eef4ff !important;
}

.services-alternate-section .service-alt-item:hover ul li {
    color: #fff !important;
}


/* hover number */

.services-alternate-section .service-alt-item:hover small {
    background: #fff !important;
    color: #003B9E !important;
}


/* hover button */

.services-alternate-section .service-alt-item:hover .service-alt-btn {
    background: #fff !important;
    color: #003B9E !important;
}

.services-alternate-section .service-alt-item:hover .service-alt-btn i {
    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    ) !important;

    color: #fff !important;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 991px) {

    .services-alternate-section .service-alt-item,
    .services-alternate-section .service-alt-item.reverse {
        display: flex !important;
        flex-direction: column !important;

        min-height: auto !important;
    }

    .services-alternate-section .service-alt-image {
        width: 100% !important;
        height: 350px !important;
        min-height: 350px !important;
    }

    .services-alternate-section .service-alt-image img {
        height: 350px !important;
        min-height: 350px !important;
    }

    .services-alternate-section .service-alt-content {
        padding: 40px 30px !important;
    }
}


@media (max-width: 575px) {

    .services-alternate-section {
        padding: 60px 15px !important;
    }

    .services-alternate-section .service-alt-content {
        padding: 35px 22px !important;
    }

    .services-alternate-section .service-alt-content h3 {
        font-size: 26px !important;
    }

    .services-alternate-section .service-alt-content ul {
        grid-template-columns: 1fr !important;
    }

    .services-alternate-section .service-alt-item::before {
        width: 85px !important;
        height: 85px !important;
    }
}

.tms-service-icon {
    position: absolute !important;
    top: 15px !important;   /* 32px → 15px */
}

.tms-service-card {
    padding: 160px 32px 32px !important;
}


/* Normal card = WHITE */
.tms-service-card {
    background: #ffffff !important;
}

/* Hover / touch = BLUE */
.tms-service-card:hover,
.tms-service-card:active {
    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    ) !important;
}
/* =========================================================
   WHY CHOOSE US SECTION
========================================================= */

.why-flow-section {
    position: relative;
    padding: 40px 0;
    background: #f5f8ff;
    overflow: hidden;
}


/* =========================================================
   HEADING
========================================================= */

.why-flow-heading {
    max-width: 850px;
    margin: 0 auto 70px;
    text-align: center;
}

.why-flow-heading > span {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 12px;

    margin-bottom: 15px;

    font-size: 14px;
    font-weight: 800;
    letter-spacing: 2px;

    color: #006CFF;
}

.why-flow-heading > span::before,
.why-flow-heading > span::after {
    content: "";
    width: 35px;
    height: 2px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );
}

.why-flow-heading h2 {
    margin: 0 0 20px;

    font-size: 46px;
    line-height: 1.15;
    font-weight: 700;

    color: #172033;
}

.why-flow-heading h2 strong {
    display: block;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );

    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.why-flow-heading p {
    max-width: 780px;
    margin: 12px auto 0;

    color: #667085;

    font-size: 16px;
    line-height: 1.8;
}


/* =========================================================
   TIMELINE
========================================================= */

.why-flow-timeline {
    position: relative;

    max-width: 1100px;

    margin: 0 auto;

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 30px;
}


/* =========================================================
   CARD WRAPPER
========================================================= */

.why-flow-item {
    position: relative;
}


/* =========================================================
   CARD
========================================================= */

.why-flow-card {
    position: relative;

    min-height: 285px;

    padding: 45px 38px 35px;

    background: #ffffff;

    border: 1px solid rgba(0, 59, 158, 0.08);

    border-radius: 20px;

    overflow: hidden;

    cursor: pointer;

    box-shadow:
        0 10px 35px rgba(0, 59, 158, 0.07);

    transition:
        transform .45s ease,
        background .45s ease,
        border-color .45s ease,
        box-shadow .45s ease;
}


/* =========================================================
   GOLD TOP LINE
========================================================= */

.why-flow-card::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 0;
    height: 4px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    transition: width .5s ease;
}


/* =========================================================
   HOVER
========================================================= */

.why-flow-card:hover {
    transform: translateY(-8px);

    border-color: rgba(0, 108, 255, 0.25);

    box-shadow:
        0 20px 50px rgba(0, 59, 158, 0.16);
}

.why-flow-card:hover::before {
    width: 100%;
}


/* =========================================================
   ACTIVE / CLICKED CARD
========================================================= */

.why-flow-card.active {

    background: linear-gradient(
        135deg,
        #003B9E 0%,
        #006CFF 48%,
        #003B9E 100%
    );

    border-color: #FFD84D;

    transform: translateY(-8px);

    box-shadow:
        0 25px 55px rgba(0, 59, 158, 0.28);
}

.why-flow-card.active::before {
    width: 100%;
}


/* =========================================================
   NUMBER
========================================================= */

.why-flow-number {
    position: absolute;

    top: 22px;
    right: 25px;

    font-size: 16px;
    font-weight: 800;

    color: #d9e4fa;

    transition:
        color .4s ease,
        transform .4s ease;
}

.why-flow-card:hover .why-flow-number {
    color: #006CFF;
}

.why-flow-card.active .why-flow-number {
    color: rgba(255, 216, 77, 0.95);

    transform: scale(1.12);
}


/* =========================================================
   ICON
========================================================= */

.why-flow-icon {
    width: 65px;
    height: 65px;

    margin-bottom: 25px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 15px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    color: #ffffff;

    font-size: 25px;

    box-shadow:
        0 8px 22px rgba(216, 154, 0, 0.25);

    transition:
        transform .45s ease,
        box-shadow .45s ease;
}

.why-flow-card:hover .why-flow-icon {
    transform: rotate(-5deg) scale(1.08);
}

.why-flow-card.active .why-flow-icon {
    transform: rotate(-5deg) scale(1.1);

    box-shadow:
        0 10px 28px rgba(255, 216, 77, 0.35);
}


/* =========================================================
   SMALL LABEL
========================================================= */

.why-flow-card > span {
    display: block;

    margin-bottom: 8px;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 1.5px;

    color: #006CFF;

    transition: color .4s ease;
}

.why-flow-card.active > span {
    color: #FFD84D;
}


/* =========================================================
   TITLE
========================================================= */

.why-flow-card h3 {
    margin: 0 0 12px;

    font-size: 23px;
    line-height: 1.3;

    font-weight: 700;

    color: #172033;

    transition:
        color .4s ease,
        transform .4s ease;
}

.why-flow-card.active h3 {
    color: #ffffff;

    transform: translateX(3px);
}


/* =========================================================
   DESCRIPTION
========================================================= */

.why-flow-card p {
    margin: 0;

    font-size: 16px;
    line-height: 1.75;

    color: #000;

    transition:
        color .4s ease,
        opacity .4s ease;
    text-align: justify;    
}

.why-flow-card.active p {
    color: rgba(255, 255, 255, 0.9);
}


/* =========================================================
   CARD ACTIVE GLOW
========================================================= */

.why-flow-card.active::after {
    content: "";

    position: absolute;

    width: 180px;
    height: 180px;

    right: -80px;
    bottom: -90px;

    border-radius: 50%;

    background: rgba(255, 216, 77, 0.12);

    pointer-events: none;
}


/* =========================================================
   BOTTOM CTA
========================================================= */

.why-flow-bottom {
    max-width: 850px;

    margin: 85px auto 0;

    padding: 55px 45px;

    text-align: center;

    border-radius: 25px;

    background: linear-gradient(
        135deg,
        #003B9E 0%,
        #006CFF 48%,
        #003B9E 100%
    );

    box-shadow:
        0 20px 55px rgba(0, 59, 158, 0.2);

    position: relative;

    overflow: hidden;
}

.why-flow-bottom::before {
    content: "";

    position: absolute;

    width: 230px;
    height: 230px;

    top: -130px;
    right: -80px;

    border-radius: 50%;

    background: rgba(255, 216, 77, 0.12);
}

.why-flow-bottom > span {
    position: relative;

    display: block;

    margin-bottom: 12px;

    font-size: 12px;
    font-weight: 800;

    letter-spacing: 2px;

    color: #FFD84D;
}

.why-flow-bottom h2 {
    position: relative;

    margin: 0 0 15px;

    color: #ffffff;

    font-size: 36px;
    line-height: 1.2;
}

.why-flow-bottom h2 strong {
    color: #FFD84D;
}

.why-flow-bottom p {
    position: relative;

    max-width: 700px;

    margin: 0 auto 28px;

    color: rgba(255, 255, 255, 0.88);

    font-size: 15px;
    line-height: 1.8;
}


/* =========================================================
   CTA BUTTON
========================================================= */

.why-flow-btn {
    position: relative;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 12px;

    padding: 15px 28px;

    border-radius: 50px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    color: #ffffff !important;

    font-size: 14px;
    font-weight: 700;

    text-decoration: none;

    box-shadow:
        0 8px 25px rgba(216, 154, 0, 0.3);

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.why-flow-btn i {
    transition: transform .3s ease;
}

.why-flow-btn:hover {
    transform: translateY(-3px);

    box-shadow:
        0 12px 30px rgba(216, 154, 0, 0.4);
}

.why-flow-btn:hover i {
    transform: translateX(5px);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 991px) {

    .why-flow-section {
        padding: 80px 0 90px;
    }

    .why-flow-heading {
        margin-bottom: 50px;
    }

    .why-flow-heading h2 {
        font-size: 38px;
    }

    .why-flow-timeline {
        grid-template-columns: 1fr;

        gap: 25px;

        max-width: 650px;
    }

    .why-flow-card {
        min-height: auto;
    }

}


/* =========================================================
   MOBILE SMALL
========================================================= */

@media (max-width: 575px) {

    .why-flow-section {
        padding: 35px 0;
    }

    .why-flow-heading {
        padding: 0 15px;
    }

    .why-flow-heading h2 {
        font-size: 30px;
    }

    .why-flow-heading p {
        font-size: 14px;
    }

    .why-flow-card {
        padding: 38px 25px 30px;

        border-radius: 17px;
    }

    .why-flow-card h3 {
        font-size: 20px;
    }

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

    .why-flow-icon {
        width: 58px;
        height: 58px;

        font-size: 22px;
    }

    .why-flow-bottom {
        margin: 60px 15px 0;

        padding: 40px 25px;

        border-radius: 20px;
    }

    .why-flow-bottom h2 {
        font-size: 28px;
    }

}


/* =========================================================
   TOUCH DEVICE
========================================================= */

@media (hover: none) {

    .why-flow-card:hover {
        transform: none;
        box-shadow:
            0 10px 35px rgba(0, 59, 158, 0.07);
    }

    .why-flow-card.active {
        transform: translateY(-6px);
    }

}

/* =========================================================
   WHY CHOOSE US - 3 CARDS PER ROW
========================================================= */

.why-flow-timeline {
    position: relative;

    max-width: 1200px;

    margin: 0 auto;

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 30px;
}


/* All cards same height */

.why-flow-item {
    position: relative;
    width: 100%;
}


/* Card */

.why-flow-card {
    width: 100%;
    min-height: 300px;

    box-sizing: border-box;
}

/* =========================================================
   WHY CHOOSE US - PERFECT 3 COLUMN ALIGNMENT
   Add this at the VERY END of CSS
========================================================= */

.why-flow-timeline {
    width: 100%;
    max-width: 1200px;

    margin: 0 auto;

    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 30px;

    align-items: stretch;
}


/* =========================================
   RESET OLD LEFT / RIGHT POSITIONING
========================================= */

.why-flow-item,
.why-flow-item.left,
.why-flow-item.right {
    position: relative;

    width: 100%;

    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;

    margin: 0 !important;

    padding: 0 !important;

    transform: none !important;

    align-self: stretch;
}


/* =========================================
   CARD SAME HEIGHT
========================================= */

.why-flow-card {
    position: relative;

    width: 100%;

    height: 100%;

    min-height: 315px;

    box-sizing: border-box;

    margin: 0 !important;

    display: flex;
    flex-direction: column;

    padding: 45px 38px 35px;
}


/* =========================================
   KEEP CARD CONTENT ALIGNED
========================================= */

.why-flow-card h3 {
    min-height: 60px;

    margin-bottom: 12px;
}

.why-flow-card p {
    margin-top: 0;
}


/* =========================================
   ICON
========================================= */

.why-flow-icon {
    flex-shrink: 0;
}


/* =========================================
   NUMBER
========================================= */

.why-flow-number {
    top: 22px;
    right: 25px;
}


/* =========================================
   DESKTOP - 3 CARDS
========================================= */

@media (min-width: 992px) {

    .why-flow-timeline {
        grid-template-columns: repeat(3, 1fr);

        grid-auto-rows: 1fr;
    }

}


/* =========================================
   TABLET - 2 CARDS
========================================= */

@media (min-width: 576px) and (max-width: 991px) {

    .why-flow-timeline {
        grid-template-columns: repeat(2, 1fr);

        gap: 25px;
    }

    .why-flow-card {
        min-height: 300px;
    }

}


/* =========================================
   MOBILE - 1 CARD
========================================= */

@media (max-width: 575px) {

    .why-flow-timeline {
        grid-template-columns: 1fr;

        gap: 20px;
    }

    .why-flow-card {
        min-height: auto;

        height: auto;

        padding: 38px 25px 30px;
    }

    .why-flow-card h3 {
        min-height: auto;
    }

}

/* =========================================================
   INDUSTRIES - MODERN PREMIUM DESIGN
========================================================= */

.why-modern-section {
    position: relative;
    padding: 40px 0;
    background: #ffffff;
    overflow: hidden;
}


/* subtle background */

.why-modern-section::before {
    content: "";
    position: absolute;
    width: 500px;
    height: 500px;
    top: -250px;
    right: -200px;
    border-radius: 50%;
    background: rgba(0, 108, 255, 0.035);
}

.why-modern-section::after {
    content: "";
    position: absolute;
    width: 400px;
    height: 400px;
    bottom: -200px;
    left: -180px;
    border-radius: 50%;
    background: rgba(255, 216, 77, 0.05);
}


/* =========================================================
   HEADING
========================================================= */

.why-flow-heading {
    position: relative;
    z-index: 2;

    max-width: 800px;
    margin: 0 auto 65px;

    text-align: center;
}

.why-flow-heading > span {
    display: inline-flex;
    align-items: center;
    gap: 12px;

    margin-bottom: 15px;

    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;

    color: #006CFF;
}

.why-flow-heading > span::before,
.why-flow-heading > span::after {
    content: "";

    width: 30px;
    height: 2px;

    background: linear-gradient(
        90deg,
        #003B9E,
        #006CFF,
        #003B9E
    );
}

.why-flow-heading h2 {
    margin: 0;

    font-size: 44px;
    line-height: 1.2;

    color: #10213c;
}

.why-flow-heading h2 strong {
    display: inline-block;

    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 45%,
        #003B9E 100%
    );

    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.why-flow-heading p {
    margin: 20px auto 0;

    max-width: 720px;

    font-size: 15px;
    line-height: 1.8;

    color: #66758c;
}


/* =========================================================
   GRID
========================================================= */

.why-modern-grid {
    position: relative;
    z-index: 2;

    max-width: 1200px;
    margin: 0 auto;

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 25px;
}


/* =========================================================
   CARD
========================================================= */

.why-card {
    position: relative;

    min-height: 280px;

    padding: 35px 32px;

    background: #ffffff;

    border-radius: 18px;

    border: 1px solid #e6edf7;

    overflow: hidden;

    box-shadow:
        0 10px 30px rgba(0, 59, 158, 0.06);

    transition:
        transform 0.45s ease,
        background 0.45s ease,
        box-shadow 0.45s ease,
        border-color 0.45s ease;
}


/* Blue hover background */

.why-card::before {
    content: "";

    position: absolute;

    width: 0;
    height: 0;

    right: -80px;
    bottom: -80px;

    border-radius: 50%;

    background: linear-gradient(
        135deg,
        #003B9E,
        #006CFF
    );

    transition:
        width 0.55s ease,
        height 0.55s ease;
}


/* top gold line */

.why-card::after {
    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 4px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    transform: scaleX(0);

    transform-origin: left;

    transition: transform 0.45s ease;
}


/* hover */

.why-card:hover {
    transform: translateY(-8px);

    background: #003B9E;

    border-color: #006CFF;

    box-shadow:
        0 22px 45px rgba(0, 59, 158, 0.18);
}

.why-card:hover::before {
    width: 550px;
    height: 550px;
}

.why-card:hover::after {
    transform: scaleX(1);
}


/* =========================================================
   NUMBER
========================================================= */

.why-number {
    position: absolute;

    top: 20px;
    right: 25px;

    z-index: 3;

    font-size: 34px;
    font-weight: 900;

    color: rgba(0, 59, 158, 0.08);

    transition:
        color 0.4s ease,
        transform 0.4s ease;
}

.why-card:hover .why-number {
    color: rgba(255, 216, 77, 0.25);

    transform: scale(1.1);
}


/* =========================================================
   CARD TOP
========================================================= */

.why-card-top {
    position: relative;
    z-index: 3;

    display: flex;
    align-items: center;

    gap: 18px;

    min-height: 72px;
}


/* =========================================================
   ICON
========================================================= */

.why-icon {
    flex: 0 0 60px;

    width: 60px;
    height: 60px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: linear-gradient(
        135deg,
        #B87500,
        #FFD84D,
        #D99A00
    );

    box-shadow:
        0 8px 20px rgba(184, 117, 0, 0.20);

    transition:
        transform 0.45s ease,
        box-shadow 0.45s ease;
}

.why-icon i {
    font-size: 23px;

    color: #ffffff;

    transition: transform 0.4s ease;
}

.why-card:hover .why-icon {
    transform: rotate(-8deg) scale(1.1);

    box-shadow:
        0 10px 25px rgba(255, 216, 77, 0.35);
}

.why-card:hover .why-icon i {
    transform: scale(1.15);
}


/* =========================================================
   SMALL TITLE
========================================================= */

.why-small-title {
    display: block;

    margin-bottom: 4px;

    font-size: 9px;

    font-weight: 800;

    letter-spacing: 1.5px;

    color: #006CFF;

    transition: color 0.4s ease;
}

.why-card:hover .why-small-title {
    color: #FFD84D;
}


/* =========================================================
   TITLE
========================================================= */

.why-card h3 {
    position: relative;
    z-index: 3;

    margin: 0;

    font-size: 19px;

    line-height: 1.35;

    color: #10213c;

    transition: color 0.4s ease;
}

.why-card:hover h3 {
    color: #ffffff;
}


/* =========================================================
   LINE
========================================================= */

.why-line {
    position: relative;
    z-index: 3;

    width: 45px;
    height: 2px;

    margin: 25px 0 18px;

    background: #006CFF;

    transition:
        width 0.45s ease,
        background 0.45s ease;
}

.why-card:hover .why-line {
    width: 90px;

    background: #FFD84D;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.why-card p {
    position: relative;
    z-index: 3;

    margin: 0;

    text-align: justify;

    font-size: 16px;

    line-height: 1.75;

    color: #000;

    transition: color 0.4s ease;
}

.why-card:hover p {
    color: rgba(255,255,255,0.85);
}


/* =========================================================
   TOUCH ANIMATION
========================================================= */

@media (hover: none) {

    .why-card:active {
        transform: translateY(-8px);

        background: #003B9E;

        border-color: #006CFF;

        box-shadow:
            0 22px 45px rgba(0, 59, 158, 0.18);
    }

    .why-card:active::before {
        width: 550px;
        height: 550px;
    }

    .why-card:active::after {
        transform: scaleX(1);
    }

    .why-card:active h3 {
        color: #ffffff;
    }

    .why-card:active p {
        color: rgba(255,255,255,0.85);
    }

    .why-card:active .why-small-title {
        color: #FFD84D;
    }

    .why-card:active .why-icon {
        transform: rotate(-8deg) scale(1.1);
    }

    .why-card:active .why-line {
        width: 90px;
        background: #FFD84D;
    }
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .why-modern-section {
        padding: 35px 0;
    }

    .why-modern-grid {
        grid-template-columns: repeat(2, 1fr);

        gap: 22px;
    }

    .why-flow-heading h2 {
        font-size: 38px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 575px) {

    .why-modern-section {
        padding: 35px 0;
    }

    .why-flow-heading {
        margin-bottom: 40px;
    }

    .why-flow-heading h2 {
        font-size: 29px;
    }

    .why-flow-heading p {
        font-size: 14px;
    }

    .why-modern-grid {
        grid-template-columns: 1fr;

        gap: 18px;
    }

    .why-card {
        min-height: 260px;

        padding: 30px 25px;
    }

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

    .why-icon {
        flex: 0 0 55px;

        width: 55px;
        height: 55px;
    }

    .why-icon i {
        font-size: 21px;
    }

    .why-number {
        font-size: 28px;

        top: 18px;
        right: 20px;
    }

}

/* =========================================================
   PREMIUM TMS SERVICE SECTION
========================================================= */

.tms-premium-services {
    position: relative;
    padding: 40px 0;
    background: linear-gradient(
        180deg,
        #f7faff 0%,
        #edf4ff 100%
    );

    overflow: hidden;
}


/* =========================================================
   INTRO
========================================================= */

.service-intro {
    max-width: 850px;
    margin: 0 auto 50px;
    text-align: center;
}


.service-kicker {
    display: inline-flex;
    align-items: center;
    gap: 12px;

    margin-bottom: 14px;

    color: #006CFF;

    font-size: 12px;
    font-weight: 800;

    letter-spacing: 2.5px;
}


.kicker-line {
    width: 32px;
    height: 2px;

    background: linear-gradient(
        90deg,
        #B87500,
        #FFD84D,
        #D99A00
    );
}


.service-intro h2 {
    margin: 0;

    color: #09264d;

    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;
}


.service-intro h2 span {
    display: block;

    margin-top: 5px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}


.service-intro p {
    max-width: 680px;

    margin: 18px auto 0;

    color: #607894;

    font-size: 15px;
    line-height: 1.8;
}


/* =========================================================
   SLIDER WINDOW
========================================================= */

.premium-service-window {
    position: relative;

    width: 100%;

    overflow: hidden;
}


/* =========================================================
   TRACK
========================================================= */

.premium-service-track {
    display: flex;
    align-items: stretch;

    width: max-content;

    gap: 28px;

    padding-left: 35px;

    animation: premiumServiceMove 42s linear infinite;

    will-change: transform;
}


.premium-service-window:hover
.premium-service-track {
    animation-play-state: paused;
}


/* =========================================================
   CARD
========================================================= */

.premium-service-card {
    position: relative;

    flex: 0 0 345px;

    width: 345px;
    min-height: 510px;

    background: #ffffff;

    border: 1px solid #e1eaf7;

    border-radius: 22px;

    overflow: hidden;

    box-shadow:
        0 12px 35px rgba(0, 59, 158, 0.08);

    transition:
        transform 0.45s ease,
        background 0.45s ease,
        border-color 0.45s ease,
        box-shadow 0.45s ease;
}


/* =========================================================
   CARD HOVER
========================================================= */

.premium-service-card:hover {
    transform: translateY(-12px);

    background: linear-gradient(
        145deg,
        #003B9E 0%,
        #006CFF 55%,
        #003B9E 100%
    );

    border-color: #006CFF;

    box-shadow:
        0 25px 55px rgba(0, 65, 170, 0.25);
}


/* =========================================================
   IMAGE
========================================================= */

.service-card-image {
    position: relative;

    height: 245px;

    overflow: hidden;

    background: #eaf2ff;
}


.service-card-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.6s ease;
}


.premium-service-card:hover
.service-card-image img {
    transform: scale(1.07);
}


/* =========================================================
   NUMBER BADGE
========================================================= */

.service-badge {
    position: absolute;

    top: 18px;
    left: 18px;

    width: 52px;
    height: 52px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #ffffff;

    color: #006CFF;

    border: 2px solid #006CFF;

    font-size: 14px;
    font-weight: 900;

    box-shadow:
        0 8px 20px rgba(0, 59, 158, 0.16);

    transition:
        background 0.4s ease,
        color 0.4s ease,
        border-color 0.4s ease;
}


.premium-service-card:hover
.service-badge {
    background: linear-gradient(
        135deg,
        #B87500,
        #FFD84D,
        #D99A00
    );

    color: #ffffff;

    border-color: #FFD84D;
}


/* =========================================================
   FLOATING ICON
========================================================= */

.service-icon {
    position: absolute;

    right: 20px;
    bottom: 20px;

    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 17px;

    background: #ffffff;

    color: #006CFF;

    border: 2px solid #006CFF;

    font-size: 22px;

    box-shadow:
        0 10px 25px rgba(0, 59, 158, 0.18);

    transition:
        transform 0.45s ease,
        background 0.4s ease,
        color 0.4s ease,
        border-color 0.4s ease;
}


.premium-service-card:hover
.service-icon {
    transform: translateY(-5px) rotate(5deg);

    background: linear-gradient(
        135deg,
        #B87500,
        #FFD84D,
        #D99A00
    );

    color: #ffffff;

    border-color: #FFD84D;
}


/* =========================================================
   CARD BODY
========================================================= */

.service-card-body {
    min-height: 265px;

    padding: 26px 27px 25px;

    display: flex;
    flex-direction: column;
}


.service-card-body h3 {
    margin: 0 0 12px;

    color: #09264d;

    font-size: 21px;
    line-height: 1.3;

    font-weight: 800;

    transition: color 0.35s ease;
}


.service-card-body p {
    margin: 0;

    color: #637b96;

    font-size: 14px;
    line-height: 1.75;

    transition: color 0.35s ease;
}


/* =========================================================
   HOVER TEXT
========================================================= */

.premium-service-card:hover
.service-card-body h3 {
    color: #ffffff;
}


.premium-service-card:hover
.service-card-body p {
    color: rgba(255, 255, 255, 0.88);
}


/* =========================================================
   SERVICE LINK
========================================================= */

.service-link {
    margin-top: auto;

    display: inline-flex;
    align-items: center;
    justify-content: space-between;

    width: 100%;

    color: #003B9E;

    text-decoration: none;

    font-size: 13px;
    font-weight: 800;

    transition:
        color 0.35s ease;
}


.service-link span {
    width: 38px;
    height: 38px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #edf4ff;

    transition:
        transform 0.35s ease,
        background 0.35s ease,
        color 0.35s ease;
}


.service-link:hover span {
    transform: translateX(5px);

    background: linear-gradient(
        135deg,
        #B87500,
        #FFD84D,
        #D99A00
    );

    color: #ffffff;
}


.premium-service-card:hover
.service-link {
    color: #ffffff;
}


.premium-service-card:hover
.service-link span {
    background: linear-gradient(
        135deg,
        #B87500,
        #FFD84D,
        #D99A00
    );

    color: #ffffff;
}


/* =========================================================
   ARROW
========================================================= */

.premium-service-arrow {
    position: absolute;

    right: 30px;
    top: 50%;

    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: none;
    border-radius: 50%;

    background: linear-gradient(
        135deg,
        #003B9E,
        #006CFF
    );

    color: #ffffff;

    font-size: 18px;

    cursor: pointer;

    z-index: 10;

    box-shadow:
        0 12px 30px rgba(0, 59, 158, 0.25);

    transition:
        transform 0.35s ease,
        background 0.35s ease;
}


.premium-service-arrow:hover {
    transform: translateY(-50%) scale(1.1);

    background: linear-gradient(
        135deg,
        #B87500,
        #FFD84D,
        #D99A00
    );
}


/* =========================================================
   AUTO SCROLL
========================================================= */

@keyframes premiumServiceMove {

    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1100px) {

    .tms-premium-services {
        padding: 350px 0;
    }

    .service-intro h2 {
        font-size: 34px;
    }

    .premium-service-card {
        flex-basis: 310px;
        width: 310px;
    }

    .service-card-image {
        height: 225px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .tms-premium-services {
        padding: 35px 0;
    }


    .service-intro {
        padding: 0 18px;
        margin-bottom: 30px;
    }


    .service-kicker {
        font-size: 10px;
        letter-spacing: 1.7px;
    }


    .kicker-line {
        width: 22px;
    }


    .service-intro h2 {
        font-size: 29px;
    }


    .service-intro p {
        font-size: 13px;
        line-height: 1.7;
    }


    .premium-service-track {
        gap: 18px;
        padding-left: 18px;

        animation-duration: 35s;
    }


    .premium-service-card {
        flex: 0 0 285px;

        width: 285px;
        min-height: 465px;

        border-radius: 17px;
    }


    .service-card-image {
        height: 210px;
    }


    .service-card-body {
        min-height: 255px;
        padding: 22px;
    }


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


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


    .service-badge {
        width: 45px;
        height: 45px;

        top: 14px;
        left: 14px;
    }


    .service-icon {
        width: 48px;
        height: 48px;

        right: 14px;
        bottom: 14px;

        border-radius: 14px;

        font-size: 18px;
    }


    .premium-service-arrow {
        display: none;
    }

}


/* =========================================================
   TOUCH DEVICES
========================================================= */

@media (hover: none) {

    .premium-service-card:active {

        transform: scale(0.98);

        background: linear-gradient(
            145deg,
            #003B9E,
            #006CFF,
            #003B9E
        );
    }


    .premium-service-card:active
    .service-card-body h3 {
        color: #ffffff;
    }


    .premium-service-card:active
    .service-card-body p {
        color: rgba(255,255,255,0.88);
    }

}

/* =========================================================
   EXPLORE SERVICE BOX
========================================================= */

.service-link {
    width: 100%;
    min-height: 52px;

    margin-top: auto;
    padding: 0 8px 0 20px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    box-sizing: border-box;

    border: 1px solid #d9e5f5;
    border-radius: 10px;

    background: #f5f9ff;

    color: #003B9E;

    text-decoration: none;

    font-size: 14px;
    font-weight: 800;

    transition:
        background 0.35s ease,
        border-color 0.35s ease,
        color 0.35s ease,
        transform 0.35s ease,
        box-shadow 0.35s ease;
}


/* Arrow Box */

.service-link span {
    width: 38px;
    height: 38px;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 8px;

    background: linear-gradient(
        135deg,
        #003B9E,
        #006CFF
    );

    color: #ffffff;

    transition:
        transform 0.35s ease,
        background 0.35s ease;
}


/* Hover */

.service-link:hover {
    background: linear-gradient(
        90deg,
        #003B9E 0%,
        #006CFF 100%
    );

    border-color: #006CFF;

    color: #ffffff;

    transform: translateY(-2px);

    box-shadow:
        0 8px 20px rgba(0, 76, 190, 0.18);
}


/* Arrow Hover */

.service-link:hover span {
    background: linear-gradient(
        135deg,
        #B87500,
        #FFD84D,
        #D99A00
    );

    color: #ffffff;

    transform: translateX(3px);
}


/* Card Hover */

.premium-service-card:hover .service-link {
    background: rgba(255, 255, 255, 0.12);

    border-color: rgba(255, 255, 255, 0.45);

    color: #ffffff;
}


.premium-service-card:hover .service-link span {
    background: linear-gradient(
        135deg,
        #B87500,
        #FFD84D,
        #D99A00
    );

    color: #ffffff;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .service-link {
        min-height: 48px;

        padding-left: 16px;

        font-size: 13px;
    }

    .service-link span {
        width: 34px;
        height: 34px;
    }

}

.service-intro h2 {
    margin: 0;

    color: #09264d;

    font-size: 40px;
    line-height: 1.2;
    font-weight: 800;

    white-space: nowrap;
}

.service-intro h2 span {
    display: inline;

    margin-left: 8px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 45%,
        #D99A00 100%
    );

    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* =========================================================
   NAVBAR - GAP & CONTACT BUTTON FIX
========================================================= */

@media (min-width: 992px) {

    /* Logo side */
    .header-layout1 .logo {
        margin-right: 20px !important;
    }

    /* Navigation */
    .header-layout1 .main-menu {
        margin-left: 0 !important;
        padding-left: 0 !important;
    }

    .header-layout1 .main-menu > ul {
        display: flex !important;
        align-items: center !important;
        gap: 28px !important;
        margin-left: 0 !important;
        padding-left: 0 !important;
    }

    .header-layout1 .main-menu > ul > li {
        margin: 0 !important;
        padding: 0 !important;
    }

    .header-layout1 .main-menu > ul > li > a {
        white-space: nowrap !important;
    }

}

@media (min-width: 992px) {

    /* Logo to Home gap */
    .header-layout1 .menu-area .row {
        justify-content: flex-start !important;
    }

    .header-layout1 .header-logo {
        margin-right: 25px !important;
    }

    .header-layout1 .main-menu {
        margin-left: 0 !important;
    }

    .header-layout1 .main-menu > ul {
        margin-left: 0 !important;
        padding-left: 0 !important;
    }

}

@media (min-width: 992px) {

    /* Navbar row */
    .header-layout1 .menu-area .row {
        justify-content: space-between !important;
    }

    /* Logo -> Home gap மட்டும் குறைக்க */
    .header-layout1 .header-logo {
        margin-right: 15px !important;
    }

    .header-layout1 .main-menu {
        margin-left: 0 !important;
    }

    .header-layout1 .main-menu > ul {
        margin-left: 0 !important;
        padding-left: 0 !important;
    }

    /* Contact Us button always visible */
    .header-layout1 .header-button {
        display: flex !important;
        align-items: center !important;
        margin-left: 15px !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .header-layout1 .header-button .th-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        visibility: visible !important;
        opacity: 1 !important;

        white-space: nowrap !important;
    }

}

/* =========================================================
   TAI MING SHENG - CUSTOM FOOTER
========================================================= */

.custom-footer {
    position: relative;
    background: #061a36 !important;
    overflow: hidden;
    color: #ffffff;
}

/* Background Shape */
.custom-footer-shape {
    position: absolute;
    top: -180px;
    right: -180px;
    width: 450px;
    height: 450px;
    border-radius: 50%;
    background: rgba(0, 108, 255, 0.10);
    pointer-events: none;
}

.custom-footer .widget-area {
    position: relative;
    z-index: 2;
    padding: 40px 0 !important;
}

/* Footer Columns */
.footer-custom-row {
    align-items: flex-start !important;
}

/* =========================================================
   LOGO
========================================================= */

.custom-footer-logo {
    margin-bottom: 22px !important;
}

.custom-footer-logo img {
    max-width: 190px;
    height: auto;
}

/* =========================================================
   ABOUT TEXT
========================================================= */

.custom-footer .about-text {
    max-width: 390px;
    margin: 0 0 14px !important;
    color: rgba(255,255,255,0.72) !important;
    font-size: 16px !important;
    line-height: 1.8 !important;
    text-align: justify;
}

/* =========================================================
   FOOTER HEADINGS
========================================================= */

.custom-footer .widget_title {
    position: relative;
    margin: 5px 0 25px !important;
    padding-bottom: 12px !important;

    color: #ffffff !important;
    font-size: 19px !important;
    font-weight: 700 !important;
}

.custom-footer .widget_title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;

    width: 38px;
    height: 3px;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 50%,
        #D99A00 100%
    );

    border-radius: 5px;
}

/* =========================================================
   QUICK LINKS + SERVICES
========================================================= */

.custom-footer .menu {
    margin: 0 !important;
    padding: 0 !important;
}

.custom-footer .menu li {
    margin: 0 0 11px !important;
    padding: 0 !important;
}

.custom-footer .menu li a {
    position: relative;

    display: inline-block;

    color: rgba(255,255,255,0.72) !important;

    font-size: 16px !important;
    line-height: 1.5;

    text-decoration: none !important;

    transition: all 0.3s ease;
}

.custom-footer .menu li a::before {
    content: "›";

    margin-right: 8px;

    color: #FFD84D;

    font-size: 16px;
    font-weight: 700;
}

.custom-footer .menu li a:hover {
    color: #FFD84D !important;
    padding-left: 4px;
}

/* =========================================================
   SOCIAL ICONS
========================================================= */

.custom-footer-social {
    display: flex !important;
    align-items: center;
    gap: 9px;
    margin-top: 22px;
}

.custom-footer-social a {
    display: flex !important;
    align-items: center;
    justify-content: center;

    width: 38px;
    height: 38px;

    color: #ffffff !important;

    background: rgba(255,255,255,0.08) !important;

    border: 1px solid rgba(255,216,77,0.25);

    border-radius: 50%;

    font-size: 14px;

    transition: all 0.3s ease;
}

.custom-footer-social a:hover {
    color: #08203f !important;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 50%,
        #D99A00 100%
    ) !important;

    border-color: #FFD84D;

    transform: translateY(-3px);
}

/* =========================================================
   CONTACT DETAILS
========================================================= */

.custom-footer-contact {
    display: flex;
    align-items: flex-start;

    gap: 13px;

    margin-bottom: 22px;
}

.custom-footer-contact-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    min-width: 42px;
    width: 42px;
    height: 42px;

    color: #003B9E;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 50%,
        #D99A00 100%
    );

    border-radius: 50%;

    font-size: 15px;
}

.custom-footer-contact span {
    display: block;

    margin-bottom: 5px;

    color: #FFD84D !important;

    font-size: 16px !important;
    font-weight: 800 !important;

    letter-spacing: 1.5px;
}

.custom-footer-contact p {
    margin: 0 !important;

    color: rgba(255,255,255,0.72) !important;

    font-size: 15px !important;
    line-height: 1.7 !important;
}

.custom-footer-contact a {
    display: block;

    margin-bottom: 3px;

    color: rgba(255,255,255,0.72) !important;

    font-size: 13px !important;

    text-decoration: none !important;

    word-break: break-word;

    transition: all 0.3s ease;
}

.custom-footer-contact a:hover {
    color: #FFD84D !important;
}

/* =========================================================
   COPYRIGHT
========================================================= */

.custom-copyright {
    position: relative;
    z-index: 2;

    padding: 18px 0 !important;

    background: #041329 !important;

    border-top: 1px solid rgba(255,255,255,0.08);
}

.custom-copyright .copyright-text {
    margin: 0 !important;

    color: rgba(255,255,255,0.65) !important;

    font-size: 13px !important;

    text-align: center !important;
}

.custom-copyright .copyright-text a {
    color: #FFD84D !important;

    font-weight: 700;

    text-decoration: none !important;
}

.custom-copyright .copyright-text a:hover {
    color: #ffffff !important;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .custom-footer .widget-area {
        padding: 55px 0 35px !important;
    }

    .custom-footer .footer-widget {
        margin-bottom: 25px;
    }

    .custom-footer-logo img {
        max-width: 175px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .custom-footer .widget-area {
        padding: 45px 0 25px !important;
    }

    .custom-footer .about-text {
        max-width: 100%;
        font-size: 13px !important;
    }

    .custom-footer .widget_title {
        margin-top: 20px !important;
        margin-bottom: 20px !important;
        font-size: 18px !important;
    }

    .custom-footer .menu li {
        margin-bottom: 9px !important;
    }

    .custom-footer-contact {
        margin-bottom: 18px;
    }

    .custom-copyright {
        padding: 15px 10px !important;
    }

    .custom-copyright .copyright-text {
        font-size: 11px !important;
        line-height: 1.7 !important;
    }

}

.custom-footer {
    background: #003B9E !important;
}

.custom-copyright {
    background: #002B73 !important;
}

/* =========================================
   WHY CHOOSE US
========================================= */

.tms-why-section {
    position: relative;
    padding: 40px 0 !important;
    background-image: url("assets/img/normal/about_2_1.jpg");
    background-size: cover;
    background-position: center;
    overflow: hidden;
}

.tms-why-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 59, 158, 0.88);
    z-index: 1;
}

.tms-why-section .container {
    position: relative;
    z-index: 2;

    width: 100% !important;
    max-width: 100% !important;

    padding-left: 40px !important;
    padding-right: 40px !important;
}


/* HEADING */

.tms-why-heading {
    text-align: center;
    margin-bottom: 35px;
}

.tms-why-subtitle {
    display: block;
    margin-bottom: 8px;
    color: #FFD84D;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 3px;
}

.tms-why-heading h2 {
    margin: 0;
    color: #ffffff;
    font-size: 38px;
    font-weight: 800;
    line-height: 1.25;
}

.tms-why-heading h2 span {
    color: #FFD84D;
}


/* =========================================
   GRID - EQUAL LEFT & RIGHT
========================================= */

.tms-why-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;

    width: 100% !important;
    max-width: 1200px !important;

    margin: 0 auto !important;

    padding: 0 !important;

    box-sizing: border-box !important;
}


/* EACH CARD */

.tms-why-item {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;

    padding: 0 25px !important;

    box-sizing: border-box !important;

    border-right: 1px solid rgba(255, 216, 77, 0.35);
}

.tms-why-item:last-child {
    border-right: none !important;
}


/* ICON */

.tms-why-icon {
    width: 82px;
    height: 82px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 12px;

    color: #ffffff;

    background: linear-gradient(
        90deg,
        #B87500 0%,
        #FFD84D 50%,
        #D99A00 100%
    );

    border-radius: 50%;

    border: 7px solid rgba(255,255,255,0.12);

    font-size: 25px;
}


/* NUMBER */

.tms-why-number {
    margin-bottom: 10px;

    color: #FFD84D;

    font-size: 40px;
    font-weight: 900;
    line-height: 1;
}


/* TITLE */

.tms-why-item h3 {
    margin: 0 0 12px;

    color: #ffffff;

    font-size: 18px;
    font-weight: 800;
    line-height: 1.3;
}


/* GOLD LINE */

.tms-why-line {
    display: block;

    width: 42px;
    height: 3px;

    margin-bottom: 14px;

    background: linear-gradient(
        90deg,
        #B87500,
        #FFD84D,
        #D99A00
    );

    border-radius: 5px;
}


/* DESCRIPTION */

.tms-why-item p {
    max-width: 300px;

    margin: 0 auto;

    color: rgba(255,255,255,0.82);

    font-size: 14px;
    line-height: 1.7;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .tms-why-section .container {
        padding-left: 25px !important;
        padding-right: 25px !important;
    }

    .tms-why-grid {
        max-width: 100% !important;
    }

    .tms-why-item {
        padding: 0 15px !important;
    }

    .tms-why-heading h2 {
        font-size: 32px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .tms-why-section {
        padding: 45px 0 !important;
    }

    .tms-why-section .container {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    .tms-why-heading {
        margin-bottom: 30px;
    }

    .tms-why-heading h2 {
        font-size: 27px;
    }

    .tms-why-grid {
        grid-template-columns: 1fr !important;
        gap: 25px !important;
    }

    .tms-why-item {
        padding: 0 15px 25px !important;
        border-right: none !important;
        border-bottom: 1px solid rgba(255,216,77,0.35);
    }

    .tms-why-item:last-child {
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }

    .tms-why-icon {
        width: 72px;
        height: 72px;
        font-size: 22px;
    }

    .tms-why-number {
        font-size: 36px;
    }

    .tms-why-item h3 {
        font-size: 17px;
    }

    .tms-why-item p {
        font-size: 13px;
    }
}

.tms-industries-heading h2 {
    white-space: nowrap !important;
}

.tms-industries-heading h2 strong {
    display: inline !important;
}

@media (max-width: 767px) {
    .tms-industries-heading h2 {
        white-space: normal !important;
    }
}

.tms-about-section .tms-about-images {
    height: 620px !important;
}

/* Tablet */
@media (max-width: 991px) {
    .tms-about-section .tms-about-images {
        height: 430px !important;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .tms-about-section .tms-about-images {
        height: 320px !important;
    }
}

/* Small Mobile */
@media (max-width: 480px) {
    .tms-about-section .tms-about-images {
        height: 310px !important;
    }
}

.tms-hero-content {
    transform: translateY(-100px) !important;
}

/* =========================================
   HERO CONTENT - COMPACT SPACING
========================================= */

.tms-hero-slide .container {
    position: relative !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
}

.tms-hero-content {
    position: relative !important;
    z-index: 10 !important;
    width: 100% !important;

    padding: 0 !important;
    margin: 0 !important;

    transform: translateY(0) !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Reduce spacing between words */
.tms-small-title {
    margin-bottom: 10px !important;
}

.tms-hero-content h1 {
    margin-bottom: 12px !important;
}

.tms-hero-content p {
    margin-bottom: 18px !important;
}

.tms-hero-buttons {
    margin-top: 0 !important;
}

/* =========================================
   REDUCE HERO BANNER HEIGHT & SPACE
========================================= */

.tms-hero {
    padding: 0 !important;
    margin: 0 !important;
}

.tms-hero-slide {
    height: 600px !important;
    min-height: 600px !important;
    padding: 0 !important;
    margin: 0 !important;
}

.tms-hero-slide .container {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.tms-hero-content {
    padding: 0 !important;
    margin: 0 !important;
    transform: none !important;
}

/* ===== HERO TOP & BOTTOM SPACE ===== */

.tms-hero-slide {
    display: flex !important;
    align-items: center !important;
}

.tms-hero-slide .container {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.tms-hero-content {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    transform: none !important;
}

/* ===== REDUCE HERO TOP & BOTTOM SPACE ===== */

.tms-hero-slide .container {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}

.tms-hero-content {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Reduce overall banner height */
.tms-hero-slide {
    min-height: 520px !important;
    height: 520px !important;
}

@media (max-width: 767px) {
    .tms-hero-slide {
        min-height: 430px !important;
        height: 430px !important;
    }

    .tms-hero-slide .container {
        padding-top: 5px !important;
        padding-bottom: 5px !important;
    }
}

/* ================================
   MOBILE HERO - REDUCE HEIGHT
================================ */

@media (max-width: 767px) {

    .tms-hero {
        height: 400px !important;
        min-height: 400px !important;
    }

    .tms-hero-slide {
        height: 400px !important;
        min-height: 400px !important;
    }

    .tms-hero-slide .container {
        height: 100% !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .tms-hero-content {
        padding: 0 !important;
        margin: 0 !important;
    }
}

/* =========================================================
   XBS MODERN SERVICES
========================================================= */

.xbs-services-modern {
    position: relative;
    padding: 90px 0 100px;
    background: #ffffff;
    overflow: hidden;
}


/* =========================================================
   HEADING
========================================================= */

.xbs-services-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 50px;
    margin-bottom: 55px;
}

.xbs-services-head > div {
    flex: 1;
}

.xbs-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    margin-bottom: 13px;

    color: #006cff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.xbs-eyebrow b {
    display: block;

    width: 8px;
    height: 8px;

    background: #b87500;
    border-radius: 50%;
}

.xbs-services-head h2 {
    margin: 0;

    color: #10233f;

    font-size: 42px;
    font-weight: 700;
    line-height: 1.15;
}

.xbs-services-head h2 strong {
    color: #006cff;
}

.xbs-services-head > p {
    width: 390px;
    max-width: 100%;

    margin: 0;

    color: #6d7888;

    font-size: 15px;
    line-height: 1.8;
}


/* =========================================================
   FEATURE SERVICES
========================================================= */

.xbs-feature-services {
    display: grid;

    grid-template-columns: repeat(3, minmax(0, 1fr));

    border-top: 1px solid #dfe6ef;
    border-bottom: 1px solid #dfe6ef;
}


/* =========================================================
   FEATURE ITEM
========================================================= */

.xbs-feature-item {
    position: relative;

    min-width: 0;

    padding: 38px 35px 40px;

    background: #ffffff;

    transition: all .3s ease;
}


/* vertical separators */

.xbs-feature-item + .xbs-feature-item {
    border-left: 1px solid #dfe6ef;
}


/* top line */

.xbs-feature-item::before {
    content: "";

    position: absolute;

    top: -1px;
    left: 35px;

    width: 45px;
    height: 3px;

    background: #006cff;

    transition: width .3s ease;
}


.xbs-feature-item:hover::before,
.xbs-feature-item.active::before {
    width: 85px;
}


/* =========================================================
   TOP
========================================================= */

.xbs-feature-top {
    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-bottom: 25px;
}

.xbs-feature-number {
    color: #b87500;

    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}


/* =========================================================
   ICON
========================================================= */

.xbs-feature-icon {
    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #f1f6ff;

    color: #006cff;

    font-size: 21px;

    transition: all .3s ease;
}

.xbs-feature-item:hover .xbs-feature-icon,
.xbs-feature-item.active .xbs-feature-icon {
    background: #006cff;
    color: #ffffff;

    transform: translateY(-3px);
}


/* =========================================================
   TITLE
========================================================= */

.xbs-feature-item h3 {
    margin: 0 0 12px;

    color: #10233f;

    font-size: 21px;
    font-weight: 700;

    line-height: 1.3;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.xbs-feature-item > p {
    min-height: 75px;

    margin: 0 0 20px;

    color: #6d7888;

    font-size: 13px;
    line-height: 1.75;
}


/* =========================================================
   TAGS
========================================================= */

.xbs-feature-tags {
    display: flex;
    flex-wrap: wrap;

    gap: 7px;

    margin-bottom: 25px;
}

.xbs-feature-tags span {
    display: inline-flex;
    align-items: center;

    padding: 6px 10px;

    background: #f6f8fb;

    color: #526176;

    font-size: 11px;

    border-radius: 3px;
}


/* =========================================================
   EXPLORE LINK
========================================================= */

.xbs-feature-item > a {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    color: #006cff;

    font-size: 12px;
    font-weight: 700;

    text-decoration: none;

    transition: all .25s ease;
}

.xbs-feature-item > a i {
    transition: transform .25s ease;
}

.xbs-feature-item > a:hover {
    color: #b87500;
}

.xbs-feature-item > a:hover i {
    transform: translateX(5px);
}


/* =========================================================
   MORE SERVICES
========================================================= */

.xbs-other-services {
    margin-top: 55px;
}


/* heading */

.xbs-other-title {
    display: flex;
    align-items: center;
    gap: 18px;

    margin-bottom: 22px;
}

.xbs-other-title span {
    color: #10233f;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2px;

    white-space: nowrap;
}

.xbs-other-title i {
    display: block;

    width: 100%;
    height: 1px;

    background: #dfe6ef;
}


/* =========================================================
   SERVICE LINKS
========================================================= */

.xbs-service-links {
    display: grid;

    grid-template-columns: repeat(3, minmax(0, 1fr));

    border-top: 1px solid #dfe6ef;
    border-left: 1px solid #dfe6ef;
}


.xbs-service-links a {
    min-width: 0;

    min-height: 75px;

    padding: 18px 20px;

    display: flex;
    align-items: center;

    gap: 13px;

    color: #10233f;

    text-decoration: none;

    border-right: 1px solid #dfe6ef;
    border-bottom: 1px solid #dfe6ef;

    transition: all .25s ease;
}


/* number */

.xbs-service-links a > span {
    color: #b87500;

    font-size: 10px;
    font-weight: 800;

    letter-spacing: 1px;

    flex-shrink: 0;
}


/* icon */

.xbs-service-links a > i {
    width: 34px;
    height: 34px;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #f1f6ff;

    color: #006cff;

    border-radius: 50%;

    font-size: 13px;

    transition: all .25s ease;
}


/* title */

.xbs-service-links a {
    font-size: 13px;
    font-weight: 600;
}


/* arrow */

.xbs-service-links a b {
    margin-left: auto;

    color: #9ba7b7;

    font-size: 17px;
    font-weight: 400;

    transition: all .25s ease;
}


/* hover */

.xbs-service-links a:hover {
    background: #f8fbff;

    color: #006cff;
}

.xbs-service-links a:hover > i {
    background: #006cff;
    color: #ffffff;
}

.xbs-service-links a:hover b {
    color: #b87500;
    transform: translateX(4px);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .xbs-services-modern {
        padding: 70px 20px 80px;
    }

    .xbs-services-head {
        gap: 30px;
    }

    .xbs-services-head h2 {
        font-size: 34px;
    }

    .xbs-services-head > p {
        width: 320px;
        font-size: 14px;
    }


    .xbs-feature-item {
        padding: 30px 22px 32px;
    }

    .xbs-feature-item::before {
        left: 22px;
    }

    .xbs-feature-item h3 {
        font-size: 18px;
    }

    .xbs-feature-item > p {
        min-height: 95px;
    }


    .xbs-service-links {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .xbs-services-modern {
        padding: 55px 15px 65px;
    }


    /* Heading */

    .xbs-services-head {
        display: block;

        margin-bottom: 35px;
    }

    .xbs-eyebrow {
        font-size: 10px;
        letter-spacing: 1.5px;
    }

    .xbs-services-head h2 {
        font-size: 28px;
        line-height: 1.25;
    }

    .xbs-services-head > p {
        width: 100%;

        margin-top: 14px;

        font-size: 13px;
        line-height: 1.7;
    }


    /* Feature services */

    .xbs-feature-services {
        grid-template-columns: 1fr;

        border-top: 1px solid #dfe6ef;
    }


    .xbs-feature-item {
        width: 100%;

        padding: 28px 5px 30px;

        box-sizing: border-box;
    }


    .xbs-feature-item + .xbs-feature-item {
        border-left: 0;

        border-top: 1px solid #dfe6ef;
    }


    .xbs-feature-item::before {
        left: 5px;
    }


    .xbs-feature-top {
        margin-bottom: 18px;
    }


    .xbs-feature-icon {
        width: 52px;
        height: 52px;

        font-size: 19px;
    }


    .xbs-feature-item h3 {
        font-size: 18px;

        margin-bottom: 9px;
    }


    .xbs-feature-item > p {
        min-height: 0;

        margin-bottom: 16px;

        font-size: 12px;
        line-height: 1.7;
    }


    .xbs-feature-tags {
        gap: 6px;

        margin-bottom: 20px;
    }


    .xbs-feature-tags span {
        padding: 5px 8px;

        font-size: 10px;
    }


    /* More services */

    .xbs-other-services {
        margin-top: 40px;
    }


    .xbs-other-title {
        gap: 12px;

        margin-bottom: 18px;
    }


    .xbs-other-title span {
        font-size: 10px;
        letter-spacing: 1.5px;
    }


    /* More service list */

    .xbs-service-links {
        grid-template-columns: 1fr;

        border-left: 0;
    }


    .xbs-service-links a {
        width: 100%;

        min-height: 68px;

        padding: 14px 4px;

        gap: 10px;

        box-sizing: border-box;

        border-left: 0;
        border-right: 0;

        font-size: 12px;
    }


    .xbs-service-links a > i {
        width: 32px;
        height: 32px;

        font-size: 12px;
    }


    .xbs-service-links a b {
        font-size: 16px;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 400px) {

    .xbs-services-modern {
        padding-left: 12px;
        padding-right: 12px;
    }

    .xbs-services-head h2 {
        font-size: 25px;
    }

    .xbs-feature-item {
        padding-left: 3px;
        padding-right: 3px;
    }

    .xbs-feature-item h3 {
        font-size: 17px;
    }

    .xbs-feature-item > p {
        font-size: 11.5px;
    }

    .xbs-service-links a {
        font-size: 11.5px;
    }
}

/* =========================================================
   XBS SERVICE SWITCH
========================================================= */

.xbs-service-switch {
    padding: 90px 0;
    background: #f5f8fc;
    overflow: hidden;
}

.xbs-service-switch input[type="radio"] {
    display: none !important;
}


/* HEADING */

.xbs-switch-heading {
    max-width: 760px;
    margin: 0 auto 45px;
    text-align: center;
}

.xbs-switch-heading > span {
    display: inline-block;
    margin-bottom: 8px;
    color: #006cff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.xbs-switch-heading h2 {
    margin: 0;
    color: #10233f;
    font-size: 38px;
    line-height: 1.2;
}

.xbs-switch-heading h2 strong {
    display: block;
    color: #003b9e;
}

.xbs-switch-heading p {
    margin: 15px auto 0;
    max-width: 650px;
    color: #718096;
    font-size: 14px;
    line-height: 1.7;
}


/* MAIN */

.xbs-switch-layout {
    display: grid;
    grid-template-columns: 370px minmax(0, 1fr);
    gap: 30px;
    align-items: start;
}


/* =========================================================
   LEFT MENU
========================================================= */

.xbs-switch-menu {
    padding: 10px;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 15px 40px rgba(0, 45, 100, .08);
}

.xbs-switch-item {
    width: 100%;
    min-height: 70px;

    display: flex;
    align-items: center;

    gap: 12px;

    padding: 10px 12px;

    background: #fff;
    border-radius: 12px;

    cursor: pointer;

    transition: .25s ease;
}

.xbs-switch-item + .xbs-switch-item {
    margin-top: 5px;
}


/* ICON */

.xbs-switch-icon {
    width: 42px;
    height: 42px;
    min-width: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #fff2dc;
    color: #d99500;

    font-size: 14px;

    transition: .25s ease;
}


/* TEXT */

.xbs-switch-name {
    flex: 1;
    min-width: 0;
}

.xbs-switch-name b {
    display: block;

    color: #172b46;

    font-size: 13px;
    line-height: 1.35;
}

.xbs-switch-name small {
    display: block;

    margin-top: 3px;

    color: #8995a5;

    font-size: 9px;
}


/* ARROW */

.xbs-switch-item > i {
    color: #b4becb;
    font-size: 10px;
}


/* =========================================================
   ACTIVE MENU
========================================================= */

/* TAB 1 ACTIVE */

#xbs-tab-1:checked ~ .xbs-switch-layout .xbs-switch-menu label[for="xbs-tab-1"],

#xbs-tab-2:checked ~ .xbs-switch-layout .xbs-switch-menu label[for="xbs-tab-2"],

#xbs-tab-3:checked ~ .xbs-switch-layout .xbs-switch-menu label[for="xbs-tab-3"],

#xbs-tab-4:checked ~ .xbs-switch-layout .xbs-switch-menu label[for="xbs-tab-4"],

#xbs-tab-5:checked ~ .xbs-switch-layout .xbs-switch-menu label[for="xbs-tab-5"],

#xbs-tab-6:checked ~ .xbs-switch-layout .xbs-switch-menu label[for="xbs-tab-6"],

#xbs-tab-7:checked ~ .xbs-switch-layout .xbs-switch-menu label[for="xbs-tab-7"],

#xbs-tab-8:checked ~ .xbs-switch-layout .xbs-switch-menu label[for="xbs-tab-8"],

#xbs-tab-9:checked ~ .xbs-switch-layout .xbs-switch-menu label[for="xbs-tab-9"],

#xbs-tab-10:checked ~ .xbs-switch-layout .xbs-switch-menu label[for="xbs-tab-10"] {

    background: #003b9e;
}


/* ACTIVE ICON */

#xbs-tab-1:checked ~ .xbs-switch-layout label[for="xbs-tab-1"] .xbs-switch-icon,
#xbs-tab-2:checked ~ .xbs-switch-layout label[for="xbs-tab-2"] .xbs-switch-icon,
#xbs-tab-3:checked ~ .xbs-switch-layout label[for="xbs-tab-3"] .xbs-switch-icon,
#xbs-tab-4:checked ~ .xbs-switch-layout label[for="xbs-tab-4"] .xbs-switch-icon,
#xbs-tab-5:checked ~ .xbs-switch-layout label[for="xbs-tab-5"] .xbs-switch-icon,
#xbs-tab-6:checked ~ .xbs-switch-layout label[for="xbs-tab-6"] .xbs-switch-icon,
#xbs-tab-7:checked ~ .xbs-switch-layout label[for="xbs-tab-7"] .xbs-switch-icon,
#xbs-tab-8:checked ~ .xbs-switch-layout label[for="xbs-tab-8"] .xbs-switch-icon,
#xbs-tab-9:checked ~ .xbs-switch-layout label[for="xbs-tab-9"] .xbs-switch-icon,
#xbs-tab-10:checked ~ .xbs-switch-layout label[for="xbs-tab-10"] .xbs-switch-icon {

    background: #ffbd18;
    color: #003b9e;
}


/* ACTIVE TEXT */

#xbs-tab-1:checked ~ .xbs-switch-layout label[for="xbs-tab-1"] b,
#xbs-tab-2:checked ~ .xbs-switch-layout label[for="xbs-tab-2"] b,
#xbs-tab-3:checked ~ .xbs-switch-layout label[for="xbs-tab-3"] b,
#xbs-tab-4:checked ~ .xbs-switch-layout label[for="xbs-tab-4"] b,
#xbs-tab-5:checked ~ .xbs-switch-layout label[for="xbs-tab-5"] b,
#xbs-tab-6:checked ~ .xbs-switch-layout label[for="xbs-tab-6"] b,
#xbs-tab-7:checked ~ .xbs-switch-layout label[for="xbs-tab-7"] b,
#xbs-tab-8:checked ~ .xbs-switch-layout label[for="xbs-tab-8"] b,
#xbs-tab-9:checked ~ .xbs-switch-layout label[for="xbs-tab-9"] b,
#xbs-tab-10:checked ~ .xbs-switch-layout label[for="xbs-tab-10"] b {

    color: #fff;
}


/* ACTIVE SMALL TEXT */

#xbs-tab-1:checked ~ .xbs-switch-layout label[for="xbs-tab-1"] small,
#xbs-tab-2:checked ~ .xbs-switch-layout label[for="xbs-tab-2"] small,
#xbs-tab-3:checked ~ .xbs-switch-layout label[for="xbs-tab-3"] small,
#xbs-tab-4:checked ~ .xbs-switch-layout label[for="xbs-tab-4"] small,
#xbs-tab-5:checked ~ .xbs-switch-layout label[for="xbs-tab-5"] small,
#xbs-tab-6:checked ~ .xbs-switch-layout label[for="xbs-tab-6"] small,
#xbs-tab-7:checked ~ .xbs-switch-layout label[for="xbs-tab-7"] small,
#xbs-tab-8:checked ~ .xbs-switch-layout label[for="xbs-tab-8"] small,
#xbs-tab-9:checked ~ .xbs-switch-layout label[for="xbs-tab-9"] small,
#xbs-tab-10:checked ~ .xbs-switch-layout label[for="xbs-tab-10"] small {

    color: rgba(255,255,255,.7);
}


/* ACTIVE ARROW */

#xbs-tab-1:checked ~ .xbs-switch-layout label[for="xbs-tab-1"] > i,
#xbs-tab-2:checked ~ .xbs-switch-layout label[for="xbs-tab-2"] > i,
#xbs-tab-3:checked ~ .xbs-switch-layout label[for="xbs-tab-3"] > i,
#xbs-tab-4:checked ~ .xbs-switch-layout label[for="xbs-tab-4"] > i,
#xbs-tab-5:checked ~ .xbs-switch-layout label[for="xbs-tab-5"] > i,
#xbs-tab-6:checked ~ .xbs-switch-layout label[for="xbs-tab-6"] > i,
#xbs-tab-7:checked ~ .xbs-switch-layout label[for="xbs-tab-7"] > i,
#xbs-tab-8:checked ~ .xbs-switch-layout label[for="xbs-tab-8"] > i,
#xbs-tab-9:checked ~ .xbs-switch-layout label[for="xbs-tab-9"] > i,
#xbs-tab-10:checked ~ .xbs-switch-layout label[for="xbs-tab-10"] > i {

    color: #ffbd18;
}


/* =========================================================
   RIGHT CONTENT
========================================================= */

.xbs-switch-content {
    min-width: 0;

    padding: 40px;

    background: #fff;

    border-radius: 16px;

    box-shadow: 0 15px 40px rgba(0,45,100,.08);
}


/* ALL PANELS HIDDEN */

.xbs-switch-panel {
    display: none;
}


/* =========================================================
   SHOW CORRESPONDING PANEL
========================================================= */

#xbs-tab-1:checked ~ .xbs-switch-layout .xbs-panel-1,
#xbs-tab-2:checked ~ .xbs-switch-layout .xbs-panel-2,
#xbs-tab-3:checked ~ .xbs-switch-layout .xbs-panel-3,
#xbs-tab-4:checked ~ .xbs-switch-layout .xbs-panel-4,
#xbs-tab-5:checked ~ .xbs-switch-layout .xbs-panel-5,
#xbs-tab-6:checked ~ .xbs-switch-layout .xbs-panel-6,
#xbs-tab-7:checked ~ .xbs-switch-layout .xbs-panel-7,
#xbs-tab-8:checked ~ .xbs-switch-layout .xbs-panel-8,
#xbs-tab-9:checked ~ .xbs-switch-layout .xbs-panel-9,
#xbs-tab-10:checked ~ .xbs-switch-layout .xbs-panel-10 {

    display: block;

    animation: xbsSwitchFade .3s ease;
}


@keyframes xbsSwitchFade {

    from {
        opacity: 0;
        transform: translateY(8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }

}


/* =========================================================
   PANEL TITLE
========================================================= */

.xbs-panel-title {
    padding-bottom: 25px;
    margin-bottom: 25px;

    border-bottom: 1px solid #e8edf3;
}

.xbs-panel-title span {
    color: #006cff;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 1.5px;
}

.xbs-panel-title h3 {
    margin: 8px 0 10px;

    color: #10233f;

    font-size: 28px;
    line-height: 1.3;
}

.xbs-panel-title p {
    margin: 0;

    max-width: 700px;

    color: #718096;

    font-size: 13px;

    line-height: 1.7;
}


/* =========================================================
   SUB SERVICES
========================================================= */

.xbs-sub-services {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 14px;
}

.xbs-sub-services > div {

    display: flex;
    align-items: flex-start;

    gap: 13px;

    padding: 17px;

    background: #f7faff;

    border: 1px solid #e3eaf3;

    border-radius: 12px;

    transition: .25s ease;
}

.xbs-sub-services > div:hover {

    background: #fff;

    border-color: #a8c6f2;

    transform: translateY(-2px);

    box-shadow: 0 8px 20px rgba(0,59,158,.07);
}


.xbs-sub-services > div > i {

    width: 40px;
    height: 40px;

    min-width: 40px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #fff;

    color: #003b9e;

    border: 1px solid #dce5f0;

    font-size: 13px;
}


.xbs-sub-services h4 {

    margin: 1px 0 5px;

    color: #182b46;

    font-size: 13px;
}


.xbs-sub-services p {

    margin: 0;

    color: #7a8798;

    font-size: 10px;

    line-height: 1.55;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .xbs-service-switch {
        padding: 70px 20px;
    }

    .xbs-switch-layout {
        grid-template-columns: 285px minmax(0,1fr);
        gap: 18px;
    }

    .xbs-switch-content {
        padding: 25px;
    }

    .xbs-sub-services {
        grid-template-columns: 1fr;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .xbs-service-switch {
        padding: 55px 12px 65px;
    }

    .xbs-switch-heading {
        margin-bottom: 28px;
    }

    .xbs-switch-heading h2 {
        font-size: 26px;
    }

    .xbs-switch-layout {
        display: block;
    }


    /* HORIZONTAL SERVICE MENU */

    .xbs-switch-menu {

        display: flex;

        overflow-x: auto;

        gap: 8px;

        padding: 8px;

        margin-bottom: 15px;

        scrollbar-width: none;

        -webkit-overflow-scrolling: touch;
    }

    .xbs-switch-menu::-webkit-scrollbar {
        display: none;
    }


    .xbs-switch-item {

        flex: 0 0 220px;

        min-height: 62px;

        padding: 8px;

    }

    .xbs-switch-item + .xbs-switch-item {
        margin-top: 0;
    }

    .xbs-switch-icon {
        width: 35px;
        height: 35px;
        min-width: 35px;
        font-size: 12px;
    }

    .xbs-switch-name b {
        font-size: 11px;
    }

    .xbs-switch-name small {
        font-size: 8px;
    }

    .xbs-switch-item > i {
        display: none;
    }


    /* CONTENT */

    .xbs-switch-content {
        padding: 22px 14px;

        border-radius: 12px;
    }

    .xbs-panel-title {
        padding-bottom: 20px;
        margin-bottom: 20px;
    }

    .xbs-panel-title h3 {
        font-size: 21px;
    }

    .xbs-panel-title p {
        font-size: 11px;
    }

    .xbs-sub-services {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .xbs-sub-services > div {
        padding: 13px;
    }

    .xbs-sub-services > div > i {
        width: 36px;
        height: 36px;
        min-width: 36px;
    }

    .xbs-sub-services h4 {
        font-size: 12px;
    }

    .xbs-sub-services p {
        font-size: 10px;
    }

}


/* =========================================================
   MAIN SECTION
========================================================= */

.xbs-service-switch {

    padding: 40px 0;

    background: #f4f7fb;

    overflow: hidden;

}


/* =========================================================
   HEADING
========================================================= */

.xbs-switch-heading {

    max-width: 780px;

    margin: 0 auto 50px;

    text-align: center;

}

.xbs-switch-heading > span {

    display: inline-block;

    margin-bottom: 12px;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 2px;

    color: #c58a00;

}

.xbs-switch-heading h2 {

    margin: 0;

    color: #062f75;

    font-size: 38px;

    line-height: 1.2;

    font-weight: 700;

}

.xbs-switch-heading h2 strong {

    display: block;

    color: #d49a00;

    font-weight: 700;

}

.xbs-switch-heading p {

    max-width: 650px;

    margin: 18px auto 0;

    color: #68778c;

    font-size: 15px;

    line-height: 1.8;

}


/* =========================================================
   HIDE RADIO
========================================================= */

.xbs-service-switch > .container > input {

    position: absolute;

    opacity: 0;

    pointer-events: none;

}


/* =========================================================
   MAIN LAYOUT
========================================================= */

.xbs-switch-layout {

    display: grid;

    grid-template-columns: 370px minmax(0, 1fr);

    gap: 30px;

    align-items: start;

}


/* =========================================================
   LEFT MENU
========================================================= */

.xbs-switch-menu {

    background: #ffffff;

    padding: 12px;

    border-radius: 20px;

    box-shadow: 0 15px 45px rgba(17, 46, 84, 0.08);

}


/* =========================================================
   MENU ITEM
========================================================= */

.xbs-switch-item {

    position: relative;

    width: 100%;

    min-height: 78px;

    display: flex;

    align-items: center;

    gap: 13px;

    padding: 12px;

    margin-bottom: 5px;

    border-radius: 14px;

    cursor: pointer;

    background: #ffffff;

    transition: all .25s ease;

}


.xbs-switch-item:last-child {

    margin-bottom: 0;

}


/* =========================================================
   MENU ICON
========================================================= */

.xbs-switch-icon {

    width: 44px;

    height: 44px;

    min-width: 44px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #fff3dc;

    color: #d29400;

    font-size: 16px;

    transition: all .25s ease;

}


/* =========================================================
   MENU TEXT
========================================================= */

.xbs-switch-name {

    min-width: 0;

    flex: 1;

}


.xbs-switch-name b {

    display: block;

    color: #092c63;

    font-size: 18px;

    line-height: 1.35;

    font-weight: 700;

}


.xbs-switch-name small {

    display: block;

    margin-top: 4px;

    color: #8b98aa;

    font-size: 16px;

    line-height: 1.4;

}


/* =========================================================
   ARROW
========================================================= */

.xbs-switch-arrow {

    color: #b3bfce;

    font-size: 11px;

    transition: all .25s ease;

}


/* =========================================================
   HOVER
========================================================= */

.xbs-switch-item:hover {

    background: #f5f8fd;

}

.xbs-switch-item:hover .xbs-switch-icon {

    background: #006cff;

    color: #ffffff;

}

.xbs-switch-item:hover .xbs-switch-arrow {

    color: #d29400;

}


/* =========================================================
   ACTIVE MENU ITEMS
========================================================= */


/* 01 */

#xbs-tab-1:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-1"],

/* 02 */

#xbs-tab-2:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-2"],

/* 03 */

#xbs-tab-3:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-3"],

/* 04 */

#xbs-tab-4:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-4"],

/* 05 */

#xbs-tab-5:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-5"],

/* 06 */

#xbs-tab-6:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-6"],

/* 07 */

#xbs-tab-7:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-7"],

/* 08 */

#xbs-tab-8:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-8"],

/* 09 */

#xbs-tab-9:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-9"],

/* 10 */

#xbs-tab-10:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-10"] {

    background: #0645a8;

}


/* ACTIVE ICON */

#xbs-tab-1:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-1"] .xbs-switch-icon,

#xbs-tab-2:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-2"] .xbs-switch-icon,

#xbs-tab-3:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-3"] .xbs-switch-icon,

#xbs-tab-4:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-4"] .xbs-switch-icon,

#xbs-tab-5:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-5"] .xbs-switch-icon,

#xbs-tab-6:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-6"] .xbs-switch-icon,

#xbs-tab-7:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-7"] .xbs-switch-icon,

#xbs-tab-8:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-8"] .xbs-switch-icon,

#xbs-tab-9:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-9"] .xbs-switch-icon,

#xbs-tab-10:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-10"] .xbs-switch-icon {

    background: #ffbd17;

    color: #0645a8;

}


/* ACTIVE TEXT */

#xbs-tab-1:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-1"] .xbs-switch-name b,

#xbs-tab-2:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-2"] .xbs-switch-name b,

#xbs-tab-3:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-3"] .xbs-switch-name b,

#xbs-tab-4:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-4"] .xbs-switch-name b,

#xbs-tab-5:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-5"] .xbs-switch-name b,

#xbs-tab-6:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-6"] .xbs-switch-name b,

#xbs-tab-7:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-7"] .xbs-switch-name b,

#xbs-tab-8:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-8"] .xbs-switch-name b,

#xbs-tab-9:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-9"] .xbs-switch-name b,

#xbs-tab-10:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-10"] .xbs-switch-name b {

    color: #ffffff;

}


#xbs-tab-1:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-1"] .xbs-switch-name small,

#xbs-tab-2:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-2"] .xbs-switch-name small,

#xbs-tab-3:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-3"] .xbs-switch-name small,

#xbs-tab-4:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-4"] .xbs-switch-name small,

#xbs-tab-5:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-5"] .xbs-switch-name small,

#xbs-tab-6:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-6"] .xbs-switch-name small,

#xbs-tab-7:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-7"] .xbs-switch-name small,

#xbs-tab-8:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-8"] .xbs-switch-name small,

#xbs-tab-9:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-9"] .xbs-switch-name small,

#xbs-tab-10:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-10"] .xbs-switch-name small {

    color: rgba(255,255,255,.70);

}


/* ACTIVE ARROW */

#xbs-tab-1:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-1"] .xbs-switch-arrow,

#xbs-tab-2:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-2"] .xbs-switch-arrow,

#xbs-tab-3:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-3"] .xbs-switch-arrow,

#xbs-tab-4:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-4"] .xbs-switch-arrow,

#xbs-tab-5:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-5"] .xbs-switch-arrow,

#xbs-tab-6:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-6"] .xbs-switch-arrow,

#xbs-tab-7:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-7"] .xbs-switch-arrow,

#xbs-tab-8:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-8"] .xbs-switch-arrow,

#xbs-tab-9:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-9"] .xbs-switch-arrow,

#xbs-tab-10:checked ~ .xbs-switch-layout
.xbs-switch-menu label[for="xbs-tab-10"] .xbs-switch-arrow {

    color: #ffbd17;

}


/* =========================================================
   RIGHT CONTENT
========================================================= */

.xbs-switch-content {

    min-width: 0;

    background: #ffffff;

    padding: 40px;

    border-radius: 20px;

    box-shadow: 0 15px 45px rgba(17, 46, 84, 0.08);

}


/* =========================================================
   PANELS
========================================================= */

.xbs-switch-panel {

    display: none;

    animation: xbsServiceFade .35s ease;

}


@keyframes xbsServiceFade {

    from {

        opacity: 0;

        transform: translateY(12px);

    }

    to {

        opacity: 1;

        transform: translateY(0);

    }

}


/* SHOW PANELS */

#xbs-tab-1:checked ~ .xbs-switch-layout
.xbs-panel-1,

#xbs-tab-2:checked ~ .xbs-switch-layout
.xbs-panel-2,

#xbs-tab-3:checked ~ .xbs-switch-layout
.xbs-panel-3,

#xbs-tab-4:checked ~ .xbs-switch-layout
.xbs-panel-4,

#xbs-tab-5:checked ~ .xbs-switch-layout
.xbs-panel-5,

#xbs-tab-6:checked ~ .xbs-switch-layout
.xbs-panel-6,

#xbs-tab-7:checked ~ .xbs-switch-layout
.xbs-panel-7,

#xbs-tab-8:checked ~ .xbs-switch-layout
.xbs-panel-8,

#xbs-tab-9:checked ~ .xbs-switch-layout
.xbs-panel-9,

#xbs-tab-10:checked ~ .xbs-switch-layout
.xbs-panel-10 {

    display: block;

}


/* =========================================================
   PANEL TITLE
========================================================= */

.xbs-panel-title {

    margin-bottom: 28px;

}


.xbs-panel-title > span {

    display: inline-block;

    margin-bottom: 9px;

    color: #d29400;

    font-size: 14px;

    font-weight: 700;

    letter-spacing: 1.5px;

}


.xbs-panel-title h3 {

    margin: 0 0 10px;

    color: #062f75;

    font-size: 27px;

    line-height: 1.25;

    font-weight: 700;

}


.xbs-panel-title p {

    max-width: 760px;

    margin: 0;

    color: #000;

    font-size: 16px;

    line-height: 1.75;

}


/* =========================================================
   SUB SERVICES GRID
========================================================= */

.xbs-sub-services {

    display: grid;

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 15px;

}


/* =========================================================
   SUB SERVICE BOX
========================================================= */

.xbs-sub-service-box {

    position: relative;

    min-width: 0;

    padding: 22px 20px;

    background: #f7f9fc;

    border: 1px solid #e4eaf2;

    border-radius: 14px;

    transition: all .25s ease;

}


.xbs-sub-service-box:hover {

    background: #ffffff;

    border-color: #b9d0f2;

    transform: translateY(-3px);

    box-shadow: 0 10px 25px rgba(20, 57, 105, 0.07);

}


/* =========================================================
   SUB SERVICE ICON
========================================================= */

.xbs-sub-service-box > i {

    width: 43px;

    height: 43px;

    display: flex;

    align-items: center;

    justify-content: center;

    margin-bottom: 14px;

    border-radius: 50%;

    background: #fff2d8;

    color: #d29400;

    font-size: 15px;

    transition: all .25s ease;

}


.xbs-sub-service-box:hover > i {

    background: #0645a8;

    color: #ffffff;

}


/* =========================================================
   SUB SERVICE TITLE
========================================================= */

.xbs-sub-service-box h4 {

    margin: 0 0 7px;

    color: #092f68;

    font-size: 18px;

    line-height: 1.4;

    font-weight: 700;

}


.xbs-sub-service-box p {

    margin: 0;

    color: #000;

    font-size: 16px;

    line-height: 1.65;

}


/* =========================================================
   CTA
========================================================= */

.tms-service-cta {

    padding: 0 0 90px;

    background: #f4f7fb;

}


.tms-service-cta-box {

    position: relative;

    overflow: hidden;

    padding: 55px 50px;

    border-radius: 22px;

    text-align: center;

    background:
        linear-gradient(
            120deg,
            #052d70 0%,
            #0645a8 55%,
            #003b9e 100%
        );

    box-shadow: 0 18px 45px rgba(0, 49, 125, 0.18);

}


.tms-service-cta-box::before {

    content: "";

    position: absolute;

    width: 220px;

    height: 220px;

    top: -100px;

    right: -60px;

    border-radius: 50%;

    background: rgba(255, 189, 23, .12);

}


.tms-service-cta-box::after {

    content: "";

    position: absolute;

    width: 180px;

    height: 180px;

    bottom: -100px;

    left: -50px;

    border-radius: 50%;

    background: rgba(255, 255, 255, .06);

}


.tms-service-cta-box > * {

    position: relative;

    z-index: 2;

}


.tms-service-cta-box > span {

    display: block;

    margin-bottom: 10px;

    color: #ffbd17;

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 2px;

}


.tms-service-cta-box h2 {

    margin: 0;

    color: #ffffff;

    font-size: 34px;

    line-height: 1.25;

}


.tms-service-cta-box h2 strong {

    color: #ffbd17;

}


.tms-service-cta-box p {

    max-width: 650px;

    margin: 15px auto 25px;

    color: rgba(255,255,255,.78);

    font-size: 14px;

    line-height: 1.75;

}


.tms-cta-btn {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 10px;

    padding: 14px 25px;

    border-radius: 7px;

    background: #ffbd17;

    color: #062f75 !important;

    font-size: 13px;

    font-weight: 700;

    text-decoration: none;

    transition: all .25s ease;

}


.tms-cta-btn:hover {

    background: #ffffff;

    color: #062f75 !important;

    transform: translateY(-2px);

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1199px) {

    .xbs-switch-layout {

        grid-template-columns: 320px minmax(0, 1fr);

        gap: 20px;

    }

    .xbs-switch-content {

        padding: 30px;

    }

    .xbs-switch-name b {

        font-size: 13px;

    }

    .xbs-switch-name small {

        font-size: 9px;

    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .xbs-service-switch {

        padding: 35px 20px;

    }

    .xbs-switch-heading h2 {

        font-size: 32px;

    }

    .xbs-switch-layout {

        grid-template-columns: 280px minmax(0, 1fr);

        gap: 18px;

    }

    .xbs-switch-content {

        padding: 25px 20px;

    }

    .xbs-switch-item {

        min-height: 70px;

        padding: 10px;

        gap: 9px;

    }

    .xbs-switch-icon {

        width: 38px;

        height: 38px;

        min-width: 38px;

        font-size: 13px;

    }

    .xbs-switch-name b {

        font-size: 12px;

    }

    .xbs-sub-services {

        gap: 12px;

    }

    .xbs-sub-service-box {

        padding: 18px 15px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .xbs-service-switch {

        padding: 35px 0;

    }


    /* heading */

    .xbs-switch-heading {

        margin-bottom: 30px;

    }

    .xbs-switch-heading > span {

        font-size: 11px;

        letter-spacing: 1.5px;

    }

    .xbs-switch-heading h2 {

        font-size: 25px;

    }

    .xbs-switch-heading p {

        font-size: 13px;

        line-height: 1.7;

    }


    /* layout */

    .xbs-switch-layout {

        display: block;

    }


    /* =================================================
       MOBILE MENU
    ================================================== */

    .xbs-switch-menu {

        display: flex;

        gap: 8px;

        overflow-x: auto;

        padding: 8px;

        margin-bottom: 15px;

        border-radius: 14px;

        scrollbar-width: none;

        -webkit-overflow-scrolling: touch;

    }

    .xbs-switch-menu::-webkit-scrollbar {

        display: none;

    }


    .xbs-switch-item {

        flex: 0 0 235px;

        min-height: 68px;

        margin: 0;

        padding: 9px 10px;

        border: 1px solid #edf0f4;

    }


    .xbs-switch-icon {

        width: 38px;

        height: 38px;

        min-width: 38px;

        font-size: 13px;

    }


    .xbs-switch-name b {

        font-size: 12px;

    }


    .xbs-switch-name small {

        font-size: 9px;

    }


    .xbs-switch-arrow {

        display: none;

    }


    /* =================================================
       CONTENT
    ================================================== */

    .xbs-switch-content {

        padding: 25px 15px;

        border-radius: 14px;

    }


    .xbs-panel-title {

        margin-bottom: 22px;

    }


    .xbs-panel-title > span {

        font-size: 9px;

        letter-spacing: 1.2px;

    }


    .xbs-panel-title h3 {

        font-size: 21px;

    }


    .xbs-panel-title p {

        font-size: 12px;

        line-height: 1.7;

    }


    /* =================================================
       MOBILE 1 COLUMN
    ================================================== */

    .xbs-sub-services {

        grid-template-columns: 1fr;

        gap: 10px;

    }


    .xbs-sub-service-box {

        padding: 17px 15px;

    }


    .xbs-sub-service-box > i {

        width: 38px;

        height: 38px;

        margin-bottom: 11px;

        font-size: 13px;

    }


    .xbs-sub-service-box h4 {

        font-size: 13px;

    }


    .xbs-sub-service-box p {

        font-size: 11px;

    }


    /* =================================================
       CTA
    ================================================== */

    .tms-service-cta {

        padding: 0 12px 60px;

    }


    .tms-service-cta-box {

        padding: 40px 20px;

        border-radius: 17px;

    }


    .tms-service-cta-box h2 {

        font-size: 25px;

    }


    .tms-service-cta-box p {

        font-size: 12px;

    }


    .tms-cta-btn {

        padding: 13px 20px;

        font-size: 12px;

    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 400px) {

    .xbs-switch-heading h2 {

        font-size: 22px;

    }

    .xbs-switch-item {

        flex-basis: 215px;

    }

    .xbs-switch-content {

        padding: 22px 13px;

    }

    .xbs-panel-title h3 {

        font-size: 19px;

    }

}

