/*
Theme Name: Pressbooks Publisher
Author: The Pressbooks Team
Author URI: http://pressbooks.com
Description: The default theme for the root site on Pressbooks installations.
Version: 2.0
Text Domain: pressbooks-publisher
Tags:
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
1. Normalize
2. Typography
3. Elements
4. Forms
5. Navigation
	5.1 Links
	5.2 Menus
6. Accessibility
7. Alignments
8. Clearings
9. Widgets
10. Site
    10.1 Layout
	10.2 Header
	10.3 Catalog
	10.4 Posts and pages
	10.5 Footer
11. Infinite scroll
12. Media
	12.1 Captions
	12.2 Galleries
--------------------------------------------------------------*/
/*--------------------------------------------------------------
1. Normalize
--------------------------------------------------------------*/
html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%; }

body {
  margin: 0; }

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

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline; }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden],
template {
  display: none; }

a {
  background-color: transparent; }

a:active,
a:hover {
  outline: 0; }

abbr[title] {
  border-bottom: 1px dotted; }

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

mark {
  background: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

svg:not(:root) {
  overflow: hidden; }

figure {
  margin: 1em 40px; }

hr {
  box-sizing: content-box;
  height: 0; }

pre {
  overflow: auto; }

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0; }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

button[disabled],
html input[disabled] {
  cursor: default; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

input {
  line-height: normal; }

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

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

td,
th {
  padding: 0; }

/*--------------------------------------------------------------
2. Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
textarea {
  color: #404040;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5; }

/*--------------------------------------------------------------
## Headers
--------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {
  clear: both;
  font-family: 'geogrotesque_medium', Arial, Helvetica, sans-serif;
  font-weight: normal;
  letter-spacing: normal; }

/*--------------------------------------------------------------
## Copy
--------------------------------------------------------------*/
p {
  margin-bottom: 1.5em; }
  p.center {
    text-align: center; }

dfn, cite, em, i {
  font-style: italic; }

blockquote {
  margin: 0 1.5em; }

address {
  margin: 0 0 1.5em; }

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", Courier, monospace;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em; }

code, kbd, tt, var {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  font-size: 15px;
  font-size: 0.9375rem; }

abbr, acronym {
  border-bottom: 1px dotted #666;
  cursor: help; }

mark, ins {
  background: #fff9c0;
  text-decoration: none; }

big {
  font-size: 125%; }

/*--------------------------------------------------------------
3. Elements
--------------------------------------------------------------*/
html {
  box-sizing: border-box; }

*,
*:before,
*:after {
  /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  box-sizing: inherit; }

body {
  background: #fff;
  /* Fallback for when there is no custom background color defined. */ }

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

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em; }

/*--------------------------------------------------------------
## Lists
--------------------------------------------------------------*/
ul, ol {
  margin: 0 0 1.5em 3em; }

ul {
  list-style: disc; }

ol {
  list-style: decimal; }

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em; }

dt {
  font-weight: bold; }

dd {
  margin: 0 1.5em 1.5em; }

img {
  height: auto;
  /* Make sure images are scaled correctly. */
  max-width: 100%;
  /* Adhere to container width. */ }

/*--------------------------------------------------------------
## Table
--------------------------------------------------------------*/
table {
  margin: 0 0 1.5em;
  width: 100%; }

