﻿@charset "UTF-8";

@font-face {
    font-family: 'Dreaming';
    src: url('../fonts/subset-Dreaming-Regular.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

html {
    -webkit-text-size-adjust: none;
}

* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

body, div {
  margin: 0;
  padding: 0;
}

body {
	font-family: 'Dreaming', Times, serif;
	font-size: 16px;
	text-align: center;
	color: #294A6B;
	line-height: 1.75;
	background: #fff;
}

/* Main Wrapper */

#mainWrapper {
	position: relative;
	text-align: left;
	margin: 0 auto;
	min-width: 320px;
	font-size: 16px;
	overflow: hidden;
}

/* Section */

.section {
	max-width: 1340px;
	margin: 0 auto;
}

/* Header */

#header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 202px;
	background: #8cb0dd;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

#header .logo {
	width: 381px;
}

#header .logo img {
	display: block;
	width: 100%;
}

#header .bookBtn {
	position: absolute;
	right: 130px;
	top: 61px;
	margin: 0;
	min-width: 210px;
}

#header:has(.logo) .hamburger {
	top: 66px;
} 

/* Intro */

#intro {
	position: relative;
	background: #FADEC4;
	z-index: 1;
}

#intro .section {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	min-height: 100vh;
}

:root {
	--videoOffset: 114px;
	--textPadding: 70px;
}

#intro .video,
#intro .text {
	width: 50%;
}

#intro .video {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	padding-top: 180px;
	padding-bottom: 180px;
	padding-left: var(--videoOffset);
}

#intro .video .logo {
	display: block;
	width: 304px;
	margin: 0 auto;
}

#intro .video .logo img {
	display: block;
	width: 100%;
}

#intro .video video {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: calc(50% + var(--videoOffset));
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	-o-object-position: center top;
	   object-position: center top;
	z-index: -1;
}

#intro .video .ndis {
	position: absolute;
	left: 25px;
	bottom: 20px;
	width: 148px;
	pointer-events: none;
	z-index: -1;
}

#intro .text {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;;
	-webkit-box-align: start;;
	    -ms-flex-align: start;;
	        align-items: flex-start;
	padding-top: 80px;
	padding-bottom: 80px;
	padding-left: calc(var(--videoOffset) + var(--textPadding));
}

#intro .text>:last-child {
	margin-bottom: 0;
}

#intro .text .shell {
	position: absolute;
	right: 0;
	bottom: -20px;
	width: 218px;
	pointer-events: none;
	opacity: 0.5;
	z-index: -1;
}

/* Content */

.content {
	position: relative;
	background: #F5EDE3;
	z-index: 1;
}

.content .section {
	padding-top: 100px;
	padding-bottom: 100px;
}

/* Content Style 01 */

.contentStyle01 {
	z-index: 1;
	overflow: hidden;
}

.contentStyle01 .section {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.contentStyle01 .left {
	width: 50%;
	padding-right: var(--textPadding);
}

.contentStyle01 .left:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 50%;
	background: #8AB0E0;
	z-index: -1;
}

.contentStyle01 .left>:last-child {
	margin-bottom: 0;
}

.contentStyle01 .right {
	width: 50%;
	padding-left: var(--textPadding);
}

.contentStyle01 .right>:last-child {
	margin-bottom: 0;
}

.contentStyle01 .shell {
	position: absolute;
	pointer-events: none;
	opacity: 0.5;
	z-index: -1;
}

.contentStyle01 .left .shell {
	left: -51px;
	bottom: -92px;
	width: 242px;
	opacity: 1;
	-webkit-filter: brightness(0) invert(1);
	        filter: brightness(0) invert(1);
}

.contentStyle01 .right .shell {
	right: 0;
	bottom: 0;
	width: 94px;
}

/* Content Style 02 */

.contentStyle02 {
	background: #fadec4 url(../images/features-bg.png) repeat center top fixed;
	background-size: 720px;
}

