html, body {
	height: 100%;
}

html, body, div, span,
header, section, footer,
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,
dd, dl, dt, li, ol, ul,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
aside, figure {
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	line-height: 1;
	font-family: inherit;
	text-align: left;
	vertical-align: baseline;
	font-family: Helvetica, Arial, sans-serif;
}

a {
	outline: none;
}

a img, :link img, :visited img {
	border: 0;
}

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

ol, ul {
	list-style: none;
}

q:before, q:after,
blockquote:before, blockquote:after {
	content: "";
}

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

body {
	background-color: #EFEFEF;
}

	div#wrapper, div.wrapper {
		width: 960px;
		margin: 0px auto;
		padding: 0px 30px;
	}

		div#wrapper {
			min-height: 100%;
			height: auto !important;
			height: 100%;
			margin: 0 auto -50px; /* the bottom margin is the negative value of the footer's height */
			overflow: hidden;
		}

		div.wrapper {
			width: 970px;
			padding-left: 20px;
			overflow: hidden;
		}

		div#wrapper a {
			color: #24A9F7;
			text-decoration: none;
		}

			div#wrapper a:hover, div#wrapper a:active {
				color: #999999;
				text-decoration: underline;
			}

		div#wrapper em {
			font-style: italic;
		}

		div#wrapper header {
			margin-top: 37px;
			position: relative;
			height: 118px;
		}

			div#wrapper header h1 {
				display: block;
				width: 149px;
				height: 75px;
				background: transparent url("/sf/assets/i/logo.jpg") no-repeat top left;
				text-indent: 100%;
				white-space: nowrap;
				overflow: hidden;
				margin-left: 10px;
			}

			div#wrapper header h2 {
				font-family: Georgia, serif;
				font-size: 40px;
				position: absolute;
				top: 16px;
				left: 222px;
			}

			div#wrapper header h3 {
				display: block;
				width: 506px;
				height: 12px;
				background: transparent url("/sf/assets/i/h3-inspired_by.jpg") no-repeat top left;
				text-indent: 100%;
				white-space: nowrap;
				overflow: hidden;
				position: absolute;
				top: 60px;
				left: 222px;
			}

		div#wrapper aside#sidebar {
			width: 170px;
			margin: 0px 54px 0px 0px;
			float: left;
		}

			div#wrapper aside nav {
				margin-bottom: 25px;
			}

				div#wrapper aside nav ul {
					background-color: #FFF;
					width: 170px;
					border: 1px solid #CCC;
					border-radius: 5px 5px 5px 5px;
					margin-bottom: 20px;
				}

					div#wrapper aside nav ul li {
						border-bottom: 1px solid #CCC;
					}

						div#wrapper aside nav ul li:last-child {
							border: 0px;
						}

						div#wrapper aside nav ul li a {
							display: block;
							width: 170px;
							height: 45px;
							line-height: 2.75em;
							color: #218BCB;
							text-decoration: none;
							text-align: center;
						}

							body#overview div#wrapper aside nav ul li a#nav-overview,
							body#authors div#wrapper aside nav ul li a#nav-authors,
							body#cover div#wrapper aside nav ul li a#nav-cover,
							body#inside div#wrapper aside nav ul li a#nav-inside {
								background: transparent url("/sf/assets/i/bg-nav_active.jpg") repeat top left;
							}

							div#wrapper aside nav ul li a:hover {
								color: #999999;
								text-decoration: none;
							}

				div#wrapper aside nav a#nav-purchase {
					display: block;
					width: 170px;
					height: 42px;
					background: transparent url("/sf/assets/i/btn-purchase_now.png") no-repeat top left;
					text-indent: 100%;
					white-space: nowrap;
					overflow: hidden;
				}

					body#purchase div#wrapper aside nav a#nav-purchase {
						display: none;
					}

					div#wrapper aside nav a#nav-purchase:hover {
						background-position: 0px -42px;
					}

					div#wrapper aside nav a#nav-purchase:active {
						background-position: 0px -84px;
					}

			div#wrapper aside section#tr {

			}

				div#wrapper aside section#tr a h4 {
					display: block;
					width: 158px;
					height: 68px;
					background: transparent url("/sf/assets/i/logo-tr.png") no-repeat top left;
					text-indent: 100%;
					white-space: nowrap;
					overflow: hidden;
				}

			div#wrapper aside section#notify {

			}

				div#wrapper aside section#notify h1 {
					font-size: 18px;
					margin-bottom: 10px;
				}

				div#wrapper aside section#notify p {
					font-size: 12px;
					line-height: 1.25em;
					margin-bottom: 10px;
				}

				div#wrapper aside section#notify a, div#wrapper aside section#notify p#p-notify {
					font-size: 12px;
					font-weight: bold;
					color: #1F8BCB;
					text-decoration: none;
					margin-bottom: 10px;
					display: block;
				}

					div#wrapper aside section#notify a:hover {
						color: #999;
						text-decoration: underline;
					}

					div#wrapper aside section#notify p#p-notify {
						color: #000;
						display: none;
					}

				div#wrapper aside section#notify form#notify-me {
					display: none;
					overflow: hidden;
				}

					div#wrapper aside section#notify form#notify-me input.text {
						color: #666;
						width: 162px;
						padding: 5px 3px;
						margin-bottom: 5px;
						border: 1px solid #D7D7D7;
					}

						div#wrapper aside section#notify form#notify-me input.error {
							border: 1px solid #FF9900;
						}

					div#wrapper aside section#notify form#notify-me input.submit {
						display: none;
					}

					div#wrapper aside section#notify a#submit {
						display: none;
						width: 77px;
						height: 27px;
						background: transparent url("/sf/assets/i/btn-submit.png") no-repeat top left;
						text-indent: 100%;
						white-space: nowrap;
						overflow: hidden;
						float: right;
					}

						div#wrapper aside section#notify a#submit:hover {
							background-position: 0px -27px;
						}

						div#wrapper aside section#notify a#submit:active {
							background-position: 0px -54px;
						}

				div#wrapper aside section#notify p.message {
					display: none;
					font-weight: bold;
				}

					div#wrapper aside section#notify p.error {
						color: #FF9900;
					}

			div#wrapper aside section#tr {
				margin-bottom: 25px;
			}

		div#wrapper section.content {
			width: 735px;
			float: right;
			overflow: hidden;
			margin-bottom: 30px;
		}

			div#wrapper section.content h1 {
				font-size: 30px;
				font-weight: bold;
				line-height: 1.25em;
				width: 520px;
				margin-bottom: 20px;
			}

			div#wrapper section.content p {
				font-size: 14px;
				line-height: 1.25em;
				width: 520px;
			}

			div#wrapper section.content blockquote {
				font-family: Georgia, sans-serif;
				font-weight: bold;
				font-style: italic;
				font-size: 16px;
				line-height: 1.25em;
				width: 480px;
				background-color: #d7d7d7;
				padding: 20px;
				border-radius: 10px;
				overflow: hidden;
				margin-bottom: 40px;
			}

				div#wrapper section.content blockquote span {
					font-style: normal;
				}

				div#wrapper section.content blockquote div {
					font-family: Helvetica, Arial, sans-serif;
					font-size: 13px;
					font-weight: normal;
					font-style: normal;
					margin-top: 10px;
					float: right;
				}

			div#wrapper section.content div#purchase-box {
				width: 520px;
				overflow: hidden;
			}

				div#wrapper section.content div#purchase-box figure {
					background-color: #d7d7d7;
					padding: 15px;
					border-radius: 10px;
					width: 220px;
					float: left;
					margin-right: 20px;
				}

					div#wrapper section.content div#purchase-box figure img {
						box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
					}

				div#wrapper section.content div#purchase-box aside {
					float: left;
					width: 250px;
				}

				div#wrapper section.content div#purchase-box h1 {
					font-size: 18px;
					font-weight: bold;
				}

				div#wrapper section.content div#purchase-box p {
					font-size: 14px;
					width: auto;
				}

				div#wrapper section.content div#purchase-box ul.icons {
					margin: 10px 0px 15px;
					list-style-type: none;
					overflow: hidden;
				}

					div#wrapper section.content div#purchase-box ul.icons li {
						float: left;
						margin: 0px 10px 0px 0px;
					}

						div#wrapper section.content div#purchase-box ul.icons li a {
							display: block;
							width: 39px;
							height: 41px;
							text-indent: 100%;
							white-space: nowrap;
							overflow: hidden;
							background: transparent url("/sf/assets/i/bg-devices.png") no-repeat top left;
						}

							div#wrapper section.content div#purchase-box ul.icons li a#store-apple {
								background-position: -39px 0px;
							}

								div#wrapper section.content div#purchase-box ul.icons li a#store-apple:hover {
									background-position: -39px -41px;
								}

								div#wrapper section.content div#purchase-box ul.icons li a#store-apple:active {
									background-position: -39px -82px;
								}

							div#wrapper section.content div#purchase-box ul.icons li a#store-kindle {
								background-position: -78px 0px;
							}

								div#wrapper section.content div#purchase-box ul.icons li a#store-kindle:hover {
									background-position: -78px -41px;
								}

								div#wrapper section.content div#purchase-box ul.icons li a#store-kindle:active {
									background-position: -78px -82px;
								}

							div#wrapper section.content div#purchase-box ul.icons li a#store-nook {
								background-position: 0px 0px;
							}

								div#wrapper section.content div#purchase-box ul.icons li a#store-nook:hover {
									background-position: 0px -41px;
								}

								div#wrapper section.content div#purchase-box ul.icons li a#store-nook:active {
									background-position: 0px -82px;
								}

							div#wrapper section.content div#purchase-box ul.icons li a#store-print {
								background-position: -117px 0px;
							}

								div#wrapper section.content div#purchase-box ul.icons li a#store-print:hover {
									background-position: -117px -41px;
								}

								div#wrapper section.content div#purchase-box ul.icons li a#store-print:active {
									background-position: -117px -82px;
								}

			div#wrapper section#overview.content {

			}

				div#wrapper section#overview.content p {
					font-size: 18px;
				}

				div#wrapper section#overview.content ul {
					list-style-type: square;
					margin-top: 15px;
					margin-left: 20px;
					width: 520px;
				}

					div#wrapper section#overview.content ul li {
						margin-bottom: 15px;
						line-height: 1.25em;
					}

			div#wrapper section#authors.content {

			}

				div#wrapper section#authors div#the-authors {
					position: relative;
					height: 525px;
				}

					div#wrapper section#authors div#the-authors ul {
						position: absolute;
						top: 65px;
						right: 0px;
						width: 195px;
					}

						div#wrapper section#authors div#the-authors ul li {
						}

							div#wrapper section#authors div#the-authors ul li a {
								display: block;
								width: 122px;
								height: 19px;
								color: #000;
								text-decoration: none;
								font-size: 14px;
								line-height: 1.25em;
								padding: 4px 0px 0px 15px;
								margin-bottom: 5px;
							}

							div#wrapper section#authors div#the-authors ul li a:hover {
								color: #999999;
							}

							div#wrapper section#authors div#the-authors ul li a.active {
								color: #FFF;
								background: transparent url("/sf/assets/i/bg-author_arrow.png") no-repeat top left;
							}

					div#wrapper section#authors div#the-authors article.author {
						display: none;
						width: 525px;
						margin-right: 20px;
					}

						div#wrapper section#authors div#the-authors article.author.active {
							display: block;
						}

						div#wrapper section#authors div#the-authors article.author p {
							line-height: 1.5em;
						}

						div#wrapper section#authors div#the-authors article.author strong {
							font-weight: bold;
						}

						div#wrapper section#authors div#the-authors article.author figure {
							background-color: #d7d7d7;
							padding: 15px;
							border-radius: 10px;
							width: 494px;
							float: left;
							margin: 0px 20px 20px 0px;
							overflow: hidden;
						}

							div#wrapper section#authors div#the-authors article.author figure img {

							}

			div#wrapper section#cover.content {

			}

				div#wrapper section#cover div#video {
					background-color: #d7d7d7;
					padding: 15px;
					border-radius: 10px;
					width: 580px;
					height: 323px;
					float: left;
					margin: 0px 20px 20px 0px;
					overflow: hidden;
				}

				div#wrapper section#cover.content p {
					margin-bottom: 20px;
				}

			div#wrapper section#inside.content {

			}

				div#wrapper section#inside.content article.story {
					width: 520px;
					overflow: hidden;
					padding-bottom: 20px;
					margin-bottom: 20px;
				}

					div#wrapper section#inside.content article#toaster {
						border-bottom: 1px solid #d7d7d7;
					}

					div#wrapper section#inside.content article.story div {
						float: left;
						margin-right: 10px;
					}

						div#wrapper section#inside.content article#toaster.story div {
							width: 342px;
						}

					div#wrapper section#inside.content article.story h1 {
						font-family: Georgia, serif;
						font-size: 28px;
						margin-bottom: 5px;
					}

					div#wrapper section#inside.content article.story h2 {
						font-size: 18px;
						margin-bottom: 10px;
					}

					div#wrapper section#inside.content article.story p {
						margin-bottom: 10px;
						width: auto;
						line-height: 1.5em;
					}

						div#wrapper section#inside.content article.story p a {
							font-weight: bold;
						}

					div#wrapper section#inside.content article.story aside {
						float: right;
						width: 158px;
					}

						div#wrapper section#inside.content article.story aside figure {
							background-color: #d7d7d7;
							padding: 10px;
							border-radius: 10px;
							width: 137px;
							float: left;
							margin: 0px 20px 20px 0px;
							overflow: hidden;
						}

							div#wrapper section#inside.content article.story aside figure img {

							}

			div.push {
				height: 50px;
				clear: both;
			}

			footer {
				height: 35px;
				background-color: #585858;
				overflow: hidden;
				padding: 15px 0px 0px;
			}

				footer #share-bar, footer p {
					float: left;
					font-size: 12px;
					color: #FFF;
				}

					footer #share-bar {
						margin-right: 10px;
					}

					footer p {
						margin-right: 75px;
						padding-top: 2px;
					}

					footer a {
						color: #24A9F7;
						text-decoration: none;
					}

						footer a.copy {
							color: #FFF;
						}

						footer a:hover {
							color: #999;
							text-decoration: underline;
						}

