@charset "UTF-8";
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
  display: block; }

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

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

[hidden] {
  display: none; }

body {
  margin: 0; }

*:focus {
  outline: none; }

a:focus {
  outline: thin dotted; }

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

b,
strong {
  font-weight: bold; }

blockquote {
  margin: 0; }

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

h1,
h2,
h3,
h4,
h5,
p,
pre {
  margin: 0; }

dl,
menu,
ol,
ul {
  margin: 0; }
  dl ul,
  dl ol,
  menu ul,
  menu ol,
  ol ul,
  ol ol,
  ul ul,
  ul ol {
    margin: 0; }

dd {
  margin: 0; }

menu,
ol,
ul {
  padding: 0; }

nav ul,
nav ol {
  list-style: none;
  list-style-image: none; }

img {
  width: 100%;
  height: auto;
  border: 0;
  -ms-interpolation-mode: bicubic; }

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

figure {
  margin: 0; }

form {
  margin: 0; }

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

button,
input,
select,
textarea {
  margin: 0;
  vertical-align: baseline;
  vertical-align: middle; }

button,
select {
  text-transform: none; }

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 0;
  cursor: pointer;
  overflow: visible;
  background: none;
  font-size: inherit;
  font-family: inherit;
  font-style: inherit;
  padding: 0; }

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

input[type="checkbox"],
input[type="radio"] {
  padding: 0; }

input[type="search"] {
  -webkit-appearance: textfield; }

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

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

textarea {
  overflow: auto;
  vertical-align: top; }

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

@font-face {
  font-family: "icons";
  src: url("../fonts/icons_5966b8eee29920f2d08a130af8b8f843.eot");
  src: url("../fonts/icons_5966b8eee29920f2d08a130af8b8f843.eot?#iefix") format("embedded-opentype"), url("../fonts/icons_5966b8eee29920f2d08a130af8b8f843.woff") format("woff"), url("../fonts/icons_5966b8eee29920f2d08a130af8b8f843.ttf") format("truetype"), url("../fonts/icons_5966b8eee29920f2d08a130af8b8f843.svg#icons") format("svg");
  font-weight: normal;
  font-style: normal; }

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  @font-face {
    font-family: "icons";
    src: url("../fonts/icons_5966b8eee29920f2d08a130af8b8f843.svg#icons") format("svg"); } }

[data-icon]:before {
  content: attr(data-icon); }

[data-icon]:before,
.icon-instagram:before,
.icon-play:before {
  display: inline-block;
  font-family: "icons";
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  line-height: 1;
  text-decoration: inherit;
  text-rendering: optimizeLegibility;
  text-transform: none;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased; }

.icon-instagram:before {
  content: "\f14b"; }

.icon-play:before {
  content: "\f14c"; }

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #f2f0ef; }

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

.ng-cloak {
  display: none !important; }

.container {
  max-width: 1125px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem; }
  .container:after {
    content: "";
    display: table;
    clear: both; }
  @media (min-width: 760px) {
    .container {
      padding-left: 3rem;
      padding-right: 3rem; } }
  .container--air {
    padding-left: 3rem;
    padding-right: 3rem; }
  .container--narrow {
    max-width: 750px; }
  .container--wide {
    max-width: 1500px; }

html {
  font-family: 'PT Serif', Georgia, serif;
  font-size: 1em;
  line-height: 1.6;
  font-weight: normal;
  font-style: normal;
  color: #232323;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  @media (min-width: 500px) {
    html {
      font-size: 1.125rem; } }
  @media (min-width: 1400px) {
    html {
      font-size: 1.25rem; } }

.article {
  overflow-x: hidden; }

.h1, .title,
.h2,
.post__title,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Varela Round', Helvetica, sans-serif;
  font-style: normal;
  font-weight: normal;
  line-height: 1.25;
  color: #344837; }

.h1, .title,
h1 {
  font-size: 2.5rem;
  line-height: 1.25;
  margin-bottom: 0.5rem; }


.h2,
.post__title,
h2 {
  font-size: 1.5rem;
  line-height: 1.25;
  margin-bottom: 0.5rem; }

.h3,
h3 {
  font-size: 1.25rem;
  line-height: 1.25;
  margin-bottom: 0.25rem; }

.h4,
.h5,
.h6,
h4,
h5,
h6 {
  font-size: 0.75rem;
  line-height: 1.25;
  margin-bottom: 0;
  text-transform: uppercase; }

