﻿/*
Theme Name: islandia
Author: Vadim
Description:  islandia's Site
Version: 1.0
*/

/* ======================================= */


/* ======================================= */
/* RESET */
/* ======================================= */
a, article, body, div, footer, form, fieldset, h1, h2, h3, h4, h5, h6, header, html, i, img, li, nav, ol, p, section, span, u, ul, input, textarea, dl, dt, table, tr, td, th, pre {
	margin: 0;
	padding: 0;
}

html,body{
	position: relative;
    height: 100%;
}

html.admin-bar{
    height: calc(100% - 32px);
}

@media screen and (max-width: 782px){
    html.admin-bar{
        height: calc(100% - 46px);
    }
}

body{   
    position: relative;
    
    color: var(--common);
    font: 400 18px/calc(25 / 18 ) var(--font);
    
    -webkit-tap-highlight-color: transparent;
    -webkit-text-size-adjust: none;
    
    overflow-x: hidden;
}

li{
	list-style: none;
}

a{
	text-decoration: none;
    color: var(--common);
}

.svg{
    display: none;
}

.strong,
strong,
b{
    font-weight: 700;
}

svg,
use,
path{
    display: block;    
}

svg{
    pointer-events: none;
}

table{    
    border-collapse: collapse;
}

iframe{
    border: none;
}

.grecaptcha-badge{
    display: none!important;
}

@media screen and (max-width: 1024px){
    
}

input[type='text'],
input[type='text']:focus,
input[type='text']:active,
input[type='email'],
input[type='email']:focus,
input[type='email']:active,
input[type='tel'],
input[type='tel']:focus,
input[type='tel'],
input[type='submit'],
input[type='submit']:focus,
input[type='submit']:active,
textarea{
    -webkit-appearance: none;
    border-radius: 0;  
}

input:-webkit-autofill{    
    /*-webkit-text-fill-color: var(--common);
    -webkit-box-shadow: 0 0 0px 1000px var(--light) inset;
    background-color: transparent;*/
}

/* ======================================= */
/* COMMON ELEMS */
/* ======================================= */
@media screen and (max-width: 600px){
    #wpadminbar{
        position: fixed;
    }
}

.global-page{
    
}

.page-body{
    
}

.container{
    position: relative;
    display: block;
    
    width: 100%;
    padding-left: 80px;
    padding-right: 80px;
    
    z-index: 1;
    
    box-sizing: border-box;
}

.container.static{
    position: static;
}

.img-abs{
    position: absolute;
    left: 0;
    top: 0;
    
    width: 100%;
    height: auto;
}

.img-bg{
    position: absolute;
    left: 0;
    top: 0;
    
    width: 100%;
    height: 100%;
    
    object-fit: cover;
}

.img{
    width: 100%;
    height: auto;
}

.relative{
    position: relative;
}

.ohb{
    overflow: hidden;
}

.center{
    text-align: center;
}

.right{
    text-align: right;
}

.lh0{
    line-height: 0;
}

