a, abbr, address, applet, article, aside, audio, b, blockquote, body, canvas, caption, cite, code, dd, del, details, dfn, div, dl, dt, em, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, hr, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, p, pre, q, s, samp, section, small, span, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {

margin: 0;
padding: 0

}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {

display: block

}

h1, h2, h3, h4, h5, h6 {

font-size: 100%

}

table {

border-collapse: collapse;
border-spacing: 0

}

b, mark, strong {

font-weight: 700;
font-style: inherit

}

address, cite, dfn, em, i, q, var {

font-style: italic;
font-weight: inherit

}

abbr, dfn {

cursor: help;
border-bottom: 1px dotted

}

ins {

border-bottom: 1px solid

}

a, ins, u {

text-decoration: none

}

del, s {

text-decoration: line-through

}

code, kbd, pre, samp {

font-family: monospace

}

small {

font-size: .75em

}

img {

border: 0;
font-style: italic

}

input, optgroup, option, select, textarea {

font: inherit

}

}

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {

display: block

}

audio, canvas, video {

display: inline-block

}

html {

font-size: 100%;
-webkit-overflow-scrolling: touch;
-webkit-tap-highlight-color: transparent;
-webkit-text-size-adjust: 100%;
-ms-text-size-adjust: 100%

}

body {

margin: 0;
text-rendering: optimizeLegibility

}

img {

border: 0;
-ms-interpolation-mode: bicubic;
display: block

}

embed, img, object {

max-width: 100%;
height: auto

}

input {

-webkit-appearance: none

}

footer, header, section {

position: relative;
float: left;
clear: both;
width: 100%

}

@-webkit-keyframes a {

0% {
        -webkit-transform: translate(-50%, -50%) rotateX(0) rotateY(0);
        transform: translate(-50%, -50%) rotateX(0) rotateY(0)
}
50% {
        -webkit-transform: translate(-50%, -50%) rotateX(-180deg) rotateY(0);
        transform: translate(-50%, -50%) rotateX(-180deg) rotateY(0)
}
to {
        -webkit-transform: translate(-50%, -50%) rotateX(-180deg) rotateY(-180deg);
        transform: translate(-50%, -50%) rotateX(-180deg) rotateY(-180deg)
}

}

@keyframes a {

0% {
        -webkit-transform: translate(-50%, -50%) rotateX(0) rotateY(0);
        transform: translate(-50%, -50%) rotateX(0) rotateY(0)
}
50% {
        -webkit-transform: translate(-50%, -50%) rotateX(-180deg) rotateY(0);
        transform: translate(-50%, -50%) rotateX(-180deg) rotateY(0)
}
to {
        -webkit-transform: translate(-50%, -50%) rotateX(-180deg) rotateY(-180deg);
        transform: translate(-50%, -50%) rotateX(-180deg) rotateY(-180deg)
}

}

.fluidbox {

outline: 0

}

.fluidbox__overlay {

background-color: rgba(255, 255, 255, .85);
cursor: pointer;
cursor: zoom-out;
opacity: 0;
pointer-events: none;
position: fixed;
top: -100%;
left: 0;
bottom: -100%;
right: 0;
-webkit-transition: all .25s ease-in-out;
transition: all .25s ease-in-out

}

.fluidbox–opened .fluidbox__overlay {

pointer-events: auto

}

.fluidbox__wrap {

background-position: center center;
background-size: cover;
margin: 0 auto;
position: relative;
-webkit-transition: all .25s ease-in-out;
transition: all .25s ease-in-out

}

.fluidbox–closed .fluidbox__thumb, .fluidbox__thumb {

-webkit-transition: opacity 0s ease-in-out 0s;
transition: opacity 0s ease-in-out 0s

}

.fluidbox__ghost {

background-size: 100% 100%;
background-position: center center;
background-repeat: no-repeat;
position: absolute;
-webkit-transition: opacity 0s 0s, -webkit-transform .25s 0s;
transition: opacity 0s 0s, -webkit-transform .25s 0s;
transition: opacity 0s 0s, transform .25s 0s;
transition: opacity 0s 0s, transform .25s 0s, -webkit-transform .25s 0s

}

.fluidbox–opened .fluidbox__ghost {

cursor: pointer;
cursor: zoom-out

}

.fluidbox–closed .fluidbox__ghost {

-webkit-transition: opacity 0s .25s, -webkit-transform .25s 0s;
transition: opacity 0s .25s, -webkit-transform .25s 0s;
transition: opacity 0s .25s, transform .25s 0s;
transition: opacity 0s .25s, transform .25s 0s, -webkit-transform .25s 0s

}

.fluidbox__loader {

opacity: 0;
-webkit-perspective: 200px;
perspective: 200px;
pointer-events: none;
position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0

}

.fluidbox__loader:before {

background-color: rgba(255, 255, 255, .85);
content: '';
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d;
position: absolute;
top: 50%;
left: 50%;
width: 20%;
padding-bottom: 20%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
-webkit-transition-property: -webkit-transform;
transition-property: -webkit-transform;
transition-property: transform;
transition-property: transform, -webkit-transform;
-webkit-transition-duration: .25s;
transition-duration: .25s;
-webkit-transition-delay: 0s;
transition-delay: 0s

}

.fluidbox–loading .fluidbox__loader {

opacity: 1;
-webkit-transition: opacity .25s ease-in-out .25s;
transition: opacity .25s ease-in-out .25s

}

.fluidbox–loading .fluidbox__loader:before {

-webkit-animation: a 1s 0s infinite ease-in-out forwards;
animation: a 1s 0s infinite ease-in-out forwards

}

.owl-carousel {

display: none;
-webkit-tap-highlight-color: transparent;
position: relative;
z-index: 1

}

.owl-carousel .owl-stage {

position: relative;
-ms-touch-action: pan-Y;
-moz-backface-visibility: hidden

}

.owl-carousel .owl-stage:after {

content: ".";
display: block;
clear: both;
visibility: hidden;
line-height: 0;
height: 0

}

.owl-carousel .owl-stage-outer {

position: relative;
overflow: hidden;
-webkit-transform: translate3d(0, 0, 0)

}

