/** FONTS **/

@font-face {
  font-family: "Work-Sans";
  src: url("../fonts/works-sans/WorkSans-Regular.woff2") format("woff2");
}

@font-face {
  font-family: "Work-Sans";
  src: url("../fonts/works-sans/WorkSans-Bold.woff2") format("woff2");
  font-weight: bold;
}

@font-face {
  font-family: "Work-Sans Bold";
  src: url("../fonts/works-sans/WorkSans-Bold.woff2") format("woff2");
}

@font-face {
  font-family: "Work-Sans Variation";
  src: url("../fonts/works-sans/WorkSans[wght].ttf") format("woff2-variations");
}


@font-face {
  font-family: "Cooper Bold";
  src: url("../fonts/cooper/Cooper-Bold.woff2") format("woff2");
}

/** VARIABLES **/

html {
  --progress-color-1: rgb(255,229,204);
  --progress-color-2: rgb(144,33,66);
  --progress-color-3: rgb(240,153,72);
  --progress-color-4: rgb(44,44,44);

  --white: rgb(255,255,255);
  --black: rgb(0,0,0);

  --padding1: 1rem;
  --padding2: 2rem;

  --button-bg-color: var(--progress-color-4);
  --button-bg-color-hover: var(--black);
  --button-text-color: var(--white);
  --button-style2-bg-color: var(--progress-color-3);
  --button-style2-bg-color-hover: var(--progress-color-1);
  --button-style2-text-color: var(--black);
  --link-color: var(--progress-color-2);
  --link-color-hover: rgb(200, 33, 66);

  --header-bg: var(--progress-color-4);
  --header-text-color: var(--white);
  --header-link-hover-color: var(--progress-color-1);

  --xs-device-width: 375px;
  --small-device-width: 700px;
}

/** GENERAL STYLES **/

html {
  font-size: 16px;
}

body {
  margin: 0;
  padding: 0 auto;
  font-family: 'Work-Sans', Arial, Helvetica, sans-serif;
  font-size: 1.1rem;
}

header {
  margin: 0 auto;
  padding: 0.5rem 1rem;
}

.padding1 {
  padding: var(--padding1);
}

.padding2 {
  padding: var(--padding2);
}

.bg1 {
  background: var(--progress-color-1);
  color: var(--progress-color-4);
}

.bg2 {
  background: var(--progress-color-2);
  color: var(--white);
}

.bg3 {
  background: var(--progress-color-3);
  color: var(--progress-color-4);
}

.bg4 {
  background: var(--progress-color-4);
  color: var(--white);
}

.callout {
  margin: 0;
  font-size: 1.25rem;
  font-weight: bold;

  @media screen and (min-width: 375px) {
    font-size: 2rem;
  }

  @media screen and (min-width: 700px) {
    margin: 1rem;
    font-size: 2rem;
  }
}

.callout2 {
  font-size: 1.5rem;
}

.color1 {
  color: var(--progress-color-1);
}

.color2 {
  color: var(--progress-color-2);
}

.color3 {
  color: var(--progress-color-3);
}

.sr-only {
  visibility: hidden;
  height: 0;
  margin: 0 !important;
  padding: 0 !important;
}

button, .button {
  display: inline-block;
  margin: 1rem;
  padding: 1rem;
  border: 1px solid var(--button-bg-color);
  border-radius: 0.25rem;
  background: var(--button-bg-color);
  color: var(--button-text-color);
  font-weight: bold;
  font-size: 1.25rem;
  line-height: 1.75rem;

  &:hover {
    background: var(--button-bg-color-hover);
  }
}

.button {
  color: var(--button-text-color);
  text-decoration: none;

  &:hover, &:visited, &:active {
    color: var(--button-text-color);
  }
}

button.button-2, .button.button-2 {
  border-color: var(--button-style2-text-color);
  background-color: var(--button-style2-bg-color);
  color: var(--button-style2-text-color);

  &:hover {
    background-color: var(--button-style2-bg-color-hover);
  }

  &:hover, &:visited, &:active {
    color: var(--button-style2-text-color);
  }
}

