#initialpage-bg-color {
  background: #6e39a0;
  background: linear-gradient(#6e39a0, #549cbe);
  background: -webkit-linear-gradient(#6e39a0, #549cbe);
  background: -o-linear-gradient(#6e39a0, #549cbe);
  background: -moz-linear-gradient(#6e39a0, #549cbe);
  width: 100%; }
  #initialpage-bg-color #initialpage {
    display: table;
    height: 110vh;
    min-height: 300px;
    width: 100%;
    background-image: url("/images/bg.png");
    background-repeat: no-repeat;
    background-size: cover; }
    #initialpage-bg-color #initialpage #initialpage-content {
      color: white;
      display: table-cell;
      vertical-align: middle;
      -webkit-animation: fadein 2s;
      /* Safari, Chrome and Opera > 12.1 */
      -moz-animation: fadein 2s;
      /* Firefox < 16 */
      -ms-animation: fadein 2s;
      /* Internet Explorer */
      -o-animation: fadein 2s;
      /* Opera < 12.1 */
      animation: fadein 2s; }
      #initialpage-bg-color #initialpage #initialpage-content #logo #logo-img {
        width: 20%;
        position: relative;
        z-index: 1; }
      #initialpage-bg-color #initialpage #initialpage-content #logo #star-swirl {
        position: absolute;
        width: 30%;
        left: 35%; }
      #initialpage-bg-color #initialpage #initialpage-content #date {
        font-size: 4vw; }
      #initialpage-bg-color #initialpage #initialpage-content .row {
        margin: 35px 0 60px 0; }

@keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

/* Firefox < 16 */
@-moz-keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

/* Internet Explorer */
@-ms-keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

/* Opera < 12.1 */
@-o-keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

.draw-border {
  box-shadow: inset 0 0 0 4px #ffcf35;
  color: #ffcf35;
  transition: color 0.25s 0.08333s;
  position: relative; }
  .draw-border::before, .draw-border::after {
    border: 0 solid transparent;
    box-sizing: border-box;
    content: '';
    pointer-events: none;
    position: absolute;
    width: 0;
    height: 0;
    bottom: 0;
    right: 0; }
  .draw-border::before {
    border-bottom-width: 4px;
    border-left-width: 4px; }
  .draw-border::after {
    border-top-width: 4px;
    border-right-width: 4px; }
  .draw-border:hover {
    color: #673695; }
    .draw-border:hover::before, .draw-border:hover::after {
      border-color: #673695;
      transition: border-color 0s, width 0.25s, height 0.25s;
      width: 100%;
      height: 100%; }
    .draw-border:hover::before {
      transition-delay: 0s, 0s, 0.25s; }
    .draw-border:hover::after {
      transition-delay: 0s, 0.25s, 0s; }

.btn {
  font-family: 'Bungee', cursive;
  background: none;
  color: white;
  border: none;
  cursor: pointer;
  line-height: 1.5;
  font-size: 1.5rem;
  font-weight: 700;
  padding: 0.5em 1em;
  letter-spacing: 0.05rem;
  margin: 0 15px; }
  .btn:focus {
    outline: 2px dotted #55d7dc; }

#sponsor-container {
  padding: 0 10%; }
  #sponsor-container #wreaths {
    margin-top: -50px; }
    #sponsor-container #wreaths img {
      width: 20%;
      margin: 0 5%; }
  #sponsor-container .sponsor {
    display: inline-block; }
    #sponsor-container .sponsor img {
      width: 100%;
      vertical-align: middle; }
    #sponsor-container .sponsor #yc-img {
      width: 50%; }
    #sponsor-container .sponsor #jetbrains-img {
      width: 50%; }
    #sponsor-container .sponsor:hover {
      opacity: 0.6;
      cursor: pointer; }
  #sponsor-container .tier-container {
    text-align: center;
    padding: 10px 0; }
  #sponsor-container #plat-sponsor-container .sponsor {
    width: 35%;
    margin: 1.5% 7.5%; }
  #sponsor-container #gold-sponsor-container .sponsor {
    width: 30%;
    margin: 1.5%; }
  #sponsor-container #silver-sponsor-container .sponsor {
    width: 20%;
    margin: 2%; }
  #sponsor-container #bronze-sponsor-container .sponsor {
    width: 15%;
    margin: 1.5%; }
  #sponsor-container #sponsor-contact-txt {
    margin: 15px 0 40px 0; }

#faq {
  padding: 200px 25px; }

.faq-item {
  vertical-align: top;
  display: inline-block;
  width: 38%;
  padding: 2%;
  text-align: left;
  padding: 2em 2%; }
  .faq-item h1, .faq-item p {
    margin: 0; }
  .faq-item h1 {
    font-size: 1.5em;
    margin-bottom: 0.3em; }
  .faq-item p {
    font-size: 0.9em; }