.owl-carousel .owl-item, .owl-carousel .owl-wrapper {

-webkit-backface-visibility: hidden;
-moz-backface-visibility: hidden;
-ms-backface-visibility: hidden;
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0)

}

.owl-carousel .owl-item {

position: relative;
min-height: 1px;
float: left;
-webkit-backface-visibility: hidden;
-webkit-tap-highlight-color: transparent;
-webkit-touch-callout: none

}

.owl-carousel .owl-item img {

display: block;
width: 100%

}

.owl-carousel .owl-dots.disabled, .owl-carousel .owl-nav.disabled {

display: none

}

.owl-carousel .owl-dot, .owl-carousel .owl-nav .owl-next, .owl-carousel .owl-nav .owl-prev {

cursor: pointer;
cursor: hand;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none

}

.owl-carousel.owl-loaded {

display: block

}

.owl-carousel.owl-loading {

opacity: 0;
display: block

}

.owl-carousel.owl-hidden {

opacity: 0

}

.owl-carousel.owl-refresh .owl-item {

visibility: hidden

}

.owl-carousel.owl-drag .owl-item {

-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none

}

.owl-carousel.owl-grab {

cursor: move;
cursor: grab

}

.owl-carousel.owl-rtl {

direction: rtl

}

.owl-carousel.owl-rtl .owl-item {

float: right

}

.no-js .owl-carousel {

display: block

}

.owl-carousel .animated {

animation-duration: .5s;
animation-fill-mode: both

}

.owl-carousel .owl-animated-in {

z-index: 0

}

.owl-carousel .owl-animated-out {

z-index: 1

}

.owl-carousel .fadeOut {

animation-name: fadeOut

}

@keyframes fadeOut {

0% {
        opacity: 1
}
100% {
        opacity: 0
}

}

.owl-height {

transition: height .5s ease-in-out

}

.owl-carousel .owl-item .owl-lazy {

opacity: 0;
transition: opacity .4s ease

}

.owl-carousel .owl-item img.owl-lazy {

transform-style: preserve-3d

}

.owl-carousel .owl-video-wrapper {

position: relative;
height: 100%;
background: #000

}

.owl-carousel .owl-video-play-icon {

position: absolute;
height: 80px;
width: 80px;
left: 50%;
top: 50%;
margin-left: -40px;
margin-top: -40px;
background: url(owl.video.play.png) no-repeat;
cursor: pointer;
z-index: 1;
-webkit-backface-visibility: hidden;
transition: transform .1s ease

}

.owl-carousel .owl-video-play-icon:hover {

-ms-transform: scale(1.3, 1.3);
transform: scale(1.3, 1.3)

}

.owl-carousel .owl-video-playing .owl-video-play-icon, .owl-carousel .owl-video-playing .owl-video-tn {

display: none

}

.owl-carousel .owl-video-tn {

opacity: 0;
height: 100%;
background-position: center center;
background-repeat: no-repeat;
background-size: contain;
transition: opacity .4s ease

}

.owl-carousel .owl-video-frame {

position: relative;
z-index: 1;
height: 100%;
width: 100%

}

body, html {

height: 100%

}

body {

background: #fff;
font-family: Muli, sans-serif;
font-weight: 400;
font-style: normal;
line-height: 1;
color: #6c7a89

}

h1, h2, h3, h4, h5, h6 {

font-family: Merriweather, sans-serif;
color: #2a2f36

}

h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {

margin-top: 0

}

.h1, h1 {

font-size: 25px;
font-weight: 400;
line-height: 1.2;
letter-spacing: -.02em

}

@media only screen and (min-width:768px) {

.h1,
h1 {
        font-size: 35px
}

}

@media only screen and (min-width:1220px) {

.h1,
h1 {
        font-size: 45px
}

}

.h1 a, h1 a {

font-weight: 400

}

.h2, h2 {

margin-top: 40px;
font-size: 25px;
font-weight: 400;
line-height: 1.2;
letter-spacing: -.02em

}

@media only screen and (min-width:768px) {

.h2,
h2 {
        font-size: 35px
}

}

@media only screen and (min-width:1220px) {

.h2,
h2 {
        font-size: 45px
}

}

.h2 a, h2 a {

font-weight: 400

}

.h3, h3 {

margin-top: 40px;
font-size: 22px;
font-weight: 400;
line-height: 1.3;
letter-spacing: -.02em

}

@media only screen and (min-width:768px) {

.h3,
h3 {
        font-size: 25px
}

}

@media only screen and (min-width:1220px) {

.h3,
h3 {
        font-size: 30px
}

}

.h4, h4 {

margin-top: 25px;
font-size: 17px;
font-weight: 400;
line-height: 1.6;
letter-spacing: 0

}

@media only screen and (min-width:768px) {

.h4,
h4 {
        font-size: 22px
}

}

@media only screen and (min-width:1220px) {

.h4,
h4 {
        font-size: 22px
}

}

.h5, h5 {

margin-top: 15px;
font-size: 17px;
font-weight: 400;
line-height: 1.6;
letter-spacing: 0

}

@media only screen and (min-width:768px) {

.h5,
h5 {
        font-size: 20px
}

}

@media only screen and (min-width:1220px) {

.h5,
h5 {
        font-size: 20px
}

}

.h6, h6 {

margin-top: 15px;
font-size: 17px;
font-weight: 400;
line-height: 1.6;
letter-spacing: 0

}

@media only screen and (min-width:768px) {

.h6,
h6 {
        font-size: 20px
}

}

@media only screen and (min-width:1220px) {

.h6,
h6 {
        font-size: 20px
}

}

ol, p, ul {

margin-top: 15px;
font-size: 16px;
font-weight: 400;
line-height: 1.6;
letter-spacing: 0

}

@media only screen and (min-width:768px) {

ol,
p,
ul {
        font-size: 18px
}

}

@media only screen and (min-width:1220px) {

ol,
p,
ul {
        font-size: 20px
}

}

ol strong, p strong, ul strong {

font-weight: 600

}

ol:first-child, p:first-child, ul:first-child {

margin-top: 0

}