a {
  color: var(--link-color);
    &:visited {
    color: var(--link-color);
  }

  &:hover, &:active {
    color: var(--link-color-hover);
  }
}

img {
  max-width: 100%;
}

header {
  nav {
    display: inline-block;
    vertical-align: top;

    ul {
      list-style: none;
      margin: 0.25rem;
      padding-left: 0;

      @media screen and (min-width: 700px) {
        margin: 0 1rem;
      }

      li {
        display: inline-block;
        margin-right: 1rem;
      }
    }

    a, a:visited, a:hover {
      color: var(--header-text-color);
      text-decoration: none;
    }

    a:hover {
      color: var(--header-link-hover-color);
    }
  }
}

h1, h2, h3, h4, h5, h6 {
 font-family: 'Cooper Bold', serif;
}

.site-title {
  font-variant: small-caps;
  font-weight: bold;
  font-size: 1.25rem;
}

.align-center {
  text-align: center;
}

/** LANDING PAGE **/

.landing-page {
  max-width: 1250px;
  min-height: calc(100vh);
  margin: 0 auto;
  padding: 0;
  padding-bottom: 2rem;

  .welcome {
    text-align: center;

    img {
      max-height: 12rem;
      margin-bottom: 2rem;
    }
  }

  .acknowledgments {
    img {
      max-height: 8rem;
    }

    .tng-logo {
      background: #1daded;
      padding: 0.5rem;
    }
  }

  .donate {
    text-align: center;
  }
}

.option-a,
.option-b {
  .landing-page {
    max-width: 100%;
    min-height: calc(100vh);
  }

  .containerLimitWidth {
    max-width: 60rem;
  }

  header {
    img {
      max-height: 2.5rem;
    }
  }
}

.option-b {
  .welcome {
    padding-top: 4rem;
  }
}

.option-d {
  .launching {
    text-align: center;

    img {
      margin-top: 3rem;
      max-height: 10rem;
    }
  }

  .welcome {
    display: flex;
    text-align: left;
    max-width: 60rem;
    margin: 0 auto;

    img {
      margin: 1rem;
      max-width: 80%;

      @media screen and (min-width: 350px) {
        max-height: 15rem;
        max-width: 100%;
      }
    }

    @media screen and (min-width: 350px) {
      img, h1, .callout {
        margin: 1rem;
      }
    }

    h1 {
      margin-top: 0;
    }
  }
}

.option-d2 {
  .welcome {
    display: block;
    text-align: center;
    padding: 1rem 0.5rem;

    @media screen and (min-width: 375px) {
      padding: 0;
      padding-top: 2rem;
      margin: 0 auto;
    }

    @media screen and (min-width: 700px) {
      padding-top: 4rem;
      margin: 0 auto;
    }

    img {
      max-height: 8rem;
      margin-top: 2rem;
    }
  }

  .launching {
    h2 {
      margin: 1rem;
      font-size: 1.5rem;

      @media screen and (min-width: 375px) {
        font-size: 2rem;
        margin-top: 2rem;
      }
    }
  }

  .featuredImage {
    margin-top: 2rem;

    &.smallFeaturedImage {
      max-height: unset;
      max-width: 30rem;
      margin-top: 1rem;
    }
  }

  p {
    margin: 1rem;
  }
}

.bg2 {
  a {
    color: var(--progress-color-1);

    &:visited {
      color: var(--progress-color-1);
    }

    &:hover, &:active {
      color: var(--progress-color-3);
    }
  }

  nav {
    a {
      color: var(--header-text-color);

      &:visited {
        color: var(--header-text-color);
      }

      &:hover, &:active {
        color: var(--progress-color-3);
      }
    }
  }
}

.main-nav {
  .site-title {
    display: block;
    font-family: 'Cooper Bold', serif;
    font-size: 1.1rem;
    margin: 0;
    padding: 0;
    margin-bottom: .5rem;
  }

  @media screen and (min-width: 700px) {
    .site-title {
      font-size: 1.25rem;
      padding: 0.25rem 0 0.5rem;
    }
  }

  @media screen and (min-width: 700px) {
    .site-title {
      display: inline-block;
      margin-right: 2.25rem;
      padding: 0;
    }
  }
}
