@charset 'UTF-8';
/*
Theme Name: Briefing
Author: Anonymous
Author URI:
Version: 1
Description: Briefing theme for Wordpress
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: briefing
Tags: one-column, two-columns
Theme URI:
*/
/*@import url('https://fonts.googleapis.com/css2?family=Dosis:wght@200;300;400;500;600;700;800&display=swap');*/

/* dosis-200 - vietnamese_latin-ext_latin */
@font-face {
  font-family: 'Dosis';
  font-style: normal;
  font-weight: 200;
  src: url('fonts/dosis-v27-vietnamese_latin-ext_latin-200.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-200.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-200.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-200.woff') format('woff'), /* Modern Browsers */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-200.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-200.svg#Dosis') format('svg'); /* Legacy iOS */
}
/* dosis-300 - vietnamese_latin-ext_latin */
@font-face {
  font-family: 'Dosis';
  font-style: normal;
  font-weight: 300;
  src: url('fonts/dosis-v27-vietnamese_latin-ext_latin-300.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-300.woff') format('woff'), /* Modern Browsers */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-300.svg#Dosis') format('svg'); /* Legacy iOS */
}
/* dosis-regular - vietnamese_latin-ext_latin */
@font-face {
  font-family: 'Dosis';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/dosis-v27-vietnamese_latin-ext_latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-regular.woff') format('woff'), /* Modern Browsers */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-regular.svg#Dosis') format('svg'); /* Legacy iOS */
}
/* dosis-500 - vietnamese_latin-ext_latin */
@font-face {
  font-family: 'Dosis';
  font-style: normal;
  font-weight: 500;
  src: url('fonts/dosis-v27-vietnamese_latin-ext_latin-500.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-500.woff') format('woff'), /* Modern Browsers */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-500.svg#Dosis') format('svg'); /* Legacy iOS */
}
/* dosis-600 - vietnamese_latin-ext_latin */
@font-face {
  font-family: 'Dosis';
  font-style: normal;
  font-weight: 600;
  src: url('fonts/dosis-v27-vietnamese_latin-ext_latin-600.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-600.woff') format('woff'), /* Modern Browsers */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-600.svg#Dosis') format('svg'); /* Legacy iOS */
}
/* dosis-700 - vietnamese_latin-ext_latin */
@font-face {
  font-family: 'Dosis';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/dosis-v27-vietnamese_latin-ext_latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-700.woff') format('woff'), /* Modern Browsers */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-700.svg#Dosis') format('svg'); /* Legacy iOS */
}
/* dosis-800 - vietnamese_latin-ext_latin */
@font-face {
  font-family: 'Dosis';
  font-style: normal;
  font-weight: 800;
  src: url('fonts/dosis-v27-vietnamese_latin-ext_latin-800.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-800.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-800.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-800.woff') format('woff'), /* Modern Browsers */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-800.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/dosis-v27-vietnamese_latin-ext_latin-800.svg#Dosis') format('svg'); /* Legacy iOS */
}


@font-face
{
    font-family: 'icomoon';
    font-weight: normal;
    font-style: normal;

    src: url('fonts/icomoon.eot?8i30ul');
    src: url('fonts/icomoon.eot?8i30ul#iefix') format('embedded-opentype'), url('fonts/icomoon.ttf?8i30ul') format('truetype'), url('fonts/icomoon.woff?8i30ul') format('woff'), url('fonts/icomoon.svg?8i30ul#icomoon') format('svg');
    font-display: block;
}

[class^='icon-'],
[class*=' icon-']
{
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    text-transform: none;

    speak: never;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-star:before
{
    content: '\e917';
}

.icon-star-01:before
{
    content: '\e918';
}

.icon-ico-01:before
{
    content: '\e90c';
}

.icon-ico-02:before
{
    content: '\e90d';
}

.icon-ico-03:before
{
    content: '\e90e';
}

.icon-ico-04:before
{
    content: '\e90f';
}

.icon-ico-05:before
{
    content: '\e910';
}

.icon-ico-06:before
{
    content: '\e911';
}

.icon-ico-07:before
{
    content: '\e912';
}

.icon-ico-08:before
{
    content: '\e913';
}

.icon-ico-09:before
{
    content: '\e914';
}

.icon-ico-10:before
{
    content: '\e915';
}

.icon-ico-11:before
{
    content: '\e916';
}

.icon-clock:before
{
    content: '\e90b';
}

.icon-euro:before
{
    content: '\e908';
}

.icon-food:before
{
    content: '\e909';
}

.icon-home:before
{
    content: '\e90a';
}

.icon-arrow-next:before
{
    content: '\e900';
}

.icon-arrow-prev:before
{
    content: '\e901';
}

.icon-close:before
{
    content: '\e902';
}

.icon-facebook:before
{
    content: '\e903';
}

.icon-instagram:before
{
    content: '\e904';
}

.icon-next:before
{
    content: '\e905';
}

.icon-point:before
{
    content: '\e906';
}

.icon-prev:before
{
    content: '\e907';
}

/* Slick slider styles */
.slider
{
    position: relative;

    display: block;

    box-sizing: border-box;

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

    -webkit-touch-callout: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

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

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
}
.slick-track:before,
.slick-track:after
{
    display: table; 

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none; 
    float: left;

    height: 100%;
    min-height: 1px;
}
[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;
}

.hero-slider
{
    position: relative;

    display: block;

    box-sizing: border-box;

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

    -webkit-touch-callout: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

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

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
}
.slick-track:before,
.slick-track:after
{
    display: table; 

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none; 
    float: left;

    height: 100%;
    min-height: 1px;
}
[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;
}

.instagram-slider
{
    position: relative;

    display: block;

    box-sizing: border-box;

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

    -webkit-touch-callout: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

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

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
}
.slick-track:before,
.slick-track:after
{
    display: table; 

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none; 
    float: left;

    height: 100%;
    min-height: 1px;
}
[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;
}

body.compensate-for-scrollbar
{
    overflow: hidden;
}

.fancybox-active
{
    height: auto;
}

.fancybox-is-hidden
{
    position: absolute !important;
    top: -9999px;
    left: -9999px;

    visibility: hidden; 

    margin: 0;
}

.fancybox-container
{
    position: fixed;
    z-index: 99992; 
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    transform: translateZ(0);

    outline: none;

    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -ms-touch-action: manipulation;
        touch-action: manipulation;
}

.fancybox-container *
{
    box-sizing: border-box;
}

.fancybox-outer,
.fancybox-inner,
.fancybox-bg,
.fancybox-stage
{
    position: absolute;
    top: 0; 
    right: 0;
    bottom: 0;
    left: 0;
}

.fancybox-outer
{
    overflow-y: auto; 

    -webkit-overflow-scrolling: touch;
}

.fancybox-bg
{
    transition-timing-function: cubic-bezier(.47, 0, .74, .71); 
    transition-duration: inherit;
    transition-property: opacity;

    opacity: 0;
    background: #1e1e1e;
}

.fancybox-is-open .fancybox-bg
{
    transition-timing-function: cubic-bezier(.22, .61, .36, 1); 

    opacity: .9;
}

.fancybox-infobar,
.fancybox-toolbar,
.fancybox-caption,
.fancybox-navigation .fancybox-button
{
    position: absolute;
    z-index: 99997; 

    visibility: hidden;

    transition: opacity .25s ease, visibility 0s ease .25s;

    opacity: 0;

    direction: ltr;
}

.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-toolbar .fancybox-toolbar,
.fancybox-show-caption .fancybox-caption,
.fancybox-show-nav .fancybox-navigation .fancybox-button
{
    visibility: visible; 

    transition: opacity .25s ease 0s, visibility 0s ease 0s;

    opacity: 1;
}

.fancybox-infobar
{
    font-size: 13px;
    line-height: 44px;

    top: 0;
    left: 0;

    min-width: 44px;
    height: 44px;
    padding: 0 10px;

    -webkit-user-select: none;
        -ms-user-select: none;
            user-select: none; 
    pointer-events: none;

    color: #ccc;

    -webkit-font-smoothing: subpixel-antialiased;
    mix-blend-mode: difference;
    -webkit-touch-callout: none;
}

.fancybox-toolbar
{
    top: 0; 
    right: 0;
}

.fancybox-stage
{
    z-index: 99994; 

    overflow: visible;

    transform: translateZ(0);

    direction: ltr;
}

.fancybox-is-open .fancybox-stage
{
    overflow: hidden;
}

.fancybox-slide
{
    position: absolute;
    z-index: 99994; 
    top: 0;
    left: 0;
    /* Using without prefix would break IE11 */

    display: none;
    overflow: auto;

    width: 100%;
    height: 100%;
    padding: 44px;

    transition-property: transform, opacity;
    text-align: center;
    white-space: normal;

    outline: none;

    -webkit-backface-visibility: hidden;
    -webkit-overflow-scrolling: touch;
}

.fancybox-slide::before
{
    font-size: 0;

    display: inline-block;

    width: 0; 
    height: 100%;

    content: '';
    vertical-align: middle;
}

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--previous,
.fancybox-slide--current,
.fancybox-slide--next
{
    display: block;
}

.fancybox-slide--image
{
    overflow: hidden;

    padding: 44px 0;
}

.fancybox-slide--image::before
{
    display: none;
}

.fancybox-slide--html
{
    padding: 6px;
}

.fancybox-content
{
    position: relative;

    display: inline-block;
    overflow: auto;

    max-width: 100%;
    margin: 0;
    padding: 44px;

    text-align: left;
    vertical-align: middle; 

    background: #fff;

    -webkit-overflow-scrolling: touch;
}

.fancybox-slide--image .fancybox-content
{
    position: absolute;
    z-index: 99995; 
    top: 0;
    left: 0;

    overflow: visible;

    max-width: none;
    padding: 0;

    -webkit-user-select: none;
        -ms-user-select: none;
            user-select: none;
    transition-property: transform, opacity;
    transform-origin: top left;
    animation-timing-function: cubic-bezier(.5, 0, .14, 1);

    background: transparent;
    background-repeat: no-repeat;
    background-size: 100% 100%;

    -webkit-backface-visibility: hidden;
}

.fancybox-can-zoomOut .fancybox-content
{
    cursor: zoom-out;
}

.fancybox-can-zoomIn .fancybox-content
{
    cursor: zoom-in;
}

.fancybox-can-swipe .fancybox-content,
.fancybox-can-pan .fancybox-content
{
    cursor: grab;
}

.fancybox-is-grabbing .fancybox-content
{
    cursor: grabbing;
}

.fancybox-container [data-selectable='true']
{
    cursor: text;
}

.fancybox-image,
.fancybox-spaceball
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%; 
    max-width: none;
    height: 100%;
    max-height: none;
    margin: 0;
    padding: 0;

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

    border: 0;
    background: transparent;
}

.fancybox-spaceball
{
    z-index: 1;
}

.fancybox-slide--video .fancybox-content,
.fancybox-slide--map .fancybox-content,
.fancybox-slide--pdf .fancybox-content,
.fancybox-slide--iframe .fancybox-content
{
    overflow: visible;

    width: 100%; 
    height: 100%;
    padding: 0;
}

.fancybox-slide--video .fancybox-content
{
    background: #000;
}

.fancybox-slide--map .fancybox-content
{
    background: #e5e3df;
}

.fancybox-slide--iframe .fancybox-content
{
    background: #fff;
}

.fancybox-video,
.fancybox-iframe
{
    display: block;
    overflow: hidden;

    width: 100%; 
    height: 100%;
    margin: 0;
    padding: 0;

    border: 0;
    background: transparent;
}

/* Fix iOS */
.fancybox-iframe
{
    position: absolute;
    top: 0; 
    left: 0;
}

.fancybox-error
{
    width: 100%; 
    max-width: 400px;
    padding: 40px;

    cursor: default;

    background: #fff;
}

.fancybox-error p
{
    font-size: 16px;
    line-height: 20px;

    margin: 0;
    padding: 0; 

    color: #444;
}

/* Buttons */
.fancybox-button
{
    position: relative;

    display: inline-block;
    visibility: inherit;

    width: 44px; 
    height: 44px;
    margin: 0;
    padding: 10px;

    cursor: pointer;
    transition: color .2s;
    vertical-align: top;

    border: 0;
    border-radius: 0;
    background: rgba(30, 30, 30, .6);
    box-shadow: none;
}

.fancybox-button,
.fancybox-button:visited,
.fancybox-button:link
{
    color: #ccc;
}

.fancybox-button:hover
{
    color: #fff;
}

.fancybox-button:focus
{
    outline: none;
}

.fancybox-button.fancybox-focus
{
    outline: 1px dotted;
}

.fancybox-button[disabled],
.fancybox-button[disabled]:hover
{
    cursor: default;

    color: #888;
    outline: none;
}

/* Fix IE11 */
.fancybox-button div
{
    height: 100%;
}

.fancybox-button svg
{
    position: relative;

    display: block;
    overflow: visible;

    width: 100%; 
    height: 100%;
}

.fancybox-button svg path
{
    fill: currentColor;
    stroke-width: 0;
}

.fancybox-button--play svg:nth-child(2),
.fancybox-button--fsenter svg:nth-child(2)
{
    display: none;
}

.fancybox-button--pause svg:nth-child(1),
.fancybox-button--fsexit svg:nth-child(1)
{
    display: none;
}

.fancybox-progress
{
    position: absolute;
    z-index: 99998; 
    top: 0;
    right: 0;
    left: 0;

    height: 2px;

    transition-timing-function: linear;
    transition-property: transform;
    transform: scaleX(0);
    transform-origin: 0;

    background: #ff5268;
}

/* Close button on the top right corner of html content */
.fancybox-close-small
{
    position: absolute;
    z-index: 401; 
    top: -44px;
    right: -12px;

    padding: 8px;

    cursor: pointer;

    opacity: .8;
    color: #ccc;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.fancybox-close-small:hover
{
    opacity: 1; 
    color: #fff;
}

.fancybox-slide--html .fancybox-close-small
{
    top: 0; 
    right: 0;

    padding: 10px;

    color: currentColor;
}

.fancybox-slide--image.fancybox-is-scaling .fancybox-content
{
    overflow: hidden;
}

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small
{
    display: none;
}

/* Navigation arrows */
.fancybox-navigation .fancybox-button
{
    position: absolute;
    top: calc(50% - 50px);

    width: 70px; 
    height: 100px;

    opacity: 0;
    background-clip: content-box;
}

.fancybox-navigation .fancybox-button div
{
    padding: 7px;
}

.fancybox-navigation .fancybox-button--arrow_left
{
    left: 0;
    left: env(safe-area-inset-left);

    padding: 31px 26px 31px 6px;
}

.fancybox-navigation .fancybox-button--arrow_right
{
    right: 0;
    right: env(safe-area-inset-right); 

    padding: 31px 6px 31px 26px;
}

/* Caption */
.fancybox-caption
{
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;

    z-index: 99996; 
    right: 0;
    bottom: 0;
    left: 0;

    padding: 75px 44px 25px 44px;

    text-align: center;
    pointer-events: none;

    color: #eee;
    background: linear-gradient(to top, rgba(0, 0, 0, .85) 0%, rgba(0, 0, 0, .3) 50%, rgba(0, 0, 0, .15) 65%, rgba(0, 0, 0, .075) 75.5%, rgba(0, 0, 0, .037) 82.85%, rgba(0, 0, 0, .019) 88%, rgba(0, 0, 0, 0) 100%);
}

.fancybox-caption--separate
{
    margin-top: -50px;
}

.fancybox-caption__body
{
    overflow: auto;

    max-height: 50vh;

    pointer-events: all;
}

.fancybox-caption a,
.fancybox-caption a:link,
.fancybox-caption a:visited
{
    text-decoration: none; 

    color: #ccc;
}

.fancybox-caption a:hover
{
    text-decoration: underline; 

    color: #fff;
}

/* Loading indicator */
.fancybox-loading
{
    position: absolute;
    z-index: 99999; 
    top: 50%;
    left: 50%;

    width: 50px;
    height: 50px;
    margin: -25px 0 0 -25px;
    padding: 0;

    animation: fancybox-rotate 1s linear infinite;

    opacity: .7;
    border: 4px solid #888;
    border-bottom-color: #fff;
    border-radius: 50%;
    background: transparent;
}

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

/* Transition effects */
.fancybox-animated
{
    transition-timing-function: cubic-bezier(0, 0, .25, 1);
}

/* transitionEffect: slide */
.fancybox-fx-slide.fancybox-slide--previous
{
    transform: translate3d(-100%, 0, 0); 

    opacity: 0;
}

.fancybox-fx-slide.fancybox-slide--next
{
    transform: translate3d(100%, 0, 0); 

    opacity: 0;
}

.fancybox-fx-slide.fancybox-slide--current
{
    transform: translate3d(0, 0, 0); 

    opacity: 1;
}

/* transitionEffect: fade */
.fancybox-fx-fade.fancybox-slide--previous,
.fancybox-fx-fade.fancybox-slide--next
{
    transition-timing-function: cubic-bezier(.19, 1, .22, 1); 

    opacity: 0;
}

.fancybox-fx-fade.fancybox-slide--current
{
    opacity: 1;
}

/* transitionEffect: zoom-in-out */
.fancybox-fx-zoom-in-out.fancybox-slide--previous
{
    transform: scale3d(1.5, 1.5, 1.5); 

    opacity: 0;
}

.fancybox-fx-zoom-in-out.fancybox-slide--next
{
    transform: scale3d(.5, .5, .5); 

    opacity: 0;
}

.fancybox-fx-zoom-in-out.fancybox-slide--current
{
    transform: scale3d(1, 1, 1); 

    opacity: 1;
}

/* transitionEffect: rotate */
.fancybox-fx-rotate.fancybox-slide--previous
{
    transform: rotate(-360deg); 

    opacity: 0;
}

.fancybox-fx-rotate.fancybox-slide--next
{
    transform: rotate(360deg); 

    opacity: 0;
}

.fancybox-fx-rotate.fancybox-slide--current
{
    transform: rotate(0deg); 

    opacity: 1;
}

/* transitionEffect: circular */
.fancybox-fx-circular.fancybox-slide--previous
{
    transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0); 

    opacity: 0;
}

.fancybox-fx-circular.fancybox-slide--next
{
    transform: scale3d(0, 0, 0) translate3d(100%, 0, 0); 

    opacity: 0;
}

.fancybox-fx-circular.fancybox-slide--current
{
    transform: scale3d(1, 1, 1) translate3d(0, 0, 0); 

    opacity: 1;
}

/* transitionEffect: tube */
.fancybox-fx-tube.fancybox-slide--previous
{
    transform: translate3d(-100%, 0, 0) scale(.1) skew(-10deg);
}

.fancybox-fx-tube.fancybox-slide--next
{
    transform: translate3d(100%, 0, 0) scale(.1) skew(10deg);
}

.fancybox-fx-tube.fancybox-slide--current
{
    transform: translate3d(0, 0, 0) scale(1);
}

