#content { margin-top: 40px !important; }

.grid h2 {
	font-size: 2.25em;
	color: #005fad;
	margin: 5px 0 20px;
}

header#header { height: 90px; background: #005fad !important; z-index: 112; position: relative !important; }
header#header:after { display: block; clear: both; content: ""; }
header#header .logo { height: 70px; margin-top: 10px }
header#header .phone { font-weight: normal; float: right; color: white; font-size: 18px; line-height: 90px; }
header#header .phone > span { position: relative; background: #80afd6; border-radius: 100px; font-size: 24px; height: 38px; width: 38px; line-height: 1.3; display: inline-block; margin-right: 3px; text-align: center; top: 13px; }
header#header .phone > span > i { font-size: 20px; position: absolute;
top: 50%;
left: 50%;
transform: translateX(-50%) translateY(-50%); }

header#header a.root { display: block; float: left; margin-right: 1rem; }

header#header nav {
    font-weight: bold;
}

header#header ul {
    list-style: none;
    margin: 0;
    padding-left: 0;
}

header#header li {
    color: #fff;
    display: block;
    float: left;
    padding: 0 1rem;
    position: relative;
    text-decoration: none;
    transition-duration: 0.5s;
	z-index: 11111111111;
	box-sizing: border-box;
	height: 90px;
	line-height: 90px;
}

header#header li a {
  color: #fff;
}

header#header li a i { color: #80afd6; }

header#header li ul li:hover,
header#header li ul li:focus-within {
    background: #e1e1e1;
    cursor: pointer;
}

nav#nav { position: relative !important; top: auto !important; }

header#header li:focus-within a {
  outline: none;
}

header#header ul li ul {
    background: #ffffff;
    visibility: hidden;
  opacity: 0;
  min-width: 5rem;
    position: absolute;
  transition: all 0.5s ease;
    left: 0;
  display: none;
}

header#header ul li:active ul,
header#header ul li:focus ul,
header#header ul li:focus-within ul,
header#header ul li.show-dd ul,
header#header ul li ul:hover,
header#header ul li ul:focus {
   visibility: visible;
   opacity: 1;
   display: block;
}

header#header ul li.show-dd ul { display: block !important; }

header#header ul li ul li {
    clear: both;
	height: auto;
    padding: .75em 1em;
    width: 100%;
    line-height: 1.4;
}

header#header ul li ul li a { color: #005fad; }

#header #reveal-nav {
width: 28px;
height: 20px;
background: transparent;
top: 50%;
right: 12px;
padding: 7px 6px 10px;
margin-top: -20px;
border: 0; }

.primary nav#nav { display: none !important; }

#header #reveal-nav .reveal-bar { background: #fff; height: 3px; border-radius: 100px; margin-bottom: 7px; }

.quicklinker, .mobile-close { display: none; }

div.slidewrapper { position: relative; margin-top: 40px; box-sizing: border-box; }
.primary div.slidewrapper { margin-bottom: 40px; }

div.slidewrapper img { max-width:100%; display:block; }
div.slidewrapper .fallback { opacity: 0; }

div.slidewrapper .fallback img { max-height: 275px; max-width: 100%; }
div.slidewrapper #featured { position: absolute; top: 0; left: 0; right: 0; bottom: 0; max-height: 275px; overflow: hidden; }
div.slidewrapper #featured .slide { position: absolute; top: 0; left: 0; right: 0; bottom: 0; }
div.slidewrapper #featured .slide img { display: block; }

