/* A container should group all columns/inner containers, acting a bit like a row. */
.container {
	width: 950px;
	margin: 0 auto;
}


/* Misc classes and elements
-------------------------------------------------------------- */

/* float a column to the left */
.column {
	float:left;
	margin-right: 3em;
}

/* rounded corners border with 15px radius */
.rounded-r15 {
	padding: 15px;
	border: 1px solid #ccc;
	-moz-border-radius: 15px;
	-webkit-border-radius: 15px;
	border-radius: 15px;
}
.rounded-bg-eee {
	background-color: #eee;
}
.rounded-r15 h2 {
	font-size: 1.3em;
	font-weight: bold;
	border-bottom: 1px solid #ccc;
}
.rounded-r15 img.icon {
	float: left;
	margin-right: 5px;
}

/* In case you need to add a gutter above/below an element */
.prepend-top { 
	margin-top:1.5em;
}
.append-bottom { 
	margin-bottom:1.5em;
}

div.error {
	color: red;
}
div.error > img {
	float: left;
	margin: 3px 5px 0 0;
}

/* Use this to create a horizontal ruler across a column. */
hr {
	background: #ddd; 
	color: #ddd;
	clear: both; 
	float: none; 
	width: 100%; 
	height: .1em;
	margin: 0 0 1.45em;
	border: none; 
}
hr.space {
	background: #fff;
	color: #fff;
}


/* Clearing floats without extra markup
   Based on How To Clear Floats Without Structural Markup by PiE
   [http://www.positioniseverything.net/easyclearing.html] */

.clearfix:after, .container:after {
	content: "."; 
	display: block; 
	height: 0; 
	clear: both; 
	visibility: hidden;
}
.clearfix, .container {display: block;}

/* Regular clearing
   apply to column that should drop below previous ones. */

.clear { clear:both; }
.clear-left, .clear_left { clear:left;}
.clear-right, .clear_right { clear:right;}


/* Primary layout stuff...
-------------------------------------------------------------- */

#header {
	height: 78px;
	margin-top: 10px;
	background: url(/assets/www/images/header-bg-top.jpg) no-repeat bottom left;
}
#logo {
	float: left;
	margin: 7px 10px 0 10px;
}
#header-ads {
	float: right;
	margin: 10px 15px 0 0;
}
#navigation {
	height: 32px;
	background: url(/assets/www/images/header-bg-bottom.jpg) no-repeat top left;
}
#menu-wrapper {
	margin: 0 22px;
	height: 31px;
}
#primary-wrapper {
	width: 790px;
	float: left;
}
#secondary-wrapper {
	width: 160px;
	float: right;
}
#footer {
	margin-top: 1em;
	text-align: center;
	color: #333;
}
#content-group-2-col, #content-group-3-col {
	margin-top: 1em;
}


/* Primary layout stuff for _3 columns_...
-------------------------------------------------------------- */

#content-group-3-col #content-main-wrapper {
	width: 620px;
	float: right;
}
#content-group-3-col #content-main {
	margin: 0 15px;
}
#content-group-3-col #content-left {
	width: 170px;
	float: left;
}


/* Primary layout stuff for _2 columns_...
-------------------------------------------------------------- */

#content-group-2-col #content-main {
	margin: 0 15px 0 0;
}


/* Page Top Message
-------------------------------------------------------------- */

#page-top-message {
	margin: 15px auto;
	padding: 15px;
	background-color: #ffc;
}
#page-top-message p {
	line-height: 1em;
	margin: 0;
	padding: 0;
}
#page-top-message.failure > p:first-child {
	margin-bottom: 10px;
}
#page-top-message.success {
	border: 1px solid #090;
}
#page-top-message.failure {
	border: 1px solid #900;
}
#page-top-message.success p {
	color: #090;
}
#page-top-message.failure p {
	color: #900;
}


/* Header Content
-------------------------------------------------------------- */

#header-content {
	margin: 15px auto;
}
.thirds-left-wrapper, .thirds-center-wrapper, .thirds-right-wrapper {
	margin: 0 auto;
	padding: 0;
	border: none;
	float: left;
}
.thirds-left-wrapper, .thirds-right-wrapper {
	width: 316px;
}
.thirds-center-wrapper {
	width: 317px;
}
.thirds-left {
	margin-right: 10px;
}
.thirds-center {
	margin-left: 5px;
	margin-right: 5px;
}
.thirds-right {
	margin-left: 10px;
}


/* Rates Watch form on home page
-------------------------------------------------------------- */

