/*
   Elements.css by Joshua Gatcke	
*/

/*---------------------------------
   GENERAL
   -----------------------------------*/
html, body {-webkit-text-size-adjust: 100%;}

body{
    margin:0;
    padding:0 0 0 0;
    color:#627582;
    background:#f0f0f0;
    font:normal 0.9em/1.5 'Lato', arial, verdana, sans-serif;
    text-shadow: 0 0 1px transparent; /* google font pixelation fix */
}

*{-webkit-font-smoothing: antialiased;}

.page-wrap{
    width:100%;
    transition: -webkit-filter 0.5s ease;
}

.content-wrap{
    background:#f0f0f0;
    position:relative;
    z-index:20;
    padding-top:84px;/* height of nav bar */
    padding-bottom:5%;
    width:100%;
    border-top:1px solid #f0f0f0;
    overflow:hidden;
}

section{
    position:relative;
    margin:0 auto;
    padding:5% 0;
    z-index:20;
}

/*---------------------------------
   OVERLAY
   -----------------------------------*/
#overlay{
    position:fixed;
    bottom:0;
    left:0;
    width:100%;
    height:0%;
    overflow: hidden;
    z-index:500;
    transition: all 0.5s ease;
    -webkit-backface-visibility:hidden;
    -webkit-transform: translateZ(0);
    -webkit-overflow-scrolling: touch;
    background:#f0f0f0;
}
#overlay.open{
    height:100%;
}

#overlay.closed{
    height:0;
}

#overlay .inner{
    position: absolute;
    top:0%;
    left:0;
    width:100%;
    height:100%;
    padding:5% 0;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    -webkit-backface-visibility:hidden;
    -webkit-transform: translateZ(0);
    transition: all 0.3s ease;
}

/*---------------------------------
   HTML ELEMENTS
   -----------------------------------*/