ol, ul {

list-style-position: inside

}

blockquote {

margin-top: 15px;
font-family: Merriweather, sans-serif;
font-size: 25px;
font-weight: 400;
letter-spacing: -.02em;
line-height: 1.6

}

@media only screen and (min-width:768px) {

blockquote {
        font-size: 35px
}

}

@media only screen and (min-width:1220px) {

blockquote {
        font-size: 45px
}

}

blockquote p {

font-size: 25px;
font-weight: 400;
letter-spacing: -.02em;
line-height: 1.6

}

@media only screen and (min-width:768px) {

blockquote p {
        font-size: 35px
}

}

@media only screen and (min-width:1220px) {

blockquote p {
        font-size: 45px
}

}

a {

text-decoration: none;
color: #2a2f36;
font-weight: 600;
-webkit-transition: all .15s ease-in-out;
-moz-transition: all .15s ease-in-out;
-ms-transition: all .15s ease-in-out;
-o-transition: all .15s ease-in-out;
transition: all .15s ease-in-out

}

a:hover {

color: #a2ded0

}

.button {

display: inline-block;
padding: 9px 10px 10px;
font-size: 13px;
line-height: 1;
border: 2px solid #a2ded0;
border-radius: 3px;
background: #a2ded0;
color: #fff;
font-weight: 600;
letter-spacing: 0;
cursor: pointer

}

@media only screen and (min-width:768px) {

.button {
        padding: 11px 20px 12px;
        font-size: 15px
}

}

.button:hover {

background: #a2ddde;
border-color: #a2ddde;
color: #fff

}

.button svg {

margin-right: 5px

}

.button svg:last-child {

margin-right: 0;
margin-left: 5px

}

@media only screen and (min-width:768px) {

.button svg {
        margin-right: 8px
}
.button svg:last-child {
        margin-right: 0;
        margin-left: 8px
}

}

.button–large {

padding: 15px 20px 16px;
font-size: 13px

}

@media only screen and (min-width:768px) {

.button--large {
        padding: 19px 40px 20px;
        font-size: 17px
}

}

.button–light {

background: 0 0;
border-color: #2a2f36;
color: #2a2f36

}

.button–light:hover {

background: #a2ded0;
border-color: #a2ded0;
color: #fff

}

.button–overlay {

background: 0 0;
border-color: #fff;
color: #fff

}

.button–overlay:hover {

background: #fff;
border-color: #fff;
color: #a2ded0

}

hr {

margin: 40px 0;
border: 0;
height: 2px;
background: #ddd

}

::selection {

background: #a2ded0;
color: #fff

}

::-moz-selection {

background: #a2ded0;
color: #fff

}

.page-loader {

display: none

}

.page {

-webkit-transition: all .4s ease-in-out;
-moz-transition: all .4s ease-in-out;
-ms-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
transition: all .4s ease-in-out

}

body.loading .loader {

opacity: 1;
visibility: visible;
-webkit-transition: all .4s ease-in-out 1s;
-moz-transition: all .4s ease-in-out 1s;
-ms-transition: all .4s ease-in-out 1s;
-o-transition: all .4s ease-in-out 1s;
transition: all .4s ease-in-out 1s

}

body.loading .page {

opacity: 0;
visibility: hidden;
-webkit-transition: all .4s ease-in-out;
-moz-transition: all .4s ease-in-out;
-ms-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
transition: all .4s ease-in-out

}

body.loading .footer {

opacity: 0;
visibility: hidden;
-webkit-transition: all .4s ease-in-out;
-moz-transition: all .4s ease-in-out;
-ms-transition: all .4s ease-in-out;
-o-transition: all .4s ease-in-out;
transition: all .4s ease-in-out

}

.loader {

position: fixed;
top: 50%;
left: 50%;
-moz-transform: translate(-50%, -50%);
-o-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
width: 60px;
height: 15px;
opacity: 0;
visibility: hidden;
-webkit-transition: all .2s ease-in-out;
-moz-transition: all .2s ease-in-out;
-ms-transition: all .2s ease-in-out;
-o-transition: all .2s ease-in-out;
transition: all .2s ease-in-out

}

@media only screen and (min-width:1024px) {

.loader {
        left: 65%
}

}

@media only screen and (min-width:1600px) {

.loader {
        left: 62.5%
}

}

.loader svg {

width: 100%;
height: 100%;
fill: rgba(42, 47, 54, .2)

}

.page, .page__content {

float: left;
clear: both;
width: 100%

}

@media only screen and (min-width:1024px) {

.page {
        padding-left: 30%
}

}

@media only screen and (min-width:1600px) {

.page {
        padding-left: 25%
}

}

.featured-image {

position: relative;
width: 100%;
height: 0;
padding-bottom: 56.25%;
background-size: cover;
background-position: center;
background-repeat: no-repeat

}

@media only screen and (min-width:1024px) {

.featured-image {
        position: fixed;
        z-index: 10;
        top: 0;
        left: 0;
        bottom: 0;
        height: auto;
        padding-bottom: 0;
        width: 30%
}

}

section {

margin-top: 40px

}

@media only screen and (min-width:768px) {

section {
        margin-top: 50px
}

}

@media only screen and (min-width:1024px) {

section {
        margin-top: 60px
}

}

@media only screen and (min-width:1220px) {

section {
        margin-top: 80px
}

}

.wrap {

position: relative;
margin: 0 auto;
padding: 0 20px

}

@media only screen and (min-width:768px) {

.wrap {
        padding: 0 40px
}

}

@media only screen and (min-width:1024px) {

.wrap {
        padding: 0
}

}

.buy-cta {

position: fixed;
bottom: 0;
right: 0

}

.buy-cta__link {

display: block;
position: relative;
width: 40px;
height: 40px;
background: #dc5b5d

}

@media only screen and (min-width:768px) {

.buy-cta__link {
        width: 60px;
        height: 60px
}

}

.buy-cta__link svg {

position: absolute;
top: 50%;
left: 50%;
width: 20px;
height: 20px;
-moz-transform: translate(-50%, -50%);
-o-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
fill: #fff

}

