html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

body {
	background: #cfd5d6;
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

:focus {
	outline: 0;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* --- THE GRID --- */

#page_wrap {
/*	background: #cfd5d6 url(../images/page-bk2.gif) bottom center repeat-y;*/
}

.container {
	margin: 0 auto;
	padding: 0 10px;
	width: 940px;
	background: #cfd5d6 url(../images/page-bk2.gif) bottom center repeat-y;
}

#container_bottom {
	margin: 0 auto;
	padding: 0;
	width: 960px;
	height: 50px;
	background: #cfd5d6 url(../images/page-btm.gif) top center no-repeat;
}


/* ---------------------------------------------------------------------------------------- 
   GRID ELEMENTS
    - #header
    - #top_nav
    - #banner 
    - #content
    - #right
    - #footer
------------------------------------------------------------------------------------------- */

#header {
	display: inline;
	float: left;
	height: 210px;
	padding: 0;
	margin: 10px 10px 0 10px;
	float: left;
	width: 920px;
}

.hd_hp { background: url(../images/header-bk.jpg) top no-repeat; }
.hd_cu { background: url(../images/header-bk.jpg) top right no-repeat; }
.hd_au { background: url(../images/header-bk.jpg) top right no-repeat; }
.hd_tc { background: url(../images/header-bk.jpg) top right no-repeat; }
.hd_lp { background: url(../images/header-bk.jpg) top right no-repeat; }
.hd_wm { background: url(../images/header-bk-wealth.jpg) top right no-repeat; }
.hd_fp { background: url(../images/header-bk-financial.jpg) top right no-repeat; }
.hd_rp { background: url(../images/header-bk-retirement.jpg) top right no-repeat; }
.hd_mg { background: url(../images/header-bk-mortgage.jpg) top right no-repeat; }
.hd_ei { background: url(../images/header-bk-ethical2.jpg) top right no-repeat; }
.hd_cp { background: url(../images/header-bk-corporate.jpg) top right no-repeat; }

#top_right {
	float: right;
	background: url(../images/topright-bk.png);;
	color: #fff;
	font: 13px/1.3 Helvetica, Arial, sans-serif;
	margin: 30px 0 0 0;
	padding: 7px 10px;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	border-left: 1px solid #fff;
	text-align: right;
}

#top_right strong {
	font-size: 17px;
}

#top_right a, #top_right a:visited {
	color: #6cf;
	border-bottom: none;
	text-decoration: none;
}

#top_right a:hover {
	color: #6cf;
	border-bottom: dashed #6cf 1px;
	text-decoration: none;
}

#logo {
	margin-top: 75px;
	border-top: 2px solid #fff;
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
	width: 252px;
}

#ifa {
	text-transform: uppercase;
	font-size: 13px;
	color: #333;
	padding: 5px 10px 0 0;
	text-align: right;
	width: 242px;
}

#ifa_invert {
	text-transform: uppercase;
	font-size: 13px;
	color: #fff;
	padding: 5px 10px 0 0;
	text-align: right;
	width: 242px;
}


/* END #header ---------------------------------------------------------------------------- */


#top_nav {
	background: #000;
	display: inline;
	float: left;
	height: 40px;
	width: 920px;
	padding: 0;
	margin: 1px 10px 20px 10px;
}

#nav {
	float: left;
	padding: 0;
	margin: 0;
	list-style: none;
	width: 920px;
}

#nav ul {
	padding: 0;
	margin: 0;
	list-style: none;
	z-index: 9999;
}

#nav li {
	float: left;
	text-align: center; 
	padding: 0;
	margin: 0;
	border-right: solid #7f7f7f 1px;
}

#nav li.last {
	float: left;
	text-align: center; 
	padding: 0;
	margin: 0;
	border-right: none;
}

#nav li a.hp { width: 62px; }
#nav li a.au { width: 84px; }
#nav li a.wm { width: 162px; }
#nav li a.fp { width: 150px; }
#nav li a.rp { width: 100px; }
#nav li a.mg { width: 100px; }
#nav li a.ei { width: 155px; }
#nav li a.cp { width: 100px; }

#nav li:hover, #nav li.hover {
	position: static;
}

#nav li a,
#nav li a:visited {
	margin: 0;
	text-decoration: none;
	color: #fff;
	font-size: 12px;
	line-height: 18px;
	font-weight: normal;
	text-transform: uppercase;
	border: none;
	display: block;
	height: 18px;
	padding: 11px 0 11px 0;
	text-align: center;
}

