:root {
  --primary-color: #2F855A;
  --secondary-color: #68D391;
  --dark-color: #1C4532;
  --light-color: #F0FFF4;
  --white: #ffffff;
  --primary-color-rgb: 47, 133, 90;
  --secondary-color-rgb: 104, 211, 145;
  --dark-color-rgb: 28, 69, 50;
  --light-color-rgb: 240, 255, 244;
  --white-rgb: 255, 255, 255;
  --gray-cus-50: #F7FAFC;
  --gray-cus-100: #EDF2F7;
  --gray-cus-200: #E2E8F0;
  --gray-cus-400: #A0AEC0;
  --gray-cus-600: #4A5568;
  --gray-cus-900: #1A202C;
  --primary-color-fixed: #2F855A;
  --secondary-color-fixed: #68D391;
  --dark-color-fixed: #1C4532;
  --light-color-fixed: #F0FFF4;
  --white-fixed: #ffffff;
  --primary-color-fixed-rgb: 47, 133, 90;
  --secondary-color-fixed-rgb: 104, 211, 145;
  --dark-color-fixed-rgb: 28, 69, 50;
  --light-color-fixed-rgb: 240, 255, 244;
  --white-fixed-rgb: 255, 255, 255;
  --font-head: Plus Jakarta Sans, sans-serif;
  --font-text: Inter, sans-serif;
  --font-size: 16px;
  --line-height: 1.6;
  --line-height-lg: 2;
  --line-height-sm: 1.4;
  --section-padding: clamp(4rem, 6vw, 6rem);
  --section-padding-lg: clamp(5rem, 8vw, 8rem);
  --section-padding-sm: clamp(3rem, 4vw, 4rem);
  --border-radius: 16px;
  --border-radius-lg: 32px;
  --border-radius-sm: 8px;
  --box-shadow: 0 10px 25px -5px rgba(var(--dark-color-rgb), 0.1), 0 8px 10px -6px rgba(var(--dark-color-rgb), 0.1);
  --box-shadow-lg: 0 20px 50px -12px rgba(var(--dark-color-rgb), 0.15);
  --box-shadow-sm: 0 2px 4px rgba(var(--dark-color-rgb), 0.05);
  --font-size-icon: 1.5rem;
  --font-size-icon-sm: 1.3rem;
  --font-size-icon-lg: 2.5rem;
  --tr-speed: 0.3s;
  --tr-speed-slow: 0.6s;
  --tr-speed-fast: 0.15s;
  --tr-smooth: all 0.3s cubic-bezier(0.2, 1, 0.3, 1);
}

[data-theme=dark] {
  --primary-color: #4ADE80;
  --secondary-color: #86EFAC;
  --dark-color: #F0FFF4;
  --light-color: #1C4532;
  --white: #06110c;
  --primary-color-rgb: 74, 222, 128;
  --secondary-color-rgb: 134, 239, 172;
  --dark-color-rgb: 240, 255, 244;
  --light-color-rgb: 28, 69, 50;
  --white-rgb: 6, 17, 12;
  --gray-cus-50: #1A202C;
  --gray-cus-100: #4A5568;
  --gray-cus-200: #A0AEC0;
  --gray-cus-400: #E2E8F0;
  --gray-cus-600: #EDF2F7;
  --gray-cus-900: #F7FAFC;
}

.text-cus-primary {
	color: var(--primary-color) !important
}

.text-cus-secondary {
	color: var(--secondary-color) !important
}

.text-cus-dark {
	color: var(--dark-color) !important
}

.text-cus-light {
	color: var(--light-color) !important
}

.text-cus-white {
	color: var(--white) !important
}

.bg-cus-primary {
	background-color: var(--primary-color) !important
}

.bg-cus-secondary {
	background-color: var(--secondary-color) !important
}

.bg-cus-dark {
	background-color: var(--dark-color) !important
}

.bg-cus-light {
	background-color: var(--light-color) !important
}

