/* basic reset */
body,* { margin: 0; padding: 0; box-sizing: border-box; }
button::-moz-focus-inner { border: 0; padding: 0; }
p, h1, h2, h3, h4, h5, h6, ul, ol { margin: 1rem auto 1rem auto; }
input, textarea, select { font-family: inherit; }
input.no-appearance { -webkit-appearance: textfield; -moz-appearance: textfield; appearance: field; }
input.no-appearance::-webkit-inner-spin-button { -webkit-appearance: none; }
input.no-appearance::-webkit-outer-spin-button { -webkit-appearance: none; }
ul,ol { padding-left: 20px; }
li { margin: 5px auto 5px auto; }
a img { border: none; }
/* basic classes */
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }
.text-upper { text-transform: uppercase; }

h1, h2, h3 { line-height: 1em; }

:root {
	--base-margin: 15px;
	--base-padding: 15px;
}

html {
	min-width: 460px;
	min-height: 100vh;
}
body {
	font-family: "Titillium Web", sans-serif;
	background: #338e61;
	background: linear-gradient(180deg,rgba(51, 142, 97, 1) 0%, rgba(32, 140, 128, 1) 20%, rgba(29, 140, 134, 1) 50%, rgba(32, 140, 128, 1) 80%, rgba(51, 142, 97, 1) 100%);
	background-repeat: no-repeat;
	color: #fff;
	font-size: 18px;
	line-height: 1.5rem;
}
a {
	color: inherit;
	text-decoration: none;
	transition: 0.3s color linear;
}
a:hover {
	color: #8114e6;
}

.contain {
	min-width: 420px;
	max-width: 1380px;
	margin-left: auto;
	margin-right: auto;
}

.spacing {
	padding-left: var(--base-margin);
	padding-right: var(--base-margin);
}

.block-top {
	text-align: center;
}
.block-top .title {
	font-size: 1.88rem;
	font-weight: 600;
}
.contain-bg {
	border-radius: 20px;
	background: #fff;
	color: #000;
}
.contain-bg a {
	color: #8114e6;
}

.contain-bg.color,
.contain-bg.color a,
.color {
	color: #00808f;
}
.color-alt {
	color: #00a4b7;
}
.color-light {
	color: #94c11c;
}