@media only screen and (min-width:768px) {

.buy-cta__link svg {
        width: 30px;
        height: 30px
}

}

.buy-cta__hover .buy-cta__text {

-moz-transform: translate(0, 0);
-o-transform: translate(0, 0);
-ms-transform: translate(0, 0);
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
opacity: 1

}

.buy-cta__text {

position: absolute;
top: 0;
right: 40px;
background: #dc5b5d;
padding: 14px 10px 13px 17px;
color: #fff;
font-size: 13px;
line-height: 1;
white-space: nowrap;
-webkit-transition: all .15s ease-in-out;
-moz-transition: all .15s ease-in-out;
-ms-transition: all .15s ease-in-out;
-o-transition: all .15s ease-in-out;
transition: all .15s ease-in-out;
-moz-transform: translate(0, 20px);
-o-transform: translate(0, 20px);
-ms-transform: translate(0, 20px);
-webkit-transform: translate(0, 20px);
transform: translate(0, 20px);
opacity: 0

}

@media only screen and (min-width:768px) {

.buy-cta__text {
        right: 60px;
        padding: 22px 14px 23px 25px;
        font-size: 15px;
        -moz-transform: translate(0, 30px);
        -o-transform: translate(0, 30px);
        -ms-transform: translate(0, 30px);
        -webkit-transform: translate(0, 30px);
        transform: translate(0, 30px)
}

}

.header {

padding: 40px 20px;
background: #161b21

}

@media only screen and (min-width:768px) {

.header {
        padding: 80px 40px
}

}

@media only screen and (min-width:1024px) {

.header {
        position: fixed;
        z-index: 10;
        overflow: auto;
        top: 0;
        left: 0;
        bottom: 0;
        width: 30%;
        padding: 0
}

}

@media only screen and (min-width:1600px) {

.header {
        width: 25%
}

}

.header-image {

position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
opacity: 0;
-webkit-transition: opacity .4s ease-in-out;
-moz-transition: opacity .4s ease-in-out;
-ms-transition: opacity .4s ease-in-out;
-o-transition: opacity .4s ease-in-out;
transition: opacity .4s ease-in-out

}

@media only screen and (min-width:1024px) {

.header-image {
        position: fixed;
        right: auto;
        width: 30%
}

}

@media only screen and (min-width:1600px) {

.header-image {
        width: 25%
}

}

.header-image–on {

opacity: 1

}

.header-overlay {

position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;
background: rgba(22, 27, 33, .7)

}

@media only screen and (min-width:1024px) {

.header-overlay {
        background: -moz-linear-gradient(top, rgba(22, 27, 33, 0) 0, rgba(22, 27, 33, .01) 1%, rgba(22, 27, 33, .7) 70%, rgba(22, 27, 33, .7) 100%);
        background: -webkit-linear-gradient(top, rgba(22, 27, 33, 0) 0, rgba(22, 27, 33, .01) 1%, rgba(22, 27, 33, .7) 70%, rgba(22, 27, 33, .7) 100%);
        background: linear-gradient(to bottom, rgba(22, 27, 33, 0) 0, rgba(22, 27, 33, .01) 1%, rgba(22, 27, 33, .7) 70%, rgba(22, 27, 33, .7) 100%)
}

}

.header__content {

position: relative

}

@media only screen and (min-width:1024px) {

.header__content {
        position: absolute;
        bottom: 0;
        padding: 40px 40px 34px
}

}

@media only screen and (min-width:1220px) {

.header__content {
        padding: 60px 60px 52px
}

}

.header__logo {

display: block;
width: 200px;
max-width: 80%

}

@media only screen and (min-width:768px) {

.header__logo {
        float: left;
        max-width: 50%
}

}

.header__logo__img {

width: 100%;
height: auto

}

.header__title {

font-family: Merriweather, sans-serif;
font-size: 25px;
font-weight: 400;
letter-spacing: 0;
line-height: 1;
color: #fff

}

.header__title:hover {

color: #fff

}

@media only screen and (min-width:768px) {

.header__title {
        font-size: 30px
}

}

@media only screen and (min-width:1220px) {

.header__title {
        font-size: 35px
}

}

.header__tagline {

margin-top: 10px;
font-family: Muli, sans-serif;
font-size: 16px;
font-weight: 400;
letter-spacing: 0;
line-height: 1.5;
color: rgba(255, 255, 255, .7)

}

@media only screen and (min-width:768px) {

.header__tagline {
        font-size: 17px
}

}

@media only screen and (min-width:1220px) {

.header__tagline {
        font-size: 18px
}

}

@media only screen and (min-width:1024px) {

.menu {
        margin-top: 20px
}

}

@media only screen and (min-width:1220px) {

.menu {
        margin-top: 30px
}

}

.menu__toggle {

position: absolute;
z-index: 1002;
top: 0;
right: 0;
cursor: pointer;
font-size: 15px;
line-height: 20px

}

@media only screen and (min-width:1024px) {

.menu__toggle {
        display: none
}

}

.menu__toggle__icon {

float: right;
position: relative;
width: 24px;
height: 20px;
margin-left: 8px

}

.menu__toggle__icon span, .menu__toggle__icon span:after, .menu__toggle__icon span:before {

content: '';
position: absolute;
top: 8px;
left: 0;
width: 100%;
height: 3px;
-webkit-transition: all .1s;
-moz-transition: all .1s;
-ms-transition: all .1s;
-o-transition: all .1s;
transition: all .1s;
background: rgba(255, 255, 255, .7)

}

.menu__toggle__icon span:before {

top: -8px

}

.menu__toggle__icon span:after {

top: 8px

}

.menu–open .menu__toggle__icon span:after, .menu–open .menu__toggle__icon span:before {

background: #fff!important

}

.menu–open .menu__toggle__icon span {

background-color: transparent!important

}

.menu–open .menu__toggle__icon span:after, .menu–open .menu__toggle__icon span:before {

top: 0

}

.menu–open .menu__toggle__icon span:before {

-moz-transform: rotate(45deg);
-o-transform: rotate(45deg);
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
transform: rotate(45deg)

}

