:root {
  --green: #0c6c3b;
  --lt-green: #b7e0ce;
  --purple: #380251;
  --yellow: #fcf1a2;
  --brown: rgba(51, 21, 18, 0.6);
  --font-body: 'Lato', Helvetica, sans-serif;
  --font-header: 'Trajan', Times, serif;
  --font-script: 'Birthstone', cursive;
}

//*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace, monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type="button"],[type="reset"],[type="submit"],button{-webkit-appearance:button}[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}
* {box-sizing:border-box}
/* ==========================================================================
 FONTS
 ========================================================================== */
@font-face {
	 font-family: 'Birthstone';
	 src: url('fonts/birthstone-regular.woff2') format('woff2'),
		  url('fonts/birthstone-regular.woff') format('woff');
	 font-weight: normal;
	 font-style: normal;

 }
@font-face {
    font-family: 'Trajan';
    src: url('fonts/trajanpro-regular.woff2') format('woff2'),
         url('fonts/trajanpro-regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Lato';
    src: url('fonts/lato-light.woff2') format('woff2'),
         url('fonts/lato-light.woff') format('woff');
    font-weight: 200;
    font-style: normal;
}
@font-face {
    font-family: 'Lato';
    src: url('fonts/lato-regular.woff2') format('woff2'),
         url('fonts/lato-regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'Lato';
    src: url('fonts/lato-italic.woff2') format('woff2'),
         url('fonts/lato-italic.woff') format('woff');
    font-weight: 400;
    font-style: italic;
}

/* ==========================================================================
 STRUCTURE
 ========================================================================== */
.span_12_of_12 {
	width: 100%;
}
.span_11_of_12 {
  	width: 91.53%;
}
.span_10_of_12 {
  	width: 83.06%;
}
.span_9_of_12 {
  	width: 74.6%;
}
.span_8_of_12 {
  	width: 66.13%;
}
.span_7_of_12 {
  	width: 57.66%;
}
.span_6_of_12 {
  	width: 49.2%;
}
.span_5_of_12 {
  	width: 40.73%;
}
.span_4_of_12 {
  	width: 32.26%;
}
.span_3_of_12 {
  	width: 23.8%;
}
.span_2_of_12 {
  	width: 15.33%;
}
.span_1_of_12 {
  	width: 6.866%;
}
body {
  font-family: var(--font-body);
  font-size: calc(15px + 0.390625vw);
}
/* ==========================================================================
 TYPOGRAPHY
========================================================================== */
 p,
 .home h1 {
	 margin: 0 0 1em 0;
	 line-height: 1.6em;
	 font-weight: 200;
 }
 ul {
	 font-weight: 200;
 }
 h1 {
	 color: var(--green);
	 font-weight: 200;
 }
 h2 {
	  font-size: 3.2rem;
	  font-family: var(--font-body);
	  font-weight: 200;
	  color: var(--green);
  }
h2.script,
.home h2.script {
	  font-family: var(--font-script);
	  line-height: 1em;
  }
 .home h2 {
	 font-size: 3.2rem;
	 font-family: var(--font-header);
 }
 .home h2 em {
	 font-style: normal;
	 font-family: var(--font-script);
	 font-size: 4.12rem;
 }
 h3 {
	 font-size: 1.65rem;
	  font-family: var(--font-header);
	  color: var(--purple);
	  margin: 0 auto;
	  text-align: left;
 }
 .villas h3 .grid {
	 font-size: 2.3rem;
 }
 .home h3 {
	 text-align: center;
 }
 a {
	 color: var(--green);
	 text-decoration: underline;
 }
 a:visited {
	  color: var(--green);
	  text-decoration: underline;
  }
 a:hover,
 a:active {
	  color: var(--purple);
	  text-decoration: underline;
  }
 a.fill {
	 border: 1px solid var(--purple);
	 background-color: var(--purple);
	 color: white;
	 text-decoration: none;
	 transition: background-color 215ms,border-color 215ms;
 }
 a.fill:hover,
 a.fill:active {
	 border: 1px solid var(--purple);
	 background-color: transparent;
	 color: var(--purple);
 }
 a.outl {
	 border: 1px solid var(--purple);
	 background-color: transparent;
	 color: var(--purple);
	 text-decoration: none;
	 transition: background-color 215ms,border-color 215ms;
 }
 a.outl:hover,
 a.outl:active {
	 border: 1px solid var(--purple);
	 background-color: var(--purple);
	 color: white;
 }
 .villas a.outl {
	 background-color: white;
 }
.villas a.outl:hover,
.villas a.outl:active {
	  border: 1px solid var(--purple);
	  background-color: var(--purple);
	  color: white;
}
.villas a.fill:hover,
.villas a.fill:active {
	   border: 1px solid var(--purple);
	   background-color: white;
	   color: var(--purple);
   }

/* ==========================================================================
 HEADER + NAV
 ========================================================================== */
 #banner {
	 background-color: var(--green);
	 height: 37px;
	 width: 100%;
	 padding: 5px 0 10px 0;
	 overflow: hidden;
	 color: white;
	 font-family: var(--font-body);
	 font-weight: 200;
	 text-align: center;
	 font-size: 1.2rem;
 }
 #banner img {
	 height: 18px;
	 position: relative;
	 top:4px;
	 width: auto;
 }
header {
  background: url(img/header-bg.webp) no-repeat;
  background-size: cover;
  width: 100%;
  height: auto;
  /*height: 55vh;*/
  padding-bottom: 110px;
}
header section {
  background: url(img/header-lines.svg) no-repeat;
  width: 100%;
  top: 24px;
  height: 223px;
  text-align: center;
  position: relative;
}
header .phone {
	position: absolute;
	top: 42px;
	right: 15px;
	font-family: var(--font-header);
	font-size: 1.6rem;
}
header .phone a {
	color: var(--purple);
	text-decoration: none;
}
.logo {
	margin: 0 auto;
	height: 200px;
	position: absolute;
	top: 7px;
	left: 50%;
	transform: translate(-50%, 0);
	z-index: 140;
}
.logo a {
	display: inline-block;
	height: 100%;
}
.logo img {
	height: 100%;
	width: auto;
}
nav {
	position: relative;
	top: 20px;
}
nav ul {
	list-style: none;
	padding: 0 15%;
	margin: 0 auto;
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-around;
	column-gap: 32px;
}
nav li {
	margin-top: 22px;
	position: relative;
	padding-bottom: 20px;
}
li.logo-left {
	padding-right: 120px
}
li.logo-right {
	padding-left: 120px
}
nav a {
	color: var(--purple);
	font-size: 1.35rem;
	font-weight: 200;
	text-decoration: none;
}
nav a:visited {
	color: var(--purple);
	text-decoration: none;
}
nav a:hover,
nav a:active {
	color: var(--green);
	text-decoration: none;
}
nav li ul {
	width: 200px;
	background-color: white;
	flex-flow: column nowrap;
	position: absolute;
	text-align: left;
	padding: 0 10px 20px 15px;
	border: 1px solid var(--lt-green);
	border-top: 0 none;
	top: 2.45rem;
}
nav li ul li {
	display: block;
}
.phone {
	position: absolute;
	right: 0;
	font-family: var(--font-header);
	color: var(--purple);
	font-size: 1.7rem;
}
#menu .phone,
#mobile-header {
	display: none;
}

