:root{
  /* The Alignment Problem */
  --tap-serif: 'warnock-pro';
  --tap-sans-serif: mr-eaves-sans;
  --tap-red: #ed4138;
  --tap-red-darker: #eb2b21;
  --tap-red-darkest: #de1e14;
  --tap-yellow: #f1f1e5;
  --tap-blue: #25b0bd;
  --tap-blue-darker: #219ca8;
  --tap-black: #2f2f2f;
  --tap-gray: #939290;
  --tap-light-gray: #b0afae;
  --tap-lighter-gray: #cfcfce;

  /* Algorithms to Live By */
  --atlb-sans-serif: 'Gotham A', 'Gotham B';
  --atlb-sans-serif-semibold: 'Gotham A', 'Gotham B';
  --atlb-blue: #006db2;
  --atlb-blue-darker: #005d99;
  --atlb-blue-darkest: #004e7f;
  --atlb-white: #fefefe;
  --atlb-gray: #545454;

  /* The Most Human Human */
  --mhh-serif: 'Didot';
  --mhh-red: #d04a20;
  --mhh-yellow: #f9f2ad;
  --mhh-olive: 8b7c3b;
  --mhh-green: #357654;
  --mhh-green-darker: #2d6447;
  --mhh-green-darkest: #25533b;

  /* Meta / Navigation */
  --main-sans-serif: var(--atlb-sans-serif), Sans-Serif;
  --main-sans-serif-semibold: Montserrat, var(--atlb-sans-serif-semibold), Sans-Serif;
  --main-serif: Newsreader, var(--mhh-serif), var(--tap-serif), serif;
  --main-navigation: var(--main-serif);
}

body {
  margin: 0;
  padding: 0;
}

h1 {
  font-family: var(--main-sans-serif-semibold);
  font-style: normal;
  text-transform: uppercase;
  font-size: 3em;
  color: #333333;
  margin-bottom: 0px;
}
h1 a:hover {
  color: #333333;
}
h2 {
  font-family: var(--main-sans-serif);
  font-style: normal;
  text-transform: uppercase;
  color: #333333;
}
h3 {
  font-family: var(--main-navigation);
  font-weight: normal;
  font-style: normal;
  color: #999999;
  font-size: 1.125em;
  -webkit-text-size-adjust: none;
  line-height: 2;
}
h3 a {
  color: #999999;
}
h3 a:hover {
  color: #666666;
}
h3 a.current {
  color: #333333;
}
h3 a.current:hover {
  color: #666666;
}
@media only screen and (max-width: 500px) {
  h1 {
    font-size: 3em;
  }
  .card_subtitles {
    flex-direction: column;
  }
  .card_separator {
    display: none;
  }
  h3 a {
    font-size: 1.25em;
  }
}
body {
  background: #f5f5f5;
}
#title_card {
  border: 1px solid #939393;
  width: 700px;
  height: 432px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 0px;
}
@media only screen and (max-width: 700px) {
  #title_card {
    width: 100%;
    border: 0;
  }
}
#title_body {
  text-align: center;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 100vh;
  max-height: 600px;
}
a {
  text-decoration: none;
  color: #333333;
}
a:hover {
  color: #666666;
}
a:active {
  color: #999999;
}
p {
  text-align: justify;
  font-family: var(--main-serif);
  font-weight: 400;
  font-style: normal;
  font-size: 1.125em;
  color: #333333;
	
  padding-top: 0px;
  margin-top: 0px;
}
ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center
}
.card_subtitles {
  max-width: 450px;
}
.card_subtitles li {
  padding: 4px 8px;
}


/* BIO / CONTACT */
#bio_card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  width: 90%;
  max-width: min(900px, 100%);
}
#bio_body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0px;
  padding-top: 0px;
  text-align: center;
}
#picture {
  margin: 10px;
  display: flex;
  float: left;
  width: 340px;
  margin-bottom: 1rem;
  flex-direction: column;
  justify-content: flex-start;
  text-align: left;
}
#photo-caption {
  margin-top: 4px;
}
#picture img {
  width: 340px;
}
#bio {
  margin: 10px;
  display: block;
  float: left;
}
#email {
  margin-top: 10px;
  float: left;
}
.no_top_margin {
  margin-top: 0px;
}
.tall_top_margin {
  margin-top: 30px;
}
#photo-caption {
  float: left;
  clear: both;
  font-family: var(--main-sans-serif);
  font-size: 12px;
  color: #cccccc;
}
#photo-caption a {
  color: #cccccc;
}
#photo-caption a:hover {
  color: #aaaaaa;
}
a#mhh-link:hover, a#mhh-link:active {
  color: var(--mhh-green);
}
a#atlb-link:hover, a#atlb-link:active {
  color: var(--atlb-blue);
}
a#tap-link:hover, a#tap-link:active {
  color: var(--tap-red);
}


