/*--
	Coming-soon page style
--*/
.cs-content-container {
	float:left;
	width:620px;
	min-height: 100vh;
	position:relative;
	z-index:2;
    background: #272535;
	padding:70px 100px;
    display : flex;
    align-items : center;
    justify-content: center;
}
.cs-media {
	position:fixed;
	top:0;
	bottom:0;
	left:620px;
	right:0;
	overflow:hidden;
	z-index:1;
}

.cs-content-container .illustration_bg .bg{
	opacity:0.2;
}
.cs-content-wrapper {
	position:relative;
	z-index:10;
}
.cs-content-wrapper h2 {
	font-size:3.5em;
	color:#fff;

    font-weight: 600;
	position:relative;
}
.cs-content-wrapper h3 {
 	color: var(--main-color);
    font-style: italic;
    font-size: 2.1em;
    font-weight: 500;
    padding-bottom: 10px;
	margin-top:50px;
}
.cs-content-wrapper h2:after {
    position: absolute;
    content: '\25CF\25CF\25CF\25CF\25CF';
    width: 50px;
    left: 50%;
    bottom: -20px;
    margin-left: -25px;
    font-size: 6px;
    letter-spacing: 6px;
	color: var(--main-color);
}
.cs-reserv_btn {
	position:absolute;
	top:70px;
	left:50%;
	transform: translateX(-50%);
	z-index:20;
	cursor:pointer;
	padding: 20px 50px;
    background: var(--main-color);
	color:#272535;
	border-radius: 4px;
	font-family: var(--secondary-font);
	text-transform: uppercase;
	font-size: 1.1em;
	font-weight: 600;
    transition: all .3s ease-in-out;
}
.cs-reserv_btn:hover {
	background: #272535;
	color:var(--main-color);
}
.cs-reserv_btn:after {
	content: '';
	position: absolute;
	top: -50px;
	left: 50%;
	height: 40px;
	width: 1px;
	background: rgba(255,255,255,.2);
}
.cs-reserv_btn:before {
    content: '';
    position: absolute;
    top: -10px;
    left: -10px;
    right: -10px;
    bottom: -10px;
    border-radius: 4px;
    border: 1px dashed rgba(255,255,255,.2);
    transition: all .3s ease-in-out;
}
.cs-reserv_btn:hover:before {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.hero_btn.cs-reserv_btn:hover {
	background:#fff;
	color:#666;
	border-color:transparent
}
.cs-reserv_btn i {
	margin-left:20px;
}
.cs-content-container:before {
    content: '';
    position: absolute;
    top: 20px;
    left: 20px;
    right: 20px;
    bottom: 20px;
    border: 1px dashed rgba(255,255,255,0.2);
    z-index: -2;
	border-radius: 20px;
	background: #211F2C;

}
.cs-content-container:after {
	position: absolute;
    content: '\25CF\25CF\25CF\25CF\25CF';
    transform: translateX(-50%);
    left: 50%;
    top: 50px;
 	margin-left: 6px;
    font-size: 6px;
    letter-spacing: 6px;
    color: var(--main-color);
}
.cs-logo {
	position:absolute;
	top:120px;
	left:50%;
	width:140px;
	z-index:4;
	margin-left:-70px;
}
.cs-logo img {
	height: auto;
	width:120px;
}
.cs-subcribe-form {
	margin:60px 0 50px;
}
.cs-subcribe-form p {
	color:#fff;
	text-align: center;
	margin-bottom: 10px;

}
.cs-social  {
	display:inline-block;
	overflow: hidden;
	border-radius: 4px;
}
.cs-social  li  {
	float:left;
}
.cs-social li a {
	width:56px;
	height:56px;
	line-height:56px;
	float:left;
	border:1px solid rgba(255,255,255, .1);
	border-left:none;
	font-size: 1.4em;
	background:rgba(255,255,255, .05);
    transition: all .2s linear;
	color: var(--main-color);
}
.cs-social li:first-child a {
	border-left:1px solid rgba(255,255,255,0.1);
}
.cs-social li a:hover {
	background:#fff;
}
.cs-media .hero_promo-wrap {
	top:80px;
	right: inherit;
	left:90px;
	margin-top:0;
}
.cs-media-container {
	top:40%;
	z-index:2;
}
.cs-contacts {
	position:absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom:60px;
	z-index:20;
}
.cs-contacts ul {
	margin-top: 30px;
}
.cs-contacts li {
	display: inline-block;
	margin: 0 30px;
    font-weight: 600;
	text-transform: uppercase;
	font-size: 1.1em;
    transition: all .2s ease-in-out;
	position: relative;
	font-family: var(--secondary-font);
}
.cs-contacts .section-separator:before, .cs-contacts  .section-separator:after {
	background: rgba(255,255,255,.2)
}
.cs-contacts li:before {

    content: '';
    position: absolute;
    right: -30px;
    top: 50%;
	margin-top: -3px;
    height: 6px;
	width: 6px;
	border-radius: 50%;

    background: var(--main-color);
    transition: all .3s ease-in-out;
}
.cs-contacts li:last-child:before {
	display: none
}
.cs-contacts li a {
    color: #fff;
}
.cs-contacts li span {
	margin-right:6px;
   color: #fff;
}
.countdown {
	max-width:1100px;
	margin:0 auto;
	position:relative;
}
.cs-countdown-item {
	float:left;
	width:25%;
	color:#fff;
	position:relative;
	z-index:2;
}
.cs-countdown-item:before {
	content:'';
	position:absolute;
	top: 50%;
	margin-top: -5px;
	right:-20px;
	width:10px;
	height:10px;
	background:#fff;
	transform: rotate(45deg);
}
.cs-countdown-item.no-dec:before{
	display:none;
}
.cs-countdown-item span {
	font-size: 4.5vw;
	font-weight:700;
 	color: var(--main-color);
}
.cs-countdown-item p {
	padding-bottom:0;
	color:#fff;
 	text-align: center;
	font-size:1.3em;
}
.bg-wrap {
	position: absolute;
	top: 20px;
	left: 5px;
	right: 20px;
	bottom: 20px;
	border-radius: 20px;
	z-index: 1;
	overflow: hidden;
	border: 1px dashed rgba(255, 255, 255, 0.2);
}
.bg-wrap .overlay {
	opacity: .6
}
.cs-footer_separator {
	position: absolute;
	bottom: 70px;
	margin: 0;
	left:  90px;
	right: 90px;
}
.subscribe-message {

	bottom:-30px;

}
/*------responsive------------------------------------------------*/
@media only screen and (max-width: 1350px) {
.cs-media:before {
	display:none;
}
}


@media only screen and (max-width: 1200px) {
.cs-content-container {
	float:left;
	width:100%;
	min-height: inherit;
	padding:70px 100px;
    display : flex;
    align-items : center;
    justify-content: center;
}
.cs-media {
	position: relative;
	left:0;
	float:left;
	width:100%;
	padding:250px 0;
}
.cs-logo {
	top:80px;
}
.cs-countdown-item span {
   font-size: 74px;
}

.cs-content-container:before , .footer-separator-wrap {
    display: none;
}

.cs-content-wrapper {
	margin-top: 100px;
}
.bg-wrap {

    top: 0;
    left: 0;
    right: 0;
    bottom:0;
    border-radius: 0;
    z-index: 1;
    border:none;
}
}
@media only screen and  (max-width: 768px) {
.cs-countdown-item {
	width:50%;
}
.cs-reserv_btn {

	transform: translateX(0);
	left: 20px;
	right: 20px;

}
.cs-content-container {
    padding: 70px 30px;
}
.cs-content-container:before {
    top: 20px;
    left: 20px;
    right: 20px;
    bottom: 20px;
    box-shadow: 0px 0px 0px 20px rgba(255,255,255,0.03);
}
 .cs-contacts  {
	left: 0;
	right: 0;
	transform: translateX(0)

}
.cs-contacts li {
	float: left;
	width:100%;
	margin : 0   0  12px 0;
}
.cs-contacts li:before {
	display: none
}
}
@media only screen and  (max-width: 564px) {

.cs-media .hero_promo-wrap {
	left:50%;
	width:200px;
	margin-left:-100px;
}
.cs-countdown-item:before , .dec-corner {
	display:none;
}
.cs-countdown-item span {
   font-size: 54px;
}
}
/* ─── Form messages ─── */
.form-message {
    padding: 10px 15px;
    margin-bottom: 15px;
    border-radius: 3px;
    font-size: 14px;
}
.form-message--success {
    background: rgba(67, 160, 71, 0.15);
    color: #43a047;
    border-left: 3px solid #43a047;
}
.form-message--error {
    background: rgba(229, 57, 53, 0.12);
    color: #e53935;
    border-left: 3px solid #e53935;
}

/* ─── GDPR consent ─── */
.gdpr-consent-wrap {
    margin: 14px 0 18px;
}

.gdpr-label {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    flex-wrap: nowrap !important;
    gap: 10px;
    cursor: pointer;
    user-select: none;
}

/* Native checkbox is outside the label (linked via for/id), hidden via inline style */

/* Custom checkbox box */
.gdpr-box {
    flex-shrink: 0;
    width: 17px;
    height: 17px;
    margin-top: 2px;
    border: 1.5px solid rgba(0, 0, 0, 0.22);
    border-radius: 4px;
    background: transparent;
    transition: background 0.18s, border-color 0.18s;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Checkmark (hidden by default) */
.gdpr-box::after {
    content: '';
    width: 9px;
    height: 5px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(-45deg) translateY(-1px);
    opacity: 0;
    transition: opacity 0.15s;
}

/* Checked state — input is a preceding sibling of the label */
#contact-gdpr:checked + label .gdpr-box,
#newsletter-gdpr:checked + label .gdpr-box {
    background: #c9a96e;
    border-color: #c9a96e;
}
#contact-gdpr:checked + label .gdpr-box::after,
#newsletter-gdpr:checked + label .gdpr-box::after {
    opacity: 1;
}