/* updated styles for 2013 edition */

#hello {
	overflow: hidden;
	display: block;
	width: 100%;
	text-align: center;
	background: #000;
}

#hello p {
	overflow: hidden;
	display: block;
	width: 100%;
	text-align: center;
	font-family: Helvetica, Arial, sans-serif;
	color: #fff;
	vertical-align: middle;
}

#hello p strong {
	overflow: hidden;
	display: inline-block;
	font-weight: bold;
	padding: 5px 10px;
	margin: 5px 0 5px 0px;
}

#hello p a {
	overflow: hidden;
	display: inline-block;
	background: #D41820;
	font-weight: bold;
	padding: 5px 10px;
	margin: 5px 0 5px 10px;
	color: #fff;
	text-transform: uppercase;
	text-decoration: none;
	font-size: 12px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}

#hello p a:hover {
	background-color: #E5696D;
}

h4 {
	font-size: 21px;
	line-height: 125%;
	padding-bottom: 20px;
}

h4 strong, p strong {
	font-weight: bold;
}

#email-signup {
	overflow: hidden;
}

#email-signup input[type=email] {
	width: 125px;
	float: left;
	padding: 8px;
	font-family: Helvetica, Arial, sans-serif;
}

#email-signup input[type=submit] {
	color: #FFF;
	background-color: #D41820;
	border: 0;
	border-bottom: 2px solid #820B0F;
	text-align: center;
	width: 55px;
	height: 31px;
	float: left;
	margin-left: 5px;
	margin-top: 3px;
	font-family: Helvetica, Arial, sans-serif;
}

p.status {
  color: #636666;
  margin-top: 5px;
}
p.status.warning {
	color: #EB2412;
}