.color-gradient {
	color: #0ea6a7;
	background-image: linear-gradient(90deg, #00a4b7 0%, #94c11c 100%);
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.fs-0 {
	font-weight: 600;
	font-size: 4.25rem;
	line-height: 4rem;
}
.fs-2 {
	font-size: 2rem;
	line-height: 2rem;
}

.record-list {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.record-list .col-md-6:nth-child(2n) {
	padding-right: 0;
}
.record-list .col-md-6:nth-child(2n + 1) {
	padding-left: 0;
}

.hidden-block-btn {
	padding-left: 20px;
	padding-right: 20px;
}
.hidden-block-check {
	display: none;
}
.hidden-block-contain {
	overflow: hidden;
	max-height: 0;
	transition: 1s max-height linear;
}

.hidden-block-check:checked  ~ .hidden-block-contain {
	max-height: 3000px;
}
.hidden-block-check:checked  ~ p.hidden-block-bottom > .hidden-block-btn {
	display: none;
}

.care-list-item {
	display: none;
}
.care-list-item.active {
	display: block;
}

.text > *:first-child {
	margin-top: 0;
}
.text > *:last-child {
	margin-bottom: 0;
}
.text ul {
    text-align: justify;
}

.flex-columns {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: stretch;
	flex-wrap: wrap;
}
.flex-columns > :first-child {
	padding-left: 0;
}
.flex-columns > :last-child {
	padding-right: 0;
}

.bubble-list ul {
	list-style: none;
	padding-left: 0;
}
.bubble-list li {
	position: relative;
	padding-left: 40px;
	margin: 1.5rem 0;
}
.bubble-list li:before {
	display: block;
	content: ' ';
	position: absolute;
	left: -7px;
	top: calc(50% - 7px);
	width: 15px;
	height: 15px;
	border-radius: 100%;
	background: blue;
}
.bubble-list li:nth-child(5n + 1):before {
	background: #79B829;
}
.bubble-list li:nth-child(5n + 2):before {
	background: #00A4B7;
}
.bubble-list li:nth-child(5n + 3):before {
	background: #BBDB93;
}
.bubble-list li:nth-child(5n + 4):before {
	background: #DEC3F9;
}
.bubble-list li:nth-child(5n + 5):before {
	background: #007F8E;
}

.help-list-flex {
	display: flex;
	flex-direction: column;
}

/*** Slideshow ***/
.slider-block {
	position: relative;
}
.slider-frame {
	position: relative;
}
.slideshow {
	position: relative;
	z-index: 11;
	height: auto;
	width: 100%;
	overflow: hidden;
}
.slide {
	display: none;
	position: relative;
	z-index: 12;
	top: 0;
	left: 0;
	width: 100%;
	min-height: 300px;
}
.slide img {
	display: block;
	width: 100%;
	height: auto;
	min-height: 300px;
	object-fit: cover;
	border-radius: var(--bs-border-radius);
}
.slide.active {
	display: block;
	position: relative;
	z-index: 13;
}
.slide.slide-off {
	display: block;
	position: absolute;
	z-index: 11;
}

.slide-text {
	position: absolute;
	display: flex;
	flex-direction: column;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

/*** modification for CSS only effect ***/
.slideshow-css .slide {
	height: 0;
	overflow: hidden;
	opacity: 0;
}
.slideshow-css .slide-show,
.slideshow-css .active {
	opacity: 1;
}
.slideshow-css .slide-hide {
	position: absolute;
	z-index: 11;
}
.slideshow-css .active,
.slideshow-css .slide-show,
.slideshow-css .slide-hide {
	height: auto;
	transition: opacity 1s ease-in-out;
}

.slider-pager {
	position: absolute;
	left: 0;
	bottom: 2%;
	z-index: 15;
	width: 100%;
	text-align: center;
}
.slider-pager button {
	display: inline-block;
	background: #333;;
	height: 12px;
	width: 12px;
	border-radius: 12px;
	border: none;
	margin: 0 5px 0 5px;
	outline: none;
}
.slider-pager button.active {
	background: #999;
}

/*** carousel ***/
.carousel-block {
	position: relative;
	margin: 0 -10px;
}
.carousel-window {
	position: relative;
	width: 100%;
	overflow: hidden;
}
.carousel-content {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	position: relative;
	top: 0;
	left: 0;
	height: 100%;
}
.carousel-content.carousel-nomination {
	transition: none !important;
	animation: none !important;
}
.carousel-content .carousel-item {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 0 10px;
}
.carousel-content .carousel-item img {
	display: block;
	max-width: 100%;
	height: auto;
}
.carousel-endless-box {
	position: absolute;
	top: 0;
	bottom: 0;
	width: 100%;
}
.slider-arrows button,
.carousel-arrows button {
	position: absolute;
	z-index: 20;
	top: calc(50% - 39px);
	width: 78px;
	height: 78px;
	background-repeat: no-repeat;
	background-position: center center;
	background-color: #fff;
	background-size: 26px 26px;
	border: none;
	border-radius: 100%;
	cursor: pointer;
}
.slider-arrows button:after,
.carousel-arrows button:after {
	display: block;
	content: ' ';
	position: absolute;
    top: 9px;
    left: 9px;
    right: 9px;
    bottom: 9px;
	background: url('./img/bubble.webp') center center no-repeat;
	background-size: 60px 60px;
	pointer-events: none;
}
.slider-arrows button.slider-arrows-left,
.carousel-arrows button.carousel-arrows-left {
	left: -39px;
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%238114e6' stroke-linecap='square' stroke-linejoin='square' stroke-width='2' d='m11 2-6 6 6 6'/%3e%3c/svg%3e");
    background-position-x: 23px;
}
.slider-arrows button.slider-arrows-right,
.carousel-arrows button.carousel-arrows-right {
	right: -39px;
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%238114e6' stroke-linecap='square' stroke-linejoin='square' stroke-width='2' d='m5 14 6-6-6-6'/%3e%3c/svg%3e");
    background-position-x: 27px;
}
.slider-arrows button.disabled,
.carousel-arrows button.disabled {
	opacity: 0.3;
}

/*** Gallery Box ***/
.gallery-box-all {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	margin: auto;
	z-index: 50;
	width: 100%;
	height: 100%;
}
.gallery-box-modal {
	position: fixed;
	top: 0;
	left: 0;
	margin: auto;
	z-index: 55;
	width: 100%;
	height: 100%;
	background-color: #000;
	opacity: 0.70;
}
.gallery-box {
	position: relative;
	top: 0;
	margin: 0;
	z-index: 60;
	text-align: center;
}
.gallery-box-content {
	position: relative;
	display: inline-block;
	padding: 10px 10px 5px 10px;
	margin: auto;
	background: #fff;
	border: none;
	color: #000;
	box-sizing: content-box;
}
.gallery-box-loading .gallery-box-image {
	height: 160px;
	width: 260px;
}
.gallery-box-loading .gallery-box-loader {
	position: absolute;
	top: calc(50% - 40px);
	left: calc(50% - 40px);
	width: 80px;
	height: 80px;
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3e%3cpath d='m40 20c0 11-8.95 20-20 20-11 0-20-8.95-20-20s8.95-20 20-20v3.27c-9.24 0-16.7 7.46-16.7 16.7s7.46 16.7 16.7 16.7c9.2 0 16.7-7.46 16.7-16.7z' fill='%23aaa'/%3e%3cpath d='m20 0c11 0 20 8.95 20 20h-3.3c0-9.2-7.49-16.7-16.7-16.7z' fill='%23333'/%3e%3c/svg%3e");
	background-size: 100% 100%;;
	background-position: center center;
	background-repeat: no-repeat;
	animation: gallery-box-rotate 1s linear infinite;
}
.gallery-box-image img {
	display: block;
	position: relative;
	z-index: 62;
	height: 100%;
	width: 100%;
}
.gallery-box-title {
	margin: 0;
	padding: 5px 0 0 0;
}
.gallery-box .gallery-box-close,
.gallery-box .gallery-box-zoom,
.gallery-box .gallery-box-right,
.gallery-box .gallery-box-left {
	display: block;
	position: absolute;
	top: 0;
	z-index: 65;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center center;
	text-decoration: none;
	text-align: center;
	margin: 0;
	padding: 0;
	outline: none;
	border: none;
	cursor: pointer;
}
.gallery-box .gallery-box-close span,
.gallery-box .gallery-box-right span,
.gallery-box .gallery-box-left span {
	display: none;
}
.gallery-box a:hover {
	text-decoration: none;
}
.gallery-box .gallery-box-zoom {
	top: 30px;
	right: 40px;
	width: 80px;
	height: 80px;
	background-color: rgba(255, 255, 255, 0.4);
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 494 494'%3e%3cg fill='none' stroke='%23000'%3e%3ccircle cx='170' cy='170' r='150' stroke-width='40'/%3e%3cpath d='m280 280 194 194' stroke-width='56'/%3e%3c/g%3e%3c/svg%3e");
	background-size: 42px 42px;
	opacity: 0.3;
	border-radius: 50px;
}
.gallery-box .gallery-box-zoom:hover {
	opacity: 1;
}
.gallery-box .gallery-box-close {
	right: 0;
	width: 32px;
	height: 32px;
	background-color: rgba(0, 0, 0, 0.5);
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cg fill='none' stroke='%23eee' stroke-width='3'%3e%3cpath d='m1 1 14 14'/%3e%3cpath d='m1 15 14-14'/%3e%3c/g%3e%3c/svg%3e");
	background-size: 14px 14px;
	transition: 0.2s all linear;
}
.gallery-box .gallery-box-close:hover {
	background-size: 18px 18px;
}
.gallery-box .gallery-box-right,
.gallery-box .gallery-box-left {
	height: 100%;
	width: 30%;
}
.gallery-box .gallery-box-left {
	left: 0;
	background-position: left center;
}
.gallery-box .gallery-box-left:hover {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23eee' stroke-width='2' d='m11 2-6 6 6 6'/%3e%3c/svg%3e");
	background-size: 100px 100px;
}
.gallery-box .gallery-box-right {
	right: 0;
	background-position: right center;
}
.gallery-box .gallery-box-right:hover {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23eee' stroke-width='2' d='m5 14 6-6-6-6'/%3e%3c/svg%3e");
	background-size: 100px 100px;
}

.pagination {
	text-align: center;
}

/*** button ***/
a.btn,
.btn {
	display: inline-block;
	box-sizing: border-box;
	border: none;
	border-radius: 30px;
	background: #8114e6;
	color: #fff;
	padding: 1rem 30px;
	text-transform: uppercase;
	line-height: 1rem;
	white-space: nowrap;
	cursor: pointer;
	transition: 0.3s background linear;
}
.btn:focus {
	outline: none;
	background: #378c64;
}
.btn:hover {
	background: #94c11c;
}

.btn.btn-white {
	background: #fff;
	color: #8114e6;
}
.btn.btn-white:focus {
	background: #378c64;
}
.btn.btn-white:hover {
	background: #8114e6;
	color: #fff;
}

/*** form ***/
.form-control {
	display: block;
	box-sizing: border-box;
	width: 100%;
	padding: 10px;
	background: #f2f2f2;
	color: #000;
	border: none;
	font-size: 15px;
	line-height: 20px;
}
.form-control::placeholder {
	color: #666;
	vertical-align: bottom;
}
.form-input-checkout {
	padding: 10px 0 0 0;
}
.form-control:focus {
	background: #ddd;
	border-bottom-color: #222f40;
	outline: none;
}
.form-input {
	display: block;
	margin: 0;
	padding: 0 0 10px 0;
}
.form-counter {
	display: none;
}
.form-check-input {
	width: 20px;
	height: 20px;
	margin: auto;
	padding: 0;
	vertical-align: bottom;
	background: #f2f2f2;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.form-check-input:focus {
	outline: none;
	background: #ddd;
}
.form-check-input:checked {
	background-color: #e1001e;
}
.form-check-input:focus:checked {
	background-color: #f1002e;
}
.form-check-input:checked[type=checkbox] {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='4' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
}
.form-check-input[type=checkbox]:indeterminate {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='4' d='M6 10h8'/%3e%3c/svg%3e");
}
.col-form-label {
	display: inline-block;
	vertical-align: bottom;
	align-self: center;
}

.col-form-label-custom {
	display: -ms-flexbox;
	display: flex;
	flex-direction: row;
	align-self: center;
	align-content: flex-end;
}
.col-check-label {
	display: inline-block;
	vertical-align: bottom;
	margin-top: auto;
	margin-left: 10px;
}

/*** bootstrap stub ***/
.d-flex {
	display: -ms-flexbox;
	-ms-flex-wrap: wrap;
	display: flex;
	flex-wrap: wrap;
}
.align-content-center {
	-ms-flex-line-pack: center;
	align-content: center;
}
.align-content-between {
	-ms-flex-line-pack: justify;
	align-content: space-between;
}
.align-content-stretch {
	-ms-flex-line-pack: stretch;
	align-content: stretch;
}
.align-content-end {
	-ms-flex-line-pack: flex-end;
	align-content: flex-end;
}
.align-items-center {
	align-items: center;
}
.justify-content-between {
	justify-content: space-between;
}
.justify-content-center {
	justify-content: center;
}

.row {
	box-sizing: border-box;
	display: -ms-flexbox;
	-ms-flex-wrap: wrap;
	display: flex;
	flex-wrap: wrap;
}
.row > * {
	flex-shrink: 0;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.col {
	flex: 1 0 0%;
}
.row-cols-auto > * {
	flex: 0 0 auto;
	width: auto;
}

.col-12 {
	flex: 0 0 auto;
	width: 100%;
}
.col-10 {
	-ms-flex: 0 0 83.3333%;
	flex: 0 0 83.3333%;
	width: 83.3333%;
}
.col-9 {
	-ms-flex: 0 0 75%;
	flex: 0 0 75%;
	width: 75%;
}
.col-8 {
	-ms-flex: 0 0 66.6666%;
	flex: 0 0 66.6666%;
	width: 66.6666%;
}
.col-7 {
	-ms-flex: 0 0 58.3333%;
	flex: 0 0 58.3333%;
	width: 58.3333%;
}
.col-6 {
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	width: 50%;
}
.col-5 {
	-ms-flex: 0 0 41.6666%;
	flex: 0 0 41.6666%;
	width: 41.6666%;
}
.col-4 {
	-ms-flex: 0 0 33.3333%;
	flex: 0 0 33.3333%;
	width: 33.3333%;
}
.col-3 {
	-ms-flex: 0 0 25%;
	flex: 0 0 25%;
	width: 25%;
}
.col-2 {
	-ms-flex: 0 0 16.6666%;
	flex: 0 0 16.6666%;
	width: 16.6666%;
}
.col-1 {
	-ms-flex: 0 0 8.3333%;
	flex: 0 0 8.3333%;
	width: 8.3333%;
}

.col-sm-12,.col-md-12,.col-12,
.col-sm-10,.col-md-10,.col-10,
.col-sm-9,.col-md-9,.col-9,
.col-sm-8,.col-md-8,.col-8,
.col-sm-7,.col-md-7,.col-7,
.col-sm-6,.col-md-6,.col-6,
.col-sm-5,.col-md-5,.col-5,
.col-sm-4,.col-md-4,.col-4,
.col-sm-3,.col-md-3,.col-3,
.col-sm-2,.col-md-2,.col-2,
.col-sm-1,.col-md-1,.col-1,
.col {
	box-sizing: border-box;
}

@media (min-width: 575px) {
	.col-sm-12 {
		flex: 0 0 auto;
		width: 100%;
	}
	.col-sm-10 {
		-ms-flex: 0 0 83.3333%;
		flex: 0 0 83.3333%;
		width: 83.3333%;
	}
	.col-sm-9 {
		-ms-flex: 0 0 75%;
		flex: 0 0 75%;
		width: 75%;
	}
	.col-sm-8 {
		-ms-flex: 0 0 66.6666%;
		flex: 0 0 66.6666%;
		width: 66.6666%;
	}
	.col-sm-7 {
		-ms-flex: 0 0 58.3333%;
		flex: 0 0 58.3333%;
		width: 58.3333%;
	}
	.col-sm-6 {
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		width: 50%;
	}
	.col-sm-5 {
		-ms-flex: 0 0 41.6666%;
		flex: 0 0 41.6666%;
		width: 41.6666%;
	}
	.col-sm-4 {
		-ms-flex: 0 0 33.3333%;
		flex: 0 0 33.3333%;
		width: 33.3333%;
	}
	.col-sm-3 {
		-ms-flex: 0 0 25%;
		flex: 0 0 25%;
		width: 25%;
	}
	.col-sm-2 {
		-ms-flex: 0 0 16.6666%;
		flex: 0 0 16.6666%;
		width: 16.6666%;
	}
	.col-sm-1 {
		-ms-flex: 0 0 8.3333%;
		flex: 0 0 8.3333%;
		width: 8.3333%;
	}
}

@media (min-width: 880px) {
	.col-md {
		flex: 1 0 0%;
	}
	.col-md-12 {
		flex: 0 0 auto;
		width: 100%;
	}
	.col-md-10 {
		-ms-flex: 0 0 83.3333%;
		flex: 0 0 83.3333%;
		width: 83.3333%;
	}
	.col-md-9 {
		-ms-flex: 0 0 75%;
		flex: 0 0 75%;
		width: 75%;
	}
	.col-md-8 {
		-ms-flex: 0 0 66.6666%;
		flex: 0 0 66.6666%;
		width: 66.6666%;
	}
	.col-md-7 {
		-ms-flex: 0 0 58.3333%;
		flex: 0 0 58.3333%;
		width: 58.3333%;
	}
	.col-md-6 {
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		width: 50%;
	}
	.col-md-5 {
		-ms-flex: 0 0 41.6666%;
		flex: 0 0 41.6666%;
		width: 41.6666%;
	}
	.col-md-4 {
		-ms-flex: 0 0 33.3333%;
		flex: 0 0 33.3333%;
		width: 33.3333%;
	}
	.col-md-3 {
		-ms-flex: 0 0 25%;
		flex: 0 0 25%;
		width: 25%;
	}
	.col-md-2 {
		-ms-flex: 0 0 16.6666%;
		flex: 0 0 16.6666%;
		width: 16.6666%;
	}
	.col-md-1 {
		-ms-flex: 0 0 8.3333%;
		flex: 0 0 8.3333%;
		width: 8.3333%;
	}
	
	.offset-md-6 {
		margin-left: 50%;
	}
}

@media (min-width: 1100px) {
	.col-lg {
		flex: 1 0 0%;
	}
	.col-lg-12 {
		flex: 0 0 auto;
		width: 100%;
	}
	.col-lg-10 {
		flex: 0 0 83.3333%;
		width: 83.3333%;
	}
	.col-lg-9 {
		flex: 0 0 75%;
		width: 75%;
	}
	.col-lg-8 {
		flex: 0 0 66.6666%;
		width: 66.6666%;
	}
	.col-lg-7 {
		flex: 0 0 58.3333%;
		width: 58.3333%;
	}
	.col-lg-6 {
		flex: 0 0 50%;
		width: 50%;
	}
	.col-lg-5 {
		flex: 0 0 41.6666%;
		width: 41.6666%;
	}
	.col-lg-4 {
		flex: 0 0 33.3333%;
		width: 33.3333%;
	}
	.col-lg-3 {
		flex: 0 0 25%;
		width: 25%;
	}
	.col-lg-2-4 {
		flex: 0 0 20%;
		width: 20%;		
	}
	.col-lg-2 {
		flex: 0 0 16.6666%;
		width: 16.6666%;
	}
	.col-lg-1 {
		flex: 0 0 8.3333%;
		width: 8.3333%;
	}
	
	.offset-lg-6 {
		margin-left: 50%;
	}
}

/*** margin / padding ***/
.pt-0 {
	padding-top: 0;
}
.pb-0 {
	padding-bottom: 0;
}
.ps-0 {
	padding-left: 0;
}
.pe-0 {
	padding-right: 0;
}

.g-1 {
	gap: var(--base-padding);
}
.g-3 {
	gap: calc(var(--base-padding) * 2);
}

.p-1 {
	padding: var(--base-padding);
}
.px-1 {
	padding-left: var(--base-padding);
	padding-right: var(--base-padding);
}
.py-1 {
	padding-top: var(--base-padding);
	padding-bottom: var(--base-padding);
}
.pt-1 {
	padding-top: var(--base-padding);
}
.pb-1 {
	padding-bottom: var(--base-padding);
}
.p-3 {
	padding: calc(var(--base-padding) * 2);
}
.px-3 {
	padding-left: calc(var(--base-padding) * 2);
	padding-right: calc(var(--base-padding) * 2);
}
.py-3 {
	padding-top: calc(var(--base-padding) * 2);
	padding-bottom: calc(var(--base-padding) * 2);
}
.pt-3 {
	padding-top: calc(var(--base-padding) * 2);
}
.pb-3 {
	padding-bottom: calc(var(--base-padding) * 2);
}

.m-1 {
	margin: var(--base-margin);
}
.mx-1 {
	margin-left: var(--base-margin);
	margin-right: var(--base-margin);
}
.my-1 {
	margin-top: var(--base-margin);
	margin-bottom: var(--base-margin);
}
.mt-1 {
	margin-top: var(--base-margin);
}
.mb-1 {
	margin-bottom: var(--base-margin);
}
.m-3 {
	margin: calc(var(--base-margin) * 2);
}
.mx-3 {
	margin-left: calc(var(--base-margin) * 2);
	margin-right: calc(var(--base-margin) * 2);
}
.my-3 {
	margin-top: calc(var(--base-margin) * 2);
	margin-bottom: calc(var(--base-margin) * 2);
}
.mt-3 {
	margin-top: calc(var(--base-margin) * 2);
}
.mb-3 {
	margin-bottom: calc(var(--base-margin) * 2);
}

.full-size {
	display: block;
	width: 100%;
	height: auto;
}
.w-100 {
	width: 100%;
}
.h-100 {
	height: 100%;
}

#header-info {
	font-size: 1.5rem;
	line-height: 1.56rem;
	font-weight: 600;
	text-align: center;
	text-transform: uppercase;
}
#header-info a {
	font-size: 1.25rem;
}

#header .contain-bg {
	border-radius: 40px;
	flex-grow: 1;
}


#navigation-show {
	display: none;
}
#navigation-toggle {
	display: block;
	position: relative;
	z-index: 20;
	color: #575756;
	border-radius: 10px;
	width: 60px;
	height: 60px;
	cursor: pointer;
}
#navigation-toggle > span,
#navigation-toggle:after,
#navigation-toggle:before {
	position: relative;
	left: 16px;
	display: block;
	content: ' ';
	background: #575756;
	width: 28px;
	height: 3px;
	transition: 0.2s all linear;
}
#navigation-toggle:after {
	top: 15px;
}
#navigation-toggle > span {
	top: 26px;
}
#navigation-toggle:before {
	top: 37px;
}
#navigation-toggle:hover {
	background: #94c11c;
}

