/*
-------------------------------
Global Styles
-------------------------------
*/
body {
	font-family: Trebuchet MS, sans-serif;
	font-size: 15px;
	line-height: 1.6;
	
}

* {
	margin: 0;
	padding: 0;
	border: 0;
	outline: none;
}

p {
	font-size: 15px;
	line-height: 1.6;
}

a {
	font-family: Trebuchet MS, sans-serif;
	font-size: 15px;
	
}

a:hover {
	color: #3367c1;
}

a:focus {
	outline: none;
	
}

a:hover,
a:active,
a:visited,
a:focus {
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
}

.btn {
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 6px 15px;
	color: #fff;
	text-decoration: none;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
	border-radius: 0.5rem;
	-webkit-border-radius: 0.5rem;
}

.btn i {
	margin-left: 5px;
}

button:focus {
	outline: none;
}

.form-group {
    width: 100%;
}

/* Unified button shape across the frontend */
.btn,
button,
input[type="submit"],
input[type="button"],
a.btn,
.button a,
.button-df a,
.button-sm a,
.button-df-animated a,
.button-sm-animated a,
.button-animated li a,
.call-us .button a,
.footer-item .btn,
.form-button .btn,
.contact-form .btn,
.booking-form .btn,
.booking-actions .btn,
.comment-form .btn,
.review-form .btn,
.coupon-cart .btn,
.payment-order-button a,
.newsletter-btn,
.site-switcher-btn,
.faq-btn {
	border-radius: 0.5rem !important;
	-webkit-border-radius: 0.5rem !important;
	line-height: 1.5;
	text-decoration: none;
}

.button-df-animated a:after,
.button-sm-animated a:after,
.button-animated li a:after,
.call-us .button a:after {
	border-radius: 0.5rem !important;
	-webkit-border-radius: 0.5rem !important;
}

.owl-nav .owl-prev,
.owl-nav .owl-next,
.slider-one .owl-nav .owl-prev,
.slider-one .owl-nav .owl-next,
.slider-two .owl-nav .owl-prev,
.slider-two .owl-nav .owl-next,
.about-carousel .owl-nav .owl-prev,
.about-carousel .owl-nav .owl-next,
.single-ser-carousel .owl-nav .owl-prev,
.single-ser-carousel .owl-nav .owl-next,
.portfolio-carousel .owl-nav .owl-prev,
.portfolio-carousel .owl-nav .owl-next,
.project-carousel .owl-nav .owl-prev,
.project-carousel .owl-nav .owl-next,
.team-carousel .owl-nav .owl-prev,
.team-carousel .owl-nav .owl-next,
.testimonial-carousel .owl-nav .owl-prev,
.testimonial-carousel .owl-nav .owl-next,
.testimonial-two-carousel .owl-nav .owl-prev,
.testimonial-two-carousel .owl-nav .owl-next,
.education-testimonials-slider .owl-nav .owl-prev,
.education-testimonials-slider .owl-nav .owl-next,
.blog-carousel .owl-nav .owl-prev,
.blog-carousel .owl-nav .owl-next,
.event-carousel .owl-nav .owl-prev,
.event-carousel .owl-nav .owl-next,
.product-carousel .owl-nav .owl-prev,
.product-carousel .owl-nav .owl-next,
.owlproduct-carousel .owl-nav .owl-prev,
.owlproduct-carousel .owl-nav .owl-next {
	border-radius: 0.5rem !important;
	-webkit-border-radius: 0.5rem !important;
	border: 1px solid rgba(255, 255, 255, 0.85) !important;
	box-shadow: none !important;
}

.owl-nav .owl-prev,
.slider-one .owl-nav .owl-prev,
.slider-two .owl-nav .owl-prev,
.about-carousel .owl-nav .owl-prev,
.single-ser-carousel .owl-nav .owl-prev,
.portfolio-carousel .owl-nav .owl-prev,
.project-carousel .owl-nav .owl-prev,
.team-carousel .owl-nav .owl-prev,
.testimonial-carousel .owl-nav .owl-prev,
.testimonial-two-carousel .owl-nav .owl-prev,
.education-testimonials-slider .owl-nav .owl-prev,
.blog-carousel .owl-nav .owl-prev,
.event-carousel .owl-nav .owl-prev,
.product-carousel .owl-nav .owl-prev,
.owlproduct-carousel .owl-nav .owl-prev {
	border-top-right-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
	border-right-width: 0 !important;
}

.owl-nav .owl-next,
.slider-one .owl-nav .owl-next,
.slider-two .owl-nav .owl-next,
.about-carousel .owl-nav .owl-next,
.single-ser-carousel .owl-nav .owl-next,
.portfolio-carousel .owl-nav .owl-next,
.project-carousel .owl-nav .owl-next,
.team-carousel .owl-nav .owl-next,
.testimonial-carousel .owl-nav .owl-next,
.testimonial-two-carousel .owl-nav .owl-next,
.education-testimonials-slider .owl-nav .owl-next,
.blog-carousel .owl-nav .owl-next,
.event-carousel .owl-nav .owl-next,
.product-carousel .owl-nav .owl-next,
.owlproduct-carousel .owl-nav .owl-next {
	border-top-left-radius: 0 !important;
	border-bottom-left-radius: 0 !important;
	margin-left: -1px;
	border-left-width: 0 !important;
}

.slider-two .owl-nav .owl-prev:hover,
.slider-two .owl-nav .owl-next:hover,
.about-carousel .owl-nav .owl-prev:hover,
.about-carousel .owl-nav .owl-next:hover,
.single-ser-carousel .owl-nav .owl-prev:hover,
.single-ser-carousel .owl-nav .owl-next:hover,
.portfolio-carousel .owl-nav .owl-prev:hover,
.portfolio-carousel .owl-nav .owl-next:hover,
.project-carousel .owl-nav .owl-prev:hover,
.project-carousel .owl-nav .owl-next:hover,
.team-carousel .owl-nav .owl-prev:hover,
.team-carousel .owl-nav .owl-next:hover,
.testimonial-carousel .owl-nav .owl-prev:hover,
.testimonial-carousel .owl-nav .owl-next:hover,
.testimonial-two-carousel .owl-nav .owl-prev:hover,
.testimonial-two-carousel .owl-nav .owl-next:hover,
.education-testimonials-slider .owl-nav .owl-prev:hover,
.education-testimonials-slider .owl-nav .owl-next:hover,
.blog-carousel .owl-nav .owl-prev:hover,
.blog-carousel .owl-nav .owl-next:hover,
.event-carousel .owl-nav .owl-prev:hover,
.event-carousel .owl-nav .owl-next:hover,
.product-carousel .owl-nav .owl-prev:hover,
.product-carousel .owl-nav .owl-next:hover,
.owlproduct-carousel .owl-nav .owl-prev:hover,
.owlproduct-carousel .owl-nav .owl-next:hover {
	opacity: 0.78;
	filter: saturate(0.92);
	color: #fff !important;
}

.form-group input:focus {
	box-shadow: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: Trebuchet MS, sans-serif;
}

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

table {
    width: 100%;
}

table th {
    background: #ddd;
    font-weight: bold;
}

table td,
table th {
    padding: 8px;
    border: 1px solid #bbb;
    text-align: left;
}


.bg {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 0.75;
}

.bg-area {
	background: #f5f5f5;
}

.page-banner {
	position: relative;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	padding: 120px 0 70px;
	overflow: hidden;
}

.page-banner .bg {
	pointer-events: none;
}

.page-banner .container {
	position: relative;
	z-index: 1;
}

.page-banner h1 {
	margin: 0;
	color: #fff;
}

button {
	font-family: Trebuchet MS, sans-serif;
	font-size: 14px !important;
    cursor: pointer;
}

.form-control,
input,
textarea,
select{
	border-radius: var(--frontend-radius-lg) !important;
	-webkit-border-radius: var(--frontend-radius-lg) !important;
    font-family: 'Work Sans', sans-serif;
}

.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	-ms-backface-visibility: hidden;
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
}

.p-0 {
	padding: 0px !important;
}

.py-0 {
	padding-top: 0px !important;
    padding-bottom: 0px !important;
}

.px-0 {
	padding-left: 0px !important;
    padding-right: 0px !important;
}

.pl-10 {
	padding-left: 10px !important;
}

.pr-10 {
	padding-right: 10px !important;
}

.ptb {
	padding: 60px 0 !important;
}

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

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

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

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

.m-0 {
	margin: 0px !important;
}

.my-0 {
	margin-top: 0px !important;
    margin-bottom: 0px !important;
}

.mx-0 {
	margin-left: 0px !important;
    margin-right: 0px !important;
}

.mtb {
	margin: 60px 0 !important;
}

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

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

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

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

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

.flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-flex-direction: column;
	flex-direction: column;
}

.headline {
	text-align: center;
	position: relative;
    padding-bottom: 12px;
}

.headline h2 {
    font-size: 36px;
	font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 15px;
}
.headline h2 span{
    font-weight: 400 !important;
}
.headline h3 {
	font-family: 'Work Sans', sans-serif;
	font-size: 18px;
	font-weight: 400;
    margin-bottom: 15px;
    color: #777;
}
.hl-white {
	color: #fff !important;
}

.hl-white h2 {
	color: #fff !important;
}
.hl-white h3 {
	color: #fff !important;
}

.hl-left {
	text-align: left !important;
}

.headstyle h4 {
	display: inline-block;
	position: relative;
	font-size: 22px;
	font-weight: 700;
	padding-bottom: 9px;
	margin-bottom: 30px;
	text-transform: uppercase;
}

.headstyle h4:before {
	position: absolute;
	content: '';
	width: 100%;
	height: 0px;
	background: #3367c1;
	left: 0;
	bottom: 0;
}

.headstyle h4:after {
	position: absolute;
	content: '';
	width: 100%;
	height: 0px;
	background: #3367c1;
	left: 0;
	bottom: -5px;
}

.image-effect {
	position: relative;
	display: block;
	vertical-align: top;
	max-width: 100%;
}

.image-effect:before,
.image-effect:after {
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(255, 255, 255, .3);
	z-index: 6;
	-webkit-transition: transform .5s, opacity .2s ease-in-out 0s;
	-o-transition: transform .5s, opacity .2s ease-in-out 0s;
	transition: transform .5s, opacity .2s ease-in-out 0s;
	opacity: 0;
	filter: alpha(opacity=0);
}

.effect-item:hover .image-effect:before {
	-webkit-transform: scale(0, 1);
	-ms-transform: scale(0, 1);
	-o-transform: scale(0, 1);
	transform: scale(0, 1);
	opacity: 1;
	filter: alpha(opacity=100);
}

.effect-item:hover .image-effect:after {
	-webkit-transform: scale(1, 0);
	-ms-transform: scale(1, 0);
	-o-transform: scale(1, 0);
	transform: scale(1, 0);
	opacity: 1;
	filter: alpha(opacity=100);
}

.button a {
	display: inline-block;
	font-weight: 600;
	color: #fff;
	background: #3367c1;
	border-left: 5px solid;
	border-right: 5px solid;
	border-radius: 0px;
	padding: 13px 27px;
	text-decoration: none;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
}

.button a i {
	margin-left: 5px;
}

.button a:hover {
	background: #3367c1;
}

.button-bn a {
	font-weight: 600;
	text-decoration: none;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
}

.button-bn i {
	margin-left: 3px;
}

.button-bn a:hover {

}

/* button-df */
.button-df a {
    text-transform: uppercase;
	display: inline-block;
	font-weight: 700;
    letter-spacing: 0.5px;
	color: #fff;
	background: #3367c1;
	padding: 13px 27px;
	text-decoration: none;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
	border-radius: var(--frontend-radius);
	-webkit-border-radius: var(--frontend-radius);
}

.button-df a i {
	margin-left: 5px;
}

.button-df a:hover {
	background: #313131;
	color: #fff;
}

/* button-sm */
.button-sm a {
    text-transform: uppercase;
	display: inline-block;
	font-weight: 700;
    letter-spacing: 0.5px;
	color: #fff;
	background: #3367c1;
	padding: 6px 12px;
	text-decoration: none;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
}

.button-sm a i {
	margin-left: 5px;
}

.button-sm a:hover {
	background: #313131;
	color: #fff;
}

/* button-df-animated */
.button-df-animated {
    position: relative;
    max-width: 100%;
    text-transform: uppercase;
	margin-top: 15px;
	margin-right: 15px;
	-webkit-animation-duration: .8s;
	animation-duration: .8s;
	-webkit-animation-delay: .8s;
	animation-delay: .8s;
}

.button-df-animated a {
    display: inline-block;
    text-align: center;
    color: #ffffff;
    background-color: #3367c1;
    font-size: 14px;
    font-weight: 400;
    padding: 13px 35px;
    border-radius: var(--frontend-radius);
    letter-spacing: 0.15px;
    z-index: 1;
    position: relative;
}

.button-df-animated a:hover {
    text-decoration: none;
}

.button-df-animated a:after {
    position: absolute;
    left: 0;
    top: 0;
    color: #3268c1;
    background-color: #fff;
    width: 100%;
    height: 100%;
    border-radius: var(--frontend-radius);
    content: '';
    display: inline-block;
    -webkit-transition: all .3s;
    transition: all .3s;
    z-index: -1;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: all transform 300ms ease-out 200ms;
    transition: all transform 300ms ease-out 200ms;
}

.button-df-animated a:hover::after {
    width: 100%;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transition: -webkit-transform 300ms ease-out;
    transition: -webkit-transform 300ms ease-out;
    transition: transform 300ms ease-out;
    transition: transform 300ms ease-out, -webkit-transform 300ms ease-out;
}

.button-df-animated a i {
	margin-left: 5px;
}

/* button-sm-animated */
.button-sm-animated {
    position: relative;
    max-width: 100%;
    text-transform: uppercase;
	margin-top: 15px;
	margin-right: 15px;
	-webkit-animation-duration: .8s;
	animation-duration: .8s;
	-webkit-animation-delay: .8s;
	animation-delay: .8s;
}

.button-sm-animated a {
    display: inline-block;
    text-align: center;
    color: #ffffff;
    background-color: #3367c1;
    font-size: 14px;
    font-weight: 400;
    padding: 13px 35px;
    border-radius: var(--frontend-radius);
    letter-spacing: 0.15px;
    z-index: 1;
    position: relative;
}

.button-sm-animated a:hover {
    text-decoration: none;
}

.button-sm-animated a:after {
    position: absolute;
    left: 0;
    top: 0;
    color: #3268c1;
    background-color: #fff;
    width: 100%;
    height: 100%;
    border-radius: var(--frontend-radius);
    content: '';
    display: inline-block;
    -webkit-transition: all .3s;
    transition: all .3s;
    z-index: -1;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: all transform 300ms ease-out 200ms;
    transition: all transform 300ms ease-out 200ms;
}

.button-sm-animated a:hover::after {
    width: 100%;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transition: -webkit-transform 300ms ease-out;
    transition: -webkit-transform 300ms ease-out;
    transition: transform 300ms ease-out;
    transition: transform 300ms ease-out, -webkit-transform 300ms ease-out;
}

.button-sm-animated a i {
	margin-left: 5px;
}

.modal-footer .btn {
	cursor: pointer;
	-webkit-transition: all 0.4s ease;
	transition: all 0.4s ease;
}

.modal-footer .btn:hover {
	background: #313131;
	color: #fff;
}
.btn-subs {
	background: #313131!important;
	border-color: #313131!important;
}

/*
-------------------------------
Preloader
-------------------------------
*/
#preloader {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #fff;
	z-index: 999999;
}

#status {
	width: 200px;
	height: 200px;
	position: absolute;
	left: 50%;
	top: 50%;
	background-repeat: no-repeat;
	background-position: center;
	margin: -100px 0 0 -100px;
}

/*
-------------------------------
Header-Area
-------------------------------
*/
.header-area {
	clear: both;
	border-bottom: 1px solid #e8e8e8;
	padding: 10px 0;
	background: #3367c1;
}

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

.header-social li {
	position: relative;
	display: inline-block;
}

.header-social li:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 100%;
	background-color: #e9e9e9;
	top: 0;
	left: -15px;
}

.header-social li:first-child:before {
	display: none;
}

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

.social-bar li {
	display: inline-block !important;
	margin-right: 15px !important;
}

.social-bar li:last-child {
	margin-right: 0 !important;
}

.social-bar li:before {
	display: none;
}

.social-bar li a {
	color: #fff;
	text-decoration: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.social-bar li a:hover {
	color: #fff;
}

.language a {
	text-decoration: none;
	color: #fff;
    font-family: 'Work Sans', sans-serif;
    font-size: 13px;
}

.language a:hover {
	color: #fff;
}

.language i {
	margin-right: 7px;
}

.dropdown-menu a {
	text-decoration: none;
	
    font-family: 'Work Sans', sans-serif;
}

.dropdown-menu a:hover {
    background-color: transparent;
	color: #3367c1;
}

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

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

.header-info li {
	position: relative;
	display: inline-block;
	color: #fff;
	margin-left: 30px;
	font-size: 13px;
}

.header-info li:first-child {
	margin-left: 0;
}

.header-info li:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 100%;
	background-color: #e9e9e9;
	top: 0;
	left: -17px;
}

.header-info li:first-child:before {
	display: none;
}

.header-info li i {
	margin-right: 7px;
	color: #fff;
}

/*
-------------------------------
List style
-------------------------------
*/

.list-style ol, ul {
    list-style: none;
}
.list-styleul, ol {
    margin-top: 0;
    margin-bottom: 10px;
}
.list-style ul li {
    padding-left: 1.5em;
    text-indent: -.7em;
}
.list-style ul li::before {
    content: "\2BC0";
    font-weight: bold;
    display: inline-block;
    width: 1em;
    margin-left: -0.3em;
    color: #076fb6;
}


/*
-------------------------------
Logo and Menu
-------------------------------
*/
.logo {
	min-height: 87px;
    vertical-align: middle;
    padding-top: 11px;
    padding-bottom: 11px;
}

.logo img {
	width: auto;
	height: 65px;
    vertical-align: middle;
}

/*

новое меню

*/

.dropdown-submenu {
    position: relative;
}

.dropdown-submenu a::after {
    transform: rotate(-90deg);
    position: absolute;
    right: 6px;
    top: .8em;
}

.dropdown-submenu .dropdown-menu {
    top: 0;
    /*left: 100%;*/
    margin-left: .1rem;
    margin-right: .1rem;
}

.navbar-light .navbar-nav .nav-link {

}

.navbar-collapse {
	-webkit-transition: height 0.3s;
	transition: all 0.3s;
}

.collapse.navbar-collapse ul.navbar-nav li a {
	font-size: 15px;
	font-weight: 700;
    text-transform: uppercase;
	
	min-height: 87px;
    line-height: 87px;
    padding: 0 16px !important;
}

.collapse.navbar-collapse ul.navbar-nav li.nav-item:last-child a {
    padding-right: 0px !important;
}

.navbar-collapse.collapse.show ul.navbar-nav li.nav-item:last-child {
    padding-bottom: 30px !important;
}

.navbar-collapse ul.navbar-nav li a,
.navbar-collapse.collapse.show ul.navbar-nav li a {
	font-size: 15px;
	font-weight: 700;
    text-transform: uppercase;
	
	min-height: 35px;
    line-height: 35px;
    padding: 0 16px !important;
}

.navbar-collapse.collapse.show ul.navbar-nav li.nav-item:last-child a {

}

ul.navbar-nav li ul li a {
	font-weight: normal !important;
    text-transform: none !important;
}

ul.navbar-nav li.nav-item.dropdown ul.dropdown-menu li a {
	min-height: 35px;
    line-height: 35px;
}

ul.navbar-nav li ul li:first-child {
	animation-delay: 0.1s;
}

ul.navbar-nav li ul li:nth-child(2) {
	animation-delay: 0.2s;
}

ul.navbar-nav li ul li:nth-child(3) {
	animation-delay: 0.3s;
}

ul.navbar-nav li ul li:nth-child(4) {
	animation-delay: 0.4s;
}

ul.navbar-nav li ul li:nth-child(5) {
	animation-delay: 0.5s;
}

ul.navbar-nav li ul li:nth-child(6) {
	animation-delay: 0.6s;
}

ul.navbar-nav li ul li:nth-child(7) {
	animation-delay: 0.7s;
}

ul.navbar-nav li ul li:nth-child(8) {
	animation-delay: 0.8s;
}

ul.navbar-nav li ul li:nth-child(9) {
	animation-delay: 0.9s;
}

ul.navbar-nav li ul li:nth-child(10) {
	animation-delay: 1s;
}

#strickymenu.sticky {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	background-color: #fff;
	border-bottom: 1px solid #ddd;
	z-index: 999;
	-webkit-transition: height 0.3s;
	transition: all 0.3s;
}

#strickymenu.sticky .logo {
	min-height: 70px;
}

#strickymenu.sticky .logo img {
	height: 56px;
}

#strickymenu.sticky ul.nav-menu li a {
	min-height: 70px;
}

#strickymenu.sticky ul.nav-menu li ul li a {
	min-height: 49px;
}

/*
-------------------------------
Search
-------------------------------
*/
.searchbar .search-button {
	text-align: right;
	position: absolute;
	top: 50%;
	margin-top: -11px;
	right: 15px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.searchbar .search-button:active,
.searchbar .search-button:focus,
.searchbar .search-button:hover {
	cursor: pointer;
	color: #3367c1;
}

.searchbar .input-search {
	position: absolute;
	width: 50%;
	right: 0px;
	bottom: -66px;
	background: #3367c1;
	padding: 15px;
}

.input-search {
	z-index: 999;
}

.searchbar .input-search input {
	font-size: 15px;
	border: 1px solid #fff;
}

.searchbar .input-search .btn {
	cursor: pointer;
	background: #eef1f5;
}

/*
-------------------------------
Slider
-------------------------------
*/
.slider-item {
	position: relative;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	height: 700px;
	color: #fff;
	-webkit-transition: all 0.5s;
	transition: all 0.5s;
}

.bg-slider-Left {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: linear-gradient(to right, rgba(0, 0, 0, 0.8) 0%, transparent 80%, transparent 99%);
	background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.8) 0%, transparent 80%, transparent 99%);
	background: -moz-linear-gradient(left, rgba(0, 0, 0, 0.8) 0%, transparent 80%, transparent 99%);
}

.bg-slider-Right {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: linear-gradient(to left, rgba(0, 0, 0, 0.8) 0%, transparent 80%, transparent 99%);
	background: -webkit-linear-gradient(rigth, rgba(0, 0, 0, 0.8) 0%, transparent 80%, transparent 99%);
	background: -moz-linear-gradient(rigth, rgba(0, 0, 0, 0.8) 0%, transparent 80%, transparent 99%);
}

.text-animated h1 {
	font-size: 42px;
	font-weight: 700;
	color: #fff;
	text-transform: uppercase;
	margin-bottom: 15px;
	-webkit-animation-duration: .8s;
	animation-duration: .8s;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
	line-height: 1.3;
}

.text-animated h1 span {
	font-weight: 300;
}

.text-animated p {
	font-size: 16px;
	color: #fff;
	-webkit-animation-duration: .8s;
	animation-duration: .8s;
	-webkit-animation-delay: .4s;
	animation-delay: .4s;
}

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

.text-animated li {
	display: inline-block;
	margin-top: 15px;
	margin-right: 15px;
	-webkit-animation-duration: .8s;
	animation-duration: .8s;
	-webkit-animation-delay: .8s;
	animation-delay: .8s;
}

