/*!
Theme Name: Beakerwood
Version: 1.0.0
Based on: Reading With A Pencil;
Domain: beakerwood.ca
*/

/* CONTENTS
Basic 
	Special 
	Home Page 
	Pages Template
Blocks & Partials 
List Page 
Review & Post Pages 
404 Page
Page Nav
Menu & Nav
Social Media
Search
Responsive
*/

/* ######
BASIC HTML CODES
###### */

* {
  margin: 0px;
  padding: 0px;
}

html {
  height: 100%;
}

body {
  background: #fff;
  font-family: "Raleway", sans-serif;
  font-size: 0.9em;
  line-height: 1.5em;
  hyphens: auto;
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

p {
  padding-bottom: 1em;
}

p a:link,
p a:visited {
  color: #545454;
  text-decoration: none;
  font-weight: 600;
}

h1,
h2 {
  hyphens: none;
  text-align: left;
  margin: 0.75em 0em 0em;
  font-family: "Goudy Bookletter 1911", serif;
  color: #58595b;
}

h3,
h4,
h5,
h6 {
  hyphens: none;
  text-align: left;
  margin: 0.75em 0em 0em;
  font-family: "Raleway", sans-serif;
  font-weight: 700;
  color: #58595b;
}

blockquote + p,
header + p,
hr + p,
ol + p,
ul + p {
  margin-top: 1em;
}

blockquote {
  margin: 2em 8em 2em 8em;
  padding: 10px 20px 5px 20px;
  background-color: #fff;
  border-radius: 0.5em;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.1);
  z-index: 1;
}

ul {
  padding-left: 25px;
}

hr {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 20px;
  margin-bottom: 20px;
}

/* SPECIAL */

.inner {
  /*Margins for inner DIV inside each column (to provide padding)*/
  padding: 0 1em 1em 1em;
}

.button {
  margin-left: auto;
  margin-right: auto;
  display:block;
  padding: 10px 25px;
  border:0;
  background-color: darkred;
  color: white;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.4);
  z-index: 1;
}

.image {
  margin: 10px auto 1em auto;
  display: block;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.4);
  z-index: 1;
}

.floatleft{
  float:left;
  padding: 0 1em 1em 0;
}

.floatright{
  float:right;
  padding: 0 0 1em 1em;
}

.floatcenter{
  display:block;
  margin-left: auto;
  margin-right: auto;
  padding: 0 1em 1em 1em;
}

figcaption {
  text-align: center;
  margin-bottom: 2em;
}

.post__title {
  margin-bottom: 5px;
}

/* 
.flex-container {
  display: flex;
  display: -ms-flex;
  display: -webkit-flex;
}

.flex-container > .flex-column {
  border: 1px red;
  flex: 1;
  padding: 0 30px;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
}
 */


/*  HOME PAGE  */

#intro {
  max-width: 550px;
  margin-left: auto;
  margin-right: auto;
}

#intro p {
  padding-bottom: 0.75em;
  font-size: 1.1em;
  line-height: 1.5em;
  text-align: justify;
}

/*  PAGES TEMPLATE  */
.pages {
  max-width: 70ch;
  margin-left: auto;
  margin-right: auto;
}

/* #######
BLOCKS & PARTIALS
####### */

#head {
  margin-top: 10px;
  margin-bottom: 10px;
  margin-right: auto;
  margin-left: auto;
}

#header {
  text-align: center;
}

#main {
  display: flex;
  justify-content: center;
}

#mainblock {
  flex-basis: 120ch;
  background-color: #fbfbf7;
  padding-top: 1em;
  margin: 2em 1em 2em 1em;
  display: flex;
  justify-content: center;
  align-items: baseline;
  max-width: 950px;
  box-shadow: 0px 5px 5px 5px rgba(165, 145, 118, 0.1);
}

#footer {
  padding: 5px;
  height: 30px;
  width: auto;
  margin-top: auto;
  background-color: #886547;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 0.75em;
}

#footer a,
#footer a:visited {
  color: white;
  text-decoration: none;
}

#contact form {
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
  color: #886547;
}

