@charset "UTF-8";table,td,th {
    border: 1px solid var(--vs-border-color)
}

a,button {
    transition: .4s
}

iframe,img {
    border: none
}

a,ins {
    text-decoration: none
}

body,p {
    color: var(--body-color)
}

.aligncenter,.footer-map frame,.offcanvas-wrapper .footer-text,.sidemenu-wrapper .sidebar-gallery,.wp-caption,embed,img,img:not([draggable]),object,video {
    max-width: 100%
}

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

input[type=checkbox]~label:before,input[type=radio]~label::before {
    position: absolute;
    left: 0;
    text-align: center;
    font-family: var(--icon-font)
}

.project-style2 span.project-number,.vs-service__number {
    -webkit-text-fill-color: transparent;
    -webkit-text-stroke-width: 1px
}

.bal-after img,.bal-before img,.beforeLabel {
    -webkit-user-select: none;
    -moz-user-select: none;
    -o-user-select: none
}

:root {
    --theme-color: #f0a800;
    --theme-color-rgb: 255,180,0;
    --title-color: #01000f;
    --body-color: #686868;
    --smoke-color: #eff1f5;
    --vs-secondary-color: #eef2fb;
    --black-color: #000000;
    --bg-color1: #323232;
    --bg-color2: #1b1b1b;
    --bg-color3: #272727;
    --bg-color4: #1f1f22;
    --white-color: #ffffff;
    --white-color-rgb: 255,255,255;
    --yellow-color: #fec624;
    --success-color: #28a745;
    --error-color: #dc3545;
    --vs-border-color: #d8dde1;
    --vs-border-color-rgb: 216,221,225;
    --light-color1: #fffaee;
    --title-font: "Oswald",sans-serif;
    --body-font: "Poppins",sans-serif;
    --icon-font: "Font Awesome 6 Pro";
    --main-container: 1320px;
    --container-gutters: 30px;
    --section-space: 120px;
    --section-space-mobile: 80px;
    --section-title-space: 80px;
    --ripple-ani-duration: 5s
}

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

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

.form-control[readonly],.form-select[readonly],.header-dropdown>.dropdown-toggle,.header-social.style-white a:hover,.progress-box__number.style2,.progress-box__title.style2,.vs-btn.style4:hover,a:hover,input[readonly],select[readonly],textarea[readonly],th {
    color: #01000f
}

iframe {
    width: 100%
}

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

ul {
    list-style-type: disc
}

ol {
    list-style-type: decimal
}

table {
    margin: 0 0 1.5em;
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0
}

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

td,th {
    padding: 9px 12px
}

a {
    color: var(--theme-color);
    outline: 0
}

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

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

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

p {
    margin: 0 0 18px;
    line-height: 1.63
}

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,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6 {
    font-family: var(--title-font);
    color: #01000f;
    text-transform: none;
    font-weight: 500;
    line-height: 1.5;
    margin: 0 0 15px
}

.vs-btn,label {
    font-family: var(--body-font)
}

.blocks-gallery-caption,.gallery-caption,.vs-search .search-grid-meta a,.vs-search .search-grid-meta span,.wp-block-embed figcaption,.wp-block-image figcaption {
    color: var(--body-color)
}

.link-btn,.sec-subtitle,.sec-title,.vs-btn {
    text-transform: uppercase
}

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

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

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

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

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

.h6,.project-style__title,h6 {
    font-size: 20px
}

@media (max-width: 1199px) {
    .h1,h1 {
        font-size:60px
    }

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

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

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

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

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

html.lenis,html.lenis body {
    height: auto
}

.lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain
}

.about-marquee__text,.lenis.lenis-stopped {
    overflow: clip
}

.bal-after,.bal-before,.lenis.lenis-smooth iframe {
    pointer-events: none
}

.blog-details .blog-single.format-chat .blog-meta,.mb-20,p.has-drop-cap {
    margin-bottom: 20px
}

.page--item p:last-child .alignright {
    clear: right
}

.blog-title,.breadcumb-title,.pagi-title {
    word-break: break-word
}

.bypostauthor,.gallery-caption {
    display: block
}

.alignleft,.alignright {
    display: inline;
    margin-bottom: 10px
}

.clearfix,.page-links {
    clear: both
}

.blog-single .wp-block-archives-dropdown,.mb-30,.page--item,.vs-blog,.vs-pagination,.wp-block-media-text,.wp-block-media-text.alignwide,figure.wp-block-gallery {
    margin-bottom: 30px
}

.page--item p {
    line-height: 1.8
}

.content-none-search,.mt-30 {
    margin-top: 30px
}

.brand-style1,.breadcumb-content,.wp-block-button.aligncenter,.wp-caption-text {
    text-align: center
}

.alignleft {
    float: left;
    margin-right: 1.5em
}

.alignright {
    float: right;
    margin-left: 1.5em;
    margin-right: 1em
}

.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto
}

.gallery {
    margin-bottom: 1.5em;
    width: 100%
}

.gallery-item {
    display: inline-block;
    text-align: center;
    vertical-align: top;
    width: 100%;
    padding: 0 5px
}

.wp-block-columns {
    margin-bottom: 1em
}

figure.gallery-item {
    margin-bottom: 10px;
    display: inline-block
}

.gallery-columns-2 .gallery-item {
    max-width: 50%
}

.gallery-columns-3 .gallery-item {
    max-width: 33.33%
}

.gallery-columns-4 .gallery-item {
    max-width: 25%
}

.gallery-columns-5 .gallery-item {
    max-width: 20%
}

.gallery-columns-6 .gallery-item {
    max-width: 16.66%
}

.gallery-columns-7 .gallery-item {
    max-width: 14.28%
}

.gallery-columns-8 .gallery-item {
    max-width: 12.5%
}

.gallery-columns-9 .gallery-item {
    max-width: 11.11%
}

.gallery-caption {
    display: block;
    font-size: 12px;
    line-height: 1.5;
    padding: .5em 0
}

.vs-btn.style3:hover,.vs-btn:hover,.wp-block-button .wp-block-button__link,.wp-block-cover p:not(.has-text-color),.wp-block-cover-image-text,.wp-block-cover-text {
    color: #fff
}

.mb-15,.wp-block-cover {
    margin-bottom: 15px
}

.wp-caption {
    margin-bottom: 1.5em
}

.wp-caption .wp-caption-text {
    margin: .5em 0;
    font-size: 14px
}

.wp-block-media-text.alignwide {
    background-color: var(--smoke-color)
}

.editor-styles-wrapper .has-large-font-size,.has-large-font-size {
    line-height: 1.4
}

.blog-title a,.calendar_wrap span[class*=wp-calendar-nav] a,.calendar_wrap th a,.footer-info-list .info a,.header-info_link a,.header-links a,.text-inherit,.vs-search .search-grid-title a,.wp-block-archives a:not(:hover),.wp-block-calendar span[class*=wp-calendar-nav] a,.wp-block-calendar th a,.wp-block-latest-comments a,blockquote p a,ul.wp-block-latest-posts a,ul.wp-block-rss a {
    color: inherit
}

.comment-respond .blog-inner-title,.header-dropdown ul.dropdown-menu li,.mb-10,.wp-block-button {
    margin-bottom: 10px
}

.accordion .accordion-body p:last-child,.accordion .accordion-item:last-child,.calendar_wrap .wp-calendar-table,.footer-info:last-child,.footer-widget.widget_archive li:last-child a,.footer-widget.widget_categories li:last-child a,.footer-widget.widget_meta li:last-child a,.footer-widget.widget_nav_menu li:last-child a,.footer-widget.widget_pages li:last-child a,.form-messages.mb-0 *,.header-dropdown ul.dropdown-menu li:last-child,.recent-post:last-child,.row.no-gutters>.form-group,.sidebar-area .widget .wp-block-search,.sidebar-area ul.wp-block-latest-posts,.sidebar-area ul.wp-block-latest-posts li:last-child,.vs-comments-wrap .description p:last-child,.vs-comments-wrap .text:last-of-type,.vs-comments-wrap ul.comment-list .vs-comment-item:last-child .vs-post-comment,.vs-comments-wrap ul.comment-list ol ol,.vs-comments-wrap ul.comment-list ol ul,.vs-comments-wrap ul.comment-list ul ol,.vs-comments-wrap ul.comment-list ul ul,.widget-workhours li:last-child,.wp-block-button:last-child,.wp-block-calendar .wp-calendar-table {
    margin-bottom: 0
}

.wp-block-button .wp-block-button__link:hover {
    color: #fff;
    background-color: var(--theme-color)
}

.wp-block-button.is-style-outline .wp-block-button__link {
    background-color: transparent;
    border-color: #01000f;
    color: #01000f
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
    color: #fff;
    background-color: var(--theme-color);
    border-color: var(--theme-color)
}

.accordion .accordion-item:first-of-type .accordion-button,.accordion .accordion-item:last-of-type .accordion-button,.blog-details .blog-img img,.wp-block-button.is-style-squared .wp-block-button__link {
    border-radius: 0
}

ol.wp-block-latest-comments li,ul.wp-block-latest-posts li {
    margin: 15px 0
}

ul.wp-block-latest-posts {
    padding: 0;
    margin: 0 0 15px
}

.footer-info-list .info a:hover,.link-btn:hover,.sec-title span,.text-inherit:hover,.vs-mobile-menu ul li.vs-active>a,.vs-search .search-grid-title a:hover,.widget_archive li:hover>span,.widget_categories li:hover>span,.widget_meta li:hover>span,.widget_nav_menu li:hover>span,.widget_pages li:hover>span,ul.wp-block-latest-posts a:hover {
    color: var(--theme-color)
}

.wp-block-search {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px
}

.post-password-form .theme-input-group .theme-input-style,.wp-block-search .wp-block-search__input {
    width: 100%;
    max-width: calc(100% - 120px);
    border: 1px solid rgba(0,0,0,.1);
    height: 50px;
    padding-left: 20px
}

.post-password-form .theme-input-group .submit-btn,.wp-block-search .wp-block-search__button {
    margin: 0;
    width: 120px;
    border: none;
    height: 50px;
    color: #fff;
    background-color: var(--theme-color)
}

.post-password-form .theme-input-group .submit-btn:hover,.wp-block-search .wp-block-search__button:hover {
    background-color: #01000f;
    opacity: .8
}

.wp-block-group.has-background {
    padding: 15px 15px 1px;
    margin-bottom: 30px
}

.wp-block-table td,.wp-block-table th {
    border-color: rgba(0,0,0,.1)
}

.wp-block-table.is-style-stripes {
    border: 1px solid rgba(0,0,0,.1);
    margin-bottom: 30px
}

.logged-in .preloader .vs-btn,.logged-in .will-sticky .sticky-active.active {
    top: 32px
}

@media (max-width: 782px) {
    .logged-in .preloader .vs-btn,.logged-in .will-sticky .sticky-active.active {
        top:46px
    }
}

@media (max-width: 600px) {
    .logged-in .preloader .vs-btn,.logged-in .will-sticky .sticky-active.active {
        top:0
    }
}

.post-password-form .theme-input-group {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
    margin-top: 20px
}

.page-links {
    clear: both;
    margin: 0 0 1.5em;
    padding-top: 1em
}

.header-text i,.mr-10,.page-links>.page-links-title,.widget-workhours li i {
    margin-right: 10px
}

.header-logo{
    max-width: 200px;
}
.page-links>a,.page-links>span:not(.page-links-title):not(.screen-reader-text) {
    display: inline-block;
    padding: 5px 13px;
    background-color: #fff;
    color: #01000f;
    border: 1px solid rgba(0,0,0,.08);
    margin-right: 10px
}

.page-links>a:hover,.page-links>span:not(.page-links-title):not(.screen-reader-text):hover {
    opacity: .8;
    color: #fff;
    background-color: var(--theme-color);
    border-color: transparent
}

.page-links>a.current,.page-links>span:not(.page-links-title):not(.screen-reader-text).current,.slick-arrow:hover {
    background-color: var(--theme-color);
    color: #fff;
    border-color: transparent
}

.blog-details .blog-single.format-link:before,.blog-details .blog-single.format-quote:before,.blog-details .blog-single.sticky:before,.blog-details .blog-single.tag-sticky-2:before,.blog-details .blog-single:before,.blog-single.format-link .blog-content:before,.blog-single.format-quote .blog-content:before,.blog-single.sticky .blog-content:before,.blog-single.tag-sticky-2 .blog-content:before,.dot-style2 .slick-dots button:before,.form-messages,.page-links span.screen-reader-text {
    display: none
}

.blog-single.format-link,.blog-single.format-quote,.blog-single.sticky,.blog-single.tag-sticky-2 {
    border-color: transparent;
    position: relative
}

.blog-single.format-link .blog-content,.blog-single.format-quote .blog-content,.blog-single.sticky .blog-content,.blog-single.tag-sticky-2 .blog-content {
    background-color: var(--smoke-color);
    padding: 40px;
    border: none
}

.blog-single.format-link:before,.blog-single.format-quote:before,.blog-single.sticky:before,.blog-single.tag-sticky-2:before {
    content: "\f0c1";
    position: absolute;
    font-family: "Font Awesome 5 Pro";
    font-size: 5rem;
    opacity: .3;
    right: 15px;
    line-height: 1;
    top: 15px;
    color: var(--theme-color);
    z-index: 1
}

.blog-single.sticky::before,.blog-single.tag-sticky-2::before {
    content: "Featured";
    right: 0;
    top: 0;
    font-size: 18px;
    color: #fff;
    background-color: var(--theme-color);
    font-family: var(--title-font);
    opacity: 1;
    text-transform: capitalize;
    padding: 10px 23px;
    font-weight: 400
}

.blog-single.format-quote:before {
    content: "\f10e"
}

.blog-single .blog-content .wp-block-archives-dropdown,.blog-single .blog-content .wp-block-categories-dropdown.wp-block-categories {
    display: block;
    margin-bottom: 30px
}

.blog-details .blog-single .blog-content {
    background-color: transparent;
    overflow: hidden
}

.blog-details .blog-single.format-chat .blog-content>p:nth-child(2n) {
    background: var(--smoke-color);
    padding: 5px 20px
}

.blog-details .blog-single.format-link,.blog-details .blog-single.format-quote,.blog-details .blog-single.sticky,.blog-details .blog-single.tag-sticky-2 {
    box-shadow: none;
    border: none;
    background-color: transparent
}

.vs-search {
    background-color: #f3f3f3;
    margin-bottom: 30px;
    border: 1px solid #f3f3f3
}

.vs-search .search-grid-content {
    padding: 30px
}

.vs-search .search-grid-title {
    font-size: 20px;
    margin-bottom: 5px;
    margin-top: -.2em
}

.vs-search .search-grid-meta>* {
    display: inline-block;
    margin-right: 15px;
    font-size: 14px
}

.blog-meta a:last-child,.blog-meta span:last-child,.blog-single .social-links li:last-child,.footer-social a:last-child,.main-menu ul li:last-child,.slick-dots li:last-child,.vs-pagination li:last-child,.vs-search .search-grid-meta>:last-child {
    margin-right: 0
}

@media (max-width: 1199px) {
    .blog-single.format-link:before,.blog-single.format-quote:before,.blog-single.sticky:before,.blog-single.tag-sticky-2:before {
        font-size:14px;
        padding: 8px 16px
    }

    .blog-single.format-link .blog-content,.blog-single.format-quote .blog-content,.blog-single.sticky .blog-content,.blog-single.tag-sticky-2 .blog-content {
        padding: 30px
    }
}

@media (max-width: 768px) {
    .wp-block-search .wp-block-search__input {
        max-width:100%;
        margin-bottom: 20px
    }

    .wp-block-latest-comments {
        padding-left: 10px
    }

    .page--content.clearfix+.vs-comment-form {
        margin-top: 24px
    }
}

@media only screen and (min-width: 1300px) {
    .container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl {
        max-width:calc(var(--main-container) + var(--container-gutters));
        padding-left: calc(var(--container-gutters)/ 2);
        padding-right: calc(var(--container-gutters)/ 2)
    }
}

@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-style3 {
    --main-container: 1445px
}

@media (min-width: 1500px) and (max-width:1921px) {
    .container-style1 {
        max-width:1576px;
        overflow: hidden;
        margin-right: 0;
        padding-right: 0
    }
}

@media (min-width: 767px) {
    .row:not([class*=gx-]) {
        --bs-gutter-x:30px;
        /* padding-top: 100px; */
    }
}

.gy-gx {
    --bs-gutter-y: var(--bs-gutter-x)
}

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

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

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

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

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

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

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

@media (min-width: 1399px) {
    .container-style2 {
        max-width:1920px;
        overflow: hidden;
        padding-left: 0;
        padding-right: 0
    }

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

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

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

.grid-container {
    display: grid;
    grid-template-columns: 364px 531px 364px;
    grid-template-rows: repeat(2,auto);
    gap: 30px;
    justify-content: center
}

@media (max-width: 1399px) {
    .grid-container {
        grid-template-columns:1fr
    }
}

.grid-item.large {
    grid-column: 2;
    grid-row: 1/3
}

@media (max-width: 991px) {
    .grid-container {
        grid-template-columns:repeat(2,auto)
    }

    .grid-item.large {
        grid-column: span 2;
        grid-row: auto
    }
}

.sidebar-gallery {
    grid-template-columns: repeat(3,1fr)
}

.form-control,.form-select,input,select,textarea {
    height: 60px;
    padding: 0 45px 0 28px;
    border: 1px solid #e0e0e0;
    color: var(--body-color);
    background-color: #fff;
    border-radius: 0;
    font-size: 14px;
    width: 100%;
    transition: .3s ease-in-out
}

.form-control:focus,.form-select:focus,input:focus,select:focus,textarea:focus {
    outline: 0;
    box-shadow: none;
    background-color: #fff;
    border-color: var(--theme-color);
    transition: .3s ease-in-out
}

.blog-single .tagcloud.style2 a:hover,.dot-style2 .slick-dots button,.footer-copyright.style2,.searchBoxTggler.style2,.sideMenuToggler.style2,.slick-dots .slick-active button,[data-overlay=theme]:before,input[type=radio]:checked~label::before {
    background-color: #e19538;
}

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

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

.form-control.form-control-lg,.form-select.form-control-lg,input.form-control-lg,select.form-control-lg,textarea.form-control-lg {
    height: 60px
}

.form-control.form-control-sm,.form-select.form-control-sm,input.form-control-sm,select.form-control-sm,textarea.form-control-sm {
    height: 40px;
    font-size: 12px
}

.form-select,select {
    display: block;
    width: 100%;
    line-height: 1.5;
    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
}

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

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

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

textarea,textarea.form-control {
    min-height: 189px;
    padding-top: 16px;
    padding-bottom: 17px;
    border-radius: 0
}

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

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

input[type=checkbox]~label {
    display: block
}

.blog-single .share-links .tagcloud,.main-menu ul.mega-menu li a,.slick-arrow,.slick-dots li,.slick-slide img,.vs-menu-toggle,.vs-mobile-menu ul li a:before,input[type=radio]~label {
    display: inline-block
}

input[type=checkbox]~label:before {
    content: "";
    font-weight: 700;
    top: 3.5px;
    background-color: #fff;
    border: 1px solid var(--vs-border-color);
    height: 18px;
    width: 18px;
    line-height: 18px;
    font-size: 12px
}

input[type=radio]~label {
    line-height: 1;
    font-weight: 600;
    margin-bottom: 0
}

input[type=radio]~label::before {
    content: "\f111";
    top: -2px;
    width: 20px;
    height: 20px;
    padding-left: .5px;
    font-size: .6em;
    line-height: 19px;
    border: 1px solid var(--theme-color);
    border-radius: 100%;
    font-weight: 700;
    background: #fff;
    color: transparent;
    transition: .2s
}

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

label {
    margin-bottom: .5em;
    margin-top: -.3em;
    display: block;
    color: #01000f;
    font-size: 16px
}

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

.form-group>i {
    position: absolute;
    right: calc(var(--bs-gutter-x)/ 2 + 30px);
    top: 18px;
    font-size: 14px;
    color: #a0abb4
}

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

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

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

textarea.is-invalid {
    background-position: top calc(.375em + .5875rem) right calc(.375em + .8875rem)
}

.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
}

.slick-track>[class*=col] {
    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)
}

.slick-track {
    min-width: 100%
}

.slick-dots {
    list-style-type: none;
    padding: 2px 0;
    margin: 38px 0;
    line-height: 0;
    text-align: center;
    height: -moz-max-content;
    height: max-content
}

.slick-dots li {
    margin-right: 25px
}

.slick-dots button {
    font-size: 0;
    padding: 0;
    background-color: transparent;
    width: 8px;
    height: 8px;
    line-height: 0;
    border-radius: 9999px;
    border: none;
    background-color: var(--dots-bg,#d8d8d8);
    transition: .4s;
    position: relative
}

.slick-dots button:hover,.testi-carousel .slick-slide.slick-current.slick-active.slick-center .testi-item .testi-avatar,.testi-carousel .slick-slide.slick-current.slick-active.slick-center .testi-item .testi-eles::after,.testi-carousel .slick-slide.slick-current.slick-active.slick-center .testi-item .testi-eles::before,.vs-newsletter .newsletter-form .form-control:focus,.vs-service.style2:hover,.vs-service:hover {
    border-color: var(--theme-color)
}

.slick-dots button:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 30px;
    height: 30px;
    margin: -15px 0 0 -15px;
    border: 2px solid var(--theme-color);
    border-radius: 50%;
    transition: .4s;
    opacity: 0;
    visibility: hidden
}

.arrow-wrap:hover .slick-arrow,.blog-single:hover .blog-img .slick-arrow,.slick-dots .slick-active button::before,.vs-menu-wrapper.vs-body-visible {
    opacity: 1;
    visibility: visible
}

.arrow-wrap .slick-arrow,.vs-menu-wrapper {
    opacity: 0;
    visibility: hidden
}

.slick-arrow {
    padding: 0;
    background-color: #fff;
    position: absolute;
    top: 50%;
    border: 1px solid var(--smoke-color);
    left: var(--pos-x,-100px);
    width: var(--icon-size,50px);
    height: var(--icon-size,50px);
    font-size: var(--icon-font-size, 18px);
    margin-top: calc(var(--icon-size,50px)/ -2);
    z-index: 2;
    border-radius: 50%
}

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

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

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

.dot-style2 .slick-dots {
    margin-top: 10px;
    margin-bottom: 30px
}

.dot-style2 .slick-dots button {
    width: 10px;
    height: 10px;
    border-radius: 9999px
}

.dot-style2 .slick-dots button:hover,.vs-btn.style4:hover span,[data-overlay=title]:before {
    background-color: #01000f
}

.dot-style2 .slick-dots li {
    margin: 0 5px
}

.dot-style2 .slick-dots li.slick-active button {
    width: 40px
}

@media (max-width: 1500px) {
    .slick-arrow {
        --arrow-horizontal:-20px
    }
}

.vs-menu-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    background-color: rgba(0,0,0,.6);
    z-index: 999999;
    width: 100%;
    height: 100%;
    transition: .8s
}

.vs-btn,.vs-btn span {
    transition: .3s ease-in-out
}

.vs-menu-wrapper .mobile-logo {
    padding-bottom: 30px;
    padding-top: 40px;
    display: block;
    text-align: center;
    background-color: rgba(0,0,0,.1)
}

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

.vs-menu-wrapper .vs-menu-toggle {
    border: none;
    position: absolute;
    right: 10px;
    top: 10px;
    padding: 0;
    width: 33px;
    height: 33px;
    line-height: 33px;
    font-size: 18px;
    z-index: 1;
    border-radius: 50%
}

.header-search button:hover,.play-btn:hover i,.play-btn:hover::before,.play-btn:hover:after,.scroll-btn:focus i,.scroll-btn:hover i,.vs-color-plate .reset-btn:hover,.vs-menu-wrapper .vs-menu-toggle:hover,.widget .search-form button:hover {
    background-color: #eb8b0e;
    color: #fff
}

.vs-menu-wrapper .vs-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;
    transition: 1s;
    z-index: 1
}

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

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

.badge,.icon-btn,.play-btn>i,.preloader-inner,.scroll-btn i,.title-area.style2,.vs-btn {
    text-align: center
}

.vs-mobile-menu::-webkit-scrollbar {
    display: none
}

.vs-mobile-menu .new-label {
    margin-left: 5px;
    text-transform: capitalize;
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

.main-menu ul,.vs-mobile-menu ul,.vs-pagination ul {
    margin: 0;
    padding: 0
}

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

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

.vs-mobile-menu ul li a {
    display: block;
    position: relative;
    padding: 12px 0;
    line-height: 1;
    font-size: 16px;
    text-transform: capitalize;
    color: #01000f
}

.vs-mobile-menu ul li a:before {
    content: "\f105";
    font-family: var(--icon-font);
    position: relative;
    left: 0;
    top: 0;
    margin-right: 10px
}

.vs-mobile-menu ul li.vs-active>a:before {
    transform: rotate(90deg)
}

.pl-10,.vs-mobile-menu ul li ul li {
    padding-left: 10px
}

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

.vs-mobile-menu ul .vs-item-has-children>a .vs-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: #01000f;
    box-shadow: 0 0 20px -8px rgba(173,136,88,.5);
    border-radius: 50%
}

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

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

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