.menu–open .menu__toggle__icon span:after {

-moz-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
-ms-transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg)

}

.menu__wrap {

position: fixed;
z-index: 1000;
top: 0;
right: 0;
bottom: 0;
left: 0;
background: rgba(22, 27, 33, .95);
overflow: auto;
visibility: hidden;
opacity: 0;
-webkit-transition: all .2s ease-in-out;
-moz-transition: all .2s ease-in-out;
-ms-transition: all .2s ease-in-out;
-o-transition: all .2s ease-in-out;
transition: all .2s ease-in-out

}

@media only screen and (min-width:1024px) {

.menu__wrap {
        position: relative;
        background: 0 0;
        visibility: visible;
        overflow: visible;
        opacity: 1;
        -webkit-transition: none;
        -moz-transition: none;
        -ms-transition: none;
        -o-transition: none;
        transition: none
}

}

.menu–open .menu__wrap {

visibility: visible;
opacity: 1

}

.menu__list {

list-style: none;
margin: 0 auto;
padding: 12px 20px

}

@media only screen and (min-width:768px) {

.menu__list {
        padding: 30px 40px
}

}

@media only screen and (min-width:1024px) {

.menu__list {
        margin: 0;
        padding: 0
}

}

.menu__list__item__link {

font-size: 30px;
font-weight: 400;
color: rgba(255, 255, 255, .7);
padding: 10px 0

}

.menu__list__item__hover {

color: #fff

}

@media only screen and (min-width:1024px) {

.menu__list__item__link {
        padding: 0;
        font-size: 17px
}

}

@media only screen and (min-width:1220px) {

.menu__list__item__link {
        font-size: 18px
}

}

.menu__list__item__link.active-link {

color: #fff

}

.menu__button {

margin-top: 15px;
padding: 15px 20px 16px;
font-size: 13px

}

@media only screen and (min-width:1024px) {

.menu__button {
        margin-top: 0;
        padding: 11px 20px 12px;
        font-size: 15px
}

}

.header .socials {

padding: 12px 20px

}

@media only screen and (min-width:768px) {

.header .socials {
        padding: 10px 40px
}

}

@media only screen and (min-width:1024px) {

.header .socials {
        margin: 27px 0 0;
        padding: 0
}

}

@media only screen and (min-width:1220px) {

.header .socials {
        margin-top: 35px
}

}

.header .socials .socials__item__link {

background: rgba(255, 255, 255, .7);
color: #161b21

}

.header .socials .socials__item__hover {

background: #fff;
color: #161b21

}

.footer {

-webkit-transition: all .6s cubic-bezier(.87, -.41, .19, 1.44);
-moz-transition: all .6s cubic-bezier(.87, -.41, .19, 1.44);
-ms-transition: all .6s cubic-bezier(.87, -.41, .19, 1.44);
-o-transition: all .6s cubic-bezier(.87, -.41, .19, 1.44);
transition: all .6s cubic-bezier(.87, -.41, .19, 1.44);
padding: 20px

}

@media only screen and (min-width:768px) {

.footer {
        padding: 40px
}

}

@media only screen and (min-width:1220px) {

.footer {
        padding: 60px
}

}

@media only screen and (min-width:1024px) {

.footer {
        padding-left: 30%
}

}

@media only screen and (min-width:1600px) {

.footer {
        padding-left: 25%
}

}

.footer__copyright {

display: block;
font-size: 13px;
color: #abb7b7

}

@media only screen and (min-width:1024px) {

.footer__copyright {
        padding-left: 40px
}

}

@media only screen and (min-width:1220px) {

.footer__copyright {
        padding-left: 60px
}

}

.footer__copyright a {

margin-left: 10px;
color: #abb7b7;
font-weight: 400

}

.footer__copyright a:hover {

color: #6c7a89

}

.intro {

margin-top: 0;
padding: 20px 0 0

}

@media only screen and (min-width:768px) {

.intro {
        padding: 35px 0 0
}

}

@media only screen and (min-width:1024px) {

.intro {
        padding: 35px 40px 0
}

}

@media only screen and (min-width:1220px) {

.intro {
        padding: 53px 60px 0
}

}

@media only screen and (min-width:1024px) {

.intro .wrap {
        max-width: 80%
}

}

@media only screen and (min-width:1220px) {

.intro .wrap {
        max-width: 75%
}

}

@media only screen and (min-width:1600px) {

.intro .wrap {
        max-width: 70%
}

}

@media only screen and (min-width:768px) {

.intro h1 {
        white-space: pre-line
}

}

.intro p {

margin-top: 5px;
color: #abb7b7

}

.single {

margin-top: 0;
padding: 20px 0;
min-height: 100vh

}

@media only screen and (min-width:768px) {

.single {
        padding: 40px 0
}

}

@media only screen and (min-width:1024px) {

.single {
        padding: 30px 40px 40px
}

}

@media only screen and (min-width:1220px) {

.single {
        padding: 40px 60px 60px
}

}

.single h1, .single h2, .single h3, .single h4, .single h5, .single h6, .single ol, .single p, .single ul {

margin-left: auto;
margin-right: auto

}

@media only screen and (min-width:1024px) {

.single h1,
.single h2,
.single h3,
.single h4,
.single h5,
.single h6,
.single ol,
.single p,
.single ul {
        max-width: 80%
}

}

@media only screen and (min-width:1220px) {

.single h1,
.single h2,
.single h3,
.single h4,
.single h5,
.single h6,
.single ol,
.single p,
.single ul {
        max-width: 75%
}

}

@media only screen and (min-width:1600px) {

.single h1,
.single h2,
.single h3,
.single h4,
.single h5,
.single h6,
.single ol,
.single p,
.single ul {
        max-width: 70%
}

}

.single ol ol, .single ol ul, .single ul ol, .single ul ul {

max-width: 100%;
padding-left: 25px

}

.single hr {

margin: 20px auto

}

@media only screen and (min-width:768px) {

.single hr {
        margin-top: 40px;
        margin-bottom: 40px;
        width: auto
}

}

@media only screen and (min-width:1024px) {

.single hr {
        max-width: 80%
}

}

