:root {
	--color-gold: #b18563; /*#fab702*/
	--color-yellow: #f1c40f; /*#fab702*/
	--color-white: #fff;
}

body {
    font-family: "Quicksand", -apple-system, BlinkMacSystemFont, "Segoe UI",
        Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif,
        "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol",
        "Noto Color Emoji";
    background-color: #fff;
    position: relative;
}
body:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    -webkit-transition: 0.3s all ease;
    -o-transition: 0.3s all ease;
    transition: 0.3s all ease;
    opacity: 0;
    visibility: hidden;
    z-index: 1;
}
body.offcanvas-menu:before {
    opacity: 1;
    z-index: 1002;
    visibility: visible;
}

p {
    color: #b3b3b3;
    font-weight: 300;
}

h1,h2,h3,h4,h5,h6,
.h1,.h2,.h3,.h4,.h5,.h6 {
    font-family: "Quicksand", -apple-system, BlinkMacSystemFont, "Segoe UI",
        Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif,
        "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol",
        "Noto Color Emoji";
	margin-bottom: 0px;
}

a {
    -webkit-transition: 0.3s all ease;
    -o-transition: 0.3s all ease;
    transition: 0.3s all ease;
}

a, a:hover { text-decoration: none !important; }

img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.color-white {
	color: var(--color-white);
}

.row-about {
	display: flex;
    justify-content: space-between;
}

.box-about {
	display: flex;
	flex-direction: column;
	border-radius: 10px;
	box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 36px 0px, rgba(0, 0, 0, 0.06) 0px 0px 0px 1px;
	height: auto;
	align-items: center;
	width: 30%;
	padding: 3%;
}

.icon-about {
    width: 30%;
    padding-bottom: 10%;
}

.text-about {
    font-size: 18px;
	font-weight: bold;
	text-align: center;
}

.intro {
	position: relative;
	display: flex;
	justify-content: center;
    height: 100vh;
	align-items: flex-end;
}

.section-box {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	padding-top: 5vh;
}

.intro h1 {
	font-size: 1.8rem;
	padding-bottom: 2rem;
}

#intro-media {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	background: #333 url(../images/intro.png) no-repeat center center;
	background-size: cover;
}

#intro-media::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 5;
	content: '';
	background-color: rgba(0, 0, 0, .3);
}

.intro_media_video {
	min-width: 100%;
	min-height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
}

.intro_context {
	z-index: 10;
	color: #fff;
	text-align: center;
	padding-bottom: 2%;
}

.menu-icon {
	font-size: 1.1rem;
}

.intro-button {
  text-decoration: none;
  display: inline-block;
  padding: 10px 30px;
  margin: 10px 20px;
  position: relative;
  overflow: hidden;
  border: 2px solid var(--color-yellow);
  border-radius: 8px;
  font-family: 'Montserrat', sans-serif;
  color: var(--color-yellow);
  transition: .2s ease-in-out;
  background: rgb(241, 196, 15, .3);
  color: #fff;
}
.intro-button:before {
  content: "";
  background: linear-gradient(90deg, rgba(255, 255, 255, .1), rgba(255, 255, 255, .5));
  height: 50px;
  width: 50px;
  position: absolute;
  top: -8px;
  left: -75px;
  transform: skewX(-45deg);
}
.intro-button:hover {
  background: var(--color-yellow) !important;
}
.intro-button:hover:before {
  left: 150px;
  transition: .5s ease-in-out;
}
.intro-button:focus {
    outline: none;
}

.shine-button {
  text-decoration: none;
  display: inline-block;
  padding: 10px 30px;
  margin: 10px 20px;
  position: relative;
  overflow: hidden;
  border: 2px solid var(--color-yellow);
  border-radius: 8px;
  font-family: 'Montserrat', sans-serif;
  color: var(--color-yellow);
  transition: .2s ease-in-out;
  background-color: transparent;
}
.shine-button:before {
  content: "";
  background: linear-gradient(90deg, rgba(255, 255, 255, .1), rgba(255, 255, 255, .5));
  height: 50px;
  width: 50px;
  position: absolute;
  top: -8px;
  left: -75px;
  transform: skewX(-45deg);
}
.shine-button:hover {
  background: var(--color-yellow);
  color: #fff;
}
.shine-button:hover:before {
  left: 150px;
  transition: .5s ease-in-out;
}
.shine-button:focus {
    outline: none;
}

