/**********************************************************
 * 
 * SITE STYLES for fuseproject.com
 * Ruthie BenDor (ruthie@fuseproject.com)
 * 
 *  Contents:
 *  1. Border Box
 *  2. Normalize
 *  3. Typography
 *  4. Layout
 *  5. Print Styles
 * 
 *  Authoring Guidelines
 *  -----------------------------------
 *  1. Use descendant selectors rather than child selectors. (x y, not x > y)
 *  2. Select by class rather than by element (.myclass {}, not div {}).
 *  3. Use compound class selectors to target slot types.
 *  4. Scope selectors to their top-level container.
 *  5. Mobile first.
 *
 *  Reference Markup
 *  -----------------------------------
 *  body
 *    .page
 *      .menu
 *        .inner
 *      .pusher
 *        .main-wrap
 *          .header
 *            .header-inner
 *          .main
 *          .footer
 *            .footer-inner
 *
 *  Layout Breakpoints
 *  -----------------------------------
    @media(min-width:  320px) {}
    @media(min-width:  480px) {}
    @media(min-width:  533px) {}
    @media(min-width:  540px) {}
    @media(min-width:  600px) {}
    @media(min-width:  640px) {}
    @media(min-width:  720px) {}
    @media(min-width:  768px) {}
    @media(min-width:  800px) {}
    @media(min-width: 1024px) {}
    @media(min-width: 1080px) {}
    @media(min-width: 1200px) {}
    @media(min-width: 1280px) {}
    @media(min-width: 1366px) {}
    @media(min-width: 1440px) {}
 *
 *  Dimensions
 *  -----------------------------------
 *  Box         Width   Height  Ratio
 *  .l          912px   596px   0.65
 *  .s          448px   292px   0.65
 *  [gutters]   16px    16px    n/a
 *
 *********************************************************/

/**********************************************************
 * 1. BORDER BOX ALL THE THINGS
 *********************************************************/

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

/**********************************************************
 * 2. NORMALIZE ALL THE THINGS
 *********************************************************/

/**
 * normalize.css v3.0.0 | MIT License | git.io/normalize
 */

html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

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

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"] {
  -webkit-appearance: textfield;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

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

td,
th {
  padding: 0;
}

/**********************************************************
 * 3. TYPOGRAPHY
 *********************************************************/

/**
 * Swiss 721 Bold
 */

@font-face {
  font-family: 'swiss_721_bold';
  src: url('../fonts/swiss/swiss_721_bold.eot');
  src: url('../fonts/swiss/swiss_721_bold.eot?#iefix') format('embedded-opentype'),
       url('../fonts/swiss/swiss_721_bold.woff') format('woff'),
       url('../fonts/swiss/swiss_721_bold.ttf') format('truetype'),
       url('../fonts/swiss/swiss_721_bold.svg#swiss_721_bold') format('svg');
  font-weight: normal;
  font-style: normal;
}

/**
 * Swiss 721 Heavy
 */

@font-face {
  font-family: 'swiss_721_heavy';
  src: url('../fonts/swiss/swiss_721_heavy.eot');
  src: url('../fonts/swiss/swiss_721_heavy.eot?#iefix') format('embedded-opentype'),
       url('../fonts/swiss/swiss_721_heavy.woff') format('woff'),
       url('../fonts/swiss/swiss_721_heavy.ttf') format('truetype'),
       url('../fonts/swiss/swiss_721_heavy.svg#swiss_721_heavy') format('svg');
  font-weight: normal;
  font-style: normal;
}

/**
 * Swiss 721 Light
 */

@font-face {
  font-family: 'swiss_721_light';
  src: url('../fonts/swiss/swiss_721_light.eot');
  src: url('../fonts/swiss/swiss_721_light.eot?#iefix') format('embedded-opentype'),
       url('../fonts/swiss/swiss_721_light.woff') format('woff'),
       url('../fonts/swiss/swiss_721_light.ttf') format('truetype'),
       url('../fonts/swiss/swiss_721_light.svg#swiss_721_light') format('svg');
  font-weight: normal;
  font-style: normal;
}

/**
 * Swiss 721 Medium 
 */

@font-face {
  font-family: 'swiss_721_medium';
  src: url('../fonts/swiss/swiss_721_medium.eot');
  src: url('../fonts/swiss/swiss_721_medium.eot?#iefix') format('embedded-opentype'),
       url('../fonts/swiss/swiss_721_medium.woff') format('woff'),
       url('../fonts/swiss/swiss_721_medium.ttf') format('truetype'),
       url('../fonts/swiss/swiss_721_medium.svg#swiss_721_medium') format('svg');
  font-weight: normal;
  font-style: normal;
}

/**
 * Swiss 721 Roman
 */

@font-face {
  font-family: 'swiss_721_roman';
  src: url('../fonts/swiss/swiss_721.eot');
  src: url('../fonts/swiss/swiss_721.eot?#iefix') format('embedded-opentype'),
       url('../fonts/swiss/swiss_721.woff') format('woff'),
       url('../fonts/swiss/swiss_721.ttf') format('truetype'),
       url('../fonts/swiss/swiss_721.svg#swiss_721_roman') format('svg');
  font-weight: normal;
  font-style: normal;
}

/**
 * If font-smoothing doesn't pass cross-browser testing, consider
 * http://www.elfboy.com/blog/text-shadow_anti-aliasing/ instead.
 */

html {
    -webkit-font-smoothing: antialiased;
}

/**
 * Base fonts, colors, and sizing
 */

body {
    background-color: #FFF;
}

body,
button,
input,
select,
textarea {
    color: #000;
    font-family: 'swiss_721_roman', sans-serif;
}

strong {
    font-family: 'swiss_721_bold', sans-serif;
    font-weight: normal;
}

a:link,
a:visited {
    color: #000;
    text-decoration: none;
}

a:hover,
a:active,
a:focus {
    color: #000;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: normal;
}

/**********************************************************
 * 4. LAYOUT
 *********************************************************/

body {
  background: #F9F9F9 url('../img/bg.png') repeat 0 0;
  font-size: 16px;
  line-height: 22px;
}

html,
body,
.page,
.page .pusher,
.page .main-wrap {
  height: 100%;
}

/* Contain floated elements */
.page,
.page .main {
  overflow: hidden;
  position: relative;
}

/* Enable momentum scrolling on iOS */
.page .main-wrap {
  overflow-y: scroll;
  position: relative;
  -webkit-overflow-scrolling: touch;
}

/* Wrap all non-menu page contents */
.page .pusher {
  height: 100%;
  position: relative;
  right: 0;
  -webkit-transition: -webkit-transform 0.5s;
          transition: transform 0.5s;
  z-index: 99; /* must be less than z-index of .page .menu */
}

/* Create overlay for all non-menu page elements when menu is open */
.page .pusher:after {
  background: rgba(0,0,0,0.5);
  content: '';
  display: block;
  height: 0;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  width: 0;
}

/* Move all non-menu page elements... */
.page.drawer-open .pusher {
  -webkit-transform: translate3d(-20em, 0, 0);
          transform: translate3d(-20em, 0, 0);
}

/* ...and show the overlay */
.page.drawer-open .pusher:after {
  width: 100%;
  height: 100%;
  opacity: 1;
  -webkit-transition: opacity 0.5s ease-out;
          transition: opacity 0.5s ease-out;
  z-index: 98; /* z-index of .page .pusher, minus 1 */
}

/* Fallback styles for less capable browsers */
.no-csstransforms3d .page .pusher,
.no-js .page .pusher {
  padding-right: 20em; /* must equal width of menu */
}

/* Set min and max widths for content areas */
.page .header .header-inner,
.page .footer .footer-inner,
.page .main .content {
  min-width: 320px;
  margin: 0 auto;
  max-width: 1440px;
  padding-left: 1em;
  padding-right: 1em;
  -webkit-transition: padding 0.25s;
          transition: padding 0.25s;
}

.page .header .header-inner,
.page .main .content {
  padding-left: 1em;
  padding-right: 1em;
}

.page .footer .footer-inner {
  padding-left: 0;
  padding-right: 1em;
}

body[data-page="home"] .page .main .content {
  padding-right: 0;
}

/* On larger handheld devices and desktop, bigger gutters. */
@media (min-width: 480px) {

  .page .header .header-inner,
  .page .main .content {
    padding-left: 2em;
    padding-right: 2em;
  }

  .page .footer .footer-inner {
    padding-left: 1em;
    padding-right: 2em;
  }

  body[data-page="home"] .page .main .content {
    padding-right: 1em;
  }
}

/******************
 * Menu
 ******************/

/**
 * Menu on Mobile
 */

.page .menu {
  background-color: #FFF;
  font-family: 'swiss_721_medium', sans-serif;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: all 0.5s;
          transition: all 0.5s;
  visibility: hidden;
  width: 20em;
  z-index: 1;
}

/* Overlay - masks menu when menu is closed */
.page .menu:after {
  background-color: rgba(0,0,0,0.5);
  content: '';
  display: block;
  height: 100%;
  left: 0;
  opacity: 1;
  position: absolute;
  top: 0;
  -webkit-transition: opacity 0.5s;
          transition: opacity 0.5s;
  width: 100%;
}

/* When drawer is open, make menu visible and scrollable */
.page.drawer-open .menu {
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch; /* momentum scroll all the things */
  -webkit-transition: -webkit-transform 0.5s;
          transition: transform 0.5s;
  visibility: visible;
}

/* When drawer is open, hide the overlay */
.page.drawer-open .menu:after {
  height: 0;
  opacity: 0;
  -webkit-transition: opacity 0.5s, width 0.1s 0.5s, height 0.1s 0.5s;
          transition: opacity 0.5s, width 0.1s 0.5s, height 0.1s 0.5s;
  width: 0;
}

/* Logo shim */
.page .menu .logo-shim {
  display: block;
  position: absolute;
  top: -6em;
  left: 0;
}

/* Menu controls */
.page .menu-control {
  display: block;
  width: 3.625em;
  height: 3em;
  overflow: hidden;
  white-space: nowrap;
  background: #000;
  text-indent: -999em;
  cursor: pointer;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 3.625em 3em;
  -webkit-transition: all 0.25s;
  transition: all 0.25s;
  opacity: 1;
}

.page .menu-control:hover {
  opacity: 0.7;
}

.page .menu-control-open,
.page.inverted.opaque-header .menu-control-open,
.csspositionsticky.touch .page .menu-control-open {
  background-image: url('../img/menu_toggle_black@2x.png');
}

.page.inverted .menu-control-open {
  background-image: url('/site/img/menu_toggle_white@2x.png');
}

.page .menu-control-close {
  background-image: url('../img/menu_close@2x.png');
}

.page .menu .menu-control-close {
  position: absolute;
  right: 0;
  top: -6em;
}

.page .menu .menu-inner {
  position: relative;
  top: 6em;
}

/* List items */
.page .menu .menu-items {
  list-style: none;
  margin: 0;
  padding: 0;
}

.page .menu .menu-item,
.page .menu .menu-item a {
  display: block;
}

