/* -- MAIN CSS FILE: compiled from main.scss -- */
/*
This WordPress theme is managed by Bookswarm using source control. Any changes made to the theme files directly on the server are likely to be overwritten.
If changes are required please contact Bookswarm - hello@bookswarm.co.uk / www.bookswarm.co.uk
*/
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, 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,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

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

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

/* --- general styles --- */
html {
  font-size: 62.5%;
}

body {
  font-family: "Caudex", serif;
  font-weight: 400;
  font-size: 1.4rem;
  line-height: 1.42857143;
  color: #333333;
}
body:before {
  content: ' ';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-image: url("../images/pink-rose-big.png"), url("../images/pink-rose-big.png");
  background-size: 367px 352px;
  background-repeat: no-repeat;
  opacity: 0.6;
  background-position: left -193px top 20px, right -172px top 20px;
}

#wrapper {
  overflow: hidden;
  position: relative;
  z-index: 2;
}

p {
  margin-bottom: 20px;
}

strong, b {
  font-weight: bold;
}

em, i {
  font-style: italic;
}

ul, ol {
  margin-bottom: 17px;
  margin-left: 17px;
}

ul li {
  list-style: disc;
  margin: 0 0 2px 0;
}

ol li {
  margin: 0 0 6px 19px;
}

.left {
  float: left;
}

.right {
  float: right;
}

.clear {
  clear: both;
}

.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

a {
  color: #4e346b;
  text-decoration: none;
}

a:hover,
a:focus {
  color: #4e346b;
  text-decoration: underline;
}

a.return {
  font-size: 1.6rem;
  font-weight: bold;
  display: block;
  padding: 20px 0;
}

img.alignright, .wp-caption.alignright, .alignright {
  float: right;
  margin: 0 0 0.6em 1em;
  max-width: 70%;
  height: auto;
}
img.alignright img, .wp-caption.alignright img, .alignright img {
  max-width: 100%;
  height: auto;
}

img.alignleft, .wp-caption.alignleft, .alignleft {
  float: left;
  margin: 0 1em 0.6em 0;
  max-width: 70%;
  height: auto;
}
img.alignleft img, .wp-caption.alignleft img, .alignleft img {
  max-width: 100%;
  height: auto;
}

img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  height: auto;
}

img.alignnone {
  max-width: 100%;
  height: auto;
}

.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.col-xs-12 img {
  max-width: 100%;
  height: auto;
}

@media (max-width: 1024px) {
  img.alignright, .wp-caption.alignright, .alignright,
  img.alignleft, .wp-caption.alignleft, .alignleft {
    max-width: 60%;
  }
}
/* eg: Android Samsung galaxy landscape */
@media (max-width: 685px) {
  img.alignright, .wp-caption.alignright, .alignright,
  img.alignleft, .wp-caption.alignleft, .alignleft {
    max-width: 100%;
  }
}
.wp-caption-text {
  font-weight: bold;
  text-align: center;
  margin-top: 3px;
}

button:focus {
  outline: 0;
}