.bg-cus-white {
	background-color: var(--white) !important
}

.border-cus-primary {
	border-color: var(--primary-color) !important
}

.border-cus-secondary {
	border-color: var(--secondary-color) !important
}

.border-cus-dark {
	border-color: var(--dark-color) !important
}

.border-cus-light {
	border-color: var(--light-color) !important
}

.border-cus-white {
	border-color: var(--white) !important
}

.border-cus-radius {
	border-radius: var(--border-radius) !important
}

.border-cus-radius-lg {
	border-radius: var(--border-radius-lg) !important
}

.border-cus-radius-sm {
	border-radius: var(--border-radius-sm) !important
}

.section-padding {
	padding-top: var(--section-padding);
	padding-bottom: var(--section-padding)
}

.section-padding-top {
	padding-top: var(--section-padding)
}

.section-padding-bottom {
	padding-bottom: var(--section-padding)
}

.section-padding-sm {
	padding-top: var(--section-padding-sm);
	padding-bottom: var(--section-padding-sm)
}

.section-padding-lg {
	padding-top: var(--section-padding-lg);
	padding-bottom: var(--section-padding-lg)
}

.text-cate {
	text-transform: uppercase;
	font-weight: bold;
	font-size: 12px;
	letter-spacing: 2px
}

.text-outline {
	-webkit-text-stroke: 1px var(--primary-color);
	color: rgba(0, 0, 0, 0)
}

.text-vertical {
	writing-mode: vertical-rl;
	text-orientation: mixed
}

.text-vertical-s2 {
	position: absolute;
	left: -50px;
	top: 50%;
	transform: translateY(-50%) rotate(-90deg);
	font-family: var(--font-head);
	font-weight: 800;
	font-size: 5rem;
	color: rgba(var(--primary-color-rgb), 0.04);
	white-space: nowrap;
	pointer-events: none;
	text-transform: uppercase
}

.text-small {
	font-size: .875rem
}

.grid-pattern {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
	background-size: 40px 40px;
	pointer-events: none
}

.ifCus {
	width: 100%;
	height: 100%
}

.responsive-video {
	width: 100%;
	height: auto
}

.list-unordered {
	list-style: none;
	margin: 0px;
	padding: 0px
}

.list-unordered li {
	padding: 5px
}

.list-ordered {
	list-style: none;
	counter-reset: circle-counter;
	padding-left: 0
}

.list-ordered li {
	counter-increment: circle-counter;
	margin-bottom: 20px;
	padding-left: 48px;
	position: relative
}

.list-ordered li::before {
	content: counter(circle-counter);
	position: absolute;
	left: 0;
	top: -3px;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	border: 1px solid var(--primary-color);
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 13px;
	font-weight: 500;
	color: var(--primary-color)
}

.list-icon {
	list-style: none;
	margin: 0px;
	padding: 0px
}

.list-icon li {
	padding: 5px
}

.list-icon li::before {
	font-family: "bootstrap-icons";
	content: "";
	margin-right: 8px;
	line-height: 1px;
	font-size: .7rem
}

.blockquote-comment {
	border-radius: var(--border-radius);
	padding: 2rem;
	font-size: 1.125rem;
	background-color: var(--light-color);
	box-shadow: var(--box-shadow-sm)
}

.blockquote-comment .icon {
	font-size: 3rem;
	margin-bottom: 1rem;
	opacity: .55
}

@keyframes spin {
	to {
		transform: rotate(360deg)
	}
}

@keyframes blink {
	0% {
		opacity: 1
	}

	50% {
		opacity: .3
	}

	100% {
		opacity: 1
	}
}

@keyframes rotateText {
	from {
		transform: rotate(0deg)
	}

	to {
		transform: rotate(360deg)
	}
}

@keyframes ripple {
	0% {
		transform: scale(1);
		opacity: .75;
		border-width: 5px
	}

	60% {
		transform: scale(1.6);
		opacity: .6;
		border-width: 3px
	}

	100% {
		transform: scale(3.6);
		opacity: 0;
		border-width: .8px
	}
}

