

/* Reset */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1.5;
    background: #EAEAE2;
    color: #2F2F2F;
	font-family: 'Helvetica', sans-serif;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

.layouts-title {
	font-size: 26px;
	margin:15px 0px;
}

.layouts ul li {
	margin-bottom:5px;
}

.layouts ul li a {
	font-size: 17px;
	display: inline-block;
	padding:3px 10px;
}

.layouts ul li a:hover {
	background:#000;
	color:#fff;
}

/* -- END RESET -- */

.column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
    float: left;
}

.row {
    padding-left: 40px;
    padding-right: 40px;
    width: 100%;
    position: relative;
    z-index: 10;
}

.row.row-full {
    max-width: 100%;
}
.row.padd-sm {
    padding-left: 19px;
    padding-right: 19px;
}

/* -- main styles -- */

.nopad {
	padding:0px;
}

.nopadleft {
	padding-left:0px;
}

.nopadright {
	padding-right:0px;
}

strong {
	font-weight: bold;
}

i {
	font-style: italic;
}

em {
	font-style: italic;
}

.clear {
	clear:both;
}

.left {
	float:left;
	margin-right:15px;
	margin-bottom:15px;
}

.right {
	float:right;
	margin-left:15px;
	margin-bottom:15px;
}

.alignleft {
	float:left;
	margin-right:15px;
	margin-bottom:15px;
}

.alignright {
	float:right;
	margin-left:15px;
	margin-bottom:15px;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}

.wp-caption {
	max-width: 100%;
    margin-bottom: 15px;
}


.invi {
	visibility: hidden;
	opacity: 0;
}

/*   hamburger   */

.hamburger {
    font: inherit;
    display: inline-block;
    overflow: visible;
	margin: 0;
	padding: 0;
    cursor: pointer;
    transition-timing-function: linear;
    transition-duration: .15s;
    transition-property: opacity, filter;
    text-transform: none;
    color: inherit;
    border: 0;
    background-color: transparent;
	float: right;

	display: none;
}

.hamburger:hover {
    opacity: 1;
}

.hamburger-box {
    position: relative;
    display: inline-block;
    width: 28px;
    height: 20px;
    float: right;
}

.hamburger-inner {
    top: 50%;
    display: block;
    margin-top: -2px;
}

.hamburger-inner,
.hamburger-inner:after,
.hamburger-inner:before {
	border-radius: 2px;
    position: absolute;
    width: 28px;
    height: 2px;
    transition-timing-function: ease;
    transition-duration: .15s;
    transition-property: transform;
    background-color: #746f6c;
}

.hamburger-inner:after,
.hamburger-inner:before {
    display: block;
    content: "";
}

.hamburger-inner:before {
    top: -7px;
}

.hamburger-inner:after {
    bottom: -7px;
}

.hamburger--squeeze .hamburger-inner {
    transition-timing-function: cubic-bezier(.55, .055, .675, .19);
    transition-duration: 75ms;
}

.hamburger--squeeze .hamburger-inner:before {
    transition: top 75ms ease .12s, opacity 75ms ease;
}

.hamburger--squeeze .hamburger-inner:after {
    transition: bottom 75ms ease .12s, transform 75ms cubic-bezier(.55, .055, .675, .19);
}

.hamburger--squeeze.is-active .hamburger-inner {
    transition-delay: .12s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transform: rotate(45deg);
}

.hamburger--squeeze.is-active .hamburger-inner:before {
    top: 0;
    transition: top 75ms ease, opacity 75ms ease .12s;
    opacity: 0;
}

.hamburger--squeeze.is-active .hamburger-inner:after {
    bottom: 0;
    transition: bottom 75ms ease, transform 75ms cubic-bezier(.215, .61, .355, 1) .12s;
    transform: rotate(-90deg);
}


.logo-hold {
    position: fixed;
    top: 100%;
    left: 0;
    right: 0;
    width: 100%;
    padding-top: 24px;
    transform: translateY(calc(-100% - 25px));
    transform: translateY(calc(-100% + 80px));
}

.logo-hold.top-reached {
    top: 0%;
    transform: translateY(0);
}