.page .menu .menu-item a {
  color: #FFF;
  text-decoration: none;
  text-transform: lowercase;
  padding: 0.75em 1em;
  line-height: 1em;
}

.page .menu .secondary a,
.page .menu .statics a {
  background: #fff;
  color: #000;
  border-bottom: 1px solid #000;
}

.no-touch .page .menu .menu-item a:hover,
body[data-filter="business_innovation"] .page .menu .menu-items.filters .filter a[data-filter="business_innovation"],
body[data-filter="strategy"]            .page .menu .menu-items.filters .filter a[data-filter="strategy"],
body[data-filter="brand"]               .page .menu .menu-items.filters .filter a[data-filter="brand"],
body[data-filter="digital"]             .page .menu .menu-items.filters .filter a[data-filter="digital"],
body[data-filter="product"]             .page .menu .menu-items.filters .filter a[data-filter="product"],
body[data-filter="communications"]      .page .menu .menu-items.filters .filter a[data-filter="communications"],
body[data-page="blog"]                  .page .menu .menu-items a[data-page="blog"],
body[data-page="blog-single"]           .page .menu .menu-items a[data-page="blog"],
body[data-page="clients"]               .page .menu .menu-items a[data-page="clients"],
body[data-page="about"]                 .page .menu .menu-items a[data-page="about"],
body[data-page="about"]                 .page .menu .menu-items a[data-page="capabilities"],
body[data-page="model"]                 .page .menu .menu-items a[data-page="about"],
body[data-page="model"]                 .page .menu .menu-items a[data-page="model"],
body[data-page="people"]                .page .menu .menu-items a[data-page="about"],
body[data-page="people"]                .page .menu .menu-items a[data-page="people"],
body[data-page="recognition"]           .page .menu .menu-items a[data-page="about"],
body[data-page="recognition"]           .page .menu .menu-items a[data-page="recognition"],
body[data-page="careers"]               .page .menu .menu-items a[data-page="about"],
body[data-page="careers"]               .page .menu .menu-items a[data-page="careers"],
body[data-page="contact"]               .page .menu .menu-items a[data-page="about"],
body[data-page="contact"]               .page .menu .menu-items a[data-page="contact"] {
  background: #000 !important;
  color: #fff !important;
}

.touch .page .menu .menu-item a {
  -webkit-tap-highlight-color: rgba(0,0,0,0.5);
}

.page .menu .menu-item.filter-select {
  display: none;
}

/* Search */
.page .menu .search {
  position: absolute;
  top: -3em;
  right: 0;
  border-top: 1px solid #000;
  line-height: 2.5em;
  height: 2.5em;
  vertical-align: middle;
  width: 20em;
}

.page .menu .search input {
  background: #efefef url('../img/search_black@2x.png') no-repeat right 50%;
  background-size: 3em 3em;
  border: 0;
  display: inline-block;
  margin: 0.625em 1em;
  padding: 0.25em 1em;
  width: 18em;
}

.page .menu .search input:focus {
  outline: none;
}

.page .menu .search input[type="submit"] {
  display: none;
}

/**
 * Menu on Tablet
 */

@media (min-width: 904px) {

  .page .pusher:after,
  .page .menu:after,
  .page .menu-control-close,
  .page .menu-control-open {
    display: none;
  }

  .page .menu,
  .page.drawer-open .pusher,
  .page.drawer-open .menu {
    -webkit-transform: none;
            transform: none;
  }

  .page .menu {
    background: transparent;
    height: auto;
    position: absolute;
    overflow: visible;
    right: auto;
    top: auto;
    -webkit-transition: none;
            transition: none;
    visibility: visible;
    width: 100%;
    z-index: 100; /* z-index of .page .pusher, plus 1 */
  }

  .page .menu .menu-inner {
    max-width: 1440px;
    margin: 0 auto;
    overflow: auto;
    top: 0;
  }

  .page .menu .logo-shim,
  .page .menu .menu-items {
    display: block;
    float: left;
    position: relative;
    top: auto;
    left: auto;
  }

  .page .menu .logo-shim {
    visibility: visible;
  }

  .page .menu .menu-items {
    margin: 0.75em 0;
  }

  .page .menu .menu-item a {
    padding: 0.25em 1em;
  }

  .page .menu .menu-item.filter a,
  .page .menu .menu-item.static a {
    padding: 0.75em 1em;    
  }

  .page .menu .menu-item.static a {
    border-top: 1px solid #000;
  }

  .page .menu .secondary .menu-item {
    float: left;
  }

  .page .menu .secondary a,
  .page .menu .statics a {
    border-bottom: 0;
  }

  .page .menu .menu-item.filter-select {
    display: block;
  }

  .page .menu .filters .filter,
  .page .menu .statics .static {
    display: none;
  }

  .page .menu.filters-dropdown-open .filters .filter,
  .page .menu.statics-dropdown-open .statics .static {
    display: block;
  }

  .page .menu .filters .menu-item a {
    min-width: 11em;
  }

  .page .menu .statics .menu-item a {
    min-width: 9em;
  }

  .page .menu .search {
    float: right;
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    border-top: 0;
    width: 14em;
    height: 3em;
    line-height: 3em;
  }

  .page .menu .search input {
    width: 11em;
    padding: 0.125em 1em;
  }
}

/**
 * Menu on Small Desktop
 */

@media (min-width: 1104px) {

  .page .menu .filters .menu-item a,
  .page .menu .statics .menu-item a {
    min-width: 12em;
  }

  .page .menu .secondary .menu-item a {
    min-width: 8em;
  }
}

/**
 * Menu on Medium Desktop
 */

@media (min-width: 1300px) {

  .page .menu .filters .menu-item {
    float: left;
  }

  .page .menu .menu-item.filter-select {
    display: none;
  }

  .page .menu .filters .filter {
    display: block;
  }

  .page .menu .menu-item.filter a {
    padding-top: 0.25em;
    padding-bottom: 0.25em;
  }

  .page .menu .filters .menu-item a,
  .page .menu .secondary .menu-item a {
    min-width: 0;
  }

  .page .menu .statics .menu-item a {
    min-width: 9em;
  }

  .page .menu .menu-item.filter a,
  .page .menu .menu-item.static a,
  .page .menu .menu-item.secondary a {
    padding-left: 0.5em;
    padding-right: 0.5em;
  }
}

/**
 * Menu on Large Desktop
 */

@media (min-width: 1440px) {

  .page .menu .menu-item.filter a,
  .page .menu .menu-item.static a {
    padding-left: 1em;
    padding-right: 1em;
  }
}

/******************
 * Header
 ******************/

.page .header {
  width: 100%;
  position: fixed;
  top: 0;
  z-index: 50;
}

.page .header,
.page .header .header-inner {
  height: 3em;
  -webkit-transition: background-color 0.25s;
        transition: background-color 0.25s;
}

.page .header .header-inner {
  background-color: rgba(255,255,255,0);
}

.page.opaque-header .header .header-inner,
.csspositionsticky.touch .page .header .header-inner {
  background-color: rgba(255,255,255,1);
}

.page.drawer-open .header,
.page.drawer-transitioning .header {
  position: absolute;
}

.csspositionsticky.touch .page .header {
  position: -webkit-sticky;
  position: -moz-sticky;
  position: -ms-sticky;
  position: -o-sticky;
  position: sticky;
}

/* Open Control */
.page .header .menu-control-open {
  position: absolute;
  right: 0;
  top: 0;
}

@media (min-width: 480px) {
  .page .header .menu-control-open {
    right: 1em;
  }
}

/* Logo and Shim */
.page .header .logo,
.page .menu .logo-shim {
  background: transparent url('/site/img/logo_black@2x.png') no-repeat -1em 0;
  background-size: 13em 3em;
  cursor: pointer;
  display: block;
  height: 3em;
  overflow: hidden;
  text-indent: -999em;
  white-space: nowrap;
  width: 13em;
}

.page .header .logo {
  position: relative;
  left: -1em;
}

.page.inverted .header .logo,
.page.inverted .menu .logo-shim {
  background-image: url('/site/img/logo_white@2x.png');
}

.page.inverted.opaque-header .header .logo,
.page.inverted.opaque-header .menu .logo-shim,
.page.drawer-open.inverted .menu .logo-shim,
.csspositionsticky.touch .page .header .logo,
.csspositionsticky.touch .menu .logo-shim {
  background-image: url('/site/img/logo_black@2x.png') !important;
}

@media (min-width: 904px) {
  .page .menu .logo-shim {
    background-position: 0 0;
  }

  .page .header .logo {
    visibility: hidden;
  }
}

/******************
 * Footer
 ******************/

.page .footer {
  background-color: #000;
  color: #FFF;
  width: 100%;
}

.page .footer,
.page .footer .footer-inner {
  height: 3em;
}

.page.fixed-footer .footer {
  bottom: 0;
  position: absolute;
}

.page .footer .footer-items {
  float: left;
  list-style: none;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: relative;
}

.page .footer .footer-items li {
  display: block;
  float: left;
}

/* Adjustments for fuse family links */
.page .footer .footer-items.family {
  display: none;
}

.page .footer .footer-items.family li:first-child {
  padding-left: 2em;
}

.page .footer .footer-items.family li:last-child {
  padding-left: 1em;
  padding-right: 2em;
}

.page .footer .icon-link,
.page .footer .text-link,
.page .footer .copyright {
  color: #fff;
  display: block;
  font-family: 'swiss_721_bold', sans-serif;
  font-weight: normal;
  overflow: hidden;
  margin: 0;
  text-transform: lowercase;
}

.page .footer .icon-link {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 2.2em 2.4em;
  display: block;
  font-size: 1em;
  height: 3em;
  line-height: 3em;
  overflow: hidden;
  padding: 0.3em 0;
  text-indent: 200%;
  white-space: nowrap;
  width: 2.2em;
}

.page .footer .text-link,
.page .footer .copyright {
  font-size: 0.75em;
  line-height: 4em;
}

.page .footer .copyright {
  float: right;
}

.page .footer .icon-link,
.page .footer .text-link {
  opacity: 1;
  -webkit-transition: opacity 0.2s ease;
          transition: opacity 0.2s ease;
}

.no-touch .page .footer .icon-link:hover,
.no-touch .page .footer .text-link:hover {
  opacity: 0.6;
}

.page .footer .icon-link.facebook {
  background-image: url('../img/facebook_lg@2x.png');
}

.page .footer .icon-link.linkedin {
  background-image: url('../img/linkedin_lg@2x.png');
}

.page .footer .icon-link.twitter {
  background-image: url('../img/twitter_lg@2x.png');
}

.page .footer .icon-link.instagram {
  background-image: url('../img/instagram_lg@2x.png');
}

@media (min-width: 480px) {

  .page .footer .text-link,
  .page .footer .copyright {
    font-size: 0.875em;
    line-height: 3.42857142857em;
  }

  .page .footer .icon-link {
    background-size: 2.75em 3em;
    height: 3em;
    padding: 0;
    width: 2.75em;
  }
}

@media (min-width: 640px) {
  .page .footer .footer-items.family {
    display: block;
  }
}

/******************
 * Main
 ******************/

/**
 * Content
 */

