/*! HTML5 Boilerplate v7.2.0 | MIT License | https://html5boilerplate.com/ */

/* main.css 2.0.0 | MIT License | https://github.com/h5bp/main.css#readme */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
  color: #222;
  font-size: 1em;
  line-height: 1.4;
  font-family: 'Domaine Sans Text', sans-serif;
  margin-top:0 !important;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}
::-webkit-scrollbar {
    width: 0px;
    background: transparent; /* make scrollbar transparent */
}

h1, h2, h3 {
  margin:0;
  font-weight: normal;
}
p {
  margin:0 0 1.4em;
}

/*
 * A better looking default horizontal rule
 */

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

blockquote {
  margin:0;
}

a {
  color:#000;
}
/*
 * Allow only vertical resizing of textareas.
 */

textarea {
  resize: vertical;
}
/*
@font-face {
    font-family: 'DomaineDisplay';
    src: url('../fonts/DomaineDisplayWeb-Regular.eot');
    src: url('../fonts/DomaineDisplayWeb-Regular.eot?#iefix') format('embedded-opentype'),
        url('../fonts/DomaineDisplayWeb-Regular.woff2') format('woff2'),
        url('../fonts/DomaineDisplayWeb-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'DomaineDisplay';
    src: url('../fonts/DomaineDisplayWeb-RegularItalic.eot');
    src: url('../fonts/DomaineDisplayWeb-RegularItalic.eot?#iefix') format('embedded-opentype'),
        url('../fonts/DomaineDisplayWeb-RegularItalic.woff2') format('woff2'),
        url('../fonts/DomaineDisplayWeb-RegularItalic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
}*/