*::-webkit-scrollbar {
	width: .5rem
}

*::-webkit-scrollbar-track {
	background: var(--light-color)
}

*::-webkit-scrollbar-thumb {
	background: var(--primary-color);
	border-radius: 999px
}

*::-webkit-scrollbar-thumb:hover {
	background: var(--orange-color)
}

* {
	scrollbar-width: thin;
	scrollbar-color: var(--primary-color) var(--light-color)
}

body {
	font-family: var(--font-text);
	font-size: var(--font-size);
	color: var(--dark-color);
	line-height: var(--line-height);
	background-color: var(--white);
	overflow-x: hidden
}

body ::selection {
	background: var(--primary-color);
	color: var(--light-color)
}

a {
	text-decoration: none;
	color: var(--primary-color);
	transition: color .3s
}

a:hover {
	color: var(--primary-color)
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--font-head);
	font-weight: 600;
	margin: 1rem 0
}

h1 {
	font-size: clamp(2.2rem, 2.2rem + (3rem - 2.2rem)*(100vw - 575px)/(1400px - 575px), 3rem)
}

h2 {
	font-size: clamp(1.8rem, 1.8rem + (2.5rem - 1.8rem)*(100vw - 575px)/(1400px - 575px), 2.5rem)
}

h3 {
	font-size: clamp(1.4rem, 1.4rem + (2rem - 1.4rem)*(100vw - 575px)/(1400px - 575px), 2rem)
}

h4 {
	font-size: clamp(1.25rem, 1.25rem + (1.5rem - 1.25rem)*(100vw - 575px)/(1400px - 575px), 1.5rem)
}

h5 {
	font-size: clamp(1.15rem, 1.15rem + (1.35rem - 1.15rem)*(100vw - 575px)/(1400px - 575px), 1.35rem)
}

h6 {
	font-size: clamp(1.05rem, 1.05rem + (1.15rem - 1.05rem)*(100vw - 575px)/(1400px - 575px), 1.15rem)
}

blockquote {
	font-style: italic;
	font-size: 1.25rem;
	border-left: 4px solid rgba(var(--primary-color-rgb), 0.55);
	padding-left: 1rem;
	color: rgba(var(--dark-color-rgb), 0.75);
	margin: 1.5rem 0
}

pre {
	background: var(--dark-color);
	color: var(--light-color);
	padding: 1rem;
	border-radius: var(--border-radius-sm);
	overflow: auto
}

input[type=text],
input[type=number],
input[type=email],
input[type=password],
input[type=tel],
input[type=date],
select,
textarea {
	border: 1px solid rgba(var(--primary-color-rgb), 0.55);
	padding: 1rem;
	width: 100%;
	transition: all .3s;
	color: var(--gray-cus-900)
}

input[type=text]:focus,
input[type=number]:focus,
input[type=email]:focus,
input[type=password]:focus,
input[type=tel]:focus,
input[type=date]:focus,
select:focus,
textarea:focus {
	border: 1px solid var(--secondary-color);
	box-shadow: 0 0 0 .35rem rgba(var(--secondary-color-rgb), 0.25)
}

input[type=text]:focus-visible,
input[type=number]:focus-visible,
input[type=email]:focus-visible,
input[type=password]:focus-visible,
input[type=tel]:focus-visible,
input[type=date]:focus-visible,
select:focus-visible,
textarea:focus-visible {
	outline: none
}

.select-wrapper {
	position: relative
}

.select-wrapper select {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none
}

.select-wrapper select option {
	color: var(--dark-color)
}

.select-wrapper::after {
	font-family: "bootstrap-icons";
	content: "";
	position: absolute;
	font-size: 15px;
	right: 1rem;
	pointer-events: none;
	top: 50%;
	transform: translateY(-50%)
}

input[type=range] {
	outline: none
}