.contentStyle02 .section {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.contentStyle02 .left {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.contentStyle02 .left,
.contentStyle04 .left,
.contentStyle09 .left,
.contentStyle11 .left {
	width: 50%;
	padding-right: 37px;
}

.contentStyle02 .right,
.contentStyle04 .right,
.contentStyle09 .right,
.contentStyle11 .right {
	margin-left: auto;
	width: 50%;
	padding-top: 30px;
	padding-bottom: 30px;
	padding-left: var(--textPadding);
	-ms-flex-item-align: center;
	    -ms-grid-row-align: center;
	    align-self: center;
}

.contentStyle04 .right,
.contentStyle11 .right {
	padding-top: 0;
}

.contentStyle02 .right>:last-child,
.contentStyle04 .right>:last-child {
	margin-bottom: 0;
}

.contentStyle02 .left .slider {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
}

.contentStyle02 .left .slider .swiper-container {
	width: 100%;
}

.contentStyle02 .left .slider .swiper-slide {
	position: relative;
	min-height: 517px;
}

.contentStyle02 .left .slider .swiper-slide img {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	-o-object-position: center top;
	   object-position: center top;
}

.contentStyle02 .left .slider .swiper-pagination {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 15px;
	pointer-events: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.contentStyle02 .left .slider .swiper-pagination .swiper-pagination-bullet {
	width: 23px;
	height: 23px;
	margin: 0 6px 6px;
	border-radius: 100%;
	pointer-events: auto;
	opacity: 1;
	background: #f5ede3;
	outline: none;
}

.contentStyle02 .left .slider .swiper-pagination .swiper-pagination-bullet-active {
	background-color: #8ab0e0;
}

/* Content Style 03 */

.contentStyle03 {
	background: no-repeat center fixed;
	background-size: cover;
}

.contentStyle03 .section {
	padding-top: 30px;
	padding-bottom: 30px;
}

.contentStyle03 .text {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	width: 540px;
	height: 540px;
	padding: 43px;
	background: #FCADAB;
	border-radius: 100%;
	margin: 0 auto;
	text-align: center;
	z-index: 1;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.contentStyle03 .text:before {
	content: "";
	position: absolute;
	left: 8px;
	top: 8px;
	bottom: 8px;
	right: 8px;
	border: 1px solid #294A6B;
	border-radius: 100%;
	z-index: -1;
}

.contentStyle03 .text .shell {
	display: block;
	margin: 0 auto 25px;
	width: 141px;
}

.contentStyle03 .text .findMore {
	margin: 0;
	padding: 4px 35px;
}

/* Content Style 04 */

.contentStyle04 .section {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding-bottom: 120px;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.contentStyle04 .starFish {
	position: absolute;
	right: 8px;
	top: 23px;
	opacity: 0.5;
	pointer-events: none;
	z-index: -1;
}

.contentStyle04 .shell {
	position: absolute;
	left: 40px;
	bottom: 25px;
	opacity: 1;
	pointer-events: none;
	z-index: -1;
}

/* Content Style 05 */ 

.contentStyle05 {
	background: #8ab0e0 url(../images/features-bg.png) repeat center top fixed;
	background-size: 720px;
}

/* Content Style 06 */

.contentStyle06 {
	background: #FADEC4;
}

.contentStyle06 .shell {
	position: absolute;
	right: -12px;
	bottom: -13px;
	width: 242px;
	pointer-events: none;
	z-index: -1;
}

/* Content Style 07 */

.contentStyle07 {
	background: #FCADAB;
}

.contentStyle07 blockquote {
	position: relative;
	margin: 0;
	padding: 0 0 0 70px;
	font-size: 24px;
	font-style: normal;
	line-height: 1.583;
}

.contentStyle07 blockquote:after {
	content: "“";
	position: absolute;
	left: 0;
	top: -25px;
	font-size: 162px;
	line-height: 1;
}

.contentStyle07 blockquote cite {
	margin: 0;
	padding: 0;
	font-style: normal;
}

.contentStyle07 .image {
	position: absolute;
	right: 54px;
	bottom: 16px;
	width: 384px;
	opacity: 1;
	pointer-events: none;
	z-index: -1;
}

/* Content Style 08 */

.contentStyle08 .text {
	max-width: 594px;
	margin: 0 auto;
	text-align: center;
}

.contentStyle08 .text>:last-child {
	margin-bottom: 0;
}

.contentStyle08 .shell {
	position: absolute;
	pointer-events: none;
	z-index: -1;	
}

.contentStyle08 .shell.one {
	width: 194px;
	left: -12px;
	top: -13px;
}

.contentStyle08 .shell.two {
	width: 160px;
	right: -5px;
	bottom: -5px;
	opacity: 0.5;
}

/* Content Style 09 */

.contentStyle09 {
	background: #fadec4 url(../images/features-bg.png) repeat center top fixed;
	background-size: 720px;
}

.contentStyle09 .section {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.contentStyle09 .right {
	-ms-flex-item-align: start;
	    align-self: flex-start;
	padding-top: 0;
}

/* Content Style 10 */

.contentStyle10 {
	background: #FCADAB;
	overflow: hidden;
}

.contentStyle10 .section>:last-child {
	margin-bottom: 0;
}

.contentStyle10 .shell {
	position: absolute;
	opacity: 1;
	-webkit-filter: brightness(0) invert(1);
	        filter: brightness(0) invert(1);
	z-index: -1;
	pointer-events: none;
}

.contentStyle10 .shell.one {
	left: -51px;
	bottom: -75px;
	width: 242px;
}

.contentStyle10 .shell.two {
	right: 0;
	top: -20px;
	width: 218px;
	opacity: 0.5;
}

/* Content Style 11 */

.contentStyle11 .section {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.contentStyle11 .shell {
	position: absolute;
	right: 20px;
	bottom: 15px;
	opacity: 1;
	pointer-events: none;
	z-index: -1;
}

.contentStyle11 .left .fitImage {
	margin-bottom: 0;
}

/* Content Style 12 */

.contentStyle12 .text {
	max-width: 866px;
	margin: 0 auto;
	text-align: center;
}

.contentStyle12 .listing {
	margin: 0 0 17px;
	padding: 0;
}

.contentStyle12 .listing li {
	margin: 0 0 3px;
	padding: 0;
	list-style: none;
}

.contentStyle12 .listing li a {
	display: inline-block;
}

.contentStyle12 .listing li.phone a {
	padding-left: 26px;
	background: url(../images/phone-ico.svg) no-repeat 0 6px;
}

.contentStyle12 .listing li.email a {
	padding-left: 26px;
	background: url(../images/email-ico.svg) no-repeat 0 8px;
}

.contentStyle12 .listing li.location a {
	padding-left: 21px;
	background: url(../images/location-ico.svg) no-repeat 0 5px;
}

.contentStyle12 .plant {
	position: absolute;
	left: -20px;
	bottom: 0;
	width: 242px;
	opacity: 0.5;
	pointer-events: none;
	z-index: -1;
}

.contentStyle12 .shell {
	position: absolute;
	right: -20px;
	bottom: -40px;
	width: 244px;
	pointer-events: none;
	z-index: -1;
}

/* Two Cols */

.twoCols {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0 -20px;
}

.twoCols  .col {
	width: 50%;
	padding: 0 20px;
}

/* Three Cols */

.threeCols {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0 -20px;
}

.threeCols .col {
	width: 33.33333333333333%;
	padding: 0 20px;
}


/* Gallery */

.gallery .swiper {
	margin-bottom: 22px;
}

.gallery .swiper img {
	display: block;
	width: 100%;
}

.gallery .swiper-arrows {
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	margin-top: -5.5px;
	z-index: 1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	pointer-events: none;
}

.gallery .thumbs {
	margin: 0 -11px;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

.gallery .thumbs li {
	margin: 0 0 13px;
	padding: 0 11px;
	list-style: none;
	width: 33.33333333333333%;
}

.gallery .thumbs li a {
	position: relative;
	display: block;
	padding-bottom: 100%;
	overflow: hidden;
}

.gallery .thumbs li img {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	-o-object-position: center;
	   object-position: center;
	-webkit-transition: -webkit-transform 1.3s;
	transition: -webkit-transform 1.3s;
	-o-transition: transform 1.3s;
	transition: transform 1.3s;
	transition: transform 1.3s, -webkit-transform 1.3s;
}

.gallery .thumbs li a:hover img {
	-webkit-transform: scale(1.08);
	    -ms-transform: scale(1.08);
	        transform: scale(1.08);
}

/* Contact */

#contact {
	background: #294A6B;
	color: #fff;
	text-align: center;
}

#contact .section {
	position: relative;
	padding-top: 60px;
	padding-bottom: 10px;
}

#contact .tree {
	position: absolute;
	right: -130px;
	top: 87px;
	width: 391px;
	pointer-events: none;
	opacity: 0.5;
}

#contact .form {
	position: relative;
	max-width: 746px;
	margin: 0 auto 40px;
	z-index: 1;
}

#contact .form .fields {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin: 40px -13px 0;
}

#contact .form .fields .field {
	width: 100%;
	margin-bottom: 22px;
	padding: 0 13px;
}

#contact .form .fields .field .textbox,
#contact .form .fields .field select {
	display: block;
	margin: 0;
	padding: 9px 38px;
	background: none;
	border-radius: 50px;
	color: #fff;
	font-family: 'Dreaming', Times, serif;
	font-size: 24px;
	font-weight: normal;
	border: 1px solid #fff;
	outline: none;
	width: 100%;
	height: 50px;
	-webkit-appearance: none;
	-moz-appearance: none;
	     appearance: none;
}

#contact .form .fields .field textarea.textbox {
	resize: none;
	overflow: auto;
}