#nav li a:hover,
#nav li a:active {
	background: url(../images/navactivered.gif) top left repeat-x;
	text-decoration: none;
}

#nav li a.active,
#nav li a.active:visited,
#nav li a.active:hover {
	background: url(../images/navactivered.gif) top left repeat-x;
	text-decoration: none;
	color: #fff;
}

#nav li ul { /* second-level lists */

	background: none;
	padding: 0;
	margin: 0;
	position: absolute;
	width: 220px;
	left: -999em; /* using left instead of display to hide menus because display: none isn't read by screen readers */
	border: none;
/*	height: auto;
	text-align: left;*/
	font-size: 12px;
	color: #fff;
	text-transform: none;
}

#nav li ul li {
	margin: 0;
	padding: 0;
	height: auto;
	width: auto;
	border: none;
}

#nav li ul a,
#nav li ul a:visited {
	background-color: #333;
	color: #fff;
	line-height: 18px;
	width: 200px;
	margin: 0;
	text-transform: none;
	padding: 7px 10px;
	text-align: left;
	font-size: 12px;
	border-top: 1px solid #7f7f7f;
	opacity: 0.9;
	filter: alpha(opacity=90);
}

#nav li ul a:hover {
	background-color: #666;
	color: #fff;
	height: auto;
}

#nav li:hover ul {
	left: auto;
}

#nav li:hover ul, #nav li.sfhover ul {
	left: auto;
}


/* END #top_nav ------------------------------------------------------------------------------- */


#content {
	display: inline;
	float: left;
	padding-top: 10px;
	padding-left: 0; 
	margin-left: 30px;
	margin-right: 0;
	margin-bottom: 20px;
	width: 590px;
}

#content h1 {
	padding-top: 10px;
}

#content h2 {
	padding: 10px 0 0 0;
	margin: 0 0 7px 0;
}

#content p {
	font: 14px/1.8 Georgia, "Times New Roman", Times, serif;
}

#content ul, #content ol {
	font: 14px/1.8 Georgia, "Times New Roman", Times, serif;
}

#content .req {
	color: #c00;
}

#content .small_caps {
	text-transform: uppercase;
	font: 12px/1.8 Helvetica, Arial, sans-serif;
	color: #666;
}

#guides-list {
	padding: 0;
	margin: 20px 0 0 0;
	list-style-type: none;
	font: 14px/1.8 Georgia, "Times New Roman", Times, serif;
}

#guides-list dt {
	padding-left: 120px;
	margin-bottom: 20px;
	height: 142px;
}

#guides-list dd {
	padding-left: 120px;
	margin-bottom: 20px;
}

#esmartmoney {
	background: url(../images/sm072010.jpg) 0 0 no-repeat;
}

#retirement {
	background: url(../images/retirement.jpg) 0 0 no-repeat;
}

#protection {
	background: url(../images/protection.jpg) 0 0 no-repeat;
}

#wealth {
	background: url(../images/wealth.jpg) 0 0 no-repeat;
}

#inheritance {
	background: url(../images/inheritance.jpg) 0 0 no-repeat;
}


/* END #content --------------------------------------------------------------------------------- */


#right {
	display: inline;
	float: left;
	padding: 0 0 30px 0;
	margin-left: 30px;
	margin-right: 30px;
	width: 260px; 
}

#right h2 {
	padding: 0;
	margin: 0;
	font-size: 17px;
	font-weight: normal;
}

#right p {
	font: 13px/1.7 Georgia, "Times New Roman", Times, serif;
	margin: 10px 0;
}

#right .block {
	padding: 80px 10px 5px 10px;
	margin: 20px 0 0 0;
	width: 240px;
}

#right #contact-block {
	background: #e7e7e7;
	padding: 10px;
	margin: 20px 0 0 0;
	width: 240px;
}

#right #guides-block {
	background: #e7e7e7 url(../images/guides.png) 10px 10px no-repeat;
	padding: 200px 10px 5px 10px;
	margin: 20px 0 0 0;
	width: 240px;
}

#right #ethical {
	background: #e7e7e7 url(../images/icon-ethical.jpg) 10px 10px no-repeat;
}

#right #mortgage {
	background: #e7e7e7 url(../images/icon-mortgage.jpg) 10px 10px no-repeat;
}

#right #wealth {
	background: #e7e7e7 url(../images/icon-wealth.jpg) 10px 10px no-repeat;
}

#right #retire-guide {
	background: #e7e7e7 url(../images/icon-retire-guide.jpg) 10px 10px no-repeat;
}