.page .main .content {
  background-color: #fff;
  overflow: hidden;
  padding-top: 3em;
  position: relative;
}

/**
 * Modal
 */

.page .main .content .modal {
  display: none;
}

.page .main .content .modal.active {
  display: block;
}

.page .main .content .modal.active .modal-inner {
  background: #eee;
  padding: 1em;
}

@media(min-width: 976px) {

  .page .main .content .modal.active {
    background: rgba(0,0,0,0.5);
    bottom: 0;
    height: 100%;
    left: 0;
    overflow: visible;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 999;
  }

  .page .main .content .modal.active .modal-inner {
    background: #fff;
    position: absolute;
    left: 0;
    top: 15%;
    padding-bottom: 33%;
    margin-left: 15%;
    width: 70%;
  }
}

/******************
 * Homepage
 ******************/

/**
 * Discipline
 */

.page .main .discipline {
  overflow: hidden;
  padding: 0 0 37.7777777778% 0;
  position: relative;
  width: 100%;
  min-height: 180px;
}

.page .main .discipline .outer {
  display: block;
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%;
}

.page .main .discipline .outer .inner {
  display: table;
  max-width: 1440px;
  margin: 0 auto;
  height: 100%;
  width: 100%;
  padding: 0 1em;
  -webkit-transition: padding 0.25s ease;
          transition: padding 0.25s ease;
}

.page .main .discipline .outer .inner .text {
  display: table-cell;
  vertical-align: middle;
  font-size: 1em;
  line-height: 1em;
}

.page .main .discipline .outer .inner .text p {
  color: #fff;
  display: block;
  font-family: 'swiss_721_heavy', sans-serif;
  font-size: 1em;
  letter-spacing: -0.03em;
  line-height: 1em;
  margin: 0;
  max-width: 864px;
  min-width: 288px; /* must be in px because adjusting font-size */
  text-transform: lowercase;
  padding-top: 1em;
}

@media (min-width: 480px) {

  .page .main .discipline .outer .inner {
    padding-left: 2em;
    padding-right: 2em;
  }

  .page .main .discipline .outer .inner .text p {
    font-size: 1.25em;
  }
}

@media (min-width: 600px) {

  .page .main .discipline .outer .inner .text p {
    font-size: 1.5em;
  }
}

@media (min-width: 640px) {

  .page .main .discipline .outer .inner .text p {
    font-size: 1.75em;
  }
}

@media (min-width: 800px) {

  .page .main .discipline .outer .inner .text p {
    font-size: 2em;
  }
}

@media (min-width: 1024px) {

  .page .main .discipline .outer .inner .text p {
    font-size: 2.25em;
  }
}

@media (min-width: 1200px) {
  .page .main .discipline .outer .inner .text {
    padding-right: 30%;
  }

  .page .main .discipline .outer .inner .text p {
    font-size: 2.5em;
  }
}

@media (min-width: 1280px) {

  .page .main .discipline .outer .inner .text p {
    font-size: 2.75em;
  }
}

@media (min-width: 1440px) {
  .page .main .discipline {
    height: 34em;
    padding-bottom: 0;
  }

  .page .main .discipline .outer .inner .text p {
    font-size: 3em;
  }
}

/**
 * Spotlight
 */

.page .main .spotlight {
  list-style: none;
  margin: 0;
  overflow: hidden;
  padding: 0 0 37.7777777778% 0;
  position: relative;
  width: 100%;
  min-height: 376px;
}

.page .main .spotlight .item,
.page .main .spotlight .item .item-link {
  display: block;
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%;
}

.page .main .spotlight .item .item-link {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.page .main .spotlight .item .item-link {
  background-color: #fff;
}

.page.inverted .main .spotlight .item .item-link {
  background-color: #000;
}

.page .main .spotlight .item .item-link .item-outer {
  display: table;
  max-width: 1440px;
  margin: 0 auto;
  height: 100%;
  width: 100%;
  padding: 0 1em;
  -webkit-transition: padding 0.25s ease;
          transition: padding 0.25s ease;
}

.page .main .spotlight .item .item-link .item-outer .item-inner {
  display: table-cell;
  vertical-align: top;
  padding-top: 6em;
  font-size: 1em;
  line-height: 1em;
}

.page .main .spotlight .item .item-link .item-outer .item-inner .item-text {
  display: block;
  font-family: 'swiss_721_heavy', sans-serif;
  font-size: 2em;
  letter-spacing: -0.03em;
  line-height: 1em;
  min-width: 320px; /* must be in px because adjusting font-size */
  padding-top: 0.5em;
  text-transform: lowercase;
}

.page .main .spotlight .item .item-link.light .item-outer .item-inner .item-text {
  color: #fff;
}

.page .main .spotlight .item .item-link.dark .item-outer .item-inner .item-text {
  color: #000;
}

.page .main .spotlight .item .item-link .item-outer .item-inner .item-text sup {
  font-size: 25%;
  top: -2em;
}

@media (min-width: 480px) {

  .page .main .spotlight .item .item-link .item-outer {
    padding-left: 2em;
    padding-right: 2em;
  }

  .page .main .spotlight .item .item-link .item-outer .item-inner .item-text {
    font-size: 2.75em;
  }
}

@media (min-width: 540px) {
  .page .main .spotlight .item .item-link .item-outer .item-inner .item-text {
    font-size: 2.875em;
  }
}

@media (min-width: 600px) {
  .page .main .spotlight .item .item-link .item-outer .item-inner .item-text {
    font-size: 3em;
  }
}

@media (min-width: 640px) {
  .page .main .spotlight .item .item-link .item-outer .item-inner .item-text {
    font-size: 3.125em;
  }
}

@media (min-width: 720px) {
  .page .main .spotlight .item .item-link .item-outer .item-inner .item-text {
    font-size: 3.25em;
  }
}

@media (min-width: 800px) {
  .page .main .spotlight .item .item-link .item-outer .item-inner .item-text {
    font-size: 3.375em;
  }
}

@media (min-width: 1024px) {
  .page .main .spotlight .item .item-link .item-outer .item-inner .item-text {
    font-size: 3.5em;
  }
}

@media (min-width: 1200px) {
  .page .main .spotlight .item .item-link .item-outer .item-inner .item-text {
    font-size: 3.625em;
  }
}

@media (min-width: 1280px) {
  .page .main .spotlight .item .item-link .item-outer .item-inner .item-text {
    font-size: 3.75em;
  }
}

@media (min-width: 1440px) {
  .page .main .spotlight {
    height: 34em;
    padding-bottom: 0;
  }

  .page .main .spotlight .item .item-link .item-outer .item-inner .item-text {
    font-size: 3.875em;
  }
}

/**
 * Slots
 */

/* Preloader */

@-webkit-keyframes fadein {
  from { opacity: 0.2; }
  to   { opacity: 1;   }
}

@-moz-keyframes fadein {
  from { opacity: 0.2; }
  to   { opacity: 1;   }
}

@keyframes fadein {
  from { opacity: 0.2; }
  to   { opacity: 1;   }
}

.page .main .content .slots .loader {
  -webkit-animation: fadein 0.75s ease-in alternate infinite;
     -moz-animation: fadein 0.75s ease-in alternate infinite;
          animation: fadein 0.75s ease-in alternate infinite;
}

.page .main .content .slots .loader {
  margin: 4em auto 1em;
  overflow: visible;
  position: relative;
}

.page .main .content .slots .loader,
.page .main .content .slots .loader:before,
.page .main .content .slots .loader:after {
  background: #000;
  width: 0.75em;
  height: 0.75em;
}

.page .main .content .slots .loader:before,
.page .main .content .slots .loader:after {
  content: ' ';
  display: block;
  position: absolute;
  top: 0;
}

.page .main .content .slots .loader:before {
  left: -1em;
}

.page .main .content .slots .loader:after {
  right: -1em;
}

/* Slots */

.page .main .content .slots {
  position: relative;
  overflow: hidden;
  margin-right: 0;
  padding-bottom: 1em;
}

.page .main .content .slots .slot {
  margin: 0 auto;
  padding: 0 1em 1em 0;
  float: left;
  -webkit-transition: width 0.05s ease;
          transition: width 0.05s ease;
}

.page .main .content .slots .slot.l,
.page .main .content .slots .slot.m,
.page .main .content .slots .slot.s {
  width: 100%;
}

.page .main .content .slots .slot .item {
  display: block; /* these are <a>'s */
  position: relative;
}

.page .main .content .slots .slot.l .item,
.page .main .content .slots .slot.s .item,
.page .main .content .slots .slot.m .item {
  padding-bottom: 64.732142857%;
}

.page .main .content .slots .slot .item .inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

/* Overlays */
.page .main .content .slots .slot .item .item-overlay {
  background-color: rgba(0,0,0,0);
  display: none;
  position: absolute;
  height: 100%;
  width: 100%;
  left: 0;
  top: 0;
}

.page .main .content .slots .slot .item .item-overlay .client,
.page .main .content .slots .slot .item .item-overlay .project {
  font-family: 'swiss_721_heavy', sans-serif;
  color: #fff;
  font-size: 2em;
  line-height: 1em;
  padding-left: 1em;
  padding-right: 1em;
  text-transform: lowercase;
}

.page .main .content .slots .slot .item .item-overlay .project {
  margin-top: -0.75em;
}

/* Images */
.page .main .content .slots .slot .item .item-image {
  background: #000;
  width: 100%;
}

.page .main .content .slots .slot .item .item-image img {
  display: block;
  width: 100%;
  height: auto;
}

/* Description */
.page .main .content .slots .slot .item .item-description {
  text-transform: lowercase;
}

.page .main .content .slots .slot .item .item-description .title {
  font-family: 'swiss_721_heavy', sans-serif;
  margin: 0;
}

.page .main .content .slots .slot .item .item-description .subtitle {
  font-family: 'swiss_721_light', sans-serif;
  margin: 0;
}

/* large slots */
.page .main .content .slots .slot.l .item .item-description {
  bottom: 2em;
  display: none;
  left: 0;
  position: absolute;
}

.page .main .content .slots .slot.l .item .item-description .title,
.page .main .content .slots .slot.l .item .item-description .subtitle {
  background-color: #fff;
  display: inline-block;
  float: left;
}

.page .main .content .slots .slot.l .item .item-description .title {
  font-size: 2em;
  letter-spacing: -0.03em;
  line-height: 1em;
  padding: 0.0625em 0.25em 0.09375em 0.25em;
}

.page .main .content .slots .slot.l .item .item-description .subtitle {
  clear: both;
  letter-spacing: 0.03em;
  line-height: 1em;
  padding: 0.1875em 0.5em 0.3125em 0.5em;
}

/* medium slots */
.page .main .content .slots .slot.m .item .item-description .title {
  font-size: 2.25em;
  letter-spacing: -0.05em;
  line-height: 1em;
  padding: 0.44444444444em 0 0.08333333333em 0;
}

.page .main .content .slots .slot.m .item .item-description .subtitle {
  font-size: 1.375em;
  letter-spacing: -0.03em;
  line-height: 1.27272727273em; /* 28px */
  padding: 0.13636363636em 0; /* 3px 0 */
}

.page .main .content .slots .slot.m .item .item-description .subtitle span {
  font-family: 'swiss_721_bold', sans-serif;
}

/* Future enhancement */
.page .main .content .slots .slot.m .item .item-description .mask {
  background: #F00 -webkit-gradient(
      linear,
      left bottom,
      left top,
      color-stop(1, rgba(255,255,255,0)),
      color-stop(0, rgba(255,255,255,0.9))
  );
  
  background: -moz-linear-gradient(
      center bottom,
      rgba(255,255,255,0.9) 0%, /* Bottom */
     rgba(255,255,255,0) 100% /* Top */
  );
}