#navigation-show:checked ~ #navigation-toggle span {
	width: 0;
}
#navigation-show:checked ~ #navigation-toggle:hover {
	background: #72ba3e;
}
#navigation-show:checked ~ #navigation-toggle:after,
#navigation-show:checked ~ #navigation-toggle:before {
	left: 18px;
	background: #F7051D;
	width: 25px;
	height: 4px;
}
#navigation-show:checked ~ #navigation-toggle:after {
	transform: rotate(45deg);
	top: 21px;
}
#navigation-show:checked ~ #navigation-toggle:before {
	transform: rotate(-45deg);
	top: 28px;
}

#navigation {
	display: flex;
	flex-direction: column;
	align-items: end;
	position: fixed;
	z-index: 80;
	right: 0;
	top: 100px;
	overflow-y: auto;
	background: rgba(255, 255, 255, 0.8);
	padding: 20px;
	border-radius: 40px 0 0 40px;
}
#menu {
	width: 100%;
	max-width: 0;
	max-height: 0;
	padding-right: 20px;
	overflow: hidden;
	transition: 0.3s all linear;
}
#navigation-show:checked ~ #menu {
	max-width: 90vw;
	max-height: calc(100vh - 100px);
}

#menu .navbar-nav {
	display: flex;
	flex-direction: column;
	justify-content: stretch;
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 1.25rem;
}
#menu li {
	margin: 0;
	padding: 0;	
}
#menu a {
	display: inline-block;
	color: #00808f;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: 600;
	padding: 13px 6px;
}
#menu a:hover {
	color: #338e61;
}
#menu .active a {
	color: #8114e6;
}