#right ul {
	background: #f1f1f1;
	padding: 10px;
	margin: 20px 0 0 0;
	list-style-type: none;
	font: 13px/1 Helvetica, Arial, sans-serif;
}

#right ul li {
	padding: 3px 0;
	margin: 0;
	width: 224px;
}

#right ul li a, #right ul li a:visited {
	color: #069;
	border-bottom: none;
	text-decoration: none;
	padding: 5px 8px;
	width: 224px;
	display: block;
}

#right ul li a:hover {
	background-color: #069;
	color: #fff;
	text-decoration: none;
	border-bottom: none;
	padding: 5px 8px;
	width: 224px;
	display: block;
}

#right ul li a.active,
#right ul li a.active:visited,
#right ul li a.hover {
	background-color: #000;
	text-transform: none;
	padding: 5px 8px;
	text-align: left;
	color: #fff;
	border-bottom: none;
	width: 224px;
	display: block;
}


/* END #right ----------------------------------------------------------------------------------- */


#footer_container {
	display: inline;
	float: left;
	width: 920px;
	margin: 0 10px;
	padding: 30px 0 0 0;
	background: #cfd4d5; /*url(../images/footer-top.gif) top no-repeat;*/
	color: #666;
}

#footer {
	margin: 0 20px 20px 0;
	padding: 0 20px;
	background: url(../images/ifa-logo.gif) bottom right no-repeat;
	width: 860px;
}

#footer p {
	font: 12px/1.8 Helvetica, Arial, sans-serif;
	margin: 0 0 10px 0;
}

#footer a, #footer a:visited {
	color: #069;
	border-bottom: none;
	text-decoration: none;
}

#footer a:hover {
	color: #069;
	border-bottom: dashed #069 1px;
	text-decoration: none;
}


/* END #footer ------------------------------------------------------------------------------------ */


/* `Forms ------------------------------------------------------------------------------------------*/

.form_input {
	padding-bottom: 10px;
	width: 540px;
	font: 13px/1.8 Georgia, "Times New Roman", Times, serif;
}

input { 
	font-family: "Courier New", monospace;
	font-weight: normal;
	font-size: 13px;
	padding: 2px;
}

textarea { 
	font-family: "Courier New", monospace;
	font-weight: normal;
	font-size: 13px;
	padding: 2px;
}

label {
	font-style: italic;
	color: #666;
}

.help {
	font-size: 12px;
}


/* `General styling --------------------------------------------------------------------------------*/

body {
	font: 13px/1.5 Helvetica, Arial, sans-serif;
	color: #4e4e4e;
}

a:focus {
	outline: 1px dotted invert;
}

hr {
	border: 0 #ccc solid;
	border-top-width: 1px;
	clear: both;
	height: 0;
}

a, a:visited {
	color: #069;
	border-bottom: none;
	text-decoration: none;
}

a:hover {
	color: #069;
	border-bottom: dashed #069 1px;
	text-decoration: none;
}

a.no_border,
a.no_border:visited,
a.no_border:hover {
	border: none;
	text-decoration: none;
	padding: 0;
	background: none;
}

/* `Headings ---------------------------------------------------------------------------------------*/

h1 {
	font: 18px/1.7 Georgia, "Times New Roman", Times, serif;
	font-style: italic; 
	font-weight: normal;
	color: #666;
}

h2 {
	font-weight: normal;
	font-size: 20px;
	color: #c00;
	text-transform: uppercase;
}

h3 {
	font: 16px/1.7 Georgia, "Times New Roman", Times, serif;
	font-style: italic; 
	font-weight: normal;
	padding-top: 10px;
}

h4 {
	font-size: 18px;
}

h5 {
	font-size: 16px;
}

h6 {
	font-size: 14px;
}

/* `Spacing ----------------------------------------------------------------------------------------*/

ol {
	list-style: decimal;
}

ul {
	list-style: square;
}

li {
	margin-left: 30px;
}

p,
dl,
hr,
h1,
h2,
h3,
h4,
h5,
h6,
ol,
ul,
pre,
table,
address,
fieldset {
	margin-bottom: 20px;
}

/* `Clear Floated Elements --------------------------------------------------------------------------*/

html body div.clear,
html body span.clear {
	background: none;
	border: 0;
	clear: both;
	display: block;
	float: none;
	font-size: 0;
	margin: 0;
	padding: 0;
	overflow: hidden;
	visibility: hidden;
	width: 0;
	height: 0;
}

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

.clearfix {
	display: inline-block;
}

* html .clearfix {
	height: 1%;
}

.clearfix {
	display: block;
}

