
/* -------------------------------------------------------------------------- */
@font-face {
    font-family: 'Gilroy';
    src: url('/include/fonts/Gilroy/Gilroy-Regular.eot');
    src: local('Gilroy Regular'), local('Gilroy-Regular'),
        url('/include/fonts/Gilroy/Gilroy-Regular.eot?#iefix') format('embedded-opentype'),
        url('/include/fonts/Gilroy/Gilroy-Regular.woff2') format('woff2'),
        url('/include/fonts/Gilroy/Gilroy-Regular.woff') format('woff'),
        url('/include/fonts/Gilroy/Gilroy-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Gilroy';
    src: url('/include/fonts/Gilroy/Gilroy-Bold.eot');
    src: local('Gilroy Bold'), local('Gilroy-Bold'),
        url('/include/fonts/Gilroy/Gilroy-Bold.eot?#iefix') format('embedded-opentype'),
        url('/include/fonts/Gilroy/Gilroy-Bold.woff2') format('woff2'),
        url('/include/fonts/Gilroy/Gilroy-Bold.woff') format('woff'),
        url('/include/fonts/Gilroy/Gilroy-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}
@font-face {
    font-family: 'Gilroy';
    src: url('/include/fonts/Gilroy/Gilroy-Black.eot');
    src: local('Gilroy Black'), local('Gilroy-Black'),
        url('/include/fonts/Gilroy/Gilroy-Black.eot?#iefix') format('embedded-opentype'),
        url('/include/fonts/Gilroy/Gilroy-Black.woff2') format('woff2'),
        url('/include/fonts/Gilroy/Gilroy-Black.woff') format('woff'),
        url('/include/fonts/Gilroy/Gilroy-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
}
@font-face {
    font-family: 'Gilroy';
    src: url('/include/fonts/Gilroy/Gilroy-Light.eot');
    src: local('Gilroy Light'), local('Gilroy-Light'),
        url('/include/fonts/Gilroy/Gilroy-Light.eot?#iefix') format('embedded-opentype'),
        url('/include/fonts/Gilroy/Gilroy-Light.woff2') format('woff2'),
        url('/include/fonts/Gilroy/Gilroy-Light.woff') format('woff'),
        url('/include/fonts/Gilroy/Gilroy-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'Gilroy';
    src: url('/include/fonts/Gilroy/Gilroy-Semibold.eot');
    src: local('Gilroy Semibold'), local('Gilroy-Semibold'),
        url('/include/fonts/Gilroy/Gilroy-Semibold.eot?#iefix') format('embedded-opentype'),
        url('/include/fonts/Gilroy/Gilroy-Semibold.woff2') format('woff2'),
        url('/include/fonts/Gilroy/Gilroy-Semibold.woff') format('woff'),
        url('/include/fonts/Gilroy/Gilroy-Semibold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}
@font-face {
    font-family: 'Gilroy';
    src: url('/include/fonts/Gilroy/Gilroy-Medium.eot');
    src: local('Gilroy Medium'), local('Gilroy-Medium'),
        url('/include/fonts/Gilroy/Gilroy-Medium.eot?#iefix') format('embedded-opentype'),
        url('/include/fonts/Gilroy/Gilroy-Medium.woff2') format('woff2'),
        url('/include/fonts/Gilroy/Gilroy-Medium.woff') format('woff'),
        url('/include/fonts/Gilroy/Gilroy-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'Gilroy';
    src: url('/include/fonts/Gilroy/Gilroy-UltraLight.eot');
    src: local('Gilroy UltraLight'), local('Gilroy-UltraLight'),
        url('/include/fonts/Gilroy/Gilroy-UltraLight.eot?#iefix') format('embedded-opentype'),
        url('/include/fonts/Gilroy/Gilroy-UltraLight.woff2') format('woff2'),
        url('/include/fonts/Gilroy/Gilroy-UltraLight.woff') format('woff'),
        url('/include/fonts/Gilroy/Gilroy-UltraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
}
@font-face {
    font-family: 'Gilroy';
    src: url('/include/fonts/Gilroy/Gilroy-Extrabold.eot');
    src: local('Gilroy Extrabold'), local('Gilroy-Extrabold'),
        url('/include/fonts/Gilroy/Gilroy-Extrabold.eot?#iefix') format('embedded-opentype'),
        url('/include/fonts/Gilroy/Gilroy-Extrabold.woff2') format('woff2'),
        url('/include/fonts/Gilroy/Gilroy-Extrabold.woff') format('woff'),
        url('/include/fonts/Gilroy/Gilroy-Extrabold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
}
@font-face {
    font-family: 'Gilroy';
    src: url('/include/fonts/Gilroy/Gilroy-Heavy.eot');
    src: local('Gilroy Heavy'), local('Gilroy-Heavy'),
        url('/include/fonts/Gilroy/Gilroy-Heavy.eot?#iefix') format('embedded-opentype'),
        url('/include/fonts/Gilroy/Gilroy-Heavy.woff2') format('woff2'),
        url('/include/fonts/Gilroy/Gilroy-Heavy.woff') format('woff'),
        url('/include/fonts/Gilroy/Gilroy-Heavy.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
}
@font-face {
    font-family: 'Gilroy';
    src: url(/include/fonts/Gilroy/'Gilroy-Thin.eot');
    src: local('Gilroy Thin'), local('Gilroy-Thin'),
        url('/include/fonts/Gilroy/Gilroy-Thin.eot?#iefix') format('embedded-opentype'),
        url('/include/fonts/Gilroy/Gilroy-Thin.woff2') format('woff2'),
        url('/include/fonts/Gilroy/Gilroy-Thin.woff') format('woff'),
        url('/include/fonts/Gilroy/Gilroy-Thin.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
}
@font-face {
    font-family: 'Gilroy';
    src: url('/include/fonts/Gilroy/Gilroy-ThinItalic.eot');
    src: local('Gilroy Thin Italic'), local('Gilroy-ThinItalic'),
        url('/include/fonts/Gilroy/Gilroy-ThinItalic.eot?#iefix') format('embedded-opentype'),
        url('/include/fonts/Gilroy/Gilroy-ThinItalic.woff2') format('woff2'),
        url('/include/fonts/Gilroy/Gilroy-ThinItalic.woff') format('woff'),
        url('/include/fonts/Gilroy/Gilroy-ThinItalic.ttf') format('truetype');
    font-weight: 100;
    font-style: italic;
}
/* -------------------------------------------------------------------------- */
html {
    font-size: 16px;
    font-family: 'Roboto', sans-serif;
    box-sizing: border-box;
}
body {
    width: 100%;
    min-width: 320px;
    min-height: 100vh;
    position: relative;
    margin: 0;
    padding: 0;
    background: #0abab5;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
}
body.loading * {
    transition: none !important;
}
/* -------------------------------------------------------------------------- */
p, a, ul, li, span, h1, h2, h3, h4, h5, h6{
    margin: 0;
    padding: 0;
    text-decoration: none;
    list-style: none;
}
a ,
a * {
    transition: 0.3s;
}
i {
    font-family: 'Material Icons';
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    color: #0abab5;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: 'liga';
    -webkit-font-smoothing: antialiased;
}
sup {
    vertical-align: top;
    position: relative;
    top: -0.5em;
}
/* -------------------------------------------------------------------------- */
header, nav, main, footer {
    width: 100%;
    display: flex;
    justify-content: center;
}
/* -------------------------------------------------------------------------- */
@media only screen and (max-width: 1279px) {
main > div {
    width: calc(100% - 36px);
    min-width: calc(100% - 36px);
    max-width: calc(100% - 36px);
}
}

/* -------------------------------------------------------------------------- */
header * {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
/* -------------------------------------------------------------------------- */
header #logo {
    display: flex;
    height: 86px;
    flex: 0 0 86px;
    margin: 56px 0;
}
header #logo a {
    display: flex;
    height: 85px;
}
header #logo img {
    width: 280px;
    opacity: 1;
    transition: 1s ease-out;
}
header.open #logo img {
    opacity: 0;
    transition: 0.2s ease-out;
}
/* -------------------------------------------------------------------------- */
[mid_1] .menu{
    display: none !important;
}
.menu {
    position: absolute;
    z-index: 999;
    top: 0;
    right: 0;
    width: 96px;
    height: 96px;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    background: #0abab5;
    transition: 0.3s;
}
.menu:hover {
    background: #23c1bd;
}
.hamburger {
    margin: auto;
    position: relative;
    width: 36px;
    height: 24px;
    padding: 0;
    margin: 0;
}
.hamburger p {
    display: block;
    position: absolute;
    height: 4px;
    width: 36px;
    border-radius: 4px;
    left: 0;
    background: #fff;
    transform-origin: 0 50%;
    transition: 0.3s;
}
.menu:hover .hamburger p  {
    background: rgba(255, 255, 255, 0.75);
}
.hamburger p:first-child {
    top: 0px;
    transform: scaleX(1);
    opacity: 1;
}
.hamburger p:nth-child(2) {
    top: 10px;
    transform: scaleX(1);
    opacity: 1;
}
.hamburger p:last-child {
    top: 20px;
    transform: scaleX(1);
    opacity: 1;
}
.hamburger:hover {
    cursor: pointer;
}
header:not(.open) .menu:hover .hamburger p {
    animation: menu-hover .3s forwards cubic-bezier(0.0, 0.0, 0.2, 1) 1;
    animation-delay: .1s;
}
header:not(.open) .menu:hover .hamburger p:nth-child(2) {
    animation-delay: .2s;
}
header:not(.open) .menu:hover .hamburger p:last-child {
    animation-delay: .3s;
}
@keyframes menu-hover {
    60% {
        transform: scaleX(1.3);
    }
    100% {
        transform: scaleX(1);
    }
}
/* -------------------------------------------------------------------------- */
header.open .menu .hamburger p {
    background-color: transparent;
    transform-origin: center center;
}
header.open .menu .hamburger p:nth-child(2) {
    background-color: #fff;
    animation: menu-active-2 .8s forwards cubic-bezier(0.0, 0.0, 0.2, 1) 1;
}
header.open .menu .hamburger p:last-child {
    background-color: #fff;
    animation: menu-active-3 .8s forwards cubic-bezier(0.0, 0.0, 0.2, 1) 1;
}
@keyframes menu-active-2 {
    50% {
        top: 10px;
        left: 0px;
        transform: rotate(-45deg);
    }
    100% {
        top: 10px;
        left: 0;
        transform: rotate(135deg);
    }
}
@keyframes menu-active-3 {
    50% {
        top: 10px;
        left: 0px;
        transform: rotate(45deg);
    }
    100% {
        top: 10px;
        left: 0;
        transform: rotate(225deg);
    }
}
/* -------------------------------------------------------------------------- */
header #nav {
    /* visibility: hidden; */
    position: fixed;
    z-index: 998;
    left: 0;
    top: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    width: 100vw;
    height: 100vh;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    background: #0abab5;
    -webkit-transition: all 1s;
    transition: all 1s;
    -webkit-transition-timing-function: cubic-bezier(0, 0.995, 0.255, 1.01);
    transition-timing-function: cubic-bezier(0, 0.995, 0.255, 1.01);
}
header.open #nav {
    -webkit-box-shadow: 0 0 42px 12px rgb(0 0 0 / 15%);
    -moz-box-shadow: 0 0 42px 12px rgb(0 0 0 / 15%);
    box-shadow: 0 0 42px 12px rgb(0 0 0 / 15%);
}
header.open #nav {
    visibility: visible;
    -webkit-transform: none;
    transform: none;
}
header #nav * {
    display: flex;
    align-items: center;
    justify-content: center;
}
/* -------------------------------------------------------------------------- */
header #nav > div:first-child {
    height: 86px;
    flex: 0 0 86px;
    margin: 56px 0;
}
header #nav > div:first-child a {
    height: 85px;
}
header #nav > div:first-child img {
    width: 280px;
    transition: 0.2s ease-out;
    opacity: 0;
}
header.open #nav > div:first-child img {
    opacity: 1;
    transition: 1s ease-out;
}
/* -------------------------------------------------------------------------- */
header #nav > div:last-child {
    flex-direction: row;
    flex-wrap: nowrap;
    flex: 1 1 100%;
    margin: 0 0 56px 0;
}
/* -------------------------------------------------------------------------- */
header #nav div > ul {
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-start;
    height: 28px;
    margin: 0 0 56px 0;
}
header #nav ul * {
    width: 360px;
    text-align: center;
}
header #nav div > ul > li {
    max-height: 28px;
    overflow: hidden;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: 0 0 0 0;
    opacity: 0.75;
    transition: .1s ease-out;
}
header #nav div > ul > li.open {
    max-height: 200px;
    margin: -12px 0 0 0;
    opacity: 1;
    transition: .3s ease-out;
}
/* -------------------------------------------------------------------------- */
header #nav div > ul > li > ul {
    flex-direction: column;
    opacity: 0;
    transition: .1s ease-out;
}
header #nav div > ul > li.open > ul {
    opacity: 1;
    transition: .3s ease-out;
}
/* -------------------------------------------------------------------------- */
header #nav div > ul > li > a ,
header #nav div > ul > li > p {
    font-family: 'Gilroy', serif;
    font-size: 24px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #fff;
    cursor: pointer;
    margin: 12px 0 24px 0;
    opacity: 0;
}
header.open #nav div > ul > li > a ,
header.open #nav div > ul > li > p {
    margin: 0 0 24px 0;
    opacity: 1;
    transition: .3s .4s ease-in;
}
header.open #nav div > ul > li + li > a ,
header.open #nav div > ul > li + li > p {
    transition: .3s .6s ease-in;
}
header.open #nav div > ul > li + li + li > a ,
header.open #nav div > ul > li + li + li > p {
    transition: .3s .8s ease-in;
}
/* -------------------------------------------------------------------------- */
header #nav div > ul > li li {
    margin: 0 0 12px 0;
}
header #nav div > ul > li li a {
    font-family: 'Gilroy', serif;
    font-size: 18px;
    font-weight: 300;
    text-transform: uppercase;
    color: #fff;
    cursor: pointer;
    line-height: 1.12;
}
header #nav div > ul > li li p {
    font-family: 'Gilroy', serif;
    font-size: 18px;
    font-weight: 300;
    text-transform: uppercase;
    color: #fff;
    line-height: 1.12;
}
/* -------------------------------------------------------------------------- */
@media only screen and (max-width: 1279px) {
/* -------------------------------------------------------------------------- */
header #nav ul * {
    width: 340px;
}
/* -------------------------------------------------------------------------- */
}