#fb-frame {
	border: none;
	width: 100%;
	min-height: 100px;
	height: 100%;
}

#footer-contain {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 30px;
	text-align: center;
}
#footer-contain a {
	text-decoration: underline;
}
#footer-contain a:hover {
	color: #8114e6;
}

#footer-logo {
	display: none;
}

#footer-menu ul {
	list-style: none;
	margin: 0;
	padding: 0;
	columns: 2;
}
#footer-menu li {
	margin: 0 auto;
	max-width: 150px;
}
#footer-menu a {
	text-decoration: none;
}

.footer-items {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-evenly;
	gap: 15px;
}
#footer-social {
	justify-content: center;
}

#footer-contact-text p {
	margin: 0 0 2rem 0;
}

#header .contain {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

.img-bubble {
	position: relative;
}
.img-bubble img {
	border-radius: 100%;
}
.img-bubble:after {
	display: block;
	content: ' ';
	position: absolute;
    top: -0.5%;
    left: -1.5%;
    right: 0%;
    bottom: -2%;
	background: url('./img/bubble.webp') center center no-repeat;
	background-size: 101% 101%;
	pointer-events: none;
	transition: 0.3s transform linear, 0.3s filter ease-in-out;
}
a:hover .img-bubble:after {
	transform: rotate(5deg);
	filter: blur(4px);
}