input[type=checkbox] {
	margin: 5px;
	accent-color: var(--primary-color);
	width: 16px;
	height: 16px
}

input[type=checkbox]:focus {
	border: 1px solid var(--secondary-color) !important;
	box-shadow: 0 0 0 .35rem rgba(var(--secondary-color-rgb), 0.25)
}

input[type=checkbox]:focus-visible {
	outline: none
}

input[type=range]::-webkit-slider-runnable-track {
	background: rgba(var(--primary-color-rgb), 0.15)
}

input[type=range]::-webkit-slider-thumb {
	background: rgba(var(--primary-color-rgb), 0.75);
	border-color: rgba(var(--primary-color-rgb), 0.15);
	box-shadow: 0 0 0 4px rgba(var(--primary-color-rgb), 0.35);
	cursor: pointer
}

input[type=range]::-moz-range-thumb {
	background: rgba(var(--primary-color-rgb), 0.75);
	border-color: rgba(var(--primary-color-rgb), 0.15);
	box-shadow: 0 0 0 4px rgba(var(--primary-color-rgb), 0.35);
	cursor: pointer
}

input[type=date] {
	color: var(--gray-cus-600)
}

input[type=date]::-webkit-calendar-picker-indicator {
	opacity: .6;
	cursor: pointer;
	filter: invert(0)
}