@media only screen and (max-width: 1023px) {
/* -------------------------------------------------------------------------- */
header #logo {
    height: 70px;
    flex: 0 0 100%;
    margin: 40px 0 24px 0;
    justify-content: center;
}
header #logo a {
    height: 70px;
}
header #logo img {
    width: 220px;
}
/* -------------------------------------------------------------------------- */
header #nav > div:first-child {
    height: 70px;
    flex: 0 0 70px;
    margin: 40px 0 24px 0;
}
header #nav > div:first-child a {
    height: 70px;
}
header #nav > div:first-child img {
    width: 220px;
}
/* -------------------------------------------------------------------------- */
header #nav > div:last-child {
    flex: 1 1 auto;
    margin: 0 0 0 0;
}
/* -------------------------------------------------------------------------- */
header #nav div > ul {
    flex-direction: column;
    height: auto;
    margin: 0 0 8px 0;
}
header #nav div > ul * {
    /* transition: .3s !important; */
}
header #nav div > ul > li {
    margin: 0 0 24px 0;
}
header #nav div > ul > li.open {
    margin: 0 0 24px 0;
}
header #nav div > ul > li li {
    margin: 0 0 0 0;
}
header #nav div > ul > li li * {
    padding: 6px 0;
}
header.open #nav div > ul > li > a ,
header.open #nav div > ul > li > p {
    margin: 0 0 12px 0;
}
header #nav div > ul > li li a ,
header #nav div > ul > li li p {
    font-size: 16px;
    font-weight: 300;
}
/* -------------------------------------------------------------------------- */
}