#contact .form .fields .field select {
	background: url(../images/drowndown-arrow.svg) no-repeat right center;
	cursor: pointer;
}

#contact .form .fields .field.half {
	width: 50%;
}

#contact .form .submitBtn {
	margin: 0 auto 20px;
}

#contact .form .submitBtn:hover {
	background-color: #fff;
	color: #294A6B;
}

.copyrightText {
	margin: 0;
}

.copyrightText a {
	display: inline-block;
	padding-left: 20px;
	background: url(../images/cloud-ico.svg) no-repeat 0 center;
}

/* Footer */

#footer {
	position: relative;
	background: #8CB0DD;
	color: #fff;
}

#footer .section {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding-top: 58px;
	padding-bottom: 10px;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

#footer .left {
	width: 650px;
}

#footer .left .info {
	font-size: 12px;
	line-height: 2.33;
	margin: 0 0 17px;
}

#footer .left .links {
	margin: 0;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	font-size: 24px;
}

#footer .left .links li {
	margin: 0 45px 0 0;
	padding: 0;
	list-style: none;
}

#footer .left .links li a {
	display: inline-block;
}

#footer .left .links li a:hover {
	text-decoration: underline;
}

#footer .right {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-left: auto;
	padding-left: 20px;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	text-align: right;
}

