/* ---------------------------------------------------------------------------------------------

  general setup

--------------------------------------------------------------------------------------------- */

body {
  margin: 0; /* removes default margin in screen.css */
  background: #FFF url(../images/public/bg_main.png) repeat-x fixed;
  color: #666;
}

a, a:visited { color: #00519f; outline: none; }
a:hover { color: #00519f; text-decoration: none; }
a:focus, a:active, input, select { outline: none; }


/* ---------------------------------------------------------------------------------------------

	background wrappers

--------------------------------------------------------------------------------------------- */

#wrapper-clouds { background: url(../images/public/bg_wrapper-clouds.png) top center no-repeat fixed; }
#wrapper-content {
	background: url(../images/public/bg_wrapper-content1.png) repeat-x;
}
#wrapper-content-secondary { background: url(../images/public/bg_wrapper-content-secondary.png) repeat-x; }


/* ---------------------------------------------------------------------------------------------

	main container

--------------------------------------------------------------------------------------------- */

.container {
  background: url(../images/public/bg_container-sub.png) top right no-repeat;
}

#s-home .container {
  background: url(../images/public/bg_container.png) top left no-repeat;
}


/* ---------------------------------------------------------------------------------------------

	utility bar - sign up & login

--------------------------------------------------------------------------------------------- */

#utility-bar { height: 42px; position: relative; /* for positioning login button below */ }

#utility-bar a {
  height: 20px;
  position: absolute;
  top: 11px;
  display: block;
  text-indent: -9999px;
}

a#signup {
  width: 74px;
  right: 145px;
  background: url(../images/public/btn_signup-login.png) 0 0 no-repeat;
}

a#login {
  width: 75px;
  right: 70px;
  background: url(../images/public/btn_signup-login.png) -75px 0 no-repeat;
}

a#signup:hover { background-position: 0 -20px; }
a#login:hover { background-position: -75px -20px; }


/* ---------------------------------------------------------------------------------------------

	header

--------------------------------------------------------------------------------------------- */

#header {
	margin-top: 18px;
	height: 126px;
	background: url(../images/public/bg_heade1r.png) 0 54px no-repeat;
	position: relative; /* absolutely relative positioning for logo and nav */
}

#header h1  {
	width: 310px;
	height: 108px;
	position: absolute;
	right: 30px;
}

#header h1 a {
  width: 310px;
  height: 108px;
  display: block;
  text-indent: -9999px;
  background: url(../images/public/tr_logo.png) no-repeat;
}

#header ul.tabs {
  margin: 0;
  position: absolute;
  top: 54px;
  left: 360px;
}

#header ul.tabs a {
  height: 54px;
  display: block;
  text-decoration: none;
  text-indent: -9999px;
  background: url(../images/public/bg_nav.png) no-repeat;
  border: none;
}

#header ul.tabs li#features a { width: 107px; }
#header ul.tabs li#why a { width: 192px; background-position: -107px 0; }
#header ul.tabs li#signup a { width: 163px; background-position: -299px 0; }
#header ul.tabs li#support a { width: 98px; background-position: -462px 0; }

#header ul.tabs li#features a:hover { background-position: 0 -54px; }
#header ul.tabs li#why a:hover { background-position: -107px -54px; }
#header ul.tabs li#signup a:hover { background-position: -299px -54px; }
#header ul.tabs li#support a:hover { background-position: -462px -54px; }

#s-features #header ul.tabs li#features a { background-position: 0 -108px; }
#s-why #header ul.tabs li#why a { background-position: -107px -108px; }
#s-signup #header ul.tabs li#signup a { background-position: -299px -108px; }
#s-support #header ul.tabs li#support a { background-position: -462px -108px; }


/* ---------------------------------------------------------------------------------------------

	homepage

--------------------------------------------------------------------------------------------- */

/* BENEFITS ---------------------------------------------------- */
#benefits {
	width: 880px;
	height: 400px;
	position: relative;
	margin-top: 10px;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 40px;
	background-image: url(../images/public/2bg_benefits.png);
	background-repeat: no-repeat;
	background-position: left bottom;
}

#benefits .content {
  padding-left: 40px;
  width: 480px;
  height: 319px;
  overflow: hidden;
  float: left;
}

#benefits .graphic {
  width: 360px;
  height: 319px;
  float: left;
}

#benefits h2 {
  margin: 90px 0 25px 0;
  width: 430px;
  text-indent: -9999px;
}

#benefits p {
	padding: 0 15px;
	font-size: 14px;
	letter-spacing: -0.01em;
	font-family: "Berlin Sans FB";
}

