.retsModule.flexContainer, .retsModule .flexContainer { display:flex; justify-content:space-between; }
.retsModule .column { width:100%; box-sizing:border-box; }
.retsModule .column.colOneHalf { width:49%; }
.retsModule .column.colOneThird { width:32%; }
.retsModule .column.colTwoThirds { width:66%; }
.retsModule .column.colOneFourth { width:24%; }

.tabSection .tabs { position:relative; }
.tabSection .tab { display:inline-block; position:relative; z-index:1; text-align:center; cursor:pointer; }
.tabSection .tab.current { z-index:2; }
.tabSection .tabPages { position:relative; }
.tabSection .tabPage { display:none; }
.tabSection .tabPage.current { display:block; }

.retsModule .utilityLinks { position: relative; margin: 1em 0; text-align:right; }
.retsModule .newListing { display:none; color:#f00; font-weight:bold; }
.retsModule .status { font-weight:bold; }
.retsLister.retsProperties .tabSection { position:relative; z-index:1; }
.retsModule .tabs { position:relative; z-index:2; }
.retsModule .tab { font-size:22px; padding: 7px 20px; }
.retsModule .tab.current { border-top: 1px solid #ccc; border-left: 1px solid #ccc; border-right: 1px solid #ccc; border-top-left-radius:6px; border-top-right-radius:6px; background-color:#fff; }

.retsLister.retsProperties .pagination { float:right; width:480px; position:relative; z-index:2; }
.retsLister.retsProperties .paginationLinks { padding-top:0 !important; }
.retsLister.retsProperties a.prevnextWindowArrow
, .retsLister.retsProperties a.prevnextLink { border:none; border-radius:6px; background-color:#f2f2f2; }
.retsLister.retsProperties .pageLinks { display:none !important; }
.retsLister.retsProperties .paginationText { padding-top:2px !important; }
.retsLister.retsProperties .pageLinkPrev { float:left; margin-left:75px; }
.retsLister.retsProperties .pageLinkNext { float:right; margin-right:75px; }

.searchBar { border-bottom: 1px solid #ccc; background-color:#f2f2f2; padding: 5px 15px; }
.searchBar label { display:inline-block; padding: 0 1em; border-left: 1px solid #ccc; }
.searchBar label:first-child { border-left: 0 none; }
.searchBar select { background-color:transparent; border-radius:1px; }
.searchBar a.button { margin: 0.5em 0.8em !important;}
.retsLister.retsProperties h1 { display:inline-block; vertical-align:middle; }
.retsLister.retsProperties .utilityLinks { margin: 30px 0 30px 30px; vertical-align:middle; }
.retsLister.retsProperties .tabPages { position:relative; border-top: 1px solid #ccc; margin-top:-1px; padding:10px; }
.retsLister.retsProperties .retsList { clear:both; margin: 2em 0; }
.retsLister.retsProperties .retsList .item { float:left; display:block; position:relative; width:30%; margin: 2.5% 0 2.5% 5%; height:290px; background-repeat:no-repeat; background-position:center; background-size:cover; overflow:hidden; }
.retsLister.retsProperties .retsList .item:nth-child(3n+1) { margin-left:0; }
.retsLister.retsProperties .retsList .item .text { position:absolute; background-color: rgba(0,0,0,0.6); color:#fff; }
.retsLister.retsProperties .retsList .item .category { top:0; left:0; padding:5px; }
.retsLister.retsProperties .retsList .item .info { top:163px; left:0; right:0; height:270px; padding: 15px 5%; line-height:1.5; transition: all 0.3s; }
.retsLister.retsProperties .retsList .item:hover .info { top:20px; }
.retsLister.retsProperties .retsList .item .price { float:right; background-color:#44bd36; margin: 0 0 1em 1em; padding:15px; line-height:normal; max-width:30%; }
.retsLister.retsProperties .retsList .item .address { margin-bottom:1em; }

/* Agents Lister Layout --------------- */
.retsModule.retsLister h2 { letter-spacing: 0.005em; text-align:left; font-size: 40px; margin-bottom: 1em; }
.retsModule.retsLister .numListings { float:left; }
.retsModule.retsLister .retsAgent { border: 2px solid #004e7d; border-radius: 3px; border-top-right-radius: 0px; padding-left: 8px; padding: 5px 12px; background: #f4f4f4; box-shadow: inset 1px 1px 3px rgba(0,0,0,0.2); }

.retsModule.retsLister .agent { margin: 10px 0 18px; padding: 15px 22px; background: #fff; display:flex; flex-direction: row; flex-wrap: wrap; padding: 18px 5px 3px; border-radius: 3px; border: 1px solid #BBC2CA; }
.retsModule.retsLister .agent .column { padding: 0px 10px 10px; position:relative; }
.retsModule.retsLister .agent  h4 { color: #5D99CA; margin:0px; letter-spacing: 0.02em;}
.retsModule.retsLister .agent  hr {width: 100%; border:0px; height: 1px; margin:3px 0px 6px; background: #f1f1f1;}
.retsModule.retsLister .agent .label {padding:0px;}
.retsModule.retsLister .agent .value {padding:0 0 0 4px; font-weight: bold; color: #5D99CA;}
.retsModule.retsLister .agentThumbnail { display:block; position: relative; width: auto; height: 140px;}
.retsModule.retsLister .agentThumbnail img { display:block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; border-radius: 3px; }
.retsModule.retsLister .agentLink { display:block; text-align:center; font-weight: 300;}
.retsModule.retsLister .agent .address {padding-right: 105px;}
.retsModule.retsLister .agent .propertyDetails { display:flex; flex-direction: row; flex-wrap: wrap; padding: 8px 0px 0px; font-size:14px; }
.retsModule.retsLister .agent .propertyDetails .column { padding: 0 12px 10px 0;}
.retsModule.retsLister .agent .topInfo { position: absolute; top:0px; right:10px; text-align:right; line-height: 1.1;}
.retsModule.retsLister .agent .propertyRealtor { padding-top:6px; text-align:center; }

.retsAgents .agent_thumbnail { float: left; width: 175px; margin: 0 30px 10px 0; padding: 0; display: block; box-sizing: border-box; }
.retsLister .agent_thumbnail { width: 150px; height: 150px; display: block; margin: 0 10px 10px 0; padding: 0; float: left; }
.retsLister .agent_thumbnail img, .retsAgents .agent_thumbnail img { max-width: 100%; vertical-align: middle; }

.alphaSearch { display:flex; justify-content:space-evenly; margin: 30px 0 70px 0; }
.alphaSearch a {
    font-size: 16px;
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
    -moz-transition: border-color 0.2s ease-in-out, background-color 0.2s ease-in-out, color 0.2s ease-in-out;
    -webkit-transition: border-color 0.2s ease-in-out, background-color 0.2s ease-in-out, color 0.2s ease-in-out;
    -ms-transition: border-color 0.2s ease-in-out, background-color 0.2s ease-in-out, color 0.2s ease-in-out;
    transition: border-color 0.2s ease-in-out, background-color 0.2s ease-in-out, color 0.2s ease-in-out;
    background-color: #231f20;
    color: #ffffff !important;
    font-family: "Open Sans Condensed", sans-serif;
    font-weight: 700;
    height: 1.7em;
    line-height: 1.7em;
    padding: 0 0.5em;
    text-decoration: none;
    transition: all 0.2s;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -ms-transition: all 0.2s;
}
.alphaSearch a:hover { background-color:#7bc143; }

#officeAgents { margin-top: 50px; }
#officeAgents .retsList {  }
.retsDetail.retsAgencies .contactInfo { float:right; width:50%; }

table.retsList { width:100%; border-collapse:collapse; }
table.retsList tr:nth-child(odd) { background-color:#f2f2f2; }
table.retsList tr:nth-child(even) { background-color:#eaeaea; }
table.retsList td
, table.retsList th { padding:10px; vertical-align:top; }
table.retsList th { width:25%; background-color:#000; color:#fff; text-align:left; font-family:'Open Sans Condensed'; font-size:20px; }
table.retsList img { max-width:140px; }

#propertyMap { height:500px; }

.retsDetail .mainInfo
, .retsDetail .additionalInfo { clear:both; }
.retsDetail .resultsLink { float:right; margin: 0 0 0 30px; }
.retsDetail .tabSection { margin-top:38px; }
.retsDetail .tabPages { position:relative; border: 1px solid #ccc; margin-top:-1px; padding:10px; }
.retsDetail #mainImage:empty { display:none; }
.retsDetail #mainImage img { max-width:100%; }
.retsDetail.retsProperties #mainImage
, .retsDetail .address
, .retsDetail .details
, .retsDetail .locationInfo
, .retsDetail .contactInfo { margin: 0 0 1em; }
.retsDetail .price { color:#44bd36; font-weight:bold }
.retsDetail .contactInfo { background-color:#f2f2f2; width:100%; }
.retsDetail table.retsDetails td
, .retsDetail .contactInfo td { padding:5px; vertical-align:top; }
.retsDetail .description
, .retsDetail .childList { clear:both; margin: 15px 0; }
.retsDetail #photoThumbs { overflow-x:scroll; overflow-y:hidden; white-space:nowrap; }
.retsDetail #photoThumbs a { display:inline-block; width:120px; margin: 0 5px; vertical-align:middle; }
.retsDetail #photoThumbs a:first-child { margin-left:0; }
.retsDetail #photoThumbs a:last-child { margin-right:0; }
.retsDetail #photoThumbs img { max-height:100px; max-width:100%; }
.retsDetail table.retsDetails { width:100%; border-collapse:collapse; }
.retsDetail table.retsDetails tr:nth-child(odd) { background-color:#eaeaea; }
.retsDetail table.retsDetails tr:nth-child(even) { background-color:#f2f2f2; }
.retsDetail table.retsDetails th { padding:10px; background-color:#000000; text-align:left; }
.retsDetail table.retsDetails h4 { margin:0; color:#fff; font-size:20px;}
.retsDetail table.retsDetails td { padding:10px; }
.retsDetail table.retsDetails td.fieldValue { word-wrap:break-word; }

.retsDetail.retsAgents .numListings { border: 2px solid #eaeaea; margin-bottom:1em; margin-top:1em; padding:10px; }
.retsDetail.retsAgents .numListings h4 { margin-top:0; }
.retsDetail.retsAgents .numListings a.active { font-weight:bold; }
.retsDetail.retsAgents .contactInfo { width:50%; }
.retsDetail.retsAgents table.retsList th { width:33.33%; }
.retsDetail.retsAgents table.retsList .property { display:none; }
.retsDetail.retsAgents table.retsList .property.active { display:table-row; }
.retsAgents label { white-space:nowrap; }
.retsAgents .memberList .agent { display:inline-block; width:140px; vertical-align:top; margin:0.5em; }
.retsAgents .memberList .agent .image { height:160px; background-position:center; background-repeat:no-repeat; background-size:cover; margin-bottom:1em; }
.retsAgents .memberList .agent .name { font-size:larger; font-weight:bold; }
.retsAgents .memberList .agent .office { font-size:smaller; }

.retsDetail.retsAgencies .contactInfo { float:right; width:50%; }

table.retsSearchForm { position: relative; min-width: 50%;}
table.retsSearchForm td { padding:5px; }
table.retsSearchForm tr.multiselect>td { vertical-align:top; }
#mls { padding-bottom: 30px;}
#mlsSearchBox { display: inline-block; width: 300px;}
table.retsSearchForm #county { position:relative; }
table.retsSearchForm select { width:335px; }
table.retsSearchForm tr.multiselect select {height: 100px;}
.retsModule .instructions { width:160px; font-size:smaller; color:#999; }
.retsModule .errorField { background-color:#f66; }
.retsSearchForm #countyImageMap { position:absolute; top:-128px; left:100%; width:520px; height: 700px; }
.retsSearchForm #countyImageMap::after { content: 'Click to Select Specific Counties to Search'; position: absolute; font-size: 12px; font-weight: bold; font-style: italic; text-align:center; top: -30px; line-height: 30px; left:0px; right:0px; height: 30px; overflow: hidden;}
.retsSearchForm #countyImageMap img { max-width: none !important ; }
.retsSearchForm #countyImageMap canvas { }
.retsSearchForm #countyImageMap map {}
.retsSearchForm #countyImageMap area { }
.retsSearchForm #countyImageMap area.selected {  }

.retsOpenHouses a { text-decoration: none; }
.retsOpenHouses .dateTime { font-weight:bold; }
.retsOpenHouses .description { margin: 1em 0; }


@media screen and (min-width:768px) and (max-width:1024px) {
    .retsSearchForm #countyImageMap { position:static; width:auto; margin-top:1em; }
    .retsLister.retsProperties .retsList .item { height:200px; overflow:visible; margin-bottom:290px; font-size:smaller; }
    .retsLister.retsProperties .retsList .item .info { height:290px; top:100%; background-color:transparent; color:#2a2c2d; }
    .retsLister.retsProperties .retsList .item:hover .info { top:100% !important; }
    .retsLister.retsProperties .retsList .item .price { float:none; margin-left:0; max-width:none; background-color:transparent; padding:0; font-size:larger; }
}


/*
@media screen and (max-width:767px) {
	.columnOneHalf { float:none !important; width:auto !important; }
	.columnOneHalf:first-child { margin-right:0; }
    .retsModule h1 { clear:right; }
}
*/
@media screen and (max-width:767px) {
    .retsModule.flexContainer, .retsModule .flexContainer { flex-wrap:wrap; }
    .retsModule .column.colOneHalf
    , .retsModule .column.colOneThird
    , .retsModule .column.colTwoThirds
    , .retsModule .column.colOneFourth { width:100%; }
    
    .retsLister.retsProperties .retsList .item { float:none; width:auto; height:200px; overflow:visible; margin-bottom:310px; margin-left:0; }
    .retsLister.retsProperties .retsList .item .info { height:290px; top:100%; font-size:smaller; background-color:transparent; color:#2a2c2d; }
    .retsLister.retsProperties .retsList .item:hover .info { top:100% !important; }
    .retsLister.retsProperties .retsList .item .price { float:none; margin-left:0; max-width:none; background-color:transparent; padding:0; font-size:larger; }
    .searchBar label { border-left: 0 none; }
    .retsLister.retsProperties .utilityLinks { margin-top:0; }
    .retsLister.retsProperties .pagination { float:none; width:auto; padding:1em; }
    .retsLister.retsProperties .paginationLinks { height:2em; }
    .retsLister.retsProperties .pageLinkPrev { margin-left:10px; }
    .retsLister.retsProperties .pageLinkNext { margin-right:10px; }

	.retsLister table.retsList
	, .retsLister table.retsList tbody
	, .retsLister table.retsList tr
	, .retsLister table.retsList td { display:block; width:auto; }
	.retsLister table.retsList th { display:none; }
	.retsLister table.retsList tr::after { content:''; display:block; clear:both; visibility:hidden; font-size:0; height:0; }
	.retsLister.retsProperties table.retsList td { float:left; width:46%; padding:2%; }
	.retsLister.retsProperties table.retsList td:nth-child(3) { clear:left; }
    
    .retsDetail table.retsDetails, table.retsSearchForm
    , .retsDetail table.retsDetails tbody, table.retsSearchForm tbody
    , .retsDetail table.retsDetails th, table.retsSearchForm th
    , .retsDetail table.retsDetails td, table.retsSearchForm td { display:block; width:auto; border:none; }
	.retsDetail table.retsDetails td.fieldValue { padding-left:2em; }
	
	.retsAgents label { display:block; margin: .5em 0; white-space:nowrap; }
    .retsLister .agent_thumbnail { float:none; }
	.alphaSearch { display:block; }
	
	table.retsSearchForm select { width:100%; height:auto; }
    .retsSearchForm #countyImageMap { display:none; }
}


@media screen and (min-width:451px) and (max-width:767px) {
    .agentsOfAgency .columnOneHalf { float:left !important; width:48% !important; }
    .agentsOfAgency .columnOneHalf:first-child { margin-right:4%; }
}


@media print {
    .retsLister .retsSearch
    , .retsModule .utilityLinks
    , .retsDetail .tabs { display:none; }
    
    .retsDetail .tabPage { display:block !important; clear:both; margin: 3em 0; }
}