@charset "utf-8";

* {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%; /* Prevent font scaling in landscape while allowing user zoom */
}

body {
	font: 100%/1.4 Georgia, "Times New Roman", Times, serif;
	background-image: url(../images/background-gradient.jpg);
    background-repeat: repeat-x;
	background-color: #978777;
	margin: 0;
	padding: 0;
	color: #000;
}

/* ~~ Element/tag selectors ~~ */
ul, ol, dl { /* Due to variations between browsers, it's best practices to zero padding and margin on lists. For consistency, you can either specify the amounts you want here, or on the list items (LI, DT, DD) they contain. Remember that what you do here will cascade to the .nav list unless you write a more specific selector. */
	padding: 0;
	margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
	margin-top: 0;	 /* removing the top margin gets around an issue where margins can escape from their containing div. The remaining bottom margin will hold it away from any elements that follow. */
}
h1 {
	font-size: 24px;
	color: #1c3f95;
}
h2 {
	font-size: 18px;
	color: #7d6a55;
	font-style: italic;
	font-weight: bold;
}
h3 {
	font-size: 14px;
	color: #666;
	font-style: italic;
	font-weight: bold;
}
p {
	font-size: 15px;
	color: #666;
}
a img { /* this selector removes the default blue border displayed in some browsers around an image when it is surrounded by a link */
	border: none;
}

/* ~~ Links ~~ */
a:link {
	color: #000;
	text-decoration: underline;
}
a:visited {
	color: #000;
	text-decoration: underline;
}
a:hover, a:active, a:focus { /* this group of selectors will give a keyboard navigator the same hover experience as the person using a mouse. */
	text-decoration: none;
}
sup {
    font-size: 0.7em;
    vertical-align: super;
    line-height: 0;
}

/* Removes blue outline on mobile ? */
a, button {
	-webkit-tap-highlight-color:  rgba(255, 255, 255, 0);
}

/* ~~Container~~ */
.container {
	width: 1000px;
	background: #FFF;
	margin: 0 auto; /* the auto value on the sides, coupled with the width, centers the layout */
}

