/**
 * Typography & Text styles
 */

/* html is set to 62.5% so that all the REM measurements are based on 10px sizing. So basically 1.5rem = 15px */
html {
  font-size: 62.5%;
}
body {
  font-size: 1.5em; /* currently ems cause chrome bug misinterpreting rems on body element */
  line-height: 1.6;
  font-weight: 400;
  font-family: 'Roboto', 'HelveticaNeue', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  color: #ffffff;
}

/**
 * Links
 */
a {
  font-weight: normal;
  text-decoration: none;
  color: #ef6d3d;
}
a:focus {
  outline: thin dotted;
}

small {
  font-size: 75%;
}

@font-face {
  font-family: 'azkols_kerningregular';
  src:
    url('azkolskerning7-webfont.woff2') format('woff2'),
    url('azkolskerning7-webfont.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

/**
 * Headings
 */
h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1;
  text-rendering: optimizeLegibility; /*  voodoo to enable ligatures and kerning | https://developer.mozilla.org/en-US/docs/CSS/text-rendering */
  margin-top: 0;
  margin-bottom: 2rem;
  font-weight: 300;
}
h1 {
  font-size: 4rem;
  line-height: 1.25;
  font-family: 'azkols_kerningregular';
}
h2 {
  font-size: 3rem;
  line-height: 1.3;
}
h3 {
  font-size: 2.4rem;
  line-height: 1.35;
  letter-spacing: -0.08rem;
}
h4 {
  font-size: 1.8rem;
  line-height: 1.5;
  letter-spacing: -0.05rem;
}
h5 {
  font-size: 1.5rem;
  line-height: 1.6;
  letter-spacing: 0;
}
h6 {
  font-size: 1.4rem;
  line-height: 1.6;
  letter-spacing: 0;
}

/**
 * Paragraphs
 */
p {
  margin: 0 auto 1.5em auto; /* bottom margin for paragraphs */
}
p + p {
}

/**
 * Quotes & Blockquotes
 */
q {
  quotes: '\00201C' '\00201D';
}
q:before {
  content: open-quote;
}
q:after {
  content: close-quote;
}

blockquote {
  /*background-color: #F8F8F8;*/
  border-left: 2px solid #afc0d2;
  margin: 1.6em 10%;
  padding: 0.75em 1em;
  font-size: 1.8rem;
}
blockquote p:last-child {
  margin-bottom: 0;
}

/**
 * Layout styles
 */

/* Full size background image */
html,
#container,
.inner {
  background-color: transparent;
}
html {
  background: url(background.jpg) center center no-repeat fixed;
  background-size: cover;
}
.tower-controller-html {
  background: url(background.jpeg) center center no-repeat fixed;
  background-size: cover;
}
.example-game-html {
  background: url(rtdtlogo.png) center center no-repeat fixed;
  background-size: cover;
}
body {
  max-width: 640px;
  margin: 25px auto;
  border: 2px gold solid;
}
header,
#content,
footer {
  background: rgba(0, 0, 0, 0.6);
  color: #ffffff;
}

/* Menu Links */
ul.main-menu {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
  list-style: none;
}
ul.main-menu li a {
  margin-right: 20px;
  font-size: 2rem;
  border-bottom: solid transparent 3px;
  color: #cfd2da;
}
ul.main-menu li a:hover {
  color: #ffffff;
}
ul.main-menu li a.active {
  color: #ffffff;
  border-bottom-color: #ef6d3d;
}
area {
  cursor: pointer;
  display: block;
}

/* Utility classes */
.hide {
  display: none;
}
.show {
  display: block;
}

button {
  border-radius: 5px;
  position: relative;
  background: #444;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  font-size: 1.05rem;
  padding: 0.75rem 2rem;
  max-height: 33px;
}
select {
  border-radius: 5px;
  position: relative;
  background: rgba(68, 68, 68, 0.6);
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  font-size: 1.05rem;
  padding: 0.75rem 2rem;
}
.fieldset-container {
  width: 450px;
  margin-left: 40px;
  background-color: rgba(0, 0, 0, 0.6);
}
.skull-count {
  border: 1px solid white;
  border-radius: 4px;
  padding: 5px 8px;
  vertical-align: center;
}