header p {
	font-size: 10.68rem; /*1068%*/
	font-family: var(--font-header);
	line-height: 1em;
	margin: 25px auto 10px auto;
	text-align: center;
	color: var(--green);
}
header p span {
	font-family: var(--font-script);
	font-size: 73%;
	color: var(--purple);
	display: block;
}
header h1 {
	font-size: 7rem; /*1068%*/
	font-family: var(--font-header);
	line-height: 1em;
	margin: 25px auto 10px auto;
	text-align: center;
	color: var(--green);
}
.story-banner {
	width: 100%;
	font-size: 150%;
	text-align: center;
	height: 80px;
}
.story-banner a {
	width: 100%;
	height: 100%;
	padding: 15px 1%;
	text-decoration: none;
	background-color: var(--green);
	border: 1px solid var(--green);
	color: white;
	display: block;
}
.story-banner a:hover {
	color: var(--green);
	background: transparent;
}
/* ==========================================================================
 MAIN CONTENT
 ========================================================================== */
.main {
	padding: 80px 9.6%;
}
.home .main {
	background: url(img/bg-bokeh.webp) top no-repeat;
	background-size: 103%;
}
.main.lower {
	background: white;
}
.grid1 {
	display: grid;
	grid-template-columns: 48.5% 48.5%;
	grid-template-rows: minmax(200px, auto);
	grid-gap: 3%;
}
.grid1 ul {
	margin-top: 40px;
}
.primary {
	max-width: 991px;
	width: 100%;
	grid-area: 1 / 1 / 3 / 2;
}
.grid1 p {
	grid-area: 1 / 2 / 2 / 3;
}
.quick-move {
	border: 1px solid var(--green);
	grid-area: 2 / 2 / 3 / 3;
	padding: 20px;
	color: white;
	text-align: center;
	font-size: 2rem;
	background-color: var(--green);
}
.quick-move span {
	font-family: var(--font-script);
	display: block;
	font-size: 200%;
	color: white;
}
.quick-move em {
	font-style: normal;
	font-size: 80%;
}
.quick-move a:link,
.quick-move a:visited {
	color: white;
}
.home .main ul:before{
	content:attr(aria-label);
	color: var(--purple);
	font-style: italic;
	margin-left:-20px;
}
.main li {
	margin: 0 0 10px 0;
}
.divider {
	width: 100%;
	margin: 100px 0;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: center;
}
.divider hr {
	flex: 0 1 48%;
	overflow: visible; /* For IE */
	padding: 0;
	border: none;
	border-top: 1px solid var(--green);
}
.divider img {
	flex: 0 1 1.84%;
	width: 1.84%;
}
.grid2 {
	display: grid;
	grid-template-columns: 48.5% 48.5%;
	grid-template-rows: minmax(110px, auto);
	grid-gap: 3%;
}
.grid2 h2 {
	grid-area: 1 / 1 / 2 / 3;
	font-family: var(--font-header);
	color: var(--purple);
	font-size: 3.12rem;
	text-align: center;
	line-height: 1.35em;
}
.grid2 h2 em {
	font-family: var(--font-script);
}
.grid3 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: auto;
	grid-gap: 15px;
}
.grid3 div,
.grid4 div {
	border-right: 1px solid var(--green);
	padding: 0 15px;
}
.grid3 div:last-child,
.grid4 div:last-child {
	border-right: 0 none;
}
.grid3 img,
.grid4 img {
	max-height: 39px;
	margin: 20px auto;
	display: block;
}
.contentInPopup {
	text-align: center;
}
video {
	width: 95%;
}
ul {
	margin: 16px 0;
	padding-left: 25px;
}
li {
	margin-bottom: 5px;
}
li::marker {
	color: var(--green);
}
.experience {
	width: 100%;
	background: var(--yellow) repeat center/6% url(img/pattern1.svg);
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	margin: 46px 0;
}
.experience h2 {
	font-family: var(--font-header);
	color: var(--purple);
	font-size: 3.43rem;
	display: inline;
	padding-right: 20px;
}
.experience button {
	display: inline;
	color: var(--green);
	font-family: var(--font-body);
	font-weight: 200;
	background: transparent;
	border: 1px solid var(--green);
	outline: 1px solid var(--green);
	outline-offset: 0.5rem;
	margin: 2rem;
	padding: .8rem;
	min-width: 275px;
	transition: background-color 215ms,color 215ms;
}
.experience button svg {
	max-height: 19px;
	fill: var(--green);
	position: relative;
	top: 1px;
	transition: fill 215ms;
}
.experience button:hover {
	background: var(--green);
	color: var(--yellow);
	cursor: pointer;
}
.experience button:hover svg {
	fill: var(--yellow);
}

.grid4 {
	display: grid;
	grid-template-columns: repeat(4, 25%);
	grid-template-rows: auto;
	grid-gap: 15px;
}
.grid3.testimonials h2,
.grid4.testimonials h2 {
	grid-area: 1 / 1 / 2 / 5;
	text-align: center;
	font-size: 6rem;
	margin: 0 auto 10px;
}
.grid3.testimonials img,
.grid4.testimonials img {
	height: auto;
	max-height: none;
	margin-bottom: 0;
}
.grid3.testimonials div,
.grid4.testimonials div {
	padding: 0 25px 0 40px;
	border: 0 none;
	text-align: center;
}
.grid4.testimonials div:nth-child(4) {
	/*border-left: 1px solid var(--green);*/
}
.grid3.testimonials a,
.grid4.testimonials a {
	line-height: 38px;
}

.grid6 {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-template-rows: auto auto auto;
	grid-gap: 0;
	grid-template-areas:
		"top top top top top top"
		"wf wf wf fun fun fun"
		"buy buy game game community community"
}
.grid6 p {
	grid-area: top;
	font-size: 4.31rem;
	font-family: var(--font-header);
	line-height: 1em;
	margin: 0 auto 60px auto;
	text-align: center;
	color: var(--green);
	display: inline;
}
.grid6 p span {
	font-family: var(--font-script);
	font-size: 203%;
	color: var(--purple);
	display: block;
	padding-bottom: 10px;
}
.grid6 .img {
	position: relative;
}
.grid6 .img img {
	position: relative;
	z-index: 1;
	width: 100%;
	outline: 1px solid white;
	outline-offset: -15px;
}
.grid6 .img h4 {
	font-size: 4rem;
	font-family: var(--font-body);
	font-weight: 400;
	color: white;
	line-height: 1.2;
	position: absolute;
	z-index: 10;
	text-align: center;
}
.grid6 .worry-free {
	grid-area: wf;
}
.grid6 .img.worry-free h4  {
  text-shadow: 0px 0px 16px var(--brown),
	-1px -1px 0 var(--brown),
	  1px -1px 0 var(--brown),
	  -1px 1px 0 var(--brown),
	   1px 1px 0 var(--brown);
  left: 50%;
  /*top: 50%;
  transform: translate(-50%,-50%);*/
  transform: translate(-50%,120%);
}
.grid6 .fun {
	grid-area: fun;
}
.grid6 .img.fun h4 {
  text-shadow: 0px 0px 16px rgba(21, 154, 147, 0.9),
  -1px -1px 0 rgba(21, 154, 147, 0.5),
	1px -1px 0 rgba(21, 154, 147, 0.5),
	-1px 1px 0 rgba(21, 154, 147, 0.5),
	 1px 1px 0 rgba(21, 154, 147, 0.5);
  left: 50%;
	/*top: 50%;
	transform: translate(-50%,-50%);*/
	transform: translate(-50%,250%);
}
.grid6 .buy {
	grid-area: buy;
	top: -4px
}
.grid6 .img.buy h4 {
  text-shadow: 0px 0px 16px rgba(0, 0, 0, 0.8),
	-1px -1px 0 rgba(0, 0, 0, 0.4),
	  1px -1px 0 rgba(0, 0, 0, 0.4),
	  -1px 1px 0 rgba(0, 0, 0, 0.4),
	   1px 1px 0 rgba(0, 0, 0, 0.4);
  left: 50%;
	/*top: 50%;
	transform: translate(-50%,-50%);*/
	transform: translate(-50%,100%);
}
.grid6 .game {
	grid-area: game;
	top: -4px
}
.grid6 .img.game h4 {
  text-shadow: 0px 0px 16px var(--brown),
  -1px -1px 0 var(--brown),
	1px -1px 0 var(--brown),
	-1px 1px 0 var(--brown),
	 1px 1px 0 var(--brown);
  left: 50%;
  /*top: 50%;
  transform: translate(-50%,-50%);*/
  transform: translate(-50%,100%);

}
.grid6 .community {
	grid-area: community;
	top: -4px
}
.grid6 .img.community h4 {
  text-shadow: 0px 0px 16.56px var(--brown),
	-1px -1px 0 var(--brown),
	  1px -1px 0 var(--brown),
	  -1px 1px 0 var(--brown),
	   1px 1px 0 var(--brown);
  left: 50%;
	/*top: 50%;
	transform: translate(-50%,-50%);*/
	transform: translate(-50%,100%);
}
.map {
	width: 100%;
	height: 500px;
	border: 0 none;
}
.map1 {
	max-width: 1300px;
}
img {
	width:100%
}
/* ==========================================================================
 SECONDARY
 ========================================================================== */