*{
    -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;    /* Firefox, other Gecko */
    box-sizing: border-box;         /* Opera/IE 8+ */
}
a{color:inherit;outline:0;}
a:active{color:inherit;}
a:visited{}
a:hover{}
a img{border:0;}
a [class^="icon-"]{color:inherit;text-decoration:none;}
strong,b{color:3e5363;font-weight:bold;}
strike{}
em{ color:#0bbbd7;}

.hide {
    display: none;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}
.hide-offscreen{left:-9999px;}
.show{display:block !important;}
.hidden{visibility:hidden;}
.hidden.animated{visibility:visible;}
.blur{-webkit-filter:blur(10px);filter:blur(10px);}

/*---------------------------------
   UTILITY
   -----------------------------------*/
.center{text-align:center;}
.left{text-align:left;}
.right{text-align:right;}

/*---------------------------------
   HR
   -----------------------------------*/
hr{clear:both;border-bottom:0;border-top:1px solid #cdd4d9;border-right:0;border-left:0;margin:30px 0;min-height: 0;height:2px;text-align:center;}
hr:after{content:url(../img/logo-waves-grey.png);display:inline-block;position:absolute;top:unset;background:#f0f0f0;padding:0 20px;transform:translateX(-50%) translateY(-50%)}
hr.alt1{border-style: solid;}
hr.alt2{border-style: dashed;}

/*---------------------------------
   HTML5 ELEMENTS (shim)
   -----------------------------------*/
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display:block;
}

/*---------------------------------
   HEADINGS
   -----------------------------------*/
h1,h2,h3,h4,h5,h6{
    font-weight:300;
    line-height:1.2;
    color:#006275;
}

h1{
    font-size:3em;
    margin:10px 0 10px 0;
}

h2{
    font-size:2.5em;
    margin:1em 0;
}

h2+h3{
    color:#88949c;
    font-size:1.2em;
    font-weight: 400;
    margin-top:-1.5em;
    margin-bottom:4%;
}

h3{
    font-size:1.2em;
    margin:1em 0;
    line-height:130%;
}

h4{
    font-size:1em;
    margin:1em 0;
    font-weight:bold;
}

h5{
    font-size:1em;
    margin:1em 0;
    font-weight:normal;
}

h6{
    font-size:1em;
    margin:1em 0;
    font-weight:normal;
}

/*---------------------------------
   PARAGRAPHS
   -----------------------------------*/
p{
    margin:10px 0;
}

/*---------------------------------
   BLOCKQUOTES
   -----------------------------------*/
blockquote{
    font-size:1.5em;
    line-height:1.5em;
    font-style: normal;
    margin:30px 30px 30px 0;
    padding:0;
}

blockquote span,
blockquote cite{font-size:0.7em;display:block;}
blockquote.small{font-size:1.2em;}

/*---------------------------------
   LISTS
   -----------------------------------*/
ul, ol{
    padding:0;
    margin:0 0 20px 25px;
}

li{
    padding:5px 0;
    margin:0;
}

/*---------------------------------
   TABLES
   -----------------------------------*/
table{width:100%;margin:0 0 10px 0;text-align:left;border-collapse: collapse;}
thead, tbody{margin:0;padding:0;}
th, td{padding:7px 10px;font-size:0.9em;border-bottom:1px dotted #ddd;text-align:left;}
thead th{font-size:0.9em;padding:3px 10px;border-bottom:1px solid #ddd;}
tbody tr.last th,
tbody tr.last td{border-bottom:0;}

img{
    margin:0;
    padding:0;
    display:inline-block;
    position:relative;
    zoom:1;
    vertical-align: bottom;
}

img.align-left, .img.align_left, .align-left, .align_left{float:left;margin:0 10px 5px 0;}
img.align-right, .img.align_right, align-right, .align_right{float:right;margin:0 0 5px 10px;}
img.align_center, .align_center{margin:auto;display:inline-block;}
img.full-width{clear:both;display:block;width:100%;height:auto;margin:0 0 10px 0;}

/*---------------------------------
   MENU(s)
   -----------------------------------*/
[class*="menu-"]{
    margin:0.5px;
    padding:0;
    display:inline-block;
    vertical-align: middle;
    line-height:1.1;
    white-space: nowrap;
}

[class*="menu-"] *{
    transition: all 0.5s ease;
}

[class*="menu-"] li{
    position:relative;
    margin:0;
    padding:0;
    display:inline-block;
    list-style-type:none;
    white-space: normal;
    vertical-align:middle;
}

[class*="menu-"] li.parent > a:after{
    content:"\f078";
    font-family:'FontAwesome';
    position:relative;
    font-size:12px;
    margin-left:5px;
    top:-2px;
}

[class*="menu-"] li a{
    display:block;
    text-decoration:none;
    padding:31px 10px;
}

[class*="menu-"] li.divider{
    padding:0;
    margin:10px 0;
    border-top:1px solid #ddd;
}

/* submenu */
[class*="menu-"] li:hover ul{ opacity:1;max-height:500px;}
[class*="menu-"] ul{
    position:absolute;
    top:100%;
    left:0;
    min-width:250px;
    max-width:350px;
    max-height:0;
    margin:0;
    padding:0;
    /*border:1px solid #ddd;*/
    background:#fff;
    box-shadow:0px 5px 10px rgba(0,0,0,0.3);
    font-size:13px;
    overflow:hidden;
    opacity:0;
}

[class*="menu-"] ul li:first-child{
    margin-top:10px;
}

[class*="menu-"] ul li:last-child{
    margin-bottom:10px;
}

[class*="menu-"] li.parent:after{
    content:"";
    position:absolute;
    bottom:-9px;
    left:10px;
    width: 0;
    height: 0;
    border-left:  10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom:10px solid #fff;
    transition: all 0.5s ease;
    opacity:0;
}

/* arrow on show effect */
[class*="menu-"] li.parent:hover:after{
    bottom:0;
    opacity:1;
}

[class*="menu-"] ul li{
    display:block;
}

[class*="menu-"] ul li:hover{
    background:rgba(0,0,0,0.05);
}

[class*="menu-"] ul li a{
    padding:5px 35px 5px 10px;
    text-transform: none;
    color:#777;
}

/* icon */
[class*="menu-"] ul .fa{
    margin-right:3px;
    color:#ccc;
}

/* hover effect */
[class*="menu-"] ul li a:hover .fa{
    margin-right:15px;
    color:#5f9ca8;
}


/* MENU-RIGHT */
[class*="menu-"] li.menu-right ul{
    left:auto;
    right:0;
}

[class*="menu-"] li.parent.menu-right:after{
    left:auto;
    right:10px;
}

/*---------------------------------
   BUTTONS
   -----------------------------------*/
button,.button{
    display:inline-block;
    outline: none;
    border:1px solid transparent;
    color:#fff;
    font-style: italic;
    font-weight: 700;
    font-size:16px;
    background:#c65e02;
    padding:1em 4em;
    margin:0px 0 15px 0;
    text-decoration: none;
    white-space: nowrap;
    transition: all 0.5s ease;
    transform: scale(1,1);
    max-width:100%;
    cursor: pointer;
}


.button.alt,
button.alt{background:#006275;}
.button.alt2,
button.alt2{background:#c1c9ce;}
.button.plush,
button.plush{padding:2em 4em;}
.button.fw,
button.fw{width:100%;}
.button.small,
button.small{padding:0.5em 2em;font-size:14px;}

.button:hover{
    transform: scale(1.1,1.1);
    z-index:100;
}

.button-text{
    display:inline-block;
    outline:none;
    font-size:16px;
    white-space: nowrap;
    text-decoration:none;
    padding:0.5em 2em;
    border:1px solid transparent;
    transition: all 0.5s ease;
    max-width:100%;
}

.button-text:hover{
    border:1px solid #fff;
    transform: scale(1.1,1.1);
}

button:not(.close-modal):after,
.button:after,
.button-text:after{
    content:"\f054";
    font-family:'FontAwesome';
    margin-left:15px;
    font-style:normal;
    transition: all 0.5s ease;
    position:relative;
    left:0;
}

a.button.phone:after{
    content: "\f095";
    font-family: 'FontAwesome';
    margin-left: 15px;
    font-style: normal;
    transition: all 0.5s ease;
    position: relative;
    left: 0;
}
/*@media(min-width:801px){
    .button.mobile-menu-cta {
        display:none;
    }
}*/

/* arrow hover effect */
button:hover:after,
.button:hover:after,
.button-text:hover:after{
    left:10px;
}

/*---------------------------------
   BADGE
   -----------------------------------*/
.badge{
    display:block;
    background:#b50026;
    position:absolute;
    top:-7px;
    left:-7px;
    width:18px;
    height:18px;
    border-radius:200em;
    line-height:1;
    padding:2px;
    font-weight: bold;
    font-style: normal;
    font-size:11px;
    border:2px solid #5f9ca8;
    color:#fff;
    text-align:center;
    font-family:sans-serif;
}

/*---------------------------------
   CARDS & COVERS
   -----------------------------------*/
.card{
    height:350px;
    background:#fff;
    transition: transform 0.5s ease, box-shadow 0.5s ease;
    margin-bottom:25px !important;
    position:relative;
    z-index:50;
}

.card img{max-width:100%;width:100%;height:auto;}
.card a{text-decoration:none;}
.card h3{margin:15px 5% 0 5%;text-transform: uppercase;font-size:1.1em;font-weight: 400;}
.card p{margin:0 7%;color:#627582;line-height:1.3;}
.card .details{position:absolute;left:0;bottom:0;width:100%;line-height:1.1;text-align:left;border-top:1px solid #eaedef;padding:5px 7%;display:block;z-index:50;}
.detail{display:inline-block;padding:0 5px;text-align:center;color:#627582;font-size:1.3em;}
.detail small{display:block;font-size:11px;text-transform: uppercase;color:#777 !important;font-weight: normal;}
.detail.price{float:right;color:#006275;}
.detail.lot{display:block;text-align:left;line-height:1;clear:both;border-bottom:1px solid #efefef;text-align:center;
			padding:0 10px 5px 10px;margin:0 -7% 5px -7%;white-space: nowrap;overflow:hidden;}
.price{position:relative;}
.card .type,
.card .status{display:inline-block;background:#c65e02;color:#fff;font-size:12px;text-align:center;padding:3px 10px;
			  margin:0 -2px -1.5em -2px;position:relative;top:-1em;left:0;z-index:500;}
.card .status{background:#006275;}
.card.sold .status{background:#b50026;}
.card.sale-pending span.status {
    background: #b50026;
}

.card:hover{
    /*transform: scale(1.05,1.05);*/
    box-shadow:0px 0px 20px rgba(0,0,0,0.3);
    z-index:100;
}

/* favorite(d) card */
.card.selected{
    box-shadow:0px 0px 10px rgba(0,0,0,0.1);
}

/* heart animation */
.card .fav{
    position:absolute;
    top:5px;
    right:10px;
    color:#fff;
    z-index:200;
}

.fav{
    display:inline-block;
    padding:2px;
    font-size:14px;
    text-decoration:none;
    position:relative;
    overflow:hidden;
}

/* fav heart */
.fav:before{
    content:"\f08a";
    font-family:'FontAwesome';
    margin-right:5px;
}

.fav:hover:before{
    content:"\f004";
}

.fav.selected{
    overflow:visible;
}

.fav.selected:before{
    content:"\f004";
    color:#b50026;
    text-shadow:0px 1px 0px #fff, 0px -1px 0px #fff, 1px 0px 0px #fff, -1px 0px 0px #fff;
}

/* heart animation */
.fav:after{
    content:"\f004";
    font-family:'FontAwesome';
    color:#fff;
    position:absolute;
    top:-1000px;
    left:2px;
    transition: opacity 1s ease, transform 1s ease;
    opacity:1;
}

.fav.selected:after{
    transform: scale(3,3);
    opacity:0;
    color:#b50026;
    top:2px;
}

.card .address{
    position:absolute;
    top:100%;
    left:0;
    font-size:12px;
    color:#b4b4b4;
    width:100%;
    padding:5px;
    white-space: nowrap;
    line-height:1;
    text-overflow: ellipsis;
    overflow:hidden;
    z-index:10;
}

.price{/*see above*/cursor: pointer;}
.price .fa{margin-left:5px;}
.price:hover .currencies-pop{display:block;}
.currencies-pop{
    display:none;
    position:absolute;
    top:100%;
    right:0;
    background:#fff;
    width:200px;
    border:1px solid #d8dde0;
    box-shadow:0px 3px 50px rgba(0,0,0,0.2);
    border-radius:5px;
    padding:5px 0;
    overflow:hidden;
    margin:0;
    font-size:12px;
    line-height:1;
    text-align:right;
}

.currencies-pop li{
    list-style-type:none;
    margin:0;
    padding:5px 10px;
    display:block;
    border-bottom:1px solid #efefef;
}

.currencies-pop li strong{
    color:#999;
    text-transform:uppercase;
    display:inline-block;
    margin-left:5px;
    font-weight:normal;
}

.currencies-pop li.note{font-size:0.9em;border:0;color:#777;}

.cover{
    height:350px;
    overflow:hidden;
    cursor:pointer;
    margin-bottom:15px !important;
    position:relative;
}

.cover *{
    transition: all 0.5s ease;
}

.cover img{
    position:absolute;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
    width:auto;
    min-width:100%;
    max-width:none !important;
    height:100% !important;
    z-index:10;
}

.cover:hover img{transform: translate(-50%,-30%) scale(1.5);}
.cover:hover:after{background:rgba(0,0,0,0.7);}
.cover:hover .content{transform: translate(-50%,-50%);}
.cover:hover .content .button-text{border:1px solid #fff;}

.cover:after{
    content:"";
    transition: all 0.5s ease;
    background:rgba(0,0,0,0.5);
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index:20;
    cursor:pointer;
}

.cover .content{
    position:absolute;
    top:50%;
    left:50%;
    transform: translate(-50%,-30%);
    width:100%;
    z-index:30;
    padding:20px 15%;
}

.cover h3{color:#fff;font-weight:400;}
.cover p{color:#fff;}
.cover .button-text{font-style:italic;color:#fff;margin-top:30px;}

/* effect */

/*---------------------------------
   MOBILE NAV
   -----------------------------------*/
#mobile-nav-toggle{
    color:#fff;
    font-size:24px;
    text-decoration:none;
    display:none;
}

#mobile-nav{
    background:#006275;
    color:#fff;
    padding-top:62px;
    position: fixed;
    top:0;
    right:-100%;
    width:80%;
    max-width:380px;
    height:100%;
    z-index:500;
    transition: all 0.5s ease;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.3);
    z-index:1000;
}

#mobile-nav.open{
    display:block;
    right:0;
}

#mobile-nav-close{
    position:absolute;
    top:0;
    right:0;
    padding:10px 20px;
    color:#fff;
    text-decoration:none;
    font-size:24px;
    z-index:1000;
}

#mobile-nav .inner{
    position: absolute;
    overflow:scroll;
    top:0;
    left:0;
    width:100%;
    height:100%;
    padding:62px 0 0 0;
    -webkit-overflow-scrolling: touch;
    z-index:10;
}

#mobile-nav ul{
    margin:0;
    padding:0;
}

#mobile-nav li{
    list-style-type:none;
    margin:0;
    padding:0;
    display:block;
    width:100%;
}

#mobile-nav li a{
    color:#fff;
    text-decoration:none;
    display:block;
}

#mobile-nav .inner > ul > li > a{
    border-top:1px solid #0e7689;
    border-bottom:1px solid #0e7689;
    margin-bottom:-1px;
    padding:10px 20px;
    font-weight:bold;
}

/* submenus */
#mobile-nav ul ul{
    background:#005769;
    margin-top:1px;
    padding:10px 20px;
}

#mobile-nav li a i{
    color:#1d92a7;
}

/*---------------------------------
   EXPANDER
   -----------------------------------*/
.expander{}

.expander-title{
    border-top:1px solid #d8dde0;
    border-bottom:1px solid #d8dde0;
    padding:10px 7%;
    margin:-1px 0 0 0;
    color:#8596a1;
    text-transform: uppercase;
    font-weight:normal;
}

.expander-title i{margin-right:5px;}

.expander-content{}
.expander-content.padded{padding:5% 7%;}

/*---------------------------------
   SLIDESHOW
   -----------------------------------*/
.slideshow-holder{
    position:relative;
}

.slideshow-holder .zoom {
	display: none;
}

.slideshow-holder.grande .zoom {
display: block;
    cursor: pointer;
    right: 5px;
    line-height: 1;
    margin-top: -1em;
    padding: 10px 3px;
    position: absolute;
    text-align: center;
    top: 15px;
    width: 20px;
    z-index: 500;
}
.slideshow-holder.grande .zoom::before {
	color: #fff;
	content: "\f00e";
	font-family: "FontAwesome";
	font-size: 14px;
}

.zoom-modal {
	background-color: rgba(0, 0, 0, 0.8);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	bottom: 0;
	display: none;
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 2147483647;
}
.zoom-close {
	cursor: pointer;
	right: 0;
	line-height: 1;
	margin-top: -1em;
	padding: 10px 3px;
	position: absolute;
	text-align: center;
	top: 10px;
	width: 20px;
	z-index: 500;
}
.zoom-close::before {
	color: #fff;
	content: "";
	font-family: "FontAwesome";
	font-size: 14px;
}

.slideshow{
    margin:0;
    padding:0;
    background:#cdd4d9;
    position:relative;
    -webkit-transform-style: preserve-3d;
	-moz-transform-style: preserve-3d;
	transform-style: preserve-3d;
}

/*Slideshow graceful loading*/

.slideshow.large{
	visibility:hidden;
	opacity:0;
	transition: opacity 1s;
}

.slideshow.large.slick-initialized{
	visibility:visible;
	opacity:1;
}

.slideshow.large li{
	display:none ;
	max-height:650px;
}

.slideshow.large li:first-child{
	display:block; visibility:hidden;
}

.slideshow.large.slick-initialized li{
	display:block;visibility:visible!important;
}

/*Slideshow graceful loading*/

.slideshow *{
    outline:0;
}

.slideshow li{
    margin:0;
    padding:0;
    list-style-type:none;
    position:relative;
    background-color: black;
    -webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	backface-visibility: hidden;
}

.slideshow .loader{
    width:30px;
    height:30px;
    position:absolute !important;
    z-index:50;
}

.slideshow li img{
    width:auto;
    height:auto;
    /* max-width:100%; */
    position:relative;
    z-index:200;
    margin: 0 auto;
	/* height:700px; */
}

.slideshow [class*="arrow-"]{
    position:absolute;
    left:0;
    top:50%;
    padding:10px 3px;
    margin-top:-1em;
    line-height:1;
    cursor: pointer;
    text-align:center;
    width:20px;
    z-index:1;
}

.slideshow.large [class*="arrow-"]{
    padding: 17px 3px;
    background: #006174;
    width: 30px;
    height: 50px;
    z-index:1000;
}

.slideshow [class*="arrow-"]:before{
    content:'\f104';
    font-family: 'FontAwesome';
    font-size:14px;
    color:#fff;
}

.slideshow .arrow-next{
    left:auto;
    right:0;
}

.slideshow .arrow-next:before{
    content:'\f105';
}

.slidethumbs{
    margin:-1px 0 0 0;
    padding:0;
    background:#222;
}


.slidethumbs{
	visibility:hidden;
	opacity:0;
	transition: opacity 1s;
}

.slidethumbs.slick-initialized{
	visibility:visible;
	opacity:1;
}

.slidethumbs li{
	display:none ;
}

.slidethumbs li:first-child{
	display:block; visibility:hidden;
}

.slidethumbs.slick-initialized li{
	display:block;visibility:visible!important;
}


.slidethumbs li{
    margin:0;
    padding:0;
    list-style-type:none;
    position:relative;
}

.slidethumbs li:after{
    content:"";
    display:block;
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.4);
    z-index:2;
    transition: all 0.5s ease;
}

.slidethumbs li.slick-current:after{
    background:rgba(0,0,0,0);
}

.slidethumbs li img{width:100%;height:auto;}

.slideshow.small li{display:none;}
.slideshow.small li:first-child{display:block;opacity:1 !important;}
.slideshow.small li.slide-fixed{opacity:1 !important;}
.slideshow.small li.slick-slide{display:block;}

/*---------------------------------
   AVATAR
   -----------------------------------*/
.avatar,
a.avatar{
    transition: all 0.5s ease;
    position:relative;
    border-radius:200em;
    border:4px solid #cdd4d9;
    overflow:hidden;
    text-decoration: none;
    display:inline-block;
}

.avatar img{
    width:100%;
    height:auto;
}

a.avatar:hover{
    transform: scale(1.1,1.1);
}

cite{
    color:#91a6b6;
    font-size:12px;
    font-style: italic;
    display:block;
    line-height:1.3;
    margin-top:10px;
}

/*---------------------------------
   ELEMENTS
   -----------------------------------*/
.elements{}
.elements section:first-child{padding-bottom:0;}
.elements section + section{padding-top:0;}
.element-heading{padding-bottom:0;}
.element-list_properties{padding-top:0;}

/*---------------------------------
   BANNER
   -----------------------------------*/
.banner{position:relative;}
.banner img{width:100%;height:auto;position:relative;z-index:1;}
.banner:after{content:"";display:block;position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.3);z-index:2;}

.banner .content:before{
    content: url(../img/logo-waves-white.png);
    display:block;
    margin-bottom:10px;
}

.banner .content{transform: translate(-50%,-50%);position:absolute;top:50%;left:50%;text-shadow:0px 0px 10px rgba(0,0,0,0.5);z-index:3;}
.banner h3{color:#fff;font-weight:400;margin:0;text-transform: uppercase;font-size:1.5em;letter-spacing:2px;}
.banner p{color:#fff;margin:0;font-weight:bold;}

/*---------------------------------
   EMAIL SIGNUP
   -----------------------------------*/
.element-email_signup{}
.element-email_signup form{
    margin:0;
    padding:5% 0;
    background:#dbe1e5;
    border:1px solid #dbe1e5;
    text-align:center;
}

.element-email_signup h2{margin-top:0;}
.element-email_signup input{
    font-size:16px;
    padding:15px;
    width:40%;
    line-height:1.2;
    border:1px solid #cdd4d9;
}

.element-email_signup.popover{
    display:none;
}

/* popup version */
.featherlight-content .element-email_signup.popover{margin:0;padding:0;max-width:100%;}
.featherlight-content .element-email_signup.popover .grid{padding:0;}
.featherlight-content .element-email_signup.popover form{padding:5%;}
.featherlight-content .element-email_signup.popover input{width:100%;margin-bottom:10px;}

/*---------------------------------
   ELEMENT CONTENT
   -----------------------------------*/
.element-content h3{font-weight:400;font-size:1.5em;}
.element-content hr{margin:8% 0;}

/*---------------------------------
   CallOut
   -----------------------------------*/
.element-callout h3{font-size:2em;}
.element-callout h3 small{
    text-transform:uppercase;
    font-size:12px;
    display:block;
    line-height:1.2;
}
.element-callout .button{
    margin-top:30px;
}

/*---------------------------------
   FORMS
   -----------------------------------*/
form{
    text-align:left;
}

.formlightbox{
    padding:3%;
    background:#f0f0f0;
    width:100%;
    width:700px;
    max-width:100%;
    position:relative;
}

.formlightbox h3{
    background:#006275;
    padding:15px 10px 15px 10px;
    margin:-3% -3% 0 -3%;
    color:#fff;
    font-weight:400;
    font-size:1.2em;
    text-align:center;
}

.formlightbox .agent-header{
    text-align:center;
    border-bottom:1px solid #ddd;
    margin:-10px -15px 10px -15px;
    padding:0 0 10px 0;
}

.formlightbox .avatar{
    width:70px;
    height:70px;
}

.formlightbox .agent-name{
    display:block;
}

/* processwire overrides */
/*.Inputfield_user_info{display:none !important;}
   .Inputfield_listing_info{display:none !important;}*/
.InputfieldCheckbox .InputfieldHeader span{display:none !important;}

/*---------------------------------
   COMMENTS FORM
   -----------------------------------*/

.CommentList{
    margin:0 0 0 0;
    padding:0;
    background:#fff;
}

.CommentListItem{
    border-bottom:1px dotted #ddd;
    margin:0;
    padding:2% 60px 2% 5%;
    position:relative;
}

.CommentListHasGravatar .CommentHeader,
.CommentListNormal.CommentListHasGravatar .CommentText{
    margin:0;
}

img.CommentGravatar{
    position:absolute;
    top:20px;
    right:5%;
    left:auto;
    float:none;
    width:40px;
    height:40px;
}

.CommentListItem p{
    margin:0;
    padding:0;
}

.CommentHeader{}
.CommentCite{}
.CommentCreated{}

.CommentFooter{
    padding:0;
}
.CommentAction{}

#CommentForm{
    background:#eaeef0;
    padding:2% 5%;
    border:1px solid #ddd;
    margin-top:-1px;
}

#CommentForm input,
#commentForm textarea{
    width:100%;
}

#CommentForm label{

}

#CommentForm h2 {

}
#CommentForm label {

}
#CommentForm p {
    display:block;
    width:100%;
}