/* BOOKS */
#book_body {
  padding: 0px;
  padding-top: 0px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  margin-bottom: 50px;
}
#book_card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  max-width: 978px;
}
#cover_and_blurbs {
  margin-bottom: 10px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: stretch;
  max-width: 100%;
}
#cover {
  margin: 10px;
  display: flex;
  align-items: flex-start;
  justify-content: space-evenly;
  flex-direction: column;
}
#cover img {
  width: 300px;
}
#blurbs {
  margin: 10px;
  display: flex;
  align-items: flex-start;
  justify-content: space-evenly;
  flex-direction: column;
}
.blurb_box {
  font-family: var(--main-sans-serif);
  font-style: normal;
  font-size: 16px;
  color: #333333;
  margin-bottom: 20px;
  display: block;
  float: left;
  clear: left;
  text-align: left;
  width: 100%;
}
.blurb_box:last-of-type {
  margin-bottom: 5px;
}
.bottom_blurbs .blurb_box:last-of-type {
  margin-bottom: 40px;
}
.blurb_content {
  font-family: var(--main-serif);
  font-style: italic;
  letter-spacing: 0px;
  font-weight: 300;
  font-size: 26px;
  margin-bottom: 1px;
}
.bottom_blurbs .blurb_content {
  font-style: normal;
}
.blurb_content:before {
  /*	content: '“';*/
}
.blurb_content:after {
  content: '.';
}
.blurb_content:after {
  /*	content: '”';*/
}
.blurb_source {
  float: left;
  font-size: 12px;
  text-transform: uppercase;
}
.bottom_blurbs .blurb_source {
  font-size: 14px;
  padding-top: 5px;
}
.blurb_source:before {
  /*	content: '—';*/
}
.buy {
  font-size: 16px;
  margin-top: 10px;
  margin-bottom: 10px;
}
.buy .button {
  font-family: var(--main-sans-serif-semibold);
  font-style: normal;
  text-transform: uppercase;
  font-size: 16px;
  padding: 16px;
  clear: left;
  display: block;
}
.buy .button a {
  padding: 10px 20px;
  background-color: rgb(91, 98, 106);
  background-image: none;
  border-color: #000000;
  border-radius: 4px;
  border-width: 1px;
  box-shadow: #333333 0px 1px 0px 0px;
  box-sizing: border-box;
  color: rgb(255, 255, 255);
  text-shadow: rgba(0, 0, 0, 0.247059) 0px -1px 0px;
  margin: 0px;
  padding: 10px 20px;
  background-clip: border-box;
  background-image: none;
  background-origin: padding-box;
  background-size: auto;
  border-bottom-color: rgb(54, 60, 67);
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-left-color: rgb(72, 80, 89);
  border-left-style: solid;
  border-left-width: 1px;
  border-right-color: rgb(44, 49, 55);
  border-right-style: solid;
  border-right-width: 1px;
  border-top-color: rgb(72, 80, 89);
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-top-style: solid;
  border-top-width: 1px;
  box-sizing: border-box;
}
.buy .accounts {
  font-family: var(--main-sans-serif);
  font-style: normal;
  font-size: 14px;
  color: rgb(25, 109, 176);
  margin-bottom: 5px;
  display: block;
  clear: left;
  text-align: left;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
  
.awards {
  font-family: var(--main-serif);
  font-size: 18px;
  margin-top: 10px;
  margin-bottom: 30px;
  max-width: 90%;
}
.book_cover {
  box-shadow: 2px 2px 5px #aaaaaa;
}
.description {
  font-family: var(--main-serif);
  font-size: 26px;
  width: 600px;
  margin: auto;
  margin-top: 20px;
  clear: left;
}
.description p {
  font-family: var(--main-serif);
  font-size: 18px;
}
.bottom_blurbs {
  max-width: 600px;
}
.bottom_blurbs .blurb_box {
  border-top: 1px solid var(--tap-lighter-gray);
  padding-top: 20px;
}

/* EVENTS */
.event_title {
  margin: 50px;
  text-transform: uppercase;
  font-family: var(--main-sans-serif);
}
.event_box {
  margin-bottom: 80px;
  font-size: 20px;
}
.event_box, .event_box a {
  color: #333333;
}
.event_location {
  font-size: 28px;
  font-weight: bold;
}
.event_location, .event_location a {
  color: black;
}

/* Desktop style for bio page */
@media only screen and (min-width: 768px) {
  #bio_card {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    max-width: 978px;
  }

  #bio_card img {
    width: 340px;
    margin-bottom: 0;
  }

  #bio_card #bio {
    width: calc(100% - 340px);
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* Responsive style for bio page */
@media (max-width: 768px) {
  #bio {
    width: 100%;
    margin: 0px;
    margin-top: 10px;
  }

  #bio_body {
    width: 100%;
    padding: 0px;
  }

  #bio_card, #book_card {
    width: 100%;
    padding: 0px;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  #bio_card #picture, #bio_card #bio {
    width: 90%;
    height: auto;
    margin: 0px;
    margin-top: 10px;
    margin-bottom: 10px;
  }
  #bio_card #picture {
    width: 340px;
  }

  #photo-caption {
    display: block;
    text-align: center;
  }

  h3 {
    font-size: 1.2em;
    text-align: center;
    line-height: 2em;
  }

  h3 a {
    display: block;
    white-space: nowrap;
  }

  .menu_separator {
    display: none;
  }

  .description {
    width: 90%;
  }

  .bottom_blurbs {
    max-width: 90%;
  }
}