@media screen and (max-width: 1024px){
    body{
        font-size: 16px;
        line-height: 1.5;
    }
    
    .container{
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (max-width: 767px){
    .mcenter{
        text-align: center;
    }
}
/* ======================================= */
/* COMMON */
/* ======================================= */
.logo-link:active{
    transform: translateY(1px);
}

.db{
    display: block;
}

.inline{
    display: inline-block;
}

.light{
    color: var(--light);
}

.gray{
    color: var(--dark-light);
}

.light-bg{
    background-color: var(--light);
}

.main-title{
    font: 300 90px/1.3 var(--font-pt);
}

.section-title{
    
}

.container-title{
    font: 400 52px/1.307692307692308 var(--font-pt);
}

.container-title i,
.container-title em{
    font-style: italic;
}

.block-title{
    font: 400 32px/41px var(--font-pt);
}

.block-title.italic{
    font-style: italic;
}

.banner-title{
    color: var(--primary);
    font: italic 400 28px/1.285714285714286 var(--font-pt);
    text-align: center;
}

.primary-color{
    color: var(--primary);
}

.block-img__elem{
    position: relative;
    
    display: block;
}

.upper-container{
    position: relative;
    
    z-index: 2;
}

.uppest-container{
    position: relative;
    
    z-index: 5;
}

.lower-container{
    position: relative;
    
    z-index: 1;
}

.page-anchor{
    position: relative;
}

.admin-bar .page-anchor{
    top: -32px;
}

@media screen and (max-width: 782px){
    .admin-bar .page-anchor{
        top: -46px;
    }
}

.fw400{
    font-weight: 400;
}

.fw500{
    font-weight: 500;
}

.fw600{
    font-weight: 600;
}

.uppercase{
    text-transform: uppercase;    
}

.break-word{
    word-break: break-word;
}

.events-none{
    pointer-events: none;
}

.text-container img{
    max-width: 100%;
    height: auto;
}

.text-container p:not(:first-child),
.text-container ul:not(:first-child),
.text-container ol:not(:first-child){
    margin-top: 22px;
}

.text-container h1:not(:first-child),
.text-container h2:not(:first-child),
.text-container h3:not(:first-child),
.text-container h4:not(:first-child),
.text-container h5:not(:first-child),
.text-container h6:not(:first-child){
    margin-top: 30px;
}

.text-container h1,
.text-container h2,
.text-container h3,
.text-container h4,
.text-container h5,
.text-container h6{
    
}

.text-container h1{
    font-size: 32px;
}

.text-container h2{
    font-size: 24px;
}

.text-container h3{
    font-size: 24px;
}

.text-container h4{
    font-size: 20px;
}

.text-container h5{
    font-size: 16px;
}

.text-container h6{
    font-size: 14px;
}

.text-container ul,
.text-container ol{
    padding-left: 24px;
}

.text-container ul li{
    list-style-position: outside;
    list-style-type: disc;
}

.text-container ol li{
    list-style-position: outside;
    list-style-type: decimal;
}

.text-container ul li:not(:first-child),
.text-container ol li:not(:first-child){
    margin-top: 10px;
}

.text-container li ol,
.text-container li ul{
    margin-top: 10px;
}

@media screen and (min-width: 1025px){
    .only-small-device{
        display: none;
    }
}

@media screen and (max-width: 1024px){
    .only-desktop{
        display: none;
    }
    
    .main-title{
        font-size: 48px;
        line-height: 1.333333333333333;        
    }
    
    .container-title{
        font-size: 32px;
        line-height: 1.28125;
    }
    
    .block-title{
        font-size: 20px;
        line-height: 1.3;
    }
}

/* ======================================= */
/* BUTTONS */
/* ======================================= */
.primary-button{
    display: inline-block;
    
    color: var(--light);
    font: 600 18px/25px var(--font);
    text-align: center;
    
    padding: 20px 40px;
    
    border: none;
    background-color: var(--common);
    
    user-select: none;
    cursor: pointer;
    
    outline: none;
}

.primary-button.fw{
    display: block;
    
    width: 100%;
    padding-left: 0;
    padding-right: 0;
}

.primary-button:active{
    transform: translateY(1px);
}

@media screen and (max-width: 1024px){
    .primary-button{
        font-size: 16px;
        line-height: 1.5;
    }
}

/* ======================================= */
/* HEADER */
/* ======================================= */
.header{
    position: absolute;
    left: 0;
    top: 0;
    
    width: 100%;   
    
    z-index: 10; 
}

@media screen and (min-width: 1025px){
    .modal-menu{
        display: none;
    }
    
    .header-inside{
        display: flex;
        align-items: center;
        
        padding: 20px 0;
    }   
    
    .logo-container{
        position: absolute;
        left: 50%;
        top: 32px;
        margin-left: -109px;
    } 
    
    .logo{
        width: 218px;
    }
    
    .call-form-btn{    
        margin-left: auto;
    }
    
    .nav-container{
        display: flex;
        gap: 40px;
    }
        
    .nav-container a{
        display: block;
        
        color: var(--light);
        font: 400 16px/1.375 var(--font);
        
        padding: 5px 0;
    }
}

.logo{
    display: block;
    
    background: url("images/logo.svg") center center / 100% no-repeat;
}

.logo.dark{
    background-image: url("images/logo-dark.svg");
}

.logo:before{
    content: "";
    
    display: block;
    padding-top: 16.51376146788991%;
}

.call-form-btn{
    line-height: 0;
}

.head-button{
    display: inline-block;
    
    color: var(--common);
    font: 500 16px/1.375 var(--font);
    
    padding: 19px 60px;
    
    box-shadow: inset 0 0 0 1px var(--common);
    background-color: var(--light);
    
    user-select: none;
}

@media screen and (max-width: 1024px){
    .header-inside{
        position: relative;
        
        padding: 20px 0;
    }
    
    .logo-container{
        width: 160px;
        margin: 0 auto;
    }
    
    .menu-open{
        position: absolute;
        right: -8px;
        top: 50%;
        margin-top: -20px;
        
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-item: center;
        gap: 4px;
        
        width: 40px;
        height: 40px;
    }
    
    .menu-open__line{
        width: 24px;
        height: 1px;
        
        background-color: var(--light);
    }
    
    .menu-open:active{
        opacity: 0.7;
    }
    
    .modal-menu{
        position: fixed;
        left: 0;
        top: 0;
        
        display: none;
        flex-direction: column;
        
        width: 100%;
        height: 100%;
        padding-left: 20px;
        padding-right: 20px;
        
        
        background-color: var(--light);
        
        box-sizing: border-box;
        
        z-index: 10;
        
        overflow: auto;
        
        visibility: hidden;
        opacity: 0;
        
        transition: all 0.3s ease-in-out;
    }
    
    .modal-menu.active{
        display: flex;
    }
    
    .modal-menu.visible{
        visibility: visible;
        opacity: 1;
    }
    
    .admin-bar .modal-menu{
        top: 32px;
        
        height: calc(100% - 32px);
    }
    
    .modal-menu__head{
        position: relative;
        
        padding: 20px 0;
    }
    
    .modal-menu__close{
        position: absolute;
        right: -10px;
        top: 50%;
        margin-top: -20px;
    }
    
    .close-button{
        position: relative;
        
        width: 40px;
        height: 40px;
    }
    
    .close-button:before,
    .close-button:after{
        content: "";
        
        position: absolute;
        left: 50%;
        top: 50%;
        
        margin: -1px 0 0 -12px;
        
        width: 24px;
        height: 1px;
        
        background-color: var(--common);
    }
    
    .close-button:before{
        transform: rotate(-45deg);
    }
    
    .close-button:after{
        transform: rotate(45deg);
    }
    
    .call-form-btn{
        width: 100%;
        max-width: 380px;
        margin: 0 auto;
        padding: 20px 0;
    }
    
    .nav-container{
        padding-top: 12px;
        margin-bottom: auto;
    }
    
    .nav-container .menu-item{
        padding: 3px;
    }
        
    .nav-container a{
        display: inline-block;
        
        color: var(--common);
        font: 400 18px/24px var(--font);
        
        padding: 5px 0;
    }
}

@media screen and (max-width: 782px){
    .admin-bar .modal-menu{
        top: 46px;
        
        height: calc(100% - 46px);
    }
}

/**/
.intro{
    position: relative;
    
    background-color: var(--common);
    
    overflow: hidden;
}

.intro__poster,
.intro__poster:before{
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
}

.intro__poster{
    background: center center / cover no-repeat;
    
    transition: opacity 1s ease-in-out;
    
    z-index: 1;
}

.intro__poster.hidden{
    opacity: 0;
}

.intro__poster:before{
    content: "";
    
    
}

.intro__video video,
.intro__video .video-js{
    position: absolute;
    left: 50%;
    top: 50%;
    
    width: 100%;
    height: 100%;
    
    transform: translateX(-50%) translateY(-50%);
}

.intro__video .video-js{
    width: 100%;
    height: 100%;
    
    box-sizing: border-box;
}

.intro__video video{
    object-fit: cover;
    
    z-index: 0;
}

.intro__inside{
    position: relative;
    
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    
    color: var(--light);
    text-align: center;
    
    min-height: calc(100vh);
    min-height: calc(100svh);
    padding: 90px 80px;
    
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 15.77%, rgba(0, 0, 0, 0.6) 121.08%);
    
    box-sizing: border-box;
    
    z-index: 2;   
}

.admin-bar .intro__inside{
    min-height: calc(100vh - 32px);
    min-height: calc(100svh - 32px);
}

.intro__subtitle{
    font: 300 32px/1.3125 var(--font-pt);
}

.intro__title{
    
}

.video-js > div,
.video-js > button{
    display: none;
}

@media screen and (min-width: 1025px){
    .play-button{
        right: 80px;
        bottom: 100px;
        
        width: 78px;
        height: 78px;
    }
    
    .play-lines{
        gap: 2px;
    }
    
    .play-line{
        width: 2px;
        
        border-radius: 5px;
        background-color: var(--light);
    }
    
    .play-line.n1,
    .play-line.n5{
        height: 14px;
    }
    
    .play-line.n2,
    .play-line.n4{
        height: 6px;
    }
    
    .play-line.n3{
        height: 18px;
    }
    
    @keyframes pl-1-5{
        0%{
            height: 14px;
        }
        
        50%{
            height: 6px;
        }
        
        100%{
            height: 14px;
        }
    }
    
    @keyframes pl-2-4{
        0%{
            height: 6px;
        }
        
        50%{
            height: 14px;
        }
        
        100%{
            height: 6px;
        }
    }
    
    @keyframes pl-3{
        0%{
            height: 18px;
        }
        
        50%{
            height: 6px;
        }
        
        100%{
            height: 18px;
        }
    }
}

.play-button{
    position: absolute;
    cursor: pointer;
    user-select: none;
    
    z-index: 9;
}

.play-lines,
.play-circle{
    position: absolute;
    inset: 0;     
}

.play-lines{
    display: flex;
    justify-content: center;
    align-items: center;    
}

.play-circle{
    background: url("images/icons/play-text.svg") center center / 100% no-repeat;
    
    animation: rotation 10s linear infinite;
}

.play-line.n1,
.play-line.n5{
    animation: pl-1-5 1.2s linear infinite;
}

.play-line.n2,
.play-line.n4{
    animation: pl-2-4 1.2s linear infinite;
}

.play-line.n3{
    animation: pl-3 1.2s linear infinite;
}

.play-button.pause .play-line.n1,
.play-button.pause .play-line.n2,
.play-button.pause .play-line.n3,
.play-button.pause .play-line.n4,
.play-button.pause .play-line.n5,
.play-button.pause .play-circle{
    animation-play-state: paused;
}

@keyframes rotation{
    0%{
        transform: rotate(0deg);
    }
    
    100%{
        transform: rotate(360deg);
    }
}

@media screen and (max-width: 1024px){
    .intro__inside{
        padding: 106px 20px 40px;
    }
    
    .intro__subtitle{
        font-size: 20px;
        line-height: 1.3;
    }
    
    .play-button{
        right: 20px;
        bottom: 20px;
        
        width: 40px;
        height: 40px; 
    }
    
    .play-lines{
        gap: 1px;
    }
    
    .play-line{
        width: 1px;
        
        border-radius: 5px;
        background-color: var(--light);
    }
    
    .play-line.n1,
    .play-line.n5{
        height: 8px;
    }
    
    .play-line.n2,
    .play-line.n4{
        height: 4px;
    }
    
    .play-line.n3{
        height: 10px;
    }
    
    @keyframes pl-1-5{
        0%{
            height: 8px;
        }
        
        50%{
            height: 3px;
        }
        
        100%{
            height: 8px;
        }
    }
    
    @keyframes pl-2-4{
        0%{
            height: 4px;
        }
        
        50%{
            height: 8px;
        }
        
        100%{
            height: 4px;
        }
    }
    
    @keyframes pl-3{
        0%{
            height: 10px;
        }
        
        50%{
            height: 4px;
        }
        
        100%{
            height: 10px;
        }
    }
}

@media screen and (max-width: 782px){
    .admin-bar .intro__inside{
        min-height: calc(100vh - 46px);
        min-height: calc(100svh - 46px);
    }
}

/* features */
@media screen and (min-width: 1024px){
    .features-grid{
        display: flex;
        gap: 5px;
    }
    
    .features-grid__col{
        width: 100%;
    }
}

.feature-item{
    
}

.feature-item__picture{
    line-height: 0;
}

.feature-item__title{
    font: 400 32px/50px var(--font-pt);    
}

.feature-item__title strong{
    font-weight: 400;
    font-size: 38px;
    line-height: 1;
}

.feature-item__text{
    color: var(--dark-light);
}

@media screen and (min-width: 1024px) and (max-width: 1024px){
    .feature-item__title{
        font-size: 26px;
    }
}

@media screen and (max-width: 1023px){
    .features-grid__col:not(:first-child){
        margin-top: 24px;
    }
    
    .feature-item__picture{
        max-width: 500px;
    }
    
    .feature-item__title{
        line-height: 41px;
    }
}



/* bahamas banner */
.bahamas-banner{
    position: relative;
    
    color: var(--light);
    text-align: center;
    
    overflow: hidden;
}

.banner__img{
    position: absolute;
    left: 0;
    top: 0;
    
    width: 100%;
    height: 100%;
    
    object-fit: cover;
    
    z-index: 0;
}

.bahamas-banner__inside{
    position: relative;
    
    display: flex;
    align-items: flex-end;
    
    height: 100vh;
    height: 100svh;
    padding: 58px 0;
    
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 15.77%, rgba(0, 0, 0, 0.36) 121.08%);
    
    box-sizing: border-box;
    
    z-index: 2;    
}