.hidden {
  /*hide stuff in a screen-reader-friendly way*/
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.mobile {
  display: none !important;
}

.button {
  display: inline-block;
  background-color: #300e30;
  color: #c59e6a;
  border: 0;
  cursor: pointer;
  font-size: 18px;
  border-radius: 20px;
  padding: 5px 40px;
  text-transform: uppercase;
  text-shadow: 1px 1px 1px #000;
  text-align: center;
  margin-bottom: 20px;
}
.button:before, .button:after {
  content: "\00b7";
  padding: 0 9px 0 0;
  font-size: 4rem;
  line-height: 4px;
  display: inline-block;
  height: 16px;
  vertical-align: bottom;
  color: #fff;
}
.button:after {
  padding: 0 0 0 9px;
}
.button:hover, .button:visited {
  color: #c59e6a;
  text-decoration: none;
}

.divider {
  background-repeat: no-repeat, no-repeat, repeat-x, no-repeat;
  background-size: 9px 9px, 36px 35px, 1px, 9px 9px;
  background-position: left center, center center, bottom 16.3px center, right center;
  margin-bottom: 6px;
  width: 100%;
  height: 35px;
}
.divider.gold-on-white {
  background-image: url("../images/gold-dot.png"), url("../images/pink-rose.png"), url("../images/gold-line-bg.png"), url("../images/gold-dot.png");
}
.divider.white-on-gold {
  background-image: url("../images/white-dot.png"), url("../images/pink-rose.png"), url("../images/white-line-bg.png"), url("../images/white-dot.png");
}
.divider.white-on-purple {
  background-image: url("../images/white-dot.png"), url("../images/pink-rose.png"), url("../images/white-line-bg.png"), url("../images/white-dot.png");
}

hr, hr.gold {
  background-image: url("../images/gold-dot.png"), url("../images/gold-line-bg.png"), url("../images/gold-dot.png");
  background-repeat: no-repeat, repeat-x, no-repeat;
  background-position: left center, bottom 4px center, right center;
  background-size: 9px 9px, 1px, 9px 9px;
  height: 9px;
  border: 0;
}

.gold-border {
  border-top: 3px solid #c59e6a;
}

.photo img {
  max-width: 100%;
}

ul.buy-links {
  background-color: #fff;
  padding: 15px 10px 10px;
  margin: 0;
}
ul.buy-links li {
  list-style: none;
  text-align: center;
  margin-bottom: 10px;
}

/* ---- typography ---- */
h1, h2, h3, h4, h5, h6 {
  line-height: 1.1em;
  margin-bottom: 0.6em;
}

h1 {
  font-size: 4.7rem;
}

h2 {
  font-size: 2.9rem;
}

h3 {
  font-size: 2.6rem;
}

h4 {
  font-size: 2.1rem;
}

h5 {
  font-size: 1.8rem;
}

/* ----- masthead ----- */
#masthead {
  position: relative;
  padding: 23px 0 0;
}
#masthead > .container {
  position: relative;
}
#masthead > .container #social-icons {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 102;
}
#masthead .divider {
  height: 40px;
  background-size: 9px 9px, 40px 40px, 1px, 9px 9px;
  background-position: left center, center center, bottom 18.3px center, right center;
}

.social-icons .sh-sb-link {
  width: 20px;
  height: 20px;
}

#title {
  text-align: center;
  margin-bottom: 23px;
  position: relative;
  z-index: 101;
}
#title h1 {
  color: #4e346b;
  font-size: 3.3rem;
  line-height: 1.4em;
}
#title h1 span {
  font-size: 5.3rem;
  display: block;
  padding-top: 5px;
}
#title a:hover {
  text-decoration: none;
}
#title p.description {
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 670px;
}

#queen-select {
  position: relative;
  z-index: 100;
}
#queen-select ul.menu {
  margin: 0;
  text-align: center;
  font-size: 0;
}
#queen-select li.queen-circle {
  list-style: none;
  display: inline-block;
  margin-bottom: 0;
  width: 145px;
  height: 150px;
  padding-top: 8px;
  padding-bottom: 20px;
  overflow: hidden;
  position: relative;
}
#queen-select li.queen-circle.taphover:hover, #queen-select li.queen-circle.taphover.hover {
  padding-top: 5px;
  background: url("../images/arrow-up-gold.png") no-repeat bottom center;
  background-size: 19px 10px;
}
#queen-select li.queen-circle.taphover:hover .inactive-img, #queen-select li.queen-circle.taphover.hover .inactive-img {
  display: none;
}
#queen-select li.queen-circle.taphover:hover .active-img, #queen-select li.queen-circle.taphover.hover .active-img {
  display: block;
}
#queen-select li.queen-circle a:link, #queen-select li.queen-circle a:visited {
  padding: 0;
  font-size: 1.2rem;
  color: #4e346b;
}
#queen-select li.queen-circle a:link img, #queen-select li.queen-circle a:visited img {
  border-radius: 50%;
  display: block;
  margin: 0 auto;
}
#queen-select li.queen-circle a.taphover:hover, #queen-select li.queen-circle .taphover.hover a {
  font-weight: bold;
  text-decoration: none;
}
#queen-select li.queen-circle .inactive-img {
  display: block;
  margin-top: 3px;
  position: absolute;
  bottom: 3px;
  left: 0;
  right: 0;
  position: relative;
  width: 111px;
  margin: 0 auto;
}
#queen-select li.queen-circle .inactive-img .frame {
  position: absolute;
  top: -8px;
  right: 4px;
}
#queen-select li.queen-circle .active-img {
  display: none;
  position: relative;
  width: 111px;
  margin: 0 auto;
}
#queen-select li.queen-circle .active-img .frame {
  position: absolute;
  top: -8px;
  right: 4px;
}
#queen-select li.queen-circle.active {
  padding-top: 6px;
  background: url("../images/arrow-up-gold.png") no-repeat bottom center;
  background-size: 19px 10px;
  font-weight: bold;
}
#queen-select li.queen-circle.active .inactive-img {
  display: none;
}
#queen-select li.queen-circle.active .active-img {
  display: block;
}
#queen-select li.queen-circle p.name {
  display: block;
  padding-top: 15px;
  position: absolute;
  bottom: 11px;
  left: 0;
  right: 0;
}