/* Styling for Small-Screen Devices */
@media all and (max-height: 576px)
{
    .fancybox-slide
    {
        padding-right: 6px; 
        padding-left: 6px;
    }
    .fancybox-slide--image
    {
        padding: 6px 0;
    }
    .fancybox-close-small
    {
        right: -6px;
    }
    .fancybox-slide--image .fancybox-close-small
    {
        top: 0;
        right: 0;

        width: 36px; 
        height: 36px;
        padding: 6px;

        opacity: 1;
        color: #f2f4f6;
        background: #4e4e4e;
    }
    .fancybox-caption
    {
        padding-right: 12px; 
        padding-left: 12px;
    }
}

/* Share */
.fancybox-share
{
    max-width: 90%;
    padding: 30px;

    text-align: center; 

    border-radius: 3px;
    background: #f4f4f4;
}

.fancybox-share h1
{
    font-size: 35px;
    font-weight: 700;

    margin: 0 0 20px 0; 

    color: #222;
}

.fancybox-share p
{
    margin: 0;
    padding: 0;
}

.fancybox-share__button
{
    font-size: 14px;
    font-weight: 700;
    line-height: 40px;

    display: inline-block;

    min-width: 130px;
    margin: 0 5px 10px 5px;
    padding: 0 15px;

    -webkit-user-select: none;
        -ms-user-select: none;
            user-select: none;
    transition: all .2s;
    white-space: nowrap; 
    text-decoration: none;

    border: 0;
    border-radius: 3px;
}

.fancybox-share__button:visited,
.fancybox-share__button:link
{
    color: #fff;
}

.fancybox-share__button:hover
{
    text-decoration: none;
}

.fancybox-share__button--fb
{
    background: #3b5998;
}

.fancybox-share__button--fb:hover
{
    background: #344e86;
}

.fancybox-share__button--pt
{
    background: #bd081d;
}

.fancybox-share__button--pt:hover
{
    background: #aa0719;
}

.fancybox-share__button--tw
{
    background: #1da1f2;
}

.fancybox-share__button--tw:hover
{
    background: #0d95e8;
}

.fancybox-share__button svg
{
    position: relative;
    top: -1px;

    width: 25px; 
    height: 25px;
    margin-right: 7px;

    vertical-align: middle;
}

.fancybox-share__button svg path
{
    fill: #fff;
}

.fancybox-share__input
{
    font-size: 14px;

    width: 100%; 
    margin: 10px 0 0 0;
    padding: 10px 15px;

    color: #5d5b5b;
    border: 0;
    border-bottom: 1px solid #d7d7d7;
    border-radius: 0;
    outline: none;
    background: transparent;
}