@media only screen and (max-width: 767px) {
/* -------------------------------------------------------------------------- */
.menu {
    width: 72px;
    height: 134px;
}
/* -------------------------------------------------------------------------- */
header #logo {
    width: 100%;
    justify-content: flex-start;
}
header #logo a {
    margin: 0 0 0 32px;
}
[mid_1] header #logo {
    justify-content: center;
}
[mid_1] header #logo a {
    margin: 0 0 0 0;
}
/* -------------------------------------------------------------------------- */
header #nav > div:first-child {
    width: 100%;
    justify-content: flex-start;
}
header #nav > div:first-child a {
    margin: 0 0 0 32px;
}
[mid_1] header #nav > div:first-child {
    justify-content: center;
}
[mid_1] header #nav > div:first-child a {
    margin: 0 0 0 0;
}
/* -------------------------------------------------------------------------- */
}

@media only screen and (max-width: 359px) {
/* -------------------------------------------------------------------------- */
header #logo img {
    width: 200px;
}
header #nav > div:first-child img {
    width: 200px;
}
.menu {
    width: 64px;
}
header #nav ul * {
    width: 310px;
}
/* -------------------------------------------------------------------------- */
}

/* -------------------------------------------------------------------------- */
main{
    margin-bottom: auto;
}
main > div {
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: flex-start;
    min-height: 500px;
    margin: 0 0 18px 0;
    width: calc(100% - 48px);
    max-width: 1260px;
}
/* -------------------------------------------------------------------------- */
main div[otype] {
    display: flex;
    flex-wrap: wrap;
}
main > div > div[otype] {
    width: 100%;
    align-items: stretch;
    margin: 12px 0;
}
main > div > div[otype] > div[otype] {
    width: 100%;
    margin: 12px 0;
}
/* -------------------------------------------------------------------------- */
main #breadcrumbs {
    width: 100%;
    height: 100px;
    margin: 0;
    display: flex;
    align-items: center;
}
main #breadcrumbs > div {
    width: 100%;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