/* --- menu ---- */
#menu {
  display: none;
  background-color: #c59e6a;
}
#menu #section-navigation {
  text-align: center;
}
#menu #section-navigation ul {
  margin: 0;
}
#menu #section-navigation ul li {
  display: inline-block;
  margin: 0 40px;
}
#menu #section-navigation ul li a {
  text-transform: uppercase;
  font-size: 1.2rem;
  padding: 8px 0 6px;
  display: block;
}

.page-template-template-queen #menu {
  display: block;
}

/* General styles for all menus */
.menuClose {
  position: absolute;
  top: 10px;
  left: 10px;
  width: 27px;
  height: 27px;
  cursor: pointer;
}
.menuClose img {
  width: 100%;
  height: auto;
}

.cbp-spmenu {
  background: #4e346b;
  position: fixed;
  padding: 39px 29px 29px 29px;
  width: 260px;
  border-left: 3px solid #c59e6a;
  height: 100%;
}
.cbp-spmenu p {
  color: #fff;
}
.cbp-spmenu h2 {
  color: #fff;
  text-align: center;
  font-size: 1.9rem;
}

.cbp-spmenu a {
  display: block;
  color: #fff;
  font-size: 1.1em;
  font-weight: 300;
}

/* Orientation-dependent styles for the content of the menu */
.cbp-spmenu-vertical {
  width: 258px;
  height: 100%;
  top: 0;
  z-index: 1000;
}

.cbp-spmenu-vertical a {
  border-bottom: 1px solid #258ecd;
  padding: 1em;
}

.cbp-spmenu-horizontal {
  width: 100%;
  height: 150px;
  left: 0;
  z-index: 1000;
  overflow: hidden;
}

.cbp-spmenu-horizontal h3 {
  height: 100%;
  width: 20%;
  float: left;
}

.cbp-spmenu-horizontal a {
  float: left;
  width: 20%;
  padding: 0.8em;
  border-left: 1px solid #258ecd;
}

/* Vertical menu that slides from the left or right */
.cbp-spmenu-left {
  left: -240px;
}

.cbp-spmenu-right {
  right: -260px;
}

.cbp-spmenu-left.cbp-spmenu-open {
  left: 0px;
}

.cbp-spmenu-right.cbp-spmenu-open {
  right: 0px;
}

/* Horizontal menu that slides from the top or bottom */
.cbp-spmenu-top {
  top: -150px;
}

.cbp-spmenu-bottom {
  bottom: -150px;
}

.cbp-spmenu-top.cbp-spmenu-open {
  top: 0px;
}

.cbp-spmenu-bottom.cbp-spmenu-open {
  bottom: 0px;
}

/* Push classes applied to the body */
.cbp-spmenu-push {
  overflow-x: hidden;
  position: relative;
  left: 0;
}

.cbp-spmenu-push-toright {
  left: 240px;
}

.cbp-spmenu-push-toleft {
  left: -260px;
}