@media only screen and (min-width:1220px) {

.single hr {
        max-width: 75%
}

}

@media only screen and (min-width:1600px) {

.single hr {
        max-width: 70%
}

}

.single blockquote, .single figure {

margin: 20px auto

}

@media only screen and (min-width:768px) {

.single blockquote,
.single figure {
        margin: 30px auto
}

}

@media only screen and (min-width:1220px) {

.single blockquote,
.single figure {
        margin: 40px auto
}

}

.single blockquote p {

max-width: 100%;
padding: 0

}

.single p a {

font-weight: 600;
border-bottom: 2px solid #a2ded0

}

.single p .button {

margin-top: 10px

}

.single .highlighter-rouge, .single table {

margin: 20px auto;
width: 100%

}

@media only screen and (min-width:768px) {

.single .highlighter-rouge,
.single table {
        margin: 30px auto
}

}

@media only screen and (min-width:1024px) {

.single .highlighter-rouge,
.single table {
        max-width: 80%
}

}

@media only screen and (min-width:1220px) {

.single .highlighter-rouge,
.single table {
        margin: 40px auto;
        max-width: 75%
}

}

@media only screen and (min-width:1600px) {

.single .highlighter-rouge,
.single table {
        max-width: 70%
}

}

.single .highlight {

display: block;
padding: 0;
line-height: 1.5;
font-size: 13.6px;
line-height: 1.6;
overflow: auto

}

@media only screen and (min-width:768px) {

.single .highlight {
        font-size: 15.3px
}

}

@media only screen and (min-width:1220px) {

.single .highlight {
        font-size: 17px
}

}

.single .highlight .highlight {

padding: 20px

}

@media only screen and (min-width:768px) {

.single .highlight .highlight {
        padding: 30px
}

}

@media only screen and (min-width:1220px) {

.single .highlight .highlight {
        padding: 40px
}

}

.single .table-wrap {

display: block;
width: 100%;
overflow-x: auto

}

.single table {

min-width: 600px;
border: 2px solid #2a2f36

}

.single table thead {

background: #2a2f36;
color: #fff;
text-align: left;
font-weight: 600

}

.single table thead th {

font-weight: 600

}

.single table td, .single table th {

padding: 10px;
font-size: 16px;
font-weight: 400

}

@media only screen and (min-width:768px) {

.single table td,
.single table th {
        padding: 15px
}

}

@media only screen and (min-width:1220px) {

.single table td,
.single table th {
        padding: 20px
}

}

.single table tr:nth-child(2n) {

background: #f5f7fa

}

.single sup a.footnote {

display: inline-block;
margin-left: 5px;
min-width: 16px;
height: 16px;
border-radius: 100%;
border-bottom: none;
padding: 1px 3px;
background: #f5f7fa;
font-size: 10px;
text-align: center;
color: #abb7b7

}

.single sup a.footnote:hover {

background: #abb7b7;
color: #fff

}

.single .footnotes {

margin-top: 40px

}

@media only screen and (min-width:768px) {

.single .footnotes {
        margin-top: 60px
}

}

@media only screen and (min-width:1220px) {

.single .footnotes {
        margin-top: 80px
}

}

.single .footnotes ol {

list-style: none;
counter-reset: footnotes

}

.single .footnotes ol li {

margin-top: 5px;
font-size: 13px;
counter-increment: footnotes

}

.single .footnotes ol li:before {

content: counter(footnotes);
box-sizing: border-box;
display: inline-block;
margin-right: 3px;
width: 20px;
height: 20px;
border-radius: 100%;
border-bottom: none;
padding: 2px 3px;
background: #f5f7fa;
font-size: 11px;
font-weight: 600;
text-align: center;
color: #abb7b7

}

.single .footnotes ol li p {

display: inline;
max-width: 100%;
font-size: 13px

}

.single .footnotes ol li p a.reversefootnote {

border-bottom: 0;
vertical-align: sub

}

.image-wrap, .video-wrap {

position: relative;
margin: 20px auto

}

@media only screen and (min-width:768px) {

.image-wrap,
.video-wrap {
        margin: 30px auto
}

}

@media only screen and (min-width:1220px) {

.image-wrap,
.video-wrap {
        margin: 40px auto
}

}

.image-wrap:first-child, .video-wrap:first-child {

margin-top: 0

}

.image-wrap img {

margin: 0 auto

}

.video {

position: relative;
width: 100%;
height: 0

}

.video iframe {

position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%

}

.socials {

list-style: none;
margin: 0;
padding: 0

}

.socials__item {

display: inline-block;
margin-left: 2px

}

.socials__item:first-child {

margin-left: 0

}

.socials__item__link {

position: relative;
display: block;
width: 30px;
height: 30px;
border-radius: 100%;
background: #abb7b7;
font-size: 17px;
line-height: 1;
color: #fff

}

@media only screen and (min-width:768px) {

.socials__item__link {
        width: 40px;
        height: 40px;
        font-size: 20px
}

}

.socials__item__link svg {

position: absolute;
top: 50%;
left: 50%;
-moz-transform: translate(-50%, -52%);
-o-transform: translate(-50%, -52%);
-ms-transform: translate(-50%, -52%);
-webkit-transform: translate(-50%, -52%);
transform: translate(-50%, -52%)

}

.socials__item__hover {

background: #a2ded0;
color: #fff

}

.gallery {

visibility: hidden;
position: relative;
margin: 20px auto

}

@media only screen and (min-width:768px) {

.gallery {
        margin: 30px auto
}

}

@media only screen and (min-width:1220px) {

.gallery {
        margin: 40px auto
}

}

.gallery:first-child {

margin-top: 0

}

.gallery–on {

visibility: visible

}

.gallery__item {

position: relative

}

.gallery__item img {

width: 100%

}

.gallery–carousel .gallery__item__link {

display: block;
pointer-events: none

}

.gallery–carousel .owl-nav {

display: none

}

.gallery–carousel .owl-dots {

margin-top: 20px;
text-align: center

}