.admin-bar .bahamas-banner__inside{
    height: calc(100vh - 32px);
    height: calc(100svh - 32px);
}

@media screen and (max-width: 1024px){
    .bahamas-banner__inside{
        padding: 40px 0;
        margin-left: -15px;
        margin-right: -15px;
    }
}

@media screen and (max-width: 767px){
    height: calc(100vh - 46px);
    height: calc(100svh - 46px);
}

/* advantages */
@media screen and (min-width: 1024px){
    .advantage-item{
        display: flex;
        align-items: flex-start;
        
        padding: 80px 0;
    }
    
    .advantage-item__body{
        display: flex;
        flex-direction: column;
    }
    
    .advantage-item__title{
        
    }
    
    .advantage-item__note{
        font: 300 16px/1.5 var(--font);
    }
    
    .advantage-item__text{
        margin-top: auto;
        max-width: 430px;
    }
    
    .advantage-item__preview{
        position: relative;
        
        display: flex;
        gap: 8px;
        
        margin-left: auto;
    }
    
    .advantage-item__picture{
        line-height: 0;
        
        min-width: 877px;
        max-width: 877px;
    }
}

.advantages-grid__row{
    border-bottom: 1px solid var(--gray-light);
}

.advantages-grid__row:first-child{
    border-top: 1px solid var(--gray-light);
}