[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator {
	opacity: .6;
	filter: invert(1)
}

.navbar-nav-scroll {
	max-height: unset
}

.pagination .page-item.active .page-link {
	background-color: var(--primary-color);
	border-color: var(--primary-color);
	color: var(--white)
}

.pagination .page-item.active .page-link:hover {
	background-color: var(--secondary-color);
	border-color: var(--secondary-color)
}

.pagination .page-item .page-link {
	color: var(--primary-color);
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
	line-height: 1.6rem;
	text-align: center;
	display: inline-block;
	margin: 5px 10px
}

.pagination .page-item .page-link:hover {
	background-color: var(--primary-color);
	border-color: var(--primary-color);
	color: var(--white)
}

.breadcrumb .breadcrumb-item a {
	color: var(--secondary-color)
}

.breadcrumb .breadcrumb-item.active {
	color: var(--light-color)
}

.breadcrumb li+li::before {
	font-family: "bootstrap-icons";
	content: "" !important;
	color: var(--secondary-color) !important
}

.nav-tabs .nav-link {
	color: var(--secondary-color)
}

.nav-tabs .nav-link {
	border-radius: 0
}

.nav-tabs .nav-link.active {
	background-color: var(--primary-color);
	color: var(--white);
	border-color: var(--primary-color) var(--primary-color) rgba(0, 0, 0, 0)
}

.tab-content {
	border: 1px solid rgba(var(--primary-color-rgb), 0.35)
}

.tab-content .tab-pane {
	padding: 2rem
}

.swiper-slide img {
	width: 100%
}

.swiper-pagination {
	position: relative;
	margin-top: 2rem
}

.swiper-pagination .swiper-pagination-bullet {
	width: 15px;
	height: 15px;
	background-color: var(--primary-color)
}

.swiper-pagination .swiper-pagination-bullet:hover {
	background-color: var(--orange-color)
}

.swiper-pagination .swiper-pagination-bullet.active {
	background-color: var(--orange-color)
}

.swiper-button-next,
.swiper-button-prev {
	color: var(--orange-color)
}

.scroll-top {
	position: fixed;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	width: 30px;
	height: 60px;
	border-radius: 50px;
	background-color: rgba(var(--primary-color-rgb), 0.55);
	backdrop-filter: blur(10px);
	color: #fff;
	cursor: pointer;
	opacity: 0;
	pointer-events: none;
	transition: opacity .3s ease, background-color .3s ease;
	box-shadow: 0 4px 12px rgba(0, 0, 0, .2);
	z-index: 980;
	display: flex;
	justify-content: center;
	align-items: center
}

.scroll-top svg {
	position: absolute;
	top: 0;
	left: 0;
	transform: rotate(180deg)
}

.scroll-top .progress-pill__bg {
	fill: none;
	stroke: hsla(0, 0%, 100%, .25);
	stroke-width: 1
}

.scroll-top .progress-pill__progress {
	fill: none;
	stroke: #fff;
	stroke-width: 1;
	stroke-linecap: round;
	transition: stroke-dashoffset .2s ease
}

.scroll-top.show {
	opacity: 1;
	pointer-events: all
}

.scroll-top:hover {
	background-color: var(--secondary-color)
}

.scroll-top:hover i {
	animation-play-state: paused
}

.scroll-top i {
	font-size: .8rem;
	z-index: 2;
	animation: arrow-bounce 1.2s ease-in-out infinite;
	pointer-events: none
}

@keyframes arrow-bounce {
	0% {
		transform: translateY(0);
		opacity: .8
	}

	50% {
		transform: translateY(3px);
		opacity: 1
	}

	100% {
		transform: translateY(0);
		opacity: .8
	}
}

.preloader {
	position: fixed;
	inset: 0;
	width: 100%;
	height: 100vh;
	background-color: var(--dark-color-fixed);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	z-index: 9999;
	overflow: hidden;
	pointer-events: none;
	transition: transform var(--tr-speed-slow) cubic-bezier(0.77, 0, 0.175, 1)
}

.preloader .preloader__content {
	position: relative;
	text-align: center
}

.preloader .preloader__icon-wrapper {
	width: 100px;
	height: 100px;
	margin-bottom: 2rem;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center
}

.preloader .preloader__icon-wrapper::after {
	content: "";
	position: absolute;
	inset: -15px;
	background: radial-gradient(circle, rgba(var(--secondary-color-fixed-rgb), 0.15) 0%, transparent 70%);
	border-radius: 50%
}

.preloader .preloader__svg {
	width: 100%;
	height: 100%
}

.preloader .preloader__svg path {
	stroke: var(--secondary-color-fixed);
	stroke-width: 2.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
	filter: drop-shadow(0 0 8px rgba(var(--secondary-color-fixed-rgb), 0.6))
}

.preloader .preloader__text {
	font-family: var(--font-head);
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: .4em;
	color: var(--white-fixed);
	text-transform: uppercase;
	display: block;
	margin-top: 1rem;
	opacity: 0;
	transform: translateY(15px)
}

.preloader .preloader__progress-container {
	width: 180px;
	height: 2px;
	background: rgba(var(--light-color-fixed-rgb), 0.1);
	margin: 1.5rem auto 0;
	border-radius: var(--border-radius-sm);
	overflow: hidden;
	position: relative
}

.preloader .preloader__progress-bar {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 0%;
	background: linear-gradient(90deg, var(--primary-color-fixed), var(--secondary-color-fixed));
	box-shadow: 0 0 10px var(--secondary-color-fixed)
}

.preloader .preloader.is-loaded {
	transform: translateY(-100%);
	pointer-events: none
}

.btn-cus {
	position: relative;
	padding: .8rem 1.5rem;
	border: none;
	border-radius: var(--border-radius-sm);
	background-color: rgba(0, 0, 0, 0);
	text-align: center;
	display: inline-block
}

.btn-cus-lg {
	padding: 1rem 2rem
}

.btn-cus-sm {
	padding: .5rem 1rem;
	font-size: .8rem
}

.btn-cus-primary {
	background: var(--primary-color);
	color: var(--white);
	font-weight: 700;
	font-size: 14px;
	transition: .3s;
	box-shadow: 0 10px 20px rgba(var(--primary-color-rgb), 0.2)
}

.btn-cus-primary:hover,
.btn-cus-primary:active {
	background: var(--secondary-color);
	transform: scale(1.05);
	color: #fff
}

.btn-cus-outline-primary {
	background: rgba(0, 0, 0, 0);
	color: var(--primary-color);
	font-weight: 700;
	font-size: 14px;
	border: 1px solid var(--primary-color);
	transition: background-color var(--tr-speed)
}

.btn-cus-outline-primary:hover,
.btn-cus-outline-primary:active {
	background: var(--primary-color);
	color: #fff
}

.btn-cus-secondary {
	background: var(--secondary-color);
	color: var(--light-color);
	font-weight: 700;
	transition: transform var(--tr-speed), color var(--tr-speed)
}

.btn-cus-secondary:hover,
.btn-cus-secondary:active {
	transform: translateY(-5px);
	color: var(--white)
}

.btn-cus-discover {
	position: relative;
	padding: 20px 50px;
	background: rgba(0, 0, 0, 0);
	border: 1px solid var(--primary-color);
	color: var(--primary-color);
	font-weight: 700;
	border-radius: 100px;
	overflow: hidden;
	transition: all .4s
}

.btn-cus-discover:hover,
.btn-cus-discover:active {
	color: var(--white)
}

.btn-cus-discover:hover::before,
.btn-cus-discover:active::before {
	width: 100%
}

.btn-cus-discover::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 100%;
	background: var(--primary-color);
	z-index: -1;
	transition: all .4s
}