.grid {
	display: grid;
	grid-template-columns: repeat(2,minmax(0,1fr));
	grid-template-rows: auto;
	border: 1px solid var(--green);
	margin: 0 auto 2rem auto;
	padding: 1rem 1rem 1rem 0;
	width: 80%;
}
.grid .magnolia {
	background: url(img/floorplans/magnolia.webp) center no-repeat;
	background-size: contain;
}
.grid .dogwood {
	background: url(img/floorplans/dogwood.webp) center no-repeat;
	background-size: contain;
}
.grid .redbud {
	background: url(img/floorplans/redbud.webp) center no-repeat;
	background-size: contain;
}
.items-center {
	width: 100%;
	padding: 0.5rem;
}
/*.grid .items-center {
	padding: 0 1rem 0 0;
}*/
.items-center ul,
ul.features {
	display: grid;
	grid-template-columns: repeat(2,minmax(0,1fr));
	margin: 0;
	margin-bottom: 1rem;
	padding: 0;
	list-style: none;
}
.items-center ul:before {
	content: '';
	display: none;
}
.items-center ul img,
ul.features img {
	width: 3rem;
	margin-right: 1rem;
	height: auto;
	max-width: 100%;
}
.items-center ul li.flex,
.villas .main .items-center ul li.flex,
.villas .main ul.features li.flex {
	align-items: center;
	justify-content: normal;
}
.items-center ul li p,
ul.features li p {
	margin: 0;
}
.flex {
	display: flex;
}
.flex.stretch {
	align-items: stretch;
}
.flex.wrap {
	flex-wrap: wrap;
}
.flex.between {
	justify-content: space-between;
}
p.details {
	font-size: 90%;
}
.flex a.flex {
	flex: 0 0 48%;
	align-items: center;
	justify-content: center;
	max-width: 48%;
	padding: 0 0.5rem;
	height: 60px;
	text-decoration: none;
	text-align: center;
}
.button {
	display: flex;
	width: 45%;
	margin: 1rem auto;
	padding: 0 0.5rem;
	height: 60px;
	text-decoration: none;
	text-align: center;
	justify-content: center;
	align-items: center;
}
.lifestyle .main,
.lifestyle .main h2,
.lifestyle .main h3 {
	text-align: center;
}
.lifestyle h2.script {
	font-size: 5rem;
	margin-bottom: 12px;
}
.lifestyle .main .flex {
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: stretch;
}
.lifestyle .main .flex div {
	width: 30%;
	padding: 1rem;
	border: 1px solid #ccc;
	margin-bottom: 3rem;
}
.lifestyle .main .flex div.nope {
	border: 0 none;
}
.lifestyle .main .flex p {
	margin-top: 1rem;
}
.lifestyle .main .flex h3 {
	font-family: var(--font-body);
}
.lifestyle .flex img {
	width: 100%;
}
.lifestyle video {
	width: 80%;
}
video+p {
	margin-top: 45px;
}
.something-here {
	width: 100%;
	background: var(--purple) repeat center/6% url(img/pattern3.svg);
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	margin: 46px 0;
	color: white;
}
.something-here.too {
	background: var(--green) no-repeat url(img/lifestyle/there-is-something-happening.webp);
	flex-flow: column wrap;
	align-content: center;
	background-size: cover;
	padding: 1em 0;
}
.something-here div {
	width: 48%;
}
.something-here h2 {
	color: white;
	font-family: var(--font-script);
	font-size: 5rem;
	margin: 10px 0 20px 0;
	line-height: 1em;
}
.something-here p {
	padding-right: 1rem;
}
.something-here.too h2 {
	margin: 20px 0;
}
.something-here.too p {
	padding: 0;
	margin-bottom: 0;
}
.mapouter{
	position:relative;
	text-align:right;
	width: 100%;
	height: 400px;
	border: #ccc solid 1px;
	margin: 20px 0;
	overflow:hidden;
}
.something-here div.gmap_canvas {
	width: 100%;
	height: 100%;
}
#gmap_canvas {
	width: 100%;
	height: 100%;
}
.contact h2.script {
	margin-bottom: 8px;
}
/* ==========================================================================
 VILLAS
 ========================================================================== */
.villas .main .flex {
	flex-flow: row wrap;
	justify-content: space-between;
}
.villas .main .flex.details div {
	width: 48.5%;
}
.villas .main .multi .flex div {
	width: 100%;
}
.villas .main .flex div.items-center {
	width: 30%;
	padding: 1rem;
	margin: 2.5rem 0 3rem;
	border: 1px solid #ccc;
}
/*.villas .main .flex div.flex {
	flex-flow: column wrap;
	justify-content: space-between;
}*/
.villas .main h2 {
	font-family: var(--font-script);
	color: var(--purple);
	font-size: 7rem;
	font-weight: 400;
	margin: 0 0 12px;
}
.villas h3 {
	font-size: 2.7rem;
	font-family: var(--font-header);
	font-weight: 200;
	color: var(--purple);
	margin-top: 50px;
}
.villas .main .flex a.flex {
	margin: 0 auto 20px auto;
	width: auto;
	max-width: none;
	align-items: center;
	justify-content: center;
	padding: 0 2.5rem;
	height: 60px;
	text-decoration: none;
	text-align: center;
}
.villas .main .multi .flex a.flex {
	width: 100%;
}
.villas h3.script {
  font-size: 3.2rem;
  font-family: var(--font-script);
  font-weight: 200;
  color: var(--green);
  line-height: 1em;
}
.button-gallery {
	width: 98%;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 2rem;
}
.button-floorplan {
	width: 60%;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
}
.button-gallery img.bg,
.button-floorplan img.bg {
	position: relative;
	z-index: 1;
}
.button-gallery a,
.button-floorplan a {
	position: absolute;
	z-index: 10;
}
.imageGallery {
	display: none;
}
.photo-grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-template-rows: auto auto auto;
	grid-gap: 0;
	grid-template-areas:
		"top top top top top top"
		"wf wf wf fun fun fun"
		"buy buy game game community community"
}
.photo-grid p {
	grid-area: top;
	font-size: 4.31rem;
	font-family: var(--font-header);
	line-height: 1em;
	margin: 0 auto 60px auto;
	text-align: center;
	color: var(--green);
	display: inline;
}

