@charset "UTF-8";
/* CSS Document */

body {margin: 0; font-family: magneta, serif; font-weight: 200; font-size: 1.2em; line-height: 1.4em; margin-top: 80px;}
a {color: rgb(53,103,149); text-decoration: none; font-weight: 600;}
a:hover {text-decoration: underline;}
b, strong {font-weight: 600;}
img {max-width: 100%; height: auto;}
.mod-finder label {display: none;}
small {font-size: .75em; line-height: normal; display: inline-block;}
hr {border: .5px solid rgba(0,0,0,.1);}
.clr {clear: both;}
iframe {border: none;}
.virtualtours iframe {width: 100%; aspect-ratio: 16/9;}
.virtualtours h4 {margin-bottom: .5em;}
.visible-tablet, .display-mobile {display: none;}

h1, h2, h3, h4, h5, h6 {font-weight: 200; line-height: normal; margin-bottom: .25em; color: rgb(53,103,149);}
h1 {font-size: 3em; margin-top: 0;}
h2 {font-size: 2.5em; margin: 1em 0 0;}
h3 {font-size: 2em; margin: 1em 0 0;}
h4 {font-size: 1.5em; margin: 1em 0 0;}

blockquote p {font-size: 2em; margin-bottom: .5em;}
blockquote cite {font-size: 1rem; margin-left: 1rem;}

.col2 {columns: 2;}
.col3 {columns: 3;}
.col2 ul, .col3 ul, .col3 li {break-inside: avoid;}
.col2 p:first-of-type, .col3 p:first-of-type, .col2 h3:first-of-type, .col3 h3:first-of-type {margin-top: 0;}

.navbar-toggler {display: none;}
.color-divider {display: block; width: 100%; height: 15px;}

.rotated {box-shadow: .5em .5em .5em rgba(0,0,0,.25); transform: rotate(-5deg);}

header {position: fixed; width: 100%; top: 0; z-index: 100; box-shadow: 0em 0em 1em rgba(0,0,0,.5);}
header a {font-weight: 200;}
header .logoball {width: 7rem; position: absolute; margin: .5em 0 0 .5em;}
.whitebar {background: rgb(255,255,255); font-size: .75em; display: flex;}
.whitebar .flexcol1 {flex: 1; margin-top: .5em; padding-left: 10rem;}
.whitebar .flexcol1 input {color: rgb(53,103,149); border: 1px solid rgba(0,0,0,.25); border-radius: .5em; padding: .5em; font-size: .75em;}
.whitebar .flexcol2 {flex: 1; text-align: right; padding-right: 10rem;}
.whitebar ul {margin: 0; padding: 0; list-style: none;}
.whitebar li {display: inline-block; margin: .5em 0;}
.whitebar li a {border-right: 1px solid rgb(53,103,149); padding: 0 1em;}
.whitebar li:last-of-type a {border: none;}
.whitebar li:last-of-type a::before {display: inline-block; height: 20px; width: 20px; content: ""; background-image: url("../images/blue-phone-icon.svg"); vertical-align: middle; margin: -3px .25em 0 0;}