#rate-watch div.rate-watch-error {
	margin-bottom: 5px;
}
#header-content #rate-watch-info {
	margin: 0 0 10px 0;
	padding: 0;
}
#header-content #rate-watch-form fieldset {
	margin: 0 0 5px 0;
	padding: 0;
}
#header-content #rate-watch-form label {
	width: 75px;
	float: left;
	margin: 0 5px 0 0;
	padding: 0;
	text-align: right;
	font-size: 0.85em;
}
#header-content #rate-watch-form label.error {
	width: 190px;
	float: left;
	margin: 0 0 0 80px;
	text-align: left;
}
#header-content #rate-watch-form input.text, #header-content #rate-watch-form select {
	font-size: 0.8em;
	margin: 0;
	padding: 0;
}
#header-content #rate-watch-form input.text {
	width: 50px;
	float: left;
}
#header-content #rate-watch-form input.email {
	width: 160px;
}
#header-content #rate-watch-form input.submit {
	font-size: 0.8em;
	font-weight: bold;
}


/* Rates Watch main page/form
-------------------------------------------------------------- */

#rate-watch-main div.rate-watch-error {
	margin-bottom: 10px;
}
#rate-watch-main #rate-watch-form fieldset {
	margin: 0 0 10px 0;
	padding: 0;
}
#rate-watch-main #rate-watch-form label {
	width: 100px;
	float: left;
	margin: 0 5px 0 0;
	padding: 0;
	text-align: right;
}
#rate-watch-main #rate-watch-form label.error {
	width: 300px;
	float: left;
	margin: 0 0 0 5px;
	text-align: left;
}
#rate-watch-main #rate-watch-form input.text, #rate-watch-main #rate-watch-form select {
	margin: 0;
	padding: 0;
}
#rate-watch-main #rate-watch-form input.text {
	width: 200px;
	float: left;
}
#rate-watch-main #rate-watch-form input.submit {
	font-weight: bold;
}


/* Calculators
-------------------------------------------------------------- */

#monthly-payment-box-wrapper {
	width: 315px;
}
#monthly-payment-form fieldset {
	margin: 0 0 5px 0;
	padding: 0;
}
#monthly-payment-form label {
	width: 80px;
	float: left;
	margin: 0 5px 0 0;
	padding: 0;
	text-align: right;
	font-size: 0.85em;
}
#monthly-payment-form label.error {
	width: 120px;
	float: left;
	margin: 0 0 0 5px;
	text-align: left;
}
#monthly-payment-form input.text, #monthly-payment-form select {
	font-size: 0.8em;
	margin: 0;
	padding: 0;
}
#monthly-payment-form input.text {
	width: 50px;
	float: left;
}
#monthly-payment-form input.submit {
	font-size: 0.8em;
	font-weight: bold;
}
#monthly-payment-result {
	width: auto;
	margin-top: 10px;
	padding: 3px;
	border: 1px solid #ccc;
	background-color: #ff9;
	text-align: center;
	font-weight: bold;
	color: #060;
	display: none;
}

#mortgage-calculators-page-content #monthly-payment-box-wrapper {
	float: left;
}
#mortgage-calculators-page-content #monthly-payment-box {
	margin: 0 15px 15px 0;
}

#more-mortgage-calculators {
	margin-top: 10px;
	text-align: center;
}


/* Top search forms (above content)
-------------------------------------------------------------- */

#compare-mortgage-rates-top-wrapper, #find-mortgage-lenders-wrapper {
	margin: 0 auto;
	padding: 0;
	border: none;
	float: left;
}
#compare-mortgage-rates-top-wrapper {
	width: 375px;
}
#find-mortgage-lenders-wrapper {
	width: 575px;
}
#compare-mortgage-rates-top {
	margin-right: 8px;
}
#find-mortgage-lenders {
	margin-left: 7px;
}


/* Compare Mortgage Rates form, top (above content)
-------------------------------------------------------------- */

