@charset "utf-8";
body {
	font-family: 'Libre Franklin', sans-serif;
	color: #666666;
	margin: 10px 0 25px;
	background: url("../images/mainBg.gif");
	font-size: .9em;
	line-height: 1.6;
}
@media only screen and (min-width: 325px) {
	body {
		font-size: 1em;
	}
}
@media only screen and (min-width: 897px) {
	body {
		margin: 25px 0 55px;
	}
}
.gridContainer {
	margin-left: auto;
	margin-right: auto;
	width: 94%;
	clear: none;
	float: none;
}
@media only screen and (min-width: 1450px) {
	.gridContainer {
		width: 90%;
	}
}
@media only screen and (min-width: 1650px) {
	.gridContainer {
		max-width: 1565px;
	}
}
.topBar {
	background: #457ECB;
	display: block;
	padding: 10px;
	color: #fff;
	font-weight: 400;
	text-align: center;
}
@media only screen and (min-width: 897px) {
	.topBar {
		text-align: left;		
	}
}
/*bottom mail bar */
.showMobile {
	display: block;
	float: none; 
	width: 60px;
	margin: 10px auto 0 auto;
}
.showDesktop {
	display: none;
}
.boxfloat {
	text-align:center; 
	width:98%; 
	margin:0 auto;
}
.hidemailBar {
	display: none;
}
.mailBar {
	background: #DD7D5A; 
	bottom: 0; 
	color:#fff; 
	left:0; 
	padding: 5px; 
	position:fixed; 
	font-size:1.15em; 
	width:100%; 
	z-index:9999; 
	float:left; 
	vertical-align:middle; 
	margin: 0px 0 0; 
	opacity: 0.90;
}
@media only screen and (min-width: 497px) {
	.mailBar {
		font-size:1.25em;	
	}
}
@media only screen and (min-width: 897px) {
	.mailBar {
		padding: 10px 0 5px 0; 
		font-size:22px; 
	}
}
.mailBar input[type="text"] {
    width: 200px;
	margin: 10px;
	background-color: #FAFAFA;
    border: 1px solid #fff;
    color: #666666;
	padding: 7px;
	font-size: 14px;
}
.mailBar .redLink {
    border: 1px solid #fff;
    color: #fff;
    font-weight: normal;
	padding: 8px;
	font-size: 16px;
	margin: 10px;
}
.closeBtn {
	background: #DD7D5A; 
	color: #fff;
	font-size: 12px; 
	border: 1px solid #fff; 
	padding: 8px; 
	cursor: pointer;
}
.closeBtn:hover {
	background:#868C8C;
	color: #fff;	
}
@media only screen and (min-width: 930px) {
	.showMobile {
		display: none;
	}
	.showDesktop {
		display: block;
		float: right;
		width: 100px;
		margin: 10px 0;
	}
	.boxfloat {
		width:920px; 
	}
	.mailBar input[type="text"] {
		width: 200px;
		margin: 0 20px;
	}
	.mailBar input[type="text"] {
		padding: 8px;
		font-size: 16px;
	}
	.mailBar input[type="submit"] {
		padding: 8px;
		font-size: 16px;
	}
	.closeBtn {	 
		font-size: 12px; 
		padding: 5px;
	}
}
/*end of bottom mail bar */
/* Mailing List Sign up */
.joinList {
	font-family: 'Martel', serif;
	float: none;
	color: #e58b68;
	font-size: 1em;
	padding: 15px 0 0;
}
@media only screen and (min-width: 897px) {
	.joinList {
		width: 65%;
		float: right;
		padding: 5px 10px;
		font-size: 1.15em;
	}
}
.joinList input[type="submit"], .joinBox input[type="submit"] {
	display: inline-block;
	margin: 5px;
	padding: 7px;
     -moz-border-radius: 4px;
	border: none;
    border-radius: 4px;
	font-size: .85em;
	text-align: center;
	cursor: pointer;
	background: #5fc1ab;
	color: #fff;
}
.joinList input[type="submit"]:hover, .joinBox input[type="submit"]:hover {
	background: #868C8C;
}
@media only screen and (min-width: 897px) {
	.joinList input[type="submit"] {
		margin: 0 10px;
	}
}
@media only screen and (min-width: 897px) {
	.joinBox input[type="submit"] {
		font-size: 1em;
		margin: 25px 0;
	}
}
.joinList input[type="text"], .joinList input[type="email"], .joinBox input[type="text"], .joinBox input[type="email"] {
    background: #fff;
	border: 1px solid #ccc;
    width: 90%;
    margin: 5px;
    padding: 5px 10px;
    font-size: 85%;
}
@media only screen and (min-width: 769px) {
	.joinList input[type="text"], .joinList input[type="email"] {
		width: 40%;
		margin: 5px 0 5px 10px;
	}
}
input[type="text"], input[type="email"], textarea {
    background: #fff;
    margin: 10px 0;
	border: 1px solid #ccc;
    color: #5fc1ab;
    padding: 5px 10px;
    font-size: 85%;
    -moz-border-radius: 3px;
    border-radius: 3px;
    width: 85%;
}
@media only screen and (min-width: 897px) {
	input[type="text"] {
		width: 85%;
		margin: 0 10px 0 0;
	}
}
input[type="submit"] {
	background: #e58b68;
	padding: 8px 10px;
	 -moz-border-radius: 4px;
	border-radius: 4px;
	font-size: 1em;
	text-transform: uppercase;
	text-align: center;
	cursor: pointer;
	color: #fff;
	border: none;
}
input[type="submit"]:hover {
	background:#868C8C;
}
/* Social Media */
.topNavSocial {
	float: none;
}
@media only screen and (min-width: 897px) {
	.topNavSocial {
		float: right;
		position: relative;
		top: auto;
		padding: 15px;
	}
}
.topNavSocial img {
  width: 19px;
}
.topNavSocial a {
  padding: 5px;
}
@media only screen and (min-width: 325px) {
	.topNavSocial img {
		width: auto;
	}
}
@media only screen and (min-width: 897px) {
	.topNavSocial a  {
		padding: 5px 10px;
	}
}
/*social media*/
.facebook {
	background-image: url(/images/icon-facebook.png);
	background-repeat: no-repeat;
	background-position: center;
}
.facebook:hover {
	background-image: url(/images/icon-facebook-over.png);
	background-repeat: no-repeat;
	background-position: center;
}
.twitter {
	background-image: url(/images/icon-twitter.png);
	background-repeat: no-repeat;
	background-position: center;
}
.twitter:hover {
	background-image: url(/images/icon-twitter-over.png);
	background-repeat: no-repeat;
	background-position: center;
}
.goodreads {
	background-image: url("/images/icon-goodreads.png");
	background-repeat: no-repeat;
	background-position: center;
}
.goodreads:hover {
	background-image: url(/images/icon-goodreads-over.png);
	background-repeat: no-repeat;
	background-position: center;
}
.bookbub {
	background-image: url(/images/icon-bookbub.png);
	background-repeat: no-repeat;
	background-position: center;
}
.bookbub:hover {
	background-image: url(/images/icon-bookbub-over.png);
	background-repeat: no-repeat;
	background-position: center;
}
/*Header Elements */
.small-header {
    display: block;
}
.small-header p {
	margin: 0;
}
@media only screen and (min-width: 581px) {
	.small-header {
		display: none;
	}
}
.medium-header {
    display: none;
}
@media only screen and (min-width: 581px) {
	.medium-header {
		display: block;
	}
	.medium-header p {
		margin: 0;
	}
}
@media only screen and (min-width: 897px) {
	.medium-header {
		display: none;
	}
}
.large-header {
    display: none;
}
@media only screen and (min-width: 897px) {
	.large-header {
		display: block;
	}
	.large-header p {
		margin: 0;
	}
}
/*MOBILE MENU */
.js #menu, #menu { 
		display:none;
	}