#benefit-value,
#benefit-diverse,
#benefit-privacy,
#benefit-family,
#benefit-pro { display: none; position: absolute; top: 0; }

#benefits #benefit-main h2 { height: 93px; background: url(../images/public/tr_benefit-main-h2.png) no-repeat; }
#benefits #benefit-value h2 { height: 30px; background: url(../images/public/tr_benefit-value-h2.png) no-repeat; }
#benefits #benefit-diverse h2 { height: 60px; background: url(../images/public/tr_benefit-diverse-h2.png) no-repeat; }
#benefits #benefit-privacy h2 { height: 30px; background: url(../images/public/tr_benefit-privacy-h2.png) no-repeat; }
#benefits #benefit-family h2 { height: 66px; background: url(../images/public/tr_benefit-family-h2.png) no-repeat; }
#benefits #benefit-pro h2 { height: 66px; background: url(../images/public/tr_benefit-pro-h2.png) no-repeat; }

#benefits #benefit-main p { font-size: 18px; line-height: 1.3; }
#benefits #benefit-main .graphic,
#benefits #benefit-family .graphic { position: relative; background: url(../images/public/pic_benefit-bg.png); }
#benefits #benefit-main .graphic img,
#benefits #benefit-family .graphic img { position: absolute; top: 52px; left: 51px; }

#benefits ul.tabs {
	margin: 0;
	position: absolute;
	bottom: -86px;
	left: 0px;
	width: 880px;
}

#benefits ul.tabs a {
  height: 73px;
  display: block;
  text-decoration: none;
  text-indent: -9999px;
  background: url(../images/public/bg_benefit-nav.png) no-repeat;
  border: none;
}

#benefits ul.tabs li#bene-value a { width: 139px; }
#benefits ul.tabs li#bene-diverse a { width: 138px; background-position: -139px 0; }
#benefits ul.tabs li#bene-privacy a { width: 118px; background-position: -277px 0; }
#benefits ul.tabs li#bene-family a { width: 113px; background-position: -395px 0; }
#benefits ul.tabs li#bene-pro a { width: 146px; background-position: -508px 0; }
#benefits ul.tabs li#bene-signup a { width: 226px; background-position: -654px 0; }

#benefits ul.tabs li#bene-value a:hover,
#benefits ul.tabs li#bene-value a.selected { background-position: 0 -73px; }
#benefits ul.tabs li#bene-diverse a:hover,
#benefits ul.tabs li#bene-diverse a.selected { background-position: -139px -73px; }
#benefits ul.tabs li#bene-privacy a:hover,
#benefits ul.tabs li#bene-privacy a.selected { background-position: -277px -73px; }
#benefits ul.tabs li#bene-family a:hover,
#benefits ul.tabs li#bene-family a.selected { background-position: -395px -73px; }
#benefits ul.tabs li#bene-pro a:hover,
#benefits ul.tabs li#bene-pro a.selected { background-position: -508px -73px; }
#benefits ul.tabs li#bene-signup a:hover,
#benefits ul.tabs li#bene-signup a.selected { background-position: -654px -73px; }

/* REPORT A PASSING ---------------------------------------------------- */
#report {
  margin: -18px 0 36px 40px;
  width: 880px;
  height: 51px;
  position: relative;
  background: url(../images/public/bg_report-a-passing.png) no-repeat;
}

#report a {
  width: 190px;
  height: 45px;
  display: block;
  position: absolute;
  top: 3px;
  left: 672px;
  text-indent: -9999px;
}

/* CONTENT SECONDARY, QUOTES, PRESS LOGOS ---------------------------------------------------- */
#content-secondary {
  margin: 0 auto; padding-top: 36px; width: 950px;
}

#quotes h3 {
  margin-top: 12px;
  height: 45px;
  background: url(../images/public/tr_what-the-press.png) no-repeat;
  text-indent: -9999px;
}

#quotes .quote { margin-bottom: 54px; text-align: left; }

#quotes .quote h4 { 
  margin: 0 0 .5em 0;
  height: auto; 
  font-size: 16px; 
  font-weight: bold;
}

#quotes .quote p {
  margin: 0 0 9px;
  padding-bottom: 9px;
  font-size: 14px;
  font-family: "Palatino Linotype", Palatino, Palladio, "URW Palladio L", "Book Antiqua", Baskerville, "Bookman Old Style", "Bitstream Charter", "Nimbus Roman No9 L", Garamond, "Apple Garamond", "ITC Garamond Narrow", "New Century Schoolbook", "Century Schoolbook", "Century Schoolbook L", Georgia, serif;
  color: #404040;
  border-bottom: 1px solid #CCC;
}