.btn-cus-icon {
	background: var(--primary-color);
	color: var(--white);
	border-radius: 100px;
	font-family: var(--font-head);
	font-weight: 700;
	overflow: hidden;
	border: none;
	display: inline-flex;
	align-items: center;
	gap: 12px;
	transition: all .4s ease;
	box-shadow: 0 15px 30px rgba(var(--primary-color-rgb), 0.2)
}

.btn-cus-icon:hover {
	background: var(--dark-color);
	color: var(--white);
	padding-right: 50px;
	box-shadow: 0 20px 40px rgba(var(--dark-color-rgb), 0.3)
}

.btn-cus-icon:hover .icon {
	transform: rotate(90deg);
	background: var(--secondary-color)
}

.btn-cus-icon .icon {
	width: 30px;
	height: 30px;
	background: rgba(var(--white-rgb), 0.2);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform var(--tr-speed-slow) ease
}

.btn-cus-circle {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	border: 1px solid var(--gray-cus-400);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all .4s cubic-bezier(0.19, 1, 0.22, 1)
}

.btn-cus-circle:active,
.btn-cus-circle:hover {
	background: var(--primary-color);
	color: var(--white);
	border-color: var(--primary-color);
	transform: rotate(-45deg)
}

.btn-cus-circle-s2 {
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: var(--secondary-color);
	color: var(--white);
	transition: all .3s;
	text-decoration: none
}

.btn-cus-circle-s2:active,
.btn-cus-circle-s2:hover {
	background: var(--primary-color);
	color: var(--white);
	transform: rotate(-45deg)
}

.btn-cus-magnetic {
	background: var(--white);
	color: var(--dark-color);
	border-radius: var(--border-radius);
	font-weight: 800;
	letter-spacing: 1px;
	transition: all var(--tr-speed) cubic-bezier(0.23, 1, 0.32, 1);
	overflow: hidden
}

.btn-cus-magnetic:hover {
	color: var(--white);
	transform: scale(1.05);
	box-shadow: 0 20px 40px rgba(var(--secondary-color-rgb), 0.3)
}

.btn-cus-magnetic:hover::before {
	width: 380px;
	height: 380px
}

.btn-cus-magnetic::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0;
	height: 0;
	background: var(--secondary-color);
	border-radius: 50%;
	transform: translate(-50%, -50%);
	transition: width var(--tr-speed-slow), height var(--tr-speed-slow);
	z-index: 1
}

.btn-cus-magnetic i,
.btn-cus-magnetic span {
	position: relative;
	z-index: 2
}

.btn-cus-play {
	width: 60px;
	height: 60px;
	background: var(--white);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--primary-color);
	font-size: 1.5rem
}