@font-face {
    font-family: 'Domaine Sans Text';
    src: url('../fonts/DomaineSansTextWeb-Light.eot');
    src: url('../fonts/DomaineSansTextWeb-Light.eot?#iefix') format('embedded-opentype'),
        url('../fonts/DomaineSansTextWeb-Light.woff2') format('woff2'),
        url('../fonts/DomaineSansTextWeb-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Domaine Sans Text';
    src: url('../fonts/DomaineSansTextWeb-LightItalic.eot');
    src: url('../fonts/DomaineSansTextWeb-LightItalic.eot?#iefix') format('embedded-opentype'),
        url('../fonts/DomaineSansTextWeb-LightItalic.woff2') format('woff2'),
        url('../fonts/DomaineSansTextWeb-LightItalic.woff') format('woff');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Domaine Sans Text';
    src: url('../fonts/DomaineSansTextWeb-Light.eot');
    src: url('../fonts/DomaineSansTextWeb-Light.eot?#iefix') format('embedded-opentype'),
        url('../fonts/DomaineSansTextWeb-Light.woff2') format('woff2'),
        url('../fonts/DomaineSansTextWeb-Light.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Domaine Sans Text Regular';
    src: url('../fonts/DomaineSansTextWeb-Regular.eot');
    src: url('../fonts/DomaineSansTextWeb-Regular.eot?#iefix') format('embedded-opentype'),
        url('../fonts/DomaineSansTextWeb-Regular.woff2') format('woff2'),
        url('../fonts/DomaineSansTextWeb-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}


/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

html {
  overflow-x: hidden;
  overflow-y: hidden;
}
html.is--story {
  overflow-x: hidden; 
  overflow-y: auto;
}
html.is--purple,
html.is--zoom {
  overflow-y: hidden !important;
}
.c-story { display:none;}
html.is--story .c-story , html.is--map .c-story  {display:block;}

main {
  padding: 0 25px 7vw 25px;
}
@media only screen and (max-width: 768px) {
  main {
    padding: 0 12px 100px 12px;
  }
}

body {
  cursor: none;
}


/* LOADER */
.c-loader {
  
}

/* PURPLE */
.c-purple {
  position:fixed;
  left:50%;
  top:0;
  z-index:10004;
  cursor:none;
  transform: translate(0,0);
  display:none;
  width:12vw;
  height:4vw;
  margin-left:-6vw;
}
.c-purple span {
  pointer-events:none;
  display:block;
  position:absolute;
  left:50%;
  width: 3.5vw;
  height: 3.5vw;
  background-color: #522f5d;
  background-color: rgba(82,47,93,.7);
  margin-left:-1.8vw;
  margin-top:-1.8vw;
  border-radius: 50%;
}
.c-purple span.u-animated {
  transition:100ms all ease-out;
}
.is--story .c-purple,
.is--map .c-purple,
.is--map-popup .c-purple {
  display:block;  
}
.c-purple__menu {
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background:#fff;
  z-index:10011;
  transition:200ms all ease-out;
  pointer-events:none;
  opacity:0;
  overflow-y:scroll;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
}
.is--purple .c-purple__menu {
  opacity:1;
  pointer-events:auto;
}
.c-purple__terms, .c-purple__links {
  margin:0;
  padding:0;
  list-style: none;
  text-align: center;
}
.c-purple__terms li,.c-purple__links li{
  display:inline;
}
.c-purple__links {
  padding-top: 35px;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  font-weight: 300;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.29px;
}
.c-purple__links a{
  text-decoration: none;
}
.c-purple__menu h2 {
  margin-bottom:0.83em;
}
@media only screen and (min-width: 769px) {
  .c-purple__logo {
    margin:0 auto;
    width: 94px;
    height: 113px;
    background-image: url(../img/purple_logo.png);
    background-size: contain;
  }
  .c-purple__closer {
    position:absolute;
    z-index:1;
    left:0;
    top:0;
    width:100%;
    height:100%;
    cursor:none;
  }
  .c-purple__content {
    position:relative;
    z-index:2;
    padding-top: 53px;
    padding-right: 0;
    padding-left: 0;
    margin:0 auto;
    width: 674px;
    background:#fff;
  }
  .c-purple__links {
    width: 394px;
    margin: 0 auto 34px;
  }
  .c-purple__copyrights {
    color: rgb(115, 115, 115);
    font-weight: 300;
    text-align: center;
    font-size: 12px;
    line-height: 16px;
    letter-spacing: -0.07px;
    margin: 34px 0px 0px; 
    width: 394px;
    margin: 0 auto;
  }  
  .c-purple__privacy, .c-purple__text {
    font-size: 23px;
    line-height: 1.4em;
    letter-spacing: -.0055em;
    margin-top: 4.375vw;
  }
  
  .c-purple__text p {
    margin: 3.125vw 0 0;
    font-weight: 300;
  }
  .c-purple__terms {
    display: flex;
    width:394px;
    justify-content: space-around;
    font-weight: 300;
    text-align: center;
    font-size: 12px;
    line-height: 16px;
    letter-spacing: -0.07px;
    padding: 14px 0px 102px;
    margin:0 auto;
  }
  .c-purple__terms a {
    color: rgb(115, 115, 115);
  }
}
@media only screen and (max-width: 768px) {
  .c-purple {
    width: 12vw;
    height: 12vw;
    margin-left:-6vw;
    margin-top:-6vw;
  }
  .c-purple__logo {
    position: relative;
    margin:0 auto;
    width: 63px;
    height: 75px;
    background-image: url(../img/purple_logo.png);
    background-size: contain;
  }
  .c-purple span {
    left:0;
    width: 12vw;
    height: 12vw;
    margin: 0;
  }
  .c-purple__close {
    width: 32px;
    height: 32px;
    display: block;
    top: 21px;
    right: -50px;
    position: absolute;
    overflow:hidden;
    background:#000;
    border-radius:50%;
  }
  .c-purple__close svg {
    position:absolute;
    left:-9px;
    top:-9px;
  }
  .c-purple__content {
    padding: 20px;
  }
  .c-purple__privacy, .c-purple__text {
    margin-top: 34px;
    font-size: 19px;
    line-height: 24px;
    letter-spacing: -.005625em;
  }
  .c-purple__links {
    padding-top: 0;
    font-size: 19px;
    line-height: 33px;
    width: 100%;
    display:block; 
  }
  .c-purple__links li {
    display:block;
  }
  .c-purple__links a {
    text-decoration: underline;
  }
  .c-purple__copyrights {
    width:284px;
    margin: 34px auto 0;
    font-family: Domaine Sans Text,sans-serif;
    color: #737373;
    font-size: 13px;
    line-height: 16px;
    font-weight: 300;
    text-align: center;
    letter-spacing: -.07px;
  }
  .c-purple__terms {
    display: flex;
    width:284px;
    justify-content: space-around;
    font-weight: 300;
    text-align: center;
    font-size: 13px;
    line-height: 16px;
    letter-spacing: -0.07px;
    margin:0 auto;
    padding: 34px 0;
  }
  .c-purple__terms a {
    color:#8E8E8E;
  }
}

/* CURSOR */
.c-cursor {
  position:fixed;
  width:18px;
  height:18px;
  margin:-9px 0 0 -9px;
  border-radius:9px;
  background:#000;
  z-index: 10021;
  pointer-events: none;
  backface-visibility: hidden;
  will-change: top,left;
  transition:200ms opacity ease-out;
  transition-delay: 100ms;
}
.c-cursor:after {
  content:"";
  width:100%;
  height:100%;
  border-radius: 50%;
  transition:200ms transform ease-out;
  pointer-events: none;
  position:absolute;
  opacity: 0;
  transform: scale(0);
}
.c-cursor.is--cursor-sound:after { background:url(../img/cursor-sound.png);background-size: contain;}
.c-cursor.is--cursor-mute:after { background:url(../img/cursor-mute.png);background-size: contain;}
.c-cursor.is--cursor-drag:after { background:url(../img/cursor-drag.png);background-size: contain;}
.c-cursor.is--cursor-plus:after { background:url(../img/cursor-plus.png);background-size: contain;}
.c-cursor.is--cursor-map:after { background:url(../img/cursor-map.png);background-size: contain;}
.c-cursor.is--cursor-hover:after { background:url(../img/cursor-black.png);background-size: contain;}
.c-cursor.is--cursor-location:after { background:url(../img/cursor-location.png);background-size: contain;}
.c-cursor.is--cursor-close:after { background:url(../img/cursor-close.png);background-size: contain;}
.c-cursor.is--cursor-pointer:after { background:#000;}

.c-cursor.is--active:after {
  opacity:1;
  transform: scale(3);
}
.c-cursor.is--cursor-pointer:after {
  transform: scale(1.3);
}
.c-cursor.is--cursor-hover.is--active {
  transform: scale(3);
  opacity:0;
}
.c-cursor.is--cursor-location.is--active:after {
  transform: scale(4);
}
.u-no-cursor {
  cursor:none;
  text-decoration: none;
}
.c-map__map div, .c-map__map img {cursor:none!important;}

@media only screen and (max-width: 768px) {
  .c-cursor {display:none !important;}
}

/* NAV */
.c-nav {
  text-decoration: none;
  color:#000;
  background:#fff;
  font-size:1.88vw;
  line-height: 1em;
  position: fixed;
  z-index:10009;
  border:1px solid #000;
  border-radius: 1.6vw;
  padding:0.35vw 0.83vw;
  transition: 250ms background, 250ms color, 1000ms left, 1000ms top, 1000ms margin;
  cursor:none;
  white-space: nowrap;
}

@media only screen and (min-width: 769px) {
  .c-nav {
    opacity:0;
  }
  .is--story .c-nav {
    opacity:1;
    left:92.5vw;
    top:1.67vw;
  }
  .is--map .c-nav {
    opacity:1;
    top:1.67vw;
    left:1.88vw;
  }
  .c-nav:hover {
    color:#fff;
    background:#000;
  }
  .c-map__close {
    display:none;
  }
}

@media only screen and (max-width: 768px) {
  .c-nav {
    top: 130%;
    left: 50%;
    font-size: 27px;
    padding: 5px 12px;
    border-radius: 24px;
    width:270px;
    margin-left:-148px;
    margin-top:-20px;
    text-align: center;
    z-index: 10000;    
  }
  .c-nav {
    top: 130%;
  }
  .is--map-popup .c-nav,
  .is--story .c-nav,    
  .is--map .c-nav {
    top: 100%;
    margin-top:-60px;    
  }
  .c-nav:active {
    color:#fff;
    background:#000;
  }
  .c-map__close {
    display:block;
    text-decoration: none;
    color:#000;
    background:#fff;
    line-height: 1em;
    position: absolute;
    z-index:10000;
    border:1px solid #000;
    transition: 250ms background, 250ms color;
    white-space: nowrap;
    top: 20px;
    left: 50%;
    font-size: 27px;
    padding: 5px 12px;
    border-radius: 24px;
    width:270px;
    margin-left:-148px;
    text-align: center;
    z-index: 10010;    
  }
  .c-map__close:active {
    color:#fff;
    background:#000;
  }
  .is--map-popup .c-map__close {
    top:75%;
    margin-top:-60px;
  }
}

/* MOBILE */
@media only screen and (min-width: 769px) {
  .c-mobile {
    display:none !important;
  }
}
@media only screen and (max-width: 768px) {
  .c-mobile {
    z-index:10011;
    position:fixed;
    width:100%;
    height:100%;
    left:0;
    top:0;
    transition: 1000ms all;
    background:#522f5d;
    color:#fff;
    text-align: center;
  }
  .c-mobile.is--hidden {
    transform:translateY(-100%);
  }
  .is--map .c-mobile,
  .is--story .c-mobile {display:none;}
  .c-mobile__text {
    margin:0 25px;
    font-size:7vw;
  }
  .c-mobile__arrow {
    display:block;
    width:20px;
    height:20px;
    position:absolute;
    bottom:25px;left:50%;
    margin-left:-10px;
    border-right:1px solid #fff;
    border-bottom:1px solid #fff;
    transform:rotate(45deg);
    
  }
  .c-mobile__svg {
    margin:0 auto 25px;
    width: 40px;
    height: auto;
  }
}

/* ZOOM */
.c-zoom {
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index: 10020;
  display:none;
  overflow:hidden;
}
.c-zoom__link {
  display:block;
}


.u-zoom-animated img {
  -webkit-transition: height 500ms linear, width 500ms linear, left 500ms linear, 500ms linear;
  -moz-transition: height 500ms linear, width 500ms linear, left 500ms linear, 500ms linear;
  -o-transition: height 500ms linear, width 500ms linear, left 500ms linear, 500ms linear;
  transition: height 500ms linear, width 500ms linear, left 500ms linear, 500ms linear;
}

@media only screen and (min-width: 769px) {
  .c-zoom img {
    position:absolute;
  }
  .c-zoom__close {
    display:none;
  }
}
@media only screen and (max-width: 768px) {
  .c-zoom {
    display: flex;
    justify-content: center;
    flex-direction: column;
    background:black;
  }
  .c-zoom img {
    width:auto !important;
    max-width:100% !important;
    max-height:100% !important;
    height:auto !important;
    left:0 !important;
    top:0 !important;
    position:relative !important;
  }
  .c-zoom__close {
    display:block;
    position:absolute;
    top:12px;
    left:12px;
    width: 32px;
    height: 32px;
  }
  .c-zoom__close:before, .c-zoom__close:after {
    position: absolute;
    left: 15px;
    content: ' ';
    height: 33px;
    width: 1px;
    background-color: #fff;
  }
  .c-zoom__close:before {
    transform: rotate(45deg);
  }
  .c-zoom__close:after {
    transform: rotate(-45deg);
  }
}
@media only screen and (min-device-width: 480px) 
                   and (max-device-width: 640px) 
                   and (orientation: landscape) {
  .c-zoom {
    display: flex;
    justify-content: center;
    flex-direction: column;
    background:black;
  }
  .c-zoom img {
    width:auto !important;
    max-width:100% !important;
    max-height:100% !important;
    height:auto !important;
    left:0 !important;
    top:0 !important;
    margin: auto;
    position:relative !important;
  }
}


@media only screen 
  and (min-width: 1024px) 
  and (max-height: 1366px) 
  and (-webkit-min-device-pixel-ratio: 1.5) {
    .c-zoom {
      display: flex;
      justify-content: center;
      flex-direction: column;
      background:black;
    }
    .c-zoom img {
      width:auto !important;
      max-width:100% !important;
      max-height:100% !important;
      height:auto !important;
      left:0 !important;
      top:0 !important;
      position:relative !important;
      object-fit:contain;
    }
    .c-zoom__close {
      display:block;
      position:absolute;
      top:12px;
      left:12px;
      width: 32px;
      height: 32px;
      background: #000;
      border-radius: 50%;
      border: 8px solid #000;
    }
    .c-zoom__close:before, .c-zoom__close:after {
      position: absolute;
      left: 15px;
      content: ' ';
      height: 33px;
      width: 1px;
      background-color: #fff;
    }
    .c-zoom__close:before {
      transform: rotate(45deg);
    }
    .c-zoom__close:after {
      transform: rotate(-45deg);
    }
}

/* INTRO */
.c-intro {
  position:fixed;
  width:100%;
  height:100%;
  left:0;
  top:0;
  z-index:10010;
}
.c-intro.is--animated {
  transition: 1000ms all;
}
.is--story .c-intro,
.is--map .c-intro {
  opacity:0;
  pointer-events: none;
}
.is--map .c-intro {
  width:100%;
}

.c-intro__title {
  transition: 500ms text-stroke, 500ms color;
  text-stroke: 2px transparent;
  -webkit-text-stroke: 2px transparent;
  color: #000;
  font-family: 'Domaine Sans Text', sans-serif;
  font-weight: normal;
  position:relative;
  z-index: 1;  
}
.c-intro__story {
  text-decoration: none;
  position:absolute;
  background:url(../img/intro__desktop_v5.jpg);
  background-size: auto 116%;
  background-position: center;
  cursor:none;
}
  
.c-intro__map {
  text-decoration: none;
  position:absolute;
  background:url(../img/map__desktop_v5.jpg);
  background-size: auto 116%;
  background-position: center;
  cursor:none;
}

.c-intro__map:after,
.c-intro__story:after {
  background:#fff;
  position:absolute;
  width:100%;
  height:100%;
  left:0;
  top:0;
  content:"";
  z-index:0;
  transition: 500ms all;
  opacity:0;
}
@media only screen and (min-width: 769px) {
  .c-intro__story {
    width:50%;
    height:100%;
    left:0;
    top:0;
  }
  .c-intro__map {
    width:50%;
    height:100%;
    left:50%;
    top:0;
  }
  .is--story .c-intro {
    width:200%;
  }
  .c-intro__title {
    font-size: 13vw;
    line-height: 1.0217em;
    letter-spacing: -0.0374em;
    margin-left: 1vw;
    opacity:0;
  }
  .c-intro:hover .c-intro__map:after,
  .c-intro:hover .c-intro__story:after {
    opacity:1;
  }
  .c-intro__map:hover:after,
  .c-intro__story:hover:after {
    opacity:0 !important;
  }
  .c-intro:hover .c-intro__title,
  .c-intro:hover .c-intro__title {
    opacity:1;
  }
  .c-intro__map:hover .c-intro__title,
  .c-intro__story:hover .c-intro__title {
    text-stroke: 2px #000;
    -webkit-text-stroke: 2px #000;
    color: transparent;
    opacity:0;
  }
}

:-ms-fullscreen,
:root .c-intro__map:hover .c-intro__title,
:root .c-intro__story:hover .c-intro__title {
  color:#fff;
  text-shadow: 1px 1px 0px #000000, 1px -1px 0px #000000, -1px 1px 0px #000000, -1px -1px 0px #000000;
}
@media only screen and (max-width: 768px) {
  .c-intro__story {
    background:url(../img/intro__mobile_v5.jpg);
    background-size: cover;
    background-position: center !important;
    width:100%;
    height:50%;
    top:0;
  }
  .c-intro__map {
    width:100%;
    height:50%;
    top:50%;
  }
  .c-intro__title {
    text-align:center;
    text-stroke: 1px black;
    -webkit-text-stroke: 1px black;
    color: #fff;
    font-size: 18vw;
    line-height: 1em;
    letter-spacing: -0.69px;
  }
  .is--story .c-intro {
    top:-100%;
    width:100%;
    height:200%;
  }
}

/* PLACES */
.c-places {
  position:fixed;
  right:0;
  top:10px;
  z-index: 10004;
  list-style: none;
  margin:0;
  padding:0;
  display:none;
}
.is--story .c-places {
  display:block;
}
.c-places__li {
  margin:8px;
  text-align: center;
  display:block;
  position:relative;
  width: 24px;
  height: 24px;
}
.c-places__link {
  cursor:none;
  z-index:2;
  text-decoration: none;
  color:#000;
  position:absolute;
  right:0;
  width:23px;
  height:23px;
  display:block;
  border:1px solid transparent;
  transition: color 200ms ease-in-out;
  overflow:hidden;
}
.c-places__share {
  position:relative;
  margin-top:12px;
}
.c-places__share-link {
  width:22px;
  height:22px;
  display:block;
  margin:8px 0;
  cursor:none;
}
.c-places__bar {
  pointer-events:none;
  z-index:1;
  position:absolute;
  border-radius: 11px; 
  background:none;
  width:22px;
  height:22px;
  right:1px;
  top:1px;
  transition: width 200ms ease-in-out;
}
.c-places__number {
  position:absolute;
  width:22px;
  height:22px;
  right:1px;
  top:1px;
}
.c-places__circle {
  position:absolute;
  width:20px;
  height:20px;
  right:1px;
  top:1px;
  border-radius: 11px; 
}
.c-places__li:hover .c-places__bar {
  background:#000;
}
.c-places__span {
  font-family: "Domaine Sans Text Regular", sans-serif;
  position:absolute;
  right:23px;
  top:-1px;
  white-space: nowrap;
  height:24px;
  padding: 0 10px;
  font-size: 13px;
  line-height: 24px;
  color:#fff;
  border-radius: 11px 0 0 11px;
  opacity:0;
  transition:opacity 200ms;
  transition-delay: 200ms;
}
.c-places__link:hover .c-places__span {
  opacity:1;
}
.c-places__link.is--current .c-places__circle  {
  border:1px solid #000;
}
.c-places__link.is--current:hover {
  border:0;
}
.c-places__link:hover {
  color:#fff;      
}
.is--map .c-places__link {
  color:#fff;
}
@media only screen and (max-width: 768px) {
  .c-places {
    display:none !important;
  }
}
/* MAP */
.c-map {
  background:#ccc;
  position:fixed;
  overflow:hidden;
  width:100%;
  height:100%;
  z-index: 10005;
}
.c-map.is--animated {
  transition: 1000ms all;
}
.c-map__map {
  height:100%;
}
.c-map__pin {
  position:absolute;
  z-index:1002;
  margin:-18px 0 0 -18px;
  width:36px;
  height:36px;
  transition: 400ms opacity, 200ms transform ease-out;
  cursor:none;
  transform:scale(0);
}
.is--map .c-map__pin {
  transform:scale(1);
}
.is--map .c-map__pin:active {
  transform:scale(1.2);
}
.c-map__pin:hover {
  z-index:1003;
}
.c-map__pin-img {
  width:36px;
  height:36px;
  display:block;
  border: 1px solid #000;
  border-radius: 50%;
}
.c-map__pin em {
  display:block;
  width: 0; 
  height: 0;
  left:18px;
  top:18px;
  position:absolute;
  transform: rotateZ(45deg);
}
.c-map__pin em b{
  top:22px;
  left:-10px;
  display:block;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid #fff;
  position:absolute;
}
.is--map-roadmap .c-map__pin em b{
  border-top: 10px solid #000;
}
.c-map__popup {
  position:absolute;
  background:#fff;
  z-index: 10010;
  overflow: -moz-scrollbars-none;
  -ms-overflow-style: none; 
  overflow-y: scroll;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  display:none;
}

.c-map__closer {
  position:absolute;
  width: 100%;
  height:100%;
  display:none;
  left:0;
  top:0;
  z-index: 10009;
}
.is--map-popup .c-map__closer {
  display:block;
}
.is--map-popup .c-map__location,
.is--map-popup .c-map__pin {
  display:none !important;
}
.c-map__popup::-webkit-scrollbar { width: 0 !important }
.c-map__scroll {
  
}
.c-map__image {
  width:100%;
  height:auto;
  display:block;
  background:#ccc;
}
.c-map__location {
  display:none;
}


@media only screen and (min-width: 769px) {
  .c-map {
    left:50%;
    top:0;
  }
  .c-map__intro {
    position:absolute;
    top:0;
    left:0;
    width: 100%;
    height: 100%;
    background:rgba(0,0,0,0.7);
    display:none;
    z-index:100;
    color:#fff;
    text-align:center;
  }
  .is--map-intro .c-map__zoom,
  .is--map-intro .c-nav,
  .is--map-intro .c-map__pin {
    display:none !important;
  }
  .is--map-intro .c-map__intro {
    display:block;
  }
  .c-map__zoom {
    z-index:99;
    position:absolute;
    right:26px;
    top:30px;
    cursor:none;
    opacity:0.6;
    transition:200ms opacity ease-out, 50ms transform ease-out;
  }
  .c-map__zoom:active {
    transform:scale(1.2);
  }
  .c-map__zoom:hover {
    opacity:1;
  }
  .c-map__zoom.is--zoom-out {
    top:69px;
  }
  .c-map__welcome {
    color:#fff;
    font-size:2.78vw;
    line-height:3.19vw;
    width:46.74vw;
    margin:0 auto 2.92vw;
    font-weight:300;
  }
  .c-map__links {
    display:inline;
    margin:0 auto;
    padding:0;
  }
  .c-map__links li {
    display:inline;
    margin:0 0.56vw;
  }
  .c-map__link {
    cursor:none;
    background:#fff;
    color:#000;
    text-decoration: none;
    font-size:1.88vw;
    border:1px solid #000;
    border-radius: 1.6vw;
    padding:0.35vw 0.83vw;
    transition: 500ms background, 500ms color;
  }
  .c-map__link:hover {
    background:#000;
    color:#fff;
  }
  .is--map .c-map {
    left:0;
  }
  .is--map .c-intro {
    left:-50%;
  }
  .is--story .c-map {
    left:100%; 
  }
  .c-map__popup {
    height:100%;
    width:50%;
    left:0;
    top:0;
    display:none;
  }
  .c-map__location {
    pointer-events:none;
    position:absolute;
    left:0;
    top:0;
    right:0;
    height:100%;
    z-index:1001;
    text-stroke: 1px black;
    -webkit-text-stroke: 1px black;
    color:#fff;
    padding:0 6vw 0 2vw;
    font-weight: 300;
    font-size:11.81vw;
    line-height:12.5vw;
    letter-spacing: -0.44vw;
  }
  .is--map-popup .c-map__popup {
    display:block;
  }
  .c-map__image {
    height: 50%;
    object-fit: cover;
  }
  .c-map__content {
    padding:2.36vw;
  }
  .c-map__content.is--without-image {
    padding:6.36vw 2.36vw 2.36vw;
  }
  .c-map__address {
    font-weight: 300;
    font-size:2.5vw;
    line-height:3.06vw;
    margin:0 0 1vw;
  }
  .c-map__text {
    font-weight: 300;
    font-size:2.5vw;
    line-height:3.06vw;
  }
}

:-ms-fullscreen,
:root .c-map__image{
  width:auto !important;
  margin:0 auto;
}
:-ms-fullscreen,
:root .c-map__location {
  color:#fff;
  text-shadow: 1px 1px 0px #000000, 1px -1px 0px #000000, -1px 1px 0px #000000, -1px -1px 0px #000000;
}
@media only screen and (max-width: 768px) {
  .c-map {
    left:0;
    top:0;
  }
  .c-map__zoom {
    display:none;
  }
  .c-map__popup {
    height:70%;
    width:100%;
    left:0;
    top:0;
    display:none;
  }
  .c-map__address {
    font-size:25px;
    line-height: 31px;
    font-weight: 300;
    margin:0 0 10px;
  }
  .c-map__content {
    padding: 50px 12px 0;
    font-size:25px;
    line-height: 31px;
  }
  .c-map__image {
    display:none;
  }
  .is--map-popup .c-map__popup {
    display:block;
  }
  .is--map .c-map {
    top:0;
  }
  .is--map .c-intro {
    left:0;
    top:-100%;
  }
  .is--story .c-map {
    top:100%; 
  }
}

/* SECTION: HEADER */
.c-header {
  padding: 9.7vw 0;
  width:80vw;
}
.c-header--background {
  width:auto;
  padding: 11.11vw 0 2.78vw;
  overflow: hidden;
  margin-right: 4.5vw;
  position:relative;
}
.c-header--columns {
  width:auto;
  padding:2.78vw 0 13.89vw;
  margin-right: 4.5vw;
  position: relative;
}
.c-header__columns {
  position:absolute;
  right:0;
  bottom:0;
  z-index: 2;
}
.c-header__column {
  float:right;
  margin: 0 0 0 2.78vw;
  width: 20vw;
}
.c-header__bg {
  width: 100%;
  position: absolute;
  top: 0;
  z-index: 1;
}
.c-header__h1 {
  font-size: 15.97vw;
  line-height: 16.32vw;
  letter-spacing: -0.6vw;
  position: relative;
  z-index:2;
}
.c-header__image {
  width:100%;
}
.c-header__description {
  padding:1vw 0 0;
  font-size:1vw;
}
@media only screen and (max-width: 768px) {
  .c-header {
    width:auto;
  }
  .c-header__description {
    padding:10px 0 0;
    font-size:14px;
  }
  .c-header__h1 {
    font-size: 60px;
    line-height: 70px;
    word-wrap: break-word;
    letter-spacing: -2.5px;
  }
  .c-header__bg,
  .c-header__columns {
    display:none;
  }
  
}

/* SECTION: CONTENT */
.c-content {
  padding: 2.78vw 0 2.78vw 25vw;
  width: 46.5vw;
  font-size:1.4vw;
  line-height: 1.8vw;
}
.c-content i,
.c-content em {
  font-style:italic;
}
.c-content a {
  text-decoration: none;
  cursor:none;
  position:relative;
  display: inline-block;
  color:#000;
}
.c-content__link {
  text-decoration: underline !important;
}
.c-content__place {
  position:absolute;
  width:18px;
  height:18px;
  border-radius: 50%;
  color:#fff;
  background: #000;
  font-size:12px;
  line-height: 18px;
  top:-5px;
  right:-5px;
  text-align:center;
}
.c-content a span {
  position:relative;
}
@media only screen and (max-width: 768px) {
  .c-content {
    font-size: 19px;
    line-height: 24px;
    width:auto;
    padding:0;
  }
}
/* SECTION: IMAGE */
.c-image {
  padding: 2.8vw 0;
  width: 80vw;
}
.c-image__img {
  max-width:100%;
}

.c-image__description {
  font-family: 'Domaine Sans Text', sans-serif;
  font-size: 1vw;
  font-weight: 300;
  padding:1vw 0 0;
}
@media only screen and (min-width: 769px) {
  .c-image__column {
    float: left;
    margin-right:3.47vw;
    padding-bottom:3.47vw;
    position:relative;
  }
  .c-image__column .c-image__img {
    height:27vw;
  }  
  .c-image__column .c-image__description {
    position:absolute;
    left:0;
    right:0;
  }
}
@media only screen and (max-width: 768px) {
  .c-image {
    width:auto;
  }
  .c-image__link {
    display:block;
  }
  .c-image__img {
    width:100%;
  }
  .c-image__description {
    font-size: 14px;
    padding:10px 0 20px;
  }
}
/* SECTION: BLOCKQUOTE */
.c-quote {
  width:80vw;
  margin:0 0 2.7vw;
}

.c-quote__blockquote {
  font-size: 3.47vw;
  line-height: 3.9vw;
}
.c-quote__author {
  font-size: 1vw;
  font-weight: 300;
  padding:1vw 0 0;
}
@media only screen and (max-width: 768px) {
  .c-quote__blockquote {
    font-size: 25px;
    line-height: 31px;
  }
  .c-quote__author {
    font-size: 14px;
    padding:10px 0;
  }
}
/* SECTION: AUDIO */
.c-audio {
  width:80vw;
  margin:0 0;
  padding: 2.78vw 0;
}
.c-audio__blockquote {
  font-size: 3.47vw;
  line-height: 3.9vw;
  position:relative;
}
.c-audio__under {
  position:absolute;
  width:100%;
  left:0;
  top:0;
  bottom:0;
  right:0;
  z-index:8;
  display:none;
}
.c-audio.is--playing .c-audio__under {
  display:block;
} 
.c-audio__blockquote .u-stroke {
  color:#fff;
}

@media only screen and (max-width: 768px) {
  .c-audio {
    width:auto;
    padding: 20px 0;
  }
  .c-audio__blockquote {
    font-size: 25px;
    line-height: 31px;
  }
  .c-audio__button {
    display: inline-block;
    box-sizing: border-box;
    width: 0;
    height: 18px;
    border-color: #fff #fff #fff #000;
    transition: 100ms all ease;
    cursor: pointer;
    border-style: solid;
    border-width: 9px 0 9px 16px;
    margin-right:8px;
    
  }
  .is--playing .c-audio__button{
    border-style: double;
    border-width: 0 0 0 16px;
  }
}

/* SECTION: PILE */
.c-pile {
  margin:0 0 4vw;  
  position:relative;
}

.c-pile__description {

}
@media only screen and (min-width: 769px) {
  .c-pile {
    height:70vw;
  }
  .c-pile__item {
    position: absolute;
    cursor: none !important;
  }
  .c-pile__img {
    max-height: 40vw;
    max-width: 40vw;
  }
  .c-pile__content {
    position:relative;
  }
  .c-pile__description {
    font-size:13px;
    padding:10px 0;
    display:none;
  }
  .c-pile__button {
    position:absolute;
    top:50%;
    left:50%;
    z-index:10;
    font-size:1.88vw;
    border-radius: 1.6vw;
    padding:0.35vw 0.83vw;
    margin:-1.6vw 0 0 -4vw;
    background:#fff;
    line-height: 1em;
    border:1px solid #000;
    pointer-events:none;
    display:none;
  }
  .c-pile__item:hover .c-pile__button,
  .c-pile__item:hover .c-pile__description {
    display:block;
  }
  
}
@media only screen and (max-width: 768px) {
  .c-pile__button {
    display:none !important;
  }
  .c-pile__item {
    position:relative !important;
    top:auto !important;
    left:auto !important;
    transform:none !important;
    width:100% !important;
  }
  .c-pile__img {
    width:100%;
    height:auto;
  }
  .c-pile__description {
    font-size:13px;
    padding:10px 0;
  }
}

/* tablet hack */
html.is--tablet .c-pile {
  height:auto !important;
  padding: 2.78vw 0 2.78vw 25vw !important;
  width: 46.5vw !important;
}
html.is--tablet .c-pile__button {
  display:none !important;
}
html.is--tablet .c-pile__item {
  position:relative !important;
  top:auto !important;
  left:auto !important;
  transform:none !important;
  width:100% !important;
}
html.is--tablet .c-pile__img {
  max-width: none !important;
  max-height: none !important;
  width:100% !important;
  height:auto !important;
}
html.is--tablet .c-pile__description {
  display: block !important;
  font-size:13px !important;
  padding:10px 0 20px !important;
}

/* SECTION: FOOTER */
.c-footer {
  border-top:1px solid #000; 
}

.c-footer__locations {
  margin:0;
  padding:0;
  list-style: none;
}
.c-footer__link.is--close { display:none;}
.c-footer__content {display:none;padding-top:1em;}
.is--expanded .c-footer__content {display:block;}

@media only screen and (min-width: 769px) {
  .c-footer {
    padding:4.1vw 0 2vw;
    margin:4.1vw 4.5vw 0 0;
  }
  .c-footer__link {
    font-size:1vw;
    cursor:none;
    line-height: 2.57vw;
  }
  .c-footer__title {
    margin:0 0 2.15vw;
    font-size:2.78vw;
    line-height: 3.19vw;
    font-weight: 300;
  }
  .c-footer__credits {
    padding:3vw 0 5vw;
  }
  .c-footer__content {
    width:80vw;
  }
  .c-footer__locations {
    -moz-column-count: 3;
    -moz-column-gap: 20px;
    -webkit-column-count: 3;
    -webkit-column-gap: 20px;
    column-count: 3;
    column-gap: 20px;
    font-size:1.39vw;
    line-height:2.57vw;
  }
  .c-footer__location {
    text-decoration: none;
    color:#000;
    cursor:none;
  }
}

@media only screen and (max-width: 768px) {
  .c-footer__locations {
    display:none;
  }
  .c-footer__credits {
    text-align:center;
    padding:40px 0;
  }
  .c-footer__title {
    display: none;
  }
}
/* ==========================================================================
   Helper classes
   ========================================================================== */
.o-centered {
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.o-screen {
  height:100vh;
  width:100vw;
}
.o-align-center {
  text-align: center;
}
.o-appear {
  opacity: 0;
  -webkit-transform: translateY(40px);
  -moz-transform: translateY(40px);
  -ms-transform: translateY(40px);
  -o-transform: translateY(40px);
  transform: translateY(40px);
  -webkit-transition-property: opacity,-webkit-transform;
  transition-property: opacity,-webkit-transform;
  -o-transition-property: opacity,-o-transform;
  -moz-transition-property: opacity,transform,-moz-transform;
  transition-property: opacity,transform;
  transition-property: opacity,transform,-webkit-transform,-moz-transform,-o-transform;
  -webkit-transition-duration: .5s;
  -moz-transition-duration: .5s;
  -o-transition-duration: .5s;
  transition-duration: .5s;
  -webkit-transition-timing-function: cubic-bezier(.455,.03,.515,.955);
  -moz-transition-timing-function: cubic-bezier(.455,.03,.515,.955);
  -o-transition-timing-function: cubic-bezier(.455,.03,.515,.955);
  transition-timing-function: cubic-bezier(.455,.03,.515,.955);
}
.is--purple .o-appear {
  opacity: 1;
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
}
.o-appear--delay-1 {-webkit-transition-delay: .1s; -moz-transition-delay: .1s; -o-transition-delay: .1s; transition-delay: .1s;}
.o-appear--delay-2 {-webkit-transition-delay: .2s; -moz-transition-delay: .2s; -o-transition-delay: .2s; transition-delay: .2s;}
.o-appear--delay-3 {-webkit-transition-delay: .3s; -moz-transition-delay: .3s; -o-transition-delay: .3s; transition-delay: .3s;}
.o-appear--delay-4 {-webkit-transition-delay: .4s; -moz-transition-delay: .4s; -o-transition-delay: .4s; transition-delay: .4s;}
.o-appear--delay-5 {-webkit-transition-delay: .5s; -moz-transition-delay: .5s; -o-transition-delay: .5s; transition-delay: .5s;}

.u-stroke {
    text-stroke: 1px black;
    -webkit-text-stroke: 1px black;
    color: transparent;
}
_:-ms-fullscreen, :root .u-stroke { 
  color:#fff;
  text-shadow: 1px 1px 0px #000000, 1px -1px 0px #000000, -1px 1px 0px #000000, -1px -1px 0px #000000;
 }
.u-stroke-2x {
  text-stroke: 2px black;
  -webkit-text-stroke: 2px black;
  color: transparent;
}
.u-transition-transform {
  transition:500ms transform ease-out;
}

@media only screen and (min-width: 769px) {
  .o-mobile {display:none !important;}
}
@media only screen and (max-width: 768px) {
  .o-desktop {display:none !important;}
}

.u-delay-0 {transition:300ms color ease-out;transition-delay: 0ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 0ms;}
.u-delay-1 {transition:300ms color ease-out;transition-delay: 50ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 50ms;}
.u-delay-2 {transition:300ms color ease-out;transition-delay: 100ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 100ms;}
.u-delay-3 {transition:300ms color ease-out;transition-delay: 150ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 150ms;}
.u-delay-4 {transition:300ms color ease-out;transition-delay: 200ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 200ms;}
.u-delay-5 {transition:300ms color ease-out;transition-delay: 250ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 250ms;}
.u-delay-6 {transition:300ms color ease-out;transition-delay: 300ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 300ms;}
.u-delay-7 {transition:300ms color ease-out;transition-delay: 350ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 350ms;}
.u-delay-8 {transition:300ms color ease-out;transition-delay: 400ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 400ms;}
.u-delay-9 {transition:300ms color ease-out;transition-delay: 450ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 450ms;}
.u-delay-10 {transition:300ms color ease-out;transition-delay: 500ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 500ms;}
.u-delay-11 {transition:300ms color ease-out;transition-delay: 550ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 550ms;}
.u-delay-12 {transition:300ms color ease-out;transition-delay: 600ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 600ms;}
.u-delay-13 {transition:300ms color ease-out;transition-delay: 650ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 650ms;}
.u-delay-14 {transition:300ms color ease-out;transition-delay: 700ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 700ms;}
.u-delay-15 {transition:300ms color ease-out;transition-delay: 750ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 750ms;}
.u-delay-16 {transition:300ms color ease-out;transition-delay: 800ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 800ms;}
.u-delay-17 {transition:300ms color ease-out;transition-delay: 850ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 850ms;}
.u-delay-18 {transition:300ms color ease-out;transition-delay: 900ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 900ms;}
.u-delay-19 {transition:300ms color ease-out;transition-delay: 950ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 950ms;}
.u-delay-20 {transition:300ms color ease-out;transition-delay: 1000ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1000ms;}
.u-delay-21 {transition:300ms color ease-out;transition-delay: 1050ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1050ms;}
.u-delay-22 {transition:300ms color ease-out;transition-delay: 1100ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1100ms;}
.u-delay-23 {transition:300ms color ease-out;transition-delay: 1150ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1150ms;}
.u-delay-24 {transition:300ms color ease-out;transition-delay: 1200ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1200ms;}
.u-delay-25 {transition:300ms color ease-out;transition-delay: 1250ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1250ms;}
.u-delay-26 {transition:300ms color ease-out;transition-delay: 1300ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1300ms;}
.u-delay-27 {transition:300ms color ease-out;transition-delay: 1350ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1350ms;}
.u-delay-28 {transition:300ms color ease-out;transition-delay: 1400ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1400ms;}
.u-delay-29 {transition:300ms color ease-out;transition-delay: 1450ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1450ms;}
.u-delay-30 {transition:300ms color ease-out;transition-delay: 1500ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1500ms;}
.u-delay-31 {transition:300ms color ease-out;transition-delay: 1550ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1550ms;}
.u-delay-32 {transition:300ms color ease-out;transition-delay: 1600ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1600ms;}
.u-delay-33 {transition:300ms color ease-out;transition-delay: 1650ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1650ms;}
.u-delay-34 {transition:300ms color ease-out;transition-delay: 1700ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1700ms;}
.u-delay-35 {transition:300ms color ease-out;transition-delay: 1750ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1750ms;}
.u-delay-36 {transition:300ms color ease-out;transition-delay: 1800ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1800ms;}
.u-delay-37 {transition:300ms color ease-out;transition-delay: 1850ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1850ms;}
.u-delay-38 {transition:300ms color ease-out;transition-delay: 1900ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1900ms;}
.u-delay-39 {transition:300ms color ease-out;transition-delay: 1950ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 1950ms;}
.u-delay-40 {transition:300ms color ease-out;transition-delay: 2000ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 2000ms;}
.u-delay-41 {transition:300ms color ease-out;transition-delay: 2050ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 2050ms;}
.u-delay-42 {transition:300ms color ease-out;transition-delay: 2100ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 2100ms;}
.u-delay-43 {transition:300ms color ease-out;transition-delay: 2150ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 2150ms;}
.u-delay-44 {transition:300ms color ease-out;transition-delay: 2200ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 2200ms;}
.u-delay-45 {transition:300ms color ease-out;transition-delay: 2250ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 2250ms;}
.u-delay-46 {transition:300ms color ease-out;transition-delay: 2300ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 2300ms;}
.u-delay-47 {transition:300ms color ease-out;transition-delay: 2350ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 2350ms;}
.u-delay-48 {transition:300ms color ease-out;transition-delay: 2400ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 2400ms;}
.u-delay-49 {transition:300ms color ease-out;transition-delay: 2450ms;-webkit-transition:300ms color ease-out;-webkit-transition-delay: 2450ms;}

.u-coloranimation.is--fired span{color:#000;}

/*
 * Hide visually and from screen readers
 */

.hidden {
  display: none !important;
}

/*
* Hide only visually, but have it available for screen readers:
* https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
*
* 1. For long content, line feeds are not interpreted as spaces and small width
*    causes content to wrap 1 word per line:
*    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
*/

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
  /* 1 */
}

/*
* Extends the .sr-only class to allow the element
* to be focusable when navigated to via the keyboard:
* https://www.drupal.org/node/897638
*/

.sr-only.focusable:active,
.sr-only.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  white-space: inherit;
  width: auto;
}

/*
* Hide visually and from screen readers, but maintain layout
*/

.invisible {
  visibility: hidden;
}

/*
* Clearfix: contain floats
*
* For modern browsers
* 1. The space content is one way to avoid an Opera bug when the
*    `contenteditable` attribute is included anywhere else in the document.
*    Otherwise it causes space to appear at the top and bottom of elements
*    that receive the `clearfix` class.
* 2. The use of `table` rather than `block` is only necessary if using
*    `:before` to contain the top-margins of child elements.
*/

.clearfix:before,
.clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}

.clearfix:after {
  clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */
}

@media print,
  (-webkit-min-device-pixel-ratio: 1.25),
  (min-resolution: 1.25dppx),
  (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster */
    -webkit-box-shadow: none !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) ")";
  }
  /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  /*
     * Printing Tables:
     * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
     */
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}