/* Transitions */
.cbp-spmenu,
.cbp-spmenu-push {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

/* ----- sections ----- */
.gold-bg {
  background-color: #c59e6a;
  padding: 40px 0;
}
.gold-bg h2 {
  color: #4e346b;
}
.gold-bg h2.center {
  text-align: center;
}
.gold-bg div.divider {
  margin-bottom: 20px;
}
.gold-bg p {
  color: #000;
}

.white-bg {
  background-color: #fff;
  padding: 40px 0;
}
.white-bg h2 {
  color: #4e346b;
}
.white-bg h2.center {
  text-align: center;
}
.white-bg div.divider {
  margin-bottom: 20px;
}
.white-bg p {
  color: #000;
}

.purple-bg {
  background-color: #4e346b;
  padding: 40px 0;
}
.purple-bg h2 {
  color: #c59e6a;
}
.purple-bg h2.center {
  text-align: center;
}
.purple-bg div.divider {
  margin-bottom: 20px;
}
.purple-bg p {
  color: #fff;
}

.roses-bg {
  position: relative;
  padding: 20px 0;
}
.roses-bg .social-widgets {
  text-align: center;
}
.roses-bg .social-widgets .widget:first-of-type {
  margin-right: 20px;
}
.roses-bg:after {
  position: absolute;
  top: 80px;
  left: 0;
  right: 0;
  bottom: 0;
  content: '';
}
.roses-bg .widget {
  position: relative;
  z-index: 100;
  width: 50%;
  display: inline-block;
  max-width: 370px;
}

/* ----- book info section ----- */
#book-info {
  background-color: #4e346b;
  background-size: cover;
  background-repeat: no-repeat;
  color: #fff;
  padding: 20px 0;
}
#book-info .info {
  padding: 70px 15px 30px;
  text-shadow: 1px 1px 1px #000;
}
#book-info .info h2 {
  font-size: 3.3rem;
}
#book-info .info a {
  color: #fff;
  text-decoration: underline;
}
#book-info .info a.button {
  color: #c59e6a;
  text-decoration: none;
}
#book-info .info p {
  font-size: 2.0rem;
}
#book-info .cover img {
  max-width: 100%;
  float: right;
}

/* ----- extract/eshort ----- */
.extract-lightbox {
  max-width: 700px;
  padding: 20px 40px;
}

#e-shorts li.slide .cover {
  float: right;
  max-width: 100%;
  padding-left: 28px;
}
#e-shorts .flexslider {
  background: transparent;
  border: 0;
}
#e-shorts .flexslider .slides img {
  width: auto;
}
#e-shorts .custom-navigation {
  position: relative;
  z-index: 100;
}
#e-shorts .custom-navigation .flex-prev {
  position: absolute;
  left: 47.5%;
  bottom: 20px;
  background-image: url("../images/next-prev.png");
  background-size: auto 22px;
  background-position: left center;
  text-indent: -9999px;
  width: 22px;
  height: 22px;
}
#e-shorts .custom-navigation .flex-next {
  position: absolute;
  right: 47.5%;
  bottom: 20px;
  background-image: url("../images/next-prev.png");
  background-size: auto 22px;
  background-position: right center;
  text-indent: -9999px;
  width: 22px;
  height: 22px;
}
#e-shorts p.center {
  text-align: center;
  color: #fff;
}

/* ---- trailer ----- */
#trailer .video {
  width: 100%;
  max-width: 645px;
  margin: 0 auto;
}

/* ---- research ---- */
.ui-tabs-nav {
  margin: 0 0 20px 0;
}
.ui-tabs-nav li {
  list-style: none;
  margin: 0 0 19px 0;
  display: block;
  float: left;
}
.ui-tabs-nav li span.pipe {
  color: #c59e6a;
  margin: 0 11px;
}
.ui-tabs-nav li a {
  color: #4e346b;
  text-transform: uppercase;
  font-size: 1.4rem;
}
.ui-tabs-nav li a:hover, .ui-tabs-nav li a:focus {
  text-decoration: none;
}
.ui-tabs-nav .ui-state-active a, .ui-tabs-nav .ui-state-hover a {
  border-bottom: 3px solid #c59e6a;
}

.tab-content {
  clear: both;
}
.tab-content .research h2 {
  font-size: 2.1rem;
}
.tab-content article {
  margin-bottom: 15px;
}

/* ---- meet author ---- */
/* ---- generic pages --- */
#content {
  padding: 40px 15px;
}

#newsletter-form {
  width: 100%;
  max-width: 500px;
  margin: 0 auto;
}

/* --- social media widgets */
.twitterwidget, .fb-page {
  height: 495px;
  overflow: auto;
  margin-bottom: 20px;
  border: 1px solid #c59e6a;
}

.fb-page {
  margin-bottom: 15px;
}