#footer .right .logo {
	display: block;
	width: 381px;
	margin-bottom: 20px;
}

#footer .right .logo img {
	display: block;
	width: 100%;
}

#footer .copyrightText {
	width: 100%;
	text-align: right;
}

/* Hamburger */

.hamburger {
	position: absolute;
	right: 53px;
	top: 35px;
	overflow: visible;
	margin-top: 5px;
	margin-left: 5px;
	-webkit-transition-timing-function: linear;
	     -o-transition-timing-function: linear;
	        transition-timing-function: linear;
	-webkit-transition-duration: .15s;
	     -o-transition-duration: .15s;
	        transition-duration: .15s;
	-webkit-transition-property: opacity, -webkit-filter;
	transition-property: opacity, -webkit-filter;
	-o-transition-property: opacity, filter;
	transition-property: opacity, filter;
	transition-property: opacity, filter, -webkit-filter;
	text-transform: none;
	color: inherit;
	border: 0;
	background-color: transparent;
	z-index: 2;
}

.hamburger.is-active:hover,
.hamburger:hover {
	opacity: 1
}

.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner:after,
.hamburger.is-active .hamburger-inner:before {
	background-color: #294A6B;
}

.hamburger-box {
	display: inline-block;
	width: 32px;
	height: 24px;
}

.hamburger-inner {
	top: 50%;
	display: block;
	margin-top: -4px
}

.hamburger-inner,
.hamburger-inner:after,
.hamburger-inner:before {
	position: absolute;
	width: 32px;
	height: 4px;
	-webkit-transition-timing-function: ease;
	     -o-transition-timing-function: ease;
	        transition-timing-function: ease;
	-webkit-transition-duration: .15s;
	     -o-transition-duration: .15s;
	        transition-duration: .15s;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	-o-transition-property: transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	border-radius: 4px;
	background-color: #294A6B;
}

.hamburger-inner:after,
.hamburger-inner:before {
	display: block;
	content: ""
}

.hamburger-inner:before {
	top: -10px
}

.hamburger-inner:after {
	bottom: -10px
}

.hamburger .hamburger-inner {
	-webkit-transition-timing-function: cubic-bezier(.55, .055, .675, .19);
	     -o-transition-timing-function: cubic-bezier(.55, .055, .675, .19);
	        transition-timing-function: cubic-bezier(.55, .055, .675, .19);
	-webkit-transition-duration: .22s;
	     -o-transition-duration: .22s;
	        transition-duration: .22s
}