.vs-menu-toggle {
    width: 50px;
    height: 50px;
    padding: 0;
    font-size: 30px;
    border: none;
    background-color: var(--theme-color);
    color: #01000f;
    border-radius: 0
}

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

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

.searchBoxTggler,.sideMenuToggler {
    width: 40px;
    min-width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    border-radius: 50%;
    border: 1px solid var(--theme-color)
}

.blog-single .blog-social a:hover,.searchBoxTggler:hover,.sideMenuToggler:hover {
    background-color: var(--theme-color);
    color: var(--white-color)
}

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

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

.preloader-inner {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%)
}

.link-btn,.play-btn,.scroll-btn i,.vs-btn {
    position: relative
}

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

.loader {
    animation: 1.5s infinite loaderspin;
    height: 50px;
    width: 50px;
    display: block;
    margin: 0 auto
}

.animated,.wow-animated {
    animation-fill-mode: both;
    animation-duration: 1s
}

.loader:after,.loader:before {
    border-radius: 50%;
    content: "";
    display: block;
    height: 20px;
    width: 20px
}

.loader:before {
    animation: 1.5s infinite ball1;
    background-color: var(--white-color);
    box-shadow: 30px 0 0 var(--theme-color);
    margin-bottom: 10px
}

.loader:after,.vs-btn {
    background-color: var(--theme-color)
}

.loader:after {
    animation: 1.5s infinite ball2;
    box-shadow: 30px 0 0 var(--white-color)
}

@keyframes loaderspin {
    0% {
        transform: rotate(0) scale(.8)
    }

    50% {
        transform: rotate(360deg) scale(1)
    }

    100% {
        transform: rotate(720deg) scale(.8)
    }
}

@keyframes ball1 {
    0% {
        box-shadow: 30px 0 0 var(--theme-color)
    }

    50% {
        box-shadow: 0 0 0 var(--theme-color);
        margin-bottom: 0;
        transform: translate(15px,15px)
    }

    100% {
        box-shadow: 30px 0 0 var(--theme-color);
        margin-bottom: 10px
    }
}

@keyframes ball2 {
    0% {
        box-shadow: 30px 0 0 var(--white-color)
    }

    50% {
        box-shadow: 0 0 0 var(--white-color);
        margin-top: -20px;
        transform: translate(15px,15px)
    }

    100% {
        box-shadow: 30px 0 0 var(--white-color);
        margin-top: 0
    }
}

.vs-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    color: #01000f;
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
    padding: 22px 30px;
    border-radius: 0;
    z-index: 1;
    overflow: hidden;
    letter-spacing: .3px;
    gap: 5px
}

.icon-btn,.play-btn {
    align-items: center;
    padding: 0
}

.bg-color1,.vs-btn span,.vs-btn.style2:hover span,.vs-btn.style3:hover span {
    background-color: var(--title-color)
}

.main-menu ul.mega-menu>li>a:hover,.sec-title,.sec-title.style2 {
    padding-left: 0
}

.vs-btn span {
    display: inline-block;
    width: 20px;
    height: 1px
}

.vs-btn::after,.vs-btn::before {
    width: 101%;
    height: 100%;
    content: "";
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    background: #01000f;
    transition: .5s;
    z-index: -1;
    border-radius: inherit
}

.vs-btn:before {
    transform: rotateX(90deg)
}

.vs-btn:after {
    transform: rotateY(90deg)
}

.vs-btn.style2,.vs-btn.style3 {
    background-color: transparent;
    color: var(--theme-color);
    padding: 0;
    letter-spacing: 3.2px;
    gap: 15px
}

.breadcumb-menu li:last-child:after,.calendar_wrap .wp-calendar-nav .pad,.footer-newsletter .vs-btn::before,.footer-newsletter .vs-btn:after,.footer-widget.widget_archive a:before,.footer-widget.widget_categories a:before,.footer-widget.widget_meta a:before,.footer-widget.widget_nav_menu a:before,.footer-widget.widget_pages a:before,.menu-style2>ul>li>a::after,.play-btn.style3::before,.play-btn.style3:after,.review-form,.vs-btn.style2::after,.vs-btn.style2::before,.vs-btn.style3::after,.vs-btn.style3::before,.wp-block-calendar .wp-calendar-nav .pad,blockquote.vs-quote cite::before {
    display: none
}

.icon-btn,.play-btn,.play-btn>i {
    display: inline-flex
}

.vs-btn.style2 span,.vs-btn.style3 span {
    width: 35px;
    background-color: var(--theme-color)
}

.vs-btn.style2:hover,.vs-btn.style3:hover {
    color: var(--title-color)
}

.vs-btn.style3:hover span,.vs-btn:hover span {
    background-color: var(--white-color)
}

.vs-btn.style4 {
    background: #01000f;
    color: #fff
}

.icon-btn.style4,.vs-btn.style4 span,[data-overlay=white]:before {
    background-color: #fff
}

.icon-btn,.icon-btn.style2,.play-btn {
    background-color: transparent
}

.vs-btn.style4::after,.vs-btn.style4::before {
    background: var(--theme-color)
}

.vs-btn>i {
    margin-left: 8px
}

.vs-btn:hover:before {
    transform: rotateX(0)
}

.vs-btn:hover:after {
    transform: rotateY(0)
}

.icon-btn {
    justify-content: center;
    width: var(--btn-size,60px);
    height: var(--btn-size,60px);
    line-height: 1;
    font-size: var(--btn-font-size, 20px);
    color: var(--theme-color);
    border: 1px solid var(--vs-border-color);
    border-radius: 0
}

.icon-btn.style2 {
    border: 2px solid #fff;
    color: #fff
}

.blog-single .blog-img .slick-arrow:hover,.footer-newsletter .vs-btn:hover,.footer-social a:hover,.icon-btn.style2:hover {
    background-color: var(--theme-color);
    color: #fff
}

.icon-btn.style3,.icon-btn.style4 {
    --btn-size: 55px;
    background-color: #f2f6ff;
    color: var(--theme-color);
    border-radius: 5px
}

.icon-btn.style5 {
    background-color: #fff;
    color: #01000f;
    box-shadow: 0 10px 24px rgba(0,0,0,.08)
}

.icon-btn.style5:hover {
    background-color: var(--theme-color);
    color: #fff;
    box-shadow: none
}

.our-rating,.vs-sticky-header,.vs-sticky-header.sticky,.vs-sticky-header.sticky.stickyon {
    box-shadow: 0 4px 30px rgba(0,0,0,.06)
}

.icon-btn.style6 {
    background-color: var(--theme-color);
    color: #fff;
    --btn-size: 55px;
    --btn-font-size: 17px
}

.icon-btn:hover {
    background-color: #01000f;
    color: #fff;
    border-color: transparent
}

.play-btn {
    justify-content: center;
    z-index: 1;
    border: none
}

.play-btn:after,.play-btn:before,.play-btn>i {
    border-radius: 50%;
    transition: .4s;
    background-color: var(--theme-color)
}

.play-btn>i {
    align-items: center;
    justify-content: center;
    width: var(--icon-size,124px);
    height: var(--icon-size,124px);
    line-height: var(--icon-size, 124px);
    font-size: var(--icon-font-size, 1.5em);
    color: #fff;
    z-index: 1;
    padding-left: 6px
}

.link-btn,.scroll-btn,.scroll-btn i {
    display: inline-block
}

.play-btn:after,.play-btn:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: -1
}

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

.play-btn.style2 i,.play-btn.style3 i {
    --icon-size: 60px;
    border-radius: 5px;
    --icon-font-size: 18px
}

.play-btn.style4,.play-btn.style5 i {
    --icon-size: 120px;
    --icon-font-size: 30px
}

.play-btn.style2:after,.play-btn.style2:before {
    border-radius: 5px
}

.play-btn.style3 i {
    background-color: rgba(14,89,242,.7)
}

.play-btn.style4 i,.play-btn.style4:after,.play-btn.style4:before {
    background-color: #fff;
    color: var(--theme-color)
}

.play-btn.style5 i {
    border-radius: 0
}

.play-btn.style5:after,.play-btn.style5:before {
    border: 2px solid var(--theme-color);
    background-color: transparent;
    border-radius: 0
}

.play-btn.style6 {
    --icon-size: 60px;
    --icon-font-size: 18px
}

.play-btn.style7::after,.play-btn.style7::before {
    background-color: transparent;
    border: 1px solid rgba(var(--white-color-rgb),30%);
    animation-duration: 2s
}

.play-btn.style7::after {
    animation-duration: 3s
}

.play-btn.style7>i {
    width: var(--icon-size,86.59px);
    height: var(--icon-size,86.59px);
    color: var(--title-color)
}

.link-btn {
    font-weight: 500;
    font-size: 16px;
    line-height: .8;
    padding-bottom: 2px;
    margin-bottom: -2px
}

.scroll-btn,.scrollToTop {
    position: fixed;
    visibility: hidden;
    opacity: 0
}

.link-btn i {
    margin-left: 7px;
    font-size: .9rem
}

.link-btn:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 1px;
    background-color: var(--theme-color);
    transition: .4s
}

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

.scroll-btn {
    bottom: 300px;
    right: 30px;
    z-index: 94;
    border-radius: 50%
}

.scroll-btn i {
    background-color: var(--theme-color);
    color: #fff;
    font-size: 16px;
    width: var(--btn-size,50px);
    height: var(--btn-size,50px);
    line-height: var(--btn-size, 50px);
    z-index: 2;
    border-radius: inherit;
    transition: .8s
}

.scroll-btn:before {
    content: "";
    position: absolute;
    left: var(--extra-shape,-6px);
    top: var(--extra-shape,-6px);
    right: var(--extra-shape,-6px);
    bottom: var(--extra-shape,-6px);
    background-color: transparent;
    border-radius: inherit;
    z-index: 1;
    border: 2px dashed var(--theme-color);
    animation: 13s linear infinite spin
}

.scroll-btn.show {
    bottom: 120px;
    opacity: 1;
    visibility: visible
}

.scrollToTop {
    right: 30px;
    bottom: 30px;
    transition: .4s;
    z-index: 96
}

.scrollToTop.show {
    bottom: 60px;
    opacity: 1;
    visibility: visible
}

.sec-title {
    line-height: 1.36;
    margin: -.2em 0 0
}

.sec-title2 {
    font-size: 30px;
    margin: 0 0 30px;
    font-weight: 400
}

.sec-subtitle {
    display: block;
    font-family: var(--title-font);
    font-size: 20px;
    font-weight: 500;
    margin: -.1em 0 25px;
    line-height: 1.15;
    color: var(--black-color)
}

.sec-subtitle.text-white {
    color: var(--white-color);
    -webkit-text-stroke-color: var(--white-color)
}

.title-area {
    margin-bottom: calc(var(--section-title-space) - 25px)
}

.title-area.style2 {
    display: block
}

.sec-btns {
    padding: 13px 0 0;
    display: flex;
    flex-wrap: wrap;
    gap: 10px
}

.sec-btns i.fa-arrow-left {
    margin-left: 0;
    margin-right: 10px
}

.sec-btns2 {
    margin-bottom: calc(var(--section-title-space) - 5px)
}

.sec-line-wrap {
    display: flex;
    gap: 25px;
    align-items: center;
    margin: 0 0 80px
}

.badge,.border-title-border {
    display: inline-block;
    background-color: var(--theme-color)
}

.sec-line-wrap .sec-title2 {
    margin: -.3em 0 -.4em
}

.sec-line {
    background-color: var(--theme-color);
    flex: 1;
    height: 2px
}

.border-title {
    position: relative;
    padding: 0 0 5px;
    margin-bottom: 0
}

.border-title-border {
    width: 48px;
    height: 2px;
    margin-bottom: 25px
}

@media (max-width: 1399px) {
    .slick-arrow {
        --arrow-horizontal:40px
    }

    .sec-title4 {
        font-size: 42px
    }
}

@media (max-width: 1199px) {
    .play-btn.style4 {
        --icon-size:80px;
        --icon-font-size: 20px
    }

    .sec-title4 {
        font-size: 36px;
        line-height: 1.4
    }
}

@media (max-width: 991px) {
    .slick-arrow {
        --icon-size:40px;
        margin-right: 40px
    }

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

    .slick-dots {
        margin: 8px 0 38px
    }

    .title-area.title-arrow {
        flex-direction: row;
        justify-content: space-between
    }

    .sec-title {
        padding-left: 0
    }

    .title-area {
        margin-bottom: 40px;
        flex-wrap: wrap;
        gap: 15px
    }
}

.blog-style1:hover .blog-img,.blog-style2 .blog-img,.blog-style2:hover .blog-img,.image-scale-hover {
    overflow: hidden
}

.image-scale-hover img {
    transition: .4s;
    transform: scale(1.001)
}

.image-scale-hover:hover img {
    transform: scale(1.2)
}

.service-slider img {
    width: 100%;
    height: 450px;
    object-fit: cover;
    border-radius: 10px;
}

.service-slider .slick-prev,
.service-slider .slick-next {
    z-index: 10;
}

.service-slider .slick-prev {
    left: 15px;
}

.service-slider .slick-next {
    right: 15px;
}
.alert-dismissible .btn-close {
    font-size: 18px;
    line-height: 1
}

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

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

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

.media-body,.vs-newsletter .newsletter-form .form-control,.vs-newsletter .newsletter-form .vs-btn {
    flex: 1
}

.badge {
    position: absolute;
    width: -moz-fit-content;
    width: fit-content;
    color: #fff;
    padding: .35em .55em;
    border-radius: 50%
}

.big-name,.new-label {
    color: #fff;
    position: relative;
    line-height: 1
}

.hr-style1 {
    background-color: #fff;
    margin: 20px 0 30px
}

.new-label {
    font-size: 12px;
    background-color: var(--error-color);
    padding: 1px 5px;
    border-radius: 4px;
    text-transform: capitalize;
    top: -1px
}

.big-name {
    font-size: 450px;
    -webkit-text-stroke: 2px #eef0ff;
    letter-spacing: -.08em;
    font-weight: 400;
    z-index: 31;
    text-align: right;
    margin: -234px 30px -59px 0
}

.sec-big-text,.sec-big-text2 {
    font-size: 160px;
    font-weight: 700;
    font-family: var(--title-font);
    line-height: 1;
    display: block;
    color: #f1f3f9;
    position: absolute;
    left: 0;
    right: 0;
    top: -37px;
    z-index: -1
}

.sec-big-text2 {
    top: auto;
    left: auto;
    right: 120px;
    bottom: -26px
}

.home-five-shape1 {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    background-color: #f6f7fc;
    width: 100%;
    max-width: 1255px;
    z-index: -3
}

.home-five-shape2 {
    position: absolute;
    left: -428px;
    bottom: 250px;
    width: 1024px;
    height: 1024px;
    border: 50px solid var(--theme-color);
    border-radius: 50%;
    z-index: -2
}

.home-five-shape3 {
    position: absolute;
    right: 60px;
    bottom: 325px
}

.home-five-wrap1 {
    position: relative;
    border-bottom: 7px solid var(--theme-color);
    z-index: 1
}

@media (min-width: 1921px) {
    .d-hd-none,.ls-wrapper>.ls-layer.d-hd-none,.ls-wrapper>a>.ls-layer.d-hd-none {
        display:none!important
    }
}

@media (min-width: 1500px) {
    .d-xxxl-block {
        display:block!important
    }
}

@media (max-width: 1500px) {
    .big-name {
        font-size:320px;
        margin: -168px 30px -59px 0
    }

    .home-five-shape3 {
        right: 30px;
        bottom: 50px;
        max-width: 200px
    }

    .home-five-shape2 {
        left: -18%;
        bottom: 34%;
        width: 500px;
        height: 500px
    }

    .home-five-shape1 {
        max-width: 100%;
        right: 60px;
        width: auto
    }

    .sec-big-text,.sec-big-text2 {
        font-size: 130px
    }
}

@media (max-width: 1399px) {
    .big-name {
        font-size:245px;
        margin: -128px 40px -42px 0
    }

    .home-five-shape1 {
        right: 0
    }

    .menu-all-pages-container.footer-links {
        width: 330px;
        max-width: 100%
    }

    .footer-number:before {
        display: none
    }
}

@media (max-width: 1199px) {
    .big-name {
        font-size:190px;
        margin: -100px 40px -42px 0
    }
}

@media (max-width: 991px) {
    .big-name {
        font-size:146px;
        margin: -78px 40px -25px 0
    }
}

.social-style {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px
}

.social-style a {
    width: 45px;
    height: 45px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(104,104,104,.3);
    border-radius: 50%;
    color: var(--white-color);
    font-size: 14px
}

.social-style a:hover,.widget_archive a:hover,.widget_categories a:hover,.widget_meta a:hover,.widget_nav_menu a:hover,.widget_pages a:hover {
    background-color: var(--theme-color);
    color: var(--title-color)
}

.star-rating span::before,.star-rating::before {
    content: "\f005\f005\f005\f005\f005";
    top: 50%;
    left: 50%;
    color: var(--yellow-color);
    letter-spacing: 3px;
    font-weight: 700;
    transform: translate(-50%,-50%)
}

html::-webkit-scrollbar {
    width: 3px;
    background: var(--title-color)
}

html::-webkit-scrollbar-track {
    background: 0 0;
    border-radius: 0
}

html::-webkit-scrollbar-thumb {
    background: #eef0ff;
    border-radius: 0
}

html::-webkit-scrollbar-thumb:hover {
    background: var(--theme-color)
}

.star-rating {
    overflow: hidden;
    position: relative;
    width: 138px;
    height: 40px;
    line-height: 1.2em;
    display: block;
    font-family: var(--icon-font);
    font-weight: 700;
    font-size: 14px;
    margin: 0 auto 15px;
    background-color: var(--light-color1);
    border-radius: 999px
}

.star-rating::before {
    float: left;
    position: absolute
}

.star-rating span {
    overflow: hidden;
    float: left;
    top: 0;
    left: 0;
    position: absolute;
    padding-top: 1.5em
}

.star-rating span::before {
    position: absolute
}

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

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

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

.fw-light {
    font-weight: 300
}

.fw-normal,.number-card .card-subtitle {
    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,.vs-banner__text {
    font-size: 18px
}

.call-card .call-subtitle,.fs-xs {
    font-size: 14px
}

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

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

.bg-white {
    background-color: #fff!important
}

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

.bg-title {
    background-color: #01000f!important
}

.bg-gray {
    background-color: #e5e5e5
}

.background-image,[data-bg-src] {
    background-size: cover
}

.bg-fluid {
    background-size: 100% 100%
}

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

.bg-color3 {
    background-color: var(--bg-color3)
}

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

.text-title {
    color: #01000f!important
}

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

.text-white {
    color: #fff!important
}

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

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

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

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

.text-light2 {
    color: #919398
}

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

.overlay.style2 {
    background-color: var(--title-color);
    opacity: 90%;
    z-index: -1
}

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

.img-box1,.main-menu ul.mega-menu .main-menu ul.mega-menu>li>ul>li>a,.main-menu>ul>li>a .has-new-lable,.service-tab,.widget,.widget_title,[data-overlay] {
    position: relative
}

[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=black]:before {
    background-color: var(--black-color)
}

[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
}

.fadeInUp {
    animation-name: fadeInUp
}

.fadein {
    --animation-name: fadein-custom
}

.slideinup {
    --animation-name: slideinup
}

.slideindown {
    --animation-name: slideindown
}

.slideinleft {
    --animation-name: slideinleft
}

.slideinright {
    --animation-name: slideinright
}

.animated {
    animation-iteration-count: 1;
    animation-delay: .3s;
    animation-name: var(--animation-name)
}

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

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

    30% {
        opacity: .4
    }

    100% {
        transform: scale(1.5);
        opacity: 0
    }
}

@keyframes slideinup {
    0% {
        opacity: 0;
        transform: translateY(70px)
    }

    100% {
        transform: translateY(0)
    }
}

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

    100% {
        transform: translateY(0)
    }
}

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

    100% {
        transform: translateX(0)
    }
}

@keyframes slideinright {
    0% {
        opacity: 0;
        transform: translateX(70px)
    }

    100% {
        transform: translateX(0)
    }
}

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

    100% {
        opacity: 1
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(20px)
    }

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

@keyframes spin {
    to {
        transform: rotate(360deg)
    }
}

.widget_archive ul,.widget_categories ul,.widget_meta ul,.widget_nav_menu ul,.widget_pages ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 10px
}

.widget_archive>ul,.widget_categories>ul,.widget_meta>ul,.widget_nav_menu>ul,.widget_pages>ul {
    margin: 0 0 -38px
}

.widget_archive a,.widget_categories a,.widget_meta a,.widget_nav_menu a,.widget_pages a {
    display: block;
    background-color: var(--bg-color2);
    color: var(--white-color);
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: .3px;
    padding: 17px 20px
}

.footer-menu a,.main-menu>ul>li>a {
    letter-spacing: 3.2px;
    text-transform: uppercase
}

.widget_archive a::before,.widget_categories a::before,.widget_meta a::before,.widget_nav_menu a::before,.widget_pages a::before {
    content: "\f178";
    position: absolute;
    right: 20px;
    top: 50%;
    font-family: var(--icon-font);
    font-weight: 400;
    color: var(--white-color);
    transform: translateY(-50%)
}

.footer-info__link,.footer-info__title,.footer-menu a,.footer-number1,.footer-social .social-title,.header-links li,.main-menu a,.widget .search-form input,.widget-workhours li,.widget_title {
    font-family: var(--title-font)
}

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

.widget_archive li>span,.widget_categories li>span,.widget_meta li>span,.widget_nav_menu li>span,.widget_pages li>span {
    text-align: center;
    position: absolute;
    right: 0;
    top: -4.5px;
    font-size: 16px;
    transition: .4s
}

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

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

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

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

.widget {
    margin-bottom: 40px
}

.widget input,.widget select {
    height: 55px;
    border: none;
    background-color: #fff;
    padding-left: 20px;
    font-weight: 400
}

.widget__banner {
    min-height: 200px;
    display: flex;
    align-items: center;
    justify-content: center
}

.widget__banner-title {
    color: var(--white-color);
    text-transform: uppercase;
    text-align: center
}

.footer-info a:hover,.footer-menu a:hover,.footer-number .info:hover,.widget__banner-title span:first-child,.widget_shopping_cart .remove:hover {
    color: var(--theme-color)
}

.footer-menu2 ul li,.widget__banner-title span:nth-child(2) {
    display: block
}

.widget__contact {
    background-color: var(--bg-color2);
    text-align: center;
    padding: 35px
}

.widget__contact-call {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: 30px;
    color: var(--white-color)
}

.widget__contact-date {
    color: var(--white-color);
    margin-bottom: 35px
}

.widget_title {
    font-size: 30px;
    font-weight: 400;
    margin: -.38em 0 30px;
    padding-bottom: 8px
}

.widget_title::after {
    content: "";
    width: 59px;
    height: 1px;
    background-color: var(--theme-color);
    position: absolute;
    bottom: 0;
    left: 0;
}

.widget .search-form {
    position: relative;
    display: flex;
    background-color: var(--bg-color2);
}

.widget .search-form input {
    flex: 1;
    background-color: transparent;
    height: 60px;
    font-size: 20px;
    padding: 0 30px;
    color: var(--white-color);
    font-weight: 400;
}

.widget .search-form input::-moz-placeholder {
    font-size: 20px;
    color: var(--white-color);
    font-weight: 400;
}

.widget .search-form input::placeholder {
    font-size: 20px;
    color: var(--white-color);
    font-weight: 400
}

.widget .search-form button {
    border: none;
    background-color: transparent;
    color: #fff;
    height: 60px;
    width: auto;
    line-height: 60px;
    font-size: 17px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 28px 0 0
}

.recent-post,.tagcloud {
    display: flex;
    align-items: center
}

.widget__content {
    padding: 35px;
    border: 1px solid var(--vs-border-color)
}

.tagcloud a,.wp-block-tag-cloud a {
    display: inline-block;
    border: none;
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
    padding: 9.5px 16.5px;
    margin-right: 5px;
    margin-bottom: 10px;
    color: #01000f;
    background-color: var(--smoke-color);
    border-radius: 0
}

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

.tagcloud {
    flex-wrap: wrap;
    gap: 10px
}

.tagcloud a {
    background-color: var(--bg-color2);
    color: var(--white-color);
    font-size: 14px;
    flex: auto;
    text-align: center;
    margin-right: 0;
    margin-bottom: 0;
    padding: 13px 18px;
    font-weight: 400
}

.recent-post {
    margin-bottom: 18px
}

.recent-post .media-img {
    margin-right: 20px;
    width: 80px;
    overflow: hidden
}

.recent-post .media-img img {
    width: 100%;
    border-radius: 4px;
    transition: .4s
}

.recent-post .post-title {
    font-weight: 600;
    font-size: 16px;
    line-height: 26px;
    margin: 0 0 5px
}

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

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

.popup-search-box form button:hover,.recent-post:hover .media-img img {
    transform: scale(1.1)
}

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