/* ==========================================================================
 FORMS
 ========================================================================== */
form {
	margin: 3rem 0 1rem 0;
}
input, select, textarea {
	font-family: var(--font-body);
}
fieldset {
	border: 0 none;
	padding: 0;
	margin-bottom: 40px;
}
div.row {
  margin: 15px 0;
  padding: 0;
  display: block;
  width: 100%;
  clear: both;
}
div.row.last {
  padding-top:1px;
}
div.row.half {
  width: 50%;
  float: left;
  clear: none;
}
div.row.half1 {
  margin: 10px 0 27px 0;
  width: 49%;
  float: left;
  clear: none;
}
div.row.half2 {
  margin: 10px 0 27px 5%;
  width: 45%;
  float: left;
  clear: none;
}
div.row.last {
  padding-top:1px;
}
div.row.submit {
  text-align: right;
  padding-top: 25px;
  margin: 20px 0;
}
label {
  width: auto;
  display: block;
  font-weight: 400;
  margin: 15px 0 3px 0;
  line-height: 1.1em;
}
fieldset label {
	display: inline;
}
input[type=text],
input[type=tel],
input[type=email] {
  width: 100%;
  padding: 6px 5px 5px 10px;
  height: 54px;
  font-size: 120%;
  color: black;
  padding-left: 10px;
  border: 1px solid #999;
}
textarea {
  border: 1px solid #999;
  color: black;
  padding-left: 10px;
  width: 100%;
  padding: 6px 5px 5px 10px;
  height: 100px;
  font-size: 120%;
  resize: vertical;
}
textarea:focus,
input:focus {
	border: 1px solid var(--green);
	outline: none;
}
input[type=radio] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  background-color: white;
  border: 1px solid #363636;
  transition: 0.2s all linear;
  margin-right: 4px;
  position: relative;
  top: 2px;
  outline: 0 none;
  cursor: pointer;
}
.fancy-form input[type=radio]+label {
  display: inline;
  margin: 0 55px 20px 0;
}
input[type=radio]:checked {
  box-shadow:inset 0 0 0 3px #fff;
  background-color: var(--green);
  outline: 0 none;
}
input[type=radio]:active {
  outline: 0 none;
}
button.g-recaptcha {
  padding: 8px 0;
  background-color: transparent;
  color: var(--green);
  font-weight: 700;
  text-align: center;
  width: 200px;
  font-size: 120%;
  border: 1px solid var(--green);
  text-decoration: none;
  cursor: pointer;
}
button.g-recaptcha:hover,
button.g-recaptcha:active {
  outline: 0 none;
  background-color: var(--green);
  color: white;
  cursor: pointer;
}
button.g-recaptcha[disabled],
button.g-recaptcha:hover[disabled],
button.g-recaptcha:active[disabled] {
	cursor: default;
	color: gray;
	border: 1px solid gray;
	background-color: white;
}
label.check {
	display: grid;
	grid-template-columns: 1em auto;
	gap: 0.5em;
	width: 100%;
	font-size: 80%;
}
input[type=checkbox] {
	-webkit-appearance: none;
	appearance: none;
	background-color: #fff;
	margin: 0;
	font: inherit;
	color: currentColor;
	width: 1.15em;
	height: 1.15em;
	border: 1px solid #999;
	border-radius: 0.15em;
	transform: translateY(-0.075em);
	display: grid;
	place-content: center;
}
input[type=checkbox]:checked {
  border: 1px solid var(--green);
}
input[type="checkbox"]::before {
  content: "";
  width: 0.65em;
  height: 0.65em;
  transform: scale(0);
  transition: 120ms transform ease-in-out;
  box-shadow: inset 1em 1em var(--green);
  transform-origin: bottom left;
  clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
}
input[type="checkbox"]:checked::before {
  transform: scale(1);
}
h4.notice {
	display: none;
	font: italic bold 2rem/1.5em var(--font-body);
	color: var(--purple);
	margin: 10px auto;
	padding: 25px;
	border: 1px solid var(--purple);
}
.required {
	color: red;
}
.visit h2.script {
	margin-bottom: 0.5rem;
}
.visit form {
	margin-top: 0.5rem;
}
div.grecaptcha-badge {
  display: none;
}
/* ==========================================================================
 FOOTER
 ========================================================================== */