.text-animated li a {
	font-size: 17px;
	font-weight: 600;
	text-transform: uppercase;
	display: inline-block;
	background: #3367c1;
	color: #fff;
	border: 1px solid #3367c1;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
	padding: 10px 40px;
	text-decoration: none;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.text-animated li a:hover {
	background: #fff;
	color: #3268c1;
	border: 1px solid #fff;
}

.text-animated li:last-child a {
	background: #313131;
	color: #fff;
	border: 1px solid #313131;
}

.text-animated li:last-child a:hover {
	background: #fff;
	border: 1px solid #fff;
}

.button-animated {
    position: relative;
    max-width: 100%;
}

.button-animated li {
    text-transform: uppercase;
	display: inline-block;
	margin-top: 15px;
	margin-right: 15px;
	-webkit-animation-duration: .8s;
	animation-duration: .8s;
	-webkit-animation-delay: .8s;
	animation-delay: .8s;
}

.button-animated li a {
    display: inline-block;
    text-align: center;
    color: #ffffff;
    background-color: #3367c1;
    font-size: 14px;
    font-weight: 400;
    padding: 13px 35px;
    border-radius: var(--frontend-radius-lg);
    letter-spacing: 0.15px;
    z-index: 1;
    position: relative;
}

.button-animated li a:hover {
    text-decoration: none;
}

.button-animated li a:after {
    position: absolute;
    left: 0;
    top: 0;
    color: #3268c1;
    background-color: #fff;
    width: 100%;
    height: 100%;
    border-radius: var(--frontend-radius-lg);
    content: '';
    display: inline-block;
    -webkit-transition: all .3s;
    transition: all .3s;
    z-index: -1;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: all transform 300ms ease-out 200ms;
    transition: all transform 300ms ease-out 200ms;
}

.button-animated li a:hover::after {
    width: 100%;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transition: -webkit-transform 300ms ease-out;
    transition: -webkit-transform 300ms ease-out;
    transition: transform 300ms ease-out;
    transition: transform 300ms ease-out, -webkit-transform 300ms ease-out;
}


.slider-one .owl-nav {
	position: absolute;
	bottom: 5%;
    left: calc(50% - 45px);
	width: 90px;
	display: inline-flex;
	align-items: center;
	font-size: 0;
	overflow: visible;
	border: 0;
	border-radius: 0;
	-webkit-border-radius: 0;
}

.owl-nav .owl-prev {
	border-radius: var(--frontend-radius-lg) 0 0 var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg) 0 0 var(--frontend-radius-lg);
}

.owl-nav .owl-next {
	border-radius: 0 var(--frontend-radius-lg) var(--frontend-radius-lg) 0;
	-webkit-border-radius: 0 var(--frontend-radius-lg) var(--frontend-radius-lg) 0;
}

.slider-one .owl-nav .owl-prev,
.slider-one .owl-nav .owl-next {
	font-size: 18px;
	text-align: center;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 45px;
	width: 45px;
	height: 45px;
	line-height: 1;
	color: #fff;
	background: #3367c1;
	border: 2px solid #3367c1;
	margin: 0px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.slider-one .owl-nav .owl-prev i,
.slider-one .owl-nav .owl-next i {
	line-height: 1;
	display: block;
}

.slider-one .owl-nav .owl-prev:hover,
.slider-one .owl-nav .owl-next:hover {
	color: #3268c1;
	background: #fff;
	border: 2px solid #fff;
}

.slider-one .owl-nav .owl-prev {
	border-radius: var(--frontend-radius-lg) 0 0 var(--frontend-radius-lg) !important;
	-webkit-border-radius: var(--frontend-radius-lg) 0 0 var(--frontend-radius-lg) !important;
}

.slider-one .owl-nav .owl-next {
	border-radius: 0 var(--frontend-radius-lg) var(--frontend-radius-lg) 0 !important;
	-webkit-border-radius: 0 var(--frontend-radius-lg) var(--frontend-radius-lg) 0 !important;
	margin-left: 0 !important;
}

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

.slider-two .text-animated p {
	margin-left: 30px;
	margin-right: 30px;
}

.slider-two .owl-nav .owl-prev,
.slider-two .owl-nav .owl-next {
	text-align: center;
	font-size: 18px;
	position: absolute;
	width: 45px;
	height: 50px;
	line-height: 46px;
	top: 50%;
	margin-top: -25px;
	border: 2px solid #fff;
	color: #fff;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.slider-two .owl-nav .owl-prev {
	left: 0;
	margin-left: 0;
}

.slider-two .owl-nav .owl-next {
	right: 0;
	margin-right: 0;
}

.slider-two .owl-nav .owl-prev:hover,
.slider-two .owl-nav .owl-next:hover {
	color: #3268c1;
	border: 2px solid #3268c1;
}


/*
-------------------------------
About
-------------------------------
*/
.headline-left{
    margin-bottom: 50px;
}
.headline-left h2 {
    font-size: 40px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 15px;
}
.headline-left h2 span {
	font-size: 40px;
	display: block;
    font-weight: 300;
}
.progress-gallery.main-prog{
    margin-top: 50px;
}
.about-tab{
    position: relative;
    background-position: top center;
    background-size: cover;
    background-repeat: no-repeat;
    height: 400px;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
    box-shadow: 0px 0px 15px rgb(0 0 0 / 10%);
}
.tab-video:before{
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #3367c1;
    opacity: 0.5;
}
.tab-photo:before{
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.5;
}
.about-tab ul{
    text-align: center;
    list-style: none;
    margin: 0;
    padding: 10px;
    position: relative;
    z-index: 99;
}
.about-tab ul li{
    display: inline-block;
}
.about-tab ul li a{
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    display: inline-block;
    background: #fff;
    padding: 10px 20px;
    margin-left: -5px;
}
.about-tab ul li a.active{
    background: #313131;
    color: #fff;
}

/*
-------------------------------
Video
-------------------------------
*/
.video-button {
  position: absolute;
  z-index: 10;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  box-sizing: content-box;
  display: block;
  width: 32px;
  height: 44px;
  border-radius: 50%;
  padding: 18px 20px 18px 28px;
}

.video-button:before {
  content: "";
  position: absolute;
  z-index: 0;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  display: block;
  width: 80px;
  height: 80px;
  background: #fff;
  border-radius: 50%;
  animation: video-pop 1500ms ease-out infinite;
}

.video-button:after {
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  display: block;
  width: 80px;
  height: 80px;
  background: #fff;
  border-radius: 50%;
  transition: all 200ms;
}

.video-button span {
    display: block;
    position: relative;
    z-index: 3;
    width: 0;
    height: 0;
    border-left: 32px solid #3367c1;
    border-top: 22px solid transparent;
    border-bottom: 22px solid transparent;
}

@keyframes video-pop {
  0% {
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1);
    opacity: 1;
  }
  100% {
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1.5);
    opacity: 0;
  }
}
.progress-gallery.main-prog .bar-container .progress{
    height: 8px;
    border-radius: 0;
}
.modal.show .modal-dialog.hb-style {
    -webkit-transform: translate(0px,25%);
    -o-transform: translate(0px,25%);
    transform: translate(0px,25%);
}
.modal-header h3 {
	font-size: 24px;
    font-weight: 700;
	color: #3367c1;
	margin: 0;
}


/*
-------------------------------
About Detail
-------------------------------
*/
.about-page .headstyle h4 {
	margin-bottom: 20px;
}

.about-menu {
	margin-top: 30px;
}

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

.about-menu ul li {
	position: relative;
	margin-bottom: 8px;
}

.about-menu ul li:last-child {
	margin-bottom: 0;
}

.about-menu ul li a {
	display: block;
	font-size: 16px;
	font-weight: 700;
    letter-spacing: 0.5px;
    text-transform: uppercase;
	text-decoration: none;
	border-bottom: 1px solid #e1e1e1;
	padding-bottom: 8px;
	padding-left: 12px;
	position: relative;
}

.about-menu ul li a:before {
	position: absolute;
	content: '\f0da';
	font-family: "Font Awesome 5 Pro";
	top: 0;
	left: 0;
}

.about-menu ul li a.active {
	color: #3367c1;
	border-bottom: 1px solid #3367c1;
}

.company-detail {
	margin-top: 30px;
}

.about-carousel {
	margin-bottom: 30px;
}

.company-detail h5 {
	font-size: 16px;
    font-weight: 700;
	line-height: 1.4;
	margin-bottom: 15px;
}

.company-detail p:last-child {
	margin: 0;
}

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

.history-list ul li {
	font-size: 15px;
	margin-bottom: 15px;
	padding-bottom: 8px;
}

.history-list ul li span {
    font-size: 16px;
	font-weight: 700;
	color: #3367c1;
}

.about-carousel {
	border: 1px solid #e1e1e1;
}

.about-carousel .owl-nav .owl-prev,
.about-carousel .owl-nav .owl-next {
	text-align: center;
	font-size: 18px;
	position: absolute;
	width: 40px;
	height: 50px;
	line-height: 48px;
	top: 50%;
	margin-top: -25px;
	background: #3367c1;
	color: #fff;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.slider-one .owl-nav .owl-prev {
	border-radius: var(--frontend-radius-lg) 0 0 var(--frontend-radius-lg) !important;
	-webkit-border-radius: var(--frontend-radius-lg) 0 0 var(--frontend-radius-lg) !important;
}

.slider-one .owl-nav .owl-next {
	border-radius: 0 var(--frontend-radius-lg) var(--frontend-radius-lg) 0 !important;
	-webkit-border-radius: 0 var(--frontend-radius-lg) var(--frontend-radius-lg) 0 !important;
	margin-left: 0 !important;
}

.about-carousel .owl-nav .owl-prev {
	left: 0;
}

.about-carousel .owl-nav .owl-next {
	right: 0;
}

.about-carousel .owl-nav .owl-prev:hover,
.about-carousel .owl-nav .owl-next:hover {
	color: #fff;
	background: #313131;
}

.mission-detail {
	margin-top: 15px;
}

.mission-item {
	text-align: center;
	margin-top: 15px;
	background: #f5f5f5;
	border: 1px solid #e1e1e1;
	padding: 15px;
	min-height: 228px;
}

.mission-item img {
	width: 60px;
	height: 60px;
	margin: 0 auto;
	margin-bottom: 15px;
}

.mission-item i {
	font-size: 40px;
    color: #3367c1;
	margin: 0 auto;
	margin-bottom: 20px;
}

.mission-item h4 {
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 15px;
}

.mission-item p {
	margin: 0;
}

.progress-gallery {
	margin-top: 15px;
}

.progress-gallery .bar-container {
	position: relative;
	font-size: 15px;
	margin-bottom: 15px;
}

.progress-gallery .bar-container p {
	font-weight: 500;
	margin-bottom: 5px;
}

.progress-gallery .bar-container .progress {
	height: 10px;
}

.progress-gallery .bar-container .progress .progress-bar-custom {
	background-color: #3367c1;
}

.progress-gallery .bar-container .percentage-show {
	font-weight: 500;
	position: absolute;
	top: 0px;
	right: 0;
	z-index: 9;
}

.progress-gallery .progress-bar {
	transition-duration: 3s;
}


/*
-------------------------------
Benefits
-------------------------------
*/
.benefits-photo img {
    max-width: 100%;
    height: auto;
}

.benefits-right h3 {
	font-size: 40px;
	font-weight: 700;
    text-transform: uppercase;
	margin-bottom: 25px;
}
.benefits-right h3 span{
    font-weight: 400;
}

.benefits-right p {
	margin-bottom: 20px;
}

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

.benefits-right ul li {
    font-size: 16px;
    font-weight: 500;
	position: relative;
	padding-left: 25px;
	margin-top: 5px;
    color: #3367c1;
}

.benefits-right ul li:before {
	position: absolute;
	content: '\F178';
	font-family: 'fontawesome';
	top: 0;
	left: 0;
	color: #3367c1;
}

/*
-------------------------------
Choose Items
-------------------------------
*/
.choose-item {
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	text-align: center;
	margin-top: 30px;
	padding: 15px;
	position: relative;
	height: 300px;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
    box-shadow: 0px 0px 15px rgb(0 0 0 / 10%);
}

.choose-item:before {
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: #3367c1;
	opacity: 0.8;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
}

.choose-item:hover:before {
	opacity: 1;
}

.choose-icon {
	position: relative;
	margin-bottom: 20px;
}

.choose-icon img {
	width: 60px;
	height: 60px;
}
.choose-icon i{
    font-size: 60px;
    color: #fff;
    font-weight: bold;
}

.choose-text {
	position: relative;
}

.choose-text h4 {
	color: #fff;
	font-size: 20px;
	font-weight: 900;
	margin-bottom: 15px;
	text-transform: uppercase;
}

.choose-text p {
	color: #FFF;
	margin: 0;
}


/*
-------------------------------
Featured
-------------------------------
*/
.feature-item {
	display: table;
	width: 100%;
	margin-top: 30px;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
    box-shadow: 0px 0px 15px rgb(0 0 0 / 10%);
}

.feature-icon {
	vertical-align: top;
	display: table-cell;
	width: 70px;
    text-align: center;
	border-radius: var(--frontend-radius-lg) 0 0 var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg) 0 0 var(--frontend-radius-lg);
    background: #fcfcfc;
    vertical-align: middle;
}