/* ~~ Header ~~ */
.header {
	background: #FFF;
	text-align: center;
}
.header a {
	display: inline-block;
}
.headerphoto {
	margin-bottom: 15px; /* this creates the space between the navigation on the content below */
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.headerphoto--home {
  padding: 0;
}
.headerphoto--home .ihf-container {
  max-width: 70%;
  margin: 0 auto;
}
.ihf-search {
  background-color: #1c3f95;
  max-width: 100%; 
  padding: 20px;
  padding-block: 15px 25px;
  border-radius: 0;
  width: 100%; 
  margin: 0 auto; 
}
.ihf-search h1,
.ihf-search label {
	color: #fff;
}
.ihf-search label {
	font-weight: bolder !important;
}
.ihf-search h1 {
	text-align: center;
	font-style: italic;
	font-size: 38px;
	font-weight: 100;
	margin-bottom: 15px;
}
.ihf-search .btn {
	padding-top: 8px !important;
	padding-bottom: 12px !important;
}
.ui-widget { /* Autocomplete search box */
	font-family: inherit;
	font-size: inherit;
}
.ui-autocomplete .ui-menu-item a {
	color: #666;
}
@media (max-width: 800px) {
  .headerphoto--home img {
    opacity: 1 !important;
  }
  .headerphoto--home .ihf-container {
      max-width: 100%;
  }
  .ihf-search h1 {
      font-size: 7.6vw;
  }
}

.headerrotate {
  	background: url(../images/header-images/random/rotate.php);
	height: 388px;
}

/* ~~ Columns ~~ */
.sidebar1 {
	float: right;
	width: 310px;
	padding-bottom: 10px;
}
.quicksearch {
	margin: 0px 11px 15px 11px;
	background: url(../images/quicksearch.jpg) no-repeat;
	height: 320px;
	width: 288px;
	float: left;
	border: 1px solid #7d6a55;
}
.quicksearchjs {
	text-align:left;
	margin: 60px 0px 0px 30px;
	font-size: 15px;
}
.content1, .content2, .content3 {
	padding: 0 15px;
}
.content1 {
	float: left;
	width: 690px;
	margin-bottom: 10px;
}
.content2 {
	float: right;
	width: 1000px;
	margin-bottom: 10px;
}
.content3 {
	width: 950px;
	margin: auto;
}
.centered {
	width: 970px;
	margin: auto;
}
.map {
	width: 660px;
	margin: auto;
	margin-bottom: 10px;
}

/* ~~ Content ~~ */
.content1 ul, .content1 ol, .content2 ul, .content2 ol {
	padding: 0 15px 15px 40px; /* this padding mirrors the right padding in the headings and paragraph rule above. Padding was placed on the bottom for space between other elements on the lists and on the left to create the indention. These may be adjusted as you wish. */
	font-size: 15px;
	color: #666;
}
.content__image {
	display: inline-block;
	float: right;
}
.content1 .content__image,
.content2 .content__image {
    transition: all 400ms ease 0s;
    background: none repeat scroll 0 0 inherit;
    box-shadow: 0 10px 22px -10px #000000;
    overflow: hidden;
    position: relative;
    text-decoration:none;
    -moz-border-bottom-colors: none;
    -moz-border-left-colors: none;
    -moz-border-right-colors: none;
    -moz-border-top-colors: none;
    border-color: #222222 #444444 #777777;
    border-image: none;
    border-radius: 4px 4px 4px 4px;
    border-style: solid;
    border-width: 1px;
    color: #ffffff;
    display: inline-block;
    outline: medium none;
	margin: 3px 20px 20px 20px;
}
hr.helm {
	height: 50px;
	background-repeat: no-repeat;
	background-image: url(../images/text-divider.jpg);
	background-position: top center;
	border: solid 0px;
	clear: both;
}

/* ~~ Tables ~~ */
table.sold {
    border-collapse: collapse;
	float: left;
	width: 32%;
	margin: 0px 0px 15px 15px;
}
table.sold:first-of-type {
	margin-left: 0px;
}
table.sold tr:nth-of-type(odd) {
	background: #eee;
}
table.sold th {
	background: #333;
	color: white;
	font-weight: bold;
	vertical-align: middle;
}
table.sold th, table.sold h2 {
	margin: 15px 0px 15px 0px;
}
table.sold td, table.sold th {
	border: 1px solid #ccc;
	text-align: center;
}
table.sold td {
	font-family: Georgia, "Times New Roman", Times, serif;
	font-size: 15px;
	color: #666;
}

/* ~~ Navigation ~~ */
ul.nav {
	list-style: none; /* this removes the list marker */
	height: 44px;
	background-color: #e5e1dd;
	text-align: center;
}
ul.nav li {
	display: inline-block;
	padding-right: 12px;
}
ul.nav a {
	color: #1c3f95;
	font-size: 15px;
	font-weight: bold;
}
ul.nav a, ul.nav a:visited { /* grouping these selectors makes sure that your links retain their button look even after being visited */
	padding: 12px 5px 8px 15px;
	display: block; /* this gives the link block properties causing it to fill the whole LI containing it. This causes the entire area to react to a mouse click. */
	text-decoration: none;
}
ul.nav a:hover, ul.nav a:active, ul.nav a:focus { /* this changes the background and text color for both mouse and keyboard navigators */
	color: #7d6a55;
}
ul.nav li>ul { /*Make the sub list items invisible*/
	display:none;
	position: absolute;
	text-align: left;
	z-index: 1;
}
ul.nav li:hover>ul { /*When hovered, make them appear*/
	display: block;
}
ul.nav ul li { /*Make the hyperlinks as a block element*/
	display: block;
	padding-right: 0px;
}
ul.nav ul a { /*Make the hyperlinks as a block element*/
	display: block;
	color: #1c3f95;
}
ul.nav ul { /*dropdown background color*/
	background: #e5e1dd;
}
ul.nav li li a, ul.nav li li a:link, ul.nav li li a:visited {
	border-bottom: 1px solid #7d6a55;
	border-left: 1px solid #7d6a55;
	border-right: 1px solid #7d6a55;
	padding: 10px 15px 10px 15px;
}
ul.nav li>ul > :first-child {
    border-top: 1px solid #7d6a55;
}
ul.nav li li a:hover, ul.nav li li a:active {
	background: #7d6a55;
	color: #FFFFFF;
}


/* ~~ Sidebar 1 ~~ */
.sidebar1 {
	padding: 0 11px;
}
.sidebar1 a {
	display: block;
}
.sidebar1 img {
	display: inline-block;
	margin: auto;
	padding-bottom: 15px;
	width: 100%;
}

/* ~~ Footer ~~ */
.separator {
	height: 15px;
	background-color: #e5e1dd;
	clear: both;
	margin: 10px 0;
}
.footer {
	padding: 10px 15px;
	background: #FFF;
	position: relative;/* this gives IE6 hasLayout to properly clear */
	clear: both; /* this clear property forces the .container to understand where the columns end and contain them */
}
.footer p {
	font-size: 12px;
	text-align: center;
}
.footer ul {
	list-style: none; /* this removes the list marker */
	text-align: center;
	padding-bottom: 15px;
}
.footer ul li {
	display: inline-block;
	padding: 0 12px;
}
img.mls {
	margin-bottom: 9px;
}
img.equal-housing {
	margin-bottom: 6px;
}
p.footernav {
	text-align: center;
}
p.footernav a {
	color: #7d6a55;
	font-size: 14px;
	text-decoration: none;
}
p.footernav a:hover, p.footernav a:active, p.footernav a:focus { /* this changes the background and text color for both mouse and keyboard navigators */
	color: #1c3f95;
}
.ihLoginFooter {
display: none;
}

/* ~~ miscellaneous float/clear classes ~~ */
.fltrt {  /* this class can be used to float an element right in your page. The floated element must precede the element it should be next to on the page. */
	float: right;
	margin-left: 8px;
}
.fltlft { /* this class can be used to float an element left in your page. The floated element must precede the element it should be next to on the page. */
	float: left;
	margin-right: 8px;
}
.clearfloat { /* this class can be placed on a <br /> or empty div as the final element following the last floated div (within the #container) if the #footer is removed or taken out of the #container */
	clear:both;
	height:0;
	font-size: 1px;
	line-height: 0px;
}

/*! Fix bottom navigation
Responsive menu, avoid weird space at the bottom when trying to scroll
*/
html.mobile body,
html.tablet body
{
	background-color: transparent;
}
html.tablet,
html.mobile,
.tablet body,
.mobile body {
	overflow: hidden !important;
	position: relative;
	height: 100%;
}
.tablet #content,
.mobile #content  {
	height: 100%;
	overflow: scroll !important;
	-webkit-overflow-scrolling: touch;
}
html.safari, .safari body {
	height: initial !important;
	overflow: initial !important;
}
html.safari #content,
.safari body #content {
	height: initial !important;
}
html.ie{
	overflow: hidden;
	height: 100%;
}
html.ie body{
	overflow: auto;
	height: 100%;
}
#content {
	position: relative;
	z-index: 0;
}
/* -/ Fix bottom navigation */