#contact input,
#contact textarea {
  margin-top: 5px;
  margin-bottom: 15px;
  padding: 4px 10px;
  font-size: 1em;
  width: 200px;
  color: #aaa;
  font-weight: bold;
  background-color: #fff;
  border-radius: 0px 0px 0px 0px;
  border: solid 1px;
  box-shadow: inset 4px 4px 6px -4px #ccc;
}

#contact button {
  padding: 0.5em 3em;
  margin-bottom: 10px;
  border-radius: 20px;
  background-color: #fff;
  color: #886547;
  border: none;
  box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.4);
}

/* #######
List Page
####### */

.listpage a {
  color: #545454;
  text-decoration: none;
  font-weight: 600;
}

.listpageitem,
.listpageitem li {
  margin: 5px 3px 5px 0px;
  list-style-type: square;
}

/* #######
REVIEW & POST PAGES
####### */

.productlistpage a,
.postlistpage a {
  color: #545454;
  text-decoration: none;
  font-weight: 600;
}

.productlistpage h1 {
  margin-bottom: 10px;
}

.productlistpage h3,
.postsummary h3 a {
  margin: 10px 0 0 0;
  font-family: "Raleway", sans-serif;
  text-align: center;
}

.productlistpage p {
  margin: 0;
  padding-bottom: 5px;
}

.productlistitem,
.postlistitem {
  align-items: stretch;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.reviewsummary {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  width: 197px;
  padding: 10px;
  margin: 5px;
  background-color: #fff;
  box-shadow: 0px 4px 4px 4px rgba(0, 0, 0, 0.08);
}

.reviewsummaryhome {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  width: 125px;
  padding: 10px;
  margin: 5px;
  background-color: #fff;
  box-shadow: 0px 4px 4px 4px rgba(0, 0, 0, 0.08);
}
.reviewsummaryhome p{
  color: #000;
  padding: 5px;
  font-size: 0.75em !important;
  text-align: left !important;
  hyphens: none;
  }

.reviewsummary img,
.postlistsummary img {
  max-width: 190px;
  margin: 5px;
}

.review h2 {
  margin: 20px 0 0px 0;
}

.review a {
  font-weight: bold;
  text-decoration: none;
  color: #000;
}

.review p:last-of-type {
  margin-top: 25px;
}

.review figure {
  margin-top: 25px;
}

.product h1,
.product {
  text-align:center;
}

.productdata ul {
  margin: 5px 0px 10px 10px;
  list-style-position: outside;
  padding: 0;
}

.productdata li {
  list-style-type: none;
  font-weight: bold;
  line-height: 1.2em;
}

.prod{
  display: flex;
  flex-direction: row;
  justify-content: center;
}

.prodimg{
  margin: 10px;
  max-width: 30em;
}

.proddesc{
  margin: 10px;
  max-width: 40em;
}


.postsummary {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  width: 197px;
  padding: 10px;
  margin: 5px;
  background-color: #fff;
  box-shadow: 0px 4px 4px 4px rgba(0, 0, 0, 0.08);
}

.postsummarydate {
  margin: 0;
  font-weight: bold;
}

.tags {
  margin-top: 20px;
}

.tags a {
  font-weight: bold;
  text-decoration: none;
  color: #000;
}

.tags li {
  display: inline-block;
  text-transform: uppercase;
  font-size: 8px;
  margin-bottom: 5px;
}

/* #######
404 PAGE
####### */

#errorpg {
  display: block;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center;
}

#errorpg h1,
#errorpg h2 {
  text-align: center;
  margin-bottom: 1.5em;
}

#errorpg img {
  text-align: center;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.6);
  z-index: 1;
}

/* #######
PAGE NAV
####### */

.pagination {
  display: block;
}

.page-item,
.page-item a,
.page-item li {
  margin: 5px 3px 5px 0px;
  display: inline-block;
}

.pagenav {
  display: flex;
  justify-content: space-around;
}

.pagenav a {
  font-weight: bold;
  text-decoration: none;
  color: #000;
}