.feature-icon img {
	width: 70px;
	background: #fcfcfc;
	border-radius: var(--frontend-radius-lg) 0 0 var(--frontend-radius-lg);
	padding: 12px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.feature-icon i {
    font-size: 40px;
	width: 70px;
    color: #fff;
	padding: 12px;
	-webkit-transition: all 0.5s;
	transition: all 0.5s;
}

.feature-text {
	vertical-align: top;
	display: table-cell;
	padding: 20px;
	background: #fcfcfc;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
	-webkit-transition: all 0.5s;
	transition: all 0.5s;
}
.feature-text h4 {
	font-size: 20px;
    font-weight: 700;
	-webkit-transition: all 0.5s;
	transition: all 0.5s;
	text-transform: uppercase;
}

.feature-text p {
	margin: 0;
}


/*
-------------------------------
Service
-------------------------------
*/
.services-item {
	margin-top: 30px;
	position: relative;
	background: #fff;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
	overflow: hidden;
	border: 1px solid rgba(17, 24, 39, 0.08);
	box-shadow: 0 18px 38px rgba(15, 23, 42, 0.08);
	-webkit-transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.services-photo {
	display: block;
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	height: 220px;
	border-radius: 0;
	-webkit-border-radius: 0;
}

.services-text {
	background: linear-gradient(180deg, rgba(17, 24, 39, 0.045), rgba(17, 24, 39, 0.075));
	padding: 22px 22px 20px;
	border-top: 1px solid rgba(17, 24, 39, 0.08);
	border-radius: 0;
	-webkit-border-radius: 0;
	-webkit-transition: background 0.3s ease;
	transition: background 0.3s ease;
}

.services-area .services-photo {
	border-radius: var(--frontend-radius-lg) var(--frontend-radius-lg) 0 0 !important;
	-webkit-border-radius: var(--frontend-radius-lg) var(--frontend-radius-lg) 0 0 !important;
}

.services-area .services-text {
	border-radius: 0 0 var(--frontend-radius-lg) var(--frontend-radius-lg) !important;
	-webkit-border-radius: 0 0 var(--frontend-radius-lg) var(--frontend-radius-lg) !important;
}

.services-item:hover .services-text {
	background: linear-gradient(180deg, rgba(17, 24, 39, 0.055), rgba(17, 24, 39, 0.09));
}

.services-item:hover {
	transform: none;
	box-shadow: 0 18px 38px rgba(15, 23, 42, 0.08);
	border-color: rgba(17, 24, 39, 0.12);
}

.services-text h3 a {
	display: inline-block;
	font-size: 20px;
	line-height: 1.25;
	font-weight: 700;
	text-decoration: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	text-transform: none;
	color: #111827;
}

.services-text .button-bn a{
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.01em;
}
.services-text a:hover {
	color: #3367c1;
}

.services-text p {
	margin: 12px 0 16px;
	color: #4b5563;
	line-height: 1.65;
}

.service-photo-item img {
    border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
}


/*
-------------------------------
Single Service
-------------------------------
*/

.single-ser-carousel {
	margin-bottom: 30px;
}

.single-ser-carousel .owl-nav .owl-prev,
.single-ser-carousel .owl-nav .owl-next {
	text-align: center;
	font-size: 18px;
	position: absolute;
	width: 40px;
	height: 50px;
	line-height: 48px;
	top: 50%;
	margin-top: -25px;
	background: #3367c1;
	color: #fff;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.single-ser-carousel .owl-nav .owl-prev {
	left: 0;
}

.single-ser-carousel .owl-nav .owl-next {
	right: 0;
}

.single-ser-carousel .owl-nav .owl-prev:hover,
.single-ser-carousel .owl-nav .owl-next:hover {
	color: #fff;
	background: #313131;
}

.service-sidebar {
	margin-top: 30px;
}

.service-sidebar-item {
	margin-top: 30px;
    border: 1px solid rgba(17, 24, 39, 0.08);
    padding: 30px;
    background: #fff;
    border-radius: var(--frontend-radius-lg) !important;
    -webkit-border-radius: var(--frontend-radius-lg) !important;
    box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.05), 0 0 34px rgba(15, 23, 42, 0.14);
}

.service-sidebar-item:first-child {
	margin-top: 0;
}

.service-sidebar-item ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.service-sidebar-item ul li {
	padding: 6px 0;
}

.service-sidebar-item ul li:first-child {
	padding-top: 0;
}

.service-sidebar-item ul li a {
    font-family: 'Work Sans', sans-serif;
	display: inline-block;
	text-decoration: none;
	position: relative;
	padding-left: 10px;
}

.service-sidebar-item ul li a:before {
	position: absolute;
	content: '\F105';
	font-family: "Font Awesome 5 Pro";
	top: 0;
	left: 0;
	
}

.service-sidebar-item h3 {
	font-size: 26px;
	font-weight: 500;
}

.service-sidebar-item .form-group textarea {
	height: 110px;
}

.service-info {
	margin-top: 30px;
}

.service-info h2 {
	font-size: 26px;
	font-weight: 700;
	margin-bottom: 20px;
}

.service-info p:last-child {
	margin: 0;
}


/*
-------------------------------
Counter
-------------------------------
*/
.counterup-area {
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	position: relative;
}

.bg-counterup {
	position: absolute;
	background-color: #3367c1;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 0.9;
}

.counter-item {
	position: relative;
	text-align: center;
	color: #fff;
	border: 1px solid #fff;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
	margin-top: 30px;
	padding: 15px;
	min-height: 225px;
}

.counter-item:before,
.counter-item:after {
	position: absolute;
	content: '';
	width: 50%;
	height: 5px;
	background: #fff;
	transition: all 0.4s;
}

.counter-item:before {
	top: 0;
	right: 25px !important;
	border-radius: 0 0 var(--frontend-radius-lg) var(--frontend-radius-lg);
	-webkit-border-radius: 0 0 var(--frontend-radius-lg) var(--frontend-radius-lg);
}

.counter-item:after {
	bottom: 0;
	left: 25px !important;
	border-radius: var(--frontend-radius-lg) var(--frontend-radius-lg) 0 0;
	-webkit-border-radius: var(--frontend-radius-lg) var(--frontend-radius-lg) 0 0;
}

.counter-item:hover:before {
	right: calc(50% - 25px) !important;
}

.counter-item:hover:after {
	left: calc(50% - 25px) !important;
}

.counter-item img {
	width: 56px;
	height: 56px;
	margin: 0 auto;
	margin-bottom: 15px;
}
.counter-item i {
	font-size: 56px;
	margin-bottom: 15px;
}

.counter-item h2.counter {
	font-size: 36px;
	font-weight: 700;
	margin-top: 0;
	color: #fff;
}

.counter-item h4 {
	font-size: 20px;
	color: #fff;
	margin: 0;
}


/*
-------------------------------
Portfolio
-------------------------------
*/

.portfolio-menu {
	text-align: center;
	margin-top: 20px;
	margin-bottom: 6px;
}

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

.portfolio-menu li {
	cursor: pointer;
	font-size: 18px;
	font-weight: 600;
	font-family: Trebuchet MS, sans-serif;
	display: inline-block;
	border-bottom: 1px solid #e1e1e1;
	
	padding: 5px 10px;
	padding-top: 0;
	margin: 0 10px;
	margin-top: 10px;
	position: relative;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.portfolio-menu li:hover {
	color: #3367c1;
}

.portfolio-menu li.filtr-active {
	border-bottom: 1px solid #3367c1;
	color: #3367c1;
}

.portfolio-menu li.filtr-active:before {
	border-color: #3367c1 transparent transparent;
	border-style: solid;
	position: absolute;
	content: "";
	border-width: 6px 6px 0;
	left: 50%;
	margin-left: -6px;
	bottom: -6px;
	text-decoration: none;
}

.portfolio-group {
	margin-top: 30px;
	position: relative;
	background: #fff;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
	overflow: hidden;
	border: 1px solid rgba(17, 24, 39, 0.08);
	box-shadow: 0 18px 38px rgba(15, 23, 42, 0.08);
}

.portfolio-photo {
	background-position: top center;
	background-size: cover;
	background-repeat: no-repeat;
	height: 196px;
	position: relative;
	border-radius: 0;
	-webkit-border-radius: 0;
}

.portfolio-bg {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: #3367c1;
	visibility: hidden;
	opacity: 0;
	transform: scale(0);
	transition: all 0.4s;
	-webkit-transition: all 0.4s;
	border-radius: 0;
	-webkit-border-radius: 0;
}

.portfolio-group:hover .portfolio-bg {
	opacity: 0.7;
	transform: scale(1);
	visibility: visible;
}

.portfolio-table {
	display: table;
	width: 100%;
	height: 100%;
}

.portfolio-icon {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	visibility: hidden;
	opacity: 0;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.portfolio-icon a {
	position: relative;
	font-size: 26px;
	color: #fff;
	text-decoration: none;
	z-index: 99;
}

.portfolio-group:hover .portfolio-icon {
	opacity: 1;
	visibility: visible;
}

.portfolio-text {
	text-align: center;
	background: linear-gradient(180deg, rgba(17, 24, 39, 0.045), rgba(17, 24, 39, 0.075));
	padding: 22px 22px 20px;
	border-top: 1px solid rgba(17, 24, 39, 0.08);
	border-radius: 0;
	-webkit-border-radius: 0;
}

.portfolio-text h3 a {
	display: inline-block;
	font-size: 20px;
	line-height: 1.25;
	font-weight: 700;
	text-decoration: none;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	margin-bottom: 8px;
	color: #111827;
}

.portfolio-text h3 a:hover {
	color: #3367c1;
}

.portfolio-text h4,
.portfolio-text p {
	margin: 10px 0 0;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #6b7280;
}

.portfolio-text h4 a,
.portfolio-text p a {
	color: inherit;
}

.project-page .portfolio-menu {
	margin-top: 0;
	margin-bottom: 5px;
}

.project-page li {
	margin-top: 0;
	margin-bottom: 10px;
}

.search-portfolio-cat .input-group {
    border-radius: var(--frontend-radius-lg) !important;
    -webkit-border-radius: var(--frontend-radius-lg) !important;
}

.search-portfolio-cat input {
    height: 40px;
    border: 2px solid #e1e1e1;
}

.search-portfolio-cat .form-control:focus,
.search-portfolio-cat input:focus,
.search-portfolio-cat input:active,
.search-portfolio-cat input:focus-visible {
	box-shadow: none !important;
	-webkit-box-shadow: none !important;
	outline: none !important;
	border-color: #e1e1e1 !important;
}

/*
-------------------------------
Portfolio Details
-------------------------------
*/

.portfolio-carousel {
	overflow: hidden;
	margin-top: 30px;
}

.portfolio-photo-item {
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	height: 370px;
	position: relative;
}

.portfolio-carousel .owl-nav .owl-prev,
.portfolio-carousel .owl-nav .owl-next {
	text-align: center;
	font-size: 18px;
	position: absolute;
	top: 50%;
	width: 40px;
	height: 50px;
	line-height: 48px;
	background: #3367c1;
	color: #fff;
	margin-top: -25px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.portfolio-carousel .owl-nav .owl-prev {
	left: 0;
}

.portfolio-carousel .owl-nav .owl-next {
	right: 0;
}

.portfolio-carousel .owl-nav .owl-prev:hover,
.portfolio-carousel .owl-nav .owl-next:hover {
	color: #fff;
	background: #313131;
}

.portfolio-details-text h3 {
	font-size: 26px;
	font-weight: 700;
    text-transform: uppercase;
	margin: 0;
	margin-top: 30px;
}

.portfolio-details-text p {
	margin: 0;
	margin-top: 20px;
}

.portfolio-sidebar {
	margin-top: 30px;
}

.portfolio-sidebar .portfolio-details,
.portfolio-sidebar .portfolio-form{
    border: 1px solid rgba(17, 24, 39, 0.08);
    padding: 30px;
    background: #fff;
    border-radius: var(--frontend-radius-lg) !important;
    -webkit-border-radius: var(--frontend-radius-lg) !important;
    box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.05), 0 0 34px rgba(15, 23, 42, 0.14);
}

.portfolio-sidebar .portfolio-form {
    padding: 30px;
}

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

.portfolio-details ul li {
	font-size: 15px;
	font-weight: 400;
	
	padding-bottom: 5px;
	margin-bottom: 5px;
	border-bottom: 1px solid #dddddd;
}

.portfolio-details ul li span {
	font-weight: 600;
	color: #3367c1;
	margin-right: 5px;
}


.portfolio-form .form-group textarea {
	height: 110px;
}

.recent-project .portfolio-text {
	background: #fff;
}

.project-carousel .owl-nav .owl-prev,
.project-carousel .owl-nav .owl-next {
	text-align: center;
	font-size: 18px;
	position: absolute;
	width: 40px;
	height: 40px;
	line-height: 38px;
	top: 0;
	margin-top: -20px;
	background: #3367c1;
	color: #fff;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.project-carousel .owl-nav .owl-prev {
	right: 0;
	margin-right: 40px;
	border-top-right-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
}

.project-carousel .owl-nav .owl-next {
	right: 0;
	margin-right: 0px;
	border-top-left-radius: 0 !important;
	border-bottom-left-radius: 0 !important;
}

.project-carousel .owl-nav .owl-prev:hover,
.project-carousel .owl-nav .owl-next:hover {
	color: #fff;
	background: #313131;
}


/*
-------------------------------
Team
-------------------------------
*/

.team-item {
 	overflow: hidden;
 	margin-top: 30px;
 	position: relative;
 	border-radius: var(--frontend-radius-lg);
 	-webkit-border-radius: var(--frontend-radius-lg);
    box-shadow: 0px 0px 15px rgb(0 0 0 / 10%);
    transition: transform .2s ease, box-shadow .2s ease;
 }


.team-item img {
	width: 100%;
	height: auto;
}

.team-text {
	text-align: center;
	color: #fff;
	background: #3367c1;
	padding: 15px;
    position: relative;
    z-index: 99;
	border-radius: 0 !important;
	-webkit-border-radius: 0 !important;
}

.team-text a {
	display: inline-block;
	font-size: 20px;
	font-weight: 700;
    text-transform: uppercase;
	color: #fff;
	margin-bottom: 4px;
	text-decoration: none;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.team-text p {
	margin: 0;
	color: rgba(255, 255, 255, 0.88);
}

.team-text a:hover,
.team-item:hover .team-text a {
	color: #fff !important;
	opacity: 0.72;
}

.team-social {
	text-align: center;
    position: absolute;
    width: 100%;
    top: -20px;
    background: #eef1f5;
    padding: 10px 0;
    visibility: hidden;
    opacity: 0;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

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

.team-social li {
	display: inline-block;
    margin-left: -5px;
    border-radius: var(--frontend-radius);
	-webkit-border-radius: var(--frontend-radius);
}

.team-social li a {
	display: block;
	width: 35px;
	height: 33px;
	line-height: 33px;
	text-decoration: none;
    border-radius: var(--frontend-radius);
	-webkit-border-radius: var(--frontend-radius);
}

.team-social li a:hover {
	color: #fff;
	background: #3367c1;
    border-radius: var(--frontend-radius);
	-webkit-border-radius: var(--frontend-radius);
}

.team-item:hover .team-social {
    top: 0px;
	visibility: visible;
    opacity: 1;
}

.service-master-card {
	margin-top: 24px;
	background: #fff;
	border: 1px solid rgba(17, 24, 39, 0.08);
	box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
}

.service-master-link {
	display: block;
	color: inherit;
	text-decoration: none;
}

.service-master-card .team-photo img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 4.5;
	object-fit: cover;
}

.service-master-meta {
	background: #fff !important;
	color: #1f2937 !important;
	padding: 18px 18px 16px !important;
	border-top: 1px solid rgba(17, 24, 39, 0.08) !important;
	text-align: center !important;
}

.service-master-meta h4 {
	margin: 0 0 10px !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	text-transform: none !important;
	color: #111827 !important;
}

.service-master-rating {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 6px;
	line-height: 1;
}

.service-master-rating i {
	font-size: 14px;
}

.service-master-rating-value {
	margin-left: 2px;
	font-size: 13px !important;
	line-height: 1.4 !important;
	color: #6b7280 !important;
}

.service-master-link:hover,
.service-master-link:focus {
	text-decoration: none;
}

.service-master-link:hover .service-master-meta h4,
.service-master-link:focus .service-master-meta h4 {
	color: #111827 !important;
	opacity: 0.78;
}

.team-carousel .owl-nav {
    box-shadow: 0px 0px 15px rgb(0 0 0 / 10%);
}

.team-carousel .owl-nav .owl-prev,
.team-carousel .owl-nav .owl-next {
	text-align: center;
	font-size: 18px;
	position: absolute;
	width: 40px;
	height: 40px;
	line-height: 40px;
	top: 0;
	margin-top: -20px;
	background: #3367c1;
	color: #fff;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.team-carousel .owl-nav .owl-prev {
	right: 0;
	margin-right: 38px;
}

.team-carousel .owl-nav .owl-next {
	right: 0;
	margin-right: 0px;
}

.team-carousel .owl-nav .owl-prev:hover,
.team-carousel .owl-nav .owl-next:hover {
	color: #fff;
	background: #313131;
}

.team-social-two {
	text-align: center;
	position: absolute;
	width: 100%;
	bottom: 85px;
	background: #eef1f5;
	padding: 10px 0;
}

.team-social-two ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.team-social-two ul li {
	display: inline-block;
	margin-left: -5px;
}

.team-social-two ul li a {
	display: block;
	width: 35px;
	height: 33px;
	line-height: 33px;
	background: #f1f1f1;
	border-left: 1px solid #fff;
	border-right: 1px solid #eaeaea;
	text-decoration: none;
}

.team-social-two ul li:first-child a {
	border-left: 1px solid #eaeaea;
}

.team-social-two li a:hover {
	color: #fff;
	background: #3367c1;
	border-left: 1px solid #3367c1;
	border-right: 1px solid #3367c1;
}


/*
-------------------------------
Team Details
-------------------------------
*/

.team-detail-photo {
	margin-top: 30px;
}

.team-detail-photo img {
	display: block;
	width: 100%;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
}

.team-detail-text {
	margin-top: 30px;
}

.team-detail-text h4 {
	font-size: 26px;
	font-weight: 700;
	margin-bottom: 7px;
}

.team-detail-text p {
	margin-top: 20px;
}

.team-detail-text ul {
	list-style: none;
	margin: 0;
	margin-top: 15px;
	padding: 0;
}

.team-detail-text ul li {
	text-align: center;
	display: inline-block;
	margin-right: 7px;
	margin-top: 5px;
}

.team-detail-text ul li:last-child {
	margin-right: 0;
}

.team-detail-text ul li a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 35px;
	height: 35px;
	line-height: 1;
	background: #3367c1 !important;
	background-color: #3367c1 !important;
	color: #fff !important;
	border: 0 !important;
	box-shadow: inset 0 0 0 999px #3367c1 !important;
	text-decoration: none !important;
	transition: all 0.3s;
}

.team-detail-text ul li a i {
	color: #fff !important;
	transition: color 0.3s ease, opacity 0.3s ease;
}

.team-detail-text ul li a:hover {
	background: #313131 !important;
	background-color: #313131 !important;
	color: #fff !important;
	border: 0 !important;
	box-shadow: inset 0 0 0 999px #313131 !important;
	opacity: 1;
	text-decoration: none !important;
}

.team-detail-text ul li a:hover i,
.team-detail-text ul li a:focus i,
.team-detail-text ul li a:active i {
	color: #fff !important;
}

.team-info {
	background: #f5f5f5;
	border: 1px solid #e1e1e1;
	padding: 30px;
	margin-top: 30px;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
}

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

.team-info ul li {
	padding-bottom: 5px;
}

.team-info ul li span {
	color: #3367c1;
	margin-right: 10px;
}

.team-skill {
	background: #f5f5f5;
	border: 1px solid #e1e1e1;
	padding: 30px;
	margin-top: 30px;
}

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

.team-skill ul li {
	position: relative;
	padding-left: 20px;
	padding-bottom: 5px;
}

.team-skill ul li:before {
	content: '\f14a';
	font-family: "Font Awesome 5 Pro";
	position: absolute;
	top: 0;
	left: 0;
	color: #3367c1;
}


/*
-------------------------------
PRICING TABLE
-------------------------------
*/

.price-item {
	text-align: center;
	background: #fff;
	padding: 15px;
	margin-top: 30px;
    transform: scale(1);
	-webkit-box-shadow: 0 0 6px 3px rgba(0, 0, 0, 0.01);
	box-shadow: 0 0 6px 3px rgba(0, 0, 0, 0.01);
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
}

.price-header {
	padding: 15px 0;
}

.price-header img {
	width: 94px;
	height: 94px;
	background: #f6f6f6;
	border-radius: 50%;
	padding: 10px;
	margin-bottom: 15px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.price-header i {
    font-size: 52px;
	width: 94px;
	height: 94px;
    line-height: 94px;
	background: #3367c1;
    color: #fff;
	border-radius: 50%;
	margin-bottom: 15px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.price-item:hover .price-header img {
	background: #ececec;
}

.price-header h3 {
	font-size: 25px;
	font-weight: 700;
	margin-bottom: 7px;
}

.price-header h2 {
	font-size: 42px;
	font-weight: 700;
	margin-bottom: 7px;
}

.price-header p {
	margin: 0;
}

.price-body {
	padding: 15px 0;
}

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

.price-body li {
	padding: 10px 0;
	border-bottom: 1px solid #ddd;
}

.price-body li:last-child {
	border-bottom: 0px;
}

.price-footer {
	padding: 15px 0;
}
.price-item:hover{
    transform: scale(1.05);
}

/* Price-Page */

.price-page .price-item {
	border: 1px solid #e1e1e1;
	background: #f5f5f5;
}


/*
-------------------------------
Testimonial
-------------------------------
*/

.testimonial-area {
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	position: relative;
}

.testimonial-area .testimonial-carousel .owl-stage-outer .owl-stage .owl-item .testimonial-item {
	background-color: rgba(255, 255, 255, 0.1);
}

.bg-testimonial {
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: #3367c1;
	opacity: 0.8;
}

.testimonial-item {
	text-align: center;
	color: #fff;
	border: 1px solid #fff;
	padding: 30px;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
}

.testimonial-description {
	margin: 0 auto;
}

.testimonial-description p {
	position: relative;
	padding-top: 15px;
	margin-top: 15px;
	margin-bottom: 0;
}

.testimonial-description p:before {
	position: absolute;
	content: '';
	width: 120px;
	height: 3px;
	bottom: 100%;
	left: 50%;
	margin-left: -60px;
	background: #fff;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
}

.testimonial-photo {
	width: 95px;
	height: 95px;
	margin: 0 auto;
}

.testimonial-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
}

.testimonial-name {
	margin-top: 15px;
}

.testimonial-name h4 {
	font-size: 22px;
    font-weight: 700;
	margin-bottom: 8px;
}

.testimonial-name p {
	font-size: 15px;
	margin: 0;
}

.testimonial-carousel .owl-dots {
	text-align: center;
	margin-top: 30px;
}

.testimonial-carousel .owl-dots .owl-dot {
	width: 14px;
	height: 14px;
	background: rgba(255, 255, 255, 0.35);
	border: 0;
	border-radius: 50%;
	display: inline-block;
	margin: 0 7px;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.35);
	transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, opacity 0.2s ease;
	opacity: 1;
}

.testimonial-carousel .owl-dots .owl-dot.active {
	width: 14px;
	height: 14px;
	background: #fff;
	box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.22);
	transform: scale(1.15);
}

.testimonial-carousel .owl-nav .owl-prev,
.testimonial-carousel .owl-nav .owl-next {
	text-align: center;
	font-size: 18px;
	position: absolute;
	top: 50%;
	width: 40px;
	height: 50px;
	line-height: 50px;
	background: #fff;
	margin-top: -25px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.testimonial-carousel .owl-nav .owl-prev {
	left: 0;
}

.testimonial-carousel .owl-nav .owl-next {
	right: 0;
}

.testimonial-carousel .owl-nav .owl-prev:hover,
.testimonial-carousel .owl-nav .owl-next:hover {
	background: #fff;
}

.testimonial-grid .testimonial-item,
.testimonial-two-carousel .testimonial-item {
	padding: 30px;
    border-radius: var(--frontend-radius-lg) !important;
    -webkit-border-radius: var(--frontend-radius-lg) !important;
    box-shadow: 0px 0px 15px rgb(0 0 0 / 10%);
}

.testimonial-grid .testimonial-description,
.testimonial-two-carousel .testimonial-description {
	width: 100%;
}

.testimonial-grid .testimonial-description p,
.testimonial-two-carousel .testimonial-description p {
	padding-top: 15px;
	padding-bottom: 0;
	margin-top: 15px;
	margin-bottom: 0;
}

.testimonial-grid .testimonial-description p:before,
.testimonial-two-carousel .testimonial-description p:before {
	bottom: 100%;
    background: #3367c1;
}

.testimonial-grid .testimonial-name h4,
.testimonial-two-carousel .testimonial-name h4 {
	
}

.testimonial-two-carousel .owl-nav .owl-prev,
.testimonial-two-carousel .owl-nav .owl-next {
	text-align: center;
	font-size: 18px;
	position: absolute;
	top: 50%;
	width: 40px;
	height: 50px;
	line-height: 48px;
	background: #3367c1;
	color: #fff;
	margin-top: -25px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.testimonial-two-carousel .owl-nav .owl-prev {
	left: 0;
}

.testimonial-two-carousel .owl-nav .owl-next {
	right: 0;
}

.testimonial-two-carousel .owl-nav .owl-prev:hover,
.testimonial-two-carousel .owl-nav .owl-next:hover {
	color: #fff;
	background: #313131;
}



.testimonial-list .item-testimonial {
    border: 1px solid #ddd;
    padding: 30px;
    padding-top: 15px;
    margin-top: 30px;
    border-radius: var(--frontend-radius-lg) !important;
    -webkit-border-radius: var(--frontend-radius-lg) !important;
    box-shadow: 0px 0px 15px rgb(0 0 0 / 10%);
}

.testimonial-list .photo-testimonial {
    background-position: top center;
    background-size: cover;
    background-repeat: no-repeat;
    height: 320px;
    margin-top: 15px;
    border-radius: var(--frontend-radius-lg) !important;
    -webkit-border-radius: var(--frontend-radius-lg) !important;
}

.testimonial-list .body-testimonial {
    margin-top: 15px;
}

.testimonial-list .header-testimonial {
    overflow: hidden;
    margin-bottom: 15px;
    display: table;
    width: 100%;
}

/*
-------------------------------
Booking
-------------------------------
*/

.booking-area {
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	position: relative;
}

.booking-area:before {
	position: absolute;
	content: '';
	width: 50%;
	height: 100%;
	top: 0;
	left: 0;
	background: #3367c1;
	opacity: 0.8;
}


.bg-booking {
	position: absolute;
	background-color: #3367c1;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 0.3;
}


.booking-gallery {
	position: relative;
	padding-right: 30px;
	z-index: 998;
	margin-top: 30px
}
.form-control,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="password"],
input[type="date"],
input[type="time"],
input[type="search"],
input[type="url"],
select,
textarea {
	font-size: 15px;
	font-family: 'Work Sans', sans-serif;
	min-height: 48px;
	padding: 12px 14px;
	background: #fff;
	color: #222;
	border: 1px solid #e5dccf;
	border-radius: 14px !important;
	box-shadow: none;
	-webkit-transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

textarea {
	min-height: 120px;
	resize: vertical;
}

select {
	padding-right: 40px;
	background-image: linear-gradient(45deg, transparent 50%, #8a7b66 50%), linear-gradient(135deg, #8a7b66 50%, transparent 50%);
	background-position: calc(100% - 18px) calc(50% - 2px), calc(100% - 12px) calc(50% - 2px);
	background-size: 6px 6px, 6px 6px;
	background-repeat: no-repeat;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

select::-ms-expand {
	display: none;
}

.form-control::placeholder,
input::placeholder,
textarea::placeholder {
	color: #888;
	opacity: 1;
}

.form-control:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
input[type="password"]:focus,
input[type="date"]:focus,
input[type="time"]:focus,
input[type="search"]:focus,
input[type="url"]:focus,
select:focus,
textarea:focus {
	box-shadow: none !important;
	outline: none;
}

.form-group input,
.form-group textarea,
.form-group select.custom-select {
	width: 100%;
}

.form-group select.custom-select {
	color: #222;
}

.booking-hero {
	background: var(--booking-hero-bg);
	background-size: cover;
	background-position: center;
	color: #fff;
	padding: 90px 0 70px;
}

.booking-hero h1 {
	font-size: 44px;
	margin-bottom: 10px;
}

.booking-hero p {
	font-size: 18px;
	opacity: 0.9;
}

.booking-shell {
	background: #f7f4ee;
	border-radius: 18px;
	padding: 28px;
	margin-top: -40px;
	box-shadow: 0 16px 40px rgba(0,0,0,0.09);
}

.booking-steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin-bottom: 24px;
}

.booking-step {
	background: #fff;
	border: 1px solid #ebe2d4;
	border-radius: 14px;
	padding: 16px;
}

.booking-step h4 {
	margin-bottom: 6px;
}

.booking-controls {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.booking-controls .form-group label {
	font-weight: 600;
}

.booking-shell .form-control,
.booking-shell input.form-control,
.booking-shell select.form-control,
.booking-shell textarea.form-control {
	background: #fff !important;
	color: #222 !important;
	border: 1px solid #e5dccf !important;
	border-radius: 14px !important;
	padding: 12px 14px !important;
	height: 48px;
	box-shadow: none !important;
}

.booking-shell textarea.form-control {
	height: auto;
	min-height: 48px;
	resize: vertical;
}

.booking-shell .form-control:focus {
	border-color: #e5dccf !important;
	box-shadow: 0 0 0 3px rgba(31, 122, 76, 0.15) !important;
	outline: none !important;
}

.contact-form .form-control:focus,
.service-sidebar-item .form-control:focus,
.portfolio-form .form-control:focus,
.event-sidebar .form-control:focus,
.comment-form .form-control:focus,
.contact-form input:focus,
.contact-form textarea:focus,
.service-sidebar-item input:focus,
.service-sidebar-item textarea:focus,
.portfolio-form input:focus,
.portfolio-form textarea:focus,
.event-sidebar input:focus,
.event-sidebar textarea:focus,
.comment-form input:focus,
.comment-form textarea:focus {
	border-color: #e5dccf !important;
	box-shadow: 0 0 0 3px rgba(31, 122, 76, 0.15) !important;
	outline: none !important;
}

.booking-shell .form-control::placeholder {
	color: #888 !important;
}

.booking-shell .booking-select {
	position: relative;
}

.booking-shell select.booking-select-hidden {
	position: absolute !important;
	left: -99999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

.booking-shell .booking-select-btn {
	width: 100%;
	text-align: left;
	background: #fff;
	border: 1px solid #e5dccf;
	border-radius: 14px !important;
	padding: 0 56px 0 14px;
	color: #222;
	font-size: 14px;
	line-height: 1.2;
	height: 48px;
	min-height: 48px;
	box-sizing: border-box;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.booking-shell .booking-select-btn:after {
	content: "";
	position: absolute;
	right: 14px;
	top: 50%;
	width: 10px;
	height: 10px;
	border-right: 2px solid #8a7b66;
	border-bottom: 2px solid #8a7b66;
	transform: translateY(-65%) rotate(45deg);
	opacity: 0.9;
}

.booking-shell .booking-select-btn:focus {
	outline: none;
	box-shadow: 0 0 0 3px rgba(31, 122, 76, 0.15);
}

.booking-shell .booking-select-btn::-moz-focus-inner {
	border: 0;
}

.booking-shell .booking-select-btn[disabled] {
	background: #f6f3ee;
	color: #888;
	cursor: not-allowed;
}

.booking-shell .booking-select-menu {
	display: none;
	position: absolute;
	left: 0;
	top: calc(100% + 8px);
	width: 100%;
	background: #fff;
	border: 1px solid #e5dccf;
	border-radius: 14px;
	box-shadow: 0 18px 40px rgba(0,0,0,0.12);
	overflow: hidden;
	z-index: 40;
}

.booking-shell .booking-select.is-open .booking-select-menu {
	display: block;
}

.booking-shell .booking-select-scroll {
	max-height: 280px;
	overflow: auto;
}

.booking-shell .booking-select-opt {
	display: block;
	width: 100%;
	border: 0;
	background: transparent;
	text-align: left;
	padding: 10px 14px;
	color: #222;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.booking-shell .booking-select-opt:hover,
.booking-shell .booking-select-opt:focus {
	background: #f5efe6;
	outline: none;
}

.booking-shell .booking-select-opt.is-active {
	background: #efe6db;
}

.booking-shell .booking-select-opt-label,
.booking-lead-modal .booking-select-opt-label {
	flex: 1 1 auto;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.booking-shell .booking-select-price,
.booking-lead-modal .booking-select-price {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	height: 24px;
	padding: 0 10px;
	border-radius: 999px;
	border: 1px solid #e5dccf;
	background: #f8f3eb;
	color: #7f6a4d;
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
}

.booking-lead-modal .booking-select {
	position: relative;
}

.booking-lead-modal select.booking-select-hidden {
	position: absolute !important;
	left: -99999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

.booking-lead-modal .booking-select-btn {
	width: 100%;
	text-align: left;
	background: #fff;
	border: 1px solid #e5dccf;
	border-radius: 14px !important;
	padding: 0 56px 0 14px;
	color: #222;
	font-size: 14px;
	line-height: 1.2;
	height: 48px;
	min-height: 48px;
	box-sizing: border-box;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.booking-lead-modal .booking-select-btn:after {
	content: "";
	position: absolute;
	right: 14px;
	top: 50%;
	width: 10px;
	height: 10px;
	border-right: 2px solid #8a7b66;
	border-bottom: 2px solid #8a7b66;
	transform: translateY(-65%) rotate(45deg);
	opacity: 0.9;
}

.booking-lead-modal .booking-select-btn:focus {
	outline: none;
	box-shadow: 0 0 0 3px rgba(31, 122, 76, 0.15);
}

.booking-lead-modal .booking-select-btn::-moz-focus-inner {
	border: 0;
}

.booking-lead-modal .booking-select-btn[disabled] {
	background: #f6f3ee;
	color: #888;
	cursor: not-allowed;
}

.booking-lead-modal .booking-select-menu {
	display: none;
	position: absolute;
	left: 0;
	top: calc(100% + 8px);
	width: 100%;
	background: #fff;
	border: 1px solid #e5dccf;
	border-radius: 14px;
	box-shadow: 0 18px 40px rgba(0,0,0,0.12);
	overflow: hidden;
	z-index: 40;
}

.booking-lead-modal .booking-select.is-open .booking-select-menu {
	display: block;
}

.booking-lead-modal .booking-select-scroll {
	max-height: 280px;
	overflow: auto;
}

.booking-lead-modal .booking-select-opt {
	display: block;
	width: 100%;
	border: 0;
	background: transparent;
	text-align: left;
	padding: 10px 14px;
	color: #222;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.booking-lead-modal .booking-select-opt:hover,
.booking-lead-modal .booking-select-opt:focus {
	background: #f5efe6;
	outline: none;
}

.booking-lead-modal .booking-select-opt.is-active {
	background: #efe6db;
}

.booking-request-card {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 22px 24px;
	background: linear-gradient(135deg, rgba(255,255,255,0.95), rgba(247,244,238,0.92));
	border: 1px solid #e5dccf;
	border-radius: 18px;
	box-shadow: 0 12px 28px rgba(37, 29, 18, 0.08);
}

.booking-request-copy h3 {
	margin: 0 0 6px;
}

.booking-request-copy p {
	margin: 0;
	color: #5e564b;
}

.booking-request-card .btn,
.booking-request-card .btn:hover,
.booking-request-card .btn:focus,
.booking-request-card .btn:active {
	opacity: 1 !important;
	visibility: visible !important;
}

.booking-request-action {
	width: auto;
	flex: 0 0 auto;
}

.booking-request-action .btn {
	width: auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.booking-request-open {
	min-height: 48px;
	padding: 12px 22px !important;
	text-decoration: none !important;
	box-shadow: none !important;
}

.booking-request-open:hover,
.booking-request-open:focus,
.booking-request-open:active {
	outline: none !important;
	box-shadow: none !important;
}

.booking-lead-modal {
	position: fixed;
	inset: 0;
	background: rgba(18, 16, 12, 0.48);
	display: none;
	align-items: center;
	justify-content: center;
	padding: 24px;
	z-index: 2000;
}

.booking-lead-modal.is-open {
	display: flex;
}

.booking-lead-dialog {
	position: relative;
	width: min(760px, 100%);
	max-height: calc(100vh - 48px);
	overflow: auto;
	background: #f7f4ee;
	border-radius: 24px;
	padding: 28px;
	box-shadow: 0 24px 60px rgba(0,0,0,0.2);
}

.booking-lead-close {
	position: absolute;
	top: 12px;
	right: 12px;
	width: 38px;
	height: 38px;
	border: 0;
	border-radius: 50%;
	background: rgba(255,255,255,0.92);
	color: #5f5548;
	font-size: 28px;
	line-height: 1;
}

.booking-lead-head {
	margin-bottom: 18px;
	padding-right: 42px;
}

.booking-lead-head h3 {
	margin-bottom: 8px;
}

.booking-lead-head p {
	margin: 0;
	color: #5e564b;
}

.booking-lead-field label span {
	color: #8d3b3b;
}

.booking-label-optional {
	color: #7d7366 !important;
	font-weight: 400;
	font-size: 12px;
	text-transform: lowercase;
}

.booking-lead-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.booking-lead-field--full {
	grid-column: 1 / -1;
}

.booking-lead-modal .form-control,
.booking-lead-modal input.form-control,
.booking-lead-modal select.form-control,
.booking-lead-modal textarea.form-control {
	background: #fff !important;
	color: #222 !important;
	border: 1px solid #e5dccf !important;
	border-radius: 14px !important;
	padding: 12px 14px !important;
	height: 48px;
	box-shadow: none !important;
}

.booking-lead-modal textarea.form-control {
	height: auto;
	min-height: 120px;
	resize: vertical;
}

.booking-lead-modal select.form-control {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	padding-right: 42px !important;
	background-image: linear-gradient(45deg, transparent 50%, #8a7b66 50%), linear-gradient(135deg, #8a7b66 50%, transparent 50%);
	background-position: calc(100% - 20px) calc(50% - 2px), calc(100% - 14px) calc(50% - 2px);
	background-size: 6px 6px, 6px 6px;
	background-repeat: no-repeat;
}

.booking-lead-modal select.form-control:disabled {
	background-color: #f6f3ee !important;
	color: #888 !important;
	cursor: not-allowed;
}

.booking-lead-modal .booking-lead-input-comment.form-control {
	min-height: 120px;
}

.booking-lead-modal .form-control:focus,
.booking-lead-modal input.form-control:focus,
.booking-lead-modal select.form-control:focus,
.booking-lead-modal textarea.form-control:focus {
	border-color: #e5dccf !important;
	box-shadow: 0 0 0 3px rgba(31, 122, 76, 0.15) !important;
	outline: none !important;
}

.booking-lead-actions {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-top: 20px;
}

.booking-lead-submit {
	width: auto;
	flex: 0 0 auto;
}

.booking-lead-submit .btn {
	width: auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.booking-lead-message {
	display: none;
	font-size: 14px;
}

.booking-lead-message.ok {
	display: block;
	color: #1f7a4c;
}

.booking-lead-message.error {
	display: block;
	color: #b33a3a;
}

#ui-datepicker-div.booking-ui-datepicker {
	background: #f7f4ee;
	border: 1px solid #e5dccf;
	border-radius: 18px;
	padding: 12px;
	transform: translateY(10px);
	box-shadow: 0 20px 50px rgba(0,0,0,0.16);
	z-index: 2500 !important;
}

#ui-datepicker-div.booking-ui-datepicker .ui-datepicker-header {
	border: 0;
	background: transparent;
	color: #3f352a;
	padding: 0 0 10px;
}

#ui-datepicker-div.booking-ui-datepicker .ui-datepicker-prev,
#ui-datepicker-div.booking-ui-datepicker .ui-datepicker-next {
	top: 2px;
	width: 32px;
	height: 32px;
	border-radius: 10px;
	border: 1px solid #e5dccf;
	background: #fff;
	text-decoration: none;
	cursor: pointer;
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	transition: background-color 0.2s ease, border-color 0.2s ease;
}

#ui-datepicker-div.booking-ui-datepicker .ui-datepicker-prev:hover,
#ui-datepicker-div.booking-ui-datepicker .ui-datepicker-next:hover {
	background: #efe6db;
}

#ui-datepicker-div.booking-ui-datepicker .ui-datepicker-prev span,
#ui-datepicker-div.booking-ui-datepicker .ui-datepicker-next span {
	background: none !important;
	text-indent: -9999px;
	overflow: hidden;
	width: 100%;
	height: 100%;
	margin: 0;
	left: 0;
	top: 0;
	position: absolute;
	display: block;
}

#ui-datepicker-div.booking-ui-datepicker .ui-datepicker-prev:before,
#ui-datepicker-div.booking-ui-datepicker .ui-datepicker-next:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 8px;
	height: 8px;
	border-top: 2px solid #3f352a;
	border-right: 2px solid #3f352a;
	transform-origin: center;
}

#ui-datepicker-div.booking-ui-datepicker .ui-datepicker-prev:before {
	transform: translate(-35%, -50%) rotate(-135deg);
}

#ui-datepicker-div.booking-ui-datepicker .ui-datepicker-next:before {
	transform: translate(-65%, -50%) rotate(45deg);
}

#ui-datepicker-div.booking-ui-datepicker .ui-datepicker-title {
	font-weight: 700;
}

#ui-datepicker-div.booking-ui-datepicker table {
	margin: 0;
}

#ui-datepicker-div.booking-ui-datepicker th {
	color: #7a6a55;
	font-weight: 600;
	padding: 6px 4px;
}

#ui-datepicker-div.booking-ui-datepicker td {
	padding: 2px;
}

#ui-datepicker-div.booking-ui-datepicker td a,
#ui-datepicker-div.booking-ui-datepicker td span {
	display: block;
	text-align: center;
	border: 0;
	border-radius: 10px;
	background: #fff;
	color: #3f352a;
	padding: 8px 0;
}

#ui-datepicker-div.booking-ui-datepicker td a:hover {
	background: #efe6db;
}

#ui-datepicker-div.booking-ui-datepicker .ui-state-active,
#ui-datepicker-div.booking-ui-datepicker .ui-widget-content .ui-state-active {
	background: #313131;
	color: #fff !important;
}

#ui-datepicker-div.booking-ui-datepicker .ui-state-active:hover,
#ui-datepicker-div.booking-ui-datepicker .ui-widget-content .ui-state-active:hover,
#ui-datepicker-div.booking-ui-datepicker .ui-state-active:focus,
#ui-datepicker-div.booking-ui-datepicker .ui-widget-content .ui-state-active:focus {
	background: #313131;
	color: #fff !important;
}