/* Responsive style for book covers */
@media (max-width: 540px) {
  #cover_and_blurbs {
    flex-direction: column;
    align-items: center;
  }
  #cover img {
    width: 80%;
  }
}

/* Email Signup Form */
#mc_embed_signup {
  display: flex; /* Use flexbox for layout */
  justify-content: space-between; /* Align items horizontally */
  align-items: center; /* Align items vertically */
  gap: 10px; /* Space between input and button */
  margin-bottom: 20px; /* Space below the signup section */
}

#mc_embed_signup_scroll {
  display: flex; /* Ensures elements within this div are flex items */
  width: 100%; /* Ensures the container takes full width */
  flex-wrap: wrap;
}

.mc-field-group {
  flex-grow: 1; /* Allows the input to grow and fill space */
  margin-right: 10px; /* Adds margin to the right of the input */
}

#mce-EMAIL {
  padding: 10px;
  font-family: var(--main-serif);
  font-size: 1rem; /* Adjust to match your design */
  border: 2px solid #cccccc; /* Adds a border that stands out */
  border-radius: 4px; /* Rounded corners */
  flex-grow: 1; /* Allows the input to grow */
}

#mc-embedded-subscribe {
  background-color: #4a4a4a; /* A lighter shade of charcoal */
  color: #ffffff; /* White color for text */
  border: none;
  padding: 10px 20px;
  text-align: center;
  border-radius: 4px; /* Match with input's border-radius */
  cursor: pointer; /* Indicates the button is clickable */
  transition: background-color 0.3s ease; /* Smooth background color transition on hover */
  font-weight: bold; /* Makes the button text stand out */
  font-family: var(--main-sans-serif-semibold);
  text-transform: uppercase;
}

#mc-embedded-subscribe:hover {
  background-color: #626262; /* Lighter shade for hover effect */
  box-shadow: 0 2px 5px rgba(0,0,0,0.2); /* Adds a subtle shadow on hover */
}

@media (max-width: 768px) {
  #mc_embed_signup {
      flex-direction: column; /* Stacks elements vertically on smaller screens */
      gap: 5px; /* Reduce space between elements for smaller screens */
  }
  .mc-field-group {
      margin-right: 0; /* Remove the margin-right on smaller screens */
  }
  #mce-EMAIL, #mc-embedded-subscribe {
      width: 100%; /* Full width on smaller screens */
      margin-top: 5px;
      margin-bottom: 5px;
  }
}