.hamburger .hamburger-inner:before {
	-webkit-transition: top .1s ease-in .25s, opacity .1s ease-in;
	-o-transition: top .1s ease-in .25s, opacity .1s ease-in;
	transition: top .1s ease-in .25s, opacity .1s ease-in
}

.hamburger .hamburger-inner:after {
	-webkit-transition: bottom .1s ease-in .25s, -webkit-transform .22s cubic-bezier(.55, .055, .675, .19);
	transition: bottom .1s ease-in .25s, -webkit-transform .22s cubic-bezier(.55, .055, .675, .19);
	-o-transition: bottom .1s ease-in .25s, transform .22s cubic-bezier(.55, .055, .675, .19);
	transition: bottom .1s ease-in .25s, transform .22s cubic-bezier(.55, .055, .675, .19);
	transition: bottom .1s ease-in .25s, transform .22s cubic-bezier(.55, .055, .675, .19), -webkit-transform .22s cubic-bezier(.55, .055, .675, .19)
}

.hamburger.is-active .hamburger-inner {
	-webkit-transition-delay: .12s;
	     -o-transition-delay: .12s;
	        transition-delay: .12s;
	-webkit-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
	     -o-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
	        transition-timing-function: cubic-bezier(.215, .61, .355, 1);
	-webkit-transform: rotate(225deg);
	    -ms-transform: rotate(225deg);
	        transform: rotate(225deg)
}

.hamburger.is-active .hamburger-inner:before {
	top: 0;
	-webkit-transition: top .1s ease-out, opacity .1s ease-out .12s;
	-o-transition: top .1s ease-out, opacity .1s ease-out .12s;
	transition: top .1s ease-out, opacity .1s ease-out .12s;
	opacity: 0
}

.hamburger.is-active .hamburger-inner:after {
	bottom: 0;
	-webkit-transition: bottom .1s ease-out, -webkit-transform .22s cubic-bezier(.215, .61, .355, 1) .12s;
	transition: bottom .1s ease-out, -webkit-transform .22s cubic-bezier(.215, .61, .355, 1) .12s;
	-o-transition: bottom .1s ease-out, transform .22s cubic-bezier(.215, .61, .355, 1) .12s;
	transition: bottom .1s ease-out, transform .22s cubic-bezier(.215, .61, .355, 1) .12s;
	transition: bottom .1s ease-out, transform .22s cubic-bezier(.215, .61, .355, 1) .12s, -webkit-transform .22s cubic-bezier(.215, .61, .355, 1) .12s;
	-webkit-transform: rotate(-90deg);
	    -ms-transform: rotate(-90deg);
	        transform: rotate(-90deg)
}

.mm-navbar>* {
	min-height: 40px;
	background: #8CB0DD;
}

.mm-listitem__text {
	padding-left: 10px;
}

.mm-navbar__title>span {
	color: #294A6B;
}

.mm-panel {
	background: #294A6B;
	font-size: 20px;
}

/* Miscelleneous */

p {
	margin: 0 0 25px;
}

h1,h2,h3,h4,h5,h6 {
	font-weight: normal;
	margin: 0 0 14px;
	line-height: 1.2;
}

h2 {
	font-size: 32px;
	margin-bottom: 24px;
}

h3 {
	font-size: 24px;
	margin-bottom: 27px;
	line-height: 1.16;
}

h4 {
	font-size: 16px;
	margin-bottom: 0;
}

a {
	outline: none;
	color: inherit;
	text-decoration: none;
}

a:hover {
	color: inherit;
}

img {
	border: 0;
	max-width: 100%;

}

img.fitImage {
	display: block;
	width: 100%;
	margin-bottom: 35px;
}

ul,
ol {
	padding: 0 0 0 20px;
	margin-bottom: 30px;
}

.linkBtn {
	position: relative;
	display: table;
	line-height: 1.2;
	font-family: 'Dreaming', Times, serif;
	font-size: 24px;
	font-weight: normal;
	margin: 14px 0;
	color: currentColor;
	background: none;
	padding: 9.6px 38px;
	border: 1px solid currentColor;
	border-radius: 50px;
	cursor: pointer;
	outline: none;
	text-align: center;
	-webkit-appearance: none;
	-moz-appearance: none;
	     appearance: none;
	-webkit-transition: background-color 0.3s, border-color 0.3s;
	-o-transition: background-color 0.3s, border-color 0.3s;
	transition: background-color 0.3s, border-color 0.3s;
}