.gallery–carousel .owl-dots .owl-dot {

display: inline-block;
margin: 0 3px;
width: 12px;
height: 12px;
border: 0;
border-radius: 100%;
background: #abb7b7;
-webkit-transition: all .2s ease-in-out;
-moz-transition: all .2s ease-in-out;
-ms-transition: all .2s ease-in-out;
-o-transition: all .2s ease-in-out;
transition: all .2s ease-in-out;
cursor: pointer;
outline: 0

}

.gallery–carousel .owl-dots .owl-dot.active {

background: #a2ded0

}

.gallery–grid .gallery__wrap {

margin-left: -5px;
margin-right: -5px

}

.gallery–grid .gallery__item {

float: left;
width: 50%;
padding: 5px

}

.gallery–grid .gallery__item__link {

display: block;
cursor: zoom-in

}

.gallery–grid .gallery__item {

width: 33.33%

}

.gallery–grid .gallery__item {

width: 33.33%

}

@media only screen and (min-width:768px) {

.gallery--grid[data-columns="4"] .gallery__item {
        width: 25%
}

}

.gallery–grid .gallery__item {

width: 33.33%

}

@media only screen and (min-width:768px) {

.gallery--grid[data-columns="5"] .gallery__item {
        width: 25%
}

}

@media only screen and (min-width:1024px) {

.gallery--grid[data-columns="5"] .gallery__item {
        width: 20%
}

}

.gallery–grid .gallery__item {

width: 33.33%

}

@media only screen and (min-width:768px) {

.gallery--grid[data-columns="6"] .gallery__item {
        width: 25%
}

}

@media only screen and (min-width:1024px) {

.gallery--grid[data-columns="6"] .gallery__item {
        width: 20%
}

}

@media only screen and (min-width:1220px) {

.gallery--grid[data-columns="6"] .gallery__item {
        width: 16.66%
}

}

.highlight .hll {

background-color: #ffc

}

.highlight {

background: #f0f0f0

}

.highlight .c {

color: #60a0b0;
font-style: italic

}

.highlight .err {

border: 1px solid red

}

.highlight .k {

color: #007020;
font-weight: 700

}

.highlight .o {

color: #666

}

.highlight .ch {

color: #60a0b0;
font-style: italic

}

.highlight .cm {

color: #60a0b0;
font-style: italic

}

.highlight .cp {

color: #007020

}

.highlight .cpf {

color: #60a0b0;
font-style: italic

}

.highlight .c1 {

color: #60a0b0;
font-style: italic

}

.highlight .cs {

color: #60a0b0;
background-color: #fff0f0

}

.highlight .gd {

color: #a00000

}

.highlight .ge {

font-style: italic

}

.highlight .gr {

color: red

}

.highlight .gh {

color: navy;
font-weight: 700

}

.highlight .gi {

color: #00a000

}

.highlight .go {

color: #888

}

.highlight .gp {

color: #c65d09;
font-weight: 700

}

.highlight .gs {

font-weight: 700

}

.highlight .gu {

color: purple;
font-weight: 700

}

.highlight .gt {

color: #04d

}

.highlight .kc {

color: #007020;
font-weight: 700

}

.highlight .kd {

color: #007020;
font-weight: 700

}

.highlight .kn {

color: #007020;
font-weight: 700

}

.highlight .kp {

color: #007020

}

.highlight .kr {

color: #007020;
font-weight: 700

}

.highlight .kt {

color: #902000

}

.highlight .m {

color: #40a070

}

.highlight .s {

color: #4070a0

}

.highlight .na {

color: #4070a0

}

.highlight .nb {

color: #007020

}

.highlight .nc {

color: #0e84b5;
font-weight: 700

}

.highlight .no {

color: #60add5

}

.highlight .nd {

color: #555;
font-weight: 700

}

.highlight .ni {

color: #d55537;
font-weight: 700

}

.highlight .ne {

color: #007020

}

.highlight .nf {

color: #06287e

}

.highlight .nl {

color: #002070;
font-weight: 700

}

.highlight .nn {

color: #0e84b5;
font-weight: 700

}

.highlight .nt {

color: #062873;
font-weight: 700

}

.highlight .nv {

color: #bb60d5

}

.highlight .ow {

color: #007020;
font-weight: 700

}

.highlight .w {

color: #bbb

}

.highlight .mb {

color: #40a070

}

.highlight .mf {

color: #40a070

}

.highlight .mh {

color: #40a070

}

.highlight .mi {

color: #40a070

}

.highlight .mo {

color: #40a070

}

.highlight .sa {

color: #4070a0

}

.highlight .sb {

color: #4070a0

}

.highlight .sc {

color: #4070a0

}

.highlight .dl {

color: #4070a0

}

.highlight .sd {

color: #4070a0;
font-style: italic

}

.highlight .s2 {

color: #4070a0

}

.highlight .se {

color: #4070a0;
font-weight: 700

}

.highlight .sh {

color: #4070a0

}

.highlight .si {

color: #70a0d0;
font-style: italic

}

.highlight .sx {

color: #c65d09

}

.highlight .sr {

color: #235388

}

.highlight .s1 {

color: #4070a0

}

.highlight .ss {

color: #517918

}

.highlight .bp {

color: #007020

}

.highlight .fm {

color: #06287e

}

.highlight .vc {

color: #bb60d5

}

.highlight .vg {

color: #bb60d5

}

.highlight .vi {

color: #bb60d5

}

.highlight .vm {

color: #bb60d5

}

.highlight .il {

color: #40a070

}

.contact-form {

background: #f5f7fa;
margin: 20px auto;
width: 100%;
padding: 20px

}

@media only screen and (min-width:768px) {

.contact-form {
        margin: 30px auto;
        padding: 40px
}

}

@media only screen and (min-width:1024px) {

.contact-form {
        max-width: calc(80% + 80px)
}

}

@media only screen and (min-width:1220px) {

.contact-form {
        margin: 40px auto;
        max-width: calc(75% + 100px);
        padding: 50px
}

}

@media only screen and (min-width:1600px) {

.contact-form {
        max-width: calc(70% + 120px);
        padding: 60px
}

}

.contact-form:first-child {

margin-top: 0

}

.contact-form__item {

margin-top: 15px

}