.shine-button-green {
  text-decoration: none;
  display: inline-block;
  padding: 10px 30px;
  margin: 10px 20px;
  position: relative;
  overflow: hidden;
  border: 2px solid #339B44;
  border-radius: 8px;
  font-family: 'Montserrat', sans-serif;
  color: #339B44;
  transition: .2s ease-in-out;
  cursor: pointer;
  background-color: transparent;
}
.shine-button-green:before {
  content: "";
  background: linear-gradient(90deg, rgba(255, 255, 255, .1), rgba(255, 255, 255, .5));
  height: 50px;
  width: 50px;
  position: absolute;
  top: -8px;
  left: -75px;
  transform: skewX(-45deg);
}
.shine-button-green:hover {
  background: #339B44;
  color: #fff;
}
.shine-button-green:hover:before {
  left: 150px;
  transition: .5s ease-in-out;
}
.shine-button-green:focus {
    outline: none;
}

.box-adv {
    border-radius: 10px;
    display: flex;
    height: auto;
	background-color: #efefe;
	box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
	flex-direction: column;
}

.box-adv .box-img {
	border-radius: 10px 10px 0 0;
    width: 100%;
	height: 100vh !important;
}

.box-adv .box-content {
    width: 100%;
	border-radius: 0 0 10px 10px;
	padding-bottom: 20px;
}

.box-adv .box-title-content {
    text-align: center;
}

.box, .box-gallery {
    border-radius: 10px;
    display: flex;
    height: auto;
    /*background: linear-gradient(0deg,rgba(220,230,225,.2) 30%,rgba(141,167,74,.4));*/
	background-color: #efefe;
	box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
}

.box-img {
    border-radius: 10px 0 0 10px;
    overflow: hidden;
    display: flex;
    position: relative;
    z-index: 1;
}

.box-btn {
	display: flex;
    justify-content: space-around;
}

.box-content {
    padding: 1% 2% 0 2%;
    display: flex;
    flex-direction: column;
    border-radius: 0 10px 10px 0;
}

.box .box-img {
    width: 125%;
}

.box .box-content {
    width: 75%;
}

.box-gallery .box-img {
    width: 100%;
}

.box-gallery .box-content {
    width: 100%;
}

.box-gallery iframe {
	width: 1200px;
	height: 450px;
}

.box-title {
    margin-bottom: 0.5rem;
}

.box-title-content {
	font-size: 1.5rem;
    color: #201c1c;
    line-height: 120%;
    text-transform: uppercase;
	font-weight: bold;
}

.box-price {
	padding-top: 5px;
    font-size: 1.2rem;
	font-weight: bold;
}

.box-list {
    color: #403a3a;
    margin-bottom: 1rem;
}

.box-list-item {
	font-size: 1.2rem;
    padding-left: 35px;
    position: relative;
    margin-bottom: 10px;
}

.box-list-item::before {
    content: "";
    position: absolute;
    width: 24px;
    height: 24px;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background-image: url(../images/icons/check-mark-24.png);
    background-repeat: no-repeat;
}

.plan-wrapper {
    border-radius: 10px;
    height: auto;
	background-color: #efefe;
	box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
	padding:1rem;
	width: 100%;
}

.plan {
	display: none;
}

.plan-active {
	display: flex;
}

.plan-img {
    width: 100%;
    border-radius: 10px 0 0 10px;
    overflow: hidden;
    display: flex;
    position: relative;
    z-index: 1;
}

.plan-content {
    width: 100%;
    padding: 3% 3% 0 3%;
    display: flex;
    flex-direction: column;
    border-radius: 0 10px 10px 0;
}

.plan-content ul li {
	font-size: 1.2rem;
    padding-left: 15px;
    position: relative;
    margin-bottom: 10px;
}

.plan-title {
    margin-bottom: 1.5rem;
}

.plan-title-content {
	font-size: 1.5rem;
    color: #201c1c;
    line-height: 120%;
    text-transform: uppercase;
	font-weight: bold;
	text-align: center;
}

.plan-list {
	list-style-type: decimal;
    color: #403a3a;
    margin-bottom: 1rem;
	margin-left: 10%;
}

.plan-btn {
	margin-left: 10%;
}

.plan-controls {
	display: flex;
	justify-content:center;	
    color: #403a3a;
    margin-bottom: 1rem;
}

.thanks .site-footer {
	margin-top: 0 !important;
}
.thanks .intro {
	align-items: center !important;
}
.thanks .intro_context h1 p {
	color: #fff;
}