.logo-hold.top-reached .logo {
    transform: translateY(0px) !important;
    margin-bottom: 17px !important;
}
.logo-hold.top-reached .logo img {
    transform: scale(1) !important;
    max-width: 570px !important;
    transform-origin: top center;
}
.logo-hold.top-reached .logo-title {
    transform: translateY(0px) !important;
}

.logo {
    position: relative;
    margin-bottom: 44px;
}

.logo img {
    width: 100%;
    transform-origin: bottom center;
}

.intro {
    min-height: 100vh;
    padding-top: 11px;
}

.intro-image {
    opacity: 0;
    margin-bottom: 80px;
    transition: opacity 0.8s cubic-bezier(0.32, 0, 0.67, 0);
}
.intro-image.close {
    opacity: 1;
}

.intro-coordinates {
    position: relative;
    font-size: 13px;
    font-weight: 400;
    line-height: 17px;
    letter-spacing: 3px;
    opacity: 0;
    transition: opacity 0.8s cubic-bezier(0.32, 0, 0.67, 0);
}
.intro-coordinates.close {
    opacity: 1;
}
.intro-coordinates:before {
    content: '☉';
    position: absolute;
    top: 0;
    left: -24px
}

.logo-hold {
    opacity: 0;
    transition: opacity 0.8s cubic-bezier(0.32, 0, 0.67, 0);
}
.logo-hold.close {
    opacity: 1;
}
.mob-logo-hold {
    opacity: 0;
    transition: opacity 0.8s cubic-bezier(0.32, 0, 0.67, 0);
}
.mob-logo-hold.close {
    opacity: 1;
}

.main-content {
    /* min-height: 100vh; */
    padding-top: 263px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -moz-box-pack: end;
    -ms-flex-pack: end;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    margin-bottom: 19px;
}

.main-content-text {
    margin-bottom: 35px;
}

.main-content-text ul {
    counter-reset: item;
}

.main-content-text ul li {
    font-size: 28px;
    font-weight: 400;
    text-align: center;
    letter-spacing: 2.22px;
    line-height: 1.2;
    margin-bottom: 34px;
    padding: 0 80px;
    position: relative;
}

.main-content-text ul li:last-child {
    margin-bottom: 0;
}

.main-content-text ul li:before {
    content: "( " counters(item, ".") " )";
    counter-increment: item;
    position: absolute;
    left: 0;
    top: 0;
}

.main-content-pretext {
    font-size: 13px;
    font-weight: 400;
    line-height: 17px;
    letter-spacing: 3px;
    margin-bottom: 15px;
    position: relative;
}
.main-content-pretext:before {
    content: '▪︎';
    position: absolute;
    left: -18px;
    top: 0;
}

.main-content-images-hold {
    height: 300px;
    position: relative;
}

.main-content-images {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    visibility: hidden;
}
.main-content-images.active {
    opacity: 1;
    visibility: visible;
}

.main-content-image {
    position: absolute;
    top: 0;
    bottom: 0;
    height: 100%;
}
.main-content-image img {
    max-height: 100%;
}

.main-content-image-11 {
    left: 0;
}
.main-content-image-12 {
    right: 91px;
}

.main-content-image-2 {
    left: 50%;
    transform: translateX(-50%);
}

.main-content-image-31 {
    left: 141px
}
.main-content-image-32 {
    right: 0;
}

.main-content-image-41 {
    left: 0px
}
.main-content-image-42 {
   left: 50%;
   transform: translateX(-50%);
}

footer {
    position: relative;
    z-index: 50;
}

.footer-nav {
    border-top: 1px solid #2f2f2f;
    padding: 5px 0 7px;
}

.footer-nav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -moz-box-pack: end;
    -ms-flex-pack: end;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
}

.footer-nav ul li {
    margin-right: 50px;
}
.footer-nav ul li:last-child {
    margin-right: 0px;
}
.footer-nav ul li a {
    color: #2f2f2f;
    font-size: 28px;
    letter-spacing: 2.22px;
    transition: 0.2s;
}
.footer-nav ul li a:hover {
    opacity: 0.7;
}

.owl-carousel .animated {
    animation-duration: 0s;
    animation-fill-mode: both;
}