.linkBtn:hover {
	background-color: #294A6B;
	border-color: #294A6B;
	color: #fff;
}

.linkBtn.linkBtnSmall {
	font-size: 16px;
}

.linkBtns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.linkBtns .linkBtn {
	margin: 0 25px;
}

.clear {
	clear: both;
}

.clearfix:after { 
  content: "."; 
  display: block; 
  height: 0; 
  clear: both; 
  visibility: hidden; 
}

.clearfix { 
  display: inline-block;  
}

* html .clearfix{  
  height: 1%;  
}

.clearfix {  
  display: block;  
}

input::-moz-focus-inner { 
    border: 0;
    padding: 0;
}

form {
	margin: 0;
	padding: 0;
}

input, select, textarea {
    border-radius: 0;
}

strong {
	font-weight: 700;
}

::-webkit-input-placeholder {
	color: inherit;
	opacity: 1;
}

:-moz-placeholder {
	color: inherit;
	opacity: 1;
}

::-moz-placeholder {
	color: inherit;
	opacity: 1;
}

:-ms-input-placeholder {  
	color: inherit;
	opacity: 1;
}

/* Media Queries */

/* Large Screens (Desktops) */

@media only screen and (max-width : 1450px) {
	.section {
		max-width: 1200px;
	}	

	:root {
		--videoOffset: 70px;
		--textPadding: 45px;
	}
	
	.contentStyle02 .left,
	.contentStyle04 .left,
	.contentStyle09 .left,
	.contentStyle11 .left {
		padding-right: 0;
	}

	.contentStyle12 .plant {
		width: 206px;
	}

	.contentStyle12 .shell {
		width: 222px;
	}

	.threeCols {
		margin-left: -15px;
		margin-right: -15px;
	}

	.threeCols .col {
		padding-left: 15px;
		padding-right: 15px;
	}
}

/* Tablet Screens (Landscape) */

@media only screen and (max-width : 1260px) {
	.section {
		max-width: 970px;
	}	

	:root {
		--videoOffset: 40px;
		--textPadding: 40px;
	}

	.hamburger {
		right: 18px;
		top: 12px;
	}

	#intro .text {
		padding-top: 70px;
		padding-bottom: 70px;
	}

	#contact .tree {
		right: -238px;
	}

	#header .bookBtn {
		right: 70px;
		min-width: 170px;
	}

	.contentStyle04 .section {
		padding-bottom: 100px;
	}

	.contentStyle04 .shell,
	.contentStyle11 .shell {
		width: 130px;
	}

	.contentStyle04 .starFish {
		width: 116px;
	}

	.contentStyle06 .shell {
		width: 200px;
	}

	.contentStyle07 blockquote {
		font-size: 20px;
		padding-left: 54px;
	}

	.contentStyle07 .image {
		width: 300px;
	}

	.contentStyle12 .plant {
		width: 165px;
	}

	.contentStyle12 .shell {
		width: 198px;
	}

	.twoCols {
		margin-left: -15px;
		margin-right: -15px;
	}

	.twoCols .col {
		padding-left: 15px;
		padding-right: 15px;
	}
	
	.threeCols {
		margin-left: -10px;
		margin-right: -10px;
	}

	.threeCols .col {
		padding-left: 10px;
		padding-right: 10px;
	}

	#footer .left {
		width: 598px;
	}

	#footer .left .links li {
		margin-right: 30px;
	}

	#footer .right .logo {
		width: 322px;
	}

}

/* Tablet Screens (Portrait) */

