/** In application.css
 *
 */
@import url("https://rsms.me/inter/inter.css");
html {
  font-family: 'Inter', sans-serif; }

@supports (font-variation-settings: normal) {
  html {
    font-family: 'Inter var', sans-serif; } }

body {
  font-size: 100%;
  line-height: 1.6em;
  margin: 0; }

#container {
  max-width: 600px;
  margin: 0 60px 30px 60px; }

#container:after {
  content: "";
  display: table;
  clear: both; }

a {
  color: #009ee8;
  text-decoration: none; }

a:hover {
  color: #666666;
  border-bottom: 1px dotted #666666;
  padding: 2px 0 0 0; }

a:visited {
  color: #009ee8; }

a:active {
  color: #009ee8; }

image.a:hover {
  border: none; }

h1, h2, h3, h4, h5, h6 {
  color: black;
  text-decoration: none; }

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  text-decoration: none;
  color: black; }

h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover {
  color: #009ee8; }

h1 a:visited, h2 a:visited, h3 a:visited, h4 a:visited, h5 a:visited, h6 a:visited {
  color: black; }

h1 {
  font-weight: normal;
  text-transform: none;
  line-height: 1.2em;
  font-size: 36px;
  margin: 0 0 10px 0; }

h3 {
  color: #999999;
  font-size: 12px;
  font-weight: normal;
  margin: 0px 0 5px 0; }

h4 {
  font-size: 14px;
  color: #999999;
  font-weight: normal;
  margin: 0; }

h5 {
  font-size: 15px;
  font-weight: normal;
  text-transform: none;
  margin: 10px 0; }

img {
  border: none; }

img a:hover {
  border: none; }

button, input, a.button {
  text-decoration: none;
  background: black;
  border: 1px solid #cccccc;
  padding: 3px 5px;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px; }

button, input.button, a.button {
  padding: 4px 5px;
  background: #009ee8;
  color: white;
  border: none;
  cursor: pointer; }

button:hover, input.button:hover, a.button:hover {
  background: #777777;
  color: white; }

button:visited, input.button:visited, a.button:visited {
  color: white; }

input {
  margin-right: 5px; }

label {
  padding: 3px 0;
  width: 100px;
  display: inline-block; }

textarea {
  width: 90%;
  height: 100px;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px; }

input, textarea {
  border: 1px solid #cccccc;
  font-size: 100%;
  background: white;
  color: black; }

.checkbox {
  width: 100%; }

.checkbox input.checkbox {
  vertical-align: middle;
  position: relative;
  bottom: 1px; }

.checkbox label {
  margin: 0;
  padding: 0px 0 0 0;
  font-weight: normal;
  width: auto; }

#header, #main, #footer {
  width: 100%;
  display: inline;
  float: left;
  padding: 15px 0 5px; }

#logo {
  background-image: url("/images/logo.png");
  background-repeat: no-repeat;
  background-size: auto 40px;
  width: 200px;
  float: left;
  height: 40px;
  margin: 20px 10px 20px 0;
  padding: 0; }

#logo a:hover {
  border: none; }

#logo img {
  height: 40px; }

@media only screen and (max-width: 520px) {
  #logo {
    width: 50px;
    background-image: url("/images/logo-small.png"); } }

#navigation {
  float: right;
  margin: 26px 0px 0 0; }

#navigation ul {
  border: 0px;
  margin: 0;
  outline: 0;
  padding: 0; }

#navigation ul li {
  display: inline;
  float: left;
  list-style-type: none;
  margin: 0;
  padding: 15px 0 0 20px;
  white-space: nowrap;
  text-decoration: none;
  font-weight: normal;
  font-size: 14px;
  text-transform: uppercase;
  color: #009ee8; }

#navigation ul li a:hover {
  color: black;
  border: none; }

#footer {
  border-top: 1px dotted #999999;
  margin-top: 10px;
  font-size: 0.9em;
  text-transform: uppercase; }

#footer ul {
  border: 0;
  outline: 0;
  overflow: hidden;
  list-style-type: none;
  list-style-image: none;
  padding: 0;
  margin: 0 0 0 -9px; }

#footer ul li {
  display: inline;
  float: left;
  list-style-type: none;
  margin: 0;
  padding: 0 10px;
  white-space: nowrap; }

#footer ul a {
  text-decoration: none;
  color: black; }

#footer ul a:hover {
  color: #009ee8; }

#footer ul li.socialmedia a {
  color: #999999;
  font-style: normal; }

#footer ul li.socialmedia a:hover {
  color: #009ee8; }

/* blog */
#blog {
  padding: 0; }

#blog #metadata {
  color: #999999;
  font-style: italic;
  margin: 0px 0 10px 0; }

#blog #post {
  margin: 0 0 30px 0; }

#blog #post p {
  display: block;
  margin: 0 0 10px 0;
  padding: 0; }

#blog #post p.question {
  font-weight: bold; }

#blog #post ul, #blog #post ol {
  margin: 0 0 0 -20px;
  padding: 0 0 0 40px; }

#blog #post img {
  width: 100%;
  height: auto; }

.hero-unit img {
  width: 100%;
  height: auto; }

.full-width-list {
  margin: 0;
  padding: 0; }

.full-width-list .list-item {
  margin: 100%;
  margin: 0 0 30px 0;
  padding: 0 0px 15px 0;
  content: "";
  display: table;
  clear: both; }

.full-width-list .big-list-item img {
  margin: 0 0 15px 0; }

.full-width-list .big-list-item a:hover {
  border: none; }

.full-width-list .medium-list-item img {
  float: left;
  border: 1px solid #aaaaaa;
  margin: 0 15px 0 0;
  width: 120px; }

.full-width-list .small-list-item img {
  float: left;
  border: 1px solid #aaaaaa;
  margin: 0 15px 0 0;
  width: 60px; }

.image-grid {
  content: "";
  display: table;
  clear: both; }

.image-grid img {
  width: 47%;
  margin: 0 15px 15px 0;
  display: inline-block;
  float: left; }

.border-top {
  border-top: 1px dotted #999999;
  padding-top: 20px; }

#book .hero-unit,
#book #highlights,
#book #information,
#book #author,
#book #buy {
  margin-bottom: 30px; }

#buy {
  width: 100%; }

#buy div {
  padding: 0 0 10px 0;
  margin: 0 0 10px 0; }

#header #buy div div {
  border: none; }

#buy .button {
  text-transform: uppercase;
  padding: 7px 7px;
  background: #777777;
  margin: 0 20px 0px 0; }

#header #buy .button:hover {
  background: #ff6633; }

#buy .price {
  background: #eeeeee;
  border-radius: 3px;
  margin: 0px;
  padding: 15px 15px 15px 60px; }

#buy .price p {
  margin: 20px 0 0; }

#buy .price span {
  font-size: 18px; }

#buy .price label {
  width: auto;
  margin: 0 10px 0 0; }

#buy .price .ibookstore {
  border-top: 2px solid white;
  margin: 25px 0 10px -45px;
  padding: 10px 0 0 45px; }

#buy .retail {
  margin: 0px 0 0px 0; }

#main table {
  width: 100%;
  border-top: 1px solid black;
  border-collapse: collapse; }

#main table thead tr {
  border-bottom: 1px solid black;
  padding: 5px; }

#main table thead th {
  border: none;
  padding: 5px; }

#main table td {
  border-bottom: 0.5px solid black;
  padding: 5px; }

#main table th {
  text-align: left;
  border: 0.5px solid black;
  padding: 5px; }
