@charset "UTF-8";
/**
 * Map-get but with errors
 * @param  {String} $key
 * @param  {Map} $map
 * @return {String}
 */
/**
 * get a color value
 * @param  {String} $key
 * @return {String}
 */
/**
 * get a type size value
 * @param  {String} $key
 * @return {String}
 */
/**
 * Theme Sizes
 *
 *  1. Typography
 *
 *  2. Logos
 *
 *  3. Baseline and margins
 *
 *  4. Border radiuses
 *
 *  5. Box shadow
 *
 *  6. Box shadow
 *
 *  7. Layout Sizes
 *
 *  8. Media Queries
 */
/**
 * Theme URLs
 *
 *  1. Loaders
 *
 *  2. Icons
 *
 *  3. Backgrounds
 *
 *  4. Avatars
 *
 *  5. Welcome step
 */
/**
 * Theme Colours
 *
 *  1. Base colours
 *      1a. Colour declarations
 *      1b. Theme variables
 *
 */
/**
 * Theme Colours
 *
 *  0. Feature Colours
 *
 *  1. Messaging
 *      1.1     Exceptions
 *      1.2     Messages
 *      1.3     TBA
 *      1.4     Tooltips
 *      1.5     Notifications
 *      1.6     Empty page messages
 *
 *  2. Components/Blocks
 *      2.1     Buttons
 *      2.2     Masthead
 *      2.3     Navbar
 *      2.4     Cards
 *      2.5     Trackers
 *      2.6     Signpost Navigation
 *      2.7     Success Text
 *      2.8     Island
 *      2.9     Featured List
 *      2.10    Widgets
 *      2.11    Forms
 *      2.12    Avatar
 *      2.13    Stats nav
 *      2.14    Context menu
 *      2.15    Progress bar
 *      2.16    Checklist
 *      2.17    Checkboxes
 *      2.18    Radios
 *      2.19    Tabbed nav
 *      2.20    Helpers
 *      2.21    Leaderboard
 *      2.22    Badge
 *      2.23    Widget with visualisation
 *      2.24    Countdown
 *      2.25    Details list
 *      2.26    Visualisations
 *      2.27    Punchcard
 *      2.28    Stat list
 *      2.29    User block
 *      2.30    Search input
 *      2.31    Lists
 *      2.32    Range Input
 *      2.33    Articles
 *      2.34    Breadcrumb
 *      2.35    Skip Navigation
 *      2.36    Media List
 *      2.37    Dialogs
 *      2.38    Action panel
 *      2.39    Banner
 *      2.40    UX Skeleton
 *      2.41    Panel
 *      2.42    Dashboard
 *      2.43    Grid list
 *      2.44    Watermark
 *      2.45    Divider
 *      2.46    Footer
 *      2.47    Datatable
 *      2.48    Comments
 *      2.49    Wall upload
 *      2.50    Alert
 *      2.51    Highlight
 *      2.52    Accordion
 *      2.53    List view
 *
 *  3. Icons
 *
 *  4. Page content
 *      4.1     Blockquotes
 *
 *  5. Page specific
 *      5.1     Onboarding
 *      5.2     Details
 *      5.3     Auth
 *      5.4     Emails
 *      5.5     Home
 */
@font-face {
  font-family: 'SourceSansPro';
  src: url("/fonts/SourceSansPro-Regular.eot?#iefix") format("embedded-opentype"), url("/fonts/SourceSansPro-Regular.woff") format("woff"), url("/fonts/SourceSansPro-Regular.ttf") format("truetype"), url("/fonts/SourceSansPro-Regular.svg") format("svg"); }

@font-face {
  font-family: 'SourceSansProLight';
  src: url("/fonts/SourceSansPro-Light.eot?#iefix") format("embedded-opentype"), url("/fonts/SourceSansPro-Light.woff") format("woff"), url("/fonts/SourceSansPro-Light.ttf") format("truetype"), url("/fonts/SourceSansPro-Light.svg") format("svg"); }

@font-face {
  font-family: 'SourceSansProSemibold';
  src: url("/fonts/SourceSansPro-Semibold.eot?#iefix") format("embedded-opentype"), url("/fonts/SourceSansPro-Semibold.woff") format("woff"), url("/fonts/SourceSansPro-Semibold.ttf") format("truetype"), url("/fonts/SourceSansPro-Semibold.svg") format("svg"); }

/**
 *  TABLE O' CONTENTS
 *
 * 1. Non-compiled styles
 * 2. Base styles (browser defaults, reset etc.)
 * 3. Components (components that make up modules)
 * 4. Layout (Different modules used throughout)
 * 5. Modules (Different modules used throughout)
 * 6. Vendors (3rd party code)
 *
 * Other things
 * - ok
 */
/**
 * 1. Non-compiled stypes
 */
/**
* @file mixins.scss
* @author Paul Cooper
*
* Our own mixins library
*/
/**
 * backgrounds - Handles different background tyoes
 * because autoprefixer doesn't support complex gradients
 * @param  {String} $bgColor background: $bgColor;
 * @param  {String} $bgImage background: $bgImage;
 * @param  {String} $bgGradient background: $bgGradient;
 * @param  {String} $bgGradientFilter background: $bgGradientFilter;
 * @param  {String} $bgGradientWebkit background: $bgGradientWebkit;
 */
/**
 * 2. Base styles
 */
/**
* @file reset.scss
* @author Paul Cooper
*
* CSS reset, based on the html5doctor.com reset
*/
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  min-height: 100%;
  height: auto !important;
  /**
    * Ensures the page does not jump around if there
    * is a visible scrollbar and the page content
    * is less height than the window.
    */
  overflow-y: scroll; }

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

body {
  line-height: 1;
  min-height: initial !important;
  top: auto !important; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

fieldset {
  min-width: 0; }

nav ul,
li {
  list-style: none; }

blockquote,
q {
  quotes: none; }

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

del {
  text-decoration: line-through; }

abbr[title],
dfn[title] {
  cursor: help; }

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

input,
select {
  vertical-align: middle; }

svg {
  width: 100%;
  height: 100%; }

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }

summary {
  display: block; }
  summary::-webkit-details-marker {
    display: none; }

.form-field__slider-range-label, .truncated, .single-row, .radio-custom__label, .nav-menu__item-title, .stat-list__key, .stat-list__value, .featured-stat-list__key, .featured-stat-list__value, .widget__title, .checklist__description--preview, .badge-value__title, .badge-value__description, .badge-progress__position-label, .badge-progress__value-label, .badge-progress__difference-label, .badge-finished__place-label {
  overflow: hidden;
  white-space: nowrap;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  line-height: 1.2; }

.page-content:after, .page-content--full-width:after, .load-more:after, .island:after, .form-field__thirds-wrapper:after, .clearfix:after, .splitter:after, .masthead:after, .masthead__dropdown-content:after, .grid:after, .page__main:after, .listing:after, .media:after, .tab-nav:after, .stat-list:after, .dashboard-nav:after, .tile__link--split:after, .context-menu__content:after, .tile-grid:after, .details-list:after, .spin-button:after, .countdown-list:after, .challenge-header:after, .team-viz:after, .day-progress:after {
  content: '';
  display: block;
  clear: both; }

.inline-loading--unbranded, .widget-summary__loader {
  background: url("/images/loaders/spinner-white.gif") center center no-repeat;
  -webkit-background-size: 32px 32px;
          background-size: 32px 32px; }
  @supports ((-webkit-animation-delay: 0s) or (animation-delay: 0s)) {
    .inline-loading--unbranded, .widget-summary__loader {
      background-image: url("/images/loaders/spinner-white.svg");
      -webkit-animation: animateSpinner 1s infinite linear;
              animation: animateSpinner 1s infinite linear; } }

.overlay-loading:after, .inline-loading--branded, .layout-onboarding__panel--loading:after, .level--loading:before {
  background: url("/images/loaders/spinner.gif") center center no-repeat;
  -webkit-background-size: 32px 32px;
          background-size: 32px 32px; }
  @supports ((-webkit-animation-delay: 0s) or (animation-delay: 0s)) {
    .overlay-loading:after, .inline-loading--branded, .layout-onboarding__panel--loading:after, .level--loading:before {
      background-image: url("/images/loaders/spinner.svg");
      -webkit-animation: animateSpinner 1s infinite linear;
              animation: animateSpinner 1s infinite linear; } }