form input[type="text"] {
  width: 100%;
  padding: 6px;
  margin: 0.5em 0;
}
form input[type="text"] {
  padding: 8px 6px;
}
form input[type="submit"] {
  display: block;
  margin: 0 auto;
}
form .gform_body ul {
  margin: 0;
}
form .gform_body ul li {
  list-style: none;
}
form label {
  font-size: 1.2rem;
}
form span.name_first label, form span.name_last label {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.gform_heading {
  margin-bottom: 20px;
}

/* ------- extra CSS for tables  ----- */
#wrapper thead tr td {
  font-weight: bold;
}

#wrapper td {
  padding: 10px 26px 10px 0;
  border: 0;
}

#wrapper tr {
  border-bottom: 1px solid #ccc;
}

span.pipe {
  margin: 0 10px;
}

/* ---- footer ---- */
#footer {
  padding: 10px 0;
}
#footer p, #footer a {
  margin-bottom: 0;
  font-size: 1.2rem;
}
#footer .right {
  text-align: right;
}

/* ------------ RESPONSIVE MEDIA QUERIES ------- */
@media (max-width: 991px) {
  #queen-select li.queen-circle:hover, #queen-select li.queen-circle.active, #queen-select li.queen-circle.taphover:hover, #queen-select li.queen-circle.taphover.hover {
    background-image: none;
  }

  body:before {
    background-position: left -237px top 20px, right -238px top 20px;
  }

  #title img {
    width: 580px;
  }
}
/* iPad portrait */
@media (max-width: 768px) {
  #book-info .cover {
    text-align: center;
  }
  #book-info .cover img {
    float: none;
  }

  #e-shorts .custom-navigation .flex-next {
    right: 45.5%;
  }

  #e-shorts .custom-navigation .flex-prev {
    left: 45.5%;
  }

  #title img {
    width: 552px;
  }

  body:before {
    background: none;
  }
}
/* eg: Android Samsung galaxy landscape */
@media (max-width: 685px) {
  .roses-bg .widget {
    width: 100%;
  }
  .roses-bg .widget:first-of-type {
    margin-right: 0;
  }

  .mobile {
    display: block !important;
  }

  .desktop {
    display: none !important;
  }

  .twitterwidget, .fb-page {
    height: auto;
  }

  #e-shorts li.slide .cover {
    max-width: 50%;
  }
}
/* iphone 5 landscape */
@media (max-width: 568px) {
  body:before {
    background: none;
  }

  #e-shorts .custom-navigation .flex-next {
    right: 42.5%;
  }

  #e-shorts .custom-navigation .flex-prev {
    left: 42.5%;
  }

  h1 {
    font-size: 3.5rem;
  }

  #book-info .info {
    padding-top: 15px;
  }
  #book-info .info p {
    font-size: 1.6rem;
  }

  h2 {
    font-size: 2.4rem;
  }
}
/* iPhone 3+4 landscape */
@media (max-width: 480px) {
  #e-shorts li.slide .cover {
    float: none;
    max-width: 100%;
    margin: 0 auto;
    padding-left: 0;
  }
}
/* eg: Android Samsung galaxy portrait */
/* iPhone 3+4 portrait */
/* small android portrait */

#newsletter-form p {
  color: #fff!important;
  font-size: 12px;
}

#newsletter-form  label {
  color: white;
  width: 200px;
  display: inline-block;
}

#newsletter-form .consent label {
  width: 80%;
}

#newsletter-form input[type=text], #newsletter-form input[type=email]{
  width: auto!important;
  padding: 2px!important;
}

#newsletter-form .consent input[type=checkbox]{
  float: left;
  margin-right: 10px;
  margin-top: 5px;
}

#newsletter-form input[type=submit]{
  margin-bottom: 20px;
}

#newsletter-form .data-controller {
  hyphens: none;
      -webkit-hyphens: none;
    -moz-hyphens: none;
    -epub-hyphens: none;
}

#newsletter-form .data-controller label {
  width: 100%;
}

#newsletter-form select {
  margin-bottom: 10px;
}

#newsletter-form select#country {
 width: 56%;
}

#newsletter-form #under13 {
 float: left;
 margin-right: 1%;
 margin-top: 3px;
}

#newsletter-form .under13 {
  width: 90%;
  margin-bottom: 10px;
}

#newsletter-form #email {
  margin-left: 5px;
}