@charset "UTF-8";
body  {
	font: 100%/1.5 Verdana, Arial, Helvetica, sans-serif;
	background: #FFF url(../images/body_back_inner.gif) repeat-x;
	margin: 0; 
	padding: 0;
	text-align: center; 
	color: #000;
}
body.home {
	background: #FFF url(../images/body_back.jpg) repeat-x;
}
body.book_home {
	background: #FFF url(../images/book_body_back.jpg) repeat-x;
}
body.book {
	background: #FFF url(../images/book_body_back_inner.gif) repeat-x;
}
html, body {
	height: 100%;
	margin-bottom: 1px;
}

/*  ********* Type Selectors **********  */
a img {
	border: 0;
}
a {
	text-decoration: none;
	color: #900;
}
ul, ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

/*  ********* Overall container Selector **********  */
.container {
	width: 63em;
	margin: 0 auto;
	text-align: left;
	font-size: .8em;
	position: relative;
} 


/*  ********* Header Selectors **********  */
#header {
	padding-top: 5px;	
}
.book #header {
	padding-bottom: 5px;
}
.home #header {
	padding: 5px 0 35px;
	min-height: 260px;
}
/*#main #header {
	padding: 15px 0 35px;
	min-height: 270px;
}*/
#header #info {
	float: right;
	width: 265px;
} 
#header li#contact {
	float: right;
	width: 140px;
}
#header li#contact a {
	text-transform: uppercase;
	color: #FFF;
	padding: 0 5px 12px;
	display: block;
	float: right;
	width: 130px;
	background: url(../images/contact.jpg) no-repeat left bottom;
	text-align: center;
}
.book #header li#contact a, #main #header li#contact a {
	background: url(../images/contactb.jpg) no-repeat left bottom;
}
#header li#contact, #header li#contact a:hover, #header li#contact a:active, #header li#contact a:focus/*, .contact #header li#contact a*/ {
	background: url(../images/contact_rd.jpg) no-repeat left bottom;
}
.book #header li#contact, .book #header li#contact a:hover, .book #header li#contact a:active, .book #header li#contact a:focus, #main #header li#contact, #main #header li#contact a:hover, #main #header li#contact a:active, #main #header li#contact a:focus/*, .contact #header li#contact a*/ {
	background: url(../images/contactb_lt.jpg) no-repeat left bottom;
}
#header li#book {
	float: right;
	width: 125px;
}
#header li#book a {
	color: #FFF;
	text-transform: uppercase;
	padding: 0 5px 12px;
	display: block;
	float: right;
	width: 115px;
	background: url(../images/blog.jpg) no-repeat left bottom;
	text-align: center;
}
.book #header li#book a, #main #header li#book a {
	background: url(../images/home.jpg) no-repeat left bottom;
}
#header li#book, #header li#book a:hover, #header li#book a:active, #header li#book a:focus, .blog #header li#book a  {
	background: url(../images/blog_rd.jpg) no-repeat left bottom;
}
.book #header li#book, .book #header li#book a:hover, .book #header li#book a:active, .book #header li#book a:focus, .book .blog #header li#book a, #main #header li#book, #main #header li#book a:hover, #main #header li#book a:active, #main #header li#book a:focus, #main .blog #header li#book a  {
	background: url(../images/home_lt.jpg) no-repeat left bottom;
}
#header #tagline {
	float: right;
	padding-right: 4px;
}

#logo {
	margin-left: 8px;
	margin-top: 10px;
}
.book_home #logo {
	/*margin-left: 5%;*/
	margin-top: 0px;
}
.book #logo {
	margin-left: 20px;
}
#header blockquote {
	color: #900;
	margin: 4.5em 7em 0 20em;
	background: url(../images/quote.gif) no-repeat;
	padding: 2em 0 0 2em;
}
.book_home #header blockquote {
	margin-left: 21em;
}
/*
.book_home #header blockquote {
	color: #CB4810;
}*/
#header blockquote p {
	margin: 0;
	padding: 0;
	font: 1.45em/1.5 Georgia, "Times New Roman", Times, serif;
}
.book_home #header blockquote p {
	font-size: 1.3em;
}
#header cite {
	/*margin-left: 20em;*/
	font: normal 1.3em/1.5 Georgia, "Times New Roman", Times, serif;
}
#header cite a {
	color: #000;
}

/*  ********* Top navigation Selectors **********  */
#nav {
	float: left;
	width: 100%;
	position: relative;
	background: #900 url(../images/nav_back.jpg) repeat-x;
	margin-top: 5px;
}
.book_home #nav, .book #nav {
	background: #C30 url(../images/book_nav_back.gif) repeat-x;
}/*#CB4810*/  