@-webkit-keyframes animateSpinner {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

@keyframes animateSpinner {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

@-webkit-keyframes scaleIn {
  from {
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }
  to {
    -webkit-transform: scale(1);
            transform: scale(1); } }

@keyframes scaleIn {
  from {
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }
  to {
    -webkit-transform: scale(1);
            transform: scale(1); } }

@-webkit-keyframes scaleOut {
  from {
    -webkit-transform: scale(1);
            transform: scale(1); }
  to {
    -webkit-transform: scale(0.9);
            transform: scale(0.9); } }

@keyframes scaleOut {
  from {
    -webkit-transform: scale(1);
            transform: scale(1); }
  to {
    -webkit-transform: scale(0.9);
            transform: scale(0.9); } }

/**
* @file _browser_defaults.scss
* Styling for Default elements
*/
/**
* Body styles
*/
body {
  background-color: #ffffff;
  color: #4d4d4d;
  font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-size: 14px; }

input,
textarea,
select,
button {
  font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
  font-weight: 400; }

/**
* Headings
*/
.h1,
.h2,
.h3,
.h4,
.h5 {
  font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
  font-weight: 100;
  line-height: 1.4; }

.h1 {
  font-size: 40px; }

.h2 {
  font-size: 24px; }

.h3 {
  font-size: 20px; }

.h4 {
  font-size: 16px; }

.h5 {
  font-size: 14px; }

.h6 {
  font-size: 12px; }

.strong {
  font-family: "SourceSansProSemibold", Helvetica, Arial, sans-serif;
  font-weight: 600; }

.lowercase {
  text-transform: lowercase; }

.page-title {
  border-bottom: 1px solid #cccccc;
  margin-bottom: 20px;
  position: relative;
  font-size: 40px;
  font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
  font-weight: 400;
  padding-bottom: 5px; }

.paragraph {
  line-height: 1.4;
  margin-bottom: 20px; }
  .paragraph:not(.paragraph--has-margin):last-child {
    margin-bottom: 0; }
  .paragraph--no-margin {
    margin: 0; }
  .paragraph--compact {
    margin-bottom: 10px; }
  .paragraph--danger {
    color: #e1514a; }
  .paragraph--secondary {
    font-size: 16px;
    color: #707070; }
  .paragraph--note {
    font-size: 12px; }
  .paragraph--sm {
    font-size: 12px;
    line-height: 1.4; }

.font-regular {
  font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
  font-weight: 400; }

.font-thin {
  font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
  font-weight: 100; }

.font-bold {
  font-family: "SourceSansProSemibold", Helvetica, Arial, sans-serif;
  font-weight: 600; }

.font-nav {
  font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
  font-weight: 100; }

.font-monospaced {
  font-family: "Courier New", Courier, monospace; }

.help-text {
  font-size: 12px;
  font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
  font-weight: 100;
  line-height: 1.2; }
  .help-text--subtle {
    color: #999999; }

.error-text {
  color: #f2dede; }

.danger-text {
  color: #e1514a; }

.success-text {
  color: #2ba361; }

.warning-text {
  color: #f9c551; }

.info-text {
  color: #2196f3; }

#tt-form-access_code {
  text-transform: uppercase; }

/**
* $file content.scss
* $author Paul Cooper
*
* Main content layout styles
*/
.page-content {
  padding: 0 20px 20px;
  width: 100%;
  float: left; }
  .page-content--top {
    padding-top: 20px; }
  .page-content:not(:last-child) {
    padding-bottom: 0; }
  .page-content--narrow {
    max-width: 640px;
    margin: 0 auto;
    float: none; }
  .page-content--full-width {
    padding: 0; }
    @media all and (min-width: 501px) {
      .page-content--full-width {
        padding: 0 20px; } }
  @media all and (min-width: 801px) {
    .page-content--top {
      padding-top: 40px; } }
  .page-content__title {
    position: relative;
    font-size: 40px;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100; }
    @media all and (min-width: 501px) {
      .page-content__title {
        font-size: 50px; } }
  .page-content__subtitle {
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid #efefef; }
  .page-content__description {
    margin: 20px 0 0;
    color: #4d4d4d;
    font-size: 16px;
    line-height: 1.4; }
  .page-content__title-tooltip {
    display: inline-block;
    position: relative;
    top: -5px; }
  @media all and (min-width: 501px) {
    .page-content__title-actions {
      width: auto;
      position: absolute;
      right: 0;
      top: 0; } }
  .page-content__title-btn {
    margin: 10px;
    width: 100%;
    text-align: center; }
    .page-content__title-btn:last-child {
      margin-right: 0; }
    @media all and (min-width: 501px) {
      .page-content__title-btn {
        width: auto;
        float: left; } }
  .page-content .results-page {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: 0 auto; }
    .page-content .results-page .shadow {
      -webkit-box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.2), 0 4px 20px 0 rgba(0, 0, 0, 0.19);
              box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.2), 0 4px 20px 0 rgba(0, 0, 0, 0.19); }
  .page-content .flex-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }

.content-header {
  -webkit-box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
  margin: 0 0 20px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  background: #ffffff;
  position: relative; }
  @media all and (max-width: 501px) {
    .content-header--full-width {
      -webkit-border-radius: 0;
              border-radius: 0; } }
  .content-header--no-margin {
    margin: 0; }
  .content-header__inner {
    padding: 20px;
    position: relative; }
    .content-header__inner--compact {
      padding: 10px; }
      @media all and (min-width: 501px) {
        .content-header__inner--compact {
          padding: 20px 10px; } }
    .content-header__inner--media {
      padding: 60px 20px;
      min-height: 100px;
      -webkit-background-size: cover;
              background-size: cover;
      background-repeat: no-repeat;
      background-position: 50%;
      -webkit-border-radius: 3px 3px 0 0;
              border-radius: 3px 3px 0 0;
      color: #ffffff;
      text-align: center; }
      @media all and (min-width: 501px) {
        .content-header__inner--media {
          min-height: 150px;
          padding: 60px; } }
      .content-header__inner--media .content-header__link {
        color: #ffffff; }
    .content-header__inner--empty {
      min-height: 250px; }
    .content-header__inner--action-plans {
      background-image: url("/images/backgrounds/action-plans.jpg"); }
      @media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (-o-min-device-pixel-ratio: 13 / 10), only screen and (-webkit-min-device-pixel-ratio: 1.25), only screen and (-o-min-device-pixel-ratio: 5/4), only screen and (min-resolution: 120dpi) {
        .content-header__inner--action-plans {
          background-image: url("/images/backgrounds/action-plans-2x.jpg"); } }
    .content-header__inner--challenges {
      background-image: url("/images/backgrounds/challenges.jpg"); }
      @media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (-o-min-device-pixel-ratio: 13 / 10), only screen and (-webkit-min-device-pixel-ratio: 1.25), only screen and (-o-min-device-pixel-ratio: 5/4), only screen and (min-resolution: 120dpi) {
        .content-header__inner--challenges {
          background-image: url("/images/backgrounds/challenges-2x.jpg"); } }
    .content-header__inner--channels {
      background-image: url("/images/backgrounds/channels.jpg"); }
      @media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (-o-min-device-pixel-ratio: 13 / 10), only screen and (-webkit-min-device-pixel-ratio: 1.25), only screen and (-o-min-device-pixel-ratio: 5/4), only screen and (min-resolution: 120dpi) {
        .content-header__inner--channels {
          background-image: url("/images/backgrounds/channels-2x.jpg"); } }
    .content-header__inner--trackers {
      background-image: url("/images/backgrounds/trackers.jpg"); }
      @media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (-o-min-device-pixel-ratio: 13 / 10), only screen and (-webkit-min-device-pixel-ratio: 1.25), only screen and (-o-min-device-pixel-ratio: 5/4), only screen and (min-resolution: 120dpi) {
        .content-header__inner--trackers {
          background-image: url("/images/backgrounds/trackers-2x.jpg"); } }
    .content-header__inner--social {
      background-image: url("/images/backgrounds/social.jpg"); }
      @media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (-o-min-device-pixel-ratio: 13 / 10), only screen and (-webkit-min-device-pixel-ratio: 1.25), only screen and (-o-min-device-pixel-ratio: 5/4), only screen and (min-resolution: 120dpi) {
        .content-header__inner--social {
          background-image: url("/images/backgrounds/social-2x.jpg"); } }
    .content-header__inner--dashboard {
      background-image: url("/images/backgrounds/dashboard.jpg"); }
      @media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (-o-min-device-pixel-ratio: 13 / 10), only screen and (-webkit-min-device-pixel-ratio: 1.25), only screen and (-o-min-device-pixel-ratio: 5/4), only screen and (min-resolution: 120dpi) {
        .content-header__inner--dashboard {
          background-image: url("/images/backgrounds/dashboard-2x.jpg"); } }
    .content-header__inner--seperated {
      border-top: 1px solid #efefef; }
    .content-header__inner--no-description {
      -webkit-border-radius: 3px;
              border-radius: 3px; }
    .content-header__inner--alt {
      background: #efefef; }
  .content-header__context-menu {
    top: 10px;
    right: 10px;
    position: absolute; }
  .content-header__title-intro, .content-header__title, .content-header__description {
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    line-height: 1.4;
    display: block; }
  .content-header__title-intro {
    margin-bottom: 20px; }
  .content-header__description {
    margin-top: 20px; }
    .content-header__description--compact {
      margin: 10px; }
  .content-header__title {
    display: block;
    font-size: 32px;
    line-height: 1.4; }
    .content-header__title--bordered {
      padding: 20px 0;
      border-top: 1px solid #efefef;
      border-bottom: 1px solid #efefef; }
  .content-header__img {
    text-align: center;
    color: transparent;
    position: relative; }
    .content-header__img--with-hero {
      margin-top: -20px;
      margin-bottom: -40px;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%); }
      @media all and (min-width: 501px) {
        .content-header__img--with-hero {
          padding: 0;
          -webkit-transform: none;
              -ms-transform: none;
                  transform: none;
          margin: 0; } }
    @media all and (min-width: 501px) {
      .content-header__img {
        position: absolute; } }
    .content-header__img--hex-size {
      width: 60px;
      height: 60px; }
  .content-header__body {
    padding: 40px 0 0;
    text-align: center; }
    .content-header__body--small {
      padding-top: 20px; }
    @media all and (min-width: 501px) {
      .content-header__body {
        text-align: left;
        margin-left: 80px;
        padding: 0; } }
  .content-header__description-image {
    max-height: 100px; }
    @media all and (min-width: 501px) {
      .content-header__description-image {
        position: relative;
        left: 15px;
        z-index: 10; } }
  @media all and (min-width: 501px) {
    .content-header__description-body {
      position: relative;
      left: -15px; } }
  .content-header__button {
    font-size: 14px;
    border: 0;
    margin: 0;
    width: 100%;
    cursor: pointer;
    color: #4d4d4d; }
    .content-header__button:hover {
      text-decoration: underline; }

.load-more {
  text-align: center;
  display: block;
  padding: 0 10px 10px;
  line-height: 20px; }
  .load-more__label {
    padding-left: 30px;
    position: relative; }
  .load-more__icon {
    content: '';
    -webkit-animation: animateSpinner 1s infinite linear;
            animation: animateSpinner 1s infinite linear;
    width: 20px;
    height: 20px;
    color: inherit;
    position: absolute;
    left: 0;
    display: inline-block;
    -webkit-background-size: 20px 20px;
            background-size: 20px; }

.section-title {
  margin-bottom: 10px; }
  .section-title--with-link {
    padding-right: 150px; }
  .section-title__link {
    max-width: 150px; }

.upload__img-container {
  height: 80px;
  width: 80px;
  color: #ffffff;
  position: relative; }

.upload__hex-img-size {
  width: 100px;
  height: 80px; }

.scaleable-image {
  max-width: 100%;
  max-height: 100%; }

.page-error {
  text-align: center; }
  .page-error__icon {
    width: 60px;
    height: 60px;
    fill: #e1514a;
    display: inline-block; }
    .page-error__icon:before {
      content: '!';
      text-align: center;
      width: 100%;
      height: 100%;
      font-size: 40px;
      line-height: 60px;
      color: #ffffff;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 30; }
    @media all and (min-width: 501px) {
      .page-error__icon {
        width: 80px;
        height: 80px;
        margin-top: 20px; }
        .page-error__icon:before {
          font-size: 50px;
          line-height: 80px; } }
  .page-error__title {
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400;
    line-height: 1.2;
    font-size: 24px;
    margin-top: 20px; }
    @media all and (min-width: 501px) {
      .page-error__title {
        font-size: 32px;
        font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
        font-weight: 100; } }
  .page-error__description {
    line-height: 1.4;
    font-size: 14px;
    margin-top: 10px; }
    @media all and (min-width: 501px) {
      .page-error__description {
        font-size: 16px; } }

.icon-wrapper__right {
  position: absolute;
  bottom: 19%;
  left: 95%; }

.island {
  padding: 20px;
  -webkit-box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
  margin: 0 0 20px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  background: #ffffff; }
  .island--no-padding {
    padding: 0; }
  .island--no-bottom-padding {
    padding-bottom: 0; }
  .island--no-overflow {
    overflow: hidden; }
  .island--horizontal-large-padding {
    padding: 20px 40px; }
  .island--side-padding {
    padding: 0 20px; }
  .island--no-margin {
    margin: 0; }
  .island--top-margin {
    margin-top: 20px; }
  .island--with-icon {
    position: relative; }
  .island--no-bottom-border-radius {
    -webkit-border-radius: 3px 3px 0 0;
            border-radius: 3px 3px 0 0; }
  .island--no-top-border-radius {
    -webkit-border-radius: 0 0 3px 3px;
            border-radius: 0 0 3px 3px; }
  .island--highlight {
    background: #ae2573;
    color: #ffffff; }
    .island--highlight__icon {
      fill: #ffffff; }
  .island--message .island__inner {
    padding: 0;
    max-width: 460px;
    margin-right: auto;
    margin-left: auto;
    text-align: center; }
  .island__inner {
    padding: 20px; }
    .island__inner:first-child {
      -webkit-border-top-right-radius: 3px;
              border-top-right-radius: 3px;
      -webkit-border-top-left-radius: 3px;
              border-top-left-radius: 3px; }
    .island__inner:last-child {
      -webkit-border-bottom-right-radius: 3px;
              border-bottom-right-radius: 3px;
      -webkit-border-bottom-left-radius: 3px;
              border-bottom-left-radius: 3px; }
    .island__inner--horizontal-padding {
      padding: 0 20px; }
    .island__inner--vertical-padding {
      padding: 20px 0; }
    .island__inner--vertical-padding-large {
      padding: 40px 20px; }
    .island__inner--top-rule {
      border-top: 1px solid #efefef; }
    .island__inner--top-rule-narrow {
      position: relative; }
      .island__inner--top-rule-narrow:before {
        content: ' ';
        position: absolute;
        top: 0;
        left: 25%;
        width: 50%;
        height: 1px;
        background: #efefef; }
    .island__inner--all-but-top {
      padding-top: 0; }
    .island__inner--highlight {
      background: #ae2573;
      color: #ffffff; }
    @media all and (min-width: 501px) {
      .island__inner--flag {
        display: table; } }
    .island__inner-highlight-icon {
      color: #ffffff;
      fill: #ffffff; }
    .island__inner-avatar {
      width: 40px;
      height: 40px; }
  .island__section-heading {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #efefef; }
    .island__section-heading--button-row {
      margin: 0;
      border: 0;
      padding: 20px 0 0; }
  .island__heading {
    margin-bottom: 20px;
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400; }
    .island__heading--no-margin {
      margin: 0; }
  .island__subheading {
    margin-bottom: 10px;
    font-family: "SourceSansProSemibold", Helvetica, Arial, sans-serif;
    font-weight: 600; }
  .island__button-row {
    margin-top: 20px;
    text-align: center; }
    @media all and (min-width: 501px) {
      .island__button-row {
        text-align: right; } }
  .island__button-label {
    line-height: 35px;
    display: block; }
    @media all and (min-width: 501px) {
      .island__button-label {
        display: inline;
        margin-right: 20px; } }
  .island__paragraph {
    font-size: 16px;
    line-height: 1.4;
    margin-bottom: 20px; }
    .island__paragraph--no-margin {
      margin: 0; }
  .island__img {
    height: 200px; }
    .island__img--with-border {
      border-top: 1px solid #cccccc; }
    @media all and (min-width: 501px) {
      .island__img {
        height: 250px; } }
    .island__img--small {
      height: 100px; }
      @media all and (min-width: 501px) {
        .island__img--small {
          height: 150px; } }
    .island__img--points {
      background-color: #ae2573;
      color: #ffffff;
      position: relative;
      text-align: left; }
  .island__badge {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%); }
  .island__icon {
    width: 30px;
    height: 30px;
    position: absolute; }
    .island__icon-buffer {
      padding-right: 30px; }
    .island__icon-top-right {
      right: 20px;
      top: 20px; }

.form-field {
  position: relative; }
  .form-field--with-spacer {
    margin-top: 20px; }
  .form-field--right-content {
    margin-bottom: 20px; }
    @media all and (min-width: 501px) {
      .form-field--right-content {
        float: right;
        margin-bottom: 0; } }
  @media all and (min-width: 501px) {
    .form-field--left-label {
      padding-left: 150px; } }
  .form-field--left-label .form-field__link {
    display: none; }
  @media all and (min-width: 501px) {
    .form-field--long-label {
      padding-left: 300px; }
      .form-field--long-label .form-field__label--long {
        max-width: 280px; } }
  .form-field--with-button {
    float: left;
    width: 75%; }
  .form-field__label {
    display: block;
    font-size: 16px;
    line-height: 1.4;
    padding-bottom: 10px; }
    @media all and (min-width: 501px) {
      .form-field__label--left {
        position: absolute;
        top: 21px;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%);
        left: 0;
        max-width: 140px;
        padding-bottom: 0;
        white-space: nowrap;
        overflow: hidden;
        -o-text-overflow: ellipsis;
           text-overflow: ellipsis; } }
    .form-field__label--large {
      font-size: 20px;
      font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
      font-weight: 100;
      line-height: 1.2;
      padding-bottom: 0; }
    .form-field__label--inline {
      display: inline;
      padding-right: 5px; }
    .form-field__label--small {
      font-size: 14px;
      color: #707070;
      vertical-align: middle;
      padding-bottom: 0; }
    .form-field__label--no-padding {
      padding: 0; }
    .form-field__label-optional {
      padding-left: 5px;
      font-size: 14px;
      font-style: italic; }
      @media all and (min-width: 501px) {
        .form-field__label-optional {
          display: block;
          padding-left: 0;
          padding-right: 5px; } }
    .form-field__label--disabled {
      color: #707070; }
  .form-field__link {
    float: right;
    font-size: 14px;
    line-height: 22.4px;
    margin-bottom: 10px; }
  .form-field__instruction {
    display: block;
    font-size: 14px;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    color: #707070;
    line-height: 1.4;
    font-style: italic;
    margin-top: 11px;
    margin-bottom: 10px; }
    .form-field__instruction--onboarding {
      margin-top: 0; }
    .form-field__instruction--assessment {
      margin-top: 10px; }
  .form-field__description {
    display: block;
    margin-top: 10px;
    line-height: 1.4;
    font-size: 12px; }
  .form-field__oversised {
    width: 90px !important; }
  .form-field__prefix, .form-field__suffix {
    padding: 0 10px;
    position: absolute;
    top: 0;
    font-size: 16px;
    line-height: 42px;
    height: 100%; }
  .form-field__prefix {
    left: 0;
    padding-left: 0;
    color: #707070;
    width: 50px; }
  .form-field__suffix {
    right: 0;
    padding-right: 0;
    color: #707070;
    width: 70px; }
  .form-field__value {
    font-size: 14px;
    line-height: 42px;
    height: 100%; }
  .form-field__message {
    margin-top: 10px;
    -webkit-border-radius: 3px;
            border-radius: 3px; }
  .form-field__slider-range-label {
    font-size: 14px;
    float: left;
    width: 50%; }
  .form-field__slider-label {
    text-align: right;
    font-size: 14px;
    line-height: 14px; }
    @media all and (max-width: 501px) {
      .form-field__slider-label {
        position: absolute;
        top: -28px;
        right: 0; } }
    @media all and (min-width: 501px) {
      .form-field__slider-label {
        line-height: 1.4; } }
    .form-field__slider-label-max {
      color: #707070; }
    @media all and (min-width: 501px) {
      .form-field__slider-label-value {
        font-size: 16px; } }
  .form-field__control {
    display: block;
    font-size: 16px;
    color: #4d4d4d; }
    .form-field__control-label {
      display: block;
      padding-left: 10px;
      position: relative;
      top: 1px;
      line-height: 1.4; }
      .form-field__control-label--disabled {
        color: #707070; }
    .form-field__control-icon {
      height: 100%;
      width: 20px;
      margin-right: 10px;
      float: left; }
    .form-field__control--text, .form-field__control--password, .form-field__control--date, .form-field__control--multiselect {
      border: 1px solid #cccccc;
      width: 100%;
      padding: 10px;
      background-color: #ffffff;
      -webkit-border-radius: 3px;
              border-radius: 3px;
      -webkit-appearance: none;
      -moz-appearance: none;
      min-height: 42px;
      color: inherit; }
      .form-field__control--text:focus, .form-field__control--password:focus, .form-field__control--date:focus, .form-field__control--multiselect:focus {
        outline: none;
        border-color: #ae2573; }
      .form-field__control--text:disabled, .form-field__control--password:disabled, .form-field__control--date:disabled, .form-field__control--multiselect:disabled {
        background-color: #efefef;
        color: #707070; }
      .form-field__control--text::-webkit-input-placeholder, .form-field__control--password::-webkit-input-placeholder, .form-field__control--date::-webkit-input-placeholder, .form-field__control--multiselect::-webkit-input-placeholder {
        color: #b2b2b2; }
      .form-field__control--text::-moz-placeholder, .form-field__control--password::-moz-placeholder, .form-field__control--date::-moz-placeholder, .form-field__control--multiselect::-moz-placeholder {
        color: #b2b2b2; }
      .form-field__control--text::-ms-input-placeholder, .form-field__control--password::-ms-input-placeholder, .form-field__control--date::-ms-input-placeholder, .form-field__control--multiselect::-ms-input-placeholder {
        color: #b2b2b2; }
      .form-field__control--text::placeholder, .form-field__control--password::placeholder, .form-field__control--date::placeholder, .form-field__control--multiselect::placeholder {
        color: #b2b2b2; }
    .form-field__control--oversised {
      width: 94%; }
    .form-field__control--select {
      display: block;
      border: 1px solid #cccccc;
      width: 100%;
      padding: 10px;
      background-color: #ffffff;
      -webkit-border-radius: 3px;
              border-radius: 3px;
      -webkit-appearance: none;
      -moz-appearance: none;
      position: relative;
      color: inherit; }
      .form-field__control--select:focus {
        outline: none;
        border-color: #ae2573; }
      .form-field__control--select:disabled {
        background-color: #efefef;
        color: #707070; }
      .form-field__control--select-category {
        width: auto;
        display: inline-block;
        background: #ffffff;
        padding: 5px 5px 5px 10px;
        -webkit-border-radius: 3px;
                border-radius: 3px;
        border: 1px solid #cccccc;
        font-size: 14px;
        line-height: 1.4; }
        @supports (pointer-events: all) {
          .form-field__control--select-category {
            padding-right: 31px; } }
        .form-field__control--select-category::-ms-expand {
          display: none; }
        .form-field__control--select-category-disabled {
          padding-right: 10px; }
    .form-field__control--radio, .form-field__control--checkbox {
      display: inline-block;
      margin: 0;
      padding: 0;
      position: absolute;
      top: 0;
      opacity: 0; }
    .form-field__control--radio:focus + .form-field__control-label--radio:before {
      -webkit-box-shadow: 0 0 0 3px rgba(174, 37, 115, 0.2);
              box-shadow: 0 0 0 3px rgba(174, 37, 115, 0.2); }
    .form-field__control--radio:disabled + .form-field__control-label--radio:before {
      border-color: #efefef; }
    .form-field__control--radio:disabled + .form-field__control-label--radio:after {
      -webkit-transform: scale(0, 0);
          -ms-transform: scale(0, 0);
              transform: scale(0, 0); }
    .form-field__control--radio:checked + .form-field__control-label--radio:before {
      border-color: #ae2573; }
    .form-field__control--radio:checked + .form-field__control-label--radio:after {
      -webkit-transform: scale(1, 1);
          -ms-transform: scale(1, 1);
              transform: scale(1, 1); }
    .form-field__control-label--radio {
      padding: 0 0 0 30px;
      cursor: pointer; }
      .form-field__control-label--radio:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 19px;
        height: 19px;
        background-color: transparent;
        border: 2px solid #cccccc;
        -webkit-border-radius: 50%;
                border-radius: 50%;
        z-index: 1;
        -webkit-box-shadow: 0;
                box-shadow: 0;
        -webkit-transition: border-color 0.28s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.3s ease-in-out;
        transition: border-color 0.28s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.3s ease-in-out;
        -o-transition: border-color 0.28s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.3s ease-in-out;
        transition: border-color 0.28s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.3s ease-in-out;
        transition: border-color 0.28s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out; }
      .form-field__control-label--radio:after {
        content: '';
        position: absolute;
        top: 5px;
        left: 5px;
        width: 9px;
        height: 9px;
        background-color: #ae2573;
        -webkit-border-radius: 50%;
                border-radius: 50%;
        z-index: 2;
        -webkit-transform: scale(0, 0);
            -ms-transform: scale(0, 0);
                transform: scale(0, 0);
        -webkit-transition: -webkit-transform 0.28s cubic-bezier(0.4, 0, 0.2, 1);
        transition: -webkit-transform 0.28s cubic-bezier(0.4, 0, 0.2, 1);
        -o-transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1);
        transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1);
        transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.28s cubic-bezier(0.4, 0, 0.2, 1); }
    .form-field__control--checkbox:focus + .form-field__control-label--checkbox:before {
      -webkit-box-shadow: 0 0 0 3px rgba(174, 37, 115, 0.2);
              box-shadow: 0 0 0 3px rgba(174, 37, 115, 0.2); }
    .form-field__control--checkbox:disabled + .form-field__control-label--checkbox {
      opacity: 0.5;
      cursor: not-allowed; }
      .form-field__control--checkbox:disabled + .form-field__control-label--checkbox:before {
        border-color: #efefef; }
    .form-field__control--checkbox:checked + .form-field__control-label--checkbox:before {
      background-color: #ae2573;
      border-color: #ae2573; }
    .form-field__control--checkbox:checked + .form-field__control-label--checkbox:after {
      border-color: #ffffff; }
    .form-field__control--disabled:disabled + .form-field__control-label--disabled:before {
      background-color: #cccccc;
      border-color: #cccccc; }
    .form-field__control-label--checkbox {
      padding: 0 0 0 30px;
      cursor: pointer; }
      .form-field__control-label--checkbox:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 18px;
        height: 18px;
        background-color: transparent;
        border: 2px solid #cccccc;
        -webkit-border-radius: 2px;
                border-radius: 2px;
        z-index: 1;
        -webkit-box-shadow: 0;
                box-shadow: 0;
        -webkit-transition: all 0.28s cubic-bezier(0.4, 0, 0.2, 1);
        -o-transition: all 0.28s cubic-bezier(0.4, 0, 0.2, 1);
        transition: all 0.28s cubic-bezier(0.4, 0, 0.2, 1); }
      .form-field__control-label--checkbox:after {
        content: '';
        position: absolute;
        top: 2px;
        left: 6px;
        width: 6px;
        height: 12px;
        border-bottom: 2px solid transparent;
        border-right: 2px solid transparent;
        -webkit-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
                transform: rotate(45deg);
        z-index: 2;
        -webkit-transition: border-color 0.28s cubic-bezier(0.4, 0, 0.2, 1);
        -o-transition: border-color 0.28s cubic-bezier(0.4, 0, 0.2, 1);
        transition: border-color 0.28s cubic-bezier(0.4, 0, 0.2, 1); }
    .form-field__control--textarea {
      max-width: 100%;
      padding: 10px;
      min-height: 0;
      line-height: 1;
      resize: vertical; }
    .form-field__control--split {
      display: inline-block;
      width: 40%; }
    .form-field__control--inline {
      display: inline-block; }
  .form-field__control-wrapper {
    position: relative;
    vertical-align: middle; }
    .form-field__control-wrapper--split {
      width: 100%;
      float: left; }
      .form-field__control-wrapper--split:not(:last-child) {
        margin-bottom: 10px; }
        @media all and (min-width: 501px) {
          .form-field__control-wrapper--split:not(:last-child) {
            margin-bottom: 0; } }
      @media all and (min-width: 501px) {
        .form-field__control-wrapper--split {
          width: 50%;
          margin-bottom: 0; }
          .form-field__control-wrapper--split:not(:last-child) {
            margin-bottom: 0; } }
    .form-field__control-wrapper--radio-plain, .form-field__control-wrapper--checkbox {
      display: inline-block;
      padding: 0 20px 10px 0; }
      @media all and (min-width: 501px) {
        .form-field__control-wrapper--radio-plain, .form-field__control-wrapper--checkbox {
          padding-top: 10px; } }
    @supports (pointer-events: all) {
      .form-field__control-wrapper--select:before {
        background: #ffffff;
        display: block;
        content: '< >';
        font-size: 12px;
        font-family: "Courier New", Courier, monospace;
        -webkit-transform: rotate(90deg);
            -ms-transform: rotate(90deg);
                transform: rotate(90deg);
        position: absolute;
        top: 50%;
        right: 5px;
        margin-top: -13px;
        width: 26px;
        height: 26px;
        line-height: 26px;
        text-align: center;
        pointer-events: none;
        z-index: 20; } }
    .form-field__control-wrapper--select-category {
      display: inline-block; }
      @supports (pointer-events: all) {
        .form-field__control-wrapper--select-category:before {
          background: url("/images/icons/arrow-down-thin.png") center center no-repeat;
          -webkit-transform: translateY(-50%);
              -ms-transform: translateY(-50%);
                  transform: translateY(-50%);
          content: '';
          width: 26px;
          margin-top: 0;
          right: 1px; } }
    .form-field__control-wrapper--select-disabled:before {
      display: none; }
    .form-field__control-wrapper--with-prefix {
      padding-left: 50px; }
    .form-field__control-wrapper--with-suffix {
      padding-right: 70px; }
    .form-field__control-wrapper--thirds, .form-field__control-wrapper--half {
      margin-bottom: 10px; }
      .form-field__control-wrapper--thirds:last-child, .form-field__control-wrapper--half:last-child {
        margin-bottom: 0; }
      @media all and (min-width: 501px) {
        .form-field__control-wrapper--thirds, .form-field__control-wrapper--half {
          float: left;
          width: 33.33%;
          padding-left: 10px;
          margin-bottom: 0; } }
    @media all and (min-width: 501px) {
      .form-field__control-wrapper--half {
        width: 50%; } }
  @media all and (min-width: 501px) {
    .form-field__thirds-wrapper {
      margin-left: -10px; } }
  .form-field__goals-input-container {
    display: inline-block; }
  .form-field__goals .form-field__control--text {
    width: 100px;
    margin-right: 70px; }
  .form-field__goals .form-field__control--select {
    width: auto;
    padding-right: 36px; }
  .form-field__goals .form-field__control-wrapper--split {
    width: auto; }
  .form-field__goals .form-field__control--text-split {
    margin-right: 0; }

.form__list {
  margin-top: 10px; }
  .form__list--ordered .form__list-item {
    list-style-type: decimal; }
  .form__list-item {
    list-style-type: disc;
    margin: 5px 0 0 20px;
    line-height: 1.4;
    font-size: 12px; }
    .form__list-item:first-child {
      margin-top: 0; }

.form__header {
  margin: 30px 0 0;
  padding-top: 20px;
  border-top: 1px solid #efefef;
  line-height: 1.4;
  font-family: "SourceSansProSemibold", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 20px; }

.link, .link--small, .link--danger {
  font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
  font-weight: 400;
  border: 0;
  background: none;
  font-size: inherit;
  text-decoration: none;
  color: #ae2573;
  cursor: pointer; }

.link:hover, .link:active {
  text-decoration: underline; }

.link__arrow {
  display: inline-block;
  margin-left: 10px;
  text-decoration: none;
  vertical-align: middle; }
  .link__arrow-text {
    vertical-align: middle; }

.link--small {
  font-size: 12px; }

.link--danger {
  color: #e1514a; }

.link--plain {
  color: inherit;
  font-weight: inherit;
  text-decoration: none; }

.link--block {
  display: block;
  height: 100%; }

.link--alt {
  color: #ffffff;
  font-weight: inherit; }

.link--inline {
  text-decoration: underline; }

/**
 * 3. Components
 */
.label {
  display: inline;
  background: #ae2573;
  color: #ffffff;
  padding: 3px 8px;
  font-size: 12px;
  -webkit-border-radius: 3px;
          border-radius: 3px; }
  .label--small {
    font-size: 9px;
    padding: 2px 5px; }
  .label--info {
    background-color: #ae2573;
    color: #ffffff; }
  .label--success {
    background-color: #2ba361;
    color: #ffffff; }
  .label--warning {
    background-color: #fce6b4;
    border: 1px solid #dc9b08;
    color: #7a5504; }
  .label--danger {
    background-color: #e1514a;
    color: #ffffff; }

.btn, .btn-secondary, .btn-tertiary {
  display: inline-block;
  position: relative;
  text-decoration: none;
  padding: 10px 45px;
  min-width: 42px;
  border: 0;
  line-height: 1;
  -webkit-border-radius: 100px;
          border-radius: 100px;
  font-size: 14px;
  font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
  font-weight: 400;
  cursor: pointer;
  -webkit-transition: background 44ms, padding 44ms;
  -o-transition: background 44ms, padding 44ms;
  transition: background 44ms, padding 44ms;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  text-align: center;
  white-space: nowrap; }
  @media all and (min-width: 501px) {
    .btn, .btn-secondary, .btn-tertiary {
      padding: 10px 45px; } }

.btn--loading, .btn-secondary--loading, .btn-secondary--success-loading, .btn-tertiary--loading {
  pointer-events: none;
  cursor: auto;
  text-align: left;
  padding-left: 25px;
  padding-right: 65px; }
  .btn--loading:after, .btn-secondary--loading:after, .btn-secondary--success-loading:after, .btn-tertiary--loading:after {
    content: '';
    position: absolute;
    display: block;
    height: 16px;
    width: 16px;
    right: 15px;
    top: 50%;
    margin-top: -8px;
    background: url("/images/loaders/spinner-white.svg") center center no-repeat;
    -webkit-animation: animateSpinner 1s infinite linear;
            animation: animateSpinner 1s infinite linear; }

.btn {
  border: 1px solid transparent;
  background: #ae2573;
  color: #ffffff; }
  .btn:hover {
    background: #94255b; }
  .btn:focus {
    -webkit-box-shadow: 0 0 2px 2px #5a133b;
            box-shadow: 0 0 2px 2px #5a133b;
    outline: 0; }
  .btn--small-padding:not(.btn--loading) {
    padding: 5px 20px; }
  .btn--small-horizontal-padding:not(.btn--loading) {
    padding-left: 20px;
    padding-right: 20px; }
  .btn--inverse {
    background: #ffffff;
    color: #ae2573; }
    .btn--inverse:hover {
      background: #f2f2f2; }
    .btn--inverse:focus {
      -webkit-box-shadow: 0 0 2px 2px #cccccc;
              box-shadow: 0 0 2px 2px #cccccc;
      outline: 0; }
  .btn--small-vertical-padding:not(.btn--loading) {
    padding-top: 5px;
    padding-bottom: 5px; }
  .btn--hollow {
    color: #b3b3b3;
    border-color: #b3b3b3;
    background: transparent; }
    .btn--hollow:hover {
      color: #ffffff;
      background: #b3b3b3;
      border-color: #b3b3b3; }
  .btn--hollow-danger {
    color: #e1514a;
    border-color: #e1514a;
    background: transparent; }
    .btn--hollow-danger:hover {
      color: #ffffff;
      background: #e1514a;
      border-color: #e1514a; }
    .btn--hollow-danger.btn--loading, .btn--hollow-danger.btn--loading:hover {
      color: #ffffff;
      background-color: #e1514a;
      border-color: #e1514a; }
  .btn--disabled {
    opacity: 0.5;
    cursor: auto; }
    .btn--disabled:hover {
      background: #ae2573; }
  .btn--loading:after {
    background: url("/images/loaders/spinner-white.gif") center center no-repeat; }
    @supports ((-webkit-animation-delay: 0s) or (animation-delay: 0s)) {
      .btn--loading:after {
        background: url("/images/loaders/spinner-white.svg") center center no-repeat; } }
  .btn--loading:hover {
    background-color: #ae2573; }
  .btn--error, .btn--danger {
    background: #e1514a;
    color: #ffffff; }
    .btn--error:hover, .btn--danger:hover {
      background: #d74e3a; }
    .btn--error:focus, .btn--danger:focus {
      -webkit-box-shadow: 0 0 2px 2px #a9231c;
              box-shadow: 0 0 2px 2px #a9231c;
      outline: 0; }
  .btn--large {
    font-size: 16px;
    padding: 15px 40px; }
  .btn--xlarge {
    font-size: 16px;
    padding: 15px 80px; }
  .btn--large-text {
    font-size: 14px; }
  .btn--small-text {
    font-size: 12px; }
  .btn--full-width {
    width: 100%; }
  .btn--centered {
    display: block;
    max-width: 300px;
    margin: 0 auto; }
  .btn--blank {
    cursor: pointer;
    border: 0;
    padding: 0;
    background: transparent;
    font-size: 12px;
    text-align: left;
    position: relative;
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transition: padding 0.2s;
    -o-transition: padding 0.2s;
    transition: padding 0.2s; }
    .btn--blank-loading {
      padding-right: 20px; }
      .btn--blank-loading:after {
        content: '';
        position: absolute;
        display: block;
        height: 16px;
        width: 16px;
        right: 0;
        top: 50%;
        margin-top: -8px;
        background: url("/images/loaders/spinner.gif") center center no-repeat;
        -webkit-animation: animateSpinner 1s infinite linear;
                animation: animateSpinner 1s infinite linear; }
        @supports ((-webkit-animation-delay: 0s) or (animation-delay: 0s)) {
          .btn--blank-loading:after {
            background: url("/images/loaders/spinner.svg") center center no-repeat; } }
    .btn--blank-alt {
      color: #ae2573;
      font-size: 14px; }
    .btn--blank.btn--disabled, .btn--blank:disabled {
      opacity: 0.3;
      cursor: auto; }
    .btn--blank-text-gamma {
      font-size: 20px; }
    .btn--blank:hover {
      background-color: transparent; }
    .btn--blank-icon, .btn--blank-text {
      vertical-align: middle; }
  .btn--reset {
    cursor: pointer;
    border: 0;
    padding: 0;
    background: transparent;
    -webkit-box-shadow: none;
            box-shadow: none;
    font-size: inherit;
    line-height: inherit; }
    .btn--reset:hover {
      background-color: transparent; }
  .btn-group {
    display: block;
    margin: 0 auto 10px; }
    @media all and (min-width: 501px) {
      .btn-group {
        display: inline-block;
        margin: 0 20px 20px; }
        .btn-group:last-child {
          margin-right: 0; } }
  .btn--tab {
    padding: 20px;
    font-size: 20px;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    color: #4d4d4d; }
    .btn--tab:focus {
      outline: none; }
    .btn--tab__active {
      border-bottom: 4px solid #ae2573; }

.btn-secondary {
  background-color: transparent;
  border: 1px solid #ae2573;
  color: #ae2573;
  -webkit-box-shadow: none;
          box-shadow: none; }
  .btn-secondary:hover {
    background-color: #ae2573;
    color: #ffffff; }
  .btn-secondary:focus {
    outline: none; }
  .btn-secondary--small-padding:not(.btn-secondary--loading) {
    padding: 5px 20px; }
  .btn-secondary--small-horizontal-padding:not(.btn-secondary--loading) {
    padding-left: 20px;
    padding-right: 20px; }
  .btn-secondary--hollow {
    border-color: #b3b3b3;
    color: #b3b3b3; }
  .btn-secondary--hover-danger:hover {
    background-color: #e1514a;
    border-color: #e1514a;
    color: #ffffff; }
  .btn-secondary--large-text {
    font-size: 14px; }
  .btn-secondary--warning {
    border-color: #e1514a;
    color: #e1514a;
    fill: #e1514a;
    padding: 8px 25px; }
    .btn-secondary--warning:hover {
      border-color: #a9231c;
      fill: #a9231c;
      color: #a9231c;
      background: #ffffff; }
    .btn-secondary--warning-icon {
      width: 19px;
      height: 19px;
      display: inline-block;
      vertical-align: middle;
      margin-right: 10px; }
  .btn-secondary--loading {
    background-image: url("/images/loaders/spinner.gif");
    -webkit-background-size: 16px 16px;
            background-size: 16px 16px; }
    @supports ((-webkit-animation-delay: 0s) or (animation-delay: 0s)) {
      .btn-secondary--loading:not(.btn-secondary--hover-danger):after, .btn-secondary--loading.btn-secondary--hollow:after {
        background: url("/images/loaders/spinner.svg") center center no-repeat; } }
  .btn-secondary--square {
    -webkit-border-radius: 3px;
            border-radius: 3px; }
  .btn-secondary--success {
    border-color: #2ba361;
    color: #2ba361; }
    .btn-secondary--success:hover {
      border-color: #1b663d;
      background: transparent;
      font-weight: bold;
      color: #1b663d; }
      .btn-secondary--success:hover .btn-secondary--success-icon {
        fill: #1b663d; }
    .btn-secondary--success-loading {
      background: #2ba361;
      color: #ffffff; }
      .btn-secondary--success-loading:hover {
        background: #2ba361;
        color: #ffffff; }
      .btn-secondary--success-loading:after {
        background-image: url("/images/loaders/spinner-white.gif");
        -webkit-background-size: 16px 16px;
                background-size: 16px 16px; }
        @supports ((-webkit-animation-delay: 0s) or (animation-delay: 0s)) {
          .btn-secondary--success-loading:after {
            background: url("/images/loaders/spinner-white.svg") center center no-repeat; } }
    .btn-secondary--success-disabled {
      opacity: 0.3;
      cursor: auto; }
    .btn-secondary--success-icon {
      fill: #2ba361; }
  .btn-secondary__icon {
    vertical-align: middle;
    margin-right: 10px; }

.btn-tertiary {
  -webkit-box-shadow: none;
          box-shadow: none;
  background: #ffffff;
  color: #ae2573;
  border: 1px solid #ffffff; }
  .btn-tertiary:hover {
    background-color: rgba(255, 255, 255, 0.9); }
  .btn-tertiary--loading:after {
    background: url("/images/loaders/spinner.gif") center center no-repeat; }
    @supports ((-webkit-animation-delay: 0s) or (animation-delay: 0s)) {
      .btn-tertiary--loading:after {
        background: url("/images/loaders/spinner.svg") center center no-repeat; } }
  .btn-tertiary--loading:hover {
    background-color: #ffffff; }
  .btn-tertiary--hollow {
    background-color: transparent;
    color: #ffffff; }
    .btn-tertiary--hollow:hover {
      background-color: rgba(255, 255, 255, 0.2); }
  .btn-tertiary--hover-danger:hover {
    background-color: #e1514a;
    border-color: #e1514a;
    color: #ffffff; }
  .btn-tertiary--small-horizontal-padding {
    padding-left: 20px;
    padding-right: 20px; }

.btn-icon {
  background: #ae2573;
  color: #ffffff;
  -webkit-border-radius: 100px;
          border-radius: 100px;
  display: inline-block;
  cursor: pointer;
  -webkit-transition: background 44ms, padding 44ms;
  -o-transition: background 44ms, padding 44ms;
  transition: background 44ms, padding 44ms;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  border: none;
  padding: 2px; }
  .btn-icon:hover {
    background: #94255b; }
  .btn-icon:focus {
    -webkit-box-shadow: 0 0 2px 2px #5a133b;
            box-shadow: 0 0 2px 2px #5a133b;
    outline: 0; }
  .btn-icon__icon {
    fill: #ffffff;
    float: left;
    width: 20px;
    height: 20px; }
  .btn-icon__text {
    font-size: 14px;
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400;
    display: inline-block;
    line-height: 20px;
    padding: 0 10px 0 5px; }

.btn-success-color {
  color: #2ba361; }

#appleid-signin > div {
  cursor: pointer;
  max-width: 420px !important;
  height: 36px !important;
  margin: auto; }
  #appleid-signin > div svg {
    -webkit-border-radius: 30px;
            border-radius: 30px; }
    #appleid-signin > div svg rect {
      ry: 50%; }

.message, .message--info, .message--success, .message--warning, .message--danger {
  padding: 15px;
  line-height: 1.4;
  background-color: #efefef;
  border-color: #efefef;
  color: #4d4d4d; }
  .message p:last-child, .message--info p:last-child, .message--success p:last-child, .message--warning p:last-child, .message--danger p:last-child {
    margin: 0; }

.message--compact {
  padding: 10px; }

.message--info {
  background-color: #ae2573;
  border-color: #ae2573;
  color: #ffffff; }
  .message--info .message__close {
    fill: #ffffff; }

.message--success {
  background-color: #2ba361;
  border-color: #207b49;
  color: #ffffff; }
  .message--success .message__close {
    fill: #ffffff; }

.message--warning {
  background-color: #fce6b4;
  border-color: #dc9b08;
  color: #7a5504; }
  .message--warning .message__close {
    fill: #7a5504; }

.message--danger {
  background-color: #e1514a;
  border-color: #d52b23;
  color: #ffffff; }
  .message--danger .message__close {
    fill: #ffffff; }

.message--inline {
  border-width: 1px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  border-style: solid; }

.message--rounded {
  -webkit-border-radius: 3px;
          border-radius: 3px; }

.message__close {
  fill: #4d4d4d;
  width: 12px;
  height: 12px;
  overflow: hidden;
  display: block;
  position: absolute;
  top: 50%;
  right: 25px;
  margin-top: -6px;
  line-height: 0;
  opacity: 0.6; }
  .message__close:hover {
    text-decoration: none;
    opacity: 1; }
  .message__close--inline {
    right: 10px; }

.message__inner {
  position: relative;
  display: table; }

.message__body {
  vertical-align: middle;
  display: table-cell; }

.message__icon {
  vertical-align: middle;
  display: table-cell;
  margin-right: 10px;
  fill: #ffffff; }
  .message__icon--inline {
    fill: #7a5504; }
  .message__icon--info {
    fill: #2196f3; }

/**
 * Message container, displays messages below masthead
 */
.message-container {
  position: fixed;
  left: 0;
  top: 60px;
  width: 100%;
  z-index: 50;
  opacity: 0.97;
  -webkit-box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12); }
  .with-masthead-banner .message-container {
    top: 100px; }
  .with-masthead-banner--android .message-container {
    top: 130px; }
  .message-container .message {
    text-align: center;
    padding: 0; }
  .message-container .message__inner {
    max-width: 950px;
    margin: 0 auto;
    padding: 15px 50px; }

.message__header {
  position: relative;
  margin-bottom: 10px; }

.empty-message {
  padding: 0 10px;
  text-align: center; }
  .empty-message__heading {
    color: #950c5a; }
  .empty-message__icon {
    height: 115px; }
    @media all and (min-width: 801px) {
      .empty-message__icon {
        margin-bottom: 20px; }
        .empty-message__icon--margin {
          margin-top: 100px; } }
    .empty-message__icon--stroke-only {
      color: #950c5a;
      stroke: #950c5a;
      fill: transparent; }
    .empty-message__icon--fill-only {
      color: #950c5a;
      fill: #950c5a; }
  .empty-message__description {
    font-size: 16px;
    color: #950c5a; }

.stub {
  height: 4rem;
  visibility: hidden; }

.stub-android-banner {
  height: 70px; }

@media all and (max-width: 800px) {
  .stub {
    height: 6rem; } }

@media all and (max-width: 651px) {
  .stub {
    height: 8rem; } }

.message-panel {
  background-color: #4d4d4d;
  border-color: #4d4d4d;
  color: #ffffff;
  text-align: center; }
  .message-panel .buttons-cnt {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin-left: 20px; }
    .message-panel .buttons-cnt .btn-banner {
      background-color: white;
      color: black; }
      .message-panel .buttons-cnt .btn-banner:hover {
        background-color: #e4e4e4; }
    .message-panel .buttons-cnt .btn-banner-second {
      margin-left: 5px; }
  .message-panel--centered .message-panel__inner {
    margin: 0 auto; }
  .message-panel__inner {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 15px; }
    @media all and (max-width: 800px) {
      .message-panel__inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column; }
        .message-panel__inner .buttons-cnt {
          margin-top: 15px; } }
  .message-panel__close {
    fill: #ffffff;
    width: 12px;
    height: 12px;
    overflow: hidden;
    display: block;
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -4.8px;
    line-height: 0;
    opacity: 0.6; }
    .message-panel__close:hover {
      text-decoration: none;
      opacity: 1; }

.icon {
  overflow: hidden;
  position: relative; }
  .icon__overlay, .icon__main, .icon__back {
    position: absolute;
    width: 100%;
    height: 100%;
    display: block; }
    .icon__overlay > svg, .icon__main > svg, .icon__back > svg {
      position: absolute;
      top: 0;
      left: 0; }
  .icon__overlay {
    z-index: 30; }
  .icon__main {
    z-index: 20;
    -webkit-background-size: cover;
            background-size: cover; }
  .icon__back {
    z-index: 10; }
  .icon__badge {
    width: 50%;
    height: 50%;
    position: absolute;
    top: 0;
    right: 0;
    -webkit-transform: translate(25%, -25%);
        -ms-transform: translate(25%, -25%);
            transform: translate(25%, -25%);
    z-index: 40; }
  .icon--micro {
    width: 10px;
    height: 10px; }
  .icon--xxsmall {
    width: 15px;
    height: 15px; }
  .icon--xsmall {
    width: 20px;
    height: 20px; }
  .icon--xxsmall {
    width: 15px;
    height: 15px; }
  .icon--small {
    width: 30px;
    height: 30px; }
  .icon--med {
    width: 50px;
    height: 50px; }
  .icon--large {
    width: 90px;
    height: 90px; }
  .icon--xlarge {
    width: 150px;
    height: 150px; }
  .icon--props-small {
    width: 30px;
    height: auto; }
  .icon--align-middle {
    display: inline-block;
    vertical-align: middle; }
  .icon--white {
    fill: #ffffff;
    color: #ffffff; }
  .icon--primary {
    fill: #ae2573; }
  .icon--grey {
    fill: #cccccc; }
  .icon--darkest-grey {
    fill: #4d4d4d; }
  .icon--theme {
    fill: #ae2573;
    color: #ffffff; }
  .icon--faded-fill {
    fill: #707070; }
  .icon--warning {
    fill: #e1514a; }
  .icon--success {
    fill: #2ba361; }
  .icon--clickable {
    cursor: pointer; }
  .icon--can-overflow {
    overflow: visible; }
  .icon--with-shadow {
    -webkit-filter: drop-shadow(0 0 2px rgba(0, 0, 0, 0.2));
            filter: drop-shadow(0 0 2px rgba(0, 0, 0, 0.2)); }
  .icon-arrow {
    width: 20px;
    height: 20px;
    display: block;
    position: relative; }
    .icon-arrow__head, .icon-arrow__line {
      display: block;
      position: absolute; }
    .icon-arrow__head {
      border-top: 2px solid;
      border-right: 2px solid;
      width: 10px;
      height: 10px;
      -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
              transform: rotate(45deg);
      top: 50%;
      right: 2px;
      margin-top: -5px; }
    .icon-arrow__line {
      border-top: 2px solid;
      width: 18px;
      top: 50%;
      left: 0;
      margin-top: -1px; }
  .icon-success {
    display: inline-block;
    -webkit-border-radius: 100%;
            border-radius: 100%;
    background: #2ba361; }
    .icon-success__icon {
      fill: #ffffff;
      width: 60%;
      height: 60%; }

/**
* @file _svg-defs.scss
* @author Shaun Dillon
* Global changes to SVG icon fills, add classes to paths and target them here, this will change ALL instances of this SVG in the site
*/
.icon-frame-bg {
  fill: #ffffff; }

.icon-frame-border {
  fill: #ffffff; }

.icon-frame-shadow {
  fill: black; }

.icon--arrow-small {
  width: 13px;
  height: 20px; }

.hex__img-wrap {
  position: relative;
  margin: 0 auto 0; }

.hex__img {
  height: inherit; }

.hex__img-frame {
  position: absolute;
  left: 0;
  top: 0; }

.hex__embeded-img {
  max-width: 97%;
  height: 97%;
  display: block;
  margin: 0 auto; }

.hex--default-size {
  width: 75px;
  height: 75px; }

.hex__image-cover {
  -webkit-background-size: cover;
          background-size: cover;
  background-position: 50% 50%;
  width: 94%;
  height: 94%;
  margin-top: 3%;
  margin-left: 3%;
  display: inline-block; }

.hex .frame-image-border {
  fill: red; }

.points-hex {
  position: relative; }
  .points-hex--large {
    width: 160px;
    height: 160px; }
    .points-hex--large-centered {
      margin-left: -80px; }
    .points-hex--large__large-icon {
      width: 160px;
      height: 160px;
      position: absolute; }
  .points-hex--small {
    width: 80px;
    height: 80px; }
    .points-hex--small__small-icon {
      width: 80px;
      height: 80px;
      position: absolute; }
  .points-hex--centered {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .points-hex__text {
    width: 100%;
    position: absolute;
    color: #ffffff;
    text-align: center;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }

/**
* @file _helpers.scss
* @author Shaun Dillon
* Useful classes
*/
.hidden {
  display: none; }
  .hidden-visibly {
    visibility: hidden; }
  .hidden-absolutely {
    position: absolute;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden; }

@supports ((-webkit-filter: grayscale(100%)) or (filter: grayscale(100%))) {
  .grayscale {
    -webkit-filter: grayscale(100%);
            filter: grayscale(100%); } }

.no-overflow {
  overflow: hidden; }

.hide-text {
  font-size: 0; }

.max-width-full {
  max-width: 100%; }

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

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

.text-center {
  text-align: center; }

.text-details {
  color: #707070; }

.text-small {
  font-size: 12px; }

.text-large {
  font-size: 32px; }

.text-thin {
  font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
  font-weight: 100; }

.text-bold {
  font-family: "SourceSansProSemibold", Helvetica, Arial, sans-serif;
  font-weight: 600; }

.text-italic {
  font-style: italic; }

.text-faded {
  color: #707070; }

.text-danger {
  color: #e1514a; }

.text-action-plan-color {
  color: #ae2573; }

.text-body {
  color: #4d4d4d; }

.text-break-word {
  word-wrap: break-word; }

.block {
  display: block; }
  .block-center {
    margin: 0 auto;
    display: block; }
  @media all and (min-width: 501px) {
    .block--mobile {
      display: none; } }
  .block--desktop {
    display: none; }
    @media all and (min-width: 501px) {
      .block--desktop {
        display: block; } }

.align-top {
  vertical-align: top; }

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

.auto-width {
  width: auto; }

.width--full {
  width: 100%; }

.width--half {
  width: 50%; }

.width--third {
  width: 33.333%; }

.baseline-padding {
  padding: 20px; }
  .baseline-padding--half {
    padding: 10px; }
  .baseline-padding--quarter {
    padding: 5px; }
  .baseline-padding--double {
    padding: 40px; }
  .baseline-padding--vertical {
    padding: 20px 0; }
    .baseline-padding--vertical-double {
      padding: 40px 0; }
  .baseline-padding--horizontal {
    padding: 0 20px; }
  .baseline-padding--bottom {
    padding-bottom: 20px; }
    .baseline-padding--bottom-quarter {
      padding-bottom: 5px; }
    .baseline-padding--bottom-half {
      padding-bottom: 10px; }
    .baseline-padding--bottom-double {
      padding-bottom: 40px; }
  .baseline-padding--top {
    padding-top: 20px; }
    .baseline-padding--top-half {
      padding-top: 10px; }
    .baseline-padding--top-quarter {
      padding-top: 5px; }
  .baseline-padding--left {
    padding-left: 20px; }
    .baseline-padding--left-half {
      padding-left: 10px; }
    .baseline-padding--left-quarter {
      padding-left: 5px; }
  .baseline-padding--right {
    padding-right: 20px; }
    .baseline-padding--right-half {
      padding-right: 10px; }
    .baseline-padding--right-double {
      padding-right: 40px; }

.baseline-margin {
  margin: 20px; }
  .baseline-margin--half {
    margin: 10px; }
  .baseline-margin--horizontal {
    margin: 0 20px; }
  .baseline-margin--bottom {
    margin-bottom: 20px; }
    .baseline-margin--bottom-double {
      margin-bottom: 40px; }
    .baseline-margin--bottom-half {
      margin-bottom: 10px; }
    .baseline-margin--bottom-quarter {
      margin-bottom: 5px; }
  .baseline-margin--right {
    margin-right: 20px; }
    .baseline-margin--right-double {
      margin-right: 40px; }
    .baseline-margin--right-half {
      margin-right: 10px; }
    .baseline-margin--right-quarter {
      margin-right: 5px; }
  .baseline-margin--left {
    margin-left: 20px; }
    .baseline-margin--left-double {
      margin-left: 40px; }
    .baseline-margin--left-half {
      margin-left: 10px; }
    .baseline-margin--left-quarter {
      margin-left: 5px; }
  .baseline-margin--top {
    margin-top: 20px; }
    .baseline-margin--top-quarter {
      margin-top: 5px; }
    .baseline-margin--top-half {
      margin-top: 10px; }
    .baseline-margin--top-double {
      margin-top: 40px; }
  .baseline-margin--last-child:last-of-type {
    margin-bottom: 0; }

.negative-baseline-margin {
  margin: -20px; }
  .negative-baseline-margin--top {
    margin-top: -20px; }
    .negative-baseline-margin--top-half {
      margin-top: -10px; }
  .negative-baseline-margin--right {
    margin-right: -20px; }
  .negative-baseline-margin--bottom {
    margin-bottom: -20px; }
  .negative-baseline-margin--left {
    margin-left: -20px; }

.text-uppercase {
  text-transform: uppercase; }

.text-spaced {
  letter-spacing: 3px; }

.text-spaced-2x {
  letter-spacing: 5px; }

.background {
  background-position: 50% 50%;
  background-repeat: no-repeat; }
  .background--contain {
    -webkit-background-size: contain;
            background-size: contain; }
  .background--cover {
    -webkit-background-size: cover;
            background-size: cover; }

.translucent {
  opacity: 0.5;
  cursor: auto; }

.capitalize {
  text-transform: capitalize; }

.display-block {
  display: block; }

.display-inline {
  display: inline; }

.display-inline-block {
  display: inline-block; }

.display-table {
  display: table; }
  .display-table--fixed {
    table-layout: fixed; }

.display-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.display-flex-col {
  -webkit-box-flex: 1;
      -ms-flex: 1 1;
          flex: 1 1;
  -ms-flex-positive: 1;
      flex-grow: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.rule-top {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #efefef; }
  .rule-top--no-margin {
    margin-top: 0; }
  .rule-top--no-padding {
    padding-top: 0; }
  .rule-top--danger {
    border-top: 1px solid #d52b23; }
  .rule-top--highlight {
    border-top: 1px solid #950c5a; }
  .rule-top--no-border {
    border-top: none; }

.rule-bottom {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #efefef; }
  .rule-bottom--no-margin {
    margin-bottom: 0; }
  .rule-bottom--half {
    padding-bottom: 10px;
    margin-bottom: 10px; }
  .rule-bottom--no-padding {
    padding-bottom: 0; }

.inline-list {
  font-size: 0; }
  .inline-list__item {
    display: inline-block; }
    .inline-list__item--set-text {
      font-size: 14px; }
    .inline-list__item--bullet:not(:first-of-type):before {
      content: '\2022';
      padding: 0 5px; }

.vert-center__container {
  position: relative; }

.vert-center__left, .vert-center__right, .vert-center__center {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }

.vert-center__left {
  left: 0; }

.vert-center__right {
  right: 0; }

.vert-center__center {
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto; }

.absolute__container {
  position: relative; }

.absolute--right {
  position: absolute;
  right: 0; }
  .absolute--right-top {
    position: absolute;
    right: 0;
    top: 0; }

.absolute--bottom {
  position: absolute;
  bottom: 0; }

.pull-right {
  float: right; }

.pull-left {
  float: left; }

.clear {
  clear: both; }

.overlay {
  height: 100%;
  width: 100%;
  position: fixed;
  left: 0; }
  .overlay-loading {
    top: 60px;
    background-color: #ffffff;
    z-index: 100; }
    .onboarding .overlay-loading {
      top: 0; }
    .overlay-loading:after {
      content: '';
      display: block;
      height: 32px;
      width: 32px;
      position: absolute;
      top: calc(50% - 60px);
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      left: 0;
      right: 0;
      margin: 0 auto; }
      @media all and (min-width: 801px) {
        .overlay-loading:after {
          top: 300px; } }
    @media all and (min-width: 801px) {
      .overlay-loading {
        position: absolute;
        display: block;
        top: 0; } }

.inline-loading {
  min-height: 300px; }
  .inline-loading--centered {
    margin: 0 auto;
    max-width: 300px; }
  .inline-loading--small {
    width: 16px;
    height: 16px;
    display: inline-block;
    -webkit-background-size: 16px 16px;
            background-size: 16px 16px; }
  .inline-loading--medium {
    width: 32px;
    height: 32px;
    display: inline-block;
    -webkit-background-size: 32px 32px;
            background-size: 32px 32px; }
  .inline-loading__container {
    max-width: 300px;
    margin: 0 auto;
    text-align: center; }

.max-width-container {
  max-width: 100%; }

.no-line-height {
  line-height: 0; }

.large-line-height {
  line-height: 1.4; }

.text-decoration--none {
  text-decoration: none; }

.bordered-text {
  font-size: 16px;
  padding: 20px 0;
  color: #ffffff;
  width: 80%;
  border-top: 1px solid #ffffff;
  border-bottom: 1px solid #ffffff; }
  @media all and (min-width: 501px) {
    .bordered-text--large {
      font-size: 32px; } }
  .bordered-text__super-heading {
    position: absolute;
    top: -30px;
    font-size: 14px;
    font-style: italic;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto; }

.strikethrough-text {
  text-decoration: line-through; }

.no-focus:focus {
  outline: transparent; }

.banner {
  display: block;
  width: 100%;
  background: #ae2573;
  color: #ffffff;
  padding: 10px 20px;
  font-weight: normal; }

.dot-seperator:before {
  content: '\2022';
  display: inline-block;
  margin: 0 5px; }

.single-row {
  height: 1.2em; }

.border-radius--small {
  -webkit-border-radius: 3px;
          border-radius: 3px; }

.checkbox-tab__label {
  background: #ffffff;
  display: inline-block;
  border: 2px solid #cccccc;
  color: #4d4d4d;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  padding-left: 15px;
  padding-right: 35px;
  position: relative;
  cursor: pointer; }
  .checkbox-tab__label:hover {
    color: #ae2573;
    border-color: #ae2573; }
    .checkbox-tab__label:hover:after {
      color: #ae2573; }
  .checkbox-tab__label:before, .checkbox-tab__label:after {
    content: none; }
  .checkbox-tab__label--arrow:after {
    background: url("/images/icons/arrow-right-thin.svg") no-repeat 50% 50%; }
  .checkbox-tab__label--plus:after {
    background: url("/images/icons/plus.svg") no-repeat 50% 50%; }
  .checkbox-tab__label--active {
    background: #ae2573;
    color: #ffffff;
    border-color: #ae2573; }
    .checkbox-tab__label--active:after {
      background: url("/images/icons/arrow-right-thin-white.svg") no-repeat 50% 50%; }
    .checkbox-tab__label--active:hover {
      background: #950c5a;
      border-color: #950c5a;
      color: #ffffff; }
    .checkbox-tab__label--active:focus {
      background: #950c5a;
      border-color: #950c5a;
      color: #ffffff; }

.checkbox-tab__input {
  position: absolute;
  left: -9999px; }
  .checkbox-tab__input:focus + .checkbox-tab__label {
    color: #ae2573;
    border-color: #ae2573; }
    .checkbox-tab__input:focus + .checkbox-tab__label:after {
      color: #ae2573; }
  .checkbox-tab__input:checked + .checkbox-tab__label {
    background: #ae2573;
    color: #ffffff;
    border-color: #ae2573; }
    .checkbox-tab__input:checked + .checkbox-tab__label:after {
      content: '';
      display: block;
      width: 16px;
      height: 12px;
      background: url("/images/icons/tick.svg") no-repeat 50% 50%;
      top: 18px;
      left: auto;
      right: 10px;
      border: 0;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .checkbox-tab__input:checked + .checkbox-tab__label:hover {
      background: #950c5a;
      border-color: #950c5a;
      color: #ffffff; }
  .checkbox-tab__input:checked:focus + .checkbox-tab__label {
    background: #950c5a;
    border-color: #950c5a;
    color: #ffffff; }

.radio-custom__label {
  padding: 0 10px;
  display: block;
  position: relative;
  cursor: pointer;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  border: 1px solid #cccccc;
  height: 44px;
  line-height: 44px;
  font-size: 16px; }
  .radio-custom__label:before, .radio-custom__label:after {
    content: none; }

.radio-custom__icon {
  fill: #ae2573; }

.radio-custom__input {
  position: absolute;
  left: -9999px;
  overflow: hidden; }
  .radio-custom__input:focus + .radio-custom__label {
    border-color: #ae2573; }
  .radio-custom__input:checked + .radio-custom__label {
    background: #ae2573;
    color: #ffffff;
    -webkit-background-size: 80% 80%;
            background-size: 80%;
    border-color: #ae2573; }
    .radio-custom__input:checked + .radio-custom__label .radio-custom__icon {
      fill: #ffffff; }

.instructions-list {
  counter-reset: instruction-counter; }
  .instructions-list__item {
    display: table; }
    .instructions-list__item:not(:last-child) {
      margin-bottom: 20px; }
    .instructions-list__item:before {
      content: counter(instruction-counter, decimal);
      counter-increment: instruction-counter;
      display: block;
      line-height: 40px;
      height: 40px;
      width: 40px;
      -webkit-border-radius: 50%;
              border-radius: 50%;
      text-align: center;
      font-size: 16px;
      background: #efefef;
      margin-right: 20px; }
    .instructions-list__item-content {
      display: table-cell;
      vertical-align: middle;
      width: 100%;
      line-height: 1.4;
      font-size: 16px; }

.dot-list__dot {
  margin-right: 5px;
  width: 10px;
  height: 10px;
  background: #ae2573;
  -webkit-border-radius: 5px;
          border-radius: 5px;
  display: inline-block; }
  .dot-list__dot--completed {
    background: #ae2573; }

.list {
  padding-left: 20px; }
  .list:not(:last-child) {
    margin-bottom: 20px; }
  .list--ul .list__item {
    list-style: disc; }
  .list--ol .list__item {
    list-style: decimal; }
  .list--tick {
    padding-left: 0;
    margin-top: 20px;
    line-height: 1.4; }
    .list--tick .list__item {
      background: url(/images/icons/tick-list.svg) no-repeat left 5px;
      padding-left: 40px;
      margin-left: 0;
      text-align: left; }
  .list__item {
    margin-left: 20px;
    margin-bottom: 20px; }
    .list__item:last-of-type {
      margin-bottom: 0; }
    .list__item--no-margin {
      margin-bottom: 0; }
    .list__item--no-margin-left {
      margin-left: 0; }

.table {
  width: 100%;
  text-align: left; }
  .table--centered {
    text-align: center; }
  .table__cell {
    padding: 20px; }
    .table__cell:first-child {
      padding-left: 0; }
    .table__cell--condensed {
      padding: 10px 2px; }

.ux__image {
  background-color: #ae2573; }

.list-view {
  margin-bottom: 20px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  background-color: #ffffff;
  -webkit-box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12); }
  .list-view__header , .list-view__body , .list-view__footer {
    padding-right: 20px;
    padding-left: 20px; }
  .list-view__header:empty, .list-view__body:empty, .list-view__footer:empty {
    display: none; }
  .list-view__header {
    padding-top: 20px; }
    .list-view__header--divide {
      padding-bottom: 20px; }
      .list-view__header--divide:not(:last-child) {
        border-bottom: 1px solid #efefef; }
  .list-view__footer {
    padding-bottom: 20px; }
    .list-view__footer:first-child, .list-view__footer--divide {
      padding-top: 20px; }
    .list-view__footer--divide:not(:first-child) {
      border-top: 1px solid #efefef; }
      .list-view__header + .list-view__footer--divide:not(:first-child) {
        border-top-width: 0; }
  .list-view__body:not(.list-view__body--flush) {
    padding-top: 20px;
    padding-bottom: 20px; }
  .list-view__items {
    display: table;
    width: 100%;
    border-collapse: collapse; }
  .list-view__item {
    display: table-row; }
    .list-view__item:not(:first-child) {
      border-top: 1px solid #efefef; }
    .list-view__item--start .list-view__cell {
      vertical-align: top; }
    .list-view__item--end .list-view__cell {
      vertical-align: bottom; }
    .list-view__item--active {
      background-color: #efefef; }
    .list-view__item .list-item-header {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-align: baseline;
          -ms-flex-align: baseline;
              align-items: baseline;
      margin-bottom: 10px; }
  .list-view__item-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .list-view__item-flex:not(:first-child) {
      border-top: 1px solid #efefef; }
  .list-view__cell {
    display: table-cell;
    vertical-align: middle;
    padding-top: 20px;
    padding-bottom: 20px;
    padding-left: 20px; }
    .list-view__cell--start {
      vertical-align: top; }
    .list-view__cell--end {
      vertical-align: middle; }
    .list-view__cell--grow {
      width: 100%; }
    .list-view__cell--1-10 {
      width: 10%;
      padding: 20px 0; }
    .list-view__cell:last-child {
      padding-right: 20px; }
    .list-view__cell--no-padding-left {
      padding-left: 0; }
    .list-view__cell--no-padding {
      padding: 0; }

.labelled-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .labelled-icon__icon, .labelled-icon__copy {
    display: inline-block;
    vertical-align: middle; }
  .labelled-icon__icon {
    -ms-flex-negative: 0;
        flex-shrink: 0; }
  .labelled-icon__copy--truncated {
    white-space: nowrap;
    overflow: hidden;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis; }
  .labelled-icon--start {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
    .labelled-icon--start .labelled-icon__copy {
      vertical-align: top; }
  .labelled-icon--end {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
    .labelled-icon--end .labelled-icon__copy {
      vertical-align: bottom; }

.section:not(:first-child) {
  margin-top: 20px; }

.section--featured {
  padding-bottom: 20px;
  border-bottom: 1px solid #cccccc; }
  .section--featured:last-child {
    margin-bottom: 20px; }
  .section--featured-no-divide {
    border-bottom: none !important; }

.link-complex {
  text-decoration: none; }
  .link-complex:hover .link-complex__target, .link-complex:focus .link-complex__target {
    text-decoration: underline; }

.link-container a {
  color: #fff !important; }

.splitter {
  margin-top: -20px;
  /**
     * Only apply flex when @supports is supported,
     * as IE <= 11 won't be able to remove the :after
     * and the splitter will break.
     */ }
  .splitter:not(:last-child) {
    margin-bottom: 20px; }
  @supports (display: flex) {
    .splitter {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      /**
         * psuedo elements are seen as flex children which
         * breaks justify-content
         */ }
      .splitter:not(.splitter--fixed) {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
      .splitter:after {
        display: none; } }
  .splitter--start {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .splitter--end {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
  .splitter__cell {
    margin-top: 20px; }
    .splitter__cell--grow {
      -ms-flex-negative: 0;
          flex-shrink: 0; }
    .splitter__cell:first-child {
      float: left; }
    .splitter__cell:not(:first-child) {
      float: right; }
    .splitter__cell:not(:last-child) {
      margin-right: 20px; }

.progress-bar {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 15px;
  border: 1px solid #ae2573;
  -webkit-border-radius: 15px;
          border-radius: 15px;
  background-color: #efefef; }
  .progress-bar__body {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    -webkit-border-radius: 15px;
            border-radius: 15px;
    background-color: #ae2573; }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .display-flex-col {
    display: block !important; } }

@media screen and (-ms-high-contrast: active) and (min-width: 501px), (-ms-high-contrast: none) and (min-width: 501px) {
  :not(.tile-grid__item--full).tile-grid__item {
    display: block !important; } }

.health-points-splash-modal .dialog__header {
  padding: 35px; }
  .health-points-splash-modal .dialog__header h1 {
    font-size: 36px;
    padding-right: 45px; }
  .health-points-splash-modal .dialog__header .dialog__close {
    top: 35px;
    right: 35px; }

.health-points-splash-modal .dialog__content {
  text-align: center;
  padding-bottom: 1rem; }
  .health-points-splash-modal .dialog__content > *:nth-child(2) {
    margin: 7.5% 10% 6.5%;
    font-size: 14px;
    letter-spacing: 0.05rem;
    line-height: 18px; }
  .health-points-splash-modal .dialog__content > *:nth-child(4) {
    margin: 5%; }
  .health-points-splash-modal .dialog__content > *:nth-child(5) {
    margin-bottom: 3rem; }

/**
 * 4. Layout
 */
/**
* @file masthead.scss
* @author Paul Cooper
*
* Masthead styles
*/
.masthead {
  background: #ffd900;
  color: #004fb6;
  opacity: 0.98;
  left: 0;
  width: 100%;
  position: fixed;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  z-index: 20;
  -webkit-box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
  -webkit-transform: translateZ(0);
          transform: translateZ(0); }
  .with-masthead-banner .masthead {
    height: 100px; }
  .with-masthead-banner--android .masthead {
    height: auto; }
  .masthead .masthead__toggle:focus, .masthead .masthead__icon-link:focus {
    background-color: #e3c100;
    outline: none; }
  .masthead--with-nav .masthead__logo-container {
    display: none; }
  @media all and (min-width: 501px) {
    .masthead--with-nav .masthead__logo-container {
      display: block;
      float: left; } }
  @media all and (min-width: 801px) {
    .masthead--with-nav .masthead__logo-container {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none;
      margin-left: 30px; } }
  .masthead--centered {
    text-align: center; }
  .masthead__inner {
    margin: 0 auto;
    position: relative;
    max-width: 950px; }
  .masthead__logo {
    height: 40%;
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
    .masthead__logo-container {
      height: 60px;
      display: inline-block;
      position: relative;
      overflow: hidden;
      padding: 0 10px; }
      .masthead__logo-container:focus {
        background-color: #e3c100;
        outline: 0; }
  .masthead__avatar {
    color: #ffd900; }
  .masthead__toggle {
    height: 60px;
    padding: 0 10px;
    line-height: 60px;
    cursor: pointer;
    float: left;
    margin-left: 10px;
    z-index: 20; }
    @media all and (min-width: 801px) {
      .masthead__toggle {
        display: none; } }
  .masthead__icon {
    width: 23px;
    height: 23px;
    fill: #004fb6;
    color: #004fb6;
    margin: 0 10px;
    display: inline-block;
    vertical-align: middle; }
    .masthead__icon-link {
      height: 60px;
      line-height: 60px;
      float: left;
      text-decoration: none; }
      .masthead__icon-link:focus .masthead__avatar {
        color: #e3c100; }
    .masthead__icon-container {
      height: 60px;
      line-height: 60px;
      float: left; }
    .masthead__icon--filled {
      fill: #004fb6;
      margin: 0; }
  .masthead__notification-count {
    display: inline-block;
    top: 16px;
    right: 15px;
    position: absolute;
    background: #e1514a;
    color: #ffffff;
    font-size: 9px;
    line-height: 14px;
    padding: 0 4px;
    height: 13px;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    overflow: hidden; }
  .masthead__link {
    color: #004fb6;
    display: inline-block;
    padding: 0 10px; }
  .masthead__banner {
    background: #ffffff;
    height: 40px;
    line-height: 40px;
    padding: 0 20px; }
    .masthead__banner--android {
      position: relative;
      background: #f4f6f9;
      height: 70px;
      line-height: 70px;
      padding: 0 20px; }
    .masthead__banner-icon {
      float: left;
      margin: 0 10px 0 20px; }
    .masthead__banner-content {
      color: #4d4d4d; }
    .masthead__banner-description {
      font-size: 12px;
      height: 30px;
      overflow: hidden; }
      @supports (-webkit-line-clamp: 2) {
        .masthead__banner-description {
          display: -webkit-box;
          -webkit-line-clamp: 2;
          -webkit-box-orient: vertical; } }
  .masthead__button {
    display: inline-block;
    position: relative;
    text-decoration: none;
    margin: 0 10px;
    padding: 10px 20px;
    line-height: 1;
    -webkit-border-radius: 40px;
            border-radius: 40px;
    font-size: 14px;
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400;
    cursor: pointer;
    -webkit-transition: background 44ms, padding 44ms;
    -o-transition: background 44ms, padding 44ms;
    transition: background 44ms, padding 44ms;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    text-align: center;
    white-space: nowrap;
    color: #004fb6;
    border: 1px solid #004fb6; }
    .masthead__button:hover {
      background-color: #e3c100; }
  .masthead__dropdown {
    position: absolute;
    width: 400px;
    max-width: 100%;
    top: 60px;
    right: 0;
    display: none;
    color: #4d4d4d; }
    .masthead__dropdown:before {
      content: ' ';
      position: absolute;
      width: 20px;
      height: 20px;
      background: #ffffff;
      right: 22px;
      top: -6px;
      -webkit-transform: rotate(135deg);
          -ms-transform: rotate(135deg);
              transform: rotate(135deg); }
    .masthead__dropdown--open {
      display: block; }
    .masthead__dropdown-inner {
      overflow: auto;
      -webkit-overflow-scrolling: touch; }
    .masthead__dropdown-content {
      overflow: hidden;
      margin: 0 10px 10px;
      background: #ffffff;
      -webkit-border-radius: 0 0 3px 3px;
              border-radius: 0 0 3px 3px;
      -webkit-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
              box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1); }

/**
* @file _grid.scss
* @author Stephen Sulik
* Global grid system
*/
.grid {
  margin-left: -20px; }
  .grid--w-margin {
    margin-bottom: 20px; }
  .grid--center .grid__item {
    vertical-align: middle; }
  .grid--end .grid__item {
    vertical-align: bottom; }
  .grid--reset {
    margin-left: 0px;
    pointer-events: none; }
  .grid__item {
    padding-left: 20px;
    float: left; }
    .grid__item--inline-block {
      float: none;
      display: inline-block;
      vertical-align: middle; }
    .grid__item-full {
      width: 100%; }
    @media all and (min-width: 801px) {
      .grid__item-inner--right {
        float: right; } }

@media all and (max-width: 500px) {
  .grid-sml-1 {
    width: 100%; }
  .grid-sml-1--margin:not(:last-of-type) {
    margin-bottom: 20px; }
  .grid-sml-1:last-of-type {
    margin-bottom: 0; }
  .grid-sml-1-2 {
    width: 50%; }
  .grid-sml-1-3 {
    width: 33.333%; }
  .grid-sml-1-4 {
    width: 25%; }
  .grid-sml-1-5 {
    width: 20%; }
  .grid-sml-1-6 {
    width: 16.666%; }
  .grid-sml-3-4 {
    width: 75%; }
  .grid-sml-2-3 {
    width: 66.66%; } }

@media all and (min-width: 501px) and (max-width: 800px) {
  .grid-med-1 {
    width: 100%; }
  .grid-med-1--margin:not(:last-of-type) {
    margin-bottom: 20px; }
  .grid-med-1:last-of-type {
    margin-bottom: 0; }
  .grid-med-1-2 {
    width: 50%; }
  .grid-med-1-3 {
    width: 33.333%; }
  .grid-med-1-4 {
    width: 25%; }
  .grid-med-1-5 {
    width: 20%; }
  .grid-med-1-6 {
    width: 16.666%; }
  .grid-med-3-4 {
    width: 75%; }
  .grid-med-2-3 {
    width: 66.66%; } }

@media all and (min-width: 801px) {
  .grid-lrg-1 {
    width: 100%; }
  .grid-lrg-1--margin:not(:last-of-type) {
    margin-bottom: 20px; }
  .grid-lrg-1:last-of-type {
    margin-bottom: 0; }
  .grid-lrg-1-2 {
    width: 50%; }
  .grid-lrg-1-3 {
    width: 33.333%; }
  .grid-lrg-1-4 {
    width: 25%; }
  .grid-lrg-1-5 {
    width: 20%; }
  .grid-lrg-1-6 {
    width: 16.666%; }
  .grid-lrg-3-4 {
    width: 75%; }
  .grid-lrg-2-3 {
    width: 66.66%; } }

.page {
  overflow: hidden; }
  @media all and (min-width: 801px) {
    .page {
      overflow: visible; } }
  .page--no-overflow {
    overflow: hidden; }
  .page--centered {
    text-align: center; }
  .page--nav-on {
    overflow-x: hidden; }
  .page__preloader {
    position: fixed;
    top: 60px;
    left: 0; }
  .page__center {
    max-width: 950px;
    min-height: 500px;
    margin: 0 auto;
    position: relative;
    z-index: 10; }

.page__content {
  position: relative;
  z-index: 10;
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  -o-transition: transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease; }
  @media all and (min-width: 801px) {
    .page__content {
      margin-left: 250px;
      -webkit-transition: none;
      -o-transition: none;
      transition: none;
      min-height: 700px; } }
  @media all and (min-width: 950px) {
    .page__content {
      margin-left: 310px; } }
  .page--nav-on .page__content {
    position: relative;
    -webkit-transform: translate(240px, 0);
        -ms-transform: translate(240px, 0);
            transform: translate(240px, 0); }
    @supports ((-webkit-transform: translate3d(240px, 0, 0)) or (transform: translate3d(240px, 0, 0))) {
      .page--nav-on .page__content {
        -webkit-transform: translate3d(240px, 0, 0);
                transform: translate3d(240px, 0, 0); } }
    @media all and (min-width: 801px) {
      .page--nav-on .page__content {
        position: relative;
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
        -webkit-transform: translate(0, 0);
            -ms-transform: translate(0, 0);
                transform: translate(0, 0); }
        @supports ((-webkit-transform: translate3d(0, 0, 0)) or (transform: translate3d(0, 0, 0))) {
          .page--nav-on .page__content {
            -webkit-transform: translate3d(0, 0, 0);
                    transform: translate3d(0, 0, 0); } } }

.no-page-nav .page__content {
  margin-left: 0; }

.no-page-nav .page__nav {
  display: none; }

.with-cookies-banner {
  visibility: hidden;
  opacity: 0; }

.page__main {
  /* fix ie9 not adding the padding for this element */
  display: block; }
  .page__main--with-masthead {
    padding-top: 80px; }
    .with-masthead-banner .page__main--with-masthead {
      padding-top: 120px; }
    .with-masthead-banner--android .page__main--with-masthead {
      padding-top: 100px; }
    .page__main--with-masthead-only {
      padding-top: 60px; }
  @media all and (min-width: 801px) {
    .page__main--with-nav {
      padding-top: 100px; }
      .with-masthead-banner .page__main--with-nav {
        padding-top: 140px; }
      .with-masthead-banner--android .page__main--with-nav {
        padding-top: 170px; } }
  .page__main--centered {
    text-align: center; }

.page__nav {
  width: 240px;
  position: fixed;
  background: #ffffff;
  height: 100%;
  -webkit-transform: translate(-280px, 0);
      -ms-transform: translate(-280px, 0);
          transform: translate(-280px, 0);
  overflow-y: auto;
  z-index: 20;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  -o-transition: transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease; }
  @supports ((-webkit-transform: translate3d(-280px, 0, 0)) or (transform: translate3d(-280px, 0, 0))) {
    .page__nav {
      -webkit-transform: translate3d(-280px, 0, 0);
              transform: translate3d(-280px, 0, 0); } }
  .page--nav-on .page__nav {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    -webkit-box-shadow: 1px 1px 10px 0 rgba(0, 0, 0, 0.1);
            box-shadow: 1px 1px 10px 0 rgba(0, 0, 0, 0.1); }
    @supports ((-webkit-transform: translate3d(0, 0, 0)) or (transform: translate3d(0, 0, 0))) {
      .page--nav-on .page__nav {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0); } }
    @media all and (min-width: 801px) {
      .page--nav-on .page__nav {
        -webkit-box-shadow: none;
                box-shadow: none;
        border: 0;
        -webkit-transform: translate(0, 0);
            -ms-transform: translate(0, 0);
                transform: translate(0, 0); }
        @supports ((-webkit-transform: translate3d(0, 0, 0)) or (transform: translate3d(0, 0, 0))) {
          .page--nav-on .page__nav {
            -webkit-transform: translate3d(0, 0, 0);
                    transform: translate3d(0, 0, 0); } } }
  @media all and (min-width: 801px) {
    .page__nav {
      position: static;
      float: left;
      -webkit-transition: none;
      -o-transition: none;
      transition: none;
      height: auto;
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
      @supports ((-webkit-transform: translate3d(0, 0, 0)) or (transform: translate3d(0, 0, 0))) {
        .page__nav {
          -webkit-transform: translate3d(0, 0, 0);
                  transform: translate3d(0, 0, 0); } }
      .page__nav--fixed {
        position: fixed; }
      .page__nav--absolute {
        position: absolute;
        bottom: 0; } }

.masthead,
.message-container,
.footer {
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  -o-transition: transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease; }
  .page--nav-on .masthead, .page--nav-on
  .message-container, .page--nav-on
  .footer {
    -webkit-transform: translate(240px, 0);
        -ms-transform: translate(240px, 0);
            transform: translate(240px, 0); }
    @supports ((-webkit-transform: translate3d(240px, 0, 0)) or (transform: translate3d(240px, 0, 0))) {
      .page--nav-on .masthead, .page--nav-on
      .message-container, .page--nav-on
      .footer {
        -webkit-transform: translate3d(240px, 0, 0);
                transform: translate3d(240px, 0, 0); } }
  @media all and (min-width: 801px) {
    .page--nav-on .masthead, .page--nav-on
    .message-container, .page--nav-on
    .footer {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
      @supports ((-webkit-transform: translate3d(0, 0, 0)) or (transform: translate3d(0, 0, 0))) {
        .page--nav-on .masthead, .page--nav-on
        .message-container, .page--nav-on
        .footer {
          -webkit-transform: translate3d(0, 0, 0);
                  transform: translate3d(0, 0, 0); } } }

.auth__subtitle {
  font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
  font-weight: 100;
  font-size: 20px;
  line-height: 1.4;
  margin-top: 20px; }
  @media all and (min-width: 801px) {
    .auth__subtitle {
      font-size: 24px; } }

.auth__paragraph {
  font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.4;
  margin-top: 10px; }
  @media all and (min-width: 501px) {
    .auth__paragraph {
      font-size: 16px; } }
  .auth__paragraph:first-child {
    margin-top: 0; }

.auth__intro {
  padding: 20px;
  text-align: left; }
  @media all and (min-width: 501px) {
    .auth__intro {
      padding: 20px 40px; } }
  @media all and (min-width: 801px) {
    .auth__intro {
      padding: 40px 40px 40px 0; } }

.auth__content {
  padding: 0 20px 20px;
  margin: 0 auto;
  max-width: 1000px; }
  .auth__content:first-child {
    padding-top: 20px; }
  @media all and (min-width: 501px) {
    .auth__content {
      padding: 0 40px 40px; }
      .auth__content:first-child {
        padding-top: 40px; } }
  @media all and (min-width: 801px) {
    .auth__content--two-col .auth__item {
      width: 50%;
      float: left;
      margin-top: 0; } }

.auth__item {
  max-width: 500px;
  margin: 20px auto 0; }
  @media all and (min-width: 501px) {
    .auth__item {
      margin-top: 40px; } }
  .auth__item:first-child {
    margin-top: 0; }

.layout-auth {
  background-color: #ffffff; }
  .layout-auth .message-container {
    top: 0; }
  .layout-auth__wrapper {
    color: #4d4d4d;
    margin: 0 auto;
    text-align: center; }
  .layout-auth__logo {
    max-height: 50px;
    max-width: 100%; }
    .layout-auth__logo--external {
      max-height: 50px; }
    .layout-auth__logo-container {
      display: block;
      overflow: hidden;
      margin: 20px 0; }
  .layout-auth__button {
    display: inline-block;
    width: 260px;
    margin-top: 20px; }
    .layout-auth__button--no-seperator {
      margin-top: 0; }
  .layout-auth__subheading {
    text-align: center;
    margin-bottom: 20px; }
  .layout-auth__description {
    margin: 20px 0 0;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    line-height: 1.4;
    font-size: 24px; }
    @media all and (min-width: 501px) {
      .layout-auth__description {
        margin: 20px 0 40px 0;
        font-size: 32px; } }
  .layout-auth__login {
    font-size: 16px;
    margin: 40px 0 10px; }
  .layout-auth__link {
    color: #ffffff;
    text-decoration: none; }
    .layout-auth__link:hover {
      text-decoration: underline; }
  .layout-auth__terms {
    line-height: 1.4;
    font-size: 12px; }

.auth-form {
  -webkit-border-radius: 9px;
          border-radius: 9px;
  background: #ffffff;
  color: #4d4d4d;
  text-align: left; }
  .auth-form__header {
    padding: 20px 10px;
    border-bottom: 1px solid #efefef;
    text-align: center; }
    @media all and (min-width: 501px) {
      .auth-form__header {
        padding: 30px 20px; } }
  .auth-form__content {
    padding: 20px; }
    @media all and (min-width: 501px) {
      .auth-form__content {
        padding: 40px; } }
  .auth-form__sub-heading {
    text-transform: lowercase;
    position: relative;
    margin: 0 20px; }
    @media all and (min-width: 501px) {
      .auth-form__sub-heading {
        margin: 0 40px; } }
  .auth-form__sub-link {
    padding: 20px 0 0;
    display: block;
    text-align: center; }
  .auth-form__button {
    display: block;
    width: 100%; }
    .auth-form__button--facebook {
      background: #3b5998;
      color: #ffffff; }
      .auth-form__button--facebook:hover {
        background: #394a81; }
      .auth-form__button--facebook:focus {
        -webkit-box-shadow: 0 0 2px 2px #1e2e4f;
                box-shadow: 0 0 2px 2px #1e2e4f;
        outline: 0; }
    .auth-form__button--microsoft-azure {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      font-family: 'SegoeRegular';
      font-weight: 600;
      font-size: 15px;
      color: #5e5e5e;
      background-color: white;
      border: 1px solid #8c8c8c; }
      .auth-form__button--microsoft-azure:hover {
        background-color: inherit; }
  .auth-form__link {
    color: #ae2573;
    text-decoration: none; }
    .auth-form__link:hover {
      text-decoration: underline; }

@media (max-width: 500px) {
  .display-wrap-help-link {
    margin-top: 10px;
    display: block; } }

.need-help {
  border-top: 1px solid #cccccc;
  margin-top: 20px; }

.home {
  color: #4d4d4d;
  position: relative;
  z-index: 10; }
  .home__heading {
    line-height: 1.6;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    font-size: 20px;
    margin-bottom: 20px;
    margin-top: -5px; }
    @media all and (min-width: 501px) {
      .home__heading {
        font-size: 24px; } }
  .home__paragraph {
    line-height: 1.6;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    font-size: 14px;
    margin-bottom: 20px; }
    .home__paragraph:not(.paragraph--has-margin):last-child {
      margin-bottom: 0; }
    @media all and (min-width: 501px) {
      .home__paragraph {
        font-size: 16px; } }
  .home__button {
    margin: 30px 10px 0;
    display: inline-block; }
  @media all and (min-width: 501px) {
    .home__controls--login {
      display: none; } }
  .home__controls--register {
    display: none; }
    @media all and (min-width: 501px) {
      .home__controls--register {
        display: block; } }
  .home__panel {
    background: #f4f6f9;
    text-align: center; }
    @media all and (min-width: 801px) {
      .home__panel {
        text-align: left; } }
    .home__panel-inner {
      max-width: 950px;
      margin: 0 auto;
      padding: 40px;
      position: relative;
      overflow: hidden; }
      @media all and (min-width: 501px) {
        .home__panel-inner {
          padding: 60px; } }
      @media all and (min-width: 801px) {
        .home__panel-inner {
          padding: 80px 60px; } }
    @media all and (min-width: 801px) {
      .home__panel-content {
        width: 60%;
        display: table-cell;
        vertical-align: middle;
        padding-left: 60px; } }
    .home__panel-link {
      color: #ffffff; }
    .home__panel-media {
      padding-bottom: 40px; }
      .home__panel-media-image {
        max-height: 250px; }
      @media all and (min-width: 501px) {
        .home__panel-media {
          padding-bottom: 40px; } }
      @media all and (min-width: 801px) {
        .home__panel-media {
          width: 40%;
          display: table-cell;
          vertical-align: middle;
          padding-bottom: 0; } }
    .home__panel--with-image {
      -webkit-background-size: cover;
              background-size: cover;
      background-position: 50% 0%;
      position: relative;
      color: #ffffff; }
      @media all and (min-width: 801px) {
        .home__panel--with-image {
          text-align: center; } }
      .home__panel--with-image:before {
        content: ' ';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(34, 34, 34, 0.7);
        z-index: 10; }
      .home__panel--with-image .home__panel-inner {
        z-index: 20; }
    @media all and (min-width: 801px) {
      .home__panel--large .home__panel-inner {
        padding: 120px 80px; } }
    .home__panel--image-apps {
      background-image: url("/images/backgrounds/apps.jpg"); }
      @media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 13/10), (min-resolution: 1.3dppx) {
        .home__panel--image-apps {
          /* on retina, use image that's scaled by 2 */
          background-image: url("/images/backgrounds/apps-2x.jpg"); } }
    .home__panel--image-welcome {
      background-image: url("/images/backgrounds/home.jpg"); }
      @media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 13/10), (min-resolution: 1.3dppx) {
        .home__panel--image-welcome {
          /* on retina, use image that's scaled by 2 */
          background-image: url("/images/backgrounds/home-2x.jpg"); } }
    .home__panel--alt {
      background: #ffffff; }
      .home__panel--alt .home__panel-media {
        padding-top: 40px;
        padding-bottom: 0; }
      @media all and (min-width: 801px) {
        .home__panel--alt .home__panel-media {
          padding-top: 0; }
        .home__panel--alt .home__panel-content {
          padding-right: 60px;
          padding-left: 0; } }

.layout-error {
  padding: 0 0 150px;
  margin-bottom: 40px;
  background: url("/images/backgrounds/error.png") no-repeat center center; }
  @media all and (min-width: 501px) {
    .layout-error {
      margin-bottom: 80px; } }
  .layout-error__inner {
    margin: 0 auto;
    padding: 20px 20px; }
    @media all and (min-width: 501px) {
      .layout-error__inner {
        padding: 40px; } }
  .layout-error__title {
    line-height: 1.4;
    font-size: 24px;
    margin-bottom: 20px; }
  .layout-error__paragraph {
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    line-height: 1.4;
    font-size: 20px;
    margin-top: 5px; }

/**
* @file onboarding.scss
* @author Shaun Dillon
*
* Onboarding section specific styles
*/
.layout-onboarding {
  text-align: center;
  padding: 0 20px 70px 20px; }
  @media all and (min-width: 501px) {
    .layout-onboarding {
      padding: 0 40px 70px 40px; } }
  .layout-onboarding:before {
    content: '';
    display: block;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #ffd900;
    -webkit-background-size: cover;
            background-size: cover; }
  .layout-onboarding__logo {
    fill: white;
    width: 100%;
    height: 50px;
    display: inline-block; }
    .layout-onboarding__logo-container {
      padding: 20px;
      -webkit-border-bottom-right-radius: 3px;
              border-bottom-right-radius: 3px;
      -webkit-border-bottom-left-radius: 3px;
              border-bottom-left-radius: 3px;
      background: #ffd900;
      display: block;
      margin-bottom: 20px; }
      @media all and (min-width: 501px) {
        .layout-onboarding__logo-container {
          display: inline-block; } }
  @media all and (min-width: 501px) {
    .layout-onboarding__terms {
      max-height: 350px;
      overflow: auto;
      padding-bottom: 20px; } }
  @media all and (min-width: 501px) {
    .layout-onboarding__terms-container {
      position: relative; }
      .layout-onboarding__terms-container:before {
        content: ' ';
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 20px;
        background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(30%, rgba(255, 255, 255, 0.5)), color-stop(60%, rgba(255, 255, 255, 0.8)), color-stop(80%, white));
        background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.5) 30%, rgba(255, 255, 255, 0.8) 60%, white 80%);
        background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.5) 30%, rgba(255, 255, 255, 0.8) 60%, white 80%);
        background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.5) 30%, rgba(255, 255, 255, 0.8) 60%, white 80%); } }
  .layout-onboarding__panel {
    max-width: 600px;
    text-align: left; }
    .layout-onboarding__panel .risk {
      height: 18px;
      width: 18px; }
    .layout-onboarding__panel .mark {
      height: 80px; }
    .layout-onboarding__panel.centered {
      margin: 0 auto; }
    .layout-onboarding__panel__thanks-content {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row; }
      .layout-onboarding__panel__thanks-content__center {
        margin-top: 100px; }
      .layout-onboarding__panel__thanks-content .title {
        font-size: 24px;
        font-family: "SourceSansProSemibold", Helvetica, Arial, sans-serif; }
      .layout-onboarding__panel__thanks-content .description {
        font-size: 16px;
        font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
        color: #444444; }
    .layout-onboarding__panel__explanations {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      margin: 20px auto;
      width: 90%;
      padding: 10px;
      background: #ecf2fe;
      -webkit-border-radius: 10px;
              border-radius: 10px; }
      @media all and (max-width: 450px) {
        .layout-onboarding__panel__explanations {
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
              -ms-flex-direction: column;
                  flex-direction: column; } }
      .layout-onboarding__panel__explanations__warning {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        width: 50%;
        line-height: 1.3;
        text-align: left; }
        .layout-onboarding__panel__explanations__warning .risk {
          height: 30px;
          width: 26px; }
        .layout-onboarding__panel__explanations__warning span {
          width: 80%;
          margin-left: 8px; }
        @media all and (max-width: 450px) {
          .layout-onboarding__panel__explanations__warning {
            width: 100%; }
            .layout-onboarding__panel__explanations__warning span {
              margin-top: 6px; } }
    .layout-onboarding__panel--loading {
      position: relative;
      overflow: hidden; }
      .layout-onboarding__panel--loading:before {
        content: ' ';
        background: #ffffff;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        display: block;
        z-index: 20; }
      .layout-onboarding__panel--loading:after {
        width: 32px;
        height: 32px;
        -webkit-background-size: 32px 32px;
                background-size: 32px;
        z-index: 30;
        position: absolute;
        top: 50%;
        left: 50%;
        margin-top: -16px;
        margin-left: -16px;
        fill: #4d4d4d; }
  .layout-onboarding__panel-heading {
    text-align: center;
    padding: 20px;
    border-bottom: 1px solid #ae2573; }
    @media all and (min-width: 501px) {
      .layout-onboarding__panel-heading {
        padding: 40px; } }
  .layout-onboarding__progress-item {
    display: inline-block;
    width: 20px;
    height: 20px;
    overflow: hidden;
    fill: #ae2573;
    margin: 0 5px; }
    .layout-onboarding__progress-item--current {
      fill: #ae2573; }
  .layout-onboarding__content {
    padding: 20px;
    position: relative;
    overflow: hidden; }
    @media all and (min-width: 501px) {
      .layout-onboarding__content {
        padding: 40px 80px; }
        .layout-onboarding__content--profile {
          min-height: 400px; } }
  .layout-onboarding__content-assessment {
    padding: 0 !important;
    position: relative;
    overflow: hidden;
    margin-top: 30px; }
    .layout-onboarding__content-assessment .form-field__instruction {
      font-style: normal;
      margin-top: 0; }
    .layout-onboarding__content-assessment .answer-cnt {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex; }
    .layout-onboarding__content-assessment .risk {
      height: 25px;
      width: 25px;
      margin-right: 10px;
      margin-top: -5px; }
    @media all and (min-width: 501px) {
      .layout-onboarding__content-assessment {
        padding: 40px; }
        .layout-onboarding__content-assessment--profile {
          min-height: 400px; } }
  .layout-onboarding__error-container {
    padding: 20px 20px 0; }
  .layout-onboarding__title {
    font-size: 32px;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    line-height: 1.2; }
  .layout-onboarding__subtitle {
    font-size: 16px;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    line-height: 1.4; }
  .layout-onboarding__paragraph {
    font-size: 16px;
    font-weight: 200;
    line-height: 1.4; }
  .layout-onboarding__button {
    margin: 40px 0 20px; }
  .layout-onboarding__checkbox-tab-wrapper .form-field__control-wrapper {
    width: 100%;
    padding-right: 0;
    padding: 5px 0; }
    @media all and (min-width: 501px) {
      .layout-onboarding__checkbox-tab-wrapper .form-field__control-wrapper {
        float: left;
        width: 50%; }
        .layout-onboarding__checkbox-tab-wrapper .form-field__control-wrapper:nth-child(odd) {
          padding-right: 5px; }
        .layout-onboarding__checkbox-tab-wrapper .form-field__control-wrapper:nth-child(even) {
          padding-left: 5px; } }
  .layout-onboarding__checkbox-pill-wrapper .form-field__control-wrapper {
    padding: 5px 10px 5px 0; }
  .layout-onboarding__tab-checkbox {
    width: 100%;
    height: 50px;
    line-height: 50px; }
  .layout-onboarding__radio-wrapper .form-field__control-wrapper {
    width: 100%; }
  .layout-onboarding__input {
    border: 2px solid #efefef;
    background: #ffffff;
    font-size: 16px; }
    .layout-onboarding__input:focus {
      background: #ffffff; }
  .layout-onboarding__optional {
    font-style: italic;
    color: #707070; }
  @supports (pointer-events: all) {
    .layout-onboarding__form-field .form-field__control-wrapper--select:before {
      -webkit-border-radius: 50%;
              border-radius: 50%;
      width: 22px;
      height: 22px;
      line-height: 22px;
      margin-top: -11px;
      font-size: 9px; } }
  .layout-onboarding__split-label {
    width: 40px; }
    .layout-onboarding__split-label-control {
      padding-right: 40px; }
      @media all and (min-width: 501px) {
        .layout-onboarding__split-label-control {
          width: 35%; } }
  .layout-onboarding .message-container {
    top: 0; }

@media all and (min-width: 501px) {
  .listing {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: -20px; } }

@media all and (min-width: 501px) {
  .listing__item {
    float: left;
    width: calc(50% - 20px);
    margin-left: 20px; }
    .listing__item:nth-child(2n + 1) {
      clear: left; }
    .listing__item, .listing__item-link, .listing__item-content, .listing__item-image {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
    .listing__item-link, .listing__item-content, .listing__item-image, .listing__item-title {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; }
    .listing__item-link, .listing__item-content {
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1; } }

.listing__item-content {
  padding: 20px; }

.listing__item-title {
  margin-bottom: 15px; }

.listing__item-paragraph {
  margin-top: auto; }

.layout-getting-started:before {
  content: '';
  display: block;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #ae2573;
  -webkit-background-size: cover;
          background-size: cover; }

/**
 * 5. Modules
 */
.flag {
  display: table;
  width: 100%; }
  .flag--inline .flag__body {
    width: auto; }
  .flag--centered {
    width: auto;
    margin: 0 auto; }
  .flag__image-container, .flag__body {
    display: table-cell;
    vertical-align: middle; }
    .flag__image-container--align-top, .flag__body--align-top {
      vertical-align: top; }
  .flag__body--rev {
    padding-right: 10px; }
  .flag__image-container {
    padding-right: 20px; }
    .flag__image-container--compact {
      padding-right: 10px; }
    .flag__image-container--rev {
      padding-right: 0;
      padding-left: 10px; }
    .flag__image-container--stacked {
      display: block;
      padding: 0 0 10px; }
    .flag__image-container--no-padding {
      padding: 0; }
  .flag__image {
    display: block;
    max-width: none; }
  .flag__body {
    width: 100%; }
    .flag__body--stacked {
      display: block; }

/**
 * Similar to Bootstrap's `.alert` but only what we need.
 * Markup:
 * 
 * <div class="alert alert--primary">
 *     ...
 * </div>
 */
.alert {
  padding: 20px; }
  .alert__title {
    margin-bottom: 5px;
    font-size: 20px; }
  .alert__actions {
    margin-top: 20px; }
  .alert--primary {
    background-color: #ae2573;
    color: #ffffff; }

.highlight {
  color: #ae2573; }

.avatar {
  position: relative; }
  .avatar__image, .avatar__first-letter, .avatar__background {
    width: 98%;
    height: 98%;
    top: 1%;
    left: 1%;
    position: absolute; }
  .avatar__background {
    background-color: #ae2573; }
    .avatar__background--inactive {
      background-color: #f4f6f9; }
  .avatar__image {
    -webkit-background-size: cover;
            background-size: cover; }
    .avatar__image--system-default {
      background: url("/images/avatars/system-avatar.png") no-repeat;
      background-position: center center;
      -webkit-background-size: cover;
              background-size: cover; }
  .avatar__first-letter {
    fill: #ffffff; }
  .avatar svg,
  .avatar img,
  .avatar .icon__back {
    -webkit-border-radius: 50%;
            border-radius: 50%; }

.article {
  padding: 20px;
  word-wrap: break-word; }
  @media all and (min-width: 501px) {
    .article {
      padding: 40px; } }
  .article__content {
    padding-bottom: 20px; }
  .article__section:not(:last-child) {
    margin-bottom: 30px; }
  .article__header {
    margin-bottom: 20px; }
  .article__title {
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    margin-bottom: 20px;
    line-height: 1.2;
    font-size: 32px; }
    @media all and (min-width: 501px) {
      .article__title {
        font-size: 40px; } }
  .article__details {
    line-height: 1.6; }
  .article__subheading {
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1.4; }
  .article__heading-1:before, .article__heading-2:before, .article__heading-3:before, .article__heading-4:before, .article__heading-5:before, .article__heading-2:before, .article__heading-3:before, .article__heading-4:before, .article__heading-5:before {
    content: '';
    display: block;
    height: 80px;
    /* fixed header height */
    margin: -80px 0 0;
    /* negative fixed header height */ }
  .article__heading-1, .article__heading-2, .article__heading-3, .article__heading-4, .article__heading-5 {
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    margin-bottom: 20px;
    line-height: 1.2;
    font-size: 32px; }
  .article__heading-2 {
    font-size: 24px; }
  .article__heading-3 {
    font-size: 20px; }
  .article__heading-4, .article__heading-5 {
    line-height: 1.6;
    font-size: 16px; }
  .article__img {
    display: block;
    max-width: 100%;
    max-height: 400px;
    margin: 0 auto 20px; }
    .article__img-wrap {
      margin-bottom: 30px; }
    .article__img-caption {
      font-size: 14px;
      text-align: center; }
  .article__paragraph {
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.6; }
    .article__paragraph:not(:last-child) {
      margin-bottom: 30px; }
  .article__video {
    margin-bottom: 30px; }
  .article__author {
    font-style: italic;
    color: #707070;
    font-size: 16px;
    margin-top: 20px;
    display: block;
    line-height: 1.6; }
  .article__footnote {
    font-style: italic;
    font-size: 14px;
    line-height: 1.6;
    border-top: 1px solid #b2b2b2;
    padding-top: 30px; }
  .article__blockquote {
    margin: 0 20px;
    padding: 20px 0;
    font-size: 20px;
    line-height: 1.5;
    border-top: 3px solid #b2b2b2;
    border-bottom: 3px solid #b2b2b2; }
    .article__blockquote:not(:last-child) {
      margin-bottom: 20px; }
    @media all and (min-width: 501px) {
      .article__blockquote {
        margin: 0 30px 30px; }
        .article__blockquote:not(:last-child) {
          margin-bottom: 30px; } }
  .article__list {
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.6; }
    .article__list:not(:last-child) {
      margin-bottom: 30px; }
    .article__list-item {
      margin-left: 20px;
      line-height: 1.6; }
      .article__list-item:not(:last-child) {
        margin-bottom: 10px; }
      .article__list--ul .article__list-item {
        list-style: disc; }
      .article__list--ol .article__list-item {
        list-style: decimal; }
  .article__break {
    border-top: 0;
    border-left: 0;
    border-bottom: 1px solid #b2b2b2;
    height: 1px;
    margin: 0; }
    .article__break:not(:last-child) {
      margin: 0 0 30px; }
  .article__table {
    border: 1px solid #b2b2b2;
    min-width: 450px; }
    .article__table-wrap {
      overflow-x: scroll;
      margin-bottom: 20px; }
    .article__table-header {
      font-family: "SourceSansProSemibold", Helvetica, Arial, sans-serif;
      font-weight: 600;
      text-align: left;
      vertical-align: bottom; }
    .article__table-cell, .article__table-header {
      border-right: 1px solid #b2b2b2;
      padding: 20px;
      line-height: 1.6; }
    .article__table-row:not(:last-child) > .article__table-cell, .article__table-header {
      border-bottom: 1px solid #b2b2b2; }

div.island article.article div p a[href='/forgotten-password'],
a[href='/content/9522'],
a[href='/content/9529'],
a[href='/content/9530'],
a[href='/content/9532'],
a[href='https://systest.aviva.co.uk/insurance/home-products/home-insurance/?source=SR1K&entry=106398&cmp=otr-hom-oth--EYandEY'],
a[href='https://systest.aviva.co.uk/insurance/motor/car-insurance/?source=SR1K&entry=106398&cmp=otr-car-oth--EYandEY'],
a[href='https://systest.aviva.co.uk/insurance/home-products/home-insurance/?source=SR1L&entry=106426&cmp=otr-hom-oth--Burberry'],
a[href='https://systest.aviva.co.uk/insurance/motor/car-insurance/?source=SR1L&entry=106426&cmp=otr-car-oth--Burberry'],
a[href='https://systest.aviva.co.uk/insurance/home-products/home-insurance/?source=SR1N&entry=106482&cmp=otr-hom-oth--Belron'],
a[href='https://systest.aviva.co.uk/insurance/motor/car-insurance/?source=SR1N&entry=106482&cmp=otr-car-oth--Belron'],
a[href='https://systest.aviva.co.uk/insurance/home-products/home-insurance/?source=SR1P&entry=106538&cmp=otr-hom-oth--Engie'],
a[href='https://systest.aviva.co.uk/insurance/motor/car-insurance/?source=SR1P&entry=106538&cmp=otr-car-oth--Engie'],
a[href='https://www.aviva.co.uk/insurance/motor/car-insurance/?source=SR1K&entry=106398&cmp=otr-car-oth--EYandEY'],
a[href='https://www.aviva.co.uk/insurance/motor/car-insurance/?source=SR1L&entry=106426&cmp=otr-car-oth--Burberry'],
a[href='https://www.aviva.co.uk/insurance/motor/car-insurance/?source=SR1N&entry=106482&cmp=otr-car-oth--Belron'],
a[href='https://www.aviva.co.uk/insurance/motor/car-insurance/?source=SR1O&entry=106510&cmp=otr-car-oth--JacobsUK'],
a[href='https://www.aviva.co.uk/insurance/motor/car-insurance/?source=SR1P&entry=106538&cmp=otr-car-oth--Engie'],
a[href='https://www.aviva.co.uk/insurance/motor/car-insurance/?source=SR1Q&entry=106566&cmp=otr-car-oth--Ocado'],
a[href='https://www.aviva.co.uk/insurance/home-products/home-insurance/?source=SR1K&entry=106398&cmp=otr-hom-oth--EYandEY'],
a[href='https://www.aviva.co.uk/insurance/home-products/home-insurance/?source=SR1L&entry=106426&cmp=otr-hom-oth--Burberry'],
a[href='https://www.aviva.co.uk/insurance/home-products/home-insurance/?source=SR1N&entry=106482&cmp=otr-hom-oth--Belron'],
a[href='https://www.aviva.co.uk/insurance/home-products/home-insurance/?source=SR1O&entry=106510&cmp=otr-hom-oth--JacobsUK'],
a[href='https://www.aviva.co.uk/insurance/home-products/home-insurance/?source=SR1P&entry=106538&cmp=otr-hom-oth--Engie'],
a[href='https://www.aviva.co.uk/insurance/home-products/home-insurance/?source=SR1Q&entry=106566&cmp=otr-hom-oth--Ocado'] {
  max-width: 300px;
  display: block;
  text-align: center;
  padding: 10px;
  background: #ae2573;
  color: white;
  text-decoration: none;
  -webkit-border-radius: 25px;
          border-radius: 25px;
  margin: 0 auto; }

.button-group {
  padding: 15px;
  text-align: right; }
  .button-group__btn {
    margin: 5px; }
  .button-group--flush {
    padding: 0;
    margin: -5px; }
  .button-group--left {
    text-align: left; }
  .button-group--center {
    text-align: center; }

/**
* @file navigation.scss
* @author Paul Cooper
*
* Navigation menu styles
*/
.nav-menu {
  padding: 80px 20px 20px; }
  @media all and (min-width: 801px) {
    .nav-menu {
      padding: 100px 20px 20px; } }
  .nav-menu .nav-menu__user-image {
    height: 34px;
    width: 34px;
    position: absolute;
    top: 50%;
    left: 13px;
    margin-top: -17px;
    color: #f4f6f9;
    -webkit-transition: fill 0.2s;
    -o-transition: fill 0.2s;
    transition: fill 0.2s; }
  .nav-menu__list-item {
    margin-bottom: 10px; }
    .nav-menu__list-item:last-child {
      margin-bottom: 0; }
  .nav-menu__item--active .nav-menu__icon {
    fill: #ae2573; }
  .nav-menu__item--active .nav-menu__link {
    color: #ae2573;
    background-color: #ffffff; }
  .nav-menu__item--active .nav-menu__user-image {
    color: #ffffff; }
  .nav-menu__item--active .nav-menu__arrow {
    width: 16px;
    height: 16px;
    position: absolute;
    right: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    display: block;
    stroke: #ae2573; }
    @media all and (min-width: 801px) and (max-height: 600px) {
      .nav-menu__item--active .nav-menu__arrow {
        height: 12px; } }
  .nav-menu__item-title {
    width: 105px;
    display: block;
    line-height: normal; }
    .nav-menu__item-title:after {
      content: '\A0'; }
  .nav-menu__arrow {
    display: none;
    color: #ae2573; }
  .nav-menu__icon {
    height: 20px;
    width: 20px;
    position: absolute;
    top: 50%;
    left: 20px;
    margin-top: -10px;
    fill: #4d4d4d;
    -webkit-transition: fill 0.2s;
    -o-transition: fill 0.2s;
    transition: fill 0.2s; }
    @media all and (min-width: 801px) and (max-height: 600px) {
      .nav-menu__icon {
        height: 14px;
        width: 14px;
        margin-top: -7px; } }
    .nav-menu__icon--wide {
      height: 26px;
      width: 26px;
      left: 17px;
      margin-top: -13px; }
    .nav-menu__icon--sub {
      height: 17px;
      width: 17px;
      margin-top: -8.5px; }
  .nav-menu__link {
    width: 100%;
    padding: 15px 15px 15px 60px;
    font-size: 16px;
    line-height: 1;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    text-transform: capitalize;
    color: #4d4d4d;
    text-decoration: none;
    -webkit-transition: color 0.2s;
    -o-transition: color 0.2s;
    transition: color 0.2s;
    border: 1px solid transparent;
    position: relative;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    overflow: hidden; }
    .nav-menu__link:focus {
      outline: none;
      border: 1px solid #cccccc; }
    .nav-menu__link:hover {
      background-color: #efefef; }
      .nav-menu__link:hover .nav-menu__user-image {
        color: #efefef; }
    .nav-menu__link--small {
      font-size: 14px; }
    @media all and (min-width: 801px) and (max-height: 600px) {
      .nav-menu__link {
        padding: 10px 10px 10px 50px;
        font-size: 13px; } }
  .nav-menu__footer {
    padding: 15px 20px 20px; }
  .nav-menu__organisation {
    font-size: 20px;
    line-height: 1.2; }
    .nav-menu__organisation-container {
      border-top: 1px solid rgba(204, 204, 204, 0.5);
      margin-top: 10px;
      padding: 20px; }
  .nav-menu__brand {
    max-width: 100%;
    max-height: 30px; }

.media__body {
  overflow: hidden; }

.media__img {
  float: left;
  margin-right: 20px; }
  .media__img--compact {
    margin-right: 10px; }
  .media__img img {
    display: block; }

.media__icon--large {
  width: 50px;
  height: 50px; }
  @media all and (min-width: 501px) {
    .media__icon--large {
      width: 90px;
      height: 90px; } }

.datatable {
  list-style: none; }
  .datatable__heading {
    background: #f4f6f9;
    padding: 10px 20px;
    display: block;
    text-transform: uppercase;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 1px;
    border-bottom: 1px solid #efefef; }
  .datatable__item {
    padding: 10px 20px;
    border-top: 1px solid #efefef;
    overflow: hidden;
    display: table;
    width: 100%; }
    .datatable__item:first-child {
      border-top: none; }
  .datatable__icon {
    padding: 0 20px 0 0;
    width: 30px; }
  .datatable__content, .datatable__icon, .datatable__actions {
    display: table-cell;
    vertical-align: middle; }
  .datatable__title {
    margin: 0 0 5px;
    display: block;
    font-size: 16px; }
    @media all and (min-width: 501px) {
      .datatable__title {
        margin: 0 0 10px;
        font-size: 20px; } }
  .datatable__description {
    font-size: 12px; }
    @media all and (min-width: 501px) {
      .datatable__description {
        font-size: 14px; } }
  .datatable__actions {
    padding: 0 0 0 20px;
    text-align: right; }

.divider {
  overflow: hidden;
  text-align: center; }
  .divider__text {
    position: relative; }
    .divider__text:before, .divider__text:after {
      display: block;
      content: '';
      width: 2000px;
      height: 1px;
      position: absolute;
      margin: auto;
      top: 0;
      bottom: 0;
      background: #cccccc; }
    .divider__text:before {
      right: 100%;
      margin-right: 20px; }
    .divider__text:after {
      left: 100%;
      margin-left: 20px; }

.comment {
  position: relative;
  padding: 10px 0; }
  @media all and (min-width: 501px) {
    .comment {
      padding-left: 50px;
      min-height: 50px;
      padding-left: 50px; } }
  .comment:first-child {
    padding-top: 0; }
    .comment:first-child .comment__avatar {
      top: 0; }
  .comment__wrapper {
    border-left: 1px solid #efefef;
    padding: 0 10px; }
  .comment__avatar {
    float: left;
    margin-right: 10px;
    width: 40px;
    height: 40px;
    color: #ffffff; }
    @media all and (min-width: 501px) {
      .comment__avatar {
        position: absolute;
        top: 12px;
        left: 0;
        width: 40px;
        height: 40px; } }
  .comment__author {
    margin-right: 5px; }
  .comment__group {
    margin-right: 10px; }
  .comment__date {
    display: block; }
    @media all and (min-width: 501px) {
      .comment__date {
        display: inline-block; } }
  .comment__info {
    line-height: 1.4;
    font-size: 14px;
    color: #707070; }
  .comment__text {
    color: #4d4d4d;
    margin-top: 10px;
    line-height: 1.4;
    font-size: 14px;
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400;
    word-wrap: break-word;
    white-space: pre-wrap; }
  .comment__actions {
    margin-top: 5px;
    overflow: hidden; }
  .comment__action {
    float: left;
    line-height: 20px;
    font-size: 12px;
    color: #707070;
    margin-right: 10px; }

.post {
  position: relative;
  min-height: 40px;
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #efefef; }
  @media all and (min-width: 501px) {
    .post {
      padding-left: 50px;
      min-height: 50px;
      padding-left: 60px; } }
  .post:first-child {
    margin-top: 0;
    padding-top: 0;
    border-top: none; }
    .post:first-child .post__avatar {
      top: 0; }
  .post__avatar {
    float: left;
    margin-right: 10px;
    width: 40px;
    height: 40px;
    color: #ffffff; }
    @media all and (min-width: 501px) {
      .post__avatar {
        position: absolute;
        top: 20px;
        left: 0;
        width: 50px;
        height: 50px; } }
  .post__author {
    margin-right: 10px; }
  .post__group {
    margin-right: 10px; }
  .post__date {
    display: block; }
    @media all and (min-width: 501px) {
      .post__date {
        display: inline-block; } }
  .post__info {
    line-height: 1.4;
    font-size: 14px;
    color: #707070; }
  .post__text {
    color: #4d4d4d;
    margin-top: 10px;
    line-height: 1.4;
    font-size: 14px;
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400;
    word-wrap: break-word;
    white-space: pre-wrap;
    display: block; }
  .post__image {
    opacity: 1;
    -webkit-transition: opacity 0.3s ease-in-out;
    -o-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out;
    max-width: 100%;
    display: block;
    -webkit-border-radius: 3px;
            border-radius: 3px; }
    .post__image--loading {
      opacity: 0; }
    .post__image-container {
      display: inline-block;
      max-width: 100%;
      margin-top: 10px;
      -webkit-border-radius: 3px;
              border-radius: 3px;
      overflow: hidden;
      line-height: 0; }
      @media all and (min-width: 501px) {
        .post__image-container {
          max-width: 50%; } }
      .post__image-container--expanded {
        max-width: 100%; }
        @media all and (min-width: 501px) {
          .post__image-container--expanded {
            max-width: 70%; } }
  .post__actions {
    margin-top: 5px; }
  .post__action {
    float: left;
    line-height: 20px;
    font-size: 12px;
    color: #707070;
    margin-right: 10px;
    margin-top: 5px; }
  .post__icon {
    width: 20px;
    height: 20px;
    color: #ae2573;
    fill: #ae2573;
    float: left;
    margin-right: 5px; }
    .post__icon--loader {
      -webkit-animation: animateSpinner 1s infinite linear;
              animation: animateSpinner 1s infinite linear;
      color: #cccccc;
      fill: #cccccc; }

.wall {
  position: relative;
  min-height: 40px;
  padding-left: 50px;
  padding-bottom: 20px;
  border-bottom: 1px solid #efefef; }
  @media all and (min-width: 501px) {
    .wall {
      min-height: 50px;
      padding-left: 60px; } }
  .wall--condensed {
    padding-left: 50px;
    border-bottom: none;
    padding-bottom: 0; }
    @media all and (min-width: 501px) {
      .wall--condensed {
        min-height: 40px;
        padding-left: 50px; } }
  .wall__avatar {
    float: left;
    margin-right: 10px;
    width: 40px;
    height: 40px;
    color: #ffffff;
    position: absolute;
    top: 0;
    left: 0; }
    @media all and (min-width: 501px) {
      .wall__avatar {
        width: 50px;
        height: 50px; } }
    .wall__avatar--condensed {
      width: 40px;
      height: 40px; }
      @media all and (min-width: 501px) {
        .wall__avatar--condensed {
          width: 40px;
          height: 40px; } }
  .wall__compose-well {
    padding: 10px;
    border-width: 0 1px 1px 1px;
    border-style: solid;
    border-color: #cccccc;
    -webkit-border-bottom-right-radius: 3px;
            border-bottom-right-radius: 3px;
    -webkit-border-bottom-left-radius: 3px;
            border-bottom-left-radius: 3px;
    background-color: #efefef; }
  .wall__compose .attachment-upload__icon {
    width: 20px;
    height: 20px; }
    .wall__compose .attachment-upload__icon--update {
      -webkit-animation: animateSpinner 1s infinite linear;
              animation: animateSpinner 1s infinite linear; }
    .wall__compose .attachment-upload__icon--remove > svg {
      width: 14px; }
  .wall__compose .attachment-upload__image {
    max-width: 125px;
    margin-bottom: 10px; }
    .wall__compose .attachment-upload__image img {
      display: block;
      max-width: 100%;
      max-height: 125px; }
  .wall__textarea {
    padding: 10px;
    line-height: 18px;
    height: 40px;
    resize: none;
    overflow: hidden;
    font-size: 14px; }
    @media all and (min-width: 501px) {
      .wall__textarea {
        line-height: 28px;
        height: 50px; } }
    @media all and (min-width: 501px) {
      .wall__textarea--condensed {
        line-height: 18px;
        height: 40px; } }
    .wall__textarea--docked {
      -webkit-border-bottom-right-radius: 0;
              border-bottom-right-radius: 0;
      -webkit-border-bottom-left-radius: 0;
              border-bottom-left-radius: 0; }
  @media all and (min-width: 501px) {
    .wall__title {
      float: left;
      width: 50%;
      line-height: 31px; } }
  .wall__filter {
    display: block;
    margin-top: 10px; }
    @media all and (min-width: 501px) {
      .wall__filter {
        text-align: right;
        margin-top: 0;
        float: left;
        width: 50%; } }
    .wall__filter-label {
      font-size: 14px;
      color: #707070;
      vertical-align: middle;
      padding-bottom: 0;
      display: inline-block;
      margin-right: 5px; }
    .wall__filter-control {
      width: 150px;
      display: inline-block;
      background: #ffffff;
      padding: 5px 5px 5px 10px;
      -webkit-border-radius: 3px;
              border-radius: 3px;
      border: 1px solid #cccccc;
      font-size: 14px;
      line-height: 1.4; }
      @supports (pointer-events: all) {
        .wall__filter-control {
          padding-right: 31px; } }
      .wall__filter-control::-ms-expand {
        display: none; }
      .wall__filter-control-wrapper {
        display: inline-block;
        width: 150px; }
        @supports (pointer-events: all) {
          .wall__filter-control-wrapper:before {
            background: url("/images/icons/arrow-down-thin.png") center center no-repeat;
            -webkit-transform: translateY(-50%);
                -ms-transform: translateY(-50%);
                    transform: translateY(-50%);
            content: '';
            width: 26px;
            margin-top: 0;
            right: 1px; } }
  .wall__attachment-btn {
    display: inline-block;
    padding: 0;
    border: 0;
    background: none;
    font-size: 14px;
    color: #ae2573;
    line-height: 20px; }
    .wall__attachment-btn:hover, .wall__attachment-btn:focus {
      cursor: pointer; }
    .wall__attachment-btn:focus {
      outline: none;
      text-decoration: underline; }
    .wall__attachment-btn-icon {
      margin-right: 10px;
      fill: currentColor;
      float: left; }

.tab-nav {
  border-bottom: 2px solid #efefef;
  margin-bottom: 20px; }
  .tab-nav__item {
    float: left;
    border-bottom: 2px solid transparent;
    text-align: center;
    font-size: 16px;
    cursor: pointer;
    position: relative;
    top: 2px;
    opacity: 0.5; }
    .tab-nav__item:hover {
      text-decoration: underline;
      background: #efefef; }
    .tab-nav__item:first-of-type {
      text-align: left; }
    .tab-nav__item--active {
      border-color: #999999;
      opacity: 1; }
  .tab-nav__link {
    padding: 10px;
    display: block;
    color: inherit;
    text-decoration: none; }

/**
* @file info.scss
* @author Paul Cooper
*
* Info panel styles
*/
.info {
  background-color: #ae2573;
  padding: 10px;
  -webkit-border-radius: 3px;
          border-radius: 3px; }
  @media all and (min-width: 501px) {
    .info {
      padding: 20px; } }
  .info__inner {
    background-color: #ffffff;
    padding: 20px;
    -webkit-border-radius: 3px;
            border-radius: 3px; }
  .info__title {
    line-height: 1.4;
    font-size: 14px;
    text-align: center;
    padding-bottom: 10px;
    color: #ffffff; }
  .info__text {
    font-size: 14px;
    line-height: 1.4;
    color: #4d4d4d; }
    @media all and (min-width: 501px) {
      .info__text {
        font-size: 16px; } }
  .info__icon {
    width: 45px;
    height: 45px;
    fill: #ae2573; }
    @media all and (min-width: 501px) {
      .info__icon {
        width: 60px;
        height: 60px; } }
    .info__icon .icon__main {
      width: 50%;
      height: 50%;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      fill: #ffffff; }

.stat-list {
  display: block; }
  .stat-list__item {
    float: left;
    width: 50%;
    display: block;
    padding: 5px 10px 5px 0; }
    @media all and (max-width: 501px) {
      .stat-list__item:nth-child(2n) {
        padding-right: 0; } }
    @media all and (min-width: 501px) {
      .stat-list__item {
        width: 33.33%; }
        .stat-list__item:nth-child(3n) {
          padding-right: 0; } }
    .stat-list__item--stacking {
      padding: 10px 20px 5px 0; }
  .stat-list__key {
    font-size: 14px;
    line-height: 15px;
    font-family: "SourceSansProSemibold", Helvetica, Arial, sans-serif;
    font-weight: 600;
    padding-bottom: 5px; }
  .stat-list__value {
    font-size: 12px;
    line-height: 13px;
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400; }
    @media all and (min-width: 501px) {
      .stat-list__value {
        text-transform: uppercase;
        letter-spacing: 3px; } }
  @media all and (min-width: 501px) {
    .stat-list__container {
      display: table-cell;
      vertical-align: middle; } }
  .stat-list--large {
    padding-top: 10px; }
    @media all and (min-width: 501px) {
      .stat-list--large {
        padding-left: 20px; } }
    .stat-list--large .stat-list__item {
      text-align: left; }
      @media all and (min-width: 501px) {
        .stat-list--large .stat-list__item {
          float: none;
          display: table-cell;
          vertical-align: middle;
          padding: 5px 20px 5px 20px;
          width: auto; } }
    .stat-list--large .stat-list__key {
      font-size: 12px;
      text-transform: uppercase;
      letter-spacing: 3px;
      font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
      font-weight: 400;
      line-height: 1.6; }
    .stat-list--large .stat-list__value {
      font-size: 20px;
      font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
      font-weight: 100;
      line-height: 1.4; }
  .stat-list--table {
    display: table;
    width: 100%; }

.featured-stat-list {
  display: block; }
  .featured-stat-list__item {
    float: left;
    width: 50%;
    display: block;
    padding: 0 10px 20px 0;
    margin: 5px 0;
    position: relative;
    line-height: 1.2; }
    @media all and (min-width: 501px) {
      .featured-stat-list__item {
        margin: 10px 0;
        width: 33.333%; } }
    .featured-stat-list__item--with-legend {
      border-left: 5px solid;
      padding-left: 10px; }
    .featured-stat-list__item--legend-1 {
      border-color: #841c57; }
    .featured-stat-list__item--legend-2 {
      border-color: #ae2573; }
    .featured-stat-list__item--legend-3 {
      border-color: #d8489a; }
    .featured-stat-list__item--legend-4 {
      border-color: #e1514a; }
  .featured-stat-list__key {
    font-size: 12px;
    line-height: 15px;
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    padding: 0 10px 0 0;
    text-transform: uppercase;
    letter-spacing: 1px; }
    @media all and (min-width: 501px) {
      .featured-stat-list__key {
        font-size: 14px; } }
    .featured-stat-list__key--with-legend {
      padding-left: 10px; }
  .featured-stat-list__value {
    font-size: 16px;
    color: #4d4d4d; }

.stats-nav__item {
  text-align: center;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-transition: background 0.2s;
  -o-transition: background 0.2s;
  transition: background 0.2s;
  border-top-width: 5px;
  border-top-style: solid;
  border-top-color: #ae2573; }
  .stats-nav__item--channels {
    border-top-color: #ae2573; }
    .stats-nav__item--channels .stats-nav__value {
      color: #ae2573; }
  .stats-nav__item--social {
    border-top-color: #ae2573; }
    .stats-nav__item--social .stats-nav__value {
      color: #ae2573; }
  .stats-nav__item--trackers {
    border-top-color: #ae2573; }
    .stats-nav__item--trackers .stats-nav__value {
      color: #ae2573; }
  .stats-nav__item:hover {
    -webkit-box-shadow: 0 0 0 1px #ae2573;
            box-shadow: 0 0 0 1px #ae2573; }

.stats-nav__title, .stats-nav__value {
  display: block; }

.stats-nav__title {
  text-transform: uppercase;
  color: #707070;
  font-size: 9px;
  letter-spacing: 3px; }
  @media all and (min-width: 501px) {
    .stats-nav__title {
      font-size: 12px; } }

.stats-nav__value {
  font-size: 20px;
  margin-bottom: 10px; }

.stats-nav__link {
  color: inherit;
  text-decoration: none;
  display: block;
  width: 100%;
  padding: 20px 0;
  background: #ffffff;
  -webkit-border-radius: 0 0 3px 3px;
          border-radius: 0 0 3px 3px; }

.pagination {
  position: relative;
  display: table;
  table-layout: fixed;
  width: 100%; }
  .pagination__cell {
    display: table-cell;
    vertical-align: middle; }
  .pagination__control-icon, .pagination__control-label {
    vertical-align: middle; }
  .pagination__control-label {
    margin: 0 10px;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    display: none; }
    @media all and (min-width: 501px) {
      .pagination__control-label {
        display: inline-block; } }
  .pagination__control-icon {
    width: 25px;
    height: 25px;
    display: inline-block; }
  .pagination__control-btn {
    color: inherit; }
  .pagination__control--left {
    text-align: left; }
  .pagination__control--right {
    text-align: right; }
  .pagination__control--disabled {
    opacity: 0.5; }
  .pagination__label {
    text-align: center; }
    .pagination__label-heading {
      font-size: 16px;
      line-height: 1.4;
      font-family: "SourceSansProSemibold", Helvetica, Arial, sans-serif;
      font-weight: 600; }
      @media all and (min-width: 501px) {
        .pagination__label-heading {
          font-size: 20px; } }
    .pagination__label-subheading {
      line-height: 1.4; }

.punchcard {
  display: table;
  width: 100%; }
  .punchcard__item {
    display: table-cell;
    text-align: center;
    opacity: 0.5; }
    .punchcard__item--selected {
      opacity: 1; }
  .punchcard__icon {
    width: 20px;
    height: 20px;
    display: inline-block; }
    @media all and (min-width: 501px) {
      .punchcard__icon {
        width: 40px;
        height: 40px; } }
  .punchcard__label {
    padding-top: 5px;
    text-decoration: none;
    display: block;
    font-size: 12px; }

/**
* @file _user.scss
* @author Shaun Dillon
* User block at the top of the Me page
*/
.user__details {
  text-align: center; }

.user__img-wrap {
  width: 100px;
  height: 110px;
  position: relative;
  margin: 0 auto 10px; }

.user__img {
  width: 100px;
  height: 100px;
  position: relative;
  overflow: hidden;
  z-index: 10;
  color: #f4f6f9; }

.user__stats-nav {
  margin: 20px 0; }

.user__name {
  font-size: 24px;
  line-height: 1.2;
  font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
  font-weight: 100; }
  @media all and (min-width: 501px) {
    .user__name {
      font-size: 40px; } }

.user__info {
  color: #707070;
  font-size: 14px;
  line-height: 1.4; }
  @media all and (min-width: 501px) {
    .user__info {
      font-size: 16px; } }

@media all and (min-width: 501px) {
  .user__img-wrap {
    width: 120px;
    height: 130px; }
  .user__img {
    width: 120px;
    height: 120px; } }

.card {
  background-color: #ffffff;
  -webkit-box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
  -webkit-border-radius: 3px;
          border-radius: 3px;
  color: #4d4d4d;
  display: block;
  position: relative; }
  .card--with-theme-border {
    border-top-color: #ae2573;
    border-top-width: 5px;
    border-top-style: solid; }
  .card--featured {
    background: #ae2573;
    color: #ffffff;
    border-top-color: #ae2573; }
    .card--featured-image {
      background: #ae2573 url("/images/backgrounds/featured-card.svg") no-repeat center center; }
  .card--embedded {
    -webkit-box-shadow: none;
            box-shadow: none;
    border-top: 1px solid #efefef;
    border-left: 1px solid #efefef;
    border-right: 1px solid #efefef;
    overflow: hidden; }
  .card--no-border {
    border: none; }
  .card--link:hover {
    -webkit-box-shadow: 0 0 0 1px #ae2573;
            box-shadow: 0 0 0 1px #ae2573; }
  .card__icon--tiny {
    width: 18px;
    height: 18px; }
  .card__icon--small {
    width: 40px;
    height: 40px; }
  .card__icon--medium {
    width: 70px;
    height: 70px; }
  .card__icon-featured-main {
    width: 35px;
    height: 35px;
    fill: #ae2573;
    margin: 0 auto;
    left: 0;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .card__icon-featured-backing {
    fill: #ffffff; }
  .card__icon-welcome {
    width: 80px;
    height: 80px;
    fill: #ae2573; }
    @media all and (min-width: 501px) {
      .card__icon-welcome {
        width: 170px;
        height: 170px; } }
    .card__icon-welcome-text {
      text-align: center;
      font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
      font-weight: 100;
      font-size: 24px;
      width: 100%;
      padding-right: 20px;
      color: #ffffff; }
  .card__icon-highlighted {
    fill: #ae2573; }
  .card__tracker-icon {
    display: inline-block;
    vertical-align: top;
    margin-left: 5px; }
  .card__watermark {
    position: absolute;
    width: 110px;
    height: 110px;
    bottom: -30px;
    right: -20px;
    z-index: 10;
    fill: #efefef; }
    @media all and (min-width: 501px) {
      .card__watermark {
        width: 120px;
        height: 120px;
        right: 10px; } }
  .card__avatar {
    color: #ffffff;
    padding-right: 10px; }
  .card__content {
    position: relative;
    z-index: 20; }
  .card__row {
    border-bottom: 1px solid #efefef;
    padding: 15px;
    display: block;
    position: relative; }
    .card__row--featured {
      border-color: #950c5a; }
    @media all and (min-width: 501px) {
      .card__row {
        padding: 20px; } }
    .card__row--compact {
      padding: 10px 15px; }
      @media all and (min-width: 501px) {
        .card__row--compact {
          padding: 15px 20px; } }
    .card__row--stat {
      padding: 5px 15px;
      overflow: hidden; }
      @media all and (min-width: 501px) {
        .card__row--stat {
          padding: 5px 20px; } }
    .card__row--no-seperator {
      border-bottom: none; }
    .card__row--no-padding {
      padding: 0; }
    .card__row--no-vertical-padding {
      padding-top: 0;
      padding-bottom: 0; }
    .card__row--no-top-padding {
      padding-top: 0; }
    .card__row--no-bottom-padding {
      padding-bottom: 0; }
    .card__row--with-menu {
      padding-right: 70px; }
    .card__row--bottom-radius {
      overflow: hidden;
      -webkit-border-radius: 0 0 3px 3px;
              border-radius: 0 0 3px 3px; }
  .card__title {
    color: #4d4d4d;
    font-size: 16px;
    line-height: 1.2;
    display: inline-block; }
    .card__title--featured {
      color: #ffffff; }
  .card__info {
    color: #707070;
    font-size: 12px;
    line-height: 1.2; }
    @media all and (min-width: 501px) {
      .card__info {
        font-size: 14px; } }
    .card__info--small {
      font-size: 12px; }
  .card__stat--primary {
    margin-bottom: 5px; }
  .card__stat-key {
    text-transform: uppercase;
    letter-spacing: 1px;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100; }
  .card__stat-value {
    font-size: 14px; }
    .card__stat-value--primary {
      font-size: 40px; }
  .card__highlight {
    color: #ae2573; }
  .card__link {
    display: block;
    text-decoration: none;
    color: inherit;
    cursor: pointer; }
    .card__link:hover {
      background: #f4f6f9; }
      .card__link:hover .card__frame {
        color: #f4f6f9; }
  .card__text-link {
    text-decoration: none;
    cursor: pointer; }
    .card__text-link:hover {
      text-decoration: underline; }
    .card__text-link--featured {
      color: #ffffff; }
  .card__image {
    width: 120px;
    height: 135px;
    -webkit-background-size: contain;
            background-size: contain;
    background-repeat: no-repeat;
    background-position: center top; }
    .card__image--square {
      width: 120px;
      height: 120px; }
    .card__image--round {
      width: 120px;
      height: 120px;
      -webkit-border-radius: 50%;
              border-radius: 50%;
      background-color: #ae2573; }
    @media all and (min-width: 501px) {
      .card__image {
        width: 180px;
        height: 210px; }
        .card__image--square {
          width: 180px;
          height: 180px; } }
  .card__text {
    line-height: 1.4; }
    .card__text--secondary {
      color: #707070; }
    .card__text--featured {
      color: #ffffff; }
    .card__text--monospaced {
      letter-spacing: 3px; }
  .card__menu {
    position: absolute;
    top: 10px;
    right: 10px; }
    @media all and (min-width: 501px) {
      .card__menu {
        top: 20px;
        right: 20px; } }
  .card__paragraph {
    font-size: 14px;
    line-height: 1.4; }
    @media all and (min-width: 501px) {
      .card__paragraph {
        font-size: 16px; } }
    .card__paragraph--centered {
      max-width: 500px;
      margin-left: auto;
      margin-right: auto; }
    @media all and (max-width: 501px) {
      .card__paragraph--centered-small {
        max-width: 500px;
        margin-left: auto;
        margin-right: auto;
        text-align: center; } }
    .card__paragraph:not(:last-child) {
      margin-bottom: 10px; }
  .card__content-header {
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 1.2; }
    @media all and (min-width: 501px) {
      .card__content-header {
        font-size: 24px; } }
  .card__media {
    height: 100px; }
    .card__media--with-subtitle {
      padding: 22.5px 15px;
      position: relative; }
      @media all and (min-width: 801px) {
        .card__media--with-subtitle {
          padding: 22.5px; } }
      .card__media--with-subtitle:before {
        content: ' ';
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.7); }
        @supports (background: linear-gradient(to bottom, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0))) {
          .card__media--with-subtitle:before {
            background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.7)), to(rgba(0, 0, 0, 0)));
            background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0));
            background: -o-linear-gradient(top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0));
            background: linear-gradient(to bottom, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0)); } }
    .card__media--expanded {
      height: 300px; }
      .card__media--expanded .card__media--map-container {
        height: 300px; }
      .card__media--expanded .card__media--map-control {
        display: block; }
    .card__media--map {
      -webkit-transform: translateZ(0);
              transform: translateZ(0); }
      .card__media--map-container {
        cursor: pointer;
        height: 150px; }
      .card__media--map-wrap {
        position: relative; }
      .card__media--map-control {
        display: none;
        position: absolute;
        right: 10px;
        top: 10px; }
    @media all and (min-width: 501px) {
      .card__media {
        height: 125px; } }
    @media all and (min-width: 801px) {
      .card__media {
        height: 150px; } }
    .card__media--small {
      height: 100px; }
    @media all and (min-width: 501px) {
      .card__media-subtitle {
        font-size: 16px; } }
    .card__media-subtitle--with-backing {
      color: #ffffff;
      position: relative;
      z-index: 20; }
  .card__author {
    display: block;
    color: #efefef; }
  .card__info-panel {
    padding-top: 13px;
    -webkit-border-radius: 0 0 3px 3px;
            border-radius: 0 0 3px 3px;
    margin-top: -3px;
    position: relative;
    z-index: 10; }
  .card__menu-item {
    line-height: 20px;
    display: inline-block;
    font-size: 0; }
    .card__menu-item--featured {
      color: #ffffff; }
    .card__menu-item--alt {
      color: inherit; }
    .card__menu-item-icon-container {
      margin-right: 10px;
      padding-right: 0; }
      .card__menu-item-icon-container--no-spacing {
        margin-right: 0;
        padding-right: 0; }
    .card__menu-item-icon {
      width: 20px;
      height: 20px;
      fill: #ae2573; }
      .card__menu-item-icon--subdued {
        fill: #ae2573; }
      .card__menu-item-icon--featured {
        fill: #ffffff; }
      .card__menu-item-icon--featured-active {
        fill: #ffffff; }
    .card__menu-item-label {
      line-height: 20px;
      font-size: 14px; }
      .card__menu-item-label--featured {
        color: #ffffff; }
        .card__menu-item-label--featured .link {
          color: #ffffff; }
      .card__menu-item-label--vertical-align {
        line-height: normal; }
  .card__sub-heading {
    font-family: "SourceSansProSemibold", Helvetica, Arial, sans-serif;
    font-weight: 600;
    font-size: 14px;
    line-height: 1.4; }
    @media all and (min-width: 501px) {
      .card__sub-heading {
        font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
        font-weight: 400;
        font-size: 20px; } }
  .card__dot-seperator:before {
    content: '\2022';
    display: inline-block;
    margin: 0 5px; }
  .card__reason {
    padding: 10px;
    margin-top: 20px;
    display: inline-block;
    -webkit-border-radius: 9px;
            border-radius: 9px;
    border: 1px solid #cccccc;
    line-height: 1.4; }
  .card--datapoint {
    border-top-color: #ae2573; }
  .card--challenge-round-summary, .card--challenge-round-end, .card--challenge-join, .card--challenge-round-metric, .card--challenge-overtaken, .card--challenge-overtaken-by, .card--challenge {
    border-top-color: #ae2573; }
  .card--shared {
    border-top-color: #ae2573; }
  .card--welcome {
    background: #ffffff url("/images/backgrounds/welcome.svg") no-repeat top left;
    border-top: 0; }
  .card__icon--tiny {
    width: 18px;
    height: 18px; }
    .card__icon--tiny-line-height {
      line-height: 18px; }
  .card__icon--small {
    width: 40px;
    height: 40px; }
  .card__icon--medium {
    width: 70px;
    height: 70px; }
  .card__icon-featured-main {
    width: 35px;
    height: 35px;
    fill: #ae2573;
    margin: 0 auto;
    left: 0;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .card__icon-featured-backing {
    fill: #ffffff; }
  .card__tile {
    max-width: 250px;
    color: #4d4d4d; }
    .card__tile--wide {
      max-width: 320px; }
    .card__tile-link:hover {
      background: #f4f6f9; }
  .card__userlist {
    list-style: none;
    text-align: center; }
    .card__userlist-user {
      display: inline-block;
      width: 45px;
      height: 45px; }
    .card__userlist-avatar {
      width: 100%;
      height: 100%;
      color: #ffffff; }
  .card__list {
    margin-bottom: 20px; }
    .card__list:last-of-type {
      margin-bottom: 0; }
    .card__list-item {
      margin-bottom: 20px; }
      .card__list-item:last-of-type {
        margin-bottom: 0; }
  .card__punchcard {
    display: table; }
    .card__punchcard-icon {
      fill: #ae2573; }
    .card__punchcard-item {
      opacity: 1; }
  @media all and (min-width: 0) {
    .card__percentage {
      width: 70px;
      margin-bottom: 20px; } }
  @media all and (min-width: 501px) {
    .card__percentage {
      width: 120px;
      margin-bottom: 0px; } }
  @media all and (min-width: 801px) {
    .card__percentage {
      width: 130px;
      margin-bottom: 0px; } }
  .card .punchcard__item--selected .card__punchcard-icon {
    fill: #ae2573; }
  .card__superimposed {
    width: 100%;
    position: absolute;
    top: -35px;
    margin-left: -15px; }
    @media all and (min-width: 501px) {
      .card__superimposed {
        margin-left: -22.5px; } }
    .card__superimposed-icon {
      width: 70px;
      height: 70px; }
  .card__tip-icon {
    background: #ae2573;
    color: #ffffff;
    width: 30px;
    height: 30px;
    text-align: center;
    -webkit-border-radius: 15px;
            border-radius: 15px;
    font-size: 20px;
    line-height: 30px; }

/**
* @file _widget.scss
* @author Shaun Dillon
* Widget card styles
*/
.widget {
  color: #ffffff;
  display: block;
  overflow: hidden;
  position: relative;
  text-decoration: none;
  text-align: left;
  background-color: #ae2573;
  -webkit-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2); }
  .widget__title {
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    padding: 20px; }
  .widget__actions {
    height: 25px;
    padding: 0 20px;
    display: block;
    margin-bottom: 20px; }
    .widget__actions-item {
      display: inline-block;
      height: 25px;
      margin-right: 10px; }
      .widget__actions-item:last-child {
        margin-right: 0; }
    .widget__actions-text {
      opacity: 0.4;
      font-size: 14px; }
  .widget__btn-container {
    margin: 0 20px 20px; }
  .widget__btn {
    display: block;
    margin: 0 auto; }
  .widget__tracker-icon {
    fill: #ffffff; }
    .widget__tracker-icon--status {
      opacity: 0.5; }
  .widget-list .widget {
    margin-bottom: 20px; }
  .widget__title {
    padding: 30px 10px;
    text-align: center;
    font-size: 24px; }
  .widget__actions {
    padding: 0 10px;
    margin-bottom: 10px; }
  @media all and (min-width: 801px) {
    .widget__btn {
      width: 100%; } }

.widget-summary {
  padding: 20px 20px 0;
  background-color: #ae2573;
  color: #ffffff;
  overflow: hidden;
  margin-bottom: 20px;
  position: relative;
  -webkit-transition: background-color 200ms ease;
  -o-transition: background-color 200ms ease;
  transition: background-color 200ms ease; }
  @media all and (min-width: 501px) {
    .widget-summary {
      -webkit-border-radius: 3px;
              border-radius: 3px;
      margin: 0 20px 20px 20px; } }
  .widget-summary__loader {
    width: 28px;
    height: 28px;
    -webkit-background-size: 28px 28px;
            background-size: 28px;
    margin: 0 auto; }
  .widget-summary__row {
    padding: 20px 0;
    position: relative; }
    .widget-summary__row--condensed {
      padding: 10px 0; }
  .widget-summary__seperator {
    border-top: 1px solid #950c5a; }
  .widget-summary__title {
    font-size: 24px;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    line-height: 1; }
    @media all and (min-width: 801px) {
      .widget-summary__title {
        font-size: 40px; } }
  .widget-summary__subtitle {
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 3px;
    margin-bottom: 10px; }
  .widget-summary__user {
    line-height: 1;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 3px;
    margin-top: 5px;
    cursor: pointer; }
  .widget-summary__settings {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 20px;
    height: 20px;
    fill: #ffffff;
    cursor: pointer; }
  .widget-summary__key {
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 3px; }
  .widget-summary__value {
    font-size: 50px;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    line-height: 1;
    margin-bottom: 5px; }
    @media all and (min-width: 801px) {
      .widget-summary__value {
        font-size: 60px; } }
  .widget-summary__filter {
    border-bottom: 1px solid #ffffff;
    margin: 20px 0 0;
    height: 26px; }
  .widget-summary__filter-item {
    display: inline-block; }
    .widget-summary__filter-item:not(:last-of-type) {
      margin-right: 10px; }
  .widget-summary__filter-item-link {
    text-decoration: none;
    color: #ffffff;
    display: block;
    margin: 0;
    padding: 5px 0;
    font-size: 14px;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    cursor: pointer;
    opacity: 1; }
    .widget-summary__filter-item-link:hover {
      opacity: 0.8; }
    .widget-summary__filter-item-link--active {
      border-bottom: 3px solid #ffffff; }
  .widget-summary__punchcard {
    padding: 20px 0; }
  .widget-summary .punchcard__item {
    opacity: 1;
    fill: #950c5a; }
  .widget-summary .punchcard__item--selected {
    fill: #ffffff; }

.widget-viz {
  height: 200px;
  margin-bottom: 20px;
  position: relative;
  -webkit-box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
  text-align: center;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-border-radius: 3px;
          border-radius: 3px; }
  .widget-viz--separator:after {
    width: 1px;
    height: 100%;
    background: #950c5a;
    position: absolute;
    content: '';
    display: block;
    left: 0;
    right: 0;
    margin-right: auto;
    margin-left: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .widget-viz__dark-side {
    background: #ae2573; }
    .widget-viz__dark-side:hover {
      background: #950c5a; }
  .widget-viz__light-side {
    background: #ae2573; }
    .widget-viz__light-side:hover {
      background: #950c5a; }
  .widget-viz__whole {
    -webkit-border-radius: 3px;
            border-radius: 3px; }
  .widget-viz__half {
    width: 50%;
    height: 200px;
    float: left;
    position: relative; }
    .widget-viz__half--left {
      -webkit-border-radius: 3px 0 0 3px;
              border-radius: 3px 0 0 3px; }
    .widget-viz__half--right {
      -webkit-border-radius: 0 3px 3px 0;
              border-radius: 0 3px 3px 0; }
    .widget-viz__half--no-padding {
      padding: 0; }
  .widget-viz__icon {
    height: 60px;
    max-width: 80%;
    margin: 40px auto 20px auto;
    fill: #ffffff; }
    .widget-viz__icon-label {
      font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
      font-weight: 100;
      font-size: 20px;
      color: #ffffff;
      margin-bottom: 10px; }
  .widget-viz__link {
    text-decoration: none; }
  .widget-viz__monospaced {
    padding: 0 10px;
    text-transform: uppercase;
    text-align: center;
    letter-spacing: 3px;
    font-size: 12px;
    line-height: 1.4;
    color: #ffffff; }
  .widget-viz__privacy {
    width: 15px;
    height: 15px;
    fill: #ffffff;
    position: absolute;
    top: 10px;
    left: 10px; }

.viz {
  height: 100%; }
  .viz__button {
    text-decoration: none;
    height: 100%;
    width: 100%; }
  .viz--sparkline {
    padding: 20px 0; }
  .viz__point--bar:first-of-type {
    fill: #ffffff; }
  .viz__point--bar:last-of-type {
    fill: #ffffff; }
  .viz__point--sparkline {
    fill: none;
    stroke: #ffffff;
    stroke-width: 4px;
    stroke-linecap: round;
    stroke-linejoin: round; }
  .viz__label, .viz__title {
    text-transform: uppercase;
    font-size: 12px;
    fill: #ffffff; }
  .viz__label--dark {
    fill: #ffffff; }
  .viz__indicator {
    text-align: center;
    line-height: 0; }
    .viz__indicator-item {
      display: inline-block;
      width: 7px;
      height: 7px;
      -webkit-border-radius: 50%;
              border-radius: 50%;
      font-size: 0;
      border: 1px solid #ffffff; }
      .viz__indicator-item:not(:first-child) {
        margin-left: 3px; }
      .viz__indicator-item--active {
        background: #ffffff; }

.dashboard {
  position: relative; }
  @media all and (min-width: 501px) {
    .dashboard--right-content .dashboard__content {
      float: right; } }
  .dashboard__header {
    padding: 20px;
    border-bottom: 1px solid #cccccc;
    display: table;
    width: 100%;
    position: relative; }
  .dashboard__title {
    display: table-cell;
    vertical-align: middle; }
  .dashboard__button {
    position: absolute;
    right: 20px;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .dashboard__subcontent {
    padding: 20px;
    position: relative; }
    @media all and (min-width: 501px) {
      .dashboard__subcontent {
        margin-top: 0;
        width: 45%;
        float: left; } }
    .dashboard__subcontent__arrow {
      fill: #ae2573; }
  .dashboard__content {
    padding: 20px 0 0;
    position: relative; }
    @media all and (min-width: 501px) {
      .dashboard__content {
        width: 55%;
        float: left;
        padding-bottom: 20px; } }
    .dashboard__content--side-padding {
      padding: 0 20px 20px; }
      @media all and (min-width: 501px) {
        .dashboard__content--side-padding {
          padding: 20px 20px 20px 0; } }
  .dashboard__title {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.4; }
    @media all and (min-width: 501px) {
      .dashboard__title {
        font-size: 20px; } }
    .dashboard__title .assessment-title {
      font-size: 16px; }
    .dashboard__title--normal {
      font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
      font-weight: normal;
      font-size: 14px; }
      @media all and (min-width: 501px) {
        .dashboard__title--normal {
          font-size: 14px; } }
    .dashboard__title--normal--assessment {
      font-size: 16px; }
      @media all and (min-width: 501px) {
        .dashboard__title--normal--assessment {
          font-size: 16px; } }
    .dashboard__title--light {
      font-weight: normal;
      font-size: 14px; }
      @media all and (min-width: 501px) {
        .dashboard__title--light {
          font-size: 14px; } }
  .dashboard__paragraph {
    font-size: 14px;
    line-height: 1.4;
    margin-top: 20px; }
  .dashboard__recommendation {
    font-size: 14px;
    line-height: 1.4;
    padding: 0 20px 20px; }
    .dashboard__recommendation:before {
      content: ' ';
      width: 10px;
      height: 10px;
      background: #ae2573;
      -webkit-border-radius: 50%;
              border-radius: 50%;
      display: inline-block;
      margin-right: 10px; }
    .dashboard__recommendation-seperator {
      display: inline-block;
      width: 10px;
      padding-top: 5px;
      border-top: 1px dotted #ae2573;
      height: 5px;
      text-indent: -999px;
      overflow: hidden;
      margin: 5px 5px 0; }

.dashboard-nav {
  margin-top: 20px; }
  .dashboard-nav__item {
    float: left;
    width: 33.333%;
    text-align: center; }
    .dashboard-nav__item:not(:last-of-type) {
      width: calc(33.333% - 1px);
      margin-right: 1px; }
  .dashboard-nav__link {
    display: block;
    padding: 10px;
    min-height: 100px;
    color: #4d4d4d;
    fill: #4d4d4d;
    text-decoration: none;
    line-height: 1.4;
    -webkit-border-radius: 3px;
            border-radius: 3px; }
    @media all and (min-width: 501px) {
      .dashboard-nav__link {
        padding: 10px 5px; } }
    .dashboard-nav__link:hover, .dashboard-nav__link:focus {
      background: #f4f6f9;
      fill: #4d4d4d;
      outline: none; }
    .dashboard-nav__link--active {
      border: 1px solid #cccccc;
      color: #ae2573;
      fill: #ae2573; }
      .dashboard-nav__link--active:hover, .dashboard-nav__link--active:focus {
        fill: #ae2573; }
  .dashboard-nav__icon {
    margin-bottom: 10px;
    width: 100%; }

/*
* @file _article_summary.scss
* @author Stephen Sulik
*/
.article-summary {
  border: 1px solid #ccc;
  margin-top: 20px;
  background: #ffffff; }

.article-summary__frame {
  width: 100%;
  padding: 10px;
  text-align: center; }

.article-summary__image {
  max-width: 100%; }

.article-summary__content {
  padding: 10px; }

.article-summary__author {
  font-style: italic; }

.icon-list__item {
  display: table;
  margin-top: 20px; }
  .icon-list__item:first-child {
    margin: 0; }

.icon-list__icon-container {
  width: 45px;
  height: 45px;
  background: #ae2573;
  -webkit-border-radius: 50%;
          border-radius: 50%;
  position: relative;
  overflow: hidden; }

.icon-list__icon {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  fill: #ffffff;
  width: 50%;
  height: 50%; }

.icon-list__body {
  width: 100%;
  vertical-align: middle;
  display: table-cell;
  padding-left: 10px; }

.icon-list__heading {
  font-size: 16px;
  color: #707070; }

.icon-list__subheading {
  margin-top: 5px;
  font-size: 12px;
  color: #ae2573;
  text-transform: uppercase; }

/**
* @file _theme.scss
* @author Stephen Sulik
*/
.level--loading {
  position: relative; }
  .level--loading:before {
    content: '';
    position: absolute;
    display: block;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0; }

.level__item {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #efefef; }
  .level__item:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none; }

.level__goal {
  margin-bottom: 10px;
  list-style-type: disc;
  list-style-position: outside;
  margin-left: 15px; }
  @media all and (min-width: 501px) {
    .level__goal {
      margin-left: 0; } }
  .level__goal:last-child {
    margin-bottom: 0; }

.level__icon {
  display: none; }
  .level__icon-container {
    display: none; }
  @media all and (min-width: 501px) {
    .level__icon {
      display: block;
      fill: #ae2573;
      height: 60px;
      width: 60px; }
      .level__icon-container {
        display: table-cell; }
      .level__icon .icon__main {
        -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
        left: 50%;
        top: 50%;
        height: 65%; } }

/**
* @file _checklist.scss
* @author Shaun Dillon
* Checklist styles, used on action plan progress page
*/
.checklist__frequency {
  text-transform: uppercase;
  color: #707070;
  letter-spacing: 1px;
  vertical-align: top; }
  @media all and (min-width: 501px) {
    .checklist__frequency {
      display: inline-block; } }

.checklist__times-done {
  margin-top: 10px; }
  @media all and (min-width: 501px) {
    .checklist__times-done {
      display: inline-block;
      margin-left: 10px;
      margin-top: 0; } }
  .checklist__times-done-item {
    margin-right: 10px; }
    .checklist__times-done-item:last-child {
      margin-right: 0; }
    .checklist__times-done-item.habit__check {
      stroke: #ae2573;
      fill: #ae2573;
      color: #ae2573; }
    .checklist__times-done-item--seperator {
      margin-bottom: 20px; }
  .checklist__times-done--lonely {
    margin-left: 0; }

.checklist__title {
  font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
  font-weight: 400;
  line-height: 1.4;
  margin-top: 10px;
  font-size: 16px; }
  @media all and (min-width: 501px) {
    .checklist__title {
      font-size: 20px; } }
  .checklist__title--strikethrough {
    text-decoration: line-through; }

.checklist__description {
  margin-top: 10px;
  line-height: 1.4;
  max-height: auto; }
  .checklist__description--preview {
    max-height: 20px; }
  .checklist__description--with-icon {
    position: relative;
    padding-left: 24px; }
  .checklist__description-checked {
    vertical-align: middle; }

.checklist__icon {
  width: 14px;
  height: 14px;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }

.checklist__item:not(:last-child) {
  margin-bottom: 20px; }

.checklist__item--separator:not(:last-child) {
  padding-bottom: 20px;
  border-bottom: 1px solid #efefef; }

.habit__completed--auto {
  cursor: auto; }

/**
* @file dialog.scss
* @author Paul Cooper
*
* Dialog styles
*/
.dialog {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999999;
  overflow-y: auto;
  opacity: 0;
  background: rgba(0, 0, 0, 0.4);
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  text-align: left; }
  .dialog--no-overflow {
    overflow: hidden; }
  .dialog--visible {
    display: block; }
  .dialog--open {
    opacity: 1; }
    .dialog--open .dialog__container {
      -webkit-animation-name: scaleIn;
              animation-name: scaleIn;
      opacity: 1; }
  .dialog__container {
    padding: 20px;
    opacity: 0;
    -webkit-animation-duration: 0.2s;
            animation-duration: 0.2s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards; }
  .dialog__inner {
    background: #ffffff;
    margin: 0 auto;
    max-width: 600px;
    -webkit-border-radius: 3px;
            border-radius: 3px; }
  .dialog__header, .dialog__content, .dialog__footer {
    position: relative; }
  .dialog__header {
    padding: 20px; }
  .dialog__content {
    padding: 0 20px; }
  .dialog__footer {
    padding: 20px; }
    .dialog__footer-link {
      display: block;
      margin-bottom: 20px; }
      @media all and (min-width: 501px) {
        .dialog__footer-link {
          float: right;
          line-height: 36px;
          margin: 0; } }
  .dialog__close {
    width: 20px;
    height: 40px;
    position: absolute;
    top: 20px;
    right: 20px;
    color: #4d4d4d; }
    @media all and (min-width: 501px) {
      .dialog__close {
        width: 40px; } }
    .dialog__close-icon {
      width: 20px;
      height: 20px;
      margin: 10px 0; }
      @media all and (min-width: 501px) {
        .dialog__close-icon {
          margin: 10px; } }
  .dialog__title {
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    color: #4d4d4d;
    font-size: 32px;
    line-height: 1.2;
    padding-right: 40px; }
    .dialog__title--center {
      padding-right: 0;
      text-align: center; }
  .dialog__subtitle {
    font-family: "SourceSansProSemibold", Helvetica, Arial, sans-serif;
    font-weight: 600;
    color: #4d4d4d;
    font-size: 20px;
    line-height: 1.4;
    margin-bottom: 10px; }

.height-10p {
  height: 50px;
  display: block; }

.absolute-sso {
  position: absolute; }

.relative-sso {
  position: relative; }

.position-sso__pading-r20 {
  display: block;
  width: 33%;
  margin: 0 auto;
  text-align: center; }

.position-sso__margin-mp10 {
  margin: 10% 0;
  line-height: 1.4;
  text-align: left; }
  @media (max-width: 520px) {
    .position-sso__margin-mp10 {
      line-height: 1.4;
      text-align: center; } }

.position-sso__margin-mp5 {
  margin: 5% 0; }

.modal-sso {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 999999;
  overflow-y: auto;
  opacity: 1;
  background: rgba(0, 0, 0, 0.4);
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  text-align: left; }
  .modal-sso.cookies {
    overflow-y: unset;
    color: #4d4d4d; }
    .modal-sso.cookies .cookies-form {
      padding: 0 20px; }
    .modal-sso.cookies .cookies-form-link {
      padding: 10px 0;
      display: block;
      text-align: center; }
    .modal-sso.cookies .disabled-view {
      -webkit-filter: grayscale(1);
              filter: grayscale(1);
      pointer-events: none; }
    .modal-sso.cookies .description-heading {
      color: black;
      padding: 8px 30px; }
    .modal-sso.cookies .height-25 {
      display: block;
      height: 25px; }
    .modal-sso.cookies .accept-btn-cnt {
      display: block;
      text-align: center;
      margin: 25px 0 10px 0; }
  .modal-sso--not-open {
    opacity: 0; }
    .modal-sso--not-open .dialog__container {
      -webkit-animation-name: scaleIn;
              animation-name: scaleIn;
      opacity: 0; }
  .modal-sso__close {
    width: 16px;
    height: 32px;
    position: absolute;
    top: 20px;
    right: 20px;
    color: #4d4d4d; }
    @media all and (min-width: 501px) {
      .modal-sso__close {
        width: 32px; } }
    .modal-sso__close-icon {
      width: 16px;
      height: 16px;
      margin: 10px 0; }
      @media all and (min-width: 501px) {
        .modal-sso__close-icon {
          margin: 10px; } }
  .modal-sso__container {
    padding: 20px;
    opacity: 1;
    -webkit-animation-duration: 0.2s;
            animation-duration: 0.2s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards; }
  .modal-sso__inner {
    background: #ffffff;
    margin: 0 auto;
    max-width: 600px;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    padding: 1%; }
  .modal-sso__header, .modal-sso__content, .modal-sso__footer {
    position: relative; }
  .modal-sso__header {
    padding: 20px; }
  .modal-sso__content {
    padding: 0 20px; }
  .modal-sso__footer {
    padding: 20px; }
    .modal-sso__footer-link {
      display: block;
      margin-bottom: 20px; }
      @media all and (min-width: 501px) {
        .modal-sso__footer-link {
          float: right;
          line-height: 36px;
          margin: 0; } }
  .modal-sso__title {
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    color: black;
    font-size: 32px;
    line-height: 1.2;
    padding-right: 40px; }
    .modal-sso__title--center {
      padding-right: 0;
      text-align: center; }
    @media (max-width: 520px) {
      .modal-sso__title {
        font-size: 24.61538px; } }

.hide-removal-dialog {
  display: none;
  opacity: 0; }

.sso-FB-btn {
  padding: 10px; }

.sso-avatar {
  -webkit-border-radius: 50%;
          border-radius: 50%; }

.EMAIL-SSO-btn {
  width: 55%;
  padding: 10px; }
  @media (max-width: 520px) {
    .EMAIL-SSO-btn {
      width: 92%;
      padding: 10px 0; } }

.FB-SSO-button {
  width: 65.58%;
  margin: 0 auto;
  padding: 10px; }
  @media (max-width: 520px) {
    .FB-SSO-button {
      width: 100%;
      padding: 10px;
      margin: 0 auto; } }

.FB-SSO-icon {
  z-index: 99999;
  width: 24px;
  left: 124px;
  top: 6px; }
  @media (max-width: 520px) {
    .FB-SSO-icon {
      width: 24px;
      left: 5%;
      top: 25px; } }

.EMAIL-SSO-icon {
  z-index: 99999;
  width: 34px; }
  @media (max-width: 520px) {
    .EMAIL-SSO-icon {
      width: 28px;
      top: 8%;
      margin-left: 2%; } }

.padding-30 {
  padding: 30px; }

.set-password-track-text {
  font-size: 14px; }
  @media (max-width: 520px) {
    .set-password-track-text {
      font-size: 14px; } }

.modal-sso .fb-btn-mob {
  padding: 0px 45px; }
  @media (max-width: 520px) {
    .modal-sso .fb-btn-mob {
      padding: 20px 10px; } }

.modal-sso .btn-sso-login-option {
  padding: 10px 45px;
  width: 46%;
  margin: 0 auto 15px auto;
  display: block; }
  @media (max-width: 520px) {
    .modal-sso .btn-sso-login-option {
      padding: 10px 30px;
      width: 100%;
      margin: 0 auto 15px auto; } }

.sso-image {
  width: 200px;
  display: block;
  margin: 10% auto 0 auto; }

.tile {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1 1;
          flex: 1 1;
  padding: 20px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  margin-bottom: 20px;
  background: #ffffff center center no-repeat;
  -webkit-background-size: cover;
          background-size: cover;
  text-align: center;
  -webkit-box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12); }
  .tile--left-aligned {
    text-align: left; }
  .tile--fixed-height {
    min-height: 175px; }
  .tile--has-link {
    padding: 0; }
  .tile--inlay {
    -webkit-box-shadow: inset 0 0 0 1px #707070;
            box-shadow: inset 0 0 0 1px #707070; }
  .tile--has-width {
    width: 75%;
    max-width: 250px; }
  .tile--has-border {
    -webkit-box-shadow: none;
            box-shadow: none;
    border: 1px solid #cccccc; }
  .tile--disabled {
    opacity: 0.65; }
    .tile--disabled .tile__image::before {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background-color: rgba(0, 0, 0, 0.2); }
    @supports ((-webkit-filter: grayscale(100%)) or (filter: grayscale(100%))) {
      .tile--disabled {
        opacity: 0.8;
        cursor: default;
        -webkit-user-select: none;
           -moz-user-select: none;
            -ms-user-select: none;
                user-select: none;
        pointer-events: none; }
        .tile--disabled .tile__image {
          -webkit-filter: grayscale(100%);
                  filter: grayscale(100%); } }
  .tile--article-link {
    color: #ffffff;
    height: 90px; }
    @media all and (min-width: 501px) {
      .tile--article-link {
        height: 200px; }
        .tile--article-link__content {
          position: absolute;
          bottom: 0;
          left: 0;
          padding: 20px;
          width: 100%; } }
    .tile--article-link:hover .tile--article-link__cover {
      background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(30%, rgba(0, 0, 0, 0.5)), color-stop(60%, rgba(0, 0, 0, 0.8)), color-stop(80%, black));
      background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 30%, rgba(0, 0, 0, 0.8) 60%, black 80%);
      background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 30%, rgba(0, 0, 0, 0.8) 60%, black 80%);
      background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 30%, rgba(0, 0, 0, 0.8) 60%, black 80%); }
    .tile--article-link__cover {
      -webkit-border-radius: 3px;
              border-radius: 3px;
      width: 100%;
      height: 100%;
      position: absolute;
      left: 0;
      top: 0;
      background: rgba(0, 0, 0, 0.8);
      background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(30%, rgba(0, 0, 0, 0.4)), color-stop(60%, rgba(0, 0, 0, 0.8)), color-stop(80%, black));
      background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 30%, rgba(0, 0, 0, 0.8) 60%, black 80%);
      background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 30%, rgba(0, 0, 0, 0.8) 60%, black 80%);
      background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 30%, rgba(0, 0, 0, 0.8) 60%, black 80%); }
  .tile__inner {
    padding: 20px; }
    .tile__inner--featured {
      background: #ae2573; }
  .tile__link {
    -webkit-border-radius: 3px;
            border-radius: 3px;
    color: inherit;
    text-decoration: none;
    position: relative;
    overflow: hidden; }
    .tile__link--with-cover {
      width: 100%;
      height: 100%; }
    @media all and (min-width: 501px) {
      .tile__link--split {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; } }
    .tile__link--split .tile__col {
      width: 100%;
      min-height: 200px;
      height: auto; }
      @media all and (min-width: 501px) {
        .tile__link--split .tile__col {
          float: left;
          width: 50%;
          -webkit-box-flex: 1;
              -ms-flex: 1 0 auto;
                  flex: 1 0 auto; } }
    .tile__link:hover {
      -webkit-box-shadow: 0 0 0 1px #ae2573;
              box-shadow: 0 0 0 1px #ae2573; }
    .tile__link--embedded:hover {
      -webkit-box-shadow: none;
              box-shadow: none; }
    .tile__link--with-padding {
      padding: 20px; }
    .tile__link--with-status {
      padding-bottom: 20px; }
    .tile__link--absolute {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0; }
  .tile__icon-link {
    display: block;
    width: 100%;
    height: 100%;
    margin-top: 10px;
    color: inherit;
    text-decoration: none; }
    .tile__icon-link:hover {
      text-decoration: underline; }
  .tile__title {
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 16px;
    margin: 16px 0 16px;
    display: block;
    text-decoration: none; }
    .tile__title--link:hover {
      text-decoration: underline; }
    .tile__title--center {
      color: #ffffff; }
    .tile__title--article-link {
      color: #ffffff;
      position: relative;
      line-height: 1.2;
      font-size: 16px;
      overflow: hidden; }
      @media all and (min-width: 501px) {
        .tile__title--article-link {
          max-height: 2.4; }
          .tile__title--article-link:after {
            content: '';
            text-align: right;
            position: absolute;
            bottom: 0;
            right: 0;
            width: 40%;
            height: 1.2;
            background: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0)), color-stop(50%, black));
            background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0), black 50%);
            background: -o-linear-gradient(left, rgba(0, 0, 0, 0), black 50%);
            background: linear-gradient(to right, rgba(0, 0, 0, 0), black 50%); } }
  .tile__subtitle {
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.2;
    color: #4d4d4d; }
    .tile__subtitle:not(:last-child) {
      margin-bottom: 10px; }
    .tile__subtitle--article-link {
      color: #ffffff;
      position: relative;
      margin-bottom: 5px;
      line-height: 1.4; }
    .tile__subtitle--featured {
      font-size: 24px; }
  .tile__paragraph {
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.2;
    color: #707070; }
  .tile__info {
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 1.2;
    color: #707070; }
  .tile__icon {
    height: 100%;
    fill: #ae2573; }
    .tile__icon .icon__main {
      width: 90px;
      height: 90px; }
    .tile__icon--small .icon__main {
      width: 70px;
      height: 70px; }
  .tile__title-icon {
    width: 24px;
    margin-right: 10px;
    vertical-align: middle; }
  .tile__image {
    width: 90px;
    height: 90px;
    position: relative;
    display: block;
    color: #ffffff;
    background-position: 50%;
    -webkit-background-size: cover;
            background-size: cover; }
    .tile__image .hex__img-wrap {
      height: 90px; }
    .tile__image--full-width {
      width: auto;
      max-width: 100%;
      height: 120px;
      overflow: hidden;
      -webkit-border-radius: 3px 3px 0 0;
              border-radius: 3px 3px 0 0; }
      .tile__image--full-width-padded {
        -webkit-background-size: auto 100px;
                background-size: auto 100px;
        background-position: 50%; }
      @media all and (min-width: 501px) {
        .tile__image--full-width-featured {
          height: 170px; } }
    .tile__image--badge {
      width: 100%;
      height: 160px;
      -webkit-background-size: 140px 140px;
              background-size: 140px;
      background-position: 50%;
      background-repeat: no-repeat; }
    .tile__image--small {
      width: 70px;
      height: 70px; }
    .tile__image--small-height {
      width: auto;
      height: 70px; }
    .tile__image--large {
      width: 110px;
      height: 110px; }
      .tile__image--large .hex__img-wrap {
        height: 110px; }
    .tile__image--top {
      width: 100%;
      display: block;
      -webkit-border-radius: 3px 3px 0 0;
              border-radius: 3px 3px 0 0; }
  .tile__sub-row {
    padding: 20px;
    border-top: 1px solid #cccccc; }
    .tile__sub-row--grow {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-flex: 1;
          -ms-flex: 1 0 auto;
              flex: 1 0 auto; }
    .tile__sub-row--subtle {
      border-top: 0; }
    .tile__sub-row--highlighted {
      border-top: 0;
      background-color: #efefef; }
    .tile__sub-row--clickable {
      width: 100%;
      text-align: left;
      margin: 0;
      color: #ae2573;
      border: 1px solid #efefef; }
      .tile__sub-row--clickable:hover {
        text-decoration: underline;
        background-color: #efefef; }
      .tile__sub-row--clickable:focus {
        outline: none;
        border-color: #ae2573; }
    .tile__sub-row--danger {
      color: #ffffff;
      text-align: left;
      border: 0;
      -webkit-border-radius: 9px 9px 0 0;
              border-radius: 9px 9px 0 0;
      background-color: #e1514a;
      font-size: 14px;
      line-height: 1.4; }
      @media all and (min-width: 501px) {
        .tile__sub-row--danger {
          font-size: 16px; } }
      .tile__sub-row--danger:hover {
        background-color: #e1514a; }
      .tile__sub-row--danger:focus {
        outline: none; }
    .tile__sub-row--with-icon {
      padding-right: 60px; }
    .tile__sub-row--with-list {
      padding: 0; }
    .tile__sub-row-large {
      margin-bottom: 20px; }
    @media all and (min-width: 501px) {
      .tile__sub-row-large {
        width: 70%;
        float: left;
        margin-bottom: 0; }
      .tile__sub-row-small {
        width: 30%;
        float: left; } }
    @media all and (min-width: 501px) {
      .tile__sub-row-btn {
        float: right; } }
  .tile__btn-row {
    min-height: 44px;
    display: block; }
  .tile__list-item {
    padding: 10px 20px; }
    .tile__list-item:first-child {
      padding-top: 20px; }
    .tile__list-item:last-child {
      padding-bottom: 20px; }
    .tile__list-item--warning {
      padding: 20px;
      background: #e1514a;
      color: #ffffff; }
      .tile__list-item--warning:not(:only-child) {
        margin-top: 10px; }
  .tile__btn {
    display: block;
    margin: 0 auto; }
  .tile__overlay-image {
    height: 80%; }
  @media all and (min-width: 501px) {
    .tile--tracker {
      height: 235px; }
    .tile--me {
      height: 262px; } }

@media all and (min-width: 501px) {
  .signpost-nav--grid {
    text-align: center;
    display: block; }
    .signpost-nav--grid .signpost-nav__description {
      height: 60px; }
    .signpost-nav--grid .flag__image-container {
      display: block;
      padding: 0;
      margin-bottom: 10px; }
    .signpost-nav--grid .signpost-nav__item-inner--with-flag,
    .signpost-nav--grid .signpost-nav__content {
      display: block; }
    .signpost-nav--grid .signpost-nav__heading {
      overflow: hidden;
      -o-text-overflow: ellipsis;
         text-overflow: ellipsis;
      white-space: nowrap; } }

.signpost-nav__item-inner {
  padding: 20px;
  -webkit-box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
  margin-bottom: 20px;
  background: #ffffff;
  color: #4d4d4d;
  text-decoration: none;
  border: 1px solid transparent;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  display: block; }
  .signpost-nav__item-inner--with-flag {
    display: table; }
  .signpost-nav__item-inner:hover {
    border-color: #ae2573; }

.signpost-nav__heading {
  font-size: 24px;
  line-height: 1.4; }
  .signpost-nav__heading--small {
    font-size: 20px; }
  @media all and (min-width: 501px) {
    .signpost-nav__heading:not(.signpost-nav__heading--small) {
      font-size: 32px; } }

.signpost-nav__description {
  font-size: 14px;
  line-height: 20px;
  padding: 5px 0;
  overflow: hidden; }
  @media all and (min-width: 501px) {
    .signpost-nav__description {
      padding: 0; } }

.signpost-nav__description-image {
  width: 70px;
  height: 70px;
  display: inline-block;
  color: #ae2573; }

.context-menu {
  position: relative; }
  .context-menu__on {
    cursor: pointer; }
    .context-menu__on-icon {
      padding-right: 10px; }
      .context-menu__on-icon.details-list__icon {
        padding-right: 0; }
  .context-menu__open {
    width: 40px;
    height: 40px;
    line-height: 40px;
    -webkit-border-radius: 50%;
            border-radius: 50%;
    text-align: center;
    z-index: 30;
    color: inherit; }
    .context-menu--active .context-menu__open, .context-menu__open:hover {
      background: rgba(244, 246, 249, 0.5); }
    .context-menu__open-icon {
      width: 20px;
      height: 20px;
      vertical-align: middle; }
      .context-menu__open-icon-container {
        display: inline-block; }
    .context-menu__open .context-menu__on-icon {
      padding-right: 0; }
    .context-menu__open--alt {
      color: white; }
  .context-menu--active .context-menu__content {
    display: block; }
  .context-menu--z-bump {
    z-index: 30; }
  .context-menu__content {
    background: #ffffff;
    z-index: 40;
    width: 250px;
    max-height: 500px;
    position: absolute;
    padding: 0;
    right: 0;
    top: 0;
    display: none;
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
            box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 3px;
            border-radius: 3px; }
    .context-menu__content:after {
      display: block;
      content: '';
      background: transparent;
      width: 0;
      height: 0;
      position: absolute; }
    .context-menu__content--bottom, .context-menu__content--top {
      left: 50%; }
      .context-menu__content--bottom:after, .context-menu__content--top:after {
        left: 50%;
        -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
                transform: translateX(-50%); }
    .context-menu__content--bottom:after, .context-menu__content--bottom-left:after, .context-menu__content--bottom-right:after {
      top: -14px;
      border-bottom: 15px solid #ffffff;
      border-left: 20px solid transparent;
      border-right: 20px solid transparent; }
    .context-menu__content--top:after, .context-menu__content--top-left:after, .context-menu__content--top-right:after {
      bottom: -14px;
      border-top: 15px solid #ffffff;
      border-left: 20px solid transparent;
      border-right: 20px solid transparent; }
    .context-menu__content--bottom-left, .context-menu__content--top-left {
      right: 50%;
      margin-right: -40px;
      left: auto; }
      .context-menu__content--bottom-left:after, .context-menu__content--top-left:after {
        right: 20px; }
    .context-menu__content--bottom-right, .context-menu__content--top-right {
      left: 50%;
      margin-left: -20px;
      right: auto; }
      .context-menu__content--bottom-right:after, .context-menu__content--top-right:after {
        left: 0; }
    .context-menu__content--bottom {
      -webkit-transform: translate(-50%, 40px);
          -ms-transform: translate(-50%, 40px);
              transform: translate(-50%, 40px); }
    .context-menu__content--top {
      -webkit-transform: translate(-50%, -100%);
          -ms-transform: translate(-50%, -100%);
              transform: translate(-50%, -100%);
      margin-top: -15px; }
    .context-menu__content--bottom-left, .context-menu__content--bottom-right {
      margin-top: 15px;
      top: 100%; }
    .context-menu__content--top-left, .context-menu__content--top-right {
      -webkit-transform: translateY(-100%);
          -ms-transform: translateY(-100%);
              transform: translateY(-100%);
      margin-top: -15px; }
  .context-menu__item {
    border-top: 1px solid #efefef;
    text-align: left; }
    .context-menu__item:hover {
      background: rgba(174, 37, 115, 0.1); }
    .context-menu__item--disabled .context-menu__link {
      color: #cccccc;
      cursor: default; }
      .context-menu__item--disabled .context-menu__link-icon {
        fill: #cccccc; }
    .context-menu__item--disabled:hover {
      background: none; }
  .context-menu__list--compact {
    overflow: auto;
    max-height: 200px; }
  .context-menu__list:first-child .context-menu__item:first-child {
    border: none; }
  .context-menu__link {
    display: block;
    font-size: 16px;
    padding: 20px 20px 20px 60px;
    line-height: 20px;
    color: #ae2573;
    cursor: pointer;
    width: 100%;
    text-decoration: none; }
    .context-menu__link--compact {
      padding: 0 20px 20px; }
      .context-menu__link--compact:first-child {
        padding-top: 20px; }
    .context-menu__link-icon {
      width: 20px;
      height: 20px;
      left: 20px;
      fill: #ae2573; }
    .context-menu__link:hover {
      text-decoration: none; }
  .context-menu__off {
    cursor: pointer; }

.panel {
  background: #f4f6f9;
  padding: 20px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  overflow: hidden; }

.additional-info-cnt {
  margin-top: 1em;
  padding: 1em;
  line-height: 1.4;
  -webkit-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
          box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
  -webkit-border-radius: 3px;
          border-radius: 3px; }

.back-home-link-cnt {
  font-size: 16px;
  color: #0079c8;
  margin-bottom: 10px; }

.info-cnt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 0 0 12px 20px;
  border-bottom: 1px solid #efefef; }
  .info-cnt .item {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end; }
    .info-cnt .item.mt-2 {
      margin-top: 2px; }

.link-more {
  display: block;
  margin-top: 10px; }
  .link-more .link {
    font-family: "SourceSansProSemibold", Helvetica, Arial, sans-serif !important;
    font-size: 16px; }

.break {
  margin-top: 10px;
  margin-bottom: 15px; }

.assessment-item-text {
  font-family: "SourceSansProSemibold", Helvetica, Arial, sans-serif;
  font-size: 16px; }

.cta-card-cnt {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 18px 16px;
  margin: 16px 24px;
  background-color: #ecf2fe;
  -webkit-border-radius: 6px;
          border-radius: 6px;
  width: 100%; }
  .cta-card-cnt .cta-text-cnt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    padding-left: 16px; }
  .cta-card-cnt .cta-icon {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    width: 80px;
    height: auto; }
  .cta-card-cnt .cta-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .cta-card-cnt .cta-btn .btn {
      height: 36px;
      min-width: 140px; }

.tile-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -20px;
  margin-left: -20px; }
  .tile-grid__item {
    display: block;
    width: calc(100% - 20px);
    margin-top: 20px;
    margin-left: 20px; }
    @media all and (min-width: 501px) {
      .tile-grid__item:not(.tile-grid__item--full) {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        float: left;
        width: calc(50% - 20px); }
        .tile-grid__item:not(.tile-grid__item--full):nth-child(2n + 1) {
          clear: left; }
        .tile-grid__item:not(.tile-grid__item--full) .tile-grid__item-inner {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
              -ms-flex-direction: column;
                  flex-direction: column;
          -webkit-box-flex: 1;
              -ms-flex-positive: 1;
                  flex-grow: 1; }
          .tile-grid__item:not(.tile-grid__item--full) .tile-grid__item-inner > * {
            max-width: 100%; } }
    @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .tile-grid__item:not(.tile-grid__item--full) .tile-grid__item-inner {
        display: block; } }
  .tile-grid .tile {
    margin-bottom: 0; }

.progress {
  display: table;
  table-layout: fixed;
  width: 100%; }
  .progress__item {
    display: table-cell;
    vertical-align: top;
    padding: 0 1px 0 1px; }
    @media all and (min-width: 501px) {
      .progress__item {
        padding: 0 2px 0 2px; } }
    .progress__item:not(.progress__item--not-rounded):first-child .progress__bar {
      -webkit-border-radius: 9px 0 0 9px;
              border-radius: 9px 0 0 9px; }
    .progress__item:not(.progress__item--not-rounded):last-child .progress__bar {
      -webkit-border-radius: 0 9px 9px 0;
              border-radius: 0 9px 9px 0; }
    .progress__item:not(.progress__item--not-rounded):only-child .progress__bar {
      -webkit-border-radius: 9px;
              border-radius: 9px; }
    .progress__item:first-child {
      padding: 0 1px 0 0; }
      @media all and (min-width: 501px) {
        .progress__item:first-child {
          padding: 0 2px 0 0; } }
    .progress__item:last-child {
      padding-right: 0; }
  .progress__bar {
    padding: 5px 5px;
    text-align: center;
    background: #efefef;
    position: relative;
    -webkit-border-radius: 0;
            border-radius: 0;
    overflow: hidden;
    -webkit-transition: width 300ms;
    -o-transition: width 300ms;
    transition: width 300ms; }
    .progress__bar--thin {
      padding: 4px 10px; }
    .progress__bar--no-margin {
      margin: 0; }
    .progress__bar-completed {
      -webkit-transition: width 300ms;
      -o-transition: width 300ms;
      transition: width 300ms;
      display: inline-block;
      height: 100%;
      background: #ae2573;
      position: absolute;
      left: 0;
      top: 0;
      -webkit-border-radius: 9px;
              border-radius: 9px; }
      .progress__bar-completed--preload {
        background: #ae2573;
        -webkit-border-radius: 0;
                border-radius: 0; }
      .progress__bar-completed--no-radius {
        -webkit-border-radius: 0;
                border-radius: 0; }
    .progress__bar-icon {
      fill: #ae2573;
      width: 20px;
      height: 20px;
      padding: 5px 0; }
    .progress__highlight .progress__bar {
      background: #ffffff; }
      .progress__highlight .progress__bar-completed {
        background: #ffffff; }
      .progress__highlight .progress__bar--with-icon {
        padding: 10px; }
  .progress__locked {
    display: block; }

.media-list {
  position: relative; }
  .media-list:not(:last-child) {
    border-bottom: 1px solid #efefef; }
  .media-list__toggle {
    width: 26px;
    height: 26px;
    position: absolute;
    top: 0;
    right: 0; }
  .media-list__message {
    display: block; }
    .media-list__message-content {
      line-height: 1.4;
      font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
      font-weight: 400;
      font-size: inherit;
      word-wrap: break-word;
      white-space: pre-wrap; }
  .media-list__arrow {
    position: absolute;
    right: 20px;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 10px;
    height: 10px; }
  .media-list__icon {
    width: 40px;
    height: 40px;
    position: absolute;
    top: 10px;
    left: 15px;
    color: #ffffff; }
    .media-list__icon .icon__back {
      background-color: #ae2573; }
    .media-list__icon .icon__icon {
      width: 40%;
      height: 40%;
      top: 30%;
      left: 30%;
      fill: #ffffff; }
    .media-list__icon .avatar__image,
    .media-list__icon .avatar__first-letter {
      width: 100%;
      height: 100%; }
    @media all and (min-width: 501px) {
      .media-list__icon {
        top: 20px; } }
  .media-list__faded-text {
    margin-top: 5px;
    color: #707070;
    font-size: 12px;
    display: block; }
  .media-list__padding-vertical {
    padding: 20px 0 10px 0; }
  .media-list__item {
    padding: 10px 20px;
    line-height: 1.4;
    display: block;
    color: #4d4d4d;
    text-decoration: none;
    background: #ffffff;
    overflow: hidden;
    position: relative;
    word-wrap: break-word; }
    @media all and (min-width: 501px) {
      .media-list__item {
        padding: 20px; } }
    .media-list__item--compact {
      padding: 10px; }
      .media-list__item--compact.media-list__item--with-badge {
        min-height: 60px;
        padding-left: 60px; }
      .media-list__item--compact.media-list__item--with-arrow {
        padding-right: 30px; }
      .media-list__item--compact .media-list__arrow {
        right: 10px; }
      .media-list__item--compact .media-list__icon {
        left: 10px;
        top: 10px; }
    .media-list__item--button {
      width: 100%;
      color: #ae2573; }
      .media-list__item--button:hover {
        background-color: #efefef;
        text-decoration: underline; }
    .media-list__item--loader {
      line-height: 0; }
    .media-list__item--link:hover {
      background-color: #efefef; }
      .media-list__item--link:hover .media-list__icon {
        color: #efefef; }
    .media-list__item--read {
      color: #707070;
      background-color: #efefef; }
      .media-list__item--read .media-list__icon {
        color: #efefef; }
    .media-list__item--unread {
      color: #000000; }
    .media-list__item--unread:before {
      content: ' ';
      display: block;
      position: absolute;
      top: -13px;
      left: -13px;
      width: 26px;
      height: 26px;
      background: #ae2573;
      -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
              transform: rotate(45deg); }
    .media-list__item--with-badge {
      padding-left: 70px;
      min-height: 60px; }
      @media all and (min-width: 501px) {
        .media-list__item--with-badge {
          min-height: 80px; } }
    .media-list__item--with-arrow {
      padding-right: 50px; }
  .media-list__textarea {
    height: 40px;
    padding: 10px;
    line-height: 18px; }

/**
* @file _details.scss
*
* List of details, used on discovery details pages
*
* @author Shaun Dillon
*/
.details {
  text-align: center;
  margin-top: 0; }
  @media all and (min-width: 501px) {
    .details {
      text-align: left; } }
  .details__heading {
    line-height: 1; }
    .details__heading-icon {
      display: none; }
      @media all and (min-width: 501px) {
        .details__heading-icon {
          display: block; } }
    .details__heading--with-settings {
      position: relative; }
      @media all and (min-width: 501px) {
        .details__heading--with-settings {
          padding-right: 45px; } }
    .details__heading-settings {
      height: 25px;
      width: 25px;
      opacity: 0.7;
      display: inline-block; }
      .details__heading-settings:hover {
        opacity: 1; }
      @media all and (min-width: 501px) {
        .details__heading-settings {
          position: absolute;
          right: 0;
          top: 0; } }
  .details-background {
    background-repeat: no-repeat;
    -webkit-background-size: auto 100%;
            background-size: auto 100%; }
    .details-background--mobile-override {
      background-position: -9999px -9999px; }
    .details-background--small {
      -webkit-background-size: auto 50%;
              background-size: auto 50%; }
    .details-background--micro {
      -webkit-background-size: auto 30%;
              background-size: auto 30%; }
    @media all and (min-width: 801px) {
      .details-background--right {
        background-position: bottom right; } }
    @media all and (min-width: 801px) {
      .details-background--left {
        background-position: bottom left; } }
  .details__btn {
    display: block;
    text-align: center;
    width: 100%; }
    .details__btn:not(:last-child) {
      margin-bottom: 10px; }
    @media all and (min-width: 501px) {
      .details__btn {
        width: auto;
        float: right; }
        .details__btn:not(:last-child) {
          margin-bottom: 0; }
        .details__btn:not(:first-child) {
          margin-right: 20px; } }
  @media all and (min-width: 801px) {
    .details__small-descripton {
      width: 50%; } }

.details-list {
  border-top: 1px solid #efefef;
  width: 100%;
  height: 60px;
  text-align: left;
  position: relative;
  padding-left: 20px; }
  .details-list--shareable {
    padding-right: 60px; }
  @media all and (min-width: 501px) {
    .details-list {
      display: table;
      height: 80px;
      padding-left: 0; }
      .details-list--centered {
        text-align: center; }
      .details-list--shareable {
        padding-right: 80px; }
      .details-list__units {
        display: none; } }
  .details-list--border {
    border-bottom: 1px solid #efefef; }
  .details-list__btn {
    text-align: center;
    width: 60px;
    height: 60px; }
    @media all and (min-width: 501px) {
      .details-list__btn {
        width: 80px;
        height: 80px; } }
  .details-list__icon {
    fill: #950c5a;
    height: 20px; }
    .details-list__icon--large {
      max-height: 100%; }
    @media all and (min-width: 501px) {
      .details-list__icon {
        height: 26.66667px; }
        .details-list__icon--large {
          height: 60px; } }
  .details-list__item {
    display: inline-block;
    position: relative;
    padding: 0 20px 0 0;
    font-size: 12px;
    line-height: 60px; }
    .details-list__item:not(:first-child):before {
      content: '\2022';
      display: inline-block;
      margin: 0 10px 0 0; }
    .details-list__item--no-mobile {
      display: none; }
    .details-list__item--share {
      position: absolute;
      right: 0;
      padding: 0;
      width: 60px;
      height: 60px;
      border-left: 1px solid #efefef; }
      .details-list__item--share:not(:first-child):before {
        content: '';
        display: none; }
    .details-list__item--badge {
      position: absolute;
      right: 0;
      height: 100%;
      padding: 10px 20px; }
      .details-list__item--badge:not(:first-child):before {
        content: '';
        display: none; }
    .details-list__item--no-padding {
      padding: 0; }
    @media all and (min-width: 501px) {
      .details-list__item {
        padding: 0 20px;
        display: table-cell;
        line-height: 17px;
        vertical-align: middle; }
        .details-list__item--badge {
          position: static;
          padding: 0 20px; }
        .details-list__item--no-mobile {
          display: table-cell; }
        .details-list__item--users {
          font-size: 20px;
          font-style: italic; }
        .details-list__item--share {
          padding: 0;
          width: 80px;
          height: 80px; }
        .details-list__item:not(:first-child) {
          border-left: 1px solid #efefef; }
          .details-list__item:not(:first-child):before {
            content: '';
            display: none; } }
  .details-list__value {
    display: inline; }
    @media all and (min-width: 501px) {
      .details-list__value {
        font-size: 20px;
        font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
        font-weight: 100;
        margin-bottom: 5px; } }
  .details-list__label {
    display: none; }
  @media all and (min-width: 501px) {
    .details-list__value, .details-list__label {
      display: block; } }

.spin-button {
  display: block; }
  .spin-button__label {
    float: left;
    line-height: 42px;
    font-size: 20px;
    min-width: 33%; }
    .spin-button__label:focus {
      outline: none;
      color: #ae2573; }
  .spin-button__icon {
    width: 15px;
    height: 15px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%);
    text-indent: -999px; }
  .spin-button__control {
    float: left;
    display: inline-block;
    margin-left: 10px;
    width: 42px;
    height: 42px;
    text-indent: -999px;
    background: #ffffff;
    border: 2px solid #cccccc;
    -webkit-border-radius: 100%;
            border-radius: 100%;
    position: relative; }
    .spin-button__control:focus {
      outline: none;
      border-color: #ae2573; }
      .spin-button__control:focus:before {
        -webkit-box-shadow: rgba(174, 37, 115, 0.4) 0 0 0 7px;
                box-shadow: rgba(174, 37, 115, 0.4) 0 0 0 7px; }
    .spin-button__control:hover {
      background: #efefef; }
    .spin-button__control:before {
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      -webkit-box-shadow: rgba(174, 37, 115, 0) 0 0 0 0;
              box-shadow: rgba(174, 37, 115, 0) 0 0 0 0;
      content: ' ';
      -webkit-border-radius: 100%;
              border-radius: 100%;
      -webkit-transition: all 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
      -o-transition: all 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
      transition: all 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms; }
    .spin-button__control-label {
      display: none; }
    .spin-button__control-wrapper {
      float: right; }
      @media all and (min-width: 501px) {
        .spin-button__control-wrapper {
          float: left; } }

.search {
  margin: 20px 0;
  font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
  font-weight: 400; }
  .search__input {
    -webkit-border-top-right-radius: 0;
            border-top-right-radius: 0;
    -webkit-border-bottom-right-radius: 0;
            border-bottom-right-radius: 0;
    font-size: 16px;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    padding: 15px 20px;
    height: 52px;
    border-right: none; }
  .search__btn {
    width: 25%;
    height: 52px;
    line-height: 50px;
    overflow: hidden;
    border: none;
    -webkit-border-top-right-radius: 3px;
            border-top-right-radius: 3px;
    -webkit-border-bottom-right-radius: 3px;
            border-bottom-right-radius: 3px;
    border-left: 0;
    font-size: 0;
    position: relative;
    z-index: 10;
    background: #ae2573;
    font-family: "SourceSansProLight", Helvetica, Arial, sans-serif;
    font-weight: 100;
    color: #ffffff;
    cursor: pointer; }
    .search__btn:hover {
      color: #ffffff;
      background: #950c5a; }
      .search__btn:hover .search__btn-icon {
        fill: #ffffff; }
    @media all and (min-width: 801px) {
      .search__btn {
        font-size: 16px; } }
    .search__btn-icon {
      fill: #ffffff;
      width: 20px;
      height: 20px;
      vertical-align: middle; }
      @media all and (min-width: 801px) {
        .search__btn-icon {
          vertical-align: initial;
          width: 18px;
          height: 18px;
          margin-right: 5px;
          position: relative;
          top: 3px; } }

.timeline-item:not(:last-child) {
  margin-bottom: 20px; }

.leaderboard {
  text-align: left; }
  .leaderboard__item {
    line-height: 1.4; }
    .leaderboard__item:not(:first-child) {
      border-top: 1px solid #efefef; }
    .leaderboard__item--active {
      background-color: #efefef; }
  .leaderboard__position {
    font-size: 16px; }
  .leaderboard__name {
    word-break: break-all; }
  .leaderboard__percentage--complete {
    color: #2ba361; }
  .leaderboard__percentage .icon {
    display: inline-block;
    vertical-align: text-top;
    margin-left: 10px; }
  @media (max-width: 500px) {
    .leaderboard__item {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      padding: 20px; }
      .leaderboard__item .leaderboard__position {
        margin-right: 20px; }
      .leaderboard__item .leaderboard__info {
        width: 100%;
        margin-top: 10px; }
      @supports (display: grid) {
        .leaderboard__item--has-position {
          display: grid;
          grid-template-columns: -webkit-min-content 1fr;
          grid-template-columns: min-content 1fr;
          grid-gap: 10px 20px; }
          .leaderboard__item--has-position .leaderboard__position,
          .leaderboard__item--has-position .leaderboard__info {
            margin: 0; }
          .leaderboard__item--has-position .leaderboard__body,
          .leaderboard__item--has-position .leaderboard__info {
            grid-column: 2 / 3; } }
    .leaderboard__avatar {
      display: none; } }
  @media (min-width: 501px) {
    .leaderboard {
      display: table;
      width: 100%;
      border-collapse: collapse; }
      .leaderboard__item {
        display: table-row; }
        .leaderboard__item > * {
          display: table-cell;
          vertical-align: middle;
          padding: 20px 10px; }
          .leaderboard__item > *:first-child {
            padding-left: 20px; }
          .leaderboard__item > *:last-child {
            padding-right: 20px; }
      .leaderboard__avatar {
        width: 40px;
        height: 40px;
        margin-right: 10px;
        color: #ffffff; }
      .leaderboard__position {
        text-align: right; }
      .leaderboard__body {
        width: 100%; }
      .leaderboard__info {
        white-space: nowrap;
        text-align: right; } }

.countdown-list {
  padding: 20px 0;
  width: 100%;
  font-size: 0; }
  .countdown-list__period, .countdown-list__value {
    display: block; }
  .countdown-list__item {
    display: inline-block;
    font-size: 14px;
    width: 33.3%;
    height: 100%;
    color: #4d4d4d; }
    .countdown-list__item:first-child {
      font-size: 40px;
      color: inherit;
      display: block;
      width: 100%;
      margin-bottom: 20px; }
      .countdown-list__item:first-child .countdown-list__value,
      .countdown-list__item:first-child .countdown-list__period {
        display: inline;
        font-size: inherit; }
    @media all and (min-width: 501px) {
      .countdown-list__item:first-child {
        display: inline-block;
        width: 33.3%;
        margin: 0; }
      .countdown-list__item:not(:first-child) .countdown-list__value {
        font-size: 20px;
        margin-bottom: 5px; } }

.tooltip {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  z-index: 30;
  opacity: 1;
  padding: 5px;
  background: #ffffff;
  color: #4d4d4d;
  -webkit-transition: opacity 0.1s ease-out;
  -o-transition: opacity 0.1s ease-out;
  transition: opacity 0.1s ease-out;
  -webkit-box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.3);
          box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.3);
  line-height: 1; }
  .tooltip--hidden {
    opacity: 0;
    -webkit-transition: opacity 0s linear;
    -o-transition: opacity 0s linear;
    transition: opacity 0s linear; }
  .tooltip__title {
    font-family: "SourceSansProSemibold", Helvetica, Arial, sans-serif;
    font-weight: 600;
    font-size: 14px;
    display: block; }
  .tooltip__subtitle {
    margin-top: 5px;
    font-size: 12px; }

.watermark {
  background: rgba(255, 255, 255, 0.9);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 50;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  color: #4d4d4d; }
  .watermark__content {
    padding: 20px;
    text-align: center;
    position: absolute;
    width: 100%;
    top: 50%;
    left: 0;
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
    z-index: 60; }
  .watermark__title {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.4; }
    @media all and (min-width: 501px) {
      .watermark__title {
        font-size: 20px; } }
  .watermark__paragraph {
    font-size: 14px;
    line-height: 1.4;
    margin-top: 10px; }
  .watermark__actions {
    margin-top: 20px; }
  .watermark__action {
    display: block;
    margin-top: 10px; }
    .watermark__action:first-child {
      margin: 0; }

.badge {
  display: table;
  padding: 10px 20px;
  border: 1px solid #ae2573;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  position: relative;
  margin-left: auto;
  margin-right: auto; }
  @media all and (min-width: 501px) {
    .badge {
      margin-left: 0;
      margin-right: 0; } }
  .badge__frame {
    width: 100%;
    height: 100%;
    position: relative;
    fill: #ae2573; }
  .badge__cell {
    display: table-cell;
    vertical-align: middle; }
  .badge__image {
    width: 25px;
    margin-right: 10px; }
  .badge__body {
    font-size: 16px; }
  .badge__status {
    position: absolute;
    width: 20px;
    height: 20px;
    -webkit-border-radius: 10px;
            border-radius: 10px;
    top: -10px;
    right: -10px;
    background: #ae2573;
    text-align: center;
    line-height: 20px; }
  .badge-value {
    width: 90px;
    height: 90px;
    position: relative; }
    @media all and (min-width: 501px) {
      .badge-value {
        width: 110px;
        height: 120px; } }
    .badge-value__title {
      width: 100%;
      top: 25px;
      left: 0;
      position: absolute;
      font-size: 24px;
      color: #ffffff;
      text-align: center;
      z-index: 30; }
      @media all and (min-width: 501px) {
        .badge-value__title {
          top: 34px;
          font-size: 32px; } }
    .badge-value__description {
      width: 100%;
      top: 51px;
      left: 0;
      position: absolute;
      font-size: 12px;
      color: #ffffff;
      text-align: center;
      z-index: 30; }
      @media all and (min-width: 501px) {
        .badge-value__description {
          top: 68px;
          font-size: 14px; } }
    .badge-value__icon {
      width: 100%;
      height: 100%; }
    .badge-value .icon__back {
      fill: #ae2573; }
    .badge-value--small {
      width: 70px; }
      .badge-value--small .badge-value__title {
        font-size: 20px;
        top: 27px; }
      .badge-value--small .badge-value__icon {
        width: 70px; }
      @media all and (min-width: 501px) {
        .badge-value--small {
          width: 90px; }
          .badge-value--small .badge-value__title {
            font-size: 24px;
            top: 40px; }
          .badge-value--small .badge-value__icon {
            width: 90px; } }
    .badge-value--trophy {
      width: 160px;
      height: 110px; }
      .badge-value--trophy .badge-value__title {
        top: 30px;
        font-size: 32px;
        color: #ffffff; }
      .badge-value--trophy .badge-value__description {
        top: 65px;
        font-size: 14px;
        color: #ffffff; }
      .badge-value--trophy .badge-value__icon {
        width: 160px;
        height: 110px; }
      .badge-value--trophy .icon__back {
        fill: #ae2573; }
      @media all and (min-width: 501px) {
        .badge-value--trophy {
          width: 200px;
          height: 140px; }
          .badge-value--trophy .badge-value__title {
            top: 40px;
            font-size: 40px; }
          .badge-value--trophy .badge-value__description {
            top: 80px;
            font-size: 16px; }
          .badge-value--trophy .badge-value__icon {
            width: 200px;
            height: 140px; } }
    .badge-value--light .badge-value__title,
    .badge-value--light .badge-value__description {
      color: #4d4d4d; }
  .badge-progress {
    width: 120px;
    height: 150px;
    margin: 0 auto;
    position: relative; }
    .badge-progress__position {
      width: 50px;
      height: 50px;
      fill: #ae2573;
      position: absolute;
      top: 0;
      left: 7px;
      z-index: 20; }
    .badge-progress__position-label {
      width: 40px;
      top: 20px;
      left: 12px;
      position: absolute;
      font-size: 12px;
      color: #ffffff;
      text-align: center;
      z-index: 30; }
    .badge-progress__value-label {
      width: 90%;
      position: absolute;
      top: 58px;
      left: 5%;
      font-size: 24px;
      color: #4d4d4d;
      font-weight: 200;
      text-align: center;
      z-index: 30; }
      .badge-progress__value-label--lonely {
        top: 63px; }
    .badge-progress__difference-label {
      width: 90%;
      position: absolute;
      top: 87px;
      left: 5%;
      font-size: 12px;
      color: #4d4d4d;
      text-align: center;
      font-weight: 300;
      z-index: 30; }
    .badge-progress__frame {
      width: 100%;
      height: 100%;
      fill: #ae2573;
      position: relative;
      z-index: 10; }
  .badge-finished__place-label {
    width: 100%;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    font-size: 24px;
    text-align: center;
    z-index: 30; }
    @media all and (min-width: 501px) {
      .badge-finished__place-label {
        font-size: 40px; } }
  .badge-finished__metric-icon {
    width: 20px;
    height: 20px;
    fill: #ffffff;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    bottom: 20px; }
    @media all and (min-width: 501px) {
      .badge-finished__metric-icon {
        width: 30px;
        height: 30px;
        bottom: 35px; } }
  .badge-image {
    color: #ffffff;
    position: relative; }
    .badge-image__icon {
      fill: #ffffff;
      position: absolute;
      left: 50%;
      top: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      width: 40px; }
      .badge-image__icon--alt {
        fill: #ae2573;
        width: 25px; }
      @media all and (min-width: 501px) {
        .badge-image__icon {
          width: 50px; }
          .badge-image__icon--alt {
            width: 35px; } }
    .badge-image__label {
      font-size: 24px;
      color: #4d4d4d;
      position: absolute;
      left: 50%;
      top: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
      @media all and (min-width: 501px) {
        .badge-image__label {
          font-size: 40px; } }
  .badge-achievement {
    position: relative; }
    .badge-achievement__frame {
      width: 50px;
      height: 50px;
      fill: #cccccc;
      float: left; }
      .badge-achievement__frame--active {
        fill: #ae2573; }
      .badge-achievement__frame--small {
        width: 20px;
        height: 20px; }
      .badge-achievement__frame--medium {
        width: 80px;
        height: 80px; }
      .badge-achievement__frame--large {
        width: 120px;
        height: 120px; }
    .badge-achievement__icon {
      width: 40%;
      height: 40%;
      z-index: 20;
      fill: #4d4d4d; }
      .badge-achievement__icon--active {
        fill: #ae2573; }
    .badge-achievement__inner-badge {
      width: 75%;
      height: 75%;
      fill: #ffffff; }
    .badge-achievement__value {
      text-align: center;
      font-size: 16px;
      z-index: 20; }
      .badge-achievement__value--active {
        color: #ffffff; }
      .badge-achievement__value--small {
        font-size: 12px; }
    .badge-achievement__backing {
      fill: #ffffff; }
      .badge-achievement__backing--active {
        fill: #ae2573; }
      .badge-achievement__backing--disabled {
        fill: #cccccc; }
  .badge-list {
    text-align: center;
    padding: 5px 0; }
    .badge-list__title {
      color: #707070;
      font-size: 12px;
      font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
      font-weight: 400;
      padding: 5px 0 5px; }
      @media all and (min-width: 501px) {
        .badge-list__title {
          padding: 5px 0 10px; } }
    .badge-list__item {
      display: inline-block;
      margin: 5px 5px 5px 0; }
      .badge-list__item:last-child {
        margin-right: 0; }

.badge-smart-habit {
  background: #ffffff;
  fill: #ae2573;
  -webkit-border-radius: 100%;
          border-radius: 100%;
  -webkit-box-shadow: inset 0 0 2px 2px #ae2573;
          box-shadow: inset 0 0 2px 2px #ae2573; }

.badge-points-large {
  padding: 10px 20px;
  -webkit-border-radius: 50px;
          border-radius: 50px;
  background: #ae2573;
  color: #ffffff;
  font-size: 24px;
  border: 2px solid #ffffff;
  overflow: hidden; }
  @media all and (min-width: 501px) {
    .badge-points-large {
      font-size: 32px; } }
  .badge-points-large__descriptor {
    font: "SourceSansProSemibold", Helvetica, Arial, sans-serif;
    font-weight: 600;
    margin-right: 10px;
    float: left; }

.reward-points {
  position: relative;
  top: 18px;
  height: 26px;
  line-height: 26px;
  border: 2px solid #ffffff;
  -webkit-border-radius: 18px;
          border-radius: 18px;
  padding: 0 3px; }
  .reward-points--masthead {
    border: 1px solid #004fb6; }
  .reward-points__icon {
    position: relative;
    float: left;
    width: 20px;
    height: 20px;
    fill: #004fb6;
    color: #004fb6;
    top: 2px; }
    .reward-points__icon:after {
      content: '';
      position: absolute;
      z-index: -1;
      top: 30%;
      left: 20%;
      -webkit-border-radius: 50%;
              border-radius: 50%;
      -webkit-animation: inherit;
              animation: inherit;
      width: 6px;
      height: 6px;
      opacity: 0; }
  .reward-points__heart {
    position: absolute;
    width: 40px;
    height: 31px;
    left: 0;
    top: 6px;
    display: none; }
    .reward-points__heart:before, .reward-points__heart:after {
      content: '';
      position: absolute;
      left: 19px;
      top: -7px;
      width: 19px;
      height: 31px;
      background-color: #004fb6;
      -webkit-border-radius: 19px 19px 0 0;
              border-radius: 19px 19px 0 0;
      -webkit-transform: rotate(-45deg);
          -ms-transform: rotate(-45deg);
              transform: rotate(-45deg);
      -webkit-transform-origin: 0 100%;
          -ms-transform-origin: 0 100%;
              transform-origin: 0 100%; }
    .reward-points__heart:after {
      left: 0;
      -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
              transform: rotate(45deg);
      -webkit-transform-origin: 100% 100%;
          -ms-transform-origin: 100% 100%;
              transform-origin: 100% 100%; }
  .reward-points__current {
    display: inline-block;
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400;
    float: left;
    padding: 0 5px; }
  .reward-points__new {
    position: absolute;
    right: 3px;
    bottom: 2px;
    width: calc(100% - 27px);
    height: 20px;
    line-height: 1.7;
    font-size: 12px;
    color: #ffd900;
    text-align: center;
    background-color: #004fb6;
    -webkit-border-radius: 9px;
            border-radius: 9px;
    display: none; }
  .reward-points--animate-1 .reward-points__icon {
    -webkit-animation: bounce 500ms linear forwards;
            animation: bounce 500ms linear forwards; }
    .reward-points--animate-1 .reward-points__icon:after {
      -webkit-animation-name: bubbles;
              animation-name: bubbles;
      -webkit-animation-timing-function: ease-out;
              animation-timing-function: ease-out; }
  .reward-points--animate-1 .reward-points__heart {
    display: block;
    opacity: 0;
    -webkit-animation: heart-scale ease 0.4s;
            animation: heart-scale ease 0.4s; }
  .reward-points--animate-1 .reward-points__current {
    opacity: 0;
    -webkit-animation-name: bounce-in;
            animation-name: bounce-in;
    -webkit-animation-duration: 500ms;
            animation-duration: 500ms;
    -webkit-animation-delay: 0.7s;
            animation-delay: 0.7s;
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards; }
  .reward-points--animate-1 .reward-points__new {
    display: block;
    opacity: 0;
    -webkit-animation-name: bounce-in, scale-out;
            animation-name: bounce-in, scale-out;
    -webkit-animation-duration: 500ms, 500ms;
            animation-duration: 500ms, 500ms;
    -webkit-animation-delay: 0s, 0.7s;
            animation-delay: 0s, 0.7s;
    -webkit-animation-timing-function: linear, ease;
            animation-timing-function: linear, ease;
    -webkit-animation-fill-mode: forwards, forwards;
            animation-fill-mode: forwards, forwards; }

@-webkit-keyframes bounce {
  0% {
    -webkit-transform: scale(1) translate3d(0, 0, 0);
            transform: scale(1) translate3d(0, 0, 0); }
  50% {
    -webkit-transform: scale(1.3);
            transform: scale(1.3); }
  100% {
    -webkit-transform: scale(1) translate3d(0, 0, 0);
            transform: scale(1) translate3d(0, 0, 0); } }

@keyframes bounce {
  0% {
    -webkit-transform: scale(1) translate3d(0, 0, 0);
            transform: scale(1) translate3d(0, 0, 0); }
  50% {
    -webkit-transform: scale(1.3);
            transform: scale(1.3); }
  100% {
    -webkit-transform: scale(1) translate3d(0, 0, 0);
            transform: scale(1) translate3d(0, 0, 0); } }

@-webkit-keyframes bounce-in {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.3) translate3d(0, 0, 0);
            transform: scale(0.3) translate3d(0, 0, 0); }
  50% {
    opacity: 0.9;
    -webkit-transform: scale(1.2);
            transform: scale(1.2); }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) translate3d(0, 0, 0);
            transform: scale(1) translate3d(0, 0, 0); } }

@keyframes bounce-in {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.3) translate3d(0, 0, 0);
            transform: scale(0.3) translate3d(0, 0, 0); }
  50% {
    opacity: 0.9;
    -webkit-transform: scale(1.2);
            transform: scale(1.2); }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) translate3d(0, 0, 0);
            transform: scale(1) translate3d(0, 0, 0); } }

@-webkit-keyframes scale-out {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1); }
  50% {
    opacity: 0;
    -webkit-transform: scale(0);
            transform: scale(0); } }

@keyframes scale-out {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1); }
  50% {
    opacity: 0;
    -webkit-transform: scale(0);
            transform: scale(0); } }

@-webkit-keyframes bubbles {
  20% {
    opacity: 0; }
  23% {
    opacity: 0.7;
    -webkit-box-shadow: 5px 9px 0 0 #004fb6, 5px 3px 0 0 #004fb6, 3px 5px 0 0 #004fb6, 2px 8px 0 0 #004fb6, 6px 7px 0 0 #004fb6, 5px 2px 0 0 #004fb6, 3px 7px 0 0 #004fb6, 8px 7px 0 0 #004fb6, 1px 2px 0 0 #004fb6, 9px 1px 0 0 #004fb6, 4px 3px 0 0 #004fb6, 1px 2px 0 0 #004fb6, 7px 8px 0 0 #004fb6, 9px 6px 0 0 #004fb6;
            box-shadow: 5px 9px 0 0 #004fb6, 5px 3px 0 0 #004fb6, 3px 5px 0 0 #004fb6, 2px 8px 0 0 #004fb6, 6px 7px 0 0 #004fb6, 5px 2px 0 0 #004fb6, 3px 7px 0 0 #004fb6, 8px 7px 0 0 #004fb6, 1px 2px 0 0 #004fb6, 9px 1px 0 0 #004fb6, 4px 3px 0 0 #004fb6, 1px 2px 0 0 #004fb6, 7px 8px 0 0 #004fb6, 9px 6px 0 0 #004fb6; }
  100% {
    opacity: 0.7;
    -webkit-box-shadow: 2px -21px 0 -3px #004fb6, -2px -18px 0 -3px #004fb6, 20px -9px 0 -3px #004fb6, 14px -12px 0 -3px #004fb6, 22px 4px 0 -3px #004fb6, 21px 2px 0 -3px #004fb6, 8px 18px 0 -3px #004fb6, 11px 14px 0 -3px #004fb6, -12px 17px 0 -3px #004fb6, -6px 17px 0 -3px #004fb6, -23px 2px 0 -3px #004fb6, -20px 5px 0 -3px #004fb6, -17px -14px 0 -3px #004fb6, -18px -7px 0 -3px #004fb6;
            box-shadow: 2px -21px 0 -3px #004fb6, -2px -18px 0 -3px #004fb6, 20px -9px 0 -3px #004fb6, 14px -12px 0 -3px #004fb6, 22px 4px 0 -3px #004fb6, 21px 2px 0 -3px #004fb6, 8px 18px 0 -3px #004fb6, 11px 14px 0 -3px #004fb6, -12px 17px 0 -3px #004fb6, -6px 17px 0 -3px #004fb6, -23px 2px 0 -3px #004fb6, -20px 5px 0 -3px #004fb6, -17px -14px 0 -3px #004fb6, -18px -7px 0 -3px #004fb6; } }

@keyframes bubbles {
  20% {
    opacity: 0; }
  23% {
    opacity: 0.7;
    -webkit-box-shadow: 5px 9px 0 0 #004fb6, 5px 3px 0 0 #004fb6, 3px 5px 0 0 #004fb6, 2px 8px 0 0 #004fb6, 6px 7px 0 0 #004fb6, 5px 2px 0 0 #004fb6, 3px 7px 0 0 #004fb6, 8px 7px 0 0 #004fb6, 1px 2px 0 0 #004fb6, 9px 1px 0 0 #004fb6, 4px 3px 0 0 #004fb6, 1px 2px 0 0 #004fb6, 7px 8px 0 0 #004fb6, 9px 6px 0 0 #004fb6;
            box-shadow: 5px 9px 0 0 #004fb6, 5px 3px 0 0 #004fb6, 3px 5px 0 0 #004fb6, 2px 8px 0 0 #004fb6, 6px 7px 0 0 #004fb6, 5px 2px 0 0 #004fb6, 3px 7px 0 0 #004fb6, 8px 7px 0 0 #004fb6, 1px 2px 0 0 #004fb6, 9px 1px 0 0 #004fb6, 4px 3px 0 0 #004fb6, 1px 2px 0 0 #004fb6, 7px 8px 0 0 #004fb6, 9px 6px 0 0 #004fb6; }
  100% {
    opacity: 0.7;
    -webkit-box-shadow: 2px -21px 0 -3px #004fb6, -2px -18px 0 -3px #004fb6, 20px -9px 0 -3px #004fb6, 14px -12px 0 -3px #004fb6, 22px 4px 0 -3px #004fb6, 21px 2px 0 -3px #004fb6, 8px 18px 0 -3px #004fb6, 11px 14px 0 -3px #004fb6, -12px 17px 0 -3px #004fb6, -6px 17px 0 -3px #004fb6, -23px 2px 0 -3px #004fb6, -20px 5px 0 -3px #004fb6, -17px -14px 0 -3px #004fb6, -18px -7px 0 -3px #004fb6;
            box-shadow: 2px -21px 0 -3px #004fb6, -2px -18px 0 -3px #004fb6, 20px -9px 0 -3px #004fb6, 14px -12px 0 -3px #004fb6, 22px 4px 0 -3px #004fb6, 21px 2px 0 -3px #004fb6, 8px 18px 0 -3px #004fb6, 11px 14px 0 -3px #004fb6, -12px 17px 0 -3px #004fb6, -6px 17px 0 -3px #004fb6, -23px 2px 0 -3px #004fb6, -20px 5px 0 -3px #004fb6, -17px -14px 0 -3px #004fb6, -18px -7px 0 -3px #004fb6; } }

@-webkit-keyframes heart-scale {
  0% {
    -webkit-transform: scale(0.1);
            transform: scale(0.1);
    -webkit-transform-origin: 50% 20%;
            transform-origin: 50% 20%;
    opacity: 1; }
  100% {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
    opacity: 0; } }

@keyframes heart-scale {
  0% {
    -webkit-transform: scale(0.1);
            transform: scale(0.1);
    -webkit-transform-origin: 50% 20%;
            transform-origin: 50% 20%;
    opacity: 1; }
  100% {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
    opacity: 0; } }

.exception {
  position: fixed;
  top: 60px;
  left: 0;
  background: #f4f6f9;
  width: 100%;
  height: 100%;
  padding: 20px;
  z-index: 101; }
  .exception__title {
    margin-bottom: 10px; }
  .exception__message {
    font-size: 16px; }
  @media all and (min-width: 501px) {
    .exception {
      padding: 100px 20px 20px; } }
  .auth .exception {
    top: 0; }

/**
* @file _viz.scss
* @author Paul Cooper
* Visualisation styles
*/
.viz-line {
  display: block;
  position: relative;
  height: 260px; }
  .viz-line__line {
    fill: none;
    stroke: #ae2573;
    stroke-width: 2; }
  .viz-line__grid .tick {
    stroke: #e6e6e6; }
  .viz-line__grid path {
    stroke-width: 0; }
  .viz-line__axis {
    shape-rendering: crispEdges;
    pointer-events: none;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
    .viz-line__axis--x {
      fill: #4d4d4d;
      font-size: 12px; }
      .viz-line__axis--x line {
        stroke: #4d4d4d; }
    .viz-line__axis--y {
      fill: #4d4d4d;
      font-size: 12px; }
      .viz-line__axis--y line {
        stroke: #4d4d4d; }
    .viz-line__axis .domain {
      display: none; }
    .viz-line__axis line {
      stroke-width: 1; }
  .viz-line__point {
    cursor: pointer;
    fill: #ae2573;
    stroke-width: 2px;
    stroke: #ffffff; }
    .viz-line__point:hover {
      stroke-width: 3px; }
  .viz-line__recommended {
    fill: #ae2573;
    opacity: 0.1; }
    .viz-line__recommended-line {
      fill: none;
      stroke: #ae2573;
      stroke-width: 1;
      shape-rendering: crispEdges; }

.viz-sleep {
  overflow: hidden; }
  .viz-sleep__label {
    font-size: 14px;
    fill: #ffffff; }
  .viz-sleep__bar {
    fill: none; }
    .viz-sleep__bar--awake {
      fill: #e1514a; }
    .viz-sleep__bar--rem {
      fill: #d8489a; }
    .viz-sleep__bar--light {
      fill: #ae2573; }
    .viz-sleep__bar--deep {
      fill: #841c57; }

.viz-percentage {
  display: table;
  width: 100%; }
  .viz-percentage__item {
    display: table-cell;
    vertical-align: bottom;
    padding: 20px; }
    .viz-percentage__item:nth-of-type(1n + 1) {
      background: #ae2573; }
    .viz-percentage__item:nth-of-type(2n + 2) {
      background: #841c57; }
  .viz-percentage__value, .viz-percentage__label {
    color: #ffffff; }

.viz-map {
  width: 100%;
  height: 200px;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.viz-circle__background {
  fill: #efefef; }

.viz-circle__fill {
  fill: #ae2573; }
  .viz-circle__fill--full {
    fill: #2ba361; }

.viz-progress {
  height: 260px; }
  .viz-progress__area {
    fill: #efefef;
    opacity: 0.7; }
  .viz-progress__line {
    fill: none;
    stroke: #ae2573;
    stroke-width: 3px; }
  .viz-progress__bar {
    fill: #cccccc; }
    .viz-progress__bar--highlighted {
      fill: #ae2573; }
  .viz-progress__goal {
    fill: none;
    stroke: #ae2573;
    stroke-width: 1;
    shape-rendering: crispEdges; }
  .viz-progress__grid line {
    fill: none;
    stroke: #cccccc;
    shape-rendering: crispedges; }
  .viz-progress__grid .domain {
    display: none; }
  .viz-progress__axis .tick {
    font-size: 12px;
    fill: #4d4d4d; }
    .viz-progress__axis .tick line {
      display: none; }
  .viz-progress__axis .domain {
    display: none; }
  .viz-progress__data-padding {
    padding: 10px; }

.viz-no-data {
  height: 260px;
  position: relative;
  width: 100%; }
  .viz-no-data__container {
    left: 50%;
    position: absolute;
    text-align: center;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    vertical-align: middle;
    width: 100%;
    padding: 20px; }
  .viz-no-data__image {
    height: 30px;
    margin-bottom: 10px;
    margin-left: auto;
    margin-right: auto;
    width: 50px; }
  .viz-no-data__heading {
    font-size: 20px; }
  .viz-no-data .load-more__icon {
    position: static; }

.grid-list {
  font-size: 0;
  margin: 0 auto; }
  @media all and (min-width: 501px) {
    .grid-list {
      width: auto;
      text-align: center; } }
  .grid-list__item {
    font-size: 14px;
    display: table; }
    @media all and (min-width: 501px) {
      .grid-list__item {
        display: block; } }
    .grid-list__item-container {
      margin-bottom: 30px;
      vertical-align: top; }
      .grid-list__item-container:last-child {
        margin-bottom: 0; }
      @media all and (min-width: 501px) {
        .grid-list__item-container {
          width: 33.33%;
          margin-bottom: 0;
          display: inline-block;
          text-align: center; } }
    .grid-list__item--link {
      cursor: pointer;
      text-decoration: none; }
  .grid-list__image {
    width: 45px;
    height: 45px; }
    @media all and (min-width: 501px) {
      .grid-list__image {
        width: 60px;
        height: 60px;
        display: inline-block;
        margin-bottom: 20px; } }
  .grid-list__body {
    width: 100%;
    vertical-align: middle;
    display: table-cell;
    padding-left: 20px; }
    @media all and (min-width: 501px) {
      .grid-list__body {
        display: block;
        padding-left: 0; } }
  .grid-list__heading {
    font-size: 24px; }
    .grid-list__heading--link {
      text-decoration: none; }
      .grid-list__heading--link:hover {
        text-decoration: underline; }

.breadcrumb {
  font-size: 0;
  padding: 0 20px 20px 20px; }
  @media all and (min-width: 801px) {
    .breadcrumb {
      padding: 20px; } }
  .breadcrumb__item {
    text-transform: uppercase;
    display: none;
    margin-right: 5px;
    font-size: 12px; }
    @media all and (min-width: 801px) {
      .breadcrumb__item {
        display: inline; } }
    .breadcrumb__item--inactive {
      color: #707070; }
    .breadcrumb__item:last-child .breadcrumb__next-icon {
      display: none; }
    .breadcrumb__item:nth-last-child(-n + 2) {
      display: inline; }
  .breadcrumb__link {
    display: inline-block;
    max-width: 150px;
    vertical-align: text-bottom; }
  .breadcrumb__next-icon {
    vertical-align: middle;
    margin-left: 5px; }

.skip-navigation {
  height: 60px;
  position: fixed;
  top: 0;
  left: -9999px;
  z-index: 90;
  background: #ffffff;
  display: block;
  padding: 0 20px;
  line-height: 60px; }
  .skip-navigation:focus {
    left: 0; }
  .skip-navigation:hover {
    background: #ffffff; }
  .skip-navigation__target {
    position: absolute;
    line-height: 0; }

.slider {
  -webkit-appearance: none;
  margin-top: 10px;
  padding: 0;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  .slider::-webkit-slider-thumb {
    -webkit-appearance: none;
    margin-top: -9px;
    cursor: pointer;
    background: transparent url("/images/icons/range.svg") no-repeat;
    -webkit-background-size: cover;
            background-size: cover;
    width: 28px;
    height: 28px; }
  .slider::-webkit-slider-runnable-track {
    width: 100%;
    cursor: pointer;
    background: #ae2573;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    height: 10px; }
  .slider::-moz-range-thumb {
    margin-top: -9px;
    cursor: pointer;
    background: transparent url("/images/icons/range.svg") no-repeat;
    background-size: cover;
    width: 28px;
    height: 28px;
    border: 0; }
  .slider::-moz-range-track {
    width: 100%;
    cursor: pointer;
    background: #ae2573;
    border-radius: 3px;
    height: 10px; }
  .slider::-ms-thumb {
    margin-top: -9px;
    cursor: pointer;
    background: transparent url("/images/icons/range.svg") no-repeat;
    background-size: cover;
    height: 20px;
    width: 10px;
    background-image: none;
    background-color: #950c5a;
    top: 0; }
    .slider::-ms-thumb:active {
      border: 0; }
  .slider::-ms-track {
    width: 100%;
    cursor: pointer;
    background: #ae2573;
    border-radius: 3px;
    border: 0;
    border-color: transparent;
    color: transparent; }
  .slider::-ms-fill-lower {
    border: 0 solid transparent; }
  .slider::-ms-fill-upper {
    background-color: #ae2573;
    border: 0; }
  .slider.ng-pristine::-webkit-slider-runnable-track {
    background: #ae2573; }
  .slider.ng-pristine::-moz-range-track {
    background: #ae2573; }
  .slider.ng-pristine::-ms-fill-lower, .slider.ng-pristine::-ms-fill-upper, .slider.ng-pristine::-ms-track {
    background: #ae2573; }

.video {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 25px;
  height: 0;
  display: block; }
  .video__player {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.action-panel {
  background: #ffffff;
  margin-bottom: 20px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
  color: #4d4d4d; }
  .action-panel__inner {
    -webkit-border-radius: 3px;
            border-radius: 3px;
    border: 3px solid #ffffff;
    padding: 17px; }
    .action-panel__inner--disabled {
      background: #efefef;
      border-color: #efefef; }
    .action-panel__inner--active {
      border-color: #ae2573;
      border-bottom: 0;
      -webkit-border-radius: 3px 3px 0 0;
              border-radius: 3px 3px 0 0; }
  .action-panel__active-row {
    background: #ae2573;
    padding: 10px;
    color: #ffffff;
    -webkit-border-bottom-right-radius: 3px;
            border-bottom-right-radius: 3px;
    -webkit-border-bottom-left-radius: 3px;
            border-bottom-left-radius: 3px; }
  .action-panel__paragraph {
    font-size: 16px;
    margin-bottom: 10px;
    line-height: 1.4; }
    .action-panel__paragraph--truncated {
      height: 45px;
      overflow: hidden; }
      @supports (-webkit-line-clamp: 2) {
        .action-panel__paragraph--truncated {
          display: -webkit-box;
          -webkit-line-clamp: 2;
          -webkit-box-orient: vertical; } }
  .action-panel__heading {
    font-size: 20px;
    line-height: 1.4; }
    .action-panel__heading-icon {
      height: 20px;
      width: 20px;
      margin-right: 10px;
      fill: #4d4d4d;
      display: inline-block; }
    .action-panel__heading-label {
      color: #2ba361; }
  .action-panel__animated-button {
    height: 40px;
    min-width: 200px;
    -webkit-transition: all 300ms ease-out;
    -o-transition: all 300ms ease-out;
    transition: all 300ms ease-out; }
    .action-panel__animated-button--active {
      font-size: 0;
      padding: 0;
      color: #2ba361;
      text-align: center;
      min-width: 40px;
      background-color: #2ba361; }
      .action-panel__animated-button--active:not(.btn-secondary--success-loading):hover {
        background: #1b663d; }
        .action-panel__animated-button--active:not(.btn-secondary--success-loading):hover .action-panel__animated-button-icon {
          fill: #ffffff; }
      .action-panel__animated-button--active .action-panel__animated-button-icon {
        display: inline-block;
        fill: #ffffff; }
      .action-panel__animated-button--active .action-panel__animated-button-text {
        display: none; }
      .action-panel__animated-button--active.btn-secondary--success-loading:after {
        margin-left: auto;
        margin-right: auto;
        left: 0;
        right: 0; }
    .action-panel__animated-button--disabled {
      font-size: 0;
      padding: 0;
      color: #cccccc;
      text-align: center;
      min-width: 40px;
      background-color: #cccccc;
      border: none; }
      .action-panel__animated-button--disabled:not(.btn-secondary--success-loading):hover {
        background-color: #cccccc; }
        .action-panel__animated-button--disabled:not(.btn-secondary--success-loading):hover .action-panel__animated-button-icon {
          fill: #ffffff; }
      .action-panel__animated-button--disabled .action-panel__animated-button-icon {
        display: inline-block;
        fill: #ffffff; }
      .action-panel__animated-button--disabled .action-panel__animated-button-text {
        display: none; }
    .action-panel__animated-button-icon {
      display: none;
      width: 20px;
      height: 20px;
      margin-right: 0;
      vertical-align: middle; }
    .action-panel__animated-button-text {
      display: inline-block; }
    .action-panel__animated-button-wrap {
      margin-top: 10px; }
      @media all and (min-width: 501px) {
        .action-panel__animated-button-wrap {
          margin-top: 0; } }
  .action-panel__footer {
    margin-top: 0; }

/**
* @file _translation-widget.scss
* @author Liam Keaton
* Google translate widget styles
*/
.translation-widget {
  position: fixed;
  bottom: 0px;
  margin: 20px;
  z-index: 100; }

.goog-te-banner-frame {
  visibility: hidden;
  display: none;
  position: absolute;
  left: -100%;
  top: -100%;
  width: 0;
  height: 0;
  clip: rect(0px, 0px, 0px, 0px);
  opacity: 0;
  pointer-events: none;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%); }

.stretch-shrink {
  display: table; }
  .stretch-shrink__left {
    display: table-cell;
    width: 100%; }
  .stretch-shrink__right {
    display: table-cell;
    width: auto; }

.goal-tile {
  background-color: #ffffff;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 1px 1px 8px 0 rgba(0, 0, 0, 0.12);
  margin-bottom: 20px;
  position: relative; }
  .goal-tile__header {
    padding: 15px 20px;
    border-bottom: 1px solid #efefef;
    display: block;
    position: relative; }
  .goal-tile__title {
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.4;
    color: #4d4d4d; }
  .goal-tile__menu {
    position: absolute;
    top: 6px;
    right: 6px; }
  .goal-tile__content {
    padding: 20px;
    display: block;
    text-decoration: none;
    color: #4d4d4d;
    -webkit-border-radius: 0 0 3px 3px;
            border-radius: 0 0 3px 3px; }
    .goal-tile__content:hover, .goal-tile__content:focus {
      background: #fafafa; }
  .goal-tile__subtitle {
    font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 3px;
    padding-bottom: 10px; }
  .goal-tile__image-container {
    position: relative;
    float: left;
    width: 85px; }
  .goal-tile__body {
    margin-left: 100px;
    padding-top: 5px; }
  .goal-tile__text {
    line-height: 1.4;
    font-size: 12px; }
    .goal-tile__text--big {
      font-size: 20px;
      padding-bottom: 5px; }
      @media all and (min-width: 501px) {
        .goal-tile__text--big {
          font-size: 24px; } }

.goal-value {
  margin-top: 20px; }
  .goal-value__container {
    position: relative; }
  @media all and (min-width: 501px) {
    .goal-value {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      right: 0;
      margin-right: 20px;
      margin-top: 0; } }
  .goal-value__line {
    display: inline-block;
    width: 10px;
    padding-top: 5px;
    border-top: 1px dotted #ae2573;
    height: 5px;
    text-indent: -999px;
    overflow: hidden;
    margin: 5px 5px 0 0; }

.footer {
  background-color: #ffffff;
  font-size: 12px; }
  @media all and (max-width: 1200px) {
    .footer {
      padding-bottom: 50px; } }
  .footer__heading {
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: 10px; }
  .footer__inner {
    margin: 0 auto;
    position: relative;
    max-width: 950px;
    padding: 20px; }
    @media all and (min-width: 801px) {
      .footer__inner {
        padding: 20px 40px; } }
  .footer--left-content {
    margin-bottom: 10px; }
    @media all and (min-width: 801px) {
      .footer--left-content {
        float: left;
        margin-bottom: 0;
        width: 70%;
        padding-right: 10px; } }
  @media all and (min-width: 801px) {
    .footer--right-content {
      float: right;
      width: 30%;
      text-align: right;
      padding-left: 10px; } }
  .footer__list {
    padding: 0; }
  .footer__list-item {
    display: inline-block;
    line-height: 1.4;
    margin-right: 10px; }
    .footer__list-item:first-child {
      padding-left: 0; }
    .footer__list-item--width-border {
      border-right: 1px solid #efefef;
      margin: 0 10px 5px 0; }
      .footer__list-item--width-border:last-child {
        border: 0; }
  .footer__link {
    margin-right: 10px; }

.page--with-footer {
  background-color: #ffffff; }

.action-bar {
  display: block;
  border-top: 1px solid #efefef;
  padding: 10px 0; }
  @media all and (min-width: 501px) {
    .action-bar {
      text-align: center; } }
  @media all and (min-width: 801px) {
    .action-bar {
      display: table;
      width: 100%;
      padding: 0; } }
  .action-bar__item {
    display: block; }
    @media all and (min-width: 501px) {
      .action-bar__item {
        display: inline-block; } }
    @media all and (min-width: 801px) {
      .action-bar__item {
        display: table-cell;
        text-align: center;
        padding-bottom: 0; } }
  .action-bar__link {
    position: relative;
    display: block;
    padding: 10px 20px; }
    @media all and (min-width: 501px) {
      .action-bar__link {
        padding: 10px; } }
    @media all and (min-width: 801px) {
      .action-bar__link {
        padding: 20px 10px; } }
  .action-bar__icon {
    width: 15px;
    height: 15px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .action-bar__text {
    padding-left: 25px; }

.accordion__inner {
  padding: 20px;
  position: relative;
  background: #efefef; }

.accordion__header {
  font-size: 14px;
  margin: 0;
  width: 100%;
  cursor: pointer;
  color: #ae2573;
  padding-right: 40px;
  border: 1px solid #efefef; }
  .accordion__header:hover {
    text-decoration: underline; }
  .accordion__header:focus {
    outline: none;
    border-color: #ae2573; }
  .accordion__header--border {
    border-bottom: 1px solid #cccccc; }

.accordion__arrow {
  font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
  font-weight: 400;
  text-decoration: none;
  color: #ae2573;
  cursor: pointer;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0;
  margin-right: 20px; }

.accordion__list-item {
  font-size: 12px; }
  .accordion__list-item:not(:last-child) {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px solid #cccccc; }

@media (min-width: 501px) {
  .challenge-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; } }

@media (min-width: 501px) {
  .challenge-header__image {
    float: left;
    width: 25%; } }

.challenge-header__image:after {
  content: '';
  display: block;
  height: 0;
  padding-bottom: 56.25%; }
  @media (min-width: 501px) {
    .challenge-header__image:after {
      padding-bottom: 100%; } }

@media (min-width: 501px) {
  .challenge-header__body {
    float: right;
    width: 75%; } }

.team-viz {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -20px;
  margin-left: -20px; }
  .team-viz:not(:last-child) {
    margin-bottom: 20px; }
  .team-viz__item {
    float: left;
    position: relative;
    width: calc(33.33% - 20px);
    margin-top: 20px;
    margin-left: 20px; }
    @media all and (min-width: 450px) {
      .team-viz__item {
        width: 75px; } }
    .team-viz__item:before {
      content: '';
      display: block;
      height: 0;
      padding-bottom: 100%; }
    .team-viz__item .avatar, .team-viz__item--complete:after {
      -webkit-border-radius: 50%;
              border-radius: 50%; }
    .team-viz__item--complete:after {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: 2;
      background: rgba(43, 163, 97, 0.7); }
    .team-viz__item .avatar, .team-viz__item-progress, .team-viz__item-tick {
      position: absolute; }
    .team-viz__item .avatar, .team-viz__item-progress {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }
    .team-viz__item .avatar {
      z-index: 1; }
    .team-viz__item-progress {
      z-index: 3;
      -webkit-transform: scale(1.01);
          -ms-transform: scale(1.01);
              transform: scale(1.01); }
    .team-viz__item-tick {
      z-index: 4;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      width: 22px;
      height: 16px;
      fill: #ffffff; }
  .team-viz__icon {
    fill: none; }
    .team-viz__icon--back {
      stroke: #efefef; }
    .team-viz__icon--fore {
      stroke: #2ba361; }
    .team-viz__icon--border {
      stroke: #ffffff; }

.day-progress {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -15px;
  margin-bottom: 7px;
  margin-left: -10px; }
  .day-progress__item {
    float: left;
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 25px;
    height: 25px;
    padding: 10px;
    margin-top: 15px;
    margin-left: 10px;
    border: 1px solid #cccccc;
    -webkit-border-radius: 50%;
            border-radius: 50%;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
    @media (min-width: 501px) {
      .day-progress__item {
        width: 30px;
        height: 30px; } }
    .day-progress__item--today {
      border: 2px solid #999999; }
      .day-progress__item--today:after {
        content: '';
        position: absolute;
        top: 100%;
        left: 50%;
        -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
                transform: translateX(-50%);
        width: 0;
        height: 0;
        border-left: 5px solid transparent;
        border-right: 5px solid transparent;
        border-bottom: 7px solid #999999; }
    .day-progress__item--completed {
      border-color: #2ba361;
      background-color: #2ba361;
      color: #ffffff; }
    .day-progress__item--failed {
      border-color: #e1514a;
      background-color: #e1514a;
      color: #ffffff; }

.steplist {
  background-color: #ae2573;
  position: relative; }
  .steplist--complete {
    height: 100vh;
    background-repeat: no-repeat;
    -webkit-background-size: contain;
            background-size: contain;
    background-position: right -14px bottom; }
  .steplist:before {
    position: absolute;
    top: 0;
    left: 14px;
    bottom: 0;
    background-color: #ffffff;
    content: '';
    width: 2px;
    height: 100%; }
  .steplist__item {
    position: relative;
    padding-top: 5px;
    padding-left: 20px;
    margin-bottom: 30px;
    color: #ffffff;
    text-align: left; }
    .steplist__item--current {
      margin-bottom: 25px; }
      @media all and (min-width: 801px) {
        .steplist__item--current {
          margin-bottom: 80px; } }
    .steplist__item__percentage {
      position: absolute;
      top: 0;
      left: -30px;
      -webkit-border-radius: 50%;
              border-radius: 50%;
      background-color: #ae2573;
      width: 90px;
      height: 90px; }
    .steplist__item__tick {
      position: absolute;
      top: 0;
      left: 0;
      -webkit-border-radius: 50%;
              border-radius: 50%;
      border: 2px solid #ffffff;
      background-color: #ae2573;
      width: 30px;
      height: 30px; }
      .steplist__item__tick:after {
        content: '';
        position: absolute;
        top: 5px;
        left: 10px;
        width: 6px;
        height: 12px;
        border-bottom: 2px solid transparent;
        border-right: 2px solid transparent;
        -webkit-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
                transform: rotate(45deg);
        z-index: 2;
        -webkit-transition: border-color 0.28s cubic-bezier(0.4, 0, 0.2, 1);
        -o-transition: border-color 0.28s cubic-bezier(0.4, 0, 0.2, 1);
        transition: border-color 0.28s cubic-bezier(0.4, 0, 0.2, 1); }
      .steplist__item--checked .steplist__item__tick {
        background-color: #ffffff; }
        .steplist__item--checked .steplist__item__tick:after {
          border-color: #ae2573; }
    .steplist__item__content {
      background-repeat: no-repeat;
      -webkit-background-size: contain;
              background-size: contain;
      background-position: center;
      padding: 0 0 0 20px; }
      .steplist__item__content__number {
        margin-top: 4px; }
      .steplist__item__content__description {
        margin-top: 10px; }
        @media all and (min-width: 501px) {
          .steplist__item__content__description {
            width: 50%; } }
      .steplist__item__content p a {
        font-family: "SourceSansPro", Helvetica, Arial, sans-serif;
        font-weight: 400;
        color: inherit;
        text-decoration: none; }
      .steplist__item__content .steplist__item__image {
        margin-left: -24px; }
      .steplist__item__content img {
        width: 100%;
        height: auto; }
      @media all and (max-width: 500px) {
        .steplist__item__content {
          background-image: none !important; } }
      @media all and (min-width: 501px) {
        .steplist__item__content .steplist__item__image {
          display: none; } }

.steplist__item:not(.steplist__item--checked) .steplist__item__content {
  min-height: 265px; }

/**
 * 6. Page specific
 */
.unsupported .masthead__fallback-logo {
  max-width: 175px;
  margin: 20px; }

.unsupported .layout-error {
  padding-bottom: 300px; }
  .unsupported .layout-error__button {
    margin: 10px; }
  .unsupported .layout-error__inner {
    max-width: none; }

.plan__icon {
  margin: 8px 0 0; }

.notifications-settings .checkbox-section_disabled .form-field {
  opacity: 0.6;
  pointer-events: none; }

.notifications-settings .btn-secondary {
  padding: 10px 45px;
  border: none;
  color: #3f799c;
  background-color: #f5f5f5; }
  .notifications-settings .btn-secondary--warning {
    color: #e1514a; }
  .notifications-settings .btn-secondary:hover {
    font-weight: normal; }

/**
 * 7. Vendors
 */
.iframe-mode .page__main--with-masthead-only {
  padding-top: 0; }

.iframe-mode header.masthead,
.iframe-mode .footer,
.iframe-mode div.masthead[role='banner'],
.iframe-mode nav.page__nav.nav-menu {
  display: none; }

.iframe-mode .page__center {
  max-width: 100%; }
  .iframe-mode .page__center .page__content {
    margin-left: 0; }

.iframe-mode main.page__main {
  padding-top: 20px; }

.iframe-mode .page > .masthead.masthead--centered {
  display: none; }

.iframe-mode .progress.page__preloader,
.iframe-mode .message-container {
  top: 0; }

.iframe-mode .background--21-9 {
  height: 360px !important; }

.iframe-mode .background--21-9-sm {
  height: 180px !important; }