.advantage-item__description{
    position: absolute;
    inset: 0;
    
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    
    color: var(--light);
    
    padding: 40px;
    
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 15.77%, rgba(0, 0, 0, 0.6) 121.08%);
}

.advantage-item__description-row{
    display: flex;
    gap: 12px;
}

.advantage-item__description-number{
    font: 400 38px/41px var(--font-pt);
}

@media screen and (min-width: 1024px) and (max-width: 1024px){
    .advantage-item__picture{
        min-width: 470px;
        max-width: 470px;
    }
}
    
@media screen and (max-width: 1023px){
    .advantage-item{
        padding: 40px 0;
    }
    .advantage-item__preview{
        position: relative;
        
        margin-top: 24px;
        max-width: 500px;
    }
    
    .advantage-item__description{
        gap: 10px;
        
        padding: 20px;
    }
    
    .advantage-item__description-row{
        align-items: center;
        gap: 8px;
    }
    
    .advantage-item__description-number{
        font-size: 36px;
        line-height: 1;
    }
}

@media screen and (max-width: 1023px){
    .advantage-item__picture{
        max-width: none;
        min-width: 0;
    }
}

@media screen and (max-width: 767px){
    .advantages-grid{
        margin-left: -20px;
        margin-right: -20px;
    }
    
    .advantage-item__body{
        padding-left: 20px;
        padding-right: 20px;
    }
    
    .advantage-item__preview,
    .advantage-item__picture{
        max-width: none;
    }
}

/* total phase */
.tp-section{
    background: center center / cover no-repeat var(--primary);
}

.tp-section__inside{
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 15.77%, rgba(0, 0, 0, 0.6) 121.08%);
}

.tp-container{
    display: flex;
    flex-direction: column;
    
    color: var(--light);
    
    min-height: 100vh;
    min-height: 100svh;
    
    box-sizing: border-box;
} 

.admin-bar .tp-container{
    min-height: calc(100vh - 32px);
    min-height: calc(100svh - 32px);
}

.tp-container__head{
    
}

.tp-container__subtitle{
    
}

@media screen and (min-width: 1024px){
    .tp-container__info{
        display: flex;
        
        border: 1px solid var(--light);
    }
    
    .tp-container__info-col:not(:first-child){
        border-left: 1px solid var(--light);
    }
}

.tp-container__info{
    text-align: center;
    
    margin-top: auto;
}

.tp-container__info-col{
    flex: 1;
    
    padding: 21px 10px;
}

@media screen and (min-width: 1025px){
    .tp-container__info-col{
        transition: background-color 0.15s ease-in-out;
    }
    
    .tp-container__info-title,
    .tp-container__info-text{
        transition: color 0.15s ease-in-out;
    }
    
    .tp-container__info-col:hover{
        background-color: var(--light);
    }
    
    .tp-container__info-col:hover .tp-container__info-title{
        color: var(--common);
    }
    
    .tp-container__info-col:hover .tp-container__info-text{
        color: var(--dark-light);
    }
}

@media screen and (max-width: 1024px) and (max-width: 1024px){
    .tp-container__info{
        border-color: var(--gray-light);
    }
    
    .tp-container__info-col:not(:first-child){
        border-left-color: var(--gray-light);
    }
}

@media screen and (max-width: 1024px){
    .tp-container__info-col{
        padding: 12px;
        
        background-color: var(--light);
    }
    
    .tp-container__info-title{
        color: var(--common);
    }
    
    .tp-container__info-text{
        color: var(--dark-light);
    }
}

