@import url("https://fonts.googleapis.com/css?family=Crimson+Text");
@import url("https://fonts.googleapis.com/css?family=Open+Sans");
@import url("https://fonts.googleapis.com/css?family=Londrina+Solid");
* { box-sizing: border-box; margin: 0; outline: 0; padding: 0; }

body { background-color: #081e2f; color: #fff; font-family: "Crimson Text", serif; font-size: 1.3em; }

a { color: #66bae5; font-weight: bold; }

a:hover { color: #aacfd3; }

h1 { text-shadow: 2px 2px #081e2f, -2px 2px #081e2f, 2px -2px #081e2f, -2px -2px #081e2f; color: #ddc35b; font-family: "Crimson Text", serif; font-size: 6em; line-height: .9em; }

h2 { font-family: "Crimson Text", serif; font-size: 2em; padding: 1em; }

h3 { font-size: 1.625em; font-weight: bold; padding: 1em 0 0; }

iframe { border: 0; }

main { margin: 0 auto; max-width: 80em; padding: 2em; }

main p { padding: 0 .5em 1em 1em; }

@media screen and (max-width: 670px) { main p { padding: 1em 1em 0; } }

ul, li { padding: 0; margin: 0; }

section, footer { font-family: "Open Sans", sans-serif; }

@media screen and (max-width: 670px) { body { font-size: 16px; }
  h1 { font-size: 3em; }
  h2 { font-size: 1.5em; margin: .75em 0 0; padding: .6em 0 0; }
  h3 { font-size: 1.125em; }
  iframe { width: 100%; }
  main { padding: 1em; } }

header div { position: relative; }

header h1 { font-size: 2em; line-height: 100%; }

header .logo { bottom: 0; left: 0; margin: 0 auto; padding-top: 1em; position: absolute; right: 0; text-align: center; }

header .decal { margin: 1em; max-width: 50%; width: 420px; }

header .banner { border-bottom: 2px solid #123e57; border-top: 2px solid #123e57; height: 60vh; min-height: 480px; object-fit: cover; width: 100%; }

header .site-description { text-shadow: 2px 2px #081e2f, -2px 2px #081e2f, 2px -2px #081e2f, -2px -2px #081e2f; color: #ddc35b; font-family: "Crimson Text", serif; font-size: 3.5em; font-weight: bold; }

@media screen and (max-width: 790px) { header .banner { min-height: 380px; } }

@media screen and (max-width: 670px) { header .banner { height: 30vh; min-height: 12em; }
  header .site-description { font-size: 1.5em; }
  header .decal { margin: 1em; max-width: 50%; width: 180px; } }

@media screen and (max-width: 380px) { header .banner { height: 24vh; min-height: 10em; }
  header .decal { margin: 1em; max-width: 40%; width: 180px; } }

.site-nav { background: linear-gradient(#081e2f, #000); font-size: 120%; font-weight: bold; position: relative; z-index: 1; }

.site-nav ul { padding-bottom: 2px; list-style-type: none; text-align: right; width: 100%; }

.site-nav ul li { display: inline-block; padding: 3px 1em 0; }

.site-nav a { text-decoration: none; }

.site-nav .arrow { display: inline-block; }

.site-nav li:hover .arrow { transform: rotate(90deg); transition: transform 0.4s; }

@media screen and (max-width: 870px) { .site-nav ul li { padding: 3px 16px 0; } }

@media screen and (min-width: 791px) { .site-nav ul { background: #000; }
  .site-nav ul ul { border: 2px solid #123e57; border-top-width: 0; margin-top: 2px; opacity: 0; left: 0; top: 100%; position: absolute; text-align: left; padding: 0.5em 0; width: 100%; }
  .site-nav ul ul li { display: block; }
  .site-nav ul li { position: relative; }
  .site-nav ul li:hover ul { display: block; opacity: 1; transition: opacity 0.4s; } }

@media screen and (max-width: 790px) { .site-nav .arrow { display: none; }
  .site-nav li li { padding-right: 0; display: none; }
  .site-nav a { border-bottom: 1px solid #123e57; }
  .site-nav ul { float: left; max-height: 0; overflow: hidden; padding: 0 0 0 .5em; position: static; transition: max-height .4s ease, padding .4s ease; }
  .site-nav ul li { display: block; font-size: 100%; padding-top: 0; text-align: left; width: 100%; }
  .site-nav ul li a { display: block; }
  .site-nav ul li:first-child a { border-top: 0; }
  .site-nav ul a { display: block; }
  .site-header.opened .site-nav ul { max-height: 100%; overflow-x: visible; overflow-y: visible; }
  .site-header.opened .site-nav > ul { padding: 0.5em; } }

footer { background-color: #18344a; border-top: 1px solid #1f4c6f; clear: both; color: #ccc; margin-top: 2em; min-height: 160px; padding: 1em 0; }

footer h3 { padding-top: 0; }

footer .copyright { clear: none; }

footer .copyright p { padding-top: 1em; font-size: 90%; }

footer .copyright img { padding-top: 1em; }

footer .wrapper { display: flex; margin: 0 auto; max-width: 80em; }

footer .wrapper div { flex: 1 1 0; padding: 0 2em; }

footer .footer-logo { float: left; padding-right: 1em; }

footer .footer-right { text-align: left; }

footer .social-links { clear: both; list-style-type: none; padding: 1em; font-size: 1.4em; }

footer .social-links li { display: inline-block; }

footer .social-links li a { font-weight: normal; }

footer .social-links li a i { border-radius: 100%; border: 1px solid #aaa; width: 2em; height: 2em; text-align: center; line-height: 2em; font-size: 1.25em; }

footer .social-links li img { max-width: 48px; }

@media screen and (max-width: 790px) { footer .wrapper { display: block; max-width: 100%; padding: 0 1em; }
  footer .wrapper div { display: block; padding: 0; }
  footer .footer-right { clear: both; text-align: left; } }

@media screen and (max-width: 470px) { footer .wrapper { padding: 0 16px 0 6px; }
  footer section p { font-size: 80%; } }

section { clear: both; }

section .container { padding: 0 3em; }

@media screen and (max-width: 670px) { section .container { padding: 0 1em; } }

.about ul { padding: 0 3em 2em 3em; }

.about iframe { padding-left: 1em; }

.about .container { display: flex; }

@media screen and (max-width: 1200px) { .about ul { padding: 0 0 1em 1em; }
  .about .container { display: block; }
  .about .widget { padding-top: 2em; } }

.screenshots ul { align-content: flex-start; display: flex; flex-flow: row wrap; margin: 0 0 0 3em; }

.screenshots ul li { flex: 1 1 content; list-style: none; margin: 0.2em .2em; }

.screenshot-item { max-width: 21em; }

.screenshot-item:hover { border: 3px solid #66bae5; cursor: zoom-in; }

@media screen and (max-width: 1400px) { .screenshots ul { justify-content: center; }
  .screenshot-item { max-width: 18em; } }

@media screen and (max-width: 1200px) { .screenshot-item { max-width: 22em; } }

@media screen and (max-width: 940px) { .screenshot-item { max-width: 18em; } }

@media screen and (max-width: 790px) { .screenshot-item { max-width: 15em; } }

@media screen and (max-width: 650px) { .screenshot-item { max-width: 100%; }
  .screenshots ul { margin-left: 0; } }

.team ul { align-content: flex-start; display: flex; flex-flow: row wrap; padding-top: 2em; }

.team ul li { align-items: flex-start; display: flex; flex: 1 1 24em; flex-direction: row; list-style: none; margin: 1em; max-width: 40em; }

.team-profile { flex: 1 1 auto; min-width: 15em; }

.team-profile p { padding: 0; }

.team-photo { border-radius: 50%; flex: 0 0 auto; margin-right: 1em; }

@media screen and (max-width: 970px) { .team ul { padding-left: 0; } }

@media screen and (max-width: 670px) { .team ul li { flex-direction: column; margin: 0; } }

.press-kit dd, .press-kit dt { display: inline; }

.press-kit dd { padding-left: .35em; }

.press-kit dt { font-weight: bold; }

.press-kit dt ::after { content: ':'; }

.press-kit iframe { width: 480px; }

@media screen and (max-width: 970px) { .press-kit iframe { height: 280px; max-width: 100%; } }

.press-kit ul { padding-left: 3em; }

@media screen and (max-width: 970px) { .press-kit ul { padding-left: 1em; } }

.press-kit .container { display: flex; }

@media screen and (max-width: 970px) { .press-kit .container { display: block; } }

.press-kit .widget { text-align: right; }

@media screen and (max-width: 970px) { .press-kit .widget { padding-top: 2em; text-align: left; } }

.press-kit .description, .press-kit .widget { width: 50%; }

@media screen and (max-width: 970px) { .press-kit .description, .press-kit .widget { width: 100%; } }

.store-links { list-style-type: none; padding-left: 1em; z-index: 2; }

.store-links a { padding-right: 1em; }

.store-links img { opacity: .8; }

.store-links img:hover { opacity: 1; }

.store-links li { display: inline-block; }

@media screen and (min-width: 500px) { .store-links { margin-top: -80px; position: relative; } }

.page { clear: both; }

.page ul { padding-left: 3em; }

.page .container { display: flex; padding: 0 3em; }

.page .container div { flex: 0 1 auto; }

.page .content { padding-left: 3em; }

.page p { padding: 0.5em 1em 1em 2.5em; }

.page p img { padding: 1em 1em 1em 0; }

.page .flex-right { flex-direction: row-reverse; }

@media screen and (max-width: 920px) { .page img { max-width: 100%; }
  .page .container { display: block; }
  .page .container .widget img { float: none; } }

@media screen and (max-width: 670px) { .page ul { padding-left: 1em; }
  .page .container { padding: 0 1em; } }

.callout-button { background: #e60; background-image: linear-gradient(#eca04b, #e60); border: 1px solid #f47d00; border-radius: 16px; box-shadow: inset 0 1px 0 0 #e60; color: #fff; cursor: pointer; display: inline-block; font-family: "Open Sans", sans-serif; font-size: 14px; font-weight: bold; line-height: 42px; margin-bottom: 8px; margin-right: 16px; padding: 2px 16px 3px; text-align: center; text-decoration: none; text-indent: 0; text-shadow: 1px 1px 0 #000; text-transform: uppercase; }

.callout-button img { padding-right: 4px; vertical-align: middle; }

.callout-button:hover { background: #eca04b; background-image: linear-gradient(#e60, #eca04b); color: #000; text-shadow: none; }

.callout-button:active { position: relative; top: 1px; }

@media screen and (max-width: 480px) { .callout-button { max-width: 100%; } }

.h-entry { max-width: 40em; }

.hamburger { background-color: #aacfd3; border: 1px solid #18344a; border-radius: .5em; box-shadow: 3px 3px 3px #18344a; margin: 3px; padding: 15px 12px 9px; position: absolute; right: 0; top: 0; z-index: 1; }

@media screen and (min-width: 791px) { .hamburger { display: none; } }

form.contact label { padding: 0 0 .5em; display: block; }

form.contact input, form.contact textarea { font-family: "Open Sans", sans-serif; font-size: 90%; box-sizing: border-box; border-style: solid; border-width: 1px; line-height: 1.15; padding: 0.5em; }

form.contact input[type="text"], form.contact input[type="email"], form.contact textarea { margin-top: 0.5em; width: 100%; }

form.contact textarea { height: 8em; }

form.contact input[type="submit"] { outline: 0; border: 1px solid button-border; background-color: #eee; color: #333; font-family: "Open Sans", sans-serif; margin: 0.5em 0; font-size: 18px; padding: 0.375em 1.25em; cursor: pointer; }

form.contact input[type="submit"]:hover, form.contact .button:hover { background-color: #333; color: #eee; }

form.contact { padding: 1em 0; clear: both; }

form.contact .buttons { text-align: right; padding: 0; }

form.contact textarea { height: 8em; }

.subscribe { max-width: 550px; padding-bottom: 2em; }

.subscribe .container { padding: 0; }

.subscribe h2, .subscribe h3 { padding-bottom: 1em; }

#mc_embed_signup { padding: 0; }

#mc_embed_signup_scroll { padding: 0; }

#mc_embed_signup form { padding: 0; }

#mc_embed_signup form .callout-button { margin-top: 2em; }

/*# sourceMappingURL=styles.css.map */