/**
 * DEPENDENCIES
 * - none
 */
/**
 * DEPENDENCIES
 * - none
 */
.aspect {
  width: auto;
  max-width: 100%;
  height: auto;
}

img.aspect {
  display: block;
}

/**
 * DEPENDENCIES
 * - none
 */
.button {
  height: 48px;
  padding: 15px 24px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.1428571429;
  font-family: "magistral", "Helvetica Neue", Helvetica, sans-serif;
  outline: none;
  vertical-align: top;
  box-sizing: border-box;
  background-color: #fff;
  border: 1px solid rgba(52, 21, 90, 0.14);
  border-radius: 3px;
  display: inline-block;
  font-weight: 700;
  font-style: italic;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
}
.button.is-connecting {
  background-color: #54bffc;
  border-color: #54bffc;
  cursor: not-allowed;
}
.button.is-connecting:hover, .button.is-connectingfocus {
  background-color: #54bffc;
  border-color: #54bffc;
}

.button--s {
  height: 34px;
  padding: 9px 9px;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.1666666667;
}

.button--primary {
  background-color: #9b5bbf;
  border-color: #9b5bbf;
  color: #fff;
  transition: background-color 0.3s;
}
.button--primary:hover, .button--primaryfocus {
  background-color: #854ea4;
  color: #fff;
  transition: background-color 0.3s;
}

.button--ter {
  background-color: #54bffc;
  border-color: #54bffc;
  color: #fff;
  transition: all 0.2s;
}
.button--ter:hover, .button--terfocus {
  border-color: #4399ca;
  background-color: #4399ca;
  color: #fff;
  transition: all 0.2s;
}

.button--accent {
  background-color: #ff3399;
  border-color: #ff3399;
  color: #fff;
  transition: all 0.2s;
}
.button--accent:hover, .button--accentfocus {
  border-color: #db2c84;
  background-color: #db2c84;
  transition: all 0.2s;
}

a.button--accent:hover, a.button--accent:focus {
  outline: none;
  color: #fff;
}

.button--ghost {
  background-color: transparent;
  color: #54bffc;
  border-color: #54bffc;
  transition: all 0.2s;
}
.button--ghost:hover, .button--ghostfocus {
  border-color: #4399ca;
  background-color: rgba(84, 191, 252, 0.08);
  color: #4399ca;
  transition: all 0.2s;
}

/**
 * DEPENDENCIES
 * - none
 */
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

/**
 * DEPENDENCIES
 * - none
 */
/**
 * Using normalize.css we have added in some variables so that the base
 * styling can be customised.
 *
 *
 * DEPENDENCIES
 * - 
 *
 *
 * USED WITH
 * -
 * 
 */
/**
 * DEPENDENCIES
 * - none
 */
.paint {
  background-color: #34155a;
  color: #fff;
}

/*
 *
 * DEPENDENCIES
 * - NONE
 * 
 */
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1.3;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/**
 * DEPENDENCIES
 * - none
 */
.s-1\/1 {
  width: 100% !important;
}

.s-1\/2 {
  width: 50% !important;
}

.s-1\/3 {
  width: 33.3333333333% !important;
}

.s-2\/3 {
  width: 66.6666666667% !important;
}

.s-1\/4 {
  width: 25% !important;
}

.s-2\/4 {
  width: 50% !important;
}

.s-3\/4 {
  width: 75% !important;
}

.s-1\/5 {
  width: 20% !important;
}

.s-2\/5 {
  width: 40% !important;
}

.s-3\/5 {
  width: 60% !important;
}

.s-4\/5 {
  width: 80% !important;
}