@media screen and (max-width: 1023px){
    .tp-container__info-col:not(:first-child){
        border-top: 1px solid var(--gray-light);
    }
}

@media screen and (max-width: 782px){
    .admin-bar .tp-container{
        min-height: calc(100vh - 46px);
        min-height: calc(100svh - 46px);
    }
}

/* profit */
.profit-section{
    display: flex;
    gap: 60px;
}

.profit-section__picture,
.profit-section__body{
    flex: 1;
}

.profit-section__picture{
    
}

.profit-section__img{
    width: 100%;
    height: 100%;
    
    object-fit: cover;
}

.profit-section__body{
    padding-right: 54px;
}

.info-table{
    display: flex;
    
    border-bottom: 1px solid var(--gray-light);
}

.info-table__col{
    width: 33.333333333%;
}

.info-table__label{
    font: 300 24px/1.33333333333 var(--font);
}

@media screen and (max-width: 1024px){
    .profit-section{
        gap: 20px;
    }
    
    .info-table__label{
        font-size: 20px;
        line-height: 1.6;
    }
    
    .profit-section__body{
        padding-right: 20px;
    }
}

@media screen and (max-width: 1023px){
    .profit-section{
        display: block;
    }
    
    .profit-section__picture{
        height: 100vh;
        height: 100svh;
    }
    
    .admin-bar .profit-section__picture{
        height: calc(100vh - 32px);
        height: calc(100svh - 32px);
    }
    
    .profit-section__body{
        padding-left: 20px;
    }
}

@media screen and (max-width: 782px){
    .admin-bar .profit-section__picture{
        height: calc(100vh - 46px);
        height: calc(100svh - 46px);
    }
}

@media screen and (max-width: 500px){
    .profit-section .primary-button{
        display: block;
        
        width: 100%;
        padding-left: 0;
        padding-right: 0;
    }
}

/* investment banner */
.investm-banner{
    position: relative;
    
    color: var(--light);
}

.investm-banner__inside{
    position: relative;
    
    display: flex;
    align-items: flex-end;
    
    height: 100vh;
    height: 100svh;
    padding: 60px 0;
    
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 15.77%, rgba(0, 0, 0, 0.6) 121.08%);
    
    box-sizing: border-box;
    
    z-index: 2;
}

.admin-bar .investm-banner__inside{
    height: calc(100vh - 32px);
    height: calc(100svh - 32px);
}

@media screen and (max-width: 1024px){
    .investm-banner__inside{
        padding: 40px 0;
    }
}

@media screen and (max-width: 767px){
    .admin-bar .investm-banner__inside{
        height: calc(100vh - 46px);
        height: calc(100svh - 46px);
    }
}

/* golf destination */
@media screen and (min-width: 1025px){
    .short-text{
        max-width: 580px;
    }    
}

@media screen and (min-width: 1024px){
    .time-line__item.mobile{
        display: none;    
    } 
    
    .time-line{
        display: flex;
        align-items: flex-end;
        
        padding-left: 104px;
    }
    
    .square-elem:before{
        content: "";
        
        position: absolute;
        left: -1000px;
        top: 50%;
        margin-top: -0.5px;
        
        width: 2000px;
        height: 1px;
        
        background-color: var(--common);
        
        pointer-events: none;
    }   
}

.time-line{
    overflow: hidden;
}

.time-line__col{
    flex: 1;
}

.company-logo-img{
    height: 48px;
}

.year-elem{
    color: var(--primary);
    font-weight: 300;
}

.square-elem{
    position: relative;
    
    width: 16px;
    height: 16px;
    
    background-color: var(--common);
}

@media screen and (max-width: 1024px) and (min-width: 1024px){
    .time-line{
        padding-left: 24px;
    }
    
    .logo-text{
        max-width: 200px;
    }
}

@media screen and (max-width: 1023px){
    .time-line{
        padding: 60px 0;
    }
    
    .time-line__item.desktop{
        display: none;    
    } 
    
    .time-line__col:not(:first-child){
        padding-top: 68px;
    }    
    
    .time-line__item{
        display: flex;
        align-items: flex-start;
    }  
    
    .year-elem{
        position: relative;
        top: -2px;
        
        font-size: 18px;
        line-height: 1;
        
        
        min-width: 42px;
        max-width: 42px;
    } 
    
    .company-logo-img{
        height: 40px;
    }
    
    .square-elem{
        min-width: 16px;
        margin: 0 28px 0 16px;
    }
    
    .square-elem:before{
        content: "";
        
        position: absolute;
        left: 50%;
        top: -1000px;
        margin-left: -0.5px;
        
        width: 1px;
        height: 2000px;
        
        background-color: var(--common);
        
        pointer-events: none;
    } 
    
}

/* golf style section */
.gs-section{
    background: center center / cover no-repeat var(--dark-light);
}

.gs-section__inside{
    background-color: rgba(0,0,0,0.36);
}

.gs-container{
    display: flex;
    flex-direction: column;
    
    color: var(--light);
    
    min-height: 100vh;
    min-height: 100svh;
    
    box-sizing: border-box;
} 

.admin-bar .gs-container{
    min-height: calc(100vh - 32px);
    min-height: calc(100svh - 32px);
}

.gs-container__head{
    display: flex;
    justify-content: space-between;
}

.gs-container__text{
    font-size: 24px;
    line-height: 33px;
}

.gs-container__info{
    display: flex;
    
    text-align: center;
    
    margin-top: auto;
    
    border-left: 1px solid var(--light);
    border-right: 1px solid var(--light);
}

.gs-container__info-col{
    flex: 1;
    
    padding: 0 15px;
}

.gs-container__info-col:not(:first-child){
    border-left: 1px solid var(--light);
}

