.home {
  padding: 0px;

  > header {
    background: rgb(255,255,255);
    @include background-image(url('/static/images/shot-2-large.jpg'));
    background-size: cover;
    border-bottom: 1px solid rgb(80,80,80);
    @include box-shadow(0 1px 0 0 rgba(255,255,255, 0.9), inset 0 -1px 5px 0 rgba(0,0,0, 0.1));
    @include clearfix;
    margin-top: -69px;
    overflow: hidden;
    padding: 149px 0px 90px;
    width: flex-grid(12);

    .outer-wrapper {
      @extend .animation-home-header-pop-up;
      max-width: 1200px;
      margin: 0 auto;
      position: relative;
      text-align: center;

      &:hover {
        .main-cta {
          @include box-shadow(0 1px 16px 0 rgba($blue, 0.35));
        }
      }
    }

    .inner-wrapper {
      background: rgba(255,255,255, 0.9);
      border: 1px solid rgb(100,100,100);
      @include box-shadow(0 4px 25px 0 rgba(0,0,0, 0.5));
      @include inline-block;
      padding: 30px 50px 30px;
      position: relative;
      text-align: center;
      z-index: 1;
    }

    .title {
      @include inline-block;
      //margin-right: 50px;
      //padding-right: 50px;
      position: relative;
      text-align: left;
      vertical-align: middle;

      &::before {
        @extend .faded-vertical-divider;
        //content: "";
        display: block;
        height: 170px;
        position: absolute;
        right: 0px;
        top: -20px;
      }

      &::after {
        @extend .faded-vertical-divider-light;
        content: "";
        display: block;
        height: 170px;
        position: absolute;
        right: -1px;
        top: -20px;
      }

      h1 {
        border-bottom: 1px solid rgb(200,200,200);
        margin-bottom: 25px;
        padding-bottom: 15px;
        text-align: left;
        text-shadow: 0 1px rgba(255,255,255, 0.6);
      }

      .main-cta {
        @include clearfix;
        float: left;
        margin-right: flex-gutter();
        @include transition(all, 0.15s, linear);
        width: flex-grid(6);

        > a.find-courses {
          @include button(shiny, $blue);
          @include box-sizing(border-box);
          @include border-radius(3px);
          display: block;
          font: normal 1.2rem/1.6rem $sans-serif;
          letter-spacing: 1px;
          padding: 10px 0px;
          text-transform: uppercase;
          text-align: center;
          width: flex-grid(12);

          &:hover {
            color: rgb(255,255,255);
          }
        }
      }

      .secondary-actions {
        @include box-sizing(border-box);
        @include clearfix;
        float: left;
        height: 47px;
        width: flex-grid(6);

        a.intro-video {
          background: rgb(245,245,245);
          @include background-image(linear-gradient(-90deg, rgb(250,250,250), rgb(235,235,235)));
          border: 1px solid rgb(200,200,200);
          @include border-radius(30px);
          @include box-sizing(border-box);
          @include box-shadow(inset 0 -1px 0 0 rgba(255,255,255, 0.8), inset 0 1px 0 0 rgba(255,255,255, 0.8));
          @include clearfix;
          display: block;
          float: left;
          height: 100%;
          overflow: hidden;
          text-align: middle;
          width: flex-grid(6);

          &:hover {
            text-decoration: none;

            p {
              color: $base-font-color;
            }

            .video {
              opacity: 1;
            }
          }

          .video {
            @include background-image(url('/static/images/shot-2-large.jpg'));
            background-size: cover;
            border-right: 1px solid rgb(200,200,200);
            @include border-left-radius(30px);
            @include box-shadow(1px 0 0 0 rgba(255,255,255, 0.6), inset 1px 0 0 0 rgba(255,255,255, 0.8), inset 0 0 0 1px rgba(255,255,255, 0.7));
            float: left;
            height: 100%;
            opacity: 0.8;
            position: relative;
            @include transition(all, 0.15s, linear);
            width: 60px;
            vertical-align: middle;

            .play {
              @include background-image(url('/static/images/portal-icons/video-play-icon.png'));
              background-size: cover;
              height: 31px;
              margin-left: -13px;
              margin-top: -15px;
              left: 50%;
              position: absolute;
              top: 50%;
              width: 31px;
            }
          }

          p {
            color: $lighter-base-font-color;
            font-style: italic;
            padding-top: 10px;
            text-align: center;
            text-shadow: 0 1px rgba(255,255,255, 0.6);
            @include transition(all, 0.15s, linear);
            vertical-align: middle;
          }
        }
        .social-sharing {
          @include box-sizing(border-box);
          float: left;
          height: 44px;
          margin-right: flex-gutter();
          position: relative;
          text-align: center;
          width: flex-grid(6);

          &:hover {
            .sharing-message {
              opacity: 1;
              top: 56px;
            }
          }

          .sharing-message {
            @include background-image(linear-gradient(-90deg, rgba(0,0,0, 0.9) 0%,
                                                              rgba(0,0,0, 0.7) 100%));
            border: 1px solid rgba(0,0,0, 0.5);
            @include border-radius(4px);
            @include box-shadow(0 4px 25px 0 rgba(0,0,0, 0.5));
            @include box-sizing(border-box);
            color: rgb(255,255,255);
            float: right;
            font-family: $serif;
            font-size: 0.9em;
            font-style: italic;
            left: 50%;
            margin-left: -110px;
            opacity: 0;
            padding: 6px 10px;
            position: absolute;
            text-align: center;
            @include transition(all, 0.15s, ease-out);
            top: 65px;
            width: 220px;

            &:hover {
              opacity: 0;
            }
          }

          .share {
            height: 44px;
            @include inline-block;
            margin-right: 10px;
            opacity: 0.5;
            @include transition(all, 0.15s, linear);
            width: 44px;

            &:hover {
              opacity: 1;
            }

            img {
              width: 100%;
            }

            &:last-child {
              margin-right: 0px;
            }
          }
        }
      }
    }

    .media {
      background: #fff;
      border: 1px solid rgb(200,200,200);
      @include box-sizing(border-box);
      float: left;
      @include inline-block;
      padding: 1px;
      position: relative;
      vertical-align: middle;
      //width: 210px;
      width: flex-grid(3);
      z-index: 2;

      .hero {
        //height: 125px;
        height: 100%;
        overflow: hidden;
        position: relative;

        .play-intro {
          @include background-image(linear-gradient(-90deg, rgba(0,0,0, 0.65), rgba(0,0,0, 0.75)));
          @include border-radius(4px);
          @include box-shadow(0 1px 12px 0 rgba(0,0,0, 0.4));
          border: 2px solid rgba(255,255,255, 0.8);
          height: 80px;
          left: 50%;
          margin-top: -40px;
          margin-left: -40px;
          position: absolute;
          top: 50%;
          @include transition(all, 0.15s, linear);
          width: 80px;

          &::after {
            color: rgba(255,255,255, 0.8);
            content: "\25B6";
            display: block;
            font: normal 2em/1em $sans-serif;
            left: 50%;
            margin-left: -11px;
            margin-top: -16px;
            position: absolute;
            text-shadow: 0 -1px rgba(0,0,0, 0.8);
            top: 50%;
          }
        }

        img {
          display: block;
          width: 100%;
        }
      }

      &:hover {
        cursor: pointer;

        .play-intro {
          @include background-image(linear-gradient(-90deg, rgba(0,0,0, 0.75), rgba(0,0,0, 0.8)));
          @include box-shadow(0 1px 12px 0 rgba(0,0,0, 0.5));
          border-color: rgba(255,255,255, 0.9);

          &::after {
            color: rgba(255,255,255, 1);
          }
        }
      }
    }
  }

  .highlighted-courses {
    @include box-sizing(border-box);
    margin-bottom: 40px;
    position: relative;
    width: flex-grid(12);
    z-index: 1;

    > h2 {
      @include background-image(linear-gradient(-90deg, rgb(250,250,250), rgb(230,230,230)));
      border: 1px solid rgb(200,200,200);
      @include border-radius(4px);
      border-top-color: rgb(190,190,190);
      @include box-shadow(inset 0 0 0 1px rgba(255,255,255, 0.4), 0 0px 12px 0 rgba(0,0,0, 0.2));
      color: $lighter-base-font-color;
      letter-spacing: 1px;
      margin-bottom: 0px;
      margin-top: -15px;
      padding: 10px 10px 8px;
      text-align: center;
      text-transform: uppercase;
      text-shadow: 0 1px rgba(255,255,255, 0.6);

      .lowercase {
        color: $lighter-base-font-color;
        font-family: inherit;
        font-size: inherit;
        font-style: inherit;
        text-transform: none;
      }
    }
  }

  .university-partners {
    @include background-image(linear-gradient(180deg, rgba(245,245,245, 0) 0%,
                                                      rgba(245,245,245, 1) 50%,
                                                      rgba(245,245,245, 0) 100%));
    border-bottom: 1px solid rgb(210,210,210);
    margin-bottom: 0px;
    overflow: hidden;
    position: relative;
    width: flex-grid(12);

    &::before {
      @extend .faded-hr-divider-medium;
      content: "";
      display: block;
    }

    &::after {
      @extend .faded-hr-divider-medium;
      content: "";
      display: block;
    }

    .partners {
      margin: 0 auto;
      padding: 20px 0px;
      text-align: center;

      li.partner {
        @include inline-block;
        padding: 0px 30px;
        position: relative;
        vertical-align: middle;

        &::before {
          @extend .faded-vertical-divider;
          content: "";
          display: block;
          height: 80px;
          right: 0px;
          position: absolute;
          top: -5px;
          width: 1px;
        }

        &::after {
          @extend .faded-vertical-divider-light;
          content: "";
          display: block;
          height: 80px;
          right: 1px;
          position: absolute;
          top: -5px;
          width: 1px;
        }

        &:last-child {
          &::before {
            display: none;
          }

          &::after {
            display: none;
          }
        }
      }

      a {
        @include transition(all, 0.25s, ease-in-out);

        &::before {
          @include background-image(radial-gradient(50% 50%, circle closest-side, rgba(255,255,255, 1) 0%, rgba(255,255,255, 0) 100%));
          content: "";
          display: block;
          height: 200px;
          left: 50%;
          margin-left: -100px;
          margin-top: -100px;
          opacity: 0;
          width: 200px;
          position: absolute;
          @include transition(all, 0.25s, ease-in-out);
          top: 50%;
          z-index: 1;
        }

        .name {
          bottom: -60px;
          left: 0px;
          position: absolute;
          text-align: center;
          @include transition(all, 0.25s, ease-in-out);
          width: 100%;
          z-index: 2;

          > span {
            color: $base-font-color;
            font: 800 italic 1.4em/1.4em $sans-serif;
            text-shadow: 0 1px rgba(255,255,255, 0.6);
            @include transition(all, 0.15s, ease-in-out);

            &:hover {
              color: $lighter-base-font-color;
            }
          }
        }

        img {
          max-width: 160px;
          position: relative;
          @include transition(all, 0.25s, ease-in-out);
          vertical-align: middle;
          z-index: 2;
        }

        &:hover {
          &::before {
            opacity: 1;
          }

          .name {
            bottom: 20px;
          }

          img {
            top: -100px;
          }
        }
      }
    }
  }

  .more-info {
    border: 1px solid rgb(200,200,200);
    margin-bottom: 80px;
    width: flex-grid(12);

    header {
      @include background-image(linear-gradient(-90deg, rgb(250,250,250), rgb(230,230,230)));
      border-bottom: 1px solid rgb(200,200,200);
      @include clearfix;
      padding: 10px 20px 8px;

      h2 {
        float: left;
        margin: 0px;
        text-shadow: 0 1px rgba(255,255,255, 0.6);
      }

      a {
        color: $lighter-base-font-color;
        float: right;
        font-style: italic;
        font-family: $serif;
        padding-top: 3px;
        text-shadow: 0 1px rgba(255,255,255, 0.6);

        &:hover {
          color: $base-font-color;
        }
      }
    }

    .news {
      @include box-sizing(border-box);
      padding: 20px;
      width: flex-grid(12);

      .blog-posts {
        @include clearfix;

        > article {
          border: 1px dotted transparent;
          border-color: rgb(220,220,220);
          @include box-sizing(border-box);
          @include clearfix;
          float: left;
          margin-right: flex-gutter();
          padding: 10px;
          @include transition(all, 0.15s, linear);
          width: flex-grid(4);

          &:hover {
            background: rgb(248,248,248);
            border: 1px solid rgb(220,220,220);
            @include box-shadow(inset 0 0 3px 0 rgba(0,0,0, 0.1));
          }

          &:last-child {
            margin-right: 0px;
          }

          .post-graphics {
            border: 1px solid rgb(190,190,190);
            @include box-sizing(border-box);
            display: block;
            float: left;
            height: 65px;
            margin-right: flex-gutter();
            overflow: hidden;
            width: flex-grid(4);
            vertical-align: top;

            img {
              min-height: 100%;
              max-width: 100%;
            }
          }

          .post-name {
            float: left;
            width: flex-grid(8);
            vertical-align: top;

            a {
              color: $base-font-color;
              font: 700 1em/1.2em $sans-serif;

              &:hover {
                color: $blue;
                text-decoration: underline;
              }
            }

            .post-date {
              color: $lighter-base-font-color;
              letter-spacing: 1px;
            }
          }
        }
      }
    }
  }
}