.calendar_wrap span[class*=wp-calendar-nav],.wp-block-calendar span[class*=wp-calendar-nav] {
    position: absolute;
    top: 8px;
    left: 20px;
    font-size: 14px;
    color: #01000f;
    font-weight: 500;
    z-index: 1
}

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

.calendar_wrap caption,.wp-block-calendar caption {
    caption-side: top;
    text-align: center;
    color: #01000f;
    background-color: #f1dbbe
}

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

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

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

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

.sidebar-gallery {
    display: grid;
    gap: 20px
}

    /* ── Site palette variables (mirror style.css) ── */
    .service-details-section {
      padding: 80px 0 80px;
      background: #fff;
    }

    /* Main content */
    .service-main-img { width: 100%; border-radius: 6px; overflow: hidden; margin-bottom: 12px; }
    .service-main-img img { width: 100%; height: 420px; object-fit: cover; border-radius: 6px; display: block; }
    .service-img-caption { color: #686868; font-size: 14px; margin-bottom: 32px; font-family: 'Poppins', sans-serif; }

    .service-main-title {
      font-family: 'Oswald', sans-serif;
      font-size: clamp(24px, 3.5vw, 38px);
      font-weight: 600;
      color: #01000f;
      letter-spacing: 0.5px;
      margin-bottom: 16px;
    }
    .service-main-desc { font-family: 'Poppins', sans-serif; font-size: 15px; color: #686868; line-height: 1.85; margin-bottom: 16px; }

    .service-challenge-title {
      font-family: 'Oswald', sans-serif;
      font-size: 22px;
      font-weight: 600;
      color: #01000f;
      margin: 36px 0 14px;
      position: relative;
      padding-bottom: 14px;
    }
    .service-challenge-title::before {
      content: '';
      position: absolute;
      bottom: 0; left: 0;
      width: 100%; height: 1px;
      background: #d8dde1;
      border-radius: 20px;
    }
    .service-challenge-title::after {
      content: '';
      position: absolute;
      bottom: 0; left: 0;
      width: 40px; height: 1px;
      background: #f0a800;
      border-radius: 20px;
    }

    .service-challenge-list { padding-left: 20px; margin-bottom: 32px; }
    .service-challenge-list li { font-family: 'Poppins', sans-serif; font-size: 14px; color: #686868; line-height: 1.85; margin-bottom: 10px; }

    .service-gallery-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-bottom: 36px; }
    .service-gallery-row img { width: 100%; height: 160px; object-fit: cover; border-radius: 6px; display: block; }

    .service-outcome-title {
      font-family: 'Oswald', sans-serif;
      font-size: 22px;
      font-weight: 600;
      color: #01000f;
      margin-bottom: 14px;
      position: relative;
      padding-bottom: 14px;
    }
    .service-outcome-title::before {
      content: '';
      position: absolute;
      bottom: 0; left: 0;
      width: 100%; height: 1px;
      background: #d8dde1;
      border-radius: 20px;
    }
    .service-outcome-title::after {
      content: '';
      position: absolute;
      bottom: 0; left: 0;
      width: 40px; height: 1px;
      background: #f0a800;
      border-radius: 20px;
    }

    /* Sidebar */
    .service-sidebar { display: flex; flex-direction: column; gap: 24px; position: sticky; top: 100px; }

    /* Services list widget — mirrors the "Categories" block from the screenshot */
    .sidebar-services-widget {
      border: 1px solid #d8dde1;
      border-radius: 4px;
      overflow: hidden;
      background: #fff;
    }
    .sidebar-services-header {
      padding: 18px 24px 14px;
    }
    .sidebar-services-header h4 {
      font-family: 'Oswald', sans-serif;
      font-size: 22px;
      font-weight: 700;
      color: #01000f;
      margin: 0 0 10px;
      position: relative;
      padding-bottom: 14px;
    }
    .sidebar-services-header h4::before {
      content: '';
      position: absolute;
      bottom: 0; left: 0;
      width: 100%; height: 1px;
      background: #d8dde1;
    }
    .sidebar-services-header h4::after {
      content: '';
      position: absolute;
      bottom: 0; left: 0;
      width: 40px; height: 1px;
      background: #f0a800;
    }

    .sidebar-services-list { list-style: none; padding: 12px 16px 16px; margin: 0; display: flex; flex-direction: column; gap: 8px; }
    .sidebar-services-list li a {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 13px 18px;
      background: #1b1b1b;
      color: #fff;
      font-family: 'Poppins', sans-serif;
      font-size: 14px;
      font-weight: 400;
      text-decoration: none;
      border-radius: 3px;
      transition: background 0.2s;
    }
    .sidebar-services-list li a:hover,
    .sidebar-services-list li.active a {
      background: #f0a800;
      color: #01000f;
    }
    .sidebar-services-list li a .arrow-icon { font-size: 13px; flex-shrink: 0; }

    /* Contact widget */
    .sidebar-contact-widget {
      border-radius: 4px;
      overflow: hidden;
      position: relative;
      min-height: 200px;
    }
    .sidebar-contact-bg {
      position: absolute;
      inset: 0;
      background: url('assets/img/service/service-details-1-1.jpg') center/cover no-repeat;
      filter: brightness(0.3);
    }
    .sidebar-contact-content {
      position: relative;
      z-index: 1;
      padding: 36px 24px;
      text-align: center;
    }
    .sidebar-contact-icon {
      width: 50px; height: 50px;
      background: #f0a800;
      border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      margin: 0 auto 16px;
    }
    .sidebar-contact-icon i { color: #01000f; font-size: 20px; }
    .sidebar-contact-content h4 {
      font-family: 'Oswald', sans-serif;
      font-size: 20px;
      color: #fff;
      margin-bottom: 16px;
      letter-spacing: 0.5px;
    }
    .sidebar-contact-btn {
      display: inline-block;
      background: #f0a800;
      color: #01000f;
      font-family: 'Oswald', sans-serif;
      font-size: 13px;
      font-weight: 600;
      letter-spacing: 1px;
      text-transform: uppercase;
      padding: 11px 26px;
      border-radius: 3px;
      text-decoration: none;
      transition: background 0.2s, color 0.2s;
    }
    .sidebar-contact-btn:hover { background: #fff; color: #01000f; }
    .sidebar-contact-phone { display: block; font-family: 'Poppins', sans-serif; font-size: 13px; color: #ccc; margin-top: 12px; }
    .sidebar-contact-phone strong { color: #fff; }

    /* Pagination */
    .service-pagination {
      display: flex; justify-content: space-between; align-items: center;
      gap: 16px; margin-top: 48px; padding-top: 32px;
      border-top: 1px solid #d8dde1;
    }
    .pagi-btn { display: flex; align-items: center; gap: 14px; text-decoration: none; transition: opacity 0.2s; }
    .pagi-btn:hover { opacity: 0.7; }
    .pagi-arrow {
      width: 44px; height: 44px;
      border: 1px solid #d8dde1;
      border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      color: #01000f; font-size: 16px; flex-shrink: 0;
      transition: background 0.2s, color 0.2s;
    }
    .pagi-btn:hover .pagi-arrow { background: #f0a800; border-color: #f0a800; color: #01000f; }
    .pagi-label { font-family: 'Poppins', sans-serif; font-size: 11px; letter-spacing: 1px; text-transform: uppercase; color: #686868; margin-bottom: 4px; }
    .pagi-name { font-family: 'Oswald', sans-serif; font-size: 16px; color: #01000f; }
    .pagi-btn.next { flex-direction: row-reverse; text-align: right; }

    @media (max-width: 991px) { .service-gallery-row { grid-template-columns: repeat(2, 1fr); } .service-sidebar { position: static; } }
    @media (max-width: 576px) { .service-gallery-row { grid-template-columns: 1fr; } .service-main-img img { height: 260px; } }

.widget_shopping_cart {
    text-align: left
}

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

.widget_shopping_cart .mini_cart_item {
    position: relative;
    border-bottom: 1px solid var(--vs-border-color);
    padding: 0 0 32px 110px;
    margin: 0 0 27px;
    min-height: 90px
}

.widget_shopping_cart .remove {
    position: absolute;
    right: 0;
    top: 0;
    color: #01000f;
    line-height: 1;
    font-size: 18px
}

.widget_shopping_cart .img {
    position: absolute;
    left: 0;
    top: 3px;
    width: 90px;
    height: 90px;
    display: inline-block;
    border: 1px solid var(--vs-border-color)
}

.widget_shopping_cart .product-title {
    font-size: 14px;
    color: #01000f;
    font-weight: 400;
    margin-bottom: 0;
    display: inline-block
}

.widget_shopping_cart .amount {
    display: block;
    font-weight: 600;
    color: #01000f;
    font-size: 16px
}

.widget_shopping_cart .quantity {
    display: inline-flex;
    margin-top: 12px
}

.widget_shopping_cart .qut-btn {
    border: 1px solid var(--vs-border-color);
    display: inline-block;
    background-color: transparent;
    width: 25px;
    height: 25px;
    padding: 0;
    font-size: 12px;
    z-index: 1;
    position: relative
}

.footer-info,.footer-newsletter,.recent-product,.slick-status .vs-custom-dots {
    display: flex
}

.widget_shopping_cart .qut-btn:hover {
    background-color: #01000f;
    border-color: transparent;
    color: #fff
}

.widget_shopping_cart .qty-input {
    border: 1px solid var(--vs-border-color);
    text-align: center;
    width: -moz-max-content;
    width: max-content;
    min-width: 40px;
    font-size: 12px;
    padding: 0;
    height: 25px;
    margin: 0 -1px
}

.widget_shopping_cart .subtotal {
    float: right;
    text-align: right;
    font-size: 12px;
    margin-top: 19px
}

.widget_shopping_cart .subtotal>span:not(.amount) {
    color: var(--body-color);
    font-weight: 300
}

.widget_shopping_cart .subtotal .amount {
    font-size: 12px;
    display: inline-block
}

.widget_shopping_cart .total {
    color: #01000f;
    text-transform: uppercase;
    line-height: 1;
    margin-bottom: 25px;
    font-size: 18px
}

.widget_shopping_cart .total .amount {
    font-size: inherit;
    display: inline-block;
    color: var(--theme-color)
}

.widget_shopping_cart .vs-btn {
    border: 1px solid #01000f;
    margin-right: 10px;
    text-transform: capitalize;
    height: 50px;
    line-height: 47px;
    padding: 0 35px;
    background-color: #01000f;
    color: #fff;
    font-weight: 400
}

.widget_shopping_cart .vs-btn:hover {
    background-color: transparent;
    color: #01000f
}

.accordion .accordion-header,.blog-details .blog-content,.main-menu>ul>li,.progress-box:last-child,.vs-comments-wrap li,.vs-comments-wrap.vs-comment-form,.widget_shopping_cart .buttons {
    margin: 0
}

.sidebar-area .newsletter-form button {
    width: 100%;
    text-transform: capitalize;
    font-size: 16px;
    font-weight: 400;
    height: 60px;
    margin-top: 10px
}

.sidebar-area .wp-block-group__inner-container h2 {
    font-size: 20px;
    line-height: 1em;
    margin-bottom: 20px;
    margin-top: -.07em
}

.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;
    border-bottom: 1px solid rgba(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
}

.recent-product .product-title {
    font-size: 16px
}

.widget-workhours li {
    background-color: #fff;
    padding: 14.5px 20px;
    margin: 0 0 15px;
    font-weight: 500
}

.quote-box {
    position: relative;
    text-align: center;
    padding: 80px 30px;
    margin: 0 0 30px
}

.quote-box:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(7,26,62,.7)
}

.quote-box__title {
    color: #fff;
    position: relative;
    z-index: 1;
    max-width: 200px;
    margin: -.3em auto 25px
}

.footer-logo,.footer-widget,.footer-widget.widget_archive,.footer-widget.widget_categories,.footer-widget.widget_meta,.footer-widget.widget_nav_menu,.footer-widget.widget_pages,.mb-40 {
    margin-bottom: 40px
}

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

.footer-widget .widget_title {
    margin: 0 0 27px
}

.footer-widget.widget_archive a,.footer-widget.widget_categories a,.footer-widget.widget_meta a,.footer-widget.widget_nav_menu a,.footer-widget.widget_pages a {
    width: -moz-max-content;
    width: max-content;
    display: block;
    border: none;
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 16px;
    max-width: 100%;
    padding: 0
}

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

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

.footer-widget .footer-links>ul {
    display: grid;
    grid-template-columns: repeat(2,1fr)
}

.footer-widget .footer-links a {
    margin-bottom: 21px
}

.footer-text {
    color: var(--white-color);
    letter-spacing: .3px;
    max-width: 62%;
    margin: 0 auto 40px
}

.footer-info {
    gap: 19px;
    margin-bottom: 12px
}

.footer-info__icon {
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--title-color);
    font-size: 20px;
    color: var(--theme-color)
}

.footer-info__title {
    font-size: 14px;
    color: var(--vs-border-color);
    text-transform: uppercase
}

.footer-info__link {
    font-size: 20px;
    color: var(--white-color);
    text-transform: uppercase;
    display: block
}

.footer-info a {
    text-transform: lowercase
}

.footer-number {
    border-top: 1px solid #14284f;
    padding: 43px 0 0;
    margin: 34px 0 0;
    position: relative
}

.footer-number:before {
    content: "";
    position: absolute;
    top: -1px;
    left: -60px;
    width: 9999px;
    height: 1px;
    border: inherit
}

.footer-number .info {
    color: var(--body-color);
    margin: 0;
    line-height: 1;
    display: inline-block
}

.footer-number .title {
    margin: 0 0 7px
}

.footer-map {
    max-width: 400px;
    width: 100%
}

.footer-social .social-title {
    color: #01000f;
    font-size: 20px;
    display: inline-block;
    margin-right: 20px;
    font-weight: 700
}

.footer-social a {
    display: inline-block;
    width: 45px;
    height: 45px;
    line-height: 45px;
    font-size: 16px;
    margin: 0 5px 0 0;
    color: #fff;
    background-color: #15284c;
    text-align: center;
    border-radius: 5px
}

.footer-social.style2 a {
    background-color: #fff;
    outline: #e7e8ec solid 2px;
    outline-offset: -2px;
    color: var(--body-color);
    box-shadow: 8px 13.856px 30px 0 rgba(132,137,154,.1)
}

.footer-social.style2 a:hover {
    background-color: var(--theme-color);
    color: #fff;
    outline-color: transparent
}

.footer-newsletter input {
    background-color: transparent;
    border-radius: 5px 0 0 5px;
    border: 1px solid #14284f;
    height: 55px;
    color: #fff;
    flex: 1
}

.footer-newsletter input::-moz-placeholder {
    color: #fff
}

.footer-newsletter input::placeholder {
    color: #fff
}

.footer-newsletter .vs-btn {
    border-radius: 0 5px 5px 0
}

.footer-schedule table {
    border: none;
    margin: -.3em 0 0
}

.footer-schedule td,.footer-schedule th {
    padding: 0 0 10px;
    color: var(--body-color);
    border: none;
    font-weight: 400
}

.footer-number1 {
    font-size: 30px;
    font-weight: 700;
    color: var(--body-color);
    margin-bottom: 25px;
    display: block;
    width: -moz-max-content;
    width: max-content
}

.footer-address1,.footer-mail1 {
    padding-left: 25px;
    position: relative
}

.footer-address1>i:first-child,.footer-mail1>i:first-child {
    position: absolute;
    left: 0;
    top: 4px
}

.footer-address1 {
    max-width: 250px
}

.footer-mail1 {
    color: var(--body-color);
    text-decoration: underline
}

.footer-mail1 i:first-child {
    top: 2px
}

.footer-info-list {
    margin: 35px 0 22px
}

.footer-info-list .info {
    position: relative;
    margin-bottom: 21px;
    padding-left: 30px;
    max-width: 250px
}

.footer-info-list .info i:first-child {
    position: absolute;
    left: 0;
    top: 4px;
    color: var(--theme-color)
}

.newsletter-form2 .form_text {
    margin: -.3em 0 22px;
    display: block;
    max-width: 300px
}

.newsletter-form2 input {
    background-color: #ebecf1;
    margin-bottom: 15px;
    border-radius: 7px
}

@media (min-width: 991px) and (max-width:1399px) {
    .footer-newsletter {
        display:block
    }

    .footer-newsletter input {
        border-radius: 5px;
        margin-bottom: 20px
    }

    .footer-newsletter .vs-btn {
        border-radius: 5px
    }
}

.footer-menu>ul {
    display: flex;
    align-items: center;
    list-style: none;
    justify-content: center;
    padding: 0;
    margin: 0 0 40px
}

.footer-menu a {
    font-weight: 400;
    color: var(--white-color);
    padding: 15px 51px;
    display: inline-block;
    border: 1px solid rgba(216,221,225,.2);
    border-right: 0
}

@media (max-width: 1199px) {
    .widget__content {
        padding:10px
    }

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

    .widget_title {
        margin-bottom: 25px
    }

    .recent-post .post-title {
        font-size: 14px;
        line-height: 22px
    }

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

    .widget-workhours li {
        padding: 14.5px 20px;
        font-size: 14px
    }

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

    .footer-widget .widget_title {
        font-size: 26px
    }

    .footer-number {
        padding: 27px 0 0;
        margin: 17px 0 0
    }

    .footer-info {
        display: block;
        text-align: center
    }

    .footer-info_icon {
        margin: 0 0 20px
    }

    .footer-info_group {
        padding: 0;
        border: none
    }

    .footer-menu a {
        padding: 15px 30px
    }
}

.footer-menu>ul>li:last-child a {
    border-right: 1px solid rgba(216,221,225,.2)
}

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

.vs-header.header-layout1,.vs-header.header-layout2,.vs-header.header-layout3 {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999
}

.vs-header__top-style1,.vs-header__top-style3 {
    background-color: var(--theme-color);
    padding: 10px 0;
    min-height: 46px;
    position: relative;
    z-index: 99;
    display: flex;
    align-items: center;
    transition: .3s ease-in-out
}

.vs-header__logo-style2,.vs-header__right {
    align-items: center;
    margin-left: 0;
    position: relative;
    display: flex;
    min-height: 90px
}

.vs-header__top-style2 {
    padding: 12px 0
}

.vs-header__top-style3 {
    background-color: rgba(255,255,255,.1)
}

.header-dropdown.style-white>.dropdown-toggle,.header-social a:hover,.header-social.style-white .social-title,.header-social.style-white a,.login-tab a.active,.login-tab a:hover,.vs-header__top-style3 .header-text {
    color: #fff
}

.vs-header__top-style3 .style-white a:hover {
    color: var(--theme-color)!important
}

.blog-meta a:hover,.blog-title a:hover,.breadcumb-menu a:hover,.header-dropdown ul.dropdown-menu a:hover,.header-dropdown>.dropdown-toggle:hover,.header-info_link a:hover,.header-links a:hover,.header-social.style2 a:hover,.main-menu a:hover,.post-pagi-box .post-pagi-control:hover,.post-pagi-box .post-pagi-title a:hover,.post-pagi-box>a:hover,.vs-header__call i,.vs-header__call.style2:hover,.vs-header__top-style3 a.header-text:hover {
    color: #f18124;
}

.vs-header__logo-style2 {
    padding-left: 0
}

@media (max-width: 1500px) {
    .vs-header__logo-style2 {
        margin-left:0;
        padding: 0 15px;
        clip-path: none;
        background-color: var(--title-color)
    }
}

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

    .tagcloud a,.wp-block-tag-cloud a {
        padding: 10.5px 18px
    }

    .footer-logo {
        text-align: center
    }

    .footer-text {
        max-width: 100%
    }

    .footer-widget .widget_title {
        font-size: 22px
    }

    .footer-layout1 .footer-widget.widget_archive a,.footer-layout1 .footer-widget.widget_categories a,.footer-layout1 .footer-widget.widget_meta a,.footer-layout1 .footer-widget.widget_nav_menu a,.footer-layout1 .footer-widget.widget_pages a {
        margin-left: auto;
        margin-right: auto
    }

    .footer-menu>ul {
        flex-wrap: wrap;
        border: 0
    }

    .footer-menu {
        display: none
    }

    .vs-header__logo-style2 {
        margin-left: 0;
        justify-content: space-between;
        padding: 0 15px
    }

    .vs-header .header-logo {
        padding: 15px 0
    }
}

.vs-header__right {
    margin-right: 0;
    gap: 0;
    z-index: 1
}

.vs-header__right__actions {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap
}

.ml-10,.vs-header__right__actions .vs-btn {
    margin-left: 10px
}

.vs-header__right::after,.vs-header__right::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    z-index: -1;
    clip-path: polygon(2% 0%,100% 0,100% 100%,0% 100%);
    background-color: var(--white-color);
    transition: .3s ease-in-out
}

.vs-header__call {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    color: var(--title-color);
    font-weight: 500
}

.vs-header.header-layout3 {
    background-color: rgba(0,0,0,.2)
}

.vs-header.header-layout3 .vs-sticky-header {
    border-bottom: transparent
}

.vs-header.header-layout3 .header-right {
    display: inline-block;
    margin-left: auto;
    padding-bottom: 30px;
    border-bottom: 1px solid #686868
}

.vs-sticky-header {
    border-bottom: 1px solid rgba(255,255,255,.3);
    transition: .3s ease-in-out
}

.vs-sticky-header.sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1000;
    background-color: var(--title-color);
    transition: .3s ease-in-out
}

.vs-sticky-header.sticky .header-logo {
    transform: translateY(0);
    transition: .3s ease-in-out
}

.vs-sticky-header.sticky.stickyon {
    transform: translateY(-67px);
    opacity: 0;
    visibility: hidden;
    transition: .3s ease-in-out
}

.vs-sticky-header.sticky.stickyon.sticky-hold {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition: .3s ease-in-out
}

#sticky-placeholder {
    height: 0
}

.main-menu>ul,.navbar-wrap,.question-form .rating-select,.review-form .rating-select {
    display: flex;
    align-items: center
}

.header-layout2 .vs-sticky-header {
    border-bottom: 0
}

.header-layout2 .sticky {
    background-color: transparent;
    box-shadow: none;
    border-bottom: 0
}

.header-layout2 .sticky.sticky-hold .vs-header__right::after,.header-layout2 .sticky.sticky-hold .vs-header__right::before,.main-menu>ul>li:first-child a {
    opacity: 1
}

.header-layout2 .navbar-wrap {
    min-height: 90px;
    height: auto;
    position: relative
}

.header-layout2 .navbar-wrap::after,.header-layout2 .navbar-wrap::before {
    position: absolute;
    content: "";
    width: 50%;
    height: 100%;
    z-index: -1;
    background-color: var(--white-color);
    transition: .3s ease-in-out;
    right: 0
}

.header-layout2 .navbar-wrap::after {
    background-color: var(--title-color);
    left: 0
}

.main-menu a {
    display: block;
    position: relative;
    font-weight: 600;
    font-size: 16px;
    color: #01000f
}

.breadcumb-menu a,.footer-copyright a:hover,.footer-copyright.style2 a:hover,.main-menu>ul>li>a,a.header-text:hover {
    color: var(--white-color)
}

.main-menu>ul>li>a {
    padding: 27px 30px;
    display: inline-flex;
    align-items: center;
    border-left: 1px solid rgba(255,255,255,.3);
    font-weight: 400
}

.main-menu>ul>li>a::before {
    content: "";
    position: absolute;
    bottom: 0;
    width: 0%;
    right: 0;
    height: 1px;
    background-color: var(--theme-color);
    transition: .3s ease-in-out
}

.main-menu>ul>li>a .new-label {
    position: absolute;
    top: -10px;
    right: -27px;
    font-size: 11px;
    border-radius: 3px
}

.main-menu>ul>li>a:hover::before {
    width: 100%;
    left: 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: "+";
    position: relative;
    font-family: var(--icon-font);
    margin-left: 1px;
    font-size: 13px;
    margin-right: -3px
}

.main-menu ul li:last-child a {
    padding-right: 0
}

.header-social a:first-child,.main-menu ul li:first-child,.vs-pagination li:first-child {
    margin-left: 0
}

.main-menu ul li:hover ul.mega-menu,.main-menu ul li:hover>ul.sub-menu {
    visibility: visible;
    opacity: 1;
    margin-top: 0;
    z-index: 9
}

.main-menu ul.mega-menu,.main-menu ul.sub-menu {
    position: absolute;
    text-align: left;
    top: 100%;
    background-color: #fff;
    box-shadow: 0 5px 10px 0 rgba(0,0,0,.1);
    visibility: hidden;
    min-width: 190px;
    width: -moz-max-content;
    width: max-content;
    padding: 7px;
    left: -14px;
    margin-top: 50px;
    opacity: 0;
    z-index: -1;
    border-bottom: 3px solid var(--theme-color);
    box-shadow: 0 10px 60px 0 rgba(0,0,0,.09),0 3px 0 0 rgba(231,13,60,.004);
    transform-origin: top center;
    transition: margin-top .4s ease-in-out,visibility .4s ease-in-out,opacity .4s ease-in-out,z-index
}

.footer-layout1,.login-tab {
    z-index: 1;
    position: relative
}

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

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

.main-menu ul.sub-menu:before {
    content: "";
    position: absolute;
    left: 34.5px;
    top: 30px;
    width: 1px;
    background-color: #ededed;
    height: calc(100% - 60px);
    opacity: 0
}

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

.main-menu ul.sub-menu li.menu-item-has-children>a:after {
    content: "\f105";
    float: right;
    top: 3px
}

.main-menu ul.sub-menu li a {
    position: relative;
    padding-left: 21px
}

.main-menu ul.sub-menu li a:before {
    content: "\f111";
    position: absolute;
    top: 9px;
    left: 0;
    font-family: var(--icon-font);
    width: 11px;
    height: 11px;
    text-align: center;
    border-radius: 50%;
    display: inline-block;
    font-size: .2em;
    line-height: 11.5px;
    color: var(--theme-color);
    font-weight: 700;
    background-color: #fff;
    box-shadow: inset 0 2px 4px 0 rgba(173,136,88,.4)
}

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

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

.main-menu .mega-menu-wrap {
    position: static
}

.main-menu ul.mega-menu {
    display: flex;
    justify-content: space-between;
    text-align: left;
    width: 100%;
    max-width: var(--main-container);
    padding: 20px 15px 23px;
    left: 50%;
    transform: translateX(-50%)
}

.main-menu ul.mega-menu li {
    display: block;
    width: 100%;
    padding: 0 15px
}

.main-menu ul.mega-menu li li {
    padding: 4px 0
}

.main-menu ul.mega-menu>li>a {
    display: block;
    padding: 0 0 15px;
    margin-bottom: 10px;
    text-transform: capitalize;
    letter-spacing: 1px;
    font-weight: 700;
    color: #01000f;
    border-color: var(--theme-color)
}

.main-menu ul.mega-menu>li>a::after,.main-menu ul.mega-menu>li>a::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 15px;
    height: 1px;
    background-color: var(--theme-color)
}

.main-menu ul.mega-menu>li>a::after {
    width: calc(100% - 20px);
    left: 20px
}

.main-menu ul.mega-menu>li>ul>li>a:before {
    content: "\f105";
    font-family: var(--icon-font);
    font-weight: 400;
    margin: 0 10px 0 0
}

.menu-style2 {
    padding: 0 40px;
    flex-grow: 1
}

.menu-style2>ul>li>a {
    padding: 32px 20px;
    border: none;
    color: var(--title-color)
}

.menu-style2 ul.mega-menu {
    left: 0;
    transform: translateX(0)
}

.choose-tab .nav-link:first-child,.menu-style3>ul>li>a {
    border-left: 0
}

.header-text {
    margin: 0;
    color: #01000f;
    display: flex;
    align-items: center
}

.header-info {
    display: flex;
    align-items: center;
    padding-top: 28px;
    padding-bottom: 28px;
    margin-left: 40px;
    padding-left: 40px;
    border-left: 1px solid #e7ebf3
}

.header-info:nth-child(2) {
    margin-left: 0;
    padding-left: 0;
    border-left: none
}

.header-info_icon {
    color: var(--theme-color);
    font-size: 24px;
    margin-right: 20px
}

.header-info_label {
    font-size: 14px;
    color: var(--body-color);
    display: block;
    margin-bottom: 2px
}

.header-info_link {
    color: #01000f;
    font-size: 20px;
    font-weight: 600;
    margin: 0
}

.header-search {
    display: flex;
    width: 340px;
    max-width: 100%
}

.header-search input {
    flex: 1;
    border: none;
    padding: 0 20px;
    height: 35px;
    width: 100%;
    border-radius: 4px;
    transition: .4s
}

.header-search button {
    border: none;
    background-color: var(--theme-color);
    color: #fff;
    font-size: 13px;
    width: 35px;
    height: 35px;
    border-radius: 4px
}

.header-search input:focus {
    padding: 0 20px;
    background-color: var(--smoke-color)
}

.header-links li {
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
    color: #01000f;
    padding: 0 30px 0 0;
    margin: 0 26px 0 0;
    border-right: 1px solid #cad4f1;
    line-height: 23px
}

.header-links li:last-child {
    margin-right: 0;
    padding-right: 0;
    border-right: none
}

.blog-single .blog-date i,.header-links i {
    color: var(--theme-color);
    margin: 0 10px 0 0
}

.header-social .social-title,.header-social a {
    display: inline-block;
    color: #01000f
}

.header-links.style-white i,.header-links.style-white li {
    color: #fff;
    border-color: #558eff
}

.header-social a {
    margin-left: 15px;
    text-transform: uppercase;
    font-weight: 500
}

.header-box__title,.login-tab a {
    font-weight: 600;
    font-family: var(--title-font)
}

.header-btns {
    display: flex;
    flex-wrap: wrap;
    gap: 20px
}

.header-box {
    border: 10px solid var(--theme-color);
    background-color: #fff;
    padding: 20px
}

.header-box__icon {
    border-radius: 5px;
    margin: 0 15px 0 0;
    font-size: 18px;
    width: 43px;
    height: 43px;
    line-height: 43px;
    text-align: center;
    display: inline-block;
    background-color: var(--theme-color);
    color: #fff
}

.header-box__title {
    display: inline-block;
    color: #01000f
}

.header-box__number {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    font-family: var(--title-font);
    font-size: 22px;
    font-weight: 700;
    color: var(--theme-color);
    margin: 15px 0 0
}

.header-dropdown>.dropdown-toggle i {
    margin: 0 10px 0 0
}

.header-dropdown>.dropdown-toggle:after {
    content: "\f107";
    font-family: var(--icon-font);
    border: none;
    vertical-align: middle;
    position: relative;
    top: -1px;
    margin-left: 5px
}

.header-dropdown ul.dropdown-menu {
    padding: 10px 15px;
    border: none;
    box-shadow: 0 0 15px 0 rgba(0,0,0,.07);
    margin: 0;
    margin-left: -15px!important;
    margin-top: 15px!important;
    width: -moz-max-content;
    width: max-content;
    min-width: auto;
    position: relative;
    z-index: 1
}

.header-dropdown ul.dropdown-menu a {
    display: block;
    margin: 0;
    width: -moz-max-content;
    width: max-content;
    padding: 2px 10px;
    color: #01000f;
    font-weight: 400;
    font-size: 14px
}

.header-dropdown ul.dropdown-menu a:first-child {
    margin-top: 0;
    padding-top: 0
}

.header-dropdown ul.dropdown-menu a:last-child,.header-dropdown ul.dropdown-menu a:last-of-type {
    padding-bottom: 0;
    margin-bottom: 0
}

.header-dropdown ul.dropdown-menu:before {
    content: "";
    position: absolute;
    left: 47px;
    top: -7px;
    width: 14px;
    height: 14px;
    background-color: #fff;
    z-index: -1;
    transform: rotate(45deg);
    border-top: 1px solid #ededed;
    border-left: 1px solid #ededed
}

.header-dropdown.style-white>.dropdown-toggle:hover {
    text-decoration: underline;
    color: rgba(255,255,255,.7)
}

.login-tab {
    display: flex;
    border-radius: 9999px
}

.login-tab:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    border-radius: inherit;
    border: 2px solid var(--theme-color);
    z-index: -1
}

.login-tab .indicator,.login-tab a {
    display: inline-block;
    border-radius: inherit
}

.login-tab a {
    color: var(--theme-color);
    background-color: transparent;
    text-transform: capitalize;
    font-size: 18px;
    padding: 18.5px 37px;
    line-height: 1
}

.login-tab .indicator {
    position: absolute;
    left: 0;
    top: 0;
    background-color: var(--theme-color);
    z-index: -1;
    transition: .4s
}

.footer-layout1 .overlay,.footer-layout1 .overlay.style2 {
    background-color: var(--bg-color2)
}

.footer-copyright {
    margin-bottom: 0;
    text-align: center;
    background-color: rgba(50,50,50,.3);
    padding: 22px 15px;
    color: var(--white-color)
}

.footer-copyright.style2 a {
    color: var(--white-color);
    position: relative;
    font-weight: 700
}

.footer-copyright.style2 a::before {
    position: absolute;
    content: "";
    width: 0;
    left: auto;
    right: 0;
    height: 1px;
    background-color: var(--white-color);
    transition: .4s;
    bottom: 0
}

.footer-copyright.style2 a:hover::before {
    width: 100%;
    left: 0;
    right: auto
}

.footer-layout1 {
    padding: 0 0 22px
}

.footer-layout1 .overlay {
    opacity: 90%;
    z-index: -1
}

.widget-area {
    padding: 80px 0
}

.footer-layout2 {
    background: var(--title-color);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center
}

.footer-title {
    color: var(--white-color);
    font-size: 30px;
    font-weight: 400;
    padding: 0 0 15px;
    position: relative;
    margin: 0 0 25px
}

.footer-title::after,.footer-title::before {
    position: absolute;
    content: "";
    height: 1px;
    background-color: var(--theme-color);
    width: 71px;
    bottom: 0;
    left: 0
}

@media (max-width: 991px) {
    .header-layout2 .navbar-wrap {
        background-color:transparent
    }

    .footer-title {
        text-align: center
    }

    .footer-title::after,.footer-title::before {
        left: 50%;
        transform: translateX(-50%)
    }

    .footer-title::after {
        display: none
    }
}

.footer-title::after {
    width: 12px;
    left: 80px
}

.footer-menu2 ul {
    display: grid;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 12px
}

.footer-menu2 ul li a {
    color: var(--white-color);
    position: relative;
    padding-left: 20px;
    display: inline-block
}

.footer-menu2 ul li a::before {
    position: absolute;
    content: "\f105";
    font-family: var(--icon-font);
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    line-height: 1;
    font-size: 17px;
    display: inline-flex
}

.footer-menu2 ul li a:hover {
    color: var(--theme-color);
    transform: translateX(10px)
}

.sidebar-gallery {
    display: grid;
    gap: 10px;
    max-width: 269px
}

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

.sidebar-gallery .gallery-thumb img {
    transition: .4s;
    width: 100%;
    transform: scale(1)
}

.sidebar-gallery .gallery-thumb:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: var(--theme-color);
    z-index: 1;
    opacity: 0;
    visibility: hidden;
    transition: .4s
}