.gs-container__info-title{
    font: 300 24px/1.333333333333333 var(--font);
}

@media screen and (max-width: 1023px){
    .gs-container__head{
        flex-direction: column;
        gap: 32px;
    }
    
    .gs-container__text{
        font-size: 16px;
        line-height: 1.5;
    }
}

@media screen and (max-width: 782px){
    .admin-bar .gs-container{
        min-height: calc(100vh - 46px);
        min-height: calc(100svh - 46px);
    }
}

/* golf gallery section */
@media screen and (min-width: 601px){
    .golf-gallery{
        display: flex;
        flex-wrap: wrap;
        
        margin: -2px;
    }
    
    .golf-gallery__item{
        width: 39.375%;
        padding: 2px;
        
        box-sizing: border-box;
    }
    
    .golf-gallery__item:nth-child(2),
    .golf-gallery__item:nth-child(3){
        width: 60.625%;
    }
    
    .golf-gallery__picture:before{
        padding-top: 89.76008976008976%;
    }
    
    .golf-gallery__item:nth-child(2) .golf-gallery__picture:before,
    .golf-gallery__item:nth-child(3) .golf-gallery__picture:before{
        padding-top: 58.188%;
    }
}

.golf-gallery__picture{
    position: relative;
}

.golf-gallery__picture:before{
    content: "";
    
    display: block;
}

.golf-gallery__img{
    position: absolute;
    left: 0;
    top: 0;
    
    width: 100%;
    height: 100%;
    
    object-fit: cover;
}

@media screen and (max-width: 600px){
    .golf-gallery__item:not(:first-child){
        margin-top: 4px;
    }
    
    .golf-gallery__picture:before{
        padding-top: 91.83673469387755%;
    }
}

/* benefits */
@media screen and (min-width: 1024px){
    .benefits-container{
        display: flex;
        flex-wrap: wrap;
    }
    
    .benefits-container__col{
        width: 33.33333333333333%;
        padding: 40px 0;
        
        border-bottom: 1px solid var(--gray-light);
        
        box-sizing: border-box;
    }
    
    .benefit-item{
        height: 100%;
        padding: 0 40px;
        
        border-left: 1px solid var(--gray-light);
    }
    
    .benefits-container__col:nth-child(3n+1) .benefit-item{
        border-left: none;
    }
}

@media screen and (max-width: 1024px){
    .benefits-container__col{
        padding: 24px 0;
    }
    
    .benefit-item{
        padding: 0 24px;
    }
}

.benefit-item__text{
    color: var(--dark-light);
}

@media screen and (max-width: 1023px){
    .benefits-container__col{
        border-bottom: 1px solid var(--gray-light);
    }
    
    .benefits-container__col.empty{
        display: none;
    }
    
    .benefit-item{
        padding: 0;
    }
}

/* advantages gallery */
@media screen and (min-width: 601px){
    .adv-gallery{
        display: flex;
        flex-wrap: wrap;
        
        margin: -2px;
    }
    
    .adv-gallery__col{
        width: 41.81818181818182%;
        padding: 2px;
        
        box-sizing: border-box;
    }
    
    .adv-gallery__col.wide{
        width: 58.18181818181818%;
    }  
    
    .adv-gallery__picture:before{
        padding-top: 77.58152173913043%;        
    }
    
    .adv-gallery__picture.wide:before{
        padding-top: 55.98039215686275%;
    } 
}


.adv-gallery__col-inside{
    position: relative;
    
    height: 100%;
}

.adv-gallery__picture{
    position: relative;
    
    height: 100%;
    
    z-index: 0;
}

.adv-gallery__picture:before{
    content: "";
    
    display: block;
    
}

.adv-gallery__description{
    position: absolute;
    inset: 0;
        
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    
    color: var(--light);
    
    padding: 40px;
    
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 15.77%, rgba(0, 0, 0, 0.6) 121.08%);
    
    z-index: 1;
}

@media screen and (max-width: 1024px){
    .adv-gallery__description{
        padding: 20px;
    }
}

@media screen and (max-width: 600px){
    .adv-gallery{
        margin-left: -20px;
        margin-right: -20px;
    }
    
    .adv-gallery__col:not(:first-child){
        margin-top: 4px;
    }
    
    .adv-gallery__picture:before{
        padding-top: 91.83673469387755%;
    }
}

/* advantages */
@media screen and (min-width: 1025px){
    .advantages-container{
        display: flex;
        flex-wrap: wrap;
    }
    
    .advantages-container__col{
        width: 33.33333333%;
        padding: 0 32px;
        
        box-sizing: border-box;    
    }
    
    .advantages-container__col:not(:first-child){
        border-left: 1px solid var(--gray-light);
    }
}

.advantages-container{
    text-align: center;
}

@media screen and (max-width: 1024px){
    .advantages-container__col{
        padding: 24px 0;
    }
    
    .advantages-container__col:not(:first-child){
        border-top: 1px solid var(--gray-light);
    }
}


/* form section */
@media screen and (min-width: 1024px){
    .form-section{
        display: flex;
        align-items: center;
    }
    
    .form-section__body{
        margin-right: 40px;
    }
    
    .form-section__picture{
        max-width: 877px;
        min-width: 877px;
        margin-left: auto;
    }
    
    .form-container{
        max-width: 584px;
    }
}

.form-row:not(.first){
    padding-top: 24px;
}

.hidden-fields-container{
    display: none;
}

.form-label-wrap,
.wpcf7-form-control-wrap{
    position: relative;
    
    display: block;
}

.form-field{
    display: block;
    
    color: var(--common);
    font: 400 18px/25px var(--font);
    
    width: 100%;
    padding: 20px 16px;    
    
    border: 1px solid var(--gray-light);
    background: var(--light);
    
    box-sizing: border-box;
    
    outline: none;
    
    transition: border var(--dur) ease-in-out;
}