.home #nav {
	margin-top: 0;
}
#nav .container { 
	position: relative;
	min-width: 780px;
}

#nav #photo {
	position: absolute;
	left: 60px;
	bottom: 0;
	z-index: 100;
	width: 190px;
	height: 293px;
	background: url(../images/stefsull_final2.png) no-repeat;
}
.book_home #nav #photo {
	left: 0px;
	width: 281px;
	background: url(../images/book_photo_sm.png) no-repeat;
}
#nav ul {
	margin: 0 0 0 48px;
	/*background: #900 url(../images/nav_back.jpg) repeat-x;*/
}
/*.book_home #nav ul, .book #nav ul {
	background: #C30 url(../images/book_nav_back.gif) repeat-x;
}*/
.home #nav ul {
	margin: 0 0 0 21em;
	overflow: hidden;  /* relative doens't work. This allows image to sit on top of ul - keep */
}
.book_home #nav ul {
	margin-left: 21.5em;
}
#nav li {
	float: left;
	padding-right: 14px;
	padding-left: 10px;
	background: url(../images/nav_divide.gif) no-repeat center right;
}
#nav li a {
	/*margin: 5px;padding: 6px 14px 5px 10px;*/
	color: #FFF;
	display: block;
	float: left;
	padding-top: 6px;
	padding-bottom: 5px;
	font-size: 1em;
	border-bottom: #900 2px solid;
}
.book_home #nav li a, .book #nav li a {
	border-bottom-color: #CB4810;
}
#nav li#news, .home #nav li#about, .book_home #nav li#contact, .book #nav li#contact {
	background: none;
	padding-right: 5px;
}
.book_home #nav li#about, .book #nav li#about {
	background: none;
	/*padding-right: 14px;
	background: url(../images/nav_divide.gif) no-repeat center right;*/
}
#nav li#home {
	padding-left: 15px;
}
#nav li a:hover, #nav li a:active, #nav li a:focus {
	border-bottom: #FFF 2px solid;
}
.home #home a, .about #about a, .services #services a, .resources #resources a, .access #access a, .clients #clients a, .p_news #news a, .errata #errata a, .downloads #downloads a/*, .contact #contact a*/ {
	font-weight: bold;
	border-bottom: #FFF 2px solid;
}

/*  ********* Home page callout Selectors **********  */
#callouts {
	background: #e1e1e1;
	float: left;
	width: 100%;
}
#callouts .container {
	background: #e1e1e1 url(../images/callouts_back.gif) repeat-y 21em 0px;
	/*overflow: auto;  to contain floats and show background image*/ 
	overflow: hidden;
}
#callouts ul {
	background: url(../images/callouts_back.gif) repeat-y 42em 0px;
	float: left;
}
#callouts li {
	width: 15em;
	float: left;
	padding: 30px .9em 10px 5em;
	min-height: 7.5em;
	background: url(../images/training_lt.jpg) no-repeat 5px 33px; /* sneaky pete to load - should create pixy */
}
#callouts h1 {
	font-size: 0.93em;
	margin-right: 10px;
	margin-bottom: 0;
	margin-top: 0;
	background: url(../images/arrow_lt.gif) no-repeat left center;
}
#callouts h1 a {
	background: #E1E1E1 url(../images/arrow.gif) no-repeat right center;
	padding-right: 35px;
	width: 14.5em;
	color: #333;
}
#callouts p {
	font-size: .85em;
	line-height: 1.4;
	margin: 0;
}
#callouts li#training {
	background:url(../images/training.jpg) no-repeat 5px 33px;
}
#callouts li#coding {
	background: url(../images/coding.jpg) no-repeat 5px 33px;
}
#callouts li#speaking {
	background: url(../images/speaking.jpg) no-repeat 5px 33px;
}
#callouts li p a, #callouts li:hover p a {
	color: #333 !important;
}
#callouts li:hover h1 a {
	background: #F0F0F0 url(../images/arrow_lt.gif) no-repeat right center;
	color: #900;
}
#callouts li#training:hover {
	background: #F0F0F0 url(../images/training_lt.jpg) no-repeat 5px 33px;
}
#callouts li#coding:hover {
	background: #F0F0F0 url(../images/coding_lt.jpg) no-repeat 5px 33px;
}
#callouts li#speaking:hover {
	background: #F0F0F0 url(../images/speaking_lt.jpg) no-repeat 5px 33px;
}
.block img {
	display: block;
	margin-top: 10px;
}
/*  ********* Sidebar Selectors **********  */