.slicknav_menu {
	display:none;
	width: 94%;
	margin: 0 auto;
	font-size: 1em;
	padding: 0;
	background: none;
}
@media only screen and (min-width: 769px) {
	.slicknav_menu {
		width: 88.5%;
	}
}
.slicknav_nav {
    clear: both;
	background: #457ECB;
    color: #fff;
    margin: 0;
    font-size: 1em;
}
.slicknav_btn {
	background-color: #457ECB;
    margin: 5px 0 10px 0;
}
.slicknav_nav a:hover {
	background: #5fc1ab;
	color: #fff;
	border-radius: 0px;
}
.slicknav_nav a:visited {
	color: #fff;
}
.slicknav_nav .slicknav_item:hover {
	background: #5fc1ab;
	color: #fff;
	border-radius: 0px;
}
.slicknav_menu .slicknav_menutxt {
    text-shadow: none;
	font-weight: 500;	
}
.slicknav_menu .slicknav_icon-bar {
	display: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}
.slicknav_menu .slicknav_icon {
    margin: 0;
}
@media screen and (max-width: 896px) { /*display the mobile menu now up to 897px */	
	.js .slicknav_menu {
		display:block;
	}
}
/*START OF MAIN MENU */
.mainmenu {
	display:none;
}
@media only screen and (min-width: 897px) {
	.mainmenu {
		display: block;
		background: #457ECB;
		font-family: 'Martel', serif;
	}
}
nav { 
	text-transform: uppercase;
	float: left;
}
@media only screen and (min-width: 1040px) {
	nav { 
		padding-left: 5%;
  }	
}
nav ul {
  font-size: 0;
  margin: 0;
  padding: 0;
  font-weight: 500;
}
nav ul li {
  display: inline-block;
  position: relative;
  font-size: 16px;
}
nav ul li a {
  color: #fff;
  display: block;
  padding: 15px 14px;
  transition: 0.3s linear;
  text-decoration: none;
  letter-spacing: .85px;
}
nav ul li a:visited, nav ul li a:hover {
  color: #fff;
}
nav ul li:hover { 
	background: #5fc1ab; 
	color: #fff;
}
nav ul li ul {
  display: none;
  position: absolute;
  width: 275px;
}
nav ul li ul li {
  display: block;
  font-size: 14px;
}
nav ul li ul li:first-child { 
	border-top: none; 
}
nav ul li ul li a {
  background: #5fc1ab;
  display: block;
  padding: 8px 10px 8px 15px;
}
nav ul li ul li a:hover { 
	background: #457ECB; 
}
.midBar {
	background-color: #fafcfd;
}
.main-content {	
    padding: 1% 5%;
    background-color: #fff;
    border-top: none;
}
@media only screen and (min-width: 481px) {
	.main-content {
		padding: 2% 5%;
	}
}
@media only screen and (min-width: 897px) {
	.main-content {
		float: left;
		width: 60%;
	}
}
.side-content {	
	padding: 1% 5%;
}
@media only screen and (min-width: 897px) {
	.side-content {
		float: left;
		width: 25%;
		padding: 2% 2.5%;
	}
}
.highlight-content {
    padding: 1% 5%;
    background-color: #fff;
	border: 1px solid #addad6;
}
@media only screen and (min-width: 481px) {
	.highlight-content {
		padding: 1% 5%;
	}
}
@media only screen and (min-width: 897px) {
	.highlight-content {
		padding: 2% 5%;
		margin: 50px 0;
	}
}
.main-footer {
    padding: 1% 5%;
    background: rgba(251,251,251, .35);
	font-size: 70%;
	color: #e58b68;
	line-height: 145%;
}
/*END OF MAIN LAYOUT AND GENERAL STYLES */
img, object, embed, video {
	max-width: 100%;
}
.ie6 img {
	width:100%;
}
.clearDiv {
	clear:both;
}
/*START OF CUSTOMIZATIONS */
h1, h2, h3, h4, h5, h6 {
    -webkit-margin-before: 0.67em;
    -webkit-margin-after: 0.67em;
    -webkit-margin-start: 0px;
    -webkit-margin-end: 0px;
	font-weight: 600;
}
h1 {
	font-family: 'Rochester', cursive;
	font-size: 1.65em;
	color: #457ECB;
	font-weight: normal;
	margin-bottom: 15px;
}
h2 {
	font-family: 'Martel', serif;
	font-size: 1.25em;
	color: #5fc1ab;
}
h3 {
    font-family: 'Martel', serif; 
	font-size: 1.2em;
    color: #e58b68;
	line-height: 1.5;
}
h4 {
	font-size: 1.2em;
	color: #457ECB;
}
h5 {
	font-family: 'Martel', serif;
    font-size: 1em;
    color : #5fc1ab;
	font-style: italic;
}
h6 {
    font-size: 1em;
    color : #e58b68;
}
@media only screen and (min-width: 797px) {
	h1 {
		font-size: 2em;
		margin-bottom: 20px;
	}	
}
@media only screen and (min-width: 897px) {
	h2 {
		font-size: 1.25em;
	}
	h3 {
		 font-size: 1.2em;
	}
	h4 {
		font-size: 1.1em;
	}
}
@media only screen and (min-width: 1200px) {
	h1 {
		font-size: 2.5em;
		margin-bottom: 30px;
	}
}
.signature {
	font-size: 2em;
}
a {
	color : #457ECB;
	text-decoration: none;
}
a:visited {
	color : #629cc4;
}
a:hover {
  color : #e58b68;
}
a.copyright {
	color:#e58b68;
}
a.copyright:visited {
	color:#e58b68;
}
a.copyright:hover {
	color:#6F6D8C;
}
.col2thirdleft {
	float: none;
	width: 98%;
	padding: 0 1%;
	margin: auto;
}
@media only screen and (min-width: 897px) {
	.col2thirdleft {
		float: left;
		width: 62%;	
		padding: 0;
	}
}
.col1thirdright {
	float: none;
	width: 98%;
	padding: 0 0 2% 1%;
	margin: auto;
}
@media only screen and (min-width: 897px) {
	.col1thirdright {
		float: right;
		width: 30%;
		padding: 0;
	}
}
.col2thirdright {
	float: none;
	width: 98%;
	padding: 0 1%;
	margin: auto;
}
@media only screen and (min-width: 897px) {
	.col2thirdright {
		float: right;
		width: 62%;	
		padding: 0;
	}
}
.col1thirdleft {
	float: none;
	width: 98%;
	padding: 0 1%;
	margin: auto;
}
@media only screen and (min-width: 897px) {
	.col1thirdleft {
		float: left;
		width: 30%;	
		padding: 0;
	}
}
.col1third {
	float: none;
	width: 98%;
	padding: 0 1%;
	margin: 10px auto 30px auto;
}
@media only screen and (min-width: 897px) {
	.col1third {
		float: left;
		width: 31%;
		padding: 0 1.1666666666666667%;
	}	
}
.col1half {
	float: none;
	width: 98%;
	padding: 0 1%;
	margin: auto;
}
@media only screen and (min-width: 655px) {
	.col1half {
		float: left;
		width: 45%;
		padding: 0 2.5%;
	}
}
.col1halfright {
	float: none;
	width: 98%;
	padding: 0 1%;
	margin: auto;
}
@media only screen and (min-width: 655px) {
	.col1halfright {
		float: right;
		width: 45%;
		padding: 0 2.5% 0 0;
	}
}
.col1halfleft {
	float: none;
	width: 98%;
	padding: 0 1%;
	margin: auto;
}
@media only screen and (min-width: 655px) {
	.col1halfleft {
		float: left;
		width: 45%;
		padding: 0 2.5% 0 0;
	}
}
.col1fourth {
	float: none;
	width: 98%;
	padding: 0 1%;
	margin: 10px auto 30px auto;
}
@media only screen and (min-width: 941px) {
	.col1fourth {
		float: left;
		width: 22%;
		padding: 0 1.5%;
	}	
}
/*EXTRAS */
.imgHPad {
	border: none;
	padding: 0 10px;
}
.imgVPad {
	border: none;
	padding: 10px 0;
}
.imgBPad {
	border: none;
	padding: 10px;
}
.imgHMPad {
	border: none;
	margin: 0 10px;
}
.imgVMPad {
	border: none;
	margin: 10px 0;
}
.imgBMPad {
	border: none;
	margin: 10px;
}
.imgShadow {
    background: #fff;
    padding: 10px;
    -moz-box-shadow: 0 0 15px #ccc;
    -webkit-box-shadow: 0 0 15px #ccc;
    box-shadow: 0 0 15px #ccc;
}
.imgRight {
	float: none;
	margin: 15px auto;
}
@media only screen and (min-width: 625px) {
	.imgRight {
		float: right;
		margin: 5px 0 25px 25px;
	}	
}
.imgLeft {
	float: none;
	margin: 15px auto;
}
@media only screen and (min-width: 625px) {
	.imgLeft  {
		float: left;
		margin: 5px 25px 25px  0;
	}	
}
/* BUTTONS */
.linkButton  {
	display: inline-block;
	padding: 8px 10px;
     -moz-border-radius: 4px;
    border-radius: 4px;
	font-size: 1em;
	text-align: center;
	cursor: pointer;
	color: #fff;
}
.linkButton:hover  {
	background:#868C8C;
	color: #fff;
}
.linkButton:visited  {
	color: #fff;
}
.linkButton a   {
	color: #fff;
	text-decoration: none;
}
.linkButton a:visited, .linkButton a:hover  {
	color: #fff;
}
.blueLink  {
	background: #457ECB;
}
.greenLink  {
	background: #5fc1ab;
}
.redLink  {
	background: #e58b68;
}
.navLinks {
	float: right;
	margin: 0 10px;
}
/*Text Colors */
.texth1 {
	font-size: 1.3em;
	color: #457ECB;
}
.texth2 {
	font-size: 1.25em;
	color: #5fc1ab;
}
.texth3 {
     font-size: 1.2em;
     color: #e58b68;
}
.texth4 {
	font-size: 1.2em;
	color: #457ECB;
}
.texth5 {
    font-size: 1.1em;
    color : #5fc1ab;
}
.texth6 {
    font-size: 1.1em;
    color : #e58b68;
}
@media only screen and (min-width: 897px) {
	.texth1 {
		font-size: 1.5em;
	}
	.texth2 {
		font-size: 1.4em;
	}
	.texth3 {
		 font-size: 1.3em;
	}
	.texth4 {
		font-size: 1.2em;
	}
}
/*HomePage */
.homeQuote {
    margin: 75px auto;
    background: #5fc1ab;
    padding: 25px;
    text-align: center;
    font-size: 125%;
    color: #fff;
}
.review {
	font-family: 'Martel', serif;
	font-size: 110%;
}
/*Book Pages*/
@media only screen and (min-width: 897px) {
	.bookshelf {
		width: 90%;
	}
}
.bookDate {
	text-align: center;
	color: #5fc1ab;
	font-size: 1.15em;
}
.bookSeries {
	text-align: center;
	color: #e58b68;
	font-size: 1em;
}
.bookCover {
    float: none;
    background: #fff;
    padding: 5px;
    -webkit-box-shadow: 1px 1px 3px 1px #b5b4b4;
    -moz-box-shadow: 1px 1px 3px 1px #b5b4b4;
	box-shadow: 1px 1px 3px 1px #b5b4b4;
	max-width: 200px;
}
@media only screen and (min-width: 350px) {
	.bookCover {
		max-width: 90%;
	}		
}
.buyBox {
	margin: 25px;
	background: #fff;
	padding: 10px 15px;
	border: 1px solid #ccc;
}
.buyBox img {
	padding: 5px;
}
.buyBox p {
	text-align: center;
}
.reviewcredit {
	font-style: italic;
	padding: 0 0 20px 25px;
}
.reviewcredit::before { 
  content: " ~ ";
}
hr {
    height: .25em;
    border: 2px solid #ecf0f2;
    background: #ecf0f2;
    margin: 2em auto;
}
.side-content hr {
	width: 75%;
}
/*Bio Styles */
.bioPic {
    max-width: 200px;
    float: none;
    background: #fff;
    padding: 10px;
    -moz-box-shadow: 0 0 15px #ccc;
    -webkit-box-shadow: 0 0 15px #ccc;
    box-shadow: 0 0 15px #ccc;
    margin: 10px auto 20px auto;
}
@media only screen and (min-width: 342px) {
	.bioPic {	
		max-width: 250px;
	}
}
@media only screen and (min-width: 897px) {
	.bioPic {	
		max-width: 190px;
	}
}
@media only screen and (min-width: 1042px) {
	.bioPic {	
		max-width: 225px;
	}
}
@media only screen and (min-width: 1200px) {
	.bioPic {	
		max-width: 250px;
	}
}
/*Flora Contact Form */
/* @form label + field :: field class is useful for validation 
---------------------------------------------------------------------- */
.floraforms .field-icon i { 
	color:#FF2826; 
}
.floraforms .field-label em{ 
	color:#FF2826;
}
/* @form element :hover state 
-------------------------------------------- */
.floraforms .flo-input:hover,
.floraforms .flo-textarea:hover,
.floraforms .flo-select > select:hover,
.floraforms .flo-selectmulti select:hover, 
.floraforms .flo-input:hover ~ .flo-hint,
.floraforms .flo-file .file-input:hover + .flo-input,
.floraforms .flo-textarea:hover ~ .flo-hint{
	border-color: #457ECB;
}
/* @control border-size :: color etc for these elements 
----------------------------------------------------------- */
.floraforms .flo-input,
.floraforms .flo-select,
.floraforms .flo-textarea,
.floraforms .flo-select > select,
.floraforms .flo-selectmulti select{
	border: 1px solid #D9E4E7;
}
/* @primary button theme
-------------------------------------------- */
.floraforms .btn-themed {  background-color: #5fc1ab;  }
.floraforms .btn-themed:hover,
.floraforms .btn-themed:focus { background-color: #457ECB; }
.floraforms .btn-themed:active{ background-color: #457ECB; }


.floraforms .alert-info { color:#FF504D; background-color: #fff; }
.floraforms .alert-success { color:#fff; background-color: #DD7D5A; }
.floraforms .alert-warning { color: #fff; background-color: #FF504D; }
.floraforms .alert-error { color:#FF504D; background-color: #fff; }

/* @form element :focus state 
-------------------------------------------------------- */
.floraforms .flo-input:focus,
.floraforms .flo-textarea:focus,
.floraforms .flo-select > select:focus,
.floraforms .flo-selectmulti select:focus{ border-color: #457ECB; color: #333; }
.floraforms .flo-selectmulti select:focus, 
.floraforms .flo-input:focus ~ .flo-hint,
.floraforms .flo-textarea:focus ~ .flo-hint, 
.floraforms .flo-file .file-input:focus + .flo-input{ border-color: #457ECB; }
.floraforms .flo-select > select:focus + .arrow{ color:#457ECB; }

/* @validation - error state
------------------------------------- */
.floraforms .state-error .flo-input,
.floraforms .state-error .flo-textarea,
.floraforms .state-error.flo-select > select,
.floraforms .state-error.flo-selectmulti > select,
.floraforms .state-error input:hover + .flo-checkbox, 
.floraforms .state-error input:hover + .flo-radio,
.floraforms .state-error input:focus + .flo-checkbox, 
.floraforms .state-error input:focus + .flo-radio,
.floraforms .state-error .flo-checkbox, 
.floraforms .state-error .flo-radio{
	background: rgba(255, 231, 192, 0.35);
	border-color:#A1665D;
}
/* @captcha + reload button
-------------------------------------------------- */
.floraforms .captcode{
	background: #fff;
    border: 1px solid #D9E4E7;
	border-left: none;
}
.floraforms .refresh-captcha i { 
	color: #3282ba; 
}
/*end of floraforms*/
/* Videos */
.video-container {
	position:relative;
	padding-bottom:56.25%;
	padding-top:30px;
	height:0;
	overflow:hidden;
	margin-bottom: 25px;
}
@media only screen and (min-width: 1024px) {
	.video-container {
		margin-bottom: 50px
	}	
}
.video-container iframe, .video-container object, .video-container embed {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
.iframe-container {
	position:relative;
	padding-bottom:200%;
	padding-top:30px;
	height:0;
	overflow:hidden;
}
.iframe-container iframe, .iframe-container object, .iframe-container embed {
	position:absolute;
	top:0;
	left:0;
	width:105%;
	height:100%;
}