@import url(https://fonts.googleapis.com/css?family=Josefin+Sans:300,400,600|Open+Sans:400,400i,700);@charset "UTF-8";
html {
  box-sizing: border-box; }

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

/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/**
     * 1. Set default font family to sans-serif.
     * 2. Prevent iOS and IE text size adjust after device orientation change,
     *    without disabling user zoom.
     */
html {
  font-size: 100%;
  line-height: 1.5em;
  font-family: "Open Sans", Helvetica, sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
     * Remove default margin.
     */
body {
  margin: 0; }

/* HTML5 display definitions
       ========================================================================== */
/**
     * Correct `block` display not defined for any HTML5 element in IE 8/9.
     * Correct `block` display not defined for `details` or `summary` in IE 10/11
     * and Firefox.
     * Correct `block` display not defined for `main` in IE 11.
     */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

/**
     * 1. Correct `inline-block` display not defined in IE 8/9.
     * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
     */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
     * Prevent modern browsers from displaying `audio` without controls.
     * Remove excess height in iOS 5 devices.
     */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
       * Address `[hidden]` styling not present in IE 8/9/10.
       */
[hidden] {
  display: none; }

/**
     * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
     */
template {
  display: none; }

/* Links
       ========================================================================== */
/**
       * Remove the gray background color from active links in IE 10.
       */
a {
  background-color: transparent; }

/**
     * Improve readability of focused elements when they are also in an
     * active/hover state.
     */
a:active,
a:hover {
  outline: 0; }

/* Text-level semantics
       ========================================================================== */
/**
     * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
     */
abbr[title] {
  border-bottom: 1px dotted; }

/**
     * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
     */
b,
strong {
  font-weight: bold; }

/**
     * Address styling not present in Safari and Chrome.
     */
dfn {
  font-style: italic; }

/**
     * Address variable `h1` font-size and margin within `section` and `article`
     * contexts in Firefox 4+, Safari, and Chrome.
     */
h1 {
  font-size: 2em;
  line-height: 1.5em;
  /* Set 1 unit of vertical rhythm on the top and bottom margins. */
  margin: 0.75em 0; }

h2 {
  font-size: 1.2em;
  line-height: 1.25em;
  margin: 1.25em 0; }

h3 {
  font-size: 1.17em;
  line-height: 1.28205em;
  margin: 1.28205em 0; }

h4 {
  font-size: 1em;
  line-height: 1.5em;
  margin: 1.5em 0; }

h5 {
  font-size: 0.83em;
  line-height: 1.80723em;
  margin: 1.80723em 0; }

h6 {
  font-size: 0.67em;
  line-height: 2.23881em;
  margin: 2.23881em 0; }

/**
       * Address styling not present in IE 8/9.
       */
mark {
  background: #ff0;
  color: #000; }

/**
     * Address inconsistent and variable font size in all browsers.
     */
small {
  font-size: 80%; }

/**
     * Prevent `sub` and `sup` affecting `line-height` in all browsers.
     */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
       ========================================================================== */
/**
       * Remove border when inside `a` element in IE 8/9/10.
       */
img {
  border: 0; }

/**
     * Correct overflow not hidden in IE 9/10/11.
     */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
       ========================================================================== */
/**
       * Address margins set differently in IE 6/7.
       */
dl,
menu,
ol,
ul {
  margin: 1.5em 0; }

/**
       * Turn off margins on nested lists.
       */
ol ol,
ol ul,
ul ol,
ul ul {
  margin: 0; }

dd {
  margin: 0 0 0 40px; }

/**
       * Address paddings set differently in IE 6/7.
       */
menu,
ol,
ul {
  padding: 0 0 0 40px; }

/**
       * Set 1 unit of vertical rhythm on the top and bottom margin.
       */
blockquote {
  margin: 1.5em 40px; }

/**
       * Address margin not present in IE 8/9 and Safari.
       */
figure {
  margin: 1.5em 40px; }

/**
     * Address differences between Firefox and other browsers.
     */
hr {
  box-sizing: content-box;
  height: 0; }

/**
       * Set 1 unit of vertical rhythm on the top and bottom margin.
       */
p,
pre {
  margin: 1.5em 0; }

/**
     * Contain overflow in all browsers.
     */
pre {
  overflow: auto; }

/**
     * Address odd `em`-unit font size rendering in all browsers.
     */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
       ========================================================================== */
/**
     * Known limitation: by default, Chrome and Safari on OS X allow very limited
     * styling of `select`, unless a `border` property is set.
     */
/**
     * 1. Correct color not being inherited.
     *    Known issue: affects color of disabled elements.
     * 2. Correct font properties not being inherited.
     * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
     * 4. Address `font-family` inconsistency between `textarea` and other form in IE 7
     * 5. Improve appearance and consistency with IE 6/7.
     */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
     * Address `overflow` set to `hidden` in IE 8/9/10/11.
     */
button {
  overflow: visible; }

/**
     * Address inconsistent `text-transform` inheritance for `button` and `select`.
     * All other form control elements do not inherit `text-transform` values.
     * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
     * Correct `select` style inheritance in Firefox.
     */
button,
select {
  text-transform: none; }

/**
     * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
     *    and `video` controls.
     * 2. Correct inability to style clickable `input` types in iOS.
     * 3. Improve usability and consistency of cursor style between image-type
     *    `input` and others.
     * 4. Remove inner spacing in IE 7 without affecting normal text inputs.
     *    Known issue: inner spacing remains in IE 6.
     */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
     * Re-set default cursor for disabled elements.
     */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
     * Remove inner padding and border in Firefox 4+.
     */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
     * Address Firefox 4+ setting `line-height` on `input` using `!important` in
     * the UA stylesheet.
     */
input {
  line-height: normal; }

/**
       * It's recommended that you don't attempt to style these elements.
       * Firefox's implementation doesn't respect box-sizing, padding, or width.
       *
       * 1. Address box sizing set to `content-box` in IE 8/9/10.
       * 2. Remove excess padding in IE 8/9/10.
       * 3. Remove excess padding in IE 7.
       *    Known issue: excess padding remains in IE 6.
       */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
     * Fix the cursor style for Chrome's increment/decrement buttons. For certain
     * `font-size` values of the `input`, it causes the cursor style of the
     * decrement button to change from `default` to `text`.
     */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
     * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
     * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
     */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  box-sizing: content-box;
  /* 2 */
  /**
       * Remove inner padding and search cancel button in Safari and Chrome on OS X.
       * Safari (but not Chrome) clips the cancel button when the search input has
       * padding (and `textfield` appearance).
       */ }
  input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none; }

/**
     * Define consistent border, margin, and padding.
     */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
     * 1. Correct `color` not being inherited in IE 8/9/10/11.
     * 2. Remove padding so people aren't caught out if they zero out fieldsets.
     * 3. Correct alignment displayed oddly in IE 6/7.
     */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
     * Remove default vertical scrollbar in IE 8/9/10/11.
     */
textarea {
  overflow: auto; }

/**
     * Don't inherit the `font-weight` (applied by a rule above).
     * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
     */
optgroup {
  font-weight: bold; }

/* Tables
       ========================================================================== */
/**
     * Remove most spacing between table cells.
     */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

:root {
  background-color: #000;
  color: #fff; }

body {
  background-color: #FFF;
  color: #000; }

h2, legend {
  color: #1E4274;
  font-family: "Josefin Sans", "Open Sans", Helvetica, sans-serif;
  font-weight: bold;
  text-transform: uppercase; }

h3 {
  font-family: "Josefin Sans", "Open Sans", Helvetica, sans-serif;
  font-weight: normal; }

blockquote {
  font-style: italic;
  margin: 0 85px; }

nav ul, nav ol {
  padding-left: 0; }
  nav ul li, nav ol li {
    display: block; }

:link, :visited, strong {
  color: #1E4274; }

.leader {
  font-weight: bold; }

.bio-portrait {
  display: block;
  height: 168px; }

.bio-portrait__content {
  outline: 1px solid #ededed;
  overflow: hidden;
  position: relative;
  height: 100%;
  width: 100%; }

.bio-portrait__name {
  background-color: #1E4274;
  bottom: 0;
  color: #FFF;
  font-family: "Josefin Sans", "Open Sans", Helvetica, sans-serif;
  font-weight: bold;
  padding: 0 0.2em;
  position: absolute;
  text-transform: uppercase;
  z-index: 1; }
  a:hover .bio-portrait__name {
    text-decoration: underline; }

.bio-portrait__photo {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%; }

.blog-post {
  padding: 24px 0; }
  .blog-post:nth-child(even) {
    background-color: #ededed;
    color: #000; }

.blog-post__content {
  max-width: 990px;
  margin-left: auto;
  margin-right: auto; }
  .blog-post__content::after {
    clear: both;
    content: "";
    display: table; }

.blog-post__head {
  display: flex;
  align-items: baseline; }
  .blog-post__head > * > * {
    display: inline-block; }

.blog-post__body {
  display: flex;
  align-items: flex-start; }

.blog-post__title, .blog-post__tile {
  flex: 0 0 auto;
  width: 310px;
  margin-right: 30px; }

.blog-post__meta {
  flex: 1 0 0px;
  font-size: 0.8125em;
  line-height: 1.84615em; }

.blog-post__tile > img {
  display: block;
  max-width: 100%; }

.blog-post__text > :first-child {
  margin-top: 0; }

.blog-post__text > :last-child {
  margin-bottom: 0; }

.cards {
  overflow: hidden; }

.cards__title {
  max-width: 990px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0; }
  .cards__title::after {
    clear: both;
    content: "";
    display: table; }

.cards__content {
  margin: 0;
  padding: 0;
  max-width: 990px;
  margin-left: auto;
  margin-right: auto; }
  .cards__content::after {
    clear: both;
    content: "";
    display: table; }

.cards__card, .cards__card--quote, .cards__card--blogpost,
.cards__card--workshop,
.cards__card--show, .cards__card--blank {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 31.31313%;
  position: relative;
  margin-bottom: 24px;
  margin-top: 24px; }
  .cards__card:last-child, .cards__card--quote:last-child, .cards__card--blogpost:last-child,
  .cards__card--workshop:last-child,
  .cards__card--show:last-child, .cards__card--blank:last-child {
    margin-right: 0; }
  .cards__card:nth-child(3n), .cards__card--quote:nth-child(3n), .cards__card--blogpost:nth-child(3n),
  .cards__card--workshop:nth-child(3n),
  .cards__card--show:nth-child(3n), .cards__card--blank:nth-child(3n) {
    margin-right: 0; }
  .cards__card:nth-child(3n+1), .cards__card--quote:nth-child(3n+1), .cards__card--blogpost:nth-child(3n+1),
  .cards__card--workshop:nth-child(3n+1),
  .cards__card--show:nth-child(3n+1), .cards__card--blank:nth-child(3n+1) {
    clear: left; }

.cards__card--quote {
  position: relative;
  margin-top: 0;
  padding-top: 24px; }
  blockquote.cards__card--quote {
    font-style: normal;
    margin-left: 0; }
  .cards__card--quote::before {
    display: block;
    content: '';
    background: url(/assets/img/2016/card_strings.png) center/284px no-repeat;
    height: 63px;
    position: absolute;
    top: -24px;
    width: 100%;
    z-index: 1; }
  .cards__card--quote .cards__card-decorator {
    display: flex;
    align-items: center;
    height: 226px;
    margin: -3px;
    padding: 33px; }
  blockquote.cards__card--quote:nth-of-type(odd) .cards__card-decorator {
    color: #000;
    background-color: #ededed; }
  blockquote.cards__card--quote:nth-of-type(even) .cards__card-decorator {
    color: #fff;
    background-color: #1E4274; }
  .cards__card--quote .cards__card-content {
    font-family: "Josefin Sans", "Open Sans", Helvetica, sans-serif;
    font-size: 19px; }
  .cards__card--quote q {
    quotes: "\201C" "\201D"; }
    .cards__card--quote q::before {
      content: open-quote; }
    .cards__card--quote q::after {
      content: close-quote; }
  .cards__card--quote cite {
    font-style: normal;
    white-space: nowrap; }

.cards__card--blogpost::before,
.cards__card--workshop::before,
.cards__card--show::before {
  display: block;
  position: absolute;
  background: url(/assets/img/2016/pushpin.svg) no-repeat, url(/assets/img/2016/pushpin.svg) no-repeat;
  background-position: left top, right 10px bottom 6px;
  box-sizing: content-box;
  content: '';
  height: 48px;
  margin: -5px;
  padding: 5px;
  top: 0;
  width: 100%;
  z-index: 1; }

.cards__card--blogpost:nth-child(3n)::before, .cards__card--blogpost:nth-child(5n)::before,
.cards__card--workshop:nth-child(3n)::before,
.cards__card--workshop:nth-child(5n)::before,
.cards__card--show:nth-child(3n)::before,
.cards__card--show:nth-child(5n)::before {
  background-position: left 10px top 33%, right top; }

.cards__card--blogpost:nth-child(7n+4)::before,
.cards__card--workshop:nth-child(7n+4)::before,
.cards__card--show:nth-child(7n+4)::before {
  background-position: center top, -100% 0; }

.cards__card-title {
  background-color: #000;
  color: #fff;
  font-family: "Josefin Sans", "Open Sans", Helvetica, sans-serif;
  font-size: 1.25em;
  line-height: 1.2em;
  min-height: 42px;
  padding-top: 12px;
  text-align: center;
  text-transform: uppercase; }

.cards__card-image {
  display: block; }
  .cards__card-image img {
    display: block;
    height: 168px;
    line-height: 168px;
    object-fit: cover;
    font-family: 'object-fit: cover;';
    text-align: center;
    width: 100%; }

.hero {
  display: block;
  position: relative;
  overflow: hidden;
  z-index: 0; }
  .hero:link, .hero:visited {
    text-decoration: none; }

.hero__content {
  max-width: 990px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: flex-start;
  box-sizing: border-box;
  flex-direction: column;
  justify-content: flex-end;
  padding-bottom: 24px;
  position: relative;
  height: 312px;
  text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.125), 1px 2px 5px rgba(0, 0, 0, 0.125), 2px 1px 5px rgba(0, 0, 0, 0.125), 2px 2px 5px rgba(0, 0, 0, 0.125);
  z-index: 2; }
  .hero__content::after {
    clear: both;
    content: "";
    display: table; }

.hero__backdrop {
  position: absolute;
  background-color: #000;
  background-size: cover;
  filter: blur(20px);
  height: calc(100% + 80px);
  left: -40px;
  top: -40px;
  width: calc(100% + 80px); }

.hero__title {
  color: #fff;
  font: 300 40px/1.2 "Josefin Sans", "Open Sans", Helvetica, sans-serif;
  margin: 0; }

.hero__subtitle, .hero__title:only-child {
  display: block;
  color: #f3ff00;
  font: 400 60px/1.2 "Josefin Sans", "Open Sans", Helvetica, sans-serif; }
  .hero__subtitle :link, .hero__subtitle :visited, .hero__title:only-child :link, .hero__title:only-child :visited {
    color: inherit;
    text-decoration: none; }
    .hero__subtitle :link:hover, .hero__subtitle :visited:hover, .hero__title:only-child :link:hover, .hero__title:only-child :visited:hover {
      color: #d5d514; }

.hero__img {
  object-fit: cover;
  font-family: 'object-fit: cover;';
  z-index: -1; }
  .hero__content + .hero__img {
    display: block;
    height: auto;
    margin-top: -312px;
    min-height: 312px;
    position: relative;
    width: 100%; }
    .hero__content + .hero__img.-position-x-left {
      object-position: left center;
      font-family: 'object-fit: cover; object-position: left center;'; }
    .hero__content + .hero__img.-position-x-center {
      object-position: center center;
      font-family: 'object-fit: cover; object-position: center center;'; }
    .hero__content + .hero__img.-position-x-right {
      object-position: right center;
      font-family: 'object-fit: cover; object-position: right center;'; }
  .hero__content .hero__img {
    position: absolute;
    height: 100%;
    left: 0;
    margin-top: 0;
    min-height: 0;
    top: 0;
    width: 100%; }

.newsletter {
  display: flex;
  align-items: center;
  justify-content: space-between; }
  .newsletter label {
    font-family: "Josefin Sans", "Open Sans", Helvetica, sans-serif;
    font-size: 2.5em;
    line-height: 1.2em;
    margin: 1.2em 0;
    margin-right: 1em; }
  .newsletter input[type=email] {
    border: 1px solid #6a6a67;
    border-radius: 3px;
    flex: 1 0 auto;
    height: 3.75em;
    padding: 0 1em; }
  .newsletter input[type=submit] {
    background-color: #1E4274;
    color: #fff;
    border: 0;
    border-radius: 5px;
    font-weight: bold;
    height: 3.75em;
    margin-left: 1em;
    padding: 0 2.5em; }

.random-quote {
  display: block;
  cursor: pointer;
  position: relative; }
  .random-quote button {
    position: absolute;
    background: transparent;
    border: none;
    box-sizing: content-box;
    color: inherit;
    height: 20px;
    margin: -0.2em 0 0;
    opacity: 0.2;
    overflow: hidden;
    padding: 0.2em;
    transition: opacity 0.5s ease;
    width: 20px; }
    .random-quote button > svg {
      display: block;
      height: 20px;
      width: 20px;
      fill: currentColor; }
    .random-quote button.random-quote__button--animating {
      opacity: 1; }
      .random-quote button.random-quote__button--animating > svg {
        animation: button-animation 1s ease-out; }

@keyframes button-animation {
  to {
    transform: rotate(360deg); } }
  .random-quote:hover button, .random-quote button:focus {
    opacity: 1;
    outline: none;
    transition: opacity 0s; }

.random-quote__quote, .random-quote__quote--transition-out {
  display: inline;
  transition: opacity 0.5s linear; }

.random-quote__quote--transition-out {
  opacity: 0;
  transition: opacity 0.2s linear; }

.site-footer {
  background: #000;
  color: #fff;
  overflow: hidden;
  padding: 24px 0; }

.site-footer__content {
  max-width: 990px;
  margin-left: auto;
  margin-right: auto; }
  .site-footer__content::after {
    clear: both;
    content: "";
    display: table; }

.site-footer__small-print {
  font-size: 0.875em;
  line-height: 1.71429em; }
  .site-footer__small-print p {
    text-align: center; }
    .site-footer__small-print p:last-child {
      margin-bottom: 0; }
  .site-footer__small-print :link, .site-footer__small-print :visited {
    color: inherit;
    text-decoration: none; }
    .site-footer__small-print :link:hover, .site-footer__small-print :visited:hover {
      text-decoration: underline; }

.site-footer__social-media {
  display: flex;
  justify-content: center;
  margin: 12px 0; }
  .site-footer__social-media > :not(:first-child) {
    margin-left: 30px; }
  .site-footer__social-media :link, .site-footer__social-media :visited {
    display: inline-block;
    color: inherit; }
  .site-footer__social-media svg {
    display: block;
    fill: currentColor;
    height: 24px;
    width: 24px; }

.site-footer__associates {
  display: flex;
  justify-content: space-between;
  align-items: flex-end; }
  .site-footer__associates > *:not(:first-child) {
    margin-left: 30px; }

.site-footer__sponsor {
  font-size: 0.875em;
  line-height: 1.71429em;
  display: flex;
  flex-direction: column;
  align-items: center; }

.site-footer__sponsor-logo {
  margin: 0; }

.site-header {
  background: #1E4274;
  border-bottom: 8px solid #fff;
  color: #fff;
  overflow: hidden; }
  .site-header svg [fill="#000000"] {
    fill: currentColor; }

.site-header__content {
  max-width: 990px;
  margin-left: auto;
  margin-right: auto; }
  .site-header__content::after {
    clear: both;
    content: "";
    display: table; }

.site-header__logomark {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 48.48485%;
  display: flex;
  align-items: center;
  justify-content: flex-start; }
  .site-header__logomark:last-child {
    margin-right: 0; }
  .site-header__logomark :link, .site-header__logomark :visited {
    display: block;
    color: inherit;
    text-decoration: none; }

.site-header__logo {
  flex: 0 0 auto;
  margin-right: 20px; }
  .site-header__logo svg {
    display: block; }

.site-header__title {
  display: inline-block;
  font-family: "Josefin Sans", "Open Sans", Helvetica, sans-serif;
  font-size: 20px;
  font-weight: 300;
  line-height: 1.1; }

.site-header__nav--primary, .site-header__nav--secondary {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 48.48485%;
  margin-right: 0; }
  .site-header__nav--primary:last-child, .site-header__nav--secondary:last-child {
    margin-right: 0; }

.site-header__nav--primary {
  margin-top: -20px; }

.site-header__nav--secondary {
  margin-top: 10px; }

.site-header__nav-list {
  margin: 0;
  display: flex;
  justify-content: flex-end; }

.site-header__nav-item {
  color: #000;
  font-family: "Josefin Sans", "Open Sans", Helvetica, sans-serif;
  text-align: center; }
  .site-header__nav-item > a[href] {
    display: block;
    position: relative;
    color: inherit;
    text-decoration: none; }
    .site-header__nav-item > a[href]:hover {
      text-decoration: underline; }
    .site-header__nav--primary .site-header__nav-item > a[href] {
      padding-top: 36px;
      padding-left: 10px;
      padding-right: 10px;
      padding-bottom: 10px; }
  .site-header__nav--primary .site-header__nav-item {
    font-weight: bold;
    font-size: 1.125em;
    line-height: 1.33333em; }
    .site-header__nav--primary .site-header__nav-item > a[href] {
      display: flex;
      align-items: center;
      justify-content: center; }
    .site-header__nav--primary .site-header__nav-item:nth-child(odd) {
      margin-left: -4px;
      transform: rotate(-5deg); }
      .site-header__nav--primary .site-header__nav-item:nth-child(odd) > a[href] {
        background: url(/assets/img/2016/nav_shows.png) no-repeat;
        background-size: 115px 220px;
        height: 110px;
        width: 115px; }
        .site-header__nav--primary .site-header__nav-item:nth-child(odd) > a[href]:hover {
          background-position: 0 -110px; }
    .site-header__nav--primary .site-header__nav-item:nth-child(even) {
      margin-left: 4px;
      transform: translate(0, 5px) rotate(5deg); }
      .site-header__nav--primary .site-header__nav-item:nth-child(even) > a[href] {
        background: url(/assets/img/2016/nav_workshops.png) no-repeat;
        background-size: 139px 220px;
        height: 110px;
        width: 139px; }
        .site-header__nav--primary .site-header__nav-item:nth-child(even) > a[href]:hover {
          background-position: 0 -110px; }
  .site-header__nav--secondary .site-header__nav-item {
    white-space: nowrap;
    font-weight: 300;
    text-transform: uppercase; }
    .site-header__nav--secondary .site-header__nav-item > a[href] {
      color: #fff;
      padding: 13px 18px 11px; }
    .site-header__nav--secondary .site-header__nav-item:last-child > a[href] {
      margin-right: -18px; }
  .site-header__nav-item.-active .site-header__nav-item-status {
    position: absolute;
    background: url(/assets/img/2016/nav_pointer.svg) no-repeat;
    background-size: 38px 32px;
    left: -15px;
    height: 0;
    overflow: hidden;
    padding-top: 32px;
    width: 38px; }
    .site-header__nav--primary .site-header__nav-item.-active .site-header__nav-item-status {
      top: 36px;
      transform: rotate(20deg); }
    .site-header__nav--secondary .site-header__nav-item.-active .site-header__nav-item-status {
      top: -12px;
      transform: rotate(45deg); }

.show-details {
  background-color: #ededed;
  color: #000;
  margin: 24px 0;
  overflow: hidden;
  padding: 24px 0; }

.show-details__details {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 31.31313%; }
  .show-details__details:last-child {
    margin-right: 0; }

.show-details__link > :link, .show-details__link > :visited {
  display: inline-flex;
  align-items: center;
  background-color: #1E4274;
  border-radius: 3px;
  color: #fff;
  height: 3em;
  font-weight: bold;
  height: 3em;
  padding: 0 2.5em; }

.show-details__location {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 65.65657%;
  margin-right: 0; }
  .show-details__location:last-child {
    margin-right: 0; }

.show-details__map {
  display: flex;
  align-items: center;
  background: #B5D0E6;
  height: 312px;
  justify-content: center;
  margin-bottom: 24px; }

.show-seasons {
  display: block; }

.show-seasons__list {
  max-width: 990px;
  margin-left: auto;
  margin-right: auto;
  text-align: right; }
  .show-seasons__list::after {
    clear: both;
    content: "";
    display: table; }

.show-seasons__list-item {
  display: inline; }
  .show-seasons__list-item:not(:first-child) {
    margin-left: 0.5em; }
  .show-seasons__list-item :link, .show-seasons__list-item :visited {
    text-decoration: none; }
    .show-seasons__list-item :link:hover, .show-seasons__list-item :visited:hover {
      text-decoration: underline; }
  .show-seasons__list-item.-active :link, .show-seasons__list-item.-active :visited {
    text-decoration: underline; }

.tabset {
  overflow: hidden; }

.tabset__tab-content:not(.-active) {
  display: none; }

.tabset__tabs {
  display: block; }

.tabset__tabs-content {
  max-width: 990px;
  margin-left: auto;
  margin-right: auto;
  text-align: right; }
  .tabset__tabs-content::after {
    clear: both;
    content: "";
    display: table; }

.tabset__tab {
  display: inline; }
  .tabset__tab:not(:first-child) {
    margin-left: 0.5em; }
  .tabset__tab :link, .tabset__tab :visited {
    text-decoration: none; }
    .tabset__tab :link:hover, .tabset__tab :visited:hover {
      text-decoration: underline; }
  .tabset__tab.-active {
    display: none; }

.text, .text--feature, .text--pride, .text--call-to-action {
  padding: 24px 0; }
  .text + .text, .text--feature + .text, .text--pride + .text, .text--call-to-action + .text, .text + .text--feature, .text--feature + .text--feature, .text--pride + .text--feature, .text--call-to-action + .text--feature, .text + .text--pride, .text--feature + .text--pride, .text--pride + .text--pride, .text--call-to-action + .text--pride, .text + .text--call-to-action, .text--feature + .text--call-to-action, .text--pride + .text--call-to-action, .text--call-to-action + .text--call-to-action {
    border-top: 8px solid #fff; }

.text--feature, .text--pride, .text--call-to-action {
  background-color: #ededed;
  color: #000;
  overflow: hidden;
  padding: 0; }
  .text--feature + .text, .text--pride + .text, .text--call-to-action + .text, .text--feature + .text--feature, .text--pride + .text--feature, .text--call-to-action + .text--feature, .text--feature + .text--pride, .text--pride + .text--pride, .text--call-to-action + .text--pride, .text--feature + .text--call-to-action, .text--pride + .text--call-to-action, .text--call-to-action + .text--call-to-action {
    padding-top: 0; }

.text--pride p {
  display: flex;
  align-items: center; }

.text--pride img {
  margin-right: 30px;
  flex: 0 0 auto; }

.text--call-to-action .text__content, .text--call-to-action .show-details__content, .text--call-to-action .workshop-details__content {
  display: flex;
  align-items: center;
  justify-content: space-between; }
  .text--call-to-action .text__content p, .text--call-to-action .show-details__content p, .text--call-to-action .workshop-details__content p {
    flex: 1 1 auto;
    margin-right: 30px; }

.text__content, .show-details__content, .workshop-details__content {
  max-width: 990px;
  margin-left: auto;
  margin-right: auto; }
  .text__content::after, .show-details__content::after, .workshop-details__content::after {
    clear: both;
    content: "";
    display: table; }

.text__link {
  flex: 0 0 auto; }
  .text__link > :link, .text__link > :visited {
    display: flex;
    align-items: center;
    background-color: #1E4274;
    border-radius: 3px;
    color: #fff;
    height: 3em;
    font-weight: bold;
    padding: 0 2.5em; }

.text__nav {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 14.14141%;
  box-sizing: content-box; }
  .text__nav:last-child {
    margin-right: 0; }

.text__nav-content {
  display: flex;
  align-items: flex-end;
  border-right: 3px solid #1E4274;
  flex-direction: column;
  margin: 0;
  overflow: hidden;
  padding: 24px 0;
  margin-left: -100em;
  padding-left: 100em; }

.text__nav-item {
  font-family: "Josefin Sans", "Open Sans", Helvetica, sans-serif;
  margin-bottom: 5px;
  transform-origin: right;
  white-space: nowrap; }
  .text__nav-item:nth-child(2n+1) {
    transform: rotate(2deg); }
  .text__nav-item:nth-child(3n+2) {
    transform: rotate(-1deg); }
  .text__nav-item:nth-child(5n+3) {
    transform: rotate(3deg); }
  .text__nav-item:nth-child(7n+5) {
    transform: rotate(-5deg); }
  .text__nav-item:nth-child(11n+7) {
    transform: rotate(-4deg); }
  .text__nav-item :link, .text__nav-item :visited {
    display: inline-block;
    background-color: #f3ff00;
    box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);
    color: #000;
    margin-right: -5px;
    padding: 11px 22px 9px 18px; }
    .text__nav-item :link:not(:hover), .text__nav-item :visited:not(:hover) {
      text-decoration: none; }
  .text__nav-item.-active :link, .text__nav-item.-active :visited {
    background-color: #1E4274;
    color: white; }

.text__text {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 48.48485%; }
  .text__text:last-child {
    margin-right: 0; }
  .text__text:first-child {
    float: left;
    display: block;
    margin-right: 3.0303%;
    width: 65.65657%; }
    .text__text:first-child:last-child {
      margin-right: 0; }
  .text__text:last-child {
    float: left;
    display: block;
    margin-right: 3.0303%;
    width: 82.82828%;
    margin-right: 0; }
    .text__text:last-child:last-child {
      margin-right: 0; }
  .text__text:only-child {
    float: left;
    display: block;
    margin-right: 3.0303%;
    width: 100%; }
    .text__text:only-child:last-child {
      margin-right: 0; }

.text__meta {
  font-size: 0.8125em;
  line-height: 1.84615em; }

.text__sibling-nav {
  display: flex; }

.text__sibling-nav-link {
  width: 50%; }
  .text__sibling-nav-link:last-child {
    text-align: right; }

.text__image {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 31.31313%;
  margin-right: 0;
  padding-top: 72px; }
  .text__image:last-child {
    margin-right: 0; }
  .text__image > img {
    max-width: 100%; }

.text__subtitle {
  margin-top: -24px; }

.text__leader {
  font-weight: bold; }

.text__portraits {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: -24px;
  margin-right: -31px; }
  .text__portraits > * {
    margin-bottom: 24px;
    margin-right: 30px;
    width: 140px; }

.workshop-card {
  font-size: 0.875em;
  position: relative;
  background: currentColor;
  border: 1px solid;
  border-top: none;
  box-sizing: border-box;
  color: #ededed;
  line-height: 1.3;
  overflow: hidden;
  min-height: 168px; }
  .workshop-list:nth-child(even) .workshop-card {
    background-color: white; }

.workshop-card__photo {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 140px; }
  .workshop-card.-soldout .workshop-card__photo {
    filter: grayscale(100%); }

.workshop-card__text {
  color: #000;
  margin-left: 140px;
  padding: 12px 15px;
  width: 170px; }

.workshop-card__flag {
  position: absolute;
  left: 0;
  bottom: 12px;
  margin: 0;
  width: 140px;
  font-size: 1.42857em;
  line-height: 1.2em;
  background-color: #f3ff00;
  font-family: "Josefin Sans", "Open Sans", Helvetica, sans-serif;
  font-weight: bold;
  letter-spacing: -0.02em;
  text-align: center;
  text-transform: uppercase;
  padding: 0.25em 0.5em 0;
  transform: skew(0, -5deg); }

.workshop-card__instructor {
  font-size: 1.07143em;
  margin: 0;
  font-weight: bold; }

.workshop-card__details {
  margin: 12px 0; }

.workshop-card__links {
  margin-top: 0;
  line-height: 24px; }
  .workshop-card__links :link, .workshop-card__links :visited {
    display: block;
    position: relative;
    text-indent: 0.7em; }
    .workshop-card__links :link::before, .workshop-card__links :visited::before {
      position: absolute;
      content: '\203A';
      color: #000;
      font-weight: bold;
      left: 0;
      text-indent: 0; }

.workshop-details {
  background-color: #ededed;
  color: #000;
  margin: 24px 0;
  overflow: hidden;
  padding: 24px 0; }

.workshop-details__details {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 31.31313%; }
  .workshop-details__details:last-child {
    margin-right: 0; }

.workshop-details__location {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 65.65657%;
  margin-right: 0; }
  .workshop-details__location:last-child {
    margin-right: 0; }

.workshop-details__map {
  display: flex;
  align-items: center;
  background: #B5D0E6;
  height: 312px;
  justify-content: center;
  margin-bottom: 24px; }

.workshop-instructor__bio {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 65.65657%; }
  .workshop-instructor__bio:last-child {
    margin-right: 0; }

.workshop-instructor__photo {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 31.31313%;
  margin-right: 0; }
  .workshop-instructor__photo:last-child {
    margin-right: 0; }
  .workshop-instructor__photo > div {
    position: relative;
    margin: 48px 0; }
    .workshop-instructor__photo > div::before {
      display: block;
      position: absolute;
      background: url(/assets/img/2016/pushpin.svg) center no-repeat;
      content: '';
      height: 22px;
      top: -8px;
      width: 100%;
      z-index: 1; }
  .workshop-instructor__photo img {
    display: block;
    border: 1px solid #abaca8;
    height: 336px;
    object-fit: cover;
    object-position: center;
    transform: rotate(3deg);
    transform-origin: top;
    width: 310px; }
    @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
      .workshop-instructor__photo img {
        border-width: 0.5px; } }

.workshop-list {
  overflow: hidden;
  background-color: white;
  color: #ededed; }
  .workshop-list:nth-child(even) {
    background-color: #ededed;
    color: white; }

.workshop-list__content {
  max-width: 990px;
  margin-left: auto;
  margin-right: auto; }
  .workshop-list__content::after {
    clear: both;
    content: "";
    display: table; }

.workshop-list__title {
  color: #000; }

.workshop-list__list {
  margin: 0;
  padding: 0;
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 100%;
  margin-right: 0; }
  .workshop-list__list:last-child {
    margin-right: 0; }

.workshop-list__workshop {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 31.31313%;
  position: relative;
  margin-bottom: 24px;
  transform-origin: top;
  border: 1px solid; }
  .workshop-list__workshop:last-child {
    margin-right: 0; }
  .workshop-list__workshop:nth-child(3n) {
    margin-right: 0; }
  .workshop-list__workshop:nth-child(3n+1) {
    clear: left; }
  .workshop-list:nth-child(even) .workshop-list__workshop {
    border: none; }
  .workshop-list__workshop::before {
    display: block;
    position: absolute;
    background: url(/assets/img/2016/pushpin.svg) center no-repeat;
    content: '';
    height: 22px;
    top: -8px;
    width: 100%;
    z-index: 1; }

.workshop-list__no-data {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 65.65657%;
  color: #000;
  min-height: 240px; }
  .workshop-list__no-data:last-child {
    margin-right: 0; }

.workshop-menu {
  max-width: 990px;
  margin-left: auto;
  margin-right: auto;
  position: relative; }
  .workshop-menu::after {
    clear: both;
    content: "";
    display: table; }

.workshop-menu__content {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 31.31313%;
  position: absolute;
  margin: 36px 0 0;
  top: 0;
  right: 0; }
  .workshop-menu__content:last-child {
    margin-right: 0; }

.workshop-menu__item {
  position: relative;
  background-color: #1E4274;
  color: #fff;
  text-align: center; }
  .workshop-menu__item:nth-child(even)::before {
    transform: scale(-1, 1); }
  .workshop-menu__item:nth-child(1) {
    z-index: 5; }
  .workshop-menu__item:nth-child(2) {
    z-index: 4; }
  .workshop-menu__item:nth-child(3) {
    z-index: 3; }
  .workshop-menu__item:nth-child(4) {
    z-index: 2; }
  .workshop-menu__item:nth-child(5) {
    z-index: 1; }
  .workshop-menu__item + .workshop-menu__item {
    margin-top: 24px; }
  .workshop-menu__item::before {
    display: block;
    content: '';
    background: url(/assets/img/2016/card_strings.png) center/284px no-repeat;
    height: 63px;
    position: absolute;
    top: -48px;
    width: 100%;
    z-index: 1; }
  .workshop-menu__item :link, .workshop-menu__item :visited {
    display: flex;
    color: inherit;
    text-decoration: none;
    align-items: center;
    justify-content: center;
    min-height: 48px; }
    .workshop-menu__item :link:hover, .workshop-menu__item :link:focus, .workshop-menu__item :visited:hover, .workshop-menu__item :visited:focus {
      text-decoration: underline; }

form.form {
  margin-bottom: 24px; }

form .loginLegend, form .loginFPLegend {
  color: #1E4274;
  font-size: 20px;
  line-height: 1.2;
  margin: 0;
  padding: 0 0 24px; }

form .loginLoginFieldset, form .loginFPFieldset {
  border: none;
  padding: 0; }
  form .loginLoginFieldset p, form .loginFPFieldset p {
    margin: 24px 0 0; }

form .loginLoginFieldset {
  margin: 0; }

form .loginUsernameLabel, form .loginPasswordLabel, form .loginFPUsernameLabel, form .loginFPEmailLabel {
  display: block;
  margin-bottom: 24px;
  position: relative;
  width: 25em; }
  form .loginUsernameLabel input, form .loginPasswordLabel input, form .loginFPUsernameLabel input, form .loginFPEmailLabel input {
    margin: 0;
    position: absolute;
    right: 0;
    top: 0; }

form .updateProfileFormField, form .signupFormField {
  display: block;
  margin-bottom: 24px;
  position: relative;
  width: 30em; }
  form .updateProfileFormField input, form .signupFormField input {
    margin: 0;
    position: absolute;
    right: 0;
    top: 0; }

form .loginLoginButton, form .loginFPButton {
  display: block;
  text-align: right;
  width: 25em; }

form .updateProfileButtons, form .signupButtons {
  display: block;
  text-align: right;
  width: 30em; }

form .error {
  display: block;
  line-height: 20px;
  margin: 0;
  padding: 0;
  font-weight: normal; }

.text .spf_buttons, .text--feature .spf_buttons, .text--pride .spf_buttons, .text--call-to-action .spf_buttons {
  margin: 0; }

.workshopbookingform #payment-errors ul {
  margin-left: 8.58586%;
  float: left;
  display: block;
  margin-right: 4.08163%;
  width: 100%;
  margin-right: 0; }
  .workshopbookingform #payment-errors ul:last-child {
    margin-right: 0; }

.workshopbookingform fieldset {
  border: none;
  margin-bottom: 24px;
  padding: 0; }

.workshopbookingform label {
  font-weight: bold; }

.workshopbookingform dt {
  font-weight: bold; }

.workshopbookingform ul, .workshopbookingform ol {
  padding: 0; }

.workshopbookingform .payment__price label {
  display: block;
  font-weight: normal; }

.workshopbookingform .payment__price p {
  margin-top: 24px; }

.workshopbookingform .payment__address label, .workshopbookingform .payment__card label {
  text-align: right; }

.workshopbookingform .payment__address input, .workshopbookingform .payment__address select, .workshopbookingform .payment__card input, .workshopbookingform .payment__card select {
  box-sizing: border-box;
  margin: 0; }

.workshopbookingform [for^='address-'], .workshopbookingform [for^='cc-'] {
  clear: left;
  float: left;
  display: block;
  margin-right: 4.08163%;
  width: 19.04762%; }
  .workshopbookingform [for^='address-']:last-child, .workshopbookingform [for^='cc-']:last-child {
    margin-right: 0; }

.workshopbookingform [for='address-state'],
.workshopbookingform [for='address-postcode'],
.workshopbookingform [for='cc-expiry-year'] {
  clear: none; }

.workshopbookingform [for='cc-expiry-year'] {
  float: left;
  display: block;
  margin-right: 4.08163%;
  width: 7.48299%; }
  .workshopbookingform [for='cc-expiry-year']:last-child {
    margin-right: 0; }

.workshopbookingform [for='cc-cvc'].after {
  clear: none;
  float: left;
  display: block;
  margin-right: 4.08163%;
  width: 53.7415%;
  margin-right: 0;
  text-align: left;
  font-weight: normal; }
  .workshopbookingform [for='cc-cvc'].after:last-child {
    margin-right: 0; }

.workshopbookingform [id^='address-line'], .workshopbookingform #cc-number, .workshopbookingform #cc-name {
  float: left;
  display: block;
  margin-right: 4.08163%;
  width: 76.87075%;
  margin-right: 0; }
  .workshopbookingform [id^='address-line']:last-child, .workshopbookingform #cc-number:last-child, .workshopbookingform #cc-name:last-child {
    margin-right: 0; }

.workshopbookingform #address-city,
.workshopbookingform #address-country {
  float: left;
  display: block;
  margin-right: 4.08163%;
  width: 30.61224%; }
  .workshopbookingform #address-city:last-child,
  .workshopbookingform #address-country:last-child {
    margin-right: 0; }

.workshopbookingform #address-state,
.workshopbookingform #address-postcode {
  float: left;
  display: block;
  margin-right: 4.08163%;
  width: 19.04762%;
  margin-right: 0; }
  .workshopbookingform #address-state:last-child,
  .workshopbookingform #address-postcode:last-child {
    margin-right: 0; }