.sidebar-gallery .gallery-thumb .gal-btn {
    position: absolute;
    left: 50%;
    top: 50%;
    width: var(--icon-size,35px);
    height: var(--icon-size,35px);
    margin: calc(var(--icon-size,35px)/ -2) 0 0 calc(var(--icon-size,35px)/ -2);
    text-align: center;
    font-size: 18px;
    color: var(--white-color);
    background-color: transparent;
    border-radius: 50%;
    transition: .4s;
    opacity: 0;
    visibility: hidden;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.sidebar-gallery .gallery-thumb .gal-btn:hover {
    transform: scale(1);
    background-color: var(--white-color);
    color: var(--theme-color)
}

.sidebar-gallery .gallery-thumb:hover:before {
    opacity: .8;
    visibility: visible
}

.sidebar-gallery .gallery-thumb:hover .gal-btn {
    opacity: 1;
    visibility: visible;
    transition-delay: 0.1s
}

.sidebar-gallery .gallery-thumb:hover img {
    transform: scale(1.12)
}

.breadcumb-menu {
    max-width: 100%;
    margin: 0;
    padding: 0;
    list-style-type: none;
    display: flex;
    align-items: center;
    justify-content: center
}

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

.breadcumb-menu li:after {
    content: "/";
    font-family: var(--title-font);
    position: relative;
    margin: 0 6px;
    color: var(--white-color)
}

.breadcumb-menu a,.breadcumb-menu li,.breadcumb-menu span {
    white-space: normal;
    word-break: break-word;
    font-weight: 400;
    font-size: 20px;
    color: var(--theme-color);
    text-transform: capitalize;
    transition: .3s ease-in-out;
    font-family: var(--title-font)
}

.breadcumb-title {
    color: var(--white-color);
    margin: -.3em 0 20px;
    max-width: 100%;
    width: 100%;
    font-size: 60px;
    line-height: 1.23
}

.breadcumb-wrapper {
    background-color: var(--title-color);
    position: relative;
    min-height: 514px;
    display: flex;
    align-items: flex-end;
    padding: 163px 0 120px
}

.breadcumb-wrapper .breadcumb-element {
    position: absolute;
    width: 100%;
    height: 81px;
    bottom: 0;
    z-index: 1;
    opacity: 50%
}

.breadcumb-wrapper .overlay {
    background-color: #01000f80;
    opacity: 85%
}

.breadcumb-wrapper .breadcumb-shape {
    position: absolute;
    bottom: 0
}

.vs-pagination li {
    display: inline-block;
    margin: 0 3px;
    list-style-type: none
}

.vs-pagination a,.vs-pagination span {
    display: inline-block;
    font-family: var(--body-font);
    color: #01000f;
    text-align: center;
    position: relative;
    border: none;
    width: 56px;
    height: 56px;
    line-height: 56px;
    font-weight: 400;
    font-size: 20px;
    z-index: 1;
    background-color: #f5f9ff;
    border-radius: 5px
}

.post-pagi-box>a,blockquote {
    font-family: var(--title-font);
    color: #01000f
}

.vs-pagination a.active,.vs-pagination a:hover,.vs-pagination span.active,.vs-pagination span:hover {
    color: #fff;
    background-color: var(--theme-color);
    box-shadow: none
}

.post-pagination {
    border-top: 1px solid var(--vs-border-color);
    border-bottom: 1px solid var(--vs-border-color);
    padding: 40px 0;
    margin: 40px 0 30px
}

.call-card,.post-pagi-box {
    display: flex;
    align-items: center;
    gap: 20px
}

.post-pagi-box>a {
    font-weight: 600;
    font-size: 16px
}

.post-pagi-box img {
    width: 80px;
    margin-right: 25px
}

.post-pagi-box.next {
    flex-direction: row-reverse;
    text-align: right
}

.post-pagi-box.next img {
    margin-right: 0;
    margin-left: 25px
}

.post-pagi-box .post-pagi-icon {
    width: 60px;
    height: 60px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--theme-color);
    color: var(--white-color);
    border-radius: 50%;
    font-size: 20px
}

.post-pagi-box .post-pagi-icon:hover {
    background-color: var(--title-color);
    color: var(--white-color)
}

.post-pagi-box .post-pagi-title {
    font-size: 20px;
    margin-bottom: 6px
}

.post-pagi-box .post-pagi-title a {
    color: var(--title-color);
    font-weight: 600
}

.post-pagi-box .post-pagi-control {
    color: var(--body-color);
    font-weight: 500
}

.pagi-icon {
    color: #f0f0f0;
    font-size: 40px
}

blockquote {
    display: block;
    position: relative;
    overflow: hidden;
    font-size: 24px;
    line-height: 30px;
    font-weight: 700;
    background-color: var(--quote-bg,#eff1f5);
    border-left: 4px solid var(--theme-color);
    padding: 43px 50px 42px 35px;
    margin: 35px 0
}

blockquote p {
    font-family: inherit;
    color: inherit;
    z-index: 3;
    width: 100%;
    margin-bottom: 0!important;
    line-height: 1.5;
    position: relative
}

.vs-blog--style2 .vs-blog__title--link:hover,blockquote cite,blockquote:before {
    color: var(--theme-color)
}

blockquote:before {
    content: "\f10e";
    font-family: var(--icon-font);
    position: absolute;
    right: 40px;
    bottom: 30px;
    font-size: 3.5rem;
    font-weight: 300;
    line-height: 1;
    opacity: .3
}

blockquote cite {
    font-family: var(--title-font);
    font-size: 18px;
    font-weight: 600;
    display: inline-block;
    position: relative;
    padding-left: 45px;
    line-height: 1;
    margin-top: 20px;
    font-style: normal
}

blockquote cite:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 8px;
    width: 30px;
    height: 2px;
    border-top: 2px solid var(--theme-color)
}

blockquote.vs-quote {
    padding: 30px 60px 30px 30px;
    display: flex;
    align-items: center;
    border: 0;
    background-color: var(--light-color1);
    gap: 25px;
    border-radius: 10px;
    margin: 26px 0
}

.blog-category a,.vs-blog--style2 .vs-blog__date,blockquote.vs-quote .quote-icon,blockquote.vs-quote:before {
    background-color: var(--theme-color)
}

blockquote.vs-quote .quote-icon {
    min-width: 68px;
    height: 68px;
    border-radius: 7px;
    display: flex;
    align-items: center;
    justify-content: center
}

blockquote.vs-quote p {
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0
}

blockquote.vs-quote:before {
    position: relative;
    bottom: 0;
    right: 0;
    font-weight: 300;
    opacity: 1;
    width: 80px;
    height: 80px;
    line-height: 80px;
    text-align: center;
    color: #fff;
    font-size: 34px;
    margin: 0 0 28px;
    border-radius: 50%;
    display: none
}

blockquote.vs-quote cite {
    padding: 0;
    margin-top: 23px
}

blockquote.vs-quote .quote-author {
    font-size: 14px;
    color: #74787c;
    font-family: var(--title-font);
    display: block;
    font-weight: 400
}

.blog-meta a,.blog-meta span {
    display: inline-block;
    margin-right: 16px;
    font-size: 16px;
    color: #8b919c
}

.blog-meta a i,.blog-meta span i {
    margin-right: 10px;
    color: var(--theme-color)
}

.blog-category {
    margin-bottom: -10px
}

.blog-category a {
    display: inline-block;
    color: #fff;
    padding: 4.5px 24.5px;
    margin-right: 5px;
    margin-bottom: 10px;
    border: 1px solid transparent
}

.blog-category a:hover {
    background-color: #fff;
    color: var(--body-color);
    border-color: var(--theme-color)
}

.vs-blog--style2 {
    border: 1px solid var(--vs-border-color);
    padding: 30px 0 0
}

.vs-blog--style2 .vs-blog__date {
    display: inline-block;
    color: var(--title-color);
    padding: 7px 18px;
    letter-spacing: .3px;
    font-weight: 500;
    margin: 0 0 0 -1px
}

.vs-blog--style3:hover,.vs-blog--style3:hover .vs-btn span {
    background-color: var(--title-color)
}

.vs-blog--style2 .vs-blog__title {
    font-size: 20px;
    padding: 20px 30px 15px;
    font-weight: 700;
    text-transform: capitalize;
    letter-spacing: .34px
}

@media (max-width: 1199px) {
    .main-menu>ul {
        justify-content:center
    }

    .main-menu>ul>li>a {
        padding: 20px 15px
    }

    .main-menu>ul>li:first-child a {
        border-left: 0
    }

    .main-menu ul li:last-child a {
        padding: 20px
    }

    blockquote.vs-quote {
        padding: 15px
    }

    .vs-blog--style2 .vs-blog__title {
        padding: 20px 20px 15px
    }
}

@media (max-width: 767px) {
    body {
        font-size:14px;
        line-height: 24px
    }

    p {
        line-height: 1.73
    }

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

    .h2,.sec-title.h1,.sec-title3.h1,h2 {
        font-size: 30px
    }

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

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

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

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

    .vs-search .search-grid-content {
        padding: 20px
    }

    .blog-single.format-link:before,.blog-single.format-quote:before,.blog-single.sticky:before,.blog-single.tag-sticky-2:before {
        font-size: 14px;
        padding: 8px 16px
    }

    .blog-single.format-link .blog-content,.blog-single.format-quote .blog-content,.blog-single.sticky .blog-content,.blog-single.tag-sticky-2 .blog-content {
        padding: 30px 15px
    }

    .grid-container {
        grid-template-columns: 1fr
    }

    .grid-item.large {
        grid-column: auto;
        grid-row: auto
    }

    .scroll-btn {
        --btn-size: 40px;
        --extra-shape: -4px;
        right: 15px;
        bottom: 50px
    }

    .scroll-btn.show {
        bottom: 15px
    }

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

    .scrollToTop {
        right: 20px
    }

    .scrollToTop.show {
        bottom: 20px
    }

    .sec-line-wrap {
        margin: 0 0 40px;
        gap: 10px
    }

    .sec-title4 {
        font-size: 30px;
        line-height: 1.4
    }

    .title-area {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
        text-align: center
    }

    .big-name {
        font-size: 75px;
        margin: -20px 0 -12px;
        letter-spacing: 0;
        text-align: center
    }

    .footer-widget.widget_archive a,.footer-widget.widget_categories a,.footer-widget.widget_meta a,.footer-widget.widget_nav_menu a,.footer-widget.widget_pages a,.widget_archive a,.widget_categories a,.widget_meta a,.widget_nav_menu a,.widget_pages a {
        font-size: 14px
    }

    .contact-widget .icon {
        --icon-size: 30px;
        --icon-font-size: 12px;
        top: 5px
    }

    .contact-widget .contact {
        padding: 0 0 0 45px;
        margin: 0 0 20px;
        border-bottom: none
    }

    .sidebar-gallery {
        gap: 10px
    }

    .footer-newsletter {
        display: block
    }

    .footer-newsletter input {
        border-radius: 5px;
        margin-bottom: 20px
    }

    .footer-newsletter .vs-btn {
        border-radius: 5px
    }

    .vs-header__logo-style2 {
        clip-path: none;
        padding: 0;
        margin: 0;
        justify-content: space-between
    }

    .vs-pagination a,.vs-pagination span {
        width: 35px;
        height: 35px;
        line-height: 35px;
        font-size: 14px;
        padding: 0 10px
    }

    .post-pagi-box>a {
        font-size: 12px
    }

    .post-pagi-box img {
        width: 40px;
        margin-right: 15px
    }

    .post-pagi-box.next img {
        margin-right: 0;
        margin-left: 15px
    }

    .vs-blog--style2 .vs-blog__title {
        padding: 20px 10px 15px;
        font-size: 18px
    }
}

.vs-blog--style2 .vs-blog__title--link {
    color: var(--title-color);
    display: inline-block
}

.comment-respond .vs-btn:hover,.vs-blog--style2 .vs-blog__link:hover,.vs-blog--style3 .vs-blog__title--link {
    color: var(--white-color)
}

.vs-blog--style2 .vs-blog__img--container {
    text-align: right;
    margin: -1px;
    position: relative;
    z-index: 1
}

.vs-blog--style2 .vs-blog__img--container::before {
    background-color: var(--title-color);
    position: absolute;
    content: "";
    display: block;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: .4s ease-in-out;
    transform: rotateX(-90deg);
    transform-origin: 50% 50%;
    opacity: 0;
    visibility: hidden
}

.vs-blog--style2 .vs-blog__img--link {
    display: inline-block;
    width: 100%
}

.vs-blog--style2 .vs-blog__img--overlay {
    position: absolute;
    transition: .2s ease-out;
    top: 50%;
    left: 20px;
    right: 20px;
    opacity: 0;
    visibility: hidden;
    z-index: 1;
    text-align: center
}

.project-style img,.project-style.style3 img,.service-img img,.team-style .team-img img,.vs-blog--style2 .vs-blog__img--main,.vs-comments-wrap .comment-avater img {
    width: 100%
}

.vs-blog--style2 .vs-blog__link {
    display: inline-flex;
    font-weight: 500;
    position: relative;
    align-items: center;
    gap: 21px
}

.vs-blog--style2 .vs-blog__link::before {
    content: "";
    width: 38px;
    height: 1px;
    background-color: var(--theme-color);
    display: inline-block
}

.vs-blog--style3 {
    padding: 40px;
    background-color: var(--bg-color4);
    transition: .3s ease-in-out
}

.vs-blog--style3 .vs-blog__title {
    font-size: clamp(1rem, .9rem + .5vw, 1.5rem);
    font-weight: 400;
    margin: 0 0 18px;
    padding: 0 0 16px;
    position: relative;
    text-align: center
}

.vs-blog--style3 .vs-blog__title::after {
    position: absolute;
    content: "";
    width: 114px;
    height: 1px;
    background-color: var(--white-color);
    bottom: 0;
    left: 50%;
    transform: translateX(-50%)
}

.vs-blog--style3 .vs-blog__date i,.vs-blog--style3 .vs-blog__title--link:hover {
    color: var(--theme-color)
}

.vs-blog--style3 .vs-blog__date {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    font-size: 14px;
    color: var(--white-color);
    margin: 0 0 20px
}

.vs-blog--style3 .vs-blog__img {
    margin: 0 0 25px;
    overflow: hidden
}

.vs-blog--style3 .vs-blog__img img {
    transform: scale3d(1.1,1.1,1.1);
    transition: .4s ease-in-out;
    width: 100%
}

.vs-blog--style3 .vs-blog__img--link {
    display: inline-block;
    width: 100%
}

.vs-blog--style3 .vs-blog__meta {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
    margin: 0 0 15px
}

.vs-blog--style3 .vs-blog__meta--link {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--vs-border-color)
}

.blog-author .author-degi,.blog-single .social-links a:hover,.vs-blog--style3 .vs-blog__meta--link i,.vs-blog--style3 .vs-blog__meta--link:hover {
    color: var(--theme-color)
}

.vs-blog--style3 .vs-blog__text {
    text-align: center;
    color: var(--vs-border-color);
    margin: 0 0 20px
}