/* Thumbs */
.fancybox-thumbs
{
    position: absolute;
    z-index: 99995; 
    top: 0;
    right: 0;
    bottom: 0;

    display: none;

    width: 212px;
    margin: 0;
    padding: 2px 2px 4px 2px;

    background: #ddd;

    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.fancybox-thumbs-x
{
    overflow-x: auto;
    overflow-y: hidden;
}

.fancybox-show-thumbs .fancybox-thumbs
{
    display: block;
}

.fancybox-show-thumbs .fancybox-inner
{
    right: 212px;
}

.fancybox-thumbs__list
{
    font-size: 0;

    position: absolute;
    position: relative;

    overflow-x: hidden;
    overflow-y: auto;

    width: 100%; 
    height: 100%;
    margin: 0;
    padding: 0;

    list-style: none;

    white-space: nowrap;
}

.fancybox-thumbs-x .fancybox-thumbs__list
{
    overflow: hidden;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar
{
    width: 7px;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track
{
    border-radius: 10px;
    background: #fff;
    box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb
{
    border-radius: 10px; 
    background: #2a2a2a;
}

.fancybox-thumbs__list a
{
    position: relative;

    float: left;
    overflow: hidden;

    width: 100px; 
    max-width: calc(50% - 4px);
    height: 75px;
    max-height: calc(100% - 8px);
    margin: 2px;
    padding: 0;

    cursor: pointer;

    outline: none;
    background-color: rgba(0, 0, 0, .1);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
}

.fancybox-thumbs__list a::before
{
    position: absolute;
    z-index: 99991; 
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    content: '';
    transition: all .2s cubic-bezier(.25, .46, .45, .94);

    opacity: 0;
    border: 6px solid #ff5268;
}

.fancybox-thumbs__list a:focus::before
{
    opacity: .5;
}

.fancybox-thumbs__list a.fancybox-thumbs-active::before
{
    opacity: 1;
}

/* Styling for Small-Screen Devices */
@media all and (max-width: 576px)
{
    .fancybox-thumbs
    {
        width: 110px;
    }
    .fancybox-show-thumbs .fancybox-inner
    {
        right: 110px;
    }
    .fancybox-thumbs__list a
    {
        max-width: calc(100% - 10px);
    }
}

.tagcloud,
.twocolumns ul:not([class]),
.nav-drop .primary-menu,
.nav-drop .primary-menu li > ul,
.slick-dots,
.social,
.item-post .list-tags,
.info-list,
.user-contact,
.stub-menu,
ol:not([class]),
ol:not([class]) ul:not([class]),
.list-threecolumns,
.menu-footer
{
    margin: 0;
    padding: 0;

    list-style: none;
}

.clearfix:after,
dl:after,
.widget:after,
.search-form:after,
.post-password-form:after,
.search-form p:after,
.post-password-form p:after,
[id='nav']:after,
.columns-map__col:after,
.container:after,
ol:not([class]) > li:after,
ol:not([class]) ul:not([class]) > li:after
{
    display: block;
    clear: both; 

    content: '';
}

.ellipsis
{
    /* 2 */
    overflow: hidden; 

    white-space: nowrap;
    /* 1 */
    text-overflow: ellipsis;
}

.df-row
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
@media (min-width: 480px)
{
    .df-row.df-rr-ph
    {
            flex-direction: row-reverse; 

        -ms-flex-direction: row-reverse;
    }
}
@media (min-width: 480px)
{
    .df-row.df-aic-ph
    {
        -ms-flex-align: center;
        align-items: center;
    }
}
@media (min-width: 768px)
{
    .df-row.df-rr-sm
    {
            flex-direction: row-reverse; 

        -ms-flex-direction: row-reverse;
    }
}
@media (min-width: 768px)
{
    .df-row.df-aic-sm
    {
        -ms-flex-align: center;
        align-items: center;
    }
}
@media (min-width: 992px)
{
    .df-row.df-rr-md
    {
            flex-direction: row-reverse; 

        -ms-flex-direction: row-reverse;
    }
}
@media (min-width: 992px)
{
    .df-row.df-aic-md
    {
        -ms-flex-align: center;
        align-items: center;
    }
}
@media (min-width: 480px)
{
    .df-row .col-ph-1
    {
        max-width: calc(100% / 12 * 1); 

        -ms-flex: 1 0 calc(100% / 12 * 1);
            flex: 1 0 calc(100% / 12 * 1);
    }
}
@media (min-width: 480px)
{
    .df-row .col-ph-2
    {
        max-width: calc(100% / 12 * 2); 

        -ms-flex: 1 0 calc(100% / 12 * 2);
            flex: 1 0 calc(100% / 12 * 2);
    }
}
@media (min-width: 480px)
{
    .df-row .col-ph-3
    {
        max-width: calc(100% / 12 * 3); 

        -ms-flex: 1 0 calc(100% / 12 * 3);
            flex: 1 0 calc(100% / 12 * 3);
    }
}
@media (min-width: 480px)
{
    .df-row .col-ph-4
    {
        max-width: calc(100% / 12 * 4); 

        -ms-flex: 1 0 calc(100% / 12 * 4);
            flex: 1 0 calc(100% / 12 * 4);
    }
}
@media (min-width: 480px)
{
    .df-row .col-ph-5
    {
        max-width: calc(100% / 12 * 5); 

        -ms-flex: 1 0 calc(100% / 12 * 5);
            flex: 1 0 calc(100% / 12 * 5);
    }
}
@media (min-width: 480px)
{
    .df-row .col-ph-6
    {
        max-width: calc(100% / 12 * 6); 

        -ms-flex: 1 0 calc(100% / 12 * 6);
            flex: 1 0 calc(100% / 12 * 6);
    }
}
@media (min-width: 480px)
{
    .df-row .col-ph-7
    {
        max-width: calc(100% / 12 * 7); 

        -ms-flex: 1 0 calc(100% / 12 * 7);
            flex: 1 0 calc(100% / 12 * 7);
    }
}
@media (min-width: 480px)
{
    .df-row .col-ph-8
    {
        max-width: calc(100% / 12 * 8); 

        -ms-flex: 1 0 calc(100% / 12 * 8);
            flex: 1 0 calc(100% / 12 * 8);
    }
}
@media (min-width: 480px)
{
    .df-row .col-ph-9
    {
        max-width: calc(100% / 12 * 9); 

        -ms-flex: 1 0 calc(100% / 12 * 9);
            flex: 1 0 calc(100% / 12 * 9);
    }
}
@media (min-width: 480px)
{
    .df-row .col-ph-10
    {
        max-width: calc(100% / 12 * 10); 

        -ms-flex: 1 0 calc(100% / 12 * 10);
            flex: 1 0 calc(100% / 12 * 10);
    }
}
@media (min-width: 480px)
{
    .df-row .col-ph-11
    {
        max-width: calc(100% / 12 * 11); 

        -ms-flex: 1 0 calc(100% / 12 * 11);
            flex: 1 0 calc(100% / 12 * 11);
    }
}
@media (min-width: 480px)
{
    .df-row .col-ph-12
    {
        max-width: calc(100% / 12 * 12); 

        -ms-flex: 1 0 calc(100% / 12 * 12);
            flex: 1 0 calc(100% / 12 * 12);
    }
}
@media (min-width: 480px)
{
    .df-row .col-offset-ph-0
    {
        margin-left: calc(100% / 12 * 0);
    }
}
@media (min-width: 480px)
{
    .df-row .col-offset-ph-1
    {
        margin-left: calc(100% / 12 * 1);
    }
}
@media (min-width: 480px)
{
    .df-row .col-offset-ph-2
    {
        margin-left: calc(100% / 12 * 2);
    }
}
@media (min-width: 480px)
{
    .df-row .col-offset-ph-3
    {
        margin-left: calc(100% / 12 * 3);
    }
}
@media (min-width: 480px)
{
    .df-row .col-offset-ph-4
    {
        margin-left: calc(100% / 12 * 4);
    }
}
@media (min-width: 480px)
{
    .df-row .col-offset-ph-5
    {
        margin-left: calc(100% / 12 * 5);
    }
}
@media (min-width: 480px)
{
    .df-row .col-offset-ph-6
    {
        margin-left: calc(100% / 12 * 6);
    }
}
@media (min-width: 480px)
{
    .df-row .col-offset-ph-7
    {
        margin-left: calc(100% / 12 * 7);
    }
}
@media (min-width: 480px)
{
    .df-row .col-offset-ph-8
    {
        margin-left: calc(100% / 12 * 8);
    }
}
@media (min-width: 480px)
{
    .df-row .col-offset-ph-9
    {
        margin-left: calc(100% / 12 * 9);
    }
}
@media (min-width: 480px)
{
    .df-row .col-offset-ph-10
    {
        margin-left: calc(100% / 12 * 10);
    }
}
@media (min-width: 480px)
{
    .df-row .col-offset-ph-11
    {
        margin-left: calc(100% / 12 * 11);
    }
}
@media (min-width: 768px)
{
    .df-row .col-sm-1
    {
        max-width: calc(100% / 12 * 1); 

        -ms-flex: 1 0 calc(100% / 12 * 1);
            flex: 1 0 calc(100% / 12 * 1);
    }
}
@media (min-width: 768px)
{
    .df-row .col-sm-2
    {
        max-width: calc(100% / 12 * 2); 

        -ms-flex: 1 0 calc(100% / 12 * 2);
            flex: 1 0 calc(100% / 12 * 2);
    }
}
@media (min-width: 768px)
{
    .df-row .col-sm-3
    {
        max-width: calc(100% / 12 * 3); 

        -ms-flex: 1 0 calc(100% / 12 * 3);
            flex: 1 0 calc(100% / 12 * 3);
    }
}
@media (min-width: 768px)
{
    .df-row .col-sm-4
    {
        max-width: calc(100% / 12 * 4); 

        -ms-flex: 1 0 calc(100% / 12 * 4);
            flex: 1 0 calc(100% / 12 * 4);
    }
}
@media (min-width: 768px)
{
    .df-row .col-sm-5
    {
        max-width: calc(100% / 12 * 5); 

        -ms-flex: 1 0 calc(100% / 12 * 5);
            flex: 1 0 calc(100% / 12 * 5);
    }
}
@media (min-width: 768px)
{
    .df-row .col-sm-6
    {
        max-width: calc(100% / 12 * 6); 

        -ms-flex: 1 0 calc(100% / 12 * 6);
            flex: 1 0 calc(100% / 12 * 6);
    }
}
@media (min-width: 768px)
{
    .df-row .col-sm-7
    {
        max-width: calc(100% / 12 * 7); 

        -ms-flex: 1 0 calc(100% / 12 * 7);
            flex: 1 0 calc(100% / 12 * 7);
    }
}
@media (min-width: 768px)
{
    .df-row .col-sm-8
    {
        max-width: calc(100% / 12 * 8); 

        -ms-flex: 1 0 calc(100% / 12 * 8);
            flex: 1 0 calc(100% / 12 * 8);
    }
}
@media (min-width: 768px)
{
    .df-row .col-sm-9
    {
        max-width: calc(100% / 12 * 9); 

        -ms-flex: 1 0 calc(100% / 12 * 9);
            flex: 1 0 calc(100% / 12 * 9);
    }
}
@media (min-width: 768px)
{
    .df-row .col-sm-10
    {
        max-width: calc(100% / 12 * 10); 

        -ms-flex: 1 0 calc(100% / 12 * 10);
            flex: 1 0 calc(100% / 12 * 10);
    }
}
@media (min-width: 768px)
{
    .df-row .col-sm-11
    {
        max-width: calc(100% / 12 * 11); 

        -ms-flex: 1 0 calc(100% / 12 * 11);
            flex: 1 0 calc(100% / 12 * 11);
    }
}
@media (min-width: 768px)
{
    .df-row .col-sm-12
    {
        max-width: calc(100% / 12 * 12); 

        -ms-flex: 1 0 calc(100% / 12 * 12);
            flex: 1 0 calc(100% / 12 * 12);
    }
}
@media (min-width: 768px)
{
    .df-row .col-offset-sm-0
    {
        margin-left: calc(100% / 12 * 0);
    }
}
@media (min-width: 768px)
{
    .df-row .col-offset-sm-1
    {
        margin-left: calc(100% / 12 * 1);
    }
}
@media (min-width: 768px)
{
    .df-row .col-offset-sm-2
    {
        margin-left: calc(100% / 12 * 2);
    }
}
@media (min-width: 768px)
{
    .df-row .col-offset-sm-3
    {
        margin-left: calc(100% / 12 * 3);
    }
}
@media (min-width: 768px)
{
    .df-row .col-offset-sm-4
    {
        margin-left: calc(100% / 12 * 4);
    }
}
@media (min-width: 768px)
{
    .df-row .col-offset-sm-5
    {
        margin-left: calc(100% / 12 * 5);
    }
}
@media (min-width: 768px)
{
    .df-row .col-offset-sm-6
    {
        margin-left: calc(100% / 12 * 6);
    }
}
@media (min-width: 768px)
{
    .df-row .col-offset-sm-7
    {
        margin-left: calc(100% / 12 * 7);
    }
}
@media (min-width: 768px)
{
    .df-row .col-offset-sm-8
    {
        margin-left: calc(100% / 12 * 8);
    }
}
@media (min-width: 768px)
{
    .df-row .col-offset-sm-9
    {
        margin-left: calc(100% / 12 * 9);
    }
}
@media (min-width: 768px)
{
    .df-row .col-offset-sm-10
    {
        margin-left: calc(100% / 12 * 10);
    }
}
@media (min-width: 768px)
{
    .df-row .col-offset-sm-11
    {
        margin-left: calc(100% / 12 * 11);
    }
}
@media (min-width: 992px)
{
    .df-row .col-md-1
    {
        max-width: calc(100% / 12 * 1); 

        -ms-flex: 1 0 calc(100% / 12 * 1);
            flex: 1 0 calc(100% / 12 * 1);
    }
}
@media (min-width: 992px)
{
    .df-row .col-md-2
    {
        max-width: calc(100% / 12 * 2); 

        -ms-flex: 1 0 calc(100% / 12 * 2);
            flex: 1 0 calc(100% / 12 * 2);
    }
}
@media (min-width: 992px)
{
    .df-row .col-md-3
    {
        max-width: calc(100% / 12 * 3); 

        -ms-flex: 1 0 calc(100% / 12 * 3);
            flex: 1 0 calc(100% / 12 * 3);
    }
}
@media (min-width: 992px)
{
    .df-row .col-md-4
    {
        max-width: calc(100% / 12 * 4); 

        -ms-flex: 1 0 calc(100% / 12 * 4);
            flex: 1 0 calc(100% / 12 * 4);
    }
}
@media (min-width: 992px)
{
    .df-row .col-md-5
    {
        max-width: calc(100% / 12 * 5); 

        -ms-flex: 1 0 calc(100% / 12 * 5);
            flex: 1 0 calc(100% / 12 * 5);
    }
}
@media (min-width: 992px)
{
    .df-row .col-md-6
    {
        max-width: calc(100% / 12 * 6); 

        -ms-flex: 1 0 calc(100% / 12 * 6);
            flex: 1 0 calc(100% / 12 * 6);
    }
}
@media (min-width: 992px)
{
    .df-row .col-md-7
    {
        max-width: calc(100% / 12 * 7); 

        -ms-flex: 1 0 calc(100% / 12 * 7);
            flex: 1 0 calc(100% / 12 * 7);
    }
}
@media (min-width: 992px)
{
    .df-row .col-md-8
    {
        max-width: calc(100% / 12 * 8); 

        -ms-flex: 1 0 calc(100% / 12 * 8);
            flex: 1 0 calc(100% / 12 * 8);
    }
}
@media (min-width: 992px)
{
    .df-row .col-md-9
    {
        max-width: calc(100% / 12 * 9); 

        -ms-flex: 1 0 calc(100% / 12 * 9);
            flex: 1 0 calc(100% / 12 * 9);
    }
}
@media (min-width: 992px)
{
    .df-row .col-md-10
    {
        max-width: calc(100% / 12 * 10); 

        -ms-flex: 1 0 calc(100% / 12 * 10);
            flex: 1 0 calc(100% / 12 * 10);
    }
}
@media (min-width: 992px)
{
    .df-row .col-md-11
    {
        max-width: calc(100% / 12 * 11); 

        -ms-flex: 1 0 calc(100% / 12 * 11);
            flex: 1 0 calc(100% / 12 * 11);
    }
}
@media (min-width: 992px)
{
    .df-row .col-md-12
    {
        max-width: calc(100% / 12 * 12); 

        -ms-flex: 1 0 calc(100% / 12 * 12);
            flex: 1 0 calc(100% / 12 * 12);
    }
}
@media (min-width: 992px)
{
    .df-row .col-offset-md-0
    {
        margin-left: calc(100% / 12 * 0);
    }
}
@media (min-width: 992px)
{
    .df-row .col-offset-md-1
    {
        margin-left: calc(100% / 12 * 1);
    }
}
@media (min-width: 992px)
{
    .df-row .col-offset-md-2
    {
        margin-left: calc(100% / 12 * 2);
    }
}
@media (min-width: 992px)
{
    .df-row .col-offset-md-3
    {
        margin-left: calc(100% / 12 * 3);
    }
}
@media (min-width: 992px)
{
    .df-row .col-offset-md-4
    {
        margin-left: calc(100% / 12 * 4);
    }
}
@media (min-width: 992px)
{
    .df-row .col-offset-md-5
    {
        margin-left: calc(100% / 12 * 5);
    }
}
@media (min-width: 992px)
{
    .df-row .col-offset-md-6
    {
        margin-left: calc(100% / 12 * 6);
    }
}
@media (min-width: 992px)
{
    .df-row .col-offset-md-7
    {
        margin-left: calc(100% / 12 * 7);
    }
}
@media (min-width: 992px)
{
    .df-row .col-offset-md-8
    {
        margin-left: calc(100% / 12 * 8);
    }
}
@media (min-width: 992px)
{
    .df-row .col-offset-md-9
    {
        margin-left: calc(100% / 12 * 9);
    }
}
@media (min-width: 992px)
{
    .df-row .col-offset-md-10
    {
        margin-left: calc(100% / 12 * 10);
    }
}
@media (min-width: 992px)
{
    .df-row .col-offset-md-11
    {
        margin-left: calc(100% / 12 * 11);
    }
}
@media (min-width: 768px)
{
    .df-row
    {
        margin: 0 -15px;
    }
}

html
{
    box-sizing: border-box;
}

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

*
{
    max-height: 1000000px;
}

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

body
{
    font: 300 16px/1.3 'Dosis', 'Arial', 'Helvetica Neue', 'Helvetica', sans-serif;

    min-width: 320px;
    margin: 0; 

    color: #000;
    background: #fafafa;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
@media (min-width: 768px)
{
    body
    {
        font-size: 14px;
        line-height: 1.3;
    }
}

img
{
    max-width: 100%;
    height: auto;

    vertical-align: top;
}

.gm-style img
{
    max-width: none;
}

@media (max-width: 991px)
{
    iframe
    {
        width: 100%;
    }
}

.resize-active *
{
    transition: none !important;
}

ul,
ol,
dl,
p,
h1,
h2,
h3,
h4,
h5,
h6,
address,
form,
table,
blockquote,
applet,
embed,
object,
iframe,
frameset
{
    margin: 0 0 20px;
}

blockquote
{
    margin-left: 0; 
    padding-left: 10px;

    border-left: 4px solid #ddd;
}

table
{
    border-collapse: collapse;
}

th,
td
{
    padding: 3px;

    text-align: left;
    vertical-align: top; 

    border: 1px solid #ddd;
}

th
{
    text-align: center;
    vertical-align: middle;
}

ul,
ol
{
    padding-left: 20px;
}

ul ul,
ul ol,
ol ul,
ol ol
{
    margin: 0; 
    padding-left: 20px;
}

ul
{
    list-style-type: disc;
}

dl dt
{
    font-weight: bold; 

    float: left;
    clear: left;

    padding-right: .3em;
}

dl dd
{
    overflow: hidden;
}

pre
{
    overflow: auto; 

    max-width: 100%;
}

form,
fieldset
{
    margin: 0;
    padding: 0;

    border-style: none;
}

select,
input[type='text'],
input[type='tel'],
input[type='email'],
input[type='search'],
input[type='password'],
input[type='url'],
input[type='date'],
input[type='number'],
textarea
{
    font-family: 'Dosis', 'Arial', 'Helvetica Neue', 'Helvetica', sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 20px;

    display: block;

    box-sizing: border-box;
    width: 100%;
    padding: 14px 16px;

    color: #555857; 
    border: 1px solid #eee;
    -webkit-border-radius: 0;
            border-radius: 0;

    -webkit-appearance: none;
}
select:not(textarea),
input[type='text']:not(textarea),
input[type='tel']:not(textarea),
input[type='email']:not(textarea),
input[type='search']:not(textarea),
input[type='password']:not(textarea),
input[type='url']:not(textarea),
input[type='date']:not(textarea),
input[type='number']:not(textarea),
textarea:not(textarea)
{
    height: 50px;
}
select:focus,
input[type='text']:focus,
input[type='tel']:focus,
input[type='email']:focus,
input[type='search']:focus,
input[type='password']:focus,
input[type='url']:focus,
input[type='date']:focus,
input[type='number']:focus,
textarea:focus
{
    border-color: #000; 
    outline: none;
}
select::-webkit-input-placeholder,
input[type='text']::-webkit-input-placeholder,
input[type='tel']::-webkit-input-placeholder,
input[type='email']::-webkit-input-placeholder,
input[type='search']::-webkit-input-placeholder,
input[type='password']::-webkit-input-placeholder,
input[type='url']::-webkit-input-placeholder,
input[type='date']::-webkit-input-placeholder,
input[type='number']::-webkit-input-placeholder,
textarea::-webkit-input-placeholder
{
    color: #555857;
}
select::-moz-placeholder,
input[type='text']::-moz-placeholder,
input[type='tel']::-moz-placeholder,
input[type='email']::-moz-placeholder,
input[type='search']::-moz-placeholder,
input[type='password']::-moz-placeholder,
input[type='url']::-moz-placeholder,
input[type='date']::-moz-placeholder,
input[type='number']::-moz-placeholder,
textarea::-moz-placeholder
{
    opacity: 1;
    color: #555857;
}
select:-moz-placeholder,
input[type='text']:-moz-placeholder,
input[type='tel']:-moz-placeholder,
input[type='email']:-moz-placeholder,
input[type='search']:-moz-placeholder,
input[type='password']:-moz-placeholder,
input[type='url']:-moz-placeholder,
input[type='date']:-moz-placeholder,
input[type='number']:-moz-placeholder,
textarea:-moz-placeholder
{
    color: #555857;
}
select:-ms-input-placeholder,
input[type='text']:-ms-input-placeholder,
input[type='tel']:-ms-input-placeholder,
input[type='email']:-ms-input-placeholder,
input[type='search']:-ms-input-placeholder,
input[type='password']:-ms-input-placeholder,
input[type='url']:-ms-input-placeholder,
input[type='date']:-ms-input-placeholder,
input[type='number']:-ms-input-placeholder,
textarea:-ms-input-placeholder
{
    color: #555857;
}
select.placeholder,
input[type='text'].placeholder,
input[type='tel'].placeholder,
input[type='email'].placeholder,
input[type='search'].placeholder,
input[type='password'].placeholder,
input[type='url'].placeholder,
input[type='date'].placeholder,
input[type='number'].placeholder,
textarea.placeholder
{
    color: #555857;
}

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

textarea
{
    overflow: auto;

    height: 151px;
    min-height: 151px; 

    resize: vertical;
    vertical-align: top;
}

button,
input[type='button'],
input[type='reset'],
input[type='file'],
input[type='submit']
{
    font-family: 'Dosis', 'Arial', 'Helvetica Neue', 'Helvetica', sans-serif; 
    font-size: 14px;
    font-weight: 600;
    line-height: 18px;

    height: 50px;
    padding: 16px 25px;

    cursor: pointer;
    transition: background .5s ease-in-out;

    color: #fff;
    border: 0;
    -webkit-border-radius: 0;
            border-radius: 0;
    outline: none;
    background: #4f6e69;

    -webkit-appearance: none;
}
@media (max-width: 767px)
{
    button,
    input[type='button'],
    input[type='reset'],
    input[type='file'],
    input[type='submit']
    {
        font-size: 16px;
    }
}
button:hover,
input[type='button']:hover,
input[type='reset']:hover,
input[type='file']:hover,
input[type='submit']:hover
{
    color: #fff; 
    background: #829894;
}

.row span.wpcf7-list-item
{
    margin: 0;
}

.wpcf7-not-valid
{
    border-color: #f25656 !important;
}
.wpcf7-not-valid + span:before
{
    border-color: #f25656 !important;
}
.wpcf7-not-valid input + span:before
{
    border-color: #f25656 !important;
}

.hidden
{
    display: none;
}

.page-template-template-team .team-active
{
    color: #fdb913;
}

.wpcf7-form .wpcf7-not-valid-tip
{
    display: block;
}

.nav-links,
.navigation,
.navigation-comments,
.navigation-single
{
    display: -ms-flexbox;
    display: flex;

    margin-bottom: 20px; 

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-align: center;
    align-items: center;
}

.nav-links .next,
.nav-links .prev,
.navigation .next,
.navigation .prev,
.navigation-comments .next,
.navigation-comments .prev,
.navigation-single .next a,
.navigation-single .prev a
{
    font-size: 20px;
    line-height: 24px; 

    padding: 20px 50px;

    transition: all .5s;

    color: #fff;
    border-color: #4f6e69;
    background: #4f6e69;
}
.nav-links .next:focus,
.nav-links .prev:focus,
.navigation .next:focus,
.navigation .prev:focus,
.navigation-comments .next:focus,
.navigation-comments .prev:focus,
.navigation-single .next a:focus,
.navigation-single .prev a:focus,
.nav-links .next:hover,
.nav-links .prev:hover,
.navigation .next:hover,
.navigation .prev:hover,
.navigation-comments .next:hover,
.navigation-comments .prev:hover,
.navigation-single .next a:hover,
.navigation-single .prev a:hover
{
    color: #fff;
    border-color: #3a504d; 
    background: #3a504d;
}

[id='content']
{
    padding-top: 40px;
    padding-bottom: 40px;
}
@media (min-width: 768px)
{
    [id='content']
    {
        width: 70%; 
        padding-top: 70px;
        padding-bottom: 100px;
    }
}
[id='content']:only-child
{
    width: 100%;
}

[id='sidebar']
{
    padding-top: 30px;
    padding-bottom: 30px;
}
@media (min-width: 768px)
{
    [id='sidebar']
    {
        width: 30%;
        padding-left: 30px;
    }
}

[id='twocolumns']
{
    padding: 30px 0;
}
@media (min-width: 768px)
{
    [id='twocolumns']
    {
        display: -ms-flexbox;
        display: flex;

        padding: 50px 8%;
    }
}
@media (min-width: 992px)
{
    [id='twocolumns']
    {
        padding: 80px 12%;
    }
}
@media (min-width: 768px)
{
    [id='twocolumns'] [id='content']
    {
        padding-top: 0;
        padding-bottom: 0;
    }
}

.widget
{
    margin-bottom: 20px;
}
.widget select
{
    width: 100%; 
    min-width: 150px;
}

.search-form,
.post-password-form
{
    display: -ms-flexbox;
    display: flex; 

    margin-bottom: 10px;
}
.search-form label,
.post-password-form label
{
    display: block;
}
.search-form input,
.post-password-form input
{
    float: left;

    margin-right: 5px;
}
@media (min-width: 768px)
{
    [id='sidebar'] .search-form input,
    [id='sidebar']
    .post-password-form input
    {
        width: 100%;
        margin: 0 0 5px;
    }
}
.search-form input[type='submit'],
.post-password-form input[type='submit']
{
    margin: 0;
}

.nav-links,
.navigation,
.navigation-comments
{
    position: relative; 

    width: 100%;
}
.nav-links .screen-reader-text,
.navigation .screen-reader-text,
.navigation-comments .screen-reader-text
{
    position: absolute;
    left: -99999px;
}
.nav-links .page-numbers,
.navigation .page-numbers,
.navigation-comments .page-numbers
{
    margin: 0 3px;
}
.nav-links .page-numbers:first-child,
.navigation .page-numbers:first-child,
.navigation-comments .page-numbers:first-child
{
    margin-left: 0;
}
.nav-links .page-numbers:last-child,
.navigation .page-numbers:last-child,
.navigation-comments .page-numbers:last-child
{
    margin-right: 0;
}
.nav-links .next,
.nav-links .prev,
.navigation .next,
.navigation .prev,
.navigation-comments .next,
.navigation-comments .prev
{
    max-width: 49%; 

    transition: background .5s ease-in-out;
}
@media (max-width: 767px)
{
    .nav-links .next,
    .nav-links .prev,
    .navigation .next,
    .navigation .prev,
    .navigation-comments .next,
    .navigation-comments .prev
    {
        font-size: 0;
    }
    .nav-links .next:after,
    .nav-links .prev:after,
    .navigation .next:after,
    .navigation .prev:after,
    .navigation-comments .next:after,
    .navigation-comments .prev:after
    {
        font-size: 20px; 

        content: '»';
    }
}
@media (max-width: 767px)
{
    .nav-links .prev:after,
    .navigation .prev:after,
    .navigation-comments .prev:after
    {
        content: '«';
    }
}

.navigation-single
{
    width: 100%;
}
.navigation-single .next,
.navigation-single .prev
{
    display: -ms-flexbox;
    display: flex;

    max-width: 49%;

    -ms-flex-align: center;
    align-items: center;
}
.navigation-single .next a,
.navigation-single .prev a
{
    display: block; 

    transition: background .5s ease-in-out;
}
@media (max-width: 767px)
{
    .navigation-single .next a,
    .navigation-single .prev a
    {
        font-size: 0;
    }
    .navigation-single .next a:after,
    .navigation-single .prev a:after
    {
        font-size: 20px; 

        content: '»';
    }
}
@media (max-width: 767px)
{
    .navigation-single .prev a:after
    {
        content: '«';
    }
}

.navigation-single
{
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: stretch;
    align-items: stretch;
}
.navigation-single .next,
.navigation-single .prev
{
    display: -ms-flexbox;
    display: flex;

    max-width: 49%;
    margin: 0;
    padding: 0;

    border: 0; 

    -ms-flex-align: center;
    align-items: center;
}
.navigation-single .next a,
.navigation-single .prev a
{
    padding: 20px 50px;

    border: #000;
}

.comment-form label
{
    display: block;

    padding-bottom: 4px;
}

.comment-form input,
.comment-form textarea
{
    width: 100%; 
    margin: 0 4px 0 0;
}
@media (min-width: 768px)
{
    .comment-form input,
    .comment-form textarea
    {
        max-width: 300px;
    }
}
.comment-form input[type='submit'],
.comment-form textarea[type='submit']
{
    display: block;

    width: auto;
}

.comment-form textarea
{
    overflow: auto;

    height: 120px;
    min-height: 120px; 
    margin: 0;
}

.commentlist
{
    margin: 0 0 1.2em;
}
.commentlist .edit-link
{
    margin: 0;
}
.commentlist .avatar-holder
{
    float: left;

    margin: 0 1.2em 4px 0;
}

.commentlist-item .commentlist-item
{
    padding: 0;
}
@media (min-width: 768px)
{
    .commentlist-item .commentlist-item
    {
        padding: 0 0 0 2em;
    }
}

.comment,
.commentlist-holder
{
    overflow: hidden;
}

.commentlist-item .commentlist-item,
.commentlist-item + .commentlist-item
{
    padding-top: 20px;
}

.widget_calendar th,
.widget_calendar td
{
    text-align: center;
}

.widget_calendar #prev
{
    text-align: left;
}

.widget_calendar #next
{
    text-align: right;
}

#wp-calendar
{
    width: 100%;
}

.wp-caption
{
    clear: both;

    max-width: 100%;
    margin-bottom: 20px;
    padding: 4px;

    text-align: center; 

    border: #000;
}
.wp-caption img
{
    margin-bottom: 4px;
}
.wp-caption p
{
    margin: 0;
}

.aligncenter
{
    margin: 0 auto 20px;
}

img.aligncenter
{
    display: block;

    margin: 0 auto;
}

.alignleft
{
    float: left;

    margin: 0 1.2em 4px 0;
}

.alignright
{
    float: right;

    margin: 0 0 4px 1.2em;
}

.mejs-container
{
    margin-bottom: 20px;
}

.wp-caption-text,
.gallery,
.alignnone,
.gallery-caption,
.sticky,
.bypostauthor
{
    height: auto;
}

.gallery
{
    display: -ms-flexbox;
    display: flex;

    width: 100%; 

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.gallery .gallery-item
{
    margin: 0;
    padding: 0 10px 10px;
}
.gallery .gallery-item dt
{
    float: none;

    width: 100%;
    margin: 0 0 10px;
    padding: 0;
}

.gallery-columns-2 .gallery-item
{
    width: 50%; 
    max-width: 50%;
}

.gallery-columns-3 .gallery-item
{
    width: 33.33%; 
    max-width: 33.33%;
}

.tagcloud
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.comment-list .comment-body
{
    margin-bottom: 20px;
}

.comment-author img
{
    margin-right: 10px;
}

h1,
.h1
{
    font-size: 30px;
}

h2,
.h2
{
    font-size: 30px;
}

h3,
.h3
{
    font-size: 16px;
}

h4,
.h4
{
    font-size: 16px;
}

h5,
.h5
{
    font-size: 14px;
}

h6,
.h6
{
    font-size: 14px;
}

@media (min-width: 768px)
{
    h1,
    .h1
    {
        font-size: 40px;
    }
    h2,
    .h2
    {
        font-size: 28px;
    }
    h3,
    .h3
    {
        font-size: 18px;
    }
    h4,
    .h4
    {
        font-size: 16px;
    }
    h5,
    .h5
    {
        font-size: 18px;
    }
    h6,
    .h6
    {
        font-size: 16px;
    }
}

@media (min-width: 992px)
{
    h1,
    .h1
    {
        font-size: 40px;
    }
    h2,
    .h2
    {
        font-size: 36px;
    }
    h3,
    .h3
    {
        font-size: 20px;
    }
    h4,
    .h4
    {
        font-size: 16px;
    }
    h5,
    .h5
    {
        font-size: 18px;
    }
    h6,
    .h6
    {
        font-size: 16px;
    }
}

@media (min-width: 1300px)
{
    h1,
    .h1
    {
        font-size: 40px;
    }
    h2,
    .h2
    {
        font-size: 36px;
    }
    h3,
    .h3
    {
        font-size: 20px;
    }
    h4,
    .h4
    {
        font-size: 16px;
    }
    h5,
    .h5
    {
        font-size: 18px;
    }
    h6,
    .h6
    {
        font-size: 16px;
    }
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6,
.h
{
    font-family: 'Dosis', 'Arial', 'Helvetica Neue', 'Helvetica', sans-serif;
    font-weight: bold;

    margin: 0 0 10px; 

    color: inherit;
}
@media (min-width: 768px)
{
    h1,
    .h1,
    h2,
    .h2,
    h3,
    .h3,
    h4,
    .h4,
    h5,
    .h5,
    h6,
    .h6,
    .h
    {
        margin-bottom: 20px;
    }
}

h2,
.h2
{
    font-weight: 600;
    line-height: 1.17;

    margin: 0 0 20px;

    color: #2c302f;
}
@media (min-width: 768px)
{
    h2,
    .h2
    {
        margin-bottom: 30px;
    }
}
@media (max-width: 767px)
{
    h2 br,
    .h2 br
    {
        display: none;
    }
}
@media (min-width: 992px)
{
    .thank_you h2,
    .thank_you
    .h2
    {
        font-size: 28px;
    }
}

h3,
.h3
{
    font-weight: 600;
    line-height: 1.2;

    margin: 0 0 10px;

    color: #2c302f;
}
@media (min-width: 768px)
{
    h3,
    .h3
    {
        margin-bottom: 20px;
    }
}
h3 > a,
.h3 > a
{
    color: inherit;
}
h3 > a:hover,
.h3 > a:hover
{
    color: #4f6e69;
}

h4,
.h4
{
    font-weight: 600; 
    line-height: 1.2;

    margin: 0 0 10px;
}
h4 > a,
.h4 > a
{
    color: inherit;
}
h4 > a:hover,
.h4 > a:hover
{
    color: #4f6e69;
}

p
{
    margin: 0 0 13px;
}
@media (min-width: 768px)
{
    p
    {
        margin: 0 0 17px;
    }
}

a
{
    text-decoration: none; 

    color: #007bff;
}
a:hover,
a:focus
{
    text-decoration: none; 

    color: #000;
}

a[href*='mailto:']
{
    word-wrap: break-word;
}

strong,
b
{
    font-weight: 500;
}

.more
{
    color: #4f6e69;
}
.more b
{
    font-weight: 600;
}
.more span
{
    position: relative;
    top: 1px;

    margin: 0 0 0 6px;
}

.twocolumns ul:not([class])
{
    margin-bottom: 38px;
}
.twocolumns ul:not([class]) > li
{
    position: relative;

    margin-bottom: 10px; 
    padding: 0 0 0 8px;
}
.twocolumns ul:not([class]) > li:before
{
    position: absolute;
    top: 0;
    left: 0; 

    content: '\2022';
}

.twocolumns p + h4
{
    margin-top: 30px;
}
@media (min-width: 768px)
{
    .twocolumns p + h4
    {
        margin-top: 42px;
    }
}

.twocolumns h4
{
    font-size: 18px;

    margin-bottom: 14px;
}

.twocolumns h5
{
    font-size: 14px;
    font-weight: 600; 

    margin: 0;
}

.twocolumns strong,
.twocolumns b
{
    font-weight: 600;
}

[id='header']
{
    position: relative;
    z-index: 10000;

    min-height: 55px; 

    background: #829894;
}
@media (min-width: 768px)
{
    [id='header']
    {
        min-height: 153px;
    }
}

.header-transparent [id='header'],
.home [id='header']
{
    position: absolute;
    top: 0;
    right: 0;
    left: 0;

    background: transparent;
}
.header-transparent [id='header']:after,
.home [id='header']:after
{
    position: absolute;
    right: -100px;
    bottom: 100%;
    left: -100px;

    height: 20px;

    content: '';

    opacity: .4; 
    box-shadow: 0 30px 40px 0 #000;
}
@media (min-width: 768px)
{
    .header-transparent [id='header']:after,
    .home [id='header']:after
    {
        height: 100px;

        box-shadow: 0 30px 100px 0 #000;
    }
}

.header-holder
{
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    padding: 15px;

    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media (min-width: 768px)
{
    .header-holder
    {
        padding: 40px 29px;
    }
}
@media (min-width: 992px)
{
    .header-holder
    {
        padding: 56px 60px;
    }
}

.logo
{
    position: relative;
    z-index: 2;

    width: 170px;
    min-width: 170px;
    margin-right: 20px;
    padding: 5px 0;
}
@media (min-width: 768px)
{
    .logo
    {
        width: 214px;
        min-width: 214px; 
        padding: 0;
    }
}

.nav-drop
{
    font-size: 14px;
    line-height: 1.64; 

    position: fixed;
    z-index: 2;
    top: 0;
    right: 0;
    bottom: 0;

    visibility: hidden;

    width: 290px;
    padding: 45px 15px 10px;

    transition: all .5s ease-in-out;
    transform: translateX(290px);

    opacity: 1;
    color: #555857;
    background: #fafafa;
}
@media (min-width: 768px)
{
    .nav-drop
    {
        width: 400px;
        padding: 83px 40px 10px;

        transform: translateX(400px);
    }
}
@media (min-width: 992px)
{
    .nav-drop
    {
        width: 531px;
        padding: 83px 76px 10px;

        transform: translateX(531px);
    }
}
.nav-active .nav-drop
{
    visibility: visible;

    transition: transform .5s; 
    transform: translateX(0);

    opacity: 1;
}
.nav-active .nav-drop:before
{
    position: absolute;
    top: 0;
    right: 100%;
    bottom: 0;

    width: 100vw;

    content: '';

    opacity: .5; 
    background: #000;
}
.nav-drop .primary-menu
{
    font-size: 24px;
    font-weight: 600;
    line-height: 1.2;

    margin-bottom: 40px;
}
@media (min-width: 768px)
{
    .nav-drop .primary-menu
    {
        font-size: 34px; 

        margin-bottom: 90px;
    }
}
.nav-drop .primary-menu > li
{
    margin-bottom: 10px;
}
@media (min-width: 768px)
{
    .nav-drop .primary-menu > li
    {
        margin-bottom: 30px;
    }
}
.nav-drop .primary-menu li
{
    position: relative;

    list-style: none;
}
.nav-drop .primary-menu li.active a
{
    text-decoration: underline;
}
.nav-drop .primary-menu li:hover > a
{
    text-decoration: underline;
}
.nav-drop .primary-menu li:hover > ul
{
    display: block;
}
.nav-drop .primary-menu li > ul
{
    z-index: 2; 
    top: 100%;
    left: 0;

    display: none;

    width: 100%;

    background: #fafafa;
}
.nav-drop .primary-menu li > ul li
{
    padding: 0 10px;
}
.nav-drop a
{
    color: inherit;
}
.nav-drop .social-box
{
    margin-bottom: 30px;

    color: #555857;
}
@media (min-width: 768px)
{
    .nav-drop .social-box
    {
        margin-bottom: 79px;
    }
}
.nav-drop .social-box a
{
    color: #555857;
}
.nav-drop .social-box a:hover
{
    opacity: .7;
}
.nav-drop .social-box .social
{
    font-size: 17px;
}
.nav-drop .social-box .social > li
{
    padding: 0 9px;
}
.nav-drop .social-title
{
    font-size: 14px;

    text-transform: none;
}
.nav-drop .nav-footer
{
    padding-bottom: 60px;
}
.nav-drop .nav-footer p
{
    margin: 0;
}
.nav-drop address
{
    font-style: normal; 

    margin: 0;
    padding: 0;
}
.nav-drop__hold
{
    overflow: auto; 

    max-height: calc(100vh - 55px);
}
@media (min-width: 768px)
{
    .nav-drop__hold
    {
        max-height: calc(100vh - 93px);
    }
}

.nav-opener
{
    font-size: 0;
    line-height: 0;

    position: relative;
    z-index: 1000;

    display: block;

    width: 26px;
    height: 22px;
    margin: 3px 17px 0 0;
}
@media (min-width: 768px)
{
    .nav-opener
    {
        width: 43px;
        height: 36px; 
        margin: 5px 29px 0 0;
    }
}
.nav-active .nav-opener
{
    position: fixed;
    top: 10px;
    right: 13px;
}
@media (min-width: 768px)
{
    .nav-active .nav-opener
    {
        top: 55px;
        right: 60px;
    }
}
.nav-opener:before,
.nav-opener:after,
.nav-opener__line
{
    position: absolute;
    top: 10px;
    right: 0;
    left: 0;

    height: 2px;
    margin-top: -1px; 

    transition: transform .5s ease-in-out;

    background: #fff;
}
@media (min-width: 768px)
{
    .nav-opener:before,
    .nav-opener:after,
    .nav-opener__line
    {
        top: 19px; 

        height: 3px;
        margin-top: -2px;
    }
}
.nav-opener:before,
.nav-opener:after
{
    top: 1px; 

    content: '';
}
@media (min-width: 768px)
{
    .nav-opener:before,
    .nav-opener:after
    {
        top: 2px;
    }
}
.nav-opener:after
{
    top: 20px;
}
@media (min-width: 768px)
{
    .nav-opener:after
    {
        top: 35px;
    }
}
.nav-opener:hover
{
    opacity: .9;
}
.nav-active .nav-opener .nav-opener__line
{
    opacity: 0;
}
.nav-active .nav-opener:after,
.nav-active .nav-opener:before
{
    top: 16px;
    right: 0;
    left: 0;

    transform: rotate(45deg);

    background: #555857;
}
.nav-active .nav-opener:after
{
    transform: rotate(-45deg);
}
.nav-opener__txt
{
    font-size: 10px;
    font-weight: 500;
    line-height: 1;

    position: absolute;
    top: 50%;
    right: -16px;

    transform: translateY(-50%) rotate(180deg); 
    -ms-writing-mode: tb-rl;
    text-transform: uppercase;

    color: #fff;

        writing-mode: tb-rl;
}
@media (min-width: 768px)
{
    .nav-opener__txt
    {
        font-size: 16px;

        right: -28px;
    }
}
.nav-active .nav-opener__txt
{
    visibility: hidden;
}

.resize-active .nav-drop,
.resize-active .nav-drop > ul
{
    transition: none !important;
}

.btn
{
    font-size: 20px;
    font-weight: 500; 
    line-height: 24px;

    display: inline-block;

    padding: 20px 50px;

    transition: all .5s;
    text-align: center;
    vertical-align: top;

    color: #fff;
    border: 1px solid #000;
    border-color: #000;
    border-radius: 0;
    background: #000;
}
.btn:focus,
.btn:hover
{
    color: #fff;
    border-color: black; 
    background: black;
}
@media (max-width: 767px)
{
    .btn
    {
        font-size: 16px;
        line-height: 20px;

        padding: 9px 16px;
    }
}
.btn-default
{
    transition: all .5s; 

    color: #fff;
    border-color: #000;
    background: #000;
}
.btn-default:focus,
.btn-default:hover
{
    color: #fff;
    border-color: black; 
    background: black;
}
.btn-primary
{
    transition: all .5s; 

    color: #fff;
    border-color: #4f6e69;
    background: #4f6e69;
}
.btn-primary:focus,
.btn-primary:hover
{
    color: #fff;
    border-color: #3a504d; 
    background: #3a504d;
}
.btn-warning
{
    transition: all .5s; 

    color: #fff;
    border-color: #ffc107;
    background: #ffc107;
}
.btn-warning:focus,
.btn-warning:hover
{
    color: #fff;
    border-color: #d39e00; 
    background: #d39e00;
}
.btn-light
{
    transition: all .5s; 

    color: #fff;
    border-color: #fff;
    background: transparent;
}
.btn-light:focus,
.btn-light:hover
{
    color: #000;
    border-color: #e6e6e6; 
    background: #e6e6e6;
}
.btn-white
{
    transition: all .5s; 

    color: #2c302f;
    border-color: #fff;
    background: #fff;
}
.btn-white:focus,
.btn-white:hover
{
    color: #fff;
    border-color: #2c302f; 
    background: #2c302f;
}
.btn-sm
{
    font-size: 14px; 

    min-width: 160px;
    padding: 12px 20px;

    border-radius: 0;
}
.btn-decor_01
{
    position: relative;
}
.btn-decor_01:after
{
    position: absolute;
    top: 5px;
    left: -6px;

    width: 32px;
    height: 117px;

    content: '';
    pointer-events: none;

    background: url('images/u_decor-01.svg');
    background-size: cover;
}

.btn-group
{
    display: -ms-flexbox;
    display: flex;
}
.btn-group > .btn + .btn
{
    border-left: 0;
}

.btn-wrap
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.btn-wrap .btn
{
    max-width: 50%; 
    margin: 0 0 10px;
}
.btn-wrap .btn + .btn
{
    margin-left: 20px;
}

.hero-section
{
    position: relative;
}
.hero-section .down
{
    font-size: 14px;
    font-weight: 800;
    line-height: 1.3;

    position: absolute;
    z-index: 10;
    bottom: 27px;
    left: 50%;

    transform: translateX(-50%);

    color: #fff;
}
.hero-section .down:hover
{
    opacity: .7;
}
.hero-section .down:before
{
    position: absolute;
    top: -46px;
    left: 50%;

    width: 45px;
    height: 41px;

    content: '';
    transform: translateX(-50%);

    background: url('images/arrow-circle.png') no-repeat;
}
.hero-section .down:after
{
    position: absolute;
    top: 0;
    top: -30px;
    left: 0;
    left: 50%;

    width: 8px;
    height: 8px;

    content: '';
    transform: translateX(-50%) rotate(45deg);
    animation: bounce 2.5s linear .1s infinite alternate; 

    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
}
.hero-section .social-box
{
    position: absolute;
    z-index: 10; 
    right: 14px;
    bottom: 36px;
}
@media (min-width: 992px)
{
    .hero-section .social-box
    {
        right: 24px;
    }
}
.hero-section .slick-dots
{
    position: absolute;
    z-index: 10;
    bottom: 40px; 
    left: 24px;
}
@media (min-width: 992px)
{
    .hero-section .slick-dots
    {
        left: 34px;
    }
}
.hero-section .social a:hover
{
    opacity: .7;
}
.hero-section .time
{
    font-size: 14px; 

    position: relative;

    display: block;

    padding-top: 27px;
}
@media (min-width: 992px)
{
    .hero-section .time
    {
        margin-bottom: -46px;
    }
}
.hero-section .time:before
{
    font-family: 'icomoon', 'Arial', 'Helvetica Neue', 'Helvetica', sans-serif;

    margin-right: 9px; 

    content: '\e90b';
}

@keyframes bounce
{
    0%
    {
        top: -25px;
    }
    25%
    {
        top: -35px;
    }
    50%
    {
        top: -25px;
    }
    75%
    {
        top: -35px;
    }
    100%
    {
        top: -25px;
    }
}

.slick-dots
{
    display: -ms-flexbox;
    display: flex;
}
@media (max-width: 767px)
{
    .slick-dots
    {
        display: none !important;
    }
}
.slick-dots > li
{
    padding: 0 6px;
}
.slick-dots button
{
    font-size: 0;
    line-height: 0; 

    width: 11px;
    height: 11px;
    margin: 0;
    padding: 0;

    transition: all .5s;

    border: 1px solid #fff;
    border-radius: 50%;
    background: transparent;
}
.slick-dots button:hover
{
    background: #fff;
}
.slick-dots .slick-active button
{
    background: #fff;
}

.item-hero
{
    position: relative;

    display: -ms-flexbox;
    display: flex;

    width: 100%;

    background-position: 50% 50%; 
    background-size: cover;
}
.item-hero .image-bg
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    background-position: 50% 50%; 
    background-size: cover;
}
@media (max-width: 767px)
{
    .item-hero .image-bg__des
    {
        display: none !important;
    }
}
@media (min-width: 768px)
{
    .item-hero .image-bg__mob
    {
        display: none !important;
    }
}
.item-hero .container
{
    max-width: 1150px;
}
.item-hero__hold
{
    line-height: 1.22; 

    position: relative;

    width: 100%;
    min-height: 270px;
    padding: 70px 0 20px;

    color: #fff;
}
@media (min-width: 480px)
{
    .item-hero__hold
    {
        min-height: 400px;
        padding: 90px 0 20px;
    }
}
@media (min-width: 768px)
{
    .item-hero__hold
    {
        font-size: 28px;

        display: -ms-flexbox;
        display: flex;
            flex-direction: column;

        min-height: 100vh;
        padding: 110px 0; 

        -ms-flex-direction: column;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}
@media (min-width: 768px) and (pointer: coarse)
{
    .item-hero__hold
    {
        min-height: calc(100vh - 60px);
    }
}
.item-hero__body
{
    width: 100%;
    max-width: 600px;
}
@media (min-width: 768px)
{
    .item-hero__body
    {
        max-width: 480px; 
        padding: 21px 0 0;
    }
}
@media (min-width: 992px)
{
    .item-hero__body
    {
        max-width: 630px;
    }
}
.item-hero__title
{
    font-size: 30px; 
    font-weight: 600;
    line-height: 1.3;

    margin-bottom: 8px;
}
@media (min-width: 768px)
{
    .item-hero__title
    {
        font-size: 50px;

        margin-bottom: 20px;
    }
}
@media (min-width: 992px)
{
    .item-hero__title
    {
        font-size: 70px;

        margin-bottom: 28px;
    }
}
.item-hero p
{
    margin-bottom: 20px;
}
@media (min-width: 768px)
{
    .item-hero p
    {
        margin-bottom: 80px;
    }
}

.social-box
{
    display: -ms-flexbox;
    display: flex;

    text-transform: uppercase; 

    color: #fff;

    -ms-flex-align: center;
    align-items: center;
}

.social-title
{
    font-size: 14px;
    font-weight: 500;
    line-height: 18px; 

    text-transform: uppercase;
}

.social
{
    font-size: 21px;
    line-height: 21px; 

    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: center;
    align-items: center;
}
.social > li
{
    padding: 0 16px;
}
.social a
{
    color: #fff;
}

.info-slider-wrap
{
    padding: 27px 0 64px;
}
@media (min-width: 768px)
{
    .info-slider-wrap
    {
        padding: 158px 0 229px;
    }
}
@media (min-width: 768px)
{
    .info-slider-wrap .info-heading p
    {
        margin-bottom: 20px;
    }
}
@media (min-width: 768px)
{
    .info-slider-wrap .columns
    {
        display: -ms-flexbox;
        display: flex;
            flex-direction: row-reverse;

        -ms-flex-direction: row-reverse;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}
@media (min-width: 768px)
{
    .info-slider-wrap .columns__col:first-child
    {
        width: 38.4%;
    }
}
@media (min-width: 768px)
{
    .info-slider-wrap .columns__col:last-child
    {
        width: 50%;
    }
}
.info-slider-wrap .button-wrap
{
    padding-top: 20px;
}
.info-slider-wrap .info__visual
{
    padding-top: 80px;

    text-align: center;
}
@media (min-width: 768px)
{
    .info-slider-wrap .info__visual
    {
        margin-top: -99px; 
        padding-top: 0;

        text-align: left;
    }
}

.resort-section .heading
{
    margin-bottom: -62px; 
    padding: 27px 0 91px;

    text-align: center;

    color: #fff;
    background: #4f6e69;
}
@media (min-width: 768px)
{
    .resort-section .heading
    {
        margin-bottom: -111px; 
        padding: 60px 0 180px;
    }
}
.resort-section .heading .sub
{
    font-size: 16px;
    font-weight: 600;
    line-height: 1.2;

    display: block;

    margin: 0 0 7px; 

    letter-spacing: 1px;
    text-transform: uppercase;
}
@media (min-width: 768px)
{
    .resort-section .heading .sub
    {
        font-size: 12px;
    }
}
.resort-section .heading h2
{
    margin-bottom: 17px; 

    color: inherit;
}
@media (min-width: 768px)
{
    .resort-section .heading h2
    {
        margin-bottom: 33px;
    }
}
@media (min-width: 768px)
{
    .resort-section .heading .btn
    {
        font-size: 15px;
        line-height: 18px;

        padding-right: 40px; 
        padding-left: 40px;
    }
}

.resort-slider
{
    width: 100%;
    max-width: 230px;
    margin: 0 auto; 
    padding: 0 8px;
}
@media (min-width: 768px)
{
    .resort-slider
    {
        max-width: 1126px;
        padding: 0 15px;
    }
}
.resort-slider .slide
{
    display: -ms-flexbox;
    display: flex; 
    float: none;

    height: auto;
}
.resort-slider .slide__hold
{
    display: -ms-flexbox;
    display: flex; 

    padding: 0 8px;
}
@media (min-width: 768px)
{
    .resort-slider .slide__hold
    {
        padding: 0 15px;
    }
}
@media (max-width: 767px)
{
    .resort-slider .slick-list
    {
        overflow: visible;
    }
}
.resort-slider .slick-track
{
    display: -ms-flexbox;
    display: flex;
}
.resort-slider .slick-track:before,
.resort-slider .slick-track:after
{
    display: none;
}

.item-post
{
    font-size: 16px;
    font-weight: 300;
    line-height: 1.3;

    display: -ms-flexbox;
    display: flex;
        flex-direction: column; 

    width: 100%;

    color: #555857;
    background: #fff;

    -ms-flex-direction: column;
}
@media (min-width: 768px)
{
    .item-post
    {
        font-size: 14px;
    }
}
.item-post__visual
{
    position: relative;

    display: block;

    width: 100%;
    padding-top: 60%;

    background-position: 50% 50%; 
    background-size: cover;
}
.item-post__visual:after
{
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;

    height: 50%;

    content: '';

    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .4) 100%);
}
.item-post__inc
{
    font-size: 12px;
    font-weight: 600;
    line-height: 12px;

    position: absolute;
    z-index: 10;
    right: 23px;
    bottom: -1px;

    padding: 4px 8px;

    text-align: center; 

    color: #2c302f;
    border-radius: 4px 4px 0 0;
    background: #fff;
}
@media (min-width: 768px)
{
    .item-post__inc
    {
        font-size: 14px;
        line-height: 18px;

        right: 20px;

        min-width: 100px; 
        padding: 7px 15px;

        border-radius: 8px 8px 0 0;
    }
}
.item-post__body
{
    padding: 16px 19px 19px;

    border: 1px solid #eee;
    border-top: 0; 

    -ms-flex-positive: 1;
    flex-grow: 1;
}
@media (min-width: 768px)
{
    .item-post__body
    {
        padding: 15px;
    }
}
@media (min-width: 992px)
{
    .item-post__body
    {
        padding: 35px 35px 33px;
    }
}
.item-post .list-tags
{
    font-size: 16px; 

    display: -ms-flexbox;
    display: flex;

    margin: 0 0 7px;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
@media (min-width: 768px)
{
    .item-post .list-tags
    {
        font-size: 14px;
    }
}
.item-post .list-tags a
{
    color: #4f6e69;
}
.item-post .list-tags a:hover
{
    color: #000;
}
.item-post h3
{
    margin-bottom: 8px;
}
@media (min-width: 768px)
{
    .item-post h3
    {
        margin-bottom: 24px;
    }
}
.item-post p
{
    margin: 0 0 15px;
}
@media (min-width: 768px)
{
    .item-post p
    {
        margin: 0 0 22px;
    }
}

.card-item
{
    width: 100%; 

    background: #fff;
}
.card-item__content
{
    padding: 20px;

    border: 1px solid #eee;
    border-top: 0;
}
@media (min-width: 768px)
{
    .card-item__content
    {
        padding: 49px 50px 50px;
    }
}
.card-item .container-content
{
    padding: 0;
}
.card-item .container-content h2
{
    font-size: 24px;
    line-height: 1.2;

    margin: 0 0 18px;
}
.card-item .container-content .info-list
{
    margin-bottom: 30px;
    padding: 17px 0 0;
}
.card-item .container-content .info-list > li
{
    padding-right: 34px;
}
.card-item .hero-slider_wrap
{
    margin-bottom: 0;
}
.card-item .hero-slider_wrap .slider_label
{
    font-size: 16px;

    padding: 12px 34px 9px;
}
.card-item .btn
{
    font-size: 14px;
    line-height: 18px;

    padding: 14px 30px;
}

.footer-cards
{
    display: -ms-flexbox;
    display: flex;
        flex-direction: column; 

    margin-bottom: 50px;

    -ms-flex-direction: column;
}
@media (min-width: 768px)
{
    .footer-cards
    {
            flex-direction: row;

        -ms-flex-direction: row;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}
@media (min-width: 992px)
{
    .footer-cards
    {
        margin-bottom: 109px;
    }
}
.footer-cards .link-prev
{
    display: inline;

    margin-bottom: 20px; 

    vertical-align: top;
}
@media (min-width: 768px)
{
    .footer-cards .link-prev
    {
        margin-bottom: 0;
    }
}

.map-section
{
    padding: 47px 0;
}
@media (min-width: 768px)
{
    .map-section
    {
        padding: 138px 0 160px;
    }
}
.map-section .container
{
    max-width: 1110px;
}

@media (min-width: 768px)
{
    .columns-map
    {
        display: -ms-flexbox;
        display: flex;
            flex-direction: row-reverse;

        -ms-flex-direction: row-reverse;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-align: center;
        align-items: center;
    }
}

@media (min-width: 768px)
{
    .columns-map__col
    {
        width: 50%;
    }
}

.columns-map__col:first-child
{
    margin-bottom: 15px;
}
@media (min-width: 768px)
{
    .columns-map__col:first-child
    {
        width: 38.5%; 
        margin-bottom: 0;
    }
}

.map-wrap
{
    position: relative;

    max-width: 469px;
    margin: 0 auto;
}
@media (min-width: 768px)
{
    .map-wrap
    {
        float: right;
    }
}
.map-wrap .map-container
{
    max-width: 469px;
    margin: 0 auto;
    margin-bottom: 24px;
}
@media (min-width: 768px)
{
    .map-wrap .map-container
    {
        margin-bottom: 0;
    }
}

.map-points
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0; 
    left: 0;
}
.map-points .point
{
    position: absolute;
}
.map-points .pin
{
    width: 8px;
    height: 8px;

    cursor: pointer;

    border-radius: 50%;
}
.map-points .pin:after
{
    position: absolute;
    top: -4px;
    left: -4px;

    width: 16px;
    height: 16px;

    content: '';

    border-radius: 50%;
    background: url(images/point.svg) no-repeat;
    background-size: 100% 100%;
}
@media (min-width: 768px)
{
    .map-points .pin.active:before
    {
        position: absolute;
        z-index: 1000; 
        bottom: calc(100% + 12px);
        left: 50%;

        width: 0;
        height: 0;
        margin-top: -1px;

        content: '';
        transform: translateX(-50%);

        border-width: 8px 7px 0;
        border-style: solid;
        border-color: #fff transparent transparent;
    }
}
.map-points .pin.active:after
{
    background: url(images/point-active.svg) no-repeat;
    background-size: 100% 100%;
}
.map-points .pin[data-pin='1']:after
{
    background: url(images/point-stuttgart.svg) no-repeat;
    background-size: 100% 100%;
}
.map-points .pin[data-pin='1'].active:after
{
    background: url(images/point-stuttgart-active.svg) no-repeat;
    background-size: 100% 100%;
}
.map-points .map-popup
{
    bottom: calc(100% + 20px); 
    left: 50%;

    display: none;

    margin-left: 0;

    transform: translateX(-50%);
}
.map-points .more
{
    font-weight: 600;
}
.map-points .more span
{
    top: 3px;
}

.map-popup
{
    font-size: 14px;
    line-height: 1.3;

    width: calc(100% + 58px);
    margin-left: -29px;

    background: #fff;
    box-shadow: 0 0 25px 0 rgba(0, 0, 0, .25);
}
@media (max-width: 767px)
{
    .map-popup
    {
        display: none !important;
    }
}
@media (min-width: 768px)
{
    .map-popup
    {
        position: absolute;
        z-index: 99; 
        bottom: 0;

        width: 257px;

        box-shadow: 0 0 40px 0 rgba(0, 0, 0, .25);
    }
}
@media (max-width: 767px)
{
    .map-popup
    {
        font-size: 10px; 

        display: -ms-flexbox;
        display: flex;

        padding: 25px 25px 25px;

        -ms-flex-align: start;
        align-items: flex-start;
    }
}
.map-popup__close
{
    font-size: 11px;
    font-weight: 600;
    line-height: 14px;

    position: absolute;
    right: 0;
    bottom: 100%;

    margin-bottom: 2px;

    color: #2c302f;
}
.map-popup__close:hover
{
    color: #4f6e69;
}
.map-popup__close:after
{
    font-family: 'icomoon', 'Arial', 'Helvetica Neue', 'Helvetica', sans-serif; 
    font-size: 7px;
    line-height: 1;

    margin-left: 8px;

    content: '\e902';
}
.map-popup__visual
{
    width: 100%;
    padding-top: 57.5%;

    background-position: 50% 50%; 
    background-size: cover;
}
@media (max-width: 767px)
{
    .map-popup__visual
    {
        width: 129px;
        min-width: 129px;
        padding-top: 22.5%;
    }
}
@media (min-width: 768px)
{
    .map-popup h3
    {
        margin-bottom: 17px;
    }
}
@media (max-width: 767px)
{
    .map-popup h3
    {
        font-size: 12px;
    }
}
@media (max-width: 767px)
{
    .map-popup p
    {
        margin-bottom: 10px;
    }
}
.map-popup__body
{
    padding: 0 0 0 10px;
}
@media (min-width: 768px)
{
    .map-popup__body
    {
        padding: 26px 30px 26px;
    }
}
@media (min-width: 768px)
{
    .map-popup__description
    {
        min-height: 104px;
    }
}

.map-popup-mobile
{
    font-size: 10px;
    line-height: 1.3;

    position: relative;

    display: -ms-flexbox;
    display: flex;

    width: calc(100% + 58px);
    margin-left: -29px;
    padding: 25px 25px 25px;

    background: #fff;
    box-shadow: 0 0 25px 0 rgba(0, 0, 0, .25); 

    -ms-flex-align: start;
    align-items: flex-start;
}
.map-popup-mobile:empty
{
    padding: 0; 

    box-shadow: none;
}
@media (min-width: 768px)
{
    .map-popup-mobile
    {
        display: none;
    }
}
.map-popup-mobile .map-popup__close
{
    font-size: 11px;
    font-weight: 600;
    line-height: 14px;

    position: absolute;
    right: 20px;
    bottom: 100%;

    display: none; 

    margin-bottom: 2px;

    color: #2c302f;
}
.map-popup-mobile .map-popup__close:hover
{
    color: #4f6e69;
}
.map-popup-mobile .map-popup__close:after
{
    font-family: 'icomoon', 'Arial', 'Helvetica Neue', 'Helvetica', sans-serif; 
    font-size: 7px;
    line-height: 1;

    margin-left: 8px;

    content: '\e902';
}
.map-popup-mobile .map-popup__visual
{
    width: 129px;
    min-width: 129px;
    padding-top: 22.5%;

    background-position: 50% 50%; 
    background-size: cover;
}
.map-popup-mobile h3
{
    font-size: 12px;
}
.map-popup-mobile p
{
    margin-bottom: 10px;
}
.map-popup-mobile .map-popup__body
{
    padding: 0 0 0 10px;
}

.inspagram-section
{
    margin: 0 0 50px;
}
@media (min-width: 768px)
{
    .inspagram-section
    {
        margin: 0 0 60px;
    }
}
@media (min-width: 992px)
{
    .inspagram-section
    {
        margin: 0 0 235px;
    }
}
.inspagram-section .inspagram__content
{
    margin: 0 0 20px;
}
@media (min-width: 768px)
{
    .inspagram-section .inspagram__content
    {
        width: 200px;
        margin: 0 0 0 auto;
    }
}
.inspagram-section .slide-hold
{
    padding: 0 5px;
}
@media (min-width: 768px)
{
    .inspagram-section .slide-hold
    {
        padding: 0 10px;
    }
}

@media (min-width: 768px)
{
    .inspagram-columns
    {
        display: -ms-flexbox;
        display: flex;

        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

@media (min-width: 768px)
{
    .inspagram-columns__col
    {
        width: calc(50% + 130px);
    }
}

@media (min-width: 992px)
{
    .inspagram-columns__col
    {
        width: calc(50% + 248px);
    }
}

.inspagram-columns__col:first-child
{
    padding: 0 30px;
}
@media (min-width: 768px)
{
    .inspagram-columns__col:first-child
    {
        width: calc(50% - 140px);
    }
}
@media (min-width: 992px)
{
    .inspagram-columns__col:first-child
    {
        width: calc(50% - 260px); 
        padding-right: 0;
    }
}

.instagram-visual
{
    position: relative;

    display: block;

    width: 100%;
    padding-top: 100%;

    transition: all .5s;

    color: #fff;
    background-position: 50% 50%; 
    background-size: cover;
}
.instagram-visual:hover
{
    opacity: .8;
    color: #fff;
}
.instagram-visual img
{
    width: 100%; 
    max-height: none;
}
.instagram-visual__txt
{
    font-size: 12px;
    font-weight: 600;
    line-height: 14px; 

    position: absolute;
    bottom: 10px;
    left: 10px;
}
.instagram-visual [class*='icon']
{
    margin-right: 8px;
}

.instagram-slider
{
    position: relative;

    margin-left: -5px;
    padding-right: 20px;
}
@media (min-width: 768px)
{
    .instagram-slider
    {
        margin-left: 0; 
        padding: 0 10px;
    }
}
.instagram-slider .slick-arrow
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    z-index: 10;
    top: 50%;

    width: 30px;
    height: 30px;
    padding: 0;

    transition: background .5s; 
    transform: translateY(-50%);

    border: 0;
    background: rgba(255, 255, 255, .5);
}
@media (min-width: 768px)
{
    .instagram-slider .slick-arrow
    {
        width: 57px;
        height: 57px;
    }
}
.instagram-slider .slick-arrow:hover
{
    background: white;
}
.instagram-slider .slick-arrow:before
{
    position: absolute;
    top: 50%;
    right: 50%;

    width: 8px;
    height: 8px;

    content: ''; 
    transform: translate(50%, -50%);

    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
}
@media (min-width: 768px)
{
    .instagram-slider .slick-arrow:before
    {
        width: 12px;
        height: 12px;
    }
}
.instagram-slider .slick-prev
{
    left: 5px;
}
@media (min-width: 768px)
{
    .instagram-slider .slick-prev
    {
        left: 18px;
    }
}
.instagram-slider .slick-prev:before
{
    transform: translate(50%, -50%) rotate(-225deg);
}
.instagram-slider .slick-next
{
    right: 0;
}
@media (min-width: 768px)
{
    .instagram-slider .slick-next
    {
        right: 18px;
    }
}
.instagram-slider .slick-next:before
{
    transform: translate(50%, -50%) rotate(-45deg);
}
@media (max-width: 767px)
{
    .instagram-slider .slick-list
    {
        overflow: visible;
    }
}

.newsletter-section
{
    color: #fff;
    background: #4f6e69;
}
.newsletter-section h2
{
    color: inherit;
}
.newsletter-section .sub-title
{
    color: inherit;
}
.newsletter-section .container
{
    max-width: 986px;
}

.newsletter-form
{
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    max-width: 348px;

    border: 1px solid #314542;

    -ms-flex-pack: justify;
    justify-content: space-between;
}
.newsletter-form input[type='email']
{
    font-size: 14px;
    font-weight: 600;
    line-height: 18px;

    height: 58px;
    padding: 20px 25px;

    text-transform: uppercase;

    border: 0; 
    background: #fff;

    -ms-flex-positive: 1;
    flex-grow: 1;
}
@media (max-width: 767px)
{
    .newsletter-form input[type='email']
    {
        font-size: 12px;
        line-height: 14px;

        height: 38px;
        padding: 12px 15px;
    }
}
.newsletter-form input[type='email']::-webkit-input-placeholder
{
    color: #99a09e;
}
.newsletter-form input[type='email']::-moz-placeholder
{
    opacity: 1;
    color: #99a09e;
}
.newsletter-form input[type='email']:-moz-placeholder
{
    color: #99a09e;
}
.newsletter-form input[type='email']:-ms-input-placeholder
{
    color: #99a09e;
}
.newsletter-form input[type='email'].placeholder
{
    color: #99a09e;
}
.newsletter-form [type='submit']
{
    width: 67px;
    height: 58px;

    text-align: center; 

    color: #fff;
    background: #314542;
}
@media (max-width: 767px)
{
    .newsletter-form [type='submit']
    {
        width: 45px;
        min-width: 45px; 
        height: 38px;
        padding: 5px;
    }
}
.newsletter-form [type='submit']:hover
{
    background: #829894;
}

.newsletter-content
{
    padding: 35px 0 33px;
}
@media (min-width: 768px)
{
    .newsletter-content
    {
        max-width: 380px;
        margin: 0 auto;
        padding: 69px 0;
    }
}
@media (min-width: 992px)
{
    .newsletter-content
    {
        max-width: 400px; 
        margin: 0;
    }
}
.newsletter-content .form-container
{
    padding: 13px 0 0;
}
@media (max-width: 767px)
{
    .newsletter-content .form-container
    {
        max-width: 236px;
        padding: 5px 0 0;
    }
}
@media (max-width: 767px)
{
    .newsletter-content h2
    {
        margin-bottom: 15px;
    }
}

.ipad-mask
{
    position: relative; 

    width: 240px;
    height: 286px;
    margin: 0 auto;
}
@media (min-width: 480px)
{
    .ipad-mask
    {
        width: 370px;
        height: 440px;
    }
}
@media (min-width: 992px)
{
    .ipad-mask
    {
        margin: -50px 0 0;
    }
}
.ipad-mask .ipad-label
{
    font-size: 20px;
    font-weight: 600;
    line-height: 60px;

    position: absolute;
    z-index: 10; 
    top: -30px;
    right: -30px;

    width: 60px;
    height: 60px;

    text-align: center;

    color: #fff;
    border-radius: 50%;
    background: #f25656;
}
@media (min-width: 480px)
{
    .ipad-mask .ipad-label
    {
        font-size: 36px;
        line-height: 86px; 

        top: -47px;
        right: -42px;

        width: 86px;
        height: 86px;
    }
}
.ipad-mask:before
{
    position: absolute;
    z-index: 2;
    right: -13px;
    bottom: 0;

    width: 330px;
    height: 300px;

    content: '';

    background: url(images/mask-ipad.png) no-repeat;
    background-size: 100% 100%;
}
@media (min-width: 480px)
{
    .ipad-mask:before
    {
        right: -20px;

        width: 512px;
        height: 465px;
    }
}
.ipad-mask__visual
{
    overflow: hidden;

    width: 100%;
    height: 100%;

    border-radius: 12px 12px 0 0;
}

@media (min-width: 992px)
{
    .newsletter-columns
    {
        display: -ms-flexbox;
        display: flex;

        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

.newsletter-columns__col
{
    position: relative;
}
@media (min-width: 992px)
{
    .newsletter-columns__col .ipad-mask
    {
        position: absolute;
        right: 25px; 
        bottom: 0;
    }
}
@media (max-width: 767px)
{
    .newsletter-columns__col:last-child
    {
        display: none;
    }
}

.hero-banner
{
    position: relative;

    min-height: 220px;
    margin-bottom: 80px; 

    background-position: 50% 50%;
    background-size: cover;
}
@media (min-width: 768px)
{
    .hero-banner
    {
        min-height: 353px;
        margin-bottom: 232px;
    }
}

.ipad-block
{
    width: 100%;
}
.ipad-block__visual
{
    position: relative;
    top: 134px;
    left: calc(50%);

    width: 230px;
    height: 215px;

    transform: translateX(-50%);
}
@media (min-width: 768px)
{
    .ipad-block__visual
    {
        top: 134px;
        left: calc(50% - 180px); 

        width: 380px;
        height: 345px;
    }
}
@media (min-width: 992px)
{
    .ipad-block__visual
    {
        left: calc(50% - 108px);
    }
}
.ipad-block__visual:after
{
    position: absolute;
    top: 0;
    left: 0;

    width: 250px;
    height: 145px;

    content: '';

    background: url(images/ipad-mask-01.png) no-repeat;
    background-size: 100% 100%;
}
@media (min-width: 768px)
{
    .ipad-block__visual:after
    {
        width: 767px;
        height: 446px;
    }
}
.ipad-block .image-transform
{
    position: absolute;
    top: 4px; 
    right: 21px;

    width: 188px;
    height: 133px;
}
@media (min-width: 768px)
{
    .ipad-block .image-transform
    {
        top: 19px; 
        right: -253px;

        width: 554px;
        height: 394px;
    }
}
.ipad-block .image-transform img
{
    width: 100%;
    max-width: none;
    height: 100%;
}

@media (min-width: 768px)
{
    .container-form .heading
    {
        margin-bottom: 46px;
    }
}

@media (min-width: 768px)
{
    .container-form .heading h2
    {
        font-size: 28px;

        padding-top: 3px;
    }
}

.container-form .required-text
{
    padding-top: 4px;
}
@media (max-width: 767px)
{
    .container-form .required-text
    {
        margin-bottom: 10px; 
        padding-top: 10px;
    }
}

.title-radio
{
    margin-bottom: 10px;
}
@media (min-width: 768px)
{
    .title-radio
    {
        display: -ms-flexbox;
        display: flex;

        margin-bottom: 15px; 

        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-align: end;
        align-items: flex-end;
    }
}
@media (min-width: 768px)
{
    .title-radio h3
    {
        margin-bottom: 0;
        padding-right: 10px;
    }
}

.custom-radio
{
    margin-bottom: 10px; 
    padding-top: 10px;
}
@media (min-width: 768px)
{
    .custom-radio
    {
        margin-bottom: 18px; 
        padding-top: 22px;
    }
}
.custom-radio .wpcf7-radio
{
    display: -ms-flexbox;
    display: flex;

    margin: 0 -5px;
}
@media (min-width: 768px)
{
    .custom-radio .wpcf7-radio
    {
        margin: 0 -14px;
    }
}
.custom-radio .wpcf7-radio > span
{
    padding: 0 5px;
}
@media (min-width: 768px)
{
    .custom-radio .wpcf7-radio > span
    {
        padding: 0 14px;
    }
}
.custom-radio .wpcf7-radio > span label
{
    cursor: pointer;
}
.custom-radio .wpcf7-radio > span label span
{
    font-size: 10px;
    font-weight: 600;
    line-height: 18px;

    position: relative;

    display: block;

    width: 80px;
    height: 80px;
    padding: 52px 5px 10px;

    transition: box-shadow .5s;
    text-align: center;

    color: #555857;
    background: #fff; 
    box-shadow: inset 0 0 0 1px #eee;
}
@media (min-width: 480px)
{
    .custom-radio .wpcf7-radio > span label span
    {
        font-size: 12px;

        width: 134px;
        height: 134px;
        padding: 84px 5px 10px;
    }
}
@media (min-width: 768px)
{
    .custom-radio .wpcf7-radio > span label span
    {
        font-size: 14px; 

        width: 180px;
        height: 180px;
        padding: 134px 15px 15px;
    }
}
.custom-radio .wpcf7-radio > span label input
{
    position: absolute;
    left: -9999px; 

    opacity: 0;
}
.custom-radio .wpcf7-radio > span label input:checked + span
{
    box-shadow: inset 0 0 0 4px #4f6e69;
}
.custom-radio .wpcf7-radio > span:first-child span
{
    background: #fff url('images/familienzeit.svg') no-repeat;
    background-position: 50% 10px;
    background-size: 36px auto;
}
@media (min-width: 480px)
{
    .custom-radio .wpcf7-radio > span:first-child span
    {
        background-position: 50% 15px;
        background-size: 50px auto;
    }
}
@media (min-width: 768px)
{
    .custom-radio .wpcf7-radio > span:first-child span
    {
        background-position: 50% 38px;
        background-size: 71px auto;
    }
}
.custom-radio .wpcf7-radio > span:nth-child(2) span
{
    background: #fff url('images/zeit-zu-zweit.svg') no-repeat;
    background-position: 50% 10px;
    background-size: 36px auto;
}
@media (min-width: 480px)
{
    .custom-radio .wpcf7-radio > span:nth-child(2) span
    {
        background-position: 50% 15px;
        background-size: 50px auto;
    }
}
@media (min-width: 768px)
{
    .custom-radio .wpcf7-radio > span:nth-child(2) span
    {
        background-position: 50% 38px;
        background-size: 70px auto;
    }
}
.custom-radio .wpcf7-radio > span:last-child span
{
    background: #fff url('images/auszeit.svg') no-repeat;
    background-position: 50% 10px;
    background-size: 20px auto;
}
@media (min-width: 480px)
{
    .custom-radio .wpcf7-radio > span:last-child span
    {
        background-position: 50% 15px;
        background-size: 26px auto;
    }
}
@media (min-width: 768px)
{
    .custom-radio .wpcf7-radio > span:last-child span
    {
        background-position: 50% 41px;
        background-size: 37px auto;
    }
}

.section-cards
{
    padding: 20px 0;
}
@media (min-width: 768px)
{
    .section-cards
    {
        padding: 40px 0;
    }
}
.section-cards .card-img
{
    margin-bottom: 10px; 

    text-align: center;
}
.section-cards .card-title
{
    margin-bottom: 10px;
}
.section-cards .btn-wrap
{
    -ms-flex-pack: center;
    justify-content: center;
}

@media (min-width: 768px)
{
    .contact-wrap
    {
        margin-bottom: 64px;
    }
}

@media (min-width: 992px)
{
    .contact-wrap.thank_you
    {
        margin-bottom: 160px;
    }
}

@media (min-width: 768px)
{
    .form-columns
    {
        display: -ms-flexbox;
        display: flex;

        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

@media (min-width: 768px)
{
    .form-columns__col
    {
        width: calc(100% - 312px);
    }
}

@media (min-width: 768px)
{
    .form-columns__col:last-child
    {
        width: 217px;
    }
}

.form-columns label
{
    font-size: 13px;
    font-weight: 300;
    line-height: 16px; 

    display: inline-block;

    margin-bottom: 2px;

    vertical-align: top;
}

.address-box
{
    padding: 15px 0 0;
}
.address-box h4
{
    margin-bottom: 15px;
}
.address-box a
{
    color: inherit;
}
.address-box a:hover
{
    text-decoration: underline;
}
.address-box address
{
    font-style: normal;

    display: block;

    margin: 0; 
    padding: 0;
}

@media (min-width: 768px)
{
    .row
    {
        display: -ms-flexbox;
        display: flex;

        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-align: end;
        align-items: flex-end;
    }
    #newsletter-form .row,
    .wpcf7-form .row
    {
        -ms-flex-align: start;
        align-items: flex-start;
    }
}

.row .col
{
    width: 100%;
    margin-bottom: 15px;
}
@media (min-width: 768px)
{
    .row .col
    {
        width: calc(50% - 20px);
        margin-bottom: 31px;
    }
}
.row .col:only-child
{
    width: 100%;
}

.required-text
{
    font-size: 11px; 

    display: block;

    margin-bottom: -9px;
    padding-top: 10px;
}

.contact-form-wrap input[type='submit']
{
    font-weight: 600; 

    margin-top: 7px;
}

.contact-form
{
    padding: 30px 0;
}
@media (min-width: 768px)
{
    .contact-form
    {
        padding: 38px 0 0;
    }
}
@media (min-width: 768px)
{
    .contact-form .heading
    {
        margin-bottom: 56px;
    }
}
.contact-form h4
{
    font-size: 18px;
}

.two_columns
{
    display: -ms-flexbox;
    display: flex;
        flex-direction: column-reverse; 

    -ms-flex-direction: column-reverse;
}
@media (min-width: 768px)
{
    .two_columns
    {
            flex-direction: row;

        -ms-flex-direction: row;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}
.two_columns__col
{
    width: 100%;
}
@media (min-width: 768px)
{
    .two_columns__col
    {
        width: calc(50% - 10px);
    }
}

.gender
{
    margin-bottom: 30px;
}
@media (min-width: 768px)
{
    .gender
    {
        margin-bottom: 46px;
    }
}
.gender .wpcf7-radio
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-pack: justify;
    justify-content: space-between;
}
.gender .wpcf7-radio label
{
    font-size: 15px;
    font-weight: 600;
    line-height: 20px;

    position: relative;
    z-index: 1;

    display: block;

    padding: 20px 10px;

    cursor: pointer; 
    text-align: center;

    color: #555857;
}
.gender .wpcf7-radio label input[type='radio']
{
    position: absolute;

    visibility: hidden;

    opacity: 0;
}
.gender .wpcf7-radio label input[type='radio'] + span
{
    display: inline-block;

    vertical-align: top;
}
@media (max-width: 767px)
{
    .gender .wpcf7-radio label input[type='radio'] + span
    {
        font-size: 0;

        display: -ms-flexbox;
        display: flex;

        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}
.gender .wpcf7-radio label input[type='radio'] + span:before
{
    font-family: 'icomoon', 'Arial', 'Helvetica Neue', 'Helvetica', sans-serif;
    font-size: 17px; 

    margin-right: 6px;

    content: '\e90d';
}
@media (max-width: 767px)
{
    .gender .wpcf7-radio label input[type='radio'] + span:before
    {
        margin: 0;
    }
}
.gender .wpcf7-radio label input[type='radio'] + span:after
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    content: '';

    border: 1px solid #e4e4e4; 
    border-radius: 6px;
    background: #fff;
}
.gender .wpcf7-radio label input[type='radio']:checked + span
{
    color: #4f6e69;
}
.gender .wpcf7-radio label input[type='radio']:checked + span:after
{
    border-color: #718a86;
    background: #d8dedd;
}
.gender .wpcf7-radio > span
{
    width: calc((100% / 3) - 5px);
}
.gender .wpcf7-radio > span:first-child label span:before
{
    font-size: 14px;

    content: '\e90c';
}
.gender .wpcf7-radio > span:last-child label span:before
{
    font-size: 18px;

    content: '\e90e';
}

.age
{
    margin-bottom: 46px;
}
.age .age__row
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: center;
    align-items: center;
}
.age input[type='number']
{
    font-size: 15px;
    font-weight: 700;
    line-height: 20px;

    width: 77px;
    height: 59px;
    margin-right: 20px;
    padding: 19px 10px 18px; 

    text-align: center;

    color: #555857;
    border-color: #e4e4e4;
    border-radius: 6px;
    background: #fff;
}
.age label
{
    font-size: 15px;
}

.form_visual
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-pack: end;
    justify-content: flex-end;
}
.form_visual__text
{
    font-size: 15px;
    font-weight: 600; 
    line-height: 1.2;

    max-width: 125px;
    margin-top: 15px;
    padding-right: 5px;

    text-align: right;
}
@media (min-width: 768px)
{
    .form_visual__text
    {
        margin-top: -15px;
    }
}
.form_visual__image
{
    margin: -20px -23px 0 0;
}
@media (min-width: 768px)
{
    .form_visual__image
    {
        margin: -52px -23px 0 0;
    }
}

.container-wrap h4
{
    margin: 0;
}

.list_checkbox .wpcf7-form-control
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.list_checkbox .wpcf7-form-control label
{
    font-size: 15px;
    font-weight: 600;
    line-height: 19px;

    position: relative;
    z-index: 1;

    display: -ms-flexbox;
    display: flex;

    width: 100%;
    padding: 19px 10px 19px 80px;

    cursor: pointer; 

    -ms-flex-align: center;
    align-items: center;
}
.list_checkbox .wpcf7-form-control label span
{
    position: static;

    margin: 0;
}
.list_checkbox .wpcf7-form-control label span:before
{
    position: absolute;
    z-index: -1; 
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    width: auto;
    height: auto;

    content: '';

    border: 1px solid #e4e4e4;
    border-radius: 6px;
    background: #fff;
}
.list_checkbox .wpcf7-form-control label span:after
{
    font-family: 'icomoon', 'Arial', 'Helvetica Neue', 'Helvetica', sans-serif; 
    line-height: 1;

    position: absolute;
    top: 50%;
    left: 18px;

    width: 34px;

    transform: translateY(-50%);
    text-align: center;
}
.list_checkbox .wpcf7-form-control > span
{
    display: -ms-flexbox;
    display: flex; 

    width: 100%;
    margin-bottom: 21px;
}
@media (min-width: 768px)
{
    .list_checkbox .wpcf7-form-control > span
    {
        width: calc(50% - 10px);
    }
}
.list_checkbox .wpcf7-form-control > span:nth-child(1) span:after
{
    font-size: 25px; 

    content: '\e90f';
}
.list_checkbox .wpcf7-form-control > span:nth-child(2) span:after
{
    font-size: 28px; 

    content: '\e910';
}
.list_checkbox .wpcf7-form-control > span:nth-child(3) span:after
{
    font-size: 31px; 

    content: '\e911';
}
.list_checkbox .wpcf7-form-control > span:nth-child(4) span:after
{
    font-size: 25px; 

    content: '\e912';
}
.list_checkbox .wpcf7-form-control > span:nth-child(5) span:after
{
    font-size: 25px; 

    content: '\e913';
}
.list_checkbox .wpcf7-form-control > span:nth-child(6) span:after
{
    font-size: 26px; 

    content: '\e914';
}
.list_checkbox .wpcf7-form-control > span:nth-child(7) span:after
{
    font-size: 25px; 

    content: '\e915';
}
.list_checkbox .wpcf7-form-control > span:nth-child(8) span:after
{
    font-size: 25px; 

    content: '\e916';
}
.list_checkbox .wpcf7-form-control input[type='checkbox']
{
    position: absolute;

    visibility: hidden;

    opacity: 0;
}
.list_checkbox .wpcf7-form-control input[type='checkbox']:checked + span
{
    color: #4f6e69;
}
.list_checkbox .wpcf7-form-control input[type='checkbox']:checked + span:before
{
    border-color: #718a86;
    background: #d8dedd;
}
.list_checkbox .wpcf7-form-control input[type='checkbox']:checked + span:after
{
    top: 50%;
    left: 18px;

    width: 34px;
    height: auto;

    transform: translateY(-50%); 

    border: 0;
}

.footer-form
{
    display: -ms-flexbox;
    display: flex;

    padding: 40px 0; 

    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
}

/* custom select styles */
.jcf-select
{
    font-family: 'Dosis', 'Arial', 'Helvetica Neue', 'Helvetica', sans-serif;
    font-weight: 600;

    position: relative;

    display: block;

    box-sizing: border-box;
    width: 100%;
    padding: 14px 16px;

    color: #555857; 
    border: 1px solid #eee;
    border-radius: 0;
    background: #fff;
}
.jcf-select:not(textarea)
{
    height: 50px;
}

.jcf-select select
{
    z-index: 1;
    top: 0; 
    left: 0;
}

.jcf-select .jcf-select-text
{
    font-size: 16px;
    line-height: 20px;

    display: block;
    overflow: hidden;

    margin: 0 35px 0 0; 

    cursor: default;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.jcf-select .jcf-select-opener
{
    position: absolute;
    top: 0; 
    right: 0;
    bottom: 0;

    width: 50px;

    text-align: center;
}
.jcf-select .jcf-select-opener:after
{
    position: absolute;
    top: 50%;
    right: 50%;

    width: 11px;
    height: 6px;

    content: '';
    transform: translate(50%, -50%);

    background: url('images/down.svg') no-repeat;
}

body > .jcf-select-drop
{
    position: absolute;
    z-index: 9999; 

    margin: -1px 0 0;
}

body > .jcf-select-drop.jcf-drop-flipped
{
    margin: 1px 0 0;
}

.jcf-select .jcf-select-drop
{
    position: absolute;
    z-index: 9999;
    top: 100%;
    right: -1px; 
    left: -1px;

    margin-top: 0;
}

.jcf-select .jcf-drop-flipped
{
    top: auto; 
    bottom: 100%;
}

.jcf-select-drop .jcf-select-drop-content
{
    border: 1px solid #eee;
}

/* multiple select styles */
.jcf-list-box
{
    display: inline-block;
    overflow: hidden;

    min-width: 200px;
    margin: 0 15px; 

    border: 1px solid #b8c3c9;
}

/* select options styles */
.jcf-list
{
    font-size: 16px;
    line-height: 20px;

    position: relative;

    display: inline-block;

    width: 100%; 

    vertical-align: top;

    background: #fff;
}

.jcf-list .jcf-list-content
{
    display: inline-block;
    overflow: auto;

    width: 100%; 

    vertical-align: top;
}

.jcf-list ul
{
    margin: 0; 
    padding: 0;

    list-style: none;
}

.jcf-list ul li
{
    display: block; 
    overflow: hidden;
}

.jcf-list .jcf-overflow
{
    overflow: auto;
}

.jcf-list .jcf-option
{
    display: block;
    overflow: hidden;

    height: 1%; 
    padding: 5px 9px;

    cursor: default;

    color: #656565;
}

.jcf-list .jcf-disabled
{
    color: #aaa !important; 
    background: #fff !important;
}

.jcf-select-drop .jcf-hover,
.jcf-list-box .jcf-selected
{
    color: #000; 
    background: #e6e6e6;
}

.jcf-list .jcf-optgroup-caption
{
    font-weight: bold;

    display: block;

    padding: 5px 9px;

    cursor: default;
    white-space: nowrap;

    color: #000;
}

.jcf-list .jcf-optgroup .jcf-option
{
    padding-left: 30px;
}

/* common custom form elements styles */
.jcf-disabled
{
    background: #ddd !important;
}

.jcf-focus,
.jcf-focus *
{
    border-color: #000 !important;
}

input[type='checkbox']
{
    position: absolute;

    visibility: hidden;
}
input[type='checkbox'] + span
{
    position: relative;

    display: block;

    margin-left: 26px;
}
input[type='checkbox'] + span a
{
    text-decoration: underline; 

    color: inherit;
}
input[type='checkbox'] + span a:hover
{
    text-decoration: none;
}
input[type='checkbox'] + span:before
{
    position: absolute;
    top: -2px;
    left: -26px;

    width: 16px;
    height: 16px;

    content: '';

    border: 1px solid #eee; 
    background: #fff;
}
@media (min-width: 768px)
{
    input[type='checkbox'] + span:before
    {
        top: 1px;
    }
}
input[type='checkbox']:checked + span:after
{
    position: absolute;
    top: 3px;
    left: -21px;

    width: 8px;
    height: 4px;

    content: ''; 
    transform: rotate(-45deg);

    border-bottom: 1px solid #000;
    border-left: 1px solid #000;
}
@media (min-width: 768px)
{
    input[type='checkbox']:checked + span:after
    {
        top: 6px;
    }
}

@media (min-width: 768px)
{
    .single-page [id='header']
    {
        min-height: 120px;
    }
}

@media (min-width: 768px)
{
    .single-page .header-holder
    {
        padding-bottom: 20px;
    }
}

.single-page .container
{
    max-width: 1230px;
}

@media (min-width: 768px)
{
    .single-page h2
    {
        font-size: 28px;
    }
}

.page-heading
{
    margin-right: -29px;
    margin-bottom: -60px;
    margin-left: -29px;
    padding-right: 29px;
    padding-bottom: 60px;
    padding-left: 29px;

    text-align: center;

    color: #fff; 
    background: #829894;
}
@media (min-width: 768px)
{
    .page-heading
    {
        margin-bottom: -160px;
        padding-bottom: 160px;
    }
}
@media (min-width: 1230px)
{
    .page-heading
    {
        margin-right: calc(((100vw - 1170px) / 2) * -1);
        margin-left: calc(((100vw - 1170px) / 2) * -1);
        padding-right: calc((100vw - 1170px) / 2); 
        padding-left: calc((100vw - 1170px) / 2);
    }
}
.page-heading h1
{
    font-weight: 600;
}

.main-gallery
{
    position: relative;
}
.main-gallery .slick-arrow
{
    font-size: 27px; 

    position: absolute;
    z-index: 10;
    top: 50%;

    height: 100%;

    transform: translateY(-50%);

    background: transparent;
}
@media (max-width: 767px)
{
    .main-gallery .slick-arrow
    {
        font-size: 15px;

        padding: 5px;
    }
}
.main-gallery .slick-arrow:hover
{
    background: rgba(0, 0, 0, .4);
}
.main-gallery .slick-prev
{
    left: 0;
}
.main-gallery .slick-next
{
    right: 0;
}

.main-gallery-wrap
{
    position: relative;
}
.main-gallery-wrap .btn
{
    font-size: 14px;
    line-height: 18px;

    position: absolute;
    z-index: 12;
    right: 20px;
    bottom: 20px;

    padding: 15px 29px;
}
@media (max-width: 767px)
{
    .main-gallery-wrap .btn
    {
        font-size: 12px;
        line-height: 14px;

        right: 10px; 
        bottom: 10px;

        padding: 5px 15px;
    }
}

.info-list
{
    display: -ms-flexbox;
    display: flex;

    margin-right: -50px; 

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.info-list > li
{
    padding: 0 50px 20px 0;
}
@media (min-width: 768px)
{
    .info-list > li
    {
        padding: 0 50px 10px 0;
    }
}

.title-container
{
    padding-top: 30px;
}
@media (min-width: 768px)
{
    .title-container
    {
        padding: 50px 8% 0;
    }
}
@media (min-width: 992px)
{
    .title-container
    {
        padding: 80px 12% 0;
    }
}
@media (min-width: 768px)
{
    .title-container h2
    {
        margin-bottom: 44px;
    }
}

.item-info
{
    position: relative;

    padding-left: 30px;

    color: #4f6e69;
}
.item-info__ico
{
    font-size: 25px;
    line-height: 1; 

    position: absolute;
    top: 0;
    left: 0;
}
.item-info__title
{
    font-size: 14px;
    font-weight: 300;
    line-height: 14px;
}
@media (min-width: 768px)
{
    .item-info__title
    {
        font-size: 12px;
    }
}
.item-info__sub-title
{
    font-size: 14px;
    font-weight: 700; 
    line-height: 16px;
}

.twocolumns
{
    padding-top: 30px;
}
@media (min-width: 768px)
{
    .twocolumns
    {
        display: -ms-flexbox;
        display: flex;

        padding: 20px 8% 0;
    }
}
@media (min-width: 992px)
{
    .twocolumns
    {
        padding: 50px 12% 0;
    }
}
.twocolumns [id='content']
{
    padding-top: 0;
    padding-bottom: 20px;
}
@media (min-width: 768px)
{
    .twocolumns [id='content']
    {
        width: auto;
        padding-right: 30px; 

        -ms-flex-positive: 1;
        flex-grow: 1;
    }
}
.twocolumns [id='sidebar']
{
    padding: 0;
}
@media (min-width: 768px)
{
    .twocolumns [id='sidebar']
    {
        width: 252px;
        min-width: 252px;
    }
}
@media (max-width: 767px)
{
    .twocolumns [id='sidebar']
    {
        display: none;
    }
}

@media (min-width: 768px)
{
    .wrap-slider h3
    {
        margin-bottom: 15px;
    }
}

.slider-sidebar
{
    position: relative;

    padding-bottom: 45px;
}
.slider-sidebar .slick-arrow
{
    font-size: 16px;

    position: absolute;
    z-index: 10;
    bottom: 0;

    height: 40px;
    padding: 10px 0;

    color: #4f6e69; 
    background: transparent;
}
.slider-sidebar .slick-arrow:hover
{
    opacity: .5;
}
.slider-sidebar .slick-prev
{
    right: 26px;
}
.slider-sidebar .slick-next
{
    right: 0;
}
@media (min-width: 768px)
{
    .slider-sidebar .item-post__body
    {
        padding: 24px 28px 28px;
    }
}

.form-post-section
{
    padding-top: 30px;
    padding-bottom: 50px;
}
@media (min-width: 768px)
{
    .form-post-section
    {
        padding: 20px 8% 120px;
    }
}
@media (min-width: 992px)
{
    .form-post-section
    {
        padding: 38px 12% 158px;
    }
}
@media (max-width: 991px)
{
    .form-post-section .row
    {
        display: block;
    }
}
@media (max-width: 991px)
{
    .form-post-section .row .col
    {
        width: 100%;
    }
}
@media (min-width: 768px)
{
    .form-post-section [id='sidebar']
    {
        display: none;
    }
}

@media (min-width: 768px)
{
    .columns-section
    {
        display: -ms-flexbox;
        display: flex;

        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

.columns-section__col
{
    width: 100%;
}
.columns-section__col:first-child
{
    padding-bottom: 20px;
}
@media (min-width: 768px)
{
    .columns-section__col:first-child
    {
        width: calc(100% - 252px); 
        padding-right: 30px;

        -ms-flex-positive: 1;
        flex-grow: 1;
    }
    .form-post-section .columns-section__col:first-child
    {
        padding-right: 7%;
    }
}
@media (min-width: 768px)
{
    .columns-section__col:last-child
    {
        width: 252px;
        min-width: 252px;
    }
}

.user-box .avatar
{
    overflow: hidden;

    width: 62px;
    height: 62px;
    margin-bottom: 17px; 

    border-radius: 50%;
}

.user-box .user-name
{
    margin-bottom: 0;
}

.user-box .user-position
{
    display: block;

    margin-bottom: 20px;
}

.user-contact a
{
    color: inherit;
}
.user-contact a:hover
{
    text-decoration: underline;
}

.popup-holder
{
    position: relative;

    overflow: hidden;

    height: 0;
}

.fancybox-button
{
    display: none;
}

.fancybox-content
{
    width: 100%;
    max-width: 644px;
    padding: 0;

    background: transparent;
}

.lightbox-container
{
    background: #fff;
}
.lightbox-container h3
{
    font-size: 24px;

    margin-bottom: 10px;
}

.close_wrap
{
    padding: 18px 0 4px; 

    text-align: right;
}

.close_modal
{
    font-size: 12px;
    font-weight: 600; 
    line-height: 20px;

    color: #fff;
}
.close_modal:hover,
.close_modal:focus
{
    opacity: .7; 
    color: #fff;
}
.close_modal span
{
    font-weight: 300; 

    margin-left: 8px;
}

.modal_content
{
    font-size: 14px;
    font-weight: 300; 
    line-height: 1.45;

    padding: 30px 0;
}
@media (min-width: 768px)
{
    .modal_content
    {
        padding: 44px 0;
    }
}
.modal_content p:last-of-type
{
    margin-bottom: 34px;
}
.modal_content .btn
{
    font-size: 14px;

    padding: 12px 22px; 

    letter-spacing: 1px;
}

.twocolumns_modal
{
    display: -ms-flexbox;
    display: flex;

    min-height: 377px; 
    padding: 0 20px;

    -ms-flex-align: center;
    align-items: center;
}
@media (min-width: 768px)
{
    .twocolumns_modal
    {
        padding: 0 12% 0 20px;
    }
}
.twocolumns_modal__col
{
    width: 50%;
}
.twocolumns_modal__visual
{
    padding: 20px 5%; 

    text-align: center;
}
@media (min-width: 768px)
{
    .twocolumns_modal__visual
    {
        margin: -42px 0 0;
        padding: 0 0 0 15%;
    }
}

.container-content
{
    padding: 20px;

    color: #555857;
}
@media (min-width: 768px)
{
    .container-content
    {
        padding: 53px 60px;
    }
}
.container-content h2
{
    font-size: 26px;

    margin-bottom: 34px;
}
.container-content h4
{
    font-size: 18px;
}
.container-content .info-list
{
    margin: 0 0 20px;
}
.container-content .info-list > li
{
    padding-right: 56px;
}
.container-content hr
{
    height: 2px;
    margin: 0 0 45px;

    border: 0;
    background: #d8dedd; 
    box-shadow: none;
}
.container-content .item-info
{
    font-size: 14px;

    padding-left: 20px;
}
.container-content .item-info__ico
{
    font-size: 15px;

    top: -2px;
}
.container-content .item-info__title
{
    font-size: 14px;
}

.hero-slider_wrap
{
    position: relative;

    margin-bottom: 30px;
}
.hero-slider_wrap .slider_label
{
    font-size: 14px;
    line-height: 18px;

    position: absolute;
    z-index: 10;
    top: 0;
    left: 240px;

    padding: 6px 10px 7px;

    color: #fff;
    border-radius: 0 0 5px 5px; 
    background: #4f6e69;
}

.hero-slider_wrap + .label-content {
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (min-width: 768px) {
    .hero-slider_wrap .slider_label {
        left: 50%;
        transform: translateX(-50%);
    }
}
.hero-slider_wrap .slick-dots
{
    position: absolute;
    bottom: 20px;
    left: 50%;

    transform: translateX(-50%);
}
.hero-slider_wrap .hero-slider img
{
    display: block;

    width: 100%; 
    max-width: none;
}
.hero-slider_wrap .slick-arrow
{
    font-size: 36px;
    line-height: 1;

    position: absolute;
    z-index: 5;
    top: 50%;

    height: auto;
    padding: 16px 15px;

    transform: translateY(-50%);

    background: transparent;
}
.hero-slider_wrap .slick-arrow:hover
{
    color: #4f6e69;
}
.hero-slider_wrap .slick-prev
{
    left: 0;
}
.hero-slider_wrap .slick-next
{
    right: 0;
}

.label-content
{
    font-size: 16px;
    font-weight: 600;
    line-height: 20px;

    display: inline-block;

    margin: 0 0 17px;
    padding: 5px 8px;

    vertical-align: top;

    color: #4f6e69;
    border-radius: 8px;
    background: #d8dedd;
}

.lightbox-sub-title
{
    font-size: 16px;
    font-weight: 500; 
    line-height: 1.1875;
}

.tags-list
{
    font-size: 14px; 

    margin: 0 0 23px;
    padding: 0;

    list-style: none;

    color: #4f6e69;
}
.tags-list > li
{
    display: inline;
}
.tags-list > li:first-child:before
{
    display: none;
}
.tags-list > li:before
{
    margin: 0 2px; 

    content: '• ';
}
.tags-list a
{
    color: inherit;
}

.rating
{
    display: -ms-flexbox;
    display: flex;

    margin: 0 0 36px;
    padding: 0 10px;

    list-style: none;

    text-align: center;

    color: #4f6e69; 

    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media (max-width: 767px)
{
    .rating
    {
        font-size: 11px;
    }
}
@media (max-width: 767px)
{
    .rating > li
    {
        width: 100%;
    }
}
.rating .star
{
    font-size: 20px;
    line-height: 1;

    display: block;

    margin-bottom: 10px;
}
@media (min-width: 768px)
{
    .rating .star
    {
        font-size: 35px;

        margin-bottom: 14px;
    }
}
.rating .icon-star + .star-title
{
    font-weight: 600;
}
.rating .wpcf7-form-control-wrap
{
    width: 100%;
}
.rating .wpcf7-checkbox
{
    display: -ms-flexbox;
    display: flex;

    margin: 0 -15px; 

    text-align: center;

    color: #4f6e69;

    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media (min-width: 768px)
{
    .rating .wpcf7-checkbox
    {
        margin: 0 -30px;
    }
}
.rating .wpcf7-checkbox > span
{
    width: 100%;
}
.rating .wpcf7-checkbox input[type='radio']
{
    position: absolute;

    opacity: 0;
}
.rating .wpcf7-checkbox input[type='radio'] + span
{
    margin-left: 0; 

    text-align: center;
}
.rating .wpcf7-checkbox input[type='radio'] + span:before
{
    font-family: 'icomoon', 'Arial', 'Helvetica Neue', 'Helvetica', sans-serif;
    font-size: 20px;
    line-height: 1;

    position: static;

    display: block;

    width: auto;
    height: auto;
    margin-bottom: 10px;

    content: '\e918';

    border: 0;
}
@media (min-width: 768px)
{
    .rating .wpcf7-checkbox input[type='radio'] + span:before
    {
        font-size: 35px;

        margin-bottom: 14px;
    }
}
.rating .wpcf7-checkbox input[type='radio']:checked + span
{
    font-weight: 600;
}
.rating .wpcf7-checkbox input[type='radio']:checked + span:before
{
    content: '\e917';
}
.rating .wpcf7-checkbox input[type='radio']:checked + span:after
{
    display: none;
}
.rating .wpcf7-checkbox .checked input[type='radio'] + span
{
    font-weight: 600;
}
.rating .wpcf7-checkbox .checked input[type='radio'] + span:before
{
    content: '\e917';
}

.checkbox-wrap
{
    padding: 17px 0 40px;
}
.checkbox-wrap .wpcf7-list-item
{
    font-size: 15px;
    line-height: 20px; 

    display: block;

    margin-bottom: 14px;
}
.checkbox-wrap input[type='checkbox'] + span
{
    margin-left: 0;
    padding-left: 34px;
}
.checkbox-wrap input[type='checkbox'] + span:before
{
    left: 0;

    border-radius: 3px;
}
.checkbox-wrap input[type='checkbox']:checked + span:before
{
    background: #4f6e69;
}
.checkbox-wrap input[type='checkbox']:checked + span:after
{
    left: 4px;

    border-color: #fff;
}

.textarea-wrap
{
    margin-bottom: 30px;
}
.textarea-wrap label
{
    font-weight: 600;

    display: block;

    margin-bottom: 7px;
}
.textarea-wrap textarea
{
    height: 93px;
    min-height: 93px;

    resize: none;
}

.footer_form_modal
{
    display: -ms-flexbox;
    display: flex;
        flex-direction: column; 

    -ms-flex-direction: column;
}
@media (min-width: 768px)
{
    .footer_form_modal
    {
            flex-direction: row;

        -ms-flex-direction: row;
        -ms-flex-align: end;
        align-items: flex-end;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}
.footer_form_modal .require
{
    font-size: 10px;
    font-weight: 600;
    line-height: 1.2;

    display: inline-block;

    margin-bottom: 10px;

    vertical-align: top;

    color: #2c302f;
}
@media (min-width: 768px)
{
    .footer_form_modal .require
    {
        margin-bottom: 0;
    }
}

.slide-section
{
    display: none;
}
.slide-section.active
{
    display: block;
}

.wrap-modal
{
    padding: 30px 0 0;
}

.lightbox-content
{
    font-size: 14px; 

    padding: 0 20px 20px;
}
@media (min-width: 768px)
{
    .lightbox-content
    {
        padding: 0 60px 60px;
    }
}
.lightbox-content__visual
{
    position: relative;

    height: 260px; 
    margin-bottom: 49px;

    text-align: center;
}
@media (min-width: 768px)
{
    .lightbox-content__visual
    {
        height: 376px;
    }
}
.lightbox-content__visual img
{
    position: absolute;
    bottom: 0;
    left: 50%;

    max-height: 95%; 

    transform: translateX(-50%);
}
@media (min-width: 768px)
{
    .lightbox-content__visual img
    {
        max-height: 446px;
    }
}
.lightbox-content p:last-child
{
    margin-bottom: 0;
}
.lightbox-content .sub-title-modal
{
    font-size: 14px;
    font-weight: normal;
    font-weight: 600;
    line-height: 1.2;

    display: inline-block;

    margin-bottom: 20px;

    vertical-align: top;
    letter-spacing: 1.5px; 
    text-transform: uppercase;

    color: #000;
    color: #4f6e69;
}
.lightbox-content h3
{
    margin-bottom: 20px; 

    letter-spacing: 1px;
}
.lightbox-content h4
{
    font-size: 13px;
    font-weight: 600; 

    margin: 0 0 7px;
}
.lightbox-content .big-text
{
    font-size: 16px;
    font-weight: 500; 
    line-height: 1.25;
}
.lightbox-content .button-content-wrap
{
    padding: 10px 0 20px;
}
@media (min-width: 768px)
{
    .lightbox-content .button-content-wrap
    {
        padding: 11px 0 48px;
    }
}
.lightbox-content .button-content-wrap:last-child
{
    margin-bottom: 0;
}
.lightbox-content .btn
{
    font-size: 14px;
    line-height: 18px; 

    height: 50px;
    padding: 16px 25px;
}

#cookie-notice
{
    font-family: 'Dosis', 'Arial', 'Helvetica Neue', 'Helvetica', sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.3;

    box-shadow: 0 0 40px 0 rgba(0, 0, 0, .25);
}
#cookie-notice .cookie-notice-container
{
    max-width: 967px;
    margin: 0 auto;
    padding: 15px 30px;
}
@media (min-width: 768px)
{
    #cookie-notice .cookie-notice-container
    {
        display: -ms-flexbox;
        display: flex;

        padding: 35px 30px;

        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-align: center;
        align-items: center;
    }
}
#cookie-notice .cn-text-container
{
    margin: 0 0 15px; 

    color: #555857;
}
@media (min-width: 768px)
{
    #cookie-notice .cn-text-container
    {
        margin: 0;
        padding-right: 16%; 

        text-align: left;
    }
}
@media (min-width: 768px)
{
    #cookie-notice h3
    {
        margin-bottom: 24px;
    }
}
#cookie-notice .cn-button
{
    font-family: 'Dosis', 'Arial', 'Helvetica Neue', 'Helvetica', sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 18px;

    padding: 16px 30px;

    letter-spacing: 0; 

    border: 0;
    border-radius: 0;
    background: #4f6e69;
}

@media (min-width: 768px)
{
    .home .sub-header .logo
    {
        width: 277px;
        min-width: 277px;
    }
}

.sub-header .logo img
{
    width: 100%;
    max-width: none;
}

@media (min-width: 1300px)
{
    .sub-header .header-holder
    {
        padding: 61px;
    }
}

@media (min-width: 1300px)
{
    .sub-header .header-holder .home
    {
        padding: 73px 79px;
    }
}

.stub-section .image-bg
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    background-position: 50% 50%; 
    background-size: cover;
}
@media (max-width: 991px)
{
    .stub-section .image-bg__des-stub
    {
        display: none !important;
    }
}
@media (min-width: 992px)
{
    .stub-section .image-bg__mob-stub
    {
        display: none !important;
    }
}

.stub-section__sub-title
{
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;

    display: block;

    margin-bottom: 5px;

    letter-spacing: 1px; 
    text-transform: uppercase;
}
@media (min-width: 768px)
{
    .stub-section__sub-title
    {
        font-size: 18px;

        margin-bottom: 26px; 

        letter-spacing: 2px;
    }
}

.stub-section .item-hero__title
{
    font-size: 26px;
}
@media (min-width: 480px)
{
    .stub-section .item-hero__title
    {
        font-size: 36px;
    }
}
@media (min-width: 768px)
{
    .stub-section .item-hero__title
    {
        font-size: 46px; 

        margin-bottom: 60px;
    }
}
@media (min-width: 992px)
{
    .stub-section .item-hero__title
    {
        font-size: 59px;
    }
}
@media (min-width: 1300px)
{
    .stub-section .item-hero__title
    {
        font-size: 70px;
    }
}

.stub-section .container
{
    max-width: 1514px;
}

.stub-section .item-hero__hold
{
    position: relative;

    min-height: 100vh;
    padding: 80px 0;
}
@media (min-width: 768px)
{
    .stub-section .item-hero__hold
    {
        padding: 125px 0;
    }
}

.stub-section .item-hero__body
{
    width: 100%;
    max-width: 100%; 
    padding: 0;
}
@media (min-width: 992px)
{
    .stub-section .item-hero__body
    {
        max-width: 600px;
    }
}
@media (min-width: 1300px)
{
    .stub-section .item-hero__body
    {
        max-width: 740px;
    }
}

.stub-section .item-hero__text
{
    font-size: 16px; 
    line-height: 1.18;

    width: 90%;
}
@media (min-width: 768px)
{
    .stub-section .item-hero__text
    {
        font-size: 22px;
    }
}
@media (min-width: 992px)
{
    .stub-section .item-hero__text
    {
        max-width: 490px;
    }
}
.stub-section .item-hero__text p
{
    margin: 0 0 20px;
}
@media (min-width: 768px)
{
    .stub-section .item-hero__text p
    {
        margin: 0 0 30px;
    }
}
.stub-section .item-hero__text p a
{
    color: #fff;
}
.stub-section .item-hero__text p a:hover
{
    text-decoration: underline;
}

#stub-footer
{
    padding: 30px 0; 

    background: #e7e9e8;
}
@media (min-width: 768px)
{
    #stub-footer
    {
        padding: 60px 0;
    }
}
.home #stub-footer
{
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;

    padding: 0 20px 20px;

    background: transparent;
}
@media (min-width: 768px)
{
    .home #stub-footer
    {
        padding: 0 60px 9.2vh;
    }
}

.footer-section
{
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    max-width: 938px;
    margin: 0 auto; 
    padding: 0 15px;

    -ms-flex-direction: column;
    -ms-flex-align: center;
    align-items: center;
}
@media (max-width: 767px)
{
    .footer-section
    {
        padding: 0 29px;
    }
}
.home .footer-section
{
    max-width: 100%;
    padding: 0;
}
@media (min-width: 768px)
{
    .footer-section
    {
            flex-direction: row;

        -ms-flex-direction: row;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}
.footer-section .social-box
{
    position: static;

    margin-bottom: 15px;

    color: #2c302f;
}
@media (min-width: 768px)
{
    .footer-section .social-box
    {
        margin-bottom: 0;
    }
}
.home .footer-section .social-box
{
    color: #fff;
}
.footer-section .social-title
{
    font-size: 12px;
    font-weight: 600;

    margin-right: 3px; 

    text-transform: none;
}
.home .footer-section .social-title
{
    font-size: 16px;
}
.footer-section .social
{
    font-size: 16px;

    padding-top: 3px;
}
.home .footer-section .social
{
    padding-top: 0;
}
.footer-section .social > li
{
    padding: 0 6px;
}
.home .footer-section .social > li
{
    padding: 0 10px;
}
.footer-section .social a
{
    color: #2c302f;
}
.home .footer-section .social a
{
    color: #fff;
}

.stub-menu
{
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2; 

    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.home .stub-menu
{
    font-size: 16px;
}
.stub-menu a
{
    color: #2c302f;
}
.stub-menu a:hover
{
    opacity: .6;
}
.stub-menu > li
{
    position: relative;

    margin: 0 15px;
}
@media (min-width: 768px)
{
    .stub-menu > li
    {
        margin: 0 0 0 31px;
    }
}
.stub-menu > li:before
{
    font-family: 'icomoon', 'Arial', 'Helvetica Neue', 'Helvetica', sans-serif;
    font-size: 6px; 

    display: inline-block;

    margin: 0 7px 0 0;

    content: '\e905';
    vertical-align: middle;

    color: #2c302f;
}
.stub-menu > li:before:hover
{
    font-size: 10px;
}
.home .stub-menu
{
    text-shadow: 1px 1px 2px #000;
}
.home .stub-menu a
{
    color: #fff;
}
.home .stub-menu > li:before
{
    color: #fff;
}

.question_form
{
    padding: 54px 0;
}
@media (min-width: 992px)
{
    .question_form
    {
        padding: 54px 0 112px;
    }
}
.question_form .button-wrap
{
    text-align: right;
}

.list_question
{
    margin: 0;
    padding: 19px 0 0;

    list-style: none;

    counter-reset: item;
}
.list_question > li
{
    margin: 0 0 76px;
}
.list_question > li.disabled
{
    pointer-events: none;

    opacity: .5;
}
.list_question > li:last-child
{
    margin-bottom: 48px;
}
.list_question h3
{
    font-size: 18px;
    line-height: 1;

    margin-bottom: 38px;
}
.list_question h3:before
{
    content: counter(item) '. '; 
    counter-increment: item;
}
.list_question .wpcf7-form-control-wrap .wpcf7-radio
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media (max-width: 549px)
{
    .list_question .wpcf7-form-control-wrap .wpcf7-radio
    {
            flex-direction: column; 

        -ms-flex-direction: column;
    }
}
.list_question .wpcf7-form-control-wrap .wpcf7-radio > span
{
    display: block;

    width: 100%;
    padding: 0 .0938rem;
}
@media (max-width: 549px)
{
    .list_question .wpcf7-form-control-wrap .wpcf7-radio > span
    {
        padding: .0938rem 0;
    }
}
.list_question .wpcf7-form-control-wrap .wpcf7-radio > span:first-child span:before
{
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}
@media (max-width: 549px)
{
    .list_question .wpcf7-form-control-wrap .wpcf7-radio > span:first-child span:before
    {
        border-radius: 0;
        border-top-left-radius: 8px;
        border-top-right-radius: 8px;
    }
}
.list_question .wpcf7-form-control-wrap .wpcf7-radio > span:last-child span:before
{
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
}
@media (max-width: 549px)
{
    .list_question .wpcf7-form-control-wrap .wpcf7-radio > span:last-child span:before
    {
        border-radius: 0;
        border-bottom-right-radius: 8px; 
        border-bottom-left-radius: 8px;
    }
}
.list_question .wpcf7-form-control-wrap .wpcf7-radio > span.checked input[type='radio'] + span:before
{
    background: #4f6e69;
}
.list_question .wpcf7-form-control-wrap .wpcf7-radio label
{
    font-size: 12px;
    font-weight: 600; 
    line-height: 20px;

    position: relative;

    display: block;

    padding-top: 16px;

    text-align: center;

    color: #555857;
}
@media (min-width: 768px)
{
    .list_question .wpcf7-form-control-wrap .wpcf7-radio label
    {
        font-size: 15px;
    }
}
@media (max-width: 549px)
{
    .list_question .wpcf7-form-control-wrap .wpcf7-radio label
    {
        font-size: 15px;

        padding-top: 0;
        padding-left: 16px;

        text-align: left;
    }
}
.list_question .wpcf7-form-control-wrap .wpcf7-radio input[type='radio']
{
    position: absolute;

    visibility: hidden;

    opacity: 0;
}
.list_question .wpcf7-form-control-wrap .wpcf7-radio input[type='radio'] + span
{
    display: inline-block;

    padding-top: 8px; 

    vertical-align: top;
}
@media (max-width: 549px)
{
    .list_question .wpcf7-form-control-wrap .wpcf7-radio input[type='radio'] + span
    {
        padding: 5px 10px;
    }
}
.list_question .wpcf7-form-control-wrap .wpcf7-radio input[type='radio'] + span:before
{
    position: absolute;
    top: 0;
    right: 0;
    left: 0;

    height: 16px;

    content: '';

    background: #c6d0ce;
}
@media (max-width: 549px)
{
    .list_question .wpcf7-form-control-wrap .wpcf7-radio input[type='radio'] + span:before
    {
        right: auto;
        bottom: 0; 

        width: 16px;
        height: auto;
    }
}
.list_question .wpcf7-form-control-wrap .wpcf7-radio input[type='radio']:checked + span:before
{
    background: #4f6e69;
}

[id='wrapper']
{
    position: relative;

    overflow: hidden;

    width: 100%;

    background: #fafafa;
}

.container
{
    width: 100%;
    max-width: 938px;
    margin: 0 auto; 
    padding: 0 15px;
}
@media (max-width: 1299px)
{
    .container
    {
        padding: 0 29px;
    }
}
.container__1066
{
    max-width: 1096px;
}
.container__940
{
    max-width: 940px;
}

.container-form
{
    max-width: 625px;
    margin-bottom: 50px;
}
@media (min-width: 768px)
{
    .container-form
    {
        margin-bottom: 120px;
    }
}

@media (max-width: 767px)
{
    .mob-hidden
    {
        display: none !important;
    }
}

@media (min-width: 768px)
{
    .d-flex
    {
        display: -ms-flexbox;
        display: flex;

        -ms-flex-align: start;
        align-items: flex-start;
    }
}

.justify-between
{
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.sub-title
{
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;

    position: relative;

    display: block;

    margin-bottom: 6px;

    letter-spacing: 1px; 
    text-transform: uppercase;

    color: #4f6e69;
}
@media (min-width: 768px)
{
    .sub-title
    {
        font-size: 12px;

        margin-bottom: 10px;
    }
}
.sub-title:after
{
    position: absolute;
    top: 4px;
    left: -29px;

    width: 15px;
    height: 2px;

    content: '';

    background: currentColor;
}
@media (min-width: 768px)
{
    .sub-title:after
    {
        left: -68px;

        width: 39px;
        height: 4px;
    }
}
.sub-title span
{
    text-transform: none;
}

.title-page
{
    margin-bottom: 36px;
}

ol:not([class])
{
    padding: 13px 0 20px;

    counter-reset: item;
}
@media (min-width: 768px)
{
    ol:not([class])
    {
        padding-bottom: 40px;
    }
}
ol:not([class]) h3
{
    margin-bottom: 5px;
}
@media (min-width: 768px)
{
    ol:not([class]) h3
    {
        margin-bottom: 18px;
    }
}
ol:not([class]) > li
{
    margin-bottom: 13px;
}
ol:not([class]) > li:before
{
    font-size: 16px;
    font-weight: 600; 
    line-height: 1.2;

    float: left;

    margin: 0 5px 0 0;

    content: counters(item, '.') '.';
    counter-increment: item;
}
@media (min-width: 992px)
{
    ol:not([class]) > li:before
    {
        font-size: 20px;
    }
}
ol:not([class]) ol:not([class])
{
    padding: 0;
}
ol:not([class]) ol:not([class]) > li
{
    margin-bottom: 19px;
}
ol:not([class]) ol:not([class]) > li:before
{
    font-size: 12px;
    font-weight: 300;
    line-height: 1.3; 

    margin-right: 3px;
}
@media (min-width: 768px)
{
    ol:not([class]) ol:not([class]) > li:before
    {
        font-size: 14px;
    }
}
ol:not([class]) ul:not([class])
{
    counter-reset: chapter;
}
ol:not([class]) ul:not([class]) > li:before
{
    font-size: 12px;

    margin-right: 3px; 

    content: counter(chapter, lower-alpha) ')';
    counter-increment: chapter;
}
ol:not([class]) ul:not([class]) p + ul:not([class])
{
    margin-top: -13px;
}
@media (min-width: 768px)
{
    ol:not([class]) ul:not([class]) p + ul:not([class])
    {
        margin-top: -17px;
    }
}
ol:not([class]) ul:not([class]) ul:not([class]) > li:before
{
    font-size: 14px;

    margin-right: 3px; 

    content: '\2022';
}

@media (min-width: 768px)
{
    .heading
    {
        padding-top: 14px;
    }
}

@media (min-width: 768px)
{
    .heading__columns
    {
        font-size: 18px;
        line-height: 22px; 

        display: -ms-flexbox;
        display: flex;

        padding-top: 40px;
        padding-bottom: 45px;

        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

.heading__col:last-child
{
    width: 200px;
    min-width: 200px;
    margin: 0 auto 20px;
}
@media (min-width: 768px)
{
    .heading__col:last-child
    {
        margin: 0;
    }
}

.heading .form_visual
{
    padding-top: 14px;
}
.heading .form_visual__text
{
    margin-top: 0;
    padding-top: 40px;
}
.heading .form_visual__image
{
    margin-top: 0;
}

.list-threecolumns
{
    display: -ms-flexbox;
    display: flex;

    margin: 0 -15px;
    padding: 30px 0 10px; 

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.list-threecolumns > li
{
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    margin-bottom: 30px; 
    padding: 0 15px;
}
@media (min-width: 480px)
{
    .list-threecolumns > li
    {
        width: 50%;
    }
}
@media (min-width: 992px)
{
    .list-threecolumns > li
    {
        width: calc(100% / 3);
    }
}

.link-prev
{
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2; 

    color: #4f6e69;
}
.link-prev:hover
{
    color: #555857;
}
.link-prev .icon-arrow-prev
{
    margin-right: 8px;
}

.list-twocolumns
{
    display: -ms-flexbox;
    display: flex;

    margin: 0 -14px;
    padding: 0;

    list-style: none;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.list-twocolumns > li
{
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    padding: 0 14px 60px;
}
@media (min-width: 768px)
{
    .list-twocolumns > li
    {
        width: 50%;
    }
}

[id='footer']
{
    font-size: 14px;
    line-height: 1.3; 

    padding: 33px 0;

    background: #e3e5e4;
}
@media (min-width: 768px)
{
    [id='footer']
    {
        padding: 63px 0;
    }
}
[id='footer'] .container
{
    position: relative; 

    max-width: 1020px;
}
[id='footer'] h4
{
    font-size: 16px;
    font-weight: 600; 

    margin: 0 0 15px;
}
[id='footer'] address
{
    font-style: normal;

    margin: 0 0 20px; 
    padding: 0;
}
[id='footer'] a
{
    color: #2c302f;
}
[id='footer'] a:hover
{
    color: #4f6e69;
}
[id='footer'] .active a
{
    color: #4f6e69;
}
[id='footer'] .more b
{
    font-weight: 600;
}

.footer-logo
{
    margin-right: 0;
    margin-bottom: 18px;

    text-align: left;
}
@media (min-width: 768px)
{
    .footer-logo
    {
        margin-bottom: 25px; 
        padding-right: 15px;
    }
}
@media (max-width: 767px)
{
    .footer-logo
    {
        max-width: 98px;
    }
}

.menu-footer
{
    font-weight: 600;
}
.menu-footer > li
{
    position: relative;

    margin: 0 0 6px; 
    padding: 0 0 0 10px;
}
.menu-footer > li:after
{
    position: absolute;
    top: 8px;
    left: -5px;

    width: 5px;
    height: 5px;

    content: '';
    transform: rotate(-45deg); 

    border-right: 1px solid currentColor;
    border-bottom: 1px solid currentColor;
}

@media (min-width: 768px)
{
    .footer-panel
    {
        display: -ms-flexbox;
        display: flex;

        padding-bottom: 4px; 

        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

.copyright
{
    font-size: 12px;
}
@media (max-width: 479px)
{
    .copyright
    {
        display: block;

        text-align: center;
    }
}

.footer-columns
{
    display: -ms-flexbox;
    display: flex;

    width: 100%;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media (min-width: 768px)
{
    .footer-columns
    {
        width: 60%;
    }
}
.footer-columns__col
{
    max-width: 145px; 
    padding-right: 10px;
}
@media (max-width: 767px)
{
    .footer-columns__col
    {
        width: 50%; 
        max-width: 50%;
    }
}
@media (min-width: 768px)
{
    .footer-columns__col:first-child
    {
        width: 35%;
        max-width: 35%;
    }
}
.footer-columns__col:last-child
{
    padding-right: 0;
}
@media (min-width: 768px)
{
    .footer-columns__col:last-child
    {
        width: 100%;
        max-width: 80px;
    }
}
@media (max-width: 767px)
{
    .footer-columns__col:last-child .widget
    {
        margin-bottom: 0;
    }
}

.footer-bar
{
    position: relative;

    display: -ms-flexbox;
    display: flex;
        flex-direction: column-reverse; 

    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-direction: column-reverse;
}
@media (min-width: 768px)
{
    .footer-bar
    {
            flex-direction: row; 

        -ms-flex-direction: row;
    }
}
@media (max-width: 767px)
{
    .footer-bar
    {
        position: absolute;
        right: 30px;
        bottom: 0;
        bottom: 7px;

        width: 45%;

        text-align: left;
    }
}
.footer-bar__col
{
    display: -ms-flexbox;
    display: flex; 

    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media (max-width: 767px)
{
    .footer-bar__col
    {
        width: 100%;
    }
}
.footer-bar__col:first-child
{
    -ms-flex-pack: start;
    justify-content: flex-start;
}
@media (min-width: 768px)
{
    .footer-bar__col:first-child
    {
        padding-right: 15px;
    }
}
.footer-bar__col:last-child
{
    margin-bottom: 10px;
}
@media (min-width: 768px)
{
    .footer-bar__col:last-child
    {
        width: 60%; 
        margin-bottom: 0;
    }
}
@media (max-width: 767px)
{
    .footer-bar__col:last-child .more
    {
        display: none;
    }
}
.footer-bar .social-title
{
    font-size: 12px;
    font-weight: 600;

    text-transform: none;

    color: #2c302f;
}
.footer-bar .social
{
    font-size: 16px;
}
.footer-bar .social > li
{
    padding: 0 6px;
}
.footer-bar .social a
{
    color: #2c302f;
}
.footer-bar .social a:hover
{
    color: #4f6e69;
}
.footer-bar .copyright
{
    text-align: left;
}
@media (max-width: 767px)
{
    .footer-bar .copyright
    {
        text-align: left;
    }
}

@media (max-width: 767px)
{
    .footer-contact
    {
        margin-bottom: 20px;
    }
}

@media (min-width: 768px)
{
    .footer-contact .more
    {
        display: none;
    }
}
