@charset "UTF-8";
/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
/* @import url("https://use.typekit.net/jvs1btc.css"); */
.hamburger {
  padding: 15px 15px;
  display: inline-block;
  cursor: pointer;
  -webkit-transition-property: opacity, -webkit-filter;
  transition-property: opacity, -webkit-filter;
  transition-property: opacity, filter;
  transition-property: opacity, filter, -webkit-filter;
  -webkit-transition-duration: 0.15s;
          transition-duration: 0.15s;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }
  .hamburger:hover {
    opacity: 0.7; }
  .hamburger.is-active:hover {
    opacity: 0.7; }
  .hamburger.is-active .hamburger-inner,
  .hamburger.is-active .hamburger-inner::before,
  .hamburger.is-active .hamburger-inner::after {
    background-color: #000; }

.hamburger-box {
  width: 40px;
  height: 24px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 40px;
    height: 4px;
    background-color: #000;
    border-radius: 4px;
    position: absolute;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-duration: 0.15s;
            transition-duration: 0.15s;
    -webkit-transition-timing-function: ease;
            transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -10px; }
  .hamburger-inner::after {
    bottom: -10px; }

/*
   * 3DX
   */
.hamburger--3dx .hamburger-box {
  -webkit-perspective: 80px;
          perspective: 80px; }

.hamburger--3dx .hamburger-inner {
  -webkit-transition: background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dx .hamburger-inner::before, .hamburger--3dx .hamburger-inner::after {
    -webkit-transition: -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dx.is-active .hamburger-inner {
  background-color: transparent !important;
  -webkit-transform: rotateY(180deg);
          transform: rotateY(180deg); }
  .hamburger--3dx.is-active .hamburger-inner::before {
    -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
            transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dx.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
            transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
   * 3DX Reverse
   */
.hamburger--3dx-r .hamburger-box {
  -webkit-perspective: 80px;
          perspective: 80px; }

.hamburger--3dx-r .hamburger-inner {
  -webkit-transition: background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dx-r .hamburger-inner::before, .hamburger--3dx-r .hamburger-inner::after {
    -webkit-transition: -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dx-r.is-active .hamburger-inner {
  background-color: transparent !important;
  -webkit-transform: rotateY(-180deg);
          transform: rotateY(-180deg); }
  .hamburger--3dx-r.is-active .hamburger-inner::before {
    -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
            transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dx-r.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
            transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
   * 3DY
   */
.hamburger--3dy .hamburger-box {
  -webkit-perspective: 80px;
          perspective: 80px; }

.hamburger--3dy .hamburger-inner {
  -webkit-transition: background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dy .hamburger-inner::before, .hamburger--3dy .hamburger-inner::after {
    -webkit-transition: -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dy.is-active .hamburger-inner {
  background-color: transparent !important;
  -webkit-transform: rotateX(-180deg);
          transform: rotateX(-180deg); }
  .hamburger--3dy.is-active .hamburger-inner::before {
    -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
            transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dy.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
            transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
   * 3DY Reverse
   */
.hamburger--3dy-r .hamburger-box {
  -webkit-perspective: 80px;
          perspective: 80px; }

.hamburger--3dy-r .hamburger-inner {
  -webkit-transition: background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dy-r .hamburger-inner::before, .hamburger--3dy-r .hamburger-inner::after {
    -webkit-transition: -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dy-r.is-active .hamburger-inner {
  background-color: transparent !important;
  -webkit-transform: rotateX(180deg);
          transform: rotateX(180deg); }
  .hamburger--3dy-r.is-active .hamburger-inner::before {
    -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
            transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dy-r.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
            transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
   * 3DXY
   */
.hamburger--3dxy .hamburger-box {
  -webkit-perspective: 80px;
          perspective: 80px; }

.hamburger--3dxy .hamburger-inner {
  -webkit-transition: background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dxy .hamburger-inner::before, .hamburger--3dxy .hamburger-inner::after {
    -webkit-transition: -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dxy.is-active .hamburger-inner {
  background-color: transparent !important;
  -webkit-transform: rotateX(180deg) rotateY(180deg);
          transform: rotateX(180deg) rotateY(180deg); }
  .hamburger--3dxy.is-active .hamburger-inner::before {
    -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
            transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dxy.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
            transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
   * 3DXY Reverse
   */
.hamburger--3dxy-r .hamburger-box {
  -webkit-perspective: 80px;
          perspective: 80px; }

.hamburger--3dxy-r .hamburger-inner {
  -webkit-transition: background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dxy-r .hamburger-inner::before, .hamburger--3dxy-r .hamburger-inner::after {
    -webkit-transition: -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dxy-r.is-active .hamburger-inner {
  background-color: transparent !important;
  -webkit-transform: rotateX(180deg) rotateY(180deg) rotateZ(-180deg);
          transform: rotateX(180deg) rotateY(180deg) rotateZ(-180deg); }
  .hamburger--3dxy-r.is-active .hamburger-inner::before {
    -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
            transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dxy-r.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
            transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
   * Arrow
   */
.hamburger--arrow.is-active .hamburger-inner::before {
  -webkit-transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1);
          transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1); }

.hamburger--arrow.is-active .hamburger-inner::after {
  -webkit-transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1);
          transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1); }

/*
   * Arrow Right
   */
.hamburger--arrow-r.is-active .hamburger-inner::before {
  -webkit-transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1);
          transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1); }

.hamburger--arrow-r.is-active .hamburger-inner::after {
  -webkit-transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1);
          transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1); }

/*
   * Arrow Alt
   */
.hamburger--arrowalt .hamburger-inner::before {
  -webkit-transition: top 0.1s 0.1s ease, -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: top 0.1s 0.1s ease, -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }

.hamburger--arrowalt .hamburger-inner::after {
  -webkit-transition: bottom 0.1s 0.1s ease, -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: bottom 0.1s 0.1s ease, -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }

.hamburger--arrowalt.is-active .hamburger-inner::before {
  top: 0;
  -webkit-transform: translate3d(-8px, -10px, 0) rotate(-45deg) scale(0.7, 1);
          transform: translate3d(-8px, -10px, 0) rotate(-45deg) scale(0.7, 1);
  -webkit-transition: top 0.1s ease, -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
  transition: top 0.1s ease, -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22), -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

.hamburger--arrowalt.is-active .hamburger-inner::after {
  bottom: 0;
  -webkit-transform: translate3d(-8px, 10px, 0) rotate(45deg) scale(0.7, 1);
          transform: translate3d(-8px, 10px, 0) rotate(45deg) scale(0.7, 1);
  -webkit-transition: bottom 0.1s ease, -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
  transition: bottom 0.1s ease, -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22), -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

/*
   * Arrow Alt Right
   */
.hamburger--arrowalt-r .hamburger-inner::before {
  -webkit-transition: top 0.1s 0.1s ease, -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: top 0.1s 0.1s ease, -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }

.hamburger--arrowalt-r .hamburger-inner::after {
  -webkit-transition: bottom 0.1s 0.1s ease, -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: bottom 0.1s 0.1s ease, -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }

.hamburger--arrowalt-r.is-active .hamburger-inner::before {
  top: 0;
  -webkit-transform: translate3d(8px, -10px, 0) rotate(45deg) scale(0.7, 1);
          transform: translate3d(8px, -10px, 0) rotate(45deg) scale(0.7, 1);
  -webkit-transition: top 0.1s ease, -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
  transition: top 0.1s ease, -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22), -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

.hamburger--arrowalt-r.is-active .hamburger-inner::after {
  bottom: 0;
  -webkit-transform: translate3d(8px, 10px, 0) rotate(-45deg) scale(0.7, 1);
          transform: translate3d(8px, 10px, 0) rotate(-45deg) scale(0.7, 1);
  -webkit-transition: bottom 0.1s ease, -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
  transition: bottom 0.1s ease, -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22), -webkit-transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

/*
   * Arrow Turn
   */
.hamburger--arrowturn.is-active .hamburger-inner {
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg); }
  .hamburger--arrowturn.is-active .hamburger-inner::before {
    -webkit-transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1);
            transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1); }
  .hamburger--arrowturn.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1);
            transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1); }

/*
   * Arrow Turn Right
   */
.hamburger--arrowturn-r.is-active .hamburger-inner {
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg); }
  .hamburger--arrowturn-r.is-active .hamburger-inner::before {
    -webkit-transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1);
            transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1); }
  .hamburger--arrowturn-r.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1);
            transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1); }

/*
   * Boring
   */
.hamburger--boring .hamburger-inner, .hamburger--boring .hamburger-inner::before, .hamburger--boring .hamburger-inner::after {
  -webkit-transition-property: none;
  transition-property: none; }

.hamburger--boring.is-active .hamburger-inner {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg); }
  .hamburger--boring.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--boring.is-active .hamburger-inner::after {
    bottom: 0;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg); }

/*
   * Collapse
   */
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  -webkit-transition-duration: 0.13s;
          transition-duration: 0.13s;
  -webkit-transition-delay: 0.13s;
          transition-delay: 0.13s;
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
          transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--collapse .hamburger-inner::after {
    top: -20px;
    -webkit-transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; }
  .hamburger--collapse .hamburger-inner::before {
    -webkit-transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--collapse.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
          transform: translate3d(0, -10px, 0) rotate(-45deg);
  -webkit-transition-delay: 0.22s;
          transition-delay: 0.22s;
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
          transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--collapse.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    -webkit-transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; }
  .hamburger--collapse.is-active .hamburger-inner::before {
    top: 0;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
    -webkit-transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Collapse Reverse
   */
.hamburger--collapse-r .hamburger-inner {
  top: auto;
  bottom: 0;
  -webkit-transition-duration: 0.13s;
          transition-duration: 0.13s;
  -webkit-transition-delay: 0.13s;
          transition-delay: 0.13s;
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
          transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--collapse-r .hamburger-inner::after {
    top: -20px;
    -webkit-transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; }
  .hamburger--collapse-r .hamburger-inner::before {
    -webkit-transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--collapse-r.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, -10px, 0) rotate(45deg);
          transform: translate3d(0, -10px, 0) rotate(45deg);
  -webkit-transition-delay: 0.22s;
          transition-delay: 0.22s;
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
          transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--collapse-r.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    -webkit-transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; }
  .hamburger--collapse-r.is-active .hamburger-inner::before {
    top: 0;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    -webkit-transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Elastic
   */
.hamburger--elastic .hamburger-inner {
  top: 2px;
  -webkit-transition-duration: 0.275s;
          transition-duration: 0.275s;
  -webkit-transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
          transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
  .hamburger--elastic .hamburger-inner::before {
    top: 10px;
    -webkit-transition: opacity 0.125s 0.275s ease;
    transition: opacity 0.125s 0.275s ease; }
  .hamburger--elastic .hamburger-inner::after {
    top: 20px;
    -webkit-transition: -webkit-transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: -webkit-transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55), -webkit-transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); }

.hamburger--elastic.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, 10px, 0) rotate(135deg);
          transform: translate3d(0, 10px, 0) rotate(135deg);
  -webkit-transition-delay: 0.075s;
          transition-delay: 0.075s; }
  .hamburger--elastic.is-active .hamburger-inner::before {
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
    opacity: 0; }
  .hamburger--elastic.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -20px, 0) rotate(-270deg);
            transform: translate3d(0, -20px, 0) rotate(-270deg);
    -webkit-transition-delay: 0.075s;
            transition-delay: 0.075s; }

/*
   * Elastic Reverse
   */
.hamburger--elastic-r .hamburger-inner {
  top: 2px;
  -webkit-transition-duration: 0.275s;
          transition-duration: 0.275s;
  -webkit-transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
          transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
  .hamburger--elastic-r .hamburger-inner::before {
    top: 10px;
    -webkit-transition: opacity 0.125s 0.275s ease;
    transition: opacity 0.125s 0.275s ease; }
  .hamburger--elastic-r .hamburger-inner::after {
    top: 20px;
    -webkit-transition: -webkit-transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: -webkit-transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55), -webkit-transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); }

.hamburger--elastic-r.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, 10px, 0) rotate(-135deg);
          transform: translate3d(0, 10px, 0) rotate(-135deg);
  -webkit-transition-delay: 0.075s;
          transition-delay: 0.075s; }
  .hamburger--elastic-r.is-active .hamburger-inner::before {
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
    opacity: 0; }
  .hamburger--elastic-r.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -20px, 0) rotate(270deg);
            transform: translate3d(0, -20px, 0) rotate(270deg);
    -webkit-transition-delay: 0.075s;
            transition-delay: 0.075s; }

/*
   * Emphatic
   */
.hamburger--emphatic {
  overflow: hidden; }
  .hamburger--emphatic .hamburger-inner {
    -webkit-transition: background-color 0.125s 0.175s ease-in;
    transition: background-color 0.125s 0.175s ease-in; }
    .hamburger--emphatic .hamburger-inner::before {
      left: 0;
      -webkit-transition: top 0.05s 0.125s linear, left 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335);
      transition: top 0.05s 0.125s linear, left 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335);
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335); }
    .hamburger--emphatic .hamburger-inner::after {
      top: 10px;
      right: 0;
      -webkit-transition: top 0.05s 0.125s linear, right 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335);
      transition: top 0.05s 0.125s linear, right 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335);
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335); }
  .hamburger--emphatic.is-active .hamburger-inner {
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
    -webkit-transition-timing-function: ease-out;
            transition-timing-function: ease-out;
    background-color: transparent !important; }
    .hamburger--emphatic.is-active .hamburger-inner::before {
      left: -80px;
      top: -80px;
      -webkit-transform: translate3d(80px, 80px, 0) rotate(45deg);
              transform: translate3d(80px, 80px, 0) rotate(45deg);
      -webkit-transition: left 0.125s ease-out, top 0.05s 0.125s linear, -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
      transition: left 0.125s ease-out, top 0.05s 0.125s linear, -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
      transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
      transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1), -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }
    .hamburger--emphatic.is-active .hamburger-inner::after {
      right: -80px;
      top: -80px;
      -webkit-transform: translate3d(-80px, 80px, 0) rotate(-45deg);
              transform: translate3d(-80px, 80px, 0) rotate(-45deg);
      -webkit-transition: right 0.125s ease-out, top 0.05s 0.125s linear, -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
      transition: right 0.125s ease-out, top 0.05s 0.125s linear, -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
      transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
      transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1), -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }

/*
   * Emphatic Reverse
   */
.hamburger--emphatic-r {
  overflow: hidden; }
  .hamburger--emphatic-r .hamburger-inner {
    -webkit-transition: background-color 0.125s 0.175s ease-in;
    transition: background-color 0.125s 0.175s ease-in; }
    .hamburger--emphatic-r .hamburger-inner::before {
      left: 0;
      -webkit-transition: top 0.05s 0.125s linear, left 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335);
      transition: top 0.05s 0.125s linear, left 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335);
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335); }
    .hamburger--emphatic-r .hamburger-inner::after {
      top: 10px;
      right: 0;
      -webkit-transition: top 0.05s 0.125s linear, right 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335);
      transition: top 0.05s 0.125s linear, right 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335);
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in, -webkit-transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335); }
  .hamburger--emphatic-r.is-active .hamburger-inner {
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
    -webkit-transition-timing-function: ease-out;
            transition-timing-function: ease-out;
    background-color: transparent !important; }
    .hamburger--emphatic-r.is-active .hamburger-inner::before {
      left: -80px;
      top: 80px;
      -webkit-transform: translate3d(80px, -80px, 0) rotate(-45deg);
              transform: translate3d(80px, -80px, 0) rotate(-45deg);
      -webkit-transition: left 0.125s ease-out, top 0.05s 0.125s linear, -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
      transition: left 0.125s ease-out, top 0.05s 0.125s linear, -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
      transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
      transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1), -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }
    .hamburger--emphatic-r.is-active .hamburger-inner::after {
      right: -80px;
      top: 80px;
      -webkit-transform: translate3d(-80px, -80px, 0) rotate(45deg);
              transform: translate3d(-80px, -80px, 0) rotate(45deg);
      -webkit-transition: right 0.125s ease-out, top 0.05s 0.125s linear, -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
      transition: right 0.125s ease-out, top 0.05s 0.125s linear, -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
      transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
      transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1), -webkit-transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }

/*
   * Minus
   */
.hamburger--minus .hamburger-inner::before, .hamburger--minus .hamburger-inner::after {
  -webkit-transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear;
  transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear; }

.hamburger--minus.is-active .hamburger-inner::before, .hamburger--minus.is-active .hamburger-inner::after {
  opacity: 0;
  -webkit-transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear;
  transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear; }

.hamburger--minus.is-active .hamburger-inner::before {
  top: 0; }

.hamburger--minus.is-active .hamburger-inner::after {
  bottom: 0; }

/*
   * Slider
   */
.hamburger--slider .hamburger-inner {
  top: 2px; }
  .hamburger--slider .hamburger-inner::before {
    top: 10px;
    -webkit-transition-property: opacity, -webkit-transform;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-transition-timing-function: ease;
            transition-timing-function: ease;
    -webkit-transition-duration: 0.15s;
            transition-duration: 0.15s; }
  .hamburger--slider .hamburger-inner::after {
    top: 20px; }

.hamburger--slider.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
          transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--slider.is-active .hamburger-inner::before {
    -webkit-transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0);
            transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0);
    opacity: 0; }
  .hamburger--slider.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -20px, 0) rotate(-90deg);
            transform: translate3d(0, -20px, 0) rotate(-90deg); }

/*
   * Slider Reverse
   */
.hamburger--slider-r .hamburger-inner {
  top: 2px; }
  .hamburger--slider-r .hamburger-inner::before {
    top: 10px;
    -webkit-transition-property: opacity, -webkit-transform;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-transition-timing-function: ease;
            transition-timing-function: ease;
    -webkit-transition-duration: 0.15s;
            transition-duration: 0.15s; }
  .hamburger--slider-r .hamburger-inner::after {
    top: 20px; }

.hamburger--slider-r.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, 10px, 0) rotate(-45deg);
          transform: translate3d(0, 10px, 0) rotate(-45deg); }
  .hamburger--slider-r.is-active .hamburger-inner::before {
    -webkit-transform: rotate(45deg) translate3d(5.71429px, -6px, 0);
            transform: rotate(45deg) translate3d(5.71429px, -6px, 0);
    opacity: 0; }
  .hamburger--slider-r.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -20px, 0) rotate(90deg);
            transform: translate3d(0, -20px, 0) rotate(90deg); }

/*
   * Spin
   */
