@charset "UTF-8";
/*
	Theme Name: Civilization 2017
	Description: WORK / STUDIO / EVENTS
	Author: Civilization
	Author URI: http://builtbycivilization.com
*/
*, *:after, *:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

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

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

html {
  overflow-y: scroll;
}

ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
}

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

th {
  font-weight: bold;
  vertical-align: bottom;
}

td {
  font-weight: normal;
  vertical-align: top;
}

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

input, select {
  vertical-align: middle;
}

pre {
  white-space: pre;
  /* CSS2 */
  white-space: pre-wrap;
  /* CSS 2.1 */
  white-space: pre-line;
  /* CSS 3 (and 2.1 as well, actually) */
  word-wrap: break-word;
  /* IE */
}

input[type=radio] {
  vertical-align: text-bottom;
}

input[type=checkbox] {
  vertical-align: bottom;
  *vertical-align: baseline;
}

.ie6 input {
  vertical-align: text-bottom;
}

select, input, textarea {
  font: 99% sans-serif;
  outline: 0;
  overflow: auto;
}

table {
  font-size: inherit;
  font: 100%;
}

small {
  font-size: 85%;
}

strong, th {
  font-weight: bold;
}

td, td img {
  vertical-align: top;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

pre, code, kbd, samp {
  font-family: monospace, sans-serif;
}

.clickable, label,
input[type=button],
input[type=submit],
button, input, select, textarea {
  margin: 0;
}

button {
  padding: 0;
  width: auto;
  overflow: visible;
  border: 0;
  background: transparent;
}

select {
  -webkit-appearance: none;
}

.ie7 img {
  -ms-interpolation-mode: bicubic;
}

@font-face {
  font-family: "GillSansMT";
  src: url("f/GillSansMT.eot?#iefix") format("embedded-opentype"), url("f/GillSansMT.woff2") format("woff2"), url("f/GillSansMT.ttf") format("truetype"), url("f/GillSansMT.svgGill#GillSansMT") format("svg");
}
@font-face {
  font-family: "GillSansSemiBold";
  src: url("f/GillSansSemiBold.eot?#iefix") format("embedded-opentype"), url("f/GillSansSemiBold.woff2") format("woff2"), url("f/GillSansSemiBold.ttf") format("truetype"), url("f/GillSansSemiBold.svg#GillSansSemiBold") format("svg");
}
@font-face {
  font-family: "GillSansMT-Bold";
  src: url("f/GillSansMT-Bold.eot?#iefix") format("embedded-opentype"), url("f/GillSansMT-Bold.woff2") format("woff2"), url("f/GillSansMT-Bold.ttf") format("truetype"), url("f/GillSansMT-Bold.svg#GillSansMT-Bold") format("svg");
}
@font-face {
  font-family: "GillSansMT-Italic";
  src: url("f/GillSansMT-Italic.eot?#iefix") format("embedded-opentype"), url("f/GillSansMT-Italic.woff2") format("woff2"), url("f/GillSansMT-Italic.ttf") format("truetype"), url("f/GillSansMT-Italic.svg#GillSansMT-Italic") format("svg");
}
@font-face {
  font-family: "GillSansStd-Light";
  src: url("f/GillSansStd-Light.eot?#iefix") format("embedded-opentype"), url("f/GillSansStd-Light.woff2") format("woff2"), url("f/GillSansStd-Light.ttf") format("truetype"), url("f/GillSansStd-Light.svg#GillSansStd-Light") format("svg");
}
@font-face {
  font-family: "GillSansStd-LightItalic";
  src: url("f/GillSansStd-LightItalic.eot?#iefix") format("embedded-opentype"), url("f/GillSansStd-LightItalic.woff2") format("woff2"), url("f/GillSansStd-LightItalic.ttf") format("truetype"), url("f/GillSansStd-LightItalic.svg#GillSansStd-LightItalic") format("svg");
}
@font-face {
  font-family: "LarishNeue";
  src: url("f/LarishNeue.eot?#iefix") format("embedded-opentype"), url("f/LarishNeue.woff2") format("woff2"), url("f/LarishNeue.ttf") format("truetype"), url("f/LarishNeue.svg#LarishNeue") format("svg");
}
body {
  font-family: "GillSansMT", "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, sans-serif;
  font-weight: normal;
  font-style: normal;
}

.selectize-control .selectize-dropdown-content div, .selectize-control .selectize-input :-ms-input-placeholder, .selectize-control .selectize-input ::-moz-placeholder, .selectize-control .selectize-input :-moz-placeholder, .selectize-control .selectize-input ::-webkit-input-placeholder, .selectize-control .selectize-input, nav.settings-menu select, h1, h2, h3, menu nav {
  font-family: "GillSansSemiBold";
  font-weight: normal;
  font-style: normal;
}

dl dt, .button, .info-toggles button, .top-bar label,
.top-bar button, .home-grid .home-title h2, strong, h5, h4 {
  font-family: "GillSansMT-Bold";
  font-weight: normal;
  font-style: normal;
}

.project-grid .grid-item .caption, .project-intro .admin-edit, em {
  font-family: "GillSansMT-Italic";
  font-weight: normal;
  font-style: normal;
}

.simple-grid .grid-item p:not(.link), .info-content p, .info-content ul, .logo-grid .grid-item p:not(.link) {
  font-family: "GillSansStd-Light";
  font-weight: normal;
  font-style: normal;
}

.simple-grid .grid-item p:not(.link) em, .info-content p em, .info-content ul em, .logo-grid .grid-item p:not(.link) em {
  font-family: "GillSansStd-LightItalic";
  font-weight: normal;
  font-style: normal;
}

q {
  font-family: "LarishNeue", serif;
  font-weight: normal;
  font-style: normal;
}

.top-bar label.active,
.top-bar button.active, nav.settings-menu label, nav.settings-menu, body {
  cursor: url(c/default-white.png) 4 0, default;
  cursor: -webkit-image-set(url(c/default-white.png) 1x, url(c/default-white2x.png) 2x) 4 0, default;
}

dl dt::after, section.calendar .grid-item .toggle, .signup-modal input[type=submit], .modal-close, .work-grid .categories, .home-grid .home-title p, .motion-toggle .toggle, .selectize-control .selectize-dropdown-content div, .selectize-control .selectize-input, nav.settings-menu select, button, a {
  cursor: url(c/pointer.png) 2 0, pointer;
  cursor: -webkit-image-set(url(c/pointer.png) 1x, url(c/pointer2x.png) 2x) 2 0, pointer;
}

h3, h4, h5, q, blockquote,
.half p, .half li,
.text p, .text li, p {
  cursor: url(c/text.png) -8 0, text;
  cursor: -webkit-image-set(url(c/text.png) 1x, url(c/text2x.png) 2x) -8 0, text;
}

.modal.timeout-modal q, .modal.timeout-modal, .info-toggles.active button.open, body.menu-open header .menu-toggle {
  cursor: url(c/close.png) 6 0, pointer;
  cursor: -webkit-image-set(url(c/close.png) 1x, url(c/close2x.png) 2x) 6 0, pointer;
}

.home-grid .home-text, header .home-link:not(.ready), header .menu-toggle {
  cursor: url(c/menu.png) 6 0, pointer;
  cursor: -webkit-image-set(url(c/menu.png) 1x, url(c/menu2x.png) 2x) 6 0, pointer;
}

.slideshow button.slick-prev {
  cursor: url(c/left.png) 2 -4, w-resize;
  cursor: -webkit-image-set(url(c/left.png) 1x, url(c/left2x.png) 2x) 2 -4, w-resize;
}

.slideshow button.slick-next {
  cursor: url(c/right.png) 2 -4, e-resize;
  cursor: -webkit-image-set(url(c/right.png) 1x, url(c/right2x.png) 2x) 2 -4, e-resize;
}

::-webkit-input-placeholder {
  color: #a69b9e;
  -webkit-transition: all 0.25s;
}

:-moz-placeholder {
  /* Firefox 18- */
  color: #a69b9e;
  -moz-transition: all 0.25s;
}

::-moz-placeholder {
  /* Firefox 19+ */
  color: #a69b9e;
  -moz-transition: all 0.25s;
}

:-ms-input-placeholder {
  color: #231F20;
  overflow: hidden;
  transition: all 0.25s;
}

::selection {
  background: #231F20;
  color: #fff;
  text-shadow: none;
}

::-moz-selection {
  background: #231F20;
  color: #fff;
  text-shadow: none;
}

:-webkit-autofill {
  -webkit-text-fill-color: #231F20;
  -webkit-box-shadow: 0 0 0 1000px #fff inset;
}
:-webkit-autofill::selection {
  -webkit-text-fill-color: #fff;
}

:-moz-autofill {
  /* Firefox 18- */
  -moz-text-fill-color: #231F20;
  -moz-box-shadow: 0 0 0 1000px #fff inset;
}
:-moz-autofill::-moz-selection {
  -webkit-text-fill-color: #fff;
}

::-moz-autofill {
  /* Firefox 19+ */
  -moz-text-fill-color: #231F20;
  -moz-box-shadow: 0 0 0 1000px #fff inset;
}
::-moz-autofill::-moz-selection {
  -moz-text-fill-color: #fff;
}

html {
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: none;
  -moz-osx-font-smoothing: grayscale;
  /* fixes FF over-bolding */
  font-size: 56.25%;
  /* 9px reset */
  position: relative;
  background-color: #fff;
  color: #231F20;
  width: 100%;
  height: 100%;
}
@media only screen and (min-width: 450px) {
  html {
    font-size: 62.5%;
    /* 10px reset */
  }
}

body {
  width: 100%;
  min-height: 100%;
  font-size: 1.4rem;
  line-height: calc(18/15);
  background-color: #fff;
  overflow-x: hidden;
  /*
  	max-width: 1366px;
  	margin: 0 auto;
  	 -webkit-filter: drop-shadow(-1vw 1vw 0.4vw rgba($black, 0.35));
  			 filter: drop-shadow(-1vw 1vw 0.4vw rgba($black, 0.35));
  */
}
body:not(.pause-animations) body {
  will-change: background-color;
  -webkit-transition: background-color 0.375s ease-in-out;
  -moz-transition: background-color 0.375s ease-in-out;
  -o-transition: background-color 0.375s ease-in-out;
  transition: background-color 0.375s ease-in-out;
}
@media only screen and (min-width: 769px) {
  body {
    font-size: calc(1.1rem + 0.25vw);
  }
}
body.modal-open {
  height: 100%;
  height: 100vh;
  overflow-y: hidden;
}

a {
  color: #231F20;
  /*
  	&:hover {
  		color: $litegray;
  	}
  */
}

h1 {
  font-size: 2.8rem;
  font-size: calc(2rem + 1vw);
  line-height: 1;
}

h2 {
  font-size: 2.2rem;
}

h3 {
  font-size: 1.8rem;
}

h4 {
  font-size: 1.4rem;
}

h5 {
  font-size: 1.1rem;
}

h6 {
  font-size: 1.2rem;
  font-weight: 400;
}

q {
  font-size: 2.4rem;
  font-size: calc(2rem + 1vw);
}
q.quote {
  quotes: "“" "”" "‘" "’";
}
q.quote::before {
  content: open-quote;
  margin-left: -0.375em;
}
q.quote::after {
  content: close-quote;
  margin-left: -0.125em;
}
q.quote::before, q.quote::after,
q.quote p {
  display: inline;
}
q + cite {
  display: block;
  font-size: 1.8rem;
  margin-top: 1em;
  font-style: normal;
}
q + cite::before {
  content: "— ";
}
q + cite span {
  display: block;
  margin-top: 1rem;
  text-transform: uppercase;
  font-size: 1.2rem;
}
@media only screen and (min-width: 600px) {
  q + cite span {
    margin-top: 2rem;
    font-size: 1.6rem;
  }
}

@media only screen and (min-width: 769px) {
  h2, q {
    font-size: calc(2.4rem + 1vw);
  }

  h3 {
    font-size: 2.4rem;
  }

  h4 {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 1024px) {
  h1 {
    font-size: calc(3.6rem + 1.25vw);
  }

  q {
    font-size: calc(3.6rem + 1vmin);
  }
  q + cite {
    font-size: 2.4rem;
  }
}
/*
i {
	position: relative;
	background-color: $cream;
	&::after {
	    content: '';
	    position: absolute;
	    width: 100%;
	    height: 100%;
	    top: 0;
	    left: 0;
	    @include transition(all, 0.375s);
	}
	img {
		display: block;
		@include mix-blend(multiply);
	}
}
*/
h3 + ul,
h3 + .client-list,
h4 + p,
h3 + p,
h5 + p,
p + p,
p + ul,
ul + p {
  margin-top: 1rem;
}
@media only screen and (min-width: 1024px) {
  h3 + ul,
h3 + .client-list,
h4 + p,
h3 + p,
h5 + p,
p + p,
p + ul,
ul + p {
    margin-top: 1.8rem;
  }
}

p.view:before {
  content: "— ";
}

.hidden {
  display: none;
}

video {
  background: transparent url(i/chevron-squiggle.gif) 50% 50% no-repeat;
  -webkit-background-size: 7rem 2rem;
  -moz-background-size: 7rem 2rem;
  -o-background-size: 7rem 2rem;
  background-size: 7rem 2rem;
}

[data-video], .lazyload {
  background-color: rgba(35, 31, 32, 0.15);
}

.wrap {
  z-index: 0;
}

header {
  z-index: 7;
}

.top-bar,
menu {
  z-index: 4;
}

.top-bar.settings-menu {
  z-index: 6;
}

.modal {
  z-index: 5;
}

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 2.5rem;
  overflow: auto;
  text-align: center;
  letter-spacing: -0.31em;
  text-rendering: optimizeLegibility;
}
body:not(.pause-animations) header {
  will-change: auto;
  -webkit-transition: all 0.375s ease-in-out;
  -moz-transition: all 0.375s ease-in-out;
  -o-transition: all 0.375s ease-in-out;
  transition: all 0.375s ease-in-out;
}
header::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  border-bottom: 2px solid #231F20;
}
body:not(.pause-animations) header::before {
  will-change: auto;
  -webkit-transition: all 0.375s ease-in-out;
  -moz-transition: all 0.375s ease-in-out;
  -o-transition: all 0.375s ease-in-out;
  transition: all 0.375s ease-in-out;
}
header h1 {
  display: none;
}
header .menu-toggle {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
header .home-link {
  letter-spacing: normal;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
  *display: inline;
  height: 4rem;
  overflow: hidden;
  position: relative;
  z-index: 1;
}
header .logo {
  display: block;
  margin: 0 auto;
  height: 4rem;
}
header .logo svg {
  display: block;
  margin: 0 auto;
  fill: #231F20;
  width: 14.4rem;
  height: 4rem;
}
body:not(.pause-animations) header .logo svg {
  will-change: auto;
  -webkit-transition: all 0.375s ease-in-out;
  -moz-transition: all 0.375s ease-in-out;
  -o-transition: all 0.375s ease-in-out;
  transition: all 0.375s ease-in-out;
}
header .logo svg .c {
  opacity: 0;
}
body:not(.pause-animations) header .logo svg .c {
  will-change: auto;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}
body:not(.pause-animations) header .logo svg .c {
  -webkit-transition-delay: 0s;
  -moz-transition-delay: 0s;
  -o-transition-delay: 0s;
  transition-delay: 0s;
}
header .settings-toggle {
  position: absolute;
  top: 0;
  right: 0;
  padding: 2.5rem;
  height: 100%;
  z-index: 0;
}
header .settings-toggle svg {
  display: block;
  width: 2.4rem;
  height: 2.4rem;
  fill: transparent !important;
  stroke: #231F20;
  stroke-width: 1.25px;
}
body:not(.pause-animations) header .settings-toggle svg {
  will-change: auto;
  -webkit-transition: all 0.375s ease-in-out;
  -moz-transition: all 0.375s ease-in-out;
  -o-transition: all 0.375s ease-in-out;
  transition: all 0.375s ease-in-out;
}
header .settings-toggle:focus:not(:active) svg {
  fill: #231F20 !important;
}
@media only screen and (min-width: 640px) {
  header {
    /*
    		&::before {
    			height: 28rem;
    			border-top-width: 14rem;
    			@include transform(translateY(-14rem));
    		}
    		.modal-close {
    			@include transform(translateY(-14rem));
    		}
    */
  }
  header .home-link,
header .logo,
header svg {
    height: 4rem;
  }
}

body.loading header .logo {
  width: 16rem;
  background: url(i/chevron-squiggle.gif) 50% 50% no-repeat;
  -webkit-background-size: 14rem 4rem;
  -moz-background-size: 14rem 4rem;
  -o-background-size: 14rem 4rem;
  background-size: 14rem 4rem;
}
body.loading header .logo svg {
  display: none;
}

menu {
  position: fixed;
  width: 100%;
  height: 100%;
  -webkit-transform: translateY(-100vh) translate3d(0, 0, 0);
  -moz-transform: translateY(-100vh) translate3d(0, 0, 0);
  -ms-transform: translateY(-100vh) translate3d(0, 0, 0);
  -o-transform: translateY(-100vh) translate3d(0, 0, 0);
  transform: translateY(-100vh) translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
body:not(.pause-animations) menu {
  will-change: auto;
  -webkit-transition: all 0.375s ease-in;
  -moz-transition: all 0.375s ease-in;
  -o-transition: all 0.375s ease-in;
  transition: all 0.375s ease-in;
}
menu:not(.visible) {
  visibility: hidden;
}
menu a {
  display: block;
  color: #231F20;
  background-color: #cde4d9;
}
menu a:focus:not(:active) {
  box-shadow: inset 0 0 0 2px #006cdf;
}
menu a:hover {
  color: #231F20;
  background-color: #fff;
}
menu nav {
  position: relative;
  padding-top: 9.3rem;
  background-color: #fff;
  z-index: 0;
  width: 100%;
}
menu nav li {
  text-align: center;
}
menu nav li + li {
  border: solid #231F20;
  border-width: 2px 0 0 0;
}
menu nav a {
  font-size: 3.6rem;
}
@media only screen and (min-width: 769px) {
  menu nav ul {
    display: flex;
  }
  menu nav li {
    display: inline-block;
    width: 33.33333%;
  }
  menu nav li + li {
    border-width: 0 0 0 2px !important;
  }
  menu nav a {
    font-size: calc(3.6rem + 2vw);
    line-height: 33.33333vw;
  }
}
menu footer {
  position: relative;
  -webkit-transform: translateY(-10vh) translate3d(0, 0, 0);
  -moz-transform: translateY(-10vh) translate3d(0, 0, 0);
  -ms-transform: translateY(-10vh) translate3d(0, 0, 0);
  -o-transform: translateY(-10vh) translate3d(0, 0, 0);
  transform: translateY(-10vh) translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
body:not(.pause-animations) menu footer {
  will-change: auto;
  -webkit-transition: all 0.5s ease-in;
  -moz-transition: all 0.5s ease-in;
  -o-transition: all 0.5s ease-in;
  transition: all 0.5s ease-in;
}

body.menu-open header .logo svg .c {
  opacity: 1;
}
body:not(.pause-animations) body.menu-open header .logo svg .c {
  -webkit-transition-delay: 0.25s;
  -moz-transition-delay: 0.25s;
  -o-transition-delay: 0.25s;
  transition-delay: 0.25s;
}
body.menu-open menu {
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
body:not(.pause-animations) body.menu-open menu {
  will-change: auto;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
body.menu-open menu footer {
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
body:not(.pause-animations) body.menu-open menu footer {
  will-change: auto;
  -webkit-transition: all 0.75s ease-out;
  -moz-transition: all 0.75s ease-out;
  -o-transition: all 0.75s ease-out;
  transition: all 0.75s ease-out;
}

body.first-load nav.settings-menu {
  display: none;
}
nav.settings-menu label, nav.settings-menu select {
  font-size: 1.4rem;
}
nav.settings-menu label {
  flex: 1;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  /* Safari 7.0+ */
  justify-content: center;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-align-items: center;
  /* Safari 7.0+ */
  align-items: center;
  -webkit-box-shadow: 0 -2px 0 #231F20;
  -moz-box-shadow: 0 -2px 0 #231F20;
  box-shadow: 0 -2px 0 #231F20;
  -webkit-appearance: none;
  border-radius: 0;
  height: 4.8rem;
}
@media only screen and (min-width: 769px) {
  nav.settings-menu label {
    font-size: 1.8rem;
    height: 7.4rem;
  }
}
nav.settings-menu label span {
  padding-right: 1.8rem;
}
nav.settings-menu select {
  background: url(i/arrow-down.svg) calc(100% - 0.8rem) 50% no-repeat;
  background-size: auto 0.8rem;
  padding: 0.4rem 2.4rem 0.4rem 0.8rem;
  height: 2.4rem;
  line-height: 1.6rem;
  border-radius: 1.2rem;
  -webkit-box-shadow: 0 0 0 1.5px #231F20;
  -moz-box-shadow: 0 0 0 1.5px #231F20;
  box-shadow: 0 0 0 1.5px #231F20;
}
nav.settings-menu select:hover, nav.settings-menu select:focus:not(:active) {
  background-color: #cde4d9;
}
@media only screen and (max-width: 500px) {
  nav.settings-menu .translate-select > span {
    display: none;
  }
}

body:not(.settings-open) nav.settings-menu {
  -webkit-transform: translate3d(0, -110%, 0);
  -moz-transform: translate3d(0, -110%, 0);
  -ms-transform: translate3d(0, -110%, 0);
  -o-transform: translate3d(0, -110%, 0);
  transform: translate3d(0, -110%, 0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}

body.settings-open header .settings-toggle svg {
  stroke: #231F20 !important;
  -webkit-transform: rotate(-60deg);
  -moz-transform: rotate(-60deg);
  -ms-transform: rotate(-60deg);
  -o-transform: rotate(-60deg);
  transform: rotate(-60deg);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
body.settings-open .top-bar.work-toggle {
  -webkit-transform: translate3d(0, -100%, 0);
  -moz-transform: translate3d(0, -100%, 0);
  -ms-transform: translate3d(0, -100%, 0);
  -o-transform: translate3d(0, -100%, 0);
  transform: translate3d(0, -100%, 0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}

.selectize-control {
  position: relative;
  width: calc(100% - 2.4rem) !important;
  max-width: 12em !important;
  text-align: left;
}
.selectize-control .selectize-input {
  position: relative;
  z-index: 1;
  display: block;
  text-decoration: none;
  white-space: nowrap;
  padding: 0.4rem 1.2rem;
  height: 2.4rem;
  border-radius: 1.2rem;
  -webkit-box-shadow: 0 0 0 1.5px #231F20;
  -moz-box-shadow: 0 0 0 1.5px #231F20;
  box-shadow: 0 0 0 1.5px #231F20;
  line-height: 1.6rem;
}
.selectize-control .selectize-input:hover, .selectize-control .selectize-input:focus:not(:active) {
  background-color: #cde4d9;
}
.selectize-control .selectize-input .item::after {
  content: "";
  position: absolute;
  top: 0;
  right: 1.2rem;
  display: block;
  width: 18px;
  height: 100%;
  background: url(i/arrow-down.svg) 50% 55% no-repeat;
  background-size: auto 0.8rem;
}
.selectize-control .selectize-input ::-webkit-input-placeholder {
  color: #231F20;
  line-height: 1.6rem;
}
.selectize-control .selectize-input :-moz-placeholder {
  /* Firefox 18- */
  color: #231F20;
  line-height: 1.6rem;
}
.selectize-control .selectize-input ::-moz-placeholder {
  /* Firefox 19+ */
  color: #231F20;
  line-height: 1.6rem;
}
.selectize-control .selectize-input :-ms-input-placeholder {
  color: #231F20;
  line-height: 1.6rem;
}
.selectize-control .selectize-input [type=select-one] {
  left: -100vw !important;
}
.selectize-control .selectize-input.dropdown-active {
  background-color: #231F20;
  color: #cde4d9;
  border-radius: 1.2rem 1.2rem 0 0;
  box-shadow: 0 0 0 1.5px #231F20, 0 1.5px 0 #cde4d9;
}
.selectize-control .selectize-input.dropdown-active div::after {
  -webkit-transform: scaleY(-1);
  -moz-transform: scaleY(-1);
  -ms-transform: scaleY(-1);
  -o-transform: scaleY(-1);
  transform: scaleY(-1);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
  filter: FlipV;
  -ms-filter: "FlipV";
  filter: invert(1);
  background-position: 50% 50%;
}
.selectize-control .selectize-input.dropdown-active .selectize-dropdown {
  position: absolute;
  top: 0 !important;
}
.selectize-control .selectize-dropdown {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  border-radius: 0 0 1.2rem 1.2rem;
  background-color: #cde4d9;
  -webkit-box-shadow: 0 0 0 1.5px #231F20;
  -moz-box-shadow: 0 0 0 1.5px #231F20;
  box-shadow: 0 0 0 1.5px #231F20;
}
.selectize-control .selectize-dropdown-content {
  position: relative;
  color: #231F20;
  max-height: 32rem;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.selectize-control .selectize-dropdown-content div {
  display: list-item;
  padding: 0.6rem 1.2rem;
  list-style: none;
  line-height: 1.5rem;
  word-wrap: break-word;
  -webkit-touch-callout: none;
}
.selectize-control .selectize-dropdown-content div.active {
  background-color: #231F20;
  color: #cde4d9 !important;
}
.selectize-control .selectize-dropdown-content div:first-child {
  display: none;
}
.selectize-control .selectize-dropdown-content div:nth-child(2) {
  padding-top: 0.9rem;
}
.selectize-control .selectize-dropdown-content div:last-child {
  padding-bottom: 0.9rem;
  border-radius: 0 0 1.2rem 1.2rem;
}

.motion-toggle {
  border-radius: 1.2rem;
  overflow: hidden;
}
.motion-toggle .toggle {
  position: relative;
  width: 9.6rem;
  height: 4.8rem;
  z-index: 1;
  border-radius: 2.4rem;
  order: 2;
  -webkit-box-shadow: 0 0 0 3px #231F20;
  -moz-box-shadow: 0 0 0 3px #231F20;
  box-shadow: 0 0 0 3px #231F20;
  -webkit-transform: scale(0.5);
  -moz-transform: scale(0.5);
  -ms-transform: scale(0.5);
  -o-transform: scale(0.5);
  transform: scale(0.5);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
  -webkit-transform-origin: 0 50%;
  -moz-transform-origin: 0 50%;
  -ms-transform-origin: 0 50%;
  -o-transform-origin: 0 50%;
  transform-origin: 0 50%;
  margin-right: -4.8rem;
}
.motion-toggle .toggle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4.8rem;
  height: 4.8rem;
  border-radius: 2.4rem;
  -webkit-box-shadow: 0 0 0 3px #231F20;
  -moz-box-shadow: 0 0 0 3px #231F20;
  box-shadow: 0 0 0 3px #231F20;
}
.motion-toggle input {
  opacity: 0;
  width: 0;
  height: 0;
}
.motion-toggle input + .toggle::before {
  background-color: #EF4220;
  -webkit-transform: translateX(0);
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -o-transform: translateX(0);
  transform: translateX(0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
.motion-toggle input + .toggle:hover, .motion-toggle input + .toggle:focus:not(:active) {
  background-color: #cde4d9;
}
.motion-toggle input:checked + .toggle::before {
  background-color: #04b242;
  -webkit-transform: translateX(4.8rem);
  -moz-transform: translateX(4.8rem);
  -ms-transform: translateX(4.8rem);
  -o-transform: translateX(4.8rem);
  transform: translateX(4.8rem);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
body:not(.pause-animations) .motion-toggle input:checked + .toggle::before {
  will-change: auto;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.motion-toggle input:focus:not(:active) + .toggle {
  background-color: #cde4d9;
}

.first-load nav {
  opacity: 0;
}

body:not(.hide-header) .header-reveal {
  height: 0 !important;
}

body.home-intro header {
  -webkit-transform: translateY(-9.3rem);
  -moz-transform: translateY(-9.3rem);
  -ms-transform: translateY(-9.3rem);
  -o-transform: translateY(-9.3rem);
  transform: translateY(-9.3rem);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}

body.hide-header:not(.menu-open):not(.pause-animations) header {
  -webkit-transform: translateY(-9.2rem) translate3d(0, 0, 0);
  -moz-transform: translateY(-9.2rem) translate3d(0, 0, 0);
  -ms-transform: translateY(-9.2rem) translate3d(0, 0, 0);
  -o-transform: translateY(-9.2rem) translate3d(0, 0, 0);
  transform: translateY(-9.2rem) translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
  overflow: visible;
}
body.hide-header:not(.menu-open):not(.pause-animations) header .header-reveal {
  display: block;
  position: absolute;
  z-index: -1;
  top: 100%;
  left: 0;
  width: 100%;
  height: 5rem;
}
body.hide-header:not(.menu-open):not(.pause-animations).settings-open header .header-reveal, body.hide-header:not(.menu-open):not(.pause-animations).work header .header-reveal {
  height: 1.8rem;
}
body.hide-header:not(.menu-open):not(.pause-animations).settings-open .top-bar.settings-menu,
body.hide-header:not(.menu-open):not(.pause-animations) .top-bar.work-toggle {
  -webkit-transform: translateY(-9.4rem) translate3d(0, 0, 0);
  -moz-transform: translateY(-9.4rem) translate3d(0, 0, 0);
  -ms-transform: translateY(-9.4rem) translate3d(0, 0, 0);
  -o-transform: translateY(-9.4rem) translate3d(0, 0, 0);
  transform: translateY(-9.4rem) translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}

footer {
  width: 100%;
  border-top: 2px solid #231F20;
}
footer .footer-wrap {
  letter-spacing: -0.31em;
  text-rendering: optimizeLegibility;
}
footer li {
  letter-spacing: normal;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
  *display: inline;
  width: 33.33333%;
  border-bottom: 2px solid #231F20;
  border-left: 2px solid #231F20;
}
footer li:nth-child(1), footer li:nth-child(4), footer li:nth-child(7) {
  border-left: 0;
}
footer li .mid,
footer li .full {
  display: none;
}
@media only screen and (min-width: 640px) {
  footer li .full,
footer li .lite {
    display: none;
  }
  footer li .mid {
    display: block;
  }
}
@media only screen and (min-width: 1024px) {
  footer li .mid,
footer li .lite {
    display: none;
  }
  footer li .full {
    display: block;
  }
}
@media only screen and (min-width: 1200px) {
  footer li {
    font-size: 1.8rem;
  }
}
footer a {
  display: block;
  text-align: center;
  padding: 0 1.2rem;
  line-height: 4.8rem;
  color: #231F20;
  background-color: #cde4d9;
}
@media only screen and (min-width: 769px) {
  footer a {
    line-height: 7.2rem;
  }
}
footer a:hover {
  color: #231F20;
  background-color: #fff;
}
footer p + p {
  margin-top: 1rem;
}

.wrap {
  position: relative;
  min-height: 100%;
  min-height: 100vh;
}

.first-load .wrap-inner {
  display: none;
}

.single-event .wrap,
.first-load .wrap,
.first-load menu {
  opacity: 0 !important;
}

body:not(.pause-animations) body.home header svg {
  will-change: auto;
  -webkit-transition: all 0.375s ease-in-out;
  -moz-transition: all 0.375s ease-in-out;
  -o-transition: all 0.375s ease-in-out;
  transition: all 0.375s ease-in-out;
}
body:not(.pause-animations) body.home header svg {
  -webkit-transition-delay: 0.125s;
  -moz-transition-delay: 0.125s;
  -o-transition-delay: 0.125s;
  transition-delay: 0.125s;
}
body.home:not(.menu-open):not(.settings-open) header {
  border-bottom: 0;
}
body.home:not(.menu-open):not(.settings-open) header::before {
  -webkit-transform: translateY(-100%);
  -moz-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  -o-transform: translateY(-100%);
  transform: translateY(-100%);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
body.home:not(.menu-open):not(.settings-open) header .logo svg {
  fill: #fff;
}
body.home:not(.menu-open):not(.settings-open) header .settings-toggle svg {
  stroke: white;
}
body.home:not(.menu-open):not(.settings-open) header .settings-toggle:focus:not(:active) svg {
  fill: white !important;
}
body.home .wrap {
  padding: 0;
}
body.home #footer {
  display: none;
}

@media all and (orientation: landscape) {
  .landscape-portrait-wrap .portrait-image {
    opacity: 0 !important;
    visibility: hidden !important;
    display: none !important;
  }
}
@media all and (orientation: portrait) {
  .landscape-portrait-wrap .landscape-image {
    opacity: 0 !important;
    visibility: hidden !important;
    display: none !important;
  }
}

.home-grid {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #231F20;
  display: none;
}
.home-grid .home-image,
.home-grid .home-text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.home-grid .home-image {
  opacity: 0.82;
}
.home-grid .home-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
.home-grid .home-text {
  text-indent: 1500%;
  white-space: nowrap;
  overflow: hidden;
}
body:not(.pause-animations) .home-grid .home-text {
  will-change: auto;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}
@media all and (orientation: portrait) {
  .home-grid .home-text {
    -webkit-background-size: auto 17vh;
    -moz-background-size: auto 17vh;
    -o-background-size: auto 17vh;
    background-size: auto 17vh;
  }
}
@media all and (orientation: landscape) {
  .home-grid .home-text {
    -webkit-background-size: auto 20vh;
    -moz-background-size: auto 20vh;
    -o-background-size: auto 20vh;
    background-size: auto 20vh;
  }
}
.home-grid.hide-section .home-text {
  opacity: 0;
}
.home-grid .home-title {
  position: absolute;
  height: 20vh;
  color: #fff;
  text-align: left;
}
.home-grid .home-title h2 {
  font-size: 2rem;
  line-height: 1.1;
}
.home-grid .home-title h2::before {
  content: "";
  display: block;
  background-color: #fff;
}
.home-grid .home-title p {
  line-height: 1;
  margin-top: 1.8rem;
  display: none;
}
@media only screen and (min-height: 450px) {
  .home-grid .home-title h2 {
    font-size: calc(2rem + 1vw);
  }
  .home-grid .home-title p {
    display: block;
  }
}
@media all and (orientation: portrait) {
  .home-grid {
    /*
    		.home-text {
    			height: calc(100% - 14.4rem);
    		}
    */
    /*
    		h2:before {
    			width: 3.6rem;
    			height: 6px;
    			margin-bottom: 12px;
    		}
    */
  }
  .home-grid .home-title {
    /*
    			width: 100%;
    			top: auto;
    			bottom: 0;
    			padding: 2.4rem 1.8rem;
    			background-color: rgba($black, 0.36);
    			height: 14.4rem;
    */
    display: none;
  }
  .home-grid[data-section=work] .home-text {
    background: url(i/home-w.svg) 50% 9rem no-repeat, url(i/home-o.svg) calc(100% + 1.8rem) calc(20vh + 4.5rem) no-repeat, url(i/home-r.svg) 0 calc(100% - 20vh) no-repeat, url(i/home-k.svg) calc(100% - 25.76vw) calc(100% - 4.5rem) no-repeat;
    -webkit-background-size: auto 17vh;
    -moz-background-size: auto 17vh;
    -o-background-size: auto 17vh;
    background-size: auto 17vh;
  }
  .home-grid[data-section=studio] .home-text {
    background: url(i/home-stu.svg) -1.8rem 9rem no-repeat, url(i/home-di.svg) calc(100% - 1.8rem) calc(50% + 4.5rem) no-repeat, url(i/home-o.svg) 25.76% calc(100% - 4.5rem) no-repeat;
    -webkit-background-size: auto 17vh;
    -moz-background-size: auto 17vh;
    -o-background-size: auto 17vh;
    background-size: auto 17vh;
  }
  .home-grid[data-section=events] .home-text {
    background: url(i/home-e.svg) 7.2rem 9rem no-repeat, url(i/home-ven.svg) 100% calc(50% + 2.25rem) no-repeat, url(i/home-t.svg) -1.8rem calc(100% - 4.5rem) no-repeat, url(i/home-s.svg) 25.76% calc(100% + 1.2rem) no-repeat;
    -webkit-background-size: auto 17vh;
    -moz-background-size: auto 17vh;
    -o-background-size: auto 17vh;
    background-size: auto 17vh;
  }
  .home-grid.new-section:not(.fall-in) {
    /*
    		.home-text {
    			@include transform(scale(2));
    		}
    */
  }
  .home-grid.new-section:not(.fall-in)[data-section=work] .home-text {
    background: url(i/home-w.svg) 50% -50vh no-repeat, url(i/home-o.svg) 150vw calc(20vh + 4.5rem) no-repeat, url(i/home-r.svg) -50vw calc(100% - 20vh) no-repeat, url(i/home-k.svg) calc(100% - 25.76vw) 150vh no-repeat;
    -webkit-background-size: auto 17vh;
    -moz-background-size: auto 17vh;
    -o-background-size: auto 17vh;
    background-size: auto 17vh;
  }
  .home-grid.new-section:not(.fall-in)[data-section=studio] .home-text {
    background: url(i/home-stu.svg) -100vw 9rem no-repeat, url(i/home-di.svg) 150vw calc(50% + 4.5rem) no-repeat, url(i/home-o.svg) 25.76% 150vh no-repeat;
    -webkit-background-size: auto 17vh;
    -moz-background-size: auto 17vh;
    -o-background-size: auto 17vh;
    background-size: auto 17vh;
  }
  .home-grid.new-section:not(.fall-in)[data-section=events] .home-text {
    background: url(i/home-e.svg) -50vw 9rem no-repeat, url(i/home-ven.svg) 150vw calc(50% + 2.25rem) no-repeat, url(i/home-t.svg) -50vw calc(100% - 4.5rem) no-repeat, url(i/home-s.svg) 25.76% 150vh no-repeat;
    -webkit-background-size: auto 17vh;
    -moz-background-size: auto 17vh;
    -o-background-size: auto 17vh;
    background-size: auto 17vh;
  }
}
@media all and (orientation: landscape) {
  .home-grid .home-title {
    bottom: 4.5rem;
    width: 40.72%;
    opacity: 1;
  }
  body:not(.pause-animations) .home-grid .home-title {
    will-change: auto;
    -webkit-transition: all 0.375s ease-in-out;
    -moz-transition: all 0.375s ease-in-out;
    -o-transition: all 0.375s ease-in-out;
    transition: all 0.375s ease-in-out;
  }
  .home-grid h2:before {
    width: 10rem;
    height: 3vh;
    margin-bottom: 3vh;
  }
  .home-grid[data-section=work] .home-text {
    background: url(i/home-w.svg) 50% 9rem no-repeat, url(i/home-o.svg) 92% calc(20vh + 4.5rem) no-repeat, url(i/home-r.svg) 8% calc(100% - 20vh) no-repeat, url(i/home-k.svg) calc(100% - 25.76vw) calc(100% - 4.5rem) no-repeat;
    -webkit-background-size: auto 20vh;
    -moz-background-size: auto 20vh;
    -o-background-size: auto 20vh;
    background-size: auto 20vh;
  }
  .home-grid[data-section=work] .home-title {
    left: 22.1%;
    padding-right: 2rem;
  }
  .home-grid[data-section=studio] .home-text {
    background: url(i/home-stu.svg) 8% 9rem no-repeat, url(i/home-di.svg) 92% calc(50% + 4.5rem) no-repeat, url(i/home-o.svg) 25.76% calc(100% - 4.5rem) no-repeat;
    -webkit-background-size: auto 20vh;
    -moz-background-size: auto 20vh;
    -o-background-size: auto 20vh;
    background-size: auto 20vh;
  }
  .home-grid[data-section=studio] .home-title {
    left: 45.6%;
  }
  .home-grid[data-section=events] .home-text {
    background: url(i/home-e.svg) 33.16% 9rem no-repeat, url(i/home-ven.svg) 50% calc(50% + 2.25rem) no-repeat, url(i/home-t.svg) 12.6% calc(100% - 4.5rem) no-repeat, url(i/home-s.svg) 25.76% calc(100% + 1.125rem) no-repeat;
    -webkit-background-size: auto 20vh;
    -moz-background-size: auto 20vh;
    -o-background-size: auto 20vh;
    background-size: auto 20vh;
  }
  .home-grid[data-section=events] .home-title {
    left: 50%;
  }
  .home-grid.new-section:not(.fall-in)[data-section=work] .home-text {
    background: url(i/home-w.svg) 50% -50vh no-repeat, url(i/home-o.svg) 150vw calc(20vh + 4.5rem) no-repeat, url(i/home-r.svg) -50vw calc(100% - 20vh) no-repeat, url(i/home-k.svg) calc(100% - 25.76vw) 150vh no-repeat;
    -webkit-background-size: auto 20vh;
    -moz-background-size: auto 20vh;
    -o-background-size: auto 20vh;
    background-size: auto 20vh;
  }
  .home-grid.new-section:not(.fall-in)[data-section=studio] .home-text {
    background: url(i/home-stu.svg) -50vw 9rem no-repeat, url(i/home-di.svg) 150vw calc(50% + 4.5rem) no-repeat, url(i/home-o.svg) 25.76% 150vh no-repeat;
    -webkit-background-size: auto 20vh;
    -moz-background-size: auto 20vh;
    -o-background-size: auto 20vh;
    background-size: auto 20vh;
  }
  .home-grid.new-section:not(.fall-in)[data-section=events] .home-text {
    background: url(i/home-e.svg) 33.16% -50vh no-repeat, url(i/home-ven.svg) 150vw calc(50% + 2.25rem) no-repeat, url(i/home-t.svg) -50vw calc(100% - 4.5rem) no-repeat, url(i/home-s.svg) 25.76% 150vh no-repeat;
    -webkit-background-size: auto 20vh;
    -moz-background-size: auto 20vh;
    -o-background-size: auto 20vh;
    background-size: auto 20vh;
  }
  .home-grid.new-section:not(.fall-in) .home-title {
    opacity: 0;
    -webkit-transform: translateY(3.6rem);
    -moz-transform: translateY(3.6rem);
    -ms-transform: translateY(3.6rem);
    -o-transform: translateY(3.6rem);
    transform: translateY(3.6rem);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
  }
}

section {
  position: relative;
}

.grid {
  letter-spacing: -0.31em;
  text-rendering: optimizeLegibility;
}
.grid .grid-item {
  letter-spacing: normal;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
  *display: inline;
  vertical-align: top;
}
.grid .item-image {
  position: relative;
  display: block;
  width: 100%;
  height: 0;
  background-position: 50% 50%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

section.basic-page, section.calendar, section.quote.reel-intro, section.quote.studio-intro, .project-intro, section.ig-intro, .work-views, .top-bar.fixed-top {
  padding-top: 9.2rem;
  /*
  	@include responsive(min, 640) {
  		padding-top: 14rem;
  	}
  */
}

.info-toggles button, .top-bar label,
.top-bar button {
  font-size: 1.4rem;
  line-height: 4.8rem;
  text-align: center;
  flex: 1;
}
@media only screen and (min-width: 769px) {
  .info-toggles button, .top-bar label,
.top-bar button {
    font-size: 1.8rem;
    line-height: 7.2rem;
  }
}

.top-bar {
  position: relative;
  top: 0;
  left: -2px;
  width: calc(100% + 2px);
  background-color: #fff;
  text-align: center;
  -webkit-box-shadow: 0 2px 0 #231F20;
  -moz-box-shadow: 0 2px 0 #231F20;
  box-shadow: 0 2px 0 #231F20;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
body:not(.pause-animations) .top-bar {
  will-change: auto;
  -webkit-transition: all 0.375s ease-in;
  -moz-transition: all 0.375s ease-in;
  -o-transition: all 0.375s ease-in;
  transition: all 0.375s ease-in;
}
.top-bar label,
.top-bar button {
  border-left: 2px solid #231F20;
}
.top-bar label.active,
.top-bar button.active {
  background-color: #fbf9f5;
}
.top-bar.fixed-top {
  position: fixed;
}
.top-bar.work-toggle button {
  -webkit-box-shadow: 0 -2px 0 #231F20;
  -moz-box-shadow: 0 -2px 0 #231F20;
  box-shadow: 0 -2px 0 #231F20;
}
.top-bar.work-toggle.hide {
  opacity: 0;
}

/*
.full-split {
	position: relative;
	overflow: hidden;
	> section {
		position: relative;
		width: 100%;
		width: 100vw;
// 		@include invisible(0.375s);
		@include transition(transform, 0.75s);
// 		@include box-shadow(0 2px 0 0 $black);
		&.show {
			@include transform(translateY(0));
		}
		&:nth-child(1):not(.show) {
			@include transform(translateX(-100vw));
		}
		&:nth-child(2) {
			position: absolute;
			top: 0;
			left: 0;
			&.show {
			}
			&:not(.show) {
				@include transform(translateX(100vw));
			}
		}
	}
	&.moving {
		> section {
			border-left: 1px solid $black;
			border-right: 1px solid $black;
		}
	}
}
*/
.work-views {
  position: relative;
  overflow: hidden;
  width: 300%;
  width: 300vw;
  letter-spacing: -0.31em;
  text-rendering: optimizeLegibility;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
body:not(.pause-animations) .work-views {
  will-change: transform;
  -webkit-transition: transform 0.75s ease-in-out;
  -moz-transition: transform 0.75s ease-in-out;
  -o-transition: transform 0.75s ease-in-out;
  transition: transform 0.75s ease-in-out;
}
.work-views[data-slide=work] {
  -webkit-transform: translateX(0);
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -o-transform: translateX(0);
  transform: translateX(0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
.work-views[data-slide=list] {
  -webkit-transform: translateX(-100vw);
  -moz-transform: translateX(-100vw);
  -ms-transform: translateX(-100vw);
  -o-transform: translateX(-100vw);
  transform: translateX(-100vw);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
.work-views[data-slide=identities] {
  -webkit-transform: translateX(-200vw);
  -moz-transform: translateX(-200vw);
  -ms-transform: translateX(-200vw);
  -o-transform: translateX(-200vw);
  transform: translateX(-200vw);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
.work-views > section {
  letter-spacing: normal;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
  *display: inline;
  vertical-align: top;
  position: relative;
  width: 100%;
  width: 100vw;
  min-height: calc(100vh - 9.3rem);
  padding-top: 4.8rem;
  overflow: hidden;
}
@media only screen and (min-width: 640px) {
  .work-views > section {
    padding-top: 7.2rem;
  }
}
.work-views:not(.moving) [aria-hidden=true] {
  visibility: hidden;
}
.work-views.moving > section:not(:first-child):after {
  content: "";
  display: block;
  width: 2px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1000;
  background-color: #231F20;
}

.work-grid {
  margin-left: -2px;
  width: calc(100vw + 2px) !important;
}
.work-grid .work-wrap,
.work-grid .fade,
.work-grid .hover,
.work-grid .color {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.work-grid .center,
.work-grid .hover {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  align-content: center;
  flex-direction: column;
}
.work-grid .hover {
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s linear 0.125s, opacity 0.125s linear;
  will-change: visibility, opacity;
}
.work-grid .color {
  z-index: 0;
  background-color: #231F20;
  opacity: 0.5;
}
.work-grid .fade {
  opacity: 0;
}
body:not(.pause-animations) .work-grid .fade {
  will-change: opacity;
  -webkit-transition: opacity 0.375 ease-in-out;
  -moz-transition: opacity 0.375 ease-in-out;
  -o-transition: opacity 0.375 ease-in-out;
  transition: opacity 0.375 ease-in-out;
}
.work-grid .hover-text {
  position: relative;
  z-index: 1;
  text-align: center;
  padding: 1.8rem;
}
.work-grid .bottom {
  padding: 7.2vw 7.2vw 0;
  height: auto;
}
.work-grid .bottom img, .work-grid .bottom video {
  width: 100% !important;
  max-width: initial !important;
}
.work-grid .center img, .work-grid .center video {
  width: 100%;
  height: 100%;
  object-fit: contain;
  font-family: "object-fit: contain;";
}
.work-grid .center img {
  max-width: calc(100% - 4.8rem);
  max-height: calc(33.33vw - 4.8rem);
}
.work-grid .center video {
  width: calc(100% - 7.2rem);
}
.work-grid .shadow img,
.work-grid .shadow video:not([data-loading]) {
  -webkit-filter: drop-shadow(-0.42vw 0.42vw 0.42vw rgba(35, 31, 32, 0.36));
  filter: drop-shadow(-0.42vw 0.42vw 0.42vw rgba(35, 31, 32, 0.36));
}
.work-grid h1 {
  text-align: center;
}
.work-grid .categories {
  display: none;
}
.work-grid:not(.ig-grid) .grid-item {
  float: left;
}
.work-grid .grid-item {
  border-top: 2px solid #231F20;
  border-left: 2px solid #231F20;
  background-color: #fbf9f5;
  width: 33.33333%;
  position: relative;
  overflow: hidden;
  /*
  		&.two-col,
  		&.full {
  			width: 100%;
  			.center {
  				video {
  					width: auto;
  					height: calc(50vw - 7.2rem);
  				}
  			}
  		}
  */
}
.work-grid .grid-item:nth-last-child(2) {
  -webkit-box-shadow: 0 2px 0 #231F20;
  -moz-box-shadow: 0 2px 0 #231F20;
  box-shadow: 0 2px 0 #231F20;
}
.work-grid .grid-item[style*="left: 0%"] {
  border-left: 0;
}
.work-grid .grid-item[style*="left: 0%"]:nth-last-child(2) {
  -webkit-box-shadow: 0;
  -moz-box-shadow: 0;
  box-shadow: 0;
}
.work-grid .grid-item[style*="left: 0%"]:last-child {
  -webkit-box-shadow: 2px 0 0 #231F20;
  -moz-box-shadow: 2px 0 0 #231F20;
  box-shadow: 2px 0 0 #231F20;
  width: 100%;
}
.work-grid .grid-item a {
  display: block;
  width: 100%;
  height: 33.33333vw;
  color: #fff;
}
.work-grid .grid-item a > img,
.work-grid .grid-item a > video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
.work-grid .grid-item a:focus:not(:active) {
  box-shadow: inset 0 0 0 2px #006cdf;
}
.work-grid .grid-item a:focus:not(:active) > img,
.work-grid .grid-item a:focus:not(:active) > video {
  border: 2px solid #006cdf;
}
.work-grid .grid-item a.selected .hover, .work-grid .grid-item a:not(.fade-out):hover .hover {
  visibility: visible;
  opacity: 0.99999;
  transition-delay: 0s;
}
.work-grid .grid-item.fade-out a .fade {
  opacity: 1;
}
.work-grid .grid-item.fade-out a.selected .fade {
  mix-blend-mode: darken;
  -webkit-mix-blend-mode: darken;
}
.work-grid .grid-item p {
  margin-top: 1rem;
}
.work-grid .grid-item.two-col {
  width: 66.66666%;
}
.work-grid .grid-item.full {
  width: 100%;
}
.work-grid .grid-item.two-col .center, .work-grid .grid-item.full .center {
  /*
  				img {
  					max-width: calc(100% - 4.8rem);
  				}
  */
}
.work-grid .grid-item.two-col .center video, .work-grid .grid-item.full .center video {
  width: auto;
  height: calc(33vw - 4.8rem);
}
.work-grid .grid-item.video-item img {
  display: none;
}
body.pause-animations .work-grid .grid-item.video-item img {
  display: block;
}
body.pause-animations .work-grid .grid-item.video-item video {
  display: none;
}
@media only screen and (min-width: 640px) {
  .work-grid {
    /*
    		.bottom {
    			padding: 7.2vw 7.2vw 0;
    		}
    */
    /*
    		.grid-item {
    			width: 33.33333%;
    			a {
    				height: 33.33333vw;
    			}
    			&.two-col {
    				width: 66.66666%;
    			}
    			&.two-col,
    			&.full {
    				.center video {
    					width: auto;
    					height: calc(33vw - 7.2rem);
    				}
    			}
    		}
    */
  }
  .work-grid .center img {
    max-width: calc(100% - 14.4vw);
    max-height: calc(33.33333vw - 7.2rem);
  }
  .work-grid .center video {
    width: calc(100% - 14.4vw);
    height: auto;
  }
  .work-grid .hover-text {
    padding: 3.6rem;
  }
  .work-grid .categories {
    display: block;
  }
}
@media only screen and (min-width: 1200px) {
  .work-grid .grid-item.two-col .center img, .work-grid .grid-item.full .center img {
    max-height: calc(33.33333vw - 14.4rem);
  }
  .work-grid .grid-item.two-col .center video, .work-grid .grid-item.full .center video {
    height: calc(33vw - 14.4rem);
  }
}

section.ig-intro {
  padding-bottom: 3.6rem;
  text-align: center;
}
section.ig-intro p {
  max-width: 60rem;
  margin-left: auto;
  margin-right: auto;
}
section.ig-intro .ig-avatar {
  display: block;
  width: 7.5rem;
  height: 7.5rem;
  border-radius: 50%;
  border: 2px solid;
  margin: 0 auto 1.8rem;
  background-color: #fff;
  background-position: 50% 50%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.ig-grid .grid-item {
  -webkit-box-shadow: 2px 2px 0 #231F20;
  -moz-box-shadow: 2px 2px 0 #231F20;
  box-shadow: 2px 2px 0 #231F20;
}
.ig-grid .grid-item:nth-child(3n+1) {
  border-left: 0;
}
@media only screen and (max-width: 768px) {
  .ig-grid .hover-text {
    padding: 0.8rem;
  }
  .ig-grid h2 {
    font-size: 1.5rem;
  }
}

.work-list {
  border-top: 2px solid #231F20;
  background-color: #fbf9f5;
}
.work-list li {
  width: 100%;
  line-height: 4.8rem;
  padding: 0 1.8rem;
  position: relative;
  z-index: 0;
}
body:not(.pause-animations) .work-list li {
  will-change: padding;
  -webkit-transition: padding 0.375s ease-in-out;
  -moz-transition: padding 0.375s ease-in-out;
  -o-transition: padding 0.375s ease-in-out;
  transition: padding 0.375s ease-in-out;
}
.work-list li:last-child {
  padding-bottom: 3.6rem;
}
.work-list li .title-wrap {
  padding-top: 1.2rem;
}
body:not(.pause-animations) .work-list li .title-wrap {
  will-change: auto;
  -webkit-transition: all 1.25s ease-in-out;
  -moz-transition: all 1.25s ease-in-out;
  -o-transition: all 1.25s ease-in-out;
  transition: all 1.25s ease-in-out;
}
.work-list li .title-wrap p {
  display: none;
}
.work-list li .fade {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s linear 0.375s, opacity 0.375s linear;
  will-change: visibility, opacity;
}
.work-list li a {
  color: #231F20;
  display: block;
  border-bottom: 2px solid #231F20;
}
body:not(.pause-animations) .work-list li a {
  will-change: padding;
  -webkit-transition: padding 0.375s ease-in-out;
  -moz-transition: padding 0.375s ease-in-out;
  -o-transition: padding 0.375s ease-in-out;
  transition: padding 0.375s ease-in-out;
}
.work-list li a:hover {
  color: #231F20;
}
.work-list li a.selected .fade {
  z-index: 0;
}
.work-list li a.selected .title-wrap {
  z-index: 1;
}
.work-list li.fade-out {
  z-index: 1;
  padding-left: 0;
  padding-right: 0;
}
.work-list li.fade-out a {
  padding-left: 1.8rem;
  padding-right: 1.8rem;
}
.work-list li.fade-out .fade {
  visibility: visible;
  opacity: 0.99999;
  transition-delay: 0s;
}
@media only screen and (min-width: 640px) {
  .work-list li {
    line-height: 7.2rem;
    padding: 0 3.6rem;
  }
  .work-list li:last-child {
    padding-bottom: 7.2rem;
  }
  .work-list li .title-wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: baseline;
    justify-content: space-between;
  }
  .work-list li .title-wrap p {
    display: block;
    opacity: 1;
  }
  body:not(.pause-animations) .work-list li .title-wrap p {
    will-change: opacity;
    -webkit-transition: opacity 0.25s ease-in-out;
    -moz-transition: opacity 0.25s ease-in-out;
    -o-transition: opacity 0.25s ease-in-out;
    transition: opacity 0.25s ease-in-out;
  }
  .work-list li a.selected .title-wrap p {
    opacity: 0;
  }
  .work-list li.fade-out a {
    padding-left: 3.6rem;
    padding-right: 3.6rem;
  }
}

.work-identities {
  border-top: 2px solid;
  background-color: #fbf9f5;
}
body:not(.pause-animations) .work-identities {
  will-change: background-color;
  -webkit-transition: background-color 0.375s ease-in-out;
  -moz-transition: background-color 0.375s ease-in-out;
  -o-transition: background-color 0.375s ease-in-out;
  transition: background-color 0.375s ease-in-out;
}

.logo-grid {
  padding: 3.6rem 1.8rem;
}
@media only screen and (min-width: 640px) {
  .logo-grid {
    padding: 4.8rem 3.6rem;
  }
}
@media only screen and (min-width: 930px) {
  .logo-grid {
    padding: 3.6rem 7.2rem 4.8rem;
  }
}
.logo-grid .grid-item {
  width: 50%;
  position: relative;
  overflow: visible;
  background-color: #fbf9f5;
  vertical-align: middle;
  z-index: 1;
}
body:not(.pause-animations) .logo-grid .grid-item {
  will-change: background-color;
  -webkit-transition: background-color 0.375s ease-in-out;
  -moz-transition: background-color 0.375s ease-in-out;
  -o-transition: background-color 0.375s ease-in-out;
  transition: background-color 0.375s ease-in-out;
}
@media only screen and (min-width: 640px) {
  .logo-grid .grid-item {
    width: 33.33333%;
  }
}
@media only screen and (min-width: 1024px) {
  .logo-grid .grid-item {
    width: 25%;
  }
}
@media only screen and (min-width: 1200px) {
  .logo-grid .grid-item p:not(.link) {
    font-size: 1.8rem;
  }
}
.logo-grid .grid-item.fade-out:not(.selected) {
  opacity: 0.1;
  mix-blend-mode: darken;
  -webkit-mix-blend-mode: darken;
}
.logo-grid .grid-item.selected {
  z-index: 2;
  mix-blend-mode: darken;
  -webkit-mix-blend-mode: darken;
}
.logo-grid .grid-item.selected img {
  margin: -2.4rem -3.6rem;
  width: calc(100% + 7.2rem);
}
body:not(.pause-animations) .logo-grid .grid-item.selected img {
  will-change: auto;
  -webkit-transition: all 0.75s ease-in-out;
  -moz-transition: all 0.75s ease-in-out;
  -o-transition: all 0.75s ease-in-out;
  transition: all 0.75s ease-in-out;
}
.logo-grid img {
  width: 100%;
  mix-blend-mode: multiply;
  -webkit-mix-blend-mode: multiply;
}
.logo-grid .logo-text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  justify-content: center;
  text-align: center;
  flex-direction: column;
  opacity: 0;
  background-color: rgba(251, 249, 245, 0.94);
  z-index: 1;
}
body:not(.pause-animations) .logo-grid .logo-text {
  will-change: opacity;
  -webkit-transition: opacity 0.25s ease-in-out;
  -moz-transition: opacity 0.25s ease-in-out;
  -o-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.logo-grid .logo-text h4 {
  margin: 0 auto;
}
.logo-grid .logo-text h4 + p {
  margin-top: 1rem;
}
.logo-grid .logo-text a {
  align-self: center;
  padding-bottom: 1px;
  background: -webkit-linear-gradient(#fbf9f5, #fbf9f5), -webkit-linear-gradient(#fbf9f5, #fbf9f5), -webkit-linear-gradient(#231F20, #231F20);
  background: -moz-linear-gradient(#fbf9f5, #fbf9f5), -moz-linear-gradient(#fbf9f5, #fbf9f5), -moz-linear-gradient(#231F20, #231F20);
  background: -o-linear-gradient(#fbf9f5, #fbf9f5), -o-linear-gradient(#fbf9f5, #fbf9f5), -o-linear-gradient(#231F20, #231F20);
  background: -ms-linear-gradient(#fbf9f5, #fbf9f5), -ms-linear-gradient(#fbf9f5, #fbf9f5), -ms-linear-gradient(#231F20, #231F20);
  background: linear-gradient(#fbf9f5, #fbf9f5), linear-gradient(#fbf9f5, #fbf9f5), linear-gradient(#231F20, #231F20);
  -webkit-background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  -moz-background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  background-repeat: no-repeat, no-repeat, repeat-x;
  text-shadow: 0.03em 0 #fbf9f5, -0.03em 0 #fbf9f5, 0 0.03em #fbf9f5, 0 -0.03em #fbf9f5, 0.06em 0 #fbf9f5, -0.06em 0 #fbf9f5, 0.09em 0 #fbf9f5, -0.09em 0 #fbf9f5, 0.12em 0 #fbf9f5, -0.12em 0 #fbf9f5, 0.15em 0 #fbf9f5, -0.15em 0 #fbf9f5;
  background-position: 0 85.2%, 100% 85.2%, 0 85.2%;
}
.logo-grid .grid-item:focus .logo-text,
.logo-grid .grid-item:focus-within .logo-text,
.logo-grid .grid-item:hover .logo-text {
  opacity: 1;
}

/*
.selected-project {
	position: absolute;
	padding: 1.2rem 1.8rem;
	&.moving {
		@include transition(all, 1.25s);
	}
	@include responsive(min, 640) {
		padding: 2.4rem 3.6rem;
	}
	p {
		display: none
	}
}
*/
.project-intro {
  z-index: 2;
}
.project-intro .title-wrap {
  padding: 3.6rem 7.2rem;
  text-align: center;
  border-bottom: 2px solid;
}
@media only screen and (min-width: 640px) {
  .project-intro .title-wrap {
    padding: 7.2rem;
  }
}
.project-intro em + .admin-edit:before {
  content: " — ";
}

/*
.project-info {
	border-bottom: 2px solid;
	padding: 3.6rem 1.8rem 1.8rem;
	.project-misc {
		@include columns(2, 0);
		> div {
			@include inline-block;
			width: 100%;
			vertical-align: top;
			padding-right: 1.8rem;
			padding-bottom: 1.8rem;
		}
	}
	.project-description {
		padding-bottom: 3.6rem;
	}
	h4 + p {
		margin-top: 0;
	}
	@include responsive(min, 640) {
		padding: 3.6rem;
		.project-misc > div {
			padding-right: 3.6rem;
			padding-bottom: 3.6rem;
		}
	}
	@include responsive(min, 769) {
		@include flex;
		.project-misc {
			width: 50%;
			padding-right: 1.8rem;
			-webkit-box-ordinal-group: 1;
			   -moz-box-ordinal-group: 1;
					   -ms-flex-order: 1;
					    -webkit-order: 1;
							    order: 1;
		}
		.project-description {
			width: 50%;
			padding-left: 1.8rem;
			-webkit-box-ordinal-group: 2;
			   -moz-box-ordinal-group: 2;
					   -ms-flex-order: 2;
					    -webkit-order: 2;
							    order: 2;
		}
	}
}
*/
.info-wrap {
  position: relative;
}

.info-toggles {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
.info-toggles button {
  border-bottom: 2px solid transparent;
  position: relative;
}
.info-toggles button::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: -2px;
  display: block;
  width: 2px;
  height: 2px;
  background: #231F20;
}
.info-toggles button + button {
  border-left: 2px solid #231F20;
}
.info-toggles button:hover {
  background-color: #fff;
}
.info-toggles.active button.open {
  border-bottom: 2px solid #fff;
  background-color: #fff;
}
.info-toggles.active button:not(.open) {
  -webkit-box-shadow: 0 2px 0 #231F20;
  -moz-box-shadow: 0 2px 0 #231F20;
  box-shadow: 0 2px 0 #231F20;
  border-bottom: 2px solid #231F20;
}

.info-content {
  background-color: #fff;
  padding: 1.8rem;
  position: absolute;
  width: 100%;
  z-index: 1;
  border-bottom: 2px solid #231F20;
  /*
  	display: none;
  	&.show {
  		display: block;
  	}
  */
}
.info-content a {
  padding-bottom: 1px;
  background: -webkit-linear-gradient(#fff, #fff), -webkit-linear-gradient(#fff, #fff), -webkit-linear-gradient(#231F20, #231F20);
  background: -moz-linear-gradient(#fff, #fff), -moz-linear-gradient(#fff, #fff), -moz-linear-gradient(#231F20, #231F20);
  background: -o-linear-gradient(#fff, #fff), -o-linear-gradient(#fff, #fff), -o-linear-gradient(#231F20, #231F20);
  background: -ms-linear-gradient(#fff, #fff), -ms-linear-gradient(#fff, #fff), -ms-linear-gradient(#231F20, #231F20);
  background: linear-gradient(#fff, #fff), linear-gradient(#fff, #fff), linear-gradient(#231F20, #231F20);
  -webkit-background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  -moz-background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  background-repeat: no-repeat, no-repeat, repeat-x;
  text-shadow: 0.03em 0 #fff, -0.03em 0 #fff, 0 0.03em #fff, 0 -0.03em #fff, 0.06em 0 #fff, -0.06em 0 #fff, 0.09em 0 #fff, -0.09em 0 #fff, 0.12em 0 #fff, -0.12em 0 #fff, 0.15em 0 #fff, -0.15em 0 #fff;
  background-position: 0 85.2%, 100% 85.2%, 0 85.2%;
}
.info-content > div {
  letter-spacing: normal;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
  *display: inline;
  width: 100%;
  vertical-align: top;
  padding-bottom: 1.8rem;
  opacity: 0;
}
body:not(.pause-animations) .info-content > div {
  will-change: opacity;
  -webkit-transition: opacity 0.375s ease-in-out;
  -moz-transition: opacity 0.375s ease-in-out;
  -o-transition: opacity 0.375s ease-in-out;
  transition: opacity 0.375s ease-in-out;
}
.info-content.open > div {
  opacity: 1;
}
body:not(.pause-animations) .info-content.open > div {
  -webkit-transition-delay: 0.375s;
  -moz-transition-delay: 0.375s;
  -o-transition-delay: 0.375s;
  transition-delay: 0.375s;
}
.info-content h4 {
  border-bottom: 1px solid #231F20;
  line-height: 3.6rem;
}
.info-content h4 + blockquote,
.info-content h4 + ul,
.info-content h4 + p {
  margin-top: 1rem;
}
.info-content p, .info-content ul {
  font-size: 1.8rem;
}
.info-content p + h4, .info-content ul + h4 {
  margin-top: 3.6rem;
}
.info-content li + li {
  margin-top: 1rem;
}
@media only screen and (min-width: 640px) {
  .info-content {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 3.6rem;
    -moz-column-gap: 3.6rem;
    column-gap: 3.6rem;
    /*
    	   -moz-column-fill: balance;
    			column-fill: balance;
    	-webkit-column-break-inside: avoid;
    	          page-break-inside: avoid;
    	               break-inside: avoid;
    */
    padding: 3.6rem 3.6rem 0;
  }
  .info-content > div {
    padding-bottom: 3.6rem;
  }
}

.video-wrap.mobile.ready {
  position: relative;
}
.video-wrap.mobile.ready::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: url(i/play-button.svg) 50% 50% no-repeat;
  -webkit-background-size: 3.6rem auto;
  -moz-background-size: 3.6rem auto;
  -o-background-size: 3.6rem auto;
  background-size: 3.6rem auto;
  -webkit-filter: drop-shadow(-0.42vw 0.42vw 0.42vw rgba(35, 31, 32, 0.36));
  filter: drop-shadow(-0.42vw 0.42vw 0.42vw rgba(35, 31, 32, 0.36));
  z-index: 2;
  cursor: pointer;
  visibility: visible;
  opacity: 0.99999;
  transition-delay: 0s;
}
body:not(.pause-animations) .video-wrap.mobile.ready::after {
  will-change: background-size;
  -webkit-transition: background-size 0.125s ease-in-out;
  -moz-transition: background-size 0.125s ease-in-out;
  -o-transition: background-size 0.125s ease-in-out;
  transition: background-size 0.125s ease-in-out;
}
.video-wrap.mobile.ready.playing::after {
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s linear 0.25s, opacity 0.25s linear;
  will-change: visibility, opacity;
}
.video-wrap.mobile.ready.playing.paused::after {
  visibility: visible;
  opacity: 0.99999;
  transition-delay: 0s;
}

.project-grid {
  margin: 0 -2px;
  z-index: 1;
  /*
  	.img-wrap {
  	}
  	.video-wrap {
  		padding: 7.2vw;
  		height: auto;
  		@include flex;
  		align-items: center;
  		justify-content: flex-start;
  	}
  */
}
.project-grid figure {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
}
.project-grid figure.bleed > img,
.project-grid figure.bleed > video {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
.project-grid .slideshow {
  width: 100%;
  height: 72vw;
}
.project-grid .slideshow .slide {
  width: 100%;
  height: 72vw;
}
.project-grid .slideshow figure {
  position: relative;
}
.project-grid .project-description {
  padding: 3.6rem;
}
.project-grid .grid-item {
  border-left: 2px solid #231F20;
  border-top: 2px solid #231F20;
  width: 100%;
  height: 72vw;
  position: relative;
  overflow: hidden;
  /*
  		&[style*="left: 0%"] {
  			border-left: 0;
  		}
  */
}
.project-grid .grid-item figure.center img, .project-grid .grid-item figure.center video {
  display: block;
  max-width: calc(100% - 7.2rem);
  max-height: 100%;
}
.project-grid .grid-item figure.center video {
  max-height: calc(100% - 7.2rem);
  /*
              &:not([data-loading]) {
              -webkit-filter: drop-shadow(-0.42vw 0.42vw 0.42vw rgba($black, 0.36));
                      filter: drop-shadow(-0.42vw 0.42vw 0.42vw rgba($black, 0.36));
              }
  */
}
.project-grid .grid-item.grid-intro {
  height: initial;
}
.project-grid .grid-item.intro-text {
  height: auto;
}
.project-grid .grid-item.intro-text .project-description {
  padding: 5.4rem 3.6rem;
}
.project-grid .grid-item figure.shadow img, .project-grid .grid-item figure.shadow video:not([data-loading]) {
  -webkit-filter: drop-shadow(-0.42vw 0.42vw 0.42vw rgba(35, 31, 32, 0.36));
  filter: drop-shadow(-0.42vw 0.42vw 0.42vw rgba(35, 31, 32, 0.36));
}
.project-grid .grid-item .caption,
.project-grid .grid-item figcaption {
  position: absolute;
  bottom: -5.4rem;
  left: 0;
  right: 0;
  text-align: center;
  padding: 0.6rem 1.2rem;
  min-height: 4.8rem;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  text-overflow: ellipsis;
}
body:not(.pause-animations) .project-grid .grid-item .caption,
body:not(.pause-animations) .project-grid .grid-item figcaption {
  will-change: auto;
  -webkit-transition: all 0.375s ease-in-out;
  -moz-transition: all 0.375s ease-in-out;
  -o-transition: all 0.375s ease-in-out;
  transition: all 0.375s ease-in-out;
}
.project-grid .grid-item .caption {
  display: block;
  width: 100%;
  background-color: #fff;
  line-height: 1.8rem;
  opacity: 0;
}
.project-grid .grid-item figcaption,
.project-grid .grid-item .caption:focus,
.project-grid .grid-item .caption.hover,
.project-grid .grid-item .caption:hover {
  bottom: 0 !important;
  opacity: 1;
}
@media only screen and (min-width: 640px) {
  .project-grid .grid-item {
    height: 42vw;
  }
  .project-grid .grid-item.grid-intro {
    height: 42vw;
  }
  .project-grid .grid-item.grid-intro.intro-text {
    height: initial;
  }
  .project-grid .grid-item.grid-intro.intro-text .project-description {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    padding: 5.4rem;
    height: 100%;
    flex-direction: column;
    justify-content: center;
  }
  .project-grid .grid-item.grid-intro.intro-text .project-description q {
    display: block;
    font-size: calc(1.8rem + 0.5vmin);
  }
  .project-grid .grid-item.intro-image {
    -webkit-box-shadow: 2px 0 0 #231F20;
    -moz-box-shadow: 2px 0 0 #231F20;
    box-shadow: 2px 0 0 #231F20;
  }
  .project-grid .grid-item.half {
    width: 50%;
  }
  .project-grid .grid-item.forty {
    width: 40%;
  }
  .project-grid .grid-item.sixty {
    width: 60%;
  }
  .project-grid .grid-item .slideshow {
    height: 42vw;
  }
  .project-grid .grid-item .slideshow .slide {
    height: 42vw;
  }
  .project-grid .grid-item figure.center img, .project-grid .grid-item figure.center video {
    max-width: calc(100% - 7.2rem);
  }
  .project-grid .grid-item figure.center video {
    max-height: calc(100% - 10.8rem);
  }
  .project-grid .grid-item .caption,
.project-grid .grid-item figcaption {
    bottom: -7.2rem;
    min-height: 7.2rem;
  }
  .project-grid .grid-item .caption p {
    max-width: 60vw;
    margin: 0 auto;
  }
}
@media only screen and (min-width: 1024px) {
  .project-grid .grid-item.grid-intro.intro-text .project-description q {
    font-size: calc(2rem + 0.5vw);
  }
  .project-grid .grid-item figure.center img, .project-grid .grid-item figure.center video {
    max-width: calc(100% - 14.4rem);
  }
  .project-grid .grid-item figure.center video {
    max-height: calc(100% - 14.4rem);
  }
  .project-grid .grid-item .caption {
    padding: 0.9rem 2.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .project-grid .grid-item.grid-intro.intro-text .project-description {
    padding: 7.2rem;
  }
  .project-grid .grid-item.grid-intro.intro-text .project-description q {
    font-size: calc(2rem + 1vw);
  }
  .project-grid .grid-item .caption {
    padding: 0.9rem 3.6rem;
  }
}

nav.three-up {
  text-align: center;
  border-top: 2px solid #231F20;
}
nav.three-up ul {
  letter-spacing: -0.31em;
  text-rendering: optimizeLegibility;
}
nav.three-up li {
  letter-spacing: normal;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
  *display: inline;
  vertical-align: top;
  width: 33.33333%;
  -webkit-box-shadow: 2px 0 0 #231F20;
  -moz-box-shadow: 2px 0 0 #231F20;
  box-shadow: 2px 0 0 #231F20;
}
nav.three-up li + li {
  border-left: 2px solid #231F20;
}
nav.three-up a {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 16.66666vw;
  padding: 0 1.8rem;
  color: #231F20;
  background-color: #fff;
}
body:not(.pause-animations) nav.three-up a {
  will-change: background-color;
  -webkit-transition: background-color 0.375s ease-in-out;
  -moz-transition: background-color 0.375s ease-in-out;
  -o-transition: background-color 0.375s ease-in-out;
  transition: background-color 0.375s ease-in-out;
}
nav.three-up a.active {
  color: #231F20;
  background-color: rgba(255, 255, 255, 0);
}
nav.three-up.lite a {
  height: 4.8rem;
}
@media only screen and (min-width: 640px) {
  nav.three-up.lite a {
    height: 7.2rem;
  }
}
@media only screen and (max-width: 930px) {
  nav.three-up span {
    display: none;
  }
}

.modal-close {
  position: absolute;
  top: 10rem;
  right: 0;
  z-index: 1;
  padding: 3.2rem 4.8rem;
  z-index: 2;
}
.modal-close svg {
  fill: #231F20;
  width: 1.8rem;
  height: 1.8rem;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #cde4d9;
  color: #231F20;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s linear 0.375s, opacity 0.375s linear;
  will-change: visibility, opacity;
}
.modal a {
  color: #231F20;
  /*
  		&:hover {
  			color: $red;
  		}
  */
}
.modal.show {
  visibility: visible;
  opacity: 0.99999;
  transition-delay: 0s;
}
.modal .fullscreen {
  height: 100%;
  display: flex;
  align-items: center;
}
.modal.timeout-modal {
  /*
  		background-color: $green;
  		color: $black;
  */
  /*
  		.modal-close {
  			svg {
  				fill: $white;
  			}
  		}
  */
}
.modal.timeout-modal .slide {
  padding: 12.8rem 3.6rem 16.2rem;
}
@media only screen and (min-width: 640px) {
  .modal.timeout-modal .slide {
    padding: 12.8rem 5.4rem 16.2rem;
  }
}
@media only screen and (min-width: 1024px) {
  .modal.timeout-modal .slide {
    padding: 12.8rem 14.4rem 16.2rem;
  }
}
.modal.timeout-modal q {
  display: block;
  margin: 0 auto;
  max-width: 72rem;
}
@media only screen and (min-width: 1200px) {
  .modal.timeout-modal q {
    font-size: calc(4.8rem + 1vmin);
    max-width: 84rem;
  }
}
.modal.error-modal {
  background-color: #EF4220;
  color: #fff;
  text-align: center;
}
.modal.error-modal .slide {
  width: 100%;
  padding: 12.8rem 7.2rem;
}
@media only screen and (min-width: 1024px) {
  .modal.error-modal .slide {
    padding: 12.8rem 14.4rem 7.2rem;
  }
}
.modal.error-modal h4 {
  margin-top: 3.6rem;
}
.modal.error-modal a {
  color: #fff;
  padding-bottom: 1px;
  background: -webkit-linear-gradient(#EF4220, #EF4220), -webkit-linear-gradient(#EF4220, #EF4220), -webkit-linear-gradient(#fff, #fff);
  background: -moz-linear-gradient(#EF4220, #EF4220), -moz-linear-gradient(#EF4220, #EF4220), -moz-linear-gradient(#fff, #fff);
  background: -o-linear-gradient(#EF4220, #EF4220), -o-linear-gradient(#EF4220, #EF4220), -o-linear-gradient(#fff, #fff);
  background: -ms-linear-gradient(#EF4220, #EF4220), -ms-linear-gradient(#EF4220, #EF4220), -ms-linear-gradient(#fff, #fff);
  background: linear-gradient(#EF4220, #EF4220), linear-gradient(#EF4220, #EF4220), linear-gradient(#fff, #fff);
  -webkit-background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  -moz-background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  background-repeat: no-repeat, no-repeat, repeat-x;
  text-shadow: 0.03em 0 #EF4220, -0.03em 0 #EF4220, 0 0.03em #EF4220, 0 -0.03em #EF4220, 0.06em 0 #EF4220, -0.06em 0 #EF4220, 0.09em 0 #EF4220, -0.09em 0 #EF4220, 0.12em 0 #EF4220, -0.12em 0 #EF4220, 0.15em 0 #EF4220, -0.15em 0 #EF4220;
  background-position: 0 85.2%, 100% 85.2%, 0 85.2%;
}
.modal.error-modal a:hover {
  color: #fff;
}
.modal .four-oh-four {
  text-shadow: 0 0 15px #231F20;
  background-position: 50% 50%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.clock {
  position: absolute;
  bottom: 3.6rem;
  left: 50%;
  width: 10vh;
  height: 10vh;
  margin-left: -5vh;
  border: 2px solid #231F20;
  border-radius: 50%;
}

.clock-face {
  width: 100%;
  height: 100%;
}
.clock-face::after,
.clock-face div {
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #231F20;
}
.clock-face::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  margin: -4px 0 0 -4px;
  border-radius: 50%;
}
.clock-face div {
  width: 0;
  height: 0;
}
.clock-face div.clock-hour {
  margin: -2px 0 -2px -25%;
  padding: 2px 0 2px 25%;
  -webkit-transform-origin: 100% 50%;
  -moz-transform-origin: 100% 50%;
  -ms-transform-origin: 100% 50%;
  -o-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
  border-radius: 1px;
}
.clock-face div.clock-minute {
  margin: -40% -2px 0 -1px;
  padding: 40% 2px 0 1px;
  -webkit-transform-origin: 50% 100%;
  -moz-transform-origin: 50% 100%;
  -ms-transform-origin: 50% 100%;
  -o-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
  border-radius: 1px;
}
.clock-face div.clock-second {
  margin: -40% -1px 0 0;
  padding: 40% 1px 0;
  -webkit-transform-origin: 50% 100%;
  -moz-transform-origin: 50% 100%;
  -ms-transform-origin: 50% 100%;
  -o-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
  opacity: 0.5;
}

.signup-modal .form-wrap {
  display: block;
  max-width: 64rem;
  margin: 0 auto;
  text-align: center;
  padding: 0 3.6rem;
}
.signup-modal form {
  margin: 3.6rem auto 0;
}
.signup-modal .input-wrap {
  letter-spacing: -0.31em;
  text-rendering: optimizeLegibility;
}
.signup-modal input {
  width: 100%;
  border: 2px solid;
  background: #fff;
  color: #231F20;
  font: inherit;
  font-size: 2rem;
  line-height: 4.8rem;
  padding: 0 1.2rem;
  height: 5.2rem;
  resize: none;
  -webkit-appearance: none;
  -webkit-border-radius: 0;
  border-radius: 0;
  margin-bottom: 2.4rem;
}
.signup-modal .name_first,
.signup-modal .name_last {
  letter-spacing: normal;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
  *display: inline;
  width: 49.99999%;
}
.signup-modal .name_first {
  padding-right: 1.2rem;
}
.signup-modal .name_last {
  padding-left: 1.2rem;
}
.signup-modal ul {
  display: block;
  margin: 0 0 2.4rem;
}
.signup-modal input[type=submit] {
  display: block;
  width: 50%;
  margin: 0 auto;
  border: 2px solid #231F20;
  background: #fff;
  color: #231F20;
  font-size: 2.2rem;
  line-height: 4.8rem;
  height: 5.2rem;
}
.signup-modal input[type=submit]:focus:not(:active), .signup-modal input[type=submit]:hover {
  background: #231F20;
  color: #fff;
}
.signup-modal .response {
  margin-top: 2.4rem;
}

.slideshow {
  position: relative;
  overflow: hidden;
  z-index: 0;
  width: 100%;
  max-height: calc(100vh);
  margin: 0 auto;
}
.slideshow .slick-list {
  height: 100%;
  position: relative;
  z-index: 1;
}
.slideshow .slick-slide {
  position: relative;
}
.slideshow .slick-track {
  position: relative;
  height: 100%;
}
.slideshow .slick-slide {
  letter-spacing: normal;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
  *display: inline;
  vertical-align: middle;
  text-align: center;
  width: 100%;
  height: 100%;
  position: relative;
}
.slideshow .slick-slide .slide-wrap {
  width: 100%;
}
.slideshow .slick-slide .caption {
  margin-top: 3.6rem;
  /*
  			position: absolute;
  			bottom: calc(100vh/13 * 0.5);
  			left: calc(100vw/23);
  			right: calc(100vw/23);
  */
}
.slideshow .slick-slide .caption h6 {
  display: block;
  max-width: 30rem;
  margin: 0 auto;
}
.slideshow button.slick-prev,
.slideshow button.slick-next {
  position: absolute;
  top: 0;
  display: block;
  width: 50%;
  height: 100%;
  z-index: 2;
  text-indent: 1500%;
  white-space: nowrap;
  overflow: hidden;
  border: 0;
}
.slideshow.home-slideshow button.slick-prev,
.slideshow.home-slideshow button.slick-next {
  width: 12.5%;
}
.slideshow button.slick-prev {
  left: 0rem;
  /*
  		@include responsive(min, 769) {
  			left: 3.6rem;
  			@include background-size(auto 3.6rem);
  		}
  */
}
.slideshow button.slick-next {
  right: 0;
  /*
  		@include responsive(min, 769) {
  			right: 3.6rem;
  			@include background-size(auto 3.6rem);
  		}
  */
}
.slideshow .slick-dots {
  position: absolute;
  bottom: 6rem;
  left: 0;
  right: 0;
  text-align: center;
  letter-spacing: -0.31em;
  text-rendering: optimizeLegibility;
}
.slideshow .slick-dots li {
  letter-spacing: normal;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
  *display: inline;
  margin: 0 0.5rem;
}
.slideshow .slick-dots li button {
  display: block;
  width: 1rem;
  height: 1rem;
  padding: 0;
  background: transparent;
  border: 1px solid #231F20;
  border-radius: 50%;
  text-indent: 1500%;
  white-space: nowrap;
  overflow: hidden;
  font-size: 0;
  line-height: 0;
}
.slideshow .slick-dots li.slick-active button {
  background: #231F20;
}

section.quote {
  text-align: center;
}
section.quote q {
  display: block;
  max-width: 98rem;
  margin: 0 auto;
}
@media only screen and (min-width: 1200px) {
  section.quote q {
    font-size: calc(4.6rem + 1vmin);
  }
}
section.quote .quote-wrap {
  padding: 4.8rem 3.6rem 3.6rem;
}
@media only screen and (min-width: 930px) {
  section.quote .quote-wrap {
    padding: 10.8rem 7.2rem 7.2rem;
  }
}
section.quote .quote-wrap .separator:after {
  content: "";
  display: block;
  width: 2px;
  height: 6rem;
  background: #231F20;
  margin: 1.8rem auto;
}
@media only screen and (min-width: 930px) {
  section.quote .quote-wrap .separator:after {
    height: 7.5rem;
    margin: 3.6rem auto;
  }
}
section.quote.studio-intro {
  min-height: 100vh;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  /*
  		.approach-link {
  			margin-top: 3.6rem;
  			@extend %semi;
  			font-size: 1.8rem;
  			text-transform: uppercase;
  			a {
  				border-bottom: 2px solid;
  			}
  			@include responsive(min, 640) {
  				margin-top: 4.8rem;
  			}
  		}
  */
}
section.quote.reel-intro .text-wrap {
  padding-top: 0 !important;
}

section.approach-intro {
  border-top: 2px solid;
  padding: 7.2rem 3.6rem;
  text-align: center;
}
@media only screen and (min-width: 930px) {
  section.approach-intro {
    padding: 7.2rem;
  }
}

.centered {
  text-align: center;
}

section.donate {
  padding: 9rem 0 7.2rem;
}
section.donate h2 {
  border: 0 !important;
}
@media only screen and (min-width: 930px) {
  section.donate {
    padding: 7.2rem 0;
  }
}

section.donate-resources {
  padding-bottom: 7.2rem !important;
}

.text-grid {
  text-align: center;
  margin-top: 1.8rem;
  margin-bottom: -3.6rem;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  /* Safari 7.0+ */
  flex-flow: row wrap;
  -webkit-justify-content: center;
  /* Safari 7.0+ */
  justify-content: center;
}
.text-grid .grid-item {
  width: 100%;
  text-align: left;
}
.text-grid .grid-item-inner {
  padding-bottom: 3.6rem;
}
.text-grid .button-wrap {
  margin-top: 1.8rem;
}
.text-grid a.button {
  display: inline-block;
}
@media only screen and (min-width: 640px) {
  .text-grid .grid-item {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: column;
    /* Safari 7.0+ */
    flex-flow: column;
    width: 50%;
  }
  .text-grid .grid-item-inner {
    position: relative;
    height: 100%;
    padding: 0 1.8rem 12.6rem;
  }
  .text-grid .grid-item-inner .button-wrap {
    position: absolute;
    bottom: 5.4rem;
  }
}
@media only screen and (min-width: 930px) {
  .text-grid {
    max-width: 75%;
    max-width: calc(75% + 21.6rem);
    margin: 3.6rem auto -3.6rem;
  }
  .text-grid .grid-item {
    width: 33.333%;
  }
}

ul.columns {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
  -webkit-column-gap: 3.6rem;
  -moz-column-gap: 3.6rem;
  column-gap: 3.6rem;
  /*
  	   -moz-column-fill: balance;
  			column-fill: balance;
  	-webkit-column-break-inside: avoid;
  	          page-break-inside: avoid;
  	               break-inside: avoid;
  */
}
@media only screen and (min-width: 1600px) {
  ul.columns {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 3.6rem;
    -moz-column-gap: 3.6rem;
    column-gap: 3.6rem;
    /*
    	   -moz-column-fill: balance;
    			column-fill: balance;
    	-webkit-column-break-inside: avoid;
    	          page-break-inside: avoid;
    	               break-inside: avoid;
    */
  }
}
ul.columns li {
  letter-spacing: normal;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
  *display: inline;
  width: 100%;
}

.studio-video {
  position: relative;
}
.studio-video .video-wrap {
  width: 100%;
  height: 72vw;
  border-top: 2px solid;
  overflow: hidden;
  /*
  		.reel-link {
  			a {
  				display: block;
  				width: 100%;
  				text-align: center;
  				font-size: calc(3.6rem + 2vw);
  				line-height: 33.33333vw;
  				background-color: $black;
  				color: $white;
  			}
  		}
  */
}
body:not(.pause-animations) .studio-video .video-wrap {
  will-change: transform;
  -webkit-transition: transform 0.75s ease-in-out;
  -moz-transition: transform 0.75s ease-in-out;
  -o-transition: transform 0.75s ease-in-out;
  transition: transform 0.75s ease-in-out;
}
.studio-video .video-wrap video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
.studio-video .video-wrap.mobile.ready:after {
  display: none;
}
.studio-video img {
  display: none;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
body.pause-animations .studio-video .video-wrap img {
  display: block;
}
body.pause-animations .studio-video .video-wrap video {
  display: none;
}
.studio-video .text-wrap.studio-text {
  font-size: 1.5rem;
  line-height: 1.45;
}
body:not(.pause-animations) .studio-video .text-wrap.studio-text {
  will-change: transform;
  -webkit-transition: transform 0.75s ease-in-out;
  -moz-transition: transform 0.75s ease-in-out;
  -o-transition: transform 0.75s ease-in-out;
  transition: transform 0.75s ease-in-out;
}
.studio-video .text-wrap.studio-text a {
  padding-bottom: 1px;
  background: -webkit-linear-gradient(#FAF6F0, #FAF6F0), -webkit-linear-gradient(#FAF6F0, #FAF6F0), -webkit-linear-gradient(#231F20, #231F20);
  background: -moz-linear-gradient(#FAF6F0, #FAF6F0), -moz-linear-gradient(#FAF6F0, #FAF6F0), -moz-linear-gradient(#231F20, #231F20);
  background: -o-linear-gradient(#FAF6F0, #FAF6F0), -o-linear-gradient(#FAF6F0, #FAF6F0), -o-linear-gradient(#231F20, #231F20);
  background: -ms-linear-gradient(#FAF6F0, #FAF6F0), -ms-linear-gradient(#FAF6F0, #FAF6F0), -ms-linear-gradient(#231F20, #231F20);
  background: linear-gradient(#FAF6F0, #FAF6F0), linear-gradient(#FAF6F0, #FAF6F0), linear-gradient(#231F20, #231F20);
  -webkit-background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  -moz-background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  background-repeat: no-repeat, no-repeat, repeat-x;
  text-shadow: 0.03em 0 #FAF6F0, -0.03em 0 #FAF6F0, 0 0.03em #FAF6F0, 0 -0.03em #FAF6F0, 0.06em 0 #FAF6F0, -0.06em 0 #FAF6F0, 0.09em 0 #FAF6F0, -0.09em 0 #FAF6F0, 0.12em 0 #FAF6F0, -0.12em 0 #FAF6F0, 0.15em 0 #FAF6F0, -0.15em 0 #FAF6F0;
  background-position: 0 85.2%, 100% 85.2%, 0 85.2%;
  padding-bottom: 3px;
}
@media only screen and (max-width: 768px) {
  .studio-video .text-wrap.studio-text {
    padding: 0 !important;
    margin-bottom: -2px;
  }
  .studio-video .info-title {
    line-height: 5.6rem;
    padding: 1.8rem;
    border-bottom: 2px solid;
    position: relative;
  }
  body:not(.pause-animations) .studio-video .info-title {
    will-change: auto;
    -webkit-transition: all 0.25s ease-in-out;
    -moz-transition: all 0.25s ease-in-out;
    -o-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out;
  }
  .studio-video .info-title::after {
    content: "+";
    display: block;
    position: absolute;
    top: 50%;
    right: 1.8rem;
    cursor: pointer;
    line-height: inherit;
    font-size: inherit;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
    -webkit-transform-origin: 50% 60%;
    -moz-transform-origin: 50% 60%;
    -ms-transform-origin: 50% 60%;
    -o-transform-origin: 50% 60%;
    transform-origin: 50% 60%;
  }
  .studio-video .info-title.open {
    border-bottom-color: transparent;
    padding: 0 1.8rem;
  }
  .studio-video .info-title.open::after {
    content: "–";
  }
  .studio-video .info-block {
    padding: 0 1.8rem 2.4rem !important;
    border-bottom: 2px solid;
  }
}
.studio-video .info-block {
  padding: 1.8rem 0;
}
.studio-video h3 + p,
.studio-video h3 + ul {
  margin-top: 1.2rem;
}
.studio-video ul li {
  padding: 2px 0;
  line-height: 1.2;
}
.studio-video .client-list {
  letter-spacing: -0.31em;
  text-rendering: optimizeLegibility;
  margin-bottom: -1.8rem;
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
  -webkit-column-gap: 1.8rem;
  -moz-column-gap: 1.8rem;
  column-gap: 1.8rem;
  /*
  	   -moz-column-fill: balance;
  			column-fill: balance;
  	-webkit-column-break-inside: avoid;
  	          page-break-inside: avoid;
  	               break-inside: avoid;
  */
  /*
  		@include responsive(min, 1600) {
  			@include columns(3,3.6rem);
  		}
  */
}
@media only screen and (min-width: 769px) {
  .studio-video .client-list {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 3.6rem;
    -moz-column-gap: 3.6rem;
    column-gap: 3.6rem;
    /*
    	   -moz-column-fill: balance;
    			column-fill: balance;
    	-webkit-column-break-inside: avoid;
    	          page-break-inside: avoid;
    	               break-inside: avoid;
    */
  }
}
.studio-video .client-list ul {
  letter-spacing: normal;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
  *display: inline;
  width: 100%;
  margin-bottom: 1.8rem;
  list-style: none;
}
@media only screen and (min-width: 769px) {
  .studio-video .client-list ul {
    margin-bottom: 2.4rem;
    font-size: inherit;
  }
}
@media only screen and (min-width: 769px) {
  .studio-video .video-wrap {
    position: absolute;
    top: 0;
    left: -25vw;
    height: 100vh;
    border: 0;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
    /*
    			.reel-link {
    				position: fixed;
    				bottom: 0;
    				left: 0;
    				a {
    					height: 33.3333vw;
    					padding: 3.6rem;
    				}
    			}
    */
  }
  .studio-video .video-wrap.fixed {
    position: fixed;
  }
  .studio-video .video-wrap.bottom {
    top: auto;
    bottom: 0;
  }
  .studio-video section.text {
    padding-left: 50vw;
  }
  .studio-video section.text .text-wrap {
    border-left: 2px solid;
  }
  .studio-video .video-push {
    position: absolute;
    top: 0;
    left: 0;
    width: 12.5vw;
    height: 100%;
    /* 			@include devblock(red); */
  }
  .studio-video.pushed .video-wrap.fixed {
    -webkit-transform: translateX(18.75vw);
    -moz-transform: translateX(18.75vw);
    -ms-transform: translateX(18.75vw);
    -o-transform: translateX(18.75vw);
    transform: translateX(18.75vw);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
  }
  .studio-video.pushed .video-wrap.fixed + .text .text-wrap {
    -webkit-transform: translateX(37.5vw);
    -moz-transform: translateX(37.5vw);
    -ms-transform: translateX(37.5vw);
    -o-transform: translateX(37.5vw);
    transform: translateX(37.5vw);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
  }
}

.white-bg {
  background-color: #fff;
}

.black-bg {
  background-color: #231F20;
  color: #fff;
}
.black-bg a {
  color: #fff;
}
.black-bg a:not(.button) {
  text-decoration: underline;
}
.black-bg a.button {
  border-color: #fff;
}
.black-bg a.button:hover, .black-bg a.button:focus:not(:active) {
  background-color: #fff;
  color: #231F20;
}

.green-bg {
  background-color: #cde4d9;
}

.cream-bg {
  background-color: #FAF6F0;
}

.peach-bg {
  background-color: #feede5;
}

.gray-bg {
  background-color: #ddddd7;
}

section.photo {
  border-top: 2px solid;
  /*
  	@include responsive(min, 640) {
  		img {
  			max-width: 84%;
  			max-width: calc(75% + 14.4rem);
  		}
  	}
  */
  /*
  	@include responsive(min, 1200) {
  		img {
  			max-width: 72%;
  			max-width: calc(60% + 14.4rem);
  		}
  	}
  */
}
section.photo .photo-wrap {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  align-content: center;
  padding: 1.8rem 1.8rem 0;
}
@media only screen and (min-width: 640px) {
  section.photo .photo-wrap {
    padding: 2.4rem 3.6rem;
  }
}
@media only screen and (min-width: 930px) {
  section.photo .photo-wrap {
    padding: 7.2rem 10.8rem;
  }
}
section.photo img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  max-height: calc(100vh - 17.6rem);
}
@media only screen and (min-width: 930px) {
  section.photo button.slick-prev {
    left: 1.8rem;
  }
  section.photo button.slick-next {
    right: 1.8rem;
  }
  section.photo img {
    max-width: 84%;
    max-width: calc(75% + 14.4rem);
  }
}
section.photo.studio-photos {
  border-top: 0;
}
section.photo.studio-photos .photo-wrap {
  padding-top: 0;
  padding-bottom: 3.6rem;
}
@media only screen and (min-width: 769px) {
  section.photo.studio-photos .photo-wrap {
    padding-top: 3.6rem;
    padding-bottom: 10.8rem;
  }
}

.approach-block section.photo {
  border-top: 0;
}

section.text {
  border-top: 2px solid;
  /*
  	.client-list {
  		width: 100%;
  // 		@include nospace;
  		@include columns(2, 3.6rem);
  		@include responsive(min, 769) {
  			@include columns(3, 3.6rem);
  		}
  		@include responsive(min, 1200) {
  			@include columns(4, 3.6rem);
  		}
  		ul {
  			@include inline-block;
  			width: 100%;
  			margin-bottom: 1.8rem;
  			@include responsive(min, 640) {
  				margin-bottom: 3.6rem;
  			}
  		}
  		em {
  			font-size: 1.1rem;
  			color: $gray;
  		}
  	}
  */
}
section.text .text-wrap {
  padding: 3.6rem 1.8rem 1.8rem;
}
@media only screen and (min-width: 640px) {
  section.text .text-wrap {
    padding: 4.8rem 3.6rem 1.8rem;
  }
}
@media only screen and (min-width: 930px) {
  section.text .text-wrap {
    padding: 7.2rem 10.8rem 3.6rem;
    font-size: 1.8rem;
  }
  section.text .text-wrap.narrow {
    max-width: 75%;
    max-width: calc(75% + 21.6rem);
    margin: 0 auto;
  }
}
@media only screen and (min-width: 1200px) {
  section.text .text-wrap.narrow {
    max-width: 60%;
    max-width: calc(60% + 21.6rem);
  }
}
section.text .text-grid {
  padding: 0 3.6rem;
}
section.text h2 {
  padding-bottom: 1rem;
  border-bottom: 2px solid;
  margin-bottom: 1.8rem;
}
section.text h2 span {
  font-size: 1.1rem;
  color: #a69b9e;
  margin-left: 1.8rem;
}
section.text .two-col {
  width: 100%;
  padding-bottom: 1.8rem;
  /*
  		p {
  			@include inline-block;
   			vertical-align: top;
  			width: 100%;
  		}
  */
  /*
  		> div {
  			padding-bottom: 1.8rem;
  		}
  */
}
@media only screen and (min-width: 769px) {
  section.text .two-col {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 3.6rem;
    -moz-column-gap: 3.6rem;
    column-gap: 3.6rem;
    /*
    	   -moz-column-fill: balance;
    			column-fill: balance;
    	-webkit-column-break-inside: avoid;
    	          page-break-inside: avoid;
    	               break-inside: avoid;
    */
    padding-bottom: 3.6rem;
    /*
    			@include flex;
    			align-items: baseline;
    			justify-content: space-between;
    			> div {
    				width: 50%;
    				padding: 0 1.8rem 3.6rem 0;
    				+ div {
    					padding: 0 0 3.6rem 1.8rem;
    				}
    			}
    */
  }
}
section.text.studio-team h2 {
  border: 0;
  margin: 0;
}
section.text.studio-team .text-wrap {
  padding-bottom: 0 !important;
}
@media only screen and (max-width: 768px) {
  section.text.studio-team .text-wrap {
    padding-left: 1.8rem !important;
    padding-right: 1.8rem !important;
  }
}
section.text .team-list {
  margin: 0 -1.8rem 3.6rem;
}
section.text .team-list .team-member {
  padding: 0 1.8rem;
}
section.text .team-list .team-member p {
  display: block;
  width: 100%;
  padding-top: 1rem;
  border-top: 2px solid;
  margin-top: 1.8rem;
}
@media only screen and (min-width: 1024px) {
  section.text .team-list .team-member {
    padding-bottom: 3.6rem;
  }
}
@media only screen and (max-width: 320px) {
  section.text .team-list .team-member {
    width: 100% !important;
  }
}
@media only screen and (max-width: 639px) {
  section.text .team-list {
    letter-spacing: -0.31em;
    text-rendering: optimizeLegibility;
  }
  section.text .team-list .team-member {
    letter-spacing: normal;
    display: -moz-inline-stack;
    display: inline-block;
    zoom: 1;
    *display: inline;
    vertical-align: top;
    width: 50%;
  }
}
@media only screen and (min-width: 640px) {
  section.text .team-list {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    /* Safari 7.0+ */
    flex-flow: row wrap;
  }
  section.text .team-list .team-member {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    width: 33.33333%;
    padding-bottom: 1.8rem;
  }
}

.studio-wrap section.text .text-wrap {
  padding: 3.6rem 0;
}
@media only screen and (min-width: 640px) {
  .studio-wrap section.text .text-wrap {
    padding: 4.8rem 3.6rem;
  }
}
@media only screen and (min-width: 930px) {
  .studio-wrap section.text .text-wrap {
    padding: 7.2rem 10.8rem;
  }
}
.studio-wrap .quote-wrap {
  padding-bottom: 3.6rem !important;
}
.studio-wrap .quote-wrap .text-wrap {
  padding-top: 0 !important;
  font-size: 125%;
}
@media only screen and (min-width: 930px) {
  .studio-wrap .quote-wrap .text-wrap {
    font-size: 150%;
  }
}

section.programming {
  border-top: 2px solid;
  background-color: #fbf9f5;
  overflow: hidden;
}
section.programming .programming-slides {
  position: relative;
  width: 300%;
  width: 300vw;
  min-height: 100vw;
  border-top: 2px solid;
  overflow: hidden;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
  /*
  		@include responsive(min, 640) {
  			height: 90%;
  			height: calc(100vh - 7.2rem);
  		}
  */
  /*
  		@include responsive(min, 450) {
  			height: 50vh;
  		}
  		@include responsive(min, 640) {
  			height: 50vw;
  		}
  		@include responsive(min, 1024) {
  			height: 72vh;
  		}
  */
}
body:not(.pause-animations) section.programming .programming-slides {
  will-change: transform;
  -webkit-transition: transform 0.75s ease-in-out;
  -moz-transition: transform 0.75s ease-in-out;
  -o-transition: transform 0.75s ease-in-out;
  transition: transform 0.75s ease-in-out;
}
@media only screen and (min-width: 769px) {
  section.programming .programming-slides {
    min-height: initial;
    height: 90%;
    height: calc(100vh - 16rem);
  }
}
section.programming .programming-slides[data-slide="0"] {
  -webkit-transform: translateX(0);
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -o-transform: translateX(0);
  transform: translateX(0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
section.programming .programming-slides[data-slide="1"] {
  -webkit-transform: translateX(-100vw);
  -moz-transform: translateX(-100vw);
  -ms-transform: translateX(-100vw);
  -o-transform: translateX(-100vw);
  transform: translateX(-100vw);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
section.programming .programming-slides[data-slide="2"] {
  -webkit-transform: translateX(-200vw);
  -moz-transform: translateX(-200vw);
  -ms-transform: translateX(-200vw);
  -o-transform: translateX(-200vw);
  transform: translateX(-200vw);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
section.programming .programming-slides:not(.moving) [aria-hidden=true] {
  visibility: hidden;
}
section.programming .programming-slides.moving .program-slide:not(:first-child):after {
  content: "";
  display: block;
  width: 2px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1000;
  background-color: #231F20;
}
section.programming .program-slide {
  width: 100vw;
  height: 100%;
  position: relative;
  /*
  		&:nth-child(1) .slide-wrap {
  			justify-content: flex-start;
  			.program-text {
  				@include box-shadow(2px 0 0 $black);
  			}
  		}
  		&:nth-child(2) .slide-wrap {
  			justify-content: space-around;
  			.program-text {
  				border-left: 2px solid;
  				@include box-shadow(2px 0 0 $black);
  			}
  		}
  		&:nth-child(3) .slide-wrap {
  			justify-content: flex-end;
  			.program-text {
  				border-left: 2px solid;
  			}
  		}
  */
}
section.programming .program-slide .slideshow,
section.programming .program-slide .slide-image {
  width: 100vw;
  height: 56.25vw;
  z-index: 0;
}
@media only screen and (min-width: 769px) {
  section.programming .program-slide .slideshow,
section.programming .program-slide .slide-image {
    position: absolute;
    right: 0;
    width: 50%;
    width: 50vw;
    height: 100%;
  }
}
section.programming .program-slide .slideshow .slide {
  width: 100%;
  height: 100%;
}
section.programming .program-slide .slideshow .slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
section.programming .program-slide .slide-wrap {
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
@media only screen and (min-width: 769px) {
  section.programming .program-slide .slide-wrap {
    height: 100%;
    justify-content: flex-start;
    align-items: flex-end;
  }
}
section.programming .program-text {
  display: block;
  width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  background-color: rgba(251, 249, 245, 0.96);
  padding: 1.8rem;
  min-height: 43.75vw;
  -webkit-box-shadow: 0 -2px 0 #231F20;
  -moz-box-shadow: 0 -2px 0 #231F20;
  box-shadow: 0 -2px 0 #231F20;
  position: relative;
  z-index: 1;
  /*
  		p {
  			@extend %light;
  			em {
  				@extend %lightItalic;
  			}
  		}
  */
}
section.programming .program-text p + ul,
section.programming .program-text h4 + p {
  margin-top: 1.8rem;
}
section.programming .program-text li {
  margin-left: 1.8rem;
  text-indent: -1.8rem;
}
section.programming .program-text a {
  padding-bottom: 1px;
  background: -webkit-linear-gradient(#FAF6F0, #FAF6F0), -webkit-linear-gradient(#FAF6F0, #FAF6F0), -webkit-linear-gradient(#231F20, #231F20);
  background: -moz-linear-gradient(#FAF6F0, #FAF6F0), -moz-linear-gradient(#FAF6F0, #FAF6F0), -moz-linear-gradient(#231F20, #231F20);
  background: -o-linear-gradient(#FAF6F0, #FAF6F0), -o-linear-gradient(#FAF6F0, #FAF6F0), -o-linear-gradient(#231F20, #231F20);
  background: -ms-linear-gradient(#FAF6F0, #FAF6F0), -ms-linear-gradient(#FAF6F0, #FAF6F0), -ms-linear-gradient(#231F20, #231F20);
  background: linear-gradient(#FAF6F0, #FAF6F0), linear-gradient(#FAF6F0, #FAF6F0), linear-gradient(#231F20, #231F20);
  -webkit-background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  -moz-background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  background-repeat: no-repeat, no-repeat, repeat-x;
  text-shadow: 0.03em 0 #FAF6F0, -0.03em 0 #FAF6F0, 0 0.03em #FAF6F0, 0 -0.03em #FAF6F0, 0.06em 0 #FAF6F0, -0.06em 0 #FAF6F0, 0.09em 0 #FAF6F0, -0.09em 0 #FAF6F0, 0.12em 0 #FAF6F0, -0.12em 0 #FAF6F0, 0.15em 0 #FAF6F0, -0.15em 0 #FAF6F0;
  background-position: 0 85.2%, 100% 85.2%, 0 85.2%;
}
section.programming .program-text p.link {
  margin-top: 3.6rem;
}
section.programming .program-text p.link a {
  padding-bottom: 3px;
}
section.programming .program-text .more {
  display: none;
}
@media only screen and (min-width: 769px) {
  section.programming .program-text {
    width: 50%;
    min-height: initial;
    height: 100%;
    padding: 4.8rem 7.2rem 4.8rem 4.8rem;
    -webkit-box-shadow: 2px 0 0 #231F20;
    -moz-box-shadow: 2px 0 0 #231F20;
    box-shadow: 2px 0 0 #231F20;
  }
  section.programming .program-text .more {
    display: block;
    margin-top: 1.8rem;
  }
}
@media only screen and (min-width: 769px) and (min-height: 720px) {
  section.programming .program-text p.link {
    position: absolute;
    bottom: 4.8rem;
    margin: 0;
  }
}
@media only screen and (min-width: 1024px) {
  section.programming .program-text ul,
section.programming .program-text p:not(.link) {
    font-size: 1.8rem;
  }
}

section.reel-book {
  border-top: 2px solid;
  background-color: #fbf9f5;
  overflow: hidden;
}
section.reel-book .two-up {
  position: relative;
  width: 200%;
  width: 200vw;
  /*
  		height: 90%;
  		height: calc(100vh - 16rem);
  */
  border-top: 2px solid;
  overflow: hidden;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
body:not(.pause-animations) section.reel-book .two-up {
  will-change: transform;
  -webkit-transition: transform 0.75s ease-in-out;
  -moz-transition: transform 0.75s ease-in-out;
  -o-transition: transform 0.75s ease-in-out;
  transition: transform 0.75s ease-in-out;
}
section.reel-book .two-up[data-slide="0"] {
  -webkit-transform: translateX(0);
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -o-transform: translateX(0);
  transform: translateX(0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
section.reel-book .two-up[data-slide="1"] {
  -webkit-transform: translateX(-100vw);
  -moz-transform: translateX(-100vw);
  -ms-transform: translateX(-100vw);
  -o-transform: translateX(-100vw);
  transform: translateX(-100vw);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
section.reel-book .two-up.moving .slide:not(:first-child):after {
  content: "";
  display: block;
  width: 2px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1000;
  background-color: #231F20;
}
section.reel-book .each {
  width: 100vw;
  height: 56.25vw;
  position: relative;
}
section.reel-book .each .fluid-width-video-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}
section.reel-book .each .slideshow,
section.reel-book .each .slide-image {
  position: absolute;
  width: 100vw;
  height: 100%;
  z-index: 0;
}
section.reel-book .each .slideshow .slide {
  width: 100%;
  height: 100%;
}
@media only screen and (min-width: 640px) {
  section.reel-book .each .slideshow .slide {
    padding-bottom: 2.8rem;
  }
}
section.reel-book .each .slideshow .slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  font-family: "object-fit: contain;";
}
section.reel-book .download-button {
  position: absolute;
  bottom: 5.6rem;
  left: 0;
  right: 0;
  text-align: center;
  display: none;
}
@media only screen and (min-width: 640px) {
  section.reel-book .download-button {
    display: block;
  }
}

.button-wrap,
.button-wrap + .admin-edit {
  margin-top: 2.8rem;
}

.button {
  padding: 1rem 2rem;
  border: 2px solid;
  font-size: 1.4rem;
}

.split-video-text {
  border-top: 2px solid;
}

.scroll-wrap,
.scroll-snap {
  position: relative;
}

.cover {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  width: 100vw;
  height: 100%;
  height: 100vh;
  backface-visibility: hidden;
  text-align: center;
  color: #fff;
}
.cover .cover-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: 50% 50%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.v-center {
  display: table;
  width: 100%;
  height: 100%;
}
.v-center > * {
  display: table-cell;
  width: 100%;
  height: 100%;
  vertical-align: middle;
}

.split {
  letter-spacing: -0.31em;
  text-rendering: optimizeLegibility;
}
.split .half {
  letter-spacing: normal;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
  *display: inline;
  width: 50%;
  width: 50vw;
  vertical-align: top;
  position: relative;
}
.split .half .half-wrap {
  padding: 3.6rem 1.8rem;
}
@media only screen and (min-width: 640px) {
  .split .half .half-wrap {
    padding: 4.8rem 3.6rem;
  }
}
@media only screen and (min-width: 930px) {
  .split .half .half-wrap {
    padding: 7.2rem 10.8rem 7.2rem 7.2rem;
    font-size: 1.8rem;
  }
}
.split .half .half-wrap.approach-text {
  background-color: #fff;
  border-left: 2px solid;
}
.split .half.right:first-child {
  margin-left: 50%;
  margin-left: 50vw;
}

section.calendar .grid-item .extended .event-details, .simple-grid .grid-item {
  padding: 2.4rem 1.8rem;
}
@media only screen and (min-width: 1024px) {
  section.calendar .grid-item .extended .event-details, .simple-grid .grid-item {
    padding: 3.6rem 2.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  section.calendar .grid-item .extended .event-details, .simple-grid .grid-item {
    padding: 4.8rem 2.4rem;
  }
}

.simple-grid .grid-item {
  width: 50%;
  height: 50vw;
  position: relative;
  overflow: hidden;
}
.simple-grid .grid-item:nth-child(2n+1) {
  border-left: 0;
}
.simple-grid .grid-item p.link {
  position: absolute;
  bottom: 2.4rem;
}
.simple-grid .grid-item a {
  padding-bottom: 1px;
  background: -webkit-linear-gradient(#fff, #fff), -webkit-linear-gradient(#fff, #fff), -webkit-linear-gradient(#231F20, #231F20);
  background: -moz-linear-gradient(#fff, #fff), -moz-linear-gradient(#fff, #fff), -moz-linear-gradient(#231F20, #231F20);
  background: -o-linear-gradient(#fff, #fff), -o-linear-gradient(#fff, #fff), -o-linear-gradient(#231F20, #231F20);
  background: -ms-linear-gradient(#fff, #fff), -ms-linear-gradient(#fff, #fff), -ms-linear-gradient(#231F20, #231F20);
  background: linear-gradient(#fff, #fff), linear-gradient(#fff, #fff), linear-gradient(#231F20, #231F20);
  -webkit-background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  -moz-background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  background-repeat: no-repeat, no-repeat, repeat-x;
  text-shadow: 0.03em 0 #fff, -0.03em 0 #fff, 0 0.03em #fff, 0 -0.03em #fff, 0.06em 0 #fff, -0.06em 0 #fff, 0.09em 0 #fff, -0.09em 0 #fff, 0.12em 0 #fff, -0.12em 0 #fff, 0.15em 0 #fff, -0.15em 0 #fff;
  background-position: 0 85.2%, 100% 85.2%, 0 85.2%;
}
@media only screen and (min-width: 640px) {
  .simple-grid .grid-item {
    width: 33.33333%;
    height: 33.33333vw;
  }
  .simple-grid .grid-item:nth-child(2n+1) {
    border-left: 2px solid #231F20;
  }
  .simple-grid .grid-item:nth-child(3n+1) {
    border-left: 0;
  }
}
@media only screen and (min-width: 930px) {
  .simple-grid .grid-item {
    width: 25%;
    height: 25vw;
  }
  .simple-grid .grid-item:nth-child(3n+1) {
    border-left: 2px solid #231F20;
  }
  .simple-grid .grid-item:nth-child(4n+1) {
    border-left: 0;
  }
}
@media only screen and (min-width: 1024px) {
  .simple-grid .grid-item p.link {
    bottom: 3.6rem;
  }
}
@media only screen and (min-width: 1200px) {
  .simple-grid .grid-item {
    /*
    			width:  calc(100% / 6);
    			height: calc(100vw / 6);
    			&:nth-child(5n+1) {
    				border-left: 2px solid $black;
    			}
    			&:nth-child(6n+1) {
    				border-left: 0;
    			}
    */
  }
  .simple-grid .grid-item p:not(.link) {
    font-size: 1.8rem;
  }
  .simple-grid .grid-item p.link {
    bottom: 4.8rem;
  }
}

/*
.logo-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
// 	color: $white;
	overflow: hidden;
	padding: 1.8rem 1.8rem 3.6rem;
	@extend %cursorDefault;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-color: $white;
	@include background-size(80% auto);
	@include nospace;
	@include transition(background-color, 0.125s);
	> div,
	&::before {
		@include inline-block;
		vertical-align: middle;
	}
	&::before {
		content: '';
		height: 100%;
		width: 0;
	}
	p {
		font-size: 1.4rem !important;
	}
}
.logo-text {
	@include invisible(0s);
}
.grid-item:hover {
	.logo-overlay {
		background-image: none !important;
	}
	.logo-text {
		@include visible;
	}
}
*/
section.calendar {
  background-color: #cde4d9;
}
section.calendar .grid-item {
  z-index: 0;
  background-color: #fff;
  border-top: 2px solid #231F20;
  border-left: 2px solid #231F20;
  -webkit-box-shadow: 2px 2px 0 #231F20;
  -moz-box-shadow: 2px 2px 0 #231F20;
  box-shadow: 2px 2px 0 #231F20;
}
section.calendar .grid-item.past-event {
  background: #cde4d9;
  background: -moz-linear-gradient(45deg, #fff calc(50% - 1px), #cde4d9 calc(50% - 1px), #cde4d9 calc(50% + 1px), #fff calc(50% + 2px));
  background: -webkit-linear-gradient(45deg, #fff calc(50% - 1px), #cde4d9 calc(50% - 1px), #cde4d9 calc(50% + 1px), #fff calc(50% + 2px));
  background: linear-gradient(45deg, #fff calc(50% - 1px), #cde4d9 calc(50% - 1px), #cde4d9 calc(50% + 1px), #fff calc(50% + 2px));
}
section.calendar .grid-item .toggle {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 4.2rem;
  height: 4.2rem;
  background: url(i/x.svg) 50% 50% no-repeat;
  -webkit-background-size: 1.2rem;
  -moz-background-size: 1.2rem;
  -o-background-size: 1.2rem;
  background-size: 1.2rem;
  text-indent: 1500%;
  white-space: nowrap;
  overflow: hidden;
  -webkit-transform: rotate(-45deg) translate3d(0, 0, 0);
  -moz-transform: rotate(-45deg) translate3d(0, 0, 0);
  -ms-transform: rotate(-45deg) translate3d(0, 0, 0);
  -o-transform: rotate(-45deg) translate3d(0, 0, 0);
  transform: rotate(-45deg) translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
  z-index: 99;
  overflow: visible;
  /*
  			&:hover {
  			  -webkit-animation-name: pop;
  			  		  animation-name: pop;
  			  -webkit-animation-duration: 0.375s;
  			  		  animation-duration: 0.375s;
  			  -webkit-animation-timing-function: ease;
  			  		  animation-timing-function: ease;
  			  -webkit-animation-iteration-count: 1;
  			  		  animation-iteration-count: 1;
  			}
  */
}
body:not(.pause-animations) section.calendar .grid-item .toggle {
  will-change: auto;
  -webkit-transition: all 0.375s ease-in-out;
  -moz-transition: all 0.375s ease-in-out;
  -o-transition: all 0.375s ease-in-out;
  transition: all 0.375s ease-in-out;
}
section.calendar .grid-item .toggle::after {
  content: "";
  display: block;
  width: 100vw;
  height: 100vw;
  position: absolute;
  top: -50vw;
  right: 0;
}
section.calendar .grid-item .extended {
  position: absolute;
  top: 0;
  left: 0;
  width: 300%;
  width: calc(300% + 2px);
  width: 100vw;
  height: auto;
  background-color: #fbf9f5;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s linear 0.375s, opacity 0.375s linear;
  will-change: visibility, opacity;
  border-bottom: 2px solid #231F20;
  -webkit-transform: scale(0.33333) translate3d(0, 0, 0);
  -moz-transform: scale(0.33333) translate3d(0, 0, 0);
  -ms-transform: scale(0.33333) translate3d(0, 0, 0);
  -o-transform: scale(0.33333) translate3d(0, 0, 0);
  transform: scale(0.33333) translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
  -webkit-transform-origin: 0 0;
  -moz-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  -o-transform-origin: 0 0;
  transform-origin: 0 0;
}
body:not(.pause-animations) section.calendar .grid-item .extended {
  will-change: auto;
  -webkit-transition: all 0.375s ease-in-out;
  -moz-transition: all 0.375s ease-in-out;
  -o-transition: all 0.375s ease-in-out;
  transition: all 0.375s ease-in-out;
}
section.calendar .grid-item .extended .share {
  display: none;
}
section.calendar .grid-item .extended .event-image {
  padding: 3.6rem 1.8rem 0;
  height: 32rem;
  height: 100vw;
}
section.calendar .grid-item .extended .event-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
section.calendar .grid-item.open {
  z-index: 1;
  overflow: visible;
  /*
  		 -webkit-filter: drop-shadow(-1vw 1vw 0.4vw rgba($black, 0.35));
  				 filter: drop-shadow(-1vw 1vw 0.4vw rgba($black, 0.35));
  */
}
section.calendar .grid-item.open a {
  padding-bottom: 1px;
  background: -webkit-linear-gradient(#FAF6F0, #FAF6F0), -webkit-linear-gradient(#FAF6F0, #FAF6F0), -webkit-linear-gradient(#231F20, #231F20);
  background: -moz-linear-gradient(#FAF6F0, #FAF6F0), -moz-linear-gradient(#FAF6F0, #FAF6F0), -moz-linear-gradient(#231F20, #231F20);
  background: -o-linear-gradient(#FAF6F0, #FAF6F0), -o-linear-gradient(#FAF6F0, #FAF6F0), -o-linear-gradient(#231F20, #231F20);
  background: -ms-linear-gradient(#FAF6F0, #FAF6F0), -ms-linear-gradient(#FAF6F0, #FAF6F0), -ms-linear-gradient(#231F20, #231F20);
  background: linear-gradient(#FAF6F0, #FAF6F0), linear-gradient(#FAF6F0, #FAF6F0), linear-gradient(#231F20, #231F20);
  -webkit-background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  -moz-background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  background-repeat: no-repeat, no-repeat, repeat-x;
  text-shadow: 0.03em 0 #FAF6F0, -0.03em 0 #FAF6F0, 0 0.03em #FAF6F0, 0 -0.03em #FAF6F0, 0.06em 0 #FAF6F0, -0.06em 0 #FAF6F0, 0.09em 0 #FAF6F0, -0.09em 0 #FAF6F0, 0.12em 0 #FAF6F0, -0.12em 0 #FAF6F0, 0.15em 0 #FAF6F0, -0.15em 0 #FAF6F0;
  background-position: 0 85.2%, 100% 85.2%, 0 85.2%;
}
section.calendar .grid-item.open .toggle {
  -webkit-transform: rotate(0) translateX(50vw);
  -moz-transform: rotate(0) translateX(50vw);
  -ms-transform: rotate(0) translateX(50vw);
  -o-transform: rotate(0) translateX(50vw);
  transform: rotate(0) translateX(50vw);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
section.calendar .grid-item.open .toggle::after {
  content: none;
}
section.calendar .grid-item.open .extended {
  visibility: visible;
  opacity: 0.99999;
  transition-delay: 0s;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
section.calendar .grid-item.open .extended .event-intro {
  padding-bottom: 1.8rem;
}
section.calendar .grid-item.open:nth-child(2n+2) .toggle {
  -webkit-transform: translateX(0);
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -o-transform: translateX(0);
  transform: translateX(0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
section.calendar .grid-item.open:nth-child(2n+2) .extended {
  -webkit-transform: translateX(calc(-50vw + -2px));
  -moz-transform: translateX(calc(-50vw + -2px));
  -ms-transform: translateX(calc(-50vw + -2px));
  -o-transform: translateX(calc(-50vw + -2px));
  transform: translateX(calc(-50vw + -2px));
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
@media only screen and (min-width: 640px) {
  section.calendar .grid-item.open-bottom .extended {
    top: auto;
    bottom: -2px;
    -webkit-transform-origin: 0 100%;
    -moz-transform-origin: 0 100%;
    -ms-transform-origin: 0 100%;
    -o-transform-origin: 0 100%;
    transform-origin: 0 100%;
  }
  section.calendar .grid-item .extended {
    height: 200%;
    height: calc(200% + 4px);
  }
  section.calendar .grid-item .extended .event-image {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 66.66667%;
    height: 100% !important;
    padding: 2.4rem 1.8rem;
  }
}
@media only screen and (min-width: 640px) and (min-width: 1024px) {
  section.calendar .grid-item .extended .event-image {
    padding: 3.6rem 2.4rem;
  }
}
@media only screen and (min-width: 640px) and (min-width: 1200px) {
  section.calendar .grid-item .extended .event-image {
    padding: 4.8rem 2.4rem;
  }
}
@media only screen and (min-width: 640px) and (min-width: 1200px) {
  section.calendar .grid-item .extended .event-image {
    padding-left: 3.6rem;
  }
}
@media only screen and (min-width: 640px) {
  section.calendar .grid-item .extended .event-image > div {
    display: block;
    width: 100%;
    height: 100%;
    background-position: 50% 50%;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
  }
}
@media only screen and (min-width: 640px) {
  section.calendar .grid-item .event-details {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 33.33333%;
    padding-left: 0 !important;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media only screen and (min-width: 640px) {
  section.calendar .grid-item.open .toggle, section.calendar .grid-item.open:nth-child(2n+2) .toggle {
    -webkit-transform: translateX(66.66667vw);
    -moz-transform: translateX(66.66667vw);
    -ms-transform: translateX(66.66667vw);
    -o-transform: translateX(66.66667vw);
    transform: translateX(66.66667vw);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
  }
  section.calendar .grid-item.open:nth-child(2n+2) .extended {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
  }
  section.calendar .grid-item.open:nth-child(3n+2) .toggle {
    -webkit-transform: translateX(33.33333vw);
    -moz-transform: translateX(33.33333vw);
    -ms-transform: translateX(33.33333vw);
    -o-transform: translateX(33.33333vw);
    transform: translateX(33.33333vw);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
  }
  section.calendar .grid-item.open:nth-child(3n+2) .extended {
    -webkit-transform: translateX(-33.33333vw);
    -moz-transform: translateX(-33.33333vw);
    -ms-transform: translateX(-33.33333vw);
    -o-transform: translateX(-33.33333vw);
    transform: translateX(-33.33333vw);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
  }
  section.calendar .grid-item.open:nth-child(3n+3) .toggle {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
  }
  section.calendar .grid-item.open:nth-child(3n+3) .extended {
    -webkit-transform: translateX(calc(-66.66667vw + -2px));
    -moz-transform: translateX(calc(-66.66667vw + -2px));
    -ms-transform: translateX(calc(-66.66667vw + -2px));
    -o-transform: translateX(calc(-66.66667vw + -2px));
    transform: translateX(calc(-66.66667vw + -2px));
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
  }
  section.calendar .grid-item.open.open-bottom .toggle {
    margin-top: -33.33333vw;
  }
}
@media only screen and (min-width: 930px) {
  section.calendar .grid-item {
    /*
    			// reset
    			&:nth-child(4) {
    				.extended {
    					top: 0;
    					bottom: auto;
    					@include transform-origin(0 0);
    				}
    			}
    			// after row 1
    			&:nth-child(n+5) {
    				.extended {
    					top: auto;
    					bottom: -2px;
    					@include transform-origin(0 100%);
    				}
    			}
    */
  }
  section.calendar .grid-item .extended {
    width: 300%;
    width: calc(300% + 2px);
    width: calc(75vw + 2px);
    border-right: 2px solid #231F20;
    -webkit-box-shadow: -2px -2px 0 #231F20, -2px 0px 0 #231F20;
    -moz-box-shadow: -2px -2px 0 #231F20, -2px 0px 0 #231F20;
    box-shadow: -2px -2px 0 #231F20, -2px 0px 0 #231F20;
  }
  section.calendar .grid-item:nth-child(4n+2) .extended, section.calendar .grid-item:nth-child(4n+3) .extended {
    width: 75vw;
  }
  section.calendar .grid-item.open {
    /*
    				// reset
    				&:nth-child(4) {
    					.toggle {
    						margin-top: 0;
    					}
    				}
    */
  }
  section.calendar .grid-item.open .toggle, section.calendar .grid-item.open:nth-child(3n+2) .toggle, section.calendar .grid-item.open:nth-child(3n+3) .toggle {
    -webkit-transform: translateX(50vw);
    -moz-transform: translateX(50vw);
    -ms-transform: translateX(50vw);
    -o-transform: translateX(50vw);
    transform: translateX(50vw);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
  }
  section.calendar .grid-item.open:nth-child(3n+2) .extended, section.calendar .grid-item.open:nth-child(3n+3) .extended {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
  }
  section.calendar .grid-item.open:nth-child(4n+2) .toggle, section.calendar .grid-item.open:nth-child(4n+3) .toggle {
    -webkit-transform: translateX(25vw);
    -moz-transform: translateX(25vw);
    -ms-transform: translateX(25vw);
    -o-transform: translateX(25vw);
    transform: translateX(25vw);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
  }
  section.calendar .grid-item.open:nth-child(4n+2) .extended, section.calendar .grid-item.open:nth-child(4n+3) .extended {
    -webkit-transform: translateX(-25vw);
    -moz-transform: translateX(-25vw);
    -ms-transform: translateX(-25vw);
    -o-transform: translateX(-25vw);
    transform: translateX(-25vw);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
  }
  section.calendar .grid-item.open:nth-child(4n+4) .toggle {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
  }
  section.calendar .grid-item.open:nth-child(4n+4) .extended {
    -webkit-transform: translateX(-50vw);
    -moz-transform: translateX(-50vw);
    -ms-transform: translateX(-50vw);
    -o-transform: translateX(-50vw);
    transform: translateX(-50vw);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    /* FF Hack for sharper renders */
  }
  section.calendar .grid-item.open.open-bottom .toggle {
    margin-top: -25vw;
  }
}
section.calendar .grid-item .archive-link {
  border-top: 2px solid #231F20;
  background-color: #fff;
  text-align: center;
  padding: 7.2rem 3.6rem;
  font-size: 1.8rem;
  text-transform: uppercase;
}
section.calendar .grid-item .archive-link a {
  border-bottom: 2px solid;
}
section.calendar .calendar-archive h3, section.calendar .calendar-archive .archive-link {
  border-top: 2px solid #231F20;
  background-color: #fff;
  text-align: center;
  padding: 7.2rem 3.6rem;
}
section.calendar .calendar-archive .archive-link {
  font-size: 1.8rem;
  text-transform: uppercase;
}
section.calendar .calendar-archive .archive-link a {
  border-bottom: 2px solid;
}

/*
@-webkit-keyframes pop {
	50% {
		@include transform(rotate(-45deg));
		@include transform(scale(1.25));
	}
	100% {
		@include transform(rotate(-45deg));
		@include transform(scale(1));
	}
}
@keyframes pop {
	50% {
		@include transform(rotate(-45deg));
		@include transform(scale(1.25));
	}
	100% {
		@include transform(rotate(-45deg));
		@include transform(scale(1));
	}
}
*/
dl {
  border-bottom: 1px solid;
  text-align: center;
}
dl dt {
  position: relative;
  border-top: 1px solid;
  padding: 1.8rem 0;
  font-size: 1.8rem;
  cursor: ns-resize;
}
dl dt::after {
  content: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 16.9 16.9"><path d="M.028.973l.99-.99 15.98 15.98-.99.99z"/><path d="M.028 15.963l15.98-15.98.99.99-15.98 15.98z"/></svg>');
  position: absolute;
  top: 2.4rem;
  right: 1.8rem;
  display: block;
  width: calc(100vh/13 * 0.25);
  height: calc(100vh/13 * 0.25);
  -webkit-transform: rotate(-135deg);
  -moz-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  -o-transform: rotate(-135deg);
  transform: rotate(-135deg);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
body:not(.pause-animations) dl dt::after {
  will-change: auto;
  -webkit-transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1) ease-in-out;
  -moz-transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1) ease-in-out;
  -o-transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1) ease-in-out;
  transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1) ease-in-out;
}
dl dt.open::after {
  -webkit-transform: rotate(0);
  -moz-transform: rotate(0);
  -ms-transform: rotate(0);
  -o-transform: rotate(0);
  transform: rotate(0);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
  /* FF Hack for sharper renders */
}
dl dd {
  padding-bottom: 3rem;
  opacity: 0;
}
body:not(.pause-animations) dl dd {
  will-change: opacity;
  -webkit-transition: opacity 0.5s ease-in-out;
  -moz-transition: opacity 0.5s ease-in-out;
  -o-transition: opacity 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out;
}
dl dd.open {
  opacity: 1;
}

/*
.profile {
	.profile-wrap {
	}
	.profile-image-wrap {
		padding: calc(100%/11.5) 0;
	}
	.profile-image {
		position: relative;
		display: block;
		width: 100%;
		height: 0;
		@include fill-bg;
		padding-bottom: 100%;
		border-radius: 50%;
		background-color: #000;
		@include blend(screen);
		@include gray(0.92);
		@include responsive(min, 769) {
			position: fixed;
			top: calc(100vh/13 * 2.5);
			left: calc(100%/11.5);
			width: calc(100vw/11.5 * 3.75);
			height: calc(100vw/11.5 * 3.75);
			padding-bottom: 0;
		}
	}
	.profile-content-wrap {
		padding: calc(100vh/13 * 0.5) calc(100%/11.5 * 0.5);
		@include responsive(min, 769) {
			padding: 0;
			.profile-content {
				padding: calc(100vh/13 * 0.5) calc(100%/11.5 * 0.5) 0;
			}
		}
	}
	.profile-content {
		h5 {
			text-transform: uppercase;
			&::before {
				content: '\\ ';
				display: inline;
			}
		}
		h2, h4, h3 {
			margin-top: calc(100vh/13);
		}
	}
	.profile-section {
		padding: 1.5rem calc(100%/11.5 * 1.5) 3rem 1rem;
	}
	.video-wrap {
		padding: calc(100vh/13 * 0.5) calc(100%/11.5 * 0.5);
		iframe {
			max-width: 100%;
		}
	}
}
*/
/*
.video-thumb {
	position: relative;
	display: block;
	width: 100%;
	height: 0;
	padding-bottom: percentage(9/16);
	@include box-shadow(inset 0 1px 0 $white);
	@include fill-bg;
	margin: 0 auto;
	cursor: pointer;
	img {
		z-index: 1;
	}
	&::after {
		content: '';
		position: absolute;
		top: 50%;
		left: 50%;
		display: block;
		width: 3.4rem;
		height: 4rem;
		margin: -1.7rem;
// 		background-color: rgba($black, 0.1);
		background-image: url(i/play-button.svg);
		@include background-size(contain);
		z-index: 2;
		@include transition(all, 0.375s);
	}
	&:hover:after {
		@include transform(scale(1.1));
	}
}
*/
/*
nav.pager {
	background-color: $black;
	color: $white;
	text-align: center;
	line-height: calc(100vh/13 * 1.375);
	ul {
		@include nospace;
	}
	li {
		@include inline-block;
		+ li:before {
			content: '|';
			margin: 0 5px;
		}
		&.current {
			@extend %strong;
		}
	}
	a {
		color: $white;
		&:hover {
			color: $red;
		}
	}
}
*/
section.basic-page {
  min-height: 100vh;
}
section.basic-page .text-wrap {
  padding: 3.6rem 1.8rem;
}
@media only screen and (min-width: 640px) {
  section.basic-page .text-wrap {
    padding: 4.8rem 3.6rem;
  }
}
@media only screen and (min-width: 930px) {
  section.basic-page .text-wrap {
    padding: 7.2rem 10.8rem 10.8rem;
    font-size: 1.8rem;
    margin: 0 auto;
  }
  section.basic-page .text-wrap.narrow {
    max-width: 75%;
    max-width: calc(75% + 21.6rem);
  }
}
@media only screen and (min-width: 1200px) {
  section.basic-page .text-wrap.narrow {
    max-width: 50%;
    max-width: calc(50% + 21.6rem);
  }
}
section.basic-page .text-wrap a {
  padding-bottom: 1px;
  background: -webkit-linear-gradient(#feede5, #feede5), -webkit-linear-gradient(#feede5, #feede5), -webkit-linear-gradient(#231F20, #231F20);
  background: -moz-linear-gradient(#feede5, #feede5), -moz-linear-gradient(#feede5, #feede5), -moz-linear-gradient(#231F20, #231F20);
  background: -o-linear-gradient(#feede5, #feede5), -o-linear-gradient(#feede5, #feede5), -o-linear-gradient(#231F20, #231F20);
  background: -ms-linear-gradient(#feede5, #feede5), -ms-linear-gradient(#feede5, #feede5), -ms-linear-gradient(#231F20, #231F20);
  background: linear-gradient(#feede5, #feede5), linear-gradient(#feede5, #feede5), linear-gradient(#231F20, #231F20);
  -webkit-background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  -moz-background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  background-size: 0.05em 1px, 0.05em 1px, 1px 1px;
  background-repeat: no-repeat, no-repeat, repeat-x;
  text-shadow: 0.03em 0 #feede5, -0.03em 0 #feede5, 0 0.03em #feede5, 0 -0.03em #feede5, 0.06em 0 #feede5, -0.06em 0 #feede5, 0.09em 0 #feede5, -0.09em 0 #feede5, 0.12em 0 #feede5, -0.12em 0 #feede5, 0.15em 0 #feede5, -0.15em 0 #feede5;
  background-position: 0 85.2%, 100% 85.2%, 0 85.2%;
}
section.basic-page h2 {
  padding-bottom: 1rem;
  border-bottom: 2px solid;
  margin-bottom: 1.8rem;
}
section.basic-page ul {
  list-style-image: url(i/list-plus.svg);
}
section.basic-page ul li {
  padding: 2px 0;
  line-height: 1.2;
  margin-left: 1.8rem;
}
section.basic-page p + h3,
section.basic-page ul + h3 {
  margin-top: 2.8rem;
}
section.basic-page hr {
  margin: 1.8rem 0;
  border-top: 2px solid;
}

.pause-animations *,
.pause-animations *::before,
.pause-animations *::after {
  animation: none !important;
  transition: none !important;
}

.screenreader-text {
  position: absolute;
  left: -9999px;
  width: 0;
  height: 0;
  overflow: hidden;
}