footer {
	width: 100%;
	background: var(--green) repeat center/6% url(img/pattern2.svg);
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	padding: 22px 9.6% 40px 9.6%;
	margin-top: 20px;
}
footer header {
	background: transparent;
	width: 100%;
	height: auto;
	padding-bottom: 0;
	border-bottom: 1px solid white;
	text-align: center;
	margin-bottom: 38px;
}
footer header img {
	width: 22%;
	height: auto;
	margin: 0 auto 21px auto;
}
footer div {
	text-align: left;
	border-right: 1px solid white;
	color: white;
	width: 30%;
}
footer div:first-child {
	padding-right: 2.76%;
}
footer div:last-child {
	border-right: 0 none;
	padding-left: 2.76%;
}
footer h4 {
	color: var(--yellow);
	font-family: var(--font-body);
	font-weight: 400;
	font-size: 1.8rem;
	margin: 0 0 16px 0;
}
/*footer .ends {
	width: 24%;
}*/
footer .middle {
	/*width: 52%;*/
	padding: 0 2.76%;
}
footer p {
	font-size: 2rem;
}
footer span {
	font-family: var(--font-header);
	color: white;
	font-size: 2.6rem;
}
footer span a {
	color: white;
	text-decoration: none;
}
footer span a:hover {
	color: var(--yellow);
	text-decoration: none;
}
footer span em {
	display: block;
	font-size: 65%;
	font-style: normal;
}
footer input:not([type=submit]),
footer textarea {
	background-color: transparent;
	border: none;
	border-bottom: 1px solid rgba(255,255,255,0.5);
	font-size: 1.4rem;
	line-height: 1.2em;
	margin-bottom: 1em;
	color: white;
	width: 100%;
	padding-top: 3px;
}
footer input:not([type=submit]):focus,
footer textarea:focus {
	outline: none;
}
input::placeholder,
textarea::placeholder {
	color:white;
}
footer .row {
	border: 0 none;
	display: flex;
	flex-wrap: wrap;
}
.row .span_6_of_12 {
	flex: 0 0 50%;
	max-width: 50%;
	border: 0 none;
}
.btn-submit {
	height: 60px;
	width: 250px;
	max-width: 100%;
	margin: 15px 0 15px auto;
	background: transparent;
	border: 1px solid var(--yellow);
	display: block;
	position: relative;
}
.btn-submit input[type="submit"] {
	position: absolute;
	top: 0;
	left: 0;
	height: 60px;
	width: 100%;
	font-family: var(--font-header);
	color: var(--yellow);
	font-size: 2.25rem;
	padding: 0 20px;
	z-index: 2;
	text-align: center;
	background: none;
	border: none;
	-moz-appearance: none;
	-webkit-appearance: none;
}
.btn-submit:hover {
	border: 1px solid white;
	cursor: pointer;
}
.btn-submit:hover input[type="submit"]:hover {
	color: white;
	cursor: pointer;
}
footer a svg {
	fill: var(--yellow);
	max-height: 57px;
	width: auto;
}
footer a:hover svg {
	fill: white;
}
/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1;
}
  .owl-carousel .owl-stage {
	position: relative;
	-ms-touch-action: pan-Y;
	touch-action: manipulation;
	-moz-backface-visibility: hidden;
	/* fix firefox animation glitch */
}
  .owl-carousel .owl-stage:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}
  .owl-carousel .owl-stage-outer {
	position: relative;
	overflow: hidden;
	/* fix for flashing background */
	-webkit-transform: translate3d(0px, 0px, 0px);
}
  .owl-carousel .owl-wrapper,
  .owl-carousel .owl-item {
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	-ms-backface-visibility: hidden;
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
}
  .owl-carousel .owl-item {
	position: relative;
	min-height: 1px;
	float: left;
	-webkit-backface-visibility: hidden;
	-webkit-tap-highlight-color: transparent;
	-webkit-touch-callout: none;
}
.owl-carousel.life1 div.owl-item.active,
.owl-carousel.life2 div.owl-item.active,
.owl-carousel.life1 .owl-item img,
.owl-carousel.life2 .owl-item img {
	width: 815px;
}
  .owl-carousel .owl-item img {
	display: block;
	width: 100%;
	margin: 0 auto;
}

  .owl-carousel .owl-nav.disabled,
  .owl-carousel .owl-dots.disabled {
	display: none;
}
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next,
  .owl-carousel .owl-dot {
	cursor: pointer;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
  .owl-carousel .owl-nav button.owl-prev,
  .owl-carousel .owl-nav button.owl-next,
  .owl-carousel button.owl-dot {
	background: none;
	color: inherit;
	border: none;
	padding: 0 !important;
	font: inherit;
}
  .owl-carousel.owl-loaded {
	display: block;
}
  .owl-carousel.owl-loading {
	opacity: 0;
	display: block;
}
  .owl-carousel.owl-hidden {
	opacity: 0;
}
  .owl-carousel.owl-refresh .owl-item {
	visibility: hidden;
}
  .owl-carousel.owl-drag .owl-item {
	-ms-touch-action: pan-y;
		touch-action: pan-y;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none; }
  .owl-carousel.owl-grab {
	cursor: move;
	cursor: grab; }
  .owl-carousel.owl-rtl {
	direction: rtl; }
  .owl-carousel.owl-rtl .owl-item {
	float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  animation-name: fadeOut; }

@keyframes fadeOut {
  0% {
	opacity: 1; }
  100% {
	opacity: 0; } }

/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out;
}

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item {
  /**
			This is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong
			calculation of the height of the owl-item that breaks page layouts
		 */ }
.owl-carousel .owl-item .owl-lazy {
	opacity: 0;
	transition: opacity 400ms ease;
}
.owl-carousel .owl-item .owl-lazy[src^=""], .owl-carousel .owl-item .owl-lazy:not([src]) {
	max-height: 0;
}
.owl-carousel .owl-item img.owl-lazy {
	transform-style: preserve-3d;
}
/*
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000;
}
.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: transform 100ms ease;
}
.owl-carousel .owl-video-play-icon:hover {
  -ms-transform: scale(1.3, 1.3);
	  transform: scale(1.3, 1.3);
  }
.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none;
}
.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease;
}
.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%; }
/**
* Owl Carousel v2.3.4
* Copyright 2013-2018 David Deutsch
* Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
*/
/*
* 	Default theme - Owl Carousel CSS File
*/
.owl-theme .owl-nav {
margin-top: 10px;
text-align: center;
-webkit-tap-highlight-color: transparent;
}
.owl-theme .owl-nav [class*='owl-'] {
  color: #FFF;
  font-size: 14px;
  margin: 5px;
  padding: 4px 7px;
  background: #D6D6D6;
  display: inline-block;
  cursor: pointer;
  border-radius: 3px;
}
.owl-theme .owl-nav [class*='owl-']:hover {
	background: #869791;
	color: #FFF;
	text-decoration: none;
}
.owl-theme .owl-nav .disabled {
  opacity: 0.5;
  cursor: default;
}
.owl-theme .owl-nav.disabled + .owl-dots {
	margin-top: 10px;
}
.owl-theme .owl-dots {
	text-align: center;
	-webkit-tap-highlight-color: transparent;
}
.owl-theme .owl-dots .owl-dot {
  display: inline-block;
  zoom: 1;
  *display: inline;
}
.owl-theme .owl-dots .owl-dot span {
	width: 10px;
	height: 10px;
	margin: 5px 7px;
	background: #76bc98;
	display: block;
	-webkit-backface-visibility: visible;
	transition: opacity 200ms ease;
	border-radius: 30px;
}
.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
	background: var(--green);
}