#ui-datepicker-div.booking-ui-datepicker .ui-datepicker-today a {
	box-shadow: inset 0 0 0 1px #313131;
}

.booking-actions {
	display: none;
	justify-content: space-between;
	align-items: center;
}

.booking-actions .btn {
	background: #fff;
	border: 1px solid #e5dccf;
	color: #333;
	border-radius: 14px;
	padding: 10px 16px;
}

.booking-actions .btn:hover {
	background: #f5efe6;
}

.booking-table {
	margin-top: 22px;
}

.booking-table .table {
	background: #fff;
	border-radius: 12px;
	overflow: hidden;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid rgba(216, 206, 191, 0.55);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.7);
}

.booking-table th,
.booking-table td {
	vertical-align: top;
	padding: 14px 12px !important;
	border-top: 1px solid rgba(230, 221, 208, 0.7) !important;
	border-left: 1px solid rgba(230, 221, 208, 0.7) !important;
}

.booking-table .table thead th {
	background: #f6efe5;
	border-top: 0 !important;
	border-bottom: 1px solid rgba(216, 206, 191, 0.75) !important;
}

.booking-table .table thead th:first-child,
.booking-table .table tbody td:first-child {
	border-left: 0 !important;
}

.booking-table .table tbody tr:first-child td {
	border-top: 0 !important;
}

.booking-calendar td:first-child {
	background: #fbf7f1;
	min-width: 130px;
	font-weight: 600;
	box-shadow: inset -1px 0 0 rgba(216, 206, 191, 0.75);
}

.booking-calendar th:not(:first-child),
.booking-calendar td:not(:first-child) {
	min-width: 220px;
	border-left: 1px solid rgba(221, 211, 197, 0.72) !important;
}

.booking-calendar tbody tr:nth-child(even) td:first-child {
	background: #f7f0e6;
}

.booking-calendar tbody tr td:not(:first-child) {
	background-image: linear-gradient(180deg, rgba(255,255,255,0.97), rgba(251,247,241,0.92));
}

.booking-calendar tbody tr + tr td {
	border-top: 1px solid rgba(221, 211, 197, 0.72) !important;
}

.booking-calendar thead th + th {
	border-left: 1px solid rgba(221, 211, 197, 0.72) !important;
}

.booking-calendar tbody tr:nth-child(even) td:not(:first-child) {
	background-image: linear-gradient(180deg, rgba(252,249,245,0.98), rgba(248,243,236,0.94));
}

.booking-calendar th:not(:first-child),
.booking-calendar td:not(:first-child) {
	box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.55);
}

.booking-worker-head {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	justify-content: center;
}

.booking-worker-link {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	justify-content: center;
	color: inherit;
	text-decoration: none !important;
}

.booking-worker-link:hover,
.booking-worker-link:focus {
	color: inherit;
	text-decoration: none !important;
	opacity: .82;
}

.booking-worker-meta {
	display: flex;
	align-items: center;
	gap: 8px;
}

.booking-worker-head img {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	object-fit: cover;
	border: 1px solid #ded7c9;
}

.booking-worker-rating {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	color: #7a6a55;
}

.booking-worker-stars {
	display: inline-flex;
	gap: 2px;
}

.booking-worker-stars .star {
	position: relative;
	display: inline-block;
	width: 12px;
	line-height: 1;
	font-size: 12px;
	color: #d8cdbf;
}

.booking-worker-stars .star::before {
	content: "\2605";
}

.booking-worker-stars .star.full {
	color: #f3b64a;
}

.booking-worker-stars .star.half {
	color: #d8cdbf;
}

.booking-worker-stars .star.half::after {
	content: "\2605";
	position: absolute;
	left: 0;
	top: 0;
	width: 50%;
	overflow: hidden;
	color: #f3b64a;
}

.booking-mobile-worker-picker {
	display: none;
	margin-bottom: 14px;
}

.booking-mobile-worker-picker__label {
	display: block;
	margin-bottom: 6px;
	font-weight: 600;
	color: #6f6253;
}

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

.booking-slot {
	display: inline-block;
	padding: 6px 8px;
	border-radius: 6px;
	background: #fff;
	border: 1px solid #ded7c9;
	cursor: pointer;
	font-size: 12px;
	margin: 4px 4px 0 0;
}

.booking-slot.is-busy {
	background: #f4f0ea;
	color: #aaa;
	cursor: not-allowed;
}

.booking-slot.is-selected {
	background: #1f7a4c;
	color: #fff;
	border-color: #1f7a4c;
}

.booking-slot.is-selected-range {
	background: #6aa981;
	color: #fff;
	border-color: #6aa981;
}

.booking-summary {
	background: #fff;
	border: 1px solid #ebe2d4;
	border-radius: 14px;
	padding: 0 14px;
	height: 48px;
	min-height: 48px;
	display: flex;
	align-items: center;
	box-sizing: border-box;
	margin-top: 18px;
}

.booking-message {
	margin-top: 10px;
	padding: 10px 12px;
	border-radius: 10px;
	background: #f7f2e9;
	border: 1px solid #e7ddcf;
	color: #6f6253;
	font-weight: 600;
	display: none;
}

.booking-message.ok {
	background: #e9f6ef;
	border-color: #cfe9db;
	color: #1f7a4c;
}

.booking-message.error {
	background: #fdeeee;
	border-color: #f3c8c8;
	color: #c0392b;
}

.booking-field {
	position: relative;
}

.booking-field-error input,
.booking-field-error select,
.booking-field-error textarea {
	border-color: #d9534f !important;
	box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.1);
}

.booking-field-error .booking-field-note {
	color: #d9534f;
}

.booking-field-note {
	display: block;
	margin-top: 6px;
	font-size: 12px;
	color: #7a6a55;
}

.booking-form .btn {
	background: #3367c1;
	color: #fff;
	border: 0 !important;
	padding: 12px 22px;
	border-radius: 14px;
	font-weight: 700;
	height: 48px;
	transition: all 0.3s ease;
}

.booking-form .btn:hover {
	color: #fff;
}

.booking-section-title {
	display: flex;
	align-items: center;
	gap: 12px;
	color: #6f6253;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	font-size: 12px;
}

.booking-section-title::after {
	content: "";
	height: 1px;
	background: #e7ddcf;
	flex: 1;
}

.booking-pay-modal {
	position: fixed;
	inset: 0;
	z-index: 9999;
	background: rgba(0,0,0,0.45);
	display: none;
	align-items: center;
	justify-content: center;
	padding: 16px;
}

.booking-pay-modal.is-open {
	display: flex;
}

.booking-pay-dialog {
	width: min(760px, 96vw);
	background: #fff;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 20px 48px rgba(0,0,0,0.25);
}

.booking-pay-head {
	padding: 12px 16px;
	border-bottom: 1px solid #ece5da;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.booking-pay-body {
	padding: 0;
}

.booking-pay-iframe {
	width: 100%;
	height: 520px;
	border: 0;
	display: block;
}

.booking-pay-status {
	font-size: 12px;
	color: #7a6a55;
}

@media (max-width: 991px) {
	.booking-steps,
	.booking-controls {
		grid-template-columns: 1fr;
	}

	.booking-hero h1 {
		font-size: 34px;
	}
}

.form-button .btn {
    cursor: pointer;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    width: 100%;
    color: rgb(255, 255, 255);
    font-size: 16px;
    background: rgb(51, 103, 193);
    transition: all 0.3s ease 0s;
}

.form-button .btn:hover {
	color: #fff;
	background: #313131;
}

.form-button .btn2 {
	background: #313131;
}

.form-button .btn2:hover {
	background: #fff;
	color: #3367c1;
}


/*
-------------------------------
Faq
-------------------------------
*/

.faq-home {
	padding-left: 30px;
}

.faq-item {
	border: 0px;
	margin-bottom: 15px;
}