#sidebar1 {
	float: right;
	width: 20em;
	padding-top: 60px;
	margin-bottom: 20px;
}
.home #sidebar1 {
	float: left;
	width: 21em;
	padding: 27px 0;
}
.home #sidebar1 h3 {
	color: #900;
	font-weight: normal;
	font-size: 1em;
	text-align: center;
	border-bottom: 1px dashed #999;
	border-top: 1px dashed #999;
	background: url(../images/diamond.gif) no-repeat 3em center;
	margin-right: 2em;
}
.book_home #sidebar1 h3 {
	background: none;
}
.home #sidebar1 p, #mainContent .news p {
	margin: 0 1em 0 3.5em;
	font-size: 0.85em;
	color: #666;
	padding-bottom: 10px;
}
.book_home #sidebar1 p {
	margin-left: 2.1em;
	margin-right: 2em;
}
#mainContent .news p {
	margin-left: 2em;
	font-size: 0.9em;
}
.home #sidebar1 p.previous {
	font-size: 1em;
	margin-top: 1em;
	margin-left: 3em;
	/*font-weight: bold;*/
}
.home #sidebar1 p.previous a {
	text-decoration: underline;
}
.home #sidebar1 p.previous a:hover, .home #sidebar1 p.previous a:active, .home #sidebar1 p.previous a:focus {
	color: #333;
}
#sidebar1 #wrap {
	background: url(../images/diamond.gif) no-repeat 15em center;
}
#sidebar1 h4 {
	font-size: 0.85em;
	font-weight: normal;
	margin: 0 1em 0 3.5em;
}
.book_home #sidebar1 h4 {
	font: 1.15em Georgia, "Times New Roman", Times, serif;
	margin-left: 1.55em;
	margin-top: 1em;
	color: #333;
	margin-bottom: 0.3em;
}
#mainContent h4 {
	font-size: 0.9em;
	margin: 0 0 0 3.8em;
}
#sidebar1 h4 a, #sidebar1 .point a, #sidebar1 h4 {
	color: #900;
}
#sidebar1 h4 a:hover, #sidebar1 h4 a:active, #sidebar1 h4 a:focus, .book_home #sidebar1 a:hover, .book_home #sidebar1 a:active, .book_home #sidebar1 a:focus {
	color: #000;
	text-decoration: underline;
}
.news {
	margin-right: 2em;
	border-bottom: 1px dashed #999;
	margin-bottom: 2px;
}
#mainContent .news {
	margin-right: 0;
	margin-bottom: 1em;
	margin-left: 1.5em;
}
.news p.date {
	text-align: center;
	background: #333;
	color: #FFF !important;
	float: left;
}
#mainContent .news p.date {
	padding: 7px 3px 5px !important;
	margin: 4px 0 0;
	font-size: 0.9em;
}
.home #sidebar1 p.date {
	padding: 7px 2px 1px;
	margin: 5px 0 0;
	font-size: 0.8em;
}
#sidebar1 #pod {
	background: #F1F1F1;
	border: 1px solid #CCC;
	padding: 1em;
	width: 17.3em;
	margin: .2em .6em 0 .4em;
}
#sidebar1 .border {
	border: 10px #333 solid;
}
#sidebar1 li {
	border: 1px #F1F1F1 solid;
	border-top: 1px #333 dotted;
	padding: 10px 0 2px;
	margin: 0;
}
#sidebar1 li.first {
	border-top: none;
}
#sidebar1 li:hover {
	background: #F7F7F7;
	border: 1px #CCC solid;
}
#sidebar1 li.first:hover {
	border-top: none;
}
#sidebar1 li h3 {
	font-weight: normal;
	font-size: .9em;
	border-bottom: 1px #333 dotted;
	margin: 2px 0 0 45px;
}
#sidebar1 li h3 a {
	color: #333;
}
#sidebar1 li h4 {
	font-size: .9em;
	color: #333;
	margin: 10px 0 0 4px;
}
#sidebar1 li p {
	color: #900;
	margin-top: 0;
	margin-left: 45px;
	font-size: .85em;
	margin-bottom: 10px;
}
#sidebar1 li ul {
	margin-bottom: 5px;
}
#sidebar1 li li {
	border: none;
	margin: 0;
	padding: 0 0 0 4px;
	font-size: 0.8em;
	color: #900;
}
#sidebar1 li li:hover {
	border: none !important;
}
#sidebar1 .icon {
	background: #333;
	border: 4px solid #666;
	padding: 5px 3px;
	float: left;
}
#sidebar1 .pullquote {
	background: url(../images/quote_sm.gif) no-repeat;
	padding-left: 20px;
	margin: 10px 5px;
	font-size: 0.85em;
}
#sidebar1 .pullquote em {
	color: #333;
}