.workshopbookingform #cc-expiry-month,
.workshopbookingform #cc-expiry-year {
  float: left;
  display: block;
  margin-right: 4.08163%;
  width: 19.04762%; }
  .workshopbookingform #cc-expiry-month:last-child,
  .workshopbookingform #cc-expiry-year:last-child {
    margin-right: 0; }

.workshopbookingform #cc-cvc {
  float: left;
  display: block;
  margin-right: 4.08163%;
  width: 19.04762%; }
  .workshopbookingform #cc-cvc:last-child {
    margin-right: 0; }

table.workshops, table.enrolments {
  border-collapse: collapse; }
  table.workshops tr, table.enrolments tr {
    vertical-align: top; }
  table.workshops tbody tr:nth-child(even), table.enrolments tbody tr:nth-child(even) {
    background-color: rgba(181, 208, 230, 0.66); }
  table.workshops td, table.workshops th, table.enrolments td, table.enrolments th {
    background-color: transparent;
    border-left: 1px solid #B5D0E6;
    padding: 0.4em 1em 0.2em;
    text-align: left;
    white-space: nowrap; }
  table.workshops tbody, table.enrolments tbody {
    border-top: 1px solid #B5D0E6; }
  table.workshops td.venue, table.enrolments td.venue {
    white-space: normal; }
  table.workshops td.action, table.workshops td.name, table.enrolments td.action, table.enrolments td.name {
    border-left: none; }

table.enrolments td.checkbox, table.enrolments th.checkbox {
  padding: 0; }

table.workshops td.action {
  padding-left: 0;
  padding-right: 0; }

dl.workshopdetails {
  float: left;
  margin: 0;
  width: 50%; }
  dl.workshopdetails dt {
    clear: left;
    float: left;
    width: 6em; }
  dl.workshopdetails dd {
    margin-left: 6em; }

div.workshopdates {
  float: left;
  margin-left: 17%;
  width: 33%; }
  div.workshopdates dl {
    margin: 0; }
  div.workshopdates dd {
    margin: 1em 0;
    padding: 0; }
  div.workshopdates ol, div.workshopdates li {
    display: block;
    margin: 0;
    padding: 0; }

dl.bankdetails dt {
  clear: left;
  float: left;
  width: 12em; }

.workshopbookingform .payment {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 65.65657%; }
  .workshopbookingform .payment:last-child {
    margin-right: 0; }

.workshopbookingform .workshopdetails {
  float: left;
  display: block;
  margin-right: 3.0303%;
  width: 31.31313%;
  margin-right: 0; }
  .workshopbookingform .workshopdetails:last-child {
    margin-right: 0; }

.workshopbookingform .workshopdetails__details dt {
  float: left;
  display: block;
  margin-right: 9.67742%;
  width: 17.74194%; }
  .workshopbookingform .workshopdetails__details dt:last-child {
    margin-right: 0; }

.workshopbookingform .workshopdetails__details dd {
  margin: 0;
  float: left;
  display: block;
  margin-right: 9.67742%;
  width: 72.58065%;
  margin-right: 0; }
  .workshopbookingform .workshopdetails__details dd:last-child {
    margin-right: 0; }

.workshopbookingform .workshopdetails__details dd + dd {
  margin-left: 27.41935%; }

/*# sourceMappingURL=im.bundle.css.map*/