.faq-item.card {
	background: none;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.faq-header button.faq-button {
	cursor: pointer;
	font-size: 16px !important;
	text-align: left;
	display: block;
	width: 100%;
	padding: 15px;
	font-weight: 500;
	text-decoration: none;
	background: #3367c1;
	color: #fff;
	border-radius: var(--frontend-radius-lg) var(--frontend-radius-lg) 0 0;
	-webkit-border-radius: var(--frontend-radius-lg) var(--frontend-radius-lg) 0 0;
}

.faq-header button.faq-button.collapsed {
	background: #f6faff;
	
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
}
.faq-header button.faq-button.collapsed:hover{
    background: #3367c1;
	color: #fff;
}

.faq-header button.faq-button i {
	margin-right: 5px;
}

.faq-header button.faq-button.collapsed i {
	margin-right: 5px;
}

.faq-body {
	border: 1px solid #fff;
	border-top: 0;
	background: #fff;
	padding: 25px;
	line-height: 1.6;
	border-radius: 0 0 var(--frontend-radius-lg) var(--frontend-radius-lg);
	-webkit-border-radius: 0 0 var(--frontend-radius-lg) var(--frontend-radius-lg);
}

.faq-home .faq-body {
	padding: 15px;
}

.faq-body ul {
	list-style: none;
	margin: 0;
	margin-top: 20px;
	padding: 0;
}

.faq-home .faq-body ul {
	margin-top: 10px;
}

.home-faq-section {
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	position: relative;
}

.bg-faq-home {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 0.8;
}

.home-faq-section .container {
	position: relative;
	z-index: 1;
}

.home-faq-section .headline h2,
.home-faq-section .headline h3,
.home-faq-section .faq-header button.faq-button,
.home-faq-section .faq-body,
.home-faq-section .faq-body p,
.home-faq-section .faq-body li,
.home-faq-section .faq-body ul {
	color: #fff;
}

.home-faq-section .faq-header button.faq-button,
.home-faq-section .faq-header button.faq-button.collapsed,
.home-faq-section .faq-header button.faq-button.collapsed:hover {
	background: rgba(17, 24, 39, 0.82);
	color: #fff;
	border: 1px solid rgba(255, 255, 255, 0.12);
}

.home-faq-section .faq-body {
	background: rgba(17, 24, 39, 0.74);
	border-color: rgba(255, 255, 255, 0.12);
}

.home-testimonial-section .headline h2,
.home-testimonial-section .headline h3,
.home-testimonial-section .testimonial-name h4,
.home-testimonial-section .testimonial-name p,
.home-testimonial-section .testimonial-description p {
	color: #fff;
}

.faq-body ul li {
	position: relative;
	margin-top: 5px;
	padding-left: 20px;
}

.faq-body ul li:before {
	position: absolute;
	content: '\f00c';
	font-family: 'fontawesome';
	top: 0;
	left: 0;
	color: #3367c1;
}


/*
-------------------------------
Blog
-------------------------------
*/
.blog-item {
	border: 1px solid #f5f5f5;
	margin-top: 30px;
}

.blog-image {
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
	height: 196px;
	border-radius: var(--frontend-radius-lg) var(--frontend-radius-lg) 0 0;
	-webkit-border-radius: var(--frontend-radius-lg) var(--frontend-radius-lg) 0 0;
}

.blog-text {
	background: #f5f5f5;
	padding: 20px;
}

.blog-item h3 a {
	font-size: 26px;
	font-weight: 700;
	text-decoration: none;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	margin-bottom: 8px;
}

.blog-item h3 a:hover {
	color: #3367c1;
}

.blog-item span {
	display: block;
	font-size: 15px;
}

.blog-item span i {
	margin-right: 5px;
	color: #3367c1;
}

.blog-item p {
	margin-top: 15px;
	margin-bottom: 5px;
}

.blog-author {
	overflow: hidden;
	background: #e6e6e6;
	border-radius: 0 0 var(--frontend-radius-lg) var(--frontend-radius-lg);
	-webkit-border-radius: 0 0 var(--frontend-radius-lg) var(--frontend-radius-lg);
}

.blog-author ul {
	list-style: none;
	margin: 0;
	padding: 0;
	margin-left: 5px;
}

.blog-author li {
	display: inline-block;
}

.blog-author li a {
	display: inline-block;
	font-size: 15px;
	font-weight: 700;
	padding: 15px 10px;
	text-decoration: none;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.blog-author li a i {
	margin-right: 5px;
	color: #3367c1;
}

.blog-author li a:hover {
	color: #3367c1;
}

.blog-author li.blog-button {
	background: transparent;
	float: right;
}

.blog-author li.blog-button a {
	background: #3367c1;
	padding: 15px 30px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	display: inline-block;
	opacity: 1;
	border-radius: 0 !important;
	-webkit-border-radius: 0 !important;
	border-bottom-right-radius: var(--frontend-radius-lg) !important;
	-webkit-border-bottom-right-radius: var(--frontend-radius-lg) !important;
}

.blog-author li.blog-button i {
	color: #fff;
	margin: 0;
}

.blog-author li.blog-button a:hover {
	background: #3367c1 !important;
	opacity: 0.72 !important;
	box-shadow: none !important;
	filter: none !important;
	color: #fff !important;
}

.blog-author li.blog-button a:hover i {
	color: #fff !important;
	opacity: 1 !important;
}

.blog-carousel .owl-nav .owl-prev,
.blog-carousel .owl-nav .owl-next {
	text-align: center;
	font-size: 16px;
	position: absolute;
	width: 40px;
	height: 40px;
	line-height: 40px;
	top: 0;
	margin-top: -20px;
	background: #3367c1;
	color: #fff;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.blog-carousel .owl-nav .owl-prev {
	right: 0;
	margin-right: 38px;
}

.blog-carousel .owl-nav .owl-next {
	right: 0;
	margin-right: 0px;
}

.blog-carousel .owl-nav .owl-prev:hover,
.blog-carousel .owl-nav .owl-next:hover {
	color: #fff;
	background: #313131;
}

.blog-one-item {
	margin-top: 30px;
}

.blog-one-item img {
	width: 100%!important;
    border-radius: var(--frontend-radius-lg) !important;
    -webkit-border-radius: var(--frontend-radius-lg) !important;
    box-shadow: 0px 0px 15px rgb(0 0 0 / 10%);
}

.blog-one-text {
	margin-top: 20px;
}

.blog-one-text ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.blog-one-text ul li {
	display: inline-block;
	margin-right: 15px;
	margin-bottom: 5px;
}

.blog-one-text ul li:last-child {
	margin-right: 0;
}

.blog-one-text ul li a {
    font-family: 'Work Sans', sans-serif;
	text-decoration: none;
}

.blog-one-text ul li i {
	color: #3367c1;
	margin-right: 5px;
}
.blog-one-text h3{
    margin-bottom: 15px;
}
.blog-one-text h3 a {
	font-size: 28px;
	font-weight: 700;
	text-decoration: none;
    display: inline-block;
	margin-top: 15px;
}

.blog-one-text h3 a:hover {
	color: #3367c1;
}

.blog-one-text p {
	margin-bottom: 20px;
}

/*
-------------------------------
Sidebar
-------------------------------
*/
.sidebar {
	margin-top: 30px;
}

.sidebar-item {
	margin-top: 30px;
    border: 1px solid rgba(17, 24, 39, 0.08);
    padding: 30px;
    background: #fff;
    border-radius: var(--frontend-radius-lg) !important;
    -webkit-border-radius: var(--frontend-radius-lg) !important;
    box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.05), 0 0 34px rgba(15, 23, 42, 0.14);
}
.sidebar-item:first-child {
	margin-top: 0;
}
.sidebar-item .input-group {
    border-radius: var(--frontend-radius-lg) !important;
    -webkit-border-radius: var(--frontend-radius-lg) !important;
}
.sidebar-item input {
	font-size: 15px;
    font-family: 'Work Sans', sans-serif;
	height: 40px;
	border: 1px solid #e1e1e1;
}

.sidebar-item button {
    font-size: 15px;
	background: #3367c1;
	border: 1px solid #3367c1;
    color: #fff;
    padding: 6px 15px;
    border-radius: var(--frontend-radius);
    height: 40px;
    -webkit-border-radius: var(--frontend-radius);
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.sidebar-item button:hover {
	cursor: pointer;
}

.sidebar-item h3 {
	display: inline-block;
	position: relative;
	font-size: 22px;
	font-weight: 700;
    text-transform: uppercase;
	padding-bottom: 12px;
	margin-bottom: 25px;
}

.sidebar-item h3:before {
	position: absolute;
	content: '';
	width: 100%;
	height: 0px;
	background: #3367c1;
	left: 0;
	bottom: 0;
}

.sidebar-item h3:after {
	position: absolute;
	content: '';
	width: 100%;
	height: 0px;
	background: #3367c1;
	left: 0;
	bottom: -5px;
}

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

.sidebar-item ul li {
	padding: 8px 0;
}

.sidebar-item ul li:first-child {
	padding-top: 0;
}

.sidebar-item ul li a {
	display: inline-block;
	position: relative;
	text-decoration: none;
	padding-left: 10px;
    font-family: 'Work Sans', sans-serif;
}

.sidebar-item ul li a:before {
	position: absolute;
	content: '\F105';
	font-family: "Font Awesome 5 Pro";
	top: 0;
	left: 0;
	
}

.sidebar-recent-item {
	overflow: hidden;
	display: table;
	margin-bottom: 25px;
}

.recent-photo {
	vertical-align: top;
	display: table-cell;
	float: left;
	width: 105px;
	padding-right: 8px;
}

.recent-photo img {
	max-width: 100%;
	height: auto;
    border-radius: 15px !important;
    -webkit-border-radius: 15px !important;
}

.recent-text {
	vertical-align: top;
	display: table-cell;
	padding-left: 5px;
}

.recent-text a {
	vertical-align: top;
	display: block;
	margin-bottom: 5px;
	text-decoration: none;
    font-family: 'Work Sans', sans-serif;
}

.recent-text a:hover {
	color: #3367c1;
}

.rpwwt-post-date {
	position: relative;
	font-size: 13px;
	color: #b7b7b7;
	padding-left: 21px;
}

.rpwwt-post-date:before {
	position: absolute;
	content: '\f073';
	font-family: "Font Awesome 5 Pro";
	left: 0;
	top: 0;
}

.tagcloud a {
	font-size: 15px;
    font-family: 'Work Sans', sans-serif;
	display: inline-block;
	border: 1px solid #ddd;
	padding: 8px 8px;
	margin-right: 7px;
	margin-bottom: 8px;
	text-decoration: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.tagcloud a:hover {
	color: #3367c1;
}

/*
-------------------------------
Search widget
-------------------------------
*/

.search-widget {
    border-radius: var(--frontend-radius-lg) !important;
    -webkit-border-radius: var(--frontend-radius-lg) !important;
}
.search-widget input {
	border: 2px solid #e1e1e1;
}

.search-widget button {

}

.search-widget button:hover {
	cursor: pointer;
}

/*
-------------------------------
Pagination
-------------------------------
*/
.pagination a:hover {
	text-decoration: none;
}


/*
-------------------------------
Blog Single
-------------------------------
*/

.single-blog {
	margin-top: 30px;
}

.single-blog img {
	margin-bottom: 30px;
    border-radius: var(--frontend-radius-lg) !important;
    -webkit-border-radius: var(--frontend-radius-lg) !important;
    box-shadow: 0px 0px 15px rgb(0 0 0 / 10%);
}

.single-blog h3 {
	font-size: 24px;
    text-transform: uppercase;
	font-weight: 700;
	margin-bottom: 15px;
}

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

.single-blog ul li {
	display: inline-block;
	margin-top: 2px;
	margin-right: 15px;
	font-size: 14px;
	font-family: 'Work Sans', sans-serif;
}

.single-blog ul li i {
	color: #3367c1;
	margin-right: 5px;
}

.single-blog ul li a {
	text-decoration: none;
	font-size: 14px;
	font-family: 'Work Sans', sans-serif;
}

.single-blog p {
	margin: 0;
	margin-top: 15px;
}

.comment-form span {
	font-size: 16px;
	color: #3367c1;
}

.comment-form textarea {
	height: 220px;
}

.comment-form .btn {
	cursor: pointer;
	display: inline-block;
	font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
	padding: 14px 30px;
	border: 1px solid #3367c1;
	background: #3367c1;
	color: #fff;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.comment-form .btn:hover {
	color: #fff;
	background: #313131;
	border: 1px solid #313131;
}

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

.comment-list ul li {
	border-bottom: 1px solid #ddd;
	padding-bottom: 30px;
	margin-bottom: 30px;
}

.comment-list ul li:last-child {
	border: 0;
	padding-bottom: 0px;
	margin-bottom: 0px;
}

.comment-list .comment-item {
	overflow: hidden;
	display: table;
	width: 100%;
}

.comment-list .thumb {
	display: table-cell;
	vertical-align: top;
	width: 80px;
}

.comment-list .com-text {
	display: table-cell;
	vertical-align: top;
	padding: 0 15px;
}

.comment-list .com-text h5 {
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 7px;
}

.comment-list .com-text span.date {
	margin-right: 30px;
	font-size: 14px;
}

.comment-list .com-text span.date i {
	color: #3367c1;
	margin-right: 3px;
}

.comment-list .com-text span a {
	display: inline-block;
    text-decoration: none;
    font-family: 'Work Sans', sans-serif;
    font-weight: 500;
	padding: 5px 10px;
	background: #3367c1;
	color: #fff;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.comment-list .com-text span a:hover {
	background: #313131;
	color: #fff;
}

.comment-list .com-text p {
	margin-top: 12px;
	margin-bottom: 0;
}

.comment-list ul ul.children {
	margin-top: 20px;
	margin-left: 40px;
}

.comment-list ul ul.children li {
	border: 0;
	padding-bottom: 0px;
	margin-bottom: 0px;
	margin-top: 40px;
}


/*
-------------------------------
Brand
-------------------------------
*/

.brand-item img {
	max-width: 100%;
	height: auto;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
}


/*
-------------------------------
Call To Action
-------------------------------
*/

.call-us {
	position: relative;
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    padding-top: 55px;
    padding-bottom: 70px;
}
.call-us:before{
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #3367c1;
    opacity: 0.8;
}
.call-text {
	margin-top: 28px;
}

.call-text h3 {
	font-size: 24px;
    font-weight: 500;
    color: #fff;
	margin: 0;
}

.call-us .button {
    position: relative;
    max-width: 100%;
	margin-top: 15px;
	margin-right: 15px;
	-webkit-animation-duration: .8s;
	animation-duration: .8s;
	-webkit-animation-delay: .8s;
	animation-delay: .8s;
}

.call-us .button a {
    display: inline-block;
    text-align: center;
    color: inherit;
	font-size: 18px;
    text-transform: uppercase;
	background: #fff;
	border: 0;
    padding: 17px 30px;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
    font-weight: 400;
    letter-spacing: 0.15px;
    z-index: 1;
    position: relative;
	transition: color .2s ease, background-color .2s ease;
	-webkit-transition: color .2s ease, background-color .2s ease;
}

.call-us .button a:hover {
    text-decoration: none;
}

.call-us .button a i {
	color: inherit;
	transition: color .2s ease;
	-webkit-transition: color .2s ease;
}

.call-us .button a:after {
    content: none;
    display: none;
}

.call-us .button a:hover::after {
    content: none;
}

/*
-------------------------------
Footer
-------------------------------
*/

.footer-area {
	background: #f5f5f5;
	position: relative;
}

.footer-item {
	
	margin-top: 30px;
}

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

.footer-item ul li {
	display: block;
	margin-bottom: 12px;
}

.footer-item ul li:last-child {
	margin-bottom: 0;
}

.footer-item ul li a {
	position: relative;
	display: inline-block;
    font-family: 'Work Sans', sans-serif;
	
	padding-left: 25px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.footer-item ul li a:before {
	position: absolute;
	content: '\f15c';
	font-family: "Font Awesome 5 Pro";
	top: 0;
	left: 0;
	
}

.footer-item ul li a:hover {
	color: #3367c1;
}

.footer-item p,
.footer-item a {
	text-decoration: none;
	
}

.footer-item h3 {
	display: inline-block;
	position: relative;
	font-size: 22px;
    font-weight: 700;
    text-transform: uppercase;
	
	padding-bottom: 12px;
	margin-bottom: 36px;
}

.footer-item h3:before {
	position: absolute;
	content: '';
	width: 100%;
	height: 0px;
	background: #3367c1;
	left: 0;
	bottom: 0;
}

.footer-item h3:after {
	position: absolute;
	content: '';
	width: 100%;
	height: 0px;
	background: #3367c1;
	left: 0;
	bottom: -5px;
}

.footer-item .input-group {
	margin-top: 25px;
}

.footer-address-item {
	position: relative;
	padding-left: 30px;
	margin-bottom: 12px;
}

.footer-address-item .icon {
	position: absolute;
	top: -2px;
	left: 0;
	font-size: 17px;
}

.footer-address-item .text {
	font-size: 15px;
}

.footer-item ul.footer-social {
	margin-top: 25px;
}

.footer-item ul.footer-social li {
	display: inline-block;
	margin-top: 5px;
	margin-right: 5px;
	padding: 0;
}

.footer-item ul.footer-social li a:before {
	display: none;
}

.footer-item ul.footer-social li a {
	text-align: center;
	display: block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	color: #fff;
	background: #3367c1;
	border: 1px solid #3367c1;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
	padding: 0;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}
.footer-item ul.footer-social li a:hover{
    background: #313131;
	border: 1px solid #313131;
}
.footer-item .input-group .btn {
	font-size: 16px !important;
}

.footer-recent-item {
	display: table;
	margin-bottom: 15px;
}

.footer-recent-photo {
	vertical-align: top;
	display: table-cell;
	float: left;
	width: 90px;
	padding-right: 8px;
}

.footer-recent-photo img {
	max-width: 100%;
	height: auto;
}

.footer-recent-text {
	vertical-align: top;
	display: table-cell;
	padding-left: 5px;
}

.footer-recent-text a {
	vertical-align: top;
	display: block;
	margin-bottom: 5px;
}

.footer-recent-text a:hover {
	color: #3367c1;
}

.footer-post-date {
	position: relative;
	font-size: 13px;
	
	padding-left: 21px;
}

.footer-post-date:before {
	position: absolute;
	content: '\f073';
	font-family: "Font Awesome 5 Pro";
	top: 0;
	left: 0;
}

.footer-item .form-control {
	font-size: 15px;
    font-family: 'Work Sans', sans-serif;
	height: 48px;
	border: 2px solid #3367c1;
	z-index: 3 !important;
}

.footer-item .btn {
	cursor: pointer;
	font-size: 20px;
	border: 2px solid #3367c1;
	background: #3367c1;
	color: #fff;
	z-index: 3 !important;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.footer-project {
	padding-left: 5px;
	padding-right: 5px;
	margin-bottom: 10px;
}

.footer-project img {
	border-radius: 15px;
	-webkit-border-radius: 15px;
    box-shadow: 0px 0px 15px rgb(0 0 0 / 10%);
}


/*
-------------------------------
Footer Bottom
-------------------------------
*/

.footer-bottom {
	background: #313131;
}

.footer-bottom .container {
    border-top: 1px solid #9a9a9a;
}

.footer-menu {
	border-bottom: 1px solid #9a9a9a;
}

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

.footer-menu ul li {
	display: inline-block;
	margin: 0px 10px;
	padding-bottom: 15px;
}

.footer-menu ul li a {
	font-size: 15px;
    font-family: 'Work Sans', sans-serif;
	color: #fff;
	text-decoration: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.footer-menu ul li a:hover {
	color: #f1f1f1;
}

.copy-text {
	padding-top: 0px;
}

.copy-text p {
	font-size: 15px;
	color: #fff;
	margin: 0;
}

.copy-text a {
	color: #fff;
    font-family: 'Work Sans', sans-serif;
	text-decoration: none;
}

/*
-------------------------------
Banner
-------------------------------
*/

.banner-slider {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	height: 299px;
	position: relative;
}

.bannder-table {
	display: table;
	width: 100%;
	height: 100%;
}

.banner-text {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	position: relative;
}

.banner-text h1 {
	font-size: 34px;
	font-weight: 700;
	text-transform: uppercase;
	color: #fff;
	margin: 0;
}

/*
-------------------------------
Scroll To Top
-------------------------------
*/

.scroll-top {
	cursor: pointer;
	text-align: center;
	font-size: 22px;
	position: fixed;
	width: 50px;
	height: 50px;
	line-height: 50px !important;
	bottom: 20px;
	right: 20px;
	background: #3367c1;
	border-radius: var(--frontend-radius-lg);
	-webkit-border-radius: var(--frontend-radius-lg);
	color: #fff;
	opacity: 0.7;
	z-index: 9999;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.scroll-top:hover {
	opacity: 1;
	color: #fff;
	background: #313131;
}

/*
-------------------------------
Event
-------------------------------
*/
.event-detail .project-thumb {
    margin-bottom: 40px;
    position: relative;
}

.event-detail .project-thumb img {
    margin-bottom: -8px;
}

.event-detail .project-thumb .project-info {
    position: relative;
    right: 0;
    bottom: 30px;
    background-color: rgba(250, 250, 250, 0.95);
    box-shadow: 0px 0px 25px rgba(0, 0, 0, 0.1);
    border-radius: 15px;
    padding: 30px 40px;
    text-align: center;
}

@media (min-width: 992px) {
    .event-detail .project-thumb .project-info {
      position: absolute;
      right: 30px;
      bottom: 30px;
      -moz-text-align-last: left;
           text-align-last: left;
    }
}

.event-detail .project-thumb .project-info ul,
.event-detail .project-thumb .project-info ul li {
    font-size: 15px;
    color: #716f85;
}

.event-detail .project-thumb .project-info ul {
    margin-bottom: 0px;
}

.event-detail .project-thumb .project-info ul li {
    margin-bottom: 12px;
}

.event-detail .project-thumb .project-info ul li span {
    display: block;
    font-weight: 500;
    color: #36334c;
}

.event-detail .project-thumb .project-info ul li:last-child {
    margin-bottom: 0px;
}

.event-item {
	border: 1px solid #ddd;
	padding: 30px;
	padding-top: 15px;
	margin-top: 30px;
    border-radius: var(--frontend-radius-lg) !important;
    -webkit-border-radius: var(--frontend-radius-lg) !important;
    box-shadow: 0px 0px 15px rgb(0 0 0 / 10%);
}

.event-photo {
	background-position: top center;
	background-size: cover;
	background-repeat: no-repeat;
	height: 220px;
	margin-top: 15px;
    border-radius: var(--frontend-radius-lg) !important;
    -webkit-border-radius: var(--frontend-radius-lg) !important;
}

.event-body {
	margin-top: 15px;
}

.event-header {
	overflow: hidden;
	margin-bottom: 15px;
	display: table;
	width: 100%;
}

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

li.event-header-left {
	float: left;
	vertical-align: top;
	display: table-cell;
	width: 100%;
	padding-right: 10px;
}

li.event-header-left h4 {
	font-size: 22px;
    font-weight: 700;
	margin-bottom: 5px;
}

li.event-header-left span {
	margin-right: 15px;
}

li.event-header-left span:last-child {
	margin-right: 0;
}

li.event-header-left i {
	color: #3367c1;
	margin-right: 4px;
}

li.event-header-right {
	float: right;
	vertical-align: top;
	display: table-cell;
}

li.event-header-right h5 {
	font-size: 16px;
    font-family: 'Work Sans', sans-serif;
	margin-bottom: 2px;
}

li.event-header-right span {
	color: #3367c1;
	font-size: 26px;
	font-weight: 700;
}

li.event-header-right p {
	font-size: 18px;
    font-weight: 700;
	margin: 0;
}

.event-content .button a {
	padding: 12px 20px;
}

/*
-------------------------------
Event Detail
-------------------------------
*/

.event-detail-content {
	margin-top: 30px;
}

.event-contact-item {
	text-align: center;
	background: #3367c1;
    color: #fff;
	padding: 30px 5px;
	margin-top: 30px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.event-contact-icon {
	width: 50px;
	height: 50px;
	line-height: 50px;
    color: #fff;
	border: 1px solid #fff;
	margin: 0 auto;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.event-contact-icon img {
	width: 25px;
	height: 25px;
}
.event-contact-icon i {
	font-size: 18px;
}
.event-contact-text {
	margin-top: 20px;
}

.event-contact-text h4 {
	font-size: 18px;
    font-weight: 700;
    color: #fff;
    text-transform: uppercase;
	margin-bottom: 5px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.event-contact-text p {
	margin: 0;
}

.event-contact-item:hover{
    background: #f5f5f5;
    
}
.event-contact-item:hover .event-contact-icon{
    color: #3367c1;
	border: 1px solid #3367c1;
}
.event-contact-item:hover .event-contact-text h4{
    
}

.event-carousel {
	border: 0px solid #e1e1e1;
}

.event-carousel .owl-nav .owl-prev,
.event-carousel .owl-nav .owl-next {
	text-align: center;
	font-size: 18px;
	position: absolute;
	width: 40px;
	height: 50px;
	line-height: 48px;
	top: 50%;
	margin-top: -25px;
	background: #3367c1;
	color: #fff;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.event-carousel .owl-nav .owl-prev {
	left: 0;
}

.event-carousel .owl-nav .owl-next {
	right: 0;
}

.event-carousel .owl-nav .owl-prev:hover,
.event-carousel .owl-nav .owl-next:hover {
	color: #fff;
	background: #313131;
}

.event-detail-text {
	margin-top: 30px;
}

.event-detail-text h3 {
	font-size: 22px;
	font-weight: 700;
    text-transform: uppercase;
	margin-bottom: 15px;
}

.event-map {
	margin-top: 30px;
}

.event-map iframe {
	width: 100%;
	height: 350px;
}


/*
-------------------------------
Gallery
-------------------------------
*/

.gallery-menu {
	text-align: center;
	margin-bottom: 5px;
}

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

.gallery-menu li {
	cursor: pointer;
    font-size: 18px;
    font-weight: 600;
    font-family: Trebuchet MS, sans-serif;
    display: inline-block;
    border-bottom: 1px solid #e1e1e1;
    
    padding: 5px 10px;
    padding-top: 0;
    margin: 0 10px 10px;
    position: relative;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
}

.gallery-menu li:hover {
	color: #3367c1;
}

.gallery-menu li.filtr-active {
	border-bottom: 1px solid #3367c1;
	color: #3367c1;
}

.gallery-menu li.filtr-active:before {
	border-color: #3367c1 transparent transparent;
	border-style: solid;
	position: absolute;
	content: "";
	border-width: 6px 6px 0;
	left: 50%;
	margin-left: -6px;
	bottom: -6px;
	text-decoration: none;
}

.gallery-group {
	border: 1px solid #ededed;
	margin-top: 30px;
}

.gallery-photo {
	background-position: top center;
	background-size: cover;
	background-repeat: no-repeat;
	height: 196px;
	position: relative;
}

.gallery-bg {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: #3367c1;
	visibility: hidden;
	opacity: 0;
	transform: scale(0);
	transition: all 0.4s;
	-webkit-transition: all 0.4s;
}

.gallery-group:hover .gallery-bg {
	opacity: 0.7;
	transform: scale(1);
	visibility: visible;
}

.gallery-table {
	display: table;
	width: 100%;
	height: 100%;
}

.gallery-icon {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	visibility: hidden;
	opacity: 0;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.gallery-icon a {
	position: relative;
	font-size: 26px;
	color: #fff;
	text-decoration: none;
	z-index: 99;
}

.gallery-group:hover .gallery-icon {
	opacity: 1;
	visibility: visible;
}

.gallery-text {
	text-align: center;
	background: #f5f5f5;
	padding: 15px;
}

.gallery-text a {
	color: #3367c1;
	text-decoration: none;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.gallery-text h3 {
	font-size: 18px;
	margin-bottom: 8px;
}

.gallery-text a:hover {
	color: #3367c1;
}

.gallery-text .photo-name {
	font-size: 18px;
	font-weight: 700;
    font-family: Trebuchet MS, sans-serif;
    letter-spacing: 0.5px;
	margin-bottom: 8px;
}

.gallery-text p {
	position: relative;
	font-size: 15px;
	border-top: 1px solid #e1e1e1;
	margin: 0;
	padding-top: 8px;
}

.gallery-text p:before {
	position: absolute;
	content: '';
	left: 0;
	top: -1px;
	width: 0%;
	height: 1px;
	background: #3367c1;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.gallery-group:hover .gallery-text p:before {
	width: 100%;
}

.gallery-text span {
	margin-right: 3px;
}

/*
-------------------------------
Shop
-------------------------------
*/

.product-item {
	text-align: center;
	border: 1px solid #e1e1e1;
	margin-top: 30px;
}

.product-photo {
	overflow: hidden;
	position: relative;
}

.product-cart {
	position: absolute;
	width: 100%;
	bottom: -20px;
	left: 0px;
	background: #3367c1;
	visibility: hidden;
	opacity: 0;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.product-item:hover .product-cart {
	visibility: visible;
	opacity: 1;
	bottom: 0;
}

.product-cart ul {
	text-align: center;
	list-style: none;
	margin: 0;
	padding: 0;
}

.product-cart ul li {
	float: left;
	width: 50%;
}

.product-cart ul li:first-child {
	border-right: 1px solid #ddd;
}

.product-cart ul li a {
	display: block;
	font-size: 13px;
    font-weight: 500;
    font-family: 'Work Sans', sans-serif;
	background: #3367c1;
    color: #fff;
	padding: 12px 5px;
	text-decoration: none;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.product-cart ul li a:hover {
	color: #fff;
	background: #313131;
}

.product-cart ul li i {
	margin-right: 5px;
}

.product-text {
	border-top: 1px solid #e1e1e1;
	padding: 15px 10px;
}

.product-text h3 a {
	font-size: 18px;
	font-weight: 700;
	text-decoration: none;
	margin-bottom: 12px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	text-transform: uppercase;
}

.product-text h3 a:hover {
	color: #3367c1;
}

.product-text h4 {
	font-size: 17px;
    font-family: 'Work Sans', sans-serif;
	margin-bottom: 12px;
}

.product-text del {
	
	font-size: 17px;
	font-weight: 400;
	margin-left: 8px;
}

.product-star i {
  	color: #3367c1;
  }

.product-star--yellow i {
    color: #f4b400;
}

.shop-sidebar {
	margin-top: 30px;
	border: 1px solid #e1e1e1;
	padding: 30px;
}

.shop-widget {
	margin-top: 30px;
}

.shop-widget:first-child {
	margin-top: 0;
}

.shop-widget input {
	font-size: 15px;
	height: 40px;
	border: 1px solid #e1e1e1;
}

.shop-widget button {
	background: #3367c1;
    color: #fff;
	border: 1px solid #3367c1;
}

.shop-widget button:hover {
	cursor: pointer;
}

.shop-widget h4 {
	display: inline-block;
	position: relative;
	font-size: 22px;
	font-weight: 700;
	padding-bottom: 12px;
	margin-bottom: 24px;
}

.shop-widget h4:before {
	position: absolute;
	content: '';
	width: 100%;
	height: 1px;
	background: #3367c1;
	left: 0;
	bottom: 0;
}

.shop-widget h4:after {
	position: absolute;
	content: '';
	width: 100%;
	height: 2px;
	background: #3367c1;
	left: 0;
	bottom: -5px;
}

.price-range p {
	font-size: 15px;
	margin-bottom: 15px;
}

.price-range span {
	font-weight: 600;
}

.shop-widget .ui-widget.ui-widget-content {
	border: 1px solid #e1e1e1;
}

.shop-widget .ui-widget-header {
	background: #3367c1;
}

.shop-widget .ui-state-default,
.shop-widget .ui-widget-content .ui-state-default {
	border: 1px solid #e1e1e1;
}

.shop-widget .ui-state-active,
.shop-widget .ui-widget-content .ui-state-active {
	background: #3367c1;
	border: 1px solid #3367c1;
}

.shop-widget .button-df {
	margin-top: 25px;
}

.shop-widget .button-df a {
	padding: 10px 30px;
}

.product-rated-item {
	display: table;
	width: 100%;
	border-bottom: 1px solid #e1e1e1;
	margin-bottom: 15px;
	padding-bottom: 15px;
}

.product-rated-item:last-child {
	border-bottom: 0px;
	margin-bottom: 0;
	padding-bottom: 0;
}

.product-rated-photo {
	vertical-align: top;
	display: table-cell;
	float: left;
	width: 105px;
	padding-right: 8px;
}

.product-rated-photo img {
	max-width: 100%;
	height: auto;
}

.product-rated-text {
	vertical-align: top;
	display: table-cell;
	width: 100%;
	padding-left: 5px;
}

.product-rated-text a {
	font-size: 16px;
    font-weight: 600;
    font-family: 'Work Sans', sans-serif;
	text-decoration: none;
	
	margin-bottom: 5px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.product-rated-text a:hover {
	color: #3367c1;
}

.product-rated-text h5 {
	font-size: 15px;
    font-family: 'Work Sans', sans-serif;
	margin-bottom: 5px;
}

.product-rated-text del {
	margin-left: 8px;
}

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

.shop-widget ul li {
	padding: 10px 0;
	border-top: 1px solid #e1e1e1;
}

.shop-widget ul li:first-child {
	border-top: 0px;
}

.shop-widget ul li a {
    font-family: 'Work Sans', sans-serif;
    display: inline-block;
	position: relative;
	text-decoration: none;
	padding-left: 10px;
}

.shop-widget ul li span {
	margin-left: 15px;
}

.shop-widget ul li a:before {
	position: absolute;
	content: '\F105';
	font-family: "Font Awesome 5 Pro";
	top: 0;
	left: 0;
	
}

/*
-------------------------------
Product Detail
-------------------------------
*/

.product-photo-item {
	padding: 30px;
}
.product-photo-item img {
    max-height: 370px;
    width: auto !important;
    margin: 0 auto;
}
.review-table h2{
    font-size: 24px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 15px;
}
.review-table .table thead th, 
.review-table .table tbody td{
    text-align: left;
}
.review-form h2{
    font-size: 24px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 15px;
}
.review-form label{
    font-size: 15px;
    font-weight: 600;
}
.review-form .review-star{}
.review-form textarea{
    height: 220px;
}
.review-form .btn{
    cursor: pointer;
    display: inline-block;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 14px 30px;
    border: 1px solid #3367c1;
    background: #3367c1;
    color: #fff;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}
.review-form .btn:hover{
    color: #fff;
    background: #313131;
    border: 1px solid #313131;
}

.product-carousel {
	border: 1px solid #e1e1e1;
	margin-top: 30px;
}

.product-carousel .owl-nav .owl-prev,
.product-carousel .owl-nav .owl-next {
	text-align: center;
	font-size: 18px;
	position: absolute;
	width: 40px;
	height: 50px;
	line-height: 48px;
	top: 50%;
	margin-top: -25px;
	background: #3367c1;
	color: #fff;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.product-carousel .owl-nav .owl-prev {
	left: 0;
}

.product-carousel .owl-nav .owl-next {
	right: 0;
}

.product-carousel .owl-nav .owl-prev:hover,
.product-carousel .owl-nav .owl-next:hover {
	color: #fff;
	background: #313131;
}

.shop-detail-text {
	margin-top: 30px;
}

.shop-detail-text h3 {
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 15px;
}

.shop-detail-text h4 {
	font-size: 20px;
	font-weight: 500;
    font-family: 'Work Sans', sans-serif;
	margin-bottom: 15px;
}

.shop-detail-text h4 del {
	font-size: 20px;
	font-weight: 400;
	margin-left: 8px;
	color: red;
}

.shop-detail-text p {
	margin: 0;
	margin-top: 15px;
}

.shop-detail-choose {
	margin-top: 15px;
}

.shop-detail-cart {
	margin-top: 0px;
}

.shop-detail-cart ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.shop-detail-cart ul li {
	display: inline-block;
	margin-top: 15px;
	margin-right: 15px;
}

.shop-detail-cart ul li a.cart-btn {
	font-weight: 600;
	display: inline-block;
	background: #3367c1;
	color: #fff;
	text-decoration: none;
	padding: 15px 30px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.shop-detail-cart ul li a.cart-btn:hover {
	color: #fff;
	background: #313131;
}

.shop-detail-cart ul li i {
	margin-right: 5px;
}

.shop-detail-cart ul li .ui-spinner {
	width: 125px;
	border: 1px solid #3367c1;
	border-radius: 0;
	margin-bottom: 1px;
}

.shop-detail-cart ul li input {
	font-size: 16px;
	height: 50px;
	text-indent: 30px;
	margin: 0;
	padding: 0;
}

.shop-detail-cart ul li .ui-button {
	cursor: pointer;
	padding: 0 25px;
	border-left: 1px solid #3367c1;
	border-radius: 0;
	background: #3367c1;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.shop-detail-cart ul li .ui-button:hover {
	background: #313131;
}

.shop-detail-cart ul li .ui-button .ui-icon {
	background-image: url("../images/ui-icons_ffffff_256x240.png");
}

.shop-detail-cat {
	margin-top: 20px;
}

.shop-detail-cat p {
	margin: 0;
}

.shop-detail-cat span {
	font-weight: 600;
}

.shop-detail-tab ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.shop-detail-tab ul li {
	display: inline-block;
	margin-top: 15px;
	margin-right: 15px;
}

.shop-detail-tab ul li:last-child {
	margin-right: 0;
}

.shop-detail-tab ul li a {
	display: block;
	font-size: 15px;
	font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
	color: #fff;
	background: #313131;
	padding: 12px 25px;
	text-decoration: none;
}

.shop-detail-tab ul li a.active {
	color: #fff;
	background: #3367c1;
}

.shop-detail-content {
	margin-top: 30px;
}

.owlproduct-carousel .owl-nav .owl-prev,
.owlproduct-carousel .owl-nav .owl-next {
	text-align: center;
	font-size: 18px;
	position: absolute;
	width: 40px;
	height: 40px;
	line-height: 38px;
	top: 0;
	margin-top: -20px;
	background: #3367c1;
	color: #fff;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.owlproduct-carousel .owl-nav .owl-prev {
	right: 0;
	margin-right: 38px;
}

.owlproduct-carousel .owl-nav .owl-next {
	right: 0;
	margin-right: 0px;
}

.owlproduct-carousel .owl-nav .owl-prev:hover,
.owlproduct-carousel .owl-nav .owl-next:hover {
	color: #fff;
	background: #313131;
}

/*
-------------------------------
Shopping Cart
-------------------------------
*/

.cart-table .table {
	width: 100%;
}

.table {
	margin-bottom: 0;
}

.table thead th,
.table tbody td {
	vertical-align: middle;
	text-align: center;
	border: 1px solid #e1e1e1;
}

.cart-table .table thead th {
	font-size: 16px;
	font-weight: 700;
	font-family: Trebuchet MS, sans-serif;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    background: #3367c1;
	color: #fff;
	padding: 15px 5px;
}

.cart-table th.c-photo {
	min-width: 160px;
	width: 160px;
}

.cart-table th.c-name {
	min-width: 180px;
}

.cart-table th.c-qnt {
	min-width: 120px;
}

.cart-table th.c-price,
.cart-table th.c-total {
	min-width: 90px;
}

.cart-table .table tbody td {
	font-size: 15px;
	
}

.cart-table .table tbody td span {
	font-weight: 600;
}

.cart-table .table tbody td a {
	font-size: 15px;
    font-family: 'Work Sans', sans-serif;
	
	text-decoration: none;
}

.cart-table .table tbody td a:hover {
	color: #3367c1;
}

.cart-table .table tbody td img {
	max-width: 100%;
	height: auto;
}

.cart-table .table tbody td input {
	border: 1px solid #e1e1e1;
	padding: 10px 15px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.cart-table .table tbody td input:focus {
	border-color: #3367c1;
}

.cart-action {
	margin-top: 25px;
}

.update-cart {
	margin-top: 15px;
}

.update-cart a {
	display: inline-block;
	font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
	text-decoration: none;
	padding: 15px 30px;
	background: #3367c1;
	color: #fff;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.update-cart a:hover {
	background: #313131;
	color: #fff;
}

.coupon-cart {
	font-size: 15px;
	height: 51px;
	margin-top: 15px;
}

.coupon-cart input {
	font-size: 15px;
	border-radius: 0;
}

.coupon-cart .btn {
	cursor: pointer;
	font-size: 15px;
	font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
	border: 1px solid #3367c1;
	border-radius: 0;
	background: #3367c1;
	color: #fff;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.btn.focus,
.btn:focus {
	box-shadow: none;
}

.coupon-cart .btn:hover {
	border: 1px solid #313131;
	background: #313131;
	color: #fff;
}

.total-cart {
	margin-top: 40px;
}

.total-cart td {
	text-align: left !important;
	padding: 20px;
}

.total-cart td.t-bold {
	font-size: 16px;
	font-weight: 600;
	padding: 20px;
}

.proceed-cart {
	margin-top: 15px;
}

.proceed-cart a {
	display: inline-block;
	font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
	text-decoration: none;
	padding: 20px 40px;
	background: #3367c1;
	color: #fff;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.proceed-cart a:hover {
	background: #313131;
	color: #fff;
}

/*
-------------------------------
Checkout
-------------------------------
*/

.checkout-form {
	margin-top: 30px;
}

.checkout-form textarea {
	height: 120px;
}

.checkout-table {
	margin-top: 30px;
}

.checkout-table table th,
.checkout-table table td {
	text-align: left;
}

.checkout-table table th {
    font-size: 16px;
	font-weight: 700;
    text-transform: uppercase;
	font-family: Trebuchet MS, sans-serif;
    letter-spacing: 0.5px;
	color: #fff;
    background: #3367c1;
}

.checkout-table table td.t-bold {
	font-size: 15px;
	font-weight: 600;
	
}

.payment-select {
	text-align: center;
	margin-top: 30px;
}

.payment-select.headstyle h4:before {
	width: 118px;
	left: 50%;
	margin-left: -59px;
}

.payment-select-group .form-check-input:only-child {
	position: absolute;
}

.payment-order-button {
	margin-top: 30px;
}

.payment-order-button a {
	display: block;
	font-size: 15px;
	font-weight: 600;
	text-transform: uppercase;
	text-decoration: none;
	color: #fff;
	background: #3367c1;
	padding: 15px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.payment-order-button a:hover {
	color: #fff;
	background: #313131;
}


/*
-------------------------------
Contact
-------------------------------
*/

.contact-item {
	text-align: center;
	border: 1px solid #e1e1e1;
	min-height: 180px;
	position: relative;
	background: #fafafa;
	padding: 30px;
	padding-top: 40px;
	margin-top: 50px;
    border-radius: var(--frontend-radius-lg) !important;
    -webkit-border-radius: var(--frontend-radius-lg) !important;
    box-shadow: 0px 0px 15px rgb(0 0 0 / 10%);
}

.contact-icon {
	position: absolute;
	width: 52px;
	height: 52px;
	line-height: 58px;
	top: 0px;
	left: 50%;
	background: #fafafa;
    color: #3367c1;
    margin-top: 20px;
	border-radius: var(--frontend-radius-lg);
	border: 1px solid #e1e1e1;
	transform: translate(-50%, 0%);
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.contact-icon img {
	width: 40px;
	height: 40px;
}

.contact-icon i {
	font-size: 21px;
}
.contact-item:hover .contact-icon{
    background: #3367c1;
    color: #fafafa;
	border: 1px solid #3367c1;
}
.contact-text {
	margin-top: 52px;
}

.contact-text h4 {
	font-size: 18px;
    font-weight: 700;
	margin-bottom: 15px;
}

.contact-text p {
	margin: 0;
}

.contact-form {
    border: 1px solid #e1e1e1;
    border-radius: var(--frontend-radius-lg) !important;
    -webkit-border-radius: var(--frontend-radius-lg) !important;
    box-shadow: 0px 0px 15px rgb(0 0 0 / 10%);
}

.contact-form input,
.contact-form textarea {

}

.contact-form textarea {
	height: 190px
}

.contact-form .btn {
	cursor: pointer;
	display: inline-block;
	font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
	padding: 14px 30px;
	border: 1px solid #3367c1;
	background: #3367c1;
	color: #fff;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.contact-form .btn:hover {
	color: #fff;
	opacity: 0.78;
	text-decoration: none;
}

.contact-form .btn:focus,
.contact-form .btn:active {
	opacity: 0.9;
}

.map-area iframe {
	width: 100%;
	height: 450px;
	margin-bottom: -5px;
}

/*
-------------------------------
404 Page
-------------------------------
*/

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

.error-head {
	display: inline-block;
	background: #f1f1f1;
	border: 1px solid #e1e1e1;
	padding: 30px;
}

.error-head h1 {
	font-size: 70px;
	font-weight: 700;
	color: #3367c1;
	margin-bottom: 2px;
}

.error-head h1 span {
	
}

.error-head h3 {
	font-size: 32px;
	font-weight: 700;
	margin: 0;
}

.error-body {
	margin-top: 30px;
}

.error-body h4 {
	font-size: 22px;
    font-weight: 700;
	margin-bottom: 5px;
}

.error-body p {
	margin: 0;
}

/*
-------------------------------
Under Construction Page
-------------------------------
*/

.under-construction {
	background-position: top center;
	background-size: cover;
	background-repeat: no-repeat;
	width: 100%;
	height: 100vh;
	position: relative;
}

.under-bg {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: #3367c1;
	opacity: 0.9;
}

.under-text {
	text-align: center;
	position: relative;
	z-index: 99;
	color: #fff;
}

.under-text h1 {
	font-size: 40px;
	font-weight: 700;
	text-transform: uppercase;
	color: #fff;
	margin-bottom: 15px;
}

.under-text h1 span {
	color: #fff;
}

.under-text p {
	font-size: 15px;
	color: #fff;
	margin-bottom: 25px;
}

.under-text .form-control {
	font-size: 15px;
	height: 48px;
	border: 2px solid #fff;
	z-index: 3 !important;
}

.under-text .btn {
	cursor: pointer;
	font-size: 15px;
	font-weight: 500;
	text-transform: uppercase;
	border: 2px solid #3367c1;
	background: #3367c1;
	color: #fff;
	z-index: 3 !important;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

#navigator-toolbox::after {
  content: "";
  display: -moz-box;
  -moz-box-ordinal-group: 101; /* tabs toolbar is 100 */
  height: 1px;
  background-color: ThreeDShadow;
}


.error-class {
    background: #ca6464;
    color: #fff;
    padding-top: 10px;
    padding: 15px;
    margin-bottom: 15px;
    text-align: left;
    font-size: 14px;
}

.success-class {
    background: #68a554;
    color: #fff;
    padding-top: 10px;
    padding: 15px;
    margin-bottom: 15px;
    text-align: left;
    font-size: 14px;
}

#newsletter .input-group {
	border-radius: var(--frontend-radius-lg)!important;
	-webkit-border-radius: var(--frontend-radius-lg) !important;
	overflow: hidden;
}

.newsletter-btn {
    height: 48px;
	border-radius: 0 var(--frontend-radius-lg) var(--frontend-radius-lg) 0 !important;
	-webkit-border-radius: 0 var(--frontend-radius-lg) var(--frontend-radius-lg) 0 !important;
}

#newsletter .input-group .form-control {
	height: 48px;
	border-radius: var(--frontend-radius-lg) var(--frontend-radius) var(--frontend-radius) var(--frontend-radius-lg) !important;
	-webkit-border-radius: var(--frontend-radius-lg) var(--frontend-radius) var(--frontend-radius) var(--frontend-radius-lg) !important;
	border-right: 0 !important;
	box-shadow: none !important;
	position: relative;
	z-index: 1 !important;
}

#newsletter .input-group .form-control:focus,
#newsletter .input-group .form-control:active {
	border-color: transparent !important;
	box-shadow: none !important;
	outline: 0 !important;
	-webkit-appearance: none;
	appearance: none;
	z-index: 1 !important;
}

#newsletter .input-group .form-control:focus-visible {
	border-color: transparent !important;
	box-shadow: none !important;
	outline: 0 !important;
	z-index: 1 !important;
}

#newsletter .input-group > .form-control:focus,
#newsletter .input-group > .form-control:active,
#newsletter .input-group > .form-control:focus-visible {
	z-index: 1 !important;
}

#newsletter .input-group > .input-group-btn > .newsletter-btn,
#newsletter .input-group > .input-group-append > .newsletter-btn,
#newsletter .input-group > .input-group-btn > .btn,
#newsletter .input-group > .input-group-append > .btn {
	z-index: 2 !important;
}

#newsletter .input-group .input-group-btn {
	display: flex;
}

#newsletter .input-group .newsletter-btn {
	margin: 0 !important;
	border-top-left-radius: var(--frontend-radius) !important;
	border-bottom-left-radius: var(--frontend-radius) !important;
}

#newsletter .input-group .newsletter-btn:focus,
#newsletter .input-group .newsletter-btn:active,
#newsletter .input-group .newsletter-btn:focus-visible {
	outline: 0 !important;
	box-shadow: none !important;
}

.search-sidebar-btn {
    height: 40px;
    min-width: 48px;
    padding: 0 !important;
    line-height: 1 !important;
    margin: 0 !important;
}

.sidebar .input-group > .input-group-btn,
.sidebar .input-group > .input-group-append,
.news-sidebar .input-group > .input-group-btn,
.news-sidebar .input-group > .input-group-append {
	display: flex;
}

.sidebar .input-group > .input-group-btn > .search-sidebar-btn,
.sidebar .input-group > .input-group-append > .search-sidebar-btn,
.news-sidebar .input-group > .input-group-btn > .search-sidebar-btn,
.news-sidebar .input-group > .input-group-append > .search-sidebar-btn {
	height: 100%;
}

.searchbar-btn {
    height: calc(1.5em + .75rem + 4px);
}

.search-sidebar-btn,
.newsletter-btn,
.searchbar-btn {
    display: flex;
    justify-content: center;
    align-items: center;
}

.search-sidebar-btn i {
	margin: 0 !important;
	line-height: 1 !important;
	display: block;
}

.radius-15 {
    border-radius: var(--frontend-radius) !important;
    -webkit-border-radius: var(--frontend-radius) !important;
}

.radius-25 {
    border-radius: var(--frontend-radius-lg) !important;
    -webkit-border-radius: var(--frontend-radius-lg) !important;
}

.box-shadow {
    box-shadow: 0px 0px 15px rgb(0 0 0 / 10%);
}

:root {
	--frontend-radius: 0.5rem;
	--frontend-radius-lg: 0.75rem;
}

/* Shared frontend chrome */
#strickymenu {
	position: relative;
	z-index: 1002;
}

#strickymenu .container {
	position: relative;
}

#strickymenu .navbar-brand {
	flex-shrink: 0;
}

#strickymenu .navbar-brand img {
	width: auto !important;
	max-width: none;
}

#strickymenu .navbar-collapse {
	padding-right: 150px;
}

#strickymenu .navbar-nav .nav-link {
	white-space: nowrap;
}

body.education-site {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body.education-site #courses,
body.education-site #schedule,
body.education-site #testimonials,
body.education-site #faq,
body.education-site #contacts {
	position: relative;
}

.education-home-card,
.education-review-card,
.education-contacts-card {
	background: linear-gradient(180deg, #fffdf9 0%, #f6efe6 100%);
	border: 0;
	border-radius: var(--frontend-radius-lg);
	box-shadow: 0 14px 30px rgba(15, 23, 42, 0.08), 0 6px 16px rgba(15, 23, 42, 0.04);
}

.education-home-card__eyebrow {
	display: inline-flex;
	align-self: center;
	margin: 0 auto 10px;
	padding: 4px 8px;
	border-radius: 999px;
	background: rgba(17, 24, 39, 0.05);
	color: #6b7280;
	font-size: 0.62rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.education-home-card__title {
	font-size: 1.22rem;
	line-height: 1.35;
	margin-bottom: 10px;
}

.education-home-card__text {
	font-size: 0.92rem;
	line-height: 1.6;
	margin-bottom: 18px;
}

.education-home-card__button {
	width: 100%;
}

.education-schedule-card {
	position: relative;
	background: linear-gradient(180deg, #fffdf9 0%, #f6efe6 100%);
	border: 0;
	border-radius: var(--frontend-radius-lg);
	box-shadow: 0 12px 26px rgba(15, 23, 42, 0.07), 0 4px 12px rgba(15, 23, 42, 0.04);
	overflow: hidden;
}

.education-schedule-card__eyebrow {
	display: inline-flex;
	align-self: flex-start;
	margin-bottom: 8px;
	padding: 4px 8px;
	border-radius: 999px;
	background: rgba(17, 24, 39, 0.05);
	color: #6b7280;
	font-size: 0.62rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.education-schedule-card__title {
	font-size: 1.18rem;
	line-height: 1.35;
	margin-bottom: 10px !important;
}

.education-schedule-card__dates {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 6px;
	margin-bottom: 8px !important;
}

.education-schedule-card__meta-item {
	padding: 7px 9px;
	border-radius: var(--frontend-radius);
	background: rgba(255, 255, 255, 0.72);
	box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.12);
}

.education-schedule-card__meta-label {
	display: block;
	margin-bottom: 2px;
	font-size: 0.58rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #8a94a6;
}

.education-schedule-card__info {
	padding: 8px 10px;
	border-radius: var(--frontend-radius);
	background: rgba(255, 255, 255, 0.76);
	box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.12);
}

.education-schedule-card__info--schedule {
	padding: 6px 8px;
}

.education-schedule-card__label {
	margin-bottom: 4px;
	font-size: 0.6rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #8a94a6;
}

.education-schedule-card__text {
	color: #344154;
	line-height: 1.45;
	font-size: 0.86rem;
	white-space: pre-line;
}

.education-schedule-card__text--schedule {
	color: #556070;
}

.education-schedule-card__button {
	width: 100%;
	margin-top: 10px !important;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	font-size: 0.9rem;
}

.education-review-card {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 100%;
	padding: 26px !important;
	background: linear-gradient(180deg, #fffdf9 0%, #f5ede3 100%);
}

.education-testimonials-heading {
	position: relative;
	padding-right: 120px;
}

body.education-site #testimonials {
	background: transparent !important;
}

.education-testimonials-slider .owl-stage-outer {
	background: transparent !important;
	box-shadow: none !important;
}

.education-testimonials-slider .owl-stage {
	display: flex;
}

.education-testimonials-slider .owl-item {
	display: flex;
}

.education-testimonials-slider .item {
	width: 100%;
	padding: 4px 2px 10px;
}

.education-testimonials-slider .owl-nav {
	position: absolute;
	right: 0;
	top: -86px;
	display: flex;
	box-shadow: 0px 0px 15px rgb(0 0 0 / 10%);
}

.education-testimonials-slider .owl-nav .owl-prev,
.education-testimonials-slider .owl-nav .owl-next {
	position: static;
	margin: 0;
	top: auto;
	right: auto;
	left: auto;
	width: 40px;
	height: 40px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 0;
	font-size: 0;
	line-height: 40px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.education-testimonials-slider .owl-nav .owl-prev i,
.education-testimonials-slider .owl-nav .owl-next i {
	font-size: 18px;
	line-height: 1;
	color: inherit;
}

.education-review-card__text {
	margin-bottom: 0;
	font-size: 0.98rem;
	line-height: 1.8;
	color: #445164;
	font-style: italic;
}

.education-review-card__author {
	font-size: 1rem;
	font-weight: 700;
	color: #111827;
}

.education-review-card__author::before {
	content: "";
	display: block;
	width: 42px;
	height: 1px;
	margin-bottom: 14px;
	background: rgba(17, 24, 39, 0.18);
}

.education-review-card {
	border: 1px solid rgba(17, 24, 39, 0.10) !important;
	box-shadow: 0 10px 20px rgba(15, 23, 42, 0.07), 0 3px 8px rgba(15, 23, 42, 0.035) !important;
}

.education-contacts-card {
	max-width: 540px;
	margin: 0 auto;
	padding: 28px 24px;
}

@media (max-width: 767.98px) {
	.education-schedule-card__dates {
		grid-template-columns: 1fr;
	}

	.education-testimonials-heading {
		padding-right: 0;
	}

	.education-testimonials-slider .owl-nav {
		position: static;
		justify-content: center;
		margin-top: 18px;
	}
}

.course-detail-area .card {
	background: linear-gradient(180deg, #fffdf9 0%, #f6efe6 100%);
	border: 0;
	border-radius: var(--frontend-radius-lg);
	box-shadow: 0 18px 38px rgba(15, 23, 42, 0.09), 0 6px 16px rgba(15, 23, 42, 0.05);
	transform: none !important;
	transition: box-shadow 0.2s ease !important;
}

.course-detail-area .card:hover,
.course-detail-area .card:focus,
.course-detail-area .card:active {
	transform: none !important;
	box-shadow: 0 18px 38px rgba(15, 23, 42, 0.09), 0 6px 16px rgba(15, 23, 42, 0.05);
}

.course-detail-area .faq-card {
	border-radius: var(--frontend-radius) !important;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06) !important;
	border: 0;
	background: #faf7f2;
}

.course-detail-area .faq-card + .faq-card {
	margin-top: 10px;
}

.course-detail-area .faq-card .card-header,
.course-detail-area .faq-card .card-body {
	background: transparent;
}

.course-detail-area .col-lg-8 > .card,
.course-detail-area .col-lg-4 > .card {
	overflow: hidden;
}

.course-detail-card__eyebrow {
	display: inline-flex;
	align-self: flex-start;
	margin-bottom: 12px;
	padding: 4px 9px;
	border-radius: 999px;
	background: rgba(17, 24, 39, 0.05);
	color: #6b7280;
	font-size: 0.62rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.course-detail-main-card__title {
	font-size: 1.9rem;
	line-height: 1.2;
	margin-bottom: 14px;
}

.course-detail-main-card__lead {
	font-size: 1rem;
	line-height: 1.7;
	margin-bottom: 18px !important;
}

.course-detail-main-card__content,
.course-detail-main-card__content p,
.course-detail-info-card__text {
	color: #425064;
	line-height: 1.75;
}

.course-detail-main-card__content h2,
.course-detail-main-card__content h3,
.course-detail-main-card__content h4,
.course-detail-info-card__title,
.course-detail-side-card__title {
	color: #111827;
}

.course-detail-info-card__title,
.course-detail-side-card__title {
	font-size: 1.18rem;
	line-height: 1.35;
	margin-bottom: 14px;
}

.course-detail-dates {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.course-detail-dates p {
	margin: 0 !important;
	padding: 10px 12px;
	border-radius: var(--frontend-radius);
	background: rgba(255, 255, 255, 0.76);
	box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.12);
	color: #425064;
}

.course-detail-side-card .btn {
	width: 100%;
}

.course-detail-links {
	list-style: none;
}

.course-detail-links li + li {
	margin-top: 10px;
}

.course-detail-links a {
	display: block;
	padding: 10px 12px;
	border-radius: var(--frontend-radius);
	background: rgba(255, 255, 255, 0.72);
	box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.12);
	color: #374151 !important;
	text-decoration: none !important;
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.course-detail-links a:hover {
	opacity: 0.82;
	transform: translateX(4px);
}

.course-packages-intro {
	color: #556070;
	margin-bottom: 24px;
}

.course-packages-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 20px;
}

.course-package-card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 100%;
	position: relative;
	background: linear-gradient(180deg, #fffdf9 0%, #f6f0e7 100%);
	border-radius: var(--frontend-radius);
	box-shadow: 0 18px 34px rgba(15, 23, 42, 0.08), 0 8px 18px rgba(15, 23, 42, 0.05);
	padding: 26px;
	overflow: visible;
	transition: transform 0.22s ease, box-shadow 0.22s ease;
}

.course-package-card:hover,
.course-package-card:focus-within {
	transform: translateY(-6px);
	box-shadow: 0 24px 44px rgba(15, 23, 42, 0.12), 0 10px 24px rgba(15, 23, 42, 0.07);
}

.course-package-card__eyebrow {
	display: inline-flex;
	align-self: flex-start;
	padding: 6px 12px;
	border-radius: 999px;
	background: rgba(17, 24, 39, 0.06);
	color: #6b7280;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	margin-bottom: 16px;
}

.course-package-card__body {
	margin-bottom: 24px;
}

.course-package-card__title {
	font-size: 1.3rem;
	line-height: 1.35;
	margin-bottom: 14px;
}

.course-package-card__description {
	margin-bottom: 0;
	color: #5b6573;
	white-space: pre-line;
	line-height: 1.7;
}

.course-package-card__footer {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 18px;
	padding-top: 18px;
	border-top: 1px solid rgba(17, 24, 39, 0.08);
}

.course-package-card__price {
	font-size: 1.95rem;
	line-height: 1;
	font-weight: 700;
	color: #111827;
}

.course-package-card__price span {
	font-size: 0.9rem;
	font-weight: 600;
	color: #6b7280;
	margin-left: 6px;
}

.course-package-inline-form {
	width: 100%;
}

.course-package-inline-form__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
}

.course-payment-provider-select {
	border-radius: var(--frontend-radius);
	border: 1px solid rgba(148, 163, 184, 0.28) !important;
	background-color: rgba(255, 255, 255, 0.96) !important;
	background-image:
		linear-gradient(45deg, transparent 50%, #3367c1 50%),
		linear-gradient(135deg, #3367c1 50%, transparent 50%),
		linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.96));
	background-position:
		calc(100% - 18px) calc(50% - 2px),
		calc(100% - 12px) calc(50% - 2px),
		0 0;
	background-size: 6px 6px, 6px 6px, 100% 100%;
	background-repeat: no-repeat;
	color: #1f2937;
	font-weight: 600;
	padding-right: 44px;
	box-shadow: 0 10px 22px rgba(15, 23, 42, 0.04);
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.course-payment-provider-select:hover {
	border-color: rgba(51, 103, 193, 0.4) !important;
	background-color: #ffffff !important;
}

.course-payment-provider-select:focus,
.course-payment-provider-select:active,
.course-payment-provider-select:focus-visible {
	border-color: rgba(51, 103, 193, 0.5) !important;
	box-shadow: 0 0 0 4px rgba(51, 103, 193, 0.14), 0 10px 22px rgba(15, 23, 42, 0.06) !important;
	outline: 0 !important;
}

.course-payment-provider-select option {
	color: #1f2937;
	background: #ffffff;
}

.course-provider-dropdown {
	position: relative;
	width: 100%;
}

.course-provider-dropdown__toggle {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 52px;
	padding: 12px 46px 12px 16px;
	border: 1px solid rgba(148, 163, 184, 0.28);
	border-radius: var(--frontend-radius);
	background: rgba(255, 255, 255, 0.96);
	box-shadow: 0 10px 22px rgba(15, 23, 42, 0.04);
	color: #1f2937;
	font-weight: 600;
	text-align: left;
	cursor: pointer;
	outline: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.course-provider-dropdown__toggle::before,
.course-provider-dropdown__toggle::after {
	content: "";
	position: absolute;
	top: 50%;
	width: 8px;
	height: 2px;
	border-radius: 999px;
	background: #3367c1;
	transform-origin: center;
	transition: transform 0.2s ease;
}

.course-provider-dropdown__toggle::before {
	right: 21px;
	transform: translateY(-50%) rotate(45deg);
}

.course-provider-dropdown__toggle::after {
	right: 16px;
	transform: translateY(-50%) rotate(-45deg);
}

.course-provider-dropdown.is-open .course-provider-dropdown__toggle::before {
	transform: translateY(-50%) rotate(-45deg);
}

.course-provider-dropdown.is-open .course-provider-dropdown__toggle::after {
	transform: translateY(-50%) rotate(45deg);
}

.course-provider-dropdown__toggle:hover,
.course-provider-dropdown__toggle:focus,
.course-provider-dropdown__toggle:active {
	border-color: rgba(148, 163, 184, 0.28);
	box-shadow: 0 0 0 4px rgba(51, 103, 193, 0.14), 0 10px 22px rgba(15, 23, 42, 0.06);
	outline: 0;
}

.course-provider-dropdown__toggle::-moz-focus-inner {
	border: 0;
}

.course-provider-dropdown__menu {
	position: absolute;
	left: 0;
	right: 0;
	top: calc(100% + 8px);
	z-index: 200;
	display: none;
	padding: 8px;
	border: 1px solid rgba(148, 163, 184, 0.18);
	border-radius: calc(var(--frontend-radius) + 2px);
	background: #fffdf9;
	box-shadow: 0 18px 34px rgba(15, 23, 42, 0.12), 0 8px 20px rgba(15, 23, 42, 0.08);
}

.course-provider-dropdown.is-open .course-provider-dropdown__menu {
	display: grid;
	gap: 6px;
}

.course-provider-dropdown__option {
	display: block;
	width: 100%;
	padding: 12px 14px;
	border: 0;
	border-radius: calc(var(--frontend-radius) - 2px);
	background: transparent;
	color: #1f2937;
	font-weight: 600;
	text-align: left;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.course-provider-dropdown__option:hover,
.course-provider-dropdown__option:focus {
	background: rgba(51, 103, 193, 0.08);
	color: #1d4fa5;
	outline: 0;
	transform: translateX(2px);
}

.course-provider-dropdown__option.is-selected {
	background: rgba(51, 103, 193, 0.12);
	color: #1d4fa5;
}

.course-payment-summary {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px 16px;
	align-items: start;
	padding: 12px 14px;
	border-radius: var(--frontend-radius);
	background: #f7f4ef;
}

.course-payment-summary__label {
	font-size: 0.72rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #8a94a6;
}

.course-payment-summary__value {
	font-size: 1rem;
	font-weight: 600;
	color: #111827;
}

.course-payment-summary__item {
	min-width: 0;
}

.course-payment-summary__item .course-payment-summary__value {
	word-break: break-word;
}

.course-package-pay-btn {
	width: 100%;
}

.course-consultation-btn {
	transition: opacity 0.2s ease, color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

.course-consultation-btn:hover,
.course-consultation-btn:focus,
.course-consultation-btn:active,
.course-consultation-btn:focus-visible {
	opacity: 0.82;
}

[id^="coursePackagePaymentModal"] .modal-dialog {
	max-width: 320px;
}

#courseEnrollModal .modal-dialog,
#courseConsultationModal .modal-dialog {
	max-width: 320px;
}

[id^="coursePackagePaymentModal"] .modal-content {
	border: 0;
	border-radius: var(--frontend-radius-lg);
	box-shadow: 0 26px 60px rgba(15, 23, 42, 0.2), 0 10px 24px rgba(15, 23, 42, 0.1);
	overflow: visible;
	background: linear-gradient(180deg, #fffdfb 0%, #f8f2ea 100%);
}

#courseEnrollModal .modal-content,
#courseConsultationModal .modal-content {
	border: 0;
	border-radius: var(--frontend-radius-lg);
	box-shadow: 0 26px 60px rgba(15, 23, 42, 0.2), 0 10px 24px rgba(15, 23, 42, 0.1);
	overflow: hidden;
	background: linear-gradient(180deg, #fffdfb 0%, #f8f2ea 100%);
}

[id^="coursePackagePaymentModal"] .modal-header {
	border-bottom: 1px solid rgba(17, 24, 39, 0.08);
	padding: 16px 18px 12px;
	background: transparent;
}

#courseEnrollModal .modal-header,
#courseConsultationModal .modal-header {
	border-bottom: 1px solid rgba(17, 24, 39, 0.08);
	padding: 16px 18px 12px;
	background: transparent;
}

[id^="coursePackagePaymentModal"] .modal-title {
	font-size: 1.2rem;
	font-weight: 700;
	color: #111827;
}

#courseEnrollModal .modal-title,
#courseConsultationModal .modal-title {
	font-size: 1.2rem;
	font-weight: 700;
	color: #111827;
}

[id^="coursePackagePaymentModal"] .modal-body {
	padding: 16px 18px 8px;
	overflow: visible;
}

#courseEnrollModal .modal-body,
#courseConsultationModal .modal-body {
	padding: 16px 18px 8px;
}

[id^="coursePackagePaymentModal"] .modal-footer {
	border-top: 0;
	padding: 6px 18px 18px;
	gap: 10px;
}

#courseEnrollModal .modal-footer,
#courseConsultationModal .modal-footer {
	border-top: 0;
	padding: 6px 18px 18px;
	gap: 10px;
}

[id^="coursePackagePaymentModal"] .close {
	color: #6b7280;
	text-shadow: none;
	opacity: 1;
}

#courseEnrollModal .close,
#courseConsultationModal .close {
	color: #6b7280;
	text-shadow: none;
	opacity: 1;
}

[id^="coursePackagePaymentModal"] .close:hover {
	color: #111827;
}

#courseEnrollModal .close:hover,
#courseConsultationModal .close:hover {
	color: #111827;
}

[id^="coursePackagePaymentModal"] .btn-light {
	background: #f3eee7;
	border-color: #e8dfd2;
	color: #4b5563 !important;
}

#courseEnrollModal .btn-light,
#courseConsultationModal .btn-light {
	background: #f3eee7;
	border-color: #e8dfd2;
	color: #4b5563 !important;
}

[id^="coursePackagePaymentModal"] .btn-light:hover,
[id^="coursePackagePaymentModal"] .btn-light:focus {
	background: #ebe2d5;
	border-color: #dccfbd;
	color: #374151 !important;
	opacity: 1;
}

#courseEnrollModal .btn-light:hover,
#courseEnrollModal .btn-light:focus,
#courseConsultationModal .btn-light:hover,
#courseConsultationModal .btn-light:focus {
	background: #ebe2d5;
	border-color: #dccfbd;
	color: #374151 !important;
	opacity: 1;
}

[id^="coursePackagePaymentModal"] .form-control {
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(148, 163, 184, 0.26) !important;
	box-shadow: none !important;
}

#courseEnrollModal .form-control,
#courseConsultationModal .form-control {
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(148, 163, 184, 0.26) !important;
	box-shadow: none !important;
}

[id^="coursePackagePaymentModal"] .form-control:focus,
[id^="coursePackagePaymentModal"] .form-control:active,
[id^="coursePackagePaymentModal"] .form-control:focus-visible {
	border-color: rgba(148, 163, 184, 0.42) !important;
	box-shadow: 0 0 0 4px rgba(148, 163, 184, 0.12) !important;
	outline: 0 !important;
}

#courseEnrollModal .form-control:focus,
#courseEnrollModal .form-control:active,
#courseEnrollModal .form-control:focus-visible,
#courseConsultationModal .form-control:focus,
#courseConsultationModal .form-control:active,
#courseConsultationModal .form-control:focus-visible {
	border-color: rgba(148, 163, 184, 0.42) !important;
	box-shadow: 0 0 0 4px rgba(148, 163, 184, 0.12) !important;
	outline: 0 !important;
}

@media (max-width: 767.98px) {
	.course-package-card {
		padding: 20px;
	}
}

.site-switcher-wrap {
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 1001;
}

.site-switcher-btn {
	display: inline-block;
	padding: 0.375rem 0.75rem;
	border-radius: var(--frontend-radius);
	background: transparent;
	color: inherit !important;
	text-decoration: none !important;
	font-weight: 400;
	font-size: 13px;
	box-shadow: none !important;
	border: 1px solid currentColor;
	line-height: 1.5;
	text-align: center;
	vertical-align: middle;
	white-space: nowrap;
	transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, opacity 0.15s ease-in-out;
}

.site-switcher-btn .short-label {
	display: none !important;
}

.site-switcher-btn .full-label {
	display: inline !important;
}

.site-switcher-btn:hover {
	color: #ffffff !important;
	text-decoration: none !important;
	box-shadow: none !important;
}

/* Extracted page styles */
.booking-cta {
	position: relative;
	background-image: var(--booking-cta-bg);
	background-size: cover;
	background-position: center;
	border-radius: var(--frontend-radius-lg);
	padding: 54px 46px;
	color: #fff;
	overflow: hidden;
	box-shadow: 0 18px 45px rgba(0, 0, 0, 0.28);
}

.booking-cta:before,
.booking-cta:after {
	content: "";
	position: absolute;
	border-radius: 50%;
	opacity: 0.35;
}

.booking-cta:before {
	width: 240px;
	height: 240px;
	right: -70px;
	bottom: -90px;
	background: radial-gradient(circle, rgba(255, 210, 150, 0.8), transparent 70%);
}

.booking-cta:after {
	width: 180px;
	height: 180px;
	left: -60px;
	top: -60px;
	background: radial-gradient(circle, rgba(140, 200, 255, 0.8), transparent 70%);
}

.booking-cta h2 {
	color: #fff;
	margin-bottom: 8px;
	font-size: 34px;
	letter-spacing: 0.3px;
}

.booking-cta p {
	color: rgba(255, 255, 255, 0.9);
	margin-bottom: 24px;
	font-size: 16px;
}

.booking-cta .btn {
	background: #fff;
	color: inherit;
	border: 0;
	padding: 12px 24px;
	border-radius: var(--frontend-radius);
	font-weight: 700;
	box-shadow: 0 10px 22px rgba(17, 24, 39, 0.14);
	transition: color .2s ease, background-color .2s ease, box-shadow .2s ease;
	-webkit-transition: color .2s ease, background-color .2s ease, box-shadow .2s ease;
}

.booking-cta .btn i {
	color: inherit;
	transition: color .2s ease;
	-webkit-transition: color .2s ease;
}

.booking-cta .btn:hover {
	background: #fff;
	box-shadow: 0 12px 24px rgba(17, 24, 39, 0.16);
}

.home-testimonial-avatar {
	width: 95px;
	height: 95px;
	margin: 0 auto;
	border-radius: var(--frontend-radius-lg);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

.confirm-hero,
.order-hero {
	background-image: var(--hero-bg);
	background-size: cover;
	background-position: center;
	color: #fff;
	padding: 90px 0 70px;
}

.confirm-hero h1,
.order-hero h1 {
	font-size: 42px;
	margin-bottom: 10px;
}

.confirm-shell,
.order-shell {
	background: #f7f4ee;
	border-radius: var(--frontend-radius-lg);
	padding: 24px;
	margin-top: -36px;
	box-shadow: 0 14px 34px rgba(0,0,0,0.12);
}

.order-shell {
	padding: 28px;
	margin-top: -40px;
	box-shadow: 0 16px 40px rgba(0,0,0,0.12);
}

.confirm-card,
.order-card {
	background: #fff;
	border: 1px solid #ebe2d4;
	border-radius: var(--frontend-radius-lg);
	padding: 16px;
}

.order-card {
	display: grid;
	grid-template-columns: 120px 1fr;
	gap: 16px;
	align-items: center;
}

.order-worker-photo {
	width: 120px;
	height: 120px;
	border-radius: var(--frontend-radius);
	object-fit: cover;
	border: 1px solid #ded7c9;
}

.order-info h3 {
	margin-top: 0;
	margin-bottom: 6px;
}

.order-info p,
.confirm-card p {
	margin: 0 0 8px;
	color: #6f6253;
}

.confirm-message,
.order-message {
	margin-bottom: 12px;
	margin-top: 10px;
	padding: 10px 12px;
	border-radius: var(--frontend-radius);
	font-weight: 600;
	background: #f7f2e9;
	border: 1px solid #e7ddcf;
	color: #6f6253;
}

.confirm-message.ok,
.order-message.ok {
	background: #e9f6ef;
	border-color: #cfe9db;
	color: #1f7a4c;
}

.confirm-message.error,
.order-message.error {
	background: #fdeeee;
	border-color: #f3c8c8;
	color: #c0392b;
}

.confirm-actions {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin-top: 8px;
}

.confirm-btn {
	border: 0;
	border-radius: var(--frontend-radius);
	padding: 11px 18px;
	font-weight: 700;
}

.confirm-btn.ok {
	background: #1f7a4c;
	color: #fff;
}

.confirm-btn.ok:hover {
	background: #1a6b42;
}

.confirm-btn.cancel {
	background: #fff;
	color: #b8352f;
	border: 1px solid #e5b9b9;
}

.confirm-btn.cancel:hover {
	background: #fff2f2;
}

.rating-group {
	display: inline-flex;
	flex-direction: row-reverse;
	gap: 4px;
}

.rating-group input {
	display: none;
}

.rating-group label {
	font-size: 22px;
	color: #d8cdbf;
	cursor: pointer;
}

.rating-group input:checked ~ label,
.rating-group label:hover,
.rating-group label:hover ~ label {
	color: #f3b64a;
}

.order-form textarea {
	min-height: 120px;
	border: 1px solid #e5dccf !important;
	border-radius: 14px !important;
	background: #fff !important;
	color: #222 !important;
	box-shadow: none !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.order-form textarea:focus,
.order-form textarea:active,
.order-form textarea:focus-visible {
	border-color: #e5dccf !important;
	box-shadow: 0 0 0 3px rgba(31, 122, 76, 0.15) !important;
	outline: none !important;
}

.order-form .btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 12px 22px;
	border: 0;
	border-radius: 14px;
	background: #313131;
	color: #fff !important;
	font-weight: 700;
	letter-spacing: 0.04em;
	box-shadow: 0 12px 24px rgba(49, 49, 49, 0.16);
	opacity: 1 !important;
}

.order-form .btn:hover,
.order-form .btn:focus,
.order-form .btn:active,
.order-form .btn:focus-visible {
	background: #4a433b;
	color: #fff !important;
	box-shadow: 0 14px 28px rgba(74, 67, 59, 0.2);
	outline: none !important;
}

.payment-status-panel {
	border-radius: var(--frontend-radius-lg);
	overflow: hidden;
}

.payment-status-actions {
	margin-bottom: 10px;
}

.payment-status-actions-last {
	margin-top: 10px;
}

.payment-status-btn {
	min-width: 220px;
	text-align: center;
}

.worker-page .worker-card {
	background: #fff;
	border-radius: var(--frontend-radius-lg);
	border: 1px solid rgba(15, 23, 42, 0.12);
	overflow: hidden;
}

.worker-page .worker-card-body {
	padding: 28px;
}

.worker-page .worker-photo {
	width: 100%;
	display: block;
	aspect-ratio: 4 / 4.6;
	object-fit: cover;
}

.worker-page .worker-header {
	display: block;
}

.worker-page .worker-profile-label {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 6px 12px;
	margin-bottom: 16px;
	border-radius: 999px;
	background: rgba(17, 24, 39, 0.06);
	color: #475467;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .08em;
}

.worker-page .worker-name {
	font-size: 32px;
	font-weight: 700;
	margin: 0;
	line-height: 1.15;
}

.worker-page .worker-title {
	color: #667085;
	margin-top: 8px;
	font-size: 15px;
}

.worker-page .rating-pill {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 10px 16px;
	border-radius: var(--frontend-radius);
	background: #f8fafc;
	font-size: 14px;
	font-weight: 600;
	color: #344054;
}

.worker-page .worker-profile,
.worker-page .worker-profile .worker-name,
.worker-page .worker-profile .worker-title {
	text-align: center;
}

.worker-page .worker-profile .rating-pill {
	justify-content: center;
	margin: 16px auto 0 auto;
}

.worker-page .worker-profile .product-star {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 3px;
}

.worker-page .worker-profile-stats {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin-top: 20px;
}

.worker-page .worker-stat-card {
	padding: 16px 14px;
	border-radius: var(--frontend-radius);
	background: linear-gradient(180deg, #fafbfc 0%, #f3f5f7 100%);
}

.worker-page .worker-stat-label {
	display: block;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: #667085;
	margin-bottom: 8px;
}

.worker-page .worker-stat-value {
	display: block;
	font-size: 22px;
	line-height: 1;
	color: #111827;
}

.worker-page .worker-section-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 18px;
}

.worker-page .worker-section-kicker {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #667085;
	margin-bottom: 8px;
}

.worker-page .worker-review-total {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 14px;
	border-radius: 999px;
	background: #f8fafc;
	color: #475467;
	font-size: 13px;
	font-weight: 700;
}

.worker-page .review-list {
	display: grid;
	grid-template-columns: 1fr;
	gap: 18px;
}

.worker-page .review-card {
	background: linear-gradient(180deg, #ffffff 0%, #fbfcfd 100%);
	border-radius: var(--frontend-radius);
	padding: 22px 22px 18px;
	border: 1px solid rgba(15, 23, 42, 0.11);
}

.worker-page .review-card-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 12px;
}

.worker-page .review-date {
	font-size: 12px;
	font-weight: 600;
	color: #667085;
	white-space: nowrap;
}

.worker-page .review-text {
	font-size: 15px;
	line-height: 1.72;
	color: #344054;
}

.worker-page .review-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid rgba(15, 23, 42, 0.08);
}

.worker-page .review-meta-main {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	min-width: 0;
}

.worker-page .review-author {
	display: block;
	font-weight: 700;
	color: #111827;
}

.worker-page .review-role {
	display: block;
	font-size: 12px;
	color: #667085;
}

.worker-page .review-service {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 4px 10px;
	border-radius: 999px;
	background: #f3f4f6;
	color: #4b5563;
	font-size: 12px;
	font-weight: 700;
	white-space: nowrap;
}

.worker-page .review-title {
	font-size: 26px;
	font-weight: 700;
	margin: 0;
}

.worker-page .product-star i {
	color: #f4b400;
}

.worker-page .worker-empty-state {
	padding: 28px;
	border-radius: var(--frontend-radius);
	background: linear-gradient(180deg, #fafbfc 0%, #f4f6f8 100%);
	border: 1px solid rgba(15, 23, 42, 0.11);
	text-align: center;
	color: #475467;
}

.worker-page .pagination .page-item.active .page-link {
	background: #313131;
	border-color: #313131;
	color: #fff;
}

.worker-page .pagination .page-link {
	color: #313131;
}

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

.worker-page .worker-empty-state strong {
	display: block;
	font-size: 18px;
	color: #111827;
	margin-bottom: 8px;
}

.worker-page .worker-empty-state p {
	margin: 0;
}

.testimonial-review-page .worker-section-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 22px;
}

.testimonial-review-page .worker-section-kicker {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #667085;
	margin-bottom: 8px;
}

.testimonial-review-page .worker-review-total {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 14px;
	border-radius: 999px;
	background: #f8fafc;
	color: #475467;
	font-size: 13px;
	font-weight: 700;
}

.testimonial-review-page .review-title {
	font-size: 28px;
	font-weight: 700;
	margin: 0;
	color: #111827;
}

.testimonial-review-page .review-list {
	display: grid;
	grid-template-columns: 1fr;
	gap: 18px;
}

.testimonial-review-page .review-card {
	background: linear-gradient(180deg, #ffffff 0%, #fbfcfd 100%);
	border-radius: var(--frontend-radius);
	padding: 22px 22px 18px;
	border: 1px solid rgba(15, 23, 42, 0.14);
}

.testimonial-review-page .review-card-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 12px;
}

.testimonial-review-page .review-date {
	font-size: 12px;
	font-weight: 600;
	color: #667085;
	white-space: nowrap;
}

.testimonial-review-page .review-text {
	font-size: 15px;
	line-height: 1.72;
	color: #344054;
}

.testimonial-review-page .review-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid rgba(15, 23, 42, 0.08);
}

.testimonial-review-page .review-meta-main {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	min-width: 0;
}

.testimonial-review-page .review-role {
	display: block;
	font-size: 12px;
	color: #667085;
}

.testimonial-review-page .review-author {
	display: block;
	font-weight: 700;
	color: #111827;
}

.testimonial-review-page .review-service {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 4px 10px;
	border-radius: 999px;
	background: #f3f4f6;
	color: #4b5563;
	font-size: 12px;
	font-weight: 700;
	white-space: nowrap;
}

.testimonial-review-page .pagination {
	margin-top: 6px;
}

.testimonial-review-page .pagination .page-item.active .page-link {
	background: #313131;
	border-color: #313131;
	color: #fff;
}

.testimonial-review-page .pagination .page-link {
	color: #313131;
}

.testimonial-review-page .pagination .page-link:focus {
	box-shadow: none;
}

.testimonial-review-page .product-star i {
	color: #f4b400;
}

.testimonial-review-page .worker-empty-state {
	padding: 28px;
	border-radius: var(--frontend-radius);
	background: linear-gradient(180deg, #fafbfc 0%, #f4f6f8 100%);
	border: 1px solid rgba(15, 23, 42, 0.14);
	text-align: center;
	color: #475467;
}

.testimonial-review-page .worker-empty-state strong {
	display: block;
	font-size: 18px;
	color: #111827;
	margin-bottom: 8px;
}

.testimonial-review-page .worker-empty-state p {
	margin: 0;
}

@media (max-width: 767px) {
	.worker-page .worker-card-body {
		padding: 22px;
	}

	.worker-page .worker-name {
		font-size: 28px;
	}

	.worker-page .worker-profile-stats {
		grid-template-columns: 1fr;
	}

	.worker-page .worker-section-head {
		flex-direction: column;
		align-items: stretch;
	}

	.worker-page .review-card-head {
		flex-direction: column;
		align-items: flex-start;
	}

	.worker-page .review-meta {
		flex-direction: column;
		align-items: flex-start;
	}

	.testimonial-review-page .worker-section-head {
		flex-direction: column;
		align-items: stretch;
	}

	.testimonial-review-page .review-card-head {
		flex-direction: column;
		align-items: flex-start;
	}

	.testimonial-review-page .review-meta {
		flex-direction: column;
		align-items: flex-start;
	}
}

.booking-widget {
	background: #f7f6f2;
	border: 1px solid #e7e2d9;
	border-radius: var(--frontend-radius-lg);
	padding: 28px;
	margin-top: 30px;
}

.booking-widget .booking-head h2 {
	margin-bottom: 8px;
}

.booking-widget .booking-head p {
	margin-bottom: 20px;
	color: #666;
}

.booking-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
}

.booking-grid .form-group label {
	font-weight: 600;
}

.booking-calendar-wrap {
	margin-top: 20px;
	overflow-x: auto;
}

.booking-calendar {
	width: 100%;
	border-collapse: collapse;
	min-width: 700px;
	border-collapse: separate !important;
	border-spacing: 8px 10px !important;
	background: transparent !important;
}

.booking-calendar th,
.booking-calendar td {
	border: 1px solid rgba(222, 212, 198, 0.68);
	text-align: center;
	padding: 10px 8px;
	font-size: 13px;
	vertical-align: top;
	border-radius: 16px;
	box-shadow: 0 8px 18px rgba(15, 23, 42, 0.04), inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.booking-calendar th {
	background: linear-gradient(180deg, #f3ecdf 0%, #ece3d5 100%);
	font-weight: 700;
	border-bottom-color: rgba(208, 194, 176, 0.78);
}

.booking-calendar td {
	background-color: rgba(255, 252, 247, 0.92);
}

.booking-calendar tbody tr:nth-child(even) td {
	background-color: rgba(250, 245, 238, 0.96);
}

.booking-calendar td + td,
.booking-calendar th + th {
	border-left-color: rgba(222, 212, 198, 0.68);
}

.booking-calendar tbody tr + tr td {
	border-top-color: rgba(222, 212, 198, 0.68);
}

.booking-calendar td:first-child {
	background: linear-gradient(180deg, #fcf7f0 0%, #f6eee3 100%);
	font-weight: 600;
	box-shadow: 0 8px 18px rgba(15, 23, 42, 0.03), inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

.booking-selected {
	margin-top: 10px;
	font-weight: 600;
}

.booking-cell-empty {
	color: #9b9184;
	font-size: 12px;
}

.full-height-screen {
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

html.reconstruction-page,
body.reconstruction-page {
	height: 100%;
	margin: 0;
}

/* Unified frontend radii */
#newsletter .input-group,
.newsletter-btn,
.radius-15,
.radius-25,
.page-banner,
.feature-item,
.button a,
.button-df a,
.button-sm a,
.button-df-animated a,
.button-sm-animated a,
.button-animated li a,
.button-df-animated a:after,
.button-sm-animated a:after,
.button-animated li a:after,
.slider-two .owl-nav .owl-prev,
.slider-two .owl-nav .owl-next,
.services-item,
.services-text,
.single-service,
.single-ser-carousel img,
.portfolio-group,
.portfolio-photo-item,
.portfolio-details,
.portfolio-form,
.team-item,
.team-social li,
.team-social li a,
.team-detail-text ul li a,
.price-item,
.testimonial-item,
.testimonial-grid .testimonial-item,
.testimonial-two-carousel .testimonial-item,
.testimonial-list .item-testimonial,
.blog-item,
.blog-image,
.blog-text,
.blog-author,
.blog-author li.blog-button a,
.call-us .button a,
.event-contact-item,
.contact-form,
.sidebar-item,
.shop-widget,
.cart-table .table tbody td input,
.coupon-cart input,
.coupon-cart .btn,
.checkout-form textarea,
.payment-select,
.review-form .btn,
.search-sidebar-btn,
.searchbar-btn,
.searchbar .input-search,
.faq-header button.faq-button,
.faq-header button.faq-button.collapsed,
.faq-body,
.booking-cta,
.booking-widget,
.confirm-shell,
.confirm-card,
.order-shell,
.order-card,
.order-worker-photo,
.payment-status-panel,
.payment-status-btn,
.worker-page .worker-card,
.worker-page .worker-photo,
.worker-page .rating-pill,
.worker-page .review-card {
	border-radius: var(--frontend-radius-lg) !important;
	-webkit-border-radius: var(--frontend-radius-lg) !important;
}

.searchbar .input-search,
.blog-image,
.blog-text,
.blog-author,
.faq-header button.faq-button,
.faq-header button.faq-button.collapsed,
.faq-body,
.newsletter-btn {
	border-radius: var(--frontend-radius) !important;
	-webkit-border-radius: var(--frontend-radius) !important;
}

.newsletter-btn {
	border-top-left-radius: 0 !important;
	border-bottom-left-radius: 0 !important;
}

/* Blog cards: keep seamless joints between image/text/footer */
.blog-image {
	border-radius: var(--frontend-radius-lg) var(--frontend-radius-lg) 0 0 !important;
	-webkit-border-radius: var(--frontend-radius-lg) var(--frontend-radius-lg) 0 0 !important;
}

.blog-text {
	border-radius: 0 !important;
	-webkit-border-radius: 0 !important;
}

.blog-author {
	border-radius: 0 0 var(--frontend-radius-lg) var(--frontend-radius-lg) !important;
	-webkit-border-radius: 0 0 var(--frontend-radius-lg) var(--frontend-radius-lg) !important;
}

.blog-author li.blog-button a,
.blog-author li.blog-button a:hover,
.blog-author li.blog-button a:focus {
	border-radius: 0 !important;
	-webkit-border-radius: 0 !important;
	border-top-left-radius: 0 !important;
	-webkit-border-top-left-radius: 0 !important;
	border-top-right-radius: 0 !important;
	-webkit-border-top-right-radius: 0 !important;
	border-bottom-left-radius: 0 !important;
	-webkit-border-bottom-left-radius: 0 !important;
	border-bottom-right-radius: var(--frontend-radius-lg) !important;
	-webkit-border-bottom-right-radius: var(--frontend-radius-lg) !important;
}

/* FAQ: seamless connection between question and answer blocks */
.faq-header button.faq-button {
	border-radius: var(--frontend-radius-lg) var(--frontend-radius-lg) 0 0 !important;
	-webkit-border-radius: var(--frontend-radius-lg) var(--frontend-radius-lg) 0 0 !important;
}

.faq-header button.faq-button.collapsed {
	border-radius: var(--frontend-radius-lg) !important;
	-webkit-border-radius: var(--frontend-radius-lg) !important;
}

.faq-body {
	border-radius: 0 0 var(--frontend-radius-lg) var(--frontend-radius-lg) !important;
	-webkit-border-radius: 0 0 var(--frontend-radius-lg) var(--frontend-radius-lg) !important;
}

@media (max-width: 1200px) and (min-width: 992px) {
	.site-switcher-btn {
		padding: 7px 11px;
		font-size: 11px;
	}

	#strickymenu .navbar-collapse {
		padding-right: 125px;
	}
}

@media (max-width: 991px) {
	.booking-grid,
	.order-card {
		grid-template-columns: 1fr;
	}

	.confirm-hero h1,
	.order-hero h1,
	.booking-cta h2 {
		font-size: 34px;
	}

	#strickymenu .navbar-collapse {
		padding-right: 0;
	}

	.site-switcher-wrap {
		right: 110px;
		top: 50%;
		transform: translateY(-50%);
	}

	.site-switcher-btn {
		padding: 6px 10px;
		font-size: 11px;
	}
}

@media (max-width: 767px) {
	.booking-cta {
		padding: 36px 26px;
	}

	.booking-cta h2 {
		font-size: 28px;
	}

	.booking-mobile-worker-picker {
		display: block;
	}

	.booking-calendar-wrap,
	.booking-table {
		overflow: visible;
	}

	.booking-calendar {
		min-width: 100% !important;
		border-spacing: 6px 8px !important;
	}

	.booking-calendar th,
	.booking-calendar td {
		padding: 8px 6px !important;
	}

	.booking-calendar td:first-child {
		min-width: 92px;
	}

	.booking-calendar th:not(:first-child),
	.booking-calendar td:not(:first-child) {
		min-width: 0 !important;
	}

	.booking-worker-head,
	.booking-worker-link {
		gap: 6px;
	}

	.booking-worker-head img {
		width: 30px;
		height: 30px;
	}

	.booking-worker-rating {
		font-size: 11px;
	}

	.booking-slot {
		font-size: 11px;
		padding: 6px 7px;
		margin: 3px 3px 0 0;
	}
}

@media (max-width: 991px) {
	.booking-mobile-worker-picker {
		display: block;
	}
}

@media (max-width: 575px) {
	.site-switcher-wrap {
		right: 104px;
	}
}

/* Final override: keep newsletter input visually flat inside the shared frame */
#newsletter .input-group {
	isolation: isolate;
}

#newsletter .input-group > .form-control,
#newsletter .input-group > .form-control:focus,
#newsletter .input-group > .form-control:active,
#newsletter .input-group > .form-control:focus-visible {
	box-shadow: none !important;
	-webkit-box-shadow: none !important;
	outline: none !important;
	background-clip: padding-box !important;
	z-index: 1 !important;
}

/* Final override: portfolio category search should not glow on focus */
.search-portfolio-cat .input-group {
	display: flex;
	overflow: hidden;
	isolation: isolate;
	border: 2px solid rgba(255, 255, 255, 0.18) !important;
	border-radius: var(--frontend-radius-lg) !important;
	-webkit-border-radius: var(--frontend-radius-lg) !important;
}

.search-portfolio-cat .form-control,
.search-portfolio-cat input {
	border: 0 !important;
	background: #fff !important;
	height: 48px !important;
	padding: 0 16px !important;
	border-right: 0 !important;
	border-radius: var(--frontend-radius-lg) var(--frontend-radius) var(--frontend-radius) var(--frontend-radius-lg) !important;
	-webkit-border-radius: var(--frontend-radius-lg) var(--frontend-radius) var(--frontend-radius) var(--frontend-radius-lg) !important;
}

.search-portfolio-cat .form-control,
.search-portfolio-cat .form-control:focus,
.search-portfolio-cat .form-control:active,
.search-portfolio-cat .form-control:focus-visible,
.search-portfolio-cat input,
.search-portfolio-cat input:focus,
.search-portfolio-cat input:active,
.search-portfolio-cat input:focus-visible {
	box-shadow: none !important;
	-webkit-box-shadow: none !important;
	outline: none !important;
	border: 0 !important;
	position: relative;
	z-index: 1 !important;
}

.search-portfolio-cat .input-group > .form-control:focus,
.search-portfolio-cat .input-group > .form-control:active,
.search-portfolio-cat .input-group > .form-control:focus-visible {
	z-index: 1 !important;
}

.search-portfolio-cat .input-group > .input-group-btn,
.search-portfolio-cat .input-group > .input-group-append {
	display: flex;
	position: relative;
	z-index: 2 !important;
}

.search-portfolio-cat .search-sidebar-btn {
	height: 48px !important;
	margin: 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: #fff !important;
	box-shadow: none !important;
	-webkit-box-shadow: none !important;
	border-top-left-radius: var(--frontend-radius) !important;
	border-bottom-left-radius: var(--frontend-radius) !important;
	border-top-right-radius: var(--frontend-radius-lg) !important;
	border-bottom-right-radius: var(--frontend-radius-lg) !important;
	-webkit-border-radius: var(--frontend-radius) var(--frontend-radius-lg) var(--frontend-radius-lg) var(--frontend-radius) !important;
	padding-left: 14px !important;
	padding-right: 14px !important;
}

.search-portfolio-cat .search-sidebar-btn i {
	color: #fff !important;
}

.search-portfolio-cat .search-sidebar-btn:hover,
.search-portfolio-cat .search-sidebar-btn:focus,
.search-portfolio-cat .search-sidebar-btn:active {
	background: transparent !important;
	color: #fff !important;
	box-shadow: none !important;
	outline: none !important;
}

.booking-promotions {
	margin: 5px 0 34px;
}

.booking-promotions__head {
	margin: -10px 0 16px;
}

.booking-promotions__head h3 {
	margin: 0;
	font-size: 26px;
	color: #313131;
}

.booking-promo-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 320px;
	background: #fff;
	border: 1px solid rgba(49,49,49,0.08);
	border-radius: 22px;
	overflow: hidden;
	text-decoration: none !important;
	box-shadow: 0 16px 34px rgba(49,49,49,0.08);
	transition: transform .25s ease, box-shadow .25s ease;
}

.booking-promo-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 22px 42px rgba(49,49,49,0.13);
}

