.align-left {
  text-align: left; }

.align-center {
  text-align: center; }

.align-right {
  text-align: right; }

.inline-columns-middle > * {
  display: inline-block;
  vertical-align: middle; }

.inline-columns-baseline > * {
  display: inline-block;
  vertical-align: baseline; }

.inline-columns-top > * {
  display: inline-block;
  vertical-align: top; }
/*! normalize.css v2.1.3 | MIT License | git.io/normalize */

/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */

/**
 * Correct `block` display not defined in IE 8/9.
 */


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

/**
 * Correct `inline-block` display not defined in IE 8/9.
 */

audio,
canvas,
video {
    display: inline-block;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

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

/**
 * Address `[hidden]` styling not present in IE 8/9.
 * Hide the `template` element in IE, Safari, and Firefox < 22.
 */

[hidden],
template {
    display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */

/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */

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

/**
 * Remove default margin.
 */

body {
    margin: 0;
}

/* ==========================================================================
   Links
   ========================================================================== */

/**
 * Remove the gray background color from active links in IE 10.
 */

a {
    background: transparent;
}

/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */

a:focus {
    outline: thin dotted;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */

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

/* ==========================================================================
   Typography
   ========================================================================== */

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */

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

/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */

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

/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */

b,
strong {
    font-weight: bold;
}

/**
 * Address styling not present in Safari 5 and Chrome.
 */

dfn {
    font-style: italic;
}

/**
 * Address differences between Firefox and other browsers.
 */

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

/**
 * Address styling not present in IE 8/9.
 */

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

/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */

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

/**
 * Improve readability of pre-formatted text in all browsers.
 */

pre {
    white-space: pre-wrap;
}

/**
 * Set consistent quote types.
 */

q {
    quotes: "\201C" "\201D" "\2018" "\2019";
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

small {
    font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

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

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

/* ==========================================================================
   Embedded content
   ========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9.
 */

img {
    border: 0;
    max-width: 100%;
}

/**
 * Correct overflow displayed oddly in IE 9.
 */

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

/* ==========================================================================
   Figures
   ========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari 5.
 */

figure {
    margin: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */

/**
 * Define consistent border, margin, and padding.
 */

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

/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
    border: 0; /* 1 */
    padding: 0 /* 2 */
}

/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */

button,
input,
select,
textarea {
    font-family: inherit; /* 1 */
    font-size: 100%; /* 2 */
    margin: 0 /* 3 */
}

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

button,
input {
    line-height: normal;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */

button,
select {
    text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */

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

/**
 * Re-set default cursor for disabled elements.
 */

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

/**
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */

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

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */

input[type="search"] {
    -webkit-appearance: textfield; /* 1 */ /* 2 */
    box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */

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

/**
 * Remove inner padding and border in Firefox 4+.
 */

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

/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */

textarea {
    overflow: auto; /* 1 */
    vertical-align: top /* 2 */
}

/* ==========================================================================
   Tables
   ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

table {
    border-collapse: collapse;
    border-spacing: 0;
}
* {
  box-sizing: border-box; }

h1, h2, h3, h4, ul, p {
  margin: 0;
  padding: 0; }

html, body {
  width: 100%;
  height: 100%; }

body {
  background-color: #151516;
  color: #2c2e30;
  font-family: 'franklin-gothic-urw', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 22px;
  font-weight: 300;
  line-height: 1.35;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.wrapper {
  width: 100%;
  overflow: hidden; }

section {
  position: relative; }

section, .columns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }

.column, .full-column {
  width: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }

.full-column {
  width: 100%; }

[class*="col-"] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative; }

.col-1,
.col-1-2 {
  -webkit-box-flex: 1;
  -webkit-flex: 1 100%;
      -ms-flex: 1 100%;
          flex: 1 100%; }

.col-2,
.col-2-1,
.other-posts .blog-post-link {
  -webkit-box-flex: 1;
  -webkit-flex: 1 50%;
      -ms-flex: 1 50%;
          flex: 1 50%; }

.col-3,
.col-3-0 {
  -webkit-box-flex: 1;
  -webkit-flex: 1 33%;
      -ms-flex: 1 33%;
          flex: 1 33%; }

.col-4 {
  -webkit-box-flex: 1;
  -webkit-flex: 1 25%;
      -ms-flex: 1 25%;
          flex: 1 25%; }

.col-1:after, .col-1-2:after, .col-2:after, .col-2-1:after, .other-posts .blog-post-link:after, .col-3:after, .col-4:after {
  content: '';
  display: block;
  height: 0;
  padding-top: 100%; }

.col-1-2:after,
.col-2-1:after,
.other-posts .blog-post-link:after {
  padding-top: 50%; }

.spacer div {
  width: 100%; }
.spacer div:after {
  content: '';
  display: block;
  padding-top: 100%; }
.spacer.col-1-2 div:after {
  padding-top: 50%; }

.col-center {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.col-content, .block-tile {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 0 10%; }
  .col-content.no-padding, .block-tile.no-padding {
    padding: 0; }
  .col-content > div, .block-tile > div {
    width: 100%; }

.col-inline > * {
  display: inline-block; }

.top-left {
  position: absolute;
  top: 10%;
  left: 10%; }

.top-right {
  position: absolute;
  top: 10%;
  right: 10%; }

.main-copy {
  background-color: white; }

.main-copy.block-dark {
  background-color: #101111; }

.align-center {
  text-align: center; }

.mobile-spacer {
  display: none; }

.block-link:hover, .hover .block-link:hover.block-animating {
  z-index: 1000; }
.block-link.block-animating {
  z-index: 100; }

.block-fx {
  opacity: 0; }

.no-js .block-fx {
  opacity: 1; }

.text-heading-a {
  color: #111011;
  font-size: 78px;
  font-weight: 300;
  line-height: 1.1; }

.text-heading-b {
  color: #111011;
  font-size: 44px;
  font-weight: 300;
  line-height: 1.1; }

.text-heading-c, .blog-post-full h2, .blog-post-full h3 {
  color: #111011;
  font-size: 36px;
  font-weight: 300;
  line-height: 1.1; }

.text-intro, .blog-post-full .inner-wrapper > p:first-child {
  font-size: 26px;
  line-height: 1.3; }

.text-a {
  font-size: 22px;
  font-weight: 300;
  line-height: 1.35; }

.text-b {
  font-size: 18px;
  font-weight: normal; }

.text-c {
  font-size: 16px;
  opacity: 0.65; }

.text-secondary {
  color: rgba(44, 46, 48, 0.65); }

.block-dark .text-secondary {
  color: rgba(255, 255, 255, 0.65); }

.block-dark,
.block-dark .text-heading-b {
  color: white; }

[class*="text-"] + [class*="text-"] {
  display: inline-block;
  margin-top: 0.5em; }

[class*="text-heading-"] + [class*="text-"] {
  display: inline-block;
  margin-top: 1em; }

a {
  color: inherit;
  text-decoration: none; }

a:focus {
  outline: 0; }

.link {
  display: inline-block;
  border-bottom: 1px solid transparent;
  cursor: pointer;
  -webkit-transition: border-color .125s ease-out;
          transition: border-color .125s ease-out; }

.link:hover, .link:focus {
  border-bottom-color: currentColor; }

.icon, .icon svg {
  width: 20px;
  height: 20px;
  fill: #2c2e30; }

.icon-link {
  position: relative; }

.icon-link:before {
  content: '';
  position: absolute;
  top: -.5em;
  left: -.5em;
  right: -.5em;
  bottom: -.5em;
  border-radius: 100%; }

.no-js .icon-link:hover svg,
.no-js .icon-link:focus svg {
  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
          transform: scale(1.2);
  -webkit-transition: -webkit-transform 0.125s cubic-bezier(0.56, 2, 0.82, 0.83);
          transition: transform 0.125s cubic-bezier(0.56, 2, 0.82, 0.83); }

header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  top: 0;
  right: 0;
  width: 25%;
  padding-top: 25%;
  z-index: 10; }
  header a {
    display: block;
    width: 40%;
    max-width: 72px; }
  header object {
    width: 100%; }

.js .index .heliom-logo {
  opacity: 0; }

.svg-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }
  .svg-container svg {
    width: 100%;
    height: 100%; }

.anim-1 .intro-lines rect {
  -webkit-transform-origin: 0% 50%;
      -ms-transform-origin: 0% 50%;
          transform-origin: 0% 50%; }

.anim-2 .intro-lines rect {
  -webkit-transform-origin: 100% 0%;
      -ms-transform-origin: 100% 0%;
          transform-origin: 100% 0%; }

.anim-3 .intro-lines rect {
  -webkit-transform-origin: 0% 100%;
      -ms-transform-origin: 0% 100%;
          transform-origin: 0% 100%; }

.anim-4 .intro-lines rect {
  -webkit-transform-origin: 0% 50%;
      -ms-transform-origin: 0% 50%;
          transform-origin: 0% 50%; }

.anim-1.anim-reverse .intro-lines rect {
  -webkit-transform-origin: 50% 0%;
      -ms-transform-origin: 50% 0%;
          transform-origin: 50% 0%; }

.anim-2.anim-reverse .intro-lines rect {
  -webkit-transform-origin: 0% 100%;
      -ms-transform-origin: 0% 100%;
          transform-origin: 0% 100%; }

.anim-3.anim-reverse .intro-lines rect {
  -webkit-transform-origin: 100% 0%;
      -ms-transform-origin: 100% 0%;
          transform-origin: 100% 0%; }

.anim-4.anim-reverse .intro-lines rect {
  -webkit-transform-origin: 50% 0%;
      -ms-transform-origin: 50% 0%;
          transform-origin: 50% 0%; }

.intro-lines {
  -webkit-transform: translate(324, -36) rotate(-270deg);
      -ms-transform: translate(324, -36) rotate(-270deg);
          transform: translate(324, -36) rotate(-270deg);
  fill: #000; }

.intro-lines rect {
  -webkit-transform: scaleX(0);
      -ms-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transform-origin: 100% 50%;
      -ms-transform-origin: 100% 50%;
          transform-origin: 100% 50%;
  height: 150%; }
  .ms .intro-lines rect {
    opacity: 0; }

.main-nav {
  margin-top: .5em; }
  .main-nav h1 + a, .main-nav a + a {
    margin: 0 0 0 1.5em !important; }
  .main-nav a {
    color: rgba(44, 46, 48, 0.5);
    font-weight: 300;
    -webkit-transition: color .15s ease-out;
            transition: color .15s ease-out; }
    .main-nav a:hover, .main-nav a:focus {
      color: #2c2e30; }
    .main-nav a.currentPage {
      color: inherit; }
  .block-dark .main-nav a {
    color: rgba(255, 255, 255, 0.5); }
    .block-dark .main-nav a:hover, .block-dark .main-nav a:focus {
      color: white; }
    .block-dark .main-nav a.currentPage {
      color: inherit; }

.projects {
  margin-top: -25%; }
  .projects .project {
    display: block; }
    .projects .project.medalist, .projects .project.medalist > .block-tile {
      background: #232227; }
    .projects .project.email, .projects .project.email > .block-tile {
      background: -webkit-linear-gradient(top, white 0, #f2f2f3 100%);
      background: linear-gradient(to bottom, white 0, #f2f2f3 100%); }
    .projects .project.conferencebadge, .projects .project.conferencebadge > .block-tile {
      background: #e86943; }
    .projects .project.leanticket, .projects .project.leanticket > .block-tile {
      background: #24bf89; }
  .projects .project-image {
    pointer-events: none; }
    .projects .project-image img {
      margin: auto; }

[data-hide] {
  opacity: 0; }

[data-show] {
  opacity: 1; }

.bg-photo {
  display: block;
  position: absolute;
  top: 33.32%;
  bottom: 16.675%;
  left: 0;
  right: 0;
  overflow: hidden; }

.parallax-img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }
  .parallax-img img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    max-width: none; }

.team-photo {
  background-color: #151516;
  overflow: hidden; }
  .team-photo img {
    width: 100%; }

.member, .member .block-tile {
  background-color: #fcfcfc; }

.member:after {
  padding-top: 100.01%; }

.hover .member:hover .block-tile, .hovering.member:hover .block-tile {
  background-color: white; }
.hover .member:hover img, .hovering.member:hover img {
  -webkit-filter: saturate(100%);
          filter: saturate(100%); }

.no-anim .member:hover [data-hide] {
  opacity: 1; }

.avatar {
  display: inline-block;
  margin-bottom: .5em; }
  .avatar img {
    display: block;
    -webkit-filter: saturate(0%);
            filter: saturate(0%);
    -webkit-transition: .25s ease;
            transition: .25s ease; }

.member-social {
  position: absolute;
  bottom: 15%;
  left: 0;
  width: 100%;
  padding: 0 20%; }
  .member-social ul {
    list-style: none; }
  .member-social li {
    padding: 0 1em; }
  .member-social a {
    display: inline-block;
    width: 100%;
    height: 100%;
    text-align: center; }

.ms .member-social li {
  display: inline-block;
  font-size: 0; }

.block-abrico .block-tile {
  background-color: rgba(0, 0, 0, 0.9); }

.block-abrico img {
  max-width: 80%; }

.map {
  overflow: hidden; }

.map iframe {
  width: 100%;
  height: 115%; }

.map .block-tile {
  background-color: #151516; }

.contact {
  background-color: white; }

.more {
  background-color: #101111; }

.more .icon svg {
  fill: white; }

.past-projects-container {
  -webkit-perspective: 1000px;
          perspective: 1000px; }

.past-projects {
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  position: relative; }
  .past-projects .past-projects-trigger {
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 25%;
    left: 25%;
    padding-top: 50%;
    width: 50%;
    background-color: #fff;
    cursor: pointer;
    z-index: 2; }
    .past-projects .past-projects-trigger .block-tile {
      background-color: white; }
    .past-projects .past-projects-trigger span {
      color: #2c2e30;
      width: 100%; }
  .past-projects .button-close {
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -10px;
    padding: 3.25% 0;
    opacity: 0;
    cursor: pointer;
    -webkit-transition: opacity .15s .5s ease-out, color .125s;
            transition: opacity .15s .5s ease-out, color .125s; }
    .past-projects .button-close:hover, .past-projects .button-close:focus {
      color: #fff; }
  .past-projects.opened .button-close {
    opacity: 1; }

.past-projects-list {
  opacity: 0;
  overflow-y: scroll;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: rotateY(-180deg);
          transform: rotateY(-180deg); }
  .past-projects-list ul {
    list-style: none; }

.no-js .past-projects:target .past-projects-list {
  opacity: 1;
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  -webkit-transition: 0.5s;
          transition: 0.5s; }

.no-js .past-projects:target .past-projects-trigger {
  opacity: 0;
  visibility: hidden;
  -webkit-transform: rotateY(180deg);
          transform: rotateY(180deg);
  -webkit-transition: 0.5s;
          transition: 0.5s; }

.ms .past-projects .past-projects-list {
  -webkit-backface-visibility: visible;
          backface-visibility: visible; }

.ms .past-projects.opened .past-projects-trigger {
  opacity: 0 !important; }

.past-project {
  display: block;
  position: relative;
  padding: 2em 10%;
  background-color: transparent;
  -webkit-transition: background-color .15s ease;
          transition: background-color .15s ease; }
  .past-project:hover, .past-project:focus {
    background-color: rgba(255, 255, 255, 0.05);
    -webkit-transition-duration: .5s;
            transition-duration: .5s; }
  .past-project strong {
    display: block; }
  .past-project .date {
    position: absolute;
    top: 2.75em;
    right: 10%; }

.more .blog-post-link.latest {
  background-color: transparent;
  border: 0; }

.link-social .block-tile {
  background-color: #1F1F21;
  -webkit-transition: background-color 120ms ease-out;
          transition: background-color 120ms ease-out; }

.hover .link-social:hover .block-tile,
.hovering.link-social:hover .block-tile {
  background-color: #242426; }

.more .full-column {
  overflow: hidden;
  position: relative;
  padding-top: 1.25%;
  margin-top: -1.25%; }
  .moz .more .full-column {
    padding-top: 21px;
    margin-top: -20px; }

.blog, .blog-post {
  background-color: #ebebeb; }
  .blog header svg, .blog-post header svg {
    fill: #101111; }
  .blog .block-anim svg g, .blog-post .block-anim svg g {
    fill: #e1e1e1; }

.blog-posts .main-copy .link {
  border-color: rgba(255, 255, 255, 0.65); }
  .blog-posts .main-copy .link:hover, .blog-posts .main-copy .link:focus {
    border-color: white; }

.blog-post-link {
  background-color: #fff;
  border: 1px solid #ebebeb;
  border-width: 1px 0 0 1px; }
  .blog-post-link .top-right {
    visibility: hidden;
    opacity: 0; }
  .blog-post-link .block-tile {
    background-color: #fff;
    -webkit-transition: background-color 0.75s ease-out;
            transition: background-color 0.75s ease-out; }
  .blog-post-link.latest .col-content div span {
    display: block; }
  .blog-post-link.col-2-1, .other-posts .blog-post-link {
    max-width: 50%; }
  .blog-post-link.col-2-1 .top-right, .other-posts .blog-post-link .top-right {
    top: 15%; }
  .hover .blog-post-link:hover .block-tile, .blog-post-link:focus .block-tile {
    background-color: #f6f6f6;
    -webkit-transition-duration: 100ms;
            transition-duration: 100ms; }
  .hover .blog-post-link:hover.block-link .top-right, .blog-post-link:focus.block-link .top-right {
    visibility: visible;
    opacity: 1; }

.moz .blog-intro .main-copy {
  height: 66%; }

.moz .blog-intro .spacer {
  height: 34%; }

.blog-post .intro {
  background-color: white; }
.blog-post .blog-post-meta {
  margin-bottom: 1em; }
.blog-post .inner-wrapper {
  width: 85%;
  max-width: 720px;
  margin: 0 auto;
  -webkit-font-smoothing: initial; }
.blog-post .columns {
  font-size: 0; }
.blog-post .col-50 {
  display: inline-block;
  padding-right: .5em;
  width: 50%;
  font-size: 22px; }
  .blog-post .col-50:nth-child(2n) {
    padding: 0 0 0 .5em; }

.blog-post-full {
  display: block;
  background-color: #fff;
  padding: 25% 12.5% 12.5%; }
  .blog-post-full .blog-post-title {
    margin: 0 0 1em; }
  .blog-post-full h2, .blog-post-full h3 {
    margin: 1.5em 0 .5em; }
  .blog-post-full h3 {
    color: rgba(44, 46, 48, 0.65);
    font-size: 27px; }
  .blog-post-full .inner-wrapper > p:first-child + p {
    margin-top: 1.5em; }
  .blog-post-full p + p, .blog-post-full p + ul, .blog-post-full ul + p, .blog-post-full p + ol, .blog-post-full ol + p {
    margin-top: 1em; }
  .blog-post-full ol {
    list-style-type: lower-latin;
    padding: 0; }
  .blog-post-full li + li, .blog-post-full ul + li {
    margin-top: 0.5em; }
  .blog-post-full ul > ul {
    margin: 0.5em 0 0 1em; }
  .blog-post-full .inner-wrapper a {
    display: inline-block;
    border-bottom: 1px solid rgba(44, 46, 48, 0.65);
    cursor: pointer;
    line-height: 1.15;
    -webkit-transition: border-color .125s ease-out;
            transition: border-color .125s ease-out; }
    .blog-post-full .inner-wrapper a:hover, .blog-post-full .inner-wrapper a:focus {
      border-bottom-color: transparent; }
  .blog-post-full figcaption {
    margin-top: .5em;
    color: rgba(44, 46, 48, 0.75);
    font-size: 17px; }
  .blog-post-full .example {
    margin-top: 1em;
    padding: 1em 1.25em;
    background-color: #f2f2f2;
    border-radius: 3px; }
  .blog-post-full code, .blog-post-full pre {
    background-color: #f2f2f2;
    padding: .25em;
    border-radius: 3px;
    font-size: 18px; }
  .blog-post-full pre {
    overflow: auto;
    margin: 1.5em 0;
    padding: 1em 1.4em;
    background-color: #f6f6f6;
    border: 1px solid rgba(44, 46, 48, 0.15);
    font-size: 15px; }
  .blog-post-full blockquote {
    margin: 2em 0; }
    .blog-post-full blockquote p {
      color: rgba(44, 46, 48, 0.65);
      font-size: 44px;
      font-weight: 300;
      line-height: 1.15;
      text-indent: -.35em; }
  .blog-post-full dl {
    line-height: 2; }
    .blog-post-full dl dt {
      display: inline;
      color: rgba(44, 46, 48, 0.65); }
    .blog-post-full dl dd {
      display: inline;
      margin: 0; }
    .blog-post-full dl dd:after {
      content: '\A';
      white-space: pre; }

.other-posts .blog-back-link {
  background-color: #fff;
  border-top: 1px solid #ebebeb;
  width: 100%;
  padding: 1.5em;
  text-align: center;
  -webkit-transition: background-color .75s ease-out;
          transition: background-color .75s ease-out; }
  .other-posts .blog-back-link:hover, .other-posts .blog-back-link:focus {
    background-color: #f6f6f6;
    -webkit-transition-duration: 100ms;
            transition-duration: 100ms; }

.comments {
  padding: 5% 0; }
  .comments .inner-wrapper {
    padding: 1em 0; }

@media (max-width: 1280px) {
  .text-heading-a {
    font-size: 60px; } }
@media (max-width: 1024px) {
  .text-heading-a {
    font-size: 44px; }

  .text-heading-b {
    font-size: 34px; }

  .text-a {
    font-size: 18px; }

  .text-b {
    font-size: 16px; }

  .text-c {
    font-size: 14px; } }
@media (max-width: 768px) {
  body {
    font-size: 18px; }

  .text-heading-a {
    font-size: 34px; }

  .text-heading-b,
  .text-heading-c,
  .blog-post-full h2,
  .blog-post-full h3 {
    font-size: 26px; }

  .text-intro, .blog-post-full .inner-wrapper > p:first-child {
    font-size: 21px; }

  .project-image img {
    max-width: 50%;
    max-height: 40%; }

  .member-social {
    bottom: 0; }

  .member-social li {
    padding: 0; }

  .avatar img {
    width: 48px; }

  .blog-post .inner-wrapper {
    width: 100%; } }
@media (max-width: 640px) {
  .text-a {
    font-size: 16px; }

  .text-b {
    font-size: 14px; }

  .text-c {
    font-size: 12px; }

  .column {
    width: 100%; }

  header {
    width: 33%;
    padding-top: 33%; }

  .intro .spacer {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -webkit-flex: 1 33%;
        -ms-flex: 1 33%;
            flex: 1 33%;
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4;
    max-width: 33%; }
  .intro .spacer:nth-child(1), .intro .spacer:nth-child(2) {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .intro .spacer:nth-child(3) {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .intro .spacer:nth-child(4) {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }

  .projects {
    margin-top: 0; }

  .spacer {
    display: none; }

  .mobile-spacer {
    display: block; }

  .more .neant {
    display: none; }

  .bg-photo {
    top: 74.5%;
    bottom: 9.5%; }

  .block-abrico {
    background-color: #101111; }

  .map {
    display: none !important; }

  .past-projects-list {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start; }

  .blog-post-full {
    padding: 33% 10% 10%; }

  .blog .col-2, .blog-post .col-2 {
    -webkit-box-flex: 1;
    -webkit-flex: 1 100%;
        -ms-flex: 1 100%;
            flex: 1 100%;
    max-width: none; } }