.vs-blog--style3:hover .vs-btn {
    background-color: var(--theme-color);
    color: var(--title-color)
}

.blog-single .blog-social a,.blog-single .tagcloud.style2 a {
    background-color: var(--light-color1);
    color: var(--title-color)
}

.vs-blog--style3:hover .vs-blog__img img {
    transform: scale3d(1,1,1);
    transition: .4s ease-in-out
}

.vs-blog:hover .vs-blog__img--container::before {
    transform: rotateX(0);
    opacity: .9;
    visibility: visible
}

.vs-blog:hover .vs-blog__img--overlay {
    transform: translateY(-50%);
    opacity: 1;
    transition: .2s ease-out 0.2s;
    visibility: visible
}

.blog-inner-title {
    font-size: 30px;
    margin-top: 0;
    margin-bottom: 30px;
    font-weight: 400
}

.blog-single {
    position: relative;
    margin-bottom: 40px;
    padding: .1px 0
}

.blog-single .blog-meta {
    margin: -.2em 0 10px
}

.blog-single .blog-title {
    font-size: 30px;
    margin-bottom: 15px;
    font-weight: 400
}

.blog-single p {
    letter-spacing: .3px;
    margin: 0 0 20px
}

.blog-single .link-btn {
    width: -moz-fit-content;
    width: fit-content;
    display: block;
    margin-top: 26px
}

.blog-single .blog-date {
    color: var(--body-color)
}

.blog-single .share-links-title {
    font-size: 16px;
    font-weight: 600;
    color: #01000f;
    font-family: var(--title-font);
    margin: 0 15px 0 0;
    display: inline-block
}

.blog-single .share-links {
    margin: 16px 0 0
}

.blog-single .share-links .row {
    align-items: center;
    --bs-gutter-y: 15px
}

.blog-single .share-links .tagcloud a {
    padding: 0;
    border-radius: 0;
    color: var(--body-color)
}

.blog-single .share-links .tagcloud a:not(:last-child):after {
    content: ","
}

.blog-single .social-links {
    padding: 0;
    margin: 0;
    list-style-type: none;
    display: inline-block
}

.blog-single .social-links li {
    display: inline-block;
    margin-right: 13px
}

.blog-single .social-links a {
    line-height: 1;
    font-size: 16px;
    color: var(--body-color);
    text-align: center;
    display: block
}

.blog-single .blog-content {
    margin: var(--blog-space-y,40px) var(--blog-space-x,40px) var(--blog-space-y,40px) var(--blog-space-x,40px);
    padding: 0;
    position: relative;
    border-radius: 0 0 5px 5px
}

.blog-single .blog-audio {
    line-height: 1
}

.blog-single .blog-audio,.blog-single .blog-img {
    position: relative;
    margin-bottom: 30px
}

.blog-single .blog-audio img,.blog-single .blog-audio>*,.blog-single .blog-img img,.blog-single .blog-img>* {
    border-radius: 10px
}

.blog-single .blog-img .slick-arrow {
    --pos-x: 30px;
    border: none;
    width: 40px;
    height: 40px;
    line-height: 40px;
    background-color: var(--theme-color);
    color: #fff;
    border-radius: 5px
}

.blog-single .blog-img .play-btn {
    --icon-size: 80px;
    --icon-font-size: 24px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: calc(var(--icon-size)/ -2) 0 0 calc(var(--icon-size)/ -2)
}

.blog-single .blog-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 40px;
    padding-top: 20px;
    padding-bottom: 20px;
    border-top: 1px solid rgba(var(--theme-color-rgb),10%);
    border-bottom: 1px solid rgba(var(--theme-color-rgb),10%);
    flex-wrap: wrap;
    row-gap: 15px
}

.blog-single .blog-footer .blog-small-title {
    font-size: 20px;
    color: var(--title-color);
    font-weight: 400;
    font-family: var(--title-font)
}

.blog-single .tagcloud.style2 {
    gap: 15px
}

.blog-single .tagcloud.style2 a {
    border-radius: 0;
    padding: 13px 32px
}

.blog-single .tagcloud.style2 .list {
    padding-left: 0;
    margin-bottom: 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px
}

.blog-single .blog-social {
    display: flex;
    align-items: center;
    gap: 15px
}

.blog-single .blog-social a {
    --icon-size: 38px;
    width: var(--icon-size);
    height: var(--icon-size);
    min-width: var(--icon-size);
    min-height: var(--icon-size);
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%
}

.blog-single .blog-social .list {
    display: flex;
    align-items: center;
    gap: 10px
}

.blog-author {
    background-color: var(--smoke-color);
    padding: 30px;
    display: flex;
    align-items: center;
    margin: var(--blog-space-y,60px) 0
}

.blog-author .media-img {
    width: 189px;
    margin: 0 30px 0 0
}

.blog-author .author-name {
    font-size: 24px;
    font-weight: 700;
    margin: -.3em 0 0
}

.blog-author .author-text {
    margin: 0 0 -.1em
}

.blog-details .blog-single {
    background: 0 0;
    box-shadow: none;
    padding: 0
}

.blog-details .blog-img {
    margin: 0 0 40px
}

.blog-style1,.blog-style2 {
    background-color: var(--white-color);
    max-width: 364px;
    margin-bottom: 0
}

.blog-style1 .blog-meta,.blog-style2 .blog-meta {
    margin: 0 0 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    gap: 10px;
    font-size: 14px
}

.blog-style1 .blog-meta a,.blog-style1 .blog-meta span,.blog-style2 .blog-meta a,.blog-style2 .blog-meta span {
    color: #ffffff;
    margin-right: 0;
    font-size: 14px
}

.blog-style1 .blog-content,.blog-style2 .blog-content {
    padding: 10px 30px 0;
    text-align: center;
    background-color: #f8a92f;
}

.blog-style1 .blog-title,.blog-style2 .blog-title {
    font-size: 20px;
    font-weight: 400;
    margin: -2px 0 0;
    line-height: 1.4
}

.blog-style1 .blog-img {
    height: 200px;
    overflow: hidden
}

.blog-style1 .blog-img img {
    height: 200px;
    -o-object-fit: cover;
    object-fit: cover;
    transform: none;
    transition: .3s ease-in-out;
}

@media (max-width: 1399px) {
    .blog-style1 .blog-title,.blog-style2 .blog-title {
        padding:0 15%
    }

    .blog-style1 {
        max-width: 100%
    }

    .blog-style1 .blog-img img {
        width: 100%
    }
}

.blog-style1:hover .blog-img img,.blog-style2:hover .blog-img img {
    transform: scale(1.1);
    transition: .3s ease-in-out
}

.blog-style2 {
    max-width: 531px
}

.blog-style2 .blog-img img {
    transform: none;
    transition: .3s ease-in-out
}

.comment-respond {
    position: relative;
    margin: var(--blog-space-y,0) 0 var(--blog-space-y,0) 0
}

.comment-respond .form-title a#cancel-comment-reply-link {
    font-size: .7em;
    text-decoration: underline
}

.comment-respond .custom-checkbox.notice {
    margin-top: 10px;
    margin-bottom: 25px
}

.comment-respond .row {
    --bs-gutter-x: 30px
}

.comment-respond .form-control {
    background-color: var(--white-color);
    border: none;
    height: 58px;
    padding: 20px 30px 20px 20px;
    font-size: 12px;
    border-radius: 7px
}

.comment-respond .form-group>i {
    top: 20.5px
}

.comment-respond input[type=checkbox]~label:before {
    background-color: #fff;
    border: 1px solid #fff;
    border-radius: 3px
}

.comment-respond input[type=checkbox]:checked~label:before {
    background-color: var(--theme-color);
    border-color: transparent
}

.comment-respond .form-text {
    margin-bottom: 25px;
    font-size: 16px
}

.comment-respond .form-inner {
    background-color: var(--vs-border-color);
    padding: 30px 40px 40px;
    border-radius: 20px
}

.comment-respond .vs-btn {
    width: 100%;
    letter-spacing: .3px;
    font-weight: 600;
    color: var(--title-color);
    border-radius: 7px
}

.question-form .comment-respond,.review-form .comment-respond {
    margin: 0 0 20px
}

.question-form .form-control,.review-form .form-control {
    background-color: transparent;
    border: 1px solid #e4e4e4
}

.question-form .rating-select label,.review-form .rating-select label {
    font-weight: 500;
    color: #01000f
}

.vs-comments-wrap {
    margin: var(--blog-space-y,50px) 0 var(--blog-space-y,60px) 0
}

.vs-comments-wrap .comment-respond {
    margin: 30px 0
}

.vs-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
}

.vs-banner__subtitle,.vs-banner__title span {
    color: var(--theme-color)
}

.vs-comments-wrap blockquote {
    background-color: #eaf8f9
}

.vs-comments-wrap .vs-post-comment {
    display: flex;
    position: relative;
    padding: 0;
    margin: 20px 0 30px
}

.vs-comments-wrap ul.comment-list {
    list-style: none;
    margin: 0;
    padding: 0
}

.vs-comments-wrap .comment-avater {
    width: 80px;
    height: 80px;
    margin-right: 30px;
    overflow: hidden;
    background-color: var(--white-color);
    border-radius: 7px
}

.form-style1 .vs-btn:hover span,.vs-banner__bg,.vs-banner__buttons .play-btn>i,.vs-banner__buttons .vs-btn:hover span,.vs-comments-wrap .replay-btn {
    background-color: var(--title-color)
}

.vs-comments-wrap .comment-content {
    flex: 1;
    position: relative
}

.vs-comments-wrap .comment-content .comment-header {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.vs-comments-wrap .commented-on {
    font-size: 16px;
    display: flex;
    font-weight: 400;
    align-items: center;
    color: var(--body-color);
    margin-bottom: 10px
}

.vs-comments-wrap .commented-on i {
    margin-right: 11px;
    font-size: 14px;
    color: var(--theme-color)
}

.vs-comments-wrap .name {
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: 400
}

.vs-comments-wrap .comment-top {
    display: flex;
    justify-content: space-between
}

.vs-comments-wrap .children {
    margin: 0 0 0 70px;
    padding: 0;
    list-style-type: none
}

.vs-comments-wrap .reply_and_edit {
    position: absolute;
    right: 0;
    top: 15px;
    line-height: 1
}

.vs-comments-wrap .replay-btn {
    font-weight: 500;
    font-size: 14px;
    display: inline-block;
    font-family: var(--body-font);
    color: var(--white-color);
    text-transform: uppercase;
    padding: 8px 20px;
    border-radius: 3px;
    line-height: 1
}

.about-marquee__track p,.counter-style .counter-title,.service-tab2 .nav-tabs .nav-link,.slick-status,.vs-banner__subtitle,.vs-feature__link,.vs-service__number {
    font-family: var(--title-font)
}

.vs-comments-wrap .replay-btn:hover {
    color: #01000f;
    background-color: var(--theme-color)
}

.vs-comments-wrap .star-rating {
    font-size: 12px;
    margin-bottom: 10px;
    position: absolute;
    top: 5px;
    right: 0;
    width: 80px
}

@media (max-width: 1199px) {
    .vs-blog--style3 {
        padding:15px
    }

    .blog-style1 .blog-title,.blog-style2 .blog-title {
        padding: 0
    }

    .vs-comments-wrap .comment-top,.vs-comments-wrap .vs-post-comment {
        display: block
    }

    .vs-comments-wrap .star-rating {
        position: relative;
        top: 0;
        right: 0
    }

    .vs-comments-wrap .comment-avater {
        margin-right: 0;
        margin-bottom: 20px
    }

    .vs-comments-wrap .children {
        margin-left: 40px
    }

    .vs-comments-wrap .reply_and_edit {
        position: relative;
        top: 0;
        margin: 15px 0 0
    }
}

.vs-banner {
    position: relative;
    z-index: 1
}

.vs-banner__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: -1;
    min-height: 910px
}

@media (max-width: 1199px) {
    .vs-banner__bg {
        min-height:790px
    }
}

@media (max-width: 991px) {
    .footer-menu2 ul {
        justify-content:center
    }

    .blog-style2,.sidebar-gallery {
        max-width: 100%
    }

    .breadcumb-title {
        font-size: 40px;
        max-width: 100%
    }

    .breadcumb-wrapper {
        padding-top: 135px;
        padding-bottom: 100px;
        min-height: 425px
    }

    .breadcumb-wrapper .breadcumb-shape {
        display: none
    }

    .breadcumb-content {
        display: block
    }

    .breadcumb-menu {
        margin-top: 15px
    }

    .post-pagi-box .post-pagi-title {
        font-size: 18px
    }

    .blog-single .blog-title {
        font-size: 26px
    }

    .blog-style2 .blog-img img {
        width: 100%;
        height: 524px;
        -o-object-fit: cover;
        object-fit: cover
    }

    .vs-banner__bg {
        min-height: 675px
    }
}

.vs-banner__overlay-img {
    position: absolute;
    right: 0;
    bottom: 0
}

.vs-banner__inner {
    padding: 253px 0 0
}

.vs-banner__subtitle {
    font-size: 20px;
    text-transform: uppercase;
    display: block;
    letter-spacing: 2px
}

.vs-banner__title {
    color: var(--white-color);
    text-transform: uppercase;
    letter-spacing: 4.5px;
    font-weight: 600;
    line-height: 1.47;
    margin: 0 0 27px
}

@media (max-width: 767px) {
    .blog-single {
        margin-bottom:20px
    }

    .vs-comments-wrap .children {
        margin-left: 20px
    }

    .vs-comments-wrap .name {
        font-size: 18px
    }

    .comment-respond .form-inner {
        padding: 30px 15px
    }

    .vs-banner__content {
        text-align: center
    }

    .vs-banner__bg {
        min-height: 90%
    }

    .vs-banner__title {
        letter-spacing: 3px
    }
}

@media (max-width: 575px) {
    .vs-banner__subtitle {
        letter-spacing:1px;
        font-size: 16px
    }

    .vs-banner__title {
        letter-spacing: 2px;
        font-size: 25px
    }
}

.service-content .tab-text,.vs-feature__cate,.vs-feature__text {
    letter-spacing: .3px
}

.vs-banner__title img {
    margin-top: -30px;
    border-radius: 100px
}

.vs-banner__buttons {
    display: flex;
    align-items: center;
    gap: 50px
}

.form-style1 .vs-btn::after,.form-style1 .vs-btn::before,.nav-link.active .service-card .service-icon,.service-card:hover .service-icon,.service-tab2 .tab-content,.vs-banner__buttons .play-btn::after,.vs-banner__buttons .play-btn::before,.vs-banner__buttons .vs-btn::after,.vs-banner__buttons .vs-btn::before {
    background-color: var(--white-color)
}

.service-card .service-title a,.vs-banner__buttons .vs-btn:hover {
    color: var(--title-color)
}

.vs-banner__buttons .play-btn>i {
    border: 2px solid var(--white-color);
    padding-left: 8px
}

.nav-link.active .service-card,.service-card:hover,.team-style:hover .team-img,.vs-banner__buttons .play-btn:hover::after,.vs-banner__buttons .play-btn:hover::before {
    background-color: var(--theme-color)
}

.vs-banner__buttons .play-btn:hover>i {
    border: 2px solid var(--theme-color)
}

.vs-banner__img {
    padding-top: 73px
}

.vs-banner--style2::after,.vs-banner--style2::before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}

.vs-banner--style2::before {
    background-color: rgba(255,180,0,.05);
    z-index: -2
}

.vs-banner--style2::after {
    background-color: rgba(1,0,15,.05);
    z-index: -1
}

.vs-banner--style2 .vs-banner__inner {
    padding: 140px 0 90px
}

.vs-banner--style2 .vs-banner__title {
    color: var(--title-color);
    margin: 0 0 15px
}

.vs-banner--style2 .vs-banner__img {
    padding-top: 0;
    position: relative;
    margin-bottom: 30px;
    display: inline-block
}

.vs-banner--style2 .vs-banner__img--style2 {
    margin: 0 -83px 0 0;
    padding: 70px 55px 0;
    position: relative;
    z-index: 1
}

@media (max-width: 1500px) {
    .vs-header__right {
        margin-right:0;
        gap: 10px;
        margin-left: 0
    }

    .header-layout2 .navbar-wrap::before,.vs-header__right::after,.vs-header__right::before {
        display: none
    }

    .header-layout2 .navbar-wrap::after {
        width: 100%
    }

    .menu-style2 {
        flex-grow: 1;
        padding: 0 15px
    }

    .menu-style2>ul>li>a {
        padding: 32px 10px;
        color: var(--white-color)
    }

    .vs-banner--style2 .vs-banner__img--style2 {
        margin: 0
    }
}

.vs-banner--style2 .vs-banner__img--style2 .vs-banner__img2 {
    height: 503px;
    width: 100%;
    position: absolute;
    z-index: -1;
    top: 0;
    background-color: var(--title-color);
    right: 0
}

.vs-banner--style2 .vs-banner__link {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%)
}

.vs-banner--style2 .vs-banner__link::after,.vs-banner--style2 .vs-banner__link::before {
    background-color: var(--theme-color);
    border: 1px solid rgba(var(--theme-color),30%)
}

.vs-banner--style2 .vs-banner__text {
    padding-right: 0;
    margin-bottom: 0
}

@media (max-width: 767px) {
    .vs-banner__title img {
        margin-top:15px
    }

    .vs-banner__buttons {
        flex-direction: column;
        gap: 20px
    }

    .vs-banner--style2 .vs-banner__img img {
        margin-bottom: 30px
    }

    .vs-banner--style2 .vs-banner__text {
        padding-right: 0;
        margin-bottom: 30px
    }
}

.vs-banner--style3 .vs-banner__inner {
    display: flex;
    align-items: center;
    padding-bottom: 182px;
    padding-top: 356px;
    min-height: 877px;
    position: relative;
    z-index: 1
}

.vs-banner--style3 .vs-banner__inner .overlay {
    background-color: var(--title-color);
    opacity: .4;
    z-index: -1
}

.vs-banner--style3 .vs-banner__settings {
    position: absolute;
    bottom: 30px;
    right: 0;
    left: auto;
    max-width: 500px
}

.mr-20,.vs-banner--style3 .vs-banner__settings .slick-slide {
    margin-right: 20px
}

@media (max-width: 991px) {
    .vs-banner__inner {
        padding:230px 0 0
    }

    .vs-banner--style3 .vs-banner__inner {
        padding-bottom: 182px;
        padding-top: 140px;
        min-height: 715px
    }

    .vs-banner--style3 .vs-banner__settings {
        left: 50%;
        transform: translateX(-50%)
    }

    .vs-banner--style3 .vs-banner__settings .slick-slide {
        margin-right: 0
    }
}

.vs-banner--style3 .vs-banner__tab-item {
    display: flex;
    align-items: center;
    background-color: rgba(255,255,255,.65);
    gap: 15px;
    padding: 10px;
    min-width: 210px;
    transition: .3s ease-in-out
}

.vs-banner--style3 .vs-banner__tab-item img {
    max-width: 65px
}

.vs-banner--style3 .vs-banner__tab-item h2 {
    font-size: 14px;
    margin-bottom: 0
}

.vs-banner--style3 .slick-slide.slick-current.slick-active .vs-banner__tab-item {
    background-color: #ffb400
}

.slick-status {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    color: var(--white-color);
    margin: 0 0 20px
}

.slick-status__active,.slick-status__total {
    transition: .3s ease-in-out;
    min-width: 14px
}

.slick-status .vs-custom-dots button {
    width: 37px;
    height: 5px;
    background-color: #fff;
    border: 0;
    padding: 0;
    transition: .3s ease-in-out
}

.slick-status .vs-custom-dots button.active {
    width: 175px;
    background-color: var(--theme-color)
}

.vs-feature {
    background-color: rgba(1,0,15,.2);
    padding: 40px;
    position: relative;
    transition: .3s ease-in-out;
    border-top: 2px solid var(--theme-color)
}

.vs-feature__cate {
    display: inline-block;
    color: var(--vs-border-color);
    text-transform: uppercase;
    margin: 0 0 2px
}

.vs-feature__cate:hover {
    color: var(--theme-color)
}

.vs-feature__title {
    font-size: 30px;
    font-weight: 400;
    margin: 0 0 25px
}

.service-card:hover .service-title a:hover,.vs-feature__title--link {
    color: var(--white-color)
}

.vs-feature:hover .vs-feature__title--link,.vs-feature__link,.vs-feature__title--link:hover {
    color: var(--theme-color)
}

.vs-feature__link {
    width: 50px;
    height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(255,255,255,.08);
    font-size: 30px;
    position: relative;
    z-index: 1;
    transition: .4s
}

.vs-feature__link::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: var(--theme-color);
    opacity: 0;
    border-radius: 50%;
    transform: scale(0);
    transform-origin: center center;
    visibility: hidden;
    transition: .4s;
    z-index: -1
}

.vs-feature__link:hover {
    color: var(--title-color);
    background-color: var(--theme-color)
}

.vs-feature__link:hover::before {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
    border-radius: 0;
    transform-origin: center center
}

.vs-feature__icon--container {
    position: absolute;
    right: 40px;
    bottom: 40px;
    z-index: 1
}

.vs-feature__icon--main {
    transition: .4s
}

.vs-feature__icon--hover {
    position: absolute;
    right: 0;
    bottom: 0;
    opacity: 0;
    transform: scale(0);
    visibility: hidden;
    transition: .4s
}

.vs-feature:hover {
    background-color: var(--title-color);
    transition: .4s
}

.vs-feature:hover .vs-feature__link {
    background-color: var(--theme-color);
    color: var(--title-color);
    transition: .4s
}

.vs-feature:hover .vs-feature__link:hover {
    background-color: var(--white-color);
    color: var(--title-color);
    transition: .4s
}

.number-card,.progress-box__bar,.service-card .service-icon,.service-layout .overlay {
    background-color: var(--theme-color)
}

.service-card,.service-card .service-icon,.service-tab2 .nav-tabs .nav-link::after,.team-style .team-img,.team-style .team-social a,.vs-service,.vs-service__icon,.vs-service__img img,.vs-service__link img {
    transition: .3s ease-in-out
}

.vs-feature:hover .vs-feature__icon--main {
    opacity: 0;
    visibility: hidden;
    transition: .4s
}

.vs-feature:hover .vs-feature__icon--hover {
    transform: scale(1);
    opacity: 1;
    visibility: visible;
    transition: .4s
}

.about-subtitle {
    font-size: 20px;
    font-weight: 400
}

.img-box1 .img1 {
    border-top-left-radius: 200px
}

.number-card {
    position: absolute;
    top: 0;
    text-align: center;
    max-width: 240px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0 20px;
    min-height: 250px;
    border: 14px solid var(--white-color);
    right: 40px;
    transform: translateY(-80px)
}

.about-row,.service-list2 {
    justify-content: space-between
}

.number-card .card-title {
    font-size: 60px;
    font-weight: 600;
    line-height: 1
}

.about-row {
    display: flex;
    margin-right: -100%;
    padding-right: 83%
}

@media (max-width: 991px) {
    .slick-status {
        justify-content:center
    }

    .about-row {
        margin-right: 0;
        padding-right: 0;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 30px;
        justify-content: center
    }
}

.about-col.about-col-1 {
    max-width: 324px
}

.about-col.about-col-2 {
    max-width: 313px
}

.about-col.about-col-3 {
    max-width: 190px
}

.our-rating {
    padding: 30px 20px;
    text-align: center
}

.our-rating h3 {
    font-size: 30px;
    margin: 0 0 20px;
    font-weight: 400
}

.about-marquee {
    margin-top: -86px;
    z-index: -1;
    position: relative
}

.about-marquee__track {
    display: flex;
    gap: 60px;
    width: -moz-max-content;
    width: max-content;
    white-space: nowrap;
    will-change: transform;
    animation: 32s linear infinite marquee
}

.about-marquee__track p {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    color: transparent;
    background-clip: text;
    -webkit-background-clip: text;
    font-size: 78px;
    line-height: 1.3;
    font-weight: 600;
    margin-bottom: 0;
    display: flex;
    align-items: center;
    gap: 20px
}

@keyframes marquee {
    from {
        transform: translateX(0)
    }

    to {
        transform: translateX(-50%)
    }
}

.progress-box {
    margin: 0 0 25px
}

.progress-box__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 17px
}

.service-card,.vs-service__header {
    align-items: center;
    position: relative
}

.progress-box__number,.progress-box__title {
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    font-family: var(--title-font);
    color: #000000;
    display: inline-block;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: .4px
}

.tab-title,.vs-service__title {
    line-height: 1.2;
    font-weight: 400
}

.progress-box__number,.vs-about__title span {
    color: var(--theme-color)
}

.progress-box__number {
    float: right
}

.vs-service__icon,.vs-service__title--link {
    color: var(--white-color)
}

.progress-box__progress {
    border: 1px solid var(--theme-color);
    height: 5px;
    border-radius: 0;
    border-top: 2px solid var(--theme-color)
}

.progress-box__bar {
    height: 100%;
    box-shadow: 0 10px 31px rgba(169,177,193,.17);
    border-radius: 5px
}

