@charset "UTF-8";
/* Reset
-------------------------------------------------------------- */
html,
body {
  background: #ffffff;
  margin: 0;
  padding: 0; }

div {
  padding: 0; }

h1, h2, h3, h4, h5, h6, blockquote {
  margin: 0; }

cite {
  font-style: normal; }

ol, ul {
  list-style: none;
  padding: 0; }

a img {
  border: none; }

article, aside, canvas, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block; }

address {
  font-style: normal; }

/* RWD Resets
-------------------------------------------------------------- */
* {
  box-sizing: border-box; }

html {
  overflow-y: auto; }

img, video {
  max-width: 100%;
  height: auto; }

html,
* {
  box-sizing: border-box; }

html,
body {
  background-color: #fff;
  margin: 0;
  color: #484848;
  font: 100% / 1.6 "acumin-pro", -apple-system, BlinkMacSystemFont,"Avenir Next", Helvetica, Arial, sans-serif;
  font-weight: 400; }

h1,
h2,
h3,
h4,
h5 {
  font-size: 2.5em;
  font-weight: 400;
  line-height: 1.15;
  margin: 0 0 0.1em;
  width: 100%;
  color: #484848; }

h3 {
  font-size: 1.5em; }

h5, h6 {
  font-size: 1em;
  font-weight: bold; }

a {
  text-decoration: none;
  color: #484848;
  text-decoration: underline; }
  a:hover {
    color: #f78f1e; }
  a.isolated {
    text-decoration: none; }

p {
  margin: 0 0 2em; }

img {
  max-width: 100%;
  width: 100%;
  height: auto; }

ul {
  padding: 0;
  list-style-type: none; }

blockquote {
  margin: 1em 0; }

@media screen and (min-width: 920px) {
  body {
    font-size: 112.5%; } }
@media screen and (min-width: 1500px) {
  body {
    font-size: 125%; } }
.main {
  min-height: 60vh;
  margin-top: 1em; }
  @media (min-width: 580px) {
    .main {
      margin-top: 3em; } }

.home .main,
.project .main,
.work .main,
.instagram .main {
  margin-top: 0; }

.container,
.block--text,
.project-details,
.block {
  width: 94%;
  max-width: 1800px; }
  @media (min-width: 580px) {
    .container,
    .block--text,
    .project-details,
    .block {
      width: 92%; } }

.container {
  margin: 0 auto;
  overflow: hidden; }

.block {
  max-width: 1800px;
  margin: 0 auto;
  margin-bottom: 2em;
  overflow: hidden; }
  .block > div img {
    max-height: 94vh;
    object-fit: cover;
    display: block;
    object-position: center; }

[data-url-id=”project”] body {
  background: Tomato; }

.block--full-width > div img {
  object-fit: cover;
  display: block;
  object-position: center; }

.block--hero {
  width: 100%;
  max-width: 2100px; }
  .block--hero > div img {
    max-height: 94vh; }

@media (min-width: 580px) {
  .block--two-column {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    .block--two-column > div {
      flex-basis: 48%; }
    @supports (display: grid) {
      .block--two-column {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-gap: 2em; } } }
@media (max-width: 580px) {
  .block--two-column div > img {
    margin-bottom: 2em; }
  .block--two-column div:last-child > img {
    margin-bottom: 0; } }

@media (min-width: 920px) {
  .block--three-column {
    display: flex;
    justify-content: space-between; }
    .block--three-column > div {
      flex-basis: 30%; }
    @supports (display: grid) {
      .block--three-column {
        display: grid;
        grid-gap: 1em 2.25%;
        grid-template-columns: repeat(auto-fill, minmax(420px, 1fr)); } } }

@media (min-width: 920px) {
  .block--four-column {
    display: flex;
    justify-content: space-between; }
    .block--four-column > div {
      flex-basis: 23%; }
    @supports (display: grid) {
      .block--four-column {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr;
        grid-gap: 3%;
        grid-template-columns: repeat(auto-fill, minmax(350px, 1fr)); } } }

@media (min-width: 580px) {
  .block--four-column-offset {
    display: flex;
    justify-content: space-between; }
    .block--four-column-offset > div {
      flex-basis: 46%; }
    @supports (display: grid) {
      .block--four-column-offset {
        display: grid;
        grid-template-columns: 2fr 2fr;
        grid-gap: 2em; }
        .block--four-column-offset > div {
          max-width: 700px; }
        .block--four-column-offset > div:nth-of-type(1) {
          grid-column: 1 / 4;
          grid-row: 1; } } }
@media (min-width: 1100px) {
  .block--four-column-offset {
    display: flex;
    justify-content: space-between; }
    .block--four-column-offset > div {
      flex-basis: 23%; }
    @supports (display: grid) {
      .block--four-column-offset {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-gap: 2em; }
        .block--four-column-offset > div:nth-of-type(1) {
          grid-column: 1 / 2;
          grid-row: 1;
          padding-right: 10%; }
        .block--four-column-offset > div:last-of-type {
          margin-top: 0; } } }

.three-column-text p {
  display: block;
  margin-bottom: 1.65em; }
@media screen and (min-width: 920px) {
  .three-column-text {
    column-count: 2;
    column-gap: 4em; } }
@media screen and (min-width: 1100px) {
  .three-column-text {
    column-count: 3;
    column-gap: 4em; } }

@media (min-width: 52em) {
  .sidebar-layout {
    overflow: hidden; }
    .sidebar-layout > *:last-child {
      margin-right: 450px;
      float: left; }
    .sidebar-layout > *:first-child {
      width: 320px;
      float: right; }
    @supports (display: flex) {
      .sidebar-layout {
        display: flex;
        overflow: visible; }
        .sidebar-layout > *:first-child {
          width: 320px;
          margin-right: 0; }
        .sidebar-layout > *:last-child {
          flex: 1;
          margin-left: 6%; } }
    @supports (display: grid) {
      .sidebar-layout {
        display: grid;
        grid-template-columns: 320px 1fr;
        grid-gap: 6%; }
        .sidebar-layout > *:last-child {
          margin-left: 0; } } }
.project-details h3 {
  margin-bottom: 0.5em; }
  @media (min-width: 580px) {
    .project-details h3 {
      margin-bottom: 2em; } }
.project-details h3:nth-of-type(2) {
  margin-top: 1.25em; }
  @media (min-width: 580px) {
    .project-details h3:nth-of-type(2) {
      margin-top: 2.75em;
      margin-bottom: 1.58em; } }
.project-details ul {
  line-height: 1.2; }
  .project-details ul a {
    display: block;
    margin-bottom: 1em;
    padding: 2px;
    width: 100%;
    background: none;
    text-decoration: none; }
    .project-details ul a:hover {
      color: #f78f1e;
      text-decoration: underline; }
.project-details > div {
  margin-top: 2.5em; }

.item-block {
  padding: 0 0 2em;
  overflow: hidden; }
  .item-block .block--full-width .item-thumb {
    margin-bottom: 2em; }

.item-thumb {
  margin: 0 0 1em;
  display: block; }
  .item-thumb img {
    margin-bottom: 0.15em; }
  .item-thumb p {
    margin-bottom: 0; }
  .item-thumb a {
    display: block;
    background: none;
    padding: 0 0 1em 0;
    color: #484848; }
    .item-thumb a p {
      display: inline-block; }
    .item-thumb a:hover p {
      color: #f78f1e; }
  .item-thumb p a {
    display: inline; }
    .item-thumb p a:hover {
      color: #f78f1e; }

.item-block .block--hero .item-thumb {
  margin-bottom: 0; }
  .item-block .block--hero .item-thumb a {
    padding-bottom: 0; }
  .item-block .block--hero .item-thumb img {
    margin-bottom: 2px; }

ul.recognition-table {
  margin-top: 0; }
  ul.recognition-table .small {
    font-size: 0.85em;
    display: none; }
    @media (min-width: 580px) {
      ul.recognition-table .small {
        display: grid; } }
  ul.recognition-table li {
    width: 100%;
    border-bottom: 1px solid #e9e9e8;
    padding: 1em 0; }
    @media (min-width: 580px) {
      ul.recognition-table li {
        display: grid;
        grid-template-columns: 1.5fr 1fr 100px;
        grid-gap: 0.5em; }
        ul.recognition-table li div:last-of-type {
          text-align: right; } }

.recognition section a {
  text-decoration: none; }
  .recognition section a:hover {
    color: #f78f1e; }
  .recognition section a:hover h5 {
    color: #f78f1e; }

.instagram-feed img {
  margin-bottom: 1em; }

.menu {
  position: absolute;
  width: 100%;
  transition: left 100ms ease-in;
  display: block;
  background: #f7f6f5;
  text-align: center; }
  .menu a {
    background: none;
    text-decoration: none; }
    .menu a:hover {
      background: #f78f1e;
      color: white; }

.fixer .menu {
  margin-top: 22px; }

.fixer.fix-nav .menu {
  margin-top: 7px; }

#menu[aria-expanded="true"] {
  left: 0; }

#menu[aria-expanded="false"] {
  left: -100%; }

.site-header {
  position: relative;
  width: 100%;
  max-width: 1800px;
  display: block;
  padding: 0 3%;
  margin: auto; }
  .site-header .page-title {
    display: none; }
    @media screen and (min-width: 580px) {
      .site-header .page-title {
        display: block; } }
    .site-header .page-title span {
      margin: 0 4px; }
  .site-header .logo-block {
    width: 100%;
    display: flex; }
  .site-header .site-logo {
    display: inline-block; }
    .site-header .site-logo .alter-logo svg,
    .site-header .site-logo .alter-logo img {
      width: 120px;
      margin: 0;
      display: block; }
      @media screen and (min-width: 580px) {
        .site-header .site-logo .alter-logo svg,
        .site-header .site-logo .alter-logo img {
          padding-top: 4px; } }
  .site-header ul {
    list-style-type: none;
    padding: 0; }
  .site-header .icon-hamburger {
    transition: fill 100ms ease-in;
    right: 1.5em;
    max-width: 25px;
    padding: 5px;
    position: absolute;
    top: -2px;
    fill: #484848; }
    @media screen and (min-width: 580px) {
      .site-header .icon-hamburger {
        top: 0; } }
    .site-header .icon-hamburger:hover {
      fill: #5b5957; }

body {
  padding-top: 1em; }

main.main {
  padding-top: 1em; }

.fixer {
  width: 100%;
  z-index: 100;
  position: -webkit-sticky;
  position: sticky;
  top: -1px;
  padding: 0.5rem 0 0.5rem;
  background: #fff; }

.menu {
  margin-top: 1px; }
  .menu ul {
    padding: 0;
    margin: 0; }
  .menu li a {
    display: block;
    margin: 0;
    padding: 1.5em 0; }

@media screen and (min-width: 920px) {
  .menu-link {
    display: none; }

  #menu[aria-expanded="false"] {
    left: auto;
    background: none; }

  body {
    padding-top: 2em; }

  main.main {
    padding-top: 2em; }

  .fixer {
    width: 100%;
    z-index: 100;
    position: -webkit-sticky;
    position: sticky;
    top: -1px;
    padding: 0.358rem 0 0.33rem;
    background: #fff; }

  .fixer .menu {
    margin-top: 1px; }

  .fixer.fix-nav .menu {
    margin-top: 1px; }

  .site-header {
    border-bottom: none;
    padding: 0;
    width: 92%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between; }
    .site-header .page-title {
      display: block; }
    .site-header .logo-block {
      width: 49%;
      display: flex; }
    .site-header .site-logo .alter-logo svg,
    .site-header .site-logo .alter-logo img {
      width: 8.15em;
      height: auto;
      padding-top: 2px;
      fill: #fff; }

  .menu {
    width: 51%;
    position: relative;
    margin: auto 0;
    top: 0;
    max-width: none;
    text-align: right;
    border: none;
    float: right;
    background: none; }
    .menu ul {
      padding: 0; }
    .menu li {
      display: inline-block;
      margin: 0 1.5%;
      margin: 0 calc(0.75% + 0.15em); }
      .menu li a {
        display: block;
        padding: 0;
        margin: 0; }
        .menu li a:hover {
          background: linear-gradient(to top, #f78f1e 15%, transparent 15%);
          color: #484848; }
      .menu li:last-child {
        margin-right: 0; } }
@media screen and (min-width: 1030px) {
  .logo-block {
    width: 38%;
    display: flex; }

  .menu {
    width: 62%; }

  .menu li {
    margin: 0 2.75%; } }
@media screen and (min-width: 1500px) {
  .site-header {
    font-size: 0.938em; } }
/* Footer
-------------------------------------------------------------- */
.site-footer {
  margin: 3em auto 2em; }
  .site-footer .contact-info {
    border-top: 1px solid #e9e9e8;
    padding-top: 1em; }
    @media (max-width: 1100px) {
      .site-footer .contact-info span.name {
        display: block; } }
    @media (max-width: 1100px) {
      .site-footer .contact-info span {
        display: none; }
      .site-footer .contact-info a {
        display: block; } }
  .site-footer .block--two-column {
    max-width: 700px; }