.booking-promo-card__media {
	display: block;
	aspect-ratio: 16/10;
	background: transparent;
	overflow: hidden;
}

.booking-promo-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.booking-promo-card__body {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 20px 20px 22px;
	color: #313131;
}

.booking-promo-card__body strong {
	font-size: 21px;
	line-height: 1.2;
}

.booking-promo-card__body span {
	color: #5f5a54;
	line-height: 1.6;
}

.booking-promo-card--image-only {
	min-height: 0;
	background: transparent;
	border-color: transparent;
	box-shadow: none;
}

.booking-promo-card--image-only .booking-promo-card__media {
	aspect-ratio: 16/8.8;
	border-radius: 22px;
	-webkit-border-radius: 22px;
}

.booking-promo-card--image-only:hover {
	box-shadow: none;
}

.booking-promotions__slider .owl-stage {
	display: flex;
	align-items: stretch;
}

.booking-promotions__slider .owl-stage-outer {
	padding-top: 8px;
	margin-top: -8px;
}

.booking-promotions__slider .owl-item {
	display: flex;
	height: auto !important;
}

.booking-promotions__slider .owl-item > * {
	width: 100%;
	flex: 0 0 auto;
}

.booking-promotions {
	position: relative;
}

.booking-promotions__slider .owl-nav {
	position: absolute;
	top: -58px;
	right: 0;
	display: flex;
	align-items: center;
}