/* -------------------------------------------------------------------------- */
main #breadcrumbs:before {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 100px;
    left: 0;
    margin: 0;
    background: #0abab5;
    z-index: 99;
    box-shadow: 0 18px 12px 0px rgb(0 0 0 / 10%);
}
main #breadcrumbs > div {
    z-index: 100;
}
/* -------------------------------------------------------------------------- */
main #breadcrumbs > div > #current_page {
    order: 1;
    flex: 0 0 100%;
    margin: 0 16px 0 16px;
    padding: 0;
    display: flex;
    justify-content: center;
}
main #breadcrumbs > div > #current_page > h1 {
    font-family: 'Gilroy', 'Roboto', sans-serif;
    font-size: 32px;
    font-weight: 800;
    line-height: 1.3;
    color: #fff;
    margin: 0 0 0 0;
    padding: 0;
    text-align: center;
    text-transform: uppercase;
}
/* -------------------------------------------------------------------------- */
main #breadcrumbs + div {
    margin-top: 24px;
}
main #breadcrumbs > div > #breadcrumbs_path {
    order: 2;
    display: flex;
    margin: 0 0 0 18px;
}
main #breadcrumbs > div > #breadcrumbs_path > a {
    font-family: 'Gilroy', 'Roboto', sans-serif;
    position: relative;
    white-space: nowrap;
    font-size: 12px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.75);
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
    margin: 8px 18px 0 0;
}
main #breadcrumbs > div > #breadcrumbs_path > a:hover {
    color: rgba(255, 255, 255, 1);
    border-bottom: 1px solid transparent;
}
main #breadcrumbs > div > #breadcrumbs_path > a:after {
    content: '|';
    right: 0;
    margin: 0 -10px 0 0;
    position: absolute;
    font-family: 'Gilroy', 'Roboto', sans-serif;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.3);
}
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
@media only screen and (max-width: 1279px) {
/* -------------------------------------------------------------------------- */
main #breadcrumbs {
    box-shadow: 0 18px 12px 0px rgb(0 0 0 / 10%);
    height: auto;
    margin: 0 -18px 0 -18px;
    padding: 18px;
}
main #breadcrumbs:before {
    display: none;
}
main #breadcrumbs > div > #current_page > h1 {
    line-height: 1.12;
    margin: 3px 0;
}
/* -------------------------------------------------------------------------- */
}