#press-logos {
  padding-bottom: 100px;
  background: url(../images/public/bg_press-logos.png) 40px 0 no-repeat;
}

#press-logos ul {
  margin: 0 0 0 100px;
  list-style: none;
}

#press-logos ul a { 
  width: 179px;
  height: 66px;
  display: block;
  text-decoration: none;
  text-indent: -9999px;
  background: url(../images/public/logo_press-home.png) no-repeat;
  border: none;
}

#press-logos ul li#wsj a {  }
#press-logos ul li#usnews a { background-position: 0 -66px; }
#press-logos ul li#tc a { background-position: 0 -132px; }
#press-logos ul li#cnet a { background-position: 0 -198px; }
#press-logos ul li#rww a { background-position: 0 -264px; }

#press-logos ul li#wsj a:hover { background-position: -179px 0; }
#press-logos ul li#usnews a:hover { background-position: -179px -66px; }
#press-logos ul li#tc a:hover { background-position: -179px -132px; }
#press-logos ul li#cnet a:hover { background-position: -179px -198px; }
#press-logos ul li#rww a:hover { background-position: -179px -264px; }



/* ---------------------------------------------------------------------------------------------

	content

--------------------------------------------------------------------------------------------- */

#content {
  position: relative; /* for positioning signup button below */
}

#content p.button a {
  width: 190px;
  height: 45px;
  position: absolute;
  top: 36px;
  right: 75px;
  display: block;
  text-indent: -9999px;
}

#content p.signup a { background: url(../images/public/btn_signup.png) no-repeat; }
#content p.questions a { background: url(../images/public/btn_questions.png) no-repeat; }

#content h2 {
  margin: 72px 0 27px 40px;
  height: 45px;
  text-indent: -9999px;
}

#s-features #content h2 { margin-bottom: 36px; height: 36px; background: url(../images/public/tr_title-features.png) no-repeat; }
#s-why #content h2 { background: url(../images/public/tr_title-why.png) no-repeat; }
#s-signup #content h2 { background: url(../images/public/tr_title-signup.png) no-repeat; }
#s-thank-you #content h2 { background: url(../images/public/tr_title-thank-you.png) no-repeat; }\
#s-support #content h2 { background: url(../images/public/tr_title-support.png) no-repeat; }
#s-company #content h2 { background: url(../images/public/tr_title-company.png) no-repeat; }
#s-company #content h2.about { margin-bottom: 36px; height: 36px; background: url(../images/public/tr_title-about.png) no-repeat; }
#s-company #content h2.press { margin-bottom: 36px; height: 36px; background: url(../images/public/tr_title-press.png) no-repeat; }
#s-company #content h2.contact { margin-bottom: 36px; height: 36px; background: url(../images/public/tr_title-contact.png) no-repeat; }
#s-security #content h2 { background: url(../images/public/tr_title-security.png) no-repeat; }
#s-estate-planners #content h2 { margin-bottom: 36px; height: 36px; background: url(../images/public/tr_title-estate-planners.png) no-repeat; }
#s-subscription #content h2 { margin-bottom: 36px; height: 45px; background: url(../images/public/tr_title-subscription-agreement.png) no-repeat; }
#s-404 #content h2 { background: url(../images/public/tr_title-404.png) no-repeat; }
#s-report #content h2 { background: url(../images/public/tr_title-report-a-passing.png) no-repeat; }


/* ---------------------------------------------------------------------------------------------

	content-sidebar

--------------------------------------------------------------------------------------------- */

#content-sidebar {
  margin: 0 40px;
  padding-top: 36px;
  width: 200px;
  float: left;
  display: inline; /* double margin hack */
  background: url(../images/public/bg_content-sidebar.png) no-repeat;
}

#content-sidebar ul {
  margin: 0;
  list-style: none;
}

#content-sidebar li a {
  padding: 10px 20px;
  display: block;
  font-size: 15px;
  font-weight: bold;
  color: #777;
  text-decoration: none;
  line-height: 1;
  border-top: 1px solid #FFF;
  border-bottom: 1px solid #eaeaea;
}

#content-sidebar li a:hover, #content-sidebar li a.selected { color: #444; background-color: #FFF; }

/* FEATURES, WHY, COMPANY, SECURITY ---------------------------------------------------- */
#s-features #content-sidebar,
#s-why #content-sidebar,
#s-company #content-sidebar,
#s-security #content-sidebar,
#s-support #content-sidebar {
  min-height: 400px;
  height: auto !important;
  height: 400px;  
}