.btn-cus-play::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	border: 1px solid var(--white);
	border-radius: 50%;
	animation: ripple 2s infinite
}

.btn-cus-play-s2 {
	width: 100px;
	height: 100px;
	background: rgba(var(--white-rgb), 0.55);
	backdrop-filter: blur(15px);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	color: var(--primary-color);
	font-size: 30px;
	box-shadow: var(--box-shadow-lg);
	transition: background-color .3s ease, color .3s ease
}

.btn-cus-play-s2:hover {
	background: var(--primary-color);
	color: var(--white)
}

.btn-cus-play-s2::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	border: 2px solid var(--white);
	border-radius: 50%;
	animation: ripple 2s infinite
}

.btn-cus-tt {
	background: var(--secondary-color);
	color: var(--white);
	border-radius: 50px;
	font-weight: 600;
	border: none;
	transition: all .3s ease
}

.btn-cus-tt:hover {
	background: var(--white);
	color: var(--primary-color);
	transform: translateY(-3px)
}

.title-minimal {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: var(--secondary-color);
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 25px
}

.title-minimal::before {
	content: "";
	width: 30px;
	height: 1px;
	background: var(--secondary-color)
}

.title-badge {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 3px;
	text-transform: uppercase;
	background-color: var(--light-color);
	color: var(--primary-color);
	padding: .3rem 1.5rem;
	margin-bottom: 25px;
	border-radius: 50px;
	display: inline-block
}

.form-cus-label {
	font-weight: 600;
	font-size: 15px;
	margin-bottom: 10px;
	color: var(--dark-color)
}

.form-cus-control,
.form-cus-select {
	border: 1px solid var(--gray-cus-100) !important;
	padding: 15px 20px !important;
	border-radius: 12px;
	background-color: var(--gray-cus-50);
	transition: all .3s
}

.mini-field {
	margin-bottom: 20px
}

.mini-input {
	width: 100%;
	border: none !important;
	border-bottom: 1.5px solid var(--gray-cus-200) !important;
	padding: 12px 0 !important;
	background: rgba(0, 0, 0, 0);
	font-family: var(--font-text);
	transition: .3s
}

.mini-input:focus {
	border: none !important;
	box-shadow: none !important;
	outline: none !important;
	border-bottom: 1.5px solid var(--secondary-color) !important
}

.mediluxe-modal .modal-content {
	border: none;
	border-radius: var(--border-radius-lg);
	overflow: hidden;
	box-shadow: 0 25px 50px -12px rgba(var(--dark-color-rgb), 0.15)
}

.booking-sidebar {
	background: linear-gradient(135deg, var(--primary-color) 0%, var(--primary-color) 100%);
	padding: 3rem;
	color: var(--white);
	display: flex;
	flex-direction: column;
	justify-content: space-between
}

.glass-badge {
	background: rgba(var(--white-rgb), 0.15);
	backdrop-filter: blur(10px);
	border: 1px solid rgba(var(--white-rgb), 0.2);
	padding: 8px 16px;
	border-radius: 50px;
	font-size: .8rem;
	text-transform: uppercase;
	letter-spacing: 1px
}

.form-area {
	padding: 3.5rem;
	background: var(--white);
	color: var(--gray-cus-900)
}

.icon-box {
	width: 45px;
	height: 45px;
	background: rgba(var(--white-rgb), 0.1);
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 15px;
	font-size: 1.2rem
}

.modal.fade .modal-dialog {
	transform: scale(0.9);
	transition: transform .4s ease-out
}

.modal.show .modal-dialog {
	transform: scale(1)
}

.newsletter-modal .modal-content {
	border-radius: 20px;
	padding: 24px
}

.newsletter-modal h5 {
	font-weight: 600
}

.newsletter-success {
	display: none;
	text-align: center;
	padding: 32px 0
}

.newsletter-success .icon {
	font-size: 48px;
	color: #22c55e;
	margin-bottom: 16px
}

/*# sourceMappingURL=style.min.css.map */