#CommentForm .error {
    background: #a30000;
    color: #fff;
    padding: 0.25em 0.5em;
}
#CommentForm .success {
    font-weight: bold;
}
.CommentForm_cite,
.CommentForm_email {

}
.CommentForm_cite input,
.CommentForm_email input {

}
.CommentForm_text {

}
.CommentForm_text textarea {

}

/*---------------------------------
   PAGINATION
   -----------------------------------*/

.MarkupPagerNav {
    clear: both;
    margin: 1em 0;
    font-family: Arial, sans-serif;
}
.MarkupPagerNav li {
    display: inline-block;;
    list-style: none;
    margin: 0;
}

.MarkupPagerNav li a,
.MarkupPagerNav li.MarkupPagerNavSeparator {
    display: block;
    padding:1em;
    line-height:1;
    color: #455765;
    background: #dbe1e5;
    font-size: 1em;
    text-transform: uppercase;
    text-decoration:none;
}

.MarkupPagerNav li.MarkupPagerNavOn a,
.MarkupPagerNav li a:hover {
    background: #006275;
    color:#fff;
    font-weight:bold;
    text-decoration: none;
}

.MarkupPagerNav li.MarkupPagerNavSeparator {
    display: inline;
}

/*---------------------------------
   LOADER
   -----------------------------------*/
