@font-face {
  font-family: 'RangeMono';
  font-weight: normal;
  src: url('/static/fonts/RangeMonoRound-Regular.woff2') format('woff2'),
       url('/static/fonts/RangeMonoRound-Regular.woff') format('woff');
}

@font-face {
  font-family: 'TTHoves';
  font-weight: bold;
  src: url('/static/fonts/TTHoves.woff2') format('woff2'),
       url('/static/fonts/TTHoves.woff') format('woff');
}

:root
{
  --red: #FF003E;
  --dark: #100F14;
}

@supports (color: color(display-p3 1 1 1 / 1)) {
  :root
  {
    --red: color(display-p3 1 0 0.2431 / 1);
    --dark: color(display-p3 0.0627 0.0588 0.0784 / 1);
  }
}

html {
  background-color: var(--dark);
  box-sizing: border-box;
  font-size: 18px;
}

@media screen and (max-width: 1112px) {
  html {
    font-size: 14px;
  }
}

*, *:before, *:after {
  box-sizing: inherit;
}

ol, ul {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
}

body {
  color: var(--dark);
  font-family: 'RangeMono';
  margin: 0;
}

header {
  background-color: var(--dark);
  color: white;
  position: relative;
  z-index: 1000;
}

@media screen and (max-width: 660px) {
  header a img {
    width: 166px;
  }
}

header p {
  margin-bottom: 0;
  margin-top: 2em;
}

header section {
  padding: 6vw;
}

main {
  background-color: #D6D6D6;
}

article {
  margin-top: 2.8em;
}

section {
  overflow-x: hidden;
}

section > article:first-child {
  margin-top: 6vw;
}

p {
  line-height: 1.6;
  max-width: 800px;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'TTHoves';
  font-weight: bold;
  line-height: 0.9;
  margin: 0;
  max-width: 800px;
}

h1 {
  font-size: 3em;
}

h2 {
  font-size: 2.5em;
}

h3 {
  font-size: 2em;
}


@media screen and (max-width: 660px) {
  h2 {
    font-size: 2em;
  }

  h3 {
    font-size: 1.6em;
  }
}


.apps article {
  display: grid;
  grid-template-columns: 6vw 108px auto auto 6vw;
  position: relative;
  z-index: 100;
}

@media screen and (max-width: 660px) {
  .apps article {
    grid-template-columns: 6vw 60px auto auto 6vw;
  }
}

.apps article > * {
  grid-column-start: 2;
}

.apps article img.app-icon {
  grid-row-start: 1;
}

.apps article h2 {
  align-self: center;
  grid-column-start: 3;
  grid-row-start: 1;
  margin-left: 10px;
}

.apps article div {
  grid-column-end: 4;
  grid-row-start: 2;
  max-width: 400px;
}

img.featured-image {
  max-width: 300%;
  margin-left: calc(6vw - 40px);
  margin-top: -400px;
  position: relative;
  width: 1366px;
  z-index: 0;
}

@media screen and (max-width: 800px) {
  img.featured-image {
    margin-top: -360px;
    margin-left: -70px;
  }
  // Looks great on iPad; need to figure out mobile style
}