.form-field::placeholder{
    color: var(--gray-light);
}

.form-field:focus{
    border-color: var(--common);
}

.wpcf7 br{
    display: none;
}

.wpcf7-not-valid-tip{
    position: absolute;
    left: 0;
    top: 100%;
    
    color: var(--warning);
    font-size: 14px;
    line-height: 1;
    
    margin-top: 4px;
}

.screen-reader-response,
.wpcf7-response-output{
    display: none;
}

.form-popup .wpcf7-form:before,
.submit-container:before{
    content: "";
    
    position: absolute;
    
    width: 24px;
    height: 24px;
    
    border-radius: 50%;
    border: 2px solid var(--common);
    border-left-color: var(--light);
    
    opacity: 0;
    transition: opacity 0.05s ease-in-out;
    
    box-sizing: border-box;
    
    z-index: 10;
}

.form-popup .wpcf7-form:before{    
    left: 50%;
    top: -20px;
    
    margin-left: -14px;
}

.form-button-row{
    position: relative;
}

.form-submit{
    display: flex;
    align-items: center;
    gap: 20px;
    
    margin-top: 40px;
}

.form-submit .primary-button{
    min-width: 200px;
}

.wpcf7-spinner{
    display: block;
    
    width: 32px;
    height: 32px;
    
    border-radius: 50%;
    border: 2px solid var(--common);
    border-left-color: var(--light);
    
    opacity: 0;
    
    transition: opacity 0.05s ease-in-out;
    
    box-sizing: border-box;
    
}

.wpcf7-form.submitting .wpcf7-spinner{
    opacity: 1;
    animation: rotation 0.8s linear infinite;
}

.wpcf7-form.submitting .form-row,
.wpcf7-form.submitting .agree-row,
.wpcf7-form.submitting .radio-row,
.wpcf7-form.submitting .form-submit,
.wpcf7-form.submitting .form-fields-container,
.wpcf7-form.submitting .checkbox-label,
.wpcf7-form.submitting .form-title{
    opacity: 0.7;
    pointer-events: none;
}

.form-popup .wpcf7-form.submitting:before,
.reg-form-container .wpcf7-form.submitting .submit-container:before{
    opacity: 1;
    animation: loading 0.8s linear infinite;
}

@keyframes loading{
    0%{
        transform: rotate(0deg);
    }
    
    100%{
        transform: rotate(360deg);
    }
}

@keyframes showing{
    0%{
        opacity: 0;
    }
    
    100%{
        opacity: 1;
    }
}

.wpcf7-form{
    position: relative;
}

.wpcf7-form.sent .wpcf7-response-output{
    display: none;
}

.wpcf7-form-control.hidden{
    position: absolute;
    left: -100vw;
    top: 0;
    
    font-size: 0;
    line-height: 0;
    
    width: 0;
    height: 0;
    padding: 0;
    
    border: none;
    background: none;
    
    opacity: 0;
    visibility: hidden;
}


.wpcf7 .wpcf7-submit:disabled{
    cursor: not-allowed;
}

.iti.iti--allow-dropdown{
    width: 100%;
}

.wpcf7-form .iti__selected-country{
    font-size: 18px;
}

.wpcf7-form .iti--inline-dropdown .iti__country-list{
    max-height: 165px;
}

.radio-row{
    margin: 30px -2px 0;
}

.radio-row .wpcf7-form-control{
    display: flex;
    flex-wrap: wrap;
    
    margin: -10px;
}

.radio-row .wpcf7-list-item{
    display: block;
    
    padding: 10px;
}

.radio-row label{
    position: relative;
    display: block;
}

.radio-row .wpcf7-list-item-label{
    display: block;
    
    font-size: 16px;
    line-height: 1;
    
    padding: 4px 0 4px 26px;
    
    cursor: pointer;
}

.radio-row .wpcf7-list-item-label:before{
    content: "";
    
    position: absolute;
    left: 0;
    top: 4px;
    
    width: 18px;
    height: 18px;
    
    border: 1px solid var(--gray-light);
    border-radius: 50%;
    
    box-sizing: border-box;
}

.radio-row input:checked + .wpcf7-list-item-label:before{
    border-color: transparent;
    background: url("images/icons/checked.svg") center center / 18px no-repeat var(--primary);
}

.radio-row input{
    position: absolute;
    opacity: 0;
}

@media screen and (min-width: 1024px) and (max-width: 1024px){
    .form-section__picture{
        max-width: 470px;
        min-width: 470px;
    }
}

@media screen and (max-width: 1024px){
    .form-submit{
        margin-top: 32px;
    }
}

@media screen and (max-width: 1023px){
    .form-section__picture{
        margin: 80px -20px 0;
        
        height: 100vh;
        height: 100svh;
    }
    
    .form-section__picture .img{
        width: 100%;
        height: 100%;
        
        object-fit: cover;
    }
    
    .admin-bar .form-section__picture{
        height: calc(100vh - 32px);
        height: calc(100svh - 32px);
    }
}

@media screen and (max-width: 782px){
    .admin-bar .form-section__picture{
        height: calc(100vh - 46px);
        height: calc(100svh - 46px);
    }
}

/* footer */
@media screen and (min-width: 1025px){
    .footer{
        line-height: 1.375;        
    }
    
    .footer-top-part{
        display: flex;
    }
    
    .footer-info{
        display: flex;
        
        max-width: 877px;
        min-width: 877px;
        margin-left: auto;
    }
    
    .footer-nav{
        margin-top: -8px;
        margin-left: 220px;
    }
}