/**
 * Small slots have a natural width of 448px; setting
 * breakpoints at 512px and 976px ensures they'll never
 * be scaled above 100% of their natural width.
 */
@media(min-width: 512px) {

  .page .main .content .slots .slot.l,
  .page .main .content .slots .slot.m,
  .page .main .content .slots .slot.s {
    width: 50%;
  }

  .page .main .content .slots .slot.l .item,
  .page .main .content .slots .slot.m .item,
  .page .main .content .slots .slot.s .item {
    height: 100%;
  }

  .page .main .content .slots .slot:nth-child(2n-1) {
    clear: both;
  }

  .page .main .content .slots .slot .item:hover .item-overlay {
    background-color: rgba(0,0,0,0.75);
    display: block;
  }

  .page .main .content .slots .slot .item .item-overlay .client,
  .page .main .content .slots .slot .item .item-overlay .project {
    padding-left: 0.5em;
  }
}

@media(min-width: 976px) {

  .page .main .content .slots .slot.l {
    width: 66.666666666%;
  }

  .page .main .content .slots .slot.m,
  .page .main .content .slots .slot.s {
    width: 33.333333333%;
  }

  .page .main .content .slots .slot:nth-child(7n-5),
  .page .main .content .slots .slot:nth-child(7n-3) {
    float: right;
  }

  .page .main .content .slots .slot:nth-child(2n-1) {
    clear: none;
  }

  .page .main .content .slots .slot:nth-child(7n-4),
  .page .main .content .slots .slot:nth-child(7n+1) {
    clear: both;
  }

  .page .main .content .slots .slot.l .item {
    padding-bottom: 65.35087719%;
  }

  .page .main .content .slots .slot.m .item {
    height: 100%;
  }

  .page .main .content .slots .slot.s .item {
    padding-bottom: 64.732142857%;
  }

  /* Show descriptions */
  .page .main .content .slots .slot.l .item .item-description,
  .page .main .content .slots .slot.m .item .item-description {
    display: block;
  }

  .page .main .content .slots .slot.m .item .item-description {
    bottom: 0;
    position: relative;
  }

  .page .main .content .slots .slot.m .item .item-description .subtitle {
    font-size: 1em;
    line-height: 1.18em;
    letter-spacing: 0.02em;
  }

  .page .main .content .slots .slot.m .item .item-overlay {
    bottom: 51.0067114094%; /* 292 / 596 */
    height: auto;
  }

  .page .main .content .slots .slot .item .item-overlay .client,
  .page .main .content .slots .slot .item .item-overlay .project {
    padding-left: 1em;
  }
}

@media (min-width: 1440px) {
  .page .main .content .slots .slot.m .item .item-description .subtitle {
    font-size: 1.375em;
    letter-spacing: -0.03em;
    line-height: 1.27272727273em; /* 28px */
    padding: 0.13636363636em 0; /* 3px 0 */
  }
}


/**
 * Overview
 */

.overview,
.details {
  position: relative;
  overflow: hidden;
  margin-left: -1em;
  margin-right: -1em;
  padding-left: 1em;
  padding-right: 1em;
}

@media (min-width: 480px) {
  .overview,
  .details {
    margin-left: -2em;
    margin-right: -2em;
    padding-left: 2em;
    padding-right: 2em;
  }
}

.overview {
  min-height: 16.375em;
}

.overview h1,
.overview .lede {
  max-width: 768px;
  text-transform: lowercase;
  font-family: 'swiss_721_heavy', sans-serif;
}

.overview h1 {
  font-size: 3.25em;
  line-height: 1em;
  letter-spacing: -0.05em;
  margin: 0.92307692307em 0 0.53846153846em 0;
}

.overview p + p {
  font-size: 0.875em;
  line-height: 1.57142857143em;
  margin: 0.5em 0 0 0;
}

.overview blockquote p {
  margin: 0;
}

.overview .lede {
  font-size: 1.625em;
  line-height: 1em;
  margin: 0;
  padding-bottom: 1em;
}

.overview .cite:before {
  content:'-';
  display: inline-block;
  margin-right: 0.1em;
}

.details .col {
  display: block;
  padding-bottom: 2em;
}

@media (min-width: 904px) {
  .details .col {
    float: left;
    padding-right: 1em;
    padding-left: 1em;
  }

  .details .col.half:nth-child(2n-1),
  .details .col.third:nth-child(3n-2),
  .details .col.fourth:nth-child(4n-3) {
    clear: both;
    padding-left: 0;
  }

  .details .col.half:nth-child(2n),
  .details .col.third:nth-child(3n),
  .details .col.fourth:nth-child(4n) {
    padding-right: 0;
  }

  .details .col.third:nth-child(3n-2) {
    padding-right: 1.35em;
  }

  .details .col.third:nth-child(3n-1) {
    padding-left: 0.65em;
    padding-right: 0.65em;
  }

  .details .col.third:nth-child(3n) {
    padding-left: 1.35em;
  }

  .details .col.half {
    width: 50%;
  }

  .details .col.third {
    width: 33.333333333%;
  }

  .details .col.fourth {
    width: 25%;
  }
}

/******************
 * Project
 ******************/

/**
 * Project Overlay
 */

body[data-page="project"] .project-overlay {
  margin-left: -1em;
  margin-right: -1em;
}

@media (min-width: 480px) {
  body[data-page="project"] .project-overlay {
    margin-left: -2em;
    margin-right: -2em;
  }
}

/* Title */

body[data-page="project"] .project-overlay .project-title {
  background-color: #000;
  color: #fff;
  font-family: 'swiss_721_heavy';
  font-size: 2.625em; /* 42px */
  line-height: 1.14285714286em; /* 48px */
  padding: 8px 16px;
  position: relative;
  text-transform: lowercase;
}

@media (min-width: 480px) {
  body[data-page="project"] .project-overlay .project-title {
    padding-left: 32px;
    padding-right: 32px;
  }
}

/* Social Icons */

body[data-page="project"] .project-overlay .project-social {
  background-color: #000;
  height: 2.5em;
  padding: 0.5em 0;
  width: 100%;
}

@media (min-width: 480px){
  body[data-page="project"] .project-overlay .project-social {
    padding-left: 1em;
  }
}

body[data-page="project"] .project-overlay .project-social ul {
  margin: 0;
  overflow: hidden;
  padding: 0 0 0 11px;
  position: relative;
}

body[data-page="project"] .project-overlay .project-social li {
  display: block;
  float: left;
  margin-right: 0.5em;
}

body[data-page="project"] .project-overlay .project-social a {
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 1.5em 1.5em;
  display: block;
  height: 1.5em;
  line-height: 1em;
  overflow: hidden;
  text-indent: 100%;
  width: 1.5em;
}

body[data-page="project"] .project-overlay .project-social .project-social-facebook {
  background-image: url('/site/img/facebook_sm@2x.png');
}

body[data-page="project"] .project-overlay .project-social .project-social-twitter {
  background-image: url('/site/img/twitter_sm@2x.png');
}

body[data-page="project"] .project-overlay .project-social .project-social-linkedin {
  background-image: url('/site/img/linkedin_sm@2x.png');
}

body[data-page="project"] .project-overlay .project-social .project-social-pinterest {
  background-image: url('/site/img/pinterest_sm@2x.png');
}

/**
 * Project Media
 */

body[data-page="project"] .project-media {
  overflow: hidden;
  position: relative;
  min-width: 100%;
  margin-left: -1em;
  margin-right: -1em;
  background-color: #000;
}

@media (min-width: 480px) {
  body[data-page="project"] .project-media {
    margin-left: -2em;
    margin-right: -2em;
  }
}

/* Controls */

body[data-page="project"] .project-media .control {
  display: block;
  float: left;
  height: 58px;
  overflow: hidden;
  position: relative;
  text-indent: 200%;
  top: auto;
  margin: 0;
  white-space: nowrap;
  width: 49%;
  z-index: 10;
  opacity: 0.25;
  -webkit-transition: opacity 0.25s ease;
          transition: opacity 0.25s ease;
}

body[data-page="project"] .project-media .control.next {
  float: right;
}

.no-touch body[data-page="project"] .project-media .control:hover,
body[data-page="project"] .project-media .control:active,
body[data-page="project"] .project-media .control:focus {
  background-color: transparent;
  opacity: 0.75;
}

body[data-page="project"] .project-media .control.prev {
  background: url('/site/img/arrow-left@2x.png') no-repeat left center;
  background-size: 41px auto;
  left: 8px;
}

body[data-page="project"] .project-media .control.next {
  background: url('/site/img/arrow-right@2x.png') no-repeat right center;
  background-size: 41px auto;
  right: 8px;
}

@media (min-width: 480px) {
  body[data-page="project"] .project-media .control.prev {
    left: 24px;
  }

  body[data-page="project"] .project-media .control.next {
    right: 24px;
  }
}

/* Panels */

body[data-page="project"] .project-media .panels {
  position: relative;
  padding-bottom: 37.77%;
}

body[data-page="project"] .project-media .panels .panel { 
  left: 0;
  position: absolute;
  top: 0;
}

body[data-page="project"] .project-media .panels .panel,
body[data-page="project"] .project-media .panels .panel .media {
  height: 100%;
  width: 100%;
}

