/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

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

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

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

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

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

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

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

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

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

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

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

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}

/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
.owl-carousel,.owl-carousel .owl-item{-webkit-tap-highlight-color:transparent;position:relative}.owl-carousel{display:none;width:100%;z-index:1}.owl-carousel .owl-stage{position:relative;-ms-touch-action:pan-Y;touch-action:manipulation;-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{min-height:1px;float:left;-webkit-backface-visibility:hidden;-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}.no-js .owl-carousel,.owl-carousel.owl-loaded{display:block}.owl-carousel .owl-dot,.owl-carousel .owl-nav .owl-next,.owl-carousel .owl-nav .owl-prev{cursor:pointer;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel .owl-nav button.owl-next,.owl-carousel .owl-nav button.owl-prev,.owl-carousel button.owl-dot{background:0 0;color:inherit;border:none;padding:0!important;font:inherit}.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{-ms-touch-action:pan-y;touch-action:pan-y;-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}.owl-carousel .animated{animation-duration:1s;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 .owl-lazy:not([src]),.owl-carousel .owl-item .owl-lazy[src^=""]{max-height:0}.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(/static/OwlCarousel2/dist/assets/owl.video.play.png?00ed5e70acef) 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%}
/*! HTML5 Boilerplate v9.0.1 | MIT License | https://html5boilerplate.com/ */

/* main.css 3.0.0 | MIT License | https://github.com/h5bp/main.css#readme */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
  color: #222;
  font-size: 1em;
  line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Customize the background color to match your design.
 */

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

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

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
  resize: vertical;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

/*@font-face {
    font-family: 'PPRightDidone';
    src: url('/static/font/PPRightDidone-Light.woff?3c15ce7b8bd8') format('woff');
    font-weight: 400;
}*/

@font-face {
    font-family: 'PPCirka';
    src: url('/static/font/PPCirka-Light.woff?3c15ce7b8bd8') format('woff');
    font-weight: 400;
}

@font-face {
    font-family: 'MaisonNeue';
    src: url('/static/font/MaisonNeue-Book.woff?646ae8f25aa8') format('woff');
    font-weight: 400;
}

html {
    background: #F6F0EB;
    color: #000;
    font: 16px/1.5em 'PPCirka', serif;
    scroll-behavior: smooth;
}

h1 {
    font-family: 'PPCirka', serif;
    font-size: 32px;
    font-weight: normal;
    line-height: 1.125em;
    margin: 0 0 32px 0;
}

h2 {
    font-family: 'PPCirka', serif;
    font-size: 28px;
    font-weight: normal;
    line-height: 1.125em;
    margin: 0 0 32px 0;
}

h3 {
    font-family: 'PPCirka', serif;
    font-size: 25px;
    font-weight: normal;
    line-height: 1.125em;
    margin: 0 0 32px 0;
}

h4 {
    font-family: 'PPCirka', serif;
    font-size: 22px;
    font-weight: normal;
    line-height: 1.125em;
    margin: 0 0 32px 0;
}

h5 {
    font-family: 'PPCirka', serif;
    font-size: 20px;
    font-weight: normal;
    line-height: 1.125em;
    margin: 0 0 32px 0;
}

h6 {
    font-family: 'PPCirka', serif;
    font-size: 18px;
    font-weight: normal;
    line-height: 1.125em;
    margin: 0 0 32px 0;
}

.display-large {
    font-size: 32px;
    line-height: 1.25em;
}

.display-medium {
    font-size: 28px;
    line-height: 1.25em;
}

.display-small {
    font-size: 25px;
    line-height: 1.25em;
}

.headline-large {
    font-size: 22px;
    line-height: 1.25em;
}

.headline-medium {
    font-size: 20px;
    line-height: 1.25em;
}

.headline-small {
    font-size: 18px;
    line-height: 1.25em;
}

.title-large {
    font-size: 16px;
    line-height: 1.25em;
}

.title-medium {
    font-size: 16px;
    line-height: 1.25em;
}

@media screen and (min-width: 768px) {
    h1 {
        font-size: 36px;
        line-height: 1.125em;
    }

    h2 {
        font-size: 32px;
        line-height: 1.125em;
    }

    h3 {
        font-size: 28px;
        line-height: 1.125em;
    }

    h4 {
        font-size: 25px;
        line-height: 1.125em;
    }

    h5 {
        font-size: 22px;
        line-height: 1.125em;
    }

    h6 {
        font-size: 20px;
        line-height: 1.125em;
    }

    .display-large {
        font-size: 36px;
        line-height: 1.25em;
    }

    .display-medium {
        font-size: 32px;
        line-height: 1.25em;
    }

    .display-small {
        font-size: 28px;
        line-height: 1.25em;
    }

    .headline-large {
        font-size: 25px;
        line-height: 1.25em;
    }

    .headline-medium {
        font-size: 22px;
        line-height: 1.25em;
    }

    .headline-small {
        font-size: 20px;
        line-height: 1.25em;
    }
    
    .title-large {
        font-size: 18px;
        line-height: 1.25em;
    }
    
    .title-medium {
        font-size: 16px;
        line-height: 1.25em;
    }
}

@media screen and (min-width: 1024px) {
    h1 {
        font-size: 45px;
        line-height: 1.125em;
    }

    h2 {
        font-size: 36px;
        line-height: 1.125em;
    }

    h3 {
        font-size: 32px;
        line-height: 1.125em;
    }

    h4 {
        font-size: 28px;
        line-height: 1.125em;
    }

    h5 {
        font-size: 25px;
        line-height: 1.125em;
    }

    h6 {
        font-size: 22px;
        line-height: 1.25em;
    }

    .display-large {
        font-size: 45px;
        line-height: 1.25em;
    }

    .display-medium {
        font-size: 36px;
        line-height: 1.25em;
    }

    .display-small {
        font-size: 32px;
        line-height: 1.25em;
    }

    .headline-large {
        font-size: 28px;
        line-height: 1.25em;
    }

    .headline-medium {
        font-size: 25px;
        line-height: 1.25em;
    }

    .headline-small {
        font-size: 22px;
        line-height: 1.25em;
    }
    
    .title-large {
        font-size: 20px;
        line-height: 1.25em;
    }
    
    .title-medium {
        font-size: 18px;
        line-height: 1.25em;
    }
}

@media screen and (min-width: 1280px) {
    h1 {
        font-size: 51px;
        line-height: 1.125em;
    }

    h2 {
        font-size: 45px;
        line-height: 1.125em;
    }

    h3 {
        font-size: 36px;
        line-height: 1.125em;
    }

    h4 {
        font-size: 32px;
        line-height: 1.125em;
    }

    h5 {
        font-size: 28px;
        line-height: 1.125em;
    }

    h6 {
        font-size: 25px;
        line-height: 1.125em;
    }

    .display-large {
        font-size: 51px;
        line-height: 1.25em;
    }

    .display-medium {
        font-size: 45px;
        line-height: 1.25em;
    }

    .display-small {
        font-size: 36px;
        line-height: 1.25em;
    }

    .headline-large {
        font-size: 32px;
        line-height: 1.25em;
    }

    .headline-medium {
        font-size: 28px;
        line-height: 1.25em;
    }

    .headline-small {
        font-size: 25px;
        line-height: 1.25em;
    }
    
    .title-large {
        font-size: 22px;
        line-height: 1.25em;
    }
    
    .title-medium {
        font-size: 20px;
        line-height: 1.25em;
    }
}

@media screen and (min-width: 1440px) {
    h1 {
        font-size: 57px;
        line-height: 1.125em;
    }

    h2 {
        font-size: 51px;
        line-height: 1.125em;
    }

    h3 {
        font-size: 45px;
        line-height: 1.125em;
    }

    h4 {
        font-size: 36px;
        line-height: 1.125em;
    }

    h5 {
        font-size: 32px;
        line-height: 1.125em;
    }

    h6 {
        font-size: 28px;
        line-height: 1.125em;
    }

    .display-large {
        font-size: 57px;
        line-height: 1.25em;
    }

    .display-medium {
        font-size: 51px;
        line-height: 1.25em;
    }

    .display-small {
        font-size: 45px;
        line-height: 1.25em;
    }

    .headline-large {
        font-size: 36px;
        line-height: 1.25em;
    }

    .headline-medium {
        font-size: 32px;
        line-height: 1.25em;
    }

    .headline-small {
        font-size: 28px;
        line-height: 1.25em;
    }
    
    .title-large {
        font-size: 25px;
        line-height: 1.25em;
    }
    
    .title-medium {
        font-size: 22px;
        line-height: 1.25em;
    }
}

img {
    height: auto !important;
    max-width: 100%;
}

iframe {
    max-width: 100%;
}

p {
    margin: 0 0 32px 0;
}

a {
    color: inherit;
}

ul,
ol {
   margin: 0 0 32px 0;
}

hr {
    border-color: inherit;
    margin: 0;
}

/* table */
.table {
    display: table;
    height: 100%;
    table-layout: fixed;
    width: 100%;
}

.table-row {
    display: table-row;
}

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

.table-cell.top {
    vertical-align: top;
}

.table-cell.middle {
    vertical-align: middle;
}

.table-cell.bottom {
    vertical-align: bottom;
}

/* layout */
.container {
    margin: 0 auto;
    max-width: 2560px;
    padding-left: 12px;
    padding-right: 12px;
}

@media screen and (min-width: 768px) {
    .container {
        padding-left: 24px;
        padding-right: 24px;
    }
}

.row,
.row-12 {
    display: flex;
    flex-wrap: wrap;
}

.row-12 {
    margin-left: -12px;
    margin-right: -12px;
}

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12 {
    box-sizing: border-box;
}

.col-1 {
    width: 8.3333333333%;
}

.col-2 {
    width: 16.6666666666%;
}

.col-3 {
    width: 25%;
}

.col-4 {
    width: 33.3333333333%;
}

.col-5 {
    width: 41.6666666666%;
}

.col-6 {
    width: 50%;
}

.col-7 {
    width: 58.3333333333%;
}

.col-8 {
    width: 66.6666666666%;
}

.col-9 {
    width: 75%;
}

.col-10 {
    width: 83.3333333333%;
}

.col-11 {
    width: 91.6666666666%;
}

.col-12 {
    width: 100%;
}

.order-1 {
    order: 0;
}

.order-2 {
    order: 1;
}

.order-3 {
    order: 2;
}

.order-4 {
    order: 3;
}

.order-5 {
    order: 4;
}

.order-6 {
    order: 5;
}

.order-7 {
    order: 6;
}

.order-8 {
    order: 7;
}

.order-9 {
    order: 8;
}

.order-10 {
    order: 9;
}

.order-11 {
    order: 10;
}

.order-12 {
    order: 11;
}

.push-1 {
    margin-left: 8.3333333333%;
}

.push-2 {
    margin-left: 16.6666666666%;
}

.push-3 {
    margin-left: 25%;
}

.push-4 {
    margin-left: 33.3333333333%;
}

.push-5 {
    margin-left: 41.6666666666%;
}

.push-6 {
    margin-left: 50%;
}

.push-7 {
    margin-left: 58.3333333333%;
}

.push-8 {
    margin-left: 66.6666666666%;
}

.push-9 {
    margin-left: 75%;
}

.push-10 {
    margin-left: 83.3333333333%;
}

.push-11 {
    margin-left: 91.6666666666%;
}

.gutter-12 {
    padding-left: 12px;
    padding-right: 12px;
}

.margin-64 {
    margin-bottom: 64px;
    min-height: 1px;
}

.margin-32 {
    margin-bottom: 32px;
    min-height: 1px;
}

@media screen and (min-width: 768px) {
    .col-1-768 {
        width: 8.3333333333%;
    }

    .col-2-768 {
        width: 16.6666666666%;
    }

    .col-3-768 {
        width: 25%;
    }

    .col-4-768 {
        width: 33.3333333333%;
    }

    .col-5-768 {
        width: 41.6666666666%;
    }

    .col-6-768 {
        width: 50%;
    }

    .col-7-768 {
        width: 58.3333333333%;
    }

    .col-8-768 {
        width: 66.6666666666%;
    }

    .col-9-768 {
        width: 75%;
    }

    .col-10-768 {
        width: 83.3333333333%;
    }

    .col-11-768 {
        width: 91.6666666666%;
    }

    .col-12-768 {
        width: 100%;
    }
    
    .order-1-768 {
        order: 0;
    }

    .order-2-768 {
        order: 1;
    }

    .order-3-768 {
        order: 2;
    }

    .order-4-768 {
        order: 3;
    }

    .order-5-768 {
        order: 4;
    }

    .order-6-768 {
        order: 5;
    }

    .order-7-768 {
        order: 6;
    }

    .order-8-768 {
        order: 7;
    }

    .order-9-768 {
        order: 8;
    }

    .order-10-768 {
        order: 9;
    }

    .order-11-768 {
        order: 10;
    }

    .order-12-768 {
        order: 11;
    }
    
    .push-0-768 {
        margin-left: 0;
    }

    .push-1-768 {
        margin-left: 8.3333333333%;
    }

    .push-2-768 {
        margin-left: 16.6666666666%;
    }

    .push-3-768 {
        margin-left: 25%;
    }

    .push-4-768 {
        margin-left: 33.3333333333%;
    }

    .push-5-768 {
        margin-left: 41.6666666666%;
    }

    .push-6-768 {
        margin-left: 50%;
    }

    .push-7-768 {
        margin-left: 58.3333333333%;
    }

    .push-8-768 {
        margin-left: 66.6666666666%;
    }

    .push-9-768 {
        margin-left: 75%;
    }

    .push-10-768 {
        margin-left: 83.3333333333%;
    }

    .push-11-768 {
        margin-left: 91.6666666666%;
    }
}

/* lazy */
.lazy {
    opacity: 0;
    transform: translate(0, 32px);
    transition-duration: 1s;
    transition-property: opacity, transform;
}

.lazy.loaded {
    opacity: 1;
    transform: translate(0, 0);
}

/* btn */
@keyframes scrolling {
    0% {
        transform: translateX(0);
    }
    
    100% {
        transform: translateX(-100%);
    }
}

.btn {
    background: #000;
    border: 1px solid #000;
    border-radius: 1em;
    color: #F2F2F2;
    display: flex;
    line-height: 2em;
    margin: 0 auto;
    max-width: 100%;
    overflow: hidden;
    text-decoration: none;
    transition-property: background-color, color;
    transition-duration: 0.25s;
    width: 768px;
}

.btn:hover {
    background: transparent;
    color: #000;
}

.btn div {
    animation: scrolling 15s linear infinite;
    display: flex;
    flex: 0 0 100%;
    gap: 12px;
    justify-content: space-around;
    padding-right: 12px;
    will-change: transform;
}

.btn span {
    white-space: nowrap;
}

/* btn-2 */
.btn-2 {
    border: 1px solid #000;
    border-radius: 0.75em;
    display: inline-block;
    font-family: 'MaisonNeue';
    line-height: 1.5em;
    overflow: hidden;
    padding: 0 1em;
    text-decoration: none;
    text-overflow: ellipsis;
    text-transform: uppercase;
    transition-duration: 0.25s;
    transition-property: background-color, color;
    white-space: nowrap;
}

.btn-2:hover {
    background: #000;
    color: #FFF;
}

/* anchor */
.anchor {
    position: relative;
    top: -6vw;
}

/* header */
.header-holder {
    height: 12vw;
}

@media screen and (min-width: 1024px) {
    .header-holder {
        height: 6vw;
    }
}

.header {
    box-sizing: border-box;
    height: 12vw;
    left: 0;
    opacity: 0;
    padding: 0 12px;
    position: fixed;
    top: 0;
    transition: opacity 0.25s;
    width: 100%;
    z-index: 3;
}

@media screen and (min-width: 1024px) {
    .header {
        height: 6vw;
        padding: 0 24px;
    }
}

.header.active-2 {
    opacity: 1;
}

.header-button {
    border-style: solid;
    border-width: 2px;
    border-radius: 50%;
    box-sizing: border-box;
    height: 8vw;
    left: 50%;
    margin: 2vw 0 0 -4vw;
    overflow: hidden;
    position: absolute;
    top: 0;
    transition: transform 0.25s;
    width: 8vw;
    z-index: 3;
}

@media screen and (min-width: 1024px) {
    .header-button {
        border-width: 4px;
        height: 4vw;
        margin: 1vw 0 0 -2vw;
        width: 4vw;
    }
}

.header-button:after {
    background: #000;
    bottom: 0;
    content: "";
    height: 0;
    left: 0;
    position: absolute;
    transition: height 0.25s;
    width: 100%;
}

.header-button:hover,
.header.active .header-button {
    transform: scale(0.95);
}

.header-button:hover:after,
.header.active .header-button:after {
    height: 100%;
}

.header__0 {
    background: #F6F0EB;
    box-sizing: border-box;
    height: 100%;
    left: 0;
    overflow: hidden;
    padding: 12vw 8.33333%;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 2;
}

@media screen and (min-width: 1024px) {
    .header__0 {
        padding: 6vw 8.33333%;
    }
}

/* main-menu */
.main-menu {
    display: flex;
    font-family: 'PPCirka', sans-serif;
    font-size: 8vw;
    justify-content: space-between;
    line-height: 12vw;
    list-style: none;
    margin: 0;
    padding: 0;
}

@media screen and (min-width: 1024px) {
    .main-menu {
        font-size: 4vw;
        line-height: 6vw;
    }
}

.main-menu a {
    display: block;
    text-decoration: none;
    transition: transform 0.25s;
}

.main-menu a:hover {
    transform: translateY(-0.125em);
}

/*.main-menu a.active {
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 0.125em;
}*/

.main-menu a.active {
    position: relative;
}

.main-menu a.active:after {
    border-top: 2px solid;
    content: "";
    left: 0;
    position: absolute;
    top: 1em;
    width: 100%;
}

/* main-menu-2 */
.main-menu-2 {
    font-family: 'MaisonNeue', sans-serif;
    font-size: 10vh;
    line-height: 1.5em;
    list-style: none;
    margin: 0;
    padding: 0;
    text-transform: uppercase;
}

@media screen and (min-width: 1024px) {
    .main-menu-2 {
        font-size: 20vh;
        line-height: 1em;
    }
}

.main-menu-2 a {
    display: flex;
    justify-content: center;
    opacity: 0;
    text-decoration: none;
    transition-duration: 0.5s;
    transition-property: opacity;
}

.header.active .main-menu-2 a {
    opacity: 1;
}

.main-menu-2 div {
    display: flex;
    justify-content: space-between;
    min-width: min-content;
    transition: width 1s ease-in-out;
    width: 100%;
}

.main-menu-2 a:hover div,
.main-menu-2 a.active div {
    width: 0;
}

/* footer */
.footer {
    padding: 64px 12px 0 12px;
}

@media screen and (min-width: 768px) {
    .footer {
        padding: 128px 24px 0 24px;
    }
}

/* footer-menu */
.footer-menu {
    font-family: 'MaisonNeue', sans-serif;
    list-style: none;
    margin: 0 0 64px 0;
    padding: 0;
    text-align: center;
}

@media screen and (min-width: 1024px) {
    .footer-menu {
        display: flex;
        gap: 24px;
        justify-content: space-between;
    }
}

.footer-menu li {
    margin: 0 0 16px 0;
}

.footer-menu a {
    position: relative;
    text-decoration: none;
}

.footer-menu a:after {
    border-top: 2px solid;
    content: "";
    left: 0;
    position: absolute;
    top: 1em;
    transition: width 0.25s;
    width: 0;
}

.footer-menu a:hover:after {
    width: 100%;
}

/* filter */
.filter {
    background: rgba(255, 255, 255, 0.9);
    box-sizing: border-box;
    height: 100%;
    left: 0;
    overflow: auto;
    padding: 12vw 0;
    position: fixed;
    text-align: center;
    top: 0;
    width: 100%;
    z-index: 3;
}

@media screen and (min-width: 1024px) {
    .filter {
        padding: 6vw 0;
    }
}

.filter__0 {
    height: 8vw;
    margin: 2vw 0 0 -4vw;
    position: absolute;
    right: 12px;
    top: 0;
    width: 8vw;
    z-index: 3;
}

@media screen and (min-width: 1024px) {
    .filter__0 {
        height: 4vw;
        margin: 1vw 0 0 -2vw;
        right: 24px;
        width: 4vw;
    }
}

.filter__0 span {
    height: 2px;
    left: 0;
    margin: -1px 0 0 0;
    position: absolute;
    top: 50%;
    width: 100%;
}

@media screen and (min-width: 1024px) {
    .filter__0 span {
        height: 4px;
        margin: -2px 0 0 0;
    }
}

.filter__0 span:before {
    background: #000;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transform: rotate(45deg);
    width: 100%;
}

.filter__0 span:after {
    background: #000;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transform: rotate(-45deg);
    width: 100%;
}

.filter__1 {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    line-height: 2em;
    margin: 0 auto 32px auto;
    max-width: 1024px;
}

@media screen and (min-width: 768px) {
    .filter__1 {
        gap: 12px;
        margin: 0 auto 64px auto;
    }
}

.filter__1--0 {
}

@media screen and (min-width: 768px) {
    .filter__1--0 {
        font-size: 20px;
    }
}

@media screen and (min-width: 1920px) {
    .filter__1--0 {
        font-size: 24px;
    }
}

.filter__1--1 {
    font-size: 12px;
}

@media screen and (min-width: 768px) {
    .filter__1--1 {
        font-size: 16px;
    }
}

.filter__1 input {
    display: none;
}

.filter__1 label {
    border: 1px solid #000;
    border-radius: 1em;
    display: block;
    font-family: 'MaisonNeue', sans-serif;
    overflow: hidden;
    padding: 0 1em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.filter__1 input:checked ~ label {
    background: #000;
    color: #FFF;
}

.filter__2 {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    line-height: 2em;
    margin: 0 0 32px 0;
}

@media screen and (min-width: 768px) {
    .filter__2 {
        font-size: 20px;
        gap: 12px;
    }
}

@media screen and (min-width: 1920px) {
    .filter__2 {
        font-size: 24px;
    }
}

.filter__2 a {
    border: 1px solid #000;
    border-radius: 1em;
    display: inline-block;
    font-family: 'MaisonNeue', sans-serif;
    padding: 0 1em;
    text-decoration: none;
    text-transform: uppercase;
}

.filter__2 input {
    background: #000;
    border: 1px solid #000;
    border-radius: 1em;
    box-sizing: content-box;
    color: #FFF;
    display: inline-block;
    font-family: 'MaisonNeue', sans-serif;
    height: 2em;
    padding: 0 1em;
    text-transform: uppercase;
}

/* carousel */
.carousel {
    height: 100vh;
    overflow: hidden;
    position: relative;
}

.carousel__0 img {
    height: 100vh !important;
    object-fit: cover;
    width: 100%;
}

.carousel__1 {
    filter: invert(1);
    height: 100% !important;
    left: 0;
    mix-blend-mode: difference;
    object-fit: contain;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 2;
}

/* block */
.block {
    padding: 64px 0 1px 0;
}

@media screen and (min-width: 768px) {
    .block {
        padding: 128px 0 1px 0;
    }
}

/* teaser */
.teaser {
    container-type: inline-size;
    display: block;
    text-decoration: none;
    width: 100%;
}

.teaser__0 {
    margin: 0 0 2% 0;
    overflow: hidden;
    position: relative;
}

.teaser__0--0 {
    padding: 65% 0 0 0;
}

.teaser__0--1 {
    padding: 146% 0 0 0;
}

@media screen and (min-width: 1280px) {
    .teaser__0--1 {
        padding: 142% 0 0 0;
    }
}

.teaser img,
.teaser video {
    height: 100% !important;
    left: 0;
    object-fit: cover;
    position: absolute;
    top: 0;
    transition: transform 0.25s;
    width: 100%;
}

.teaser:hover img,
.teaser:hover video {
    transform: scale(1.05);
}

.teaser h3 {
    transition: transform 0.25s;
}

@media screen and (min-width: 768px) {
    .teaser h3 {
        font-size: 6cqw;
        line-height: 1em;
        margin: 0 0 2% 0;
        min-height: 2em;
    }
}

@media screen and (min-width: 1280px) {
    .teaser h3 {
        font-size: 4cqw;
    }
}

.teaser:hover h3 {
    transform: translateY(12px);
}

.teaser span {
    color: #AFAFAF;
}

/* block-2 */
.block-2 {
    padding: 32px 0 1px 0;
}

@media screen and (min-width: 768px) {
    .block-2 {
        padding: 64px 0 32px 0;
    }
}

/* heading */
.heading {
    font-family: 'MaisonNeue';
    text-transform: uppercase;
}

/* chips */
.chips {
    font-family: 'MaisonNeue';
    line-height: 34px;
    list-style: none;
    margin: 0 0 32px 0;
    padding: 0;
    text-transform: uppercase;
}

@media screen and (min-width: 768px) {
    .chips {
        line-height: 46px;
    }
}

.chips li {
    margin: 0 0 16px 0;
}

.chips span {
    border: 1px solid;
    border-radius: 24px;
    display: inline-block;
    padding: 0 18px;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

@media screen and (min-width: 768px) {
    .chips span {
        border-radius: 24px;
        padding: 0 24px;
    }
}

/* carousel-2 */
.carousel-2 .owl-dots {
    margin: 24px 0 32px 0;
}

.owl-carousel.carousel-2 button.owl-dot {
    border: 1px solid;
    margin: 0 -1px 0 0;
}

.carousel-2 .owl-dot {
    height: 24px;
    transition: background-color 0.25s;
    width: 48px;
}

.carousel-2 .owl-dot:hover {
    background: #000;
}

.carousel-2 .owl-dot.active {
    position: relative;
    top: -23px;
}

/* block-3 */
.block-3 {
    margin: 0 auto 64px auto;
    max-width: 1024px;
    text-align: center;
}

/* logos */
.logos {
    display: flex;
    overflow: hidden;
}

.logos__0 {
    animation-name: scrolling;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    display: flex;
    flex: 0 0 100%;
    padding: 32px 12px 32px 0;
    will-change: transform;
}

/* logo */
.logo {
    box-sizing: border-box;
    padding: 4vw;
    width: 33.33333vw;
}

@media screen and (min-width: 768px) {
    .logo {
        width: 20vw;
    }
}

@media screen and (min-width: 2560px) {
    .logo {
        width: 512px;
    }
}

.logo div {
    padding: 56.25% 0 0 0;
    position: relative;
}

.logo img {
    height: 100% !important;
    left: 0;
    object-fit: contain;
    position: absolute;
    top: 0;
    width: 100%;
}

/* logos-2 */
.logos-2 {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    padding: 32px 0;
}

@media screen and (min-width: 768px) {
    .logos-2 {
        padding: 64px 0;
    }
}

/* logo-2 */
.logo-2 {
    box-sizing: border-box;
    padding: 4%;
    width: 33.33333%;
}

@media screen and (min-width: 768px) {
    .logo-2 {
        width: 20%;
    }
}

.logo-2 div {
    padding: 56.25% 0 0 0;
    position: relative;
}

.logo-2 img {
    height: 100% !important;
    left: 0;
    object-fit: contain;
    position: absolute;
    top: 0;
    width: 100%;
}

/* block-4 */
.block-4 {
    background: #000;
    color: #FFF;
    margin: 0 0 32px 0;
    padding: 32px 0 1px 0;
}

@media screen and (min-width: 768px) {
    .block-4 {
        padding: 64px 0 32px 0;
    }
}

/* block-5 */
.block-5 {
    padding: 32px 0 1px 0;
}

@media screen and (min-width: 768px) {
    .block-5 {
        align-items: flex-end;
        display: flex;
        justify-content: space-between;
        padding: 64px 0 1px 0;
    }
}

.block-5 span {
    color: #AFAFAF;
}

/* teaser-2 */
.teaser-2 {
    position: relative;
}

@media screen and (max-width: 768px) {
    .teaser-2 {
        margin-bottom: 32px;
        margin-left: 0 !important;
        margin-top: 0 !important;
        width: auto !important;
    }
}

/* carousel-3 */
.carousel-3 {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    margin: 0 0 64px 0;
    padding: 128px 0 64px 0;
}

.carousel-3 .owl-dots {
    margin: 64px 0 0 0;
    text-align: center;
}

.carousel-3 .owl-dot {
    border-radius: 50%;
    height: 16px;
    margin: 0 4px 0 0;
    transition-duration: 0.25s;
    transition-property: color, transform;
    width: 16px;
}

.carousel-3 button.owl-dot {
    background: #1A1A1A;
}

.carousel-3 .owl-dot.active {
    transform: translate(0, -24px);
}

.carousel-3 button.owl-dot.active {
    background: #0003FF;
}

/* teaser-3 */
.teaser-3 {
    color: #FFF;
    display: block;
    margin: 0 0 32px 0;
    padding: 65% 0 0 0;
    position: relative;
    text-decoration: none;
}

@media screen and (min-width: 768px) {
    .teaser-3 {
        margin: 0;
    }
}

.teaser-3 img {
    height: 100% !important;
    left: 0;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
}

.teaser-3__0 {
    background: rgba(0, 0, 0, 0.85);
    box-sizing: border-box;
    height: 100%;
    left: 0;
    padding: 24px 32px;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 2;
}

@media screen and (min-width: 768px) {
    .teaser-3__0 {
        opacity: 0;
        transition: opacity 0.25s;
    }
    
    .teaser-3:hover .teaser-3__0 {
        opacity: 1;
    }
}

.teaser-3 h3 {
    margin: 0;
}

.teaser-3 span {
    font-family: 'MaisonNeue';
    text-transform: uppercase;
}

/* teaser-4 */
.teaser-4 {
    container-type: inline-size;
    display: block;
    margin: 0 0 32px 0;
    text-decoration: none;
    width: 100%;
}

@media screen and (min-width: 768px) {
    .teaser-4 {
        margin: 0 0 64px 0;
    }
}

.teaser-4__0 {
    margin: 0 0 2% 0;
    overflow: hidden;
}

.teaser-4 img {
    transition: transform 0.25s;
}

.teaser-4:hover img {
    transform: scale(1.05);
}

.teaser-4__1 {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
    gap: 24px;
    transition: transform 0.25s;
}

.teaser-4:hover .teaser-4__1 {
    transform: translateY(12px);
}

@media screen and (min-width: 768px) {
    .teaser-4 h3 {
        font-size: 9cqw;
        line-height: 1em;
        margin: 0;
    }
}

@media screen and (min-width: 1280px) {
    .teaser-4 h3 {
        font-size: 6cqw;
    }
}

.teaser-4 span {
    border-radius: 0.75em;
    display: block;
    flex-shrink: 0;
    font-family: 'MaisonNeue', sans-serif;
    line-height: 1.5em;
    overflow: hidden;
    padding: 0 12px;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers
 */

.hidden,
[hidden] {
  display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 *
 * 1. For long content, line feeds are not interpreted as spaces and small width
 *    causes content to wrap 1 word per line:
 *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */

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

/*
 * Extends the .visually-hidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.visually-hidden.focusable:active,
.visually-hidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  white-space: inherit;
  width: auto;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
  visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * The use of `table` rather than `block` is only necessary if using
 * `::before` to contain the top-margins of child elements.
 */

.clearfix::before,
.clearfix::after {
  content: "";
  display: table;
}

.clearfix::after {
  clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */
}

@media print,
  (-webkit-min-device-pixel-ratio: 1.25),
  (min-resolution: 1.25dppx),
  (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
  *,
  *::before,
  *::after {
    background: #fff !important;
    color: #000 !important;
    /* Black prints faster */
    box-shadow: none !important;
    text-shadow: none !important;
  }

  a,
  a:visited {
    text-decoration: underline;
  }

  a[href]::after {
    content: " (" attr(href) ")";
  }

  abbr[title]::after {
    content: " (" attr(title) ")";
  }

  /*
   * Don't show links that are fragment identifiers,
   * or use the `javascript:` pseudo protocol
   */
  a[href^="#"]::after,
  a[href^="javascript:"]::after {
    content: "";
  }

  pre {
    white-space: pre-wrap !important;
  }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }
}