/*--------------------------------------------------------------
4. Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: 3px;
  background: #ddd;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), inset 0 15px 17px rgba(255, 255, 255, 0.5), inset 0 -5px 12px rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.8);
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1;
  padding: .6em 1em .4em;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8); }
  button:hover,
  input[type="button"]:hover,
  input[type="reset"]:hover,
  input[type="submit"]:hover {
    border-color: #ccc #bbb #aaa;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8), inset 0 15px 17px rgba(255, 255, 255, 0.8), inset 0 -5px 12px rgba(0, 0, 0, 0.02); }
  button:active, button:focus,
  input[type="button"]:active,
  input[type="button"]:focus,
  input[type="reset"]:active,
  input[type="reset"]:focus,
  input[type="submit"]:active,
  input[type="submit"]:focus {
    border-color: #aaa #bbb #bbb;
    box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.5), inset 0 2px 5px rgba(0, 0, 0, 0.15); }

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea {
  color: #777;
  border: 1px solid #ccc;
  border-radius: 3px; }
  input[type="text"]:focus,
  input[type="email"]:focus,
  input[type="url"]:focus,
  input[type="password"]:focus,
  input[type="search"]:focus,
  textarea:focus {
    color: #111; }

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"] {
  padding: 3px; }

textarea {
  padding-left: 3px;
  width: 100%; }

/*--------------------------------------------------------------
5. Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
5.1 Links
--------------------------------------------------------------*/
a {
  color: #333;
  text-decoration: none; }
  a:visited {
    color: #333; }
  a:focus, a:active {
    text-decoration: none; }
  a:hover {
    text-decoration: underline; }
  a:focus {
    outline: thin dotted; }
  a:hover, a:active {
    outline: 0; }

/*--------------------------------------------------------------
5.2 Menus
--------------------------------------------------------------*/
.main-navigation {
  clear: both;
  display: block;
  float: left;
  width: 100%; }
  .main-navigation ul {
    display: none;
    list-style: none;
    margin: 0;
    padding-left: 0; }
    .main-navigation ul ul {
      box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
      float: left;
      position: absolute;
      top: 1.5em;
      left: -999em;
      z-index: 99999; }
      .main-navigation ul ul ul {
        left: -999em;
        top: 0; }
      .main-navigation ul ul li:hover > ul, .main-navigation ul ul li.focus > ul {
        left: 100%; }
      .main-navigation ul ul a {
        width: 200px; }
    .main-navigation ul li:hover > ul,
    .main-navigation ul li.focus > ul {
      left: auto; }
  .main-navigation li {
    float: left;
    position: relative; }
  .main-navigation a {
    display: block;
    text-decoration: none; }

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block; }

@media screen and (min-width: 37.5em) {
  .menu-toggle {
    display: none; }

  .main-navigation ul {
    display: block; } }
.site-main .comment-navigation, .site-main
.posts-navigation, .site-main
.post-navigation {
  margin: 0 0 1.5em;
  overflow: hidden; }
.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  float: left;
  width: 50%; }
.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  float: right;
  text-align: right;
  width: 50%; }

/*--------------------------------------------------------------
6. Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden; }
  .screen-reader-text:hover, .screen-reader-text:active, .screen-reader-text:focus {
    background-color: #3a3a3a;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    color: #222;
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar. */ }

/*--------------------------------------------------------------
7. Alignments
--------------------------------------------------------------*/
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em; }

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em; }

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

/*--------------------------------------------------------------
8. Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
  content: "";
  display: table; }

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
  clear: both; }

/*--------------------------------------------------------------
9. Widgets
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Widgets
--------------------------------------------------------------*/
.widget {
  margin: 0 0 1.5em;
  /* Make sure select elements fit in widgets. */ }
  .widget select {
    max-width: 100%; }

/* Search widget. */
.widget_search .search-submit {
  display: none; }

/*--------------------------------------------------------------
10. Site
--------------------------------------------------------------*/
/*--------------------------------------------------------------
10.1 Layout
--------------------------------------------------------------*/
.content-area {
  margin: auto;
  max-width: 1200px;
  width: 100%; }

.site-width {
  margin: auto;
  max-width: 1200px;
  padding: 0 20px;
  width: 100%; }