.vs-about__title {
    font-weight: 400;
    font-size: 30px;
    max-width: 75%;
    margin: 0 0 25px
}

.vs-about__desc {
    margin: 0 0 27px;
    max-width: 74%
}

.pb-30,.service-layout {
    padding-bottom: 30px
}

.service-layout .overlay {
    height: 530px;
    z-index: -1;
    top: auto;
    bottom: 0;
    opacity: 10%
}

.service-layout2 {
    background-color: var(--light-color1)
}

.service-card {
    display: flex;
    gap: 30px;
    padding: 35px 40px 35px 30px;
    z-index: 1;
    background-color: var(--white-color);
    border: 1px solid var(--theme-color)
}

@media (max-width: 1500px) {
    .vs-about__desc,.vs-about__title {
        max-width:100%
    }

    .service-card {
        padding: 20px
    }
}

.service-card .service-icon {
    flex: none;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center
}

.service-card .service-title {
    font-size: 17px;
    font-weight: 400;
    text-align: left;
    margin-bottom: 0
}

.service-tab .nav-tabs {
    border-bottom: 0;
    margin-bottom: 50px;
    row-gap: 30px
}

.service-tab .nav-item .nav-link {
    padding: 0;
    border: 1px solid transparent;
    border-radius: 0;
    margin-bottom: 0;
    background-color: transparent;
    border-top: 0;
    position: relative;
    width: 100%
}

.service-tab .nav-item .nav-link.active .service-card::before {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQyIiBoZWlnaHQ9IjE0MCIgdmlld0JveD0iMCAwIDI0MiAxNDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0wIDI2TDI0MiAwVjE0MEgwVjI2WiIgZmlsbD0iI0ZGQjQwMCIvPgo8L3N2Zz4K")
}

.tab-title {
    max-width: 60%;
    margin: -.25em 0 20px
}

@media (max-width: 1199px) {
    .service-card {
        gap:5px;
        padding: 10px
    }

    .service-card .service-title {
        font-size: 18px
    }

    .tab-title {
        max-width: 100%
    }
}

.service-list2 {
    display: flex;
    margin-bottom: -5px;
    padding-top: 40px;
    flex-wrap: wrap;
    gap: 10px
}

.service-tab2 .nav-tabs {
    justify-content: space-between;
    margin-bottom: 40px
}

.service-tab2 .nav-tabs .nav-link {
    background-color: transparent;
    padding: 20px 95px;
    border: 0;
    font-size: 20px;
    color: var(--title-color);
    position: relative
}

.vs-service.style2 .vs-service__title--link:hover,.vs-service.style2:hover .vs-service__icon,.vs-service:hover .vs-service__icon,.vs-service__title--link:hover {
    color: var(--theme-color)
}

@media (max-width: 991px) {
    .about-marquee {
        margin-top:0
    }

    .service-layout .overlay {
        height: 10%
    }

    .service-card {
        gap: 15px;
        padding: 15px
    }

    .service-tab .nav-tabs {
        row-gap: 15px
    }

    .service-tab2 .nav-tabs .nav-link {
        padding: 20px 50px
    }

    .team-style .team-img img {
        width: 100%
    }
}

.service-tab2 .nav-tabs .nav-link::after {
    position: absolute;
    content: "";
    width: 0%;
    height: 2px;
    background-color: var(--theme-color);
    right: 0;
    bottom: 0
}

.service-tab2 .nav-tabs .nav-link.active::after {
    width: 100%;
    left: 0;
    transition: .3s ease-in-out
}

.service-content {
    padding: 55px 45px 55px 60px
}

.service-content .tab-title {
    font-weight: 400;
    font-size: 30px;
    max-width: 100%
}

.vs-service {
    border: 1px solid var(--body-color);
    padding: 30px;
    margin: 0 0 30px
}

.vs-service__header {
    display: flex;
    justify-content: space-between;
    padding: 0 0 25px;
    margin-bottom: 20px
}

.vs-service__header::after,.vs-service__header::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    background-color: var(--body-color);
    bottom: 0;
    left: 0
}

.vs-service__header::before {
    width: 61px;
    background-color: var(--theme-color);
    z-index: 1
}

.vs-service__title {
    font-size: 24px;
    margin: 0 0 20px
}

.vs-service__number {
    color: #686868;
    -webkit-text-stroke-color: #686868;
    font-size: 30px;
    line-height: 1
}

.vs-service__desc {
    margin: 0 0 20px;
    color: var(--white-color)
}

.vs-service__img {
    overflow: hidden;
    position: relative
}

.vs-service__img img {
    transform: scale(1.05);
    width: 100%
}

.vs-service__link {
    position: absolute;
    width: 50px;
    height: 50px;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    background-color: var(--theme-color);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden
}

.vs-service__link img {
    width: 20px;
    height: 20px
}

.vs-service:hover .vs-service__link {
    opacity: 1;
    visibility: visible
}

.vs-service:hover .vs-service__img img {
    transform: scale(1)
}

.vs-service.style2 {
    border-color: var(--vs-border-color)
}

.vs-service.style2 .vs-service__icon,.vs-service.style2 .vs-service__title,.vs-service.style2 .vs-service__title--link {
    color: var(--title-color)
}

.vs-service.style2 .vs-service__desc {
    color: var(--text-color)
}

.counter-style {
    background-color: var(--bg-color1);
    padding: 18px 25px;
    margin-bottom: 25px;
    min-height: 110px
}

.counter-style .counter-title {
    font-size: 30px;
    margin-bottom: 0;
    color: var(--white-color);
    font-weight: 400
}

.counter-style .counter-subtitle {
    color: var(--white-color);
    margin-bottom: 0
}

.team-style .team-img {
    position: relative;
    padding: 0 2px 2px 0;
    background-color: rgba(1,0,15,.33);
    margin-bottom: 30px
}

.team-style .team-img:first-of-type,.team-style:hover .team-img:first-of-type {
    transition-delay: 0.2s
}

.team-style .team-social {
    position: absolute;
    bottom: 27px;
    right: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px
}

.team-style .team-social a {
    width: 35px;
    height: 35px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--title-color);
    font-size: 14px;
    color: var(--white-color);
    transform: translateX(30px) rotate(180deg) scale(0);
    opacity: 0;
    visibility: hidden
}

.team-style .team-social a:first-of-type,.team-style:hover .team-social a:first-of-type {
    transition-delay: 20ms
}

.team-style .team-social a:nth-of-type(2),.team-style:hover .team-social a:nth-of-type(2) {
    transition-delay: 0.12s
}

.team-style .team-social a:nth-of-type(3),.team-style:hover .team-social a:nth-of-type(3) {
    transition-delay: 0.22s
}

.team-style .team-social a:nth-of-type(4),.team-style:hover .team-social a:nth-of-type(4) {
    transition-delay: 0.32s
}

.team-style .team-social a:hover {
    background-color: var(--theme-color);
    color: var(--title-color);
    transition-delay: 0s
}

.team-style .team-title {
    font-size: 30px;
    font-weight: 400;
    margin: -.38em 0 5px
}

.team-style .team-degi,.vs-card__title {
    color: var(--theme-color);
    margin-bottom: 0
}

.team-style:hover .team-social a {
    opacity: 1;
    visibility: visible;
    transform: translateX(0) rotate(0) scale(1);
    transition: .3s ease-in-out
}

.team-style:hover .team-social a:hover {
    transition-delay: 0s
}

.vs-card__title {
    font-size: 50px;
    font-weight: 500
}

.vs-card__subtitle,.vs-contact__details .vs-contact__value,.vs-feature-list__item {
    font-weight: 600;
    font-family: var(--title-font)
}

.vs-card__subtitle {
    font-size: 1.2rem;
    color: #0e121d
}

.vs-card__description {
    font-size: .95rem;
    color: #666;
    margin: .5rem 0 1rem;
    line-height: 1.6
}

.vs-card__features {
    display: flex;
    justify-content: space-between;
    max-width: 83%
}

.vs-card__contacts {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
}

.vs-card__socials {
    display: flex;
    gap: 1rem
}

.vs-card__socials .vs-social {
    width: 35px;
    height: 35px;
    border: 1px solid #ccc;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #0e121d;
    transition: .3s
}

.vs-contact,.vs-contact__icon {
    display: flex;
    align-items: center
}

.vs-card__socials .vs-social:hover {
    background-color: #f5a623;
    color: #fff;
    border-color: #f5a623
}

.vs-feature-list {
    list-style: none;
    padding: 0
}

.vs-feature-list__item {
    position: relative;
    padding-left: 1.2rem;
    margin-bottom: .8rem;
    font-size: 20px;
    color: var(--title-color)
}

.vs-feature-list__item::before {
    content: "•";
    color: #f5a623;
    position: absolute;
    left: 0
}

.vs-contact {
    gap: .8rem;
    width: 48%;
    margin-bottom: 2rem
}

.vs-contact__icon {
    font-size: 1.2rem;
    color: #f5a623;
    width: 40px;
    height: 40px;
    min-width: 40px;
    border: 1px solid;
    justify-content: center;
    border-radius: 50%
}

.vs-contact__details .vs-contact__label {
    font-size: .8rem;
    color: #999;
    margin-bottom: 2px
}

.vs-contact__details .vs-contact__value {
    margin-bottom: 0;
    color: var(--title-color);
    font-size: 20px
}

.accordion .accordion-button:hover,.accordion .accordion-button:hover::after,.accordion .accordion-button:not(.collapsed),.vs-contact__details .vs-contact__value:hover {
    color: var(--theme-color)
}

.progress-box.style2 .progress-box__title {
    color: var(--title-color);
    text-transform: capitalize;
    font-size: 20px;
    font-weight: 400
}

.progress-box.style2 .progress-box__progress {
    height: 10px;
    background-color: var(--title-color);
    border-radius: 6px;
    border: 0
}

.progress-box.style2 .progress-box__number {
    font-size: 20px;
    color: var(--title-color);
    font-weight: 400
}

.accordion .accordion-item {
    margin: 0 0 30px;
    box-shadow: 0 4px 30px rgba(0,0,0,.05);
    border-radius: 10px
}

.accordion .accordion-button {
    background-color: var(--white-color);
    border: none;
    padding: 13px 22px;
    font-size: 20px;
    font-weight: 400;
    font-family: var(--title-font);
    color: var(--title-color);
    text-align: left;
    border-radius: 0
}

.accordion .accordion-button:after {
    content: "\f055";
    font-family: var(--icon-font);
    font-weight: 600;
    color: #01000f;
    border: none;
    width: auto;
    height: auto;
    background-image: none;
    transition: .3s ease-in-out
}

.accordion .accordion-button:focus {
    box-shadow: none
}

.accordion .accordion-button:not(.collapsed):after {
    color: var(--theme-color);
    content: "\f056";
    font-weight: 600
}

.accordion .accordion-body {
    border-top: 1px solid #ebebeb;
    padding: 20px 40px 25px 25px;
    background-color: var(--white-color);
    color: var(--body-color);
    letter-spacing: .32px
}

.accordion .accordion-collapse {
    border: none
}

.faq-img-right {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.testi-item {
    text-align: center;
    padding: 0 30px 25px;
    position: relative;
    z-index: 1;
    margin-bottom: 30px
}

.testi-item .testi-eles {
    position: absolute;
    width: 100%;
    left: 0;
    top: auto;
    bottom: 0;
    z-index: -1;
    min-height: 87%
}

.testi-item .testi-eles::after,.testi-item .testi-eles::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 123px;
    border: 1px solid var(--vs-border-color);
    left: 0
}

.testi-item .testi-eles::before {
    top: 0;
    border-bottom: 0
}

.testi-item .testi-eles::after {
    top: auto;
    bottom: 0;
    border-top: 0
}

.testi-item .ele1,.testi-item .ele2 {
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

.testi-item .ele1 svg path,.testi-item .ele2 svg path {
    transition: .3s ease-in-out;
    stroke: var(--vs-border-color)
}

.testi-item .ele1 {
    left: -15px
}

.testi-item .ele2 {
    left: auto;
    right: -15px
}

.testi-item .testi-avatar {
    margin-bottom: 20px;
    display: inline-block;
    border: 1px solid var(--vs-border-color);
    transition: .3s ease-in-out
}

.testi-item .testi-rating {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px;
    font-size: 14px;
    color: var(--theme-color);
    gap: 4px
}

.testi-item .testi-name {
    font-size: 24px;
    margin: 0 0 2px;
    font-weight: 400
}

.testi-item .testi-position {
    display: block;
    font-size: 14px;
    color: var(--theme-color)
}

.testi-item .testi-text {
    margin: 0 0 10px;
    font-style: italic;
    padding: 0
}

.testi-carousel .slick-slide.slick-current.slick-active.slick-center .testi-item .testi-eles .ele1 svg path,.testi-carousel .slick-slide.slick-current.slick-active.slick-center .testi-item .testi-eles .ele2 svg path {
    transition: .3s ease-in-out;
    stroke: var(--theme-color)
}

@media (max-width: 991px) {
    .testi-item .testi-eles::after,.testi-item .testi-eles::before {
        height:80px
    }

    .testi-item .testi-text {
        padding: 0 20px
    }

    .vs-testi--layout1 .container-fluid {
        max-width: 720px
    }
}

.offcanvas-wrapper,.sidemenu-wrapper {
    position: fixed;
    z-index: 99999;
    right: 0;
    top: 0;
    height: 100%;
    width: 0;
    background-color: rgba(0,0,0,.75);
    opacity: 0;
    visibility: hidden;
    transition: .8s
}

.sidemenu-wrapper .closeButton {
    display: inline-block;
    border: none;
    color: #fff;
    background-color: var(--theme-color);
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 18px;
    padding: 0;
    position: absolute;
    top: 15px;
    right: 15px;
    border-radius: 50%;
    transform: rotate(0);
    transition: .4s
}

.sidemenu-wrapper .closeButton:hover {
    background-color: #01000f;
    color: #fff;
    transform: rotate(90deg)
}

.sidemenu-wrapper .sidemenu-content {
    background-color: #fff;
    width: 450px;
    margin-left: auto;
    padding: 40px;
    height: 100%;
    overflow: scroll;
    position: relative;
    right: -500px;
    cursor: auto;
    transition: right 1s
}

.sidemenu-wrapper .sidemenu-content::-webkit-scrollbar-track {
    box-shadow: inset 0 0 1px rgba(0,0,0,.1);
    background-color: #f5f5f5
}

.sidemenu-wrapper .sidemenu-content::-webkit-scrollbar {
    width: 2px;
    background-color: #f5f5f5
}

.sidemenu-wrapper .widget {
    padding: 0;
    border: none;
    margin: 0 0 40px;
    background-color: transparent
}

.sidemenu-wrapper .widget_title {
    border-bottom: 1px solid var(--vs-border-color);
    padding: 0 0 20px;
    margin: 0 0 25px
}

.offcanvas-wrapper.show,.sidemenu-wrapper.show {
    opacity: 1;
    visibility: visible;
    width: 100%;
    transition: .8s
}

.pricing__plan--btn .line2,.pricing__plan--style2.pricing__plan--two .pricing__plan--btn span.line1::after,.pricing__plan--style2.pricing__plan--two .pricing__plan--btn span.line1::before,.pricing__plan--style2.pricing__plan--two .pricing__plan--btn span.line2::after,.pricing__plan--style2.pricing__plan--two .pricing__plan--btn span.line2::before,.pricing__plan--style2.pricing__plan--two .pricing__plan--line1::after,.pricing__plan--style2.pricing__plan--two .pricing__plan--line1::before,.pricing__plan--style2.pricing__plan--two .pricing__plan--line2::after,.pricing__plan--style2.pricing__plan--two .pricing__plan--line2::before {
    opacity: 100%
}

.offcanvas-wrapper.show .sidemenu-content,.sidemenu-wrapper.show .sidemenu-content {
    right: 0;
    opacity: 1;
    visibility: visible
}

.offcanvas-wrapper .closeButton {
    display: inline-block;
    position: absolute;
    top: 10px;
    right: 20px;
    width: 45px;
    height: 45px;
    line-height: 45px;
    font-size: 20px;
    padding: 0;
    background-color: var(--theme-color);
    color: var(--white-color);
    border: none;
    border-radius: 50%;
    transform: rotate(0);
    transition: .4s;
    z-index: 33
}

.offcanvas-wrapper .closeButton i,.popup-search-box button.searchClose i {
    line-height: inherit
}

.offcanvas-wrapper .closeButton:hover {
    color: #fff;
    border-color: transparent;
    transform: rotate(90deg);
    background-color: var(--sec-color)
}

.offcanvas-wrapper .sidemenu-content {
    background-color: #fff;
    width: 450px;
    margin-left: auto;
    padding: 50px 30px;
    height: 100%;
    overflow: scroll;
    position: relative;
    right: -500px;
    cursor: auto;
    transition: right 1s
}

.offcanvas-wrapper .sidemenu-content::-webkit-scrollbar-track {
    box-shadow: inset 0 0 1px rgba(0,0,0,.1);
    background-color: #f5f5f5
}

.offcanvas-wrapper .sidemenu-content::-webkit-scrollbar {
    width: 2px;
    background-color: #f5f5f5
}

.offcanvas-wrapper .widget {
    padding: 0;
    border: none;
    background-color: transparent;
    margin-bottom: 50px
}

.pricing__plan {
    position: relative;
    z-index: 1;
    margin-bottom: 30px;
    padding: 35px 45px 45px
}

@media (max-width: 1199px) {
    .vs-service {
        padding:20px
    }

    .faq-img-right {
        display: none
    }

    .testi-item {
        margin-left: 15px;
        margin-right: 15px
    }

    .pricing__plan {
        padding: 20px 20px 25px
    }
}

@media (max-width: 767px) {
    .img-box1 .img1 {
        border-top-left-radius:0
    }

    .number-card {
        right: 0;
        transform: translateY(0);
        min-height: 145px;
        position: relative;
        margin: -30px auto 0
    }

    .number-card .card-title {
        font-size: 50px
    }

    .about-row {
        margin-right: 0;
        padding-right: 0;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 30px
    }

    .service-card {
        max-width: 100%;
        min-height: auto
    }

    .service-tab .nav-item,.service-tab .nav-item .nav-link,.vs-contact {
        width: 100%
    }

    .service-tab2 .nav-tabs .nav-link {
        padding: 10px
    }

    .service-content {
        padding: 15px
    }

    .service-content .tab-title {
        font-size: 22px
    }

    .vs-card__features {
        flex-direction: column;
        max-width: 100%
    }

    .testi-item {
        padding: 0 10px 25px
    }

    .vs-testi--layout1 .container-fluid {
        max-width: 540px
    }

    .pricing__plan {
        padding: 30px 20px 40px
    }
}

.pricing__plan--line1,.pricing__plan--line2 {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
    top: 0;
    left: 0
}

.pricing__plan--line1::after,.pricing__plan--line1::before,.pricing__plan--line2::after,.pricing__plan--line2::before {
    position: absolute;
    content: "";
    background-color: var(--vs-border-color)
}

.pricing__plan--price,.pricing__plan--price::after {
    background-color: var(--light-color1);
    border-radius: 50%
}

.pricing__plan--line1::after,.pricing__plan--line1::before {
    width: 95%;
    height: 1px;
    left: 50%;
    transform: translateX(-50%)
}

.pricing__plan--line1::after {
    bottom: 0
}

.pricing__plan--line2::after,.pricing__plan--line2::before {
    width: 1px;
    height: 92%;
    top: 50%;
    transform: translateY(-50%)
}

.pricing__plan--line2::after {
    left: auto;
    right: 0;
    width: 1px
}

.pricing__plan--header {
    text-align: center;
    padding: 0 20px
}

@media (max-width: 767px) {
    .pricing__plan--header {
        padding:0
    }

    .pricing__plan--one .pricing__plan--line2::after {
        opacity: 1
    }
}

.pricing__plan--title {
    font-size: 30px;
    font-weight: 400
}

.pricing__plan--price {
    --price-size: 150px;
    width: var(--price-size);
    height: var(--price-size);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 0 auto 35px;
    font-size: 48px;
    font-weight: 600;
    color: var(--title-color);
    line-height: 1.01;
    position: relative
}

.pricing__plan--price::after {
    position: absolute;
    content: "";
    width: 20px;
    height: 20px;
    right: -25px;
    bottom: 28px
}

.choose-tab .tab-content,.pricing__plan--btn,.pricing__plan--two .pricing__plan--line1,.pricing__plan--two .pricing__plan--line2,.project-style,.project-style2,.vs-newsletter {
    position: relative
}

.pricing__plan--duration {
    display: block;
    font-size: 16px;
    color: var(--body-color);
    font-weight: 400
}

.form-style1 .vs-btn:hover,.pricing__plan--two .pricing__plan--duration,.project-style__title_link {
    color: var(--title-color)
}

.pricing__plan--features {
    list-style: none;
    padding: 0;
    margin: 0 0 35px;
    display: grid;
    gap: 10px
}

.pricing__plan--feature {
    display: flex;
    align-items: center;
    gap: 10px;
    letter-spacing: .32px
}

.pricing__plan--btn {
    display: flex;
    width: 100%;
    background-color: transparent;
    z-index: 1;
    padding: 17px 30px
}

.pricing__plan--btn span {
    position: absolute;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: transparent
}

.pricing__plan--btn span::after,.pricing__plan--btn span::before {
    position: absolute;
    content: ""
}

.pricing__plan--btn .line1::after,.pricing__plan--btn .line1::before {
    width: 95%;
    height: 1px;
    background-color: var(--vs-border-color);
    left: 50%;
    transform: translateX(-50%);
    top: 0
}

.pricing__plan--btn .line1::before {
    top: auto;
    bottom: 0
}

.pricing__plan--btn .line2::after,.pricing__plan--btn .line2::before {
    width: 1px;
    height: 80%;
    background-color: var(--vs-border-color);
    top: 50%;
    left: 0;
    transform: translateY(-50%)
}

.pricing__plan--style2.pricing__plan--two .pricing__plan--btn::after,.pricing__plan--style2.pricing__plan--two .pricing__plan--btn::before,.pricing__plan--two .pricing__plan--btn span::after,.pricing__plan--two .pricing__plan--btn span::before,.pricing__plan--two .pricing__plan--line1::after,.pricing__plan--two .pricing__plan--line1::before,.pricing__plan--two .pricing__plan--line2::after,.pricing__plan--two .pricing__plan--line2::before,.pricing__plan--two .pricing__plan--price,.pricing__plan--two .pricing__plan--price::after {
    background-color: var(--theme-color)
}

.pricing__plan--btn .line2::before {
    left: auto;
    right: 0
}

.pricing__plan--one .pricing__plan--line2::after {
    opacity: 1
}

.pricing__plan--three .pricing__plan--line2::before {
    opacity: 1
}

@media (max-width: 767px) {
    .pricing__plan--three .pricing__plan--line2::before {
        opacity:1
    }
}

.pricing__plan--style2 .pricing__plan--btn span.line1::after,.pricing__plan--style2 .pricing__plan--btn span.line1::before,.pricing__plan--style2 .pricing__plan--btn span.line2::after,.pricing__plan--style2 .pricing__plan--btn span.line2::before,.pricing__plan--style2 .pricing__plan--line1::after,.pricing__plan--style2 .pricing__plan--line1::before,.pricing__plan--style2 .pricing__plan--line2::after,.pricing__plan--style2 .pricing__plan--line2::before {
    opacity: 20%
}

.pricing__plan--style2 .pricing__plan--title {
    color: var(--white-color)
}

.pricing__plan--style2 .pricing__plan--feature,.pricing__plan--style2 .pricing__plan--text {
    color: var(--vs-border-color)
}

.pricing__plan--style2 .pricing__plan--btn,.pricing__plan--style2 .pricing__plan--duration {
    color: var(--white-color)
}

.pricing__plan--style2 .pricing__plan--price {
    background-color: var(--bg-color4);
    color: var(--white-color)
}

.pricing__plan--style2 .pricing__plan--price::after {
    background-color: var(--bg-color4)
}

.pricing__plan--style2.pricing__plan--two .pricing__plan--price {
    border: 1px solid var(--theme-color)
}

.form-style1 .form-title {
    color: #fff;
    text-align: center;
    margin: 0 0 27px;
    padding: 0 0 17px;
    position: relative
}

.form-style1 .form-title:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    border-radius: 5px;
    background-color: #fff;
    opacity: .3
}

.form-style1 .vs-btn,.mt-10 {
    margin-top: 10px
}

.form-style1 input,.form-style1 textarea {
    height: 55px;
    background-color: transparent;
    font-size: 16px;
    font-family: var(--body-font);
    color: #d8dde1;
    border-radius: 0;
    border: 0;
    border-bottom: 1px solid rgba(255,255,255,.3);
    padding-left: 0
}