@media only screen and (min-width:768px) {

.contact-form__item {
        margin-top: 20px
}

}

@media only screen and (min-width:1220px) {

.contact-form__item {
        margin-top: 30px
}

}

.contact-form__item:first-child {

margin-top: 0

}

.contact-form__item–error .contact-form__input, .contact-form__item–error .contact-form__textarea {

border-color: #d64541

}

.contact-form__label {

display: block;
font-size: 16px;
font-weight: 600;
color: #6c7a89

}

@media only screen and (min-width:768px) {

.contact-form__label {
        font-size: 18px
}

}

@media only screen and (min-width:1220px) {

.contact-form__label {
        font-size: 20px
}

}

.contact-form__input, .contact-form__textarea {

width: 100%;
margin-top: 8px;
border: 2px solid #ddd;
border-radius: 2px;
padding: 10px 12px;
background: #fff;
font-size: 16px;
line-height: 1.4;
color: #2a2f36;
-webkit-transition: all .15s ease-in-out;
-moz-transition: all .15s ease-in-out;
-ms-transition: all .15s ease-in-out;
-o-transition: all .15s ease-in-out;
transition: all .15s ease-in-out

}

@media only screen and (min-width:768px) {

.contact-form__input,
.contact-form__textarea {
        padding: 15px 18px;
        font-size: 18px
}

}

@media only screen and (min-width:1220px) {

.contact-form__input,
.contact-form__textarea {
        font-size: 20px
}

}

.contact-form__input:focus, .contact-form__textarea:focus {

outline: 0;
border-color: #a2ded0

}

::-webkit-input-placeholder {

color: #d4dada

}

::-moz-placeholder {

color: #d4dada

}

:-ms-input-placeholder {

color: #d4dada

}

:-moz-placeholder {

color: #d4dada

}

.contact-form__textarea {

min-height: 200px;
resize: none

}

.portfolio {

margin-top: 0;
padding: 20px 0 0

}

@media only screen and (min-width:768px) {

.portfolio {
        padding: 35px 0 0
}

}

@media only screen and (min-width:1024px) {

.portfolio {
        padding: 35px 40px 0
}

}

@media only screen and (min-width:1220px) {

.portfolio {
        padding: 53px 60px 0
}

}

.portfolio-item {

position: relative;
margin-top: 20px

}

@media only screen and (min-width:768px) {

.portfolio-item {
        margin-top: 35px
}

}

@media only screen and (min-width:1024px) {

.portfolio-item {
        margin-top: 40px
}

}

@media only screen and (min-width:1220px) {

.portfolio-item {
        margin-top: 60px
}

}

.portfolio-item:first-child {

margin-top: 0

}

.portfolio-item__link {

position: relative;
display: block

}

@media only screen and (min-width:1024px) {

.portfolio-item__link:hover .portfolio-item__content {
        opacity: 1;
        visibility: visible
}

}

.portfolio-item__image {

display: block;
width: 100%;
height: 0;
padding-bottom: 56.25%;
background-size: cover;
background-position: center;
background-repeat: no-repeat

}

.portfolio-item__content {

position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
display: flex;
align-items: center;
justify-content: center;
background: rgba(22, 27, 33, .7);
opacity: 0;
visibility: hidden;
-webkit-transition: all .2s ease-in-out;
-moz-transition: all .2s ease-in-out;
-ms-transition: all .2s ease-in-out;
-o-transition: all .2s ease-in-out;
transition: all .2s ease-in-out

}

.portfolio-item__info {

text-align: center

}

.portfolio-item__title {

color: #fff

}

.portfolio-item__subtitle {

margin-top: 5px;
color: rgba(255, 255, 255, .7)

}

.blog {

margin-top: 0;
padding: 20px 0 0

}

@media only screen and (min-width:768px) {

.blog {
        padding: 35px 0 0
}

}

@media only screen and (min-width:1024px) {

.blog {
        padding: 35px 40px 0
}

}

@media only screen and (min-width:1220px) {

.blog {
        padding: 53px 60px 0
}

}

.blog-post {

margin-top: 40px

}

@media only screen and (min-width:768px) {

.blog-post {
        margin-top: 60px
}

}

@media only screen and (min-width:1024px) {

.blog-post {
        margin-top: 80px
}

}

@media only screen and (min-width:1220px) {

.blog-post {
        margin-top: 100px
}

}

.blog-post:first-child {

margin-top: 0

}

.blog-post__image {

margin-top: 20px;
display: block;
width: 100%;
height: 0;
padding-bottom: 56.25%;
background-size: cover;
background-position: center;
background-repeat: no-repeat

}

@media only screen and (min-width:768px) {

.blog-post__image {
        margin-top: 25px
}

}

@media only screen and (min-width:1024px) {

.blog-post__image {
        margin-top: 30px
}

}

@media only screen and (min-width:1220px) {

.blog-post__image {
        margin-top: 40px
}

}

.blog-post__content {

margin-top: 20px

}

@media only screen and (min-width:768px) {

.blog-post__content {
        margin-top: 25px
}

}

@media only screen and (min-width:1024px) {

.blog-post__content {
        margin-top: 30px
}

}

@media only screen and (min-width:1220px) {

.blog-post__content {
        margin-top: 40px
}

}

.blog-post__content p .button {

margin-top: 5px

}

@media only screen and (min-width:1024px) {

.blog-post__content p .button {
        margin-top: 10px
}

}

.blog-post__subtitle {

margin-top: 5px;
color: #abb7b7

}

.pagination {

margin-top: 0;
padding: 40px 20px 0

}

@media only screen and (min-width:768px) {

.pagination {
        padding: 55px 40px 0
}

}

@media only screen and (min-width:1024px) {

.pagination {
        padding: 75px 40px 0
}

}

@media only screen and (min-width:1220px) {

.pagination {
        padding: 93px 60px 0
}

}

.pagination__next, .pagination__prev {

width: 50%

}

.pagination__next .button, .pagination__prev .button {

display: block;
text-align: center

}

.pagination__prev {

float: left;
padding-right: 5px

}

.pagination__next {

float: right;
padding-left: 5px

}