#compare-mortgage-rates-top.rounded-r15 {
	padding: 7px 15px 2px 15px;
}
#compare-mortgage-rates-top h2 {
	float: left;
	color: #900;
	border: none;
}
#compare-mortgage-rates-top h2, #compare-mortgage-rates-top img.icon {
	float: left;
	margin-right: 5px;
	margin-top: 6px;
}
#compare-mortgage-rates-top fieldset {
	margin: 0 0 0 20px;
	padding: 0;
	float: left;
}
#compare-mortgage-rates-top #rates-search-form-loanType, #compare-mortgage-rates-top #rates-search-form-submit {
	margin-left: 0;
}
#compare-mortgage-rates-top label {
	display: block;
	margin: 0 2px 0 0;
	padding: 0;
	font-size: 0.85em;
	line-height: 1em;
	text-align: left;
}
#compare-mortgage-rates-top input.text, #compare-mortgage-rates-top select {
	margin: 0;
	padding: 0;
	font-size: 0.85em;
}
#compare-mortgage-rates-top input.text {
	width: 50px;
}
#compare-mortgage-rates-top input.submit {
	font-size: 0.8em;
	font-weight: bold;
}
#compare-mortgage-rates-top #rates-search-form-submit {
	clear: left;
	margin-bottom: 10px;
}


/* Find Mortgage Lenders form, top (above content)
-------------------------------------------------------------- */

#find-mortgage-lenders.rounded-r15 {
	padding: 7px 15px 2px 15px;
}
#find-mortgage-lenders h2 {
	float: left;
	color: #900;
	border: none;
}
#find-mortgage-lenders h2, #find-mortgage-lenders img.icon {
	float: left;
	margin-right: 5px;
	margin-top: 6px;
}
#find-mortgage-lenders fieldset {
	margin: 0 0 0 15px;
	padding: 0;
	float: left;
}
#find-mortgage-lenders #find-lenders-form-findLenderLoanType, #find-mortgage-lenders #find-lenders-form-submit {
	margin-left: 0;
}
#find-mortgage-lenders label {
	display: block;
	margin: 0 2px 0 0;
	padding: 0;
	font-size: 0.85em;
	line-height: 1em;
	text-align: left;
}
#find-mortgage-lenders input.text, #find-mortgage-lenders select {
	margin: 0;
	padding: 0;
	font-size: 0.85em;
}
#find-mortgage-lenders input.text {
	width: 50px;
}
#find-mortgage-lenders input.submit {
	font-size: 0.8em;
	font-weight: bold;
}
#find-mortgage-lenders #find-lenders-form-submit {
	clear: left;
	margin-bottom: 10px;
}


/* Find Mortgage Lenders iFrame
-------------------------------------------------------------- */

#find-mortgage-lenders-iframe-wrapper {
	text-align: center;
	/* width: 542px; */
}
#find-mortgage-lenders-iframe.rounded-r15 {
	padding: 7px 15px 2px 15px;
}
#find-mortgage-lenders-iframe h2 {
	float: left;
	color: #900;
	border: none;
}
#find-mortgage-lenders-iframe h2, #find-mortgage-lenders-iframe img.icon {
	float: left;
	margin-right: 5px;
	margin-top: 6px;
}
#find-mortgage-lenders-iframe iframe {
	position: relative;
	height: 650px;
	width: 510px;
	border: 0;
	margin: 0;
}


/* State Links box
-------------------------------------------------------------- */

#state-links {
	margin-top: 15px;
}
#state-links-content {
	margin-left: 23px;
}


/* Contact Us Form
-------------------------------------------------------------- */

#contact-form {
	margin-top: 15px;
}
#contact-form fieldset {
	margin: 20px 0 0 0;
	padding: 0;
}
#contact-form label {
	display: block;
	margin: 0;
	padding: 0;
	font-size: 1.1em;
	line-height: 1em;
	text-align: left;
}
#contact-form input.text {
	width: 250px;
}
#contact-form input.submit {
	font-weight: bold;
	width: 6em;
}


/* rates search results
-------------------------------------------------------------- */

#content-main table.ratesResults {
	width: 95%;
	font-size: 0.9em;
}
#content-main table.ratesResults td, #content-main table.ratesResults th {
	padding: 2px 5px;
}
#content-main table.ratesResults .right {
	text-align: right;
}
#content-main table.ratesResults .rates-phone-icon {
	width: 20px;
	height: 20px;
	margin-top: 2px;
}
#content-main table.ratesResults tr.headrow {
	background-color: #EEE;
}
.jqmWindow {
    display: none;
    position: fixed;
    top: 17%;
    left: 50%;
    margin-left: -300px;
    width: 600px;
    background-color: #EEE;
    color: #333;
    border: 1px solid black;
    padding: 12px;
}
.jqmOverlay {
	background-color: #000;
}


/* Current Mortgage Rates (average)
-------------------------------------------------------------- */