.loader{
    position:fixed;
    top:50%;
    left:50%;
    width:100px;
    height:100px;
    border:3px solid #cdd4d9;
    border-radius:200em;
    background:#fff;
    z-index:500;
    overflow:hidden !important;
    transform:translate(-50%,-50%);
}

.loader .linner{
    position:absolute;
    overflow:hidden;
    height:100%;
    width:100%;
    display:block;
    border-radius: 200em;
}

.loader .wave-holder{
    position:absolute;
    top:90%;
    left:0;
    width:100%;
    height:100%;
    background:#21bcd3;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#21bcd3+0,1e5799+100 */
    background: rgb(33,188,211); /* Old browsers */
    background: -moz-linear-gradient(top, rgba(33,188,211,1) 0%, rgba(30,87,153,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(33,188,211,1) 0%,rgba(30,87,153,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(33,188,211,1) 0%,rgba(30,87,153,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#21bcd3', endColorstr='#1e5799',GradientType=0 ); /* IE6-9 */
    animation: fill 10s linear 0 alternate infinite;
}

.loader .wave-holder.alt{
    opacity:0.5;
}

.loader .wave{
    position:absolute;
    bottom:100%;
    left:0;
    width:100%;
    height:10%;
    background-image:url(../img/wave.png);
    background-repeat: repeat-x;
    background-position:0px 0px;
    background-size: 200% 100%;
    animation: flow 10s linear 0 normal infinite,
    flow2 8s ease 0 alternate infinite;
    animation-direction:normal;
}

.loader .wave.alt{
    animation: flowalt 10s linear 0 normal infinite,
    flow2 7s ease 0 alternate infinite;
}

@keyframes flow {
    0%{background-position:0px 0px;}
    100%{background-position:-300px 0px;}
}

@keyframes flowalt {
    0%{background-position:0px 0px;}
    100%{background-position:500px 0px;}
}

@keyframes flow2 {
    0%,100%{height:10%;}
    50%{height:25%;}
}

@keyframes fill {
    0%{top:90%;}
    100%{top:25%;}
}


/* @media screen and (orientation:portrait) { */
/*      .slideshow.large li img { */
/*          max-width:100%; */
/*      } */

/*      .slideshow.large li.portrait img { */
/*          height:50%; */
/*      } */

/* } */

@media only screen and (max-width: 300px){
    	.slideshow.large li{
		    height:200px;
	    }
}

@media only screen and (max-width: 699px){

    .slideshow.large li img {
	    max-width: unset;
        transform: translateX(-50%);
        left: 50%;
        height:100%;
        margin:0;
    }

    .slideshow.large li img.portrait {
	    max-width:unset;
        height:100%;
    }


	.slideshow.large li{
		height:300px;
	}
}



@media only screen and (min-width: 700px){
	.slideshow.large li{
		max-height:350px;
	}
}


@media only screen and (min-width: 800px){
	.slideshow.large li{
		max-height:400px;
	}
}

@media only screen and (min-width: 900px){
	.slideshow.large li{
		max-height:450px;
	}
}

@media only screen and (min-width: 1000px){
	.slideshow.large li{
		max-height:550px;
	}
}

@media only screen and (min-width: 1200px){
	.slideshow.large li{
		max-height:650px;
	}
}

dialog{
    border:0;
    padding:0;
}

dialog::backdrop{
    background: rgba(0, 0, 0, 0.81);
}

button.close-modal{
    background: transparent;
    position: absolute;
    top: 10px;
    right: 16px;
    color: white;
    border: 0;
    font-size: 25px;
    transform: none;
    margin: 0;
    padding: 0;
    position: absolute;
}

button.close-modal.dark{
    color: #222;
}

.menu-cta-wrapper{
    margin-left:auto;
}


.button.menu-cta{
    margin: 0 20px 0 0;
    margin-right:250px;
}


@media(max-width:1580px){
    .button.menu-cta{
        position:absolute;
        padding: 5px 10px;
        font-size:12px;
        top:0;
        right:50px;
    }
}
@media(max-width:800px){
    .button.menu-cta.small{
        margin-right:30px;
        padding:8px 8px;
    }
}