.site-footer {
    background-color: #333;
    background-image: url(../images/bg-footer.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    font-size: 14px;
    line-height: 22px;
    position: relative;
	margin-top: 7vh;
}

.site-footer:before {
    position: absolute;
    display: block;
    content: " ";
    background-color: rgba(0, 0, 0, 0.8);
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.top-footer {
    color: #999;
    padding: 310px 0 285px;
}

.top-footer .widget-title {
    font-size: 20px;
    line-height: 30px;
    margin-bottom: 35px;
    color: var(--color-yellow);
    font-family: inherit;
    position: relative;
    letter-spacing: 0.1em;
	text-transform: uppercase;
}

.top-footer .widget-title:before {
    content: "";
    position: absolute;
    height: 1px;
    width: 70%;
    background-color: var(--color-yellow);
    position: absolute;
    bottom: -5px;
    left: 0;
}

.top-footer ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.top-footer ul li a {
    color: #ccc;
}

.top-footer .cms-widget-footer ul li:nth-child(1), .top-footer .cms-widget-footer ul li:nth-child(3) {
    font-weight: bold;
    color: #fff;
    font-size: 1.2rem;
    margin-bottom: 10px;
}

.top-footer .cms-widget-footer ul li:nth-child(2), .top-footer .cms-widget-footer ul li:nth-child(4) {
    font-size: 1rem;
    margin-bottom: 1rem;
    color: #ccc;
}

.bg-overlay:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: inherit;
    display: block;
}

.medium-footer {
    padding: 0 0 35px;
    text-align: center;
    position: relative;
}

.bottom-footer {
    color: #777;
    padding: 20px 0;
    position: relative;
    background-color: rgba(0, 0, 0, 0.65);
}

.bottom-footer .copyright-content {
    margin: 0 auto;
    font-size: 0.8rem;
}

.gold {color: var(--color-gold);}

#video-mobile {display: none;}

.modal-list {
    color: #403a3a;
    margin-bottom: 0.5rem;
}

.modal-list-item {
	font-size: 0.8rem;
    padding-left: 25px;
    position: relative;
    margin-bottom: 5px;
}

.modal-list-item::before {
    content: "";
    position: absolute;
    width: 16px;
    height: 16px;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background-image: url(../images/icons/check-modal.png);
    background-repeat: no-repeat;
}

.modal-list-subitem {
	font-size: 0.8rem;
    padding-left: 25px;
    position: relative;
    margin-bottom: 5px;
	margin-left:10px;
}

.modal-list-subitem::before {
    content: "";
    position: absolute;
    width: 16px;
    height: 16px;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background-image: url(../images/icons/modal-subitem.png);
    background-repeat: no-repeat;
}

.modal-title {
	display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 100%;
}

.form-title {
	text-transform: uppercase;
}
.form-subtitle {
	font-size: 16px;
}

#fixed-contact-button-telegram {
    position: fixed;
    right: 10px;
    bottom: 65px;
    width: 50px;
    height: 50px;
    border-radius: 100%;
    cursor: pointer;
    z-index: 1020;
	background: #2ca5e0;
}

#fixed-contact-button-viber {
    position: fixed;
    right: 10px;
    bottom: 10px;
    width: 50px;
    height: 50px;
    border-radius: 100%;
    cursor: pointer;
    z-index: 1020;
	background: #7c529d;
}

.fixed-contact-pulsation {
    width: 80px;
    height: 80px;
    border-radius: 50px;
    position: absolute;
    left: -15px;
    top: -15px;
    z-index: -1;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-animation: 2s infinite pulsation;
    animation: 2s infinite pulsation;
}

.fixed-contact-icon {
    color: #fff;
    width: 100%;
    font-size: 26px;
	height: 100%;
    overflow: hidden;
}

.fixed-contact-icon a {
	color: #fff;
}

.text-center {
    text-align: center!important;
}

.align-items-center {
    -webkit-box-align: center!important;
    -ms-flex-align: center!important;
    align-items: center!important;
}

.justify-content-center {
    -webkit-box-pack: center!important;
    -ms-flex-pack: center!important;
    justify-content: center!important;
}
.d-flex {
    display: -webkit-box!important;
    display: -ms-flexbox!important;
    display: flex!important;
}

video {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Це дозволить відео заповнити контейнер */
}

@media (min-width: 1600px) {
	.container {max-width: 1540px;}
}

@media (min-width: 1400px) and (max-width: 1599.99px) {
	.container {max-width: 1340px;}
	.box-gallery iframe {width: 1000px;}
}

@media (min-width: 1200px) and (max-width: 1399.99px) {
	.container {max-width: 1140px;}
	.box-content{padding: 2% 2% 0 2%;}
	.box-gallery iframe {width: 800px;}
	.box-title-content {
		font-size: 1.2rem;
		line-height: 100%;
	}
	.box-list-item {
		font-size: 1rem;
		padding-left: 35px;
		margin-bottom: 15px;
	}
	.plan-title-content {
		font-size: 1.2rem;
		line-height: 100%;
	}
	ul.plan-list li {
		font-size: 1rem;
		padding-left: 10px;
		margin-bottom: 15px;
	}
	.section-box {
		padding-top: 5vh;
	}
	.shine-button, .shine-button-green {
		padding: 10px 20px;
		margin: 5px;
	}
}

