/**
 * Typography
 */
body {
  font-size: 18px;
  background-color: #070c1b;
  color: #d3d3d3;
  font-family: "Ubuntu", sans-serif; }

h1, h2, h3, h4, h5, h6 {
  letter-spacing: 0.072rem;
  text-align: center;
  font-weight: bold;
  font-family: "Roboto Slab", serif;
  color: #fff; }

h1 {
  font-size: 4rem; }

h2 {
  font-size: 3rem; }

h3 {
  font-size: 2rem; }

h4 {
  font-size: 1.8rem; }

h5 {
  font-size: 1.5rem; }

h6 {
  font-size: 1.2rem; }

a {
  color: #1ec7ff; }
  a:visited, a:active, a:hover {
    color: #009dd1; }

/**
 * Layout
 */
body {
  margin: 0;
  padding: 0; }

.content-section {
  padding: 3rem 1rem; }

.content-section-white {
  background-color: #fff;
  color: #727272; }
  .content-section-white h1, .content-section-white h2, .content-section-white h3, .content-section-white h4, .content-section-white h5, .content-section-white h6 {
    color: #0B132B; }

.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 1rem; }

.content-wrapper.split {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: baseline; }
  .content-wrapper.split > * {
    flex: 100%; }

@media screen and (min-width: 992px) {
  .content-wrapper.split > * {
    flex: 50%; } }

/**
 * Utilities
 */
#site-footer {
  text-align: center; }

#guides li {
  padding: 0.36rem 0; }

@media screen and (max-width: 991px) {
  #guides ul {
    padding-left: 1.2rem; } }

.plan-feature {
  display: flex;
  justify-content: space-between;
  padding: 0.36rem 0; }

.plan-faq {
  list-style: none;
  padding: 1rem 0; }

.faq-question {
  text-align: left;
  margin-bottom: 0; }

.faq-answer {
  margin-top: 0.5rem;
  color: #d3d3d3; }

@media screen and (min-width: 992px) {
  #plan-details .content-wrapper > div {
    padding: 1.2rem;
    flex: calc(50% - 2.4rem); } }

/**
 * Content 
 */
#intro {
  text-align: center;
  padding-top: 12vh;
  padding-bottom: 12vh; }
  #intro h1 {
    margin-top: 0;
    margin-bottom: 0; }
  #intro .tagline {
    margin-top: 0.72rem;
    margin-bottom: 3rem;
    font-size: 1.5rem; }

#key-callouts {
  padding: 1rem; }

.key-callouts {
  list-style: none;
  width: 100%;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: column; }

.key-callout {
  padding: 1rem;
  text-align: center;
  flex-grow: 1; }
  .key-callout h3 {
    margin-top: 0; }

@media screen and (min-width: 992px) {
  .key-callouts {
    flex-direction: row; }
  .key-callout {
    width: 33.333%; } }

#signals-subscription > .container > p {
  text-align: center;
  max-width: 54rem;
  margin: 0 auto 3rem; }

.signal-subscriptions {
  list-style: none;
  padding: 0;
  display: grid;
  grid-auto-rows: 1fr;
  grid-template-columns: repeat(1, 1fr);
  grid-column-gap: 1.8rem;
  grid-row-gap: 1.8rem; }

.signal-subscription {
  text-align: center;
  padding: 3rem 2rem;
  max-width: 420px;
  background-color: #0B132B;
  border: solid 6px #1ec7ff;
  border-radius: 1.2rem;
  margin: 1rem auto;
  display: flex;
  flex-direction: column; }
  .signal-subscription h3 {
    margin-top: 0; }
  .signal-subscription .availability {
    margin-bottom: 0;
    color: #ffce56; }
  .signal-subscription p {
    margin-bottom: 3rem; }
  .signal-subscription .btn {
    margin: auto auto 0;
    border-color: #51ffd1; }

@media screen and (min-width: 992px) {
  .signal-subscriptions {
    grid-template-columns: repeat(2, 1fr); }
  .signal-subscription {
    width: 100%; } }

/**
 * Components
 */
.btn {
  display: inline-block;
  border: solid 2px #fff;
  padding: 1rem 2.7rem;
  margin: 0 auto;
  border-radius: 0.45rem;
  font-weight: bold;
  text-decoration: none;
  transition: all .36s ease-in-out; }
  .btn.btn-primary {
    background-color: #1effc345;
    border-color: #84ffde;
    color: #84ffde; }
    .btn.btn-primary:hover {
      background-color: #84ffde;
      color: #0B132B; }
  .btn.btn-secondary {
    background-color: #1ec7ff45;
    border-color: #51d4ff;
    color: #51d4ff; }
    .btn.btn-secondary:hover {
      background-color: #51d4ff;
      color: #0B132B; }
    .btn.btn-secondary.disabled {
      border-color: #1ec7ff45;
      color: #1ec7ff45; }
      .btn.btn-secondary.disabled:hover {
        cursor: not-allowed; }