/*  ********* Main Content Selectors **********  */
#mainContent {
	/*margin: 0 22em 0 0;*/
	width: 36.5em;
	float: left;
	margin: 0;
	padding: 30px 2em 20px 3.36em;
	min-height: 500px;
}
.home #mainContent {
	margin: 0;
	float: right;
	width: 31em;
	padding: 1px 9.5em 1px 1em;	/*margin: 0 8em 0 21em;*/
} 
#mainContent a {
	text-decoration: underline;
}
#mainContent a:hover, #mainContent a:active, #mainContent a:focus {
	text-decoration: none;
}
#mainContent blockquote {
	background: url(../images/quote_sm.gif) no-repeat 0px 2px;
	margin: 0 0 20px;
}
.ten #mainContent blockquote {
	margin-top: 15px;
}
#mainContent blockquote p {
	margin: 0;
	font-size: 1em;
}
#mainContent p, #mainContent ul, #mainContent ol {
	padding-left: 20px;
	font-size: 0.9em;
	color: #333;
	margin-top: 5px;
}
#mainContent ul, #mainContent ol {
	margin-top: 15px;
}
#mainContent ul ul {
	margin-top: 0;
}
#mainContent li {
	margin-bottom: .5em;
}
.book_home #mainContent ul {
	list-style: circle;
	margin-bottom: 2em;
}
.book #mainContent ol {
	list-style: decimal;
}
.book #mainContent ol p {
	font-size: 1em;
	padding-left: 0px;
}
#mainContent p.standout {
	color: #000;
}
.home #mainContent p, #sidebar1 p {
	font-size: .9em;
	color: #666;
	margin-top: 5px;
	margin-bottom: 30px;
	padding-left: 0;
}
.clients #mainContent cite {
	margin-top: 0;
	color: #900;
	font-style: normal;
	font-size: .9em;
	margin-left: 20px;
	display: block;
}
.resources #mainContent p.article {
	background: url(../images/icon_articles.gif) no-repeat;
	font-size: .8em;
}
.resources #mainContent p.speaking {
	background: url(../images/icon_speaking.gif) no-repeat;
	font-size: .8em;
}
.resources #mainContent p a {
	font-size: 1.2em;
}
.ten span {
	display: block;
	text-align: center;
	width: 1.5em;
	float: left;
	font: 1.2em Geneva, Arial, Helvetica, sans-serif;
	padding: 7px 1px 0;
	margin-right: 5px;
	margin-top: -.8em;
	background: #333;
	color: #FFF;
}
.ten #mainContent li {
	margin: 0 0 2em;
	padding: 0;
}
.ten ol {
	margin-top: 30px;
}
.ten ol ul {
	margin: 1em 2em 0 3em;
	list-style: square;
}
.ten ol ul li {
	margin-bottom: 0 !important;
	font-size: 1.1em;
}
.ten strong {
	color: #666;
	display: block;
}
.blog #mainContent .publish {
	margin-top: 0;
	font-size: .8em;
	color: #999;
}
#mainContent h1 {
	color: #900;
	font-weight: normal;
	font: 1.3em Georgia, "Times New Roman", Times, serif;
	border-bottom: 1px dotted #333;
	margin-left: 20px;
	margin-bottom: 15px;
}
#mainContent h1 a, #mainContent h2 a {
	text-decoration: none;
}
#mainContent h1 a:hover, #mainContent h1 a:active, #mainContent h1 a:focus, #mainContent h2 a:hover, #mainContent h2 a:active, #mainContent h2 a:focus {
	color: #000;
}
#mainContent h2 a:hover, #mainContent h2 a:active, #mainContent h2 a:focus {
	text-decoration: underline;
}
#mainContent h2 {
	color: #900;
	font-weight: normal;
	font: 1.2em Georgia, "Times New Roman", Times, serif;
	margin-top: 20px;
	padding-left: 20px;
	margin-bottom: 0;	
}
.book_home #mainContent h2, .book_home a, .book a, .book_home #header blockquote, .book_home #sidebar1 h3, .book_home #sidebar1 h4 a, .book_home #sidebar1 .point a, .book_home #sidebar1 li p, .book_home #sidebar1 li li, .book #mainContent h1, .book #mainContent h2, .book_home #mainContent h3, .book #sidebar1 li p {
	color: #CB4810;
}
.p_news #mainContent h2 {
	margin-bottom: 1em;
}
.blog #mainContent h2 {
	margin-bottom: 5px;
}
.home #mainContent h2 {
	margin-top: 30px;
	padding: 6px 0 3px 45px;
	font: 1.3em Verdana, Arial, Helvetica, sans-serif;
	margin-bottom: 2px;
	text-transform: uppercase;
}
#mainContent h2.consulting {
	background: url(../images/consulting.jpg) no-repeat 0 3px;
}
#mainContent h2.blogging {
	background: url(../images/blogging.jpg) no-repeat 0 1px;
	margin-top: 40px;
}
#mainContent p.blogging {
	/*float: left;*/
	margin-top: 0;
	margin-bottom: 0;
}
#mainContent h2.writing {
	background: url(../images/css_book.jpg) no-repeat;
	margin-top: 40px;
}
.home h2.noicon {
	margin: 0 0 2px 0;
	padding: 6px 0 3px 0;
	font: 1.3em Verdana, Arial, Helvetica, sans-serif;
	text-transform: uppercase;
	color: #900;
	font-weight: normal;
}
.home h2.noicon span {
	margin-left: 1.2em;
}
#mainContent h2 span {
	display: block;
	font-size: 0.65em;
	color: #333;
	margin-top: 0;
	padding-top: 0;
}
.resources #mainContent h2 {
	color: #333;
	padding-left: 0;
	margin-bottom: 3px;
}
.book_home #mainContent h3 {
	margin-top: 30px;
	padding: 6px 0 3px 0;
	font: normal 1.3em Verdana, Arial, Helvetica, sans-serif;
	margin-bottom: 2px;
	text-transform: uppercase;
}
.book #mainContent h3 {
	font: normal 1.1em Georgia, "Times New Roman", Times, serif;
	padding-left: 20px;
	color: #CB4810;
	margin-bottom: 2px;
}
ul.lists {
	width: 475px;
	margin-left: 22.5em;
	margin-top: 10px;
}
.lists li {
	width: 220px;
	float: left;
	/*padding-left: 15px;*/
	padding-bottom: 15px;
}