body.estate div.slidewrapper { border: 5px solid #00344a; }

.estate-banner { position: relative; margin-bottom: 40px; }
.estate-banner .estate-banner-inner {  margin: 0;  }
.estate-banner .estate-banner-inner .gw { background-color: #00344a; color: #fff; padding: 20px 0 20px; }
.estate-banner .estate-banner-inner .gw h1 { margin: 0; font-size: 2.2em; }
.estate-banner .estate-banner-inner .gw h1.left { float:left; margin-left: 18px; }
.estate-banner .estate-banner-inner .gw h1.right { float:right; margin-right: 18px; }
.estate-banner .estate-banner-inner .gw small { display: block; float:left; margin-right: 20px; font-size: .5em; }

#quickwrap #quicklinks { top: 0 !important; margin-top: 0 !important; }

@media only screen and (max-width: 1280px) {
    header#header .phone { display: none !important; }
    header#header li a { font-size: .9em; }
}

@media only screen and (max-width: 1019px) {
    .quicklinker { display: block; color: white; padding: .75em 1em .75em 2em; font-size: 1em; text-transform: uppercase; }
    .quicklinker:hover { background: #004b8a; color: white; }
    .quicklinker i { color: #80afd6; float: right; }
    .mnover { display:none;position:fixed;top:0;bottom:0;left:0;right:0;background:rgba(0,0,0,.6); z-index: 111; }
    .mobile-close {
        display: inline-block;
        text-align: right;
        font-size: 58px;
        color: white !important;
        font-weight: 100;
        margin-top: 10px;
        margin-bottom: 37px;
        float: right;
        margin-right: 20px;
    }
    #ql { right: -245px; left: auto; width: 245px; position: fixed; box-sizing: border-box;
        transition: right .5s ease-in-out;
        -moz-transition: right .5s ease-in-out;
        -webkit-transition: right .5s ease-in-out;
        -o-transition: right .5s ease-in-out;
    }
    #ql.visible { left: auto; right: 0; }
    #ql .linked { font-size: .9em; }

    #ql .head:after { display: block; content: ""; clear: both; }

    #ql .ql-closer { display: block; color: white; margin-bottom: 20px; font-weight: bold; font-size: .9em; }
    #ql .ql-closer i { color: #80afd6;}

    #ql .mobile-close { margin-top: -6px; margin-right: 0; margin-bottom: 0; }

    header#header nav {
        position: fixed;
        right: -280px;
        background: #005fad;
        padding: 20px 0;
        width: 280px;
        height: 100%;
        z-index: 333;
        transition: all .5s ease-in-out;
    }
    header#header nav.open { right: 0; }

    header#header ul li {
        clear: both;
        height: auto;
        float: none;
        padding: 0;
        width: 100%;
        line-height: 1.4;
    }

    header#header nav.open ul > li.open > ul {
       visibility: visible;
       opacity: 1;
       display: block;
    }

    header#header ul li a { padding: .75em 1em .75em 2em; display: block; font-size: 1em; }
    header#header ul li a:active, header#header nav.open ul > li.open > a, header#header ul li a:focus { background: #004b8a; }

    header#header nav > ul > li > a:hover { background: #004b8a; }

    header#header ul li ul { position: relative; }
    header#header ul li ul li { background: #fff; padding: 0; }

    header#header ul li i { float: right; margin-top: 4px; }

    .estate-banner .estate-banner-inner .gw h1.left { display: none; }
}

@media only screen and (max-width: 766px) {
    #nav .gw { top: 0; width: 100%; }
    #nav .gw ul { background: #fff; margin: 0; border: 1px solid #ddd; border-top: 0; display: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none; }

    #nav ul li a { background: white; }
    #nav .gw ul li a.selected { background: #005fad; }

    #nav a.navtog { padding: 0 10px; background: #fff; border-radius: 5px; }
    #nav a.navtog i { float: right; color: #005fad; line-height: 40px; }

    .estate #nav {
        height: 40px;
        top: 54px;
        background-position: right -10px;
        width: 60%;
        border-radius: 5px;
        border: 1px solid #ddd;
        margin: auto;
    }

    div.slidewrapper, .estate-banner .gw { width: 100%; margin: 0; }

    .estate-banner .estate-banner-inner .gw h1.right { margin: 0 18px; text-align: center; float: none; }
    .estate-banner .estate-banner-inner .gw h1.right small { float: none; display: inline-block; margin: 0 20px 5px; }

}
@media(max-width: 450px) {
    .grid.search-results {
        overflow-x: scroll;
    }
}
@media(max-width: 370px) {
    a.printable { float: none; margin: auto auto 20px; text-align: center; }
}

.img-fix { object-fit: contain; }