@media (min-width: 320px) {
  .s-1\/1--mob {
    width: 100% !important;
  }
  .s-1\/2--mob {
    width: 50% !important;
  }
  .s-1\/3--mob {
    width: 33.3333333333% !important;
  }
  .s-2\/3--mob {
    width: 66.6666666667% !important;
  }
  .s-1\/4--mob {
    width: 25% !important;
  }
  .s-2\/4--mob {
    width: 50% !important;
  }
  .s-3\/4--mob {
    width: 75% !important;
  }
  .s-1\/5--mob {
    width: 20% !important;
  }
  .s-2\/5--mob {
    width: 40% !important;
  }
  .s-3\/5--mob {
    width: 60% !important;
  }
  .s-4\/5--mob {
    width: 80% !important;
  }
}
@media (min-width: 768px) {
  .s-1\/1--tab {
    width: 100% !important;
  }
  .s-1\/2--tab {
    width: 50% !important;
  }
  .s-1\/3--tab {
    width: 33.3333333333% !important;
  }
  .s-2\/3--tab {
    width: 66.6666666667% !important;
  }
  .s-1\/4--tab {
    width: 25% !important;
  }
  .s-2\/4--tab {
    width: 50% !important;
  }
  .s-3\/4--tab {
    width: 75% !important;
  }
  .s-1\/5--tab {
    width: 20% !important;
  }
  .s-2\/5--tab {
    width: 40% !important;
  }
  .s-3\/5--tab {
    width: 60% !important;
  }
  .s-4\/5--tab {
    width: 80% !important;
  }
}
@media (min-width: 1024px) {
  .s-1\/1--lap {
    width: 100% !important;
  }
  .s-1\/2--lap {
    width: 50% !important;
  }
  .s-1\/3--lap {
    width: 33.3333333333% !important;
  }
  .s-2\/3--lap {
    width: 66.6666666667% !important;
  }
  .s-1\/4--lap {
    width: 25% !important;
  }
  .s-2\/4--lap {
    width: 50% !important;
  }
  .s-3\/4--lap {
    width: 75% !important;
  }
  .s-1\/5--lap {
    width: 20% !important;
  }
  .s-2\/5--lap {
    width: 40% !important;
  }
  .s-3\/5--lap {
    width: 60% !important;
  }
  .s-4\/5--lap {
    width: 80% !important;
  }
}
@media (min-width: 1400px) {
  .s-1\/1--desk {
    width: 100% !important;
  }
  .s-1\/2--desk {
    width: 50% !important;
  }
  .s-1\/3--desk {
    width: 33.3333333333% !important;
  }
  .s-2\/3--desk {
    width: 66.6666666667% !important;
  }
  .s-1\/4--desk {
    width: 25% !important;
  }
  .s-2\/4--desk {
    width: 50% !important;
  }
  .s-3\/4--desk {
    width: 75% !important;
  }
  .s-1\/5--desk {
    width: 20% !important;
  }
  .s-2\/5--desk {
    width: 40% !important;
  }
  .s-3\/5--desk {
    width: 60% !important;
  }
  .s-4\/5--desk {
    width: 80% !important;
  }
}
.s-1 {
  width: 100%;
}

/**
 * DEPENDENCIES
 * - none
 */
.mt {
  margin-top: 6px;
}

.mt-2,
.mt\+ {
  margin-top: 12px;
}

.mt-4,
.mt\+\+ {
  margin-top: 24px;
}

.mt-6 {
  margin-top: 36px;
}

.mb {
  margin-bottom: 6px;
}

.mb-2,
.mb\+ {
  margin-bottom: 12px;
}

.mb-4,
.mb\+\+ {
  margin-bottom: 24px;
}

.ml\+\+ {
  margin-left: 24px;
}

@media (min-width: 1024px) {
  .o-1--lap {
    margin-left: 8.3333333333%;
  }
}

/**
 * DEPENDENCIES
 * - none
 */
.typeDisplay,
.display {
  font-size: 200px;
  font-size: 12.5rem;
  line-height: 1;
}

.display-2 {
  font-size: 50px;
  font-size: 3.125rem;
  line-height: 1.15;
}

.display-3 {
  font-size: 21px;
  font-size: 1.3125rem;
  line-height: 1.4;
  font-weight: 700;
  font-style: italic;
  color: #ff3399;
}
.display-3:before {
  content: "";
  display: block;
  width: 16px;
  height: 2px;
  margin-bottom: 16px;
  background-color: #54bffc;
}

.typeHeading,
.heading {
  font-size: 45px;
  font-size: 2.8125rem;
  line-height: 1.25;
  font-weight: 700;
}

.typeCopy,
.copy {
  font-size: 16px;
  font-size: 1rem;
}

.typeCopy-l,
.copy-l {
  font-size: 18px;
  font-size: 1.125rem;
}

.typeCopy-s,
.copy-s {
  font-size: 14px;
  font-size: 0.875rem;
}

.type-lede {
  font-size: 21px;
  font-size: 1.3125rem;
  font-style: italic;
}

.type-action {
  padding: 6px;
  text-transform: uppercase;
  font-weight: 700;
  font-style: italic;
}

.type-actionPri {
  color: #c45cff;
  transition: color 0.2s;
}
.type-actionPri:hover, .type-actionPri:focus {
  color: #9d4acc;
  transition: color 0.2s;
}

.type-linkPri {
  display: inline-block;
  font-weight: 400;
  color: #c45cff;
  transition: color 0.2s;
}
.type-linkPri:hover, .type-linkPri:focus {
  color: #9d4acc;
  transition: color 0.2s;
}

.type-linkContrast {
  display: inline-block;
  font-weight: 400;
  color: #fff;
  transition: color 0.2s;
}
.type-linkContrast:hover, .type-linkContrast:focus {
  color: rgba(255, 255, 255, 0.9);
  transition: color 0.2s;
}

.type-base {
  color: #34155a;
}

.type-text {
  color: #9aa2a7;
}

.type-baseContrast {
  color: #fff;
}

.type-primary {
  color: #9b5bbf;
}

.type-ter {
  color: #54bffc;
}

.type-accent {
  color: #ff3399;
}

.type-contrast {
  color: #fff;
}

.t-line:before {
  content: "";
  display: block;
  width: 16px;
  height: 2px;
  margin-bottom: 16px;
  background-color: #54bffc;
}