body[data-page="project"] .project-media .panels .panel .media {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

body[data-page="project"] .project-media .panels {
  display: none;
  background-color: #000;
}

body[data-page="project"] .content[data-active="overview"]            .project-media .panels[data-focus="overview"],
body[data-page="project"] .content[data-active="business_innovation"] .project-media .panels[data-focus="business_innovation"],
body[data-page="project"] .content[data-active="strategy"]            .project-media .panels[data-focus="strategy"],
body[data-page="project"] .content[data-active="brand"]               .project-media .panels[data-focus="brand"],
body[data-page="project"] .content[data-active="digital"]             .project-media .panels[data-focus="digital"],
body[data-page="project"] .content[data-active="product"]             .project-media .panels[data-focus="product"],
body[data-page="project"] .content[data-active="communications"]      .project-media .panels[data-focus="communications"] {
  display: block;
}

/**
 * Project Description
 */

body[data-page="project"] .project-description {
  background-color: #000;
  overflow: hidden;
  position: relative;
  margin-left: -1em;
  margin-right: -1em;
}

@media (min-width: 480px){
  body[data-page="project"] .project-description {
    margin-left: -2em;
    margin-right: -2em;
  }
}

/* Focuses */

body[data-page="project"] .project-description .focuses {
  list-style: none;
  margin: 0;
  padding: 1em;
}

body[data-page="project"] .project-description .focuses li {
  margin: 0;
  padding: 0;
}

body[data-page="project"] .project-description .focuses .focus {
  color: #fff;
  display: inline-block;
  font-family: 'swiss_721_heavy';
  font-size: 1.25em;
  line-height: 1.5em;
  padding: 0 0.5em;
  white-space: nowrap;
}

body[data-page="project"] .project-description .focuses .focus:hover,
body[data-page="project"] .project-description .focuses .focus:active,
body[data-page="project"] .project-description .focuses .focus:focus,
body[data-page="project"] .content[data-active="overview"]            .focuses .focus[data-focus="overview"],
body[data-page="project"] .content[data-active="business_innovation"] .focuses .focus[data-focus="business_innovation"],
body[data-page="project"] .content[data-active="strategy"]            .focuses .focus[data-focus="strategy"],
body[data-page="project"] .content[data-active="brand"]               .focuses .focus[data-focus="brand"],
body[data-page="project"] .content[data-active="digital"]             .focuses .focus[data-focus="digital"],
body[data-page="project"] .content[data-active="product"]             .focuses .focus[data-focus="product"],
body[data-page="project"] .content[data-active="communications"]      .focuses .focus[data-focus="communications"] {
  background-color: #fff;
  color: #000;
}

/* Stories */

body[data-page="project"] .project-description .stories {
  color: #fff;
  padding: 0 1em 1em 1em;
}

/* Thumbs */

body[data-page="project"] .project-description .stories .thumbs {
  margin-bottom: 1em;
}

body[data-page="project"] .project-description .stories .thumbs ul {
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
  overflow: hidden;
}

body[data-page="project"] .project-description .stories .thumbs .thumb {
  display: block;
  float: left;
  margin: 0 0.5em 0.5em 0;
  padding: 0;
}

body[data-page="project"] .project-description .stories .thumbs .thumb a,
body[data-page="project"] .project-description .stories .thumbs .thumb a img {
  display: block;
}

body[data-page="project"] .project-description .stories .thumbs .thumb a {
  border: 2px solid #000;
  width: 46px;
  height: 46px;
}

body[data-page="project"] .project-description .stories .thumbs .thumb a:hover,
body[data-page="project"] .project-description .stories .thumbs .thumb a:active,
body[data-page="project"] .project-description .stories .thumbs .thumb a.active {
  border-color: #FFF;
}

body[data-page="project"] .project-description .stories .thumbs .thumb a img {
  width: 100%;
  height: 100%;
}

/* Thumbs and stories */

body[data-page="project"] .project-description .stories .thumbs,
body[data-page="project"] .project-description .stories .story {
  display: none;
}

body[data-page="project"] .content[data-active="overview"]            .project-description .stories .story[data-focus="overview"],
body[data-page="project"] .content[data-active="business_innovation"] .project-description .stories .story[data-focus="business_innovation"],
body[data-page="project"] .content[data-active="strategy"]            .project-description .stories .story[data-focus="strategy"],
body[data-page="project"] .content[data-active="brand"]               .project-description .stories .story[data-focus="brand"],
body[data-page="project"] .content[data-active="digital"]             .project-description .stories .story[data-focus="digital"],
body[data-page="project"] .content[data-active="product"]             .project-description .stories .story[data-focus="product"],
body[data-page="project"] .content[data-active="communications"]      .project-description .stories .story[data-focus="communications"] {
  display: block;
}

body[data-page="project"] .project-description .stories .story p {
  font-size: 0.875em;
  line-height: 1.4em;
}

/**
 * Project Recognition
 */

body[data-page="project"] .project-description .recognition {
  background-color: rgba(0,0,0,0.5);
  clear: both;
  color: #fff;
  padding: 2em 1em;
  position: relative;
  overflow: hidden;
}

body[data-page="project"] .project-description .recognition .heading {
  font-family: 'swiss_721_heavy';
  font-size: 1.25em;
  letter-spacing: -0.03em;
  line-height: 1.5em;
  margin: 0;
  padding: 0;
  text-transform: lowercase;
}

body[data-page="project"] .project-description .recognition .awards {
  list-style: none;
  padding: 0;
}

body[data-page="project"] .project-description .recognition .awards li {
  display: block;
  font-size: 0.875em;
  line-height: 1.4em;
  padding: 0 0 1em 0;
}


@media (min-width: 480px) {
  /**
   * Project Description
   */

  /* Focuses */

  body[data-page="project"] .project-description .focuses {
    padding: 2em;
  }

  /* Stories */

  body[data-page="project"] .project-description .stories {
    padding-left: 2em;
    padding-right: 2em;
  }

  /**
   * Project Recognition
   */

  body[data-page="project"] .project-description .recognition {
    padding-left: 2em;
    padding-right: 2em;
  }
}

@media (min-width: 800px) {

  /* Overlay */
  body[data-page="project"] .project-overlay {
    position: absolute;
    left: 0;
    top: 4em;
    z-index: 20;
    overflow: hidden;
    margin-left: 0;
    margin-right: 0;
  }

  body[data-page="project"] .project-overlay .project-title {
    padding: 0.04761904761em 0.28571428571em 0.14285714285em 0.7619047619em; /* 2px 12px 6px 32px */
  }

  body[data-page="project"] .project-overlay .project-social { 
    float: left;
    width: auto; 
    padding: 0.5em 0;
  }

  body[data-page="project"] .project-overlay .project-social ul {
    padding: 0 0.25em 0 2em;
  }

  /**
   * Project Media
   */
  body[data-page="project"] .project-media .control {
    float: none;
    height: 50%;
    position: absolute;
    top: 50%;
    margin: -10% 0 0;
    width: 8em;
    background-image: none !important;
    opacity: 1;
  }

  body[data-page="project"] .project-media .control:hover,
  body[data-page="project"] .project-media .control:active,
  body[data-page="project"] .project-media .control:focus {
    background-color: rgba(0,0,0,0.1);
  }

  /**
   * Project Description
   */

  body[data-page="project"] .project-description,
  body[data-page="project"] .project-description .recognition {
    border-top: 1px solid #fff;
  }

  /* Focuses */
  body[data-page="project"] .project-description .focuses {
    float: left;
    width: 16em;
  }

  /* Stories and thumbs */

  body[data-page="project"] .project-description .stories {
    float: left;
    width: 30em;
    padding-top: 2em;
    padding-bottom: 2em;
  }

  body[data-page="project"] .content[data-active="overview"] .project-description .stories .thumbs[data-focus="overview"],
  body[data-page="project"] .content[data-active="business_innovation"] .project-description .stories .thumbs[data-focus="business_innovation"],
  body[data-page="project"] .content[data-active="strategy"] .project-description .stories .thumbs[data-focus="strategy"],
  body[data-page="project"] .content[data-active="brand"] .project-description .stories .thumbs[data-focus="brand"],
  body[data-page="project"] .content[data-active="digital"] .project-description .stories .thumbs[data-focus="digital"],
  body[data-page="project"] .content[data-active="product"] .project-description .stories .thumbs[data-focus="product"],
  body[data-page="project"] .content[data-active="communications"] .project-description .stories .thumbs[data-focus="communications"] {
    display: block;
  }

  /**
   * Project Recognition
   */

  body[data-page="project"] .project-description .recognition .heading,
  body[data-page="project"] .project-description .recognition .awards {
    float: left;
  }

  body[data-page="project"] .project-description .recognition .heading {
    width: 12em;
  }

  body[data-page="project"] .project-description .recognition .awards {
    margin: 0;
    padding-left: 1em;
  }
}

@media (min-width: 1024px) {

  /**
   * Project Description
   */

  /* Stories */

  body[data-page="project"] .project-description .stories {
    width: 42em;
  }

}

@media (min-width: 1280px) {

  body[data-page="project"] .project-description,
  body[data-page="project"] .project-description .recognition {
    border-top: 0;
  }

  /**
   * Project Recognition
   */

  body[data-page="project"] .project-description .recognition {
    width: 12em;
    float: right;
    clear: none !important;
  }

  body[data-page="project"] .project-description .recognition .heading {
    padding-right: 0;
    width: auto;
  }

  body[data-page="project"] .project-description .recognition .awards {
    margin: 1em 0;
    padding-left: 0;
  }
}

/******************
 * Blog
 ******************/

/**
 * Posts
 */

body[data-page="blog"]        .post,
body[data-page="blog-single"] .post {
  padding: 0;
  position: relative;
  overflow: hidden;
  margin: 0 -1em;
}

@media (min-width: 480px) {
  body[data-page="blog"]        .post,
  body[data-page="blog-single"] .post {
    margin: 0 -2em;
  }
}

/**
 * Date Headers
 */

body[data-page="blog"]        .post-date,
body[data-page="blog-single"] .month-header {
  border-top: 2px solid #000;
  position: relative;
  overflow: visible;
  margin: 2.35em 1em;
  clear: both;
}

body[data-page="blog"]        .post-date a,
body[data-page="blog-single"] .month-header .month {
  background: #000;
  color: #FFF;
  margin-top: -0.75em;
  display: block;
  float: left;
  padding: 0.25em 0.5em;
  line-height: 16px;
  font-size: 16px;
  letter-spacing: -0.05em;
  font-family: 'swiss_721_heavy';
  text-transform: lowercase;
}

/* Post Media */

body[data-page="blog"]        .post .post-overview,
body[data-page="blog-single"] .post .post-overview {
  overflow: hidden;
  position: relative;
}

body[data-page="blog"]        .post .post-overview .post-media .controls:after,
body[data-page="blog-single"] .post .post-overview .post-media .controls:after,
body[data-page="blog"]        .post .post-content:after {
  content: '';
  clear: both;
  display: block;
  height: 0;
  line-height: 0;
  visibility: hidden;
}

body[data-page="blog"]        .post .post-overview .post-media,
body[data-page="blog-single"] .post .post-overview .post-media {
  background: #ccc;
}

body[data-page="blog"] .post .post-overview .post-media {
  float: none;
  width: 100%;
}

body[data-page="blog"]        .post .post-overview .post-media .carousel,
body[data-page="blog-single"] .post .post-overview .post-media .carousel {
  padding-bottom: 56.25%; /* 9/16 aspect ratio */
  position: relative;
  width: 100%;
}

body[data-page="blog"]        .post .post-overview .post-media .panel,
body[data-page="blog-single"] .post .post-overview .post-media .panel {
  height: 100%;
  left: 0;
  position: absolute;
  opacity: 0;
  top: 0;
  -webkit-transition: opacity 0.5s ease;
          transition: opacity 0.5s ease;
  width: 100%;
  display: none;
  overflow: hidden;
}

body[data-page="blog"]        .post .post-overview .post-media .panel.active,
body[data-page="blog-single"] .post .post-overview .post-media .panel.active {
  opacity: 1;
  z-index: 20;
  display: block;
}

body[data-page="blog"]        .post .post-overview .post-media img,
body[data-page="blog"]        .post .post-overview .post-media iframe,
body[data-page="blog"]        .post .post-overview .post-media .missing,
body[data-page="blog-single"] .post .post-overview .post-media img,
body[data-page="blog-single"] .post .post-overview .post-media iframe,
body[data-page="blog-single"] .post .post-overview .post-media .missing {
  height: 100%;
  width: 100%;
}

body[data-page="blog"]        .post .post-overview .post-media iframe {
  position: absolute;
  left: 0;
  top: 0;
}


body[data-page="blog"]        .post .post-overview .post-media img,
body[data-page="blog-single"] .post .post-overview .post-media img {
  height: auto;
}

body[data-page="blog"]        .post .post-overview .post-media .missing,
body[data-page="blog-single"] .post .post-overview .post-media .missing {
  font-family: 'swiss_721_heavy', sans-serif;
  text-align: center;
  color: #fff;
  line-height: 32.5em;
  text-transform: uppercase;
}

body[data-page="blog"]        .post .post-overview .post-media .controls,
body[data-page="blog-single"] .post .post-overview .post-media .controls {
  background: #000;
}

body[data-page="blog"]        .post .post-overview .post-media .control,
body[data-page="blog-single"] .post .post-overview .post-media .control {
  display: block;
  float: left;
  height: 58px;
  width: 49.99%;
  opacity: 0.25;
  -webkit-transition: opacity 0.25s ease;
          transition: opacity 0.25s ease;
}

body[data-page="blog"]        .post .post-overview .post-media .control.next,
body[data-page="blog-single"] .post .post-overview .post-media .control.next {
  float: right;
  background: url('/site/img/arrow-right@2x.png') no-repeat right center;
  background-size: 41px auto;
}

body[data-page="blog"] .post .post-overview .post-media .control.prev,
body[data-page="blog-single"] .post .post-overview .post-media .control.prev {
  background: url('/site/img/arrow-left@2x.png') no-repeat left center;
  background-size: 41px auto;
}

body[data-page="blog"].no-touch .post .post-overview .post-media .control:hover,
body[data-page="blog-single"].no-touch .post .post-overview .post-media .control:hover {
  opacity: 0.75;
}

/* Post Overview */
body[data-page="blog"] .post .post-overview .post-headline { 
  max-width: 100%;
  padding: 0;
}

body[data-page="blog"] .post .post-overview .post-title {
  background: #000;
  font-family: 'swiss_721_heavy';
  font-size: 36px;
  line-height: 36px;
  letter-spacing: -0.03em;
  margin: 0;
  padding: 8px 16px;
  width: 100%;
}

body[data-page="blog"] .post .post-overview .post-title a {
  color: #fff;
}

body[data-page="blog"] .post .post-overview .post-teaser {
  clear: left;
  float: left;
  font-family: 'swiss_721_light';
  font-size: 16px;
  line-height: 24px;
  margin: 0;
  max-width: 100%;
  padding: 32px 16px 0;
}

body[data-page="blog"] .post .post-overview .post-teaser a {
  display: inline-block;
  font-family: 'swiss_721_medium';
}

body[data-page="blog"] .post .post-overview .post-teaser a:hover,
body[data-page="blog"] .post .post-overview .post-teaser a:active {
  color: #fff;
  background: #000;
}

/* Post Content */

body[data-page="blog-single"] .post .post-details {
  padding: 0 0 2em;
  position: relative;
  overflow: auto;
}

body[data-page="blog-single"] .post .post-details .post-meta,
body[data-page="blog-single"] .post .post-details .post-body {
  float: left;
}

body[data-page="blog-single"] .post .post-details .post-meta {
  width: 25em; /* 400px */
  max-width: 100%;
  margin: 0 1em 1em 0;
}

body[data-page="blog-single"] .post .post-details .post-body {
  font-family: 'swiss_721_light';
  line-height: 1.25em;
  max-width: 48em;
  padding: 0 1em;
}

body[data-page="blog-single"] .post .post-details .post-body a {
  font-family: 'swiss_721_medium';
}

body[data-page="blog-single"] .post .post-details .post-body a:hover,
body[data-page="blog-single"] .post .post-details .post-body a:active {
  background: #000;
  color: #fff;
}

body[data-page="blog-single"] .post .post-details .post-body p:first-child {
  margin-top: 0;
}

body[data-page="blog-single"] .post .post-details .post-headline .post-title {
  display: block;
  font-family: 'swiss_721_heavy';
  font-size: 36px;
  line-height: 36px;
  letter-spacing: -0.03em;
  background: #000;
  color: #fff;
  padding: 8px 16px;
  overflow: visible;
}

/* Blog Social Sharing */

body[data-page="blog"] .post .post-share { 
  width: 100%;
  background: #000;
}

body[data-page="blog"] .post .post-share ul,
body[data-page="blog-single"] .post .post-share ul {
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
  overflow: hidden;
}

body[data-page="blog"] .post .post-share li,
body[data-page="blog-single"] .post .post-share li {
  display: block;
  float: left;
  margin: 0;
  padding: 0;
}

body[data-page="blog"] .post .post-share a,
body[data-page="blog-single"] .post .post-share a {
  display: block;
  float: left;
  width: 2.5em;
  height: 2.5em;
  overflow: hidden;
  background: #000;
  color: #FFF;
  white-space: nowrap;
  text-indent: 100%;
}

body[data-page="blog"] .post .post-share a:hover,
body[data-page="blog"] .post .post-share a:active,
body[data-page="blog"] .post .post-share a:focus,
body[data-page="blog-single"] .post .post-share a:hover,
body[data-page="blog-single"] .post .post-share a:active,
body[data-page="blog-single"] .post .post-share a:focus {
  opacity:0.75;
}

body[data-page="blog"] .post .post-share .social-network-link,
body[data-page="blog-single"] .post .post-share .social-network-link {
  background-color: #000;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 1.5em 1.5em;
}

body[data-page="blog"] .post .post-share .social-network-link.facebook,
body[data-page="blog-single"] .post .post-share .social-network-link.facebook {
  background-image: url('/site/img/facebook_sm@2x.png');
}

body[data-page="blog"] .post .post-share .social-network-link.twitter,
body[data-page="blog-single"] .post .post-share .social-network-link.twitter {
  background-image: url('/site/img/twitter_sm@2x.png');
}

body[data-page="blog"] .post .post-share .social-network-link.pinterest,
body[data-page="blog-single"] .post .post-share .social-network-link.pinterest {
  background-image: url('/site/img/pinterest_sm@2x.png');
}

body[data-page="blog"] .post .post-share .social-network-link.linkedin,
body[data-page="blog-single"] .post .post-share .social-network-link.linkedin {
  background-image: url('/site/img/linkedin_sm@2x.png');
}

@media (min-width: 480px) {
  /* @todo convert to ems */
  body[data-page="blog"] .post .post-overview .post-title {
    padding: 8px 32px;
  }

  body[data-page="blog"] .post .post-share ul {
    padding: 0 16px 8px;
  }

  body[data-page="blog"] .post .post-overview .post-teaser {
    padding: 32px 32px 0;
  }

  body[data-page="blog-single"] .post .post-details .post-body {
    padding: 0 2em;
  }

  body[data-page="blog-single"] .post .post-details .post-meta {
    margin: 0 2em 2em 0;
  }

  body[data-page="blog-single"] .post .post-details .post-headline .post-title {
    padding: 8px 32px;
  }

  body[data-page="blog-single"] .post .post-share li:first-child {
    padding-left: 16px;
    background: #000;
  }
}

@media (min-width: 800px) {
  body[data-page="blog"] .post-date {
    margin: 2.35em 0;
  }

  body[data-page="blog"] .post { padding: 0 2em; }
  body[data-page="blog"] .post .post-overview .post-headline {
    float: left;
    max-width: 29%;
    padding: 0 32px 0 0;
  }

  body[data-page="blog"] .post .post-overview .post-title {
    float: left;
    margin: 0 0 8px;
    padding: 0 8px 4px;
    width: auto;
  }

  body[data-page="blog"] .post .post-overview .post-share { 
    clear: left;
    float: left; 
    width: auto;
  }

  body[data-page="blog"] .post .post-overview .post-share ul {
    padding: 0;
  }

  body[data-page="blog"] .post .post-overview .post-media {
    float: right;
    width: 71%;
  }

  body[data-page="blog"] .post .post-overview .post-teaser {
    max-width: 29%;
    padding: 32px 32px 0 0;
  }

  body[data-page="blog-single"] .post {
    padding: 0 2em;
  }

  body[data-page="blog-single"] .post .post-details .post-headline .post-title {
    padding: 0 8px 4px;
    margin: 0 0 8px;
  }

  body[data-page="blog-single"] .post .post-share li:first-child {
    padding-left: 0;
  }

  body[data-page="blog-single"] .post .post-details {
    padding: 2em 0;
  }

  body[data-page="blog-single"] .post .post-details .post-body {
    padding: 0;
  }

  body[data-page="blog"] .post .post-overview .post-media,
  body[data-page="blog-single"] .post .post-overview .post-media { 
    position: relative;
  }

  body[data-page="blog"] .post .post-overview .post-media .controls,
  body[data-page="blog-single"] .post .post-overview .post-media .controls {
    opacity: 0;
  }

  body[data-page="blog"] .post .post-overview .post-media:hover .controls,
  body[data-page="blog-single"] .post .post-overview .post-media:hover .controls {
    opacity: 1;
  }

  body[data-page="blog"] .post .post-overview .post-media .control,
  body[data-page="blog-single"] .post .post-overview .post-media .control {
    /*background: none rgba(0,0,0,0.2) !important;*/
    bottom: 25%;
    height: auto;
    position: absolute;
    top: 25%;
    width: 8em;
    z-index: 20;
  }

  body[data-page="blog"] .post .post-overview .post-media .control.next,
  body[data-page="blog-single"] .post .post-overview .post-media .control.next {
    right: 0;
  }

  body[data-page="blog"].no-touch .post .post-overview .post-media .control:hover,
  body[data-page="blog-single"].no-touch .post .post-overview .post-media .control:hover {
    background: none rgba(0,0,0,0.3) !important;
  }
}



/******************
 * Search
 ******************/

body[data-page="search"] .overview {
  min-height: 11em;
}

body[data-page="search"] .details .result .result-link {
  display: block;
}

body[data-page="search"] .details .result .result-link img {
  display: block;
  width: 100%;
  margin-bottom: 1em;
}

body[data-page="search"] .details .result .result-link .result-title {
  font-family: 'swiss_721_heavy';
  font-size: 1.5em;
  line-height: 1.25em;
  font-weight: normal;
  background: #000;
  color: #fff;
  display: inline-block;
  padding: 0 0.25em;
  text-transform: lowercase;
  margin: 0;
}

body[data-page="search"] .details .result .result-link .result-body {
  font-family: 'swiss_721_roman';
  line-height: 18px;
}

body[data-page="search"] .details .no-results a {
  font-family: 'swiss_721_bold', sans-serif;
}

/******************
 * 404
 ******************/

body[data-page="404"] .flip {
  text-align: right;
  position: relative;
  overflow: hidden;

  -webkit-transform: rotateZ(180deg);
  -moz-transform: rotateZ(180deg);
  -ms-transform: rotateZ(180deg);
  transform: rotateZ(180deg);
}

body[data-page="404"] .flip .flip-inner {
  position: relative;
  overflow: hidden;
  max-width: 52em;
  float: right;
}

body[data-page="404"] .flip h1.line-big {
  padding: 0.5em 0;
}

body[data-page="404"] .flip .line-big {
  font-size: 2em;
  font-family: 'swiss_721_heavy', sans-serif;
  letter-spacing: -0.03em;
  line-height: 1em;
  margin: 0;
  padding: 0;
}

body[data-page="404"] .flip .line-small {
  font-family: 'swiss_721_roman', sans-serif;
  font-size: 1.5em;
  line-height: 1.1em;
  margin: 0;
  padding: 2em 0;
  max-width: 26em;
  float: right;
}

body[data-page="404"] .flip .line-small a {
  font-family: 'swiss_721_heavy', sans-serif;
}

@media (min-width: 480px) {
  body[data-page="404"] .flip .line-big {
    font-size: 3em;
    line-height: 1em;
  }
}

@media (min-width: 600px) {
  body[data-page="404"] .flip .line-big {
    font-size: 4em;
    line-height: 1em;
  }
}

@media (min-width: 720px) {
  body[data-page="404"] .flip .line-big {
    font-size: 5em;
    line-height: 1em;
  }
}

@media (min-width: 800px) {
  body[data-page="404"] .flip .line-big {
    font-size: 6em;
    line-height: 1em;
  }
}

/******************
 * Clients
 ******************/

body[data-page="clients"] .page .main .content {
  background-image: url('/site/img/bg_clients.png');
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: cover;
  color: #fff;
}

body[data-page="clients"] .overview h1 {
  max-width: 904px;
}

body[data-page="clients"] .details h3 {
  margin: 0;
  font-size: 20px;
  font-family: 'swiss_721_heavy';
  text-transform: lowercase;
}

body[data-page="clients"] .details ul {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
}

body[data-page="clients"] .details a,
body[data-page="clients"] .details span {
  display: inline-block;
}

body[data-page="clients"] .details span,
body[data-page="clients"] .details a:link,
body[data-page="clients"] .details a:visited {
  color: #fff;
}

body[data-page="clients"] .details a:hover,
body[data-page="clients"] .details a:active,
body[data-page="clients"] .details a:focus {
  background: #000;
  padding: 0 0.25em;
  margin-left: -0.25em;
}

/******************
 * About
 ******************/

body[data-page="about"] .details {
  background-color: #000;
}

body[data-page="about"] .details .capabilities {
  margin: 0 -2em;
  padding: 0;
  list-style: none;
  z-index: 1;
  position: relative;
}

body[data-page="about"] .details .capabilities li {
  border-top: 3px solid #FFF;
  padding: 0;
  margin: 0;
}

body[data-page="about"] .details .capabilities a {
  display: inline-block;
  font-family: 'swiss_721_heavy';
  font-size: 26px;
  line-height: 32px;
  padding: 3px 4px;
  background: #FFF;
  color: #000;
  margin: 32px 0 0 32px;
}

body[data-page="about"] .details .capabilities .capability {
  overflow: auto;
  color: #fff;
  padding: 0 2em 2em 2em;
}

body[data-page="about"] .details .capabilities .capability .title {
  display: none;
}

body[data-page="about"] .details .capabilities .capability p,
body[data-page="about"] .details .capabilities .capability .subtitle {
  font-family: 'swiss_721_heavy';
  letter-spacing: -0.05em;
  line-height: 24px;
}

body[data-page="about"] .details .capabilities .capability .subtitle {
  font-size: 20px;
}

body[data-page="about"] .details .capabilities .capability p {
  font-size: 24px;
}

body[data-page="about"] .details .capabilities .capability ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

body[data-page="about"] .details .capabilities .capability li {
  border-top: 0;
  padding: 0;
}

@media (min-width: 904px) {

  body[data-page="about"] .details .capabilities {
    padding-top: 1em;
    padding-bottom: 5em;
  }

  body[data-page="about"] .details .capabilities .capability {
    overflow: auto;
    display: none;
  }

  body[data-page="about"] .details .capabilities li {
    background: transparent;
    padding: 0;
    border-top: 0;
  }

  body[data-page="about"] .details .capabilities .capability.active {
    display: block;
    position: absolute;
    left: 24em;
    width: 40%;
  }

  body[data-page="about"] .details .capabilities .capability:nth-of-type(1) {
    top: 0;
  }

  body[data-page="about"] .details .capabilities a {
    background: transparent;
    color: #FFF;
    margin-top: 0;
  }

  body[data-page="about"] .details .capabilities a:hover,
  body[data-page="about"] .details .capabilities a:active,
  body[data-page="about"] .details .capabilities a:focus,
  body[data-page="about"] .details .capabilities a.active {
    background: #FFF;
    color: #000;
  }
}

/******************
 * Model
 ******************/

body[data-page="model"] .details .program-type {
  text-transform: lowercase;
}

body[data-page="model"] .details .program-type dt,
body[data-page="model"] .details .program-type dd {
  margin: 0;
}

body[data-page="model"] .details .program-type dt h3,
body[data-page="model"] .details .program-type dd p:first-child {
  font-family: 'swiss_721_heavy', sans-serif;
  letter-spacing: -0.03em;
  line-height: 24px;
  margin-bottom: 4px;
}

body[data-page="model"] .details .program-type dt h3 {
  font-size: 23px;
}

body[data-page="model"] .details .program-type dd p:first-child {
  font-size: 20px;
}

body[data-page="model"] .details .program-type dd p:last-child {
  font-size: 14px;
  line-height: 20px;
  margin-top: 0;
}

/******************
 * People
 ******************/

body[data-page="people"] .overview {
  min-height: 11em;
}

body[data-page="people"] .details {
  padding-bottom: 2em;
}

body[data-page="people"] .details .person,
body[data-page="people"] .details .bio-view .close {
  display: none;
}

body[data-page="people"] .details .bio {
  font-family: 'swiss_721_roman', sans-serif;
  font-size: 14px;
  line-height: 22px;
  position: relative;
  overflow: auto;
  padding-bottom: 32px;
}

body[data-page="people"] .details .bio .headshot {
  display: block;
  width: 100%;
  height: 100%;
}

body[data-page="people"] .details .bio .name,
body[data-page="people"] .details .bio .position {
  font-family: 'swiss_721_heavy', sans-serif;
  font-size: 16px;
  line-height: 22px;
  margin: 0;
}

@media (min-width: 904px) {

  body[data-page="people"] .details .bio p {
    margin-left: 316px;
  }

  body[data-page="people"] .details .bio .headshot {
    float: left;
    margin-right: 16px;
    width: 300px;
    height: 300px;
  }
}

@media (min-width: 1088px) {

  body[data-page="people"] .details .person {
    display: block;
    float: left;
    min-width: 256px;
    max-width: 25%;
  }

  body[data-page="people"] .details .person .headshot {
    display: block;
    height: 100%;
    width: 100%;
  }

  body[data-page="people"] .details .bio-view {
    position: absolute;
    overflow: auto;
    left: 50%;
    top: 50%;
    box-shadow: 0 0 8px 1px #CCC;
    background-color: #FFF;
    width: 800px;
    margin-left: -400px;
    margin-top: -400px;
    display: none;    
    z-index: 0;
  }

  body[data-page="people"] .details .bio-view.visible {
    display: block;
    z-index: 4;
  }

  body[data-page="people"] .details .bio-view .close {
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 3.625em;
    height: 3em;
    z-index: 1000;
    background: transparent url('/site/img/menu_close@2x.png') no-repeat 0 0;
    background-size: 58px auto;
  }

  body[data-page="people"] .details .bio {
    padding: 16px;
  }
}



/******************
 * Recognition
 ******************/

body[data-page="recognition"] .details h3 {
  font-family: 'swiss_721_heavy', sans-serif;
  font-size: 20px;
  line-height: 24px;
}

body[data-page="recognition"] .details h4 {
  font-family: 'swiss_721_heavy', sans-serif;
  font-size: 1em;
  line-height: 1em;
  margin: 0;
}

body[data-page="recognition"] .details h4:before {
  display: block;
  content: '';
  border-top: 2px solid #000;
  position: relative;
  top: 0.875em;
  z-index: 1;
}

body[data-page="recognition"] .details h4 a {
  display: inline-block;
  padding: 0.375em 8px;
  position: relative;
  z-index: 2;
  background: #fff;
}

body[data-page="recognition"] .details h4 a:hover,
body[data-page="recognition"] .details h4 a:active,
body[data-page="recognition"] .details h4 a:focus,
body[data-page="recognition"] .details h4 a.active {
  background: #000;
  color: #FFF;
}

body[data-page="recognition"] .details dl {
  font-size: 14px;
  line-height: 18px;
}

body[data-page="recognition"] .details dl dd {
  margin: 0;
}

body[data-page="recognition"] .details dl dt {
  font-weight: bold;
}

body[data-page="recognition"] .details span {
  display: none;
}

/******************
 * Careers
 ******************/

body[data-page="careers"] .overview {
  background: url('/site/img/bg_careers.jpg') no-repeat right 0;
  color: #fff;
}

body[data-page="careers"] .overview h1,
body[data-page="careers"] .overview p {
  max-width: 360px;
}

body[data-page="careers"] .details .listings {
  padding: 2em 0;
  position: relative;
  overflow: auto;
}

body[data-page="careers"] .details .listings .job {
  display: block;
  margin-right: 8%;
  padding-bottom: 2em;
}

body[data-page="careers"] .details .listings a {
  display: block;
}

body[data-page="careers"] .details .listings a:hover,
body[data-page="careers"] .details .listings a:focus,
body[data-page="careers"] .details .listings a:active {
  text-decoration: underline;
}

body[data-page="careers"] .details .listings h3,
body[data-page="careers"] .details .listings h4 {
  margin: 0;
}

body[data-page="careers"] .details .listings h3 {
  font-size: 22px;
  line-height: 22px;
  font-family: 'swiss_721_heavy', sans-serif;
}

body[data-page="careers"] .details .listings h4 {
  font-size: 14px;
  line-height: 18px;
  font-family: 'swiss_721_heavy', sans-serif;
}

body[data-page="careers"] .details .listings .job-description p,
body[data-page="careers"] .details .listings .job-description ul,
body[data-page="careers"] .details .listings .job-description div {
  font-size: 14px;
  line-height: 18px;
}

body[data-page="careers"] .details .listings .job-single .job-apply a {
  font-size: 16px;
  line-height: 24px;
  display: inline-block;
  background: #000;
  color: #FFF;
  padding: 0 1em;
  font-family: 'swiss_721_roman', sans-serif;
  text-transform: lowercase;
}

body[data-page="careers"] .details .listings .job-single .job-apply a:hover,
body[data-page="careers"] .details .listings .job-single .job-apply a:active {
  text-decoration: none;
}

@media (min-width: 900px) {
  body[data-page="careers"] .details .listings .job {
    float: left;
    width: 25%;
  }

  body[data-page="careers"] .details .listings .job-col {
    width: 100%;
    height: auto;

    /* clearfix */
    zoom: 1; /* for IE 6/7 */
  }
  
  /* clearfix */
  body[data-page="careers"] .details .listings .job-col:before,
  body[data-page="careers"] .details .listings .job-col:after {
    content: "";
    display: table;
  }

  body[data-page="careers"] .details .listings .job-col:after {
    clear: both;
  }

  body[data-page="careers"] .details .listings .job.clear {
    clear: left;
  }

  body[data-page="careers"] .details .listings .job-single {
    padding: 0 176px;
  }
}

/******************
 * Contact
 ******************/

body[data-page="contact"] .page .main .content {
  background-image: url('/site/img/bg_contact.jpg');
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: cover;
  color: #FFF;
}

body[data-page="contact"] .page .main .overview p {
  max-width: 680px;
}

body[data-page="contact"] .page .main .details h3 {
  font-family: 'swiss_721_heavy';
  font-size: 1em;
  text-transform: lowercase;
  margin: 0;
}

body[data-page="contact"] .page .main .details p {
  margin: 0;
}

body[data-page="contact"] .page .main .details .address p + p,
body[data-page="contact"] .page .main .details .info h3 {
  margin-top: 1em;
}

body[data-page="contact"] .page .main .details a {
  color: #fff;
}

body[data-page="contact"] .page .main .details .address,
body[data-page="contact"] .page .main .details .info {
  padding: 3em 0 0 0;
}

body[data-page="contact"] .page .main .details .info {
  padding-bottom: 3em;
}

/*
	contact page email subscribe
*/


body[data-page="contact"] .page .main .details .subscribe h1{
    font-family: 'swiss_721_heavy';
    font-size: 3.3em;
	padding-bottom:8px;
}

body[data-page="contact"] .page .main .details .subscribe h2{
    font-family: 'swiss_721_heavy';
    font-size: 1.4em;
	line-height:1.2em;
	letter-spacing:.7px;
}

body[data-page="contact"] .page .main .details .subscribe .container{
	position:relative;
	width:100%;
	min-height:140px
}

body[data-page="contact"] .page .main .details .subscribe .container .success, .failure{
	position:absolute;
	top:0;
	left:0;
	display:table; 
	height:40px; 
	overflow:hidden;
}

body[data-page="contact"] .page .main .details .subscribe input{
	font-family: 'swiss_721_light';
	padding:0 20px 0 20px;
	height:36px;
	color:#646464;
	font-size: 1.1em;
}

body[data-page="contact"] .page .main .details .subscribe #fieldName,#fieldEmail{
	width:100%;
	max-width:360px;
	display:block;
	margin-right:14px;
	margin-bottom:8px;
}

