/* --- overrides --- */
body,button,input,select,textarea{font-family:'Open Sans',sans-serif;font-size:15px;line-height:1.3em}body{background:#fff}a{color:#27aade}a:hover{color:rgba(41,131,197,.75)}p{line-height:2em;font-weight:normal !important;color:#777777;}h1,h2,h3,h4,h5,h6{font-family:'Open Sans',sans-serif;color:#0a0a0a;text-transform:capitalize}h1,h2{font-size:2.5em;line-height:1.3em}label{display:inline}

#page {width: 100%; margin: 0 auto; max-width: 1920px;}

/* --- adjustments --- */
.defeat-15px-left { padding-left: 0; margin-left: 0; }
.defeat-15px-right{ padding-right: 0; margin-right: 0; }
.defeat-15px-both { padding-left: 0; margin-left: 0; padding-right: 0; margin-right: 0; }
.section-pad-25 {padding:25px 0;}

/* --- containers & blocks --- */
@media screen and (min-width: 1600px) {
	.container { width: 1670px !important; }
}
@media screen and (max-width: 1600px) and (min-width: 1200px) {
	.container { width: 100%; /* margin: 0 auto; */ }
}

section {padding: 5% 0;}
.section-nopad {padding: 0; border:0;}
.padtop-50 {margin-top:50px;}

.no-margin {margin:0;}
.no-pad {padding:0;}
.no-pad-margin {padding:0;margin:0;}

.basic-flex-row {display: flex; flex-flow: row wrap;}
.price-note {
    background: gainsboro;
    text-align: center;
    text-transform: capitalize;
    padding: 10px;
	margin-bottom: 15px;
}


.popup-form { padding: 50px;}


.line-right {border-right: solid 1px #27aade;}


a.header-support-btn { font-size: 19px; background: #a6d157; color: #fff; padding: 5px 15px; white-space: nowrap; }
a.header-support-btn:hover { text-decoration: none; background: #89be3a; }

.menu-finder .filter#location { width: 100%; }
.menu-finder .filter select { font-size: 14px; }
.menu-finder .home-search-filters { margin: 10px 0; }
.menu-finder .home-search-filters input[type="submit"] { margin-top: 25px; }
.menu-finder .fp-search-spinner { display:none; }

.qminav-container {display: flex; flex-flow: row wrap; justify-content: space-between; font-size: 18px; line-height: 1.3em; text-transform: uppercase;}
.qminav {width: 33%;}
.qminav a {text-decoration: none;}
.qminav-thumb {height: 180px; overflow: hidden; margin-bottom: 8px; position: relative;}
.qminav-thumb img {width: 100%; height: auto;}
.qminav-thumb #flag {position: absolute; right: 15px; top: 10px; background: #ffe751; padding: 5px 8px; color: #636466; line-height: 1em;}
.qminav-specs {display: flex; flex-flow: row wrap;}
.qminav-specs label {font-size: .8em; display: inline; font-weight: 500;}
.qminav-specs div {margin-right: 10px;}
.qminav-postdate {font-size: .8em;}
.qminav-price {font-weight: 600;}

/* --- header v3 --- */


.m-header-menu {padding: 0 25px; flex-basis: 384px; flex-grow: 1;}


.menu-fat-btn a { display: block; padding: 20px 15px; text-align: center; width: 100%; background: #27aade; color: #fff; }
.menu-fat-btn a:hover { background:#2983c5; text-decoration:none; }


/* --- turn radio into button --- */
.switch-field { overflow: hidden; display: flex; flex-flow: row wrap; justify-content: center; }
.switch-title { margin-bottom: 6px; }
.switch-field input { position: absolute !important; clip: rect(0, 0, 0, 0); height: 1px; width: 1px; border: 0; overflow: hidden; }
.switch-field label { float: left; }
.switch-field label { display: inline-block; background-color: #e4e4e4; color: rgba(0, 0, 0, 0.6);
  font-size: 14px; font-weight: normal; text-align: center; padding: 6px 14px; border: 1px solid rgba(0, 0, 0, 0.2);
  -webkit-transition: all 0.1s ease-in-out;
  -moz-transition:    all 0.1s ease-in-out;
  -ms-transition:     all 0.1s ease-in-out;
  -o-transition:      all 0.1s ease-in-out;
  transition:         all 0.1s ease-in-out; }
.switch-field label:hover { cursor: pointer; }
.switch-field input:checked + label { background-color: #27aade; color: #fff; }
.switch-field label:first-of-type { border-radius: 4px 0 0 4px; }
.switch-field label:last-of-type { border-radius: 0 4px 4px 0; }

/* --- search filters --- */
.filter-row {padding: 25px 0; text-align: left;}
.filter-row label {display: initial; font-size: 30px; font-weight: 600; color: #27aade;}
.search-filter-row .filter-row {padding: 0; text-align: center;}
.search-filter-row .filter-row label { color: #636466; }

/* --- typography --- */
.danify {text-align: justify}

.shout .section-header {text-align: center;}

/* --- contact page maps --- */
.office-location h3 {font-size: 30px; margin-top: 15px;}
.map-caption {text-align: right; color: #696969; font-size: 18px;}
.office-location ul {list-style-type: none;}

/* --- lifestyle sections --- */
.pic-on-left, .pic-on-right {position: relative; max-height: 420px; overflow: hidden;}
.pic-on-left a, .pic-on-right a { display: block; }
.pic-on-left img, .pic-on-right img {margin-top: -5%;}
.fade-to-left, .fade-to-right {position: absolute; /* background: chartreuse; */ width: 100%; height: 100%;}
.fade-to-left{
  /*-webkit-box-shadow: inset -150px 0px 125px -52px rgba(255,255,255,1);
    -moz-box-shadow: inset -150px 0px 125px -52px rgba(255,255,255,1);
    box-shadow: inset -150px 0px 125px -52px rgba(255,255,255,1); */ }
.fade-to-right {
  /*-webkit-box-shadow: inset 150px 0px 125px -52px rgba(255,255,255,1);
    -moz-box-shadow: inset 150px 0px 125px -52px rgba(255,255,255,1);
    box-shadow: inset 150px 0px 125px -52px rgba(255,255,255,1); */}
.section-lifestyle {padding: 0; border: 0; display: flex; flex-flow: row wrap; align-items: center; margin-bottom: 0; border-bottom: solid 1px #ccc; }
.copy-on-left{ padding-left: 50px !important; padding-right: 25px; }
.copy-on-right { padding-right: 50px !important; padding-left: 25px; padding-top: 25px;}
.section-amenities-full, .section-contact-full { padding: 50px; }

.energy-insert-row {
    background: #86C749;
    border-bottom: solid 1px #ccc;
    padding: 30px 0 5px 0;
    background-image: url(https://s3.amazonaws.com/mandalay-cdn/otter/wp-content/uploads/20170828092843/leaf-overlay.png);
    background-repeat: no-repeat;
    background-position: 0;
    color: #fff;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.4);
    -webkit-text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.4);
    -moz-text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.4);
}
.energy-insert-row h1 { color: #fff; padding-bottom: 15px; }
.energy-insert-row p { font-size: 1.1em; line-height: 1.5em; margin: 0 0 1em;}
/*.play-button { position: absolute; top: 50%; left: 50%; opacity: .5; width: 150px; margin-top: -50px; margin-left: -75px; }*/
.play-button{position:absolute;top:50%;left:50%;opacity:.5;width:25%;margin-top:-5%;margin-left:-5%}
a:hover .play-button { opacity: 1; }

.m-subheader { display: block; font-size: .6em; padding-left: 2px; }

.page-title-row { background: #27aade; padding: 30px; color:#fff;}
.page-title-row h1 { color: #fff; font-size: 50px; line-height: 1.2em; margin:0;}
.page-title-row h1 strong { color: #a6d157; }
.page-title-row p { margin: 0; line-height: 1.5em; }
.page-title-row .m-subheader {color: #e6e6e6}

/* --- Page Intro Section --- */
.page-intro-row {padding: 30px 0; background: #fff; border-bottom: solid 1px #ccc;}
.page-intro-block h1 {color: #a6d157; font-size: 42px; font-weight: 600;}


/* --- Contact Page --- */
.support-block {display: flex; flex-flow: row wrap; justify-content: center; align-items: flex-start; margin: 30px 0 0 0; font-size: 1.2em;}
.support-block #title, .support-block #phone, .support-block #hours {margin-right: 25px;}
.support-block #hours {font-size: 1em;}
.support-block .glyphicon {font-size: .8em;}

.contact-email, .contact-email a {overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.contact-phone {white-space: nowrap;}

/* --------- Emergency Contact Popup ---------- */
.em-community { font-size: 1.3em; font-weight: 700; }
.em-contact { display: inline-block; max-width: 400px; margin: 10px; }
.emr-contact-filter { margin-top: 15px; }
.emr-contact-filter select { background: #ffffff; border: none; font-size: 20px; height: 45px; padding: 5px; width: 350px; margin: 0 auto; }
.emr-contact-box { text-align: center; }
.emr-contact-numbers { text-align: left; padding: 0 25px; }
.emr-contact-numbers ul li { list-style: none; padding: 10px 0; }
.emr-contact-numbers a { white-space: nowrap; }
.element-phone { white-space: nowrap; }
.emergency-contact-container { background: #f4f4f4;}
.emergency-contact-container label { font-size: 1.3em; line-height: 1em; font-weight: 600; color: #5e5d5d; padding: 10px;}
.emr-contact-btn a { background: #27aade; margin-bottom: 10px; color: #ffffff; }


/*.m-plan-contact-list .contact-sub div:after { content: "  |  "; }*/

/* ------ HEADER ICONS ------- */
.header-icon-row {
    position: absolute;
    left: 50%;
    bottom: 50px;
    transform: translate(-50%);
    max-width: 800px;
    text-align: center;
}
.header-icon-block {
    display: flex;
    flex-flow: row wrap;
    align-content: center;
    align-items: center;
    justify-content: center;
}
.header-icon {
    width: 75px;
    color: #fff;
    line-height: 1.2em;
    text-transform: uppercase;
    font-size: 17px;
}
.header-icon img {
    background: #fff;
    padding: 10px;
}

/* --- Flexy Grid --- */
.flexy-grid {display: flex; flex-flow: row wrap; justify-content: flex-start; }
.flexy-3-box {max-width: 33.3333%;}
.flexy-4-box {}
.double-wide { flex-grow: 2; }
.single-wide { flex-grow: 1; }

.agent-contact-box {margin-bottom: 50px;}
.agent-contact-box .agent-pic {margin-bottom: 10px; border: solid 1px #eee;}
.agent-contact-box .agent-name { font-size: 1.5em;}
.agent-contact-box .agent-title {color: #696969;}
.agent-contact-box .agent-region {/*margin: 0 0 10px 0; line-height: 1.2em; color: #696969;*/ display:none; }
.agent-contact-box .agent-phone {margin: 10px 0 0 0; margin: 0 1px;}
.agent-contact-box .agent-email {padding: 0 22px 0 0; margin: 0 1px;}

.plan-feature-list ul {list-style-position: inside; list-style: none;}
.plan-feature-list li {padding: 20px; background: #f9f9f9;}
.plan-feature-list li strong {display: block; font-size: 1.2em; color:#636466; margin-bottom: 15px;}
.plan-feature-list li:hover strong {color: #a6d157;}
.plan-feature-list li:hover {background: #e3f6fa;}

.flex-col-list { display: flex; flex-flow: row wrap; text-align: justify;}
.flex-col-list ul { margin-bottom: 0; flex-grow: 1; flex-basis: 372px; }
.flex-col-list ul:first-child { margin-right: 50px; }

/* ### STYLE ELEMENTS ### */
.button-callout-group {  }
.button-callout-item { }
.button-callout-item .fat-button { margin: 0 0 20px 0; }
.callout-image img {max-width: 200px;margin: 0 auto;}
.callout-info h2 {text-align: center;line-height: 1;margin: 10px 0;}
.callout-note {font-size: .8em;line-height: 1.2em;padding: 5px 10px;}

.detailed-contact-list {margin: 30px 0;}
.detailed-contact-list ul {list-style: none;}
.detailed-contact-list li {margin-bottom: 15px;}
.detailed-contact-list #title, .detailed-contact-list #desc {display: block;}
.detailed-contact-list #ext {text-transform: uppercase;font-size: .8em;margin-left: 15px;font-weight: 600;background: #ebebeb;padding: 0 5px;}
.detailed-contact-list #title {text-transform: uppercase;color: #636466;font-size: .8em;}
.detailed-contact-list #desc {font-size: .8em;line-height: 1.2em;display:none;}

.qm-admin-only { padding: 10px; background: whitesmoke; border: dashed 1px #ccc; }

.map-image img { width: 100%; }

.footer-credits {display: flex; flex-flow: row wrap; justify-content: space-between; align-items: flex-end; font-size: .8em; line-height: 1.2em; text-align: center; padding: 30px 0;}
.broker-credit, .build-partner-credit {flex-basis: 450px; flex-grow: 1;}
.broker-credit img {width: 100px; margin: 10px;}

/*--------------- Media Sizes ----------------*/
@media screen and (max-width: 1024px) {
	
	.overlay-page-title h1 {font-size: 45px;}
	.flexy-3-box { max-width: 33.3333%; }
	
}

@media screen and (min-width: 1024px) {
	/* header v3 
	.header-logo-v3, .m-header-nav-v3 { width: 100%; }
	.m-header-v3 { padding: 40px 0 10px 0; }
	.header-weather-row { top: unset; bottom: 50px; right: unset; left: 25px; }*/
}

@media screen and (max-width: 768px) {
    .m-plan-contact-list .contact-button-block .glyphicon {font-size: 2em;}
	.m-plan-contact-list .contact-sub div:after { content: ""; }
	.m-plan-contact-list .contact-button-block #button a #phone {display:none;}
	.flex-col-list ul:first-child { margin-right: 0; }
	
	.overlay-page-title h1 {font-size: 45px;}
	section {padding: 40px 0;}
	.support-block div {display: block; width:100%}
	.contact-email, .contact-phone {background: #636466; margin: 10px 0;}
	.contact-email a, .contact-phone a {padding: 20px; display: block; color: #fff; text-align:center;}
	.contact-email a:hover, .contact-phone a:hover {background: rgba(255, 255, 255, 0.25);}
	.agent-contact-box .agent-email {padding: 0 0 0 0;}
	.page-title-row h1 {font-size: 35px;}
	.flexy-3-box { max-width: 50%; }
	.support-block {text-align:center;}
	
	/* lifestyle rows */
	.section-lifestyle {margin-bottom: 0;}
	.pic-on-left, .pic-on-right,.copy-on-right, .copy-on-left {width:100%;}
	.fade-to-right, .fade-to-left {display:none;}
	.copy-on-left {order: 2; padding-left: 30px !important; padding: 30px;}
	.pic-on-right {order: 1;}
	.copy-on-right {padding-right: 30px !important; padding: 30px;}
	.section-amenities-full { padding: 30px; }
	/* header v3 */
	.header-awards {display:none;}
	
	/* header v3 */
	.header-weather-row { position: unset; }
	.weather-box {margin: 0 auto;}
}

@media screen and (max-width: 741px) {
	/* header area */
	.header-note-row { bottom: 0; left: 0; width: 100%; }
	.header-note {font-size: 24px;}
	.line-right {border-right: 0;}
}

@media screen and (max-width: 668px) {
	p {margin: 1em 0;}

	.header-support-col { text-align: center; }
	a.header-support-btn {width: 100%;display: block;padding: 15px 15px;}
	/* header v3 */
	.weather-box .weather-data { padding: 10px; font-size: 20px; }
}

@media screen and (max-width: 415px) {
	body, button, input, select, textarea {line-height: 1.3em;}
	/* adjustments */
	.defeat-15px-left, .defeat-15px-right, .defeat-15px-both { padding-left: 0; margin-left: 0; padding-right: 0; margin-right: 0; }
	/* content blocks */
	/* --- Agent Contact List -- */
    .m-plan-contact-list .contact-button-block #button a #phone {display:none;}
    .m-plan-contact-list .contact-button-block .glyphicon {font-size: 2em;}
	.m-plan-contact-list .contact-name {font-size: 1.3em;}
    .m-plan-contact-list .contact-sub div:after { content: ""; }
	/* header area */
	
	.overlay-page-title {background: none; padding: 10px 25px;}
	.overlay-page-title h1 {padding: 0; margin: 0; color: #ffffff; font-weight: 800; font-size: 35px;}
/*	.overlay-title-subheader {display: block; font-size: 26px; color: #ffe441; padding-top: 10px;} */
	.header-note-row {display: none;}
	.page-intro-block h1 {font-size: 35px; text-align: center;}
	/* flexy box */
	.flexy-3-box { max-width: 300px; }
	}