@media only screen and (max-width : 991px) {
	.section {
		max-width: 750px;
		padding-left: 15px;
		padding-right: 15px;
	}	

	:root {
		--videoOffset: 30px;
		--textPadding: 30px;
	}

	#header:has(.logo) .hamburger.is-active .hamburger-inner,
	#header:has(.logo) .hamburger.is-active .hamburger-inner:after,
	#header:has(.logo) .hamburger.is-active .hamburger-inner:before,
	#header:has(.logo) .hamburger-inner,
	#header:has(.logo) .hamburger-inner:after,
	#header:has(.logo) .hamburger-inner:before {
		background-color: #fff;
	}

	#header .bookBtn {
		color: #fff;
	}

	#header {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		height: auto;
		padding-top: 20px;
		padding-bottom: 20px;
	}

	#header .bookBtn {
		position: static;
	}

	#header .logo {
		width: 280px;
		margin-bottom: 20px;
	}

	#header:has(.logo) .hamburger {
		top: 12px;
	}

	#intro .text {
		padding-top: 60px;
		padding-bottom: 60px;
	}

	#intro .video .logo {
		width: 250px;
	}
	
	#intro .video .ndis {
		width: 120px;
	}

	#intro .text .shell,
	.contentStyle10 .shell.two {
		width: 150px;
	}

	.content .section {
		padding-top: 60px;
		padding-bottom: 60px;
	}

	.content.contentStyle01 .left .shell,
	.contentStyle10 .shell.one {
		width: 211px;
	}

	.contentStyle04 .starFish {
		width: 90px;
	}

	.contentStyle04 .shell,
	.contentStyle11 .shell {
		width: 110px;
	}

	.contentStyle02,
	.contentStyle05 {
		background-size: 560px;
	}

	.contentStyle08 .shell.one {
		width: 124px;
	}

	.contentStyle08 .shell.two {
		width: 110px;
	}

	.contentStyle12 .plant {
		width: 127px;
		opacity: 0.3;
	}

	.contentStyle12 .shell {
		width: 174px;
		bottom: -29px;
		opacity: 0.3;
	}

	.linkBtns .linkBtn {
		margin: 10px;
	}

	.gallery .swiper {
		margin-bottom: 10px;
	}

	.gallery .thumbs {
		margin-left: -5px;
		margin-right: -5px;
	}

	.gallery .thumbs li {
		padding-left: 5px;
		padding-right: 5px;
	}

	#contact .tree {
		right: -150px;
		opacity: 0.2;
	}

	#footer {
		text-align: center;
	}

	#footer .section {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	#footer .right {
		-webkit-box-ordinal-group: 0;
		    -ms-flex-order: -1;
		        order: -1;
	}

	#footer .left {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}

	#footer .left .links {
		-webkit-box-ordinal-group: 0;
		    -ms-flex-order: -1;
		        order: -1;
	}

	#footer .right {
		width: 100%;
		margin: 0;
		padding: 0;
	}

	#footer .right .logo {
		display: block;
		margin: 0 auto 20px;
	}

	#footer .left {
		width: auto;
	}

	#footer .left .links {
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		margin-bottom: 15px;
	}

	#footer .left .links li {
		margin: 0 10px;
	}

	#footer .copyrightText {
		text-align: center;
	}
	
	h2 {
		font-size: 28px;
	}

	h3 {
		font-size: 21px;
	}
	
}

/* Mobile Screens */