@media (max-width: 1200px) {
	.box-gallery iframe {width: 700px; height:400px;}
	.box-title-content {
		font-size: 1rem;
		line-height: 100%;
	}
	.box-price { font-size: 1rem; }
	.box-list-item {
		font-size: 1rem;
		margin-bottom: 10px;
	}
	.plan-title-content {
		font-size: 1rem;
		line-height: 100%;
	}
	ul.plan-list li {
		font-size: 1rem;
		margin-bottom: 10px;
	}	
	.section-box {
		padding-top: 3vh;
	}
	.shine-button, .shine-button-green {
		padding: 5px 15px;
		border-radius: 5px;
		margin: 5px;
	}
	.box-list {
		margin-bottom: 0;
	}
	.box-title {
		margin-bottom: 0.5rem;
	}
}

@media (max-width: 992px) {
	.container {max-width: 850px;}
	.box-list-item {
		font-size: 0.8rem;
		padding-left: 25px;
		margin-bottom: 8px;

	}
	ul.plan-list li {
		font-size: 0.8rem;
	}
	.shine-button, .shine-button-green {
		padding: 5px 10px;
		margin: 3px;
		font-size:12px;
	}
	.box-list-item::before {
		width: 16px;
		height: 16px;
		background-image: url(../images/icons/check-mark-16.png);
	}
	.plan-content ul li {
		padding-left: 5px;
		margin-bottom: 8px;
	}
}

@media (max-width: 900px) {
	.container {max-width: 800px;}
}

@media (max-width: 850px) {
	.container {max-width: 750px;}
	.box-gallery iframe {width: 600px;height:350px;}
	.box .box-img {
		width: 120%;
	}
	.box .box-content {
		width: 80%;
	}
}

@media (max-width: 768px) {
	.container {max-width: 680px;}
	.box-gallery iframe {width: 500px;height:300px;}
	.box-title-content {
		font-size: 0.8rem;
	}
	.box-price { font-size: 0.8rem; }
	.box-list-item {
		font-size: 0.7rem;
		padding-left: 30px;
		margin-bottom: 8px;
	}
	.plan-title-content {
		font-size: 0.8rem;
	}
	ul.plan-list li {
		font-size: 0.7rem;
		padding-left: 5px;
		margin-bottom: 8px;
	}	
	.section-box {
		padding-top: 2vh;
	}	
	.shine-button-green {
		padding: 5px 10px;
		margin: 5px;
		font-size: 12px;
	}
	.box-img {
		border-radius: 10px 0 0 10px;
		overflow: hidden;
		display: flex;
		position: relative;
		z-index: 1;
	}
	.box-content {
		padding: 3% 1% 0 3%;
		display: flex;
		flex-direction: column;
		border-radius: 0 10px 10px 0;
	}
	.plan-content {
		padding: 3% 1% 0 3%;
		flex-direction: column;
	}
	.site-footer {
		margin-top: 5vh;
	}
	
	.box-adv .box-img {	height: 50vh !important; }
}

@media (max-width: 692px) {
	.container {max-width: 550px;}
	.box-gallery iframe {width: 400px; height: 250px}
}


@media (max-width: 576px) {
	.container {max-width: 460px;}
	.box-gallery iframe {width: 460px;}
	.intro {height: 85vh;}
	.intro_context {padding-bottom: 10%;}
	#intro-media{background: #333 url(../images/intro/m-0.jpg) no-repeat center center;}
	#video-mobile {display: block;}
    #video-desktop {display: none;}
	.box-title {
		display: flex;
		justify-content: space-between;
		flex-direction: column;
	}
	.box-title .box-title-content {
		padding-bottom:10px;
		text-align: center;
	}
	.box-price {
		padding-top:0;
	}
	.box .box-img {
		width: 100%;
		border-radius: 10px 10px 0 0;
	}
	.box .box-content {
		width: 100%;
	}
	.box-img {
		border-radius: 10px 10px 0 0;
	}
	.box, .plan, .box-gallery {
		flex-direction: column;
	}
	.plan-btn {
		margin-left: 0%;
	}
	.plan-wrapper {
		padding: 0;
	}
	.plan-controls{
		padding-top: 0.5rem;
	}
	.site-footer {
		margin-top: 2vh;
	}
	.box-content {
		padding: 3%;
	}
	.plan-content {
		padding: 3%;
	}
}

@media (max-width: 480px) {
	.container {max-width: 380px;}
	.box-gallery iframe {width: 380px;}
}

@media (max-width: 390px) {
	.container {max-width: 360px;}
	.box-gallery iframe {width: 360px;}
}