.navigation {
	z-index: 999;
	position: relative;
}
.navigation .nav > li > a {
	text-transform: uppercase;
}
.navigation .nav__more {
	display: none;
}
.mobile .navigation ul.nav a,
.tablet .navigation ul.nav a {
	font-size: 16px;
}
.navbar-toggle {
	display: none;
}

.sidebar--accreditations {
	text-align: center;
	padding-bottom: 20px;
}
.sidebar--accreditations a {
	display: inline-block;
	width: 100%;
	text-align: center;
}
.sidebar--accreditations img {
	padding-bottom: 0 !important;
}
.sidebar--accreditations a + a {
	margin-top: 40px;
}

iframe[src*="youtu"] {
	width: 470px;
}

.content__image--people img {
	width: 250px;
}
.content__image--resources img {
	width: 300px;
}

@media (max-width: 1020px) {
	.container,
    .headerphoto,
    .headerphoto img {
		width: 100%;
	}
	.ihf-search {
		max-width: none;
	}
    #main-content {
        width: 100%;
    }
    .content1,
    .sidebar1,
    .content2,
    .sidebar2 {
        float: none;
        width: 100%;
    }
	.sidebar1 {
		padding: 0 15px;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.sidebar1 a,
	.sidebar1 span {
		display: inline-block;
		width: 24%;
	}
	.sidebar1 a img,
	.sidebar1 span img {
		max-width: 100%;
	}

	.sidebar1--third a,
	.sidebar1--third span {
		width: 32%;
	}

	.sidebar1 h2 {
		width: 100%;
		margin-bottom: 0;
		padding: 0 0 30px 0;
	}
	.sidebar--accreditations {
		justify-content: center;
		align-items: center;
	}
	.sidebar--accreditations a {
		width: auto;
		padding: 0 20px 20px 20px;
	}
	.sidebar--accreditations a + a {
		margin-top: 0;
	}
	.sidebar--home-staging span {
		width: 32%;
	}
}
@media (max-width: 850px) {
	.sidebar1 {
		align-self: center;
	}
	.sidebar1 a,
	.sidebar1 span {
		width: 49%;
	}
	.sidebar1 a img,
	.sidebar1 span img {
		width: 100%;
	}
	.sidebar--accreditations a {
		width: auto;
	}
}