/**
 * DEPENDENCIES
 * - none
 */
.center {
  text-align: center;
}

.right {
  text-align: right;
}

.middle {
  margin-left: auto;
  margin-right: auto;
}

.justify-ends {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.block {
  display: block;
}

.rel {
  position: relative;
}

.flex-center {
  display: flex;
  align-items: center;
}
.flex-center > * + * {
  margin-left: 12px;
}

.nowrap {
  white-space: nowrap;
}

.upper {
  text-transform: uppercase;
}

.o-50 {
  opacity: 0.5;
}

.i {
  font-style: italic;
}

.b {
  font-weight: 700;
}

@media (min-width: 768px) {
  .show-mob {
    display: none;
  }
}

@media (max-width: 767px) {
  .hide-mob {
    display: none;
  }
}

* {
  box-sizing: border-box;
}

html {
  font-size: 100%;
}

body {
  background-color: #05073e;
  font-size: 1em;
  line-height: 1.3;
  font-weight: normal;
  font-family: "magistral", "Helvetica Neue", Helvetica, sans-serif;
  color: #34155a;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

/*
 * TODO:
 */
blockquote {
  font-size: 18px;
  font-size: 1.125rem;
  margin: 0;
  padding: 12px 18px;
  font-style: italic;
  position: relative;
}
blockquote footer {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  font-style: normal;
}

button {
  height: 48px;
  padding: 15px 24px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.1428571429;
  font-family: "magistral", "Helvetica Neue", Helvetica, sans-serif;
  outline: none;
  vertical-align: top;
  box-sizing: border-box;
  background-color: #fff;
  border: 1px solid rgba(52, 21, 90, 0.14);
  border-radius: 3px;
  display: inline-block;
  font-weight: 700;
  font-style: italic;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
}
button.is-connecting {
  background-color: #54bffc;
  border-color: #54bffc;
  cursor: not-allowed;
}
button.is-connecting:hover, button.is-connectingfocus {
  background-color: #54bffc;
  border-color: #54bffc;
}

/*
 * TODO: Make button and input styling based on same styles so that when used together they work nicely
 */
/**
 * input Base extend Notes
 * These styles have been set to give a base style which is consistant across
 * input types
 *
 * TODO: See if a hieght is needed to keep consistancy across all input types
 */
/**
 * Placeholder extend Notes
 * Sets the placeholder text colour
 */
/**
 * Label Notes
 * Very simple base styles which can be built apon with formfield classes
 */
/**
 * input Notes
 * 
 */
/**
 * input Submit Notes
 * 
 */
/**
 * Select Notes
 * 
 */
/**
 * Textarea Notes
 * 
 */
/**
 * Intro text
 *
 *
 * DEPENDENCIES
 * - base/type
 *
 *
 * USED WITH
 * -
 *
 */
h1 {
  font-size: 38px;
  font-size: 2.375rem;
  line-height: 1.25;
  font-weight: 700;
  font-style: italic;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  h1 {
    font-size: 41px;
    font-size: 2.5625rem;
  }
}
@media (min-width: 1024px) {
  h1 {
    font-size: 45px;
    font-size: 2.8125rem;
  }
}

h2 {
  font-size: 27px;
  font-size: 1.6875rem;
  line-height: 1.3;
  font-weight: 700;
  font-style: italic;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  h2 {
    font-size: 30px;
    font-size: 1.875rem;
  }
}

h3 {
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.4;
  font-weight: 700;
  font-style: italic;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  h3 {
    font-size: 21px;
    font-size: 1.3125rem;
  }
}

h4 {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 700;
  font-style: italic;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  h4 {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

h5 {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.3;
  font-weight: 700;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  h5 {
    font-size: 16px;
    font-size: 1rem;
  }
}

/**
 * Intro text
 *
 *
 * DEPENDENCIES
 * -
 *
 *
 * USED WITH
 * -
 *
 */
a {
  color: #54bffc;
  font-weight: 700;
  text-decoration: none;
}
a:hover, a:focus {
  outline: 0;
  color: #4399ca;
}

/**
 * Intro text
 *
 *
 * DEPENDENCIES
 * - 
 *
 *
 * USED WITH
 * -
 * 
 */
ul {
  list-style: circle;
}

ol,
ul {
  padding-left: 2rem;
}

/**
 * Intro text
 *
 *
 * DEPENDENCIES
 * - base/type
 *
 *
 * USED WITH
 * -
 * 
 */
p {
  font-size: 16px;
  font-size: 1rem;
}

/**
 * Text element styling
 *
 *
 * DEPENDENCIES
 * - 
 *
 *
 * USED WITH
 * -
 * 
 */
b,
strong {
  font-weight: 700;
}

i,
cite,
em,
var,
address,
dfn {
  font-style: italic;
}

/**
 * DEPENDENCIES
 * - none
 */
.Grid {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  letter-spacing: -0.31em;
  text-rendering: optimizespeed;
}
@media (min-width: 768px) {
  .Grid {
    padding-left: 18px;
    padding-right: 18px;
  }
}
.Grid .Grid {
  margin-left: -18px;
  margin-right: -18px;
}

.opera:-o-prefocus,
.grid {
  word-spacing: -0.43em;
}

.Grid-column {
  display: inline-block;
  width: 100%;
  padding: 18px;
  vertical-align: top;
  letter-spacing: normal;
  word-spacing: normal;
  text-rendering: auto;
}

.Grid-row {
  display: block;
  margin-left: auto;
  margin-right: auto;
  padding: 18px;
  letter-spacing: normal;
  word-spacing: normal;
  text-rendering: auto;
}

.Grid-row--flat {
  padding: 0;
}

.Grid-column--middle {
  vertical-align: middle;
}

/**
 * DEPENDENCIES
 * - none
 */
.Card {
  position: relative;
  background-color: #fff;
  border-radius: 3px;
}

.Card-head {
  padding: 30px;
  text-align: center;
  background-image: linear-gradient(to right, #ff9800, #ff469b, #7544aa);
  color: #fff;
}

.Card-headTitle {
  font-size: 30px;
  font-size: 1.875rem;
  text-transform: uppercase;
}

.Card-headIntro {
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.3;
  font-style: italic;
  max-width: 16rem;
  margin-left: auto;
  margin-right: auto;
}

.Card-headIntro--fill {
  max-width: 100%;
}

.Card-sectionLabel {
  position: relative;
  font-weight: 700;
  font-style: italic;
  padding: 12px 18px;
  text-transform: uppercase;
  background-color: #f3edfc;
  color: #9b5bbf;
}
.Card-sectionLabel:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background-image: linear-gradient(90deg, transparent 80%, #9b5bbf 0);
  background-size: 6px 100%;
}

.Card-grid {
  display: flex;
  padding: 12px;
}

.Card-aside,
.Card-main {
  padding: 16px;
}
@media (min-width: 768px) {
  .Card-aside,
  .Card-main {
    padding: 24px;
  }
}

.Card-aside {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.3;
}

.Card-asideImg {
  max-width: 90px;
  height: auto;
}

@media (min-width: 768px) {
  .Card-main {
    width: 75%;
  }
}

@media (min-width: 1024px) {
  .Card-form {
    padding-right: 85px;
  }
}

.Card-note {
  width: 100%;
  text-align: center;
  padding: 12px 15px;
  margin-top: 14px;
  background-color: #f3edfc;
  border: 1px solid #b3a7c3;
  border-radius: 3px;
}
@media (max-width: 767px) {
  .Card-note {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media (min-width: 768px) {
  .Card-note {
    padding: 18px;
  }
}
@media (max-width: 767px) {
  .Card-note + div.o-50 {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

.Card-item,
.Card-itemInner {
  display: flex;
  align-items: flex-start;
}

.Card-item {
  position: relative;
  flex-wrap: wrap;
  padding: 18px;
}
@media (min-width: 768px) {
  .Card-item {
    padding: 24px;
  }
}
.Card-item:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background-image: linear-gradient(90deg, transparent 80%, #9b5bbf 0);
  background-size: 6px 100%;
}

.Card-itemBody {
  flex-grow: 2;
}
@media (max-width: 767px) {
  .Card-itemBody {
    margin-top: 12px;
    width: 100%;
  }
}

.Card-itemImage {
  display: block;
  width: 100%;
  max-width: 120px;
  height: auto;
  margin-right: 24px;
}
@media (min-width: 768px) {
  .Card-itemImage {
    max-width: 180px;
  }
}

.Card-action {
  height: 48px;
  padding: 15px 24px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.1428571429;
  font-family: "magistral", "Helvetica Neue", Helvetica, sans-serif;
  outline: none;
  vertical-align: top;
  box-sizing: border-box;
  background-color: #fff;
  border: 1px solid rgba(52, 21, 90, 0.14);
  border-radius: 3px;
  display: inline-block;
  font-weight: 700;
  font-style: italic;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
}
.Card-action.is-connecting {
  background-color: #54bffc;
  border-color: #54bffc;
  cursor: not-allowed;
}
.Card-action.is-connecting:hover, .Card-action.is-connectingfocus {
  background-color: #54bffc;
  border-color: #54bffc;
}
.Card-action {
  display: flex;
  padding: 0;
  width: 100%;
  border-color: #ff3399;
  color: #ff3399;
  transition: background-color 0.2s;
}
@media (max-width: 767px) {
  .Card-action {
    font-size: 12px;
    font-size: 0.75rem;
    height: auto;
  }
}
@media (min-width: 1024px) {
  .Card-action {
    width: 75%;
  }
}
.Card-action > * {
  flex-grow: 2;
  text-align: center;
  padding: 12px 15px;
}
@media (min-width: 768px) {
  .Card-action > * {
    padding: 15px 24px;
  }
}
@media (min-width: 1024px) {
  .Card-action > * {
    padding-left: 32px;
    padding-right: 32px;
  }
}
@media (max-width: 767px) {
  .Card-action + .type-action {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

button.Card-action:hover {
  background-color: rgba(255, 51, 153, 0.08);
  transition: background-color 0.2s;
}

.Card-action--alt {
  border-color: #54bffc;
  color: #34155a;
  cursor: default;
}

.Card-actionLabel {
  flex-grow: 0;
  padding: 12px 15px;
  background-color: #ff3399;
  color: #fff;
}
@media (min-width: 768px) {
  .Card-actionLabel {
    padding: 14px 18px;
  }
}
@media (min-width: 1024px) {
  .Card-actionLabel {
    padding-left: 24px;
    padding-right: 24px;
  }
}
.Card-action--alt .Card-actionLabel {
  background-color: #54bffc;
}

.Card-actionAdr {
  text-transform: capitalize;
  font-weight: 400;
  text-align: left;
  padding-left: 15px;
  padding-right: 15px;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
@media (min-width: 768px) {
  .Card-actionAdr {
    padding-left: 24px;
    padding-right: 24px;
  }
}

.Card-h1 {
  font-size: 21px;
  font-size: 1.3125rem;
  line-height: 1.1;
  text-transform: uppercase;
}

.Card-l1 {
  font-size: 27px;
  font-size: 1.6875rem;
  line-height: 1.2;
  margin-top: 4px;
  margin-bottom: 4px;
  color: #b3a7c3;
}

.Card-offer {
  color: #c45cff;
}

.Card-i {
  color: rgba(52, 21, 90, 0.5);
}

.Card-foot {
  text-align: center;
  padding: 24px;
  background-color: #f3edfc;
}
.Card-foot .right {
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  .Card-foot .right {
    text-align: left;
    margin-top: 12px;
  }
  .Card-foot .right > a {
    order: 2;
    margin-left: 18px;
  }
}
@media (min-width: 768px) {
  .Card-foot .right {
    justify-content: flex-end;
  }
}
@media (min-width: 768px) {
  .Card-foot .right > * + * {
    margin-left: 18px;
  }
}

.Card-foot--split {
  text-align: left;
  padding-left: 12px;
  padding-right: 12px;
}
@media (min-width: 768px) {
  .Card-foot--split {
    display: flex;
    align-items: center;
  }
}
@media (min-width: 768px) {
  .Card-foot--split > * {
    width: 50%;
    padding-left: 12px;
    padding-right: 12px;
  }
}

@media (max-width: 767px) {
  .Card-footCopy {
    margin-bottom: 12px;
  }
}
.Form-field + .Form-field {
  margin-top: 32px;
}

.Form-field--slim + .Form-field--slim {
  margin-top: 14px;
}

.Form-label + .Form-input,
.Form-label + .Form-inputMulti,
.Form-label + .Form-inputLayers,
.Form-label + .Form-inputWrap,
.Form-labelWrap + .Form-input,
.Form-labelWrap + .Form-inputMulti,
.Form-labelWrap + .Form-inputLayers,
.Form-labelWrap + .Form-inputWrap {
  margin-top: 9px;
}

.Form-label {
  display: block;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.25;
  font-weight: 700;
  font-style: italic;
}

.Form-labelWrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.Form-error {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.25;
  font-weight: bold;
  color: #ff3399;
}

.Form-input {
  width: 100%;
  height: 48px;
  padding: 15px 15px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.1428571429;
  font-family: "magistral", "Helvetica Neue", Helvetica, sans-serif;
  outline: none;
  vertical-align: top;
  box-sizing: border-box;
  background-color: #fff;
  border: 1px solid rgba(52, 21, 90, 0.14);
  border-radius: 3px;
  background-color: #f3edfc;
  border-color: #9260b9;
}

.Form-input--alt {
  background-color: transparent;
  border-top: none;
  border-left: none;
  border-right: none;
  border-radius: 0;
}

.Form-inputMulti {
  width: 100%;
  height: 48px;
  padding: 15px 15px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.1428571429;
  font-family: "magistral", "Helvetica Neue", Helvetica, sans-serif;
  outline: none;
  vertical-align: top;
  box-sizing: border-box;
  background-color: #fff;
  border: 1px solid rgba(52, 21, 90, 0.14);
  border-radius: 3px;
  height: 103px;
}

.Form-input.has-error,
.Form-inputMulti.has-error {
  background-color: #f8e9f0;
  border-color: #eb4a97;
  border-width: 2px;
}

.Form-inputLayers {
  position: relative;
}

.Form-inputAction {
  position: absolute;
  top: 7px;
  right: 7px;
}

.Form-submit {
  height: 48px;
  padding: 15px 24px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.1428571429;
  font-family: "magistral", "Helvetica Neue", Helvetica, sans-serif;
  outline: none;
  vertical-align: top;
  box-sizing: border-box;
  background-color: #fff;
  border: 1px solid rgba(52, 21, 90, 0.14);
  border-radius: 3px;
  display: inline-block;
  font-weight: 700;
  font-style: italic;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
}
.Form-submit.is-connecting {
  background-color: #54bffc;
  border-color: #54bffc;
  cursor: not-allowed;
}
.Form-submit.is-connecting:hover, .Form-submit.is-connectingfocus {
  background-color: #54bffc;
  border-color: #54bffc;
}
.Form-submit {
  background-color: #9b5bbf;
  border-color: #9b5bbf;
  color: #fff;
  transition: background-color 0.3s;
}
.Form-submit:hover, .Form-submitfocus {
  background-color: #854ea4;
  color: #fff;
  transition: background-color 0.3s;
}

.Gallery {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.Gallery-item {
  width: 50%;
  padding: 18px;
}
@media (min-width: 768px) {
  .Gallery-item {
    width: 33.3333333333%;
  }
}
@media (min-width: 1024px) {
  .Gallery-item {
    width: 25%;
  }
}

.Hero {
  display: flex;
  align-items: flex-end;
  min-height: 100vh;
}
@media (min-width: 768px) {
  .Hero {
    align-items: center;
  }
}

.Hero--splash {
  min-height: 80vh;
  min-height: calc(100vh - 146px);
  background: url("/assets/images/backgrounds/Lead-placeholder.jpg") center no-repeat;
  background-size: cover;
}

.Hero-body {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  max-width: 1280px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 18px 36px;
}

.Hero-splash {
  width: 80%;
}
@media (max-width: 767px) {
  .Hero-splash {
    margin-left: auto;
    margin-top: 12px;
    margin-bottom: 12px;
  }
}
@media (min-width: 768px) {
  .Hero-splash {
    order: 2;
    width: 66.6666666667%;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .Hero-splash {
    margin-top: -30%;
  }
}
@media (min-width: 1024px) {
  .Hero-splash {
    width: 75%;
  }
}
.Hero-splash img {
  display: block;
  width: 100%;
  height: auto;
}

.Hero-card {
  position: relative;
  color: #fff;
}
.Hero-card:before {
  content: "";
  display: block;
  width: 16px;
  height: 2px;
  margin-bottom: 16px;
  background-color: #54bffc;
}
@media (min-width: 768px) {
  .Hero-card {
    width: 50%;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .Hero-card {
    margin-right: -16.6666666667%;
    margin-top: 10%;
  }
}
@media (min-width: 1024px) {
  .Hero-card {
    width: 25%;
  }
}
.Hero-card h3 {
  font-size: 21px;
  font-size: 1.3125rem;
  text-transform: uppercase;
  color: #ff3399;
}
.Hero-card p {
  font-size: 21px;
  font-size: 1.3125rem;
  margin-top: 1rem;
}

/**
 * DEPENDENCIES
 * - none
 */
.Island {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  letter-spacing: -0.31em;
  text-rendering: optimizespeed;
}
@media (min-width: 768px) {
  .Island {
    padding-left: 18px;
    padding-right: 18px;
  }
}
.Island .Grid {
  margin-left: -18px;
  margin-right: -18px;
}
.Island {
  padding-top: 36px;
  padding-bottom: 36px;
}
@media (min-width: 768px) {
  .Island {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}
@media (min-width: 1024px) {
  .Island {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

/**
 * DEPENDENCIES
 * - none
 */
.Media,
.Media-body {
  overflow: hidden;
  _overflow: visible;
  zoom: 1;
}

.Media-image img,
.Media-imageAlt img {
  display: block;
}

.Media-image,
.Media-imageMiddle {
  margin-right: 18px;
}

.Media-image {
  float: left;
}

.Media-imageAlt,
.Media-imageAltMiddle {
  margin-left: 18px;
}

.Media-imageAlt {
  float: right;
}

.Media-bodyMiddle,
.Media-imageMiddle {
  display: inline-block;
  vertical-align: middle;
}

.Media-imageMiddle img {
  vertical-align: bottom;
}

.Mint-head {
  padding: 12px;
  background-color: #9b5bbf;
  color: #fff;
}
@media (min-width: 768px) {
  .Mint-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 18px;
  }
}
.Mint-head > div {
  display: flex;
  align-items: baseline;
}
.Mint-head > div > * + * {
  margin-left: 18px;
}
.Mint-head .i {
  white-space: nowrap;
}

.Mint-section + .Mint-section {
  margin-top: 60px;
}

.Mint-item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 16px;
  padding-bottom: 16px;
  color: #fff;
}
@media (min-width: 1024px) {
  .Mint-item {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.Mint-item:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background-image: linear-gradient(90deg, transparent 80%, #9b5bbf 0);
  background-size: 6px 100%;
}
@media (max-width: 767px) {
  .Mint-item {
    width: 100%;
    flex-wrap: wrap;
  }
}
@media (min-width: 768px) {
  .Mint-item {
    min-height: 112px;
  }
}

.Mint-itemBody {
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  .Mint-itemBody {
    width: 100%;
  }
}

.Mint-nftPreview {
  display: flex;
  align-items: center;
}
.Mint-nftPreview .NFT-player,
.Mint-nftPreview .NFT-figure {
  max-width: 112px;
}
@media (max-width: 767px) {
  .Mint-nftPreview .NFT-player,
  .Mint-nftPreview .NFT-figure {
    width: 40%;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .Mint-nftPreview .NFT-player,
  .Mint-nftPreview .NFT-figure {
    max-width: 96px;
  }
}
.Mint-nftPreview .NFT-figure img {
  width: 100%;
  height: auto;
}

.Mint-data {
  margin-left: 16px;
}
@media (max-width: 767px) {
  .Mint-data {
    width: 100%;
    font-size: 85%;
  }
}
@media (min-width: 768px) {
  .Mint-data {
    margin-left: 24px;
  }
}

@media (max-width: 767px) {
  .Mint-itemAction {
    width: 100%;
    margin-top: 16px;
  }
}
@media (min-width: 1024px) {
  .Mint-itemAction {
    width: 20%;
  }
}
.Mint-itemAction .button {
  display: block;
}
.Mint-itemAction .button + .button {
  margin-top: 6px;
}
.Mint-itemAction .button--ter {
  background-color: #54bffc;
  border-color: #54bffc;
  color: #fff;
  transition: all 0.2s;
}
.Mint-itemAction .button--ter:hover, .Mint-itemAction .button--terfocus {
  border-color: #4399ca;
  background-color: #4399ca;
  color: #fff;
  transition: all 0.2s;
}
.Mint-itemAction .button--ter {
  cursor: pointer;
  white-space: nowrap;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .Mint-itemAction .button--ter {
    font-size: 12px;
    font-size: 0.75rem;
    padding: 10px 16px;
    height: auto;
  }
}

.Mint-itemAction .Mint-btnClaimed {
  color: #c45cff;
  border-color: #c45cff;
}

.Mint-itemStatus {
  height: 48px;
  padding: 15px 24px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.1428571429;
  font-family: "magistral", "Helvetica Neue", Helvetica, sans-serif;
  outline: none;
  vertical-align: top;
  box-sizing: border-box;
  background-color: #fff;
  border: 1px solid rgba(52, 21, 90, 0.14);
  border-radius: 3px;
  display: block;
  font-weight: 700;
  font-style: italic;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
  background-color: transparent;
  color: #b3a7c3;
  border-color: #b3a7c3;
}
@media (max-width: 1023px) {
  .Mint-itemStatus {
    font-size: 14px;
    font-size: 0.875rem;
    height: auto;
    padding: 12px 18px;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .Mint-itemStatus {
    font-size: 12px;
    font-size: 0.75rem;
    padding: 10px 16px;
  }
}
.Mint-itemStatus + .button {
  margin-top: 6px;
}

.Mint-itemStatus--claimed {
  color: #c45cff;
  border-color: #c45cff;
}

.Navbar {
  background-image: linear-gradient(to right, #ff9800, #ff469b, #7544aa);
}

.Navbar-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6vw;
}
@media (min-width: 768px) {
  .Navbar-inner {
    padding: 1.7vw 3vw;
  }
}

.Navbar-brand {
  display: block;
  width: auto;
  max-width: 100%;
  max-height: 45px;
}
@media (min-width: 768px) {
  .Navbar-brand {
    max-height: 48px;
  }
}
@media (min-width: 1024px) {
  .Navbar-brand {
    max-height: 64px;
  }
}

.Navbar-trigger {
  z-index: 9999;
  border: none;
  text-indent: -9999px;
  background: none;
  padding: 1px 8px;
  height: 35px;
}
.Navbar-trigger:before, .Navbar-trigger:after {
  content: "";
  display: block;
  width: 28px;
  height: 1px;
  background-color: #fff;
}
.has-overlay .Navbar-trigger:before, .has-overlay .Navbar-trigger:after {
  background-color: #210f40;
}
.Navbar-trigger:before {
  transition: transform 0.2s;
}
.has-overlay .Navbar-trigger:before {
  transform: rotate(45deg);
  transition: transform 0.2s;
}
.Navbar-trigger:after {
  transform: rotate(90deg);
  transition: transform 0.2s;
}
.has-overlay .Navbar-trigger:after {
  transform: rotate(135deg);
  transition: transform 0.2s;
}
@media (min-width: 768px) {
  .Navbar-trigger {
    display: none;
  }
}

.Navbar-aside {
  height: 100%;
}
@media (max-width: 767px) {
  .Navbar-aside {
    display: none;
  }
  .has-overlay .Navbar-aside {
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9998;
    background-color: #fff;
  }
}
@media (min-width: 768px) {
  .Navbar-aside {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: right;
  }
}

.Navbar-nav {
  list-style: none;
  padding-left: 0;
}
@media (min-width: 768px) {
  .Navbar-nav {
    display: flex;
    margin-top: 1.5vw;
  }
}
.Navbar-nav li + li {
  margin-left: 2.8vw;
}

.Navbar-navLink {
  display: block;
  font-weight: 700;
  text-transform: uppercase;
  color: #210f40;
}
@media (max-width: 767px) {
  .Navbar-navLink {
    font-size: 7vmin;
    padding: 2.7vw 5vw;
  }
  .Navbar-navLink:hover, .Navbar-navLink:focus {
    color: #210f40;
  }
}
@media (min-width: 768px) {
  .Navbar-navLink {
    line-height: 1.8em;
    color: #fff;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .Navbar-navLink {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
.Navbar-navLink:hover, .Navbar-navLink:focus {
  color: #fff;
}
.Navbar-navLink.is-drop {
  background: url("/assets/images/icons/Drop-Icon.svg") left 2px no-repeat;
  background-size: 18px 22px;
  padding-left: 28px;
}

.Navbar-action .button {
  background-color: transparent;
  border-color: #fff;
  color: #fff;
  transition: all 0.2s;
}
.Navbar-action .button:hover, .Navbar-action .button:focus {
  color: #ff3399;
  background-color: #fff;
  transition: all 0.2s;
}
@media (max-width: 767px) {
  .Navbar-action .button {
    font-size: 19px;
    font-size: 1.1875rem;
    position: absolute;
    bottom: 6vw;
    left: 6vw;
    height: auto;
    border-width: 2px;
    color: #9b5bbf;
    border-color: #9b5bbf;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .Navbar-action .button {
    font-size: 14px;
    font-size: 0.875rem;
    padding: 12px 18px;
    height: auto;
  }
}

.NFT-player video {
  width: 100%;
  height: auto;
}

.NFT-plus {
  height: 40px;
  width: 40px;
  background: url("/assets/images/icons/Plus-Icon.svg") center no-repeat;
  background-size: 24px 24px;
}
@media (min-width: 768px) {
  .NFT-plus {
    height: 48px;
    width: 48px;
    background-size: 32px 32px;
  }
}
@media (min-width: 1024px) {
  .NFT-plus {
    height: 58px;
    width: 58px;
    background-size: 42px 42px;
  }
}

/**
 * DEPENDENCIES
 * - none
 */
.Page {
  min-height: 100vh;
  background: url("/assets/images/backgrounds/i_space.jpg") top center repeat-y;
  background-size: cover;
}
@media (min-width: 768px) {
  .Page {
    background-size: 100% auto;
  }
}

.Page--space {
  background: url("/assets/images/backgrounds/i_space.jpg") top center repeat-y;
  background-size: cover;
}
@media (min-width: 768px) {
  .Page--space {
    background-size: 100% auto;
  }
}

.Page--plain {
  background-color: #05073e;
}

.Page-head {
  position: relative;
  padding-top: 24px;
  padding-bottom: 24px;
}
@media (min-width: 768px) {
  .Page-head {
    padding-top: 32px;
    padding-bottom: 32px;
  }
}
@media (min-width: 1024px) {
  .Page-head {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}
@media (max-width: 767px) {
  .Page-head.has-back {
    padding-bottom: 76px;
  }
}

.Page-headBack {
  position: absolute;
  right: 18px;
  bottom: -76px;
}
@media (min-width: 768px) {
  .Page-headBack {
    bottom: -32px;
  }
}
@media (min-width: 1024px) {
  .Page-headBack {
    bottom: -48px;
  }
}
.Page-headBack .link {
  display: block;
  padding: 16px 24px;
  font-style: italic;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  background-color: #05073e;
  color: #c45cff;
}

.Page-section {
  padding-top: 24px;
  padding-bottom: 24px;
}
@media (min-width: 768px) {
  .Page-section {
    padding-top: 32px;
    padding-bottom: 32px;
  }
}
@media (min-width: 1024px) {
  .Page-section {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}

.Page-section--dividers {
  position: relative;
}
.Page-section--dividers:before, .Page-section--dividers:after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  height: 1px;
  width: 100%;
  max-width: 1244px;
  background-image: linear-gradient(90deg, transparent 80%, #9b5bbf 0);
  background-size: 6px 100%;
}
.Page-section--dividers:before {
  top: 0;
}
.Page-section--dividers:after {
  bottom: 0;
}

.Switch {
  position: relative;
  display: inline-block;
  width: 60px;
  height: 34px;
}

.Switch-input {
  opacity: 0;
  width: 0;
  height: 0;
}
.Switch-input:checked + .Switch-button {
  background-color: #9b5bbf;
}
.Switch-input:checked + .Switch-button:before {
  transform: translateX(26px);
}
.Switch-input:focus + .Switch-button {
  box-shadow: 0 0 1px #9b5bbf;
}

.Switch-button {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #999;
  border-radius: 34px;
  transition: 0.4s;
}

.Switch-button:before {
  position: absolute;
  content: "";
  height: 26px;
  width: 26px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  border-radius: 50%;
  transition: 0.4s;
}

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