/* ACCOUNT REGISTRATION ---------------------------------------------------- */
#s-signup.registration #content-sidebar {
  margin: 68px 40px 0 0;
  padding: 38px 10px 100px 20px;
  width: 210px;
  min-height: 300px;
  height: auto !important;
  height: 300px;
  float: left;
  background: url(../images/public/bg_content-sidebar-right.png) no-repeat;
}

#s-signup.registration #content-sidebar h4 { font-weight: bold; }

/* REPORT A PASSING ---------------------------------------------------- */
#s-report #content-sidebar {
  margin: 68px 40px 0 0;
  padding: 38px 10px 100px 20px;
  width: 210px;
  min-height: 300px;
  height: auto !important;
  height: 300px;
  float: left;
  background: url(../images/public/bg_content-sidebar-right.png) no-repeat;
}

#s-report #content-sidebar h4 { font-weight: bold; }


/* ---------------------------------------------------------------------------------------------

	content-main

--------------------------------------------------------------------------------------------- */

#content-main {
  margin-right: 40px;
  padding-top: 36px;
  width: 630px;
  float: left;
}

#content-main h3 { margin: 10px 0 24px 0; } /* controlled by sifr */

#content-main h4 {
  height: auto;
  font-size: 18px;
  letter-spacing: -.01em;
}

#content-main p {
  font-size: 14px;
}

#content-main p img { float: none; margin: 0 30px 1.5em 0; padding: 0; }

/* PRICING & SIGNUP ---------------------------------------------------- */
#s-signup #content-main {
  margin: 0 40px;
  width: 870px;
  float: none;
}

#s-signup #content-main h3.sifr { padding-left: 20px; }
#s-signup.registration #content-main h3.sifr { padding-left: 0; }

#s-signup .plan {
  margin-bottom: 36px;
  padding-bottom: 4px; /* accounts for difference in height due to .lifetime border-width */
  width: 238px;
  float: left;
  border: 1px solid #dbedfa;
}

#s-signup .plan h3 { margin: 0; height: 89px; text-indent: -9999px; }

#s-signup .plan ul {
  margin: 0 0 20px 0;
  padding: 10px 15px;
  list-style: none;
  font-size: 15px;
  font-weight: bold;
  color: #777;
}

#s-signup .plan li { border-bottom: 1px solid #CCC; }
#s-signup .plan li span.help { cursor: pointer; text-decoration: underline; }
#s-signup .plan li span.help:hover { text-decoration: none; }
#s-signup .plan strong { color: #4aac02; }
#s-signup .plan p { margin: 0; padding: 5px 15px 10px; }
#s-signup .plan a { margin: 0 12px 10px; width: 130px; height: 45px; display: block; }

#s-signup .lifetime { padding-bottom: 0; width: 230px; border: 5px solid #a7d4f2; }
#s-signup .lifetime h3 { height: 85px; background: url(../images/public/tr_plan-lifetime.png) no-repeat; }
#s-signup .lifetime ul { padding: 10px 12px; }
#s-signup .lifetime p { padding: 5px 12px 10px; }

#s-signup .annual { border-left-color: #FFF; }
#s-signup .annual h3 { background: url(../images/public/tr_plan-annual.png) no-repeat; }
#s-signup .free { border-left-color: #FFF; border-top-color: #FFF; border-bottom-color: #FFF; }
#s-signup .free h3 { background: url(../images/public/tr_plan-free.png) no-repeat; }

#s-signup #all-plans {
  padding: 18px;
  width: 114px;
  height: 234px;
  float: left;
  font-size: 11px;
}

#s-signup #all-plans h5 { margin-bottom: 0; }
#s-signup #all-plans ul { margin: 5px 12px 0; }

#s-signup #plan-faq {
  padding: 20px 20px 50px;
  width: 510px;
  background: url(../images/public/bg_plan-faq.png) no-repeat;
}

#s-signup #plan-faq h4 { margin: 0; font-size: 18px; }

/* ACCOUNT REGISTRATION & REPORT A PASSING ---------------------------------------------------- */
#s-signup.registration #content-main,
#s-report #content-main {
  margin: 0 40px;
  padding-left: 20px;
  width: 540px;
  float: left;
  display: inline; /* double margin hack */
}

#s-signup.registration #content-main p.credit-info { width: 175px; float: right; font-size: 12px; }
#s-signup.registration #content-main p.credit-info img { margin: 20px 0 0 0; }

/* FORMS ---------------------------------------------------- */
#content-main .input-module {
  margin-bottom: 18px;
  padding: 15px;
}

#content-main .box { background: #efefef; border: 1px solid #DDD; }
#content-main .no-box { margin-bottom: 0; background: none; border-top: 5px solid #DDD; }
#content-main .buttons { background: url(../images/bg_input-module-buttons.png) repeat-x; }
#content-main a.admin { padding: 5px; color: #FF0000; }