.p, .post__lead,
p {
  display: block;
  max-width: 35rem;
  margin-bottom: 2rem; }
  .p + .button, .post__lead + .button,
  p + .button {
    margin-top: 0.5rem; }

.lead {
  margin-bottom: 1rem;
  font-size: 1.25rem; }

.meta, .link, .pagination__item--prev, .pagination__item--next, .some__title, .button, .label, .author__name, .author__date {
  font-family: 'Varela Round', Helvetica, sans-serif !important;
  font-style: normal;
  font-weight: normal; }

.large {
  font-size: 1.5rem; }

.normal {
  font-size: 1rem; }

.small, .date, .figure__caption,
small {
  font-size: 0.75rem;
  line-height: 1.5; }

.date {
  display: inline-block;
  margin-bottom: 1rem; }

.author {
  display: block;
  font-style: italic; }

a {
  color: #344837;
  text-decoration: none; }
  a:hover {
    color: #000; }

a[href]:not([class]) {
  display: inline !important;
  background-image: -webkit-gradient(linear, left bottom, left top, from(transparent), color-stop(0em, transparent), color-stop(0em, #ECD848), color-stop(0.1em, #ECD848), color-stop(0.1em, transparent));
  background-image: linear-gradient(to top, transparent, transparent 0em, #ECD848 0em, #ECD848 0.1em, transparent 0.1em);
  color: #232323;
  font-weight: bold;
  text-decoration: none; }
  a[href]:not([class]):focus, a[href]:not([class]):hover {
    display: inline !important;
    background-image: -webkit-gradient(linear, left bottom, left top, from(transparent), color-stop(0em, transparent), color-stop(0em, #ECD848), color-stop(1.2em, #ECD848), color-stop(1.2em, transparent));
    background-image: linear-gradient(to top, transparent, transparent 0em, #ECD848 0em, #ECD848 1.2em, transparent 1.2em);
    color: #000; }

.link, .pagination__item--prev, .pagination__item--next, .some__title {
  display: inline !important;
  background-image: -webkit-gradient(linear, left bottom, left top, from(transparent), color-stop(0em, transparent), color-stop(0em, #ECD848), color-stop(0.1em, #ECD848), color-stop(0.1em, transparent));
  background-image: linear-gradient(to top, transparent, transparent 0em, #ECD848 0em, #ECD848 0.1em, transparent 0.1em);
  color: #232323;
  text-decoration: none; }
  .link--hover, .some:hover .some__title, .link:focus, .pagination__item--prev:focus, .pagination__item--next:focus, .some__title:focus, .link:hover, .pagination__item--prev:hover, .pagination__item--next:hover, .some__title:hover {
    display: inline !important;
    background-image: -webkit-gradient(linear, left bottom, left top, from(transparent), color-stop(0em, transparent), color-stop(0em, #ECD848), color-stop(1.2em, #ECD848), color-stop(1.2em, transparent));
    background-image: linear-gradient(to top, transparent, transparent 0em, #ECD848 0em, #ECD848 1.2em, transparent 1.2em);
    color: #232323; }
  .link--hover-subtle {
    display: inline !important;
    background-image: -webkit-gradient(linear, left bottom, left top, from(transparent), color-stop(0em, transparent), color-stop(0em, #232323), color-stop(0.1em, #232323), color-stop(0.1em, transparent));
    background-image: linear-gradient(to top, transparent, transparent 0em, #232323 0em, #232323 0.1em, transparent 0.1em); }
  .link--invert, .some--invert .some__title {
    color: #FFF; }
    .link--invert:hover, .some--invert .some__title:hover, .link--invert:focus, .some--invert .some__title:focus {
      color: #232323 !important; }

.blockquote,
blockquote {
  font-size: 1.5rem;
  font-style: italic;
  text-align: center;
  color: #344837; }
  @media (min-width: 1100px) {
    .blockquote,
    blockquote {
      font-size: 2.5rem;
      line-height: 1.25; } }

.strong,
strong {
  font-weight: bold;
  color: #344837; }

.space {
  margin-bottom: 1rem; }
  .space:after {
    content: "";
    display: table;
    clear: both; }

.ol,
.ul,
ol,
ul {
  display: table;
  list-style-type: none;
  max-width: 35rem;
  margin-bottom: 1rem;
  padding-left: 1rem; }
  .ol li,
  .ul li,
  ol li,
  ul li {
    display: table-row; }
    .ol li:before,
    .ul li:before,
    ol li:before,
    ul li:before {
      display: table-cell;
      padding-right: 0.75rem;
      color: #344837;
      font-weight: bold; }
    .ol li:after,
    .ul li:after,
    ol li:after,
    ul li:after {
      content: '';
      display: block;
      height: 1rem; }
    .ol li ol,
    .ol li ul,
    .ul li ol,
    .ul li ul,
    ol li ol,
    ol li ul,
    ul li ol,
    ul li ul {
      padding-top: 1rem; }
      .ol li ol li:before,
      .ol li ul li:before,
      .ul li ol li:before,
      .ul li ul li:before,
      ol li ol li:before,
      ol li ul li:before,
      ul li ol li:before,
      ul li ul li:before {
        color: #ECD848; }
      .ol li ol li:last-child:after,
      .ol li ul li:last-child:after,
      .ul li ol li:last-child:after,
      .ul li ul li:last-child:after,
      ol li ol li:last-child:after,
      ol li ul li:last-child:after,
      ul li ol li:last-child:after,
      ul li ul li:last-child:after {
        height: 0; }

.ol li,
ol li {
  counter-increment: step-counter; }
  .ol li:before,
  ol li:before {
    content: counter(step-counter) "."; }

.ul li:before,
ul li:before {
  content: '●'; }

.hr,
hr {
  clear: both;
  width: 100%;
  max-width: 750px;
  height: 1px;
  margin: 0;
  border: none;
  border-bottom: 2px dotted #DDD;
  margin-bottom: 2rem; }
  .hr:after,
  hr:after {
    content: "";
    display: table;
    clear: both; }

.wysiwyg {
  max-width: 35rem; }
  .wysiwyg:after {
    content: "";
    display: table;
    clear: both; }

.success {
  color: #339933; }

.error {
  color: #cc0000; }

::-moz-selection {
  color: #FFF;
  background: #344837;
  text-shadow: none; }

::selection {
  color: #FFF;
  background: #344837;
  text-shadow: none; }

.touch a:focus, .touch a:hover {
  text-decoration: none;
  color: inherit;
  background-color: inherit; }

.animated {
  -webkit-animation-duration: .5s;
          animation-duration: .5s;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both; }
  .animated--fade {
    opacity: 0; }
  .animated--fade-in {
    -webkit-animation-delay: 0.5s;
            animation-delay: 0.5s;
    -webkit-animation-name: fade-in;
            animation-name: fade-in; }
  .animated--fade-out {
    -webkit-animation-name: fade-out;
            animation-name: fade-out; }

@-webkit-keyframes fade-in {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes fade-in {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes fade-out {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes fade-out {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

.button {
  padding: 0.5rem 2rem;
  -webkit-animation: none;
          animation: none;
  color: #344837;
  border: 2px solid #344837;
  background-color: transparent;
  text-decoration: none;
  line-height: inherit;
  text-align: center;
  border-radius: 3rem; }
  .button:hover, .button:focus {
    color: #FFF;
    background-color: #344837; }
  .button--invert {
    color: #FFF;
    border-color: #FFF; }
    .button--invert:hover, .button--invert:focus {
      color: #344837;
      background-color: #FFF; }
  .button--solid {
    color: #FFF;
    background-color: #344837; }
    .button--solid:hover, .button--solid:focus {
      background-color: transparent;
      color: #344837; }
  .button--small {
    padding: 0.25rem 1rem; }
  .button--full {
    width: 100%;
    margin-right: 0; }

.button + .button {
  margin-left: 1rem; }

.box {
  display: block;
  margin-bottom: 2rem;
  padding: 1rem;
  border-radius: 6px;
  background-color: #f2f0ef; }
  @media (min-width: 1100px) {
    .box {
      margin-bottom: 3rem; } }
  .box > *:last-child {
    margin-bottom: 0; }
    .box > *:last-child > *:last-child {
      margin-bottom: 0; }
      .box > *:last-child > *:last-child > *:last-child {
        margin-bottom: 0; }
  .box--success {
    background-color: #344837;
    color: #FFF; }
  .box--border {
    background-color: transparent;
    border: 2px solid #FFF; }

.block {
  margin-bottom: 1rem; }
  .block:after {
    content: "";
    display: table;
    clear: both; }
  .block--error {
    color: #cc0000; }
  .block__error {
    color: #cc0000;
    padding-top: 1rem;
    margin-bottom: 1rem; }

.label {
  display: block;
  margin-bottom: 0.5rem;
  white-space: nowrap;
  color: #344837; }

.input, .textarea {
  display: inline-block;
  padding: 0.5em 0.75em;
  width: 100%;
  font-family: inherit;
  font-weight: inherit;
  font-size: inherit;
  line-height: inherit;
  background-color: #FFF;
  border: 2px solid #DDD;
  border-radius: 6px !important;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out; }
  .input::-webkit-inner-spin-button, .textarea::-webkit-inner-spin-button, .input::-webkit-outer-spin-button, .textarea::-webkit-outer-spin-button {
    margin: 0; }
  .input:hover, .textarea:hover, .input:focus, .textarea:focus {
    outline: none;
    border-color: #344837; }
  .input--error {
    border-color: #cc0000; }
  .input--success:focus {
    border-color: #339933; }

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px #FFF inset; }

.textarea {
  margin-bottom: 1rem;
  display: block;
  min-height: 5em; }

.mask:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.mask--light:before {
  background-color: rgba(255, 255, 255, 0.5); }

.mask--dark:before {
  background-color: rgba(0, 0, 0, 0.5); }

.login {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  .login__form {
    width: calc(100% - 4rem);
    max-width: 20rem;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    background-color: #FFF;
    border-radius: 6px;
    padding: 2rem;
    text-align: center; }
    .login__form > *:last-child {
      margin-bottom: 0; }
      .login__form > *:last-child > *:last-child {
        margin-bottom: 0; }
        .login__form > *:last-child > *:last-child > *:last-child {
          margin-bottom: 0; }
  .login * {
    text-align: center; }

.body {
  max-width: 1500px;
  margin-left: auto;
  margin-right: auto;
  background-color: #FFF;
  -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.1); }
  .body:after {
    content: "";
    display: table;
    clear: both; }

.section {
  padding-top: 2rem;
  padding-bottom: 2rem; }
  .section:after {
    content: "";
    display: table;
    clear: both; }
  .section > *:last-child {
    margin-bottom: 0; }
    .section > *:last-child > *:last-child {
      margin-bottom: 0; }
      .section > *:last-child > *:last-child > *:last-child {
        margin-bottom: 0; }
  @media (min-width: 760px) {
    .section {
      padding-top: 4rem;
      padding-bottom: 4rem; } }
  .section--air {
    padding-right: 0.5rem;
    padding-left: 0.5rem; }
    @media (min-width: 760px) {
      .section--air {
        padding-right: 1rem;
        padding-left: 1rem; } }
  .section--modules {
    background-color: #FFF; }
    @media (min-width: 760px) {
      .section--modules {
        padding-top: 2rem;
        padding-bottom: 2rem; } }
  .section--comments {
    background-color: #faf9f8;
    border-top: 1px solid #f2f0ef;
    border-bottom: 1px solid #f2f0ef; }
  .section--comment {
    background-color: #FFF; }
  .section--header, .section--pagination, .section--footer {
    background-size: cover;
    background-position: bottom; }
  .section--header {
    background-image: url(../img/palms.jpg);
    color: #FFF; }
    .section--header * {
      color: #FFF; }
    @media (min-width: 760px) {
      .section--header {
        padding-top: 2rem;
        padding-bottom: 2rem; } }
  .section--pagination {
    background-image: url(../img/palms.jpg);
    color: #FFF; }
    .section--pagination * {
      color: #FFF; }
  .section--footer {
    background-image: url(../img/pineapples.jpg);
    padding-bottom: 15rem; }

.module {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem; }
  .module:after {
    content: "";
    display: table;
    clear: both; }
  .module > *:last-child {
    margin-bottom: 0; }
    .module > *:last-child > *:last-child {
      margin-bottom: 0; }
      .module > *:last-child > *:last-child > *:last-child {
        margin-bottom: 0; }
  .module--air {
    padding-right: 0.5rem;
    padding-left: 0.5rem; }
    @media (min-width: 760px) {
      .module--air {
        padding-right: 1rem;
        padding-left: 1rem; } }

.media {
  background-color: #faf9f8; }
  .media:after {
    content: "";
    display: table;
    clear: both; }
  @media (min-width: 1100px) {
    .media {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; } }
  .media__hero {
    overflow: hidden; }
    .media__hero__figure {
      height: 0;
      padding-top: 66.66%;
      position: relative;
      background-color: #FFF; }
      .media__hero__figure__img {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover;
        -o-object-position: center;
           object-position: center;
        -webkit-transition: all 5000ms ease;
        transition: all 5000ms ease; }
    @media (min-width: 1100px) {
      .media__hero {
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%; } }
  .media__content {
    padding-bottom: 2rem; }
    .media__content > *:last-child {
      margin-bottom: 0; }
      .media__content > *:last-child > *:last-child {
        margin-bottom: 0; }
        .media__content > *:last-child > *:last-child > *:last-child {
          margin-bottom: 0; }
    @media (min-width: 1100px) {
      .media__content {
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
        padding-bottom: 0; } }
  @media (min-width: 1100px) {
    .media--reverse .media__hero {
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1; } }
  .media--link:focus .media__hero__figure__img, .media--link:hover .media__hero__figure__img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    -webkit-transition: all 2000ms ease;
    transition: all 2000ms ease; }

.post {
  display: block;
  text-decoration: none;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out; }
  .post:after {
    content: "";
    display: table;
    clear: both; }
  .post__title {
    color: #344837; }
  .post__lead {
    margin: 0;
    color: #232323;
    margin-top: 0.5rem; }
  .post__author {
    margin-top: 1.5rem; }

.section + .post--without-media,
.post--with-media + .post--without-media,
.post--without-media + .post--with-media,
.post--without-media + .section {
  margin-top: 2rem; }

.parallax {
  width: 100%;
  height: 80vh;
  position: relative;
  overflow: hidden; }
  .parallax__background {
    width: 100%;
    height: calc(100% + 10vh);
    position: absolute;
    top: 0;
    left: 0;
    background-attachment: fixed;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    -webkit-transform: scale(1.1) translateY(-10vh);
            transform: scale(1.1) translateY(-10vh); }

.touch .parallax {
  height: auto;
  padding-top: 66.66%; }
  .touch .parallax__background {
    height: 100%;
    background-attachment: scroll;
    -webkit-transform: none;
            transform: none; }

.form {
  display: block;
  margin-bottom: 2rem; }
  @media (min-width: 1100px) {
    .form {
      margin-bottom: 3rem; } }
  .form > *:last-child {
    margin-bottom: 0; }
    .form > *:last-child > *:last-child {
      margin-bottom: 0; }
      .form > *:last-child > *:last-child > *:last-child {
        margin-bottom: 0; }

.video {
  position: relative;
  margin-left: auto;
  margin-right: auto; }
  .video:after {
    content: "";
    display: table;
    clear: both; }
  .video__embed {
    position: relative;
    padding-top: 56.25%; }
    .video__embed__iframe {
      width: 100%;
      height: 100%;
      position: absolute;
      border: 0;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0; }
  .video__player {
    width: 100%;
    display: block; }

.gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -0.5rem;
  margin-right: -0.5rem; }
  .gallery:after {
    content: "";
    display: table;
    clear: both; }
  .gallery__item {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    padding: 0.5rem; }
    @media (min-width: 500px) {
      .gallery__item {
        -ms-flex-preferred-size: 33.33%;
            flex-basis: 33.33%; } }
    @media (min-width: 760px) {
      .gallery__item {
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%; } }
    @media (min-width: 1100px) {
      .gallery__item {
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%; } }
    .gallery__item:hover {
      background-color: #ECD848; }
    .gallery__item__img {
      display: block; }
    .gallery__item__caption {
      display: none; }

.figure {
  position: relative;
  background-color: #faf9f8;
  margin-right: -1.5rem;
  margin-left: -1.5rem; }
  .figure:after {
    content: "";
    display: table;
    clear: both; }
  .figure__img {
    display: block; }
  .figure__caption {
    color: #000;
    background-color: #faf9f8;
    padding: 1rem 1.5rem;
    position: relative;
    z-index: 1000; }
    @media (min-width: 760px) {
      .figure__caption {
        position: absolute;
        bottom: -1rem;
        right: -1rem;
        max-width: 25rem;
        padding: 1rem; } }
  .figure--large {
    margin-right: 0;
    margin-left: 0; }

.comment:after {
  content: "";
  display: table;
  clear: both; }

.comment__author {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem; }

.comment__content {
  position: relative;
  -webkit-box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1);
  border-radius: 6px; }
  .comment__content > *:last-child {
    margin-bottom: 0; }
    .comment__content > *:last-child > *:last-child {
      margin-bottom: 0; }
      .comment__content > *:last-child > *:last-child > *:last-child {
        margin-bottom: 0; }
  .comment__content:before {
    content: "";
    position: absolute;
    width: 0.5rem;
    height: 0.5rem;
    background: #FFF;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    top: -0.25rem;
    left: 1.25rem;
    z-index: 0;
    -webkit-box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1); }
  .comment__content__wrapper {
    position: relative;
    z-index: 10;
    padding: 1rem;
    background-color: #FFF;
    border-radius: 6px; }

.comment--answer {
  margin-left: 4rem; }

.comment + .comment {
  margin-top: 2rem; }

.author {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: left;
  line-height: 1.125; }
  .author__hero {
    width: 3em;
    height: 3em;
    margin-right: 1em;
    border-radius: 100%;
    overflow: hidden;
    background-color: #FFF;
    border: 2px solid #FFF;
    -webkit-box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1); }
    .author__hero:after {
      content: "";
      display: table;
      clear: both; }
    .author__hero__figure {
      overflow: hidden; }
      .author__hero__figure__img {
        display: block;
        border-radius: 100%; }
  .author__name {
    color: #344837;
    font-size: 1em; }
  .author__date {
    color: #626262;
    font-size: 0.75em; }
  .author--small {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    font-size: 0.8rem; }

.pagination {
  position: relative; }
  .pagination__item {
    display: inline-block;
    position: relative;
    z-index: 1; }
    .pagination__item--prev {
      float: left;
      text-align: left; }
    .pagination__item--counter {
      position: absolute;
      left: 0;
      right: 0;
      width: 100%;
      text-align: center;
      z-index: 0; }
    .pagination__item--next {
      float: right;
      text-align: right; }

.some {
  display: inline;
  margin-top: -0.5em; }
  .some__icon {
    font-size: 2em;
    line-height: 1;
    position: relative;
    top: 0.25em;
    margin-left: 0.5em;
    color: #232323; }
  .some--invert .some__icon {
    color: #FFF; }

.some + .some:before {
  content: ' ';
  display: block;
  height: calc(2rem - 0.5em); }

.o-clearfix:after {
  content: "";
  display: table;
  clear: both; }

.o-clear-both {
  clear: both; }

.o-clear-left {
  clear: left; }

.o-clear-right {
  clear: right; }

.o-right {
  float: right; }

.o-left {
  float: left; }

.o-table {
  display: table; }

.o-table-cell {
  display: table-cell; }

.o-block {
  display: block; }

.o-inline {
  display: inline; }

.o-inline-block {
  display: inline-block; }

.o-oh {
  overflow: hidden; }

.o-ov {
  overflow: visible; }

.o-center-vertical {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%); }

.o-center-horizontal {
  clear: both;
  float: none;
  margin-left: auto;
  margin-right: auto; }

.o-space {
  margin-bottom: 1rem; }

.o-space-grid-gutter {
  margin-bottom: 2rem; }

.o-space-gutter {
  margin-bottom: 1rem; }

.o-space-gutter-half {
  margin-bottom: 0.5rem; }

.o-space-gutter-1 {
  margin-bottom: 1rem; }

.o-space-gutter-2 {
  margin-bottom: 2rem; }

.o-space-gutter-3 {
  margin-bottom: 3rem; }

.o-space-top {
  margin-top: 1rem; }

.o-space-top-gutter-half {
  margin-top: 0.5rem; }

.o-relative {
  position: relative; }

.o-static {
  position: static; }

.o-no-scroll {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  overflow: hidden; }

.o-element {
  display: inline-block;
  margin-right: 1rem;
  margin-bottom: 1rem; }

.o-component {
  display: block;
  margin-bottom: 2rem; }
  @media (min-width: 1100px) {
    .o-component {
      margin-bottom: 3rem; } }

.o-no-margin {
  margin: 0; }

.o-no-margin-top {
  margin-top: 0; }

.o-no-margin-right {
  margin-right: 0; }

.o-no-margin-bottom {
  margin-bottom: 0; }

.o-no-margin-left {
  margin-left: 0; }

.o-no-padding {
  padding: 0; }

.o-no-padding-top {
  padding-top: 0; }

.o-no-padding-right {
  padding-right: 0; }

.o-no-padding-bottom {
  padding-bottom: 0; }

.o-no-padding-left {
  padding-left: 0; }

.o-no-border {
  border: 0; }

.o-no-border-top {
  border-top: 0; }

.o-no-border-right {
  border-right: 0; }

.o-no-border-bottom {
  border-bottom: 0; }

.o-no-border-left {
  border-left: 0; }

.o-show {
  display: block; }

.o-hide {
  display: none; }

.o-shadow {
  -webkit-box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1); }

.o-text-uppercase {
  text-transform: uppercase; }

.o-text-lowercase {
  text-transform: lowercase; }

.o-text-center {
  text-align: center; }
  .o-text-center p {
    margin-left: auto;
    margin-right: auto; }

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

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

.o-text-strong {
  font-weight: bold; }

.o-text-italic {
  font-style: italic; }

.o-text-nowrap {
  white-space: nowrap; }

.o-text-hide {
  font: 0/0 a;
  text-shadow: none;
  color: transparent; }

.o-text-disable-select {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.o-text-antialiased, .input, .textarea {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.o-text-emboss {
  -webkit-box-shadow: #FFF 0.8 0 1px 0, inset #000 0.05 0 1px 0;
          box-shadow: #FFF 0.8 0 1px 0, inset #000 0.05 0 1px 0; }

.o-text-letterpress {
  text-shadow: #FFF 0.5 0 1px 0; }

.o-reset-float {
  float: none; }

.o-reset-list {
  list-style: none;
  margin: 0;
  padding: 0;
  border: none; }
  .o-reset-list li {
    margin: 0;
    padding: 0; }
    .o-reset-list li:before, .o-reset-list li:after {
      display: none; }

.o-reset-appearance, .input, .textarea {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  border-radius: 0; }

.o-reset-clearfix:after {
  display: inline;
  clear: none; }

.o-reset-spacing > *:last-child {
  margin-bottom: 0; }
  .o-reset-spacing > *:last-child > *:last-child {
    margin-bottom: 0; }
    .o-reset-spacing > *:last-child > *:last-child > *:last-child {
      margin-bottom: 0; }

.o-reset-pointer {
  pointer-events: none; }

.o-max {
  max-width: 35rem; }

.o-color-primary {
  color: #344837; }

.o-color-primary-lighter {
  color: #0D35BC; }

.o-color-secondary {
  color: #ECD848; }

.o-color-link {
  color: #344837; }

.o-color-link-hover {
  color: #000; }

.o-color-text {
  color: #232323; }

.o-color-text-lighter {
  color: #626262; }

.o-color-border {
  color: #DDD; }

.o-color-background-darker {
  color: #E5E1DE; }

.o-color-background {
  color: #f2f0ef; }

.o-color-background-lighter {
  color: #faf9f8; }

.o-color-light {
  color: #FFF; }

.o-color-dark {
  color: #000; }

.o-color-error {
  color: #cc0000; }

.o-color-success {
  color: #339933; }

.o-background-color-primary {
  background-color: #344837; }

.o-background-color-primary-lighter {
  background-color: #0D35BC; }

.o-background-color-secondary {
  background-color: #ECD848; }

.o-background-color-link {
  background-color: #344837; }

.o-background-color-link-hover {
  background-color: #000; }

.o-background-color-text {
  background-color: #232323; }

.o-background-color-text-lighter {
  background-color: #626262; }

.o-background-color-border {
  background-color: #DDD; }

.o-background-color-background-darker {
  background-color: #E5E1DE; }

.o-background-color-background {
  background-color: #f2f0ef; }

.o-background-color-background-lighter {
  background-color: #faf9f8; }

.o-background-color-light {
  background-color: #FFF; }

.o-background-color-dark {
  background-color: #000; }

.o-background-color-error {
  background-color: #cc0000; }

.o-background-color-success {
  background-color: #339933; }

.o-background-negative {
  color: #FFF; }
  .o-background-negative a[href]:not([class]) {
    color: #FFF;
    border-bottom-color: #FFF; }
    .o-background-negative a[href]:not([class]):focus, .o-background-negative a[href]:not([class]):hover {
      color: #FFF;
      border-bottom-color: #FFF; }