.form-style1 input::-moz-placeholder,.form-style1 textarea::-moz-placeholder {
    color: #d8dde1;
    -moz-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.form-style1 input::placeholder,.form-style1 textarea::placeholder {
    color: #d8dde1;
    transition: .3s ease-in-out
}

.form-style1 input:focus,.form-style1 textarea:focus {
    border-color: var(--theme-color);
    background-color: transparent
}

.form-style1 input:focus::-moz-placeholder,.form-style1 textarea:focus::-moz-placeholder {
    color: var(--white-color);
    opacity: 0;
    visibility: hidden;
    -moz-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.form-style1 input:focus::placeholder,.form-style1 textarea:focus::placeholder {
    color: var(--white-color);
    opacity: 0;
    visibility: hidden;
    transition: .3s ease-in-out
}

.form-style1 textarea {
    min-height: 100px;
    resize: none
}

.vs-newsletter {
    background: var(--white-color);
    border: 1px solid var(--theme-color);
    box-shadow: 0 4px 30px rgba(0,0,0,.06);
    padding: 90px 14%;
    margin-top: -224px;
    z-index: 1
}

.vs-newsletter .element,.vs-newsletter .element2 {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.vs-newsletter .element2 {
    right: 0;
    left: auto
}

.vs-newsletter .newsletter-form {
    display: flex;
    align-items: center;
    max-width: 545px;
    gap: 30px;
    justify-content: center;
    margin: 0 auto
}

.vs-newsletter .newsletter-form .form-control {
    min-width: 338px;
    min-height: 60px;
    border-color: var(--vs-border-color)
}

.newsletter-form1 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 0 40px;
    gap: 20px
}

.newsletter-form1 .form-control {
    flex: 0 0 30%;
    height: 60px;
    background-color: rgba(104,104,104,.66);
    border: 0;
    letter-spacing: .3px;
    color: var(--white-color);
    min-height: 60px
}

.newsletter-form1 .form-control::-moz-placeholder {
    color: var(--white-color)
}

.newsletter-form1 .form-control::placeholder {
    color: var(--white-color)
}

.newsletter-form1 .vs-btn {
    flex: none
}

.project-style {
    margin: 0 15px
}

.project-style::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    height: 0;
    background-image: linear-gradient(to top,var(--theme-color) 0,rgba(0,0,0,0) 100%);
    opacity: .8;
    transition: .4s;
    z-index: 1
}

.vs-map .gmap_canvas,.vs-map .gmap_iframe,.vs-map .mapouter {
    height: 753px!important
}

.project-style__content {
    position: absolute;
    top: 0;
    left: 0;
    max-width: 280px;
    background-color: var(--light-color1);
    padding: 30px;
    transform: translateX(-63px) skewX(2deg) scale(1.01);
    transform-origin: center center;
    opacity: 0;
    visibility: hidden;
    filter: blur(100px);
    transition: .3s ease-in-out;
    z-index: 9
}

.slick-slide.slick-current.slick-active .project-style__content {
    top: 30px;
    left: 30px;
    transform: translateX(0) skewX(0) scale(1);
    opacity: 1;
    visibility: visible;
    transition: .3s ease-in-out;
    filter: blur(0px)
}

.project-style2 .project-title a:hover,.project-style__title_link:hover {
    color: var(--theme-color)
}

.project-style.style3 {
    margin-bottom: 30px;
    padding: 0;
    margin-left: 0;
    margin-right: 0
}

.project-style.style3:hover .project-style__content {
    transform: translateX(0) skewX(0) scale(1);
    filter: blur(0);
    opacity: 1;
    visibility: visible;
    transition: .3s ease-in-out
}

.project-style:hover::before {
    height: 100%
}

.project-carousel .slick-slide {
    transition: .3s ease-in-out
}

.project-style2 .project-content {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 30px;
    background-color: rgba(0,0,0,.8);
    gap: 15px
}

.project-style2 .project-title {
    font-size: 30px;
    margin: 0 0 10px;
    font-weight: 400
}

.project-style2 .project-location:hover,.project-style2 .project-title a {
    color: var(--white-color)
}

.call-card .call-title:hover,.contact-box__icon,.contact-box__links:hover,.list-style ul li::before,.vs-map .gmap_canvas__credit:hover {
    color: var(--theme-color)
}

.project-style2 .project-location {
    display: flex;
    align-items: center;
    font-size: 12px;
    color: var(--theme-color);
    gap: 7px
}

.project-style2 span.project-number {
    letter-spacing: 12px;
    color: var(--vs-border-color);
    -webkit-text-stroke-color: var(--vs-border-color);
    font-size: 60px;
    font-family: var(--title-font);
    margin-right: -16px;
    display: inline-flex;
    line-height: 1
}

.project-widget {
    background-color: var(--light-color1);
    padding: 40px
}

.project-widget .widget-title {
    position: relative;
    font-size: 24px;
    font-weight: 700;
    line-height: 1em;
    margin: -.07em 0 20px;
    padding-bottom: 20px
}

.project-widget .widget-title::after,.project-widget .widget-title::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    background-color: var(--vs-border-color);
    border-radius: 20px;
    left: 0;
    bottom: 0
}

.project-widget .widget-title::after {
    background-color: var(--theme-color);
    width: 40px
}

.project-widget .widget-content {
    padding-bottom: 18px;
    border-bottom: 1px solid var(--vs-border-color);
    margin-bottom: 10px
}

.project-widget .widget-content:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: 0
}

.project-widget .widget-content span {
    font-size: 16px;
    color: var(--body-color);
    display: block;
    margin-bottom: 10px
}

.project-widget .widget-content h5 {
    margin-bottom: 0;
    font-size: 18px;
    line-height: 1
}

.icon-btn--project {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
    background-color: #fff
}

.icon-btn--project[data-slick-next=".project-carousel"] {
    right: -15%
}

.icon-btn--project[data-slick-prev=".project-carousel"] {
    left: -15%
}

.contact__man {
    position: absolute;
    bottom: 0;
    left: 16%
}

@media (max-width: 1399px) {
    .contact__man {
        left:10%
    }
}

.contact-box {
    display: flex;
    padding: 10px 100px;
    min-height: 90px
}

.contact-box-col {
    display: flex;
    align-items: center;
    border-top: 1px solid var(--vs-border-color);
    border-bottom: 1px solid var(--vs-border-color);
    border-right: 1px solid var(--vs-border-color)
}

.contact-box-col:last-child {
    border-right: none
}

.contact-box__icon {
    font-size: 24px;
    height: 100%;
    padding-top: 18px;
}

.contact-box__links,.contact-box__text,.list-style ul li {
    font-size: 20px;
    font-family: var(--title-font);
}

.contact-box .media-body,.pl-25 {
    padding-left: 25px;
    padding-top: 20px;
}

.contact-box__text {
    margin-bottom: 0;
    color: var(--title-color);
}

.contact-box__links {
    display: block;
    color: var(--title-color);
    margin-bottom: 5px
}

.contact-box__links:last-child {
    margin-bottom: 0
}

    /* ── Gallery page custom styles ── */
    .gallery-filter-wrap {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      justify-content: center;
      margin-bottom: 50px;
    }
    .gallery-filter-btn {
      background: transparent;
      border: 2px solid var(--theme-color, #f0a800);
      color: var(--title-color, #01000f);
      padding: 10px 28px;
      font-size: 14px;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 1px;
      cursor: pointer;
      transition: .3s ease;
      border-radius: 0;
    }
    .gallery-filter-btn:hover,
    .gallery-filter-btn.active {
      background: var(--theme-color, #f0a800);
      color: #fff;
    }

    /* Isotope grid */
    .gallery-grid {
      margin: 0 -10px;
    }
    .gallery-item {
      padding: 10px;
      width: 33.333%;
    }
    .gallery-item.wide {
      width: 66.666%;
    }
    @media (max-width: 991px) {
      .gallery-item { width: 50%; }
      .gallery-item.wide { width: 100%; }
    }
    @media (max-width: 575px) {
      .gallery-item { width: 100%; }
      .gallery-item.wide { width: 100%; }
    }

    /* Thumb card */
    .gallery-thumb {
      position: relative;
      overflow: hidden;
      display: block;
      background: #111;
    }
    .gallery-thumb img {
      width: 100%;
      height: 300px;
      object-fit: cover;
      display: block;
      transition: transform .5s ease, opacity .4s ease;
    }
    .gallery-item.wide .gallery-thumb img {
      height: 350px;
    }
    .gallery-thumb:hover img {
      transform: scale(1.07);
      opacity: .75;
    }

    /* Hover overlay */
    .gallery-thumb__overlay {
      position: absolute;
      inset: 0;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 8px;
      background: rgba(240, 168, 0, 0.82);
      opacity: 0;
      transition: opacity .35s ease;
    }
    .gallery-thumb:hover .gallery-thumb__overlay { opacity: 1; }
    .gallery-thumb__overlay .zoom-icon {
      width: 52px;
      height: 52px;
      border: 2px solid #fff;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #fff;
      font-size: 18px;
      transition: background .25s;
    }
    .gallery-thumb__overlay .zoom-icon:hover { background: rgba(255,255,255,.25); }
    .gallery-thumb__overlay .gallery-cat {
      font-size: 12px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 2px;
      color: #fff;
    }

    /* Album tabs */
    .album-tabs .nav-tabs {
      border-bottom: none;
      gap: 12px;
      justify-content: center;
      margin-bottom: 50px;
    }
    .album-tabs .nav-tabs .nav-link {
      border: 2px solid var(--theme-color, #f0a800);
      border-radius: 0;
      color: var(--title-color, #01000f);
      font-weight: 600;
      font-size: 14px;
      text-transform: uppercase;
      letter-spacing: 1px;
      padding: 10px 28px;
      background: transparent;
      transition: .3s;
    }
    .album-tabs .nav-tabs .nav-link.active,
    .album-tabs .nav-tabs .nav-link:hover {
      background: var(--theme-color, #f0a800);
      color: #fff;
      border-color: var(--theme-color, #f0a800);
    }

    /* Section heading divider line */
    .gallery-divider {
      width: 60px;
      height: 3px;
      background: var(--theme-color, #f0a800);
      margin: 16px auto 0;
    }

.vs-map .mapouter {
    filter: grayscale(0%);
    position: relative;
    text-align: right;
    width: 100%
}

.vs-map .gmap_canvas {
    overflow: hidden;
    background: 0 0!important;
    width: 100%;
    position: relative
}

.vs-map .gmap_canvas__credit {
    position: absolute;
    bottom: 0;
    left: 15%;
    color: var(--bg-color);
    text-transform: capitalize
}

.brand-style1 img {
    filter: opacity(.6);
    transition: .3s ease-in-out
}

.brand-style1:hover img {
    filter: opacity(1)
}

.list-style ul {
    padding: 0;
    margin-bottom: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(2,1fr);
    row-gap: 33px;
    max-width: 100%
}

.list-style ul li {
    padding-left: 43px;
    position: relative;
    display: inline-block;
    color: var(--title-color)
}

.list-style ul li::before {
    position: absolute;
    content: "";
    font-family: var(--icon-font);
    left: 0;
    font-weight: 600;
    font-size: 18px;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzMiIGhlaWdodD0iMzEiIHZpZXdCb3g9IjAgMCAzMyAzMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iMTUiIGN5PSIxNiIgcj0iMTQuNSIgc3Ryb2tlPSIjNjg2ODY4Ii8+CjxwYXRoIGQ9Ik0zMS43ODEyIDQuNzg1MTZDMzIuMzY3MiA1LjQ0OTIyIDMyLjM2NzIgNi4wOTM3NSAzMS43ODEyIDYuNzE4NzVMMTYuMzEyNSAyMi4xODc1QzE1LjY4NzUgMjIuNzczNCAxNS4wNDMgMjIuNzczNCAxNC4zNzg5IDIyLjE4NzVMNi40MTAxNiAxNC4yMTg4QzUuODYzMjggMTMuNTkzOCA1Ljg2MzI4IDEyLjk0OTIgNi40MTAxNiAxMi4yODUyQzcuMDc0MjIgMTEuNzM4MyA3LjczODI4IDExLjczODMgOC40MDIzNCAxMi4yODUyTDE1LjM3NSAxOS4yNTc4TDI5Ljg0NzcgNC43ODUxNkMzMC41MTE3IDQuMjM4MjggMzEuMTU2MiA0LjIzODI4IDMxLjc4MTIgNC43ODUxNloiIGZpbGw9IiMwMTAwMEYiLz4KPC9zdmc+Cg==");
    width: 33px;
    height: 31px;
    top: 50%;
    transform: translateY(-50%)
}

.list-style.style2 ul {
    row-gap: 11px
}

.list-style.style2 ul li {
    padding-left: 29px;
    font-family: var(--body-font);
    color: var(--body-color);
    font-size: 18px;
    font-weight: 500
}

.list-style.style2 ul li::before {
    background-image: none;
    content: "\f058";
    font-weight: 400;
    width: auto;
    height: auto;
    top: 5px;
    line-height: 1;
    transform: none
}

.list-style.style3 ul {
    grid-template-columns: repeat(1,1fr);
    row-gap: 20px
}

.ach-inner {
    display: flex;
    max-width: 834px;
    justify-content: space-between;
    padding: 25px;
    align-items: center;
    background-color: var(--bg-color1);
    min-height: 245px;
    margin-bottom: 30px
}

.bal-handle,.call-card .call-icon {
    background-color: var(--theme-color)
}

.afterLabel,.beforeLabel {
    margin: 0;
    transform: translateY(-50%)
}

.ach-inner .ach-content {
    flex: 0 0 380px
}

.call-card .call-content {
    display: flex;
    flex-direction: column;
    gap: 8px
}

.call-card .call-icon {
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 50px;
    border-radius: 50%;
    color: var(--title-color);
    font-size: 22px
}

.call-card .call-subtitle,.call-card .call-title {
    display: block;
    color: var(--white-color)
}

.call-card .call-title {
    font-size: 24px;
    font-family: var(--title-font)
}

.bf-icon-card {
    display: flex;
    align-items: center;
    gap: 20px;
    max-width: 95%
}

.bf-icon-card .bf-icon {
    min-width: 50px;
    min-height: 50px;
    width: 50px;
    height: 50px;
    background-color: var(--title-color);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
}

.bf-icon-card .bf-title {
    font-size: 20px;
    font-family: var(--title-font);
    color: var(--title-color);
    display: block;
    line-height: 30px
}

.bf-text {
    max-width: 90%
}

.bal-container {
    position: relative;
    width: 100%;
    height: 100%;
    cursor: grab;
    overflow: hidden;
    border-radius: 0
}

.bal-afterPosition,.bal-beforePosition {
    background: var(--theme-color);
    color: #fff;
    border-radius: 4px;
    padding: 5px 18px;
    font-weight: 600;
    pointer-events: none;
    font-family: var(--title-font);
    font-size: 18px
}

.bal-after {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden
}

.bal-before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 15;
    overflow: hidden
}

.bal-before-inset {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0
}

.bal-after img,.bal-before img {
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    width: 100%;
    height: 100%;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    top: 0;
    bottom: 0;
    left: 0;
    user-select: none
}

.bal-beforePosition {
    left: 0
}

.bal-afterPosition {
    right: 0
}

.beforeLabel {
    position: absolute;
    top: 50%;
    left: 44px;
    font-size: 18px;
    user-select: none;
    font-family: var(--title-font)
}

.choose-card .choose-title,.choose-step__title,.img-box2 .text-title {
    font-size: 30px;
    font-weight: 400
}

.afterLabel {
    position: absolute;
    top: 50%;
    right: 44px;
    font-weight: 600;
    -webkit-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
    font-family: var(--title-font)
}

.bal-handle {
    height: 80px;
    width: 80px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -40px;
    border: 5px solid #fff;
    border-radius: 1000px;
    z-index: 20;
    pointer-events: none;
    transform: translateY(-50%)
}

.handle-left-arrow,.handle-right-arrow {
    width: 0;
    height: 0;
    border: 6px inset transparent;
    position: absolute;
    top: 50%;
    margin-top: -6px
}

.handle-left-arrow {
    border-right: 6px solid #fff;
    left: 20px;
    margin-left: -17px
}

.handle-right-arrow {
    border-left: 6px solid #fff;
    right: 20px;
    margin-right: -17px
}

.bal-handle::before {
    bottom: 50%;
    margin-bottom: 36px
}

.bal-handle::after {
    top: 50%;
    margin-top: 36px
}

.bal-handle::after,.bal-handle::before {
    content: " ";
    display: block;
    width: 4.63px;
    background: #fff;
    height: 9999px;
    position: absolute;
    left: 50%;
    margin-left: -1.5px;
    box-shadow: none
}

.choose-card .choose-icon,.nav-link.active .choose-card {
    background-color: var(--light-color1);
    transition: .3s ease-in-out
}

.com-container {
    height: 482px;
    padding: 50px 54px 0 0;
    margin-left: -50px;
    position: relative
}

.com-container::before {
    position: absolute;
    content: "";
    width: 95%;
    height: 90%;
    border: 1px solid var(--body-color);
    top: 0;
    right: 0
}

.video-layout1 {
    text-align: center;
    padding: 250px 0 0;
    min-height: 619px;
    background-color: #fdf6e5;
}

.choose-layout .element {
    position: absolute;
    right: 16%;
    top: 15px
}

.choose-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 100%;
    min-height: 558px;
    justify-content: space-between;
    padding-bottom: 60px;
    transition: .3s ease-in-out
}

.choose-card .choose-icon {
    min-height: 127px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    width: 100%;
    min-width: 145px
}

@media (max-width: 1500px) {
    .contact__man {
        left:5%
    }

    .choose-card .choose-icon {
        min-width: 88px
    }
}

@media (max-width: 1199px) {
    .project-widget {
        padding:20px
    }

    .contact__man {
        left: 0;
        max-width: 350px
    }

    .contact-box {
        padding: 10px 15px
    }

    .ach-inner {
        max-width: 100%
    }

    .com-container {
        padding: 0;
        margin-left: 0
    }

    .choose-layout .element {
        right: 0;
        top: 0
    }

    .choose-card .choose-icon {
        min-width: 145px
    }
}

@media (max-width: 991px) {
    .vs-newsletter {
        padding:20px 15px
    }

    .newsletter-form1,.vs-newsletter .newsletter-form {
        flex-direction: column
    }

    .vs-newsletter .newsletter-form .form-control {
        min-width: 100%
    }

    .project-style {
        padding: 0
    }

    .project-style__content {
        padding: 15px
    }

    .choose-layout .element,.contact__man,.icon-btn--project {
        display: none
    }

    .contact-box-col {
        border-right: 0px solid var(--vs-border-color)
    }

    .bf-text {
        max-width: 100%
    }

    .choose-card .choose-icon {
        min-width: 135px
    }

    .choose-tab__row {
        gap: 30px
    }
}

@media (max-width: 767px) {
    .project-style2 .project-content {
        position:relative;
        padding: 15px
    }

    .project-style2 .project-title {
        font-size: 24px
    }

    .project-style2 span.project-number {
        font-size: 40px
    }

    .list-style ul {
        grid-template-columns: repeat(1,1fr);
        -moz-column-gap: 20px;
        column-gap: 20px
    }

    .ach-inner {
        padding: 10px;
        min-height: auto
    }

    .ach-inner .ach-content {
        flex: 0 0 100%
    }

    .beforeLabel {
        left: 10px
    }

    .afterLabel {
        right: 10px
    }

    .choose-card .choose-icon {
        min-width: 115px
    }
}

.choose-card .choose-title {
    margin: 0;
    writing-mode: vertical-rl;
    transform: rotate(-180deg);
    transform-origin: center center;
    padding: 0;
    font-family: var(--title-font)
}

.choose-tab {
    border: 1px solid rgba(var(--vs-border-color-rgb),45%);
    margin-right: -100%
}

.choose-tab__row {
    align-items: flex-start
}

@media (max-width: 1199px) {
    .choose-tab__row {
        justify-content:center;
        flex-wrap: wrap
    }
}

.choose-tab .nav-link {
    padding: 0;
    border: 0;
    border-left: 1px solid rgba(var(--vs-border-color-rgb),45%);
    border-radius: 0;
    border-right: 0;
    background-color: transparent;
    display: flex
}

.choose-tab .nav-link:last-child {
    border-right: 1px solid rgba(var(--vs-border-color-rgb),45%)
}

.choose-step:hover,.choose-tab .nav-link.active .choose-icon {
    background-color: var(--theme-color);
    transition: .3s ease-in-out
}

.img-box2 {
    position: relative;
    margin: -1px
}

@media (max-width: 1399px) {
    .choose-tab {
        margin-right:0;
        border: 0
    }

    .choose-tab .tab-content {
        flex-basis: 60%
    }

    .img-box2 img {
        width: 100%
    }
}

.img-box2 .text-box {
    position: absolute;
    top: 125px;
    left: 96px;
    max-width: 500px;
    background-color: var(--white-color);
    padding: 50px
}

@media (max-width: 1500px) {
    .choose-tab__row {
        align-items:center
    }

    .img-box2 .text-box {
        padding: 30px
    }
}

.img-box2 .text-link {
    position: relative;
    line-height: 1;
    display: flex;
    align-items: center;
    gap: 20px;
    font-weight: 500;
    text-transform: uppercase
}

.img-box2 .text-link::before {
    content: "";
    width: 36px;
    height: 1px;
    background-color: var(--theme-color);
    display: inline-block
}

.choose-image {
    margin: 0 0 60px
}

.choose-image__user {
    margin-top: -30px
}

.choose-image .media-number {
    font-size: 20px;
    color: var(--theme-color)
}

.choose-image .media-text {
    margin-bottom: 0;
    color: var(--white-color);
    position: relative;
    display: flex;
    gap: 60px;
    align-items: center
}

.choose-image .media-text::after {
    content: "";
    width: 100%;
    height: 1px;
    display: inline-block;
    background-color: #686868;
    flex: 1
}

.choose-step {
    background-color: #272727;
    padding: 30px;
    text-align: center;
    transition: .3s ease-in-out
}

.choose-step__title {
    margin: 0;
    color: var(--white-color);
    transition: .3s ease-in-out;
    line-height: 1.3
}

.choose-step__number {
    display: inline-block;
    border: 1px solid #686868;
    color: var(--white-color);
    padding: 7px 10px;
    font-size: 14px;
    letter-spacing: .3px;
    line-height: 1;
    margin: 0 0 10px;
    transition: .3s ease-in-out
}

.choose-step:hover .choose-step__number,.choose-step:hover .choose-step__title {
    color: var(--title-color);
    transition: .3s ease-in-out
}

.popup-search-box {
    position: fixed;
    top: 0;
    left: 0;
    background-color: rgba(0,0,0,.95);
    height: 100%;
    width: 0;
    overflow: hidden;
    z-index: 99999;
    opacity: 0;
    visibility: hidden;
    transition: .4s;
}

.popup-search-box button.searchClose {
    width: 60px;
    height: 60px;
    line-height: 60px;
    position: absolute;
    top: 40px;
    right: 40px;
    border: none;
    background-color: var(--theme-color);
    color: #fff;
    font-size: 30px;
    border-radius: 50%;
    transition: .4s;
}

.popup-search-box button.searchClose:hover {
    color: var(--theme-color);
    background-color: #fff;
}

.popup-search-box form {
    position: absolute;
    top: 50%;
    left: 50%;
    display: inline-block;
    padding-bottom: 40px;
    cursor: auto;
    width: 100%;
    max-width: 700px;
    transform: translate(-50%,-50%) scale(0);
    transition: transform .4s
}

@media (max-width: 1199px) {
    .img-box2 .text-box {
        position:static;
        top: auto;
        bottom: 0;
        left: auto;
        right: 0;
        border: 1px solid var(--vs-border-color);
        max-width: 100%
    }

    .choose-step {
        padding: 15px
    }

    .choose-step__title {
        font-size: 24px
    }

    .popup-search-box form {
        max-width: 600px
    }
}

.popup-search-box form input {
    font-size: 14px;
    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::placeholder {
    color: #fff
}

.popup-search-box form button {
    position: absolute;
    top: 0;
    background-color: transparent;
    border: none;
    font-size: 20px;
    right: 13px;
    color: #fff;
    cursor: pointer;
    width: 70px;
    height: 70px;
    transition: .4s;
    transform: scale(1.001)
}

.popup-search-box.show {
    opacity: 1;
    visibility: visible;
    width: 100.1%;
    transition: .4s
}

.popup-search-box.show form {
    transition-delay: 0.5s;
    transform: translate(-50%,-50%) scale(1)
}

.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
}

.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
}

.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
}

.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
}

.pl-5 {
    padding-left: 5px
}

.pl-15 {
    padding-left: 15px
}

.pl-20 {
    padding-left: 20px
}

.pl-30 {
    padding-left: 30px
}

.pr-5 {
    padding-right: 5px
}

.pr-10 {
    padding-right: 10px
}

.pr-15 {
    padding-right: 15px
}

.pr-25 {
    padding-right: 25px
}

.pr-30 {
    padding-right: 30px
}

.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
}

.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
}

.mt-5 {
    margin-top: 5px
}

.mt-15 {
    margin-top: 15px
}

.mt-20 {
    margin-top: 20px
}

.mt-25 {
    margin-top: 25px
}

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

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

.ml-5 {
    margin-left: 5px
}

.ml-15 {
    margin-left: 15px
}

.ml-20 {
    margin-left: 20px
}

.ml-25 {
    margin-left: 25px
}

.ml-30 {
    margin-left: 30px
}

.mr-5 {
    margin-right: 5px
}

.mr-15 {
    margin-right: 15px
}

.mr-25 {
    margin-right: 25px
}

.mr-30 {
    margin-right: 30px
}

.mt-n1 {
    margin-top: -.25rem
}

.mt-n2 {
    margin-top: -.5rem
}

.mt-n3 {
    margin-top: -1rem
}

.mt-n4 {
    margin-top: -1.5rem
}

.mt-n5 {
    margin-top: -3rem
}

.mb-n1 {
    margin-bottom: -.25rem
}

.mb-n2 {
    margin-bottom: -.5rem
}

.mb-n3 {
    margin-bottom: -1rem
}

.mb-n4 {
    margin-bottom: -1.5rem
}

.mb-n5 {
    margin-bottom: -3rem
}

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

.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);
    padding-top: 100px;
}