.sidr {
	  display: block;
	  position: fixed;
	  top: 0;
	  height: 100%;
	  z-index: 999999;
	  width: 260px;
	  overflow-x: hidden;
	  overflow-y: auto;
	  font-family: "lucida grande", tahoma, verdana, arial, sans-serif;
	  font-size: 15px;
	  background: #f8f8f8;
	  color: #333;
	  box-shadow: 0 0 5px 5px #ebebeb inset;
	}
	.sidr .sidr-inner {
	  padding: 0 0 15px;
	}
	.sidr .sidr-inner > p {
	  margin-left: 15px;
	  margin-right: 15px;
	}
	.sidr.right {
	  left: auto;
	  right: -260px;
	}
	.sidr.left {
	  left: -260px;
	  right: auto;
	}
	.sidr h1,
	.sidr h2,
	.sidr h3,
	.sidr h4,
	.sidr h5,
	.sidr h6 {
	  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2RmZGZkZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
	  background-size: 100%;
	  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(100%, #dfdfdf));
	  background-image: -moz-linear-gradient(#ffffff, #dfdfdf);
	  background-image: -webkit-linear-gradient(#ffffff, #dfdfdf);
	  background-image: linear-gradient(#ffffff, #dfdfdf);
	  font-size: 11px;
	  font-weight: normal;
	  padding: 0 15px;
	  margin: 0 0 5px;
	  color: #333;
	  line-height: 24px;
	  box-shadow: 0 5px 5px 3px rgba(0, 0, 0, 0.2);
	}
	.sidr p {
	  font-size: 13px;
	  margin: 0 0 12px;
	}
	.sidr p a {
	  color: rgba(51, 51, 51, 0.9);
	}
	.sidr > p {
	  margin-left: 15px;
	  margin-right: 15px;
	}
	.sidr ul {
	  display: block;
	  margin: 0 0 15px;
	  padding: 0 0 0 10px;
	  border-top: 1px solid #dfdfdf;
	  border-bottom: 1px solid white;
	}
	.sidr ul li {
	  display: block;
	  margin: 0;
	  line-height: 48px;
	  border-top: 1px solid white;
	  border-bottom: 1px solid #dfdfdf;
	}
	.sidr ul li:hover, .sidr ul li.active, .sidr ul li.sidr-class-active {
	  border-top: 0;
	  line-height: 49px;
	}
	.sidr ul li:hover > a,
	.sidr ul li:hover > span, .sidr ul li.active > a,
	.sidr ul li.active > span, .sidr ul li.sidr-class-active > a,
	.sidr ul li.sidr-class-active > span {
	  box-shadow: 0 0 15px 3px #ebebeb inset;
	}
	.sidr ul li a,
	.sidr ul li span,
	.sidr span.sidr-class-phone {
	  padding: 0 15px;
	  display: block;
	  text-decoration: none;
	  color: #333;
	}
	.sidr ul li ul {
	  border-bottom: 0;
	  margin: 0;
	  padding-left:0;
	}
	.sidr ul li ul li {
	  line-height: 40px;
	  font-size: 13px;
	}
	.sidr ul li ul li:last-child {
	  border-bottom: 0;
	}
	.sidr ul li ul li:hover, .sidr ul li ul li.active, .sidr ul li ul li.sidr-class-active {
	  border-top: 0;
	  line-height: 41px;
	}
	.sidr ul li ul li:hover > a,
	.sidr ul li ul li:hover > span, .sidr ul li ul li.active > a,
	.sidr ul li ul li.active > span, .sidr ul li ul li.sidr-class-active > a,
	.sidr ul li ul li.sidr-class-active > span {
	  box-shadow: 0 0 15px 3px #ebebeb inset;
	}
	.sidr ul li ul li a,
	.sidr ul li ul li span {
	  color: rgba(51, 51, 51, 0.8);
	  padding-left: 30px;
	}
	.sidr form {
	  margin: 0 15px;
	}
	.sidr label {
	  font-size: 13px;
	}
	.sidr input[type="text"],
	.sidr input[type="password"],
	.sidr input[type="date"],
	.sidr input[type="datetime"],
	.sidr input[type="email"],
	.sidr input[type="number"],
	.sidr input[type="search"],
	.sidr input[type="tel"],
	.sidr input[type="time"],
	.sidr input[type="url"],
	.sidr textarea,
	.sidr select {
	  width: 100%;
	  font-size: 13px;
	  padding: 5px;
	  -moz-box-sizing: border-box;
	  -webkit-box-sizing: border-box;
	  box-sizing: border-box;
	  margin: 0 0 10px;
	  border-radius: 2px;
	  border: 0;
	  background: rgba(0, 0, 0, 0.1);
	  color: rgba(51, 51, 51, 0.6);
	  display: block;
	  clear: both;
	}
	.sidr input[type=checkbox] {
	  width: auto;
	  display: inline;
	  clear: none;
	}
	.sidr input[type=button],
	.sidr input[type=submit] {
	  color: #f8f8f8;
	  background: #333;
	}
	.sidr input[type=button]:hover,
	.sidr input[type=submit]:hover {
	  background: rgba(51, 51, 51, 0.9);
	}
/* ==========================================================================
	   LIGHT BOX
========================================================================== */
.slbOverlay, .slbWrapOuter, .slbWrap {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.slbOverlay {
  overflow: hidden;
  z-index: 2000;
  background-color: #000;
  opacity: 0.7;
  -webkit-animation: slbOverlay 0.5s;
  -moz-animation: slbOverlay 0.5s;
  animation: slbOverlay 0.5s;
}

.slbWrapOuter {
  overflow-x: hidden;
  overflow-y: auto;
  z-index: 2010;
}

.slbWrap {
  position: absolute;
  text-align: center;
}

.slbWrap:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.slbContentOuter {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0px auto;
  padding: 0 1em;
  box-sizing: border-box;
  z-index: 2020;
  text-align: left;
  max-width: 100%;
}

.slbContentEl .slbContentOuter {
  padding: 5em 1em;
}

.slbContent {
  position: relative;
}

.slbContentEl .slbContent {
  -webkit-animation: slbEnter 0.3s;
  -moz-animation: slbEnter 0.3s;
  animation: slbEnter 0.3s;
  background-color: #fff;
  box-shadow: 0 0.2em 1em rgba(0, 0, 0, 0.4);
}

.slbImageWrap {
  -webkit-animation: slbEnter 0.3s;
  -moz-animation: slbEnter 0.3s;
  animation: slbEnter 0.3s;
  position: relative;
}

.slbImageWrap:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 5em;
  bottom: 5em;
  display: block;
  z-index: -1;
  box-shadow: 0 0.2em 1em rgba(0, 0, 0, 0.6);
  background-color: #FFF;
}

.slbDirectionNext .slbImageWrap {
  -webkit-animation: slbEnterNext 0.4s;
  -moz-animation: slbEnterNext 0.4s;
  animation: slbEnterNext 0.4s;
}

.slbDirectionPrev .slbImageWrap {
  -webkit-animation: slbEnterPrev 0.4s;
  -moz-animation: slbEnterPrev 0.4s;
  animation: slbEnterPrev 0.4s;
}

.slbImage {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  box-sizing: border-box;
  padding: 5em 0;
  margin: 0 auto;
}

.slbCaption {
  display: inline-block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-wrap: normal;
  font-size: 0.9em;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0 0 1.8em 0;
  color: #fff;
  text-align: center;
}

.slbCloseBtn, .slbArrow {
  margin: 0;
  padding: 0;
  border: 0;
  cursor: pointer;
  background: none;
}

.slbCloseBtn::-moz-focus-inner, .slbArrow::-moz-focus-inner {
  padding: 0;
  border: 0;
}

.slbCloseBtn:hover, .slbArrow:hover {
  opacity: 0.5;
}

.slbCloseBtn:active, .slbArrow:active {
  opacity: 0.8;
}

.slbCloseBtn {
  -webkit-animation: slbEnter 0.3s;
  -moz-animation: slbEnter 0.3s;
  animation: slbEnter 0.3s;
  font-size: 3em;
  width: 1.66667em;
  height: 1.66667em;
  line-height: 1.66667em;
  position: absolute;
  right: -0.33333em;
  top: 0;
  color: #fff;
  color: rgba(255, 255, 255, 0.7);
  text-align: center;
}

.slbLoading .slbCloseBtn {
  display: none;
}

.slbLoadingText {
  font-size: 1.4em;
  color: #fff;
  color: rgba(255, 255, 255, 0.9);
}

.slbArrows {
  position: fixed;
  top: 50%;
  left: 0;
  right: 0;
}

.slbLoading .slbArrows {
  display: none;
}

.slbArrow {
  position: absolute;
  top: 50%;
  margin-top: -5em;
  width: 5em;
  height: 10em;
  opacity: 0.7;
  text-indent: -999em;
  overflow: hidden;
}

.slbArrow:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -0.8em 0 0 -0.8em;
  border: 0.8em solid transparent;
}

.slbArrow.next {
  right: 0;
}

.slbArrow.next:before {
  border-left-color: #fff;
}

.slbArrow.prev {
  left: 0;
}

.slbArrow.prev:before {
  border-right-color: #fff;
}

.slbIframeCont {
  width: 80em;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
  margin: 5em 0;
}

.slbIframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 0.2em 1em rgba(0, 0, 0, 0.6);
  background: #000;
}

@-webkit-keyframes slbOverlay {
  from {
	opacity: 0;
  }
  to {
	opacity: 0.7;
  }
}

@-moz-keyframes slbOverlay {
  from {
	opacity: 0;
  }
  to {
	opacity: 0.7;
  }
}

@keyframes slbOverlay {
  from {
	opacity: 0;
  }
  to {
	opacity: 0.7;
  }
}

@-webkit-keyframes slbEnter {
  from {
	opacity: 0;
	-webkit-transform: translate3d(0, -1em, 0);
  }
  to {
	opacity: 1;
	-webkit-transform: translate3d(0, 0, 0);
  }
}

@-moz-keyframes slbEnter {
  from {
	opacity: 0;
	-moz-transform: translate3d(0, -1em, 0);
  }
  to {
	opacity: 1;
	-moz-transform: translate3d(0, 0, 0);
  }
}

@keyframes slbEnter {
  from {
	opacity: 0;
	-webkit-transform: translate3d(0, -1em, 0);
	-moz-transform: translate3d(0, -1em, 0);
	-ms-transform: translate3d(0, -1em, 0);
	-o-transform: translate3d(0, -1em, 0);
	transform: translate3d(0, -1em, 0);
  }
  to {
	opacity: 1;
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
  }
}

@-webkit-keyframes slbEnterNext {
  from {
	opacity: 0;
	-webkit-transform: translate3d(4em, 0, 0);
  }
  to {
	opacity: 1;
	-webkit-transform: translate3d(0, 0, 0);
  }
}

@-moz-keyframes slbEnterNext {
  from {
	opacity: 0;
	-moz-transform: translate3d(4em, 0, 0);
  }
  to {
	opacity: 1;
	-moz-transform: translate3d(0, 0, 0);
  }
}

@keyframes slbEnterNext {
  from {
	opacity: 0;
	-webkit-transform: translate3d(4em, 0, 0);
	-moz-transform: translate3d(4em, 0, 0);
	-ms-transform: translate3d(4em, 0, 0);
	-o-transform: translate3d(4em, 0, 0);
	transform: translate3d(4em, 0, 0);
  }
  to {
	opacity: 1;
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
  }
}

@-webkit-keyframes slbEnterPrev {
  from {
	opacity: 0;
	-webkit-transform: translate3d(-4em, 0, 0);
  }
  to {
	opacity: 1;
	-webkit-transform: translate3d(0, 0, 0);
  }
}

@-moz-keyframes slbEnterPrev {
  from {
	opacity: 0;
	-moz-transform: translate3d(-4em, 0, 0);
  }
  to {
	opacity: 1;
	-moz-transform: translate3d(0, 0, 0);
  }
}

@keyframes slbEnterPrev {
  from {
	opacity: 0;
	-webkit-transform: translate3d(-4em, 0, 0);
	-moz-transform: translate3d(-4em, 0, 0);
	-ms-transform: translate3d(-4em, 0, 0);
	-o-transform: translate3d(-4em, 0, 0);
	transform: translate3d(-4em, 0, 0);
  }
  to {
	opacity: 1;
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
  }
}


/* ==========================================================================
   MEDIA QUERIES
   ========================================================================== */
@media only screen and (max-width: 2100px) {
	.logo {
		height: 180px;
	}
	header .phone {
		top: 31px;
	}
	.grid6 .img h4 {
		font-size: 3.25rem;
	}
	nav {
		top: 10px;
	}
}
@media only screen and (max-width: 2000px) {
	nav a {
		font-size: 1.15rem;
	}
	.experience {
		flex-flow: column wrap;
	}
	.experience h2 {
		margin: 2rem auto 10px auto;
	}
}
@media only screen and (max-width: 1860px) {
	header section {
		background-size: auto;
	}
	.grid6 .img h4 {
		font-size: 2.62rem;
	}
}
@media only screen and (max-width: 1580px) {
	.logo {
		height: 150px;
	}
	.grid6 p {
		font-size: 4rem;
	}
}
@media only screen and (max-width: 1550px) {
	nav {
		top: 0;
	}
	header .phone {
		top: 22px;
	}
	header p span {
		font-size: 65%
	}
	.grid3,
	.grid4 {
		grid-gap: 0;
	}
	footer h4 {
		font-size: 1.5rem;
	}
	footer span {
		font-size:2.2rem;
	}
}
@media only screen and (max-width: 1450px) {
	.grid6 .img h4 {
		font-size: 2.5rem;
	}
	.grid6 p {
		font-size: 3.4rem;
	}
	input[type=text],
	input[type=tel],
	input[type=email]
	 {
	  height: 50px;
	}
}
@media only screen and (max-width: 1350px) {
	header p  {
		font-size: 9rem;
	}
	header .phone {
		font-size: 1.4rem;
		top: 14px;
	}
	nav li {
		margin-top: 16px;
	}
	ul {
		font-size: 1.1rem;
	}
	.home .main ul:before {
		font-size: 110%;
	}
	.divider {
		margin: 60px 0;
	}
	.experience h2 {
		font-size: 3rem;
	}
	.grid6 .img h4 {
		font-size: 2.4rem;
	}
	.grid6 .img.fun h4 {
		transform: translate(-50%,200%);
	}

	.grid6 .img.worry-free h4 {
		transform: translate(-50%,110%);
	}
	form.fancy-form label {
	  font-size: 130%;
	}
	input[type=submit].g-recaptcha {
	  font-size: 170%;
	  padding: 5px 0;
	  width: 200px;
	}
	footer header img {
		width: 26%;
	}
	footer h4 {
		font-size: 1.3rem;
	}
}
@media only screen and (max-width: 1255px) {
	nav li ul {
		top: 2.2rem;
	}
	li.logo-left {
		padding-right: 81px;
	}
	li.logo-right {
		padding-left: 81px;
	}
	header .phone {
		font-size: 1.2rem;
	}
	.grid6 .img h4 {
		font-size: 2rem;
	}
	.grid6 p {
		font-size: 3rem;
	}
	div.row.half1,
	  div.row.half2 {
		width: 100%;
		float: none;
		margin-left:0;
	  }
	  div.row {
		margin-bottom: 15px;
	  }
}
@media only screen and (max-width: 1220px) {
	nav li ul {
		top: 2rem;
	}
	.experience h2 {
		padding: 0;
	}
	.grid2 h2 {
		margin-top: 20px;
	}
	.items-center ul img {
		width: 2.2rem;
	}
	footer span,
	footer p {
		font-size: 1.8rem;
	}
}
@media only screen and (max-width: 1160px) {
	.logo {
		height: 130px;
	}
	header p  {
		font-size: 8rem;
	}
	.main {
		padding: 40px 6%;
	}
	.grid6 div.img.game h4 {
		font-size: 1.8rem;
	}

	footer header img {
		width: 36%;
	}
	.btn-submit input[type="submit"] {
		font-size: 2rem;
	}
}
@media only screen and (max-width: 1030px) {
	#menu,
	.phone {
		display: none;
	}
	#mobile-header  {
		display: block;
		position: absolute;
		top: 9px;
		right: 15px;
		font-family: var(--font-header);
		font-size: 1.2rem;
	}
	#mobile-header a {
		color: var(--purple);
		text-decoration: none;
	}
	header p {
		font-size: 7rem;
	}
	nav li ul {
		top: 1.9rem;
	}
	.items-center ul {
		grid-template-columns: repeat(1,minmax(0,1fr));
	}
	.items-center h3 {
		margin-bottom: 8px;
	}
	.lifestyle .main .flex div {
		width: 48%;
	}
	.experience h2 {
		text-align: center;
		padding: 0 0.5rem
	}
	.experience button {
		font-size: 1.3rem;
	}
	.button {
		width: 100%;
	}
	.villas .main h2 {
		line-height: 1em;
	}
	form.fancy-form label {
	  font-size: 120%;
	}
	footer {
		flex-flow: column wrap;
	}
	footer header {
		margin-bottom: 0;
	}
	footer div {
		border-right: 0 none;
		border-bottom: 1px solid white;
	}
	footer div:last-child {
		border-bottom: 0 none;
	}
	footer .ends,
	footer .middle {
		width: 100%;
	}
	footer h4 {
		margin-top: 24px;
	}
	.btn-submit input[type="submit"] {
		font-size: 1.5rem;
	}
}
@media only screen and (max-width: 930px) {
	.grid6 .img.fun h4 {
		transform: translate(-50%,150%);
	}
	.grid6 .img.worry-free h4 {
		transform: translate(-50%,80%);
	}
	.grid6 .img h4 {
		font-size: 1.8rem;
	}
}
@media only screen and (max-width: 900px) {
	header p {
		font-size: 7rem;
		margin-top: 0;
	}
	header p span {
		display: block;
		line-height: 1em;
		padding: 0 0.5rem;
	}
	.divider img {
		width: 3%;
	}
	.divider hr {
		flex: 0 1 47%;
	}
	.grid3,
	.grid4 {
		grid-template-columns: repeat(2, 1fr);
	}
	.grid3 div,
	.grid4 div {
		border: 0 none;
		margin-bottom: 20px;
	}
	.grid3 div:nth-child(odd),
	.grid4 div:nth-child(odd) {
		border-right: 1px solid var(--green);
	}
	.grid3.testimonials div:nth-child(odd) {
		border-right: 0 none;
	}
	.grid3.testimonials h2 {
		grid-area: 1 / 1 / 2 / 3;
	}
	.grid3.testimonials div.test-left {
		grid-area: 2 / 1 / 3 / 3;
		height: 10px;
		padding: 0;
	}
	.grid3.testimonials div.test-right {
		grid-area: 4 / 1 / 5 / 3;
		height: 10px;
		padding: 0;
	}
	.grid3.testimonials div {
		padding: 0 25px 0 26px;
	}
	.lifestyle video {
		width: 100%;
	}
	.something-here div {
		width: 98%;
		text-align: center;
	}
	footer input:not([type=submit]), footer textarea {
		line-height: 1.6em;
	}
}
@media only screen and (max-width: 840px) {
	.grid6 .img.worry-free h4 {
		transform: translate(-50%,80%);
	}
	.grid6 div.img.game h4 {
		font-size: 1.6rem;
	}
	.owl-carousel.life1 div.owl-item.active,
	.owl-carousel.life2 div.owl-item.active,
	.owl-carousel.life1 .owl-item img,
	.owl-carousel.life2 .owl-item img {
		width: 100%;
	}
}
@media only screen and (max-width: 780px) {
	#mobile-header {
		top: 6px;
	}
	header h1 {
		font-size: 5.5rem;
	}
	.villas .grid {
		grid-template-columns: repeat(1,minmax(0,1fr));
	}
	.grid .items-center {
		padding: 0 1rem;
	}
	.pt {
		padding-top: 12rem;
	}
	.grid6 p span {
		margin-bottom: 25px;
		line-height: 1em;
	}
	form.fancy-form label {
		font-size: 140%;
	  }
	  div.row.submit {
		  text-align: center;
	  }
	  input[type=submit].g-recaptcha {
		   width: 90%;
		   padding: 10px 0;
		 }
	footer header img {
		width: 50%;
	}
}
@media only screen and (max-width: 680px) {
	.experience h2 {
		font-size: 2.6rem;
	}
	.grid3.testimonials h2 {
		font-size: 4.5rem;
	}
	.grid6 p {
		font-size: 2.6rem;
	}
	.grid6 .img.worry-free h4 {
		transform: translate(-50%,50%);
	}
	.lifestyle .main .flex div {
		width: 98%;
	}
	.villas .main .flex.details div {
		width: 100%;
	}
}
@media only screen and (max-width: 610px) {
	#mobile-header {
		top: 0;
	}
	header p {
		font-size: 6rem;
	}
	.divider {
		margin: 80px 0 30px 0;
	}
	.divider img {
		width: 5%;
	}
	.divider hr {
		flex: 0 1 45%;
	}
	.grid1,
	.grid2 {
		grid-template-columns: 100%;
		grid-template-rows: auto;
	}
	.primary {
		grid-area: 1 / 1 / 2 / 2;
	}
	.grid1 p {
		grid-area: 2 / 1 / 3 / 2;
	}
	.quick-move {
		grid-area: 3 / 1 / 4 / 2;
	}
	.home h1 {
		font-size: 1.8rem;
		line-height: 1.4em;
	}
	.grid1 ul {
		margin-top: 0;
	}
	.grid2 h2 {
		font-size: 2.12rem;
		grid-area: 1 / 1 / 2 / 2;
	}
	.grid3,
	.grid4 {
		grid-template-columns: 100%;
	}
	.grid3.testimonials {
		grid-template-columns: 50%;
	}
	.grid3 div:nth-child(odd),
	.grid4 div:nth-child(odd) {
		border: 0 none;
	}
	.grid6 {
		grid-template-columns: 100%;
		grid-template-areas:
		"top"
		"wf"
		"fun"
		"buy"
		"game"
		"community"
	}
	.grid6 .game {
		top: -8px;
	}
	.grid6 .community {
		top: -12px;
	}
	.grid6 .img h4,
	.grid6 div.img.game h4 {
		font-size: 2.7rem;
	}
}
@media only screen and (max-width: 540px) {
	h2 {
	font-size: 2rem;
	}
	.lifestyle h2.script,
	.something-here h2 {
		font-size: 3.6rem;
	}
	footer header img {
		width: 80%;
	}
}
@media only screen and (max-width: 480px) {
    .span_1_of_12, .span_2_of_12, .span_3_of_12, .span_4_of_12, .span_5_of_12, .span_6_of_12, .span_7_of_12, .span_8_of_12, .span_9_of_12, .span_10_of_12, .span_11_of_12, .span_12_of_12 {
		width: 100%;
	}
	#banner {
		font-size: 1rem;
	}
	#banner img {
		height: 13px;
	}
	header h1 {
		font-size: 3.5rem;
	}
	header p {
		font-size: 4.5rem;
	}
	header section {
		background-size: 130%;
		background-position-x: -25px;
	}
	.grid3.testimonials {
		grid-template-columns: 100%;
	}
	.grid3.testimonials div:nth-child(4) {
		border: 0 none;
	}
	.grid3.testimonials h2 {
		grid-area: 1 / 1 / 2 / 2;
	}
	.grid3.testimonials div.test-left {
		grid-area: 2 / 1 / 3 / 2;
		height: 1px;
	}
	.grid3.testimonials div.test-right {
		grid-area: 4 / 1 / 5 / 2;
		height: 1px;
	}
	.grid6 .img h4,
	.grid6 div.img.game h4 {
		font-size: 2rem;
	}
}
@media only screen and (max-width: 400px) {
	#banner {
		height: 50px;
	}
}

/* ==========================================================================
   Helper classes
   ========================================================================== */
.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    *text-indent: -9999px;
}
.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}
.hidden {
    display: none !important;
    visibility: hidden;
}
.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}
.invisible {
    visibility: hidden;
}
.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}
.clearfix:after {
    clear: both;
}
.clearfix {
    *zoom: 1;
}
.note {
	font-size: 80%;
	font-style: italic;
}
/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