#content-main .input-module .field { margin-bottom: 24px; }
#content-main .input-module .inline { margin-right: 15px; float: left; }
#content-main .input-module .last { margin-bottom: 10px; }

#content-main .input-module h4 {
  margin: 0 0 3px 0;
  height: 1.25em;
  font-size: 14px;
  font-weight: bold;
  color: #666;
}

#content-main .input-module .field input {
  padding: 3px;
  width: 424px;
  font: bold 18px"Helvetica Neue", Helvetica, Arial, sans-serif;
  border: 2px solid #CCC;
}

#content-main .input-module .field input[type="checkbox"] { width: auto; } /* for safari */
#content-main .input-module .field p { margin: 0; font-size: 12px; }
#content-main .input-module .field p.agree { margin-top: 10px; padding-top: 10px; border-top: 3px solid #CCC; }
#content-main .input-module .field input:focus { background-color: #e4f2ff; border-color: #BBB; }
#content-main .input-module .field .inline { margin-right: 15px; float: left; }
#content-main .input-module .field input.inline { margin-bottom: 5px; width: 250px; }
#content-main .input-module .field input.no-label { margin-bottom: 5px; }
#content-main .input-module .field label { display: block; color: #666; }
#content-main .input-module .field select { font-size: 14px; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; }
#content-main .input-module .medium input { width: 300px; }
#content-main .input-module .short input { width: 200px; }
#content-main .buttons input { font-size: 14px; padding: 0 10px; overflow: visible; }

#content-main .input-module .field input.LV_invalid_field { border-color: red; } 
#content-main .input-module .field span.LV_validation_message { display: block; font-weight: bold; color: red; }

#content-main .input-module .field input#checkbox-terms, #content-main .input-module .field input#checkbox-disclaimer { width: 20px; }

/* COMPANY PAGES ---------------------------------------------------- */
#s-company .block { margin-bottom: 36px; }

#s-company .block h3 { margin-bottom: 0; }

#s-company .block ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
}

#s-company .block ul li {
  padding: 10px 0;
  border-bottom: 1px solid #dbedfa;
}

#s-company .block ul li h4 { margin: 0; }

#s-company .kit { border-color: #FFF; }
#s-company .kit p { font-size: 12px; }

/* SUPPORT ---------------------------------------------------- */
#s-support #content-main ol { margin-left: 10px; }

#s-support #content-main.legal h4 { margin-bottom: 0; }
#s-support #content-main.legal p { font-size: 12px; }
#s-support #content-main.legal ul.alpha { list-style-type: upper-alpha; }

#content-main.accordion h4 { margin: 0; padding-top: 18px; cursor: pointer; }
#content-main.accordion h4.selected { color: #00519f; }
#content-main.accordion p { margin: 0; padding-top: 18px; }

#content-main.accordion-help h4 { margin: 10px 0; color: #00519f; }
#content-main.accordion-help h5 { margin: 0 0 0 10px; padding-top: 5px; cursor: pointer; }
#content-main.accordion-help h5.selected { color: #00519f; }
#content-main.accordion-help p { margin: 0 0 0 10px; padding-top: 5px; }
#content-main.accordion-help ul li { margin: 0 0 0 10px; }
#content-main.accordion-help ol li { margin: 0 0 0 20px; }

/* ESTATE PLANNERS,SUBSCRIPTION AGREEMENT, THANK YOU & 404 PAGES ---------------------------------------------------- */
#s-estate-planners #content-main,
#s-subscription #content-main,
#s-thank-you #content-main,
#s-404 #content-main { margin-left: 60px; }


/* ---------------------------------------------------------------------------------------------

	footer

--------------------------------------------------------------------------------------------- */

#wrapper-footer { margin-top: 72px; background: url(../images/public/bg_wrapper-content-secondary.png) repeat-x; }

#footer { margin: 0 auto; padding: 54px 0 54px 0; width: 950px; }

#footer ul { margin: 0; list-style: none; border-top: 1px solid #d4d4d4; }

#footer li a {
  padding: 1px 18px 1px 2px;
  display: block;
  text-decoration: none;
  border-bottom: 1px solid #d4d4d4;
  color: #444;
}

#footer li a:hover { color: #000; }

#footer p { margin: 0; padding: 0; font-size: 10px; font-weight: bold; text-align: center; }

#footer p.logo a {
  width: 110px;
  height: 41px;
  display: block;
  text-indent: -9999px;
  background: url(../images/public/tr_logo-footer.png) no-repeat;
  position: relative;
}

#footer p img { margin: 15px 0 5px; padding: 0; }