/* Navigation */
@media(max-width: 800px) {
	.header {
		position: relative;
		text-align: center;
		height: 90px;
		padding: 10px 0;
	}
	.header a {
		height: 100%;
	}
	.header img {
		display: inline-block !important;
		width: auto !important;
		height: 100% !important;
		padding: 0 !important;
	}
	.headerphoto {
		height: 300px;
	}
	.headerphoto--home {
		height: auto;
	}
	.headerphoto img {
		opacity: 0;
	}
	.navbar-toggle {
		position: absolute;
		width: 53px;
		height: 53px;
		line-height: 53px;
		left: 0;
		cursor: pointer;
		color: #e5e1dd;
		top: 50%;
		margin-top: -26px;
		border: 0;
		outline: none;
		display: block;
	}
	.navbar-toggle,
	.navbar-toggle:hover,
	.navbar-toggle:focus,
	.navbar-toggle:active {
		outline: none;
		background-color: transparent;
		-webkit-tap-highlight-color: transparent;
	}


	.navbar-toggle span {
		position: relative;
		display: block;
		margin: auto;
		transition: .3s all ease;
	}
	.navbar-toggle span:before,
	.navbar-toggle span:after,
	.navbar-toggle span {
		width: 24px;
		height: 4px;
		background-color: #7d6a55;
		backface-visibility: hidden;
		border-radius: 2px;
		box-sizing: border-box;
	}
	.navbar-toggle:focus span,
	.navbar-toggle:focus span:before,
	.navbar-toggle:focus span:after {
		background-color: #e5e1dd;
	}

	.navbar-toggle span:before,
	.navbar-toggle span:after {
		content: " ";
		position: absolute;
		left: 0;
		top: -8px;
		transition: .3s all ease;
	}
	.navbar-toggle span:after {
		top: 8px;
	}


	.navbar-toggle.active {
		position: relative;
		height: 90px;
		line-height: 90px;
		background-color: transparent;
		z-index: 100;
		margin-top: 0;
	}
	.navbar-toggle.active span {
		background: transparent;
		float: left;
		margin-left: 10px;
	}
	.navbar-toggle.active span:before,
	.navbar-toggle.active span:after {
		background-color: #7d6a55;
	}
	.tablet .navbar-toggle.active span {
		margin-left: 16px;
	}
	.navbar-toggle.active span:before, .navbar-toggle.active span:after {
		-webkit-transform-origin: 50% 50%;
		transform-origin: 50% 50%;
		top: 0;
	}
	.navbar-toggle.active span:before {
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.navbar-toggle.active span:after {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}


	/* When the toggle button is tapped / clicked */
	.navigation--open .navigation {
		left: 0;
	}

	.navigation {
		position: fixed;
		top: 0;
		left: -270px;
		z-index: 100;
		width: 240px;
		height: 100%;
		background-color: #e5e1dd;
		display: inline-block;
		padding: 0;
		overflow: hidden;
		transition: left 0.5s;
	}
	.navigation__wrapper {
		height: auto;
		overflow-y: scroll;
		width: 120%;
	}
	.navigation ul.nav {
		height: auto;
		text-align: left;
	}
	.navigation ul.nav li {
		display: block;
		padding-right: 0;
		position: relative;
		width: 240px;
	}
	.navigation ul.nav a {
		padding: 5px 15px;
	}
	.navigation ul.nav .nav__more {
		display: inline-block;
		position: absolute;
		top: 4px;
		right: 0;
		width: 25px;
		padding: 0;
		font-size: 18px;
	}
	.navigation ul.nav .nav__more:before {
		content: "+";
	}
	.navigation ul.nav .open .nav__more:before {
		content: "-";
	}

	/* Sub menues */
	.navigation ul.nav li > ul {
		position: relative;
	}
	.navigation ul.nav li:hover > ul {
		display: none;
	}
	.navigation ul.nav li > ul {
		display: none;
	}
	.navigation ul.nav li.open > ul {
		display: block;
	}
	.navigation ul.nav li > ul > :first-child {
		border: 0;
	}
	.navigation ul.nav li li a,
	.navigation ul.nav li li a:link,
	.navigation ul.nav li li a:visited {
		border: 0;
		padding: 5px;
		padding-left: 30px;
	}
}

@media (max-width: 500px) {
    .content1 img {
        width: 100%;
        margin: 0;
    }
    .content1 img,
    .content2 img {
        max-width: 100%;
        margin: 0;
    }
    .content2 {
        text-align: center;
    }
    .content2 p,
    .content2 h3,
    .content2 h2,
    .content2 h1,
    .content2 ul {
        text-align: left;
    }
    .content2 img {
        float: none;
    }
    .sidebar1 img {
        max-width: 100%;
        height: auto !important;
    }

    iframe[src*="youtu"] {
        width: 100%;
    }
	.content__image {
		margin: 0 !important;
		margin-bottom: 30px !important;
		width: 100%;
		background-position: center center;
		background-repeat: no-repeat;
		background-size: cover;
	}
	.content__image--200 {
		height: 200px;
		background-position: center center;
	}
	.content__image--200 img {
		opacity: 0 !important;
	}
	.content2 .content__image img {
		width: 100%;
		opacity: 1;
	}
	.content__image--people {
		width: 75%;
		margin: 0 auto 20px 0 !important;
		float: none;
	}
}

@media(max-width: 450px) {
	.sidebar1 a,
	.sidebar1 span {
		width: 100%;
	}
	.sidebar1 a img,
	.sidebar1 span img {
		width: 100%;
	}
	.sidebar--accreditations {

	}
	.sidebar--accreditations a {
		width: 50%;
	}

	.content__image--people {
		background-position: top center;
	}
}