.bluebar {background: rgb(53,103,149); color: #fff; font-size: .9em; line-height: normal;}
.bluebar li a {color: #fff; font-size: .9em; padding: 1em 0; display: inline-block;}
.bluebar ul {margin: 0 10rem 0 0; list-style: none; text-align: right;}
.bluebar li {display: inline-block; padding-left: 2em;}
.bluebar li:last-of-type, .whitebar li:last-of-type a {padding-right: 0;}
.bluebar .parent::after {content: "▼"; padding-left: .5em; font-size: .75em; color: rgba(255,255,255,.75);}
.bluebar li ul {visibility: hidden; opacity: 0; position: absolute; transition: .25s; text-align: left !important; padding: 1rem 0; margin: 0;}
.bluebar li:hover ul {visibility: visible; opacity: 1; background: rgba(53,103,149,.75);}
.bluebar li li {display: block; padding: 0; min-width: 200px;}
.bluebar li li a {padding: 1rem; display: block;}
.bluebar li li a:hover {text-decoration: none; background: rgba(53,103,149,1);}
.bluebar ul ul ul {display: none;}
.bluebar ul ul .parent::after {display: none;}
.highlight {background-color: #e26918; padding: 1em !important;}

.windshield {height: 600px; border-bottom: 10px solid rgb(53,103,149);}
.windshield-logo {z-index: 98; position: absolute; top: 300px; height: 150px; width: auto; left: 10rem;}
.logoball {z-index: 99; width: 3em; height: auto; margin: -1.7em auto 0; display: block; position: relative;}

.mod-breadcrumbs__wrapper {font-size: .75em; color: rgba(0,0,0,.75);}
.mod-breadcrumbs__wrapper ol {margin: 0; padding: 0;}
.mod-breadcrumbs__wrapper ol li {display: inline-block;}
.mod-breadcrumbs__wrapper ol li:first-of-type {display: none;}
.mod-breadcrumbs__wrapper ol li::before {content: "▸"; margin: 0 .5em; color: rgba(0,0,0,.25);}
.mod-breadcrumbs__wrapper ol li:nth-of-type(2)::before {content: ""; margin: 0;}

.main-flex {margin: 1rem 10rem; display: flex;}
.secondary {padding-top: 7rem;}/*   Previously 3rem, maybe a formstack glitch   */
.flexbody {flex: 3;}
.under-margins {margin: 0 10rem 1rem;}

.mod-banners {padding-bottom: 1em;}
.mod-banners img {border: 1px solid #ddd;}

.sidebar {flex: 1; border-left: 1px solid rgba(0,0,0,.15); padding-left: 1em; margin-left: 1em;}
.home-sidebar h4 {margin: 1rem 0 0;}
.home-sidebar a h4 {font-size: 1.2em; color: #000; font-weight: 200;}
.home-sidebar p {margin-top: 0;}
.home-sidebar a {border-bottom: 1px solid rgba(0,0,0,.1); display: flex; clear: both;}
.home-sidebar p a {border-bottom: none;}
.home-sidebar img {width: 40px; height: auto; margin-right: 1em; vertical-align: middle;}
.home-sidebar p img {float: none; width: inherit; margin: 0;}

.services-row {padding: 1rem 10rem; display: flex; font-size: .8em; line-height: 1.3em;}
.services-row .flexcol {flex: 1; border: 1px solid rgba(0,0,0,.25); margin: 0 .5em;}
.services-row .flexcol h4 {font-size: 1.2em; margin: 1rem 1rem 0;}
.services-row .flexcol p {margin: 0 1rem 1rem;}
.services-row .flexcol .wrapper {display: block; height: 150px; overflow: hidden;}
.services-row .flexcol .wrapper img {width: 100%; height: 100%; object-fit: cover;}

.blue-row {background: rgba(53,103,149,.8); color: #fff; padding: 0 10rem; display: flex;}
.blue-row .flexcol {flex: 1; padding: 1rem;}
.blue-row .flexcol:first-of-type {flex: 2; padding: 0;}
.blue-row .flexcol:first-of-type iframe {/*object-fit: contain;*/ min-height: 100%; width: 100%;}
.blue-row .flexcol:nth-of-type(2) {background: rgba(255,255,255,.1);}
.blue-row .flexcol:nth-of-type(3) {background: rgba(0,0,0,.1);}
.blue-row h4 {font-size: 1.2em; font-weight: 600; margin: .5em 0 0;}
.blue-row p {margin-top: 0;}
.blue-row a, .blue-row a h4 {color: #fff;}

.white-row {padding: 2rem 10rem; display: flex; font-size: .9em; line-height: 1.4em;}
.white-row .flexcol {flex: 1; padding: 0 1em; align-self: center;}
.white-row .flexcol h4 {font-size: 1.2em; margin: 0;}
.white-row .flexcol p {margin-top: 0;}
.white-row .middle {margin-top: 1em;}
.white-row .middle img {width: 125px; height: auto; float: left; margin: -1em 1em 2em 0;}

.mod-articlesnews__item {display: flex; margin-top: 1em; align-items: center;}
.mod-articlesnews__item .flex-wrap {margin: 0 1em !important; flex: 5;}
.sidebar .mod-articlesnews__item .flex-wrap {flex: 2;}
.mod-articlesnews__item a {font-weight: 200; color: #000;}
.mod-articlesnews__item h4 {font-weight: 600; color: rgb(53,103,149);}
.newsflash-image {overflow: hidden; margin: 0; flex: 1;}

.contact-bar {background-color: rgb(244,237,214); display: flex; align-items: center;}
.contact-bar .col2 p {break-inside: avoid;}
.contact-bar .flexcol:first-of-type {flex: 40%;}
.contact-bar iframe {width: 100%; height: 450px; /*object-fit: cover; object-position: center;*/ display: block;}
.contact-bar .flexcol:last-of-type {flex: 58%; padding: 2em 0 2em 2%;}
.contact-bar .flexcol:last-of-type .wrapper {padding: 0 10rem 0 0;}
.contact-bar .fsBody .fs3Col {min-width: inherit !important;}
.contact-bar fieldset {border: none; padding: 0 0 0 1rem; font-size: .9rem; font-style: italic;line-height: normal;}
.contact-bar fieldset input {margin-left: -1rem;}
.contact-bar input, .contact-bar textarea {font-family: magneta, serif;}
.contact-bar input[type="tel"], .contact-bar input[type="email"], .contact-bar input[type="text"] {height: 2em; width: 100%; margin-bottom: 1em; border: 1px solid rgba(0,0,0,.25);}
.contact-bar textarea {height: 5em; width: 100%; margin-bottom: 1em; resize: none; border: 1px solid rgba(0,0,0,.25);}
.contact-bar .fsPagination {text-align: left; margin: 1em 0 0;}
.fsPagination input {padding: .5em 1em;}
.contact-bar .fsHiddenField {display: none;}

footer {font-size: 1rem; line-height: 1.3em;}
footer ul {margin: 0; padding: 0;}
footer li {list-style: none;}
footer p {margin-top: 0;}
footer img {opacity: .75; transition: all .25s ease-in-out;}
footer img:hover {opacity: 1;}
footer a {color: #fff; font-weight: 200;}
.footer1 {background: rgb(53,103,149); color: #fff; padding: 2em 0; box-shadow: 1em 1em 1em rgba(0,0,0,.25);}
.footer1 .wrapper {width: 1200px; margin: 0 auto; display: flex;}
.footer1 .flexcol {flex: 1 auto; margin: 0 1em; padding-top: 1em;}
.footer1 .flexcol:first-of-type {padding-top: 0; margin-right: 2em;}
.footer1 .flexcol:first-of-type img {min-height: 80px;}
.footer1 .flexcol:last-of-type {text-align: right;}
.footer1 .flexcol:last-of-type img {width: 30px; height: auto; margin: 15px 0 0 5px}
.footer1 .awesomplete, .footer1 .js-finder-search-query {background: none; width: calc(100% - 1.5em);}
.footer1 .awesomplete > input {border: 1px solid #fff; padding: .5em; color: #fff; font-weight: 200;}
.footer2 {background: rgba(0,0,0,.75); color: #fff; padding: 2em 0;}
.footer2 .wrapper {width: 1000px; display: flex; margin: 0 auto;}
.footer2 .flexcol {flex: 1; border-right: 1px solid rgba(255,255,255,.25); margin: 0 1em;}
.footer2 .flexcol:last-of-type {border: none;}
.footer2 .flexcol:last-of-type img {height: 30px; width: auto; vertical-align: middle; margin-right: 5px;}
.footer2 .flexcol:first-of-type img {max-height: 80px;}
.footer3 {text-align: center; color: rgba(0,0,0,.75); font-size: .75em; padding: 1em;}

/*   Misc.   */
.flexwrapper {display: grid; text-align: center; grid-template-columns: 1fr 1fr 1fr 1fr 1fr; grid-gap: .5em;}
.flexwrapper .staffphotos {background: rgba(0,0,0,.05); border: 1px solid rgba(0,0,0,.1); font-size: .9em; line-height: normal;}
.flexwrapper .staffphotos:first-of-type {margin-left: 0;}
.flexwrapper .staffphotos img {height: auto;}
.flexwrapper .staffphotos p {margin: 1em;}

table {border-collapse: collapse; width: 100%; font-size: .9em; clear: both;}
thead {color: #fff; background: rgba(53,103,149,.75);}
td, th {padding: .5em;}
tbody tr:nth-of-type(even) {background: rgba(244,237,214,.6);}
tbody tr:nth-of-type(odd) {background: rgba(244,237,214,.25);}

.com-content-category__table {text-align: left;}
.com-content-category__table caption {display: none;}

.item-page-faq ol li:not(:last-of-type) {border-bottom: 1px solid #eee; margin-bottom: 1em; padding-bottom: 1em;}

.promo-box {background: rgba(53,103,149,.05); padding: 1em; border: .5px solid #ddd;}
.promo-box h3 {margin-top: 0;}

.starburst {height: auto; width: 14rem; position: fixed; top: 4rem; right: -3rem; z-index: 100;}

.schedule-button {float: right; padding: 1em 3em; background-color: rgba(244,237,214,.25); text-align: center; border: 1px solid #eee; margin: 0 0 1em 1em; box-sizing: border-box;}

/*   Sticky Banner   */
.sticky-banner {position: sticky; top: 90px;}
.sticky-banner img {border: 1px solid #ddd; box-shadow: .5rem .5rem 1rem rgba(0,0,0,.2);}


/*   Formstack universal   */
.fsBody, .fsBody textarea, .fsBody input {font-family: magneta, serif !important;}
.fsBody .fsForm {padding: 0 !important;}
.fsBody textarea {font-size: .9rem;}
.fsBody textarea, .fsBody input {border-color: rgba(0,0,0,.25) !important;}
.fsBody button {padding: 1em;}
.fsSubFieldGroup {width: 100%;}
.InnerFormBody-sc-o0t3bv-0 {padding: 0 !important;}

/*   LO Blog   */
.com-content-category-blog__items {display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; font-size: .9em; line-height: 1.3em; grid-gap: .5em;}
.explore {grid-template-columns: repeat(3, 1fr);}
.com-content-category-blog__item {background: #f7f7f7; padding: .5em; border: 1px solid #ddd;}
.com-content-category-blog__item .item-content img {display: none;}
.com-content-category-blog__item .item-image {overflow: hidden; margin: 0; height: 200px; display: flex; align-items: center;}
.com-content-category-blog__item .item-image img  {object-fit: cover; width: 100%; min-height: 100%;}
.com-content-category-blog__item h2 {font-size: 1.75rem;}

/*   Events Blog   */
.events-flex {display: flex; margin-top: 1em;}
.events-blog {border-bottom: 1px solid #eee; padding-bottom: 1em;}
.events-blog .com-content-category-blog__items {grid-template-columns: 1fr; flex: 2;}
.events-flex .form {flex: 1; border-left: 1px solid #eee; margin-left: 1em; padding-left: 1em;}
.events-flex .form h3 {margin-top: 0;}
.events-flex .form input:not([type=submit]), .events-flex .form textarea {border: 1px solid #ddd; width: calc(100% - 2em); padding: 1em; margin: 1em 0;}
.com-content-category-events__item {display: flex; padding-bottom: 1em; margin-bottom: 1em; border-bottom: 1px solid #eee; align-items: center;}
.com-content-category-events__item:last-of-type {padding-bottom: 0; margin-bottom: 0; border-bottom: none;}
.com-content-category-events__item h2 {margin-top: 0; font-size: 2em;}
.com-content-category-events__item h2 a {font-weight: 200;}
.com-content-category-events__item figure, .com-content-category-events__item .item-content {flex: 1; margin: 0 1em 0 0;}
.com-content-category-events__item figure img {width: 100%;}

.fields-container {list-style: none; padding: 0; font-style: italic; line-height: normal;}
.fields-container .field-label {font-weight: 600; font-style: italic;}

.pagination {list-style: none; padding: 0; margin: 0;}
.pagination li {display: inline-block; padding-right: .5em; margin-right: .5em; /*border-right: 1px solid rgba(53,103,149,.5);*/}
.pagination .disabled {display: none;}
.com-content-category-blog__counter {margin-top: 0;}
.icon-angle-double-left:before {content: "«";}
.icon-angle-double-right:before {content: "»";}
.icon-angle-left:before {content: "‹";}
.icon-angle-right:before {content: "›";}

.news-blog {font-size: .9em; line-height: normal;}
.news-blog h4 {font-size: 1.25rem;}
.news-blog a {font-weight: 200;}
.newsflash-image__news {display: flex; margin: 0;}
.newsflash-image__news a {flex: 1; align-self: center;}
.newsflash-image__news img {height: 200px; object-fit: cover;}
.news-blog li:not(:last-of-type) {border-right: 1px solid #eee; padding-right: 2em;}

/*   DocMan   */
.koowa_media__item__label {font-size: .9em;}
.koowa_wrapped_content--document_desc {display: none !important;}

.floorplan-grid {display: grid; grid-template-columns: repeat(3,1fr); grid-gap: 1em; font-size: .9em; line-height: normal;}
.floorplan-grid4 {display: grid; grid-template-columns: repeat(4,1fr); grid-gap: 1em; font-size: .9em; line-height: normal;}
.floorplan-grid h4, .floorplan-grid p {padding: 0 1rem;}
.floorplan-grid h4 a {font-weight: 200;}

.sidebar nav a {font-weight: 200; font-size: 1.2em;}
.sidebar nav li::before {content: "▸"; margin: 0 .5em; color: rgba(0,0,0,.25); font-size: .75rem;}
.sidebar nav ul {list-style: none; padding: 0;}
.sidebar nav li {padding: .5em 0; display: flex;}

.sidebar .mod-articlesnews__item {font-size: .85em; line-height: normal; border-bottom: 1px solid #eee; margin: 1em 0; padding: 1em 0;}
.sidebar .mod-articlesnews__item h4 {margin-top: 0; font-size: 1.2rem;}
.mod-articlesnews__item .fields-container {display: none;}

/*   Mobile Sidebar   */
.sidenav {height: 100%; width: 0; position: fixed; z-index: 100; top: 0; left: 0; background: rgba(53,103,149,.95); overflow-x: hidden; transition: 0.5s; padding-top: 5em;}
.sidenav a {padding: .5em; text-decoration: none; font-size: 1.25rem; color: #fff; display: block; transition: 0.25s;}
.sidenav ul a {border-bottom: 1px solid rgba(255,255,255,.5);}
.sidenav a:hover {}
.sidenav .closebtn {position: absolute; top: 65px; right: 0; font-size: 50px; margin-left: 50px;}
.hamburger {font-size: 1.25em; padding: .5rem 0; cursor: pointer;}

.sidenav ul {list-style: none; padding: 1em; margin: 0;}
.sidenav .deeper > a::after {content: "▼"; padding-left: 1em; font-size: .5em;}
.sidenav ul ul, .sidenav ul ul ul {display: none;}
.sidenav ul li:hover ul {display: block;}
.sidenav .awesomplete {display: block;}
.sidenav input {margin: 1em 2em; border-radius: .5em; border: none; padding: 1em; width: calc(100% - 6em);}

.fsForm {max-width: 100% !important;}

@media screen and (max-height: 450px) {
  .sidenav {padding-top: 15px;}
  .sidenav a {font-size: 18px;}
}





@media (max-width: 1199px) {
    .whitebar .flexcol2 {padding-right: 5rem;}
    .bluebar ul {margin-right: 5rem;}
    .bluebar li {padding-left: 1rem;}
    .main-flex {margin: 1rem 5rem;}
    .under-margins {margin: 0 5rem 1rem;}
    .services-row {padding: 1rem 5rem;}
    .blue-row {padding: 0 5rem;}
    .white-row {padding: 2rem 5rem;}
    .contact-bar iframe {height: 500px;}
    .contact-bar .flexcol:last-of-type .wrapper {padding: 0 5rem 0 0;}
    .footer1 .wrapper {width: 90%;}
    .footer2 .wrapper {width: 80%;}
    .windshield-logo {left: 5rem;}
    
    .flexwrapper {grid-template-columns: 1fr 1fr 1fr;}
    
    .starburst {top: 16rem;}
}
@media (max-width: 980px) {
    .hidden-tablet {display: none;}
    .visible-tablet {display: block;}
    
    .whitebar .flexcol2 {padding-right: 2rem;}
    .bluebar ul {margin-right: 2rem;}
    .main-flex {margin: 1rem 2rem;}
    .under-margins {margin: 0 2rem 1rem;}
    .services-row {padding: 1rem 2rem;}
    .blue-row {padding: 0 2rem;}
    .white-row {padding: 2rem 2rem;}
    .contact-bar iframe {height: 300px;}
    .contact-bar .flexcol:last-of-type .wrapper {padding: 0 2rem 0 0;}
    .windshield-logo {left: 2rem;}
    
    body {margin-top: 60px;}
    header {background: rgb(53,103,149); color: #fff; text-align: right; padding: .5em 2em .5em 0; width: calc(100% - 2em);}
    
    header .logoball {width: 7rem; margin: -1em 0 0 .5em;}
    .col3 {font-size: .9em; line-height: normal;}
    
    /*.tablet-leftcol img {max-width: 50%;} may need finesse*/
    
    .services-row .flexcol .wrapper {height: 100px;}
    .home-sidebar a h4 {font-size: 1em;}
    .sidebar .mod-articlesnews__item {flex-direction: column;}
    .sidebar nav a {font-size: 1rem;}
    /*.mod-articlesnews__item .flex-wrap {margin: 0 !important;}*/
    
    .contact-bar {flex-direction: column;}
    .contact-bar .flexcol, .contact-bar .flexcol:first-of-type, .contact-bar .flexcol:last-of-type {flex: 100% !important; align-self: normal;}
    
    .footer1 .wrapper {flex-wrap: wrap;}
    .footer2 .wrapper {width: calc(100% - 4em); padding: 0 2em; flex-wrap: wrap;}
    .footer1 .flexcol:first-of-type {display: none;}
    .footer2 .flexcol:last-of-type {text-align: center;}
    .footer2 .flexcol:nth-of-type(4) {border: none;}
    .footer2 .flexcol:first-of-type {padding-right: 1em;}
    .footer1 .flexcol {flex: 1 auto; margin: 0 1em; padding-top: 1em;}
    .footer1 .flexcol:last-of-type {text-align: center;}
    .flexbreak {flex-basis: 100%; margin: 1em;}
    
    .com-content-category-blog__items, .floorplan-grid, .floorplan-grid4 {grid-template-columns: 1fr 1fr;}
    .com-content-category-events__item {flex-direction: column;}
    .com-content-category-events__item figure {margin: 0 0 1em 0;}
}
@media (max-width: 767px) {
    h1 {font-size: 2em;}
    h2 {font-size: 1.75em;}
    h3 {font-size: 1.5em;}
    .col2, .col3 {columns: 1;}
    .flexbody img {float: none !important; display: block; margin-left: 0 !important;}
    .hide-mobile {display: none !important;}
    .display-mobile {display: block;}
    
    .main-flex {flex-direction: column;}
    .sidebar {padding: 1em 0 0; margin: 1em 0 0; border-left: none; border-top: 1px solid #eee;}
    .sidebar nav a {font-size: 1.2em;}
    
    /*   Home Layout   */
    .services-row, .blue-row, .white-row {flex-direction: column;}
    .services-row .flexcol {margin: .5em 0;}
    .services-row .flexcol .wrapper {height: 200px;}
    .white-row .middle {margin: 5em 0 3em;}
    .white-row .middle img {width: 75px; margin: 0 1.5em 0 0;}
    .mod-articlesnews__item .flex-wrap {flex: 2;}
    .blue-row .flexcol:first-of-type iframe {min-height: 300px;}
    
    
    .contact-bar .flexcol, .contact-bar .flexcol:first-of-type, .contact-bar .flexcol:last-of-type {text-align: center;}

    .flexwrapper {grid-template-columns: 1fr 1fr;}
    .com-content-category-blog__items, .floorplan-grid, .floorplan-grid4 {grid-template-columns: 1fr;}
     .events-flex {flex-direction: column;}
    .events-flex .form {border-left: none; margin: 1em 0 0; padding-left: 0;}
    .news-blog li:not(:last-of-type) {border-right: none; padding-right: 0;}
    
    .mod-articlesnews__item {align-items: flex-start;}
    
    .footer1 .wrapper, .footer2 .wrapper {flex-direction: column;}
    .footer2 .flexcol, .footer1 .flexcol {text-align: center; border: none;}
    
    .sticky-banner {top: 120px;}
    
    table {font-size: .75em; line-height: normal;}
    thead {hyphens: auto;}
    
    .schedule-button {width: 100%; float: none; margin: 0 0 1em;}
}