/*================================================================================================*/
/*=================[                                                            ]=================*/
/*=================[    !!!!!!!!   CSS CREATED BY WorkDO  !!!!!!!!   ]=================*/
/*=================[                                                            ]=================*/
/*================================================================================================*/
/* =========================== */
/* !! SITE PAGE USE !!
1.  Global css

/* ============================================= */
/* !!!!         VARIABLES STYLE CSS         !!!! */
/* ============================================= */
:root {
    --first-font: "Mulish", sans-serif;
    --second-font: "Kaisei Tokumin", serif;
    --theme-color: #C69E50;
    --second-color: #F7F5F1;
    --white: #ffffff;
    --black: #000;
    --text-color: #333333;
    --border-color: #D9D9D9;
    --h1: normal 500 54px/1.1 var(--second-font);
    --h2: normal 500 42px/1.1 var(--second-font);
    --h3: normal 400 28px/1.1 var(--second-font);
    --h4: normal 400 24px/1.1 var(--first-font);
    --h5: normal 500 20px/1.1 var(--first-font);
    --h6: normal 500 18px/1.1 var(--first-font);
    --common-text: normal 400 20px/1.2 var(--first-font);
}

/* ============================================= */
/* !!!!        SITE GLOBAL STYLE CSS        !!!! */
/* ============================================= */

*,
:after,
:before {
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
    text-decoration: inherit;
    vertical-align: inherit;
}

html {
    outline: none;
    scroll-behavior: smooth;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: --whitescale;
    -webkit-text-size-adjust: 100%;
}

body,
html {
    scrollbar-width: none;
}

body::-webkit-scrollbar {
    display: none;
}

body::-moz-scrollbar {
    display: none;
}

::selection {
    background: rgb(17 35 46 / 28%);
}

svg,
img {
    max-width: 100%;
    display: block;
}

a,
.btn,
button {
    text-decoration: none;
    outline: none;
    color: inherit;
    transition: all 300ms ease-in-out 0s;
    -webkit-transition: all 300ms ease-in-out 0s;
    -moz-transition: all 300ms ease-in-out 0s;
    -ms-transition: all 300ms ease-in-out 0s;
    -o-transition: all 300ms ease-in-out 0s;
    display: inline-block;
    cursor: pointer;
}

a,
a:hover,
a:focus,
a:active,
input,
input:hover,
input:focus,
select,
select:hover,
select:focus,
textarea,
textarea:hover,
textarea:focus,
button,
button:hover,
button:focus,
.btn,
.btn:hover,
.btn:focus,
.btn:active:focus,
.btn:active.focus,
.btn.active:focus,
.btn.active.focus {
    text-decoration: none;
    -webkit-text-decoration-skip: objects;
    outline: none;
}

.form-control:focus,
[type="text"]:focus,
[type="email"]:focus,
[type="checkbox"]:focus,
[type="password"]:focus,
[type="file"]:focus,
[type="radio"]:focus,
[type="button"]:focus,
[type="submit"]:focus,
[type="date"]:focus,
[type="time"]:focus,
[type="tel"]:focus,
[type="search"]:focus,
[type="button"]:focus,
[type="number"]:focus,
textarea:focus,
select:focus {
    outline: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    -ms-box-shadow: none;
    -o-box-shadow: none;
    box-shadow: none;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    appearance: none;
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    appearance: textfield;
    -moz-appearance: textfield;
}

::-webkit-input-placeholder {
    color: var(--text-color);
}

:-ms-input-placeholder {
    color: var(--text-color);
}

::placeholder {
    color: var(--text-color);
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
img,
ins,
kbd,
q,
s,
samp,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    font-size: 100%;
    list-style: none;
    vertical-align: baseline;
}

body {
    font: var(--common-text);
    margin: 0;
    padding: 0;
    height: 100%;
    width: 100%;
    overflow-x: hidden;
    background: var(--white);
    color: var(--black);
}

/* ============================================= */
/* !!!!         SITE TYPOGRAPHY CSS         !!!! */
/* ============================================= */
p,
li,
ul,
ol {
    margin: 0;
    padding: 0;
    list-style: none;
    font: var(--common-text);
}

h1,
.h1 {
    font: var(--h1);
}

h2,
.h2 {
    font: var(--h2);
}

h3,
.h3 {
    font: var(--h3);
}

h4,
.h4 {
    font: var(--h4);
}

h5,
.h5 {
    font: var(--h5);
}

h6,
.h6 {
    font: var(--h6);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
}

.uppercase {
    text-transform: uppercase;
}

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

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

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

b {
    font-weight: bold;
    display: inline-block;
}

p:not(:last-of-type) {
    margin-bottom: 15px;
}

/* ============================================= */
/* !!!!             GRID CSS                !!!! */
/* ============================================= */
.container {
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 15px;
}

.row {
    display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -15px;
    margin-right: -15px;
}

.no-gutters {
    margin: 0 !important;
}

.row [class*="col-"] {
    padding: 0 15px;
}

.no-gutters [class*="col-"] {
    padding: 0;
}

.w-100 {
    width: 100%;
}

.h-100 {
    height: 100%;
}

.flex {
    display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    box-sizing: border-box;
}

.align-start {
    -ms-flex-align: start;
    align-items: flex-start;
}

.align-end {
    -ms-flex-align: end;
    align-items: flex-end;
}

.align-center {
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
}

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

.justify-between {
    justify-content: space-between;
    -ms-flex-pack: justify;
}

.justify-around {
    justify-content: space-around;
    -ms-flex-pack: distribute;
}

.justify-start {
    justify-content: flex-start;
    -ms-flex-pack: start;
}

.justify-end {
    justify-content: flex-end;
    -ms-flex-pack: end;
}

.row-reverse {
    flex-direction: row-reverse;
}

.direction-column {
    flex-direction: column;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
}

.no-wrap {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}


/*****  Columns  *****/
.col-auto {
    flex: 0 0 auto;
    width: auto;
}

.col-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
}

.col-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
}

.col-3 {
    flex: 0 0 auto;
    width: 25%;
}

.col-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
}

.col-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
}

.col-6 {
    flex: 0 0 auto;
    width: 50%;
}