#footer-contain a.bubble,
a.bubble {
	display: inline-block;
	color: #00808f;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
}
.bubble.bubble-alt {
	color: inherit;
	text-transform: none;
}
#footer-contain a.bubble:hover,
a.bubble:hover {
	color: #8114e6;
}
.bubble-text,
.bubble-dl {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 80px;
	height: 80px;
	margin: 0 auto 1rem auto;
	text-align: center;
}
.bubble-text {
	padding: 20px;
}
.bubble-text > *:last-child {
	margin-bottom: 0;
}
.bubble-title {
	font-size: 2.5rem;
	line-height: 1;
	text-transform: none;
	margin: 0 auto;
	color: #79B829;
	background-image: linear-gradient(90deg, #00A5B7 0%, #79B829 100%);
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.bubble-dl-b,
.bubble-dl {
	background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 39' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cg stroke='%238114E6' stroke-width='4' stroke-linecap='round'%3e%3cpath d='M15 2V32.8792'/%3e%3cpath d='M28 37L2 37'/%3e%3cpath d='M3 22.7275L15 34.5716L27 22.7275'/%3e%3c/g%3e%3c/svg%3e");
	background-position: center center;
	background-size: 40px 40px;
	background-repeat: no-repeat;
}
.bubble-dl-b {
	background-position: center 85%;
}
.bubble-sm .bubble-text,
.bubble-sm .bubble-dl {
	width: 40px;
	height: 40px;	
}
.bubble-md .bubble-text,
.bubble-md .bubble-dl {
	width: 120px;
	height: 120px;	
}
.bubble-lg .bubble-text,
.bubble-lg .bubble-dl {
	width: 240px;
	height: 240px;	
}
.bubble-xl .bubble-text,
.bubble-xl .bubble-dl {
	width: 360px;
	height: 360px;	
}
.bubble-text:after,
.bubble-dl:after {
	display: block;
	content: ' ';
	position: absolute;
    top: -0.5%;
    left: -1.5%;
    right: 0%;
    bottom: -2%;
	background: url('./img/bubble.webp') center center no-repeat;
	background-size: 101% 101%;
	pointer-events: none;
	transition: 0.3s filter linear;
	filter: blur(0);
}
a.bubble:hover .bubble-text:after,
a.bubble:hover .bubble-dl:after {
	filter: blur(2px);
}

.video-player-full {
	display: block;
	width: 100%;
	max-width: 800px;
	aspect-ratio: 16 / 9;
	margin: auto;
	border: none;
}

.social {
	display: inline-block;
	width: 50px;
	height: 50px;
	border-radius: 100%;
	background-color: #8114e6;
	background-position: center center;
	background-size: 100% 100%;
	transition: 0.3s transform linear;
}
.social-yt {
	background-image: url("data:image/svg+xml,%3csvg fill='none' version='1.1' viewBox='0 0 50 50' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='m36.08 30.53c0.3186 0 0.5377 0.0995 0.6571 0.2987 0.1594 0.1593 0.239 0.438 0.239 0.8363v1.016h-1.792v-1.016c0-0.3584 0.0597-0.6372 0.1792-0.8363 0.1991-0.1992 0.4381-0.2987 0.7168-0.2987zm-6.989 0c0.2788 0 0.4779 0.0796 0.5974 0.2389 0.1593 0.1593 0.2389 0.3983 0.2389 0.7169v5.018c0 0.3186-0.0597 0.5376-0.1792 0.6571-0.1195 0.1593-0.2987 0.239-0.5376 0.239-0.1593 0-0.3186-0.0399-0.4779-0.1195-0.1992-0.0797-0.3585-0.1991-0.4779-0.3584v-6.034c0.1593-0.1593 0.2987-0.2589 0.4181-0.2987 0.0797-0.0398 0.2191-0.0597 0.4182-0.0597zm-11.11-4.898h-7.049v1.912h2.39v11.23h2.27v-11.23h2.39zm0.0597-6.213 2.987-8.483h-2.628l-1.553 5.794h-0.1792l-1.673-5.794h-2.569l3.047 8.722v5.735h2.569zm6.631 9.677h-2.031v7.348c-0.0797 0.1194-0.1792 0.219-0.2987 0.2986l-0.3584 0.239c-0.239 0.1195-0.4182 0.1792-0.5377 0.1792-0.1991 0-0.3385-0.0398-0.4181-0.1195-0.0797-0.0796-0.1195-0.2588-0.1195-0.5376v-7.407h-2.031v8.124c0 0.5576 0.1195 0.9758 0.3585 1.254 0.2389 0.3186 0.5774 0.4779 1.016 0.4779 0.3584 0 0.7567-0.1194 1.195-0.3584 0.3585-0.1593 0.7567-0.458 1.195-0.8961v1.075h2.031zm-0.1792-3.465c1.075 0 1.892-0.2588 2.449-0.7765 0.5973-0.4779 0.896-1.195 0.896-2.151v-5.496c0-0.7567-0.2987-1.414-0.896-1.971-0.5576-0.5177-1.334-0.7766-2.33-0.7766-1.035 0-1.852 0.2389-2.449 0.7168-0.6372 0.4779-0.9558 1.135-0.9558 1.971v5.556c0 0.916 0.2987 1.633 0.896 2.151 0.5576 0.5177 1.354 0.7765 2.39 0.7765zm7.527 5.794c0-0.7965-0.1792-1.414-0.5376-1.852-0.2788-0.3983-0.7567-0.5974-1.434-0.5974-0.3584 0-0.677 0.0797-0.9558 0.239-0.3186 0.1194-0.5974 0.3385-0.8363 0.6571v-4.241h-2.091v13.14h2.091v-0.7168c0.1194 0.1593 0.2489 0.2887 0.3883 0.3883 0.1394 0.0995 0.2887 0.1891 0.448 0.2688 0.2788 0.1195 0.6372 0.1792 1.075 0.1792 0.5973 0 1.055-0.1792 1.374-0.5376 0.3186-0.3983 0.4779-0.916 0.4779-1.553zm-0.7168-5.914c0.4779 0 0.9159-0.0996 1.314-0.2987 0.3982-0.1991 0.8363-0.5377 1.314-1.016v1.195h2.27v-10.69h-2.27v8.124c-0.1593 0.1991-0.3982 0.3982-0.7168 0.5974-0.239 0.1194-0.4381 0.1792-0.5974 0.1792-0.2788 0-0.4381-0.0598-0.4779-0.1792-0.1195-0.1195-0.1792-0.2987-0.1792-0.5377v-8.184h-2.27v8.961c0 0.6372 0.1394 1.095 0.4181 1.374 0.1992 0.3186 0.5974 0.4779 1.195 0.4779zm7.766 6.213c0-0.9558-0.2589-1.673-0.7766-2.15-0.4779-0.4779-1.195-0.7169-2.15-0.7169-0.916 0-1.653 0.2589-2.21 0.7766-0.5575 0.5576-0.8363 1.254-0.8363 2.091v4.301c0 0.9558 0.2588 1.693 0.7766 2.21 0.5575 0.5575 1.274 0.8363 2.15 0.8363 0.9956 0 1.752-0.2589 2.27-0.7766 0.5177-0.4779 0.7766-1.235 0.7766-2.27v-0.4779h-2.091v0.4182c0 0.5973-0.0597 0.9757-0.1792 1.135-0.1593 0.1593-0.3983 0.2389-0.7169 0.2389-0.3982 0-0.6372-0.0995-0.7168-0.2987-0.1195-0.1593-0.1792-0.5177-0.1792-1.075v-1.792h3.883zm-14.58-15.41c0.2788 0 0.5377 0.0598 0.7766 0.1793 0.1593 0.1593 0.239 0.3584 0.239 0.5973v5.794c0 0.3186-0.0797 0.5377-0.239 0.6571-0.1593 0.1593-0.4181 0.239-0.7766 0.239-0.3186 0-0.5376-0.0797-0.6571-0.239-0.1991-0.1194-0.2987-0.3385-0.2987-0.6571v-5.794c0-0.1991 0.0996-0.3982 0.2987-0.5973 0.1593-0.1195 0.3784-0.1793 0.6571-0.1793z' fill='%23fff'/%3e%3c/svg%3e");
}
.social-insta {
	background-image: url("data:image/svg+xml,%3csvg fill='none' version='1.1' viewBox='0 0 50 50' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='m24.73 30.53c-0.7567 0-1.464-0.1394-2.121-0.4182-0.6571-0.2787-1.235-0.667-1.732-1.165-0.4978-0.4979-0.8861-1.085-1.165-1.762-0.2788-0.677-0.4182-1.394-0.4182-2.15 0-0.7567 0.1394-1.464 0.4182-2.121 0.2787-0.6571 0.667-1.235 1.165-1.732s1.075-0.8861 1.732-1.165c0.6571-0.2787 1.364-0.4181 2.121-0.4181 1.513 0 2.798 0.5277 3.853 1.583 1.055 1.055 1.583 2.34 1.583 3.853 0 0.7566-0.1394 1.474-0.4182 2.15s-0.6671 1.264-1.165 1.762c-0.4978 0.4978-1.075 0.8861-1.732 1.165-0.6572 0.2788-1.364 0.4182-2.121 0.4182zm8.722-5.496c0-0.3585-0.0199-0.7268-0.0597-1.105-0.0399-0.3783-0.0996-0.7268-0.1792-1.045h2.449v12.01c0 0.3186-0.0996 0.5775-0.2987 0.7766s-0.458 0.2987-0.7766 0.2987h-19.71c-0.3186 0-0.5775-0.0996-0.7766-0.2987-0.1992-0.1991-0.2987-0.458-0.2987-0.7766v-12.01h2.449c-0.0796 0.3186-0.1394 0.6671-0.1792 1.045-0.0398 0.3784-0.0597 0.7467-0.0597 1.105 0 1.195 0.229 2.33 0.6869 3.405 0.458 1.075 1.075 2.011 1.852 2.808s1.702 1.424 2.778 1.882c1.075 0.4579 2.21 0.6869 3.405 0.6869 1.195 0 2.33-0.229 3.405-0.6869 1.075-0.458 2.001-1.085 2.778-1.882s1.394-1.732 1.852-2.808 0.687-2.21 0.687-3.405zm5.496-10.93c0-0.916-0.3186-1.693-0.9558-2.33s-1.414-0.9558-2.33-0.9558h-21.86c-0.916 0-1.693 0.3186-2.33 0.9558s-0.9558 1.414-0.9558 2.33v21.86c0 0.9159 0.3186 1.692 0.9558 2.33s1.414 0.9558 2.33 0.9558h21.86c0.916 0 1.692-0.3186 2.33-0.9558s0.9558-1.414 0.9558-2.33zm-4.361 0c0.3186 0 0.5775 0.1095 0.7766 0.3285 0.1991 0.2191 0.2987 0.4879 0.2987 0.8065v3.286c0 0.3186-0.0996 0.5775-0.2987 0.7766s-0.458 0.2987-0.7766 0.2987h-3.286c-0.3186 0-0.5874-0.0996-0.8065-0.2987-0.219-0.1991-0.3285-0.458-0.3285-0.7766v-3.286c0-0.3186 0.1095-0.5874 0.3285-0.8065 0.2191-0.219 0.4879-0.3285 0.8065-0.3285z' fill='%23fff'/%3e%3c/svg%3e");
}
.social-fb {
	background-image: url("data:image/svg+xml,%3csvg fill='none' version='1.1' viewBox='0 0 50 50' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='m34.39 10.91h-5.304c-1.033 0-1.986 0.1788-2.86 0.5364-0.8741 0.3576-1.639 0.8343-2.294 1.43-0.6555 0.5959-1.162 1.271-1.52 2.026-0.3575 0.7549-0.5363 1.51-0.5363 2.265v3.158h-4.708v6.198h4.708v12.51h6.257v-12.51h4.648v-6.198h-4.648v-1.609c0-0.4768 0.1887-0.8542 0.5662-1.132 0.3774-0.2782 0.7052-0.4172 0.9833-0.4172h4.708z' fill='%23fff'/%3e%3c/svg%3e");
}
.social:hover {
	transform: scale(1.1);
}

/*** dialog + polyfill ***/
dialog {
	display: none;
	position: absolute;
	z-index: 999999;
	left: 0;
	right: 0;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
	height: -moz-fit-content;
	height: -webkit-fit-content;
	height: fit-content;
	margin: auto;
	padding: 0;
	background: #fff;
	color: #000;
	border: 1px solid #999;
	transition: all 0.2s linear;
}
dialog[open] {
	display: block;
}
dialog + .backdrop {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0,0,0,0.2);
}
._dialog_overlay {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
dialog.fixed {
	position: fixed;
	top: 50%;
	transform: translate(0, -50%);
}


.modal-dialog {
	border-radius: 6px;
	transform: translate(0, -50%) scale(0.1);
	min-width: 160px;
	max-width: 540px;
}
*::-ms-backdrop, .modal-dialog { width: 540px; }	/* IE 11 max- cant center */
@media screen\0 { .modal-dialog { width: 540px; } } /* IE 9,10 */

.modal-dialog.jdialog-show {
	transform: translate(0) scale(1);
}
.modal-dialog.jdialog-show.fixed {
	transform: translate(0, -50%) scale(1);
}
.modal-header .btn-close {
	box-sizing: content-box;
	background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
	width: 1em;
	height: 1em;
	color: #000;
	border: none;
	opacity: 0.5;
}
.modal-header .btn-close:hover {
	opacity: 0.8;
	cursor: pointer;
}
.modal-header {
	display: flex;
	justify-content: space-between;
	padding: 15px 15px 10px 15px;
	border-bottom: 1px solid #999;
}
.modal-header h1 {
	font-weight: normal;
	font-size: 1.2em;
	line-height: 1em;
	margin: 0;
	padding: 0;
}
.modal-body {
	padding: 0 15px;
	margin: 15px 0;
}
.modal-footer {
	border-radius: 0 0 5px 5px;
	padding: 8px 15px;
	text-align: right;
	background: #ccc;
}


@media (min-width: 575px) {
	
}

@media (min-width: 880px) {
	:root {
		--base-margin: 15px;
		--base-padding: 30px;
	}

	#footer-contain {
		flex-direction: row;
		gap: 20px;
		text-align: left;
	}
	#footer-social {
		justify-content: flex-start;
	}
	#footer-menu {
		order: 4;
	}
	#footer-download {
		justify-content: flex-end;
		order: 5;
	}
}

@media (min-width: 1100px) {
	
	#navigation-toggle {
		display: none;
	}
	#navigation {
		position: initial;
		top: initial;
		right: initial;
		background: none;
		padding: 0;
		border-radius: 0;
	}
	#menu {
		max-width: initial;
		max-height: initial;
	}
	#menu .navbar-nav {
		flex-direction: row;
		justify-content: space-evenly;
	}
	
	#footer-logo {
		display: block;
	}	
}