table.current-rate-average {
	margin: 0;
	padding: 0;
}
table.current-rate-average th, table.current-rate-average td {
	margin: 0;
	padding: 3px;
	line-height: 1em;
	font-size: 0.9em;
}
table.current-rate-average tr.odd td {
	background-color: #e5ecf9;
}
table.current-rate-average tr.even td {
	background-color: #fff;
}
div.current-rate-average-informa {
	padding: 5px 0;
	line-height: 1em;
	font-size: 0.8em;
	text-align: right;
}
div.current-rate-average {
	padding: 25px 0 0 0;
	line-height: 1em;
	text-align: center;
}


/* State rate averages
-------------------------------------------------------------- */

#state-rate-averages {
	width: 300px;
	margin: 0 15px 15px 0;
	float: left;
}


/* Unsubscribe lookup by E-mail form
-------------------------------------------------------------- */

#unsubscribe-email-form fieldset {
	margin: 0 15px 3px 15px;
	padding: 0;
}
#unsubscribe-email-form label {
	display: block;
	font-size: 1.1em;
}
#unsubscribe-email-form input.text {
	width: 300px;
}


/* Unsubscribe Options form
-------------------------------------------------------------- */

#unsubscribe-options-form fieldset {
	margin: 5px;
	padding: 5px;
}
#unsubscribe-options-form label {
	display: block;
	margin: 0 0 5px 0;
	font-weight: normal;
}
#unsubscribe-options-form label.error {
	display: none;
}


/* Related links "directory" lists (generally on top-level pages)
-------------------------------------------------------------- */

.page_related_links_left, .page_related_links_right {
	float: left;
	width: 35%;
}
.page_related_links_right {
	margin-left: 3.0em;
}
.page_related_links_section {
	margin: 0.5em 0 3.0em 0;
}
.page_related_links_section p {
	margin-bottom: 0.75em;
}
.page_related_links_section ul {
	list-style-type: circle;
}


/* side box stuff
-------------------------------------------------------------- */

.sidebox {
	margin: 0;
	padding: 0;
	background: url(/assets/www/images/sbbody-r.gif) no-repeat bottom right;
}
.boxhead_right {
	background: url(/assets/www/images/sbhead-r.jpg) no-repeat top right;
}
.boxhead_left {
	background: url(/assets/www/images/sbhead-l.jpg) no-repeat top left;
}
.boxhead_inner {
	border-bottom: 1px solid #cdcdcd;
	margin: 0 8px 0 7px;
	text-align: center;
}
.sidebox h5 {
	margin: 0;
	padding: 20px 11px 12px 12px;
	font-size: 1.05em; 
	text-shadow: rgba(0,0,0,.4) 0px 2px 5px; /* Safari-only, but cool */
}
.boxbody {
	background: url(/assets/www/images/sbbody-l.gif) no-repeat bottom left;
	padding: 10px 20px;
	font-size: 0.85em;
}


/* alphabetic list menu (for glossary)
-------------------------------------------------------------- */

#alphanavcontainer {
	margin: 1em 0 1.5em;
	padding: 0;
	height: 1em;
}
#alphanavcontainer ul {
	border: 0;
	margin: 0;
	padding: 0;
	list-style-type: none;
	text-align: center;
}
#alphanavcontainer ul li {
	display: block;
	float: left;
	text-align: center;
	padding: 0;
	margin: 0;
}
#alphanavcontainer ul li a {
	background: #fff;
	width: 17px;
	height: 17px;
	border-top: none;
	border-left: 1px solid #cccccc;
	border-bottom: none;
	border-right: none;
	padding: 0;
	margin: 0 0 10px 0;
	color: blue;
	text-decoration: none;
	display: block;
	text-align: center;
	font: normal 11px/19px "Lucida Grande", "Lucida Sans Unicode", verdana, lucida, sans-serif;
}
#alphanavcontainer ul li a:hover {
	color: #ffffff;
	background: #ACD264;
}
#alphanavcontainer a:active {
	background: #ACD264;
	color: #fff;
}


/* Glossary
-------------------------------------------------------------- */

#glossary_terms {
	margin: 1em 0;
	padding: 0;
}
#glossary_terms p {
	margin: 0;
	padding: 0;
	line-height: 1.5em;
}
#glossary_terms .column {
	width: 35%;
	margin-right: 4em;
}


/* State Areas
-------------------------------------------------------------- */

#state-areas {
	margin: 1em 0;
	padding: 0;
}
#state-areas p {
	margin: 0;
	padding: 0;
	line-height: 1.5em;
}
#state-areas .column {
	margin-right: 4em;
}

