/* ==========================================================================
   Colors
   ========================================================================== */
/* ==========================================================================
    Sizes
   ========================================================================== */
/* ==========================================================================
   Fonts
   ========================================================================== */
/* Get Colors
   ========================================================================== */
/* Gradient
   ========================================================================== */
/* Input Placeholder Styling
   ========================================================================== */
/* ==========================================================================
   Create the Grid
   ========================================================================== */
/* ==========================================================================
   Colors
   ========================================================================== */
/* ==========================================================================
    Sizes
   ========================================================================== */
/* ==========================================================================
   Fonts
   ========================================================================== */
/* ==========================================================================
   Media Queries
   ========================================================================== */
/* Media Query Sizing
   ========================================================================== */
/* 0, 560px */
/* 561px, 767px */
/* 768px, 1024px */
/* 1025px 1440px */
/* ==========================================================================
   Generate the Gridle classes
   ========================================================================== */
.box {
  box-shadow: 3px 3px 3px 0 rgba(0, 0, 0, 0.25); }

.box--outline {
  border: 1px #fff solid; }

.button {
  display: inline-block;
  padding: 10px 20px;
  text-decoration: none; }

.button-sm {
  border: 1px #fff solid;
  border-radius: 8px;
  color: #ffffff;
  font-size: 12px;
  font-weight: 700; }
  .button-sm:not(.button--no-hover):hover {
    background-color: #864c98; }

.button-md {
  background-color: #432a6d;
  background-image: linear-gradient(180deg, #864c98, #432a6d);
  color: #ffffff;
  border-radius: 8px;
  box-shadow: 3px 3px 3px 0 rgba(0, 0, 0, 0.25);
  font-size: 18px;
  font-weight: 700;
  padding: 15px 35px; }
  .button-md:hover {
    background-image: linear-gradient(180deg, #864c98, #5c287a); }

.button--normal {
  background-color: #432a6d;
  background-image: linear-gradient(180deg, #864c98, #432a6d);
  color: #ffffff;
  border-radius: 8px;
  box-shadow: 3px 3px 3px 0 rgba(0, 0, 0, 0.25);
  font-size: 14px;
  font-weight: 700;
  padding: 15px 35px; }
  .button--normal:hover {
    background-image: linear-gradient(180deg, #864c98, #5c287a); }

.button--no-border {
  border: 0 #fff solid;
  border-radius: 0; }

.button--gray {
  background-color: #4e4e4e;
  background-image: linear-gradient(180deg, #959595, #4e4e4e); }
  .button--gray:hover {
    background-image: linear-gradient(180deg, #959595, #4e4e4e); }

.button--play {
  position: relative;
  padding-right: 3.75rem; }
  .button--play > span {
    display: block;
    position: absolute;
    top: 53%;
    right: 2rem;
    z-index: 10;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
    .button--play > span svg {
      display: inline-block;
      stroke-width: 0;
      stroke: white;
      fill: white;
      width: 1.25rem;
      height: 1.25rem; }

.background-purple-gradient {
  background-image: linear-gradient(180deg, #5c287a, #432a6d); }

.background-light-purple-gradient {
  background-image: linear-gradient(180deg, #864c98, #432a6d); }

.media {
  padding: 30px; }

.content {
  background-color: #ffffff;
  padding: 30px;
  color: #432a6d; }
  .content > img {
    width: 100%;
    max-width: 500px;
    margin: 0 auto; }

.carousel {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  width: 95%; }
  .carousel .carousel-slide {
    padding: 0;
    margin: 0;
    width: 100%; }
    .carousel .carousel-slide .thumbnail {
      padding: 20px 10px; }
    .carousel .carousel-slide a {
      display: block; }
    .carousel .carousel-slide img {
      display: block;
      width: 100%; }
  @media screen and (min-width: 450px) {
    .carousel .carousel-slide {
      width: initial; }
      .carousel .carousel-slide img {
        width: initial; } }

.buckets {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.bucket {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  text-align: center;
  padding: 40px 20px;
  color: #ffffff;
  margin: 10px;
  width: calc(195px - 40px); }

.icon img {
  height: 27px; }

.bucket--content {
  font-size: 13px; }
  .bucket--content h3 {
    margin-top: 0;
    margin-bottom: 0;
    text-transform: uppercase; }

.signup-form {
  margin: 3.75rem auto 0 auto; }

.form-errors {
  max-width: 600px; }

.email-yes {
  margin: 0 auto; }
  @media screen and (min-width: 700px) {
    .email-yes {
      max-width: 430px; } }

.email-disclaimer {
  margin: 0 auto 3.75rem;
  max-width: 460px;
  font-size: 0.625rem;
  line-height: 1.2em; }

.signup-form--border {
  border: 0.0625rem #432a6d solid; }
  .signup-form--border .email-disclaimer {
    margin-bottom: 1.875rem; }

.form-signup .display--flex {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  @media screen and (min-width: 700px) {
    .form-signup .display--flex {
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; } }

.form-signup a {
  color: #5c287a; }

.form-signup input, .form-signup select {
  font-family: "Gotham A", "Gotham B";
  font-weight: 400;
  font-size: 12px;
  padding: 0.625rem;
  border: 0;
  color: #432a6d;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

.form-group {
  margin: 0.625rem;
  border: 2px #432a6d solid; }

.footer-copy {
  max-width: 768px;
  color: #ffffff;
  margin: 0 auto;
  text-align: center;
  font-size: 0.875rem;
  line-height: 1.8; }

footer {
  margin-top: 40px;
  margin-left: auto;
  margin-right: auto;
  color: #ffffff;
  text-align: center; }
  footer nav ul {
    list-style-type: none;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  footer nav li a {
    display: inline-block;
    padding: 0 0.3125rem;
    color: #ffffff;
    text-decoration: none; }
  @media screen and (max-width: 1020px) {
    footer nav ul.display--flex {
      display: block;
      padding-left: 0; }
    footer nav li {
      display: block;
      line-height: 1.25rem; } }

.cast-creative-nav .button {
  margin: 0 5px 10px;
  min-width: 13.125rem; }
  .cast-creative-nav .button.active {
    border: 2px solid #ffffff;
    font-weight: 700; }

@media only screen and (min-width: 561px) {
  .members {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; } }

.member {
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  clear: both;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  float: left;
  margin-bottom: 20px;
  margin-left: calc(50vw - 165px);
  max-width: 100%;
  position: relative; }
  .member:not(.active-member):hover .member-overlay {
    opacity: 1; }
  @media only screen and (min-width: 561px) {
    .member {
      display: inline-block;
      -webkit-flex: 0 1 40%;
          -ms-flex: 0 1 40%;
              flex: 0 1 40%;
      left: auto;
      margin: 0 15px 0;
      text-align: center; } }
  @media only screen and (min-width: 768px) {
    .member {
      -webkit-flex: 0 1 25%;
          -ms-flex: 0 1 25%;
              flex: 0 1 25%; } }
  @media only screen and (min-width: 1025px) {
    .member {
      -webkit-flex: 0 1 15%;
          -ms-flex: 0 1 15%;
              flex: 0 1 15%; } }

.member-photo {
  display: block;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin-right: 20px;
  position: relative; }
  @media only screen and (min-width: 561px) {
    .member-photo {
      margin-bottom: 15px;
      margin-left: auto;
      margin-right: auto; } }

.member-avatar {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  border: 2px solid #432a6d;
  border-radius: 100%;
  height: 9.0625rem;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  width: 9.0625rem;
  padding: 0; }
  @media only screen and (min-width: 561px) {
    .member-avatar {
      border-width: 4px;
      height: 10rem;
      width: 10rem; }
      .member-bio .member-avatar {
        height: 13.75rem;
        -webkit-flex: 0 0 13.75rem;
            -ms-flex: 0 0 13.75rem;
                flex: 0 0 13.75rem;
        width: 13.75rem; } }

.member-overlay {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background-color: #432a6d;
  color: #ffffff;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 110%;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: -5%;
  opacity: 0;
  position: absolute;
  text-decoration: underline;
  top: -5%;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  transition: all 0.35s ease-out;
  width: 110%;
  font-size: 0.75rem; }

.member-details {
  position: relative;
  border: 0;
  background-color: transparent; }

.member-selected {
  left: 10px;
  position: absolute;
  top: 100%; }
  .member-selected svg {
    fill: #ffffff;
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
    width: 1.25rem; }
  @media only screen and (max-width: 560px) {
    .active-member .member-selected {
      display: block; } }

.member-bio-container {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 20px;
  -webkit-perspective: 1;
          perspective: 1;
  position: relative;
  width: 100%;
  margin-top: 20px; }

.member-bio {
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  clear: both;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-left: auto;
  margin-right: auto;
  max-width: 90%;
  padding: 20px; }
  .member-bio.hide {
    display: none; }

.member-bio-close {
  cursor: pointer;
  margin-bottom: -0.3125rem;
  padding: 0.625rem; }

.member-bio-content a {
  text-decoration: underline; }

@media only screen and (min-width: 561px) {
  .member-bio-close {
    -webkit-align-self: flex-end;
        -ms-flex-item-align: end;
            align-self: flex-end;
    margin-bottom: -2.5rem;
    margin-top: 0; }
  .member-bio-name, .member-bio-title {
    text-align: center; } }

@media only screen and (min-width: 768px) {
  .member-bio {
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    max-width: 53.75rem;
    width: 90%; }
  .member-bio-close {
    -webkit-align-self: flex-start;
        -ms-flex-item-align: start;
            align-self: flex-start;
    margin-bottom: 0;
    margin-top: -15px;
    margin-right: -7.5px; }
  .member-bio-details {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    padding-left: 30px; }
  .member-bio-name, .member-bio-title {
    text-align: left; } }