.prevpage {
  margin-top: 20px;
  text-align: right;
  padding-right: 0px;
  text-indent: 0px;
}
.nextpage {
  margin-top: 20px;
  padding-left: 1.25em;
  text-indent: -1.25em;
}

/* #######
MENU & NAV
####### */

#menu {
  padding: 20px 20px 5px 20px;
  text-transform: uppercase;
}

.menulist {
  display: flex;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
}

.listmenu {
  display: block;
}

.menulist a {
  list-style-type: none;
  text-decoration: none;
  margin: 5px 10px 5px 10px;
  color: #7c7c7c;
  padding: 5px 15px 5px 15px;
}

.menulist a:hover {
  color: #000;
  border-top: 1px solid saddlebrown;
}

.sub-menu {
  text-align: center;
  padding: 0px;
  text-transform: lowercase;
}

.dropdown {
  position: relative;
  display: inline-block;
}

.dropdown-content {
  display: none;
  position: absolute;
  background-color: #fff;
  min-width: 140px;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  z-index: 1;
}

.dropdown-content a {
  color: black;
  padding: 8px 8px;
  text-decoration: none;
  display: block;
  border: none;
}

.dropdown-content a:hover {
  background-color: #fff;
}

.dropdown:hover .dropdown-content {
  display: block;
  border: none;
}

#mini-menu select {
  padding: 0.5em 1em 0.5em 2em;
  margin: 5px 0px 10px;
  background-color: #fff;
  color: #886547;
  border: none;
  box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.4);
}

#footermenu {
  padding: 10px;
  text-transform: capitalize;
  font-size: .9em;
  margin:auto;
}

#footermenu ul {
  padding-left: 20px;
}

.footerlist li {
  list-style-type: none;
  float:left;
  padding: 0 15px;
}

.footerlist li:before {
  content: "";
  border-color: transparent #886547;
  border-style: solid;
  border-width: 0.35em 0 0.35em 0.45em;
  display: block;
  height: 0;
  width: 0;
  left: -1em;
  top: 1em;
  position: relative;
}

.footerlist a,
.footerlist a:visited {
  text-decoration: none;
  color: #886547;
}

.footerlist a:hover {
  color: #886547;
}

/* #######
Social Media
####### */

.social {

  margin-right: auto;
  margin-left: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
/*   background: #886547; */
  width: 10em;
  min-height: 1.5em;
  padding: 4px 10px 0px 10px;
  margin-top: 0px;
  margin-bottom: 1px;
/*   box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.1); */
}

.social-icons img {
  width: 1.2rem;
  height: 1.2rem;
  margin: 0 0.5rem 0 0.5rem;
}

.social-icons:hover {
  /* filter: drop-shadow(2px 2px 1px rgb(192, 192, 192)); */
  filter: drop-shadow(0px 4px 1.25px rgba(0, 0, 0, 0.2));
  position: relative;
  left: -1px;
  top: -2px;
}

/* #######
Eddie Search 
####### */

#search input {
  margin-top: 5px;
  padding: 4px 10px;
  width: 10em;
  height: 1.5em;
  font-size: 1em;
  color: #aaa;
  font-weight: bold;
  background-color: #fff;
  border: solid 1px;
  box-shadow: inset 4px 4px 4px -1px rgba(0, 0, 0, 0.1);
  /* outline: none;
	text-align: left;
	display: inline-block; */
}

.searchresults {
  max-width: 60ch;
  margin-top: 15px;
  text-decoration: none;
}

/* #######
RESPONSIVE LAYOUT CSS
####### */

#mini-menu {
  display: none;
}

.responsive {
  width: 100%;
  height: auto;
  max-width: 600px;
}

@media (max-width: 600px) {
  /* responsive layout break point */

  #header {
    margin: 10px;
  }
  
  #main {
    margin-left: auto;
    margin-right: auto;
  }

  #mainblock {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: auto;
    margin: 15px;
  }

  #intro {
    width: auto;
    margin-left: 20px;
    margin-right: 20px;
  }

  #mini-menu {
    display: block;
    text-align: center;
    padding: 20px;
    text-transform: uppercase;
  }

  #menu {
    display: none;
  }
}