.trigger-images {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    bottom: 0px;
    z-index: 20;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.trigger-images-column {
    width: 100%;
    height: 100%;
}

.form-element {
    margin-bottom: 21px;
}

.form-element input,
.form-element input:focus {
    outline: none;
    box-shadow: none;
    margin: 0;
    height: 46px;
    border-radius: 2px;
    border: 1px solid #2f2f2f;
    background: transparent;
    padding: 2px 15px;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 1px;
    color: #2f2f2f;
}
.form-element textarea,
.form-element textarea:focus {
    outline: none;
    box-shadow: none;
    margin: 0;
    height: 113px;
    border-radius: 2px;
    border: 1px solid #2f2f2f;
    background: transparent;
    padding: 12px 15px;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 1px;
    color: #2f2f2f;
    resize: none;
}


.form-element textarea::-webkit-input-placeholder,
.form-element input::-webkit-input-placeholder {
	color: #2f2f2f;
	opacity: 0.7;
}
.form-element textarea::-moz-placeholder,
.form-element input::-moz-placeholder {
	color: #2f2f2f;
	opacity: 0.7;
}
.form-element textarea:-ms-input-placeholder,
.form-element input:-ms-input-placeholder {
	color: #2f2f2f;
	opacity: 0.7;
}
.form-element textarea:-moz-placeholder,
.form-element input:-moz-placeholder {
	color: #2f2f2f;
	opacity: 0.7;
}

.bottom-hold {
    padding: 33px 9px 19px;
    position: relative;
    display: none;
}
.bottom-hold span.close {
    position: absolute;
    left: 2px;
    top: -38px;
    width: 32px;
    height: 32px;
    cursor: pointer;
    background: url(../img/close.svg) no-repeat center center;

}

.contact-text {
    font-size: 20px;
    letter-spacing: 1px;
    padding-right: 9%;
    line-height: 1.3;

    padding-right: 1%;
}

.btn-simple,
.btn-simple:focus,
.btn-simple:active {
    display: inline-block;
    outline: none;
    border: none;
    box-shadow: none;
    background: transparent;
    color: #2f2f2f;
    font-size: 20px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
    line-height: 1.2;
    transition: 0.2s;
}

.intro-title {
    font-size: 28px;
    font-weight: 400;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 2.22px;
    margin-bottom: 36px;
}
.logo-title {
    font-size: 28px;
    font-weight: 400;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 2.22px;
    /* margin-bottom: 36px; */
}

.ic-item {
    height: 200px;
    position: relative;
}

.owl-carousel .owl-item img {
    display: inline-block;
    width: auto;
}

.mob-logo {
    position: relative;
    min-height: 10px;
}

.mob-logo-hold {
    padding-top: 10px;
    position: absolute;
    top: 0px;
    left: 0;
    right: 0;
    width: 100%;

}
.mob-logo.top-reached .mob-logo-hold {
    position: fixed;
}

.contact-details {
    font-size: 28px;
    letter-spacing: 2.22px;
    padding: 120px 0px;
}

.contact-details span {
    display: inline-block;
    font-size: 20px;
    text-transform: uppercase;
    margin-right: 45px;
    letter-spacing: 4px;
}

.mc4wp-alert {
    letter-spacing: 2.2px;
    text-align: center;
    padding: 30px 0px;
    float: left;
    width: 100%;
}

@media only screen and (max-width: 1240px) {


}

@media only screen and (max-width: 1240px) {
    
    .footer-nav ul li a {
        font-size: 24px;
        letter-spacing: 2px;
    }
    .row {
        padding-left: 30px;
        padding-right: 30px;
    }
    .main-content-text ul li {
        font-size: 24px;
        letter-spacing: 2px;
        margin-bottom: 30px;
        padding: 0 60px;
    }
    .logo-title {
        font-size: 24px;
        letter-spacing: 2px;
    }
    .contact-text {
        font-size: 18px;
    }
    .contact-text br {
        display: none;
    }
    .intro-coordinates:before {
        left: -20px;
    }
    .main-content-pretext:before {
        left: -16px;
    }

}


@media only screen and (max-width: 1023px) {

    .main-content-image-42 {
        left: 65%;
    }
    .contact-text {
        margin-bottom: 30px;
    }
    .row {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (max-width:639px) {
    
    .footer-nav {
        border-top: 1px solid #2f2f2f;
        padding: 5px 0 70px;
    }
    .logo img {
        transform: scale(1) !important;
    }
    .logo-title {
        font-size: 15px;
        letter-spacing: 1.2px;
    }
    .bottom-hold span.close {
        left: auto;
        right: -8px;
        top: -25px;
    }
    .bottom-hold {
        padding: 0px 0px 29px;
    }
    .bottom-hold.newsletter-hold {
        padding-top: 25px;
    }
    .btn-simple, .btn-simple:focus, .btn-simple:active {
        font-size: 15px;
        letter-spacing: 1.2px;
    }
    .form-element textarea, .form-element textarea:focus {
        font-size: 15px;
        letter-spacing: 1.2px;
    }
    .form-element input, .form-element input:focus {
        font-size: 15px;
        letter-spacing: 1.2px;
    }
    .contact-text {
        margin-bottom: 60px;
        font-size: 15px;
        letter-spacing: 1.2px;
        text-align: center;
        padding: 0 15%;
    }
    .main-content {
        margin-bottom: 10px;
    }
    .main-content-text {
        margin-bottom: 50px;
    }
    .row.padd-sm {
        padding-left: 10px;
        padding-right: 10px;
    }
    .footer-nav ul {
        -webkit-box-pack: justify;
        -moz-box-pack: justify;
        -ms-flex-pack: justify;
        -webkit-justify-content: space-between;
        justify-content: space-between;
    }
    .footer-nav ul li {
        margin-right: 0;
    }
    .footer-nav ul li a {
        font-size: 15px;
        letter-spacing: 1.2px;
    }
    .main-content-image-2 {
        width: 100%;
        text-align: center;
    }
    .main-content-image-12 {
        right: 0;
    }
    .main-content-image-42 {
        left: auto;
        right: 0;
        transform: translateX(-0%);
    }
    .main-content-image-31 {
        left: 0;
    }
    .ic-item {
        height: 135px;
    }
    .main-content-pretext:before {
        left: 0px;
    }
    .main-content-pretext {
        padding: 0 30px;
        text-align: center;
        font-size: 10px;
        line-height: 14px;
        letter-spacing: 2px;
        margin-bottom: 25px;
    }
    .main-content-text ul li {
        font-size: 15px;
        letter-spacing: 1.2px;
        margin-bottom: 20px;
        padding: 0px 42px;
    }
    .main-content-text ul li br {
        display: none;
    }
    .row {
        padding-left: 10px;
        padding-right: 10px;
    }
	.intro-coordinates {
       font-size: 10px;
        line-height: 14px;
        letter-spacing: 4px;
        text-align: center;
        margin-bottom: 5px;
        padding: 0 20px;
    }
    .intro {
        height: 100%;
        min-height: 100%;
        /* min-height: -webkit-fill-available; */
        padding-top: 5px;
        padding-bottom: 80px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        -o-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: justify;
        -moz-box-pack: justify;
        -ms-flex-pack: justify;
        -webkit-justify-content: space-between;
        justify-content: space-between;

    }
    .intro-image {
        padding: 0 10%;
        margin-bottom: 40px;
    }
    .logo {
        margin-bottom: 13px !important;
    }
    .logo-hold {
        transform: translateY(calc(-100% - 75px));
    }
    .intro-image img {
        max-height: calc(100vh - 400px) !important;
        /* max-height: 50vh !important; */
    }
    .main-content {
        padding-top: 240px;
    }
    .logo-hold {
        display: none !important;
    }
    .logo {
        transform: translateY(0px) !important;
    }
    .logo-title {
        transform: translateY(0px) !important;
    }
    .intro-coordinates:before {
        left: 0px;
    }

    .contact-details {
        font-size: 16px;
        padding: 50px 0px;
        padding-top: 10px;
    }

    .contact-details span {
        font-size: 14px;
        margin-right: 30px;
    }
}

@media (max-width: 1023px) and (max-height: 400px) {
    .intro-image {
        margin-bottom: 30px!important;
    }
    .intro-image img {
        min-height: 200px !important;
    }
    .intro-coordinates {
        display: none;
    }
}