/* Focus ring (keyboard nav) */
#contact-gdpr:focus-visible + label .gdpr-box,
#newsletter-gdpr:focus-visible + label .gdpr-box {
    outline: 2px solid #c9a96e;
    outline-offset: 2px;
}

.gdpr-text {
    font-size: 13px;
    color: #888;
    line-height: 1.55;
}
.gdpr-text a {
    color: #c9a96e;
    text-decoration: underline;
}

/* Newsletter dark footer variant */
.newsletter-gdpr {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid rgba(255, 255, 255, 0.07);
    text-align: left;
}
.newsletter-gdpr .gdpr-box {
    border-color: rgba(255, 255, 255, 0.22);
}
.newsletter-gdpr .gdpr-text {
  color: rgb(255 255 255);
  font-size: 15px;
}

/* ─── reCAPTCHA ─── */
.recaptcha-wrap {
    margin: 10px 0 16px;
}

/* ─── Button loading state ─── */
.btn-loading {
    opacity: 0.7;
    cursor: not-allowed;
}

/* ─── Hero slider H2 desktop padding ─── */
@media (min-width: 992px) {
    .fs-slider-item .section-title h2 {
        padding-left: 15%;
        padding-right: 15%;
    }
}

/* ─── Language switcher ─── */
/* float:right, height, line-height, color, font-size all come from style.css */
.lang-wrap a.act-lang {
    color: var(--main-color);
}
.lang-wrap span {
    opacity: 0.4;
}

/* ─── dec-container:before is decorative — must not block form clicks ─── */
.dec-container:before {
    pointer-events: none;
}

/* ─── Form elements inside dec-container must sit above the :before layer ─── */
.dec-container .text-block,
.dec-container .contactform-wrap {
    position: relative;
    z-index: 2;
}

/* ─── Map container fills the contact form column height ─── */
.map-container.mapC_vis {
    height: 100%;
    min-height: 420px;
}

/* ─── Newsletter GDPR below the input+button row ─── */
.newsletter-gdpr {
    display: block;
    clear: both;
    margin: 10px 0 4px;
    position: relative;
    z-index: 5;         /* above subscribe-button z-index:2 stacking context */
    pointer-events: auto;
}

/* ─── Contact form GDPR — ensure it's above dec-container:before (z-index:1) ─── */
.gdpr-consent-wrap {
    position: relative;
    z-index: 5;
    pointer-events: auto;
}