/*--------------------------------------------------------------
10.2 Header
--------------------------------------------------------------*/
.site-header {
  background-color: #3a3a3a;
  color: #fff;
  padding: 0 0 6em;
  text-align: center; }
  @media screen and (min-width: 700px) {
    .site-header {
      padding-top: 1em;
      text-align: inherit; } }
  .site-header a {
    color: #fff; }

.link-wrap {
  background-color: #fff;
  display: block;
  margin-left: -20px;
  margin-right: -20px;
  margin-bottom: 3em;
  padding: 10px;
  text-align: center; }
  @media screen and (min-width: 700px) {
    .link-wrap {
      background-color: transparent;
      margin: 0;
      padding: 0; } }

a.site-login-btn {
  background-color: #ddd;
  border: 1px solid #ddd;
  border-radius: 2px;
  color: #222;
  font: normal 0.75em "Droid Sans", sans-serif;
  margin-left: 15px;
  padding: 5px 10px;
  text-transform: uppercase; }
  a.site-login-btn:hover {
    background-color: transparent;
    text-decoration: none; }
  @media screen and (min-width: 700px) {
    a.site-login-btn {
      float: right; }
      a.site-login-btn:hover {
        color: #fff; } }

.site-branding {
  text-align: center; }

.site-title {
  font-size: 3.75em;
  margin-top: .5em;
  margin-bottom: 20px;
  font-weight: normal; }
  @media screen and (min-width: 700px) {
    .site-title {
      margin-top: inherit; } }
  .site-title a:hover {
    color: #ddd;
    text-decoration: none; }

.site-description {
  font-size: 1.875em;
  margin-bottom: 25px;
  font-weight: normal; }

.intro-text {
  line-height: 1.6;
  margin: auto;
  text-align: center; }
  .intro-text.two-column {
    -webkit-columns: 300px 2;
    -moz-columns: 300px 2;
    columns: 300px 2;
    text-align: left; }
    @media screen and (min-width: 600px) {
      .intro-text.two-column {
        max-width: 65%; } }
  @media screen and (min-width: 600px) {
    .intro-text {
      max-width: 50%; } }

/*--------------------------------------------------------------
10.3 Catalog
--------------------------------------------------------------*/
.flex-container {
  display: flex;
  display: -ms-flexbox;
  
  flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;

  justify-content: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  
  align-items: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  
  align-content: stretch;
  -webkit-align-content: stretch;
}
.site-main {
  padding: 20px 0; }
  .site-main article {
      background-color: #f9f9f9;
      margin: 10px; 
      border: 1px solid #DDDDDD;
      border-radius: 5px; 
      position: relative;
      padding-bottom: 70px;
    }
    .site-main article > a{
      display: block;
      margin: 0 auto;
      text-align: center;
    }
    .flex-item {
      flex: 100%;
      -ms-flex: 100%;
    }
    @media screen and (min-width: 400px) {
      .flex-item {
         flex: 40%;
         -ms-flex: 40%; }
    }
    @media screen and (min-width: 700px) {
      .flex-item {
        flex: 30%;
        -ms-flex: 30%; }
    }
    @media screen and (min-width: 1000px) {
      .flex-item {
        flex: 20%;
        -ms-flex: 20%; }
    }
    .site-main article img {
      max-width: 100%;
      height: auto;
      width: 90%;
      text-align: center;
      margin: 0 auto;
      padding-top: 4%; }
  .site-main .entry-header {
    line-height: 1.2;
    padding: 20px 5px 10px 5px; 
    text-align: center;
    vertical-align: bottom;
    display: table-cell; }
  @media screen and (min-width: 600px) {
    .site-main .entry-header {
      padding: 20px 15px 10px 15px; }
  }
  .site-main .entry-content {
    padding: 0 20px 0 20px;
    margin: 0;
    text-align: left;
    vertical-align: bottom;
    overflow: hidden;
  }
  @media screen and (min-width: 400px) {
    .entry-content{
      display: none; } }
  @media screen and (min-width: 700px) {
    .entry-content{
      display: block; } }
  .site-main .entry-title {
    font-size: 1.5em;
    /* 34/16 */
    margin: 0; }
    .site-main .entry-title a:hover {
      color: #E61C24;
      text-decoration: none; }
  .site-main .entry-author {
    font-family: 'geogrotesque_light', Arial, Helvetica, sans-serif;
    font-size: 1em;
    /* 22/16 */
    font-weight: normal;
    margin: 10px 0 0; }
  .site-main .entry-footer {
    margin: 0 auto;
    bottom: 20px;
    position: absolute;
    text-align: center;
    display: block;
    width: 100%; }
    .site-main .entry-footer .button-wrap {
      margin: 0; }
    .site-main .entry-footer .more-btn {
      background-color: #E61C24;
      border: none;
      border-radius: 4px;
      color: #fff;
      display: inline-block;
      font-family: 'geogrotesque_medium', Arial, sans-serif;
      font-size: 1.2em;
      margin: 0 auto;
      padding: 7px 20px;
      width: 140px;
      text-align: center;
      text-transform: uppercase; }
      .site-main .entry-footer .more-btn:hover {
        background-color: #FF2232;
        text-decoration: none; }
    .site-main .entry-footer .book-tag {
      color: #777;
      font: 0.875em "Droid Sans", sans-serif;
      padding: 0 3px; }

    .dummy-three,
    .dummy-four {
      display: none;
    }
    @media screen and (min-width: 400px) {
        .dummy-four{
          display: none;
        }
        .dummy-four:last-child {
          display: block;
        }
        .dummy-three {
          display: none;
        }
    }
    @media screen and (min-width: 700px) {
        .dummy-three {
          display: block;
        }
        .dummy-four {
          display: none;
        }
    }
    @media screen and (min-width: 1000px) {
        .dummy-four {
          display:block;
        }
        .dummy-three {
          display:none;
        }
    }
    .site-main article.dummy-three,
    .site-main article.dummy-four {
      background-color: #fff;
      border: none;
    }

/*--------------------------------------------------------------
10.4 Posts and pages
--------------------------------------------------------------*/
.sticky {
  display: block; }

.hentry {
  margin: 0 0 1.5em; }

.byline,
.updated:not(.published) {
  display: none; }

.single .byline,
.group-blog .byline {
  display: inline; }

.page-content,
.entry-summary {
  margin: 1.5em 0 0; }

.page-links {
  clear: both;
  margin: 0 0 1.5em; }

/*--------------------------------------------------------------
10.5 Footer
--------------------------------------------------------------*/
.site-footer {
  background-color: #3a3a3a;
  color: #fff;
  font-family: "Droid Sans", sans-serif;
  font-size: .875em;
  padding: 2em 0;
  text-align: center; }
  .site-footer a {
    color: #fff; }
  .site-footer .site-info {
    margin: auto;
    max-width: 1200px;
    width: 100%; }

/*--------------------------------------------------------------
11. Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  /* Theme Footer (when set to scrolling) */
  display: none; }

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
  display: block; }

/*--------------------------------------------------------------
12. Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0; }

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%; }

/*--------------------------------------------------------------
12.1 Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%; }
  .wp-caption img[class*="wp-image-"] {
    display: block;
    margin-left: auto;
    margin-right: auto; }
  .wp-caption .wp-caption-text {
    margin: 0.8075em 0; }

.wp-caption-text {
  text-align: center; }

/*--------------------------------------------------------------
12.2 Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em; }

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%; }
  .gallery-columns-2 .gallery-item {
    max-width: 50%; }
  .gallery-columns-3 .gallery-item {
    max-width: 33.33%; }
  .gallery-columns-4 .gallery-item {
    max-width: 25%; }
  .gallery-columns-5 .gallery-item {
    max-width: 20%; }
  .gallery-columns-6 .gallery-item {
    max-width: 16.66%; }
  .gallery-columns-7 .gallery-item {
    max-width: 14.28%; }
  .gallery-columns-8 .gallery-item {
    max-width: 12.5%; }
  .gallery-columns-9 .gallery-item {
    max-width: 11.11%; }

.gallery-caption {
  display: block; }