/*  ********* Footer Selectors **********  */
#footer { 
	background:#666 url(../images/footer_back.gif) repeat-x;
	text-align: left;
	padding-top: 12px;
	padding-bottom: 15px;
} 
#footer p {
	margin: 0; 
	color: #FFF;
	font-size: .8em;
	text-align: center;
}
.home #footer p {
	padding: 0 2em 0 25em;
	text-align: left;
}
#footer a {
	color: #FFF;
	text-decoration: underline;
}
#footer a:hover, #footer a:active, #footer a:focus {
	text-decoration: none;
}

/*  ********* Miscellaneous classes for reuse **********  */
.fltrt { 
	float: right;
	margin-left: 8px;
}
.fltlft { 
	float: left;
	margin-right: 8px;
}
.clearfloat { 
	clear:both;
    height:0;
    font-size: 1px;
    line-height: 0px;
}
.hide {
	display: none;
}

/*  ********* Form selectors **********  */
form {
	margin: 0 0 0 20px;
	padding: 0;
}
fieldset {
	margin: 2em 0 1em;
	padding: 0;
	border: 1px solid #CCC;
}
legend {
	font-size: 1em;
	color: #FFF;
	font-weight: bold;
	background: #900;
	padding: .2em;
	margin: 0 0 0 2em;
}
form ul {
	margin: 1.5em 1em 0;
}
form li {
	margin: 0 0 1.15em;
	padding: 0;
}
input, textarea {
	border: 1px solid #CCC;
	background: #FFF;
	color: #333;
}
input:focus, textarea:focus {
	background: #F1F1F1;
	/*border-color: #333;*/
}
input.submit {
	border: none;
	background: #900;
	color: #FFF;
	font-size: 1em;
	padding: .2em;
	margin-top: .5em;
}
label {
	display: block;
}
.book input.submit, .book legend {
	background: #CB4810;
}
.code {
	background: #F1F1F1;
	border: 1px solid #999;
}
.code p {
	margin-bottom: 5px;
	margin-left: 5px;
}
.book #mainContent li h3 {
	font-size: 1.2em;
	padding-left: 0px;
}
#lastname {
	display: none;	
}