.footer{
    color: var(--gray-light);
    font-size: 16px; 
    
    padding: 40px 0;   
    
    background-color: var(--common);
}

.footer-top-part{
    padding-bottom: 32px;    
}

.footer-slogan{
    color: var(--light);
    font: italic 400 32px / 41px var(--font-pt);
}

.footer-nav{
    line-height: 0;
}

.footer-nav .menu-item{
    padding: 4px 0;
}

.footer-nav a{
    display: inline-block;
    
    color: var(--gray-light);
    line-height: 1.375;
    
    padding: 4px 0;
}

@media screen and (min-width: 1025px){
    .footer-nav a{
        transition: color 0.15s ease-in-out;
    }
    
    .footer-nav a:hover{
        color:  var(--light);
    }
}

.footer-bottom-part{
    display: flex;
    
    padding-top: 20px;
    
    border-top: 1px solid var(--dark-light);
}

.copyrights{
    white-space: nowrap;
    padding-right: 10px;
}

.created-by{
    position: relative;
    
    margin-left: auto;
    padding-right: 35px;    
}

.created-by:before{
    content: "";
    
    position: absolute;
    right: 0;
    top: 50%;
    
    width: 23px;
    height: 14px;
    margin-top: -7px;
    
    background: url("images/icons/bv-logo.webp") center center / 100% no-repeat;
}

@media screen and (max-width: 1024px){
    .footer{
        line-height: 1.5;        
    }
    
    .footer-slogan{
        font-size: 18px;
        line-height: 1.277777777777778;
    }
    
    .footer-nav{
        padding: 24px 0 16px;
    }
    
    .footer-bottom-part{
        font-size: 12px;
        line-height: 1.33333333333;
    }
}

/* map section */
.map-img{
    position: relative;
}

.map-img:before{
    content: "";
    
    display: block;
    padding-top: 56.25%;
}

.swiper-container {
    position: relative;
    z-index: 1;
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    transition-property: transform;
    box-sizing: content-box;

    z-index: 1;
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
    transform: translate3d(0px, 0, 0);
}

.swiper-slide {
    position: relative;

    flex-shrink: 0;

    width: 100%;

    transition-property: transform;
}

.swiper-slide-invisible-blank {
    visibility: hidden;
}

.swiper-fade.swiper-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-fade .swiper-slide-active {
    pointer-events: auto
}

.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.map-pagination{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    
    display: flex;
    justify-content: center;
    
    padding-bottom: 40px;
    
    z-index: 10;
}

.map-pagination__inside{
    display: flex;
    gap: 7px;
    
    padding: 12px;
    
    border-radius: 50px;
    background-color: rgba(255,255,255,0.16);
}

.map-pagination .swiper-pagination-bullet{
    display: block;
    
    width: 12px;
    height: 12px;
    
    border-radius: 20px;
    background-color: var(--light);
    
    cursor: pointer;
    user-select: none;
    outline: none;
    
    transition: width 0.15s ease-in-out;
}

.map-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{
    width: 120px;
}

@media screen and (max-width: 1024px){
    .map-pagination{
        padding-bottom: 24px;
    }
    
    .map-pagination__inside{
        padding: 8px;
    }
    
    .map-pagination .swiper-pagination-bullet{
        width: 8px;
        height: 8px;
    }
    
    .map-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{
        width: 60px;
    }
    
    .map-img:before{
        padding-top: 0;
        
        height: 100vh;
        height: 100svh;
    }
    
    .admin-bar .map-img:before{
        height: calc(100vh - 32px);
        height: calc(100svh - 32px);
    }
}

@media screen and (max-width: 782px){
    .admin-bar .map-img:before{
        height: calc(100vh - 46px);
        height: calc(100svh - 46px);
    }
}

/* ======================================= */
/* POPUPS */
/* ======================================= */
.popup-container{
    position: fixed;
    display: none;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    
    background-color: rgba(40, 40, 40, 0.4);
    
    opacity: 0;
    
    transition: all 0.3s ease-in-out;
    
    z-index: 100;
}

.admin-bar .popup-container{
    top: 32px;
}

@media screen and (max-width: 782px){
    .admin-bar .popup-container{
        top: 46px;
    }
}

.popup-container.active{
    display: block;
}

.popup-container.visible{
    opacity: 1;
}

.popup-elem{
    display: none;
    
    height: 100%;
    
    transform: translateX(30px);
    opacity: 0;
    
    transition: all 0.3s ease-in-out;
}

.popup-elem.active{
    display: block;
}

.popup-elem.visible{
    transform: translateX(0);
    opacity: 1;
}

.form-success{
    display: flex;
    flex-direction: column;
    
    height: 100%;
    padding: 60px;
    max-width: 613px;
    margin-left: auto;
    
    
    background-color: var(--light);
    
    overflow: auto;
    
    box-sizing: border-box;
}

.form-success__head{
    display: flex;
    align-items: flex-start;
}

.close-btn{
    width: 40px;
    min-width: 40px;
    margin-left: 24px;
    
    cursor: pointer;
    user-select: none;
}

.close-btn:active{
    transform: scale(0.9);
}

.close-icon{
    width: 40px;
    height: 40px;
}

.close-icon.line{
    fill: var(--common);
}

.form-success__picture{
    padding-top: 20px;
    margin-top: auto;
}

@media screen and (max-width: 1024px){
    .close-icon{
        width: 24px;
        height: 24px;
    }
    
    .form-success{
        padding: 20px;
    }
    
    .close-btn{
        margin-right: -20px;
    }
}

@media screen and (max-width: 500px){
    .form-success .primary-button{
        display: block;
        
        width: 100%;
        padding-left: 0;
        padding-right: 0;
    }
}