@media only screen and (max-width : 767px) {
	#header {
		padding-bottom: 30px;
	}

	.hamburger.is-active .hamburger-inner,
	.hamburger.is-active .hamburger-inner:after,
	.hamburger.is-active .hamburger-inner:before,
	.hamburger-inner,
	.hamburger-inner:after,
 	.hamburger-inner:before {
		background-color: #fff;
	}

	#intro .section {
		display: block;
		min-height: 1px;
		padding-left: 0;
		padding-right: 0;
	}

	#intro .video, #intro .text {
		width: auto;
	}

	#intro .video {
		position: relative;
		min-height: 100vh;
		padding-left: 0;
		margin-left: -15px;
		margin-right: -15px;
		padding-top: 30px;
		padding-bottom: 30px;
	}

	#intro .video video {
		width: 100%;
	}

	#intro .video .logo {
		width: 210px;
		margin-bottom: 50px;
	}

	#intro .video .ndis {
		position: static;
		width: 80px;
	}

	#intro .text {
		display: block;
		padding-left: 0;
		text-align: center;
		padding: 50px 15px;
	}

	.content .section {
		display: block;
	}

	.contentStyle04 .section {
		padding-top: 40px;
		padding-bottom: 78px;
	}

	.contentStyle04 .left {
		width: auto;
		padding-right: 0;
		margin-bottom: 30px;
	}

	.contentStyle04 .left img {
		width: 100%;
	}

	.contentStyle04 .right {
		padding-left: 0;
		width: auto;
		text-align: center;
	}

	.contentStyle04 .starFish {
		width: 60px;
		top: 14px;
	}

	.contentStyle04 .shell,
	.contentStyle11 .shell {
		left: 50%;
		bottom: 15px;
		width: 95px;
		margin-left: -47.5px;
	}

	.content.contentStyle01 .section {
		display: block;
		padding-top: 0;
		padding-bottom: 0;
		text-align: center;
	}

	.content.contentStyle01 .left {
		position: relative;
		padding-right: 0;
		padding-top: 50px;
		padding-bottom: 50px;
	}

	.content.contentStyle01 .left:before {
		left: -30px;
		right: -30px;
		width: auto;
	}

	.content.contentStyle01 .left,
	.content.contentStyle01 .right {
		width: auto;
	}

	.content.contentStyle01 .left .shell {
		left: -73px;
		bottom: -23px;
		width: 165px;
	}

	.content.contentStyle01 .right {
		padding: 50px 0;
	}
	
	.contentStyle02 .section {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		padding-top: 50px;
		padding-bottom: 50px;
	}

	.contentStyle02 .left {
		width: auto;
		margin-top: 30px;
		margin-bottom: 30px;
	}

	.contentStyle02 .left .slider .swiper-slide{
		min-height: 80vw;
	}

	.contentStyle02 .right {
		-webkit-box-ordinal-group: 0;
		    -ms-flex-order: -1;
		        order: -1;
		width: auto;
		padding: 0;
		text-align: center;
	}

	.contentStyle03 .section {
		padding-top: 50px;
		padding-bottom: 50px;
	}

	.contentStyle03 .text {
		width: auto;
		height: auto;
		border-radius: 30px;
		padding: 30px;
	}

	.contentStyle03 .text:before {
		border-radius: 30px;
	}
	
	.contentStyle06 {
		text-align: center;
	}

	.contentStyle07 .image {
		width: 270px;
		right: 50%;
		margin-right: -135px;
	}

	
	.contentStyle07 blockquote {
		padding-left: 0;
		padding-top: 40px;
		text-align: center;
		font-size: 18px;
	}

	.contentStyle07 blockquote:after {
		left: 0;
		right: 0;
		text-align: center;
		font-size: 290px;
		line-height: 0.8;
	}

	.twoCols {
		display: block;
	}

	.twoCols .col {
		width: auto;
	}
	
	.contentStyle06 .section {
		padding-bottom: 77px;
	}
	
	.contentStyle06 .shell {
		width: 120px;
		right: 50%;
		bottom: 0px;
		margin-right: -60px;
	}

	.contentStyle08 .shell.one {
		width: 101px;
		top: -2px;
	}

	.contentStyle08 .shell.two {
		width: 92px;
	}

	.contentStyle09 .section {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		text-align: center;
	}

	.contentStyle09 .left {
		width: 100%;
	}

	.contentStyle10 {
		text-align: center;
	}

	.contentStyle10 .shell.one {
		width: 190px;
	}

	.contentStyle10 .shell.two {
		width: 118px;
	}

	.contentStyle11 {
		text-align: center;
	}

	.contentStyle11 .section {
		padding-bottom: 78px;
	}

	.contentStyle11 .left,
	.contentStyle11 .right {
		width: 100%;
		padding: 0;
	}

	.contentStyle11 .left {
		margin-bottom: 30px;
	}

	ul {
		list-style: none;
		padding-left: 0;
	}

	.contentStyle09 .right {
		-webkit-box-ordinal-group: 0;
		    -ms-flex-order: -1;
		        order: -1;
		width: 100%;
		padding-left: 0;
	}

	.threeCols {
		display: block;
	}

	.threeCols .col {
		width: auto;
		text-align: center;
		margin-bottom: 30px;
	}

	.threeCols .col:last-child {
		margin-bottom: 0;
	}
	
	img.fitImage {
		margin-bottom: 23px;
	}

	#contact .form .fields {
		margin-top: 30px;
	}

	#contact .form .fields .field.half {
		width: 100%;
	}

	.linkBtn {
		margin-left: auto;
		margin-right: auto;
	}

	#footer .right .logo {
		width: 270px;
	}

	#footer .left .links {
		display: block;
	}

	#footer .left .links li {
		margin-left: 0;
		margin-right: 0;
	}
}

@media only screen and (max-width : 479px) {
	#header {
		padding-top: 40px;
	}
}