body[data-page="contact"] .page .main .details .subscribe #email-submit{
	display:block;
	width:96px;
	color:white;
	border: 0px solid;
	background-color:#1bb6e2;
}

body[data-page="contact"] .page .main .details .subscribe .icon {
	float:left;
	width:40px;
	height:40px;
	margin-right:16px;
}

body[data-page="contact"] .page .main .details .subscribe .success .icon {
	background-image: url('../img/1x/email-icon-success@1x.png');
}

body[data-page="contact"] .page .main .details .subscribe .failure .icon {
	background-image: url('../img/1x/email-icon-failure@1x.png');
}

body[data-page="contact"] .page .main .details .subscribe .text {
	font-size: 1.1em;
	display: table-cell;
	vertical-align: middle;
}

@media (min-width: 760px) {

  body[data-page="contact"] .page .main .details .address {
	  float: left;
	  width: 340px;
  }

  body[data-page="contact"] .page .main .details .info {
	  clear: both;
  }
  
  body[data-page="contact"] .page .main .details .subscribe #fieldName,#fieldEmail{
	  width:310px;
	  display:inline;
  }
  
  body[data-page="contact"] .page .main .details .subscribe #email-submit{
	  display:inline;
  }

}

/******************
 * Company Brand
 ******************/

.rainbow-full {
  /*
  ------------------------------------------------------
  COLOR       HEX         EXACT % STOP    ROUNDED % STOP
  ------------------------------------------------------
  red         #ec1c41     0%              0%
  pink        #ec027d     23.59375%       24%
  orange      #ff9736     37.96875%       38%
  yellow      #ffce2e     49.84375%       50%
  green       #50bc92     62.03125%       62%
  blue        #0ca5c7     76.09375%       76%
  purple      #882f91     100%            100%
  ------------------------------------------------------
  */
  background: #ec1c41;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2VjMWM0MSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjI0JSIgc3RvcC1jb2xvcj0iI2VjMDI3ZCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjM4JSIgc3RvcC1jb2xvcj0iI2ZmOTczNiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iI2ZmY2UyZSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjYyJSIgc3RvcC1jb2xvcj0iIzUwYmM5MiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9Ijc2JSIgc3RvcC1jb2xvcj0iIzBjYTVjNyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM4ODJmOTEiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(left,  #ec1c41 0%, #ec027d 24%, #ff9736 38%, #ffce2e 50%, #50bc92 62%, #0ca5c7 76%, #882f91 100%);
  background: -webkit-gradient(linear, left top, right top, color-stop(0%,#ec1c41), color-stop(24%,#ec027d), color-stop(38%,#ff9736), color-stop(50%,#ffce2e), color-stop(62%,#50bc92), color-stop(76%,#0ca5c7), color-stop(100%,#882f91));
  background: -webkit-linear-gradient(left,  #ec1c41 0%,#ec027d 24%,#ff9736 38%,#ffce2e 50%,#50bc92 62%,#0ca5c7 76%,#882f91 100%);
  background: -o-linear-gradient(left,  #ec1c41 0%,#ec027d 24%,#ff9736 38%,#ffce2e 50%,#50bc92 62%,#0ca5c7 76%,#882f91 100%);
  background: -ms-linear-gradient(left,  #ec1c41 0%,#ec027d 24%,#ff9736 38%,#ffce2e 50%,#50bc92 62%,#0ca5c7 76%,#882f91 100%);
  background: linear-gradient(to right,  #ec1c41 0%,#ec027d 24%,#ff9736 38%,#ffce2e 50%,#50bc92 62%,#0ca5c7 76%,#882f91 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ec1c41', endColorstr='#882f91',GradientType=1 );
}

.rainbow-business_innovation {
  /* ec1c41 -> ec027d */
  background: #ec1c41;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2VjMWM0MSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlYzAyN2QiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(left,  #ec1c41 0%, #ec027d 100%);
  background: -webkit-gradient(linear, left top, right top, color-stop(0%,#ec1c41), color-stop(100%,#ec027d));
  background: -webkit-linear-gradient(left,  #ec1c41 0%,#ec027d 100%);
  background: -o-linear-gradient(left,  #ec1c41 0%,#ec027d 100%);
  background: -ms-linear-gradient(left,  #ec1c41 0%,#ec027d 100%);
  background: linear-gradient(to right,  #ec1c41 0%,#ec027d 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ec1c41', endColorstr='#ec027d',GradientType=1 );
}

.rainbow-strategy {
  /* ec027d -> ff9736 */
  background: #ec027d;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2VjMDI3ZCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZjk3MzYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(left, #ec027d 0%, #ff9736 100%);
  background: -webkit-gradient(linear, left top, right top, color-stop(0%,#ec027d), color-stop(100%,#ff9736));
  background: -webkit-linear-gradient(left, #ec027d 0%, #ff9736 100%);
  background: -o-linear-gradient(left, #ec027d 0%, #ff9736 100%);
  background: -ms-linear-gradient(left, #ec027d 0%, #ff9736 100%);
  background: linear-gradient(to right, #ec027d 0%, #ff9736 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ec027d', endColorstr='#ff9736',GradientType=1 );
}

.rainbow-brand {
  /* ff9736 -> ffce2e */
  background: #ff9736;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmOTczNiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZmNlMmUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(left,  #ff9736 0%, #ffce2e 100%);
  background: -webkit-gradient(linear, left top, right top, color-stop(0%,#ff9736), color-stop(100%,#ffce2e));
  background: -webkit-linear-gradient(left,  #ff9736 0%,#ffce2e 100%);
  background: -o-linear-gradient(left,  #ff9736 0%,#ffce2e 100%);
  background: -ms-linear-gradient(left,  #ff9736 0%,#ffce2e 100%);
  background: linear-gradient(to right,  #ff9736 0%,#ffce2e 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff9736', endColorstr='#ffce2e',GradientType=1 );
}

.rainbow-digital {
  /* ffce2e -> 50bc92 */
  background: #ffce2e;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmY2UyZSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM1MGJjOTIiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(left,  #ffce2e 0%, #50bc92 100%);
  background: -webkit-gradient(linear, left top, right top, color-stop(0%,#ffce2e), color-stop(100%,#50bc92));
  background: -webkit-linear-gradient(left,  #ffce2e 0%,#50bc92 100%);
  background: -o-linear-gradient(left,  #ffce2e 0%,#50bc92 100%);
  background: -ms-linear-gradient(left,  #ffce2e 0%,#50bc92 100%);
  background: linear-gradient(to right,  #ffce2e 0%,#50bc92 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffce2e', endColorstr='#50bc92',GradientType=1 );
}

.rainbow-product {
  /* 50bc92 -> 0ca5c7 */
  background: #50bc92;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzUwYmM5MiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwY2E1YzciIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(left,  #50bc92 0%, #0ca5c7 100%);
  background: -webkit-gradient(linear, left top, right top, color-stop(0%,#50bc92), color-stop(100%,#0ca5c7));
  background: -webkit-linear-gradient(left, #50bc92 0%, #0ca5c7 100%);
  background: -o-linear-gradient(left, #50bc92 0%, #0ca5c7 100%);
  background: -ms-linear-gradient(left, #50bc92 0%, #0ca5c7 100%);
  background: linear-gradient(to right, #50bc92 0%, #0ca5c7 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#50bc92', endColorstr='#0ca5c7',GradientType=1 );
}

.rainbow-activations {
  /* 0ca5c7 -> 882f91 */
  background: #0ca5c7;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzBjYTVjNyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM4ODJmOTEiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(left, #0ca5c7 0%, #882f91 100%);
  background: -webkit-gradient(linear, left top, right top, color-stop(0%,#0ca5c7), color-stop(100%,#882f91));
  background: -webkit-linear-gradient(left, #0ca5c7 0%, #882f91 100%);
  background: -o-linear-gradient(left, #0ca5c7 0%, #882f91 100%);
  background: -ms-linear-gradient(left, #0ca5c7 0%, #882f91 100%);
  background: linear-gradient(to right, #0ca5c7 0%, #882f91 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0ca5c7', endColorstr='#882f91',GradientType=1 );
}

/**********************************************************
 * 5. PRINT STYLES
 **********************************************************/

@media print {
  * {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }

  a,
  a:visited {
    text-decoration: underline;
  }

  a[href]:after {
    content: " (" attr(href) ")";
  }

  abbr[title]:after {
    content: " (" attr(title) ")";
  }

  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: "";
  }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }

  thead {
    display: table-header-group;
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  img {
    max-width: 100% !important;
  }

  @page {
    margin: 0.5cm;
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }
}