.hamburger--spin .hamburger-inner {
  -webkit-transition-duration: 0.22s;
          transition-duration: 0.22s;
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
          transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spin .hamburger-inner::before {
    -webkit-transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
  .hamburger--spin .hamburger-inner::after {
    -webkit-transition: bottom 0.1s 0.25s ease-in, -webkit-transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.1s 0.25s ease-in, -webkit-transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spin.is-active .hamburger-inner {
  -webkit-transform: rotate(225deg);
          transform: rotate(225deg);
  -webkit-transition-delay: 0.12s;
          transition-delay: 0.12s;
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
          transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spin.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    -webkit-transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
  .hamburger--spin.is-active .hamburger-inner::after {
    bottom: 0;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
    -webkit-transition: bottom 0.1s ease-out, -webkit-transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.1s ease-out, -webkit-transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Spin Reverse
   */
.hamburger--spin-r .hamburger-inner {
  -webkit-transition-duration: 0.22s;
          transition-duration: 0.22s;
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
          transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spin-r .hamburger-inner::before {
    -webkit-transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
  .hamburger--spin-r .hamburger-inner::after {
    -webkit-transition: bottom 0.1s 0.25s ease-in, -webkit-transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.1s 0.25s ease-in, -webkit-transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spin-r.is-active .hamburger-inner {
  -webkit-transform: rotate(-225deg);
          transform: rotate(-225deg);
  -webkit-transition-delay: 0.12s;
          transition-delay: 0.12s;
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
          transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spin-r.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    -webkit-transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
  .hamburger--spin-r.is-active .hamburger-inner::after {
    bottom: 0;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    -webkit-transition: bottom 0.1s ease-out, -webkit-transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.1s ease-out, -webkit-transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Spring
   */
.hamburger--spring .hamburger-inner {
  top: 2px;
  -webkit-transition: background-color 0s 0.13s linear;
  transition: background-color 0s 0.13s linear; }
  .hamburger--spring .hamburger-inner::before {
    top: 10px;
    -webkit-transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spring .hamburger-inner::after {
    top: 20px;
    -webkit-transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spring.is-active .hamburger-inner {
  -webkit-transition-delay: 0.22s;
          transition-delay: 0.22s;
  background-color: transparent !important; }
  .hamburger--spring.is-active .hamburger-inner::before {
    top: 0;
    -webkit-transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
            transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--spring.is-active .hamburger-inner::after {
    top: 0;
    -webkit-transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 10px, 0) rotate(-45deg);
            transform: translate3d(0, 10px, 0) rotate(-45deg); }

/*
   * Spring Reverse
   */
.hamburger--spring-r .hamburger-inner {
  top: auto;
  bottom: 0;
  -webkit-transition-duration: 0.13s;
          transition-duration: 0.13s;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
          transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spring-r .hamburger-inner::after {
    top: -20px;
    -webkit-transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear; }
  .hamburger--spring-r .hamburger-inner::before {
    -webkit-transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spring-r.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
          transform: translate3d(0, -10px, 0) rotate(-45deg);
  -webkit-transition-delay: 0.22s;
          transition-delay: 0.22s;
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
          transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spring-r.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    -webkit-transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.22s linear;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.22s linear; }
  .hamburger--spring-r.is-active .hamburger-inner::before {
    top: 0;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    -webkit-transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Stand
   */
.hamburger--stand .hamburger-inner {
  -webkit-transition: background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--stand .hamburger-inner::before {
    -webkit-transition: top 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--stand .hamburger-inner::after {
    -webkit-transition: bottom 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--stand.is-active .hamburger-inner {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  background-color: transparent !important;
  -webkit-transition: background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--stand.is-active .hamburger-inner::before {
    top: 0;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    -webkit-transition: top 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--stand.is-active .hamburger-inner::after {
    bottom: 0;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transition: bottom 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Stand Reverse
   */
.hamburger--stand-r .hamburger-inner {
  -webkit-transition: background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--stand-r .hamburger-inner::before {
    -webkit-transition: top 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--stand-r .hamburger-inner::after {
    -webkit-transition: bottom 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--stand-r.is-active .hamburger-inner {
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  background-color: transparent !important;
  -webkit-transition: background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--stand-r.is-active .hamburger-inner::before {
    top: 0;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    -webkit-transition: top 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--stand-r.is-active .hamburger-inner::after {
    bottom: 0;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transition: bottom 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Squeeze
   */
.hamburger--squeeze .hamburger-inner {
  -webkit-transition-duration: 0.075s;
          transition-duration: 0.075s;
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
          transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--squeeze .hamburger-inner::before {
    -webkit-transition: top 0.075s 0.12s ease, opacity 0.075s ease;
    transition: top 0.075s 0.12s ease, opacity 0.075s ease; }
  .hamburger--squeeze .hamburger-inner::after {
    -webkit-transition: bottom 0.075s 0.12s ease, -webkit-transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.075s 0.12s ease, -webkit-transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--squeeze.is-active .hamburger-inner {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition-delay: 0.12s;
          transition-delay: 0.12s;
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
          transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--squeeze.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    -webkit-transition: top 0.075s ease, opacity 0.075s 0.12s ease;
    transition: top 0.075s ease, opacity 0.075s 0.12s ease; }
  .hamburger--squeeze.is-active .hamburger-inner::after {
    bottom: 0;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
    -webkit-transition: bottom 0.075s ease, -webkit-transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.075s ease, -webkit-transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Vortex
   */
.hamburger--vortex .hamburger-inner {
  -webkit-transition-duration: 0.2s;
          transition-duration: 0.2s;
  -webkit-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
          transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex .hamburger-inner::before, .hamburger--vortex .hamburger-inner::after {
    -webkit-transition-duration: 0s;
            transition-duration: 0s;
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
    -webkit-transition-timing-function: linear;
            transition-timing-function: linear; }
  .hamburger--vortex .hamburger-inner::before {
    -webkit-transition-property: top, opacity;
    transition-property: top, opacity; }
  .hamburger--vortex .hamburger-inner::after {
    -webkit-transition-property: bottom, -webkit-transform;
    transition-property: bottom, -webkit-transform;
    transition-property: bottom, transform;
    transition-property: bottom, transform, -webkit-transform; }

.hamburger--vortex.is-active .hamburger-inner {
  -webkit-transform: rotate(765deg);
          transform: rotate(765deg);
  -webkit-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
          transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex.is-active .hamburger-inner::before, .hamburger--vortex.is-active .hamburger-inner::after {
    -webkit-transition-delay: 0s;
            transition-delay: 0s; }
  .hamburger--vortex.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--vortex.is-active .hamburger-inner::after {
    bottom: 0;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg); }

/*
   * Vortex Reverse
   */
.hamburger--vortex-r .hamburger-inner {
  -webkit-transition-duration: 0.2s;
          transition-duration: 0.2s;
  -webkit-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
          transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex-r .hamburger-inner::before, .hamburger--vortex-r .hamburger-inner::after {
    -webkit-transition-duration: 0s;
            transition-duration: 0s;
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
    -webkit-transition-timing-function: linear;
            transition-timing-function: linear; }
  .hamburger--vortex-r .hamburger-inner::before {
    -webkit-transition-property: top, opacity;
    transition-property: top, opacity; }
  .hamburger--vortex-r .hamburger-inner::after {
    -webkit-transition-property: bottom, -webkit-transform;
    transition-property: bottom, -webkit-transform;
    transition-property: bottom, transform;
    transition-property: bottom, transform, -webkit-transform; }

.hamburger--vortex-r.is-active .hamburger-inner {
  -webkit-transform: rotate(-765deg);
          transform: rotate(-765deg);
  -webkit-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
          transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex-r.is-active .hamburger-inner::before, .hamburger--vortex-r.is-active .hamburger-inner::after {
    -webkit-transition-delay: 0s;
            transition-delay: 0s; }
  .hamburger--vortex-r.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--vortex-r.is-active .hamburger-inner::after {
    bottom: 0;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg); }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat; }

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

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: -25px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: -25px; }
  .slick-prev:before {
    content: "←"; }
    [dir="rtl"] .slick-prev:before {
      content: "→"; }

.slick-next {
  right: -25px; }
  [dir="rtl"] .slick-next {
    left: -25px;
    right: auto; }
  .slick-next:before {
    content: "→"; }
    [dir="rtl"] .slick-next:before {
      content: "←"; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "•";
        width: 20px;
        height: 20px;
        font-family: "slick";
        font-size: 6px;
        line-height: 20px;
        text-align: center;
        color: black;
        opacity: 0.25;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: black;
      opacity: 0.75; }

.carousel {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

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

.carousel.is-draggable {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab; }

.carousel.is-dragging {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: grabbing; }

.carousel__viewport {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  max-height: 100%; }

.carousel__track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.carousel__slide {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: var(--carousel-slide-width, 60%);
  max-width: 100%;
  padding: 1rem;
  position: relative;
  overflow-x: hidden;
  overflow-y: auto;
  -ms-scroll-chaining: none;
      overscroll-behavior: contain; }

.has-dots {
  margin-bottom: calc(0.5rem + 22px); }

.carousel__dots {
  margin: 0 auto;
  padding: 0;
  position: absolute;
  top: calc(100% + 0.5rem);
  left: 0;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  list-style: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.carousel__dots .carousel__dot {
  margin: 0;
  padding: 0;
  display: block;
  position: relative;
  width: 22px;
  height: 22px;
  cursor: pointer; }

.carousel__dots .carousel__dot:after {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-color: currentColor;
  opacity: .25;
  -webkit-transition: opacity .15s ease-in-out;
  transition: opacity .15s ease-in-out; }

.carousel__dots .carousel__dot.is-selected:after {
  opacity: 1; }

.carousel__button {
  width: var(--carousel-button-width, 48px);
  height: var(--carousel-button-height, 48px);
  padding: 0;
  border: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  pointer-events: all;
  cursor: pointer;
  color: var(--carousel-button-color, currentColor);
  background: var(--carousel-button-bg, transparent);
  border-radius: var(--carousel-button-border-radius, 50%);
  -webkit-box-shadow: var(--carousel-button-shadow, none);
          box-shadow: var(--carousel-button-shadow, none);
  -webkit-transition: opacity .15s ease;
  transition: opacity .15s ease; }

.carousel__button.is-prev, .carousel__button.is-next {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%); }

.carousel__button.is-prev {
  left: 10px; }

.carousel__button.is-next {
  right: 10px; }

.carousel__button[disabled] {
  cursor: default;
  opacity: .3; }

.carousel__button svg {
  width: var(--carousel-button-svg-width, 50%);
  height: var(--carousel-button-svg-height, 50%);
  fill: none;
  stroke: currentColor;
  stroke-width: var(--carousel-button-svg-stroke-width, 1.5);
  stroke-linejoin: bevel;
  stroke-linecap: round;
  -webkit-filter: var(--carousel-button-svg-filter, none);
          filter: var(--carousel-button-svg-filter, none);
  pointer-events: none; }

html.with-fancybox {
  scroll-behavior: auto; }

body.compensate-for-scrollbar {
  overflow: hidden !important;
  -ms-touch-action: none;
      touch-action: none; }

.fancybox__container {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  direction: ltr;
  margin: 0;
  padding: env(safe-area-inset-top, 0px) env(safe-area-inset-right, 0px) env(safe-area-inset-bottom, 0px) env(safe-area-inset-left, 0px);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  color: var(--fancybox-color, #fff);
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  overflow: hidden;
  z-index: 1050;
  outline: none;
  -webkit-transform-origin: top left;
          transform-origin: top left;
  --carousel-button-width: 48px;
  --carousel-button-height: 48px;
  --carousel-button-svg-width: 24px;
  --carousel-button-svg-height: 24px;
  --carousel-button-svg-stroke-width: 2.5;
  --carousel-button-svg-filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.4)); }

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

.fancybox__container :focus {
  outline: none; }

body:not(.is-using-mouse) .fancybox__container :focus {
  -webkit-box-shadow: 0 0 0 1px #fff, 0 0 0 2px var(--fancybox-accent-color, rgba(1, 210, 232, 0.94));
          box-shadow: 0 0 0 1px #fff, 0 0 0 2px var(--fancybox-accent-color, rgba(1, 210, 232, 0.94)); }

@media all and (min-width: 1024px) {
  .fancybox__container {
    --carousel-button-width:48px;
    --carousel-button-height:48px;
    --carousel-button-svg-width:27px;
    --carousel-button-svg-height:27px; } }

.fancybox__backdrop {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  background: var(--fancybox-bg, rgba(24, 24, 27, 0.92)); }

.fancybox__carousel {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  min-height: 0;
  height: 100%;
  z-index: 10; }

.fancybox__carousel.has-dots {
  margin-bottom: calc(0.5rem + 22px); }

.fancybox__viewport {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: visible;
  cursor: default; }

.fancybox__track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%; }

.fancybox__slide {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 48px 8px 8px 8px;
  position: relative;
  -ms-scroll-chaining: none;
      overscroll-behavior: contain;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  outline: 0;
  overflow: auto;
  --carousel-button-width: 36px;
  --carousel-button-height: 36px;
  --carousel-button-svg-width: 22px;
  --carousel-button-svg-height: 22px; }

.fancybox__slide::before, .fancybox__slide::after {
  content: "";
  -webkit-box-flex: 0;
      -ms-flex: 0 0 0px;
          flex: 0 0 0;
  margin: auto; }

@media all and (min-width: 1024px) {
  .fancybox__slide {
    padding: 64px 100px; } }

.fancybox__content {
  margin: 0 env(safe-area-inset-right, 0px) 0 env(safe-area-inset-left, 0px);
  padding: 36px;
  color: var(--fancybox-content-color, #374151);
  background: var(--fancybox-content-bg, #fff);
  position: relative;
  -ms-flex-item-align: center;
      align-self: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  z-index: 20; }

.fancybox__content :focus:not(.carousel__button.is-close) {
  outline: thin dotted;
  -webkit-box-shadow: none;
          box-shadow: none; }

.fancybox__caption {
  -ms-flex-item-align: center;
      align-self: center;
  max-width: 100%;
  margin: 0;
  padding: 1rem 0 0 0;
  line-height: 1.375;
  color: var(--fancybox-color, currentColor);
  visibility: visible;
  cursor: auto;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  overflow-wrap: anywhere; }

.is-loading .fancybox__caption {
  visibility: hidden; }

.fancybox__container > .carousel__dots {
  top: 100%;
  color: var(--fancybox-color, #fff); }

.fancybox__nav .carousel__button {
  z-index: 40; }

.fancybox__nav .carousel__button.is-next {
  right: 8px; }

@media all and (min-width: 1024px) {
  .fancybox__nav .carousel__button.is-next {
    right: 40px; } }

.fancybox__nav .carousel__button.is-prev {
  left: 8px; }

@media all and (min-width: 1024px) {
  .fancybox__nav .carousel__button.is-prev {
    left: 40px; } }

.carousel__button.is-close {
  position: absolute;
  top: 8px;
  right: 8px;
  top: calc(env(safe-area-inset-top, 0px) + 8px);
  right: calc(env(safe-area-inset-right, 0px) + 8px);
  z-index: 40; }

@media all and (min-width: 1024px) {
  .carousel__button.is-close {
    right: 40px; } }

.fancybox__content > .carousel__button.is-close {
  position: absolute;
  top: -40px;
  right: 0;
  color: var(--fancybox-color, #fff); }

.fancybox__no-click, .fancybox__no-click button {
  pointer-events: none; }

.fancybox__spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 50px;
  height: 50px;
  color: var(--fancybox-color, currentColor); }

.fancybox__slide .fancybox__spinner {
  cursor: pointer;
  z-index: 1053; }

.fancybox__spinner svg {
  -webkit-animation: fancybox-rotate 2s linear infinite;
          animation: fancybox-rotate 2s linear infinite;
  -webkit-transform-origin: center center;
          transform-origin: center center;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 100%;
  height: 100%; }

.fancybox__spinner svg circle {
  fill: none;
  stroke-width: 2.75;
  stroke-miterlimit: 10;
  stroke-dasharray: 1,200;
  stroke-dashoffset: 0;
  -webkit-animation: fancybox-dash 1.5s ease-in-out infinite;
          animation: fancybox-dash 1.5s ease-in-out infinite;
  stroke-linecap: round;
  stroke: currentColor; }

@-webkit-keyframes fancybox-rotate {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes fancybox-rotate {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@-webkit-keyframes fancybox-dash {
  0% {
    stroke-dasharray: 1,200;
    stroke-dashoffset: 0; }
  50% {
    stroke-dasharray: 89,200;
    stroke-dashoffset: -35px; }
  100% {
    stroke-dasharray: 89,200;
    stroke-dashoffset: -124px; } }

@keyframes fancybox-dash {
  0% {
    stroke-dasharray: 1,200;
    stroke-dashoffset: 0; }
  50% {
    stroke-dasharray: 89,200;
    stroke-dashoffset: -35px; }
  100% {
    stroke-dasharray: 89,200;
    stroke-dashoffset: -124px; } }

.fancybox__backdrop, .fancybox__caption, .fancybox__nav, .carousel__dots, .carousel__button.is-close {
  opacity: var(--fancybox-opacity, 1); }

.fancybox__container.is-animated[aria-hidden=false] .fancybox__backdrop, .fancybox__container.is-animated[aria-hidden=false] .fancybox__caption, .fancybox__container.is-animated[aria-hidden=false] .fancybox__nav, .fancybox__container.is-animated[aria-hidden=false] .carousel__dots, .fancybox__container.is-animated[aria-hidden=false] .carousel__button.is-close {
  -webkit-animation: .15s ease backwards fancybox-fadeIn;
          animation: .15s ease backwards fancybox-fadeIn; }

.fancybox__container.is-animated.is-closing .fancybox__backdrop, .fancybox__container.is-animated.is-closing .fancybox__caption, .fancybox__container.is-animated.is-closing .fancybox__nav, .fancybox__container.is-animated.is-closing .carousel__dots, .fancybox__container.is-animated.is-closing .carousel__button.is-close {
  -webkit-animation: .15s ease both fancybox-fadeOut;
          animation: .15s ease both fancybox-fadeOut; }

.fancybox-fadeIn {
  -webkit-animation: .15s ease both fancybox-fadeIn;
          animation: .15s ease both fancybox-fadeIn; }

.fancybox-fadeOut {
  -webkit-animation: .1s ease both fancybox-fadeOut;
          animation: .1s ease both fancybox-fadeOut; }

.fancybox-zoomInUp {
  -webkit-animation: .2s ease both fancybox-zoomInUp;
          animation: .2s ease both fancybox-zoomInUp; }

.fancybox-zoomOutDown {
  -webkit-animation: .15s ease both fancybox-zoomOutDown;
          animation: .15s ease both fancybox-zoomOutDown; }

.fancybox-throwOutUp {
  -webkit-animation: .15s ease both fancybox-throwOutUp;
          animation: .15s ease both fancybox-throwOutUp; }

.fancybox-throwOutDown {
  -webkit-animation: .15s ease both fancybox-throwOutDown;
          animation: .15s ease both fancybox-throwOutDown; }

@-webkit-keyframes fancybox-fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes fancybox-fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-webkit-keyframes fancybox-fadeOut {
  to {
    opacity: 0; } }

@keyframes fancybox-fadeOut {
  to {
    opacity: 0; } }

@-webkit-keyframes fancybox-zoomInUp {
  from {
    -webkit-transform: scale(0.97) translate3d(0, 16px, 0);
            transform: scale(0.97) translate3d(0, 16px, 0);
    opacity: 0; }
  to {
    -webkit-transform: scale(1) translate3d(0, 0, 0);
            transform: scale(1) translate3d(0, 0, 0);
    opacity: 1; } }

@keyframes fancybox-zoomInUp {
  from {
    -webkit-transform: scale(0.97) translate3d(0, 16px, 0);
            transform: scale(0.97) translate3d(0, 16px, 0);
    opacity: 0; }
  to {
    -webkit-transform: scale(1) translate3d(0, 0, 0);
            transform: scale(1) translate3d(0, 0, 0);
    opacity: 1; } }

@-webkit-keyframes fancybox-zoomOutDown {
  to {
    -webkit-transform: scale(0.97) translate3d(0, 16px, 0);
            transform: scale(0.97) translate3d(0, 16px, 0);
    opacity: 0; } }

@keyframes fancybox-zoomOutDown {
  to {
    -webkit-transform: scale(0.97) translate3d(0, 16px, 0);
            transform: scale(0.97) translate3d(0, 16px, 0);
    opacity: 0; } }

@-webkit-keyframes fancybox-throwOutUp {
  to {
    -webkit-transform: translate3d(0, -30%, 0);
            transform: translate3d(0, -30%, 0);
    opacity: 0; } }

@keyframes fancybox-throwOutUp {
  to {
    -webkit-transform: translate3d(0, -30%, 0);
            transform: translate3d(0, -30%, 0);
    opacity: 0; } }

@-webkit-keyframes fancybox-throwOutDown {
  to {
    -webkit-transform: translate3d(0, 30%, 0);
            transform: translate3d(0, 30%, 0);
    opacity: 0; } }

@keyframes fancybox-throwOutDown {
  to {
    -webkit-transform: translate3d(0, 30%, 0);
            transform: translate3d(0, 30%, 0);
    opacity: 0; } }

.fancybox__carousel .carousel__slide {
  scrollbar-width: thin;
  scrollbar-color: #ccc rgba(255, 255, 255, 0.1); }

.fancybox__carousel .carousel__slide::-webkit-scrollbar {
  width: 8px;
  height: 8px; }

.fancybox__carousel .carousel__slide::-webkit-scrollbar-track {
  background-color: rgba(255, 255, 255, 0.1); }

.fancybox__carousel .carousel__slide::-webkit-scrollbar-thumb {
  background-color: #ccc;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2);
          box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2); }

.fancybox__carousel.is-draggable .fancybox__slide, .fancybox__carousel.is-draggable .fancybox__slide .fancybox__content {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab; }

.fancybox__carousel.is-dragging .fancybox__slide, .fancybox__carousel.is-dragging .fancybox__slide .fancybox__content {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: grabbing; }

.fancybox__carousel .fancybox__slide .fancybox__content {
  cursor: auto; }

.fancybox__carousel .fancybox__slide.can-zoom_in .fancybox__content {
  cursor: -webkit-zoom-in;
  cursor: zoom-in; }

.fancybox__carousel .fancybox__slide.can-zoom_out .fancybox__content {
  cursor: -webkit-zoom-out;
  cursor: zoom-out; }

.fancybox__carousel .fancybox__slide.is-draggable .fancybox__content {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab; }

.fancybox__carousel .fancybox__slide.is-dragging .fancybox__content {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: grabbing; }

.fancybox__image {
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-transition: none;
  transition: none; }

.has-image .fancybox__content {
  padding: 0;
  background: rgba(0, 0, 0, 0);
  min-height: 1px; }

.is-closing .has-image .fancybox__content {
  overflow: visible; }

.has-image[data-image-fit=contain] {
  overflow: visible;
  -ms-touch-action: none;
      touch-action: none; }

.has-image[data-image-fit=contain] .fancybox__content {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.has-image[data-image-fit=contain] .fancybox__image {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain; }

.has-image[data-image-fit=contain-w] {
  overflow-x: hidden;
  overflow-y: auto; }

.has-image[data-image-fit=contain-w] .fancybox__content {
  min-height: auto; }

.has-image[data-image-fit=contain-w] .fancybox__image {
  max-width: 100%;
  height: auto; }

.has-image[data-image-fit=cover] {
  overflow: visible;
  -ms-touch-action: none;
      touch-action: none; }

.has-image[data-image-fit=cover] .fancybox__content {
  width: 100%;
  height: 100%; }

.has-image[data-image-fit=cover] .fancybox__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover; }

.fancybox__carousel .fancybox__slide.has-iframe .fancybox__content, .fancybox__carousel .fancybox__slide.has-map .fancybox__content, .fancybox__carousel .fancybox__slide.has-pdf .fancybox__content, .fancybox__carousel .fancybox__slide.has-video .fancybox__content, .fancybox__carousel .fancybox__slide.has-html5video .fancybox__content {
  max-width: 100%;
  -ms-flex-negative: 1;
      flex-shrink: 1;
  min-height: 1px;
  overflow: visible; }

.fancybox__carousel .fancybox__slide.has-iframe .fancybox__content, .fancybox__carousel .fancybox__slide.has-map .fancybox__content, .fancybox__carousel .fancybox__slide.has-pdf .fancybox__content {
  width: 100%;
  height: 80%; }

.fancybox__carousel .fancybox__slide.has-video .fancybox__content, .fancybox__carousel .fancybox__slide.has-html5video .fancybox__content {
  width: 960px;
  height: 540px;
  max-width: 100%;
  max-height: 100%; }

.fancybox__carousel .fancybox__slide.has-map .fancybox__content, .fancybox__carousel .fancybox__slide.has-pdf .fancybox__content, .fancybox__carousel .fancybox__slide.has-video .fancybox__content, .fancybox__carousel .fancybox__slide.has-html5video .fancybox__content {
  padding: 0;
  background: rgba(24, 24, 27, 0.9);
  color: #fff; }

.fancybox__carousel .fancybox__slide.has-map .fancybox__content {
  background: #e5e3df; }

.fancybox__html5video, .fancybox__iframe {
  border: 0;
  display: block;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0); }

.fancybox-placeholder {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0; }

.fancybox__thumbs {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  position: relative;
  padding: 0px 3px;
  opacity: var(--fancybox-opacity, 1); }

.fancybox__container.is-animated[aria-hidden=false] .fancybox__thumbs {
  -webkit-animation: .15s ease-in backwards fancybox-fadeIn;
          animation: .15s ease-in backwards fancybox-fadeIn; }

.fancybox__container.is-animated.is-closing .fancybox__thumbs {
  opacity: 0; }

.fancybox__thumbs .carousel__slide {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: var(--fancybox-thumbs-width, 96px);
  margin: 0;
  padding: 8px 3px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  overflow: visible;
  cursor: pointer; }

.fancybox__thumbs .carousel__slide .fancybox__thumb::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-width: 5px;
  border-style: solid;
  border-color: var(--fancybox-accent-color, rgba(34, 213, 233, 0.96));
  opacity: 0;
  -webkit-transition: opacity .15s ease;
  transition: opacity .15s ease;
  border-radius: var(--fancybox-thumbs-border-radius, 4px); }

.fancybox__thumbs .carousel__slide.is-nav-selected .fancybox__thumb::after {
  opacity: .92; }

.fancybox__thumbs .carousel__slide > * {
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.fancybox__thumb {
  position: relative;
  width: 100%;
  padding-top: calc(100%/(var(--fancybox-thumbs-ratio, 1.5)));
  background-size: cover;
  background-position: center center;
  background-color: rgba(255, 255, 255, 0.1);
  background-repeat: no-repeat;
  border-radius: var(--fancybox-thumbs-border-radius, 4px); }

.fancybox__toolbar {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 20;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0)), color-stop(8.1%, rgba(0, 0, 0, 0.006)), color-stop(15.5%, rgba(0, 0, 0, 0.021)), color-stop(22.5%, rgba(0, 0, 0, 0.046)), color-stop(29%, rgba(0, 0, 0, 0.077)), color-stop(35.3%, rgba(0, 0, 0, 0.114)), color-stop(41.2%, rgba(0, 0, 0, 0.155)), color-stop(47.1%, rgba(0, 0, 0, 0.198)), color-stop(52.9%, rgba(0, 0, 0, 0.242)), color-stop(58.8%, rgba(0, 0, 0, 0.285)), color-stop(64.7%, rgba(0, 0, 0, 0.326)), color-stop(71%, rgba(0, 0, 0, 0.363)), color-stop(77.5%, rgba(0, 0, 0, 0.394)), color-stop(84.5%, rgba(0, 0, 0, 0.419)), color-stop(91.9%, rgba(0, 0, 0, 0.434)), to(rgba(0, 0, 0, 0.44)));
  background: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.006) 8.1%, rgba(0, 0, 0, 0.021) 15.5%, rgba(0, 0, 0, 0.046) 22.5%, rgba(0, 0, 0, 0.077) 29%, rgba(0, 0, 0, 0.114) 35.3%, rgba(0, 0, 0, 0.155) 41.2%, rgba(0, 0, 0, 0.198) 47.1%, rgba(0, 0, 0, 0.242) 52.9%, rgba(0, 0, 0, 0.285) 58.8%, rgba(0, 0, 0, 0.326) 64.7%, rgba(0, 0, 0, 0.363) 71%, rgba(0, 0, 0, 0.394) 77.5%, rgba(0, 0, 0, 0.419) 84.5%, rgba(0, 0, 0, 0.434) 91.9%, rgba(0, 0, 0, 0.44) 100%);
  padding: 0;
  -ms-touch-action: none;
      touch-action: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  --carousel-button-svg-width: 20px;
  --carousel-button-svg-height: 20px;
  opacity: var(--fancybox-opacity, 1);
  text-shadow: var(--fancybox-toolbar-text-shadow, 1px 1px 1px rgba(0, 0, 0, 0.4)); }

@media all and (min-width: 1024px) {
  .fancybox__toolbar {
    padding: 8px; } }

.fancybox__container.is-animated[aria-hidden=false] .fancybox__toolbar {
  -webkit-animation: .15s ease-in backwards fancybox-fadeIn;
          animation: .15s ease-in backwards fancybox-fadeIn; }

.fancybox__container.is-animated.is-closing .fancybox__toolbar {
  opacity: 0; }

.fancybox__toolbar__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.fancybox__toolbar__items--left {
  margin-right: auto; }

.fancybox__toolbar__items--center {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%); }

.fancybox__toolbar__items--right {
  margin-left: auto; }

@media (max-width: 640px) {
  .fancybox__toolbar__items--center:not(:last-child) {
    display: none; } }

.fancybox__counter {
  min-width: 72px;
  padding: 0 10px;
  line-height: var(--carousel-button-height, 48px);
  text-align: center;
  font-size: 17px;
  font-variant-numeric: tabular-nums;
  -webkit-font-smoothing: subpixel-antialiased; }

.fancybox__progress {
  background: var(--fancybox-accent-color, rgba(34, 213, 233, 0.96));
  height: 3px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transform-origin: 0;
          transform-origin: 0;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  z-index: 30;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.fancybox__container:-webkit-full-screen::backdrop {
  opacity: 0; }

.fancybox__container:-ms-fullscreen::backdrop {
  opacity: 0; }

.fancybox__container:fullscreen::-webkit-backdrop {
  opacity: 0; }

.fancybox__container:fullscreen::backdrop {
  opacity: 0; }

.fancybox__button--fullscreen g:nth-child(2) {
  display: none; }

.fancybox__container:-webkit-full-screen .fancybox__button--fullscreen g:nth-child(1) {
  display: none; }

.fancybox__container:-ms-fullscreen .fancybox__button--fullscreen g:nth-child(1) {
  display: none; }

.fancybox__container:fullscreen .fancybox__button--fullscreen g:nth-child(1) {
  display: none; }

.fancybox__container:-webkit-full-screen .fancybox__button--fullscreen g:nth-child(2) {
  display: block; }

.fancybox__container:-ms-fullscreen .fancybox__button--fullscreen g:nth-child(2) {
  display: block; }

.fancybox__container:fullscreen .fancybox__button--fullscreen g:nth-child(2) {
  display: block; }

.fancybox__button--slideshow g:nth-child(2) {
  display: none; }

.fancybox__container.has-slideshow .fancybox__button--slideshow g:nth-child(1) {
  display: none; }

.fancybox__container.has-slideshow .fancybox__button--slideshow g:nth-child(2) {
  display: block; }

/***
    The new CSS reset - version 1.8.2 (last updated 23.12.2022)
    GitHub page: https://github.com/elad2412/the-new-css-reset
***/
/*
    Remove all the styles of the "User-Agent-Stylesheet", except for the 'display' property
    - The "symbol *" part is to solve Firefox SVG sprite bug
 */
*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
  all: unset;
  display: revert; }

/* Preferred box-sizing value */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

/* Reapply the pointer cursor for anchor tags */
a,
button {
  cursor: revert; }

/* Remove list styles (bullets/numbers) */
ol,
ul,
menu {
  list-style: none; }

/* For images to not be able to exceed their container */
img {
  max-inline-size: 100%;
  max-block-size: 100%; }

/* removes spacing between cells in tables */
table {
  border-collapse: collapse; }

/* Safari - solving issue when using user-select:none on the <body> text input doesn't working */
input,
textarea {
  -webkit-user-select: auto; }

/* revert the 'white-space' property for textarea elements on Safari */
textarea {
  white-space: revert; }

/* minimum style to allow to style meter element */
meter {
  -webkit-appearance: revert;
  -moz-appearance: revert;
       appearance: revert; }

/* preformatted text - use only for this feature */
pre {
  all: revert; }

/* reset default text opacity of input placeholder */
::-webkit-input-placeholder {
  color: unset; }
::-moz-placeholder {
  color: unset; }
:-ms-input-placeholder {
  color: unset; }
::-ms-input-placeholder {
  color: unset; }
::placeholder {
  color: unset; }

/* remove default dot (•) sign */
::marker {
  content: ''; }

/* fix the feature of 'hidden' attribute.
   display:revert; revert to element instead of attribute */
:where([hidden]) {
  display: none; }

/* revert for bug in Chromium browsers
   - fix for the content editable attribute will work properly.
   - webkit-user-select: auto; added for Safari in case of using user-select:none on wrapper element*/
:where([contenteditable]:not([contenteditable='false'])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto; }

/* apply back the draggable feature - exist only in Chromium and Safari */
:where([draggable='true']) {
  -webkit-user-drag: element; }

/* Revert Modal native behavior */
:where(dialog:modal) {
  all: revert; }

*,
h2,
h3,
h4,
h5,
h6,
p,
li,
a,
cite,
time,
label,
button,
table,
span {
  font-family: span, serif; }

h1 {
  font-family: span, serif; }

li
p a {
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
  font-weight: 500; }
  li
p a:hover {
    color: #313b40; }

body,
html {
  font-size: 62.5%;
  margin: 0;
  padding: 0;
  max-width: 100vw;
  overflow-x: hidden; }

.container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  max-width: 131rem;
  padding: 0 3rem;
  margin: 0 auto; }
  @media screen and (max-width: 639px) {
    .container {
      padding: 0 2rem; } }

.fade-in-up {
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(3rem);
          transform: translateY(3rem); }

.load-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  z-index: 10; }

.searchTermHighlight {
  font-family: inherit;
  background: #f5e296;
  padding: 2px 5px 4px 5px;
  border-radius: 3px; }

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: white;
  z-index: 9;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease; }
  header.full-line hr {
    width: 100%;
    max-width: 100vw; }
  header hr {
    border-top: 0.1rem solid #959ea4;
    width: calc(100% - 9rem);
    margin: 0 auto;
    max-width: calc(122rem); }
    @media screen and (max-width: 639px) {
      header hr {
        width: calc(100% - 8rem); } }
  header > .container > a {
    display: inline-block;
    width: 29rem;
    margin: 2rem 0 2rem 1.5rem;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
    @media screen and (max-width: 1023px) {
      header > .container > a {
        width: 25rem; } }
    @media screen and (max-width: 767px) {
      header > .container > a {
        width: 21.5rem; } }
    @media screen and (max-width: 639px) {
      header > .container > a {
        margin-left: 2rem; } }
    @media screen and (max-width: 500px) {
      header > .container > a {
        width: 17rem; } }
    header > .container > a svg {
      width: 100%; }
      header > .container > a svg .text > path {
        fill: #67757d;
        -webkit-transition: fill 0.3s ease;
        transition: fill 0.3s ease; }
  header > .container .menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-right: 1.5rem; }
    @media screen and (max-width: 639px) {
      header > .container .menu {
        margin-right: 2rem; } }
    header > .container .menu .links {
      padding-right: 4.5rem;
      border-right: 0.1rem solid #959ea4;
      height: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: end;
          -ms-flex-align: end;
              align-items: flex-end;
      padding-bottom: 3.75rem;
      -webkit-transition: padding 0.3s ease;
      transition: padding 0.3s ease; }
      @media screen and (max-width: 1023px) {
        header > .container .menu .links {
          padding-right: 3rem;
          padding-bottom: 3.5rem; } }
      @media screen and (max-width: 767px) {
        header > .container .menu .links {
          padding-right: 1.75rem;
          padding-bottom: 3.4rem; } }
      @media screen and (max-width: 639px) {
        header > .container .menu .links {
          -webkit-box-ordinal-group: 3;
              -ms-flex-order: 2;
                  order: 2;
          border-right: 0;
          padding: 0;
          height: auto;
          display: block; } }
      header > .container .menu .links a {
        color: #67757d;
        font-size: 1.6rem;
        text-decoration: none;
        font-weight: 300;
        letter-spacing: 0.06em;
        line-height: 1;
        -webkit-transition: color 0.3s ease;
        transition: color 0.3s ease;
        font-family: "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif; }
        @media screen and (max-width: 1023px) {
          header > .container .menu .links a {
            font-size: 1.5rem; } }
        @media screen and (max-width: 767px) {
          header > .container .menu .links a {
            font-size: 1.3rem; } }
        @media screen and (max-width: 639px) {
          header > .container .menu .links a {
            display: none; } }
        header > .container .menu .links a.extra {
          margin-left: 3rem; }
          @media screen and (max-width: 1023px) {
            header > .container .menu .links a.extra {
              margin-left: 1.5rem; } }
        header > .container .menu .links a.burger {
          margin-left: 3rem; }
          @media screen and (max-width: 1023px) {
            header > .container .menu .links a.burger {
              margin-left: 1.5rem; } }
          @media screen and (max-width: 800px) {
            header > .container .menu .links a.burger {
              display: inline-block;
              margin-left: 0.2rem; } }
          header > .container .menu .links a.burger > span {
            font-family: "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif; }
            @media screen and (max-width: 800px) {
              header > .container .menu .links a.burger > span {
                display: none; } }
          header > .container .menu .links a.burger .hamburger {
            margin: 0;
            padding: 0;
            width: auto;
            -webkit-transform-origin: left bottom;
                    transform-origin: left bottom;
            margin-left: 1.5rem;
            -webkit-transform: scale(0.75);
                    transform: scale(0.75); }
            @media screen and (max-width: 767px) {
              header > .container .menu .links a.burger .hamburger {
                -webkit-transform: scale(0.6);
                        transform: scale(0.6); } }
            @media screen and (max-width: 639px) {
              header > .container .menu .links a.burger .hamburger {
                -webkit-transform: scale(0.75);
                        transform: scale(0.75);
                -webkit-transform-origin: right center;
                        transform-origin: right center; } }
            @media screen and (max-width: 500px) {
              header > .container .menu .links a.burger .hamburger {
                margin-left: 0; } }
            header > .container .menu .links a.burger .hamburger .hamburger-box {
              width: 3rem; }
              header > .container .menu .links a.burger .hamburger .hamburger-box .hamburger-inner {
                background: #67757d;
                height: 0.2rem;
                width: 100%;
                -webkit-transition: background 0.3s ease;
                transition: background 0.3s ease; }
                header > .container .menu .links a.burger .hamburger .hamburger-box .hamburger-inner::after, header > .container .menu .links a.burger .hamburger .hamburger-box .hamburger-inner::before {
                  background: #67757d;
                  height: 0.2rem;
                  width: 100%;
                  -webkit-transition: background 0.3s ease;
                  transition: background 0.3s ease; }
    header > .container .menu .icons {
      padding: 0 3rem 0 4rem;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      position: relative;
      height: 100%; }
      @media screen and (max-width: 1023px) {
        header > .container .menu .icons {
          padding: 0 3rem; } }
      @media screen and (max-width: 767px) {
        header > .container .menu .icons {
          padding: 0 0 0 2.5rem; } }
      header > .container .menu .icons button {
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;
        background: none;
        border-radius: 0;
        border: none;
        -webkit-box-shadow: none;
                box-shadow: none;
        padding: 0;
        cursor: pointer; }
        header > .container .menu .icons button svg path {
          fill: #67757d;
          -webkit-transition: fill 0.3s ease;
          transition: fill 0.3s ease; }
        header > .container .menu .icons button#portfolio {
          margin-right: 2.75rem; }
          @media screen and (max-width: 767px) {
            header > .container .menu .icons button#portfolio {
              width: 2rem;
              margin-right: 2.5rem; } }
          @media screen and (max-width: 500px) {
            header > .container .menu .icons button#portfolio {
              margin-right: 2rem; } }
          header > .container .menu .icons button#portfolio svg {
            width: 2.5rem; }
            @media screen and (max-width: 767px) {
              header > .container .menu .icons button#portfolio svg {
                width: 2rem; } }
        header > .container .menu .icons button#search svg {
          width: 2.55rem;
          -webkit-transform: translateY(7.5%);
                  transform: translateY(7.5%); }
          @media screen and (max-width: 767px) {
            header > .container .menu .icons button#search svg {
              width: 2rem; } }
          @media screen and (max-width: 500px) {
            header > .container .menu .icons button#search svg {
              -webkit-transform: translateY(3.75%);
                      transform: translateY(3.75%); } }
        header > .container .menu .icons button#clerks-tab {
          position: absolute;
          top: 100%;
          width: calc(100% + 0.1rem);
          left: -0.1rem;
          text-transform: uppercase;
          color: white;
          background: #8d989e;
          text-align: center;
          font-size: 1.3rem;
          line-height: 1;
          padding: 1.3rem 0;
          z-index: 3;
          font-family: "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif; }
          @media screen and (max-width: 1023px) {
            header > .container .menu .icons button#clerks-tab {
              font-size: 1.2rem; } }
          @media screen and (max-width: 767px) {
            header > .container .menu .icons button#clerks-tab {
              font-size: .9rem;
              letter-spacing: 0.05em;
              padding: .65rem 0;
              width: 100%; } }
          @media screen and (max-width: 639px) {
            header > .container .menu .icons button#clerks-tab {
              left: 4.6rem; } }
          @media screen and (max-width: 500px) {
            header > .container .menu .icons button#clerks-tab {
              left: 4rem; } }
          header > .container .menu .icons button#clerks-tab span {
            font-family: "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif; }
  header .sub-nav .container {
    position: relative; }
    header .sub-nav .container::after {
      position: absolute;
      right: 18.4rem;
      height: 3.6rem;
      width: 9.5rem;
      content: "";
      background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), to(white));
      background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, white 100%);
      display: block;
      top: 0;
      pointer-events: none; }
      @media screen and (max-width: 1023px) {
        header .sub-nav .container::after {
          width: 7.5rem; } }
      @media screen and (max-width: 767px) {
        header .sub-nav .container::after {
          right: 0; } }
  header .sub-nav.grey {
    background: #f0f1f2;
    border-bottom: 0.1rem solid #959ea4; }
    header .sub-nav.grey .container::after {
      background: -webkit-gradient(linear, left top, right top, from(rgba(240, 241, 242, 0)), to(#f0f1f2));
      background: linear-gradient(to right, rgba(240, 241, 242, 0) 0%, #f0f1f2 100%); }
    header .sub-nav.grey ul {
      border-bottom: none;
      margin-bottom: -0.2rem; }
  header .sub-nav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 1.5rem;
    height: 3.9rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-bottom: 0.1rem solid #959ea4;
    width: calc(100% - 3rem);
    font-size: 1.4rem;
    padding-bottom: 0.15em;
    overflow-x: auto;
    padding-right: 15rem; }
    @media screen and (max-width: 500px) {
      header .sub-nav ul.hide-for-small-only {
        display: none; } }
    header .sub-nav ul.show-for-small-only {
      display: none; }
      @media screen and (max-width: 500px) {
        header .sub-nav ul.show-for-small-only {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex; } }
    @media screen and (max-width: 1023px) {
      header .sub-nav ul {
        height: 3.8rem;
        padding-right: 14rem; } }
    @media screen and (max-width: 767px) {
      header .sub-nav ul {
        height: 5rem;
        padding-bottom: 0.3em;
        padding-right: 11.6rem; } }
    @media screen and (max-width: 639px) {
      header .sub-nav ul {
        margin: 0 2rem;
        width: calc(100% - 4rem);
        padding-right: 0; } }
    @media screen and (max-width: 500px) {
      header .sub-nav ul {
        font-size: 1.3rem; } }
    header .sub-nav ul li {
      color: #67757d;
      margin-right: 1.6em;
      line-height: 1;
      white-space: nowrap; }
      @media screen and (max-width: 767px) {
        header .sub-nav ul li {
          margin-right: 1em; } }
      header .sub-nav ul li a {
        font-weight: 300;
        cursor: pointer; }
        header .sub-nav ul li a:hover, header .sub-nav ul li a.active {
          color: black; }
        header .sub-nav ul li a svg {
          margin-right: 0.5em; }
  header nav,
  header .search,
  header .portfolio,
  header .clerks {
    -webkit-box-shadow: 0 2rem 2rem rgba(0, 0, 0, 0.2);
            box-shadow: 0 2rem 2rem rgba(0, 0, 0, 0.2); }
  header nav {
    padding: 5rem 0 10rem;
    display: none;
    overflow-y: auto; }
    @media screen and (min-width: 1024px) {
      header nav {
        padding: 4rem 0 2rem;
        overflow-y: hidden; } }
    @media screen and (min-width: 1024px) {
      header nav.active {
        padding: 4rem 0 10rem; } }
    @media screen and (max-width: 1023px) {
      header nav {
        padding-bottom: 6rem; } }
    @media screen and (max-width: 767px) {
      header nav {
        padding: 3.5rem 0 5rem; } }
    @media screen and (max-width: 639px) {
      header nav {
        padding: 3rem 0; } }
    @media screen and (max-width: 500px) {
      header nav {
        padding: 2rem 0; } }
    header nav ul {
      margin: 0;
      list-style: none;
      font-size: 2rem;
      width: auto;
      position: relative;
      min-height: 0;
      -webkit-transition: min-height 0.5s ease;
      transition: min-height 0.5s ease; }
      @media screen and (max-width: 1279px) {
        header nav ul {
          font-size: 1.65rem; } }
      @media screen and (min-width: 1024px) {
        header nav ul {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          margin: 0;
          -webkit-box-align: unset;
              -ms-flex-align: unset;
                  align-items: unset;
          width: calc(100% - 1.5rem); } }
      @media screen and (max-width: 767px) {
        header nav ul {
          font-size: 1.7rem; } }
      @media screen and (max-width: 500px) {
        header nav ul {
          font-size: 1.6rem; } }
      header nav ul.main {
        padding: 0 1.5rem; }
        @media screen and (max-width: 639px) {
          header nav ul.main {
            min-height: 0 !important;
            width: 100%; } }
        header nav ul.main .rule {
          position: absolute;
          left: 100%;
          height: 0;
          width: 0.1rem;
          background: #67757d;
          -webkit-transition: height 0.5s ease;
          transition: height 0.5s ease; }
          @media screen and (min-width: 1024px) {
            header nav ul.main .rule {
              display: none; } }
          @media screen and (max-width: 639px) {
            header nav ul.main .rule {
              display: none; } }
      header nav ul li {
        line-height: 1;
        margin-bottom: 1em;
        padding-right: 6rem;
        color: #959ea4;
        -webkit-transition: color 0.3s ease;
        transition: color 0.3s ease;
        font-family: "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
        cursor: pointer; }
        @media screen and (min-width: 1024px) {
          header nav ul li {
            padding-right: 1.5rem; } }
        @media screen and (max-width: 1023px) {
          header nav ul li {
            padding-right: 5rem; } }
        @media screen and (max-width: 767px) {
          header nav ul li {
            padding-right: 4rem; } }
        @media screen and (max-width: 639px) {
          header nav ul li {
            padding-right: 0;
            border-bottom: 0.1rem solid #959ea4;
            padding: 0.5em 0;
            margin-bottom: 0;
            position: relative; } }
        header nav ul li::before {
          position: absolute;
          right: 0;
          content: "⌄";
          top: 0.5rem;
          -webkit-transform-origin: center center;
                  transform-origin: center center;
          -webkit-transition: -webkit-transform 0.3s ease;
          transition: -webkit-transform 0.3s ease;
          transition: transform 0.3s ease;
          transition: transform 0.3s ease, -webkit-transform 0.3s ease;
          display: none; }
        @media screen and (max-width: 639px) {
          header nav ul li.has-dropdown::before {
            display: block; } }
        header nav ul li.show-for-small-only {
          display: none; }
          @media screen and (max-width: 639px) {
            header nav ul li.show-for-small-only {
              display: inherit; } }
        header nav ul li.hide-for-small-only {
          display: inherit; }
          @media screen and (max-width: 639px) {
            header nav ul li.hide-for-small-only {
              display: none; } }
        header nav ul li.active::before {
          -webkit-transform: rotate(-180deg) translateY(-1rem);
                  transform: rotate(-180deg) translateY(-1rem); }
        header nav ul li:last-child {
          border-bottom: none; }
        header nav ul li:hover, header nav ul li.active {
          color: black; }
        header nav ul li:last-child {
          margin-bottom: 0; }
          @media screen and (min-width: 1024px) {
            header nav ul li:last-child {
              margin-bottom: 1em; } }
        header nav ul li a {
          color: inherit;
          font-weight: 400;
          font-family: "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif; }
        header nav ul li ul {
          position: absolute;
          top: 0;
          left: 100%;
          padding: 0 0 0 6rem;
          display: none;
          -webkit-transition: opacity 0.3s ease;
          transition: opacity 0.3s ease; }
          @media screen and (min-width: 1024px) {
            header nav ul li ul {
              left: 1.5rem;
              top: 4.25rem;
              padding: 2.25rem 0;
              -webkit-column-count: 3;
                 -moz-column-count: 3;
                      column-count: 3;
              -webkit-appearance: none;
                 -moz-appearance: none;
                      appearance: none;
              border-top: 0.1rem solid #67757d;
              width: calc(100% - 1.5rem); } }
          @media screen and (max-width: 1023px) {
            header nav ul li ul {
              padding-left: 5rem; } }
          @media screen and (max-width: 767px) {
            header nav ul li ul {
              padding-left: 4rem; } }
          @media screen and (max-width: 639px) {
            header nav ul li ul {
              position: static;
              padding-left: 0;
              margin-top: 0.5em; } }
          header nav ul li ul li {
            white-space: nowrap; }
            header nav ul li ul li:last-child {
              padding-bottom: 0; }
            @media screen and (max-width: 639px) {
              header nav ul li ul li:first-child {
                border-top: 0.1rem solid #959ea4; } }
            header nav ul li ul li::before {
              content: none; }
            @media screen and (max-width: 639px) {
              header nav ul li ul li a {
                font-size: 0.9em;
                padding-left: 1em; } }
      @media screen and (min-width: 1024px) {
        header nav ul li.navheight.active ul {
          height: 300px; } }
  header .search {
    padding: 4rem 0 4.5rem;
    display: none; }
    @media screen and (max-width: 1023px) {
      header .search {
        padding-bottom: 4rem; } }
    @media screen and (max-width: 767px) {
      header .search {
        padding: 3rem 0 3.75rem; } }
    @media screen and (max-width: 639px) {
      header .search {
        padding: 2.5rem 0 3.25rem; } }
    @media screen and (max-width: 500px) {
      header .search {
        padding: 2rem 0 3rem; } }
    header .search form {
      width: 100%;
      padding: 0 1.5rem;
      position: relative; }
      @media screen and (max-width: 639px) {
        header .search form {
          padding: 0 2rem; } }
      header .search form label {
        color: #b3babe;
        font-size: 1.8rem;
        display: block; }
        @media screen and (max-width: 639px) {
          header .search form label {
            font-size: 1.6rem; } }
      header .search form input {
        border-bottom: 0.1rem solid #67757d;
        color: black;
        margin-top: 0.25em;
        width: 100%;
        height: 5.5rem;
        font-family: span, serif;
        font-size: 4rem;
        font-weight: 500;
        padding-bottom: 0.25em;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease; }
        @media screen and (max-width: 1023px) {
          header .search form input {
            font-size: 3.6rem;
            height: 5rem; } }
        @media screen and (max-width: 639px) {
          header .search form input {
            font-size: 3.2rem;
            height: 4rem; } }
        @media screen and (max-width: 500px) {
          header .search form input {
            font-size: 3rem; } }
      header .search form button {
        position: absolute;
        right: 1.5rem;
        bottom: 1.5rem; }
        header .search form button svg {
          width: 3rem; }
          @media screen and (max-width: 1023px) {
            header .search form button svg {
              width: 2.75rem; } }
          @media screen and (max-width: 639px) {
            header .search form button svg {
              width: 2.5rem; } }
          @media screen and (max-width: 500px) {
            header .search form button svg {
              width: 2.25rem; } }
          header .search form button svg path {
            fill: #67757d;
            -webkit-transition: all 0.3s ease;
            transition: all 0.3s ease; }
  header .clerks {
    padding: 5rem 0 4.5rem;
    display: none; }
    @media screen and (max-width: 1279px) {
      header .clerks {
        padding: 4rem 0; } }
    @media screen and (max-width: 1023px) {
      header .clerks {
        padding: 3rem 0 3.5rem; } }
    @media screen and (max-width: 639px) {
      header .clerks {
        padding: 4.5rem 0; } }
    header .clerks * {
      color: #959ea4; }
    header .clerks .contact {
      margin-bottom: 4rem;
      padding: 0 1.5rem;
      font-weight: 700;
      font-size: 1.7rem;
      letter-spacing: 0.06em; }
      @media screen and (max-width: 1279px) {
        header .clerks .contact {
          margin-bottom: 3rem;
          font-size: 1.6rem; } }
      @media screen and (max-width: 767px) {
        header .clerks .contact {
          font-size: 1.5rem;
          margin-bottom: 2.5rem; } }
      header .clerks .contact a {
        color: black;
        display: inline-block;
        margin-right: 1.5rem;
        -webkit-transition: color 0.3s ease;
        transition: color 0.3s ease;
        font-family: "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif; }
        header .clerks .contact a:last-child {
          margin-right: 0; }
        @media screen and (max-width: 639px) {
          header .clerks .contact a {
            font-size: 1.1rem; } }
    header .clerks .next {
      width: 2rem; }
      @media screen and (max-width: 1439px) {
        header .clerks .next {
          width: 1.6rem;
          margin-right: 1.5rem; } }
      @media screen and (max-width: 767px) {
        header .clerks .next {
          width: 1rem; } }
      header .clerks .next svg {
        cursor: pointer;
        width: 100%; }
        header .clerks .next svg path {
          fill: #67757d;
          -webkit-transition: fill 0.3s ease;
          transition: fill 0.3s ease; }
    header .clerks .container {
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      @media screen and (max-width: 639px) {
        header .clerks .container {
          padding: 0 1rem; } }
    header .clerks .clerk-slider-container {
      padding: 0 0 0 1.5rem;
      width: calc(100% - 2.5rem); }
      @media screen and (max-width: 1439px) {
        header .clerks .clerk-slider-container {
          width: calc(100% - 3.5rem); } }
      @media screen and (max-width: 767px) {
        header .clerks .clerk-slider-container {
          width: calc(100% - 3rem); } }
      header .clerks .clerk-slider-container .clerk-slider .slick-prev {
        display: none !important; }
      header .clerks .clerk-slider-container .clerk-slider .clerk-slide .slide-inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        font-size: 1.5rem;
        line-height: 1.3; }
        @media screen and (max-width: 767px) {
          header .clerks .clerk-slider-container .clerk-slider .clerk-slide .slide-inner {
            font-size: 1.4rem; } }
        header .clerks .clerk-slider-container .clerk-slider .clerk-slide .slide-inner img {
          height: 10rem;
          margin-right: 2rem; }
          @media screen and (max-width: 1023px) {
            header .clerks .clerk-slider-container .clerk-slider .clerk-slide .slide-inner img {
              display: none; } }
        header .clerks .clerk-slider-container .clerk-slider .clerk-slide .slide-inner h3 {
          color: black;
          font-weight: 700;
          -webkit-transition: color 0.3s ease;
          transition: color 0.3s ease;
          font-family: "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif; }
          @media screen and (max-width: 639px) {
            header .clerks .clerk-slider-container .clerk-slider .clerk-slide .slide-inner h3 {
              font-size: 1.2rem; } }
        header .clerks .clerk-slider-container .clerk-slider .clerk-slide .slide-inner p {
          font-family: "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif; }
          header .clerks .clerk-slider-container .clerk-slider .clerk-slide .slide-inner p a {
            -webkit-transition: color 0.3s ease;
            transition: color 0.3s ease;
            font-family: "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif; }
            header .clerks .clerk-slider-container .clerk-slider .clerk-slide .slide-inner p a:hover {
              color: black; }
            header .clerks .clerk-slider-container .clerk-slider .clerk-slide .slide-inner p a:last-child {
              font-weight: 700; }
          @media screen and (max-width: 639px) {
            header .clerks .clerk-slider-container .clerk-slider .clerk-slide .slide-inner p {
              font-size: 1rem; } }
  header .portfolio {
    padding: 5rem 0 10rem;
    overflow-y: auto;
    display: none; }
    @media screen and (max-width: 1279px) {
      header .portfolio {
        padding: 4rem 0 7.5rem; } }
    @media screen and (max-width: 1023px) {
      header .portfolio {
        padding-bottom: 6rem; } }
    @media screen and (max-width: 767px) {
      header .portfolio {
        padding-bottom: 5rem; } }
    @media screen and (max-width: 639px) {
      header .portfolio {
        padding-top: 3rem; } }
    @media screen and (max-width: 500px) {
      header .portfolio {
        padding-top: 2.5rem; } }
    header .portfolio .container {
      display: block; }
      header .portfolio .container .portfolio-list {
        padding: 0 1.5rem; }
        @media screen and (max-width: 639px) {
          header .portfolio .container .portfolio-list {
            padding: 0 2rem; } }
        header .portfolio .container .portfolio-list * {
          color: #959ea4;
          -webkit-transition: color 0.3s ease;
          transition: color 0.3s ease; }
        header .portfolio .container .portfolio-list h3 {
          color: black;
          font-family: span, serif;
          font-size: 4.8rem;
          font-weight: 600;
          line-height: 1;
          margin-bottom: 1em; }
          @media screen and (max-width: 1023px) {
            header .portfolio .container .portfolio-list h3 {
              font-size: 4.4rem;
              margin-bottom: 0.9em; } }
          @media screen and (max-width: 639px) {
            header .portfolio .container .portfolio-list h3 {
              font-size: 4rem; } }
          @media screen and (max-width: 500px) {
            header .portfolio .container .portfolio-list h3 {
              font-size: 3.6rem;
              margin-bottom: 0.8em; } }
        header .portfolio .container .portfolio-list ul {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          font-size: 1.6rem;
          margin-bottom: 3.5rem; }
          @media screen and (max-width: 639px) {
            header .portfolio .container .portfolio-list ul {
              margin-bottom: 3rem; } }
          @media screen and (max-width: 500px) {
            header .portfolio .container .portfolio-list ul {
              -webkit-box-pack: justify;
                  -ms-flex-pack: justify;
                      justify-content: space-between; } }
          header .portfolio .container .portfolio-list ul li {
            margin-right: 3rem; }
            @media screen and (max-width: 500px) {
              header .portfolio .container .portfolio-list ul li {
                margin-right: 0; } }
            header .portfolio .container .portfolio-list ul li a {
              color: #959ea4;
              -webkit-transition: color 0.3s ease;
              transition: color 0.3s ease; }
              header .portfolio .container .portfolio-list ul li a:hover {
                color: black; }
                header .portfolio .container .portfolio-list ul li a:hover span {
                  color: black; }
              @media screen and (max-width: 500px) {
                header .portfolio .container .portfolio-list ul li a span {
                  display: none; } }
              header .portfolio .container .portfolio-list ul li a svg {
                margin-right: 0.5rem; }
                header .portfolio .container .portfolio-list ul li a svg path {
                  fill: black;
                  -webkit-transition: fill 0.3s ease;
                  transition: fill 0.3s ease; }
        header .portfolio .container .portfolio-list table {
          font-size: 1.6rem; }
          @media screen and (max-width: 767px) {
            header .portfolio .container .portfolio-list table {
              width: 100%; } }
          @media screen and (max-width: 639px) {
            header .portfolio .container .portfolio-list table {
              font-size: 1.5rem; } }
          header .portfolio .container .portfolio-list table tbody tr:first-child td {
            border-top: 0.1rem solid black;
            -webkit-transition: border-color 0.3s ease;
            transition: border-color 0.3s ease; }
          header .portfolio .container .portfolio-list table tbody tr td {
            border-bottom: 0.1rem solid black;
            color: #b3babe;
            line-height: 1;
            padding: 0.65em 0;
            -webkit-transition: border-color 0.3s ease;
            transition: border-color 0.3s ease; }
            @media screen and (max-width: 767px) {
              header .portfolio .container .portfolio-list table tbody tr td {
                text-align: right; } }
            header .portfolio .container .portfolio-list table tbody tr td:first-child {
              padding-right: 15rem; }
              @media screen and (max-width: 767px) {
                header .portfolio .container .portfolio-list table tbody tr td:first-child {
                  text-align: left; } }
              @media screen and (max-width: 639px) {
                header .portfolio .container .portfolio-list table tbody tr td:first-child {
                  padding-right: 0; } }
            header .portfolio .container .portfolio-list table tbody tr td:last-child {
              padding-left: 2.5rem; }
              @media screen and (max-width: 639px) {
                header .portfolio .container .portfolio-list table tbody tr td:last-child {
                  padding-left: 0; } }
            header .portfolio .container .portfolio-list table tbody tr td a {
              color: #959ea4;
              -webkit-transition: color 0.3s ease;
              transition: color 0.3s ease; }
              header .portfolio .container .portfolio-list table tbody tr td a:hover {
                color: black; }
                header .portfolio .container .portfolio-list table tbody tr td a:hover span {
                  color: black; }
              @media screen and (max-width: 500px) {
                header .portfolio .container .portfolio-list table tbody tr td a span {
                  display: none; } }
              header .portfolio .container .portfolio-list table tbody tr td a svg {
                margin-right: 0.75rem; }
                @media screen and (max-width: 500px) {
                  header .portfolio .container .portfolio-list table tbody tr td a svg {
                    margin-left: 0.75rem; } }
                header .portfolio .container .portfolio-list table tbody tr td a svg path {
                  fill: black;
                  -webkit-transition: fill 0.3s ease;
                  transition: fill 0.3s ease; }
  header.home {
    background: rgba(49, 59, 64, 0.8);
    -webkit-box-shadow: none;
            box-shadow: none; }
    header.home hr {
      display: none; }
    header.home .clerks,
    header.home .search,
    header.home .portfolio,
    header.home nav {
      border-top: 0.1rem solid white;
      -webkit-box-shadow: none;
              box-shadow: none; }
      @media screen and (min-width: 1024px) {
        header.home .clerks,
        header.home .search,
        header.home .portfolio,
        header.home nav {
          padding: 5rem 0 2rem; } }
      @media screen and (min-width: 1024px) {
        header.home .clerks.active,
        header.home .search.active,
        header.home .portfolio.active,
        header.home nav.active {
          padding: 5rem 0 10rem; } }
    header.home > .container > a svg .text > path {
      fill: white; }
    header.home > .container .menu .links a {
      color: white; }
      header.home > .container .menu .links a .hamburger .hamburger-box .hamburger-inner {
        background: white; }
        header.home > .container .menu .links a .hamburger .hamburger-box .hamburger-inner::after, header.home > .container .menu .links a .hamburger .hamburger-box .hamburger-inner::before {
          background: white; }
    header.home > .container .icons button svg path {
      fill: white; }
    header.home nav ul.main .rule {
      background: white; }
    header.home nav ul li:hover, header.home nav ul li.active {
      color: white; }
    header.home .search form input {
      border-bottom: 0.1rem solid white;
      color: white; }
    header.home .search form button path {
      fill: white; }
    header.home .clerks .contact a {
      color: white; }
    header.home .clerks .next svg path {
      fill: white; }
    header.home .clerks .clerk-slider-container .clerk-slider .clerk-slide .slide-inner h3 {
      color: white; }
    header.home .clerks .clerk-slider-container .clerk-slider .clerk-slide .slide-inner p a:hover {
      color: white; }
    header.home .portfolio .container .portfolio-list * {
      color: white; }
    header.home .portfolio .container .portfolio-list ul li a {
      color: #b3babe; }
      header.home .portfolio .container .portfolio-list ul li a span {
        color: #b3babe; }
      header.home .portfolio .container .portfolio-list ul li a:hover {
        color: white; }
        header.home .portfolio .container .portfolio-list ul li a:hover span {
          color: white; }
      header.home .portfolio .container .portfolio-list ul li a svg path {
        fill: white; }
    header.home .portfolio .container .portfolio-list table tbody tr:first-child td {
      border-top: 0.1rem solid white; }
    header.home .portfolio .container .portfolio-list table tbody tr td {
      border-bottom: 0.1rem solid white; }
      header.home .portfolio .container .portfolio-list table tbody tr td a {
        color: #b3babe; }
        header.home .portfolio .container .portfolio-list table tbody tr td a span {
          color: #b3babe; }
        header.home .portfolio .container .portfolio-list table tbody tr td a:hover {
          color: white; }
          header.home .portfolio .container .portfolio-list table tbody tr td a:hover span {
            color: white; }
        header.home .portfolio .container .portfolio-list table tbody tr td a svg path {
          fill: white; }
    header.home.scroll {
      -webkit-box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.2);
              box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.2); }
      header.home.scroll .clerks,
      header.home.scroll .search,
      header.home.scroll .portfolio,
      header.home.scroll nav {
        border-top-color: #67757d; }
  header.scroll {
    background: rgba(255, 255, 255, 0.95); }
    header.scroll > .container > a {
      margin: 1.5rem 0 1.75rem 1.5rem; }
      header.scroll > .container > a svg .text path {
        fill: #67757d; }
    header.scroll > .container .menu .links {
      padding-bottom: 3.3rem; }
      @media screen and (max-width: 1023px) {
        header.scroll > .container .menu .links {
          padding-bottom: 3.2rem; } }
      @media screen and (max-width: 767px) {
        header.scroll > .container .menu .links {
          padding-bottom: 3rem; } }
      @media screen and (max-width: 639px) {
        header.scroll > .container .menu .links {
          padding: 0; } }
      header.scroll > .container .menu .links a {
        color: #67757d; }
        header.scroll > .container .menu .links a.burger .hamburger .hamburger-box .hamburger-inner {
          background: #67757d; }
          header.scroll > .container .menu .links a.burger .hamburger .hamburger-box .hamburger-inner::after, header.scroll > .container .menu .links a.burger .hamburger .hamburger-box .hamburger-inner::before {
            background: #67757d; }
    header.scroll > .container .menu .icons button svg path {
      fill: #67757d; }
    header.scroll nav ul.main .rule {
      background: #67757d; }
    header.scroll nav ul li:hover, header.scroll nav ul li.active {
      color: black; }
    header.scroll .search form input {
      border-bottom: 0.1rem solid #67757d;
      color: black; }
    header.scroll .search form button svg path {
      fill: #67757d; }
    header.scroll .clerks .contact a {
      color: black; }
    header.scroll .clerks .next svg path {
      fill: black; }
    header.scroll .clerks .clerk-slider-container .clerk-slider .clerk-slide .slide-inner h3 {
      color: black; }
    header.scroll .clerks .clerk-slider-container .clerk-slider .clerk-slide .slide-inner p a:hover {
      color: black; }
    header.scroll .portfolio .container .portfolio-list * {
      color: #959ea4; }
    header.scroll .portfolio .container .portfolio-list h3 {
      color: black; }
    header.scroll .portfolio .container .portfolio-list ul li a {
      color: #959ea4; }
      header.scroll .portfolio .container .portfolio-list ul li a:hover {
        color: black; }
        header.scroll .portfolio .container .portfolio-list ul li a:hover span {
          color: black; }
      header.scroll .portfolio .container .portfolio-list ul li a svg path {
        fill: black; }
    header.scroll .portfolio .container .portfolio-list table tbody tr:first-child td {
      border-top: 0.1rem solid black; }
    header.scroll .portfolio .container .portfolio-list table tbody tr td {
      border-bottom: 0.1rem solid black;
      color: #959ea4; }
      header.scroll .portfolio .container .portfolio-list table tbody tr td a {
        color: #959ea4; }
        header.scroll .portfolio .container .portfolio-list table tbody tr td a:hover {
          color: black; }
          header.scroll .portfolio .container .portfolio-list table tbody tr td a:hover span {
            color: black; }
        header.scroll .portfolio .container .portfolio-list table tbody tr td a svg path {
          fill: black; }
  header.has-subnav .clerks,
  header.has-subnav .portfolio,
  header.has-subnav .search,
  header.has-subnav nav {
    border-top: none; }
  @media screen and (max-width: 767px) {
    header.with-subnav > .container .menu .icons button#clerks-tab {
      top: calc(100% + 5rem); } }

footer.main {
  background: #f0f1f2;
  padding: 5rem 0; }
  @media screen and (max-width: 1279px) {
    footer.main {
      padding: 5rem 0 4rem; } }
  @media screen and (max-width: 1023px) {
    footer.main {
      padding: 4rem 0 3.5rem; } }
  @media screen and (max-width: 1023px) {
    footer.main .container {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }
  footer.main.white {
    background: white; }
  footer.main .awards {
    width: calc((9 / 12) * 100%);
    position: relative;
    padding: 0 1.5rem; }
    @media screen and (max-width: 1279px) {
      footer.main .awards {
        width: calc((9 / 12) * 100%); } }
    @media screen and (max-width: 1023px) {
      footer.main .awards {
        width: 100%;
        -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
                order: 2; } }
    @media screen and (max-width: 639px) {
      footer.main .awards {
        padding: 0 2rem; } }
    footer.main .awards::after {
      position: absolute;
      top: 0;
      height: 100%;
      width: 0.1rem;
      background-color: black;
      opacity: 0.5;
      content: "";
      right: 3rem; }
      @media screen and (max-width: 1023px) {
        footer.main .awards::after {
          display: none; } }
    footer.main .awards ul.logos {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin: 0 -2rem;
      padding-right: 4rem; }
      footer.main .awards ul.logos li {
        margin: 0 .5rem;
        margin-bottom: 3.5rem; }
        footer.main .awards ul.logos li:nth-child(7) img {
          max-width: 20rem; }
          @media screen and (max-width: 1279px) {
            footer.main .awards ul.logos li:nth-child(7) img {
              max-width: 17.5rem; } }
          @media screen and (max-width: 767px) {
            footer.main .awards ul.logos li:nth-child(7) img {
              max-width: 16.5rem; } }
          @media screen and (max-width: 639px) {
            footer.main .awards ul.logos li:nth-child(7) img {
              max-width: 10rem; } }
          @media screen and (max-width: 500px) {
            footer.main .awards ul.logos li:nth-child(7) img {
              max-width: 10rem; } }
        footer.main .awards ul.logos li img {
          max-width: 31.5rem;
          max-height: 10rem; }
          @media screen and (max-width: 1439px) {
            footer.main .awards ul.logos li img {
              max-height: 10rem;
              max-width: 27.5rem; } }
          @media screen and (max-width: 1279px) {
            footer.main .awards ul.logos li img {
              max-width: 24rem;
              max-height: 9rem; } }
          @media screen and (max-width: 767px) {
            footer.main .awards ul.logos li img {
              max-width: 22rem;
              max-height: 8rem; } }
          @media screen and (max-width: 639px) {
            footer.main .awards ul.logos li img {
              max-width: 20rem;
              max-height: 7rem; } }
    footer.main .awards ul.compliance {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      font-size: 1.4rem;
      margin-top: 1rem; }
      @media screen and (max-width: 1279px) {
        footer.main .awards ul.compliance {
          font-size: 1.2rem; } }
      @media screen and (max-width: 1023px) {
        footer.main .awards ul.compliance {
          font-size: 1.4rem;
          margin-top: 0; } }
      @media screen and (max-width: 767px) {
        footer.main .awards ul.compliance {
          margin-top: 1rem; } }
      @media screen and (max-width: 639px) {
        footer.main .awards ul.compliance {
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }
      @media screen and (max-width: 500px) {
        footer.main .awards ul.compliance {
          font-size: 1.2rem;
          margin-top: 0; } }
      footer.main .awards ul.compliance li {
        color: #67757d;
        font-weight: 300;
        padding: 0 0.75rem;
        line-height: 1;
        border-right: 0.1rem solid rgba(103, 117, 125, 0.5); }
        footer.main .awards ul.compliance li:first-child {
          border-right: 0;
          padding-left: 0; }
          @media screen and (max-width: 639px) {
            footer.main .awards ul.compliance li:first-child {
              width: 100%;
              margin-bottom: 1em; } }
        @media screen and (max-width: 639px) {
          footer.main .awards ul.compliance li:nth-child(2) {
            padding-left: 0; } }
        footer.main .awards ul.compliance li:last-child {
          border-right: 0;
          padding-right: 0; }
        footer.main .awards ul.compliance li a {
          font-weight: 300; }
  footer.main .contact {
    width: calc((3 / 12) * 100%);
    position: relative; }
    @media screen and (max-width: 1023px) {
      footer.main .contact {
        width: calc(100% - 3rem); } }
    @media screen and (max-width: 639px) {
      footer.main .contact {
        width: calc(100% - 4rem); } }
    footer.main .contact .contact-details {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      margin-left: 1.5rem; }
      @media screen and (max-width: 1023px) {
        footer.main .contact .contact-details {
          margin: 0;
          margin: 0 1.5rem 3.5rem;
          border-bottom: 0.1rem solid black;
          padding-bottom: 3.5rem; } }
      @media screen and (max-width: 767px) {
        footer.main .contact .contact-details {
          padding-bottom: 3rem; } }
      @media screen and (max-width: 639px) {
        footer.main .contact .contact-details {
          margin: 0 2rem 3rem; } }
      @media screen and (max-width: 500px) {
        footer.main .contact .contact-details {
          margin-bottom: 2.5rem;
          padding-bottom: 2.5rem; } }
      @media screen and (max-width: 1023px) {
        footer.main .contact .contact-details .details {
          margin-bottom: 2rem; } }
      @media screen and (max-width: 639px) {
        footer.main .contact .contact-details .details {
          margin-bottom: 1rem; } }
      @media screen and (max-width: 500px) {
        footer.main .contact .contact-details .details {
          margin-bottom: 0.5rem; } }
      @media screen and (max-width: 1023px) {
        footer.main .contact .contact-details .details > div {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          width: 75%;
          -webkit-box-pack: justify;
              -ms-flex-pack: justify;
                  justify-content: space-between; } }
      @media screen and (max-width: 767px) {
        footer.main .contact .contact-details .details > div {
          width: 80%; } }
      @media screen and (max-width: 639px) {
        footer.main .contact .contact-details .details > div {
          display: block;
          width: 100%; } }
      footer.main .contact .contact-details a {
        -webkit-transition: color 0.3s ease;
        transition: color 0.3s ease; }
        footer.main .contact .contact-details a:hover {
          color: black; }
      footer.main .contact .contact-details p {
        color: #67757d;
        font-size: 1.4rem; }
        footer.main .contact .contact-details p.disclaimer {
          font-weight: 700;
          position: absolute;
          bottom: 0; }
          @media screen and (max-width: 1279px) {
            footer.main .contact .contact-details p.disclaimer {
              font-size: 1.2rem; } }
          @media screen and (max-width: 1023px) {
            footer.main .contact .contact-details p.disclaimer {
              font-size: 1.4rem;
              position: unset;
              bottom: unset; } }
          @media screen and (max-width: 500px) {
            footer.main .contact .contact-details p.disclaimer {
              font-size: 1.2rem; } }
      footer.main .contact .contact-details > div {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between; }
        footer.main .contact .contact-details > div p {
          font-weight: 300;
          line-height: 1.4;
          margin-bottom: 2em; }
          footer.main .contact .contact-details > div p b {
            color: black;
            font-weight: 700; }
        footer.main .contact .contact-details > div ul li {
          text-align: right;
          margin-bottom: 1.5rem; }
          footer.main .contact .contact-details > div ul li a {
            color: #67757d;
            font-size: 2.8rem; }
            @media screen and (max-width: 1279px) {
              footer.main .contact .contact-details > div ul li a {
                font-size: 2.4rem; } }
            @media screen and (max-width: 767px) {
              footer.main .contact .contact-details > div ul li a {
                font-size: 2.1rem; } }
            @media screen and (max-width: 500px) {
              footer.main .contact .contact-details > div ul li a {
                font-size: 2rem; } }

.cookies-box {
  background-color: #313b40;
  position: fixed;
  bottom: 0;
  padding: 2rem 0;
  width: 100%;
  color: white;
  z-index: 999;
  display: none; }
  .cookies-box .container {
    position: relative; }
  .cookies-box .cookies-text {
    padding: 0 1.5rem; }
    .cookies-box .cookies-text p {
      font-family: span, serif;
      font-size: 1.5rem;
      font-weight: 300;
      line-height: 1.6;
      margin: 0;
      letter-spacing: 0.02em; }
      .cookies-box .cookies-text p a {
        text-decoration: underline; }
        .cookies-box .cookies-text p a:hover {
          color: #67757d; }
      .cookies-box .cookies-text p a.close {
        background: #8d989e;
        display: inline-block;
        border-radius: 3px;
        text-decoration: none;
        padding: 0 6px;
        margin-left: 5px; }
        .cookies-box .cookies-text p a.close:hover {
          background: #000000;
          color: #ffffff; }

.quote-slider ul.slick-dots {
  text-align: left;
  left: 1.5rem;
  bottom: -4rem; }
  @media screen and (max-width: 500px) {
    .quote-slider ul.slick-dots {
      bottom: -3.5rem; } }
  .quote-slider ul.slick-dots li {
    width: 0.9rem;
    height: 0.9rem;
    margin: 0 1.5rem 0 0; }
    .quote-slider ul.slick-dots li button {
      width: 100%;
      height: 100%; }
      .quote-slider ul.slick-dots li button:before {
        width: 100%;
        height: 100%;
        content: '';
        border-radius: 100%;
        background: black; }

.quote-slider .quote-slide blockquote {
  padding: 0 1.5rem; }
  .quote-slider .quote-slide blockquote p {
    font-family: span, serif;
    font-size: 2rem;
    line-height: 1.5;
    position: relative;
    font-style: italic; }
    @media screen and (max-width: 1279px) {
      .quote-slider .quote-slide blockquote p {
        font-size: 1.8rem; } }
    @media screen and (max-width: 1023px) {
      .quote-slider .quote-slide blockquote p {
        font-size: 1.6rem; } }
    .quote-slider .quote-slide blockquote p:before {
      content: '"';
      position: absolute;
      margin-left: -0.4em;
      top: 0;
      left: 0; }
    .quote-slider .quote-slide blockquote p:after {
      content: '"'; }

.quote-slider .quote-slide footer {
  margin-top: 2.25rem; }
  .quote-slider .quote-slide footer cite {
    font-size: 1.5rem;
    font-weight: 500; }
    @media screen and (max-width: 500px) {
      .quote-slider .quote-slide footer cite {
        font-size: 1.4rem; } }

.card-listing {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: unset;
      -ms-flex-align: unset;
          align-items: unset;
  width: calc(100% + 3rem); }
  @media screen and (max-width: 639px) {
    .card-listing {
      display: block;
      width: calc(100% + 4rem); } }
  .card-listing .card {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 33.3333%;
            flex: 0 1 33.3333%;
    padding: 0 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media screen and (max-width: 1023px) {
      .card-listing .card {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 50%;
                flex: 0 1 50%;
        margin-bottom: 3rem; } }
    @media screen and (max-width: 639px) {
      .card-listing .card {
        padding: 0 2rem 0 2rem; } }
    .card-listing .card:nth-child(4) {
      display: none; }
      @media screen and (max-width: 1023px) {
        .card-listing .card:nth-child(4) {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex; } }
      @media screen and (max-width: 639px) {
        .card-listing .card:nth-child(4) {
          display: none; } }
    .card-listing .card .card-img-wrapper {
      display: block;
      padding-bottom: 50%;
      position: relative;
      overflow: hidden; }
      .card-listing .card .card-img-wrapper:hover .card-img {
        -webkit-transform: scale(1.05);
                transform: scale(1.05); }
      .card-listing .card .card-img-wrapper .card-img {
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        -webkit-transition: -webkit-transform 0.4s ease;
        transition: -webkit-transform 0.4s ease;
        transition: transform 0.4s ease;
        transition: transform 0.4s ease, -webkit-transform 0.4s ease;
        -webkit-transform-origin: center center;
                transform-origin: center center; }
    .card-listing .card .card-text {
      background-color: #fff;
      height: 100%;
      padding: 3rem;
      font-size: 1.6rem;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      @media screen and (max-width: 1279px) {
        .card-listing .card .card-text {
          padding: 2.5rem;
          font-size: 1.5rem; } }
      @media screen and (max-width: 767px) {
        .card-listing .card .card-text {
          font-size: 1.4rem; } }
      @media screen and (max-width: 639px) {
        .card-listing .card .card-text {
          padding: 3rem;
          font-size: 1.6rem; } }
      @media screen and (max-width: 500px) {
        .card-listing .card .card-text {
          font-size: 1.4rem;
          padding-bottom: 2.5rem; } }
      .card-listing .card .card-text div {
        margin-bottom: 2.5rem; }
      .card-listing .card .card-text time {
        font-weight: 300;
        color: #67757d;
        line-height: 1;
        display: inline-block;
        margin-bottom: 1em;
        letter-spacing: 0.02em;
        font-size: 1em; }
        @media screen and (max-width: 1279px) {
          .card-listing .card .card-text time {
            font-size: 0.9em; } }
        @media screen and (max-width: 639px) {
          .card-listing .card .card-text time {
            font-size: 1em; } }
      .card-listing .card .card-text h3 {
        font-family: span, serif;
        font-weight: 400;
        font-size: 1.3em;
        line-height: 1.3;
        margin-bottom: 0.9em; }
        @media screen and (max-width: 1279px) {
          .card-listing .card .card-text h3 {
            font-size: 1.2em; } }
        @media screen and (max-width: 639px) {
          .card-listing .card .card-text h3 {
            font-size: 1.3em; } }
      .card-listing .card .card-text p {
        font-weight: 300;
        line-height: 1.4;
        margin: 0;
        letter-spacing: 0.02em; }
      .card-listing .card .card-text a {
        font-size: 1em;
        color: #67757d;
        -webkit-transition: color 0.3s ease;
        transition: color 0.3s ease;
        letter-spacing: 0.02em;
        font-weight: 700; }
        .card-listing .card .card-text a.view-profile {
          font-weight: 300;
          margin-left: 15px;
          color: black; }
        .card-listing .card .card-text a:hover {
          color: black; }
  .card-listing.reverse .card-text {
    padding: 0 0 3rem;
    background: none; }

.filters {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 -1.5rem 4rem; }
  @media screen and (max-width: 767px) {
    .filters {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }
  @media screen and (max-width: 639px) {
    .filters {
      margin: 0 -2rem 4rem; } }
  @media screen and (max-width: 500px) {
    .filters {
      display: block; } }
  .filters .filter-wrap {
    position: relative;
    padding: 0 1.5rem;
    -webkit-box-flex: 0;
        -ms-flex: 0 1 33.333333333%;
            flex: 0 1 33.333333333%;
    font-weight: 300;
    font-size: 1.6rem;
    letter-spacing: 0.02em; }
    @media screen and (max-width: 767px) {
      .filters .filter-wrap {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 50%;
                flex: 0 1 50%;
        margin-bottom: 3rem; } }
    @media screen and (max-width: 639px) {
      .filters .filter-wrap {
        font-size: 1.4rem;
        padding: 0 2rem; } }
    @media screen and (max-width: 500px) {
      .filters .filter-wrap {
        margin-bottom: 2.5rem; } }
    @media screen and (max-width: 767px) {
      .filters .filter-wrap:last-child {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 100%;
                flex: 0 1 100%;
        margin-bottom: 0; } }
    .filters .filter-wrap.hovering .label svg {
      -webkit-transform: rotate(180deg);
              transform: rotate(180deg); }
    .filters .filter-wrap.hovering ul {
      padding: 2rem;
      max-height: 60rem; }
    .filters .filter-wrap .label,
    .filters .filter-wrap input {
      border-bottom: 0.1rem solid rgba(103, 117, 125, 0.75);
      padding-bottom: 1em; }
    .filters .filter-wrap .label {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      cursor: pointer; }
      .filters .filter-wrap .label svg {
        width: 1.5rem;
        -webkit-transition: -webkit-transform 0.3s ease;
        transition: -webkit-transform 0.3s ease;
        transition: transform 0.3s ease;
        transition: transform 0.3s ease, -webkit-transform 0.3s ease;
        -webkit-transform-origin: center;
                transform-origin: center; }
        .filters .filter-wrap .label svg path {
          fill: #67757d; }
    .filters .filter-wrap ul {
      position: absolute;
      top: 100%;
      left: 1.5rem;
      right: 1.5rem;
      background: white;
      z-index: 3;
      padding: 0 2rem;
      -webkit-box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.2);
              box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.2);
      max-height: 0;
      overflow: hidden;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      .filters .filter-wrap ul li {
        line-height: 1.3;
        margin-bottom: 0.65em; }
        .filters .filter-wrap ul li:last-child {
          margin-bottom: 0; }
        .filters .filter-wrap ul li a {
          font-weight: 300; }
    .filters .filter-wrap input {
      width: 100%; }
    .filters .filter-wrap button {
      position: absolute;
      right: 1.5rem;
      bottom: 1em;
      cursor: pointer; }
      @media screen and (max-width: 639px) {
        .filters .filter-wrap button {
          right: 2rem; } }
      .filters .filter-wrap button svg {
        width: 2rem; }
        @media screen and (max-width: 500px) {
          .filters .filter-wrap button svg {
            width: 1.7rem; } }
        .filters .filter-wrap button svg path {
          fill: #67757d; }

.page-body > ul.accordion {
  margin-top: 5rem; }
  @media screen and (max-width: 1023px) {
    .page-body > ul.accordion {
      margin-top: 4rem; } }
  @media screen and (max-width: 639px) {
    .page-body > ul.accordion {
      margin-top: 3rem; } }
  @media screen and (max-width: 500px) {
    .page-body > ul.accordion {
      margin-top: 2rem; } }
  .page-body > ul.accordion li {
    /*
      &:first-child {
        h2 {
          border-top: 0.1rem solid black;
        }
      } */ }
    .page-body > ul.accordion li h2,
    .page-body > ul.accordion li h3 {
      font-family: span, serif;
      border-bottom: 0.1rem solid black;
      font-weight: 600;
      font-size: 3rem;
      padding: 2em 0 1em;
      line-height: 1.3;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      cursor: pointer;
      margin: 0; }
      @media screen and (max-width: 1439px) {
        .page-body > ul.accordion li h2,
        .page-body > ul.accordion li h3 {
          font-size: 2.8rem;
          padding-top: 1.75em; } }
      @media screen and (max-width: 1279px) {
        .page-body > ul.accordion li h2,
        .page-body > ul.accordion li h3 {
          font-size: 2.6rem;
          padding-top: 1.5em; } }
      @media screen and (max-width: 767px) {
        .page-body > ul.accordion li h2,
        .page-body > ul.accordion li h3 {
          font-size: 2.5rem; } }
      @media screen and (max-width: 639px) {
        .page-body > ul.accordion li h2,
        .page-body > ul.accordion li h3 {
          font-size: 2.2rem; } }
      @media screen and (max-width: 500px) {
        .page-body > ul.accordion li h2,
        .page-body > ul.accordion li h3 {
          font-size: 2rem; } }
      .page-body > ul.accordion li h2 span,
      .page-body > ul.accordion li h3 span {
        font-family: span, serif;
        -webkit-box-flex: 0;
            -ms-flex: 0 1 calc(100% - 4rem);
                flex: 0 1 calc(100% - 4rem); }
      .page-body > ul.accordion li h2.active svg,
      .page-body > ul.accordion li h3.active svg {
        -webkit-transform: rotate(180deg);
                transform: rotate(180deg); }
      .page-body > ul.accordion li h2 svg,
      .page-body > ul.accordion li h3 svg {
        -webkit-transition: -webkit-transform 0.4s ease;
        transition: -webkit-transform 0.4s ease;
        transition: transform 0.4s ease;
        transition: transform 0.4s ease, -webkit-transform 0.4s ease;
        -webkit-box-flex: 0;
            -ms-flex: 0 1 2rem;
                flex: 0 1 2rem;
        display: block; }
        .page-body > ul.accordion li h2 svg path,
        .page-body > ul.accordion li h3 svg path {
          fill: #67757d; }
    .page-body > ul.accordion li h3 {
      font-size: 2.4rem;
      padding: 0.75em 0; }
      @media screen and (max-width: 1439px) {
        .page-body > ul.accordion li h3 {
          font-size: 2.2rem; } }
      @media screen and (max-width: 767px) {
        .page-body > ul.accordion li h3 {
          font-size: 2rem; } }
      @media screen and (max-width: 639px) {
        .page-body > ul.accordion li h3 {
          font-size: 1.8rem; } }
      @media screen and (max-width: 500px) {
        .page-body > ul.accordion li h3 {
          font-size: 1.6rem;
          padding: 1em 0; } }
      .page-body > ul.accordion li h3 svg {
        width: 1.5rem; }
    .page-body > ul.accordion li .accordion-content.text svg {
      -webkit-transition: -webkit-transform 0.4s ease;
      transition: -webkit-transform 0.4s ease;
      transition: transform 0.4s ease;
      transition: transform 0.4s ease, -webkit-transform 0.4s ease;
      width: 20px;
      float: right;
      display: block;
      -webkit-transform: rotate(180deg);
              transform: rotate(180deg);
      cursor: pointer; }
      .page-body > ul.accordion li .accordion-content.text svg path {
        fill: #67757d; }
    .page-body > ul.accordion li .accordion-content.text ul {
      list-style: disc;
      margin-left: 1.5rem;
      margin-top: 1rem; }
      .page-body > ul.accordion li .accordion-content.text ul li {
        margin-bottom: 1rem;
        font-weight: 300;
        line-height: 1.4; }
        .page-body > ul.accordion li .accordion-content.text ul li a {
          -webkit-transition: color 0.3s ease;
          transition: color 0.3s ease;
          text-decoration: underline; }
          .page-body > ul.accordion li .accordion-content.text ul li a strong {
            -webkit-transition: color 0.3s ease;
            transition: color 0.3s ease;
            text-decoration: underline; }
      .page-body > ul.accordion li .accordion-content.text ul li::marker {
        content: unset; }
      .page-body > ul.accordion li .accordion-content.text ul strong {
        font-weight: 700; }
    .page-body > ul.accordion li .accordion-content.text ol {
      list-style: decimal;
      margin-left: 1.5rem; }
    .page-body > ul.accordion li .accordion-content {
      padding: 3rem 0;
      border-bottom: 0.1rem solid black;
      display: none; }
      @media screen and (max-width: 500px) {
        .page-body > ul.accordion li .accordion-content {
          padding: 2.5rem 0; } }
      .page-body > ul.accordion li .accordion-content li {
        margin-bottom: 1rem;
        font-weight: 300;
        line-height: 1.4; }
      .page-body > ul.accordion li .accordion-content blockquote {
        margin-top: 1em; }
      .page-body > ul.accordion li .accordion-content.has-sub {
        padding-bottom: 0;
        border: none; }
        .page-body > ul.accordion li .accordion-content.has-sub .accordion-title {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          -webkit-box-pack: justify;
              -ms-flex-pack: justify;
                  justify-content: space-between;
          border-bottom: 0.1rem solid black; }
          .page-body > ul.accordion li .accordion-content.has-sub .accordion-title h3 {
            display: block;
            -webkit-box-flex: 0;
                -ms-flex: 0 1 calc(100% - 4rem);
                    flex: 0 1 calc(100% - 4rem);
            border-bottom: none; }
          .page-body > ul.accordion li .accordion-content.has-sub .accordion-title svg {
            -webkit-transition: -webkit-transform 0.4s ease;
            transition: -webkit-transform 0.4s ease;
            transition: transform 0.4s ease;
            transition: transform 0.4s ease, -webkit-transform 0.4s ease;
            -webkit-box-flex: 0;
                -ms-flex: 0 1 2rem;
                    flex: 0 1 2rem;
            display: block; }
            .page-body > ul.accordion li .accordion-content.has-sub .accordion-title svg path {
              fill: #67757d; }

aside .jurisdictions > ul.accordion {
  margin-top: 5rem; }
  @media screen and (max-width: 1023px) {
    aside .jurisdictions > ul.accordion {
      margin-top: 4rem; } }
  @media screen and (max-width: 639px) {
    aside .jurisdictions > ul.accordion {
      margin-top: 3rem; } }
  @media screen and (max-width: 500px) {
    aside .jurisdictions > ul.accordion {
      margin-top: 2rem; } }
  aside .jurisdictions > ul.accordion li {
    /*
        &:first-child {
          h2 {
            border-top: 0.1rem solid black;
          }
        } */ }
    aside .jurisdictions > ul.accordion li h2, aside .jurisdictions > ul.accordion li h3 {
      font-family: span, serif;
      border-bottom: 0.1rem solid black;
      font-weight: 600;
      font-size: 3rem;
      padding: 2em 0 1em;
      line-height: 1.3;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      cursor: pointer;
      margin: 0; }
      @media screen and (max-width: 1439px) {
        aside .jurisdictions > ul.accordion li h2, aside .jurisdictions > ul.accordion li h3 {
          font-size: 2.8rem;
          padding-top: 1.75em; } }
      @media screen and (max-width: 1279px) {
        aside .jurisdictions > ul.accordion li h2, aside .jurisdictions > ul.accordion li h3 {
          font-size: 2.6rem;
          padding-top: 1.5em; } }
      @media screen and (max-width: 767px) {
        aside .jurisdictions > ul.accordion li h2, aside .jurisdictions > ul.accordion li h3 {
          font-size: 2.5rem; } }
      @media screen and (max-width: 639px) {
        aside .jurisdictions > ul.accordion li h2, aside .jurisdictions > ul.accordion li h3 {
          font-size: 2.2rem; } }
      @media screen and (max-width: 500px) {
        aside .jurisdictions > ul.accordion li h2, aside .jurisdictions > ul.accordion li h3 {
          font-size: 2rem; } }
      aside .jurisdictions > ul.accordion li h2 span, aside .jurisdictions > ul.accordion li h3 span {
        font-family: span, serif;
        -webkit-box-flex: 0;
            -ms-flex: 0 1 calc(100% - 4rem);
                flex: 0 1 calc(100% - 4rem); }
      aside .jurisdictions > ul.accordion li h2.active svg, aside .jurisdictions > ul.accordion li h3.active svg {
        -webkit-transform: rotate(180deg);
                transform: rotate(180deg); }
      aside .jurisdictions > ul.accordion li h2 svg, aside .jurisdictions > ul.accordion li h3 svg {
        -webkit-transition: -webkit-transform 0.4s ease;
        transition: -webkit-transform 0.4s ease;
        transition: transform 0.4s ease;
        transition: transform 0.4s ease, -webkit-transform 0.4s ease;
        -webkit-box-flex: 0;
            -ms-flex: 0 1 2rem;
                flex: 0 1 2rem;
        display: block; }
        aside .jurisdictions > ul.accordion li h2 svg path, aside .jurisdictions > ul.accordion li h3 svg path {
          fill: #67757d; }
    aside .jurisdictions > ul.accordion li h3 {
      font-size: 1.8rem;
      padding: 0.75em 0; }
      @media screen and (max-width: 639px) {
        aside .jurisdictions > ul.accordion li h3 {
          font-size: 1.4rem; } }
      @media screen and (max-width: 500px) {
        aside .jurisdictions > ul.accordion li h3 {
          padding: 1em 0; } }
      aside .jurisdictions > ul.accordion li h3 svg {
        width: 1.5rem; }
    aside .jurisdictions > ul.accordion li .accordion-content.text svg {
      -webkit-transition: -webkit-transform 0.4s ease;
      transition: -webkit-transform 0.4s ease;
      transition: transform 0.4s ease;
      transition: transform 0.4s ease, -webkit-transform 0.4s ease;
      width: 20px;
      float: right;
      display: block;
      -webkit-transform: rotate(180deg);
              transform: rotate(180deg);
      cursor: pointer; }
      aside .jurisdictions > ul.accordion li .accordion-content.text svg path {
        fill: #67757d; }
    aside .jurisdictions > ul.accordion li .accordion-content.text ul {
      list-style: disc;
      margin-left: 1.5rem;
      margin-top: 1rem; }
      aside .jurisdictions > ul.accordion li .accordion-content.text ul li {
        margin-bottom: .5rem;
        font-weight: 300;
        line-height: 1.4; }
      aside .jurisdictions > ul.accordion li .accordion-content.text ul li::marker {
        content: unset; }
      aside .jurisdictions > ul.accordion li .accordion-content.text ul strong {
        font-weight: 700; }
    aside .jurisdictions > ul.accordion li .accordion-content.text ol {
      list-style: decimal;
      margin-left: 1.5rem; }
    aside .jurisdictions > ul.accordion li .accordion-content {
      padding: 3rem 0;
      border-bottom: 0.1rem solid black;
      display: none; }
      @media screen and (max-width: 500px) {
        aside .jurisdictions > ul.accordion li .accordion-content {
          padding: 2.5rem 0; } }
      aside .jurisdictions > ul.accordion li .accordion-content li {
        margin-bottom: 1rem;
        font-weight: 300;
        line-height: 1.4; }
      aside .jurisdictions > ul.accordion li .accordion-content blockquote {
        margin-top: 1em; }
      aside .jurisdictions > ul.accordion li .accordion-content.has-sub {
        padding-bottom: 0;
        border: none; }
        aside .jurisdictions > ul.accordion li .accordion-content.has-sub .accordion-title {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          -webkit-box-pack: justify;
              -ms-flex-pack: justify;
                  justify-content: space-between;
          border-bottom: 0.1rem solid black; }
          aside .jurisdictions > ul.accordion li .accordion-content.has-sub .accordion-title h3 {
            display: block;
            -webkit-box-flex: 0;
                -ms-flex: 0 1 calc(100% - 4rem);
                    flex: 0 1 calc(100% - 4rem);
            border-bottom: none; }
          aside .jurisdictions > ul.accordion li .accordion-content.has-sub .accordion-title svg {
            -webkit-transition: -webkit-transform 0.4s ease;
            transition: -webkit-transform 0.4s ease;
            transition: transform 0.4s ease;
            transition: transform 0.4s ease, -webkit-transform 0.4s ease;
            -webkit-box-flex: 0;
                -ms-flex: 0 1 2rem;
                    flex: 0 1 2rem;
            display: block; }
            aside .jurisdictions > ul.accordion li .accordion-content.has-sub .accordion-title svg path {
              fill: #67757d; }

.lightbox-wrap {
  margin: 4.5rem 0; }
  @media screen and (max-width: 1023px) {
    .lightbox-wrap {
      margin: 4rem 0; } }
  @media screen and (max-width: 767px) {
    .lightbox-wrap {
      margin-top: 3.5rem 0; } }
  @media screen and (max-width: 500px) {
    .lightbox-wrap {
      margin-top: 3rem; } }
  .lightbox-wrap:last-child {
    margin-bottom: 1.5rem; }
    @media screen and (max-width: 1023px) {
      .lightbox-wrap:last-child {
        margin-bottom: 1rem; } }
    @media screen and (max-width: 767px) {
      .lightbox-wrap:last-child {
        margin-bottom: 0.5rem; } }
    @media screen and (max-width: 500px) {
      .lightbox-wrap:last-child {
        margin-bottom: 0; } }
  .lightbox-wrap .lightbox-trigger {
    position: relative;
    display: block; }
    .lightbox-wrap .lightbox-trigger:hover .overlay {
      background: rgba(0, 0, 0, 0.75); }
      .lightbox-wrap .lightbox-trigger:hover .overlay svg {
        width: 9rem;
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg); }
        @media screen and (max-width: 639px) {
          .lightbox-wrap .lightbox-trigger:hover .overlay svg {
            width: 8rem; } }
        @media screen and (max-width: 500px) {
          .lightbox-wrap .lightbox-trigger:hover .overlay svg {
            width: 7rem; } }
    .lightbox-wrap .lightbox-trigger img {
      width: 100%;
      display: block; }
    .lightbox-wrap .lightbox-trigger .overlay {
      position: absolute;
      top: 0;
      left: 0;
      background: rgba(0, 0, 0, 0.5);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: 100%;
      height: 100%;
      color: white;
      -webkit-transition: background 0.3s ease;
      transition: background 0.3s ease; }
      .lightbox-wrap .lightbox-trigger .overlay svg {
        width: 8rem;
        margin-bottom: 2.5rem;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
        -webkit-transform-origin: center center;
                transform-origin: center center; }
        @media screen and (max-width: 639px) {
          .lightbox-wrap .lightbox-trigger .overlay svg {
            width: 7rem;
            margin-bottom: 2rem; } }
        @media screen and (max-width: 500px) {
          .lightbox-wrap .lightbox-trigger .overlay svg {
            width: 6rem;
            margin-bottom: 1.5rem; } }
        .lightbox-wrap .lightbox-trigger .overlay svg path {
          fill: white; }
      .lightbox-wrap .lightbox-trigger .overlay span {
        font-family: span, serif;
        font-size: 2.4rem; }
        @media screen and (max-width: 639px) {
          .lightbox-wrap .lightbox-trigger .overlay span {
            font-size: 2.1rem; } }
        @media screen and (max-width: 500px) {
          .lightbox-wrap .lightbox-trigger .overlay span {
            font-size: 1.8rem; } }

.carousel__button svg path {
  fill: white; }

.hero {
  position: relative;
  z-index: 1; }
  .hero video {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%; }
  .hero .hero-slider .slide .slide-inner {
    height: 100vh;
    min-height: 696px;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    position: relative; }
    .hero .hero-slider .slide .slide-inner .tint {
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      background: rgba(0, 0, 0, 0.4);
      width: 100%;
      z-index: 2; }
    .hero .hero-slider .slide .slide-inner .content {
      position: relative;
      z-index: 3; }
      @media screen and (max-width: 1599px) {
        .hero .hero-slider .slide .slide-inner .content {
          padding-top: 5%; } }
      @media screen and (max-width: 767px) {
        .hero .hero-slider .slide .slide-inner .content {
          padding-top: 7.5%; } }
      .hero .hero-slider .slide .slide-inner .content h2,
      .hero .hero-slider .slide .slide-inner .content p,
      .hero .hero-slider .slide .slide-inner .content cite {
        font-family: span, serif;
        color: white;
        font-weight: 600;
        text-shadow: 0 0 1.2rem rgba(0, 0, 0, 0.75); }
      .hero .hero-slider .slide .slide-inner .content h2 {
        font-size: 11rem;
        margin: 0 0 0.3em;
        line-height: 1;
        letter-spacing: -0.01em; }
        .hero .hero-slider .slide .slide-inner .content h2:nth-child(2) {
          margin-bottom: 0.4em; }
        @media screen and (max-width: 1599px) {
          .hero .hero-slider .slide .slide-inner .content h2 {
            font-size: 10rem; } }
        @media screen and (max-width: 1279px) {
          .hero .hero-slider .slide .slide-inner .content h2 {
            font-size: 9.4rem; } }
        @media screen and (max-width: 1023px) {
          .hero .hero-slider .slide .slide-inner .content h2 {
            font-size: 8.4rem; } }
        @media screen and (max-width: 767px) {
          .hero .hero-slider .slide .slide-inner .content h2 {
            font-size: 7.2rem; } }
        @media screen and (max-width: 639px) {
          .hero .hero-slider .slide .slide-inner .content h2 {
            font-size: 5.4rem;
            margin-bottom: 0.4em; } }
        @media screen and (max-width: 500px) {
          .hero .hero-slider .slide .slide-inner .content h2 {
            font-size: 5rem;
            margin-bottom: 0.35em; } }
      .hero .hero-slider .slide .slide-inner .content p {
        font-size: 4.5rem;
        margin: 0 0 1.15em;
        line-height: 1; }
        .hero .hero-slider .slide .slide-inner .content p:first-child {
          margin-bottom: 0.35em; }
          @media screen and (max-width: 767px) {
            .hero .hero-slider .slide .slide-inner .content p:first-child {
              margin-bottom: 0.45em; } }
          @media screen and (max-width: 639px) {
            .hero .hero-slider .slide .slide-inner .content p:first-child {
              margin-bottom: 0.55em; } }
        @media screen and (max-width: 1599px) {
          .hero .hero-slider .slide .slide-inner .content p {
            font-size: 4rem; } }
        @media screen and (max-width: 1023px) {
          .hero .hero-slider .slide .slide-inner .content p {
            font-size: 3.6rem;
            margin-bottom: 0.8em; } }
        @media screen and (max-width: 767px) {
          .hero .hero-slider .slide .slide-inner .content p {
            font-size: 3.2rem; } }
        @media screen and (max-width: 639px) {
          .hero .hero-slider .slide .slide-inner .content p {
            font-size: 2.6rem; } }
        @media screen and (max-width: 500px) {
          .hero .hero-slider .slide .slide-inner .content p {
            font-size: 2.2rem; } }
        @media screen and (max-width: 500px) {
          .hero .hero-slider .slide .slide-inner .content p {
            margin-bottom: 0.7em; } }
      .hero .hero-slider .slide .slide-inner .content cite {
        font-size: 2.2rem;
        text-shadow: 0 0 0.6rem rgba(0, 0, 0, 0.75); }
        @media screen and (max-width: 1599px) {
          .hero .hero-slider .slide .slide-inner .content cite {
            font-size: 2rem; } }
        @media screen and (max-width: 639px) {
          .hero .hero-slider .slide .slide-inner .content cite {
            font-size: 1.8rem; } }
        @media screen and (max-width: 500px) {
          .hero .hero-slider .slide .slide-inner .content cite {
            font-size: 1.6rem; } }
    .hero .hero-slider .slide .slide-inner .content.small h2 {
      font-size: 7rem; }
      @media screen and (max-width: 639px) {
        .hero .hero-slider .slide .slide-inner .content.small h2 {
          font-size: 5.4rem;
          margin-bottom: 0.4em; } }
      @media screen and (max-width: 500px) {
        .hero .hero-slider .slide .slide-inner .content.small h2 {
          font-size: 5rem;
          margin-bottom: 0.35em; } }
    .hero .hero-slider .slide .slide-inner .content.small p {
      font-size: 2.5rem; }
    .hero .hero-slider .slide .slide-inner .content.small cite {
      font-size: 1.8rem; }

.button-bar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media screen and (max-width: 500px) {
    .button-bar {
      display: block; } }
  .button-bar a {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: block;
    text-align: center;
    font-family: span, serif;
    font-size: 3.2rem;
    line-height: 1;
    padding: 1em 0 1.15em;
    background: #67757d;
    -webkit-transition: background 0.3s ease;
    transition: background 0.3s ease;
    color: white; }
    @media screen and (max-width: 1439px) {
      .button-bar a {
        font-size: 3rem; } }
    @media screen and (max-width: 1279px) {
      .button-bar a {
        font-size: 2.8rem; } }
    @media screen and (max-width: 1023px) {
      .button-bar a {
        font-size: 2.5rem; } }
    @media screen and (max-width: 767px) {
      .button-bar a {
        font-size: 2.2rem; } }
    @media screen and (max-width: 639px) {
      .button-bar a {
        font-size: 1.8rem; } }
    @media screen and (max-width: 500px) {
      .button-bar a {
        font-size: 2rem; } }
    .button-bar a:hover {
      background: black; }
    .button-bar a:last-child {
      background: #313b40; }
      .button-bar a:last-child:hover {
        background: black; }

.intro {
  padding: 12.5rem 0; }
  @media screen and (max-width: 1599px) {
    .intro {
      padding: 10rem 0 5rem; } }
  @media screen and (max-width: 1439px) {
    .intro {
      padding: 7.5rem 0 5rem; } }
  @media screen and (max-width: 767px) {
    .intro {
      padding: 6.5rem 0 5rem; } }
  @media screen and (max-width: 639px) {
    .intro {
      padding: 4.5rem 0 7.5rem; } }
  @media screen and (max-width: 500px) {
    .intro {
      padding: 3.5rem 0 5.5rem; } }
  .intro .container {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
    @media screen and (max-width: 767px) {
      .intro .container {
        display: block; } }
  .intro .text {
    margin: 0 calc((1 / 12) * 100%);
    width: calc((6 / 12) * 100%);
    padding: 4rem 1.5rem 5.5rem;
    position: relative; }
    @media screen and (max-width: 1279px) {
      .intro .text {
        margin-left: 0;
        width: calc((8 / 12) * 100%);
        padding: 3rem 1.5rem 4.5rem; } }
    @media screen and (max-width: 1023px) {
      .intro .text {
        padding: 1.5rem; } }
    @media screen and (max-width: 767px) {
      .intro .text {
        width: calc(100% - 3rem);
        border-bottom: 0.1rem solid black;
        padding: 0 0 4rem;
        margin: 0 1.5rem 4rem; } }
    @media screen and (max-width: 639px) {
      .intro .text {
        width: calc(100% - 4rem);
        margin: 0 2rem 4rem; } }
    @media screen and (max-width: 500px) {
      .intro .text {
        padding-bottom: 3rem;
        margin-bottom: 3rem; } }
    .intro .text::after {
      position: absolute;
      top: 0;
      height: 100%;
      width: 0.1rem;
      background-color: black;
      content: "";
      left: calc(100% + 0.1rem + ((0.5 / 6) * 100%)); }
      @media screen and (max-width: 767px) {
        .intro .text::after {
          display: none; } }
    .intro .text p {
      font-size: 1.6rem;
      line-height: 1.4;
      font-weight: 300;
      margin-bottom: 1.5em;
      letter-spacing: 0.02em; }
      @media screen and (max-width: 500px) {
        .intro .text p {
          font-size: 1.5rem; } }
      .intro .text p:last-child {
        margin-bottom: 0; }
      .intro .text p:first-child {
        font-weight: 600;
        font-family: span, serif;
        font-size: 2.4rem;
        margin-bottom: 1em; }
        @media screen and (max-width: 1279px) {
          .intro .text p:first-child {
            font-size: 2.2rem; } }
        @media screen and (max-width: 1023px) {
          .intro .text p:first-child {
            font-size: 2rem; } }
        @media screen and (max-width: 500px) {
          .intro .text p:first-child {
            font-size: 1.8rem; } }
  .intro .quote-slider-wrapper {
    padding: 4rem 0 0;
    width: calc((3 / 12) * 100%); }
    @media screen and (max-width: 1279px) {
      .intro .quote-slider-wrapper {
        margin-left: 0;
        width: calc((4 / 12) * 100%);
        padding-top: 3rem; } }
    @media screen and (max-width: 1023px) {
      .intro .quote-slider-wrapper {
        padding-top: 1.5rem; } }
    @media screen and (max-width: 767px) {
      .intro .quote-slider-wrapper {
        padding-top: 0;
        width: 100%; } }
    @media screen and (max-width: 639px) {
      .intro .quote-slider-wrapper {
        padding-left: 0.5rem; } }

.news {
  background: #f0f1f2;
  padding: 12rem 0 15rem; }
  @media screen and (max-width: 1599px) {
    .news {
      padding: 10rem 0; } }
  @media screen and (max-width: 1439px) {
    .news {
      padding: 7.5rem 0; } }
  @media screen and (max-width: 1279px) {
    .news {
      padding: 6rem 0; } }
  @media screen and (max-width: 1023px) {
    .news {
      padding: 5.5rem 0 2.5rem; } }
  @media screen and (max-width: 639px) {
    .news {
      padding: 4.5rem 0 1.5rem; } }
  @media screen and (max-width: 500px) {
    .news {
      padding: 4rem 0 1rem; } }
  @media screen and (max-width: 1023px) {
    .news .container.title {
      display: block; } }
  .news .container.title > div {
    padding: 0 0 0 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
    @media screen and (max-width: 639px) {
      .news .container.title > div {
        padding: 0 2rem; } }
    .news .container.title > div:last-child {
      padding: 0 1.5rem 0 0;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1; }
      @media screen and (max-width: 1023px) {
        .news .container.title > div:last-child {
          padding-left: 1.5rem; } }
      @media screen and (max-width: 639px) {
        .news .container.title > div:last-child {
          padding: 0 2rem; } }
      @media screen and (max-width: 500px) {
        .news .container.title > div:last-child {
          display: block; } }
    .news .container.title > div h2 {
      font-family: span, serif;
      font-size: 5.6rem;
      line-height: 0.9;
      margin: 0 3rem 0 0;
      font-weight: 600; }
      @media screen and (max-width: 1439px) {
        .news .container.title > div h2 {
          font-size: 5rem;
          margin-right: 2.5rem; } }
      @media screen and (max-width: 1279px) {
        .news .container.title > div h2 {
          font-size: 4.4rem;
          margin-right: 2rem; } }
      @media screen and (max-width: 1023px) {
        .news .container.title > div h2 {
          margin: 0 0 0.25em;
          font-size: 4.6rem; } }
      @media screen and (max-width: 767px) {
        .news .container.title > div h2 {
          font-size: 4.2rem;
          margin-bottom: 0.15em; } }
      @media screen and (max-width: 639px) {
        .news .container.title > div h2 {
          font-size: 4rem; } }
      @media screen and (max-width: 500px) {
        .news .container.title > div h2 {
          margin-bottom: 2rem;
          font-size: 3.8rem; } }
    .news .container.title > div p,
    .news .container.title > div a {
      color: #67757d;
      font-family: span, serif;
      font-size: 2.4rem;
      line-height: 1;
      margin: 0; }
      @media screen and (max-width: 1439px) {
        .news .container.title > div p,
        .news .container.title > div a {
          font-size: 2.1rem; } }
      @media screen and (max-width: 1279px) {
        .news .container.title > div p,
        .news .container.title > div a {
          font-size: 2rem; } }
      @media screen and (max-width: 767px) {
        .news .container.title > div p,
        .news .container.title > div a {
          font-size: 1.8rem; } }
      @media screen and (max-width: 639px) {
        .news .container.title > div p,
        .news .container.title > div a {
          font-size: 1.6rem; } }
    .news .container.title > div a {
      font-weight: 700;
      -webkit-transition: color 0.3s ease;
      transition: color 0.3s ease; }
      .news .container.title > div a:hover {
        color: black; }
    .news .container.title > div > div {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: end;
          -ms-flex-align: end;
              align-items: flex-end; }
      @media screen and (max-width: 500px) {
        .news .container.title > div > div {
          -webkit-box-pack: justify;
              -ms-flex-pack: justify;
                  justify-content: space-between;
          margin-top: 0.5rem; } }
    .news .container.title > div ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      margin-left: 1.5rem;
      font-size: 2.4rem;
      -webkit-transform: translateY(0.1em);
              transform: translateY(0.1em); }
      @media screen and (max-width: 1439px) {
        .news .container.title > div ul {
          margin-left: 1rem; } }
      @media screen and (max-width: 1023px) {
        .news .container.title > div ul {
          margin-left: 0.5rem; } }
      .news .container.title > div ul li {
        margin-left: 1rem; }
        .news .container.title > div ul li a {
          color: #67757d; }
  .news .container hr {
    width: calc(100% - 3rem);
    margin: 4rem auto 5rem;
    border-top: 0.1rem solid black; }
    @media screen and (max-width: 1439px) {
      .news .container hr {
        margin: 3.5rem auto 4.5rem; } }
    @media screen and (max-width: 1279px) {
      .news .container hr {
        margin-top: 2.5rem;
        margin-bottom: 3.5rem; } }
    @media screen and (max-width: 639px) {
      .news .container hr {
        width: calc(100% - 4rem);
        margin: 2rem auto 3rem; } }
  .news .container .card-listing {
    -webkit-box-align: unset;
        -ms-flex-align: unset;
            align-items: unset;
    padding: 0; }

.img-banner {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 10rem 0 25rem; }
  @media screen and (max-width: 1599px) {
    .img-banner {
      padding: 10rem 0 20rem; } }
  @media screen and (max-width: 1439px) {
    .img-banner {
      padding-bottom: 17.5rem; } }
  @media screen and (max-width: 1279px) {
    .img-banner {
      padding-bottom: 15rem; } }
  @media screen and (max-width: 1023px) {
    .img-banner {
      padding: 7.5rem 0 10rem; } }
  @media screen and (max-width: 767px) {
    .img-banner {
      padding: 6.5rem 0 7.5rem; } }
  @media screen and (max-width: 767px) {
    .img-banner {
      padding: 5.5rem 0 6.5rem; } }
  @media screen and (max-width: 500px) {
    .img-banner {
      padding: 4.5rem 0 5.5rem; } }
  .img-banner .container .content {
    padding: 0 1.5rem;
    width: calc((6 / 12) * 100%); }
    @media screen and (max-width: 1023px) {
      .img-banner .container .content {
        width: calc((10 / 12) * 100%); } }
    @media screen and (max-width: 767px) {
      .img-banner .container .content {
        width: 100%; } }
    @media screen and (max-width: 639px) {
      .img-banner .container .content {
        padding: 0 2rem; } }
    .img-banner .container .content * {
      color: #c9c9c9;
      font-size: 2.4rem;
      letter-spacing: 0.02em;
      line-height: 1.35; }
      @media screen and (max-width: 1279px) {
        .img-banner .container .content * {
          font-size: 2.2rem; } }
      @media screen and (max-width: 1023px) {
        .img-banner .container .content * {
          font-size: 2.4rem; } }
      @media screen and (max-width: 767px) {
        .img-banner .container .content * {
          font-size: 2.2rem; } }
      @media screen and (max-width: 639px) {
        .img-banner .container .content * {
          font-size: 2rem; } }
      @media screen and (max-width: 500px) {
        .img-banner .container .content * {
          font-size: 1.8rem; } }
    .img-banner .container .content p {
      margin-bottom: 3.5em; }
      @media screen and (max-width: 1439px) {
        .img-banner .container .content p {
          margin-bottom: 3em; } }
      @media screen and (max-width: 1023px) {
        .img-banner .container .content p {
          margin-bottom: 2.5em; } }
      @media screen and (max-width: 767px) {
        .img-banner .container .content p {
          margin-bottom: 2em; } }
    .img-banner .container .content h2 {
      color: white;
      font-family: span, serif;
      font-size: 3.3rem;
      line-height: 1.2;
      margin-bottom: 1.45em; }
      @media screen and (max-width: 1439px) {
        .img-banner .container .content h2 {
          margin-bottom: 1.4em; } }
      @media screen and (max-width: 1023px) {
        .img-banner .container .content h2 {
          font-size: 3rem;
          margin-bottom: 1.25em; } }
      @media screen and (max-width: 767px) {
        .img-banner .container .content h2 {
          font-size: 3.8rem;
          margin-bottom: 1em; } }
      @media screen and (max-width: 639px) {
        .img-banner .container .content h2 {
          font-size: 3.2rem; } }
      @media screen and (max-width: 500px) {
        .img-banner .container .content h2 {
          font-size: 3.2rem;
          margin-bottom: 0.8em; } }
    .img-banner .container .content a {
      font-weight: 700;
      -webkit-transition: color 0.3s ease;
      transition: color 0.3s ease;
      font-size: 4rem; }
      .img-banner .container .content a:hover {
        color: white; }

.webinars {
  padding: 10rem 0 15rem; }
  @media screen and (max-width: 1599px) {
    .webinars {
      padding: 10rem 0; } }
  @media screen and (max-width: 1439px) {
    .webinars {
      padding: 7.5rem 0; } }
  @media screen and (max-width: 1279px) {
    .webinars {
      padding: 6rem 0; } }
  @media screen and (max-width: 1023px) {
    .webinars {
      padding: 5.5rem 0 2.5rem; } }
  @media screen and (max-width: 639px) {
    .webinars {
      padding: 4.5rem 0 1.5rem; } }
  @media screen and (max-width: 500px) {
    .webinars {
      padding: 4rem 0 1rem; } }
  .webinars .container.title {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    font-size: 2.4rem; }
    @media screen and (max-width: 1439px) {
      .webinars .container.title {
        font-size: 2.1rem; } }
    @media screen and (max-width: 1279px) {
      .webinars .container.title {
        font-size: 2rem; } }
    @media screen and (max-width: 767px) {
      .webinars .container.title {
        font-size: 1.8rem; } }
    @media screen and (max-width: 639px) {
      .webinars .container.title {
        font-size: 1.6rem; } }
    .webinars .container.title h2 {
      width: 100%;
      padding: 0 1.5rem;
      font-size: 5.6rem;
      line-height: 0.9;
      margin: 0 0 0.5em;
      font-weight: 600;
      font-family: span, serif; }
      @media screen and (max-width: 1439px) {
        .webinars .container.title h2 {
          font-size: 5rem; } }
      @media screen and (max-width: 1279px) {
        .webinars .container.title h2 {
          font-size: 4.4rem; } }
      @media screen and (max-width: 1023px) {
        .webinars .container.title h2 {
          margin: 0 0 0.4em;
          font-size: 4.6rem; } }
      @media screen and (max-width: 767px) {
        .webinars .container.title h2 {
          font-size: 4.2rem; } }
      @media screen and (max-width: 639px) {
        .webinars .container.title h2 {
          font-size: 4rem;
          padding: 0 2rem; } }
      @media screen and (max-width: 500px) {
        .webinars .container.title h2 {
          margin-bottom: 2rem;
          font-size: 3.8rem;
          line-height: 1.2; } }
    .webinars .container.title p {
      color: #67757d;
      line-height: 1;
      margin: 0 0 0 1.5rem;
      font-weight: 700;
      font-family: span, serif; }
      @media screen and (max-width: 639px) {
        .webinars .container.title p {
          margin-left: 2rem;
          margin-bottom: 1em; } }
    @media screen and (max-width: 1023px) {
      .webinars .container.title div {
        width: calc(100% - 3rem); } }
    @media screen and (max-width: 639px) {
      .webinars .container.title div {
        width: calc(100% - 4rem); } }
    .webinars .container.title ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      margin: 0 1.5rem 0 0; }
      @media screen and (max-width: 1023px) {
        .webinars .container.title ul {
          margin: 1.5rem 0 0 1.5rem;
          -webkit-box-pack: justify;
              -ms-flex-pack: justify;
                  justify-content: space-between;
          width: 100%; } }
      @media screen and (max-width: 639px) {
        .webinars .container.title ul {
          margin: 0 0 0 2rem; } }
      @media screen and (max-width: 500px) {
        .webinars .container.title ul {
          display: block; } }
      .webinars .container.title ul li {
        border-right: 0.1rem solid #67757d;
        padding: 0 1rem;
        line-height: 1; }
        @media screen and (max-width: 1023px) {
          .webinars .container.title ul li {
            padding: 0;
            border: none; } }
        @media screen and (max-width: 500px) {
          .webinars .container.title ul li {
            margin-bottom: 1em; } }
        .webinars .container.title ul li:last-child {
          border-right: none;
          padding-right: 0; }
          @media screen and (max-width: 500px) {
            .webinars .container.title ul li:last-child {
              margin-bottom: 0; } }
        .webinars .container.title ul li:first-child {
          padding-left: 0; }
        .webinars .container.title ul li a {
          font-family: span, serif;
          color: #67757d;
          font-weight: 700;
          -webkit-transition: color 0.3s ease;
          transition: color 0.3s ease;
          line-height: 1; }
          .webinars .container.title ul li a:hover {
            color: black; }
  .webinars hr {
    width: calc(100% - 3rem);
    margin: 4rem auto 5rem;
    border-top: 0.1rem solid black; }
    @media screen and (max-width: 1439px) {
      .webinars hr {
        margin: 3.5rem auto 4.5rem; } }
    @media screen and (max-width: 1279px) {
      .webinars hr {
        margin-top: 2.5rem;
        margin-bottom: 3.5rem; } }
    @media screen and (max-width: 639px) {
      .webinars hr {
        width: calc(100% - 4rem);
        margin: 2rem auto 3rem; } }

.img-header .container .img-wrapper {
  margin: 0 1.5rem;
  padding: 10rem 0;
  width: calc(100% - 3rem);
  text-align: center;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative; }
  @media screen and (max-width: 639px) {
    .img-header .container .img-wrapper {
      margin: 0 2rem;
      padding: 10rem 0; } }
  @media screen and (max-width: 500px) {
    .img-header .container .img-wrapper {
      padding: 8.5rem 0; } }
  .img-header .container .img-wrapper::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #999999;
    content: "";
    z-index: 1;
    mix-blend-mode: multiply; }
  .img-header .container .img-wrapper h1 {
    color: white;
    font-size: 4.6rem;
    font-weight: 600;
    position: relative;
    z-index: 2; }
    @media screen and (max-width: 1279px) {
      .img-header .container .img-wrapper h1 {
        font-size: 4rem; } }
    @media screen and (max-width: 1023px) {
      .img-header .container .img-wrapper h1 {
        font-size: 3.6rem; } }
    @media screen and (max-width: 767px) {
      .img-header .container .img-wrapper h1 {
        font-size: 3.2rem; } }
    @media screen and (max-width: 639px) {
      .img-header .container .img-wrapper h1 {
        font-size: 2.8rem;
        padding: 0 2rem; } }

main {
  padding: 4rem 0; }
  main a.featured-link {
    font-family: span, serif;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 1.875em;
    margin-top: 2em; }
    @media screen and (max-width: 1023px) {
      main a.featured-link {
        margin-top: 1.75em; } }
    @media screen and (max-width: 767px) {
      main a.featured-link {
        font-size: 1.5em; } }
    @media screen and (max-width: 500px) {
      main a.featured-link {
        font-size: 1.375em; } }
    main a.featured-link.prev svg {
      margin-right: 1rem; }
    main a.featured-link.next svg {
      margin-left: 1rem; }
    main a.featured-link svg {
      width: 0.9rem;
      -webkit-transform: translateY(5%);
              transform: translateY(5%); }
      @media screen and (max-width: 500px) {
        main a.featured-link svg {
          width: 0.7rem; } }
  @media screen and (max-width: 1023px) {
    main .container {
      display: block; } }
  main .container > * {
    padding: 2rem 1.5rem 15rem; }
    @media screen and (max-width: 1439px) {
      main .container > * {
        padding-bottom: 10rem; } }
    @media screen and (max-width: 1279px) {
      main .container > * {
        padding-top: 3rem;
        padding-bottom: 7.5rem; } }
    @media screen and (max-width: 1023px) {
      main .container > * {
        padding: 0 1.5rem; } }
    @media screen and (max-width: 639px) {
      main .container > * {
        padding: 0 2rem; } }
  main .container.top > * {
    padding: 5rem 1.5rem 2rem; }
  main .page-body {
    width: calc((8 / 12) * 100%);
    position: relative;
    font-size: 1.6rem; }
    @media screen and (max-width: 1023px) {
      main .page-body {
        width: 100%;
        margin-bottom: 5rem; } }
    @media screen and (max-width: 639px) {
      main .page-body {
        margin-bottom: 4rem; } }
    @media screen and (max-width: 500px) {
      main .page-body {
        font-size: 1.4rem;
        margin-bottom: 3.5rem; } }
    main .page-body::after {
      right: 3rem;
      position: absolute;
      top: 0rem;
      height: 100%;
      background: black;
      width: 0.1rem;
      content: ""; }
      @media screen and (max-width: 1023px) {
        main .page-body::after {
          display: none; } }
    main .page-body h3 {
      font-weight: 700;
      line-height: 1.4;
      margin-bottom: 0.2em;
      padding-right: 1.5rem; }
      @media screen and (max-width: 1023px) {
        main .page-body h3 {
          width: 100%;
          padding-right: 0; } }

    main .page-body table h3, main .page-body.extra-style h3 {
        font-size: 2rem;
        margin-bottom: .5em; }
        @media screen and (max-width: 1023px) {
           main .page-body table h3 {
            width: 100%;}}

    main .page-body table a {
        font-family: span, serif;
        color: #67757d;
        text-decoration: underline;
    }

    main .page-body > * {
      width: calc(((7 / 8) * 100%));
      padding-right: 1.5rem; }
      @media screen and (max-width: 1023px) {
        main .page-body > * {
          width: 100%;
          padding: 0; } }
    main .page-body em,
    main .page-body i {
      font-style: italic; }
    main .page-body p {
      font-weight: 300;
      margin-bottom: 1.5em;
      line-height: 1.4;
      letter-spacing: 0.02em; }
      main .page-body p:last-child {
        margin-bottom: 0; }
      main .page-body p strong {
        font-weight: 700; }
      main .page-body p u {
        text-decoration: underline; }
      main .page-body p a {
        font-weight: 500;
        text-decoration: underline; }
    main .page-body > p:first-child {
      font-family: span, serif;
      font-size: 1.5em;
      letter-spacing: 0; }
      @media screen and (max-width: 1279px) {
        main .page-body > p:first-child {
          font-size: 1.4em; } }
      @media screen and (max-width: 767px) {
        main .page-body > p:first-child {
          font-size: 1.25em; } }
      @media screen and (max-width: 639px) {
        main .page-body > p:first-child {
          font-size: 1.15em; } }
      @media screen and (max-width: 500px) {
        main .page-body > p:first-child {
          font-size: 1.25em; } }
      main .page-body > p:first-child i, main .page-body > p:first-child em {
        font-family: span, serif;
        font-style: italic; }
      main .page-body > p:first-child u {
        font-family: span, serif;
        text-decoration: underline; }
      main .page-body > p:first-child a {
        font-family: span, serif;
        color: #67757d; }
      main .page-body > p:first-child strong {
        font-family: span, serif; }
    main .page-body .cv-intro blockquote {
      margin-bottom: 2rem; }
      main .page-body .cv-intro blockquote p {
        font-family: span, serif;
        font-size: 2.1rem;
        line-height: 1.5;
        position: relative;
        font-style: italic; }
        @media screen and (max-width: 1279px) {
          main .page-body .cv-intro blockquote p {
            font-size: 2rem; } }
        @media screen and (max-width: 1023px) {
          main .page-body .cv-intro blockquote p {
            font-size: 1.8rem; } }
        @media screen and (max-width: 500px) {
          main .page-body .cv-intro blockquote p {
            font-size: 1.7rem; } }
    main .page-body .cv-intro cite {
      font-size: 1.8rem;
      font-weight: 500; }
      @media screen and (max-width: 500px) {
        main .page-body .cv-intro cite {
          font-size: 1.4rem; } }
    main .page-body .cv-intro > p:first-child {
      font-family: span, serif;
      font-size: 1.5em;
      letter-spacing: 0; }
      @media screen and (max-width: 1279px) {
        main .page-body .cv-intro > p:first-child {
          font-size: 1.4em; } }
      @media screen and (max-width: 767px) {
        main .page-body .cv-intro > p:first-child {
          font-size: 1.25em; } }
      @media screen and (max-width: 639px) {
        main .page-body .cv-intro > p:first-child {
          font-size: 1.15em; } }
      @media screen and (max-width: 500px) {
        main .page-body .cv-intro > p:first-child {
          font-size: 1.25em; } }
      main .page-body .cv-intro > p:first-child i {
        font-family: span, serif;
        font-style: italic; }
      main .page-body .cv-intro > p:first-child em {
        font-family: span, serif;
        font-style: italic; }
        main .page-body .cv-intro > p:first-child em u {
          font-family: span, serif;
          text-decoration: underline; }
      main .page-body .cv-intro > p:first-child a {
        font-family: span, serif;
        color: #67757d;
        text-decoration: underline; }
      main .page-body .cv-intro > p:first-child strong {
        font-family: span, serif; }
    main .page-body .cv-intro ul {
      list-style: disc;
      margin-left: 1.5rem; }
      main .page-body .cv-intro ul li {
        margin-bottom: 1rem;
        font-weight: 300;
        line-height: 1.4; }
      main .page-body .cv-intro ul li::marker {
        content: unset; }
      main .page-body .cv-intro ul strong {
        font-weight: 700; }
    main .page-body .cv-intro ol {
      list-style-type: decimal;
      margin-left: 1.5rem; }
      main .page-body .cv-intro ol li {
        margin-bottom: 1rem;
        font-weight: 300;
        line-height: 1.4; }
      main .page-body .cv-intro ol li::marker {
        content: unset; }
      main .page-body .cv-intro ol strong {
        font-weight: 700; }
  main .page-body.expertise-page ul {
    list-style: disc;
    margin-left: 1.5rem;
    margin-top: 1rem; }
    main .page-body.expertise-page ul li {
      margin-bottom: 1rem;
      font-weight: 300;
      line-height: 1.4; }
    main .page-body.expertise-page ul li::marker {
      content: unset; }
    main .page-body.expertise-page ul strong {
      font-weight: 700; }
  main .page-body.expertise-page ol {
    list-style: decimal;
    margin-left: 1.5rem; }
  main aside {
    width: calc((4 / 12) * 100%);
    font-size: 1.6rem;
    font-weight: 300;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    position: relative; }
    @media screen and (max-width: 1023px) {
      main aside {
        width: 100%;
        padding-top: 4rem; } }
    @media screen and (max-width: 500px) {
      main aside {
        font-size: 1.4rem; } }
    main aside::before {
      width: calc(100%);
      content: none;
      height: 0.1rem;
      background: black;
      margin-bottom: 4rem; }
      @media screen and (max-width: 1023px) {
        main aside::before {
          content: ""; } }
      @media screen and (max-width: 639px) {
        main aside::before {
          margin-bottom: 3.5rem;
          width: calc(100%); } }
    main aside .content {
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1; }
      @media screen and (max-width: 1023px) {
        main aside .content {
          -webkit-box-ordinal-group: 2;
              -ms-flex-order: 1;
                  order: 1;
          margin-bottom: 4rem; } }
      @media screen and (max-width: 500px) {
        main aside .content {
          margin-bottom: 3.5rem; } }
    main aside .filters {
      display: block;
      -webkit-box-ordinal-group: 3;
          -ms-flex-order: 2;
              order: 2;
      margin-top: 4rem; }
      @media screen and (max-width: 1279px) {
        main aside .filters {
          margin-bottom: 6rem; } }
      main aside .filters li a {
        font-weight: 300; }
    main aside .sub.content {
      -webkit-box-ordinal-group: 4;
          -ms-flex-order: 3;
              order: 3; }
    main aside .jurisdictions {
      -webkit-box-ordinal-group: 5;
          -ms-flex-order: 4;
              order: 4;
      margin-top: 6rem; }
    main aside h2 {
      font-size: 1.875em;
      font-family: span, serif;
      list-style: 1.075;
      margin-bottom: 0.75em; }
      @media screen and (max-width: 1279px) {
        main aside h2 {
          font-size: 1.625em;
          margin-bottom: 0.8em; } }
      main aside h2 + ul {
        margin-bottom: 10rem; }
        @media screen and (max-width: 1279px) {
          main aside h2 + ul {
            margin-bottom: 7.5rem; } }
        @media screen and (max-width: 1023px) {
          main aside h2 + ul {
            margin-bottom: 5rem; } }
        @media screen and (max-width: 639px) {
          main aside h2 + ul {
            margin-bottom: 4rem; } }
        @media screen and (max-width: 500px) {
          main aside h2 + ul {
            margin-bottom: 3.5rem; } }
        main aside h2 + ul li {
          line-height: 1;
          margin-bottom: 0.5em;
          line-height: 1.3; }
          main aside h2 + ul li strong {
            font-weight: 700;
            margin-right: 5px; }
          main aside h2 + ul li:last-child {
            margin-bottom: 0; }
    main aside .quote-slider-wrapper {
      margin: 0 -1.5rem; }

main.expertise {
  padding-top: 6rem; }
  main.expertise .container > * {
    padding-top: 0; }

.news.internal .container.title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media screen and (max-width: 500px) {
    .news.internal .container.title {
      display: block; } }
  .news.internal .container.title div:last-child {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    @media screen and (max-width: 639px) {
      .news.internal .container.title div:last-child {
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between; } }
  .news.internal .container.title h2 {
    margin-bottom: 0; }

.news.internal .container:last-child {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .news.internal .container:last-child a.all {
    margin-left: 1.5rem;
    color: #67757d;
    font-family: span, serif;
    -webkit-transition: color 0.3s ease;
    transition: color 0.3s ease;
    display: inline-block;
    margin-top: 3rem;
    font-size: 2.4rem;
    font-weight: 700; }
    .news.internal .container:last-child a.all:hover {
      color: #313b40; }
    @media screen and (max-width: 1279px) {
      .news.internal .container:last-child a.all {
        font-size: 2.1rem; } }
    @media screen and (max-width: 1023px) {
      .news.internal .container:last-child a.all {
        margin-top: 0.5rem;
        margin-bottom: 1.5rem; } }
    @media screen and (max-width: 767px) {
      .news.internal .container:last-child a.all {
        margin-top: 0; } }
    @media screen and (max-width: 639px) {
      .news.internal .container:last-child a.all {
        font-size: 1.9rem;
        margin-bottom: 2rem; } }
    @media screen and (max-width: 500px) {
      .news.internal .container:last-child a.all {
        font-size: 1.8rem; } }

.news.internal.expertise {
  padding: 6rem 0 0;
  background: transparent; }
  .news.internal.expertise .card-listing .card .card-text {
    background-color: #f0f1f2; }

.webinars.internal .container.title div {
  width: auto; }
  @media screen and (max-width: 1023px) {
    .webinars.internal .container.title div {
      padding-right: 3rem; } }

.webinars.internal .container.title h2 {
  width: auto;
  margin-bottom: 0; }
  @media screen and (max-width: 639px) {
    .webinars.internal .container.title h2 {
      margin-bottom: 0.5em; } }

@media screen and (max-width: 1023px) {
  .webinars.internal .container.title ul {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin: 0 0 0.2rem 0; } }

@media screen and (max-width: 767px) {
  .webinars.internal .container.title ul {
    margin: 2rem 0 0 1.5rem;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; } }

@media screen and (max-width: 639px) {
  .webinars.internal .container.title ul {
    margin-top: 0;
    margin-left: 2rem; } }

@media screen and (max-width: 500px) {
  .webinars.internal .container.title ul {
    display: block; } }

@media screen and (max-width: 1023px) {
  .webinars.internal .container.title ul li {
    border-right: 0.1rem solid #67757d;
    padding: 0 1rem; } }

@media screen and (max-width: 500px) {
  .webinars.internal .container.title ul li {
    border: none;
    padding: 0; } }

.webinars.internal .container.title ul li:first-child {
  padding-left: 0; }

.webinars.internal .container.title ul li:last-child {
  border: none;
  padding-right: 0; }

.listing-page {
  padding: 7.5rem 0 8rem;
  background: #f0f1f2; }
  @media screen and (max-width: 1279px) {
    .listing-page {
      padding: 6.5rem 0; } }
  @media screen and (max-width: 1023px) {
    .listing-page {
      padding: 5rem 0; } }
  @media screen and (max-width: 500px) {
    .listing-page {
      padding: 4rem 0; } }
  .listing-page.has-subnav {
    padding-top: 15rem; }
    @media screen and (max-width: 1599px) {
      .listing-page.has-subnav {
        padding-top: 14rem; } }
    @media screen and (max-width: 1439px) {
      .listing-page.has-subnav {
        padding-top: 11.5rem; } }
    @media screen and (max-width: 1279px) {
      .listing-page.has-subnav {
        padding-top: 10.5rem; } }
    @media screen and (max-width: 1023px) {
      .listing-page.has-subnav {
        padding-top: 8.5rem; } }
    @media screen and (max-width: 500px) {
      .listing-page.has-subnav {
        padding-top: 7.5rem; } }
  .listing-page .listing-wrapper {
    padding: 0 1.5rem;
    width: 100%; }
    @media screen and (max-width: 639px) {
      .listing-page .listing-wrapper {
        padding: 0 2rem; } }
    .listing-page .listing-wrapper .title.internal {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      width: 100%;
      max-width: 131rem;
      margin: 0 auto 4rem; }
      .listing-page .listing-wrapper .title.internal > div {
        padding: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end; }
        .listing-page .listing-wrapper .title.internal > div h1 {
          margin-bottom: 0; }
        .listing-page .listing-wrapper .title.internal > div p {
          color: #67757d;
          font-family: span, serif;
          font-size: 2rem;
          line-height: 1;
          margin: 0; }
          .listing-page .listing-wrapper .title.internal > div p a {
            font-family: span, serif;
            font-size: 2rem;
            line-height: 1; }
            .listing-page .listing-wrapper .title.internal > div p a:hover {
              color: black; }
              .listing-page .listing-wrapper .title.internal > div p a:hover svg path {
                fill: black; }
            .listing-page .listing-wrapper .title.internal > div p a svg {
              -webkit-transform: translateY(5%);
              transform: translateY(5%);
              margin-left: 1rem;
              width: 0.9rem; }
              .listing-page .listing-wrapper .title.internal > div p a svg path {
                fill: #67757d;
                -webkit-transition: fill 0.3s ease;
                transition: fill 0.3s ease; }
    .listing-page .listing-wrapper h1 {
      font-size: 5.6rem;
      line-height: 1;
      margin-bottom: 1.1em;
      font-weight: 600; }
      @media screen and (max-width: 1439px) {
        .listing-page .listing-wrapper h1 {
          font-size: 5rem; } }
      @media screen and (max-width: 1023px) {
        .listing-page .listing-wrapper h1 {
          font-size: 4.8rem; } }
      @media screen and (max-width: 767px) {
        .listing-page .listing-wrapper h1 {
          font-size: 4.2rem; } }
      @media screen and (max-width: 639px) {
        .listing-page .listing-wrapper h1 {
          font-size: 4rem;
          margin-bottom: 1em; } }
      @media screen and (max-width: 500px) {
        .listing-page .listing-wrapper h1 {
          font-size: 3.6rem;
          margin-bottom: 0.9em; } }
    .listing-page .listing-wrapper .card-listing {
      margin: 2rem -1.5rem 4rem; }
      @media screen and (max-width: 1279px) {
        .listing-page .listing-wrapper .card-listing {
          margin-bottom: 2.5rem; } }
      @media screen and (max-width: 1023px) {
        .listing-page .listing-wrapper .card-listing {
          margin-bottom: 2rem; } }
      @media screen and (max-width: 639px) {
        .listing-page .listing-wrapper .card-listing {
          margin-bottom: 4.5rem;
          margin-left: -2rem;
          margin-right: -2rem; } }
      @media screen and (max-width: 500px) {
        .listing-page .listing-wrapper .card-listing {
          margin-bottom: 3.5rem; } }
      .listing-page .listing-wrapper .card-listing.news .card {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 25%;
                flex: 0 1 25%; }
        @media screen and (max-width: 1279px) {
          .listing-page .listing-wrapper .card-listing.news .card {
            -webkit-box-flex: 0;
                -ms-flex: 0 1 25%;
                    flex: 0 1 25%; } }
        @media screen and (max-width: 1023px) {
          .listing-page .listing-wrapper .card-listing.news .card {
            -webkit-box-flex: 0;
                -ms-flex: 0 1 50%;
                    flex: 0 1 50%; } }
      .listing-page .listing-wrapper .card-listing .card {
        margin-bottom: 3rem; }
        .listing-page .listing-wrapper .card-listing .card:nth-child(4) {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex; }
        @media screen and (max-width: 1279px) {
          .listing-page .listing-wrapper .card-listing .card {
            -webkit-box-flex: 0;
                -ms-flex: 0 1 33.33333333%;
                    flex: 0 1 33.33333333%; } }
        @media screen and (max-width: 1023px) {
          .listing-page .listing-wrapper .card-listing .card {
            -webkit-box-flex: 0;
                -ms-flex: 0 1 50%;
                    flex: 0 1 50%; } }
    .listing-page .listing-wrapper .pagination {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      padding-top: 4.5rem;
      border-top: 0.1rem solid rgba(103, 117, 125, 0.75); }
      @media screen and (max-width: 1279px) {
        .listing-page .listing-wrapper .pagination {
          padding-top: 3.5rem; } }
      @media screen and (max-width: 500px) {
        .listing-page .listing-wrapper .pagination {
          padding-top: 3rem; } }
      .listing-page .listing-wrapper .pagination li {
        font-size: 1.8rem;
        margin-right: 0.85em; }
        .listing-page .listing-wrapper .pagination li:last-child {
          margin-right: 0; }
        @media screen and (max-width: 500px) {
          .listing-page .listing-wrapper .pagination li {
            font-size: 1.7rem; } }
        .listing-page .listing-wrapper .pagination li a {
          font-family: span, serif;
          font-weight: 400; }
          .listing-page .listing-wrapper .pagination li a.active {
            font-weight: 700;
            color: #67757d; }
  .listing-page .listing-wrapper.news-extra a.featured-link {
    font-family: span, serif;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 3.875em;
    margin-top: 2em; }
    @media screen and (max-width: 1023px) {
      .listing-page .listing-wrapper.news-extra a.featured-link {
        margin-top: 1.75em; } }
    @media screen and (max-width: 767px) {
      .listing-page .listing-wrapper.news-extra a.featured-link {
        font-size: 1.5em; } }
    @media screen and (max-width: 500px) {
      .listing-page .listing-wrapper.news-extra a.featured-link {
        font-size: 1.375em; } }
    .listing-page .listing-wrapper.news-extra a.featured-link.prev svg {
      margin-right: 1rem; }
    .listing-page .listing-wrapper.news-extra a.featured-link.next svg {
      margin-left: 1rem; }
    .listing-page .listing-wrapper.news-extra a.featured-link svg {
      width: 0.9rem;
      -webkit-transform: translateY(5%);
              transform: translateY(5%); }
      @media screen and (max-width: 500px) {
        .listing-page .listing-wrapper.news-extra a.featured-link svg {
          width: 0.7rem; } }

.listing-page.people {
  padding: 6rem 0 0;
  background: white; }
  @media screen and (max-width: 1599px) {
    .listing-page.people {
      padding-top: 6.5rem; } }
  @media screen and (max-width: 1439px) {
    .listing-page.people {
      padding-top: 4rem; } }
  @media screen and (max-width: 1023px) {
    .listing-page.people {
      padding-top: 2.5rem; } }
  @media screen and (max-width: 639px) {
    .listing-page.people {
      padding-top: 3rem; } }
  .listing-page.people .listing-wrapper h1 {
    margin-bottom: 1.2em; }
    @media screen and (max-width: 1023px) {
      .listing-page.people .listing-wrapper h1 {
        margin-bottom: 1em; } }
  .listing-page.people .listing-wrapper .filter-bar .filters {
    margin-bottom: 0; }
    .listing-page.people .listing-wrapper .filter-bar .filters .filter-wrap .label {
      position: relative;
      overflow: hidden; }
      .listing-page.people .listing-wrapper .filter-bar .filters .filter-wrap .label::after {
        position: absolute;
        height: 100%;
        right: 0;
        background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(50%, white));
        background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, white 50%);
        content: "";
        width: 5rem; }
      .listing-page.people .listing-wrapper .filter-bar .filters .filter-wrap .label span {
        white-space: nowrap;
        max-width: 100%; }
      .listing-page.people .listing-wrapper .filter-bar .filters .filter-wrap .label svg {
        position: relative;
        z-index: 2; }
    .listing-page.people .listing-wrapper .filter-bar .filters .filter-wrap ul li {
      cursor: pointer; }
    .listing-page.people .listing-wrapper .filter-bar .filters .sort-wrap {
      position: relative;
      padding: 0 1.5rem;
      -webkit-box-flex: 0;
      -ms-flex: 0 1 33.333333333%;
      flex: 0 1 33.333333333%;
      font-weight: 300;
      font-size: 1.6rem;
      letter-spacing: 0.02em; }
      .listing-page.people .listing-wrapper .filter-bar .filters .sort-wrap .sort {
        margin-left: 0%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        font-size: 1.6rem;
        font-weight: 300;
        letter-spacing: 0.02em;
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        border-bottom: 0.1rem solid rgba(103, 117, 125, 0.75);
        padding-bottom: 1em; }
        @media screen and (max-width: 767px) {
          .listing-page.people .listing-wrapper .filter-bar .filters .sort-wrap .sort {
            margin-top: 2rem; } }
        @media screen and (max-width: 639px) {
          .listing-page.people .listing-wrapper .filter-bar .filters .sort-wrap .sort {
            font-size: 1.4rem;
            -webkit-transform: none;
                    transform: none;
            padding-left: 2rem;
            padding-right: 2rem; } }
        .listing-page.people .listing-wrapper .filter-bar .filters .sort-wrap .sort ul {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex; }
          .listing-page.people .listing-wrapper .filter-bar .filters .sort-wrap .sort ul li {
            padding: 0 0.5em;
            color: #67757d;
            cursor: pointer;
            -webkit-transition: color 0.3s ease;
            transition: color 0.3s ease;
            border-right: 0.1rem solid black; }
            .listing-page.people .listing-wrapper .filter-bar .filters .sort-wrap .sort ul li:hover, .listing-page.people .listing-wrapper .filter-bar .filters .sort-wrap .sort ul li.active {
              color: black; }
            .listing-page.people .listing-wrapper .filter-bar .filters .sort-wrap .sort ul li:last-child {
              padding-right: 0;
              border: none; }
  @media screen and (max-width: 1439px) {
    .listing-page.people .listing-wrapper main {
      padding-bottom: 5rem; } }
  @media screen and (max-width: 1279px) {
    .listing-page.people .listing-wrapper main {
      padding-bottom: 3rem; } }
  @media screen and (max-width: 1023px) {
    .listing-page.people .listing-wrapper main {
      padding-bottom: 1.5rem; } }
  .listing-page.people .listing-wrapper main section {
    margin-bottom: 7rem; }
    @media screen and (max-width: 1919px) {
      .listing-page.people .listing-wrapper main section {
        margin-bottom: 5rem; } }
    @media screen and (max-width: 1439px) {
      .listing-page.people .listing-wrapper main section {
        margin-bottom: 3rem; } }
    @media screen and (max-width: 1279px) {
      .listing-page.people .listing-wrapper main section {
        margin-bottom: 1.5rem; } }
    @media screen and (max-width: 1023px) {
      .listing-page.people .listing-wrapper main section {
        margin-bottom: 0.5rem; } }
    .listing-page.people .listing-wrapper main section h2 {
      font-size: 4rem;
      font-family: span, serif;
      margin-bottom: 1.5em; }
      @media screen and (max-width: 1599px) {
        .listing-page.people .listing-wrapper main section h2 {
          font-size: 3.2rem;
          margin-bottom: 1.5em; } }
      @media screen and (max-width: 767px) {
        .listing-page.people .listing-wrapper main section h2 {
          font-size: 2.6rem; } }
      @media screen and (max-width: 639px) {
        .listing-page.people .listing-wrapper main section h2 {
          margin-bottom: 1.25em; } }
      @media screen and (max-width: 500px) {
        .listing-page.people .listing-wrapper main section h2 {
          font-size: 2.4rem; } }
    .listing-page.people .listing-wrapper main section .card-listing {
      margin-bottom: 0; }
      .listing-page.people .listing-wrapper main section .card-listing .card.profile {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 25%;
                flex: 0 1 25%; }
        @media screen and (max-width: 1279px) {
          .listing-page.people .listing-wrapper main section .card-listing .card.profile {
            -webkit-box-flex: 0;
                -ms-flex: 0 1 33.333333%;
                    flex: 0 1 33.333333%; } }
        @media screen and (max-width: 1023px) {
          .listing-page.people .listing-wrapper main section .card-listing .card.profile {
            -webkit-box-flex: 0;
                -ms-flex: 0 1 50%;
                    flex: 0 1 50%; } }
        @media screen and (max-width: 767px) {
          .listing-page.people .listing-wrapper main section .card-listing .card.profile {
            margin-bottom: 2rem; } }

.card.profile:hover .card-img-wrapper .card-img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05); }

.card.profile .card-text {
  padding: 0;
  margin-top: 1.5rem;
  height: auto; }
  .card.profile .card-text h3 {
    margin-bottom: 0.5em;
    font-size: 2.2rem; }
    @media screen and (max-width: 1023px) {
      .card.profile .card-text h3 {
        margin-bottom: 0.35em; } }
    @media screen and (max-width: 767px) {
      .card.profile .card-text h3 {
        font-size: 2rem; } }
    @media screen and (max-width: 639px) {
      .card.profile .card-text h3 {
        font-size: 2.2rem; } }
  .card.profile .card-text h4,
  .card.profile .card-text p {
    font-size: 1.6rem;
    font-weight: 300;
    color: #67757d;
    line-height: 1.7; }
    .card.profile .card-text h4:last-child,
    .card.profile .card-text p:last-child {
      line-height: 1; }
    .card.profile .card-text h4 span,
    .card.profile .card-text p span {
      display: inline-block;
      margin-right: 0.4em; }
      .card.profile .card-text h4 span:last-child,
      .card.profile .card-text p span:last-child {
        margin-right: 0; }
  .card.profile .card-text p {
    margin-bottom: 0.3em; }
    .card.profile .card-text p + a {
      font-weight: 300;
      color: black; }

main .page-body.text-only ol, main .page-body.text-only ul {
  margin-left: 1em; }
  main .page-body.text-only ol li, main .page-body.text-only ul li {
    margin-bottom: 1rem;
    font-weight: 300; }
    main .page-body.text-only ol li strong, main .page-body.text-only ul li strong {
      font-weight: 700; }
  main .page-body.text-only ol li::marker, main .page-body.text-only ul li::marker {
    content: unset; }

main .page-body.text-only ol {
  list-style: decimal; }

main .page-body.text-only ul {
  list-style: disc; }

main .title-bar {
  margin-bottom: 7rem;
  margin-top: -4rem; }
  @media screen and (max-width: 767px) {
    main .title-bar {
      margin-bottom: 4rem; } }
  @media screen and (max-width: 639px) {
    main .title-bar {
      margin-bottom: 3rem; } }
  @media screen and (max-width: 500px) {
    main .title-bar {
      margin-bottom: 2.5rem; } }
  @media screen and (max-width: 1023px) {
    main .title-bar .container {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; } }
  main .title-bar .title {
    width: calc(((7 / 12) * 100%));
    padding-top: 5rem;
    padding-bottom: 12.5rem; }
    @media screen and (max-width: 1279px) {
      main .title-bar .title {
        padding-bottom: 10rem; } }
    @media screen and (max-width: 1023px) {
      main .title-bar .title {
        width: 100%;
        -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
                order: 2;
        padding-top: 5rem;
        padding-bottom: 0; } }
    main .title-bar .title time {
      font-weight: 300;
      font-family: span, serif;
      font-size: 2rem;
      color: #67757d;
      margin-bottom: 2.5em;
      display: block; }
      @media screen and (max-width: 1279px) {
        main .title-bar .title time {
          font-size: 1.8rem;
          margin-bottom: 2em; } }
      @media screen and (max-width: 767px) {
        main .title-bar .title time {
          margin-bottom: 1.5em; } }
      @media screen and (max-width: 500px) {
        main .title-bar .title time {
          font-size: 1.7rem;
          margin-bottom: 1.25em; } }
    main .title-bar .title h1 {
      font-size: 4rem;
      line-height: 1.22;
      font-weight: 600;
      width: calc((7 / 7) * 100%); }
      @media screen and (max-width: 1279px) {
        main .title-bar .title h1 {
          width: 100%; } }
      @media screen and (max-width: 1023px) {
        main .title-bar .title h1 {
          font-size: 4.8rem; } }
      @media screen and (max-width: 767px) {
        main .title-bar .title h1 {
          font-size: 4.2rem; } }
      @media screen and (max-width: 639px) {
        main .title-bar .title h1 {
          font-size: 3.6rem; } }
      @media screen and (max-width: 500px) {
        main .title-bar .title h1 {
          font-size: 3.2rem; } }
  main .title-bar .article-img {
    width: calc(((4 / 12) * 100%) + 1.5rem);
    margin-right: 1.5rem;
    max-height: 350px;
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat; }
    @media screen and (max-width: 1023px) {
      main .title-bar .article-img {
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1;
        width: calc(100% - 3rem);
        padding-bottom: 50%;
        margin-left: 1.5rem; } }
    @media screen and (max-width: 767px) {
      main .title-bar .article-img {
        padding-bottom: 58.333333333%; } }
    @media screen and (max-width: 639px) {
      main .title-bar .article-img {
        padding-bottom: 66.66666%;
        width: calc(100% - 4rem);
        margin-left: 2rem; } }
    main .title-bar .article-img p {
      position: absolute;
      left: 0;
      bottom: -25px;
      font-size: 1rem; }
  main .title-bar + .container .page-body,
  main .title-bar + .container aside {
    padding-top: 0; }

main aside.pad .content {
  width: 85%; }
  @media screen and (max-width: 1023px) {
    main aside.pad .content {
      width: 100%;
      margin-left: 0;
      margin-bottom: 0; } }
  @media screen and (max-width: 500px) {
    main aside.pad .content {
      padding-bottom: 1rem; } }
  main aside.pad .content h2 {
    margin-bottom: 2em; }
    @media screen and (max-width: 767px) {
      main aside.pad .content h2 {
        margin-bottom: 1.75em; } }
  main aside.pad .content .card-listing {
    display: block;
    margin-bottom: 8.5rem; }
    @media screen and (max-width: 1023px) {
      main aside.pad .content .card-listing {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        margin: 0 0 0 -1.5rem; } }
    @media screen and (max-width: 639px) {
      main aside.pad .content .card-listing {
        display: block;
        margin: 0;
        width: 100%; } }
    main aside.pad .content .card-listing .card {
      padding: 0;
      margin-bottom: 4rem; }
      main aside.pad .content .card-listing .card:nth-child(4) {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
      @media screen and (max-width: 1023px) {
        main aside.pad .content .card-listing .card {
          -webkit-box-flex: 0;
              -ms-flex: 0 1 50%;
                  flex: 0 1 50%;
          padding: 0 1.5rem; } }
      @media screen and (max-width: 639px) {
        main aside.pad .content .card-listing .card {
          padding: 0; } }
      main aside.pad .content .card-listing .card .card-text div {
        margin-bottom: 0; }
        main aside.pad .content .card-listing .card .card-text div h3 {
          font-size: 2rem; }
          @media screen and (max-width: 1279px) {
            main aside.pad .content .card-listing .card .card-text div h3 {
              font-size: 1.8rem; } }
          @media screen and (max-width: 1023px) {
            main aside.pad .content .card-listing .card .card-text div h3 {
              font-size: 1.2em; } }
          @media screen and (max-width: 639px) {
            main aside.pad .content .card-listing .card .card-text div h3 {
              font-size: 1.3em; } }
    @media screen and (max-width: 1023px) {
      main aside.pad .content .card-listing + .featured-link {
        margin-top: 0.5em; } }

main aside.pad .content.clerk-profile h2 {
  margin-bottom: 1em; }
  @media screen and (max-width: 767px) {
    main aside.pad .content.clerk-profile h2 {
      margin-bottom: .75em; } }

main .page-body .title-bar .title {
  width: calc((7 / 8) * 100%);
  padding-bottom: 0; }
  @media screen and (max-width: 1023px) {
    main .page-body .title-bar .title {
      width: 100%; } }
  main .page-body .title-bar .title .embed-wrapper {
    margin-bottom: 5rem;
    margin-top: 0; }
    @media screen and (max-width: 1279px) {
      main .page-body .title-bar .title .embed-wrapper {
        margin-bottom: 4rem; } }
    @media screen and (max-width: 1023px) {
      main .page-body .title-bar .title .embed-wrapper {
        margin-top: -3rem; } }
    @media screen and (max-width: 767px) {
      main .page-body .title-bar .title .embed-wrapper {
        margin-bottom: 3.5rem; } }
    @media screen and (max-width: 639px) {
      main .page-body .title-bar .title .embed-wrapper {
        margin-top: -2rem; } }
  main .page-body .title-bar .title time {
    margin-bottom: 1.5em; }
    @media screen and (max-width: 767px) {
      main .page-body .title-bar .title time {
        margin-bottom: 1em; } }
  main .page-body .title-bar .title h1 {
    width: 100%; }

main .page-body .embed-wrapper {
  position: relative;
  padding-bottom: calc((9 / 16) * 100%);
  margin-top: 6.5rem; }
  @media screen and (max-width: 1279px) {
    main .page-body .embed-wrapper {
      margin-top: 5.5rem; } }
  @media screen and (max-width: 1023px) {
    main .page-body .embed-wrapper {
      margin-top: 5rem; } }
  @media screen and (max-width: 767px) {
    main .page-body .embed-wrapper {
      margin-top: 4rem; } }
  @media screen and (max-width: 500px) {
    main .page-body .embed-wrapper {
      margin-top: 3rem; } }
  main .page-body .embed-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

main.cv {
  padding-top: 0; }
  @media screen and (max-width: 1023px) {
    main.cv .cv-title .container {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; } }
  main.cv .cv-title .title {
    width: calc(((7 / 12) * 100%));
    padding-top: 9rem;
    padding-bottom: 12.5rem; }
    @media screen and (max-width: 1279px) {
      main.cv .cv-title .title {
        padding-top: 7.5rem;
        padding-bottom: 10rem; } }
    @media screen and (max-width: 1023px) {
      main.cv .cv-title .title {
        width: 100%;
        -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
                order: 2;
        padding-top: 4rem;
        padding-bottom: 0;
        margin-bottom: 4rem; } }
    @media screen and (max-width: 767px) {
      main.cv .cv-title .title {
        padding-top: 3rem;
        margin-bottom: 3rem; } }
    @media screen and (max-width: 639px) {
      main.cv .cv-title .title {
        margin-bottom: 2.5rem; } }
    @media screen and (max-width: 500px) {
      main.cv .cv-title .title {
        padding-top: 2.5rem; } }
    main.cv .cv-title .title h1 {
      font-size: 5rem;
      line-height: 1.22;
      font-weight: 600;
      width: calc((7 / 7) * 100%);
      margin-bottom: 0.4em; }
      @media screen and (max-width: 1439px) {
        main.cv .cv-title .title h1 {
          font-size: 5rem; } }
      @media screen and (max-width: 1279px) {
        main.cv .cv-title .title h1 {
          width: 100%; } }
      @media screen and (max-width: 1023px) {
        main.cv .cv-title .title h1 {
          font-size: 4.8rem; } }
      @media screen and (max-width: 767px) {
        main.cv .cv-title .title h1 {
          font-size: 4.2rem; } }
      @media screen and (max-width: 639px) {
        main.cv .cv-title .title h1 {
          font-size: 3.6rem; } }
      @media screen and (max-width: 500px) {
        main.cv .cv-title .title h1 {
          font-size: 3.2rem; } }
    main.cv .cv-title .title h2,
    main.cv .cv-title .title h3 {
      font-size: 2rem;
      color: #67757d;
      line-height: 1.35; }
      @media screen and (max-width: 767px) {
        main.cv .cv-title .title h2,
        main.cv .cv-title .title h3 {
          font-size: 1.8rem; } }
  main.cv .cv-title .cv-img {
    width: calc(((4 / 12) * 100%) + 1.5rem);
    margin-right: 1.5rem;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat; }
    @media screen and (max-width: 1023px) {
      main.cv .cv-title .cv-img {
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1;
        width: calc(100% - 3rem);
        padding-bottom: 50%;
        margin-left: 1.5rem; } }
    @media screen and (max-width: 767px) {
      main.cv .cv-title .cv-img {
        padding-bottom: 58.333333333%; } }
    @media screen and (max-width: 639px) {
      main.cv .cv-title .cv-img {
        padding-bottom: 66.66666%;
        width: calc(100% - 4rem);
        margin-left: 2rem; } }
  main.cv .cv-title + .container .page-body {
    padding-top: 0; }
  main.cv .cv-title + .container aside.pad {
    padding-top: 9rem; }
    @media screen and (max-width: 1023px) {
      main.cv .cv-title + .container aside.pad {
        padding-top: 0; } }
    main.cv .cv-title + .container aside.pad::before {
      display: none; }
    main.cv .cv-title + .container aside.pad .quote-slider-wrapper {
      margin-bottom: 9rem; }
      @media screen and (max-width: 767px) {
        main.cv .cv-title + .container aside.pad .quote-slider-wrapper {
          margin-bottom: 8rem; } }
      @media screen and (max-width: 500px) {
        main.cv .cv-title + .container aside.pad .quote-slider-wrapper {
          margin-bottom: 7rem; } }
      main.cv .cv-title + .container aside.pad .quote-slider-wrapper + h2 {
        margin-bottom: 1em; }
        @media screen and (max-width: 767px) {
          main.cv .cv-title + .container aside.pad .quote-slider-wrapper + h2 + ul {
            margin-bottom: 4rem; } }
        @media screen and (max-width: 500px) {
          main.cv .cv-title + .container aside.pad .quote-slider-wrapper + h2 + ul {
            margin-bottom: 3rem; } }
    main.cv .cv-title + .container aside.pad .awards {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      width: 100%;
      margin-bottom: -4.5rem; }
      @media screen and (max-width: 1023px) {
        main.cv .cv-title + .container aside.pad .awards {
          margin-bottom: 0; } }
      @media screen and (max-width: 639px) {
        main.cv .cv-title + .container aside.pad .awards {
          margin-bottom: -4rem; } }
      main.cv .cv-title + .container aside.pad .awards .img-wrapper {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 calc(50% - 1.5rem);
                flex: 0 1 calc(50% - 1.5rem);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        margin-bottom: 4.5rem; }
        @media screen and (max-width: 1023px) {
          main.cv .cv-title + .container aside.pad .awards .img-wrapper {
            -webkit-box-flex: unset;
                -ms-flex: unset;
                    flex: unset;
            margin-bottom: 0; } }
        @media screen and (max-width: 639px) {
          main.cv .cv-title + .container aside.pad .awards .img-wrapper {
            -webkit-box-flex: 0;
                -ms-flex: 0 1 calc(50% - 1.5rem);
                    flex: 0 1 calc(50% - 1.5rem);
            margin-bottom: 3rem; } }
        main.cv .cv-title + .container aside.pad .awards .img-wrapper img {
          max-width: 12.5rem;
          max-height: 13rem; }
          @media screen and (max-width: 1279px) {
            main.cv .cv-title + .container aside.pad .awards .img-wrapper img {
              max-width: 10.5rem;
              max-height: 11rem; } }
          @media screen and (max-width: 767px) {
            main.cv .cv-title + .container aside.pad .awards .img-wrapper img {
              max-width: 9.5rem;
              max-height: 10rem; } }
          @media screen and (max-width: 639px) {
            main.cv .cv-title + .container aside.pad .awards .img-wrapper img {
              max-width: 10.5rem;
              max-height: 11rem; } }
          @media screen and (max-width: 500px) {
            main.cv .cv-title + .container aside.pad .awards .img-wrapper img {
              max-width: 9.5rem;
              max-height: 10rem; } }
  main.cv .page-body {
    margin-top: -4rem; }
    @media screen and (max-width: 1023px) {
      main.cv .page-body {
        margin-top: 0; } }
    main.cv .page-body::after {
      bottom: 0;
      top: 9rem;
      height: auto; }
      @media screen and (max-width: 1023px) {
        main.cv .page-body::after {
          display: none; } }
    main.cv .page-body .read-more {
      display: none; }
      main.cv .page-body .read-more p:last-child {
        margin-bottom: 1.5em; }
    main.cv .page-body button.more {
      font-weight: 700;
      color: #67757d;
      cursor: pointer;
      -webkit-transition: color 0.3s ease;
      transition: color 0.3s ease;
      font-size: 1em; }
      main.cv .page-body button.more:hover {
        color: #313b40; }

main.text-page .page-body,
main.text-page aside {
  padding-top: 4rem;
  padding-bottom: 0rem; }
  @media screen and (max-width: 1439px) {
    main.text-page .page-body,
    main.text-page aside {
      padding-top: 3rem;
      padding-bottom: 3rem; } }
  @media screen and (max-width: 1023px) {
    main.text-page .page-body,
    main.text-page aside {
      padding-top: 0;
      padding-bottom: 0; } }
  main.text-page .page-body .extra-text,
  main.text-page aside .extra-text {
    margin-top: 6rem;
    margin-bottom: 4rem; }
    main.text-page .page-body .extra-text h2,
    main.text-page aside .extra-text h2 {
      font-family: span, serif;
      font-size: 3rem;
      margin-bottom: 1.5rem;
      line-height: 1.3;
      font-weight: 600; }

main.text-page .page-body .cv-intro ul li a {
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
  text-decoration: underline; }
  main.text-page .page-body .cv-intro ul li a strong {
    -webkit-transition: color 0.3s ease;
    transition: color 0.3s ease;
    text-decoration: underline; }

main.text-page.clerks-page {
  padding: 4.5rem 0 0.5rem; }
  main.text-page.clerks-page .page-body {
    width: calc((12 / 12) * 100%); }
    @media screen and (max-width: 1023px) {
      main.text-page.clerks-page .page-body {
        margin-bottom: 4rem; } }
    @media screen and (max-width: 767px) {
      main.text-page.clerks-page .page-body {
        margin-bottom: 3rem; } }
    @media screen and (max-width: 639px) {
      main.text-page.clerks-page .page-body {
        margin-bottom: 2.5rem; } }
    @media screen and (max-width: 500px) {
      main.text-page.clerks-page .page-body {
        margin-bottom: 2rem; } }
    main.text-page.clerks-page .page-body > * {
      width: 100%;
      padding-right: 1.5rem; }
    main.text-page.clerks-page .page-body h1 {
      font-size: 5.6rem;
      line-height: 1;
      margin-bottom: .5em;
      font-weight: 600; }
      @media screen and (max-width: 1439px) {
        main.text-page.clerks-page .page-body h1 {
          font-size: 5rem; } }
      @media screen and (max-width: 1023px) {
        main.text-page.clerks-page .page-body h1 {
          font-size: 4.8rem; } }
      @media screen and (max-width: 767px) {
        main.text-page.clerks-page .page-body h1 {
          font-size: 4.2rem; } }
      @media screen and (max-width: 639px) {
        main.text-page.clerks-page .page-body h1 {
          font-size: 4rem;
          margin-bottom: 1em; } }
      @media screen and (max-width: 500px) {
        main.text-page.clerks-page .page-body h1 {
          font-size: 3.6rem;
          margin-bottom: 0.9em; } }
    main.text-page.clerks-page .page-body p {
      font-weight: 300;
      margin-bottom: 1.5em;
      line-height: 1.4;
      letter-spacing: 0.02em; }
      main.text-page.clerks-page .page-body p:last-child {
        margin-bottom: 0; }
      main.text-page.clerks-page .page-body p strong {
        font-weight: 500; }
    main.text-page.clerks-page .page-body > p:first-of-type {
      font-family: span, serif;
      font-size: 1.5em;
      letter-spacing: 0; }
      @media screen and (max-width: 1279px) {
        main.text-page.clerks-page .page-body > p:first-of-type {
          font-size: 1.4em; } }
      @media screen and (max-width: 767px) {
        main.text-page.clerks-page .page-body > p:first-of-type {
          font-size: 1.25em; } }
      @media screen and (max-width: 639px) {
        main.text-page.clerks-page .page-body > p:first-of-type {
          font-size: 1.15em; } }
      @media screen and (max-width: 500px) {
        main.text-page.clerks-page .page-body > p:first-of-type {
          font-size: 1.25em; } }
      main.text-page.clerks-page .page-body > p:first-of-type i, main.text-page.clerks-page .page-body > p:first-of-type em {
        font-family: span, serif;
        font-style: italic; }
      main.text-page.clerks-page .page-body > p:first-of-type a {
        font-family: span, serif;
        color: #67757d; }
      main.text-page.clerks-page .page-body > p:first-of-type strong {
        font-family: span, serif; }
    main.text-page.clerks-page .page-body::after {
      content: unset; }
  main.text-page.clerks-page aside {
    position: relative; }
    @media screen and (max-width: 1023px) {
      main.text-page.clerks-page aside {
        padding-bottom: 3rem; } }
    @media screen and (max-width: 639px) {
      main.text-page.clerks-page aside {
        padding-bottom: 2.5rem; } }
    main.text-page.clerks-page aside::before {
      content: none; }
    main.text-page.clerks-page aside::after {
      position: absolute;
      bottom: 0;
      left: 1.5rem;
      right: 1.5rem;
      content: none;
      height: 0.1rem;
      background: black; }
      @media screen and (max-width: 1023px) {
        main.text-page.clerks-page aside::after {
          content: ""; } }
    @media screen and (max-width: 1023px) {
      main.text-page.clerks-page aside .content {
        margin-bottom: 0; } }
    main.text-page.clerks-page aside .content img.stamp {
      width: 80%;
      display: block;
      margin: 0 auto; }
      @media screen and (max-width: 1439px) {
        main.text-page.clerks-page aside .content img.stamp {
          width: 85%; } }
      @media screen and (max-width: 1023px) {
        main.text-page.clerks-page aside .content img.stamp {
          width: 50%; } }
      @media screen and (max-width: 639px) {
        main.text-page.clerks-page aside .content img.stamp {
          width: 55%; } }
      @media screen and (max-width: 500px) {
        main.text-page.clerks-page aside .content img.stamp {
          width: 65%; } }

.listing-page.people.clerks-listing .listing-wrapper main {
  padding-bottom: 2.5rem; }
  .listing-page.people.clerks-listing .listing-wrapper main section.first {
    margin-top: 0; }
  .listing-page.people.clerks-listing .listing-wrapper main section .card.profile .card-text h3 {
    margin-bottom: 0.1em; }
    .listing-page.people.clerks-listing .listing-wrapper main section .card.profile .card-text h3 a {
      font-family: span, serif;
      font-weight: 300;
      color: black; }
  .listing-page.people.clerks-listing .listing-wrapper main hr {
    border-bottom: 0.1rem solid #959ea4;
    margin-bottom: 3rem; }
  .listing-page.people.clerks-listing .listing-wrapper main .stamp {
    max-width: 180px;
    margin-bottom: 3rem; }

main aside ul.side-nav {
  margin-top: -1.5rem; }
  main aside ul.side-nav li {
    font-size: 2.2rem;
    margin-bottom: 0.75em;
    line-height: 1.3; }
    @media screen and (max-width: 1279px) {
      main aside ul.side-nav li {
        font-size: 2rem; } }
    @media screen and (max-width: 639px) {
      main aside ul.side-nav li {
        font-size: 1.8rem; } }
    main aside ul.side-nav li a {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      font-family: span, serif;
      -webkit-transition: color 0.3s ease;
      transition: color 0.3s ease; }
      main aside ul.side-nav li a.active, main aside ul.side-nav li a:hover {
        color: black; }
        main aside ul.side-nav li a.active svg path, main aside ul.side-nav li a:hover svg path {
          fill: #c00d0d; }
      main aside ul.side-nav li a svg {
        width: 0.8rem;
        margin-right: 1.5rem;
        -webkit-transform: translateY(0.25em);
                transform: translateY(0.25em); }
        main aside ul.side-nav li a svg path {
          fill: black;
          -webkit-transition: fill 0.3s ease;
          transition: fill 0.3s ease; }

main.text-page aside ul.side-nav {
  margin-bottom: 5rem; }

main.text-page aside .support-logos {
  margin: 8rem 0 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  main.text-page aside .support-logos .support-logo {
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 50%;
    max-width: 260px;
    padding: 1rem 2rem; }
    @media screen and (max-width: 1023px) and (min-width: 640px) {
      main.text-page aside .support-logos .support-logo {
        width: 25%;
        max-width: 200px; } }
    @media screen and (max-width: 639px) {
      main.text-page aside .support-logos .support-logo {
        max-width: 180px; } }

main.sub-page .title-bar {
  margin-top: -4rem; }
  main.sub-page .title-bar .title {
    padding-top: 0;
    padding-bottom: 0; }
    main.sub-page .title-bar .title h1 {
      padding-top: 1.5em;
      padding-bottom: 3.5em; }
      @media screen and (max-width: 1023px) {
        main.sub-page .title-bar .title h1 {
          padding: 1em 0 0; } }

main.sub-page .container .page-body {
  margin-top: -15rem; }
  @media screen and (max-width: 1023px) {
    main.sub-page .container .page-body {
      margin-top: 0; } }
  main.sub-page .container .page-body::after {
    top: 15rem;
    height: calc(100% - 15rem); }
  main.sub-page .container .page-body > .accordion li:last-child h2 {
    border-bottom: 0;
    padding-bottom: 0; }

main.sub-page .container aside {
  padding-top: 3rem; }

.grid-listing {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  width: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-bottom: 10rem; }
  @media screen and (max-width: 1439px) {
    .grid-listing {
      padding-bottom: 7.5rem; } }
  @media screen and (max-width: 1023px) {
    .grid-listing {
      padding-bottom: 5rem; } }
  @media screen and (max-width: 639px) {
    .grid-listing {
      padding-bottom: 4rem; } }
  @media screen and (max-width: 500px) {
    .grid-listing {
      padding-bottom: 3rem; } }
  .grid-listing .grid-item-wrapper {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 25%;
            flex: 0 1 25%;
    text-align: center;
    padding: 0 1.5rem;
    margin-bottom: 3rem; }
    @media screen and (max-width: 1279px) {
      .grid-listing .grid-item-wrapper {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 33.333333%;
                flex: 0 1 33.333333%; } }
    @media screen and (max-width: 1023px) {
      .grid-listing .grid-item-wrapper {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 50%;
                flex: 0 1 50%; } }
    @media screen and (max-width: 500px) {
      .grid-listing .grid-item-wrapper {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 100%;
                flex: 0 1 100%; } }
    .grid-listing .grid-item-wrapper .grid-item {
      padding-bottom: 50%;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      display: block;
      position: relative; }
      .grid-listing .grid-item-wrapper .grid-item .overlay {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        background: rgba(0, 0, 0, 0.2);
        -webkit-transition: background 0.3s ease;
        transition: background 0.3s ease; }
        .grid-listing .grid-item-wrapper .grid-item .overlay h3 {
          font-family: span, serif;
          color: white;
          text-shadow: 0 0 0.8rem black;
          font-size: 2.2rem;
          line-height: 1.15;
          -webkit-transition: all 0.3s ease;
          transition: all 0.3s ease;
          padding: 0 4rem; }
          @media screen and (max-width: 639px) {
            .grid-listing .grid-item-wrapper .grid-item .overlay h3 {
              font-size: 1.9rem;
              padding: 0 3rem; } }
          @media screen and (max-width: 500px) {
            .grid-listing .grid-item-wrapper .grid-item .overlay h3 {
              font-size: 2.2rem;
              padding: 0 4rem; } }

main.contact {
  padding-top: 0; }
  @media screen and (max-width: 1023px) {
    main.contact .contact-title .container {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; } }
  main.contact .contact-title .container .title {
    width: calc(((7 / 12) * 100%));
    padding-top: 9rem;
    padding-bottom: 6.5rem; }
    @media screen and (max-width: 1279px) {
      main.contact .contact-title .container .title {
        padding-top: 7.5rem;
        padding-bottom: 5rem; } }
    @media screen and (max-width: 1023px) {
      main.contact .contact-title .container .title {
        width: 100%;
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1;
        padding-top: 4rem;
        padding-bottom: 0;
        margin-bottom: 4rem; } }
    @media screen and (max-width: 767px) {
      main.contact .contact-title .container .title {
        padding-top: 3rem;
        margin-bottom: 3rem; } }
    @media screen and (max-width: 639px) {
      main.contact .contact-title .container .title {
        margin-bottom: 2.5rem; } }
    @media screen and (max-width: 500px) {
      main.contact .contact-title .container .title {
        padding-top: 2.5rem; } }
    main.contact .contact-title .container .title h1 {
      font-size: 5.6rem;
      line-height: 1.22;
      font-weight: 600;
      width: calc((5 / 7) * 100%);
      margin-bottom: 1em; }
      @media screen and (max-width: 1439px) {
        main.contact .contact-title .container .title h1 {
          font-size: 5rem; } }
      @media screen and (max-width: 1279px) {
        main.contact .contact-title .container .title h1 {
          width: 100%; } }
      @media screen and (max-width: 1023px) {
        main.contact .contact-title .container .title h1 {
          font-size: 4.8rem; } }
      @media screen and (max-width: 767px) {
        main.contact .contact-title .container .title h1 {
          font-size: 4.2rem; } }
      @media screen and (max-width: 639px) {
        main.contact .contact-title .container .title h1 {
          font-size: 3.6rem; } }
      @media screen and (max-width: 500px) {
        main.contact .contact-title .container .title h1 {
          font-size: 3.2rem; } }
    main.contact .contact-title .container .title p {
      font-weight: 300;
      margin-bottom: 1.5em;
      line-height: 1.4;
      letter-spacing: 0.02em; }
    main.contact .contact-title .container .title p span {
      font-family: span, serif;
      font-size: 1.4em;
      letter-spacing: 0;
      font-weight: 300;
      margin-top: 1em; }
    main.contact .contact-title .container .title .contact-content {
      font-size: 1.6rem;
      position: relative;
      padding-right: 2rem; }
      main.contact .contact-title .container .title .contact-content p strong {
        font-weight: 600; }
  main.contact .contact-title .container .contact-map {
    width: calc(((4 / 12) * 100%) + 7rem);
    margin-right: 0;
    padding-top: 0;
    font-size: 1.6rem;
    position: relative; }
    @media screen and (max-width: 1023px) {
      main.contact .contact-title .container .contact-map {
        -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
                order: 2;
        width: 100%;
        padding-bottom: 1em; } }
    main.contact .contact-title .container .contact-map iframe, main.contact .contact-title .container .contact-map .office {
      margin-bottom: 2em; }
    main.contact .contact-title .container .contact-map a {
      font-family: span, serif;
      font-size: 1.4em;
      letter-spacing: 0;
      color: #67757d;
      -webkit-transition: color 0.3s ease;
      transition: color 0.3s ease;
      font-weight: 500; }
    main.contact .contact-title .container .contact-map a:hover {
      color: #313b40; }
  main.contact .contact-title .bottom.container .title {
    padding-top: 0; }

main.search-page {
  padding-top: 0; }
  main.search-page .container {
    font-size: 1.6rem;
    display: block; }
  main.search-page .search-keyword {
    padding: 5rem 3.5rem;
    font-size: 1.6rem;
    position: relative;
    background: #ecedef;
    width: calc(100% - 3rem);
    margin: 0 1.5rem;
    border-bottom: 1px solid #7c8087; }
    main.search-page .search-keyword p {
      font-family: span, serif;
      font-size: 1.5em;
      letter-spacing: 0;
      font-weight: 300; }
    main.search-page .search-keyword span {
      color: #5c6169;
      font-family: span, serif;
      letter-spacing: 0;
      font-weight: 300; }
  main.search-page .search-results {
    width: 100%;
    font-size: 1.6rem;
    position: relative; }
    main.search-page .search-results .resultItems {
      margin-bottom: 5rem; }
      main.search-page .search-results .resultItems h2 {
        font-size: 1.875em;
        font-family: span, serif;
        list-style: 1.075;
        margin-bottom: 0.75em; }
        main.search-page .search-results .resultItems h2 small {
          font-size: .8em;
          font-family: span, serif;
          color: #5c6169; }
      main.search-page .search-results .resultItems h3 {
        font-size: 1.2em;
        font-family: span, serif;
        margin-bottom: 0.75em;
        font-weight: 700; }
      main.search-page .search-results .resultItems li {
        padding: 10px 0;
        border-top: 1px solid #92908e;
        font-weight: 500;
        line-height: 1.4;
        letter-spacing: 0.02em; }
        main.search-page .search-results .resultItems li p {
          margin-top: 1em;
          font-weight: 300;
          margin-bottom: 1.5em;
          line-height: 1.4;
          letter-spacing: 0.02em; }
          main.search-page .search-results .resultItems li p span {
            background: #f5e296;
            padding: 2px 5px 4px 5px;
            border-radius: 3px; }
      main.search-page .search-results .resultItems li:last-child {
        border-bottom: 1px solid #92908e; }