.booking-promotions__slider .owl-nav .owl-prev,
.booking-promotions__slider .owl-nav .owl-next {
	position: static;
	display: block;
	flex: 0 0 45px;
	width: 45px;
	height: 45px;
	margin: 0;
	font-size: 18px;
	line-height: 41px;
	text-align: center;
	color: #fff;
	border: 2px solid transparent !important;
	opacity: 1;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.booking-promotions__slider .owl-nav .owl-prev:hover,
.booking-promotions__slider .owl-nav .owl-next:hover {
	opacity: 0.78;
}

.booking-promotions__slider .owl-nav .owl-prev i,
.booking-promotions__slider .owl-nav .owl-next i {
	font-size: inherit;
	line-height: inherit;
}

.promotion-page,
.promotion-detail-page {
	background: #fff;
}

.promotion-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 26px;
}

.promotion-service-card .services-photo {
	height: 240px;
}

.promotion-service-card__period {
	margin: 0 0 12px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #8b8175;
}

.promotion-card {
	background: #fff;
	border: 1px solid rgba(49,49,49,0.08);
	border-radius: 24px;
	overflow: hidden;
	box-shadow: 0 18px 36px rgba(49,49,49,0.07);
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.promotion-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 24px 42px rgba(49,49,49,0.11);
	border-color: rgba(51, 103, 193, 0.18);
}