.col-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
}

.col-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
}

.col-9 {
    flex: 0 0 auto;
    width: 75%;
}

.col-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
}

.col-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
}

.col-12 {
    flex: 0 0 auto;
    width: 100%;
}

.offset-1 {
    margin-left: 8.33333333%;
}

.offset-2 {
    margin-left: 16.66666667%;
}

.offset-3 {
    margin-left: 25%;
}

.offset-4 {
    margin-left: 33.33333333%;
}

.offset-5 {
    margin-left: 41.66666667%;
}

.offset-6 {
    margin-left: 50%;
}

.offset-7 {
    margin-left: 58.33333333%;
}

.offset-8 {
    margin-left: 66.66666667%;
}

.offset-9 {
    margin-left: 75%;
}

.offset-10 {
    margin-left: 83.33333333%;
}

.offset-11 {
    margin-left: 91.66666667%;
}


@media (min-width: 576px) {
    .col-sm {
        flex: 1 0 0%;
    }

    .col-sm-auto {
        flex: 0 0 auto;
        width: auto;
    }

    .col-sm-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-sm-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-sm-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-sm-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-sm-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-sm-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-sm-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-sm-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-sm-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-sm-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-sm-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-sm-12 {
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-sm-0 {
        margin-left: 0;
    }

    .offset-sm-1 {
        margin-left: 8.33333333%;
    }

    .offset-sm-2 {
        margin-left: 16.66666667%;
    }

    .offset-sm-3 {
        margin-left: 25%;
    }

    .offset-sm-4 {
        margin-left: 33.33333333%;
    }

    .offset-sm-5 {
        margin-left: 41.66666667%;
    }

    .offset-sm-6 {
        margin-left: 50%;
    }

    .offset-sm-7 {
        margin-left: 58.33333333%;
    }

    .offset-sm-8 {
        margin-left: 66.66666667%;
    }

    .offset-sm-9 {
        margin-left: 75%;
    }

    .offset-sm-10 {
        margin-left: 83.33333333%;
    }

    .offset-sm-11 {
        margin-left: 91.66666667%;
    }

}

@media (min-width: 768px) {
    .col-md {
        flex: 1 0 0%;
    }

    .col-md-auto {
        flex: 0 0 auto;
        width: auto;
    }

    .col-md-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-md-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-md-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-md-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-md-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-md-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-md-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-md-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-md-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-md-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-md-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-md-12 {
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-md-0 {
        margin-left: 0;
    }

    .offset-md-1 {
        margin-left: 8.33333333%;
    }

    .offset-md-2 {
        margin-left: 16.66666667%;
    }

    .offset-md-3 {
        margin-left: 25%;
    }

    .offset-md-4 {
        margin-left: 33.33333333%;
    }

    .offset-md-5 {
        margin-left: 41.66666667%;
    }

    .offset-md-6 {
        margin-left: 50%;
    }

    .offset-md-7 {
        margin-left: 58.33333333%;
    }

    .offset-md-8 {
        margin-left: 66.66666667%;
    }

    .offset-md-9 {
        margin-left: 75%;
    }

    .offset-md-10 {
        margin-left: 83.33333333%;
    }

    .offset-md-11 {
        margin-left: 91.66666667%;
    }

}

@media (min-width: 992px) {
    .col-lg {
        flex: 1 0 0%;
    }

    .col-lg-auto {
        flex: 0 0 auto;
        width: auto;
    }

    .col-lg-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-lg-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-lg-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-lg-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-lg-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-lg-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-lg-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-lg-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-lg-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-lg-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-lg-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-lg-12 {
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-lg-0 {
        margin-left: 0;
    }

    .offset-lg-1 {
        margin-left: 8.33333333%;
    }

    .offset-lg-2 {
        margin-left: 16.66666667%;
    }

    .offset-lg-3 {
        margin-left: 25%;
    }

    .offset-lg-4 {
        margin-left: 33.33333333%;
    }

    .offset-lg-5 {
        margin-left: 41.66666667%;
    }

    .offset-lg-6 {
        margin-left: 50%;
    }

    .offset-lg-7 {
        margin-left: 58.33333333%;
    }

    .offset-lg-8 {
        margin-left: 66.66666667%;
    }

    .offset-lg-9 {
        margin-left: 75%;
    }

    .offset-lg-10 {
        margin-left: 83.33333333%;
    }

    .offset-lg-11 {
        margin-left: 91.66666667%;
    }

}

@media (min-width: 1200px) {
    .col-xl {
        flex: 1 0 0%;
    }

    .col-xl-auto {
        flex: 0 0 auto;
        width: auto;
    }

    .col-xl-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-xl-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-xl-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-xl-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-xl-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-xl-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-xl-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-xl-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-xl-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-xl-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-xl-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-xl-12 {
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-xl-0 {
        margin-left: 0;
    }

    .offset-xl-1 {
        margin-left: 8.33333333%;
    }

    .offset-xl-2 {
        margin-left: 16.66666667%;
    }

    .offset-xl-3 {
        margin-left: 25%;
    }

    .offset-xl-4 {
        margin-left: 33.33333333%;
    }

    .offset-xl-5 {
        margin-left: 41.66666667%;
    }

    .offset-xl-6 {
        margin-left: 50%;
    }

    .offset-xl-7 {
        margin-left: 58.33333333%;
    }

    .offset-xl-8 {
        margin-left: 66.66666667%;
    }

    .offset-xl-9 {
        margin-left: 75%;
    }

    .offset-xl-10 {
        margin-left: 83.33333333%;
    }

    .offset-xl-11 {
        margin-left: 91.66666667%;
    }


}

@media (min-width: 1400px) {
    .col-xxl {
        flex: 1 0 0%;
    }

    .col-xxl-auto {
        flex: 0 0 auto;
        width: auto;
    }

    .col-xxl-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-xxl-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-xxl-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-xxl-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-xxl-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-xxl-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-xxl-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-xxl-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-xxl-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-xxl-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-xxl-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-xxl-12 {
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-xxl-0 {
        margin-left: 0;
    }

    .offset-xxl-1 {
        margin-left: 8.33333333%;
    }

    .offset-xxl-2 {
        margin-left: 16.66666667%;
    }

    .offset-xxl-3 {
        margin-left: 25%;
    }

    .offset-xxl-4 {
        margin-left: 33.33333333%;
    }

    .offset-xxl-5 {
        margin-left: 41.66666667%;
    }

    .offset-xxl-6 {
        margin-left: 50%;
    }

    .offset-xxl-7 {
        margin-left: 58.33333333%;
    }

    .offset-xxl-8 {
        margin-left: 66.66666667%;
    }

    .offset-xxl-9 {
        margin-left: 75%;
    }

    .offset-xxl-10 {
        margin-left: 83.33333333%;
    }

    .offset-xxl-11 {
        margin-left: 91.66666667%;
    }

}

/* ============================================= */
/* !!!!          NICE SELECT CSS           !!!! */
/* ============================================= */
.nice-select {
    -webkit-tap-highlight-color: transparent;
    background-color: transparent;
    border: solid 1px var(--second-color);
    cursor: pointer;
    display: block;
    font-family: inherit;
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    outline: none;
    position: relative;
    text-align: left !important;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    padding: 10px 35px 10px 15px;
    width: 100%;
    -moz-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    -ms-border-radius: 50px;
    -o-border-radius: 50px;
}

.nice-select:after {
    content: '';
    display: block;
    height: 10px;
    width: 11px;
    pointer-events: none;
    position: absolute;
    right: 15px;
    top: 50%;
    background: url(../images/menu-dropdown.svg);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: 11px;
    -webkit-transition: -webkit-transform .3s linear;
    transition: -webkit-transform .3s linear;
    -o-transition: transform .3s linear;
    transition: transform .3s linear;
    transition: transform .3s linear, -webkit-transform .3s linear;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
}

.nice-select.open:after {
    transform: translateY(-50%) rotate(180deg);
    -webkit-transform: translateY(-50%) rotate(180deg);
    -moz-transform: translateY(-50%) rotate(180deg);
    -ms-transform: translateY(-50%) rotate(180deg);
    -o-transform: translateY(-50%) rotate(180deg);
}

.nice-select.open .list {
    opacity: 1;
    pointer-events: auto;
    -webkit-transform: scale(1) translateY(0);
    -ms-transform: scale(1) translateY(0);
    transform: scale(1) translateY(0);
    -moz-transform: scale(1) translateY(0);
    -o-transform: scale(1) translateY(0);
}

.nice-select.disabled {
    border-color: var(--border-color);
    color: var(--border-color);
    pointer-events: none;
}

.nice-select.disabled:after {
    border-color: #cccccc;
}

.nice-select.wide {
    width: 100%;
}

.nice-select.wide .list {
    left: 0 !important;
    right: 0 !important;
}

.nice-select.right {
    float: right;
}

.nice-select.right .list {
    left: auto;
    right: 0;
}

.nice-select.small {
    font-size: 12px;
    height: 36px;
    line-height: 34px;
}

.nice-select.small:after {
    height: 4px;
    width: 4px;
}

.nice-select.small .option {
    line-height: 34px;
    min-height: 34px;
}

.nice-select .list {
    color: var(--black);
    background-color: var(--white);
    box-shadow: 0 0 0 1px rgba(68, 68, 68, 0.7);
    box-sizing: border-box;
    margin-top: 0;
    opacity: 0;
    overflow: hidden;
    padding: 0;
    pointer-events: none;
    position: absolute;
    top: 100%;
    left: 0;
    -webkit-transform-origin: 50% 0;
    -ms-transform-origin: 50% 0;
    transform-origin: 50% 0;
    -webkit-transform: scale(0.75) translateY(-21px);
    -ms-transform: scale(0.75) translateY(-21px);
    transform: scale(0.75) translateY(-21px);
    -webkit-transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out;
    transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out;
    z-index: 2;
    width: 100%;
    -moz-transform: scale(0.75) translateY(-21px);
    -o-transform: scale(0.75) translateY(-21px);
    -moz-transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out;
    -ms-transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out;
    -o-transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
}

.nice-select .list:hover .option:not(:hover) {
    background-color: transparent !important;
}

.nice-select .option {
    cursor: pointer;
    font-weight: 500;
    list-style: none;
    outline: none;
    padding-left: 14px;
    padding-right: 14px;
    text-align: left;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    font-size: 12px;
    letter-spacing: 0.5px;
    padding: 10px 15px;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    margin: 0 !important;
}

.nice-select .option:hover,
.nice-select .option.focus,
.nice-select .option.selected.focus {
    background-color: #eae9e9;
}

.nice-select .option.selected {
    font-weight: bold;
}

.nice-select .option.disabled {
    background-color: transparent;
    color: #999;
    cursor: default;
}

.no-csspointerevents .nice-select .list {
    display: none;
}

.no-csspointerevents .nice-select.open .list {
    display: block;
}

/* ============================================= */
/* !!!!          COMMON BUTTON              !!!! */
/* ============================================= */
.btn {
    position: relative;
    z-index: 1;
    text-align: center;
    text-transform: capitalize;
    padding: 12px 20px;
    font: normal 600 16px/1 var(--first-font);
    letter-spacing: 2px;
    color: var(--white);
    background-color: var(--theme-color);
    border: 1px solid var(--theme-color);
    display: inline-flex;
    align-items: center;
    -webkit-align-items: center;
    justify-content: center;
    -webkit-justify-content: center;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    outline: none;
    border-radius: 25px;
    -webkit-border-radius: 25px;
    -moz-border-radius: 25px;
    -ms-border-radius: 25px;
    -o-border-radius: 25px;
    transition: all 500ms ease-in-out 0s;
    -webkit-transition: all 500ms ease-in-out 0s;
    -moz-transition: all 500ms ease-in-out 0s;
    -ms-transition: all 500ms ease-in-out 0s;
    -o-transition: all 500ms ease-in-out 0s;
}



.img-wrapper {
    position: relative;
    width: 100%;
    display: block;
}

.img-wrapper img {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    object-fit: cover;
    object-position: center;
}

/* ============================================= */
/* !!!!             FORM  CSS               !!!! */
/* ============================================= */
.form-control,
input:not([type="submit"]),
input:not([type="checkbox"]),
input:not([type="button"]),
input:not([type="radio"]),
select,
textarea {
    position: relative;
    display: block;
    width: 100%;
    padding: 12px 20px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
    color: var(--black);
    background: transparent;
    border: 1px solid var(--border-color);
    border-radius: 50px;
}

.form-control,
textarea,
input {
    font-family: var(--first-font);
}

textarea {
    resize: none;
}

sup {
    top: -0.5em;
}

sub,
sup {
    position: relative;
    font-size: 15px;
    line-height: 1;
    font-weight: 500;
    margin-left: 5px;
}

.form-group label sup {
    color: red;
    font-size: 10px;
    line-height: 0;
    margin-right: 3px;
}

/***** COMMON CSS ****/

body.no-scroll {
    overflow: hidden;
    position: relative;
}

.pt {
    padding-top: 70px;
}

.pb {
    padding-bottom: 70px;
}

.subtitle {
    font-size: var(--h4);
    margin-bottom: 15px;
    color: var(--theme-color);
}

.section-title {
    margin-bottom: 30px;
    letter-spacing: 2px;
    text-transform: uppercase;

}

.section-title h2 {
    position: relative;
    display: inline-block;
}

.section-title p {
    text-transform: none;
    letter-spacing: 0;
}

/* ========overlay======= */
.overlay {
    transition: all 500ms ease-in-out 0s;
    -webkit-transition: all 500ms ease-in-out 0s;
    -moz-transition: all 500ms ease-in-out 0s;
    -ms-transition: all 500ms ease-in-out 0s;
    -o-transition: all 500ms ease-in-out 0s;
}

.overlay.active,
.cartopen .overlay::after,
.active-menu .overlay::after,
.overlay.subscribe-overlay {
    content: " ";
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .7);
    z-index: 4;
}

/* ========overlay======= */

/*** swiper slider ****/
/* .swiper {
    overflow: hidden;
} */

.swiper-button-prev,
.swiper-button-next {
    position: relative;
    inset: 0;
    margin: 0;
    height: 40px;
    width: 40px;
    z-index: 2;
    outline: none;
    cursor: pointer;
    border: 1px solid var(--black);
    border-radius: 100%;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    -ms-border-radius: 100%;
    -o-border-radius: 100%;
    background-image: none;
}

.swiper-button-prev:after,
.swiper-button-next:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-image: url(../images/left-arrow.png);
    background-repeat: no-repeat;
    background-size: auto;
    background-position: left;
    transition: all 500ms ease-in-out 0s;
    -webkit-transition: all 500ms ease-in-out 0s;
    -moz-transition: all 500ms ease-in-out 0s;
    -ms-transition: all 500ms ease-in-out 0s;
    -o-transition: all 500ms ease-in-out 0s;
}

.swiper-button-next:after {
    background-image: url(../images/right-arrow.png);
    transform: translateX(-20px);
    background-position: right;
}

.swiper-button-prev:after {
    transform: translateX(20px);
}



.arrow-wrapper {
    max-width: 130px;
    width: 100%;
    margin: 50px 0 0 0;
    justify-content: space-between;
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
    pointer-events: unset;
    opacity: 1;
    visibility: visible;
    display: block;
}

/*


.swiper-button-next:after,
.swiper-button-prev:after {
    font-size: 20px;
    color: var(--white);
}

.swiper-button-next {
    right: 0;
    left: auto;
    transform: translate3d(100%, 0, 0);
    -webkit-transform: translate3d(100%, 0, 0);
    -moz-transform: translate3d(100%, 0, 0);
    -ms-transform: translate3d(100%, 0, 0);
    -o-transform: translate3d(100%, 0, 0);
}

.swiper-button-prev {
    left: 0;
    right: auto;
    transform: translate3d(-100%, 0, 0);
    -webkit-transform: translate3d(-100%, 0, 0);
    -moz-transform: translate3d(-100%, 0, 0);
    -ms-transform: translate3d(-100%, 0, 0);
    -o-transform: translate3d(-100%, 0, 0);
}

.swiper-button-prev::after,
.swiper-button-next::after {
    display: none;
}

.swiper:hover .swiper-button-prev,
.swiper:hover .swiper-button-next {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
}

.swiper-button-next svg {
    transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
}

.swiper-button-next svg path,
.swiper-button-prev svg path {
    fill: var(--black);
}

.swiper-button-next:hover,
.swiper-button-prev:hover {
    background-color: var(--grey);
} */


/* ============================================= */
/* !!!!                 Header              !!!! */
/* ============================================= */
.site-header {
    position: relative;
    background-color: var(--white);
}

.site-header.fixed .sticky-header {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    z-index: 3;
    width: auto;
    background-color: var(--white);
    box-shadow: 0 2px 2px #0000001a;
    -webkit-box-shadow: 0 2px 2px rgba(0, 0, 0, .1);
    -moz-box-shadow: 0 2px 2px rgba(0, 0, 0, .1);
    -ms-box-shadow: 0 2px 2px rgba(0, 0, 0, .1);
    -o-box-shadow: 0 2px 2px rgba(0, 0, 0, .1);
    transition: all 500ms ease-in-out 0s;
    -webkit-transition: all 500ms ease-in-out 0s;
    -moz-transition: all 500ms ease-in-out 0s;
    -o-transition: all 500ms ease-in-out 0s;
    -ms-transition: all 500ms ease-in-out 0s;
}

.site-header .main-navigationbar {
    padding: 15px 0;
}

.site-header .main-navigationbar .logo-col {
    max-width: 100px;
    width: 100%;
}

.site-header .main-navigationbar .logo-col a {
    display: block;
}



.site-header .main-navigationbar .menu-items-col .main-nav>li:not(:last-of-type) {
    padding-right: 25px;
}

.site-header .main-navigationbar .menu-items-col .main-nav>li a {
    position: relative;
    font-size: 15px;
    text-transform: uppercase;
}

.site-header .contact-btn svg {
    width: 15px;
    height: 15px;
}

/* ******** mobile menu button ********* */

.menu-item-right ul li:not(:first-of-type) {
    margin-left: 15px;
}

.site-header .mobile-menu {
    display: none;
}

.site-header .mobile-menu .mobile-menu-button {
    display: inline-block;
    padding: 7px 10px;
    border-radius: 15px 0px 15px 0px;
}

.site-header .mobile-menu .mobile-menu-button div {
    width: 20px;
    height: 3px;
    margin: 3px 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background: var(--second-color);
    transition: all ease-in-out 0.4s;
    -webkit-transition: all ease-in-out 0.4s;
    -moz-transition: all ease-in-out 0.4s;
    -ms-transition: all ease-in-out 0.4s;
    -o-transition: all ease-in-out 0.4s;
}

.change .one {
    transform: translate(0, 6px) rotate(-45deg);
    -webkit-transform: translate(0, 6px) rotate(-45deg);
    -moz-transform: translate(0, 6px) rotate(-45deg);
    -ms-transform: translate(0, 6px) rotate(-45deg);
    -o-transform: translate(0, 6px) rotate(-45deg);
}

.change .two {
    opacity: 0;
}

.change .three {
    transform: translate(0, -6px) rotate(45deg);
}

/* ============================================= */
/* !!!!               FOOTER CSS            !!!! */
/* ============================================= */

/********* FOOTER CSS START ********/
.site-footer {
    position: relative;
    z-index: 1;
    background-color: #1C1C1C;
    color: var(--white);
}

.site-footer .footer-wrapper {
    padding: 100px 0 70px;
}

.footer-wrapper .footer-left {
    max-width: 450px;
    width: 100%;
}

.site-footer .footer-logo {
    padding-bottom: 40px;
}

.site-footer .footer-logo a {
    max-width: 180px;
    width: 100%;
}

.site-footer .subscribe-form-wrapper {
    margin: 0 0 20px 0;
}

.site-footer .subscribe-form-wrapper .input-wrapper {
    border: 1px solid var(--border-color);
    padding: 5px 5px 5px 12px;
}

.site-footer .subscribe-form-wrapper input {
    color: var(--white);
    flex: 1;
    margin: 0 15px 0 0;
    border: 0;
    padding: 0;
}

.site-footer .subscribe-form-wrapper input::placeholder {
    color: var(--white);
}

.site-footer .subscribe-form-wrapper .subscribe-btn {
    padding: 10px 15px;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -ms-border-radius: 0;
    -o-border-radius: 0;
}

.site-footer .subscribe-form-wrapper .subscribe-btn:hover,
.site-footer .subscribe-form-wrapper .subscribe-btn:focus {
    color: var(--white);
    border-color: var(--white);
}

.footer-wrapper .footer-left p {
    color: #c8c8c8;
}

/* footer-right */

.site-footer .footer-right {
    max-width: calc(100% - 500px);
    width: 100%;
}

.site-footer .footer-col {
    flex: 1;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    width: 100%;
}

.site-footer .footer-col:not(:first-child) {
    padding-left: 40px;
}

.site-footer .footer-col h2 {
    position: relative;
    font: normal 700 22px/1.4 var(--second-font);
    text-transform: capitalize;
    margin: 0 0 25px 0;
}

.site-footer .footer-col h2:after {
    content: "";
    position: absolute;
    bottom: -6px;
    left: 0;
    width: 15%;
    height: 2px;
    background-color: var(--theme-color);
}

.site-footer .footer-widget ul li {
    color: #c8c8c8;
    text-transform: capitalize;
    transition: all 500ms ease-in-out 0s;
    -webkit-transition: all 500ms ease-in-out 0s;
    -moz-transition: all 500ms ease-in-out 0s;
    -ms-transition: all 500ms ease-in-out 0s;
    -o-transition: all 500ms ease-in-out 0s;
}

.site-footer .footer-widget ul.acnav-list1>li:not(:last-of-type) {
    margin-bottom: 12px;
}

.site-footer .footer-widget ul li a {
    border-bottom: 1px solid transparent;
}



.site-footer .footer-widget ul li a,
.site-footer .footer-widget ul li p {
    display: inline;
    font: normal 500 18px/1.1 var(--first-font);
}

.site-footer .footer-widget ul li span {
    color: var(--white);
    font-weight: 500;
}

/* footer-bottom */
.site-footer .footer-bottom {
    padding: 15px 0px;
    border-top: 1px solid var(--border-color);
}

.footer-bottom p {
    font: normal 400 18px/1.2 var(--first-font);
}

.site-footer .footer-bottom .footer-bottom-inner p a {
    text-decoration: underline;
    text-underline-offset: 4px;
}

.site-footer .footer-social-icon li:not(:last-of-type) {
    margin-right: 15px;
}

.site-footer .footer-social-icon li a {
    display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    background-color: var(--white);
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
}

.site-footer .footer-social-icon li a svg {
    width: 16px;
    height: 16px;
}

.site-footer .footer-social-icon li svg path {
    fill: var(--black);
}

/* ============================================= */
/* !!!!             HOME BANNER           !!!! */
/* ============================================= */
/********* HOME BANNER START ********/
.home-banner-sec {
    position: relative;
    background: linear-gradient(244.11deg, #F7F5F1 30.16%, rgba(247, 245, 241, 0) 99.72%);
}

.offset-right {
    margin-right: calc((100% - 1600px) / 2);
    margin-left: 0;
    padding-right: 15px;
}

.home-banner-sec .banner-content {
    border: 1px solid var(--border-color);
    background: rgb(255 255 255 / 63%);
    padding: 30px;
    border-radius: 25px;
    box-shadow: 0px 1px 12px 0px #0000001f;
}

.btn-white {
    border: 1px solid var(--white);
}

.btn-white:hover {
    border: 1px solid var(--theme-color);
}

.home-banner-sec .banner-content .section-title {
    margin-bottom: 20px;
    max-width: 75%;
    width: 100%;
}

.home-banner-sec .banner-content-inner .btn-white {
    margin: 20px 0 0;
}

.gallery-thumbs .swiper-button-prev,
.gallery-thumbs .swiper-button-next {
    position: relative;
    visibility: visible;
    transform: none;
    opacity: 1;
    display: block !important;
}

.gallery-thumbs .swiper-button-prev::after {
    display: block !important;
}

.gallery-thumbs img {
    border-radius: 100%;
}

.home-banner-sec .gallery-main {
    padding-bottom: 40px;
}

.home-banner-sec .product-item-img {
    position: relative;
    padding-bottom: 70%;
    margin-right: -30%;
    display: block;
}

.home-banner-sec .product-item-img img {
    position: absolute;
    inset: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
    border-radius: 0 250px 250px 0;
    z-index: -1;
}

.home-banner-sec .offset-right {
    position: relative;
}

.home-banner-sec .working-hrs-wrp ul li {
    display: flex;
    align-items: center;
}

.home-banner-sec .working-hrs-wrp h3 {
    color: var(--theme-color);
}

.home-banner-sec .working-hrs-wrp {
    /* position: absolute;
    right: 15px;
    bottom: 0;*/
    position: relative;
    z-index: 1;
    /* max-width: 85%; */
    margin: -15% 0 0;
}

.home-banner-sec .working-hrs-wrp ul li span {
    max-width: 40%;
    width: 100%;
}

.home-banner-sec .working-hrs-wrp ul li p {
    flex: 1;
}

.home-banner-sec .working-hrs-wrp ul li:not(:last-of-type) {
    margin-bottom: 15px;
}

.home-banner-sec .working-hrs-wrp ul li .close {
    color: red;
}

.home-banner-sec .home-design {
    position: absolute;
    bottom: 13%;
    left: 15%;
}


.home-banner-sec .arrow-wrapper {
    gap: 40px;
    width: 100%;
    margin: 0 auto;
    align-items: center;
    height: 100%;
}


/********* PHOTO ABOUT SEC START ********/

.photo-about-sec .photo-about-left-wrp {
    max-width: 75%;
    width: 100%;
}

.photo-about-sec .section-title h2 {
    margin-bottom: 20px;
}

.photo-about-sec .counter-wrp {
    position: relative;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    background-color: var(--second-color);
    padding: 20px 20px 20px 0px;
    border-radius: 0px 60px 60px 0px;
}

.photo-about-sec .section-title {
    margin-bottom: 50px;
}

.photo-about-sec .counter-wrp::before {
    content: '';
    position: absolute;
    left: -50vw;
    width: 50vw;
    height: 100%;
    top: 0;
    background: linear-gradient(244.11deg, #F7F5F1 30.16%, rgba(247, 245, 241, 0) 99.72%);
}

.photo-about-sec .counter-item span {
    display: block;
    margin-bottom: 15px;
    font-size: 22px;
    font-family: var(--second-font);
}


.photo-about-sec .counter-wrp li {
    flex: 1;
    text-align: center;
}

.photo-about-sec .counter-wrp li:not(:last-of-type) {
    border-right: 2px solid var(--theme-color);
}


.photo-about-sec .counter-wrp .counting {
    font-family: var(--second-font);
    font-size: 30px;
    color: var(--theme-color);
}

.photo-about-sec .counting::after {
    content: " +";
    display: inline-block;
}

.photo-about-sec .photo-about-right-wrp .about-photo {
    height: 100%;
    width: 100%;
}

.photo-about-sec .photo-about-right-wrp {
    position: relative;
}

.photo-about-sec .photo-about-right-wrp .design-1 {
    position: absolute;
    top: 0;
    left: -30%;
}

.photo-about-sec .photo-about-right-wrp .design-2 {
    position: absolute;
    bottom: 0;
    left: -30%;
}

/********* PHOTO SERVICE SECTION START ********/
.photo-service-sec {
    position: relative;
    z-index: 1;
    background-color: var(--second-color);
    padding-bottom: 20px;
}

.photo-service-sec .photo-card .img-wrapper {
    padding-top: 80%;
    max-width: 60%;
    width: 100%;
    margin: 0 auto;
}

.photo-service-sec .photo-card .img-wrapper img {
    border-radius: 300px;
}

.photo-service-sec .photo-card-content {
    text-align: center;
    margin-top: 20px;
    text-transform: uppercase;
}

.photo-service-sec p {
    text-transform: capitalize;
}

.photo-service-sec .photo-card-content span {
    display: block;
    margin-bottom: 15px;
    font-size: 20px;
}

.photo-service-sec .photo-card-content h5 {
    text-transform: uppercase;
    font-family: var(--second-font);
}

.photo-service-sec .photo-card {
    margin-bottom: 50px;
}

.photo-service-sec .section-title h2 {
    margin-bottom: 25px;
}



/********* PHOTO BANNER SECTION START ********/
.photo-banner-sec {
    background-position: 50% 50%;
    position: relative;
    z-index: 1;
    background-repeat: no-repeat;
    background-size: cover;
    color: var(--white);
    text-align: center;
}

.photo-banner-sec .text-image {
    display: inline-block;
    min-height: 40px;
    min-width: 70px;
    margin: 0 12px 0 20px;
}

.photo-banner-sec h2 {
    margin-bottom: 30px;
    line-height: 1.3;
}

.photo-banner-sec h2 b {
    display: inline;
    font-weight: normal;
    opacity: 0.6;
}

/********* APPOINTMENT SECTION START ********/

.appointment-sec {
    position: relative;
    z-index: 1;
    background: linear-gradient(244.11deg, #F7F5F1 30.16%, rgba(247, 245, 241, 0) 99.72%);
}

.steps ul {
    display: flex;
    align-items: center;
}

.steps ul li {
    display: flex;
    align-items: center;
    gap: 10px;
    position: relative;
}

.steps ul li.active span {
    background-color: var(--theme-color);
}

.steps ul li:not(:last-of-type)::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 70px;
    border: 1px solid rgba(217, 217, 217, 1);
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

.steps ul li.active:not(:last-of-type)::after {
    border: 1px solid var(--theme-color);
}

.steps ul li span {
    display: flex;
    flex-shrink: 0;
    margin: 0;
    width: 30px;
    height: 30px;
    text-align: center;
    color: var(--white);
    background: rgba(136, 136, 136, 1);
    position: relative;
    justify-content: center;
    z-index: 1;
    align-items: center;
    -webkit-transition: all 0.4s ease-in-out 0;
    -moz-transition: all 0.4s ease-in-out 0;
    -ms-transition: all 0.4s ease-in-out 0;
    transition: all 0.4s ease-in-out 0;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    border-radius: 20px;
    -o-border-radius: 20px;
    font-family: var(--second-font);
}

.steps ul li:not(:last-of-type) {
    padding-right: 70px;
}

.form-group label {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
}

.form-group {
    margin-bottom: 20px;
}

.appointment-sec .appointment-wrp {
    padding: 30px;
    border: 1px solid var(--border-color);
    border-radius: 20px;
    background-color: var(--white);
}

.appointment-sec .step-btns {
    border-top: 1px dashed var(--border-color);
    padding-top: 25px;
    margin-top: 10px;
    display: flex;
    justify-content: end;
    gap: 15px;
}

.appointment-sec .appointment-wrp h3 {
    font-weight: 600;
    margin-bottom: 15px;
}

.appointment-sec .appointment-wrp .section-title {
    margin-bottom: 20px;
}

.checkbox-custom input {
    padding: 0;
    height: initial;
    width: initial;
    margin-bottom: 0;
    display: none;
    cursor: pointer;
}

.appointment-sec .checkbox-custom label {
    background: #FFF7E9;
    color: var(--black);
    font-size: 14px;
    width: 100%;
    gap: 10px;
    border: 1px solid var(--border-color);
}

.appointment-sec .checkbox-custom label svg {
    height: 16px;
    width: 16px;
}

.step-container {
    clear: both;
    display: none;
    left: 100%;
}

.step-container.active {
    display: block;
}

/* change steps color according theme start */
.steps ul li .services {
    background: var(--border-color);
    color: var(--black);
}

.steps ul li.active .services {
    background: var(--theme-color);
    color: var(--white);
}

/* change steps color according theme end */

/*********** 16-2-2024 *************/
.appointment-sec .check-box-div {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.appointment-sec .check-box-div li {
    max-width: 20%;
    flex: 0 0 20%;
    padding: 0px 15px 15px 0px;
}

.appointment-sec .checkbox-custom input:checked+label {
    background: var(--theme-color);
    color: var(--white);
}

.appointment-sec .checkbox-custom input:checked+label svg path {
    fill: var(--white);
}

.tab-content {
    visibility: hidden;
    opacity: 0;
    height: 0;
}

.tab-content.active {
    visibility: visible;
    opacity: 1;
    height: 100%;
}

.appointment-sec .tabs {
    display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
    gap: 15px;
    flex-wrap: wrap;
    border-bottom: 1px solid var(--border-color);
    margin-bottom: 20px;
}

.appointment-sec .tabs li a {
    padding: 0px 0px 10px;
    color: #888888;
    letter-spacing: 1px;
    position: relative;
    font-size: 16px;
    font-weight: 600;
    border-bottom: 1px solid transparent;
}

.appointment-sec .tabs li.active a {
    color: var(--theme-color);
    border-bottom: 1px solid var(--theme-color);
}

.appointment-sec .form-group input::placeholder {
    color: #888888;
}

.radio-group input[type="radio"] {
    display: none;
    padding: 0;
    border: 0;
    background: transparent;
}

.payment-method-form .radio-group {
    margin-bottom: 15px;
}

.payment-method-form .radio-group label {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    cursor: pointer;
    gap: 15px;
    border: 1px solid var(--border-color);
    border-radius: 50px;
    padding: 10px 30px;
    transition: all ease-in-out 0.5s;
    -webkit-transition: all ease-in-out 0.5s;
    -moz-transition: all ease-in-out 0.5s;
    -ms-transition: all ease-in-out 0.5s;
    -o-transition: all ease-in-out 0.5s;
}

.payment-method-form .radio-img img {
    max-width: 40px;
    max-height: 40px;
}

.radio-group label::before {
    content: "";
    position: absolute;
    width: 20px;
    height: 20px;
    background-color: transparent;
    border: 1px solid var(--border-color);
    border-radius: 50%;
    top: 50%;
    right: 30px;
    transform: translateY(-50%);
    transition: border-color 400ms ease;
    -webkit-transition: border-color 400ms ease;
    -moz-transition: border-color 400ms ease;
    -ms-transition: border-color 400ms ease;
    -o-transition: border-color 400ms ease;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
}

.radio-group label::after {
    content: "";
    position: absolute;
    width: 19px;
    height: 19px;
    background-color: var(--theme-color);
    border: 1px solid var(--border-color);
    border-radius: 50%;
    top: 50%;
    right: 30px;
    transform: translateY(-50%) scale(0);
    -webkit-transform: translateY(-50%) scale(0);
    -moz-transform: translateY(-50%) scale(0);
    -ms-transform: translateY(-50%) scale(0);
    -o-transform: translateY(-50%) scale(0);
    transition: transform 400ms ease;
    -webkit-transition: transform 400ms ease;
    -moz-transition: transform 400ms ease;
    -ms-transition: transform 400ms ease;
    -o-transition: transform 400ms ease;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
}

.radio-group input[type="radio"]:checked+label::after {
    transform: translateY(-50%) scale(0.55);
    -webkit-transform: translateY(-50%) scale(0.55);
    -moz-transform: translateY(-50%) scale(0.55);
    -ms-transform: translateY(-50%) scale(0.55);
    -o-transform: translateY(-50%) scale(0.55);
}

/* ============================================= */
/* !!!!            testimonial-sec            !!!! */
/* ============================================= */
.testimonial-sec {
    position: relative;
    background: var(--second-color);
    padding: 100px 0;
}

.testimonial-slider {
    padding-top: 20px;
}

.testimonial-sec h2 {
    position: absolute;
    right: 0;
    top: 0;
    font-size: 90px;
    font-weight: 600;
    letter-spacing: 6px;
    color: #100F1709;
    text-transform: uppercase;
    z-index: 1;

}

.testimonial-sec .text-slider {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
}

.testimonial-card .testimonial-inner {
    display: flex;
    align-items: center;
    gap: 20px;
}

.testimonial-card .testimonial-image {
    position: relative;
    padding-top: 30%;
    max-width: 40%;
    width: 100%;
    border-radius: 15px;
    overflow: hidden;
}

.testimonial-card .testimonial-image img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.testimonial-card .testimonial-content {
    flex: 1;
}

.testimonial-card .testimonial-content h5 {
    margin-bottom: 15px;
}

.testimonial-card .testimonial-content p {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.testimonial-slider .arrow-wrapper {
    position: absolute;
    right: 20%;
    bottom: 0;
}


/* ============================================= */
/* !!!!             our-team-sec            !!!! */
/* ============================================= */
.our-team-sec .flower-vector-img {
    right: 25%;
}

.our-team-slider {
    padding: 50px 0 0 0;
    overflow: hidden;
}

.our-team-img {
    position: relative;
    padding-bottom: 100%;
    max-width: 425px;
}

.our-team-img img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
    border-radius: 300px;
    -webkit-border-radius: 300px;
    -moz-border-radius: 300px;
    -ms-border-radius: 300px;
    -o-border-radius: 300px;
}

/* ============================================= */
/* !!!!             portfolio-sec           !!!! */
/* ============================================= */
.portfolio-sec,
.our-team-sec {
    position: relative;
}

.flower-vector-img {
    position: absolute;
    top: 100px;
    right: 100px;
}

.portfolio-slider {
    padding: 50px 0;
}

.portfolio-img {
    position: relative;
    padding-bottom: 55%;
}

.portfolio-img img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 336px;
}


.portfolio-slider .swiper-slide {
    transform: scale(0.9);
    -webkit-transform: scale(0.9);
    -moz-transform: scale(0.9);
    -ms-transform: scale(0.9);
    -o-transform: scale(0.9);
    transition: all ease-in-out 0.5s;
}

.portfolio-slider .swiper-slide.swiper-slide-active {
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
}

.portfolio-content,
.our-team-content {
    margin: 25px 0 0;
}

.portfolio-content .pro-year p,
.our-team-content .team-designation p {
    margin: 8px 0 0 0;
    text-transform: uppercase;
    font: var(--h3);
    font-weight: 500;
}

/* ============================================= */
/* !!!!               article           !!!! */
/* ============================================= */
.article-sec {
    position: relative;
    background-color: var(--second-color);
}

.article-slider-wrp {
    margin: 50px 0 0 0;
}

.article-card-inner {
    border: 1px solid var(--border-color);
    border-radius: 188px;
    background-color: var(--white);
    padding: 20px;
}

.article-card-inner .article-card-image {
    max-width: 40%;
    width: 100%;
}

.article-card-image .article-image {
    position: relative;
    padding-bottom: 80%;
    display: block;
}

.article-card-image .article-image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
    border-radius: 140px;
    -webkit-border-radius: 140px;
    -moz-border-radius: 140px;
    -ms-border-radius: 140px;
    -o-border-radius: 140px;
}

.swiper-grid-column>.swiper-wrapper{
    flex-direction: row !important;
}

.article-content {
    flex: 1;
    padding: 0 0 0 15px;
}

.author-name p,
.article-content-top .comment {
    font-size: 16px;
}

.author-name {
    margin-bottom: 8px;
}

.article-content-top h6 {
    margin-bottom: 8px;
    line-height: 1.2;
    font-family: var(--second-font);
}

.article-content-top h6 a {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.article-content-top .comment {
    display: block;
    margin-bottom: 15px;
}

.article-content-bottom a {
    font: normal 500 18px/1.1 var(--second-font);
    color: var(--theme-color);
    border-bottom: 1px solid transparent;
}

.article-content-bottom a:hover {
    border-color: var(--theme-color);
}

.star-vector-img {
    position: absolute;
    top: 50px;
    right: 30%;
}



/* ============================================= */
/* !!!!               contact-page           !!!! */
/* ============================================= */

.contact-us .contact-left-inner {
    background-color: var(--second-color);
    border-radius: 42px;
    text-align: center;
}

.contact-us .contact-form .form-container {
    padding: 30px;
}

.contact-us .contact-left-inner .form-container:last-of-type {
    padding-top: 0;
}

.contact-left-inner .form-container .form-control {
    background-color: var(--white);
    border-radius: 24px;
    padding: 15px 20px;
}

.contact-left-inner .form-container .col-12:last-of-type .form-group {
    margin-bottom: 0;
}

.contact-left-inner .form-container .contact-btn {
    max-width: 170px;
    width: 100%;
}

/* contact-right-inner */
.contact-right-inner {
    position: relative;
    max-width: 580px;
    width: 100%;
    height: 100%;
}

.contact-right-bottom {
    margin: 20px 0 0 0;
    padding: 20px 0 0 0;
    border-top: 1px dashed var(--border-color);
}

.contact-right-bottom ul li:not(:last-of-type) {
    margin-bottom: 15px;
}


.contact-right-bottom ul li p span {
    font-weight: 500;
}

.vector-img {
    position: absolute;
    right: 20%;
    bottom: 0;
}

/* contact-direction-sec */
.contact-direction-sec {
    margin: 70px 0;
}

.contact-direction-sec .contact-direction-inner iframe {
    width: 100%;
    height: 500px;
}

/* ============================================= */
/* !!!!               gallery-sec           !!!! */
/* ============================================= */

.gallery-sec {
    background-color: var(--second-color);
}

.gallery-sec h2 {
    font-size: 90px;
    font-weight: 600;
    letter-spacing: 12px;
    color: #100F1709;
    text-transform: uppercase;
    margin: -100px 0 0 0;
    position: relative;
    z-index: 1;
}

.gallery-title {
    padding: 50px 15px 30px;
}

.gallery-image img {
    width: 100%;
    height: 100%;
}

/* Appointment info - service tax and promo code start */

.appointment_info_details p {
    background-color: var(--second-color);
    color: var(--black);
    border: 1px solid var(--theme-color);
    font-size: 18px;
    line-height: 1;
    display: block;
    padding: 10px 20px;
    border-radius: 10px;
    margin-bottom: 0;
}

/* Appointment info - service tax and promo code end */

.promo-code-wrapper {
    margin-top: 8px;
}