#intro {
  text-align: left; }
  #intro h1 {
    font-size: 3.5vw; }
  #intro #values {
    margin-bottom: 30px; }
    #intro #values .value {
      display: inline-block;
      width: 20%;
      margin-right: 15%;
      text-align: center; }
      #intro #values .value img {
        width: 100%; }
      #intro #values .value h4 {
        color: black;
        font-family: bungee, 'cursive';
        text-transform: uppercase;
        margin: 5px 0; }
      #intro #values .value.no-margin {
        margin: 0; }
  #intro #summary p {
    line-height: 200%;
    font-weight: 500; }
  #intro #memory {
    text-align: center; }
    #intro #memory img {
      width: 100%; }
  #intro #left, #intro #right {
    vertical-align: top;
    display: inline-block; }
  #intro #left {
    width: 50%;
    margin: 5%; }
  #intro #right {
    width: 40%; }

#social {
  display: block;
  padding: 10px; }
  #social img {
    width: 25px;
    margin: 0 10px; }
    #social img:hover {
      opacity: 0.7;
      cursor: pointer; }

html, body {
  margin: 0;
  color: white;
  text-align: center;
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  min-width: 250px; }

h1 {
  font-family: 'Ubuntu Condensed', sans-serif;
  font-weight: bold;
  font-size: 2vw; }

h1.header {
  margin: 0;
  font-size: 5vw; }

a {
  display: inline-block; }

#content-container {
  background: #549cbe;
  background: linear-gradient(#549cbe, #4c3d78);
  background: -webkit-linear-gradient(#549cbe, #4c3d78);
  background: -o-linear-gradient(#549cbe, #4c3d78);
  background: -moz-linear-gradient(#549cbe, #4c3d78);
  padding-top: 10%; }
  #content-container a {
    color: white;
    text-decoration: underline; }
    #content-container a:hover {
      opacity: 0.5; }

@media only screen and (max-width: 860px), (orientation: portrait) {
  #sponsor-container {
    padding: 0 5%; }
    #sponsor-container #wreaths {
      margin-top: -30px; }
      #sponsor-container #wreaths img {
        width: 25%; }
  #intro #left {
    width: 90%;
    margin: 0 5%; }
  #intro #right {
    width: 100%; }
    #intro #right #memory img {
      width: 60%;
      float: right; }
  #intro h1 {
    font-size: 2.5em; }
  #initialpage-bg-color #initialpage #initialpage-content #logo #logo-img {
    width: 35%; }
  #initialpage-bg-color #initialpage #initialpage-content #logo #star-swirl {
    width: 40%;
    left: 30%; }
  button {
    font-size: 16px;
    margin-bottom: 1px; }
  h1 {
    font-size: 1.6em; } }

@media all and (max-width: 660px), (orientation: portrait) {
  #intro h4 {
    font-size: 0.7em; }
  h1.header {
    font-size: 3.5em; }
  #faq {
    padding: 25px; }
    #faq .faq-item {
      width: 100%;
      padding: 2em 0;
      display: block; }
      #faq .faq-item h1 {
        font-size: 1.2em; }
      #faq .faq-item p {
        font-size: 0.9em; }
  #sponsor-container {
    padding: 0; }
    #sponsor-container #wreaths {
      margin-top: 0; }
      #sponsor-container #wreaths img {
        width: 30%; }
    #sponsor-container p {
      font-size: 1em; }
    #sponsor-container #plat-sponsor-container .sponsor {
      display: block;
      width: 60%;
      margin: 0 auto; }
    #sponsor-container #gold-sponsor-container .sponsor {
      display: block;
      width: 50%;
      padding: 0 20%;
      margin: 0 auto; }
    #sponsor-container #silver-sponsor-container .sponsor {
      width: 40%;
      margin: 2%; }
    #sponsor-container #bronze-sponsor-container .sponsor {
      width: 25%;
      margin: 1.5%; }
  #initialpage-bg-color #initialpage #initialpage-content #logo #logo-img {
    width: 40%; }
  #initialpage-bg-color #initialpage #initialpage-content #logo #star-swirl {
    width: 50%;
    left: 25%; }
  #initialpage-bg-color #initialpage #initialpage-content #date {
    font-size: 2em; } }

@media all and (max-width: 530px) {
  #initialpage-bg-color #initialpage #initialpage-content #logo #logo-img {
    width: 50%; }
  #initialpage-bg-color #initialpage #initialpage-content #logo #star-swirl {
    width: 60%;
    left: 20%; }
  #initialpage-bg-color #initialpage #initialpage-content #date {
    font-size: 2em; }
  #intro h1 {
    font-size: 2em; }
  #intro h4 {
    font-size: 0.6em; }
  .btn {
    font-size: 1em;
    padding: 1em 1.75em; }
  #intro #values .value {
    width: 20%;
    margin-right: 15%; } }

@media all and (max-width: 430px) {
  #initialpage-bg-color #initialpage #initialpage-content #logo #logo-img {
    width: 50%; }
  #initialpage-bg-color #initialpage #initialpage-content #date {
    font-size: 1.7em; }
  .btn {
    font-size: 1em;
    padding: 1em 1.75em; } }

@media all and (max-width: 350px) {
  #intro h4 {
    font-size: 0.5em; }
  #initialpage-bg-color #initialpage #initialpage-content #date {
    font-size: 1.5em; }
  .btn {
    font-size: 1em;
    padding: 0.75em 1.5em; } }

@media screen and (orientation: portrait) {
  #initialpage-bg-color #initialpage {
    height: auto;
    padding: 5% 0; } }