.promotion-card__media {
	display: block;
	aspect-ratio: 16/10.5;
	overflow: hidden;
	background: #efe8de;
}

.promotion-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .35s ease;
}

.promotion-card:hover .promotion-card__media img {
	transform: scale(1.04);
}

.promotion-card__body {
	padding: 24px 24px 26px;
}

.promotion-card__meta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 14px;
	color: #8b8175;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;
}

.promotion-card__meta span {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 0 13px;
	border-radius: 999px;
	background: #f3ede4;
}

.promotion-card__body h3 {
	margin: 0 0 14px;
	font-size: 24px;
	line-height: 1.25;
}

.promotion-card__body h3 a {
	color: #313131;
	text-decoration: none;
}

.promotion-card__body p {
	margin: 0 0 22px;
	color: #5f5a54;
	line-height: 1.8;
}

.promotion-card__button {
	margin-top: auto;
}

.promotion-card__button .button-df a {
	min-width: 190px;
	text-align: center;
}

.promotion-empty-state {
	max-width: 620px;
	margin: 0 auto;
	padding: 34px 30px;
	text-align: center;
	background: #fff;
	border: 1px solid rgba(49,49,49,0.08);
	border-radius: 24px;
	box-shadow: 0 16px 34px rgba(49,49,49,0.06);
}

.promotion-empty-state h3 {
	margin: 0 0 12px;
	color: #313131;
	font-size: 28px;
}

.promotion-empty-state p {
	margin: 0;
	color: #5f5a54;
	line-height: 1.8;
}

.promotion-detail-main,
.promotion-side-card {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	overflow: visible;
}

.promotion-detail-photo img {
	width: 100%;
	display: block;
	border-radius: var(--frontend-radius-lg) !important;
	-webkit-border-radius: var(--frontend-radius-lg) !important;
	box-shadow: 0px 0px 15px rgb(0 0 0 / 10%);
}

.promotion-detail-content {
	padding: 0;
	margin-top: 24px;
	line-height: 1.8;
	color: #313131;
}

.promotion-detail-summary {
	margin-bottom: 28px;
	padding-bottom: 24px;
	border-bottom: 1px solid rgba(49,49,49,0.08);
}

.promotion-detail-summary p {
	margin: 0;
	color: #5f5a54;
	font-size: 17px;
	line-height: 1.8;
}

.promotion-detail-content h2,
.promotion-detail-content h3,
.promotion-detail-content h4 {
	color: #313131;
}

.promotion-detail-content p:last-child {
	margin-bottom: 0;
}

.promotion-side-card {
	padding: 28px;
}

.promotion-side-card h3 {
	margin-top: 0;
	margin-bottom: 16px;
	font-size: 24px;
	color: #313131;
}

.promotion-side-list {
	margin: 0 0 20px;
	padding: 0;
	list-style: none;
}

.promotion-side-list li + li {
	margin-top: 10px;
}

.promotion-side-list a {
	color: #313131;
	text-decoration: none;
	line-height: 1.6;
}

.promotion-side-list a:hover {
	color: #3367c1;
}

.promotion-side-card__empty {
	margin: 0;
	color: #8b8175;
	line-height: 1.7;
}

.promotion-service-sidebar {
	margin-top: 0;
}

.promotion-detail-back {
	margin-top: 30px;
}

@media (max-width: 1199px) {
	.promotion-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 991px) {
}

@media (max-width: 767px) {
	.promotion-grid {
		grid-template-columns: 1fr;
	}

	.booking-promo-card {
		min-height: auto;
	}

	.booking-promotions__head h3 {
		font-size: 22px;
	}

	.booking-promotions__slider .owl-nav {
		top: -52px;
	}

	.booking-promotions__slider .owl-nav .owl-prev,
	.booking-promotions__slider .owl-nav .owl-next {
		width: 45px;
		height: 45px;
	}

	.booking-promotions__slider .owl-nav .owl-prev i,
	.booking-promotions__slider .owl-nav .owl-next i {
		line-height: 41px;
	}

	.promotion-card__body,
	.promotion-side-card {
		padding: 22px;
	}

	.promotion-detail-content {
		margin-top: 20px;
	}
}