@media (max-width: 991px) {
    .choose-tab .tab-content {
        flex-basis:100%
    }

    .choose-tab .nav {
        flex-direction: column;
        width: 100%
    }

    .choose-tab .nav-link:first-child {
        border-top: 1px solid rgba(var(--vs-border-color-rgb),45%)
    }

    .choose-tab .nav-link {
        border-bottom: 1px solid rgba(var(--vs-border-color-rgb),45%);
        border-right: 1px solid rgba(var(--vs-border-color-rgb),45%)
    }

    .choose-tab .choose-card {
        flex-direction: row;
        flex: auto;
        min-height: auto;
        padding-bottom: 0;
        justify-content: flex-start;
        gap: 15px;
        padding-right: 15px
    }

    .choose-tab .choose-card .choose-icon {
        max-width: 70px;
        min-height: 80px;
        min-width: 70px
    }

    .choose-tab .choose-card .choose-icon>img {
        max-width: 45px
    }

    .choose-tab .choose-card .choose-title {
        writing-mode: rl-tb;
        transform: rotate(0);
        font-size: 20px;
        text-align: left;
        padding: 0
    }

    .img-box2 .text-box {
        position: static;
        top: 0;
        left: 0;
        padding: 15px;
        border: 1px solid var(--vs-border-color);
        max-width: 100%
    }

    .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
    }
}

.vs-color-plate {
    position: fixed;
    display: block;
    z-index: 91;
    padding: 20px;
    width: 240px;
    background: #fff;
    left: 0;
    text-align: left;
    top: 30%;
    transition: .4s;
    box-shadow: -3px 0 10px -2px rgba(0,0,0,.1);
    direction: ltr;
    transform: translateX(-100%)
}

.vs-color-plate.open {
    transform: translateX(0)
}

.vs-color-plate .color-plate-icon {
    position: absolute;
    right: -48px;
    width: 48px;
    height: 45px;
    line-height: 45px;
    font-size: 21px;
    border-radius: 0 5px 5px 0;
    text-align: center;
    color: #fff;
    top: 0;
    cursor: pointer;
    border: none;
    padding: 0;
    box-shadow: -4px 0 5px rgba(0,0,0,.2117647059);
    background-color: var(--theme-color)
}

.vs-color-plate h4 {
    display: block;
    font-size: 18px;
    margin-bottom: 0;
    font-weight: 500
}

.vs-color-plate p {
    font-size: 12px;
    margin-bottom: 15px;
    line-height: 20px
}

.vs-color-plate .reset-btn {
    border: none;
    padding: 0;
    font-size: 14px;
    text-transform: capitalize;
    color: #01000f;
    background-color: var(--smoke-color);
    width: 100%;
    height: 40px
}

.vs-color-plate input[type=color] {
    border: none;
    padding: 0
}

.default-color-btn {
    border: none;
    background-color: #000;
    color: #fff;
    font-weight: 400;
    font-family: var(--body-font);
    text-align: center;
    width: 100%;
    font-size: 14px;
    margin: 0 0 10px;
    padding: 5px 0
}

.lang-toggle {
    position: relative;
    width: 120px;
    height: 45px;
    display: flex;
    overflow: hidden;
    cursor: pointer;
    font-family: Arial, sans-serif;
    user-select: none;
    margin-left: 20px;
}

.toggle-bg {
    position: absolute;
    width: 50%;
    height: 100%;
    background: black;
    transition: 0.4s ease;
    z-index: 1;
}

.lang-toggle.ar .toggle-bg {
    transform: translateX(100%);
}

.lang {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #aaa;
    font-weight: bold;
    z-index: 2;
    transition: 0.3s;
	 
}

.lang.active {
    color: #fff;
	background:#f0a800;

}


.floating-cta {
    position: fixed;
    bottom: 25px;
    left: 25px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    z-index: 9999;
}

.float-btn {
    width: 55px;
    height: 55px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 22px;
    text-decoration: none;
    border: 2px solid #f0a800;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25);
    transition: all 0.3s ease;
}

.float-btn.whatsapp {
    background: #ffffff;
    color: #f0a800;
}

.float-btn.call {
    background: #ffffff;
    color: #f0a800;
}

.float-btn:hover {
    background: #f0a800;
    transform: scale(1.1);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.35);
    color:#fff;
}

@keyframes pulse {
    0% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.5); }
    70% { box-shadow: 0 0 0 15px rgba(37, 211, 102, 0); }
    100% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); }
}


/* ============================================================
   RTL - triggered by JS setLang("ar") -> html[dir="rtl"]
   IMPORTANT: No rule here touches the LTR layout.
   Only html[dir="rtl"] prefixed rules are included.
   ============================================================ */

/* 1. Global text direction */
html[dir="rtl"] body { text-align: right; }
/* Do NOT use * selector - it breaks banner letter-spacing etc */

/* 2. Utility margin/padding flips */
html[dir="rtl"] .ml-5  { margin-left:0 !important; margin-right:5px !important; }
html[dir="rtl"] .ml-10 { margin-left:0 !important; margin-right:10px !important; }
html[dir="rtl"] .ml-15 { margin-left:0 !important; margin-right:15px !important; }
html[dir="rtl"] .ml-20 { margin-left:0 !important; margin-right:20px !important; }
html[dir="rtl"] .ml-25 { margin-left:0 !important; margin-right:25px !important; }
html[dir="rtl"] .ml-30 { margin-left:0 !important; margin-right:30px !important; }
html[dir="rtl"] .mr-5  { margin-right:0 !important; margin-left:5px !important; }
html[dir="rtl"] .mr-10 { margin-right:0 !important; margin-left:10px !important; }
html[dir="rtl"] .mr-15 { margin-right:0 !important; margin-left:15px !important; }
html[dir="rtl"] .mr-25 { margin-right:0 !important; margin-left:25px !important; }
html[dir="rtl"] .mr-30 { margin-right:0 !important; margin-left:30px !important; }
html[dir="rtl"] .pl-10 { padding-left:0 !important; padding-right:10px !important; }
html[dir="rtl"] .text-lg-start { text-align:right !important; }

/* 3. Header - DO NOT reverse the row, only adjust individual elements */
html[dir="rtl"] .lang-toggle { margin-left:0; margin-right:20px; }
/* Desktop nav: just text-align, do NOT reverse flex order */
html[dir="rtl"] .main-menu ul li .sub-menu { left:auto; right:0; text-align:right; }
html[dir="rtl"] .main-menu ul li:last-child .sub-menu { right:auto; left:0; }

/* 4. Mobile menu: slide from right instead of left */
html[dir="rtl"] .vs-menu-wrapper .vs-menu-area {
    left:auto;
    right:-110%;
    border-right:none;
    border-left:3px solid var(--theme-color);
}
html[dir="rtl"] .vs-menu-wrapper.vs-body-visible .vs-menu-area { right:0; left:auto; }
html[dir="rtl"] .vs-menu-wrapper .vs-menu-toggle { right:auto; left:10px; }
html[dir="rtl"] .vs-mobile-menu { text-align:right; }
html[dir="rtl"] .vs-mobile-menu ul li a:before {
    content:"\f104";
    margin-right:0;
    margin-left:10px;
}
html[dir="rtl"] .vs-mobile-menu ul li.vs-active > a:before { transform:rotate(-90deg); }
html[dir="rtl"] .vs-mobile-menu ul .vs-item-has-children > a .vs-mean-expand { right:auto; left:0; }
html[dir="rtl"] .vs-mobile-menu ul li ul li { padding-left:0; padding-right:10px; }

/* 5. Section titles - right align only */
html[dir="rtl"] .title-area { text-align:right; }
html[dir="rtl"] .sec-subtitle { display:block; }

/* 6. About section */
html[dir="rtl"] .about-subtitle,
html[dir="rtl"] .about-text { text-align:right; }
html[dir="rtl"] .number-card { right:auto; left:40px; }

/* 7. Checkmark lists - flip padding/icon to right side */
html[dir="rtl"] .list-style ul li { padding-left:0; padding-right:43px; }
html[dir="rtl"] .list-style ul li::before { left:auto; right:0; }
html[dir="rtl"] .list-style.style2 ul li { padding-left:0; padding-right:29px; }
html[dir="rtl"] .list-style.style2 ul li::before { left:auto; right:0; }

/* 8. Service tabs text alignment */
html[dir="rtl"] .tab-title,
html[dir="rtl"] .tab-text { text-align:right; }

/* 9. Choose Us - flip the flex row so nav is on right, content on left */
html[dir="rtl"] .choose-tab__row { flex-direction:row-reverse; }
html[dir="rtl"] .choose-tab .nav-link { border-left:0; border-right:1px solid rgba(216,221,225,0.45); }
html[dir="rtl"] .choose-tab .nav-link:first-child { border-right:0; }
html[dir="rtl"] .img-box2 .text-box { text-align:right; }
html[dir="rtl"] .img-box2 .text-title { text-align:right; }

/* 10. Footer */
html[dir="rtl"] .footer-info { flex-direction:row-reverse; text-align:right; }
html[dir="rtl"] .footer-info__icon { margin-right:0; margin-left:15px; }
html[dir="rtl"] .footer-info__body { text-align:right; }
html[dir="rtl"] .footer-menu2 ul li a { padding-left:0; padding-right:18px; }
html[dir="rtl"] .footer-menu2 ul li a::before { left:auto; right:0; content:"\f104"; }
html[dir="rtl"] .footer-title::before { left:auto; right:0; }
html[dir="rtl"] .footer-title::after  { left:auto; right:20px; }
html[dir="rtl"] .social-style { justify-content:flex-start; }
html[dir="rtl"] .footer-copyright.style2 { direction:rtl; text-align:center; }
html[dir="rtl"] .footer-logo { text-align:right; }
html[dir="rtl"] .footer-text2 { text-align:right !important; }

/* 11. Floating CTA - JS also sets this, CSS is fallback */
html[dir="rtl"] .floating-cta { left:auto; right:25px; }

/* 12. Slick arrows */
html[dir="rtl"] .slick-prev { left:auto; right:var(--arrow-horizontal,-40px); }
html[dir="rtl"] .slick-next { right:auto; left:var(--arrow-horizontal,-40px); }

/* 13. Forms */
html[dir="rtl"] .form-control,
html[dir="rtl"] .form-select,
html[dir="rtl"] input:not([type=checkbox]):not([type=radio]),
html[dir="rtl"] select,
html[dir="rtl"] textarea { padding:0 28px 0 45px; text-align:right; }
html[dir="rtl"] .form-select,
html[dir="rtl"] select { background-position:left 26px center; }
html[dir="rtl"] input[type=checkbox] ~ label,
html[dir="rtl"] input[type=radio] ~ label { padding-left:0; padding-right:30px; }
html[dir="rtl"] input[type=checkbox] ~ label:before,
html[dir="rtl"] input[type=radio] ~ label::before { left:auto; right:0; }

/* 14. Blog meta */
html[dir="rtl"] .blog-meta a,
html[dir="rtl"] .blog-meta span { margin-right:0; margin-left:15px; }
html[dir="rtl"] .blog-meta a:last-child,
html[dir="rtl"] .blog-meta span:last-child { margin-left:0; }
html[dir="rtl"] .post-pagi-box img { margin-right:0; margin-left:15px; }
html[dir="rtl"] .post-pagi-box.next img { margin-left:0; margin-right:15px; }

/* 15. Sidebar widgets */
html[dir="rtl"] .widget_categories li a::before,
html[dir="rtl"] .widget_nav_menu li a::before,
html[dir="rtl"] .widget_pages li a::before,
html[dir="rtl"] .widget_meta li a::before,
html[dir="rtl"] .widget_archive li a::before {
    margin-right:0; margin-left:8px; transform:scaleX(-1); display:inline-block;
}
html[dir="rtl"] .contact-widget .contact { padding:0 45px 0 0; }
html[dir="rtl"] .contact-widget .icon { left:auto; right:0; }

/* 16. Breadcrumb */
html[dir="rtl"] .breadcumb-content { text-align:right; }

/* 17. Scroll-to-top */
html[dir="rtl"] .scroll-btn,
html[dir="rtl"] .scrollToTop { right:auto; left:15px; }

/* 18. Float alignments */
html[dir="rtl"] .alignleft { float:right; margin-right:0; margin-left:1.5em; }
html[dir="rtl"] .alignright { float:left; margin-left:0; margin-right:1.5em; }

/* 19. Mobile lang toggle pill stays LTR internally */
html[dir="rtl"] .mobile-lang-wrap { direction:ltr; }

/* 20. RTL on tablet/mobile - keep panel sliding from right */
@media (max-width: 991px) {
    html[dir="rtl"] .vs-menu-wrapper .vs-menu-area { right:-110%; left:auto; }
    html[dir="rtl"] .vs-menu-wrapper.vs-body-visible .vs-menu-area { right:0; left:auto; }
    html[dir="rtl"] .floating-cta { left:auto; right:15px; }
}

/* 21. Choose-tab stacked layout on tablet */
@media (max-width: 991px) {
    html[dir="rtl"] .choose-tab .nav { flex-direction:column; }
    html[dir="rtl"] .choose-tab .nav-link {
        border-right:0;
        border-bottom:1px solid rgba(216,221,225,0.45);
        border-left:1px solid rgba(216,221,225,0.45);
    }
    html[dir="rtl"] .choose-tab .choose-card { flex-direction:row-reverse; justify-content:flex-end; }
    html[dir="rtl"] .choose-tab .choose-card .choose-title { text-align:right; }
}

/* ============================================================
   MOBILE FIXES (max-width: 767px)
   ============================================================ */
@media (max-width: 767px) {
    .header-logo { max-width:100%; width:100%; justify-content:space-between; padding:10px 15px; }
    .header-logo img.logo { max-height:45px; width:auto; }
    .lang-toggle { margin-left:10px; width:90px; height:36px; flex-shrink:0; }
    .navbar-wrap .container > .row { flex-wrap:nowrap; align-items:center; }
    .vs-banner__inner { padding:80px 15px 60px; min-height:auto; }
    .vs-banner__title { font-size:28px !important; line-height:1.3; }
    .vs-banner__text { font-size:14px; }
    .vs-banner__buttons { flex-wrap:wrap; gap:10px; }
    .space,.space-top    { padding-top:60px; }
    .space,.space-bottom { padding-bottom:60px; }
    .vs-service { margin-bottom:20px; }
    .icon-box,.feature-box { flex-direction:column; text-align:center; }
    .icon-box .icon-box__icon,.feature-box .icon { margin:0 auto 15px; }
    .counter-style1,.counter-card { margin-bottom:20px; text-align:center; }
    .img-box2 .text-box { position:static; max-width:100%; margin-top:15px; }
    .footer-layout2 .col-lg-3,
    .footer-layout2 .col-lg-auto { text-align:center; }
    .footer-info {justify-content:center;text-align: center;}
    .footer-info__icon { flex-shrink:0; }
    .social-style { justify-content:center; }
    .footer-copyright.style2 { padding:15px; font-size:13px; text-align:center; }
    .sidebar-area { margin-top:40px; }
    .contact-form .vs-btn { width:100%; text-align:center; }
    .floating-cta { bottom:15px; left:15px; gap:8px; }
    .float-btn { width:46px; height:46px; font-size:18px; }
    table { display:block; overflow-x:auto; -webkit-overflow-scrolling:touch; }
    .tagcloud a,.wp-block-tag-cloud a { font-size:13px; padding:8px 14px; }
    .mobile-lang-wrap {
        display:flex; justify-content:center;
        padding:15px 0 5px;
        border-top:1px solid #fdedf1;
        margin-top:10px;
    }
}

@media (max-width: 400px) {
    .vs-banner__title { font-size:22px !important; }
    .lang-toggle { width:76px; height:32px; font-size:12px; }
    .float-btn { width:40px; height:40px; font-size:16px; }
}

/* ============================================================
   CHOOSE US — VERTICAL TABS ON THE LEFT
   ============================================================ */

  /* Why Choose Us tab image switching */
  #v-pills-tabContent .tab-pane {
    display: none;
    opacity: 0;
    transition: opacity 0.35s ease;
  }
  #v-pills-tabContent .tab-pane.active {
    display: block;
    opacity: 1;
  }

  /* Larger fonts in the Why Choose Us section */
  .choose-layout .choose-title {
    font-size: 1.15rem !important;
    font-weight: 600;
  }
  .choose-layout .text-title {
    font-size: 1.7rem !important;
    font-weight: 700;
    line-height: 1.3;
  }
  .choose-layout .text-text {
    font-size: 1.05rem !important;
    line-height: 1.75;
  }
  .choose-layout .text-link {
    font-size: 1rem !important;
    font-weight: 600;
  }
  .choose-layout .sec-title {
    font-size: 2.2rem !important;
  }
  .choose-layout .sec-subtitle {
    font-size: 1rem !important;
  }

.choose-nav-horizontal .choose-title,
.choose-card .choose-title {
    font-size: 18px !important;
    line-height: 1.4 !important;
    font-weight: 600 !important;
    white-space: normal !important;
}

/* Larger icons area */
.choose-nav-horizontal .choose-icon {
    flex: 0 0 60px;
}

.choose-nav-horizontal .choose-card {
    display: flex;
    align-items: center;
    gap: 18px;
}

/* Increase tab height */
.choose-nav-horizontal .nav-link {
    padding: 25px 20px !important;
}

.choose-tab{
    margin-right:0 !important;
    border:1px solid rgba(var(--vs-border-color-rgb),.45);
    overflow:hidden;
}

.choose-tab__row{
    display:flex;
    align-items:stretch;
}

.choose-nav-horizontal{
    width:280px;
    flex-shrink:0;
    display:flex;
    /* flex-direction:column; */
    border-right:1px solid rgba(var(--vs-border-color-rgb),.45);
}

.choose-nav-horizontal .nav-link{
    width:100%;
    border:none;
    border-bottom:1px solid rgba(var(--vs-border-color-rgb),.45);
    padding:20px;
    background:#fff;
    text-align:left;
}

.choose-nav-horizontal .nav-link:last-child{
    border-bottom:none;
}

.choose-nav-horizontal .nav-link.active{
    background:var(--light-color1);
}

.choose-nav-horizontal .choose-card{
    min-height:auto !important;
    padding:0 !important;
    flex-direction:row !important;
    gap:15px;
    justify-content:flex-start;
}

.choose-nav-horizontal .choose-title{
    writing-mode:horizontal-tb !important;
    transform:none !important;
    font-size:18px !important;
}

.tab-content{
    flex:1;
}

.tab-content .tab-pane{
    display:none;
}

.tab-content .tab-pane.active{
    display:block;
}

.img-box2{
    position:relative;
}

.img-box2 img{
    width:100%;
    height:700px;
    object-fit:cover;
    display:block;
}

.img-box2 .text-box{
    position:absolute;
    left:50px;
    bottom:50px;
    top:auto;
    max-width:500px;
    background:#fff;
    padding:35px;
}

@media(max-width:991px){

    .choose-tab__row{
        flex-direction:column;
    }

    .choose-nav-horizontal{
        width:100%;
        border-right:none;
        border-bottom:1px solid rgba(var(--vs-border-color-rgb),.45);
    }

    .img-box2 img{
        height:450px;
    }

    .img-box2 .text-box{
        position:relative;
        left:0;
        bottom:0;
        max-width:100%;
    }
}

/* 1. Row: side-by-side — nav on left, content on right */
/* .choose-tab__row {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    gap: 0 !important;
    border: 1px solid rgba(var(--vs-border-color-rgb), 0.45) !important;
} */

/* 2. Nav: vertical column on the left */
/* .choose-nav-horizontal {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    width: 280px !important;
    min-width: 220px !important;
    max-width: 300px !important;
    flex-shrink: 0 !important;
    border-right: 1px solid rgba(var(--vs-border-color-rgb), 0.45) !important;
    border-radius: 0 !important;
    gap: 0 !important;
    background-color: var(--white-color) !important;
} */

/* 3. Each tab button */
/* .choose-nav-horizontal .nav-link {
    flex: 0 0 auto !important;
    width: 100% !important;
    padding: 0 !important;
    border: none !important;
    border-bottom: 1px solid rgba(var(--vs-border-color-rgb), 0.45) !important;
    border-left: 4px solid transparent !important;
    border-radius: 0 !important;
    background-color: var(--white-color) !important;
    color: inherit !important;
    text-align: left !important;
} */

/* .choose-nav-horizontal .nav-link:last-child {
    border-bottom: none !important;
} */

/* .choose-nav-horizontal .nav-link.active {
    background-color: var(--light-color1) !important;
    border-left: 4px solid var(--theme-color) !important;
} */

/* .choose-nav-horizontal .nav-link.active .choose-icon {
    background-color: var(--theme-color) !important;
} */

/* 4. Card: icon left, title right — horizontal row */
/* .choose-card {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    min-height: 90px !important;
    height: 100% !important;
    width: 100% !important;
    padding: 16px 18px !important;
    gap: 14px !important;
    box-sizing: border-box !important;
} */

/* 5. Icon: fixed square */
.choose-card .choose-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    padding: 10px !important;
    flex-shrink: 0 !important;
    transition: background-color 0.3s !important;
}

/* 6. Title */
.choose-card .choose-title {
    writing-mode: horizontal-tb !important;
    transform: none !important;
    transform-origin: unset !important;
    text-align: left !important;
    font-size: 20px !important;
    font-family: var(--title-font) !important;
    line-height: 1.4 !important;
    padding: 0 !important;
    margin: 0 !important;
    white-space: normal !important;
    word-break: break-word !important;
    color: var(--title-color) !important;
}

/* 7. Tab content: fills remaining space to the right */
.choose-tab .tab-content {
    flex: 1 1 auto !important;
    width: auto !important;
    border: none !important;
    min-width: 0 !important;
}

/* 8. Image fills the panel */
.choose-tab .img-box2 {
    margin: 0 !important;
    height: 100% !important;
}

.choose-tab .img-box2 img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 400px !important;
    max-height: 600px !important;
    object-fit: cover !important;
}

/* 9. RTL support — nav moves to the right */
html[dir="rtl"] .choose-tab__row {
    flex-direction: row-reverse !important;
}
html[dir="rtl"] .choose-nav-horizontal {
    border-right: none !important;
    border-left: 1px solid rgba(var(--vs-border-color-rgb), 0.45) !important;
}
html[dir="rtl"] .choose-nav-horizontal .nav-link {
    border-left: none !important;
    border-right: 4px solid transparent !important;
    text-align: right !important;
}
html[dir="rtl"] .choose-nav-horizontal .nav-link.active {
    border-left: none !important;
    border-right: 4px solid var(--theme-color) !important;
}
html[dir="rtl"] .choose-card {
    flex-direction: row-reverse !important;
}
html[dir="rtl"] .choose-card .choose-title {
    text-align: right !important;
}

/* 10. Mobile: stack vertically */
@media (max-width: 991px) {
    .choose-tab__row {
        flex-direction: column !important;
        border: none !important;
    }
    .choose-nav-horizontal {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        border-right: none !important;
        border: 1px solid rgba(var(--vs-border-color-rgb), 0.45) !important;
        border-bottom: none !important;
    }
    .choose-nav-horizontal .nav-link {
        flex: 1 1 calc(50% - 1px) !important;
        border-left: none !important;
        border-bottom: 1px solid rgba(var(--vs-border-color-rgb), 0.45) !important;
        border-top: none !important;
    }
    .choose-nav-horizontal .nav-link.active {
        border-left: none !important;
        border-bottom: 3px solid var(--theme-color) !important;
    }
    .choose-card {
        min-height: 80px !important;
        padding: 12px !important;
    }
    .choose-tab .tab-content {
        border: 1px solid rgba(var(--vs-border-color-rgb), 0.45) !important;
        border-top: none !important;
    }
    html[dir="rtl"] .choose-tab__row { flex-direction: column !important; }
    html[dir="rtl"] .choose-nav-horizontal { border-left: none !important; }
    html[dir="rtl"] .choose-nav-horizontal .nav-link {
        border-right: none !important;
        border-bottom: 1px solid rgba(var(--vs-border-color-rgb), 0.45) !important;
    }
    html[dir="rtl"] .choose-nav-horizontal .nav-link.active {
        border-right: none !important;
        border-bottom: 3px solid var(--theme-color) !important;
    }
}